diff --git a/.coveragerc b/.coveragerc index aa0939e4143cdd9a133e11f9e1633ff15cae7fc3..7caf518655da0c16189ce7c18f007a4d381ca61b 100644 --- a/.coveragerc +++ b/.coveragerc @@ -1,6 +1,6 @@ [run] omit = - test/example_test.py - test/gw_example_test.py - test/noise_realisation_test.py - test/other_test.py + test/core/example_test.py + test/gw/example_test.py + test/gw/noise_realisation_test.py + test/gw/other_test.py diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e9a72a2c56d4d62655f4a4c0d1510e0426f18a40..6085e0e7c4891b286787ca0f6af68b8bfa6a01b1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -91,8 +91,8 @@ python-3.7-samplers: script: - python -m pip install . - - pytest test/sampler_test.py --durations 10 - - pytest test/sample_from_the_prior_test.py + - pytest test/core/sampler/sampler_run_test.py --durations 10 + - pytest test/gw/sample_from_the_prior_test.py # test samplers on python 3.6 python-3.6-samplers: @@ -101,7 +101,7 @@ python-3.6-samplers: script: - python -m pip install . - - pytest test/sampler_test.py + - pytest test/core/sampler/sampler_run_test.py # Tests run at a fixed schedule rather than on push scheduled-python-3.7: @@ -113,9 +113,9 @@ scheduled-python-3.7: - python -m pip install . # Run tests which are only done on schedule - - pytest test/example_test.py - - pytest test/gw_example_test.py - - pytest test/sample_from_the_prior_test.py + - pytest test/core/example_test.py + - pytest test/gw/example_test.py + - pytest test/gw/sample_from_the_prior_test.py plotting: stage: test @@ -126,7 +126,7 @@ plotting: - python -m pip install . - python -m pip install ligo.skymap - - pytest test/gw_plot_test.py + - pytest test/gw/plot_test.py pages: stage: deploy diff --git a/setup.cfg b/setup.cfg index 3be0c12d81dd02e9544e2bf520941df0ccd68546..4ba9b6a2a0b6088076a3c7de322b4d3ad763e9a3 100644 --- a/setup.cfg +++ b/setup.cfg @@ -5,12 +5,12 @@ ignore = E129 W503 W504 W605 E203 E402 [tool:pytest] addopts = - --ignore test/other_test.py - --ignore test/gw_example_test.py - --ignore test/example_test.py - --ignore test/sample_from_the_prior_test.py - --ignore test/gw_plot_test.py - --ignore test/sampler_test.py + --ignore test/gw/other_test.py + --ignore test/gw/example_test.py + --ignore test/core/example_test.py + --ignore test/gw/sample_from_the_prior_test.py + --ignore test/gw/plot_test.py + --ignore test/core/sampler/sampler_run_test.py [metadata] license_file = LICENSE.md diff --git a/test/context.py b/test/context.py deleted file mode 100644 index ed1eb85ae53420d4f127f29b3ed05f89fdf6de0a..0000000000000000000000000000000000000000 --- a/test/context.py +++ /dev/null @@ -1,6 +0,0 @@ -import os -import sys - -sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) - -import bilby # noqa diff --git a/test/core/__init__.py b/test/core/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/example_test.py b/test/core/example_test.py similarity index 100% rename from test/example_test.py rename to test/core/example_test.py diff --git a/test/grid_test.py b/test/core/grid_test.py similarity index 100% rename from test/grid_test.py rename to test/core/grid_test.py diff --git a/test/likelihood_test.py b/test/core/likelihood_test.py similarity index 100% rename from test/likelihood_test.py rename to test/core/likelihood_test.py diff --git a/test/core/prior/__init__.py b/test/core/prior/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/core/prior/analytical_test.py b/test/core/prior/analytical_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9b4a926f802e562fb325c5744d9437ef8ea8fae8 --- /dev/null +++ b/test/core/prior/analytical_test.py @@ -0,0 +1,5 @@ +import unittest + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/prior/base_test.py b/test/core/prior/base_test.py new file mode 100644 index 0000000000000000000000000000000000000000..58e1735f6c356c4e042dbb3622a888d0619e2790 --- /dev/null +++ b/test/core/prior/base_test.py @@ -0,0 +1,154 @@ +import unittest + +import numpy as np +from mock import Mock + +import bilby + + +class TestPriorInstantiationWithoutOptionalPriors(unittest.TestCase): + def setUp(self): + self.prior = bilby.core.prior.Prior() + + def tearDown(self): + del self.prior + + def test_name(self): + self.assertIsNone(self.prior.name) + + def test_latex_label(self): + self.assertIsNone(self.prior.latex_label) + + def test_is_fixed(self): + self.assertFalse(self.prior.is_fixed) + + def test_class_instance(self): + self.assertIsInstance(self.prior, bilby.core.prior.Prior) + + def test_magic_call_is_the_same_as_sampling(self): + self.prior.sample = Mock(return_value=0.5) + self.assertEqual(self.prior.sample(), self.prior()) + + def test_base_rescale_method(self): + self.assertIsNone(self.prior.rescale(1)) + + def test_base_repr(self): + """ + We compare that the strings contain all of the same characters in not + necessarily the same order as python2 doesn't conserve the order of the + arguments. + """ + self.prior = bilby.core.prior.Prior( + name="test_name", + latex_label="test_label", + minimum=0, + maximum=1, + check_range_nonzero=True, + boundary=None, + ) + expected_string = ( + "Prior(name='test_name', latex_label='test_label', unit=None, minimum=0, maximum=1, " + "check_range_nonzero=True, boundary=None)" + ) + self.assertTrue(sorted(expected_string) == sorted(self.prior.__repr__())) + + def test_base_prob(self): + self.assertTrue(np.isnan(self.prior.prob(5))) + + def test_base_ln_prob(self): + self.prior.prob = lambda val: val + self.assertEqual(np.log(5), self.prior.ln_prob(5)) + + def test_is_in_prior(self): + self.prior.minimum = 0 + self.prior.maximum = 1 + val_below = self.prior.minimum - 0.1 + val_at_minimum = self.prior.minimum + val_in_prior = (self.prior.minimum + self.prior.maximum) / 2.0 + val_at_maximum = self.prior.maximum + val_above = self.prior.maximum + 0.1 + self.assertTrue(self.prior.is_in_prior_range(val_at_minimum)) + self.assertTrue(self.prior.is_in_prior_range(val_at_maximum)) + self.assertTrue(self.prior.is_in_prior_range(val_in_prior)) + self.assertFalse(self.prior.is_in_prior_range(val_below)) + self.assertFalse(self.prior.is_in_prior_range(val_above)) + + def test_boundary_is_none(self): + self.assertIsNone(self.prior.boundary) + + +class TestPriorName(unittest.TestCase): + def setUp(self): + self.test_name = "test_name" + self.prior = bilby.core.prior.Prior(self.test_name) + + def tearDown(self): + del self.prior + del self.test_name + + def test_name_assignment(self): + self.prior.name = "other_name" + self.assertEqual(self.prior.name, "other_name") + + +class TestPriorLatexLabel(unittest.TestCase): + def setUp(self): + self.test_name = "test_name" + self.prior = bilby.core.prior.Prior(self.test_name) + + def tearDown(self): + del self.test_name + del self.prior + + def test_label_assignment(self): + test_label = "test_label" + self.prior.latex_label = "test_label" + self.assertEqual(test_label, self.prior.latex_label) + + def test_default_label_assignment(self): + self.prior.name = "chirp_mass" + self.prior.latex_label = None + self.assertEqual(self.prior.latex_label, "$\mathcal{M}$") + + def test_default_label_assignment_default(self): + self.assertTrue(self.prior.latex_label, self.prior.name) + + +class TestPriorIsFixed(unittest.TestCase): + def setUp(self): + pass + + def tearDown(self): + del self.prior + + def test_is_fixed_parent_class(self): + self.prior = bilby.core.prior.Prior() + self.assertFalse(self.prior.is_fixed) + + def test_is_fixed_delta_function_class(self): + self.prior = bilby.core.prior.DeltaFunction(peak=0) + self.assertTrue(self.prior.is_fixed) + + def test_is_fixed_uniform_class(self): + self.prior = bilby.core.prior.Uniform(minimum=0, maximum=10) + self.assertFalse(self.prior.is_fixed) + + +class TestPriorBoundary(unittest.TestCase): + def setUp(self): + self.prior = bilby.core.prior.Prior(boundary=None) + + def tearDown(self): + del self.prior + + def test_set_boundary_valid(self): + self.prior.boundary = "periodic" + self.assertEqual(self.prior.boundary, "periodic") + + def test_set_boundary_invalid(self): + with self.assertRaises(ValueError): + self.prior.boundary = "else" + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/prior/conditional_test.py b/test/core/prior/conditional_test.py new file mode 100644 index 0000000000000000000000000000000000000000..0e44fda3691172e1ca8618d7ace3a172de991912 --- /dev/null +++ b/test/core/prior/conditional_test.py @@ -0,0 +1,366 @@ +import unittest + +import mock + +import bilby + + +class TestConditionalPrior(unittest.TestCase): + def setUp(self): + self.condition_func_call_counter = 0 + + def condition_func(reference_parameters, test_variable_1, test_variable_2): + self.condition_func_call_counter += 1 + return {key: value + 1 for key, value in reference_parameters.items()} + + self.condition_func = condition_func + self.minimum = 0 + self.maximum = 5 + self.test_variable_1 = 0 + self.test_variable_2 = 1 + self.prior = bilby.core.prior.ConditionalBasePrior( + condition_func=condition_func, minimum=self.minimum, maximum=self.maximum + ) + + def tearDown(self): + del self.condition_func + del self.condition_func_call_counter + del self.minimum + del self.maximum + del self.test_variable_1 + del self.test_variable_2 + del self.prior + + def test_reference_params(self): + self.assertDictEqual( + dict(minimum=self.minimum, maximum=self.maximum), + self.prior.reference_params, + ) + + def test_required_variables(self): + self.assertListEqual( + ["test_variable_1", "test_variable_2"], + sorted(self.prior.required_variables), + ) + + def test_required_variables_no_condition_func(self): + self.prior = bilby.core.prior.ConditionalBasePrior( + condition_func=None, minimum=self.minimum, maximum=self.maximum + ) + self.assertListEqual([], self.prior.required_variables) + + def test_get_instantiation_dict(self): + expected = dict( + minimum=0, + maximum=5, + name=None, + latex_label=None, + unit=None, + boundary=None, + condition_func=self.condition_func, + ) + actual = self.prior.get_instantiation_dict() + for key, value in expected.items(): + if key == "condition_func": + continue + self.assertEqual(value, actual[key]) + + def test_update_conditions_correct_variables(self): + self.prior.update_conditions( + test_variable_1=self.test_variable_1, test_variable_2=self.test_variable_2 + ) + self.assertEqual(1, self.condition_func_call_counter) + self.assertEqual(self.minimum + 1, self.prior.minimum) + self.assertEqual(self.maximum + 1, self.prior.maximum) + + def test_update_conditions_no_variables(self): + self.prior.update_conditions( + test_variable_1=self.test_variable_1, test_variable_2=self.test_variable_2 + ) + self.prior.update_conditions() + self.assertEqual(1, self.condition_func_call_counter) + self.assertEqual(self.minimum + 1, self.prior.minimum) + self.assertEqual(self.maximum + 1, self.prior.maximum) + + def test_update_conditions_illegal_variables(self): + with self.assertRaises(bilby.core.prior.IllegalRequiredVariablesException): + self.prior.update_conditions(test_parameter_1=self.test_variable_1) + + def test_sample_calls_update_conditions(self): + with mock.patch.object(self.prior, "update_conditions") as m: + self.prior.sample( + 1, + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + m.assert_called_with( + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + + def test_rescale_calls_update_conditions(self): + with mock.patch.object(self.prior, "update_conditions") as m: + self.prior.rescale( + 1, + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + m.assert_called_with( + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + + def test_rescale_prob_update_conditions(self): + with mock.patch.object(self.prior, "update_conditions") as m: + self.prior.prob( + 1, + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + m.assert_called_with( + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + + def test_rescale_ln_prob_update_conditions(self): + with mock.patch.object(self.prior, "update_conditions") as m: + self.prior.ln_prob( + 1, + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ) + calls = [ + mock.call( + test_parameter_1=self.test_variable_1, + test_parameter_2=self.test_variable_2, + ), + mock.call(), + ] + m.assert_has_calls(calls) + + def test_reset_to_reference_parameters(self): + self.prior.minimum = 10 + self.prior.maximum = 20 + self.prior.reset_to_reference_parameters() + self.assertEqual(self.prior.reference_params["minimum"], self.prior.minimum) + self.assertEqual(self.prior.reference_params["maximum"], self.prior.maximum) + + def test_cond_prior_instantiation_no_boundary_prior(self): + prior = bilby.core.prior.ConditionalFermiDirac( + condition_func=None, sigma=1, mu=1 + ) + self.assertIsNone(prior.boundary) + + +class TestConditionalPriorDict(unittest.TestCase): + def setUp(self): + def condition_func_1(reference_parameters, var_0): + return reference_parameters + + def condition_func_2(reference_parameters, var_0, var_1): + return reference_parameters + + def condition_func_3(reference_parameters, var_1, var_2): + return reference_parameters + + self.minimum = 0 + self.maximum = 1 + self.prior_0 = bilby.core.prior.Uniform( + minimum=self.minimum, maximum=self.maximum + ) + self.prior_1 = bilby.core.prior.ConditionalUniform( + condition_func=condition_func_1, minimum=self.minimum, maximum=self.maximum + ) + self.prior_2 = bilby.core.prior.ConditionalUniform( + condition_func=condition_func_2, minimum=self.minimum, maximum=self.maximum + ) + self.prior_3 = bilby.core.prior.ConditionalUniform( + condition_func=condition_func_3, minimum=self.minimum, maximum=self.maximum + ) + self.conditional_priors = bilby.core.prior.ConditionalPriorDict( + dict( + var_3=self.prior_3, + var_2=self.prior_2, + var_0=self.prior_0, + var_1=self.prior_1, + ) + ) + self.conditional_priors_manually_set_items = ( + bilby.core.prior.ConditionalPriorDict() + ) + self.test_sample = dict(var_0=0.3, var_1=0.4, var_2=0.5, var_3=0.4) + for key, value in dict( + var_0=self.prior_0, + var_1=self.prior_1, + var_2=self.prior_2, + var_3=self.prior_3, + ).items(): + self.conditional_priors_manually_set_items[key] = value + + def tearDown(self): + del self.minimum + del self.maximum + del self.prior_0 + del self.prior_1 + del self.prior_2 + del self.prior_3 + del self.conditional_priors + del self.conditional_priors_manually_set_items + del self.test_sample + + def test_conditions_resolved_upon_instantiation(self): + self.assertListEqual( + ["var_0", "var_1", "var_2", "var_3"], self.conditional_priors.sorted_keys + ) + + def test_conditions_resolved_setting_items(self): + self.assertListEqual( + ["var_0", "var_1", "var_2", "var_3"], + self.conditional_priors_manually_set_items.sorted_keys, + ) + + def test_unconditional_keys_upon_instantiation(self): + self.assertListEqual(["var_0"], self.conditional_priors.unconditional_keys) + + def test_unconditional_keys_setting_items(self): + self.assertListEqual( + ["var_0"], self.conditional_priors_manually_set_items.unconditional_keys + ) + + def test_conditional_keys_upon_instantiation(self): + self.assertListEqual( + ["var_1", "var_2", "var_3"], self.conditional_priors.conditional_keys + ) + + def test_conditional_keys_setting_items(self): + self.assertListEqual( + ["var_1", "var_2", "var_3"], + self.conditional_priors_manually_set_items.conditional_keys, + ) + + def test_prob(self): + self.assertEqual(1, self.conditional_priors.prob(sample=self.test_sample)) + + def test_prob_illegal_conditions(self): + del self.conditional_priors["var_0"] + with self.assertRaises(bilby.core.prior.IllegalConditionsException): + self.conditional_priors.prob(sample=self.test_sample) + + def test_ln_prob(self): + self.assertEqual(0, self.conditional_priors.ln_prob(sample=self.test_sample)) + + def test_ln_prob_illegal_conditions(self): + del self.conditional_priors["var_0"] + with self.assertRaises(bilby.core.prior.IllegalConditionsException): + self.conditional_priors.ln_prob(sample=self.test_sample) + + def test_sample_subset_all_keys(self): + with mock.patch("numpy.random.uniform") as m: + m.return_value = 0.5 + self.assertDictEqual( + dict(var_0=0.5, var_1=0.5, var_2=0.5, var_3=0.5), + self.conditional_priors.sample_subset( + keys=["var_0", "var_1", "var_2", "var_3"] + ), + ) + + def test_sample_illegal_subset(self): + with mock.patch("numpy.random.uniform") as m: + m.return_value = 0.5 + with self.assertRaises(bilby.core.prior.IllegalConditionsException): + self.conditional_priors.sample_subset(keys=["var_1"]) + + def test_sample_multiple(self): + def condition_func(reference_params, a): + return dict( + minimum=reference_params["minimum"], + maximum=reference_params["maximum"], + alpha=reference_params["alpha"] * a, + ) + + priors = bilby.core.prior.ConditionalPriorDict() + priors["a"] = bilby.core.prior.Uniform(minimum=0, maximum=1) + priors["b"] = bilby.core.prior.ConditionalPowerLaw( + condition_func=condition_func, minimum=1, maximum=2, alpha=-2 + ) + print(priors.sample(2)) + + def test_rescale(self): + def condition_func_1_rescale(reference_parameters, var_0): + if var_0 == 0.5: + return dict(minimum=reference_parameters["minimum"], maximum=1) + return reference_parameters + + def condition_func_2_rescale(reference_parameters, var_0, var_1): + if var_0 == 0.5 and var_1 == 0.5: + return dict(minimum=reference_parameters["minimum"], maximum=1) + return reference_parameters + + def condition_func_3_rescale(reference_parameters, var_1, var_2): + if var_1 == 0.5 and var_2 == 0.5: + return dict(minimum=reference_parameters["minimum"], maximum=1) + return reference_parameters + + self.prior_0 = bilby.core.prior.Uniform(minimum=self.minimum, maximum=1) + self.prior_1 = bilby.core.prior.ConditionalUniform( + condition_func=condition_func_1_rescale, minimum=self.minimum, maximum=2 + ) + self.prior_2 = bilby.core.prior.ConditionalUniform( + condition_func=condition_func_2_rescale, minimum=self.minimum, maximum=2 + ) + self.prior_3 = bilby.core.prior.ConditionalUniform( + condition_func=condition_func_3_rescale, minimum=self.minimum, maximum=2 + ) + self.conditional_priors = bilby.core.prior.ConditionalPriorDict( + dict( + var_3=self.prior_3, + var_2=self.prior_2, + var_0=self.prior_0, + var_1=self.prior_1, + ) + ) + ref_variables = [0.5, 0.5, 0.5, 0.5] + res = self.conditional_priors.rescale( + keys=list(self.test_sample.keys()), theta=ref_variables + ) + self.assertListEqual(ref_variables, res) + + def test_rescale_illegal_conditions(self): + del self.conditional_priors["var_0"] + with self.assertRaises(bilby.core.prior.IllegalConditionsException): + self.conditional_priors.rescale( + keys=list(self.test_sample.keys()), + theta=list(self.test_sample.values()), + ) + + def test_combined_conditions(self): + def d_condition_func(reference_params, a, b, c): + return dict( + minimum=reference_params["minimum"], maximum=reference_params["maximum"] + ) + + def a_condition_func(reference_params, b, c): + return dict( + minimum=reference_params["minimum"], maximum=reference_params["maximum"] + ) + + priors = bilby.core.prior.ConditionalPriorDict() + + priors["a"] = bilby.core.prior.ConditionalUniform( + condition_func=a_condition_func, minimum=0, maximum=1 + ) + + priors["b"] = bilby.core.prior.LogUniform(minimum=1, maximum=10) + + priors["d"] = bilby.core.prior.ConditionalUniform( + condition_func=d_condition_func, minimum=0.0, maximum=1.0 + ) + + priors["c"] = bilby.core.prior.LogUniform(minimum=1, maximum=10) + priors.sample() + res = priors.rescale(["a", "b", "d", "c"], [0.5, 0.5, 0.5, 0.5]) + print(res) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/prior/dict_test.py b/test/core/prior/dict_test.py new file mode 100644 index 0000000000000000000000000000000000000000..4b45bdfe2421d80a30bbe1e3dba54b7a490f5239 --- /dev/null +++ b/test/core/prior/dict_test.py @@ -0,0 +1,458 @@ +import os +import unittest + +import numpy as np + +import bilby + + +class TestPriorDict(unittest.TestCase): + def setUp(self): + self.first_prior = bilby.core.prior.Uniform( + name="a", minimum=0, maximum=1, unit="kg", boundary=None + ) + self.second_prior = bilby.core.prior.PowerLaw( + name="b", alpha=3, minimum=1, maximum=2, unit="m/s", boundary=None + ) + self.third_prior = bilby.core.prior.DeltaFunction(name="c", peak=42, unit="m") + self.priors = dict( + mass=self.first_prior, speed=self.second_prior, length=self.third_prior + ) + self.prior_set_from_dict = bilby.core.prior.PriorDict(dictionary=self.priors) + self.default_prior_file = os.path.join( + os.path.dirname(os.path.realpath(__file__)), + "prior_files/precessing_spins_bbh.prior", + ) + self.prior_set_from_file = bilby.core.prior.PriorDict( + filename=self.default_prior_file + ) + + def tearDown(self): + del self.first_prior + del self.second_prior + del self.third_prior + del self.priors + del self.prior_set_from_dict + del self.default_prior_file + del self.prior_set_from_file + + def test_copy(self): + priors = bilby.core.prior.PriorDict(self.priors) + self.assertEqual(priors, priors.copy()) + + def test_prior_set(self): + priors_dict = bilby.core.prior.PriorDict(self.priors) + priors_set = bilby.core.prior.PriorSet(self.priors) + self.assertEqual(priors_dict, priors_set) + + def test_prior_set_is_dict(self): + self.assertIsInstance(self.prior_set_from_dict, dict) + + def test_prior_set_has_correct_length(self): + self.assertEqual(3, len(self.prior_set_from_dict)) + + def test_prior_set_has_expected_priors(self): + self.assertDictEqual(self.priors, dict(self.prior_set_from_dict)) + + def test_read_from_file(self): + expected = dict( + mass_1=bilby.core.prior.Constraint( + name="mass_1", + minimum=5, + maximum=100, + ), + mass_2=bilby.core.prior.Constraint( + name="mass_2", + minimum=5, + maximum=100, + ), + chirp_mass=bilby.core.prior.Uniform( + name="chirp_mass", + minimum=25, + maximum=100, + latex_label="$\mathcal{M}$", + ), + mass_ratio=bilby.core.prior.Uniform( + name="mass_ratio", + minimum=0.125, + maximum=1, + latex_label="$q$", + unit=None, + ), + a_1=bilby.core.prior.Uniform( + name="a_1", minimum=0, maximum=0.99 + ), + a_2=bilby.core.prior.Uniform( + name="a_2", minimum=0, maximum=0.99 + ), + tilt_1=bilby.core.prior.Sine(name="tilt_1"), + tilt_2=bilby.core.prior.Sine(name="tilt_2"), + phi_12=bilby.core.prior.Uniform( + name="phi_12", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + phi_jl=bilby.core.prior.Uniform( + name="phi_jl", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + luminosity_distance=bilby.gw.prior.UniformSourceFrame( + name="luminosity_distance", + minimum=1e2, + maximum=5e3, + unit="Mpc", + boundary=None, + ), + dec=bilby.core.prior.Cosine(name="dec"), + ra=bilby.core.prior.Uniform( + name="ra", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + theta_jn=bilby.core.prior.Sine(name="theta_jn"), + psi=bilby.core.prior.Uniform( + name="psi", minimum=0, maximum=np.pi, boundary="periodic" + ), + phase=bilby.core.prior.Uniform( + name="phase", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + ) + self.assertDictEqual(expected, self.prior_set_from_file) + + def test_to_file(self): + """ + We compare that the strings contain all of the same characters in not + necessarily the same order as python2 doesn't conserve the order of the + arguments. + """ + expected = [ + "length = DeltaFunction(peak=42, name='c', latex_label='c', unit='m')\n", + "speed = PowerLaw(alpha=3, minimum=1, maximum=2, name='b', latex_label='b', " + "unit='m/s', boundary=None)\n", + "mass = Uniform(minimum=0, maximum=1, name='a', latex_label='a', " + "unit='kg', boundary=None)\n", + ] + self.prior_set_from_dict.to_file(outdir="prior_files", label="to_file_test") + with open("prior_files/to_file_test.prior") as f: + for i, line in enumerate(f.readlines()): + self.assertTrue( + any([sorted(line) == sorted(expect) for expect in expected]) + ) + + def test_from_dict_with_string(self): + string_prior = ( + "PowerLaw(name='b', alpha=3, minimum=1, maximum=2, unit='m/s', " + "boundary=None)" + ) + self.priors["speed"] = string_prior + from_dict = bilby.core.prior.PriorDict(dictionary=self.priors) + self.assertDictEqual(self.prior_set_from_dict, from_dict) + + def test_convert_floats_to_delta_functions(self): + self.prior_set_from_dict["d"] = 5 + self.prior_set_from_dict["e"] = 7.3 + self.prior_set_from_dict["f"] = "unconvertable" + self.prior_set_from_dict.convert_floats_to_delta_functions() + expected = dict( + mass=bilby.core.prior.Uniform( + name="a", minimum=0, maximum=1, unit="kg", boundary=None + ), + speed=bilby.core.prior.PowerLaw( + name="b", alpha=3, minimum=1, maximum=2, unit="m/s", boundary=None + ), + length=bilby.core.prior.DeltaFunction(name="c", peak=42, unit="m"), + d=bilby.core.prior.DeltaFunction(peak=5), + e=bilby.core.prior.DeltaFunction(peak=7.3), + f="unconvertable", + ) + self.assertDictEqual(expected, self.prior_set_from_dict) + + def test_prior_set_from_dict_but_using_a_string(self): + prior_set = bilby.core.prior.PriorDict(dictionary=self.default_prior_file) + expected = bilby.core.prior.PriorDict( + dict( + mass_1=bilby.core.prior.Constraint( + name="mass_1", + minimum=5, + maximum=100, + ), + mass_2=bilby.core.prior.Constraint( + name="mass_2", + minimum=5, + maximum=100, + ), + chirp_mass=bilby.core.prior.Uniform( + name="chirp_mass", + minimum=25, + maximum=100, + latex_label="$\mathcal{M}$", + ), + mass_ratio=bilby.core.prior.Uniform( + name="mass_ratio", + minimum=0.125, + maximum=1, + latex_label="$q$", + unit=None, + ), + a_1=bilby.core.prior.Uniform( + name="a_1", minimum=0, maximum=0.99, + ), + a_2=bilby.core.prior.Uniform( + name="a_2", minimum=0, maximum=0.99, + ), + tilt_1=bilby.core.prior.Sine(name="tilt_1"), + tilt_2=bilby.core.prior.Sine(name="tilt_2"), + phi_12=bilby.core.prior.Uniform( + name="phi_12", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + phi_jl=bilby.core.prior.Uniform( + name="phi_jl", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + luminosity_distance=bilby.gw.prior.UniformSourceFrame( + name="luminosity_distance", + minimum=1e2, + maximum=5e3, + unit="Mpc", + boundary=None, + ), + dec=bilby.core.prior.Cosine(name="dec"), + ra=bilby.core.prior.Uniform( + name="ra", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + theta_jn=bilby.core.prior.Sine(name="theta_jn"), + psi=bilby.core.prior.Uniform( + name="psi", minimum=0, maximum=np.pi, boundary="periodic" + ), + phase=bilby.core.prior.Uniform( + name="phase", minimum=0, maximum=2 * np.pi, boundary="periodic" + ), + ) + ) + all_keys = set(prior_set.keys()).union(set(expected.keys())) + for key in all_keys: + self.assertEqual(expected[key], prior_set[key]) + + def test_dict_argument_is_not_string_or_dict(self): + with self.assertRaises(ValueError): + bilby.core.prior.PriorDict(dictionary=list()) + + def test_sample_subset_correct_size(self): + size = 7 + samples = self.prior_set_from_dict.sample_subset( + keys=self.prior_set_from_dict.keys(), size=size + ) + self.assertEqual(len(self.prior_set_from_dict), len(samples)) + for key in samples: + self.assertEqual(size, len(samples[key])) + + def test_sample_subset_correct_size_when_non_priors_in_dict(self): + self.prior_set_from_dict["asdf"] = "not_a_prior" + samples = self.prior_set_from_dict.sample_subset( + keys=self.prior_set_from_dict.keys() + ) + self.assertEqual(len(self.prior_set_from_dict) - 1, len(samples)) + + def test_sample_subset_with_actual_subset(self): + size = 3 + samples = self.prior_set_from_dict.sample_subset(keys=["length"], size=size) + expected = dict(length=np.array([42.0, 42.0, 42.0])) + self.assertTrue(np.array_equal(expected["length"], samples["length"])) + + def test_sample_subset_constrained_as_array(self): + size = 3 + keys = ["mass", "speed"] + out = self.prior_set_from_dict.sample_subset_constrained_as_array(keys, size) + self.assertTrue(isinstance(out, np.ndarray)) + self.assertTrue(out.shape == (len(keys), size)) + + def test_sample(self): + size = 7 + np.random.seed(42) + samples1 = self.prior_set_from_dict.sample_subset( + keys=self.prior_set_from_dict.keys(), size=size + ) + np.random.seed(42) + samples2 = self.prior_set_from_dict.sample(size=size) + self.assertEqual(set(samples1.keys()), set(samples2.keys())) + for key in samples1: + self.assertTrue(np.array_equal(samples1[key], samples2[key])) + + def test_prob(self): + samples = self.prior_set_from_dict.sample_subset(keys=["mass", "speed"]) + expected = self.first_prior.prob(samples["mass"]) * self.second_prior.prob( + samples["speed"] + ) + self.assertEqual(expected, self.prior_set_from_dict.prob(samples)) + + def test_ln_prob(self): + samples = self.prior_set_from_dict.sample_subset(keys=["mass", "speed"]) + expected = self.first_prior.ln_prob( + samples["mass"] + ) + self.second_prior.ln_prob(samples["speed"]) + self.assertEqual(expected, self.prior_set_from_dict.ln_prob(samples)) + + def test_rescale(self): + theta = [0.5, 0.5, 0.5] + expected = [ + self.first_prior.rescale(0.5), + self.second_prior.rescale(0.5), + self.third_prior.rescale(0.5), + ] + self.assertListEqual( + sorted(expected), + sorted( + self.prior_set_from_dict.rescale( + keys=self.prior_set_from_dict.keys(), theta=theta + ) + ), + ) + + def test_redundancy(self): + for key in self.prior_set_from_dict.keys(): + self.assertFalse(self.prior_set_from_dict.test_redundancy(key=key)) + + +class TestJsonIO(unittest.TestCase): + def setUp(self): + mvg = bilby.core.prior.MultivariateGaussianDist( + names=["testa", "testb"], + mus=[1, 1], + covs=np.array([[2.0, 0.5], [0.5, 2.0]]), + weights=1.0, + ) + mvn = bilby.core.prior.MultivariateGaussianDist( + names=["testa", "testb"], + mus=[1, 1], + covs=np.array([[2.0, 0.5], [0.5, 2.0]]), + weights=1.0, + ) + hp_map_file = os.path.join( + os.path.dirname(os.path.realpath(__file__)), + "prior_files/GW150914_testing_skymap.fits", + ) + hp_dist = bilby.gw.prior.HealPixMapPriorDist( + hp_map_file, names=["testra", "testdec"] + ) + hp_3d_dist = bilby.gw.prior.HealPixMapPriorDist( + hp_map_file, names=["testra", "testdec", "testdistance"], distance=True + ) + + self.priors = bilby.core.prior.PriorDict( + dict( + aa=bilby.core.prior.DeltaFunction(name="test", unit="unit", peak=1), + bb=bilby.core.prior.Gaussian(name="test", unit="unit", mu=0, sigma=1), + cc=bilby.core.prior.Normal(name="test", unit="unit", mu=0, sigma=1), + dd=bilby.core.prior.PowerLaw( + name="test", unit="unit", alpha=0, minimum=0, maximum=1 + ), + ee=bilby.core.prior.PowerLaw( + name="test", unit="unit", alpha=-1, minimum=0.5, maximum=1 + ), + ff=bilby.core.prior.PowerLaw( + name="test", unit="unit", alpha=2, minimum=1, maximum=1e2 + ), + gg=bilby.core.prior.Uniform( + name="test", unit="unit", minimum=0, maximum=1 + ), + hh=bilby.core.prior.LogUniform( + name="test", unit="unit", minimum=5e0, maximum=1e2 + ), + ii=bilby.gw.prior.UniformComovingVolume( + name="redshift", minimum=0.1, maximum=1.0 + ), + jj=bilby.gw.prior.UniformSourceFrame( + name="luminosity_distance", minimum=1.0, maximum=1000.0 + ), + kk=bilby.core.prior.Sine(name="test", unit="unit"), + ll=bilby.core.prior.Cosine(name="test", unit="unit"), + m=bilby.core.prior.Interped( + name="test", + unit="unit", + xx=np.linspace(0, 10, 1000), + yy=np.linspace(0, 10, 1000) ** 4, + minimum=3, + maximum=5, + ), + nn=bilby.core.prior.TruncatedGaussian( + name="test", unit="unit", mu=1, sigma=0.4, minimum=-1, maximum=1 + ), + oo=bilby.core.prior.TruncatedNormal( + name="test", unit="unit", mu=1, sigma=0.4, minimum=-1, maximum=1 + ), + pp=bilby.core.prior.HalfGaussian(name="test", unit="unit", sigma=1), + qq=bilby.core.prior.HalfNormal(name="test", unit="unit", sigma=1), + rr=bilby.core.prior.LogGaussian(name="test", unit="unit", mu=0, sigma=1), + ss=bilby.core.prior.LogNormal(name="test", unit="unit", mu=0, sigma=1), + tt=bilby.core.prior.Exponential(name="test", unit="unit", mu=1), + uu=bilby.core.prior.StudentT( + name="test", unit="unit", df=3, mu=0, scale=1 + ), + vv=bilby.core.prior.Beta(name="test", unit="unit", alpha=2.0, beta=2.0), + xx=bilby.core.prior.Logistic(name="test", unit="unit", mu=0, scale=1), + yy=bilby.core.prior.Cauchy(name="test", unit="unit", alpha=0, beta=1), + zz=bilby.core.prior.Lorentzian( + name="test", unit="unit", alpha=0, beta=1 + ), + a_=bilby.core.prior.Gamma(name="test", unit="unit", k=1, theta=1), + ab=bilby.core.prior.ChiSquared(name="test", unit="unit", nu=2), + ac=bilby.gw.prior.AlignedSpin(name="test", unit="unit"), + ad=bilby.core.prior.MultivariateGaussian( + dist=mvg, name="testa", unit="unit" + ), + ae=bilby.core.prior.MultivariateGaussian( + dist=mvg, name="testb", unit="unit" + ), + af=bilby.core.prior.MultivariateNormal( + dist=mvn, name="testa", unit="unit" + ), + ag=bilby.core.prior.MultivariateNormal( + dist=mvn, name="testb", unit="unit" + ), + ah=bilby.gw.prior.HealPixPrior( + dist=hp_dist, name="testra", unit="unit" + ), + ai=bilby.gw.prior.HealPixPrior( + dist=hp_dist, name="testdec", unit="unit" + ), + aj=bilby.gw.prior.HealPixPrior( + dist=hp_3d_dist, name="testra", unit="unit" + ), + ak=bilby.gw.prior.HealPixPrior( + dist=hp_3d_dist, name="testdec", unit="unit" + ), + al=bilby.gw.prior.HealPixPrior( + dist=hp_3d_dist, name="testdistance", unit="unit" + ), + ) + ) + + def test_read_write_to_json(self): + """ Interped prior is removed as there is numerical error in the recovered prior.""" + self.priors.to_json(outdir="prior_files", label="json_test") + new_priors = bilby.core.prior.PriorDict.from_json( + filename="prior_files/json_test_prior.json" + ) + old_interped = self.priors.pop("m") + new_interped = new_priors.pop("m") + self.assertDictEqual(self.priors, new_priors) + self.assertLess(max(abs(old_interped.xx - new_interped.xx)), 1e-15) + self.assertLess(max(abs(old_interped.yy - new_interped.yy)), 1e-15) + + +class TestLoadPrior(unittest.TestCase): + def test_load_prior_with_float(self): + filename = os.path.join( + os.path.dirname(os.path.realpath(__file__)), + "prior_files/prior_with_floats.prior", + ) + prior = bilby.core.prior.PriorDict(filename) + self.assertTrue("mass_1" in prior) + self.assertTrue("mass_2" in prior) + self.assertTrue(prior["mass_2"].peak == 20) + + def test_load_prior_with_parentheses(self): + filename = os.path.join( + os.path.dirname(os.path.realpath(__file__)), + "prior_files/prior_with_parentheses.prior", + ) + prior = bilby.core.prior.PriorDict(filename) + self.assertTrue(isinstance(prior["logA"], bilby.core.prior.Uniform)) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/prior/interpolated_test.py b/test/core/prior/interpolated_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9b4a926f802e562fb325c5744d9437ef8ea8fae8 --- /dev/null +++ b/test/core/prior/interpolated_test.py @@ -0,0 +1,5 @@ +import unittest + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/prior/joint_test.py b/test/core/prior/joint_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9b4a926f802e562fb325c5744d9437ef8ea8fae8 --- /dev/null +++ b/test/core/prior/joint_test.py @@ -0,0 +1,5 @@ +import unittest + + +if __name__ == "__main__": + unittest.main() diff --git a/test/prior_files/GW150914_testing_skymap.fits b/test/core/prior/prior_files/GW150914_testing_skymap.fits similarity index 100% rename from test/prior_files/GW150914_testing_skymap.fits rename to test/core/prior/prior_files/GW150914_testing_skymap.fits diff --git a/test/prior_files/aligned_spins_bbh.prior b/test/core/prior/prior_files/aligned_spins_bbh.prior similarity index 100% rename from test/prior_files/aligned_spins_bbh.prior rename to test/core/prior/prior_files/aligned_spins_bbh.prior diff --git a/test/prior_files/aligned_spins_bbh_tides_on.prior b/test/core/prior/prior_files/aligned_spins_bbh_tides_on.prior similarity index 100% rename from test/prior_files/aligned_spins_bbh_tides_on.prior rename to test/core/prior/prior_files/aligned_spins_bbh_tides_on.prior diff --git a/test/prior_files/aligned_spins_bns.prior b/test/core/prior/prior_files/aligned_spins_bns.prior similarity index 100% rename from test/prior_files/aligned_spins_bns.prior rename to test/core/prior/prior_files/aligned_spins_bns.prior diff --git a/test/prior_files/aligned_spins_bns_tides_on.prior b/test/core/prior/prior_files/aligned_spins_bns_tides_on.prior similarity index 100% rename from test/prior_files/aligned_spins_bns_tides_on.prior rename to test/core/prior/prior_files/aligned_spins_bns_tides_on.prior diff --git a/test/prior_files/precessing_spins_bbh.prior b/test/core/prior/prior_files/precessing_spins_bbh.prior similarity index 100% rename from test/prior_files/precessing_spins_bbh.prior rename to test/core/prior/prior_files/precessing_spins_bbh.prior diff --git a/test/prior_files/precessing_spins_bbh_tides_on.prior b/test/core/prior/prior_files/precessing_spins_bbh_tides_on.prior similarity index 100% rename from test/prior_files/precessing_spins_bbh_tides_on.prior rename to test/core/prior/prior_files/precessing_spins_bbh_tides_on.prior diff --git a/test/prior_files/precessing_spins_bns.prior b/test/core/prior/prior_files/precessing_spins_bns.prior similarity index 100% rename from test/prior_files/precessing_spins_bns.prior rename to test/core/prior/prior_files/precessing_spins_bns.prior diff --git a/test/prior_files/precessing_spins_bns_tides_on.prior b/test/core/prior/prior_files/precessing_spins_bns_tides_on.prior similarity index 100% rename from test/prior_files/precessing_spins_bns_tides_on.prior rename to test/core/prior/prior_files/precessing_spins_bns_tides_on.prior diff --git a/test/prior_files/prior_with_floats.prior b/test/core/prior/prior_files/prior_with_floats.prior similarity index 100% rename from test/prior_files/prior_with_floats.prior rename to test/core/prior/prior_files/prior_with_floats.prior diff --git a/test/prior_files/prior_with_parentheses.prior b/test/core/prior/prior_files/prior_with_parentheses.prior similarity index 100% rename from test/prior_files/prior_with_parentheses.prior rename to test/core/prior/prior_files/prior_with_parentheses.prior diff --git a/test/prior_test.py b/test/core/prior/prior_test.py similarity index 50% rename from test/prior_test.py rename to test/core/prior/prior_test.py index 6222752d40e1c314ede933e831c3d0177026169d..01892a08ec03c34c36b27ed679ca95342717d3a0 100644 --- a/test/prior_test.py +++ b/test/core/prior/prior_test.py @@ -2,156 +2,11 @@ from __future__ import absolute_import, division import bilby import unittest from mock import Mock -import mock import numpy as np import os import scipy.stats as ss -class TestPriorInstantiationWithoutOptionalPriors(unittest.TestCase): - def setUp(self): - self.prior = bilby.core.prior.Prior() - - def tearDown(self): - del self.prior - - def test_name(self): - self.assertIsNone(self.prior.name) - - def test_latex_label(self): - self.assertIsNone(self.prior.latex_label) - - def test_is_fixed(self): - self.assertFalse(self.prior.is_fixed) - - def test_class_instance(self): - self.assertIsInstance(self.prior, bilby.core.prior.Prior) - - def test_magic_call_is_the_same_as_sampling(self): - self.prior.sample = Mock(return_value=0.5) - self.assertEqual(self.prior.sample(), self.prior()) - - def test_base_rescale_method(self): - self.assertIsNone(self.prior.rescale(1)) - - def test_base_repr(self): - """ - We compare that the strings contain all of the same characters in not - necessarily the same order as python2 doesn't conserve the order of the - arguments. - """ - self.prior = bilby.core.prior.Prior( - name="test_name", - latex_label="test_label", - minimum=0, - maximum=1, - check_range_nonzero=True, - boundary=None, - ) - expected_string = ( - "Prior(name='test_name', latex_label='test_label', unit=None, minimum=0, maximum=1, " - "check_range_nonzero=True, boundary=None)" - ) - self.assertTrue(sorted(expected_string) == sorted(self.prior.__repr__())) - - def test_base_prob(self): - self.assertTrue(np.isnan(self.prior.prob(5))) - - def test_base_ln_prob(self): - self.prior.prob = lambda val: val - self.assertEqual(np.log(5), self.prior.ln_prob(5)) - - def test_is_in_prior(self): - self.prior.minimum = 0 - self.prior.maximum = 1 - val_below = self.prior.minimum - 0.1 - val_at_minimum = self.prior.minimum - val_in_prior = (self.prior.minimum + self.prior.maximum) / 2.0 - val_at_maximum = self.prior.maximum - val_above = self.prior.maximum + 0.1 - self.assertTrue(self.prior.is_in_prior_range(val_at_minimum)) - self.assertTrue(self.prior.is_in_prior_range(val_at_maximum)) - self.assertTrue(self.prior.is_in_prior_range(val_in_prior)) - self.assertFalse(self.prior.is_in_prior_range(val_below)) - self.assertFalse(self.prior.is_in_prior_range(val_above)) - - def test_boundary_is_none(self): - self.assertIsNone(self.prior.boundary) - - -class TestPriorName(unittest.TestCase): - def setUp(self): - self.test_name = "test_name" - self.prior = bilby.core.prior.Prior(self.test_name) - - def tearDown(self): - del self.prior - del self.test_name - - def test_name_assignment(self): - self.prior.name = "other_name" - self.assertEqual(self.prior.name, "other_name") - - -class TestPriorLatexLabel(unittest.TestCase): - def setUp(self): - self.test_name = "test_name" - self.prior = bilby.core.prior.Prior(self.test_name) - - def tearDown(self): - del self.test_name - del self.prior - - def test_label_assignment(self): - test_label = "test_label" - self.prior.latex_label = "test_label" - self.assertEqual(test_label, self.prior.latex_label) - - def test_default_label_assignment(self): - self.prior.name = "chirp_mass" - self.prior.latex_label = None - self.assertEqual(self.prior.latex_label, "$\mathcal{M}$") - - def test_default_label_assignment_default(self): - self.assertTrue(self.prior.latex_label, self.prior.name) - - -class TestPriorIsFixed(unittest.TestCase): - def setUp(self): - pass - - def tearDown(self): - del self.prior - - def test_is_fixed_parent_class(self): - self.prior = bilby.core.prior.Prior() - self.assertFalse(self.prior.is_fixed) - - def test_is_fixed_delta_function_class(self): - self.prior = bilby.core.prior.DeltaFunction(peak=0) - self.assertTrue(self.prior.is_fixed) - - def test_is_fixed_uniform_class(self): - self.prior = bilby.core.prior.Uniform(minimum=0, maximum=10) - self.assertFalse(self.prior.is_fixed) - - -class TestPriorBoundary(unittest.TestCase): - def setUp(self): - self.prior = bilby.core.prior.Prior(boundary=None) - - def tearDown(self): - del self.prior - - def test_set_boundary_valid(self): - self.prior.boundary = "periodic" - self.assertEqual(self.prior.boundary, "periodic") - - def test_set_boundary_invalid(self): - with self.assertRaises(ValueError): - self.prior.boundary = "else" - - class TestPriorClasses(unittest.TestCase): def setUp(self): @@ -896,307 +751,6 @@ class TestPriorClasses(unittest.TestCase): self.assertTrue(min(prior.sample(10000)) > prior.minimum) -class TestPriorDict(unittest.TestCase): - def setUp(self): - self.first_prior = bilby.core.prior.Uniform( - name="a", minimum=0, maximum=1, unit="kg", boundary=None - ) - self.second_prior = bilby.core.prior.PowerLaw( - name="b", alpha=3, minimum=1, maximum=2, unit="m/s", boundary=None - ) - self.third_prior = bilby.core.prior.DeltaFunction(name="c", peak=42, unit="m") - self.priors = dict( - mass=self.first_prior, speed=self.second_prior, length=self.third_prior - ) - self.prior_set_from_dict = bilby.core.prior.PriorDict(dictionary=self.priors) - self.default_prior_file = os.path.join( - os.path.dirname(os.path.realpath(__file__)), - "prior_files/precessing_spins_bbh.prior", - ) - self.prior_set_from_file = bilby.core.prior.PriorDict( - filename=self.default_prior_file - ) - - def tearDown(self): - del self.first_prior - del self.second_prior - del self.third_prior - del self.priors - del self.prior_set_from_dict - del self.default_prior_file - del self.prior_set_from_file - - def test_copy(self): - priors = bilby.core.prior.PriorDict(self.priors) - self.assertEqual(priors, priors.copy()) - - def test_prior_set(self): - priors_dict = bilby.core.prior.PriorDict(self.priors) - priors_set = bilby.core.prior.PriorSet(self.priors) - self.assertEqual(priors_dict, priors_set) - - def test_prior_set_is_dict(self): - self.assertIsInstance(self.prior_set_from_dict, dict) - - def test_prior_set_has_correct_length(self): - self.assertEqual(3, len(self.prior_set_from_dict)) - - def test_prior_set_has_expected_priors(self): - self.assertDictEqual(self.priors, dict(self.prior_set_from_dict)) - - def test_read_from_file(self): - expected = dict( - mass_1=bilby.core.prior.Constraint( - name="mass_1", - minimum=5, - maximum=100, - ), - mass_2=bilby.core.prior.Constraint( - name="mass_2", - minimum=5, - maximum=100, - ), - chirp_mass=bilby.core.prior.Uniform( - name="chirp_mass", - minimum=25, - maximum=100, - latex_label="$\mathcal{M}$", - ), - mass_ratio=bilby.core.prior.Uniform( - name="mass_ratio", - minimum=0.125, - maximum=1, - latex_label="$q$", - unit=None, - ), - a_1=bilby.core.prior.Uniform( - name="a_1", minimum=0, maximum=0.99 - ), - a_2=bilby.core.prior.Uniform( - name="a_2", minimum=0, maximum=0.99 - ), - tilt_1=bilby.core.prior.Sine(name="tilt_1"), - tilt_2=bilby.core.prior.Sine(name="tilt_2"), - phi_12=bilby.core.prior.Uniform( - name="phi_12", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - phi_jl=bilby.core.prior.Uniform( - name="phi_jl", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - luminosity_distance=bilby.gw.prior.UniformSourceFrame( - name="luminosity_distance", - minimum=1e2, - maximum=5e3, - unit="Mpc", - boundary=None, - ), - dec=bilby.core.prior.Cosine(name="dec"), - ra=bilby.core.prior.Uniform( - name="ra", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - theta_jn=bilby.core.prior.Sine(name="theta_jn"), - psi=bilby.core.prior.Uniform( - name="psi", minimum=0, maximum=np.pi, boundary="periodic" - ), - phase=bilby.core.prior.Uniform( - name="phase", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - ) - self.assertDictEqual(expected, self.prior_set_from_file) - - def test_to_file(self): - """ - We compare that the strings contain all of the same characters in not - necessarily the same order as python2 doesn't conserve the order of the - arguments. - """ - expected = [ - "length = DeltaFunction(peak=42, name='c', latex_label='c', unit='m')\n", - "speed = PowerLaw(alpha=3, minimum=1, maximum=2, name='b', latex_label='b', " - "unit='m/s', boundary=None)\n", - "mass = Uniform(minimum=0, maximum=1, name='a', latex_label='a', " - "unit='kg', boundary=None)\n", - ] - self.prior_set_from_dict.to_file(outdir="prior_files", label="to_file_test") - with open("prior_files/to_file_test.prior") as f: - for i, line in enumerate(f.readlines()): - self.assertTrue( - any([sorted(line) == sorted(expect) for expect in expected]) - ) - - def test_from_dict_with_string(self): - string_prior = ( - "PowerLaw(name='b', alpha=3, minimum=1, maximum=2, unit='m/s', " - "boundary=None)" - ) - self.priors["speed"] = string_prior - from_dict = bilby.core.prior.PriorDict(dictionary=self.priors) - self.assertDictEqual(self.prior_set_from_dict, from_dict) - - def test_convert_floats_to_delta_functions(self): - self.prior_set_from_dict["d"] = 5 - self.prior_set_from_dict["e"] = 7.3 - self.prior_set_from_dict["f"] = "unconvertable" - self.prior_set_from_dict.convert_floats_to_delta_functions() - expected = dict( - mass=bilby.core.prior.Uniform( - name="a", minimum=0, maximum=1, unit="kg", boundary=None - ), - speed=bilby.core.prior.PowerLaw( - name="b", alpha=3, minimum=1, maximum=2, unit="m/s", boundary=None - ), - length=bilby.core.prior.DeltaFunction(name="c", peak=42, unit="m"), - d=bilby.core.prior.DeltaFunction(peak=5), - e=bilby.core.prior.DeltaFunction(peak=7.3), - f="unconvertable", - ) - self.assertDictEqual(expected, self.prior_set_from_dict) - - def test_prior_set_from_dict_but_using_a_string(self): - prior_set = bilby.core.prior.PriorDict(dictionary=self.default_prior_file) - expected = bilby.core.prior.PriorDict( - dict( - mass_1=bilby.core.prior.Constraint( - name="mass_1", - minimum=5, - maximum=100, - ), - mass_2=bilby.core.prior.Constraint( - name="mass_2", - minimum=5, - maximum=100, - ), - chirp_mass=bilby.core.prior.Uniform( - name="chirp_mass", - minimum=25, - maximum=100, - latex_label="$\mathcal{M}$", - ), - mass_ratio=bilby.core.prior.Uniform( - name="mass_ratio", - minimum=0.125, - maximum=1, - latex_label="$q$", - unit=None, - ), - a_1=bilby.core.prior.Uniform( - name="a_1", minimum=0, maximum=0.99, - ), - a_2=bilby.core.prior.Uniform( - name="a_2", minimum=0, maximum=0.99, - ), - tilt_1=bilby.core.prior.Sine(name="tilt_1"), - tilt_2=bilby.core.prior.Sine(name="tilt_2"), - phi_12=bilby.core.prior.Uniform( - name="phi_12", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - phi_jl=bilby.core.prior.Uniform( - name="phi_jl", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - luminosity_distance=bilby.gw.prior.UniformSourceFrame( - name="luminosity_distance", - minimum=1e2, - maximum=5e3, - unit="Mpc", - boundary=None, - ), - dec=bilby.core.prior.Cosine(name="dec"), - ra=bilby.core.prior.Uniform( - name="ra", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - theta_jn=bilby.core.prior.Sine(name="theta_jn"), - psi=bilby.core.prior.Uniform( - name="psi", minimum=0, maximum=np.pi, boundary="periodic" - ), - phase=bilby.core.prior.Uniform( - name="phase", minimum=0, maximum=2 * np.pi, boundary="periodic" - ), - ) - ) - all_keys = set(prior_set.keys()).union(set(expected.keys())) - for key in all_keys: - self.assertEqual(expected[key], prior_set[key]) - - def test_dict_argument_is_not_string_or_dict(self): - with self.assertRaises(ValueError): - bilby.core.prior.PriorDict(dictionary=list()) - - def test_sample_subset_correct_size(self): - size = 7 - samples = self.prior_set_from_dict.sample_subset( - keys=self.prior_set_from_dict.keys(), size=size - ) - self.assertEqual(len(self.prior_set_from_dict), len(samples)) - for key in samples: - self.assertEqual(size, len(samples[key])) - - def test_sample_subset_correct_size_when_non_priors_in_dict(self): - self.prior_set_from_dict["asdf"] = "not_a_prior" - samples = self.prior_set_from_dict.sample_subset( - keys=self.prior_set_from_dict.keys() - ) - self.assertEqual(len(self.prior_set_from_dict) - 1, len(samples)) - - def test_sample_subset_with_actual_subset(self): - size = 3 - samples = self.prior_set_from_dict.sample_subset(keys=["length"], size=size) - expected = dict(length=np.array([42.0, 42.0, 42.0])) - self.assertTrue(np.array_equal(expected["length"], samples["length"])) - - def test_sample_subset_constrained_as_array(self): - size = 3 - keys = ["mass", "speed"] - out = self.prior_set_from_dict.sample_subset_constrained_as_array(keys, size) - self.assertTrue(isinstance(out, np.ndarray)) - self.assertTrue(out.shape == (len(keys), size)) - - def test_sample(self): - size = 7 - np.random.seed(42) - samples1 = self.prior_set_from_dict.sample_subset( - keys=self.prior_set_from_dict.keys(), size=size - ) - np.random.seed(42) - samples2 = self.prior_set_from_dict.sample(size=size) - self.assertEqual(set(samples1.keys()), set(samples2.keys())) - for key in samples1: - self.assertTrue(np.array_equal(samples1[key], samples2[key])) - - def test_prob(self): - samples = self.prior_set_from_dict.sample_subset(keys=["mass", "speed"]) - expected = self.first_prior.prob(samples["mass"]) * self.second_prior.prob( - samples["speed"] - ) - self.assertEqual(expected, self.prior_set_from_dict.prob(samples)) - - def test_ln_prob(self): - samples = self.prior_set_from_dict.sample_subset(keys=["mass", "speed"]) - expected = self.first_prior.ln_prob( - samples["mass"] - ) + self.second_prior.ln_prob(samples["speed"]) - self.assertEqual(expected, self.prior_set_from_dict.ln_prob(samples)) - - def test_rescale(self): - theta = [0.5, 0.5, 0.5] - expected = [ - self.first_prior.rescale(0.5), - self.second_prior.rescale(0.5), - self.third_prior.rescale(0.5), - ] - self.assertListEqual( - sorted(expected), - sorted( - self.prior_set_from_dict.rescale( - keys=self.prior_set_from_dict.keys(), theta=theta - ) - ), - ) - - def test_redundancy(self): - for key in self.prior_set_from_dict.keys(): - self.assertFalse(self.prior_set_from_dict.test_redundancy(key=key)) - - class TestConstraintPriorNormalisation(unittest.TestCase): def setUp(self): self.priors = dict( @@ -1223,26 +777,6 @@ class TestConstraintPriorNormalisation(unittest.TestCase): self.assertAlmostEqual(1, integral, 5) -class TestLoadPrior(unittest.TestCase): - def test_load_prior_with_float(self): - filename = os.path.join( - os.path.dirname(os.path.realpath(__file__)), - "prior_files/prior_with_floats.prior", - ) - prior = bilby.core.prior.PriorDict(filename) - self.assertTrue("mass_1" in prior) - self.assertTrue("mass_2" in prior) - self.assertTrue(prior["mass_2"].peak == 20) - - def test_load_prior_with_parentheses(self): - filename = os.path.join( - os.path.dirname(os.path.realpath(__file__)), - "prior_files/prior_with_parentheses.prior", - ) - prior = bilby.core.prior.PriorDict(filename) - self.assertTrue(isinstance(prior["logA"], bilby.core.prior.Uniform)) - - class TestFillPrior(unittest.TestCase): def setUp(self): self.likelihood = Mock() @@ -1315,489 +849,5 @@ class TestCreateDefaultPrior(unittest.TestCase): ) -class TestConditionalPrior(unittest.TestCase): - def setUp(self): - self.condition_func_call_counter = 0 - - def condition_func(reference_parameters, test_variable_1, test_variable_2): - self.condition_func_call_counter += 1 - return {key: value + 1 for key, value in reference_parameters.items()} - - self.condition_func = condition_func - self.minimum = 0 - self.maximum = 5 - self.test_variable_1 = 0 - self.test_variable_2 = 1 - self.prior = bilby.core.prior.ConditionalBasePrior( - condition_func=condition_func, minimum=self.minimum, maximum=self.maximum - ) - - def tearDown(self): - del self.condition_func - del self.condition_func_call_counter - del self.minimum - del self.maximum - del self.test_variable_1 - del self.test_variable_2 - del self.prior - - def test_reference_params(self): - self.assertDictEqual( - dict(minimum=self.minimum, maximum=self.maximum), - self.prior.reference_params, - ) - - def test_required_variables(self): - self.assertListEqual( - ["test_variable_1", "test_variable_2"], - sorted(self.prior.required_variables), - ) - - def test_required_variables_no_condition_func(self): - self.prior = bilby.core.prior.ConditionalBasePrior( - condition_func=None, minimum=self.minimum, maximum=self.maximum - ) - self.assertListEqual([], self.prior.required_variables) - - def test_get_instantiation_dict(self): - expected = dict( - minimum=0, - maximum=5, - name=None, - latex_label=None, - unit=None, - boundary=None, - condition_func=self.condition_func, - ) - actual = self.prior.get_instantiation_dict() - for key, value in expected.items(): - if key == "condition_func": - continue - self.assertEqual(value, actual[key]) - - def test_update_conditions_correct_variables(self): - self.prior.update_conditions( - test_variable_1=self.test_variable_1, test_variable_2=self.test_variable_2 - ) - self.assertEqual(1, self.condition_func_call_counter) - self.assertEqual(self.minimum + 1, self.prior.minimum) - self.assertEqual(self.maximum + 1, self.prior.maximum) - - def test_update_conditions_no_variables(self): - self.prior.update_conditions( - test_variable_1=self.test_variable_1, test_variable_2=self.test_variable_2 - ) - self.prior.update_conditions() - self.assertEqual(1, self.condition_func_call_counter) - self.assertEqual(self.minimum + 1, self.prior.minimum) - self.assertEqual(self.maximum + 1, self.prior.maximum) - - def test_update_conditions_illegal_variables(self): - with self.assertRaises(bilby.core.prior.IllegalRequiredVariablesException): - self.prior.update_conditions(test_parameter_1=self.test_variable_1) - - def test_sample_calls_update_conditions(self): - with mock.patch.object(self.prior, "update_conditions") as m: - self.prior.sample( - 1, - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - m.assert_called_with( - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - - def test_rescale_calls_update_conditions(self): - with mock.patch.object(self.prior, "update_conditions") as m: - self.prior.rescale( - 1, - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - m.assert_called_with( - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - - def test_rescale_prob_update_conditions(self): - with mock.patch.object(self.prior, "update_conditions") as m: - self.prior.prob( - 1, - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - m.assert_called_with( - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - - def test_rescale_ln_prob_update_conditions(self): - with mock.patch.object(self.prior, "update_conditions") as m: - self.prior.ln_prob( - 1, - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ) - calls = [ - mock.call( - test_parameter_1=self.test_variable_1, - test_parameter_2=self.test_variable_2, - ), - mock.call(), - ] - m.assert_has_calls(calls) - - def test_reset_to_reference_parameters(self): - self.prior.minimum = 10 - self.prior.maximum = 20 - self.prior.reset_to_reference_parameters() - self.assertEqual(self.prior.reference_params["minimum"], self.prior.minimum) - self.assertEqual(self.prior.reference_params["maximum"], self.prior.maximum) - - def test_cond_prior_instantiation_no_boundary_prior(self): - prior = bilby.core.prior.ConditionalFermiDirac( - condition_func=None, sigma=1, mu=1 - ) - self.assertIsNone(prior.boundary) - - -class TestConditionalPriorDict(unittest.TestCase): - def setUp(self): - def condition_func_1(reference_parameters, var_0): - return reference_parameters - - def condition_func_2(reference_parameters, var_0, var_1): - return reference_parameters - - def condition_func_3(reference_parameters, var_1, var_2): - return reference_parameters - - self.minimum = 0 - self.maximum = 1 - self.prior_0 = bilby.core.prior.Uniform( - minimum=self.minimum, maximum=self.maximum - ) - self.prior_1 = bilby.core.prior.ConditionalUniform( - condition_func=condition_func_1, minimum=self.minimum, maximum=self.maximum - ) - self.prior_2 = bilby.core.prior.ConditionalUniform( - condition_func=condition_func_2, minimum=self.minimum, maximum=self.maximum - ) - self.prior_3 = bilby.core.prior.ConditionalUniform( - condition_func=condition_func_3, minimum=self.minimum, maximum=self.maximum - ) - self.conditional_priors = bilby.core.prior.ConditionalPriorDict( - dict( - var_3=self.prior_3, - var_2=self.prior_2, - var_0=self.prior_0, - var_1=self.prior_1, - ) - ) - self.conditional_priors_manually_set_items = ( - bilby.core.prior.ConditionalPriorDict() - ) - self.test_sample = dict(var_0=0.3, var_1=0.4, var_2=0.5, var_3=0.4) - for key, value in dict( - var_0=self.prior_0, - var_1=self.prior_1, - var_2=self.prior_2, - var_3=self.prior_3, - ).items(): - self.conditional_priors_manually_set_items[key] = value - - def tearDown(self): - del self.minimum - del self.maximum - del self.prior_0 - del self.prior_1 - del self.prior_2 - del self.prior_3 - del self.conditional_priors - del self.conditional_priors_manually_set_items - del self.test_sample - - def test_conditions_resolved_upon_instantiation(self): - self.assertListEqual( - ["var_0", "var_1", "var_2", "var_3"], self.conditional_priors.sorted_keys - ) - - def test_conditions_resolved_setting_items(self): - self.assertListEqual( - ["var_0", "var_1", "var_2", "var_3"], - self.conditional_priors_manually_set_items.sorted_keys, - ) - - def test_unconditional_keys_upon_instantiation(self): - self.assertListEqual(["var_0"], self.conditional_priors.unconditional_keys) - - def test_unconditional_keys_setting_items(self): - self.assertListEqual( - ["var_0"], self.conditional_priors_manually_set_items.unconditional_keys - ) - - def test_conditional_keys_upon_instantiation(self): - self.assertListEqual( - ["var_1", "var_2", "var_3"], self.conditional_priors.conditional_keys - ) - - def test_conditional_keys_setting_items(self): - self.assertListEqual( - ["var_1", "var_2", "var_3"], - self.conditional_priors_manually_set_items.conditional_keys, - ) - - def test_prob(self): - self.assertEqual(1, self.conditional_priors.prob(sample=self.test_sample)) - - def test_prob_illegal_conditions(self): - del self.conditional_priors["var_0"] - with self.assertRaises(bilby.core.prior.IllegalConditionsException): - self.conditional_priors.prob(sample=self.test_sample) - - def test_ln_prob(self): - self.assertEqual(0, self.conditional_priors.ln_prob(sample=self.test_sample)) - - def test_ln_prob_illegal_conditions(self): - del self.conditional_priors["var_0"] - with self.assertRaises(bilby.core.prior.IllegalConditionsException): - self.conditional_priors.ln_prob(sample=self.test_sample) - - def test_sample_subset_all_keys(self): - with mock.patch("numpy.random.uniform") as m: - m.return_value = 0.5 - self.assertDictEqual( - dict(var_0=0.5, var_1=0.5, var_2=0.5, var_3=0.5), - self.conditional_priors.sample_subset( - keys=["var_0", "var_1", "var_2", "var_3"] - ), - ) - - def test_sample_illegal_subset(self): - with mock.patch("numpy.random.uniform") as m: - m.return_value = 0.5 - with self.assertRaises(bilby.core.prior.IllegalConditionsException): - self.conditional_priors.sample_subset(keys=["var_1"]) - - def test_sample_multiple(self): - def condition_func(reference_params, a): - return dict( - minimum=reference_params["minimum"], - maximum=reference_params["maximum"], - alpha=reference_params["alpha"] * a, - ) - - priors = bilby.core.prior.ConditionalPriorDict() - priors["a"] = bilby.core.prior.Uniform(minimum=0, maximum=1) - priors["b"] = bilby.core.prior.ConditionalPowerLaw( - condition_func=condition_func, minimum=1, maximum=2, alpha=-2 - ) - print(priors.sample(2)) - - def test_rescale(self): - def condition_func_1_rescale(reference_parameters, var_0): - if var_0 == 0.5: - return dict(minimum=reference_parameters["minimum"], maximum=1) - return reference_parameters - - def condition_func_2_rescale(reference_parameters, var_0, var_1): - if var_0 == 0.5 and var_1 == 0.5: - return dict(minimum=reference_parameters["minimum"], maximum=1) - return reference_parameters - - def condition_func_3_rescale(reference_parameters, var_1, var_2): - if var_1 == 0.5 and var_2 == 0.5: - return dict(minimum=reference_parameters["minimum"], maximum=1) - return reference_parameters - - self.prior_0 = bilby.core.prior.Uniform(minimum=self.minimum, maximum=1) - self.prior_1 = bilby.core.prior.ConditionalUniform( - condition_func=condition_func_1_rescale, minimum=self.minimum, maximum=2 - ) - self.prior_2 = bilby.core.prior.ConditionalUniform( - condition_func=condition_func_2_rescale, minimum=self.minimum, maximum=2 - ) - self.prior_3 = bilby.core.prior.ConditionalUniform( - condition_func=condition_func_3_rescale, minimum=self.minimum, maximum=2 - ) - self.conditional_priors = bilby.core.prior.ConditionalPriorDict( - dict( - var_3=self.prior_3, - var_2=self.prior_2, - var_0=self.prior_0, - var_1=self.prior_1, - ) - ) - ref_variables = [0.5, 0.5, 0.5, 0.5] - res = self.conditional_priors.rescale( - keys=list(self.test_sample.keys()), theta=ref_variables - ) - self.assertListEqual(ref_variables, res) - - def test_rescale_illegal_conditions(self): - del self.conditional_priors["var_0"] - with self.assertRaises(bilby.core.prior.IllegalConditionsException): - self.conditional_priors.rescale( - keys=list(self.test_sample.keys()), - theta=list(self.test_sample.values()), - ) - - def test_combined_conditions(self): - def d_condition_func(reference_params, a, b, c): - return dict( - minimum=reference_params["minimum"], maximum=reference_params["maximum"] - ) - - def a_condition_func(reference_params, b, c): - return dict( - minimum=reference_params["minimum"], maximum=reference_params["maximum"] - ) - - priors = bilby.core.prior.ConditionalPriorDict() - - priors["a"] = bilby.core.prior.ConditionalUniform( - condition_func=a_condition_func, minimum=0, maximum=1 - ) - - priors["b"] = bilby.core.prior.LogUniform(minimum=1, maximum=10) - - priors["d"] = bilby.core.prior.ConditionalUniform( - condition_func=d_condition_func, minimum=0.0, maximum=1.0 - ) - - priors["c"] = bilby.core.prior.LogUniform(minimum=1, maximum=10) - priors.sample() - res = priors.rescale(["a", "b", "d", "c"], [0.5, 0.5, 0.5, 0.5]) - print(res) - - -class TestJsonIO(unittest.TestCase): - def setUp(self): - mvg = bilby.core.prior.MultivariateGaussianDist( - names=["testa", "testb"], - mus=[1, 1], - covs=np.array([[2.0, 0.5], [0.5, 2.0]]), - weights=1.0, - ) - mvn = bilby.core.prior.MultivariateGaussianDist( - names=["testa", "testb"], - mus=[1, 1], - covs=np.array([[2.0, 0.5], [0.5, 2.0]]), - weights=1.0, - ) - hp_map_file = os.path.join( - os.path.dirname(os.path.realpath(__file__)), - "prior_files/GW150914_testing_skymap.fits", - ) - hp_dist = bilby.gw.prior.HealPixMapPriorDist( - hp_map_file, names=["testra", "testdec"] - ) - hp_3d_dist = bilby.gw.prior.HealPixMapPriorDist( - hp_map_file, names=["testra", "testdec", "testdistance"], distance=True - ) - - self.priors = bilby.core.prior.PriorDict( - dict( - aa=bilby.core.prior.DeltaFunction(name="test", unit="unit", peak=1), - bb=bilby.core.prior.Gaussian(name="test", unit="unit", mu=0, sigma=1), - cc=bilby.core.prior.Normal(name="test", unit="unit", mu=0, sigma=1), - dd=bilby.core.prior.PowerLaw( - name="test", unit="unit", alpha=0, minimum=0, maximum=1 - ), - ee=bilby.core.prior.PowerLaw( - name="test", unit="unit", alpha=-1, minimum=0.5, maximum=1 - ), - ff=bilby.core.prior.PowerLaw( - name="test", unit="unit", alpha=2, minimum=1, maximum=1e2 - ), - gg=bilby.core.prior.Uniform( - name="test", unit="unit", minimum=0, maximum=1 - ), - hh=bilby.core.prior.LogUniform( - name="test", unit="unit", minimum=5e0, maximum=1e2 - ), - ii=bilby.gw.prior.UniformComovingVolume( - name="redshift", minimum=0.1, maximum=1.0 - ), - jj=bilby.gw.prior.UniformSourceFrame( - name="luminosity_distance", minimum=1.0, maximum=1000.0 - ), - kk=bilby.core.prior.Sine(name="test", unit="unit"), - ll=bilby.core.prior.Cosine(name="test", unit="unit"), - m=bilby.core.prior.Interped( - name="test", - unit="unit", - xx=np.linspace(0, 10, 1000), - yy=np.linspace(0, 10, 1000) ** 4, - minimum=3, - maximum=5, - ), - nn=bilby.core.prior.TruncatedGaussian( - name="test", unit="unit", mu=1, sigma=0.4, minimum=-1, maximum=1 - ), - oo=bilby.core.prior.TruncatedNormal( - name="test", unit="unit", mu=1, sigma=0.4, minimum=-1, maximum=1 - ), - pp=bilby.core.prior.HalfGaussian(name="test", unit="unit", sigma=1), - qq=bilby.core.prior.HalfNormal(name="test", unit="unit", sigma=1), - rr=bilby.core.prior.LogGaussian(name="test", unit="unit", mu=0, sigma=1), - ss=bilby.core.prior.LogNormal(name="test", unit="unit", mu=0, sigma=1), - tt=bilby.core.prior.Exponential(name="test", unit="unit", mu=1), - uu=bilby.core.prior.StudentT( - name="test", unit="unit", df=3, mu=0, scale=1 - ), - vv=bilby.core.prior.Beta(name="test", unit="unit", alpha=2.0, beta=2.0), - xx=bilby.core.prior.Logistic(name="test", unit="unit", mu=0, scale=1), - yy=bilby.core.prior.Cauchy(name="test", unit="unit", alpha=0, beta=1), - zz=bilby.core.prior.Lorentzian( - name="test", unit="unit", alpha=0, beta=1 - ), - a_=bilby.core.prior.Gamma(name="test", unit="unit", k=1, theta=1), - ab=bilby.core.prior.ChiSquared(name="test", unit="unit", nu=2), - ac=bilby.gw.prior.AlignedSpin(name="test", unit="unit"), - ad=bilby.core.prior.MultivariateGaussian( - dist=mvg, name="testa", unit="unit" - ), - ae=bilby.core.prior.MultivariateGaussian( - dist=mvg, name="testb", unit="unit" - ), - af=bilby.core.prior.MultivariateNormal( - dist=mvn, name="testa", unit="unit" - ), - ag=bilby.core.prior.MultivariateNormal( - dist=mvn, name="testb", unit="unit" - ), - ah=bilby.gw.prior.HealPixPrior( - dist=hp_dist, name="testra", unit="unit" - ), - ai=bilby.gw.prior.HealPixPrior( - dist=hp_dist, name="testdec", unit="unit" - ), - aj=bilby.gw.prior.HealPixPrior( - dist=hp_3d_dist, name="testra", unit="unit" - ), - ak=bilby.gw.prior.HealPixPrior( - dist=hp_3d_dist, name="testdec", unit="unit" - ), - al=bilby.gw.prior.HealPixPrior( - dist=hp_3d_dist, name="testdistance", unit="unit" - ), - ) - ) - - def test_read_write_to_json(self): - """ Interped prior is removed as there is numerical error in the recovered prior.""" - self.priors.to_json(outdir="prior_files", label="json_test") - new_priors = bilby.core.prior.PriorDict.from_json( - filename="prior_files/json_test_prior.json" - ) - old_interped = self.priors.pop("m") - new_interped = new_priors.pop("m") - self.assertDictEqual(self.priors, new_priors) - self.assertLess(max(abs(old_interped.xx - new_interped.xx)), 1e-15) - self.assertLess(max(abs(old_interped.yy - new_interped.yy)), 1e-15) - - if __name__ == "__main__": unittest.main() diff --git a/test/result_test.py b/test/core/result_test.py similarity index 100% rename from test/result_test.py rename to test/core/result_test.py diff --git a/test/core/sampler/__init__.py b/test/core/sampler/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/core/sampler/base_sampler_test.py b/test/core/sampler/base_sampler_test.py new file mode 100644 index 0000000000000000000000000000000000000000..af3f6b749fc37f8bf22e944727dc0adc2da80868 --- /dev/null +++ b/test/core/sampler/base_sampler_test.py @@ -0,0 +1,103 @@ +import copy +import os +import unittest + +import numpy as np +from mock import MagicMock + +import bilby +from bilby.core import prior + + +class TestSampler(unittest.TestCase): + def setUp(self): + likelihood = bilby.core.likelihood.Likelihood() + likelihood.parameters = dict(a=1, b=2, c=3) + delta_prior = prior.DeltaFunction(peak=0) + delta_prior.rescale = MagicMock(return_value=prior.DeltaFunction(peak=1)) + delta_prior.prob = MagicMock(return_value=1) + delta_prior.sample = MagicMock(return_value=0) + uniform_prior = prior.Uniform(0, 1) + uniform_prior.rescale = MagicMock(return_value=prior.Uniform(0, 2)) + uniform_prior.prob = MagicMock(return_value=1) + uniform_prior.sample = MagicMock(return_value=0.5) + + priors = dict(a=delta_prior, b="string", c=uniform_prior) + likelihood.log_likelihood_ratio = MagicMock(return_value=1) + likelihood.log_likelihood = MagicMock(return_value=2) + test_directory = "test_directory" + if os.path.isdir(test_directory): + os.rmdir(test_directory) + self.sampler = bilby.core.sampler.Sampler( + likelihood=likelihood, + priors=priors, + outdir=test_directory, + use_ratio=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.sampler + + def test_search_parameter_keys(self): + expected_search_parameter_keys = ["c"] + self.assertListEqual( + self.sampler.search_parameter_keys, expected_search_parameter_keys + ) + + def test_fixed_parameter_keys(self): + expected_fixed_parameter_keys = ["a"] + self.assertListEqual( + self.sampler.fixed_parameter_keys, expected_fixed_parameter_keys + ) + + def test_ndim(self): + self.assertEqual(self.sampler.ndim, 1) + + def test_kwargs(self): + self.assertDictEqual(self.sampler.kwargs, {}) + + def test_label(self): + self.assertEqual(self.sampler.label, "label") + + def test_prior_transform_transforms_search_parameter_keys(self): + self.sampler.prior_transform([0]) + expected_prior = prior.Uniform(0, 1) + self.assertListEqual( + [self.sampler.priors["c"].minimum, self.sampler.priors["c"].maximum], + [expected_prior.minimum, expected_prior.maximum], + ) + + def test_prior_transform_does_not_transform_fixed_parameter_keys(self): + self.sampler.prior_transform([0]) + self.assertEqual( + self.sampler.priors["a"].peak, prior.DeltaFunction(peak=0).peak + ) + + def test_log_prior(self): + self.assertEqual(self.sampler.log_prior({1}), 0.0) + + def test_log_likelihood_with_use_ratio(self): + self.sampler.use_ratio = True + self.assertEqual(self.sampler.log_likelihood([0]), 1) + + def test_log_likelihood_without_use_ratio(self): + self.sampler.use_ratio = False + self.assertEqual(self.sampler.log_likelihood([0]), 2) + + def test_log_likelihood_correctly_sets_parameters(self): + expected_dict = dict(a=0, b=2, c=0) + _ = self.sampler.log_likelihood([0]) + self.assertDictEqual(self.sampler.likelihood.parameters, expected_dict) + + def test_get_random_draw(self): + self.assertEqual(self.sampler.get_random_draw_from_prior(), np.array([0.5])) + + def test_base_run_sampler(self): + sampler_copy = copy.copy(self.sampler) + self.sampler.run_sampler() + self.assertDictEqual(sampler_copy.__dict__, self.sampler.__dict__) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/cpnest_test.py b/test/core/sampler/cpnest_test.py new file mode 100644 index 0000000000000000000000000000000000000000..569e00c0365153795d515e360284e15fa573858a --- /dev/null +++ b/test/core/sampler/cpnest_test.py @@ -0,0 +1,68 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestCPNest(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Cpnest( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + verbose=3, + nthreads=1, + nlive=500, + maxmcmc=1000, + seed=None, + poolsize=100, + nhamiltonian=0, + resume=True, + output="outdir/cpnest_label/", + proposals=None, + n_periodic_checkpoint=8000, + ) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + verbose=3, + nthreads=1, + nlive=250, + maxmcmc=1000, + seed=None, + poolsize=100, + nhamiltonian=0, + resume=True, + output="outdir/cpnest_label/", + proposals=None, + n_periodic_checkpoint=8000, + ) + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["nlive"] + new_kwargs[equiv] = 250 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/dynamic_dynesty_test.py b/test/core/sampler/dynamic_dynesty_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9b4a926f802e562fb325c5744d9437ef8ea8fae8 --- /dev/null +++ b/test/core/sampler/dynamic_dynesty_test.py @@ -0,0 +1,5 @@ +import unittest + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/dynesty_test.py b/test/core/sampler/dynesty_test.py new file mode 100644 index 0000000000000000000000000000000000000000..0509ff51067cff2ab8f608924a6f0783460b6f96 --- /dev/null +++ b/test/core/sampler/dynesty_test.py @@ -0,0 +1,159 @@ +import unittest + +import numpy as np +from mock import MagicMock + +import bilby + + +class TestDynesty(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Dynesty( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + bound="multi", + sample="rwalk", + periodic=None, + reflective=None, + verbose=True, + check_point_delta_t=600, + nlive=1000, + first_update=None, + npdim=None, + rstate=None, + queue_size=1, + pool=None, + use_pool=None, + live_points=None, + logl_args=None, + logl_kwargs=None, + ptform_args=None, + ptform_kwargs=None, + enlarge=1.5, + bootstrap=None, + vol_dec=0.5, + vol_check=8.0, + facc=0.2, + slices=5, + dlogz=0.1, + maxiter=None, + maxcall=None, + logl_max=np.inf, + add_live=True, + print_progress=True, + save_bounds=False, + walks=100, + update_interval=600, + print_func="func", + n_effective=None, + maxmcmc=5000, + nact=5, + ) + self.sampler.kwargs[ + "print_func" + ] = "func" # set this manually as this is not testable otherwise + # DictEqual can't handle lists so we check these separately + self.assertEqual([], self.sampler.kwargs["periodic"]) + self.assertEqual([], self.sampler.kwargs["reflective"]) + self.sampler.kwargs["periodic"] = expected["periodic"] + self.sampler.kwargs["reflective"] = expected["reflective"] + for key in self.sampler.kwargs.keys(): + print( + "key={}, expected={}, actual={}".format( + key, expected[key], self.sampler.kwargs[key] + ) + ) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + bound="multi", + sample="rwalk", + periodic=[], + reflective=[], + verbose=True, + check_point_delta_t=600, + nlive=1000, + first_update=None, + npdim=None, + rstate=None, + queue_size=1, + pool=None, + use_pool=None, + live_points=None, + logl_args=None, + logl_kwargs=None, + ptform_args=None, + ptform_kwargs=None, + enlarge=1.5, + bootstrap=None, + vol_dec=0.5, + vol_check=8.0, + facc=0.2, + slices=5, + dlogz=0.1, + maxiter=None, + maxcall=None, + logl_max=np.inf, + add_live=True, + print_progress=True, + save_bounds=False, + walks=100, + update_interval=600, + print_func="func", + n_effective=None, + maxmcmc=5000, + nact=5, + ) + + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["nlive"] + new_kwargs[equiv] = 1000 + self.sampler.kwargs = new_kwargs + self.sampler.kwargs[ + "print_func" + ] = "func" # set this manually as this is not testable otherwise + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_prior_boundary(self): + self.priors["a"] = bilby.core.prior.Prior(boundary="periodic") + self.priors["b"] = bilby.core.prior.Prior(boundary="reflective") + self.priors["c"] = bilby.core.prior.Prior(boundary=None) + self.priors["d"] = bilby.core.prior.Prior(boundary="reflective") + self.priors["e"] = bilby.core.prior.Prior(boundary="periodic") + self.sampler = bilby.core.sampler.Dynesty( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + self.assertEqual([0, 4], self.sampler.kwargs["periodic"]) + self.assertEqual(self.sampler._periodic, self.sampler.kwargs["periodic"]) + self.assertEqual([1, 3], self.sampler.kwargs["reflective"]) + self.assertEqual(self.sampler._reflective, self.sampler.kwargs["reflective"]) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/emcee_test.py b/test/core/sampler/emcee_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9a81d073f8c0e1086e43e0e50e55e4423e6fce49 --- /dev/null +++ b/test/core/sampler/emcee_test.py @@ -0,0 +1,76 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestEmcee(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Emcee( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + nwalkers=500, + a=2, + args=[], + kwargs={}, + postargs=None, + pool=None, + live_dangerously=False, + runtime_sortingfn=None, + lnprob0=None, + rstate0=None, + blobs0=None, + iterations=100, + thin=1, + storechain=True, + mh_proposal=None, + ) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + nwalkers=100, + a=2, + args=[], + kwargs={}, + postargs=None, + pool=None, + live_dangerously=False, + runtime_sortingfn=None, + lnprob0=None, + rstate0=None, + blobs0=None, + iterations=100, + thin=1, + storechain=True, + mh_proposal=None, + ) + for equiv in bilby.core.sampler.base_sampler.MCMCSampler.nwalkers_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["nwalkers"] + new_kwargs[equiv] = 100 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/fake_sampler_test.py b/test/core/sampler/fake_sampler_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9b4a926f802e562fb325c5744d9437ef8ea8fae8 --- /dev/null +++ b/test/core/sampler/fake_sampler_test.py @@ -0,0 +1,5 @@ +import unittest + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/kombine_test.py b/test/core/sampler/kombine_test.py new file mode 100644 index 0000000000000000000000000000000000000000..f4bdc80303f474c223ffae513fb5f4b05ff46dfe --- /dev/null +++ b/test/core/sampler/kombine_test.py @@ -0,0 +1,82 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestKombine(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Kombine( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + nwalkers=500, + args=[], + pool=None, + transd=False, + lnpost0=None, + blob0=None, + iterations=500, + storechain=True, + processes=1, + update_interval=None, + kde=None, + kde_size=None, + spaces=None, + freeze_transd=False, + test_steps=16, + critical_pval=0.05, + max_steps=None, + burnin_verbose=False, + ) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + nwalkers=400, + args=[], + pool=None, + transd=False, + lnpost0=None, + blob0=None, + iterations=500, + storechain=True, + processes=1, + update_interval=None, + kde=None, + kde_size=None, + spaces=None, + freeze_transd=False, + test_steps=16, + critical_pval=0.05, + max_steps=None, + burnin_verbose=False, + ) + for equiv in bilby.core.sampler.base_sampler.MCMCSampler.nwalkers_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["nwalkers"] + new_kwargs[equiv] = 400 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/nestle_test.py b/test/core/sampler/nestle_test.py new file mode 100644 index 0000000000000000000000000000000000000000..5be3ac8d8076d9e1704c358123ca44183155fa92 --- /dev/null +++ b/test/core/sampler/nestle_test.py @@ -0,0 +1,74 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestNestle(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Nestle( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + verbose=False, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + verbose=False, + method="multi", + npoints=500, + update_interval=None, + npdim=None, + maxiter=None, + maxcall=None, + dlogz=None, + decline_factor=None, + rstate=None, + callback=None, + steps=20, + enlarge=1.2, + ) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + verbose=False, + method="multi", + npoints=345, + update_interval=None, + npdim=None, + maxiter=None, + maxcall=None, + dlogz=None, + decline_factor=None, + rstate=None, + callback=None, + steps=20, + enlarge=1.2, + ) + self.sampler.kwargs["npoints"] = 123 + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["npoints"] + new_kwargs[equiv] = 345 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/polychord_test.py b/test/core/sampler/polychord_test.py new file mode 100644 index 0000000000000000000000000000000000000000..8427315ac49c3faeed40996463b678f7a530e885 --- /dev/null +++ b/test/core/sampler/polychord_test.py @@ -0,0 +1,103 @@ +import unittest + +import numpy as np +from mock import MagicMock + +import bilby + + +class TestPolyChord(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.PyPolyChord( + self.likelihood, + self.priors, + outdir="outdir", + label="polychord", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + use_polychord_defaults=False, + nlive=self.sampler.ndim * 25, + num_repeats=self.sampler.ndim * 5, + nprior=-1, + do_clustering=True, + feedback=1, + precision_criterion=0.001, + logzero=-1e30, + max_ndead=-1, + boost_posterior=0.0, + posteriors=True, + equals=True, + cluster_posteriors=True, + write_resume=True, + write_paramnames=False, + read_resume=True, + write_stats=True, + write_live=True, + write_dead=True, + write_prior=True, + compression_factor=np.exp(-1), + base_dir="outdir", + file_root="polychord", + seed=-1, + grade_dims=list([self.sampler.ndim]), + grade_frac=list([1.0] * len([self.sampler.ndim])), + nlives={}, + ) + self.sampler._setup_dynamic_defaults() + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + use_polychord_defaults=False, + nlive=123, + num_repeats=self.sampler.ndim * 5, + nprior=-1, + do_clustering=True, + feedback=1, + precision_criterion=0.001, + logzero=-1e30, + max_ndead=-1, + boost_posterior=0.0, + posteriors=True, + equals=True, + cluster_posteriors=True, + write_resume=True, + write_paramnames=False, + read_resume=True, + write_stats=True, + write_live=True, + write_dead=True, + write_prior=True, + compression_factor=np.exp(-1), + base_dir="outdir", + file_root="polychord", + seed=-1, + grade_dims=list([self.sampler.ndim]), + grade_frac=list([1.0] * len([self.sampler.ndim])), + nlives={}, + ) + self.sampler._setup_dynamic_defaults() + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["nlive"] + new_kwargs[equiv] = 123 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/proposal_test.py b/test/core/sampler/proposal_test.py similarity index 78% rename from test/proposal_test.py rename to test/core/sampler/proposal_test.py index 8af0df18511ff6d3b3d46c3da7d441f95468607b..6b1f5b7747cb6d2df0cce4b03dbf8f0d94afde63 100644 --- a/test/proposal_test.py +++ b/test/core/sampler/proposal_test.py @@ -4,7 +4,6 @@ import random import numpy as np -import bilby.gw.sampler.proposal from bilby.core import prior from bilby.core.sampler import proposal @@ -409,121 +408,5 @@ class TestEnsembleEigenVector(unittest.TestCase): self.assertAlmostEqual(expected[key], value) -class TestSkyLocationWanderJump(unittest.TestCase): - def setUp(self): - self.priors = prior.PriorDict( - dict( - ra=prior.Uniform(minimum=0.0, maximum=2 * np.pi, boundary="periodic"), - dec=prior.Uniform(minimum=0.0, maximum=np.pi, boundary="reflective"), - ) - ) - self.jump_proposal = bilby.gw.sampler.proposal.SkyLocationWanderJump( - priors=self.priors - ) - - def tearDown(self): - del self.priors - del self.jump_proposal - - def test_jump_proposal_call_without_inverse_temperature(self): - with mock.patch("random.gauss") as m: - m.return_value = 1 - sample = proposal.Sample(dict(ra=0.2, dec=-0.5)) - expected = proposal.Sample(dict(ra=1.2, dec=0.5)) - new_sample = self.jump_proposal(sample) - for key, value in new_sample.items(): - self.assertAlmostEqual(expected[key], value) - m.assert_called_with(0, 1.0 / 2 / np.pi) - - def test_jump_proposal_call_with_inverse_temperature(self): - with mock.patch("random.gauss") as m: - m.return_value = 1 - sample = proposal.Sample(dict(ra=0.2, dec=-0.5)) - expected = proposal.Sample(dict(ra=1.2, dec=0.5)) - new_sample = self.jump_proposal(sample, inverse_temperature=2.0) - for key, value in new_sample.items(): - self.assertAlmostEqual(expected[key], value) - m.assert_called_with(0, np.sqrt(1 / 2.0) / 2 / np.pi) - - -class TestCorrelatedPolarisationPhaseJump(unittest.TestCase): - def setUp(self): - self.priors = prior.PriorDict( - dict( - phase=prior.Uniform(minimum=0.0, maximum=2 * np.pi), - psi=prior.Uniform(minimum=0.0, maximum=np.pi), - ) - ) - self.jump_proposal = bilby.gw.sampler.proposal.CorrelatedPolarisationPhaseJump( - priors=self.priors - ) - - def tearDown(self): - del self.priors - del self.jump_proposal - - def test_jump_proposal_call_case_1(self): - with mock.patch("random.random") as m: - m.return_value = 0.3 - sample = proposal.Sample(dict(phase=0.2, psi=0.5)) - alpha = 3.0 * np.pi * 0.3 - beta = 0.3 - expected = proposal.Sample( - dict(phase=0.5 * (alpha - beta), psi=0.5 * (alpha + beta)) - ) - self.assertEqual(expected, self.jump_proposal(sample, coordinates=None)) - - def test_jump_proposal_call_case_2(self): - with mock.patch("random.random") as m: - m.return_value = 0.7 - sample = proposal.Sample(dict(phase=0.2, psi=0.5)) - alpha = 0.7 - beta = 3.0 * np.pi * 0.7 - 2 * np.pi - expected = proposal.Sample( - dict(phase=0.5 * (alpha - beta), psi=0.5 * (alpha + beta)) - ) - self.assertEqual(expected, self.jump_proposal(sample)) - - -class TestPolarisationPhaseJump(unittest.TestCase): - def setUp(self): - self.priors = prior.PriorDict( - dict( - phase=prior.Uniform(minimum=0.0, maximum=2 * np.pi), - psi=prior.Uniform(minimum=0.0, maximum=np.pi), - ) - ) - self.jump_proposal = bilby.gw.sampler.proposal.PolarisationPhaseJump( - priors=self.priors - ) - - def tearDown(self): - del self.priors - del self.jump_proposal - - def test_jump_proposal_call(self): - sample = proposal.Sample(dict(phase=0.2, psi=0.5)) - expected = proposal.Sample(dict(phase=0.2 + np.pi, psi=0.5 + np.pi / 2)) - self.assertEqual(expected, self.jump_proposal(sample)) - - -class TestDrawFlatPrior(unittest.TestCase): - def setUp(self): - self.priors = prior.PriorDict( - dict( - phase=prior.Uniform(minimum=0.0, maximum=2 * np.pi), - psi=prior.Cosine(minimum=0.0, maximum=np.pi), - ) - ) - self.jump_proposal = proposal.DrawFlatPrior(priors=self.priors) - - def tearDown(self): - del self.priors - del self.jump_proposal - - def test_jump_proposal_call(self): - with mock.patch("bilby.core.prior.Uniform.sample") as m: - m.return_value = 0.3 - sample = proposal.Sample(dict(phase=0.2, psi=0.5)) - expected = proposal.Sample(dict(phase=0.3, psi=0.3)) - self.assertEqual(expected, self.jump_proposal(sample)) +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/ptemcee_test.py b/test/core/sampler/ptemcee_test.py new file mode 100644 index 0000000000000000000000000000000000000000..70abcb0af21e3a9a55ca486a1c0c0981a66dc2f7 --- /dev/null +++ b/test/core/sampler/ptemcee_test.py @@ -0,0 +1,66 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestPTEmcee(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Ptemcee( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + ntemps=20, + nwalkers=200, + Tmax=None, + betas=None, + a=2.0, + adaptation_lag=10000, + adaptation_time=100, + random=None, + adapt=True, + swap_ratios=False, + ) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + ntemps=20, + nwalkers=200, + Tmax=None, + betas=None, + a=2.0, + adaptation_lag=10000, + adaptation_time=100, + random=None, + adapt=True, + swap_ratios=False, + ) + for equiv in bilby.core.sampler.base_sampler.MCMCSampler.nwalkers_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["nwalkers"] + new_kwargs[equiv] = 200 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/ptmcmc_test.py b/test/core/sampler/ptmcmc_test.py new file mode 100644 index 0000000000000000000000000000000000000000..9b4a926f802e562fb325c5744d9437ef8ea8fae8 --- /dev/null +++ b/test/core/sampler/ptmcmc_test.py @@ -0,0 +1,5 @@ +import unittest + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/pymc3_test.py b/test/core/sampler/pymc3_test.py new file mode 100644 index 0000000000000000000000000000000000000000..d8a28ad48b13d70e0c712ecc9066b5c2804fd0a0 --- /dev/null +++ b/test/core/sampler/pymc3_test.py @@ -0,0 +1,85 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestPyMC3(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.sampler = bilby.core.sampler.Pymc3( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict( + draws=500, + step=None, + init="auto", + n_init=200000, + start=None, + trace=None, + chain_idx=0, + chains=2, + cores=1, + tune=500, + progressbar=True, + model=None, + nuts_kwargs=None, + step_kwargs=None, + random_seed=None, + discard_tuned_samples=True, + compute_convergence_checks=True, + ) + expected.update(self.sampler.default_nuts_kwargs) + expected.update(self.sampler.default_step_kwargs) + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + draws=500, + step=None, + init="auto", + n_init=200000, + start=None, + trace=None, + chain_idx=0, + chains=2, + cores=1, + tune=500, + progressbar=True, + model=None, + nuts_kwargs=None, + step_kwargs=None, + random_seed=None, + discard_tuned_samples=True, + compute_convergence_checks=True, + ) + expected.update(self.sampler.default_nuts_kwargs) + expected.update(self.sampler.default_step_kwargs) + self.sampler.kwargs["draws"] = 123 + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["draws"] + new_kwargs[equiv] = 500 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/pymultinest_test.py b/test/core/sampler/pymultinest_test.py new file mode 100644 index 0000000000000000000000000000000000000000..41c3de4077e578e33bb6e65f9a19efade1cff424 --- /dev/null +++ b/test/core/sampler/pymultinest_test.py @@ -0,0 +1,72 @@ +import unittest + +from mock import MagicMock + +import bilby + + +class TestPymultinest(unittest.TestCase): + def setUp(self): + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) + ) + self.priors["a"] = bilby.core.prior.Prior(boundary="periodic") + self.priors["b"] = bilby.core.prior.Prior(boundary="reflective") + self.sampler = bilby.core.sampler.Pymultinest( + self.likelihood, + self.priors, + outdir="outdir", + label="label", + use_ratio=False, + plot=False, + skip_import_verification=True, + ) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + + def test_default_kwargs(self): + expected = dict(importance_nested_sampling=False, resume=True, + verbose=True, sampling_efficiency='parameter', + n_live_points=500, n_params=2, + n_clustering_params=None, wrapped_params=None, + multimodal=True, const_efficiency_mode=False, + evidence_tolerance=0.5, + n_iter_before_update=100, null_log_evidence=-1e90, + max_modes=100, mode_tolerance=-1e90, seed=-1, + context=0, write_output=True, log_zero=-1e100, + max_iter=0, init_MPI=False, dump_callback='dumper') + self.sampler.kwargs['dump_callback'] = 'dumper' # Check like the dynesty print_func + self.assertListEqual([1, 0], self.sampler.kwargs['wrapped_params']) # Check this separately + self.sampler.kwargs['wrapped_params'] = None # The dict comparison can't handle lists + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict(importance_nested_sampling=False, resume=True, + verbose=True, sampling_efficiency='parameter', + n_live_points=123, n_params=2, + n_clustering_params=None, wrapped_params=None, + multimodal=True, const_efficiency_mode=False, + evidence_tolerance=0.5, + n_iter_before_update=100, null_log_evidence=-1e90, + max_modes=100, mode_tolerance=-1e90, seed=-1, + context=0, write_output=True, log_zero=-1e100, + max_iter=0, init_MPI=False, dump_callback='dumper') + + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs["n_live_points"] + new_kwargs[ + "wrapped_params" + ] = None # The dict comparison can't handle lists + new_kwargs['dump_callback'] = 'dumper' # Check this like Dynesty print_func + new_kwargs[equiv] = 123 + self.sampler.kwargs = new_kwargs + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/sampler_run_test.py b/test/core/sampler/sampler_run_test.py new file mode 100644 index 0000000000000000000000000000000000000000..7173c0e2d58711c788e172fedbf9987dc57babbe --- /dev/null +++ b/test/core/sampler/sampler_run_test.py @@ -0,0 +1,165 @@ +from __future__ import absolute_import +import bilby +import unittest +import numpy as np +import shutil + + +class TestRunningSamplers(unittest.TestCase): + def setUp(self): + np.random.seed(42) + bilby.core.utils.command_line_args.bilby_test_mode = False + self.x = np.linspace(0, 1, 11) + self.model = lambda x, m, c: m * x + c + self.injection_parameters = dict(m=0.5, c=0.2) + self.sigma = 0.1 + self.y = self.model(self.x, **self.injection_parameters) + np.random.normal( + 0, self.sigma, len(self.x) + ) + self.likelihood = bilby.likelihood.GaussianLikelihood( + self.x, self.y, self.model, self.sigma + ) + + self.priors = bilby.core.prior.PriorDict() + self.priors["m"] = bilby.core.prior.Uniform(0, 5, boundary="reflective") + self.priors["c"] = bilby.core.prior.Uniform(-2, 2, boundary="reflective") + bilby.core.utils.check_directory_exists_and_if_not_mkdir("outdir") + + def tearDown(self): + del self.likelihood + del self.priors + bilby.core.utils.command_line_args.bilby_test_mode = False + shutil.rmtree("outdir") + + def test_run_cpnest(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="cpnest", + nlive=100, + save=False, + resume=False, + ) + + def test_run_dynesty(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="dynesty", + nlive=100, + save=False, + ) + + def test_run_dynamic_dynesty(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="dynamic_dynesty", + nlive_init=100, + nlive_batch=100, + dlogz_init=1.0, + maxbatch=0, + maxcall=100, + bound="single", + save=False, + ) + + def test_run_emcee(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="emcee", + iterations=1000, + nwalkers=10, + save=False, + ) + + def test_run_kombine(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="kombine", + iterations=1000, + nwalkers=100, + save=False, + autoburnin=True, + ) + + def test_run_nestle(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="nestle", + nlive=100, + save=False, + ) + + def test_run_pypolychord(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="pypolychord", + nlive=100, + save=False, + ) + + def test_run_ptemcee(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="ptemcee", + nsamples=100, + nwalkers=50, + burn_in_act=1, + ntemps=1, + frac_threshold=0.5, + save=False, + ) + + def test_run_pymc3(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="pymc3", + draws=50, + tune=50, + n_init=1000, + save=False, + ) + + def test_run_pymultinest(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="pymultinest", + nlive=100, + save=False, + ) + + def test_run_PTMCMCSampler(self): + _ = bilby.run_sampler( + likelihood=self.likelihood, + priors=self.priors, + sampler="PTMCMCsampler", + Niter=101, + burn=2, + isave=100, + save=False, + ) + + def test_run_ultranest(self): + # run using NestedSampler (with nlive specified) + _ = bilby.run_sampler( + likelihood=self.likelihood, priors=self.priors, + sampler="ultranest", nlive=100, save=False, + ) + + # run using ReactiveNestedSampler (with no nlive given) + _ = bilby.run_sampler( + likelihood=self.likelihood, priors=self.priors, + sampler='ultranest', save=False, + ) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/core/sampler/ultranest_test.py b/test/core/sampler/ultranest_test.py new file mode 100644 index 0000000000000000000000000000000000000000..76354e08281c379d28eda0abd9d18992220c4989 --- /dev/null +++ b/test/core/sampler/ultranest_test.py @@ -0,0 +1,106 @@ +import shutil +import unittest + +from mock import MagicMock + +import bilby + + +class TestUltranest(unittest.TestCase): + + def setUp(self): + self.maxDiff = None + self.likelihood = MagicMock() + self.priors = bilby.core.prior.PriorDict( + dict(a=bilby.core.prior.Uniform(0, 1), + b=bilby.core.prior.Uniform(0, 1))) + self.priors["a"] = bilby.core.prior.Prior(boundary="periodic") + self.priors["b"] = bilby.core.prior.Prior(boundary="reflective") + self.sampler = bilby.core.sampler.Ultranest(self.likelihood, self.priors, + outdir="outdir", label="label", + use_ratio=False, plot=False, + skip_import_verification=True) + + def tearDown(self): + del self.likelihood + del self.priors + del self.sampler + shutil.rmtree("outdir") + + def test_default_kwargs(self): + expected = dict( + resume=True, + show_status=True, + num_live_points=None, + wrapped_params=None, + derived_param_names=None, + run_num=None, + vectorized=False, + num_test_samples=2, + draw_multiple=True, + num_bootstraps=30, + update_interval_iter=None, + update_interval_ncall=None, + log_interval=None, + dlogz=None, + max_iters=None, + update_interval_iter_fraction=0.2, + viz_callback=None, + dKL=0.5, + frac_remain=0.01, + Lepsilon=0.001, + min_ess=400, + max_ncalls=None, + max_num_improvement_loops=-1, + min_num_live_points=400, + cluster_num_live_points=40, + step_sampler=None, + ) + self.assertListEqual([1, 0], self.sampler.kwargs["wrapped_params"]) # Check this separately + self.sampler.kwargs["wrapped_params"] = None # The dict comparison can't handle lists + self.sampler.kwargs["derived_param_names"] = None + self.sampler.kwargs["viz_callback"] = None + self.assertDictEqual(expected, self.sampler.kwargs) + + def test_translate_kwargs(self): + expected = dict( + resume=True, + show_status=True, + num_live_points=123, + wrapped_params=None, + derived_param_names=None, + run_num=None, + vectorized=False, + num_test_samples=2, + draw_multiple=True, + num_bootstraps=30, + update_interval_iter=None, + update_interval_ncall=None, + log_interval=None, + dlogz=None, + max_iters=None, + update_interval_iter_fraction=0.2, + viz_callback=None, + dKL=0.5, + frac_remain=0.01, + Lepsilon=0.001, + min_ess=400, + max_ncalls=None, + max_num_improvement_loops=-1, + min_num_live_points=400, + cluster_num_live_points=40, + step_sampler=None, + ) + for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: + new_kwargs = self.sampler.kwargs.copy() + del new_kwargs['num_live_points'] + new_kwargs[equiv] = 123 + self.sampler.kwargs = new_kwargs + self.sampler.kwargs["wrapped_params"] = None + self.sampler.kwargs["derived_param_names"] = None + self.sampler.kwargs["viz_callback"] = None + self.assertDictEqual(expected, self.sampler.kwargs) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/series_test.py b/test/core/series_test.py similarity index 100% rename from test/series_test.py rename to test/core/series_test.py diff --git a/test/utils_test.py b/test/core/utils_test.py similarity index 100% rename from test/utils_test.py rename to test/core/utils_test.py diff --git a/test/detector_test.py b/test/detector_test.py deleted file mode 100644 index 7f8b0512a854faf8ae58a0a3731bd740b985c616..0000000000000000000000000000000000000000 --- a/test/detector_test.py +++ /dev/null @@ -1,1709 +0,0 @@ -from __future__ import absolute_import - -import bilby -import unittest -import mock -from mock import MagicMock -from mock import patch -import numpy as np -import scipy.signal.windows -import os -import sys -from shutil import rmtree -import logging -import deepdish as dd - - -class TestInterferometerGeometry(unittest.TestCase): - def setUp(self): - self.length = 30 - self.latitude = 1 - self.longitude = 2 - self.elevation = 3 - self.xarm_azimuth = 4 - self.yarm_azimuth = 5 - self.xarm_tilt = 0.0 - self.yarm_tilt = 0.0 - self.geometry = bilby.gw.detector.InterferometerGeometry( - length=self.length, - latitude=self.latitude, - longitude=self.longitude, - elevation=self.elevation, - xarm_azimuth=self.xarm_azimuth, - yarm_azimuth=self.yarm_azimuth, - xarm_tilt=self.xarm_tilt, - yarm_tilt=self.yarm_tilt, - ) - - def tearDown(self): - del self.length - del self.latitude - del self.longitude - del self.elevation - del self.xarm_azimuth - del self.yarm_azimuth - del self.xarm_tilt - del self.yarm_tilt - del self.geometry - - def test_length_setting(self): - self.assertEqual(self.geometry.length, self.length) - - def test_latitude_setting(self): - self.assertEqual(self.geometry.latitude, self.latitude) - - def test_longitude_setting(self): - self.assertEqual(self.geometry.longitude, self.longitude) - - def test_elevation_setting(self): - self.assertEqual(self.geometry.elevation, self.elevation) - - def test_xarm_azi_setting(self): - self.assertEqual(self.geometry.xarm_azimuth, self.xarm_azimuth) - - def test_yarm_azi_setting(self): - self.assertEqual(self.geometry.yarm_azimuth, self.yarm_azimuth) - - def test_xarm_tilt_setting(self): - self.assertEqual(self.geometry.xarm_tilt, self.xarm_tilt) - - def test_yarm_tilt_setting(self): - self.assertEqual(self.geometry.yarm_tilt, self.yarm_tilt) - - def test_vertex_without_update(self): - _ = self.geometry.vertex - with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: - m.return_value = np.array([1]) - self.assertFalse(np.array_equal(self.geometry.vertex, np.array([1]))) - - def test_vertex_with_latitude_update(self): - with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: - m.return_value = np.array([1]) - self.geometry.latitude = 5 - self.assertEqual(self.geometry.vertex, np.array([1])) - - def test_vertex_with_longitude_update(self): - with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: - m.return_value = np.array([1]) - self.geometry.longitude = 5 - self.assertEqual(self.geometry.vertex, np.array([1])) - - def test_vertex_with_elevation_update(self): - with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: - m.return_value = np.array([1]) - self.geometry.elevation = 5 - self.assertEqual(self.geometry.vertex, np.array([1])) - - def test_x_without_update(self): - _ = self.geometry.x - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - - self.assertFalse(np.array_equal(self.geometry.x, np.array([1]))) - - def test_x_with_xarm_tilt_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.xarm_tilt = 0 - self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) - - def test_x_with_xarm_azimuth_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.xarm_azimuth = 0 - self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) - - def test_x_with_longitude_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.longitude = 0 - self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) - - def test_x_with_latitude_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.latitude = 0 - self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) - - def test_y_without_update(self): - _ = self.geometry.y - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - - self.assertFalse(np.array_equal(self.geometry.y, np.array([1]))) - - def test_y_with_yarm_tilt_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.yarm_tilt = 0 - self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) - - def test_y_with_yarm_azimuth_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.yarm_azimuth = 0 - self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) - - def test_y_with_longitude_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.longitude = 0 - self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) - - def test_y_with_latitude_update(self): - self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) - self.geometry.latitude = 0 - self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) - - def test_detector_tensor_without_update(self): - _ = self.geometry.detector_tensor - with mock.patch("numpy.einsum") as m: - m.return_value = 1 - expected = np.array( - [ - [-9.24529394e-06, 1.02425803e-04, 3.24550668e-04], - [1.02425803e-04, 1.37390844e-03, -8.61137566e-03], - [3.24550668e-04, -8.61137566e-03, -1.36466315e-03], - ] - ) - self.assertTrue(np.allclose(expected, self.geometry.detector_tensor)) - - def test_detector_tensor_with_x_azimuth_update(self): - _ = self.geometry.detector_tensor - with mock.patch("numpy.einsum") as m: - m.return_value = 1 - self.geometry.xarm_azimuth = 1 - self.assertEqual(0, self.geometry.detector_tensor) - - def test_detector_tensor_with_y_azimuth_update(self): - _ = self.geometry.detector_tensor - with mock.patch("numpy.einsum") as m: - m.return_value = 1 - self.geometry.yarm_azimuth = 1 - self.assertEqual(0, self.geometry.detector_tensor) - - def test_detector_tensor_with_x_tilt_update(self): - _ = self.geometry.detector_tensor - with mock.patch("numpy.einsum") as m: - m.return_value = 1 - self.geometry.xarm_tilt = 1 - self.assertEqual(0, self.geometry.detector_tensor) - - def test_detector_tensor_with_y_tilt_update(self): - _ = self.geometry.detector_tensor - with mock.patch("numpy.einsum") as m: - m.return_value = 1 - self.geometry.yarm_tilt = 1 - self.assertEqual(0, self.geometry.detector_tensor) - - def test_detector_tensor_with_longitude_update(self): - with mock.patch("numpy.einsum") as m: - m.return_value = 1 - self.geometry.longitude = 1 - self.assertEqual(0, self.geometry.detector_tensor) - - def test_detector_tensor_with_latitude_update(self): - with mock.patch("numpy.einsum") as m: - _ = self.geometry.detector_tensor - m.return_value = 1 - self.geometry.latitude = 1 - self.assertEqual(self.geometry.detector_tensor, 0) - - def test_unit_vector_along_arm_default(self): - with self.assertRaises(ValueError): - self.geometry.unit_vector_along_arm("z") - - def test_unit_vector_along_arm_x(self): - with mock.patch("numpy.array") as m: - m.return_value = 1 - self.geometry.xarm_tilt = 0 - self.geometry.xarm_azimuth = 0 - self.geometry.yarm_tilt = 0 - self.geometry.yarm_azimuth = 90 - self.assertAlmostEqual(self.geometry.unit_vector_along_arm("x"), 1) - - def test_unit_vector_along_arm_y(self): - with mock.patch("numpy.array") as m: - m.return_value = 1 - self.geometry.xarm_tilt = 0 - self.geometry.xarm_azimuth = 90 - self.geometry.yarm_tilt = 0 - self.geometry.yarm_azimuth = 180 - self.assertAlmostEqual(self.geometry.unit_vector_along_arm("y"), -1) - - def test_repr(self): - expected = ( - "InterferometerGeometry(length={}, latitude={}, longitude={}, elevation={}, xarm_azimuth={}, " - "yarm_azimuth={}, xarm_tilt={}, yarm_tilt={})".format( - float(self.length), - float(self.latitude), - float(self.longitude), - float(self.elevation), - float(self.xarm_azimuth), - float(self.yarm_azimuth), - float(self.xarm_tilt), - float(self.yarm_tilt), - ) - ) - self.assertEqual(expected, repr(self.geometry)) - - -class TestInterferometer(unittest.TestCase): - def setUp(self): - self.name = "name" - self.power_spectral_density = ( - bilby.gw.detector.PowerSpectralDensity.from_aligo() - ) - self.minimum_frequency = 10 - self.maximum_frequency = 20 - self.length = 30 - self.latitude = 1 - self.longitude = 2 - self.elevation = 3 - self.xarm_azimuth = 4 - self.yarm_azimuth = 5 - self.xarm_tilt = 0.0 - self.yarm_tilt = 0.0 - # noinspection PyTypeChecker - self.ifo = bilby.gw.detector.Interferometer( - name=self.name, - power_spectral_density=self.power_spectral_density, - minimum_frequency=self.minimum_frequency, - maximum_frequency=self.maximum_frequency, - length=self.length, - latitude=self.latitude, - longitude=self.longitude, - elevation=self.elevation, - xarm_azimuth=self.xarm_azimuth, - yarm_azimuth=self.yarm_azimuth, - xarm_tilt=self.xarm_tilt, - yarm_tilt=self.yarm_tilt, - ) - self.ifo.strain_data.set_from_frequency_domain_strain( - np.linspace(0, 4096, 4097), sampling_frequency=4096, duration=2 - ) - self.outdir = "outdir" - - self.injection_polarizations = dict() - np.random.seed(42) - self.injection_polarizations["plus"] = np.random.random(4097) - self.injection_polarizations["cross"] = np.random.random(4097) - - self.waveform_generator = MagicMock() - self.wg_polarizations = dict( - plus=np.random.random(4097), cross=np.random.random(4097) - ) - self.waveform_generator.frequency_domain_strain = ( - lambda _: self.wg_polarizations - ) - self.parameters = dict(ra=0.0, dec=0.0, geocent_time=0.0, psi=0.0) - - bilby.core.utils.check_directory_exists_and_if_not_mkdir(self.outdir) - - def tearDown(self): - del self.name - del self.power_spectral_density - del self.minimum_frequency - del self.maximum_frequency - del self.length - del self.latitude - del self.longitude - del self.elevation - del self.xarm_azimuth - del self.yarm_azimuth - del self.xarm_tilt - del self.yarm_tilt - del self.ifo - del self.injection_polarizations - del self.wg_polarizations - del self.waveform_generator - del self.parameters - rmtree(self.outdir) - - def test_name_setting(self): - self.assertEqual(self.ifo.name, self.name) - - def test_psd_setting(self): - self.assertEqual(self.ifo.power_spectral_density, self.power_spectral_density) - - def test_min_freq_setting(self): - self.assertEqual(self.ifo.strain_data.minimum_frequency, self.minimum_frequency) - - def test_max_freq_setting(self): - self.assertEqual(self.ifo.strain_data.maximum_frequency, self.maximum_frequency) - - def test_antenna_response_default(self): - with mock.patch("bilby.gw.utils.get_polarization_tensor") as m: - with mock.patch("numpy.einsum") as n: - m.return_value = 0 - n.return_value = 1 - self.assertEqual(self.ifo.antenna_response(234, 52, 54, 76, "plus"), 1) - - def test_antenna_response_einsum(self): - with mock.patch("bilby.gw.utils.get_polarization_tensor") as m: - m.return_value = np.ones((3, 3)) - self.assertAlmostEqual( - self.ifo.antenna_response(234, 52, 54, 76, "plus"), - self.ifo.detector_tensor.sum(), - ) - - def test_get_detector_response_default_behaviour(self): - self.ifo.antenna_response = MagicMock(return_value=1) - self.ifo.time_delay_from_geocenter = MagicMock(return_value=0) - self.ifo.epoch = 0 - self.minimum_frequency = 10 - self.maximum_frequency = 20 - # self.ifo.frequency_array = np.array([8, 12, 16, 20, 24]) - plus = np.linspace(0, 4096, 4097) - response = self.ifo.get_detector_response( - waveform_polarizations=dict(plus=plus), - parameters=dict(ra=0, dec=0, geocent_time=0, psi=0), - ) - self.assertTrue( - np.array_equal(response, plus * self.ifo.frequency_mask * np.exp(-0j)) - ) - - def test_get_detector_response_with_dt(self): - self.ifo.antenna_response = MagicMock(return_value=1) - self.ifo.time_delay_from_geocenter = MagicMock(return_value=0) - self.ifo.epoch = 1 - self.minimum_frequency = 10 - self.maximum_frequency = 20 - plus = np.linspace(0, 4096, 4097) - response = self.ifo.get_detector_response( - waveform_polarizations=dict(plus=plus), - parameters=dict(ra=0, dec=0, geocent_time=0, psi=0), - ) - expected_response = ( - plus - * self.ifo.frequency_mask - * np.exp(-1j * 2 * np.pi * self.ifo.frequency_array) - ) - self.assertTrue(np.allclose(abs(expected_response), abs(response))) - - def test_get_detector_response_multiple_modes(self): - self.ifo.antenna_response = MagicMock(return_value=1) - self.ifo.time_delay_from_geocenter = MagicMock(return_value=0) - self.ifo.epoch = 0 - self.minimum_frequency = 10 - self.maximum_frequency = 20 - plus = np.linspace(0, 4096, 4097) - cross = np.linspace(0, 4096, 4097) - response = self.ifo.get_detector_response( - waveform_polarizations=dict(plus=plus, cross=cross), - parameters=dict(ra=0, dec=0, geocent_time=0, psi=0), - ) - self.assertTrue( - np.array_equal( - response, (plus + cross) * self.ifo.frequency_mask * np.exp(-0j) - ) - ) - - def test_inject_signal_from_waveform_polarizations_correct_injection(self): - original_strain = self.ifo.strain_data.frequency_domain_strain - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - self.ifo.inject_signal_from_waveform_polarizations( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - expected = ( - self.injection_polarizations["plus"] - + self.injection_polarizations["cross"] - + original_strain - ) - self.assertTrue( - np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain) - ) - - def test_inject_signal_from_waveform_polarizations_update_time_domain_strain(self): - original_td_strain = self.ifo.strain_data.time_domain_strain - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - self.ifo.inject_signal_from_waveform_polarizations( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - self.assertFalse( - np.array_equal(original_td_strain, self.ifo.strain_data.time_domain_strain) - ) - - def test_inject_signal_from_waveform_polarizations_meta_data(self): - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - self.ifo.inject_signal_from_waveform_polarizations( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - signal_ifo_expected = ( - self.injection_polarizations["plus"] + self.injection_polarizations["cross"] - ) - self.assertAlmostEqual( - self.ifo.optimal_snr_squared(signal=signal_ifo_expected).real, - self.ifo.meta_data["optimal_SNR"] ** 2, - 10, - ) - self.assertAlmostEqual( - self.ifo.matched_filter_snr(signal=signal_ifo_expected), - self.ifo.meta_data["matched_filter_SNR"], - 10, - ) - self.assertDictEqual(self.parameters, self.ifo.meta_data["parameters"]) - - def test_inject_signal_from_waveform_polarizations_incorrect_length(self): - self.injection_polarizations["plus"] = np.random.random(1000) - self.injection_polarizations["cross"] = np.random.random(1000) - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - with self.assertRaises(ValueError): - self.ifo.inject_signal_from_waveform_polarizations( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - - @patch.object(bilby.core.utils.logger, "warning") - def test_inject_signal_outside_segment_logs_warning(self, m): - self.parameters["geocent_time"] = 24345.0 - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - self.ifo.inject_signal_from_waveform_polarizations( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - self.assertTrue(m.called) - - def test_inject_signal_from_waveform_generator_correct_return_value(self): - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - returned_polarizations = self.ifo.inject_signal_from_waveform_generator( - parameters=self.parameters, waveform_generator=self.waveform_generator - ) - self.assertTrue( - np.array_equal( - self.wg_polarizations["plus"], returned_polarizations["plus"] - ) - ) - self.assertTrue( - np.array_equal( - self.wg_polarizations["cross"], returned_polarizations["cross"] - ) - ) - - @patch.object( - bilby.gw.detector.Interferometer, "inject_signal_from_waveform_generator" - ) - def test_inject_signal_with_waveform_generator_correct_call(self, m): - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - _ = self.ifo.inject_signal( - parameters=self.parameters, waveform_generator=self.waveform_generator - ) - m.assert_called_with( - parameters=self.parameters, waveform_generator=self.waveform_generator - ) - - def test_inject_signal_from_waveform_generator_correct_injection(self): - original_strain = self.ifo.strain_data.frequency_domain_strain - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - injection_polarizations = self.ifo.inject_signal_from_waveform_generator( - parameters=self.parameters, waveform_generator=self.waveform_generator - ) - expected = ( - injection_polarizations["plus"] - + injection_polarizations["cross"] - + original_strain - ) - self.assertTrue( - np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain) - ) - - def test_inject_signal_with_injection_polarizations(self): - original_strain = self.ifo.strain_data.frequency_domain_strain - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - self.ifo.inject_signal( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - expected = ( - self.injection_polarizations["plus"] - + self.injection_polarizations["cross"] - + original_strain - ) - self.assertTrue( - np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain) - ) - - @patch.object( - bilby.gw.detector.Interferometer, "inject_signal_from_waveform_polarizations" - ) - def test_inject_signal_with_injection_polarizations_and_waveform_generator(self, m): - self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] - _ = self.ifo.inject_signal( - parameters=self.parameters, - waveform_generator=self.waveform_generator, - injection_polarizations=self.injection_polarizations, - ) - m.assert_called_with( - parameters=self.parameters, - injection_polarizations=self.injection_polarizations, - ) - with self.assertRaises(ValueError): - m.assert_called_with( - parameters=self.parameters, - injection_polarizations=self.wg_polarizations, - ) - - def test_inject_signal_raises_value_error(self): - with self.assertRaises(ValueError): - self.ifo.inject_signal(injection_polarizations=None, parameters=None) - - def test_time_delay_from_geocenter(self): - with mock.patch("bilby.gw.utils.time_delay_geocentric") as m: - m.return_value = 1 - self.assertEqual(self.ifo.time_delay_from_geocenter(1, 2, 3), 1) - - def test_vertex_position_geocentric(self): - with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: - m.return_value = 1 - self.assertEqual(self.ifo.vertex_position_geocentric(), 1) - - def test_optimal_snr_squared(self): - """ - Merely checks parameters are given in the right order and the frequency - mask is applied. - """ - with mock.patch("bilby.gw.utils.noise_weighted_inner_product") as m: - m.side_effect = lambda a, b, c, d: [a, b, c, d] - signal = np.ones_like(self.ifo.power_spectral_density_array) - mask = self.ifo.frequency_mask - expected = [ - signal[mask], - signal[mask], - self.ifo.power_spectral_density_array[mask], - self.ifo.strain_data.duration, - ] - actual = self.ifo.optimal_snr_squared(signal=signal) - self.assertTrue(np.array_equal(expected[0], actual[0])) - self.assertTrue(np.array_equal(expected[1], actual[1])) - self.assertTrue(np.array_equal(expected[2], actual[2])) - self.assertEqual(expected[3], actual[3]) - - def test_repr(self): - expected = ( - "Interferometer(name='{}', power_spectral_density={}, minimum_frequency={}, " - "maximum_frequency={}, length={}, latitude={}, longitude={}, elevation={}, xarm_azimuth={}, " - "yarm_azimuth={}, xarm_tilt={}, yarm_tilt={})".format( - self.name, - self.power_spectral_density, - float(self.minimum_frequency), - float(self.maximum_frequency), - float(self.length), - float(self.latitude), - float(self.longitude), - float(self.elevation), - float(self.xarm_azimuth), - float(self.yarm_azimuth), - float(self.xarm_tilt), - float(self.yarm_tilt), - ) - ) - self.assertEqual(expected, repr(self.ifo)) - - def test_to_and_from_hdf5_loading(self): - if sys.version_info[0] < 3: - with self.assertRaises(NotImplementedError): - self.ifo.to_hdf5(outdir="outdir", label="test") - else: - self.ifo.to_hdf5(outdir="outdir", label="test") - filename = self.ifo._hdf5_filename_from_outdir_label( - outdir="outdir", label="test" - ) - recovered_ifo = bilby.gw.detector.Interferometer.from_hdf5(filename) - self.assertEqual(self.ifo, recovered_ifo) - - def test_to_and_from_hdf5_wrong_class(self): - if sys.version_info[0] < 3: - pass - else: - bilby.core.utils.check_directory_exists_and_if_not_mkdir("outdir") - dd.io.save("./outdir/psd.h5", self.power_spectral_density) - filename = self.ifo._hdf5_filename_from_outdir_label( - outdir="outdir", label="psd" - ) - with self.assertRaises(TypeError): - bilby.gw.detector.Interferometer.from_hdf5(filename) - - -class TestInterferometerEquals(unittest.TestCase): - def setUp(self): - self.name = "name" - self.power_spectral_density_1 = ( - bilby.gw.detector.PowerSpectralDensity.from_aligo() - ) - self.power_spectral_density_2 = ( - bilby.gw.detector.PowerSpectralDensity.from_aligo() - ) - self.minimum_frequency = 10 - self.maximum_frequency = 20 - self.length = 30 - self.latitude = 1 - self.longitude = 2 - self.elevation = 3 - self.xarm_azimuth = 4 - self.yarm_azimuth = 5 - self.xarm_tilt = 0.0 - self.yarm_tilt = 0.0 - # noinspection PyTypeChecker - self.duration = 1 - self.sampling_frequency = 200 - self.frequency_array = bilby.utils.create_frequency_series( - sampling_frequency=self.sampling_frequency, duration=self.duration - ) - self.strain = self.frequency_array - self.ifo_1 = bilby.gw.detector.Interferometer( - name=self.name, - power_spectral_density=self.power_spectral_density_1, - minimum_frequency=self.minimum_frequency, - maximum_frequency=self.maximum_frequency, - length=self.length, - latitude=self.latitude, - longitude=self.longitude, - elevation=self.elevation, - xarm_azimuth=self.xarm_azimuth, - yarm_azimuth=self.yarm_azimuth, - xarm_tilt=self.xarm_tilt, - yarm_tilt=self.yarm_tilt, - ) - self.ifo_2 = bilby.gw.detector.Interferometer( - name=self.name, - power_spectral_density=self.power_spectral_density_2, - minimum_frequency=self.minimum_frequency, - maximum_frequency=self.maximum_frequency, - length=self.length, - latitude=self.latitude, - longitude=self.longitude, - elevation=self.elevation, - xarm_azimuth=self.xarm_azimuth, - yarm_azimuth=self.yarm_azimuth, - xarm_tilt=self.xarm_tilt, - yarm_tilt=self.yarm_tilt, - ) - self.ifo_1.set_strain_data_from_frequency_domain_strain( - frequency_array=self.frequency_array, frequency_domain_strain=self.strain - ) - self.ifo_2.set_strain_data_from_frequency_domain_strain( - frequency_array=self.frequency_array, frequency_domain_strain=self.strain - ) - - def tearDown(self): - del self.name - del self.power_spectral_density_1 - del self.power_spectral_density_2 - del self.minimum_frequency - del self.maximum_frequency - del self.length - del self.latitude - del self.longitude - del self.elevation - del self.xarm_azimuth - del self.yarm_azimuth - del self.xarm_tilt - del self.yarm_tilt - del self.ifo_1 - del self.ifo_2 - del self.sampling_frequency - del self.duration - del self.frequency_array - del self.strain - - def test_eq_true(self): - self.assertEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_psd(self): - self.ifo_1.power_spectral_density.psd_array[0] = 1234 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_minimum_frequency(self): - self.ifo_1.minimum_frequency -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_maximum_frequency(self): - self.ifo_1.minimum_frequency -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_length(self): - self.ifo_1.length -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_latitude(self): - self.ifo_1.latitude -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_longitude(self): - self.ifo_1.longitude -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_elevation(self): - self.ifo_1.elevation -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_xarm_azimuth(self): - self.ifo_1.xarm_azimuth -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_xarmtilt(self): - self.ifo_1.xarm_tilt -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_yarm_azimuth(self): - self.ifo_1.yarm_azimuth -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_yarm_tilt(self): - self.ifo_1.yarm_tilt -= 1 - self.assertNotEqual(self.ifo_1, self.ifo_2) - - def test_eq_false_different_ifo_strain_data(self): - self.strain = bilby.utils.create_frequency_series( - sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 - ) - self.ifo_1.set_strain_data_from_frequency_domain_strain( - frequency_array=self.frequency_array, frequency_domain_strain=self.strain - ) - self.assertNotEqual(self.ifo_1, self.ifo_2) - - -class TestInterferometerStrainData(unittest.TestCase): - def setUp(self): - self.minimum_frequency = 10 - self.maximum_frequency = 20 - self.ifosd = bilby.gw.detector.InterferometerStrainData( - minimum_frequency=self.minimum_frequency, - maximum_frequency=self.maximum_frequency, - ) - - def tearDown(self): - del self.minimum_frequency - del self.maximum_frequency - del self.ifosd - - def test_frequency_mask(self): - self.minimum_frequency = 10 - self.maximum_frequency = 20 - with mock.patch("bilby.core.utils.create_frequency_series") as m: - m.return_value = np.array([5, 15, 25]) - self.ifosd.set_from_frequency_domain_strain( - frequency_domain_strain=np.array([0, 1, 2]), - frequency_array=np.array([5, 15, 25]), - ) - self.assertTrue( - np.array_equal(self.ifosd.frequency_mask, [False, True, False]) - ) - - def test_set_data_fails(self): - with mock.patch("bilby.core.utils.create_frequency_series") as m: - m.return_value = [1, 2, 3] - with self.assertRaises(ValueError): - self.ifosd.set_from_frequency_domain_strain( - frequency_domain_strain=np.array([0, 1, 2]) - ) - - def test_set_data_fails_too_much(self): - with mock.patch("bilby.core.utils.create_frequency_series") as m: - m.return_value = [1, 2, 3] - with self.assertRaises(ValueError): - self.ifosd.set_from_frequency_domain_strain( - frequency_domain_strain=np.array([0, 1, 2]), - frequency_array=np.array([1, 2, 3]), - duration=3, - sampling_frequency=1, - ) - - def test_start_time_init(self): - with mock.patch("bilby.core.utils.create_frequency_series") as m: - m.return_value = [1, 2, 3] - duration = 3 - sampling_frequency = 1 - self.ifosd.set_from_frequency_domain_strain( - frequency_domain_strain=np.array([0, 1, 2]), - duration=duration, - sampling_frequency=sampling_frequency, - ) - self.assertTrue(self.ifosd.start_time == 0) - - def test_start_time_set(self): - with mock.patch("bilby.core.utils.create_frequency_series") as m: - m.return_value = [1, 2, 3] - duration = 3 - sampling_frequency = 1 - self.ifosd.set_from_frequency_domain_strain( - frequency_domain_strain=np.array([0, 1, 2]), - duration=duration, - sampling_frequency=sampling_frequency, - start_time=10, - ) - self.assertTrue(self.ifosd.start_time == 10) - - def test_time_array_frequency_array_consistency(self): - duration = 1 - sampling_frequency = 10 - time_array = bilby.core.utils.create_time_series( - sampling_frequency=sampling_frequency, duration=duration - ) - time_domain_strain = np.random.normal( - 0, duration - 1 / sampling_frequency, len(time_array) - ) - self.ifosd.roll_off = 0 - self.ifosd.set_from_time_domain_strain( - time_domain_strain=time_domain_strain, - duration=duration, - sampling_frequency=sampling_frequency, - ) - - frequency_domain_strain, freqs = bilby.core.utils.nfft( - time_domain_strain, sampling_frequency - ) - - self.assertTrue( - np.all( - self.ifosd.frequency_domain_strain - == frequency_domain_strain * self.ifosd.frequency_mask - ) - ) - - def test_time_within_data_before(self): - self.ifosd.start_time = 3 - self.ifosd.duration = 2 - self.assertFalse(self.ifosd.time_within_data(2)) - - def test_time_within_data_during(self): - self.ifosd.start_time = 3 - self.ifosd.duration = 2 - self.assertTrue(self.ifosd.time_within_data(3)) - self.assertTrue(self.ifosd.time_within_data(4)) - self.assertTrue(self.ifosd.time_within_data(5)) - - def test_time_within_data_after(self): - self.ifosd.start_time = 3 - self.ifosd.duration = 2 - self.assertFalse(self.ifosd.time_within_data(6)) - - def test_time_domain_window_no_roll_off_no_alpha(self): - self.ifosd._time_domain_strain = np.array([3]) - self.ifosd.duration = 5 - self.ifosd.roll_off = 2 - expected_window = scipy.signal.windows.tukey( - len(self.ifosd._time_domain_strain), alpha=self.ifosd.alpha - ) - self.assertEqual(expected_window, self.ifosd.time_domain_window()) - self.assertEqual(np.mean(expected_window ** 2), self.ifosd.window_factor) - - def test_time_domain_window_sets_roll_off_directly(self): - self.ifosd._time_domain_strain = np.array([3]) - self.ifosd.duration = 5 - self.ifosd.roll_off = 2 - expected_roll_off = 6 - self.ifosd.time_domain_window(roll_off=expected_roll_off) - self.assertEqual(expected_roll_off, self.ifosd.roll_off) - - def test_time_domain_window_sets_roll_off_indirectly(self): - self.ifosd._time_domain_strain = np.array([3]) - self.ifosd.duration = 5 - self.ifosd.roll_off = 2 - alpha = 4 - expected_roll_off = alpha * self.ifosd.duration / 2 - self.ifosd.time_domain_window(alpha=alpha) - self.assertEqual(expected_roll_off, self.ifosd.roll_off) - - def test_time_domain_strain_when_set(self): - expected_strain = 5 - self.ifosd._time_domain_strain = expected_strain - self.assertEqual(expected_strain, self.ifosd.time_domain_strain) - - @patch("bilby.core.utils.infft") - def test_time_domain_strain_from_frequency_domain_strain(self, m): - m.return_value = 5 - self.ifosd.sampling_frequency = 200 - self.ifosd.duration = 4 - self.ifosd.sampling_frequency = 123 - self.ifosd.frequency_domain_strain = self.ifosd.frequency_array - self.assertEqual(m.return_value, self.ifosd.time_domain_strain) - - def test_time_domain_strain_not_set(self): - self.ifosd._time_domain_strain = None - self.ifosd._frequency_domain_strain = None - with self.assertRaises(ValueError): - _ = self.ifosd.time_domain_strain - - def test_frequency_domain_strain_when_set(self): - self.ifosd.sampling_frequency = 200 - self.ifosd.duration = 4 - expected_strain = self.ifosd.frequency_array * self.ifosd.frequency_mask - self.ifosd._frequency_domain_strain = expected_strain - self.assertTrue( - np.array_equal(expected_strain, self.ifosd.frequency_domain_strain) - ) - - @patch("bilby.core.utils.nfft") - def test_frequency_domain_strain_from_frequency_domain_strain(self, m): - self.ifosd.start_time = 0 - self.ifosd.duration = 4 - self.ifosd.sampling_frequency = 200 - m.return_value = self.ifosd.frequency_array, self.ifosd.frequency_array - self.ifosd._time_domain_strain = self.ifosd.time_array - self.assertTrue( - np.array_equal( - self.ifosd.frequency_array * self.ifosd.frequency_mask, - self.ifosd.frequency_domain_strain, - ) - ) - - def test_frequency_domain_strain_not_set(self): - self.ifosd._time_domain_strain = None - self.ifosd._frequency_domain_strain = None - with self.assertRaises(ValueError): - _ = self.ifosd.frequency_domain_strain - - def test_set_frequency_domain_strain(self): - self.ifosd.duration = 4 - self.ifosd.sampling_frequency = 200 - self.ifosd.frequency_domain_strain = np.ones(len(self.ifosd.frequency_array)) - self.assertTrue( - np.array_equal( - np.ones(len(self.ifosd.frequency_array)), - self.ifosd._frequency_domain_strain, - ) - ) - - def test_set_frequency_domain_strain_wrong_length(self): - self.ifosd.duration = 4 - self.ifosd.sampling_frequency = 200 - with self.assertRaises(ValueError): - self.ifosd.frequency_domain_strain = np.array([1]) - - -class TestInterferometerStrainDataEquals(unittest.TestCase): - def setUp(self): - self.minimum_frequency = 10 - self.maximum_frequency = 20 - self.roll_off = 0.2 - self.sampling_frequency = 100 - self.duration = 2 - self.frequency_array = bilby.utils.create_frequency_series( - sampling_frequency=self.sampling_frequency, duration=self.duration - ) - self.strain = self.frequency_array - self.ifosd_1 = bilby.gw.detector.InterferometerStrainData( - minimum_frequency=self.minimum_frequency, - maximum_frequency=self.maximum_frequency, - roll_off=self.roll_off, - ) - self.ifosd_2 = bilby.gw.detector.InterferometerStrainData( - minimum_frequency=self.minimum_frequency, - maximum_frequency=self.maximum_frequency, - roll_off=self.roll_off, - ) - self.ifosd_1.set_from_frequency_domain_strain( - frequency_domain_strain=self.strain, frequency_array=self.frequency_array - ) - self.ifosd_2.set_from_frequency_domain_strain( - frequency_domain_strain=self.strain, frequency_array=self.frequency_array - ) - - def tearDown(self): - del self.minimum_frequency - del self.maximum_frequency - del self.roll_off - del self.sampling_frequency - del self.duration - del self.frequency_array - del self.strain - del self.ifosd_1 - del self.ifosd_2 - - def test_eq_true(self): - self.assertEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_minimum_frequency(self): - self.ifosd_1.minimum_frequency -= 1 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_maximum_frequency(self): - self.ifosd_1.maximum_frequency -= 1 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_roll_off(self): - self.ifosd_1.roll_off -= 0.1 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_window_factor(self): - self.ifosd_1.roll_off -= 0.1 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_sampling_frequency(self): - self.ifosd_1.sampling_frequency *= 2 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_sampling_duration(self): - self.ifosd_1.duration *= 2 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_start_time(self): - self.ifosd_1.start_time -= 0.1 - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_frequency_array(self): - new_frequency_array = bilby.utils.create_frequency_series( - sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 - ) - self.ifosd_1.frequency_array = new_frequency_array - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_frequency_domain_strain(self): - new_strain = bilby.utils.create_frequency_series( - sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 - ) - self.ifosd_1._frequency_domain_strain = new_strain - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_time_array(self): - new_time_array = bilby.utils.create_time_series( - sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 - ) - self.ifosd_1.time_array = new_time_array - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - def test_eq_different_time_domain_strain(self): - new_strain = bilby.utils.create_time_series( - sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 - ) - self.ifosd_1._time_domain_strain = new_strain - self.assertNotEqual(self.ifosd_1, self.ifosd_2) - - -class TestInterferometerList(unittest.TestCase): - def setUp(self): - self.frequency_arrays = np.linspace(0, 4096, 4097) - self.name1 = "name1" - self.name2 = "name2" - self.power_spectral_density1 = ( - bilby.gw.detector.PowerSpectralDensity.from_aligo() - ) - self.power_spectral_density2 = ( - bilby.gw.detector.PowerSpectralDensity.from_aligo() - ) - self.minimum_frequency1 = 10 - self.minimum_frequency2 = 10 - self.maximum_frequency1 = 20 - self.maximum_frequency2 = 20 - self.length1 = 30 - self.length2 = 30 - self.latitude1 = 1 - self.latitude2 = 1 - self.longitude1 = 2 - self.longitude2 = 2 - self.elevation1 = 3 - self.elevation2 = 3 - self.xarm_azimuth1 = 4 - self.xarm_azimuth2 = 4 - self.yarm_azimuth1 = 5 - self.yarm_azimuth2 = 5 - self.xarm_tilt1 = 0.0 - self.xarm_tilt2 = 0.0 - self.yarm_tilt1 = 0.0 - self.yarm_tilt2 = 0.0 - # noinspection PyTypeChecker - self.ifo1 = bilby.gw.detector.Interferometer( - name=self.name1, - power_spectral_density=self.power_spectral_density1, - minimum_frequency=self.minimum_frequency1, - maximum_frequency=self.maximum_frequency1, - length=self.length1, - latitude=self.latitude1, - longitude=self.longitude1, - elevation=self.elevation1, - xarm_azimuth=self.xarm_azimuth1, - yarm_azimuth=self.yarm_azimuth1, - xarm_tilt=self.xarm_tilt1, - yarm_tilt=self.yarm_tilt1, - ) - self.ifo2 = bilby.gw.detector.Interferometer( - name=self.name2, - power_spectral_density=self.power_spectral_density2, - minimum_frequency=self.minimum_frequency2, - maximum_frequency=self.maximum_frequency2, - length=self.length2, - latitude=self.latitude2, - longitude=self.longitude2, - elevation=self.elevation2, - xarm_azimuth=self.xarm_azimuth2, - yarm_azimuth=self.yarm_azimuth2, - xarm_tilt=self.xarm_tilt2, - yarm_tilt=self.yarm_tilt2, - ) - self.ifo1.strain_data.set_from_frequency_domain_strain( - self.frequency_arrays, sampling_frequency=4096, duration=2 - ) - self.ifo2.strain_data.set_from_frequency_domain_strain( - self.frequency_arrays, sampling_frequency=4096, duration=2 - ) - self.ifo_list = bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - self.outdir = "outdir" - bilby.core.utils.check_directory_exists_and_if_not_mkdir(self.outdir) - - def tearDown(self): - del self.frequency_arrays - del self.name1 - del self.name2 - del self.power_spectral_density1 - del self.power_spectral_density2 - del self.minimum_frequency1 - del self.minimum_frequency2 - del self.maximum_frequency1 - del self.maximum_frequency2 - del self.length1 - del self.length2 - del self.latitude1 - del self.latitude2 - del self.longitude1 - del self.longitude2 - del self.elevation1 - del self.elevation2 - del self.xarm_azimuth1 - del self.xarm_azimuth2 - del self.yarm_azimuth1 - del self.yarm_azimuth2 - del self.xarm_tilt1 - del self.xarm_tilt2 - del self.yarm_tilt1 - del self.yarm_tilt2 - del self.ifo1 - del self.ifo2 - del self.ifo_list - rmtree(self.outdir) - - def test_init_with_string(self): - with self.assertRaises(TypeError): - bilby.gw.detector.InterferometerList("string") - - def test_init_with_string_list(self): - """ Merely checks if this ends up in the right bracket """ - with mock.patch("bilby.gw.detector.networks.get_empty_interferometer") as m: - m.side_effect = TypeError - with self.assertRaises(TypeError): - bilby.gw.detector.InterferometerList(["string"]) - - def test_init_with_other_object(self): - with self.assertRaises(TypeError): - bilby.gw.detector.InterferometerList([object()]) - - def test_init_with_actual_ifos(self): - ifo_list = bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - self.assertEqual(self.ifo1, ifo_list[0]) - self.assertEqual(self.ifo2, ifo_list[1]) - - def test_init_inconsistent_duration(self): - self.frequency_arrays = np.linspace(0, 2048, 2049) - self.ifo2 = bilby.gw.detector.Interferometer( - name=self.name2, - power_spectral_density=self.power_spectral_density2, - minimum_frequency=self.minimum_frequency2, - maximum_frequency=self.maximum_frequency2, - length=self.length2, - latitude=self.latitude2, - longitude=self.longitude2, - elevation=self.elevation2, - xarm_azimuth=self.xarm_azimuth2, - yarm_azimuth=self.yarm_azimuth2, - xarm_tilt=self.xarm_tilt2, - yarm_tilt=self.yarm_tilt2, - ) - self.ifo2.strain_data.set_from_frequency_domain_strain( - self.frequency_arrays, sampling_frequency=4096, duration=1 - ) - with self.assertRaises(ValueError): - bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - - def test_init_inconsistent_sampling_frequency(self): - self.frequency_arrays = np.linspace(0, 2048, 2049) - self.ifo2 = bilby.gw.detector.Interferometer( - name=self.name2, - power_spectral_density=self.power_spectral_density2, - minimum_frequency=self.minimum_frequency2, - maximum_frequency=self.maximum_frequency2, - length=self.length2, - latitude=self.latitude2, - longitude=self.longitude2, - elevation=self.elevation2, - xarm_azimuth=self.xarm_azimuth2, - yarm_azimuth=self.yarm_azimuth2, - xarm_tilt=self.xarm_tilt2, - yarm_tilt=self.yarm_tilt2, - ) - self.ifo2.strain_data.set_from_frequency_domain_strain( - self.frequency_arrays, sampling_frequency=2048, duration=2 - ) - with self.assertRaises(ValueError): - bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - - def test_init_inconsistent_start_time(self): - self.ifo2.strain_data.start_time = 1 - with self.assertRaises(ValueError): - bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - - @patch.object(bilby.gw.detector.networks.logger, "warning") - def test_check_interferometers_relative_tolerance(self, mock_warning): - # Value larger than relative tolerance -- not tolerated - self.ifo2.strain_data.start_time = self.ifo1.strain_data.start_time + 1e-4 - with self.assertRaises(ValueError): - bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - - # Value smaller than relative tolerance -- tolerated with warning - self.ifo2.strain_data.start_time = self.ifo1.strain_data.start_time + 1e-6 - ifo_list = bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) - self.assertIsNotNone(ifo_list) - self.assertTrue(mock_warning.called) - warning_log_str = mock_warning.call_args.args[0].args[0] - self.assertIsInstance(warning_log_str, str) - self.assertTrue( - "The start_time of all interferometers are not the same:" in warning_log_str - ) - - @patch.object( - bilby.gw.detector.Interferometer, "set_strain_data_from_power_spectral_density" - ) - def test_set_strain_data_from_power_spectral_density(self, m): - self.ifo_list.set_strain_data_from_power_spectral_densities( - sampling_frequency=123, duration=6.2, start_time=3 - ) - m.assert_called_with(sampling_frequency=123, duration=6.2, start_time=3) - self.assertEqual(len(self.ifo_list), m.call_count) - - def test_inject_signal_pol_and_wg_none(self): - with self.assertRaises(ValueError): - self.ifo_list.inject_signal( - injection_polarizations=None, waveform_generator=None - ) - - def test_meta_data(self): - ifos_list = [self.ifo1, self.ifo2] - ifos = bilby.gw.detector.InterferometerList(ifos_list) - self.assertTrue(isinstance(ifos.meta_data, dict)) - meta_data = {ifo.name: ifo.meta_data for ifo in ifos_list} - self.assertEqual(ifos.meta_data, meta_data) - - @patch.object( - bilby.gw.waveform_generator.WaveformGenerator, "frequency_domain_strain" - ) - def test_inject_signal_pol_none_calls_frequency_domain_strain(self, m): - waveform_generator = bilby.gw.waveform_generator.WaveformGenerator( - frequency_domain_source_model=lambda x, y, z: x - ) - self.ifo1.inject_signal = MagicMock(return_value=None) - self.ifo2.inject_signal = MagicMock(return_value=None) - self.ifo_list.inject_signal( - parameters=None, waveform_generator=waveform_generator - ) - self.assertTrue(m.called) - - @patch.object(bilby.gw.detector.Interferometer, "inject_signal") - def test_inject_signal_with_inj_pol(self, m): - self.ifo_list.inject_signal(injection_polarizations=dict(plus=1)) - m.assert_called_with(parameters=None, injection_polarizations=dict(plus=1)) - self.assertEqual(len(self.ifo_list), m.call_count) - - @patch.object(bilby.gw.detector.Interferometer, "inject_signal") - def test_inject_signal_returns_expected_polarisations(self, m): - m.return_value = dict(plus=1, cross=2) - injection_polarizations = dict(plus=1, cross=2) - ifos_pol = self.ifo_list.inject_signal( - injection_polarizations=injection_polarizations - ) - self.assertDictEqual( - self.ifo1.inject_signal(injection_polarizations=injection_polarizations), - ifos_pol[0], - ) - self.assertDictEqual( - self.ifo2.inject_signal(injection_polarizations=injection_polarizations), - ifos_pol[1], - ) - - @patch.object(bilby.gw.detector.Interferometer, "save_data") - def test_save_data(self, m): - self.ifo_list.save_data(outdir="test_outdir", label="test_outdir") - m.assert_called_with(outdir="test_outdir", label="test_outdir") - self.assertEqual(len(self.ifo_list), m.call_count) - - def test_number_of_interferometers(self): - self.assertEqual(len(self.ifo_list), self.ifo_list.number_of_interferometers) - - def test_duration(self): - self.assertEqual(self.ifo1.strain_data.duration, self.ifo_list.duration) - self.assertEqual(self.ifo2.strain_data.duration, self.ifo_list.duration) - - def test_sampling_frequency(self): - self.assertEqual( - self.ifo1.strain_data.sampling_frequency, self.ifo_list.sampling_frequency - ) - self.assertEqual( - self.ifo2.strain_data.sampling_frequency, self.ifo_list.sampling_frequency - ) - - def test_start_time(self): - self.assertEqual(self.ifo1.strain_data.start_time, self.ifo_list.start_time) - self.assertEqual(self.ifo2.strain_data.start_time, self.ifo_list.start_time) - - def test_frequency_array(self): - self.assertTrue( - np.array_equal( - self.ifo1.strain_data.frequency_array, self.ifo_list.frequency_array - ) - ) - self.assertTrue( - np.array_equal( - self.ifo2.strain_data.frequency_array, self.ifo_list.frequency_array - ) - ) - - def test_append_with_ifo(self): - self.ifo_list.append(self.ifo2) - names = [ifo.name for ifo in self.ifo_list] - self.assertListEqual([self.ifo1.name, self.ifo2.name, self.ifo2.name], names) - - def test_append_with_ifo_list(self): - self.ifo_list.append(self.ifo_list) - names = [ifo.name for ifo in self.ifo_list] - self.assertListEqual( - [self.ifo1.name, self.ifo2.name, self.ifo1.name, self.ifo2.name], names - ) - - def test_extend(self): - self.ifo_list.extend(self.ifo_list) - names = [ifo.name for ifo in self.ifo_list] - self.assertListEqual( - [self.ifo1.name, self.ifo2.name, self.ifo1.name, self.ifo2.name], names - ) - - def test_insert(self): - new_ifo = self.ifo1 - new_ifo.name = "name3" - self.ifo_list.insert(1, new_ifo) - names = [ifo.name for ifo in self.ifo_list] - self.assertListEqual([self.ifo1.name, new_ifo.name, self.ifo2.name], names) - - def test_to_and_from_hdf5_loading(self): - if sys.version_info[0] < 3: - with self.assertRaises(NotImplementedError): - self.ifo_list.to_hdf5(outdir="outdir", label="test") - else: - self.ifo_list.to_hdf5(outdir="outdir", label="test") - filename = "outdir/test_name1name2.h5" - recovered_ifo = bilby.gw.detector.InterferometerList.from_hdf5(filename) - self.assertListEqual(self.ifo_list, recovered_ifo) - - def test_to_and_from_hdf5_wrong_class(self): - if sys.version_info[0] < 3: - pass - else: - dd.io.save("./outdir/psd.h5", self.ifo_list[0].power_spectral_density) - filename = self.ifo_list._hdf5_filename_from_outdir_label( - outdir="outdir", label="psd" - ) - with self.assertRaises(TypeError): - bilby.gw.detector.InterferometerList.from_hdf5(filename) - - def test_plot_data(self): - ifos = bilby.gw.detector.InterferometerList(["H1", "L1"]) - ifos.set_strain_data_from_power_spectral_densities(2048, 4) - ifos.plot_data(outdir=self.outdir) - - ifos = bilby.gw.detector.InterferometerList(["H1", "L1", "V1"]) - ifos.set_strain_data_from_power_spectral_densities(2048, 4) - ifos.plot_data(outdir=self.outdir) - - -class TestPowerSpectralDensityWithoutFiles(unittest.TestCase): - def setUp(self): - self.frequency_array = np.array([1.0, 2.0, 3.0]) - self.psd_array = np.array([16.0, 25.0, 36.0]) - self.asd_array = np.array([4.0, 5.0, 6.0]) - - def tearDown(self): - del self.frequency_array - del self.psd_array - del self.asd_array - - def test_init_with_asd_array(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, asd_array=self.asd_array - ) - self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - - def test_init_with_psd_array(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, psd_array=self.psd_array - ) - self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - - def test_setting_asd_array_after_init(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array - ) - psd.asd_array = self.asd_array - self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - - def test_setting_psd_array_after_init(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array - ) - psd.psd_array = self.psd_array - self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - - def test_power_spectral_density_interpolated_from_asd_array(self): - expected = np.array([25.0]) - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, asd_array=self.asd_array - ) - self.assertEqual(expected, psd.power_spectral_density_interpolated(2)) - - def test_power_spectral_density_interpolated_from_psd_array(self): - expected = np.array([25.0]) - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, psd_array=self.psd_array - ) - self.assertEqual(expected, psd.power_spectral_density_interpolated(2)) - - def test_from_amplitude_spectral_density_array(self): - actual = bilby.gw.detector.PowerSpectralDensity.from_amplitude_spectral_density_array( - frequency_array=self.frequency_array, asd_array=self.asd_array - ) - self.assertTrue(np.array_equal(self.psd_array, actual.psd_array)) - self.assertTrue(np.array_equal(self.asd_array, actual.asd_array)) - - def test_from_power_spectral_density_array(self): - actual = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_array( - frequency_array=self.frequency_array, psd_array=self.psd_array - ) - self.assertTrue(np.array_equal(self.psd_array, actual.psd_array)) - self.assertTrue(np.array_equal(self.asd_array, actual.asd_array)) - - def test_repr(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, psd_array=self.psd_array - ) - expected = "PowerSpectralDensity(frequency_array={}, psd_array={}, asd_array={})".format( - self.frequency_array, self.psd_array, self.asd_array - ) - self.assertEqual(expected, repr(psd)) - - -class TestPowerSpectralDensityWithFiles(unittest.TestCase): - def setUp(self): - self.dir = os.path.join(os.path.dirname(__file__), "noise_curves") - os.mkdir(self.dir) - self.asd_file = os.path.join( - os.path.dirname(__file__), "noise_curves", "asd_test_file.txt" - ) - self.psd_file = os.path.join( - os.path.dirname(__file__), "noise_curves", "psd_test_file.txt" - ) - with open(self.asd_file, "w") as f: - f.write("1.\t1.0e-21\n2.\t2.0e-21\n3.\t3.0e-21") - with open(self.psd_file, "w") as f: - f.write("1.\t1.0e-42\n2.\t4.0e-42\n3.\t9.0e-42") - self.frequency_array = np.array([1.0, 2.0, 3.0]) - self.asd_array = np.array([1.0e-21, 2.0e-21, 3.0e-21]) - self.psd_array = np.array([1.0e-42, 4.0e-42, 9.0e-42]) - - def tearDown(self): - os.remove(self.asd_file) - os.remove(self.psd_file) - os.rmdir(self.dir) - del self.dir - del self.asd_array - del self.psd_array - del self.asd_file - del self.psd_file - - def test_init_with_psd_file(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, psd_file=self.psd_file - ) - self.assertEqual(self.psd_file, psd.psd_file) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - self.assertTrue(np.allclose(self.asd_array, psd.asd_array, atol=1e-30)) - - def test_init_with_asd_file(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, asd_file=self.asd_file - ) - self.assertEqual(self.asd_file, psd.asd_file) - self.assertTrue(np.allclose(self.psd_array, psd.psd_array, atol=1e-60)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - - def test_setting_psd_array_after_init(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array - ) - psd.psd_file = self.psd_file - self.assertEqual(self.psd_file, psd.psd_file) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - self.assertTrue(np.allclose(self.asd_array, psd.asd_array, atol=1e-30)) - - def test_init_with_asd_array_after_init(self): - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array - ) - psd.asd_file = self.asd_file - self.assertEqual(self.asd_file, psd.asd_file) - self.assertTrue(np.allclose(self.psd_array, psd.psd_array, atol=1e-60)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - - def test_power_spectral_density_interpolated_from_asd_file(self): - expected = np.array([4.0e-42]) - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, asd_file=self.asd_file - ) - self.assertTrue( - np.allclose( - expected, psd.power_spectral_density_interpolated(2), atol=1e-60 - ) - ) - - def test_power_spectral_density_interpolated_from_psd_file(self): - expected = np.array([4.0e-42]) - psd = bilby.gw.detector.PowerSpectralDensity( - frequency_array=self.frequency_array, psd_file=self.psd_file - ) - self.assertAlmostEqual(expected, psd.power_spectral_density_interpolated(2)) - - def test_from_amplitude_spectral_density_file(self): - psd = bilby.gw.detector.PowerSpectralDensity.from_amplitude_spectral_density_file( - asd_file=self.asd_file - ) - self.assertEqual(self.asd_file, psd.asd_file) - self.assertTrue(np.allclose(self.psd_array, psd.psd_array, atol=1e-60)) - self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) - - def test_from_power_spectral_density_file(self): - psd = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_file( - psd_file=self.psd_file - ) - self.assertEqual(self.psd_file, psd.psd_file) - self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) - self.assertTrue(np.allclose(self.asd_array, psd.asd_array, atol=1e-30)) - - def test_from_aligo(self): - psd = bilby.gw.detector.PowerSpectralDensity.from_aligo() - expected_filename = "aLIGO_ZERO_DET_high_P_psd.txt" - expected = bilby.gw.detector.PowerSpectralDensity(psd_file=expected_filename) - actual_filename = psd.psd_file.split("/")[-1] - self.assertEqual(expected_filename, actual_filename) - self.assertTrue(np.allclose(expected.psd_array, psd.psd_array, atol=1e-60)) - self.assertTrue(np.array_equal(expected.asd_array, psd.asd_array)) - - def test_check_file_psd_file_set_to_asd_file(self): - logger = logging.getLogger("bilby") - m = MagicMock() - logger.warning = m - _ = bilby.gw.detector.PowerSpectralDensity(psd_file=self.asd_file) - self.assertEqual(4, m.call_count) - - def test_check_file_not_called_psd_file_set_to_psd_file(self): - logger = logging.getLogger("bilby") - m = MagicMock() - logger.warning = m - _ = bilby.gw.detector.PowerSpectralDensity(psd_file=self.psd_file) - self.assertEqual(0, m.call_count) - - def test_check_file_asd_file_set_to_psd_file(self): - logger = logging.getLogger("bilby") - m = MagicMock() - logger.warning = m - _ = bilby.gw.detector.PowerSpectralDensity(asd_file=self.psd_file) - self.assertEqual(4, m.call_count) - - def test_check_file_not_called_asd_file_set_to_asd_file(self): - logger = logging.getLogger("bilby") - m = MagicMock() - logger.warning = m - _ = bilby.gw.detector.PowerSpectralDensity(asd_file=self.asd_file) - self.assertEqual(0, m.call_count) - - def test_from_frame_file(self): - expected_frequency_array = np.array([1.0, 2.0, 3.0]) - expected_psd_array = np.array([16.0, 25.0, 36.0]) - with mock.patch( - "bilby.gw.detector.InterferometerStrainData.set_from_frame_file" - ) as _: - with mock.patch( - "bilby.gw.detector.InterferometerStrainData.create_power_spectral_density" - ) as n: - n.return_value = expected_frequency_array, expected_psd_array - psd = bilby.gw.detector.PowerSpectralDensity.from_frame_file( - frame_file=self.asd_file, psd_start_time=0, psd_duration=4 - ) - self.assertTrue( - np.array_equal(expected_frequency_array, psd.frequency_array) - ) - self.assertTrue(np.array_equal(expected_psd_array, psd.psd_array)) - - def test_repr(self): - psd = bilby.gw.detector.PowerSpectralDensity(psd_file=self.psd_file) - expected = "PowerSpectralDensity(psd_file='{}', asd_file='{}')".format( - self.psd_file, None - ) - self.assertEqual(expected, repr(psd)) - - -class TestPowerSpectralDensityEquals(unittest.TestCase): - def setUp(self): - self.psd_from_file_1 = bilby.gw.detector.PowerSpectralDensity.from_aligo() - self.psd_from_file_2 = bilby.gw.detector.PowerSpectralDensity.from_aligo() - self.frequency_array = np.linspace(1, 100) - self.psd_array = np.linspace(1, 100) - self.psd_from_array_1 = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_array( - frequency_array=self.frequency_array, psd_array=self.psd_array - ) - self.psd_from_array_2 = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_array( - frequency_array=self.frequency_array, psd_array=self.psd_array - ) - - def tearDown(self): - del self.psd_from_file_1 - del self.psd_from_file_2 - del self.frequency_array - del self.psd_array - del self.psd_from_array_1 - del self.psd_from_array_2 - - def test_eq_true_from_array(self): - self.assertEqual(self.psd_from_array_1, self.psd_from_array_2) - - def test_eq_true_from_file(self): - self.assertEqual(self.psd_from_file_1, self.psd_from_file_2) - - def test_eq_false_different_psd_file_name(self): - self.psd_from_file_1._psd_file = "some_other_name" - self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) - - def test_eq_false_different_asd_file_name(self): - self.psd_from_file_1._psd_file = None - self.psd_from_file_2._psd_file = None - self.psd_from_file_1._asd_file = "some_name" - self.psd_from_file_2._asd_file = "some_other_name" - self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) - - def test_eq_false_different_frequency_array(self): - self.psd_from_file_1.frequency_array[0] = 0.5 - self.psd_from_array_1.frequency_array[0] = 0.5 - self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) - self.assertNotEqual(self.psd_from_array_1, self.psd_from_array_2) - - def test_eq_false_different_psd(self): - self.psd_from_file_1.psd_array[0] = 0.53544321 - self.psd_from_array_1.psd_array[0] = 0.53544321 - self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) - self.assertNotEqual(self.psd_from_array_1, self.psd_from_array_2) - - def test_eq_false_different_asd(self): - self.psd_from_file_1.asd_array[0] = 0.53544321 - self.psd_from_array_1.asd_array[0] = 0.53544321 - self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) - self.assertNotEqual(self.psd_from_array_1, self.psd_from_array_2) - - -if __name__ == "__main__": - unittest.main() diff --git a/test/gw/__init__.py b/test/gw/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/conversion_test.py b/test/gw/conversion_test.py similarity index 100% rename from test/conversion_test.py rename to test/gw/conversion_test.py diff --git a/test/cosmology_test.py b/test/gw/cosmology_test.py similarity index 100% rename from test/cosmology_test.py rename to test/gw/cosmology_test.py diff --git a/test/gw/detector/__init__.py b/test/gw/detector/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/calibration_test.py b/test/gw/detector/calibration_test.py similarity index 100% rename from test/calibration_test.py rename to test/gw/detector/calibration_test.py diff --git a/test/gw/detector/geometry_test.py b/test/gw/detector/geometry_test.py new file mode 100644 index 0000000000000000000000000000000000000000..b05b67459fc65abeb46ed32d6e0dea64d2e18bf8 --- /dev/null +++ b/test/gw/detector/geometry_test.py @@ -0,0 +1,236 @@ +import unittest + +import mock +import numpy as np +from mock import MagicMock + +import bilby + + +class TestInterferometerGeometry(unittest.TestCase): + def setUp(self): + self.length = 30 + self.latitude = 1 + self.longitude = 2 + self.elevation = 3 + self.xarm_azimuth = 4 + self.yarm_azimuth = 5 + self.xarm_tilt = 0.0 + self.yarm_tilt = 0.0 + self.geometry = bilby.gw.detector.InterferometerGeometry( + length=self.length, + latitude=self.latitude, + longitude=self.longitude, + elevation=self.elevation, + xarm_azimuth=self.xarm_azimuth, + yarm_azimuth=self.yarm_azimuth, + xarm_tilt=self.xarm_tilt, + yarm_tilt=self.yarm_tilt, + ) + + def tearDown(self): + del self.length + del self.latitude + del self.longitude + del self.elevation + del self.xarm_azimuth + del self.yarm_azimuth + del self.xarm_tilt + del self.yarm_tilt + del self.geometry + + def test_length_setting(self): + self.assertEqual(self.geometry.length, self.length) + + def test_latitude_setting(self): + self.assertEqual(self.geometry.latitude, self.latitude) + + def test_longitude_setting(self): + self.assertEqual(self.geometry.longitude, self.longitude) + + def test_elevation_setting(self): + self.assertEqual(self.geometry.elevation, self.elevation) + + def test_xarm_azi_setting(self): + self.assertEqual(self.geometry.xarm_azimuth, self.xarm_azimuth) + + def test_yarm_azi_setting(self): + self.assertEqual(self.geometry.yarm_azimuth, self.yarm_azimuth) + + def test_xarm_tilt_setting(self): + self.assertEqual(self.geometry.xarm_tilt, self.xarm_tilt) + + def test_yarm_tilt_setting(self): + self.assertEqual(self.geometry.yarm_tilt, self.yarm_tilt) + + def test_vertex_without_update(self): + _ = self.geometry.vertex + with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: + m.return_value = np.array([1]) + self.assertFalse(np.array_equal(self.geometry.vertex, np.array([1]))) + + def test_vertex_with_latitude_update(self): + with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: + m.return_value = np.array([1]) + self.geometry.latitude = 5 + self.assertEqual(self.geometry.vertex, np.array([1])) + + def test_vertex_with_longitude_update(self): + with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: + m.return_value = np.array([1]) + self.geometry.longitude = 5 + self.assertEqual(self.geometry.vertex, np.array([1])) + + def test_vertex_with_elevation_update(self): + with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: + m.return_value = np.array([1]) + self.geometry.elevation = 5 + self.assertEqual(self.geometry.vertex, np.array([1])) + + def test_x_without_update(self): + _ = self.geometry.x + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + + self.assertFalse(np.array_equal(self.geometry.x, np.array([1]))) + + def test_x_with_xarm_tilt_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.xarm_tilt = 0 + self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) + + def test_x_with_xarm_azimuth_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.xarm_azimuth = 0 + self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) + + def test_x_with_longitude_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.longitude = 0 + self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) + + def test_x_with_latitude_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.latitude = 0 + self.assertTrue(np.array_equal(self.geometry.x, np.array([1]))) + + def test_y_without_update(self): + _ = self.geometry.y + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + + self.assertFalse(np.array_equal(self.geometry.y, np.array([1]))) + + def test_y_with_yarm_tilt_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.yarm_tilt = 0 + self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) + + def test_y_with_yarm_azimuth_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.yarm_azimuth = 0 + self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) + + def test_y_with_longitude_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.longitude = 0 + self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) + + def test_y_with_latitude_update(self): + self.geometry.unit_vector_along_arm = MagicMock(return_value=np.array([1])) + self.geometry.latitude = 0 + self.assertTrue(np.array_equal(self.geometry.y, np.array([1]))) + + def test_detector_tensor_without_update(self): + _ = self.geometry.detector_tensor + with mock.patch("numpy.einsum") as m: + m.return_value = 1 + expected = np.array( + [ + [-9.24529394e-06, 1.02425803e-04, 3.24550668e-04], + [1.02425803e-04, 1.37390844e-03, -8.61137566e-03], + [3.24550668e-04, -8.61137566e-03, -1.36466315e-03], + ] + ) + self.assertTrue(np.allclose(expected, self.geometry.detector_tensor)) + + def test_detector_tensor_with_x_azimuth_update(self): + _ = self.geometry.detector_tensor + with mock.patch("numpy.einsum") as m: + m.return_value = 1 + self.geometry.xarm_azimuth = 1 + self.assertEqual(0, self.geometry.detector_tensor) + + def test_detector_tensor_with_y_azimuth_update(self): + _ = self.geometry.detector_tensor + with mock.patch("numpy.einsum") as m: + m.return_value = 1 + self.geometry.yarm_azimuth = 1 + self.assertEqual(0, self.geometry.detector_tensor) + + def test_detector_tensor_with_x_tilt_update(self): + _ = self.geometry.detector_tensor + with mock.patch("numpy.einsum") as m: + m.return_value = 1 + self.geometry.xarm_tilt = 1 + self.assertEqual(0, self.geometry.detector_tensor) + + def test_detector_tensor_with_y_tilt_update(self): + _ = self.geometry.detector_tensor + with mock.patch("numpy.einsum") as m: + m.return_value = 1 + self.geometry.yarm_tilt = 1 + self.assertEqual(0, self.geometry.detector_tensor) + + def test_detector_tensor_with_longitude_update(self): + with mock.patch("numpy.einsum") as m: + m.return_value = 1 + self.geometry.longitude = 1 + self.assertEqual(0, self.geometry.detector_tensor) + + def test_detector_tensor_with_latitude_update(self): + with mock.patch("numpy.einsum") as m: + _ = self.geometry.detector_tensor + m.return_value = 1 + self.geometry.latitude = 1 + self.assertEqual(self.geometry.detector_tensor, 0) + + def test_unit_vector_along_arm_default(self): + with self.assertRaises(ValueError): + self.geometry.unit_vector_along_arm("z") + + def test_unit_vector_along_arm_x(self): + with mock.patch("numpy.array") as m: + m.return_value = 1 + self.geometry.xarm_tilt = 0 + self.geometry.xarm_azimuth = 0 + self.geometry.yarm_tilt = 0 + self.geometry.yarm_azimuth = 90 + self.assertAlmostEqual(self.geometry.unit_vector_along_arm("x"), 1) + + def test_unit_vector_along_arm_y(self): + with mock.patch("numpy.array") as m: + m.return_value = 1 + self.geometry.xarm_tilt = 0 + self.geometry.xarm_azimuth = 90 + self.geometry.yarm_tilt = 0 + self.geometry.yarm_azimuth = 180 + self.assertAlmostEqual(self.geometry.unit_vector_along_arm("y"), -1) + + def test_repr(self): + expected = ( + "InterferometerGeometry(length={}, latitude={}, longitude={}, elevation={}, xarm_azimuth={}, " + "yarm_azimuth={}, xarm_tilt={}, yarm_tilt={})".format( + float(self.length), + float(self.latitude), + float(self.longitude), + float(self.elevation), + float(self.xarm_azimuth), + float(self.yarm_azimuth), + float(self.xarm_tilt), + float(self.yarm_tilt), + ) + ) + self.assertEqual(expected, repr(self.geometry)) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/gw/detector/interferometer_test.py b/test/gw/detector/interferometer_test.py new file mode 100644 index 0000000000000000000000000000000000000000..0e5a51e032a6f3ce9ac11466b547eacbd596530a --- /dev/null +++ b/test/gw/detector/interferometer_test.py @@ -0,0 +1,532 @@ +import sys +import unittest +from shutil import rmtree + +import deepdish as dd +import mock +import numpy as np +from mock import MagicMock, patch + +import bilby + + +class TestInterferometer(unittest.TestCase): + def setUp(self): + self.name = "name" + self.power_spectral_density = ( + bilby.gw.detector.PowerSpectralDensity.from_aligo() + ) + self.minimum_frequency = 10 + self.maximum_frequency = 20 + self.length = 30 + self.latitude = 1 + self.longitude = 2 + self.elevation = 3 + self.xarm_azimuth = 4 + self.yarm_azimuth = 5 + self.xarm_tilt = 0.0 + self.yarm_tilt = 0.0 + # noinspection PyTypeChecker + self.ifo = bilby.gw.detector.Interferometer( + name=self.name, + power_spectral_density=self.power_spectral_density, + minimum_frequency=self.minimum_frequency, + maximum_frequency=self.maximum_frequency, + length=self.length, + latitude=self.latitude, + longitude=self.longitude, + elevation=self.elevation, + xarm_azimuth=self.xarm_azimuth, + yarm_azimuth=self.yarm_azimuth, + xarm_tilt=self.xarm_tilt, + yarm_tilt=self.yarm_tilt, + ) + self.ifo.strain_data.set_from_frequency_domain_strain( + np.linspace(0, 4096, 4097), sampling_frequency=4096, duration=2 + ) + self.outdir = "outdir" + + self.injection_polarizations = dict() + np.random.seed(42) + self.injection_polarizations["plus"] = np.random.random(4097) + self.injection_polarizations["cross"] = np.random.random(4097) + + self.waveform_generator = MagicMock() + self.wg_polarizations = dict( + plus=np.random.random(4097), cross=np.random.random(4097) + ) + self.waveform_generator.frequency_domain_strain = ( + lambda _: self.wg_polarizations + ) + self.parameters = dict(ra=0.0, dec=0.0, geocent_time=0.0, psi=0.0) + + bilby.core.utils.check_directory_exists_and_if_not_mkdir(self.outdir) + + def tearDown(self): + del self.name + del self.power_spectral_density + del self.minimum_frequency + del self.maximum_frequency + del self.length + del self.latitude + del self.longitude + del self.elevation + del self.xarm_azimuth + del self.yarm_azimuth + del self.xarm_tilt + del self.yarm_tilt + del self.ifo + del self.injection_polarizations + del self.wg_polarizations + del self.waveform_generator + del self.parameters + rmtree(self.outdir) + + def test_name_setting(self): + self.assertEqual(self.ifo.name, self.name) + + def test_psd_setting(self): + self.assertEqual(self.ifo.power_spectral_density, self.power_spectral_density) + + def test_min_freq_setting(self): + self.assertEqual(self.ifo.strain_data.minimum_frequency, self.minimum_frequency) + + def test_max_freq_setting(self): + self.assertEqual(self.ifo.strain_data.maximum_frequency, self.maximum_frequency) + + def test_antenna_response_default(self): + with mock.patch("bilby.gw.utils.get_polarization_tensor") as m: + with mock.patch("numpy.einsum") as n: + m.return_value = 0 + n.return_value = 1 + self.assertEqual(self.ifo.antenna_response(234, 52, 54, 76, "plus"), 1) + + def test_antenna_response_einsum(self): + with mock.patch("bilby.gw.utils.get_polarization_tensor") as m: + m.return_value = np.ones((3, 3)) + self.assertAlmostEqual( + self.ifo.antenna_response(234, 52, 54, 76, "plus"), + self.ifo.detector_tensor.sum(), + ) + + def test_get_detector_response_default_behaviour(self): + self.ifo.antenna_response = MagicMock(return_value=1) + self.ifo.time_delay_from_geocenter = MagicMock(return_value=0) + self.ifo.epoch = 0 + self.minimum_frequency = 10 + self.maximum_frequency = 20 + # self.ifo.frequency_array = np.array([8, 12, 16, 20, 24]) + plus = np.linspace(0, 4096, 4097) + response = self.ifo.get_detector_response( + waveform_polarizations=dict(plus=plus), + parameters=dict(ra=0, dec=0, geocent_time=0, psi=0), + ) + self.assertTrue( + np.array_equal(response, plus * self.ifo.frequency_mask * np.exp(-0j)) + ) + + def test_get_detector_response_with_dt(self): + self.ifo.antenna_response = MagicMock(return_value=1) + self.ifo.time_delay_from_geocenter = MagicMock(return_value=0) + self.ifo.epoch = 1 + self.minimum_frequency = 10 + self.maximum_frequency = 20 + plus = np.linspace(0, 4096, 4097) + response = self.ifo.get_detector_response( + waveform_polarizations=dict(plus=plus), + parameters=dict(ra=0, dec=0, geocent_time=0, psi=0), + ) + expected_response = ( + plus + * self.ifo.frequency_mask + * np.exp(-1j * 2 * np.pi * self.ifo.frequency_array) + ) + self.assertTrue(np.allclose(abs(expected_response), abs(response))) + + def test_get_detector_response_multiple_modes(self): + self.ifo.antenna_response = MagicMock(return_value=1) + self.ifo.time_delay_from_geocenter = MagicMock(return_value=0) + self.ifo.epoch = 0 + self.minimum_frequency = 10 + self.maximum_frequency = 20 + plus = np.linspace(0, 4096, 4097) + cross = np.linspace(0, 4096, 4097) + response = self.ifo.get_detector_response( + waveform_polarizations=dict(plus=plus, cross=cross), + parameters=dict(ra=0, dec=0, geocent_time=0, psi=0), + ) + self.assertTrue( + np.array_equal( + response, (plus + cross) * self.ifo.frequency_mask * np.exp(-0j) + ) + ) + + def test_inject_signal_from_waveform_polarizations_correct_injection(self): + original_strain = self.ifo.strain_data.frequency_domain_strain + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + self.ifo.inject_signal_from_waveform_polarizations( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + expected = ( + self.injection_polarizations["plus"] + + self.injection_polarizations["cross"] + + original_strain + ) + self.assertTrue( + np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain) + ) + + def test_inject_signal_from_waveform_polarizations_update_time_domain_strain(self): + original_td_strain = self.ifo.strain_data.time_domain_strain + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + self.ifo.inject_signal_from_waveform_polarizations( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + self.assertFalse( + np.array_equal(original_td_strain, self.ifo.strain_data.time_domain_strain) + ) + + def test_inject_signal_from_waveform_polarizations_meta_data(self): + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + self.ifo.inject_signal_from_waveform_polarizations( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + signal_ifo_expected = ( + self.injection_polarizations["plus"] + self.injection_polarizations["cross"] + ) + self.assertAlmostEqual( + self.ifo.optimal_snr_squared(signal=signal_ifo_expected).real, + self.ifo.meta_data["optimal_SNR"] ** 2, + 10, + ) + self.assertAlmostEqual( + self.ifo.matched_filter_snr(signal=signal_ifo_expected), + self.ifo.meta_data["matched_filter_SNR"], + 10, + ) + self.assertDictEqual(self.parameters, self.ifo.meta_data["parameters"]) + + def test_inject_signal_from_waveform_polarizations_incorrect_length(self): + self.injection_polarizations["plus"] = np.random.random(1000) + self.injection_polarizations["cross"] = np.random.random(1000) + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + with self.assertRaises(ValueError): + self.ifo.inject_signal_from_waveform_polarizations( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + + @patch.object(bilby.core.utils.logger, "warning") + def test_inject_signal_outside_segment_logs_warning(self, m): + self.parameters["geocent_time"] = 24345.0 + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + self.ifo.inject_signal_from_waveform_polarizations( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + self.assertTrue(m.called) + + def test_inject_signal_from_waveform_generator_correct_return_value(self): + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + returned_polarizations = self.ifo.inject_signal_from_waveform_generator( + parameters=self.parameters, waveform_generator=self.waveform_generator + ) + self.assertTrue( + np.array_equal( + self.wg_polarizations["plus"], returned_polarizations["plus"] + ) + ) + self.assertTrue( + np.array_equal( + self.wg_polarizations["cross"], returned_polarizations["cross"] + ) + ) + + @patch.object( + bilby.gw.detector.Interferometer, "inject_signal_from_waveform_generator" + ) + def test_inject_signal_with_waveform_generator_correct_call(self, m): + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + _ = self.ifo.inject_signal( + parameters=self.parameters, waveform_generator=self.waveform_generator + ) + m.assert_called_with( + parameters=self.parameters, waveform_generator=self.waveform_generator + ) + + def test_inject_signal_from_waveform_generator_correct_injection(self): + original_strain = self.ifo.strain_data.frequency_domain_strain + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + injection_polarizations = self.ifo.inject_signal_from_waveform_generator( + parameters=self.parameters, waveform_generator=self.waveform_generator + ) + expected = ( + injection_polarizations["plus"] + + injection_polarizations["cross"] + + original_strain + ) + self.assertTrue( + np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain) + ) + + def test_inject_signal_with_injection_polarizations(self): + original_strain = self.ifo.strain_data.frequency_domain_strain + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + self.ifo.inject_signal( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + expected = ( + self.injection_polarizations["plus"] + + self.injection_polarizations["cross"] + + original_strain + ) + self.assertTrue( + np.array_equal(expected, self.ifo.strain_data._frequency_domain_strain) + ) + + @patch.object( + bilby.gw.detector.Interferometer, "inject_signal_from_waveform_polarizations" + ) + def test_inject_signal_with_injection_polarizations_and_waveform_generator(self, m): + self.ifo.get_detector_response = lambda x, params: x["plus"] + x["cross"] + _ = self.ifo.inject_signal( + parameters=self.parameters, + waveform_generator=self.waveform_generator, + injection_polarizations=self.injection_polarizations, + ) + m.assert_called_with( + parameters=self.parameters, + injection_polarizations=self.injection_polarizations, + ) + with self.assertRaises(ValueError): + m.assert_called_with( + parameters=self.parameters, + injection_polarizations=self.wg_polarizations, + ) + + def test_inject_signal_raises_value_error(self): + with self.assertRaises(ValueError): + self.ifo.inject_signal(injection_polarizations=None, parameters=None) + + def test_time_delay_from_geocenter(self): + with mock.patch("bilby.gw.utils.time_delay_geocentric") as m: + m.return_value = 1 + self.assertEqual(self.ifo.time_delay_from_geocenter(1, 2, 3), 1) + + def test_vertex_position_geocentric(self): + with mock.patch("bilby.gw.utils.get_vertex_position_geocentric") as m: + m.return_value = 1 + self.assertEqual(self.ifo.vertex_position_geocentric(), 1) + + def test_optimal_snr_squared(self): + """ + Merely checks parameters are given in the right order and the frequency + mask is applied. + """ + with mock.patch("bilby.gw.utils.noise_weighted_inner_product") as m: + m.side_effect = lambda a, b, c, d: [a, b, c, d] + signal = np.ones_like(self.ifo.power_spectral_density_array) + mask = self.ifo.frequency_mask + expected = [ + signal[mask], + signal[mask], + self.ifo.power_spectral_density_array[mask], + self.ifo.strain_data.duration, + ] + actual = self.ifo.optimal_snr_squared(signal=signal) + self.assertTrue(np.array_equal(expected[0], actual[0])) + self.assertTrue(np.array_equal(expected[1], actual[1])) + self.assertTrue(np.array_equal(expected[2], actual[2])) + self.assertEqual(expected[3], actual[3]) + + def test_repr(self): + expected = ( + "Interferometer(name='{}', power_spectral_density={}, minimum_frequency={}, " + "maximum_frequency={}, length={}, latitude={}, longitude={}, elevation={}, xarm_azimuth={}, " + "yarm_azimuth={}, xarm_tilt={}, yarm_tilt={})".format( + self.name, + self.power_spectral_density, + float(self.minimum_frequency), + float(self.maximum_frequency), + float(self.length), + float(self.latitude), + float(self.longitude), + float(self.elevation), + float(self.xarm_azimuth), + float(self.yarm_azimuth), + float(self.xarm_tilt), + float(self.yarm_tilt), + ) + ) + self.assertEqual(expected, repr(self.ifo)) + + def test_to_and_from_hdf5_loading(self): + if sys.version_info[0] < 3: + with self.assertRaises(NotImplementedError): + self.ifo.to_hdf5(outdir="outdir", label="test") + else: + self.ifo.to_hdf5(outdir="outdir", label="test") + filename = self.ifo._hdf5_filename_from_outdir_label( + outdir="outdir", label="test" + ) + recovered_ifo = bilby.gw.detector.Interferometer.from_hdf5(filename) + self.assertEqual(self.ifo, recovered_ifo) + + def test_to_and_from_hdf5_wrong_class(self): + if sys.version_info[0] < 3: + pass + else: + bilby.core.utils.check_directory_exists_and_if_not_mkdir("outdir") + dd.io.save("./outdir/psd.h5", self.power_spectral_density) + filename = self.ifo._hdf5_filename_from_outdir_label( + outdir="outdir", label="psd" + ) + with self.assertRaises(TypeError): + bilby.gw.detector.Interferometer.from_hdf5(filename) + + +class TestInterferometerEquals(unittest.TestCase): + def setUp(self): + self.name = "name" + self.power_spectral_density_1 = ( + bilby.gw.detector.PowerSpectralDensity.from_aligo() + ) + self.power_spectral_density_2 = ( + bilby.gw.detector.PowerSpectralDensity.from_aligo() + ) + self.minimum_frequency = 10 + self.maximum_frequency = 20 + self.length = 30 + self.latitude = 1 + self.longitude = 2 + self.elevation = 3 + self.xarm_azimuth = 4 + self.yarm_azimuth = 5 + self.xarm_tilt = 0.0 + self.yarm_tilt = 0.0 + # noinspection PyTypeChecker + self.duration = 1 + self.sampling_frequency = 200 + self.frequency_array = bilby.utils.create_frequency_series( + sampling_frequency=self.sampling_frequency, duration=self.duration + ) + self.strain = self.frequency_array + self.ifo_1 = bilby.gw.detector.Interferometer( + name=self.name, + power_spectral_density=self.power_spectral_density_1, + minimum_frequency=self.minimum_frequency, + maximum_frequency=self.maximum_frequency, + length=self.length, + latitude=self.latitude, + longitude=self.longitude, + elevation=self.elevation, + xarm_azimuth=self.xarm_azimuth, + yarm_azimuth=self.yarm_azimuth, + xarm_tilt=self.xarm_tilt, + yarm_tilt=self.yarm_tilt, + ) + self.ifo_2 = bilby.gw.detector.Interferometer( + name=self.name, + power_spectral_density=self.power_spectral_density_2, + minimum_frequency=self.minimum_frequency, + maximum_frequency=self.maximum_frequency, + length=self.length, + latitude=self.latitude, + longitude=self.longitude, + elevation=self.elevation, + xarm_azimuth=self.xarm_azimuth, + yarm_azimuth=self.yarm_azimuth, + xarm_tilt=self.xarm_tilt, + yarm_tilt=self.yarm_tilt, + ) + self.ifo_1.set_strain_data_from_frequency_domain_strain( + frequency_array=self.frequency_array, frequency_domain_strain=self.strain + ) + self.ifo_2.set_strain_data_from_frequency_domain_strain( + frequency_array=self.frequency_array, frequency_domain_strain=self.strain + ) + + def tearDown(self): + del self.name + del self.power_spectral_density_1 + del self.power_spectral_density_2 + del self.minimum_frequency + del self.maximum_frequency + del self.length + del self.latitude + del self.longitude + del self.elevation + del self.xarm_azimuth + del self.yarm_azimuth + del self.xarm_tilt + del self.yarm_tilt + del self.ifo_1 + del self.ifo_2 + del self.sampling_frequency + del self.duration + del self.frequency_array + del self.strain + + def test_eq_true(self): + self.assertEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_psd(self): + self.ifo_1.power_spectral_density.psd_array[0] = 1234 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_minimum_frequency(self): + self.ifo_1.minimum_frequency -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_maximum_frequency(self): + self.ifo_1.minimum_frequency -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_length(self): + self.ifo_1.length -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_latitude(self): + self.ifo_1.latitude -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_longitude(self): + self.ifo_1.longitude -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_elevation(self): + self.ifo_1.elevation -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_xarm_azimuth(self): + self.ifo_1.xarm_azimuth -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_xarmtilt(self): + self.ifo_1.xarm_tilt -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_yarm_azimuth(self): + self.ifo_1.yarm_azimuth -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_yarm_tilt(self): + self.ifo_1.yarm_tilt -= 1 + self.assertNotEqual(self.ifo_1, self.ifo_2) + + def test_eq_false_different_ifo_strain_data(self): + self.strain = bilby.utils.create_frequency_series( + sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 + ) + self.ifo_1.set_strain_data_from_frequency_domain_strain( + frequency_array=self.frequency_array, frequency_domain_strain=self.strain + ) + self.assertNotEqual(self.ifo_1, self.ifo_2) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/gw/detector/networks_test.py b/test/gw/detector/networks_test.py new file mode 100644 index 0000000000000000000000000000000000000000..3627db3ba65349979d34c9147cfe916018cd6883 --- /dev/null +++ b/test/gw/detector/networks_test.py @@ -0,0 +1,355 @@ +import sys +import unittest +from shutil import rmtree + +import deepdish as dd +import mock +import numpy as np +from mock import patch, MagicMock + +import bilby + + +class TestInterferometerList(unittest.TestCase): + def setUp(self): + self.frequency_arrays = np.linspace(0, 4096, 4097) + self.name1 = "name1" + self.name2 = "name2" + self.power_spectral_density1 = ( + bilby.gw.detector.PowerSpectralDensity.from_aligo() + ) + self.power_spectral_density2 = ( + bilby.gw.detector.PowerSpectralDensity.from_aligo() + ) + self.minimum_frequency1 = 10 + self.minimum_frequency2 = 10 + self.maximum_frequency1 = 20 + self.maximum_frequency2 = 20 + self.length1 = 30 + self.length2 = 30 + self.latitude1 = 1 + self.latitude2 = 1 + self.longitude1 = 2 + self.longitude2 = 2 + self.elevation1 = 3 + self.elevation2 = 3 + self.xarm_azimuth1 = 4 + self.xarm_azimuth2 = 4 + self.yarm_azimuth1 = 5 + self.yarm_azimuth2 = 5 + self.xarm_tilt1 = 0.0 + self.xarm_tilt2 = 0.0 + self.yarm_tilt1 = 0.0 + self.yarm_tilt2 = 0.0 + # noinspection PyTypeChecker + self.ifo1 = bilby.gw.detector.Interferometer( + name=self.name1, + power_spectral_density=self.power_spectral_density1, + minimum_frequency=self.minimum_frequency1, + maximum_frequency=self.maximum_frequency1, + length=self.length1, + latitude=self.latitude1, + longitude=self.longitude1, + elevation=self.elevation1, + xarm_azimuth=self.xarm_azimuth1, + yarm_azimuth=self.yarm_azimuth1, + xarm_tilt=self.xarm_tilt1, + yarm_tilt=self.yarm_tilt1, + ) + self.ifo2 = bilby.gw.detector.Interferometer( + name=self.name2, + power_spectral_density=self.power_spectral_density2, + minimum_frequency=self.minimum_frequency2, + maximum_frequency=self.maximum_frequency2, + length=self.length2, + latitude=self.latitude2, + longitude=self.longitude2, + elevation=self.elevation2, + xarm_azimuth=self.xarm_azimuth2, + yarm_azimuth=self.yarm_azimuth2, + xarm_tilt=self.xarm_tilt2, + yarm_tilt=self.yarm_tilt2, + ) + self.ifo1.strain_data.set_from_frequency_domain_strain( + self.frequency_arrays, sampling_frequency=4096, duration=2 + ) + self.ifo2.strain_data.set_from_frequency_domain_strain( + self.frequency_arrays, sampling_frequency=4096, duration=2 + ) + self.ifo_list = bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + self.outdir = "outdir" + bilby.core.utils.check_directory_exists_and_if_not_mkdir(self.outdir) + + def tearDown(self): + del self.frequency_arrays + del self.name1 + del self.name2 + del self.power_spectral_density1 + del self.power_spectral_density2 + del self.minimum_frequency1 + del self.minimum_frequency2 + del self.maximum_frequency1 + del self.maximum_frequency2 + del self.length1 + del self.length2 + del self.latitude1 + del self.latitude2 + del self.longitude1 + del self.longitude2 + del self.elevation1 + del self.elevation2 + del self.xarm_azimuth1 + del self.xarm_azimuth2 + del self.yarm_azimuth1 + del self.yarm_azimuth2 + del self.xarm_tilt1 + del self.xarm_tilt2 + del self.yarm_tilt1 + del self.yarm_tilt2 + del self.ifo1 + del self.ifo2 + del self.ifo_list + rmtree(self.outdir) + + def test_init_with_string(self): + with self.assertRaises(TypeError): + bilby.gw.detector.InterferometerList("string") + + def test_init_with_string_list(self): + """ Merely checks if this ends up in the right bracket """ + with mock.patch("bilby.gw.detector.networks.get_empty_interferometer") as m: + m.side_effect = TypeError + with self.assertRaises(TypeError): + bilby.gw.detector.InterferometerList(["string"]) + + def test_init_with_other_object(self): + with self.assertRaises(TypeError): + bilby.gw.detector.InterferometerList([object()]) + + def test_init_with_actual_ifos(self): + ifo_list = bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + self.assertEqual(self.ifo1, ifo_list[0]) + self.assertEqual(self.ifo2, ifo_list[1]) + + def test_init_inconsistent_duration(self): + self.frequency_arrays = np.linspace(0, 2048, 2049) + self.ifo2 = bilby.gw.detector.Interferometer( + name=self.name2, + power_spectral_density=self.power_spectral_density2, + minimum_frequency=self.minimum_frequency2, + maximum_frequency=self.maximum_frequency2, + length=self.length2, + latitude=self.latitude2, + longitude=self.longitude2, + elevation=self.elevation2, + xarm_azimuth=self.xarm_azimuth2, + yarm_azimuth=self.yarm_azimuth2, + xarm_tilt=self.xarm_tilt2, + yarm_tilt=self.yarm_tilt2, + ) + self.ifo2.strain_data.set_from_frequency_domain_strain( + self.frequency_arrays, sampling_frequency=4096, duration=1 + ) + with self.assertRaises(ValueError): + bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + + def test_init_inconsistent_sampling_frequency(self): + self.frequency_arrays = np.linspace(0, 2048, 2049) + self.ifo2 = bilby.gw.detector.Interferometer( + name=self.name2, + power_spectral_density=self.power_spectral_density2, + minimum_frequency=self.minimum_frequency2, + maximum_frequency=self.maximum_frequency2, + length=self.length2, + latitude=self.latitude2, + longitude=self.longitude2, + elevation=self.elevation2, + xarm_azimuth=self.xarm_azimuth2, + yarm_azimuth=self.yarm_azimuth2, + xarm_tilt=self.xarm_tilt2, + yarm_tilt=self.yarm_tilt2, + ) + self.ifo2.strain_data.set_from_frequency_domain_strain( + self.frequency_arrays, sampling_frequency=2048, duration=2 + ) + with self.assertRaises(ValueError): + bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + + def test_init_inconsistent_start_time(self): + self.ifo2.strain_data.start_time = 1 + with self.assertRaises(ValueError): + bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + + @patch.object(bilby.gw.detector.networks.logger, "warning") + def test_check_interferometers_relative_tolerance(self, mock_warning): + # Value larger than relative tolerance -- not tolerated + self.ifo2.strain_data.start_time = self.ifo1.strain_data.start_time + 1e-4 + with self.assertRaises(ValueError): + bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + + # Value smaller than relative tolerance -- tolerated with warning + self.ifo2.strain_data.start_time = self.ifo1.strain_data.start_time + 1e-6 + ifo_list = bilby.gw.detector.InterferometerList([self.ifo1, self.ifo2]) + self.assertIsNotNone(ifo_list) + self.assertTrue(mock_warning.called) + warning_log_str = mock_warning.call_args.args[0].args[0] + self.assertIsInstance(warning_log_str, str) + self.assertTrue( + "The start_time of all interferometers are not the same:" in warning_log_str + ) + + @patch.object( + bilby.gw.detector.Interferometer, "set_strain_data_from_power_spectral_density" + ) + def test_set_strain_data_from_power_spectral_density(self, m): + self.ifo_list.set_strain_data_from_power_spectral_densities( + sampling_frequency=123, duration=6.2, start_time=3 + ) + m.assert_called_with(sampling_frequency=123, duration=6.2, start_time=3) + self.assertEqual(len(self.ifo_list), m.call_count) + + def test_inject_signal_pol_and_wg_none(self): + with self.assertRaises(ValueError): + self.ifo_list.inject_signal( + injection_polarizations=None, waveform_generator=None + ) + + def test_meta_data(self): + ifos_list = [self.ifo1, self.ifo2] + ifos = bilby.gw.detector.InterferometerList(ifos_list) + self.assertTrue(isinstance(ifos.meta_data, dict)) + meta_data = {ifo.name: ifo.meta_data for ifo in ifos_list} + self.assertEqual(ifos.meta_data, meta_data) + + @patch.object( + bilby.gw.waveform_generator.WaveformGenerator, "frequency_domain_strain" + ) + def test_inject_signal_pol_none_calls_frequency_domain_strain(self, m): + waveform_generator = bilby.gw.waveform_generator.WaveformGenerator( + frequency_domain_source_model=lambda x, y, z: x + ) + self.ifo1.inject_signal = MagicMock(return_value=None) + self.ifo2.inject_signal = MagicMock(return_value=None) + self.ifo_list.inject_signal( + parameters=None, waveform_generator=waveform_generator + ) + self.assertTrue(m.called) + + @patch.object(bilby.gw.detector.Interferometer, "inject_signal") + def test_inject_signal_with_inj_pol(self, m): + self.ifo_list.inject_signal(injection_polarizations=dict(plus=1)) + m.assert_called_with(parameters=None, injection_polarizations=dict(plus=1)) + self.assertEqual(len(self.ifo_list), m.call_count) + + @patch.object(bilby.gw.detector.Interferometer, "inject_signal") + def test_inject_signal_returns_expected_polarisations(self, m): + m.return_value = dict(plus=1, cross=2) + injection_polarizations = dict(plus=1, cross=2) + ifos_pol = self.ifo_list.inject_signal( + injection_polarizations=injection_polarizations + ) + self.assertDictEqual( + self.ifo1.inject_signal(injection_polarizations=injection_polarizations), + ifos_pol[0], + ) + self.assertDictEqual( + self.ifo2.inject_signal(injection_polarizations=injection_polarizations), + ifos_pol[1], + ) + + @patch.object(bilby.gw.detector.Interferometer, "save_data") + def test_save_data(self, m): + self.ifo_list.save_data(outdir="test_outdir", label="test_outdir") + m.assert_called_with(outdir="test_outdir", label="test_outdir") + self.assertEqual(len(self.ifo_list), m.call_count) + + def test_number_of_interferometers(self): + self.assertEqual(len(self.ifo_list), self.ifo_list.number_of_interferometers) + + def test_duration(self): + self.assertEqual(self.ifo1.strain_data.duration, self.ifo_list.duration) + self.assertEqual(self.ifo2.strain_data.duration, self.ifo_list.duration) + + def test_sampling_frequency(self): + self.assertEqual( + self.ifo1.strain_data.sampling_frequency, self.ifo_list.sampling_frequency + ) + self.assertEqual( + self.ifo2.strain_data.sampling_frequency, self.ifo_list.sampling_frequency + ) + + def test_start_time(self): + self.assertEqual(self.ifo1.strain_data.start_time, self.ifo_list.start_time) + self.assertEqual(self.ifo2.strain_data.start_time, self.ifo_list.start_time) + + def test_frequency_array(self): + self.assertTrue( + np.array_equal( + self.ifo1.strain_data.frequency_array, self.ifo_list.frequency_array + ) + ) + self.assertTrue( + np.array_equal( + self.ifo2.strain_data.frequency_array, self.ifo_list.frequency_array + ) + ) + + def test_append_with_ifo(self): + self.ifo_list.append(self.ifo2) + names = [ifo.name for ifo in self.ifo_list] + self.assertListEqual([self.ifo1.name, self.ifo2.name, self.ifo2.name], names) + + def test_append_with_ifo_list(self): + self.ifo_list.append(self.ifo_list) + names = [ifo.name for ifo in self.ifo_list] + self.assertListEqual( + [self.ifo1.name, self.ifo2.name, self.ifo1.name, self.ifo2.name], names + ) + + def test_extend(self): + self.ifo_list.extend(self.ifo_list) + names = [ifo.name for ifo in self.ifo_list] + self.assertListEqual( + [self.ifo1.name, self.ifo2.name, self.ifo1.name, self.ifo2.name], names + ) + + def test_insert(self): + new_ifo = self.ifo1 + new_ifo.name = "name3" + self.ifo_list.insert(1, new_ifo) + names = [ifo.name for ifo in self.ifo_list] + self.assertListEqual([self.ifo1.name, new_ifo.name, self.ifo2.name], names) + + def test_to_and_from_hdf5_loading(self): + if sys.version_info[0] < 3: + with self.assertRaises(NotImplementedError): + self.ifo_list.to_hdf5(outdir="outdir", label="test") + else: + self.ifo_list.to_hdf5(outdir="outdir", label="test") + filename = "outdir/test_name1name2.h5" + recovered_ifo = bilby.gw.detector.InterferometerList.from_hdf5(filename) + self.assertListEqual(self.ifo_list, recovered_ifo) + + def test_to_and_from_hdf5_wrong_class(self): + if sys.version_info[0] < 3: + pass + else: + dd.io.save("./outdir/psd.h5", self.ifo_list[0].power_spectral_density) + filename = self.ifo_list._hdf5_filename_from_outdir_label( + outdir="outdir", label="psd" + ) + with self.assertRaises(TypeError): + bilby.gw.detector.InterferometerList.from_hdf5(filename) + + def test_plot_data(self): + ifos = bilby.gw.detector.InterferometerList(["H1", "L1"]) + ifos.set_strain_data_from_power_spectral_densities(2048, 4) + ifos.plot_data(outdir=self.outdir) + + ifos = bilby.gw.detector.InterferometerList(["H1", "L1", "V1"]) + ifos.set_strain_data_from_power_spectral_densities(2048, 4) + ifos.plot_data(outdir=self.outdir) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/gw/detector/psd_test.py b/test/gw/detector/psd_test.py new file mode 100644 index 0000000000000000000000000000000000000000..2d9f9acb6ee4ee62b678def08160f7f7b700a59a --- /dev/null +++ b/test/gw/detector/psd_test.py @@ -0,0 +1,312 @@ +import logging +import os +import unittest + +import mock +import numpy as np +from mock import MagicMock + +import bilby + + +class TestPowerSpectralDensityWithoutFiles(unittest.TestCase): + def setUp(self): + self.frequency_array = np.array([1.0, 2.0, 3.0]) + self.psd_array = np.array([16.0, 25.0, 36.0]) + self.asd_array = np.array([4.0, 5.0, 6.0]) + + def tearDown(self): + del self.frequency_array + del self.psd_array + del self.asd_array + + def test_init_with_asd_array(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, asd_array=self.asd_array + ) + self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + + def test_init_with_psd_array(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, psd_array=self.psd_array + ) + self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + + def test_setting_asd_array_after_init(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array + ) + psd.asd_array = self.asd_array + self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + + def test_setting_psd_array_after_init(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array + ) + psd.psd_array = self.psd_array + self.assertTrue(np.array_equal(self.frequency_array, psd.frequency_array)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + + def test_power_spectral_density_interpolated_from_asd_array(self): + expected = np.array([25.0]) + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, asd_array=self.asd_array + ) + self.assertEqual(expected, psd.power_spectral_density_interpolated(2)) + + def test_power_spectral_density_interpolated_from_psd_array(self): + expected = np.array([25.0]) + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, psd_array=self.psd_array + ) + self.assertEqual(expected, psd.power_spectral_density_interpolated(2)) + + def test_from_amplitude_spectral_density_array(self): + actual = bilby.gw.detector.PowerSpectralDensity.from_amplitude_spectral_density_array( + frequency_array=self.frequency_array, asd_array=self.asd_array + ) + self.assertTrue(np.array_equal(self.psd_array, actual.psd_array)) + self.assertTrue(np.array_equal(self.asd_array, actual.asd_array)) + + def test_from_power_spectral_density_array(self): + actual = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_array( + frequency_array=self.frequency_array, psd_array=self.psd_array + ) + self.assertTrue(np.array_equal(self.psd_array, actual.psd_array)) + self.assertTrue(np.array_equal(self.asd_array, actual.asd_array)) + + def test_repr(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, psd_array=self.psd_array + ) + expected = "PowerSpectralDensity(frequency_array={}, psd_array={}, asd_array={})".format( + self.frequency_array, self.psd_array, self.asd_array + ) + self.assertEqual(expected, repr(psd)) + + +class TestPowerSpectralDensityWithFiles(unittest.TestCase): + def setUp(self): + self.dir = os.path.join(os.path.dirname(__file__), "noise_curves") + os.mkdir(self.dir) + self.asd_file = os.path.join( + os.path.dirname(__file__), "noise_curves", "asd_test_file.txt" + ) + self.psd_file = os.path.join( + os.path.dirname(__file__), "noise_curves", "psd_test_file.txt" + ) + with open(self.asd_file, "w") as f: + f.write("1.\t1.0e-21\n2.\t2.0e-21\n3.\t3.0e-21") + with open(self.psd_file, "w") as f: + f.write("1.\t1.0e-42\n2.\t4.0e-42\n3.\t9.0e-42") + self.frequency_array = np.array([1.0, 2.0, 3.0]) + self.asd_array = np.array([1.0e-21, 2.0e-21, 3.0e-21]) + self.psd_array = np.array([1.0e-42, 4.0e-42, 9.0e-42]) + + def tearDown(self): + os.remove(self.asd_file) + os.remove(self.psd_file) + os.rmdir(self.dir) + del self.dir + del self.asd_array + del self.psd_array + del self.asd_file + del self.psd_file + + def test_init_with_psd_file(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, psd_file=self.psd_file + ) + self.assertEqual(self.psd_file, psd.psd_file) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + self.assertTrue(np.allclose(self.asd_array, psd.asd_array, atol=1e-30)) + + def test_init_with_asd_file(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, asd_file=self.asd_file + ) + self.assertEqual(self.asd_file, psd.asd_file) + self.assertTrue(np.allclose(self.psd_array, psd.psd_array, atol=1e-60)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + + def test_setting_psd_array_after_init(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array + ) + psd.psd_file = self.psd_file + self.assertEqual(self.psd_file, psd.psd_file) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + self.assertTrue(np.allclose(self.asd_array, psd.asd_array, atol=1e-30)) + + def test_init_with_asd_array_after_init(self): + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array + ) + psd.asd_file = self.asd_file + self.assertEqual(self.asd_file, psd.asd_file) + self.assertTrue(np.allclose(self.psd_array, psd.psd_array, atol=1e-60)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + + def test_power_spectral_density_interpolated_from_asd_file(self): + expected = np.array([4.0e-42]) + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, asd_file=self.asd_file + ) + self.assertTrue( + np.allclose( + expected, psd.power_spectral_density_interpolated(2), atol=1e-60 + ) + ) + + def test_power_spectral_density_interpolated_from_psd_file(self): + expected = np.array([4.0e-42]) + psd = bilby.gw.detector.PowerSpectralDensity( + frequency_array=self.frequency_array, psd_file=self.psd_file + ) + self.assertAlmostEqual(expected, psd.power_spectral_density_interpolated(2)) + + def test_from_amplitude_spectral_density_file(self): + psd = bilby.gw.detector.PowerSpectralDensity.from_amplitude_spectral_density_file( + asd_file=self.asd_file + ) + self.assertEqual(self.asd_file, psd.asd_file) + self.assertTrue(np.allclose(self.psd_array, psd.psd_array, atol=1e-60)) + self.assertTrue(np.array_equal(self.asd_array, psd.asd_array)) + + def test_from_power_spectral_density_file(self): + psd = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_file( + psd_file=self.psd_file + ) + self.assertEqual(self.psd_file, psd.psd_file) + self.assertTrue(np.array_equal(self.psd_array, psd.psd_array)) + self.assertTrue(np.allclose(self.asd_array, psd.asd_array, atol=1e-30)) + + def test_from_aligo(self): + psd = bilby.gw.detector.PowerSpectralDensity.from_aligo() + expected_filename = "aLIGO_ZERO_DET_high_P_psd.txt" + expected = bilby.gw.detector.PowerSpectralDensity(psd_file=expected_filename) + actual_filename = psd.psd_file.split("/")[-1] + self.assertEqual(expected_filename, actual_filename) + self.assertTrue(np.allclose(expected.psd_array, psd.psd_array, atol=1e-60)) + self.assertTrue(np.array_equal(expected.asd_array, psd.asd_array)) + + def test_check_file_psd_file_set_to_asd_file(self): + logger = logging.getLogger("bilby") + m = MagicMock() + logger.warning = m + _ = bilby.gw.detector.PowerSpectralDensity(psd_file=self.asd_file) + self.assertEqual(4, m.call_count) + + def test_check_file_not_called_psd_file_set_to_psd_file(self): + logger = logging.getLogger("bilby") + m = MagicMock() + logger.warning = m + _ = bilby.gw.detector.PowerSpectralDensity(psd_file=self.psd_file) + self.assertEqual(0, m.call_count) + + def test_check_file_asd_file_set_to_psd_file(self): + logger = logging.getLogger("bilby") + m = MagicMock() + logger.warning = m + _ = bilby.gw.detector.PowerSpectralDensity(asd_file=self.psd_file) + self.assertEqual(4, m.call_count) + + def test_check_file_not_called_asd_file_set_to_asd_file(self): + logger = logging.getLogger("bilby") + m = MagicMock() + logger.warning = m + _ = bilby.gw.detector.PowerSpectralDensity(asd_file=self.asd_file) + self.assertEqual(0, m.call_count) + + def test_from_frame_file(self): + expected_frequency_array = np.array([1.0, 2.0, 3.0]) + expected_psd_array = np.array([16.0, 25.0, 36.0]) + with mock.patch( + "bilby.gw.detector.InterferometerStrainData.set_from_frame_file" + ) as _: + with mock.patch( + "bilby.gw.detector.InterferometerStrainData.create_power_spectral_density" + ) as n: + n.return_value = expected_frequency_array, expected_psd_array + psd = bilby.gw.detector.PowerSpectralDensity.from_frame_file( + frame_file=self.asd_file, psd_start_time=0, psd_duration=4 + ) + self.assertTrue( + np.array_equal(expected_frequency_array, psd.frequency_array) + ) + self.assertTrue(np.array_equal(expected_psd_array, psd.psd_array)) + + def test_repr(self): + psd = bilby.gw.detector.PowerSpectralDensity(psd_file=self.psd_file) + expected = "PowerSpectralDensity(psd_file='{}', asd_file='{}')".format( + self.psd_file, None + ) + self.assertEqual(expected, repr(psd)) + + +class TestPowerSpectralDensityEquals(unittest.TestCase): + def setUp(self): + self.psd_from_file_1 = bilby.gw.detector.PowerSpectralDensity.from_aligo() + self.psd_from_file_2 = bilby.gw.detector.PowerSpectralDensity.from_aligo() + self.frequency_array = np.linspace(1, 100) + self.psd_array = np.linspace(1, 100) + self.psd_from_array_1 = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_array( + frequency_array=self.frequency_array, psd_array=self.psd_array + ) + self.psd_from_array_2 = bilby.gw.detector.PowerSpectralDensity.from_power_spectral_density_array( + frequency_array=self.frequency_array, psd_array=self.psd_array + ) + + def tearDown(self): + del self.psd_from_file_1 + del self.psd_from_file_2 + del self.frequency_array + del self.psd_array + del self.psd_from_array_1 + del self.psd_from_array_2 + + def test_eq_true_from_array(self): + self.assertEqual(self.psd_from_array_1, self.psd_from_array_2) + + def test_eq_true_from_file(self): + self.assertEqual(self.psd_from_file_1, self.psd_from_file_2) + + def test_eq_false_different_psd_file_name(self): + self.psd_from_file_1._psd_file = "some_other_name" + self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) + + def test_eq_false_different_asd_file_name(self): + self.psd_from_file_1._psd_file = None + self.psd_from_file_2._psd_file = None + self.psd_from_file_1._asd_file = "some_name" + self.psd_from_file_2._asd_file = "some_other_name" + self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) + + def test_eq_false_different_frequency_array(self): + self.psd_from_file_1.frequency_array[0] = 0.5 + self.psd_from_array_1.frequency_array[0] = 0.5 + self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) + self.assertNotEqual(self.psd_from_array_1, self.psd_from_array_2) + + def test_eq_false_different_psd(self): + self.psd_from_file_1.psd_array[0] = 0.53544321 + self.psd_from_array_1.psd_array[0] = 0.53544321 + self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) + self.assertNotEqual(self.psd_from_array_1, self.psd_from_array_2) + + def test_eq_false_different_asd(self): + self.psd_from_file_1.asd_array[0] = 0.53544321 + self.psd_from_array_1.asd_array[0] = 0.53544321 + self.assertNotEqual(self.psd_from_file_1, self.psd_from_file_2) + self.assertNotEqual(self.psd_from_array_1, self.psd_from_array_2) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/gw/detector/strain_data_test.py b/test/gw/detector/strain_data_test.py new file mode 100644 index 0000000000000000000000000000000000000000..a11e347df563b96afdde5e025abc47974a5fc989 --- /dev/null +++ b/test/gw/detector/strain_data_test.py @@ -0,0 +1,320 @@ +import unittest + +import mock +import numpy as np +import scipy.signal +from mock import patch + +import bilby + + +class TestInterferometerStrainData(unittest.TestCase): + def setUp(self): + self.minimum_frequency = 10 + self.maximum_frequency = 20 + self.ifosd = bilby.gw.detector.InterferometerStrainData( + minimum_frequency=self.minimum_frequency, + maximum_frequency=self.maximum_frequency, + ) + + def tearDown(self): + del self.minimum_frequency + del self.maximum_frequency + del self.ifosd + + def test_frequency_mask(self): + self.minimum_frequency = 10 + self.maximum_frequency = 20 + with mock.patch("bilby.core.utils.create_frequency_series") as m: + m.return_value = np.array([5, 15, 25]) + self.ifosd.set_from_frequency_domain_strain( + frequency_domain_strain=np.array([0, 1, 2]), + frequency_array=np.array([5, 15, 25]), + ) + self.assertTrue( + np.array_equal(self.ifosd.frequency_mask, [False, True, False]) + ) + + def test_set_data_fails(self): + with mock.patch("bilby.core.utils.create_frequency_series") as m: + m.return_value = [1, 2, 3] + with self.assertRaises(ValueError): + self.ifosd.set_from_frequency_domain_strain( + frequency_domain_strain=np.array([0, 1, 2]) + ) + + def test_set_data_fails_too_much(self): + with mock.patch("bilby.core.utils.create_frequency_series") as m: + m.return_value = [1, 2, 3] + with self.assertRaises(ValueError): + self.ifosd.set_from_frequency_domain_strain( + frequency_domain_strain=np.array([0, 1, 2]), + frequency_array=np.array([1, 2, 3]), + duration=3, + sampling_frequency=1, + ) + + def test_start_time_init(self): + with mock.patch("bilby.core.utils.create_frequency_series") as m: + m.return_value = [1, 2, 3] + duration = 3 + sampling_frequency = 1 + self.ifosd.set_from_frequency_domain_strain( + frequency_domain_strain=np.array([0, 1, 2]), + duration=duration, + sampling_frequency=sampling_frequency, + ) + self.assertTrue(self.ifosd.start_time == 0) + + def test_start_time_set(self): + with mock.patch("bilby.core.utils.create_frequency_series") as m: + m.return_value = [1, 2, 3] + duration = 3 + sampling_frequency = 1 + self.ifosd.set_from_frequency_domain_strain( + frequency_domain_strain=np.array([0, 1, 2]), + duration=duration, + sampling_frequency=sampling_frequency, + start_time=10, + ) + self.assertTrue(self.ifosd.start_time == 10) + + def test_time_array_frequency_array_consistency(self): + duration = 1 + sampling_frequency = 10 + time_array = bilby.core.utils.create_time_series( + sampling_frequency=sampling_frequency, duration=duration + ) + time_domain_strain = np.random.normal( + 0, duration - 1 / sampling_frequency, len(time_array) + ) + self.ifosd.roll_off = 0 + self.ifosd.set_from_time_domain_strain( + time_domain_strain=time_domain_strain, + duration=duration, + sampling_frequency=sampling_frequency, + ) + + frequency_domain_strain, freqs = bilby.core.utils.nfft( + time_domain_strain, sampling_frequency + ) + + self.assertTrue( + np.all( + self.ifosd.frequency_domain_strain + == frequency_domain_strain * self.ifosd.frequency_mask + ) + ) + + def test_time_within_data_before(self): + self.ifosd.start_time = 3 + self.ifosd.duration = 2 + self.assertFalse(self.ifosd.time_within_data(2)) + + def test_time_within_data_during(self): + self.ifosd.start_time = 3 + self.ifosd.duration = 2 + self.assertTrue(self.ifosd.time_within_data(3)) + self.assertTrue(self.ifosd.time_within_data(4)) + self.assertTrue(self.ifosd.time_within_data(5)) + + def test_time_within_data_after(self): + self.ifosd.start_time = 3 + self.ifosd.duration = 2 + self.assertFalse(self.ifosd.time_within_data(6)) + + def test_time_domain_window_no_roll_off_no_alpha(self): + self.ifosd._time_domain_strain = np.array([3]) + self.ifosd.duration = 5 + self.ifosd.roll_off = 2 + expected_window = scipy.signal.windows.tukey( + len(self.ifosd._time_domain_strain), alpha=self.ifosd.alpha + ) + self.assertEqual(expected_window, self.ifosd.time_domain_window()) + self.assertEqual(np.mean(expected_window ** 2), self.ifosd.window_factor) + + def test_time_domain_window_sets_roll_off_directly(self): + self.ifosd._time_domain_strain = np.array([3]) + self.ifosd.duration = 5 + self.ifosd.roll_off = 2 + expected_roll_off = 6 + self.ifosd.time_domain_window(roll_off=expected_roll_off) + self.assertEqual(expected_roll_off, self.ifosd.roll_off) + + def test_time_domain_window_sets_roll_off_indirectly(self): + self.ifosd._time_domain_strain = np.array([3]) + self.ifosd.duration = 5 + self.ifosd.roll_off = 2 + alpha = 4 + expected_roll_off = alpha * self.ifosd.duration / 2 + self.ifosd.time_domain_window(alpha=alpha) + self.assertEqual(expected_roll_off, self.ifosd.roll_off) + + def test_time_domain_strain_when_set(self): + expected_strain = 5 + self.ifosd._time_domain_strain = expected_strain + self.assertEqual(expected_strain, self.ifosd.time_domain_strain) + + @patch("bilby.core.utils.infft") + def test_time_domain_strain_from_frequency_domain_strain(self, m): + m.return_value = 5 + self.ifosd.sampling_frequency = 200 + self.ifosd.duration = 4 + self.ifosd.sampling_frequency = 123 + self.ifosd.frequency_domain_strain = self.ifosd.frequency_array + self.assertEqual(m.return_value, self.ifosd.time_domain_strain) + + def test_time_domain_strain_not_set(self): + self.ifosd._time_domain_strain = None + self.ifosd._frequency_domain_strain = None + with self.assertRaises(ValueError): + _ = self.ifosd.time_domain_strain + + def test_frequency_domain_strain_when_set(self): + self.ifosd.sampling_frequency = 200 + self.ifosd.duration = 4 + expected_strain = self.ifosd.frequency_array * self.ifosd.frequency_mask + self.ifosd._frequency_domain_strain = expected_strain + self.assertTrue( + np.array_equal(expected_strain, self.ifosd.frequency_domain_strain) + ) + + @patch("bilby.core.utils.nfft") + def test_frequency_domain_strain_from_frequency_domain_strain(self, m): + self.ifosd.start_time = 0 + self.ifosd.duration = 4 + self.ifosd.sampling_frequency = 200 + m.return_value = self.ifosd.frequency_array, self.ifosd.frequency_array + self.ifosd._time_domain_strain = self.ifosd.time_array + self.assertTrue( + np.array_equal( + self.ifosd.frequency_array * self.ifosd.frequency_mask, + self.ifosd.frequency_domain_strain, + ) + ) + + def test_frequency_domain_strain_not_set(self): + self.ifosd._time_domain_strain = None + self.ifosd._frequency_domain_strain = None + with self.assertRaises(ValueError): + _ = self.ifosd.frequency_domain_strain + + def test_set_frequency_domain_strain(self): + self.ifosd.duration = 4 + self.ifosd.sampling_frequency = 200 + self.ifosd.frequency_domain_strain = np.ones(len(self.ifosd.frequency_array)) + self.assertTrue( + np.array_equal( + np.ones(len(self.ifosd.frequency_array)), + self.ifosd._frequency_domain_strain, + ) + ) + + def test_set_frequency_domain_strain_wrong_length(self): + self.ifosd.duration = 4 + self.ifosd.sampling_frequency = 200 + with self.assertRaises(ValueError): + self.ifosd.frequency_domain_strain = np.array([1]) + + +class TestInterferometerStrainDataEquals(unittest.TestCase): + def setUp(self): + self.minimum_frequency = 10 + self.maximum_frequency = 20 + self.roll_off = 0.2 + self.sampling_frequency = 100 + self.duration = 2 + self.frequency_array = bilby.utils.create_frequency_series( + sampling_frequency=self.sampling_frequency, duration=self.duration + ) + self.strain = self.frequency_array + self.ifosd_1 = bilby.gw.detector.InterferometerStrainData( + minimum_frequency=self.minimum_frequency, + maximum_frequency=self.maximum_frequency, + roll_off=self.roll_off, + ) + self.ifosd_2 = bilby.gw.detector.InterferometerStrainData( + minimum_frequency=self.minimum_frequency, + maximum_frequency=self.maximum_frequency, + roll_off=self.roll_off, + ) + self.ifosd_1.set_from_frequency_domain_strain( + frequency_domain_strain=self.strain, frequency_array=self.frequency_array + ) + self.ifosd_2.set_from_frequency_domain_strain( + frequency_domain_strain=self.strain, frequency_array=self.frequency_array + ) + + def tearDown(self): + del self.minimum_frequency + del self.maximum_frequency + del self.roll_off + del self.sampling_frequency + del self.duration + del self.frequency_array + del self.strain + del self.ifosd_1 + del self.ifosd_2 + + def test_eq_true(self): + self.assertEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_minimum_frequency(self): + self.ifosd_1.minimum_frequency -= 1 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_maximum_frequency(self): + self.ifosd_1.maximum_frequency -= 1 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_roll_off(self): + self.ifosd_1.roll_off -= 0.1 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_window_factor(self): + self.ifosd_1.roll_off -= 0.1 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_sampling_frequency(self): + self.ifosd_1.sampling_frequency *= 2 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_sampling_duration(self): + self.ifosd_1.duration *= 2 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_start_time(self): + self.ifosd_1.start_time -= 0.1 + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_frequency_array(self): + new_frequency_array = bilby.utils.create_frequency_series( + sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 + ) + self.ifosd_1.frequency_array = new_frequency_array + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_frequency_domain_strain(self): + new_strain = bilby.utils.create_frequency_series( + sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 + ) + self.ifosd_1._frequency_domain_strain = new_strain + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_time_array(self): + new_time_array = bilby.utils.create_time_series( + sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 + ) + self.ifosd_1.time_array = new_time_array + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + def test_eq_different_time_domain_strain(self): + new_strain = bilby.utils.create_time_series( + sampling_frequency=self.sampling_frequency / 2, duration=self.duration * 2 + ) + self.ifosd_1._time_domain_strain = new_strain + self.assertNotEqual(self.ifosd_1, self.ifosd_2) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/gw/eos/__init__.py b/test/gw/eos/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/gw_eos_test.py b/test/gw/eos/eos_test.py similarity index 100% rename from test/gw_eos_test.py rename to test/gw/eos/eos_test.py diff --git a/test/gw_example_test.py b/test/gw/example_test.py similarity index 100% rename from test/gw_example_test.py rename to test/gw/example_test.py diff --git a/test/gw_likelihood_test.py b/test/gw/likelihood_test.py similarity index 100% rename from test/gw_likelihood_test.py rename to test/gw/likelihood_test.py diff --git a/test/make_standard_data.py b/test/gw/make_standard_data.py similarity index 100% rename from test/make_standard_data.py rename to test/gw/make_standard_data.py diff --git a/test/noise_realisation_test.py b/test/gw/noise_realisation_test.py similarity index 100% rename from test/noise_realisation_test.py rename to test/gw/noise_realisation_test.py diff --git a/test/other_test.py b/test/gw/other_test.py similarity index 100% rename from test/other_test.py rename to test/gw/other_test.py diff --git a/test/gw_plot_test.py b/test/gw/plot_test.py similarity index 100% rename from test/gw_plot_test.py rename to test/gw/plot_test.py diff --git a/test/gw/prior_files/GW150914_testing_skymap.fits b/test/gw/prior_files/GW150914_testing_skymap.fits new file mode 100644 index 0000000000000000000000000000000000000000..81c03413aa124da3f465ca84597070b35cf92ac4 Binary files /dev/null and b/test/gw/prior_files/GW150914_testing_skymap.fits differ diff --git a/test/gw/prior_files/aligned_spins_bbh.prior b/test/gw/prior_files/aligned_spins_bbh.prior new file mode 100644 index 0000000000000000000000000000000000000000..4a15f7a3a14f85ee65385d6ca30263ed7c5c6ca9 --- /dev/null +++ b/test/gw/prior_files/aligned_spins_bbh.prior @@ -0,0 +1,16 @@ +# These are the default priors we use for BBH systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=5, maximum=100) +mass_2 = Constraint(name='mass_2', minimum=5, maximum=100) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=25, maximum=100) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +chi_1 = bilby.gw.prior.AlignedSpin(name='chi_1', a_prior=Uniform(minimum=0, maximum=0.99)) +chi_2 = bilby.gw.prior.AlignedSpin(name='chi_2', a_prior=Uniform(minimum=0, maximum=0.99)) diff --git a/test/gw/prior_files/aligned_spins_bbh_tides_on.prior b/test/gw/prior_files/aligned_spins_bbh_tides_on.prior new file mode 100644 index 0000000000000000000000000000000000000000..4fc71953eacb34b364e6a55b6a3d521ee7609b81 --- /dev/null +++ b/test/gw/prior_files/aligned_spins_bbh_tides_on.prior @@ -0,0 +1,18 @@ +# These are the default priors we use for BBH systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=5, maximum=100) +mass_2 = Constraint(name='mass_2', minimum=5, maximum=100) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=25, maximum=100) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +chi_1 = bilby.gw.prior.AlignedSpin(name='chi_1', a_prior=Uniform(minimum=0, maximum=0.99)) +chi_2 = bilby.gw.prior.AlignedSpin(name='chi_2', a_prior=Uniform(minimum=0, maximum=0.99)) +lambda_1 = Uniform(name='lambda_1', minimum=0, maximum=5000) +lambda_2 = Uniform(name='lambda_2', minimum=0, maximum=5000) diff --git a/test/gw/prior_files/aligned_spins_bns.prior b/test/gw/prior_files/aligned_spins_bns.prior new file mode 100644 index 0000000000000000000000000000000000000000..a524de77759b93fbaa7772b17fce573d35be69bd --- /dev/null +++ b/test/gw/prior_files/aligned_spins_bns.prior @@ -0,0 +1,16 @@ +# These are the default priors we use for BNS systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=0.5, maximum=5) +mass_2 = Constraint(name='mass_2', minimum=0.5, maximum=5) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=0.4, maximum=4.4) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +chi_1 = bilby.gw.prior.AlignedSpin(name='chi_1', a_prior=Uniform(minimum=0, maximum=0.99)) +chi_2 = bilby.gw.prior.AlignedSpin(name='chi_2', a_prior=Uniform(minimum=0, maximum=0.99)) diff --git a/test/gw/prior_files/aligned_spins_bns_tides_on.prior b/test/gw/prior_files/aligned_spins_bns_tides_on.prior new file mode 100644 index 0000000000000000000000000000000000000000..dcb30189b9c2867f35c98f8c9580b62c491d3dd4 --- /dev/null +++ b/test/gw/prior_files/aligned_spins_bns_tides_on.prior @@ -0,0 +1,18 @@ +# These are the default priors we use for BNS systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=0.5, maximum=5) +mass_2 = Constraint(name='mass_2', minimum=0.5, maximum=5) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=0.4, maximum=4.4) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +chi_1 = bilby.gw.prior.AlignedSpin(name='chi_1', a_prior=Uniform(minimum=0, maximum=0.99)) +chi_2 = bilby.gw.prior.AlignedSpin(name='chi_2', a_prior=Uniform(minimum=0, maximum=0.99)) +lambda_1 = Uniform(name='lambda_1', minimum=0, maximum=5000) +lambda_2 = Uniform(name='lambda_2', minimum=0, maximum=5000) diff --git a/test/gw/prior_files/precessing_spins_bbh.prior b/test/gw/prior_files/precessing_spins_bbh.prior new file mode 100644 index 0000000000000000000000000000000000000000..27094d689666e2a6e195e36f4b795c9feb3347c3 --- /dev/null +++ b/test/gw/prior_files/precessing_spins_bbh.prior @@ -0,0 +1,20 @@ +# These are the default priors we use for BBH systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=5, maximum=100) +mass_2 = Constraint(name='mass_2', minimum=5, maximum=100) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=25, maximum=100) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +a_1 = Uniform(name='a_1', minimum=0, maximum=0.99) +a_2 = Uniform(name='a_2', minimum=0, maximum=0.99) +tilt_1 = Sine(name='tilt_1') +tilt_2 = Sine(name='tilt_2') +phi_12 = Uniform(name='phi_12', minimum=0, maximum=2 * np.pi, boundary='periodic') +phi_jl = Uniform(name='phi_jl', minimum=0, maximum=2 * np.pi, boundary='periodic') diff --git a/test/gw/prior_files/precessing_spins_bbh_tides_on.prior b/test/gw/prior_files/precessing_spins_bbh_tides_on.prior new file mode 100644 index 0000000000000000000000000000000000000000..81da0482f26708a1cf5cb5d11fdd61f6fc2654b4 --- /dev/null +++ b/test/gw/prior_files/precessing_spins_bbh_tides_on.prior @@ -0,0 +1,22 @@ +# These are the default priors we use for BBH systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=5, maximum=100) +mass_2 = Constraint(name='mass_2', minimum=5, maximum=100) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=25, maximum=100) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +a_1 = Uniform(name='a_1', minimum=0, maximum=0.99) +a_2 = Uniform(name='a_2', minimum=0, maximum=0.99) +tilt_1 = Sine(name='tilt_1') +tilt_2 = Sine(name='tilt_2') +phi_12 = Uniform(name='phi_12', minimum=0, maximum=2 * np.pi, boundary='periodic') +phi_jl = Uniform(name='phi_jl', minimum=0, maximum=2 * np.pi, boundary='periodic') +lambda_1 = Uniform(name='lambda_1', minimum=0, maximum=5000) +lambda_2 = Uniform(name='lambda_2', minimum=0, maximum=5000) diff --git a/test/gw/prior_files/precessing_spins_bns.prior b/test/gw/prior_files/precessing_spins_bns.prior new file mode 100644 index 0000000000000000000000000000000000000000..cb663dbbe1eb90badc3dcb066ecef85863a26801 --- /dev/null +++ b/test/gw/prior_files/precessing_spins_bns.prior @@ -0,0 +1,20 @@ +# These are the default priors we use for BNS systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=0.5, maximum=5) +mass_2 = Constraint(name='mass_2', minimum=0.5, maximum=5) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=0.4, maximum=4.4) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +a_1 = Uniform(name='a_1', minimum=0, maximum=0.99) +a_2 = Uniform(name='a_2', minimum=0, maximum=0.99) +tilt_1 = Sine(name='tilt_1') +tilt_2 = Sine(name='tilt_2') +phi_12 = Uniform(name='phi_12', minimum=0, maximum=2 * np.pi, boundary='periodic') +phi_jl = Uniform(name='phi_jl', minimum=0, maximum=2 * np.pi, boundary='periodic') diff --git a/test/gw/prior_files/precessing_spins_bns_tides_on.prior b/test/gw/prior_files/precessing_spins_bns_tides_on.prior new file mode 100644 index 0000000000000000000000000000000000000000..d0c7e875c7d9ab8ad9dfd0fb1b41dc2562d43855 --- /dev/null +++ b/test/gw/prior_files/precessing_spins_bns_tides_on.prior @@ -0,0 +1,22 @@ +# These are the default priors we use for BNS systems. +# Note that you may wish to use more specific mass and distance parameters. +# These commands are all known to bilby.gw.prior. +# Lines beginning "#" are ignored. +mass_1 = Constraint(name='mass_1', minimum=0.5, maximum=5) +mass_2 = Constraint(name='mass_2', minimum=0.5, maximum=5) +mass_ratio = Uniform(name='mass_ratio', minimum=0.125, maximum=1) +chirp_mass = Uniform(name='chirp_mass', minimum=0.4, maximum=4.4) +luminosity_distance = bilby.gw.prior.UniformSourceFrame(name='luminosity_distance', minimum=1e2, maximum=5e3) +dec = Cosine(name='dec') +ra = Uniform(name='ra', minimum=0, maximum=2 * np.pi, boundary='periodic') +theta_jn = Sine(name='theta_jn') +psi = Uniform(name='psi', minimum=0, maximum=np.pi, boundary='periodic') +phase = Uniform(name='phase', minimum=0, maximum=2 * np.pi, boundary='periodic') +a_1 = Uniform(name='a_1', minimum=0, maximum=0.99) +a_2 = Uniform(name='a_2', minimum=0, maximum=0.99) +tilt_1 = Sine(name='tilt_1') +tilt_2 = Sine(name='tilt_2') +phi_12 = Uniform(name='phi_12', minimum=0, maximum=2 * np.pi, boundary='periodic') +phi_jl = Uniform(name='phi_jl', minimum=0, maximum=2 * np.pi, boundary='periodic') +lambda_1 = Uniform(name='lambda_1', minimum=0, maximum=5000) +lambda_2 = Uniform(name='lambda_2', minimum=0, maximum=5000) diff --git a/test/gw/prior_files/prior_with_floats.prior b/test/gw/prior_files/prior_with_floats.prior new file mode 100644 index 0000000000000000000000000000000000000000..d062cf553ecb8aa0eea49c151f5f4f4097afe7ff --- /dev/null +++ b/test/gw/prior_files/prior_with_floats.prior @@ -0,0 +1,2 @@ +mass_1 = Uniform(name='mass_1', minimum=5, maximum=100, unit='$M_{\odot}$', boundary=None) +mass_2 = 20 diff --git a/test/gw/prior_files/prior_with_parentheses.prior b/test/gw/prior_files/prior_with_parentheses.prior new file mode 100644 index 0000000000000000000000000000000000000000..5296497f70f5b51ac0fde4c6633a8a82e9d5ca44 --- /dev/null +++ b/test/gw/prior_files/prior_with_parentheses.prior @@ -0,0 +1,2 @@ +logA = Uniform(name='logA', minimum=10, maximum=20, latex_label=r'$\log(A_{0})$') +logB = Uniform(name='logB', minimum=10, maximum=20, latex_label='$\log(B_{0})$') diff --git a/test/gw_prior_test.py b/test/gw/prior_test.py similarity index 100% rename from test/gw_prior_test.py rename to test/gw/prior_test.py diff --git a/test/gw_result_test.py b/test/gw/result_test.py similarity index 100% rename from test/gw_result_test.py rename to test/gw/result_test.py diff --git a/test/sample_from_the_prior_test.py b/test/gw/sample_from_the_prior_test.py similarity index 100% rename from test/sample_from_the_prior_test.py rename to test/gw/sample_from_the_prior_test.py diff --git a/test/gw/sampler/__init__.py b/test/gw/sampler/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/gw/sampler/proposal_test.py b/test/gw/sampler/proposal_test.py new file mode 100644 index 0000000000000000000000000000000000000000..282ea61f6cc0c653e523bf242c9b446a8ae53212 --- /dev/null +++ b/test/gw/sampler/proposal_test.py @@ -0,0 +1,132 @@ +import unittest +import mock + +import numpy as np + +import bilby.gw.sampler.proposal +from bilby.core import prior +from bilby.core.sampler import proposal + + +class TestSkyLocationWanderJump(unittest.TestCase): + def setUp(self): + self.priors = prior.PriorDict( + dict( + ra=prior.Uniform(minimum=0.0, maximum=2 * np.pi, boundary="periodic"), + dec=prior.Uniform(minimum=0.0, maximum=np.pi, boundary="reflective"), + ) + ) + self.jump_proposal = bilby.gw.sampler.proposal.SkyLocationWanderJump( + priors=self.priors + ) + + def tearDown(self): + del self.priors + del self.jump_proposal + + def test_jump_proposal_call_without_inverse_temperature(self): + with mock.patch("random.gauss") as m: + m.return_value = 1 + sample = proposal.Sample(dict(ra=0.2, dec=-0.5)) + expected = proposal.Sample(dict(ra=1.2, dec=0.5)) + new_sample = self.jump_proposal(sample) + for key, value in new_sample.items(): + self.assertAlmostEqual(expected[key], value) + m.assert_called_with(0, 1.0 / 2 / np.pi) + + def test_jump_proposal_call_with_inverse_temperature(self): + with mock.patch("random.gauss") as m: + m.return_value = 1 + sample = proposal.Sample(dict(ra=0.2, dec=-0.5)) + expected = proposal.Sample(dict(ra=1.2, dec=0.5)) + new_sample = self.jump_proposal(sample, inverse_temperature=2.0) + for key, value in new_sample.items(): + self.assertAlmostEqual(expected[key], value) + m.assert_called_with(0, np.sqrt(1 / 2.0) / 2 / np.pi) + + +class TestCorrelatedPolarisationPhaseJump(unittest.TestCase): + def setUp(self): + self.priors = prior.PriorDict( + dict( + phase=prior.Uniform(minimum=0.0, maximum=2 * np.pi), + psi=prior.Uniform(minimum=0.0, maximum=np.pi), + ) + ) + self.jump_proposal = bilby.gw.sampler.proposal.CorrelatedPolarisationPhaseJump( + priors=self.priors + ) + + def tearDown(self): + del self.priors + del self.jump_proposal + + def test_jump_proposal_call_case_1(self): + with mock.patch("random.random") as m: + m.return_value = 0.3 + sample = proposal.Sample(dict(phase=0.2, psi=0.5)) + alpha = 3.0 * np.pi * 0.3 + beta = 0.3 + expected = proposal.Sample( + dict(phase=0.5 * (alpha - beta), psi=0.5 * (alpha + beta)) + ) + self.assertEqual(expected, self.jump_proposal(sample, coordinates=None)) + + def test_jump_proposal_call_case_2(self): + with mock.patch("random.random") as m: + m.return_value = 0.7 + sample = proposal.Sample(dict(phase=0.2, psi=0.5)) + alpha = 0.7 + beta = 3.0 * np.pi * 0.7 - 2 * np.pi + expected = proposal.Sample( + dict(phase=0.5 * (alpha - beta), psi=0.5 * (alpha + beta)) + ) + self.assertEqual(expected, self.jump_proposal(sample)) + + +class TestPolarisationPhaseJump(unittest.TestCase): + def setUp(self): + self.priors = prior.PriorDict( + dict( + phase=prior.Uniform(minimum=0.0, maximum=2 * np.pi), + psi=prior.Uniform(minimum=0.0, maximum=np.pi), + ) + ) + self.jump_proposal = bilby.gw.sampler.proposal.PolarisationPhaseJump( + priors=self.priors + ) + + def tearDown(self): + del self.priors + del self.jump_proposal + + def test_jump_proposal_call(self): + sample = proposal.Sample(dict(phase=0.2, psi=0.5)) + expected = proposal.Sample(dict(phase=0.2 + np.pi, psi=0.5 + np.pi / 2)) + self.assertEqual(expected, self.jump_proposal(sample)) + + +class TestDrawFlatPrior(unittest.TestCase): + def setUp(self): + self.priors = prior.PriorDict( + dict( + phase=prior.Uniform(minimum=0.0, maximum=2 * np.pi), + psi=prior.Cosine(minimum=0.0, maximum=np.pi), + ) + ) + self.jump_proposal = proposal.DrawFlatPrior(priors=self.priors) + + def tearDown(self): + del self.priors + del self.jump_proposal + + def test_jump_proposal_call(self): + with mock.patch("bilby.core.prior.Uniform.sample") as m: + m.return_value = 0.3 + sample = proposal.Sample(dict(phase=0.2, psi=0.5)) + expected = proposal.Sample(dict(phase=0.3, psi=0.3)) + self.assertEqual(expected, self.jump_proposal(sample)) + + +if __name__ == "__main__": + unittest.main() diff --git a/test/gw_source_test.py b/test/gw/source_test.py similarity index 100% rename from test/gw_source_test.py rename to test/gw/source_test.py diff --git a/test/gw_utils_test.py b/test/gw/utils_test.py similarity index 100% rename from test/gw_utils_test.py rename to test/gw/utils_test.py diff --git a/test/waveform_generator_test.py b/test/gw/waveform_generator_test.py similarity index 100% rename from test/waveform_generator_test.py rename to test/gw/waveform_generator_test.py diff --git a/test/hyper/__init__.py b/test/hyper/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/test/hyper_pe_test.py b/test/hyper/hyper_pe_test.py similarity index 100% rename from test/hyper_pe_test.py rename to test/hyper/hyper_pe_test.py diff --git a/test/sampler_test.py b/test/sampler_test.py deleted file mode 100644 index f03fc97d00265993dd1375825139e213add14ad7..0000000000000000000000000000000000000000 --- a/test/sampler_test.py +++ /dev/null @@ -1,1057 +0,0 @@ -from __future__ import absolute_import -import bilby -from bilby.core import prior -import unittest -from mock import MagicMock -import numpy as np -import os -import shutil -import copy - - -class TestSampler(unittest.TestCase): - def setUp(self): - likelihood = bilby.core.likelihood.Likelihood() - likelihood.parameters = dict(a=1, b=2, c=3) - delta_prior = prior.DeltaFunction(peak=0) - delta_prior.rescale = MagicMock(return_value=prior.DeltaFunction(peak=1)) - delta_prior.prob = MagicMock(return_value=1) - delta_prior.sample = MagicMock(return_value=0) - uniform_prior = prior.Uniform(0, 1) - uniform_prior.rescale = MagicMock(return_value=prior.Uniform(0, 2)) - uniform_prior.prob = MagicMock(return_value=1) - uniform_prior.sample = MagicMock(return_value=0.5) - - priors = dict(a=delta_prior, b="string", c=uniform_prior) - likelihood.log_likelihood_ratio = MagicMock(return_value=1) - likelihood.log_likelihood = MagicMock(return_value=2) - test_directory = "test_directory" - if os.path.isdir(test_directory): - os.rmdir(test_directory) - self.sampler = bilby.core.sampler.Sampler( - likelihood=likelihood, - priors=priors, - outdir=test_directory, - use_ratio=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.sampler - - def test_search_parameter_keys(self): - expected_search_parameter_keys = ["c"] - self.assertListEqual( - self.sampler.search_parameter_keys, expected_search_parameter_keys - ) - - def test_fixed_parameter_keys(self): - expected_fixed_parameter_keys = ["a"] - self.assertListEqual( - self.sampler.fixed_parameter_keys, expected_fixed_parameter_keys - ) - - def test_ndim(self): - self.assertEqual(self.sampler.ndim, 1) - - def test_kwargs(self): - self.assertDictEqual(self.sampler.kwargs, {}) - - def test_label(self): - self.assertEqual(self.sampler.label, "label") - - def test_prior_transform_transforms_search_parameter_keys(self): - self.sampler.prior_transform([0]) - expected_prior = prior.Uniform(0, 1) - self.assertListEqual( - [self.sampler.priors["c"].minimum, self.sampler.priors["c"].maximum], - [expected_prior.minimum, expected_prior.maximum], - ) - - def test_prior_transform_does_not_transform_fixed_parameter_keys(self): - self.sampler.prior_transform([0]) - self.assertEqual( - self.sampler.priors["a"].peak, prior.DeltaFunction(peak=0).peak - ) - - def test_log_prior(self): - self.assertEqual(self.sampler.log_prior({1}), 0.0) - - def test_log_likelihood_with_use_ratio(self): - self.sampler.use_ratio = True - self.assertEqual(self.sampler.log_likelihood([0]), 1) - - def test_log_likelihood_without_use_ratio(self): - self.sampler.use_ratio = False - self.assertEqual(self.sampler.log_likelihood([0]), 2) - - def test_log_likelihood_correctly_sets_parameters(self): - expected_dict = dict(a=0, b=2, c=0) - _ = self.sampler.log_likelihood([0]) - self.assertDictEqual(self.sampler.likelihood.parameters, expected_dict) - - def test_get_random_draw(self): - self.assertEqual(self.sampler.get_random_draw_from_prior(), np.array([0.5])) - - def test_base_run_sampler(self): - sampler_copy = copy.copy(self.sampler) - self.sampler.run_sampler() - self.assertDictEqual(sampler_copy.__dict__, self.sampler.__dict__) - - -class TestCPNest(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Cpnest( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - verbose=3, - nthreads=1, - nlive=500, - maxmcmc=1000, - seed=None, - poolsize=100, - nhamiltonian=0, - resume=True, - output="outdir/cpnest_label/", - proposals=None, - n_periodic_checkpoint=8000, - ) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - verbose=3, - nthreads=1, - nlive=250, - maxmcmc=1000, - seed=None, - poolsize=100, - nhamiltonian=0, - resume=True, - output="outdir/cpnest_label/", - proposals=None, - n_periodic_checkpoint=8000, - ) - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["nlive"] - new_kwargs[equiv] = 250 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestDynesty(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Dynesty( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - bound="multi", - sample="rwalk", - periodic=None, - reflective=None, - verbose=True, - check_point_delta_t=600, - nlive=1000, - first_update=None, - npdim=None, - rstate=None, - queue_size=1, - pool=None, - use_pool=None, - live_points=None, - logl_args=None, - logl_kwargs=None, - ptform_args=None, - ptform_kwargs=None, - enlarge=1.5, - bootstrap=None, - vol_dec=0.5, - vol_check=8.0, - facc=0.2, - slices=5, - dlogz=0.1, - maxiter=None, - maxcall=None, - logl_max=np.inf, - add_live=True, - print_progress=True, - save_bounds=False, - walks=100, - update_interval=600, - print_func="func", - n_effective=None, - maxmcmc=5000, - nact=5, - ) - self.sampler.kwargs[ - "print_func" - ] = "func" # set this manually as this is not testable otherwise - # DictEqual can't handle lists so we check these separately - self.assertEqual([], self.sampler.kwargs["periodic"]) - self.assertEqual([], self.sampler.kwargs["reflective"]) - self.sampler.kwargs["periodic"] = expected["periodic"] - self.sampler.kwargs["reflective"] = expected["reflective"] - for key in self.sampler.kwargs.keys(): - print( - "key={}, expected={}, actual={}".format( - key, expected[key], self.sampler.kwargs[key] - ) - ) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - bound="multi", - sample="rwalk", - periodic=[], - reflective=[], - verbose=True, - check_point_delta_t=600, - nlive=1000, - first_update=None, - npdim=None, - rstate=None, - queue_size=1, - pool=None, - use_pool=None, - live_points=None, - logl_args=None, - logl_kwargs=None, - ptform_args=None, - ptform_kwargs=None, - enlarge=1.5, - bootstrap=None, - vol_dec=0.5, - vol_check=8.0, - facc=0.2, - slices=5, - dlogz=0.1, - maxiter=None, - maxcall=None, - logl_max=np.inf, - add_live=True, - print_progress=True, - save_bounds=False, - walks=100, - update_interval=600, - print_func="func", - n_effective=None, - maxmcmc=5000, - nact=5, - ) - - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["nlive"] - new_kwargs[equiv] = 1000 - self.sampler.kwargs = new_kwargs - self.sampler.kwargs[ - "print_func" - ] = "func" # set this manually as this is not testable otherwise - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_prior_boundary(self): - self.priors["a"] = bilby.core.prior.Prior(boundary="periodic") - self.priors["b"] = bilby.core.prior.Prior(boundary="reflective") - self.priors["c"] = bilby.core.prior.Prior(boundary=None) - self.priors["d"] = bilby.core.prior.Prior(boundary="reflective") - self.priors["e"] = bilby.core.prior.Prior(boundary="periodic") - self.sampler = bilby.core.sampler.Dynesty( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - self.assertEqual([0, 4], self.sampler.kwargs["periodic"]) - self.assertEqual(self.sampler._periodic, self.sampler.kwargs["periodic"]) - self.assertEqual([1, 3], self.sampler.kwargs["reflective"]) - self.assertEqual(self.sampler._reflective, self.sampler.kwargs["reflective"]) - - -class TestEmcee(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Emcee( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - nwalkers=500, - a=2, - args=[], - kwargs={}, - postargs=None, - pool=None, - live_dangerously=False, - runtime_sortingfn=None, - lnprob0=None, - rstate0=None, - blobs0=None, - iterations=100, - thin=1, - storechain=True, - mh_proposal=None, - ) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - nwalkers=100, - a=2, - args=[], - kwargs={}, - postargs=None, - pool=None, - live_dangerously=False, - runtime_sortingfn=None, - lnprob0=None, - rstate0=None, - blobs0=None, - iterations=100, - thin=1, - storechain=True, - mh_proposal=None, - ) - for equiv in bilby.core.sampler.base_sampler.MCMCSampler.nwalkers_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["nwalkers"] - new_kwargs[equiv] = 100 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestKombine(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Kombine( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - nwalkers=500, - args=[], - pool=None, - transd=False, - lnpost0=None, - blob0=None, - iterations=500, - storechain=True, - processes=1, - update_interval=None, - kde=None, - kde_size=None, - spaces=None, - freeze_transd=False, - test_steps=16, - critical_pval=0.05, - max_steps=None, - burnin_verbose=False, - ) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - nwalkers=400, - args=[], - pool=None, - transd=False, - lnpost0=None, - blob0=None, - iterations=500, - storechain=True, - processes=1, - update_interval=None, - kde=None, - kde_size=None, - spaces=None, - freeze_transd=False, - test_steps=16, - critical_pval=0.05, - max_steps=None, - burnin_verbose=False, - ) - for equiv in bilby.core.sampler.base_sampler.MCMCSampler.nwalkers_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["nwalkers"] - new_kwargs[equiv] = 400 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestNestle(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Nestle( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - verbose=False, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - verbose=False, - method="multi", - npoints=500, - update_interval=None, - npdim=None, - maxiter=None, - maxcall=None, - dlogz=None, - decline_factor=None, - rstate=None, - callback=None, - steps=20, - enlarge=1.2, - ) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - verbose=False, - method="multi", - npoints=345, - update_interval=None, - npdim=None, - maxiter=None, - maxcall=None, - dlogz=None, - decline_factor=None, - rstate=None, - callback=None, - steps=20, - enlarge=1.2, - ) - self.sampler.kwargs["npoints"] = 123 - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["npoints"] - new_kwargs[equiv] = 345 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestPolyChord(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.PyPolyChord( - self.likelihood, - self.priors, - outdir="outdir", - label="polychord", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - use_polychord_defaults=False, - nlive=self.sampler.ndim * 25, - num_repeats=self.sampler.ndim * 5, - nprior=-1, - do_clustering=True, - feedback=1, - precision_criterion=0.001, - logzero=-1e30, - max_ndead=-1, - boost_posterior=0.0, - posteriors=True, - equals=True, - cluster_posteriors=True, - write_resume=True, - write_paramnames=False, - read_resume=True, - write_stats=True, - write_live=True, - write_dead=True, - write_prior=True, - compression_factor=np.exp(-1), - base_dir="outdir", - file_root="polychord", - seed=-1, - grade_dims=list([self.sampler.ndim]), - grade_frac=list([1.0] * len([self.sampler.ndim])), - nlives={}, - ) - self.sampler._setup_dynamic_defaults() - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - use_polychord_defaults=False, - nlive=123, - num_repeats=self.sampler.ndim * 5, - nprior=-1, - do_clustering=True, - feedback=1, - precision_criterion=0.001, - logzero=-1e30, - max_ndead=-1, - boost_posterior=0.0, - posteriors=True, - equals=True, - cluster_posteriors=True, - write_resume=True, - write_paramnames=False, - read_resume=True, - write_stats=True, - write_live=True, - write_dead=True, - write_prior=True, - compression_factor=np.exp(-1), - base_dir="outdir", - file_root="polychord", - seed=-1, - grade_dims=list([self.sampler.ndim]), - grade_frac=list([1.0] * len([self.sampler.ndim])), - nlives={}, - ) - self.sampler._setup_dynamic_defaults() - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["nlive"] - new_kwargs[equiv] = 123 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestPTEmcee(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Ptemcee( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - ntemps=20, - nwalkers=200, - Tmax=None, - betas=None, - a=2.0, - adaptation_lag=10000, - adaptation_time=100, - random=None, - adapt=True, - swap_ratios=False, - ) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - ntemps=20, - nwalkers=200, - Tmax=None, - betas=None, - a=2.0, - adaptation_lag=10000, - adaptation_time=100, - random=None, - adapt=True, - swap_ratios=False, - ) - for equiv in bilby.core.sampler.base_sampler.MCMCSampler.nwalkers_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["nwalkers"] - new_kwargs[equiv] = 200 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestPyMC3(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.sampler = bilby.core.sampler.Pymc3( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict( - draws=500, - step=None, - init="auto", - n_init=200000, - start=None, - trace=None, - chain_idx=0, - chains=2, - cores=1, - tune=500, - progressbar=True, - model=None, - nuts_kwargs=None, - step_kwargs=None, - random_seed=None, - discard_tuned_samples=True, - compute_convergence_checks=True, - ) - expected.update(self.sampler.default_nuts_kwargs) - expected.update(self.sampler.default_step_kwargs) - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - draws=500, - step=None, - init="auto", - n_init=200000, - start=None, - trace=None, - chain_idx=0, - chains=2, - cores=1, - tune=500, - progressbar=True, - model=None, - nuts_kwargs=None, - step_kwargs=None, - random_seed=None, - discard_tuned_samples=True, - compute_convergence_checks=True, - ) - expected.update(self.sampler.default_nuts_kwargs) - expected.update(self.sampler.default_step_kwargs) - self.sampler.kwargs["draws"] = 123 - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["draws"] - new_kwargs[equiv] = 500 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestPymultinest(unittest.TestCase): - def setUp(self): - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), b=bilby.core.prior.Uniform(0, 1)) - ) - self.priors["a"] = bilby.core.prior.Prior(boundary="periodic") - self.priors["b"] = bilby.core.prior.Prior(boundary="reflective") - self.sampler = bilby.core.sampler.Pymultinest( - self.likelihood, - self.priors, - outdir="outdir", - label="label", - use_ratio=False, - plot=False, - skip_import_verification=True, - ) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - - def test_default_kwargs(self): - expected = dict(importance_nested_sampling=False, resume=True, - verbose=True, sampling_efficiency='parameter', - n_live_points=500, n_params=2, - n_clustering_params=None, wrapped_params=None, - multimodal=True, const_efficiency_mode=False, - evidence_tolerance=0.5, - n_iter_before_update=100, null_log_evidence=-1e90, - max_modes=100, mode_tolerance=-1e90, seed=-1, - context=0, write_output=True, log_zero=-1e100, - max_iter=0, init_MPI=False, dump_callback='dumper') - self.sampler.kwargs['dump_callback'] = 'dumper' # Check like the dynesty print_func - self.assertListEqual([1, 0], self.sampler.kwargs['wrapped_params']) # Check this separately - self.sampler.kwargs['wrapped_params'] = None # The dict comparison can't handle lists - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict(importance_nested_sampling=False, resume=True, - verbose=True, sampling_efficiency='parameter', - n_live_points=123, n_params=2, - n_clustering_params=None, wrapped_params=None, - multimodal=True, const_efficiency_mode=False, - evidence_tolerance=0.5, - n_iter_before_update=100, null_log_evidence=-1e90, - max_modes=100, mode_tolerance=-1e90, seed=-1, - context=0, write_output=True, log_zero=-1e100, - max_iter=0, init_MPI=False, dump_callback='dumper') - - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs["n_live_points"] - new_kwargs[ - "wrapped_params" - ] = None # The dict comparison can't handle lists - new_kwargs['dump_callback'] = 'dumper' # Check this like Dynesty print_func - new_kwargs[equiv] = 123 - self.sampler.kwargs = new_kwargs - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestUltranest(unittest.TestCase): - - def setUp(self): - self.maxDiff = None - self.likelihood = MagicMock() - self.priors = bilby.core.prior.PriorDict( - dict(a=bilby.core.prior.Uniform(0, 1), - b=bilby.core.prior.Uniform(0, 1))) - self.priors["a"] = bilby.core.prior.Prior(boundary="periodic") - self.priors["b"] = bilby.core.prior.Prior(boundary="reflective") - self.sampler = bilby.core.sampler.Ultranest(self.likelihood, self.priors, - outdir="outdir", label="label", - use_ratio=False, plot=False, - skip_import_verification=True) - - def tearDown(self): - del self.likelihood - del self.priors - del self.sampler - shutil.rmtree("outdir") - - def test_default_kwargs(self): - expected = dict( - resume=True, - show_status=True, - num_live_points=None, - wrapped_params=None, - derived_param_names=None, - run_num=None, - vectorized=False, - num_test_samples=2, - draw_multiple=True, - num_bootstraps=30, - update_interval_iter=None, - update_interval_ncall=None, - log_interval=None, - dlogz=None, - max_iters=None, - update_interval_iter_fraction=0.2, - viz_callback=None, - dKL=0.5, - frac_remain=0.01, - Lepsilon=0.001, - min_ess=400, - max_ncalls=None, - max_num_improvement_loops=-1, - min_num_live_points=400, - cluster_num_live_points=40, - step_sampler=None, - ) - self.assertListEqual([1, 0], self.sampler.kwargs["wrapped_params"]) # Check this separately - self.sampler.kwargs["wrapped_params"] = None # The dict comparison can't handle lists - self.sampler.kwargs["derived_param_names"] = None - self.sampler.kwargs["viz_callback"] = None - self.assertDictEqual(expected, self.sampler.kwargs) - - def test_translate_kwargs(self): - expected = dict( - resume=True, - show_status=True, - num_live_points=123, - wrapped_params=None, - derived_param_names=None, - run_num=None, - vectorized=False, - num_test_samples=2, - draw_multiple=True, - num_bootstraps=30, - update_interval_iter=None, - update_interval_ncall=None, - log_interval=None, - dlogz=None, - max_iters=None, - update_interval_iter_fraction=0.2, - viz_callback=None, - dKL=0.5, - frac_remain=0.01, - Lepsilon=0.001, - min_ess=400, - max_ncalls=None, - max_num_improvement_loops=-1, - min_num_live_points=400, - cluster_num_live_points=40, - step_sampler=None, - ) - for equiv in bilby.core.sampler.base_sampler.NestedSampler.npoints_equiv_kwargs: - new_kwargs = self.sampler.kwargs.copy() - del new_kwargs['num_live_points'] - new_kwargs[equiv] = 123 - self.sampler.kwargs = new_kwargs - self.sampler.kwargs["wrapped_params"] = None - self.sampler.kwargs["derived_param_names"] = None - self.sampler.kwargs["viz_callback"] = None - self.assertDictEqual(expected, self.sampler.kwargs) - - -class TestRunningSamplers(unittest.TestCase): - def setUp(self): - np.random.seed(42) - bilby.core.utils.command_line_args.bilby_test_mode = False - self.x = np.linspace(0, 1, 11) - self.model = lambda x, m, c: m * x + c - self.injection_parameters = dict(m=0.5, c=0.2) - self.sigma = 0.1 - self.y = self.model(self.x, **self.injection_parameters) + np.random.normal( - 0, self.sigma, len(self.x) - ) - self.likelihood = bilby.likelihood.GaussianLikelihood( - self.x, self.y, self.model, self.sigma - ) - - self.priors = bilby.core.prior.PriorDict() - self.priors["m"] = bilby.core.prior.Uniform(0, 5, boundary="reflective") - self.priors["c"] = bilby.core.prior.Uniform(-2, 2, boundary="reflective") - bilby.core.utils.check_directory_exists_and_if_not_mkdir("outdir") - - def tearDown(self): - del self.likelihood - del self.priors - bilby.core.utils.command_line_args.bilby_test_mode = False - shutil.rmtree("outdir") - - def test_run_cpnest(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="cpnest", - nlive=100, - save=False, - resume=False, - ) - - def test_run_dynesty(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="dynesty", - nlive=100, - save=False, - ) - - def test_run_dynamic_dynesty(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="dynamic_dynesty", - nlive_init=100, - nlive_batch=100, - dlogz_init=1.0, - maxbatch=0, - maxcall=100, - bound="single", - save=False, - ) - - def test_run_emcee(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="emcee", - iterations=1000, - nwalkers=10, - save=False, - ) - - def test_run_kombine(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="kombine", - iterations=1000, - nwalkers=100, - save=False, - autoburnin=True, - ) - - def test_run_nestle(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="nestle", - nlive=100, - save=False, - ) - - def test_run_pypolychord(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="pypolychord", - nlive=100, - save=False, - ) - - def test_run_ptemcee(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="ptemcee", - nsamples=100, - nwalkers=50, - burn_in_act=1, - ntemps=1, - frac_threshold=0.5, - save=False, - ) - - def test_run_pymc3(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="pymc3", - draws=50, - tune=50, - n_init=1000, - save=False, - ) - - def test_run_pymultinest(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="pymultinest", - nlive=100, - save=False, - ) - - def test_run_PTMCMCSampler(self): - _ = bilby.run_sampler( - likelihood=self.likelihood, - priors=self.priors, - sampler="PTMCMCsampler", - Niter=101, - burn=2, - isave=100, - save=False, - ) - - def test_run_ultranest(self): - # run using NestedSampler (with nlive specified) - _ = bilby.run_sampler( - likelihood=self.likelihood, priors=self.priors, - sampler="ultranest", nlive=100, save=False, - ) - - # run using ReactiveNestedSampler (with no nlive given) - _ = bilby.run_sampler( - likelihood=self.likelihood, priors=self.priors, - sampler='ultranest', save=False, - ) - - -if __name__ == "__main__": - unittest.main() diff --git a/test/standard_data.txt b/test/standard_data.txt deleted file mode 100644 index 7bc38c983a0d134a392896d7880ee73b6fb1a357..0000000000000000000000000000000000000000 --- a/test/standard_data.txt +++ /dev/null @@ -1,8194 +0,0 @@ -# frequency hf_real hf_imag -0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.500000000000000000e-01 0.000000000000000000e+00 0.000000000000000000e+00 -5.000000000000000000e-01 0.000000000000000000e+00 0.000000000000000000e+00 -7.500000000000000000e-01 -0.000000000000000000e+00 0.000000000000000000e+00 -1.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -1.250000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -1.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -1.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.250000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -2.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -3.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -3.250000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -3.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -3.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -4.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -4.250000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -4.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -4.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -5.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -5.250000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -5.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -5.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -6.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -6.250000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -6.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -6.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -7.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -7.250000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -7.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -7.750000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -8.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -8.250000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -8.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -8.750000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -9.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -9.250000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -9.500000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 -9.750000000000000000e+00 -0.000000000000000000e+00 0.000000000000000000e+00 -1.000000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.025000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.050000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.075000000000000000e+01 -0.000000000000000000e+00 0.000000000000000000e+00 -1.100000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.125000000000000000e+01 -0.000000000000000000e+00 0.000000000000000000e+00 -1.150000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.175000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.200000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.225000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.250000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.275000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.300000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.325000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.350000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.375000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.400000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.425000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.450000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.475000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.500000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.525000000000000000e+01 -0.000000000000000000e+00 0.000000000000000000e+00 -1.550000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.575000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.600000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.625000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.650000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.675000000000000000e+01 -0.000000000000000000e+00 0.000000000000000000e+00 -1.700000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.725000000000000000e+01 -0.000000000000000000e+00 0.000000000000000000e+00 -1.750000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.775000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.800000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.825000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.850000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.875000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.900000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.925000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.950000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -1.975000000000000000e+01 -0.000000000000000000e+00 0.000000000000000000e+00 -2.000000000000000000e+01 0.000000000000000000e+00 0.000000000000000000e+00 -2.025000000000000000e+01 2.118768804131557476e-22 -3.430183384199205270e-23 -2.050000000000000000e+01 -1.311197493173576310e-22 -1.340558189638429635e-22 -2.075000000000000000e+01 -8.366782879240011606e-23 1.667173473693128791e-22 -2.100000000000000000e+01 1.704899617402542587e-22 1.712995025492710937e-24 -2.125000000000000000e+01 -1.411642751368298802e-22 -1.302857240243077465e-22 -2.150000000000000000e+01 -4.729014939151595790e-23 1.811685421926259709e-22 -2.175000000000000000e+01 1.598727893263108881e-22 -6.904736553085016836e-23 -2.200000000000000000e+01 -1.377608717720473427e-22 -2.173619379142453444e-23 -2.225000000000000000e+01 3.211035040663359921e-25 1.429520833914849880e-22 -2.250000000000000000e+01 1.103093475050077411e-22 -1.346281026424397731e-22 -2.275000000000000000e+01 -1.506215889342770155e-22 3.336334368901757762e-23 -2.300000000000000000e+01 1.216640081730089747e-22 8.045020866908328844e-23 -2.325000000000000000e+01 -3.650876863451560905e-23 -1.498944140540536756e-22 -2.350000000000000000e+01 -6.928662063464220198e-23 1.187959246371047734e-22 -2.375000000000000000e+01 1.531133980172743906e-22 -5.929786595542728312e-23 -2.400000000000000000e+01 -1.413473069195444243e-22 -3.554628620911151710e-23 -2.425000000000000000e+01 7.289084340972126269e-23 1.419242114969533941e-22 -2.450000000000000000e+01 2.786082182272824434e-23 -1.488823261785393231e-22 -2.475000000000000000e+01 -1.197648621114886803e-22 1.243004046220960635e-22 -2.500000000000000000e+01 1.362593627454084407e-22 -3.816477460501787247e-23 -2.525000000000000000e+01 -1.500323809187257904e-22 -4.868475898823981041e-23 -2.550000000000000000e+01 6.750804525674172763e-23 1.094205655564783292e-22 -2.575000000000000000e+01 -3.403625413407901048e-24 -1.182314222846221765e-22 -2.600000000000000000e+01 -6.146822237031582688e-23 1.044772271177066372e-22 -2.625000000000000000e+01 1.044063606049783335e-22 -7.437281853060424171e-23 -2.650000000000000000e+01 -1.310967511545862457e-22 4.698310884519442871e-24 -2.675000000000000000e+01 1.240636404625402822e-22 3.964616004490004717e-23 -2.700000000000000000e+01 -6.838091278649404726e-23 -8.837428103277868186e-23 -2.725000000000000000e+01 1.426709794159158910e-23 1.078475323891449704e-22 -2.750000000000000000e+01 3.590914362872762100e-23 -1.144870374514799619e-22 -2.775000000000000000e+01 -8.411724420539889619e-23 8.249543556388926815e-23 -2.800000000000000000e+01 1.332072659913697706e-22 -4.544591552912664414e-23 -2.825000000000000000e+01 -1.252643349822452328e-22 -1.844439312116073314e-24 -2.850000000000000000e+01 1.037933146209277395e-22 5.519283208985706306e-23 -2.875000000000000000e+01 -8.285951237330417525e-23 -7.939841607085870768e-23 -2.900000000000000000e+01 3.721207471077037561e-23 9.216275601879618141e-23 -2.925000000000000000e+01 2.146002553911205556e-24 -1.172942084604457108e-22 -2.950000000000000000e+01 -3.846247594812830383e-23 9.916090268016384560e-23 -2.975000000000000000e+01 5.923363242771786054e-23 -8.395783812283599075e-23 -3.000000000000000000e+01 -1.017464489364490832e-22 5.734334893255289151e-23 -3.025000000000000000e+01 9.499311385162861977e-23 -1.850309179856128974e-23 -3.050000000000000000e+01 -9.378580448750418445e-23 -3.758585906410080241e-24 -3.075000000000000000e+01 1.130292612678959385e-22 4.714894979639169613e-23 -3.100000000000000000e+01 -5.798733683592025781e-23 -6.437209507985550349e-23 -3.125000000000000000e+01 4.531283905054991780e-23 1.020213425516788535e-22 -3.150000000000000000e+01 -3.647086313413409246e-24 -1.006045137271827295e-22 -3.175000000000000000e+01 -1.633656056701121860e-23 1.005484712780053297e-22 -3.200000000000000000e+01 5.843137147969671320e-23 -8.992561382303615280e-23 -3.225000000000000000e+01 -6.193333064099662938e-23 8.479756951627674008e-23 -3.250000000000000000e+01 8.188763624856630419e-23 -5.984247028486574989e-23 -3.275000000000000000e+01 -1.022957265361749095e-22 1.190855150370252767e-23 -3.300000000000000000e+01 9.116996158713450247e-23 -1.278621316570221565e-23 -3.325000000000000000e+01 -9.008016105356539954e-23 -2.645699401913696750e-23 -3.350000000000000000e+01 7.379100721897048052e-23 4.967304999025652615e-23 -3.375000000000000000e+01 -7.086916442753356371e-23 -6.707765430474062271e-23 -3.400000000000000000e+01 6.183657068454821902e-23 8.721516982726909660e-23 -3.425000000000000000e+01 -3.205662795802046441e-23 -9.570206709823968185e-23 -3.450000000000000000e+01 2.639147555975796598e-23 8.710658079558559119e-23 -3.475000000000000000e+01 1.890307990369934315e-23 -8.351871288406390382e-23 -3.500000000000000000e+01 -2.947000169762955603e-23 7.658296126801291056e-23 -3.525000000000000000e+01 3.470470019845946035e-23 -7.838548700703659160e-23 -3.550000000000000000e+01 -5.907909515152324081e-23 6.196797413308025817e-23 -3.575000000000000000e+01 6.667411624139040410e-23 -4.599077053796721999e-23 -3.600000000000000000e+01 -7.542596098332532279e-23 3.155332238527707241e-23 -3.625000000000000000e+01 9.378576053303473798e-23 -2.192532648590664118e-23 -3.650000000000000000e+01 -9.172797372846252285e-23 1.784058485626807854e-24 -3.675000000000000000e+01 7.977424193387086126e-23 1.327922004675233595e-23 -3.700000000000000000e+01 -7.571926419250411930e-23 -3.379414675533915388e-23 -3.725000000000000000e+01 7.861744510455118589e-23 4.406241081949129002e-23 -3.750000000000000000e+01 -5.886921150474325435e-23 -5.502173185273112510e-23 -3.775000000000000000e+01 5.452102342079601170e-23 5.733855436093748052e-23 -3.800000000000000000e+01 -3.156220017358275882e-23 -7.510289820043181529e-23 -3.825000000000000000e+01 3.119986834758643116e-23 8.342044140025470164e-23 -3.850000000000000000e+01 -1.698746459994072233e-23 -7.755138521705850152e-23 -3.875000000000000000e+01 3.343945326069197131e-24 7.723000385774370369e-23 -3.900000000000000000e+01 4.688883415468768846e-24 -8.048803282195379682e-23 -3.925000000000000000e+01 -1.717992764872476180e-23 7.245352039580708174e-23 -3.950000000000000000e+01 3.700296597254619234e-23 -7.514762584803270387e-23 -3.975000000000000000e+01 -5.899982707284906415e-23 5.839362910596846190e-23 -4.000000000000000000e+01 5.640883491070287860e-23 -5.485684275700299886e-23 -4.025000000000000000e+01 -5.630800653377140026e-23 4.583658087796629942e-23 -4.050000000000000000e+01 6.439200657120703225e-23 -4.303078173817112810e-23 -4.075000000000000000e+01 -6.192337392878465868e-23 2.327084219875613637e-23 -4.100000000000000000e+01 5.515224563993437040e-23 -2.647510884013196836e-23 -4.125000000000000000e+01 -7.749347719931179795e-23 1.001741738132120848e-24 -4.150000000000000000e+01 6.881449985212194111e-23 -8.611109439235817187e-24 -4.175000000000000000e+01 -7.457752117602485531e-23 -1.024002451066976701e-23 -4.200000000000000000e+01 6.964899379607244964e-23 2.330554348056702591e-23 -4.225000000000000000e+01 -6.816008600069290434e-23 -2.163702496217991348e-23 -4.250000000000000000e+01 5.163208390129103542e-23 2.789938921526007423e-23 -4.275000000000000000e+01 -5.348293641409978535e-23 -3.322283012407664955e-23 -4.300000000000000000e+01 5.811673672629621300e-23 4.407515571470858945e-23 -4.325000000000000000e+01 -4.306161570613643787e-23 -5.434047513486947580e-23 -4.350000000000000000e+01 3.621816351735343271e-23 5.652599646183581453e-23 -4.375000000000000000e+01 -3.535474638510545148e-23 -5.481185006629368217e-23 -4.400000000000000000e+01 3.042509443778136972e-23 6.680143674157077975e-23 -4.425000000000000000e+01 -1.741850294836403794e-23 -5.871685305907008876e-23 -4.450000000000000000e+01 1.965432355633615015e-23 6.280070249315863033e-23 -4.475000000000000000e+01 -9.148701122796709205e-24 -5.834306512751586795e-23 -4.500000000000000000e+01 -6.651580805427121056e-24 6.513375739355012462e-23 -4.525000000000000000e+01 1.480250965749326252e-24 -6.025758203393025365e-23 -4.550000000000000000e+01 -8.286235890639396668e-24 6.179339921768707190e-23 -4.575000000000000000e+01 2.087896452222298964e-23 -5.920393443340156978e-23 -4.600000000000000000e+01 -1.036217281479376304e-23 5.389034755534157220e-23 -4.625000000000000000e+01 2.790980721022841669e-23 -4.968212089037014609e-23 -4.650000000000000000e+01 -3.062487832832956618e-23 4.926509317466834232e-23 -4.675000000000000000e+01 3.521894604025311717e-23 -4.285061731420626813e-23 -4.700000000000000000e+01 -4.210640615229374247e-23 4.684092524501558884e-23 -4.725000000000000000e+01 4.746299472811883106e-23 -3.895867006406454883e-23 -4.750000000000000000e+01 -4.449859920164507856e-23 4.069050275587099601e-23 -4.775000000000000000e+01 4.781626110839931084e-23 -2.947008444041915389e-23 -4.800000000000000000e+01 -5.661458147915381052e-23 2.094265087006066393e-23 -4.825000000000000000e+01 5.212251407095882829e-23 -3.467706889557356450e-23 -4.850000000000000000e+01 -5.609837634636541667e-23 2.296705745903063456e-23 -4.875000000000000000e+01 6.146531387472118459e-23 -1.337115212237429814e-23 -4.900000000000000000e+01 -5.080571674695392615e-23 5.489732193039072202e-24 -4.925000000000000000e+01 5.068352753763654631e-23 -6.602793912991783915e-24 -4.950000000000000000e+01 -4.988326430576029678e-23 4.747432922747458558e-24 -4.975000000000000000e+01 5.251205681949378793e-23 -4.129677631787998756e-24 -5.000000000000000000e+01 -5.404656771660897930e-23 2.047850981765830803e-24 -5.025000000000000000e+01 5.979293008685352458e-23 7.183968138683239674e-24 -5.050000000000000000e+01 -5.769082517786951118e-23 -1.942549603532025673e-23 -5.075000000000000000e+01 5.195414625811778438e-23 1.494886969305704461e-23 -5.100000000000000000e+01 -5.514127676617606832e-23 -1.098268223962545709e-23 -5.125000000000000000e+01 3.812624567953604121e-23 2.316844184463443447e-23 -5.150000000000000000e+01 -4.089189246150043928e-23 -3.069393316984738595e-23 -5.175000000000000000e+01 4.377914185848232396e-23 3.482913036277087071e-23 -5.200000000000000000e+01 -4.542866521149117925e-23 -3.178880534363610382e-23 -5.225000000000000000e+01 3.129643978633571871e-23 3.715506863031141081e-23 -5.250000000000000000e+01 -3.856293591820021919e-23 -3.431103984410591434e-23 -5.275000000000000000e+01 4.061073218614328872e-23 3.206471074414618522e-23 -5.300000000000000000e+01 -2.956357849233097036e-23 -4.110682776397150477e-23 -5.325000000000000000e+01 2.709019311569191093e-23 4.051332329731818161e-23 -5.350000000000000000e+01 -2.947486491674251258e-23 -3.779907361009938796e-23 -5.375000000000000000e+01 2.407166461697821325e-23 4.234092759544537550e-23 -5.400000000000000000e+01 -2.829795516524613753e-23 -4.383643967449050417e-23 -5.425000000000000000e+01 2.463265122293319493e-23 4.369839420214832992e-23 -5.450000000000000000e+01 -1.313929104943472296e-23 -3.995886834168805911e-23 -5.475000000000000000e+01 1.857711155464316781e-23 4.678987157655487080e-23 -5.500000000000000000e+01 -1.295792494230907491e-23 -3.980225586346126335e-23 -5.525000000000000000e+01 1.175672976720729734e-23 4.037751696195417182e-23 -5.550000000000000000e+01 -1.933431409020645957e-24 -4.296853884365604728e-23 -5.575000000000000000e+01 -4.518066223033754076e-24 4.903366902219701327e-23 -5.600000000000000000e+01 4.165833191009026551e-25 -4.746588067646580541e-23 -5.625000000000000000e+01 -5.981297940306244933e-25 4.568603705956004558e-23 -5.650000000000000000e+01 1.679177813030874380e-24 -4.797115636320204429e-23 -5.675000000000000000e+01 -8.274371122502934437e-24 4.716510761138119707e-23 -5.700000000000000000e+01 1.077551162791097549e-23 -4.635849053028732309e-23 -5.725000000000000000e+01 -1.099506206334620624e-23 4.716912532249292108e-23 -5.750000000000000000e+01 8.155955642988465180e-24 -3.705594300436077486e-23 -5.775000000000000000e+01 -1.199790526437314140e-23 3.966311247744517016e-23 -5.800000000000000000e+01 1.762759552224545266e-23 -4.117404073688903465e-23 -5.825000000000000000e+01 -1.718458333127505711e-23 4.452972805424032072e-23 -5.850000000000000000e+01 2.045126182713431397e-23 -3.903216055378701003e-23 -5.875000000000000000e+01 -1.954428684514371369e-23 3.890987212888838368e-23 -5.900000000000000000e+01 2.181016790165343004e-23 -3.884242742407613497e-23 -5.925000000000000000e+01 -2.850223519067251730e-23 3.180273020701638271e-23 -5.950000000000000000e+01 2.252146842242562013e-23 -3.564426590836624347e-23 -5.975000000000000000e+01 -2.214444190720952815e-23 3.554638878135776608e-23 -6.000000000000000000e+01 1.920012811537235966e-23 -2.489344236672610721e-23 -6.025000000000000000e+01 -2.704520248327558878e-23 2.855710812274270106e-23 -6.050000000000000000e+01 2.400550200230814744e-23 -2.677479892942658631e-23 -6.075000000000000000e+01 -3.879615859784701659e-23 2.653716728613459193e-23 -6.100000000000000000e+01 2.786494564947691051e-23 -3.560896706945308645e-23 -6.125000000000000000e+01 -3.440161450594851570e-23 3.154715141439423532e-23 -6.150000000000000000e+01 3.728793249290053057e-23 -3.060631808295405602e-23 -6.175000000000000000e+01 -4.232527512233237547e-23 2.764126578651141493e-23 -6.200000000000000000e+01 4.283019644858992397e-23 -2.630016301529628568e-23 -6.225000000000000000e+01 -3.066502331385206293e-23 2.216325800296264024e-23 -6.250000000000000000e+01 3.578898981046922283e-23 -2.491611418733489141e-23 -6.275000000000000000e+01 -3.812196436320216698e-23 1.901697128046233430e-23 -6.300000000000000000e+01 3.295861183612962377e-23 -6.971206657283056662e-24 -6.325000000000000000e+01 -3.492407633802213189e-23 1.637759185871988946e-23 -6.350000000000000000e+01 3.812729547290278654e-23 -1.352249985996862311e-23 -6.375000000000000000e+01 -3.177875132524055503e-23 1.216022922015453979e-23 -6.400000000000000000e+01 3.518490329688796516e-23 -1.176045580119718841e-23 -6.425000000000000000e+01 -3.593332606338167964e-23 9.873069955111072743e-24 -6.450000000000000000e+01 3.828555460771976108e-23 -3.627162229088755631e-24 -6.475000000000000000e+01 -4.223027722023263875e-23 1.218067361639996401e-23 -6.500000000000000000e+01 4.688118790163888436e-23 -5.298868469974057407e-24 -6.525000000000000000e+01 -3.722673202442979549e-23 1.159269600539619016e-23 -6.550000000000000000e+01 4.111219691193165898e-23 -5.452079784538541208e-24 -6.575000000000000000e+01 -4.296887465316252856e-23 -4.362506772501999754e-24 -6.600000000000000000e+01 3.496518936183895652e-23 4.707394520131732520e-26 -6.625000000000000000e+01 -3.759194461668158933e-23 -1.654393569450619366e-24 -6.650000000000000000e+01 3.519978743818061922e-23 2.177433740366146073e-25 -6.675000000000000000e+01 -3.489370485593397180e-23 2.899404582995914188e-24 -6.700000000000000000e+01 3.917722839636550393e-23 4.614959057369032008e-24 -6.725000000000000000e+01 -4.038916643888510261e-23 -2.095049901997656594e-24 -6.750000000000000000e+01 3.751076554256587371e-23 7.953731548405306401e-24 -6.775000000000000000e+01 -3.632239084515536484e-23 -5.406645206396736177e-24 -6.800000000000000000e+01 3.527536347686568325e-23 1.424518940385813339e-23 -6.825000000000000000e+01 -4.059912356768989176e-23 -6.310234341337449680e-24 -6.850000000000000000e+01 3.160651063511680961e-23 1.341831014755311202e-24 -6.875000000000000000e+01 -3.390862278542234843e-23 -9.581082329488371905e-24 -6.900000000000000000e+01 3.877967567769458576e-23 9.210614044040046597e-24 -6.925000000000000000e+01 -3.814837590487673790e-23 -1.153702035374756740e-23 -6.950000000000000000e+01 3.875818913866166326e-23 1.059392647560154536e-23 -6.975000000000000000e+01 -3.225826885217139771e-23 -5.798736743372810549e-24 -7.000000000000000000e+01 2.710562991472074940e-23 1.690814570126338630e-23 -7.025000000000000000e+01 -3.069538718693194136e-23 -1.081079228871724008e-23 -7.050000000000000000e+01 3.539551195562076116e-23 1.230321081149044303e-23 -7.075000000000000000e+01 -2.995434949209089902e-23 -1.994497738145019004e-23 -7.100000000000000000e+01 4.051767076785142178e-23 2.194709611912658743e-23 -7.125000000000000000e+01 -2.873972277067351140e-23 -1.119774602034184453e-23 -7.150000000000000000e+01 3.335593228390537573e-23 1.924940969762722353e-23 -7.175000000000000000e+01 -2.896302788644605698e-23 -2.118082613179293730e-23 -7.200000000000000000e+01 3.266122712813624222e-23 2.084394697206844537e-23 -7.225000000000000000e+01 -3.815739184550722850e-23 -1.971095872197300098e-23 -7.250000000000000000e+01 2.374833057073099972e-23 1.613867437592839007e-23 -7.275000000000000000e+01 -2.841052607553973505e-23 -1.467175575435469612e-23 -7.300000000000000000e+01 2.845924462870172056e-23 1.641274088813049932e-23 -7.325000000000000000e+01 -2.497120870428475399e-23 -1.966959600178769911e-23 -7.350000000000000000e+01 2.983204908227605469e-23 2.023989347986610801e-23 -7.375000000000000000e+01 -2.316601483923239175e-23 -2.177147559433109360e-23 -7.400000000000000000e+01 2.501249912022357777e-23 2.177696685379833819e-23 -7.425000000000000000e+01 -2.420317452086544398e-23 -2.078511817024154643e-23 -7.450000000000000000e+01 2.373849423598206847e-23 1.507226573316325700e-23 -7.475000000000000000e+01 -1.899761626201440150e-23 -3.217830043378358149e-23 -7.500000000000000000e+01 2.515164359585089694e-23 2.544635982866575425e-23 -7.525000000000000000e+01 -1.771438568618135465e-23 -2.956796130713843440e-23 -7.550000000000000000e+01 1.987770350900388789e-23 2.924411610703450512e-23 -7.575000000000000000e+01 -2.328385614500603683e-23 -2.275329954880685846e-23 -7.600000000000000000e+01 1.784368956581013942e-23 2.584278284142668527e-23 -7.625000000000000000e+01 -1.783219238857384735e-23 -2.920421142535269783e-23 -7.650000000000000000e+01 2.554962922152578051e-23 2.852321760269854186e-23 -7.675000000000000000e+01 -1.725692977757661884e-23 -2.325374755638258509e-23 -7.700000000000000000e+01 1.978222279863163739e-23 2.752583982020974125e-23 -7.725000000000000000e+01 -2.419010743306156990e-23 -2.137246034977141074e-23 -7.750000000000000000e+01 2.795718321934522062e-23 2.717547641759525236e-23 -7.775000000000000000e+01 -2.085196308124399887e-23 -1.783094187456036669e-23 -7.800000000000000000e+01 2.334024020020494113e-23 2.112167293911479967e-23 -7.825000000000000000e+01 -1.757275931165777495e-23 -3.924736154369045725e-23 -7.850000000000000000e+01 1.876354886857021306e-23 2.464189082688660665e-23 -7.875000000000000000e+01 -1.088455844001671828e-23 -3.372662245841412227e-23 -7.900000000000000000e+01 1.408028353185719685e-23 2.270682108241049459e-23 -7.925000000000000000e+01 -1.403734590704783459e-23 -2.831340778322728525e-23 -7.950000000000000000e+01 8.965538627848260676e-24 2.580552683146105717e-23 -7.975000000000000000e+01 -1.264811937706644450e-23 -3.186401607988779528e-23 -8.000000000000000000e+01 1.655197844533483820e-23 2.991840656835148673e-23 -8.025000000000000000e+01 -9.983700439050862418e-24 -2.566850187063765252e-23 -8.050000000000000000e+01 7.423149277525148953e-24 3.334360205769456286e-23 -8.075000000000000000e+01 -5.853650183752092796e-24 -2.734399282044942425e-23 -8.100000000000000000e+01 5.241023525705826165e-24 2.636687780634233943e-23 -8.125000000000000000e+01 -8.940831325730465671e-24 -2.573921007259789191e-23 -8.150000000000000000e+01 5.705889019066495894e-24 3.284397193240763747e-23 -8.175000000000000000e+01 -1.222512728083539617e-23 -2.561435688919844152e-23 -8.200000000000000000e+01 1.304869383076046307e-23 2.857307903223887452e-23 -8.225000000000000000e+01 -1.010050742469646873e-23 -3.311093129885938258e-23 -8.250000000000000000e+01 1.541744395082960413e-24 2.002222216937987460e-23 -8.275000000000000000e+01 -9.636857406307254392e-24 -2.334457734256441256e-23 -8.300000000000000000e+01 1.015609087959030404e-23 2.743690440694129126e-23 -8.325000000000000000e+01 -9.670040150355214358e-24 -2.484251779259292512e-23 -8.350000000000000000e+01 1.130155817200413900e-23 2.719860493968831920e-23 -8.375000000000000000e+01 -1.787939682258326534e-24 -3.089854279209448508e-23 -8.400000000000000000e+01 5.886041116703892285e-24 2.666009201913324483e-23 -8.425000000000000000e+01 -4.113127731180095789e-25 -2.395798642441525399e-23 -8.450000000000000000e+01 1.254949589180603774e-23 3.224500696868693110e-23 -8.475000000000000000e+01 -1.270462950375439680e-23 -2.605731751296566172e-23 -8.500000000000000000e+01 8.976130267121555408e-24 2.592808719519814676e-23 -8.525000000000000000e+01 -1.406122048623007388e-24 -2.597022599895933477e-23 -8.550000000000000000e+01 2.261918946669673564e-24 2.494733165359072624e-23 -8.575000000000000000e+01 -5.533557211136921137e-25 -2.679709815828530356e-23 -8.600000000000000000e+01 4.591638456726907015e-24 3.411023655572478051e-23 -8.625000000000000000e+01 -5.023569314804165591e-24 -2.181342811015559658e-23 -8.650000000000000000e+01 8.456866556164077888e-24 3.380810541698510861e-23 -8.675000000000000000e+01 -1.507142482791426864e-24 -3.104678614928648541e-23 -8.700000000000000000e+01 6.650291546884200638e-24 3.340680640651952866e-23 -8.725000000000000000e+01 -2.520036815954436769e-24 -2.619798737538196370e-23 -8.750000000000000000e+01 -5.431395652305327904e-24 3.322356691080547894e-23 -8.775000000000000000e+01 2.392228827524699618e-26 -2.312277684691801050e-23 -8.800000000000000000e+01 -2.469583352558339232e-25 3.404523446828563570e-23 -8.825000000000000000e+01 -5.590068565947566158e-24 -3.669986009767621997e-23 -8.850000000000000000e+01 -6.689111434845734831e-24 3.109574379806559088e-23 -8.875000000000000000e+01 2.556105487203334143e-24 -3.685683172775938680e-23 -8.900000000000000000e+01 4.874688659796249083e-24 2.565370050768063448e-23 -8.925000000000000000e+01 6.208787160848658529e-24 -3.026531904614334785e-23 -8.950000000000000000e+01 1.410115863393845946e-24 2.776238684008053512e-23 -8.975000000000000000e+01 1.005431720435348518e-24 -3.052334416098509885e-23 -9.000000000000000000e+01 -4.431546708445109733e-25 3.015337785160008125e-23 -9.025000000000000000e+01 1.612349794372853816e-24 -2.290788052930147930e-23 -9.050000000000000000e+01 1.578033966400099759e-24 2.724774180173288948e-23 -9.075000000000000000e+01 -1.447961000711452591e-25 -2.709383846744162474e-23 -9.100000000000000000e+01 -7.170014942230134418e-24 2.364163616338387608e-23 -9.125000000000000000e+01 1.371513088563870346e-24 -2.060788266168348614e-23 -9.150000000000000000e+01 -1.656989867085488123e-24 2.029981823344194271e-23 -9.175000000000000000e+01 1.614437997742257421e-24 -2.870258605164592192e-23 -9.200000000000000000e+01 -2.730275875004050477e-24 1.901129884307287512e-23 -9.225000000000000000e+01 1.191328292443675153e-23 -1.683951345559188440e-23 -9.250000000000000000e+01 3.755108436835061286e-25 1.662133218562052926e-23 -9.275000000000000000e+01 -2.227580286635275228e-24 -2.277027424779237494e-23 -9.300000000000000000e+01 -9.050498592305111493e-25 1.783200167457869321e-23 -9.325000000000000000e+01 -5.070285261006147120e-24 -2.764932730976343626e-23 -9.350000000000000000e+01 -1.377765671778696723e-24 2.336717145063697491e-23 -9.375000000000000000e+01 5.956326302085255595e-24 -2.292531723912088518e-23 -9.400000000000000000e+01 -4.083369831374171654e-24 2.271210070538727791e-23 -9.425000000000000000e+01 4.356245676589441018e-25 -2.272918404667484935e-23 -9.450000000000000000e+01 -8.448128536715021801e-24 2.435870006650735815e-23 -9.475000000000000000e+01 6.292995961570409348e-24 -2.384067811099438086e-23 -9.500000000000000000e+01 -7.244788322542411070e-24 2.213430688455174144e-23 -9.525000000000000000e+01 8.276826970928971638e-24 -2.275011730788978328e-23 -9.550000000000000000e+01 -7.551882794019603012e-24 2.655164447023857046e-23 -9.575000000000000000e+01 3.718401157106274651e-24 -1.536137331590893976e-23 -9.600000000000000000e+01 -2.255635240427132132e-24 2.334509304282085509e-23 -9.625000000000000000e+01 5.292624214101536159e-24 -1.644524568104231916e-23 -9.650000000000000000e+01 -6.217236539485781007e-24 2.296202829255092503e-23 -9.675000000000000000e+01 6.748474694872637284e-24 -3.088904857246300289e-23 -9.700000000000000000e+01 -4.278253601834470175e-24 2.490422868302350085e-23 -9.725000000000000000e+01 5.557904907094898049e-24 -2.128197633063411643e-23 -9.750000000000000000e+01 -5.097242836256345310e-24 2.347098864459345443e-23 -9.775000000000000000e+01 5.644626887529971175e-24 -2.417723091504664132e-23 -9.800000000000000000e+01 -4.564378651398526006e-24 2.783550297423897852e-23 -9.825000000000000000e+01 7.462360818714518383e-24 -2.401133467309513870e-23 -9.850000000000000000e+01 -4.392284451773855087e-24 1.862376867275315435e-23 -9.875000000000000000e+01 9.716912142470802798e-24 -2.193583105619362142e-23 -9.900000000000000000e+01 -1.071147658409571895e-23 1.902292612651763342e-23 -9.925000000000000000e+01 1.261666304895656044e-24 -1.914575862990105830e-23 -9.950000000000000000e+01 -7.833447210075392689e-24 2.485523274342618197e-23 -9.975000000000000000e+01 6.169895214396290319e-24 -1.631955803502600925e-23 -1.000000000000000000e+02 -5.090283544940122885e-24 2.007302812732140907e-23 -1.002500000000000000e+02 2.149557105841148500e-24 -2.986063583124327377e-23 -1.005000000000000000e+02 -6.321954331588904145e-24 2.862962475275084155e-23 -1.007500000000000000e+02 8.898139090923402296e-24 -1.647238268077371721e-23 -1.010000000000000000e+02 -1.374599439366981786e-23 2.455913574008732873e-23 -1.012500000000000000e+02 9.035280815705069091e-24 -2.221524979741793022e-23 -1.015000000000000000e+02 -1.807712060833782472e-24 2.435602393271989811e-23 -1.017500000000000000e+02 7.930958068152922338e-24 -2.666485738090487832e-23 -1.020000000000000000e+02 -1.104232190756298559e-23 2.957064405109768310e-23 -1.022500000000000000e+02 5.264060979590530030e-24 -2.154074843611561768e-23 -1.025000000000000000e+02 -7.913113801045415133e-24 2.469845935851803672e-23 -1.027500000000000000e+02 5.598382174063072145e-24 -2.365431277071449992e-23 -1.030000000000000000e+02 -2.044936433561958315e-23 1.399723463131535369e-23 -1.032500000000000000e+02 1.358276622366475830e-23 -2.520009477266721027e-23 -1.035000000000000000e+02 -9.678838316344410609e-24 2.057663393805486928e-23 -1.037500000000000000e+02 7.163627334664625406e-24 -1.747548336396232828e-23 -1.040000000000000000e+02 -4.252490105432992953e-24 2.438949801282256917e-23 -1.042500000000000000e+02 8.895748689318732933e-24 -3.145832470632935702e-23 -1.045000000000000000e+02 -9.941301984488907149e-24 2.517783275236084785e-23 -1.047500000000000000e+02 7.676834809240677921e-24 -1.957369933900309840e-23 -1.050000000000000000e+02 -5.963214243891170772e-24 2.098371411421334882e-23 -1.052500000000000000e+02 1.030031377515756241e-23 -1.646689133443412521e-23 -1.055000000000000000e+02 -8.912277717708069988e-24 2.471137463618818735e-23 -1.057500000000000000e+02 1.133101072049769219e-23 -1.432601195369660314e-23 -1.060000000000000000e+02 -5.113685699312213697e-24 2.171333500377660659e-23 -1.062500000000000000e+02 6.319781336162643047e-24 -2.337593615342591769e-23 -1.065000000000000000e+02 -1.225085299146762213e-23 1.888581208263369498e-23 -1.067500000000000000e+02 9.596014058211116817e-24 -1.653328516891976342e-23 -1.070000000000000000e+02 -6.039535256209578845e-24 2.108948104113518105e-23 -1.072500000000000000e+02 6.533555397235882718e-24 -2.046033315834003640e-23 -1.075000000000000000e+02 -1.009089319187396072e-23 2.124620273040510922e-23 -1.077500000000000000e+02 1.050654987133609534e-23 -2.114015070412485639e-23 -1.080000000000000000e+02 -7.789693528333136167e-24 2.025798394158516106e-23 -1.082500000000000000e+02 1.378366068129167384e-23 -1.808017254811350311e-23 -1.085000000000000000e+02 -6.409847452266464011e-24 2.308067504565212935e-23 -1.087500000000000000e+02 1.785003316785520376e-23 -2.330313885802535270e-23 -1.090000000000000000e+02 -6.383015337125919899e-24 2.061414834622707101e-23 -1.092500000000000000e+02 4.949645901037562021e-24 -2.487714278690688705e-23 -1.095000000000000000e+02 -9.267258080625405028e-24 1.965258128748126780e-23 -1.097500000000000000e+02 8.121073504792321636e-24 -2.476315684861227684e-23 -1.100000000000000000e+02 -1.511557678975070350e-23 1.692777962199643823e-23 -1.102500000000000000e+02 1.117121704694538899e-23 -2.192303595564503614e-23 -1.105000000000000000e+02 -8.275076455998502442e-24 1.628826101392055658e-23 -1.107500000000000000e+02 8.426362189338995758e-24 -2.390313674762173239e-23 -1.110000000000000000e+02 -1.069315316834815781e-23 2.205555146356705221e-23 -1.112500000000000000e+02 4.173742931626705563e-24 -1.932297045499529729e-23 -1.115000000000000000e+02 -9.371365305754647112e-24 2.041589637173538627e-23 -1.117500000000000000e+02 5.079489185025807464e-24 -1.546228521201142940e-23 -1.120000000000000000e+02 -8.471218897365191956e-24 1.993289862578246552e-23 -1.122500000000000000e+02 4.953102905159508093e-24 -2.033356818675990092e-23 -1.125000000000000000e+02 -1.405756789502669093e-23 1.741562764961494253e-23 -1.127500000000000000e+02 8.868521606332650334e-24 -1.681578917941779843e-23 -1.130000000000000000e+02 -7.729494359678119027e-24 2.153153364277924555e-23 -1.132500000000000000e+02 1.060961686861724049e-23 -1.798630774368135016e-23 -1.135000000000000000e+02 -8.249627628701591629e-24 1.778251900743772679e-23 -1.137500000000000000e+02 1.420065358019853991e-23 -1.928593822076890311e-23 -1.140000000000000000e+02 -1.093761619302083832e-23 1.674479440982571446e-23 -1.142500000000000000e+02 1.277758059604265993e-23 -2.319129267984182746e-23 -1.145000000000000000e+02 -1.230458752106884838e-23 2.838459761171634821e-23 -1.147500000000000000e+02 5.734045955797603770e-24 -1.704024017867140195e-23 -1.150000000000000000e+02 -9.988588619103794656e-24 1.619932740452580582e-23 -1.152500000000000000e+02 7.402305161143896768e-24 -2.138924515324548564e-23 -1.155000000000000000e+02 -2.378174284011130859e-24 2.177626054929673338e-23 -1.157500000000000000e+02 5.793764521181067914e-24 -1.976696130810192505e-23 -1.160000000000000000e+02 -1.327060674063175762e-23 2.072235514828498368e-23 -1.162500000000000000e+02 1.123932742462598127e-23 -1.229345574963464828e-23 -1.165000000000000000e+02 -8.361327173928916434e-24 1.978886265765173747e-23 -1.167500000000000000e+02 2.163169172367732409e-24 -1.913288614428400099e-23 -1.170000000000000000e+02 -6.868341555798060606e-24 1.882047119921554552e-23 -1.172500000000000000e+02 1.187263022460959721e-23 -1.094007412298346793e-23 -1.175000000000000000e+02 -9.672858821033506803e-24 2.033850020003975427e-23 -1.177500000000000000e+02 1.422735871371877121e-23 -1.607386621481138210e-23 -1.180000000000000000e+02 -2.088678365244200623e-24 1.731856109185148889e-23 -1.182500000000000000e+02 5.388556818394842310e-24 -2.010568285707124865e-23 -1.185000000000000000e+02 -4.685897372678865539e-24 1.474961837236659545e-23 -1.187500000000000000e+02 -1.492390394464050139e-25 -2.042272004583771932e-23 -1.190000000000000000e+02 -7.329776476059097093e-24 2.261128092405406541e-23 -1.192500000000000000e+02 5.009446150722178795e-24 -1.230602576833604283e-23 -1.195000000000000000e+02 -4.159408913125674860e-24 1.568164293098422812e-23 -1.197500000000000000e+02 4.489396383034982756e-24 -1.755127829143127193e-23 -1.200000000000000000e+02 -3.858702907773098719e-24 2.194702812782611144e-23 -1.202500000000000000e+02 4.699144493481050942e-24 -1.936599390284491360e-23 -1.205000000000000000e+02 -9.452232711984191770e-24 1.704844675430822543e-23 -1.207500000000000000e+02 4.811350921177751760e-24 -2.111045814782489525e-23 -1.210000000000000000e+02 -6.853500213963576483e-24 1.612890620501888982e-23 -1.212500000000000000e+02 2.334744599358637192e-24 -1.612155363372950148e-23 -1.215000000000000000e+02 -5.118757724956200422e-24 1.835494761319201521e-23 -1.217500000000000000e+02 4.974893405803745972e-24 -1.521572478616099606e-23 -1.220000000000000000e+02 1.157345158675571299e-24 2.410985882654004074e-23 -1.222500000000000000e+02 6.550782606512933679e-24 -1.967574354486149004e-23 -1.225000000000000000e+02 -1.042943251512623914e-23 1.803174074794043363e-23 -1.227500000000000000e+02 9.287398167706005376e-24 -1.017063554857434789e-23 -1.230000000000000000e+02 -1.060457371594692091e-23 1.282701860591349654e-23 -1.232500000000000000e+02 9.632980050594153191e-24 -1.894926350794520272e-23 -1.235000000000000000e+02 -9.026429039341775089e-24 1.964771505917640317e-23 -1.237500000000000000e+02 9.130270912219031459e-24 -1.739820244316438418e-23 -1.240000000000000000e+02 -6.973456189774879406e-24 1.689464891507473234e-23 -1.242500000000000000e+02 9.259022772996953637e-24 -1.607609831348844777e-23 -1.245000000000000000e+02 -9.741868703390019056e-24 1.279532930464421154e-23 -1.247500000000000000e+02 4.492133878612736072e-24 -2.231895704109415413e-23 -1.250000000000000000e+02 -1.420402634843393060e-24 1.436903967123382081e-23 -1.252500000000000000e+02 1.229608294600557487e-23 -1.348681689420600353e-23 -1.255000000000000000e+02 -3.325365666915044761e-24 2.573348228116043007e-23 -1.257500000000000000e+02 4.622406745955905143e-24 -1.974778707327734790e-23 -1.260000000000000000e+02 -1.852600311808387583e-24 1.331453180215187390e-23 -1.262500000000000000e+02 5.460722840615300347e-24 -2.219164657776294261e-23 -1.265000000000000000e+02 -7.244520835516935407e-24 1.174514768838024429e-23 -1.267500000000000000e+02 1.071650770143952997e-23 -1.482357736378516729e-23 -1.270000000000000000e+02 -6.996945123634840687e-24 2.117437026558437055e-23 -1.272500000000000000e+02 6.360656741391096810e-24 -1.830105505863380671e-23 -1.275000000000000000e+02 -7.699610797329469206e-24 1.733463209034267311e-23 -1.277500000000000000e+02 3.823481517732391269e-24 -1.804525221057029490e-23 -1.280000000000000000e+02 -9.059396687545065543e-24 2.603025027707129351e-23 -1.282500000000000000e+02 4.911924589273022206e-24 -1.294023994818650493e-23 -1.285000000000000000e+02 -5.631760943923213699e-24 1.846543453275309040e-23 -1.287500000000000000e+02 4.983544980283295795e-24 -1.735363960876008134e-23 -1.290000000000000000e+02 -1.064696664951735081e-23 1.693136590981614632e-23 -1.292500000000000000e+02 5.459556932551502764e-24 -9.734460377695421094e-24 -1.295000000000000000e+02 -6.841125867667161322e-24 1.769233265162534562e-23 -1.297500000000000000e+02 6.180233801601340485e-24 -2.181039462909209842e-23 -1.300000000000000000e+02 -4.102504281095643848e-24 2.153873124773019222e-23 -1.302500000000000000e+02 6.915531750897805311e-24 -1.807736983667795409e-23 -1.305000000000000000e+02 -8.906811626441769793e-24 1.624958880451006578e-23 -1.307500000000000000e+02 2.458049067928141091e-24 -1.460280673866708568e-23 -1.310000000000000000e+02 -7.482893456539571604e-24 1.851455865967596098e-23 -1.312500000000000000e+02 2.622480882231866772e-24 -1.507234918692728820e-23 -1.315000000000000000e+02 -1.156920378005652737e-23 1.099176199797306745e-23 -1.317500000000000000e+02 3.577711992136131336e-24 -2.374183501742078501e-23 -1.320000000000000000e+02 -1.082465987519184543e-23 2.308948821810679487e-23 -1.322500000000000000e+02 3.810619108015317473e-25 -1.708148943065601104e-23 -1.325000000000000000e+02 -9.948862559344621759e-24 1.499910961512047039e-23 -1.327500000000000000e+02 1.052355990084950924e-24 -1.601844143392454300e-23 -1.330000000000000000e+02 -9.389918822564048434e-24 2.498480020493692726e-23 -1.332500000000000000e+02 1.458258608849982421e-24 -2.404788944612006325e-23 -1.335000000000000000e+02 -5.891051143142138056e-24 1.219075331163107164e-23 -1.337500000000000000e+02 7.949943676998916498e-24 -2.199599499716466402e-23 -1.340000000000000000e+02 -9.923915175671218316e-24 2.167874348323321370e-23 -1.342500000000000000e+02 8.742779196542020812e-24 -1.659246107340275574e-23 -1.345000000000000000e+02 -2.580017802223066841e-24 2.053461075928137022e-23 -1.347500000000000000e+02 6.570590336337634762e-24 -2.201313827793773556e-23 -1.350000000000000000e+02 -5.419256743596531304e-24 2.446920709976844645e-23 -1.352500000000000000e+02 5.106964964751827699e-24 -1.790039824196002783e-23 -1.355000000000000000e+02 -2.130679717307965703e-24 1.676808433686079453e-23 -1.357500000000000000e+02 6.624123883064623835e-24 -1.737738158409403121e-23 -1.360000000000000000e+02 -5.442240804296163163e-24 1.743746628518137079e-23 -1.362500000000000000e+02 6.888205081451762611e-24 -1.327712827806357701e-23 -1.365000000000000000e+02 6.358421578002509545e-25 1.778830993849068035e-23 -1.367500000000000000e+02 7.624214979795224450e-24 -1.286612935366882221e-23 -1.370000000000000000e+02 -1.120606960788221751e-24 1.824939557401591795e-23 -1.372500000000000000e+02 1.419839512050211724e-24 -1.708114374228056157e-23 -1.375000000000000000e+02 -3.640967469036620644e-24 1.856527111681639049e-23 -1.377500000000000000e+02 4.141146400387648201e-24 -2.215366332616056377e-23 -1.380000000000000000e+02 -5.268308993277896189e-24 1.956563159625496521e-23 -1.382500000000000000e+02 4.250313174439556077e-24 -2.040233658647707443e-23 -1.385000000000000000e+02 -2.682909621677195830e-24 1.925562626868334144e-23 -1.387500000000000000e+02 3.054319055793285221e-24 -2.160314072087821259e-23 -1.390000000000000000e+02 -3.735885136375113199e-24 1.761590639246117512e-23 -1.392500000000000000e+02 2.941683303765885780e-24 -1.497721249250079547e-23 -1.395000000000000000e+02 -2.863059470981248364e-24 2.313282640566265310e-23 -1.397500000000000000e+02 1.502657494217405623e-24 -1.259342483598797089e-23 -1.400000000000000000e+02 -4.443676205515175486e-24 2.178392398815006039e-23 -1.402500000000000000e+02 2.538575333908017460e-24 -7.704323983489134752e-24 -1.405000000000000000e+02 -6.946045398439681778e-24 2.078881528174006348e-23 -1.407500000000000000e+02 -4.547646703933797827e-24 -1.729247754302272690e-23 -1.410000000000000000e+02 -3.298431455722366475e-24 1.699031646235028254e-23 -1.412500000000000000e+02 -2.128396425708237012e-24 -1.282296861207811894e-23 -1.415000000000000000e+02 3.997002572810744304e-24 1.783533432818153912e-23 -1.417500000000000000e+02 4.968752995639557328e-24 -1.266920597782807209e-23 -1.420000000000000000e+02 2.658416824371943636e-24 1.759955139377560982e-23 -1.422500000000000000e+02 4.822832038164379853e-24 -2.025402325363781838e-23 -1.425000000000000000e+02 -3.158132579486159326e-24 2.244133481076561458e-23 -1.427500000000000000e+02 3.753774490456757723e-24 -1.278919969948930319e-23 -1.430000000000000000e+02 2.381546320965787691e-25 2.224401033866855533e-23 -1.432500000000000000e+02 -3.607046089339653783e-24 -1.838178120879659588e-23 -1.435000000000000000e+02 1.433686868632528164e-24 1.745632966992833703e-23 -1.437500000000000000e+02 -1.952494730404681778e-24 -1.365327570179039855e-23 -1.440000000000000000e+02 -5.874824928624454513e-24 1.722790540372793008e-23 -1.442500000000000000e+02 4.111432536842762481e-24 -1.515713496637371862e-23 -1.445000000000000000e+02 -3.374071587416328816e-24 1.268989799260174076e-23 -1.447500000000000000e+02 -2.574161937314145925e-24 -1.618780070904548926e-23 -1.450000000000000000e+02 3.534604075954460136e-24 2.619910660355680324e-23 -1.452500000000000000e+02 -5.835417739514305608e-24 -1.479463354842543887e-23 -1.455000000000000000e+02 -3.744305382930166748e-24 1.592482949188667331e-23 -1.457500000000000000e+02 4.996703758720156742e-24 -1.895535482738137142e-23 -1.460000000000000000e+02 9.574413374822932958e-24 2.145188371917272425e-23 -1.462500000000000000e+02 7.609480050456512664e-25 -1.376947618542440356e-23 -1.465000000000000000e+02 3.064360319598736467e-24 1.987058577728370522e-23 -1.467500000000000000e+02 -3.480163522906930630e-24 -1.902778482338654916e-23 -1.470000000000000000e+02 7.685962729534786688e-24 2.247265894040657989e-23 -1.472500000000000000e+02 -2.126157401427076505e-24 -2.105552030441538802e-23 -1.475000000000000000e+02 -1.075078605269463658e-23 2.389294538255877941e-23 -1.477500000000000000e+02 3.411396865919453896e-25 -1.842725894103088629e-23 -1.480000000000000000e+02 7.192422319785842437e-25 1.324838421266845899e-23 -1.482500000000000000e+02 -3.261478435944875882e-24 -2.502075955597701510e-23 -1.485000000000000000e+02 1.357324955393457315e-24 1.803418101578994853e-23 -1.487500000000000000e+02 4.520448051578043034e-24 -2.439196119739116524e-23 -1.490000000000000000e+02 -4.555985329579003577e-24 2.081398548609287379e-23 -1.492500000000000000e+02 1.223312142223822422e-24 -1.868401950987439291e-23 -1.495000000000000000e+02 -2.964583075385096264e-24 1.344922185658454099e-23 -1.497500000000000000e+02 4.769476445020555197e-24 -1.582809975754686074e-23 -1.500000000000000000e+02 3.157046425508646225e-24 2.543219947485253847e-23 -1.502500000000000000e+02 -3.039504214511711309e-24 -1.378803083690879258e-23 -1.505000000000000000e+02 2.240569147101452922e-24 1.956903548168921140e-23 -1.507500000000000000e+02 -2.775210686179233234e-24 -1.550907620383084497e-23 -1.510000000000000000e+02 3.864100488540342062e-24 1.977248400479543498e-23 -1.512500000000000000e+02 -1.595209253874007508e-24 -1.574840817736284392e-23 -1.515000000000000000e+02 6.579497218417272294e-24 1.155168741255660378e-23 -1.517500000000000000e+02 8.407446873315435907e-24 -2.180232192208610407e-23 -1.520000000000000000e+02 3.117442328427705176e-24 1.734015879813022929e-23 -1.522500000000000000e+02 1.395190260639295808e-24 -1.124890968558062130e-23 -1.525000000000000000e+02 3.458569419390773376e-24 1.901206828329376330e-23 -1.527500000000000000e+02 -4.054551356811990085e-24 -1.563043435092866906e-23 -1.530000000000000000e+02 4.069956600758502636e-24 9.542117300164107403e-24 -1.532500000000000000e+02 1.367956799062496725e-24 -2.340404004766185069e-23 -1.535000000000000000e+02 5.662250354808955509e-24 1.553048938388787966e-23 -1.537500000000000000e+02 -1.958640452475285396e-24 -1.464191040510770261e-23 -1.540000000000000000e+02 2.073054901316393088e-24 1.221131468890846849e-23 -1.542500000000000000e+02 4.179382016526590589e-24 -2.363728083509595354e-23 -1.545000000000000000e+02 6.398054469770014610e-24 1.253477527290629077e-23 -1.547500000000000000e+02 2.265957057397038653e-24 -1.651669165026529870e-23 -1.550000000000000000e+02 6.119355032240086985e-25 1.667603519029315429e-23 -1.552500000000000000e+02 2.203500167239467874e-24 -2.013521534613315436e-23 -1.555000000000000000e+02 -2.232077112623798756e-24 1.687413582868346836e-23 -1.557500000000000000e+02 -1.596668105526964930e-24 -2.066975517375888185e-23 -1.560000000000000000e+02 3.626852517080454635e-24 2.143835264256639281e-23 -1.562500000000000000e+02 -3.009534381549803938e-24 -1.403524909821438782e-23 -1.565000000000000000e+02 2.173048463817812371e-24 1.812641897958287841e-23 -1.567500000000000000e+02 -3.105525734013019359e-25 -2.079209643617486090e-23 -1.570000000000000000e+02 5.986151556529638928e-24 2.083937390084587874e-23 -1.572500000000000000e+02 -3.314713829579965772e-24 -1.399620688804808279e-23 -1.575000000000000000e+02 1.198821041637840240e-23 2.392587196681071694e-23 -1.577500000000000000e+02 -3.230256684315210364e-25 -9.901933519481014068e-24 -1.580000000000000000e+02 5.072974349522131268e-24 2.236423908728819941e-23 -1.582500000000000000e+02 -4.530342330312012099e-24 -1.811425878547493509e-23 -1.585000000000000000e+02 -2.929550516311611483e-24 1.435365900187141738e-23 -1.587500000000000000e+02 -7.129713010503474209e-24 -1.290196376483168486e-23 -1.590000000000000000e+02 2.989178415675624513e-24 2.186509366039051886e-23 -1.592500000000000000e+02 -7.989524663665094043e-24 -2.080667455373710757e-23 -1.595000000000000000e+02 4.616172763655813266e-24 1.725803310618717018e-23 -1.597500000000000000e+02 1.754075663750315388e-24 -1.625474188570225230e-23 -1.600000000000000000e+02 7.190039775718998958e-24 1.359506934791580332e-23 -1.602500000000000000e+02 -6.240926131810695496e-24 -1.319236060501411259e-23 -1.605000000000000000e+02 1.354438717624413392e-24 1.710070321618588562e-23 -1.607500000000000000e+02 -1.969320960257851948e-24 -1.480601726362193335e-23 -1.610000000000000000e+02 4.806134271299649389e-24 2.597986144680918411e-23 -1.612500000000000000e+02 1.286251396388184028e-24 -1.594040859467211887e-23 -1.615000000000000000e+02 6.489907881145640847e-24 1.909680323507572053e-23 -1.617500000000000000e+02 -5.809936485289039399e-25 -2.216965050990956177e-23 -1.620000000000000000e+02 7.895908091784164138e-24 1.352842752795266429e-23 -1.622500000000000000e+02 -5.930800172475865976e-24 -1.260346986941081697e-23 -1.625000000000000000e+02 6.801097740669491515e-24 3.783508813778520062e-24 -1.627500000000000000e+02 -4.067585100769300303e-24 -1.124898991376583268e-23 -1.630000000000000000e+02 6.437268556273597900e-24 1.235478335177411398e-23 -1.632500000000000000e+02 -1.256834824942379522e-23 -1.406570618558038108e-23 -1.635000000000000000e+02 -3.675886291807051578e-25 1.386019478179508577e-23 -1.637500000000000000e+02 -9.570193534706679955e-24 -9.538424408188388409e-24 -1.640000000000000000e+02 3.877108979546585478e-24 1.241224864725942867e-23 -1.642500000000000000e+02 -6.282148208984898092e-24 -7.115301250937926648e-24 -1.645000000000000000e+02 6.685807126107911681e-24 1.252584367371397898e-23 -1.647500000000000000e+02 -5.423648915097551960e-24 -1.783169769842337267e-23 -1.650000000000000000e+02 6.549773709453750283e-24 1.087601520329019127e-23 -1.652500000000000000e+02 -5.375282306058654307e-24 -1.083158301068680293e-23 -1.655000000000000000e+02 8.877579426240111555e-24 1.137080142909636141e-23 -1.657500000000000000e+02 -3.540446499898075501e-24 -1.081714268070575611e-23 -1.660000000000000000e+02 4.413850312005558718e-24 1.539836301878866747e-23 -1.662500000000000000e+02 -1.508883904080264259e-23 -1.168030517769580425e-23 -1.665000000000000000e+02 5.677491413018206567e-24 1.663239093344337288e-23 -1.667500000000000000e+02 -5.375516584962751246e-24 -7.987355054683278853e-24 -1.670000000000000000e+02 5.743579394778036536e-24 1.795964351632447065e-23 -1.672500000000000000e+02 -1.013724817821817790e-23 -1.680227477955312819e-23 -1.675000000000000000e+02 3.571643594618602822e-24 1.227218023971948105e-23 -1.677500000000000000e+02 -1.220944755402008880e-23 -1.717457683878757501e-23 -1.680000000000000000e+02 7.906088906467877711e-24 1.826831556803431163e-23 -1.682500000000000000e+02 -1.532514159884031030e-23 -8.416771622963688263e-24 -1.685000000000000000e+02 8.271929156409429611e-24 1.625640871095961211e-23 -1.687500000000000000e+02 -8.874477233804047819e-24 -1.803594715316015095e-23 -1.690000000000000000e+02 8.295116921349807084e-24 1.285984465025066544e-23 -1.692500000000000000e+02 -8.672962098100988905e-24 -1.272403754934400394e-23 -1.695000000000000000e+02 6.741224365255956846e-24 1.697487682204436072e-23 -1.697500000000000000e+02 -4.512843634118496219e-24 -1.078599410201275215e-23 -1.700000000000000000e+02 1.242512202085240943e-23 1.453785405450808469e-23 -1.702500000000000000e+02 -1.251883195278574952e-23 -1.809217226872935482e-23 -1.705000000000000000e+02 9.347927433350468043e-24 1.207998048351059671e-23 -1.707500000000000000e+02 -1.223553397929901586e-23 -8.539251057948482560e-24 -1.710000000000000000e+02 1.462022943836329845e-23 7.133667073815472431e-24 -1.712500000000000000e+02 -1.037702359565257294e-23 -1.616487100961071997e-23 -1.715000000000000000e+02 5.500563586725798545e-24 1.878608767122176494e-23 -1.717500000000000000e+02 -6.931933442793270887e-24 -7.086527041086270029e-24 -1.720000000000000000e+02 1.251333692704690057e-23 1.512410213033873940e-23 -1.722500000000000000e+02 -1.107277298205077857e-23 -9.993210095127851703e-24 -1.725000000000000000e+02 8.426925254409301082e-24 1.467357991912424535e-23 -1.727500000000000000e+02 -1.206795065570058828e-23 -9.055500526666195976e-24 -1.730000000000000000e+02 1.035189361419631572e-23 1.580510741250121866e-23 -1.732500000000000000e+02 -1.466068040859388673e-23 -1.456599871597307374e-23 -1.735000000000000000e+02 1.755952014004040545e-23 1.274721807449406171e-23 -1.737500000000000000e+02 -1.113623826546564374e-23 -5.590490197753953102e-24 -1.740000000000000000e+02 1.924154375877244622e-23 1.068817143605724435e-23 -1.742500000000000000e+02 -1.273683428446046600e-23 -8.189884466154259618e-24 -1.745000000000000000e+02 1.033693648657432661e-23 1.821676651792243925e-23 -1.747500000000000000e+02 -1.232040842335034633e-23 -6.146895498746562301e-24 -1.750000000000000000e+02 1.470776099106582030e-23 1.116528376418112341e-23 -1.752500000000000000e+02 -7.627954415481939435e-24 -1.039301228812676773e-23 -1.755000000000000000e+02 1.265626648112677809e-23 1.317242421749663596e-23 -1.757500000000000000e+02 -7.277773247779988363e-24 -1.143883171972392743e-23 -1.760000000000000000e+02 1.599226774279080779e-23 1.647377169369203225e-23 -1.762500000000000000e+02 -7.964275028012497107e-24 -1.256309605181969414e-23 -1.765000000000000000e+02 1.023915245171318009e-23 9.871739145221750104e-24 -1.767500000000000000e+02 -1.618408645589515587e-23 -1.467602685095975377e-23 -1.770000000000000000e+02 5.854719519084999697e-24 9.844060806937764639e-24 -1.772500000000000000e+02 -1.752738748718496244e-23 -3.721755377608666096e-24 -1.775000000000000000e+02 1.093857032476237794e-23 1.125147237277785156e-23 -1.777500000000000000e+02 -1.704538928849556483e-23 -7.764149242694928030e-24 -1.780000000000000000e+02 1.187339232218234406e-23 9.972101904434785770e-24 -1.782500000000000000e+02 -6.748057600849725494e-24 -9.117415065654670976e-24 -1.785000000000000000e+02 1.184593125074716118e-23 5.497407145301722190e-24 -1.787500000000000000e+02 -1.961066494191905719e-23 -6.160288030654495645e-24 -1.790000000000000000e+02 1.573595963222881939e-23 1.116401457425409629e-23 -1.792500000000000000e+02 -1.349849593290910613e-23 -3.310716690610598399e-24 -1.795000000000000000e+02 1.084952372005291422e-23 1.099500232876964582e-23 -1.797500000000000000e+02 -1.381278318005209439e-23 -6.838387823208260594e-24 -1.800000000000000000e+02 7.889783067095179141e-24 8.966138379225473288e-24 -1.802500000000000000e+02 -1.286420187576831910e-23 -8.107674389723485716e-24 -1.805000000000000000e+02 1.583363516787199122e-23 4.046602396190679205e-24 -1.807500000000000000e+02 -1.691437480877620221e-23 -1.070091594466285512e-23 -1.810000000000000000e+02 1.527278568774853945e-23 5.476399744936309258e-24 -1.812500000000000000e+02 -1.091266706565234168e-23 -5.853442982365553183e-24 -1.815000000000000000e+02 1.112989255146606350e-23 8.616828371561942236e-24 -1.817500000000000000e+02 -9.538498741824822110e-24 -5.429253377260700418e-24 -1.820000000000000000e+02 9.039316617885085010e-24 7.610342714973483738e-24 -1.822500000000000000e+02 -1.179707721743174853e-23 -8.066935866374189306e-24 -1.825000000000000000e+02 1.296744219041639000e-23 3.503571757616938954e-24 -1.827500000000000000e+02 -1.387334509184264896e-23 -4.575831856066326962e-24 -1.830000000000000000e+02 1.507829282673943842e-23 -4.051953172776516933e-24 -1.832500000000000000e+02 -1.287514563159523719e-23 -3.593940568274490443e-24 -1.835000000000000000e+02 6.372557947233944458e-24 8.206513317223816221e-24 -1.837500000000000000e+02 -1.864765306808617005e-23 -8.503369529142710356e-24 -1.840000000000000000e+02 9.786057695204802540e-24 4.468274073834560061e-24 -1.842500000000000000e+02 -1.477351970392621363e-23 -7.896223623802947664e-24 -1.845000000000000000e+02 1.686266834888872296e-23 5.134797951546138345e-24 -1.847500000000000000e+02 -1.001844860190477910e-23 -5.019982462461999322e-24 -1.850000000000000000e+02 1.655254309673114649e-23 9.409980135725244583e-24 -1.852500000000000000e+02 -1.342466945154978599e-23 -8.089186001284969534e-24 -1.855000000000000000e+02 1.048996618699861355e-23 4.409512936963450910e-24 -1.857500000000000000e+02 -9.742970692924860645e-24 -5.141921755271406657e-24 -1.860000000000000000e+02 1.460924101595648664e-23 -6.918711322736931438e-25 -1.862500000000000000e+02 -1.889201133345180488e-23 -3.248610832020791762e-24 -1.865000000000000000e+02 1.197075628480536250e-23 2.260129487931519634e-24 -1.867500000000000000e+02 -9.768834751592816402e-24 -1.149885582326797354e-24 -1.870000000000000000e+02 1.974050997621409825e-23 8.349143903668961330e-24 -1.872500000000000000e+02 -1.791073317309598380e-23 -5.714954441318866015e-24 -1.875000000000000000e+02 2.233518052509140943e-23 5.293956706079389214e-24 -1.877500000000000000e+02 -1.105841106400820343e-23 -4.247171109064271978e-24 -1.880000000000000000e+02 1.663249195693505732e-23 3.802981904957986239e-24 -1.882500000000000000e+02 -1.891448154412923774e-23 -7.740788804266365812e-24 -1.885000000000000000e+02 2.262214875652562344e-23 3.934162132873809483e-25 -1.887500000000000000e+02 -1.479129344644971095e-23 6.082773723275384813e-25 -1.890000000000000000e+02 1.180374155452751375e-23 3.125388935641658745e-24 -1.892500000000000000e+02 -1.626704051662351114e-23 -2.948338904379622774e-24 -1.895000000000000000e+02 1.427398849156610710e-23 -9.674383668827840374e-25 -1.897500000000000000e+02 -1.839587140407944165e-23 -5.102062431031659643e-24 -1.900000000000000000e+02 1.700717135901615525e-23 2.298531890814791949e-24 -1.902500000000000000e+02 -1.516688617695945534e-23 -1.504417466737140119e-25 -1.905000000000000000e+02 8.262755749728244560e-24 5.262051339820713849e-24 -1.907500000000000000e+02 -1.803185337560739971e-23 -3.518301093578399525e-24 -1.910000000000000000e+02 1.053064181337482504e-23 2.839944350324997487e-24 -1.912500000000000000e+02 -1.781225491871362892e-23 -5.860459959914832934e-24 -1.915000000000000000e+02 1.274489594655796566e-23 1.723700534431365460e-24 -1.917500000000000000e+02 -1.411018394831038020e-23 -5.374323024669145540e-24 -1.920000000000000000e+02 1.371778826624144888e-23 2.983881238929274612e-24 -1.922500000000000000e+02 -1.552638777982279662e-23 -8.765869031208329037e-24 -1.925000000000000000e+02 1.203011797687055472e-23 3.588785509627971398e-25 -1.927500000000000000e+02 -1.226765237995408368e-23 4.914251288222040044e-24 -1.930000000000000000e+02 1.380281472769465231e-23 -1.682351675246466880e-24 -1.932500000000000000e+02 -7.397648381896507285e-24 -4.057421273007719381e-24 -1.935000000000000000e+02 1.149733673675857882e-23 8.884232105502018023e-25 -1.937500000000000000e+02 -1.499024062292347478e-23 2.612590062585712485e-24 -1.940000000000000000e+02 1.969487763320222610e-23 6.933197307668027748e-24 -1.942500000000000000e+02 -1.911264640797517784e-23 3.381414244519996847e-24 -1.945000000000000000e+02 1.126505664564663642e-23 -8.494311089477860857e-24 -1.947500000000000000e+02 -1.898253367671524478e-23 3.512814032495614811e-24 -1.950000000000000000e+02 1.431584500663717819e-23 -2.948326712964433418e-24 -1.952500000000000000e+02 -1.588494292136764170e-23 -5.062530607386882167e-24 -1.955000000000000000e+02 1.557390496434142253e-23 -2.362908738542441344e-24 -1.957500000000000000e+02 -1.058176228971632370e-23 3.116944702095888170e-24 -1.960000000000000000e+02 1.042148531132635398e-23 -4.169683003362701556e-24 -1.962500000000000000e+02 -1.616567584603280420e-23 7.936721703111457177e-24 -1.965000000000000000e+02 1.619723007424773173e-23 -3.981557158434867826e-25 -1.967500000000000000e+02 -2.406790182157258328e-23 5.062964091912513705e-24 -1.970000000000000000e+02 1.269188519135834166e-23 2.734576046426584408e-24 -1.972500000000000000e+02 -1.633737339279704388e-23 -5.104759252244512746e-24 -1.975000000000000000e+02 1.234678200167263018e-23 -2.584257282495775344e-24 -1.977500000000000000e+02 -1.351824908295554305e-23 5.911052425884441692e-24 -1.980000000000000000e+02 1.864734148946481694e-23 -8.254424172192308919e-24 -1.982500000000000000e+02 -1.652873298381271406e-23 4.816143579976815142e-24 -1.985000000000000000e+02 2.268455724292940501e-23 -6.792027003533530408e-24 -1.987500000000000000e+02 -1.707240217082220822e-23 2.638470053734691817e-24 -1.990000000000000000e+02 1.418456906076446161e-23 4.008395716987841819e-24 -1.992500000000000000e+02 -1.356088960076210992e-23 8.843049792497094345e-26 -1.995000000000000000e+02 8.636417687088521553e-24 8.210193080336338674e-25 -1.997500000000000000e+02 -1.257967565813058126e-23 7.396536953270460166e-24 -2.000000000000000000e+02 1.432433791455765078e-23 -7.669701596608124843e-24 -2.002500000000000000e+02 -1.361629818384504906e-23 -2.894794724847158092e-24 -2.005000000000000000e+02 1.802728806383801572e-23 6.409936368023913559e-24 -2.007500000000000000e+02 -1.393338873617909541e-23 -5.190669033613809820e-24 -2.010000000000000000e+02 1.818730849893712993e-23 -6.618949366356212948e-24 -2.012500000000000000e+02 -1.899498261279811337e-23 5.247105989779877463e-24 -2.015000000000000000e+02 1.299956789432591672e-23 -3.521283667314748335e-24 -2.017500000000000000e+02 -9.206311022301505547e-24 3.905392059305899318e-24 -2.020000000000000000e+02 1.353233141915728156e-23 -3.724467968080659202e-25 -2.022500000000000000e+02 -1.833042451472229393e-23 8.157609061440518623e-26 -2.025000000000000000e+02 9.398243818719894461e-24 -4.026044052070901837e-24 -2.027500000000000000e+02 -1.647623189798312473e-23 3.192407527496644851e-24 -2.030000000000000000e+02 8.687381702253278219e-24 -3.900079212228526978e-24 -2.032500000000000000e+02 -1.167038805059276495e-23 6.907958534850409443e-24 -2.035000000000000000e+02 2.946196437864891828e-24 -3.421253985445489149e-24 -2.037500000000000000e+02 -1.644616267662694051e-23 5.356128764240006212e-24 -2.040000000000000000e+02 8.120899056499429950e-24 -6.419182869464386502e-24 -2.042500000000000000e+02 -1.836036482430030427e-23 1.029365166467985665e-23 -2.045000000000000000e+02 1.103682249700947374e-23 -8.896956759879335951e-24 -2.047500000000000000e+02 -1.769245134986452704e-23 3.289115202346370042e-24 -2.050000000000000000e+02 1.478863297667961163e-23 -5.194440999275442876e-24 -2.052500000000000000e+02 -1.587200375059966009e-23 8.069452945054206552e-24 -2.055000000000000000e+02 1.078520633855615852e-23 -5.677812760404430833e-24 -2.057500000000000000e+02 -9.637305735476589357e-24 5.981768651319813526e-24 -2.060000000000000000e+02 1.369389329248865912e-23 -4.992250775699010190e-24 -2.062500000000000000e+02 -1.211896073809071087e-23 1.359402300017505564e-23 -2.065000000000000000e+02 1.240493002914843903e-23 -8.507841996614076864e-24 -2.067500000000000000e+02 -1.660438883288787190e-23 4.762770717728969104e-24 -2.070000000000000000e+02 1.344399217698553766e-23 -4.082834072409049145e-24 -2.072500000000000000e+02 -4.325252108431750087e-24 1.182068737605336367e-23 -2.075000000000000000e+02 1.115000003983277551e-23 -8.192068116485248243e-24 -2.077500000000000000e+02 -1.577521199215408214e-23 1.388807279586220339e-23 -2.080000000000000000e+02 6.275823942410075083e-24 -9.414267336583684752e-24 -2.082500000000000000e+02 -1.900127911177262477e-23 8.201245051486877471e-24 -2.085000000000000000e+02 1.045311026566598427e-23 -4.098808844637091863e-24 -2.087500000000000000e+02 -1.364439569911534349e-23 9.583774479778234986e-24 -2.090000000000000000e+02 1.542120175734112872e-23 -7.655556829332132529e-24 -2.092500000000000000e+02 -1.171601510509774418e-23 7.815227135769392852e-24 -2.095000000000000000e+02 1.377526446172613633e-23 -4.337808127367802387e-24 -2.097500000000000000e+02 -8.876033849463377791e-24 1.117278741265828429e-23 -2.100000000000000000e+02 1.555611299853505544e-23 -1.374543616639090589e-23 -2.102500000000000000e+02 -1.212616739233788281e-23 1.062351939174969876e-23 -2.105000000000000000e+02 1.447660734160512590e-23 -6.749718794212045196e-24 -2.107500000000000000e+02 -9.063258643277849170e-24 1.193253595106503896e-23 -2.110000000000000000e+02 6.665917001426026405e-24 -9.663296570778028516e-24 -2.112500000000000000e+02 -1.432776461961890927e-23 8.696404363903422863e-25 -2.115000000000000000e+02 1.195016744843110281e-23 -1.214340108010082241e-23 -2.117500000000000000e+02 -1.143912859047099429e-23 1.306849045262139291e-23 -2.120000000000000000e+02 1.901978702230573877e-24 -1.039523376828784565e-23 -2.122500000000000000e+02 -9.057902367246793540e-24 1.644549025612632972e-23 -2.125000000000000000e+02 1.085867878662546693e-23 -8.603450587338793911e-24 -2.127500000000000000e+02 -9.021154903818756698e-24 7.722102693516866257e-24 -2.130000000000000000e+02 1.531492756542504509e-23 -1.499655021255674792e-23 -2.132500000000000000e+02 -1.098240964241637646e-23 1.804417004225766952e-23 -2.135000000000000000e+02 3.641842219286941899e-24 -7.068886224143918120e-24 -2.137500000000000000e+02 -6.869268395115426049e-24 1.043711733517342829e-23 -2.140000000000000000e+02 9.673373419706110620e-24 -6.961638512287516907e-24 -2.142500000000000000e+02 -6.721754548514132214e-24 1.555022972545427561e-23 -2.145000000000000000e+02 1.123239953738569788e-23 -6.141599606462701465e-24 -2.147500000000000000e+02 -8.124444504652170431e-24 1.387421160720490253e-23 -2.150000000000000000e+02 6.486938792974739559e-24 -9.501063665597511528e-24 -2.152500000000000000e+02 -8.642338041270794160e-24 1.350579180396585361e-23 -2.155000000000000000e+02 7.665849670815791504e-24 -1.016819185179184695e-23 -2.157500000000000000e+02 -9.809470387509188219e-24 1.478344160984415219e-23 -2.160000000000000000e+02 8.548025302479330393e-24 -1.041286684554721800e-23 -2.162500000000000000e+02 -8.262522864617949050e-24 1.550621479475562766e-23 -2.165000000000000000e+02 7.849263600057956694e-24 -1.656035536721404122e-23 -2.167500000000000000e+02 -1.157778812477958553e-23 1.404269039556213525e-23 -2.170000000000000000e+02 6.303134140561786647e-24 -1.455809231966782207e-23 -2.172500000000000000e+02 -1.148410982989410488e-23 9.195635435816170478e-24 -2.175000000000000000e+02 3.119627392971002183e-24 -9.355679345659035822e-24 -2.177500000000000000e+02 -1.779974305395164668e-24 1.327170634664202420e-23 -2.180000000000000000e+02 2.964745138008977574e-24 -1.533698495070705675e-23 -2.182500000000000000e+02 -4.786160680311129573e-24 1.339123194682031342e-23 -2.185000000000000000e+02 1.660683604573113827e-25 -1.064554687419336158e-23 -2.187500000000000000e+02 -6.663111653443022352e-24 1.785824545290658368e-23 -2.190000000000000000e+02 1.000039042934480126e-23 -1.463668211956134529e-23 -2.192500000000000000e+02 -3.034630107456200174e-24 1.430207297074904520e-23 -2.195000000000000000e+02 3.034225101821776145e-24 -1.229629435292502954e-23 -2.197500000000000000e+02 -2.676873038111719716e-24 1.398202500118380328e-23 -2.200000000000000000e+02 4.081574952488060709e-24 -8.502239896534339525e-24 -2.202500000000000000e+02 -8.904174823018060595e-24 1.533287255324588848e-23 -2.205000000000000000e+02 6.419740788543546751e-25 -1.450326187534901616e-23 -2.207500000000000000e+02 -1.244551116246893638e-23 1.336955348104538265e-23 -2.210000000000000000e+02 6.551223194824965091e-24 -1.574651107211336743e-23 -2.212500000000000000e+02 -1.748237294376672629e-24 1.687101327299818398e-23 -2.215000000000000000e+02 1.068632114258641550e-23 -8.736654800208387973e-24 -2.217500000000000000e+02 -5.603938040283213388e-24 9.801289560570987543e-24 -2.220000000000000000e+02 2.906398659210879251e-24 -1.248826937219475220e-23 -2.222500000000000000e+02 -6.034915665557699043e-24 1.059097337661189223e-23 -2.225000000000000000e+02 4.945092773158455733e-24 -1.559103746083919293e-23 -2.227500000000000000e+02 -3.027042915187647790e-24 1.187995180991476042e-23 -2.230000000000000000e+02 -2.164062003088820254e-24 -1.256391931604746733e-23 -2.232500000000000000e+02 -1.487486886624583383e-24 2.024921205596820660e-23 -2.235000000000000000e+02 5.213719647581425917e-24 -1.232978933839618287e-23 -2.237500000000000000e+02 -1.968284688954196125e-24 1.104630093298828800e-23 -2.240000000000000000e+02 1.840537121978884210e-24 -1.194787171894546947e-23 -2.242500000000000000e+02 -9.695328756260287177e-24 1.003299491207989626e-23 -2.245000000000000000e+02 2.762321598704993697e-24 -1.679906631471442949e-23 -2.247500000000000000e+02 -2.606267408129560842e-24 2.204837626965244281e-24 -2.250000000000000000e+02 2.976318594572121397e-25 -1.403668852148938462e-23 -2.252500000000000000e+02 -1.601686120237078405e-24 1.219399995132225254e-23 -2.255000000000000000e+02 8.406062317485818926e-25 -1.330630557981014328e-23 -2.257500000000000000e+02 -1.230530875623675534e-24 1.538337695230904051e-23 -2.260000000000000000e+02 8.843868554687618333e-25 -1.179189869715376592e-23 -2.262500000000000000e+02 -2.888074140843407864e-24 1.194120389159645885e-23 -2.265000000000000000e+02 -3.165980663170674359e-24 -1.135178796283101498e-23 -2.267500000000000000e+02 -5.389142079112142485e-24 1.455557935530029233e-23 -2.270000000000000000e+02 1.872186524423168813e-24 -1.761398353968756660e-23 -2.272500000000000000e+02 -5.600719043971284672e-25 1.049212839874179931e-23 -2.275000000000000000e+02 1.756876002380710536e-24 -1.467966706597015952e-23 -2.277500000000000000e+02 1.560781125971923536e-24 1.464020132613113277e-23 -2.280000000000000000e+02 -5.960570245665127918e-25 -1.463409544545401635e-23 -2.282500000000000000e+02 7.422497151655401615e-24 1.484943398969891986e-23 -2.285000000000000000e+02 -2.344325559371412730e-24 -5.703939323019688549e-24 -2.287500000000000000e+02 9.072589415004044595e-25 1.622650722059127323e-23 -2.290000000000000000e+02 -2.722822327059397018e-24 -1.090812116982928863e-23 -2.292500000000000000e+02 -3.213730739437429446e-25 4.287351286053627869e-24 -2.295000000000000000e+02 -5.038717506850866293e-24 -1.774662394801749853e-23 -2.297500000000000000e+02 3.901702392910238826e-24 1.199981119448500842e-23 -2.300000000000000000e+02 -3.522180164285146388e-24 -1.167004003192713126e-23 -2.302500000000000000e+02 4.167619504051673067e-24 7.478261967454735560e-24 -2.305000000000000000e+02 2.050926109666152991e-24 -1.589579811099790905e-23 -2.307500000000000000e+02 2.005598514774293904e-24 1.719800893529542485e-23 -2.310000000000000000e+02 -4.238441774307987340e-24 -4.521568970856947725e-24 -2.312500000000000000e+02 3.590751784501639644e-24 1.400415479010344076e-23 -2.315000000000000000e+02 -5.120949000549355079e-25 -1.387262146464048420e-23 -2.317500000000000000e+02 5.206098062374617878e-24 9.706386399499595061e-24 -2.320000000000000000e+02 -7.903383102200196027e-24 -1.482186102452311644e-23 -2.322500000000000000e+02 8.737796977586454414e-24 5.253856783860726730e-24 -2.325000000000000000e+02 -6.582770486313694148e-24 -1.445976103272362898e-23 -2.327500000000000000e+02 -1.645355706069363712e-24 6.173920629471926623e-24 -2.330000000000000000e+02 -1.371908778822812074e-24 -1.183863175696679551e-23 -2.332500000000000000e+02 2.550736916671110319e-24 1.158414432883252293e-23 -2.335000000000000000e+02 -3.596151393265209228e-24 -8.190741450059645919e-24 -2.337500000000000000e+02 4.973908020339594354e-24 1.778614049113463936e-23 -2.340000000000000000e+02 2.055111450129891006e-24 -1.800298138900996116e-23 -2.342500000000000000e+02 5.066750664047607241e-24 1.679174622666695879e-23 -2.345000000000000000e+02 -2.931915842419286367e-24 -1.239448586384421176e-23 -2.347500000000000000e+02 3.583231728942708648e-24 1.108342958480235614e-23 -2.350000000000000000e+02 -7.631835539379911932e-24 -1.103614341761561203e-23 -2.352500000000000000e+02 8.380458772732672767e-24 7.897535105229279366e-24 -2.355000000000000000e+02 -3.152273318935729844e-24 -7.887476363559102669e-24 -2.357500000000000000e+02 1.135832800366193487e-23 1.658918599326977332e-23 -2.360000000000000000e+02 -8.527880805046350991e-24 -1.156283326806437304e-23 -2.362500000000000000e+02 7.201677365797404595e-24 1.768426342341647412e-23 -2.365000000000000000e+02 -3.110911566738887027e-24 -1.227484081058039447e-23 -2.367500000000000000e+02 -6.789449884874388276e-26 7.344889394579748357e-24 -2.370000000000000000e+02 -1.103036918307448895e-23 -1.467709087453454606e-23 -2.372500000000000000e+02 8.277033870776776147e-24 1.214117383379781580e-23 -2.375000000000000000e+02 -5.738021473869544626e-24 -3.175611761910893389e-24 -2.377500000000000000e+02 4.376721767802051871e-24 1.361407245917161934e-23 -2.380000000000000000e+02 -3.514525822429901464e-24 -1.433712114017925832e-23 -2.382500000000000000e+02 3.720517731665627560e-24 9.993440041559303674e-24 -2.385000000000000000e+02 -1.255331239554042530e-23 -1.178724010448865049e-23 -2.387500000000000000e+02 7.658255666728207107e-24 1.582845484013623592e-23 -2.390000000000000000e+02 -6.994471849401978245e-24 -1.082940093580274343e-23 -2.392500000000000000e+02 1.114624902100819868e-23 4.947046476430079305e-24 -2.395000000000000000e+02 -6.934267744772405038e-24 -5.178831908486183500e-24 -2.397500000000000000e+02 1.100541328337776575e-23 1.168327720589095599e-23 -2.400000000000000000e+02 -1.164565279380352877e-23 -9.047682719695682021e-24 -2.402500000000000000e+02 1.139060649128614810e-23 3.404156042542187640e-24 -2.405000000000000000e+02 -1.219341167483550760e-23 -1.423298866454449564e-23 -2.407500000000000000e+02 1.226272935480325146e-23 1.502479024798131548e-23 -2.410000000000000000e+02 -9.301897333285269218e-24 -5.230774875255385622e-24 -2.412500000000000000e+02 8.666576578149273779e-24 8.526736563402301990e-24 -2.415000000000000000e+02 -1.036140847380217875e-23 -6.691401036362940450e-24 -2.417500000000000000e+02 8.465508475900580848e-24 1.169620125384592773e-23 -2.420000000000000000e+02 -1.025130299472478034e-23 -9.185510395201228766e-24 -2.422500000000000000e+02 3.749967870247084304e-24 6.912600036220192333e-24 -2.425000000000000000e+02 -1.237939232433643786e-23 -7.662328790898054343e-24 -2.427500000000000000e+02 7.088384865270475796e-24 3.675307832838996281e-24 -2.430000000000000000e+02 -8.532652776147205239e-24 -1.122732502257587319e-23 -2.432500000000000000e+02 1.158909684797793770e-23 1.219772172408131016e-23 -2.435000000000000000e+02 -1.088533238767953734e-23 -7.795632457143959741e-24 -2.437500000000000000e+02 1.127161422803493706e-23 9.514570930512482586e-24 -2.440000000000000000e+02 -8.269595461819377563e-24 -8.529629816661581937e-24 -2.442500000000000000e+02 8.893548941299972339e-24 1.470985017415990102e-23 -2.445000000000000000e+02 -1.919011447090469703e-23 -8.558779296561536913e-24 -2.447500000000000000e+02 1.036328965133839158e-23 4.759938564510872985e-24 -2.450000000000000000e+02 -4.918589556112799544e-24 -6.718720006499541386e-24 -2.452500000000000000e+02 8.403819815002229920e-24 1.033206494384410883e-23 -2.455000000000000000e+02 -7.745878749973348092e-24 -7.634411213961880902e-24 -2.457500000000000000e+02 7.946749492709223236e-24 7.578106931781889180e-24 -2.460000000000000000e+02 -1.310491965122773342e-23 -3.517469019311744136e-24 -2.462500000000000000e+02 1.858496243346672056e-23 7.222284642971596942e-24 -2.465000000000000000e+02 -1.108127877849315632e-23 6.611537651898954628e-24 -2.467500000000000000e+02 7.377115617723565723e-24 3.662185183157880137e-24 -2.470000000000000000e+02 -6.691601632323893841e-24 -9.194242520689756872e-24 -2.472500000000000000e+02 1.216910001380482564e-23 5.799232685627109638e-24 -2.475000000000000000e+02 -9.617116403459130752e-24 -9.595366614616204689e-24 -2.477500000000000000e+02 4.089799404243475904e-24 1.139624026588121819e-23 -2.480000000000000000e+02 -1.245880980123790001e-23 -1.351939547742219752e-24 -2.482500000000000000e+02 1.150087743703263955e-23 -3.697308231882392454e-24 -2.485000000000000000e+02 -1.188683501768170797e-23 -9.396770645204031761e-24 -2.487500000000000000e+02 7.565427862979363111e-24 -1.822638702698374366e-24 -2.490000000000000000e+02 -1.261308698963083955e-23 -5.362004723679409995e-24 -2.492500000000000000e+02 1.677527902425827823e-23 1.294231792778118603e-24 -2.495000000000000000e+02 -1.290593274242805791e-23 -8.599308370103098915e-25 -2.497500000000000000e+02 1.387666906341142495e-23 7.746151123206393207e-25 -2.500000000000000000e+02 -5.891511089715907669e-24 4.585231659859693701e-25 -2.502500000000000000e+02 1.101481617977889460e-23 9.550635621654851064e-25 -2.505000000000000000e+02 -1.208531511071769429e-23 -1.183850127083241056e-24 -2.507500000000000000e+02 1.595706825265044173e-23 4.327836506289438160e-24 -2.510000000000000000e+02 -7.201376267303644543e-24 6.404565918219393285e-25 -2.512500000000000000e+02 1.415644967522795756e-23 2.153624578759904912e-24 -2.515000000000000000e+02 -1.614275641960038772e-23 -1.144920026146956908e-24 -2.517500000000000000e+02 1.360723737748793517e-23 -5.932551395624799974e-25 -2.520000000000000000e+02 -1.072084448785165950e-23 -8.467280256122244757e-25 -2.522500000000000000e+02 1.256936946264592859e-23 -7.814014352432686385e-25 -2.525000000000000000e+02 -5.141925368105692266e-24 6.269952166668599529e-25 -2.527500000000000000e+02 8.057865745742958956e-24 -1.196750779371104117e-24 -2.530000000000000000e+02 -4.824478946912358578e-24 -7.386206461637052977e-25 -2.532500000000000000e+02 5.347783407227562788e-24 1.210680031358332655e-24 -2.535000000000000000e+02 -1.571958691054178454e-23 -4.370092045626890922e-24 -2.537500000000000000e+02 1.177418790931338910e-23 -1.586084355917404960e-24 -2.540000000000000000e+02 -1.270295301945801671e-23 -8.465290466147214062e-24 -2.542500000000000000e+02 1.324967198234792585e-23 3.637445731484127963e-25 -2.545000000000000000e+02 -8.581466131831535362e-24 4.627629809555979059e-24 -2.547500000000000000e+02 7.474147909352333905e-24 -4.231290408982947892e-24 -2.550000000000000000e+02 -1.207285408795404581e-23 -1.145586288324856654e-24 -2.552500000000000000e+02 1.213767471468663468e-23 1.479830024418261322e-24 -2.555000000000000000e+02 -1.626127986748904263e-23 1.266885017250750429e-24 -2.557500000000000000e+02 1.048446536108512770e-23 -1.524442483217536078e-24 -2.560000000000000000e+02 -1.123277631031994101e-23 6.164467313578368602e-25 -2.562500000000000000e+02 1.250590064967929920e-23 -7.343447285994474483e-24 -2.565000000000000000e+02 -1.257578364208438481e-23 6.114680958795405558e-24 -2.567500000000000000e+02 1.523696195625207234e-23 -2.635444337551646935e-24 -2.570000000000000000e+02 -1.132615921301666081e-23 4.829363023256454429e-24 -2.572500000000000000e+02 1.010534474880586770e-23 1.160511876229350659e-24 -2.575000000000000000e+02 -1.669398034390855679e-23 3.199304688641244139e-24 -2.577500000000000000e+02 7.284331257904023049e-24 -5.374974453957817741e-25 -2.580000000000000000e+02 -1.288598659735296070e-23 -1.048390411250719412e-24 -2.582500000000000000e+02 5.251137986470509028e-24 4.492311387561319893e-25 -2.585000000000000000e+02 -1.223133972904140817e-23 -4.529106064473166147e-24 -2.587500000000000000e+02 7.080894380016372960e-24 -1.369667250974125916e-24 -2.590000000000000000e+02 -2.265300559449626560e-23 3.254510581586068805e-24 -2.592500000000000000e+02 1.354944424963970255e-23 -1.176751597104837023e-23 -2.595000000000000000e+02 -5.660589615169769178e-24 4.031836606592607243e-24 -2.597500000000000000e+02 1.144070130076535651e-23 -1.302411318959878738e-24 -2.600000000000000000e+02 -9.582476658580011959e-24 7.930015739295729447e-24 -2.602500000000000000e+02 9.672072708228417930e-24 -6.032290075074642707e-24 -2.605000000000000000e+02 -1.837977839738616700e-23 1.171803919333876969e-23 -2.607500000000000000e+02 9.340885424732074802e-24 -1.550288718518722741e-24 -2.610000000000000000e+02 -1.487970700783418348e-23 -1.034473530798402542e-24 -2.612500000000000000e+02 5.744099893678521443e-24 -1.074028905127812942e-24 -2.615000000000000000e+02 -1.443557847666903356e-23 1.462530942864401621e-23 -2.617500000000000000e+02 9.433943614770399131e-24 -8.024689864390790813e-24 -2.620000000000000000e+02 8.703680510122792683e-25 -6.411955380231409536e-25 -2.622500000000000000e+02 7.057601538170042240e-24 -9.877972720257096663e-24 -2.625000000000000000e+02 -3.634743551263209181e-24 6.941279209184702479e-24 -2.627500000000000000e+02 1.028991267195881268e-23 -8.268589027494877081e-24 -2.630000000000000000e+02 -2.591717103860142528e-24 7.557122063506237107e-24 -2.632500000000000000e+02 1.277617624694065069e-23 -7.242395892368908576e-24 -2.635000000000000000e+02 -1.502885185653066508e-23 5.446907304590404653e-24 -2.637500000000000000e+02 1.217273326000633467e-23 -1.214341315713828011e-23 -2.640000000000000000e+02 -5.863150133665396945e-24 1.250056406736254072e-23 -2.642500000000000000e+02 3.472449879886567772e-24 -1.139368988605888923e-23 -2.645000000000000000e+02 -6.085440151766000114e-24 5.727656506176663935e-24 -2.647500000000000000e+02 2.148037709229899391e-24 -3.720574306959935193e-24 -2.650000000000000000e+02 -6.580770771794327500e-24 8.016392958690384756e-24 -2.652500000000000000e+02 1.146585102788005410e-23 -6.390620801714850685e-24 -2.655000000000000000e+02 -6.112171347435815439e-24 1.026477481219088078e-23 -2.657500000000000000e+02 2.355719519619799473e-24 -3.968348237741993282e-24 -2.660000000000000000e+02 -7.796552370832237129e-24 7.539470904651313168e-24 -2.662500000000000000e+02 7.826206194653835492e-24 -9.084085294545160024e-24 -2.665000000000000000e+02 -3.326288775164938245e-24 2.829707751517233459e-24 -2.667500000000000000e+02 6.955628722306754715e-24 -5.208736627465197811e-24 -2.670000000000000000e+02 -7.407287251867248566e-24 9.408143644793858192e-24 -2.672500000000000000e+02 3.821664793140981915e-24 -6.302460957172207067e-24 -2.675000000000000000e+02 -3.926696004583739185e-24 6.528936698203922119e-24 -2.677500000000000000e+02 1.163565015638502473e-23 -6.685696213648933844e-24 -2.680000000000000000e+02 -2.774825020776908725e-24 2.024388058928799800e-24 -2.682500000000000000e+02 2.826433441795761770e-24 -9.151094806936650986e-24 -2.685000000000000000e+02 -4.338265361979107267e-25 9.336414065602333258e-24 -2.687500000000000000e+02 4.521358645440917195e-24 -1.077644512758114737e-23 -2.690000000000000000e+02 8.468900398307405621e-25 1.251108758405419170e-23 -2.692500000000000000e+02 4.267730928959817700e-24 -9.450387112843409914e-24 -2.695000000000000000e+02 -3.059854389606872547e-25 4.527363071223171934e-24 -2.697500000000000000e+02 3.049939772104772107e-24 -7.219452115331293311e-24 -2.700000000000000000e+02 -4.574665044842240672e-24 5.428833133956479412e-24 -2.702500000000000000e+02 9.229475311836900146e-24 -5.972636582326904189e-24 -2.705000000000000000e+02 -8.434468399773568142e-24 1.079242281605068749e-23 -2.707500000000000000e+02 4.417572460900638782e-24 -9.031888419357904832e-24 -2.710000000000000000e+02 -5.480195754915771751e-24 4.003999365823075670e-24 -2.712500000000000000e+02 4.263820009999130844e-24 -4.029965190654734955e-24 -2.715000000000000000e+02 -2.558943556160862971e-24 1.581508646618579280e-23 -2.717500000000000000e+02 1.146971552187572309e-23 -1.354086035645234954e-23 -2.720000000000000000e+02 -1.361352574458912167e-24 2.726153257997097056e-25 -2.722500000000000000e+02 -2.010556618690938724e-24 -5.792293810773878268e-24 -2.725000000000000000e+02 -3.845780293522220031e-24 7.511253862211490293e-24 -2.727500000000000000e+02 4.837643270153313616e-24 -9.145824368106471492e-24 -2.730000000000000000e+02 -3.152376591004649345e-24 1.164070173803215247e-23 -2.732500000000000000e+02 4.507756415603537278e-24 -1.148963951390525638e-23 -2.735000000000000000e+02 3.441724817480729327e-24 9.337161094579594549e-24 -2.737500000000000000e+02 5.136426958699865008e-24 -7.846874468798128915e-24 -2.740000000000000000e+02 -5.460970081451200161e-24 1.248774122980705318e-23 -2.742500000000000000e+02 -9.452907400426287395e-25 -7.108769132554037719e-24 -2.745000000000000000e+02 -6.967771474171288845e-25 -1.460644612841345986e-24 -2.747500000000000000e+02 -5.766396261346410432e-24 -1.554991283631775431e-23 -2.750000000000000000e+02 1.962889038445194468e-24 7.166700812808855823e-24 -2.752500000000000000e+02 -4.346635586959490655e-25 -8.308493342002933552e-24 -2.755000000000000000e+02 -1.036866720356486768e-24 1.331143801113529853e-23 -2.757500000000000000e+02 1.551870378408983411e-24 -5.317242711998983418e-24 -2.760000000000000000e+02 -2.268013839608960429e-24 8.907237653004325067e-24 -2.762500000000000000e+02 5.560160946466458745e-24 -6.226887153965202423e-24 -2.765000000000000000e+02 3.031117230091733377e-24 1.022470438548874864e-23 -2.767500000000000000e+02 -5.257389540735299973e-24 -4.696540884970021790e-24 -2.770000000000000000e+02 7.181220109882971606e-25 8.125778979266001966e-24 -2.772500000000000000e+02 -2.650341278798190501e-24 -5.777955267181167285e-24 -2.775000000000000000e+02 3.804478570631911913e-24 4.624341639616645359e-24 -2.777500000000000000e+02 1.849757209045565303e-24 -4.934485662985393594e-24 -2.780000000000000000e+02 6.218080345059840366e-24 1.043773861099950457e-23 -2.782500000000000000e+02 -2.973951180700191923e-24 -5.961119481546085418e-24 -2.785000000000000000e+02 3.266946206264529016e-25 1.318407987218573278e-23 -2.787500000000000000e+02 -5.952251637834147340e-25 -1.304744250939225967e-23 -2.790000000000000000e+02 2.920991768548755268e-24 1.055357401902138167e-23 -2.792500000000000000e+02 -4.152487702783997204e-24 -3.421536885421493096e-24 -2.795000000000000000e+02 4.532690186508105049e-24 1.037596152320926009e-23 -2.797500000000000000e+02 -2.266127272976660745e-24 -1.611075788560995367e-23 -2.800000000000000000e+02 -7.057377639091995972e-24 1.200033085102103923e-23 -2.802500000000000000e+02 -1.121768815852083415e-23 -9.168411287011465052e-24 -2.805000000000000000e+02 -1.358830194804242393e-24 4.976490086262202510e-24 -2.807500000000000000e+02 3.226171852431847369e-24 -7.442662011327653644e-24 -2.810000000000000000e+02 5.976507843364194634e-24 1.040106954141051934e-23 -2.812500000000000000e+02 -1.438928750413959462e-24 -6.828987932643674948e-24 -2.815000000000000000e+02 1.284348722075968297e-24 1.548931698730921665e-23 -2.817500000000000000e+02 -3.313803737718065230e-24 -1.009874713857656182e-23 -2.820000000000000000e+02 5.090370603315584147e-24 5.512207554629369317e-24 -2.822500000000000000e+02 -4.509025249501639515e-24 1.875518665599126938e-24 -2.825000000000000000e+02 8.025190740403451205e-24 5.399176789606715687e-24 -2.827500000000000000e+02 2.329528417250693807e-24 -1.026206035467136991e-23 -2.830000000000000000e+02 7.499413293684547980e-24 1.063571678868884973e-23 -2.832500000000000000e+02 -5.683744793026143187e-24 -7.570861405556691498e-24 -2.835000000000000000e+02 3.065940031344087188e-24 3.583586072058606907e-24 -2.837500000000000000e+02 -3.872009129846910320e-24 -1.157617817370318643e-23 -2.840000000000000000e+02 4.823586529272276875e-24 1.019458411831583235e-23 -2.842500000000000000e+02 -9.069335475684657201e-24 -1.077564859290158821e-23 -2.845000000000000000e+02 8.562767939219405954e-24 9.854611006204928297e-24 -2.847500000000000000e+02 -7.280459246990121868e-24 -2.832130650564175724e-25 -2.850000000000000000e+02 4.671110095813318007e-24 6.831299852634450679e-24 -2.852500000000000000e+02 -3.883719834251066578e-24 -6.143997704488617093e-24 -2.855000000000000000e+02 3.395144273890874496e-24 1.828555666226415489e-23 -2.857500000000000000e+02 1.046295084755461916e-25 -1.344573714106088441e-24 -2.860000000000000000e+02 5.671087699729552567e-24 1.035753892304464880e-23 -2.862500000000000000e+02 -9.801900364979750196e-25 -4.577263252103074638e-24 -2.865000000000000000e+02 7.251857565264865757e-24 -9.545134912879420616e-25 -2.867500000000000000e+02 -7.004568978434207219e-24 -8.928691596271622493e-26 -2.870000000000000000e+02 9.651945718879020432e-24 2.394847664984067735e-24 -2.872500000000000000e+02 -1.463085141540911109e-25 -7.631610278863892277e-24 -2.875000000000000000e+02 9.473767770443430402e-25 3.265306645248291430e-24 -2.877500000000000000e+02 -5.587000770883647831e-24 -7.902915908540881505e-24 -2.880000000000000000e+02 3.502126538095059464e-24 8.800678793173662119e-24 -2.882500000000000000e+02 -3.530671622105129748e-24 -6.711834472531165408e-24 -2.885000000000000000e+02 6.514282376142314697e-24 7.149159255149488882e-24 -2.887500000000000000e+02 3.864437751319002041e-24 -7.804777297301542032e-25 -2.890000000000000000e+02 1.761582754186295199e-24 5.181661539906056529e-24 -2.892500000000000000e+02 -5.990597257030760498e-24 -4.133460774880487739e-24 -2.895000000000000000e+02 9.500455279929505111e-24 -3.280126955088938320e-24 -2.897500000000000000e+02 -4.736489144550624363e-25 -4.862811468049592169e-24 -2.900000000000000000e+02 2.139901979629065495e-24 3.695046181116097998e-24 -2.902500000000000000e+02 -1.916003219365271382e-24 -1.048961300059967821e-23 -2.905000000000000000e+02 3.620969005099720237e-24 -4.098255355847757946e-24 -2.907500000000000000e+02 -2.590493550807314607e-24 2.905053971711613566e-24 -2.910000000000000000e+02 7.450937627520357461e-24 3.180757981884214084e-24 -2.912500000000000000e+02 1.470098046728355632e-24 -5.346504842489829595e-24 -2.915000000000000000e+02 -6.583151193346859635e-25 3.779654503578174806e-24 -2.917500000000000000e+02 -7.934588428803386256e-24 -6.664631272613382253e-24 -2.920000000000000000e+02 7.197835593884159275e-24 -5.807846604293779867e-25 -2.922500000000000000e+02 -8.994382675749105785e-24 2.244506027993517352e-24 -2.925000000000000000e+02 2.990572038187829743e-24 3.969878758423178050e-24 -2.927500000000000000e+02 -1.522584359361869635e-24 -4.568497236075232518e-24 -2.930000000000000000e+02 1.883379751058265302e-24 6.888823624872181463e-24 -2.932500000000000000e+02 -7.199828179000760503e-24 -3.496824412298009438e-25 -2.935000000000000000e+02 5.007596351030372408e-24 6.573400593490824787e-24 -2.937500000000000000e+02 -1.053897110142249965e-23 3.244923097291413519e-24 -2.940000000000000000e+02 1.308482566243082446e-23 2.670285565248773616e-26 -2.942500000000000000e+02 -9.186017329466124363e-24 2.077155283225179468e-24 -2.945000000000000000e+02 -2.284981411947530156e-24 4.411440179998699401e-24 -2.947500000000000000e+02 -5.420532263932933556e-24 -4.371410547564267956e-24 -2.950000000000000000e+02 3.168488861859876647e-24 -1.039438348992406152e-24 -2.952500000000000000e+02 -1.967815892178877353e-24 2.070118636242963216e-24 -2.955000000000000000e+02 8.821726960125857148e-24 -1.694781913545269192e-24 -2.957500000000000000e+02 -1.047965053583067169e-23 -3.620414616779998455e-24 -2.960000000000000000e+02 8.411306207255791462e-25 5.231665232868839754e-24 -2.962500000000000000e+02 -8.643545749392719806e-24 -5.375210300724878247e-24 -2.965000000000000000e+02 1.309049728936746326e-23 6.626026948653287835e-25 -2.967500000000000000e+02 -5.176258239442876216e-24 1.346849412159832973e-24 -2.970000000000000000e+02 1.061324492440209355e-23 -6.860636534708341106e-24 -2.972500000000000000e+02 -4.427201286084380288e-24 -3.189033518300766676e-25 -2.975000000000000000e+02 4.834077813716382253e-24 -8.779768291856421983e-25 -2.977500000000000000e+02 -1.000240080351627558e-23 -2.367510100003696302e-24 -2.980000000000000000e+02 4.532506155963111221e-24 -3.024787638139052422e-25 -2.982500000000000000e+02 -7.231342289587197542e-25 1.951977348699055801e-24 -2.985000000000000000e+02 5.046383842478538891e-24 -2.155617452413386962e-24 -2.987500000000000000e+02 -2.942900040189797945e-24 2.111040507546103561e-24 -2.990000000000000000e+02 5.782884262837470845e-24 3.706221295650110193e-24 -2.992500000000000000e+02 4.710367773537687199e-24 -5.788176462012774893e-24 -2.995000000000000000e+02 1.465753570303068641e-24 1.292314918507599758e-24 -2.997500000000000000e+02 -1.493347468858621377e-24 -6.277144775307543958e-24 -3.000000000000000000e+02 6.947275652750003611e-24 4.311653536182164131e-24 -3.002500000000000000e+02 -1.565311280056506836e-24 -1.638903609324292214e-24 -3.005000000000000000e+02 1.079265015727448935e-23 -6.207004742467549258e-24 -3.007500000000000000e+02 -6.244180226788814870e-24 -4.104587088291125623e-24 -3.010000000000000000e+02 1.867284408035069444e-24 3.079573383363577075e-24 -3.012500000000000000e+02 -3.373632239256430671e-24 -2.532981572140364652e-24 -3.015000000000000000e+02 6.432573844602186431e-24 -4.757447179759766494e-24 -3.017500000000000000e+02 -8.688852845846934692e-24 -6.791564119127180618e-24 -3.020000000000000000e+02 3.718970155640186301e-24 -4.258120923050561221e-25 -3.022500000000000000e+02 -5.735151384845045117e-24 -8.416395446654235998e-25 -3.025000000000000000e+02 9.321068615278049382e-24 -5.098851391615049585e-24 -3.027500000000000000e+02 2.160776252620619307e-24 -2.961531350495130766e-24 -3.030000000000000000e+02 3.928918521110493172e-24 -4.210417411988038951e-24 -3.032500000000000000e+02 1.248535855204454844e-25 4.903652506431524269e-24 -3.035000000000000000e+02 -3.597921692331307215e-24 -3.659183930725590474e-24 -3.037500000000000000e+02 -5.189760307456265943e-24 1.274679558427270049e-24 -3.040000000000000000e+02 -1.589122975293135757e-24 4.329077435290248271e-24 -3.042500000000000000e+02 -4.259919454394018828e-24 2.137382208610742080e-24 -3.045000000000000000e+02 6.701788743268650519e-24 -8.831530443667885139e-25 -3.047500000000000000e+02 -5.534363069866324422e-24 -4.581578064785572923e-24 -3.050000000000000000e+02 3.339201574415087624e-24 2.378905250245570774e-24 -3.052500000000000000e+02 4.093572893653451967e-24 2.368927258989824924e-24 -3.055000000000000000e+02 5.129883564817961834e-24 1.623223616670072867e-24 -3.057500000000000000e+02 7.284523784813888530e-24 -4.872146945722324700e-25 -3.060000000000000000e+02 2.816825497710464460e-24 2.863826428940727019e-24 -3.062500000000000000e+02 -9.954457359588472870e-24 8.994806724166692541e-24 -3.065000000000000000e+02 4.862724804725387063e-24 7.899754242789295658e-25 -3.067500000000000000e+02 -3.811889722411273543e-24 -4.680256073390969261e-24 -3.070000000000000000e+02 -2.451895657156891818e-24 1.124601758057236089e-24 -3.072500000000000000e+02 -6.126863619957657847e-24 1.723993994405618112e-24 -3.075000000000000000e+02 -3.865109751823464352e-24 2.136466662496233862e-25 -3.077500000000000000e+02 4.977193753005203722e-24 3.870590461988433210e-24 -3.080000000000000000e+02 -3.239149159787811925e-24 -1.527744913708081913e-24 -3.082500000000000000e+02 4.547000213596124490e-24 5.666664809131424159e-24 -3.085000000000000000e+02 1.253716490805035608e-24 1.201774163365324295e-24 -3.087500000000000000e+02 -2.108433347839250455e-24 -1.946008596162770549e-24 -3.090000000000000000e+02 3.690207076504204938e-24 -7.203556972149049918e-25 -3.092500000000000000e+02 1.389971787337925169e-24 1.319846398414697930e-24 -3.095000000000000000e+02 -4.082414283642078774e-24 -9.441026332280402655e-25 -3.097500000000000000e+02 -1.658394866204417510e-24 -2.516496625263043206e-24 -3.100000000000000000e+02 -5.436398333196254790e-24 -3.678710016513321028e-24 -3.102500000000000000e+02 -6.479216807061262482e-25 1.767134951364869075e-24 -3.105000000000000000e+02 -1.704734535356195614e-25 -1.052082558914813719e-23 -3.107500000000000000e+02 -3.178163520082358150e-24 4.815844381089266246e-25 -3.110000000000000000e+02 6.670325676113066702e-24 -9.235945777009224414e-24 -3.112500000000000000e+02 -8.785208428500481417e-24 5.380510211649294495e-24 -3.115000000000000000e+02 1.679435973404642470e-24 -1.519991607783083782e-24 -3.117500000000000000e+02 -6.586957542737844787e-26 5.803226293822662982e-25 -3.120000000000000000e+02 2.580459102324243594e-24 -1.462118160473818523e-24 -3.122500000000000000e+02 5.664163297955972851e-24 1.931262210705868526e-24 -3.125000000000000000e+02 3.684726960017001631e-24 -3.999706748160789834e-24 -3.127500000000000000e+02 -5.714751871388043636e-24 7.609214458417912048e-24 -3.130000000000000000e+02 1.878337493399207630e-26 7.169236302952243006e-25 -3.132500000000000000e+02 -2.221055967385671493e-24 1.740240824990084231e-25 -3.135000000000000000e+02 5.281580278612645104e-24 -4.636986325750655231e-24 -3.137500000000000000e+02 1.642141320694940949e-24 -1.708350263305857094e-24 -3.140000000000000000e+02 2.654949897343165649e-24 -3.225821427008729337e-24 -3.142500000000000000e+02 3.814370708892537574e-25 3.903140815083543721e-24 -3.145000000000000000e+02 2.610561256372052138e-24 7.134092163336477815e-25 -3.147500000000000000e+02 2.627752271522855994e-25 6.356235758956076809e-24 -3.150000000000000000e+02 2.501607846593546706e-24 -3.757154492511970675e-24 -3.152500000000000000e+02 6.169919093355698427e-24 -6.158693762900784665e-25 -3.155000000000000000e+02 5.058416172608538823e-24 -8.172127577436946543e-24 -3.157500000000000000e+02 2.423543518429434075e-24 2.292351860026940465e-24 -3.160000000000000000e+02 3.674544819598632507e-24 -2.726247137608298515e-24 -3.162500000000000000e+02 1.989359265499780658e-24 1.416452660102359708e-24 -3.165000000000000000e+02 -4.396634417048498351e-24 -4.927717682288425576e-24 -3.167500000000000000e+02 1.015188784543548682e-24 5.050812496752830560e-24 -3.170000000000000000e+02 -2.286508878273175128e-24 -3.059173178244785622e-24 -3.172500000000000000e+02 6.029489620070602171e-24 2.009485813638615342e-24 -3.175000000000000000e+02 1.651741959559042865e-24 2.939467951240971819e-24 -3.177500000000000000e+02 3.840018974974912123e-25 2.287886962378673543e-24 -3.180000000000000000e+02 6.774055824684860212e-24 1.620849178757286890e-24 -3.182500000000000000e+02 -3.791547237613127778e-24 3.546172885031078843e-24 -3.185000000000000000e+02 -4.536612829841053242e-24 -6.196272229351500759e-25 -3.187500000000000000e+02 1.012419943947694258e-24 3.419795589762060148e-24 -3.190000000000000000e+02 2.421845179823451743e-24 -1.090287433956135023e-25 -3.192500000000000000e+02 1.793232291369754403e-24 4.800308163677585560e-24 -3.195000000000000000e+02 -5.843464385754542229e-25 1.293861355805613686e-24 -3.197500000000000000e+02 8.391130085050254419e-25 2.958833051439394044e-24 -3.200000000000000000e+02 -1.611439014827780423e-24 -2.308914346053208998e-24 -3.202500000000000000e+02 -5.609057239195695479e-24 8.470933517232775155e-24 -3.205000000000000000e+02 3.026587786225179810e-24 -7.675038668275595221e-24 -3.207500000000000000e+02 1.569615695071761840e-25 2.047699753181544634e-26 -3.210000000000000000e+02 -4.790148063945309327e-24 2.062439655114003522e-24 -3.212500000000000000e+02 -5.719812919235689336e-24 3.589940039242836158e-24 -3.215000000000000000e+02 -4.093627612384317255e-24 -6.470873567241919288e-24 -3.217500000000000000e+02 1.238756970438540875e-24 1.048669639073701497e-23 -3.220000000000000000e+02 -3.362283635240001462e-24 1.927490019072379521e-24 -3.222500000000000000e+02 1.017819133572945229e-24 3.006791112292732025e-24 -3.225000000000000000e+02 -5.110436203524248991e-24 -2.150103559453795812e-24 -3.227500000000000000e+02 -9.851083560313150689e-25 -2.829283837238055160e-24 -3.230000000000000000e+02 1.538171530961357321e-24 4.609742882234540984e-24 -3.232500000000000000e+02 -3.206424993384791701e-24 4.498954699807261160e-24 -3.235000000000000000e+02 -2.671522009325744419e-24 -2.082143620232796544e-24 -3.237500000000000000e+02 -4.939224695134983864e-24 1.173918989344531152e-24 -3.240000000000000000e+02 3.782260927666178073e-24 3.311340050689199045e-24 -3.242500000000000000e+02 -1.693047582667570880e-24 5.271194896066920338e-25 -3.245000000000000000e+02 -6.130253778891423029e-26 2.284679153102744725e-24 -3.247500000000000000e+02 -6.477443935187790440e-24 2.850978129653786062e-24 -3.250000000000000000e+02 -2.489997836805571401e-24 2.600956393489523611e-24 -3.252500000000000000e+02 4.480595542534383895e-25 -1.239886783977185495e-24 -3.255000000000000000e+02 2.377201407277735746e-24 -1.463942751955743789e-24 -3.257500000000000000e+02 5.892644591540406752e-25 6.514980317853394250e-24 -3.260000000000000000e+02 -6.972152625649691979e-24 -1.037520166043299934e-24 -3.262500000000000000e+02 1.576143063787600683e-25 2.454433590333222559e-24 -3.265000000000000000e+02 -4.286946883429044187e-25 3.159230428574491378e-25 -3.267500000000000000e+02 1.863152208616770396e-24 -1.552836672606756474e-24 -3.270000000000000000e+02 1.473529471637535487e-24 -1.576975785223321067e-24 -3.272500000000000000e+02 -3.052416536278188172e-24 -2.265869841899852693e-24 -3.275000000000000000e+02 -7.210134803275554273e-25 -9.767672103526931840e-25 -3.277500000000000000e+02 2.845205198683835401e-24 -4.010065043319543072e-24 -3.280000000000000000e+02 2.404601044642913288e-24 -2.718770278756017736e-24 -3.282500000000000000e+02 -2.978025349901433873e-24 3.195876305318202519e-24 -3.285000000000000000e+02 -3.378113152981732569e-24 -1.302899533079923339e-25 -3.287500000000000000e+02 1.466392339113095247e-24 6.987596193975788912e-24 -3.290000000000000000e+02 -1.941205808509621772e-24 -1.388892261069769760e-24 -3.292500000000000000e+02 -5.029395190422082682e-25 -6.917921442724501719e-25 -3.295000000000000000e+02 2.588490363110113859e-24 1.488917781436940803e-24 -3.297500000000000000e+02 1.171442708976870261e-24 1.991109229340220721e-24 -3.300000000000000000e+02 1.566567540206265446e-24 3.926862468164896950e-24 -3.302500000000000000e+02 2.947305530819232117e-24 1.589157197766877191e-24 -3.305000000000000000e+02 -4.683405126196439692e-24 -2.605115306480602678e-24 -3.307500000000000000e+02 3.443543207369006332e-24 -6.908909113500250721e-24 -3.310000000000000000e+02 -8.550436891769117671e-25 -5.471455124313163865e-24 -3.312500000000000000e+02 -5.359310313586356969e-24 2.233399336251973962e-24 -3.315000000000000000e+02 1.859779625823533812e-25 -3.781988344079015442e-24 -3.317500000000000000e+02 1.606597389867688716e-24 3.203716449749857286e-24 -3.320000000000000000e+02 6.224468936993477878e-25 5.671865984148421037e-24 -3.322500000000000000e+02 -1.203114983384127627e-24 1.690354774618936678e-24 -3.325000000000000000e+02 2.954989699837893822e-24 -4.115085778687844865e-24 -3.327500000000000000e+02 -2.171016109594530120e-24 3.231500420665189657e-25 -3.330000000000000000e+02 -2.259508212027805252e-24 2.456837224865901444e-24 -3.332500000000000000e+02 4.854745925034455789e-24 4.422621473529800912e-24 -3.335000000000000000e+02 1.067728142853400416e-24 -3.956797515831167036e-24 -3.337500000000000000e+02 1.670736565885645053e-24 2.072730502079567080e-24 -3.340000000000000000e+02 5.699121380313185735e-24 -6.649597813834191181e-24 -3.342500000000000000e+02 -6.708722727792890021e-26 4.541915779047732263e-24 -3.345000000000000000e+02 -7.771354495642516579e-24 1.016954627110024027e-23 -3.347500000000000000e+02 1.646839847258325984e-24 1.751675580325952984e-24 -3.350000000000000000e+02 -2.341750906493068960e-24 2.472172362231352398e-24 -3.352500000000000000e+02 -4.555357832133415657e-25 -1.808192827580010202e-24 -3.355000000000000000e+02 -4.231791964211696062e-24 5.036070677479905198e-25 -3.357500000000000000e+02 -3.024399939172588559e-24 6.107803920838989176e-24 -3.360000000000000000e+02 -3.244733860776209482e-24 1.320637223177593002e-24 -3.362500000000000000e+02 2.335821087617699286e-24 2.491367115216347112e-24 -3.365000000000000000e+02 -5.292167764256573762e-24 -2.461018588881231719e-24 -3.367500000000000000e+02 2.725661539182071369e-24 -1.271544846324314652e-24 -3.370000000000000000e+02 -2.920925706299472313e-24 3.895203273147382570e-25 -3.372500000000000000e+02 1.451468174954857943e-24 -2.369192581208666862e-24 -3.375000000000000000e+02 4.789863562546683393e-24 -1.703118929659708387e-24 -3.377500000000000000e+02 -9.040666737997669678e-25 6.813336145257295464e-24 -3.380000000000000000e+02 -9.454629599665681967e-26 4.563256460283181724e-24 -3.382500000000000000e+02 3.756159312242727565e-25 9.128827492530180467e-24 -3.385000000000000000e+02 2.847352063619543293e-24 3.147313098086826255e-24 -3.387500000000000000e+02 -4.784782516530138065e-24 5.738959044772560666e-24 -3.390000000000000000e+02 5.988340194753155920e-25 3.024305575870075853e-25 -3.392500000000000000e+02 -9.704353456829311612e-25 4.568620939100238307e-24 -3.395000000000000000e+02 -5.987989092381919156e-24 -3.883332914078648886e-24 -3.397500000000000000e+02 -2.611872172435517728e-24 1.620041066038253694e-25 -3.400000000000000000e+02 -2.914520948748763713e-24 -3.533006816079955584e-24 -3.402500000000000000e+02 1.499922467820467612e-24 4.096854032557733368e-24 -3.405000000000000000e+02 1.373092386267094010e-25 7.302719796027600948e-25 -3.407500000000000000e+02 3.931146791624261582e-24 -3.754157998339464354e-24 -3.410000000000000000e+02 -4.216343777336927416e-24 1.137110356792531633e-24 -3.412500000000000000e+02 5.860574781274126334e-25 2.392928153907257342e-24 -3.415000000000000000e+02 -3.789393223078928487e-25 -1.878558805593454379e-24 -3.417500000000000000e+02 3.692651755213394503e-24 -7.528321977570493729e-25 -3.420000000000000000e+02 -4.688279920560925257e-24 7.739548115012226570e-25 -3.422500000000000000e+02 3.286620577282218235e-25 3.337473707438948194e-24 -3.425000000000000000e+02 -6.514367850137670171e-24 -1.268190927667445257e-24 -3.427500000000000000e+02 -2.395208595385973958e-25 2.044446151469093913e-24 -3.430000000000000000e+02 -5.102260527230632427e-24 2.641555269312342464e-25 -3.432500000000000000e+02 -2.329628087707437985e-24 1.506152314274809209e-26 -3.435000000000000000e+02 1.505314360258545857e-25 -3.725860760050362165e-24 -3.437500000000000000e+02 2.714912157380189242e-25 -2.039272481944222784e-25 -3.440000000000000000e+02 -3.605111549684652507e-24 1.176998486804347282e-24 -3.442500000000000000e+02 5.658867264185404414e-24 2.657339755939151012e-24 -3.445000000000000000e+02 2.641918212665444220e-24 -1.568226109571865476e-24 -3.447500000000000000e+02 6.671777262533664136e-25 -2.727499692406692694e-24 -3.450000000000000000e+02 -3.434169528188610107e-24 3.428149475103623324e-24 -3.452500000000000000e+02 3.024822222638487003e-24 9.450514647379595808e-24 -3.455000000000000000e+02 -2.591288065178116006e-24 2.263389705017636332e-24 -3.457500000000000000e+02 1.831806905465549273e-25 -6.265041484256567043e-25 -3.460000000000000000e+02 1.105981796183252739e-24 -3.292647317436277138e-24 -3.462500000000000000e+02 -6.148982367797160554e-26 2.180183733790362111e-24 -3.465000000000000000e+02 -9.292997389207246676e-24 5.456335512573356525e-24 -3.467500000000000000e+02 1.257795652066315067e-24 -9.775639323589823097e-26 -3.470000000000000000e+02 3.658507634833993573e-24 3.398285927856352771e-24 -3.472500000000000000e+02 2.046692890483284827e-24 -1.461612613398074529e-24 -3.475000000000000000e+02 -3.215326865236125157e-24 2.692292342814588214e-24 -3.477500000000000000e+02 6.831736779216839664e-24 4.099108893336982981e-24 -3.480000000000000000e+02 -5.493883333346644899e-24 -1.856777142367036657e-25 -3.482500000000000000e+02 6.665617305621110676e-24 -4.674837546983519101e-24 -3.485000000000000000e+02 -2.301928333367309379e-24 -7.997561730493078323e-25 -3.487500000000000000e+02 -4.524702592813831988e-24 -2.203108105625949866e-24 -3.490000000000000000e+02 1.524593943234445835e-24 -3.027236510396874958e-24 -3.492500000000000000e+02 3.646306015241402609e-24 4.329500022829985264e-24 -3.495000000000000000e+02 6.254594639344669195e-25 2.482772068397156396e-24 -3.497500000000000000e+02 3.014674852399016097e-24 -1.116187355805862033e-24 -3.500000000000000000e+02 3.438796759598614628e-24 -2.630687796926807757e-24 -3.502500000000000000e+02 2.274172043223122802e-24 -4.475252665659368164e-25 -3.505000000000000000e+02 3.819999217324569033e-24 2.826133438347932240e-24 -3.507500000000000000e+02 2.516294689824719891e-24 -6.005392998091923899e-24 -3.510000000000000000e+02 2.267930056446100423e-24 1.194459908812150993e-24 -3.512500000000000000e+02 -9.419596163100438426e-25 3.380715657193514892e-24 -3.515000000000000000e+02 -2.510167047844590971e-24 4.337023895575362044e-24 -3.517500000000000000e+02 -3.033352336993645182e-24 3.950242236063475546e-24 -3.520000000000000000e+02 2.070812833805454778e-24 1.186053809191097240e-24 -3.522500000000000000e+02 -1.466513549155743323e-24 -6.465231258611884281e-24 -3.525000000000000000e+02 -1.845541695699382910e-24 -7.511532519738906432e-24 -3.527500000000000000e+02 -3.555437156060266339e-25 -3.324300478324812974e-24 -3.530000000000000000e+02 -1.386555396745983756e-24 -2.238783351735652348e-25 -3.532500000000000000e+02 -8.358919828647261483e-24 -1.590132813949270198e-24 -3.535000000000000000e+02 -5.074028345765364702e-24 2.055093675153979882e-24 -3.537500000000000000e+02 2.245492937287898382e-24 3.156732373557581701e-24 -3.540000000000000000e+02 -7.288637407360005441e-24 -3.552116894309046198e-24 -3.542500000000000000e+02 5.194492549402416765e-24 -8.899391039065321389e-24 -3.545000000000000000e+02 1.132207207629223237e-24 2.799139783224288161e-24 -3.547500000000000000e+02 -1.433221581974589064e-24 4.239811145113910600e-24 -3.550000000000000000e+02 -1.032374092491240207e-24 5.557505148024743657e-24 -3.552500000000000000e+02 1.179184563577215547e-25 -2.755330130931878524e-26 -3.555000000000000000e+02 2.086530272136146021e-24 1.565925600758044586e-25 -3.557500000000000000e+02 1.760700962689241692e-24 -4.161224606704147298e-24 -3.560000000000000000e+02 3.765550256341472255e-24 -9.153347642980612419e-24 -3.562500000000000000e+02 6.506446563662112744e-24 -2.886141693843709684e-25 -3.565000000000000000e+02 3.832338916837491034e-24 3.956150848319449109e-24 -3.567500000000000000e+02 -2.959531281361554955e-25 5.144531688519999275e-24 -3.570000000000000000e+02 1.424395410345448718e-24 2.328643501114109692e-24 -3.572500000000000000e+02 6.423038305509008795e-25 -1.851000140743053225e-24 -3.575000000000000000e+02 1.794305584598002566e-24 -1.280735580317358129e-24 -3.577500000000000000e+02 -8.986744831852159577e-24 -4.735984671020417508e-24 -3.580000000000000000e+02 -6.524542721310561246e-24 -2.488221004948205488e-24 -3.582500000000000000e+02 9.777002631841516639e-24 -1.310005940098650542e-24 -3.585000000000000000e+02 1.341522721209210049e-24 1.402018126085432072e-24 -3.587500000000000000e+02 6.296218016098326572e-24 -7.457121926179388301e-24 -3.590000000000000000e+02 3.752367150529438578e-24 1.427576862735063628e-24 -3.592500000000000000e+02 -1.882983169776762684e-24 4.157443360978709955e-24 -3.595000000000000000e+02 -2.601831432894341807e-24 -6.763517040505030193e-24 -3.597500000000000000e+02 1.464714280681023171e-24 -2.460751636998635402e-24 -3.600000000000000000e+02 -1.454817362617506077e-25 5.553162191645834783e-24 -3.602500000000000000e+02 -3.743212497954272140e-24 -4.642759622569025769e-24 -3.605000000000000000e+02 -6.877726582012411861e-24 3.299377496172285073e-24 -3.607500000000000000e+02 2.549263727978663400e-24 3.699436192727117152e-24 -3.610000000000000000e+02 3.175408000488512708e-24 -2.487578644834459759e-24 -3.612500000000000000e+02 -5.487902485579705348e-24 2.634616027433153894e-24 -3.615000000000000000e+02 -4.691850083786297291e-25 1.201044064793714066e-24 -3.617500000000000000e+02 8.728331396473543372e-24 3.978646215888506892e-24 -3.620000000000000000e+02 -2.782475869983433325e-24 -2.112987767886073890e-24 -3.622500000000000000e+02 6.660392334059151313e-25 -2.086575298610740163e-24 -3.625000000000000000e+02 2.228701509236019375e-25 6.135222876260506903e-24 -3.627500000000000000e+02 5.881310762655239834e-24 4.443863604833372830e-25 -3.630000000000000000e+02 -2.393290156528801850e-24 4.389799561981506666e-24 -3.632500000000000000e+02 -3.538564673305884551e-24 1.542118796133438517e-24 -3.635000000000000000e+02 6.294901248058824820e-24 -1.255764255099471813e-24 -3.637500000000000000e+02 2.376097154946715596e-24 3.280537298266214069e-24 -3.640000000000000000e+02 -4.768875314507573676e-24 -6.446085396779489836e-25 -3.642500000000000000e+02 -1.765096209891177945e-24 -9.791822054419242791e-25 -3.645000000000000000e+02 -3.472805458315428480e-24 1.357765271409797870e-24 -3.647500000000000000e+02 3.656524643404549248e-24 7.428475717796620959e-24 -3.650000000000000000e+02 -4.779296587762847646e-24 2.027216528785766039e-24 -3.652500000000000000e+02 3.798871035088871740e-24 5.137105654483584265e-24 -3.655000000000000000e+02 4.485059214815581152e-24 2.551248131909664445e-24 -3.657500000000000000e+02 2.233721621812729614e-24 -6.023045801200460839e-24 -3.660000000000000000e+02 -3.574316319723259978e-24 -4.185896128776956667e-25 -3.662500000000000000e+02 -3.939418256291050497e-25 7.611966137301587651e-24 -3.665000000000000000e+02 6.151454528020418104e-24 -3.997206613346049596e-24 -3.667500000000000000e+02 -2.003369940400972954e-24 -1.938449379450450738e-24 -3.670000000000000000e+02 8.882132669273655183e-25 1.832561374733713040e-24 -3.672500000000000000e+02 6.157119999814839415e-24 -3.902012267098584586e-24 -3.675000000000000000e+02 -2.062310104401221900e-24 -1.144115597956918341e-24 -3.677500000000000000e+02 3.593044320769532718e-24 -9.225815091248557457e-24 -3.680000000000000000e+02 8.780871186737813447e-24 5.964996700489327161e-24 -3.682500000000000000e+02 4.125526458776534874e-24 -1.837354073291740373e-25 -3.685000000000000000e+02 2.434797821339197582e-25 -4.364464462285783138e-24 -3.687500000000000000e+02 8.894148574680535246e-25 2.118897110605531351e-24 -3.690000000000000000e+02 -3.174782437419163061e-24 -8.925089126692260431e-24 -3.692500000000000000e+02 2.632037842835494929e-24 -2.188962370636250830e-24 -3.695000000000000000e+02 -3.894032996217305228e-25 4.283695531152753063e-24 -3.697500000000000000e+02 -6.197551812686916919e-24 3.936830448661012648e-24 -3.700000000000000000e+02 1.240238278168013938e-24 8.654403107495757068e-25 -3.702500000000000000e+02 -3.661852099080952095e-24 1.150862218348584377e-24 -3.705000000000000000e+02 1.489114313562118040e-24 5.670375422724608791e-27 -3.707500000000000000e+02 8.563913447430378183e-24 -4.360490655354079525e-26 -3.710000000000000000e+02 -3.375802701768544471e-24 -1.368709615802909530e-24 -3.712500000000000000e+02 1.133313631192388943e-24 1.322955976923792696e-24 -3.715000000000000000e+02 1.543188173734119437e-24 -9.977553680721405041e-25 -3.717500000000000000e+02 -1.446728369404254769e-24 -8.873890794910729804e-25 -3.720000000000000000e+02 3.992116747866552351e-24 -1.074412400738401530e-24 -3.722500000000000000e+02 3.518857949263399729e-24 -8.391119661014230944e-26 -3.725000000000000000e+02 -7.793906261661747241e-25 3.503375726505595037e-24 -3.727500000000000000e+02 -1.566884811383036109e-24 2.077246999685717522e-24 -3.730000000000000000e+02 -3.764834637408168614e-24 3.559469558468024829e-24 -3.732500000000000000e+02 5.501985668180426731e-24 4.423895678222470134e-24 -3.735000000000000000e+02 -3.206891473099468922e-25 -4.910049897038880072e-25 -3.737500000000000000e+02 3.103371710262487935e-24 -4.486253587959966500e-24 -3.740000000000000000e+02 -1.190392444994981016e-24 -5.195255698778035414e-24 -3.742500000000000000e+02 -2.087136706553671087e-24 -2.124945577596503002e-24 -3.745000000000000000e+02 -4.716578364942184714e-24 -4.299760138446963352e-24 -3.747500000000000000e+02 -1.362085187245681570e-24 9.423842174972714476e-24 -3.750000000000000000e+02 4.086528968765412871e-24 5.534393601948942705e-25 -3.752500000000000000e+02 -9.878857232947465309e-25 -5.323231447579956759e-25 -3.755000000000000000e+02 2.702610093847675794e-24 2.592540845544813046e-24 -3.757500000000000000e+02 7.591082859748628041e-24 1.852703339145990623e-24 -3.760000000000000000e+02 3.657625771148202820e-24 -5.929057706715794687e-24 -3.762500000000000000e+02 -5.817221084789274064e-25 9.482591171362482701e-25 -3.765000000000000000e+02 9.510257674099666424e-24 -3.445558933769383894e-24 -3.767500000000000000e+02 -1.770026790331425439e-24 5.210654145737080091e-24 -3.770000000000000000e+02 -3.316583814780237974e-24 4.630585665637147804e-24 -3.772500000000000000e+02 -3.053851816471199467e-24 2.430396407772435721e-24 -3.775000000000000000e+02 3.272121174272982687e-24 -6.920628278115878703e-26 -3.777500000000000000e+02 -2.808847746698243018e-24 -5.334501584135017469e-24 -3.780000000000000000e+02 1.488392370000592479e-24 3.495110539762703336e-24 -3.782500000000000000e+02 7.996746519885341479e-24 2.803603357891437743e-24 -3.785000000000000000e+02 1.784357275132179867e-24 4.747916534172806775e-24 -3.787500000000000000e+02 -1.733784260780972667e-24 6.962563897991644980e-25 -3.790000000000000000e+02 -1.174989282665571408e-24 -2.346883241557642760e-24 -3.792500000000000000e+02 -5.031791104404691755e-24 -3.310169964089240109e-24 -3.795000000000000000e+02 3.967382696870503349e-24 2.665592781376467447e-24 -3.797500000000000000e+02 6.794766805256680268e-24 -7.259189366094008231e-24 -3.800000000000000000e+02 4.982032353373517244e-24 1.524698501821682164e-24 -3.802500000000000000e+02 -2.227881047296494058e-24 1.342094604732643164e-25 -3.805000000000000000e+02 -1.459932338427936361e-25 -1.085777607419356991e-24 -3.807500000000000000e+02 -5.226335505156008026e-24 1.358014619056718115e-24 -3.810000000000000000e+02 2.862619725856023019e-24 -2.306984192534438877e-24 -3.812500000000000000e+02 -4.055041512815576814e-24 -1.574340630192010623e-24 -3.815000000000000000e+02 1.319148016701769384e-24 1.020916724662977453e-24 -3.817500000000000000e+02 4.916633869225840802e-25 7.150117570114289177e-24 -3.820000000000000000e+02 1.754864764644166251e-24 -5.367551608012441114e-24 -3.822500000000000000e+02 -1.676037196306525636e-24 1.258317615429699959e-24 -3.825000000000000000e+02 3.077497604007070569e-25 1.113462125821333593e-24 -3.827500000000000000e+02 -1.780521150063585981e-24 -3.429718603296415658e-24 -3.830000000000000000e+02 -6.736716516626842022e-24 6.929943314729339080e-24 -3.832500000000000000e+02 -4.075654802857575871e-24 -2.779791393883438291e-24 -3.835000000000000000e+02 -1.155580175520886803e-24 -2.985171488843637671e-24 -3.837500000000000000e+02 5.457912717308325781e-24 5.016559326538345545e-24 -3.840000000000000000e+02 8.407948204508083736e-24 -1.455017831413828561e-25 -3.842500000000000000e+02 1.842386733980233102e-24 2.692133271304219366e-25 -3.845000000000000000e+02 3.447477215533384796e-24 1.059341930343315661e-24 -3.847500000000000000e+02 -1.754249548180939213e-24 1.093907594105375405e-24 -3.850000000000000000e+02 -3.536077981613746852e-24 -2.905407739929760396e-25 -3.852500000000000000e+02 1.888349718434267137e-24 -6.926989165640245420e-25 -3.855000000000000000e+02 -3.046744656382972568e-24 -5.039765721051970118e-24 -3.857500000000000000e+02 -1.505771632229438460e-24 -1.076464308385771932e-24 -3.860000000000000000e+02 4.194408309219751947e-24 8.693763168908627359e-25 -3.862500000000000000e+02 7.839766461996146556e-25 9.853179094722020166e-25 -3.865000000000000000e+02 2.070332534548416988e-25 5.747605013613634390e-24 -3.867500000000000000e+02 7.146865124565711814e-25 3.200409951415092949e-24 -3.870000000000000000e+02 -4.513347130782333218e-24 -1.026876659191212504e-23 -3.872500000000000000e+02 -1.117691493376911172e-25 6.573617932522118710e-25 -3.875000000000000000e+02 1.304844273926718022e-24 -3.529576314546411618e-24 -3.877500000000000000e+02 -1.828943956952668428e-24 -3.998822423060395589e-24 -3.880000000000000000e+02 -2.015604725737119668e-25 -2.570758471108320725e-24 -3.882500000000000000e+02 -8.918303519887196078e-25 -1.575626668655128339e-24 -3.885000000000000000e+02 1.608031504086369186e-24 -2.188515412712162048e-24 -3.887500000000000000e+02 3.897843397923171665e-24 -1.330915696602197110e-24 -3.890000000000000000e+02 3.378363362621106954e-24 5.153397211096511399e-25 -3.892500000000000000e+02 1.017209359785717664e-25 -2.378330539824148725e-24 -3.895000000000000000e+02 -1.178144130975021651e-23 -5.445846238544159478e-25 -3.897500000000000000e+02 -9.641789684278634933e-25 5.419467801148289302e-24 -3.900000000000000000e+02 5.540482034650201322e-24 -2.539159233707043893e-24 -3.902500000000000000e+02 1.639884635151072158e-24 -2.179889620991664322e-24 -3.905000000000000000e+02 -4.891079387044770091e-24 -2.793310713120937845e-24 -3.907500000000000000e+02 7.972315650116158054e-25 2.309070031561887027e-24 -3.910000000000000000e+02 5.646921128861545627e-24 -7.312114530206873598e-25 -3.912500000000000000e+02 -3.981746758303550348e-24 3.833820964056407531e-24 -3.915000000000000000e+02 -2.404669119204733757e-24 2.542274527596445750e-24 -3.917500000000000000e+02 4.465684606728580170e-24 2.718140560495809115e-24 -3.920000000000000000e+02 -6.825289897080276589e-25 8.434480030879936694e-25 -3.922500000000000000e+02 -8.862861318514368345e-25 3.910465358913426742e-24 -3.925000000000000000e+02 4.567993296090638510e-24 -1.119631634537019949e-23 -3.927500000000000000e+02 2.539867920575967900e-24 1.586744504544158348e-24 -3.930000000000000000e+02 7.857726496971113788e-24 -2.969273081016180137e-24 -3.932500000000000000e+02 -4.578971199212990292e-25 2.848706609731791867e-24 -3.935000000000000000e+02 7.456586811759180018e-24 2.339854127247070850e-24 -3.937500000000000000e+02 -4.504291699037656233e-25 -2.698636461997869170e-24 -3.940000000000000000e+02 -3.198830493218107534e-24 -1.030799906274318313e-25 -3.942500000000000000e+02 -3.852797161110157711e-24 1.558204779397836464e-24 -3.945000000000000000e+02 -5.858331076427046120e-24 4.350361090505072313e-24 -3.947500000000000000e+02 -4.579141377693705044e-24 1.427130994340263543e-24 -3.950000000000000000e+02 -5.196284143896265153e-24 5.026114982499447652e-24 -3.952500000000000000e+02 1.719752080502078637e-24 -3.777816488524287210e-25 -3.955000000000000000e+02 -1.754876824222654353e-24 4.127417155508783510e-24 -3.957500000000000000e+02 7.748378497895467530e-24 6.784062619147986633e-24 -3.960000000000000000e+02 -4.235012528651149143e-24 -7.690892373830944841e-24 -3.962500000000000000e+02 -1.623336084566278401e-24 4.645246456488690384e-24 -3.965000000000000000e+02 4.058783434710049654e-24 -4.722777888725675805e-24 -3.967500000000000000e+02 1.209085830066843417e-24 6.433268735918751298e-24 -3.970000000000000000e+02 4.295207525284836333e-24 2.650074490603858445e-24 -3.972500000000000000e+02 -2.858377969071652644e-24 1.187956540439941770e-24 -3.975000000000000000e+02 2.916333216799035711e-24 6.390066799644450133e-24 -3.977500000000000000e+02 -4.402186164840146866e-24 1.046088612795602183e-24 -3.980000000000000000e+02 5.084690523964208806e-24 1.927027192065959976e-24 -3.982500000000000000e+02 -3.994022645947730866e-24 1.402504499401188405e-24 -3.985000000000000000e+02 -6.901747184208746371e-24 -6.973876397947535498e-25 -3.987500000000000000e+02 9.539879368688684569e-25 -4.781306688493350446e-24 -3.990000000000000000e+02 2.611352596134186366e-25 -1.199306113689508841e-24 -3.992500000000000000e+02 -5.016372654129078425e-24 9.725053191576687026e-25 -3.995000000000000000e+02 -1.272770703827501243e-24 2.135796463924992256e-24 -3.997500000000000000e+02 -5.634840950616388194e-24 -3.892076636548652043e-25 -4.000000000000000000e+02 5.137479231881151226e-24 3.594019035848026816e-24 -4.002500000000000000e+02 2.149646596906539791e-24 3.687880263894028721e-24 -4.005000000000000000e+02 1.100191935163790723e-24 -5.670930123435800742e-24 -4.007500000000000000e+02 4.700561580164315041e-24 3.923086401770120560e-25 -4.010000000000000000e+02 -2.425880074074651673e-24 -8.067791453090873759e-24 -4.012500000000000000e+02 -3.881506297044539049e-24 -4.246417048413116148e-24 -4.015000000000000000e+02 -5.582756735874941988e-24 -2.664204796982550156e-24 -4.017500000000000000e+02 -1.868301489519013665e-24 2.247533060518746824e-24 -4.020000000000000000e+02 -4.205113243306973835e-25 2.154513468162340587e-24 -4.022500000000000000e+02 -8.001839245678252279e-24 -6.601831853257707797e-24 -4.025000000000000000e+02 4.691830133922583034e-24 6.451583707825273704e-25 -4.027500000000000000e+02 -4.400263267671599114e-24 -2.401222843238525397e-24 -4.030000000000000000e+02 -4.620582134585808771e-24 4.769470567142416526e-24 -4.032500000000000000e+02 -3.829716506862433961e-25 1.835274841040029629e-24 -4.035000000000000000e+02 -5.425000919507194251e-25 -2.592339053077027890e-24 -4.037500000000000000e+02 4.417992882606484149e-24 -1.810271007141078390e-24 -4.040000000000000000e+02 2.610342952284487899e-24 3.016238891976547396e-24 -4.042500000000000000e+02 4.919860534212220092e-24 3.183713272592875091e-24 -4.045000000000000000e+02 -3.282471648980661852e-24 -2.683632446259455621e-24 -4.047500000000000000e+02 3.776312926058535976e-24 -6.900869992418595951e-24 -4.050000000000000000e+02 1.477256425055443845e-24 4.650803848451611837e-25 -4.052500000000000000e+02 5.315053874511535669e-25 1.852954586654636844e-24 -4.055000000000000000e+02 1.921586395532941538e-24 1.799664629553853729e-24 -4.057500000000000000e+02 -6.984318580710752663e-24 -9.518629638718463143e-24 -4.060000000000000000e+02 1.207294707643900667e-24 -3.973152610622593031e-24 -4.062500000000000000e+02 -5.188747316209450652e-24 -1.648538491668019045e-24 -4.065000000000000000e+02 2.087239051137813810e-24 1.839526341056050530e-24 -4.067500000000000000e+02 2.367418247188467598e-24 1.232303186071774278e-24 -4.070000000000000000e+02 3.668904090335598244e-25 3.828671996028492981e-24 -4.072500000000000000e+02 2.342063140470277396e-24 -3.420100563433227810e-24 -4.075000000000000000e+02 2.809883821809273275e-24 -2.537592075232314961e-25 -4.077500000000000000e+02 7.395268357932723207e-24 -4.457468561421408631e-24 -4.080000000000000000e+02 -4.957647032442546287e-25 -3.619992835197686102e-25 -4.082500000000000000e+02 -3.754957826219013974e-24 -2.028995913135326109e-24 -4.085000000000000000e+02 -1.008666858980782133e-24 -5.824920012023932249e-24 -4.087500000000000000e+02 -3.369301913920765064e-24 -2.465051194531211149e-24 -4.090000000000000000e+02 -3.092711907227783802e-24 7.594703159021235447e-24 -4.092500000000000000e+02 6.199646823804403458e-24 9.507496956138682519e-25 -4.095000000000000000e+02 -3.619310358754549114e-25 3.518346594770236472e-24 -4.097500000000000000e+02 2.738889660713957006e-24 4.538169434840616201e-24 -4.100000000000000000e+02 -3.163811172666929279e-24 -3.735374136251634422e-24 -4.102500000000000000e+02 -3.200623074671789570e-24 2.329744554509918036e-24 -4.105000000000000000e+02 -2.589289835691176831e-24 2.060114771672697510e-28 -4.107500000000000000e+02 -1.314294950942121153e-24 -6.333781510295185963e-24 -4.110000000000000000e+02 3.324191329454398159e-24 8.641434545923457938e-25 -4.112500000000000000e+02 1.502773093392590079e-24 -3.535887183744062247e-24 -4.115000000000000000e+02 -1.407255851157528344e-24 5.218285454566326136e-24 -4.117500000000000000e+02 1.926588731155593320e-24 -2.837666658965983569e-24 -4.120000000000000000e+02 -5.930083437998478506e-24 -2.485938636522201144e-24 -4.122500000000000000e+02 -1.451557018346430226e-24 -6.837146874975983805e-24 -4.125000000000000000e+02 2.759434076507922439e-25 2.226105512742957373e-24 -4.127500000000000000e+02 -2.725493778433315723e-24 7.744124197379318977e-24 -4.130000000000000000e+02 -1.966001239374641777e-24 4.507480389195112409e-24 -4.132500000000000000e+02 1.783011832418522775e-25 2.822706810715062082e-24 -4.135000000000000000e+02 -1.618682831288841957e-24 9.842808325792390897e-25 -4.137500000000000000e+02 7.871239337813257604e-25 -4.241760413058752750e-24 -4.140000000000000000e+02 3.062442338179064453e-24 -4.440539956660206936e-26 -4.142500000000000000e+02 -2.929792233499692333e-24 2.109687335834676815e-24 -4.145000000000000000e+02 -3.595370799824902593e-24 4.914625985215842471e-24 -4.147500000000000000e+02 -4.615703372269339593e-25 1.942607883741791678e-24 -4.150000000000000000e+02 -3.587330070422689805e-24 -5.226515733721414412e-24 -4.152500000000000000e+02 -4.127802025800795816e-24 7.078876140652502058e-24 -4.155000000000000000e+02 -3.823593121480056436e-24 -1.491813983849807205e-24 -4.157500000000000000e+02 -9.272392541822224664e-24 6.694021267002364560e-24 -4.160000000000000000e+02 2.635229862741297500e-24 3.031123915144465344e-24 -4.162500000000000000e+02 -1.969365827836745030e-24 3.649101067454202049e-24 -4.165000000000000000e+02 5.842215166521642768e-24 6.022462418268532064e-25 -4.167500000000000000e+02 5.254194650020551762e-24 -3.721790498278919711e-24 -4.170000000000000000e+02 -3.450656288307118631e-25 2.061562418188148925e-24 -4.172500000000000000e+02 8.067137616622602709e-24 -2.652844309696554369e-24 -4.175000000000000000e+02 4.095426523211867495e-24 -1.896003222091723689e-24 -4.177500000000000000e+02 -7.568345306006737660e-24 2.437164453607122160e-24 -4.180000000000000000e+02 1.384737306738870660e-24 3.524060297243585566e-24 -4.182500000000000000e+02 -2.210116297852637308e-24 -8.381527885214673343e-25 -4.185000000000000000e+02 3.385024195415393693e-24 3.704271453269765763e-26 -4.187500000000000000e+02 8.286524119194537060e-25 -1.285190499581979914e-24 -4.190000000000000000e+02 -1.159364228509333081e-24 -4.358025531434188874e-24 -4.192500000000000000e+02 1.572582560489283981e-24 9.738486232930105618e-25 -4.195000000000000000e+02 2.299169981998973698e-24 1.362624489486323055e-24 -4.197500000000000000e+02 -1.182009671740615606e-24 -3.042537759084769033e-24 -4.200000000000000000e+02 -9.651370284984367598e-24 6.109157283896289465e-24 -4.202500000000000000e+02 -1.713877100997368920e-24 -8.443646103976667809e-24 -4.205000000000000000e+02 -3.880990029212026537e-24 -2.628683971221710630e-25 -4.207500000000000000e+02 4.457474502168119347e-24 -1.420834957685486558e-24 -4.210000000000000000e+02 -7.577988207871960911e-24 -1.751423610426795541e-24 -4.212500000000000000e+02 -7.277866175462568951e-24 6.172813524419073475e-24 -4.215000000000000000e+02 -1.694621296890334795e-24 -5.876397408971779776e-24 -4.217500000000000000e+02 6.783493485433021036e-25 -2.876410718066499391e-24 -4.220000000000000000e+02 2.746071088560969572e-24 2.396710981219577204e-24 -4.222500000000000000e+02 -2.417014692069790367e-24 -2.957276185953615102e-24 -4.225000000000000000e+02 -8.237213432844131917e-24 4.382889682181938273e-25 -4.227500000000000000e+02 2.864031000756753704e-24 -3.024091982074546442e-24 -4.230000000000000000e+02 -2.431282346504335745e-24 -5.233356552531018189e-24 -4.232500000000000000e+02 -9.338106338565392181e-25 -7.496803365731926959e-24 -4.235000000000000000e+02 4.634903893272674700e-24 -1.097071613786067241e-24 -4.237500000000000000e+02 -2.480356901945917746e-25 -5.869801446455430121e-24 -4.240000000000000000e+02 -5.926064944850834131e-24 -2.803782882908118430e-24 -4.242500000000000000e+02 4.087751490922790495e-24 -1.785982916533077157e-24 -4.245000000000000000e+02 -7.030279858490033743e-24 3.108845057392474489e-24 -4.247500000000000000e+02 -5.479534539838308519e-25 7.187836393107443588e-24 -4.250000000000000000e+02 2.861711876305077066e-24 6.003265991985762176e-24 -4.252500000000000000e+02 6.215424563081681856e-24 -5.951583025809495549e-25 -4.255000000000000000e+02 5.986807855722033646e-25 3.968240485336227957e-24 -4.257500000000000000e+02 -2.319110885293254029e-24 1.323909273042903848e-24 -4.260000000000000000e+02 3.431359278326284662e-25 1.576180380614741765e-24 -4.262500000000000000e+02 -2.361478341491277173e-24 5.957734467662190505e-24 -4.265000000000000000e+02 2.537086948080751544e-24 -7.886274606797376274e-24 -4.267500000000000000e+02 -1.645335036594874724e-24 2.722688372641043802e-24 -4.270000000000000000e+02 2.912686630535331942e-24 1.912334959720441201e-24 -4.272500000000000000e+02 -2.612391867248851496e-24 2.016598585267009318e-24 -4.275000000000000000e+02 -3.047710372943367875e-25 -1.311998859503344345e-24 -4.277500000000000000e+02 3.265013119039267480e-24 4.267019802204794061e-24 -4.280000000000000000e+02 3.766667556140736715e-24 2.898553948214819739e-25 -4.282500000000000000e+02 3.163569431282804422e-24 1.357560786258141512e-24 -4.285000000000000000e+02 5.654057826498077843e-24 -4.415106965032389235e-25 -4.287500000000000000e+02 -3.804325519027498774e-24 9.773982531899150910e-25 -4.290000000000000000e+02 6.095819712693836478e-25 2.349808207418767228e-24 -4.292500000000000000e+02 4.367346314129465633e-24 -1.356423102584784079e-24 -4.295000000000000000e+02 4.973057604115899614e-25 2.838040181167938148e-24 -4.297500000000000000e+02 -1.647642589034846220e-24 -6.046792664749224191e-24 -4.300000000000000000e+02 -7.106755836150888813e-26 6.509228908312512603e-25 -4.302500000000000000e+02 2.491361640784323165e-25 1.245040703131322423e-24 -4.305000000000000000e+02 -2.231756000904677522e-24 5.456753536455827637e-24 -4.307500000000000000e+02 -3.202990311600156938e-24 -2.109253916950308376e-24 -4.310000000000000000e+02 -1.510928253002407437e-24 -1.992303851803659147e-24 -4.312500000000000000e+02 1.532677874517972725e-24 2.421120549634988538e-24 -4.315000000000000000e+02 -3.539068029890060852e-24 -6.700805509882720369e-24 -4.317500000000000000e+02 -2.397508929875685756e-24 3.519044499892948656e-24 -4.320000000000000000e+02 8.218665985446835131e-25 4.570373290099679143e-24 -4.322500000000000000e+02 -2.892300898490414222e-24 7.780632617944316727e-25 -4.325000000000000000e+02 -3.826639643516053860e-24 -7.245787623600991946e-24 -4.327500000000000000e+02 -6.235895626299698156e-24 2.560339418146654197e-24 -4.330000000000000000e+02 1.360290227744353921e-24 1.556160001404959556e-24 -4.332500000000000000e+02 8.489308006796014015e-24 -3.710185072133509735e-24 -4.335000000000000000e+02 -6.835101310002249138e-24 -2.638661118756396014e-26 -4.337500000000000000e+02 1.255200569720437750e-24 -9.422838887786060414e-27 -4.340000000000000000e+02 -7.362752748197919540e-24 6.143410067985846081e-25 -4.342500000000000000e+02 2.065898064554670490e-24 6.548222811240969495e-25 -4.345000000000000000e+02 1.614608419257215501e-24 -7.400268328710657249e-26 -4.347500000000000000e+02 4.509146287933995332e-25 2.685256195737325278e-25 -4.350000000000000000e+02 1.936622407484654867e-25 -7.345187420407713349e-24 -4.352500000000000000e+02 5.969411356321790644e-24 6.274436570242762817e-24 -4.355000000000000000e+02 3.125596871265115733e-24 1.141537972267738923e-24 -4.357500000000000000e+02 4.766493331213140811e-24 -5.834005142175948132e-24 -4.360000000000000000e+02 5.146087068707198802e-25 1.105746817505933219e-23 -4.362500000000000000e+02 -8.249323773703167193e-25 -6.495852924113650483e-24 -4.365000000000000000e+02 -5.078351647063317519e-24 -4.861396564281405983e-25 -4.367500000000000000e+02 -1.245462365066717645e-24 4.815722632682274515e-25 -4.370000000000000000e+02 4.432144459577039739e-25 4.911268046575014231e-25 -4.372500000000000000e+02 3.677871871215030373e-24 -3.045528354219195852e-24 -4.375000000000000000e+02 -2.580353044661035291e-24 -4.970137998625698689e-25 -4.377500000000000000e+02 2.358257365592469344e-24 2.003584289268465320e-24 -4.380000000000000000e+02 -4.207483193421016541e-24 7.110488053929775359e-24 -4.382500000000000000e+02 -2.870870028949719339e-24 -1.535225443911106427e-24 -4.385000000000000000e+02 2.531863684909900601e-24 -3.617308120435399135e-24 -4.387500000000000000e+02 -2.709897047302440004e-24 5.348831035244816220e-25 -4.390000000000000000e+02 -4.068987501735943326e-24 2.539180099609800249e-24 -4.392500000000000000e+02 3.314376288935038124e-24 3.590330246855939132e-24 -4.395000000000000000e+02 7.047024506966176668e-24 2.626842128391430652e-24 -4.397500000000000000e+02 -5.410581015452877106e-24 -1.076932908000671823e-24 -4.400000000000000000e+02 -6.499237851841710456e-25 -4.621898893117212060e-24 -4.402500000000000000e+02 -1.202559631132475672e-24 2.288189857672107004e-24 -4.405000000000000000e+02 -6.425101875488057876e-25 -1.121541700348380446e-24 -4.407500000000000000e+02 -5.953043490458181059e-24 -1.025009387135562529e-24 -4.410000000000000000e+02 1.786398545069491760e-25 4.951514590105794702e-24 -4.412500000000000000e+02 -4.300875520853953996e-24 -6.782424089281029165e-25 -4.415000000000000000e+02 3.956673474362992586e-24 -4.376619981442855811e-24 -4.417500000000000000e+02 -6.488775256197318011e-24 1.755323165580728347e-24 -4.420000000000000000e+02 -2.501687633746128016e-24 -2.257419849213890377e-25 -4.422500000000000000e+02 -3.603328805816145807e-24 9.668312868650615890e-25 -4.425000000000000000e+02 1.621784223001901837e-24 -2.498731360253426063e-24 -4.427500000000000000e+02 9.122809947263482130e-24 1.109579606342473238e-24 -4.430000000000000000e+02 -1.284515782994792723e-24 1.782048376058953586e-24 -4.432500000000000000e+02 5.902491993067288692e-24 2.124011324683192735e-24 -4.435000000000000000e+02 -3.889851269339102629e-24 -1.884550864493060441e-24 -4.437500000000000000e+02 -1.124079459557138393e-24 -8.197161518061998743e-24 -4.440000000000000000e+02 1.069467076886306411e-24 1.315359047897491027e-24 -4.442500000000000000e+02 -1.890706284133030449e-24 2.234678049734370912e-24 -4.445000000000000000e+02 -7.989288573547085766e-24 -9.992019222716674055e-25 -4.447500000000000000e+02 -1.109819240405822334e-24 9.208600393298067503e-25 -4.450000000000000000e+02 3.712460740277800232e-24 3.865925812092905287e-24 -4.452500000000000000e+02 -4.025045663161016935e-24 1.945726356992923807e-24 -4.455000000000000000e+02 6.921581370745751450e-24 4.104926121624118027e-24 -4.457500000000000000e+02 1.550948345780383316e-24 -2.946174170781723703e-24 -4.460000000000000000e+02 -2.579337813777666404e-24 2.156988972557339380e-24 -4.462500000000000000e+02 -8.698959010712764642e-26 6.386233571111847573e-25 -4.465000000000000000e+02 9.693224970650132189e-25 -3.167013965221578732e-24 -4.467500000000000000e+02 -4.819794554915721252e-24 -1.086808238927736092e-23 -4.470000000000000000e+02 -5.811515737630369160e-25 1.600303778032074685e-24 -4.472500000000000000e+02 2.279808023446725554e-26 3.607979855602579129e-25 -4.475000000000000000e+02 4.040618806935225449e-24 -2.369530365549960929e-24 -4.477500000000000000e+02 -8.778725027421644183e-24 3.039918016891764081e-24 -4.480000000000000000e+02 -2.775397556768523934e-24 3.214437762099967300e-24 -4.482500000000000000e+02 -2.756787175152620250e-24 -2.109951084894549795e-24 -4.485000000000000000e+02 2.140826656300474849e-24 -3.682222998405012459e-25 -4.487500000000000000e+02 3.273390229825184819e-24 3.325186218173911673e-24 -4.490000000000000000e+02 -1.843014550797826639e-24 -1.816099911415771066e-24 -4.492500000000000000e+02 9.629473807454410708e-25 -2.245704855169552472e-24 -4.495000000000000000e+02 2.013232692385639522e-26 -6.168589054473991827e-25 -4.497500000000000000e+02 -2.114137106317661262e-24 2.472956004885992819e-24 -4.500000000000000000e+02 -7.359821760617228271e-24 -2.327398969281887559e-24 -4.502500000000000000e+02 -2.679116274557619229e-24 -1.591140277085937706e-24 -4.505000000000000000e+02 2.169799354937501936e-24 -4.225243437161979035e-24 -4.507500000000000000e+02 2.083730673317196006e-24 -1.795133301101552147e-24 -4.510000000000000000e+02 -7.060989568208781326e-25 2.528447456921356040e-24 -4.512500000000000000e+02 -8.845743543251981306e-24 4.919592547296493609e-24 -4.515000000000000000e+02 4.715222956080101623e-24 4.553479597716711379e-24 -4.517500000000000000e+02 1.066286798052177716e-24 -8.573925781991769343e-24 -4.520000000000000000e+02 -3.712271477908229042e-24 -3.055603820817547631e-24 -4.522500000000000000e+02 -2.762888530417702594e-24 -3.539037948637243164e-25 -4.525000000000000000e+02 -2.266801056563059142e-24 -1.625535243194260383e-24 -4.527500000000000000e+02 1.948118288245641671e-24 -1.981574972500722796e-24 -4.530000000000000000e+02 -6.224800843497953185e-24 3.431511875727752616e-25 -4.532500000000000000e+02 1.194488673344875331e-24 -4.576054058708235579e-24 -4.535000000000000000e+02 6.705736480617625434e-25 -3.100749147518283300e-24 -4.537500000000000000e+02 2.015997452630713616e-24 -4.237087732024585737e-26 -4.540000000000000000e+02 2.962470668923458670e-24 -9.710766427789672583e-25 -4.542500000000000000e+02 -6.958803895458464142e-24 -7.910949212546754737e-24 -4.545000000000000000e+02 9.396429762604289381e-24 -1.220453016945749361e-24 -4.547500000000000000e+02 -1.851904810743646143e-24 -2.470284431993910392e-24 -4.550000000000000000e+02 -4.084156205322524587e-24 3.615841213590595666e-24 -4.552500000000000000e+02 4.832453080993189300e-24 -7.699599551028775967e-24 -4.555000000000000000e+02 -6.058024478251638307e-26 3.708663692741373079e-24 -4.557500000000000000e+02 -7.656153918990088437e-25 6.013897312437246306e-24 -4.560000000000000000e+02 3.146390335292331514e-24 1.831345713700228643e-24 -4.562500000000000000e+02 6.782617788171394388e-24 -6.293906965173557481e-24 -4.565000000000000000e+02 -1.048730623061677971e-24 3.236581615433688092e-24 -4.567500000000000000e+02 -6.841593033839947274e-24 3.561172694822750058e-24 -4.570000000000000000e+02 3.618977102976343439e-24 -1.976281368045777528e-24 -4.572500000000000000e+02 -6.979301775037940248e-24 -4.898742460799221654e-24 -4.575000000000000000e+02 -3.877999898015812058e-24 2.358518920575920570e-24 -4.577500000000000000e+02 1.113357159034762489e-24 1.005683661215738099e-24 -4.580000000000000000e+02 -7.250890869583301310e-24 -1.155648713842202226e-24 -4.582500000000000000e+02 8.200884094333266238e-25 1.353610288588171458e-24 -4.585000000000000000e+02 -7.193919899286076910e-24 -2.698067070868548570e-24 -4.587500000000000000e+02 3.923934464629529387e-24 2.859638364802449757e-25 -4.590000000000000000e+02 -1.851459353188225064e-24 7.359460097272890093e-25 -4.592500000000000000e+02 -4.242908325993602070e-25 -1.053314527523248002e-24 -4.595000000000000000e+02 -3.023310111213715323e-24 -3.268904249791399617e-24 -4.597500000000000000e+02 2.567909582692609818e-25 -8.119555091993628049e-24 -4.600000000000000000e+02 -6.505411391057157526e-25 1.717698840326743729e-24 -4.602500000000000000e+02 -1.473823128416662774e-24 1.294668333161995815e-24 -4.605000000000000000e+02 -6.560060180180978751e-24 -2.371435014197359354e-24 -4.607500000000000000e+02 1.159517445974214206e-24 -6.845337910874267387e-25 -4.610000000000000000e+02 -8.013844522375440516e-24 -4.511417419956488204e-24 -4.612500000000000000e+02 -3.067291615336903905e-24 4.330222095292213635e-24 -4.615000000000000000e+02 -1.778257788317795550e-24 4.431267433398841269e-24 -4.617500000000000000e+02 -9.560455632402898832e-24 -3.596148704483739947e-24 -4.620000000000000000e+02 2.636924307032392564e-24 8.612270958806523686e-24 -4.622500000000000000e+02 -7.929261382830993564e-25 -5.560269692407860544e-24 -4.625000000000000000e+02 -5.498988652920528034e-24 9.364910188126106132e-25 -4.627500000000000000e+02 3.726046966332399611e-24 4.253349975132208759e-24 -4.630000000000000000e+02 -1.104227865920842041e-24 -7.063710661052645930e-25 -4.632500000000000000e+02 -4.107635550798409364e-24 2.801841616876919025e-24 -4.635000000000000000e+02 -2.530259205284992935e-24 9.638788882464922066e-26 -4.637500000000000000e+02 6.233231452792255927e-24 -1.099120301215825679e-24 -4.640000000000000000e+02 3.202289176422759742e-24 -1.792528811449428063e-24 -4.642500000000000000e+02 7.228917089374001541e-24 1.947310254719666655e-24 -4.645000000000000000e+02 -7.035323432096028886e-24 -4.102055899684392381e-24 -4.647500000000000000e+02 -7.266212717217555508e-24 -1.244428713826671803e-24 -4.650000000000000000e+02 1.365858663362899721e-24 -4.116929192286743487e-25 -4.652500000000000000e+02 3.628906787597911874e-24 -1.101208464481153003e-24 -4.655000000000000000e+02 3.953500102088396485e-25 -1.366726999045538735e-24 -4.657500000000000000e+02 2.807100393641184878e-25 5.583150123219259191e-24 -4.660000000000000000e+02 3.543351463228205742e-24 -2.146108503150353911e-24 -4.662500000000000000e+02 -4.059525855972361960e-25 -2.828114183315832606e-24 -4.665000000000000000e+02 -5.262063438191560983e-24 3.875055475232326217e-24 -4.667500000000000000e+02 5.326604609673600631e-25 2.269664467854803391e-24 -4.670000000000000000e+02 -9.147125971936931379e-25 1.852766732274713866e-25 -4.672500000000000000e+02 -2.299924736296761179e-24 1.030512655769527911e-24 -4.675000000000000000e+02 5.539541822504425973e-24 2.185917845991495053e-24 -4.677500000000000000e+02 -1.352138406101764421e-24 1.132465877329402929e-24 -4.680000000000000000e+02 1.017124618286619514e-24 3.024796102569163619e-24 -4.682500000000000000e+02 -5.402890429223666089e-24 5.916866261863320523e-24 -4.685000000000000000e+02 2.433361937057115668e-24 5.024084707020461353e-24 -4.687500000000000000e+02 -1.586702258439104798e-24 6.378207175972929152e-24 -4.690000000000000000e+02 -7.400946778251286010e-24 -6.994040778037181135e-24 -4.692500000000000000e+02 4.650381612592343981e-24 -1.542635781443353022e-24 -4.695000000000000000e+02 1.728582696436387134e-24 1.507391445602819015e-24 -4.697500000000000000e+02 -3.718471836389940966e-24 1.393327779048247591e-24 -4.700000000000000000e+02 -1.203661440935866427e-24 -6.785251488266971297e-25 -4.702500000000000000e+02 -4.440367672544937631e-24 -2.226208597707068296e-24 -4.705000000000000000e+02 2.991769519665099618e-24 -7.474891814274056793e-24 -4.707500000000000000e+02 -5.525910780802233714e-24 -1.580217814195161517e-24 -4.710000000000000000e+02 3.751155575701054100e-24 -3.369968866282210758e-24 -4.712500000000000000e+02 3.079247697310242729e-24 1.482967869671795338e-24 -4.715000000000000000e+02 -3.601739685022362377e-25 7.176648413610388019e-24 -4.717500000000000000e+02 7.617033872083143826e-24 1.198847294616494253e-24 -4.720000000000000000e+02 -2.770270065651082305e-24 -1.353225828588277947e-24 -4.722500000000000000e+02 3.231003373408303776e-24 -2.206813668836791959e-24 -4.725000000000000000e+02 -2.523056046968600162e-24 -7.497801662380057207e-24 -4.727500000000000000e+02 8.725260636629560540e-25 -2.052250584465546108e-24 -4.730000000000000000e+02 1.151682443970217817e-24 -3.146973036654780289e-24 -4.732500000000000000e+02 -7.125275368763821830e-25 -5.674943114581781936e-25 -4.735000000000000000e+02 -1.259888145058499880e-24 2.071151425006217084e-24 -4.737500000000000000e+02 2.428329835049641896e-25 7.125898231362697860e-24 -4.740000000000000000e+02 -3.802447670222368165e-24 -9.561267120712611652e-25 -4.742500000000000000e+02 3.169212162609211567e-24 -9.749334907912025744e-25 -4.745000000000000000e+02 2.811546340036360299e-24 3.581003897610430459e-24 -4.747500000000000000e+02 5.133526000008180569e-24 3.315233780196721820e-24 -4.750000000000000000e+02 1.944641935244482943e-24 2.006706600799594715e-24 -4.752500000000000000e+02 1.255336517612343572e-24 -3.289020364432994198e-24 -4.755000000000000000e+02 1.707422307213869478e-24 4.823582982480097572e-24 -4.757500000000000000e+02 -5.350656582896817809e-24 -1.732605912958274567e-25 -4.760000000000000000e+02 -2.515166924964146281e-24 -3.494826892203540579e-24 -4.762500000000000000e+02 -3.378296008609378732e-24 -7.930183753417699352e-25 -4.765000000000000000e+02 -9.165970950857726187e-24 -5.392711001018677579e-24 -4.767500000000000000e+02 -1.639466861274581248e-24 -6.955499663073350428e-25 -4.770000000000000000e+02 1.787208424460265066e-24 -2.019580051872095615e-24 -4.772500000000000000e+02 5.285290364288434709e-26 -2.631411707911865818e-24 -4.775000000000000000e+02 -1.642194080685104085e-24 4.235029536646591630e-24 -4.777500000000000000e+02 -6.979754127116325384e-24 4.318911940056223591e-25 -4.780000000000000000e+02 1.248331386998534029e-24 -3.405513943564240658e-25 -4.782500000000000000e+02 -1.624258175520593195e-24 6.732923502496404045e-24 -4.785000000000000000e+02 1.475006287854382346e-24 8.652072800147595643e-25 -4.787500000000000000e+02 -8.561508043160102918e-24 -1.304171483441935852e-24 -4.790000000000000000e+02 4.320417532420616431e-24 -4.024425158207457857e-24 -4.792500000000000000e+02 3.022501476194407793e-24 -1.552707422571517083e-24 -4.795000000000000000e+02 -1.857582303809688914e-24 -2.776239905382160289e-24 -4.797500000000000000e+02 -2.316130681679359103e-24 -7.191247893732149132e-25 -4.800000000000000000e+02 5.861871112161640562e-24 -9.420190821940498935e-25 -4.802500000000000000e+02 1.170084762273326447e-24 6.946769936735598777e-24 -4.805000000000000000e+02 8.761143141762386159e-25 8.673089940724537505e-25 -4.807500000000000000e+02 -6.926356930076964351e-24 4.133110284121001926e-24 -4.810000000000000000e+02 8.826289295643742521e-24 1.475533007754536674e-24 -4.812500000000000000e+02 8.573368045961072826e-24 2.289569307110324769e-24 -4.815000000000000000e+02 -5.363135183448848101e-26 2.177812780253651373e-24 -4.817500000000000000e+02 5.919404583889498811e-24 -7.669659974553104311e-24 -4.820000000000000000e+02 -4.742583298580133812e-24 -5.632551005406817442e-24 -4.822500000000000000e+02 8.393754168040817045e-26 -1.064583446708026097e-24 -4.825000000000000000e+02 2.447343906520696662e-24 4.036745395041907339e-24 -4.827500000000000000e+02 -2.608347478651525924e-24 -5.794724834266785117e-24 -4.830000000000000000e+02 -2.404154281162198122e-25 -1.200560932705918735e-23 -4.832500000000000000e+02 1.928095740657512418e-24 -5.911698053323524641e-24 -4.835000000000000000e+02 9.036765519379314304e-25 -6.994440338893670034e-24 -4.837500000000000000e+02 2.079419247144259772e-24 5.975927636574017722e-24 -4.840000000000000000e+02 2.369466131207979772e-26 -2.599251653451604148e-24 -4.842500000000000000e+02 -2.791777726002031532e-24 -2.829695705001428535e-24 -4.845000000000000000e+02 -9.027060868743189396e-24 1.889147126349415351e-24 -4.847500000000000000e+02 8.191771690735266432e-25 -3.856509929007857174e-24 -4.850000000000000000e+02 -1.563325517426574016e-24 1.418063876206063254e-24 -4.852500000000000000e+02 5.689555592979360895e-24 -6.377525740916700172e-24 -4.855000000000000000e+02 1.484960142452798011e-24 -2.479521244385656073e-24 -4.857500000000000000e+02 4.005292099643353832e-24 1.422148327128502575e-24 -4.860000000000000000e+02 -2.476589195178302310e-24 -1.411991972343131300e-24 -4.862500000000000000e+02 5.777417615016775396e-25 3.632926778020535143e-24 -4.865000000000000000e+02 -8.987127796376887001e-25 6.754015376137438333e-24 -4.867500000000000000e+02 4.524708379667332709e-24 7.185324751894877249e-25 -4.870000000000000000e+02 3.260113537861008489e-24 2.977605611641792623e-24 -4.872500000000000000e+02 5.263054147994803821e-24 1.123733465782628532e-24 -4.875000000000000000e+02 5.538287761944630943e-24 -3.649434044371635375e-24 -4.877500000000000000e+02 6.524475230853261049e-25 4.165978837480107781e-26 -4.880000000000000000e+02 -1.463637996885058899e-24 -9.654109944271638577e-25 -4.882500000000000000e+02 -3.980694934390085097e-24 4.624747591606585952e-24 -4.885000000000000000e+02 -1.284428701687873623e-24 4.611899861951819529e-24 -4.887500000000000000e+02 1.708248865582545053e-25 5.832718342549348654e-24 -4.890000000000000000e+02 -9.859976601560579542e-25 1.162682662863654136e-24 -4.892500000000000000e+02 8.857179311991282833e-24 -1.945722310074793107e-24 -4.895000000000000000e+02 -2.973429858217232873e-25 1.599160785604477990e-24 -4.897500000000000000e+02 -4.019238868684993860e-25 2.300131822993821426e-24 -4.900000000000000000e+02 7.908798762509822746e-25 -2.241573470857173060e-24 -4.902500000000000000e+02 6.226905654321565916e-25 1.566138960821014574e-24 -4.905000000000000000e+02 3.379758206341528202e-24 1.970429359985887244e-24 -4.907500000000000000e+02 4.056398023339142226e-24 -4.550616529261930534e-24 -4.910000000000000000e+02 3.350896758734712212e-24 2.999006183360236491e-24 -4.912500000000000000e+02 -6.807969288876769290e-25 1.486601650083344087e-24 -4.915000000000000000e+02 -2.874489036632464620e-24 2.205427410907620890e-24 -4.917500000000000000e+02 5.048491249097878084e-26 3.036771626259461619e-24 -4.920000000000000000e+02 3.781932722300298217e-24 -1.927446519768418557e-24 -4.922500000000000000e+02 -4.638414618791603994e-24 8.658757171685430431e-24 -4.925000000000000000e+02 2.079449294341153979e-24 -8.144647112620599925e-26 -4.927500000000000000e+02 -2.683574004198449208e-24 1.278189042201547104e-24 -4.930000000000000000e+02 -3.524334951033221970e-25 1.138918798620405506e-23 -4.932500000000000000e+02 -8.069502694847264065e-25 -2.764734664367338260e-24 -4.935000000000000000e+02 -8.386057687473720850e-25 6.602883980692997246e-24 -4.937500000000000000e+02 2.548463605515165288e-24 1.277650016998211366e-24 -4.940000000000000000e+02 5.827447127697345317e-24 -5.359318637249663061e-24 -4.942500000000000000e+02 -1.632385947462193593e-24 -2.558453046654103382e-24 -4.945000000000000000e+02 5.011038221636999542e-25 -6.897524723948481227e-25 -4.947500000000000000e+02 3.931323783760822226e-24 -1.362670761557414630e-24 -4.950000000000000000e+02 -2.944964690289373144e-24 -1.530291764836160408e-24 -4.952500000000000000e+02 1.480944009651632629e-24 1.033206391886920076e-24 -4.955000000000000000e+02 5.133723269508422838e-24 -7.392139317119374548e-24 -4.957500000000000000e+02 -1.673124288673218342e-24 3.907117757202563139e-24 -4.960000000000000000e+02 -5.032717312867307972e-24 7.825933153261935844e-24 -4.962500000000000000e+02 -7.301651394350925267e-24 -3.373008951120463202e-24 -4.965000000000000000e+02 -5.411671445207816549e-25 1.725394606709307828e-24 -4.967500000000000000e+02 -8.548038925624923997e-24 2.656654283451194210e-24 -4.970000000000000000e+02 -2.321570353016051356e-24 3.368231392118038544e-24 -4.972500000000000000e+02 -2.865777236831005489e-24 -5.774868717847844527e-25 -4.975000000000000000e+02 2.148872767757414926e-24 3.544560686067863205e-24 -4.977500000000000000e+02 1.172047219189694794e-24 -7.314163507788669830e-25 -4.980000000000000000e+02 -6.434594802405788344e-24 -2.073066214279341575e-25 -4.982500000000000000e+02 -5.237889581949241433e-24 1.667073900924639445e-24 -4.985000000000000000e+02 2.085752309381764211e-24 6.075884995707295358e-24 -4.987500000000000000e+02 2.535060095175924503e-24 3.786482773860843034e-24 -4.990000000000000000e+02 4.632711204290585578e-24 -1.617221802158301860e-24 -4.992500000000000000e+02 1.487824142458273779e-24 8.128788436694518773e-24 -4.995000000000000000e+02 2.464419846732204301e-24 -4.539658325104738273e-24 -4.997500000000000000e+02 6.860553165785699894e-24 -3.505656306783158483e-24 -5.000000000000000000e+02 -5.193372507061129207e-24 -2.148414026726629620e-24 -5.002500000000000000e+02 2.708089163732007499e-24 -1.707979777960450800e-24 -5.005000000000000000e+02 -2.498199444467631511e-25 -1.020246857440864793e-23 -5.007500000000000000e+02 -1.901793651916982017e-24 1.000482429901595858e-24 -5.010000000000000000e+02 -1.678705231402823512e-24 -3.351610272466795078e-24 -5.012500000000000000e+02 5.098881106534481039e-24 -6.838957598031820720e-24 -5.015000000000000000e+02 -6.328060511246417118e-24 1.366118657582131093e-24 -5.017500000000000000e+02 2.688295686099938034e-24 1.086937798586502934e-24 -5.020000000000000000e+02 4.058528606212351161e-24 2.190498230451016232e-24 -5.022500000000000000e+02 7.241306232305169069e-24 -1.060625159001334889e-24 -5.025000000000000000e+02 -1.556653230260769790e-25 5.006604546731145632e-24 -5.027500000000000000e+02 -2.505638778961205406e-24 -3.171174395028872581e-24 -5.030000000000000000e+02 -6.137629770785064483e-24 -7.841025989641663170e-25 -5.032500000000000000e+02 7.962531227276528675e-25 -6.027062227691758564e-24 -5.035000000000000000e+02 -4.043431829381422027e-24 4.152142204326025194e-24 -5.037500000000000000e+02 2.439490352861654210e-25 4.448145439228478927e-24 -5.040000000000000000e+02 -7.586612151218835676e-25 2.831801888738463073e-24 -5.042500000000000000e+02 1.703094532278905582e-24 1.136557608374884852e-23 -5.045000000000000000e+02 -6.850348098143622871e-25 -2.556482605477485029e-26 -5.047500000000000000e+02 -5.868628775812086256e-25 -5.998843736488803439e-24 -5.050000000000000000e+02 4.947818629412552380e-24 2.891581357634258463e-24 -5.052500000000000000e+02 3.104527634973289991e-25 6.113032651090988662e-24 -5.055000000000000000e+02 5.007569978817930277e-24 6.176594756051285151e-25 -5.057500000000000000e+02 -3.275985373050855328e-24 2.370404168834101447e-24 -5.060000000000000000e+02 1.804248992168316123e-24 -2.443303625554414457e-24 -5.062500000000000000e+02 1.430423236538953975e-24 -4.316329032953886810e-24 -5.065000000000000000e+02 -1.755973168753779965e-24 8.316323953520769268e-24 -5.067500000000000000e+02 -4.603148067814414431e-24 1.387736291677640996e-25 -5.070000000000000000e+02 -3.802133071212952338e-24 1.609856872529271611e-24 -5.072500000000000000e+02 1.324460902047338642e-24 -3.018174327876644997e-25 -5.075000000000000000e+02 3.881152682577160675e-24 -2.771232983585583959e-25 -5.077500000000000000e+02 9.819600839219650134e-25 -1.058590330762959070e-23 -5.080000000000000000e+02 5.388303936565214643e-24 4.290502382163474579e-24 -5.082500000000000000e+02 9.135400061018683024e-25 -2.218748242652921229e-24 -5.085000000000000000e+02 -4.570893943008418758e-25 -5.547771452785784035e-24 -5.087500000000000000e+02 1.977470957228100642e-25 -3.468257243024003788e-24 -5.090000000000000000e+02 3.274280992052551569e-24 -3.470136342972788570e-24 -5.092500000000000000e+02 4.783291106907150128e-24 1.113744751630594646e-25 -5.095000000000000000e+02 -7.193942367476615788e-24 -4.329496238141207262e-25 -5.097500000000000000e+02 1.440822905730618706e-24 2.119626184839402149e-24 -5.100000000000000000e+02 5.308411019544901607e-25 7.354727306592595324e-24 -5.102500000000000000e+02 3.743977618506356144e-24 4.834605875824229438e-24 -5.105000000000000000e+02 1.412998791176487976e-24 -3.333765941018230627e-24 -5.107500000000000000e+02 -2.502224365878492840e-24 5.915230777959241815e-24 -5.110000000000000000e+02 -6.585640207567274809e-24 3.947390076438672694e-24 -5.112500000000000000e+02 -5.412970812090073829e-24 1.720069316838420541e-24 -5.115000000000000000e+02 -8.797151326336374053e-24 -1.505991829457739623e-24 -5.117500000000000000e+02 8.415559638693695744e-24 6.101268004484835305e-24 -5.120000000000000000e+02 1.760786267517414715e-25 5.328236129788585726e-25 -5.122500000000000000e+02 -1.101047847359436779e-24 -1.658347603657433252e-25 -5.125000000000000000e+02 -6.824630349715666649e-25 2.701145942313156205e-24 -5.127500000000000000e+02 3.079295923243692105e-25 2.228525479280315856e-25 -5.130000000000000000e+02 3.239073630615876911e-25 1.126311803595511142e-23 -5.132500000000000000e+02 -3.950770869328924897e-24 -4.958342138752453777e-24 -5.135000000000000000e+02 1.851305528141714024e-24 -3.194010679162247825e-24 -5.137500000000000000e+02 -2.128788120968533420e-24 9.692694174913209049e-24 -5.140000000000000000e+02 1.920318576338008832e-24 5.356562162502780478e-24 -5.142500000000000000e+02 -2.913975237658319534e-26 -5.241287264696421148e-24 -5.145000000000000000e+02 2.930602521017822643e-24 -5.723720420120330922e-24 -5.147500000000000000e+02 1.099318577462403094e-24 3.562828686608467499e-25 -5.150000000000000000e+02 -6.525022100899224741e-24 5.677725330171352043e-24 -5.152500000000000000e+02 -2.001122978381352941e-24 -1.293907352671947268e-24 -5.155000000000000000e+02 3.205953607026352671e-24 3.064101549417602357e-24 -5.157500000000000000e+02 3.789698550459298639e-25 4.183261028102964544e-24 -5.160000000000000000e+02 2.141963879538635719e-24 -3.353221952553614481e-24 -5.162500000000000000e+02 -1.594150149082156850e-24 -1.026979018408468809e-23 -5.165000000000000000e+02 3.228053805846981395e-24 -2.954864618134193204e-24 -5.167500000000000000e+02 -2.812159401594579666e-24 -3.404077460691237586e-25 -5.170000000000000000e+02 4.266590755637167561e-24 -3.361667627230923658e-24 -5.172500000000000000e+02 -1.918042287074644472e-25 -6.342821176679841563e-24 -5.175000000000000000e+02 -3.374349369878201758e-24 3.032940116653434781e-24 -5.177500000000000000e+02 2.226877418732646527e-24 4.745306977344589232e-25 -5.180000000000000000e+02 8.365555290225734515e-25 3.368492680343069193e-24 -5.182500000000000000e+02 -2.684071593212333419e-24 3.551199901340276679e-24 -5.185000000000000000e+02 -8.463856760689781850e-24 -3.392459120844826293e-24 -5.187500000000000000e+02 2.398100060519557719e-24 -1.003917048548898140e-24 -5.190000000000000000e+02 2.698719386775253554e-24 -1.012226016878164691e-24 -5.192500000000000000e+02 6.048469228433910325e-25 4.779078759340184412e-24 -5.195000000000000000e+02 -5.019111985275453475e-24 -8.501519805783199337e-26 -5.197500000000000000e+02 -2.171339366966794820e-24 6.651374079445285670e-24 -5.200000000000000000e+02 2.834429023896134806e-24 -4.476657508032017484e-25 -5.202500000000000000e+02 -3.825514266370831480e-24 1.033918943864263231e-25 -5.205000000000000000e+02 -3.445440582896942546e-24 1.500625579323902387e-24 -5.207500000000000000e+02 -2.740723848332326572e-24 3.538066491673983722e-24 -5.210000000000000000e+02 4.449781163918337226e-24 -4.013480226860282151e-25 -5.212500000000000000e+02 -3.439424376236528371e-24 -1.525937951734403635e-24 -5.215000000000000000e+02 -5.771508864321544786e-24 -3.675949220034986984e-24 -5.217500000000000000e+02 6.211912541397946320e-25 -5.770810394286700247e-24 -5.220000000000000000e+02 4.813929090842208937e-24 3.345284309075926399e-24 -5.222500000000000000e+02 -5.092869930589055830e-24 8.094388686209326288e-24 -5.225000000000000000e+02 2.234145810804053507e-24 2.164025730859564564e-24 -5.227500000000000000e+02 2.818174500782829150e-24 -2.078549779153663402e-24 -5.230000000000000000e+02 -2.434671441050817041e-24 -3.284741498760133257e-24 -5.232500000000000000e+02 -5.694535147793814456e-25 6.244218121592754259e-24 -5.235000000000000000e+02 1.339352077428104865e-25 -3.227385360826925160e-24 -5.237500000000000000e+02 -2.883924574620713566e-25 3.608914199835284300e-24 -5.240000000000000000e+02 -3.930287772696822813e-24 7.975170365851907993e-24 -5.242500000000000000e+02 5.486693915703758613e-24 4.561024752137868270e-24 -5.245000000000000000e+02 -7.195663606008445395e-24 1.000910129365600305e-24 -5.247500000000000000e+02 -2.839209071439880785e-24 2.372621904570245873e-24 -5.250000000000000000e+02 -1.178469574039590892e-24 -9.881233795407678740e-25 -5.252500000000000000e+02 5.373885335821339023e-24 2.418416263901690668e-24 -5.255000000000000000e+02 -4.134524889666431469e-24 -4.187488687672704298e-24 -5.257500000000000000e+02 4.483803802195522427e-24 7.816331451793674780e-25 -5.260000000000000000e+02 -1.888727061178963950e-24 2.663092849842862156e-24 -5.262500000000000000e+02 -3.392558474662321059e-24 -5.883445247622176148e-24 -5.265000000000000000e+02 -6.249898900587284502e-24 -4.442445262672989307e-24 -5.267500000000000000e+02 3.925254392706780024e-24 -2.054278270251903463e-24 -5.270000000000000000e+02 -4.890816890545017569e-24 -7.775121152755555396e-25 -5.272500000000000000e+02 -2.186686220373561352e-26 -4.812614082565008545e-25 -5.275000000000000000e+02 -3.172562349652220494e-25 7.130963255715737430e-25 -5.277500000000000000e+02 2.559440876076570854e-24 -4.360304326340059217e-25 -5.280000000000000000e+02 -3.746086669939469324e-24 -2.512281020559069764e-24 -5.282500000000000000e+02 2.911052560954677424e-24 -5.468895747482271983e-24 -5.285000000000000000e+02 6.478941073117764133e-25 -2.645765028853361431e-24 -5.287500000000000000e+02 1.281056918401184790e-24 -3.352245900575704711e-24 -5.290000000000000000e+02 -4.975554454234641492e-24 -1.272355307862618005e-24 -5.292500000000000000e+02 4.941794322090529017e-24 6.558386024673447379e-25 -5.295000000000000000e+02 1.547871141926942899e-24 -6.039883411507690503e-24 -5.297500000000000000e+02 8.134660203050551169e-25 3.947088386296065494e-25 -5.300000000000000000e+02 2.198789338702265283e-24 -9.336091961449671666e-25 -5.302500000000000000e+02 -9.658165048820973344e-24 -3.079526545182308772e-24 -5.305000000000000000e+02 1.834284799048557884e-24 -1.297698900594289041e-24 -5.307500000000000000e+02 9.569610483932658811e-24 -7.161369828867326829e-24 -5.310000000000000000e+02 -5.868272558207942333e-24 2.941775779924073507e-24 -5.312500000000000000e+02 2.088444387851272344e-24 -3.650229878475962238e-24 -5.315000000000000000e+02 6.716464049493087509e-24 2.185623477086278358e-25 -5.317500000000000000e+02 -9.428710751256290027e-26 -4.555009728530354265e-25 -5.320000000000000000e+02 -6.329298255331808327e-25 4.558120457936362177e-24 -5.322500000000000000e+02 1.481014831828770408e-24 9.899512197227209382e-25 -5.325000000000000000e+02 -1.376931680646540332e-24 2.094055852341644471e-24 -5.327500000000000000e+02 6.537469596927969504e-24 -4.507116371788502365e-25 -5.330000000000000000e+02 2.786366477291729724e-24 -3.017227808836761344e-24 -5.332500000000000000e+02 -1.805110494793691982e-24 -4.582400102481801072e-24 -5.335000000000000000e+02 3.188572265242863503e-24 8.599896876773293284e-25 -5.337500000000000000e+02 -4.746248661733980509e-24 1.008364603758082049e-23 -5.340000000000000000e+02 -1.445494677730371216e-24 1.904640936484674179e-24 -5.342500000000000000e+02 -4.604668434421005899e-24 -3.910519022216184633e-24 -5.345000000000000000e+02 2.117692898242130129e-24 8.805591218093049387e-25 -5.347500000000000000e+02 1.007972741110131667e-24 1.902729399648314234e-24 -5.350000000000000000e+02 -1.987412444570918676e-24 8.896431900926916309e-25 -5.352500000000000000e+02 -4.537670983069277147e-25 -4.254497180112134885e-24 -5.355000000000000000e+02 -4.752152187590149812e-24 -7.921153314936082707e-25 -5.357500000000000000e+02 -8.021057252907606725e-25 -5.976583844272900282e-24 -5.360000000000000000e+02 -7.266607856926100090e-24 -1.341452900814644665e-24 -5.362500000000000000e+02 -2.960396623768963926e-24 3.910903794381090060e-26 -5.365000000000000000e+02 -8.229359779026708145e-25 4.062655790968475482e-24 -5.367500000000000000e+02 -5.671665990984371600e-24 -5.341092004506340438e-24 -5.370000000000000000e+02 -1.598422094120003342e-24 1.132732444943977784e-24 -5.372500000000000000e+02 -9.748348502676547800e-26 2.860366372482167759e-24 -5.375000000000000000e+02 -3.635489127202183551e-24 -4.646296076262223152e-24 -5.377500000000000000e+02 7.453616474447378201e-24 4.653950917271047608e-24 -5.380000000000000000e+02 -3.534929731503178289e-24 3.794473026070250704e-24 -5.382500000000000000e+02 -1.991581774978711328e-24 4.176268698696729620e-24 -5.385000000000000000e+02 -7.755603021074563619e-24 2.201753551252192547e-24 -5.387500000000000000e+02 6.634287329933202064e-24 4.844753341496017463e-24 -5.390000000000000000e+02 4.273084618408190647e-24 3.667473468830320225e-24 -5.392500000000000000e+02 -8.965817067621034779e-24 6.522523377784099875e-24 -5.395000000000000000e+02 1.700518203152331816e-24 3.764137487687781787e-24 -5.397500000000000000e+02 -5.384634724551130084e-25 -5.262414525901204949e-24 -5.400000000000000000e+02 3.469025244659889962e-24 3.217578011907244334e-24 -5.402500000000000000e+02 -8.111429052925337282e-24 1.965934558578759113e-24 -5.405000000000000000e+02 -5.284135395080126540e-24 -1.116022042751963012e-24 -5.407500000000000000e+02 -3.738943592181537797e-24 -1.387111748774622441e-24 -5.410000000000000000e+02 2.518118013164221361e-24 -1.682448313385289441e-24 -5.412500000000000000e+02 1.637564583667359106e-24 3.036801999937987478e-24 -5.415000000000000000e+02 -4.662079282295553538e-24 4.659087776676049125e-24 -5.417500000000000000e+02 -3.294060665236721251e-24 -7.315832146336392243e-24 -5.420000000000000000e+02 -1.598104721123746150e-24 9.383980938465524653e-25 -5.422500000000000000e+02 8.110631647751762400e-25 6.568466097097763436e-24 -5.425000000000000000e+02 7.171482238660888077e-24 2.791010372963421709e-24 -5.427500000000000000e+02 3.691493250647801263e-25 7.231432165823319427e-24 -5.430000000000000000e+02 5.768706516757138825e-25 2.409298965557089102e-24 -5.432500000000000000e+02 1.319040087140802093e-24 5.679464414179780459e-25 -5.435000000000000000e+02 -4.503480571349982980e-25 6.472534651639981348e-24 -5.437500000000000000e+02 6.993460032975435356e-24 -7.056577046758918084e-24 -5.440000000000000000e+02 2.748166384857288997e-24 -7.470958553051153140e-24 -5.442500000000000000e+02 -1.385843274996112343e-24 1.794881336030043474e-24 -5.445000000000000000e+02 3.818261140608449289e-26 -1.722342470667447682e-24 -5.447500000000000000e+02 -3.076555305825045795e-25 3.068724752128441081e-24 -5.450000000000000000e+02 6.399751151692435211e-24 3.810808349782261458e-24 -5.452500000000000000e+02 -8.954618179599651052e-24 2.560348835168071941e-24 -5.455000000000000000e+02 3.456848277886834308e-24 -8.996632329706886709e-25 -5.457500000000000000e+02 1.803313237101742302e-24 -2.597646840994297541e-24 -5.460000000000000000e+02 -1.879003609090693531e-24 -3.320367249691502048e-24 -5.462500000000000000e+02 -4.167014984723973686e-24 3.399717151530077995e-24 -5.465000000000000000e+02 -1.062615144884530885e-24 1.830864154982254953e-24 -5.467500000000000000e+02 -3.362319345915732195e-24 -1.010284225212144840e-23 -5.470000000000000000e+02 2.597484362070458399e-24 4.629712177661867088e-25 -5.472500000000000000e+02 -3.312871315478170800e-24 2.017604245276245145e-24 -5.475000000000000000e+02 1.484848473667086317e-23 2.070652665304401576e-25 -5.477500000000000000e+02 -9.003458708422514381e-25 1.750240068996251558e-24 -5.480000000000000000e+02 -3.442393074358663098e-24 4.606876391247228441e-24 -5.482500000000000000e+02 -2.698413884479560758e-24 6.589103263353110002e-24 -5.485000000000000000e+02 -2.259038915394220861e-24 8.694335170180862979e-25 -5.487500000000000000e+02 2.044272675054488906e-24 4.189070287704797773e-24 -5.490000000000000000e+02 2.965023092282243592e-24 -2.151998491755655480e-24 -5.492500000000000000e+02 1.283145178878931205e-24 -2.811116936129760874e-24 -5.495000000000000000e+02 -2.824293714474310759e-24 5.390160763310491760e-24 -5.497500000000000000e+02 -6.141409365655211716e-25 2.060301065764594314e-24 -5.500000000000000000e+02 2.471454917383696738e-24 -1.446831299214651249e-24 -5.502500000000000000e+02 6.923207928570766808e-24 4.136082862709646196e-25 -5.505000000000000000e+02 -3.459813231973327317e-24 -3.351687871009690294e-24 -5.507500000000000000e+02 3.352844133302752825e-24 -1.849715993993537251e-24 -5.510000000000000000e+02 2.143889810372455980e-25 1.284972051037941535e-24 -5.512500000000000000e+02 -3.265030023593934609e-24 5.365577904814717327e-25 -5.515000000000000000e+02 -2.755335177322569458e-24 1.953859294856591829e-24 -5.517500000000000000e+02 7.999281611198299309e-24 1.607719267187995575e-24 -5.520000000000000000e+02 2.129317164734506246e-24 -3.509046775926275457e-24 -5.522500000000000000e+02 -3.034967072119884220e-24 -1.472540524231269355e-24 -5.525000000000000000e+02 -1.140765889559271386e-24 -1.277828186608124832e-25 -5.527500000000000000e+02 4.451031665567727875e-25 -2.566292750525577808e-25 -5.530000000000000000e+02 -5.018587600007184980e-25 -8.206525330777006408e-25 -5.532500000000000000e+02 -4.239485881480777750e-24 3.195612722341035385e-25 -5.535000000000000000e+02 -4.367974466167084769e-24 -4.575774723088687932e-24 -5.537500000000000000e+02 2.516389479471292642e-24 3.527420945731140603e-24 -5.540000000000000000e+02 -1.846750112616494029e-24 -6.429230260067766965e-24 -5.542500000000000000e+02 -4.357660393441618814e-24 -2.074130192368307597e-24 -5.545000000000000000e+02 3.686672994572052074e-24 -1.770528200336559182e-24 -5.547500000000000000e+02 -5.601579766210113389e-24 -4.444843608837062450e-25 -5.550000000000000000e+02 2.075536982392225728e-25 4.801653961998331786e-24 -5.552500000000000000e+02 -1.483711201068638314e-24 4.378317728279804319e-25 -5.555000000000000000e+02 1.532721458614495300e-24 -2.861628629134082784e-25 -5.557500000000000000e+02 1.342493631058668099e-24 -2.342062664357115213e-24 -5.560000000000000000e+02 -7.083337387838771081e-24 1.029760775505911805e-26 -5.562500000000000000e+02 3.614698019707100573e-24 3.691195620481257841e-24 -5.565000000000000000e+02 -3.889408662211635771e-25 8.500764796246507100e-25 -5.567500000000000000e+02 -3.792554031785258760e-25 -4.660528534408153147e-24 -5.570000000000000000e+02 9.786337142485253582e-24 5.212608690801755833e-24 -5.572500000000000000e+02 -2.122152871350960030e-24 -1.853808520354877292e-24 -5.575000000000000000e+02 -3.859748847037214812e-25 -4.740680548305792725e-24 -5.577500000000000000e+02 1.375929973390975620e-24 3.129615936699392272e-24 -5.580000000000000000e+02 5.908384862559694573e-25 -1.754333407223254077e-24 -5.582500000000000000e+02 -3.210141073175465732e-24 5.832671679684936437e-24 -5.585000000000000000e+02 2.244849642097105084e-24 -1.090949955090124438e-24 -5.587500000000000000e+02 2.075308788409461782e-25 -3.672681371561389434e-24 -5.590000000000000000e+02 -7.316716295047094911e-24 1.396969977159435153e-24 -5.592500000000000000e+02 3.763164248059292028e-24 5.187721887871147063e-24 -5.595000000000000000e+02 -2.494702707041301171e-24 -2.948417541143138108e-24 -5.597500000000000000e+02 3.937964121088218169e-24 2.282472348219553119e-24 -5.600000000000000000e+02 8.545523330025332182e-25 3.911532085896672357e-24 -5.602500000000000000e+02 4.650464536192220245e-24 -2.692999010271459393e-24 -5.605000000000000000e+02 -8.438447316003115468e-24 3.544473223639718036e-26 -5.607500000000000000e+02 -2.052098891424571205e-24 -7.244296962295771115e-24 -5.610000000000000000e+02 -4.127241692233887687e-24 2.453747439113100717e-24 -5.612500000000000000e+02 -1.991284475741358750e-24 1.714258063313296903e-25 -5.615000000000000000e+02 5.697928317015278132e-24 -4.273886699918831820e-24 -5.617500000000000000e+02 -1.797413169401357408e-24 3.792887853399889191e-24 -5.620000000000000000e+02 9.669924553417991516e-24 -2.560509864340994032e-24 -5.622500000000000000e+02 -4.297323870481417799e-24 -3.141502601259056417e-24 -5.625000000000000000e+02 7.824882886285265412e-25 -1.540823067197193402e-24 -5.627500000000000000e+02 3.138970726207713251e-24 4.882530624573499053e-24 -5.630000000000000000e+02 -3.509452170313466995e-24 1.709120522898541257e-24 -5.632500000000000000e+02 6.856860170650384342e-25 -9.407397984102264956e-25 -5.635000000000000000e+02 4.534694321651679650e-24 -8.112319325953769023e-25 -5.637500000000000000e+02 5.815993801691110420e-24 5.130073796385480993e-24 -5.640000000000000000e+02 6.164143964030551554e-24 -4.678347856093541338e-24 -5.642500000000000000e+02 4.899756247449882578e-24 -5.987974950075518093e-25 -5.645000000000000000e+02 -5.854222223803009470e-24 3.376969066475267475e-24 -5.647500000000000000e+02 4.301539508945053780e-24 -3.397328901465460868e-24 -5.650000000000000000e+02 -1.651815260775583664e-24 -1.266932938205425848e-24 -5.652500000000000000e+02 -2.931052014886676382e-24 1.774216762816227717e-24 -5.655000000000000000e+02 -3.225741789399800071e-24 -9.768440760728287490e-25 -5.657500000000000000e+02 -2.190722196181057886e-24 7.477491170072137300e-24 -5.660000000000000000e+02 -2.109464209227858276e-24 3.246800299560368920e-24 -5.662500000000000000e+02 -9.010193827337198664e-24 -4.981306691969870749e-24 -5.665000000000000000e+02 2.696606530411105186e-24 -5.947852360926136666e-24 -5.667500000000000000e+02 5.244114151398783683e-24 3.766087065086762577e-24 -5.670000000000000000e+02 4.755213308562368060e-24 3.005005465895370577e-24 -5.672500000000000000e+02 2.818805606637364279e-24 -4.619767901128579339e-24 -5.675000000000000000e+02 2.274513576180413833e-24 -6.512529316468810774e-25 -5.677500000000000000e+02 6.234295591197063678e-26 -5.909846122099383613e-24 -5.680000000000000000e+02 6.166814421073450226e-24 3.384124087786255467e-24 -5.682500000000000000e+02 1.763433337686110912e-24 -4.282488859964685849e-25 -5.685000000000000000e+02 2.841369773865133336e-24 9.150369278462046360e-24 -5.687500000000000000e+02 -2.943253665781370864e-24 4.680226194469910997e-24 -5.690000000000000000e+02 -1.795616813599858009e-24 4.402294133054911242e-24 -5.692500000000000000e+02 -4.726405776569014530e-24 7.545511412944475981e-24 -5.695000000000000000e+02 -1.526342463819031144e-25 5.326463039467289242e-24 -5.697500000000000000e+02 2.397161476485643230e-24 -5.641178335757434287e-24 -5.700000000000000000e+02 -2.571760198682762081e-24 4.014369913431665572e-24 -5.702500000000000000e+02 7.159621116407887942e-24 -4.889751861636097634e-24 -5.705000000000000000e+02 1.611288439407329589e-24 -5.744772877077987877e-25 -5.707500000000000000e+02 -4.772851511837671049e-24 -3.386205207313627381e-24 -5.710000000000000000e+02 4.326311314353686655e-24 -1.534657040183915756e-24 -5.712500000000000000e+02 -3.079658017440097388e-24 -3.778753896757919106e-24 -5.715000000000000000e+02 1.217975196067605423e-24 -5.517938982649057737e-25 -5.717500000000000000e+02 -1.081594154506517236e-25 1.636012600272383810e-24 -5.720000000000000000e+02 -4.867009286578146386e-24 -2.373907832180887882e-24 -5.722500000000000000e+02 -5.705084907234988035e-25 1.249118668857495829e-24 -5.725000000000000000e+02 2.555901510158108452e-25 1.037862067958918166e-24 -5.727500000000000000e+02 -1.389433079960221394e-24 3.984129065665622238e-25 -5.730000000000000000e+02 5.855445903227487248e-24 -9.505345103678431828e-25 -5.732500000000000000e+02 4.698354815488237489e-25 6.414089607134503769e-24 -5.735000000000000000e+02 8.333168362339142583e-24 2.698147407485412030e-25 -5.737500000000000000e+02 -3.299116902693880995e-24 -4.854568175371276641e-24 -5.740000000000000000e+02 -2.041151204156745361e-24 6.456135735099873721e-24 -5.742500000000000000e+02 -3.398985690025070231e-25 3.546493797015055878e-24 -5.745000000000000000e+02 1.721903734256849489e-24 5.319105030624752786e-24 -5.747500000000000000e+02 1.614584321111940557e-24 -4.901671202262840604e-24 -5.750000000000000000e+02 6.445126486872461432e-24 -5.058521647069062629e-24 -5.752500000000000000e+02 4.739369509559547162e-24 3.441640835865621088e-25 -5.755000000000000000e+02 -5.793892582310674212e-24 2.469227205095391199e-25 -5.757500000000000000e+02 -2.387168763118379141e-24 1.114651493484506089e-24 -5.760000000000000000e+02 3.913954738894564218e-24 5.304876521349252543e-24 -5.762500000000000000e+02 -1.916388549975776804e-24 -6.004294829366821922e-24 -5.765000000000000000e+02 -2.700400455624533387e-26 2.727318846426509131e-24 -5.767500000000000000e+02 -6.362155158042957784e-25 -2.941454583747699782e-25 -5.770000000000000000e+02 -1.106119372825784152e-24 -7.937709378228261237e-24 -5.772500000000000000e+02 -1.267025648083166566e-24 6.796154032466035422e-24 -5.775000000000000000e+02 1.282289611943170529e-24 4.745011415627937587e-25 -5.777500000000000000e+02 7.323919561047804261e-25 1.200794416590082235e-23 -5.780000000000000000e+02 -4.987095900950679336e-24 -5.304134413456660294e-24 -5.782500000000000000e+02 7.624653850651427816e-24 3.677128462937325596e-24 -5.785000000000000000e+02 3.328457032418566159e-24 -3.112446116131167024e-24 -5.787500000000000000e+02 8.386953871319112342e-24 -3.247807903981961055e-24 -5.790000000000000000e+02 -3.616537649010905180e-24 1.877875182928226993e-24 -5.792500000000000000e+02 6.331392664200523745e-24 5.531849551932022459e-24 -5.795000000000000000e+02 -4.810061451803079615e-24 7.856976430263309285e-25 -5.797500000000000000e+02 -1.210463693862251117e-24 6.076294028698764877e-24 -5.800000000000000000e+02 -5.495601620696649140e-25 -2.231447566139949806e-24 -5.802500000000000000e+02 -4.852655867652705699e-24 6.554341617055302800e-25 -5.805000000000000000e+02 6.794407870310639182e-24 -9.925370213245948973e-25 -5.807500000000000000e+02 5.665568933231849875e-24 3.191009094748997329e-24 -5.810000000000000000e+02 -2.274676205569860665e-24 -1.634836831023823553e-24 -5.812500000000000000e+02 -1.333553924968219143e-24 6.979351965621880990e-24 -5.815000000000000000e+02 3.174534827153946042e-25 -2.239344733275765536e-24 -5.817500000000000000e+02 4.556410036387235953e-24 -3.575113957507397093e-24 -5.820000000000000000e+02 -3.686122027857321274e-24 -4.100867033608097151e-24 -5.822500000000000000e+02 1.273815225806019840e-24 -6.240923935186346390e-24 -5.825000000000000000e+02 -2.374862120717379835e-24 -2.531834351044608239e-24 -5.827500000000000000e+02 1.197315019371969662e-24 3.323670906956020818e-24 -5.830000000000000000e+02 -4.663255708553268679e-24 3.668825248914441140e-24 -5.832500000000000000e+02 -1.288079016917375655e-24 7.876810263417762468e-24 -5.835000000000000000e+02 2.567828611347437158e-25 -2.957914270899434372e-24 -5.837500000000000000e+02 -1.922294310836883716e-24 -4.191018117144651612e-24 -5.840000000000000000e+02 -3.001847265712236883e-24 -6.674982791088895581e-24 -5.842500000000000000e+02 4.583777070949903631e-25 -5.311934226199848704e-24 -5.845000000000000000e+02 -4.076876011251155520e-24 -7.592268778312635681e-24 -5.847500000000000000e+02 5.843379666850005557e-24 6.186890663907075208e-25 -5.850000000000000000e+02 -2.358041049708856861e-24 7.322744497661766681e-24 -5.852500000000000000e+02 -5.056972561881079695e-24 2.273838398958293570e-25 -5.855000000000000000e+02 1.285163925656287304e-24 2.549321056357638096e-24 -5.857500000000000000e+02 2.630355598932822327e-24 2.908305857710239155e-24 -5.860000000000000000e+02 -5.302203894539163373e-24 2.229611162831545895e-24 -5.862500000000000000e+02 3.986534659033992953e-24 4.883826904049936737e-24 -5.865000000000000000e+02 -3.024499982873944702e-24 3.376990955229081393e-24 -5.867500000000000000e+02 -9.790602682288236498e-24 -2.657367275852964018e-24 -5.870000000000000000e+02 -1.141971584174827271e-24 2.632500691895573374e-24 -5.872500000000000000e+02 5.235801956191947782e-24 3.864586158798208077e-24 -5.875000000000000000e+02 -1.986509369181682012e-24 -2.449279804586575374e-24 -5.877500000000000000e+02 2.772429825999238265e-24 5.983246311320908517e-24 -5.880000000000000000e+02 -2.288193360447802260e-24 2.751282897987229613e-24 -5.882500000000000000e+02 -2.408389009490730710e-24 -2.729309792849019564e-25 -5.885000000000000000e+02 5.103389929321213842e-24 5.023727213394407512e-24 -5.887500000000000000e+02 -6.051815341746908883e-24 -2.230910608449537206e-24 -5.890000000000000000e+02 -1.295599096210043240e-24 -3.173251478248763145e-24 -5.892500000000000000e+02 -3.759557454165092366e-24 -1.067322691890268948e-24 -5.895000000000000000e+02 4.373421275255681720e-24 -7.460404965980771470e-25 -5.897500000000000000e+02 -1.005330304426895733e-23 4.175573458475812687e-24 -5.900000000000000000e+02 8.182830425455348812e-24 6.984670434837204705e-24 -5.902500000000000000e+02 1.607861332575030952e-24 1.781133234487130743e-24 -5.905000000000000000e+02 -1.152039665629715361e-24 5.187690165114043010e-25 -5.907500000000000000e+02 -1.760289114689482756e-24 -1.020449094486986629e-24 -5.910000000000000000e+02 1.658076992764287841e-24 4.027660966636583856e-25 -5.912500000000000000e+02 -8.047966045241609409e-25 -2.813786987768082610e-24 -5.915000000000000000e+02 -3.167273689819686644e-24 -3.531191577476158005e-24 -5.917500000000000000e+02 -5.729946212371483539e-24 1.353753115849283197e-24 -5.920000000000000000e+02 -6.227775409742706395e-24 -9.804023702576818146e-25 -5.922500000000000000e+02 3.789703765860769838e-24 5.544166030635414280e-24 -5.925000000000000000e+02 -3.307323415638015769e-24 2.043630097930515999e-24 -5.927500000000000000e+02 -1.724369522684165571e-24 -3.348082761311849190e-24 -5.930000000000000000e+02 -2.808604268872056171e-24 -1.036461480302014554e-23 -5.932500000000000000e+02 4.481786007251813868e-24 -1.268984353592233675e-24 -5.935000000000000000e+02 3.217524035639736863e-24 1.672838731500858081e-24 -5.937500000000000000e+02 -1.947146402006019567e-24 -5.344623799272564628e-24 -5.940000000000000000e+02 -1.983920425148004134e-24 -6.617739379536068185e-24 -5.942500000000000000e+02 6.597752410269865690e-25 3.343639363596536331e-24 -5.945000000000000000e+02 -5.582408508685974005e-24 -2.136776148516013336e-24 -5.947500000000000000e+02 5.230967230082937252e-25 -7.628658818574605610e-25 -5.950000000000000000e+02 -2.114395282669017096e-24 5.154871334842007986e-24 -5.952500000000000000e+02 5.553465103007374745e-25 -7.472038209292242939e-25 -5.955000000000000000e+02 -1.573440683099301792e-25 7.890933351229197517e-25 -5.957500000000000000e+02 -3.873447861539580567e-24 3.026603444826556848e-24 -5.960000000000000000e+02 6.676443802490426739e-24 4.811415953293743639e-26 -5.962500000000000000e+02 -3.215490539738559603e-24 -4.901544873128327882e-25 -5.965000000000000000e+02 3.220853758127700449e-24 2.474492235825152698e-24 -5.967500000000000000e+02 2.129680818398046101e-25 -2.718797563594388915e-24 -5.970000000000000000e+02 -5.243690386996249262e-24 1.588236444137730552e-24 -5.972500000000000000e+02 3.659994252279163849e-24 -8.569512471863550377e-24 -5.975000000000000000e+02 1.791260292915892307e-24 3.258171940088571772e-25 -5.977500000000000000e+02 -1.615161251760275622e-24 -6.212146433580178994e-24 -5.980000000000000000e+02 1.959073571634209132e-24 -5.969720468553605726e-24 -5.982500000000000000e+02 5.335602893864014744e-24 -8.835680824010883151e-25 -5.985000000000000000e+02 -2.657859079274066669e-25 3.543952939432905922e-24 -5.987500000000000000e+02 6.838700694809526186e-24 -4.156617824364993006e-24 -5.990000000000000000e+02 4.180128966230307693e-24 2.698253709220727735e-24 -5.992500000000000000e+02 5.293172277495940477e-25 9.014117981764630396e-25 -5.995000000000000000e+02 -7.351339876422107485e-24 -1.850969914133608414e-24 -5.997500000000000000e+02 -9.173793023217954965e-24 -1.817202895991014143e-24 -6.000000000000000000e+02 8.809703697496551835e-26 1.779081223972475466e-26 -6.002500000000000000e+02 -1.090089180735973900e-24 1.835057611774157767e-24 -6.005000000000000000e+02 2.073007408057967417e-24 2.688593411109713631e-24 -6.007500000000000000e+02 -4.648588499526896730e-24 4.862004023928644410e-24 -6.010000000000000000e+02 1.194936995532154491e-23 6.534435274336102848e-25 -6.012500000000000000e+02 -4.813763027988618204e-24 2.185209883697061876e-24 -6.015000000000000000e+02 9.162116548038405667e-25 -6.868293541968096868e-24 -6.017500000000000000e+02 4.533992782967079399e-25 6.680527149212316492e-24 -6.020000000000000000e+02 -1.605038231265530433e-24 5.969250661222163414e-24 -6.022500000000000000e+02 2.761800376676162907e-24 2.700951573370478616e-24 -6.025000000000000000e+02 -3.594496145916343906e-24 5.886665188685651305e-24 -6.027500000000000000e+02 -3.786901602815651507e-24 8.374065930310259125e-24 -6.030000000000000000e+02 1.337805378548534073e-24 1.625598828906105841e-24 -6.032500000000000000e+02 7.527182314702276652e-24 -2.039519214342397950e-24 -6.035000000000000000e+02 6.133156252160012767e-24 1.000204278812373966e-24 -6.037500000000000000e+02 5.605787555154613485e-24 1.543197572319999750e-24 -6.040000000000000000e+02 9.342351208223840001e-24 1.579777511999973870e-24 -6.042500000000000000e+02 6.374694271811645545e-25 8.170399265493804797e-24 -6.045000000000000000e+02 -7.455995300366205707e-24 3.528857447771204648e-24 -6.047500000000000000e+02 5.110271768409132519e-24 1.861296513821985191e-24 -6.050000000000000000e+02 5.209025681137903552e-24 -4.150454282490827810e-24 -6.052500000000000000e+02 3.134980162719115339e-24 2.494291109853563505e-24 -6.055000000000000000e+02 2.804947789072318379e-24 5.880478981534961386e-24 -6.057500000000000000e+02 1.265688162315487393e-24 -3.512789289170482550e-24 -6.060000000000000000e+02 3.292281564486890792e-24 -7.959088097605892798e-24 -6.062500000000000000e+02 -2.656744595961108998e-24 -3.037114352934978269e-24 -6.065000000000000000e+02 2.657667852414556986e-25 1.368087410809788684e-24 -6.067500000000000000e+02 -3.450887335520839169e-25 -7.234358879501176236e-24 -6.070000000000000000e+02 4.869444236149712816e-24 -7.826592882943168957e-24 -6.072500000000000000e+02 4.700518700301870126e-24 8.403932259750834510e-25 -6.075000000000000000e+02 5.491974863792095114e-24 5.807155433498923062e-24 -6.077500000000000000e+02 -4.650178731658428177e-25 3.151494711853231332e-24 -6.080000000000000000e+02 -2.572556108269704624e-24 -2.464534442383968003e-24 -6.082500000000000000e+02 2.289082883173290199e-24 1.668730023308180584e-24 -6.085000000000000000e+02 -4.445427226479020898e-24 1.108384604106857120e-25 -6.087500000000000000e+02 -2.070668197882926033e-24 -3.550471566098356596e-24 -6.090000000000000000e+02 -2.255847812695703317e-25 7.841504357724744766e-24 -6.092500000000000000e+02 6.021937441675152064e-25 -4.451481067535936804e-24 -6.095000000000000000e+02 -2.516935496135031716e-25 3.152244544553898152e-24 -6.097500000000000000e+02 -2.745405924952471563e-24 5.907953721998927141e-24 -6.100000000000000000e+02 7.002131621979641940e-24 6.024293532180058284e-24 -6.102500000000000000e+02 -2.521631688215303688e-25 -4.259967008886442792e-24 -6.105000000000000000e+02 6.881838105916720025e-24 2.292353166024753095e-24 -6.107500000000000000e+02 -6.079490271915904453e-24 -5.163846872748429963e-25 -6.110000000000000000e+02 7.286130653618505554e-24 7.858436198390907339e-24 -6.112500000000000000e+02 -5.443032047188620494e-24 -5.108984651407006866e-24 -6.115000000000000000e+02 -2.677218839480253719e-25 -1.015989767208772309e-24 -6.117500000000000000e+02 3.505894698351618295e-24 3.621832581253431210e-24 -6.120000000000000000e+02 1.216854680148703287e-25 -1.576090054048336058e-24 -6.122500000000000000e+02 9.207410491699301072e-25 -2.732035577284800745e-24 -6.125000000000000000e+02 5.053618071696232822e-24 1.666606416835182615e-24 -6.127500000000000000e+02 3.069430347325685952e-25 -4.015796810369405113e-24 -6.130000000000000000e+02 8.494420603640383296e-24 9.270595916085146230e-25 -6.132500000000000000e+02 4.495606243491501684e-24 1.692935701243973355e-24 -6.135000000000000000e+02 -4.570316517064244094e-25 2.236548884205151868e-24 -6.137500000000000000e+02 -4.963931809827503716e-24 5.585136272387208225e-24 -6.140000000000000000e+02 1.695856152447339031e-24 -1.063825698946744115e-23 -6.142500000000000000e+02 -1.769263751772228799e-24 1.227847114100795750e-24 -6.145000000000000000e+02 -4.493925652390061008e-24 4.706814226126542769e-24 -6.147500000000000000e+02 6.362990855332334254e-25 -1.670618931717478105e-24 -6.150000000000000000e+02 -1.053634748360230732e-23 -5.359233939890340453e-24 -6.152500000000000000e+02 -3.446583446990303117e-25 -1.830366489598364825e-24 -6.155000000000000000e+02 -3.562797529095162359e-25 -5.811810654117137755e-24 -6.157500000000000000e+02 -5.065501978257953988e-24 -3.325756537216117848e-24 -6.160000000000000000e+02 -7.545476095653990893e-24 6.254606714848964147e-24 -6.162500000000000000e+02 2.752541909502345203e-24 -6.730830557898008292e-24 -6.165000000000000000e+02 -4.649546087647063587e-24 4.934895215781030753e-24 -6.167500000000000000e+02 2.682291697822239723e-24 1.916708712564146942e-24 -6.170000000000000000e+02 4.555168638118956313e-24 6.578218962671782480e-25 -6.172500000000000000e+02 -5.094653359691714125e-24 -3.076374025984517095e-25 -6.175000000000000000e+02 -6.580082489814268519e-24 -1.775098326947374564e-24 -6.177500000000000000e+02 -2.386723767297387021e-24 3.286894142913906927e-24 -6.180000000000000000e+02 -3.437377968213461333e-24 -1.881124755143209459e-24 -6.182500000000000000e+02 -2.494154543560914782e-24 3.632702522959273554e-25 -6.185000000000000000e+02 4.019039227172565826e-24 -2.428020666167806220e-24 -6.187500000000000000e+02 8.668938781884137770e-24 5.312519974097228176e-24 -6.190000000000000000e+02 4.903710090037319960e-24 3.670339090903903432e-25 -6.192500000000000000e+02 -2.139140179061597330e-25 -7.985190422759847043e-24 -6.195000000000000000e+02 -2.184592208182979304e-24 -2.213746518739001987e-24 -6.197500000000000000e+02 2.125512908178799907e-25 -1.985526481040521119e-24 -6.200000000000000000e+02 -5.765993104137440582e-24 -8.040911473569395432e-25 -6.202500000000000000e+02 -5.367223512757038298e-25 -2.841399457218764827e-24 -6.205000000000000000e+02 -1.160161871961351821e-23 6.430572983614151629e-24 -6.207500000000000000e+02 -3.190509692820650103e-24 -6.891372210597161139e-24 -6.210000000000000000e+02 -3.935973085365426325e-25 -7.843073929403722162e-24 -6.212500000000000000e+02 -2.958110847789022855e-24 1.605477283138589726e-24 -6.215000000000000000e+02 5.309261487922345448e-24 1.960666455860458390e-24 -6.217500000000000000e+02 9.017257084140568178e-24 -3.439228427537106070e-24 -6.220000000000000000e+02 1.766346922773564114e-24 3.044439064171657932e-24 -6.222500000000000000e+02 4.416753423160307516e-24 -7.350257932904031980e-24 -6.225000000000000000e+02 5.233857629081003266e-24 3.708812852546441064e-24 -6.227500000000000000e+02 -4.706796835299153269e-25 -6.057016447421807165e-25 -6.230000000000000000e+02 -8.050342389927691842e-24 5.566095119661274853e-25 -6.232500000000000000e+02 5.996638505260040272e-24 -1.489968522267478418e-24 -6.235000000000000000e+02 -2.942339940408819484e-24 1.993643009066737007e-24 -6.237500000000000000e+02 1.185447249737480979e-24 1.843736400403908551e-24 -6.240000000000000000e+02 -2.958202283483704999e-24 -2.282093210926288008e-24 -6.242500000000000000e+02 3.374668701035028926e-24 -2.037199622304297005e-25 -6.245000000000000000e+02 8.392215841082702882e-24 6.635412134427358908e-24 -6.247500000000000000e+02 3.833382165697717696e-24 1.623650514677728635e-24 -6.250000000000000000e+02 2.093307127378225869e-24 -7.618434164514390224e-24 -6.252500000000000000e+02 5.143138761571835878e-24 8.077830916350472324e-24 -6.255000000000000000e+02 -4.748306092789748861e-24 4.013140747938754710e-24 -6.257500000000000000e+02 1.934725391195416723e-24 4.497891251641486594e-24 -6.260000000000000000e+02 -6.358323424041019497e-24 1.570685249450097797e-24 -6.262500000000000000e+02 -1.594332311009429412e-24 -1.488457729044673082e-24 -6.265000000000000000e+02 9.705783438398338025e-24 -7.253503434360260656e-24 -6.267500000000000000e+02 -7.927776886595673122e-24 -3.881587896710370345e-25 -6.270000000000000000e+02 -1.841931830806944474e-24 -9.932641200342954812e-24 -6.272500000000000000e+02 7.870250633050666149e-24 4.658270923942900763e-25 -6.275000000000000000e+02 4.191665786029977900e-25 -1.910167009068661906e-24 -6.277500000000000000e+02 1.411626090624860060e-24 -1.444678924977858089e-24 -6.280000000000000000e+02 -4.508854346146891157e-24 -7.557450312540390747e-25 -6.282500000000000000e+02 3.643780844504193520e-24 -2.847942746637556849e-25 -6.285000000000000000e+02 -2.757100057843834932e-24 -2.325126484090914774e-24 -6.287500000000000000e+02 -1.392292205804291678e-24 3.875475520103159061e-24 -6.290000000000000000e+02 -8.185447382139106101e-24 1.468143087937836303e-24 -6.292500000000000000e+02 -6.926622129601926710e-24 -2.362427385110127934e-24 -6.295000000000000000e+02 -5.056787145007571349e-24 -5.089543071343779497e-25 -6.297500000000000000e+02 -1.064019397482955702e-23 -5.865857230893630901e-25 -6.300000000000000000e+02 4.042764424476097427e-24 5.825972743139618389e-24 -6.302500000000000000e+02 3.430575593472061477e-24 6.453630471919490112e-25 -6.305000000000000000e+02 1.667057854316120516e-24 -1.487795671908158370e-24 -6.307500000000000000e+02 -1.198368762276302986e-24 -4.316775295540117240e-24 -6.310000000000000000e+02 7.057620416659510055e-24 -1.573005258193779817e-25 -6.312500000000000000e+02 -3.853948232422418817e-24 2.151480864074401578e-24 -6.315000000000000000e+02 3.090473988786156372e-24 9.565222860608179021e-24 -6.317500000000000000e+02 9.477762111884138006e-25 -4.331031717703181112e-24 -6.320000000000000000e+02 6.118395494520462469e-25 -1.440125114575224241e-24 -6.322500000000000000e+02 -1.210562802320580000e-23 5.734148334740183079e-24 -6.325000000000000000e+02 -3.880742634240087514e-24 5.355332640340051993e-24 -6.327500000000000000e+02 -3.249683294899110081e-24 -2.546192436712715815e-24 -6.330000000000000000e+02 5.546213696159130328e-24 6.276459569184618630e-24 -6.332500000000000000e+02 5.857091381868446608e-24 -1.409478176418286568e-24 -6.335000000000000000e+02 1.294899065446789364e-25 9.256584945202376087e-24 -6.337500000000000000e+02 -4.214620318346672833e-24 2.605499588094704819e-24 -6.340000000000000000e+02 4.413932270975580752e-24 7.243532453604837876e-26 -6.342500000000000000e+02 2.731468050341342506e-24 1.516907354349310036e-24 -6.345000000000000000e+02 2.234188219082312098e-24 5.321306241908947923e-24 -6.347500000000000000e+02 -9.992288731733323110e-25 7.170328485599455481e-25 -6.350000000000000000e+02 7.603093907268614911e-24 -1.505153191317015588e-24 -6.352500000000000000e+02 -3.125784045023063638e-24 7.371827519318645956e-25 -6.355000000000000000e+02 -2.002568701684629999e-24 -7.118318198328136334e-24 -6.357500000000000000e+02 -2.095674943374632107e-24 7.400055003460594298e-24 -6.360000000000000000e+02 -3.063655009533512348e-24 4.351932939885305621e-24 -6.362500000000000000e+02 -5.646646898454068713e-26 -1.090214540179896940e-23 -6.365000000000000000e+02 3.698699774428178458e-24 2.429991648488264523e-24 -6.367500000000000000e+02 -5.813345055307778385e-24 5.747879268843515639e-25 -6.370000000000000000e+02 1.110232435252750864e-24 9.528555406224783847e-25 -6.372500000000000000e+02 6.219345643498558868e-24 7.292254683282692283e-24 -6.375000000000000000e+02 -5.661448655800867812e-24 -1.536352866235985549e-24 -6.377500000000000000e+02 -4.852435812263004451e-24 -1.174048742440223284e-24 -6.380000000000000000e+02 -6.632170821045657108e-24 6.576589429124956732e-24 -6.382500000000000000e+02 -3.298886990269930955e-24 -4.064460194263908826e-24 -6.385000000000000000e+02 1.956276177933934645e-24 -5.128023824142316469e-24 -6.387500000000000000e+02 2.174481323278901224e-24 3.330761260397836315e-24 -6.390000000000000000e+02 -2.579754880770741762e-25 1.282962483729518147e-24 -6.392500000000000000e+02 1.207115550843027073e-24 -5.988191826408762746e-24 -6.395000000000000000e+02 -6.535699630810441260e-25 -3.479801559878101789e-24 -6.397500000000000000e+02 5.683232398226736756e-24 3.915986507707489910e-24 -6.400000000000000000e+02 -7.595192159963646456e-25 3.909208997457876858e-24 -6.402500000000000000e+02 3.970685534986984058e-24 2.972780157713007333e-24 -6.405000000000000000e+02 -2.004185518187047616e-24 -1.411885228823240797e-24 -6.407500000000000000e+02 6.138031525176003731e-25 -6.541301556912130131e-24 -6.410000000000000000e+02 1.677722744798205230e-24 2.145152141910182050e-24 -6.412500000000000000e+02 -1.198064159348386522e-23 1.181253955580090719e-24 -6.415000000000000000e+02 4.724515174490892527e-24 -4.088406704632224496e-24 -6.417500000000000000e+02 -1.633485431643344395e-24 1.043197866640541394e-24 -6.420000000000000000e+02 6.794927669303194594e-25 2.932517592958932994e-25 -6.422500000000000000e+02 -7.326349076466398023e-24 5.954883527437651483e-24 -6.425000000000000000e+02 8.929708334674020772e-25 5.621796943753722602e-25 -6.427500000000000000e+02 1.943791309929561022e-24 2.517255882152562045e-24 -6.430000000000000000e+02 -2.189789127110420382e-24 -1.352933712108595736e-24 -6.432500000000000000e+02 1.810811625263980912e-24 -2.951538144574499113e-24 -6.435000000000000000e+02 -7.859794442650530950e-24 2.008935160121174823e-24 -6.437500000000000000e+02 -1.101017207946606736e-24 3.073610795260438127e-24 -6.440000000000000000e+02 -1.182689771371807030e-24 -4.222591293080758004e-24 -6.442500000000000000e+02 1.064243961297042870e-24 3.132426092227288168e-24 -6.445000000000000000e+02 9.308060237586874563e-24 -1.305643252260003709e-24 -6.447500000000000000e+02 -1.103997211212961090e-24 4.069930660362933151e-24 -6.450000000000000000e+02 6.558392465229556945e-24 -2.337532592480020184e-24 -6.452500000000000000e+02 -5.169375401567320302e-24 3.856368529145701873e-24 -6.455000000000000000e+02 3.631811510292082952e-24 1.399321837513414366e-24 -6.457500000000000000e+02 -3.540059966781920738e-25 4.094182242660395738e-24 -6.460000000000000000e+02 -7.721465546616389156e-25 6.641909756990536600e-24 -6.462500000000000000e+02 3.459579991634590663e-24 -2.224134275353665617e-24 -6.465000000000000000e+02 9.195818365391656203e-25 7.429335033478427765e-24 -6.467500000000000000e+02 -3.772928707383206961e-24 2.671397510441589505e-24 -6.470000000000000000e+02 -9.761982641838130705e-24 4.716476800045205995e-24 -6.472500000000000000e+02 1.260337355552166388e-24 5.367864572729480782e-24 -6.475000000000000000e+02 3.737262181440642913e-24 7.228491939016515891e-24 -6.477500000000000000e+02 -2.487222048151325372e-24 7.607932222343839517e-25 -6.480000000000000000e+02 -3.349367039599677096e-24 1.211212881856958963e-24 -6.482500000000000000e+02 6.264134645482644448e-24 -1.143306219134225618e-24 -6.485000000000000000e+02 -4.009363331322649538e-24 2.580823415812166120e-24 -6.487500000000000000e+02 1.585914358069167748e-24 -3.119833967381616463e-24 -6.490000000000000000e+02 -5.974550510745005466e-24 -2.077031872120129446e-24 -6.492500000000000000e+02 -1.682884433683439770e-25 -5.467559585647190358e-24 -6.495000000000000000e+02 -5.662402880429968098e-24 -2.102983853810163442e-24 -6.497500000000000000e+02 5.424970033439602504e-26 -1.532879612831427724e-26 -6.500000000000000000e+02 -8.196042091878346377e-24 -1.372901491204374399e-24 -6.502500000000000000e+02 -1.248228377141295139e-23 7.511850369289863710e-24 -6.505000000000000000e+02 2.060038965405897658e-24 -4.090934519467474549e-24 -6.507500000000000000e+02 4.369447810214211769e-24 -1.051330204863082595e-24 -6.510000000000000000e+02 1.330635191267674840e-24 -6.145578531758588395e-24 -6.512500000000000000e+02 -2.958783253888203823e-24 1.574373121341018298e-24 -6.515000000000000000e+02 2.469452566496996785e-24 1.444494995734583182e-24 -6.517500000000000000e+02 -7.904203820110524010e-25 3.882019944613987188e-24 -6.520000000000000000e+02 1.041602748943854219e-23 -6.607667646320183429e-24 -6.522500000000000000e+02 -1.140537623802156519e-25 -7.612329274131109912e-24 -6.525000000000000000e+02 -1.185596661497375336e-23 3.609316611541726219e-24 -6.527500000000000000e+02 -1.776501075911922817e-24 -1.052407673295667617e-24 -6.530000000000000000e+02 6.269384368475884136e-25 -1.642775024781675486e-24 -6.532500000000000000e+02 7.529486398257526415e-24 -3.252120017603521550e-24 -6.535000000000000000e+02 1.533334748793958008e-24 -6.354667921262152294e-24 -6.537500000000000000e+02 5.326517802682678183e-24 8.524277274331562585e-24 -6.540000000000000000e+02 -9.959529581628818904e-24 -4.036586249942769474e-24 -6.542500000000000000e+02 2.779475681073820137e-24 -3.578151523927631717e-24 -6.545000000000000000e+02 -1.505340341792428288e-24 3.281514873203987846e-24 -6.547500000000000000e+02 3.366386224668263276e-24 6.735529574537862603e-24 -6.550000000000000000e+02 -5.040909297577643171e-24 8.881757170983826767e-26 -6.552500000000000000e+02 1.249217910530896389e-24 5.141686220140894931e-25 -6.555000000000000000e+02 1.351261918732031944e-24 1.054530376210374697e-24 -6.557500000000000000e+02 6.609791154553772382e-24 -2.566957187400226661e-24 -6.560000000000000000e+02 1.333365082480150783e-25 5.142611789861635087e-24 -6.562500000000000000e+02 1.754781980551098860e-24 -2.068967269786147871e-24 -6.565000000000000000e+02 -8.026306134700418067e-24 2.769310103011294255e-24 -6.567500000000000000e+02 -3.874790257665090450e-25 -6.690606595679834919e-25 -6.570000000000000000e+02 1.517467075036955716e-24 -1.678220682442616343e-24 -6.572500000000000000e+02 -4.146233926697846277e-24 2.073189499121051789e-24 -6.575000000000000000e+02 -2.822823413889501345e-25 2.638595630297210419e-24 -6.577500000000000000e+02 -6.584336531864505966e-24 -1.488344527850775854e-24 -6.580000000000000000e+02 4.267846115706785129e-24 1.021255285298644235e-23 -6.582500000000000000e+02 -3.158102976840315455e-24 4.004987370769285131e-24 -6.585000000000000000e+02 3.555698340452269818e-24 -2.667995346813192532e-24 -6.587500000000000000e+02 2.770739904672832575e-24 1.905478085457536433e-24 -6.590000000000000000e+02 -6.430717417866472824e-25 4.441811966562947884e-26 -6.592500000000000000e+02 2.556614337521266149e-24 1.170846777040312721e-25 -6.595000000000000000e+02 3.238980488220843586e-24 2.679211010852282244e-24 -6.597500000000000000e+02 1.773694690239582786e-24 -1.634623017268815188e-24 -6.600000000000000000e+02 3.966882645823639863e-24 -2.420053881019183631e-24 -6.602500000000000000e+02 -6.472503356063367693e-24 8.072748767400315321e-25 -6.605000000000000000e+02 -1.146669048437983908e-23 9.488714322324439850e-24 -6.607500000000000000e+02 -8.246057615149538399e-24 -4.797703979999102035e-25 -6.610000000000000000e+02 -1.004304733458853638e-24 -3.234710308273935752e-24 -6.612500000000000000e+02 -3.013489038066407357e-24 6.451074246748422002e-24 -6.615000000000000000e+02 -2.446671319727207887e-24 8.988238917204820532e-25 -6.617500000000000000e+02 -2.971885481560759825e-24 5.386941413000058905e-24 -6.620000000000000000e+02 6.758851173400448807e-24 -2.073887600600585529e-25 -6.622500000000000000e+02 -2.418923135306337457e-24 1.832427311596156572e-25 -6.625000000000000000e+02 6.750655123342171971e-25 2.096134929093950520e-24 -6.627500000000000000e+02 5.886060722767083990e-25 -4.801468318248163775e-24 -6.630000000000000000e+02 2.888099158626057113e-24 8.258583623057422112e-25 -6.632500000000000000e+02 -5.599339476204751839e-24 -5.255535578683974883e-24 -6.635000000000000000e+02 -3.805242208453982412e-24 1.001005662008641806e-24 -6.637500000000000000e+02 -6.054535641254103914e-25 3.217353212553494988e-24 -6.640000000000000000e+02 -1.860623559722804069e-24 -4.021365995480688909e-24 -6.642500000000000000e+02 -6.775298814562629203e-24 3.870637498756827438e-24 -6.645000000000000000e+02 1.711583090234216468e-24 -6.389894062801350188e-24 -6.647500000000000000e+02 -5.053362374491948312e-24 -1.748581385036967420e-24 -6.650000000000000000e+02 -5.831248453947490946e-24 -1.304983615080286425e-24 -6.652500000000000000e+02 4.341544797976430124e-24 5.394287472385814862e-25 -6.655000000000000000e+02 1.557287106655775835e-25 -5.490504040076083889e-25 -6.657500000000000000e+02 -3.615985562600124016e-24 -4.608863582309512049e-24 -6.660000000000000000e+02 -3.277975904573987775e-24 5.311242984634811481e-24 -6.662500000000000000e+02 6.048601768090226960e-24 5.541678280851800205e-24 -6.665000000000000000e+02 -5.939565930883202975e-24 -4.729818350665829406e-24 -6.667500000000000000e+02 -6.955466442855701554e-24 -5.558177150156762019e-25 -6.670000000000000000e+02 -4.004570200822719160e-24 -1.077635777271269585e-24 -6.672500000000000000e+02 -3.022381463017802719e-24 1.014801816258932129e-25 -6.675000000000000000e+02 7.943047526579434778e-25 9.855840790760840149e-25 -6.677500000000000000e+02 -1.980515889289934784e-25 -2.844009781743531860e-24 -6.680000000000000000e+02 6.037412964967844508e-25 -3.109504037117729691e-24 -6.682500000000000000e+02 -2.577500209561327716e-24 -1.721724938646335939e-24 -6.685000000000000000e+02 1.123359926795113657e-25 2.982544948659282046e-27 -6.687500000000000000e+02 -1.937130497024259234e-24 5.737567478674056259e-26 -6.690000000000000000e+02 3.241084731715699238e-25 -6.962607365853059135e-24 -6.692500000000000000e+02 1.116637610513350036e-24 2.843522513232130712e-24 -6.695000000000000000e+02 8.483540078706222938e-25 3.543235443646191454e-24 -6.697500000000000000e+02 -1.248266070866066750e-23 -5.191014630355556575e-24 -6.700000000000000000e+02 5.080023995630386287e-24 -1.047737599281061321e-23 -6.702500000000000000e+02 1.056843104181536652e-23 -2.885130263914747842e-24 -6.705000000000000000e+02 2.436101379482906892e-24 -9.520388918045063076e-24 -6.707500000000000000e+02 -2.700665276205074406e-24 -9.146980564252808721e-24 -6.710000000000000000e+02 -2.057437629807876749e-24 1.842670723353938154e-24 -6.712500000000000000e+02 3.986985668022760677e-24 1.603190698649141384e-24 -6.715000000000000000e+02 2.799847380948018270e-24 1.893895391442609719e-24 -6.717500000000000000e+02 -2.199885975001791278e-24 1.044807104137014922e-24 -6.720000000000000000e+02 2.514536207456447034e-24 -5.039359235627717625e-24 -6.722500000000000000e+02 1.509415427642523771e-25 3.591471694941433068e-24 -6.725000000000000000e+02 -1.386488637203186823e-24 1.228615418979620270e-24 -6.727500000000000000e+02 -1.078863596475453505e-24 -5.735243418070174812e-24 -6.730000000000000000e+02 -6.437744980951050161e-24 5.540712724398539027e-24 -6.732500000000000000e+02 -4.759263485566272183e-24 -1.977630769920086404e-24 -6.735000000000000000e+02 -7.176674129873845723e-25 -2.814615063853254382e-24 -6.737500000000000000e+02 -1.091530623241417732e-24 6.681841713898387542e-25 -6.740000000000000000e+02 -1.509753360361996894e-25 8.101907713956253198e-24 -6.742500000000000000e+02 2.430348794379097551e-24 -5.588388389476143713e-24 -6.745000000000000000e+02 4.366529124180624975e-24 -1.594705589377699813e-24 -6.747500000000000000e+02 2.357618985571052171e-24 -9.347453483118825285e-25 -6.750000000000000000e+02 2.309848746158937773e-25 -3.692023793086930138e-24 -6.752500000000000000e+02 -7.198337372960961016e-24 9.518610358619108482e-25 -6.755000000000000000e+02 1.928275207372698732e-24 6.620812292395049280e-25 -6.757500000000000000e+02 1.745362019041532875e-24 2.681239849018611335e-24 -6.760000000000000000e+02 1.036557637404024382e-24 1.279201495242479713e-23 -6.762500000000000000e+02 -4.084196915972081254e-25 4.873731989382116558e-24 -6.765000000000000000e+02 6.557527025775427301e-24 -2.603654598924265030e-25 -6.767500000000000000e+02 4.930447260037549157e-24 1.658948364380076023e-24 -6.770000000000000000e+02 -5.308337609540532195e-24 9.364333773303822460e-25 -6.772500000000000000e+02 5.007354436695210498e-24 3.629792871026961711e-24 -6.775000000000000000e+02 -8.972174942835261391e-24 6.529418793218474923e-25 -6.777500000000000000e+02 4.150810712808546653e-24 -3.486125467793749760e-24 -6.780000000000000000e+02 8.069584358078236063e-24 6.146286040349931116e-24 -6.782500000000000000e+02 -7.097652419386621658e-24 -7.551947536435593726e-24 -6.785000000000000000e+02 -3.862365900372726580e-24 7.828896282305646385e-24 -6.787500000000000000e+02 -2.294815336893830023e-25 9.554393240733939162e-25 -6.790000000000000000e+02 -1.414946668758055043e-24 -5.993296874523748860e-24 -6.792500000000000000e+02 2.363048242920821034e-24 -3.884540519541581895e-24 -6.795000000000000000e+02 7.120941502053675549e-24 6.183614508027441558e-24 -6.797500000000000000e+02 9.932885044220311168e-24 6.464718844465950847e-24 -6.800000000000000000e+02 1.079544850917721002e-24 -9.318610136347885272e-24 -6.802500000000000000e+02 -7.128388257355769271e-25 1.732810439377978498e-24 -6.805000000000000000e+02 2.973257496186184050e-24 -3.479722093000276372e-24 -6.807500000000000000e+02 -7.296243023317268110e-24 -3.846272845943344873e-24 -6.810000000000000000e+02 1.791761572404809395e-24 -2.512832983977844676e-24 -6.812500000000000000e+02 -1.105674480951573397e-25 -6.252978610361621667e-24 -6.815000000000000000e+02 2.293071375690969160e-24 3.004783832190106038e-24 -6.817500000000000000e+02 -2.678895257682353183e-24 -2.226064500250021271e-24 -6.820000000000000000e+02 1.507104170570191774e-24 2.855023036537244400e-24 -6.822500000000000000e+02 3.834525462184246017e-24 2.635109066539523033e-24 -6.825000000000000000e+02 5.125877497424627063e-24 -2.544627798188523411e-24 -6.827500000000000000e+02 6.632745639866612782e-24 -2.131134078606797116e-24 -6.830000000000000000e+02 1.365883463285343868e-24 -2.802539293319405786e-24 -6.832500000000000000e+02 4.256738122052110348e-24 6.048396077915397795e-25 -6.835000000000000000e+02 -9.338076789387430114e-24 -3.021551548088291064e-24 -6.837500000000000000e+02 6.271440442635021161e-24 3.344578883737913595e-24 -6.840000000000000000e+02 1.836329386310810950e-24 -4.941167847066677634e-24 -6.842500000000000000e+02 -5.193066098240695896e-24 -1.487692652130343906e-24 -6.845000000000000000e+02 2.830960128920457500e-24 -5.773528322601629680e-25 -6.847500000000000000e+02 -2.031300205884629925e-25 3.989821272112018499e-25 -6.850000000000000000e+02 1.305350700374274300e-24 -4.619886432718948584e-24 -6.852500000000000000e+02 -6.263882281438754826e-25 1.271085055937326346e-24 -6.855000000000000000e+02 2.955346744805900432e-25 1.269367814047681478e-25 -6.857500000000000000e+02 1.557874563670374211e-24 4.174408180800634536e-25 -6.860000000000000000e+02 -5.485485729291796305e-24 -3.069872338198401121e-24 -6.862500000000000000e+02 -9.575678037970059786e-25 -6.360733259065267978e-24 -6.865000000000000000e+02 7.545771160435435558e-24 4.570550522230139527e-24 -6.867500000000000000e+02 -5.395875608067540469e-24 -2.109574683211121977e-25 -6.870000000000000000e+02 -2.730341464561763838e-24 -4.663843150954584596e-24 -6.872500000000000000e+02 -2.159648518339204762e-24 3.753618182556072090e-24 -6.875000000000000000e+02 1.686043535824645941e-24 1.323633581392671582e-24 -6.877500000000000000e+02 -9.418275633098747130e-25 -6.838797172727375887e-24 -6.880000000000000000e+02 6.398831155538729173e-25 1.435921693270085166e-24 -6.882500000000000000e+02 -3.118873399237227129e-25 -6.368656199496307562e-24 -6.885000000000000000e+02 8.862794145404452439e-25 1.478698802960962746e-24 -6.887500000000000000e+02 4.450825588490658142e-24 -9.973598631939444669e-24 -6.890000000000000000e+02 -2.417963382554567249e-24 -2.788542681824734399e-26 -6.892500000000000000e+02 1.338132771762535290e-24 -7.751084195274982104e-24 -6.895000000000000000e+02 1.259589413503401241e-24 -3.899257666744867899e-25 -6.897500000000000000e+02 -3.098346985980768432e-24 2.220424488917735111e-24 -6.900000000000000000e+02 2.450877091774128304e-24 -5.367065840971864396e-25 -6.902500000000000000e+02 -4.646372056351523540e-24 -7.957145998758364812e-25 -6.905000000000000000e+02 -7.151588107331399483e-25 -2.048694333310871488e-24 -6.907500000000000000e+02 9.986853527338895245e-25 -3.490979795327323636e-24 -6.910000000000000000e+02 4.210947946028168027e-24 3.292245538303842646e-24 -6.912500000000000000e+02 -7.680452231301449877e-24 7.060596946426617643e-24 -6.915000000000000000e+02 2.551622234114593571e-24 1.117455969275814800e-24 -6.917500000000000000e+02 -2.990459482851994787e-24 5.945570486467350329e-24 -6.920000000000000000e+02 5.440983124758150445e-24 -4.613031518002832953e-24 -6.922500000000000000e+02 -2.315723818107846764e-24 -1.452291947205782985e-24 -6.925000000000000000e+02 -1.318575740470607272e-24 6.833960741983580174e-24 -6.927500000000000000e+02 -8.681449629372488531e-25 -3.043704028693148659e-24 -6.930000000000000000e+02 -1.864407611604530865e-24 3.326779424559569650e-24 -6.932500000000000000e+02 3.342719999492127164e-24 -5.341179303917898083e-26 -6.935000000000000000e+02 4.374281230926049264e-24 8.210487875597355849e-24 -6.937500000000000000e+02 -2.163169412273174729e-25 -1.765541268009911262e-25 -6.940000000000000000e+02 -4.773756138456684990e-24 -1.148694853007084055e-23 -6.942500000000000000e+02 -1.990698665977549228e-24 3.339370870960868190e-24 -6.945000000000000000e+02 5.418523701589966781e-25 -3.583147081971291548e-24 -6.947500000000000000e+02 2.836007356923403555e-24 -1.579400297599099245e-25 -6.950000000000000000e+02 5.799222369412819681e-24 4.195231226153581231e-24 -6.952500000000000000e+02 -3.290969166949810182e-24 7.473420980340739817e-26 -6.955000000000000000e+02 -1.019657882211688679e-23 7.303868105836051255e-24 -6.957500000000000000e+02 1.180763026463754811e-24 -5.140808730263941871e-25 -6.960000000000000000e+02 2.960179981810955114e-24 7.438725193481396418e-24 -6.962500000000000000e+02 -4.435494159750153698e-26 -3.239666290094704627e-24 -6.965000000000000000e+02 -3.693371338595594532e-24 -3.178651145228373804e-24 -6.967500000000000000e+02 2.307985021504506409e-24 -7.908975418002722277e-24 -6.970000000000000000e+02 -4.865729064765242497e-24 2.984025626826831898e-25 -6.972500000000000000e+02 -3.089847399631778512e-25 -1.782767786640781509e-24 -6.975000000000000000e+02 2.091285372790508816e-24 2.233223175372542315e-24 -6.977500000000000000e+02 3.431719397948499220e-24 8.659617485176287548e-25 -6.980000000000000000e+02 -8.384840470261061518e-25 8.497265607045402312e-24 -6.982500000000000000e+02 -2.735203102492005147e-24 6.905365891731869661e-24 -6.985000000000000000e+02 2.492994568075713665e-24 -3.236013926718242892e-24 -6.987500000000000000e+02 -7.604321187939089766e-24 2.062866746912024212e-24 -6.990000000000000000e+02 5.565322526094640250e-24 1.212474454073695525e-24 -6.992500000000000000e+02 4.559508654525121221e-24 1.076920960120572713e-24 -6.995000000000000000e+02 1.398557992676397316e-24 -3.390564254852130553e-24 -6.997500000000000000e+02 -3.282113513732858401e-24 -4.523339129979820970e-24 -7.000000000000000000e+02 4.187049075991002741e-24 -3.683997420642227244e-24 -7.002500000000000000e+02 3.183267839854593969e-24 -4.581677054008788612e-24 -7.005000000000000000e+02 4.151013187739868933e-24 -5.332494012145471147e-25 -7.007500000000000000e+02 8.755494813448533385e-24 -5.353760169383026333e-25 -7.010000000000000000e+02 -4.802944449370865926e-24 -1.303006706988820846e-24 -7.012500000000000000e+02 1.416370738586047413e-24 2.375061551717741932e-24 -7.015000000000000000e+02 1.932529759079254677e-24 -7.202709597888069272e-25 -7.017500000000000000e+02 -4.492430914374974037e-24 -2.472286776948973281e-24 -7.020000000000000000e+02 3.507258781915806758e-24 6.733126144567108288e-24 -7.022500000000000000e+02 4.635638439210833977e-24 2.520566324284409943e-24 -7.025000000000000000e+02 4.003595739832528351e-24 -5.385431789506053107e-24 -7.027500000000000000e+02 -7.370465513117646215e-25 -2.157395031798469126e-24 -7.030000000000000000e+02 5.725837683530985093e-24 6.357177661385150605e-25 -7.032500000000000000e+02 4.426276700541252359e-26 4.473114792818312794e-24 -7.035000000000000000e+02 4.157675584489445409e-24 -2.001170841680738681e-24 -7.037500000000000000e+02 2.304365915150541976e-24 -7.844175064557346086e-24 -7.040000000000000000e+02 -1.596003725714837016e-24 -5.629644348082462005e-24 -7.042500000000000000e+02 -1.140924031103798407e-24 5.038027832411199319e-24 -7.045000000000000000e+02 -4.601164597196897086e-25 -3.861287583771472882e-24 -7.047500000000000000e+02 -2.959653493980920033e-25 -1.855623768438373759e-24 -7.050000000000000000e+02 1.041327169126593844e-23 -3.605812205479041332e-24 -7.052500000000000000e+02 -2.542622049017892281e-26 3.052748462910953550e-24 -7.055000000000000000e+02 -1.944722334273275350e-24 -2.712459713308620713e-24 -7.057500000000000000e+02 2.376510105556624509e-24 4.119176508516960340e-24 -7.060000000000000000e+02 3.721911726167151235e-24 -1.240519746783718034e-24 -7.062500000000000000e+02 -4.182016251388916754e-24 5.128012732218147278e-24 -7.065000000000000000e+02 -5.864997976668832951e-24 -1.909570920230408241e-25 -7.067500000000000000e+02 -6.590462543365808153e-24 -3.793365600090451684e-24 -7.070000000000000000e+02 -3.618489377665662529e-24 5.592556221740299838e-24 -7.072500000000000000e+02 -5.549616900438232197e-24 9.839492769114206459e-25 -7.075000000000000000e+02 2.594741657081134878e-24 5.507286032454362367e-24 -7.077500000000000000e+02 -5.072244301428142112e-24 -5.377677986974869417e-24 -7.080000000000000000e+02 4.551145639777926892e-24 2.759723380334657029e-24 -7.082500000000000000e+02 -7.494579418941242008e-24 1.361481292120844717e-24 -7.085000000000000000e+02 -9.359491851271916058e-25 -4.076855373570671824e-24 -7.087500000000000000e+02 8.159169586916950018e-24 -3.737999004752893778e-24 -7.090000000000000000e+02 3.038408696299400845e-24 3.718689249623742823e-25 -7.092500000000000000e+02 -6.269166141376628128e-24 -4.604035526599079914e-24 -7.095000000000000000e+02 6.808453124244131097e-25 -1.667194191001581664e-24 -7.097500000000000000e+02 -1.835874310127563982e-24 -7.155603194264873511e-24 -7.100000000000000000e+02 -5.199106955579431727e-24 2.566375140338447766e-24 -7.102500000000000000e+02 2.826201841726742662e-24 1.564634215681213795e-24 -7.105000000000000000e+02 -2.128565848940573188e-24 2.029224921309841601e-24 -7.107500000000000000e+02 4.776621998795168652e-25 9.397157129472659927e-24 -7.110000000000000000e+02 4.817518424439575527e-24 -8.892589044286613751e-24 -7.112500000000000000e+02 2.093433390905869905e-24 2.261689381523134011e-25 -7.115000000000000000e+02 -1.377065053819300616e-24 6.483676774336645831e-24 -7.117500000000000000e+02 -7.588808514485556231e-24 3.014030223344781734e-24 -7.120000000000000000e+02 -8.133360220479536209e-24 2.900803849415091084e-24 -7.122500000000000000e+02 -3.748434063151396577e-24 -3.713403768407167885e-24 -7.125000000000000000e+02 1.658535800188725732e-24 -4.996041633177278998e-24 -7.127500000000000000e+02 -7.242519590672106005e-25 8.431476255219045682e-25 -7.130000000000000000e+02 -1.131526342130045226e-23 9.473254302166427099e-25 -7.132500000000000000e+02 4.621942378179331477e-27 -5.808050603747204024e-24 -7.135000000000000000e+02 -9.450538400108454156e-25 4.820453154956301139e-24 -7.137500000000000000e+02 -2.145164860666285362e-24 -1.928323187778416959e-24 -7.140000000000000000e+02 -2.571644431953967248e-24 -5.507083315471004941e-25 -7.142500000000000000e+02 1.389724464205109698e-24 4.438651584048821326e-24 -7.145000000000000000e+02 -1.147228264737054769e-24 -1.928523289380365401e-25 -7.147500000000000000e+02 2.619601988337225929e-24 9.159749018193359933e-25 -7.150000000000000000e+02 -2.342546953241587924e-24 6.139722451474569474e-24 -7.152500000000000000e+02 -4.003344352368764691e-24 6.712846049762179341e-25 -7.155000000000000000e+02 9.424510851054150226e-25 4.365757300341009825e-24 -7.157500000000000000e+02 3.353613418620763649e-24 -4.178366496308884043e-24 -7.160000000000000000e+02 8.786124148213412570e-25 -8.588853871284817365e-24 -7.162500000000000000e+02 5.703058625037348990e-24 1.018116395486714263e-23 -7.165000000000000000e+02 3.276708440661859153e-24 8.954634885750410315e-24 -7.167500000000000000e+02 -7.481837313792448300e-24 5.914462059007114842e-24 -7.170000000000000000e+02 5.163142257769670035e-24 -1.258136439926790095e-26 -7.172500000000000000e+02 1.039656287192458899e-24 3.079911265559082781e-24 -7.175000000000000000e+02 -6.563178944616703462e-24 -2.445918662372783447e-24 -7.177500000000000000e+02 9.190253156921827407e-26 -1.289168368218587622e-24 -7.180000000000000000e+02 5.125436273194754952e-24 -1.395256433486508331e-24 -7.182500000000000000e+02 -4.809938229631162043e-24 -5.085596523716533262e-24 -7.185000000000000000e+02 4.386932225407816540e-24 -4.006543040053341785e-24 -7.187500000000000000e+02 3.833054030818883546e-24 3.450064094243961717e-24 -7.190000000000000000e+02 -2.573126113626146045e-24 9.489300854189636004e-25 -7.192500000000000000e+02 -5.998247718184747268e-25 7.822621955331016716e-25 -7.195000000000000000e+02 9.717401013521753848e-25 -5.766667317601909648e-24 -7.197500000000000000e+02 5.066277620230403220e-24 -4.902529324014596975e-24 -7.200000000000000000e+02 2.179512566592341199e-24 -4.168755260768288491e-24 -7.202500000000000000e+02 -4.864009127262004250e-24 -1.110454256377241315e-23 -7.205000000000000000e+02 -3.608649170726135798e-24 -4.186104593909072172e-24 -7.207500000000000000e+02 1.182261018513592927e-23 5.669882955090199865e-24 -7.210000000000000000e+02 5.085868830043753352e-24 -1.027731297439067025e-24 -7.212500000000000000e+02 3.664602727214423580e-24 -2.642468682847017413e-24 -7.215000000000000000e+02 5.920968978501226322e-24 1.549183436965176366e-24 -7.217500000000000000e+02 1.071498846123423382e-24 -4.712730820672665769e-24 -7.220000000000000000e+02 3.118617006443952479e-24 1.329753549768101623e-24 -7.222500000000000000e+02 -5.193042891585797187e-24 -3.433025854387609362e-24 -7.225000000000000000e+02 1.858140000439329342e-24 -5.765909955101589794e-24 -7.227500000000000000e+02 6.803587608003288311e-24 -3.184215912395840151e-24 -7.230000000000000000e+02 -9.100225088180072458e-24 -3.737523464230969388e-24 -7.232500000000000000e+02 4.115786448610031564e-24 -2.812800132868209420e-24 -7.235000000000000000e+02 -3.814871289550397379e-24 9.201760573476097366e-24 -7.237500000000000000e+02 -4.139622005067890063e-24 8.416992130723931490e-25 -7.240000000000000000e+02 3.839503004933563310e-25 -4.826843087530494582e-24 -7.242500000000000000e+02 3.119782566263377738e-25 5.103241599635710399e-24 -7.245000000000000000e+02 4.227914935461092967e-25 1.468257792457167725e-24 -7.247500000000000000e+02 4.489705355843835875e-24 -7.705198241679961373e-24 -7.250000000000000000e+02 -2.783276556029292053e-24 6.811139512482964348e-24 -7.252500000000000000e+02 -3.306170764756473473e-25 -7.308824414398183872e-24 -7.255000000000000000e+02 -2.052397554411513789e-24 4.086870986220579128e-24 -7.257500000000000000e+02 6.572158807748239784e-24 3.954247638097614882e-25 -7.260000000000000000e+02 3.074766976766393986e-24 -7.917656975518581973e-24 -7.262500000000000000e+02 -7.610969965747255367e-24 2.324993981883685797e-24 -7.265000000000000000e+02 6.380761135136474849e-24 5.158930333584671782e-24 -7.267500000000000000e+02 -1.551969241999620195e-24 2.605675503756166079e-25 -7.270000000000000000e+02 3.641086392340969830e-24 -2.242532441527903753e-24 -7.272500000000000000e+02 6.576860825385462810e-24 -4.174095813971370661e-24 -7.275000000000000000e+02 -1.671062174826952591e-24 -1.794290227286945983e-25 -7.277500000000000000e+02 -3.811587170406978970e-25 -5.055786950765339054e-25 -7.280000000000000000e+02 3.595798432780796571e-24 7.248330390199193235e-25 -7.282500000000000000e+02 2.100710239148805584e-24 9.775616375244047324e-25 -7.285000000000000000e+02 -2.200115843659080311e-24 -5.261208206283359093e-24 -7.287500000000000000e+02 3.867350838427551991e-24 -2.409072660117822785e-24 -7.290000000000000000e+02 4.447144634248509527e-24 1.946734106837238174e-24 -7.292500000000000000e+02 -6.553933725014117674e-24 2.561182243114134470e-24 -7.295000000000000000e+02 4.338755061882578254e-25 -1.391477998584561579e-24 -7.297500000000000000e+02 2.925250675912520360e-24 3.544336609460456405e-24 -7.300000000000000000e+02 -3.348261849712945092e-24 -5.209692560765664207e-24 -7.302500000000000000e+02 1.726164177236218112e-24 2.426286828749964554e-24 -7.305000000000000000e+02 2.785164157615363913e-24 -9.868896448845228784e-25 -7.307500000000000000e+02 6.689129161879558483e-24 -5.957304804984598780e-24 -7.310000000000000000e+02 -6.356154461895572856e-24 5.199332823662062519e-24 -7.312500000000000000e+02 -1.883558026037198004e-24 -8.942361619911020397e-24 -7.315000000000000000e+02 -1.922668398544248527e-24 -1.906137117548154881e-24 -7.317500000000000000e+02 8.273062980924965387e-24 -3.673444252679716863e-24 -7.320000000000000000e+02 1.731622896128061837e-24 7.398493292659412674e-26 -7.322500000000000000e+02 -1.232147223067214361e-24 7.145405890526879017e-24 -7.325000000000000000e+02 -1.031054636187562031e-23 -3.515343377464610733e-24 -7.327500000000000000e+02 8.441789449259999329e-25 -2.444672715090291708e-24 -7.330000000000000000e+02 5.851465314783324017e-25 -5.023376942712350857e-25 -7.332500000000000000e+02 2.403568062489309898e-24 -2.510387144643354573e-24 -7.335000000000000000e+02 3.341315564217923589e-24 -3.869618440523696691e-24 -7.337500000000000000e+02 3.788977272864876426e-25 8.916155314761158162e-24 -7.340000000000000000e+02 -3.944258407867677964e-24 4.254516950753662318e-25 -7.342500000000000000e+02 -3.145642117063773831e-24 6.656006135368949553e-24 -7.345000000000000000e+02 -9.650355540785693833e-24 -1.249479439511249019e-24 -7.347500000000000000e+02 -5.640976354618530699e-24 5.600971516636387051e-24 -7.350000000000000000e+02 4.361069468129849065e-24 9.538858187601636100e-24 -7.352500000000000000e+02 4.351975589619422234e-24 -3.307793893464992612e-24 -7.355000000000000000e+02 -1.900869359554118925e-24 1.962435595648863135e-24 -7.357500000000000000e+02 -2.437130853529037136e-24 1.158718046402099214e-24 -7.360000000000000000e+02 -6.341422908721415659e-25 2.090204202592234616e-24 -7.362500000000000000e+02 3.519401982525943163e-24 -4.429958558987335305e-24 -7.365000000000000000e+02 -7.861859388138491711e-24 1.658067800506053736e-24 -7.367500000000000000e+02 -8.784865623080964990e-25 1.687392332454777419e-24 -7.370000000000000000e+02 -6.013884399977347904e-24 5.508629406136410839e-24 -7.372500000000000000e+02 -2.570523012955159602e-24 -2.138511377662626199e-24 -7.375000000000000000e+02 3.061935683119943928e-24 -8.787277249021218432e-24 -7.377500000000000000e+02 5.273567032135861635e-24 3.425218820344724365e-24 -7.380000000000000000e+02 -7.113383230660059468e-24 1.187339622650596438e-24 -7.382500000000000000e+02 5.905991667912902834e-24 4.697926826940185865e-24 -7.385000000000000000e+02 5.198487244694854815e-24 1.677552535688861101e-24 -7.387500000000000000e+02 -2.581345199593162413e-24 -9.009833835212035265e-24 -7.390000000000000000e+02 -5.382121805997404414e-24 -7.832958519454532480e-25 -7.392500000000000000e+02 7.329930429267920493e-24 1.906874035906086644e-26 -7.395000000000000000e+02 -5.605401139468085859e-24 -2.895049991554034082e-24 -7.397500000000000000e+02 -1.573742074164532279e-24 8.174311702255416583e-25 -7.400000000000000000e+02 -7.327930621232532024e-24 -9.034871234608049209e-24 -7.402500000000000000e+02 2.414598845100126860e-24 -2.320649415828564983e-24 -7.405000000000000000e+02 4.046467220519729181e-24 3.366495308581799191e-24 -7.407500000000000000e+02 -1.146126951326936323e-24 3.683009498484068203e-24 -7.410000000000000000e+02 -1.495608370274594175e-24 9.108622510214439620e-24 -7.412500000000000000e+02 4.861513222077030090e-24 8.077188294625138238e-24 -7.415000000000000000e+02 -6.513653471396351995e-24 -3.488904245564212942e-24 -7.417500000000000000e+02 9.384812319605673050e-25 6.814341909585834760e-24 -7.420000000000000000e+02 -5.514102288903969713e-24 -7.578266943401354466e-24 -7.422500000000000000e+02 -1.194006724165322218e-24 6.408966288330762882e-24 -7.425000000000000000e+02 2.224113649248069450e-24 -3.804215742448523323e-24 -7.427500000000000000e+02 -4.760966624362447751e-24 5.458446610968717713e-24 -7.430000000000000000e+02 7.888925975670539547e-24 8.547417130442418154e-25 -7.432500000000000000e+02 1.157202576580595972e-24 -6.215511917071278696e-24 -7.435000000000000000e+02 -7.850178553287964458e-24 1.047705056689327550e-25 -7.437500000000000000e+02 -1.436491213868852967e-24 -2.674407043334794233e-24 -7.440000000000000000e+02 -5.176433106544343819e-24 3.698376992658593643e-24 -7.442500000000000000e+02 1.489441769536677513e-25 -6.649423341797903097e-25 -7.445000000000000000e+02 1.098045930374469708e-23 -2.008668906946394757e-24 -7.447500000000000000e+02 -6.194919810537333481e-24 8.841696644739859889e-24 -7.450000000000000000e+02 -9.242279090213214856e-24 -1.385984749562343863e-24 -7.452500000000000000e+02 2.127393197711045295e-24 5.216980304402114315e-24 -7.455000000000000000e+02 -4.567384623793617541e-24 -3.427185860533094652e-24 -7.457500000000000000e+02 2.193313074962464414e-24 2.962333582321114992e-25 -7.460000000000000000e+02 9.961284806480871760e-24 -2.170690853754606698e-24 -7.462500000000000000e+02 -2.975814572622025101e-24 3.429865785217262548e-24 -7.465000000000000000e+02 -2.257135795337371607e-24 3.647071096498295913e-24 -7.467500000000000000e+02 8.884523128208951685e-24 -5.184911556133326839e-24 -7.470000000000000000e+02 1.780641478590495115e-24 -5.718686565460522810e-24 -7.472500000000000000e+02 -9.777938417319370931e-24 -1.176400093127738379e-24 -7.475000000000000000e+02 9.832453865580451633e-24 4.394033093337904306e-24 -7.477500000000000000e+02 -3.940011812920840791e-24 6.595438341082599137e-25 -7.480000000000000000e+02 -5.598907694147972102e-24 9.389633750304154011e-25 -7.482500000000000000e+02 -2.591518911857072415e-24 -1.395958373320553263e-23 -7.485000000000000000e+02 -4.507032385517089270e-24 -6.706265045015890050e-24 -7.487500000000000000e+02 2.995864486220290690e-24 -7.206592290862042588e-25 -7.490000000000000000e+02 6.730314044732666003e-24 6.641012282724129914e-24 -7.492500000000000000e+02 8.497904376600418667e-25 7.135979383075385727e-24 -7.495000000000000000e+02 3.918051698736323112e-24 -9.209184185489901544e-24 -7.497500000000000000e+02 6.317077177114581662e-24 3.186147472720967392e-24 -7.500000000000000000e+02 1.119214521094883297e-24 -2.741995943876685763e-24 -7.502500000000000000e+02 -8.075308499877961052e-24 -3.417882448233218438e-24 -7.505000000000000000e+02 1.645962373779932011e-24 1.634672281395708170e-24 -7.507500000000000000e+02 3.421744136958627213e-24 -6.252454596043265349e-24 -7.510000000000000000e+02 -2.357452091617555913e-24 3.707479973471722863e-24 -7.512500000000000000e+02 -1.256572893289348824e-23 3.310635358279290206e-24 -7.515000000000000000e+02 1.766355204782634995e-24 5.432532779900004748e-24 -7.517500000000000000e+02 2.130094425082278913e-24 5.464357481944436710e-25 -7.520000000000000000e+02 2.479079353118145695e-24 4.751236747546348993e-24 -7.522500000000000000e+02 9.905137759180786940e-25 -3.165708120122286187e-24 -7.525000000000000000e+02 2.548998884981889962e-24 2.315787018507527985e-24 -7.527500000000000000e+02 8.242618658853421712e-25 -2.053624608267416754e-24 -7.530000000000000000e+02 1.325680593843203113e-24 -1.296919040820995140e-24 -7.532500000000000000e+02 5.396684966602068910e-24 1.435957083929932332e-24 -7.535000000000000000e+02 -2.026537863949613123e-24 -4.216539342846180535e-24 -7.537500000000000000e+02 -3.997140435308736008e-24 1.080913061092925431e-24 -7.540000000000000000e+02 8.010578757526644527e-24 -1.092809305236738678e-24 -7.542500000000000000e+02 5.489564263945342444e-24 7.675619526014437221e-24 -7.545000000000000000e+02 5.877538785860758390e-24 -8.259575529442540091e-24 -7.547500000000000000e+02 -4.231093536102700133e-24 2.049548532228186485e-24 -7.550000000000000000e+02 5.973194404788281103e-25 -6.313215474565341688e-24 -7.552500000000000000e+02 -4.678706571335409456e-24 -2.407490506507546712e-24 -7.555000000000000000e+02 -1.769033313139400761e-24 -7.456615118812343423e-24 -7.557500000000000000e+02 3.265206041042175370e-24 -7.588667895797348924e-24 -7.560000000000000000e+02 -9.482576849107219817e-24 -2.636475825492583722e-24 -7.562500000000000000e+02 8.620205402762455465e-24 -3.559335803767045183e-25 -7.565000000000000000e+02 -2.758044864214866101e-25 -2.673237153359302223e-24 -7.567500000000000000e+02 -9.150967145767667777e-24 -3.712419481524625238e-25 -7.570000000000000000e+02 -2.085815579304454996e-24 1.596277699883451624e-24 -7.572500000000000000e+02 3.693274650950922528e-24 6.003364210242177194e-24 -7.575000000000000000e+02 -3.154907437269476425e-24 5.422292250616473339e-24 -7.577500000000000000e+02 5.974220535419161332e-24 -1.189099231962309003e-23 -7.580000000000000000e+02 -4.513160907566383497e-24 -5.665383491298542436e-24 -7.582500000000000000e+02 -3.350946242758081875e-24 -3.876552733205609257e-24 -7.585000000000000000e+02 -1.173271375438091170e-24 -4.223312709597549738e-24 -7.587500000000000000e+02 -2.857156263752357213e-24 3.948959826016488243e-25 -7.590000000000000000e+02 -3.010077610965702011e-24 -6.345982095192060658e-25 -7.592500000000000000e+02 -4.445897600284966413e-24 1.052894216152708398e-24 -7.595000000000000000e+02 1.167641110125155955e-25 7.578478211159792132e-25 -7.597500000000000000e+02 1.015469445703066506e-24 9.349694109012688519e-25 -7.600000000000000000e+02 2.378829236208729321e-24 -4.336754904390493311e-24 -7.602500000000000000e+02 6.978686636751284231e-24 1.718579040217161031e-24 -7.605000000000000000e+02 -6.601063020044367110e-24 2.040872862894369191e-24 -7.607500000000000000e+02 -4.460755559154573938e-24 -7.476718497003508714e-24 -7.610000000000000000e+02 -1.979701987619373636e-24 -4.614120294777095929e-24 -7.612500000000000000e+02 -3.329669535353293930e-24 -7.749148049901001009e-25 -7.615000000000000000e+02 4.898973071033350153e-25 -4.773857613622730026e-24 -7.617500000000000000e+02 2.010745303165669508e-24 3.458346605355759432e-24 -7.620000000000000000e+02 -2.595256713681836865e-24 -2.971555121919140138e-24 -7.622500000000000000e+02 -3.313632835643193652e-24 -2.688701344813740700e-24 -7.625000000000000000e+02 2.311131681147143445e-24 1.189012984112313902e-24 -7.627500000000000000e+02 4.813244561885562706e-24 8.003344998534009413e-24 -7.630000000000000000e+02 4.897028336048471576e-25 -9.980809640752490552e-24 -7.632500000000000000e+02 -2.473849655887295374e-24 1.050427972950576218e-23 -7.635000000000000000e+02 1.030768378376246518e-23 1.840137103489155572e-24 -7.637500000000000000e+02 -2.306719827259137891e-24 1.086170240745242173e-24 -7.640000000000000000e+02 -2.553286015836006691e-24 -1.684514337845814067e-24 -7.642500000000000000e+02 -8.740643090631668473e-24 4.433146534386823302e-24 -7.645000000000000000e+02 -5.571356231366053958e-24 -5.451973011433283034e-24 -7.647500000000000000e+02 8.063683987041021865e-24 9.382533501355869595e-24 -7.650000000000000000e+02 -3.985739542213309697e-24 -3.299693896963427199e-24 -7.652500000000000000e+02 -5.259902231774330236e-24 -3.991900702705942528e-25 -7.655000000000000000e+02 6.495956277966587333e-24 -5.527236288819327197e-24 -7.657500000000000000e+02 -7.612738016806878109e-24 -8.303682024447106775e-24 -7.660000000000000000e+02 -1.476862276167518293e-24 3.109989448162214924e-24 -7.662500000000000000e+02 -1.872132715748939142e-24 -9.219289514022781247e-24 -7.665000000000000000e+02 -1.601497490626683287e-24 -4.301911286161189676e-24 -7.667500000000000000e+02 6.250602574377926094e-24 -2.878236855589192793e-24 -7.670000000000000000e+02 8.233320984077946677e-24 7.352028864311266821e-24 -7.672500000000000000e+02 9.058047000601336225e-24 -1.915976758778941715e-24 -7.675000000000000000e+02 1.293353469096282948e-24 -1.626713437861826863e-23 -7.677500000000000000e+02 2.469449172991633654e-24 4.150908669989630898e-24 -7.680000000000000000e+02 4.511961338484032722e-24 -4.100243726966917946e-24 -7.682500000000000000e+02 -4.314915163956099356e-24 -5.591205066260354489e-24 -7.685000000000000000e+02 5.582723607423921283e-24 -5.425882440141237476e-25 -7.687500000000000000e+02 -7.324723692198132352e-24 6.891047928239522436e-24 -7.690000000000000000e+02 6.667309368838182330e-24 1.059435564702487372e-23 -7.692500000000000000e+02 2.982416578293572180e-24 -2.292603571040412993e-24 -7.695000000000000000e+02 -5.918707489148176633e-24 5.953533883690878366e-24 -7.697500000000000000e+02 2.457027050213408013e-24 8.847518742340431943e-25 -7.700000000000000000e+02 5.049472394841882290e-24 4.228765431013159705e-24 -7.702500000000000000e+02 -5.443148296219561879e-24 1.852880166319378940e-25 -7.705000000000000000e+02 4.359994716010005248e-24 -6.347947264262305177e-24 -7.707500000000000000e+02 -1.283481233976503985e-23 2.918427951382295025e-24 -7.710000000000000000e+02 -5.840055459322369937e-24 -6.250097816929069195e-24 -7.712500000000000000e+02 4.590483591348215888e-25 3.657068459725071360e-24 -7.715000000000000000e+02 -7.800522605819960994e-24 6.447884739602589149e-24 -7.717500000000000000e+02 -3.096157495154223181e-24 -3.843021784684516013e-24 -7.720000000000000000e+02 -7.680767406907580883e-24 8.158378359465900355e-24 -7.722500000000000000e+02 -3.817121687794838061e-24 -6.050621728298374335e-24 -7.725000000000000000e+02 3.860000895611422034e-24 -2.222523421810411474e-24 -7.727500000000000000e+02 1.224989037271572253e-24 4.242953667814044965e-24 -7.730000000000000000e+02 -1.921857697760436034e-24 1.416095598959947193e-24 -7.732500000000000000e+02 7.705814893211771617e-25 -8.570480693315164392e-26 -7.735000000000000000e+02 -5.560035265936771068e-24 4.388806581824450051e-24 -7.737500000000000000e+02 5.644691852221134959e-24 -7.504083481572684224e-24 -7.740000000000000000e+02 -1.502124309573010269e-24 4.323795665139782071e-24 -7.742500000000000000e+02 1.687263833204165252e-24 -3.714631929891522290e-24 -7.745000000000000000e+02 1.430197640375163777e-24 -3.004960890669658399e-24 -7.747500000000000000e+02 8.475924452759483158e-24 4.525577625264553073e-24 -7.750000000000000000e+02 1.044437761982982920e-24 2.883299294655400694e-24 -7.752500000000000000e+02 1.235298792156009132e-23 -5.309805446572054900e-24 -7.755000000000000000e+02 -6.974745545785847610e-24 1.933434861088318473e-24 -7.757500000000000000e+02 -3.586486140349234155e-24 -1.307839253217652124e-24 -7.760000000000000000e+02 -3.052551576733676426e-24 1.886192440059328794e-24 -7.762500000000000000e+02 -6.629570544080742902e-24 2.232921572863637276e-24 -7.765000000000000000e+02 -1.740321509538998880e-24 1.823860559580416690e-24 -7.767500000000000000e+02 9.393309803589844860e-24 2.791066962207431373e-24 -7.770000000000000000e+02 -3.050540011518916011e-24 5.038914117637999863e-24 -7.772500000000000000e+02 -2.753559421160470060e-24 -9.226153083489496060e-24 -7.775000000000000000e+02 2.742867712927354658e-25 -4.048918775897238865e-25 -7.777500000000000000e+02 -6.857362684244066724e-24 1.614974819559265513e-24 -7.780000000000000000e+02 -3.328039107354566907e-24 5.836871818776979280e-24 -7.782500000000000000e+02 8.512305896694760219e-24 -1.815364058129702756e-24 -7.785000000000000000e+02 4.111698008027248624e-24 1.243005668147990792e-24 -7.787500000000000000e+02 -3.238801312624737718e-24 1.605925876052588606e-24 -7.790000000000000000e+02 3.718645843214058912e-24 -3.486099362642723630e-24 -7.792500000000000000e+02 -4.922495776301523963e-24 1.283484028599767908e-24 -7.795000000000000000e+02 6.183971604141095700e-24 -5.491054377708841717e-24 -7.797500000000000000e+02 -8.289064748627310434e-24 -6.530668783979715319e-24 -7.800000000000000000e+02 4.886414301039896148e-24 -1.429816219730869400e-24 -7.802500000000000000e+02 -4.646445892119218013e-24 -7.154614288088337234e-24 -7.805000000000000000e+02 1.587238598508917588e-24 2.162980459245955973e-24 -7.807500000000000000e+02 3.829454222554532292e-24 6.609029650943209288e-24 -7.810000000000000000e+02 -2.410911643838874713e-24 -1.210205738484791882e-23 -7.812500000000000000e+02 -3.216983242268058480e-24 -1.338404336105405084e-24 -7.815000000000000000e+02 8.051402852184374369e-25 -3.230378615478446748e-24 -7.817500000000000000e+02 3.594188231526166750e-24 -1.006650424159738210e-24 -7.820000000000000000e+02 -2.438708591125840421e-24 6.328579752563118380e-24 -7.822500000000000000e+02 -3.061884496860597446e-24 2.350656645434872295e-25 -7.825000000000000000e+02 -4.494394785219621761e-24 -3.869395294158512296e-24 -7.827500000000000000e+02 1.704736007222858974e-24 -3.486675384449121818e-24 -7.830000000000000000e+02 6.397921268987002010e-24 -5.382403130978049802e-24 -7.832500000000000000e+02 -6.341414711455205203e-24 8.647264395740645694e-25 -7.835000000000000000e+02 3.755684001326355526e-24 4.348260114120814482e-24 -7.837500000000000000e+02 -2.647614736289185576e-24 -4.172855103241955044e-24 -7.840000000000000000e+02 -7.335217952508212032e-25 1.887049730927425417e-24 -7.842500000000000000e+02 -1.270401458677073521e-24 4.348794394276495429e-24 -7.845000000000000000e+02 2.777822807106890700e-24 -2.401658938796242698e-24 -7.847500000000000000e+02 6.713366294639680976e-24 2.848117683792351957e-24 -7.850000000000000000e+02 5.480505615910609159e-24 2.484260803680287675e-24 -7.852500000000000000e+02 -1.616791153596077292e-24 6.112125026100589855e-24 -7.855000000000000000e+02 5.956478207036431069e-24 6.243974019019629527e-25 -7.857500000000000000e+02 3.461220837124675895e-24 -1.045278819148892454e-23 -7.860000000000000000e+02 -1.652384137014696434e-24 2.627309030569826628e-24 -7.862500000000000000e+02 -5.375857772554998642e-24 -4.893384627114539137e-24 -7.865000000000000000e+02 -7.465023167017683587e-24 1.000667027371379701e-23 -7.867500000000000000e+02 1.704834961145605354e-24 -2.225082452474889957e-24 -7.870000000000000000e+02 7.019589579072246015e-24 1.032204630479911656e-23 -7.872500000000000000e+02 -6.639539438679467896e-24 3.577167589674186280e-24 -7.875000000000000000e+02 6.885776011757404790e-24 -8.717283962118545110e-24 -7.877500000000000000e+02 4.161854982205503613e-24 5.460011048954946622e-24 -7.880000000000000000e+02 8.644582069055239765e-24 -2.843211881282990341e-24 -7.882500000000000000e+02 -4.590756885256644942e-24 -4.843589291095935958e-24 -7.885000000000000000e+02 -2.643188030344706363e-24 3.291574967882619083e-24 -7.887500000000000000e+02 3.477110744158330038e-24 6.169663386232848989e-24 -7.890000000000000000e+02 4.938244909879896099e-24 3.601063510715060397e-24 -7.892500000000000000e+02 6.513845939601455807e-24 -3.160924349952828399e-24 -7.895000000000000000e+02 -6.926777525240848505e-24 5.297351503772087166e-24 -7.897500000000000000e+02 -7.096031338787200928e-24 9.928246879974928890e-25 -7.900000000000000000e+02 2.668779219941027420e-24 3.008264163543042144e-24 -7.902500000000000000e+02 -1.568041911668040686e-24 -1.109396032625307632e-23 -7.905000000000000000e+02 -4.508777846797186980e-24 5.292058637147306364e-24 -7.907500000000000000e+02 6.053046670895874456e-24 -6.694628798652391352e-24 -7.910000000000000000e+02 1.829377254665048885e-24 -5.774551947704416810e-26 -7.912500000000000000e+02 9.202104950276741585e-25 -2.093726737856979533e-24 -7.915000000000000000e+02 8.700327976532762270e-24 2.930693091267950490e-24 -7.917500000000000000e+02 2.929641234061257022e-24 -4.914050363662658202e-24 -7.920000000000000000e+02 5.956542311487858810e-24 1.080950882852477154e-24 -7.922500000000000000e+02 7.202973002341360449e-25 5.830020379071122628e-24 -7.925000000000000000e+02 -1.821402574815864647e-24 5.656024446686793011e-24 -7.927500000000000000e+02 -3.721886924228119346e-24 1.392578477868724555e-24 -7.930000000000000000e+02 5.029221699268069906e-24 -9.819861702991227444e-24 -7.932500000000000000e+02 5.726713073490409466e-24 -7.123014890716459022e-24 -7.935000000000000000e+02 -4.767499218848516073e-24 7.776325229376170471e-24 -7.937500000000000000e+02 -2.515121675145281284e-24 6.379398268513768682e-24 -7.940000000000000000e+02 -2.249743407296046567e-24 -3.656465499307066788e-26 -7.942500000000000000e+02 4.603309316150844536e-24 -2.618725020625211896e-24 -7.945000000000000000e+02 -3.162072372448758638e-24 -9.154517051217379666e-25 -7.947500000000000000e+02 7.266781726426193806e-25 -5.673414885739377021e-26 -7.950000000000000000e+02 -3.527825894738026746e-24 -8.742344099359171967e-26 -7.952500000000000000e+02 -8.457889224857976688e-26 -1.759051906616943427e-24 -7.955000000000000000e+02 1.603408645850982564e-24 2.883502652814012364e-25 -7.957500000000000000e+02 7.707359312830181618e-24 1.216219649382565588e-24 -7.960000000000000000e+02 5.096762581895157952e-25 4.286649597839322082e-24 -7.962500000000000000e+02 2.881056534635343760e-24 2.744572992799199416e-24 -7.965000000000000000e+02 -3.395912255666546677e-25 -3.584146092972876930e-25 -7.967500000000000000e+02 -1.356776339592537231e-24 4.702971165122969409e-24 -7.970000000000000000e+02 -5.625052377419314778e-24 6.571977109292760851e-24 -7.972500000000000000e+02 2.616294571602080747e-25 -2.504519533538787253e-24 -7.975000000000000000e+02 -9.976012136829400937e-26 5.828275540844922901e-25 -7.977500000000000000e+02 -4.421850584816807049e-25 4.907985414097972841e-24 -7.980000000000000000e+02 -2.013683768506335647e-25 1.807315033481496423e-24 -7.982500000000000000e+02 -3.639669713600431374e-24 -4.003650009812895981e-24 -7.985000000000000000e+02 -7.949638489415543633e-24 -1.160091211045533050e-24 -7.987500000000000000e+02 1.240889812900612053e-24 1.628349904255254372e-25 -7.990000000000000000e+02 5.511025443858237413e-24 5.079654521992055767e-24 -7.992500000000000000e+02 5.311744238314959209e-24 -5.791962842291388057e-24 -7.995000000000000000e+02 -1.991934722615780352e-24 -2.451214026844289870e-24 -7.997500000000000000e+02 9.641814245866668061e-25 7.935689768673800622e-24 -8.000000000000000000e+02 4.672577607186107634e-24 6.175266601690349462e-24 -8.002500000000000000e+02 5.491295310035045086e-24 -1.665966337990061746e-24 -8.005000000000000000e+02 -2.883983694703322101e-24 -2.917106920214728112e-25 -8.007500000000000000e+02 -4.459914594027151576e-24 1.719068452942915988e-24 -8.010000000000000000e+02 1.963998997161195553e-24 -7.022542154751345000e-24 -8.012500000000000000e+02 9.905788129166549879e-24 9.322345464729100866e-24 -8.015000000000000000e+02 -1.281220664511106759e-25 -4.200396815706161984e-24 -8.017500000000000000e+02 -1.170984368342180579e-24 1.000459190255864597e-23 -8.020000000000000000e+02 5.853327681367099438e-25 6.353921974797528472e-24 -8.022500000000000000e+02 -3.510748237078015859e-24 1.500169291262574448e-24 -8.025000000000000000e+02 4.449461675259488326e-24 -7.151816543525125135e-24 -8.027500000000000000e+02 -4.656118253443844663e-24 7.087667804631724885e-24 -8.030000000000000000e+02 -2.184481280456914468e-24 -4.840309521506746361e-24 -8.032500000000000000e+02 -4.060247361379583019e-24 -3.701932919137961106e-24 -8.035000000000000000e+02 -2.700264467113321090e-24 -8.327220003947133142e-24 -8.037500000000000000e+02 -3.528930617997893282e-24 -2.063375008954912533e-25 -8.040000000000000000e+02 -5.127194232006563549e-24 5.315341328526867373e-24 -8.042500000000000000e+02 -4.429213728770088440e-24 9.491727013274746461e-25 -8.045000000000000000e+02 7.805626447377369749e-24 2.692063096366309589e-25 -8.047500000000000000e+02 -1.663714788608212610e-24 -5.489172569584771983e-24 -8.050000000000000000e+02 -2.530925849189583519e-24 5.722486136593713205e-24 -8.052500000000000000e+02 4.869151039234774139e-24 5.681316660746299777e-24 -8.055000000000000000e+02 5.781967209549794897e-24 -1.242910272208794457e-24 -8.057500000000000000e+02 1.064381084676268148e-23 9.518170636461883420e-24 -8.060000000000000000e+02 5.319929891567977262e-25 1.004839114146990349e-24 -8.062500000000000000e+02 -4.324258678283995643e-24 2.133924988465235809e-24 -8.065000000000000000e+02 3.398014894347741882e-24 6.122874327793524715e-25 -8.067500000000000000e+02 -1.536302131904648014e-24 -2.372416485658735713e-24 -8.070000000000000000e+02 2.651413851908364468e-24 -4.207338097420847595e-24 -8.072500000000000000e+02 3.852644685261912230e-24 -2.229748382922788454e-24 -8.075000000000000000e+02 -7.272390436626795555e-25 -4.232188699988445637e-25 -8.077500000000000000e+02 1.935137536082326437e-24 1.005394812155244467e-23 -8.080000000000000000e+02 -2.985311089030594426e-24 5.019175974760759539e-24 -8.082500000000000000e+02 -3.374493934371825460e-24 -2.853899729089557971e-25 -8.085000000000000000e+02 2.587977201236727479e-24 1.706204844101925803e-24 -8.087500000000000000e+02 -8.252880934794140972e-24 -3.242125865825664286e-24 -8.090000000000000000e+02 -6.657596614568273583e-24 -3.749197537839151589e-25 -8.092500000000000000e+02 -2.744340438765387223e-24 2.430768812252671044e-25 -8.095000000000000000e+02 2.280950217756477752e-24 1.041598304302439839e-23 -8.097500000000000000e+02 -5.309085087192911834e-24 2.579395834953142380e-24 -8.100000000000000000e+02 -8.846338254374973520e-24 8.000412729062156851e-24 -8.102500000000000000e+02 1.000434267490916508e-23 -1.152659233244529455e-24 -8.105000000000000000e+02 -4.273644550411932320e-24 1.043961880194370108e-23 -8.107500000000000000e+02 -5.342241484501625882e-24 6.567641100757859860e-24 -8.110000000000000000e+02 6.390886390074119636e-25 1.160539915867927029e-24 -8.112500000000000000e+02 2.850359443668888145e-24 -4.211572249706647482e-25 -8.115000000000000000e+02 1.156455801905135809e-23 1.861882718097458003e-25 -8.117500000000000000e+02 -2.150981270277652630e-24 -2.032324702018776920e-24 -8.120000000000000000e+02 2.611241445468161037e-24 2.475814396448499168e-25 -8.122500000000000000e+02 2.333530516524559244e-24 -7.306094241229555209e-24 -8.125000000000000000e+02 3.520093510029020624e-25 -4.190004707008876426e-24 -8.127500000000000000e+02 -9.238308127867583088e-25 2.716136026925569105e-24 -8.130000000000000000e+02 -8.754993521927374039e-24 -6.247804534411389370e-24 -8.132500000000000000e+02 -1.720641747746960337e-24 -2.286744976799286581e-24 -8.135000000000000000e+02 -5.621454815136966398e-24 -1.771817561055778210e-25 -8.137500000000000000e+02 -2.352359966481467561e-24 -1.720876798922196765e-23 -8.140000000000000000e+02 -1.257639060890906600e-23 6.268614623365728363e-24 -8.142500000000000000e+02 1.755612090366966148e-24 5.987687136666338768e-24 -8.145000000000000000e+02 6.185702952134029266e-24 -8.400643158305181167e-25 -8.147500000000000000e+02 4.570796666919471051e-24 4.304778280571956981e-24 -8.150000000000000000e+02 3.745288374100703119e-24 6.291616924860262893e-24 -8.152500000000000000e+02 -7.152143389875477873e-24 -3.858400553935643729e-25 -8.155000000000000000e+02 4.892130684320761818e-24 2.305688294532700939e-24 -8.157500000000000000e+02 2.829905232983936561e-24 2.902528641702674163e-24 -8.160000000000000000e+02 -5.888473513573805791e-24 3.627079031279840578e-24 -8.162500000000000000e+02 1.569059640659901439e-24 -3.894572669164154484e-24 -8.165000000000000000e+02 6.415547879670274902e-24 -1.179794805839693503e-24 -8.167500000000000000e+02 1.770203504211584696e-24 1.290544425618802488e-24 -8.170000000000000000e+02 1.537391914157603315e-24 1.780886388474705300e-24 -8.172500000000000000e+02 -2.404271633073538482e-24 5.278727589573114919e-24 -8.175000000000000000e+02 2.750748481200245369e-25 2.122355502566836462e-24 -8.177500000000000000e+02 -4.465426499753827181e-24 -1.112239415848165561e-26 -8.180000000000000000e+02 5.696217400493735986e-24 -1.496990305325113029e-25 -8.182500000000000000e+02 -1.186557418018434019e-24 6.233570924442925059e-24 -8.185000000000000000e+02 -5.549270911668611226e-25 -2.148755723174765412e-24 -8.187500000000000000e+02 -7.199977530005843020e-24 -3.572882709901478224e-24 -8.190000000000000000e+02 -9.878870475082234217e-24 -2.192695389370859956e-24 -8.192500000000000000e+02 -2.900720964198154313e-24 1.701081910341678899e-24 -8.195000000000000000e+02 6.276759801194445072e-26 -3.636163787772045932e-24 -8.197500000000000000e+02 -1.747213555925920233e-24 4.780303569290250339e-24 -8.200000000000000000e+02 -6.491381182233360686e-24 1.095406762635664109e-23 -8.202500000000000000e+02 9.203579547105813275e-24 -6.442923652220946388e-24 -8.205000000000000000e+02 3.010684901718428961e-24 -1.142628840754737974e-24 -8.207500000000000000e+02 1.289273031352415498e-24 4.221049111738152828e-24 -8.210000000000000000e+02 6.448308663720357250e-24 8.817702588343640182e-25 -8.212500000000000000e+02 2.268950344059610648e-24 3.884334184748007907e-24 -8.215000000000000000e+02 6.779174687348520375e-24 1.516199106664057709e-24 -8.217500000000000000e+02 6.210290962961320285e-24 -1.343531813648955735e-24 -8.220000000000000000e+02 -3.131097834407554773e-24 6.483969451168189939e-24 -8.222500000000000000e+02 -1.981115375751742672e-24 -1.873589484547974649e-24 -8.225000000000000000e+02 -3.341543578409190887e-24 -2.544225297991762710e-24 -8.227500000000000000e+02 -1.272650992906620380e-24 -2.404229286315832482e-24 -8.230000000000000000e+02 2.202801383885987140e-24 1.315854398789562561e-24 -8.232500000000000000e+02 -5.812310716481962805e-24 -1.205542940905163629e-24 -8.235000000000000000e+02 5.821742785868018339e-25 9.082894291211053492e-24 -8.237500000000000000e+02 7.494879991256112393e-24 6.003131278860643352e-25 -8.240000000000000000e+02 -3.673868428214891702e-24 6.741934773010389442e-25 -8.242500000000000000e+02 6.675887197744611315e-24 -1.375644711470493811e-23 -8.245000000000000000e+02 -5.898751764982257744e-24 1.673643793326237721e-24 -8.247500000000000000e+02 4.767064233220949333e-24 -1.711623985726411802e-24 -8.250000000000000000e+02 -2.214270317512946134e-24 -7.840681033531557602e-24 -8.252500000000000000e+02 5.409239524510055757e-24 3.537634260893924164e-24 -8.255000000000000000e+02 5.322420642840381343e-25 -3.058601175548164559e-24 -8.257500000000000000e+02 -8.711088238930198581e-25 3.404640995015611251e-25 -8.260000000000000000e+02 1.984730504017424133e-24 1.592689167956247871e-24 -8.262500000000000000e+02 -4.902853148514253174e-24 2.727799137517195363e-24 -8.265000000000000000e+02 -1.633073992803299485e-24 2.362105049865012336e-27 -8.267500000000000000e+02 6.275676264049011415e-25 1.583320701616785010e-24 -8.270000000000000000e+02 -1.061496492744628886e-23 2.185999589300647957e-24 -8.272500000000000000e+02 1.385474726646174222e-24 -5.199854770044706013e-24 -8.275000000000000000e+02 -2.764719381738585631e-25 5.515168517532084273e-25 -8.277500000000000000e+02 -4.319071843344021867e-24 8.373451247132845852e-26 -8.280000000000000000e+02 1.568164094211581900e-24 1.158852423306371626e-23 -8.282500000000000000e+02 8.496345848046352510e-24 -1.213154046453575930e-23 -8.285000000000000000e+02 -3.732583709615782276e-24 2.344840218351498641e-24 -8.287500000000000000e+02 -5.720594827985511712e-24 -8.777559363425504297e-24 -8.290000000000000000e+02 -9.442248753045281053e-24 -8.497400979851874247e-24 -8.292500000000000000e+02 -1.313281156524055105e-24 -4.464704027543200205e-24 -8.295000000000000000e+02 1.434559834805908426e-23 -8.954611132692541384e-25 -8.297500000000000000e+02 1.579952860183672479e-24 -5.381264833926154676e-24 -8.300000000000000000e+02 -3.109868368729200407e-24 1.235613313753678462e-24 -8.302500000000000000e+02 9.643369704239049244e-26 1.994752096438000755e-24 -8.305000000000000000e+02 -5.390212623855977651e-24 1.042735071996980450e-24 -8.307500000000000000e+02 1.949457819470686842e-24 2.969054614816528298e-24 -8.310000000000000000e+02 1.794094718648345023e-24 -2.429192961163797912e-24 -8.312500000000000000e+02 5.237158807240726816e-25 3.368189998519478168e-24 -8.315000000000000000e+02 -9.699121746934778634e-24 4.030172728561850219e-24 -8.317500000000000000e+02 -5.426202384235939995e-24 -2.214770126512730835e-24 -8.320000000000000000e+02 -2.458066160066952904e-24 4.088159713024849910e-25 -8.322500000000000000e+02 4.084156942884929072e-24 1.739945860391776613e-24 -8.325000000000000000e+02 6.344258759064362115e-24 3.789879861531591571e-24 -8.327500000000000000e+02 2.915953470948301479e-24 -4.056717878158515039e-24 -8.330000000000000000e+02 -1.163131398818370467e-23 -7.747767354896739013e-24 -8.332500000000000000e+02 -3.156920992826177354e-24 8.147123943620344534e-25 -8.335000000000000000e+02 -1.020778230389306862e-24 1.629795049480734740e-24 -8.337500000000000000e+02 -2.433353187982702019e-25 -8.388232842752140614e-25 -8.340000000000000000e+02 -2.692305639178161767e-25 -5.920060891996018737e-24 -8.342500000000000000e+02 -2.716631278452888269e-24 -5.048524814590799834e-25 -8.345000000000000000e+02 -6.205315393817209113e-25 3.796328219824368073e-24 -8.347500000000000000e+02 -3.990543319850145913e-24 -9.367875232965746018e-25 -8.350000000000000000e+02 -8.958971326618233318e-25 5.937108708159752183e-24 -8.352500000000000000e+02 1.091779677227589871e-23 1.039628604099328000e-23 -8.355000000000000000e+02 -7.830263212378044382e-24 -5.553955825826431322e-24 -8.357500000000000000e+02 -7.377564911005171531e-24 -8.816492107521875833e-24 -8.360000000000000000e+02 7.528521016809351568e-24 -4.552547928225965597e-24 -8.362500000000000000e+02 1.469196910673703900e-24 4.351795653317027888e-24 -8.365000000000000000e+02 -8.512780465876805200e-24 6.379557077908926985e-24 -8.367500000000000000e+02 3.694980848170035415e-25 2.146619018797370929e-24 -8.370000000000000000e+02 3.544319091290371103e-24 -2.003293592701584030e-25 -8.372500000000000000e+02 3.569468648032705515e-24 -6.616142687679034679e-25 -8.375000000000000000e+02 1.372193979044217238e-24 -5.468278509146851418e-24 -8.377500000000000000e+02 6.656624189392111336e-24 -4.504281876518738175e-24 -8.380000000000000000e+02 1.835707241267296066e-24 -5.943371524895648898e-24 -8.382500000000000000e+02 2.683248728635645165e-24 -1.222651782987941794e-24 -8.385000000000000000e+02 1.138786916193314811e-23 -5.114750340200038255e-24 -8.387500000000000000e+02 8.750843038125156428e-25 -8.510296411642289448e-24 -8.390000000000000000e+02 -5.568157075043732883e-24 7.554680193433536402e-24 -8.392500000000000000e+02 9.911757671653899690e-24 -3.747267806928715783e-25 -8.395000000000000000e+02 -4.805429265667605461e-24 3.395521631005796158e-24 -8.397500000000000000e+02 5.310121006888932702e-24 4.121981419285654418e-24 -8.400000000000000000e+02 5.407732486193684816e-24 7.692998198125037146e-26 -8.402500000000000000e+02 -3.152038042655458388e-24 5.374184256562636046e-25 -8.405000000000000000e+02 -1.722080019775953576e-24 4.983244071128302640e-24 -8.407500000000000000e+02 1.631619307691208048e-24 -1.224291557714380655e-25 -8.410000000000000000e+02 2.847141885139913100e-25 2.828589940120437660e-24 -8.412500000000000000e+02 8.272506316146247920e-24 -2.320516674688593955e-24 -8.415000000000000000e+02 2.371479326481540621e-24 -3.058213428059980265e-24 -8.417500000000000000e+02 4.281423686508525059e-25 8.262482619767907549e-24 -8.420000000000000000e+02 8.646705111181999013e-24 1.055613779617140939e-24 -8.422500000000000000e+02 -7.562805023993849748e-24 5.945693197186900196e-24 -8.425000000000000000e+02 9.607926087175796562e-24 -4.512545688390361984e-24 -8.427500000000000000e+02 -3.033130565174774654e-24 -1.453465307166584907e-24 -8.430000000000000000e+02 -6.722146109489613078e-24 6.681154678290843835e-24 -8.432500000000000000e+02 -3.319283833933623440e-25 5.152290312356318742e-24 -8.435000000000000000e+02 -2.173552921780053428e-24 -9.247382718482985005e-24 -8.437500000000000000e+02 6.315611757815833930e-24 6.064177513048123772e-24 -8.440000000000000000e+02 5.843173942112584540e-25 -3.116247443451212346e-24 -8.442500000000000000e+02 -3.421400597649045060e-24 -3.742045197338790826e-24 -8.445000000000000000e+02 -1.775533837210210729e-24 1.238602624412856593e-23 -8.447500000000000000e+02 4.300167737006823420e-25 -1.311108535969840800e-24 -8.450000000000000000e+02 6.920351221691809264e-24 6.126406376187268327e-24 -8.452500000000000000e+02 8.058413182093550937e-25 5.025781492373913565e-24 -8.455000000000000000e+02 1.393343842189173822e-24 -7.161658703858221785e-24 -8.457500000000000000e+02 -9.399854164017562915e-25 3.850590055467901504e-24 -8.460000000000000000e+02 -1.781641406866815206e-25 4.037539292002412397e-24 -8.462500000000000000e+02 -8.693750900854118616e-24 -3.429885579973403453e-24 -8.465000000000000000e+02 7.444757168525430419e-26 -8.106874327370635005e-25 -8.467500000000000000e+02 -6.514858704110016343e-24 -4.333725142115282508e-24 -8.470000000000000000e+02 -5.092437727344271122e-24 -5.822747278149810351e-24 -8.472500000000000000e+02 -1.690323444673103481e-24 -4.537084394434120292e-27 -8.475000000000000000e+02 4.138570695261151148e-25 -3.934103199832450454e-24 -8.477500000000000000e+02 -2.063244046409887497e-24 -3.442194956312978663e-24 -8.480000000000000000e+02 5.843162916603260076e-24 -3.120499241183387824e-24 -8.482500000000000000e+02 4.369603401515092491e-24 -1.432145946460726678e-24 -8.485000000000000000e+02 8.096065443778107591e-25 5.185019053372196401e-24 -8.487500000000000000e+02 -4.110187809523190361e-25 1.042705761412672559e-24 -8.490000000000000000e+02 -1.110207335813462670e-24 6.573747907607485904e-24 -8.492500000000000000e+02 -7.618754303449784460e-24 2.093780631444455331e-24 -8.495000000000000000e+02 4.749187482942297513e-25 5.385410033629058252e-24 -8.497500000000000000e+02 5.524349378934936997e-24 -1.391386625820187294e-25 -8.500000000000000000e+02 7.604616952267922543e-24 -3.506862473515148187e-24 -8.502500000000000000e+02 3.714341888267544515e-24 -2.253665978423463741e-24 -8.505000000000000000e+02 -2.689487707863505474e-24 3.101893233139470007e-24 -8.507500000000000000e+02 4.775463029344699177e-24 -7.955565813792760403e-24 -8.510000000000000000e+02 -5.131713776411448396e-24 5.799026848690907846e-24 -8.512500000000000000e+02 -9.282273406086661252e-24 -1.855817455499420661e-24 -8.515000000000000000e+02 -1.159065081344998891e-23 2.408087232825505036e-24 -8.517500000000000000e+02 2.885239114378026052e-24 -8.531081836100938602e-24 -8.520000000000000000e+02 -5.935222916343864193e-24 -5.856926796816582130e-24 -8.522500000000000000e+02 2.770286011719766304e-24 8.724885191534242294e-24 -8.525000000000000000e+02 1.016145397980433751e-23 2.989810042979058406e-24 -8.527500000000000000e+02 -4.038740633739694361e-25 1.041084691328227728e-23 -8.530000000000000000e+02 -5.519409980300698982e-25 -9.035892345479264968e-24 -8.532500000000000000e+02 1.278304035899035524e-23 -2.598219238927388589e-24 -8.535000000000000000e+02 6.123089168103027472e-24 -1.049839364164447179e-23 -8.537500000000000000e+02 -1.644258843551886882e-24 1.157558247646584425e-25 -8.540000000000000000e+02 -6.672105488065543554e-24 -4.344719738197053620e-24 -8.542500000000000000e+02 -4.067312483508819235e-24 5.244444610458934239e-24 -8.545000000000000000e+02 -8.465589470503210092e-24 -4.913337898713651371e-24 -8.547500000000000000e+02 1.395553155146390385e-24 -1.124060079807734548e-23 -8.550000000000000000e+02 -6.919939547334852215e-24 3.385476901596354259e-24 -8.552500000000000000e+02 -5.546935562307679753e-24 7.028437056409509850e-24 -8.555000000000000000e+02 -1.676144047391371733e-24 2.204659954495794308e-24 -8.557500000000000000e+02 8.211738490672037343e-25 3.677458497207866877e-25 -8.560000000000000000e+02 6.556474050555446244e-24 -3.317860964942984941e-24 -8.562500000000000000e+02 -3.715633550603052399e-24 2.635446072221464214e-24 -8.565000000000000000e+02 5.908389656037460397e-24 -4.970082765498419156e-25 -8.567500000000000000e+02 -1.434432477729194599e-24 4.354714312003485049e-24 -8.570000000000000000e+02 -1.186131181140612860e-23 2.775037522372074544e-25 -8.572500000000000000e+02 -5.820197998828845565e-24 -6.266690532467839224e-24 -8.575000000000000000e+02 8.142452520637686488e-24 4.350788229173178852e-24 -8.577500000000000000e+02 3.607620614080535883e-24 -8.536201921249631604e-24 -8.580000000000000000e+02 -8.653273510195278793e-24 -3.455180907770714465e-24 -8.582500000000000000e+02 -8.160735826693089606e-24 -8.964773003160010135e-24 -8.585000000000000000e+02 -6.853230871252635206e-24 -1.907370894059907822e-24 -8.587500000000000000e+02 -1.233255569419128777e-24 5.117392398280006692e-24 -8.590000000000000000e+02 6.413033026166927406e-24 -9.211375882612872888e-24 -8.592500000000000000e+02 -1.847989177626190336e-24 -4.117180469194421597e-24 -8.595000000000000000e+02 -3.663486283625634074e-24 4.375845399170958397e-24 -8.597500000000000000e+02 -6.375973878655012829e-24 6.952570479905545341e-24 -8.600000000000000000e+02 6.713101633920155875e-24 7.327629136704403842e-25 -8.602500000000000000e+02 -5.866813535074973611e-24 1.046237104714535394e-23 -8.605000000000000000e+02 -6.373700703010035989e-24 -3.066056711816131582e-25 -8.607500000000000000e+02 -2.313630951687880416e-24 -8.313867380704803401e-24 -8.610000000000000000e+02 -5.638494060214745139e-24 5.948914043762839918e-26 -8.612500000000000000e+02 -7.385763267049813934e-24 1.220283962358888038e-23 -8.615000000000000000e+02 7.263367995539930619e-24 -8.448252806881138945e-24 -8.617500000000000000e+02 6.794048570662553371e-24 1.675494271264464760e-24 -8.620000000000000000e+02 3.698749246265484713e-24 1.990416731197702363e-24 -8.622500000000000000e+02 3.966938800757170961e-24 -5.956470736473233798e-24 -8.625000000000000000e+02 2.488367513863356191e-24 -6.428211447081928210e-24 -8.627500000000000000e+02 2.616787136526739165e-24 -1.579183800433190894e-24 -8.630000000000000000e+02 -1.691584412930147179e-24 -3.957629114675000891e-24 -8.632500000000000000e+02 -5.103037474197477938e-26 4.979053898609942965e-24 -8.635000000000000000e+02 3.191259130716046919e-24 2.281709726709823101e-24 -8.637500000000000000e+02 4.899432138207726711e-24 8.624430201775758494e-24 -8.640000000000000000e+02 -4.135783583486688292e-24 4.419543266723939244e-24 -8.642500000000000000e+02 -3.954206941227195374e-24 -2.482178564417979308e-24 -8.645000000000000000e+02 8.108106568034548977e-24 -5.447460872202248513e-24 -8.647500000000000000e+02 7.895926733031008333e-24 2.826799392076818892e-24 -8.650000000000000000e+02 4.180710873253139136e-24 5.772602243236498618e-25 -8.652500000000000000e+02 5.191820565683582897e-24 4.051718408593796113e-25 -8.655000000000000000e+02 -2.815151967847755803e-24 5.322657581247382723e-26 -8.657500000000000000e+02 -5.217114995393092548e-24 5.228234195051731049e-24 -8.660000000000000000e+02 1.258021872340954137e-24 3.248738073858605488e-24 -8.662500000000000000e+02 -1.106553206715897791e-23 2.399399212820370372e-25 -8.665000000000000000e+02 -2.640462634070973351e-24 6.933470293930195595e-25 -8.667500000000000000e+02 4.439369299463949621e-24 -8.046415105656287038e-24 -8.670000000000000000e+02 1.655319159051993506e-24 1.039999767992539648e-24 -8.672500000000000000e+02 -1.393640471463250385e-24 -1.083548615918223786e-23 -8.675000000000000000e+02 -2.670417237855408153e-24 6.727844145927093236e-24 -8.677500000000000000e+02 5.425810572366410396e-24 1.955742349125734291e-24 -8.680000000000000000e+02 1.974933236541692098e-24 -2.391229863005624994e-24 -8.682500000000000000e+02 -1.179240229459078303e-23 3.018536603082474420e-24 -8.685000000000000000e+02 4.698956351433030496e-24 -2.658478357644117610e-24 -8.687500000000000000e+02 3.120465219038757597e-24 1.351075136549460705e-24 -8.690000000000000000e+02 -1.061831381151069593e-24 3.314968389720201090e-24 -8.692500000000000000e+02 -6.685874186563509141e-24 4.691430733636973092e-24 -8.695000000000000000e+02 -1.358291277375281087e-23 -7.710612599178491791e-25 -8.697500000000000000e+02 -1.201214147665613426e-24 -5.162778628281193633e-24 -8.700000000000000000e+02 1.112121632527749873e-24 -3.630522883130906450e-24 -8.702500000000000000e+02 2.871418017373184504e-24 2.373997034719925271e-24 -8.705000000000000000e+02 5.597904830778136404e-24 2.253912754094088983e-26 -8.707500000000000000e+02 -2.270902689453510328e-24 3.851175576077165228e-24 -8.710000000000000000e+02 1.550166468026092042e-24 6.757366546687871082e-24 -8.712500000000000000e+02 -5.657403046127645009e-24 -7.374018545121654031e-24 -8.715000000000000000e+02 1.917962699656099733e-24 -2.034011657602229539e-24 -8.717500000000000000e+02 1.422328433583321066e-24 3.568984242332404277e-24 -8.720000000000000000e+02 5.778371951337034649e-24 2.917046325060548288e-24 -8.722500000000000000e+02 3.411652231061792624e-24 -5.938982795238802677e-24 -8.725000000000000000e+02 -7.883040314549935318e-25 2.185907664826897550e-24 -8.727500000000000000e+02 -8.918492211898088736e-24 5.167983019868701214e-24 -8.730000000000000000e+02 1.162135701271221302e-25 -5.403369545128468113e-24 -8.732500000000000000e+02 1.488792127978160504e-24 -4.540575942150974460e-24 -8.735000000000000000e+02 -2.750774492396043572e-24 -4.155726754969166953e-24 -8.737500000000000000e+02 -1.517868536019229969e-24 -3.074610458469742825e-26 -8.740000000000000000e+02 7.014846499913118971e-25 5.896456265237021942e-24 -8.742500000000000000e+02 5.623309358402106032e-24 1.094399153416101718e-23 -8.745000000000000000e+02 2.416007395577511682e-24 1.090613568106374976e-23 -8.747500000000000000e+02 -2.307083638666494810e-24 1.062540746829186029e-24 -8.750000000000000000e+02 -4.879925500401289257e-24 4.155551938165333502e-24 -8.752500000000000000e+02 -7.487650283644271631e-24 4.794821588980339267e-25 -8.755000000000000000e+02 -1.475590499314334188e-24 -2.554943125011257134e-24 -8.757500000000000000e+02 -4.959991240283609902e-24 -5.940540536208695212e-24 -8.760000000000000000e+02 -1.155068363646251554e-24 1.253343126906825724e-24 -8.762500000000000000e+02 1.865002609114957812e-27 1.031952447689155999e-24 -8.765000000000000000e+02 5.465160649807308406e-25 1.787574140162298558e-25 -8.767500000000000000e+02 -6.475936694163010379e-24 6.979376251917918834e-24 -8.770000000000000000e+02 -1.390138268271120936e-24 -1.781453066397394713e-25 -8.772500000000000000e+02 -3.085409181865100700e-24 -1.404049216137320123e-23 -8.775000000000000000e+02 -5.908603951357281340e-24 5.018507885806446135e-24 -8.777500000000000000e+02 -5.889453496469988975e-24 4.448132962009637357e-24 -8.780000000000000000e+02 -4.445728097743601733e-25 1.357280399905947408e-24 -8.782500000000000000e+02 -3.172727760718412737e-24 -1.031195676499768396e-23 -8.785000000000000000e+02 1.278440342216100880e-24 6.395913360216051800e-24 -8.787500000000000000e+02 -1.125457424195730933e-23 -2.792033479598213230e-24 -8.790000000000000000e+02 -1.435053179296118610e-24 5.694858863816240711e-24 -8.792500000000000000e+02 -2.152483681029238189e-24 3.633572676283558616e-24 -8.795000000000000000e+02 6.704231954573718419e-24 2.925326444284045479e-25 -8.797500000000000000e+02 2.209867533357626999e-24 4.718210322512387066e-24 -8.800000000000000000e+02 6.397903749811354025e-24 -6.991573842802158981e-25 -8.802500000000000000e+02 1.100070597319412077e-24 -4.870290920698516524e-25 -8.805000000000000000e+02 4.533167875627182344e-24 -6.891159945028931498e-24 -8.807500000000000000e+02 -5.347872128529450771e-24 1.224481918869965343e-23 -8.810000000000000000e+02 4.364150643138286550e-24 3.360467359781098246e-24 -8.812500000000000000e+02 1.022397417012775667e-24 -5.552449171483217533e-24 -8.815000000000000000e+02 -7.894276437952509673e-24 3.994235182601125996e-24 -8.817500000000000000e+02 1.946866063943580634e-24 -6.642403315324008876e-24 -8.820000000000000000e+02 3.249286290723581827e-24 -9.604995424373335797e-24 -8.822500000000000000e+02 1.057762100835698892e-23 7.577833865786025842e-24 -8.825000000000000000e+02 5.451561705304842742e-24 4.893384318201972049e-24 -8.827500000000000000e+02 1.029458094928744982e-24 6.762067369667046064e-24 -8.830000000000000000e+02 -4.077064042956839276e-24 1.745889075726152152e-24 -8.832500000000000000e+02 1.694564721111072422e-25 4.632319295366671082e-25 -8.835000000000000000e+02 4.897727663530353821e-24 -8.021098945358758208e-24 -8.837500000000000000e+02 4.826971791323045712e-24 -5.301216721158534463e-24 -8.840000000000000000e+02 4.645353534082295067e-24 -3.483131729347079999e-24 -8.842500000000000000e+02 -7.494244587421782069e-25 -3.496137769918025973e-24 -8.845000000000000000e+02 -1.402260790972958401e-24 -2.678934860916371018e-25 -8.847500000000000000e+02 1.562071712428650953e-24 -1.158566072844802193e-23 -8.850000000000000000e+02 6.063915577353906742e-24 1.184572794863408490e-24 -8.852500000000000000e+02 -6.039408130596297212e-24 -7.250155784390834176e-25 -8.855000000000000000e+02 2.810697333171467418e-24 -4.691494506358919016e-24 -8.857500000000000000e+02 -6.263806879108424229e-24 -1.526799015736572132e-24 -8.860000000000000000e+02 8.867573593787294652e-25 7.955782153506255178e-24 -8.862500000000000000e+02 3.720687231613192874e-24 4.969600600236281151e-24 -8.865000000000000000e+02 4.156085159119680388e-24 1.074177787126583858e-24 -8.867500000000000000e+02 -2.198357981026649288e-24 -5.106852697581578246e-24 -8.870000000000000000e+02 1.108989064412068638e-23 2.824038163179622444e-24 -8.872500000000000000e+02 3.135447820078444066e-24 3.019735395692444652e-24 -8.875000000000000000e+02 -9.366530792769414398e-24 -9.663342797825339230e-26 -8.877500000000000000e+02 4.865092561843672297e-24 -1.976348876515819225e-24 -8.880000000000000000e+02 -3.680685222477166674e-24 -9.360224959459401749e-24 -8.882500000000000000e+02 5.475483388217134331e-24 -7.817253417744754915e-25 -8.885000000000000000e+02 3.730727291356245274e-24 -5.959891133126285091e-24 -8.887500000000000000e+02 3.094630473491769235e-24 -6.959264524794467851e-25 -8.890000000000000000e+02 -4.163762593419248950e-25 -7.152641770008340158e-25 -8.892500000000000000e+02 -1.096564215460862689e-23 -4.555254897780932883e-25 -8.895000000000000000e+02 -1.300459741988806264e-24 -8.616708489901399190e-24 -8.897500000000000000e+02 3.117365262644896871e-24 8.162100762591589789e-24 -8.900000000000000000e+02 -2.622268211658836642e-24 8.033951224188594316e-24 -8.902500000000000000e+02 -8.661042717008318698e-24 6.452299238280851596e-24 -8.905000000000000000e+02 -9.302268526762849845e-25 -6.327626270692222955e-24 -8.907500000000000000e+02 -5.745368641316020418e-24 9.440646863939204781e-25 -8.910000000000000000e+02 -2.118868457303924511e-24 1.421774919093677714e-24 -8.912500000000000000e+02 -4.256545392417918819e-24 -4.254278668974929014e-24 -8.915000000000000000e+02 -4.603175831292380496e-24 -3.628221792872960678e-24 -8.917500000000000000e+02 7.236210582803743773e-24 5.683993033505676142e-25 -8.920000000000000000e+02 1.138634696564548873e-24 -8.219293906141585366e-24 -8.922500000000000000e+02 -1.021374497756696866e-24 1.355228716185173436e-24 -8.925000000000000000e+02 -4.107419051990814327e-24 3.836884475379091512e-24 -8.927500000000000000e+02 -3.292984109403319107e-24 -5.925139650966081046e-24 -8.930000000000000000e+02 -4.206872677742715854e-24 3.534298015216880990e-24 -8.932500000000000000e+02 4.478009928679895704e-24 4.715708393900761985e-24 -8.935000000000000000e+02 1.597632821299949971e-24 -4.016499924099702632e-24 -8.937500000000000000e+02 1.025370340178565709e-24 -6.471125784211024510e-24 -8.940000000000000000e+02 -1.611442494068470736e-24 6.844972727594357134e-25 -8.942500000000000000e+02 -1.569281273934421134e-24 -6.001679663355480350e-24 -8.945000000000000000e+02 -3.081543360176092897e-24 -1.017619208628246856e-24 -8.947500000000000000e+02 8.571103427525331064e-24 -1.474575453670237161e-24 -8.950000000000000000e+02 5.387415306676537495e-24 -3.978825264907976525e-24 -8.952500000000000000e+02 1.231635092739367429e-24 -3.347085425308639241e-24 -8.955000000000000000e+02 7.954584223848668160e-24 8.006566035014767348e-24 -8.957500000000000000e+02 -4.969614033241043082e-24 -4.793091613894582694e-24 -8.960000000000000000e+02 -3.166484423266221576e-24 5.538620188573241800e-24 -8.962500000000000000e+02 1.980445087793817881e-24 -3.504293874550959548e-25 -8.965000000000000000e+02 2.449682336408051448e-24 -6.516119262258047450e-24 -8.967500000000000000e+02 4.500107429361987137e-25 1.938648591758300428e-24 -8.970000000000000000e+02 -2.510819497118734769e-24 1.068834080402562454e-23 -8.972500000000000000e+02 -1.287258773635851104e-25 -8.543226405039406528e-25 -8.975000000000000000e+02 1.186238776962975459e-23 1.054264252250477878e-24 -8.977500000000000000e+02 -6.311360813787877329e-24 -5.211888982998720005e-24 -8.980000000000000000e+02 2.091591074779891267e-24 -6.102174622508563754e-24 -8.982500000000000000e+02 1.603998803433458132e-24 -5.950347158360052019e-24 -8.985000000000000000e+02 3.208499221884892374e-24 5.798355515957365627e-24 -8.987500000000000000e+02 1.343005768768218233e-24 3.266733346110353869e-24 -8.990000000000000000e+02 -4.547502728239556571e-24 -1.030763999734221773e-25 -8.992500000000000000e+02 2.449391994230768706e-24 -5.698510363540252103e-24 -8.995000000000000000e+02 4.335703319797779491e-24 3.088797531193263987e-24 -8.997500000000000000e+02 -4.829364012874378352e-24 5.855933200581843039e-24 -9.000000000000000000e+02 -3.982249782084679065e-24 5.452648225804545573e-24 -9.002500000000000000e+02 -9.961095285743523771e-25 7.714605095107741162e-25 -9.005000000000000000e+02 2.326160365541330893e-24 -2.929045670070060084e-24 -9.007500000000000000e+02 -4.602514310832242898e-24 7.023547043651502360e-25 -9.010000000000000000e+02 3.850013801852319112e-25 3.315362721687382999e-24 -9.012500000000000000e+02 -2.157789223294718226e-24 1.394928851325134835e-24 -9.015000000000000000e+02 -9.532237149868655450e-24 1.284698422286990943e-23 -9.017500000000000000e+02 -4.674734895700602740e-24 1.810719875392779449e-24 -9.020000000000000000e+02 5.752142187165147613e-24 1.383129885777285770e-24 -9.022500000000000000e+02 7.296381139636678865e-24 -1.000416940411741385e-24 -9.025000000000000000e+02 3.265916843951763680e-24 6.893282361170709722e-24 -9.027500000000000000e+02 -4.178233165578357118e-24 3.853482450521910950e-24 -9.030000000000000000e+02 2.698546352509101569e-24 -3.227628201527702492e-24 -9.032500000000000000e+02 -1.642533882403059552e-24 -4.256810040717947171e-24 -9.035000000000000000e+02 -6.965579400955618456e-24 -3.980133714825930099e-25 -9.037500000000000000e+02 5.808255867926160815e-24 2.457497488885821025e-25 -9.040000000000000000e+02 -5.509477402224679479e-24 1.164213943426586936e-23 -9.042500000000000000e+02 2.310824812918306326e-25 1.758401316088080711e-24 -9.045000000000000000e+02 2.046192183713494442e-25 -2.313562036246184685e-24 -9.047500000000000000e+02 -3.312622230956863697e-24 -7.051777002920400957e-25 -9.050000000000000000e+02 7.628528665150162476e-24 -7.662029106544399035e-24 -9.052500000000000000e+02 -1.033731467362282427e-24 1.752888817394168953e-24 -9.055000000000000000e+02 -5.979532109826072758e-24 -1.464588620697333442e-24 -9.057500000000000000e+02 4.502423154807868704e-24 -1.113525417412380732e-23 -9.060000000000000000e+02 -6.523292474619979431e-25 2.342295993162879239e-25 -9.062500000000000000e+02 -5.615806797636203357e-26 -1.278631500615756770e-23 -9.065000000000000000e+02 -4.416141162207059515e-24 -8.703622256118023444e-24 -9.067500000000000000e+02 -1.406295608546516287e-23 7.708758549031035439e-24 -9.070000000000000000e+02 -1.178538835312718661e-24 -5.736051789910331493e-24 -9.072500000000000000e+02 -2.611874642435542575e-24 3.364455042251625061e-24 -9.075000000000000000e+02 5.489512268480686585e-24 -8.866153321932823527e-24 -9.077500000000000000e+02 -2.774752872091190301e-24 5.005500509444559866e-25 -9.080000000000000000e+02 3.971553834631308265e-24 8.947468101162653180e-25 -9.082500000000000000e+02 7.513449827504596758e-24 2.588053313849470553e-24 -9.085000000000000000e+02 -9.035506467041930282e-24 -3.472316394851902272e-24 -9.087500000000000000e+02 1.952546562413241226e-24 1.065433181242852122e-24 -9.090000000000000000e+02 -6.548227637883328638e-24 8.630044274297153225e-24 -9.092500000000000000e+02 -7.836787690132946196e-24 -1.978088303087953425e-24 -9.095000000000000000e+02 -4.046965397400893102e-24 -9.640694467718133681e-24 -9.097500000000000000e+02 -3.421721887750319693e-24 7.922460684241976649e-24 -9.100000000000000000e+02 4.101257314913579419e-24 -5.554933882977466647e-24 -9.102500000000000000e+02 2.483475060951460803e-24 1.304287930636438790e-23 -9.105000000000000000e+02 -3.155172063224981920e-24 4.259830654642584689e-24 -9.107500000000000000e+02 -6.625098804844654179e-24 4.726838394999562544e-24 -9.110000000000000000e+02 -6.049744772807132017e-24 3.865704352133730385e-24 -9.112500000000000000e+02 -6.576593077117711381e-25 7.432818304441788886e-24 -9.115000000000000000e+02 6.569110314391651111e-24 5.182276873395918638e-24 -9.117500000000000000e+02 3.835019140249883286e-24 5.492831909894531005e-24 -9.120000000000000000e+02 -3.003471540031030905e-24 1.197250253680535097e-23 -9.122500000000000000e+02 -3.845460846180908026e-24 1.766161676891894551e-24 -9.125000000000000000e+02 -5.101035215766501007e-24 -6.971176877208928241e-24 -9.127500000000000000e+02 -1.313343482964953753e-24 1.596129977964348359e-24 -9.130000000000000000e+02 9.552287773107355277e-25 1.662227660573510992e-24 -9.132500000000000000e+02 2.719724552054599194e-25 -1.306830109026614495e-23 -9.135000000000000000e+02 2.771643223389389758e-25 -1.057865510409554325e-24 -9.137500000000000000e+02 1.265197647275782608e-24 2.658873628014917122e-24 -9.140000000000000000e+02 3.151328603461792825e-24 -7.377431007090778909e-24 -9.142500000000000000e+02 -2.755669164228307085e-24 4.706245594557948423e-24 -9.145000000000000000e+02 2.647859546472693351e-24 5.148674564671899006e-24 -9.147500000000000000e+02 9.085801283897419551e-24 -3.872861450228768766e-24 -9.150000000000000000e+02 4.556720142798079649e-24 9.997126808777807388e-26 -9.152500000000000000e+02 -5.130903554677874681e-24 -9.782409600610596241e-24 -9.155000000000000000e+02 4.830636372781683202e-24 9.433805532481327958e-24 -9.157500000000000000e+02 2.720093674924480176e-24 -1.235728234135458802e-25 -9.160000000000000000e+02 -3.640034757481825630e-25 -3.087117084627588035e-24 -9.162500000000000000e+02 -3.796429980631162377e-24 8.911079408877212348e-25 -9.165000000000000000e+02 -4.306166452982029293e-24 1.896836504542878088e-24 -9.167500000000000000e+02 -4.468423321636426914e-24 -7.612330439631460844e-25 -9.170000000000000000e+02 1.220662454441375041e-24 -4.533401337075090569e-24 -9.172500000000000000e+02 -5.896796213478594732e-24 -4.731231764829775041e-24 -9.175000000000000000e+02 1.187231232471122139e-24 3.652437789655884061e-24 -9.177500000000000000e+02 -9.273063719081950450e-24 -4.990735012555928085e-24 -9.180000000000000000e+02 8.061849699312724213e-26 7.763758391806953129e-25 -9.182500000000000000e+02 -5.462042344465318593e-24 -9.788265847678620203e-24 -9.185000000000000000e+02 6.029377705944316138e-24 -6.517521205771438021e-25 -9.187500000000000000e+02 1.987624880365389098e-24 -8.664652842940935483e-24 -9.190000000000000000e+02 -5.897304584054048889e-24 9.332014058399308332e-24 -9.192500000000000000e+02 -8.362728195967877292e-24 -3.406145039543259115e-24 -9.195000000000000000e+02 7.203150677176894492e-25 -3.310063085501471704e-24 -9.197500000000000000e+02 4.674051735998220155e-24 -4.398086548719955545e-25 -9.200000000000000000e+02 -2.656280018037372562e-24 6.121388996489746065e-25 -9.202500000000000000e+02 -2.096521018348333979e-25 -9.198077493326961428e-24 -9.205000000000000000e+02 -1.535366172443519998e-24 -9.635101477053357873e-25 -9.207500000000000000e+02 2.631737118151371712e-24 6.185756399036856810e-24 -9.210000000000000000e+02 -3.425086934849143640e-24 6.532791779714291825e-24 -9.212500000000000000e+02 -4.913780200179774744e-25 9.646176345732532546e-25 -9.215000000000000000e+02 3.443675950859385753e-25 -5.419503691963255737e-25 -9.217500000000000000e+02 6.057777410201589112e-24 -5.057659985171215527e-24 -9.220000000000000000e+02 1.705325893017568731e-24 6.964866905695349560e-25 -9.222500000000000000e+02 7.657384105470330037e-24 6.976906008732610062e-25 -9.225000000000000000e+02 3.783433883253131792e-24 -6.683317927177553060e-24 -9.227500000000000000e+02 -4.694985264060599264e-24 -4.838854294108408813e-25 -9.230000000000000000e+02 -2.297864015114470462e-24 -7.795571774968697931e-24 -9.232500000000000000e+02 -5.543137456322516308e-24 -2.374828075776352398e-24 -9.235000000000000000e+02 5.727372109913667197e-24 -3.825183727952321882e-24 -9.237500000000000000e+02 6.245744639788075745e-25 2.471490510067351910e-24 -9.240000000000000000e+02 5.433277153669604456e-24 -4.841220646391707811e-24 -9.242500000000000000e+02 9.912793653605539567e-26 3.198200065940268215e-25 -9.245000000000000000e+02 1.227245117454222759e-23 8.539172761204555498e-26 -9.247500000000000000e+02 8.312937169648339685e-24 -8.869319021734451171e-24 -9.250000000000000000e+02 -2.327222620261667265e-24 1.212176373685760293e-23 -9.252500000000000000e+02 -1.281174943183402329e-24 6.104706038723558631e-24 -9.255000000000000000e+02 -3.785828236755587302e-24 -1.347960628832042415e-24 -9.257500000000000000e+02 -4.365331320217833390e-24 1.155235457233049164e-23 -9.260000000000000000e+02 -1.828387895904642131e-26 -2.200781738529444021e-24 -9.262500000000000000e+02 9.379352132650195819e-25 8.483243397319021993e-24 -9.265000000000000000e+02 4.057482607605777173e-24 1.869927359862301740e-24 -9.267500000000000000e+02 -1.091460818830471664e-24 -2.626330258913329046e-24 -9.270000000000000000e+02 1.331100360534674251e-24 4.820733942836809945e-24 -9.272500000000000000e+02 2.672238317055257667e-25 -8.866878168849497019e-24 -9.275000000000000000e+02 -7.467518404700508194e-25 5.499034815507184779e-24 -9.277500000000000000e+02 -6.239776816720147132e-24 2.408174219406833323e-25 -9.280000000000000000e+02 -1.239051311172764355e-23 -1.419078511931652346e-24 -9.282500000000000000e+02 -4.985041524389439029e-24 -7.111750894578695443e-24 -9.285000000000000000e+02 4.232769780024355575e-24 -1.089437675501052091e-23 -9.287500000000000000e+02 6.213966587738996762e-24 -3.991389978566924758e-24 -9.290000000000000000e+02 -5.199343588224919227e-24 -5.000263981908273706e-24 -9.292500000000000000e+02 -5.250791957389098067e-24 7.427473975253636945e-24 -9.295000000000000000e+02 -9.032504254160944123e-24 -2.613797113122572014e-24 -9.297500000000000000e+02 -1.556717057548133819e-24 -3.568161133219717500e-24 -9.300000000000000000e+02 8.954230384320102642e-24 -2.031592459333892562e-26 -9.302500000000000000e+02 -2.843216010443290620e-24 -5.748427404533903154e-26 -9.305000000000000000e+02 1.453040085958433109e-24 -1.854968110669941165e-25 -9.307500000000000000e+02 5.326956710645492785e-25 1.232066062634014543e-24 -9.310000000000000000e+02 4.187993652483443149e-24 9.924938569627048566e-24 -9.312500000000000000e+02 -2.662451875617213252e-24 2.516150728894200953e-24 -9.315000000000000000e+02 2.590666954698230764e-24 -1.440152615401111265e-26 -9.317500000000000000e+02 -1.098034123262063605e-25 5.594802615785097208e-24 -9.320000000000000000e+02 -1.072391145025190775e-23 -8.327954607287399947e-26 -9.322500000000000000e+02 7.600434351921886444e-24 1.300543496936400079e-24 -9.325000000000000000e+02 1.008365999018554318e-24 -5.541421736458321442e-24 -9.327500000000000000e+02 -4.595673286002798498e-24 6.334237295203858509e-25 -9.330000000000000000e+02 -7.807647009386122759e-24 -3.915979431364059377e-25 -9.332500000000000000e+02 -4.454321512261129749e-24 -2.469846414833665485e-24 -9.335000000000000000e+02 3.814287709899336915e-24 2.475895697883582940e-24 -9.337500000000000000e+02 -4.482553855714589805e-24 1.048410019901683760e-23 -9.340000000000000000e+02 -2.871163416823728531e-24 -7.762407576101888847e-24 -9.342500000000000000e+02 -2.865114839673082463e-24 1.087593910967468954e-23 -9.345000000000000000e+02 2.186194976758976271e-24 4.194863889158033083e-24 -9.347500000000000000e+02 4.293850433457093188e-24 -3.990088343723150560e-24 -9.350000000000000000e+02 -3.462850294109753313e-24 1.755684832770946637e-24 -9.352500000000000000e+02 -9.837569761954226918e-24 4.811192461976700863e-24 -9.355000000000000000e+02 -1.825583300532513843e-24 -8.053588224551631145e-24 -9.357500000000000000e+02 -1.012237669030641442e-23 -1.575400107811325750e-24 -9.360000000000000000e+02 6.818804811307948806e-24 -1.581398751823493517e-24 -9.362500000000000000e+02 1.546950184073109446e-24 -1.522663745343239166e-25 -9.365000000000000000e+02 2.152689813332413179e-24 5.710878282374582679e-25 -9.367500000000000000e+02 -1.864355628927821275e-24 3.027485028567313314e-24 -9.370000000000000000e+02 3.317927069742514677e-25 6.512729323058758103e-24 -9.372500000000000000e+02 -6.824962360963136568e-24 1.159541947307731546e-24 -9.375000000000000000e+02 -5.440050798897527873e-24 -7.510601463413563219e-24 -9.377500000000000000e+02 -5.711816301518501944e-25 -6.861368986345276524e-24 -9.380000000000000000e+02 5.230461049793814434e-24 5.882898116679552233e-24 -9.382500000000000000e+02 1.761027801754419335e-24 1.626812585203858955e-24 -9.385000000000000000e+02 -2.428644298879622375e-24 5.027384457551783722e-24 -9.387500000000000000e+02 1.547230900884511825e-24 1.638087232403171565e-24 -9.390000000000000000e+02 4.514164823774151974e-24 4.114779028267478528e-24 -9.392500000000000000e+02 6.534724392322697406e-24 -1.103085932410115284e-24 -9.395000000000000000e+02 -4.212493384549647998e-24 -3.121683800472821716e-24 -9.397500000000000000e+02 5.326366063919114078e-24 -7.900061838064079082e-24 -9.400000000000000000e+02 2.117219284005570761e-24 3.102590989719148042e-24 -9.402500000000000000e+02 5.669111697805481583e-26 -4.496400140550202397e-24 -9.405000000000000000e+02 5.669964581470358298e-24 -8.009805129026765001e-24 -9.407500000000000000e+02 7.780367360197758898e-25 -6.656774162801454516e-24 -9.410000000000000000e+02 -7.973862800645809602e-25 -7.884535162504428535e-25 -9.412500000000000000e+02 -5.892292599263343791e-25 -4.739633531765352860e-24 -9.415000000000000000e+02 9.452894432493372066e-24 1.150511630252177355e-24 -9.417500000000000000e+02 1.501535912008350697e-24 -1.031860492163318224e-23 -9.420000000000000000e+02 5.683244615907401843e-24 -8.813236241252854131e-25 -9.422500000000000000e+02 1.878824000157110219e-24 1.795457334885775879e-24 -9.425000000000000000e+02 -1.510083063311120452e-24 -2.167159213339609182e-24 -9.427500000000000000e+02 8.484256248153477154e-25 -1.390623967549658157e-24 -9.430000000000000000e+02 1.019475635719502504e-23 4.429868738776751630e-24 -9.432500000000000000e+02 -7.220626960235452928e-25 7.265823683936325401e-24 -9.435000000000000000e+02 3.140828210119591149e-24 -3.080055667329576715e-24 -9.437500000000000000e+02 1.738607415883014587e-24 3.192367876763243023e-24 -9.440000000000000000e+02 3.480895289656864383e-24 -1.770384011910834276e-23 -9.442500000000000000e+02 -2.193470534725096484e-24 5.732444740615907786e-25 -9.445000000000000000e+02 -1.045005219461269112e-23 -1.047097435945062449e-23 -9.447500000000000000e+02 -3.701343424935390932e-24 1.912127479845525206e-24 -9.450000000000000000e+02 -7.681566632829265764e-24 -4.458678464458191336e-24 -9.452500000000000000e+02 6.530349172953809534e-24 2.501443315347054707e-24 -9.455000000000000000e+02 -7.417875283501806068e-24 -7.079691721628059869e-24 -9.457500000000000000e+02 4.940064162877272490e-24 7.679204198831572673e-24 -9.460000000000000000e+02 -2.448280490031858799e-24 5.631306587953068257e-24 -9.462500000000000000e+02 -7.159521213171287386e-24 1.429336575130051430e-24 -9.465000000000000000e+02 -2.486895168748392723e-24 -1.313775821614133258e-25 -9.467500000000000000e+02 1.715935784697610102e-24 -1.006875417867852135e-23 -9.470000000000000000e+02 2.824200968156525630e-24 2.085697629854325024e-24 -9.472500000000000000e+02 -1.198463708629057856e-24 -1.476260889357060791e-23 -9.475000000000000000e+02 6.732263497617645352e-25 -4.083937050953088581e-24 -9.477500000000000000e+02 -8.513609983936929464e-25 -3.911688723900691777e-24 -9.480000000000000000e+02 -2.473111430478334526e-24 -5.788927309866995659e-24 -9.482500000000000000e+02 -2.795000338831471530e-25 -1.317635853997948460e-24 -9.485000000000000000e+02 6.683292899645462398e-24 -1.159360632551833109e-24 -9.487500000000000000e+02 -2.842683866727927975e-26 -3.734146453799944051e-24 -9.490000000000000000e+02 7.873775414353059272e-24 8.165728787628308301e-24 -9.492500000000000000e+02 7.126763435347270522e-25 -4.309932831387139323e-24 -9.495000000000000000e+02 7.056573223640880051e-24 -2.919461070685465692e-24 -9.497500000000000000e+02 -6.605450277782872301e-24 1.110883093014123545e-23 -9.500000000000000000e+02 -4.568819732332942653e-24 1.523214727042918622e-24 -9.502500000000000000e+02 7.191860921143279737e-24 2.610910290113026425e-24 -9.505000000000000000e+02 -3.280667382376043317e-24 8.967905665987214969e-24 -9.507500000000000000e+02 5.987001251072125104e-24 3.719852344253110365e-24 -9.510000000000000000e+02 -7.174451358089861436e-24 -4.018324460291711666e-24 -9.512500000000000000e+02 2.407943485496775937e-24 4.908093931113536652e-24 -9.515000000000000000e+02 -4.436197052977892931e-24 -2.069466498187952999e-25 -9.517500000000000000e+02 -2.880658206527798174e-24 5.941521379535619046e-24 -9.520000000000000000e+02 4.065621231038168256e-24 -6.919748975565588112e-24 -9.522500000000000000e+02 -6.394048645032728248e-24 1.100069005756041264e-23 -9.525000000000000000e+02 -1.407284539846903904e-23 -1.609227498179131513e-24 -9.527500000000000000e+02 -1.745808241735243314e-24 3.127517582656079401e-24 -9.530000000000000000e+02 5.311180795880474948e-24 -9.357727147726626213e-25 -9.532500000000000000e+02 3.783777950814974872e-26 -1.504797493255244407e-23 -9.535000000000000000e+02 -1.699529295440497795e-24 9.282650141712443135e-25 -9.537500000000000000e+02 -3.781407888875554726e-25 -4.675475233177358573e-24 -9.540000000000000000e+02 -5.388314851688640251e-24 1.521387154909219719e-24 -9.542500000000000000e+02 -6.575303527285298918e-24 -2.183732384609719912e-24 -9.545000000000000000e+02 -1.471608449899528368e-23 -4.237521683941419819e-24 -9.547500000000000000e+02 5.648981377415072311e-24 -3.940535387356802953e-24 -9.550000000000000000e+02 -7.648232911665518495e-24 -1.453797449063843970e-23 -9.552500000000000000e+02 3.043822764606301007e-24 2.945143876843734163e-24 -9.555000000000000000e+02 7.724519526717976788e-24 4.328713860947274030e-24 -9.557500000000000000e+02 6.544196283033787682e-24 -8.108844783929003080e-24 -9.560000000000000000e+02 -1.108074017889926499e-23 -1.729848742047821125e-24 -9.562500000000000000e+02 5.626530190647723519e-24 -5.464908702582721775e-24 -9.565000000000000000e+02 -2.096217154289597469e-25 5.478291576782709548e-24 -9.567500000000000000e+02 -7.346434161184718022e-24 9.561700220279780795e-24 -9.570000000000000000e+02 2.941563428924688521e-24 -2.125247382836317959e-24 -9.572500000000000000e+02 1.793005189733796492e-24 2.707550679884794742e-24 -9.575000000000000000e+02 2.126736095923915883e-24 -1.255584031076460106e-24 -9.577500000000000000e+02 -1.065616364273936114e-23 8.532802541033733552e-24 -9.580000000000000000e+02 -1.293753680153625265e-24 -5.841030379077138125e-24 -9.582500000000000000e+02 9.030252133275811523e-24 -7.628155444322819700e-26 -9.585000000000000000e+02 -4.455260346919528242e-24 -3.559114562628063140e-24 -9.587500000000000000e+02 -1.391644919006151693e-24 -8.407824333892016320e-25 -9.590000000000000000e+02 -5.896326203226075066e-24 9.656121191539195384e-25 -9.592500000000000000e+02 -2.615095729973248545e-24 7.802342575029328158e-25 -9.595000000000000000e+02 1.677939985773300482e-24 1.146735123025786819e-23 -9.597500000000000000e+02 -5.485950851183002280e-25 1.147844109733083654e-24 -9.600000000000000000e+02 8.608046257923562533e-24 -1.457352301206086700e-24 -9.602500000000000000e+02 -1.562025442762473515e-24 8.200024460705140015e-24 -9.605000000000000000e+02 6.644899107529861358e-25 4.767226542845791964e-24 -9.607500000000000000e+02 2.266749384469251868e-24 -1.438963677678038646e-24 -9.610000000000000000e+02 6.487707762583674794e-24 -2.701508698369617338e-24 -9.612500000000000000e+02 -2.629915161142659509e-25 -1.022100056698474920e-23 -9.615000000000000000e+02 -1.252903752982208768e-24 -2.811161014990353649e-25 -9.617500000000000000e+02 -4.595246555529157065e-24 4.250885460015047697e-24 -9.620000000000000000e+02 1.287052938237153743e-23 -3.377949608294035954e-24 -9.622500000000000000e+02 -7.675759183739717007e-24 8.274893382485790942e-24 -9.625000000000000000e+02 2.451703535617967603e-24 4.513135917519317744e-24 -9.627500000000000000e+02 -2.010482748228757386e-25 4.245174686641549615e-24 -9.630000000000000000e+02 -3.608879293982052094e-24 2.465066308137214042e-24 -9.632500000000000000e+02 -8.561915258080019912e-25 -1.415956163780826821e-24 -9.635000000000000000e+02 -4.450692601202272540e-24 3.430522169470031205e-25 -9.637500000000000000e+02 7.137260261097081069e-24 -9.047439622496757166e-24 -9.640000000000000000e+02 6.321315363272328788e-24 6.109419582780446715e-24 -9.642500000000000000e+02 -8.482284723243944825e-24 3.027245227724976150e-24 -9.645000000000000000e+02 -4.529754315290100196e-24 -7.170361122802346875e-24 -9.647500000000000000e+02 5.247069344552293323e-25 -1.633474339243835778e-24 -9.650000000000000000e+02 3.678090875223254710e-24 -1.433989277953166269e-24 -9.652500000000000000e+02 3.197329371859677930e-24 2.142387896834255385e-24 -9.655000000000000000e+02 4.827107705213214302e-24 -2.979573443218125315e-24 -9.657500000000000000e+02 4.542597700811167080e-24 -8.872531015110504712e-25 -9.660000000000000000e+02 -7.820718603721507349e-24 2.126817910356449992e-24 -9.662500000000000000e+02 -5.829242365184815346e-24 -6.494684096352526265e-24 -9.665000000000000000e+02 2.545042878068384823e-24 -1.322366553376597504e-25 -9.667500000000000000e+02 -2.772975214708833433e-24 2.697866002142264417e-24 -9.670000000000000000e+02 -2.494452129750441104e-24 7.644320031801761528e-24 -9.672500000000000000e+02 3.218996259335212381e-24 4.478649204659010109e-24 -9.675000000000000000e+02 -3.288303906216839350e-24 -1.104665275068706863e-24 -9.677500000000000000e+02 -6.123617785845893923e-24 5.390414692053824429e-24 -9.680000000000000000e+02 -3.725773750216607308e-24 1.013322973317789867e-25 -9.682500000000000000e+02 -1.257181297872279803e-23 -4.824997642907121242e-24 -9.685000000000000000e+02 7.931309931863410329e-25 6.433464142825879398e-24 -9.687500000000000000e+02 1.088944780857465934e-23 3.616545609177450863e-24 -9.690000000000000000e+02 -2.340901876149167095e-24 7.778359419397250673e-25 -9.692500000000000000e+02 -7.133227372543307296e-24 -2.182279470023426877e-24 -9.695000000000000000e+02 -6.884390602655640982e-24 -2.140401784169633315e-24 -9.697500000000000000e+02 -6.569692520807158031e-24 -8.600982992958443336e-24 -9.700000000000000000e+02 -4.975978990703492858e-24 -2.734032613095158393e-24 -9.702500000000000000e+02 -3.936602183454516370e-24 -3.076168230480081596e-24 -9.705000000000000000e+02 -2.993162181088895876e-24 -6.172988450926624717e-24 -9.707500000000000000e+02 -3.869456280386178985e-24 7.784400233632090150e-24 -9.710000000000000000e+02 2.125565369756043098e-25 -5.832893985103836752e-24 -9.712500000000000000e+02 -4.987266852376892278e-24 -3.240494666918644711e-25 -9.715000000000000000e+02 -2.946576255201731210e-25 6.636786444548309409e-25 -9.717500000000000000e+02 -9.214172793922653239e-24 -3.204697759707446372e-24 -9.720000000000000000e+02 -4.375207297373980185e-24 1.689451983436419274e-24 -9.722500000000000000e+02 4.793536736593025932e-24 -6.442949498751760879e-24 -9.725000000000000000e+02 -3.072965620072062487e-24 -2.506171394397271653e-24 -9.727500000000000000e+02 5.120913308042480863e-24 1.046609654820204267e-23 -9.730000000000000000e+02 -2.288038074124228514e-24 -8.804089669560309180e-24 -9.732500000000000000e+02 -3.206177660043611905e-24 6.053620131541176829e-24 -9.735000000000000000e+02 -3.178009111946102734e-25 -6.482861411043240993e-24 -9.737500000000000000e+02 -4.654920956848616118e-24 -3.353280967504240517e-24 -9.740000000000000000e+02 -7.317119885409941742e-24 -7.913089596778148726e-24 -9.742500000000000000e+02 4.110963049097785914e-24 6.388034301166085862e-24 -9.745000000000000000e+02 -4.452688745691974399e-25 1.129481113059801339e-23 -9.747500000000000000e+02 4.170329164389192055e-24 -6.114457494494489644e-24 -9.750000000000000000e+02 1.891752689536501165e-24 -6.665134813754351249e-24 -9.752500000000000000e+02 2.011337761517787890e-25 -1.181856012213133137e-24 -9.755000000000000000e+02 -8.416897817715920244e-24 -6.080908009740365656e-24 -9.757500000000000000e+02 3.070750830343432559e-24 -9.936388716634093648e-24 -9.760000000000000000e+02 8.598474720001352945e-24 -5.509681000238307516e-24 -9.762500000000000000e+02 -1.434618453863368865e-24 -6.925188778773220280e-25 -9.765000000000000000e+02 5.940747310463365445e-24 2.163256352907051664e-24 -9.767500000000000000e+02 1.882309642513012708e-24 8.991906013467113933e-24 -9.770000000000000000e+02 -4.951185252937119024e-24 -2.027409739223107296e-26 -9.772500000000000000e+02 4.913708589944251288e-25 1.314652181358633851e-25 -9.775000000000000000e+02 6.537463200518187255e-24 -1.224742569396191059e-24 -9.777500000000000000e+02 -5.701202271140734899e-24 -3.139351056288739590e-24 -9.780000000000000000e+02 -1.457126208256820502e-24 -3.061004680409549629e-25 -9.782500000000000000e+02 3.215344836842233007e-24 -2.254106607507039902e-24 -9.785000000000000000e+02 1.262998930881771229e-24 -2.213048490246437421e-24 -9.787500000000000000e+02 2.686569107169654269e-25 1.091747779073695602e-23 -9.790000000000000000e+02 7.580058842120247261e-25 -7.869242624946207654e-26 -9.792500000000000000e+02 -5.738714298489234002e-24 -7.267578088369004118e-24 -9.795000000000000000e+02 5.663090531591491895e-24 3.658211270456986915e-25 -9.797500000000000000e+02 2.688270621091675405e-24 -5.052973420933718534e-24 -9.800000000000000000e+02 -3.129365137979848045e-24 -4.629108796666935299e-24 -9.802500000000000000e+02 -1.167066728356279739e-23 9.098949278564452947e-25 -9.805000000000000000e+02 -7.763192750392606877e-24 -5.211331225091800317e-24 -9.807500000000000000e+02 -1.574744729405117803e-24 -3.778413440969075169e-24 -9.810000000000000000e+02 2.320246417884225461e-24 5.093275818570001637e-24 -9.812500000000000000e+02 -7.489462917381052567e-25 -1.428529576214203286e-24 -9.815000000000000000e+02 1.205937207236528799e-23 5.712514640145625544e-24 -9.817500000000000000e+02 6.973365568276883406e-24 -3.354013743812373270e-24 -9.820000000000000000e+02 -2.278470668367128150e-24 2.417030534525931733e-24 -9.822500000000000000e+02 -8.311302204865820517e-24 -2.305267752373489898e-24 -9.825000000000000000e+02 4.250263731352132863e-24 4.271611288866352431e-24 -9.827500000000000000e+02 -2.094423373906486330e-24 3.163976034034805150e-24 -9.830000000000000000e+02 6.967241712958756794e-24 7.937878414743949587e-24 -9.832500000000000000e+02 2.823168870450317644e-24 5.600794433743198964e-24 -9.835000000000000000e+02 -2.486344414725066285e-24 8.575569794662857816e-24 -9.837500000000000000e+02 -1.046934617787924079e-23 -7.649481434909450527e-24 -9.840000000000000000e+02 -8.044522985365924898e-26 -3.667756728140057471e-25 -9.842500000000000000e+02 -2.341406015871542816e-24 6.067160717526190679e-24 -9.845000000000000000e+02 -1.517265957938646849e-24 -6.107589924593865876e-24 -9.847500000000000000e+02 -9.966375879540237801e-24 1.007519325310366805e-23 -9.850000000000000000e+02 1.165539837636586773e-24 -3.458093452621607431e-24 -9.852500000000000000e+02 1.878905850044281926e-24 1.217635252137912024e-23 -9.855000000000000000e+02 -2.818176429951331004e-24 8.271023139162775949e-24 -9.857500000000000000e+02 4.693366252813394376e-24 4.078149854348320651e-24 -9.860000000000000000e+02 -7.327270832283709813e-24 -2.310960482610616249e-24 -9.862500000000000000e+02 -6.284011581175303336e-24 -2.889981166332014132e-24 -9.865000000000000000e+02 -1.642001783642828667e-24 2.060788301696079626e-24 -9.867500000000000000e+02 -3.537262691109476952e-24 -2.376612809003304630e-24 -9.870000000000000000e+02 1.855519731708294015e-23 -4.540768516882071165e-24 -9.872500000000000000e+02 -1.097241995728110305e-25 4.311024544154536039e-25 -9.875000000000000000e+02 5.286620119743726861e-24 -8.488732529810321429e-24 -9.877500000000000000e+02 -7.987158369971148147e-24 6.685288678192457428e-24 -9.880000000000000000e+02 -1.497943760306075558e-23 1.417944473029595540e-24 -9.882500000000000000e+02 -8.479582270441730833e-25 -4.233662541299643263e-24 -9.885000000000000000e+02 -4.301205279851453920e-24 2.048794074420484320e-24 -9.887500000000000000e+02 -4.299577319622883043e-24 1.821517045360766332e-24 -9.890000000000000000e+02 -6.826455930722672724e-24 6.381660972196693113e-24 -9.892500000000000000e+02 6.617954463011172273e-24 -6.681252746770378814e-24 -9.895000000000000000e+02 2.107114191283520314e-24 1.253495130203014974e-24 -9.897500000000000000e+02 -4.204001730128939759e-24 1.152724736489694458e-24 -9.900000000000000000e+02 -3.022431929400853622e-24 -4.799714637483707212e-24 -9.902500000000000000e+02 9.204852690765959664e-24 -6.029076379039639541e-25 -9.905000000000000000e+02 9.108398278769265359e-24 -1.226876285024535151e-23 -9.907500000000000000e+02 -1.135703679744257298e-23 3.769058642341857865e-24 -9.910000000000000000e+02 8.540683357527054287e-25 -1.030940678458348546e-25 -9.912500000000000000e+02 -4.019388848907995454e-24 4.617894148926700210e-24 -9.915000000000000000e+02 -2.339683488207777536e-25 1.532881929162090004e-24 -9.917500000000000000e+02 3.610710973392531408e-24 4.748842028286037365e-24 -9.920000000000000000e+02 -6.054601868128618392e-24 7.075661701843536161e-25 -9.922500000000000000e+02 1.349658687168296512e-24 1.359173746644123026e-24 -9.925000000000000000e+02 -5.657715826101763470e-24 -6.777852091999070292e-24 -9.927500000000000000e+02 5.248982766788524610e-24 -9.885807555083705062e-26 -9.930000000000000000e+02 5.200810793283583785e-24 3.820724325646162811e-24 -9.932500000000000000e+02 -7.169695957570883122e-24 -2.564737334443120952e-24 -9.935000000000000000e+02 2.085181244454925013e-24 -8.821867978291793364e-25 -9.937500000000000000e+02 2.783031609867796221e-24 -4.514003264477434806e-24 -9.940000000000000000e+02 -2.904266422355104587e-25 -3.468354732569146624e-24 -9.942500000000000000e+02 2.113677616627626638e-24 -2.720291784219603563e-24 -9.945000000000000000e+02 3.849533580904143029e-24 2.182778663785279491e-24 -9.947500000000000000e+02 -2.816865337522123801e-24 1.666242018174857130e-24 -9.950000000000000000e+02 -4.947525323382500464e-24 1.014627923358620703e-24 -9.952500000000000000e+02 -3.505874247137298198e-24 -8.146598509726027313e-24 -9.955000000000000000e+02 -4.666406313702268632e-24 -2.386964910107961129e-24 -9.957500000000000000e+02 -5.659232188137184147e-24 -8.741409409267159469e-24 -9.960000000000000000e+02 -3.627545595926462827e-24 3.851579072131157503e-24 -9.962500000000000000e+02 1.264126394285044125e-24 7.163071448422073057e-24 -9.965000000000000000e+02 -9.232133655011770481e-24 -6.813269582093287138e-24 -9.967500000000000000e+02 2.554640032146666782e-26 3.035548513326558895e-24 -9.970000000000000000e+02 -5.972836660382212683e-25 9.885424305421267494e-24 -9.972500000000000000e+02 -9.064218638393377442e-24 -6.402686047303894524e-24 -9.975000000000000000e+02 6.004469143365868431e-24 -1.145769170795418621e-23 -9.977500000000000000e+02 6.219051446850089835e-24 -6.287577166802067243e-24 -9.980000000000000000e+02 3.645940691888635749e-24 2.531157521287999777e-24 -9.982500000000000000e+02 2.643301086249069278e-24 -5.933023183282781015e-25 -9.985000000000000000e+02 2.400416773847127564e-24 6.292814268145619937e-25 -9.987500000000000000e+02 -8.104447459843940632e-24 1.033175756588659134e-24 -9.990000000000000000e+02 4.865566449006995298e-24 -8.739298593413408856e-24 -9.992500000000000000e+02 6.967652885244184114e-24 6.106196481776290589e-24 -9.995000000000000000e+02 -3.952950441740480593e-24 7.548622946382836607e-24 -9.997500000000000000e+02 -2.971793151752730168e-25 4.029468297603316469e-24 -1.000000000000000000e+03 -1.131112374788513747e-23 7.584775962397290790e-25 -1.000250000000000000e+03 4.636206234684461041e-25 -3.148376714466759677e-24 -1.000500000000000000e+03 3.452333145204949051e-24 4.484622597255518469e-25 -1.000750000000000000e+03 1.071837144671229884e-23 -1.143343057419192607e-24 -1.001000000000000000e+03 4.513974938791690445e-24 6.227200936075171578e-24 -1.001250000000000000e+03 -1.345606201838118257e-24 1.780979531516526474e-24 -1.001500000000000000e+03 -7.436335212167895224e-24 -1.633029780441745513e-24 -1.001750000000000000e+03 2.417929759171238491e-24 7.555857389809211581e-24 -1.002000000000000000e+03 5.574604272098885392e-24 3.826555823467356988e-24 -1.002250000000000000e+03 -1.308856923063513131e-23 1.163710212005271250e-23 -1.002500000000000000e+03 1.435902756083762351e-24 3.770195928617768293e-24 -1.002750000000000000e+03 -2.727204899114107666e-24 2.707264113960661707e-24 -1.003000000000000000e+03 -3.603426861556276187e-24 -2.365056371248676811e-24 -1.003250000000000000e+03 -4.543048782426406677e-24 -2.792002317596740528e-24 -1.003500000000000000e+03 -9.791127842358132273e-24 5.869993994658079784e-24 -1.003750000000000000e+03 1.208760868419639833e-23 -1.668295036794738159e-24 -1.004000000000000000e+03 -7.036601776453619615e-24 1.690720120682204070e-24 -1.004250000000000000e+03 1.180656856703522916e-23 -9.218617244757748259e-25 -1.004500000000000000e+03 5.343458582892116317e-24 -2.700390973325136135e-24 -1.004750000000000000e+03 2.790104940423723044e-26 1.917865086312150831e-24 -1.005000000000000000e+03 -3.404058805985741452e-24 7.518141777243401333e-24 -1.005250000000000000e+03 -1.186817678317404799e-25 -1.111864768288254375e-23 -1.005500000000000000e+03 6.597481669456918372e-24 -7.689236586961882371e-25 -1.005750000000000000e+03 5.046719959312996622e-24 -2.020506591454023276e-25 -1.006000000000000000e+03 3.779118588040090239e-25 -4.886438544624238022e-24 -1.006250000000000000e+03 -5.018554451713634859e-24 -4.235264087388947372e-25 -1.006500000000000000e+03 -4.713488921731612019e-24 9.527488873086119710e-24 -1.006750000000000000e+03 -2.839833373951141186e-24 9.218741945930298243e-26 -1.007000000000000000e+03 -3.118459371746757126e-24 2.179216383922067348e-24 -1.007250000000000000e+03 1.049313704528893217e-23 1.233895623010096741e-23 -1.007500000000000000e+03 6.597063316828943160e-24 1.293764880861201098e-25 -1.007750000000000000e+03 5.885788415210093669e-24 1.356053578837164964e-25 -1.008000000000000000e+03 3.525645885290815645e-24 -3.529744237594577603e-24 -1.008250000000000000e+03 1.076455252807392621e-24 7.992943720051917683e-24 -1.008500000000000000e+03 -8.078986368403958692e-24 -3.810641047610688821e-24 -1.008750000000000000e+03 3.641430797220151328e-24 1.196352167170134739e-23 -1.009000000000000000e+03 7.881861284225424069e-24 7.474292665443469960e-24 -1.009250000000000000e+03 -3.450228857926908522e-24 4.815844677845437198e-24 -1.009500000000000000e+03 -3.896699003480162728e-24 5.579368223393386042e-24 -1.009750000000000000e+03 3.704576632726887729e-24 6.026688404071216524e-24 -1.010000000000000000e+03 4.353061820392535962e-24 -3.876001922203942520e-24 -1.010250000000000000e+03 -5.659485320457469827e-24 1.199368773876841341e-23 -1.010500000000000000e+03 3.766197025200683037e-24 2.246736422823332949e-24 -1.010750000000000000e+03 3.070950671086257251e-24 3.355926239075919220e-24 -1.011000000000000000e+03 5.754007425495400907e-24 3.220879752293602763e-24 -1.011250000000000000e+03 -3.332063064670847390e-24 -4.294998894902349472e-24 -1.011500000000000000e+03 -2.614225002241768806e-24 8.391079724244336634e-24 -1.011750000000000000e+03 -4.408790810184766423e-24 1.803397639596938073e-24 -1.012000000000000000e+03 -6.958003760793709173e-25 3.077693706840343180e-24 -1.012250000000000000e+03 1.426048874312646593e-25 6.910414120005168997e-24 -1.012500000000000000e+03 1.713820438636853544e-24 -8.270182764363803655e-24 -1.012750000000000000e+03 -5.008634747477604707e-25 -9.375658005774543786e-24 -1.013000000000000000e+03 -2.403390497473412267e-24 4.963279722953448014e-24 -1.013250000000000000e+03 -4.626148053424193255e-25 -2.767438752005197451e-24 -1.013500000000000000e+03 -5.178638078809220472e-24 4.030797456869569285e-25 -1.013750000000000000e+03 1.776393123689361253e-24 -6.835356025683228394e-24 -1.014000000000000000e+03 -7.197455249602481962e-24 -2.179419776411241142e-24 -1.014250000000000000e+03 -5.376470780033447865e-25 -1.851044595651679198e-24 -1.014500000000000000e+03 6.233618610173273291e-24 3.015819148180322243e-24 -1.014750000000000000e+03 -1.935234536516639771e-24 -2.720096755279614677e-24 -1.015000000000000000e+03 -3.139986410522154110e-25 -9.804915660553421205e-24 -1.015250000000000000e+03 -1.451946041566946180e-24 -5.530980616559476548e-24 -1.015500000000000000e+03 -8.762658907723924988e-24 1.075257051850632734e-24 -1.015750000000000000e+03 4.054949340845800498e-24 2.618368893953848387e-24 -1.016000000000000000e+03 -4.773878853820303734e-24 6.667961229019181768e-24 -1.016250000000000000e+03 2.345327353875251812e-24 -1.251685326639455403e-24 -1.016500000000000000e+03 1.463138880277495860e-23 -4.731950152270826451e-24 -1.016750000000000000e+03 9.364458231160892276e-25 -7.125886186929431789e-24 -1.017000000000000000e+03 1.067628845374715455e-23 2.895922291408628708e-24 -1.017250000000000000e+03 9.893925209821643299e-24 -4.066387207125650360e-24 -1.017500000000000000e+03 -9.998555633150753802e-24 -1.148760257205928411e-24 -1.017750000000000000e+03 -9.567469492076897240e-24 -2.572734553644875895e-24 -1.018000000000000000e+03 -7.543118921590680225e-24 -7.732484037526376974e-25 -1.018250000000000000e+03 -9.940375299574577559e-25 -2.383970308232385152e-24 -1.018500000000000000e+03 -6.084512979627003257e-24 1.856357540292743789e-24 -1.018750000000000000e+03 -9.990709350610574930e-24 3.302370651735536073e-24 -1.019000000000000000e+03 -1.196974955689815553e-24 9.131936600348933344e-25 -1.019250000000000000e+03 -2.336855274623414056e-24 -3.480475760686803414e-24 -1.019500000000000000e+03 5.953115360152002668e-24 -5.111720671340394463e-24 -1.019750000000000000e+03 -2.407064715787792672e-24 5.311923270408679641e-24 -1.020000000000000000e+03 1.104196542490144590e-23 -1.005061544648904104e-24 -1.020250000000000000e+03 -3.919444406866272613e-24 -8.678889773918455378e-24 -1.020500000000000000e+03 8.086133453769264102e-25 2.560349783509494008e-24 -1.020750000000000000e+03 5.598498803900676898e-24 -8.653756907364639667e-24 -1.021000000000000000e+03 5.588190050036092208e-24 -3.884933033274398332e-24 -1.021250000000000000e+03 -2.018389149977776243e-24 1.198735949213604032e-24 -1.021500000000000000e+03 6.607859121593548316e-25 3.862865952730716628e-24 -1.021750000000000000e+03 3.462894634095271885e-24 -6.602987539803254309e-24 -1.022000000000000000e+03 -7.367801341985989741e-25 1.114749812034464441e-24 -1.022250000000000000e+03 -2.277524941185818545e-24 -3.458032592540362575e-24 -1.022500000000000000e+03 5.518962147837261804e-24 -4.582030109256513697e-24 -1.022750000000000000e+03 6.589671619936960511e-24 -3.129592319094311174e-24 -1.023000000000000000e+03 -6.227180744635119392e-24 -2.157013881715830248e-25 -1.023250000000000000e+03 3.296684872541242995e-24 -6.199640098485619069e-24 -1.023500000000000000e+03 3.805054748593275552e-24 2.371101255499847965e-24 -1.023750000000000000e+03 1.472078895748255726e-24 -2.986814564356077731e-25 -1.024000000000000000e+03 5.434636354367770401e-24 5.880226322818826749e-24 -1.024250000000000000e+03 -3.558945393655686959e-24 1.211814713342631798e-25 -1.024500000000000000e+03 4.958180445035721949e-24 -2.359874566649775330e-24 -1.024750000000000000e+03 -4.074228056395444170e-24 5.932675770829252849e-24 -1.025000000000000000e+03 -6.293082281783833600e-25 -7.037165105523274399e-24 -1.025250000000000000e+03 -1.675020016264956895e-24 -4.328152312431487406e-25 -1.025500000000000000e+03 3.022615547070502127e-24 -1.422555122350981806e-23 -1.025750000000000000e+03 -1.009658765165175818e-23 -7.177891723602541676e-24 -1.026000000000000000e+03 -5.359582358701708944e-24 2.746756576682933649e-24 -1.026250000000000000e+03 1.837371616615464160e-24 1.273909409043404783e-24 -1.026500000000000000e+03 -9.050709222926415512e-26 -2.016345280523757953e-24 -1.026750000000000000e+03 -5.811965325356272160e-24 3.175066570235207094e-24 -1.027000000000000000e+03 -5.743043931459792266e-24 -1.114839192781646983e-24 -1.027250000000000000e+03 1.097460365386459043e-24 9.038651233530088130e-24 -1.027500000000000000e+03 -1.397980659073963635e-24 5.837218775129284720e-24 -1.027750000000000000e+03 7.774064747206250343e-24 -3.320916023710016316e-24 -1.028000000000000000e+03 -4.124948177984101189e-24 6.406098081898533865e-24 -1.028250000000000000e+03 1.440337423419686524e-24 -8.270156677242674264e-25 -1.028500000000000000e+03 1.217846477584702383e-25 3.992682778430395823e-24 -1.028750000000000000e+03 1.196557929326506532e-23 3.718548623891304711e-24 -1.029000000000000000e+03 3.100471943921336661e-24 -2.670154792770888833e-24 -1.029250000000000000e+03 -3.479606997970791345e-24 -2.579934965729225172e-24 -1.029500000000000000e+03 -7.966923942768816385e-25 -1.437738551843230519e-24 -1.029750000000000000e+03 3.676888672378362521e-24 -3.955518589020302887e-24 -1.030000000000000000e+03 3.722879110237403347e-24 4.036178959561291374e-24 -1.030250000000000000e+03 -9.768865402437638539e-26 1.459171054896676458e-23 -1.030500000000000000e+03 1.845713877409308209e-24 -9.151447709865000197e-24 -1.030750000000000000e+03 -1.912736981132088898e-24 3.479333526531525963e-24 -1.031000000000000000e+03 -6.190298092421253358e-25 -2.762280734539518203e-24 -1.031250000000000000e+03 4.828256768498938703e-24 6.419090745823647622e-24 -1.031500000000000000e+03 1.250369447045199464e-23 2.319883287741534407e-24 -1.031750000000000000e+03 -1.685058530439201222e-24 3.240876932521009706e-24 -1.032000000000000000e+03 -3.516546104238291425e-24 -8.416711796417348720e-25 -1.032250000000000000e+03 -2.290033407258169242e-24 1.128350977957946281e-24 -1.032500000000000000e+03 -3.348677945849017130e-24 -1.270026215435275843e-24 -1.032750000000000000e+03 -1.833394825251539590e-24 -2.651176197145969258e-24 -1.033000000000000000e+03 -6.135934163735341694e-24 4.055812880621401562e-25 -1.033250000000000000e+03 -5.071274575163488262e-25 3.669493506665931782e-24 -1.033500000000000000e+03 -2.023167669232083276e-24 2.235328811933841419e-24 -1.033750000000000000e+03 -7.244534145689407706e-24 9.123103177536109093e-25 -1.034000000000000000e+03 -5.679164424340848862e-24 -2.885272709338712131e-24 -1.034250000000000000e+03 5.270946142249977652e-24 -4.153068072591079758e-24 -1.034500000000000000e+03 5.256493031105807830e-24 1.026331394793314069e-23 -1.034750000000000000e+03 3.365773819547893569e-25 8.279761627350136251e-25 -1.035000000000000000e+03 -1.410726706694349434e-24 4.972733689607600109e-24 -1.035250000000000000e+03 -2.690475702967327460e-25 -4.282146231542497354e-24 -1.035500000000000000e+03 2.992301987159312953e-24 -8.204151681112682627e-24 -1.035750000000000000e+03 -3.192670252387086416e-24 8.139137975518535330e-24 -1.036000000000000000e+03 1.496078438075529594e-24 8.568258739745845254e-24 -1.036250000000000000e+03 1.379084661749919560e-24 3.385971709080315884e-26 -1.036500000000000000e+03 -3.554701273552681308e-24 -1.026696611582478682e-23 -1.036750000000000000e+03 -3.990411936572800286e-24 -2.009539193748053529e-24 -1.037000000000000000e+03 5.566275198770815298e-24 -6.190875277044672320e-24 -1.037250000000000000e+03 -8.397384197408623285e-24 -7.265501293592520167e-24 -1.037500000000000000e+03 9.451380333320659990e-24 1.859958493076459649e-24 -1.037750000000000000e+03 -1.304708967875632227e-23 7.590827435681282247e-24 -1.038000000000000000e+03 -1.461952612473186775e-23 -2.924484948921058180e-24 -1.038250000000000000e+03 -5.410249362077723940e-25 -2.023553501409354173e-24 -1.038500000000000000e+03 1.273389853229184980e-23 -2.436035156560577623e-24 -1.038750000000000000e+03 3.539690383577816598e-24 -5.782717520620125815e-25 -1.039000000000000000e+03 -8.264100761078072014e-25 -4.038639714690523654e-24 -1.039250000000000000e+03 1.146894626332324770e-24 3.693196942341357273e-24 -1.039500000000000000e+03 8.822365169703910183e-24 -4.070474352216291027e-24 -1.039750000000000000e+03 4.041484218161406971e-24 -3.701958688097813755e-24 -1.040000000000000000e+03 -1.291358427962929737e-24 -5.310311169163838456e-24 -1.040250000000000000e+03 -1.370355285703953753e-24 5.138848820671119388e-24 -1.040500000000000000e+03 9.756387922007331841e-25 -6.488272301627988933e-24 -1.040750000000000000e+03 -5.741970462989484723e-24 -1.332956336672978933e-23 -1.041000000000000000e+03 9.697759814627293535e-25 1.307762645451310806e-23 -1.041250000000000000e+03 -3.806962202137807309e-24 6.779704849531427183e-24 -1.041500000000000000e+03 1.994076109718975598e-24 -5.125691655849949780e-24 -1.041750000000000000e+03 1.810770816473518809e-24 1.142256622471479329e-24 -1.042000000000000000e+03 -1.203798622335360882e-23 -5.588747290176312451e-24 -1.042250000000000000e+03 6.436356617337243613e-24 -1.057651367767284845e-23 -1.042500000000000000e+03 4.441382303292276556e-24 2.001682314199477987e-24 -1.042750000000000000e+03 1.204022991349108776e-23 6.829654235062090237e-24 -1.043000000000000000e+03 4.868578170938598094e-24 8.989572108415648183e-24 -1.043250000000000000e+03 2.508999922680909555e-24 4.494656625561574306e-24 -1.043500000000000000e+03 -8.282464747294283513e-25 5.292921808623676329e-25 -1.043750000000000000e+03 -6.195849499024229873e-24 1.150417614085225386e-23 -1.044000000000000000e+03 -3.181199840663823752e-24 -2.004284542476239492e-25 -1.044250000000000000e+03 3.750380558516095839e-24 2.846754803803760651e-25 -1.044500000000000000e+03 -8.184742785166754881e-24 4.869636982206517535e-25 -1.044750000000000000e+03 -5.962031099456746798e-25 -1.610017961971674818e-24 -1.045000000000000000e+03 -5.501128920790199223e-26 6.663850940664447637e-24 -1.045250000000000000e+03 -7.219132370780973196e-24 -5.292165567610297278e-24 -1.045500000000000000e+03 1.217613504002811557e-25 -4.364128527305706549e-24 -1.045750000000000000e+03 4.646049912519603447e-24 6.003563925888839808e-24 -1.046000000000000000e+03 -1.530330306145020447e-24 -3.302193093378773899e-24 -1.046250000000000000e+03 -5.073400248918042142e-24 -1.523706894377874150e-23 -1.046500000000000000e+03 8.085502498387338569e-24 -9.332067289394845661e-24 -1.046750000000000000e+03 -1.385907775621484078e-23 7.282866412163292049e-24 -1.047000000000000000e+03 -5.107434017576589066e-24 6.147925146674260111e-24 -1.047250000000000000e+03 -4.144608601949484241e-25 -3.795173944192920180e-24 -1.047500000000000000e+03 -2.775960278702704745e-25 -1.026123544493885255e-24 -1.047750000000000000e+03 6.182385499172486939e-24 2.518342243835995460e-25 -1.048000000000000000e+03 9.537862945174424821e-26 -4.605308138900293760e-24 -1.048250000000000000e+03 -2.428008201546406265e-24 -2.247856530116386008e-24 -1.048500000000000000e+03 -1.646688264182182167e-24 -5.550756199289863774e-24 -1.048750000000000000e+03 -5.575722977798563027e-24 6.101038169932896353e-24 -1.049000000000000000e+03 -3.127654756678202167e-24 4.082534037197753664e-24 -1.049250000000000000e+03 8.459665262499571082e-25 2.598889920779766647e-24 -1.049500000000000000e+03 9.445959625493149876e-24 8.769082366469411419e-25 -1.049750000000000000e+03 6.421273490589335323e-24 1.312167709157799588e-24 -1.050000000000000000e+03 -7.789442498527693268e-25 -7.385311918355612614e-24 -1.050250000000000000e+03 -2.162617542997195226e-24 -6.133980419855973369e-24 -1.050500000000000000e+03 -1.575540936170762926e-24 -1.082170746679275537e-24 -1.050750000000000000e+03 1.003456308214343494e-23 -8.266438806701461896e-25 -1.051000000000000000e+03 7.779478939124162900e-24 -5.507081277649372169e-24 -1.051250000000000000e+03 3.014344219685041557e-24 -3.304031376149463167e-24 -1.051500000000000000e+03 4.506195498939849534e-24 -8.571548808791882887e-24 -1.051750000000000000e+03 -2.406956393741672474e-24 3.766398963691148414e-24 -1.052000000000000000e+03 7.970871683019307720e-25 1.849833075693472225e-24 -1.052250000000000000e+03 3.253297031544167295e-24 -3.718430760747781708e-24 -1.052500000000000000e+03 1.020202690402732041e-23 5.203969521481687814e-24 -1.052750000000000000e+03 -3.411644295081727200e-24 4.529263056589346420e-24 -1.053000000000000000e+03 -5.661644457553083584e-24 -1.618019224922781625e-24 -1.053250000000000000e+03 -5.124147860989079705e-24 2.208295223378473633e-25 -1.053500000000000000e+03 -2.935954214057997829e-24 -2.705618169517636084e-24 -1.053750000000000000e+03 6.488583903970539600e-24 -3.896823706548736244e-24 -1.054000000000000000e+03 2.615193281728438265e-24 4.400140261953822750e-24 -1.054250000000000000e+03 -2.811448729018290438e-24 2.778968574292360208e-25 -1.054500000000000000e+03 -7.422887975439786537e-24 6.221985134001135901e-24 -1.054750000000000000e+03 2.399282457096938945e-24 -1.522061742000225478e-24 -1.055000000000000000e+03 -2.160376891548660429e-24 -5.250418790767993797e-24 -1.055250000000000000e+03 5.064482519535451038e-24 -5.463136691529050728e-24 -1.055500000000000000e+03 9.107357388131080177e-25 -1.244290454656358642e-24 -1.055750000000000000e+03 4.311406815648594708e-24 2.983971431697622291e-24 -1.056000000000000000e+03 3.020522068506974653e-24 -4.688509365148214555e-24 -1.056250000000000000e+03 -4.350913244293940704e-24 4.933857252827623993e-24 -1.056500000000000000e+03 5.213817237908008181e-24 1.505643179957770375e-23 -1.056750000000000000e+03 4.284691042531836530e-24 -9.222309621016191148e-25 -1.057000000000000000e+03 2.719595020822018486e-24 6.978129034023541113e-24 -1.057250000000000000e+03 6.372343511640863305e-24 -2.030129591298820635e-24 -1.057500000000000000e+03 1.611318523276563063e-25 -1.489630089333631836e-24 -1.057750000000000000e+03 -5.111730216917025840e-24 9.603594651185448288e-25 -1.058000000000000000e+03 -9.572117654634297668e-24 -1.141043257864595385e-24 -1.058250000000000000e+03 2.341027843637986341e-24 -2.064336843114124006e-24 -1.058500000000000000e+03 -3.188552854430080601e-24 7.069676253637860311e-24 -1.058750000000000000e+03 -9.993446211394266024e-24 -4.763565409423854456e-24 -1.059000000000000000e+03 5.842417790122135619e-24 6.607908339765271724e-24 -1.059250000000000000e+03 -2.022867070747225139e-24 -7.253767561645778751e-24 -1.059500000000000000e+03 9.858372586279657519e-24 2.660168408073709052e-24 -1.059750000000000000e+03 -2.437622773573596827e-24 2.638988012564625696e-24 -1.060000000000000000e+03 1.927993056324472562e-24 -1.058503847365541727e-24 -1.060250000000000000e+03 2.210203494992522517e-24 -5.699588377222946773e-24 -1.060500000000000000e+03 2.643570673847892211e-24 -4.234709054981901559e-24 -1.060750000000000000e+03 -3.866909424554207214e-24 5.189725049840438505e-24 -1.061000000000000000e+03 -1.891022949542653440e-24 -9.032296888171457237e-24 -1.061250000000000000e+03 4.685721450936530125e-24 2.702456066800535110e-24 -1.061500000000000000e+03 2.056833812383699264e-25 4.608698524246992606e-24 -1.061750000000000000e+03 3.260359822823229942e-24 4.270907270271947389e-24 -1.062000000000000000e+03 -1.005838465760255613e-23 1.424451836170676200e-24 -1.062250000000000000e+03 -6.203216588934964076e-24 6.394238037204347072e-24 -1.062500000000000000e+03 4.310378729447164104e-25 1.995649172455484124e-24 -1.062750000000000000e+03 5.601857074189059957e-24 5.246125621188008112e-24 -1.063000000000000000e+03 1.071623645833290745e-23 -1.551916988031577182e-24 -1.063250000000000000e+03 -6.796041185494856860e-24 -9.261004830858191065e-25 -1.063500000000000000e+03 -5.025697318506801594e-24 -1.022015963806413462e-23 -1.063750000000000000e+03 -1.284900554737109217e-24 -1.494712966157927392e-24 -1.064000000000000000e+03 1.859750150248044456e-24 -9.457695545286514778e-24 -1.064250000000000000e+03 7.836511678937597667e-25 -3.154805694319495949e-24 -1.064500000000000000e+03 2.184410627386789809e-24 6.156416575675012876e-24 -1.064750000000000000e+03 7.423449312363005307e-24 2.382663774595587358e-24 -1.065000000000000000e+03 -1.514344034376277250e-24 -4.217049223948107606e-24 -1.065250000000000000e+03 1.138402922675989179e-24 -5.933852735540086815e-24 -1.065500000000000000e+03 -2.433594863569216692e-24 -1.567612292265759502e-23 -1.065750000000000000e+03 -8.362528109788291856e-24 -3.091895974528061343e-24 -1.066000000000000000e+03 -2.675476806332356349e-24 -1.746577223162838626e-24 -1.066250000000000000e+03 2.308565050534375250e-24 -4.198980044932117550e-24 -1.066500000000000000e+03 2.109799022512487629e-24 -6.109180962068520094e-24 -1.066750000000000000e+03 5.208021897321089998e-24 -4.988878664643996710e-24 -1.067000000000000000e+03 5.448230927127647812e-25 8.776915075473147840e-25 -1.067250000000000000e+03 4.107539628273276483e-24 -1.813988009155156074e-24 -1.067500000000000000e+03 -4.105993364066342863e-24 -2.973066512204055688e-24 -1.067750000000000000e+03 -6.127617547701630859e-24 5.444282707912773971e-25 -1.068000000000000000e+03 2.023436615808153256e-24 -4.107635645466889519e-25 -1.068250000000000000e+03 -3.071514463391068183e-24 -3.470457332197584717e-24 -1.068500000000000000e+03 7.993361759092636036e-24 -1.693365934556054627e-24 -1.068750000000000000e+03 1.033077741303903175e-24 -6.065619499177538775e-24 -1.069000000000000000e+03 7.857143661905494359e-24 3.692032543836987933e-24 -1.069250000000000000e+03 1.215301108205769182e-24 -2.005498529460163139e-24 -1.069500000000000000e+03 1.113420349081771841e-24 -9.072625902829451472e-24 -1.069750000000000000e+03 3.799511815625182666e-24 -4.288268024538170704e-24 -1.070000000000000000e+03 -1.006117306652805875e-23 3.483508505348912290e-24 -1.070250000000000000e+03 -4.996698876309045396e-24 -6.152337222369255866e-24 -1.070500000000000000e+03 -1.249192485650449755e-23 -8.829588703597857452e-24 -1.070750000000000000e+03 3.312743621513596092e-24 9.536804766523262689e-25 -1.071000000000000000e+03 -4.074629809977198271e-24 -1.115373299577718244e-24 -1.071250000000000000e+03 3.699938165319710928e-24 -1.149910618898147168e-23 -1.071500000000000000e+03 3.372533873698244582e-24 -9.345030236388870686e-24 -1.071750000000000000e+03 2.200209340712592834e-24 2.724960421669402305e-24 -1.072000000000000000e+03 -8.779819558219504435e-25 -6.599041596539959322e-24 -1.072250000000000000e+03 -7.373908986611644131e-24 -8.182066835967926531e-24 -1.072500000000000000e+03 6.044141996044378207e-24 4.259179837639176150e-24 -1.072750000000000000e+03 -5.826762279019216426e-25 3.945735778851195024e-24 -1.073000000000000000e+03 5.346671630212434941e-24 2.563140957448665309e-24 -1.073250000000000000e+03 -1.463275118188817375e-24 -5.256143555045151769e-24 -1.073500000000000000e+03 -7.383003988799299552e-24 -2.103092890553485924e-24 -1.073750000000000000e+03 7.440614537565891324e-24 -6.917701036534251489e-24 -1.074000000000000000e+03 -6.648715296975582480e-24 8.075606087466841400e-24 -1.074250000000000000e+03 6.103980796464136506e-24 -1.063846241526366707e-24 -1.074500000000000000e+03 -1.098916214792586077e-23 -4.172004774373381233e-24 -1.074750000000000000e+03 3.757219303505107954e-24 2.420352593585767317e-24 -1.075000000000000000e+03 -1.167965698049695336e-23 7.722407987489097374e-24 -1.075250000000000000e+03 -1.415467327690372829e-24 -3.181647828661453507e-24 -1.075500000000000000e+03 -7.141699496018392677e-24 8.065857251921570161e-25 -1.075750000000000000e+03 -1.084688488568151626e-24 -2.021885602447009126e-24 -1.076000000000000000e+03 -1.430091042662242385e-24 3.594077679979467034e-24 -1.076250000000000000e+03 -3.060647723639497714e-24 -3.840499462605958476e-24 -1.076500000000000000e+03 2.841975194752176729e-24 9.659576066364620580e-25 -1.076750000000000000e+03 -7.161849019127425982e-24 -8.613387752042603402e-24 -1.077000000000000000e+03 -1.343635746928196567e-23 -2.954174726706818952e-24 -1.077250000000000000e+03 2.253511597987385472e-24 6.691838122043056096e-24 -1.077500000000000000e+03 -2.729591041392330118e-25 3.212178197855558422e-24 -1.077750000000000000e+03 -5.201894828873790272e-24 -6.630691731339363638e-25 -1.078000000000000000e+03 2.710536659830934446e-24 3.178562539432026427e-24 -1.078250000000000000e+03 2.813437027814010722e-24 1.511280989903247608e-23 -1.078500000000000000e+03 7.089944787697213911e-24 6.263707327055285899e-24 -1.078750000000000000e+03 1.375732359309442125e-24 -1.111148933179774320e-23 -1.079000000000000000e+03 -1.427750445145673002e-24 2.385303707433317508e-24 -1.079250000000000000e+03 3.466894326578163518e-24 7.378588880367686153e-24 -1.079500000000000000e+03 -4.177880912649417959e-24 1.341322476834931630e-24 -1.079750000000000000e+03 -6.786030750046059595e-24 -7.070847479530704176e-24 -1.080000000000000000e+03 -1.636717315382357362e-24 8.766723932246795393e-24 -1.080250000000000000e+03 8.606382167678468183e-25 3.900006866911841880e-24 -1.080500000000000000e+03 -9.999413435931769837e-24 -5.645121833768369729e-25 -1.080750000000000000e+03 3.690849858251474608e-24 7.214588789097652649e-25 -1.081000000000000000e+03 -2.845033309303108350e-24 -1.648669999301689157e-24 -1.081250000000000000e+03 -1.679996556191182569e-24 7.896012629868700752e-24 -1.081500000000000000e+03 5.812030542742685856e-24 7.837814205926498453e-25 -1.081750000000000000e+03 9.404836605824855180e-25 6.289277475697344732e-24 -1.082000000000000000e+03 2.916703123744530614e-24 -4.780107701315915995e-24 -1.082250000000000000e+03 1.898513761722147331e-24 -9.608930960391912832e-24 -1.082500000000000000e+03 3.035008432602448234e-24 2.389514187818574693e-24 -1.082750000000000000e+03 6.913545453127628639e-24 1.044428529661900794e-24 -1.083000000000000000e+03 -6.885798935301901330e-24 3.472766293497685818e-24 -1.083250000000000000e+03 5.674159197405968569e-24 -3.925172261330731546e-24 -1.083500000000000000e+03 -4.042469655757330536e-24 1.081483428240204969e-23 -1.083750000000000000e+03 -6.332167758173187718e-25 6.164939037182214037e-24 -1.084000000000000000e+03 -3.346862055459873584e-24 -3.579636474496229362e-24 -1.084250000000000000e+03 4.676417422268389231e-24 -2.180234041798785458e-24 -1.084500000000000000e+03 -1.456008403562990855e-23 4.807205824934049783e-24 -1.084750000000000000e+03 1.586086390538204635e-24 -1.574761735729409379e-24 -1.085000000000000000e+03 -1.906894938483682638e-24 2.037828728162414218e-24 -1.085250000000000000e+03 1.042742103302804015e-24 4.636124027284701037e-25 -1.085500000000000000e+03 2.160785536189196000e-25 -1.031273175819581453e-23 -1.085750000000000000e+03 -1.240883224868516870e-23 4.866232364791682132e-24 -1.086000000000000000e+03 5.408097227754142566e-24 4.048549057007918689e-24 -1.086250000000000000e+03 -9.693653632546239608e-24 3.979826453257440444e-24 -1.086500000000000000e+03 -9.410546198058553067e-24 2.692331077290951596e-24 -1.086750000000000000e+03 5.102440580991103169e-24 2.624757014771992131e-24 -1.087000000000000000e+03 1.225054993424475122e-23 -4.321300748333511730e-24 -1.087250000000000000e+03 -1.011298663481339385e-23 6.091986943685660028e-24 -1.087500000000000000e+03 -6.783139209110019528e-25 7.886557022543434689e-24 -1.087750000000000000e+03 -8.331500106740053916e-24 -4.606330749114819214e-24 -1.088000000000000000e+03 3.898691622314444816e-24 -3.794448664350191533e-24 -1.088250000000000000e+03 2.203494935314500355e-24 -5.771743296782335605e-24 -1.088500000000000000e+03 3.658992526341245361e-24 -3.312380684180191907e-24 -1.088750000000000000e+03 9.717265597483306633e-25 -9.913456705622632570e-24 -1.089000000000000000e+03 3.207146003798838344e-25 -1.948676377050051784e-24 -1.089250000000000000e+03 -1.144386755025397794e-25 -4.802673933348764383e-24 -1.089500000000000000e+03 -1.008389357927428986e-24 1.084717090359290054e-23 -1.089750000000000000e+03 -3.895997884179061294e-24 7.654063251225014258e-24 -1.090000000000000000e+03 1.654245086991995098e-25 -4.719471244238627852e-24 -1.090250000000000000e+03 -2.290127004444142517e-24 -5.369954607699450270e-24 -1.090500000000000000e+03 6.580542297285380013e-24 -1.363635903833302799e-23 -1.090750000000000000e+03 -2.211294665972663174e-26 -8.311583530501360257e-24 -1.091000000000000000e+03 -4.130038533533223578e-24 -3.884073331474138081e-24 -1.091250000000000000e+03 -3.258471337626619515e-25 -4.096814419928200226e-24 -1.091500000000000000e+03 -7.918764473860275536e-24 1.858468442524555631e-24 -1.091750000000000000e+03 -4.416582323113878201e-24 -3.687748287304657182e-24 -1.092000000000000000e+03 7.197285943622235899e-24 4.322827461620773260e-24 -1.092250000000000000e+03 -2.255003579123362416e-24 -2.064440163933554810e-24 -1.092500000000000000e+03 4.361956245466237935e-24 -4.012572103710866440e-24 -1.092750000000000000e+03 7.685043481803614426e-24 1.345098967340769427e-24 -1.093000000000000000e+03 -6.043194500491901018e-24 -4.996849827702698375e-24 -1.093250000000000000e+03 5.097628013512076291e-24 5.136105102350111962e-24 -1.093500000000000000e+03 -3.558167395148632346e-24 6.561712119102042812e-24 -1.093750000000000000e+03 -2.324127192794231509e-24 -7.004994236551515488e-24 -1.094000000000000000e+03 -7.650729212891142570e-24 -9.740694718356331380e-24 -1.094250000000000000e+03 2.510907297568267588e-24 -3.522446102412769896e-24 -1.094500000000000000e+03 -2.404603286629037644e-24 -2.162552223855798783e-24 -1.094750000000000000e+03 -1.447299694718112738e-24 -2.689901180563116999e-24 -1.095000000000000000e+03 -2.758769959461789323e-24 -1.050845938917389729e-23 -1.095250000000000000e+03 6.115741501694269160e-24 4.367029810153243518e-24 -1.095500000000000000e+03 1.327548162012376908e-23 1.888679254453829836e-24 -1.095750000000000000e+03 -4.568870570062190778e-25 3.909468912683953792e-24 -1.096000000000000000e+03 -2.107629278882789669e-24 1.251366993566967201e-24 -1.096250000000000000e+03 -1.352236565744674887e-24 -1.179788188889130691e-24 -1.096500000000000000e+03 -2.503133379196791282e-24 -4.784275440110532285e-24 -1.096750000000000000e+03 -4.620485392475235647e-24 1.098933568801886747e-23 -1.097000000000000000e+03 1.307879554129285421e-23 4.653262730918791191e-24 -1.097250000000000000e+03 9.443446098919527202e-24 -5.757668859453913893e-24 -1.097500000000000000e+03 -1.791214238542218968e-24 -1.241256269447213607e-24 -1.097750000000000000e+03 -6.449141061543447538e-24 -1.367973365479220016e-23 -1.098000000000000000e+03 -5.327885805313891237e-24 1.702560177805828751e-24 -1.098250000000000000e+03 -2.821892508242797173e-24 5.731137553621935959e-24 -1.098500000000000000e+03 -7.112949202587197806e-24 -4.904643889562121161e-24 -1.098750000000000000e+03 -2.681917587224196810e-24 -5.176957583990759566e-24 -1.099000000000000000e+03 -7.623112460171800452e-24 6.336344902181126429e-24 -1.099250000000000000e+03 -5.862533209178292167e-24 6.562025740248235042e-24 -1.099500000000000000e+03 -8.194641182752889818e-24 -2.318797029252478592e-24 -1.099750000000000000e+03 -1.047189183254379659e-24 -1.010760877014657714e-24 -1.100000000000000000e+03 -4.302629034021710601e-24 -2.547398305929624578e-25 -1.100250000000000000e+03 -8.389796972395509815e-24 -2.916141016416290576e-24 -1.100500000000000000e+03 -4.633733081491049042e-24 1.274957895139066426e-24 -1.100750000000000000e+03 4.584720264233441102e-24 7.097510195306978870e-24 -1.101000000000000000e+03 1.231125039183377704e-24 1.306827784617117150e-24 -1.101250000000000000e+03 3.874642460388804466e-25 8.395039741498025495e-24 -1.101500000000000000e+03 -4.380431982319118913e-24 2.110438487344883153e-24 -1.101750000000000000e+03 1.005469332563553316e-23 2.809447439530441072e-24 -1.102000000000000000e+03 -3.684882274639741191e-24 -1.706643441956418220e-24 -1.102250000000000000e+03 9.134140872245142553e-25 -1.329398655463382563e-24 -1.102500000000000000e+03 -1.278716296757691606e-23 -3.629256504008711523e-24 -1.102750000000000000e+03 9.366476540425848828e-24 -4.574402428576216189e-24 -1.103000000000000000e+03 1.872465566980031410e-24 2.757049329035758357e-24 -1.103250000000000000e+03 5.795535504687107779e-25 1.136959358824549830e-23 -1.103500000000000000e+03 -1.131000927731507084e-23 1.286547939541493071e-23 -1.103750000000000000e+03 -3.576192644611883564e-24 -7.505256562567371228e-25 -1.104000000000000000e+03 2.447068705778070075e-24 5.727025289993826419e-24 -1.104250000000000000e+03 1.212861865350940364e-23 -5.252382074671354180e-24 -1.104500000000000000e+03 -3.690707086448395732e-24 1.780107045865527461e-24 -1.104750000000000000e+03 7.065585420420510769e-24 -3.937268962763634132e-24 -1.105000000000000000e+03 -1.616264361326548971e-24 -5.256823971606977450e-24 -1.105250000000000000e+03 -3.079827180845767992e-24 2.479449687536262648e-24 -1.105500000000000000e+03 5.261027629310405696e-24 1.023032816078699565e-23 -1.105750000000000000e+03 -1.230165020899216434e-23 4.070325432935976765e-24 -1.106000000000000000e+03 5.401001018487869339e-24 -1.552487515694248055e-25 -1.106250000000000000e+03 -4.946321475598753332e-24 -4.130319893936550751e-24 -1.106500000000000000e+03 1.003131381842097062e-24 -5.165524145965204468e-24 -1.106750000000000000e+03 2.747292104422127271e-24 -3.283105973395312320e-24 -1.107000000000000000e+03 -6.372210722475751354e-24 -1.028143368271116130e-23 -1.107250000000000000e+03 -1.608939006074945076e-24 -8.504366000849254241e-24 -1.107500000000000000e+03 6.036760082957113020e-24 -6.981812671928596693e-24 -1.107750000000000000e+03 5.065900636027560130e-24 6.022149503902119120e-25 -1.108000000000000000e+03 -4.886663971568525801e-24 7.387540889863406687e-24 -1.108250000000000000e+03 -6.649189088652278318e-24 -4.690388568478989325e-24 -1.108500000000000000e+03 8.647426133741547392e-26 -2.713267544899039982e-24 -1.108750000000000000e+03 3.067465220903036503e-24 1.707477578023150773e-24 -1.109000000000000000e+03 8.384751573596172684e-24 6.218136651088999678e-24 -1.109250000000000000e+03 -4.395537349108144316e-24 8.135668581468921541e-24 -1.109500000000000000e+03 -1.873450078495364239e-24 3.065666967487768301e-24 -1.109750000000000000e+03 7.627723063250766401e-24 1.357979011701393220e-24 -1.110000000000000000e+03 3.159456656966308874e-24 2.700489339469795276e-24 -1.110250000000000000e+03 6.064302439585029450e-24 1.081134309772785082e-23 -1.110500000000000000e+03 -7.440337731775821147e-24 -3.202431981466489544e-24 -1.110750000000000000e+03 1.418121205324598678e-23 -5.776504160816874019e-24 -1.111000000000000000e+03 5.439314365740693233e-24 -3.716639753698782605e-24 -1.111250000000000000e+03 -5.921583775082615468e-24 4.417327972344587391e-24 -1.111500000000000000e+03 1.119964497169081976e-23 -9.781883765409267477e-25 -1.111750000000000000e+03 -1.265823857108828435e-24 2.155973439497409582e-24 -1.112000000000000000e+03 -1.054058140705137592e-24 2.596711653599896607e-24 -1.112250000000000000e+03 6.441838806682106670e-24 -7.371419480440521182e-25 -1.112500000000000000e+03 1.134133555229329710e-23 1.966811926959971373e-24 -1.112750000000000000e+03 7.574622070234020558e-24 -1.308150752801503254e-24 -1.113000000000000000e+03 3.118964677297722026e-24 5.775139923665052665e-24 -1.113250000000000000e+03 3.442249295751771994e-24 2.648827864225011477e-24 -1.113500000000000000e+03 -2.695679262895896085e-24 -7.903387898722097143e-24 -1.113750000000000000e+03 -1.680419379059907623e-25 -2.249136099111705606e-24 -1.114000000000000000e+03 -1.067143890062168533e-23 -3.227176315012338395e-24 -1.114250000000000000e+03 1.122278753946437615e-23 -7.215724092241233393e-24 -1.114500000000000000e+03 -1.278941259817644066e-23 5.686459652947142682e-24 -1.114750000000000000e+03 3.137747269305079788e-24 -3.276389235046977154e-24 -1.115000000000000000e+03 9.570394500030289828e-24 -7.481727032229976921e-24 -1.115250000000000000e+03 1.742123785195489966e-23 2.985080096027431372e-24 -1.115500000000000000e+03 3.973513252022771028e-24 -1.179612539173613218e-23 -1.115750000000000000e+03 -1.090984314063099091e-23 -4.693125078302619424e-25 -1.116000000000000000e+03 -7.269829904570932734e-25 -4.205085199663547354e-24 -1.116250000000000000e+03 1.391855883517876390e-24 -1.909598441715142301e-24 -1.116500000000000000e+03 -1.801135186599753758e-24 -4.198702622965316275e-24 -1.116750000000000000e+03 -3.931255789418512165e-24 2.428317217102120268e-24 -1.117000000000000000e+03 -9.378123661724715129e-24 -1.795458708045321591e-24 -1.117250000000000000e+03 -1.007710301248596948e-23 3.322302985335713498e-24 -1.117500000000000000e+03 -4.350965544117045804e-24 -4.998677617992737876e-24 -1.117750000000000000e+03 3.505031891315010971e-25 -1.222079395646043495e-23 -1.118000000000000000e+03 2.433374697431504635e-24 -2.132834151573097513e-24 -1.118250000000000000e+03 -6.865111430453433569e-24 5.633448699056457016e-24 -1.118500000000000000e+03 -1.184825217676520107e-23 2.192764895174260122e-24 -1.118750000000000000e+03 -8.123165013873263399e-24 3.049775324727816923e-24 -1.119000000000000000e+03 -1.231212753723190635e-23 -6.050160718016564910e-24 -1.119250000000000000e+03 -2.437415087885902804e-24 -4.730672557004610354e-24 -1.119500000000000000e+03 2.386703296835639054e-25 7.944869074932631042e-24 -1.119750000000000000e+03 1.216950098994426097e-24 4.163408538650891147e-24 -1.120000000000000000e+03 3.000790935471826894e-24 6.021976923024801484e-24 -1.120250000000000000e+03 -6.587523429131534236e-24 -9.617856311900597242e-24 -1.120500000000000000e+03 -3.710546698610358859e-24 -5.919165757176798819e-24 -1.120750000000000000e+03 -4.847171989595098871e-24 1.914386908051446273e-24 -1.121000000000000000e+03 -9.300276763364346385e-24 -7.178953925847064618e-24 -1.121250000000000000e+03 2.074699769054245695e-24 4.755003688550026559e-25 -1.121500000000000000e+03 3.207247120278931131e-24 -5.049492541317818678e-24 -1.121750000000000000e+03 3.271218054661602626e-24 -5.273790394344825204e-25 -1.122000000000000000e+03 2.139002859407263168e-24 2.642012785422302944e-24 -1.122250000000000000e+03 -6.269595835867046647e-24 -1.038531650064831329e-23 -1.122500000000000000e+03 2.953847705299739314e-24 7.165824799412219086e-24 -1.122750000000000000e+03 -4.025340400547292676e-24 7.961738376635001394e-24 -1.123000000000000000e+03 4.199000604988327061e-24 1.038630263915427344e-23 -1.123250000000000000e+03 -2.198805525808673036e-25 -6.667286710584843298e-24 -1.123500000000000000e+03 -3.390491494667345538e-24 8.705280717550972512e-24 -1.123750000000000000e+03 -1.047466597734970113e-23 -6.592329946247897955e-24 -1.124000000000000000e+03 1.918226913285323031e-24 -5.720369522475548091e-24 -1.124250000000000000e+03 -1.003557282480263019e-23 6.795629014515672426e-24 -1.124500000000000000e+03 4.092170042201828228e-24 1.273348055787914817e-23 -1.124750000000000000e+03 1.202683814415628294e-24 -2.371185169639650085e-24 -1.125000000000000000e+03 -2.004723829635924601e-24 -8.056772812081138010e-24 -1.125250000000000000e+03 2.096176275696848824e-24 2.688165204172822586e-24 -1.125500000000000000e+03 -1.073097424376480787e-23 -4.594228532289647018e-24 -1.125750000000000000e+03 -1.449221773333679086e-23 -6.620301599111003059e-24 -1.126000000000000000e+03 1.229046670384354997e-23 5.954802888025548547e-24 -1.126250000000000000e+03 -1.080564570879265529e-23 -6.034709722603901257e-24 -1.126500000000000000e+03 2.455370151072658540e-24 3.946658523297079590e-24 -1.126750000000000000e+03 -5.682965283558701757e-24 -1.159903510377524951e-23 -1.127000000000000000e+03 3.716287574377933917e-24 9.580954612094089181e-24 -1.127250000000000000e+03 -6.869054912139236628e-25 4.737003974265214609e-24 -1.127500000000000000e+03 4.670649621302410847e-24 2.511399741344255056e-24 -1.127750000000000000e+03 1.267395815930977583e-23 -6.247488192494906050e-24 -1.128000000000000000e+03 -4.252503982610588808e-24 -6.338868916998798579e-24 -1.128250000000000000e+03 -2.978048489186602018e-24 -5.463420455622090509e-24 -1.128500000000000000e+03 9.936102046435246952e-25 9.358574375281252143e-24 -1.128750000000000000e+03 9.320837938637084211e-24 5.639132013692453367e-24 -1.129000000000000000e+03 4.696245344349568877e-24 -3.522292438925606513e-25 -1.129250000000000000e+03 9.343776958313079042e-24 2.708220153882217387e-24 -1.129500000000000000e+03 -5.627708343192370055e-24 -3.820457480353117265e-24 -1.129750000000000000e+03 -2.402092897981989853e-24 -1.788269944694638687e-24 -1.130000000000000000e+03 2.677232683557733774e-24 -1.307222840431066683e-24 -1.130250000000000000e+03 -3.208994781708942553e-25 -2.842890973570255783e-24 -1.130500000000000000e+03 -4.640503744241531200e-24 3.853860181372295020e-24 -1.130750000000000000e+03 -1.225225847451869621e-24 -4.332564239665187194e-24 -1.131000000000000000e+03 -2.166895979539929043e-25 -4.901344414938121288e-24 -1.131250000000000000e+03 7.897397698580326076e-24 4.194352312271284802e-24 -1.131500000000000000e+03 4.226852540554507212e-24 4.675232120075002403e-24 -1.131750000000000000e+03 7.479717321811311911e-24 5.041054001927728377e-24 -1.132000000000000000e+03 2.885480429114511365e-24 -6.190991665925253670e-24 -1.132250000000000000e+03 4.890632115953301482e-24 1.149857710806154055e-24 -1.132500000000000000e+03 5.174692532771547174e-24 -3.781292410371560005e-24 -1.132750000000000000e+03 -7.719224182033646853e-24 2.763680007918399502e-25 -1.133000000000000000e+03 1.030455771611263115e-23 1.951575886678405858e-24 -1.133250000000000000e+03 -1.548169509538601908e-24 1.291330466984733361e-23 -1.133500000000000000e+03 -3.150976356981517962e-24 1.782433290247586249e-24 -1.133750000000000000e+03 -1.960721660612261771e-25 -7.034233610267493871e-24 -1.134000000000000000e+03 9.630600743992202195e-24 2.947501519364482671e-24 -1.134250000000000000e+03 -2.813876803425540997e-24 4.454042896255921337e-25 -1.134500000000000000e+03 6.159859621734352067e-24 -5.265288213446710204e-24 -1.134750000000000000e+03 2.487113869054509865e-24 -4.659814540118023799e-24 -1.135000000000000000e+03 -2.366392564697028166e-24 -4.651802059173328745e-24 -1.135250000000000000e+03 -1.274516395620738481e-23 -1.006501481469124262e-25 -1.135500000000000000e+03 -7.145943511231116110e-24 1.138923901276281012e-23 -1.135750000000000000e+03 6.150684905291944203e-24 3.767965649949072013e-24 -1.136000000000000000e+03 7.454682180167092312e-25 -5.904244793234457886e-24 -1.136250000000000000e+03 1.488767295263975153e-24 -9.542626440485046376e-24 -1.136500000000000000e+03 3.752948264823848061e-24 1.568576511122334379e-23 -1.136750000000000000e+03 -7.658933052937023630e-25 -3.149164445533688383e-25 -1.137000000000000000e+03 -1.949731503381319839e-24 -5.549060004227341319e-24 -1.137250000000000000e+03 -5.922755893792072927e-24 -5.393138556897226241e-24 -1.137500000000000000e+03 -5.647928467664285857e-24 -3.645551268394055178e-24 -1.137750000000000000e+03 -1.981632703521650745e-24 -2.511247644252609693e-24 -1.138000000000000000e+03 6.076069597086370327e-24 -1.952956661439377872e-24 -1.138250000000000000e+03 4.669980460232813300e-24 -6.449902024985898445e-24 -1.138500000000000000e+03 -2.459657859010626327e-24 -6.568537064297608596e-25 -1.138750000000000000e+03 -1.072512617382759494e-23 -4.711084995213237477e-24 -1.139000000000000000e+03 1.070261834147231856e-24 3.554787420187776599e-24 -1.139250000000000000e+03 -5.355720357966091675e-24 -5.654370956296733430e-24 -1.139500000000000000e+03 -3.339545024694140443e-24 -7.961144102367855826e-24 -1.139750000000000000e+03 -4.960634486686805852e-26 9.198789390589640584e-24 -1.140000000000000000e+03 -3.359604524641584634e-24 7.532349867886356434e-24 -1.140250000000000000e+03 3.802022204665335972e-24 2.460876266144308570e-24 -1.140500000000000000e+03 1.540667013854878025e-24 -3.917101330876505717e-24 -1.140750000000000000e+03 2.572136132962780833e-24 4.830916077654866842e-24 -1.141000000000000000e+03 -6.621819080740336131e-24 2.718608520542369499e-24 -1.141250000000000000e+03 -3.431735017511852130e-24 3.235065912731783666e-24 -1.141500000000000000e+03 8.359102340531506221e-24 2.976720281872733151e-24 -1.141750000000000000e+03 -6.368830457884466350e-24 4.997095210857558998e-25 -1.142000000000000000e+03 8.252900347441242768e-24 2.426007047815907237e-24 -1.142250000000000000e+03 -1.127918849378591655e-23 -1.520780836113782770e-24 -1.142500000000000000e+03 -5.566768567406720127e-24 -5.286748561135913823e-24 -1.142750000000000000e+03 2.089726541076977084e-24 -3.447231540393650260e-24 -1.143000000000000000e+03 5.446622981709961427e-24 -6.413060932078879806e-24 -1.143250000000000000e+03 -1.058638836026317117e-23 3.694677286484517910e-24 -1.143500000000000000e+03 -1.023362402570237511e-23 -9.484172207519355102e-25 -1.143750000000000000e+03 2.973322593743153984e-24 -4.878396956815734914e-24 -1.144000000000000000e+03 7.760376797562580307e-26 7.535632168612723497e-24 -1.144250000000000000e+03 1.336499245704877345e-24 -2.404815385997988399e-24 -1.144500000000000000e+03 -2.732217228933339917e-24 -6.512817140380355296e-24 -1.144750000000000000e+03 1.282653678730166749e-24 3.797542107412319323e-24 -1.145000000000000000e+03 -9.245243570593901542e-25 2.082461249918509475e-24 -1.145250000000000000e+03 -9.492782821331241639e-24 2.352010312815399422e-24 -1.145500000000000000e+03 2.513649733250980531e-24 -3.265645854906210447e-25 -1.145750000000000000e+03 2.258214296391193529e-24 -8.053858165617276612e-24 -1.146000000000000000e+03 6.566084791574149514e-24 -3.426262028987890638e-24 -1.146250000000000000e+03 5.464625325694395810e-24 9.339264438088826894e-25 -1.146500000000000000e+03 -1.370499544840988190e-23 5.957607072299337124e-24 -1.146750000000000000e+03 -8.786319425493121263e-26 -5.471413552610772255e-24 -1.147000000000000000e+03 -2.849368661717240742e-24 3.927832404715675336e-24 -1.147250000000000000e+03 7.717734018512622225e-24 -6.858299740160652272e-24 -1.147500000000000000e+03 -5.627322566309607717e-24 5.857214064136177658e-24 -1.147750000000000000e+03 -1.765913089298320672e-24 -1.345834477065800027e-26 -1.148000000000000000e+03 2.038790313686377834e-24 8.012299341190036441e-24 -1.148250000000000000e+03 7.915860545589672290e-25 -2.267061771008523965e-24 -1.148500000000000000e+03 1.439159553659432390e-24 -7.054043215207646016e-25 -1.148750000000000000e+03 -1.345533038191777388e-23 3.613592848223119810e-24 -1.149000000000000000e+03 6.802101038030352884e-25 -1.276512230871966048e-24 -1.149250000000000000e+03 -8.242594947340532404e-24 2.657922615202435529e-24 -1.149500000000000000e+03 -3.138597527082628610e-24 8.792165681934026362e-25 -1.149750000000000000e+03 -1.915015011134285880e-24 1.082782714108337386e-24 -1.150000000000000000e+03 -1.629950170926504921e-24 -8.117068373459003748e-25 -1.150250000000000000e+03 -3.659888246440003276e-24 -5.243069175279449185e-24 -1.150500000000000000e+03 4.653950944999209326e-24 -2.053839980186216186e-24 -1.150750000000000000e+03 4.722401974980317541e-25 -6.468448871026334305e-24 -1.151000000000000000e+03 1.810756844157929048e-24 -7.065991539102329238e-24 -1.151250000000000000e+03 -3.337913350114510366e-24 -3.441909356877858418e-24 -1.151500000000000000e+03 -3.562642308656841819e-24 2.878321315198355931e-24 -1.151750000000000000e+03 2.616770626321721165e-24 6.264159853416510128e-24 -1.152000000000000000e+03 -6.317079621994306191e-24 5.894584803023264446e-24 -1.152250000000000000e+03 -2.945112744681809766e-24 1.482234732293282641e-23 -1.152500000000000000e+03 -3.285822887226750075e-24 3.179067894840749616e-24 -1.152750000000000000e+03 -6.650372253275547037e-24 -3.994867659466216554e-24 -1.153000000000000000e+03 -1.943039516454974185e-24 -2.319858671394590558e-24 -1.153250000000000000e+03 6.223795559695312805e-24 1.709513506588760121e-24 -1.153500000000000000e+03 -1.334819210319252989e-24 1.127974352744603530e-23 -1.153750000000000000e+03 -6.916584992405525782e-24 2.088554592509403258e-24 -1.154000000000000000e+03 3.315953271957416356e-24 7.147473616840627380e-24 -1.154250000000000000e+03 1.360613907562730766e-23 7.869656590250324790e-24 -1.154500000000000000e+03 3.437419677266014290e-24 5.805292659559209860e-24 -1.154750000000000000e+03 -5.744238150738461698e-24 4.816214093643884100e-24 -1.155000000000000000e+03 -5.843607433070329597e-24 1.018104942442700803e-23 -1.155250000000000000e+03 5.342307301955984907e-24 -1.979798892020240728e-25 -1.155500000000000000e+03 6.535649376264126204e-24 3.456486183925502548e-24 -1.155750000000000000e+03 -1.656031132633373759e-24 -1.680469762110895160e-23 -1.156000000000000000e+03 2.976713083698982881e-24 1.804718832914718000e-25 -1.156250000000000000e+03 2.726043582041084924e-24 2.587760895187083636e-24 -1.156500000000000000e+03 8.109142265133630176e-24 -3.055731548762479809e-25 -1.156750000000000000e+03 5.927898046653190901e-24 -3.035407100297285091e-24 -1.157000000000000000e+03 -5.688350061039147075e-24 7.905077554378681126e-25 -1.157250000000000000e+03 4.942234804344010948e-24 8.019845321547331988e-25 -1.157500000000000000e+03 -8.309530606032171387e-24 2.195968314129856174e-24 -1.157750000000000000e+03 4.736692672955780723e-24 7.440093377126516563e-24 -1.158000000000000000e+03 -6.391863465976188966e-24 5.422939306840630135e-24 -1.158250000000000000e+03 -2.951305368459933268e-24 -4.665522653944450168e-24 -1.158500000000000000e+03 5.909789148287229678e-24 -9.694742687563552928e-24 -1.158750000000000000e+03 -6.786118485541826370e-24 1.438103389574175213e-23 -1.159000000000000000e+03 -3.124527668658040422e-24 3.890883160920956973e-25 -1.159250000000000000e+03 1.454595260335159128e-24 -2.391150668334949812e-24 -1.159500000000000000e+03 5.940560997137450500e-24 -9.880740012782415163e-24 -1.159750000000000000e+03 -1.946707618745086769e-24 2.737889759318932095e-24 -1.160000000000000000e+03 -4.020138734077148333e-24 -1.619244739737028681e-23 -1.160250000000000000e+03 2.929752455831183961e-24 7.997672454571221650e-24 -1.160500000000000000e+03 3.322100349957263164e-24 -1.903314793759762659e-24 -1.160750000000000000e+03 -8.396836095982881957e-24 6.870166676211053668e-24 -1.161000000000000000e+03 8.553915410186883694e-24 4.288186904661062398e-24 -1.161250000000000000e+03 -3.096884426971000870e-24 8.877645329120763053e-24 -1.161500000000000000e+03 -2.160582793848963221e-24 -9.812234417165404665e-24 -1.161750000000000000e+03 -3.670067104808188296e-24 -1.412340014052929414e-24 -1.162000000000000000e+03 -4.565898866404018056e-25 2.532951048237569644e-24 -1.162250000000000000e+03 5.461282405504400933e-24 2.174187648264628170e-24 -1.162500000000000000e+03 -5.122774234065847591e-24 8.539013080771853496e-24 -1.162750000000000000e+03 5.106548480047952005e-25 -7.610303135954250781e-24 -1.163000000000000000e+03 2.948544580927009113e-24 -6.142621109677489918e-25 -1.163250000000000000e+03 4.303023994718871045e-24 -4.401154686195000671e-25 -1.163500000000000000e+03 3.949599107638786714e-24 3.438879808742914518e-25 -1.163750000000000000e+03 -5.775640976064040515e-24 6.636879643750231120e-24 -1.164000000000000000e+03 -2.182332306093474924e-24 -3.798734724736202109e-24 -1.164250000000000000e+03 -2.540279321375381130e-24 -4.492896276567610931e-24 -1.164500000000000000e+03 -1.261606480812134315e-23 -8.331432460085712734e-24 -1.164750000000000000e+03 -1.197882339592595811e-23 -3.024443147395593664e-24 -1.165000000000000000e+03 -6.555953236952458622e-24 1.479226484545051430e-23 -1.165250000000000000e+03 5.600833278048518408e-24 -9.724234288266606037e-25 -1.165500000000000000e+03 4.044374469393969942e-25 -3.271994472549378118e-24 -1.165750000000000000e+03 -1.933273958121684306e-24 -3.970072474347250059e-24 -1.166000000000000000e+03 -5.257231442429031617e-25 7.300634329156542419e-24 -1.166250000000000000e+03 -5.440795976619635392e-24 -5.280759762622863826e-24 -1.166500000000000000e+03 -8.025853781778915485e-24 6.134055440975910451e-24 -1.166750000000000000e+03 1.313645897877799236e-24 6.221316751182555726e-24 -1.167000000000000000e+03 -2.158998900926856270e-24 -4.806633407366684306e-24 -1.167250000000000000e+03 1.014606540347281944e-23 2.011350417546050306e-24 -1.167500000000000000e+03 1.713645172209087521e-24 -4.063078813431047442e-26 -1.167750000000000000e+03 1.381237895279901957e-24 1.119123026582392928e-23 -1.168000000000000000e+03 8.515108975035738773e-24 -2.463002018009137611e-24 -1.168250000000000000e+03 8.427407593601580282e-24 -6.721444545545513958e-25 -1.168500000000000000e+03 1.392320949593808504e-24 -1.443116200512258829e-24 -1.168750000000000000e+03 1.527317218071942025e-24 -1.648363271104485802e-24 -1.169000000000000000e+03 3.465605297424300066e-24 2.502709867084073997e-24 -1.169250000000000000e+03 -6.621078039459575063e-24 7.566997664500142428e-25 -1.169500000000000000e+03 -3.396854235616707742e-24 -2.332775318787462476e-24 -1.169750000000000000e+03 -4.197345493569803704e-24 -8.363484927375289091e-24 -1.170000000000000000e+03 -4.911937427119333575e-24 1.905081798075454477e-24 -1.170250000000000000e+03 1.501045225270360554e-24 9.084536115328285241e-24 -1.170500000000000000e+03 -5.773187940967866429e-24 -3.135745248620870245e-24 -1.170750000000000000e+03 -5.843238220750893748e-24 -4.653586287745883060e-25 -1.171000000000000000e+03 -1.715947554375391203e-24 3.339614802454078021e-24 -1.171250000000000000e+03 -6.197106974157868976e-25 4.781676581312161255e-24 -1.171500000000000000e+03 1.040007162916231314e-24 -6.307983375550374487e-24 -1.171750000000000000e+03 -4.414162916941718884e-24 -1.989758840991322998e-24 -1.172000000000000000e+03 -7.172152081173396104e-24 -5.656224283722230846e-24 -1.172250000000000000e+03 1.605474521391675674e-24 -2.927662568029118964e-24 -1.172500000000000000e+03 3.989419355377288398e-24 1.916932647778077024e-23 -1.172750000000000000e+03 2.897408645781093557e-24 1.386695313338713051e-24 -1.173000000000000000e+03 7.912752942361506219e-24 -5.998500138392692231e-24 -1.173250000000000000e+03 3.137970015860902237e-24 2.539352855340123717e-24 -1.173500000000000000e+03 -1.019590732156752063e-26 -5.739864326111953644e-24 -1.173750000000000000e+03 -1.987429202149315179e-24 1.008250169897724550e-23 -1.174000000000000000e+03 -4.156671741498731125e-24 -1.141082269103450980e-23 -1.174250000000000000e+03 -2.265308951029134376e-24 -6.119621513138107829e-24 -1.174500000000000000e+03 -1.524521947040296310e-24 -2.490180089411074565e-24 -1.174750000000000000e+03 8.344402973738728344e-24 1.462985279391556202e-23 -1.175000000000000000e+03 -9.779856844270086758e-25 -7.716423838264650287e-26 -1.175250000000000000e+03 -5.640831715965393596e-24 2.743336809193896016e-24 -1.175500000000000000e+03 7.211767262380115007e-26 1.642565439875221051e-25 -1.175750000000000000e+03 -7.586021363340022862e-24 3.011895086542426333e-24 -1.176000000000000000e+03 1.013669122370385675e-23 -1.246390689552000392e-23 -1.176250000000000000e+03 -7.385569599932483552e-25 -1.139122539292797908e-24 -1.176500000000000000e+03 6.637809152538514847e-24 -1.997536406409366776e-24 -1.176750000000000000e+03 8.276557072988983130e-25 -6.095340233032544159e-24 -1.177000000000000000e+03 -2.848839202241583839e-24 -1.392617893327642688e-24 -1.177250000000000000e+03 3.880457149931393315e-24 3.329453749213137980e-24 -1.177500000000000000e+03 -2.610919528928670391e-24 -6.086715470987198780e-24 -1.177750000000000000e+03 4.467188296986038864e-24 -7.547457129355389307e-24 -1.178000000000000000e+03 -8.008230810448933820e-24 1.048555414995724866e-23 -1.178250000000000000e+03 4.445188818417018382e-24 2.505011604954596623e-24 -1.178500000000000000e+03 -1.272438357706956372e-24 -8.632406271742093542e-24 -1.178750000000000000e+03 7.273314475289465758e-24 -1.670986769071985977e-24 -1.179000000000000000e+03 1.349089159964816117e-25 -6.411147760385226464e-24 -1.179250000000000000e+03 -5.579249437643452837e-24 1.136321793346761844e-24 -1.179500000000000000e+03 2.101608416352400624e-24 -4.976129781474761860e-24 -1.179750000000000000e+03 9.762690260034313775e-24 1.510185343893472149e-24 -1.180000000000000000e+03 7.344517941208347635e-24 4.570887338208111225e-24 -1.180250000000000000e+03 -1.637772413073703065e-26 9.517129895335919398e-24 -1.180500000000000000e+03 -1.274902932838070507e-24 1.303410955819930490e-23 -1.180750000000000000e+03 2.259004218480799490e-24 -8.700961557145782750e-26 -1.181000000000000000e+03 1.037654648724164962e-24 6.043811695311663884e-24 -1.181250000000000000e+03 3.567718558954472834e-24 7.257162924968916922e-24 -1.181500000000000000e+03 1.546555993585417785e-24 8.549155191675383948e-24 -1.181750000000000000e+03 2.867361988697780275e-24 -6.196663954321476856e-24 -1.182000000000000000e+03 1.454868618532713593e-23 1.122066519584386085e-23 -1.182250000000000000e+03 1.035695556773242623e-23 4.533592010212145375e-24 -1.182500000000000000e+03 -9.358333354483298027e-24 9.600889384164975163e-24 -1.182750000000000000e+03 -3.921505111455534132e-24 8.129148836890083399e-24 -1.183000000000000000e+03 3.375343225573318891e-25 -5.441815990472224010e-24 -1.183250000000000000e+03 -3.156770362405877661e-24 7.420065542014816721e-24 -1.183500000000000000e+03 -3.985628786180763036e-24 1.146092228480310332e-23 -1.183750000000000000e+03 -3.270712436061369368e-24 -7.610537939422759815e-24 -1.184000000000000000e+03 4.130994516114995385e-24 -4.151189283509664352e-24 -1.184250000000000000e+03 8.745298233293105343e-25 -6.661940707833679106e-24 -1.184500000000000000e+03 7.120696807875935960e-24 -7.668207110697524731e-24 -1.184750000000000000e+03 1.466680015306692561e-23 -2.720589142844951493e-24 -1.185000000000000000e+03 -1.028327726858490790e-23 1.219656703278411596e-24 -1.185250000000000000e+03 -4.659876965352781659e-24 8.135723226258035225e-24 -1.185500000000000000e+03 -5.625870461298559478e-24 3.033313701685144009e-24 -1.185750000000000000e+03 5.718213896811199673e-24 1.093580219257689374e-25 -1.186000000000000000e+03 1.772361687670244866e-23 7.804606533790418781e-24 -1.186250000000000000e+03 -5.458300821772551139e-25 -7.766201065157147238e-24 -1.186500000000000000e+03 1.051159001559726707e-23 -6.990260291514147777e-24 -1.186750000000000000e+03 3.950920779868199183e-26 1.911935773515906145e-24 -1.187000000000000000e+03 7.420661988739082795e-24 3.504248836490669666e-24 -1.187250000000000000e+03 1.054372417886924930e-23 -1.599683229513403207e-24 -1.187500000000000000e+03 5.693085199503819172e-24 1.156764656584814432e-23 -1.187750000000000000e+03 2.071203641215416453e-24 4.866980290268964157e-24 -1.188000000000000000e+03 5.013209425534986038e-24 -1.633062519176795516e-24 -1.188250000000000000e+03 7.901525416448743700e-24 -6.270292850705726510e-24 -1.188500000000000000e+03 -6.517830997233510732e-24 -2.940468006984491115e-24 -1.188750000000000000e+03 5.900558431713211475e-24 3.295894406489207612e-24 -1.189000000000000000e+03 -1.013414582906097259e-23 1.208434922841268350e-24 -1.189250000000000000e+03 -1.055105682211044163e-24 9.308004347980958196e-24 -1.189500000000000000e+03 -4.035110199523393207e-24 1.006637592979630399e-23 -1.189750000000000000e+03 9.184804878131914154e-24 -6.169234218607183623e-25 -1.190000000000000000e+03 -1.846379651760171832e-24 1.059955904901392356e-23 -1.190250000000000000e+03 2.670863455323659024e-24 -5.698615499693484845e-24 -1.190500000000000000e+03 -1.692612007290036516e-25 3.698290580834445753e-24 -1.190750000000000000e+03 8.189157138488450817e-24 9.375038375646982728e-24 -1.191000000000000000e+03 -5.113982747713376473e-24 -1.068233543830551497e-24 -1.191250000000000000e+03 -6.531125259766965234e-24 3.035718263039895997e-24 -1.191500000000000000e+03 -1.541893358244359498e-25 -2.175024712686651042e-24 -1.191750000000000000e+03 6.715266573034190730e-24 7.760260273411710755e-24 -1.192000000000000000e+03 -2.368151927397530211e-24 1.039053851855058821e-24 -1.192250000000000000e+03 4.813356542865536180e-24 -5.316191499459205797e-24 -1.192500000000000000e+03 8.522950192690431233e-24 2.690684030545327195e-24 -1.192750000000000000e+03 -2.932703447967647456e-24 5.581369061393290955e-24 -1.193000000000000000e+03 5.952151345509784323e-24 6.073977681524740917e-24 -1.193250000000000000e+03 -1.653592831553628463e-25 -9.758192843001172082e-24 -1.193500000000000000e+03 9.551928937980261415e-25 1.667813374586238884e-24 -1.193750000000000000e+03 -1.286108807203049221e-24 7.142134441649819966e-24 -1.194000000000000000e+03 6.279810081697502957e-24 6.166154406933756553e-24 -1.194250000000000000e+03 -3.890627846998268105e-24 -7.847056620550640679e-24 -1.194500000000000000e+03 -6.671547500302977193e-24 1.360785306808110269e-23 -1.194750000000000000e+03 4.408703881997030287e-24 3.930127626404787172e-24 -1.195000000000000000e+03 -1.576906467050089862e-24 2.227523416437122274e-24 -1.195250000000000000e+03 5.678999243426993107e-24 -7.339491639739249217e-24 -1.195500000000000000e+03 5.973309345629500441e-24 4.362256298983809631e-24 -1.195750000000000000e+03 2.310598958520910530e-24 1.072718923432832053e-23 -1.196000000000000000e+03 3.966293920917915332e-24 -8.104696426761817055e-24 -1.196250000000000000e+03 -7.231256953798304765e-24 -6.047311833483461150e-24 -1.196500000000000000e+03 5.586801287376701903e-24 -9.486070209249506268e-24 -1.196750000000000000e+03 -7.189682031397925759e-25 5.424272002195932266e-24 -1.197000000000000000e+03 5.815981218615243180e-24 9.547343066052041752e-24 -1.197250000000000000e+03 4.958528375794595235e-24 -7.249282152278161935e-24 -1.197500000000000000e+03 7.835920323261646815e-25 -4.254896522173240927e-24 -1.197750000000000000e+03 -7.707902765623659648e-24 -5.199775611943067563e-24 -1.198000000000000000e+03 6.601164144463092118e-24 2.969341589119581337e-24 -1.198250000000000000e+03 7.169188368707258193e-24 3.662453666663297056e-24 -1.198500000000000000e+03 -1.070218587573914206e-24 -1.118390951056404892e-23 -1.198750000000000000e+03 -4.240958775812281414e-24 -4.255142762584198566e-24 -1.199000000000000000e+03 -2.139603247645889099e-25 -8.544640967491187088e-25 -1.199250000000000000e+03 8.429342942171746972e-25 3.389419138852058664e-24 -1.199500000000000000e+03 -3.026757481784793663e-24 -4.779627376447298206e-24 -1.199750000000000000e+03 -1.306813865608061943e-24 -3.197591167967748667e-24 -1.200000000000000000e+03 -4.148436118051988964e-24 -1.320458479187114260e-24 -1.200250000000000000e+03 2.601861821612214389e-24 -8.994469951063763509e-24 -1.200500000000000000e+03 9.366452299891119867e-24 6.351295933492554334e-24 -1.200750000000000000e+03 -8.200685779869017775e-24 2.457646384994418986e-24 -1.201000000000000000e+03 -2.907137819163236742e-24 4.464289828585624636e-24 -1.201250000000000000e+03 -1.288017112009737525e-23 -1.321238620238940137e-23 -1.201500000000000000e+03 -6.331841243674160459e-24 1.159829680521987249e-23 -1.201750000000000000e+03 -1.072226784304067641e-24 1.427679117957480309e-23 -1.202000000000000000e+03 -5.412697980154772372e-24 4.894161286708849393e-24 -1.202250000000000000e+03 1.538536411465636721e-24 1.418927104723972539e-23 -1.202500000000000000e+03 -4.997943702595499486e-24 -8.635457733585537014e-25 -1.202750000000000000e+03 -7.730147840123477118e-24 1.343416579898247502e-23 -1.203000000000000000e+03 -4.059952540517492745e-24 2.399931280317957614e-24 -1.203250000000000000e+03 7.000976824872228789e-24 7.023465536710134549e-24 -1.203500000000000000e+03 -6.117995385997060393e-24 -1.805582435398162643e-24 -1.203750000000000000e+03 1.636752101335344937e-23 6.431634087995375392e-24 -1.204000000000000000e+03 4.323069583911645277e-24 -1.241206213124945938e-23 -1.204250000000000000e+03 -4.761789910242504358e-24 2.532436562253038227e-24 -1.204500000000000000e+03 -1.159753483430046729e-24 -3.796835563179822813e-24 -1.204750000000000000e+03 -3.103522354652230249e-24 -4.158490559779433571e-24 -1.205000000000000000e+03 -4.548679367914789220e-24 3.649362158176472301e-25 -1.205250000000000000e+03 -5.122624219736204527e-24 3.642156035644689080e-25 -1.205500000000000000e+03 -3.677410628427663238e-24 3.973153418088275095e-24 -1.205750000000000000e+03 2.074810943050910764e-24 -1.564198910501524846e-24 -1.206000000000000000e+03 2.192300203378056238e-24 -1.079532214937498622e-24 -1.206250000000000000e+03 -1.496825102186912002e-23 1.245526314269221961e-23 -1.206500000000000000e+03 2.970128886061742228e-24 -3.677802471125033976e-24 -1.206750000000000000e+03 5.336457064318912373e-24 -1.330363606921852980e-24 -1.207000000000000000e+03 -3.627049044267398288e-24 -2.314900245187802944e-24 -1.207250000000000000e+03 1.839452124218527054e-24 1.011458681001629530e-23 -1.207500000000000000e+03 -1.737492766251690167e-23 8.101535843398044401e-24 -1.207750000000000000e+03 3.341988496402143123e-24 -2.966693331852541549e-24 -1.208000000000000000e+03 -3.343683991672920108e-24 2.665332373720180960e-24 -1.208250000000000000e+03 -3.429166991300460806e-24 3.407578801353771579e-25 -1.208500000000000000e+03 3.710936843592517075e-25 -5.382198169466564976e-24 -1.208750000000000000e+03 1.835318529412278812e-24 4.495818656233106639e-24 -1.209000000000000000e+03 4.978519447036620611e-24 -6.807082804290079262e-24 -1.209250000000000000e+03 1.908539160007135452e-24 -1.695352179274808407e-24 -1.209500000000000000e+03 1.309089808309668017e-23 8.417644058684245232e-24 -1.209750000000000000e+03 3.044421843034709888e-24 1.091260048206496389e-24 -1.210000000000000000e+03 3.453837506516400540e-24 -3.092630718283668476e-24 -1.210250000000000000e+03 -5.629579169826104828e-24 -1.152929576006891458e-23 -1.210500000000000000e+03 -1.907434439692165118e-24 4.713238441776762336e-24 -1.210750000000000000e+03 -8.461506348087833514e-26 2.353951478757496185e-24 -1.211000000000000000e+03 4.981417592052653375e-24 -2.342264184627432900e-24 -1.211250000000000000e+03 -5.551333225038675556e-24 4.656519795796427824e-24 -1.211500000000000000e+03 -1.194477209983090612e-23 1.250183119274797905e-25 -1.211750000000000000e+03 -2.462459793934686836e-24 -4.854883595904684526e-24 -1.212000000000000000e+03 -4.625672882766091302e-25 1.731073196394492965e-24 -1.212250000000000000e+03 -1.219606144838081996e-24 7.505201626510200270e-25 -1.212500000000000000e+03 3.048798472585083484e-24 -1.171804745217246839e-24 -1.212750000000000000e+03 1.142524817318511445e-23 -2.290335739927999892e-24 -1.213000000000000000e+03 -5.318709856201826419e-24 2.995674776098798048e-24 -1.213250000000000000e+03 -1.053151783938926810e-23 4.039658012275742074e-24 -1.213500000000000000e+03 -1.019132018333900749e-23 5.538014113172312585e-24 -1.213750000000000000e+03 -4.272986185350709352e-24 1.033820941399354921e-24 -1.214000000000000000e+03 7.210901733408090378e-24 -3.134730041338051683e-24 -1.214250000000000000e+03 -2.423406411983039910e-24 -1.281350315757016069e-23 -1.214500000000000000e+03 -6.197123167947008491e-24 -1.885690896894339723e-24 -1.214750000000000000e+03 3.075866387830071864e-24 -1.923317426784089524e-24 -1.215000000000000000e+03 -1.037002101244082916e-23 1.226745988674498333e-24 -1.215250000000000000e+03 3.141924243338841543e-24 -2.627327683362380745e-24 -1.215500000000000000e+03 -6.505888340369288159e-24 1.386477622838830351e-23 -1.215750000000000000e+03 -1.349029339261060528e-24 5.956003161892511496e-24 -1.216000000000000000e+03 5.337831001846482309e-24 2.495473633015885098e-25 -1.216250000000000000e+03 2.692766705756328606e-24 7.770238460419888557e-24 -1.216500000000000000e+03 5.054756118160233779e-24 -9.727381395916084067e-24 -1.216750000000000000e+03 3.668915085034213205e-25 7.024014713777162588e-24 -1.217000000000000000e+03 -2.738983093796383334e-24 4.993000749199809584e-24 -1.217250000000000000e+03 2.159394272695387796e-24 -2.697788746231349900e-24 -1.217500000000000000e+03 -1.247196244543255128e-24 4.772585872902932324e-24 -1.217750000000000000e+03 -1.823420046050481997e-24 -6.514477911694398445e-24 -1.218000000000000000e+03 -1.741571353714330156e-23 -1.552174849186001397e-24 -1.218250000000000000e+03 1.411348079622516677e-25 -1.080876363379716340e-24 -1.218500000000000000e+03 -4.055528954963207367e-24 -8.573861785823316513e-25 -1.218750000000000000e+03 9.942416903628990442e-24 6.174204795491470083e-24 -1.219000000000000000e+03 2.850400452148836409e-24 -1.466170076311411095e-24 -1.219250000000000000e+03 4.135781317993016887e-24 8.551144110887795701e-24 -1.219500000000000000e+03 -7.252592933584111166e-24 -5.042398794128836087e-24 -1.219750000000000000e+03 -5.766430963321557865e-24 -4.201788848808607625e-24 -1.220000000000000000e+03 -8.368089606268051269e-24 4.361830607543521069e-25 -1.220250000000000000e+03 -7.619522262285333573e-24 -1.103287133665361438e-23 -1.220500000000000000e+03 7.239829426996982887e-24 5.625188826726851114e-25 -1.220750000000000000e+03 4.982155463755479773e-24 1.071713770180753555e-23 -1.221000000000000000e+03 1.230422969974395758e-24 -8.468743979694435988e-26 -1.221250000000000000e+03 -5.050233989518628978e-24 -3.623781724219092437e-24 -1.221500000000000000e+03 7.789047326955857368e-24 -1.306145457185571687e-24 -1.221750000000000000e+03 6.975474036055553263e-25 -3.519844274287509722e-24 -1.222000000000000000e+03 8.943083350252620968e-24 3.000272781375850504e-24 -1.222250000000000000e+03 2.260862253003785878e-24 -2.527717398667574994e-25 -1.222500000000000000e+03 3.179250563377196487e-24 -1.591113524676059706e-24 -1.222750000000000000e+03 -6.381434535007486208e-24 2.372638878473103781e-24 -1.223000000000000000e+03 8.644646566339876025e-24 5.562423116265977700e-25 -1.223250000000000000e+03 6.309279554441045533e-24 9.503725499126494970e-24 -1.223500000000000000e+03 -9.249672578418216500e-24 -2.227310376934399251e-24 -1.223750000000000000e+03 -1.393267688592698029e-23 9.610215878507664295e-24 -1.224000000000000000e+03 1.141228501282188033e-23 -2.425525002299759507e-24 -1.224250000000000000e+03 8.711338877522258851e-24 6.489893243707761477e-24 -1.224500000000000000e+03 9.952481683095859605e-24 3.722105322354944022e-24 -1.224750000000000000e+03 1.113008728384496427e-23 -5.608113854482347372e-25 -1.225000000000000000e+03 -1.054126141555876542e-23 4.332321455872363028e-24 -1.225250000000000000e+03 -8.830330264920504914e-24 4.191331230844430847e-24 -1.225500000000000000e+03 -9.827428328174441034e-24 -1.924796143252703689e-24 -1.225750000000000000e+03 1.311458033613097155e-25 -3.877456862863616137e-24 -1.226000000000000000e+03 -1.860412091156189452e-24 -9.083337528103126034e-25 -1.226250000000000000e+03 -1.625042863267277630e-23 -3.156865864614029989e-24 -1.226500000000000000e+03 5.054099261320800685e-24 2.838493941449891356e-24 -1.226750000000000000e+03 -1.245069042512896199e-24 7.182675210250989404e-24 -1.227000000000000000e+03 -1.785493140690649807e-24 -2.739593745525120733e-24 -1.227250000000000000e+03 8.785714670378849226e-25 1.879621275036195838e-25 -1.227500000000000000e+03 3.785328757430995265e-24 2.199252579908291026e-24 -1.227750000000000000e+03 -4.564034352744162523e-24 -3.699109521261254576e-24 -1.228000000000000000e+03 -2.094072522694698404e-23 -2.019064202063464747e-24 -1.228250000000000000e+03 2.610504002615659946e-24 1.268403045215565287e-24 -1.228500000000000000e+03 6.279362580903089534e-24 -3.107935782475786656e-24 -1.228750000000000000e+03 2.855952016367120353e-24 5.420042318312662154e-24 -1.229000000000000000e+03 -3.087442426068725572e-24 -3.463291106432548021e-24 -1.229250000000000000e+03 1.300515605835068307e-26 -1.674685923581993134e-24 -1.229500000000000000e+03 -4.112094171058765832e-24 1.331122805001112471e-24 -1.229750000000000000e+03 -1.041353856757180680e-23 -6.892228948053256638e-24 -1.230000000000000000e+03 4.985257543888518242e-24 -1.075427141362699591e-23 -1.230250000000000000e+03 -4.627716138757585398e-24 8.757720463464104757e-25 -1.230500000000000000e+03 -1.257554933854923271e-25 -3.397645266035446102e-24 -1.230750000000000000e+03 4.777691089826197485e-24 8.850738608863009331e-24 -1.231000000000000000e+03 5.947632244274567257e-24 -1.185176274456503560e-24 -1.231250000000000000e+03 -6.159739486471778358e-24 1.925677597747718161e-24 -1.231500000000000000e+03 2.483958780710546186e-24 9.566228282387377809e-25 -1.231750000000000000e+03 4.694628201572420939e-24 5.993726411814941971e-24 -1.232000000000000000e+03 4.802912059291259448e-24 1.818585882051551305e-24 -1.232250000000000000e+03 -4.334903849783736103e-24 -1.888457758623552398e-23 -1.232500000000000000e+03 8.094076211702646356e-24 5.645459676480992818e-24 -1.232750000000000000e+03 -5.344704349937468368e-24 -4.009414388129560243e-24 -1.233000000000000000e+03 6.018537708768788008e-25 3.972117440289163464e-24 -1.233250000000000000e+03 1.201400979021125476e-24 2.980062784523222791e-24 -1.233500000000000000e+03 1.480351906817272790e-24 -1.268747546898057843e-24 -1.233750000000000000e+03 -5.988269715922552652e-24 -7.805347930555882986e-25 -1.234000000000000000e+03 3.220117381832368949e-24 1.003353447015488802e-23 -1.234250000000000000e+03 -8.947062591431228248e-25 -1.081136528597492726e-23 -1.234500000000000000e+03 -1.069952510577477710e-24 1.360477294868032422e-23 -1.234750000000000000e+03 -3.480094427760403503e-24 2.424300578950308726e-24 -1.235000000000000000e+03 3.527758414183230366e-24 -4.940331617319368832e-25 -1.235250000000000000e+03 -8.802656030983511148e-24 2.153700482660822444e-24 -1.235500000000000000e+03 -4.270101497837166907e-24 5.565728621988346539e-24 -1.235750000000000000e+03 4.709682504478695881e-24 9.512948764963364518e-24 -1.236000000000000000e+03 5.892085704071699957e-24 -6.097642452331731405e-24 -1.236250000000000000e+03 -1.217691413298924344e-23 1.398578559077459176e-24 -1.236500000000000000e+03 -9.985624939181530823e-24 3.827760488751725786e-24 -1.236750000000000000e+03 -8.064555214848986362e-24 -3.215332987924072456e-24 -1.237000000000000000e+03 -7.636381412770978368e-24 -8.095379184831931409e-24 -1.237250000000000000e+03 2.300289267701703756e-24 -1.494550919316415070e-24 -1.237500000000000000e+03 1.638420636864383058e-25 5.005182291603837065e-24 -1.237750000000000000e+03 -7.839492057252986570e-24 9.125016619920681447e-24 -1.238000000000000000e+03 -2.022915019091589514e-24 -3.655802498961634009e-24 -1.238250000000000000e+03 -3.821034598464654992e-24 8.786120486342465068e-24 -1.238500000000000000e+03 1.586743918451350911e-24 7.102275603108204317e-24 -1.238750000000000000e+03 -2.944330613305215511e-24 -1.769015593042348536e-24 -1.239000000000000000e+03 5.125078035864181421e-24 2.283512486463116165e-26 -1.239250000000000000e+03 3.393409612186953778e-24 -1.176955941868712654e-23 -1.239500000000000000e+03 6.581759994507604205e-24 -5.105833471568272709e-24 -1.239750000000000000e+03 -3.938048217902071438e-24 -8.356798682240052257e-24 -1.240000000000000000e+03 -4.408414474453876189e-25 3.151954893519221853e-24 -1.240250000000000000e+03 -3.435902798258695857e-24 1.278241787153728009e-24 -1.240500000000000000e+03 9.541236910518683593e-24 1.144514361701496023e-23 -1.240750000000000000e+03 2.816949071301559803e-25 3.762047013851652112e-24 -1.241000000000000000e+03 -2.284179394363665654e-24 -3.320842649907255325e-24 -1.241250000000000000e+03 7.973494201279216455e-24 2.537855125416834633e-24 -1.241500000000000000e+03 -4.370849500419015658e-25 -2.483285467036032136e-24 -1.241750000000000000e+03 1.448088918298416995e-24 -5.584364637985364516e-24 -1.242000000000000000e+03 1.115784654469962880e-23 1.083567257241206624e-24 -1.242250000000000000e+03 -9.129207939021921777e-24 2.548653173066394606e-25 -1.242500000000000000e+03 6.484817030262885613e-24 -7.371327005757156789e-24 -1.242750000000000000e+03 -4.706696268050750596e-24 -1.174272748515467326e-23 -1.243000000000000000e+03 -7.231958298625278856e-24 9.497181808915898547e-25 -1.243250000000000000e+03 1.810172632382373503e-24 4.105712578087045559e-24 -1.243500000000000000e+03 -2.258819346738523141e-25 -9.412170828684798375e-24 -1.243750000000000000e+03 -1.154671363255772315e-24 -2.221995119873235595e-24 -1.244000000000000000e+03 2.601249029934725490e-24 1.438007127485236557e-24 -1.244250000000000000e+03 -2.889655797511489193e-24 -3.113050190656447624e-24 -1.244500000000000000e+03 -9.159745213889812445e-25 5.513875279548050904e-24 -1.244750000000000000e+03 -1.062606536902188662e-23 -1.082423657698996574e-24 -1.245000000000000000e+03 1.284603374590177756e-24 -4.194260965698575168e-24 -1.245250000000000000e+03 6.110078434086103231e-24 -3.081715689518195936e-24 -1.245500000000000000e+03 -1.738431503068522768e-24 -3.398248762420302199e-25 -1.245750000000000000e+03 1.778829368703271607e-24 -8.966125232402818385e-24 -1.246000000000000000e+03 -2.125686070625315069e-24 7.486902050546649336e-24 -1.246250000000000000e+03 -8.111221897515661358e-24 6.049603851801481903e-24 -1.246500000000000000e+03 -6.758929067457159057e-25 -6.876510585262723863e-24 -1.246750000000000000e+03 -8.276812709566703115e-25 3.801363723994870287e-24 -1.247000000000000000e+03 7.642354033713588670e-24 -3.924962226509142904e-24 -1.247250000000000000e+03 -4.809313693069086446e-24 8.432018404319425347e-25 -1.247500000000000000e+03 -3.785298148575108177e-24 -1.189057995732285298e-24 -1.247750000000000000e+03 -1.179622342757862340e-23 -2.832127312179529823e-24 -1.248000000000000000e+03 -4.852173269320937292e-24 -1.230394512002897479e-25 -1.248250000000000000e+03 1.344614496127631888e-24 -1.027780271565586992e-23 -1.248500000000000000e+03 -1.656488624916068386e-25 7.702452046533450722e-25 -1.248750000000000000e+03 7.249512972608435614e-24 -1.591497369445629839e-25 -1.249000000000000000e+03 -4.519629928481683968e-24 1.615743428375175794e-24 -1.249250000000000000e+03 -9.068613401144664689e-24 3.414526510334919036e-24 -1.249500000000000000e+03 2.441965458177485557e-24 -6.157474498906046445e-24 -1.249750000000000000e+03 4.409418456582710318e-24 8.425514637992639899e-24 -1.250000000000000000e+03 3.919757468493483673e-24 -1.289948668700350660e-24 -1.250250000000000000e+03 3.186801054071659168e-25 -2.270259453912417465e-24 -1.250500000000000000e+03 2.514634331285025795e-24 1.041678124431760442e-23 -1.250750000000000000e+03 -1.393320977226249567e-23 -7.820392636117418209e-24 -1.251000000000000000e+03 9.672650307185325285e-24 -7.170542228516722809e-25 -1.251250000000000000e+03 -6.186784899889892404e-26 9.998694662254226248e-24 -1.251500000000000000e+03 -4.307141221470128228e-24 5.229512785325407608e-24 -1.251750000000000000e+03 3.050629571604449934e-24 3.207140845507947986e-24 -1.252000000000000000e+03 -3.160257020186367829e-24 -4.326485448699449764e-24 -1.252250000000000000e+03 1.234975402105105120e-23 -1.824609207642751681e-24 -1.252500000000000000e+03 3.834132717378165819e-25 -4.610183126766427958e-24 -1.252750000000000000e+03 -3.324821148288676882e-24 1.032320743724899105e-23 -1.253000000000000000e+03 9.275185426817143403e-26 3.367060605814103894e-24 -1.253250000000000000e+03 -3.811138559262133303e-26 5.569959774312291394e-26 -1.253500000000000000e+03 -2.992205931095958092e-25 -2.469085312780021830e-24 -1.253750000000000000e+03 7.446541717736615868e-24 -7.797112005883126338e-24 -1.254000000000000000e+03 -2.138932140862771951e-23 1.128192307235472966e-23 -1.254250000000000000e+03 -6.192336157125577121e-25 -7.724234412372922129e-25 -1.254500000000000000e+03 -2.848612606458731271e-24 9.554619373464727277e-24 -1.254750000000000000e+03 -2.428689894397777684e-24 -1.197403170661614783e-23 -1.255000000000000000e+03 -1.125728174082472805e-23 -1.028213233616096740e-23 -1.255250000000000000e+03 -1.013755692656406680e-24 7.296878306582570912e-24 -1.255500000000000000e+03 1.627398757445258294e-25 4.095908539322835593e-24 -1.255750000000000000e+03 3.002011119879771751e-24 1.667237733762135409e-24 -1.256000000000000000e+03 9.978914405229036760e-24 1.038648712019770960e-23 -1.256250000000000000e+03 -7.381360805880526942e-24 6.473289009147048091e-24 -1.256500000000000000e+03 -4.795797523367598919e-24 6.839116536818120117e-24 -1.256750000000000000e+03 -4.219042120498715711e-24 5.288029589795584367e-24 -1.257000000000000000e+03 8.885846238039113284e-25 -9.848403854161624664e-24 -1.257250000000000000e+03 -7.639104867472702071e-24 -9.362612295158169374e-24 -1.257500000000000000e+03 9.088151644127959570e-24 -1.100419582857539054e-23 -1.257750000000000000e+03 3.082280672638829302e-24 3.933025557734843762e-24 -1.258000000000000000e+03 -3.046822317737054030e-24 4.224455649378536428e-24 -1.258250000000000000e+03 4.673715832210567217e-24 2.894152550307431218e-24 -1.258500000000000000e+03 2.885901299136448983e-24 4.868973059090553732e-24 -1.258750000000000000e+03 1.233905157659501609e-23 -4.654876568570775205e-24 -1.259000000000000000e+03 -1.320908317481688498e-23 -2.377789491789327908e-24 -1.259250000000000000e+03 6.986197103258506420e-24 2.954077311701893567e-24 -1.259500000000000000e+03 6.723071369500509125e-24 4.000166598288075761e-24 -1.259750000000000000e+03 -3.529182060737308367e-24 9.439651418936032749e-24 -1.260000000000000000e+03 -9.148229081010167499e-24 6.651117237432370536e-24 -1.260250000000000000e+03 -4.627175791768711830e-24 1.382533752873160168e-24 -1.260500000000000000e+03 2.711578847045777397e-24 5.555881551541445563e-25 -1.260750000000000000e+03 -3.382802255602668854e-25 3.690949316545542233e-24 -1.261000000000000000e+03 1.152781145319597617e-24 -1.128846562507031091e-23 -1.261250000000000000e+03 5.081312496830345969e-24 -1.358891795136799943e-23 -1.261500000000000000e+03 -4.026679805638746167e-24 -1.193305871638011868e-23 -1.261750000000000000e+03 -5.145736897845467455e-24 -1.103792900999160244e-23 -1.262000000000000000e+03 5.903812861299098746e-24 -1.596328547064704319e-23 -1.262250000000000000e+03 2.456646206188556264e-24 -2.897281929765174436e-24 -1.262500000000000000e+03 -2.675011118601272878e-24 -9.600957290419391421e-24 -1.262750000000000000e+03 3.826711251247571760e-24 -7.785042061554210323e-24 -1.263000000000000000e+03 -4.822651445568022140e-24 3.067935779329886268e-25 -1.263250000000000000e+03 5.499888080742437801e-24 -5.860751068731533729e-24 -1.263500000000000000e+03 -4.525366144420960110e-24 -5.237456861553218204e-24 -1.263750000000000000e+03 -1.314803235918305059e-23 -5.081644238822857817e-24 -1.264000000000000000e+03 2.554205394759062782e-24 3.978846388527489867e-25 -1.264250000000000000e+03 2.714398245830632097e-24 -1.602792100367057680e-24 -1.264500000000000000e+03 1.137081459606851175e-23 8.041864871858894340e-25 -1.264750000000000000e+03 4.336367546057901176e-24 6.269445458756525110e-24 -1.265000000000000000e+03 6.133819413961783576e-25 -1.675130158072531684e-24 -1.265250000000000000e+03 -4.890959142213158836e-25 4.306342643085077389e-24 -1.265500000000000000e+03 -2.826203937933516331e-24 -4.224152947992713718e-24 -1.265750000000000000e+03 9.415635733506729511e-24 1.090586081375803588e-23 -1.266000000000000000e+03 -1.484570890593499973e-24 -1.354398225056984601e-24 -1.266250000000000000e+03 -1.246986624372374336e-23 -4.420754910065161196e-24 -1.266500000000000000e+03 -2.473481440819247970e-25 1.627322778943334182e-25 -1.266750000000000000e+03 -2.629708218967292676e-24 8.165532403536274151e-24 -1.267000000000000000e+03 6.444139058372708115e-24 -2.517493164406660992e-25 -1.267250000000000000e+03 5.755171932354343602e-25 3.918322750963838856e-24 -1.267500000000000000e+03 5.407732450839372722e-24 -3.497473905991965963e-24 -1.267750000000000000e+03 -1.499545213724103802e-25 -1.261310832055446242e-23 -1.268000000000000000e+03 -1.200286842781400526e-25 -4.077846161537274963e-24 -1.268250000000000000e+03 2.276052132556579633e-24 -1.478182267971608521e-24 -1.268500000000000000e+03 -7.549844933729892155e-24 -1.370045174158404384e-23 -1.268750000000000000e+03 1.868192879574426934e-24 5.905385203636778740e-24 -1.269000000000000000e+03 3.445757321093435818e-24 -6.037406689354402471e-25 -1.269250000000000000e+03 7.164568974665745997e-25 -4.153842763352935333e-24 -1.269500000000000000e+03 9.606542324051698503e-24 9.192725470250014088e-25 -1.269750000000000000e+03 -5.179131726753892231e-25 8.534214928137098110e-24 -1.270000000000000000e+03 5.711024656459019178e-24 1.555735936197335120e-23 -1.270250000000000000e+03 -3.007031652262475792e-24 6.116612194887808449e-24 -1.270500000000000000e+03 -1.104959045117865628e-23 5.120721038988463289e-24 -1.270750000000000000e+03 -3.497575176223923080e-24 -4.512181524327541058e-24 -1.271000000000000000e+03 4.034390314462614653e-24 -5.757233477403427210e-24 -1.271250000000000000e+03 -3.665119580621572394e-24 -5.146664623944561351e-24 -1.271500000000000000e+03 1.909596620141914797e-24 -8.118132970435732471e-24 -1.271750000000000000e+03 -3.437803689148272241e-24 -4.135734738455414641e-25 -1.272000000000000000e+03 8.921164629185478727e-24 -6.034528910866918181e-25 -1.272250000000000000e+03 -3.229346032032695833e-24 -1.365806565637057725e-23 -1.272500000000000000e+03 8.904799184778335401e-26 1.158945083226956834e-25 -1.272750000000000000e+03 -6.043296665951962389e-24 6.234076421156705604e-24 -1.273000000000000000e+03 -4.618772424236240236e-24 1.075141023263990641e-24 -1.273250000000000000e+03 -1.669271140592267719e-23 -5.967968095472116331e-24 -1.273500000000000000e+03 -3.712775383892033191e-24 -3.312590668252979174e-24 -1.273750000000000000e+03 -6.326525107724217740e-24 2.087890412442283041e-24 -1.274000000000000000e+03 3.656651609050707863e-24 -9.994093666320357415e-24 -1.274250000000000000e+03 -7.016412034281141040e-24 8.810340541681052079e-24 -1.274500000000000000e+03 2.681023784601435460e-24 -1.862544028056048134e-24 -1.274750000000000000e+03 -5.174366608455311357e-25 -1.181311895003308924e-23 -1.275000000000000000e+03 4.167035600968403947e-24 -3.575790117725022205e-24 -1.275250000000000000e+03 -4.735576515120293335e-24 4.124440285183676844e-24 -1.275500000000000000e+03 -8.200739185887673518e-24 -5.672454922793131394e-24 -1.275750000000000000e+03 4.750759354746271159e-24 -9.714154462759670944e-26 -1.276000000000000000e+03 -3.103858936036603703e-24 2.599097500689034063e-24 -1.276250000000000000e+03 7.047002336265614764e-24 2.942354142819656564e-24 -1.276500000000000000e+03 1.854577517231014054e-24 1.516973758272022001e-23 -1.276750000000000000e+03 5.969191335778873723e-24 1.559286138515941477e-24 -1.277000000000000000e+03 -3.692671216882110212e-25 3.420529857061545438e-24 -1.277250000000000000e+03 2.573997908265291734e-26 2.596413612813664614e-24 -1.277500000000000000e+03 -5.364194947409568521e-24 3.169015714594167587e-26 -1.277750000000000000e+03 -1.164086019391069651e-23 -9.355369251590859299e-25 -1.278000000000000000e+03 -5.863076856007671461e-24 8.112470726863207992e-24 -1.278250000000000000e+03 8.527375100007964497e-24 -5.139281836539165336e-24 -1.278500000000000000e+03 8.783531108040333649e-24 -9.628742441189549420e-24 -1.278750000000000000e+03 9.228988941568258065e-24 2.850714115261935430e-24 -1.279000000000000000e+03 -8.153095737201749500e-25 -1.626430008425068476e-24 -1.279250000000000000e+03 -6.651177303955828903e-25 3.721936152864160918e-26 -1.279500000000000000e+03 2.992041776011184838e-24 2.446087058643431416e-24 -1.279750000000000000e+03 -4.808045505016347836e-24 -1.613628334813404203e-24 -1.280000000000000000e+03 -6.656517719914329322e-24 5.316391913586498337e-24 -1.280250000000000000e+03 -2.983604147374508839e-24 -5.144307118480869816e-24 -1.280500000000000000e+03 4.367618270942732573e-24 -3.086195407514491853e-26 -1.280750000000000000e+03 7.006588206767899112e-24 -7.362754721029408207e-24 -1.281000000000000000e+03 -1.433653911242618857e-24 4.581639080130392638e-24 -1.281250000000000000e+03 4.609275104430887605e-24 -2.815841545852004533e-24 -1.281500000000000000e+03 -6.895299360196141055e-24 1.220864140025810226e-24 -1.281750000000000000e+03 1.400579110103062765e-24 -2.520259024634505014e-24 -1.282000000000000000e+03 2.123776372683393659e-25 2.628359279374567543e-24 -1.282250000000000000e+03 -3.392280554465124292e-24 3.052840354871352691e-24 -1.282500000000000000e+03 5.348877019643218645e-24 -5.053933456646177011e-24 -1.282750000000000000e+03 -2.919310262509590028e-24 7.394317252610156798e-25 -1.283000000000000000e+03 -2.633923687948646863e-24 9.951394220218135833e-24 -1.283250000000000000e+03 2.465997011200051435e-24 1.650410995762145873e-24 -1.283500000000000000e+03 2.971607032459257136e-25 -1.619651920794218804e-24 -1.283750000000000000e+03 6.849987513643156356e-24 1.925457813805837839e-24 -1.284000000000000000e+03 8.207898104001383756e-24 7.366925401992746929e-24 -1.284250000000000000e+03 -3.451179260967199294e-24 -2.632221788989090490e-24 -1.284500000000000000e+03 -1.032836919968532557e-23 4.696030625916637335e-24 -1.284750000000000000e+03 -1.990733960076974428e-24 1.063618925541267163e-23 -1.285000000000000000e+03 -9.938039791441109836e-24 -8.288293708198686169e-24 -1.285250000000000000e+03 2.273081070934121550e-24 -1.049547798737816061e-23 -1.285500000000000000e+03 -3.420676495262682469e-25 5.890800117144824635e-25 -1.285750000000000000e+03 -1.016137328465110245e-24 5.895553993789054628e-24 -1.286000000000000000e+03 -7.761609447614438844e-26 -1.148509631896142480e-24 -1.286250000000000000e+03 -1.078529998150334627e-23 -8.327583002925676157e-24 -1.286500000000000000e+03 -8.971088548257640235e-24 1.803746671071402029e-24 -1.286750000000000000e+03 1.568925389271884721e-24 6.059754902435837305e-24 -1.287000000000000000e+03 -3.175174641571277218e-24 -1.172634811484867683e-23 -1.287250000000000000e+03 -5.686303058166686593e-25 1.048296865777764936e-24 -1.287500000000000000e+03 -4.230012477742603060e-24 -1.289521301438468961e-24 -1.287750000000000000e+03 -4.148194215515850131e-24 -9.850788817312752500e-24 -1.288000000000000000e+03 5.390264385750802317e-24 8.447260798599412641e-24 -1.288250000000000000e+03 -8.519551588248367389e-24 -3.189424227774956321e-24 -1.288500000000000000e+03 3.060965739635639215e-24 -3.270645510033029358e-25 -1.288750000000000000e+03 4.860048128787745113e-25 1.442293181441092759e-23 -1.289000000000000000e+03 7.125904976401712865e-24 -5.894641665763817487e-24 -1.289250000000000000e+03 -2.416445260612080144e-24 1.173815257372000267e-24 -1.289500000000000000e+03 2.054408386292994382e-23 -9.384037292644991526e-24 -1.289750000000000000e+03 1.290910183775916584e-23 5.070215407149152312e-24 -1.290000000000000000e+03 6.154988686891721678e-25 -3.334661505322510474e-24 -1.290250000000000000e+03 4.717025424602775635e-24 -3.555584415865672720e-24 -1.290500000000000000e+03 4.455045079568993533e-24 -1.409671212253994481e-24 -1.290750000000000000e+03 -5.826993599842711119e-24 -5.791614670361863269e-25 -1.291000000000000000e+03 -2.201988847929020435e-24 -3.711874018075920353e-24 -1.291250000000000000e+03 3.847502716540557556e-24 3.617652203901852904e-24 -1.291500000000000000e+03 1.222587306015198777e-25 1.918002771059540052e-25 -1.291750000000000000e+03 -6.600058863220093167e-24 -1.342367567555100181e-24 -1.292000000000000000e+03 3.215765265294567021e-24 3.658728010479307052e-24 -1.292250000000000000e+03 3.764860323983467360e-24 -5.797157575888633242e-25 -1.292500000000000000e+03 7.152925120519368370e-25 -3.231833576432149446e-24 -1.292750000000000000e+03 -5.036972998383164311e-24 3.453754913392817443e-24 -1.293000000000000000e+03 -7.175699804688742077e-24 4.817473675075871242e-24 -1.293250000000000000e+03 8.847774732039598059e-24 -7.620676378624057191e-24 -1.293500000000000000e+03 6.393568267463920871e-24 1.112908444148823436e-24 -1.293750000000000000e+03 -1.178265850486901871e-24 -1.382485275777738426e-24 -1.294000000000000000e+03 4.911058769370733666e-24 -4.290283576094780902e-24 -1.294250000000000000e+03 8.162301298333911561e-24 -9.595387159590019404e-24 -1.294500000000000000e+03 1.258545756369574276e-24 -1.301934325952234628e-23 -1.294750000000000000e+03 4.129700808197295575e-24 2.776559648746848517e-24 -1.295000000000000000e+03 -2.457691251733603557e-24 1.200441210180982215e-23 -1.295250000000000000e+03 -5.742855036730394094e-24 6.686573039541325216e-24 -1.295500000000000000e+03 -5.207553938062805840e-24 6.107108248516228912e-24 -1.295750000000000000e+03 3.816472304530128399e-24 4.024362911913914468e-24 -1.296000000000000000e+03 -1.248041845679345709e-24 -5.315520733026805608e-24 -1.296250000000000000e+03 3.825916114608951532e-24 -1.465621485941469343e-24 -1.296500000000000000e+03 5.171521060414448102e-24 1.092356785618730814e-24 -1.296750000000000000e+03 -1.221171113341220865e-23 -3.844071338746178513e-24 -1.297000000000000000e+03 -1.422901115873075047e-24 1.165957070627077211e-23 -1.297250000000000000e+03 -3.650741948993880038e-24 2.772348047868210496e-24 -1.297500000000000000e+03 2.654834736935985398e-24 3.961889654756450644e-24 -1.297750000000000000e+03 7.254444588037399058e-24 9.285020987745220210e-24 -1.298000000000000000e+03 1.559420447703748823e-24 1.213928164557558829e-23 -1.298250000000000000e+03 3.210350350956988411e-24 -7.248918268842444506e-25 -1.298500000000000000e+03 4.247069014620197914e-24 2.181526898312475573e-24 -1.298750000000000000e+03 -5.697807863509558724e-25 -1.328959042431469991e-23 -1.299000000000000000e+03 1.351072377262400018e-23 4.518817630707693753e-24 -1.299250000000000000e+03 5.005557810596857467e-24 -7.926030853406124855e-24 -1.299500000000000000e+03 4.683136755337592875e-24 1.514667266853705305e-24 -1.299750000000000000e+03 3.054076028775527013e-24 9.327754257835454001e-24 -1.300000000000000000e+03 2.719155763643784628e-26 -8.782648822998814719e-24 -1.300250000000000000e+03 -2.483709765158107018e-24 6.576917869766602489e-24 -1.300500000000000000e+03 -5.950690781640766025e-24 -1.119480393257428881e-23 -1.300750000000000000e+03 4.730993931870477731e-24 1.412376481072935392e-23 -1.301000000000000000e+03 3.888817333482935434e-24 -2.515181626664514691e-24 -1.301250000000000000e+03 6.564159986037183715e-24 1.739135778630480718e-24 -1.301500000000000000e+03 1.519040198442472196e-23 -6.531044271142323532e-24 -1.301750000000000000e+03 -5.928376413160868539e-24 -8.642476831053310199e-24 -1.302000000000000000e+03 4.328551575864780818e-24 -4.515683193031556207e-24 -1.302250000000000000e+03 6.630223498125028199e-24 -2.694463823215668783e-24 -1.302500000000000000e+03 -3.407456557490707511e-25 3.658354073610075847e-24 -1.302750000000000000e+03 -3.108095122962861755e-24 1.242238328644114319e-23 -1.303000000000000000e+03 1.258098247727955973e-23 -6.503688744572753237e-24 -1.303250000000000000e+03 -6.756968430371072699e-24 1.831344786354948515e-24 -1.303500000000000000e+03 -4.095576607696565069e-24 -6.300157191529098856e-24 -1.303750000000000000e+03 1.453111745042924888e-24 -1.064263982350728618e-24 -1.304000000000000000e+03 -2.559810085021177114e-24 -2.560405135569565812e-26 -1.304250000000000000e+03 -3.856903252755574600e-24 4.548403388543274888e-24 -1.304500000000000000e+03 -1.115843223460827254e-23 -6.965449199124427791e-24 -1.304750000000000000e+03 8.001230228754439269e-25 -1.228132325014231574e-23 -1.305000000000000000e+03 9.279168199800978214e-24 1.661645240194340502e-24 -1.305250000000000000e+03 -8.212995939496417040e-24 -9.182218219690408705e-24 -1.305500000000000000e+03 2.205520867974106615e-24 -9.276973236736543150e-24 -1.305750000000000000e+03 2.679184204739437160e-24 3.551109311648870741e-24 -1.306000000000000000e+03 -1.559129222605795210e-24 6.800014587527516133e-26 -1.306250000000000000e+03 1.240823529225955057e-23 -3.953214230957842113e-24 -1.306500000000000000e+03 -4.758744793483883123e-24 8.360087634420181031e-24 -1.306750000000000000e+03 8.718982213605809997e-24 8.890452949140742196e-24 -1.307000000000000000e+03 6.664767128952127660e-24 -2.099504333175395924e-25 -1.307250000000000000e+03 1.114261649938577594e-23 1.167338384006379373e-23 -1.307500000000000000e+03 -1.089533356811045344e-23 -1.085806893012429803e-24 -1.307750000000000000e+03 -1.697643734899983657e-24 2.968868029724694839e-24 -1.308000000000000000e+03 1.470009645605285570e-24 -8.724012123125834208e-24 -1.308250000000000000e+03 2.057218915636157584e-24 -1.193220970952616047e-23 -1.308500000000000000e+03 9.126954801356262703e-26 -5.828449192928806384e-24 -1.308750000000000000e+03 6.961510147682788068e-24 -4.708632437420488542e-24 -1.309000000000000000e+03 -1.591601110938292071e-24 -2.434216181672482523e-24 -1.309250000000000000e+03 4.749282883780614328e-24 7.152112834983994425e-24 -1.309500000000000000e+03 -3.225165487055779220e-24 -2.698126591033773090e-24 -1.309750000000000000e+03 -1.257889273372300272e-24 6.535316121701673082e-24 -1.310000000000000000e+03 5.298310633166902620e-24 6.023597043143146726e-24 -1.310250000000000000e+03 4.118252941581270373e-24 1.846985912773569955e-24 -1.310500000000000000e+03 -6.504124340358409063e-24 -1.377317189385866454e-23 -1.310750000000000000e+03 3.223546838000545929e-24 -4.031929472789630440e-24 -1.311000000000000000e+03 -1.466543385946599162e-24 -3.220563747867239161e-24 -1.311250000000000000e+03 1.094611943860009104e-24 -5.106441394811747924e-24 -1.311500000000000000e+03 -2.826840265827677929e-24 3.854319197850864979e-24 -1.311750000000000000e+03 -7.001584402454916276e-24 1.651651033467056290e-24 -1.312000000000000000e+03 1.085216291197640297e-24 7.468894850321898411e-24 -1.312250000000000000e+03 1.103435315481601502e-24 1.111380503930470743e-24 -1.312500000000000000e+03 -4.429587846188072508e-26 -5.543963539090416712e-24 -1.312750000000000000e+03 1.067458918026294170e-25 1.327453534853708211e-24 -1.313000000000000000e+03 -1.825943453457975961e-25 -4.684634547803401625e-24 -1.313250000000000000e+03 7.621419168865823453e-24 -1.250992799531979019e-23 -1.313500000000000000e+03 8.581602193035921122e-24 2.594387216907394116e-24 -1.313750000000000000e+03 4.833709188437437387e-24 1.303886886482971547e-24 -1.314000000000000000e+03 -5.048108673416048556e-24 -5.964562003672053882e-24 -1.314250000000000000e+03 4.911010384768715556e-24 -3.382742669296975600e-24 -1.314500000000000000e+03 -8.561977212477310275e-24 2.002988980536380207e-24 -1.314750000000000000e+03 5.000607925816724721e-24 2.972393365577389694e-24 -1.315000000000000000e+03 -7.808170434859723284e-24 -4.679229494946728532e-24 -1.315250000000000000e+03 4.217099275455949789e-24 5.383385989096862366e-24 -1.315500000000000000e+03 -4.049111418258575885e-24 -4.144051498817812360e-25 -1.315750000000000000e+03 -7.318696651159524827e-24 -5.806975612528406194e-24 -1.316000000000000000e+03 -3.847221634150387827e-24 -5.730951212759142347e-24 -1.316250000000000000e+03 2.309525233545949102e-24 1.906323220560013893e-24 -1.316500000000000000e+03 -2.459789998966441161e-24 7.693170896362602038e-24 -1.316750000000000000e+03 7.057403752655616401e-24 4.610973645208916045e-24 -1.317000000000000000e+03 -1.238241158120249876e-23 -2.179544445764230954e-24 -1.317250000000000000e+03 8.104656348697067027e-25 -4.625383971957418422e-24 -1.317500000000000000e+03 4.507739615614148383e-24 2.460950035986593573e-24 -1.317750000000000000e+03 -1.073557234571373293e-23 -5.466547095166671868e-24 -1.318000000000000000e+03 -9.415327916972469197e-24 -8.789861276198018331e-24 -1.318250000000000000e+03 -1.752817817924083677e-24 2.800857654817339859e-24 -1.318500000000000000e+03 -6.527840689940408160e-25 -3.065173714121773297e-24 -1.318750000000000000e+03 -3.255613457028839897e-24 1.395167723382662938e-24 -1.319000000000000000e+03 4.168694663219617123e-24 -8.361672249682550128e-24 -1.319250000000000000e+03 2.638960067036771370e-24 -5.573979184569503006e-24 -1.319500000000000000e+03 -8.564110263989060052e-24 -4.200564883036420644e-24 -1.319750000000000000e+03 3.745647719935916968e-24 2.000728518487507452e-24 -1.320000000000000000e+03 7.136288534033450040e-24 -1.231153945263661642e-23 -1.320250000000000000e+03 1.833018571912727158e-25 5.460472899473445615e-24 -1.320500000000000000e+03 1.068597886007194808e-24 6.148930006120066175e-24 -1.320750000000000000e+03 -1.093877534965704640e-23 3.754104712726523049e-24 -1.321000000000000000e+03 5.505092342398454515e-24 8.246283747289842273e-24 -1.321250000000000000e+03 6.631925550366427668e-24 -6.796721641617969163e-24 -1.321500000000000000e+03 -1.691053747316401668e-24 7.994701927080901627e-25 -1.321750000000000000e+03 -5.210438895778671049e-25 1.031342529307284015e-23 -1.322000000000000000e+03 -1.285969710029903059e-24 -5.110076727433162935e-24 -1.322250000000000000e+03 -2.946845895750223121e-24 8.558098323906909650e-24 -1.322500000000000000e+03 4.994352387482462980e-24 -5.999082524638730200e-24 -1.322750000000000000e+03 -7.899424809711387905e-24 -8.351804447618658102e-24 -1.323000000000000000e+03 -9.770130198895267781e-24 -2.527322938483360820e-24 -1.323250000000000000e+03 7.517207609140427438e-24 6.843721120755393439e-24 -1.323500000000000000e+03 -5.794470335020621942e-24 -2.367856643274653237e-24 -1.323750000000000000e+03 -3.064122969031707556e-24 -5.811211158736621470e-24 -1.324000000000000000e+03 4.481395271899383332e-24 6.485685514933977279e-25 -1.324250000000000000e+03 -3.367144021797658502e-24 -6.666751509341645134e-24 -1.324500000000000000e+03 -4.424650585572418667e-24 4.045657767565280610e-25 -1.324750000000000000e+03 8.372355316944005141e-24 3.752391983332820992e-24 -1.325000000000000000e+03 9.246502012741520946e-25 -1.656720235591084044e-24 -1.325250000000000000e+03 6.996247972276237912e-24 3.938647442988311730e-24 -1.325500000000000000e+03 -9.051268591428838869e-24 9.521005685203802637e-24 -1.325750000000000000e+03 7.415813251960327378e-24 -4.770932139143081797e-24 -1.326000000000000000e+03 6.142215321793096081e-25 -8.339480999281027782e-25 -1.326250000000000000e+03 -2.149052175978361794e-24 3.543471988806729266e-24 -1.326500000000000000e+03 -7.816210140646000866e-24 8.503086811527929123e-24 -1.326750000000000000e+03 -1.231092367401139255e-24 -2.599818374248076335e-24 -1.327000000000000000e+03 5.520174248845898054e-24 4.857945649041984146e-24 -1.327250000000000000e+03 9.009775035540277593e-25 9.720060198117926265e-24 -1.327500000000000000e+03 7.868191705004568532e-24 -5.623798968083427572e-25 -1.327750000000000000e+03 7.213025968524925554e-25 -5.077267941899757195e-24 -1.328000000000000000e+03 4.467625231544813827e-25 5.656298150829557965e-26 -1.328250000000000000e+03 4.220726418593241024e-24 8.541852713219101360e-24 -1.328500000000000000e+03 -1.080706022965859494e-23 1.208840979167312173e-23 -1.328750000000000000e+03 -6.589141042308424779e-25 -1.074422680897675071e-23 -1.329000000000000000e+03 -6.360811314182638660e-25 -3.802824326986815730e-24 -1.329250000000000000e+03 1.147595209805379118e-24 4.851783201944970116e-24 -1.329500000000000000e+03 4.240229649293191473e-24 -4.067951095222692576e-26 -1.329750000000000000e+03 9.750699311756292885e-24 3.594125986199930315e-24 -1.330000000000000000e+03 7.259653175284928398e-24 -3.491941805588323070e-26 -1.330250000000000000e+03 -2.021317239316510255e-24 1.422364022817950273e-25 -1.330500000000000000e+03 -4.744813384269480048e-24 -1.104054075785508191e-23 -1.330750000000000000e+03 -8.709396844643149837e-24 -3.696634364859780092e-24 -1.331000000000000000e+03 -4.745313653776176386e-24 -7.826594687469505588e-24 -1.331250000000000000e+03 2.934016801859429735e-24 -1.647942889339774685e-23 -1.331500000000000000e+03 -4.016078732334457417e-24 -1.158354468639617783e-24 -1.331750000000000000e+03 -8.337973966240472749e-25 -6.231510911154154301e-24 -1.332000000000000000e+03 -2.761638331953393194e-24 -3.541031547495790151e-24 -1.332250000000000000e+03 9.144624500099017955e-25 4.164755142909590408e-24 -1.332500000000000000e+03 -1.642649710778477092e-24 -7.452246164905660267e-25 -1.332750000000000000e+03 -7.213700751050874363e-24 6.989948808011443605e-24 -1.333000000000000000e+03 2.248143660257782523e-24 9.187390578231596161e-24 -1.333250000000000000e+03 -1.883689813616642781e-24 3.642429252088811006e-24 -1.333500000000000000e+03 5.190343055764322038e-24 -9.157823850108495704e-24 -1.333750000000000000e+03 -9.033076472828649113e-24 1.072503494171183940e-23 -1.334000000000000000e+03 4.235619472223924649e-24 -3.028619443441038062e-24 -1.334250000000000000e+03 -5.831477859689733350e-24 -5.195366335861369053e-24 -1.334500000000000000e+03 1.449139600562018002e-24 7.243456895810980508e-24 -1.334750000000000000e+03 -5.402356538004138953e-24 9.135374414105094485e-24 -1.335000000000000000e+03 4.737311314369456033e-24 4.356438226380614074e-24 -1.335250000000000000e+03 -3.862482957250702436e-24 -1.560609566254408035e-23 -1.335500000000000000e+03 -8.827206378473201932e-24 4.378438443170861748e-24 -1.335750000000000000e+03 7.139178634143944439e-24 -3.158736611690498115e-24 -1.336000000000000000e+03 -1.842279487830559398e-24 -5.691615365301108465e-24 -1.336250000000000000e+03 -4.774531498487831715e-24 3.563850693240491982e-24 -1.336500000000000000e+03 7.458874699280379093e-24 2.789404390355719922e-24 -1.336750000000000000e+03 -2.704656465956172131e-25 -2.264736123545058736e-24 -1.337000000000000000e+03 -9.697054575114421546e-25 -2.465326132213447081e-24 -1.337250000000000000e+03 -4.172264509712450493e-24 3.141674656511647504e-24 -1.337500000000000000e+03 -4.010027733525314299e-24 -7.871339696795409358e-24 -1.337750000000000000e+03 -3.092122964630827808e-24 1.362867154510545859e-23 -1.338000000000000000e+03 -7.552326914245938786e-24 -2.805234097485060086e-24 -1.338250000000000000e+03 -2.548490442194600188e-25 2.835922003433155709e-24 -1.338500000000000000e+03 1.238140856355723080e-24 4.423676714549425002e-24 -1.338750000000000000e+03 -2.616901347932484088e-24 5.173281004442581197e-24 -1.339000000000000000e+03 -7.687687872003249923e-24 -1.788303989765840148e-23 -1.339250000000000000e+03 2.357373732925441930e-24 2.401181144526470412e-24 -1.339500000000000000e+03 -2.208092361931796557e-24 -6.587414550675279675e-24 -1.339750000000000000e+03 -9.896821473775531873e-24 -6.563053610171472249e-25 -1.340000000000000000e+03 2.261190420019410770e-25 -1.007455629281305634e-23 -1.340250000000000000e+03 -1.415506128707219061e-24 -1.678593809753662481e-24 -1.340500000000000000e+03 2.130415383256382232e-24 1.547290302845239977e-26 -1.340750000000000000e+03 3.971292620416138832e-24 7.691430585164625413e-24 -1.341000000000000000e+03 -1.241297768033970105e-24 -2.112894463882950943e-24 -1.341250000000000000e+03 -4.649190446036409346e-24 -2.993596008254903714e-24 -1.341500000000000000e+03 -7.274799987559281510e-24 2.076785675631121496e-24 -1.341750000000000000e+03 -7.073430063143049224e-24 7.229323302220308431e-24 -1.342000000000000000e+03 -9.506847857652474244e-24 2.420303146388860668e-24 -1.342250000000000000e+03 1.353550960640488370e-23 6.203800632430820344e-24 -1.342500000000000000e+03 7.873462310927352660e-24 2.728174561714693599e-25 -1.342750000000000000e+03 -1.542811816580970379e-24 -5.033925716306774285e-24 -1.343000000000000000e+03 3.749878833829962845e-24 -5.370507859499085809e-24 -1.343250000000000000e+03 -4.281072886382220917e-24 4.017856946586826651e-24 -1.343500000000000000e+03 9.895058195934434446e-25 -6.644461760492393825e-24 -1.343750000000000000e+03 -1.314247698765609246e-23 1.056060735715632848e-23 -1.344000000000000000e+03 2.343155229785718801e-25 2.103649852917396601e-25 -1.344250000000000000e+03 5.914873356922042558e-24 7.873689313502265533e-24 -1.344500000000000000e+03 -4.605542648788957167e-24 -1.755134576417955449e-24 -1.344750000000000000e+03 -4.343804373334609484e-24 -3.360764912911566444e-26 -1.345000000000000000e+03 -2.332060844083407762e-24 8.215223835244471122e-25 -1.345250000000000000e+03 7.383725652120884640e-24 5.421912176621880198e-24 -1.345500000000000000e+03 4.310499442803309843e-26 5.602627523472756350e-24 -1.345750000000000000e+03 -8.315777778360327641e-24 -5.779066731422196042e-24 -1.346000000000000000e+03 -1.048399759953567755e-24 8.831661376543536397e-25 -1.346250000000000000e+03 9.381797984914929457e-25 -1.288540959961110851e-23 -1.346500000000000000e+03 8.372835752038812695e-24 -4.752834596909209392e-24 -1.346750000000000000e+03 -1.247763271691274651e-23 -1.529042441258614004e-24 -1.347000000000000000e+03 -4.976845986688606732e-24 -1.097258347376294937e-23 -1.347250000000000000e+03 4.696666186388283073e-24 -5.121322057351048669e-24 -1.347500000000000000e+03 -1.283077976310302221e-23 3.141581921329068731e-24 -1.347750000000000000e+03 -2.361135905147900766e-24 7.714531729979951421e-24 -1.348000000000000000e+03 -6.300168323250801850e-24 -7.350667760863414318e-24 -1.348250000000000000e+03 1.004785117390923478e-23 -1.088909070243497584e-23 -1.348500000000000000e+03 1.902105565319250846e-23 8.735558851018188977e-24 -1.348750000000000000e+03 -8.416428306035505666e-24 -4.019670472321386327e-24 -1.349000000000000000e+03 -9.689551342898211554e-25 7.154872516516386860e-25 -1.349250000000000000e+03 -1.261890869705430457e-24 -4.469500433337382045e-24 -1.349500000000000000e+03 -9.283829609669740348e-24 -1.516088428411115057e-23 -1.349750000000000000e+03 6.215082383647746323e-24 1.176262983605569427e-23 -1.350000000000000000e+03 -4.385204526126983412e-24 1.854351543633324915e-23 -1.350250000000000000e+03 -7.783427721996392059e-24 3.200239899865429653e-24 -1.350500000000000000e+03 -1.153825758802761700e-23 4.953922581611162300e-24 -1.350750000000000000e+03 -6.728207776564039373e-24 -1.786003618108400443e-24 -1.351000000000000000e+03 3.455251973172933407e-24 1.290437925965399987e-24 -1.351250000000000000e+03 -7.121734350527856651e-24 4.518300525262082658e-24 -1.351500000000000000e+03 9.828340910623538815e-24 4.605361686315144038e-24 -1.351750000000000000e+03 8.289059291414759860e-24 -3.924445806089146299e-24 -1.352000000000000000e+03 1.287317293949958721e-23 9.325088008306439182e-24 -1.352250000000000000e+03 2.275980470909712575e-24 -6.465757582151109462e-24 -1.352500000000000000e+03 4.516083684166262618e-24 -4.322003964242026900e-24 -1.352750000000000000e+03 -2.828164723691654139e-24 8.326137298418197815e-24 -1.353000000000000000e+03 -1.153015240513945310e-23 -1.611216657246203495e-24 -1.353250000000000000e+03 2.470942365439563388e-24 -4.752126515299751189e-25 -1.353500000000000000e+03 6.930960472285873351e-24 7.897565757191005679e-24 -1.353750000000000000e+03 -1.355783381302701228e-23 -6.069036130928607070e-24 -1.354000000000000000e+03 -1.155478623056783612e-24 4.976287682277692082e-25 -1.354250000000000000e+03 6.923495505826501415e-24 -8.496413548362404597e-24 -1.354500000000000000e+03 -3.833679474123739351e-25 1.509696050400198821e-24 -1.354750000000000000e+03 -9.004195054348810840e-24 -1.014299593197669230e-23 -1.355000000000000000e+03 -9.463601453614447416e-24 6.646800677119581947e-25 -1.355250000000000000e+03 -2.925432513845974392e-24 -4.981479815530996787e-24 -1.355500000000000000e+03 2.975556417450277221e-24 3.247918300269975968e-24 -1.355750000000000000e+03 1.093414714557028009e-23 1.414722138412067590e-24 -1.356000000000000000e+03 5.061534469823378895e-24 -2.236781875105696152e-24 -1.356250000000000000e+03 6.513255508747112772e-24 -6.071222668852237921e-24 -1.356500000000000000e+03 -3.767751411086117829e-24 -1.882277939915874442e-24 -1.356750000000000000e+03 -8.340677399693776290e-24 -5.594337834198145345e-24 -1.357000000000000000e+03 1.361232913392643815e-25 -5.003108354199130259e-24 -1.357250000000000000e+03 -1.975585146143308087e-24 7.249616052881966653e-24 -1.357500000000000000e+03 2.702216497039412090e-24 -4.877874484096266004e-24 -1.357750000000000000e+03 5.773271988241681369e-24 -1.180797302493952027e-23 -1.358000000000000000e+03 3.133643483398698393e-24 -1.789869113801386533e-24 -1.358250000000000000e+03 -3.873928123279188192e-24 -2.860260205577756816e-24 -1.358500000000000000e+03 -3.398888818265416828e-24 2.831283976670094506e-24 -1.358750000000000000e+03 -2.305530052551161981e-26 6.292993302436072804e-24 -1.359000000000000000e+03 -4.093519447263798971e-24 -4.201602245380509621e-24 -1.359250000000000000e+03 1.137019634662604981e-23 -8.307906817897160914e-24 -1.359500000000000000e+03 1.315484570986606048e-23 1.270214928465746637e-23 -1.359750000000000000e+03 -7.211784240431595353e-25 3.885207274875324224e-24 -1.360000000000000000e+03 2.264764530736813829e-24 1.222933591194814566e-23 -1.360250000000000000e+03 -1.052314865594793456e-23 -9.814664473153577934e-24 -1.360500000000000000e+03 -1.455377438668061925e-24 8.718614912649701274e-24 -1.360750000000000000e+03 1.521246805434375431e-24 2.801665918337650779e-24 -1.361000000000000000e+03 -6.077186874393875020e-24 1.529078829372436882e-24 -1.361250000000000000e+03 5.620686686008782012e-24 2.324920151383402595e-23 -1.361500000000000000e+03 4.792501402050806308e-24 -2.227647532312675599e-24 -1.361750000000000000e+03 1.140418957185911502e-23 -1.277348998850924516e-23 -1.362000000000000000e+03 3.071204621705204773e-24 1.052457363962525118e-23 -1.362250000000000000e+03 -4.631462068745390670e-24 -3.878312605195722950e-24 -1.362500000000000000e+03 -8.525323360820866937e-24 -5.265583513988772517e-24 -1.362750000000000000e+03 6.229653175181569729e-24 -4.599846975366908326e-26 -1.363000000000000000e+03 -7.467885075681542643e-24 4.519640660719157938e-24 -1.363250000000000000e+03 3.939520975615480688e-25 -9.849499743938901950e-25 -1.363500000000000000e+03 -4.950254384431748907e-24 -3.594970593561693865e-24 -1.363750000000000000e+03 -3.535226489199552583e-24 1.224253438033822387e-23 -1.364000000000000000e+03 6.484528507858553063e-24 6.647270652547663252e-24 -1.364250000000000000e+03 4.813240895447374065e-24 1.033109526149971948e-24 -1.364500000000000000e+03 7.081827537664736435e-24 -7.515215953808701233e-24 -1.364750000000000000e+03 4.649911905262302880e-24 -2.342949803320423260e-24 -1.365000000000000000e+03 -4.755460978179156729e-24 2.077117766803970545e-24 -1.365250000000000000e+03 1.910511438346888306e-24 2.532083130094322542e-24 -1.365500000000000000e+03 -7.837659820768699068e-25 6.874940258107035092e-24 -1.365750000000000000e+03 -6.173586334329025699e-24 5.030904202398493158e-25 -1.366000000000000000e+03 -1.010955974058986379e-24 1.402990445426569313e-24 -1.366250000000000000e+03 -6.022333570455696565e-24 -1.330926242213894450e-24 -1.366500000000000000e+03 -5.477908775877455721e-24 4.732121893186998661e-24 -1.366750000000000000e+03 -4.722560569093214709e-24 -3.841654814879353218e-24 -1.367000000000000000e+03 2.790200468563362369e-24 -6.075979324344064561e-24 -1.367250000000000000e+03 -4.502149221335250190e-24 -1.299070281857829391e-23 -1.367500000000000000e+03 1.348342687591995164e-23 1.104918601033940916e-23 -1.367750000000000000e+03 4.414783059148664415e-24 3.617680793397542260e-24 -1.368000000000000000e+03 2.515796101250305031e-24 -5.259845063152749795e-24 -1.368250000000000000e+03 6.946293596607877260e-24 -1.070699912962474280e-23 -1.368500000000000000e+03 1.457312976521704482e-24 -1.587627557266928076e-24 -1.368750000000000000e+03 -9.855764860812243949e-24 1.005624251774287201e-23 -1.369000000000000000e+03 -6.427525606623365825e-24 -1.103692371465966020e-24 -1.369250000000000000e+03 2.087773500574016537e-24 -6.101046563269296189e-24 -1.369500000000000000e+03 -8.220153338918195998e-24 -5.257993955322735195e-24 -1.369750000000000000e+03 -3.504493584376085663e-24 -3.895725012847763885e-24 -1.370000000000000000e+03 1.282380129835772921e-24 -2.207616136058924554e-24 -1.370250000000000000e+03 3.635137369269950435e-24 9.884772667753722647e-24 -1.370500000000000000e+03 9.003472212502259476e-24 4.369064275452747556e-24 -1.370750000000000000e+03 3.991371183304012308e-24 -1.990018428258647956e-24 -1.371000000000000000e+03 1.100578078378180242e-23 -8.312452614058802453e-24 -1.371250000000000000e+03 1.070182241877883148e-23 1.496993977228617371e-24 -1.371500000000000000e+03 -1.534755242278708415e-25 2.021629230504250940e-24 -1.371750000000000000e+03 1.908430173356926314e-23 -8.204739821789278424e-24 -1.372000000000000000e+03 -1.914837012311020090e-23 6.995503282825161018e-24 -1.372250000000000000e+03 -3.628827433613582372e-24 -5.946307819750228148e-24 -1.372500000000000000e+03 -4.160527963058157400e-25 -3.536309742121269193e-24 -1.372750000000000000e+03 1.123144489737290969e-23 -3.738519877316346885e-24 -1.373000000000000000e+03 7.383543384855940199e-24 1.533566223417078514e-25 -1.373250000000000000e+03 -3.488989423238391353e-24 1.098974567383747563e-23 -1.373500000000000000e+03 1.113523218157413242e-23 1.513620873924883146e-24 -1.373750000000000000e+03 -8.083835107309756443e-24 -5.410712340449602202e-24 -1.374000000000000000e+03 -8.635955482677380136e-24 9.553981623944258673e-25 -1.374250000000000000e+03 -1.136229207736442055e-24 -4.681720409184539848e-24 -1.374500000000000000e+03 5.613249651801443160e-24 2.981982531616008980e-24 -1.374750000000000000e+03 5.796983555809306532e-24 -2.713112764076924647e-24 -1.375000000000000000e+03 -1.997055494415689635e-24 -8.364471687531577221e-24 -1.375250000000000000e+03 -6.769722704522444602e-25 -3.248055869278661559e-24 -1.375500000000000000e+03 1.491727857673414493e-23 2.658075765873052656e-24 -1.375750000000000000e+03 3.437443098631012177e-24 2.454764370618711983e-24 -1.376000000000000000e+03 7.585595458678673857e-24 -1.488266982186260549e-23 -1.376250000000000000e+03 -1.038699432193680706e-23 8.727063146718967433e-24 -1.376500000000000000e+03 2.922459765805785117e-25 1.917445576590418638e-24 -1.376750000000000000e+03 -4.236027166101604279e-24 5.339679521976930023e-25 -1.377000000000000000e+03 3.305020088356464387e-24 1.790837921466988320e-24 -1.377250000000000000e+03 -6.480566340003777018e-24 8.953409369556158348e-24 -1.377500000000000000e+03 -3.444782682316684108e-24 -2.087937467580286916e-24 -1.377750000000000000e+03 -3.605028497142345587e-24 2.278109240220004015e-24 -1.378000000000000000e+03 -1.123688051108590219e-23 -4.699384505385388687e-24 -1.378250000000000000e+03 -7.039053772400658677e-24 -2.539986254244040703e-24 -1.378500000000000000e+03 -1.309782253701154231e-24 -4.682316892914323244e-27 -1.378750000000000000e+03 -4.518156041984007238e-24 -3.956729134311765808e-24 -1.379000000000000000e+03 -1.532223781839183843e-24 -3.777628483419358642e-24 -1.379250000000000000e+03 2.222508286183565075e-24 -1.858059695304211570e-25 -1.379500000000000000e+03 4.094631148365251116e-24 -5.439404691061069417e-24 -1.379750000000000000e+03 -1.531998352721571211e-24 -1.500101990664803881e-24 -1.380000000000000000e+03 -3.492472236244797754e-24 -5.322947162181396565e-25 -1.380250000000000000e+03 -4.041613169909190879e-24 6.288996721960139780e-24 -1.380500000000000000e+03 -8.897798071174465859e-25 5.215732581045369982e-24 -1.380750000000000000e+03 -6.712882126918789993e-24 -1.106158664743057466e-24 -1.381000000000000000e+03 -1.466195922050113391e-24 1.867832573875946203e-24 -1.381250000000000000e+03 -2.172280129306457877e-24 1.126338832330036010e-23 -1.381500000000000000e+03 -1.719319990475130776e-24 -1.070472549573307429e-24 -1.381750000000000000e+03 -5.081819899034266561e-24 1.055393967198755611e-23 -1.382000000000000000e+03 4.742979903423445767e-24 -2.745907994300429267e-24 -1.382250000000000000e+03 2.943470065437736203e-24 1.022676285283393728e-24 -1.382500000000000000e+03 2.338213012746808634e-25 -6.362901093422590531e-24 -1.382750000000000000e+03 -4.727787992968811937e-24 -6.595572842115278113e-24 -1.383000000000000000e+03 -3.460163391989175814e-24 3.069614227031528914e-24 -1.383250000000000000e+03 -1.373920412207958152e-24 -5.939940340420272380e-24 -1.383500000000000000e+03 1.199447227996994305e-24 7.435890819917355441e-24 -1.383750000000000000e+03 -6.627006376358313644e-24 -5.895153654444381719e-25 -1.384000000000000000e+03 -2.417320502037664938e-24 -3.940118225585199221e-24 -1.384250000000000000e+03 -3.960897934786121100e-24 -6.166067078236431915e-24 -1.384500000000000000e+03 -2.392395644085548813e-24 -9.357916249410913826e-25 -1.384750000000000000e+03 -3.936773762013370451e-24 4.980352581409601302e-24 -1.385000000000000000e+03 7.842296927256339571e-24 8.102101568744023693e-24 -1.385250000000000000e+03 -2.085823798257982640e-24 6.069444801297647409e-24 -1.385500000000000000e+03 1.077323283614300779e-23 -1.014175919793302004e-23 -1.385750000000000000e+03 -1.799835798752910502e-24 4.357229469638960919e-24 -1.386000000000000000e+03 -4.445424742503097760e-24 4.494855104360122195e-24 -1.386250000000000000e+03 -3.421413127886415516e-24 1.574700539981544340e-23 -1.386500000000000000e+03 -4.882212919610703058e-24 -1.398528392296312377e-24 -1.386750000000000000e+03 1.235951685861934742e-23 7.129538555222228935e-24 -1.387000000000000000e+03 -6.077813813945813563e-24 -5.494057393531324588e-24 -1.387250000000000000e+03 4.315336172180041608e-24 -1.079886268086841443e-24 -1.387500000000000000e+03 -1.069065927664018056e-23 -4.504534366629019036e-24 -1.387750000000000000e+03 -6.118327549717526583e-24 4.437986159178968727e-24 -1.388000000000000000e+03 8.436179092468230308e-24 -3.195927555595230690e-24 -1.388250000000000000e+03 -5.891706737841839561e-24 4.596116548664240032e-24 -1.388500000000000000e+03 -4.360566936232109765e-24 1.074005996965432136e-24 -1.388750000000000000e+03 -6.198328664371713759e-25 4.625940549195359035e-24 -1.389000000000000000e+03 1.639831795066112613e-23 6.118143142946017271e-25 -1.389250000000000000e+03 6.207414005765696020e-24 7.265079104142777451e-24 -1.389500000000000000e+03 1.348247179403912497e-23 6.321325906951403213e-24 -1.389750000000000000e+03 -9.302923144097983846e-25 -1.678527924332465108e-24 -1.390000000000000000e+03 2.046748616640965165e-24 5.163512656905813150e-24 -1.390250000000000000e+03 -5.275800887403790819e-24 3.301695353667002845e-24 -1.390500000000000000e+03 -1.263437964139334824e-24 3.773570495336499559e-24 -1.390750000000000000e+03 7.221539256051683659e-25 5.318542568879535558e-24 -1.391000000000000000e+03 -1.897163492436812516e-24 -2.418814018156443375e-24 -1.391250000000000000e+03 -3.537763537068465029e-24 -4.490646745165062231e-24 -1.391500000000000000e+03 6.351740808437072425e-25 -4.620811402891817928e-24 -1.391750000000000000e+03 -1.623287041281660079e-24 3.693444168105816429e-24 -1.392000000000000000e+03 5.481501116647098851e-24 9.716273071631520885e-24 -1.392250000000000000e+03 -1.453757243852287478e-23 -8.469563638719409725e-25 -1.392500000000000000e+03 7.712580106010162610e-25 -7.799769711814546588e-24 -1.392750000000000000e+03 -6.332571738167555717e-24 -4.556013946398759366e-24 -1.393000000000000000e+03 6.279759983713875405e-24 -8.444079900655849827e-24 -1.393250000000000000e+03 7.767516952873702167e-24 1.060523623585696632e-23 -1.393500000000000000e+03 -7.044527315330433074e-24 7.197338358966583272e-24 -1.393750000000000000e+03 -4.338076922273868593e-24 -5.541538879353521067e-24 -1.394000000000000000e+03 1.365737023356212482e-24 4.410954383835996213e-25 -1.394250000000000000e+03 4.750012736279662430e-24 4.110697144280356679e-24 -1.394500000000000000e+03 4.716327185462389311e-24 1.916066100905448930e-24 -1.394750000000000000e+03 -3.772743703853587906e-24 -1.193274308536858891e-23 -1.395000000000000000e+03 6.578509250795421173e-24 -9.736405612377779152e-24 -1.395250000000000000e+03 -5.710368178643655616e-24 -8.043143826758629281e-24 -1.395500000000000000e+03 -3.821151767399969714e-24 1.191601040069987109e-23 -1.395750000000000000e+03 7.071530901911557465e-24 -1.190885577930537887e-23 -1.396000000000000000e+03 -1.893595466303371577e-25 -1.134355666956151454e-23 -1.396250000000000000e+03 -6.929990279159083432e-24 1.169782747773172218e-23 -1.396500000000000000e+03 -6.018027901502385320e-24 -1.388796771633143517e-24 -1.396750000000000000e+03 7.314998578083712540e-24 2.626230485285608606e-24 -1.397000000000000000e+03 -3.497222221256316265e-24 5.462689685013809840e-25 -1.397250000000000000e+03 -8.013203880635205560e-24 -3.521681267370180196e-24 -1.397500000000000000e+03 8.884762553919781801e-24 -8.476873378053411255e-24 -1.397750000000000000e+03 -9.025908690196354884e-25 -2.116948180846523414e-24 -1.398000000000000000e+03 1.702381522045405893e-24 -8.005293113985413396e-24 -1.398250000000000000e+03 4.167486537975908076e-24 -4.528862185519946595e-24 -1.398500000000000000e+03 -1.494567600209430514e-23 4.927993722965744375e-24 -1.398750000000000000e+03 -9.590217127086814498e-25 -5.063365688484706207e-24 -1.399000000000000000e+03 -8.438924890600881087e-24 -6.315467599732258011e-24 -1.399250000000000000e+03 -1.883305932457149508e-23 -1.506471045356896323e-24 -1.399500000000000000e+03 -4.963843463894897738e-24 4.627494899176791923e-24 -1.399750000000000000e+03 8.171793973582951149e-24 -1.431387870748452342e-23 -1.400000000000000000e+03 -7.049941695753110307e-24 -8.842105757032874972e-25 -1.400250000000000000e+03 1.268824843248467064e-23 4.065640333990725184e-24 -1.400500000000000000e+03 -9.561518548772312225e-24 -4.926095303611371564e-24 -1.400750000000000000e+03 -6.423706886587496206e-25 -3.873606058580631646e-24 -1.401000000000000000e+03 9.111326787661714178e-24 1.246126487841649682e-23 -1.401250000000000000e+03 7.230634385498214971e-24 -9.108816059503500496e-24 -1.401500000000000000e+03 7.868404616483240106e-24 -2.377025714768256506e-24 -1.401750000000000000e+03 -4.009991426735292998e-24 -5.953455164998108947e-24 -1.402000000000000000e+03 -1.193165374468737717e-23 5.529605680357332096e-24 -1.402250000000000000e+03 3.263217415051540624e-25 -6.638243061634519535e-24 -1.402500000000000000e+03 -2.005163958332592924e-24 2.779068961453344164e-24 -1.402750000000000000e+03 -1.180580741052769941e-23 8.468878505278632458e-25 -1.403000000000000000e+03 6.416345980134155532e-24 2.496542910338978918e-24 -1.403250000000000000e+03 -1.074054092826242498e-23 3.699856990931103341e-24 -1.403500000000000000e+03 -2.298645142832370277e-24 -4.738968639268921896e-24 -1.403750000000000000e+03 -7.388993919671235015e-24 -1.668515820602879415e-24 -1.404000000000000000e+03 1.518794871020155611e-23 1.637414426605370065e-23 -1.404250000000000000e+03 -1.918175617921210965e-24 1.241149267437258564e-23 -1.404500000000000000e+03 2.179461232749900773e-23 -1.299780734826680167e-23 -1.404750000000000000e+03 -7.003320323790689772e-25 1.206637148241031358e-23 -1.405000000000000000e+03 3.381593017475931804e-24 9.879782571875121334e-25 -1.405250000000000000e+03 -2.169950700643945225e-25 1.891105359767253810e-23 -1.405500000000000000e+03 -2.103469257033512073e-24 1.387706248737836857e-23 -1.405750000000000000e+03 -1.255232641691685192e-23 1.168136476266996931e-24 -1.406000000000000000e+03 2.176702845493318558e-24 7.086350644054279693e-24 -1.406250000000000000e+03 -5.130894000531002723e-24 6.574392977376843069e-24 -1.406500000000000000e+03 3.318995601034976320e-24 -6.215646014257410154e-24 -1.406750000000000000e+03 -2.967639755097597656e-25 1.258621838054159706e-24 -1.407000000000000000e+03 6.662324591141900453e-24 -3.269348311463946870e-24 -1.407250000000000000e+03 1.294680531319556832e-24 9.223664088086853631e-24 -1.407500000000000000e+03 4.289713541483429536e-24 -1.603701118038005440e-24 -1.407750000000000000e+03 9.912608115358015388e-24 5.394083112685672893e-24 -1.408000000000000000e+03 -1.607882396845013689e-24 1.004230320870824882e-23 -1.408250000000000000e+03 4.346406521524183409e-24 -1.681655445057062458e-23 -1.408500000000000000e+03 9.514908460925726671e-25 -5.025929580270903268e-24 -1.408750000000000000e+03 2.923516418858018068e-24 -3.387529772157340609e-24 -1.409000000000000000e+03 1.668184825320096973e-24 -8.835065979879316717e-25 -1.409250000000000000e+03 -2.359388885789014923e-24 5.938072726921943780e-24 -1.409500000000000000e+03 7.477957609783871989e-24 6.024682714535293707e-25 -1.409750000000000000e+03 -1.439530275109949131e-23 3.679325537809298624e-24 -1.410000000000000000e+03 5.703929674554165025e-24 8.775922058519299892e-24 -1.410250000000000000e+03 1.579136478380325997e-23 -4.735541702441368210e-24 -1.410500000000000000e+03 1.168670046648147102e-24 1.006972544702941210e-23 -1.410750000000000000e+03 7.344559640493642359e-24 -4.148439828720097998e-24 -1.411000000000000000e+03 -2.845342650571844535e-24 4.255900339485979802e-24 -1.411250000000000000e+03 -3.687429114371166672e-24 -7.288359687033924140e-24 -1.411500000000000000e+03 -4.030345526993225923e-24 -8.983812803962917492e-24 -1.411750000000000000e+03 -1.123810020645607746e-24 4.936183384232911907e-24 -1.412000000000000000e+03 -6.602936411032416347e-24 5.713472561002830282e-25 -1.412250000000000000e+03 1.120891445692079308e-23 5.096698917559655971e-24 -1.412500000000000000e+03 -3.688563231507709086e-24 2.512916463878648572e-24 -1.412750000000000000e+03 -5.273131597073265734e-24 -1.146845886230174536e-23 -1.413000000000000000e+03 3.774889514109230395e-24 5.357191600815246767e-24 -1.413250000000000000e+03 -5.635444927502036669e-24 -5.838079642261655294e-24 -1.413500000000000000e+03 2.916703840679534718e-24 -8.685374563480752026e-24 -1.413750000000000000e+03 -4.862877274055058660e-24 5.774377119500792786e-24 -1.414000000000000000e+03 1.536311774173506820e-23 -2.904554214606694252e-24 -1.414250000000000000e+03 1.171679308090176228e-23 -5.189706889798702678e-24 -1.414500000000000000e+03 7.045074825065105242e-24 -6.682306028888005479e-24 -1.414750000000000000e+03 -8.609023379615459524e-24 5.857418971418548537e-25 -1.415000000000000000e+03 2.348150576566944233e-24 5.709034297845287040e-24 -1.415250000000000000e+03 -1.111932365082354183e-23 -2.058445009954668252e-24 -1.415500000000000000e+03 -7.202471171941019024e-24 -4.664221794984083151e-24 -1.415750000000000000e+03 1.091492966759893442e-24 -1.366298112142010368e-23 -1.416000000000000000e+03 -1.623601558943816788e-24 1.441485600155417777e-24 -1.416250000000000000e+03 -1.310604140107360388e-23 -3.856652488575812310e-25 -1.416500000000000000e+03 9.679404812284424415e-24 -2.219999463440068417e-24 -1.416750000000000000e+03 -8.550970367227554157e-24 4.281269490916169025e-24 -1.417000000000000000e+03 1.074079098567726384e-23 -3.469154145645385167e-24 -1.417250000000000000e+03 6.121156594718734120e-24 4.773241774350550109e-24 -1.417500000000000000e+03 -2.308486350480646498e-24 9.234896621249311580e-25 -1.417750000000000000e+03 -5.284602711520617259e-24 -2.122889943022201003e-24 -1.418000000000000000e+03 -1.083146859480972033e-23 1.147431932269311156e-23 -1.418250000000000000e+03 5.267767568333390305e-24 -5.193036615167800530e-25 -1.418500000000000000e+03 2.895623216600422013e-24 5.967908719021243858e-24 -1.418750000000000000e+03 8.649655837120633718e-25 2.597648141698917515e-24 -1.419000000000000000e+03 9.318709656429726210e-25 -2.388106444378318286e-24 -1.419250000000000000e+03 -4.316816605087592310e-24 3.961828569575352855e-24 -1.419500000000000000e+03 -1.183595651890901765e-24 4.459805726505483587e-24 -1.419750000000000000e+03 9.191510313682781654e-24 -7.481685715915879557e-24 -1.420000000000000000e+03 -9.069646831024448408e-25 1.050763605971468058e-23 -1.420250000000000000e+03 2.135369470504492719e-24 7.549457789989674172e-24 -1.420500000000000000e+03 -7.565990171330862138e-24 1.177038783628527488e-24 -1.420750000000000000e+03 2.891483535905497731e-24 2.450231924363692421e-24 -1.421000000000000000e+03 -4.341122925099181230e-24 3.298267362813108490e-25 -1.421250000000000000e+03 -2.382391171986658162e-24 -9.074089138629899768e-24 -1.421500000000000000e+03 -1.715442077290668830e-24 8.887784133618798032e-24 -1.421750000000000000e+03 -1.464873429290071455e-24 1.323229118052096650e-23 -1.422000000000000000e+03 7.416103035429170507e-24 8.187086471934942007e-24 -1.422250000000000000e+03 6.062464250885196437e-24 -1.272041962949724242e-24 -1.422500000000000000e+03 -1.542030510875669291e-24 -4.309028605473168472e-24 -1.422750000000000000e+03 7.093907752939545489e-24 -1.144765615831486733e-23 -1.423000000000000000e+03 -2.364034189704718965e-24 3.490878861007869963e-24 -1.423250000000000000e+03 1.512429128415522360e-24 -3.309303329946357039e-24 -1.423500000000000000e+03 -2.149328050370708536e-24 -6.056317645833268460e-24 -1.423750000000000000e+03 -3.957919183818076694e-25 -2.411029713215418006e-25 -1.424000000000000000e+03 -2.198118943302766805e-24 -4.920858935352229604e-24 -1.424250000000000000e+03 -2.237219957380948929e-24 4.889724929127829789e-24 -1.424500000000000000e+03 8.028843128166934005e-24 1.591488061868865120e-24 -1.424750000000000000e+03 1.555308544473045553e-24 6.236641281703207362e-24 -1.425000000000000000e+03 6.280455789909864724e-24 -1.224582009365798068e-23 -1.425250000000000000e+03 -7.616385005188098659e-26 -9.690593062718819713e-25 -1.425500000000000000e+03 3.928849320934963004e-24 6.002817386399651340e-24 -1.425750000000000000e+03 -5.370120900379896146e-24 -1.326121269463325689e-23 -1.426000000000000000e+03 3.703957583210349180e-24 8.887156468031199059e-24 -1.426250000000000000e+03 8.109993361393285290e-24 -6.293194316740921114e-24 -1.426500000000000000e+03 9.568102881441417491e-24 -2.403710815861860969e-24 -1.426750000000000000e+03 1.484955726055287435e-23 6.470847215024329702e-24 -1.427000000000000000e+03 8.361573812505382474e-25 -1.740629512853548899e-23 -1.427250000000000000e+03 7.401153991175552469e-24 -1.351747846222742896e-23 -1.427500000000000000e+03 -2.821221370394676068e-24 -2.369690083389562878e-24 -1.427750000000000000e+03 -6.029261001213472777e-24 -1.759497595662888061e-23 -1.428000000000000000e+03 -3.300228646685685150e-24 6.301936241807000574e-24 -1.428250000000000000e+03 5.881497242992526143e-24 -4.901488798702552183e-24 -1.428500000000000000e+03 7.945813869878307391e-25 -9.095504127476630774e-25 -1.428750000000000000e+03 1.113180843628736390e-24 -7.958493456767507979e-25 -1.429000000000000000e+03 -7.786603510242881136e-24 -3.178801542775216543e-24 -1.429250000000000000e+03 3.216666358898401529e-24 -1.213664630929648760e-23 -1.429500000000000000e+03 -5.113409540009958157e-24 -8.133226913627863222e-25 -1.429750000000000000e+03 3.692196355627966515e-24 -5.480855154719028771e-24 -1.430000000000000000e+03 -4.527288699046731390e-24 4.462657143252452986e-24 -1.430250000000000000e+03 7.882269647665849667e-24 6.088879933520303311e-24 -1.430500000000000000e+03 -1.590818578299828378e-24 3.799113516536288823e-24 -1.430750000000000000e+03 -6.257689760527001735e-24 2.981017848034181937e-24 -1.431000000000000000e+03 -4.539037080160272442e-24 -8.789761780727928733e-24 -1.431250000000000000e+03 2.330498492944154426e-25 1.322236588715170977e-24 -1.431500000000000000e+03 -1.755016813740829101e-24 -6.613440411837726110e-24 -1.431750000000000000e+03 -3.582015205139397147e-24 -3.706581959400054117e-24 -1.432000000000000000e+03 4.950310680686960687e-24 -1.771485893103217707e-23 -1.432250000000000000e+03 1.126728657066917491e-24 -3.930670588825863570e-24 -1.432500000000000000e+03 -1.987831095370480895e-24 -9.418609125880328702e-24 -1.432750000000000000e+03 -4.891916472445487994e-24 6.553975128197122117e-25 -1.433000000000000000e+03 6.048631876327143422e-24 2.264625976543591177e-24 -1.433250000000000000e+03 -7.849303130079151196e-24 5.495393800500864706e-24 -1.433500000000000000e+03 -2.322314871605212817e-24 5.101253334986930654e-24 -1.433750000000000000e+03 2.584107302978148421e-24 2.331178364940759385e-24 -1.434000000000000000e+03 -1.762922757597186947e-24 -1.606379117295758382e-23 -1.434250000000000000e+03 1.012324045663162291e-25 4.668026541827418693e-25 -1.434500000000000000e+03 3.907876861810045683e-24 -7.448681792206621237e-24 -1.434750000000000000e+03 -8.322726710970034077e-24 9.234894502928185665e-24 -1.435000000000000000e+03 9.417213540509531816e-24 -1.295482036374034040e-23 -1.435250000000000000e+03 -8.100233546283516097e-24 -8.702143255220877539e-24 -1.435500000000000000e+03 -3.360108247626095245e-24 6.477056725580768176e-25 -1.435750000000000000e+03 5.439310584023550807e-24 2.867406410529033324e-24 -1.436000000000000000e+03 -4.974164425719862036e-24 5.141881566904482910e-24 -1.436250000000000000e+03 9.061611930137672878e-24 2.643714090942917484e-24 -1.436500000000000000e+03 1.271646229051423321e-24 8.905255114798246812e-24 -1.436750000000000000e+03 7.079234185602146209e-24 1.352526354357448712e-23 -1.437000000000000000e+03 -8.159382832708868644e-24 6.876892194463112347e-24 -1.437250000000000000e+03 3.652185407291008382e-24 4.988510223312550554e-24 -1.437500000000000000e+03 2.206423680547872898e-23 -9.511059557230469079e-24 -1.437750000000000000e+03 3.587738279050253087e-25 7.175706992687644672e-24 -1.438000000000000000e+03 -2.238270192987675675e-24 -2.067756300382378586e-23 -1.438250000000000000e+03 -1.259691545765816303e-23 3.561879812847728871e-24 -1.438500000000000000e+03 8.648780085166466597e-24 -1.032885124412525165e-24 -1.438750000000000000e+03 2.661804204576463788e-24 2.310502489518208350e-24 -1.439000000000000000e+03 4.028912229557467024e-24 5.130509105052856539e-24 -1.439250000000000000e+03 -3.594742717321006183e-24 3.580241128666966352e-24 -1.439500000000000000e+03 9.354421633202086982e-24 3.380959487259654574e-24 -1.439750000000000000e+03 -2.089716654905514718e-24 7.925490717637977033e-24 -1.440000000000000000e+03 -9.564497323678522709e-24 9.789895893899821767e-24 -1.440250000000000000e+03 -1.591071328622491755e-23 5.768881423247539681e-24 -1.440500000000000000e+03 3.541765425960150961e-24 2.881713298086291028e-24 -1.440750000000000000e+03 1.748191787016555809e-24 -6.067048578920260899e-24 -1.441000000000000000e+03 4.154479490995039664e-24 -3.573792348612664124e-24 -1.441250000000000000e+03 1.079572191482796069e-23 -3.332441029682941691e-24 -1.441500000000000000e+03 -3.720306426789930148e-24 3.786203650137300762e-25 -1.441750000000000000e+03 -7.840184345665314833e-24 -3.140650179743208319e-24 -1.442000000000000000e+03 -7.448788719249145465e-25 2.792585505105463196e-24 -1.442250000000000000e+03 -6.832758109361624239e-24 -7.093377045273464871e-24 -1.442500000000000000e+03 -6.108571470384195801e-24 1.244788760582764966e-23 -1.442750000000000000e+03 1.959749283031801320e-24 -3.627577861944674699e-24 -1.443000000000000000e+03 -4.926587505061446008e-24 3.807809696807758145e-24 -1.443250000000000000e+03 5.162199733661444226e-25 -1.887987065814223217e-24 -1.443500000000000000e+03 7.323478486805479879e-24 4.795709763785026276e-25 -1.443750000000000000e+03 1.098829481880955933e-23 1.273124745810643043e-24 -1.444000000000000000e+03 -6.490400020905742923e-25 4.978107493069361944e-24 -1.444250000000000000e+03 8.461354340750764424e-24 3.650839722809050955e-24 -1.444500000000000000e+03 -1.097865987323964900e-23 5.883508465529545701e-24 -1.444750000000000000e+03 8.581757135595140624e-24 1.296546762490836520e-24 -1.445000000000000000e+03 -7.529793669230642378e-24 2.573920479168657182e-24 -1.445250000000000000e+03 2.813054821677294512e-24 -4.866636780801347052e-25 -1.445500000000000000e+03 3.708468249562984843e-24 -2.588687224564554691e-24 -1.445750000000000000e+03 4.872278686637813176e-24 5.537057623950284011e-24 -1.446000000000000000e+03 1.459826022905270282e-23 -7.935285466355163392e-24 -1.446250000000000000e+03 2.714377017706188381e-24 -5.000024779499700441e-24 -1.446500000000000000e+03 -6.721570105818630798e-24 -1.107690082828206846e-23 -1.446750000000000000e+03 -1.003540909526676668e-23 1.272827705857474578e-23 -1.447000000000000000e+03 -6.254734785575312936e-24 3.475595892154151648e-24 -1.447250000000000000e+03 -6.069059804422019738e-24 6.319530935697145824e-24 -1.447500000000000000e+03 -3.233778028734595612e-24 -7.291211848188388239e-24 -1.447750000000000000e+03 -4.402513161687494096e-24 -5.051872903169945981e-25 -1.448000000000000000e+03 1.155770828227378198e-23 -4.875108710252306683e-24 -1.448250000000000000e+03 -1.061291892005618727e-23 1.272681078548475512e-23 -1.448500000000000000e+03 1.571366517924782601e-23 -8.082844913505634685e-24 -1.448750000000000000e+03 7.764541277029892542e-24 -3.340120522340742712e-24 -1.449000000000000000e+03 4.625675901747458293e-24 1.863626526046900416e-24 -1.449250000000000000e+03 5.741211553863184768e-24 -1.750669737206657888e-24 -1.449500000000000000e+03 2.083542223604749477e-24 -9.753252527228845893e-24 -1.449750000000000000e+03 -2.577292897637116946e-24 -7.607919657592881732e-24 -1.450000000000000000e+03 -1.263414670110338850e-24 2.789584167202650881e-24 -1.450250000000000000e+03 8.433865807950280567e-24 2.065334156888027545e-24 -1.450500000000000000e+03 4.548153356209612950e-24 2.037994794968826213e-24 -1.450750000000000000e+03 2.700052213681903849e-24 -9.038530598075921216e-24 -1.451000000000000000e+03 1.355555771958902692e-24 2.620736110264634426e-24 -1.451250000000000000e+03 1.070570234764281594e-23 1.662719357252708520e-24 -1.451500000000000000e+03 3.060238262516094139e-24 -8.487536861269592925e-24 -1.451750000000000000e+03 6.879500083840319251e-25 -2.461607442891176071e-24 -1.452000000000000000e+03 2.192580915097242803e-24 -1.201657840368040332e-23 -1.452250000000000000e+03 -6.297073774147680354e-24 -2.392813099033972219e-24 -1.452500000000000000e+03 -2.200613523123175485e-24 -8.319862079781927342e-24 -1.452750000000000000e+03 -6.640888838420632153e-25 1.099720978764943704e-23 -1.453000000000000000e+03 2.476387738355015233e-24 -7.430868366479019969e-24 -1.453250000000000000e+03 -8.880832565381256644e-24 2.877239404098756716e-25 -1.453500000000000000e+03 8.008031300663374542e-24 8.962346985309949365e-25 -1.453750000000000000e+03 -5.424942435569899908e-24 -2.477608659116818996e-24 -1.454000000000000000e+03 -1.355040247235085396e-23 3.343113339419195287e-24 -1.454250000000000000e+03 -8.602338688894836607e-24 -5.561344860573393948e-24 -1.454500000000000000e+03 5.237694769821237744e-24 1.092409808341120855e-23 -1.454750000000000000e+03 -6.425154001309177586e-24 3.281851115507874132e-24 -1.455000000000000000e+03 5.979892228088659580e-24 3.606599685816822130e-24 -1.455250000000000000e+03 -9.676157273795886676e-26 2.134253375766582408e-24 -1.455500000000000000e+03 -4.534086706707998072e-24 -9.759579098097907963e-24 -1.455750000000000000e+03 -1.341818830730737683e-23 1.304827974526886680e-24 -1.456000000000000000e+03 -1.035803639454434697e-23 -5.458787704547596037e-25 -1.456250000000000000e+03 -3.567630709688429479e-24 2.740036729201581767e-24 -1.456500000000000000e+03 3.996095214625143000e-24 7.597065712899827361e-24 -1.456750000000000000e+03 -3.408691073895061991e-24 3.338352337386380839e-24 -1.457000000000000000e+03 5.133977661868564916e-24 2.587987710779294611e-24 -1.457250000000000000e+03 -5.590312913019530567e-24 -3.790993074359984358e-24 -1.457500000000000000e+03 1.172318257326780527e-24 5.490342055245819214e-24 -1.457750000000000000e+03 -3.332296536664914037e-24 4.710824747738384444e-25 -1.458000000000000000e+03 -7.821604897384622934e-24 -1.157445014290789071e-23 -1.458250000000000000e+03 -8.596289690068495002e-24 5.367552261398280679e-24 -1.458500000000000000e+03 4.830503417996828712e-24 -1.819586715000211711e-24 -1.458750000000000000e+03 -9.270702119537221949e-25 2.489274186086257276e-24 -1.459000000000000000e+03 1.704590267364392887e-25 -1.027896531492566522e-24 -1.459250000000000000e+03 -3.572212207775406100e-25 1.026574997719217689e-23 -1.459500000000000000e+03 -1.067885623898597031e-24 -6.361048139649680231e-24 -1.459750000000000000e+03 -7.667369859870253113e-24 -5.143184557305768576e-24 -1.460000000000000000e+03 2.019655414811055903e-23 8.012754794244400874e-24 -1.460250000000000000e+03 -7.043729370270363045e-24 -3.100339624446268019e-25 -1.460500000000000000e+03 1.066942401383703069e-23 -1.507867068737452057e-23 -1.460750000000000000e+03 2.196366383736827527e-24 -1.417152794703167436e-23 -1.461000000000000000e+03 9.361187796905535487e-24 -1.478512327783167961e-23 -1.461250000000000000e+03 1.132726404045366947e-24 6.649265693161013486e-26 -1.461500000000000000e+03 -1.320971175051457517e-23 7.843817382131379304e-24 -1.461750000000000000e+03 -4.024842405680207876e-25 8.059720285141465675e-24 -1.462000000000000000e+03 -1.177826855090977983e-24 -4.289048333998523795e-24 -1.462250000000000000e+03 3.652829772378540803e-24 -5.821100398217478433e-24 -1.462500000000000000e+03 -5.910895567951275847e-24 1.215006260202541620e-24 -1.462750000000000000e+03 -9.837596804989031416e-24 -2.001045908339883989e-24 -1.463000000000000000e+03 -3.165471156838733987e-24 5.283197333542683095e-24 -1.463250000000000000e+03 5.216394506193308467e-24 1.219607256645560549e-23 -1.463500000000000000e+03 -2.459236625865100737e-24 1.760332835084168478e-24 -1.463750000000000000e+03 5.388329997634518626e-24 -2.139597980505110051e-23 -1.464000000000000000e+03 1.024407620968150079e-23 8.226932641269611938e-24 -1.464250000000000000e+03 -9.506713044063136368e-24 2.507755937791039839e-24 -1.464500000000000000e+03 -1.046771503900724346e-23 -6.242312124942986065e-24 -1.464750000000000000e+03 -1.311557574256036920e-24 5.186626322616620909e-24 -1.465000000000000000e+03 6.933235990560330307e-25 3.005018953725974040e-24 -1.465250000000000000e+03 -1.560382515834868735e-24 5.900699668415827384e-24 -1.465500000000000000e+03 1.609597697826667594e-24 -1.079168951652279577e-23 -1.465750000000000000e+03 -4.515717262389304675e-25 -4.700261263249719394e-24 -1.466000000000000000e+03 -5.271555116665264931e-24 5.255916708032535523e-24 -1.466250000000000000e+03 4.907999448609170741e-24 -8.843089005815975632e-25 -1.466500000000000000e+03 -1.745330736469113472e-24 -3.016071905245219933e-24 -1.466750000000000000e+03 3.950948887038280887e-24 6.832327481607361127e-25 -1.467000000000000000e+03 -6.569915643296047943e-24 -2.784877956468459396e-25 -1.467250000000000000e+03 9.692672384392331948e-24 3.939877407954331385e-24 -1.467500000000000000e+03 7.758287724923025907e-25 -5.681698923195023640e-24 -1.467750000000000000e+03 3.177566371134262111e-25 3.634453276075752290e-24 -1.468000000000000000e+03 -3.936444665697446685e-24 4.086897738315713006e-24 -1.468250000000000000e+03 -1.257303796967890111e-23 -7.101544469944909069e-24 -1.468500000000000000e+03 4.369975764005452415e-24 1.019947465162670297e-24 -1.468750000000000000e+03 -9.700300121155259956e-24 2.120386893258172913e-24 -1.469000000000000000e+03 -1.117330915379942238e-23 1.702625816468210394e-24 -1.469250000000000000e+03 6.798250435545017897e-24 -6.015909628133981620e-24 -1.469500000000000000e+03 -3.225985437592021894e-24 -3.130365335819969532e-24 -1.469750000000000000e+03 -8.485391277438290161e-24 -4.653755583922268935e-24 -1.470000000000000000e+03 -4.226131305300224195e-24 1.216714839284573904e-23 -1.470250000000000000e+03 -5.364953166342855023e-24 7.630265694346765932e-24 -1.470500000000000000e+03 -1.656231560701729549e-24 1.155805008022783200e-24 -1.470750000000000000e+03 1.872822499884149079e-24 -3.786400155580157094e-24 -1.471000000000000000e+03 9.063130366568908969e-24 -2.636873345504993529e-24 -1.471250000000000000e+03 6.634040351203357897e-24 -8.989488764699825878e-24 -1.471500000000000000e+03 -6.284818569131226209e-25 1.113410595948118589e-23 -1.471750000000000000e+03 -8.912379458307164985e-24 -9.447399810362186488e-24 -1.472000000000000000e+03 3.504583315199974766e-24 5.948582490408459284e-24 -1.472250000000000000e+03 4.355888444320806471e-24 -1.089872631636987981e-23 -1.472500000000000000e+03 -3.476056503696900693e-24 -2.014506366889753732e-25 -1.472750000000000000e+03 7.202506927286694419e-24 -3.330968444393195617e-24 -1.473000000000000000e+03 -1.010141407818406682e-23 -2.142618108996985744e-24 -1.473250000000000000e+03 -6.546013249711153460e-24 3.952900229482658929e-24 -1.473500000000000000e+03 -2.024640636258899068e-24 -1.226962125376224529e-24 -1.473750000000000000e+03 -2.301567788709462385e-24 1.190929455919176419e-23 -1.474000000000000000e+03 -5.483631169909422036e-24 2.456736483970684591e-24 -1.474250000000000000e+03 1.682717444772369668e-24 4.146222225314652287e-24 -1.474500000000000000e+03 -4.087831897816697687e-24 -6.380519107369073269e-24 -1.474750000000000000e+03 5.544286574569643556e-24 -8.015798016625677250e-24 -1.475000000000000000e+03 8.694797877328163407e-24 -6.344417517422422442e-24 -1.475250000000000000e+03 2.868146026445710326e-24 8.115723999393360014e-24 -1.475500000000000000e+03 5.957927722132803520e-24 -7.273393903374774920e-24 -1.475750000000000000e+03 -1.168319651700202803e-24 -3.266565432048025963e-24 -1.476000000000000000e+03 5.753238102368625949e-24 2.099160306682859104e-24 -1.476250000000000000e+03 1.036956556087376006e-24 -1.398966782629779825e-23 -1.476500000000000000e+03 1.102586898523339043e-23 3.284072150145956697e-24 -1.476750000000000000e+03 3.394333485542492776e-24 -4.335819862198201503e-24 -1.477000000000000000e+03 -1.260281282608979816e-24 1.665998510331154485e-23 -1.477250000000000000e+03 9.750160405592312217e-25 1.064813408324617608e-23 -1.477500000000000000e+03 9.943214163693650309e-24 -8.476828051622572176e-24 -1.477750000000000000e+03 -3.458425816977204579e-24 1.592603504872105760e-23 -1.478000000000000000e+03 -3.940569242795578676e-24 1.373827661396109090e-23 -1.478250000000000000e+03 -8.971384442500376280e-24 7.830918916979887124e-24 -1.478500000000000000e+03 -2.180200065571378011e-24 -1.608498394537257325e-24 -1.478750000000000000e+03 -1.269818236541737206e-23 -3.522337919623738388e-24 -1.479000000000000000e+03 5.122357635974087119e-24 -2.170087066927679779e-24 -1.479250000000000000e+03 4.172837968997660718e-25 -4.889251098804193855e-24 -1.479500000000000000e+03 -5.184361531053175578e-24 -2.095613801065407753e-24 -1.479750000000000000e+03 5.835717991514384967e-25 7.150085728472701802e-24 -1.480000000000000000e+03 8.239364098337101863e-24 5.691233003626613500e-24 -1.480250000000000000e+03 1.344799429126552612e-25 -1.711274622950102058e-24 -1.480500000000000000e+03 1.682896685053741553e-23 -1.338175550981907961e-23 -1.480750000000000000e+03 1.094379131144350173e-23 -2.328452872425037930e-24 -1.481000000000000000e+03 1.635837220986668453e-24 -2.955455856615820858e-25 -1.481250000000000000e+03 -3.270394712937084266e-24 -2.937296237381582878e-24 -1.481500000000000000e+03 2.171849918407018256e-24 7.910195248385296705e-24 -1.481750000000000000e+03 1.422586677586041032e-23 -6.154078689303495168e-26 -1.482000000000000000e+03 -5.995931968185395555e-24 -1.732169111888859500e-24 -1.482250000000000000e+03 1.088705984352222453e-23 -1.272194724770162480e-23 -1.482500000000000000e+03 -2.892420957389615475e-24 -4.192030894888182389e-24 -1.482750000000000000e+03 1.256515964617332479e-24 -2.197160237398554329e-24 -1.483000000000000000e+03 9.916130628048624465e-24 -4.463181523350632474e-24 -1.483250000000000000e+03 5.786758467513272635e-24 -5.701171518789640606e-24 -1.483500000000000000e+03 -3.618437899449131088e-25 1.361162197494448265e-24 -1.483750000000000000e+03 9.630144631544294893e-24 1.720363845575322182e-24 -1.484000000000000000e+03 -7.211040679584596154e-24 -1.625784593514991303e-24 -1.484250000000000000e+03 1.008820752865294718e-23 8.494144365510907020e-24 -1.484500000000000000e+03 1.052929301940163442e-23 8.136406115222577106e-24 -1.484750000000000000e+03 1.969383461160336094e-24 3.473986225484351762e-24 -1.485000000000000000e+03 -5.586880567491009201e-24 9.465820258421219617e-24 -1.485250000000000000e+03 -4.601948945668636144e-24 -9.935775653926665821e-24 -1.485500000000000000e+03 -6.314760633214507493e-24 5.508140498333876499e-24 -1.485750000000000000e+03 -9.186879694798059650e-24 3.776427231135512421e-25 -1.486000000000000000e+03 4.296554176467679488e-24 6.281602024838738876e-24 -1.486250000000000000e+03 9.624962333972132653e-24 -9.896405560181484602e-24 -1.486500000000000000e+03 -4.036853154049386324e-24 4.292060284856489878e-24 -1.486750000000000000e+03 1.751161183285574474e-24 -1.129092014568414588e-23 -1.487000000000000000e+03 2.748041122699660349e-24 -1.130857728655619113e-23 -1.487250000000000000e+03 -5.693258178245350763e-25 3.066708898133161180e-24 -1.487500000000000000e+03 9.084583261390219527e-24 4.634605588054768465e-24 -1.487750000000000000e+03 9.907657045076435270e-24 -3.132473305931171796e-24 -1.488000000000000000e+03 -1.299817101113790337e-24 -1.274126344523809653e-23 -1.488250000000000000e+03 -3.314557499093338295e-24 8.345408514554149143e-24 -1.488500000000000000e+03 9.560836096325209800e-24 -2.787794003344287018e-24 -1.488750000000000000e+03 2.252327355402108759e-25 1.843418498110854504e-23 -1.489000000000000000e+03 9.398274988314598553e-26 -1.012381625808623510e-23 -1.489250000000000000e+03 -5.606231837265008220e-24 -8.134512619022908603e-24 -1.489500000000000000e+03 -1.525772073726764167e-24 4.731327104083336886e-24 -1.489750000000000000e+03 -8.023494920258505010e-24 6.980282486768341669e-25 -1.490000000000000000e+03 2.734202275899204860e-24 4.921103732397925052e-24 -1.490250000000000000e+03 3.158089232229746677e-24 -4.108444527240110232e-24 -1.490500000000000000e+03 5.251352665179282594e-24 -6.303652939759856076e-24 -1.490750000000000000e+03 -1.298031498965924422e-23 3.804013757983439450e-24 -1.491000000000000000e+03 -1.203571704972707793e-23 -4.658527376587096511e-24 -1.491250000000000000e+03 -4.010797675444185085e-24 -3.886011950398255799e-24 -1.491500000000000000e+03 -5.012618301298616966e-24 -7.622200661650178589e-24 -1.491750000000000000e+03 3.931287943975924127e-25 7.904800174319673602e-24 -1.492000000000000000e+03 1.950721611553613203e-24 1.221909836519818868e-24 -1.492250000000000000e+03 8.828623342703298308e-24 -3.142721506910711659e-26 -1.492500000000000000e+03 1.194595151468831114e-23 6.264671313214469441e-24 -1.492750000000000000e+03 1.932962599398186738e-25 -1.059927987376015388e-23 -1.493000000000000000e+03 -1.729121121876153438e-24 -1.050292568822712005e-23 -1.493250000000000000e+03 4.212459163560576132e-24 9.195109186689824016e-25 -1.493500000000000000e+03 -1.404932059349020243e-23 -7.773493833032091453e-24 -1.493750000000000000e+03 -3.819585700022940990e-24 1.480684109714937891e-23 -1.494000000000000000e+03 -4.653335937857247652e-24 -3.090553519747975686e-24 -1.494250000000000000e+03 -9.775976632031968420e-24 2.313712230639637122e-23 -1.494500000000000000e+03 6.096550989545440328e-24 -7.915792614238733760e-24 -1.494750000000000000e+03 -3.117485167066581388e-25 5.706509271049433752e-24 -1.495000000000000000e+03 -2.646536421063868587e-24 -6.413661693894480281e-24 -1.495250000000000000e+03 1.409224412288735923e-24 -1.271636073445020300e-23 -1.495500000000000000e+03 4.656711672666000293e-24 -4.867252628685641597e-24 -1.495750000000000000e+03 -6.966382087538673057e-24 1.253663313541494013e-24 -1.496000000000000000e+03 -6.143902800739193594e-24 9.359322771771543012e-24 -1.496250000000000000e+03 5.213608717175870197e-24 -5.063604556535874240e-24 -1.496500000000000000e+03 -3.943327982824713393e-24 8.571040491507177864e-25 -1.496750000000000000e+03 4.312313891622951513e-24 -4.833955632006986707e-25 -1.497000000000000000e+03 -1.052144231608894650e-23 4.911680805670509608e-24 -1.497250000000000000e+03 -8.667679398842888181e-25 4.269376987023198456e-25 -1.497500000000000000e+03 -1.005371362000355332e-24 6.306275443521066143e-25 -1.497750000000000000e+03 -8.228220871371336103e-25 -8.752069609980485916e-24 -1.498000000000000000e+03 8.317027268628678180e-24 -8.119320256513563147e-24 -1.498250000000000000e+03 -1.245898467686164729e-24 -5.785658399476806546e-24 -1.498500000000000000e+03 1.820509505702392239e-24 -1.563366860712622155e-24 -1.498750000000000000e+03 -8.982003163794337810e-24 -8.746150568460839767e-24 -1.499000000000000000e+03 -9.336127741453562754e-25 2.981295028619485493e-24 -1.499250000000000000e+03 -7.127712515642132592e-24 -7.184965739043970008e-24 -1.499500000000000000e+03 4.621484737751155453e-24 -5.859772878037007270e-24 -1.499750000000000000e+03 5.507267477200862509e-24 2.710094190302894716e-24 -1.500000000000000000e+03 4.533602288978777184e-24 -6.660953455783758595e-24 -1.500250000000000000e+03 1.275236443272077194e-23 -1.953448931818709766e-24 -1.500500000000000000e+03 3.007426436417633653e-24 2.567597915318935477e-25 -1.500750000000000000e+03 -2.455795637340918921e-24 -1.367332623169549344e-24 -1.501000000000000000e+03 4.090329914559676605e-24 6.612080412982114607e-24 -1.501250000000000000e+03 -1.169695733342463362e-24 9.306796341871693631e-24 -1.501500000000000000e+03 -6.163407629036511250e-24 4.687340604271064391e-24 -1.501750000000000000e+03 9.150849047907737125e-24 -9.297045184271454411e-24 -1.502000000000000000e+03 7.882399729701772416e-25 -8.579830238513184734e-24 -1.502250000000000000e+03 -3.034028201875855079e-24 4.584467697466774146e-25 -1.502500000000000000e+03 -6.769998201116907889e-24 1.835607326500464277e-24 -1.502750000000000000e+03 1.446457955684899443e-23 -8.692739615900025025e-24 -1.503000000000000000e+03 7.413318876655599322e-24 -3.354829678955859588e-24 -1.503250000000000000e+03 3.694484844606111870e-25 -1.656317258334140298e-24 -1.503500000000000000e+03 -2.442594689884984664e-24 3.289949353647911254e-24 -1.503750000000000000e+03 1.785395780892409961e-24 -6.109994416457062692e-24 -1.504000000000000000e+03 -1.221672946624797900e-23 6.408106735063406223e-24 -1.504250000000000000e+03 -8.965540603671512873e-25 2.161862194847997066e-23 -1.504500000000000000e+03 5.799999684442191173e-24 3.517232712570823785e-24 -1.504750000000000000e+03 -7.397173054459036567e-24 -7.422486788786429273e-24 -1.505000000000000000e+03 -1.370295802874877709e-23 6.730406338172484057e-25 -1.505250000000000000e+03 -7.841680466198588852e-24 -5.782258908495695794e-24 -1.505500000000000000e+03 -3.276075421710899824e-24 2.600369560459428575e-24 -1.505750000000000000e+03 6.422991717886921377e-24 6.177438449281306797e-24 -1.506000000000000000e+03 -1.260219816790404622e-24 7.127157709671419853e-24 -1.506250000000000000e+03 8.661851889726576163e-24 -6.449366834326614113e-24 -1.506500000000000000e+03 8.750187143033866755e-24 -1.041420117991607466e-23 -1.506750000000000000e+03 -1.340324567763852483e-24 -1.121584706395502886e-23 -1.507000000000000000e+03 1.289947734083113099e-23 -4.405099830114630098e-24 -1.507250000000000000e+03 1.054676938333264207e-23 2.408163457867971097e-24 -1.507500000000000000e+03 -7.928864682332156296e-24 5.941759472585638734e-25 -1.507750000000000000e+03 3.119933478352259646e-25 1.141609248205384181e-25 -1.508000000000000000e+03 9.446343596144288133e-24 -8.478952319855736159e-24 -1.508250000000000000e+03 -2.930654392258407234e-24 5.145941858966800564e-24 -1.508500000000000000e+03 1.097586181362065111e-23 2.606929469323741728e-24 -1.508750000000000000e+03 -8.890659021252331488e-24 4.165413028457542598e-24 -1.509000000000000000e+03 1.282743872728627022e-24 -8.465153704818484053e-24 -1.509250000000000000e+03 -7.758735546522317644e-25 2.295790992799925226e-24 -1.509500000000000000e+03 -1.214317277554110789e-24 5.631146899778748678e-24 -1.509750000000000000e+03 7.760822562581928082e-25 3.603354585582144638e-24 -1.510000000000000000e+03 -4.674807024382331538e-25 -1.083429359624184449e-24 -1.510250000000000000e+03 3.079053734966978452e-25 9.408600822249982873e-24 -1.510500000000000000e+03 4.971207133015689803e-24 7.493658339552159759e-24 -1.510750000000000000e+03 -4.899570472652783152e-24 -1.828340250812877161e-24 -1.511000000000000000e+03 -2.146943248323113983e-24 -9.654510603264740846e-24 -1.511250000000000000e+03 -6.977056202620349952e-24 -3.281712996707582550e-24 -1.511500000000000000e+03 3.119551076060853460e-24 -4.770781439987377082e-25 -1.511750000000000000e+03 5.172866646359313956e-24 5.702203775281561951e-24 -1.512000000000000000e+03 -2.295131561062017218e-24 5.852793496840106901e-24 -1.512250000000000000e+03 -5.141947129333347857e-24 8.008310725810799509e-24 -1.512500000000000000e+03 -8.014330082705942858e-25 8.134721633308168424e-24 -1.512750000000000000e+03 1.072459826018518531e-23 -3.476669740673708202e-24 -1.513000000000000000e+03 3.920744769987708784e-24 2.964136452855960231e-24 -1.513250000000000000e+03 -9.819791777546969768e-24 6.185942174210256958e-24 -1.513500000000000000e+03 5.977152375878658446e-24 -5.196071620866261802e-25 -1.513750000000000000e+03 1.412817005523835102e-23 7.577313194828318930e-24 -1.514000000000000000e+03 6.310352576026956374e-24 4.017611278144569627e-24 -1.514250000000000000e+03 3.558119319734467407e-24 6.937840662144387114e-24 -1.514500000000000000e+03 7.339247080663686436e-24 8.698739409805165437e-24 -1.514750000000000000e+03 2.523058182398077305e-24 -7.238779705909056246e-24 -1.515000000000000000e+03 -5.647316298790525499e-24 1.124861369687326704e-24 -1.515250000000000000e+03 -2.527293875959079925e-24 -2.087974502388198526e-24 -1.515500000000000000e+03 -9.709605055668020171e-25 -2.767104041579396244e-24 -1.515750000000000000e+03 -7.729911428202715760e-24 5.998021213390676583e-25 -1.516000000000000000e+03 -2.746497592984074810e-24 1.328863154144241223e-23 -1.516250000000000000e+03 2.927056227890510083e-24 -1.183461975162457131e-23 -1.516500000000000000e+03 5.806953133980382349e-24 4.209028547155490029e-24 -1.516750000000000000e+03 3.317200042688775091e-24 1.706909995887761434e-23 -1.517000000000000000e+03 -5.667774210780006969e-24 -8.490400422231990361e-24 -1.517250000000000000e+03 -9.187961547819775386e-24 2.203901745857312475e-24 -1.517500000000000000e+03 -3.885802242006898482e-24 4.284332648996534464e-24 -1.517750000000000000e+03 5.123802022432611931e-25 6.625128122950435775e-24 -1.518000000000000000e+03 8.939286235968247233e-24 -7.007209605753232457e-24 -1.518250000000000000e+03 -1.316760015239362285e-23 1.184272814945276399e-23 -1.518500000000000000e+03 -7.439801713957823056e-25 8.698153845998803717e-24 -1.518750000000000000e+03 -6.435313273887488873e-24 1.398829742711155905e-23 -1.519000000000000000e+03 9.348665435404703115e-25 -8.189841189765978760e-24 -1.519250000000000000e+03 2.220842880816685105e-24 -6.038548112998836029e-24 -1.519500000000000000e+03 1.091078931792545768e-23 1.148793605880439546e-23 -1.519750000000000000e+03 -9.976695021905263278e-24 -1.061399924627997537e-24 -1.520000000000000000e+03 6.005474851703004587e-25 -5.054193196100169305e-24 -1.520250000000000000e+03 -9.572296786173212120e-24 7.351059208794023512e-24 -1.520500000000000000e+03 1.099942653253834208e-23 5.859858684666936273e-24 -1.520750000000000000e+03 6.812192571589465909e-24 1.027121819716163486e-23 -1.521000000000000000e+03 -1.688138222598588768e-24 7.166382684515156574e-24 -1.521250000000000000e+03 -6.008002183582498881e-25 -4.131101293284878660e-24 -1.521500000000000000e+03 2.643400020529394687e-24 4.314615883901445770e-24 -1.521750000000000000e+03 8.903686810843762175e-25 -5.346451288855046385e-24 -1.522000000000000000e+03 5.632879039315745890e-24 6.206464351948089212e-24 -1.522250000000000000e+03 8.793848112112458927e-25 -1.293348164432505235e-23 -1.522500000000000000e+03 3.377494821066191714e-24 -3.291991709573814540e-24 -1.522750000000000000e+03 -1.309018648170772468e-23 3.133729933931595341e-24 -1.523000000000000000e+03 -4.419370290082297904e-24 4.793274194033339738e-24 -1.523250000000000000e+03 -1.092719387997618089e-23 -4.329696470979478363e-24 -1.523500000000000000e+03 -3.274083378557904200e-24 -9.106533251345383440e-24 -1.523750000000000000e+03 6.842514578653129906e-24 4.819057732974100474e-25 -1.524000000000000000e+03 -1.025937198411532460e-25 -1.383506464051111549e-24 -1.524250000000000000e+03 -1.365817951099272037e-24 -5.179577266150807007e-24 -1.524500000000000000e+03 -7.847145944604042371e-24 -2.327597279488196834e-24 -1.524750000000000000e+03 8.316490132655504270e-24 -7.525157442736982931e-24 -1.525000000000000000e+03 2.571473245721182934e-24 1.138420501127095058e-23 -1.525250000000000000e+03 -9.992870124833780078e-24 -1.097892581327864808e-26 -1.525500000000000000e+03 -3.920525240503151019e-24 -1.503695103378440545e-23 -1.525750000000000000e+03 -3.846701983451532825e-24 -9.348527626757029284e-24 -1.526000000000000000e+03 4.096568280336375710e-24 -6.241783219096390093e-24 -1.526250000000000000e+03 1.211101960238429411e-24 -2.816541129805820410e-24 -1.526500000000000000e+03 9.075007109371197615e-25 -1.597160578161448546e-24 -1.526750000000000000e+03 -6.666058816842053272e-24 -7.791208019007082073e-24 -1.527000000000000000e+03 -1.192811024996899773e-24 -1.459015986840709714e-26 -1.527250000000000000e+03 -5.438691650295848473e-25 4.243552154298089897e-24 -1.527500000000000000e+03 -1.328321568897624570e-24 -7.849526655574999684e-24 -1.527750000000000000e+03 -1.003419098539522342e-23 1.126153754206426295e-23 -1.528000000000000000e+03 -8.745866542977021631e-24 6.848111257592235740e-24 -1.528250000000000000e+03 -8.165012930978111681e-24 7.092125265509450629e-24 -1.528500000000000000e+03 -2.076109355441567431e-24 1.117616578213299351e-23 -1.528750000000000000e+03 3.270920321138541720e-24 7.066949001115193978e-24 -1.529000000000000000e+03 -1.582014515511621591e-24 4.134714844212853112e-24 -1.529250000000000000e+03 -2.475051171778715685e-24 3.705547075390157508e-24 -1.529500000000000000e+03 -6.876723273317517532e-24 5.711415115096670276e-26 -1.529750000000000000e+03 3.159319208411238382e-25 1.008896245566495038e-23 -1.530000000000000000e+03 2.576472758695099811e-24 6.169519311218744921e-25 -1.530250000000000000e+03 -1.763535121469618852e-24 8.325847963194790910e-24 -1.530500000000000000e+03 3.210110833934995065e-24 -1.721043600574686703e-23 -1.530750000000000000e+03 9.474382849828126022e-24 -9.565898823530070423e-24 -1.531000000000000000e+03 3.156519912465305804e-24 8.631574104176166470e-24 -1.531250000000000000e+03 -2.667051929613483245e-24 8.699558703903928640e-24 -1.531500000000000000e+03 -1.143873771148711676e-23 2.810560535804867637e-24 -1.531750000000000000e+03 -8.519144381398137932e-24 1.214151530746474877e-24 -1.532000000000000000e+03 -3.614531208121775499e-24 -2.241179453042980747e-24 -1.532250000000000000e+03 5.367998147336208231e-24 5.271310729372676181e-24 -1.532500000000000000e+03 -2.477000145117890615e-24 -4.408742538589002789e-24 -1.532750000000000000e+03 1.715997057133749643e-23 -9.501850957426006772e-25 -1.533000000000000000e+03 -7.677630040056914822e-25 3.469954038281010600e-24 -1.533250000000000000e+03 4.272211424777995769e-25 -3.502823266607912686e-24 -1.533500000000000000e+03 8.475186879519273760e-24 -1.154088981831195975e-24 -1.533750000000000000e+03 2.261677698275804029e-23 2.063787442208218230e-24 -1.534000000000000000e+03 4.250956582162874485e-24 4.302634247807375734e-24 -1.534250000000000000e+03 -5.177567493293488461e-25 -8.199043045883455236e-25 -1.534500000000000000e+03 -1.747249372242012639e-26 1.817430047934685408e-23 -1.534750000000000000e+03 1.991804262846023713e-23 -6.378700146899159881e-24 -1.535000000000000000e+03 2.396943420408437678e-24 -2.364110030813877131e-24 -1.535250000000000000e+03 -4.386696814914762364e-24 1.389064373627892284e-23 -1.535500000000000000e+03 9.450576455472679828e-24 8.535842179590724424e-24 -1.535750000000000000e+03 -7.080480383226185971e-24 1.161510235955560060e-23 -1.536000000000000000e+03 7.555179803791693750e-24 1.152897124580234474e-23 -1.536250000000000000e+03 -8.435470391339731837e-24 -9.504541261760251998e-24 -1.536500000000000000e+03 -1.099220447120045475e-23 5.496115104212408559e-24 -1.536750000000000000e+03 7.755858303819915754e-24 -5.928094536418916948e-24 -1.537000000000000000e+03 4.078456492905655135e-24 1.438567739557916546e-24 -1.537250000000000000e+03 -7.498012708713203484e-24 3.111807881749087773e-24 -1.537500000000000000e+03 5.447031919880495786e-24 -4.915189019319574077e-24 -1.537750000000000000e+03 1.759969221961293019e-23 6.012668729881952944e-24 -1.538000000000000000e+03 -7.296531294102855983e-24 -6.791550871753119513e-24 -1.538250000000000000e+03 5.887765218646826813e-24 7.154257551194893665e-24 -1.538500000000000000e+03 -8.720197470980997705e-24 -1.197130211602829405e-23 -1.538750000000000000e+03 -1.009998777876516315e-23 -8.026628782757676964e-24 -1.539000000000000000e+03 -2.721466876677814613e-24 -4.190262096442285121e-24 -1.539250000000000000e+03 -7.813018732461176180e-24 1.043412128029499002e-23 -1.539500000000000000e+03 7.424336733892652657e-24 8.924004404356532527e-24 -1.539750000000000000e+03 1.163876155728783582e-24 -7.058406713599612496e-25 -1.540000000000000000e+03 1.194692581069104239e-23 -1.177464539072467589e-23 -1.540250000000000000e+03 8.860590579119049403e-24 2.503710341062495274e-24 -1.540500000000000000e+03 -8.086879538143979474e-24 -1.080432232181859228e-23 -1.540750000000000000e+03 -1.096005462055987391e-23 -4.298511178737210026e-24 -1.541000000000000000e+03 -4.001652476673025915e-24 -6.423841678713771829e-24 -1.541250000000000000e+03 7.074211956650238556e-24 -2.954100555758901119e-24 -1.541500000000000000e+03 8.843004781822010333e-26 8.660638810338403200e-24 -1.541750000000000000e+03 7.362395319115810331e-24 2.569485142357766715e-24 -1.542000000000000000e+03 3.216195466705209795e-24 6.053505455629953910e-24 -1.542250000000000000e+03 7.747332920480156836e-24 -3.637755973119394185e-24 -1.542500000000000000e+03 1.004172658629193776e-23 -4.418494661600868308e-24 -1.542750000000000000e+03 -5.748605873183886908e-24 1.527125594109674655e-25 -1.543000000000000000e+03 4.975662350657013358e-24 3.543055078199426297e-24 -1.543250000000000000e+03 -5.889669533244233268e-25 -4.383264104463866020e-24 -1.543500000000000000e+03 4.159036588735244314e-26 -1.141040148257954217e-23 -1.543750000000000000e+03 2.715923654714662227e-24 -6.231170747934979492e-24 -1.544000000000000000e+03 -1.993642188795536501e-24 5.372723663693590794e-24 -1.544250000000000000e+03 -4.027338203716729161e-24 -3.030467510899176030e-24 -1.544500000000000000e+03 -2.242958356332431880e-24 -3.043158386519175788e-24 -1.544750000000000000e+03 -8.036813123489536542e-25 -1.582172564916995520e-23 -1.545000000000000000e+03 -2.515876739327979066e-24 -1.681082480412363430e-23 -1.545250000000000000e+03 7.198873464502665510e-24 6.143017914099368203e-24 -1.545500000000000000e+03 2.346869966516542336e-24 -2.592169773307913059e-27 -1.545750000000000000e+03 1.644322466400543936e-23 -1.906331693380741777e-25 -1.546000000000000000e+03 2.070025573132412052e-24 9.022140248291217719e-24 -1.546250000000000000e+03 -8.927509061458797493e-24 7.401000267383841411e-24 -1.546500000000000000e+03 7.753916993472718178e-24 -7.082289581315758264e-24 -1.546750000000000000e+03 7.142045358014488538e-24 -1.475248416614041469e-24 -1.547000000000000000e+03 -6.979935322987590807e-24 3.058903452255674350e-24 -1.547250000000000000e+03 6.472121075913178560e-24 -1.282686443233537351e-24 -1.547500000000000000e+03 3.099026235587199192e-24 -7.372490741451171076e-25 -1.547750000000000000e+03 5.237218669111204064e-24 7.681344036858622474e-25 -1.548000000000000000e+03 -7.219145597619643170e-24 -8.936003784575964201e-24 -1.548250000000000000e+03 -9.552365559869131270e-24 8.293123566927651270e-24 -1.548500000000000000e+03 -2.819410805593645631e-24 -2.433913978168954326e-24 -1.548750000000000000e+03 8.842485688300675319e-24 4.909149104515831763e-24 -1.549000000000000000e+03 1.190822339760603857e-24 3.834420487930700434e-24 -1.549250000000000000e+03 8.194328361185730177e-24 9.229481170032936096e-25 -1.549500000000000000e+03 6.608452570911539958e-24 1.422325663913495854e-23 -1.549750000000000000e+03 -1.494315799712517878e-23 7.656585644857117812e-24 -1.550000000000000000e+03 -3.059763686303086318e-27 8.005824457223332359e-24 -1.550250000000000000e+03 6.844776063584022010e-24 1.483415944010647983e-24 -1.550500000000000000e+03 -1.013899677972129295e-23 3.213110983809071031e-24 -1.550750000000000000e+03 -4.844226557586369866e-24 -2.067354113448459461e-24 -1.551000000000000000e+03 5.277274454880703316e-24 -1.272688035972756037e-23 -1.551250000000000000e+03 8.731832032557321894e-24 -1.090175555368292723e-23 -1.551500000000000000e+03 -2.997742646287563557e-24 1.600714534830106112e-24 -1.551750000000000000e+03 6.395608592709378892e-24 1.768553982530931717e-23 -1.552000000000000000e+03 5.955242738352575705e-24 9.882343349893336524e-24 -1.552250000000000000e+03 -8.399909485306308130e-24 -1.540779766026485339e-23 -1.552500000000000000e+03 -1.559419299913955536e-23 1.224862925771498601e-23 -1.552750000000000000e+03 -5.635936022469883847e-24 9.789354386769038857e-25 -1.553000000000000000e+03 2.079665777113765189e-24 4.393062714700076131e-25 -1.553250000000000000e+03 4.402152913426844854e-25 -6.726811046974223667e-24 -1.553500000000000000e+03 2.566003239975304565e-24 -7.842682186800381591e-24 -1.553750000000000000e+03 -6.267012091086465569e-24 5.196906779907659556e-24 -1.554000000000000000e+03 5.262692781700752445e-24 -1.579190507597752863e-23 -1.554250000000000000e+03 7.364526755529333823e-25 -1.752700029728527727e-24 -1.554500000000000000e+03 -5.169806484055719802e-24 6.361072799278557503e-24 -1.554750000000000000e+03 -9.217043025118865721e-24 1.863121284151977471e-24 -1.555000000000000000e+03 1.045089195905494738e-23 6.150552579218143523e-24 -1.555250000000000000e+03 1.465971999012958549e-23 -8.729542564927619871e-25 -1.555500000000000000e+03 -1.297113929862745453e-24 2.264088341237522684e-24 -1.555750000000000000e+03 -1.179521585061283205e-23 -1.124078899920529544e-24 -1.556000000000000000e+03 1.285015230892475332e-23 -1.054370030418654090e-24 -1.556250000000000000e+03 3.015863626010143988e-24 -1.547537171667147439e-23 -1.556500000000000000e+03 1.065420872839968112e-23 -1.206269887165484781e-25 -1.556750000000000000e+03 1.497727138925815304e-26 -1.971237138215604078e-24 -1.557000000000000000e+03 -5.129795121355776082e-24 5.079517626513466149e-24 -1.557250000000000000e+03 -1.099394233990477671e-23 4.304670392922397902e-24 -1.557500000000000000e+03 4.302862325569813927e-24 7.409461061636368529e-24 -1.557750000000000000e+03 3.924446466078961616e-24 -1.484971872238665714e-23 -1.558000000000000000e+03 -3.872304420285030777e-24 -7.465024554232831616e-24 -1.558250000000000000e+03 -1.279095311847449722e-25 6.282728177562982255e-24 -1.558500000000000000e+03 -3.597219096053957944e-24 -2.588508658134998505e-24 -1.558750000000000000e+03 -1.919295077753085698e-24 1.061319464133599516e-23 -1.559000000000000000e+03 6.279174245016413572e-24 3.091588487807417336e-24 -1.559250000000000000e+03 -1.560042446510487136e-23 4.599548499592153226e-25 -1.559500000000000000e+03 -5.479089320303528894e-24 -7.834400956655761059e-24 -1.559750000000000000e+03 3.578057679023842096e-24 2.835315399403679333e-24 -1.560000000000000000e+03 1.594024589440139969e-23 6.652038770650091917e-24 -1.560250000000000000e+03 3.411804568812552552e-24 1.526657948077104222e-23 -1.560500000000000000e+03 6.680003654771357439e-24 -1.437815147805611317e-23 -1.560750000000000000e+03 1.377498954239970900e-23 -3.370879553150221466e-24 -1.561000000000000000e+03 -8.304926117029780505e-24 2.770768675081873560e-24 -1.561250000000000000e+03 -8.152321681611347139e-24 -1.370149956413893644e-23 -1.561500000000000000e+03 -4.570029205729955678e-24 7.442736686985450523e-24 -1.561750000000000000e+03 2.911704783241495651e-25 2.931161379020957039e-25 -1.562000000000000000e+03 7.276177922240082768e-24 3.061497772236833147e-24 -1.562250000000000000e+03 -6.005880285953436205e-24 -2.038023392543884954e-25 -1.562500000000000000e+03 2.165720578557348732e-24 2.207762809481966064e-26 -1.562750000000000000e+03 1.019886939327400789e-23 7.211385377810179652e-24 -1.563000000000000000e+03 -7.431505767866160884e-24 -1.204284463752903497e-24 -1.563250000000000000e+03 -4.171666572515462193e-24 -6.638497749148892374e-24 -1.563500000000000000e+03 4.842091753573267805e-25 -2.386906866034935920e-24 -1.563750000000000000e+03 6.023868834848991238e-24 6.346372493865275602e-24 -1.564000000000000000e+03 4.564001186598287127e-25 8.837881669224178841e-25 -1.564250000000000000e+03 -1.033427423211561856e-23 -6.268618496860379075e-24 -1.564500000000000000e+03 1.904366224871028565e-24 -8.535419710923028513e-24 -1.564750000000000000e+03 9.629314146574528125e-24 -1.475328051638308451e-24 -1.565000000000000000e+03 -6.876995984414438875e-24 -1.592582085682017353e-24 -1.565250000000000000e+03 -4.085392209952400753e-24 -3.827435027922818123e-24 -1.565500000000000000e+03 5.413128498052692976e-25 -3.471309327416382258e-24 -1.565750000000000000e+03 1.669607583682812430e-24 -1.310208348268142954e-23 -1.566000000000000000e+03 -1.824016754423425553e-23 1.712372231017631689e-24 -1.566250000000000000e+03 -3.886383642751009671e-24 5.409823550378807058e-24 -1.566500000000000000e+03 8.839667480566560825e-25 5.414150576164780568e-24 -1.566750000000000000e+03 -9.987504074930732213e-24 -8.013176744128018734e-24 -1.567000000000000000e+03 -1.162197449396473183e-23 -2.551671386907274894e-24 -1.567250000000000000e+03 8.299161702207638858e-24 1.965059256562138376e-24 -1.567500000000000000e+03 6.242577216988030478e-25 -6.674260966796939047e-24 -1.567750000000000000e+03 3.391591701449775537e-24 1.742739995277032168e-24 -1.568000000000000000e+03 2.074111661243482787e-25 5.021665537289466995e-24 -1.568250000000000000e+03 -1.893593023648620826e-25 -7.274336614215278249e-24 -1.568500000000000000e+03 6.374524400714444583e-24 -1.441685963597031484e-23 -1.568750000000000000e+03 3.747117424518075634e-24 3.608751835721367147e-24 -1.569000000000000000e+03 -4.891812765520175289e-24 1.303634022465200522e-23 -1.569250000000000000e+03 4.046864436742415955e-24 7.756671710818753309e-24 -1.569500000000000000e+03 -7.732970585231699756e-25 7.569839311471168964e-24 -1.569750000000000000e+03 -3.073304405875485516e-24 -3.994151974087766329e-24 -1.570000000000000000e+03 -7.375597040641080397e-24 8.287490718005055343e-24 -1.570250000000000000e+03 -9.701042404013152461e-24 5.150813106455792194e-24 -1.570500000000000000e+03 1.363894666328678759e-23 -1.196536547284814255e-23 -1.570750000000000000e+03 8.893363892368719224e-24 9.101843714621150938e-24 -1.571000000000000000e+03 -5.840655002989909102e-25 -1.408951368273271739e-24 -1.571250000000000000e+03 1.067120823431296910e-24 -7.949712970040851463e-24 -1.571500000000000000e+03 1.133850018555889864e-23 7.209994556600334357e-24 -1.571750000000000000e+03 -1.059487422198031910e-24 -4.262517825948575257e-24 -1.572000000000000000e+03 -5.460130730355892420e-24 -4.325467148911915495e-24 -1.572250000000000000e+03 -6.534000336890931911e-25 9.610601993335937271e-24 -1.572500000000000000e+03 -4.599351845572159265e-24 6.843178990762343104e-24 -1.572750000000000000e+03 1.173214151705400044e-24 -4.535685113297126807e-24 -1.573000000000000000e+03 3.151876348786248781e-24 9.056835306320191476e-24 -1.573250000000000000e+03 5.896804913372889983e-24 -1.819369712196306413e-24 -1.573500000000000000e+03 -2.876813143396847000e-24 9.284432921681595781e-24 -1.573750000000000000e+03 -8.224725621153738610e-24 9.744584207228700746e-24 -1.574000000000000000e+03 -4.121485568754269985e-24 -1.124378301502728692e-23 -1.574250000000000000e+03 7.387614749071090344e-24 -6.956921875452097502e-24 -1.574500000000000000e+03 -4.138347205899501072e-24 9.573619178676168497e-24 -1.574750000000000000e+03 -9.949077451321720927e-25 5.094784351186850446e-24 -1.575000000000000000e+03 2.592805040310264667e-24 -7.552804083838266577e-24 -1.575250000000000000e+03 5.171736882701740800e-24 5.753906798387172858e-24 -1.575500000000000000e+03 1.621001027841326941e-23 -1.976173472455139914e-23 -1.575750000000000000e+03 2.360298347470094194e-23 -1.384153966893514172e-23 -1.576000000000000000e+03 -5.837382583908336004e-24 7.424653544935228799e-24 -1.576250000000000000e+03 -9.948534067457468755e-25 -1.652363736605037827e-23 -1.576500000000000000e+03 -4.717195925191806245e-24 5.024264525872505240e-24 -1.576750000000000000e+03 1.931491171599776899e-23 1.331202612589330946e-25 -1.577000000000000000e+03 -5.564360199280937520e-24 -1.556531855319894081e-23 -1.577250000000000000e+03 4.982158477669494860e-24 -7.748824414971041247e-25 -1.577500000000000000e+03 5.039407208599126706e-25 8.120669167029801112e-24 -1.577750000000000000e+03 6.349466069716500822e-25 -7.415855262656424721e-24 -1.578000000000000000e+03 3.847461988253097630e-24 1.993744763573094281e-24 -1.578250000000000000e+03 -9.738602498964509605e-24 -2.678597157213084103e-24 -1.578500000000000000e+03 1.138800546289653016e-24 -2.551774389648576631e-24 -1.578750000000000000e+03 1.521384320946054507e-24 8.269058107491894929e-24 -1.579000000000000000e+03 -6.626550283753036041e-24 -1.182006017643046464e-23 -1.579250000000000000e+03 6.460398761210473779e-24 3.435009643990978206e-24 -1.579500000000000000e+03 9.199914678231772411e-24 -1.194866660016217485e-23 -1.579750000000000000e+03 4.044533611232808287e-24 7.950654726897257886e-24 -1.580000000000000000e+03 4.579236146658208845e-24 -3.360000485682656754e-24 -1.580250000000000000e+03 -1.611649122776534454e-23 -2.653576978309903135e-24 -1.580500000000000000e+03 9.290534127635913921e-25 8.708151466866675273e-24 -1.580750000000000000e+03 5.793559960453901517e-24 -1.395418551288261977e-24 -1.581000000000000000e+03 6.086247558996134624e-24 -1.736384491916364053e-24 -1.581250000000000000e+03 4.274121896371271993e-24 2.575924590394666427e-23 -1.581500000000000000e+03 3.421694893466096569e-25 1.887082969473357046e-23 -1.581750000000000000e+03 9.626180837856219708e-24 -9.981212932868994446e-24 -1.582000000000000000e+03 -5.131958496559535288e-24 1.861055810457663773e-24 -1.582250000000000000e+03 -3.803866198315912903e-24 -2.285257209485888734e-24 -1.582500000000000000e+03 1.236863434521980972e-24 1.245701132294461046e-23 -1.582750000000000000e+03 3.249120448203423453e-24 1.420570852411383402e-24 -1.583000000000000000e+03 -7.335419475946564137e-25 6.314262841428506410e-24 -1.583250000000000000e+03 -1.972319419669041663e-24 7.437661327074304243e-24 -1.583500000000000000e+03 -4.420674744491405245e-24 8.478189134479747110e-24 -1.583750000000000000e+03 3.731321038416446141e-24 1.053089230028606956e-23 -1.584000000000000000e+03 -1.041172316576026501e-23 1.232429897564045837e-23 -1.584250000000000000e+03 1.036996627722538285e-23 2.501731365943008812e-24 -1.584500000000000000e+03 4.344607347539361575e-24 1.480220457925114597e-23 -1.584750000000000000e+03 2.008084807869773841e-23 -2.702427282517120416e-23 -1.585000000000000000e+03 -1.029030042008280571e-23 -9.411613227212998971e-24 -1.585250000000000000e+03 6.282844828247767731e-24 5.977619333662951067e-24 -1.585500000000000000e+03 -7.383261513093437780e-24 -4.880044441206457480e-25 -1.585750000000000000e+03 9.667980877067276670e-24 8.981219239365781604e-25 -1.586000000000000000e+03 1.105313871919868575e-23 -6.717193698262734159e-25 -1.586250000000000000e+03 -7.173140665057096605e-24 -3.229771689965121562e-24 -1.586500000000000000e+03 -8.958413937357396103e-24 -5.539805596431214117e-24 -1.586750000000000000e+03 4.638127283623079181e-24 1.034438984000072462e-23 -1.587000000000000000e+03 -6.519211442594074743e-24 2.382600128909486741e-24 -1.587250000000000000e+03 9.904514923853401339e-24 6.206692367526533149e-24 -1.587500000000000000e+03 -1.062217189662987072e-23 1.974339038707642330e-24 -1.587750000000000000e+03 4.490823773968746162e-24 4.886699036884594683e-24 -1.588000000000000000e+03 -9.159710552044362294e-24 -8.187656429214172881e-24 -1.588250000000000000e+03 1.445212063775716077e-24 -4.098076097162804775e-24 -1.588500000000000000e+03 1.120002457084590179e-23 -1.136965862250432023e-24 -1.588750000000000000e+03 1.047083246444722657e-23 5.027957173261727575e-24 -1.589000000000000000e+03 -8.063956124424151434e-24 -1.517156305919255570e-24 -1.589250000000000000e+03 3.992929608801305153e-24 7.350222473094753048e-24 -1.589500000000000000e+03 4.902313075918912232e-24 4.677502413925493759e-24 -1.589750000000000000e+03 -7.664871692408649060e-24 -9.293566643045389298e-24 -1.590000000000000000e+03 -1.926738464539089028e-24 -1.066098522118030545e-23 -1.590250000000000000e+03 -4.974004729884535735e-24 -6.970505986028954047e-25 -1.590500000000000000e+03 -2.048677933253755771e-23 -4.817529325973437880e-24 -1.590750000000000000e+03 1.208385478525721883e-23 2.081681926534790948e-23 -1.591000000000000000e+03 -1.054118821533332504e-23 1.867166048716615595e-24 -1.591250000000000000e+03 9.702725595083231330e-25 -4.238826435088528643e-24 -1.591500000000000000e+03 2.991598559054994697e-24 -1.024435782725548095e-23 -1.591750000000000000e+03 -3.621217392787516261e-24 9.168235849804206321e-24 -1.592000000000000000e+03 1.349455961662285786e-23 9.059764546785258214e-24 -1.592250000000000000e+03 4.422993855127567307e-24 -2.431724465354410350e-24 -1.592500000000000000e+03 1.577920018643221326e-23 1.200124004233815612e-23 -1.592750000000000000e+03 -7.418665837608315215e-24 -2.193811589869762823e-24 -1.593000000000000000e+03 -2.700959277692788488e-24 -6.481267601425122405e-24 -1.593250000000000000e+03 3.677655344881805692e-25 -3.599815550409933374e-24 -1.593500000000000000e+03 7.808353096851839354e-25 -4.002937311209344487e-24 -1.593750000000000000e+03 -1.428304914669570231e-23 8.949734998616064936e-24 -1.594000000000000000e+03 3.734877343678824233e-25 9.663830281417641076e-25 -1.594250000000000000e+03 9.113076254519705428e-24 -3.002316347322986232e-24 -1.594500000000000000e+03 3.946243941291819448e-24 7.148449214083001188e-24 -1.594750000000000000e+03 3.478188160104481406e-24 6.551177440545015530e-24 -1.595000000000000000e+03 -3.569700600177693058e-24 -6.122978899742034297e-24 -1.595250000000000000e+03 -3.742232703790040692e-24 -7.894858407021826777e-24 -1.595500000000000000e+03 -1.641344930265852571e-23 4.998823186833688894e-24 -1.595750000000000000e+03 3.515438366388073699e-24 2.625747598176246419e-24 -1.596000000000000000e+03 1.239949690113968285e-23 -8.290311762051942545e-24 -1.596250000000000000e+03 -9.284200016481574312e-24 -2.760200237787337132e-24 -1.596500000000000000e+03 5.091908930664322797e-24 2.943967610714897043e-24 -1.596750000000000000e+03 -5.250840204236615630e-24 -3.983188639545344893e-24 -1.597000000000000000e+03 -8.870236870288976967e-24 7.228180885493969482e-25 -1.597250000000000000e+03 2.515915292052870326e-24 1.070734155154659799e-23 -1.597500000000000000e+03 -2.794361495300873211e-24 -2.198796811651434335e-24 -1.597750000000000000e+03 -4.769068208380056497e-25 5.558320830707359678e-24 -1.598000000000000000e+03 -5.443944446410295814e-24 -1.090147247627687733e-23 -1.598250000000000000e+03 5.702354873451677965e-24 -1.403462346979812767e-23 -1.598500000000000000e+03 1.224842633717570622e-24 9.268176149081952716e-24 -1.598750000000000000e+03 -2.111536524267656064e-24 2.737600035615726572e-24 -1.599000000000000000e+03 -7.359325170249909117e-24 -9.056901015740835127e-25 -1.599250000000000000e+03 -5.299320298847505278e-25 -6.072136165539515497e-24 -1.599500000000000000e+03 -3.539494239053525169e-25 3.982430837780602223e-24 -1.599750000000000000e+03 2.127999973524367037e-23 4.845011248547810726e-25 -1.600000000000000000e+03 8.347458786258790829e-24 2.367278153851885891e-24 -1.600250000000000000e+03 -7.301691872671226243e-24 -2.730860094764158747e-24 -1.600500000000000000e+03 -4.292499239878377493e-24 6.121960567488831589e-24 -1.600750000000000000e+03 -5.313307706255563990e-24 -2.557445149012782355e-24 -1.601000000000000000e+03 1.122061320910204531e-23 3.539665963496708103e-24 -1.601250000000000000e+03 2.617314927534320166e-24 1.359946751932635639e-23 -1.601500000000000000e+03 1.021732477409390683e-24 5.668213793545293200e-24 -1.601750000000000000e+03 8.343359029806953778e-24 -1.070901059016562878e-24 -1.602000000000000000e+03 -4.948901182745954573e-24 3.869807691983027267e-24 -1.602250000000000000e+03 1.127705940397324392e-23 1.307267279910314629e-23 -1.602500000000000000e+03 1.834328311681812519e-23 -1.741028404003000487e-23 -1.602750000000000000e+03 3.610923314422739088e-24 -1.121067386137536029e-24 -1.603000000000000000e+03 6.450810973528942884e-24 3.437087772375980833e-25 -1.603250000000000000e+03 4.956425572247795524e-24 5.663528904657670074e-24 -1.603500000000000000e+03 7.292051743022015935e-24 1.590503290470899412e-24 -1.603750000000000000e+03 1.622599038111190678e-24 1.782761662085148174e-24 -1.604000000000000000e+03 -6.620494803721866058e-24 -5.980640509724972586e-25 -1.604250000000000000e+03 6.016198545690327090e-24 -8.881169707327323614e-24 -1.604500000000000000e+03 2.001627529639506264e-23 -6.956344698536168348e-24 -1.604750000000000000e+03 -8.246513076917735191e-24 -1.595240191793410510e-24 -1.605000000000000000e+03 -7.183129496379373825e-24 6.630627975482813178e-24 -1.605250000000000000e+03 6.891017755474567066e-25 7.020882279101597530e-24 -1.605500000000000000e+03 -8.141452247158975547e-24 -4.801252722175474325e-25 -1.605750000000000000e+03 -8.240813336459505305e-24 2.369822329591496787e-24 -1.606000000000000000e+03 -3.368586546221986220e-24 4.713680423434061798e-24 -1.606250000000000000e+03 -2.567701445873509063e-24 1.131480647115938419e-23 -1.606500000000000000e+03 4.408806312791284014e-24 -2.423439541236656934e-24 -1.606750000000000000e+03 6.241220407663870298e-24 -8.729895193480399846e-24 -1.607000000000000000e+03 -1.357938823542673400e-23 1.137074453908651851e-23 -1.607250000000000000e+03 -9.467960334900115444e-25 1.021827504915362401e-23 -1.607500000000000000e+03 1.254303972445647027e-23 5.679021702576461835e-24 -1.607750000000000000e+03 -4.776133370424103383e-24 6.318255446475915938e-24 -1.608000000000000000e+03 2.423207654063064177e-24 2.855964637060947321e-24 -1.608250000000000000e+03 1.140820473225721448e-23 -6.848090679739090246e-24 -1.608500000000000000e+03 -3.095747974690697730e-24 -8.751363172261913645e-24 -1.608750000000000000e+03 1.326132710025900423e-24 5.722071151754296565e-24 -1.609000000000000000e+03 2.258143876929185548e-24 -3.685285291293408594e-24 -1.609250000000000000e+03 6.810731942164461485e-25 1.442186072160809164e-23 -1.609500000000000000e+03 3.436447828761363193e-24 -2.170008823148452640e-24 -1.609750000000000000e+03 1.006753015435878846e-23 -1.209716329969870381e-23 -1.610000000000000000e+03 1.123776752228842398e-23 -7.301390893145283613e-24 -1.610250000000000000e+03 1.074601951902805565e-23 1.140838127160329660e-23 -1.610500000000000000e+03 -1.327031760442195849e-23 6.174484719545396689e-24 -1.610750000000000000e+03 -2.030344919241269601e-24 5.031461773416465623e-24 -1.611000000000000000e+03 8.570165542834724632e-26 -3.709136058716376262e-24 -1.611250000000000000e+03 -1.275235284164980288e-23 -5.322957201376406246e-24 -1.611500000000000000e+03 3.981497715398019219e-24 -7.956037466733019248e-24 -1.611750000000000000e+03 -1.556689045575258724e-24 1.149833985312525294e-23 -1.612000000000000000e+03 -6.263774882426332986e-25 -6.202579762032504498e-25 -1.612250000000000000e+03 5.834731897914826774e-24 -1.480242612226366274e-23 -1.612500000000000000e+03 -5.506273209808158883e-24 1.641936481429843920e-24 -1.612750000000000000e+03 6.746962140044835746e-24 -3.785506557975589182e-24 -1.613000000000000000e+03 1.287738933887150164e-23 -2.123276135184154572e-24 -1.613250000000000000e+03 1.719113229496152040e-23 9.158174628023534519e-24 -1.613500000000000000e+03 -3.046004155529542966e-24 -1.582964171511757410e-23 -1.613750000000000000e+03 -1.257612436532864695e-23 6.419105849745558140e-24 -1.614000000000000000e+03 1.407860567170738881e-23 2.374277513391028952e-24 -1.614250000000000000e+03 6.987410156546840358e-24 -2.163807574163698149e-23 -1.614500000000000000e+03 -9.724589287067032983e-24 -7.630141499110843469e-24 -1.614750000000000000e+03 -8.454496209165001548e-26 -7.079987898797267747e-24 -1.615000000000000000e+03 1.479827502153177610e-24 -4.454511284203148283e-24 -1.615250000000000000e+03 6.634025410866316627e-24 -6.380675077760458789e-24 -1.615500000000000000e+03 1.150800612051987738e-23 -3.650819844457981205e-24 -1.615750000000000000e+03 1.185776319018679119e-23 -9.349102040484534929e-24 -1.616000000000000000e+03 -2.566268896590281336e-24 -9.645984703507968934e-24 -1.616250000000000000e+03 -6.820159643747386126e-24 1.228129425357430582e-23 -1.616500000000000000e+03 3.052268110600507752e-25 4.207131394996871150e-24 -1.616750000000000000e+03 1.606130748873823632e-24 -7.592174983455024338e-24 -1.617000000000000000e+03 6.854085934614275989e-24 -1.450147225627074787e-23 -1.617250000000000000e+03 2.598041931554742997e-24 -1.188415489086583950e-24 -1.617500000000000000e+03 1.558451211604298754e-23 -9.014500476418821486e-24 -1.617750000000000000e+03 6.296424399591575774e-24 -3.460811523774456485e-24 -1.618000000000000000e+03 5.831990525440679481e-24 -7.333226747207377849e-24 -1.618250000000000000e+03 -1.942051350287044667e-24 -1.404924154062667791e-23 -1.618500000000000000e+03 -1.203716255575297799e-24 1.562701408628403561e-24 -1.618750000000000000e+03 -7.730078793101760712e-24 3.929600147120790939e-24 -1.619000000000000000e+03 -2.435415439154874536e-24 -1.233234073398588909e-24 -1.619250000000000000e+03 -8.394403815857978586e-25 -3.313236437183703126e-24 -1.619500000000000000e+03 5.480479649717789056e-24 -1.049048380994379814e-24 -1.619750000000000000e+03 1.791246414951301881e-24 -6.758096132649212365e-24 -1.620000000000000000e+03 -1.101314113111062238e-25 -5.357382129133035162e-24 -1.620250000000000000e+03 -8.790810540102328425e-25 -1.247618032967047037e-23 -1.620500000000000000e+03 3.018535583783866213e-24 1.007172060051442133e-23 -1.620750000000000000e+03 -3.615472731083604986e-24 -5.917541267485554409e-25 -1.621000000000000000e+03 2.297096705296843577e-24 -9.504524042897504221e-24 -1.621250000000000000e+03 -1.096952618538408602e-23 2.611987818732304517e-24 -1.621500000000000000e+03 1.095752631493940110e-23 -4.506454073838768535e-24 -1.621750000000000000e+03 3.956761844840704518e-24 1.747033968876079950e-24 -1.622000000000000000e+03 -3.861692297525715097e-24 1.861811165391198338e-23 -1.622250000000000000e+03 7.399019526886245777e-24 -7.691585768431495274e-24 -1.622500000000000000e+03 -6.381222093114828438e-24 8.845152534585362016e-24 -1.622750000000000000e+03 -2.289843174096683784e-24 4.465637226751663834e-24 -1.623000000000000000e+03 9.885356625073511329e-24 -3.351267271223916636e-24 -1.623250000000000000e+03 1.203462770808815274e-23 -9.114043177854686657e-24 -1.623500000000000000e+03 -1.003252941161696807e-23 -1.814503317772100781e-23 -1.623750000000000000e+03 -8.589413820044895992e-24 -1.230764382658507466e-23 -1.624000000000000000e+03 4.290980227347331929e-24 -9.368050940127607322e-24 -1.624250000000000000e+03 2.388505789702696563e-24 1.084455664702691364e-24 -1.624500000000000000e+03 -1.090848937672302583e-23 8.872818907489254935e-24 -1.624750000000000000e+03 -8.620872955653877482e-24 -5.566530641249299484e-24 -1.625000000000000000e+03 1.035890294089966439e-24 -3.689625750483535597e-25 -1.625250000000000000e+03 -6.694648886096928518e-24 -3.640909921692080897e-24 -1.625500000000000000e+03 1.358461629442306847e-24 5.084458162486837218e-24 -1.625750000000000000e+03 -1.787595203173885435e-24 -1.116996725490479727e-23 -1.626000000000000000e+03 -6.035149859582668946e-24 1.554953432177345256e-24 -1.626250000000000000e+03 1.067003710798877371e-23 1.230736075503092363e-23 -1.626500000000000000e+03 9.890848155164922644e-24 4.184073948383265229e-24 -1.626750000000000000e+03 4.522531559842075344e-24 8.731246421478289552e-25 -1.627000000000000000e+03 -7.616394634673920270e-24 -3.559898307162218547e-24 -1.627250000000000000e+03 -8.535483731733104933e-24 1.791388576898373149e-24 -1.627500000000000000e+03 -6.444913448007523440e-24 -1.486918673151738641e-23 -1.627750000000000000e+03 -9.951196672362573225e-24 -7.731616063845446246e-25 -1.628000000000000000e+03 -7.458594036061546512e-24 2.908083483309378836e-24 -1.628250000000000000e+03 7.666147495750545386e-25 3.036407600478019848e-24 -1.628500000000000000e+03 1.353506495878210472e-23 1.956168440411967652e-24 -1.628750000000000000e+03 -5.288397691484899502e-24 4.122509017430091073e-24 -1.629000000000000000e+03 -1.000358545251770346e-25 -1.202467352679096259e-24 -1.629250000000000000e+03 -2.775895678785472677e-24 -2.276290082128072747e-23 -1.629500000000000000e+03 -2.281449165831569159e-24 5.648267215112930932e-25 -1.629750000000000000e+03 -8.095455081285806436e-24 -3.454462410674981746e-24 -1.630000000000000000e+03 4.741982310541510244e-24 4.348344832921070294e-24 -1.630250000000000000e+03 4.380768565393349618e-24 -8.471127755800343532e-24 -1.630500000000000000e+03 -1.207968935454534234e-23 1.726040766698806745e-23 -1.630750000000000000e+03 -9.829896230431726866e-25 -2.768738486749320290e-24 -1.631000000000000000e+03 4.084497731159939641e-24 -1.489378515002685560e-23 -1.631250000000000000e+03 -7.879344802980274929e-24 9.732510254754702629e-24 -1.631500000000000000e+03 7.855357356867154749e-24 8.982199716479590643e-25 -1.631750000000000000e+03 8.538000011917342118e-26 -1.096398930424816088e-23 -1.632000000000000000e+03 -1.401632516105436108e-23 -1.481414662879510943e-23 -1.632250000000000000e+03 4.577397665121807774e-24 3.945994499612701467e-24 -1.632500000000000000e+03 -8.137905384548427994e-24 -1.541586943947416566e-24 -1.632750000000000000e+03 -2.306838666608871654e-24 3.608422727275580357e-24 -1.633000000000000000e+03 2.812743256215400455e-24 -3.042863667588736980e-24 -1.633250000000000000e+03 -7.339295029343846201e-24 7.030133064928632115e-24 -1.633500000000000000e+03 -9.380557251657948147e-24 -6.032660993598207654e-24 -1.633750000000000000e+03 -9.996904083187807664e-24 -4.715761396283278005e-24 -1.634000000000000000e+03 -1.490938402238244043e-23 1.701600917430254498e-24 -1.634250000000000000e+03 4.254390442776412348e-24 8.910558860455428697e-24 -1.634500000000000000e+03 -9.975635095129368071e-24 -9.751395583267462749e-24 -1.634750000000000000e+03 -1.439497734711348642e-24 1.225441444397822437e-24 -1.635000000000000000e+03 -6.034336125800469074e-24 3.842735717355115231e-24 -1.635250000000000000e+03 1.066256844590417771e-23 -1.896072955292572481e-23 -1.635500000000000000e+03 -1.623435077240240960e-24 -4.037626256632996313e-24 -1.635750000000000000e+03 -1.018517873427411354e-23 9.767344886966444825e-24 -1.636000000000000000e+03 6.235449419803688247e-24 -1.570776025693448189e-23 -1.636250000000000000e+03 -3.722075552567154508e-24 -5.195095583277904580e-24 -1.636500000000000000e+03 -5.534688910386888368e-24 8.065969589105297217e-24 -1.636750000000000000e+03 6.717051226213591582e-24 -1.268918984549001211e-24 -1.637000000000000000e+03 5.528166186231306765e-25 -1.598685625792469999e-23 -1.637250000000000000e+03 1.303557160503351565e-23 -9.150184343535351727e-24 -1.637500000000000000e+03 -2.721828414723226201e-24 1.124617506339575738e-23 -1.637750000000000000e+03 7.908467633894059820e-24 4.453681587216847059e-24 -1.638000000000000000e+03 6.776239419531815141e-25 1.120954424419555596e-23 -1.638250000000000000e+03 -1.479237236061691736e-25 4.067371975624426575e-24 -1.638500000000000000e+03 1.675891210405076821e-26 -8.589713568170126350e-24 -1.638750000000000000e+03 1.599713705478256014e-23 4.400682624918809649e-24 -1.639000000000000000e+03 5.235838232650271784e-24 2.987534506731814705e-26 -1.639250000000000000e+03 1.509409096721383751e-23 1.015413403430567397e-23 -1.639500000000000000e+03 1.213694832889123750e-23 4.001539882533122534e-24 -1.639750000000000000e+03 5.435374517506648562e-24 -8.543297388892402464e-24 -1.640000000000000000e+03 -8.476954725268065582e-24 -9.333113916366804651e-24 -1.640250000000000000e+03 -1.782851637155932012e-25 5.487702731064231018e-24 -1.640500000000000000e+03 6.073236637892701682e-24 8.409065432215533031e-24 -1.640750000000000000e+03 1.996727503387837444e-24 -1.164985528686394720e-23 -1.641000000000000000e+03 -9.956084326329227117e-24 -5.813895679643544462e-24 -1.641250000000000000e+03 7.259335996316397872e-26 1.635726056953667292e-23 -1.641500000000000000e+03 4.432926659360514243e-24 -3.882258171405089428e-24 -1.641750000000000000e+03 6.232287981888819893e-24 2.015569127571563214e-23 -1.642000000000000000e+03 -1.385392505981846130e-24 -9.090667510739597452e-24 -1.642250000000000000e+03 -4.211399958643877517e-24 -5.603311452519051004e-25 -1.642500000000000000e+03 8.971866073877186876e-24 -8.190828052887434662e-24 -1.642750000000000000e+03 -1.089378735326194243e-24 -8.488981433762319855e-24 -1.643000000000000000e+03 -3.921142280487706798e-24 -9.813166052929840724e-24 -1.643250000000000000e+03 8.971672306616377504e-24 3.508315584741279206e-24 -1.643500000000000000e+03 -6.131588073647034654e-24 -3.530282217559244718e-25 -1.643750000000000000e+03 1.530551238491584425e-24 -3.841573190617380504e-25 -1.644000000000000000e+03 -6.027180265922942887e-25 -1.028265254440555925e-23 -1.644250000000000000e+03 -1.265959509009383974e-23 -5.300101364346795283e-24 -1.644500000000000000e+03 -1.069212807975297784e-23 6.642784331139744999e-24 -1.644750000000000000e+03 1.090827959844197965e-23 -9.909505781006277511e-24 -1.645000000000000000e+03 6.438954021979107130e-24 1.571596440760655707e-24 -1.645250000000000000e+03 -1.663048870421009646e-24 1.436900112514748944e-25 -1.645500000000000000e+03 -2.887420733409411557e-24 7.509493123891337470e-24 -1.645750000000000000e+03 7.468141759911940317e-24 -4.203302649120563499e-24 -1.646000000000000000e+03 -2.202876978374512244e-24 -5.178617852134370908e-24 -1.646250000000000000e+03 3.890271892985951057e-24 1.294856179660808046e-23 -1.646500000000000000e+03 -8.659527087165415824e-25 3.939711878946279413e-24 -1.646750000000000000e+03 2.298366707494470582e-27 1.114291112525632330e-23 -1.647000000000000000e+03 1.672579304272973068e-23 -5.691445263054084897e-24 -1.647250000000000000e+03 -2.913177678333086911e-24 2.658881250409795293e-24 -1.647500000000000000e+03 9.616559136615203871e-24 4.907655823249668444e-24 -1.647750000000000000e+03 1.156576754909819454e-24 -2.069855301074333409e-24 -1.648000000000000000e+03 -5.315921519747810422e-24 1.322620296978062209e-24 -1.648250000000000000e+03 5.948899506333833956e-25 -1.373408584350083604e-24 -1.648500000000000000e+03 2.287620469835119063e-24 7.868282954178552955e-24 -1.648750000000000000e+03 -5.857464667335981611e-24 4.634276893820606203e-24 -1.649000000000000000e+03 9.550773812619380753e-24 5.934702031115214711e-24 -1.649250000000000000e+03 4.834160916285886891e-24 7.857440400820617048e-24 -1.649500000000000000e+03 -1.025908278708519401e-23 -3.587071004861735446e-24 -1.649750000000000000e+03 6.494344788776746630e-24 7.792235450900970745e-24 -1.650000000000000000e+03 -6.495989968532772808e-24 2.186398740138890061e-24 -1.650250000000000000e+03 -1.160117113350119657e-24 1.432126482645783466e-23 -1.650500000000000000e+03 8.173767064294432228e-24 -3.215823670484799516e-25 -1.650750000000000000e+03 1.342914136670965249e-23 -9.306542824656646330e-24 -1.651000000000000000e+03 6.030487493975114224e-24 6.012079088262756348e-25 -1.651250000000000000e+03 9.865060903619651112e-25 -1.358301058485504206e-24 -1.651500000000000000e+03 5.183191827421521551e-24 1.011058130105030124e-23 -1.651750000000000000e+03 -1.206658167176664340e-23 -8.833220750870655620e-24 -1.652000000000000000e+03 -4.319925614816429665e-24 4.885911044944228287e-24 -1.652250000000000000e+03 -3.521120881116284751e-24 8.396343256972564271e-25 -1.652500000000000000e+03 -1.862630206281035144e-24 -1.561597016193914801e-23 -1.652750000000000000e+03 1.541287522384274645e-23 -4.088993148364427997e-25 -1.653000000000000000e+03 6.088601500544218443e-24 -6.320644951903689596e-24 -1.653250000000000000e+03 -9.300573239859718065e-24 -4.848988362752497459e-24 -1.653500000000000000e+03 -4.239665162993971539e-24 -5.083466847588922966e-24 -1.653750000000000000e+03 1.031678465988877657e-23 1.007913854310159842e-24 -1.654000000000000000e+03 1.203299034886742444e-24 2.080779725113174957e-24 -1.654250000000000000e+03 1.237275755294272337e-23 -6.667525370031235855e-24 -1.654500000000000000e+03 7.693941944553493047e-24 2.874419177086973469e-24 -1.654750000000000000e+03 1.322702059402060076e-23 -7.013866702000871172e-24 -1.655000000000000000e+03 -1.099666809437074939e-23 1.898737135595690300e-24 -1.655250000000000000e+03 -2.806780324216560096e-24 4.686202851330543372e-24 -1.655500000000000000e+03 4.170714334984917346e-24 1.864151536099263365e-23 -1.655750000000000000e+03 1.774808789186537132e-24 -1.543284569420396549e-25 -1.656000000000000000e+03 -7.081481972462126860e-24 -6.765158198884549613e-24 -1.656250000000000000e+03 3.327986834989146683e-24 -9.343922691718082795e-25 -1.656500000000000000e+03 -6.670373169011842897e-24 1.522880491028912237e-24 -1.656750000000000000e+03 -1.904159862215814373e-24 5.002652177281354672e-25 -1.657000000000000000e+03 5.177188070272608906e-24 -3.166180067606307414e-24 -1.657250000000000000e+03 5.134714867016213764e-24 1.448018859251248415e-24 -1.657500000000000000e+03 3.496231430964846847e-24 5.836171530914135462e-24 -1.657750000000000000e+03 -1.557810527342269233e-23 1.007618470482233846e-23 -1.658000000000000000e+03 5.120258712534746243e-24 3.666405885664797562e-24 -1.658250000000000000e+03 5.135814962786949734e-24 -1.188003927460170794e-23 -1.658500000000000000e+03 -7.074265733535729516e-24 3.924826228121309889e-24 -1.658750000000000000e+03 2.514153693113836410e-25 -5.595937181446451182e-24 -1.659000000000000000e+03 -1.394299428686971401e-24 -8.343375793028877721e-24 -1.659250000000000000e+03 1.014366188268245727e-24 6.572681749084157858e-24 -1.659500000000000000e+03 5.411763479398939399e-24 -7.539703556240861720e-24 -1.659750000000000000e+03 9.020824053255171199e-24 -4.496881509999516407e-24 -1.660000000000000000e+03 -1.291194884688695650e-24 -2.281842383408478494e-24 -1.660250000000000000e+03 1.441472270061640345e-23 -4.455585237197713554e-24 -1.660500000000000000e+03 8.253913599883543456e-24 9.272686173775843024e-25 -1.660750000000000000e+03 1.628898008666126034e-23 3.881334646311555077e-24 -1.661000000000000000e+03 -5.719530777333585409e-24 -2.452923571596709584e-23 -1.661250000000000000e+03 -1.006741960715691937e-23 -5.388515204937451745e-25 -1.661500000000000000e+03 -9.801495900123488697e-24 -1.966273353781517256e-23 -1.661750000000000000e+03 1.945187480079386206e-24 -6.239813339693865860e-24 -1.662000000000000000e+03 2.865656599715061680e-24 -1.957846006887677229e-25 -1.662250000000000000e+03 -1.588493804933316045e-23 2.385246965225914983e-24 -1.662500000000000000e+03 5.889564377377367923e-24 -1.862119249733961411e-23 -1.662750000000000000e+03 6.454964446698444875e-24 7.332958666501175124e-24 -1.663000000000000000e+03 -1.775014331287670455e-23 -1.451285012016216000e-23 -1.663250000000000000e+03 -3.685138507755720598e-24 1.483637121040060035e-23 -1.663500000000000000e+03 1.311748989023083117e-23 -1.465877782011026007e-23 -1.663750000000000000e+03 8.570017334879377510e-25 -1.411932191746993031e-24 -1.664000000000000000e+03 -8.895943256141650716e-25 7.970136672776402639e-24 -1.664250000000000000e+03 7.063262193562969315e-24 -5.422943896393661876e-24 -1.664500000000000000e+03 -8.344728777837007579e-24 -4.676175284144849924e-24 -1.664750000000000000e+03 4.809129205873345016e-24 1.016878549556074502e-23 -1.665000000000000000e+03 1.113842767327172644e-23 -2.778097563101174185e-24 -1.665250000000000000e+03 9.509981787281460201e-24 -1.695683972904843407e-23 -1.665500000000000000e+03 -5.771901378136330648e-24 -8.805766302821644338e-24 -1.665750000000000000e+03 -4.987082652911248755e-24 -1.000384862359435787e-23 -1.666000000000000000e+03 2.741368239611567311e-24 -7.489388015701783408e-24 -1.666250000000000000e+03 -1.051953669021842670e-24 -9.779147500433395737e-25 -1.666500000000000000e+03 -1.172939053166676173e-23 6.868638559282660739e-24 -1.666750000000000000e+03 -5.484115701115440442e-24 -4.651793388428297353e-24 -1.667000000000000000e+03 1.021880369521172492e-23 -6.248194386940702393e-24 -1.667250000000000000e+03 -4.786148473222617064e-24 2.067687421260704186e-24 -1.667500000000000000e+03 5.150094189525856654e-24 -2.562556384949569677e-23 -1.667750000000000000e+03 -3.657447679949454106e-24 4.253117759670814136e-25 -1.668000000000000000e+03 -3.989368771404429325e-24 -1.151350077213205280e-23 -1.668250000000000000e+03 3.035623478227007077e-24 1.440950386531620816e-23 -1.668500000000000000e+03 -2.664701692414244786e-24 2.579193731377181585e-24 -1.668750000000000000e+03 -8.641448095640160409e-24 -6.349818115336237440e-24 -1.669000000000000000e+03 -5.460399282176564580e-24 -2.605631793789748818e-24 -1.669250000000000000e+03 -1.910986667882381464e-23 1.699346018136663859e-23 -1.669500000000000000e+03 2.934408256785516749e-24 2.662299671701317550e-24 -1.669750000000000000e+03 -6.408542417641795440e-24 5.544999810382108942e-24 -1.670000000000000000e+03 -1.550799414912770325e-24 -5.703166670375122229e-24 -1.670250000000000000e+03 -1.003707934932381845e-24 2.546283072892375444e-24 -1.670500000000000000e+03 4.961642452966849076e-24 -4.659753785976442049e-25 -1.670750000000000000e+03 2.104770351757041316e-24 -6.764746580088787730e-24 -1.671000000000000000e+03 7.839386156716260044e-24 8.480089591249901330e-24 -1.671250000000000000e+03 -3.602024294086007035e-24 4.681172472476892076e-24 -1.671500000000000000e+03 1.268921975676996866e-23 7.355549908170995760e-24 -1.671750000000000000e+03 5.159971889289797687e-24 -3.190925191286486639e-24 -1.672000000000000000e+03 -2.361377551518776280e-24 1.804616774484804263e-24 -1.672250000000000000e+03 -2.855768579245112198e-23 -2.089200588466696200e-24 -1.672500000000000000e+03 2.959541738584836934e-24 -1.692871631517347863e-23 -1.672750000000000000e+03 -6.417872474226236087e-24 -4.182940861008129997e-24 -1.673000000000000000e+03 1.626498510365699566e-24 -2.459700595620336562e-24 -1.673250000000000000e+03 -8.925591116620156660e-24 1.742636902387908778e-24 -1.673500000000000000e+03 -2.973185984996908912e-24 -1.196626795932741802e-23 -1.673750000000000000e+03 8.216448248446226493e-24 1.856944609143350849e-24 -1.674000000000000000e+03 -1.727875792209483676e-24 2.215801629760391262e-23 -1.674250000000000000e+03 6.154052811898858607e-24 8.683269790776676218e-24 -1.674500000000000000e+03 1.862272783827503682e-24 5.072741373332716583e-25 -1.674750000000000000e+03 2.461864208756702245e-24 4.755968189801676978e-24 -1.675000000000000000e+03 -1.102506925435295011e-23 -4.027165668661778339e-24 -1.675250000000000000e+03 6.700143279895383354e-25 3.427002100622853613e-24 -1.675500000000000000e+03 1.298889813620343387e-24 -6.512931504381228699e-24 -1.675750000000000000e+03 8.998063164104009244e-24 -6.117964913705636433e-24 -1.676000000000000000e+03 1.903250294483975620e-24 -3.574807101565704967e-24 -1.676250000000000000e+03 -9.600111142723596262e-25 -2.085813323557807159e-24 -1.676500000000000000e+03 -6.100589086033992754e-24 6.944113181068156135e-24 -1.676750000000000000e+03 -4.378454454343493317e-24 5.155406973503512149e-24 -1.677000000000000000e+03 -1.269441148180033099e-24 -1.812759621428034680e-23 -1.677250000000000000e+03 -6.394068483092184818e-24 -7.433975272298584921e-24 -1.677500000000000000e+03 -2.506285887606405310e-24 1.449155029734636304e-23 -1.677750000000000000e+03 1.034512501418171333e-23 -2.572236364971424847e-24 -1.678000000000000000e+03 -1.579485685715050775e-24 1.210443717878098839e-23 -1.678250000000000000e+03 3.103708444334580253e-24 4.158441859436175407e-24 -1.678500000000000000e+03 7.310110848309282129e-25 -1.072068986250522412e-23 -1.678750000000000000e+03 -1.882048033834093318e-24 -1.776089746481374935e-23 -1.679000000000000000e+03 -1.221571412029235158e-23 -4.549205092363719642e-24 -1.679250000000000000e+03 1.950596735886053549e-25 8.739076734032030624e-24 -1.679500000000000000e+03 7.365253205258483862e-24 2.730947805857081201e-24 -1.679750000000000000e+03 -2.898814052564348179e-24 1.488318450335888382e-23 -1.680000000000000000e+03 -8.386573848342850409e-25 9.844106397783195089e-24 -1.680250000000000000e+03 5.667628269319937020e-24 1.915693887245428301e-24 -1.680500000000000000e+03 -4.106194532663554968e-24 1.647907613802373928e-24 -1.680750000000000000e+03 1.069912369026598477e-23 -9.267154500100033391e-25 -1.681000000000000000e+03 4.175586316859564222e-24 5.498253939719731804e-24 -1.681250000000000000e+03 1.294284637294395076e-23 3.149976610628984607e-24 -1.681500000000000000e+03 2.987599636284748977e-24 -3.644555826869077626e-24 -1.681750000000000000e+03 -5.268918659116010866e-24 -7.373375797446602398e-24 -1.682000000000000000e+03 1.195823061333348662e-23 8.162158301110800069e-24 -1.682250000000000000e+03 -3.862857541008793890e-24 -1.262580565143999210e-24 -1.682500000000000000e+03 -2.370792310110392402e-24 -1.516356084691599130e-24 -1.682750000000000000e+03 -2.397377643291561182e-24 2.500592816436467630e-24 -1.683000000000000000e+03 -1.679959257666069530e-24 -1.690402450102355554e-24 -1.683250000000000000e+03 -4.895193190562113362e-24 9.493124593198204175e-24 -1.683500000000000000e+03 -4.261013140790568046e-24 1.366570194005398579e-23 -1.683750000000000000e+03 2.673858190989705946e-24 -1.128270845925251915e-23 -1.684000000000000000e+03 -1.593910960656211029e-24 -1.509778445311714326e-23 -1.684250000000000000e+03 -8.380751058666222502e-24 6.802322762441320063e-24 -1.684500000000000000e+03 -3.158632417870422470e-24 4.830172282427386525e-24 -1.684750000000000000e+03 -2.897319623533355289e-24 -6.736717584757287008e-24 -1.685000000000000000e+03 -1.445120643946843919e-24 1.093613345419221176e-25 -1.685250000000000000e+03 -2.313416158205609758e-24 7.195574719625947276e-24 -1.685500000000000000e+03 -8.292115830787746691e-24 1.899258189837999954e-23 -1.685750000000000000e+03 7.173632529867986181e-25 7.706104194775744693e-24 -1.686000000000000000e+03 9.475393144716051776e-24 -2.394335510415888210e-24 -1.686250000000000000e+03 2.710571948085596390e-24 -5.794474741262910712e-24 -1.686500000000000000e+03 1.337423037392421296e-25 3.879727260957092727e-24 -1.686750000000000000e+03 -7.545015145745779976e-24 1.408654828124179632e-23 -1.687000000000000000e+03 -8.850828528398978437e-24 2.696437365129820204e-24 -1.687250000000000000e+03 -5.913846821873728816e-24 -9.235712496862125451e-24 -1.687500000000000000e+03 -1.137516540367678839e-24 -3.913177706395628023e-24 -1.687750000000000000e+03 -1.086472386381067245e-23 1.214321532265872378e-23 -1.688000000000000000e+03 3.631561813258854835e-24 3.842959319973495038e-24 -1.688250000000000000e+03 5.313228785085759566e-26 -8.570654555059535654e-24 -1.688500000000000000e+03 1.074494926654814206e-23 7.605750824048068722e-24 -1.688750000000000000e+03 4.051658111422470697e-24 5.790543830881010777e-24 -1.689000000000000000e+03 -6.212799669577167623e-24 -3.398103931009655631e-24 -1.689250000000000000e+03 1.006724100975417547e-24 -1.911783923737845854e-23 -1.689500000000000000e+03 5.203332201693950657e-24 -1.324042589915894295e-23 -1.689750000000000000e+03 2.307229505506407815e-24 -1.746662775004621701e-25 -1.690000000000000000e+03 2.408024874868674716e-23 6.596887125697973743e-24 -1.690250000000000000e+03 -1.718634696974177992e-24 -9.888840595536871977e-24 -1.690500000000000000e+03 -4.296814869791887529e-24 5.199074089984616470e-24 -1.690750000000000000e+03 -3.377571103416941705e-24 -4.050082714671318871e-24 -1.691000000000000000e+03 -1.059043881420609539e-23 8.038389913072834583e-25 -1.691250000000000000e+03 6.758617998910678859e-24 -5.145567409063481434e-24 -1.691500000000000000e+03 -1.003725316312051855e-23 -4.665209917130255428e-24 -1.691750000000000000e+03 -2.242863292890040768e-24 4.329068878920097959e-24 -1.692000000000000000e+03 5.076600172439094706e-24 -9.158778697529239347e-24 -1.692250000000000000e+03 6.457510086576864618e-24 -1.427621945008414687e-23 -1.692500000000000000e+03 8.202808013850413840e-24 -2.771685652305080288e-24 -1.692750000000000000e+03 5.404625184959876378e-25 4.815163043670457442e-25 -1.693000000000000000e+03 -8.573553943414999883e-25 -3.868713371119378847e-24 -1.693250000000000000e+03 -1.112594614173538089e-23 -3.364986475389802526e-24 -1.693500000000000000e+03 -7.375786935821347006e-24 4.719679803114309291e-24 -1.693750000000000000e+03 1.071467750188039972e-23 6.665091814999288224e-24 -1.694000000000000000e+03 -3.831291377516377180e-25 6.110866015482712205e-24 -1.694250000000000000e+03 -1.408376238278682214e-23 5.667492479264831150e-24 -1.694500000000000000e+03 1.836501182576098574e-24 1.019952249006442844e-26 -1.694750000000000000e+03 3.968488432792733551e-24 1.534223476292984569e-25 -1.695000000000000000e+03 4.584896638951548210e-24 2.121679854760167882e-24 -1.695250000000000000e+03 -1.075061119334909099e-23 -2.000165937793616095e-24 -1.695500000000000000e+03 -1.176379373339864421e-23 5.948060220399382406e-24 -1.695750000000000000e+03 3.485920150277422260e-24 9.450512782428153445e-24 -1.696000000000000000e+03 -1.081205959120182289e-24 3.471929744872801770e-24 -1.696250000000000000e+03 -3.038362696668461565e-26 3.406556081956695417e-24 -1.696500000000000000e+03 1.060995647198874828e-23 9.650950322904598114e-24 -1.696750000000000000e+03 -5.413191948771084201e-24 9.999560642516809074e-25 -1.697000000000000000e+03 5.283844147392159280e-24 7.312112092661336217e-24 -1.697250000000000000e+03 -2.267568939494091636e-23 -8.511468832716825154e-24 -1.697500000000000000e+03 1.858808795868089984e-23 -1.784721412505956244e-24 -1.697750000000000000e+03 -1.105171499550372476e-24 -5.135075712217832833e-24 -1.698000000000000000e+03 6.739678278987051717e-24 1.421092841969670099e-23 -1.698250000000000000e+03 -1.369503618318061307e-23 -4.744397046642599969e-24 -1.698500000000000000e+03 4.176303151687689805e-25 1.625806130137558981e-24 -1.698750000000000000e+03 1.641772965149382816e-23 1.423000839859269751e-24 -1.699000000000000000e+03 8.480341944774469799e-24 1.898257438277816787e-24 -1.699250000000000000e+03 -9.052286895877993892e-26 1.069045774616573657e-23 -1.699500000000000000e+03 -1.337797307592127778e-23 -1.026350646313057441e-23 -1.699750000000000000e+03 -1.243547650906741189e-23 -1.473523944408284215e-23 -1.700000000000000000e+03 6.527681085722815301e-24 8.680763483589298059e-24 -1.700250000000000000e+03 -6.384486253995573016e-24 -5.196229561475200222e-24 -1.700500000000000000e+03 1.356293110351983041e-24 -5.051960686417290980e-24 -1.700750000000000000e+03 6.975132179936579458e-24 -5.356004509097184416e-24 -1.701000000000000000e+03 -2.896677964210192783e-24 6.130277114115338889e-24 -1.701250000000000000e+03 4.347097255488375595e-24 -7.971096409648274928e-24 -1.701500000000000000e+03 -4.011760269276772960e-24 6.527433003040620770e-24 -1.701750000000000000e+03 -2.758435398828291376e-24 -3.254891474412292927e-24 -1.702000000000000000e+03 3.800079713754584266e-24 5.801660822692940277e-25 -1.702250000000000000e+03 7.923346738517661621e-24 -8.829453597085479948e-25 -1.702500000000000000e+03 5.892655570723586461e-24 1.027899792325421242e-24 -1.702750000000000000e+03 -1.690896656887940914e-23 1.226993652459370466e-23 -1.703000000000000000e+03 -1.730516112373524817e-24 4.555248144666591459e-24 -1.703250000000000000e+03 5.046671562925904880e-24 6.585343153919481490e-26 -1.703500000000000000e+03 3.182130041062217207e-24 -5.658692008753300711e-24 -1.703750000000000000e+03 2.981232912295974860e-24 1.213318266898835391e-23 -1.704000000000000000e+03 -6.480584055298829025e-24 -8.245576215469845151e-24 -1.704250000000000000e+03 -1.816136287367282905e-23 -1.984931580739027658e-23 -1.704500000000000000e+03 1.379386397179993779e-23 -7.722231627366067716e-24 -1.704750000000000000e+03 1.259914275586110912e-24 -1.564492704448636227e-26 -1.705000000000000000e+03 1.761013577869525686e-25 -9.115893524278388994e-25 -1.705250000000000000e+03 1.963562048272461199e-24 -4.765482512697546145e-25 -1.705500000000000000e+03 -9.697483578701493376e-24 -6.243679501765832999e-25 -1.705750000000000000e+03 -4.981070579368656630e-24 -4.003879265273426868e-24 -1.706000000000000000e+03 5.414001429930223278e-24 -5.126549013504099941e-24 -1.706250000000000000e+03 7.248798073958009742e-24 4.522014623369132507e-24 -1.706500000000000000e+03 6.338734247091045477e-24 -3.662605686244994244e-24 -1.706750000000000000e+03 -2.802915401570587548e-24 -6.307129835355745162e-25 -1.707000000000000000e+03 -8.543402412699268728e-24 -5.254897102710338174e-24 -1.707250000000000000e+03 -6.122646739518855737e-25 9.702614148614045238e-24 -1.707500000000000000e+03 1.555042529645279127e-23 -3.106402707203417467e-24 -1.707750000000000000e+03 4.212856376708391559e-24 -4.582870106068349414e-24 -1.708000000000000000e+03 -5.370726819284454474e-24 4.198410335516257509e-24 -1.708250000000000000e+03 -1.685700947533949671e-23 3.360942792605729704e-24 -1.708500000000000000e+03 -1.657494503166181579e-23 8.770959635543566222e-24 -1.708750000000000000e+03 -5.972673067039162501e-25 5.828523742965135166e-24 -1.709000000000000000e+03 -4.586115432658177033e-24 -5.160682241174812050e-25 -1.709250000000000000e+03 6.621751088740584090e-25 1.126404159834553501e-23 -1.709500000000000000e+03 -1.366038582269681665e-23 -2.974627499554128001e-24 -1.709750000000000000e+03 1.374703315963647791e-23 3.576109593665801729e-24 -1.710000000000000000e+03 1.206450322599089938e-23 -4.821789608441796208e-24 -1.710250000000000000e+03 6.882232230708380652e-24 -9.716199246908320236e-24 -1.710500000000000000e+03 -3.562402589018383584e-24 1.120532293927535789e-23 -1.710750000000000000e+03 -2.409838270657311980e-24 9.891309178865712727e-24 -1.711000000000000000e+03 -1.883966263063843586e-23 5.373356559048579282e-24 -1.711250000000000000e+03 6.738812556131269873e-24 7.286086081696353843e-24 -1.711500000000000000e+03 1.253896523129003473e-24 -3.754928376208746241e-24 -1.711750000000000000e+03 -1.465574842455107875e-23 -9.666854559300427621e-24 -1.712000000000000000e+03 -1.015930173964364573e-23 -3.360526507504468750e-24 -1.712250000000000000e+03 8.599730581801543697e-24 1.495531591914920251e-23 -1.712500000000000000e+03 -6.471520945874085329e-24 3.130590804492497606e-24 -1.712750000000000000e+03 9.725549384580088683e-24 5.837583738877471985e-24 -1.713000000000000000e+03 -2.039771519235853429e-25 1.470396144663398481e-24 -1.713250000000000000e+03 3.077619557782051358e-24 -3.178205904888335993e-24 -1.713500000000000000e+03 1.153421331595529053e-23 5.645738831259162150e-24 -1.713750000000000000e+03 3.200103858396248470e-24 4.910416352412399793e-24 -1.714000000000000000e+03 -8.699063774686280904e-24 -1.115499610849183417e-23 -1.714250000000000000e+03 4.494579830155970549e-24 -1.325305840841087142e-24 -1.714500000000000000e+03 -8.655460261307774398e-24 1.426257820155981914e-23 -1.714750000000000000e+03 -9.742939848606324626e-24 -1.307892110596822403e-23 -1.715000000000000000e+03 8.465090212939923035e-24 -4.791190619739170594e-24 -1.715250000000000000e+03 -1.723338638831935299e-26 -1.406681994540217948e-23 -1.715500000000000000e+03 -1.483893833041671614e-23 2.749467330195452977e-23 -1.715750000000000000e+03 -2.266869934698096905e-24 1.849028538515525071e-24 -1.716000000000000000e+03 9.838470845376898775e-24 9.968173013536034031e-25 -1.716250000000000000e+03 -1.607423897969636796e-23 2.120643083843310343e-23 -1.716500000000000000e+03 -9.813008607854623389e-24 8.868404870334335630e-26 -1.716750000000000000e+03 8.570344354678642791e-24 -1.860351334103464168e-24 -1.717000000000000000e+03 8.088528017038690557e-24 5.437321901708120316e-25 -1.717250000000000000e+03 6.191729212580221282e-24 -6.184536141075705313e-24 -1.717500000000000000e+03 -2.528010961905382629e-24 -4.713190729958537202e-24 -1.717750000000000000e+03 -1.181187040304864702e-23 8.799510114557676421e-24 -1.718000000000000000e+03 -8.784187344974219157e-24 -3.386463955502311868e-26 -1.718250000000000000e+03 5.012380955831935717e-24 -1.151848681963655721e-23 -1.718500000000000000e+03 -1.121444050511464321e-23 -8.411908590843435970e-24 -1.718750000000000000e+03 6.230322038449640952e-24 8.837453804383424536e-24 -1.719000000000000000e+03 3.642939376960590158e-24 -2.741861743333274311e-24 -1.719250000000000000e+03 1.417753119668834148e-23 -4.971278147611572065e-24 -1.719500000000000000e+03 2.431350280653128624e-24 1.607716210794796528e-23 -1.719750000000000000e+03 -4.988246288640805229e-24 -5.517294266149710638e-24 -1.720000000000000000e+03 3.042067184080022447e-24 -1.550079404875196367e-23 -1.720250000000000000e+03 -7.332373496581133905e-25 -2.773843110390568441e-24 -1.720500000000000000e+03 -1.734716022590074184e-23 -3.937003645341673868e-24 -1.720750000000000000e+03 9.146182794415921837e-24 -8.717927537723491551e-25 -1.721000000000000000e+03 9.875181796662561262e-24 -7.611539436672008054e-24 -1.721250000000000000e+03 7.511039361833160497e-24 2.220689736035767445e-23 -1.721500000000000000e+03 1.588236135605357386e-23 8.740425647324023644e-24 -1.721750000000000000e+03 -9.470589633943602177e-25 -1.271802794676462866e-23 -1.722000000000000000e+03 3.582131072672524894e-24 -1.080035286498644078e-23 -1.722250000000000000e+03 -6.513976591213766517e-25 3.812875748675264252e-25 -1.722500000000000000e+03 8.168437556517121042e-24 -1.048555900655172843e-24 -1.722750000000000000e+03 -1.585775748394797275e-23 -5.174066346615621536e-24 -1.723000000000000000e+03 1.163800467552650335e-23 -1.195239055247342823e-23 -1.723250000000000000e+03 -4.943261909652408266e-24 -1.170064768802221593e-23 -1.723500000000000000e+03 -1.266059731263755808e-23 8.833697961481435237e-25 -1.723750000000000000e+03 3.857142949569036950e-25 -4.124201052560837889e-25 -1.724000000000000000e+03 -4.284268455241279361e-24 -1.413254138715990232e-25 -1.724250000000000000e+03 7.136660950631451263e-24 6.260132818147754537e-24 -1.724500000000000000e+03 -4.456701563274888039e-24 6.385352624805194622e-24 -1.724750000000000000e+03 -3.591174141320447103e-24 1.969172317362182520e-24 -1.725000000000000000e+03 4.349452618105708831e-24 5.106786050441666294e-24 -1.725250000000000000e+03 1.445142539769715396e-23 4.599454636755089930e-24 -1.725500000000000000e+03 1.663389806336795741e-23 -9.822812918644963706e-24 -1.725750000000000000e+03 -1.352901876807741264e-23 5.011163083413673484e-24 -1.726000000000000000e+03 -8.953930386730040274e-24 -1.372997019035642108e-23 -1.726250000000000000e+03 7.773524995225023900e-24 -7.824329178906028908e-24 -1.726500000000000000e+03 5.927024372219057611e-25 -7.695406057165996210e-25 -1.726750000000000000e+03 1.323143191219855020e-23 -1.113784374211018489e-24 -1.727000000000000000e+03 7.919864281944837416e-24 4.036110434440120703e-24 -1.727250000000000000e+03 -3.778725159169235082e-24 1.637367240809806551e-23 -1.727500000000000000e+03 -2.217615076999657406e-24 -2.511381791461085547e-24 -1.727750000000000000e+03 -1.900997539992387224e-23 -2.176098201026338128e-23 -1.728000000000000000e+03 6.294925847635928223e-24 9.501336995074112383e-24 -1.728250000000000000e+03 1.531013559749437985e-23 -7.053267086804651072e-24 -1.728500000000000000e+03 2.067643179414369043e-24 -7.027910146424336689e-24 -1.728750000000000000e+03 3.338141373002162014e-24 1.290908585521627003e-23 -1.729000000000000000e+03 9.918072857745895425e-24 -4.045180305970676907e-24 -1.729250000000000000e+03 -3.509075670534243887e-24 -8.525403898508467328e-24 -1.729500000000000000e+03 1.945193207267630367e-23 2.911159063808369355e-24 -1.729750000000000000e+03 -5.582828425659530262e-24 -7.376300785121347983e-24 -1.730000000000000000e+03 5.204168387042245857e-24 -1.438283998047537925e-25 -1.730250000000000000e+03 -1.022954602438855361e-24 8.681362274800540401e-24 -1.730500000000000000e+03 -1.526263543179873734e-23 -5.544874594580369647e-24 -1.730750000000000000e+03 8.410221218784372868e-25 -6.819329734594054610e-24 -1.731000000000000000e+03 -4.556450426989715932e-24 -4.631339853556468869e-24 -1.731250000000000000e+03 -1.692898363373580700e-23 -3.369351959789079059e-24 -1.731500000000000000e+03 -1.527575207577613456e-23 8.329758683224169298e-24 -1.731750000000000000e+03 -3.043485312121986548e-24 -2.645597101963312198e-24 -1.732000000000000000e+03 4.523474348849525701e-24 2.717051254307210758e-24 -1.732250000000000000e+03 -1.770200987871756840e-23 1.033998866230783975e-23 -1.732500000000000000e+03 1.039479929022335237e-23 -4.536331685398956048e-24 -1.732750000000000000e+03 2.775669468161255232e-24 -4.035716452709360323e-24 -1.733000000000000000e+03 3.378852596642498899e-24 1.368697650183348288e-23 -1.733250000000000000e+03 1.711623861904945291e-23 -8.565738285955126880e-24 -1.733500000000000000e+03 4.863479662379463450e-24 3.565510504369430018e-24 -1.733750000000000000e+03 9.264013376849822583e-24 -8.296993910021231242e-24 -1.734000000000000000e+03 5.392314125360240574e-24 4.441567132793801573e-24 -1.734250000000000000e+03 -1.584694748711812187e-24 2.666773614982259262e-24 -1.734500000000000000e+03 6.557380686990684835e-24 -9.334015238971684909e-24 -1.734750000000000000e+03 1.652757080066540193e-23 7.353477215260007015e-24 -1.735000000000000000e+03 1.877338177784020296e-24 3.412066214243268933e-25 -1.735250000000000000e+03 -5.294568835052552833e-24 3.053502624992751562e-24 -1.735500000000000000e+03 2.051608202569982996e-24 1.229630685536131061e-23 -1.735750000000000000e+03 -1.213882929507247725e-23 -2.690488538088558694e-24 -1.736000000000000000e+03 1.464532156689423941e-23 2.447398201219781945e-24 -1.736250000000000000e+03 -1.846335294200942258e-23 1.026532993770405464e-23 -1.736500000000000000e+03 -3.698063282930638352e-24 1.235765219028365484e-23 -1.736750000000000000e+03 -2.238105920675813605e-23 4.799318487948990592e-24 -1.737000000000000000e+03 -2.074657713794088621e-23 -1.600907822645624831e-24 -1.737250000000000000e+03 8.889411431366730286e-24 -2.725238513493513004e-24 -1.737500000000000000e+03 4.280280649047181057e-24 1.622095936666004272e-24 -1.737750000000000000e+03 4.984618378851847290e-24 2.322297365683998322e-24 -1.738000000000000000e+03 -1.166997589089064296e-23 6.195917196909353766e-24 -1.738250000000000000e+03 -5.833908577904627442e-24 -7.986478578554783976e-25 -1.738500000000000000e+03 -1.089698079723768950e-23 6.515061729673158589e-24 -1.738750000000000000e+03 -9.237894395384758874e-24 1.439892857139863029e-23 -1.739000000000000000e+03 7.167782328720673571e-24 -6.123938453362479795e-24 -1.739250000000000000e+03 -4.465891684057090030e-24 1.351040310069370191e-23 -1.739500000000000000e+03 1.038286240491903465e-23 -1.050049311258128494e-23 -1.739750000000000000e+03 1.203347833326755302e-25 1.672885354786035641e-23 -1.740000000000000000e+03 1.645255959267145818e-23 -5.098138136629661550e-24 -1.740250000000000000e+03 -5.798928644702185550e-24 -1.030960751906205564e-23 -1.740500000000000000e+03 -3.985368784451025231e-25 6.313791024231232116e-25 -1.740750000000000000e+03 -3.664369385451819265e-24 -3.877188047973935113e-25 -1.741000000000000000e+03 9.818556823445254185e-24 5.579394813854883867e-24 -1.741250000000000000e+03 8.374785906505760676e-24 -7.278189126986967313e-24 -1.741500000000000000e+03 3.681526757700826332e-24 -8.355556992760101420e-24 -1.741750000000000000e+03 -9.708415606859412305e-25 3.553737794055484281e-24 -1.742000000000000000e+03 5.869104745285158287e-25 -3.569226986257363344e-24 -1.742250000000000000e+03 -6.425683645268750209e-24 1.320916429974899148e-23 -1.742500000000000000e+03 -3.620853459231013396e-24 6.227276674740232168e-24 -1.742750000000000000e+03 -4.329451525524555288e-24 -2.783794273708165879e-24 -1.743000000000000000e+03 -4.995394748812207288e-24 -9.188263149852558192e-24 -1.743250000000000000e+03 -1.953144787881633764e-24 1.536427718622416045e-24 -1.743500000000000000e+03 9.664297100956443853e-24 7.393418516531316559e-24 -1.743750000000000000e+03 7.459746949622106208e-24 -2.191854182764155274e-24 -1.744000000000000000e+03 2.516151626017144429e-24 -1.793044975500294630e-24 -1.744250000000000000e+03 -1.428947479570013933e-23 7.533132018661729517e-24 -1.744500000000000000e+03 3.930292860084557342e-24 3.694597217597514487e-24 -1.744750000000000000e+03 -8.117384049159284988e-24 3.613281654486201050e-25 -1.745000000000000000e+03 -2.450807086682068510e-24 -1.257273911330144701e-23 -1.745250000000000000e+03 -6.556144930782846418e-24 7.841046224115905079e-24 -1.745500000000000000e+03 8.844970496835955529e-24 2.931090893099233598e-24 -1.745750000000000000e+03 -6.538969458888444542e-25 6.057212685472341245e-24 -1.746000000000000000e+03 -1.016404876507687456e-23 -7.507604145096555119e-24 -1.746250000000000000e+03 -5.082641898679979877e-24 7.563976569996014839e-24 -1.746500000000000000e+03 -2.700901529395498254e-23 -4.719381934647136446e-25 -1.746750000000000000e+03 -4.455116925258446141e-24 2.044057916323465446e-23 -1.747000000000000000e+03 -6.288144994630361365e-24 -7.250102729257075380e-24 -1.747250000000000000e+03 -1.936110410075680366e-23 5.343098448363502988e-24 -1.747500000000000000e+03 -3.869439914969673800e-25 1.245292461052143308e-23 -1.747750000000000000e+03 -3.618941888399263152e-24 -1.143825820244438134e-23 -1.748000000000000000e+03 3.283163107908180767e-24 -2.632761466262930961e-24 -1.748250000000000000e+03 2.806621725192592263e-24 -1.016392571421779573e-23 -1.748500000000000000e+03 -2.364183085748880642e-24 -1.240553452357046647e-23 -1.748750000000000000e+03 -1.708778138404277131e-23 -8.139443486367027677e-24 -1.749000000000000000e+03 -8.690843133750898741e-24 9.238254138840084438e-24 -1.749250000000000000e+03 -1.737710235731659411e-24 4.254007132975374949e-24 -1.749500000000000000e+03 1.989602347432529522e-24 -5.441962663461817520e-24 -1.749750000000000000e+03 -9.141910857610169731e-24 -7.008662074824300528e-24 -1.750000000000000000e+03 -5.057000994005866182e-25 1.851060059916611922e-24 -1.750250000000000000e+03 1.292038963193227364e-23 1.326620378676421641e-24 -1.750500000000000000e+03 1.535584362444992548e-24 1.390533562115412580e-23 -1.750750000000000000e+03 -1.816890758448992378e-23 -1.489959883602840102e-23 -1.751000000000000000e+03 -2.300643559046360797e-24 3.859006008822845336e-24 -1.751250000000000000e+03 6.515130646133427888e-24 -5.503007992164200996e-24 -1.751500000000000000e+03 -4.357094993369073470e-24 1.421594809257548070e-24 -1.751750000000000000e+03 2.970911534932990903e-24 1.371861591603440284e-23 -1.752000000000000000e+03 4.700289223728026255e-24 -6.882006295886689281e-24 -1.752250000000000000e+03 8.796402747184718558e-24 5.433094097221728852e-24 -1.752500000000000000e+03 -1.342032098474831697e-23 -1.572885787528844441e-23 -1.752750000000000000e+03 -1.108728791290179611e-24 6.968966209003956930e-24 -1.753000000000000000e+03 -6.824040528205205618e-24 9.807559473313788315e-24 -1.753250000000000000e+03 -3.135461860930836324e-24 3.530993474169085492e-24 -1.753500000000000000e+03 5.917292696071911075e-24 8.716689485839349235e-25 -1.753750000000000000e+03 -4.337991489538964335e-24 -7.599380991418258643e-24 -1.754000000000000000e+03 3.156585275044977888e-24 -1.625669705264819290e-24 -1.754250000000000000e+03 -6.475543535185867188e-24 -1.219353293592154145e-23 -1.754500000000000000e+03 6.717562624055312343e-24 1.133770441704147083e-23 -1.754750000000000000e+03 8.383136890979332419e-24 9.048881934128423071e-25 -1.755000000000000000e+03 -1.632423463439545509e-23 9.598445970922639335e-24 -1.755250000000000000e+03 -3.217089903600660480e-24 6.153224655391870910e-24 -1.755500000000000000e+03 -2.264743747941473913e-24 5.050208601953178790e-24 -1.755750000000000000e+03 -1.173299386001378092e-23 -1.310995031444420705e-24 -1.756000000000000000e+03 -9.817112610856919622e-24 1.573076567343136092e-23 -1.756250000000000000e+03 -1.667067059208209819e-23 -5.902043465869825875e-25 -1.756500000000000000e+03 -1.348492926475625235e-23 -3.060440228225999239e-24 -1.756750000000000000e+03 -9.206228801039179602e-24 7.391324849842073949e-24 -1.757000000000000000e+03 5.560749155863579092e-24 -6.756149774195005768e-24 -1.757250000000000000e+03 -1.442598850624033604e-24 -2.261167134870785776e-24 -1.757500000000000000e+03 2.723269264666728536e-24 -9.525712229804876858e-24 -1.757750000000000000e+03 4.060043339590866943e-24 6.763433404384218173e-24 -1.758000000000000000e+03 2.870988995762579586e-24 1.526673988958429130e-24 -1.758250000000000000e+03 1.294350123501804487e-23 2.492469487529530416e-24 -1.758500000000000000e+03 -1.253020673262655209e-24 2.117186916161803502e-24 -1.758750000000000000e+03 -1.001139834808082059e-23 9.389989214351590176e-24 -1.759000000000000000e+03 -7.830264254011728511e-24 -1.533727064755496186e-23 -1.759250000000000000e+03 1.167316185938370445e-23 3.044175633644097853e-24 -1.759500000000000000e+03 6.801620279402680746e-24 -4.040803405619089502e-24 -1.759750000000000000e+03 -1.113984204764067169e-23 -6.356808271337545620e-24 -1.760000000000000000e+03 -1.192091193257807894e-24 9.334726675354544110e-24 -1.760250000000000000e+03 -3.190375960720080893e-24 -8.795862012109025520e-24 -1.760500000000000000e+03 -5.666461138250871737e-24 -1.154929071306584678e-23 -1.760750000000000000e+03 1.711771169524709927e-23 -8.212000684765098935e-25 -1.761000000000000000e+03 4.397966342271252558e-24 -2.481208139058730240e-24 -1.761250000000000000e+03 -6.213553314637472671e-25 -8.193998187087345352e-25 -1.761500000000000000e+03 -2.266879079959564120e-23 -1.389142627330758078e-23 -1.761750000000000000e+03 1.109189166950714199e-24 3.762297944192342051e-24 -1.762000000000000000e+03 6.421150068512248949e-24 4.342789060394798758e-24 -1.762250000000000000e+03 3.224469648180488588e-24 -2.614480758575342419e-23 -1.762500000000000000e+03 1.084630119799807828e-23 -7.937403904588850908e-24 -1.762750000000000000e+03 -6.267101013827282405e-24 -5.845445375563144132e-24 -1.763000000000000000e+03 7.538275297448085601e-24 4.494196963587579510e-24 -1.763250000000000000e+03 -3.754245948570395519e-24 8.344756900048546455e-24 -1.763500000000000000e+03 4.451381428345656257e-24 -7.021535964953579595e-25 -1.763750000000000000e+03 -3.342101693959855390e-24 -3.225944117858529748e-24 -1.764000000000000000e+03 3.466535282149985326e-24 2.267034431700475022e-24 -1.764250000000000000e+03 2.501438798254502179e-24 4.855791855569557371e-24 -1.764500000000000000e+03 -9.497004058175842045e-24 -2.009872658981432751e-24 -1.764750000000000000e+03 2.360623206735712955e-24 1.318823175523199492e-23 -1.765000000000000000e+03 6.380313931380795506e-24 5.494351637607196034e-24 -1.765250000000000000e+03 -2.138366764494269805e-24 5.321516808766467895e-24 -1.765500000000000000e+03 -6.124674721401896632e-24 -2.784718852859050992e-25 -1.765750000000000000e+03 -9.538256876809371214e-24 -1.040755029970004270e-23 -1.766000000000000000e+03 7.340125673705435093e-24 1.105307129505447986e-23 -1.766250000000000000e+03 -4.869088946608425507e-24 -3.933710858365732553e-24 -1.766500000000000000e+03 6.458639281225806789e-25 -1.593595353663114132e-23 -1.766750000000000000e+03 -9.641146355401626922e-24 1.580004665145685198e-24 -1.767000000000000000e+03 6.952270678235958087e-24 1.223194557337122588e-23 -1.767250000000000000e+03 1.548147545683535921e-24 1.013043422877433933e-23 -1.767500000000000000e+03 -4.867092516010924577e-24 -4.304902346536145801e-24 -1.767750000000000000e+03 5.246394689781561692e-24 1.227010649981756467e-23 -1.768000000000000000e+03 7.584980034969705545e-24 -2.164882139163974175e-24 -1.768250000000000000e+03 2.532555338797909168e-24 -6.199307386887687358e-24 -1.768500000000000000e+03 1.942132335531693791e-23 2.892852654001418110e-23 -1.768750000000000000e+03 -9.924498175264350974e-25 5.002457099369610282e-24 -1.769000000000000000e+03 -7.258654040006882994e-24 -2.122580184280224035e-24 -1.769250000000000000e+03 1.968046220668886608e-23 -1.667387109806234509e-25 -1.769500000000000000e+03 3.449986485599493358e-25 -2.323574730267803264e-24 -1.769750000000000000e+03 -2.938250389152311235e-24 -5.097779799930364314e-24 -1.770000000000000000e+03 5.177581996395684788e-24 5.119282149926965839e-24 -1.770250000000000000e+03 6.395743979198259034e-24 5.834144756630834177e-24 -1.770500000000000000e+03 5.516286096619204238e-27 -5.963544493330245028e-24 -1.770750000000000000e+03 -4.866280635802508757e-24 -6.604244642515488406e-24 -1.771000000000000000e+03 6.751202598637239851e-24 2.148671157231265654e-24 -1.771250000000000000e+03 1.250885344437047828e-23 -1.097337133097691806e-23 -1.771500000000000000e+03 -1.351690056788875774e-24 1.723030683775946884e-24 -1.771750000000000000e+03 -5.642721929087686583e-25 3.568598248838359911e-24 -1.772000000000000000e+03 4.951518806061619805e-24 3.437177722370313276e-24 -1.772250000000000000e+03 3.066509146824782578e-24 -6.132822327166564897e-24 -1.772500000000000000e+03 -1.152939965852070893e-23 -6.202668047612274504e-24 -1.772750000000000000e+03 9.275925609946346211e-24 1.123295153148111303e-24 -1.773000000000000000e+03 -7.978323376896292440e-24 -3.596615793057598312e-24 -1.773250000000000000e+03 5.201270824812174189e-24 -2.559014448274665858e-24 -1.773500000000000000e+03 1.652519215497128656e-24 -5.697390267209176104e-24 -1.773750000000000000e+03 3.884970253106518498e-24 -1.245778522259410121e-23 -1.774000000000000000e+03 6.829514116414697679e-24 6.995075279598535295e-24 -1.774250000000000000e+03 1.868460627268393672e-24 -9.543462200199891008e-24 -1.774500000000000000e+03 -4.714059162104439166e-24 -2.664766713117895118e-24 -1.774750000000000000e+03 5.682687956640820567e-24 8.384910352434885044e-24 -1.775000000000000000e+03 -8.530807721483618681e-25 2.557224371209449013e-24 -1.775250000000000000e+03 -8.605781996868770966e-25 -1.442205543198314435e-23 -1.775500000000000000e+03 -2.113795868024798209e-24 5.930189965233928594e-24 -1.775750000000000000e+03 4.615882656397874784e-24 1.969266670057805254e-24 -1.776000000000000000e+03 9.070454660974150866e-24 5.376545538394875752e-24 -1.776250000000000000e+03 1.800232690922714378e-23 -7.632598642990255139e-24 -1.776500000000000000e+03 3.062591779859442326e-24 5.141505216202763314e-24 -1.776750000000000000e+03 -5.631531724513478247e-24 -1.108526056723676409e-23 -1.777000000000000000e+03 8.411938855005993629e-24 1.527042427354870742e-26 -1.777250000000000000e+03 -5.137073123069230750e-24 -1.387813189608503996e-23 -1.777500000000000000e+03 -8.294904837770767951e-24 1.409546000985754494e-23 -1.777750000000000000e+03 -8.774784897163510611e-24 -1.526412066183205787e-24 -1.778000000000000000e+03 1.632114177246659257e-23 -3.540427023950955562e-24 -1.778250000000000000e+03 6.691086447988105936e-24 -1.930509731576041863e-23 -1.778500000000000000e+03 -1.299785027564630616e-24 1.331154888648296169e-23 -1.778750000000000000e+03 -6.333374966977366495e-24 -2.720973761083603963e-24 -1.779000000000000000e+03 3.901151955685696955e-24 -7.023035613673690552e-24 -1.779250000000000000e+03 -1.028990375916708050e-23 5.942528490201929662e-24 -1.779500000000000000e+03 -6.043170788825981448e-24 5.868110992524573340e-24 -1.779750000000000000e+03 5.907759343258376304e-24 8.201333725588865279e-24 -1.780000000000000000e+03 2.721512448959940395e-24 1.011429035261483983e-23 -1.780250000000000000e+03 9.123381647554036561e-25 9.653917301457025058e-24 -1.780500000000000000e+03 -5.160473424438739602e-24 -1.010822655620495813e-25 -1.780750000000000000e+03 1.873968653154908380e-23 -1.156406813134086226e-24 -1.781000000000000000e+03 8.440584998753708914e-24 1.559581494212953471e-23 -1.781250000000000000e+03 -4.665479984477170297e-24 -9.025645849380739229e-24 -1.781500000000000000e+03 6.214970697437825607e-24 1.988591035073057026e-23 -1.781750000000000000e+03 8.063934918115625090e-24 -1.079492059062174535e-23 -1.782000000000000000e+03 -7.545903114900813226e-24 -4.472473035701561463e-24 -1.782250000000000000e+03 7.998103827423644840e-24 -4.207355455346599658e-24 -1.782500000000000000e+03 -6.921861467218032130e-25 3.313914053111581042e-25 -1.782750000000000000e+03 4.632151309356269113e-24 1.012750003142721531e-23 -1.783000000000000000e+03 -1.251728045409621071e-23 7.995813217271817684e-25 -1.783250000000000000e+03 -2.083323362946669916e-25 -3.482977067720011389e-24 -1.783500000000000000e+03 -7.324560445406194095e-24 1.493515011871077658e-24 -1.783750000000000000e+03 -7.634671607803178847e-24 -4.367542429296759933e-24 -1.784000000000000000e+03 1.429949503681847971e-24 2.919862614467920181e-24 -1.784250000000000000e+03 -5.201451889222067092e-24 9.688387713816681013e-25 -1.784500000000000000e+03 -2.047077650814939243e-23 3.981688696643230492e-24 -1.784750000000000000e+03 -1.821540563808514344e-24 -6.439055322685568681e-24 -1.785000000000000000e+03 1.449430533324470807e-23 7.829107246161659762e-24 -1.785250000000000000e+03 -8.869789233488925289e-24 8.504856687480659372e-24 -1.785500000000000000e+03 2.973001915398326677e-25 -4.236934656037273639e-24 -1.785750000000000000e+03 -5.718966584908609989e-24 -1.946962743136692170e-24 -1.786000000000000000e+03 2.238760083171270559e-24 1.043405562447718153e-23 -1.786250000000000000e+03 -1.051226287574140348e-23 -4.434252624260052611e-24 -1.786500000000000000e+03 4.311886174209162058e-26 -6.716141056797995741e-24 -1.786750000000000000e+03 -5.552067482679769552e-24 -3.267132489191521977e-24 -1.787000000000000000e+03 -2.713607646514272263e-24 3.438986593028489379e-24 -1.787250000000000000e+03 -6.810727539886948019e-24 -9.490752718361164723e-24 -1.787500000000000000e+03 -6.174807068921287904e-24 -1.899455515027865253e-25 -1.787750000000000000e+03 -4.331499237815173024e-24 -7.515077189368741555e-25 -1.788000000000000000e+03 1.802679149320400162e-24 -3.192149606147905771e-24 -1.788250000000000000e+03 -3.671579324944261520e-24 3.310549843210492912e-24 -1.788500000000000000e+03 -1.418744907941967022e-25 -9.620409390212556469e-24 -1.788750000000000000e+03 1.083433389376126110e-24 5.629582855815001636e-24 -1.789000000000000000e+03 6.237225200701230011e-24 -1.543388290559281168e-23 -1.789250000000000000e+03 2.456177713680506942e-24 1.099691432251046656e-24 -1.789500000000000000e+03 -9.329650346328563557e-25 -1.367044889124262335e-24 -1.789750000000000000e+03 9.349283118519196409e-24 8.443049418945666262e-24 -1.790000000000000000e+03 8.156407676702030298e-24 7.936553911274728635e-24 -1.790250000000000000e+03 3.563439605961283943e-24 4.550782896213455246e-24 -1.790500000000000000e+03 1.910236097950437441e-24 -9.168238364438361825e-25 -1.790750000000000000e+03 -6.304509753380300714e-24 7.142189734397342413e-24 -1.791000000000000000e+03 1.948071923077493197e-24 -1.102525697119580511e-24 -1.791250000000000000e+03 2.371816254750724969e-24 -1.164770638610827450e-23 -1.791500000000000000e+03 8.513453932143241936e-24 -5.949124370102955302e-24 -1.791750000000000000e+03 -9.667490665693652197e-24 -6.662274949659162605e-24 -1.792000000000000000e+03 -1.581425378345587461e-24 -8.201271467829022489e-24 -1.792250000000000000e+03 9.671599595727960244e-25 6.297252982367021964e-24 -1.792500000000000000e+03 -8.352762268409427219e-24 -1.431703948089967924e-23 -1.792750000000000000e+03 -2.553018124844010535e-24 -1.032508949319158797e-23 -1.793000000000000000e+03 1.855287767214729133e-24 -3.407799319391641737e-24 -1.793250000000000000e+03 1.579419203110954054e-23 -5.408119615778125954e-24 -1.793500000000000000e+03 -7.039348903586468354e-24 -1.881695099606973481e-24 -1.793750000000000000e+03 1.384780772101248184e-23 1.173391038314234773e-23 -1.794000000000000000e+03 -4.498697779357203539e-24 5.162382207713158171e-24 -1.794250000000000000e+03 7.125531845164730674e-26 8.767172481151938817e-24 -1.794500000000000000e+03 7.662003283922936132e-24 7.864311641330122351e-24 -1.794750000000000000e+03 1.080809576629585734e-23 2.101365740726732703e-23 -1.795000000000000000e+03 1.239289910122975501e-23 -4.189079873028700284e-24 -1.795250000000000000e+03 -5.066177566526997806e-24 -6.557137740394210274e-24 -1.795500000000000000e+03 4.515560102980950582e-24 -7.725503621713552342e-24 -1.795750000000000000e+03 9.655420200120870080e-24 9.171489743205742046e-24 -1.796000000000000000e+03 6.572439056770556614e-24 -1.430889602085528077e-23 -1.796250000000000000e+03 5.817411399190997410e-24 -8.710700622562415570e-24 -1.796500000000000000e+03 5.869993371399312605e-24 3.786175053012336420e-24 -1.796750000000000000e+03 -7.141054456693736757e-24 1.368854213596733084e-23 -1.797000000000000000e+03 2.205379282086969113e-24 2.447644005678576627e-23 -1.797250000000000000e+03 6.753722715638100329e-24 2.674324436853610752e-24 -1.797500000000000000e+03 -2.312725805047795882e-24 8.584576112193642634e-24 -1.797750000000000000e+03 -5.804715209357033636e-24 -5.185500836286695290e-24 -1.798000000000000000e+03 -7.279124564882753013e-24 -1.232926379971896704e-23 -1.798250000000000000e+03 -5.725335731330437525e-24 5.027808413488958447e-24 -1.798500000000000000e+03 1.402497594128386955e-23 3.466262169485383629e-24 -1.798750000000000000e+03 -4.838359786812571335e-24 -2.705890283382390465e-24 -1.799000000000000000e+03 1.049007580892874185e-23 -1.168021665850153793e-24 -1.799250000000000000e+03 -5.178379749922610330e-24 -8.198631819632646229e-24 -1.799500000000000000e+03 8.438159097077891855e-24 -4.341560153653047402e-24 -1.799750000000000000e+03 4.258720133901059278e-25 -3.541043564282332017e-24 -1.800000000000000000e+03 8.248559379626862479e-25 1.185036630738932226e-23 -1.800250000000000000e+03 2.796000202014818026e-24 7.080947715025408902e-24 -1.800500000000000000e+03 4.091586809501579728e-24 -3.703881797041351943e-24 -1.800750000000000000e+03 -6.745598269498986195e-25 1.650847788046960608e-23 -1.801000000000000000e+03 5.987464708892943929e-24 7.721221663953124109e-24 -1.801250000000000000e+03 3.415101042144159606e-24 -1.734163734756993005e-23 -1.801500000000000000e+03 1.142573262667526489e-23 -4.105949183807748262e-24 -1.801750000000000000e+03 -1.753935750514620900e-25 -2.489319509164403897e-24 -1.802000000000000000e+03 1.785910392148608217e-23 8.490182340473446752e-24 -1.802250000000000000e+03 -3.684369425491795782e-24 3.573372834522159789e-24 -1.802500000000000000e+03 -4.688561519208867434e-24 5.227160463426890080e-24 -1.802750000000000000e+03 1.200479318756490810e-23 1.520023263967471682e-23 -1.803000000000000000e+03 1.268047546264284501e-23 -4.913015669850105891e-24 -1.803250000000000000e+03 9.492755148599737929e-25 -3.187788580113183144e-24 -1.803500000000000000e+03 2.458200615465670729e-24 6.071226657099399477e-24 -1.803750000000000000e+03 8.398932229465353071e-25 5.678806056166013100e-24 -1.804000000000000000e+03 -1.100870320387236812e-23 -4.213261993892696230e-24 -1.804250000000000000e+03 -1.614286506954423447e-23 -9.365301404026681815e-25 -1.804500000000000000e+03 -3.227716521725995657e-24 3.180709426338635480e-24 -1.804750000000000000e+03 1.257986105043690273e-23 1.279204535735125018e-23 -1.805000000000000000e+03 3.585382981412922103e-24 -1.569365707936848118e-23 -1.805250000000000000e+03 -1.234591373083349161e-23 1.677171184936697678e-23 -1.805500000000000000e+03 6.061353278884438651e-24 1.230534628851476628e-23 -1.805750000000000000e+03 7.500533048873569513e-25 -7.958473007145833403e-24 -1.806000000000000000e+03 5.669863946059225001e-24 2.211280891278212382e-23 -1.806250000000000000e+03 -7.824508045454922525e-24 -8.799958335738901885e-24 -1.806500000000000000e+03 -7.479537742392814749e-24 -5.495671555001416625e-24 -1.806750000000000000e+03 7.757067195165312963e-24 -8.357416636023246249e-24 -1.807000000000000000e+03 3.462481005479349650e-24 5.690463655674671611e-25 -1.807250000000000000e+03 -4.610228974354915036e-24 1.518319689130401775e-23 -1.807500000000000000e+03 -8.684917040082417453e-24 -4.499636694640990436e-24 -1.807750000000000000e+03 4.592571214089572519e-24 8.906972343746199886e-25 -1.808000000000000000e+03 1.384930341109842229e-23 -1.267521193507425035e-23 -1.808250000000000000e+03 7.683561407933428625e-24 -4.525850976915077655e-24 -1.808500000000000000e+03 -1.271518248680562359e-23 -1.107397658530688164e-24 -1.808750000000000000e+03 -6.810015680967576564e-24 1.863536949363910089e-24 -1.809000000000000000e+03 2.064102148645407734e-23 9.386494985421591699e-24 -1.809250000000000000e+03 -8.837758088505230228e-24 -1.299854030489620865e-23 -1.809500000000000000e+03 3.375468903471084818e-24 -1.489336577119410879e-24 -1.809750000000000000e+03 8.848716338500753435e-24 1.217502899267005088e-25 -1.810000000000000000e+03 -1.178339263877040131e-23 2.457803163174862127e-24 -1.810250000000000000e+03 9.745246332163776647e-24 6.016179794545123076e-24 -1.810500000000000000e+03 -1.139916895170563286e-25 -2.976577370981966810e-24 -1.810750000000000000e+03 3.310011411055499500e-24 -4.111919219188578031e-24 -1.811000000000000000e+03 -2.941369251998340168e-24 -3.837495158768372617e-25 -1.811250000000000000e+03 -8.197454251149808561e-24 4.722549862226977510e-24 -1.811500000000000000e+03 -2.247985559887706083e-25 -4.040730786595682270e-24 -1.811750000000000000e+03 -1.061509536049652626e-23 1.065013750201418381e-23 -1.812000000000000000e+03 -6.341153962985162924e-24 1.930683144584023953e-24 -1.812250000000000000e+03 -5.782758598088895480e-24 -1.787742104467069367e-23 -1.812500000000000000e+03 -1.531398994743439226e-23 -7.514283603395233546e-24 -1.812750000000000000e+03 -8.605399775759990023e-24 7.456656435282774189e-24 -1.813000000000000000e+03 -1.010859140423919841e-23 5.298257816061503134e-24 -1.813250000000000000e+03 -1.193343888124334698e-23 1.517944984005748159e-24 -1.813500000000000000e+03 6.541579775546333550e-24 -6.165887436516990564e-24 -1.813750000000000000e+03 -1.922189925207892976e-23 -1.535935786948682955e-23 -1.814000000000000000e+03 7.205286423500292673e-24 -5.518326919522213020e-24 -1.814250000000000000e+03 -9.507160442709747322e-24 -3.392450223695617476e-25 -1.814500000000000000e+03 -1.191392998453321962e-24 -1.371579772512006416e-24 -1.814750000000000000e+03 -9.674047677082449511e-25 5.584387046133415195e-24 -1.815000000000000000e+03 5.245681217196349921e-25 1.221764392720015875e-23 -1.815250000000000000e+03 -7.324906171013104058e-24 -1.491039957058517846e-23 -1.815500000000000000e+03 1.354447798558682798e-25 -4.132172642143378144e-24 -1.815750000000000000e+03 1.390908371959187215e-23 1.082703003015754892e-23 -1.816000000000000000e+03 -3.802020233882085232e-24 8.231484916929975233e-24 -1.816250000000000000e+03 1.438568242201635783e-23 -4.322034271336782697e-24 -1.816500000000000000e+03 -2.145665176996799722e-24 -1.227791855050432750e-23 -1.816750000000000000e+03 -2.909205543113627264e-24 6.584552418461581148e-24 -1.817000000000000000e+03 -3.149573942354549495e-24 1.274186031289375054e-23 -1.817250000000000000e+03 -6.902889285076515685e-24 -1.099350127160356572e-24 -1.817500000000000000e+03 -9.542840912086069583e-24 -6.373334568694691206e-24 -1.817750000000000000e+03 -2.703583761057955396e-24 8.293100508715957853e-25 -1.818000000000000000e+03 3.819344313673398422e-24 -2.036120916757779645e-24 -1.818250000000000000e+03 4.144300812806254783e-24 5.581994872426601792e-24 -1.818500000000000000e+03 1.173148873720466693e-23 4.398008649998792978e-24 -1.818750000000000000e+03 1.251719365758870945e-24 -4.788591486568754974e-24 -1.819000000000000000e+03 -7.326850555115525756e-24 -7.024708028644126630e-24 -1.819250000000000000e+03 -1.695476954118107119e-24 1.368924769823418945e-24 -1.819500000000000000e+03 1.131814933058128539e-23 1.829618906333091547e-23 -1.819750000000000000e+03 -5.418610888126672907e-24 -9.856867892718439393e-24 -1.820000000000000000e+03 3.535022356647117419e-24 -1.425955492347087242e-24 -1.820250000000000000e+03 7.713360735253439246e-24 5.702866216638817538e-24 -1.820500000000000000e+03 -1.160748731475337005e-24 1.425207624028793430e-23 -1.820750000000000000e+03 -2.272072464245666203e-24 8.502307968056243808e-24 -1.821000000000000000e+03 -1.011920540252790612e-24 2.643265866853249146e-23 -1.821250000000000000e+03 -1.209838208448012729e-23 -1.756629062761283684e-25 -1.821500000000000000e+03 2.193343956643339363e-24 -1.260024464443921716e-23 -1.821750000000000000e+03 -2.286216834355477537e-24 8.705568995711296029e-24 -1.822000000000000000e+03 -1.788270062162758727e-23 -1.311794812275578956e-23 -1.822250000000000000e+03 -1.087816136183186891e-25 -1.509397067923430342e-23 -1.822500000000000000e+03 -1.526101730524947088e-23 -5.033761537320521582e-24 -1.822750000000000000e+03 1.564818040960860069e-24 -1.801278424507879995e-24 -1.823000000000000000e+03 1.653274143564647538e-24 7.291986765418365560e-24 -1.823250000000000000e+03 9.696148129538361062e-25 -1.016414781535286882e-23 -1.823500000000000000e+03 -2.509133715798298967e-24 -1.285840439943579771e-23 -1.823750000000000000e+03 -1.065372816326295308e-23 1.353495540604008838e-23 -1.824000000000000000e+03 -7.042731819348424243e-24 7.424422520235559994e-24 -1.824250000000000000e+03 -3.840597217264447667e-24 -3.126298326152455174e-24 -1.824500000000000000e+03 -6.502776527372378522e-24 -3.077424223658674070e-24 -1.824750000000000000e+03 -1.013883127012201408e-24 5.188703449281827957e-24 -1.825000000000000000e+03 -2.919849038247131687e-24 -1.492362706662860637e-23 -1.825250000000000000e+03 4.894481714282638674e-25 1.409202473640746753e-23 -1.825500000000000000e+03 -2.935855476002702232e-25 -2.550675499401770205e-24 -1.825750000000000000e+03 6.041365009817375728e-24 8.462543091185207254e-24 -1.826000000000000000e+03 -5.386798782902102561e-24 -1.040657636601214020e-23 -1.826250000000000000e+03 -2.330607187357106386e-24 -8.246413896247011981e-24 -1.826500000000000000e+03 1.830306710738500405e-24 1.385062145069130606e-23 -1.826750000000000000e+03 -1.762781784948119385e-23 5.279871606492139400e-24 -1.827000000000000000e+03 -3.297918638959450226e-24 -2.474063467253712442e-24 -1.827250000000000000e+03 2.073667982285557797e-23 -7.220468156337048187e-24 -1.827500000000000000e+03 1.729469688048848138e-24 -5.295021423593762881e-24 -1.827750000000000000e+03 -3.833242508113629475e-24 5.961949488050721968e-24 -1.828000000000000000e+03 -2.794950055178056129e-24 1.699339405219691811e-23 -1.828250000000000000e+03 -1.346179805426030917e-23 -2.339726099481902380e-24 -1.828500000000000000e+03 -1.134941702337954628e-23 1.130877198521451712e-23 -1.828750000000000000e+03 -4.285657990877352619e-24 5.313000748279336357e-24 -1.829000000000000000e+03 -6.867953360596236671e-24 1.459948745546768894e-24 -1.829250000000000000e+03 -1.088558381141859308e-23 3.370492656113201065e-24 -1.829500000000000000e+03 1.166456627488528529e-23 2.189062091355083681e-24 -1.829750000000000000e+03 -5.154187218613864324e-24 -2.720299706588370842e-24 -1.830000000000000000e+03 7.555486072031363406e-24 4.695049588441611851e-25 -1.830250000000000000e+03 7.003063306535612953e-24 -1.163664383529522540e-23 -1.830500000000000000e+03 -1.954856273890749798e-23 2.497521997202682123e-24 -1.830750000000000000e+03 6.003920696663501214e-24 -4.966321139615208096e-24 -1.831000000000000000e+03 -6.080600507468914395e-24 8.569252566909703478e-24 -1.831250000000000000e+03 5.926851094382186881e-24 -1.473894640373094637e-25 -1.831500000000000000e+03 3.575967262466876417e-24 8.298768727138895231e-24 -1.831750000000000000e+03 1.298920474393802482e-23 -7.060424494517697149e-24 -1.832000000000000000e+03 5.820210077081427207e-24 7.988928934923382680e-25 -1.832250000000000000e+03 -5.545419261043314999e-24 -1.203811562987504887e-24 -1.832500000000000000e+03 4.471004342042118577e-24 -3.268593044254434695e-23 -1.832750000000000000e+03 4.070346624352862118e-25 1.710912761482871053e-23 -1.833000000000000000e+03 -7.486337614968607394e-24 5.489507500587552918e-25 -1.833250000000000000e+03 7.234570007163162001e-24 -1.022671849705326071e-23 -1.833500000000000000e+03 9.281731567442016352e-24 -8.374514728599576546e-24 -1.833750000000000000e+03 5.837641240527353380e-24 1.557251249867180310e-24 -1.834000000000000000e+03 1.515645046123213684e-23 1.041301995188293685e-23 -1.834250000000000000e+03 -4.431249442749394328e-24 -2.408713705320448934e-24 -1.834500000000000000e+03 7.126703889368874232e-24 7.946942954992077273e-24 -1.834750000000000000e+03 4.892520367480427447e-24 -1.655901962667007231e-23 -1.835000000000000000e+03 -2.031454538225831188e-23 2.147790961818956530e-24 -1.835250000000000000e+03 -9.585249107707122310e-24 -1.370793583449922001e-24 -1.835500000000000000e+03 -6.504004922481949742e-24 -2.868730686327840949e-24 -1.835750000000000000e+03 4.520268821837971988e-24 -1.639949592827660196e-24 -1.836000000000000000e+03 -1.334768640961408852e-23 -5.266085837112213892e-24 -1.836250000000000000e+03 -4.984510538142073527e-24 8.157003689474587866e-24 -1.836500000000000000e+03 -2.624293464034020674e-24 -1.282320811927094554e-24 -1.836750000000000000e+03 -3.869989477299053126e-24 -4.572058405330530872e-24 -1.837000000000000000e+03 -8.470027560693667661e-24 2.127707151429384590e-24 -1.837250000000000000e+03 -7.796521481230501044e-24 7.700235562813420642e-24 -1.837500000000000000e+03 2.457805101182703210e-23 1.385794965118477559e-23 -1.837750000000000000e+03 1.077100769071597506e-23 -3.318198841769934846e-24 -1.838000000000000000e+03 4.972991454656748995e-25 -1.728561452209889043e-23 -1.838250000000000000e+03 -2.744005824841861162e-23 -1.220709777384731312e-23 -1.838500000000000000e+03 8.654275601118765365e-24 2.845353617388684818e-24 -1.838750000000000000e+03 4.813215377635420912e-25 -1.073966124415163246e-25 -1.839000000000000000e+03 1.413421523479447482e-24 -9.769763175434213693e-24 -1.839250000000000000e+03 -7.546387958202887214e-24 -2.427352084245199438e-25 -1.839500000000000000e+03 -3.131965269108965795e-24 3.467201093714847105e-24 -1.839750000000000000e+03 -7.566478876048487538e-24 4.861510094355009462e-24 -1.840000000000000000e+03 -3.762060010930642771e-24 -8.473683315366753703e-24 -1.840250000000000000e+03 -8.814735353994725273e-24 -1.005103910359982918e-24 -1.840500000000000000e+03 -9.161281387225023279e-24 6.665580274296089278e-24 -1.840750000000000000e+03 2.367379484071305213e-24 -9.602092253490545008e-24 -1.841000000000000000e+03 -3.327808773275325709e-24 -3.355612911299441245e-25 -1.841250000000000000e+03 1.039922792836144795e-23 1.178483584007855373e-23 -1.841500000000000000e+03 -6.192195718055543951e-25 5.444964407047414508e-25 -1.841750000000000000e+03 -2.286646223214415527e-23 -1.650219531686262278e-24 -1.842000000000000000e+03 9.386054591759298824e-24 1.446745133589953526e-23 -1.842250000000000000e+03 7.038142267948456001e-24 -1.024335301645208148e-23 -1.842500000000000000e+03 3.131317741575517538e-24 -1.092211288209485162e-23 -1.842750000000000000e+03 2.074320861885524161e-24 3.410119781038614057e-24 -1.843000000000000000e+03 -1.430517104988638393e-23 -8.130212753454202970e-24 -1.843250000000000000e+03 -5.692590551842928599e-24 -1.485952161279303186e-24 -1.843500000000000000e+03 -1.463447150015448142e-23 8.479657204209146482e-24 -1.843750000000000000e+03 -1.542593829328395492e-23 1.585710707446418536e-23 -1.844000000000000000e+03 2.181924742544077219e-24 -1.148076222553069199e-24 -1.844250000000000000e+03 1.438548869989918943e-23 2.142802971842513648e-23 -1.844500000000000000e+03 -1.078738304576002010e-24 5.659795412088985415e-24 -1.844750000000000000e+03 -3.280412246375479052e-24 -4.209123399531369233e-24 -1.845000000000000000e+03 6.437939294688459784e-24 -3.613821918133255237e-24 -1.845250000000000000e+03 6.639662681868098190e-24 -1.180667285945141318e-23 -1.845500000000000000e+03 4.383299845475945337e-24 -2.664887908660953721e-24 -1.845750000000000000e+03 2.128393520415519979e-23 -2.363003949853780289e-25 -1.846000000000000000e+03 2.616539099312900488e-24 1.641019347684311023e-24 -1.846250000000000000e+03 -7.213167234808117709e-24 3.629913644982872563e-24 -1.846500000000000000e+03 -7.567566210682419558e-24 7.207753819857590775e-24 -1.846750000000000000e+03 1.652890893072634495e-24 1.353629289287832277e-23 -1.847000000000000000e+03 6.367224276756327003e-24 -5.311959418787728938e-24 -1.847250000000000000e+03 4.803969694165885844e-24 -1.716588651098374093e-24 -1.847500000000000000e+03 9.959769470453677821e-25 -1.028787156989086047e-23 -1.847750000000000000e+03 1.074577419700378691e-23 -8.324082260722427424e-24 -1.848000000000000000e+03 1.743710920118304763e-23 1.453870369488238353e-23 -1.848250000000000000e+03 6.897316694410778728e-24 4.179129404693933618e-24 -1.848500000000000000e+03 2.834700363909201667e-24 9.132992825467831091e-24 -1.848750000000000000e+03 -1.302407593254933396e-24 -4.481396011649771635e-25 -1.849000000000000000e+03 -9.861608583252723472e-25 2.869051270077945228e-24 -1.849250000000000000e+03 1.173119686792583481e-23 2.633045251039300777e-24 -1.849500000000000000e+03 -3.704175720674385029e-24 -4.605592468604610997e-24 -1.849750000000000000e+03 1.140234146480870881e-23 -7.862059443474549770e-24 -1.850000000000000000e+03 -3.502510129648775873e-24 4.249469840539510280e-24 -1.850250000000000000e+03 1.831371035723165485e-23 -1.961379090725560707e-23 -1.850500000000000000e+03 -4.162559159549889557e-24 2.953610690243518038e-24 -1.850750000000000000e+03 -1.860859349289391843e-24 1.455246369017225346e-25 -1.851000000000000000e+03 -3.159199866266295384e-24 6.764074274687039853e-24 -1.851250000000000000e+03 3.583572828117138447e-24 5.377765289379562935e-24 -1.851500000000000000e+03 -3.449646598737513019e-25 8.294862753093727289e-24 -1.851750000000000000e+03 -1.458577717592309729e-23 -1.054532141179276949e-23 -1.852000000000000000e+03 1.686548722474563701e-23 -6.994834698037150656e-24 -1.852250000000000000e+03 -2.104464055488571383e-24 -8.710276664096518868e-24 -1.852500000000000000e+03 -8.954312513809883090e-24 -7.298997836448676414e-24 -1.852750000000000000e+03 7.068329312436643172e-24 -1.906140575327327430e-24 -1.853000000000000000e+03 6.400136079212415060e-24 -2.599727001935656532e-24 -1.853250000000000000e+03 5.887679430327790045e-24 -2.463835899760114596e-24 -1.853500000000000000e+03 2.810425551035565597e-24 -1.417760978305537534e-23 -1.853750000000000000e+03 9.495566580839863638e-26 -2.574397865395086284e-24 -1.854000000000000000e+03 1.384238237793150775e-23 -1.160859283818176711e-23 -1.854250000000000000e+03 -4.227962126441116569e-24 2.777126262286685338e-24 -1.854500000000000000e+03 4.157044949692837335e-24 -8.636859227321278923e-24 -1.854750000000000000e+03 -4.975964719039826611e-24 3.541299534222843914e-24 -1.855000000000000000e+03 2.096976410990437765e-23 -7.038042787118356691e-26 -1.855250000000000000e+03 -1.377243921023810560e-23 2.192202900392151174e-23 -1.855500000000000000e+03 9.833219140520842546e-24 -7.571683920500981953e-24 -1.855750000000000000e+03 -5.489559814175782825e-24 -2.100049015317252986e-24 -1.856000000000000000e+03 6.513696572529706218e-24 5.972272521314664660e-24 -1.856250000000000000e+03 6.938818198086281910e-25 -6.079870675309087254e-24 -1.856500000000000000e+03 1.028507986939692123e-23 -3.136893309821400781e-24 -1.856750000000000000e+03 -8.573263866538191544e-25 1.486656933775886135e-23 -1.857000000000000000e+03 5.285278175375920856e-24 3.010897711211453470e-24 -1.857250000000000000e+03 -1.181988484915906694e-23 9.683494806962508517e-24 -1.857500000000000000e+03 3.848684926219702398e-24 1.069221467722994541e-25 -1.857750000000000000e+03 1.376972790823345203e-23 -4.004929126631799145e-24 -1.858000000000000000e+03 -1.058003104650912902e-24 8.871924292371358656e-24 -1.858250000000000000e+03 1.551631392654883509e-24 -1.782105455717804195e-23 -1.858500000000000000e+03 -3.888033821855830773e-24 -8.672575810931936033e-24 -1.858750000000000000e+03 5.489220051012351374e-24 -9.622861806937665214e-24 -1.859000000000000000e+03 -6.962770387573123427e-24 -1.099084373125791438e-23 -1.859250000000000000e+03 -1.086253642148345236e-23 -1.507938187374992046e-23 -1.859500000000000000e+03 4.934862614189530047e-24 8.295985727788575080e-25 -1.859750000000000000e+03 4.039980127779869759e-24 -1.427496967034622796e-24 -1.860000000000000000e+03 -3.743232776272015102e-24 4.165148828418227123e-25 -1.860250000000000000e+03 -2.603411307819409280e-24 4.688792773585923602e-24 -1.860500000000000000e+03 5.229827486901600008e-24 4.849133739587561304e-24 -1.860750000000000000e+03 -1.051435646160784957e-23 -2.952294828618118906e-24 -1.861000000000000000e+03 -6.615036915787526085e-25 -5.320686602135036307e-24 -1.861250000000000000e+03 1.013947067956865991e-23 -1.283150562092690598e-24 -1.861500000000000000e+03 -1.016791761618261633e-23 -4.517041191997283148e-24 -1.861750000000000000e+03 -9.632324731342805352e-24 8.714105625350402245e-24 -1.862000000000000000e+03 -3.490448809902600672e-24 1.230342582394759159e-23 -1.862250000000000000e+03 1.353591215925575131e-23 6.139615630820473708e-24 -1.862500000000000000e+03 -1.390923184208014881e-23 6.013613354511954514e-25 -1.862750000000000000e+03 6.255882910259754116e-24 1.779528626411294087e-23 -1.863000000000000000e+03 -7.924818480912391284e-24 -6.717189221142965662e-24 -1.863250000000000000e+03 -5.485605256933923761e-26 -6.326727736918830167e-24 -1.863500000000000000e+03 1.342156510607740787e-24 6.609663637791436863e-25 -1.863750000000000000e+03 5.327442483745965857e-24 -1.023535034673209911e-24 -1.864000000000000000e+03 1.571726889412993791e-24 -7.458708272261972471e-24 -1.864250000000000000e+03 7.324795971181151812e-24 -1.049720913879761652e-23 -1.864500000000000000e+03 5.984387466230854884e-24 1.166426754949889136e-23 -1.864750000000000000e+03 -4.635074035310821219e-24 9.469446655577669127e-24 -1.865000000000000000e+03 -6.054167394198363727e-24 3.315615870279765144e-24 -1.865250000000000000e+03 -3.729178042398835336e-24 9.410990146624204425e-24 -1.865500000000000000e+03 -3.154634453563988954e-24 -1.703728684946542962e-24 -1.865750000000000000e+03 1.904757468068721739e-23 2.174506879654893652e-24 -1.866000000000000000e+03 1.064521579568509237e-23 -9.197565584784395154e-24 -1.866250000000000000e+03 -7.884560574566088151e-24 -3.391888815274650836e-24 -1.866500000000000000e+03 7.155105063316476814e-24 1.015106187410465071e-23 -1.866750000000000000e+03 3.972883051590722709e-24 7.256454970846267740e-24 -1.867000000000000000e+03 -2.194063448997212226e-24 -1.247885014010626230e-23 -1.867250000000000000e+03 4.426019649947939895e-24 -2.798478526880805819e-25 -1.867500000000000000e+03 -1.342946868840612429e-23 8.417119508955832559e-24 -1.867750000000000000e+03 5.777949798879536386e-24 -7.572280531144573336e-24 -1.868000000000000000e+03 3.872529147237171871e-24 1.162542105834683656e-23 -1.868250000000000000e+03 -3.886249311824037570e-24 5.327546815655085170e-24 -1.868500000000000000e+03 1.274780085620127423e-23 5.308712551027952534e-24 -1.868750000000000000e+03 1.443198344186570733e-23 -1.591272943418407011e-24 -1.869000000000000000e+03 4.766403741008405538e-24 -3.330051844723646864e-24 -1.869250000000000000e+03 -5.476187118309509020e-24 2.916468596413417709e-24 -1.869500000000000000e+03 -1.391837738128832665e-23 -6.623838874030619045e-24 -1.869750000000000000e+03 -1.022391470939980239e-23 -1.715948334671031050e-23 -1.870000000000000000e+03 -5.520522173081272870e-24 -1.121267895312780085e-23 -1.870250000000000000e+03 5.196797575146531326e-24 4.687621132602664450e-24 -1.870500000000000000e+03 2.063541208349148352e-24 8.424673303672586761e-24 -1.870750000000000000e+03 -9.036313211522957953e-24 -7.965301629834757162e-24 -1.871000000000000000e+03 6.090103097427502491e-24 -4.222835846172161899e-24 -1.871250000000000000e+03 7.121567540007787333e-26 2.961467701002080298e-25 -1.871500000000000000e+03 -5.349162667672415773e-24 -7.282397062522688698e-24 -1.871750000000000000e+03 -1.130103622471899429e-23 3.222156974079321178e-24 -1.872000000000000000e+03 1.174475341104777918e-23 1.986171775880196556e-23 -1.872250000000000000e+03 -6.198447915659980602e-24 -4.183371242370119661e-24 -1.872500000000000000e+03 -1.184924744187919076e-24 -1.547986250303170929e-23 -1.872750000000000000e+03 2.039726462001860342e-25 5.589962676806815084e-24 -1.873000000000000000e+03 -7.976398232955367330e-24 8.200839610176702105e-24 -1.873250000000000000e+03 6.230059712584283991e-24 1.661743758182567582e-23 -1.873500000000000000e+03 2.253964292358900220e-23 4.431658115790197410e-24 -1.873750000000000000e+03 -6.818122295608753555e-26 -9.314147381780466466e-24 -1.874000000000000000e+03 -6.381642313740054732e-24 1.767519583356983244e-24 -1.874250000000000000e+03 -4.272268621798693941e-24 1.084315441485538450e-24 -1.874500000000000000e+03 1.664176715639026171e-24 3.085251775461276681e-24 -1.874750000000000000e+03 4.271748886892495904e-24 -5.256048639301395337e-24 -1.875000000000000000e+03 -2.145774647100199996e-23 8.897318377422360419e-24 -1.875250000000000000e+03 -8.509801378691602826e-24 -6.500111012741785749e-24 -1.875500000000000000e+03 -3.518302296908017234e-24 4.655710101303736065e-24 -1.875750000000000000e+03 1.718809044243031212e-23 -2.693701698011479156e-24 -1.876000000000000000e+03 4.578722415828543592e-24 1.478534343700858579e-23 -1.876250000000000000e+03 -1.130445615202396947e-23 -1.059151121520940182e-23 -1.876500000000000000e+03 3.782367904441476888e-24 -4.745584070811700275e-25 -1.876750000000000000e+03 1.363524731256130472e-23 -8.324508944285793592e-24 -1.877000000000000000e+03 1.148400601641275659e-23 4.671477089888951421e-24 -1.877250000000000000e+03 1.933915823056564246e-23 1.324388929980907661e-23 -1.877500000000000000e+03 1.258308046425778411e-23 2.483052726855301876e-24 -1.877750000000000000e+03 -3.870426935063809248e-27 1.348180497969680381e-24 -1.878000000000000000e+03 -2.693027388864499650e-24 -5.414471392072836021e-24 -1.878250000000000000e+03 -3.463795265209540599e-24 6.957980228630431012e-25 -1.878500000000000000e+03 2.333510731799201743e-25 3.020831950885481426e-24 -1.878750000000000000e+03 -4.973231772006719483e-24 6.089349910828969314e-24 -1.879000000000000000e+03 -7.808273677627392649e-24 1.224343605963172893e-23 -1.879250000000000000e+03 -4.011746206357150352e-24 -6.896274691581800574e-24 -1.879500000000000000e+03 -5.655503261063830785e-24 -1.103196872040298197e-23 -1.879750000000000000e+03 -1.027559778309623828e-23 -9.291081827813604298e-24 -1.880000000000000000e+03 -2.352082358131582955e-24 -5.736615805516230026e-24 -1.880250000000000000e+03 -6.684035859313587046e-25 -4.050722770904385758e-24 -1.880500000000000000e+03 5.327898541336090139e-24 1.424851368644286639e-23 -1.880750000000000000e+03 -1.121431391675043623e-23 -1.228970446039862952e-23 -1.881000000000000000e+03 -4.217763678218459898e-24 -7.180758546560481355e-24 -1.881250000000000000e+03 8.030185623428144938e-24 1.100480789559299886e-23 -1.881500000000000000e+03 -1.257215144684294091e-23 -6.863320214684552379e-24 -1.881750000000000000e+03 -5.355267272255483662e-24 1.136650888089803124e-23 -1.882000000000000000e+03 -6.247983136298782702e-24 -4.412470878186904341e-24 -1.882250000000000000e+03 1.006385070238719128e-23 -7.413550784229973680e-24 -1.882500000000000000e+03 9.274898631037467883e-24 -1.505420873686708508e-23 -1.882750000000000000e+03 3.014372119917112518e-24 -1.258082464209702740e-24 -1.883000000000000000e+03 4.462188943065086191e-24 1.254450355625847850e-23 -1.883250000000000000e+03 -2.061630223319892016e-23 -1.210185689828738144e-23 -1.883500000000000000e+03 5.453898013576927590e-24 8.211607390751294197e-24 -1.883750000000000000e+03 -7.038494342681380189e-24 -8.935317074430695956e-24 -1.884000000000000000e+03 -3.497834036697518280e-24 -5.233901091716757285e-24 -1.884250000000000000e+03 3.673503547944274864e-24 -1.211657853604072972e-23 -1.884500000000000000e+03 -6.433974878932067732e-24 -1.423740679403956379e-23 -1.884750000000000000e+03 -7.769803005204458998e-25 -5.592356183573282311e-24 -1.885000000000000000e+03 1.631405221037678588e-24 2.672824830131799080e-24 -1.885250000000000000e+03 -1.039139634822388479e-23 -5.037349332518921935e-24 -1.885500000000000000e+03 3.154468537735306395e-24 -1.270064858256338270e-23 -1.885750000000000000e+03 5.676495101805310925e-24 -3.407068927540951173e-24 -1.886000000000000000e+03 1.127371420490269899e-24 -4.388565004674679316e-24 -1.886250000000000000e+03 -8.462302464325351409e-24 3.109489373066413937e-24 -1.886500000000000000e+03 7.331383345488382101e-24 1.253925758494740920e-23 -1.886750000000000000e+03 -3.823773422850200616e-24 -1.014317974072921144e-23 -1.887000000000000000e+03 1.636946173323729458e-24 -2.176169956543772633e-24 -1.887250000000000000e+03 1.468831406588000651e-24 -1.566123232734935423e-23 -1.887500000000000000e+03 -1.214003412849875572e-23 -4.258073373352219052e-24 -1.887750000000000000e+03 8.154570749890438470e-24 5.772078647373346433e-24 -1.888000000000000000e+03 7.054273754003015155e-24 -1.391510147825301856e-24 -1.888250000000000000e+03 -1.394280111931738893e-24 -2.075994382618465375e-24 -1.888500000000000000e+03 2.094513184205139935e-23 6.739098590791640959e-24 -1.888750000000000000e+03 1.221022600895610095e-23 1.337220993329760006e-23 -1.889000000000000000e+03 2.097391670626908750e-24 1.000581590419692737e-23 -1.889250000000000000e+03 2.512895723623864404e-24 4.611338868005924434e-24 -1.889500000000000000e+03 1.477349157849415966e-23 -2.062218207299411844e-23 -1.889750000000000000e+03 -1.175424042694147353e-24 -1.676417339950802551e-24 -1.890000000000000000e+03 -7.331227660729830363e-24 1.831980991521598171e-24 -1.890250000000000000e+03 7.338028527948379737e-24 -7.511510102624253905e-24 -1.890500000000000000e+03 -3.825014227734870412e-24 -2.628387530090881977e-25 -1.890750000000000000e+03 -1.591368793374648067e-23 5.255409752605733815e-24 -1.891000000000000000e+03 -8.817893674664031954e-24 -1.736344154457544333e-24 -1.891250000000000000e+03 1.998226738326737927e-24 -2.907059378918192906e-24 -1.891500000000000000e+03 -1.233590140381504493e-23 -8.735390643561051112e-25 -1.891750000000000000e+03 6.859989249520939152e-24 -3.520019932597398397e-24 -1.892000000000000000e+03 4.652715106211843634e-24 7.811276508212106456e-24 -1.892250000000000000e+03 -9.165740652013404325e-24 -6.543515597217467332e-24 -1.892500000000000000e+03 -2.471928661880422174e-24 -1.860980536589034543e-23 -1.892750000000000000e+03 -9.382093351006780837e-24 -1.953380676523981855e-23 -1.893000000000000000e+03 4.400594071586179865e-24 2.556984758393201635e-24 -1.893250000000000000e+03 6.302634854744905121e-24 -5.864763961587049411e-24 -1.893500000000000000e+03 -1.349388722013004338e-24 7.265967314481900675e-24 -1.893750000000000000e+03 1.379030789562738622e-23 1.443709779293937712e-23 -1.894000000000000000e+03 1.633013250861588831e-23 -2.159479019966469286e-23 -1.894250000000000000e+03 -2.620115187777219831e-24 4.031472168977212634e-24 -1.894500000000000000e+03 -2.599486263071024712e-23 4.014352604507851666e-24 -1.894750000000000000e+03 2.223743234101263119e-24 6.572605506097589066e-24 -1.895000000000000000e+03 -1.219344969797410739e-23 -6.242842115243632180e-24 -1.895250000000000000e+03 1.398547214390879653e-23 7.403209438455910686e-24 -1.895500000000000000e+03 1.623370795915211761e-23 7.014066263392477977e-24 -1.895750000000000000e+03 5.166316492326650355e-24 2.280475353346619737e-24 -1.896000000000000000e+03 3.317096016897230111e-24 -7.716707676293098272e-24 -1.896250000000000000e+03 5.910497253034473263e-24 -1.686806565211709953e-23 -1.896500000000000000e+03 1.721475226708589565e-24 -1.418886884941301931e-23 -1.896750000000000000e+03 1.176755245600476347e-23 1.337206150055741128e-23 -1.897000000000000000e+03 1.110274180659928913e-23 -6.318256275946080831e-24 -1.897250000000000000e+03 1.970243425555723029e-24 3.885978599582621229e-25 -1.897500000000000000e+03 -8.125270999017615597e-24 7.389414414153410887e-24 -1.897750000000000000e+03 -1.449535697396350160e-24 1.086725601000073112e-23 -1.898000000000000000e+03 2.754970528769504836e-24 -1.024856142265896344e-23 -1.898250000000000000e+03 1.089191971091523869e-24 5.519156971560708377e-24 -1.898500000000000000e+03 1.296252246881352346e-23 1.071106868234998509e-23 -1.898750000000000000e+03 2.583238552306054942e-24 4.094506085107620908e-24 -1.899000000000000000e+03 -3.274330205459942190e-24 4.810992019879494436e-24 -1.899250000000000000e+03 1.794551903025462691e-24 -7.354412264809665068e-24 -1.899500000000000000e+03 -1.213187397953449228e-26 -1.301935354628990545e-23 -1.899750000000000000e+03 6.233733912564890797e-24 8.699840131299663342e-24 -1.900000000000000000e+03 6.650859997841084756e-24 -2.135181002791091702e-23 -1.900250000000000000e+03 9.669082304400674408e-24 8.053458888016819673e-25 -1.900500000000000000e+03 -1.249255185703221538e-24 1.245634294459406741e-23 -1.900750000000000000e+03 8.626462751931799040e-24 -2.029292681161812882e-24 -1.901000000000000000e+03 -1.832232455396372296e-24 -4.731718168655878836e-24 -1.901250000000000000e+03 7.356210277059972630e-24 2.456258889287470784e-23 -1.901500000000000000e+03 1.105596818013140307e-24 1.036792188717401814e-23 -1.901750000000000000e+03 -3.786769853688955434e-26 -1.179253345705237443e-23 -1.902000000000000000e+03 1.256992189144329205e-24 -2.811984811437642286e-24 -1.902250000000000000e+03 -4.570542656875814918e-24 -2.346863076911405098e-24 -1.902500000000000000e+03 -5.690369424352903952e-24 -1.361932603898765299e-23 -1.902750000000000000e+03 -3.136600615154147009e-24 6.980922697458577026e-24 -1.903000000000000000e+03 2.282721612498427602e-24 1.109219402539864019e-23 -1.903250000000000000e+03 -2.910092478834008707e-24 6.118386520088177356e-24 -1.903500000000000000e+03 -1.354437968364050868e-23 -2.389967880779113094e-24 -1.903750000000000000e+03 1.082849356445782670e-23 -1.067607320657583839e-23 -1.904000000000000000e+03 9.489662527060230543e-24 1.307366158365288076e-23 -1.904250000000000000e+03 -7.932145071477052769e-25 -3.374501013786428390e-24 -1.904500000000000000e+03 -3.954194537863623048e-26 -4.604599327535652025e-24 -1.904750000000000000e+03 -6.933771420565267264e-24 -4.983494000303059174e-24 -1.905000000000000000e+03 3.950512231985479480e-24 6.187422281241235643e-24 -1.905250000000000000e+03 6.340220637046180931e-24 -6.137575513926358990e-24 -1.905500000000000000e+03 4.641137227908988862e-24 -1.290401072689306559e-23 -1.905750000000000000e+03 -4.238793599973295039e-25 3.249199200451910079e-24 -1.906000000000000000e+03 2.277576953478028244e-23 6.811016270413811691e-24 -1.906250000000000000e+03 -6.224044479205277980e-24 -4.372445474125479760e-24 -1.906500000000000000e+03 2.320244229109448166e-25 1.504037176560426036e-23 -1.906750000000000000e+03 1.029894230737376910e-23 -1.777989463821319469e-24 -1.907000000000000000e+03 -3.437864080792540296e-25 8.735362573848632413e-25 -1.907250000000000000e+03 6.688785319333707996e-25 2.589628588800565929e-24 -1.907500000000000000e+03 -3.106556268603013191e-24 4.695566731364358267e-24 -1.907750000000000000e+03 1.619723147330420447e-23 6.180297546596645486e-24 -1.908000000000000000e+03 -1.478777318193862237e-23 -3.227594075672990417e-24 -1.908250000000000000e+03 -7.818680459511439777e-24 1.035958759139727306e-23 -1.908500000000000000e+03 -1.316574566596860926e-24 -7.598753199692110710e-24 -1.908750000000000000e+03 1.691035585222230077e-23 1.004263298505279586e-24 -1.909000000000000000e+03 9.044234539825556343e-24 2.807600847359273172e-25 -1.909250000000000000e+03 -6.851200513412170508e-25 -7.183898406715116527e-24 -1.909500000000000000e+03 6.168225985376833158e-24 -1.130699377015056088e-23 -1.909750000000000000e+03 -2.907971001499870270e-24 -1.109113733067176343e-23 -1.910000000000000000e+03 -4.132796860513266825e-24 -9.149357386770039434e-25 -1.910250000000000000e+03 -1.548275630028202873e-23 8.307858675660059098e-25 -1.910500000000000000e+03 4.312778802595556381e-24 -2.699191071899700267e-25 -1.910750000000000000e+03 9.052186413637023005e-24 5.412803394291328511e-24 -1.911000000000000000e+03 -1.022715345441192510e-23 -3.560974117123468479e-24 -1.911250000000000000e+03 9.584286325171541737e-24 -6.882872812866076309e-24 -1.911500000000000000e+03 2.754984688015875919e-25 -1.657418210503507020e-23 -1.911750000000000000e+03 -6.669404161280708797e-24 4.938241196107468116e-24 -1.912000000000000000e+03 6.565679053152696638e-24 -3.646782846157044644e-24 -1.912250000000000000e+03 1.099691571795087476e-23 -3.888134449680025982e-24 -1.912500000000000000e+03 1.414876510289673960e-23 -5.338447766667237075e-24 -1.912750000000000000e+03 7.417919386459643469e-25 9.726544071857981461e-24 -1.913000000000000000e+03 -6.579018313811571734e-25 -5.288055382215516133e-24 -1.913250000000000000e+03 4.478860540368792005e-24 3.478454687104474539e-24 -1.913500000000000000e+03 -2.245888424020358921e-24 -5.433338986554869382e-24 -1.913750000000000000e+03 -5.315837929064260960e-24 -8.694283948901961318e-24 -1.914000000000000000e+03 1.790504308398528175e-24 -5.881231610962757131e-25 -1.914250000000000000e+03 1.570441562361854318e-24 -9.798156241372162513e-24 -1.914500000000000000e+03 5.377193737636610918e-24 1.381285486019033835e-24 -1.914750000000000000e+03 1.209258980809591357e-23 -1.188688837880449896e-24 -1.915000000000000000e+03 1.111482150006135711e-24 1.356267490026023643e-25 -1.915250000000000000e+03 -3.908048919956378764e-24 -8.206668059750547658e-24 -1.915500000000000000e+03 -1.661779813483020898e-23 1.325096498834822861e-23 -1.915750000000000000e+03 -3.637630839800393429e-24 -4.711288429767199640e-24 -1.916000000000000000e+03 -3.392073460843320130e-24 6.537447899162769213e-24 -1.916250000000000000e+03 -1.211810957796401588e-23 3.566132602292538635e-24 -1.916500000000000000e+03 6.460392316127666242e-24 -2.304254852107754614e-24 -1.916750000000000000e+03 2.733301325382528204e-24 3.458844891207331033e-24 -1.917000000000000000e+03 -2.653612315223521535e-24 -8.548306788359165168e-24 -1.917250000000000000e+03 -3.342755300990533313e-24 -1.312744582268981642e-23 -1.917500000000000000e+03 -1.806531989703913147e-23 2.173361132668493944e-24 -1.917750000000000000e+03 -1.598901212608262733e-23 6.337552104395013678e-24 -1.918000000000000000e+03 -5.570104514539112958e-24 1.791908838928596882e-24 -1.918250000000000000e+03 -1.631374491513814978e-23 -1.643116498685620742e-23 -1.918500000000000000e+03 -1.183375319997961196e-23 5.153788554248620359e-24 -1.918750000000000000e+03 8.821757278315119647e-25 1.502016507359327432e-24 -1.919000000000000000e+03 7.836825785635461646e-24 -3.628303377767332240e-24 -1.919250000000000000e+03 4.717926147546474221e-24 1.094841440484696042e-23 -1.919500000000000000e+03 7.035860043939495125e-24 -8.463276699281331436e-24 -1.919750000000000000e+03 8.828601955689532793e-24 6.636883699889959985e-24 -1.920000000000000000e+03 -3.539647646991444701e-24 7.076399727838286830e-24 -1.920250000000000000e+03 1.578245764880040743e-23 3.781368255312171478e-24 -1.920500000000000000e+03 1.642146313572067079e-23 6.865905181190600785e-24 -1.920750000000000000e+03 -1.010113800073035372e-23 -9.172705139417043794e-24 -1.921000000000000000e+03 1.097190104054783378e-23 -8.221684871345589114e-24 -1.921250000000000000e+03 1.259888249274729098e-23 -5.564378647387667389e-24 -1.921500000000000000e+03 4.237408857379951472e-24 -2.638432192358510831e-24 -1.921750000000000000e+03 1.091276530997192985e-23 9.969631442086701647e-25 -1.922000000000000000e+03 -1.282688463008016430e-23 -4.736186421419430839e-24 -1.922250000000000000e+03 -1.120852063458575709e-24 -1.033464441518312604e-23 -1.922500000000000000e+03 1.456915038048049237e-24 -3.659393235926708339e-24 -1.922750000000000000e+03 -1.283512997116385139e-23 -7.755010827420555329e-24 -1.923000000000000000e+03 5.111240430806735049e-24 3.473524141992260962e-24 -1.923250000000000000e+03 2.460535746683649455e-23 -5.997342131647056763e-24 -1.923500000000000000e+03 6.765671763398618611e-24 -3.851805312316251011e-24 -1.923750000000000000e+03 1.937694361026530927e-23 -1.507256290937280621e-23 -1.924000000000000000e+03 -1.046437476033794325e-23 1.575900868476504232e-23 -1.924250000000000000e+03 2.042715115958617085e-23 4.718255686576979007e-24 -1.924500000000000000e+03 1.982769165308465651e-23 -1.734930597617945272e-23 -1.924750000000000000e+03 5.163291994831438176e-24 2.315065082052642336e-24 -1.925000000000000000e+03 -1.369537972470120312e-23 5.805792513807118242e-24 -1.925250000000000000e+03 6.033261659193812082e-24 5.464497946368783205e-24 -1.925500000000000000e+03 6.702863814533932969e-24 -2.294280893600182265e-23 -1.925750000000000000e+03 6.205956668920788423e-24 -6.823373020894612959e-24 -1.926000000000000000e+03 1.686395411016398662e-24 -7.515955988559557154e-24 -1.926250000000000000e+03 -3.577411076839411625e-24 -9.213852429361521487e-24 -1.926500000000000000e+03 -3.489880090169839104e-24 -1.830395804845301328e-23 -1.926750000000000000e+03 1.047900849499355344e-23 3.907081362565512705e-24 -1.927000000000000000e+03 4.393068346046987452e-24 -6.071076709514463037e-24 -1.927250000000000000e+03 -3.963264770252864153e-24 6.726995084213593905e-24 -1.927500000000000000e+03 -1.522552233456260809e-23 6.962170895888805865e-24 -1.927750000000000000e+03 1.515259247034637338e-23 1.151299822917215346e-23 -1.928000000000000000e+03 -1.170849119387892586e-23 5.386152044672542367e-25 -1.928250000000000000e+03 8.644125436066623573e-24 7.992916098080237994e-25 -1.928500000000000000e+03 -1.431999309860412798e-25 -3.115062372795488893e-24 -1.928750000000000000e+03 -1.142129487099877004e-23 1.987399392694410021e-24 -1.929000000000000000e+03 1.722653093065088796e-23 -2.942767061285627637e-24 -1.929250000000000000e+03 1.202081045806084846e-23 1.058341382891486546e-23 -1.929500000000000000e+03 -1.217417922201048054e-23 7.067113766750045480e-24 -1.929750000000000000e+03 2.722913828553176989e-24 -2.350295552838189461e-23 -1.930000000000000000e+03 2.141789008384948888e-24 2.944751347309860949e-24 -1.930250000000000000e+03 -3.019151607354530921e-24 -1.050119894378437606e-23 -1.930500000000000000e+03 9.561997816719034518e-24 -9.149999132456334391e-24 -1.930750000000000000e+03 5.982690767923051203e-25 -7.920588055224002907e-25 -1.931000000000000000e+03 3.851885573139985805e-24 -5.640886998888361275e-24 -1.931250000000000000e+03 1.288273635938701441e-23 1.080805197770364544e-23 -1.931500000000000000e+03 3.409029413308954541e-24 -1.349431271086822462e-23 -1.931750000000000000e+03 -1.545636515569425128e-24 1.679587218874063408e-24 -1.932000000000000000e+03 -9.620882298654417898e-24 1.219530626912347960e-23 -1.932250000000000000e+03 7.895671077504792916e-24 -1.624241851721482108e-23 -1.932500000000000000e+03 6.911257245588765858e-25 -7.009566603508562364e-24 -1.932750000000000000e+03 -3.323919241765334148e-24 -5.011206143547193139e-24 -1.933000000000000000e+03 1.420940848083460248e-23 1.489220690579742194e-23 -1.933250000000000000e+03 -9.663230484153089322e-25 4.001868659624286777e-24 -1.933500000000000000e+03 -1.231837442983516866e-23 9.129523822188512581e-24 -1.933750000000000000e+03 1.776028155894266231e-23 -1.688421767353215790e-24 -1.934000000000000000e+03 -7.502623632612182789e-24 1.484313515033673512e-23 -1.934250000000000000e+03 -2.143208906331675685e-24 2.922895077978307207e-25 -1.934500000000000000e+03 1.599636190703210005e-23 -5.430173698975898232e-24 -1.934750000000000000e+03 -3.455328055271978217e-25 1.560665305398503714e-24 -1.935000000000000000e+03 -8.889429006371080686e-24 3.637912861692845168e-24 -1.935250000000000000e+03 -2.085324927802243403e-23 -1.315858505653966476e-23 -1.935500000000000000e+03 -1.935305419568696022e-25 3.105399205914466713e-24 -1.935750000000000000e+03 -1.549577619270511268e-23 -1.029344371531384839e-23 -1.936000000000000000e+03 9.805547816077384865e-24 9.241582954623941030e-24 -1.936250000000000000e+03 2.223801013960241070e-24 -1.879889161447564224e-24 -1.936500000000000000e+03 9.931531644584991534e-24 6.271280169545740953e-24 -1.936750000000000000e+03 -5.290865228929716507e-25 5.015898745566580921e-24 -1.937000000000000000e+03 -8.849262015043729116e-24 -8.579973099463850140e-24 -1.937250000000000000e+03 1.163255134524672677e-23 1.593346757446372009e-23 -1.937500000000000000e+03 7.162543519817039759e-24 3.921510770550248397e-24 -1.937750000000000000e+03 1.175985905596341119e-24 7.085857689981729340e-25 -1.938000000000000000e+03 -4.606425095518965859e-24 -1.904160872104575387e-23 -1.938250000000000000e+03 4.556392582977026984e-24 3.560436274306001029e-24 -1.938500000000000000e+03 1.278020620090194753e-23 -1.288837615941120547e-23 -1.938750000000000000e+03 -2.393039239887917434e-24 7.714887031519331776e-24 -1.939000000000000000e+03 1.625648203759131442e-23 -4.862892120401522225e-24 -1.939250000000000000e+03 4.458857285424233746e-24 -2.127550561094131617e-23 -1.939500000000000000e+03 -1.698126697849844232e-23 -1.012460874192266073e-23 -1.939750000000000000e+03 -1.705258498056432813e-23 3.332773597376465591e-24 -1.940000000000000000e+03 1.412676808951731252e-23 3.008504530852950400e-24 -1.940250000000000000e+03 -7.895877801636512600e-25 7.963465665501598946e-24 -1.940500000000000000e+03 -2.559566986062248209e-25 2.116044437310108548e-24 -1.940750000000000000e+03 5.268800535520850147e-24 -2.335648926660555535e-24 -1.941000000000000000e+03 1.471074994410548275e-24 9.309408735501643430e-24 -1.941250000000000000e+03 -6.009758647137809973e-24 -3.060138056818493160e-24 -1.941500000000000000e+03 8.876750526290548391e-24 -1.454229169331060556e-23 -1.941750000000000000e+03 -5.526139017517720193e-24 -1.442118735296515520e-24 -1.942000000000000000e+03 7.125976350399800879e-24 -3.150626585586105973e-25 -1.942250000000000000e+03 1.600283836030486995e-23 -1.171285786525361609e-23 -1.942500000000000000e+03 -1.742651197430813044e-23 2.964147262121624475e-25 -1.942750000000000000e+03 -1.384549672969439303e-23 -7.359409441494190671e-24 -1.943000000000000000e+03 -9.170489011735112408e-25 -3.407413860406859916e-24 -1.943250000000000000e+03 -6.576259779951907419e-24 -2.270467111608536179e-24 -1.943500000000000000e+03 -6.996724118175014809e-24 -7.851351998005224152e-24 -1.943750000000000000e+03 -1.169113357637617316e-23 -7.113215461125061012e-24 -1.944000000000000000e+03 8.439955416301890963e-24 1.122593303691987224e-23 -1.944250000000000000e+03 -1.379013140038413738e-23 -1.203385399981368264e-24 -1.944500000000000000e+03 9.942776714261615573e-24 -4.801834645243153828e-24 -1.944750000000000000e+03 -7.913389554670553169e-24 1.821402794916425992e-23 -1.945000000000000000e+03 -1.871127591987561311e-24 5.156047200105758827e-24 -1.945250000000000000e+03 7.778765471352957735e-24 -1.550852893103339785e-24 -1.945500000000000000e+03 9.605371677509027213e-24 -2.356824529058233698e-24 -1.945750000000000000e+03 1.035259144582688470e-25 3.371611498843039627e-24 -1.946000000000000000e+03 -1.095398335205243166e-23 -1.124965547864612552e-23 -1.946250000000000000e+03 3.334929379954236333e-24 -5.671672460649437323e-24 -1.946500000000000000e+03 3.269966598439499959e-25 9.887654143563193004e-24 -1.946750000000000000e+03 2.517753244517140055e-24 -5.924792236612123448e-24 -1.947000000000000000e+03 -1.634375119462786940e-23 1.432770401581985673e-23 -1.947250000000000000e+03 -8.418203008358762723e-24 -6.620937173573413418e-24 -1.947500000000000000e+03 -1.258416268906518667e-23 6.673229143867412765e-24 -1.947750000000000000e+03 1.154516171116039852e-23 -5.666939367689755091e-25 -1.948000000000000000e+03 -1.104128597707503761e-23 1.276504583467943591e-24 -1.948250000000000000e+03 1.256823817643883749e-25 -1.437624664577104329e-23 -1.948500000000000000e+03 4.508964580062568796e-24 1.033782226452315001e-23 -1.948750000000000000e+03 1.658508677933105903e-23 2.809509318904116728e-25 -1.949000000000000000e+03 -2.740021896783695866e-24 4.026566739289589176e-24 -1.949250000000000000e+03 2.908247860507833541e-24 1.834222278966702032e-24 -1.949500000000000000e+03 -5.504453465211752505e-24 7.626283846509333582e-24 -1.949750000000000000e+03 -1.877810160337906391e-24 1.845743879258278896e-23 -1.950000000000000000e+03 7.630949623727523626e-24 2.141269623726256925e-24 -1.950250000000000000e+03 -2.275145479160040851e-24 -1.039385071921702839e-23 -1.950500000000000000e+03 5.242742955099757825e-24 -1.290991642343299507e-23 -1.950750000000000000e+03 -7.999777369939345118e-25 -1.590537174295525576e-24 -1.951000000000000000e+03 -5.332778746291614874e-24 4.391124214258295935e-25 -1.951250000000000000e+03 -2.064816891255668751e-25 1.149400197265541078e-23 -1.951500000000000000e+03 1.149910531374783794e-23 -8.553279258281413978e-24 -1.951750000000000000e+03 6.671386913304985034e-24 -5.825529732485905101e-24 -1.952000000000000000e+03 4.856760354125559013e-24 2.096789579089164517e-23 -1.952250000000000000e+03 -1.121434873225566267e-23 1.006733294415087724e-23 -1.952500000000000000e+03 -1.178421829161278552e-23 1.156379131521129990e-24 -1.952750000000000000e+03 -4.643039233792652165e-24 7.145728355128156739e-24 -1.953000000000000000e+03 7.051231397309638406e-24 -1.073245210995252776e-24 -1.953250000000000000e+03 -2.450305091996010289e-24 6.206645870150554875e-24 -1.953500000000000000e+03 -5.631787211713741989e-24 2.158553919686762640e-23 -1.953750000000000000e+03 5.427531909076699271e-24 -3.930413894605234751e-24 -1.954000000000000000e+03 -1.192789246910785126e-23 7.970102039653904587e-24 -1.954250000000000000e+03 -2.698576230077389547e-24 8.958010104292508178e-24 -1.954500000000000000e+03 4.881123984983327574e-24 3.132729223315248982e-24 -1.954750000000000000e+03 -4.709680450957232742e-24 -6.859416506172925488e-25 -1.955000000000000000e+03 -4.311802720480420892e-24 2.492533389541849577e-23 -1.955250000000000000e+03 -4.439202120458720068e-24 6.189222579559375015e-24 -1.955500000000000000e+03 3.804836425483826096e-24 1.180970974114076538e-24 -1.955750000000000000e+03 -4.778794283249744671e-24 -1.611937622324485271e-24 -1.956000000000000000e+03 -4.764054219254385276e-24 1.880250510158547223e-24 -1.956250000000000000e+03 2.513829019144970576e-25 -5.342812795751991027e-25 -1.956500000000000000e+03 -2.234909526247053763e-23 7.215527380133366363e-25 -1.956750000000000000e+03 -1.598935648099362754e-23 8.230501045229652053e-24 -1.957000000000000000e+03 5.926648573734444173e-24 -8.188989497100793331e-24 -1.957250000000000000e+03 -5.377288384479850765e-24 1.249294490121912318e-23 -1.957500000000000000e+03 6.868358541841547963e-24 5.240066272938083774e-24 -1.957750000000000000e+03 5.247262056277542441e-24 -1.784369091971432396e-24 -1.958000000000000000e+03 -4.567545663001632048e-24 -1.068167434346485572e-23 -1.958250000000000000e+03 -1.624179566739424253e-24 -1.535054565539014840e-25 -1.958500000000000000e+03 -3.698899671983153895e-24 1.582487536208333589e-24 -1.958750000000000000e+03 3.639914312028551184e-24 -3.653094764384302597e-24 -1.959000000000000000e+03 1.347548868763209773e-23 -1.384951274864300053e-24 -1.959250000000000000e+03 1.765058870881798120e-24 -6.594515877525749984e-24 -1.959500000000000000e+03 -6.165142456723321446e-25 -6.753421811328454481e-24 -1.959750000000000000e+03 1.038669865301339830e-24 2.350980675111608177e-24 -1.960000000000000000e+03 8.887451195939391851e-24 -1.310388596752488900e-23 -1.960250000000000000e+03 2.974048259158776291e-24 2.855862515267431940e-24 -1.960500000000000000e+03 -1.033983418716117328e-24 8.137002140889423142e-24 -1.960750000000000000e+03 -4.180798771562319522e-24 -2.157638105581095050e-24 -1.961000000000000000e+03 1.553015882442937521e-23 7.988006577299571252e-24 -1.961250000000000000e+03 8.603687219592063762e-24 4.451343281413344699e-24 -1.961500000000000000e+03 2.391251011010704910e-24 -8.773540608061586251e-25 -1.961750000000000000e+03 -5.813320464353361714e-24 4.365827449396631611e-24 -1.962000000000000000e+03 1.216444864364213736e-23 -1.383393360193295601e-25 -1.962250000000000000e+03 -7.216017631187900905e-24 4.305660154514415693e-24 -1.962500000000000000e+03 2.038284428503081674e-23 1.079267068045471962e-23 -1.962750000000000000e+03 6.573946065081714261e-24 1.170020213042800851e-23 -1.963000000000000000e+03 2.544492735485939477e-24 -4.800062955988754929e-24 -1.963250000000000000e+03 8.583982226117882636e-24 2.198048065660978130e-24 -1.963500000000000000e+03 -7.284422572303748379e-24 -2.346718154918552592e-24 -1.963750000000000000e+03 -1.700206192336232380e-23 9.170816971958639224e-24 -1.964000000000000000e+03 -1.537457263043267045e-23 -4.271996478163058836e-26 -1.964250000000000000e+03 3.732557324232382183e-24 -9.271609162214551853e-24 -1.964500000000000000e+03 -1.511251726717167756e-23 -1.230569599123550452e-23 -1.964750000000000000e+03 2.923139538269916888e-24 -3.674744702422932078e-24 -1.965000000000000000e+03 -1.393021280519541005e-24 1.927619763968517006e-23 -1.965250000000000000e+03 8.527609947554897681e-24 6.183204567494934740e-24 -1.965500000000000000e+03 3.702787018572287001e-24 4.266365136669177258e-24 -1.965750000000000000e+03 -2.044789620665386136e-24 9.698475713246332837e-24 -1.966000000000000000e+03 -1.072257669806608989e-24 -3.567937809796785314e-24 -1.966250000000000000e+03 2.828041932564939416e-24 -6.411196844927995707e-24 -1.966500000000000000e+03 -2.080110091509617952e-23 -1.483542872883684505e-23 -1.966750000000000000e+03 1.719354145314648806e-24 -1.863655651147958188e-23 -1.967000000000000000e+03 -1.813368117863705438e-24 -2.145204757902468347e-23 -1.967250000000000000e+03 2.088560608425817832e-24 -2.106765288166887959e-24 -1.967500000000000000e+03 9.711736937365509582e-24 -2.633561068940751225e-24 -1.967750000000000000e+03 1.173908799275606370e-24 -3.902338318535377161e-24 -1.968000000000000000e+03 -1.410401855039570528e-23 -5.278672922072296877e-26 -1.968250000000000000e+03 -8.571115273032629085e-25 -7.190920872384900871e-25 -1.968500000000000000e+03 1.322242832806503018e-23 -2.896362600851840227e-25 -1.968750000000000000e+03 3.182593212731436756e-24 1.416751265148441359e-23 -1.969000000000000000e+03 1.186969683425225122e-24 4.494241536001685158e-24 -1.969250000000000000e+03 -6.813585292340679888e-24 -2.003357957580991284e-24 -1.969500000000000000e+03 9.644918052815901686e-24 1.521918950660025974e-23 -1.969750000000000000e+03 1.702696705355250211e-23 -2.727676711936625450e-24 -1.970000000000000000e+03 8.391455109322387647e-24 8.187040713133482445e-25 -1.970250000000000000e+03 -5.513546372772987964e-24 -2.127159642124821325e-23 -1.970500000000000000e+03 -8.086356285698870059e-24 -1.274689216827501344e-24 -1.970750000000000000e+03 -4.658802700539317396e-24 -9.131415616499929452e-24 -1.971000000000000000e+03 -8.667412398041075816e-24 1.928690551887205012e-23 -1.971250000000000000e+03 9.883144890346922151e-24 -7.223829942897181020e-24 -1.971500000000000000e+03 -4.141287605015086813e-24 3.083355071529886721e-24 -1.971750000000000000e+03 -7.780363166340795045e-24 -5.271501927673789198e-24 -1.972000000000000000e+03 -8.241834320417519857e-24 1.987810282940320811e-24 -1.972250000000000000e+03 2.286273249203250740e-24 -1.819147734159018634e-24 -1.972500000000000000e+03 -2.947076362963686524e-24 -5.603882474198657373e-24 -1.972750000000000000e+03 -5.670669269444406180e-26 7.195169227955460765e-25 -1.973000000000000000e+03 3.231470622543952836e-23 -1.232107764891825545e-24 -1.973250000000000000e+03 -7.350943623879599668e-24 -7.320865934059057223e-24 -1.973500000000000000e+03 -7.990539788471758672e-25 9.278626140365793446e-24 -1.973750000000000000e+03 -1.404105881567806505e-23 -1.883880914585012554e-24 -1.974000000000000000e+03 -6.448898871130404595e-25 3.917342333041457902e-24 -1.974250000000000000e+03 1.175963879674999840e-24 -1.800944234322450709e-24 -1.974500000000000000e+03 -4.230706292682202484e-24 -1.817768490886787031e-24 -1.974750000000000000e+03 -5.198516973674665134e-24 -7.502951061042843691e-24 -1.975000000000000000e+03 -1.227082940343569618e-23 5.180668350489748856e-24 -1.975250000000000000e+03 3.066742624673831201e-24 -1.885849047649886376e-23 -1.975500000000000000e+03 -1.167822793821324907e-23 -5.771362109757268899e-24 -1.975750000000000000e+03 -5.795424041883050701e-24 1.689695222446501322e-23 -1.976000000000000000e+03 6.279150648623676843e-24 5.115277873542779631e-24 -1.976250000000000000e+03 1.920343798107226289e-24 -2.071166556857255288e-23 -1.976500000000000000e+03 2.114560897198992781e-24 -1.147640786697899722e-24 -1.976750000000000000e+03 1.668912695066600166e-24 2.739345371572321228e-24 -1.977000000000000000e+03 -8.848890204083997853e-24 1.487541027407760242e-24 -1.977250000000000000e+03 -2.151149212075667256e-24 7.271579285420058899e-24 -1.977500000000000000e+03 1.530301289466069428e-23 -6.598705710500611431e-24 -1.977750000000000000e+03 3.056767920913431120e-24 9.758836978005953057e-24 -1.978000000000000000e+03 1.272649811160920805e-24 -5.067864984096387788e-24 -1.978250000000000000e+03 6.063416984177774964e-24 6.378839734711344507e-24 -1.978500000000000000e+03 -2.838785194707681090e-24 -7.849718289846743041e-24 -1.978750000000000000e+03 -5.911785306574429825e-25 -2.405890459122536074e-26 -1.979000000000000000e+03 1.173808512829916646e-23 -6.065894501620718536e-24 -1.979250000000000000e+03 -4.281506615157030725e-24 -3.078809145741618039e-24 -1.979500000000000000e+03 -1.609924190614508039e-23 4.158547506392011067e-24 -1.979750000000000000e+03 5.453889385077684983e-24 4.699832102919811145e-24 -1.980000000000000000e+03 2.673590016629716769e-24 -1.915457417856460974e-23 -1.980250000000000000e+03 -9.233827553294088904e-25 -1.398749411212171560e-23 -1.980500000000000000e+03 1.889078299003151206e-23 3.522187143060693114e-24 -1.980750000000000000e+03 1.759303407183438425e-23 1.147496815232717337e-23 -1.981000000000000000e+03 2.970076565057715191e-25 1.050116409099842417e-23 -1.981250000000000000e+03 -6.046551063647327832e-24 1.704123685795165701e-24 -1.981500000000000000e+03 1.496746395211017119e-23 6.695164761736844605e-24 -1.981750000000000000e+03 5.510659843636101440e-24 -5.038562910879992867e-24 -1.982000000000000000e+03 1.206843954393923422e-24 7.122062158514618765e-25 -1.982250000000000000e+03 -4.486112675850159351e-24 4.442492763666844083e-24 -1.982500000000000000e+03 -8.398028247681906824e-24 -5.990403006071228387e-24 -1.982750000000000000e+03 4.380996450234198620e-24 3.934205474800733151e-24 -1.983000000000000000e+03 1.311900425024706947e-23 7.605485047615897576e-24 -1.983250000000000000e+03 -1.012330321680938703e-23 1.005119741621597487e-23 -1.983500000000000000e+03 -1.983649525766396469e-24 6.946987679524196504e-24 -1.983750000000000000e+03 1.307714020594450990e-23 -1.192661252053241510e-23 -1.984000000000000000e+03 4.238105422147019637e-25 -3.575387255793464638e-24 -1.984250000000000000e+03 7.111492818708749165e-24 -3.355961233590823857e-24 -1.984500000000000000e+03 6.040765899816037144e-24 -1.387702639669343609e-24 -1.984750000000000000e+03 7.165703468942453391e-24 8.259170980563849634e-24 -1.985000000000000000e+03 5.642287699413252098e-24 2.073786071189928387e-24 -1.985250000000000000e+03 -3.163662925219727304e-25 -4.323612732450379852e-24 -1.985500000000000000e+03 1.106392552395012567e-23 -6.459936536268419863e-24 -1.985750000000000000e+03 -2.752281101151380914e-24 1.137757377988478599e-23 -1.986000000000000000e+03 -6.490324530204724155e-24 7.456650424667130166e-24 -1.986250000000000000e+03 -4.633270329483948022e-24 -7.176179518868430756e-24 -1.986500000000000000e+03 -4.226720566687742955e-24 -3.134038548817770958e-24 -1.986750000000000000e+03 -1.175928932977806629e-23 -1.100710100461078349e-23 -1.987000000000000000e+03 1.926940900612001616e-24 1.106426138401141428e-23 -1.987250000000000000e+03 7.186593415781640011e-24 -4.062295973005509455e-24 -1.987500000000000000e+03 1.491040212982130309e-24 -1.779267082334463394e-23 -1.987750000000000000e+03 1.109421215256855921e-23 5.822293173297192753e-24 -1.988000000000000000e+03 -1.717853546590177169e-24 -1.492223253037361397e-24 -1.988250000000000000e+03 7.090890582273915489e-24 -1.160733718283842023e-23 -1.988500000000000000e+03 -4.926312603178461474e-24 -1.473364668925879649e-23 -1.988750000000000000e+03 1.630074434949608157e-23 -6.503984367392664509e-24 -1.989000000000000000e+03 -1.504139830966880826e-24 -1.516474380853816897e-24 -1.989250000000000000e+03 -1.217012080023285764e-23 3.491879349897819116e-24 -1.989500000000000000e+03 -8.655793641038456586e-24 1.241151098524309410e-23 -1.989750000000000000e+03 2.155979272350267720e-25 7.748651492154962236e-25 -1.990000000000000000e+03 9.621069784608091551e-24 -7.118775670867023005e-25 -1.990250000000000000e+03 4.782134157775976163e-24 6.968801640341553947e-24 -1.990500000000000000e+03 1.224205351675874983e-23 -1.142274129235470487e-23 -1.990750000000000000e+03 7.412211578238645074e-24 7.896012424645680729e-24 -1.991000000000000000e+03 -1.154468985840342535e-23 -4.394269814375101674e-24 -1.991250000000000000e+03 1.020784919327159771e-23 2.376594882294204340e-24 -1.991500000000000000e+03 1.256130118731147998e-23 -3.690021145321065789e-24 -1.991750000000000000e+03 1.651728163920591179e-23 1.820275234170588266e-23 -1.992000000000000000e+03 -6.257332938345189384e-24 1.944763472651018201e-24 -1.992250000000000000e+03 -2.299257432899436942e-25 4.920012279034597076e-25 -1.992500000000000000e+03 3.685178462513402499e-24 -8.571191776924810776e-24 -1.992750000000000000e+03 -2.131539848499682003e-24 -1.437938422890974604e-23 -1.993000000000000000e+03 3.199447185943312001e-24 1.204672646023149417e-23 -1.993250000000000000e+03 -3.852723209271509113e-24 2.418758451910370027e-24 -1.993500000000000000e+03 -4.773562305915722547e-24 1.083723070994135471e-23 -1.993750000000000000e+03 7.434396864504071818e-24 -9.947194862657003353e-24 -1.994000000000000000e+03 1.917038201108624035e-24 1.031616561796677494e-24 -1.994250000000000000e+03 -4.325685144052379194e-24 -4.497277838518794587e-24 -1.994500000000000000e+03 4.046432014496276801e-24 5.368562609256007405e-24 -1.994750000000000000e+03 -6.190098573490213216e-24 1.596147455175591483e-23 -1.995000000000000000e+03 -4.240039865637472384e-24 6.487168035283892546e-24 -1.995250000000000000e+03 -1.786258362308441568e-24 1.115153153710650020e-23 -1.995500000000000000e+03 4.565154379508920807e-24 -5.791756646363655628e-24 -1.995750000000000000e+03 -1.396695294308403515e-23 2.074603024841340964e-24 -1.996000000000000000e+03 7.143330110287147657e-24 -5.894945227561876362e-24 -1.996250000000000000e+03 1.337254332011154378e-23 -5.740563439159079366e-24 -1.996500000000000000e+03 3.784752593151380087e-25 1.501013578663457281e-23 -1.996750000000000000e+03 -4.149966291673558012e-24 2.811374299020649289e-24 -1.997000000000000000e+03 -6.449057644971419336e-25 2.064064677047919515e-23 -1.997250000000000000e+03 1.211632733107428383e-23 -1.458121025604371938e-23 -1.997500000000000000e+03 -1.214594637684593626e-23 -9.803063557487907954e-25 -1.997750000000000000e+03 -3.232067475188564875e-25 1.003929963717011916e-24 -1.998000000000000000e+03 -2.151142295619241461e-23 1.058647584416486543e-23 -1.998250000000000000e+03 1.205623265734900915e-23 1.313004050945742416e-23 -1.998500000000000000e+03 1.665131832518249120e-23 1.141987327019287148e-24 -1.998750000000000000e+03 3.495873893752557891e-24 -2.770170298218319142e-23 -1.999000000000000000e+03 2.369277738542071557e-24 -5.540512210522647089e-24 -1.999250000000000000e+03 -5.039580694927684846e-24 3.617074094485346006e-24 -1.999500000000000000e+03 2.751598218051627057e-23 3.279083239301922481e-24 -1.999750000000000000e+03 9.968729233756729012e-24 6.111076427566033982e-24 -2.000000000000000000e+03 -8.458408752153470511e-24 -1.266513605814614440e-25 -2.000250000000000000e+03 -5.416879271911924541e-24 9.236987124992597383e-24 -2.000500000000000000e+03 -1.776360946367638485e-24 -1.565917850120618126e-23 -2.000750000000000000e+03 1.391479404295790141e-24 9.185120835988333085e-24 -2.001000000000000000e+03 3.868667842089024771e-24 7.195770025914478651e-24 -2.001250000000000000e+03 -9.464960055314957980e-26 5.169993075359700012e-24 -2.001500000000000000e+03 5.911857969938195695e-24 1.123617174869275552e-23 -2.001750000000000000e+03 6.680457403219903625e-24 -4.946258222597428991e-24 -2.002000000000000000e+03 1.737546088100672694e-24 3.655415394163056964e-24 -2.002250000000000000e+03 -1.046452956913830709e-23 4.425293379627963485e-24 -2.002500000000000000e+03 -2.247935270577554174e-24 -1.400809476082385866e-23 -2.002750000000000000e+03 -1.739538071974770964e-24 -5.587240680662314728e-24 -2.003000000000000000e+03 8.591197549258456813e-24 -2.146749011822125580e-23 -2.003250000000000000e+03 8.157291952619953228e-24 1.091719662842290573e-23 -2.003500000000000000e+03 5.209278188667758056e-24 -2.061395221430072510e-24 -2.003750000000000000e+03 7.943026583639689113e-24 -1.058628883939300405e-23 -2.004000000000000000e+03 -3.971791206984392952e-24 8.988806399157582108e-24 -2.004250000000000000e+03 -8.672402645076406438e-24 -8.918113855602436445e-24 -2.004500000000000000e+03 6.203192466037885906e-24 -1.348458295701705827e-23 -2.004750000000000000e+03 2.110992965521030355e-24 -1.616876053893155754e-23 -2.005000000000000000e+03 5.613402068597602922e-24 -2.124198705575147576e-23 -2.005250000000000000e+03 -4.218121169752065469e-24 7.869133464702040476e-24 -2.005500000000000000e+03 -7.395413153645503845e-24 -1.590246474230378296e-23 -2.005750000000000000e+03 -1.774667672969236026e-23 6.039704117874011931e-24 -2.006000000000000000e+03 5.894514885381444380e-25 6.281381596743998141e-24 -2.006250000000000000e+03 -1.377611211164921041e-23 7.873265386418457760e-24 -2.006500000000000000e+03 4.811356099111881710e-24 -8.574247942042716004e-24 -2.006750000000000000e+03 -6.986469486570137243e-24 3.904654102263976414e-24 -2.007000000000000000e+03 -1.409840456641487841e-23 -6.143331745301286791e-24 -2.007250000000000000e+03 2.662971827471681098e-24 -3.532165624468271938e-24 -2.007500000000000000e+03 3.905275559781858566e-24 -1.722130062147061381e-23 -2.007750000000000000e+03 1.169300302755487705e-23 1.625624524173204507e-24 -2.008000000000000000e+03 4.144128387628238926e-24 1.612669496536341070e-24 -2.008250000000000000e+03 7.438099597594700178e-24 8.756663841793971941e-24 -2.008500000000000000e+03 5.663548951964616881e-24 -9.010750515057855704e-24 -2.008750000000000000e+03 5.031325492026520652e-24 -1.789179757798060987e-23 -2.009000000000000000e+03 -2.461641701981817061e-24 4.228433813105581002e-24 -2.009250000000000000e+03 6.762890425037486613e-25 1.029407249080475248e-25 -2.009500000000000000e+03 6.358063341767888335e-24 9.399323338329974561e-26 -2.009750000000000000e+03 6.877816021444380933e-24 9.682102922541472547e-24 -2.010000000000000000e+03 8.602884329136715902e-24 1.327925873533670230e-23 -2.010250000000000000e+03 2.626829858012303955e-24 3.425080705386572803e-24 -2.010500000000000000e+03 -9.583648917311012207e-24 5.240115436088234269e-24 -2.010750000000000000e+03 -1.833380900238957757e-23 -5.257136864529296395e-24 -2.011000000000000000e+03 4.562221767440571680e-24 -8.884760940627612220e-24 -2.011250000000000000e+03 1.773623715056650779e-24 -1.101160350274295962e-23 -2.011500000000000000e+03 9.431171488969585395e-24 -8.821472834116202374e-24 -2.011750000000000000e+03 -1.379308894247894663e-23 4.027427766216421750e-24 -2.012000000000000000e+03 6.765933838381814023e-24 -1.200522809980206315e-23 -2.012250000000000000e+03 -1.770721374260610314e-23 -7.378942147021179632e-24 -2.012500000000000000e+03 -1.745657375390460592e-24 5.739353366086595800e-24 -2.012750000000000000e+03 -6.322041157006345227e-25 -2.125910591820640483e-24 -2.013000000000000000e+03 -1.338900465722897502e-23 5.264256838047311262e-24 -2.013250000000000000e+03 -8.219720801041714370e-25 -7.011519270276846249e-24 -2.013500000000000000e+03 -7.211347623166896931e-24 1.066081883717031455e-23 -2.013750000000000000e+03 2.905283562539513861e-24 2.826038521758625456e-24 -2.014000000000000000e+03 -1.054369438359510832e-24 1.787292067636927120e-23 -2.014250000000000000e+03 6.122914506280615707e-24 -7.348583786971965919e-24 -2.014500000000000000e+03 4.211593134026235113e-24 5.403498099888703203e-24 -2.014750000000000000e+03 2.497939525724144963e-24 -1.046979709950444404e-23 -2.015000000000000000e+03 -5.545479968463780015e-24 4.987349880233152023e-25 -2.015250000000000000e+03 -2.932186450248550246e-25 7.525805784349030842e-24 -2.015500000000000000e+03 -7.554556515418742946e-24 -1.037914537725937965e-23 -2.015750000000000000e+03 2.355391043545384869e-23 1.032134747101535117e-23 -2.016000000000000000e+03 1.274399991204110992e-25 -1.342645876341150366e-23 -2.016250000000000000e+03 -1.188641478961781677e-23 4.899090854557432594e-25 -2.016500000000000000e+03 2.311396093897315069e-23 -7.533207897730931879e-25 -2.016750000000000000e+03 -1.077568878027536470e-23 5.226385777075322537e-24 -2.017000000000000000e+03 6.154715291686548066e-24 -4.204953009447276314e-24 -2.017250000000000000e+03 -1.509265653412039307e-23 -7.900984455973850009e-24 -2.017500000000000000e+03 -3.672495361327282281e-24 -1.266419791504997950e-23 -2.017750000000000000e+03 1.844030972517567218e-23 -1.894443113238826105e-23 -2.018000000000000000e+03 4.544722165298398984e-24 -1.382838921755214861e-24 -2.018250000000000000e+03 -1.632740843500804656e-24 2.817686908772730447e-24 -2.018500000000000000e+03 -5.165115572972959758e-24 -3.807924326170317248e-24 -2.018750000000000000e+03 -2.495458392464526820e-25 1.163611091425968799e-24 -2.019000000000000000e+03 -9.950581678517988788e-24 1.392057905921111795e-23 -2.019250000000000000e+03 -1.006353858262031492e-23 6.832361417980672187e-25 -2.019500000000000000e+03 7.044810666601893358e-25 1.112842639275251806e-23 -2.019750000000000000e+03 1.157840803727306043e-23 -8.043786748892190291e-24 -2.020000000000000000e+03 8.898145333782085283e-24 -9.238941247414718424e-25 -2.020250000000000000e+03 1.685925859051856644e-25 -3.225347769643365478e-23 -2.020500000000000000e+03 -8.493438181060797585e-24 7.021388997789170788e-25 -2.020750000000000000e+03 8.632126799256431081e-24 2.254130490136804224e-24 -2.021000000000000000e+03 -1.067186600403851112e-23 1.021218581747196176e-23 -2.021250000000000000e+03 2.924444541015167644e-24 8.479303252084151466e-24 -2.021500000000000000e+03 1.508630355143501555e-23 -5.222762067830640322e-24 -2.021750000000000000e+03 -5.924361061274079590e-24 1.885613316657578928e-23 -2.022000000000000000e+03 2.141979941181165363e-24 -7.025078865987048131e-25 -2.022250000000000000e+03 2.823319850788103004e-24 -1.348153099582532308e-24 -2.022500000000000000e+03 -2.186112648504360277e-23 -4.314463126891224088e-24 -2.022750000000000000e+03 7.273513990842511661e-24 1.431577737715542092e-23 -2.023000000000000000e+03 -4.950041799075741296e-24 2.296182388317632126e-23 -2.023250000000000000e+03 -2.518109395822336198e-24 -5.710301459043847422e-24 -2.023500000000000000e+03 -9.933662861111039142e-24 7.862673057537274480e-25 -2.023750000000000000e+03 -8.087021045260268540e-24 7.283917867965304352e-24 -2.024000000000000000e+03 -7.762271301419293337e-24 -2.246006672977453277e-23 -2.024250000000000000e+03 -7.798481903654750532e-24 -1.895585615208967356e-23 -2.024500000000000000e+03 8.745315027879343638e-24 -6.077254249936431643e-24 -2.024750000000000000e+03 -7.637301843175623081e-24 2.643992851884265465e-24 -2.025000000000000000e+03 -5.539939022137735663e-24 1.235567001252831081e-23 -2.025250000000000000e+03 -8.052248324056167227e-24 -4.344055185998764749e-24 -2.025500000000000000e+03 -2.880582714625645135e-24 1.734666840055510504e-23 -2.025750000000000000e+03 -2.624039562558158794e-24 1.198249867609613498e-24 -2.026000000000000000e+03 -2.249015446502302944e-23 -6.343273875297487804e-24 -2.026250000000000000e+03 -1.141717033806732492e-23 -1.715469468829500875e-24 -2.026500000000000000e+03 -7.295348988717301066e-24 1.650391878195085018e-23 -2.026750000000000000e+03 5.959790973706273603e-25 -8.277642934607591772e-25 -2.027000000000000000e+03 -8.872534852642135989e-24 1.891559214852924418e-23 -2.027250000000000000e+03 -3.746103395059201497e-24 1.427805154796120157e-23 -2.027500000000000000e+03 1.056196156897856512e-23 -8.091626215041331841e-24 -2.027750000000000000e+03 -7.173788287007412288e-25 2.587080854845904233e-24 -2.028000000000000000e+03 -4.387963827838636324e-24 -3.356104788115914705e-25 -2.028250000000000000e+03 4.732198605713499307e-25 2.016928723108343383e-23 -2.028500000000000000e+03 -6.477642168754263846e-24 9.429569835369062864e-25 -2.028750000000000000e+03 2.952182437891557219e-24 -6.735392519356285017e-24 -2.029000000000000000e+03 4.869372149245988682e-24 1.680503846836442208e-23 -2.029250000000000000e+03 6.992300538221135697e-24 -9.397741351574831590e-24 -2.029500000000000000e+03 2.023324560219302955e-23 1.504333140600873067e-23 -2.029750000000000000e+03 -9.170645162124325700e-24 -1.056742851125849444e-23 -2.030000000000000000e+03 8.500889410172158226e-24 1.673110565517948413e-24 -2.030250000000000000e+03 1.140624464698439025e-23 -4.068569785215781924e-24 -2.030500000000000000e+03 2.405195657969188026e-24 1.134548762914492329e-23 -2.030750000000000000e+03 1.480530194622773179e-24 -5.869892414514799745e-24 -2.031000000000000000e+03 -2.137051742309554037e-24 2.485039393564696618e-24 -2.031250000000000000e+03 6.311408510126769673e-24 1.550002305253548265e-24 -2.031500000000000000e+03 -1.830862329168942183e-23 -6.135920137071343676e-24 -2.031750000000000000e+03 9.580205701800702718e-24 7.068594607176152771e-24 -2.032000000000000000e+03 6.942703188182037895e-24 -1.701736547479356773e-23 -2.032250000000000000e+03 5.158302593091998443e-24 1.386566807129996843e-23 -2.032500000000000000e+03 4.905051655172824590e-25 4.257936517189534548e-24 -2.032750000000000000e+03 -1.104524656585755196e-23 -1.629599367644942736e-23 -2.033000000000000000e+03 2.987868497223746020e-25 1.250954305505878577e-24 -2.033250000000000000e+03 -4.090891399324548779e-24 -5.761911423465702810e-25 -2.033500000000000000e+03 6.724392801414251329e-25 1.190703648131262588e-23 -2.033750000000000000e+03 1.171365378741430486e-23 1.066394258326818823e-23 -2.034000000000000000e+03 3.895239611533725545e-24 -1.465910601332581669e-23 -2.034250000000000000e+03 -6.958896008027242302e-24 2.534428394028031735e-24 -2.034500000000000000e+03 1.819317626083465697e-23 6.543688108379624873e-24 -2.034750000000000000e+03 -1.309304775149637998e-23 -2.420939543948046609e-24 -2.035000000000000000e+03 -4.701837172204696464e-24 3.679061702985398216e-24 -2.035250000000000000e+03 3.296113582052441993e-24 -9.168489512721146578e-24 -2.035500000000000000e+03 3.232439742443845989e-24 -1.746926723553489655e-23 -2.035750000000000000e+03 -3.995777607940518315e-24 4.292466761442007860e-24 -2.036000000000000000e+03 -9.200140218563886744e-24 1.613133012767512795e-23 -2.036250000000000000e+03 6.890807732469440144e-24 1.221587301587492687e-23 -2.036500000000000000e+03 1.055504821552592771e-23 -1.153610957280554607e-23 -2.036750000000000000e+03 3.881075151180285121e-24 1.484849138846241310e-24 -2.037000000000000000e+03 -1.538037177171108847e-23 -7.502756979940275770e-25 -2.037250000000000000e+03 2.169687629379847760e-24 -4.510237692186076665e-24 -2.037500000000000000e+03 9.760637423015201350e-24 -1.964702681106143700e-25 -2.037750000000000000e+03 2.229693010033072197e-23 -4.390470729078460042e-24 -2.038000000000000000e+03 -1.748393080311821280e-24 4.122647187351574762e-24 -2.038250000000000000e+03 8.299052057323304700e-24 -2.817007974318721763e-24 -2.038500000000000000e+03 2.685162622673564680e-24 1.648155902235633144e-23 -2.038750000000000000e+03 5.518034539290275036e-24 -6.240842180959038122e-24 -2.039000000000000000e+03 9.870058636741408060e-25 1.093082569998789344e-24 -2.039250000000000000e+03 -7.707379204436601008e-25 -7.275267003766597721e-24 -2.039500000000000000e+03 1.473956653868438472e-25 6.285889221559053956e-24 -2.039750000000000000e+03 -7.604739310586820496e-26 -2.800638204401256446e-26 -2.040000000000000000e+03 -1.289245091163379538e-24 1.164256049976177056e-23 -2.040250000000000000e+03 -1.276623939983740475e-23 -1.552373763214657417e-23 -2.040500000000000000e+03 6.672035298455379154e-24 -8.470363890833470617e-24 -2.040750000000000000e+03 -1.716672340901713555e-24 6.815290780974094262e-24 -2.041000000000000000e+03 2.730763570267249886e-24 -8.733304310459366112e-24 -2.041250000000000000e+03 9.091152682839807198e-25 7.891390625895205344e-24 -2.041500000000000000e+03 9.830042252011977584e-24 -3.590173517009433770e-24 -2.041750000000000000e+03 7.598937981958031381e-24 7.142607505085879235e-24 -2.042000000000000000e+03 4.159883690836030144e-24 7.306984791432386930e-24 -2.042250000000000000e+03 -5.715871844140906104e-24 -6.423055670916236899e-24 -2.042500000000000000e+03 -9.900437407532726472e-24 4.134362010175686721e-24 -2.042750000000000000e+03 1.724403147180240645e-23 -3.958904438505454701e-24 -2.043000000000000000e+03 -1.667056678746277610e-24 -9.015686062419580187e-24 -2.043250000000000000e+03 -5.369794268906531927e-24 -4.210619081785464700e-24 -2.043500000000000000e+03 6.804452170293798808e-24 -8.256364156241919924e-24 -2.043750000000000000e+03 -2.154475575847719137e-24 9.390048722495694819e-24 -2.044000000000000000e+03 -4.020558092644430116e-25 2.565654653081866784e-24 -2.044250000000000000e+03 3.143869971212315097e-24 -1.441215340552196756e-23 -2.044500000000000000e+03 -1.896523713789429409e-24 -9.960422138259858110e-24 -2.044750000000000000e+03 1.115547632845216631e-23 7.975444676416304097e-25 -2.045000000000000000e+03 -4.162507954696196541e-24 1.918283593569480926e-24 -2.045250000000000000e+03 1.210635896153547560e-24 -7.751386516047328800e-24 -2.045500000000000000e+03 3.774679509168241627e-24 -4.149406415566021518e-24 -2.045750000000000000e+03 -7.205669471338661225e-24 4.530468185768136719e-24 -2.046000000000000000e+03 -4.328688706959696152e-24 -4.651868036493669050e-24 -2.046250000000000000e+03 -8.189735201903948637e-24 1.071295831723827743e-24 -2.046500000000000000e+03 -9.827158832932423963e-24 2.999278796543739850e-24 -2.046750000000000000e+03 8.475439464783488963e-24 -4.473583637880261942e-24 -2.047000000000000000e+03 3.349782409348590914e-24 1.071233197404333304e-23 -2.047250000000000000e+03 -7.764078777780014966e-24 5.045918821862214933e-24 -2.047500000000000000e+03 3.488115304960258948e-24 1.496138054577348034e-23 -2.047750000000000000e+03 -2.202088051069279957e-24 -2.824063698020693915e-24 -2.048000000000000000e+03 0.000000000000000000e+00 0.000000000000000000e+00 diff --git a/test/utils_py3_test.py b/test/utils_py3_test.py deleted file mode 100644 index fa0717bef6214576f0ec99c8652fda33acc7cc41..0000000000000000000000000000000000000000 --- a/test/utils_py3_test.py +++ /dev/null @@ -1,64 +0,0 @@ -from __future__ import absolute_import, division - -import unittest - -from bilby.core import utils - - -class TestInferParameters(unittest.TestCase): - def setUp(self): - def source_function1(freqs, a, b: int): - return None - - def source_function2(freqs, a, b, *args, **kwargs): - return None - - def source_function3(freqs, a, b: int, *args, **kwargs): - return None - - class TestClass: - def test_method(self, a, b: int, *args, **kwargs): - pass - - class TestClass2: - def test_method(self, freqs, a, b: int, *args, **kwargs): - pass - - self.source1 = source_function1 - self.source2 = source_function2 - self.source3 = source_function3 - test_obj = TestClass() - self.source4 = test_obj.test_method - test_obj2 = TestClass() - self.source5 = test_obj2.test_method - - def tearDown(self): - del self.source1 - del self.source2 - del self.source3 - del self.source4 - - def test_type_hinting(self): - expected = ["a", "b"] - actual = utils.infer_parameters_from_function(self.source1) - self.assertListEqual(expected, actual) - - def test_args_kwargs_handling(self): - expected = ["a", "b"] - actual = utils.infer_parameters_from_function(self.source2) - self.assertListEqual(expected, actual) - - def test_both(self): - expected = ["a", "b"] - actual = utils.infer_parameters_from_function(self.source3) - self.assertListEqual(expected, actual) - - def test_self_handling(self): - expected = ["a", "b"] - actual = utils.infer_args_from_method(self.source4) - self.assertListEqual(expected, actual) - - def test_self_handling_method_as_function(self): - expected = ["a", "b"] - actual = utils.infer_args_from_method(self.source5) - self.assertListEqual(expected, actual)