From 8805c6526bec8355034e018fc531de5652bc65e8 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 22 Dec 2022 16:12:43 +0100 Subject: [PATCH 01/62] tests for orbits --- source/MulensModel/tests/test_Orbit.py | 155 +++++++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 source/MulensModel/tests/test_Orbit.py diff --git a/source/MulensModel/tests/test_Orbit.py b/source/MulensModel/tests/test_Orbit.py new file mode 100644 index 00000000..3ea06a9d --- /dev/null +++ b/source/MulensModel/tests/test_Orbit.py @@ -0,0 +1,155 @@ +import numpy as np +from numpy.testing import assert_almost_equal +import unittest + +from MulensModel.orbits.orbit import Orbit, OrbitCircular, OrbitEccentric + + +def test_1_circular(): + orbit = OrbitCircular(period=365., semimajor_axis=1., Omega_node=0., + inclination=0., perihelion_epoch=0.) + position = orbit.get_orbital_plane_position(time=0.) + assert_almost_equal(position, [1., 0.]) + + +def test_2_circular(): + orbit = OrbitCircular(200., 1.234, 0., 0., 0.) + position = orbit.get_orbital_plane_position(time=100.) + assert_almost_equal(position, [-1.234, 0.]) + + +def test_3_circular(): + orbit = OrbitCircular(200., 1.234, 180., 0., 0.) + position = orbit.get_reference_plane_position(time=100.) + assert_almost_equal(position, [1.234, 0.]) + + +def test_4_circular(): + orbit = OrbitCircular(200., 2.345, 0., 60., 123.) + position = orbit.get_reference_plane_position(time=123.+200/4.) + assert_almost_equal(position, [0, 2.345/2.]) + + +def test_5_time_vector_circular(): + n_repeat = 10 + orbit = OrbitCircular(200., 2.345, 0., 60., 123.) + times = (np.arange(n_repeat) + 0.25 - 5.) * 200. + 123. + positions = orbit.get_reference_plane_position(times) + expected = np.repeat([[0.], [2.345/2.]], n_repeat, axis=1) + assert_almost_equal(positions, expected) + + +def test_6_eccentric(): + orbit = OrbitEccentric( + period=400., semimajor_axis=5., Omega_node=0., inclination=0., + eccentricity=0.6, omega_periapsis=0., perihelion_epoch=100.) + position = orbit.get_orbital_plane_position(300.) + assert_almost_equal(position, [-8., 0.]) + + +def test_7_time_vector_eccentric(): + orbit = OrbitEccentric(400., 10., 0., 0., 0.999, 0., -100.) + times = np.array([-500, -300]) + positions = orbit.get_orbital_plane_position(times) + expected = np.array([[.01, -19.99], [0., 0.]]) + assert_almost_equal(positions, expected) + + +class TestForWrongValues(unittest.TestCase): + def test_8_negative_period(self): + with self.assertRaises(ValueError): + OrbitCircular(-365., 1., 0., 0., 123.) + + def test_9_negative_semimajor_axis(self): + with self.assertRaises(ValueError): + OrbitCircular(365., -1., 0., 0., 123.) + + +def test_10_true_anomaly_large_eccentricity(): + orbit = OrbitEccentric(400., 100., 0., 0., 0.9, 0., 0.) + times = np.array([100., 500., 300., 150., 5.]) + true_anomalies = orbit.get_true_anomaly_deg(times) + value = 167.70030551721663 # Value expected for input of 100 d. + expected = np.array([ + value, value, 360.-value, 174.41306950496173, 101.28599627247006]) + assert_almost_equal(true_anomalies, expected) + + +def test_11_true_anomaly_huge_eccentricity(): + orbit = OrbitEccentric(400., 100., 0., 0., 0.999, 0., 0.) + true_anomaly = orbit.get_true_anomaly_deg(5.) + assert_almost_equal(true_anomaly, 173.80472546078212, 3) + + +def test_12_Orbit_class_circular(): + orbit = Orbit(period=365., semimajor_axis=1., Omega_node=0., + inclination=0., perihelion_epoch=0.) + position = orbit.get_orbital_plane_position(time=0.) + assert_almost_equal(position, [1., 0.]) + + +def test_13_Orbit_class_eccentric(): + orbit = Orbit( + 400., 100., 0., 0., 0.9, omega_periapsis=0., perihelion_epoch=0.) + true_anomaly = orbit.get_true_anomaly_deg(5.) + assert_almost_equal(true_anomaly, 101.28599627247006) + + +class Test_Orbit_fail(unittest.TestCase): + def test_14_Orbit_not_enough_params(self): + with self.assertRaises(RuntimeError): + Orbit(10., 10., 0., 0.) + + +def test_15_OrbitCircular_based_on_argument_of_latitude(): + orbit = OrbitCircular( + period=365, semimajor_axis=1.5, Omega_node=12.34, inclination=-60., + argument_of_latitude_reference=90, epoch_reference=2456789.01234) + position = orbit.get_orbital_plane_position(time=2456789.01234) + assert_almost_equal(position, [0., 1.5]) + + +class Test_OrbitCircular_fail(unittest.TestCase): + def test_16_added_epoch(self): + with self.assertRaises(RuntimeError): + OrbitCircular( + period=123., semimajor_axis=5., Omega_node=90., inclination=0., + perihelion_epoch=2450000., epoch_reference=2450000.) + + def test_17_added_u(self): + with self.assertRaises(RuntimeError): + OrbitCircular( + period=123., semimajor_axis=5., Omega_node=90., inclination=0., + perihelion_epoch=2450000., argument_of_latitude_reference=90.) + + +def test_18_OrbitEccentric_based_on_argument_of_latitude(): + orbit = OrbitEccentric( + period=365, semimajor_axis=1.5, Omega_node=12.34, inclination=-60., + eccentricity=0.5, omega_periapsis=0., + argument_of_latitude_reference=0, epoch_reference=2456789.01234) + position = orbit.get_orbital_plane_position(2456789.01234) + assert_almost_equal(position, [0.75, 0.]) + + +def test_19_OrbitEccentric_based_on_argument_of_latitude(): + orbit = OrbitEccentric( + period=360., semimajor_axis=1.5, Omega_node=12.34, inclination=-60., + eccentricity=0.5, + omega_periapsis=0., + argument_of_latitude_reference=118.81500092699673, + # Independend code says the above value is nu for e=0.5 and t=t_0+P/6. + epoch_reference=2456789.01234) + position = orbit.get_orbital_plane_position(2456789.01234-60.) + assert_almost_equal(position, [0.75, 0.]) + + +def test_20_OrbitEccentric_based_on_argument_of_latitude(): + orbit = OrbitEccentric( + period=360., semimajor_axis=1.5, Omega_node=12.34, inclination=-60., + eccentricity=0.5, + omega_periapsis=100., + argument_of_latitude_reference=118.81500092699673+100, + epoch_reference=2456789.01234+60) + position = orbit.get_orbital_plane_position(2456789.01234-180.) + assert_almost_equal(position, [-2.25, 0.]) From 604d1426004c378d55f50f0d7e8dd1d4fcc2db55 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 22 Dec 2022 16:13:08 +0100 Subject: [PATCH 02/62] adding orbit.py --- source/MulensModel/orbits/__init__.py | 0 source/MulensModel/orbits/orbit.py | 365 ++++++++++++++++++++++++++ 2 files changed, 365 insertions(+) create mode 100644 source/MulensModel/orbits/__init__.py create mode 100644 source/MulensModel/orbits/orbit.py diff --git a/source/MulensModel/orbits/__init__.py b/source/MulensModel/orbits/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/source/MulensModel/orbits/orbit.py b/source/MulensModel/orbits/orbit.py new file mode 100644 index 00000000..d8a14ad4 --- /dev/null +++ b/source/MulensModel/orbits/orbit.py @@ -0,0 +1,365 @@ +import numpy as np +import math + +""" +Classes that can be accessed directly: +- Orbit +- OrbitCircular +- OrbitEccentric +""" + + +class Orbit(object): + """ + Class that combines :py:class:`OrbitCircular` and + :py:class:`OrbitEccentric`. + """ + def __new__(self, *args, **kwargs): + for Class_ in [OrbitCircular, OrbitEccentric]: + try: + new = Class_(*args, **kwargs) + except Exception: + pass + else: + return new + raise RuntimeError("Orbit.__new__() failed") + + +class _OrbitAbstract(object): + """ + Abstract class for orbits. + """ + def _check_circular_orbit_parameters(self, semimajor_axis): + """ + Check if period and semimajor axis make physical sense. + """ + if self._period <= 0.: + raise ValueError('Orbital period has to be positive.\n' + 'Provided value: ' + str(self._period)) + if semimajor_axis <= 0.: + raise ValueError('Semimajor axis has to be positive.\n' + 'Provided value: ' + str(semimajor_axis)) + + def _check_and_get_for_perihelion_epoch( + self, perihelion_epoch, argument_of_latitude_reference, + epoch_reference): + """ + Check if arguments properly define epoch of + the perihelion/ascending node passage + """ + if perihelion_epoch is not None: + if argument_of_latitude_reference is not None: + raise RuntimeError( + "perihelion_epoch and argument_of_latitude_reference " + "cannot be both set") + if epoch_reference is not None: + raise RuntimeError( + "perihelion_epoch and epoch_reference cannot be both set") + return perihelion_epoch + + if argument_of_latitude_reference is None or epoch_reference is None: + raise RuntimeError("Not enough arguments to define the epoch of " + "perihelion/ascending node") + + u_reference = argument_of_latitude_reference * np.pi / 180. + return self._get_perihelion_epoch(u_reference, epoch_reference) + + def _set_circular_orbit_parameters(self, period, semimajor_axis, + Omega_node, inclination, + perihelion_epoch): + """ + Set parameters that are used for circular orbits. + """ + self._semimajor_axis = semimajor_axis + Omega = math.pi * Omega_node / 180. + self._rotation_matrix = np.array([[math.cos(Omega), -math.sin(Omega)], + [math.sin(Omega), math.cos(Omega)]]) + self._cos_inclination = math.cos(math.pi * inclination / 180.) + self._perihelion_epoch = perihelion_epoch + + def get_reference_plane_position(self, time): + """ + Calculate positions for given epochs in the reference plane. + + Parameters : + time: *float* or *np.ndarray* + Epochs for which positions are requested. + + Returns : + positions: *np.ndarray* + Positions of the body at given epochs. + """ + projected_position = self._get_projected_position(time) + position = np.matmul(self._rotation_matrix, projected_position) + return position + + def _get_projected_position(self, time): + """ + Get position projected on reference plane, + but not rotated to the reference coordinate system + """ + position = self.get_orbital_plane_position(time) + position[1, ] *= self._cos_inclination + return position + + def _get_eccentric_anomaly(self, time): + """ + Calculate eccentric anomaly (typically indicated by E). + """ + mean_anomaly = self._get_mean_anomaly(time) + anomaly = self._get_normalized_anomaly(mean_anomaly) + eccentric_anomaly = ( + self._get_eccentric_anomaly_from_normalized_mean_anomaly(anomaly)) + return eccentric_anomaly + + def _get_mean_anomaly(self, time): + """ + Calculate mean anomaly, i.e., the one that is linear in time and + typically indicated by M. + """ + anomaly = 2. * math.pi * (time - self._perihelion_epoch) / self._period + return anomaly + + def _get_normalized_anomaly(self, anomaly): + """ + get value normalized to (-pi, pi) range + """ + return (anomaly + np.pi) % (2 * np.pi) - np.pi + # XXX self.m_anomaly = np.fmod(self.m_anomaly, 2 * np.pi) + # np.remainder + + def _get_eccentric_anomaly_from_normalized_mean_anomaly(self, + mean_anomaly): + """ + Turn mean anomaly in range (-pi, pi) into eccentric anomaly + """ + anomaly = mean_anomaly + 0. + if self._eccentricity > 0.95: # This limit was manually found. + anomaly = np.pi * np.sign(mean_anomaly) + for _ in range(5): + anomaly += self._get_anomaly_correction(anomaly, mean_anomaly) + return anomaly + + def _get_anomaly_correction(self, anomaly, mean_anomaly): + """ + Calculations needed to solve Kepler's equation. + We use Newton's method. + The input anomaly is current estimate of eccentric anomaly. + """ + numerator = ( + anomaly - self._eccentricity * np.sin(anomaly) - mean_anomaly) + denominator = 1. - self._eccentricity * np.cos(anomaly) + return -numerator / denominator + + +class OrbitCircular(_OrbitAbstract): + """ + Circular orbit. + + Keywords : + period: *float* + Orbital period of binary in days + + semimajor_axis: *float* + Semimajor axis of the orbit. The unit is not specified. + Note that the positions returned by + :py:func:`get_orbital_plane_position()` and + :py:func:`get_reference_plane_position()` + functions will be in the same units. + + Omega_node: *float* + Longitude of the ascending node, i.e., the angle from + the reference direction to the ascending node direction. + + inclination: *float* + Inclination of the orbit relative to plane of the sky. + + perihelion_epoch: *float* or *None* + Epoch when body is in + the ascending node (perihelion is for eccentric orbits). + It's in days and usually you want to provide full BJD or HJD. + + argument_of_latitude_reference: *float* or *None* + Argument of latitude (i.e., u = omega + nu(t_ref)) for + *epoch_reference*, which together define + *perihelion_epoch* (omega). + + epoch_reference: *float* or *None* + Reference epoch that together with + *argument_of_latitude_reference* defines + *perihelion_epoch* (omega). + """ + def __init__(self, period, semimajor_axis, Omega_node, inclination, + perihelion_epoch=None, + argument_of_latitude_reference=None, epoch_reference=None): + self._period = period + self._check_circular_orbit_parameters(semimajor_axis) + perihelion_epoch = self._check_and_get_for_perihelion_epoch( + perihelion_epoch, argument_of_latitude_reference, epoch_reference) + self._set_circular_orbit_parameters( + period, semimajor_axis, Omega_node, inclination, perihelion_epoch) + + def _get_perihelion_epoch(self, u_reference, epoch_reference): + """ + Calculate perihelion epoch based on + the argument_of_latitude (u) at given epoch + """ + time_shift = self._period * u_reference / (2. * np.pi) + return epoch_reference - time_shift + + def get_orbital_plane_position(self, time): + """ + Calculate positions in the orbital plane for given epochs + + Parameters : + time: *float* or *np.ndarray* + Epochs for which positions are requested. + + Returns : + positions: *np.ndarray* + Calculated positions. + """ + anomaly = self._get_mean_anomaly(time) + unit_vector = np.array([np.cos(anomaly), np.sin(anomaly)]) + return self._semimajor_axis * unit_vector + + +class OrbitEccentric(_OrbitAbstract): + """ + Eccentric orbit. + + Keywords : + period: *float* + Orbital period of binary. + + semimajor_axis: *float* + Semimajor axis of the orbit. The unit is not specified. + Note that the positions returned by + :py:func:`get_orbital_plane_position()` and + :py:func:`get_reference_plane_position()` + functions will be in the same units. + + Omega_node: *float* + Longitude of the ascending node, i.e., the angle from + the reference direction to the ascending node direction. + + inclination: *float* + Inclination of the orbit relative to plane of the sky. + + eccentricity: *float* + Eccentricity of the orbit, has to be in (0, 1) range. + + omega_periapsis: *float* + Argument of periapsis in degrees. + + perihelion_epoch: *float* or *None* + Epoch when body is in perihelion. + It's in days and usually you want to provide full BJD or HJD. + + argument_of_latitude_reference: *float* or *None* + Argument of latitude (i.e., u = omega + nu(t_ref)) for + *epoch_reference*, which together define + *perihelion_epoch* (omega). + + epoch_reference: *float* or *None* + Reference epoch that together with + *argument_of_latitude_reference* defines + *perihelion_epoch* (omega). + + """ + def __init__( + self, period, semimajor_axis, Omega_node, inclination, + eccentricity, omega_periapsis, perihelion_epoch=None, + argument_of_latitude_reference=None, epoch_reference=None): + self._period = period + self._omega_periapsis = omega_periapsis * np.pi / 180. + self._eccentricity = eccentricity + self._check_circular_orbit_parameters(semimajor_axis) + perihelion_epoch = self._check_and_get_for_perihelion_epoch( + perihelion_epoch, argument_of_latitude_reference, epoch_reference) + self._set_circular_orbit_parameters( + period, semimajor_axis, Omega_node, inclination, perihelion_epoch) + + def _get_perihelion_epoch(self, u_reference, epoch_reference): + """ + Calculate perihelion epoch (omega) based on + the argument_of_latitude (u) at given reference epoch + """ + true_anomaly = u_reference - self._omega_periapsis + mean_anomaly = self._get_mean_anomaly_from_true_anomaly(true_anomaly) +# XXX - we have to make sure mean_anomaly is in proper range + time_shift = self._period * mean_anomaly / (2. * np.pi) + return epoch_reference - time_shift + + def _get_mean_anomaly_from_true_anomaly(self, true_anomaly): + """ + Calculate mean anomaly (M) based on true anomaly (E) + """ + (sin_E, cos_E) = self._get_sin_cos_eccentric_anomaly(true_anomaly) + E = np.arctan2(sin_E, cos_E) + return E - self._eccentricity * sin_E + + def _get_sin_cos_eccentric_anomaly(self, true_anomaly): + """ + Calculate sin(E) and cos(E) based on true_anomaly (nu) + """ + cos_nu = np.cos(true_anomaly) + denominator = 1 + self._eccentricity * cos_nu + sin_E = (np.sqrt(1 - self._eccentricity**2) * np.sin(true_anomaly) + / denominator) + cos_E = (self._eccentricity + cos_nu) / denominator + return (sin_E, cos_E) + + def get_orbital_plane_position(self, time): + """ + Calculate positions in the orbital plane for given epochs + + Parameters : + time: *float* or *np.ndarray* + Epochs for which positions are requested. + + Returns : + positions: *np.ndarray* + Calculated positions. + """ + eccentric_anomaly = self._get_eccentric_anomaly(time) + out_x = np.cos(eccentric_anomaly) - self._eccentricity + out_y = np.sqrt(1 - self._eccentricity**2) * np.sin(eccentric_anomaly) + return self._semimajor_axis * np.array([out_x, out_y]) + + def get_true_anomaly_deg(self, time): + """ + Calculate true anomaly [deg] for given epochs. + + Parameteres : + time: *float* or *np.ndarray* + Epochs for which positions are requested. + + Returns : + true_anomaly: *float* or *np.ndarray* + Values of true anomaly (nu) for given epochs. + The results are in 0-360 range. + """ + true_anomaly = self._get_true_anomaly(time) + true_anomaly_wrapped = np.remainder(true_anomaly, 2*np.pi) + return true_anomaly_wrapped * (180. / np.pi) + + def _get_true_anomaly(self, time): + """ + Calculate true anomaly for given times. + The result is in (-pi, pi) range. + """ + eccentric_anomaly = self._get_eccentric_anomaly(time) + (sin_nu, cos_nu) = self._get_sin_cos_true_anomaly(eccentric_anomaly) + return np.arctan2(sin_nu, cos_nu) + + def _get_sin_cos_true_anomaly(self, eccentric_anomaly): + """ + Calculate sin(nu) and cos(nu) based on E + """ + cos_E = np.cos(eccentric_anomaly) + denominator = 1. - self._eccentricity * cos_E + cos_nu = (cos_E - self._eccentricity) / denominator + sin_nu = (np.sqrt(1-self._eccentricity**2) * np.sin(eccentric_anomaly) + / denominator) + return (sin_nu, cos_nu) From dd0d2bfcc42296850876b4a4730f8f9d5f6a9d1c Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 22 Dec 2022 16:13:44 +0100 Subject: [PATCH 03/62] adding xallarap tests for Model --- source/MulensModel/tests/test_Model.py | 79 ++++++++++++++++++++++++-- 1 file changed, 73 insertions(+), 6 deletions(-) diff --git a/source/MulensModel/tests/test_Model.py b/source/MulensModel/tests/test_Model.py index 5e13e873..c762df4d 100644 --- a/source/MulensModel/tests/test_Model.py +++ b/source/MulensModel/tests/test_Model.py @@ -49,7 +49,7 @@ def test_model_init_1(): class TestModel(unittest.TestCase): def test_negative_t_E(self): with self.assertRaises(ValueError): - my_model = mm.Model({'t_0': 2450000., 'u_0': 0.1, 't_E': -100.}) + mm.Model({'t_0': 2450000., 'u_0': 0.1, 't_E': -100.}) def test_model_parallax_definition(): @@ -373,7 +373,7 @@ def test_model_binary_and_finite_sources(): model_1.set_magnification_methods([t1, finite, t2]) model_2.set_magnification_methods([t3, finite, t4]) - (f_s_1, f_s_2, f_b) = (100., 300., 50.) + (f_s_1, f_s_2) = (100., 300.) time = np.linspace(4900., 5200., 4200) mag_1 = model_1.get_magnification(time) mag_2 = model_2.get_magnification(time) @@ -400,16 +400,16 @@ def test_binary_source_and_fluxes_for_bands(): times_I = np.linspace(4900., 5200., 3000) times_V = np.linspace(4800., 5300., 250) - (f_s_1_I, f_s_2_I, f_b_I) = (10., 20., 3.) - (f_s_1_V, f_s_2_V, f_b_V) = (15., 5., 30.) + (f_s_1_I, f_s_2_I) = (10., 20.) + (f_s_1_V, f_s_2_V) = (15., 5.) q_f_I = f_s_2_I / f_s_1_I q_f_V = f_s_2_V / f_s_1_V (mag_1_I, mag_2_I) = model.get_magnification(times_I, separate=True) (mag_1_V, mag_2_V) = model.get_magnification(times_V, separate=True) effective_mag_I = (mag_1_I + mag_2_I * q_f_I) / (1. + q_f_I) effective_mag_V = (mag_1_V + mag_2_V * q_f_V) / (1. + q_f_V) - flux_I = mag_1_I * f_s_1_I + mag_2_I * f_s_2_I + f_b_I - flux_V = mag_1_V * f_s_1_V + mag_2_V * f_s_2_V + f_b_V + #flux_I = mag_1_I * f_s_1_I + mag_2_I * f_s_2_I + f_b_I + #flux_V = mag_1_V * f_s_1_V + mag_2_V * f_s_2_V + f_b_V # model.set_source_flux_ratio_for_band('I', q_f_I) # model.set_source_flux_ratio_for_band('V', q_f_V) @@ -458,6 +458,73 @@ def test_get_lc(): almost(out, 19.668370500043526) +def prepare_xallarap_test(xi_Omega_node=0., xi_argument_of_latitude_reference=0.): + """ + prepare data for unit tests of xallarap models + """ + t_0 = 2459876.0 + d_time = 4. + u_0 = 0.01357 + xi_a = 0.0123456789 + tau = 0.03838383 + + common = {'t_0': t_0, 't_E': d_time / tau, 'u_0': u_0} + xallarap = { + 'xi_period': 2.*d_time, 'xi_semimajor_axis': xi_a, + 'xi_Omega_node': xi_Omega_node, 'xi_inclination': 0., + 'xi_argument_of_latitude_reference': xi_argument_of_latitude_reference + } + + model_1 = mm.Model(common) + model_2 = mm.Model({**common, **xallarap}) + return (model_1, model_2, t_0, d_time, tau, u_0, xi_a) + +def test_xallarap_at_t_0(): + """ + Make sure that xallarap and non-xallarap 1L1S models produce + the same magnifications at t_0. + """ + (model_1, model_2, t_0) = prepare_xallarap_test()[:2+1] + + assert model_1.get_magnification(t_0) == model_2.get_magnification(t_0) + + +def test_xallarap_at_t_0_plus_half_of_period_1(): + """ + Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 0. + Expected u is from pen and pencil calculations. + """ + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test()[1:] + + u2 = u_0**2 + (tau - 2. * xi_a)**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + assert expected == model.get_magnification(t_0+d_time) + + +def test_xallarap_at_t_0_plus_half_of_period_2(): + """ + Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 90. + Expected u is from pen and pencil calculations. + """ + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(90., 0.)[1:] + + u2 = (u_0 - 2. * xi_a)**2 + tau**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + assert expected == model.get_magnification(t_0+d_time) + + +def test_xallarap_at_t_0_plus_half_of_period_3(): + """ + Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 180. + Expected u is from pen and pencil calculations. + """ + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(90., 90.)[1:] + + u2 = u_0**2 + (tau + 2. * xi_a)**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + assert expected == model.get_magnification(t_0+d_time) + + # Tests to Add: # # test get_trajectory: From 5e378e7d2fb7c7b2307639d431a4429f475b4bb5 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 22 Dec 2022 16:14:41 +0100 Subject: [PATCH 04/62] adding simplest xallarap - circular and epoch_reference = t_0 --- source/MulensModel/__init__.py | 1 + source/MulensModel/modelparameters.py | 4 +++- source/MulensModel/trajectory.py | 21 +++++++++++++++++++++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/__init__.py b/source/MulensModel/__init__.py index 75514328..cf306af9 100644 --- a/source/MulensModel/__init__.py +++ b/source/MulensModel/__init__.py @@ -15,6 +15,7 @@ from MulensModel.modelparameters import ModelParameters, which_parameters from MulensModel.mulensdata import MulensData from MulensModel.mulensobjects import * +from MulensModel.orbits import * from MulensModel.pointlens import PointLens, get_pspl_magnification from MulensModel.pointlenswithshear import PointLensWithShear from MulensModel.satelliteskycoord import SatelliteSkyCoord diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index a5128405..5e466d9f 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -576,7 +576,9 @@ def _check_valid_combination_1_source(self, keys): 't_0 u_0 t_E t_eff rho t_star pi_E pi_E_N pi_E_E t_0_par ' 's q alpha dalpha_dt ds_dt t_0_kep convergence_K shear_G ' 't_0_1 t_0_2 u_0_1 u_0_2 rho_1 rho_2 t_star_1 t_star_2 ' - 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out').split()) + 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out ' + 'xi_period xi_semimajor_axis xi_inclination xi_Omega_node ' + 'xi_argument_of_latitude_reference').split()) # XXXX difference = set(keys) - allowed_keys if len(difference) > 0: derived_1 = ['gamma', 'gamma_perp', 'gamma_parallel'] diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index ef316b22..66c9e0f0 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -7,6 +7,7 @@ from MulensModel import utils from MulensModel.modelparameters import ModelParameters from MulensModel.coordinates import Coordinates +from MulensModel.orbits.orbit import OrbitCircular class Trajectory(object): @@ -170,6 +171,26 @@ def get_xy(self): vector_tau += delta_tau vector_u += delta_u + # If xallarap parameters are provided, apply xallarap effect: + parameters = self.parameters.parameters + if "xi_period" in parameters: + keys_circular = set( + "xi_period xi_semimajor_axis xi_Omega_node xi_inclination " + "xi_argument_of_latitude_reference".split()) + intersection = keys_circular.intersection(set(parameters.keys())) + if len(intersection) == 5: # XXXX else + orbit_parameters = { + key[3:]: parameters[key] for key in keys_circular} + orbit_parameters['epoch_reference'] = parameters['t_0'] # XXXX + orbit = OrbitCircular(**orbit_parameters) + get_position = orbit.get_reference_plane_position + ref_position = get_position(parameters['t_0']).reshape((2, 1)) + positions = get_position(self.times) + + shifts = positions - ref_position + vector_tau += shifts[0] + vector_u += shifts[1] + # If 2 lenses, rotate trajectory relative to binary lens axis is_mass_sheet = self.parameters.is_external_mass_sheet_with_shear n_lenses = self.parameters.n_lenses From e41e7441457e33da30567175f71e2ea3fb83b0c8 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 29 Dec 2022 16:25:54 +0100 Subject: [PATCH 05/62] tests for t_0_xi parameter --- source/MulensModel/tests/test_Model.py | 35 +++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/tests/test_Model.py b/source/MulensModel/tests/test_Model.py index c762df4d..6b496933 100644 --- a/source/MulensModel/tests/test_Model.py +++ b/source/MulensModel/tests/test_Model.py @@ -458,7 +458,9 @@ def test_get_lc(): almost(out, 19.668370500043526) -def prepare_xallarap_test(xi_Omega_node=0., xi_argument_of_latitude_reference=0.): +def prepare_xallarap_test( + xi_Omega_node=0., xi_argument_of_latitude_reference=0., + t_0_xi=None): """ prepare data for unit tests of xallarap models """ @@ -474,6 +476,12 @@ def prepare_xallarap_test(xi_Omega_node=0., xi_argument_of_latitude_reference=0. 'xi_Omega_node': xi_Omega_node, 'xi_inclination': 0., 'xi_argument_of_latitude_reference': xi_argument_of_latitude_reference } + if t_0_xi is not None: + if t_0_xi == "t_0": + t_0_xi = t_0 + elif t_0_xi == "t_0+d_time": + t_0_xi = t_0 + d_time + xallarap['t_0_xi'] = t_0_xi model_1 = mm.Model(common) model_2 = mm.Model({**common, **xallarap}) @@ -524,6 +532,31 @@ def test_xallarap_at_t_0_plus_half_of_period_3(): expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) assert expected == model.get_magnification(t_0+d_time) +def test_xallarap_at_t_0_plus_half_of_period_4(): + """ + Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 180. + The t_0_xi is provided as a parameter and = t_0. + Expected u is from pen and pencil calculations. + """ + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(90., 90., "t_0")[1:] + + u2 = u_0**2 + (tau + 2. * xi_a)**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + assert expected == model.get_magnification(t_0+d_time) + +def test_xallarap_at_t_0_plus_half_of_period_5(): + """ + Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 180. + The t_0_xi is provided as a parameter and = t_0. + Expected u is from pen and pencil calculations. + """ + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(90., 90., "t_0+d_time")[1:] + + u2 = u_0**2 + tau**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + assert expected == model.get_magnification(t_0+d_time) + + # Tests to Add: # From b0f28cc8ded7c7e580bb02dee80a24b43688002a Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 29 Dec 2022 16:26:57 +0100 Subject: [PATCH 06/62] implementing t_0_xi parameter and its usage --- source/MulensModel/modelparameters.py | 14 +++++++++++++- source/MulensModel/trajectory.py | 6 +++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 5e466d9f..55b4e281 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -578,7 +578,7 @@ def _check_valid_combination_1_source(self, keys): 't_0_1 t_0_2 u_0_1 u_0_2 rho_1 rho_2 t_star_1 t_star_2 ' 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out ' 'xi_period xi_semimajor_axis xi_inclination xi_Omega_node ' - 'xi_argument_of_latitude_reference').split()) # XXXX + 'xi_argument_of_latitude_reference t_0_xi').split()) # XXXX difference = set(keys) - allowed_keys if len(difference) > 0: derived_1 = ['gamma', 'gamma_perp', 'gamma_parallel'] @@ -1274,6 +1274,18 @@ def t_0_kep(self, new): self.parameters['t_0_kep'] = new self._update_sources('t_0_kep', new) + @property + def t_0_xi(self): + """ + *float* + + XXX XXXX + """ + if 't_0_xi' not in self.parameters.keys(): + return self.parameters['t_0'] + else: + return self.parameters['t_0_xi'] + @property def t_0_1(self): """ diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index 66c9e0f0..76c47fd4 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -181,13 +181,13 @@ def get_xy(self): if len(intersection) == 5: # XXXX else orbit_parameters = { key[3:]: parameters[key] for key in keys_circular} - orbit_parameters['epoch_reference'] = parameters['t_0'] # XXXX + orbit_parameters['epoch_reference'] = self.parameters.t_0_xi # XXXX orbit = OrbitCircular(**orbit_parameters) get_position = orbit.get_reference_plane_position - ref_position = get_position(parameters['t_0']).reshape((2, 1)) + ref_position = get_position(self.parameters.t_0_xi).reshape((2, 1)) positions = get_position(self.times) - shifts = positions - ref_position + vector_tau += shifts[0] vector_u += shifts[1] From 639f79cf5a78a797f870b0a392446e9de85b2699 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 5 Jan 2023 16:50:12 +0100 Subject: [PATCH 07/62] test for setting and retriving xallarap parameters --- .../MulensModel/tests/test_ModelParameters.py | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 14119185..447fd5bf 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -1,4 +1,5 @@ import unittest +import pytest import numpy as np from astropy import units as u @@ -381,3 +382,44 @@ def test_failing_single_lens_with_mass_sheet(self): parameters.convergence_K with self.assertRaises(KeyError): parameters.shear_G = 0. + + +def setup_xallarap(key): + """ + Setup for xallarap tests. + """ + period = 12.345 + parameters = {'t_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, + 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 0.123, + 'xi_inclination': 9.8765, + 'xi_argument_of_latitude_reference': 24.68} + model = mm.ModelParameters(parameters) + return (model, parameters[key]) + + +tested_keys = ['xi_period', 'xi_semimajor_axis', 'xi_Omega_node', + 'xi_inclination', 'xi_argument_of_latitude_reference'] + + +@pytest.mark.parametrize("key", tested_keys) +def test_xallarap_period_1(key): + """ + Check if xallarap settings of xallarap are correctly changed via dictionary + """ + (model, value) = setup_xallarap(key) + new_value = 2.1234 * value + model.parameters[key] = new_value + assert model.parameters[key] == new_value + assert getattr(model, key) == new_value + + +@pytest.mark.parametrize("key", tested_keys) +def test_xallarap_period_2(key): + """ + Check if xallarap settings are correctly changed via attribute + """ + (model, value) = setup_xallarap(key) + new_value = 1.3579 * value + setattr(model, key, new_value) + assert model.parameters[key] == new_value + assert getattr(model, key) == new_value From f53474c57b49b0f43231d04f37c756464f09072a Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 5 Jan 2023 17:07:00 +0100 Subject: [PATCH 08/62] xallarap parameters in ModelParameters --- source/MulensModel/modelparameters.py | 72 +++++++++++++++++++++++++++ source/MulensModel/trajectory.py | 2 +- 2 files changed, 73 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 55b4e281..5350af1f 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -391,6 +391,11 @@ def __repr__(self): 't_caustic_in': {'width': 19, 'precision': 5, 'unit': 'HJD'}, 't_caustic_out': {'width': 19, 'precision': 5, 'unit': 'HJD'}, } + xallarap_keys = ['xi_period', 'xi_semimajor_axis', 'xi_inclination', + 'xi_Omega_node', 'xi_argument_of_latitude_reference', + 't_0_xi'] + for key in xallarap_keys: + formats[key] = {'width': 13, 'precision': 7} # Add binary source parameters with the same settings. binary_source_keys = ['t_0_1', 't_0_2', 'u_0_1', 'u_0_2', 'rho_1', 'rho_2', 't_star_1', 't_star_2'] @@ -408,6 +413,8 @@ def __repr__(self): 'pi_E_N', 'pi_E_E', 's', 'q', 'alpha', 'convergence_K', 'shear_G', 'ds_dt', 'dalpha_dt', 'x_caustic_in', 'x_caustic_out', 't_caustic_in', 't_caustic_out', + 'xi_period', 'xi_semimajor_axis', 'xi_inclination', 'xi_Omega_node', + 'xi_argument_of_latitude_reference', 't_0_xi' ] variables = '' @@ -1286,6 +1293,71 @@ def t_0_xi(self): else: return self.parameters['t_0_xi'] + @property + def xi_period(self): + """ + *float* + + XXX + """ + return self.parameters['xi_period'] + + @xi_period.setter + def xi_period(self, new_value): + self.parameters['xi_period'] = new_value + + @property + def xi_semimajor_axis(self): + """ + *float* + + XXX + """ + return self.parameters['xi_semimajor_axis'] + + @xi_semimajor_axis.setter + def xi_semimajor_axis(self, new_value): + self.parameters['xi_semimajor_axis'] = new_value + + @property + def xi_Omega_node(self): + """ + *float* + + XXX + """ + return self.parameters['xi_Omega_node'] + + @xi_Omega_node.setter + def xi_Omega_node(self, new_value): + self.parameters['xi_Omega_node'] = new_value + + @property + def xi_inclination(self): + """ + *float* + + XXX + """ + return self.parameters['xi_inclination'] + + @xi_inclination.setter + def xi_inclination(self, new_value): + self.parameters['xi_inclination'] = new_value + + @property + def xi_argument_of_latitude_reference(self): + """ + *float* + + XXX + """ + return self.parameters['xi_argument_of_latitude_reference'] + + @xi_argument_of_latitude_reference.setter + def xi_argument_of_latitude_reference(self, new_value): + self.parameters['xi_argument_of_latitude_reference'] = new_value + @property def t_0_1(self): """ diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index 76c47fd4..acab7926 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -178,7 +178,7 @@ def get_xy(self): "xi_period xi_semimajor_axis xi_Omega_node xi_inclination " "xi_argument_of_latitude_reference".split()) intersection = keys_circular.intersection(set(parameters.keys())) - if len(intersection) == 5: # XXXX else + if len(intersection) == len(keys_circular): # XXXX else orbit_parameters = { key[3:]: parameters[key] for key in keys_circular} orbit_parameters['epoch_reference'] = self.parameters.t_0_xi # XXXX From e818c31f4bf92a2bd24ecf280b33dc525011aa08 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 6 Jan 2023 00:50:28 +0100 Subject: [PATCH 09/62] adding t_0_xi to tests --- source/MulensModel/tests/test_ModelParameters.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 447fd5bf..83f5489e 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -392,13 +392,14 @@ def setup_xallarap(key): parameters = {'t_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 0.123, 'xi_inclination': 9.8765, - 'xi_argument_of_latitude_reference': 24.68} + 'xi_argument_of_latitude_reference': 24.68, + 't_0_xi': 1.} model = mm.ModelParameters(parameters) return (model, parameters[key]) tested_keys = ['xi_period', 'xi_semimajor_axis', 'xi_Omega_node', - 'xi_inclination', 'xi_argument_of_latitude_reference'] + 'xi_inclination', 'xi_argument_of_latitude_reference', 't_0_xi'] @pytest.mark.parametrize("key", tested_keys) From c900df3220743bd0508bf1a29b15ec2891839acc Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 6 Jan 2023 00:50:53 +0100 Subject: [PATCH 10/62] t_0_xi.setter added; docstring --- source/MulensModel/modelparameters.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 5350af1f..1e00ba82 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -1286,13 +1286,19 @@ def t_0_xi(self): """ *float* - XXX XXXX + Reference epoch for xallarap orbit. + If not provided, then it defaults to :py:attr:`~t_0`. """ + # XXX check if model has xallarap if 't_0_xi' not in self.parameters.keys(): return self.parameters['t_0'] else: return self.parameters['t_0_xi'] + @t_0_xi.setter + def t_0_xi(self, new_value): + self.parameters['t_0_xi'] = new_value + @property def xi_period(self): """ From e8e1c136971608265ccebac0701ddd56a2288def Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 6 Jan 2023 01:01:36 +0100 Subject: [PATCH 11/62] docstrings and PEP8 --- source/MulensModel/modelparameters.py | 14 +++++++++----- source/MulensModel/trajectory.py | 5 +++-- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 1e00ba82..66801de2 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -413,8 +413,8 @@ def __repr__(self): 'pi_E_N', 'pi_E_E', 's', 'q', 'alpha', 'convergence_K', 'shear_G', 'ds_dt', 'dalpha_dt', 'x_caustic_in', 'x_caustic_out', 't_caustic_in', 't_caustic_out', - 'xi_period', 'xi_semimajor_axis', 'xi_inclination', 'xi_Omega_node', - 'xi_argument_of_latitude_reference', 't_0_xi' + 'xi_period', 'xi_semimajor_axis', 'xi_inclination', + 'xi_Omega_node', 'xi_argument_of_latitude_reference', 't_0_xi' ] variables = '' @@ -1304,12 +1304,13 @@ def xi_period(self): """ *float* - XXX + Orbital period of the source system (xallarap) in days. """ return self.parameters['xi_period'] @xi_period.setter def xi_period(self, new_value): + # XXX has to be positive self.parameters['xi_period'] = new_value @property @@ -1317,12 +1318,13 @@ def xi_semimajor_axis(self): """ *float* - XXX + Semi-major axis of the source orbit (xallarap) in the theta_E units. """ return self.parameters['xi_semimajor_axis'] @xi_semimajor_axis.setter def xi_semimajor_axis(self, new_value): + # XXX has to be positive self.parameters['xi_semimajor_axis'] = new_value @property @@ -1343,7 +1345,9 @@ def xi_inclination(self): """ *float* - XXX + The inclination of the xallarap orbit, i.e., + the angle between source-orbit plane and the sky plane. + The units are degrees. """ return self.parameters['xi_inclination'] diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index acab7926..99e3f331 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -181,10 +181,11 @@ def get_xy(self): if len(intersection) == len(keys_circular): # XXXX else orbit_parameters = { key[3:]: parameters[key] for key in keys_circular} - orbit_parameters['epoch_reference'] = self.parameters.t_0_xi # XXXX + t_0_xi = self.parameters.t_0_xi + orbit_parameters['epoch_reference'] = t_0_xi orbit = OrbitCircular(**orbit_parameters) get_position = orbit.get_reference_plane_position - ref_position = get_position(self.parameters.t_0_xi).reshape((2, 1)) + ref_position = get_position(t_0_xi).reshape((2, 1)) positions = get_position(self.times) shifts = positions - ref_position From ffbb810a512c4545432380fef24f0f0046510b99 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Wed, 18 Jan 2023 00:32:50 +0100 Subject: [PATCH 12/62] xallarap period and semimajor axis have to be positive --- source/MulensModel/modelparameters.py | 6 +++-- .../MulensModel/tests/test_ModelParameters.py | 27 +++++++++++++++++-- 2 files changed, 29 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 66801de2..1c282e30 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -1310,7 +1310,8 @@ def xi_period(self): @xi_period.setter def xi_period(self, new_value): - # XXX has to be positive + if new_value < 0.: + raise ValueError('Xallarap period cannot be negative') self.parameters['xi_period'] = new_value @property @@ -1324,7 +1325,8 @@ def xi_semimajor_axis(self): @xi_semimajor_axis.setter def xi_semimajor_axis(self, new_value): - # XXX has to be positive + if new_value < 0.: + raise ValueError('Xallarap semimajor axis cannot be negative') self.parameters['xi_semimajor_axis'] = new_value @property diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 83f5489e..edc30ef1 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -403,7 +403,7 @@ def setup_xallarap(key): @pytest.mark.parametrize("key", tested_keys) -def test_xallarap_period_1(key): +def test_xallarap_set_value_1(key): """ Check if xallarap settings of xallarap are correctly changed via dictionary """ @@ -415,7 +415,7 @@ def test_xallarap_period_1(key): @pytest.mark.parametrize("key", tested_keys) -def test_xallarap_period_2(key): +def test_xallarap_set_value_2(key): """ Check if xallarap settings are correctly changed via attribute """ @@ -424,3 +424,26 @@ def test_xallarap_period_2(key): setattr(model, key, new_value) assert model.parameters[key] == new_value assert getattr(model, key) == new_value + + +class TestXallarapErrors(unittest.TestCase): + def test_negative_period(self): + """ + Make sure that period is positive + """ + key = 'xi_period' + (model, value) = setup_xallarap(key) + new_value = -3.14 * value + with self.assertRaises(ValueError): + setattr(model, key, new_value) + + def test_negative_semimajor_axis(self): + """ + Make sure that period is positive + """ + key = 'xi_semimajor_axis' + (model, value) = setup_xallarap(key) + new_value = -3.14 * value + with self.assertRaises(ValueError): + setattr(model, key, new_value) + From 4e14b101dd44b057e798c736803e5bc03c646fea Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Wed, 18 Jan 2023 12:51:12 +0100 Subject: [PATCH 13/62] improving printing of xallarap parameters; simplifying ModelParameters.__repr__() --- source/MulensModel/modelparameters.py | 61 ++++++++++++++++++--------- 1 file changed, 41 insertions(+), 20 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 1c282e30..9ca746dd 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -388,14 +388,21 @@ def __repr__(self): 'name': 'dalpha/dt'}, 'x_caustic_in': {'width': 13, 'precision': 7}, 'x_caustic_out': {'width': 13, 'precision': 7}, - 't_caustic_in': {'width': 19, 'precision': 5, 'unit': 'HJD'}, - 't_caustic_out': {'width': 19, 'precision': 5, 'unit': 'HJD'}, + 't_caustic_in': {'width': 13, 'precision': 5, 'unit': 'HJD'}, + 't_caustic_out': {'width': 13, 'precision': 5, 'unit': 'HJD'}, + 'xi_period': {'width': 10, 'precision': 4, + 'unit': 'd', 'name': 'xallarap period'}, + 'xi_semimajor_axis': {'width': 9, 'precision': 6, + 'name': 'xallarap semimajor axis'}, + 'xi_inclination': {'width': 11, 'precision': 5, 'unit': 'deg', + 'name': 'xallarap inclination'}, + 'xi_Omega_node': {'width': 11, 'precision': 5, 'unit': 'deg', + 'name': 'xallarap Omega_node'}, + 'xi_argument_of_latitude_reference': { + 'width': 11, 'precision': 5, 'unit': 'deg', + 'name': 'xallarap argument_of latitude reference'}, + 't_0_xi': {'width': 13, 'precision': 5, 'unit': 'HJD'}, # XXX NAME? } - xallarap_keys = ['xi_period', 'xi_semimajor_axis', 'xi_inclination', - 'xi_Omega_node', 'xi_argument_of_latitude_reference', - 't_0_xi'] - for key in xallarap_keys: - formats[key] = {'width': 13, 'precision': 7} # Add binary source parameters with the same settings. binary_source_keys = ['t_0_1', 't_0_2', 'u_0_1', 'u_0_2', 'rho_1', 'rho_2', 't_star_1', 't_star_2'] @@ -407,7 +414,7 @@ def __repr__(self): formats[key]['unit'] = form['unit'] if 'name' in form: raise KeyError('internal issue: {:}'.format(key)) - formats_keys = [ + ordered_keys = [ 't_0', 't_0_1', 't_0_2', 'u_0', 'u_0_1', 'u_0_2', 't_eff', 't_E', 'rho', 'rho_1', 'rho_2', 't_star', 't_star_1', 't_star_2', 'pi_E_N', 'pi_E_E', 's', 'q', 'alpha', @@ -419,25 +426,39 @@ def __repr__(self): variables = '' values = '' - - for key in formats_keys: + for key in ordered_keys: if key not in keys: continue - form = formats[key] - fmt_1 = '{:>' + str(form['width']) - fmt_2 = fmt_1 + '.' + str(form['precision']) + 'f} ' - fmt_1 += '} ' - full_name = form.get('name', key) - if 'unit' in form: - full_name += " ({:})".format(form['unit']) + (full_name, value) = self._get_values_for_repr(formats[key], key) + (fmt_1, fmt_2) = self._get_formats_for_repr(formats[key], + full_name) variables += fmt_1.format(full_name) - value = getattr(self, key) - if isinstance(value, u.Quantity): - value = value.value values += fmt_2.format(value) return '{0}\n{1}\n'.format(variables, values) + def _get_values_for_repr(self, form, key): + """ + Get full name of the parameter and its value (float) + to be used by __rerp__(). + """ + full_name = form.get('name', key) + if 'unit' in form: + full_name += " ({:})".format(form['unit']) + value = getattr(self, key) + if isinstance(value, u.Quantity): + value = value.value + return (full_name, value) + + def _get_formats_for_repr(self, form, full_name): + """ + Extract formats to be used by __repr__(). + """ + fmt_1 = '{:>' + str(max([form['width'], len(full_name)])) + fmt_2 = fmt_1 + '.' + str(form['precision']) + 'f} ' + fmt_1 += '} ' + return (fmt_1, fmt_2) + def _check_valid_combination_2_sources(self, keys): """ make sure that there is no conflict between t_0 and t_0_1 etc. From 5e6211eddbbe569cbeaba213b5c9e40a76004fc0 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 19 Jan 2023 16:13:34 +0100 Subject: [PATCH 14/62] minor changes in docstrings --- source/MulensModel/modelparameters.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 9ca746dd..b4554ee6 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -1710,7 +1710,7 @@ def n_lenses(self): """ *int* - number of objects in the lens system + Number of objects in the lens system. """ return self._n_lenses @@ -1719,7 +1719,8 @@ def n_sources(self): """ *int* - number of luminous sources; it's possible to be 1 for xallarap model + Number of luminous sources. + It can be be 1 for a xallarap model. """ return self._n_sources From 66dfbfc25db8a6322e3816a2a464e0028ae753dd Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 2 Feb 2023 17:31:04 +0100 Subject: [PATCH 15/62] warnings on strange values of xallarap angles --- source/MulensModel/modelparameters.py | 14 +++++++++++ .../MulensModel/tests/test_ModelParameters.py | 24 ++++++++++++++++++- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index b4554ee6..ba10480e 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -670,6 +670,10 @@ def _set_parameters(self, parameters): if parameter in self.parameters: self._set_time_quantity(parameter, self.parameters[parameter]) + # XXX - For warnings: + for (key, value) in self.parameters.items(): + setattr(self, key, value) + def _update_sources(self, parameter, value): """ For multi-source models, update the values for all sources. @@ -1361,6 +1365,9 @@ def xi_Omega_node(self): @xi_Omega_node.setter def xi_Omega_node(self, new_value): + if new_value < -360. or new_value > 540.: + warnings.warn("strange value of xi_Omega_node: " + str(new_value), + RuntimeWarning) self.parameters['xi_Omega_node'] = new_value @property @@ -1376,6 +1383,9 @@ def xi_inclination(self): @xi_inclination.setter def xi_inclination(self, new_value): + if new_value < -360. or new_value > 360.: + warnings.warn("strange value of xi_inclination: " + str(new_value), + RuntimeWarning) self.parameters['xi_inclination'] = new_value @property @@ -1389,6 +1399,10 @@ def xi_argument_of_latitude_reference(self): @xi_argument_of_latitude_reference.setter def xi_argument_of_latitude_reference(self, new_value): + if new_value < -360. or new_value > 360.: + warnings.warn( + "strange value of argument_of_latitude_reference: " + + str(new_value), RuntimeWarning) self.parameters['xi_argument_of_latitude_reference'] = new_value @property diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index edc30ef1..7224d4ba 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -1,4 +1,5 @@ import unittest +import warnings import pytest import numpy as np @@ -388,7 +389,6 @@ def setup_xallarap(key): """ Setup for xallarap tests. """ - period = 12.345 parameters = {'t_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 0.123, 'xi_inclination': 9.8765, @@ -447,3 +447,25 @@ def test_negative_semimajor_axis(self): with self.assertRaises(ValueError): setattr(model, key, new_value) + +@pytest.mark.parametrize("parameter,value", [ + ('xi_Omega_node', -361.), ('xi_Omega_node', 541.), + ('xi_inclination', -361.), ('xi_inclination', 361.), + ('xi_argument_of_latitude_reference', -361.), + ('xi_argument_of_latitude_reference', 361.)]) +def test_warnings_for_xallarap_angles(parameter, value): + """ + Check if xallarap angles in somehow strange range give warning + """ + parameters = { + 't_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, + 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 100., + 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200., + 't_0_xi': 1.} + parameters[parameter] = value + + with warnings.catch_warnings(record=True) as warnings_: + warnings.simplefilter("always") + mm.ModelParameters(parameters) + assert len(warnings_) == 1 + assert issubclass(warnings_[0].category, RuntimeWarning) From b29e7c23cf75c424ee8db36de8c13a7fdb6aedd6 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 9 Feb 2023 21:54:13 +0100 Subject: [PATCH 16/62] adding _warn_if_angle_outside_reasonable_range() and re-organizing tests --- source/MulensModel/modelparameters.py | 28 ++++++++++++------- .../MulensModel/tests/test_ModelParameters.py | 9 +++--- 2 files changed, 22 insertions(+), 15 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index ba10480e..73de819b 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -957,8 +957,20 @@ def alpha(self, new_alpha): self.parameters['alpha'] = new_alpha else: self.parameters['alpha'] = new_alpha * u.deg + self._warn_if_angle_outside_reasonable_range( + self.parameters['alpha'].to(u.deg).value, 'alpha') self._update_sources('alpha', new_alpha) + def _warn_if_angle_outside_reasonable_range(self, value, name): + """ + Check if value of given angle is in reasonable range and warn if not + """ + min_ = -360. + max_ = 540. + if value < min_ or value > max_: + fmt = "Strange value of angle {:}: {:}" + warnings.warn(fmt.format(name, value), RuntimeWarning) + @property def q(self): """ @@ -1365,9 +1377,8 @@ def xi_Omega_node(self): @xi_Omega_node.setter def xi_Omega_node(self, new_value): - if new_value < -360. or new_value > 540.: - warnings.warn("strange value of xi_Omega_node: " + str(new_value), - RuntimeWarning) + self._warn_if_angle_outside_reasonable_range(new_value, + 'xi_Omega_node') self.parameters['xi_Omega_node'] = new_value @property @@ -1383,9 +1394,8 @@ def xi_inclination(self): @xi_inclination.setter def xi_inclination(self, new_value): - if new_value < -360. or new_value > 360.: - warnings.warn("strange value of xi_inclination: " + str(new_value), - RuntimeWarning) + self._warn_if_angle_outside_reasonable_range(new_value, + 'xi_inclination') self.parameters['xi_inclination'] = new_value @property @@ -1399,10 +1409,8 @@ def xi_argument_of_latitude_reference(self): @xi_argument_of_latitude_reference.setter def xi_argument_of_latitude_reference(self, new_value): - if new_value < -360. or new_value > 360.: - warnings.warn( - "strange value of argument_of_latitude_reference: " + - str(new_value), RuntimeWarning) + self._warn_if_angle_outside_reasonable_range( + new_value, 'xi_argument_of_latitude_reference') self.parameters['xi_argument_of_latitude_reference'] = new_value @property diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 7224d4ba..6820e149 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -448,11 +448,10 @@ def test_negative_semimajor_axis(self): setattr(model, key, new_value) -@pytest.mark.parametrize("parameter,value", [ - ('xi_Omega_node', -361.), ('xi_Omega_node', 541.), - ('xi_inclination', -361.), ('xi_inclination', 361.), - ('xi_argument_of_latitude_reference', -361.), - ('xi_argument_of_latitude_reference', 361.)]) +@pytest.mark.parametrize( + "parameter", + ['xi_Omega_node', 'xi_inclination', 'xi_argument_of_latitude_reference']) +@pytest.mark.parametrize("value", [-361., 541.]) def test_warnings_for_xallarap_angles(parameter, value): """ Check if xallarap angles in somehow strange range give warning From 81cba20f89d9362ac760ec1b16129bdd645aa093 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 9 Feb 2023 22:02:44 +0100 Subject: [PATCH 17/62] separate Model._plot_arrow() --- source/MulensModel/model.py | 47 ++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/source/MulensModel/model.py b/source/MulensModel/model.py index b87970fe..25247879 100644 --- a/source/MulensModel/model.py +++ b/source/MulensModel/model.py @@ -626,27 +626,32 @@ def _plot_single_trajectory(self, times, parameters, satellite_skycoord, self._plt_plot(trajectory.x, trajectory.y, kwargs) if arrow: - if len(times) > 2: - index = int(len(times)/2) - else: - index = 0 - x_0 = trajectory.x[index] - y_0 = trajectory.y[index] - d_x = trajectory.x[index+1] - x_0 - d_y = trajectory.y[index+1] - y_0 - dd = 1e6 * (d_x*d_x + d_y*d_y)**.5 - - xlim = plt.xlim() - ylim = plt.ylim() - width = np.abs(xlim[1]-xlim[0]) * np.abs(ylim[1]-ylim[0]) - width = width**.5 / 100. - - color = kwargs.get('color', 'black') - kwargs_ = {'width': width, 'color': color, 'lw': 0, - 'zorder': -np.inf} - if arrow_kwargs is not None: - kwargs_.update(arrow_kwargs) - plt.arrow(x_0, y_0, d_x/dd, d_y/dd, **kwargs_) + self._plot_arrow(times, trajectory) + + def _plot_arrow(self, times, trajectory): + """ + XXX - code below has to be tested + """ + if len(times) > 2: + index = int(len(times)/2) + else: + index = 0 + x_0 = trajectory.x[index] + y_0 = trajectory.y[index] + d_x = trajectory.x[index+1] - x_0 + d_y = trajectory.y[index+1] - y_0 + dd = 1e6 * (d_x*d_x + d_y*d_y)**.5 + + xlim = plt.xlim() + ylim = plt.ylim() + width = np.abs(xlim[1]-xlim[0]) * np.abs(ylim[1]-ylim[0]) + width = width**.5 / 100. + + color = kwargs.get('color', 'black') + kwargs_ = {'width': width, 'color': color, 'lw': 0, 'zorder': -np.inf} + if arrow_kwargs is not None: + kwargs_.update(arrow_kwargs) + plt.arrow(x_0, y_0, d_x/dd, d_y/dd, **kwargs_) def plot_source(self, times=None, **kwargs): """ From 62e0e0b1a94ee7581fab60e33d78627a99d1a0f5 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Mon, 20 Feb 2023 18:20:47 +0100 Subject: [PATCH 18/62] correcting checks of angles for warnings --- source/MulensModel/modelparameters.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 73de819b..4c5845ae 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -670,9 +670,12 @@ def _set_parameters(self, parameters): if parameter in self.parameters: self._set_time_quantity(parameter, self.parameters[parameter]) - # XXX - For warnings: - for (key, value) in self.parameters.items(): - setattr(self, key, value) + angle_parameters = ['alpha', 'xi_Omega_node', 'xi_inclination', + 'xi_argument_of_latitude_reference'] + for parameter in angle_parameters: + if parameter in self.parameters: + self._warn_if_angle_outside_reasonable_range( + self.parameters[parameter], parameter) def _update_sources(self, parameter, value): """ @@ -967,6 +970,8 @@ def _warn_if_angle_outside_reasonable_range(self, value, name): """ min_ = -360. max_ = 540. + if isinstance(value, u.Quantity): + value = value.to(u.deg).value if value < min_ or value > max_: fmt = "Strange value of angle {:}: {:}" warnings.warn(fmt.format(name, value), RuntimeWarning) From 4205c55459cd0082f4f068640eecd8c3492695cb Mon Sep 17 00:00:00 2001 From: rpoleski Date: Thu, 2 Mar 2023 14:46:57 +0100 Subject: [PATCH 19/62] ModelParameters.is_xallarap added --- source/MulensModel/modelparameters.py | 14 +++++++++++++- source/MulensModel/tests/test_ModelParameters.py | 16 ++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 4c5845ae..b93b59a7 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -292,7 +292,9 @@ def _set_type(self, keys): 'Cassan08': 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out', 'lens 2-parameter orbital motion': 'dalpha_dt ds_dt', - 'mass sheet': 'convergence_K shear_G'} + 'mass sheet': 'convergence_K shear_G', + 'xallarap': ('xi_period xi_semimajor_axisi xi_inclination ' + 'xi_Omega_node xi_argument_of_latitude_reference')} parameter_to_type = dict() for (key, values) in temp.items(): @@ -1771,6 +1773,15 @@ def is_external_mass_sheet_with_shear(self): return (('shear_G' in self.parameters.keys()) and (self.parameters['shear_G'] != 0)) + @property + def is_xallarap(self): + """ + *bool* + + Whether the parameters include the xallarap or not. + """ + return self._type['xallarap'] + @property def source_1_parameters(self): """ @@ -1833,3 +1844,4 @@ def as_dict(self): The dictionary of model parameters. """ return self.parameters + diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 6820e149..6b94b456 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -468,3 +468,19 @@ def test_warnings_for_xallarap_angles(parameter, value): mm.ModelParameters(parameters) assert len(warnings_) == 1 assert issubclass(warnings_[0].category, RuntimeWarning) + + +def test_is_xallarap_1(): + """ + Make sure that .is_xallarap() works returns True, when it should. + """ + parameters = { + 't_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, + 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 100., + 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200., + 't_0_xi': 1.} + model_params = mm.ModelParameters(parameters) + assert model_params.is_xallarap + + + From 544d634b74013c8b8dc830988457070e3041a953 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 2 Mar 2023 23:39:24 +0100 Subject: [PATCH 20/62] bug in .is_xallarap() corrected --- source/MulensModel/modelparameters.py | 2 +- source/MulensModel/tests/test_ModelParameters.py | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index b93b59a7..0847b80d 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -283,7 +283,7 @@ def _set_type(self, keys): sets self._type property, which indicates what type of a model we have """ types = ['finite source', 'parallax', 'Cassan08', - 'lens 2-parameter orbital motion', 'mass sheet'] + 'lens 2-parameter orbital motion', 'mass sheet', 'xallarap'] out = {type_: False for type_ in types} temp = { diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 6b94b456..1ad75ffa 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -472,7 +472,7 @@ def test_warnings_for_xallarap_angles(parameter, value): def test_is_xallarap_1(): """ - Make sure that .is_xallarap() works returns True, when it should. + Make sure that .is_xallarap() returns True, when it should. """ parameters = { 't_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, @@ -483,4 +483,10 @@ def test_is_xallarap_1(): assert model_params.is_xallarap - +def test_is_xallarap_2(): + """ + Check that is_xallarap() returns False for a (static) binary source model. + """ + parameters = {'t_0_1': 0, 'u_0_1': 1, 't_0_2': 5, 'u_0_2': 0.1, 't_E': 9} + model_params = mm.ModelParameters(parameters) + assert not model_params.is_xallarap From e74fcfef251be5748e7ba4b7f04199e493f926b0 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Apr 2023 17:49:41 +0200 Subject: [PATCH 21/62] minor normalizaions corrected in orbit.py --- source/MulensModel/orbits/orbit.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/source/MulensModel/orbits/orbit.py b/source/MulensModel/orbits/orbit.py index d8a14ad4..8769b8a4 100644 --- a/source/MulensModel/orbits/orbit.py +++ b/source/MulensModel/orbits/orbit.py @@ -107,7 +107,7 @@ def _get_eccentric_anomaly(self, time): Calculate eccentric anomaly (typically indicated by E). """ mean_anomaly = self._get_mean_anomaly(time) - anomaly = self._get_normalized_anomaly(mean_anomaly) + anomaly = self._get_normalized_anomaly_minus_pi_pi(mean_anomaly) eccentric_anomaly = ( self._get_eccentric_anomaly_from_normalized_mean_anomaly(anomaly)) return eccentric_anomaly @@ -120,13 +120,18 @@ def _get_mean_anomaly(self, time): anomaly = 2. * math.pi * (time - self._perihelion_epoch) / self._period return anomaly - def _get_normalized_anomaly(self, anomaly): + def _get_normalized_anomaly_minus_pi_pi(self, anomaly): """ get value normalized to (-pi, pi) range """ - return (anomaly + np.pi) % (2 * np.pi) - np.pi - # XXX self.m_anomaly = np.fmod(self.m_anomaly, 2 * np.pi) - # np.remainder + out = self._get_normalized_anomaly_zero_two_pi(anomaly + np.pi) - np.pi + return out + + def _get_normalized_anomaly_zero_two_pi(self, anomaly): + """ + get value normalized to (0, 2*pi) range + """ + return np.remainder(anomaly, 2 * np.pi) def _get_eccentric_anomaly_from_normalized_mean_anomaly(self, mean_anomaly): @@ -287,7 +292,7 @@ def _get_perihelion_epoch(self, u_reference, epoch_reference): """ true_anomaly = u_reference - self._omega_periapsis mean_anomaly = self._get_mean_anomaly_from_true_anomaly(true_anomaly) -# XXX - we have to make sure mean_anomaly is in proper range + mean_anomaly = self._get_normalized_anomaly_minus_pi_pi(mean_anomaly) time_shift = self._period * mean_anomaly / (2. * np.pi) return epoch_reference - time_shift From 1eab715ef209d16adcf35f1274b5bd4ff6f67576 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 18 May 2023 17:32:40 +0200 Subject: [PATCH 22/62] test accuracy changes that follow changes in master branch caused by VBBL update --- source/MulensModel/tests/test_Model.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/tests/test_Model.py b/source/MulensModel/tests/test_Model.py index 6b496933..88221314 100644 --- a/source/MulensModel/tests/test_Model.py +++ b/source/MulensModel/tests/test_Model.py @@ -211,7 +211,7 @@ def test_BLPS_02(): expected = np.array([4.69183078, 2.87659723, 1.83733975, 1.63865704, 1.61038135, 1.63603122, 1.69045492, 1.77012807]) - almost(result, expected) + almost(result, expected, decimal=4) # Possibly, this test should be re-created in test_FitData.py # Below we test passing the limb coeff to VBBL function. @@ -220,7 +220,7 @@ def test_BLPS_02(): # This is an absurd value but I needed something quick. result = model.get_magnification( data.time, gamma=model.get_limb_coeff_gamma('I')) - almost(result[5], 1.6366862) + almost(result[5], 1.6366862, decimal=3) result_2 = model.get_magnification(data.time, bandpass='I') almost(result, result_2) From a262463571229fb593ef282ed2ecf31229060443 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 18 May 2023 17:36:20 +0200 Subject: [PATCH 23/62] if statement to use .is_xallarap --- source/MulensModel/trajectory.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index 99e3f331..d4502a22 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -172,8 +172,8 @@ def get_xy(self): vector_u += delta_u # If xallarap parameters are provided, apply xallarap effect: - parameters = self.parameters.parameters - if "xi_period" in parameters: + if self.parameters.is_xallarap: + parameters = self.parameters.parameters keys_circular = set( "xi_period xi_semimajor_axis xi_Omega_node xi_inclination " "xi_argument_of_latitude_reference".split()) From 6ec4281c8e026869917618e007b5691df486fcdb Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 18 May 2023 17:55:53 +0200 Subject: [PATCH 24/62] _get_shifts_xallarap() and _get_shifts_parralax() in trajectory.py --- source/MulensModel/trajectory.py | 82 ++++++++++++++++++-------------- 1 file changed, 45 insertions(+), 37 deletions(-) diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index d4502a22..eff9d7b9 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -152,45 +152,15 @@ def get_xy(self): self.parameters.t_E) vector_u = self.parameters.u_0 * np.ones(self.times.size) - # If parallax is non-zero, apply parallax effects: if self.parameters.pi_E is not None: - if self.coords is None: - raise ValueError("You're trying to calculate trajectory in " + - "a parallax model, but event sky " + - "coordinates were not provided.") - - keys = ['earth_orbital', 'satellite', 'topocentric'] - if set([self.parallax[k] for k in keys]) == set([False]): - raise ValueError( - 'If pi_E value is provided then at least one value ' + - 'of parallax dict has to be True ' + - '(earth_orbital, satellite, or topocentric)') - - self._calculate_delta_N_E() - [delta_tau, delta_u] = self._project_delta() - vector_tau += delta_tau - vector_u += delta_u - - # If xallarap parameters are provided, apply xallarap effect: + shifts = self._get_shifts_parralax() + vector_tau += shifts[0] + vector_u += shifts[1] + if self.parameters.is_xallarap: - parameters = self.parameters.parameters - keys_circular = set( - "xi_period xi_semimajor_axis xi_Omega_node xi_inclination " - "xi_argument_of_latitude_reference".split()) - intersection = keys_circular.intersection(set(parameters.keys())) - if len(intersection) == len(keys_circular): # XXXX else - orbit_parameters = { - key[3:]: parameters[key] for key in keys_circular} - t_0_xi = self.parameters.t_0_xi - orbit_parameters['epoch_reference'] = t_0_xi - orbit = OrbitCircular(**orbit_parameters) - get_position = orbit.get_reference_plane_position - ref_position = get_position(t_0_xi).reshape((2, 1)) - positions = get_position(self.times) - shifts = positions - ref_position - - vector_tau += shifts[0] - vector_u += shifts[1] + shifts = self._get_shifts_xallarap() + vector_tau += shifts[0] + vector_u += shifts[1] # If 2 lenses, rotate trajectory relative to binary lens axis is_mass_sheet = self.parameters.is_external_mass_sheet_with_shear @@ -218,6 +188,23 @@ def get_xy(self): self._x = vector_x self._y = vector_y + def _get_shifts_parralax(self): + """calculate shifts caused by parallax effect""" + if self.coords is None: + raise ValueError( + "You're trying to calculate trajectory in a parallax model, " + "but event sky coordinates were not provided.") + + keys = ['earth_orbital', 'satellite', 'topocentric'] + if set([self.parallax[k] for k in keys]) == set([False]): + raise ValueError( + 'If pi_E value is provided then at least one value of ' + 'parallax dict has to be True ' + '(earth_orbital, satellite, or topocentric)') + + self._calculate_delta_N_E() + return self._project_delta() + def _calculate_delta_N_E(self): """ Calculate shifts caused by microlensing parallax effect. @@ -338,3 +325,24 @@ def _get_delta_satellite(self): Trajectory._get_delta_satellite_results[index] = delta_satellite return delta_satellite + + def _get_shifts_xallarap(self): + """calculate shifts caused by xallarap effect""" + parameters = self.parameters.parameters + t_0_xi = self.parameters.t_0_xi + keys_circular = set( + "xi_period xi_semimajor_axis xi_Omega_node xi_inclination " + "xi_argument_of_latitude_reference".split()) + intersection = keys_circular.intersection(set(parameters.keys())) + if len(intersection) == len(keys_circular): + orbit_parameters = { + key[3:]: parameters[key] for key in keys_circular} + orbit_parameters['epoch_reference'] = t_0_xi + orbit = OrbitCircular(**orbit_parameters) + get_position = orbit.get_reference_plane_position + else: + raise NotImplementedError('not yet XXXX') + + ref_position = get_position(t_0_xi).reshape((2, 1)) + positions = get_position(self.times) + return positions - ref_position From a263d5193c032525ed3a12b35f6620c7225b5cf9 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 18 May 2023 18:00:29 +0200 Subject: [PATCH 25/62] blank lines only --- source/MulensModel/modelparameters.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 0847b80d..8ef48cc8 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -447,9 +447,11 @@ def _get_values_for_repr(self, form, key): full_name = form.get('name', key) if 'unit' in form: full_name += " ({:})".format(form['unit']) + value = getattr(self, key) if isinstance(value, u.Quantity): value = value.value + return (full_name, value) def _get_formats_for_repr(self, form, full_name): @@ -689,6 +691,7 @@ def _update_sources(self, parameter, value): if parameter in self._source_1_parameters.parameters: setattr(self._source_1_parameters, parameter, value) + if parameter in self._source_2_parameters.parameters: setattr(self._source_2_parameters, parameter, value) @@ -1844,4 +1847,3 @@ def as_dict(self): The dictionary of model parameters. """ return self.parameters - From bb70fe42ae250e0cbd34502c807db32ab93c2405 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 25 May 2023 16:03:49 +0200 Subject: [PATCH 26/62] adding empty lines after if-statements --- source/MulensModel/modelparameters.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 8ef48cc8..b27b8a6a 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -490,6 +490,7 @@ def _check_valid_combination_1_source_t_0_u_0(self, keys): """ if 't_0' not in keys: raise KeyError('t_0 must be defined') + if ('u_0' not in keys) and ('t_eff' not in keys): raise KeyError('not enough information to calculate u_0') @@ -505,8 +506,10 @@ def _check_valid_combination_1_source_t_E(self, keys): if (('rho' in keys) and ('t_star' in keys) and ('u_0' in keys) and ('t_eff' in keys)): raise KeyError('You cannot define rho, t_star, u_0, and t_eff') + if ('t_E' in keys) and ('rho' in keys) and ('t_star' in keys): raise KeyError('Only 1 or 2 of (t_E, rho, t_star) may be defined.') + if ('t_E' in keys) and ('u_0' in keys) and ('t_eff' in keys): raise KeyError('Only 1 or 2 of (u_0, t_E, t_eff) may be defined.') @@ -544,6 +547,7 @@ def _check_valid_combination_1_source_mass_sheet(self, keys): if ('shear_G' in keys) and ('alpha' not in keys): raise KeyError( 'A model with external mass sheet shear requires alpha.') + if ('shear_G' not in keys) and ('convergence_K' in keys): if 'alpha' in keys: raise KeyError( From 56fbccbd38ec6bc1915dc91c6a0e9dacc3bfbb29 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 8 Jun 2023 18:13:08 +0200 Subject: [PATCH 27/62] adding xallarap parameters to documents/parameter_names.tex --- documents/parameter_names.tex | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/documents/parameter_names.tex b/documents/parameter_names.tex index 46234ed7..4cec7101 100644 --- a/documents/parameter_names.tex +++ b/documents/parameter_names.tex @@ -12,7 +12,7 @@ {\LARGE Microlensing parameters in \MM}\\ \bigskip Radek Poleski\\ -last update: Jan 2022 +last update: Jun 2023 \end{center} \bigskip @@ -44,10 +44,18 @@ $x_{\rm caustic, out}$ & {\tt x\_caustic\_out} & & Curvelinear coordinate of caustic exit for a binary lens model.$^b$ \\ $t_{\rm caustic, in}$ & {\tt t\_caustic\_in} & & Epoch of caustic exit for a binary lens model.$^b$ \\ $t_{\rm caustic, out}$ & {\tt t\_caustic\_out} & & Epoch of caustic exit for a binary lens model.$^b$ \\ + +$\chi_P$ & \texttt{xi\_period} & d & xallarap period \\ +$\chi_a$ & \texttt{xi\_semimajor\_axis} & XXX & xallarap semimajor axis \\ +$\chi_i$ & \texttt{xi\_inclination} & deg & xallarap inclination \\ +$\chi_\Omega$ & \texttt{xi\_Omega\_node} & deg & xallarap Omega\_node \\ +$\chi_{XXX}$ & \texttt{xi\_argument\_of\_latitude\_reference} & deg & xallarap argument of latitude reference \\ +$t_{0,\chi}$ & \texttt{t\_0\_xi} & & The reference epoch for parameters in xallarap models.$^a$\\ + \hline \end{tabular} \caption{Notes: \newline -$^a$ -- $t_{0,{\rm par}}$ and $t_{0,{\rm kep}}$ are reference parameters, hence, do not change these during fitting. \newline +$^a$ -- $t_{0,{\rm par}}$, $t_{0,{\rm kep}}$, and $t_{0,\chi}$ are reference parameters, hence, do not change these during fitting. \newline $^b$ -- The four parameters of binary lens in Cassan (2008) parameterization ($x_{\rm caustic, in}$, $x_{\rm caustic, out}$, $t_{\rm caustic, in}$, and $t_{\rm caustic, out}$) are used instead of ($t_0$, $u_0$, $t_{\rm E}$, and $\alpha$). %\label{} } From 33752b695a2f8b8dff17c55d58875800b0455ff0 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 9 Jun 2023 15:24:05 +0200 Subject: [PATCH 28/62] parameter_names.tex updated for xallarap --- documents/parameter_names.pdf | Bin 84450 -> 86783 bytes documents/parameter_names.tex | 10 ++++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/documents/parameter_names.pdf b/documents/parameter_names.pdf index 929bc924ce762ca9c5513375da6f605821c081e0..52d30d3a7f3ef7dac758d3985291d40043e4d161 100644 GIT binary patch literal 86783 zcma&NQ>-Y^wr#m=+qP}nwr$&9d)c;a+qP}ncAZzLlT>ow$DLne{Ewui_q0i>AR6D@W21NV+x-<~fB!&3zebPesKc?z>5Q=dwxwrKgP z5XOFr+q_(DxoXsjY-=J)=)3O>)LTdl9eMveN9Ith8RZN8G3VrYmJDXe;^l(})79pK zidvj;X=jS6c+}|lmbU_H_NC+qu!-)Gx7>sCiFR-JxzyWYFh6zcl z<4`bcL6kk-Y~eRE2@3Xld-^5mFW@ME}+j?aPSqyVuci&nyxZDIUE!x4o zS4KOJ;DfH389(Z|RYOPkwM(ii7} z!Gm%6m>!j^d=l(PbYZ+I-GGBSbT7wQh&z*=TJ*ET;?>ue!@8>#HSrV#zuJf3kjqYQ zk-_#+&^q%LZ|q{CG5D!$ODUB~g}!jS7+Nq+6EJEhDX7+^gA(g%0p$7!DcFT`^)?SM zKxRvFNumxe0j_vrl%Q#ffM_ftmOEj%QV1o;sPj;E;aDaQq3j3bqh2$yMQsAy6VO^D zN<*XUeTEC>0{97f*A+#u!UrodW1vlZ$^MxOkmaELWo*Jfg78Z9r8~EF-B(ch&SP!I=||FPJr8>(UJq}Dvj7p14MDA}@qo|S% zE5W$L zYN4wIPW?-%Ix=h3Vy<5f@ho8=2W94T$p)hK`l$E#V3Ch{E@6JpW9SPK|%}ujA zxsfijEo(mE4yC%AxCgpEpML9#s&^IAr6XTy_H+UNgwL(G?^6GYbq&`_Dl_AXmU z3+2sHEciiJs=8xFDC8K#DOi8tLn(*Pbm;;eMXVOzO9vF!7iQ`g8Cz8U(71f6j}CtD z_wURgc~I~6%ieAWZUFk?4yrZIbDU7!8N`eHN_gWpvt=WmCBm)Bo%i(2LR?)$?`~9d zi7jR;F8IKo2$v78-7I8s>1=@0oXT~(Kb zycS{c2X(L>wwGQqzK$BnNVC>waAz*6+7F7>C=JXrz3u0@?uqFYZrx*+V=o>RMHei1JED(SPq`8Zrg}4pvqxU ziW#o95k#jv?km1VZ9{_8gUn{}9Sdg+&a&TA#Y=J>1@vMdkRPlXsDe#R7ln-!=73e@@U42o*(r0+l`cuu~uE2FgQ+xDwW9R6j=O!mxA0H2+YX0>5XR9M=ps+u> zgCIp@3__tLy{ovTEhS`L05yk(A!OI`4QV~!t^)%cqbJSi@CuMV_5N;ZalnB7nW8-L zlk(q-qA*R}4S@4rL2{lhw^gAYY+fG}y20vsz`W=-&w(cNUVvJ0I??RExRQAC7mogN zQ9>Df4-TJf$3kUBC>rxj0_d;$u6Nu6DPg6du>sZe$rcVK_j{pDg=aHnxXK62lvl;O zH_!6V?ktPUTzkLYf7)g0to+f~aSz-=O~g?N5cc%_Pc|9$shV9k-Wx-m&v^n)`1vmx zyJ3RS_a%iEfu|6AU!LiU zubSTxM=^%I28UQu*p}9=5+g%r<#u8ov#n>ESE;oVZBNgdYEee@r{PWfFrz62gh$WF z$w+i|U$MY=JF@wDXs8d|az}mLv{P>P8o|cC%9y}g%FHl(yw^+0P;&ZH>;0i&qs72) zgOrE&qYKo({C);NI#8x|CjTG0{xkg_?EQyy|AT+bjLZ!GTmG$R>&G3nBKq&iABfW< zG=0lc2`Ug=vXZqn~zCNzp>w4Sthi8l0S7M^1|ow5&Q z5dQ2O?co1TFGn*bQjD0#%`wkN4!%z_h>8@N$5n02J>}hYWR$6PPGnYh>N7}PeB<)$ z(1WZ!b+_wNP>+1)iTcf*&in+Cr_TH(uS`+xv3Y84|2@6~-!lT@i()*}q?0I7jh&6{ za8Y04PpP(!)@}3h?D}>aGeh~?l(I;MWM7CNPh8t{bbNiFb7>EB;hUkHTABB?5wkOs zav&}WdGmga?d;w44yih!X_mBRGF+-}yjzkn3nK|*#wLY0XOl2SI22j9Fea~?tYWX= z%;iBs@+75}0pyya5roTWaQwvMBd1!74t}^ZLoZLT1e4~|Y%<2t=d;k=bWgDNs`4F~ zGud~lPq}KEyB^^!-n3FJkpk_HyzmT!WthXd{lxw?R^PL5L%DWTrS|5aQD>ve5Gc5E zqb&quk=vaXM55^gjCz72_KoX`NM>5hd!b?_knW0y88nSwLDimewvO zA~@yRw_Y?3v}W2b01WhI!y3&AAg@{i?Xlnn$|0|d$%fb~z6LsV$EOK^TX2cx6NfBcaZhh@P=Y8P_kiKz-m-w#X+sVd5$80S<96f0RAse%c4k4JS*%##-mr>bhM zc|HvA7A%aMj75WncZ>RLcux+`5P|eAr(24QgER7I0Lwk)Jc+_qs~pX;Es zD)Upg8s}D_;OsWS5^lo1nR>rJ?rsuk%YeGM_p||tJIU?(cdslb7vx`O3&Vq{U9oy)s;@m%#8{<8X;>^Lub}doa%J<#1R%o^(w;2sgIGA`yCRY+ z-(Nd84LifgaoAwPTV~Dn`ymEHzF|Y(v7uc<7zXjekp(0^uef@oM~j4DwN!5tso&ejsnyY_-7u7RxGX+stipC88x3RdOVaU$2Y$@71nv-A8fno)$aOw zIqK7?9{*P7zA?$mUh-AlXq&Q<10HSTT-&U0csr@7jtwN2^(+kdFP^)XwbIJN_XMfhG5msD|&$zV~!38TAtJ6DK1ZV)Sea>a=wETbaQ*I+He3t9}Fp&FWDvoNwO+kR8@aHt;c6g`REHSA%AjTVQ#y7lvR*;jz< zc!|JgW5xJYwApWAV46C+8G1ivuBUdrfKLzYZY<&OB!CZGqZVWuL~Wl-ei`-W=+*>W8q16K*8yq zO$x^Nq&~afXp@7Ad>9cx8?GS;wrCX@wFCgT zFSakV6(MI+^3c8*wCY7B>zuBN5N{j!sVUB{9V)>xB#I|d?j>0a8O_vHoGO-G4B&`Y zDoldPwsGFJV+o{R04+5w%U5>rL+{>Q{k=vNdMh+HPI(!x7ua-w!8S1?Kq8|O8yP(Z z!7u>j`dun}3AJ6$Iee#QBtWE43mFQH_VeKovnHcS3)sHUaJ*3bimPV?hY0OoHOKo* z4>M%i_UiS8=2@`;ZIHeyY93AC=Z&61wBEXpw=)r_nBcRBxSxdd;#9;k36C!k>iswE zR;+AsJL``~ zxv>(ZdnazOQr&}843ztpX=hcI59Se^n`i%=Xu!#Wu_K_;a&@0$U+w^Ey$SL_B(UU6 z>?((W4QE2M{9rq8XDZ=Qk4!8O6!EKR&YgRTH0`Qqpe6Qu1W1rbT7wGp`m6R>Nrkh{ z`(j<$&9kO_O6M`2UY8G^Ude3-Iw#DaB>tAWWKT{VgNEimh%HAXrjBt#2 z;b$H}!!|3saDs6AzzfS5mPFL02?-kc!Sw)!17G+F7mF2|FtNMEa2hzvqvvZTd+kci`8J+NGt@6c8K{HA)LHWNAfdd{eSg`T}W}LQ}-?kh=5+nro*e#O|HUwK)=YKKH z=?%t+9H3`#fxfdv+Xun)7HxlBQCzm`V7(U`tnl%`YbS(Zs-WuQEV?O%@SOhiV?8|Z zOmI?6oqZ>xf@H9+4X3CSUrMpJ08LY8Z90w+QX4D`L%=u#V}mwOv$)fr*<+lYf9Bae zWrHFXK^str0ykwA)%IFaKQZ^yjM(5OQtK0C5>E+eZMwA7RgX@toGW*+@A?lgg;H(5 zGJ`9cmD|#u&#c7@jnd@txFEsLt5b+M*Br$=J15~bN%o8SQxY-w^0d{hN%f~FL7WOA zd914$MvZ9kIahkA)1JfL6|bX*BULa`0w5^Ma9^Ekejl|Kt2w$knQIfl*Nz0^zw#p?6i1$D^IXsL*zH|>(t zqu@z!r-apmRbj!LUo$j%8;1{B?ngE-*`Xaf)9EF{GA_6vmXw<}z$;-pWYk8CC=%lg zys%fpt*jLREmab5I6OX(Fb^?2z@p9wxWFeMJo12ZQ3YL5%T>JX!Rg0Yisl$yCxzOtB_V-s%r^Do~Y&M1uO+STM+|! z(<@r@1~ilME1=BdbjH+)Cd_VhxSU->;P+y;!B&(pL#PP-K(2Tk`gcg$Cn<)UALO@JWdU zE{rz}p06iy8h6+5pmR%Qv(PWTpYRm}uY>38} zadq*xO8KXL=?}0UCe}o0{U!0m1nT0b(u0%h@R^sD!_0CYBjdl}DSl}u zX}#CD;qN&he?vy5J)nWgvE|@c;tt%^*;BQ8TI`xsQstLyDVGT~gxwl8Ipo^srD|?Z zqq{3v`x&@Avt9ZPxdH)m!RU^+Ziq0va#JuXB>WxL#vp=ik6#;Z81jtIb|_2nKa&U( z>;Fh1j0B8qjLiS-<(LRKIaxXWyZxuP`|n7=$jHFN`M)geVwyo!vNw=uqpcl+gt1_6 zZ{-}|;Vkn5N3qUF3ERoqk+*e$2Y3Y}?)PsIwuSD+%}!^hd;a=Xy`x$(?bUB8l~v8x z3d&aJ&5{~J(u0o)V;R`!+~f=cqAM$j(Afi$lEQM5lCXnw^}u18z<sw&2FS7r9fG}v&0d$0ffU5mNfQxYi=nSCqi3Lz0ngBU@ax4Iw z!7YSo`U%p{{7Vc_S^@{MLpV9McXl=c;S}7$qgptSsrzwZngA^V^9j(|<4O13rvO;< zfzRt!*BQ?Nx!4TO^Wbd5QKxawfq-~0uLsZw#Ltz(tBOd+LGN9-1hf@F^KU_%zLTmS z$pcaE*Bk(Ju66v&zNkOliRzE=2Lzy@!-J9M7m%+lVC#Xlf&nfcsjeB|F{lB~Ek3d! zn!|*04+HH4>UrnCBksj71OmE~$pGG$5A=ToX?6PL7$~?=Z2r2$WA`j`M`_M1D1jXv z05}KpG5W5OK)V8Ha!+q39@b7aIfb@yd;Wr}`(snp`nKv_To316LAbkuP)z?0c`_J& z8#IFr0Qlqt0r3R=0LC!^9_#B5-hBgN%aG6E$=B?kl;L}Ky|YGM z^*vbt4EV1Me8^W97NH(f9?p5?fxYBq?))MF9_eEbg1q0ESjCfH1OY_#D|+uCE;U_e3)6FL6n5YVk{E#zdv%B)!RVV^G1r0%%$V7^1QHPoBzm-QI;Z zfpZ735GdT=k)KjVCO!H4$ZMM!zCA|^lVG=6va z?D+fu=0`x!BOY8n++gaF{e`Uu~Y*~>X_WK}!0N~dA3Eq?)@%;P$urflc zqNbK){^mcIc>aR_JbDBO;Nw9@w^@dTNY-2F+HcfjP&&A`R>LVC9WUv9?OGFnlv&oz zJ0P1{JZ`3=Jx`cEI{4^3mAB+rEzk5dr#Of0DmjMC;Du#)c_y5>n~YWS^}j^4YguX1D^%n4``&=sI8m9Ne#DJK*N z3lY40>uW)++3=S)4!a0EGkR_jkeeTNIfz7QbHp^8kFbb$d$8PH4J;fG>*5-}bORE# z_g5ixDPZK~OyY%7(OW)WjPPD{-5R$1xO&?TCM0>&>%%{t_F}HCS^ydZe7w5?QDCfhXeG}i4icOK)yfr! ztc;Y19zGSL;lnJ8M1-PYz0|aYH=Wh<)`ff@t5n(v=K))>O6uLu58V{UetMlW3enOWwnbSO|TXEU0Qm zVf=2-X_U*_gn~0e*!Q0$@OzziAf8H(y~U=Nur%o49?z_DPa}by`4VB?W1~CZAXg#& z^CE4}`274x_bYm1YpH0FFWDMlN^>{J0+;8}bJY*Zs9uUfBRPON0djCD<;D^E6mY`| z`>0}9R6`TUtd6ad>_#iSHL(zKf>r2G!HK>7#n{Z&S78@|v% zh%1?Wv}v^Hofs;C_g_ifW>x>w=`AegGQv%lY$(@_^d~&58BW#T9|DTl7r_dJ0(`o@ zOqE9lt%uijf}FM+caXv3=l|xzm$56DLX+e_WhXr!I+C`1RAZ79sScRNI$bWOV`ct| zoK}2{c3UmV&xWd0zPeV_E5-TCzyX8wL;Pp!Rhc5tg9S~{3wG5F zn^o4v!`P{-sNfy_vNPxwOV|udpQ0gWF8)&b(v--hBeMzL7QTZVljEuRSe!o>`JNm~ zX-t0KDeWA@&-kEUzwGXrA-VwX=(G-FtN6T4w`t`|TI?B?1@d@cHLrBGX6h5eRg%K> zWfk;wE#6CG`f}85%eTZ`OgXqUK($4r)>sWNFjJG;^Q&#ZS5$28mm^F?l<#5E80_xT z261BplDol!HQ_XjRVt9UTOr3`VC>1~zG4aBW+r(D<(dRoS+ zRq*%NE)uhbl4630s~1<^EAt&UlFtkfYUUIem8lm7#Nde=<)ZC~9%@$|@Sr;fAZte9 zCkeX*ydgZ{bBrSM<#o+<|WV8iV)c-+|SV2H3)VQIP2b=n&>i#+(8VA@<`Yyl`0xq&FnI} zQuO2;P3jJk<{5?OY|uM@+q|+5(w7K|2wS4J4T`lgX3^5zu5m^j0$SeEU{ZRP zre(nvbsjX&tcpb?gW#_bQ=K4rzSTB@Ln!>#Lm8In>+s%y(C@@O(he8_E~s1#JEnVi zMd$t{5$)hNY!i?LQWGHpz(@u zL*4E%cq;cw{u&|HPnn0TQ(iy*m=+$(NW79(P&-^-t-S(1L%|=(4S0dhuFSvN*2bRA zW8vYwn$See!iqqdj);6Y>_@%C{dS-K@{l+DXS2mf4d-++IBx%0k3VF+P^_)+bg(Vf zl84FU&=6mdvf!L=MnaiA)k7>UblN6!L|l&@9lhdc^0;v-vllAPtR|}S*$|@lsg}CO z<*c|@%j!E<8s8xbUX5qR&E0~Lwv<)@hE$DX)7zTd!kwwFGG)EH3xFr13f(|PMzE0Q+At=1cF?&^>Sobx}yhe;l zC{u0C8i}pB%YF`)xP3@Z1!S@_w1~ss`>y4U?QUsEU_pjf_MYfzxxw|jf2I^^*yQN! zu*JT%%@8o{IRx)B$4 zAx4<_qAxc$XyHFm<89^HGoN{Zs6i-4&`0wSZ6te4x_K!Gf4O$ViUa?U z9jyQwWe-?Wkksp5OmWb0K62SxBlK7l*(kNsvNaMEXusU%^(XbA&AE7B2^>uM{M5Tv z&9|QrHZ#!=nB!TC$V8d&nM_Z+v#+@jAp#Z-r9i<*IDoChVZCfN}H^91W8L z?aQVT5(RdcMa`V0=Y)h(@}@;eeM(*i#8MfocC-da6G+}DWlIvRP-3h} z$c&`d<_OhA;})^SX^?cl#o<&=kj)y$S9}BVz37tzRC)Rb*t)hDrCe7@ZA;Z)-l6&W z$AkaH8Ce5l#ZmgMxzxl~n?t+i0o(iC=inwDmg}i751&!4+-ILPx|22ZY(j36lZ~VP zxmW_+>cdDX$h)aB)N|!n*82p;46;|4ydS8zG;2Y*6I6vvQB?eQZ*K|7|HRH>-t9Kd zaHqvO?jo=9nsH~lFPW5~Pnm9iO0P6aVy2Pe;JaR$%Fi+>cs>Cb_Hww;ayGQvzN~l4 z^E^wqXm|-+djhV4oREDH2bj2HJ;N^pC zwVQ17BplMur9JwG0c@t(-n2L1aXHSVKTKhirHHaGnW58kr&+<3bWyt6lB$|;E!Z1= zy%n7gW%-pSpL{J}FjooptQhH4P;Ohv!_|?KuQm^JMT(kSQY9iAU%t1xvi9Kl)C}zH zhhc-6tIb=F&rZd3Z2`LP;Dwt1dj?NzY*2G4fw%E|KAr%$5XDcg*v+dRAa=Kb23RdS5rVXl5_c z*<_X2XRyYOeVjE6DUTfjM2K71oj+rx%<3T-;Q=74zESoCbEEi=gwO3d7a*+`?mN+; z1YkuCS4GkS3{-@ZJf+X7>XOiHTl48}i2`HLibGOynKLvPuyZ6LH`G8gW_0M!Wjz9-2-aoFckV9_}0VG)Lao5^Dg+mrv-;DJ&FZ-pb&k!LLZ9G%53U3SE9FpU(^(FI>`d* zC~A{=ZUw4=YB!+QAC=Q7VffEi0S@+SeaK?dcCv&bS}$UYsre=!Dbw^fItihvedyaT z@!#pXu4dMSGX6IWdCp;I6tjAn+WU8_A#IUenQE^?tRsD>8>q3go0n`{^aWpRvmxw+ zY_7Q2GUpB6-U{8n)J&~b54UP>1_v%Uy_!x_my0;ANwuD+%q=<#s?x1?5Bj1OCw_G` zK+)h#3Z`OM$_5;sOptCXGyidnbQ;rB$ZGpGEKLvL-n|wY*<5TqYJZ74c6o--0uE=- zKgjjD5t2YfqO+b3_O56n*I5hslaJUhAxXBA=>k`y+$RgY^-SmaT=zEV6;V~FORO)k z=L}0#%o0`A9R(c0<)BsSNYM!g;y*Fuq&U2~j9?+@Uc(mx+{F+vBT!n%JgR$eMN7Ck zzIJ!n3rG1wj7Y=f;BI~m6PmPRRPP;K%L>-xqpfa2n2Wy3`!{OKi55MriMct^@bb`*J> zOU#zMKElDJtO3x_XI_%RiL)Nv-o~7mEhgRpRbsv^pk!suop$?m8FD9cqNN8b4V;y2 zDz9que1wf{QA$Q`BZ9y9MK;MsNV`0ZQ^qPv{TYhiZ(_pCxgRWk$3DC8!wGZ4TAbTcZ6GTA)l^&Yk96RFJ7K3-7*9RL<^Pg4 zVZ@J}==r>Tz!H15ixYXbY?T_;X)NL9owXilhgffttuiuT+Bqkr>gb79kmN=ALk3?f zHfcM_A~LMAs(Jd-q|nho;PWMKY#~P+sDXpAZM46^;jW#;sQCaLA@w1egL$=V zu->&?Z^y&7<~PIfJ($Tv)>w=#8T0tt9`gM#>Y|@Ls2$~t3Ixh?A<55Np@$Z}k> zqKiEx(vWI+yDoKI99}gkk^$>%SPM0>^&2S9BL8zBL$79p)_)kH)IyyZlnR+{sYZU) z*w{?CbY@luGMx(-JlPD?XkfJt!3+;B>7aRBWY2+F9xeDR7<|iaJLT zdHo#YeveTiJ_{>>QRA-jrdil#A~3b z4oCGA)&3A#(_3(krps`}>9_>)6A)PBYv({Hk;;|WUOras%%Ueb#N>iJgF8BC<__8v zGhSq-b28NOuP8rJ?)%bky(@G`Id>oVx=FwVA*AVW$o2)iDc@nq4wr1*yu2ZruV*3moDyIB_p(Q^@If27`V z9J{LI4yp^|{VH=}q(ao6!fw}@0iRo8eb``+s=`us8@SGAr>7`26Iv#kTpTQFtT$q( zP_}uuP;C_$Xj@djIHBy8skY}b5{KA^LywpQVTu+Mn;9g7A_Tm<--@HjS|y}sLp^%H zP2yq!ok$Y(g%C(Usyh$K-J^{^<&*CB@h&v)nVl=uA(xI022YO%1@rcM8gv1>FH}CY z>=kA?+!#Tdz%Dft%Sunxqp-pKY3eW8%kB88Y;HXc2eI5_O-?bfU_OcwN5q z9wbKHFLxs8D_P6TxrBN*VjlsYu`UY7bD(z9EY#5Nd&>}?1Lf&9oElGaJ2ffleO2OA z7U@_zRxL;4E(lz+9Dis_$Y+k#4rnw-Bjov;i^%)xqgC&W$4d2x8V#4pKVsB)u)Vne zA#&k;jO|?n?@Rw#+DguMdHNcoU8Hfw-u|%kCKlTKI+Gaiui~3(t4iP%;Fl!Idw|ho z6r-U&b~(|)k!|_LwZ3qvZlH0cye{@s$rksbhIE>r#YBCkl~qq^5**H~Y|AZ6}HOUFxEnM%<_-|K_iL$f-o^+1aq5?{h=N z{^YzIfvXx+>`uf8*)Qc+AA2kHh+q3GSfQ+n@|rcOj=QCeN9)K=L*TQWG)U8aZynn& zs)=5Jr2#R{^`V zO!B2``uZC@Y!`iN>`PIura#qpg*Z^I7Tjt3l^_{nc5vO~T<)CE?C$YYYWDKVN!ueC zG|ycc!0gOA!9F^@p4_LO;!Bra&5;)jiWc1{6i6O&l}0}|SE>v!z8*#pf+yXc#8+R) z({jt`+*|w`UVbc2SBA&hnYrZ0Gdsf}0ee-zOYm6erPGlEvve=E^^)F{pyxtweYcsJF6rioLbhtnSZ@pZTbtAWe`}<~#g><S=;`^1m2P+Zkzu>AnCffjfup_B9l2<4;EScYM$k}>i1i2#yf|w~gc>WeMA&9)T zpjQ?|tu;SJ&~3SFQD~Qzi7i|ys?g?e;tBpiV)A9?+0!qm^^%6TR^Iw=C9Pzc2d1p7|kfeCY z@$sv3jkYrXdXbvG7-gKGuC%Ibv)^b#Z<8iPkhID842ISztLA+mHZoS4AH|2JpI3g^ za!NStARR@GS?o>SjI`Y6ytH0cL0av$^Y``e3??F1S;9F2`6J6HJuk2q6{jS?KM25| zVfVVSMi%2e>6ogRcd0D)4xH&q@GStAAHIe1H-vask|0I ze)gH=j@ia+gpXSuy|u1vu7ZU8YQO)-#X!DDXf@koQ;osT%d?X?ALG$V8`PN*Ol7c& zMfMIYnH-o)tzg4VoeJegnLColuVkTS&Ym992hfrx*G|`#ypy?CoR+!#Y2n)~bR=#p zCn0kgV;9YSzMJDdDL}X})1I?KI~`}gnRca_$egk_1w1SrtAG2Ox>$_2;)Q0T>m9_u zQ0d5Say`9|+5}mbe3mP3TvkIrL3Si4H{Y%2S!^81WXbL03Q@oGTaHUq)f$+REyo7| zNd&w^eX-7&i~~#A*i+lp%W}B95l72OD0L`wSzJ_M`?;Lcto?(4;L7!^<-V7gwo~m$ z`%mlPw(v@-)TiGIpIjwtG6$%Y1b{xpG{kLuCn@L=S`=BL%%m+J>g+}_z;@CEUo--j`6;UGei+ZCC`=jnKP;`3k)V=42GS_nJ zDDh<4BO*Wmg__|9Mg-=vKMR91AueIIuTz2eCkY0vZz}wH)p~uOia24WodLnu<17nV$IrLIEp7cLziui#AW8lD4t5)3>a>mOM?qqI8a~UytEc{p& z%`1+AH-2{4KToX5Z0D+85`2~?y3{&-7D!`>VCCPCe7&Z7-`@L@$yl@_VN&i}9ES-pX}a#I@QC-WPD0` znB-ZA8K+x4;hY;^|5?dZP|{KpQE%{fVz2hqMp>$6k@}tJ_hu5J1j7qN{4+G8jMOQ1 zBQ9emuAbKVO_OpuKaFtfR5e|Qw~H?dAf5vY zA)Tb+kCVU|TQQnlbLjy?Uh=k_aMU-VE%!}|Vv+#JHY61U9g0p90Y@h5258|8QmIRux1FF?$e zo`&d_(s0Wklz%u1`1#`~MG#l@kA4%__E;gSm~E+_k1KeFVe0UE)EjT1s8c0ul)qtT z&TpYH#K1dtJ2|&yD3idk{T>gQh8&wsY~PswzIsxoPKB%}O5C!oL`Q8L8)WnppD7r3d$=2Q5P6HEI$B+a>=Q04+uyb9)_>QN5o2K832nAx zzH(IC;ctBzy}`nACM9_NdZfEd#GvmgL=IIM5(>*ob6}dlc>7g?8FiaPg{ zL*aHzXhe7iuFSTtRw1jqzD9QzE-kJoIxbJN@nbcj+0qIHcAXn3ffSBWaD{q{BjG4J z!epEE#qZq_Yiig@>8iG(aMY zlpujSIP&l}^F$Y`6;_OkSW1?3eVEK$ps%lg8DvQ|h_++v=tLNq1Xz4{#Dz>jl>`&t z{4R=x!I}fDd&%8)SO;PS55#phlKom1ZMFz;NZpW>v^KDn0ma~Izo%SuVnjN@Odd9w zMhICe4%1vVQfa;RAP$^_>4?k_R@@Rdxqb>wvPRuKn%Ema0{XJpRl5vpZ2b}iAA_Tp z!gh%)Q}UME7tP?7ps*CKMC92EhZhGsRg&k_Yx_9VAvO6zXB6r*kj45?TRT`LWZ#Yt zasPW`dqudm`>C6B?Naw*Cw=e-b)#^D?*>4hjgJ5vT1FIMEIFVbU%)gfdnJb%OFIvx z@vYnSeyW76YwoJ9RTs+Gk}yKsq&wq7Tk-qmd@y)tv!jzBx^__@8eHS(@mg{J{Th_R zVgY~le46zWGcP^dExtfMykPHS>uyOPaUDVsLZdT#-v<|)&`UR#zhLQr5z3JWYkO}w zA9lb7g*F{R3a;omJIOq!_5@y%HC@*_9x{v4-4-1WzO&uL6dcSlBa$#>abzhqFE}41&`KSJk~8nktWZ)&oljtVVW`7KEVz8f3_!9Bk~G2Vv~E9v zU?DBTU|6J9DrCB@loE5OQR2%C-)l}Km^D=>f%E(~{V)spa+0Bed>nECng^Ruv>&Vj zXFgRhEF&Q7(QDQ%ny%JS=>VG5*)m?p>x^&zRjEF3braxo>PHgSSVZbo(mcVD!`Dfa zu|-3D7MLJ3wIC#fb8Q?7-)#K!2g0a@xY)hjk$7l=@TMUSPPT%Mr6TpBx6qyR(kHs*yP&~&$E>$r`NL>i;d?SqS^T5buNx=dP>POQC0 zW+Slv8m{uL;?J6ac8!TK7RIhuLTmCAd8t<&v#_GKM+GZ~qkhV}?ryEPxS;lCc(6{p z-Nx>tV>|(c2EWY(=QYb&v+L7$l~WG`=@G*62L+Kh*EO5l)s=N^fWRF(5Ye0&IKDJ! zoT}2I@F#G@d<|y^ZIYO#efkKh|FI-BpLHIm^DNKkG*t6myxUUy8iv=m$dm}6QQn96w|LA9n_UZUUsM`vgQ-F#3I!4;fjdhuPUSY4g z9sF4M+VrDy6h!sJmgyTNlUYw~w?JVJRv8<#vc~$WTa>ANqUQD%3I?f1j0X^81E?k@ zDXvxhRzJFk3La#y2oRSSp%V0M~UkW;E#wDUPLOAy1l*&vvQkQ(g_ zCu&D7xSirZWL|{ZG&0)(@-q-~d*|Xq#J6#Y;||F(XY1St&%MV-hLqR7U;tUADL7u6 z;70|eDQ;f=MM;oPe&Ge^d{3X#)oP)(G7@rx*N5~ogCh#z8hkqHlbrRnfSFcro)GZ@ zpAq^A@;cgPT9q=?*?gm=$}x7wX40r|$?#R#yxj|u4Bx9Cy8{FXrfhZ3D4_I4UIMn! zyYsjtmGFF)SM7^>mBF2+1B-&B%GmlWbv0z z+#VkO)UI;|SUTe+B$MIe+68%VCnbLVzegdhr2Cqm3sRGcD1@K!5g?@tk+*hO$FSoe zft@OMO#Qhx***qjvDSmV;Yu+pwz9i(mrqcl-1I4t#h2%eS@G^Q$U+m0X9omOxl2_h zH+v(7@Dz*TW!lo_8ChFA3jbGaYC+0nl%woA7}@Bm(viDdw%>^x|Er|0PtA-)I$4A< zyW9wox0fBHj$MPiFfyOSa%fXi)Nsd{C;%hhLwX?$9EQlELMEjb%Jahas17wibr~vm zb=aQv!<5*Os_>v zzsvjVS5>LgD8A{h)}XdSXK(%JQC;oEf63`bP}o7u3A`@fuRcX9$Y42uG#cHyBql9R zqZ1yFv;5oSG?j`cQ>@Qg*FCrV%&whcuvbyFqlq%;bO$%2oR6>q2+7)n-kiU{H8Cjq zv$C?5-zg}mWQ7<%8-!|5u=?pi`9c@vgEPTx zeTL2HRw5|q=%{Mhn@zJ^YYaA$o;9^WjnwM>Dj5zp;;RxP3{>m~y+t1~<#7;eVliO$ zw=|^M>JJ+r`k2ZYqK?@!Z0{cHd>BHI2l9xP=T`?#_uqm*Y}bs>O`3M|IIVs$R%U6l z)WC}uXVsc5{)_s~D0%i5d$o%eJtEM8JLOJ)Vf z94ax855b1OtpGq!TTU?r4gl1#9w;CO!^H(_9fEsI&kUA>HVkP88w~YLAJmQv65ZY= z8G!i4BZ`4SaApGz;0P$t4U~@#BtQ^=3~~Gik9bM~5D(C$kp+yh0qDd)0TL@n4(IIP z-q_kKv~B;CM;fpY4GC~~=0EVsjYD7s@7Tx&EDRWF5P~}V>nF}!k1K#{W(F(R{zna3 z6pspYK+r#MaCtci*BaI|lue`0*Z`zcgQy0;3W0NY48#cjZH18!(i--C5se!Rmv3ka z`)8~krb(bPAcxT3Gcdae0~ER^&LKQQC>QWG19;g81z-ve@eHqd0RMkn+zkMM>-@f@ zAJiY}1lDJFhV^L}vpax)o!Y{*fM~032my`BK-`0{15g0MGyaGJZVv0dJnNt~w%}|% zOJcwr$(CZCi7vo8m8~+(l9*PxfB#3X&?Q z{~h*s6>ob+QVTH9EL>ab*9y^C9m`u84J0di*v6J{J_N^T-6u(P4uRR**zN4YnVD?? zgL?Uye*YkrmEA)Xq_a6VoNReZ5wnQeA^l_zHN`0Z#@!4;6#x70V@~xBz-PbrO#nc@eqWz@=-VSxnBdL!U%_9mKAb71tF5JG zDnIVu4Ki|22O!S|M+cxyHje-R1PBn2-Zp*rUyc~4&5t@}zn_t50UAR;@1J|e+u3to zqVBH}z>)sa0LZ&L6X|-74I#j&pNbv8F<|D7pTOUq)*tSpU($OW%^!WrpSz&ateack zPITYTUl_KHz3tgA`hi}{Z1@+XLh#NU;B#NaW<0-g6$E3OTkD^F9SzVwe#kU`!&mK1 z05~@a7)N}d_PY&i13>4&ch{N!OVdv1m+qZ|;`<9<*bjq)IFx_Kyz2vS^#A31mtO3J zLxb!yG&TNWKW&@$_#t2a9R&IF0L1!1Wa|LHl|Svpzu^rc8kFsY`n{N+ULU*o0rZ)A z?tS~+->HKEIR>R0PRkBWg9O=B24c-oi%RNltcHasyeZAPa%_Y?Mb9JZCLWDWJzU-` zo}EY+pK=K*iLud28O5Gq>YK;%tW{E4Z+FOVP?WIIQpy^a-O1t0^gi$q7v+vtichY} zAr&D|xLgV;5ylPM`Ow(dZIsA`os1}~Fn*1u{CXxVLwD?pm7K0l7P^1}G5OZyQCo$} zm-b*?@r;SUWKh2{22?469ZX17EI$g(pkqALqOMEx{`5d|3bbnV-ctl2O7-UiOK!fyty$+bCvF=uqD zvif{}&0Ii*caf}QTP7|>mm8WXCT%BT>e>oynCFWGRtn8&>U@%0#u5%~z8NU{p+}|X zP*sA@g}uOml-dg=XhiIi#=0wj_%d+=?FOd?uZ711H*uy)NhGw^6jd^`56ep@P#Tf1 zM~X&(o^yzSc2Wall3o8;vj7G0Z0W@W>E@Vs#MxKsy(x_e^Yl12x0ISFxvIU>H$x(b zMJ~RCJ@K6JEV+3aZ=SNXF*a0_oXv(pc7VDhW8XdN;GQ8=*Uw7@x3>t)i3F$c=!$+k zMYT*PuSq%aic?EVhA;eR*r|tOwXx{-Eo(25w}(NLHiJkdusl9$oIT$%!?YaqK~m%4 zA?>@JYhuFbUSmc|bzM5i>&%*?C3SJ#qE5cj+b6TflTp=pJ;4EtgDZxCuX&LvBLVbg zJg0UCW+nxN0os+z#H$k`kC&0aI^Ir_jc0FD%8wM#LnazyaG55*W9JB)2*!jquP>10 z#73$KFuhdp(0!XF>zi7+#fWc$6fz4bp|SM5jXW-z(Nj~u4@DTRE67{8*X5iqYtTxQPagu-Ke2_I~vsN zF>RKgN{F#lt}}Hr0klouCYgX7O1n%!I#x95Jn&oib`QSfy=n*NNpRFPu+{9%I(vF6 z@A{-ujauamktjZriPuaFN6(o&m;ujo53c(48@iIab-u8bo!n>}bL8j-*G|3gXEL84 zn$QWeZ(Bf|lN4P;QcFc7bJd8Gw+0jy@R%4hL>Eyw`5&+)UC;PLw^3PS&Wn--7@#@% z!uamE*QtViCvz0)E7|+68!bj%RlM3{@!gtA`pg3>|4=}BJ12*;vT^Fj$ojN@%p>{3 zG&?>1SO7x>`8zD=upL4FI3%$qF(No&=y|~UC2u!M7ioEV47?Zokbe-hcRQ4m;5_mA z#@hnKhdo4KvIo1vxGpL%_b`&s!lzc1`@(5*kd>gUlnG$Z7Hm?0>~v$mdp6Zni2pqr zfLWsqo7|>5f|;RaLguSTOX1j~Q!l^dFwfRXO;&!fc)}q~FHqesjrN(aEmNZPdQtrg zm5U*%Q^!Zc2s9xsoE$@d_}KKLi6s~NKnv%|YkDfW zvL^L`vk_=ef}w~wjug>2C41UT504dYx9cQcj6O5W+bY;5om`K zIWis*$AfOYj5dU)yCgn#8WRx9WV0^KiWktE1#n7*0zCLEDnsqjd3Lw9`AU@K3d8w~ zVeg=`wZwBJdIX>&Lq(=7e_>6&ByJGl%+#Y7>y!+nY9zsSjvRB}JfwgdH7$nx5=pwB>0iqKEXd2XD& z7TwcYxiFL^>vG2qBablDyKcr+^t>@1Y!Je+0@6}NpLl?*A!{tL+mT5K$Z46qL7z84ua^?D0N>L z`li^;7Wf00{nd#fI4P{vUIaMo3@Qu7e$bNQEwp}aObW`j$}g(YoId{$O(;}r25gWq zy3EKsd>9412u{_Enmr8Q-F)CuW70)5g}UaZcEK`}<1@L}^LbFwY!NK%4A1lpwan3c zGTe0vB`F$GPZ)PBbF`AKnbl&pV+p&c+rA;@moHnO=jC$z`lfKEX98qp%Q?i@;iVpa zEo}X;TU?bj`vy&OJdWGAuZR=tx9RcMctPwODgIbYn_!FE_Hb$bkFs=TTPPoty9~kj zp(j{U!|h%;=)kYJY_u{TwyG1EzmE`ZV&h0@`&z!otY{5C&SO@mQ&H&dm8_5#aCye| z5zq2*s~4t~05u`I8S@AZj<4+u~Z;AV`SZCFiKTNV!3 zN8lFDaA1@}7^N_dxbAegQ=y z)-osD+NJP+ll{C%iSOi!iMDQqwuc`T zfY(|%!vdf{*}-SFs$ z1?KmeX?=d=xKAfzc_*eDT>%~*dEDO}O_Y4Op1~X;#rt-(EdcfQu;j*iE=$qe=+{+* zdzMHf*NWo~4Mn@z%!(>#$-ng}J9ID(kRLasYdkrw*yuu8nJLVq^?5zf0CclDY|Ib6 z{KpQ{2%+6`dIT@sNP(;qTK*MrSq?n#S)^UmG|P2fFT{$fri3ILlcV2+}?;B-(_f}u47 zMMcvBzl0mVrIy$w^Aql8>-@tLw_^C*<`8JjtKj8O)~AGjOZf5akuiT zjhE&%Ln--N8A*8qc;xHEIxbIatKhU5K>>BH?y6FKFIXT&;c*S9kWDSoLZG(!x|_Ap z&XR*7s5IF(2nZO-r^#4wgdV#M^Hv4Y%{Mf?K%UteW9!q&SJ*~{o$-PIel;INLmfE_IJ;YIiteSU<-P z03A?Gopad+$r!9Enu)WpH_CBf5g-fJEqqD8#3HR}1rbZ$s9lf5x9WI@iu>V=gQt3* ziIpH%X_Fl+rdQgtUL8>+bf=#3z`PH%pl2y{=pVtwm9txkaUyN#K_qo>ExwMs@CyUf zSkErW?cn?0I(u@JB)TBs$i%9NB z7tsa#n#d-7MuCS#%dbQ+v@onM{?H*cwu>s_(@IvL!hM4_bI4El4kpo z%5q_$k-JclYIL?|@+ADI{OkAo5AyizPC^|cW~p`Jdm5H1%RD2j4p*;DdqUN$;O^M= z;^K|xwXeomE*FRY0vc6nDKEYzy|0FEOAdVu)lU7~Tz-)RFM3V5`%XbFaAx zUIEcEDDH!~yLI9EeW#iY8~4!$rbuWRN&w>Spx$`#aI5ZGXjwkL=tf)!5-ll7PnTLj z(KO_hU3#c4z3oK#$EDqaxXy2UG3|6J8{m2nGS(94STflNZ-8Zuk=_)T#1 zr#Z_FIn6fS{u)VRQ1M8S6JCPPrTPA`ipEm|`+cN>kA!cOvg@9Xg_warz(Ptbj3fl= zUPS8H7V2f8*=rIBLD3oe$0bd)vvl&NZl7CZvl~f$UnAT*@R%J^`1FNGyfSrkMrAul z&yi|NT{jIfUzqTr&n}{2F~q@*z9rz@e&k0R|2jLD@FCW+0Q=gCh{;%uG=~mi#@_Me z^v_}qcwjBq+@2T1LH$9(Wf?}3_dJY%g%3Z6w1N9bP{OtqfKEK|A>oZmaTgqt$AvOz zk)ChBJW%1A$U^vrE8j{f9`V}vGCO5=(}F=GPRGatf{^u;4w-`U@1I&&7%#nXxG=EE z*Xk+WX&&kPnL*nrdBPe$0(ggYKj!@5B^y!quwM};3@$nKGedfZ&=^rrZQ0oK=zW!5 zKj@v&X^QGa=;)aOT$=|k4E1_^btWJ{X_z<{#}DCU_GPz@mpuxSbk-h^jKFA z#J7Y*Snw+?ClOqQke4Ll^spknT#=t_v(3LSte}aQFI6`#zffc8;h@ScfG=}7Z&|(s zsT)G$7>S|VMpG~kk=|t^u%}TSj95|uftJDER}U4 zJz!yExK|qb%DiakWEyr)Ds}8tS2kSyH1}>ct^kAL`QenD3!^`)D~%sypm|K-+-&f0OqQ45K|UNE z1ZGtO|4{BOtb<7@Q}mWWve~ttQ4Ols928P+c>uiVnG7;Vo)aU+j$kCzQ#M)Er7dg=V-r>D?Kqdxd8X-pbs7Vv4YeF<%OKONB0$_TIb zwrU*HKcmpF#p>$5}wtS=O@8|x=S4szkvGUucKPG*=ju<6;gPJJ^)SXT% z(gxcTrdxlV7z@EjG}Cvb{i9?XNFU)x`gF2uhs-oYja=pihYR(navi4?%}wE;0V!4Q zqR^$qr*tn!{fQD>Q0jBSL>2nx$4-NPI=yF)O zyp)HLXuqBAy5z7h`xUKu4n^b zI6OeuYTYE%*%Tb!c2Vc86-y9#F4?6~F%7qWK&S^;R8QPbap_D4iCw$j+kB+0EJ=%c ztfLP~E5x*LbF%eIESxzH&J$&Y5!x7Xi_`;d_e@`99Cf=R9}}CUqY;8A*C7mv_|0N> zuu!}s6&zIdSN!oqUj5--8E+{+G4N1Ana(fgUO~DEm@md#oJo2{scN;Vtmu-J)y1FC zZZFi6kx3E-ZI5-v{ghiPUeiv{@+>lU^*t@(39j2_J0es$50)LqU!_f` zWJgEupX3xYNf|jeqZ#AHY)G)+9$P@n_-j5PeW=DExw{XW3hbo7S)X1j(ajx6n$oVr zTdLa&O;|9oAD2@@QBEAuhG08sBVrTXHJ-oOQFQ5az_@mpTaxW*mNItdkD0GOO$MIrj z9tuZ2-Y>L$US*Ik)T;qp0oj282U0T3~zmed_E;12P-lN*umn z#b=PNeMx(+({oRz(~TBdJS!zlXD5p3*yM|bnK?H7^NMpbcVg8s0Dq1CxVLU%_5u3<$;ndH3{ zs4h)AtVZanzL+T}Uuvc+kuA+gvnx<4Th_!kdrxx>%nhD%D2^(z9ZlA4J(K_e1uCu* zW^UwgP`VzUErUT+&9aZ;LcRA=o7QY#FdzAO^>Kv9!s}d2fVR$iQxffO-d`T%DZ~Gk z-D51vaYKmdN{^7p%xrvD3&#Y*y0B(B{Mui0o*J&HXT&6I-$CUFg`I?uQ)V(@Bodm5 z-OuDkH+I4QQ}f)i70c1H`^}w#8|>zvPs`btk?>Zq#J#<3|10t(>)3pyxO!qY?d-%d zvC{TKFW~TJ0kcNX^>*9z%?LF=4TV@7QoM;~+^KfZt|54mD`fl*5X7YvMiMN%96rZK z@BbxVIzAP?FQ#k0Ox0wUQ7R5v4uMFxM7- zkQ7@&kQ*)3{BNuJQLUFD$%btXw~6(j9VQgIWoGN;TQN-g^_9{jg{}F$+S6giqeA#!^}L~R&2ZRWDoLxK3CB<;&n2R9*+f%S zZWTBU%pgB_B}W}pb65^43sorC!*`N7-xa-~zD8uD*e1o5JkB+}soQfLsR_nRHPY){ zJ1*gx`?`io#v>OD3Xf_so5`be0s)28J?WPjV+AJ^efvs+lB1xwr?%=qLZWyPYF6WKH(_=3@aWw&}z_lZY3x$5p`GExlm)cgQPQcK|pK zK|E!Q-i^@Z_!{;y#Qd4~v7w=oMb67`Pk zOr?0!wr?-rx*Zw@s=04ljy(1EHC3-~E(k(7+i)MKdA@`6H5;C>LhGn^@_1ST-fVXVD-&Skt;bPT&= zeD+K)sdFYH#a@-M|6+RDep+`8Xcg?XKxLmB zx&fZ=2E%j{07|e@zG3bYf{yR6pE8V$#_vPhXuc^~DW@BfH!RA2q4UuVL8N`9%Yk~% z`d<3DZ@8Rv4RA+-mD&Oxp!`nS>ZB`hpcx~}y1-H2A17vW;WB&jm9eGoR%1!P%+a#d zcvJyluMKL~FO_l3xl1T`NUX3kJ~!7FVbcYV!S1jN)*hx0;ppR!s%Ny_D&haII;PWO za5HO&%Ji>7#MlN@^glcYAizJmgl}EKDJHZta84CjiubFvd+8(Vz&!bzh*YOhKC@}fO0_@0)N-h)@0~I+(@FuJQ)m`-!rPs(uJaUGl z)3qk|Zoz2rz(1Mbc3jk%>0o$<7IFrPER1zFOCj|&qe*t9>kHtO5$I*5$iwloVMRHY z_hjicGpftqX8D)dp(FJ;jn`jA%L-;P2wTFL)wB!@&kk!V(|Qo9#!MbPG&%KWLrd1~ z3Av!>*c6Per8};`J?7+3g0yhnP2WH}S*hNuCJ^`Z*zPKt&38@pJ(N+NO8RVG19I)Z z#b)pd@@X3vJI$##KO<%qJpx9${oTqmy^?yxEp%(%Bs0Wlr%#Kz@3lWhJK%ynL~c_1 z^{Uk(+yR$#WHm*@?xug8jt)vpQTi}V;dteF(1aVKToMZX_U|{!UX)+n2Fa$ie=F#d z-3Pu&HS{y_U+EAUT91SOQ{Nt~{bgF(h)GpMX0cVpson)+JPJZ|K@6mXA zaezn9#kt2ck%ri z=FO6dCeOI!hE@~_5fgqKm5Dj)JK026PKStzP+jDmLDKuFQ+&_`bKcl-Bok$n!AhFT zun=+4ILB`ozNLM%+`S$DL$=!lm0v8%v~SFFzImSRs7_6KaodS!0Vi3Q=)XFnitX8S zni^mOx?_ymZGRSGSYpcU3E-rI&C=o^o?~|!SRsqHO9A|=#hi^x5dsk!<5Z~wyf}Mg z#lA5*OJ_sCO3)}MWU2iV(ZTFq5z zg%W}_X}=E)(-7XYvJ+D@?Q7NtegJc&ik1I^o#Ff+>=lV%+ zrDtV@sWiI6+DBHhw0e@l$jBNbxfzs`v5~3a9&i{%MPmbihUQv^hQ7l{tsi7WVT|>j;Z)|=w z0G`0^+{h3}!2oD{GtfU4BH5_b?G_Hr>{QO)@b`?|e>5Gfe{yPS=Dv+vU>NM&z|aN) zhysHv1K4(#2n$;aSj9Gm)?e=SPgIcD;P%*LY;5}aKW4_n;%MCD%79E_3c#VofeE}E z05<@RP5`-I9~2k`*4F<|Wi(g-Qh~Y6;aj}c%KGxy>Kp*18?u@54{@ZR1YpjxK-ui$I#i=GI2es4B(bhMStEtJ3=Iv%rsc@PUi zAu-w9$;sIW03%T5mx-m>t=Z>^-G#Bao{hze`JLNY*uQuj-2Xs3;4k&e;`+Z6;duPm z!th5uV%l$^+f@_DgviX=7#M_;lju7ouRR2K{=MercKT0d70Toa>hT*rUCUoa=8tM{ zcq3L5*TnD+CK>T>?N~PWUfT@J1<0YXzTV-<3BdmqAU~^t^GW~N>ej8lFQwWqVvp+n zwYjMUIK3D3zd$YnXs-{U2NzZ+0H7S)tbqL-Kk8o$f`%p_8QQ2E0C9c>D8vE#R~ClF zC%i9qZ%_!fK-h`xn+70_U(fH8^qp;wjE&&xZQsmaE`3vAdUO%zg*L-F7GFE(#+0{VtD`H10 z`6IwX1891*9|ki}`-s^kD*qL;M_l$TYO7xP3-Z`I#Qd**i2kqk82uB>w&ya|zG^f3 ziwh1qqK}A~vH$BU?YDUZHvwe;_G5PFDd@*X<{M=y4U?(UrrA@EkUhbq&vz+LlcF=WoB$_zB$G zay(~X|I_$E{LrTNJ@Bng*xF~@x6#YH_N&l`YV@Z4b87weY6GYVEbG@674)KCG34i( za6~KF)pphY8aMm5LLSDyudNx|2mXMzjc8%~uyT~ol^Xaz7z@5Pj@Rz=)tt405 z>c`RDGV}rez6zK2-vX31ez2F*n^*9EMecvVy(xDOU4`sq@cBdh1;1C*Slry*D|gRt zHJ_~<|5^KdMS%YEMH&Z}cxoH}5=?dG$97>M3aO9o+})W|xU=@nGkMW*x^VI5_meHD znS)ewZ-tpW!`e!J&;OpkJX7kKTD9RCIwF}n6z)qD`}$+# zhAYZ?%w28lN)PQpHKKM)r!tN0W`K)w!avQn=ug)8=G%DEnE1X8>9MBa94c?H7&m(* z*ZMusnAR$u;^1*cBNH>?;ErZsUtYh=z=*vLQ&-sV@CLp)vUnGiy@F{^|74F@g&Ls}IhBYK}X3svzW|62}0b|AKil%Uf4MF=*O+xZv z{o^r{pvf37e_^`-$uepL!HAu1Lfvp>&w##FBNhiM0f|y4wZ8R|LlxQG$ql>qiUZcb zy5^$oR6upUKK4>lz&EF0^l;-vmD2dF-I!Nqxy`(df4DrSQZt68j|>2Dv@Y9A)fCIA z`a7t^+8B@As-M2@s2+1kpE_X6VO`xwaqPS?Slewcih%9q^I$SHHtzol%4|KhaTM_y zl*s;+F*?KERTHuZJa?bKwB)S0j+qP>&U?Oei$kzns)FAH*Fn4;1oO2sPN_)iiBwTP zy*J56@0T7L9o=RZ4z`QsK9Z2NdyJ?v47QsL9qFDAKGwBTd)15e>)~0MGB-gqpkh`= z6%|!#mK$82{SWu&&zXohAXz@MJsu*x(0DxyL%23zo)yF&_n#XoGk|yt z5DD&90zCCqI zr2CLn)U?2qQTlS)_hGfJT+$0vG9X`=ha)lm_G#Y@Z49wUW`Roe{;fOXm^J)wOzn38!>YqD}pN zT1aj7{>(!rtMV!g%WEi22nj`+j)dLGk`s-*EPZy*oPsehs`GSQYWto zQYC(PIlilr$@YC#+sI?U-aL7!$mMb2YF6{>eKq22M^uy3*X65vjF&VxhCZ^=K`58J)Q1KvKGaMSrPkroDnQrI*r*DL_NXYHAI6 zlre&depA5>h4@0{P;X@PiPaC}Lp+OHAuSf_8hfWh^zf_%ITm$(VK<2>4KE#b(w^K# z>i;|n{m;W^C{5^5%RUU{M^!4~^+Pm06F~6|75bADL>5pUbiw;h-_KDYxZ2FwqC4`; z)}!4x)t>4uk)v>o(YegS-O0hIFXiv6Y-4;YgR;{7SG~rO37cxmJttMI0QQ*b7f}MvEq$!)Wod%P+>Q#joi~viu`vQRgm+*OVM&oD zDgcQj8i|8lO7UmGp-vnFOON#5FJytlPlS+vN(M3bWG4$F()+>CZfaJR;_H-~dekIR z4$dU2a$s$VjiI3;SCgckE^%8~Edl7;ojS!@x8f=I9F*#WT-#@JUJ<+&&zA7mEvpae zdF}P|75qo|vW;~Z8VePKtP3hBm!>ZTPL7o{Oqb8|5-NC6V z>2?Krn zgjXtpAo5agu+rAW+;agBcbf-0Qv<3sSP1L`&05#Q5)6gqp7R{|P?SsVpVJ4nvyjpH zNop|8=V`UclqL#Rp(lmA6vKPj0&TNZ$!97~kcIT4>p$bjIAW z%o#SuO|RzqM(XFz_r@THankA5hM^l|mF>H(w zQ&Y%_9tvzwkx+&psKa4+YTSaP=RMXmF!;@EMOYbtsl_UVc>mZASq8ETl@tBXqJ?W! z)tUYJ^;_I74sFT5|8wW_NAZgplBedfd5A=d@rx}LA^`KRJqUj&5;F--(7C&ePiRc% z+tQgwk@A-I&DKSRH60c~%mBO?3Sm^)U=h(G39_0kPJb!J#|P`mOqUk$dg%q*z5K{q zZQAE?q=xr-P5DgMl-jdopf9uQErlOr4I3oPK+^m(|p_2Y`G6B}-gUn>TU_ zo{I*f@f2p$yLbl)QrcnX%NZ`>MTkQ zSwHrNOIEsGRBA?s{F??Wx-B;!wnu}PLzJ737H)bARMa2?h~q?Ndl%#KN2W#zjk9cbZh7Vt2{@m{;f%HIHY3XSw0vvrt zoAJv^k4)?z3kBtYw1>K<7NI42h9Ax@#4uJfen&35M-qwJnt=OvVlWojR((ul2*5wZ zI^ZrsxT*OC0L+LBwZVBnm;W3OU@2s+Wnc$98mQBcW$MRF$uYl&VyDR}vc@2O$GWS- zqO&${9=TpZX2q?Z7%{Ckmxom)hpWBNfBrHoTt1TaK#T4|5|hE+jI_Sd4Dw}sd5|`r z|7hkCnUMBLbi-M|0E-Wt%%fy1>N}V5pX|VlYny?I8X1cshK5diUKuniW|(6YO)WWxJW>75k<87@e46I-k#!D9F-83 zv4vB%tE$TQC}SSKJm}N%Tl4oaAizXnko#i_qkVeC$ylwwprB#xYJN?wl-_X?WaISY ze*+eeeE3BpxG>tA1ejZC(jrwRXDo&$HOixAHsyHfPF{TUz1@CTQuRi>O&Ra<%TnZR zsD+!<=GHXQRm6i3!o$A%wJ2{xK+c6S=G+x?Xz*pc)3*-o_lfZ&AJ*iTn*2>Fwe@Tm zBNCIo7oHpmZ1~-JttqG4=e4!)tB#u+NI|U<#t%(V1sMxlT|s^BzVyJT6IIvA{Bj|1|tXc3uEhhw=>n=?y7ge8*5fjp0%dA zkDcTN!xWHC3_C?-Vw_Q&#B=ZeS@S_YR>9)V9yLE^9C=?%qqw&a)1S5R)FB3Vl?VUX zHFpo6l%|?hwMlPX-gY^Y(+f=4gVYfhbxF`zkRm#aM>@&RhQnK*WMk1iRZP(9PGNfkD)i+G=c$ePw&ryo>b9Z`# zQoR!jI|@o|0kPE^{jd@5(vS|{_Lz@PlP@2rq-tI`3TE2F&SvH?hv4a5SQ*1^VKG5% zt(3Z4eF*CGtk)ZleyQ?5gDNqpaE$3<=vJM(p(>yo58cx9H-T9kqY`QcL){#Mjz?yK zo$Z_BAy%OX_G@|EO7vOpGl&;Mg3S@KVBcQ|?0-yh;5Xefw>#rVzsHV#ap2xj{(~2% z1r~!6K+93Stta@!ni_&g6V4vHTUn$OodCo?p1SI|g1YWZ$a0hkezR14 z_R^aP@jYJ$*@EohcAJtnH1v1cL2i60?~}0C3rN~^5Wj@h%+zEnWyo7Y7EVDX>_^cp!0#e3hQtUh1=^I+^KWKnM@OMgI}WU zN9~FSoho=K)4FR_geW5k-kim}3Y1+6LAtoi!0Fm=MXnm3NTVO6NJh0a?dTQklT&}_ zm}~PqIfRd{2zFQ8EgVU%^xfQ59W4^6VO}YUR&{!Oi?Q9=8Es;_L1+lvnH)jD$(V!N zwIO-2LxTHaSnocx~&Kocbl4+-gVg-$W0 zWzSVh2tt93rxI(dg>s{liS>>go+hjG^P)GgvL`4w8BW5Yr{1k_GHMWZU0O`Z%~bzO zW|poT3oR82zWn{lY!?}qMj(8r65MZA{q*^i_G7_uV9Pup==8gdRUz@yV{%@o4A_u( z^ZLr46*YTtvj-`}L}Ypc9>p3pC2RM%xt^O6ui_q?^E?fdwFDb@*a%%HnPg?*OHH0s zC8Ql94lIX=QOaDMc>GlsLa4|n;EpkW6J=MZdMHuhMLeBdGf>GPA=)QIu}}nDXiA1> z>>ll$lsHymIkuJn);4{cTZv+JYe z%yV7-k6tO7xx+_r_CkV84y$7Z{2EixYdv1TE7t9e^8o3Z^?W*Aa-l}Uci3bRM5PL%}(r+r_RVxG3heoD8>A7sNeWr3U}Sq4mo9erGG zCjtV@<7}wcP!pUTwt-+(*BO9n+}H}UJh9{84bH{BDX67X1^A&6CGc$Xs`6N-jKd|& z2=vqpCn4jrGJ$_d;g_%gN z%}=V1dr88XH;qQ#v1Z;5a;yFhT{_UxCd~Dks@w-mP>2VsVgT+{U^?Kg`!o^5$Nlvk z7;E|K8@K))xVol6W=2d%0tZh%(F2?DWyI|F6kd)#cq@ZT6>;;*6yrQK$P!i$pOD`n z9_}sz(!d&+9L?`w^Y)rA9GqKk_Q_vfB8}gKPB?~2N3sm3IrrqcDJZ8{E4NkM3-oQ{ zAsckAkKCu_KMMR7V${Z$o-hC?I~ZmAa5C}fjm?zXoi%!m83m;|8OO2~)>lwsLWS&Iu|Vs@$>{evW+86O=UZFnMr>({ zKJm>QEp}>0u^5geV|u(yK!pL%DyDuF{Kml(%`R8P)8?2kv%Xj%g!Hj7cR1Of%~Lw& z4puk+VR@|G3-%nVtS;h>369^#qPG&I*hMPImYv)-bWM%VB~?j#L2%)9FaaQ$k`sDeKJn%iFlSK8NUk+@kUOx zv%wd#b6jknCeK^m$B+CoX5B3P>{{p9!=DMsFXOoHm`_x$5mDjmp4Z4Sx$f`|!-dLm zT`7ZYTHT~nwJC8$^~ebuezk8BZ}&{0IfeW)rAfZ#0J#R(d%TPjoI|+Q|xk{uTVWdJMAf*EOV{=7)M5@ zUb1PZej$G&Fh}-(?=_Ey=7shpLUkZJTSc$zd4ui{RLpEx z7{*sb1t|JE)UGG)LW?sLa^LWJRNy-=luu0BU_hT=u_D6WoTRz>ud`?tBOV*v-Gj{J zd@f5b&1&+vvAylM2B=yLdTi`ApEcqL>T{F%&m1q@a*-@5a*+mZ^z+Vyx2n$vf!H#U`9fVOlhFLbV*?AOd!r+`l)2}NV|2+*LXCZ(S9IfMz*hEG zOOv=GC$meC23S=ns|w<+P;vH{~yNAAxIY{ z46kGBj&0wuZQIrz+qP}nwr$(Czp>5yStOOJWRZ36x~i-C>3*Mcwni^Shy?q>?;Gf_ zHCbt(?5%=Ael5xC3aGde8hCRZLRCD{S5gUzybRLK@U`b}t_kTJv-K8if;4!#$^Oyc zq-QqH>vd80PjHbj2MS!o_%FZ_neg&d4j9bCOdklsxlp z2SXGDc-p++irNWZkNkDbaDucE64qB5OHqkQS56u7q4-HE?#@OT@L1XV!$l2Bi!38E#AVL5G5q(c6 zd0KH)_`2+tEWDby(IjG#K@Or1x@dqzSHGsvr%rR=}oRCayJfTn;UCQ25{G zCDv!e%l#EB_6U)d@wroT94y1kIjQPx#Gp9UM!~b!J&r?o_Fsi5i02dudF8`R{o7lZ zFV@D&)NQhKZ&P=R&opNvWN_o^p_&+C+Gch{E#lXJ|NSNv;vq`!ycN65Fhh3r3|Lurz8AEz@-G85C=+#34ZGqG~#`g zBe`Tv0(pf*^36zfSz$KagV^dV2BFdXY6$aU(-u!}6pk7UDuoKN1Y?chV~3_?rxhy% z{=jyPJGAYV##yFVgund&*CC~bLvS@DH?0&i<+%dqF@7(^yCSBCA?1ny2W}K?QB98R z-uTuuHl6=oFt^x5EX7|+ zTD;mU$7IT~^~JqZK!Tf?9V@s``FqylwJh)+lH9&s+oQ^mdlODwQl+;O!l z`p|#wS-9-kq&^Q-5iwYI`TePruM12{3-T*p0ZmuLJ(`D~&8WcMVaiWc4On4Ly@HnV zRm`V}u^r4`)~lkP_vJmZ!({O=ml}qIe9`pff-vtf;D)^La*nmiaPrM#bT#D1;AY@B z2dUW$I^4Jn`dA&bu7yF$;*hp3?G?N1rbm4MTGT3zhJ);QbLV8WZqwnkBJA+gA(AC5@9iLoM)z_USr1XY4UE8;BD(8=C0c1}nG=z!p83C3|r}GWyp3>GLD}*ATzi^ZWV(Cc`*xeOHpoUsy zGzD$`1j|fMcsWK-Lw&E50nh%kk~g{nXY)1SyKvdNX(=G)4MMVOkiDMoKp<@v3{HIM? zf57>eHnWD$M4O|Bt}6}yx3Hs<1V#tz@=D@gBgUShN001N92~^2G%c$@ zQx8f~Z%`YVr+4yos>)l(<5KMd-^6_GbvEIoyhtG=zne-|vOHO){8XDa6`6P)qQbZM zuwap{_D@8ZgbIf4*t0S~D77nr1^D*nK>`z0<6aLkrKO(ZJYt@}N?3B*jhTuM?bvGk zSa%K&qGu;cpdo_q88Axdp38^*Cb0dtNW-iP%Ya*E7ysL{!E{jvqY20*sYuC)+11$n z1CN2Q9F?aouIcC?ahBbj+WWEl0fsTvglji&`#?I)Zm2g$DhlhG!IXj=PE!jhXl#fw zMtsm9q2&PM^xOQu6RFRCGd);}X7Q%wtfPLSJDmKb?bOz{hoG+&tIm?Qn4gC`Zu)6* zFAVB*$%44t#%&Sxou$AK-2wN3bSs5OSI!tca6SfOGgt?wv6!gPLY`hcDLJmb=XS8w zK<#PQzVlbDxPmw=d-f^<8Eg9^yvAlON|e0EmWh{Y9ZdDq%ph4 zUsObKpmY*yzR1HRAve<^M3ASJ+}&FD$Yjzv@G0|e)AelhJIWP%kCnSGJweVl;WZ%# z_w(a=_J%g1>c`=*I6{y$p?I?&yNDfL-BcGBHQ!i$Eai5G&%nAgIrgECYa>$ufO+8L z8u1RbAgV*ii?o5S9z&%D%C~t&Ib>5l|1c~iO0rVmT_1Sdar^}{o(n!Ng)C}MHOrgt zixn!660X7wI36<#5W|l+ZEosaOq7=RhV*R#ayhn48TlOaU=vqHvLT`m)v6N*N%&CP*a09jS!c+MEO3tl* z#@9Use*P%|2}DfDP+EnOp(6>lqA5H$!e5~}+prnhNjDeR$|JCCDP(lmo<(wM@I~uO z*#WJ(2&-ha(UYOTEw}b|e=z|K9bjPJ#t84Tk-MNWC1_NrD?weiRK`hBq|UO2 zdwUmFlG2e9cu^vKF`=t}bz+9-yG-Z;!LN&XR$})*3RUIl=>~9{>WLqDnxMZ^O5Tp| z_)d51ac1%Tgx?TqAgT7Ar){?$UQRI7F#Rz=>0NDu9<*wULBS;F9SaCk#UksP#9D(` z!XHlkkw7Q#$AfPyi&B+CwIA)^Ep75;5nvrWD}u{oqrlUR2%xS<&|k#Dfcc)z@^!bW z(1rK0yw*bbNyzV#jn)wMbY@x9=GW)A|KWHfCry?8Ay z#j&?N^iU6^h9m`*n`u~qFU_!+Ahiku`iD$i8u&9@&|!87sRYJOzPJ0yEtQUkSEBwB zuUV+q^M>?Yq*C;c6|x^_9lFo7`mj6sz}AvOgH#H)A?UH~g^LDwSVFKo>5KX`mIyPj zcC-G3-h<`#=s`0l-c>tA&*&tRGD*u;&eER!^nzXw$?m12wlgf-t3^L0SrvS;VI*3F zzFIcR>)UVeZtG%Hc=*3Vb5vCz3QT8$L#Lk0u!`#`Yg~pXT0(DM5awxw2!Qoa)3A<` zR>IY-VxTi?C9?-$LWn8rA2des^WB2R9%xVu-7l`5mYOyZ*6JAfc(x#Vt12`!kCIq4 z^m;zWnf5ppJ=eti)u4nU{F6!dgq{c0n_WlZY+%pKcL#RApbO8)aEhlV2SAxk%Vi)% z0YxhrSn)(Fr_fifwWdzugSWj(Sdbi^8n6bobp)kt;a)7# zoQ5fRi$UYrAB?}i%U-jq{IicnPP#t)fGVI&MHs4y*P30#cq5rUtY0A3rh>B;S)zpj zoHWq>221fHt?WM$cPBcf33hwTY17BAOjy@!%vWdOR{M-Yh_q8YT*GL;t)b^;2)q!dG+Hd6*&F0PWz` zh`M57$=fld30mRccf(Gr@Kl1wo8W$@e%4N6n0IbQ8X_Ip^RF8xnmdm|nIzB(@Y9hl zkJr9*(x4f4A|I?}lKL&+Iir2p-YZB47^T&8)vPGm$uo8y2SH_Kij~R3hRREbsKev$ z)aD29!oLK@Si{N)mZ)5?p$d6<+aBh5S0oQ59E2oFfBhH<)(1GMz@7+D2WLJQZO`Qg z{TLoL6cdg~{PsS{v)zbUZ}W45SWjIJja$(Az~rOc<-CR3s_=W(Dr_ zD2>$e6s5*8s^4OKwLBL$JzM#89w{6!S)1m>QHA=wcu&(t<p1r|^f~>AZc5`KFIWw%OshLktlA z)SY5Krl%%-4v>w*2I8o ziRKXP@MahnnT>S<4=Ozd$r1>=)|K-hqp0H;Hb{fsYE7W4juIxv>{50jS{$ql3cCn* z={SpPL=@lL!;v0`fua~gp06wWhe}#e(jM;D*e9{Z`;vA4%bdLF$4Ll=5`{1_3SGiU z{9o4Y_lQyw+?8S9&@Ar@^Jij4btadc?RJ#FYh^s%fslJSZxgYgl$DE`=47Pmzr#x=E#EXB88MMo_b%Rl>1ouKSV zs(HOkZuqYH1_*Hk>bl%6-}8}PfG044{?{uFn9`(nwc}a@hii6v71{vgV&mb*b)Wf8 zbjwH34s{!$t#a}nFM!UNkGGq-A*>#%*c^cZZ(#Fj326T;Yg$g8U;S{Rc9^ zz)5JVQNK>ctM#&^;Qct8AfgQ?lFS!JcgR;5SQSbEbX0@AB8F&E%Iw95c~Vx?V7dim ztyPz$zaqV-{=Igw%e%UxFg7$8jASe0`$S|`MiPoc=6i_SPOv5NcSoV4B(LDP z>iP|tOZM#~EL{NP-rR4H1TE+AY>RgR7!(|wY8;39VD z%hJx;k;A3-@*l)iY;?RrYfX3{4vzEk72)2**ker|9QBPSv77zZb57cty+%jZXMw@B z!~4kr-b<3>Pk8!jZ-dU8)DpR=%FiCPN8bEeZxsQWGY;coQLu>bi+RMyOAQAR3Ex{+ z@Sh1;MddH?7_UIQ-QwI;>VLsKf^pj5gi#!Y-I^DwuWGocKVLy2l&6^rw1uwmjr&r_a&tN}uuvP0m9M1FAZP25w-Lx$0{*+KgpMRYn zMnI+EvJZkKLIM`-W#k6cGfBSMx;NpDmW)-CG9fp~ySNyvyZR}DDh&5XFJS@4Y$(S_ zXT4j^qD)RIUYdQ4+gmEp*Q{uwXK+7)1ckGiw_&T}VxQ|C?*-R8bVJT(0v(lCok~NL zCn&MBUWTxWdQVSQds{9!rngwEHRL7r(b%2|CSMagh`l-4nuvc2Rx^`Q9pe0pZx3&~ zmQjdo8CBF0K_=j(s3x%&NU7UU;IxbVE*9~r`==yj4XiDQ6idiBp5u&YHgSlY+Z31 z5Op|m&C9cd@avd(ZY(wnB3p32M+Vdx5v%lN7*j3BAz!4`b~bqD?X4tX30B#@`Ce8g zIiY9Oux(1O%_FFH1 z%~7VHh+L|CxQG8YEdxxacz%bRi|>K_xMqpYj~6ZpX}b~N&@3MDOwXrRv7uzI%*aI$ ze*@#b$DA@7HuPphY$t|*kyn`Ii0pBK`EH+1<3~tlqQQgPf|La1PaDQle-cQH8S&)2%K=md5m9L*EpAKL-%zi&>N$3{P(J*mR^%a@9d z)`-NEoQyghH+uK-6o)BRJ$(pQ3!0~v(yCbEV~bGG$|CPVv;Cm`E;aV?=YEm0CKp#7 zWOh)rPHePjtVTlBgR0Q6$T%)ptcR5K`%kc##HE;N~#V115=AiqNnXhn0&jq_5~^#)*(`Mn_hgWd4_S#67 zQax~{M^&6!L4iZDEOe)=)=qx|=3z=7G}We*Oa$W_Gv_8&A9qFv9|6M4 zzq-1DZ1#dnvb}DkK|or{5MJf0i(M;3imJGu(roqUS5~V>F585=_^4cGIvlZ*3XA7C z9h}l*?uzVo6y(@nt@Uq0pdrPylABoC!WK;SD1YVp=FIM!!I+sk=q~e%4UGR2R&gg+ zJ*V8mDGDq`N7erq-z08~rKuFBNGm1;fE|rk-4*qu5Wl5&e^HhVS_55mTZ3kHe=S=j z;|o20mrs8}l0kklmERoXn20V4FycgN9>te!I3Tgz-ybv5%J-K@&$>z_VY>sVS#W8Qo!o$|2=g2B>7c#~Z{9<`BvdNGaml>qp&il@^ zI}*tI5~WLWM}d)AbR4$U3Lo~!VwRWu9R?)AEz@?S z$X>`^@_l7JA7XLCcFKGLPxf}YS6K_5MYzdnchomlJ#^F#$JQ1dOE*>2k!O{F1J`oS zn`WbFo>GR1k{NVj5n9WLU7#<>VTR5Xx=8zk8mjU}@Sss# zQmD_J($Wj5&w;-XnH9jO1-a$nr{=xSOc<`-%PA`h;GZ_MUtbj(IF6e#s9Le6`3LF2 z`E)y^q~OaR!y^Q!|v?#t&*gPRO$8*$7O^`i@j{%Jsym^;i1V=|TX(Et8$ae0fRndzG61d*C# z%UkOg^6rBao_9MYO{ll$SN~I2q7VVUYreeWJ*ic|MGRYwPinIiNv4F*6-^T^j7BFN zL`u4*Ua@syb7U~B$nyO{9c3}4pXFoXUM5N;Z}@hlYCtjcj&5;3%J5WWlZ4C#w`@aF>z&wHVFeb~OZm*KD8T7!9i_ImE}(a6$7 z#wn+Y@Wb{E4OfPdc+T?4Zg3*U@0#!XtZG&C{^K32@kBUiOKsQ929leRx?I*O zI$WC;l@GlmmKt9#scDj7a%)O3o;X=77*~VY-!O5VIL6(&(Xb#Di55Ma!!UXoiwP^U zdSni$;*TG)2d(H>6^3YA21Al-Lg5JTV|d!84j-9IBeUt{^VnT{lS<7LhN+gR+H zzEqg@DVH|yHbMiUCuqo?`8qBg-hkR<#kDh7;hKQitl@fELc4)j{LJ->>OD+ep?%u4 z%uX#fV}Mq2&`psm-0qBf-boh++sLQD*~0L?BGZodp*o96*DT_&935yQ^op~m{v-I# z=wvh^pgb7Lr&t(|62Bp_$z77s1T)r6zW@_wB!;WJsXMrexFqn4R=N~ODK;gZA%@RU zYD~qHL_D%ZEJ}IggVjLPtS$I2Ko#36>ci$O!=|+3WUyX3020%BrnR><{1$jjA2({p z0F)#DtDZ;YF{ol#LRC>NJ5NvC^;Mn6&Cv#5sqZai{J~wJx@|u@?+mOs73=QxSLv;v znAP`w=RSA2CosonNcdF?SSR4v)oqlV9b+Z^uvXM}?Fu6B%R&~JvWsvsvHvXNU-AYR zUBF<-f8T*d6&oKXMi-F5U8rsO4wcLj*8)3h!0gEW!mvHu+aDLjzesk4U1sG`8d$Ro zD!MxMw<)QK|9u08PD(^_tPv3N&v zPkt6sO5Q9xIxmuGey2K^y^i1^QgW-1E8)NkcZ{wdB;RY@V!T(;lQD_A$87aM z)?r2~ME;3tr~w;cT+m4m#=Mw`^*B1M&e9=Q7Kjk^(9{W%4n%J%sIJ+qG-lzY3GQx# z;DX5t54UU#S8gW?cH|+urv_(YMP?E}%R7R8{slV+M*sQvkrL?))?7li#P)XMfu9)b z?5`r)LrwO!7O97*HBZrhv$!#_00g7|wU`)(t+*X*V+i4;UywKr<2-+b83Wv3p~)Im znMV>`0Odb7^IxmNqgvHkWB_T6xu!*9BgkO5C}Ht5-O0nktS*|eBwEF?b-N!Si4+VR z`;#&yTRxHdcH5@MIE!1xCfVREwcF|XHeU4Y_Zge#6cWKPmCZtZSj^V;*R!1};cDuz zQ8ZL6>HT3qVu#`>RJrVel0obqc0VYJeKFvm>;331631AVL;@@5y~6#&E5;FiKK`xN z9^!K!POy(dn#CmRVg1or6xn>Meo+?7z4ITU0WYb|RZA>h9IdbT*wX*H{D)+u_+%nrdMoy$l<3zeMvfjBXsJ0!|`a} znDN!@)F;bTlExeO7bv<)wD>-Lx=zJgKG%6sizgHcFF`uu;R5SnVH~0SEV|UnP#)$*#g7r z5P0QhXt~wm|Au`qGyXqdAB?Q5tpAJd!9>Wx!uY?@AOEK)hm(bw_5WLx(+aMVe2vZq zx0r*hBrM4+?B>=c0RRG>hTGXGk)VWELJo9xBcY;|NDFr^^FI5`b=r0M@vFJjp3{2d zS*!KB{jXk8_pf+m`5?YAR6FqGfPo!>PA;B7Kuk7E8VCsF-ab%ZJ3TtO6Nz2?ZqHC= z6vF^R9SWEH3lS6xqdsJ-NM?2LdO;2z0hF?f8>HPGNat%%2V{^C$sY#{`6G>JTNIPf z>HxR_qTB%_`GBGRFL@E%_QV#rp%vi8eY%eicv_7Hh>nN|_=W!lh>CI@+|UFVv|RH) z14=<0g_b4irhPDH`t3So?3_?D}=IO`T0YVc*7Z5%oHxk&(*v8-_41!CezlX3vD-cdN31&V~-Q@Y{ z$tXg-zveGnv%PZ&|A)4_h5#-t4FUX*u`O_X+9HSs5Bi&%N39wi5(T@uoO<}tEpkBL z5Ra=Sf+;O%n9u+NyZZFr`-G5AzgnElE5wgW69Pj!#q_J40ce2c))(F2<_>f@WDrMJ zP>S&{n+NK@A8}JySJ1lv0YYFRKA?3hpqIu*&>w`l%WJToqT>%*-|GIoHRv0#dJh_q zE5rt1{$2(jU0R-gAa)G5`o7!$$@^gFXa`zF`pfQ5wvG-m^d;9`2vvb?bNQ~k2bX=d4m-Jcp50^Q#~1qBXv ze+L5T76SVHjV-hQe&>dr_tQx+V6*q1*Pq~XJ=cf!`ttdm_M3x%-S0E17$T5_g<$v% zI~pbAi(ffHT>E8S`fdOE{qyCP{EIX8%TDCsCO*b*dCLFs8@CApgyPeB~$mJm5D|jlGV2i14jnlbAJfgex&%jrY4F7GA|O3~OBj?a`M`8r&u1Ylj8|i2?P*-#IqX=;*$UTN@YsRRqG1FzZJ^1=$p+{hP~R%jfGK5)~D~ zPJWgkvF+^*q+dIx*bL$IeZT-T4jt6R+X;j}^$5A%ugl=KSMCo4RQ{s<1PRSc9Q8{` z1T=rK7k-)GBXGx0hzMl-?yH$Ht(LJ< zqS{o=UXEtq%di^k=^8!h_YpXMiRDK*10|<3S=;wb&bJ;IHz6yLD8xl|+ch~y2uEQi>SCwCga|u#1L7dse={x1P>KeX!6sKnzgarYAg38P0Qlx6@-%r^J0zt0^^J0mWeIHaK9#AnRe5;E zXl7nsOM4tzKVn}PeJO{go7xxqpA^$41ob7htc1JI*=($2}`M~>p<@UD=bmrsQp9c+4)Jy~i~2r99VrliU3y>ESplH27lkuJz`!_k^{6ulYo zEKwvbA4X7wX+Hd;oBEhgWi;Ed)r%sj1#*u$w2)P|FN#pmrixmN z`4bVn``Gz#DRGYL`w`Q6Phyj$VyO4fv|8Jn5R|0>$Jxwr=x@*;Ol{e&QOxAk?<$DB zOCJzq0Ix;QX6v`yPHD$0?hP0I7ABH6GRdj3p^$QHGs}^Croncci++0YK28yXJ144B z484k0rI>2$2Ei9pd(WBN_leux~Oyundw|BSHt|c=fi9J8rokcL$4%PkyM7<$o%e9f= zI~Uq5la7x!?Uhma!JGeSg8Q>AxKri#ys&xQnfaWMREJRte4dRJ*&`-0mbh!;?4X#B-1Qj-=-cn_gIry)GOhb zgWXMv>X`xWw=C-*fXu_V6g-?ZxHpgrJ^IMRlsd)qkw@tao$|erID`B@Rk&x7#0cJl z-sQ?$L=M{V;LIUp>b8$Jg2h5_Yr;{j87u&-H6;3~hw(p+#QqOqp$ElQf06^uIiM6X z_Q5*wAu0>HK{zef*tOLkJ}#*t^9q>jrX4qCAxIcX&jKy%0Q0FVnmCO#q&t)YeYJuv zNm6xafb?wVZcr#E{)OhxOXr4;y7gdmpvu+=FrA)|?*SmSZ6sIp1EObn3(5Yo1p z!gtBYHOSh$`U>S$Kjcnt)8o+xuKDmE4QajfUYQ1Zz1iAbW~4QTzRZeCoTZMr`uW15 z=jEL9hmvF+645S|e={ZprNfJj`h?G~F?09HpoK%Wkj;N}(sy*V&UOB#G6F1%oeLSI zs6j?N^;Ut-SilV)Tf8DVM>Y%UupAz~dbNtAi^2l!En%Qfh3v?GltqnJqpMd_f>`eu z*AD45W~Ank%r%0_JZL4X)R=kM&v4Zyq|!T+H)lmR@+St9r2`mMgIcpplGmX+xng}6 zY&NV#8dV8T6ec#uz-(3ysSm=vlV{+Nb419432samkww)s#-f8okR0QxZJi9DEQ zi!e#hornhBIz2~7eTXx}p70tFmat5{%?Tk_dCM-Y{tT8*;t?_Kcb)5HW*jA{Yw8dY zEuFEHw(%*VR9gDkgwQggO{*}M?>>-+Fmbko!(jZg3`&KVC~T=l2aNjcQP(NtIPA242)?}hE?o*Zvl9tbl$}zsd{VI(wCluG-8^>Y?=9pC|2Csk zjy$G-l_cH(d_h0(4XS}ZU7QuVxOUBAQg>|_r4REX<_%v#44L~`S$~(?3!TIM%tj4u z{g<1k^9>ux^d`~_1yOj^C}PMXN8 ziMt7f=WjFs9X@`x<4;3)?X^)GKZyF8y@3I&hH?s6&!_5a}OQ)jddudI4J?*(3YUZ;7 zV5qMZZK&yUy=INSwIZ>T_%lEofwyiQZCDLd9SA3AWa}FsO@;|S~%5W zphqLs6YV25cmL>~$ekZ00WGJ~<1AImilz9k=+lf2&)=+fDXQZ}1CUnUTEYtNZLce! z3g0*dFoV5zEh!ShnCW3uD8bUDvI+i1e%ircic4B=w33X5&F#PCUA~elqu{7LmXDQt zgI@21Nx4hqu1N1nE$bZ)_0+H6+x z&CywX^6wJtr*=Xwp`nC~G^17d%3&6{Tik&7H}e}0YkKPduc?|9e6llHo9?FZPhe73CkNoh+G>{=)!= z1uL8QzJ)}AQ58B9gON-JX>+BjO!x*$2IZcD3j!q;9!f60vivN7MWK4`jC-gJ%XZ$~}qfgz#Ug zn0S)8<{NG^3Tdmv^oAN!Q$bC~p$7ITJv=@tG2Xwf$-#VjjQ{c6R2g-tvw3!VrdK&p)&+4hfu=FXMD+0#c^dc~zs|HglaEheAoY3yce zYAN29*yi+(=Xiu|bWW%TMPLvnvdnafW*6k`BZ;5DIsa+RF-Vjy^`M(xFNH&XD?rer zQm_U)yH%K3C~{Q$ZpXN11mPdAd;i;~O=!{L;n}NI^Awl48E9xQ&?*3<%RbH*5Qedp zNQf`@3HYA8FADslyILL%C2VG3%V=4FGl}n%vuaF4WO_)d?=#$ZGqxm`b$>b9B-0vp?gg+Y%*ZEgBCQt&}Q(go2hk6x|#bh`AoSjKkC zip}yGBMs)?&rl=S(y)o-``Zr(=5+1`;qPNqV|Ia(^?dUQd7=|KEL2K6zZMU<#WmM~~ ziRL7=;S{^L>VRaf(>~JFXENWjR$%f3#da&M#OGvl#alIY_BNMw=_z*%FH~|`W=^(_ z_dZ0vRLn|dI9LueEh*Ha}am|QL#zn zs#s-+e9Y6=!t8MIq~Pt7%dsH$FOlJ%0_GJ#>N7&Rz;0h4n~9>QBc6W2W)>h*Az{Dw zX|ZMu*P_F@`%*~En*lXUCmxQmDvB|V*wgfbc-TQUN7I|(4e6p5nhJJ*%ctribfE4s z6X5!t)3!djVW91OGo2ImFEJYe+0yCBY>QQdtdYQ-&4FJ|U(UYH4}=SLg?qVH?KXfa zy@t0+gRHrlm~WB|LX#n<*6rWrzDPpg>@sr{g@Os`MW)&cXnjz|Nx9)=^@*tH=L+(w z>+H8y1DNwpm^ICFlu>mJTO|HRpi$&Y-^kU0Ih!LnqO86e4b^z}Et$i#Jo>z)p&M95 zPk8rG^eS#CIa$A1ZdI3j50NWxzAgx{VVzs3WkqgmzQ)`H8*n4pWHhTHI!aG3FVU(n zqG-iYz*?`GaKD`3_{Rhs$BP${sCroRy)yKDa?X!6xtOXK+FJo7@)BQwQ^gI#l_~mE z1qI2jmC4R!(d^%Hirw^Y-}})=ffp?Au1+p@$GUbm;hKm8G%(2&e;>5IUN9WHWg-=+ z8l0jFD|>>6oK#Rj4%hs6%Sk|&O~o1~eBuzsBtGEEpL=6AQxc*HtFCm7i?9Dj7Gka! zwL`sxaTvm?Jr?Fao@m{}q7umJwcf&ruYC25`@JODvbmVN{BgHRQXZ^P5fy*v_R;5s z0;nAmwrm$lP8SR__Vg?}X0%_foN-06nQ!`EVRlOVSxA3mdguJ5>BjVB6z*4P)}hZ1Q|xIETAId(jbOO`<<{Qw1NdQzQ! zM0PMkp$eCZs81C2L#%Abllo5zMZ1kAO&U>}()8JhiNi|pt$#!F8i(tr5UX>D{A{l0 zj0IE2%YZ0XXv$PK3p@laeokgKpJXI_f5TfX8Co6h3)pFgJ;lApzTfdY0Z#ZN&MVz> zQpQWU8?&P7KV8eUUE)EBt*6z8>UrdjBhvv>Q#AY`a_<1rA+2MQ!xWv{wvpGJsY;;m zN{QC`f8Uz2SczmVaVgax;_P-J7XO%BhTSD0$51sE@)-jn{gx$f)|6Wr>ZT&4F-@D| z8vI_wymLbrOs^xp=C5Ru_@vqGddfu-&`^qP-aX0-BIhGlLx4<&opb<*b?A2TKcsOqi%g?R(k`$;>}o z&KxMP83LW*f{z|R3Hf1BugCPeFN$VOYWX@QoRZ^;|6TeX5PGvu62k*eaPD=idn zY9bHoRSt1K*-fNwF zS1Z@f%OmQ(ntL?Kt70X%c=7)Qe>|5f9*x1&i|cqhVZQc$>_&ok-2<7b=coA@O$L#s zlBI9VOC661FXuL52c-VoR(7mGO-FmkhBK<1#K;KrPtKU3R5Yd}Sd?XO(we8#7JP|*jj`=Kf33<4gAvcvQy;znEb?>41Hm`2(tfd$K;}aP+J6J+YjA6o-o*ORY=r@>es3cZ`x7xaw1=J-JBlp` zv3B*6(hr-I1s(GSJyR z&UFj1cYb&iW0?||H=tQG`GM3%JjJm8UZn$|Xm;pcHMAh;g(;Cw$aT?qd}*cB2q7 zU5$4K?fMe8o$5|Xcji*a%ll^OcuEu_-aMwidS%=(*p9E_=Q=9~OE{)i1^j6?WZH5Vn-;I>&EUHGxAC-Mx}&db2bz zRn945h&sk~f$I+Nd_!8I1j>?Y!#<7c@7fN|hRm1lHcDf1}u^^i(LyqUw zB@14I<)xI+ijS(c&M9hF2p_;&G6ElG4hi{&Lk3ixyTh~8137s6K2%Ung~t0VXI-y^Mj6VFLyT<2$h{$rQWr&BdPK^@3< z38NX3PaoTWv*BG}7iN=T{~4E^ob7)bu?KXXkUz|>7_;i2w{YL+jx;W$>0c(fk@lFv z=xMHCp%T*jw($k;v@0dVJT~hbU){{M%*LJpKIa@T3wNKv--v7v=JKy&;)|U4+Xf6u zVMa3cGS^Cs&3l(PX$*XlvMMoo~W_R)mQZR&9UwJZN#MCn7b$pQ^r z9;t3)PO79vkU{p$UdCVPfu0mK6ar~zWJ-EV#^A(QDR_{(y~|&3sO>8!u^CJc8A&L8 zFmYDm+GXz>RmK7%V_$u=ngBas&dNg(95GxH_e7W4QWrighfq9$QQyRpLF*=m4m_ALz${$Cq8~E{mI6Rk{{K`^N`-MUpq>&UZI?u z|MV!*EfJ_$)=iRgd}AY?JiNNL*tROKyL2Z5EcZ@U^ac|Qiy zM^2?A;jOT>37=}nQzHy1lFD#OCmmmaGF+y`C82m>WMJ_$*_doMeh%tE8zP-6p0oM4 zt8<>oQmc0o%gF|%hqD#QjjWaUe=v4VO`-r@f^6HiZQH(W+kM-%ZQHhO+qP}nn!B;P z6Z7yr%%7;L6O|`(x7i{~8(+I}h*9au%nMhiWMts+Y1iUZ_yU*HT@0(19*7^AYzKJ21IrJz|@5{WBoM?&;5QJ(qGUYj z5yl8L#qmGk$W?_f`O1Kir)#p|4^~->(NbX80HyUy50bL2{iuDpua7?)@os z>GAlukuR0V*?gbi{lR*Bb#nF}G)r2|gyHru2qkHWgAA|pl+RWX-C+R~KxsM7lMX#% zVRk`WYjSZ@9rz7@Swas_v-0B>N6QUt@=udoD^orO191#BuWp&CoNoBOsaSRAgqrwU zpgH9^OT4hmWZf~H!w*wbrNUTTIS)Ocu8M`WT2?2mBZDk5RIA|EzgqZ6pL_Y4W!MSW8%X zx1egGiWL)fDh=(CTm7=@lKwL6+eBF8p4KJ8fwYAo`~tz|IVi(O(j*!g)J0ofW9O`Y z7GI}lRLg3RJBT7HKKdmLXHx!Rd0JP<1*lxM=k6lqFyEoJ4IBcbP2DP++lA%_%(PLu zzaNa#pjdN0D-nZa=oIKpNsv#JOWrB$j&}hhv43s_O*4WOJM7Pq8AwT33-f!T5_h|) zr+z+DI~SNV>m9G$6BxK+4-iKevW&4)Vvz5%S#NBY>Y?;3Ek#z%c69K_k7izV$0ki# z*YTgX$MM*$SeR8k#o2huaMmlkROI}P$UCwVhdTsInS@|^R5Ir*`8%`lXVw69Zx4nr z9^F96BS(S*uMm%7U+cpJDB#ov^GXaU*!arjY z{IDQfBX;j5Kb!J<`GuiZW^TpCPrfg%E1blpLlPfV`kFQKJj%zPchLK-KN1P19O}dd z+cgVU29KmEh`X%`4w#I)6Xd1V()31GTpKyBrL%W=gb2~?vBLlSq+o{62#i%sH)?HprX9y*%D@BZT7EPbKz{nT;Hg18GpWX5<{#2SBvM53szsK4~>sMn^{*QDmOtu z;>7c9d&L`NPjHrIo%7LzQh;&=6w@fY%)O>o>*Ys&5L5uBN4Sa-O4AR6AMY7vVcqM zhRF{;reWM$S1hI`i1xB~*DdR;88{M&cP3RN;$_cI9U89m*Qt8ZYK{rn>j$h-rDXVP zvP;zJM_=hxbV6T)+m@8t3wtsUAL%-fOgZZw61zJXM(zveBf%YfRMlo34WEEL_$zi; z%x7BQxyDiE$mJf7G(E^Fp?_N*m%i4wU8LsnwMxHr;0?vBCY^CdSv#@_5#U!_9ZYb$ zRQwfCA+&oqpikhx%;GrXJy$nEUxPM#oU7pQo}aQddeEBb$#cg5eFe(8##U4Opse`C z?KF{+{Pv_D3G1Ez9+z!1T>98q7*{qD>wZ_$a~C4}j)9kv+`2z&HOo=g_U;l{fG5{J zPs~oe-&V=H`p4_$d$Zf|$+&Cs#~?Vv&Pe6I#Z43Y`TA=>M5TM`4^T%gncStk3PC`d7q^QwCpVjq#}qIBneB$L`b(df&Yr0%BbcXv z>TT6ZI)<>Y+C(gD5~w0hBt$iBetuh_C6V5shBP0-pdm-M-FGtf=%9#V)rNuD@$#;E z5k?>CIJPqvJCr+`{IB;%o?Q@JuQj#cc(-l*UrvHJ zwz_g<m=R{{x@!@wIej0Z0+`@eVb8W zzV$?&vi?u@ZHZHK)VH+Mg^;kKUEYhnOXWV#gg&|HO8wMgvG>1Q1nW$!TI|R}tM;4j zw;FJh{bQsEYz-}-czFIlL&ZqI$j10Ti7F1(|4dYIGW_3o5&;ywn7Ngc zu>%3Un3aK(v52ve?O$UkK0YW%CkJB#Ybdvk=%)WiR3R-$vcpKc&QWd`JG}x3PxUc4 zNx23(xrRy*FDNc7WCIlxDdKi4# z5dx5^fdj;W1011)K|wg$1Gcrd1^pC51VaM2X~AV59SZg z1U@3s1D?Xa{OsgHm%>r)W04!FJTC)9I`O6qe|eDK&F?^ix= zwD|ott^q-+Z29*3;N%cIZBYLt2P0PPE9?zmr*D+C3CR5`T_1oP90baj1&}A@6uK^C zfWc>%ycfYw>814y9>@WZV;NVF?c_HF0uq4Z*B`H$_BS6E#4g|m7(c%GnO~g`fcy>r zZa(pwKM7x0@COh-I{!DME7l$lf6{ku3qZEiS3nnl{0je$F=3LQfZq@K$M$WFQ?`x! z3IEB6sOA@v6k_iQsQ>5Sx3W2l78(pGP1C1KLquDqg=cWH08D z>yLx$OSXNz`3LTH>(tc_be-&~9*3M#nq}ioRX-i6QV2hv-cEvXN1S?5&*RU=#uG~w z?YZ-3^lY_xz{rs-_ekoj2r#m!9x3)G~fVrTN%W0nr6y)NpW zUgzt$C(DZ(O?1f2b=OYyvD!#ib(&%9d<+{DO?Lil>sStHzG!fxQbGM*wg*pUdt27X zWVTzLs-*t#9dE=w znfX#lqa}O{cEib0AJplk^B~W4s7wZML{O)F1+v&6wXE6@+XQ^&g>he)m|-(rYNihL zs)Sbbna}sq_`;8_3o!>tLd8a9a;x(46ddaAwzAZUMa;E}V&jzt8H#j<_z~}udy?d! zKSq|fd6R!ryI#F3u>~Eb;0Ah>;hT9jJuo0C){-i0Rway|9xO_A z9>0gIlt{C)d`xnQYs{Eqq9; ztZVeFSMWPXA(khj|NhIb6#4#?9AL3y966%b+mTi2Bxy8%2unDfrBG}jkFp-6F~!e!FM&i1nJ)KSs0tVXPumCZQjMw!t{8PW zGh0t3*?OxGGwCJ6+-}K#q7AP6|IvFcrPpAY|fA zj5&~V8_A5B2*jL^@kt1AMQyQ3*}vq;)n8U8cunnfoVZUSERj#Md%Saj>T6Uc6ryVb z>TtdCz0yn{AigAy60nWumRD&sSP+TY0tpJAWgy0H4v%z_C_9Kn!;>nnRvC9a*BKi3 z%f%I{k0(%HtF=I5;pVfrpdHV{*zoO+ifP1T;qfj|GxX#-U$4A3VeL89p_-G1rvX7l}WuQ~f? z*Lb7}4d)a7-Yk}na66-FkDHt%y2>T)zSe=X=Ei6aaM95%idd8aUod}~dpX~nSc7p6 zBY200%|tIJV!|yaKH|*HbtGq?tOtwEdZ&?o$s0E%O}?4MGxa7_Z$;O%N`ofi0Cq=< z+uupHhl8wdsMoq{YlS)=(Szo>pU&ae2HM-h^L@_Prm*^#3hKenq$6K^=~{I7cn0M2 zT|~mZ-+p2X&TO@s&GMZnreU;-4Fhu)<3+wRMB%}gY27euqH{k1DU5VIm7-(zU^_TM z$U(1x2kb!O)WFP%!r@+f&70#e!?EuCh6p=|W_yO{zg%N4E+7_OX8dvq%qY^gOLZ*P z_5@~j=pDP2cycY~XS5!R8)WOZ5=Nrl5|daXmq;JSgGz>LzVVWpEm$Th26A2*#Pe8V1Z6;dB%NI{9G*l^^dmtn(ca zN#D+lR+rX$vfYxrir|XQ{`~1K>Mru=n)=2~7L35V+?li(F5Q!qqVg&a^&MN~#M4i%$u6Y|>q64S0?vhNZQCjc`wvnAZp8#< zi<2E!rfA?m59v=#Hrn=iCtAw2ftP}ldGi4$2Zr8v4)J10X3#Tbsa9ea=RR-GmV{pB z<1xt0iayNQsgru*!+ov=*}LEFE*g$7RbHm|BICuaU2`8@TNmpwHP8$l)A2a_83;eG zy7EFlJX$CaM;^SL!b7k6h`I;)rR(Llv5!XM;OKK%IXPhbl2vGAfaPqYzr>O|^!6s7OnQFwAHB)REGOOxR`LwUu zI7_2}P5zW)3-aY8LyZhmT+BgZ{_@LKi%sy zT@|H-Qq=)R=3~@6ojorKUTvsZdBVegO~)~xM?frQNT<=C`IsrH2^%>~hDu@!g!YCY z5tRjU{{y-_@N5BHOA1+yz#SuOYWl3y1McH#J$oel_Fj0N+-pL3IyaV_=bkV#OXwkX zR)Ag2=1L>8tWeHdOuK7&-`4mAb+SE%f(=&e)q#AW2(;ywj@a_tPs%N0BordoN6dLT zTSy}uN+UJsfk{(uzXugsho7-xG5%)0GXsWl)*K~)6nLpRwu%5gfp*KSdCZso2s9M> z1M|eG`<9U6v&C$f9|g{iw*NfU~v1Q`BT8yM=k=Yej<@XsV$%Iq7&aRRScR}zuM z;*Lz&QWyN_d+V4Ny2>WLvV|wwkeSmP2SaCrw?WthHhYrD@QiH>>teh*2CGl_@g4|- zE9~Ggf{Zutvh&&>SqWgYoL%EF(lGDcsA3cY#xd(yNZsr4NH040XfPdvv5}d{x<3oJ zfMhc}GhaMBJ}+*p-QPu-vwSZmdm#CgU=Xy>N~g;cG9q2%hehm0jwBUUAg4IIyUW_U zPJl#35%8K&m-bL7geLz~ADA{8I+S{ou0v;~oKvp6h{?i- zL>0U$#Xdr2T&z0RyxV5)7pZ@{7)~Tp$1&Z5Cil+^_i!Vn_<1ve0EC&4abdU z8Mf>5l2Sv5FF9hoP2P?J4Hn|6XWJN!(fD>>HYh^k6d&cKsh8)5ueMmg)L3V(RBNVV ztrzf=V4z&b#9ChkM=i%+DG-Vl9#q{kNkoH}%nnN%*7z^&W{~oJzPZ-nZ(V`7+=9~w z=ER~}nj)Ucb34LZ*iV|PN?$6PBWjJxPT&l1jqn*(yqT;`X6FnAT$0!v95?d1YW6H^ zWZ1KbRfa~q_w16Du?c@LMzxqBQ`@%bU8X74SQqs&39&4GN#5%a?Z7Cn9Cyk-5Y&kI zKdL441F9$L_s3JL&JCb@=O&ZRH<5u1hBO4U*| z|5U;qwx_MIaS}zmW?S-79)LET|4a2aE;8lhV%I6hDC-%H)zm#dYW_<)z2WG`y_4+) z9p+tyeQ#6}o8dhYG|BVr_wc$eAi5hhI2sms23OIR6U!goZ@`PZ9f+u!FJ&acD+G3; zOwu_zBb1th5#5X2tV@Rw0p};nX+d2c2AUWkacz~TjwDq>syB^xkF9+R5pc<2Vd4bo zpw6WLmO11ciMapdP}nDnd-2&24Ay>9PT=tQAht_+>A2`+mGsuirT|zTz|Pb*3baD9 z^k3JZenuZZ+_DI7leFi?c=G}n0)g>+1>S)*X23Z_(JD#xEKIGxs|~}}4ZKR&bz#STx*PTJYY}7-I$phI(Pa~LY%d)OLTPvYW_js!#dlcy!LbG(o#^#Wxjw(x^%bB z1{cx2wT+cTWRiS$p}4Onc8vWPKY&y6?+Kg!%l_T{9X7V#n`VX_u?cpXwAn!oT|TKnOo1&W zC{6Q#K6MsNck0qNbOyRMoq1^UPi-6s-0};0Ctjj9g=>b&QgoY7l&D4)2!Xw>N&Alj zdus6LkrRL}#~jF84`*cU&{o@|xoA`mZ2cz^S_Z1D^28X>Lfy83FWR7>v6MU+l2K%Z zCJgSIqOk_{tJOin?jbtzGvyobpCWD(=zY27d9>B(B>J^fWleH)vwK71FzYWefb6H% zS5YU}viZ^wl<<}N&BIYg@$z007@d*NhNQVvU&Woj~l4@t467~#L%tri#4+ER9h-Bn%`>| zTF`@ws>M3}3n&RnfM}XvSV4aG_g7S1ml$9jw>uB~a*_u_(>PqYr!T4u;G&TXZ*9R9 z2XRfj-9K}gMo#I0h2`O7T49Aiyv@6(ZP2%w%9Dh#25}6+UVO#rh_p_CR5?$g}h%A zCr>eDWF~|9{0UUUBd!UUcM~WfD!uinKjxbp$X-lWv{Kp7RZFl%)-RF>2`tMj7V7nI zzu}0Rm~4^;Jq3snGmRs3OEQwIyXvJr?XYe4mj&c7+{1A#8nW)p4kf!-F_}8@zu9dY z3AW=m-&=649DE!@!YK?3fGyv;v8!?BsrzmDK*FmebbT!Rb)>2c6@L&bMB3DDR!-$= zbsx5^wn9Z8m1Ps%&S8Fm3%B*wvi zn*G!HhU0_IoWx%M;lmrr7o~C!v`b(*+Yz~l<_ec74vNre6n7iY0$jg0nW5D~3u~#- z3EOIVF4x=VSxe{1UEpv*#>bg%heBlH9p=1<(KJ&v{Ni~IGKG!@8G6bWH%Js@{y9p} zHU>i^#P`&6fWh!}?>&cmR;Mx**Pyq+#jBms?6WVbDh_|TfWMvRfC_W!aBWaDjKs ze5a%=Xya-oSi#wndI2HPJK^4K4Z>@(`^#6Hz}4?Zo`b+L05__*-7|S0Q0=1yaAsfk z($BXey&G3BDW=aRHa;M{b6dk^Rdut4e(2e5{Z!t@=LDfpvFA@@7@g^w_L8|3S)g)U zWswZ7fmRMY>JVY>J#Z*7|Vm!VvAxB9_qS7BrxLjde`zjHaRMv3SmS)VG?0_=e*rpsG)9ICoCIyW9sIUvE!5 z-3m9+fTWUp7OwCask=DCv#ra^U9uX_NgZ1j5n(+^0+YRA{mfGWiM~%n)y#ZIQRaP)~nxbqsBKR-#g6-|{gDUuLL#HI)pXJgu6vO3Ky& z#}@~{lDrP~bgSiH-vFhQF6ILlbp+3$)E`a^QjNXa8+|*}xnp&2nHnhhVf!ujZ~W^Z zxIN^fs*Dl)yIY~OBVy_|W2+|b08|2u-1Bk~wkgE=#uGTKwy^#1p$T(CijgU+&d=e| zbG(_7hvYJmPISf3E8u9e%JzsexTh;V+51Xt9EV}47#Im6db+I_Nf^CqkTXK7E71Gm zblIp%0Z(HLHX=Il{4yxq^}(_0X}$*j_RI2OIB9=|dhk9r7i5kUsqzQmanF5mbWYJY zC?0?1XhieupP^{?WmzTT6FtFD25$zjLhpt%T}IxcAaaeBHgR$0GG<|tM>BdAA5M}r z+aC|HkkrZ(T;OuwPWYW&X9N#s$%wM;=cV0t^X;$gBu2eWx8X6)qE9ilns^o+x5cxE zTvxpe_{S@z2w9ggR$j$$r{iQmr7uAt(oE~Gwt!H^_$53k@3s5$9=npCO1oa}B|!tG zbMr!*13wTBlO@lqa?)5>RB=6@cP)~KF4d$SM=UiK%S=bZaZYk-zd4rrR7I%^S_N~B z!=0d%g0`<2d*sq`POb+)i;dEXNe)hkEQl-G=ew7jO4W<*SL!8RZEm$+d-j)bJNJRM zh1tBszLm#zcJLlLzJH+Z@3*kh7fKhO$T)uBZJUm+B+g*Z+9=bUpo_`K;27aD^tK5* zhypUM>I9R;3ZeT_^XAW&HZWip{RZY+A{~}{@QQ_4=`H=p%6-ezk>ye|K8vMuK+uFE z1~bM{fnJt{oR!3xNUrNkUz~5iQkvR+F=p-))reSb?x_>8o06v0koJ`j7G+~8_)4Pq zF1^BMoQ(u?h1OQOG)4A4_q9khz?=J(j@S zzFAA;=C<@47bIyKKknS_MNw#T&H262-VuuL?vY)sP!rxk?mhVbm*khR+E9Xhkc ztTl;kCP1nylUG-{B8J1s%2U$drm}Tpl~d`fG+nhiaG&vNP)N6PQ}^STk95-q6r{%= zenJv+!QK9c$xtFLti*esfTb!_*sRe9W*}sl9Ej~L{6?^mX zQvP(a;jC3&%jNg!364K%aHYglJ4U)RSGHzo0m%SRef#xOwwk%5YrA{3I{WOjGeh9Oq$ zfIe?Idb|sxT$|Eh32+PAc*@$WXMAsO&>p7U)z*;*kAg&{1qAtiS!ael$GrF7LZ$8X z9VpJ{0^Z@|Bsbr*ez*e7%|nAcxI~(T%=w2W_FFlJxzr#1UAwov7O=Z8b%2a_G=c2R z&D5@njK8rNw7C^dg`)E27n|TT=`PGX^rV((zH!5RBs*#eCbFDBOygjWFmEo#PerOF90c|+-K`Cl5MTr z$EE5e)|?1M6{o0HK+p=(A1XV_6pjLNsPFTaXYt;-JHHd1gJxeE%0m|+X!rn8^mL`H z%?o+McSGy5E?B!-If@!gO_0(Kpi1^8>=Y=ew?iRJts-O{)yefVbD38!SZ4%9-tRE7 z4695u*j$P+Z=G4Co0&%LSP?ezabNK?!f{~(0MSfcdpnFa=+(6Mu6sPXA!BLiEHt#U zba7#R@pI*3tW1y$jP6>@cJ(BkPI+tQF#$lDm0gM?VO!m7&|{0jX0#MBygdu-fyRIP~JQFGvM=_xBXsKgri=Q-Tw^aYvZ&1AuIX)cS^){Qf%iH!N$ta7etcyF3)s+ zK*(H?@*IwL2XGbhx(=-3(vc}fRpHjPp>@|(EPa1e zJyTO{$fQ%*1X>uYubC=q@=NsBvXyhhiAUHl3D-c08Sn=C=02n_* z+U-GUj1uRA5;E+*m|j6^1c%R^_~Jb)36ZVvZk$s2Yy8l1H!Q!j?xCnhMgNRpF4HpE zXOUp5rSqa~Sc1pHRLG-+wyLXRAxk8yuTseU-k_A!n5K!VqEQ=e6Z?tImwqgk3f7lS zN#zdGlpSET=09m=XcOsbX3_@|8Ry(+^{${SpOU=x?Y+{MjpFfL0 zISZls5{L-C1V4S6Kz-gASlqhzS6lh9w>POa|B7o5A}NPa=+X1^BU;=%$oL*?v2pZn zkR#CN(>sI|!I`6ejtKH#sfLO`iyK2|1qarEyjXb?oQf-`oElg*+@6&N0%o`S1gtf)RQ zS=CUr4(^1ne(H0$9dVWYkhIseiG#nj^VDq_BBZ_Ib@m9fnSUY9x$t%LIL_ygb-t5? z@x&qE^#v4Rw6?Qw-0sJvtG^D}z;9zsKF$k#On;l@if6P0G?I? za2ouv(~B$Jct#ki3=dnA{fP}RRY1Zdo{IN9-kROWd)91HZ>iJ<9Wt_nREFEy^rK$c zR6wJysdHs}ZRRI5ra2bP5NUc4^RG{R0|}nyHJFLbB!&}=mv!#Na2bO8BKeZf0*ZZF*)t;N+NjM4-`?blku z9XyWQ6~U%s#J3oNI!d-R0){N$>Y?-%Zwfp3Qn=(evR)(Zu zL6+^)Q)?zj?Gi>^#QVIR=uwrh9*IU5Jg0W6$|fD$sIEMf43Sj}GK|$IQ-}#HnN#+# z(nMTN6p7V5rI*F<$IE{aNDYIIjN2GNJOr9LqRqS77*PXvh45f7<>OxPNuyrw za*k99%U@`Da0FHc>~P^;doTuTSj6{vGOPHft9;@^?xV%C->1t#@^b?Vsw1Q0cFidW z#FjXU!f=`jb)uN5lfU2HpCM>UV9^ModeM^bfC47#3OXr!pO2(8Y;DmmUqG%=Aj^iA zF(F&E*N^UdIdtlnc@im>>tCY#0V+g+$uV5}8Y2t%-VyEVyLA%bQ&*^jb#_J zXENVk!~~U(&%Nw4&#_DZDsPVXg?;~)5#_U`inI1E@l*d8+Dj?+Xm!30=@An>I!`-X zNA`Q6X=?x74Y0 zpT;)^Z~7(g|0{gNrRw42<(1n)9f99HLO(n_Lhm)yVF<*@-|f0+qY>9(0|AAG|AGtk z!&*g)tfN%NQ{<81fVo}4fdc%~FB#b9g>mrn3;5;gUD*8LfT?5vGnmqvF4I1c! z&_x1m4R694-uj6wzkj0j!5shq3=fI4`Gx`?W%b)2#IeHUnMXSTa2HYqROJJBb3g!z zdHfQCb`}96ofFNBo}QnNTV6-)1$VAXIobj95K4gi;b8!}JOXS2`9#CaHMoHNvSQKG zLHG3m2D}~4g>Dk^R&VzKBmqJJ`WrwfhjCA#U4aRxfS*;G12pOM)$!{`^8?uQ>16@~ zJOKSB-_)Mzg%i~6_OB2iY^@Jtoxu99178uyGYDvD1frh@AAzY4TKNK2=R0{XPtz{;mAf~psieOdB>jKLlRh};no%;_;dd`kvyn2@Gb18uEi!Uz-D`97CI z*aHX3f8I>LuI_X7@8vM;_Nuucq*ZU%GFolxyulbCsJYf<9Oz*rLB8&?c`_go4AGO( z(13vW=>Y1}#{uuw0)g$&?d{I&nk>Qm^w8O%`{7!^)bS6&MSToBi>iD20ZOp{ANiOs z*H8NZC=g%^0s@jga7$>P-ETIoG1%s}M&ZmZ>;Wjlq4+#J#NO}o`)W35gh7iP#?t5R z-LCjlsZEuBS>fdK>e#Qt#N=Q%Ko1X)Apjnufe!!z1PWMK7zE(gZ@Ty>)`J@UFJdKF zV<7O*PgCSZX|LAHTO{z6FJut#-K@5z9g1T=z>6>Pc9vckeozO%@2t}=?!&Lqdo9f` z_55!qv9T+~Q)})w{NC@q7PoNTjxVA7l(Tq&avr3(IpE8#ywM&0xkZ3A;myqNwTiH2 z;SvFOqc~#*_*+=&?>s&?NIuLx(B_3e96>05)w>b0@jDA4k-qN&8L(Vkk9~tB|E#Nt@e^ep{fvo9)V?OQ>h?s_7#&CeQzM2~ZcuNY55Uy#x7vCk2_RjWv zkhe^nvXCF$UsdjZ4l%I(nb|%;r2Lp$A+6eqBQqZN9-lr5}Ly^JD#*iEE*a_y;kAvw@BozCbHBuRJB51sGCoXOOU?4cvHm)i{ zbku%Z7439`(XkLGZ+ANhSvKdG-$ld!3K|(E0lO|snYgD&YBfdXHw{V(n#sbGf${=W zmV7VDO;frl+!vRFeF%BOyfh*RPDbB@tI6s8B>@1XQ7p$cB?V+o4N>j_pc;vPqIeggx?oG5q!y%~O8dz^0U7{ozt z&ln@0D?5rA_hYSOCw8)y`!F(JsG$3p=XGduntik0#6fy&NF_t7n+8O z{610$G5KD>sy2=0u-PVdc{bg>^D{|Bid_lRrfI!sg45|q?UTN!tcA!JdfscOACHm#^=`3X>M>OS%^`!9)xQCVb*@e(iP7! z%VOg}GAkl}E^(-;KP{Pe?jx!Msm(f!jxOSpMga0bZV9RLv=XmsD+*wWGE=rdNl9Y!q&EF*?n) RPJDp5Kd6%Fvy1Urpn_TXwbpHPI*vQ#rTxe?~_ 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 sum0aQ_rCFlrG4|hE*;* Date: Fri, 9 Jun 2023 19:34:12 +0200 Subject: [PATCH 29/62] ex16: allowing starting points to be read from file instead of drawn from provided distributions --- examples/example_16/ulens_model_fit.py | 182 ++++++++++++++++++++++--- 1 file changed, 160 insertions(+), 22 deletions(-) diff --git a/examples/example_16/ulens_model_fit.py b/examples/example_16/ulens_model_fit.py index 7d8af57e..79e168e7 100644 --- a/examples/example_16/ulens_model_fit.py +++ b/examples/example_16/ulens_model_fit.py @@ -38,7 +38,7 @@ except Exception: raise ImportError('\nYou have to install MulensModel first!\n') -__version__ = '0.30.10' +__version__ = '0.30.10dev' class UlensModelFit(object): @@ -67,7 +67,23 @@ class UlensModelFit(object): starting_parameters: *dict* Starting values of the parameters. It also indicates the EMCEE fitting mode. + There are two possibilities for the information provided. + First, you can provide a name of file with sets of + parameters and names of parameters. For example: + + .. code-block:: python + + { + 'file': 'STARTING_POINTS.txt', + 'parameters': 't_0 u_0 t_E' + } + + In that case the text file has three columns and + at least 2 * 3 = 6 rows with values. + + Second, you can provide distribution that defines distributions + from which values of parameters will be drawn. Keys of this *dict* are microlensing parameters recognized by *MulensModel* and values are *str*. First word indicates the distribution (allowed: ``gauss``, ``uniform``, and @@ -286,7 +302,7 @@ def __init__( ): self._check_MM_version() self._photometry_files = photometry_files - self._starting_parameters = starting_parameters + self._starting_parameters_input = starting_parameters self._prior_limits = prior_limits self._model_parameters = model self._fixed_parameters = fixed_parameters @@ -301,6 +317,7 @@ def __init__( self._set_default_parameters() if self._task == 'fit': self._guess_fitting_method() + self._check_starting_parameters_type() self._set_fit_parameters_unsorted() self._check_imports() @@ -318,7 +335,7 @@ def _which_task(self): Check if input parameters indicate run_fit() or plot_best_model() will be run. """ - if self._starting_parameters is not None: + if self._starting_parameters_input is not None: fit = True elif self._prior_limits is not None: fit = True @@ -364,7 +381,7 @@ def _check_unnecessary_settings_plot(self): Make sure that there arent' too many parameters specified for: self._task == 'plot' """ - keys = ['_starting_parameters', '_min_values', '_max_values', + keys = ['_starting_parameters_input', '_min_values', '_max_values', '_fitting_parameters', '_prior_limits'] for key in keys: if getattr(self, key) is not None: @@ -425,7 +442,7 @@ def _guess_fitting_method(self): guess what is the fitting method based on parameters provided """ method = None - if self._starting_parameters is not None: + if self._starting_parameters_input is not None: method = "EMCEE" if self._prior_limits is not None: if method is not None: @@ -442,19 +459,54 @@ def _guess_fitting_method(self): "starting_parameters or prior_limits, respectively.") self._fit_method = method + def _check_starting_parameters_type(self): + """ + Check if starting parameters are read from file or + will be drawn from distributions specified. + """ + if 'file' in self._starting_parameters_input: + in_type = 'file' + keys_expected = {'file', 'parameters'} + keys = set(self._starting_parameters_input.keys()) + if keys != keys_expected: + error = ('Wrong starting parameters keys. Expected: ' + + str(keys_expected) + '; Provided: ' + str(keys)) + raise KeyError(error) + else: + in_type = 'draw' + + self._starting_parameters_type = in_type + def _set_fit_parameters_unsorted(self): """ Find what are the fitted parameters. It will be sorted later. """ if self._fit_method == "EMCEE": - unsorted_keys = self._starting_parameters.keys() + if self._starting_parameters_type == 'draw': + unsorted_keys = self._starting_parameters_input.keys() + elif self._starting_parameters_type == 'file': + unsorted_keys = self._get_unsorted_starting_parameters() + else: + raise ValueError( + 'unexpected: ' + str(self._starting_parameters_type)) elif self._fit_method == "MultiNest": unsorted_keys = self._prior_limits.keys() else: raise ValueError('unexpected method error') + self._fit_parameters_unsorted = list(unsorted_keys) self._n_fit_parameters = len(self._fit_parameters_unsorted) + def _get_unsorted_starting_parameters(self): + """ + Make sure that a list of parameters is provided + """ + parameters = self._starting_parameters_input['parameters'] + if isinstance(parameters, (str)): + parameters = parameters.split() + + return parameters + def _check_imports(self): """ check if all the required packages are imported @@ -466,6 +518,7 @@ def _check_imports(self): required_packages.add('emcee') elif self._fit_method == "MultiNest": required_packages.add('pymultinest') + if self._plots is not None and 'triangle' in self._plots: required_packages.add('corner') @@ -480,6 +533,7 @@ def _check_imports(self): "\nFor corner package it's enough that you run:\nwget " + "https://raw.githubusercontent.com/dfm/corner.py/" + "v2.0.0/corner/corner.py") + raise ImportError(message) def run_fit(self): @@ -505,10 +559,12 @@ def run_fit(self): self._parse_fit_constraints() if self._fit_method == "EMCEE": self._parse_starting_parameters() + self._check_fixed_parameters() self._make_model_and_event() if self._fit_method == "EMCEE": - self._generate_random_parameters() + self._get_starting_parameters() + self._setup_fit() self._run_fit() self._finish_fit() @@ -1072,7 +1128,13 @@ def _get_n_walkers(self): if 'n_walkers' in self._fitting_parameters: self._n_walkers = self._fitting_parameters['n_walkers'] else: - self._n_walkers = 4 * len(self._starting_parameters) + if self._starting_parameters_type == 'file': + self._n_walkers = None + elif self._starting_parameters_type == 'draw': + self._n_walkers = 4 * self._n_fit_parameters + else: + raise ValueError( + 'Unexpected: ' + self._starting_parameters_type) def _parse_fitting_parameters_MultiNest(self): """ @@ -1376,6 +1438,36 @@ def _read_prior_t_E_data(self): self._prior_t_E_data['function'] = function def _parse_starting_parameters(self): + """ + Read the starting parameters from file or + change the format of provided information. + """ + if self._starting_parameters_type == 'file': + self._read_starting_parameters_from_file() + elif self._starting_parameters_type == 'draw': + self._parse_starting_parameters_to_be_drawn() + else: + raise ValueError( + 'unexpected: ' + str(self._starting_parameters_type)) + + def _read_starting_parameters_from_file(self): + """ + Read starting parameters from a file. + """ + file_name = self._starting_parameters_input['file'] + try: + data = np.loadtxt(file_name, unpack=True) + except Exception: + raise RuntimeError('Error while reading file: ' + file_name) + + if len(data.shape) != 2 or data.shape[0] != self._n_fit_parameters: + raise ValueError( + 'Something wrong in shape of data read from ' + file_name) + + self._starting_parameters_list = data.T.tolist() + self._n_walkers = len(self._starting_parameters_list) + + def _parse_starting_parameters_to_be_drawn(self): """ replace self._starting_parameters with dict that has values [*str*, *float*, ...] @@ -1384,7 +1476,7 @@ def _parse_starting_parameters(self): accepted_types = ['gauss', 'uniform', 'log-uniform'] out = dict() - for (key, value) in self._starting_parameters.items(): + for (key, value) in self._starting_parameters_input.items(): words = value.split() if words[0] not in accepted_types: raise ValueError( @@ -1553,6 +1645,28 @@ def _get_example_parameters_EMCEE(self): """ get sample values of parameters for EMCEE - only to make mm.Model """ + if self._starting_parameters_type == 'file': + return self._extract_example_parameters_EMCEE() + elif self._starting_parameters_type == 'draw': + return self._draw_example_parameters_EMCEE() + else: + raise ValueError( + 'unexpected: ' + str(self._starting_parameters_type)) + + def _extract_example_parameters_EMCEE(self): + """ + Provide example parameters that will be used to initialize + MM.Model and MM.Event. Sets of parameters are already read, + so we just take 0-th set. + """ + keys = self._fit_parameters_unsorted + values = self._starting_parameters_list[0] + return dict(zip(keys, values)) + + def _draw_example_parameters_EMCEE(self): + """ + Randomly draw parameters or EMCEE - only to make mm.Model. + """ parameters = dict() for (key, value) in self._starting_parameters.items(): # We treat Cassan08 case differently so that @@ -1574,6 +1688,21 @@ def _get_example_parameters_EMCEE(self): raise ValueError('internal error: ' + value[0]) return parameters + def _get_starting_parameters(self): + """ + Generate random parameters or read them from file. + Check if there are enough of them and store. + """ + if self._starting_parameters_type == 'file': + starting = self._starting_parameters_list + elif self._starting_parameters_type == 'draw': + starting = self._generate_random_parameters() + else: + raise ValueError( + 'unexpected: ' + str(self._starting_parameters_type)) + + self._check_and_store_generated_random_parameters(starting) + def _generate_random_parameters(self): """ Generate a number of starting parameters values. @@ -1590,9 +1719,7 @@ def _generate_random_parameters(self): max_iteration, settings) starting.append(values) - starting = np.array(starting).T.tolist() - - self._check_generated_random_parameters(starting) + return np.array(starting).T.tolist() def _get_samples_from_distribution(self, n, settings): """ @@ -1611,8 +1738,28 @@ def _get_samples_from_distribution(self, n, settings): values = np.exp(np.random.uniform(beg, end, n)) else: raise ValueError('Unrecognized keyword: ' + settings[0]) + return values + def _check_and_store_generated_random_parameters(self, starting): + """ + Check if the set of points provided has at least self._n_walkers + points inside the prior and save these. + """ + verified = self._check_generated_random_parameters(starting) + + if len(verified) < self._n_walkers: + raise ValueError( + "Couldn't generate required starting points in a prior. " + "Most probably you have to correct at least one of: " + "starting_parameters, min_values, max_values, or " + "fit_constraints.\nGot " + str(len(verified)) + " walkers in " + "the prior, but required " + str(self._n_walkers) + ".\n" + "If you think the code should work with your settings, " + "then please contact Radek Poleski.") + + self._kwargs_EMCEE['initial_state'] = verified + def _check_generated_random_parameters(self, starting): """ Check if the set of points provided has at least self._n_walkers @@ -1628,16 +1775,7 @@ def _check_generated_random_parameters(self, starting): if len(out) == self._n_walkers: break - if len(out) < self._n_walkers: - raise ValueError( - "Couldn't generate required starting points in a prior. " - "Most probably you have to correct at least one of: " - "starting_parameters, min_values, max_values, or " - "fit_constraints.\nGot " + str(len(out)) + " walkers in " - "the prior, but required " + str(self._n_walkers) + ".\n" - "If you think the code should work with your settings, " - "then please contact Radek Poleski.") - self._kwargs_EMCEE['initial_state'] = out + return out def _ln_prob(self, theta): """ From 1128a6920f0b58e9e86c21ba568cf2d79460ad4f Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 16 Jun 2023 05:41:25 +0200 Subject: [PATCH 30/62] parameter_names updated for xallarap --- documents/parameter_names.pdf | Bin 86783 -> 88285 bytes documents/parameter_names.tex | 31 +++++++++++++++---------------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/documents/parameter_names.pdf b/documents/parameter_names.pdf index 52d30d3a7f3ef7dac758d3985291d40043e4d161..c5a4bd42e739ba1f29dc60ade22cd011a8ab6904 100644 GIT binary patch delta 46589 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 z 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 Ks3eu8;Qt?lpnK#1 delta 45209 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®9=+eU_n{{yUtp9h~9EV@hkh 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 Date: Fri, 16 Jun 2023 08:39:40 +0200 Subject: [PATCH 31/62] bugs in Model._plot_arrow() --- source/MulensModel/model.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/model.py b/source/MulensModel/model.py index 25247879..e2dff689 100644 --- a/source/MulensModel/model.py +++ b/source/MulensModel/model.py @@ -626,16 +626,18 @@ def _plot_single_trajectory(self, times, parameters, satellite_skycoord, self._plt_plot(trajectory.x, trajectory.y, kwargs) if arrow: - self._plot_arrow(times, trajectory) + self._plot_arrow(times, trajectory, kwargs, arrow_kwargs) - def _plot_arrow(self, times, trajectory): + def _plot_arrow(self, times, trajectory, kwargs, arrow_kwargs): """ - XXX - code below has to be tested + Plot arrow for given trajectory. """ + width_scaling_factor = 0.01 if len(times) > 2: index = int(len(times)/2) else: index = 0 + x_0 = trajectory.x[index] y_0 = trajectory.y[index] d_x = trajectory.x[index+1] - x_0 @@ -645,12 +647,13 @@ def _plot_arrow(self, times, trajectory): xlim = plt.xlim() ylim = plt.ylim() width = np.abs(xlim[1]-xlim[0]) * np.abs(ylim[1]-ylim[0]) - width = width**.5 / 100. + width = width**.5 * width_scaling_factor color = kwargs.get('color', 'black') kwargs_ = {'width': width, 'color': color, 'lw': 0, 'zorder': -np.inf} if arrow_kwargs is not None: kwargs_.update(arrow_kwargs) + plt.arrow(x_0, y_0, d_x/dd, d_y/dd, **kwargs_) def plot_source(self, times=None, **kwargs): From 42eb31318abfd5442dfde78861d25d0952bf6705 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 23 Jun 2023 05:34:18 +0200 Subject: [PATCH 32/62] xallarap and binary source and not yet allowed --- source/MulensModel/modelparameters.py | 4 ++++ source/MulensModel/tests/test_ModelParameters.py | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index b27b8a6a..1ae8b8f0 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -337,6 +337,10 @@ def _check_types(self, alpha_defined): 'You defined alpha for single lens model ' 'without external mass sheet. This is not allowed.') + if n_sources > 1 and self._type['xallarap']: + raise NotImplementedError('We have not yet implemented xallarap ' + 'and multiple luminous sources') + def _divide_parameters(self, parameters): """ Divide an input dict into 2 - each source separately. diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 1ad75ffa..7ad38c5a 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -490,3 +490,17 @@ def test_is_xallarap_2(): parameters = {'t_0_1': 0, 'u_0_1': 1, 't_0_2': 5, 'u_0_2': 0.1, 't_E': 9} model_params = mm.ModelParameters(parameters) assert not model_params.is_xallarap + + +class test_errors(unittest.TestCase): + def test_xallarap_and_binary_source(self): + """ + Confirm that binary source and xallrap cannot be defined in + the same model + """ + parameters = { + 't_0_1': 0, 'u_0_1': 1, 't_0_2': 5, 'u_0_2': 0.1, 't_E': 9, + 'xi_period': 12., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 10., + 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} + with self.assertRaises(NotImplementedError): + mm.ModelParameters(parameters) From 75f49f28e1b9d620f17734f0a9f141a6dd8813ee Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 23 Jun 2023 10:21:07 +0200 Subject: [PATCH 33/62] xallarap and Cassan08 are not allowed --- source/MulensModel/modelparameters.py | 32 ++++++++++++------- .../MulensModel/tests/test_ModelParameters.py | 13 ++++++++ 2 files changed, 34 insertions(+), 11 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 1ae8b8f0..42650e7e 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -319,17 +319,7 @@ def _check_types(self, alpha_defined): raise KeyError('Orbital motion of the lens requires two lens ' 'components but only one was provided.') - # Cassan08 prevents some other features: - if self._type['Cassan08']: - if self._type['parallax']: - raise KeyError('Currently we do not allow parallax for ' - 'Cassan (2008) parameterization.') - if self._type['lens 2-parameter orbital motion']: - raise KeyError('Cassan (2008) parameterization and parallax ' - 'are not allowed') - if n_sources > 1: - raise KeyError("Cassan (2008) parameterization doesn't work" - "for multi sources models") + self._check_types_for_Cassan08() if alpha_defined: if self._n_lenses == 1 and not self._type['mass sheet']: @@ -341,6 +331,26 @@ def _check_types(self, alpha_defined): raise NotImplementedError('We have not yet implemented xallarap ' 'and multiple luminous sources') + def _check_types_for_Cassan08(self): + """ + Check if Cassan08 is used and if so, then make sure that + the trajectory is rectilinear and there is only one source. + """ + if not self._type['Cassan08']: + return + + types = ['parallax', 'xallarap', 'lens 2-parameter orbital motion'] + for type_ in types: + if self._type[type_]: + raise NotImplementedError( + 'Currently we do not allow Cassan (2008) ' + 'parameterization of binary lens and ' + type_) + + if self._n_sources > 1: + raise NotImplementedError( + "Cassan (2008) parameterization doesn't work for " + "multi sources models") + def _divide_parameters(self, parameters): """ Divide an input dict into 2 - each source separately. diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 7ad38c5a..0a8dabe2 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -504,3 +504,16 @@ def test_xallarap_and_binary_source(self): 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} with self.assertRaises(NotImplementedError): mm.ModelParameters(parameters) + + def test_xallarap_and_Cassan08(self): + """ + Confirm that xallrap and binary lens in Cassan 2008 parameterization + cannot be defined jointly + """ + parameters = { + 's': 1, 'q': 0.8, 'x_caustic_in': 0.1, 'x_caustic_out': 0.15, + 't_caustic_in': 1000, 't_caustic_out': 2000., + 'xi_period': 12., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 10., + 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} + with self.assertRaises(NotImplementedError): + mm.ModelParameters(parameters) From b054069b64fdb99eba3000aca297596155320fd3 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 24 Jun 2023 03:00:41 +0200 Subject: [PATCH 34/62] moving code in test_ModelParameters.py to prepare future tests --- .../MulensModel/tests/test_ModelParameters.py | 77 ++++++++++--------- 1 file changed, 39 insertions(+), 38 deletions(-) diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 0a8dabe2..4bc11a1d 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -385,24 +385,27 @@ def test_failing_single_lens_with_mass_sheet(self): parameters.shear_G = 0. +xallarap_parameters = { + 't_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, + 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 0.123, + 'xi_inclination': 9.8765, 'xi_argument_of_latitude_reference': 24.68, + 't_0_xi': 1.} + + def setup_xallarap(key): """ Setup for xallarap tests. """ - parameters = {'t_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, - 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 0.123, - 'xi_inclination': 9.8765, - 'xi_argument_of_latitude_reference': 24.68, - 't_0_xi': 1.} - model = mm.ModelParameters(parameters) - return (model, parameters[key]) + model = mm.ModelParameters(xallarap_parameters) + return (model, xallarap_parameters[key]) -tested_keys = ['xi_period', 'xi_semimajor_axis', 'xi_Omega_node', - 'xi_inclination', 'xi_argument_of_latitude_reference', 't_0_xi'] +tested_keys_1 = ['xi_period', 'xi_semimajor_axis', 'xi_Omega_node', + 'xi_inclination', 'xi_argument_of_latitude_reference'] +tested_keys_2 = tested_keys_1 + ['t_0_xi'] -@pytest.mark.parametrize("key", tested_keys) +@pytest.mark.parametrize("key", tested_keys_2) def test_xallarap_set_value_1(key): """ Check if xallarap settings of xallarap are correctly changed via dictionary @@ -414,7 +417,7 @@ def test_xallarap_set_value_1(key): assert getattr(model, key) == new_value -@pytest.mark.parametrize("key", tested_keys) +@pytest.mark.parametrize("key", tested_keys_2) def test_xallarap_set_value_2(key): """ Check if xallarap settings are correctly changed via attribute @@ -447,6 +450,31 @@ def test_negative_semimajor_axis(self): with self.assertRaises(ValueError): setattr(model, key, new_value) + def test_xallarap_and_binary_source(self): + """ + Confirm that binary source and xallrap cannot be defined in + the same model + """ + parameters = { + 't_0_1': 0, 'u_0_1': 1, 't_0_2': 5, 'u_0_2': 0.1, 't_E': 9, + 'xi_period': 12., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 10., + 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} + with self.assertRaises(NotImplementedError): + mm.ModelParameters(parameters) + + def test_xallarap_and_Cassan08(self): + """ + Confirm that xallrap and binary lens in Cassan 2008 parameterization + cannot be defined jointly + """ + parameters = { + 's': 1, 'q': 0.8, 'x_caustic_in': 0.1, 'x_caustic_out': 0.15, + 't_caustic_in': 1000, 't_caustic_out': 2000., + 'xi_period': 12., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 10., + 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} + with self.assertRaises(NotImplementedError): + mm.ModelParameters(parameters) + @pytest.mark.parametrize( "parameter", @@ -490,30 +518,3 @@ def test_is_xallarap_2(): parameters = {'t_0_1': 0, 'u_0_1': 1, 't_0_2': 5, 'u_0_2': 0.1, 't_E': 9} model_params = mm.ModelParameters(parameters) assert not model_params.is_xallarap - - -class test_errors(unittest.TestCase): - def test_xallarap_and_binary_source(self): - """ - Confirm that binary source and xallrap cannot be defined in - the same model - """ - parameters = { - 't_0_1': 0, 'u_0_1': 1, 't_0_2': 5, 'u_0_2': 0.1, 't_E': 9, - 'xi_period': 12., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 10., - 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} - with self.assertRaises(NotImplementedError): - mm.ModelParameters(parameters) - - def test_xallarap_and_Cassan08(self): - """ - Confirm that xallrap and binary lens in Cassan 2008 parameterization - cannot be defined jointly - """ - parameters = { - 's': 1, 'q': 0.8, 'x_caustic_in': 0.1, 'x_caustic_out': 0.15, - 't_caustic_in': 1000, 't_caustic_out': 2000., - 'xi_period': 12., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 10., - 'xi_inclination': 50., 'xi_argument_of_latitude_reference': 200.} - with self.assertRaises(NotImplementedError): - mm.ModelParameters(parameters) From c111893005741638f8aced2b464df5d371f64773 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 24 Jun 2023 03:22:28 +0200 Subject: [PATCH 35/62] adding unit test for missing xallarap parameters --- source/MulensModel/modelparameters.py | 13 ++++++++++++- source/MulensModel/tests/test_ModelParameters.py | 10 ++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 42650e7e..d54b9a6d 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -293,7 +293,7 @@ def _set_type(self, keys): 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out', 'lens 2-parameter orbital motion': 'dalpha_dt ds_dt', 'mass sheet': 'convergence_K shear_G', - 'xallarap': ('xi_period xi_semimajor_axisi xi_inclination ' + 'xallarap': ('xi_period xi_semimajor_axis xi_inclination ' 'xi_Omega_node xi_argument_of_latitude_reference')} parameter_to_type = dict() @@ -497,6 +497,7 @@ def _check_valid_combination_1_source_standard(self, keys): self._check_valid_combination_1_source_parallax(keys) self._check_valid_combination_1_source_mass_sheet(keys) self._check_valid_combination_1_source_binary_lens(keys) + self._check_valid_combination_1_source_xallarap(keys) def _check_valid_combination_1_source_t_0_u_0(self, keys): """ @@ -597,6 +598,16 @@ def _check_valid_combination_1_source_binary_lens(self, keys): raise KeyError( 't_0_kep makes sense only when orbital motion is defined.') + def _check_valid_combination_1_source_xallarap(self, keys): + """XXX""" + if not self._type['xallarap']: + return + checked = ('xi_period xi_semimajor_axis xi_inclination ' + 'xi_Omega_node xi_argument_of_latitude_reference').split() + for parameter in checked: + if parameter not in keys: + raise KeyError(parameter) + def _check_valid_combination_1_source_Cassan08(self, keys): """ Check parameters defined for Cassan 2008 parameterization. diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 4bc11a1d..2d746345 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -430,6 +430,16 @@ def test_xallarap_set_value_2(key): class TestXallarapErrors(unittest.TestCase): + def test_missing_xallarap_parameters(self): + """Make sure that the required xallarap parameters are all defined""" + for parameter in tested_keys_1: + parameters = {**xallarap_parameters} + parameters.pop(parameter) + with self.assertRaises(KeyError): + mm.ModelParameters(parameters) + print("Test failed (i.e. KeyError was not raised) for ", + parameter) + def test_negative_period(self): """ Make sure that period is positive From a6e1ba4d4315554d766df816899f2e4a37f6e099 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 30 Jun 2023 02:45:37 +0200 Subject: [PATCH 36/62] _check_valid_combination_1_source_xallarap() finished for circular orbits --- source/MulensModel/modelparameters.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index d54b9a6d..b3b22648 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -599,12 +599,16 @@ def _check_valid_combination_1_source_binary_lens(self, keys): 't_0_kep makes sense only when orbital motion is defined.') def _check_valid_combination_1_source_xallarap(self, keys): - """XXX""" + """ + If xallarap parameters are defined, + then make sure there are all required parameters + """ if not self._type['xallarap']: return - checked = ('xi_period xi_semimajor_axis xi_inclination ' - 'xi_Omega_node xi_argument_of_latitude_reference').split() - for parameter in checked: + + required = ('xi_period xi_semimajor_axis xi_inclination ' + 'xi_Omega_node xi_argument_of_latitude_reference').split() + for parameter in required: if parameter not in keys: raise KeyError(parameter) From 2fb84207e70ac56bc2438748396c32e4c7d1df71 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Fri, 30 Jun 2023 04:03:01 +0200 Subject: [PATCH 37/62] docstrings for xi_Omega_node and xi_argument_of_latitude_reference --- source/MulensModel/modelparameters.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index b3b22648..261c1b53 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -1414,7 +1414,10 @@ def xi_Omega_node(self): """ *float* - XXX + The longitude of the ascending node of the xallarap orbit, i.e., + the angle from relative lens-source proper motion direction + to the ascending node direction. + The units are degrees. """ return self.parameters['xi_Omega_node'] @@ -1446,7 +1449,12 @@ def xi_argument_of_latitude_reference(self): """ *float* - XXX + The argument of latitude for the xallarap orbit at :py:attr:`~t_0_xi`. + The argument of latitude is a sum of the true anomaly and + the argument of periapsis. In standard notation: u = nu + omega. + This parameter is internally used to calculate perihelion passage + (T_0 in standard notation). + The units are degrees. """ return self.parameters['xi_argument_of_latitude_reference'] From 11078cdf7f52f802233a6dacafb309ad9ff5f301 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 8 Jul 2023 23:00:06 +0200 Subject: [PATCH 38/62] changing OrbitCircular -> Orbit in Trajectory --- source/MulensModel/trajectory.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index eff9d7b9..3b96c367 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -7,7 +7,7 @@ from MulensModel import utils from MulensModel.modelparameters import ModelParameters from MulensModel.coordinates import Coordinates -from MulensModel.orbits.orbit import OrbitCircular +from MulensModel.orbits.orbit import Orbit class Trajectory(object): @@ -338,7 +338,7 @@ def _get_shifts_xallarap(self): orbit_parameters = { key[3:]: parameters[key] for key in keys_circular} orbit_parameters['epoch_reference'] = t_0_xi - orbit = OrbitCircular(**orbit_parameters) + orbit = Orbit(**orbit_parameters) get_position = orbit.get_reference_plane_position else: raise NotImplementedError('not yet XXXX') From 9aa30334afa4d2bf3268b4e911f02481c63cb396 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 8 Jul 2023 23:09:58 +0200 Subject: [PATCH 39/62] simplifying Trajectory._get_shifts_xallarap() --- source/MulensModel/trajectory.py | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/source/MulensModel/trajectory.py b/source/MulensModel/trajectory.py index 3b96c367..bc7e69ba 100644 --- a/source/MulensModel/trajectory.py +++ b/source/MulensModel/trajectory.py @@ -328,21 +328,12 @@ def _get_delta_satellite(self): def _get_shifts_xallarap(self): """calculate shifts caused by xallarap effect""" - parameters = self.parameters.parameters + zip_ = self.parameters.parameters.items() t_0_xi = self.parameters.t_0_xi - keys_circular = set( - "xi_period xi_semimajor_axis xi_Omega_node xi_inclination " - "xi_argument_of_latitude_reference".split()) - intersection = keys_circular.intersection(set(parameters.keys())) - if len(intersection) == len(keys_circular): - orbit_parameters = { - key[3:]: parameters[key] for key in keys_circular} - orbit_parameters['epoch_reference'] = t_0_xi - orbit = Orbit(**orbit_parameters) - get_position = orbit.get_reference_plane_position - else: - raise NotImplementedError('not yet XXXX') - - ref_position = get_position(t_0_xi).reshape((2, 1)) - positions = get_position(self.times) - return positions - ref_position + orbit_parameters = { + key[3:]: value for (key, value) in zip_ if key[:3] == "xi_"} + orbit_parameters['epoch_reference'] = t_0_xi + orbit = Orbit(**orbit_parameters) + reference_position = orbit.get_reference_plane_position(t_0_xi) + positions = orbit.get_reference_plane_position(self.times) + return positions - reference_position.reshape((2, 1)) From bc038e8d5b72ecf2ba115282491b6431c93cffb4 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sun, 9 Jul 2023 10:42:51 +0200 Subject: [PATCH 40/62] Orbit.__new__(self, *args, **kwargs) -> Orbit.__new__(self, **kwargs) --- source/MulensModel/orbits/orbit.py | 4 ++-- source/MulensModel/tests/test_Orbit.py | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/orbits/orbit.py b/source/MulensModel/orbits/orbit.py index 8769b8a4..7d0000c1 100644 --- a/source/MulensModel/orbits/orbit.py +++ b/source/MulensModel/orbits/orbit.py @@ -14,10 +14,10 @@ class Orbit(object): Class that combines :py:class:`OrbitCircular` and :py:class:`OrbitEccentric`. """ - def __new__(self, *args, **kwargs): + def __new__(self, **kwargs): for Class_ in [OrbitCircular, OrbitEccentric]: try: - new = Class_(*args, **kwargs) + new = Class_(**kwargs) except Exception: pass else: diff --git a/source/MulensModel/tests/test_Orbit.py b/source/MulensModel/tests/test_Orbit.py index 3ea06a9d..a03b6b94 100644 --- a/source/MulensModel/tests/test_Orbit.py +++ b/source/MulensModel/tests/test_Orbit.py @@ -90,7 +90,8 @@ def test_12_Orbit_class_circular(): def test_13_Orbit_class_eccentric(): orbit = Orbit( - 400., 100., 0., 0., 0.9, omega_periapsis=0., perihelion_epoch=0.) + period=400., semimajor_axis=100., Omega_node=0., inclination=0., + eccentricity=0.9, omega_periapsis=0., perihelion_epoch=0.) true_anomaly = orbit.get_true_anomaly_deg(5.) assert_almost_equal(true_anomaly, 101.28599627247006) @@ -98,7 +99,8 @@ def test_13_Orbit_class_eccentric(): class Test_Orbit_fail(unittest.TestCase): def test_14_Orbit_not_enough_params(self): with self.assertRaises(RuntimeError): - Orbit(10., 10., 0., 0.) + Orbit(period=10., semimajor_axis=10., Omega_node=0., + inclination=0.) def test_15_OrbitCircular_based_on_argument_of_latitude(): From 4e325f333e6d3f7a53d58ecbfc82098bbebaa6a4 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 13 Jul 2023 17:03:36 +0200 Subject: [PATCH 41/62] test_no_gradient_for_xallarap() added --- source/MulensModel/tests/test_FitData.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/source/MulensModel/tests/test_FitData.py b/source/MulensModel/tests/test_FitData.py index 4f7767aa..1c821425 100644 --- a/source/MulensModel/tests/test_FitData.py +++ b/source/MulensModel/tests/test_FitData.py @@ -601,6 +601,23 @@ def test_photfmt_scaled_2(self): bad=True) almost(res_errors, self.dataset.err_mag) + +class TestGradient(unittest.TestCase): + def test_no_gradient_for_xallarap(self): + """ + Make sure that gradient for xallarap models in not implemented. + """ + data = mm.MulensData(file_name=SAMPLE_FILE_02) + model = mm.Model({ + 't_0': 2456836.22, 'u_0': 0.922, 't_E': 22.87, + 'xi_period': 100., 'xi_semimajor_axis': 0.5, 'xi_Omega_node': 90., + 'xi_inclination': 90., 'xi_argument_of_latitude_reference': 90.}) + fit = mm.FitData(model, data) + + with self.assertRaises(NotImplementedError): + fit.get_chi2_gradient(['t_0', 'u_0', 't_E']) + + # Tests to add: # # test get_chi2_gradient(), chi2_gradient: From db170d6044b5dae35c7763694c1ff1e323b40128 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 13 Jul 2023 17:07:12 +0200 Subject: [PATCH 42/62] raising error for gradient of xallarap model --- source/MulensModel/fitdata.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/MulensModel/fitdata.py b/source/MulensModel/fitdata.py index d68ccc78..973e31d9 100644 --- a/source/MulensModel/fitdata.py +++ b/source/MulensModel/fitdata.py @@ -551,6 +551,10 @@ def _check_for_gradient_implementation(self, parameters): raise NotImplementedError('Event.chi2_gradient() is not working ' 'for finite source models yet') + if self.model.parameters.is_xallarap: + raise NotImplementedError('Gradient for xallarap models is not ' + 'implemented yet') + def get_chi2_gradient(self, parameters): """ Fits fluxes and calculates chi^2 gradient (also called Jacobian), i.e., From 8dcddedb579caba9ee8cef2a6ad894b1be689b65 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Wed, 19 Jul 2023 15:00:57 +0200 Subject: [PATCH 43/62] adding 2 parameters to parameter_names file --- documents/parameter_names.pdf | Bin 88285 -> 89523 bytes documents/parameter_names.tex | 14 ++++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/documents/parameter_names.pdf b/documents/parameter_names.pdf index c5a4bd42e739ba1f29dc60ade22cd011a8ab6904..ba71dac2cba73588a9f15e90c9af0a2b6ae7247f 100644 GIT binary patch delta 35309 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 Date: Wed, 19 Jul 2023 15:30:33 +0200 Subject: [PATCH 44/62] adding images to parameter_names.tex --- documents/parameter_names.tex | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/documents/parameter_names.tex b/documents/parameter_names.tex index 29446f33..f0813288 100644 --- a/documents/parameter_names.tex +++ b/documents/parameter_names.tex @@ -5,17 +5,25 @@ \usepackage{pdflscape} % for landscape mode \usepackage{longtable} \usepackage{caption} % for captionsetup +\usepackage{graphicx} \newcommand\MM{{\tt MulensModel}} \begin{document} % ######################################## +\begin{center} +%\centering +\includegraphics[width=0.5\textwidth]{logo/logoMM_crop_4_744x520.png} +\end{center} + +\vspace*{3cm} + \begin{center} {\LARGE Microlensing parameters in \MM}\\ \bigskip Radek Poleski\\ -last update: Jun 2023 +last update: Jul 2023 \end{center} \bigskip @@ -83,5 +91,15 @@ \item coordinates of space telescopes -- \texttt{Model.get\_satellite\_coords}. \end{itemize} +\begin{figure} +\centering +\includegraphics[width=0.58\textwidth]{images/orbit_parameters/Orbit1_svg} +\rotatebox[origin=l]{90}{\tiny image by Lasunncty/WikiCommons, license: CC BY-SA 3.0} +\caption{ +Definition of orbital angles. +For xallarap, the reference direction is the relative lens-source proper motion direction and the reference plane is the plane of the sky. +} +\end{figure} + \end{document} From 449588f810083a734fb26e95074d93d99826e882 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Wed, 19 Jul 2023 15:36:01 +0200 Subject: [PATCH 45/62] references to Fig 1 in parameter_names.pdf --- documents/parameter_names.pdf | Bin 89523 -> 235178 bytes documents/parameter_names.tex | 11 ++++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/documents/parameter_names.pdf b/documents/parameter_names.pdf index ba71dac2cba73588a9f15e90c9af0a2b6ae7247f..7362875662c48149ba68b1a4bb4dc3c2889c825f 100644 GIT binary patch delta 182705 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%0A&A}(MZtvGR8KtCfgwI$=CL+=%usSk2#KAA@&@z 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 diff --git a/documents/parameter_names.tex b/documents/parameter_names.tex index f0813288..361d8d84 100644 --- a/documents/parameter_names.tex +++ b/documents/parameter_names.tex @@ -57,16 +57,17 @@ $t_{\rm caustic, out}$ & {\tt t\_caustic\_out} & & Epoch of caustic exit for a binary lens model.$^b$ \\ $\xi_P$ & \texttt{xi\_period} & d & The orbital period of xallarap.\\ $\xi_a$ & \texttt{xi\_semimajor\_axis} & & The semimajor axis of a xallarap orbit as a fraction of the Einstein ring.\\ -$\xi_i$ & \texttt{xi\_inclination} & deg & The inclination of a xallarap orbit.\\ -$\xi_\Omega$ & \texttt{xi\_Omega\_node} & deg & The longitude of the ascending node of a xallarap orbit.\\ -$\xi_u$ & \texttt{xi\_argument\_of\_latitude\_reference} & deg & The argument of latitude at the reference epoch ($t_{0,\chi}$). The argument of latitude is a sum of true anomaly ($\nu$, changes with time) and the argument of periapsis ($\omega$, orbit parameter, i.e., does not change with time): $u = \nu + \omega$.\\ +$\xi_i$ & \texttt{xi\_inclination} & deg & The inclination of a xallarap orbit.$^c$\\ +$\xi_\Omega$ & \texttt{xi\_Omega\_node} & deg & The longitude of the ascending node of a xallarap orbit.$^c$\\ +$\xi_u$ & \texttt{xi\_argument\_of\_latitude\_reference} & deg & The argument of latitude at the reference epoch ($t_{0,\chi}$). The argument of latitude is a sum of true anomaly ($\nu$, changes with time) and the argument of periapsis ($\omega$, orbit parameter, i.e., does not change with time): $u = \nu + \omega$.$^c$\\ $\xi_e$ & \texttt{xi\_eccentricity} & & The eccentricity of a xallarap orbit.\\ -$\xi_\omega$ & \texttt{xi\_omega\_periapsis} & deg & The argument of periapsis of a xallarap orbit.\\ +$\xi_\omega$ & \texttt{xi\_omega\_periapsis} & deg & The argument of periapsis of a xallarap orbit.$^c$\\ $t_{0,\xi}$ & \texttt{t\_0\_xi} & & The reference epoch for parameters in xallarap models.$^a$\\ \hline \caption{Notes: \newline $^a$ -- $t_{0,{\rm par}}$, $t_{0,{\rm kep}}$, and $t_{0,\chi}$ are reference parameters, hence, do not change these during fitting. \newline -$^b$ -- The four parameters of binary lens in Cassan (2008) parameterization ($x_{\rm caustic, in}$, $x_{\rm caustic, out}$, $t_{\rm caustic, in}$, and $t_{\rm caustic, out}$) are used instead of ($t_0$, $u_0$, $t_{\rm E}$, and $\alpha$). +$^b$ -- The four parameters of binary lens in Cassan (2008) parameterization ($x_{\rm caustic, in}$, $x_{\rm caustic, out}$, $t_{\rm caustic, in}$, $t_{\rm caustic, out}$) are used instead of ($t_0$, $u_0$, $t_{\rm E}$, $\alpha$). \newline +$^c$ -- The orbital angles are illustrated in Figure~1. %\label{} } \end{longtable} From 74a37c5df5dc12338bc2b538e95081d47ba1dc4c Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Wed, 19 Jul 2023 15:36:33 +0200 Subject: [PATCH 46/62] adding images illustrating orbital angles --- documents/images/orbit_parameters/NOTES | 9 ++++ documents/images/orbit_parameters/Orbit1.svg | 44 ++++++++++++++++++ .../images/orbit_parameters/Orbit1_svg.png | Bin 0 -> 94710 bytes 3 files changed, 53 insertions(+) create mode 100644 documents/images/orbit_parameters/NOTES create mode 100644 documents/images/orbit_parameters/Orbit1.svg create mode 100644 documents/images/orbit_parameters/Orbit1_svg.png diff --git a/documents/images/orbit_parameters/NOTES b/documents/images/orbit_parameters/NOTES new file mode 100644 index 00000000..cb9c291d --- /dev/null +++ b/documents/images/orbit_parameters/NOTES @@ -0,0 +1,9 @@ +Image source: +https://en.wikipedia.org/wiki/File:Orbit1.svg + +This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license. +https://creativecommons.org/licenses/by-sa/3.0/deed.en + +Attribution: Lasunncty at the English Wikipedia +https://en.wikipedia.org/wiki/User:Lasunncty + diff --git a/documents/images/orbit_parameters/Orbit1.svg b/documents/images/orbit_parameters/Orbit1.svg new file mode 100644 index 00000000..9f53ccc7 --- /dev/null +++ b/documents/images/orbit_parameters/Orbit1.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + Lengte van de klimmende knoopLongitud del node ascendentlongitud del nodo ascendente승교점 경도Longitude of ascending node + Argument van het periapsisArgument del periàpsideargumento de periapsis근일점 편각Argument of periapsis + Ware anomalieAnomalia veritableanomolía verdadera진근점 이각True anomaly + InclinatieInclinacióinclinación경사Inclination + Klimmende knoopNode ascendentnodo ascendente승교점Ascending node + ReferentierichtingDirecció dereferènciadirrección de referencia기준방향Referencedirection + HemellichaamCos celestecuerpo celeste천체Celestial body + ReferentievlakPla de referènciaplano de referencia기준면Plane of reference + BaanÒrbitaórbita궤도Orbit + + + Ω + ω + ν + i + + ♈︎ + + + \ No newline at end of file diff --git a/documents/images/orbit_parameters/Orbit1_svg.png b/documents/images/orbit_parameters/Orbit1_svg.png new file mode 100644 index 0000000000000000000000000000000000000000..e39b19fef7534f539e08409634fd009a75448483 GIT binary patch literal 94710 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�L@*^bGU3)-z%1Z`MLZgl7SZu8aOmw)>&x=|6Q3|zVXWD&K41_8 zSih(mVol+6Xy*V8%fi|jKu-y}7^A`-gT`@eg{N$X{5;vi!=(<>AF&Bk?Eg6buWdHo zGFA*=b=7VDMp)>d5_r!N{M?4JvNHbpO|Q9;8{jSMN8*o(?_@Fo)3zb)ZLN<->vTIt zTV;Q|fj(1?&*c_JI+w%47`h?#Z)0MY0~VgeGhWm&)<*!r&hFb*%i)tC2m`TGsKE=B zMz{3_q4b$Azv1d};dpsq)Ps+EkJ5Z3wTOUtM8jq^6QLXcdXM1I)+=%1g$FUeOj1B; zK58l#UyJM)1Pf_FLMEZEhO3vg!TP@PGikB@_sQGT%?{=U{j9}9YWJd+lSP$>MR=(X z;Nac5;NmAg;PCJ9@#C1{_Vyl%haq`(00H!)f~BeRqA)F~FfEOX;9jW4GO-e?@gIJi zH??p7EVi@D2l}K*Xh9ca%P{l7+VM1tg%aXauF6bDDWmq4(KCG7gza2x-7VY?8T<}h zL&Cj-rl6;!^`$GHk%)_RzLVoW1Ylk1viaITUS6J0g7`I%gA?#2HZ5(=h&X5vzKx?V zuhq9n08@SQOHw_XySNW93)Z|#0uwEqn4!l6C*w?jxPqbvqg|6;!KsDO6OZvPbTCP- zdaZwx;>^F4h$;^p2=lf)TI#XurLjh9o}|nD1kz{sk1K8xhn-vmYsCo zRma1+gmYwZp@mheY*CBNZ$G~$)Pq~&Xpp%$Hda3ig1x4xk{;5`8S%u!kgz+zE=xW_ z&ZWNhokU71iPWKz-5{L*;M)&?Xykui#dylo9A|jIU74$!PK8WUwj+TQJtnY z$+tG(1p&Hh-bij()+CX*KX7Bf`9@BItZ;qT5znZje7cyMs;52hucp)sn<@0npOCH~ z31j4K{QVk?2>8|#nG7ZNgGDDuR(?DrO;RHkpHYGH3*(!QVzj;INA6h1*PGipi&)uR zCzCyeYebDKY|(nL{W&=~!)+*+9b@fH6Vcm3RDWFyMe?(Y9S-sir*`{DiS zgX^rd_nI}vm~(ql+{C?#@pxbKTo*HjL=758Vu%p#+JpgFUxlYIG{^2aXPfY633Tu+ zwffzj$F={Xr0biH##)=4eP4`Z(3-Z3g@G2EsCEl2z}-LyO{NOv#Snvxav>1f+@Arj zV5rgnj6tC&Ixpf?lBErzS`E&qubyUxaZ8JrjGZWV7^Vtp}$uY_DSC{)a=a6Tw|cs!d=Hyw7A24wx2^2ixNIc{(wou z|5$}T8b zvghjD#26b8vh<1_iT}ZAj|!fioK=Z7=oCaS@9UY);+edY8{ z)-|#_>Vdu4@L+M*Ht*=Lm))n?USGWE52||BsJc{05K#G}gGbokzpu-nLjDfY1sSG6 zAYaJ>teVI$nTP-4RvIB>xfN@-kz*t9hF+R-4wTkUuoURxZwo3rQ_k!y^CfHvZz}v; zdK1odOd`PKVxpE>IS`RQC#?65oh~oogSqCDG4>-(_G*h?RVxz;-pcnk6%}A8dI8}6*&0& ze6^WutwIqgrePTbf(QDg5iRK;32|}cha-mUwx+2Uz(ov}_&H<3C+4dul90Vd=5C=H zxXa%a{_Bb&lhbM=HyE%&P5uWrGPeDGfzmHHm`}HiBrA4u@{=ss97_8VLtfEJ!VqIo z<=rciOQ>b6pAl0JNq(sd$+n^GlEpEBK4>}pUM>6;5>mK&)C)12*$q}$(ApMxj*o)N%QAxrS!&tt*ha?)EOhP$v!$#P8{fk zA#|Bo5R|ZmVG-Sz7ybDFl$GEWpthKrntBi;{rc*_wM7OcFc*n8D^}sA8E4&b!SL-_ z9J{ltTqz%LccsP3N!W!sh-G3mIb9d2m#=qS!}C20$JioS4g`j(+iMzH4C57ce&b46 z)a#${qZU6FhC{Zu$Qn4HRySigl)}0J%z1g|U$wWlHwCKQG5=As?fh14LaWFjZT3r; z)%&iQ2Cf6K9TxWfKq3mVs8%vGI{o;N4xvW!opYgFNCdTQ12sIyr3*hemVv1$VQX;m zAPY%qLUr_0gH3--a^(djaH8mi8VlK#7Ppg9$Ucx8$RUhVg2M84TL-E!*-}vu;aUh( zpLX3S1Ck8TAEci0_FoeQkN%Di;%>bhHzXV5*+?M0-Uw}ZOS+qakd^;|Gr~B=p=G2; zQkj(i-mU(16DA3IIjuiU&AknqnwHNfg_%_NqG9piz`*B|Gxt6(iD_O?SLUb;#>h4* zKz4a@RVW~J0@wH$;7z)jW6{Met6((N>Pa=8T@=5sq~;?B_){yTUq7;?mwz<=*s{8n7~5?hJ~ zxE7|`S(qPa$bu3z(fO?(-UgkW_XH^^7xo)a&IkO~Apczbpbp+u1C#ciyAKBer@?`r z!};h)K6{|Y7ntkW7^0oCyllLtl-wJET{o#zXE{X|sbA57+zEDV@pWs7O04GUa$ zmK5WZKm}PQh5+9i9Nt6$F_h|RDra@qFK9gnu~`07j2kiZlN{#z8|FTO5j5~HeNB&JorE?Vo^j9nMSf7wyITXyd&xx zLuM4z5su}ro30P8V&L)_H0;spZw4`Ped*aCr$@~%oSs`_P(i=}Z4`SG0!OK5{=*^ucE!t=iG<6#I zPF@X5f^yai$Ey`nP1Ww}8!2zNxcVUsRx|vl3Qx3FC3#j$^)^68+c-%2Lq*g4+yXNU z2x9xIL(Ywc%hjaWX|AWgq${b^*h>lf*1xAdh*~I}&NFAk307{K;r=vh;p{!)E<_Hj zlS>fP;?HvGP}mtnP)pWX@H<+~+7!5o1(2$OU$SL&Ge!IXno!s@z;$S{vaBI2 zq=2i-o8r?#=MQl(p@R=Yi$S}uBvxaOd?tz=TiZiP)ap~Uvk`4rW$jqVhD5+n#O9^; zo9rSKV*(*$c2D;K198WQ!g>DXa4lzO)K8N2jT$+xeW#kXHorc0@DNBBol5RueLGcS z`kXfl1|6)%eDUgJTBKg3$n$o4N#XW7@wgJP@oZRtbi7H%f!RAH@S`%io-UgNQR>is z!s{{WtWg)GA}2Cqda)P#by5A?u?3$p|sIy%@mLcU4g; z5m$cuohNbEC2Vn1Nh9ft4S@tExkXRcff|ebwKrp6G8KS;s*(~2A$eOvMb0j@eH-Af zU@TUw4ng&PQpOs7YNuV4TI76cy9(b|njkz-TKPDBR3C*6uNb3$vix&S0MjwTaB6Ur z4KQ_@^B|>ye>pg}Hg<3+@ao0EGp;NIb*>5)Ah|-7)5a;ag60FtqUQ-q*cqae>tBJC zc-T04UrB&7NIJhc_=BOTP{cO6SIhh6w-fMmj;Hp>_yRjkG~d-PFDF3KC2cE}5tOIG zAdqq&z=86h1;zng^JTboC=oPWNA;bC>zFtm5;Kr@#R>2`>l7@AS@-GGXt!H+rYtXQ zaQv^6Ozv9_a3)8)x--Q&2CLgMSPokFveb)SH{BdujSBH+T@YJOon9aEnLF^Wc%Cf4 ztr|*6Mw3HSR8<8)jpEqB88DY7AB$O?_-)X^@Sr%y$lSG5xE+66r7z|{Rl>3AN}xS5h+Yr}#=b>9&P?d_SA)YkmqPF!2oU%vY&(B&e@MswqC**T{JZ~bD}&Ui zs+zuMK?OYV*Om0Xc_p+xpJ8Xu`B=!a%_oOyfb3WRD?NPy%5&gAh=DfDE&F-HI>IV! zn@kUvZ`Yp0vyr{I-^P$yf_ZXY`CrN(#Z6aW128;_IU3x|oeDl<_jUq}F59Nk#{{f{ zt8xG)f5Il!&1~~|h=F3ws(}2Ek}Va3P!>_@B8{!qa2D!wUmRi z!S8TYUS7!eSVKLu>^7mRonv1SeQ&;2mqn(U=?NPCy)Sh_1Lp}_aQ&;Z^Ud=hu)1u_ zQGIU-zem6Qxdzj91fZ`FbrsW2Su70c*;P^W76zo7k$J?A#*~ZnN`S50#WxUddAq97J-dGi*`Tj>f-gL0@3zc zY#tY>k`#YS1A;0=tVdkG$t$XeYzfacX4MKeve|Eos>!Xb#u5$=O(R~{4F0g{Ay9C9 zfdT3(aQMmRWE=RZVW$?+8M?R|6L2+Sx!GRQNZ18A;F}f*qdHj78U&MIl(&4nFK{HK zCg^#y?%`91R7$3r+zzgi1*9f=N)SM^Wea%wcw7zt5etlrZXo-Q^eN5E62HY1XDJcg z-lFz@T}@@9IZDl}?`?>TdLiGq73$NtQ7%W=8w-GpXRcU>v=NSgCC--smRP_2m$0M+ z$*1VK-~tR)`b;0{vf<%NAt{?$RMh|YXL)s&GMMn|AxKEy8^;Gkw_o6;;*B#EtfPj^ zN|Ijh*tV@^Gk$cm)M1u1H^CN&QAkd z-`5>`P!^-{uAMy1aRi32AVdk=_2(?@-czt}e}Xw{)K>|6oKCs|lVbRSyyVZN2!N^3 zysSGf8gi$Ku1_p4_8}R&3Oggkc5(8eKzauPYsCaqCC=_Q;WjE|8#lkci%R!Qld??r zmZ@NJ=GQ3fQc9orhQ(6GAgZn|ra7Yp6&M3*IfG&de8UoIP+nl~XE?di+BX2&HpguP zm`g*pLO?(5pYozf4y#EV!UC{&44QhwQraKDY(6IJYzFE%Y^D1G-+T{HH2C;c)Apx#1HZ~c|oPdcLcHh$XeW@3A!xO%yjDWMjuv? z+)^>)zISWJahuNMfA+pqG1$FCrSP%gx7R^(bvB zs9H(fQXH0m1mbtX7GLq4z@!Vmg{`bNU5l$3&;kJ69}n;lr5HmQn1KD6>2GG;^U$RC zex@aSB#vcYJwk{ai7r}O^k)-_)Jm!+Er%2#M&xg&0oQMJvKf(rH%@~9q6S)Ol!rDg zJ;p##?VG-Eq<_+injN6+X|zS!s-$Xc?yaV<>11DX?FI(F$S8%QjXj$P{SmlmlYb=@ zzbKG3du`iLAcs#b5H0%3`Fs;Y9%i$>jhT3Js1Fh(L{`Sb(}K;vci{a3n%8N2 z|F-ZbNK+l9zcSnK<#E>TdPncIZ27acwbNE5ctb`vEh+QvTD+9kerix&~<9?7@~d&u7AhBnWgTmQQ?;82Kjv9wSo zqn=ij`lon=$F+>Mvz=wlU%yf}7u@D(S(dxH#}|T`m4U?I&{e|X={p|&kE)LJ_Jx@P1uc!uX^^nPZg3`B|*b9+q*06V$g&{;k(zaD~J%~`;*PL-z4 zlV!|)>i2|4yue0rKHmG3;(}657DpA40zeQ#Glur2@7LDeXz|)pRapHP#87yF?$rv$ zPj&-{4ORG6_&?zR7{ivLA>1wJAPj?f@w-U_uHeNeB0M~&l5&p{eo5Pqne~Zl2HKUU zMRS+o+IRVPHvG)$hv+WeR&Yota6z+_{NG4_vqR{Gm)Uz6rol`1y{@kLWQxF~jVAZU z8F>z3Gs4hsZ*>ux0plYepq^{iou!E8b4*T8hYANpI^TmOcRDvGdNw)5i=3*7S^3m{ zeu4u5;H)vH_SZj~(yf>4hGdJB{y3YC_G4U2RC{W`dd#{Dx@;F8V*95xik!Yo9WcA1 zz$S$@KlOy6$=}_*5nHXf16|kb|2uj_4-O~;a6SdNrX+pQEmUDhJu7^n2$l$_jw9}8 z0bRVFzapxpFgNOD8YJ*Zii__UBe2JbH>_4$S&w{x;fzTU#Uu{*loNc8Ev!oTUqe3U zq3c|WmR0s}z9qqiC;SmIG*o5y*GIzsGMoUff;W7LQr04urUOIc--BC88QpokYo)xw^lPs+#-&Bx12M=aNMUE7uqR=!i^K zzx`xs$S{|t2M6OAtG|5F$XUBPYG6GgkSbY>)j{y@M+cxs8mp#x{kCn+pJn^^bAb8f zxqiXuDUHPp?xEforJv&18w_GWtqZj$Flj*2wQWGsdp$I1`O;XXoxCS-W%s63X1W!S z>g@_Ptw;}4QzUGeb83J3FK%^h%Bh{pYE5%`UBjqEu->)PU_7w<9axSDh$E&ANc5i) zyi$LwRVibe_Wzz+s6XQc%nPO&y`NYtmBU^Jl#?X2< z4Ju|j9gox@E-og(lhoqAEG|ZF@7t)nM)tXCBXf${IHxG~T`hYHB$f9`TTTj8iVgv+TbAXMN``2fG zN-3RF{R!6@M2GvH3-BpcAPAGY08C01vF~VW-_j=^cnPp<^{(I9?PFFphnArG{z&xh zY)iOQ9{07IbS)6uCMaS#Ew=|(3WPq`{AS8JnV}5{Sn6Q^7k}gEm`Fs;ZaeC$T^XORZNm2u~X1q9hQT2S5hrx z5%c9*G$>vaZc6w)1Oc+HL~rifm=X}N*t*#-TjjI^0}>S#^=~#CN-06YB;%-h3wy*#EK5Ghnm>q zs%8BOytU3vK=3}ddi$J78j1OJ8|bLu50;wOBF^7eO4imXhP)*d)wZ(Q_aY%7c{G8} zZJ2iCBjc{uxRJ=b-+2+Fz&RP-jot2W6YW2KZ?7vf-&b~+!Xc3RX>tp&-wLk zwl^8qs!o_c6%m@mmdQf($V^cfCb?%}X+JV>viI+=8m6bGCDmi0C)+-v;)m0O7oj0Y z674wP$ZX>mhoUOJeMYIL_jqve&D3NcpHR;(mw>v*Qx@#g&8VJbA;+81<4q!z_*DR8HHO_S)Q@(xkWM!5IuG&^AP<=Ek{Stq-gs5bs+eZE=mta)?kYRZl zx~YpBEHR^Y6pfW?Ql91H-}%@x60}h&SuAqc!6!h;?YC5AB7@JY0A0roaKm@R{~(GG zlMlGLoA>p9Yk~43yTuI|kfk|X_z2j~uzG3Y=X+|`e)cg5V*)J}C--lDln0D45KIrv z%9z-+OcwT@xP8{`?!p{cJ zvjD%EL2}3N?wqx_%ozkyQBlDrBU{eIDr%uZK2TLvHCU~)o{Q8l@TnVSmE5W+9l^zZ zj}a?_727``{to7UaD@&2gTmVNe)q?NkyQ>Ip|rDAPei8ti}7LA7pw1h@Ec9XD=q8_ zii)w@gf!}*=gy7FE_0`9?C9ZI zUnKa3Fo2Ss|8G@dUyL{QXae^~AQ`&%4=DsJ`mGad;^1UJgHTvhShzY{q?kk5SO=K0 zHhh<%ztN|a5jV1v4lDwH!t@9DggFwZk#D*-8==b zFKN?8T|r{|?+FBHv*w~G^9i;;nD=$z*l=! zCjIwEl<&o`k5kP&TmW*8-uAuK5Uc7^0tmiBA7f@O*m{(#F@+@{ArY>w zl`JKl%P5T(CwZ!R7#v z5-KWHIL)tt54(sMfoI>Wsj_z(>^>=AE;DO%x4E)z`8?zj5=o5jQPo=`G4hf0F;@gn zf0ubWpdGS*K80IGBNXM!uk$Cw!!v5VH6|{UhZ}vDJh>Tg(Xh6z->T^)xV?=H3rpp4 zgxYg^hFugDHlc|w#(Sj^Dg2Bhb@EIEifh~yC|2P4)Sej@ac8~$do;|DyL-L`FYu(9 ztk74_`uJRv`cr#a*r1ut`fo=6&s;r%wLIdKt*@FJuU&-IZZ-tfo|{mTnd`gi9rbGeTv$AxA)(XJuJzB{KMUj z!)*4$oqUD<2fz7s68$QX2JQATdR3F3osjcvJMH<{GdNTL2x1pLc8pBEFKvZQ(~Sdv2qenj%w(5I{mR8tx4*96&+F#azww;> zYJsJq6hyvT7vuGNCP^vE4m3L7a%x8NcyLWxaa}4AxU%Kh>ItK!6h@zG_25`>K$7!& zSV})o)s2dfp$utt+WC5u7#}bgh3;PeC15**NWow&j3ThrZtZJqQ89A%)xm~V2gPWP zZ{S{zVh?_a$dl6$dta4~L8x`bSd|YGd9iLi!Zo-g-2KH!vmZ0q#`~<$BTu4H2(>Cws44Q}Q5z1L8qn?a(-+3bBC|jm#NW zoMGvCHj0?Z6T&>>4Nr#c1~I{rs{BDe-NF!!420RLpwR;}jg_ld)t6Vv0HzbP^I&{5 z$?)2hwU_IpOvaGI;syJCa5O1bT!t4J2xxAj2c{*_AO--0(Ub7|_b$XmaJay{O3&mm zAtXL#v`{qmVB25F$S^Q*Sd^jII1}qPU``XnW!Y3K_SyhAqqKJ@Dst$#Q(~jT!J927 zxd0SBn5rL$O^EmeWb1JdQ)EOqXNgcz5qFMXza){lNvAjasR7U!m>(s<$P&CcrAXb| zFCk(+Y-u+tY=XF@*J7CV7U3R;mI@wGe6@oT5U_?Oq$16Ahm6OPq4?OWz2YZh=(y2m z2*ZQ{UDC>QbJ)E4b!yKb6We{&gJo~Giq1z1=i%oE;~*l8w7c(%_E+d0MpvsJ`!e+_ zN9-;f@s)kqnCS109dVZ?<BmQgjsv!V7T2z` zQGs#4o0asU*(}MZSeec-5ealOfva92Q)F}v{jcX<#{sP-NMtYfb0iYUUI*%$Yo2KL zMm<)x^lzYVMai`X1BenEk7xbb63HgBW&5IL&3kld$L%eD?_5tXpLQpTz0af?|Bi)O z?6BecG+|RW%m|6^%r}!x7zm?H<^I?oV(CfDi?xn@ED{OO)r~nU&4#(;|MhrFb4hL$ zSY_tyhm0unslx!ie|E+Gh#y{}p%Ks4V2$&Y!;o;`G}~>`19$9Uq(3R$`mQ{CXL>!6 z)XA9efs)zo3`*$nnZ22L-eG@%ODN>LsWgwjmi--EId8|Ydh?<8E+$0~v>ZTNn&UwX z)9cnz#1dWXbN#Td6HdQ64`0*U(~bQ;E)l3>YL&L%i>7SLmz0#uUF}U-pfoVmA?VtV z_w53T!eG&v&jR{2=9U7piF7l<5IE6FO+(*PF_3>|GJ;2cOieo_HE-jrDEP^#hUBl; z@x<|FC(J+?R?hWxRH}imcrL{EyQEYXheJN09M@aW*hhi*YV@5k5o;JGVTwY5{F7NXN&qC{XcCPIQM0y%l}TbgktZ7)fODVg3h{pUY?jm| zi^ExCsLhNm7>n2%dr*QJp8Bf*U|!;trP;~q)ZEUy0M$?Dh-3|< zpM0Ocj(MEu7x(rqI%U5txaXT8e2sxe_qii65pAxkIVi$r|8&t#f_^57f6t{drql-` zftnNI$&}^&`XtlJ;xJyxXEE91w9IeK^)~``6r!EGw&&oO-b3|<+zRk{qejPJ4?F9r z{Uhz-SBr^u*NE!+kbYS#%)atVY;@xI$bO*q2#OCwq_X;a@ps1gDP#BPZ3V&BFE59`NdaC}Trz`@nL zm%~#5U4+B~9EY(k=COx4>FcaP;C6FJDRcVyM(*EhjEPL`*9B6&KANvG(FW2@!iIN1 zBj6Cx_-+3Ol`&2-l=2!o{2%ISx#ws78>_8NzH@H;iZ8@+g;S5?MM%xwe|Rn<6g3mY zB@{a@PPp_Yw004xL=V2YpPQ7l7zM5CdAar#V&-3`AxHs=5Vt1sCbu@2hx_|zY^E3| z>n(iy8Di*x9DQ*POI3_WW)znQs{^ZFeu6-n?1xBSUKtDgI-C5Ow;Fd!;UP8>aNbM0E#-xRSHPC$N;+~#$o z-}h4qhH3l+_YRv>Z(fTcV}=@z!-i>V z0p0PI;Z~a`=nxAq6AqNe(wm}ODq3GqtP_2MjNEAau1qzwXPgmH)$S+yvXR_9ecJxUtMi-$RTsRI2!{ZXr8U(v^6KzBie0$E!?zyg7kxa38?A-2X_zBl_AdO*Xz>}{L4VWFxNQND|k+te10Vue{Jo> zTf5h5B?0}hInNG6gtL$OhE#{HI*E1`d>zQ!9Th-kyXK41ZP0|4vhjPo4yzPX4V0Ud zl=G5>0t;I)Ew0*|ARpH@gRMs09C{&;x?uWcbKgFs21EO+*8Z zl+6#@6)OPI)?0GVvl`3ZKP{pZs6T$P$$76IeJ#B|Uv*z=@o+tL^78O*3tPYiD!a{p zca&RYz0qJ6B82wIA^Z;h6jG* z87P@vsx8K{MQwecx#mq^c+4!U>_?QO%tal;(%xSCpIWMJ#ryL(#!<7TU3K=5|=vNt^MTS z=}n=!axna<-C&vH>MMGPhp7Q*5gB|}!3@)IP5cF8@@j19(-T?IGr`M&#^H&l%T)*0 zPcG&=bFnKItis1S&sQeaap{B+M8}kY=PGc|_o9ew?Y1J}#b-|^enSw&hRG7Yx^&}) zC5@t@BBux#z~B$^50)D4ooA{F6)@ita9O}we7-fjUs`MB`6Jq!sF*!Iu#vP>R$P45 zK6?A-Xgu$}*82Hz5pKrs1#PU^CE9@ZW8fJu)9-Wtvg700%Z%sy2Z0mOGX<=7x-Q_6 zP3Og2h&)eser#-+u-^5>xpsx>{fzg#hOKqwLm9t$vQs|{z8?fZ&m@P9!#RTQMXBz; zQgNqypP`T^MP7ruojuYVApX$|)82oEsVl=pV1H}@x4yUm5Hp~Xf$D2ityj5c38a~gmi9Zl0m^j#O`aAk{{}*QCVGi1(SX-==hYCq zsM(v#%|5Y8O)5%W&|IvD_~>9@xt|}9>6cu%qN^5lxA_V!M-qyyR>7Ig>B4OiXo${L zPzHC37AGgiVUY*6dT{9urAjE_r`fjO9XiStDbNe5&)9}JoSPyW87VnBZQMV(HKwuz zOqUXEamoF*MlQ^-4FqBckiT|uS`%);AsJ?JV~D%+Ze@}+`rg7&*rke>c)6vOw>Q&i zLI8DvY@&^Y#2hbibAJzzY*sJG<}PL-H(tVi*q}ZoV-;O^QP2HzQ^#?AgbGaF!f?#_ zi>8`uO$4tf_VH>!VMe?3!gIuYTO3M;8MWnRmyjCkUF|OCHK&IXLb$09OEMH51da+{ zFv94C;2D^h2+M-3=kmU7hSiDc%u22wS*YeRbq0;u^~O!e+y#7?mh^q`!5~}3ER_gF z7t_?t5MYt4Wf@`yAc~6psiHC1b{YUy)J7PJB4Oxwuq`$-vuD+YpUaneFM=*;7K!@l_ldc8j-r<&r(c%y_W9# z#|wtGKM{TGnZMze!YK3q04kA_C8V1O0{aS02P(Iwyz6`BuF)BB0FeC@3gc$;!-pWN&9GF4(vf;dd$O zkR^imz9K-MDin)~f_LT*H!>QJrHJ-d6b?9Bv_9~Vz#YaC3ih|_2mug+S{E5^QmP2- zGW8Ex{9PO#Z_C)*!*iW&50jC8|Y#k~Q>=lv@k- zR$6Z00;w2S5bEFo((IhpwgCgO=!vzYd@NL1z{ZXHSM1}Ck5^$GiGNw<&9n%}Umxk> zRCvaMT*o!*j92e|9ywfHb>!sB(v)$1FBCMhu)7f#jU(j}(d-wMnwImuHTrn92f(FO zRPT@F0kE?UXpdk6Qv+l+zW@Z4muy!3Zdo^7tN5~B7^~G)H;7CTk~gagu8R6tvH+w@ zgWEb|w*o4kN2t{WWze+ca_<2-9Wthiao@v1+;~Bfop8Q+rI{?<^|25vC_Fs8GgmA~ zGYRjh08j#o{M4%H8&<&vI!3byilz{AUC26Tooca<;rNPmn@O6m9^sV0;Q{LK`aIXI zb~wNAd?^<#eBy%bMD}7%uU%VD ze{27uOF5I5nU?!I%;%8w3BO6lb$=(tvueaVV=M?hv12oiDLzLT|38WXuSh?({$qEH z^5HT(HZ-q$^YHo$J4(CxY9!+ja)M2ycLT*lxzYS2UT&dW;EXfMh?|5GrFMG}HY}jYdm_{c;q%dFBUlAM<*{E^T}QOWNMwzkh#_ zlQUITumgG({A?F%OUPx#p2Gp{zVE;hw|I(6+-t>1UkY+xpPC8VrB+t~XzRkW9_ghk zD^cP4tw?)?Fc1Uj(!yqOmzOD$d^McVc_z#Q7<*sDq2SKS4p5r|EYf@%{8(!n42&3C z`|t2?3%>yc>@d)bX3arNXt!8vdFT%VhpLHlP7l4vV9R>hjNuEWFOuj6l)Igw+eZ`M#~g;;?Ev^Ro^oJB zD29N!R+?A(I}RSbf~hhf8|gCCjE|3>$S$CQ-sKC-s;R+-&*WBx&sVldOAS%weAtyc z3zCp37(?38Z1 zsn7A4HEbo+XO%&s0QJXV*a;%sUcQ>%bB=ub_N}-UDnMG~^Z%}Y(&(qQw z_eh|?343uT)ScOtxX7Um05wDydn&zmlt|SK?znY(K~W2lZawWZG(E!jg@9M>uy$z^ z_d1#V6^+Pw&dZ~+&wT`Q`Fd5!r~#!`%8r@2`MJ&q=npm5)nD)L47K*PWLrs|NVidz zj^T@f)s?QFXvkU~Sc};jt~W?bB_0$h1dJq0`L@a5o7}JT*l&q~=ybC~T5>*y42Vi? zX~a;n_jZRIz<_{pE(ZoZB!3*6o*T?ZUUA8a0n89kYA?Y`#cLvi{&hp>#Vv((XU#Vr zB(i>g$gx-2*gWw@YRc90BI8GirxZlj%k+DfGdNmp)c1c3+fOXJe+=7Q#zGBI&-RnC z`Q`2eGS-e`F5}o+T$I*8shr z&#VBQI8g#Ds)i}pS=($`_zbSnO>-PH%Zq(NfJu$Lj`TcSBM45VcokKR3uoKzhg9Bd zhGp_Tq7@{4Y=9}Z4>nf7mBFqO_gy@ z_14J@_-NeevDW`Y>(?3k(YcA^a5GiXXeiFTMkVQ625>JII~6dw?~B)`JLpi6>9Iv7qfk_uyN#-=j-S#aj&y38_n+y+9f(A_0r8|jT z`>sYa9zo8d^{rc>cMe#Qh)P zxxuZZes7aG%R@cawVh2^f;XON>^1q>+Nx%(!V}u#AI`-i1@D)q{QV1nr*sKgKE4)_ zs5;Hz1o;a*+tHVGWve&%kY4aXAoqY)V=-oHYwOON9y+jsbjLBBdWio+LeY$f#>F=v z5w|fBO8)<$gB}$9R~zcc+ugs|U){BcXoc*uz42C6nL>aFatXJ4!86G|K49YkU#Y_H z?KK1WZ*7^re)Gm*^9~86lLvq;;Sv%PZ)(V(;*P&T$r$EN4$O+gOi_S+q11LSFjvjk zsm99udf<96Ua9^+zNB)ff?~5igp)pVt(hS-50b2Xp-S`DuM8o;!cPl1aps69*80wm z|9kZ>kTOt+#$v40O*qx8f&nBEj{vYhoT|Wd|#go+98B0DME=^*B#(h4sh3fluvQutG z5a`6GdtigGDJWt9rjvW#hW?tlCwZ!F$EN!CPe)Ro38zDoI&BdId%QL9G&UekEDlit zg`P2hfF>P(XO<&>zy>ALdc-HtTKzsnH#NSDEA^xu9p@RL2zkn^O8!fya5@TL>o*i7LBDc}H6 zb*Y!FiY?CNLu_~YBtgW8_g|4HOd`~^d#q1Bn6+AWJLa0wH#bW=ngHlLgoV}JK5U3i zmL3_VKM$Lwe>T*wt!>!-Y-0rSZ#Su-MixC!`@-^~XmO~EhhhsnR?T`JoQ9Qm0p>N0=n?L+^q+!(=al&u3^X&uvPP$RO$9TI5 zBcl9}_~fYxec4_5*%Bp3nquqAOZzm|-cbGoTRkk6Z&lf7fBl~a1zjApRNtGs;RBQAzHw1jr&D?lbM z&1iX7yMNP?DI!MDj2)<0@wfY(ZKODE6Sr#h18x5>_eG+JA|$(=^ctC24|f zG$2^mZ1?RCctod>hjQVuGeA0tNvDi&VPS55eX`o-MRLOem2gD^jj*{>1oh23X4=V^ z#a3;F&rR1mR431F>x(|S!9&a`U&LE>>@J4tz`gy^PysJ*tq6#=&tfyXNcG8+NpU}c zxHtmvT@%)73NDS>&pD%~jgnssa6*zkh8?)*yt$+EzPhB^qO8s$j`C61p+N2=ip3K1 zP?isCIH!TTwzUmw%UCiRc%y}E6S`+$)-RuSwMDgMHY4boD$!kjg)?8nNH#YzA4SpQ zt#^f(ufO(cONiZ;EAH||wvY0m1R^M>GBu$Cg0_;CQ9 z%)(G4`g{u`nHNupNsrxG<5@v;CAU#xO7|CLbD{Uhy-n{8)*G{MuWf9?d~}xbUV>>G z594c9yY=;!SVRqysRFubMK^G0CkaE0m&q4CyaGGl&uQjSh_og6Z!YxluTd5`ImaTb z2~Cxx^fTn%ror^~qYr2j25!u48J`k(ShTj~e@A@0{6zEV;%X+Uh?{KDR$^>I zir8-l2f1$8hd4khs+W?F|HkvYhaFF07i|6|?OQuIL9YiwDUsb_l5EzK8|q)8z&LqmsGzU?_Kd zs4>P0ZM6aVaQmx&61!Ov+WPRqoJi90``m;(dEnvhl%Q&avZXKd@&xVli zlSBTtE@It;6;_V%}}+g#N8g++ArP zZ&e@L3wP=G#Une{#aD4DWmJzK!S-8x2j*^^#FXp;HDirPormzvbR^CfVY9Pl&#kY#EGwYA_bj3;0xAEuz@@x zmgKabp4}Ho=}GSl6O_w!Gsof$%K2KLY=3` zCvHNv4QpK~prw2eMJCwiuNS z(XOZ$2>`TH@X|^4v%M}=N_HBEAfhCT>K5dJ3gCgkAX6t9_~s{=;`%Av)#Gl5UukK5 z`ps!A6tS!8!~WbVqlteX75sUmB#m6|?MQlmFL!lOce%vI!2Avd#OA?34(HviE$L0- zi4J^%V+`|GcC`E&)#i8%_VW2(&)2W#qA=YQ7)3v;z47%GAV~(a>=*4Dan7jE&lBJF zT`WN3Hue;++XADVHthj_6mx_n`4B^|kh9cW4EI*OK8y;aA=GviTnPt!`1?L)q;Dq{ zU2HU)YWRg0<;Jf*e-tMvXfN+}C^BQ*MQJ2lvfnpkSNI(f<+3kKW-|Ym+xO2&50>ad z9S6GP#cYkPlznR{T2D1;W@V>(3Q+V-&96-=G|{qL7hH49bwm5%oFWSZ#<(| zx)0OIN>nV9FjJ(FHoBX&LgB2igotMT9kd3NfLAwNh+NT_af z6SIhnW(wDa0V)jtajWcD%O^}^TdYGDxhJO+p+G?RA#9Qh>mSienwPYcm!z)tqPqQ8 ztHF88A7gAyle)nd2QQiwT#{G1+`OW)(I z?N2F(#kak~+%Z>Zb4BjH*K)}7<-m>lH)D8Ws(0KWNuG<{`QmEH5TihxKcB@NO@ zN;gQCq#Qsxq`Tt~(hbrjEdqz`?(UNAI5ZsU(DA={e((Fm>+*v*?0fH-HEU+paG&}A zCFKKtB1%+s?wG^^7f&-ge%Mkyi@3yxa(f%%7uEq)wU{&_FPK|day_V=mRV5bYjv8? zNBMz&!n^0@zD9($+WAFw)s*+uQq~nH2_PnFY$Zo;Fe)yKNSAJ_3s&MtA$i zOAE$!1H8!eFFqrCSfHzdE+i2t%Vt;l0;MA8gj{a@>0A%>T!7}0R+2csaGSBy8Oe4a zzf!yxE&5~9sP8n}*k*+(4v%+^$bZNwjX*0G&ON^t zH3NiZCLg@)-iN_%D=dF)1^h?14!Yp=2KjC^!XM#L?E&^B+S0y!Rlc9loz}r7IrKhX zNOGXf+t;WoN;4mmE8rnT#O-(`8)(B`?*+ST04fMty_Rwxezh_Zz8E*UX2t(XtH53p z$TLx4o6YSx&7um=RJ!8mFuHrC{2g+%1uvv@d-=sKfCQx_n%iA4w(lRQlemn;52+&} zN16PO=G_&VWwXq+#2&e7T^mNU#~Nf~6>4SE`_4hVZ%zfnA!5*&;WfUpSy%04SRBT( zETl_RrnOM{z{SevBYhb9^vmkfFIJzyzdW;Rm%|-LcruKvV~;!?(1?=${{%T3ULpCM^oqcq#h;{z$j&TcQ)12&>ra#*D?alm@ za4r;=j>rC4+q>UA7L=-7bU~esemO^U;NlgrKatz#zf_e~)wAa#UJ}q{5U8s+f0h|i z++NLvAX|=J`X?YY{m!9@YuWaAKL`aC7bC0lCGQmvF_EjP9`i00ejI-noA>A9O(YRA zBKwuA1fYxyXpFo8=VADOKO+E>M{|Z;eHoGK(<2m*nJrBi(Hr}uJdf$l;n?K$mRL(~ z^Hf(n?rI+r-de9VHZ>`0LR3HHDJ(B*$;#P>H6c@U3x3aBC2O*(>?W_28QpProBN)U zBFNs9QgyZBXlbb<%gdEc^5jAx+%>o&uPlOlVi7x6b{S^>9oz{KC@aW-;~>&w)y69< zTacj|)!r~)Qfx9)1>7P*2<@HQ`XupoX+cca-;nkf$$c z*BfKZOZV=UKFl)O)f3hQhyZ~MW(VzR8KXXelTs>01(}4yv>rRJV^g^@*uZfB*+Jn5RH4W>*|>G3mvqxvj- zW`(ulcS=mO9kN|AIpJ#JKysuRj^1h zg3*tQzm4I&#AYQ*ErTKhG3&oB2af&`Pd=(KMQy;jY_HnFVh1-pvcP)QojD}Fi_o6i z54@%Dqd2C?I>k#i65VJlGjslbM%(t&-oyK;safR2P{LO5Us^CXM{&Z~W^vP0EOpND zLq$Ln!Xl_ecI|#YkKSp?=@hIddC6=+nx6k9FrUUJ0TmgypF zp7+7)J6(F9RBo{wqAbD(|9j+eW;`_ZsAW7I0e#cdU+dUZgj{hRJbm5TI^fElo)${X z9<5LUk*dT;!BI+6=d^`g4QePp97!$XH9{7+qUX7rzR{U72tVDkv$6)S_(24R8LC!y zT#R8z3}LUt{^ESr7bR!aAx`dE_EjS`4GcSy&^rzMru~Ftmy_fiMVa<4f=nP^KZQslUAV?56?-2~%}Y1kvayoT+JQ~`tbIMV;&klNVjr`P=&E2PO?`d1txnURfAIY!oh_-E%mQ;L6L}65)A}wc|SYiP;Yi0g$`E@ zOztY}qS}s6H1pHUTRuehu_N=Sm9mIGsOyV{xb)b(v#h$a(QS^w&#hQUNbfa~#3Kr2 zuE0)xLljnVx`{uCSB#|I)k|--ne(RYM7;6wnmB#69(nVZu1GZat=vH4Bf;ApPtZ|K zo9Dd0I;mWTnag>5v9UE*Hhq8fuf`7bGw|-8ud(?*{@vM*W42Q1A57MNL2T=l-Tg*< z4fnAop}9s;J^YP>ei`Xb7l>8+#HKTY2ZAO?3pG1~(}4w7{NF@Bir;OV?%Fp*?82kC>R^8* zh@`7E`il$NlP9Cgr)UfX&0j4f6KYba;@Zmat~l^RmP6~RU)3x{S-7q-Rc$gcN!9Qx zA1N#a<`rPzl@@zm=nyH7C@Oy@BHgdEn% zO?I*Fua1m`3EgVlNt~$CTRdt7!6_W21)(kP@CEFJ8Cqdcv$^HRW1|uLEvM(E7S;5W z3euaIir^|!FOH|je~~fBBOoZ8&Xb*?aHSyulBoT3mn(FCH3RR+#7zns%OnmO!sPol z`8B21pCwbK7dn2nPD$CYdx|TfGYoNv-_y9XR*VuTbN8SLbcI;C_siAkhx1*)a3a-= zF9r(lZ@h&aE*GvJ(jV`4D)${h4=01azFf6c>TPuh`)(1_ivSCX$4{40Wk91N zgN_x|)qbukHyJ#`#1l76IMe-gV=g-p;7fgsB6s5GD(#_Ey&M8ZNrkHB=>F?LN8>3y zWhVlS7K%d%nbBO;-*w^Eqg(EXl5k20@N+9IuQ%b{U#x;iNdz*uy}}W-s?$R1Q^)kC zi^^@|SiaYY*Aofkt2&m{9Sb847AG*MKXO?7E1(GY^+z@&s%yQxrs0q5H#J`a;OihX zPCcCN?PBpyr=6H}mY8*F>5~#gieAr4838f;_o8lhtB2NFc8;r$xDn?$_!|DU(5F}}H$z@V#^c)M^a|QBtZgWuo37ffD-DiUy}=4UDt@4hi50-s z8nkLEET<9|HrZWP9rS;QJZO;Rv9EG)c`9__@z?e+xa!Xn!R6u+oqx z-1QiznABmMY-OYE!gND`G|9Cv*UCr?0;Mt)?*Cg>uu|mb1%EAmq9n}M>H0Mgs6nX{ zzqL1i;fk}EC_dhx$D6Xqgsy3-UG~=7vw|pPvG{^WJ)mQY+_WqOs@D^nd93(ztiNzZ z!VY%(Inf(auCBxQg7mv+KB>#FfsFt&IwAqm%mZoHBT1{5^o?TI&Tq?7_zY!-{%3*L zOZ4ja|Hb9^`BP!DS|O5CF7zFQNmin#Zsm$!A;Q@f)VHPfPTnx`N|;+pWoF{*W0vFx zM1Bed@>(f%Qa1wv6rI6^i<`Jcq11b{Rf&OLGIvDUi5j^e0v_`4={6T?;OjTs6+7+E zTx;N$*f3`_{H}u$OPTxn;tD&N_Pks6&tN}p1BV=IlS)IJYP6T0R?{ur&ui^fuwkzf=3eDbRnLy3(x;#<}r zkg(d*Z?p{U_WGxyhWF9?pt+_FHEY8)2$DSgkHeJtNRMa$19&Wz0|jwcpar5)t(5H< zOgeo8#FMKUjxJPrlw_BMSb6_kePi7X&2(m;mlVv?dqQt_*+i-DiZ)sZ_kCl}lBU3~&3 zj|$O*4292k;K-hitkW(pGsg3i4|KKqGhtUoeS-?|TWRG1{Ch(6KPew=xdmg-ZtgaP z$Z>rl)u3CJ+^n}-EydT_{7tjnO3B8(=Cj${?jaFHA1m}QA0&4^n~9#QB?v%oBfBr@ z43_Vif50k$Y7Qt(uZXqN=t!H}l>FI=!+oeLebn(URRp&`G<8?rtv-_}!$Mk0taWjKI-?UW^vm2Se!L!nLx}v*aU?%@|F_NM(H; zrMj8(1n$24f+SH7ug7l}bdR{C69wiC574-!+b1tcPTRUQh2kF4eFWjMwX#=1z z!J6D6PQ!!GQxOusdA5JVrv>`a9EX~*)G=slG+#mSdxKa|GhNoxmVclRI^p9v;$teA znIR^+>Yy^a&_8FA-K?beJqAPKrDc5h=))j^gX&AcSR(EZMGZ5Hzbs8aAU$A^T3SL` zHGt>(R)4wC*}?G51co^WDFwykVz0I^DNDLy6LK{nTbuX&FPeF4bKT(Jgub@U(G6Cs zFz?s6=q735L@U?)W{hEGLS%|$9YJk;anD~$PmAs)W@P2sL+kxxR9VgTgr2vR-B5Dh zCbS^8)a2?I?S;wc?*SRw^nay>Rfpj`AG|g!C7Pj|=u8<~L2Mw<6ALvp6g4!Uz-5`5 z{C$qsnMVzv+Q3y&*6Ykafs>%jN?s^WrD{_bv_neJC6|#okIzmr{RGlfhU_HGA`cGC zzB)8+{4(8YVUCt8w8ubvzZ1oZ za?pEsx!#v2(=HyK!k%9lvk@!DEK)QrtHhVM;?nd$kK)gh98rjsL*m#J=_Y_wt!XL^ z%Qv4uQq3jpD|kuXl6m=-L~(^P49HRO*(jo$GPFb0ax2?~YmvWz)}!4Y8cr&39bS#@VWZiQj(Foz3^c~8kbOiIrwI0hXBucldAGh57dWDi~h6yx;{CK!ce*w(n z+THHu%PH}F1cAs_fH}=Opg(vZ$?U)1_#-g}(FeI*Z`grK)%ej+uaE&9WZ-?}-FLMd z(_U+%xr$G*G1!$2@Cu&^qGn%SX9xhU6YtSbCqkjm)_A2+&I2l9Gktdv{m|jXS(z;H zaQ7RiB0?Q7jU^f(xraC-BH=EO(e$&43TNZR-XpDelOm+pttIFs%>fae2` zi&fZGh!K1JLukV81GcPM{BDt;9-N->sWtewXRyK94S$M5hl>Xq(?^QhS1l9%YA|Yn znb9@MOUD)eqWbFrV|*qXlteSkr~9fz=n(fypq4)Rukaf+9m!&3ky?pt{O1saKY6kt zE(#!AKrfKyo0)>7rEWDT4&vQ4IeCLm!*`Rvs{)C`UTRUi&MfLn6))uzWHl};Q`;nG zM-{iO8Mx{q_ruBQvRzqGTEcmQtg+B07^52Xk)?FTPeS8NM{eotz(6nGoK>w0QCfwm zG5ck)6|c;`$>g3>-OD-|y4TWj0EHo1@S%7dC&^&0oXGUa#?6pY%;u?*eMG>si-+y% zJMVh2YH72hmy#%=KFjp%^+K#RHo+nVbPGF&M5DoheJJr}d$MZY>T4R8ydTAj(u5iM z|A>*0*`h8eTkw*1N}|>4Xl|;e$GrRnx03~wAEp{SUJDA$EyiMzB?_F*PyB1JXz6Y z>B@yTdH^C-(FSe8``hWs7a-rOgfNzbV9nK zYrGe61KkpMI#eQg`0Yz||6R0i=v)WZpDW-pQ%@wZuQFC7U`uMgzdm zHxnXmErh=n7tW) z>`&;j?E&wz4dDAF_m_(fFCru<@$?vHhjXG}?x2>NDMjIFSt_bREK#TT*-E-PZ43z3 zlBAat2+HUsX=eB5S`=d|+*l=Q(Bpiy&)fYEkse+;(@zlkLDqA)qs+6>k^(nd&Fx2y zqrAa$a~ddN1#)E~{z&P}|KDT*q$L}%qGK`R*|r&ZHt)N?{49!OK@(f+KuQ!Nz*jeM zP(Wwxb{ZY&<7xsg(}7aqP;@hC)yDWdenziC`VrvpauDo!H0x>x ztIZJ1aELdN>lTDO?+k2L+-Oj$rbiyC5?Mbtto@oXvi*_N3ezQ)wMhjjh?0xWVJkLc z*L$r8;tguhPXMa(3IG}r3lq;Vnv{7Hu{rbc^CG!R zd+A{hW(JSc0-%uFan2`S-fBK)hRwfq9|B}CCCN3XVQnm?(7}-x0fB+`fJw4S;zn3S zazE3ku}Gq;f#*ZscA;g&kp2@7v=z+1vql{_<5 zoJiU2s9xImJuONE6x?o^Q?i^QD8s$acVTyu48SdNu?PqyOy0UKd zs)HXQ`GT33TEKNO6ceZa`IY!CgDxxPm;XL2m%3K~ueLi;9-@l7;_dxL*k>ZHzT1J+ z)0@CP6dGKkU>aB|f_b6Xu=k zSPuj@v+CfaWs^dKdb5duG@!IV~JTIV$K(U#6DOC|9{UBP-=qOTy)G2>sE~{N+pBJQ!aK;)bNI#^HrWJUy#$j z%7^=ml2V%anGTe(cKh$anW`k!QSzw#L&2g>(l&KzJDE>B<(|_Zb%W3NRG&ALK859c zP52B@asj(Mt9LxawTbib5JS!Cm(v!Vyv4Rvwxhb)#@i&h-zz?6bab7$o%9&bb?V4B zM$R4Q5rYTR8sB|-Q!Rc}rz-L`$ zQ`D?FW>gnpygaB7k^F0FQz zC}ALFv5?#`UzHD=B)n^V3z{U1%BbhM>}*z}i4wu1O{rF{QCsp%0sZ6<^CnsI-&Oaoj=G^Twcz-O|-A2Ya>ZnC)b~kgJwC z(g@(nJmUWN&nDFHe-*;Y5pzE%fz7oEzx&zhb>{%g(#t7{Pu)9DoBgSQAjItZh`u3? z`uz1TTWVEvqx&h+xJ7w1FzksU-x{;W9cjFJ{F&yFHvQmOCtPjOfqIic_9FfRKEqR% z#Wan1Aw2^c>7oHjS(Ds)7z|wAt>-PcSAaI!;Nx5}Rzv)c`fSY_Wg;UXVcz|yrtH-a z_mUj~VdVV^V``9(_B2|kII>I*^=r{L(NfVv)1G)!3riFiT374%3q-c!=kau-^S0X^ zmc3QBuK0Zq+zAITy>PYJN=G}AC3>8xJhb!<@Z3QOkC~rARmpLMfsHy;y{Qj$HGAK2 z0HKTdBkM$5)^bVR&=B|njesp6H;PZzk0Mp&>=u4-C;h)${c+^G?sB!6V1Y%I^TW`b zCA7nmrd)V=aBs@Rq34Kb-0a_n==DdP4jGUrY~!zttaC?bih4;?azIs%gFwiXu50jX zn25pTUdx#Q0ER?FP|DgKo%L^ksXI~SKT6?dnh;3FN9F&br7utVhvt=Sg5TD_Reo`Y zDVFBBY~Exo;IPSa=J55mkTva8>HMSx>+swMdnFanB-O!mnqOZ)1Bo+Per4w%b4VWC zX~%KC2HARui419iy!m#2CqDkVS0IX1Fx7suS4K(Pkw^J|QOUnzF|E}yW5dosy9V7g zNn>ewGtFtasaE`C9KQK!nB9H?o~Ff_{YrZIJxTSFvywqv@vO%CT5om^De#Dv+l?ZHd`X2G%y@RQpP7aKj{BUng4j`5x(WQqWZ!}f(Q?tS>LL{;cb&N6r-)U~j{?gcRA_Cqp?_>&0c zNDnY}!6ozmUdyRR4NtnfmhN)%^_SVUzeI{P_8>IHB_YBlouQhmQfNTcWwpoQW$`WkD#OS2hu)rwx#|cU)44iMWUx9g%?P2)Eu6!>!uvxJdOT#MW5R?F=HS94V8&g%9eX2U9HUOw^tfBsP)=z%9y zoQj|3vRV%3YQqPxe-{5e1%9}<;#LY+G8-t_!2ikilGX@Q8UBTodr4T0dp-31;NIg3 zQW!!|z0q}w^Ltr|hJFTtz{y=>TZ6E7RtBqe-~Ujl$2eW}W(vD_u->+6qwsIk@c>js~KZ64-3ruy3 zBb(7}BpR(7VGJRmp)u_tiCLV4kw(;LM`;S89|L%jr_6f{KZz@2*p5<62_GocXc8MC zlgxN{-&7*oju3{;?{Bo4CQaE&8%Xz9o{KCWc;s#6a(kpY5fPRQrnnYw9`W~X*xz}- zTWn$to3-J|S#TWT!ZT8olbC4NBfHGY5my8X%d@r_N}G+ik%N16#eMo`{eWpD?&sb= zW=ox3Y;11wKHZ;F)8+IOKs;Wb6p80N#3lmJ99{46Ek@sZg8HlpZq{l-sH28nbFEkz z&D{vHm)m(mc7PP0`xZ2hJW1)LmG&I3nfrLa_Fm!~`=?AtG7VgO1`u}3MAyGNbt4Q% zgUZHakJWuXY=PXKk*DRFL=o)Dt!}&{HG6x4G2thB{hJvr+nyh6GWz0jsdVIKt3VR@ z2D5w5Ip%nfqK+c`F`c*`#9eCfr0u4v$B>vqw~MnZqQ|I-bl;Hh8bodV70=;!3O){k zWF%>LZ-mGMx0#-hSCw#P+j4Y2KA_Xr7E#(FE6S`pUuf_nU(F@ypBV^=WWv*^1&Ji4 zN8bO*@aAfHzL6@!@4*Bpt6EK9+@g&^`yE}e7F#O)^xBkpweR+Y8SksP`Jax&Wm-{k z=jFvc5fS=~*>B@p#Jkn{Ls=GT@bvBj?mbuWyRyZC9Xe5HrIp0xi0=0CGcEEJ(&=?x zJp-0%TAS%Et~=7&IoFu&CB;-n;k{BT2ko1JYkDIc@wZ+j6T#Jw{SsO)HCQ{P?Qd$c z`XUGs3^PfzH2>K^{$MqeKpLyQB*C zJNptW#JaQ?WpUcBB5Oht%H`&a;-6yfFE?ZuA1d%dmxtWe0`t1N7sS~9Levd_>Z1QK zk;fm^acqisfzxh&p7d5&qfxYAA||CIa9Tx5IMm-`>7Sjq^|-DSlHA}-`5!0rw4eVH%PC`mSK5uPFlG_Vl5|xR;1JC+!vv^3 zQ=izw<81JW0W=(nY&?MQwS%uL2 z2rOIP8)FP1_Y0iMl6|@RaUJ6GHU3?u4xL9?0cgD2W%+W9Y%y~xY0zl*o|bJ?3eYx9 z^n^jG$hmRtb>@pjA%1_-MUlv|x^>rzin=+-P!^x{Oq>Dtk%Nr+S2H(DbUHk_#bN|j`*N{) z!prFC%7o)*+i(lJhGKlQJoE+Ht{@$=x3YA?_Kaqh88spz9XYH<6UitHQ>?H@)z#NU~v8!52`n=C04`>YVhMw_5GFVCJ5f{l~W~qn2d54gWnhXS4e4 zz;Oefo{S}wh*E2S_W2Sr^LARvrKzMtCIO&2S1qIPHDQiJvKPbk)@b}(5^QH7j5g`5 zZ(GQbLSC}tfMw@lgVbFK@+tWq^Drz$0?R?}s;-#9kB+t*PE1n{Kqk) z?mw?&hNnAv^N}ul@)Ms;Slcgb3YzI_PxQAk+mBQ!caD-5_5!~j+4deQ)LqK_gQxVi zr%B&o|E=M=YkktL{-s_eoYNe192T=+HyXm17)MEqosDjJX3bA*u3KtIUaB`mY-Z|0_e3Zfi;d*?qyeTzsVeBtEg0801N&=(=#{30Fdz-Fd@+aNLR-H zNY|<2-*#&B0N>lX5uvxT3J?`455m-?Zh#Jq<#q-kIifP{u14W;bJVV~2wIs@6sxy6o!n!qagTkSnwXeDxd7SXCLIL1ytvcco5bD9MR095b;a zQd8;=*KcI3vYxD6gsTToqhCu@gvtC4qdGG;%qvIJRhWrTAzUEU)kCo3-!3+*dBg}I zKL{~6_jsnh-3@}mNeeOuTM4)=y8)&@XFo|RmA+yvD-&7SP2@4ToxS6;|42qe7zSOS z=ZXVu@$L+%92lrVheXu^`c_;zw|E1=av|?e+7ZguUG5r@GaUv$0Sf}9m7e_=@a9t| zA!qU;5+scTe2y*`r@_^wq(S1N5s!-c^FT+gO1cz#<(OLs5qdsuq! zBNFb!FVJpN=JiTf{ySn2C%+y1$S>a!?uXe_D|vDP-y9fYWrd$ve{C|6i#v={m|$!F z7am$0BfjgWwKv$}k{Dn5ckbH))#5?}1iSDc*Z-LRteNC&9gE_%=L1}iQTLER=tqsF zagH7)1dIChGdum4>5~q2wWr!YAB-ZjD<8^e5iKZXb+Hu_y}bGZ(_%v3k-1{b0rQ*2 zr+^Td;k}#B4_^hf1cG$SFo5MHn?}9VX-Wd5hf-7^Maf$6vpFUsKn2Ytwdv8!7|rYoWZvFL0>z`7h@)_C6iu%hnO(5x<) zsiL9+3m-F#Pv#8(rE=u8bUtWXnKoO`8I-U{;t|BpJv%mY+tjyq7}En{dn_@VgJt*S z^n|6M{Lzb8%qaUFbCdM+7B(es0o^nF->TM{*j>5YQF+Z@`#`QGn}4d(Z0}=`0z0-_ z|7ak+rXE%(3y0<%U|2?g_JimyiT}xRx~EpFpkThu@Oh-Xgk9lI?oH*t+evrLcr6hC z!AJ20zH#+;;9selLX-2EgWPhQF@sxHsN|lqpy^R9@|A66KYaS5=np382yG(UlG$^k zEa4iB%QONR{;_<~cvENcZn<4{7zMxE%;B*-q;1w53c-nKq`D&$`PEpPu+B3C*Sdsb1=$@pxiPCR~EMG*%s zIiKir4MnlcJVS?LZ_?fOkCok8-qwB9>$(1v!qgajdaFQ{;*XvE)f6M8^tWW02h5bLoMW{cu_#3x1-&s38FYM|}yH1n{0(MD13el8T;&RUhK8Jh#Q-d*8^r-c;Ajywo{|4EH8#YD6JE95An)|!s zAF#r&8Mug#j`JUGlu#xH4_!=^?8A!6T2s5lKNZu6W~vo&%HjNXiPKTfWt&9^%Y}2*+aks zSVxw1u&VMf;d!$E<+&Z`Y!K@fgB~r#>&P%ftjr8y$UUReq9lSd<;lipFr2;*`yi6k zJP+_MfBu@BEm-OyCc;|pY|xMh?pPL(B$TNNV}ahJ+JPKaOg-xL0cX5lFlN3(xJ?mT z%4a3(dj+FI*X`HxD*SUxcv`3mhhRG5C_5mJN5;{;J`mvRQ9tQFq;`VoV5!^{iiqXY zOGq?BG+_blykKi!G+S!iD{gdN=7(pXXBP1N-wE;H1$Uvev-S~pb%$aDi7pd0=nVDe z^K;etl=xC)2mr`rGq(Vyw{lda0jZVTl+$dD*cl@;U9q{K-y}CWF7M95Oi;xps5Mhg zhha{k0}}QPsa8vx-+1eZj2mWkcg}rM+40NrE2+RhOJ(Rc*8yai5VgyLvZ3qEXxtb0 zk&-rT4=%vTTmH#|ki>=(iwE1Q&f$AAL5Qm^v`#4$LIw7J&0c{|4Vx{D@hVYf*3BSa zc@{Mkrk$0r^Z^qrmY8Q;grYbl28L5_aab3_*47HMI0&0P1kE@KG?^f}(U7TZ3y!R5 zHKD%~*Q8SimR^VLXXIY_FZ6!}v<7kjoy zi7ajR4gj(PQbFsm>i@!O8rLLS0P`)+jedTQ1^aT~AKUW4cGq?-xI|B9yz zWBD|-=P8q_MpQrIYwTnA;X*(R)2ztzra^!%3>B1ro^Zkc{)&xcwFO^WwB>H?RqWp% z{lU_}VV(_TR)FhZRday$HFN8=A#j@E+E}li!DkgmSkTbM==Q{g`m3v!Soq7bOV2kg zIkx{AS4JLEMHTJ!-3{m7AfIG5|hy)Aq+2kpj zc}ccUR#d2Ro^cX?`Pki^_9WC#Y1-i;|C$pfFP2aa$jDg?)nvwho%l}8vGmz+_>;t4#(Q=G=8h_uNJmD z5X+hCKjU@LFT7WDho|z6I__O$X|!lH@;ku`LMXJg;+GVuJ5?O5B2ZhY9sET8TWmL!~K~^)MdN{DecMB-lA`yFK)prYfSPCiO5P@+PzFOgoL8CM8HOz0D^+5Aty+ zed#)OJ~2IIQ-}~?1MY(h(Wx7nSxw2gYtAPu&U~FAuw#@sh@t6~ByBwV>9I;!wG^>h zIH4|!W>brKn5%RS4PVyHx%%1pnB2?p1Nf4C9|^!~n#jmK7d@&`fs~8Aaivqfke%-A zTGpp63fU8z>9e*+@XA+py7k5|Ol zLZtqZWM}p@i(TcK=L?7Kr{_x|I6pLB4TVWUhnr?{!pAqV&1v*)21}!33qqrEfDX7RYjXR!=SAcfvXpXzWRqs^*-Zo$Q2gbx# zI6aHoqrrj)h8h4HA+azwrLvb2zgq1htp(sUDvKN@@P6S{e}6w>79jbp?R^6U4(G3V zjb@X0_JcC8qcdL?UmScTIlAK+`()&w!9U0rPusXmsPWk1hN5WFx{@{PGAVJUoVkNx zsrN*uJ2*VtkTClHu`pjXU^Vgn_S{Xa|$I-&kZ>=oq#2aqf|1Huk_SfQ5^ znvj4utbGB|Mj``jiHW6fuN#Q2iODc^&Or$k8HcZZfjv*>g0>30Ye>uwi(bNa%0_q9 z0Gs~T2TqxPqW+6V>!nS)y_=^s-kJ8j1hGn?E*%y%+p^DbQ?&YL+U8Rq{8DNF?kevD zVLp}tMmy(!Kyhnw}~2GZCyK5t%mchaX@6yKnN?U6Sw1qRq!0-+8ZmbR@HhXe$>f5N?$BJO-4Qo4wBRULukM+!VAzDVJSG=Ll6-ID-+EKz+1BrfP2aG|XM_om&=T`Ypx zjk~3(@j$7jrG9?`7M1N&YBgQeZK(G%foK!;M8+zwG}uzuplu>R%A{FB`(q3_TCR&W z8of_h_Xf9M0`j%Rl~b}vOXzcKflSWKVCcfKYa4NLoJD5<%5SGh83%{w%pG`KA!2b> z1nu8+U~4PY-+j+uFXZHA9o%mov`N8Sw34KuNYsBW7uVl(8Gb^WuYbH)_{df(^?KR0 zGa+q{t3XMCk33Y9fz~3^t1hJN@l2k{fGwr|>G2Lqg>|%Z_XSk7ux4ZV(=O|cS=cLA zXEf$_m4&x((}(>UDdiFIC^#|SZuVkdRCUNn2($h$Co{av%7LPeSL<6Z%s zO?YIFQPnypz7jf;02dKy5vLjNZiRnhi-*@*?V^boC;pax_{@b0peh?_{XA3!a4(4VS(gLu_1jud~gFmYcTa0v>F`^dYe}E>tLm{E@cU zfqe@N-lL+7m)baI4D z4vl7S3817_wb1S@^j1KrZ?o(b_bc>0cAwWLi0}1=Hu-<%{^Zgz(S4?tlI3yv-I))p zRY(Xpg-FYy*SGp}uNAK`gE_V>_D9n`+2J84G7(}+1w^jRouEXNquHEzIPuZ0uiuH$ zesVT*-<+}kV_OmtDp}+(&n~w&(H(dHmYmRbAQt{L-Gc=J$(b-q=C&mT%$d%}x94Ms zE1pzYwN65{HaCYlO!wW_z4I;wd{)Bm7(nyUIekZ^&cBvEcR)?`&P|gY@lC;{Emg9|2O`DBh3?lsDpJ^PluU{*KC4Wtx(S$X2 zc2$k^7O-(6pH@ntv2^&7*zdt>^7S z>$b7wo$F8!3^C9V-n_-hsS&){643S7`}Ts*^>`Ri9}4U-G+)FU17aDW&lfw%C_+xi z=nQR*RCJtjJj}mrF2TpQfrl8zKtM3^eU1D>|K;i<(zPx6n9M7+7m}Vjm$&Ogw$9~E zKT{qT9es-|+(uvP$2?uKx06`I=YS%lIRBbb`n}4~yYI=GE3G zx*WbF$C07%AH)go$@LFrRHK9+X_jnO$0P9cJY$}#E<+<>=c9WFN&5?tEH3md$08_dL?-XdRHryrR5hAc>m@#j^{7n*Uhf zvkrt@AnF1mF8f|Z)Y$+5-+Xuc&NpDtq^f3@hkm_{jT^sRza61ICs&MJd1%yzC3K-N z=%`@fm&iCF4pc)GuHkVxtZG22dBiX{ntq4D{uRVXV2#a#%K7Oe-V~JX+_D?$<=vPvOQ=3nx|1qur&nDOUky4%u_d= z^+61i(p#X=Zi#Ab6{w5F^+|RNj!ByTvG881`~_JY6K(K&@{g31N%V8Myc=vR{xFrFi$_f*5Ja<@o52i07o47%e%=*61lRS`rP9mY zQ*6y6)WZdMu!9*k+ysIDv_>GZc&DLk^8m^0#b`;aD#+{T;EN7!5yZyGUP}m;cbEB| z&P@ux4J-qQ4l{}~Me8TI^SHJZ{G2j|!|Iqy0hoA}rYj}WLbW$&lNkA32{ zibr4(54k?+(tCxHFk!Y8BSjh$AX{C(ZKgbxn3OwrWJZipZEOtuxq5Ww;F^S|TQ9O{ zhyMcgeJDgz83(nM*$%S+($lttrbZxwbY5BN-KMi0dades#w2PI1#RG%m{$6+hsppI$HB)1FXOs%=^IcenYI&TYQ>1NxL6& zbhiXeM*r|Fy-K^3{S?&4i|>SebbUVf%roq^?shwj`fTY{^OX_nlZ$@Q)Z~g5yj0V_ z=_RuLqnIg#g+IaU#`vMYo$n{^a#@Rug4j&<<>3v+NgK@^39baN3Q=jg_x|PRD+NTP z7w|~jYfQat6cRhCa+KsD5U<_qAbCzXS$nsBIxCvt)7IWTI;2T5;#9>y4<(tYz zlY*R#i~-QZ3>bI(DeO#h$>n{L$yg@7a3|cK2xs-tc_3KXKD~`>nHga{8BDh~?~>lO`)+TI<#sPS`;^H9m;On32jc6)%2#TRY4g8?hao9 z-y|@|`qZ@n5QXPry(`#p#eD~8G?1z=?he7^jl6FEKc2oaEXwZt8UY1F0qI6cN=gKz zm6Xl_X_S=i?vN6Y21!9`5QgsVMnJkjy1SY8jL+}?e(<{Z;5{?TWAhDX>}~xAQ|*kPVy1bzaz{UB&+&)$o+1?M z11-S#L|=0S(>^J$J^ZGZ0<>Be`&1E)FE4j?@;?hCxt_CO6ys2L>_BSICN$&Xue9>I zzml}`ZKTrrJ);QiU$z~vQNvC6eyv01nNg3ewJNuwYCM7VZS^PCfkAX07WZtmo?x({`eY z=9U48g`P&bW&%)KwBm6v?XTA1d7ziLpdt_I|M9fWXOvIiYM4NqE=e?y7^bn7pzU9O zm*#aojY~`|4Y`Tell33}*pmciwa^x!5|ON!sq;X$)QW3i7zGF=vdG-b(?tC+!t*fJFYOiZ7}(A;1UyaG9Jpy6aaoZeIaH8B$ljTdoR zo!y8%boXcPifk0eWu_J#A4>Z?UU%oTKc|UI%b%r)FR{glx0Ik!s|zTdIHDELfda2n zB_zu=U|$1rdD3|QFMxPU_~F5(I|8{}WDf(;-|4~nC|nvs=J!zz=4$Lx-PV&q0C^{Z zy`U)Yd$w}YUK^~^Kr?G7bjfy#BRLG^!cB)1Y{MX@6TARC=7_!mUQ45af&$z()S`bZ zU|zk)Ybi+j)y+~=UTSrBp^@erKzYVLidqw+*2~8pXeJMdW%fu;$EGCj-LK?)H$1Z4 znCi5l1+>raTLRIQXRG$sl1+utUoHZihK`QzJ(!s@Wi*dw0>nNQXE}CttkE%H4pUp7 z=ly;s&>ld^8(f=ozA5AWVokOLd;nH(tVOXKZgBhLp3Ue_=~QsV2k#T@HPgBPBRfRW z`ZuWYyR)R-8(h~asfLg1MCu&)h=xAAv%FBjh{2(@?E305RX0A#&CARj7EI;+!Jme| zEFN4*cIaW>c-aGSSeZ@riRo)wF(8Q#f^;sYWGt1jFuvhX@4}kZPtIo-A0|+_{eAYy z&=7>7b`|_J`B2er+F1BwYAxO7(oQ*k9~*<(gM4x}FZX0RHPOJD+uKjpwZ??d?Ltx^ zr){-J{%uB#ubVy0bJiE#xL+cr0NjB?{qfJ%Lwu8M4q~BH=M(qWS`dF4@sRq}NTS}M z^9Yw+K<2Gpa4$raaCFSTq7rUU`bQQNt-yVnH(!PlTPrR~ElzfLe5d4 z10Ma4tBh0Bx5^1x+tTBR269x-wm;<+6w^$GnID6Gs0epe#H*{~8v{nwsEh8u1?1&i zFYo_c9Npu3>q4{9odxOR$B%*_mo;AdJUMKb0`91K!3*U^WFB%&q|pPB~=xbt_WV?fbP|Y zOMg@q*E;YN<66)kU>QXI?}M2@k9vrE4(2nJ{aRC=&!4A}9JfY;Joam){Ao}#8T&k> zrKL4-5gZpBnxC$XS~_gysG=b_M{9{bfEMX<#YX;`6ztTej+9I7OG#>JPXWL5HQ&k><1kgj?*aF+EX7IWl# zgI+wDjpvuFEES|LPe|H;H$Ic!v$pQlGxv;d90-yM4)x&jH=q*I8k1%BY8%ZVL*hso z97yHEOH=UP#c4b60+o<|$JbjGV+qKbg-pmqiTjzl$>24hm|x7hjQxWbafAUp3`9MM zA8JOXudI*6ATDOzlw&#puJHXj(+eKpf-XJjl)LKTSPaPxRAB*>en%aj4 z63Eozn97iNZR_ODg~q1GBM8#`axhgw3%c@}Vr&*8pw$2S6Pmq`^?G5t!#D= z;0y_PRRmLeAEzwONvUo)9GHgpuSk4@4EH;;xKV}foz9!(7OyCfnj`Ddh#Lor#z?mX z6lh-m(ydP;;ab3Yx#&11|Ab0d2LO%n65)h)gWQvUE|W&g=s*MjUL&@E+h9K`&G2J# zr%;%F){;kLtfT%9#Rm+>m~2{UNcJzr*_Ou7!w+ob=iE|BoKnd#p5d11y6L1`Gj^t{ zU`V3d@yok5^1mjnMimP&QPI)q;+`DnSUdI_dLjS41Ac!Y0`|KSITqT@#epgO{_gf{ zQhy+YHwtt#OCCxSpmOaC0P<57>y^QU9mV{)mc17J7C+2rM?U5lwa^zTmE4`@c~&WFIZb;b70RFjtg@4O=(mCr3FX@rTYp58*r zUyEm}jLG9S z4{`DEYHyGGQTi9XF6OJ^;^M9bD{4^!qeN{i+?`GO)bNa^f{4HN>1Sgp@TYTUT2P;@ECje;MbHryXtx4Nq}2@ zsjt7@e8+A33}+#*J8xvhvK*}aLx&O3duGj6YbjFW1$#?U7O#l;WWd}qZ12uiHW!wp z`s>v#P^KGLCB^CXAaDL1_JEbhqeUhyUKU81Fnut}#ll_9S}XlmQf zlIRG26Efzi6V;K$U+jyL>Ge1fS=0(t?dbgmLtptLhpwm8`PjYL_1a>SVQBLg9~Uk> zlP&-uzoUn?mivB1aQ&`}aCSAx|I<>uWwGT$DaY~9F&SY$TSr^9852S-K%wuP|HAaD=bJ$AkM3kIbA zE}@XH#3-)B6Ni2G^O+MRU%mA=3Q=T3KC6=lPOH04 ze2%h{afM2xp-bFn!u1gBMI+dHb%Xpa<8W4o6@!kci7&n1s=(8=zf*DUlgcZ_OM9mh zFBzxgaFgp1?7-bX-uN+IlQ^>wzs`LxK>uawy3y8 zv84qhjo&|Nr}-ZEDx=MdOu%hkaTG;PlHK+Gk>D2OX@MU&E}rGaaP(!?)L%mgQ)0q|(l&aMp9(UxibB zLTRvHXJ=pr=V}i~9t(9s&f7bijmfS6Um{O}Ql3c6Gv)Tx^iI#xP=#ra1JR>>hm}u| zD+H*s@~4N%k(=)I^AS5PmK|MhRxSKn-|g8hK=558Vq2OBgxl#{KBKnNBQFM1JeS0u z-Sy$8K>2$YlOu}}8n%7MM`NE9itH#X`l}BOuEXOz0%Svp++-M!<4Pu@TlMK#-v4%? z>BPNF+f>mVn1Qna@9jeNc$as8OB9DJ%-kj*>ykwebjme_$Os|aDKued3 zYg*q=tnYWIaUT=3*QJL<#@3H?_ZGRkT28unCN}1FS?#h7FNgn%7yP}UrVvW;Lc=q7 zE6t^8V+RIDM#NmtV`&m8dhzjtwE6l%w*7*&&s4~!S2l30hA0?!$HT9v)(@|dY#t=H z!0tDi4&Z1_P#-OWM@@v3-(9u2uUaycytWiwANzX0)#9?;5i@vmh;`WLqaEN^f7?5M zb?@#^&f~)7^QIgR*BjxQ;g3_E_~FRw*afXrT4FOvG-TH&yp?RK4{@yc8mg%Iv{k-vj^8*|=n^p!2*2WUp^%b1+qhI1Uvwzw9y&`|WLSiR zNh-hLvZiC`c=7Bm6rw2J zrBZ)=VoIH1Qfy#+WX%(oYuBED?P|JdJl>?(FQ`zwcr097jEj$dPsW=X`$;wAkMqOXjJ)XRdb$t?PF}m`Xz<;9ZO3;4M+|t zOOS~DU}cLqEgtBgL+R}ICH)N#){-JxzcF8`!a3f>jQ2%oZN3&3($L~xF-l$=is@MC zHOEp*4>BECC^M=O)x6>^#FpBw=8|G-e~oGSbzhIfhE_cjOuHfkvEoy`7dDvLF2Dvg z*IleTW|cc|$20uZ>v!`-^AYDzLR-8C<JQv2t%J6l0m|9H(0vH6y8^6Q_JczPQE*`jwcmw@2*iuVl=f>C7UHa| z@mf>`T8#Di23R3IWQVyb=HNUYyP08GrfWvUpYp(BdkCD@I?n_M5=jM%&w|^Ukuk>K zSUkq2(<7T}9NR2><7St~)pLQ*yYp|g>254N507UOL$e*sb^FDvU{$tSRcC}<{wRI; zS@a$9MMUK0VD!ixpXr`upP+(pzm~G0|FOx;;@>x3tlSr8{PFNE4ZX~Bp6*wC=Fh7w zufBB#$!pJT*`8nRo%(>U?$mu@Cw5`TY$!(~C564ROtE*{S})`Do#aY z^(ax<;bbV?fH2@ciqHl^gr+gaAo9CwVq|^L0gf#KjlTl{1uunodY~Ga2tu06j8({otdEW z!q)R?8aM5X!je(I+O+)ow?m=nqO^&w zsOuoWrc48cL-3cBk|^XVdBj%#Ky`%24%c?`W_K<8rM`u+q60(m7Eeys@Stv^0?mvF z*524%e__#T$}Xho;GK4LW+3#~%Yw`?b)omrDsJE zSe6#C+E?{A#?JevoyEXS6WpIwyOcw*b_(*+Y54f~4iECPBY}*r*x+n?9Espki=FM) za*o$gM7Q5}?NR{W>Jy3F675Bdlh3;6J*+;{qlluoZ2yE*M}9hGkeLWSPq|0U=Qf=1 zj)4N=JieRf(XHYoYDML4lcwRy=3yxkxU?4PmZ&@FbOdTqkr`~SHQU;vMQkAfg^yHe zH?Q?dOXo-Vl~YbS?MGDw>`A)kjec(?2{Hgl?oo>Qfp_fwz$aKc@6c+GdzcoeZ}Ir4tY#yc=I~%H@AGb#PoM2on5)31mW6rv|L66UZ>% z=GnF_e}p5iL@e$^QEy~#Z)tC3v#IvvTjcmX^n1NUy>yA_dSu_&?GIA^oc_xng;Guh z`Tuw=D5p#K6+ZD*HB|jQevA?-VX=hj6BE0|Xp|w;eC(CDhy5$N_%8q8&0hINdA(qF z;_vQ1x_@XoCxl91WU^yxVI|S)gE!HzrsF&G98lfob9j-)?-T=|gK|iV!yldPhHa|8 z1N7nE;czU?~iY_h9j7*Gr4P8C_JnNGkBor3C53oXJWMAE-vaXA4-Io`ubJg3vYIrb{l)w{tH@QS z{0!Ka)Bpw3H;)3+S|`|ku`SHfb^ppMIDZ@mVZdU$;PZ5*_|Q(Pa(Y1oB8^_&5ogOCs}Vk=qmYHDhFo{mV7fJQx`mye&{ z2Eoo~HZl__w>zu1aP-E=XZvhgt;Wxcb)9ZUTP1Ly_bag^$eb1;(vZ-+m$m}X$YRJ_ zrO85E#m{@uW26>dzsyYuqPB(1^qGgFu9$$d8{PSX`r=i!CE<$Utg#)**K*+QuAz4& zZa_XBh=EtLTh>np@XG%~9>(i=(g13l{X#Cu7Q1N$O~`N34^DYH3dMN)xTKiGrJS#7 z&AQc!`yn^#C&aGr3RJgp+$F1btL*FictgrKpEOkf)#_Hnj*n`bIC@?<<*BEij%4n4T_#^E|gavqV8;6L`8d^l}zO)So}kxlJ>7@03Kw`p;Vzose5b+*!pgq6J^peuf@| zK`|D)nI?Y^kMiXGK%Z_egwA>2VESF2H&lUCyl)qQ*728N8yQ9Nf6T4!ygEvi5%k2%)~(VIMFl~{(H z=QQbGhJP=W_&H;o3%!JgOz1uxE#@b?T-e?Z)0kZS_`UD!XMLGKhued18*ESF_(d4j z>8xdI0;4CW0m<{B(=1ETXq)=Y@Jmu~AOAZvl*k2iKb~_NeAbFJuQ@&+ssr2A!K?hf z(n3$g+G78%&eEVrja3o-$_zuS;0R9*i9#P<$exLYQzVphxD{usj8M-w<3z{FXXqp~ ze#2ZmKA{SFP~W0^aiyc7(Fom{wiu4>uX}O6U8sL}chMyJ8~~Jg>FzRJ${5Ng*f=gv zDfk`t{3MpDn6X8ie~)Qs)Ov|>9cX#Xs~euL^(gsJSuq!E8~@rZZ>~-M^eAOdz`|2k zb?alk&IXUie2#zhEH><~gCXcaX6B{)PPV~Gzh=+LoBVb zEf-k|*cY=+zI-StPn=QJwTmj1tnuXDps~||;`otRQGrdo*Mib_ zgtCguNQk^~rHJrvbv`UByH;={7l-~pkW|LdSr|l_8RNLW?yTJWe-7EbVzDVLq z#W4{*Mpw0dW2Pz{Pxv%Xobuu2dbbCd)VvaUnUR>-TNhi#l$Co!7`Z9T~0fj6bF&C*MFhv9_u@ z_*>s5QYh42ROe<5pLN~YGI_(gu7(7z;y_i1#r)H@Ux@$OJ!_a-;CJu8uAqRt_)v=+ihbb*5YC|E#Ebm~<%Y0+Kqf8r`4j#XUTK zewv4>B_;c7K1mOFp3+@XSYq|_KK6JKrHxr7;^xGCH z+odPY*CO^LAJBr^d*d~P74*_!vW}oVWwNjrf0$gtOK}_s1Ol7%82Lsmc0PF=XH3pW z_CyK=vN7V8(kE@)y~ILsk8b;f}0Fc@l1S&rpIpWNc#vE5X4%at7c^Ghd_$h z7CUZg7h^t=^nB2M+!!$*@_WV>$~Ky+d8<_8%j&FOc;1S)noiD_+?i9Tsr-+1R`Y2% z0D)=T$qNBFC4Nmf&@8v!X62CMai(J$D%c#Yj^oHXVO7QT*HQK=*6#G$C2$x{URb^y zT)I>c3;nGLaEP_Wuk@CT@`m5IqX&&i?hgVcoa_=qZ@*VZ{|VDsP=E)|6V#?s^7_9K zBPNLy6`pVQCy;15vHZpweZn7AR23;(FSoKW=d|mBfAn{sYFZ_|H#98#zX>PF*)S>3Kqr$!lzD zsPeCa4@941);tJ#Ncqc9h%dOde$PqUX}z&U^B#4J+%xui=y4}lm(t@I^!>=XW!uL_ z)w7`^5}(wb2+r?e?aQZhf-(V+BLPXiQ{@IW$Jr;z$&?YM8IxI;!ma_3Rjdtp4J&Oj zt%KYBXzg{*&*>hpq8i_?e&g+QLKu`~=P0MNCBPW1wi?V-@Uc~tP01(aOY zL29GF7Jvvq3jIN;Ar+JaP@+ELKh@|?3m@D0#Z^#dCMP(uMz}BM@kP*u8YqGX6@yxf z?DC{2#Il5o7cgh)@nCe!0;x8SH&p*JEjP~D?0CY0Y2t=3ee3!4Tdi)=e|D&z|h5gOabs4Y2VrK@5mh!sDvRxnrSZ&x;_1{-ja;@n<6KsUbgCw3|KDo1S`f0{Z z9(|;S*y}aEDO^h}Ja+6lUkjc_siwj>_VW9+{$ERkg$}q~qn-F9@1dvPC+;5ed_El@ z@qET>dGAZHrunjGvCaQ>dl6I2QrGq4(iOM2^)D?HcI*bpGf z1Ao+yLe9FOpO2SDnoMzvs*ii`*YIollIjoGJyko@H1xNwBX=7wyjQZLywAL-7$1-2 zDdxExECBL|`5`Fz!DoE)?gC)Pi^?t1E$GY)!%nLfe97Uk9HYm-DHbm?R19G7S`m~* z%Juy!kelTpzadIO(RnO~ihFyL6bXB{U9NSW-MJu@^0Ht-ny7P^68q?XB_g(N;l4(K z58Q;;$?hEVmM^=%L`h}8_BrSRY}$tD9ZrCCMuUyl>%0b>3N``W!}LrwiI~U#;<)KZ zzlC^&@>5j*&T8(+*i;argydwTR6Jv`cmAh)DuPdlawVVv82dN*A-g7i_0=@|2`d%I6Ib}CGW8ymc#9U!%tmaj=B`r7 z?eInLSq-eN)Is$$&Vz-+Lat-WaMNP9l~@}Wpu{tSZbw>CQkRTyw1mVW+F{)gO~b5k z;dG{DLq6_f#yM!-#H3<`aP)&*y<6a62)OFK7x>CcY?8{)CCPe$*y0|~8l3ZpmEeel^DqW1GcwW4D)YxCpoK=j9K5*vyM^X@|G@7v^-OkS) z2S&H;{!B?cX=-r(w}xKR5U8pY1q5 zzKg4)0Og)16)$W(OFel8E}Gy2v!I$oTsYK%B#R7Bz>UVVD`KU8H~!blnRaifXKQ+BCK1u7hNvh-X~{U#iM=Bzf6YrCA?!we z1h4<6w~G`y{{X@Wgxs#<*)Q#CYuMNpIUlfXpL^6~DI*kRbFAM`-EnsL!+M7ks=;Zw zXXT~XE@1ugdCe~`*@mb`stC%>`?rB+k4PheLqZ%yy?T0d zXN6ZU8X``sJ5H4Qxb2t3V|xc#|90Tnyx7$ zg3QWxa4_DTFrTQElnrR`S$wOFLKP1&SvfPet9?n`7?opiKP?}l1o#=Ea{KSb$NbrjmE1UQ8sBQ}7`8J2`jD9g<#O>1scAT3ho=paM3Jsdv>ts;>N}-qa6j>sPkWBa3=lfT37FD~D0dfrs z+(#pS9C7{IPqc=*jrdO9@O!=t81M@D^Tkku!m>K=SiY6Y@3B>EnaW4B> zIafjV3N4L7OCR;^VWXLFK2B#wF)Q8BQO(jqwyHSeW9fB!0D3>Ll^ZZn0esrm(HTB^ zZ96a@ybn!4wn{AMS^~1g?fVJy%4!*6Kxd&gFZVJn$|-#Ss@V=6Z8^A%)LOpt*6rq2 zjiKQnr#JNayoWa*2>@|1uX`3Wnb)Bd0;4r+37Yx$ZY@K=sOA1fpRYMEzm+X-%xwa6 z!b-(`447%?{Os38b=!C!RGX4tx=?oRt2E?`n^`@1eX+7xVkh^6%fxlEB@hmV;{|s-f zCvWBCo@96)W7yf*;gVDP*AhtZ@i8%NX@HfYppq|&KC%zkC-1ZZ#0AdVFf&kbnTyo> zfnzEw2DrQygk|Z_V;~%4(W$Zg{*g6ho{QI4*e;U-_6tXe=gnRGI`T#AxsO|Ze(#2u!9s2xESi|WQ~31vv{srWob$04f5%S%sh{N+Dh4^D9F z*6Y>Z+xOeyI%Szl@FU_>{Bp(5lZjNkBE;~hMe6rG&Jnc;Ub(E0^eAMRj7wL zx33=Aw?7>&F$}gTE(c;Plfmyn)0PQK=+7+eG&QIHFsbI&(BuDm!VKBDo&XZ>Pms0e zaXP~LPuaWa$PY|INf5p}e$Qy8_>0s%wgFVZO!vP>XaKKaD^CAdV)lG1ulZy>Wf90h zYd0vnzLEffCCwC%gz`O?QO~zq!nyT9-)*>t>SRcNpIwHZea{kX} zegVT}yNh`kYC@iTN*D0HWkq~|LiMZ=Jrfg?tSI$=j7mWE0=i3F^pW-5*~CteYDbQ3 zAsgIY9sy`!4;*3sIR#MnIY9qwH9zyRU3ET)r8OK3gnDu#zKN zw<-*Hh%!f9>4|Cn0yzZl+~I5Os@(_A1qD+9HXnL;Xp0ev1Hokmsr~>U99Dff6gIhp zJJC@b389SMDWZ=&$cOrmF|CbD%yKxa3*27syjrCC9PtH^ll~K7A|3{#d=0gYIki;1Pqid=ASY9>-zk4fZXm8Is-!13CBJ&U2p_d-_9b)>)40 z*n)6#S4&^`;#Lc7OZy=4Z1H869zBJl54mjvd~v*`;H`qt&Niwi+E@O~`_g-#SijGR z1tyMHHfseKO5ft*vwW@bo=2SZIOm85d)?XCAk`75P~Cfo~Glz zYR-xp6mej_>9{Uc8J==#{S- z#JJS@wotfS8h(orzpaRirGS%grC*Ii{Gb8p$pfgmXP`LSQ>g!^|w>Pa6mqo!xV$n)b(t$Eq3d@z{EYG5$bdDJ&o+ zq5VvP6*w5r-@`Y?qsiltsxNJ@QM<@bFLm$XTt`m9<&$NU>`m&~>tTBkG+bjJWQ{$G zk&GS_4Qcb8R~w+{JI&B2==Y|{Lrq*Fu2mu!>hak9qm zE>~&vT$f{8j#;bc+Wz*&(sPI+L80FIT3YU(fFL(a+jUH=a86Ho*g@mR(r2RT-< zIHaO@ys+ASHDWjm%8UfRJMg($gx@oO3iQVO?d>fWfRcZc#s@*q8wZOwYBl9+=5Mw3 zqXat6lA&|^YHQ9WER>U*k{!-ItT2HOZWK|Fz4QXBeO`tjX5cp(Ia}1d$CEY2M@O91 zxd%x4If)9`YS&~umPz119IA1UX{EVH+m#lSdelo122*WQ~o9u~%hz zp@uW}3D_bk>tOCGjHI?&2IVW?zE~uEq|RH z1i}D5_6~>UrkwDNlGR}rfBGc$;+zU=^k0gk!%I(3ycwQ}T;`pcuU$k|`C8uduEYn% z6!C@yY+2_Y->WYP!uNz)u>R3~1Nq2#)F3O*zb^u_^8Q5qdko(!M#1AAT7*D{Oy6DT08$bvdEQ9#uwPbU6UnrPx?v4Lzn}m?b*p(K(ivJX_20sw?j%#v zhk`1DTcV!yb2cr!e)|DVg4MabF_5K~KK{;FO@w)xPv@K?MVRUdiLr0(f3LRtaX;13 z;In;sNZWLkr*Humn6h8OZy8q~viOV`Ff)WZw-mb{j=VJxbQagHGtF6JBjGV9{Pjbl z{MHf@Iq(Cz4ZkJ0Z=i01r5wqt-{6-}*e(@jUDS*4)&2;&=#GFHGhw(sSiJlx>WOzx zxXiMC$ktT)UdTdI>Y*)LlX~@q@BICZ%weUHSCGxz#29zO`J*LwgHoURV29h$+uqIb z7Ed1?-TS|L8cVo7#|dKz3f9J;@5-wzz<&Ng5|Q(v=n9OJ(fPsfYQ>l}Ep59-uj^8a zU&G0ez=xNFV58;Rt3iZVK&ts8P_#m76yg7U2#oNd(D%>9V?jc_krhsfMW+UmW~6oJZv;~-UeO2+e2SCo2&i%E?-5XZOu*_U25nXy4TMt(i}V*8CWc7(jhjmL?f zVp#a*<=xFi;!;RtPcdWP8DMSO{9jJ=&Q*{f`0(H1S+_5RYNIsyqON>gnXH(D#f8M@TwM{Qe=P@t#p!iW-=?ky zl2M_x$040BE=9`vC+X0t@PryN^bd`KN#U4ZxxGbrz^5ghsW-bLiU z?0E)QH-Jn?D?V|ycF8|@s=*C=DJ6Ux#7AmQPGu0w!qT8ny>FngvzjP%V3Z>qPc$T; zW*#(e*lMFU=jWZ%aT=FXFPcI2)q`z-6x|psCB(dXt{=HdN{iBqb0GFb2MKmhUZ@@kk7;o_Vi-0sOCQv411{kK`i2ivCX|=BY#6u*@feJdraQjQpzqIpR6~2-ik;3~{t_w-ZXX`dv=1?%jak|Rz*L2|0kJqkY2%?sasVB1!1I^1Q+BWo+}Q6ZW= zqQmL9`MVO_!LianYYA#`A#$ujPhDpmP0g!Rmxa5(e=lP;FE3q9hSTN6#RE~LDtJK> zrd?%8!VWIE!HNjwPZlK<`d_O~8IGCKn3z{=b(LeMUc5XFsRf57apue_p_L#kn^8NH9&5* z<&^9q6Ov1RrwP97!JIV(@bE$&!EzJSv#wbtNno8t|G!0dxYP<3onC%e)_?FAMIN$tKC8c!mqCb}E&+$F~^A72s3FwXb^P$zg&?}oX=bFXspmDS8^;E8&o2D#INP3nud9xkbc ze)%U)5$`FTEh3HxVhrm5rZ@Yw*vUdSCoRX|)?ahIT?iIc(JaPXQcTQo_WuTu#>fpJ z0m6JFR*RY);l3JS;|iWa={HTad*rg^!msnlD8n=-LF}d zXwcIalaM?hv3S_SKjGpUXe%KJdXwR!VuF%IX4n0Gn|FJdy#U-?i+5(`X(P6rI& zYwKz>-=o#;6Cj=XG1hw!mL<=GlKz_bNdTC!g;)>*e$)6U2jZ;YfSWXESYpH+Z4g+} z4A&d1oD>e4-FswkdAN+&HNce&EJ&6HkZWg7?i`Q`y4vRc-;3%3YaWhdnWG2-q8}!m zVe-Im=m}7NPgVc?Ne6a81Og%nsakRIc^2jbw#`52!MPXs?%0!z?Bw{{q0ah-{^ z2r1KaIDH_Q3qYCZ7?J2s9=?TDmea2!ae=!D;lCi-zU27*(ACkb(i$jtrs}xk9fljD z5E?B2#tfy{G)c?JeMOZDEOUfFGA6bhVOS)u#MjMn{y{mLX85TJWF`(j0<+@x7SdYX zHiX`KdvhWI#gqv!GXkfBjIDTnA6hyyE320s@XH~<#rp3hvHGp6!GfkHh}2eecgNaD za}k-IZmMlxSy^!fXD0a4xTO#!HROR;DTBl3fU5H0|HA8X0rXMcnE%L!7p-OwZ!R|M z&ZjTFB_uq3tEPqz8bXlj);ojYQBuu?Zl{n&tRDg2(3k&Pse$=z%jmH`p#(;z8=!^I zMXAeyHxd9v-R{mNfd^$2cuk#GIb&Pt#IKBcy#N10ezR6BdpwzAy~HO8F|n#GwHphd zhwAI3M+u#TCc{bcK*9tNofsxW{6{k~GWwRDt^i81#+ju!G=ITK2z+UALkMj%`xp1; zp45Bv2u9JXlDh6mtJvsKNf| z32_Su;~|le3E7PQ^nwK8IXDtW?>W9JOG>h-<}I{?3NXh2aFEBZ!K`sR8f@_TGn-WL z0wd1sDLoY0#LB8F`d)=VMMYH=rMkbb4;;u`DZDmVb9p0X#3J5;h{hcOXxPPe6o5JP zGdFh>eCg*sT+!Do5TK&+pVpyiHR}r8-Yq|%=H|vjn#Cf+qh&aDSRO{Q99ZmO4Yyg2 z4~1na8+m(-d;)o1+8&Vffza&wBTy_PlHn(OWp}z94M{@z5|n+Cf#D6P1Z}K@vjc6R zuxq0pXgttywUIFl%vK<){Ddz*v;ZmA5U?2(la%~IZbvO%ZvUnYNdkG~$>^AaKOS>R z1fRn?$H`Q(<144ff;J=f5`qoKA3+Z}3=asTaT)*?a?;XnAHWi)D|jr8rUeCy>izro z2EeB()%$u2fCWXKXX6@(y_+;>(xAs4C49{YPN4#BPA<|2Aj0i=Mg(3RrV-pvuRE+o z^TQoP+V=_y2$DVQ!0p{I+hBv1t&b)`CFV6)*c9bcbrxja}pa&$u7m!;G95|SgY)gZd4a`R=zvIyIy*=)%O zducVGolH}sc>e{-{d`w*=Ohw9(=B_TqnU=s?OO{FtQ-HD0kL^tzj4QEGzrUh<{#hr z&nUsM`j}1)v1!DDv7WjwWcIvEa#}Zs!HpN$bvWS2qkW@vNh?Zj5Xc>663EtGaq{t9 zl^3Yy$#9cWi_gA?LJ14S9B-1b;hv@F$h=%0mTz0F6wwK!I z6Pjk|CMyL62XndX&zWNo_$p-6GVvF5omn!?wf$MlJ@&Xhz*QR|#)3c=RUuBcAgUDr z1+pw19Y9l4)N*oien6SuRvvEy&$iB;Ghmw&Xm(Y|861H_RYf}Ld@!^$z;ys@5&8nR zD<|~~LErDnCKIFG9xW;sr+E9>m|0i*!PuHcYmAb7*)LG&g+SU+F#vmsa(@1_jQ@sC zy^U9Pr%F0=cd(J+gEgn1pis=sS!h84;Eq3Phy>8!RlE!b>1WX9Ay=U>@$SZJ)jT^Z z%M}qe7Mp$2U}ThB4e5qi$F1ksQz|t zFPTj(EZo$!@k_7qJL1+`;@QWP_nNtYnUQhn?qZRFmNwwmua~FpLh6O_fq|$X}Cn`jTH{kRHwl4RhfFE5O zKlAd+Kej&tt57;a7i-V0;VW) zGf)rKz2{u+abfLzu%NqFOB(T|d{{U|;Gm&=#trz^PRW1Flfiv zwrq<-MkXsG^H?%ld5DLa|9QR8lN9+F==JW@vTS}?ISU??cfmCP^k3pJ7oz2lFjG=_ zxCCizs5^qFul-u-wNu2k`kH_;a({<8;KZMH&_AaF)^&y&ghJ8j{%XTv-f6PbbeIxE z=iZ*4%*;%rGzF%!h5X8KKl=u_Od5mw$4kA2 zBycVH&NVDpKH&u}zT#3+CqN2*2rfaWTEAO(r4f*5pK+otVZIt;;3jdZ0ww@pA|#nP zcwher3k_Y4;9Wr6{vz}yLlkI}s;%_0^~zs*kZjy}Qw~S^B>Wf=Tl1|D!CKOekUVJv zw_GCWHvp!4Rj>_K%Zu1hKNPfAwo5IKV2H5=jXS6|#aLB1fwG^FU2ov_>f{Q ze(U<6$D50}o1XrYP6i&H1h8pNzBN}%bws{Zj(ZE4`m#+l67``Rzu3&w85st)Hm_6! zX*|m^j;LeJPw0=eKV;vN#?QNJ!LI||z|tXw>d~>Wc<&>DQLAVar4VAxD=RDe!W=zx zXTjF^0q{Z4Ljn8UYBe~RYyQT_PE}cvQF$Id*hqE2ny+_(+3D)R5&@{6$Zaw4Eio~8 z+Af3iO5bIhp3mHnBFnC2UE@*MvxAaK-tS#P4&rpQ=55$T(-syS25|B=R>p8ga~x zKmG*T{~<7eA-)ZAaN=PSu^9pDobicD&ntUy3{##i6n+O`23z>jpePnOumabhpVLk zY;(}YT17@yHks4#5tvOj-MYhO_#JjYYs>xJjkLVH)oF`8H9vANqFLM`mCvswXkmJb zwF~m^99bg7;S7Q$@-UM#A=gn#sNY(!l+ZwO-y|Xm<6#tdNh3+aj_Ut+VAXvnAoxc0wvy(S=6TmcJ_b3AY8jy3Pnvo3jf*h zl+0S_*lhONTg{E2?_540A|~!o$OaxO)9`Qy zn;*zkV!IZ(8YC^h#{ifh1KzSXz)q-R>IOBh@cUBuq{|fUgY)|HLAROUU=lc;udbkQ zCj=AU0wfpio1-Oj6O~2{1W?W7uOIJNR^%wu zxjo2=ioWaKl!qCiH`GNXw=Uv4!}ct8+T#P?mOa2TZZm*nLGC@$7vM==paK1Fd$J4om2|ceP7V%O z`^$%8VyB}pvw#!$f~T5gGxe0(>-pAzU=fA}_M~RxXTJlSn{%F@^=m+Zo^rBI@D*g5d-+0@T6@Vx9tE^P(@AM>yHeti@N@ z%>O_!1cXk*QM*!wMxaF`Q#ylyq5t^#vqVsQ3ouH+Y=qU{%n*TjR+2yfi5yy7T)YC( z2n8TSfqHqB%c2}mNB9oJB7T1H*zyLlAK19KxL-X1CP8U{$Zk!4@!+~W9}GfEB8kAK z(Y4o8VFKE5Z@_@Cmz*0Kdw&162Ys#%ywLhkffUSODRt92J~&w3pqraMrL(v9uM7jm zURCN%5g+3l$~4?@MEnnbukY#X^QFttJ(#!GbTjJpFyj%sz7G#C2U&mF#MV4L$oi2W zi38myTqTvh3n&Hz0FjW1t(DbuXVfmW0AUaKBA{|}+u$|7sHuZX(>^a~^xH2t!W2VJ zJ52@+N2Dt6PnBO&6vY9OLZ^cG+eJxnWRwsYalsD^4B`YZ@qEiPY z%?2V&*w~+rZn7dGWYbRBknwALJl5+m-u;0JodT z=Ps0peC!X@Q!9S2WieIT1StA2djofOp}C;j0Ls{v2Fcm+!`{H;nejuB7^g?n5}LmD z7iSgA)gnGT4r%y4^^)A;)pwqI`o1Tt{r3s|OjhOGG7hw-v9xS9G|0A3aQoPl$5(4e(Jn(;o|YfxOM#8yj!R?Ql zZGIh|2~uX(Pj=O zdmoxWi4E^xeh1av-nCu%LtMVPztcVtzQ8~z-v6-Cu)c2dC^|H9)3NyQM7ZGMB2BAc zbmQ>wO&SI1orVT|e?ypDN#%nva1YN?`EzF+>Ae?V?z=Noxa8dJU;y{qnHl51tE+id zeaR>%1psIWD(|IA;}s^f;`aajQ<9Yp=K4f>4d@&N3k&AMqa%~t z>W8kbu2mqtfZ}?b07<8@T91lT;9X&Iuz^gSSHkO5w;gol4)B(9>Wp(-F<%D3_}F1EXH&Mz$q#-66Z1mN$v6%|uHy`NL-c zVA7nc0jt6&qa1t~mq}-AkWX+J^>GsQU0n&Q^5dEPZ3ix$A# zcPtzn$3h?Y_gyXE0u!Yp@%^sSd zvU z8lQ{5D`EA#+{ezA4SqsSIp;{qkPaxM!)5qTJyRk{!tRA_u#zUJO`5LVneR%H9{;Of zl(Z7=Se89;-Jmlgy6y$MKUTeU>!jeq((2W#FQ#|z+)1Pgt$0aL{T{}{!h#NBo_?Jj zy!r`qPaK^Q_urkFrhCBka*eC3I}PQ?p6vzQqGSM@l3%lXBTIk1V(|8TC66`9IPl=X z142S++K}01x@%c7#g0S{Z5I#~^?c1DJ`*;XdSP#BmG?+}`bkuK?D+PZWY1vIUR*$r z1{_0HMWw0uNj&`%eOiTY8gRRI{pnSS}){{D~3)3x{S z-i6(zPkkdFLEFYYyy2cI;lT;!%o=P2kWJyfOHBFeJ1<`BR!84Vgl0Jv+tKVdj{%iE zH;Cs}C4VFNM*k_7amtD*(>GU+m3W|WA7Q|ZdOg_m^yf|B;}`t5MI^n*+0;}Sw`Q`T zV0L%fSf!-OhL4{*wjfSU|C9Yhg?_aK25^TV*?||>pwL#aul0L>v5V{adUx?9po!PV zO7%WYSC}-9pM3et;tB#x#p9=X)JQ=5n6T`}(u#i`Z8!J}tOi9l0U8Vq4Q(F`!^{I~ z)m?wSCVl%Boae&s6aC0}}Ls3cUJN3Svy{*4iwH+!0`^ zrs?<%$>)1HKXLQjJPEdqch+3|N~Z;u+wt^uaCJ&791jg+Y(>M#YW)widfA{>>jY+I zWS$Qa57W(5Lt~Q(ir_u&z(F}c(aOPmtZ`OpY3XMfV#Hup5-msui5M8-f!ZF5$G{AM z#Zn8)Eq{+4E>K-z2-^TnWQMgi!JxPWXbVbUm}Vu{xdil*k@JCWctJCOEsdr>a0}Yr zRbjYwW7xLurp&X!ChFU|Eo(swo04x0F0m#)!`3|$E^E`P` zT5y(aPnKg}`xeO?mM8DQ5HW3+)fh`(Yz77f|HGdTlAP4|Jd3i(_I%5+FzC=9>0bJr zQTr2*3E|j(plj1H{O~nAche#*(e)964N6v2QYx%cj*LW#>5xt58ZmG;&#u2qp_uvY zKwx8A=UWGf!G09(vy?J}@foW|v5)Zz6$;rpQy0T&pM9&~v9^Vy=DsZlupg&y{RCjPd+N-qwqU z5hNbaFau3GtXlF(+{q zcW|(E9Aq7*TrxsNjwv!Qc(UI>u6{XQR)?{N$fVfv;b>7R;eW|LP5ZKhyf$tvoxPmh5-G6bHsj9-@2<5JEJw zxcs-%jadL8z(Onlj_MoWJ$%6w`?x^|39$COlS8s0jyTe z=pL6d`x)0pGknTxY!obE+tUq7?4iCb{}!>i?&t~g-=98KP17+|0pmWqIvOnfTdf~$ z*YWn~f$?6cUjmL7W;eoIEy8^Arxk=Sdmq@8CO3x7u`(zZ3BUh=LqtMiY9Q#Nf`W&T zPSW4Scj+sO@0xMjd4c1utm5bIbol3N4$w-H*1k`P9jg7;AK-x>gM&}}{Ux8>zX#?s zZfVvX>a4hIDqemWMNsUzS)FW*+y&Sa3`zl57Y*!c73{q@7gN{uvnbljq~lr6on||` z8y@5>H@TU&&k9=cbXVzMS{4`3uTW7`-XO3J_(mUbl z{j$X5U}8bN1)Pw9AzQ`ke%nT2y36(-0Z=8oj%t0x$47YoLy25&Z$Rn^NI^QMr)e-S zFe+s4N8Ny2fLTCbSondSx3_oowXq%h8FI53WAxXR(e9s!(wh+>DF+cgN<0jY!!sQ? z09b)>VYm~G$tQdB3=Dy1O#c4J-KS2cvY<6_o%BzM(qN63zH_KgI8#>!4Ep2ht16EJ ze*l%;t(xoWvv&m6GI(T0PppZK3*QYztS)~D_}=s25)YB-*$nb`Qw`kcZs|_D6DQsR zi@#Q-bc2#d&yu!#T7pIj3|nR{J$Had1IP){&>#xt55x>)^4;)w0xAc<3i!6@8W|N% zEAqk#WkS0uTU|g2R~%@e(vU}E0AvOBQ)ooQU9Q)3uS70Ke`>(>Z91fH&w0ly=Qj*R z!0CW*-@fViAiNkpF?T*ddmNs&<6DY_aZPj5)B7z6LhM*KEDy)Uk56#Iv0iW?P9!p& z#sHagZ!pM8K|xQm_{%zUlH8fs!7HSO1s>v44r3MDrNx-pF3-ahyAr#(ui^lyBS7A= zxEwF71WHZ|8yg0z|G}{ ze0-aK|KU!Rqis1Mp7s|Fe= zT%0#)hTN_F+~o7gX@y6tY~`0z^^VaGvi(T_{6}ismI1y61C=^}kcnb&pJholjSgdT zku3FIv;rG~Yacl$c?K#5G{(_A3I|zG?(606${>gP9!v8M@WRg@pWgxXRBtf&NFRHP z6&Br1I5%hDv1If9!{E|lgjr9uCC5N^8_xabSur3#tu$;MteAW)dD^%YpcZ$v=JaAY zSR)io&917Le0yLf_9pgXVoU`ja?Oc{)*&5Ld4P0&d*!8o!XxJ)6Gr_vH`dP~>*qFU ze=J1qhLVw^glaejV|%9jD#AALem`a@$MKIT;le6lMc3Zd8x=V5@+NfdW5F~5wj zt*$Or_t1B}V|lVa3z!Xn!??Wman(kuKxJkkhYCPBo0&#|i{lNqpB>NEdqIA-|8D@6 zGq(Af_HjmJ1idd^(ep=zY!9hpQ^6@_AZ4ZLIPbH4C7?fs`+;#nR~4QkKtzWo!N@dy z(3c3TbfQ3`0PPP~!Ic`;LFvzzQ{UfRpjH@}n5Vq4lbN{-J_HMV948l@od~6{u-4de z-M#N3>DKpT_+O4`16r*+ij0fjdVux{9LG>rQE|n8tcikT(Jhsz2Oak6lUf)>?XZAG zG<0;JFA`%BjN?*Us0Qc`09hD>)Vfyt(+@zppL`(&%IMz#(WAZnTG04*r!EJ5QV6uhfF~~0r+a|7urE^xF z+_+7&Y2I4oBFSwb638Jq-+46L9&~%s-ewXJ3+RkdGHrV{_*Aziz;D6wn1f>(ph0IX zAt3<)da5$S-7ta610<}?XfZK>-Ts=mnu_7tl~JumySd21)p^&wE)URWVM@^XT1Z`Q}lY49-7K_kq6WKKZ=szxN^>wBSi*EovK6}uRaR!!_ zk2-8$B_gZ{S7!`L@5c)1(8`~GhJc z#jpkQ9n-stK)99)>&pi@&ffEOgqoNki>E-EHvOy;5gD0_oD1iMk5O?ax4VRwg%{-k z_-e z+fZyiXLwlA5^zA&xZrX?vgQ;Fk5KHcI0D>spTl{XUD~J%>t*LvP2KrA1LVEYGSpj1 zrk)|ah~;k(fqbYVpg;@^L)cg%(~gV&Gv4<%ZxHv%ql2_d$C|5=zM(D)(cyb4AY2>+ zW1jaZd29^oTM561(T2hB42vySH@9lrk^7Jg;G&0%o@cAxF1QRl2Qjcy`zO&hx>{d& zUh&w4lxK6)&kxdFr}MX~h9ZEkL2+rq5|xubXFl+kQYhV4l*@9?c;Ia7aO;@dCu^65 z(nE==$)l~bK>_%oLDyTbH7oKGtZFXKt?r{fXoy5Pf%NN;{#R{aSL&sXZH_679Jg|p zgs-VwI>CemZ5BD^KO;4N)uT-FVnYVu;Hw$ zMec#u_U;3bmRmXtF7%?t$2+}0&|J6Fj3v6ew0d@z7!!-&?YPFxYn{(~x@v=MEA)Rk z?;%y3(vy={eP=bO5nNpI4`Htxx3UJj*t7iU_^+nOqY)`76VT6 zf*`XqA56O+9mRv<&Zi5XeFQ`ITARlQPFCpomceJDjl~e4! zn#^*I|H4QApESiJxOPBeuivwwfT0+-HO|MrZm5e`38r5og>*p4{N8d;Tf~+BlUp{B zM|}lFiAGSoH~7MOYhdWu(-rOk3}QlOk272U-|L!G0WS3%bRj^ZM_~HPcc#NTqf6 zajv0v~)}~r)r3})i389|4I>G0f8d&0- z)>xh*F7V1U&7M1*@zOVu;5A;pXTmT3V!l}7Pae(pwS_O}Mh`wlbWf1xXzg~}aJ<^` z3D8(Ovda+tMX(T==t@Bwzkgjmvf=6W#)O&KqSy`!O-PG);*<U0s1z<}i#5-R_-FAVgoB#(#W*}1vDfi8@wyjW`z|HQs|m?ZZp}n`G6lv)?S?lu@%g~ zH8iU1+Yzv^GPr_*&dTZ0w$`ADl59WsV(f+8LE>6~9>@07fP0v=qa zBWGp9UgR=DznmWRRz4xW%cQF@++n9B3gKJQXwY596Ha@=rb)$W7Z;f-{ zRE#-L_Wse=Cl8<-uf4wa7a_%J7JmNn&gs2bzdP|#BKTBP;8dl%1Rc;I4@IG^x!XV} z&ivPM7*P-|)6KY$<8we)MI^FjGrC8C{H-+M>*^Yn+eKnBr7HpyMm3?>8 z_IXI1UlOo#;QLOIjAgpc($U>qKVBW-e4dsH+4i(dn03N>*+&jfoOR;!(m#_8!R+Yj z3c>LBh=%q%XJk^9!;4J2&_5U$(z4+=DE0VX9rSc7*_J7W0cb+|UhAfuy_czZHgF#l z9UuJJ1CWvuxz5?7DT1n01OiH|ZPw{n51yY5el$$u%W7@57|1CIclB*a0<(?g>HGP! zYvg%bY`M{CQ!+loV_HB#RBk}_mQQ;B?6C|3%d4Te@LQ-QJMo#ZLQ<|Rj)MpTWvtJi zIxg6A$%Fe31#4g^B1=F(fKuG`WfEplUh)IbzEB40k>X!*0QC&)HY9XNC%=0C>#)A} z+%!!|H+qW3wr76P?CypmAd5?p9Y!N~bDqr|X7H0a@G9W&y}KeF#AKEtmliuy!l_~h zEUEpvkc^BB^cZABQ88sUmI`=Gx`8ul!dV`Ca!9C`-M-=taM~d9|UoYY5<=9PrW_x_O zEeP(q5$ywbF~0rDg%YoDvOx9XsZqrJ$c~RH<<7-xY9Ogl)EVp8l2g?)m{zvs*Dud% z)h!*?8;N-=lHQ@G5>mwCzad#L>QjOopwSRBmK>Wfllep1ZCY$Aa&&VY5kScBcsF2B zibV~yn&1=Q;7A+;LLkn5ylgTU6@qJOGfcbGh}fxdUNaY(W8#LP3@Ebq>tgMsq@;rZ zJ^c?(=SLi5nX^v&LqhoxNa~hy-H`Z1-~7T2Ng=g8$A+zdPoq=?qki^jb9yT5+$PA! zX~+@VbGbjbp&I4BEmCHh+Za)KhVBwZ!Rpo=LtF4@Q|Ez+4F_P%_pa&v_m_!FO4gzb zU&%vXGn10YjzCA1kwKPDY2kto!~lcbvE=Y5_uqndU2GoCrzT9vje#hDWRks_2=O_q zrtwXYcE`2ghiCJgkqRL=ljx&TB50QeM&HJ@73jpoS#^e#o9kJ&ycb~-D$P@lCPI=` z8F@(b*fZ&rs$28vkfs|{HjuGLbvy9?!9DRUrAi>9XLCM3q>H^hsXP~5UHRCO5v>DN zqIsw2<-kVFg|{1r&v$7DqfyIWoHd*?VT5zytGZZV*sd~X0oJ-0DM1JqrUsUkYb%kT z=u4ur$OC~o0o2g$blY5cJ!O}?@Q9`31J*;^&`0tEUFsh z*5H3_DT(5Gm|QB4QqdMufAi{*SH!v*c~K3uFkF@`8O!`lyjSZ!p5+(i?hY5$`&?&*Hh zL`OXb5oxatbP!`UqK=zGzATn|jK_wVy>vwxC=;Vc~Lk`8GrGArv$LesuQFspFGP)45hQquG zWTM=n@A6|<_MX+sFeZP&KrSbE!>BQ3Bjyqs$=Z#exUogIp+{R&w~!?6TN|i_@wFi9 zeON{ECtGj)Q_{=7>5<(+SkOI_K6k86p-79MD8mv?^5U<#7A;0OhS+bXVaLJkQixKk zGQMN|kRtQq@1L2Nk^J>KfDUF(S0h{g-rwp8_MX&?uTKH2@m{-nvPK;Z-dj!Yd!@6< z*KvB)I5-5*KKec$qMIV%P*@UwL1e8NKD221&3M$cnOYzfjV5jMr`wPVC1x$>vcOlf z1LjwqG;Q)r5?EhhFKmVHe*5WCy9;Z7lp6li$=(a5A2-3zfEEv}$10^l3%AGuhsa3I zU>*R@>R81m|5DM>xgCAB>P8#Wg#svx?IPPL*qj>a3R#HTy#~AjR2_+l&*G29Z1wkF za0K@@v3fo2t3Y9JZ8_yg#7 z=3bAU(Ikpe0MGA8BSMS!HZHE|Xrbfps#CNzIwejI1k<_4+RC#Q{+0a?^)P9_${hqR zWcX;lzuWIex!0P8rf);fsgQ#1@<;aw%LF{=j9Q>7g}C();&yGdH*gv%-32e$^}3jq zIgk3Jr7u^P}okDShv$$JMMY%3BBC5jaNp1d&BgPHFJ=0P&am;zAw+|#4xlxhD zyd0a-bqv zw!FoW5u$Yy?T=`;U>Cb{@8LcNt=nn~p0u~v+8>fJ0S<2t_Y`(*1Is6Js2HlCLjgpI z_}ph2#YNMeHSNYz_J>>ASZ^imO53jwB_j**(fEmE9&lJy5iwJ0*~vw^k?_k#dNZx) z_P_W;Tkm8-UD->fm9X(;hr$MDVb9l#pfcyJ;3#@~Gn>*>b32V}H$ANE@tSevwhdm- zoffO4AeM$d9&u#vQQY{0 zVO(X#&I6eEGqgeMQn(;K)nO@;Jv+>Crco(}zTxwzQ}NU?4mC*#tgJM`3zA|q*^!b? zZpsXwThUW$Xfej7Blr^5&vZ_ZSi&#F;T1<6FN5Lwt1JmwB%4r^3=cbMX)sri~}c$m(oj#nOU36|l~ z>W9WR(G^S}Ovo~Mwa|v;dV9i%%w&5%EuHpKvVNLLp&~osuAH(;@E$xzVoO#L4JHw@TjVfe zs%_02;L>_MN_nC(`wHg zJhSThm>Ty*Ys_2ChnAMknh0Bx^+n?~*o#-I2~2A8%S)y!WM!eE0yNq#j}Ymw7&%4) z3!KO3`wtLk%0h2sf{Gg%(4wJlqb1AP;pnMv0w89leNxj9K7=!)3pEK3BR_e&&D#FT zb?;1k6x~qQ?$;u3hDs((-%pL3&Dal2LQIXL-gxCKnL>0-0#w>V7-(*}jAWj*Z`x~I zeyw0a%?WYO^@&kPDY7`YYElQ#%2%fIL2Y#@iJyxjo)RFQz{(nbUt23Fw&*fzkjX{9 z&ZQ9z)E*9qOr^wcA9Oul7cPv6Nnu=Z$6EBZkd4%P7=iZ`J2v_ zn9bdVd|V7uzJWz^>ve+g_G@fdOvR@uWg;HK@V|5^JZu!0b4D~1b+3=_f_1p2@??da_7m!Py%vby!u0K-wGu zbnjhAU_0At3>rk274pp+%K<$hmdiFNRu*Ru<^+V7W@!+ayZ55wO!1$s8`ks6B_6Zla+m8fL?`+(Bc)XhRJ&v-2uIxAz8ngNzmCz7V1sPFDO( zQ?q{-o$S+93lfbC3dN&3B%tLXRowkaDK-?Zm-=505?MU;sUY)+Qe-{&UPx&k?gg912oi0T=F}q|;t(ckfqLyXI6cmy`Cg0o% z@GgdE>a(U+r|1-PZ`!zE4rC%}Ub)|`KRl8%dtHZk32}+nPGZx?1v}&ucREqtV1_O8W^trUN z|KE4d?>f&1*2YdRy@XC-e@rvyc@WP|YYSoh5UcKnm-3_>&LaKihdyHY(Wxl|$Nf-3H(TZ7)|sp^aDOFuRE6P*(;n|8JC8%rV!!pi@p+{D9Ve#@~1 znc%p=hiSow1DB5|CShM;3!Y-Dhb5i{Sy@I4|Gcw^mKX}to&QxLQG3IKL~drIeqG1K zVO!QT;D5k0uP-?(%aK;V;sT!`;P{BK*x+qh zt@5!lR=CewhZCN{_VJ;R=_Nvabg)jG5vV7a;Wlf{KL8Ex{Z(aU{tOM>r7%ex#(a^u zrz+=J(09mY&p)V*gA-Z(G_oznRyyokH+)mz+i`I*eN^HpZmCD;9p+ixYbrGV4nrA0 zAc;GaFf*gQs420yI`e4(jTq7IoPxnJC_)Wmx;bcw{Xc&sm76|&Te9I;QPqlc{5U); zUHC-t-1K3_$*$uMTHxO>{@^p2@)8#_hKhyH7B^O6u&gCq9U%G9QXo-qcN`igG z2lAotWZ4rvzYO|G4N6=8eX%(%g_9FK09L2L=s){s$@%2*V|Tqc)*|q6Vf-WKB82Uh zObBNiW8=uY5kH&TLHPE6_Y-qPgI zpFbGPBI5*52k0KxJGn4|QXv@|!;iTt&~q{Q4{(@Lcz3rWDS{M%7aMC*$=S;ei9m=# zsR3%a|MNhFJJa!Z{_WjP?QrScjH#J=SM3oY0-@FM5{BPe|G0bgn6!8~n_7p%@vWIw z_y&f^48{YEuZu$em`){Z#DW7OcR6m|TX#AP|L+$fL1V*jaFBhz8MI;vjyfJtK)&c= z8WVAPIOgtO6V4TRbP9fW-jt^Z2v}Vki;A6o&>rww5erEP76#e-fBrx9?_az@^R7aI z+cUt)HyG~tHt;{hY?p?Sjt|RA@8U^xY-nmq@#4q<6vC)bd$jYE_@4GAts#lnrvGGR z?K`x=Sr>Uk!e>4RizEK?cfg0CFlrOGabweYj%?+8js3)1U8iVKXdP!ELLy*4tsYOy zZlLPOV|6IEe+C`?%J;$#`XWxj!(%Usb~a2k&`HL$D*oUG1A2)^yIwT8V1$WUNBgj zrp3NOLSXhSUQUghPZTJCJ$$h<Ln=H%~L|3 z<{{tSvvJykXF&l=lkR$FX_B+}pkMTcd3&Sg5Fy$hc=mweKd>*3k1lng)1>OBQF*ov zcbunmoU*F~yCNdC%Ez-|#zx=o2TjF(pQgV3XC(3eejV_IsUnWHYe2%JuFYtk13Dvb z7j#MAu5T5)6!TopV>;~V2;N&`5Y|E91x*wFK^r}_BSR7 zSH83JRWzGwS()O0jFy6Xl7u(^ zpa1v$uZHvb`$1!R1e1Y*4+tN(nEU()DQ+guX?tH1T9X@yp5 z#7D>!^MyGF_=f*bJ_l$G*E{?6c3z>VXzflT&tvQbO(@f{Kb#e8KUM4Ej~4rR9-IS&$Z*nfQb# zc6_W4wJl%5cVByL5|sVZ*J z{kz<2_8~*9FZd_Bng9FtFE)xSj?`gs@2<1LEH$FOD2{xWGZxdywY7xt12Z9h7v0Is zn3uM{(~zEix_NTAZq?^`?1HOf3++NK&L(&|sGt^1(r%;$u z7rl|VJr*>W(5hzxs)2Qml1Q^oMYZn`$ZyPfY)vq%b6ZuzRTtJDSs`nr8F`YM8AB_N zcHE#<`N;ieOiIvMm|nw0Sh-OOX55W3XrH1rLIPL=3Y@nR#(q10FUQNd$cxp{D1pps zVu^Y-g2*zn(lhki_dxswQVQ4Se|1UxXWK2h;QNE@UHn3KBzLLScy#Snu!{VRGCQSy^0i<7MJzQ`UouiYAq? z=U5zfRhiPDA&6Br@&u_anm>GT@<2suwYYc!Bo_#xc9&m$sucSAVy3|9*bvH~MW)F8 z!liroGA{D%a4%QL_Esg~=dF|5;6yLENGzxc`X?JXC@<>t^>64v3iWj*GXC_c%A83A zp2;1o2{AKT5rqD^%OOn&pn3_XQb*~gWpaxj&BN;}dJ3&MTqZzeg(eyRP=x4a($oaQ zX*`foU!MH8uR`;l`nT=XyDS#Y>6Xr3ul4al&+{MS@8{SO%3@&v0a&3MEQn~y2&#nk z6Fo0&Ah+HNZzZ7bAmqpvy3chp%F+piVlzpoE|^l{J%D}t;_Py~nlAMQ2j`XQ3+|ch zkM4KA#z7Ktz0-A_oube;(&i3&sVSS@A7@(V^cWDwOb@!OweqBabnOiy`oqW1MNk=PrVjYaeQg#k~+Nhs&-^b3Y8$O(}s`cg?T0Jh)) zH~GvZHRl#`*Q;h~XNyUp(dc6YFiE+YRFE=KAuQnr{T0WlY5+{DwcEkm-54~weP&po z82;|>agU^IhJM^n7q!+|^Fa237o#)3e<00_B(Wdg#@?Fs`<;2TdObJ6qp^a1CW;6w z4q{oA!h=ZkC(at?f5RAsL_}a(#QHP{)xr^6~0QoqpFdDAAPuR#j$9mn6 zcqp&@(S10UgYgXxZps%aUvFdO^EYUC@1uSj-CNRCKG!u6Jq5{^qRZSUnm*xzCI;ml zCSYsUFxm(rC1vqJA@}ut)vLSJSTcaD3ne<0(G2exZs6|rS-z1`(iu(F>gsF{4kTLA zgVbnGCziN46cUN@N)rxEt%vCEF1+KsBHZ~Le>#INddEiY3WuqasQ_~US4}e{EYVA9gmV#w!FE<_fCM}%T&7^tpN2#LZ7(yZH4N4$B77uLc zBzeR~7Pp$Kf)r4>W!D zU{jLD$A0?@8!}9m{A%@!+RmO4j*N3(>lU)IduXIL7 z&>H*CJ>k4A&RdOQZf^%GlLZ8{!Eq;Hj(?Nu>(vQ|PLLKFVQBYvUfzQyIx6(Lfn3KI z`dGuNc2hkM@2{r0(&N*VVGD5jFMl6%>I)nMlF&&=+q=*iN4p@T5=a=@v5$kmvZjh7 zoNRoZJiXbrvOatZFvQjUU?#Zt2JfYJ!R!rnsLiIB@qxRt!}g3t4-MH#+p`x*L`#L7 z6;3GuzrN4R08-Hyt^HB%>(?J-q&BNt35MKZwc4xo|H4xObs;FFB z{W{F;J7cG~JRjKSWwuAlzUZ~qzuRRs^WsZ5)L_8<9Ddxa))nqSEMvbm-DHLTLNg7d zLY|PsBff9H59{%1B)xHI(IaGVH2=kx=Mx%ilzy7onE9T%v$pn_5&L0SWN7{#CF6>y z)eejQNMSxmfZ!?Nd`I5bSIn?b0OHx_lj`CZPPRTk4#=rHK_7d{*k?_w@cel!EO!c$ zUpqKtky^Yva#XdJD*3&o!-F#UtVKW?>6ot#Qf!(9o=?-OrtC)6PQx>&k=HJgd9`(| z*_QWRKDZF*Fe1XNX0Z4|6GhQ%tf?P<3Q{&Ut{yK=sH#%?NJaG^6ShGIjD%9T$#`sI z$yHL)v(~KUyVjJGFnouDcSb{RbJgVTF)#IRIjHnueqJwub9MDDjQ{Jebl>NL@>b;| zq}{9;AvVftM_k01U%q(qealY4A`6o1-700xHr_ozn`msAh3|Sn%?0^nySK-0DQQ%5qR(I zUrh4juN0n0Gd_tQPdW>x-Sng_;&PigeCVtZW|`Qag+W11o_G{i(bKUVmB&>*$T)%D zV47{Zd#dVFkE}3BqODX<(R30=r-B>I^IoPF;CYVGC~`E!2r~^dj+HJTTh+%jft792 zfZBm(69N6Re*ueO&KEl~KDBCZ;e9YkLdK@t40~N2ogB^;<+WMsM(nDjbE8w-F2(r= zPvWx}lew$ER1!>9F`0s#Ul3aWC(W}Nsz{Nmg)Lw+h2wHWr2igy@Hd9?wOjjC-5T!~ zO)@#%hj^RD<-`&uFZaQa4Eu7%0#f$J8UNUJ%k4i-AE=bV$D5-{*$>~Z>BUZzsE-E1V7!{THjZ<{F3trFFeMBdw&yp6oRBsA%a0+i-Q^KL;+E*pZMVlrr zy+5n{MX+Bf07j%C9HEM^M6ag{#4u&WqG=X*-THk`euM{^l)GZ2l;U8Nt=8O~7Y00Y z`wZNhxU8SPj*~H~@*UaRUw=jqY8LJ~RuaEPvJRETg>vdq$-^%@#l2N*g>uY>&u!&s zi#NA)Qc$Mphzc=H+mmj;gVu*cm4IICglH0$j{Rcli{r6y>f(Vp7kL^Op8K2_AAWSK ziGPW-Tx50zL)!`pA(37464Tg6Br4vkx%hOvw}&l8PerPg<-!}pY`GxQ7PTuVCi3sa zuyt4>VQOAp+Jvq_xJnbDVnDpghMO*H!2ZHNxn5XZz>d6|+bN76hRCxeOs<=4qH&6Z z_#1ggCp6Ti&4hHo7@jTKx$7%{Lc18 zpX|*Ad@h(ql8W6YXu)oOhk4yKGSgws(ii~?b>ko#E{-T#`^e|xf zpsDGLr784rbCP_zq4^E+{x`pY6tz&(w*B>fQNP45@u`$-%in2KA2Xj79$`)zsWg>+ z&GFg|r$GZ8?nh%fs}0(@W}AwlKtKQu8oOWRKcOL0Jjan6y||UPnBYx^R?*|g<$yo> zP+%fB=5$MfsNfyd1Me;+>agI*@xccoZPjUY=W2hnwdEj^R0EWKkD~0mv*$Ll!nNjA zx#KmcE}aT~be%O)`~}US?-NjO<_EGlYXwJS@IAkaPxYCOM%46Bup{kXGxiTOqQCxk z_5~r0g0Gs|i4(xVS%f9FDJxD^va5s_+L|VO4!F;+4h3Y2elcs@6BH8h^aNO72d$Ax zE(V8_Thb;f>f#yJL6Hd@*FEaD@`ulD93uY$AwaH^28gioI<<0e+BM$!E)%&`hV*3z zGDL%6c@Don3CXHRXA;q|5|vLnc*$YWAsR~aB@6ohB@b;eAc%+)Tweif%cp#vS;)S2 ztmXNzpr{Rx$+zR6*ksSJ?Z)>y9RyoQPAEw$&=!;i4Dt2LMz+*`JMGz^-RyjQ6$D#H zhth`iOG6C*_y^1jtgg=C=CFLq$e#h8 z_#YP6>Hj@4NCTMEiPdh3Cv*qLLN=@F#LM-SWHpv>9E&X7~gD zr5cWz&MDEUsW@Z!V66sYq71PYh_POq0O{VIs#qGrM|xWj-Um6nki?;kfPxHI#SgFC zrlt|q&_^E~s%LgK76r@z^J?=TIQ~vQxlq*wTbN{d$!6F)`mi${o2jQ93Jj3V%Q{25qtx^YL->oRs4uc;rHkH@r=CpT zc7}vb?eUbGMha~k-kLN!jQM14s?4%5Bk@6TfI36^MvSB}C}>GBKr@+dez?(of`a~{ z?bb;6th92x;frD41D>6X9-#F3aADkNp5BC6gYGUrNqelGc8=?eTW`dyDPQSdYm;eQ zH5yzv0Zs>|P4_v7Du4Hid71D8!)3afP?S&-GbUu(C5Vj;sNfw7Sx`$SpbTqNf*9HbWGlLTj@k&c z=E%OhUTza&Ld!^Bd&H1k3TLXW=3r`SYGLCi(7M^>Hlsn{DWB6IdgSu*FGVN6isyg% zKTcg(?WHx}+52u8{NOP=ZA`+rCSfL~x}UM4p3=21f8wUkPFP#7Z9VezzcG*Qeg#^~ z6?<3vM|91ws14{*TX>>W&wj+j>qKgVsILd`a6rsRe!{tRaP?X;cw>~*jG7g4vJVd;-{LC~%Pj7&vKeSb+fC35xGUJ(@pbC>XY0&+s|K@Ym{(S&f^_l-8hwy*5oc@!(I-Td}|Kb&|EEOQp z*CnL`YhR8hRMQ97d%#i9xEOAmU#{Cs4}}ta_B)OI+q}0spQF?m9UV;=xKp=xNhg+I z>>9bu17$rCKRO^XaeNp-;7ERPxmQw9{^5Ux+H85Op8W2pLwwbk$jB&=A=+vDdX?__ z&!N8Bs*m68r$;n}v*X32wY?v$Si)Z%%G}(*Cehi^qy3se0%;&BbaWN2Mey?{Rn~|5 z0rU3#X)Pu~YHoXvKBDy)YtN%4lnE$Myi`!+A(v5AZo-n7CCDr+u$Mbi=I}$KBwUM( zg_1$7EAG`>!1)o^>u827ZP*T};Oam`4A~^!3o=@6OwdNmJy2!cTa93#PyDShApPi( znY72|?}})0#|?9l>6uG4GU$vnuIc5WzIJ5qD52bONTDnS?^V_RQ`&V#!@0HXXE;hC z2q#*!NOPi>5Ya}Y2o4eq5=V(L>L7X_X^5yPl4uj1QKLqmL=YTAm=JA9;mV~3g%aG(`vWDo}pnk!%MSDA%ZTnQ5Ft{ z%7GH@HoEGg>F@uB=<0i9wZV6Z#)ij7iGL#r`u!8c3we66G|Y58iTSIBmL5@T06`$_ z)0I+F6%ry*J~+5J{{F#!(CX&0m-{)6JQ|~ixWKBO><#$Evc|ncoBlkPKcN%i;yr%7 z8IoPac2+&A^55S@M7(E&kh`Ttw(aZesvaTEH{#uepu*ehrfu8C`b_L+cYyc%{!JY@ zaG%WijEepsn_$B6yTk+6;>*pybBFhQ;a|MW;%@Q@LkI7Yv(vsD~t%6vNQVR z-n7J0v^f1N#dRh4JMgfd01S%zXf1uJf*yC}3q&AazjrhBdHk3!9c(XxpL2V#WH^>x zJw+1=IlnCfIVK&$g;Z5tZeIt5$x0F_Z|%qkqEk2xns9e?nEjXn(TtaH;Uw>J|h;0vbAHO#Q04t8t$=3PLe z@?+l;yO%}+sOaZx5a2hzPkA@FH~i&Gnd%5t!P%Hnu9x%&nx3#gtdkD>SfUk|SYuIp z-hd%YFZuhhy~FH4ey>ayIvKEQll)?$gPs1(xN06~E}{6q>%||X$23eKg9n-0uw;m0 zqgmR1(RQ*oESQf175Od=t?U9t6Cb7EOGqB#U+P$~|*ucaWnb^s$ zfGp`&=sr!b8xTZ%Zm#o9UAq_{r&jTX@cr(%##8DZ)e74Y()9T8>)O#egY!K-)&78c z;dGJi%bAuL$Bs_%ejD4#;lU+*w=;?*f^{*`vO-EyvU75uMwyM>+wqf`U#~sRulWsa z)Urb<`SEk=nbim{4-cu^xsrdxWS`CYNEjdVcj3ifacpm{zVqXK1_KoV3;EKSAbaFE zKI%u+rqy6$|?ECA#o+A%DL z3lrh>ao7$W0$-WKHs1#P07jvubO<1}F#Gs5+8VNFU~qR=PLylj01HY@Ws3iT6ccN41wLSLN9PTAaf@$ zv-geOYtJ5Tk%tv#uHk^IG~lxer7&`+aqqf$orO`Y&y(v;BTA*E%AJ~hVbYCe1Na~+ z4>@4D#a-(;uh8CK0+L3f2#Gsga9#u-v?f7^k1ls8j{&Hd!`gakvzYS>l^aXRGi-uG zEygBu=RAK}mr;1E3Ku`u2Y8HusU=WD9gEA@r>WH3TKqaOPaVB*0+hPGX>H5hv<$-3 zrAS%ap7L25I=N1`mo)<&<(+epawoAPRZmaHTu7Wjqi44FmfLz0p{lwPz-4tW0?a@& zmjYrj_^rfPVMEqLsOxd+%BR1%Ruw0!1%#?W_Dmxe{AAB$$h0n$*_Cgn~q zINvjd#S(o)4RRu0n7ueMt_Q6WdUt;<%Dhk`6e@Uoz61jY61F}i^u;Iu#*7bqymP78 zK0P%yupvJPqNfkhVTJt0wrChWKye64`Z^ZAmD_(Uwh+A?bDZd~f1hD;|Avl}G$2r- z9lDyn@Z*~+PFK*jC#?uv6*o+}cxtk~sr|VN^P%N(3ucQ4&vNxGp5jt1#>;J5aH%@s zVi4~Ia;wo~>!?3Ir^CDb>5?Ak@^qzEY>L}IHbf`L{k<$6_ox!MXpwp3$w{nnv4YFS zL!YH>O0TS}ZuptgS&9r?Cj z(Lqj5w=RJypEA?FoJ+SrF^X4&;WgIag?xVftxf+Vgf(T%NKe`)rResf*<%g*`s%au zjosFt+xgw2Rp}sDhAk~EOamqXQkL}%PEDaDvEW&0twd&HkS3%1%trW|QS4V5${7M< zu-}Og+Fsj$GeDO$cUR8p*ZZudUltAtnfn|qOr>D40k?;ESjGZo-;<)kB`*M|sc?WD z$e@^#osB)Mdel{RJ#HfN!Ddn=pj6tIzaqr92D}ZxM&Z@Z@$_$CZca0a6cA0$`~9h@ z8H_nIfL#68V<5#CPMiT=QINyanxySn)d66dw7c&0>zMCVVmz^rgN6~CNTstYa6%5Q z+@JvE53Qy8nH;%^(wpziM1AQ_b(aJT&%F`H6%JQ$V?e3U)VsSE(uUqnE=@NCRbOO) z(B)m5CD^Wp^r@7asVWzGD8NS5>D?h{;B>1#s%}k{HeW3v1-b-KR;otJXYFhuX4Z8i zMSa^UAx+I3NBJswGJp`K-$t%oto>5~70bf?v2w1@;mZ=JAKJ>h9AP+OKH@n(Cr{)A z-SskC{5@Uo$s}Vso}WXqnV|HXhR*-x(h~LZYaR8bSUZW-+2}dl$scugva4I_XTZj{ znmrviKT5-%g~_#xRNM)3a18u1(QGy<6Rd^X{QI=`;0 zaAx|+R$3ZkQ3kGIZ-bfvn4?r6f`y+&wfk7TgYUZ%VHIEW{tNN_1xBcew%rl8x9#&u z${l;ws5sqg_A$G8k#C4bnCZQvnrH`}O@Du0SCfLS6R8blfS<;5rjBy9(4EwHH-@S$ z2ecH;*Hp2yy*Mb8Yv90?sLB8;1UCEm3SmX&-J6JC@J_I8(~qFn$h?NQ_~MW;1S(>? zn4V}7zZPlTru&NMC-t^5^bcAlS^4Hmihi^~AdvK~+vLLT8?#FPp?vwfqP)kHQSD=@C zZ64rlSgk+`nW=!dk=tt)>Jc=RAOh|vToyd97nQABU7aF3`L+St_-eA11rqY4z{OlC z5PhCYeCedZUG{I!p70Mrd`5)hPwkG>~;te zqW>%utF_0Q2aCLz(=|Wi$-{@6GpXvSg0GUz=X}=Y_$VD4M$V(k5-L*N%iCbn?s>Y1 z3qS)?9cdv?aIRd$Zr(9(yF2No>XRQr9^DyRS(&NC>%V=w{9ZWp9Ui25BZl+wCM!G~ zbx=L)xF~eog&mBkmlz?5@=gE;WEM|@Wrd?|r;eyk!x)zo9eqd{6oU+%hA`CmYXktG`cF7Jg?xPN&U6P-#bjd@ zT&7YS-=D3!YN%CzpaJNOlOedDWQfgYdIYuuX*=S>ev2EFy0$o6P$!IGntr5|OSg$2 zR6-eu-PR!(v;YtR-U)AQGoJ>B2(D@iB108-+k~qx6#Y9(CF{8!22_fOi(t!>QZVMC zh!WSmF*vWlz^c1&jJVGGwGw)JZMwI;J?CgOF#tl-&(Q%Rt;tLmmU$lYj&bkR-Mxk% zexy+FIQU6fRJlRM1{llyFwX1!odudTlRtR(`IOz4I`+VT+FlP@Cr3xG(jXaYja=ITlZJ}7 z^+&y7?Iyb=g+{bLU*s1OiU*gD)aiz z-~=UiCo}LLMTq%h07ld@3!|Q`-hS_qn(dz6N-S%4gRJN_*)-JQ@Wz2>g@1{2|Jntl zL5xGXQH}}Y42L}C&=8Wa97)no1*;m7?P|mDlRwNIDuk?U^Wpx(`!o>*6PDDlv{pq>ljQETyZO2` zJ9>->TJAofz^=il8w2+ZIGXrGP=`=sed(V?E9_{WqKHV*xP#K|Y(*$u;^ObQTA*~@-e2l=h2-}ED{9rZ zYU#H%IWLZ99ZtQpU=B6i-^+qqhQ)%$(gGx`m%n3*6y4SPSLS-$hM~hA5QlpoffIOBB-FZ8Y$my^YN^N4{k456jm{oDlNfs`f!Q!MKac%2(HQ z6L))EK`crVb_F_txnClusK(xw8KOG@8i>#S?|X;JXS4P@UeqPEw9-ab#@}b56_fGe zwtYt&!fw;Gr5JK23jH2FN)*JMngZ9!*Wd{O%3vo<4$kWGtwTz;vl5{}Mh)9TFysmr zKB~|pxeVPkRtk`1=XVxMCc9#V)JF57@AM$F7W>djjLBw)#+7vAe@S8iZ?txuRE3F1 z2I0fOdJvS9a9B0+Q0=Z3BHUKm);$;+$7Le%J=*B1t84J5))*%K{q=#zt)Ncq{5glP zLy$~!@9}lUhn5_Gx_jge=EAYs6O#8Kvkd= zu112a3*^lXUVrmUB$LoPT1mpGAW>G~F*T#yK5cI8y;6rB?R~(7tP)Hm|2c8!Q2qq) z*F}7TUY}ayy7j4xxJBw*+z_2wIudnF`r%xE31-eF9uPZVQL`K36_k2E{ukc%yWB$f7)4s zILc}rDR1`(Wfy@!STb}aN7z+5bEOe$ef;&46=OVA{M>v2IacI9NTflf2$!W>@vWEf z@!x}XH*evLa^-@J47;~-0H|IMVAzmBiYg~mR7hGTZgcEh1P&-@RI^_QI%|SDkpDIp zU`;5d4|7SyZbNg22nBLh+(*YzN4dE@8gFJ2>f?`+K3t2TTWxOMV@XzEIS20lIR~yc z$SSq(91=Wn>cT)_=ciAyIob9B@HaarslKnTCkR-If%f1FBKAS4Dlca-a?^n7@^ypM zs>^w$vjb|(C&rd2m&Z$I4z$K9XZ+$CyOxWIG-NS8_l(FF+s0fHnVZ|Yu!N}y4B#tL zR~Ir77B(oz%^f2zE;=C~cX#$=%aT4-)g$=a+=-_}Ru?aVs~459ji2e`KlN1eqEJx) zLM@9V+58IvPViZXE+;ycTX>qSbX;fhI1)=UXdAHn<~vj1!xFz zT-xx!{!FGr*UhxetfS`L&@Wfp6^r5!Q zh|umOI_bLrPbT59h7$8;Ob>%j^c5Com^ zzG~)ecgNda+1Aq@{6KOta`KWg3X(EP#&R;svKN&Vl*DCZlx1W{5&3{o>wg}=xZ63Q Y1OD#^iibF?zypx>RsAc)n%4LK1L!9-bpQYW literal 0 HcmV?d00001 From defef8d72e034716cc58f777e12fde938eff72c8 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Wed, 19 Jul 2023 15:36:53 +0200 Subject: [PATCH 47/62] adding logo 744 x 520 pix --- documents/logo/logoMM_crop_4_744x520.png | Bin 0 -> 76444 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 documents/logo/logoMM_crop_4_744x520.png diff --git a/documents/logo/logoMM_crop_4_744x520.png b/documents/logo/logoMM_crop_4_744x520.png new file mode 100644 index 0000000000000000000000000000000000000000..a208d61942e95f2f158d92d54082883df24738b8 GIT binary patch literal 76444 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 Date: Thu, 20 Jul 2023 16:35:22 +0200 Subject: [PATCH 48/62] xallarap eccentricity parameters in ModelParameters.__repr__ --- source/MulensModel/modelparameters.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 261c1b53..e5bba7d1 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -413,11 +413,14 @@ def __repr__(self): 'xi_inclination': {'width': 11, 'precision': 5, 'unit': 'deg', 'name': 'xallarap inclination'}, 'xi_Omega_node': {'width': 11, 'precision': 5, 'unit': 'deg', - 'name': 'xallarap Omega_node'}, + 'name': 'xallarap Omega node'}, 'xi_argument_of_latitude_reference': { 'width': 11, 'precision': 5, 'unit': 'deg', - 'name': 'xallarap argument_of latitude reference'}, - 't_0_xi': {'width': 13, 'precision': 5, 'unit': 'HJD'}, # XXX NAME? + 'name': 'xallarap argument of latitude reference'}, + 'xi_eccentricity': {'width': 8, 'precision': 6, + 'name': 'xallarap eccentricity'}, + 'xi_omega_periapsis': {'width': 11, 'precision': 5, 'unit': 'deg', + 'name': 'xallarap omega periapsis'}, } # Add binary source parameters with the same settings. binary_source_keys = ['t_0_1', 't_0_2', 'u_0_1', 'u_0_2', @@ -437,7 +440,8 @@ def __repr__(self): 'convergence_K', 'shear_G', 'ds_dt', 'dalpha_dt', 'x_caustic_in', 'x_caustic_out', 't_caustic_in', 't_caustic_out', 'xi_period', 'xi_semimajor_axis', 'xi_inclination', - 'xi_Omega_node', 'xi_argument_of_latitude_reference', 't_0_xi' + 'xi_Omega_node', 'xi_argument_of_latitude_reference', + 'xi_eccentricity', 'xi_omega_periapsis', ] variables = '' From f8b2f3504704a5961cea104189f8982a0d3ae47e Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 16:53:09 +0200 Subject: [PATCH 49/62] test_xallarap_at_t_0_eccentric() added --- source/MulensModel/modelparameters.py | 3 ++- source/MulensModel/tests/test_Model.py | 24 ++++++++++++++++++++---- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index e5bba7d1..f5e12e34 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -647,7 +647,8 @@ def _check_valid_combination_1_source(self, keys): 't_0_1 t_0_2 u_0_1 u_0_2 rho_1 rho_2 t_star_1 t_star_2 ' 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out ' 'xi_period xi_semimajor_axis xi_inclination xi_Omega_node ' - 'xi_argument_of_latitude_reference t_0_xi').split()) # XXXX + 'xi_argument_of_latitude_reference xi_eccentricity ' + 'xi_omega_periapsis t_0_xi').split()) difference = set(keys) - allowed_keys if len(difference) > 0: derived_1 = ['gamma', 'gamma_perp', 'gamma_parallel'] diff --git a/source/MulensModel/tests/test_Model.py b/source/MulensModel/tests/test_Model.py index 88221314..5159de77 100644 --- a/source/MulensModel/tests/test_Model.py +++ b/source/MulensModel/tests/test_Model.py @@ -460,7 +460,7 @@ def test_get_lc(): def prepare_xallarap_test( xi_Omega_node=0., xi_argument_of_latitude_reference=0., - t_0_xi=None): + t_0_xi=None, xi_eccentricity=None, xi_omega_periapsis=None): """ prepare data for unit tests of xallarap models """ @@ -482,21 +482,37 @@ def prepare_xallarap_test( elif t_0_xi == "t_0+d_time": t_0_xi = t_0 + d_time xallarap['t_0_xi'] = t_0_xi + if xi_eccentricity is not None: + xallarap['xi_eccentricity'] = xi_eccentricity + if xi_omega_periapsis is not None: + xallarap['xi_omega_periapsis'] = xi_omega_periapsis model_1 = mm.Model(common) model_2 = mm.Model({**common, **xallarap}) return (model_1, model_2, t_0, d_time, tau, u_0, xi_a) -def test_xallarap_at_t_0(): + +def test_xallarap_at_t_0_circular(): """ - Make sure that xallarap and non-xallarap 1L1S models produce - the same magnifications at t_0. + Make sure that xallarap circular and non-xallarap 1L1S models + produce the same magnifications at t_0. """ (model_1, model_2, t_0) = prepare_xallarap_test()[:2+1] assert model_1.get_magnification(t_0) == model_2.get_magnification(t_0) +def test_xallarap_at_t_0_eccentric(): + """ + Make sure that xallarap eccentric and non-xallarap 1L1S models + produce the same magnifications at t_0. + """ + kwargs = {'xi_eccentricity': 0.5, 'xi_omega_periapsis': 12.3456} + (model_1, model_2, t_0) = prepare_xallarap_test(**kwargs)[:2+1] + + assert model_1.get_magnification(t_0) == model_2.get_magnification(t_0) + + def test_xallarap_at_t_0_plus_half_of_period_1(): """ Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 0. From 09968fc07d60799d0daa3d2380678c36aeeea1e8 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 16:58:54 +0200 Subject: [PATCH 50/62] extending tests of xallarap parameters - 5 tests fail --- source/MulensModel/tests/test_ModelParameters.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/MulensModel/tests/test_ModelParameters.py b/source/MulensModel/tests/test_ModelParameters.py index 2d746345..caaf6fd8 100644 --- a/source/MulensModel/tests/test_ModelParameters.py +++ b/source/MulensModel/tests/test_ModelParameters.py @@ -389,7 +389,7 @@ def test_failing_single_lens_with_mass_sheet(self): 't_0': 0, 't_E': 9., 'u_0': 0.1, 'xi_period': 12.345, 'xi_semimajor_axis': 0.54321, 'xi_Omega_node': 0.123, 'xi_inclination': 9.8765, 'xi_argument_of_latitude_reference': 24.68, - 't_0_xi': 1.} + 'xi_eccentricity': 0.5, 'xi_omega_periapsis': 12.3456, 't_0_xi': 1.} def setup_xallarap(key): @@ -401,7 +401,8 @@ def setup_xallarap(key): tested_keys_1 = ['xi_period', 'xi_semimajor_axis', 'xi_Omega_node', - 'xi_inclination', 'xi_argument_of_latitude_reference'] + 'xi_inclination', 'xi_argument_of_latitude_reference', + 'xi_eccentricity', 'xi_omega_periapsis'] tested_keys_2 = tested_keys_1 + ['t_0_xi'] From cbfaf4613a08d95f11c4b8ad2b58a3956e636155 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 17:04:45 +0200 Subject: [PATCH 51/62] ModelParameters._check_valid_combination_1_source_xallarap() extended for eccentric xallarap --- source/MulensModel/modelparameters.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index f5e12e34..6e47397f 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -616,6 +616,13 @@ def _check_valid_combination_1_source_xallarap(self, keys): if parameter not in keys: raise KeyError(parameter) + allowed = set(['xi_eccentricity', 'xi_omega_periapsis']) + n_used = len(set(keys).intersection(allowed)) + if n_used not in [0, len(allowed)]: + raise KeyError( + 'Error in defining xi_eccentricity and xi_omega_periapsis. ' + 'Both of them or neither should be defined.') + def _check_valid_combination_1_source_Cassan08(self, keys): """ Check parameters defined for Cassan 2008 parameterization. From a548064f1a76496502a556e959141eb5e8268412 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 17:17:33 +0200 Subject: [PATCH 52/62] adding .xi_eccentricity and .xi_omega_periapsis in ModelParameters --- source/MulensModel/modelparameters.py | 33 +++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 6e47397f..2c536c99 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -1476,6 +1476,39 @@ def xi_argument_of_latitude_reference(self, new_value): new_value, 'xi_argument_of_latitude_reference') self.parameters['xi_argument_of_latitude_reference'] = new_value + @property + def xi_eccentricity(self): + """ + *float* + + The eccentricity of the xallarap orbit. Has to be in [0, 1) range. + """ + return self.parameters['xi_eccentricity'] + + @xi_eccentricity.setter + def xi_eccentricity(self, new_value): + if new_value < 0. or new_value >= 1.: + raise ValueError('xallarap eccentricity has to be between 0 and 1') + self.parameters['xi_eccentricity'] = new_value + + @property + def xi_omega_periapsis(self): + """ + *float* + + The argument of periapsis of the xallrap orbit, i.e., the angle + between the ascending node and periapsis measured in + the direction of motion. + The units are degrees. + """ + return self.parameters['xi_omega_periapsis'] + + @xi_omega_periapsis.setter + def xi_omega_periapsis(self, new_value): + self._warn_if_angle_outside_reasonable_range( + new_value, 'xi_omega_periapsis') + self.parameters['xi_omega_periapsis'] = new_value + @property def t_0_1(self): """ From ee8cc8157db5616078ea6611dca876618bae2346 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 17:23:35 +0200 Subject: [PATCH 53/62] changing order of functions in ModelParameters; all tests passed before this commit --- source/MulensModel/modelparameters.py | 96 +++++++++++++-------------- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 2c536c99..4ed404a6 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -331,6 +331,36 @@ def _check_types(self, alpha_defined): raise NotImplementedError('We have not yet implemented xallarap ' 'and multiple luminous sources') + def _check_valid_combination_1_source(self, keys): + """ + Check that the user hasn't over-defined the ModelParameters. + """ + # Make sure that there are no unwanted keys + allowed_keys = set(( + 't_0 u_0 t_E t_eff rho t_star pi_E pi_E_N pi_E_E t_0_par ' + 's q alpha dalpha_dt ds_dt t_0_kep convergence_K shear_G ' + 't_0_1 t_0_2 u_0_1 u_0_2 rho_1 rho_2 t_star_1 t_star_2 ' + 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out ' + 'xi_period xi_semimajor_axis xi_inclination xi_Omega_node ' + 'xi_argument_of_latitude_reference xi_eccentricity ' + 'xi_omega_periapsis t_0_xi').split()) + difference = set(keys) - allowed_keys + if len(difference) > 0: + derived_1 = ['gamma', 'gamma_perp', 'gamma_parallel'] + if set(keys).intersection(derived_1): + msg = ('You cannot set gamma, gamma_perp, ' + + 'or gamma_parallel. These are derived parameters. ' + + 'You can set ds_dt and dalpha_dt instead.\n') + else: + msg = "" + msg += 'Unrecognized parameters: {:}'.format(difference) + raise KeyError(msg) + + if self._type['Cassan08']: + self._check_valid_combination_1_source_Cassan08(keys) + else: + self._check_valid_combination_1_source_standard(keys) + def _check_types_for_Cassan08(self): """ Check if Cassan08 is used and if so, then make sure that @@ -643,36 +673,6 @@ def _check_valid_combination_1_source_Cassan08(self, keys): raise KeyError('Both rho and t_star cannot be defined for ' + 'Cassan 08 parameterization.') - def _check_valid_combination_1_source(self, keys): - """ - Check that the user hasn't over-defined the ModelParameters. - """ - # Make sure that there are no unwanted keys - allowed_keys = set(( - 't_0 u_0 t_E t_eff rho t_star pi_E pi_E_N pi_E_E t_0_par ' - 's q alpha dalpha_dt ds_dt t_0_kep convergence_K shear_G ' - 't_0_1 t_0_2 u_0_1 u_0_2 rho_1 rho_2 t_star_1 t_star_2 ' - 'x_caustic_in x_caustic_out t_caustic_in t_caustic_out ' - 'xi_period xi_semimajor_axis xi_inclination xi_Omega_node ' - 'xi_argument_of_latitude_reference xi_eccentricity ' - 'xi_omega_periapsis t_0_xi').split()) - difference = set(keys) - allowed_keys - if len(difference) > 0: - derived_1 = ['gamma', 'gamma_perp', 'gamma_parallel'] - if set(keys).intersection(derived_1): - msg = ('You cannot set gamma, gamma_perp, ' + - 'or gamma_parallel. These are derived parameters. ' + - 'You can set ds_dt and dalpha_dt instead.\n') - else: - msg = "" - msg += 'Unrecognized parameters: {:}'.format(difference) - raise KeyError(msg) - - if self._type['Cassan08']: - self._check_valid_combination_1_source_Cassan08(keys) - else: - self._check_valid_combination_1_source_standard(keys) - def _check_valid_parameter_values(self, parameters): """ Prevent user from setting negative (unphysical) values for @@ -1373,24 +1373,6 @@ def t_0_kep(self, new): self.parameters['t_0_kep'] = new self._update_sources('t_0_kep', new) - @property - def t_0_xi(self): - """ - *float* - - Reference epoch for xallarap orbit. - If not provided, then it defaults to :py:attr:`~t_0`. - """ - # XXX check if model has xallarap - if 't_0_xi' not in self.parameters.keys(): - return self.parameters['t_0'] - else: - return self.parameters['t_0_xi'] - - @t_0_xi.setter - def t_0_xi(self, new_value): - self.parameters['t_0_xi'] = new_value - @property def xi_period(self): """ @@ -1509,6 +1491,24 @@ def xi_omega_periapsis(self, new_value): new_value, 'xi_omega_periapsis') self.parameters['xi_omega_periapsis'] = new_value + @property + def t_0_xi(self): + """ + *float* + + Reference epoch for xallarap orbit. + If not provided, then it defaults to :py:attr:`~t_0`. + """ + # XXX check if model has xallarap + if 't_0_xi' not in self.parameters.keys(): + return self.parameters['t_0'] + else: + return self.parameters['t_0_xi'] + + @t_0_xi.setter + def t_0_xi(self, new_value): + self.parameters['t_0_xi'] = new_value + @property def t_0_1(self): """ From 47f1fb989bf498fb2dd59036bccc47de9a1d5775 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 17:36:46 +0200 Subject: [PATCH 54/62] limits of xallarap parameters --- source/MulensModel/modelparameters.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 4ed404a6..06c26371 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -698,12 +698,24 @@ def _check_valid_parameter_values(self, parameters): msg = "{:} must be a scalar: {:}, {:}" raise TypeError(msg.format(key, value, type(value))) - for name in ['x_caustic_in', 'x_caustic_out', 'q']: + for name in ['x_caustic_in', 'x_caustic_out']: if name in parameters.keys(): if parameters[name] < 0. or parameters[name] > 1.: + msg = "Parameter {:} has to be in [0, 1] range, not {:}" + raise ValueError(msg.format(name, parameters[name])) + + for name in ['q']: + if name in parameters.keys(): + if parameters[name] <= 0. or parameters[name] >= 1.: msg = "Parameter {:} has to be in (0, 1) range, not {:}" raise ValueError(msg.format(name, parameters[name])) + for name in ['xi_eccentricity']: + if name in parameters.keys(): + if parameters[name] < 0. or parameters[name] >= 1.: + msg = "Parameter {:} has to be in [0, 1) range, not {:}" + raise ValueError(msg.format(name, parameters[name])) + if 'shear_G' in parameters.keys(): if not isinstance(parameters['shear_G'], complex): raise TypeError("External shear (shear_G) must be complex") @@ -719,8 +731,9 @@ def _set_parameters(self, parameters): if parameter in self.parameters: self._set_time_quantity(parameter, self.parameters[parameter]) - angle_parameters = ['alpha', 'xi_Omega_node', 'xi_inclination', - 'xi_argument_of_latitude_reference'] + angle_parameters = [ + 'alpha', 'xi_Omega_node', 'xi_inclination', + 'xi_argument_of_latitude_reference', 'xi_omega_periapsis'] for parameter in angle_parameters: if parameter in self.parameters: self._warn_if_angle_outside_reasonable_range( From f9b5d069213a197a21838afa49fbd40396bd2676 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 18:06:47 +0200 Subject: [PATCH 55/62] perihelion -> periapsis in orbit.py and tests --- source/MulensModel/orbits/orbit.py | 64 +++++++++++++------------- source/MulensModel/tests/test_Orbit.py | 12 ++--- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/source/MulensModel/orbits/orbit.py b/source/MulensModel/orbits/orbit.py index 7d0000c1..107204f7 100644 --- a/source/MulensModel/orbits/orbit.py +++ b/source/MulensModel/orbits/orbit.py @@ -40,33 +40,33 @@ def _check_circular_orbit_parameters(self, semimajor_axis): raise ValueError('Semimajor axis has to be positive.\n' 'Provided value: ' + str(semimajor_axis)) - def _check_and_get_for_perihelion_epoch( - self, perihelion_epoch, argument_of_latitude_reference, + def _check_and_get_for_periapsis_epoch( + self, periapsis_epoch, argument_of_latitude_reference, epoch_reference): """ Check if arguments properly define epoch of - the perihelion/ascending node passage + the periapsis/ascending node passage """ - if perihelion_epoch is not None: + if periapsis_epoch is not None: if argument_of_latitude_reference is not None: raise RuntimeError( - "perihelion_epoch and argument_of_latitude_reference " + "periapsis_epoch and argument_of_latitude_reference " "cannot be both set") if epoch_reference is not None: raise RuntimeError( - "perihelion_epoch and epoch_reference cannot be both set") - return perihelion_epoch + "periapsis_epoch and epoch_reference cannot be both set") + return periapsis_epoch if argument_of_latitude_reference is None or epoch_reference is None: raise RuntimeError("Not enough arguments to define the epoch of " - "perihelion/ascending node") + "periapsis/ascending node") u_reference = argument_of_latitude_reference * np.pi / 180. - return self._get_perihelion_epoch(u_reference, epoch_reference) + return self._get_periapsis_epoch(u_reference, epoch_reference) def _set_circular_orbit_parameters(self, period, semimajor_axis, Omega_node, inclination, - perihelion_epoch): + periapsis_epoch): """ Set parameters that are used for circular orbits. """ @@ -75,7 +75,7 @@ def _set_circular_orbit_parameters(self, period, semimajor_axis, self._rotation_matrix = np.array([[math.cos(Omega), -math.sin(Omega)], [math.sin(Omega), math.cos(Omega)]]) self._cos_inclination = math.cos(math.pi * inclination / 180.) - self._perihelion_epoch = perihelion_epoch + self._periapsis_epoch = periapsis_epoch def get_reference_plane_position(self, time): """ @@ -117,7 +117,7 @@ def _get_mean_anomaly(self, time): Calculate mean anomaly, i.e., the one that is linear in time and typically indicated by M. """ - anomaly = 2. * math.pi * (time - self._perihelion_epoch) / self._period + anomaly = 2. * math.pi * (time - self._periapsis_epoch) / self._period return anomaly def _get_normalized_anomaly_minus_pi_pi(self, anomaly): @@ -179,34 +179,34 @@ class OrbitCircular(_OrbitAbstract): inclination: *float* Inclination of the orbit relative to plane of the sky. - perihelion_epoch: *float* or *None* + periapsis_epoch: *float* or *None* Epoch when body is in - the ascending node (perihelion is for eccentric orbits). + the ascending node (periapsis is for eccentric orbits). It's in days and usually you want to provide full BJD or HJD. argument_of_latitude_reference: *float* or *None* Argument of latitude (i.e., u = omega + nu(t_ref)) for *epoch_reference*, which together define - *perihelion_epoch* (omega). + *periapsis_epoch* (omega). epoch_reference: *float* or *None* Reference epoch that together with *argument_of_latitude_reference* defines - *perihelion_epoch* (omega). + *periapsis_epoch* (omega). """ def __init__(self, period, semimajor_axis, Omega_node, inclination, - perihelion_epoch=None, + periapsis_epoch=None, argument_of_latitude_reference=None, epoch_reference=None): self._period = period self._check_circular_orbit_parameters(semimajor_axis) - perihelion_epoch = self._check_and_get_for_perihelion_epoch( - perihelion_epoch, argument_of_latitude_reference, epoch_reference) + periapsis_epoch = self._check_and_get_for_periapsis_epoch( + periapsis_epoch, argument_of_latitude_reference, epoch_reference) self._set_circular_orbit_parameters( - period, semimajor_axis, Omega_node, inclination, perihelion_epoch) + period, semimajor_axis, Omega_node, inclination, periapsis_epoch) - def _get_perihelion_epoch(self, u_reference, epoch_reference): + def _get_periapsis_epoch(self, u_reference, epoch_reference): """ - Calculate perihelion epoch based on + Calculate periapsis epoch based on the argument_of_latitude (u) at given epoch """ time_shift = self._period * u_reference / (2. * np.pi) @@ -257,37 +257,37 @@ class OrbitEccentric(_OrbitAbstract): omega_periapsis: *float* Argument of periapsis in degrees. - perihelion_epoch: *float* or *None* - Epoch when body is in perihelion. + periapsis_epoch: *float* or *None* + Epoch when body is in periapsis. It's in days and usually you want to provide full BJD or HJD. argument_of_latitude_reference: *float* or *None* Argument of latitude (i.e., u = omega + nu(t_ref)) for *epoch_reference*, which together define - *perihelion_epoch* (omega). + *periapsis_epoch* (omega). epoch_reference: *float* or *None* Reference epoch that together with *argument_of_latitude_reference* defines - *perihelion_epoch* (omega). + *periapsis_epoch* (omega). """ def __init__( self, period, semimajor_axis, Omega_node, inclination, - eccentricity, omega_periapsis, perihelion_epoch=None, + eccentricity, omega_periapsis, periapsis_epoch=None, argument_of_latitude_reference=None, epoch_reference=None): self._period = period self._omega_periapsis = omega_periapsis * np.pi / 180. self._eccentricity = eccentricity self._check_circular_orbit_parameters(semimajor_axis) - perihelion_epoch = self._check_and_get_for_perihelion_epoch( - perihelion_epoch, argument_of_latitude_reference, epoch_reference) + periapsis_epoch = self._check_and_get_for_periapsis_epoch( + periapsis_epoch, argument_of_latitude_reference, epoch_reference) self._set_circular_orbit_parameters( - period, semimajor_axis, Omega_node, inclination, perihelion_epoch) + period, semimajor_axis, Omega_node, inclination, periapsis_epoch) - def _get_perihelion_epoch(self, u_reference, epoch_reference): + def _get_periapsis_epoch(self, u_reference, epoch_reference): """ - Calculate perihelion epoch (omega) based on + Calculate periapsis epoch (omega) based on the argument_of_latitude (u) at given reference epoch """ true_anomaly = u_reference - self._omega_periapsis diff --git a/source/MulensModel/tests/test_Orbit.py b/source/MulensModel/tests/test_Orbit.py index a03b6b94..bf906b6e 100644 --- a/source/MulensModel/tests/test_Orbit.py +++ b/source/MulensModel/tests/test_Orbit.py @@ -7,7 +7,7 @@ def test_1_circular(): orbit = OrbitCircular(period=365., semimajor_axis=1., Omega_node=0., - inclination=0., perihelion_epoch=0.) + inclination=0., periapsis_epoch=0.) position = orbit.get_orbital_plane_position(time=0.) assert_almost_equal(position, [1., 0.]) @@ -42,7 +42,7 @@ def test_5_time_vector_circular(): def test_6_eccentric(): orbit = OrbitEccentric( period=400., semimajor_axis=5., Omega_node=0., inclination=0., - eccentricity=0.6, omega_periapsis=0., perihelion_epoch=100.) + eccentricity=0.6, omega_periapsis=0., periapsis_epoch=100.) position = orbit.get_orbital_plane_position(300.) assert_almost_equal(position, [-8., 0.]) @@ -83,7 +83,7 @@ def test_11_true_anomaly_huge_eccentricity(): def test_12_Orbit_class_circular(): orbit = Orbit(period=365., semimajor_axis=1., Omega_node=0., - inclination=0., perihelion_epoch=0.) + inclination=0., periapsis_epoch=0.) position = orbit.get_orbital_plane_position(time=0.) assert_almost_equal(position, [1., 0.]) @@ -91,7 +91,7 @@ def test_12_Orbit_class_circular(): def test_13_Orbit_class_eccentric(): orbit = Orbit( period=400., semimajor_axis=100., Omega_node=0., inclination=0., - eccentricity=0.9, omega_periapsis=0., perihelion_epoch=0.) + eccentricity=0.9, omega_periapsis=0., periapsis_epoch=0.) true_anomaly = orbit.get_true_anomaly_deg(5.) assert_almost_equal(true_anomaly, 101.28599627247006) @@ -116,13 +116,13 @@ def test_16_added_epoch(self): with self.assertRaises(RuntimeError): OrbitCircular( period=123., semimajor_axis=5., Omega_node=90., inclination=0., - perihelion_epoch=2450000., epoch_reference=2450000.) + periapsis_epoch=2450000., epoch_reference=2450000.) def test_17_added_u(self): with self.assertRaises(RuntimeError): OrbitCircular( period=123., semimajor_axis=5., Omega_node=90., inclination=0., - perihelion_epoch=2450000., argument_of_latitude_reference=90.) + periapsis_epoch=2450000., argument_of_latitude_reference=90.) def test_18_OrbitEccentric_based_on_argument_of_latitude(): From b99291b6963ab25c500ae56178c29928aa108cc8 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Thu, 20 Jul 2023 18:46:24 +0200 Subject: [PATCH 56/62] 2 tests for eccentric xallarap added; PEP8 --- source/MulensModel/tests/test_Model.py | 36 +++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/tests/test_Model.py b/source/MulensModel/tests/test_Model.py index 5159de77..bc69e441 100644 --- a/source/MulensModel/tests/test_Model.py +++ b/source/MulensModel/tests/test_Model.py @@ -408,8 +408,8 @@ def test_binary_source_and_fluxes_for_bands(): (mag_1_V, mag_2_V) = model.get_magnification(times_V, separate=True) effective_mag_I = (mag_1_I + mag_2_I * q_f_I) / (1. + q_f_I) effective_mag_V = (mag_1_V + mag_2_V * q_f_V) / (1. + q_f_V) - #flux_I = mag_1_I * f_s_1_I + mag_2_I * f_s_2_I + f_b_I - #flux_V = mag_1_V * f_s_1_V + mag_2_V * f_s_2_V + f_b_V + # flux_I = mag_1_I * f_s_1_I + mag_2_I * f_s_2_I + f_b_I + # flux_V = mag_1_V * f_s_1_V + mag_2_V * f_s_2_V + f_b_V # model.set_source_flux_ratio_for_band('I', q_f_I) # model.set_source_flux_ratio_for_band('V', q_f_V) @@ -548,31 +548,59 @@ def test_xallarap_at_t_0_plus_half_of_period_3(): expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) assert expected == model.get_magnification(t_0+d_time) + def test_xallarap_at_t_0_plus_half_of_period_4(): """ Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 180. The t_0_xi is provided as a parameter and = t_0. Expected u is from pen and pencil calculations. """ - (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(90., 90., "t_0")[1:] + args = [90., 90., "t_0"] + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(*args)[1:] u2 = u_0**2 + (tau + 2. * xi_a)**2 expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) assert expected == model.get_magnification(t_0+d_time) + def test_xallarap_at_t_0_plus_half_of_period_5(): """ Xallarap - circular orbit, half period after t_0, and Omega+nu_0 = 180. The t_0_xi is provided as a parameter and = t_0. Expected u is from pen and pencil calculations. """ - (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(90., 90., "t_0+d_time")[1:] + args = [90., 90., "t_0+d_time"] + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(*args)[1:] u2 = u_0**2 + tau**2 expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) assert expected == model.get_magnification(t_0+d_time) +def test_xallarap_at_t_0_plus_half_of_period_6_eccentric(): + """ + Extremly eccentric xallarap orbit checked half period later + """ + kwargs = {'xi_eccentricity': 0.999, 'xi_omega_periapsis': 0.} + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(**kwargs)[1:] + + u2 = u_0**2 + (tau - 2. * xi_a)**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + assert expected == model.get_magnification(t_0+d_time) + + +def test_xallarap_at_t_0_plus_half_of_period_7_eccentric(): + """ + Extremly eccentric xallarap orbit with Omega=270 checked half period later + """ + kwargs = {'xi_eccentricity': 0.999, 'xi_omega_periapsis': 0., + 'xi_Omega_node': 270.} + (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(**kwargs)[1:] + + u2 = (u_0 + 2. * xi_a)**2 + tau**2 + expected = (u2 + 2.) / np.sqrt(u2 * (u2 + 4.)) + almost(expected, model.get_magnification(t_0+d_time)) + # Tests to Add: # From 9ec97af9fe0dcfa8a96120a8cace17834ba47fe6 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 22 Jul 2023 09:30:14 +0200 Subject: [PATCH 57/62] links to wiki added in parameter_names.pdf --- documents/parameter_names.pdf | Bin 235178 -> 236130 bytes documents/parameter_names.tex | 8 ++++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/documents/parameter_names.pdf b/documents/parameter_names.pdf index 7362875662c48149ba68b1a4bb4dc3c2889c825f..85c3e26f229980b44e7dadf64c339ef560e82f90 100644 GIT binary patch delta 23983 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 a`8yBW^b1`GN;6!?_Z<> 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 Date: Sat, 22 Jul 2023 09:36:26 +0200 Subject: [PATCH 58/62] minor cleanup --- source/MulensModel/modelparameters.py | 1 - source/MulensModel/tests/test_Model.py | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/source/MulensModel/modelparameters.py b/source/MulensModel/modelparameters.py index 06c26371..8c6bb4ce 100644 --- a/source/MulensModel/modelparameters.py +++ b/source/MulensModel/modelparameters.py @@ -1512,7 +1512,6 @@ def t_0_xi(self): Reference epoch for xallarap orbit. If not provided, then it defaults to :py:attr:`~t_0`. """ - # XXX check if model has xallarap if 't_0_xi' not in self.parameters.keys(): return self.parameters['t_0'] else: diff --git a/source/MulensModel/tests/test_Model.py b/source/MulensModel/tests/test_Model.py index bc69e441..c725cb1f 100644 --- a/source/MulensModel/tests/test_Model.py +++ b/source/MulensModel/tests/test_Model.py @@ -579,7 +579,7 @@ def test_xallarap_at_t_0_plus_half_of_period_5(): def test_xallarap_at_t_0_plus_half_of_period_6_eccentric(): """ - Extremly eccentric xallarap orbit checked half period later + Extremely eccentric xallarap orbit checked half period later """ kwargs = {'xi_eccentricity': 0.999, 'xi_omega_periapsis': 0.} (model, t_0, d_time, tau, u_0, xi_a) = prepare_xallarap_test(**kwargs)[1:] @@ -591,7 +591,7 @@ def test_xallarap_at_t_0_plus_half_of_period_6_eccentric(): def test_xallarap_at_t_0_plus_half_of_period_7_eccentric(): """ - Extremly eccentric xallarap orbit with Omega=270 checked half period later + Extremely eccentric xallarap orbit with Omega=270 checked half period later """ kwargs = {'xi_eccentricity': 0.999, 'xi_omega_periapsis': 0., 'xi_Omega_node': 270.} From 4df9355eb57bd1e9a7c603efb4d4336d770dc2f0 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 22 Jul 2023 09:36:39 +0200 Subject: [PATCH 59/62] ex16 version update --- examples/example_16/ulens_model_fit.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/example_16/ulens_model_fit.py b/examples/example_16/ulens_model_fit.py index 79e168e7..53cfc79e 100644 --- a/examples/example_16/ulens_model_fit.py +++ b/examples/example_16/ulens_model_fit.py @@ -38,7 +38,7 @@ except Exception: raise ImportError('\nYou have to install MulensModel first!\n') -__version__ = '0.30.10dev' +__version__ = '0.33.0' class UlensModelFit(object): From 2ccd180e09b0e9bfab02831ff32667158d8e37e9 Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 22 Jul 2023 10:03:27 +0200 Subject: [PATCH 60/62] docstrings in tests/test_Orbit.py --- source/MulensModel/tests/test_Orbit.py | 70 ++++++++++++++++++++++++-- 1 file changed, 66 insertions(+), 4 deletions(-) diff --git a/source/MulensModel/tests/test_Orbit.py b/source/MulensModel/tests/test_Orbit.py index bf906b6e..64dae897 100644 --- a/source/MulensModel/tests/test_Orbit.py +++ b/source/MulensModel/tests/test_Orbit.py @@ -6,6 +6,9 @@ def test_1_circular(): + """ + circular orbit - simples calculation + """ orbit = OrbitCircular(period=365., semimajor_axis=1., Omega_node=0., inclination=0., periapsis_epoch=0.) position = orbit.get_orbital_plane_position(time=0.) @@ -13,24 +16,36 @@ def test_1_circular(): def test_2_circular(): + """ + circular orbit at half period position + """ orbit = OrbitCircular(200., 1.234, 0., 0., 0.) position = orbit.get_orbital_plane_position(time=100.) assert_almost_equal(position, [-1.234, 0.]) def test_3_circular(): + """ + circular orbit, Omega = 180, and half period position + """ orbit = OrbitCircular(200., 1.234, 180., 0., 0.) position = orbit.get_reference_plane_position(time=100.) assert_almost_equal(position, [1.234, 0.]) def test_4_circular(): + """ + circular orbit and non-zero inclination and periapsis epoch + """ orbit = OrbitCircular(200., 2.345, 0., 60., 123.) position = orbit.get_reference_plane_position(time=123.+200/4.) assert_almost_equal(position, [0, 2.345/2.]) def test_5_time_vector_circular(): + """ + circular orbit calculation for multiple periods + """ n_repeat = 10 orbit = OrbitCircular(200., 2.345, 0., 60., 123.) times = (np.arange(n_repeat) + 0.25 - 5.) * 200. + 123. @@ -40,6 +55,9 @@ def test_5_time_vector_circular(): def test_6_eccentric(): + """ + Eccentric orbit at 1 period + """ orbit = OrbitEccentric( period=400., semimajor_axis=5., Omega_node=0., inclination=0., eccentricity=0.6, omega_periapsis=0., periapsis_epoch=100.) @@ -48,6 +66,9 @@ def test_6_eccentric(): def test_7_time_vector_eccentric(): + """ + Very eccentric orbit at 1 period and half period + """ orbit = OrbitEccentric(400., 10., 0., 0., 0.999, 0., -100.) times = np.array([-500, -300]) positions = orbit.get_orbital_plane_position(times) @@ -57,15 +78,24 @@ def test_7_time_vector_eccentric(): class TestForWrongValues(unittest.TestCase): def test_8_negative_period(self): + """ + Check negative period + """ with self.assertRaises(ValueError): OrbitCircular(-365., 1., 0., 0., 123.) def test_9_negative_semimajor_axis(self): + """ + Test for negative semi-major axis + """ with self.assertRaises(ValueError): OrbitCircular(365., -1., 0., 0., 123.) def test_10_true_anomaly_large_eccentricity(): + """ + a few epochs and eccentric orbit + """ orbit = OrbitEccentric(400., 100., 0., 0., 0.9, 0., 0.) times = np.array([100., 500., 300., 150., 5.]) true_anomalies = orbit.get_true_anomaly_deg(times) @@ -76,12 +106,18 @@ def test_10_true_anomaly_large_eccentricity(): def test_11_true_anomaly_huge_eccentricity(): + """ + calculate true anomaly for extremely eccentric orbit + """ orbit = OrbitEccentric(400., 100., 0., 0., 0.999, 0., 0.) true_anomaly = orbit.get_true_anomaly_deg(5.) assert_almost_equal(true_anomaly, 173.80472546078212, 3) def test_12_Orbit_class_circular(): + """ + Orbit class and simplest calculation for circular orbit + """ orbit = Orbit(period=365., semimajor_axis=1., Omega_node=0., inclination=0., periapsis_epoch=0.) position = orbit.get_orbital_plane_position(time=0.) @@ -89,6 +125,9 @@ def test_12_Orbit_class_circular(): def test_13_Orbit_class_eccentric(): + """ + Orbit class and eccentric orbit calculation + """ orbit = Orbit( period=400., semimajor_axis=100., Omega_node=0., inclination=0., eccentricity=0.9, omega_periapsis=0., periapsis_epoch=0.) @@ -98,12 +137,18 @@ def test_13_Orbit_class_eccentric(): class Test_Orbit_fail(unittest.TestCase): def test_14_Orbit_not_enough_params(self): + """ + Orbit class with wrong input + """ with self.assertRaises(RuntimeError): Orbit(period=10., semimajor_axis=10., Omega_node=0., inclination=0.) def test_15_OrbitCircular_based_on_argument_of_latitude(): + """ + circular orbit and non-zero argument_of_latitude_reference + """ orbit = OrbitCircular( period=365, semimajor_axis=1.5, Omega_node=12.34, inclination=-60., argument_of_latitude_reference=90, epoch_reference=2456789.01234) @@ -113,12 +158,18 @@ def test_15_OrbitCircular_based_on_argument_of_latitude(): class Test_OrbitCircular_fail(unittest.TestCase): def test_16_added_epoch(self): + """ + missing eccentricity + """ with self.assertRaises(RuntimeError): OrbitCircular( period=123., semimajor_axis=5., Omega_node=90., inclination=0., periapsis_epoch=2450000., epoch_reference=2450000.) def test_17_added_u(self): + """ + too many arguments for a reference epoch + """ with self.assertRaises(RuntimeError): OrbitCircular( period=123., semimajor_axis=5., Omega_node=90., inclination=0., @@ -126,6 +177,10 @@ def test_17_added_u(self): def test_18_OrbitEccentric_based_on_argument_of_latitude(): + """ + Eccentric orbit calculation starting from + argument_of_latitude_reference + """ orbit = OrbitEccentric( period=365, semimajor_axis=1.5, Omega_node=12.34, inclination=-60., eccentricity=0.5, omega_periapsis=0., @@ -135,18 +190,25 @@ def test_18_OrbitEccentric_based_on_argument_of_latitude(): def test_19_OrbitEccentric_based_on_argument_of_latitude(): + """ + Eccentric orbit calculation starting from non-zero value of + argument_of_latitude_reference + """ orbit = OrbitEccentric( period=360., semimajor_axis=1.5, Omega_node=12.34, inclination=-60., eccentricity=0.5, - omega_periapsis=0., - argument_of_latitude_reference=118.81500092699673, - # Independend code says the above value is nu for e=0.5 and t=t_0+P/6. - epoch_reference=2456789.01234) + omega_periapsis=0., epoch_reference=2456789.01234, + argument_of_latitude_reference=118.81500092699673) + # An independend code says the above value is nu for e=0.5 and t=t_0+P/6. position = orbit.get_orbital_plane_position(2456789.01234-60.) assert_almost_equal(position, [0.75, 0.]) def test_20_OrbitEccentric_based_on_argument_of_latitude(): + """ + Eccentric orbit with all argument non-zero and + argument_of_latitude_reference in __init__() + """ orbit = OrbitEccentric( period=360., semimajor_axis=1.5, Omega_node=12.34, inclination=-60., eccentricity=0.5, From 433e103b7b9e46432ae5a13a65c7623263468faf Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 22 Jul 2023 14:44:29 +0200 Subject: [PATCH 61/62] in OrbitCircular change: periapsis_epoch -> ascending_node_epoch --- source/MulensModel/orbits/orbit.py | 29 ++++++++++++++------------ source/MulensModel/tests/test_Orbit.py | 9 ++++---- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/source/MulensModel/orbits/orbit.py b/source/MulensModel/orbits/orbit.py index 107204f7..1e62a009 100644 --- a/source/MulensModel/orbits/orbit.py +++ b/source/MulensModel/orbits/orbit.py @@ -40,12 +40,13 @@ def _check_circular_orbit_parameters(self, semimajor_axis): raise ValueError('Semimajor axis has to be positive.\n' 'Provided value: ' + str(semimajor_axis)) - def _check_and_get_for_periapsis_epoch( + def _check_for_and_get_periapsis_epoch( self, periapsis_epoch, argument_of_latitude_reference, epoch_reference): """ Check if arguments properly define epoch of - the periapsis/ascending node passage + the periapsis (eccentric orbit) or + the ascending node (circular orbit) passage """ if periapsis_epoch is not None: if argument_of_latitude_reference is not None: @@ -179,34 +180,36 @@ class OrbitCircular(_OrbitAbstract): inclination: *float* Inclination of the orbit relative to plane of the sky. - periapsis_epoch: *float* or *None* - Epoch when body is in - the ascending node (periapsis is for eccentric orbits). + ascending_node_epoch: *float* or *None* + Epoch when body is in the ascending node. It's in days and usually you want to provide full BJD or HJD. argument_of_latitude_reference: *float* or *None* Argument of latitude (i.e., u = omega + nu(t_ref)) for *epoch_reference*, which together define - *periapsis_epoch* (omega). + *ascending_node_epoch* (omega). epoch_reference: *float* or *None* Reference epoch that together with *argument_of_latitude_reference* defines - *periapsis_epoch* (omega). + *ascending_node_epoch* (omega). """ def __init__(self, period, semimajor_axis, Omega_node, inclination, - periapsis_epoch=None, + ascending_node_epoch=None, argument_of_latitude_reference=None, epoch_reference=None): self._period = period self._check_circular_orbit_parameters(semimajor_axis) - periapsis_epoch = self._check_and_get_for_periapsis_epoch( - periapsis_epoch, argument_of_latitude_reference, epoch_reference) + ascending_node_epoch = self._check_for_and_get_periapsis_epoch( + ascending_node_epoch, argument_of_latitude_reference, + epoch_reference) self._set_circular_orbit_parameters( - period, semimajor_axis, Omega_node, inclination, periapsis_epoch) + period, semimajor_axis, Omega_node, + inclination, ascending_node_epoch) def _get_periapsis_epoch(self, u_reference, epoch_reference): """ - Calculate periapsis epoch based on + Calculate ascending node epoch + (called periapis in general case of eccentric orbits) based on the argument_of_latitude (u) at given epoch """ time_shift = self._period * u_reference / (2. * np.pi) @@ -280,7 +283,7 @@ def __init__( self._omega_periapsis = omega_periapsis * np.pi / 180. self._eccentricity = eccentricity self._check_circular_orbit_parameters(semimajor_axis) - periapsis_epoch = self._check_and_get_for_periapsis_epoch( + periapsis_epoch = self._check_for_and_get_periapsis_epoch( periapsis_epoch, argument_of_latitude_reference, epoch_reference) self._set_circular_orbit_parameters( period, semimajor_axis, Omega_node, inclination, periapsis_epoch) diff --git a/source/MulensModel/tests/test_Orbit.py b/source/MulensModel/tests/test_Orbit.py index 64dae897..5c83c502 100644 --- a/source/MulensModel/tests/test_Orbit.py +++ b/source/MulensModel/tests/test_Orbit.py @@ -10,7 +10,7 @@ def test_1_circular(): circular orbit - simples calculation """ orbit = OrbitCircular(period=365., semimajor_axis=1., Omega_node=0., - inclination=0., periapsis_epoch=0.) + inclination=0., ascending_node_epoch=0.) position = orbit.get_orbital_plane_position(time=0.) assert_almost_equal(position, [1., 0.]) @@ -119,7 +119,7 @@ def test_12_Orbit_class_circular(): Orbit class and simplest calculation for circular orbit """ orbit = Orbit(period=365., semimajor_axis=1., Omega_node=0., - inclination=0., periapsis_epoch=0.) + inclination=0., ascending_node_epoch=0.) position = orbit.get_orbital_plane_position(time=0.) assert_almost_equal(position, [1., 0.]) @@ -164,7 +164,7 @@ def test_16_added_epoch(self): with self.assertRaises(RuntimeError): OrbitCircular( period=123., semimajor_axis=5., Omega_node=90., inclination=0., - periapsis_epoch=2450000., epoch_reference=2450000.) + ascending_node_epoch=2450000., epoch_reference=2450000.) def test_17_added_u(self): """ @@ -173,7 +173,8 @@ def test_17_added_u(self): with self.assertRaises(RuntimeError): OrbitCircular( period=123., semimajor_axis=5., Omega_node=90., inclination=0., - periapsis_epoch=2450000., argument_of_latitude_reference=90.) + ascending_node_epoch=2450000., + argument_of_latitude_reference=90.) def test_18_OrbitEccentric_based_on_argument_of_latitude(): From 9984f60ea6863c11e7b183dbfe715d95d2d5330a Mon Sep 17 00:00:00 2001 From: radek_poleski Date: Sat, 22 Jul 2023 23:02:17 +0200 Subject: [PATCH 62/62] almost final xallarap updates --- README.md | 6 +++--- source/MulensModel/version.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 9caef0eb..d266838b 100644 --- a/README.md +++ b/README.md @@ -6,15 +6,15 @@ [**Detailed documentation: https://rpoleski.github.io/MulensModel/**](https://rpoleski.github.io/MulensModel/) -[Latest release: 2.14.0](https://github.com/rpoleski/MulensModel/releases/latest) and we're working on further developing the code. +[Latest release: 2.17.0](https://github.com/rpoleski/MulensModel/releases/latest) and we're working on further developing the code. MulensModel can generate a microlensing light curve for a given set of microlensing parameters, fit that light curve to some data, and return a chi2 value. That chi2 can then be input into an arbitrary likelihood function to find the best-fit parameters. If you want to learn more about microlensing, please visit [Microlensing Source website](http://microlensing-source.org/). Currently, MulensModel supports: -* Lens Systems: point lens or binary lens. **New: shear and convergence allowed for both point and binary lenses.** -* Source Stars: single source or binary source. +* Lens Systems: point lens or binary lens. Shear and convergence allowed for both point and binary lenses. +* Source Stars: single source, binary source, and **xallarap effect (new)**. * Effects: finite source (1-parameter), parallax (satellite & annual), binary lens orbital motion, different parametrizations of microlensing models. Need more? Open [an issue](https://github.com/rpoleski/MulensModel/issues), start [a discussion](https://github.com/rpoleski/MulensModel/discussions), or send us an e-mail. diff --git a/source/MulensModel/version.py b/source/MulensModel/version.py index e199aa55..a6b62ff3 100644 --- a/source/MulensModel/version.py +++ b/source/MulensModel/version.py @@ -1 +1 @@ -__version__ = "2.14.1" +__version__ = "2.17.0"