From d2cef5098c42bb139efb32ca581bdf8a96473495 Mon Sep 17 00:00:00 2001 From: "chenwei@shao.ac.cn" <cr2032+1s> Date: Fri, 19 May 2023 16:17:11 +0800 Subject: [PATCH] build --- .../inspectionProfiles/profiles_settings.xml | 6 + LICENSE | 21 + README.md | 6 +- csst_ifs_sim/CTI/CTI.py | 495 ++++ csst_ifs_sim/CTI/__init__.py | 0 csst_ifs_sim/__init__.py | 0 csst_ifs_sim/csst_ifs_sim.py | 2624 +++++++++++++++++ csst_ifs_sim/ifs_so/__init__.py | 0 .../cdm03.cpython-37m-x86_64-linux-gnu.so | Bin 0 -> 175816 bytes .../cdm03.cpython-38-x86_64-linux-gnu.so | Bin 0 -> 182992 bytes ...cdm03bidir.cpython-37m-x86_64-linux-gnu.so | Bin 0 -> 192640 bytes .../cdm03bidir.cpython-38-x86_64-linux-gnu.so | Bin 0 -> 203248 bytes csst_ifs_sim/support/IFSinstrumentModel.py | 55 + csst_ifs_sim/support/__init__.py | 0 csst_ifs_sim/support/cosmicrays.py | 424 +++ csst_ifs_sim/support/logger.py | 40 + ifs_data/__init__.py | 0 setup.py | 36 + 18 files changed, 3704 insertions(+), 3 deletions(-) create mode 100644 .idea/inspectionProfiles/profiles_settings.xml create mode 100644 LICENSE create mode 100644 csst_ifs_sim/CTI/CTI.py create mode 100644 csst_ifs_sim/CTI/__init__.py create mode 100644 csst_ifs_sim/__init__.py create mode 100644 csst_ifs_sim/csst_ifs_sim.py create mode 100644 csst_ifs_sim/ifs_so/__init__.py create mode 100644 csst_ifs_sim/ifs_so/cdm03.cpython-37m-x86_64-linux-gnu.so create mode 100644 csst_ifs_sim/ifs_so/cdm03.cpython-38-x86_64-linux-gnu.so create mode 100644 csst_ifs_sim/ifs_so/cdm03bidir.cpython-37m-x86_64-linux-gnu.so create mode 100644 csst_ifs_sim/ifs_so/cdm03bidir.cpython-38-x86_64-linux-gnu.so create mode 100644 csst_ifs_sim/support/IFSinstrumentModel.py create mode 100644 csst_ifs_sim/support/__init__.py create mode 100644 csst_ifs_sim/support/cosmicrays.py create mode 100644 csst_ifs_sim/support/logger.py create mode 100644 ifs_data/__init__.py create mode 100644 setup.py diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ +<component name="InspectionProjectProfileManager"> + <settings> + <option name="USE_PROJECT_PROFILE" value="false" /> + <version value="1.0" /> + </settings> +</component> \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..a9b5e74 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 CSST-L1 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index f9a5328..aed373c 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Ifs +# csst_ifs_common @@ -15,14 +15,14 @@ Already a pro? Just edit this README.md and make it your own. Want to make it ea ``` cd existing_repo -git remote add origin https://csst-tb.bao.ac.cn/code/shaosim/ifs.git +git remote add origin https://csst-tb.bao.ac.cn/code/csst-l1/ifs/csst_ifs_common.git git branch -M main git push -uf origin main ``` ## Integrate with your tools -- [ ] [Set up project integrations](https://csst-tb.bao.ac.cn/code/shaosim/ifs/-/settings/integrations) +- [ ] [Set up project integrations](http://10.3.10.28/code/csst-l1/ifs/csst_ifs_common/-/settings/integrations) ## Collaborate with your team diff --git a/csst_ifs_sim/CTI/CTI.py b/csst_ifs_sim/CTI/CTI.py new file mode 100644 index 0000000..48c87cb --- /dev/null +++ b/csst_ifs_sim/CTI/CTI.py @@ -0,0 +1,495 @@ +""" +Charge Transfer Inefficiency +============================ + +This file contains a simple class to run a CDM03 CTI model developed by Alex Short (ESA). + +This now contains both the official CDM03 and a new version that allows different trap +parameters in parallel and serial direction. + +:requires: NumPy +:requires: CDM03 (FORTRAN code, f2py -c -m cdm03bidir cdm03bidir.f90) + +:version: 0.35 +""" +import numpy as np + +# try: +# import cdm03bidir +# #import cdm03bidirTest as cdm03bidir #for testing purposes only +# except ImportError: +# print('import CTI module') +# #print ('No CDM03bidir module available, please compile it: f2py -c -m cdm03bidir cdm03bidir.f90') + + + +#CDM03bidir +class CDM03bidir(): + """ + Class to run CDM03 CTI model, class Fortran routine to perform the actual CDM03 calculations. + + :param settings: input parameters + :type settings: dict + :param data: input data to be radiated + :type data: ndarray + :param log: instance to Python logging + :type log: logging instance + """ + def __init__(self, settings, data, log=None): + """ + Class constructor. + + :param settings: input parameters + :type settings: dict + :param data: input data to be radiated + :type data: ndarray + :param log: instance to Python logging + :type log: logging instance + """ + self.data = data + self.values = dict(quads=(0,1,2,3), xsize=2048, ysize=2066, dob=0.0, rdose=8.0e9) + self.values.update(settings) + self.log = log + self._setupLogger() + + #default CDM03 settings + self.params = dict(beta_p=0.6, beta_s=0.6, fwc=200000., vth=1.168e7, vg=6.e-11, t=20.48e-3, + sfwc=730000., svg=1.0e-10, st=5.0e-6, parallel=1., serial=1.) + #update with inputs + self.params.update(self.values) + + #read in trap information + trapdata = np.loadtxt(self.values['parallelTrapfile']) + if trapdata.ndim > 1: + self.nt_p = trapdata[:, 0] + self.sigma_p = trapdata[:, 1] + self.taur_p = trapdata[:, 2] + else: + #only one trap species + self.nt_p = [trapdata[0],] + self.sigma_p = [trapdata[1],] + self.taur_p = [trapdata[2],] + + trapdata = np.loadtxt(self.values['serialTrapfile']) + if trapdata.ndim > 1: + self.nt_s = trapdata[:, 0] + self.sigma_s = trapdata[:, 1] + self.taur_s = trapdata[:, 2] + else: + #only one trap species + self.nt_s = [trapdata[0],] + self.sigma_s = [trapdata[1],] + self.taur_s = [trapdata[2],] + + #scale thibaut's values + if 'thibaut' in self.values['parallelTrapfile']: + self.nt_p /= 0.576 #thibaut's values traps / pixel + self.sigma_p *= 1.e4 #thibaut's values in m**2 + if 'thibaut' in self.values['serialTrapfile']: + self.nt_s *= 0.576 #thibaut's values traps / pixel #should be division? + self.sigma_s *= 1.e4 #thibaut's values in m**2 + + + def _setupLogger(self): + """ + Set up the logger. + """ + self.logger = True + if self.log is None: + self.logger = False + + + def radiateFullCCD(self): + """ + This routine allows the whole CCD to be run through a radiation damage mode. + The routine takes into account the fact that the amplifiers are in the corners + of the CCD. The routine assumes that the CCD is using four amplifiers. + + There is an excess of .copy() calls, which should probably be cleaned up. However, + given that I had problem with the Fortran code, I have kept the calls. If memory + becomes an issue then this should be cleaned. + + :return: radiation damaged image + :rtype: ndarray + """ + ydim, xdim = self.data.shape + out = np.zeros((xdim, ydim)) + + #transpose the data, because Python has different convention than Fortran + data = self.data.transpose().copy() + + for quad in self.values['quads']: + if self.logger: + self.log.info('Adding CTI to Q%i' % quad) + + if quad == 0: + d = data[0:self.values['xsize'], 0:self.values['ysize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[0:self.values['xsize'], 0:self.values['ysize']] = tmp + elif quad == 1: + d = data[self.values['xsize']:, :self.values['ysize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['xsize']:, :self.values['ysize']] = tmp + elif quad == 2: + d = data[:self.values['xsize'], self.values['ysize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[:self.values['xsize'], self.values['ysize']:] = tmp + elif quad == 3: + d = data[self.values['xsize']:, self.values['ysize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['xsize']:, self.values['ysize']:] = tmp + else: + print( 'ERROR -- too many quadrants!!' ) + self.log.error('Too many quadrants! This method allows only four quadrants.') + + return out.transpose() + + + def radiateFullCCD2(self): + """ + This routine allows the whole CCD to be run through a radiation damage mode. + The routine takes into account the fact that the amplifiers are in the corners + of the CCD. The routine assumes that the CCD is using four amplifiers. + + There is an excess of .copy() calls, which should probably be cleaned up. However, + given that I had problem with the Fortran code, I have kept the calls. If memory + becomes an issue then this should be cleaned. + + :return: radiation damaged image + :rtype: ndarray + """ + ydim, xdim = self.data.shape + out = np.empty((ydim, xdim)) + + #transpose the data, because Python has different convention than Fortran + data = self.data.copy() + + for quad in self.values['quads']: + if self.logger: + self.log.info('Adding CTI to Q%i' % quad) + + if quad == 0: + d = data[:self.values['ysize'], :self.values['xsize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[:self.values['ysize'], :self.values['xsize']] = tmp + elif quad == 1: + d = data[:self.values['ysize'], self.values['xsize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[:self.values['ysize'], self.values['xsize']:] = tmp + elif quad == 2: + d = data[self.values['ysize']:, :self.values['xsize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['ysize']:, :self.values['xsize']] = tmp + elif quad == 3: + d = data[self.values['ysize']:, self.values['xsize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['ysize']:, self.values['xsize']:] = tmp + else: + print( 'ERROR -- too many quadrants!!') + self.log.error('Too many quadrants! This method allows only four quadrants.') + + return out + + + def applyRadiationDamage(self, data, iquadrant=0): + """ + Apply radian damage based on FORTRAN CDM03 model. The method assumes that + input data covers only a single quadrant defined by the iquadrant integer. + + :param data: imaging data to which the CDM03 model will be applied to. + :type data: ndarray + + :param iquandrant: number of the quadrant to process + :type iquandrant: int + + cdm03 - Function signature:: + + sout = cdm03(sinp,iflip,jflip,dob,rdose,in_nt,in_sigma,in_tr,[xdim,ydim,zdim]) + Required arguments: + sinp : input rank-2 array('d') with bounds (xdim,ydim) + iflip : input int + jflip : input int + dob : input float + rdose : input float + in_nt : input rank-1 array('d') with bounds (zdim) + in_sigma : input rank-1 array('d') with bounds (zdim) + in_tr : input rank-1 array('d') with bounds (zdim) + Optional arguments: + xdim := shape(sinp,0) input int + ydim := shape(sinp,1) input int + zdim := len(in_nt) input int + Return objects: + sout : rank-2 array('d') with bounds (xdim,ydim) + + .. Note:: Because Python/NumPy arrays are different row/column based, one needs + to be extra careful here. NumPy.asfortranarray will be called to get + an array laid out in Fortran order in memory. Before returning the + array will be laid out in memory in C-style (row-major order). + + :return: image that has been run through the CDM03 model + :rtype: ndarray + """"" + #return data + + iflip = iquadrant / 2 + jflip = iquadrant % 2 + + params = [self.params['beta_p'], self.params['beta_s'], self.params['fwc'], self.params['vth'], + self.params['vg'], self.params['t'], self.params['sfwc'], self.params['svg'], self.params['st'], + self.params['parallel'], self.params['serial']] + + if self.logger: + self.log.info('nt_p=' + str(self.nt_p)) + self.log.info('nt_s=' + str(self.nt_s)) + self.log.info('sigma_p= ' + str(self.sigma_p)) + self.log.info('sigma_s= ' + str(self.sigma_s)) + self.log.info('taur_p= ' + str(self.taur_p)) + self.log.info('taur_s= ' + str(self.taur_s)) + self.log.info('dob=%f' % self.values['dob']) + self.log.info('rdose=%e' % self.values['rdose']) + self.log.info('xsize=%i' % data.shape[1]) + self.log.info('ysize=%i' % data.shape[0]) + self.log.info('quadrant=%i' % iquadrant) + self.log.info('iflip=%i' % iflip) + self.log.info('jflip=%i' % jflip) + +################################################################################# +###modify + import sys + #sys.path.append('../so') + from ifs_so import cdm03bidir + # from ifs_so.cdm03.cpython-38-x86_64-linux-gnu import cdm03bidir + # import cdm03bidir + CTIed = cdm03bidir.cdm03(np.asfortranarray(data), + jflip, iflip, + self.values['dob'], self.values['rdose'], + self.nt_p, self.sigma_p, self.taur_p, + self.nt_s, self.sigma_s, self.taur_s, + params, + [data.shape[0], data.shape[1], len(self.nt_p), len(self.nt_s), len(self.params)]) + + + return np.asanyarray(CTIed) + +################################################################################################################# + + + +class CDM03(): + """ + Class to run CDM03 CTI model, class Fortran routine to perform the actual CDM03 calculations. + + :param data: input data to be radiated + :type data: ndarray + :param input: input parameters + :type input: dictionary + :param log: instance to Python logging + :type log: logging instance + """ + def __init__(self, input, data, log=None): + """ + Class constructor. + + :param data: input data to be radiated + :type data: ndarray + :param input: input parameters + :type input: dictionary + :param log: instance to Python logging + :type log: logging instance + """ + try: + import cdm03 + except ImportError: + print( 'No CDM03 module available, please compile it: f2py -c -m cdm03 cdm03.f90') + + self.data = data + self.values = dict(quads=(0,1,2,3), xsize=2048, ysize=2066, dob=0.0, rdose=8.0e9) + self.values.update(input) + self.log = log + self._setupLogger() + + + def _setupLogger(self): + """ + Set up the logger. + """ + self.logger = True + if self.log is None: + self.logger = False + + + def radiateFullCCD(self): + """ + This routine allows the whole CCD to be run through a radiation damage mode. + The routine takes into account the fact that the amplifiers are in the corners + of the CCD. The routine assumes that the CCD is using four amplifiers. + + There is an excess of .copy() calls, which should probably be cleaned up. However, + given that I had problem with the Fortran code, I have kept the calls. If memory + becomes an issue then this should be cleaned. + + :return: radiation damaged image + :rtype: ndarray + """ + ydim, xdim = self.data.shape + out = np.zeros((xdim, ydim)) + + #transpose the data, because Python has different convention than Fortran + data = self.data.transpose().copy() + + for quad in self.values['quads']: + if self.logger: + self.log.info('Adding CTI to Q%i' % quad) + + if quad == 0: + d = data[0:self.values['xsize'], 0:self.values['ysize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[0:self.values['xsize'], 0:self.values['ysize']] = tmp + elif quad == 1: + d = data[self.values['xsize']:, :self.values['ysize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['xsize']:, :self.values['ysize']] = tmp + elif quad == 2: + d = data[:self.values['xsize'], self.values['ysize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[:self.values['xsize'], self.values['ysize']:] = tmp + elif quad == 3: + d = data[self.values['xsize']:, self.values['ysize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['xsize']:, self.values['ysize']:] = tmp + else: + print ('ERROR -- too many quadrants!!') + self.log.error('Too many quadrants! This method allows only four quadrants.') + + return out.transpose() + + + def radiateFullCCD2(self): + """ + This routine allows the whole CCD to be run through a radiation damage mode. + The routine takes into account the fact that the amplifiers are in the corners + of the CCD. The routine assumes that the CCD is using four amplifiers. + + There is an excess of .copy() calls, which should probably be cleaned up. However, + given that I had problem with the Fortran code, I have kept the calls. If memory + becomes an issue then this should be cleaned. + + :return: radiation damaged image + :rtype: ndarray + """ + ydim, xdim = self.data.shape + out = np.empty((ydim, xdim)) + + #transpose the data, because Python has different convention than Fortran + data = self.data.copy() + + for quad in self.values['quads']: + if self.logger: + self.log.info('Adding CTI to Q%i' % quad) + + if quad == 0: + d = data[:self.values['ysize'], :self.values['xsize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[:self.values['ysize'], :self.values['xsize']] = tmp + elif quad == 1: + d = data[:self.values['ysize'], self.values['xsize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[:self.values['ysize'], self.values['xsize']:] = tmp + elif quad == 2: + d = data[self.values['ysize']:, :self.values['xsize']].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['ysize']:, :self.values['xsize']] = tmp + elif quad == 3: + d = data[self.values['ysize']:, self.values['xsize']:].copy() + tmp = self.applyRadiationDamage(d, iquadrant=quad).copy() + out[self.values['ysize']:, self.values['xsize']:] = tmp + else: + print ('ERROR -- too many quadrants!!') + self.log.error('Too many quadrants! This method allows only four quadrants.') + + return out + + + def applyRadiationDamage(self, data, iquadrant=0): + """ + Apply radian damage based on FORTRAN CDM03 model. The method assumes that + input data covers only a single quadrant defined by the iquadrant integer. + + :param data: imaging data to which the CDM03 model will be applied to. + :type data: ndarray + + :param iquandrant: number of the quadrant to process + :type iquandrant: int + + cdm03 - Function signature:: + + sout = cdm03(sinp,iflip,jflip,dob,rdose,in_nt,in_sigma,in_tr,[xdim,ydim,zdim]) + Required arguments: + sinp : input rank-2 array('d') with bounds (xdim,ydim) + iflip : input int + jflip : input int + dob : input float + rdose : input float + in_nt : input rank-1 array('d') with bounds (zdim) + in_sigma : input rank-1 array('d') with bounds (zdim) + in_tr : input rank-1 array('d') with bounds (zdim) + Optional arguments: + xdim := shape(sinp,0) input int + ydim := shape(sinp,1) input int + zdim := len(in_nt) input int + Return objects: + sout : rank-2 array('d') with bounds (xdim,ydim) + + .. Note:: Because Python/NumPy arrays are different row/column based, one needs + to be extra careful here. NumPy.asfortranarray will be called to get + an array laid out in Fortran order in memory. Before returning the + array will be laid out in memory in C-style (row-major order). + + :return: image that has been run through the CDM03 model + :rtype: ndarray + """ + #read in trap information + trapdata = np.loadtxt(self.values['trapfile']) + nt = trapdata[:, 0] + sigma = trapdata[:, 1] + taur = trapdata[:, 2] + + iflip = iquadrant / 2 + jflip = iquadrant % 2 + + if self.logger: + self.log.info('nt=' + str(nt)) + self.log.info('sigma= ' + str(sigma)) + self.log.info('taur= ' + str(taur)) + self.log.info('dob=%f' % self.values['dob']) + self.log.info('rdose=%e' % self.values['rdose']) + self.log.info('xsize=%i' % data.shape[1]) + self.log.info('ysize=%i' % data.shape[0]) + self.log.info('quadrant=%i' % iquadrant) + self.log.info('iflip=%i' % iflip) + self.log.info('jflip=%i' % jflip) + + + # #call Fortran routine + # CTIed = cdm03.cdm03(np.asfortranarray(data), + # iflip, jflip, + # self.values['dob'], self.values['rdose'], + # nt, sigma, taur) + ###modify + import sys + sys.path.append('../CTI') + import cdm03 + + ################################################################################# + + CTIed = cdm03.cdm03(np.asfortranarray(data), + jflip, iflip, + self.values['dob'], self.values['rdose'], + nt,sigma,taur ) + + + return np.asanyarray(CTIed) + + +################################################################################################################# + diff --git a/csst_ifs_sim/CTI/__init__.py b/csst_ifs_sim/CTI/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/csst_ifs_sim/__init__.py b/csst_ifs_sim/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/csst_ifs_sim/csst_ifs_sim.py b/csst_ifs_sim/csst_ifs_sim.py new file mode 100644 index 0000000..1dbd918 --- /dev/null +++ b/csst_ifs_sim/csst_ifs_sim.py @@ -0,0 +1,2624 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +""" + +@author: yan +""" + +""" +The CSST IFS Image Simulator +============================================= + +This file contains an image simulator for the CSST IFS. + +The approximate sequence of events in the simulator is as follows: + + #. Read in a configuration file, which defines for example, + detector characteristics (bias, dark and readout noise, gain, + plate scale and pixel scale, oversampling factor, exposure time etc.). + #. Read in another file containing charge trap definitions (for CTI modelling). + #. Read in a file defining the cosmic rays (trail lengths and cumulative distributions). + + #. Load the wavefront aberration data used to calculate PSF with defined wavelength and field of view. + + #. Apply calibration unit flux to mimic flat field exposures [optional]. + #. Apply a multiplicative flat-field map to emulate pixel-to-pixel non-uniformity [optional]. + + #. Add cosmic ray tracks onto the CCD with random positions but known distribution [optional]. + #. Apply detector charge bleeding in column direction [optional]. + #. Add constant dark current and background light from Zodiacal light [optional]. + #. Add photon (Poisson) noise [optional] + #. Add cosmetic defects from an input file [optional]. + #. Add overscan regions in the serial direction [optional]. + #. Apply the CDM03 radiation damage model [optional]. + #. Apply non-linearity model to the pixel data [optional]. + #. Add readout noise selected from a Gaussian distribution [optional]. + #. Convert from electrons to ADUs using a given gain factor. + #. Add a given bias level and discretise the counts (the output is going to be in 16bit unsigned integers). + #. Finally the simulated image is converted to a FITS file. + +:version: 2023.04 + + +Future Work +----------- + +.. todo:: + + #. + #. + #. ...... + +Contact Information: zhaojunyan@shao.ac.cn + +------- + +""" + +from scipy.integrate import simps +import pandas as pd +from datetime import datetime, timedelta +import julian +from astropy.coordinates import get_sun +from astropy.time import Time +from astropy import units as u + +from astropy.coordinates import SkyCoord, EarthLocation + +from scipy import interpolate + +import numpy as np + +import scipy.io as sio + +from astropy.io import fits + +from scipy.signal import fftconvolve + +import galsim + +from scipy import ndimage + +import cmath + +import os, sys + +import configparser as ConfigParser + +from optparse import OptionParser + +sys.path.append('../') + +from CTI import CTI +from support import logger as lg +from support import cosmicrays +from support import IFSinstrumentModel + +############################################################################### + +def str2time(strTime): + if len(strTime)>20:# + msec=int(float('0.'+strTime[20:])*1000000) # + str2=strTime[0:19]+' '+str(msec) + return datetime.strptime(str2,'%Y %m %d %H %M %S %f') + +#datetime to mjd +def time2mjd(dateT): + t0=datetime(1858,11,17,0,0,0,0)# + mjd=(dateT-t0).days + mjd_s=dateT.hour*3600.0+dateT.minute*60.0+dateT.second+dateT.microsecond/1000000.0 + return mjd+mjd_s/86400.0 + +def time2jd(dateT): + t0=datetime(1858,11,17,0,0,0,0)# + mjd=(dateT-t0).days + mjd_s=dateT.hour*3600.0+dateT.minute*60.0+dateT.second+dateT.microsecond/1000000.0 + return mjd+mjd_s/86400.0++2400000.5 + +#mjd to datetime +def mjd2time(mjd): + t0=datetime(1858,11,17,0,0,0,0)# + return t0+timedelta(days=mjd) + +def jd2time(jd): + mjd=jd2mjd(jd) + return mjd2time(mjd) + +#mjd to jd +def mjd2jd(mjd): + return mjd+2400000.5 + +def jd2mjd(jd): + return jd-2400000.5 + +def dt2hmd(dt): + ## dt is datetime + hour=dt.hour + minute=dt.minute + second=dt.second + if hour<10: + str_h='0'+str(hour) + else: + str_h=str(hour) + + if minute<10: + str_m='0'+str(minute) + else: + str_m=str(minute) + + if second<10: + str_d='0'+str(second+dt.microsecond*1e-6) + else: + str_d=str(second+dt.microsecond*1e-6) + + return str_h+':'+str_m+':'+str_d + +############################################################################### + +############################################################################### + +def deg2HMS(ra, dec, rou=False): + '''convert deg to ra's HMS or dec's DHS''' + RA, DEC, rs, ds = '000000', '000000', '', '' + if dec: + if str(dec)[0] == '-': + ds, dec = '-', abs(dec) + deg = int(dec) + decM = abs(int((dec-deg)*60)) + + if rou: + decS = round((abs((dec-deg)*60)-decM)*60,1) + else: + decS = int((abs((dec-deg)*60)-decM)*60) + + if deg ==0: + deg ="00" + elif deg <10: + deg = "0%s"%deg + + if decM ==0: + decM ="00" + elif decM <10: + decM = "0%s"%decM + + if decS ==0: + decS ="00" + elif decS <10: + decS = "0%s"%decS + + DEC = '{0}{1}{2}{3}'.format(ds, deg, decM, decS) + + if ra: + if str(ra)[0] == '-': + rs, ra = '-', abs(ra) + raH = int(ra/15) + raM = int(((ra/15)-raH)*60) + + if rou: + raS = round(((((ra/15)-raH)*60)-raM)*60,1) + else: + raS = int(((((ra/15)-raH)*60)-raM)*60) + + if raH ==0: + raH = "00" + + elif raH <10: + raH = "0%s"%raH + + if raM ==0: + raM = "00" + elif raM <10: + raM = "0%s"%raM + + if raS ==0: + raS = "00" + + elif raS <10: + raS = "0%s"%raS + + RA = '{0}{1}{2}{3}'.format(rs, raH, raM, raS) + + if ds=='-': + return RA+DEC + else: + return RA+'+'+DEC +############################################################################### + +########################################################### +def beta_angle( x_sat, y_sat, z_sat, vx_sat, vy_sat, vz_sat, ra_obj, dec_obj): + + # get the vector for next motion + x_sat2 = x_sat + vx_sat + y_sat2 = y_sat + vy_sat + z_sat2 = z_sat + vz_sat + + vector1 = np.stack((x_sat, y_sat, z_sat), axis=0) + vector2 = np.stack((x_sat2, y_sat2, z_sat2), axis=0) + vector_normal = np.cross(vector1, vector2) + + location_normal = EarthLocation.from_geocentric(vector_normal[0], + vector_normal[1], + vector_normal[2], + unit=u.km) + radec_normal = SkyCoord(ra=location_normal.lon, + dec=location_normal.lat, + frame='gcrs') + lb_normal = radec_normal.transform_to('geocentrictrueecliptic') + + + radec_sun = SkyCoord(ra=ra_obj*u.degree, dec=dec_obj*u.degree, frame='gcrs') + lb_sun = radec_sun.transform_to('geocentrictrueecliptic') + + # get the angle between normal and solar + angle = 90 - lb_normal.separation(lb_sun).degree + + return angle + +########################################################## +########################################################## +def LSR_velocity(ra,dec,velocity,Obstime): + + local = EarthLocation.from_geodetic(lat=22.349368*u.deg, lon=113.584068*u.deg, height=10*u.m) + ### convert ra and dec to + source = SkyCoord(ra*u.deg, dec*u.deg,frame='icrs', unit=(u.hourangle,u.deg) ) + l = source.galactic.l.deg + b = source.galactic.b.deg + c = SkyCoord(l=l*u.degree, b=b*u.degree, frame='galactic') + c_icrs = c.transform_to('icrs') + barycorr = c_icrs.radial_velocity_correction(obstime=Time(Obstime), location=local) + velocity = velocity + barycorr.value/1000 + #print(barycorr.value/1000) + l = l * np.pi / 180 + b = b * np.pi / 180 + return velocity + 9 * np.cos(l) * np.cos(b) + 12 * np.sin(l) * np.cos(b) + 7 * np.sin(b) + +############################################################################### +def rotation_yan(x0,y0,x1,y1,angle): + #% point A (x0,y0) + #% point B(x1,y1) + #% roate angle ,point B rotate with point A + alpha=angle/180*3.1415926 #% in radians + x2=(x1-x0)*np.cos(alpha)-(y1-y0)*np.sin(alpha)+x0 + y2=(x1-x0)*np.sin(alpha)+(y1-y0)*np.cos(alpha)+y0 + return x2, y2 +###################################################################### +def centroid(data): + h,w = np.shape(data) + x = np.arange(0,w) + y = np.arange(0,h) + x1=np.ones((1,h)) + y1=np.ones((w,1)) + cx=(np.dot(np.dot(x1,data),y)) /(np.dot(np.dot(x1,data),y1)) + cy=(np.dot(np.dot(x ,data),y1)) /(np.dot(np.dot(x1,data),y1)) + return np.float64(cx),np.float64(cy) +#################################################################### +def SpecCube2photon(data,wave): + # calcutle photons from original spec cube data, + # data: input data, two-dimentional, unit : 1e-17 erg/s/A/cm^2 + # wave: the relative wavefront, unit in nm; + planckh= 6.62620*10**-27 # % erg s; + cc=2.99792458*10**17 # in nm/s + # fov2=0.01 # in arcsec^2 + # telarea=3.1415926*100*100 # in cm^2, + fluxlam=1e-17*data # convert original unit to unit of erg/s/A/cm^2 + lam=wave # wave in nm ;; + ephoton=planckh*cc/lam # in erg/photon, + Nphoton =fluxlam/ephoton # in unit of photons/cm2/s/A + return Nphoton + +###################################################################### + +###################################################################### +def zero_pad(image, shape, position='corner'): + """ + Extends image to a certain size with zeros + Parameters + ---------- + image: real 2d `np.ndarray` + Input image + shape: tuple of int + Desired output shape of the image + position : str, optional + The position of the input image in the output one: + * 'corner' + top-left corner (default) + * 'center' + centered + Returns + ------- + padded_img: real `np.ndarray` + The zero-padded image + """ + shape = np.asarray(shape, dtype=int) + imshape = np.asarray(image.shape, dtype=int) + + if np.alltrue(imshape == shape): + return image + + if np.any(shape <= 0): + raise ValueError("ZERO_PAD: null or negative shape given") + + dshape = shape - imshape + if np.any(dshape < 0): + raise ValueError("ZERO_PAD: target size smaller than source one") + + pad_img = np.zeros(shape, dtype=image.dtype) + + idx, idy = np.indices(imshape) + + if position == 'center': + if np.any(dshape % 2 != 0): + raise ValueError("ZERO_PAD: source and target shapes " + "have different parity.") + offx, offy = dshape // 2 + else: + offx, offy = (0, 0) + + pad_img[idx + offx, idy + offy] = image + + return pad_img + +def anySampledPSF(wavefront, pupil , Q , sizeout): + ''' + written on 2020.12.04 by Yan @Shao + % wavefront sampled in the united circle; + % pupil function samped as wavefront; + % sample ratio Q=lambda/D/pixel; + % lambda is wavelength; + % D is diameter; + % pixel is in arcsec; + % or sample ratio Q=lambda*f/D/pixelsize + % f is focal length; + % pixelsize is the actural size of the detector; + % make sure all the varia have the same unit; + % the returned PSF has sum value of 1 + ''' + + m,n = np.shape(wavefront) + + phase=2.0*np.pi*wavefront #% the phase of the input wavefront; + + ####generalized pupil function of channel1; + if Q>=1: + pk1=zero_pad(pupil*np.exp(cmath.sqrt(-1)*(phase)),( int(np.floor(m*Q)),int(np.floor(m*Q))), position='corner') + psf=abs(np.fft.fftshift(np.fft.fft2(pk1)))**2 + #psf=psf/psf.sum() + else: #%%% case: Q<1 + # %fft method + if Q>=0.5: #% in this case Q<1 and Q>=0.5 + pk1=zero_pad(pupil*np.exp(cmath.sqrt(-1)*(phase)), (int(2*np.floor(m*Q)),int(2*np.floor(m*Q))), position='corner') + mypsf=np.fft.fft2(pk1); + t=mypsf[0::2,0::2]; + psf=abs(np.fft.fftshift(t))**2 + #psf=mypsf3/mypsf3.sum(); + + else: + if Q>=0.25: + pk1=zero_pad(pupil*np.exp(cmath.sqrt(-1)*(phase)),( int(4*np.floor(m*Q)),int(4*np.floor(m*Q))), position='corner') + mypsf=np.fft.fft2(pk1); + t=mypsf[0::4,0::4]; + psf=abs(np.fft.fftshift(t))**2 + #psf=mypsf3/mypsf3.sum(); + else: + print('---- Q<0.25 , stop running') + sys.exit(0) + ######################################################################################## + mm,nn=np.shape(psf) + if np.mod(sizeout,2)==0: + Nx=sizeout/2-1 + else: + Nx=(sizeout+1)/2-1 + + + if max(mm,nn)<sizeout: + psfout=np.zeros((sizeout,sizeout)) + [cx,cy]=np.where(psf==np.max(psf)) + s=np.ceil(min(mm,nn)/2)-abs(cx-cy)-1 + Nx=int(Nx) + cx=int(cx) + cy=int(cy) + s=int(s) + psfout[Nx-s:Nx+s-1,Nx-s:Nx+s-1]=psf[cx-s:cx+s-1,cy-s:cy+s-1] + else: + psfout=np.zeros((sizeout,sizeout)); + [cx,cy]=np.where(psf==np.max(psf)) + s1=int(np.ceil(min(mm,nn)/2)-abs(cx-cy)-1) + s2=int(sizeout/2) + s=min(s1,s2) + s=s-1 + Nx=int(Nx) + cx=int(cx) + cy=int(cy) + psfout[Nx-s:Nx+s-1,Nx-s:Nx+s-1]=psf[cx-s:cx+s-1,cy-s:cy+s-1] + #### + + cx,cy=centroid(psfout) + Nt=sizeout + #psf=ndimage.shift(psfout,[Nt/2-cy, Nt/2-cx],order=1, mode='nearest' ) ## for my fft method + psf=ndimage.shift(psfout,[Nt/2-cy-1, Nt/2-cx-1],order=1, mode='nearest' ) #for convolve method + psf=psf/psf.sum() + + return psf +############################################################################## +def get_dx_dy_blue(wave): + #wave is the wavelength in nm; + # dx is in dispersion direction, dy is in vertical direction; + dydl=np.array([-423.256, 0.001, 0.00075, 0.0000078, -0.0000000000007, 0.0, 0.0] ) #è‰²æ•£æ–¹å‘ + dxdl=0.2*np.array([-9.1519, -1.00000000e-06, 3.50000000e-08, -5.00000000e-09, -1.70000000e-11, 4.00949787e-12, -6.16873452e-15]) #åž‚ç›´æ–¹å‘ + + dx=0.0 + dy=0.0 + for i in range(len(dxdl)): + dx=dx+dxdl[i]*wave**(i) + dy=dy+dydl[i]*wave**(i) + return dx,dy + + +def get_dx_dy_red(wave): + #wave is the wavelength in nm; + dydl=np.array([-640.0239901372472, 0.0018, 0.00048, 0.0000028, -0.0000000000007, 0.0 , 0.0] ) #è‰²æ•£æ–¹å‘ + dxdl=0.00325*np.array([-1638.8, 4.0e-2, 5.500e-3, -5.2e-10, 1.7000e-10, 7.1e-13, -5.16e-15]) #åž‚ç›´æ–¹å‘ + + dx=0.0 + dy=0.0 + for i in range(len(dxdl)): + dx=dx+dxdl[i]*wave**(i) + dy=dy+dydl[i]*wave**(i) + return dx,dy + +############################################################################################## +def getSpectrum(Spectrum0,lam,sigma): + + # + wave=Spectrum0[:,0] ## wavelengthï¼› + Qt =Spectrum0[:,1] ##intensityï¼› + d=abs(lam-wave); + if min(d)>3*sigma: + + SpmOut=1.0/20000 + else: + + column=np.where(d==min(d)) + SpmOut=Qt[column[0]]*np.exp(-(lam-wave[column[0]])**2/2/sigma**2) + + return SpmOut + +##################################################################################### +#################################################################################################################### + +def processArgs(printHelp=False): + """ + Processes command line arguments. + """ + parser = OptionParser() + + parser.add_option('-c', '--configfile', dest='configfile', + help="Name of the configuration file", metavar="string") + parser.add_option('-s', '--section', dest='section', + help="Name of the section of the config file [SCIENCE]", metavar="string") + parser.add_option('-q', '--quadrant', dest='quadrant', help='CCD quadrant to simulate [0, 1, 2, 3]', + metavar='int') + parser.add_option('-x', '--xCCD', dest='xCCD', help='CCD number in X-direction within the FPA matrix', + metavar='int') + parser.add_option('-y', '--yCCD', dest='yCCD', help='CCD number in Y-direction within the FPA matrix', + metavar='int') + parser.add_option('-d', '--debug', dest='debug', action='store_true', + help='Debugging mode on') + parser.add_option('-t', '--test', dest='test', action='store_true', + help='Run unittest') + parser.add_option('-f', '--fixed', dest='fixed', help='Use a fixed seed for the random number generators', + metavar='int') + if printHelp: + parser.print_help() + else: + return parser.parse_args() +############################################################################################## +class IFSsimulator(): + """ + CSST IFS Simulator + + The image that is being build is in:: + + self.image + self.image_b blue channel + self.image_r red channel + + :param opts: OptionParser instance + :type opts: OptionParser instance + """ + + def __init__(self, opts): + """ + Class Constructor. + + :param opts: OptionParser instance + :type opts: OptionParser instance + + """ + + #################################### + + self.configfile = opts.configfile + + if opts.section is None: + ####self.section = 'DEFAULT' + self.section = 'TEST' #####simulation section; + + else: + self.section = opts.section + + #load instrument model, these values are also stored in the FITS header + self.information = IFSinstrumentModel.IFSinformation() + + #update settings with defaults + self.information.update(dict(quadrant=int(0), + ccdx=int(0), + ccdy=int(0), + psfoversampling=1.0, + ccdxgap=1.643, + ccdygap=8.116, + fullwellcapacity=90000, + readouttime=4, + rdose=8.0e9, + coveringfraction=0.5 )) + + ###################################################################### + self.configure() #print the configfile name and path; + + self.information.update(dict( + + cosmicraylengths =self.information['indata_path']+'/cdf_cr_length.dat', + cosmicraydistance=self.information['indata_path']+'/cdf_cr_total.dat', + parallelTrapfile =self.information['indata_path']+'/cdm_euclid_parallel.dat', + serialTrapfile =self.information['indata_path']+'/cdm_euclid_serial.dat', + cosmeticsfile_b =self.information['indata_path']+'/Cosmetics_b.txt', + cosmeticsfile_r =self.information['indata_path']+'/Cosmetics_r.txt' )) + + # public system information + self.pixelscale=0.1 # the pixel size is 0.1 arcsec + self.pixelsize=15 # the pixel physical size is 15 micron + self.Fnum=15.469875 # the f number= focal_length/D; + self.telD=2 # tht telescope size is 2 meter, diamter size; + self.telarea=3.1415926*(self.telD/2)**2*100*100 # telescope square in cm^2 + self.fov2=0.01 # the pixel square + self.planckh= 6.62620*1e-27 # % erg s; + self.cc=2.99792458*1e17 # in nm/s + self.light_FWHM=0.175 + self.HgArsigma=self.light_FWHM/2.35; ## sigma value of the light source; + + #### load system optical and CCD efficiency data + matfn0=self.information['indata_path']+'/TotalQ200923.mat' + da0=sio.loadmat(matfn0) + self.optical_blue_Q=da0['opticalQ_1'] # optical efficiency of blue channel + self.optical_red_Q =da0['opticalQ_2'] # optical efficiency of red channel + self.CCD_Qe=da0['ccdQE'] # red channel + + ############################################################# load all useful data; + ############### load wavefront data; + matfn2=self.information['indata_path']+'/opd_638nm.mat' + da2=sio.loadmat(matfn2) + opd0=da2['opd'] # opd unit is in meter + self.opd0=opd0*1e9 # convert opd to nm + self.pupil=abs(opd0)>0.0 + #################### + + da=fits.open(self.information['indata_path']+'/opd1.fits') + self.opd1=da[0].data + + da=fits.open(self.information['indata_path']+'/opd2.fits') + self.opd2=da[0].data + + da=fits.open(self.information['indata_path']+'/opd3.fits') + self.opd3=da[0].data + + + ################################################################################ + ## slice information; the slice is put in vertial direction; + # the silce long size is 64 pixels + slice_blue=dict() + slice_red =dict() + + randRedpos=np.array([0.52835362, 1.1105926 , -0.81667794, 0.88860884, -2.78092636, + -0.15810022, -1.56726852, -0.71601855, -1.31768647, 1.73107581, + 0.4933876 , 2.83673377, 0.22226286, -0.02634998, 0.35539383, + -0.91989574, -2.44856212, 0.91020484, -3.03097852, -1.11638071, + 1.28360669, -0.12521128, -0.3907698 , 0.70183575, 1.00578099, + 1.67339662, 0.18067182, -0.56303075, 0.40959616, 1.45518379, + -0.93194744, 0.41492972]) + + randBluepos=np.array([ 0.97449008, -0.21371406, -1.62513338, -3.06938604, 1.72615283, + 0.73333374, 0.80923919, -0.9418576 , -0.16806578, -1.04416631, + 2.20155068, -0.0900156 , 0.07597706, 0.76208373, 0.29426592, + -0.89434703, 0.34017826, 1.16936499, 0.10977829, -1.31179539, + -0.50859787, -1.01891651, -0.95791581, -1.53018041, 0.88358827, + 0.07837641, -0.86157157, -1.18070438, 0.53970599, 1.4913733 , + 2.10938775, 1.23213412]) + + ##################### + for i in range(32): + if i==0: + slice_blue['py']=np.zeros(32) + slice_blue['px']=np.zeros(32) + + slice_red['py']=np.zeros(32) + slice_red['px']=np.zeros(32) + + if i<16: + slice_blue['py'][i]=50+randBluepos[i]*4 + slice_blue['px'][i]=3.55/0.015*i+166.0 + + + slice_red['py'][i]=50+randBluepos[i]*4 + slice_red['px'][i]=3.55/0.015*i+1190.0 + + else: + slice_blue['py'][i]=50+250+randBluepos[i]*4 + slice_blue['px'][i]=3.55/0.015*(i-16)+166.0+118 + + + slice_red['py'][i]=50+250+randBluepos[i]*4 + slice_red['px'][i]=3.55/0.015*(i-16)+1190.0+118 + ####### + + self.slice_blue=slice_blue + self.slice_red=slice_red + + ############################################################################### + maskSlice=dict() + maskSlit=dict() + sizeout=100 + for k in range(32): + maskSlice[str(k)]=np.zeros((sizeout,sizeout)) + maskSlice[str(k)][2*k+18:2*k+20, int(sizeout/2)-32:int(sizeout/2)+32]=1 + + maskSlit[str(k)]=np.zeros((sizeout,sizeout)) + maskSlit[str(k)][2*k+18:2*k+20, int(sizeout/2)-37:int(sizeout/2)+37]=1 + + self.maskSlice=maskSlice + self.maskSlit =maskSlit + ################################################################################################ + + + + +############################################################################3 + def readConfigs(self): + """ + Reads the config file information using configParser and sets up a logger. + """ + self.config = ConfigParser.RawConfigParser() + + self.config.read_file(open(self.configfile)) + + +############################################################################### + + + def processConfigs(self): + """ + Processes configuration information and save the information to a dictionary self.information. + + The configuration file may look as follows:: + + [TEST] + + + For explanation of each field, see /data/test.config. Note that if an input field does not exist, + then the values are taken from the default instrument model as described in + support.IFSinstrumentModel.VISinformation(). Any of the defaults can be overwritten by providing + a config file with a correct field name. + """ + #parse options and update the information dictionary + options = self.config.options(self.section) + + settings = {} + + for option in options: + try: + settings[option] = self.config.getint(self.section, option) + except ValueError: + try: + settings[option] = self.config.getfloat(self.section, option) + except ValueError: + settings[option] = self.config.get(self.section, option) + + self.information.update(settings) + + self.cosmicRays = self.config.getboolean(self.section, 'cosmicRays') + self.darknoise = self.config.getboolean(self.section, 'darknoise') + self.cosmetics = self.config.getboolean(self.section, 'cosmetics') + self.radiationDamage = self.config.getboolean(self.section, 'radiationDamage') + + self.bleeding = self.config.getboolean(self.section, 'bleeding') + + self.skyback = self.config.getboolean(self.section, 'skyback') + + + #these don't need to be in the config file + + try: + self.nonlinearity = self.config.getboolean(self.section, 'nonlinearity') + except: + self.nonlinearity = False + + try: + self.flatfieldM = self.config.getboolean(self.section, 'flatfieldM') + except: + self.flatfieldM = False + + try: + self.readoutNoise = self.config.getboolean(self.section, 'readoutNoise') + except: + self.readoutNoise = True + + #################################################################### + self.booleans = dict(nonlinearity=self.nonlinearity, + flatfieldM=self.flatfieldM, + cosmicRays=self.cosmicRays, + darknoise=self.darknoise, + cosmetics=self.cosmetics, + radiationDamage=self.radiationDamage, + bleeding=self.bleeding, + skyback =self.skyback) + ##################################################################### + + now=datetime.now() + + result_day=now.strftime("%Y-%m-%d") + + self.result_path=self.information['result_path']+'/'+result_day + + if os.path.isdir(self.result_path)==False: + os.mkdir(self.result_path) + os.mkdir(self.result_path+'/log_file') + os.mkdir(self.result_path+'/sky_Data') + + now=datetime.now() + + data_time=now.strftime("%Y-%m-%d-%H-%M-%S") + + self.log = lg.setUpLogger(self.result_path+'/log_file/IFS_'+'_'+data_time+'.log') + + self.log.info('STARTING A NEW SIMULATION') + + self.log.info(self.information) + + return + ######################################################################################### + +####################################################################### + + + def readCosmicRayInformation(self): + """ + Reads in the cosmic ray track information from two input files. + + Stores the information to a dictionary called cr. + """ + self.log.info('Reading in cosmic ray information from %s and %s' % (self.information['cosmicraylengths'], + self.information['cosmicraydistance'])) + + crLengths = np.loadtxt(self.information['cosmicraylengths']) + crDists = np.loadtxt(self.information['cosmicraydistance']) + + self.cr = dict(cr_u=crLengths[:, 0], cr_cdf=crLengths[:, 1], cr_cdfn=np.shape(crLengths)[0], + cr_v=crDists[:, 0], cr_cde=crDists[:, 1], cr_cden=np.shape(crDists)[0]) + +############################################################################################## + + + def configure(self): + """ + Configures the simulator with input information and creates and empty array to which the final image will + be build on. + """ + self.readConfigs() + + self.processConfigs() + + self.log.info('Read in the configuration files and created an empty array') + +################################################################################################################# + + def MakeFlatMatrix(self, img, seed): + #### + ysize, xsize=img.shape + np.random.seed(seed) + r1,r2,r3,r4 = np.random.random(4) + a1 = -0.5 + 0.2*r1 + a2 = -0.5 + 0.2*r2 + a3 = r3+5 + a4 = r4+5 + xmin,xmax,ymin,ymax = 0, xsize,0, ysize + Flty, Fltx = np.mgrid[ymin:ymax, xmin:xmax] + np.random.seed(seed) + p1,p2,bg=np.random.poisson(1000, 3) + Fltz = 1e-6*(a1 * (Fltx-p1) ** 2 + a2 * (Flty-p2) ** 2 - a3*Fltx - a4*Flty) + bg*20 + FlatMat = Fltz/np.mean(Fltz) + + return FlatMat + + ######################################################################################################### + def addLampFlux(self): + """ + Include flux from the calibration source. + """ + + + self.image_b += fits.getdata(self.information['flatflux']) + + self.image_r += fits.getdata(self.information['flatflux']) + + self.log.info('Flux from the calibration unit included (%s)' % self.information['flatflux']) + + + def applyflatfield(self): + """ + Applies multiplicative flat field to emulate pixel-to-pixel non-uniformity. + + Because the pixel-to-pixel non-uniformity effect (i.e. multiplicative) flat fielding takes place + before CTI and other effects, the flat field file must be the same size as the pixels that see + the sky. + """ + + ### + flat_b=self.MakeFlatMatrix(self.image_b, 100) + + flat_r=self.MakeFlatMatrix(self.image_r, 200) + + self.image_b *= flat_b + + self.image_r *= flat_r + + self.log.info('Applied flatfield to images.') + + return + + ######################################################## + +############################################################################### + def addCosmicRays(self): + """ + Add cosmic rays to the arrays based on a power-law intensity distribution for tracks. + Cosmic ray properties (such as location and angle) are chosen from random Uniform distribution. + For details, see the documentation for the cosmicrays class in the support package. + """ + self.readCosmicRayInformation() + self.cr['exptime'] = self.information['exptime'] #to scale the number of cosmics with exposure time + + #cosmic ray image + crImage_b = np.zeros((2048, 4096), dtype=np.float64) + + crImage_r = np.zeros((3072, 6144), dtype=np.float64) + + #cosmic ray instance + cosmics_b = cosmicrays.cosmicrays(self.log, crImage_b, crInfo=self.cr) + cosmics_r = cosmicrays.cosmicrays(self.log, crImage_r, crInfo=self.cr) + + + #add cosmic rays up to the covering fraction + #CCD_cr = cosmics.addUpToFraction(self.information['coveringFraction'], limit=None) + + CCD_cr_b = cosmics_b.addUpToFraction(self.information['coveringfraction'], limit=None) + CCD_cr_r = cosmics_r.addUpToFraction(self.information['coveringfraction'], limit=None) + + + #paste the information + self.image_b += CCD_cr_b + self.image_r += CCD_cr_r + + + #count the covering factor + area_cr_b = np.count_nonzero(CCD_cr_b) + area_cr_r = np.count_nonzero(CCD_cr_r) + + #self.log.info('The cosmic ray covering factor is %i pixels ' % area_cr) + self.log.info('The cosmic ray in blue channel covering factor is %i pixels ' % area_cr_b) + self.log.info('The cosmic ray in red channel covering factor is %i pixels ' % area_cr_r) + + ######################################################### + +######################################################################### + +######################################################################### + + + def applyDarkCurrent(self): + """ + Apply dark current. Scales the dark with the exposure time. + + Additionally saves the image without noise to a FITS file. + """ + + self.log.info('Added dark current to bule and red channel' ) + + ########## blue zone 1 + self.image_b[0:1024,0:2048] += self.information['exptime'] * self.information['dark1_b'] + + ########## zone 4 ################# + self.image_b[1024:2048,0:2048] += self.information['exptime'] * self.information['dark4_b'] + + ########## zone 2 ################### + self.image_b[0:1024,2048:4096] += self.information['exptime'] * self.information['dark2_b'] + + ########## zone 3 + self.image_b[1024:2048,2048:4096]+= self.information['exptime'] * self.information['dark3_b'] + + + + ########## red zone 1 + self.image_r[0:1536, 0:3072] += self.information['exptime'] * self.information['dark1_r'] + ########## zone 4 ################# + + self.image_r[1536:3712,0:3072] += self.information['exptime'] * self.information['dark4_r'] + + ########## zone 2 ################### + self.image_r[0:1536,3072:6144] += self.information['exptime'] * self.information['dark2_r'] + + ########## zone 3 + self.image_r[1536:3072,3072:6144] += self.information['exptime'] * self.information['dark3_r'] + + +#######################################################################################################3 + + def applyCosmicBackground(self): + """ + Apply dark the cosmic background. Scales the background with the exposure time. + + Additionally saves the image without noise to a FITS file. + """ + + #add background + bcgr = self.information['exptime'] * self.information['cosmic_bkgd'] + #self.image += bcgr + self.image_b += bcgr + self.image_r += bcgr + + self.log.info('Added cosmic background = %f' % bcgr) + + if self.cosmicRays: + #self.imagenoCR += bcgr + self.imagenoCR_b += bcgr + self.imagenoCR_r += bcgr + + ########################################################################################## + + + +############################################################################## + def applyPoissonNoise(self): + """ + Add Poisson noise to the image. + """ + + rounded = np.rint(self.image_b) ### round to + residual = self.image_b.copy() - rounded #ugly workaround for multiple rounding operations... + rounded[rounded < 0.0] = 0.0 + + np.random.seed() + self.image_b = np.random.poisson(rounded).astype(np.float64) + self.log.info('Added Poisson noise on channel blue') + self.image_b += residual + + rounded = np.rint(self.image_r) ### round to + residual = self.image_r.copy() - rounded #ugly workaround for multiple rounding operations... + rounded[rounded < 0.0] = 0.0 + + np.random.seed() + self.image_r = np.random.poisson(rounded).astype(np.float64) + self.log.info('Added Poisson noise on channel red') + self.image_r += residual + + +################################################################################################################### + + def applyCosmetics(self): + """ + Apply cosmetic defects described in the input file. + + Warning:: This method does not work if the input file has exactly one line. + """ + cosmetics = np.loadtxt(self.information['cosmeticsfile_b']) + + x = np.round(cosmetics[:, 0]).astype(int) + y = np.round(cosmetics[:, 1]).astype(int) + value = cosmetics[:, 2] + + cosmetics_b=np.zeros((3712,6784)) + cosmetics_r=np.zeros((3712,6784)) + self.log.info('Adding cosmetic defects to blue channel:' ) + for xc, yc, val in zip(x, y, value): + if 0 <= xc <= 6784 and 0 <= yc <= 3712: + #self.image[yc, xc] = val + self.image_b[yc, xc] = val + cosmetics_b[yc,xc]=val + self.log.info('x=%i, y=%i, value=%f' % (xc, yc, val)) +###################################################################################################### + + cosmetics = np.loadtxt(self.information['cosmeticsfile_r']) + + x = np.round(cosmetics[:, 0]).astype(int) + y = np.round(cosmetics[:, 1]).astype(int) + value = cosmetics[:, 2] + + + self.log.info('Adding cosmetic defects to red channel:' ) + + for xc, yc, val in zip(x, y, value): + if 0 <= xc <= 6784 and 0 <= yc <= 3712: + #self.image[yc, xc] = val + self.image_r[yc, xc] = val + cosmetics_r[yc,xc]=val + self.log.info('x=%i, y=%i, value=%f' % (xc, yc, val)) + + +################################################################################ + + + def applyRadiationDamage(self): + """ + Applies CDM03 radiation model to the image being constructed. + + .. seealso:: Class :`CDM03` + """ + + + self.log.debug('Starting to apply radiation damage model...') + #at this point we can give fake data... + cti = CTI.CDM03bidir(self.information, [], log=self.log) + #here we need the right input data + self.image_b = cti.applyRadiationDamage(self.image_b.copy().transpose(), iquadrant=self.information['quadrant']).transpose() + self.log.info('Radiation damage added.') + + + self.log.debug('Starting to apply radiation damage model...') + #at this point we can give fake data... + cti = CTI.CDM03bidir(self.information, [], log=self.log) + #here we need the right input data + self.image_r = cti.applyRadiationDamage(self.image_r.copy().transpose(), iquadrant=self.information['quadrant']).transpose() + self.log.info('Radiation damage added.') +################################################################################## + + + def applyNonlinearity(self): + """ + Applies a CCD273 non-linearity model to the image being constructed. + """ + + self.log.debug('Starting to apply non-linearity model...') + self.image_b = IFSinstrumentModel.CCDnonLinearityModel(self.image_b.copy()) + + self.log.info('Non-linearity effects included.') + + + self.log.debug('Starting to apply non-linearity model...') + self.image_r = IFSinstrumentModel.CCDnonLinearityModel(self.image_r.copy()) + + self.log.info('Non-linearity effects included.') + +##################################################################################### + def applyReadoutNoise(self): + """ + Applies readout noise to the image being constructed. + + The noise is drawn from a Normal (Gaussian) distribution with average=0.0 and std=readout noise. + """ + + + self.log.info('readnoise added in blue channel') + ########## blue zone 1 + np.random.seed() + self.image_b[0:1856,0:3392] += np.random.normal(loc=0.0, scale=self.information['rn1_b'], size=(1856,3392)) + + ########## zone 4 ################# + np.random.seed() + self.image_b[1856:3712,0:3392] += np.random.normal(loc=0.0, scale=self.information['rn4_b'], size=(1856,3392)) + + ########## zone 2 ################### + np.random.seed() + self.image_b[0:1856,3392:6784] += np.random.normal(loc=0.0, scale=self.information['rn2_b'], size=(1856,3392)) + + ########## zone 3 + np.random.seed() + self.image_b[1856:3712,3392:6784]+= np.random.normal(loc=0.0, scale=self.information['rn3_b'], size=(1856,3392)) + + + ############################################################################ + + self.log.info('readnoise added in blue channel') + + + ########## red zone 1 + np.random.seed() + self.image_r[0:1856, 0:3392] += np.random.normal(loc=0.0, scale=self.information['rn1_r'], size=(1856,3392)) + + ########## zone 4 ################# + np.random.seed() + self.image_r[1856:3712,0:3392] += np.random.normal(loc=0.0, scale=self.information['rn4_r'], size=(1856,3392)) + + ########## zone 2 ################### + np.random.seed() + self.image_r[0:1856,3392:6784] += np.random.normal(loc=0.0, scale=self.information['rn2_r'], size=(1856,3392)) + + ########## zone 3 + np.random.seed() + self.image_r[1856:3712,3392:6784]+= np.random.normal(loc=0.0, scale=self.information['rn3_r'], size=(1856,3392)) + +########################################################################################## + + def electrons2ADU(self): + """ + Convert from electrons to ADUs using the value read from the configuration file. + """ + + + ############################################################### + + self.log.info('Converting from electrons to ADUs using a factor of gain' ) + + ########## blue zone 1 + self.image_b[0:1856,0:3392] /= self.information['gain1_b'] + + ########## zone 4 ################# + self.image_b[1856:3712,0:3392] /= self.information['gain4_b'] + + ########## zone 2 ################### + self.image_b[0:1856,3392:6784] /= self.information['gain2_b'] + + ########## zone 3 + self.image_b[1856:3712,3392:6784]/= self.information['gain3_b'] + + ############################################################################ + + ########## red zone 1 + self.image_r[0:1856, 0:3392] /= self.information['gain1_r'] + + ########## zone 4 ################# + self.image_r[1856:3712,0:3392] /= self.information['gain4_r'] + + ########## zone 2 ################### + self.image_r[0:1856,3392:6784] /= self.information['gain2_r'] + + ########## zone 3 + self.image_r[1856:3712,3392:6784] /= self.information['gain3_r'] + + ##########################################################################3 + + + #################################################################################### + + def applyBias(self): + """ + Adds a bias level to the image being constructed. + + The value of bias is read from the configure file and stored + in the information dictionary (key bias). + """ + + + ########## blue zone 1 + self.image_b[0:1856,0:3392] += self.information['bias1_b'] + + ########## zone 4 ################# + self.image_b[1856:3712,0:3392] += self.information['bias4_b'] + + ########## zone 2 ################### + self.image_b[0:1856,3392:6784] += self.information['bias2_b'] + + ########## zone 3 + self.image_b[1856:3712,3392:6784] += self.information['bias3_b'] + + self.log.info('Bias counts were added to the blue image' ) + + ############################################################################ + + ########## red zone 1 + self.image_r[0:1856, 0:3392] += self.information['bias1_r'] + + ########## zone 4 ################# + self.image_r[1856:3712,0:3392] += self.information['bias4_r'] + + ########## zone 2 ################### + self.image_r[0:1856,3392:6784] += self.information['bias2_r'] + + ########## zone 3 + self.image_r[1856:3712,3392:6784] += self.information['bias3_r'] + + ########################################################################## + + self.log.info('Bias counts were added to the red image' ) + +############################################################################### + +############################################################################### + + def applyBleeding_yan(self): + """ + Apply bleeding along the CCD columns if the number of electrons in a pixel exceeds the full-well capacity. + + Bleeding is modelled in the parallel direction only, because the CCD273s are assumed not to bleed in + serial direction. + + :return: None + """ + + + if self.image_b.max()>self.information['fullwellcapacity']: + + self.log.info('Applying column bleeding to blue CCD image...') + + #loop over each column, as bleeding is modelled column-wise + for i, column in enumerate(self.image_b.T): + sum = 0. + for j, value in enumerate(column): + #first round - from bottom to top (need to half the bleeding) + overload = value - self.information['fullwellcapacity'] + if overload > 0.: + overload /= 2. + #self.image[j, i] -= overload + self.image_b[j, i] -= overload + + sum += overload + + elif sum > 0.: + if -overload > sum: + overload = -sum + + self.image_b[j, i] -= overload + sum += overload + + for i, column in enumerate(self.image_b.T): + sum = 0. + for j, value in enumerate(column[::-1]): + #second round - from top to bottom (bleeding was half'd already, so now full) + overload = value - self.information['fullwellcapacity'] + if overload > 0.: + #self.image[-j-1, i] -= overload + self.image_b[-j-1, i] -= overload + + sum += overload + elif sum > 0.: + if -overload > sum: + overload = -sum + #self.image[-j-1, i] -= overload + self.image_b[-j-1, i] -= overload + + + sum += overload + print('Applying column bleeding to blue image finished.......') + + + ###################################################################### + if self.image_r.max()>self.information['fullwellcapacity']: + + self.log.info('Applying column bleeding to red CCD image...') + + for i, column in enumerate(self.image_r.T): + sum = 0. + for j, value in enumerate(column): + #first round - from bottom to top (need to half the bleeding) + overload = value - self.information['fullwellcapacity'] + if overload > 0.: + overload /= 2. + #self.image[j, i] -= overload + self.image_r[j, i] -= overload + + sum += overload + elif sum > 0.: + if -overload > sum: + overload = -sum + #self.image[j, i] -= overload + self.image_r[j, i] -= overload + + + sum += overload + + for i, column in enumerate(self.image_r.T): + sum = 0. + for j, value in enumerate(column[::-1]): + #second round - from top to bottom (bleeding was half'd already, so now full) + overload = value - self.information['fullwellcapacity'] + if overload > 0.: + #self.image[-j-1, i] -= overload + self.image_r[-j-1, i] -= overload + + sum += overload + elif sum > 0.: + if -overload > sum: + overload = -sum + #self.image[-j-1, i] -= overload + self.image_r[-j-1, i] -= overload + + + sum += overload + print('Applying column bleeding to red image finished.......') + + ############################################################################ + + ############################################################################ + + def discretise(self, max=2**16-1): + """ + Converts a floating point image array (self.image) to an integer array with max values + defined by the argument max. + + :param max: maximum value the the integer array may contain [default 65k] + :type max: float + + :return: None + """ + #avoid negative numbers in case bias level was not added + self.image_b[self.image_b < 0.0] = 0. + #cut of the values larger than max + self.image_b[self.image_b > max] = max + + self.image_b = np.rint(self.image_b).astype(int) + self.log.info('Maximum and total values of the image are %i and %i, respectively' % (np.max(self.image_b), + np.sum(self.image_b))) + + #avoid negative numbers in case bias level was not added + self.image_r[self.image_r < 0.0] = 0. + #cut of the values larger than max + self.image_r[self.image_r > max] = max + + self.image_r = np.rint(self.image_r).astype(int) + self.log.info('Maximum and total values of the image are %i and %i, respectively' % (np.max(self.image_r), + np.sum(self.image_r))) + + ################################################################################################## + + def applyImageShift(self): + + np.random.seed() + ud= np.random.random() # Choose a random rotation + dx= 2* (ud-0.5) * self.information['shiftmax'] + + np.random.seed() + ud= np.random.random() # Choose a random rotation + dy= 2* (ud-0.5) * self.information['shiftmax'] + + self.image_b= ndimage.shift(self.image_b.copy(), [dy+self.information['shift_b_y'] , dx+self.information['shift_b_x']], order=0, mode='nearest') + self.image_r= ndimage.shift(self.image_r.copy(), [dy+self.information['shift_r_y'] , dx+self.information['shift_r_x']], order=0, mode='nearest') + + self.log.info('Applied image shifting to g r i channels.') + self.information['ra'] = dx*self.information['pixel_size'] + self.information['dec'] = dy*self.information['pixel_size'] + + +######################################################################################################33 + + def applyImageRotate(self ): + np.random.seed() + ud = np.random.random() # Choose a random rotation + angle = 2* (ud-0.5) * self.information['tel_rotmax'] + + inputimg=self.image_b.copy() + rotimg=ndimage.rotate(inputimg,angle+self.information['rotate_b'],order=1,reshape=False) # here we choose reshape=False, the rotated image will + self.image_b=rotimg + + inputimg=self.image_r.copy() + rotimg=ndimage.rotate(inputimg,angle+self.information['rotate_r'],order=1,reshape=False) # here we choose reshape=False, the rotated image will + self.image_r=rotimg + + self.information['Tel_rot']=angle + + self.log.info('Applied telescope rotation with angle (in degree)= %f.', angle) +############################################################################### + + def CCDreadout(self): + + imgb=self.image_b.copy() + temp=np.zeros((3712,6784)) + ########## zone 1 + x1=0 + x2=x1+1024 + + y1=0 + y2=y1+2048 + temp[x1:x2,y1:y2]=imgb[0:1024,0:2048] + ########## zone 4 ################# + x1=2688 + x2=x1+1024 + + y1=0 + y2=y1+2048 + temp[x1:x2,y1:y2]=imgb[1024:2048,0:2048] + ########## zone 2 ################### + x1=0 + x2=x1+1024 + + y1=6784-2048 + y2=y1+2048 + temp[x1:x2,y1:y2]=imgb[0:1024,2048:4096] + ########## zone 3 + x1=2688 + x2=x1+1024 + + y1=6784-2048 + y2=y1+2048 + temp[x1:x2,y1:y2]=imgb[1024:2048,2048:4096] + + self.image_b=temp + + ############################################################################## + imgr=self.image_r.copy() + temp=np.zeros((3712,6784)) + ########## zone 1 + x1=0 + x2=x1+1536 + + y1=0 + y2=y1+3072 + temp[x1:x2,y1:y2]=imgr[0:1536, 0:3072] + ########## zone 4 ################# + x1=2176 + x2=x1+1536 + + y1=0 + y2=y1+3072 + temp[x1:x2,y1:y2]=imgr[1536:3712,0:3072] + ########## zone 2 ################### + x1=0 + x2=x1+1536 + + y1=6784-3072 + y2=y1+3072 + temp[x1:x2,y1:y2]=imgr[0:1536,3072:6144] + ########## zone 3 + x1=2176 + x2=x1+1536 + + y1=6784-3072 + y2=y1+3072 + temp[x1:x2,y1:y2]=imgr[1536:3072,3072:6144] + + self.image_r=temp + + return +############################################################################## + + def writeOutputs(self): + """ + Writes out a FITS file using PyFITS and converts the image array to 16bit unsigned integer as + appropriate for VIS. + + Updates header with the input values and flags used during simulation. + """ + + ## Readout information + self.source='sci' + now=datetime.now() + data_time=now.strftime("%Y-%m-%d %H:%M:%S") + exp_endtime=now.strftime("%Y%m%d%H%M%S") + start=now-timedelta(seconds=self.information['exptime']) + exp_starttime=start.strftime("%Y%m%d%H%M%S") + + #write the actual file + obsid=300000000+1 + + data_time=self.dt.strftime("%Y-%m-%d %H:%M:%S") + + exp_starttime=self.dt.strftime("%Y%m%d%H%M%S") + ### exposure end time is t2 ; + t2=self.dt+timedelta(seconds=self.information['exptime']) + exp_endtime=t2.strftime("%Y%m%d%H%M%S") + t3=self.dt+timedelta(seconds=self.information['exptime'])+timedelta(seconds=self.information['readouttime']) + + filename_b='CSST_IFS_B_'+self.source+'_'+exp_starttime+'_'+exp_endtime+'_'+str(obsid)+'_X_L0_VER_'+self.information['img_ver']+'.fits' + file_b=self.result_path+'/sky_Data/'+filename_b + + filename_r='CSST_IFS_R_'+self.source+'_'+exp_starttime+'_'+exp_endtime+'_'+str(obsid)+'_X_L0_VER_'+self.information['img_ver']+'.fits' + file_r=self.result_path+'/sky_Data/'+filename_r + + + #create a new FITS file, using HDUList instance + ofd_b = fits.PrimaryHDU() + + ofd_b.header['GROUPS']=( bool(False), 'always F') + ofd_b.header['DATE'] =( data_time, 'date this file was written' ) + + ofd_b.header['FILENAME']=(filename_b, ' file name C48 ') + ofd_b.header['OBSTYPE'] =( self.source, 'observation type raw,flt, mask, bias, dark, sci') + ofd_b.header['TELESCOP']=('CSST', 'always CSST') + ofd_b.header['INSTRUME']=( 'IFS', ' ') + ofd_b.header['RADECSYS']=('ICRS', ' always ICRS ') + ofd_b.header['EQUINOX'] =( float(2000.0), 'always 2000.0') + ofd_b.header['FITSCREA']=( '4.2.1', 'FITS create software version') + + ######### Object information ############# + + ofd_b.header['OBJECT']=( self.information['name_obj'], 'object name') + ofd_b.header['TARGET']=( (self.information['target']), 'target name, hhmmss+ddmmss') + ofd_b.header['OBJ_RA'] =(np.float64(self.information['ra_obj']) , 'RA of the object in deg') + ofd_b.header['OBJ_DEC']=(np.float64(self.information['dec_obj']) , 'DEC of the object in deg') + + ofd_b.header['RA_PNT0']=( np.float64(self.information['ra_pnt0']) , 'RA of the pointing (degrees) at EXPSTART') + ofd_b.header['DEC_PNT0']=(np.float64(self.information['dec_pnt0']) , 'DEC of the pointing (degrees) at EXPSTART') + + + + ############## + ofd_b.header['OBSID'] =(str(obsid) , 'observation ID, 3+8bit') + + ######## Telescope information ############### + # ofd_b.header['COMMENT'] ='==========================================================' + # ofd_b.header['COMMENT'] ='Telescope information' + # ofd_b.header['COMMENT'] ='==========================================================' + + ofd_b.header['REFFRAME']=('CSSTGSC-1.0' , 'guide star catalog version') + ofd_b.header['DATE-OBS']=(data_time , 'date of the observation (yyyy-mm-dd hh:mm:ss)') + + ofd_b.header['EXPSTART']=(np.float64(time2jd(self.dt)), 'exposure start time') + ofd_b.header['SUNANGL0']=(np.float32(0.0) , 'angle between sun and optical axis at EXPSTART') + ofd_b.header['MOONANG0']=(np.float32(0.0) , 'angle between moon and optical axis at EXPSTART') + ofd_b.header['POS_ANG0']=(np.float64(0.0), 'angle between optical axis and the North Pole at EXPSTART in arcsec') + ofd_b.header['TEL_ALT0']=(np.float64(0.0), 'angle between optical axis and the ground- piston at EXPSTART in deg') + + ofd_b.header['HOODSTA0']=(np.float32(0.0) , 'lens hood altitude at EXPSTART') + ofd_b.header['HOODANG0']=(np.float32(0.0), 'lens hood azimuth at EXPSTART') + ofd_b.header['POSI0_X'] =(np.float64(self.information['POSI0_X']) , 'the orbital position of CSST in X direction at EXPSTART') + ofd_b.header['POSI0_Y'] =(np.float64(self.information['POSI0_Y']) , 'the orbital position of CSST in Y direction at EXPSTART') + ofd_b.header['POSI0_Z'] =(np.float64(self.information['POSI0_Z']) , 'the orbital position of CSST in Z direction at EXPSTART') + ofd_b.header['VELO0_X']=( np.float64(self.information['VELO0_X']) , 'the orbital velocity of CSST in X direction at EXPSTART') + ofd_b.header['VELO0_Y']=( np.float64(self.information['VELO0_Y']) , 'the orbital velocity of CSST in Y direction at EXPSTART') + ofd_b.header['VELO0_Z']=( np.float64(self.information['VELO0_Z']) , 'the orbital velocity of CSST in Z direction at EXPSTART') + + ofd_b.header['Euler0_1']=( np.float64(0.0), 'Euler angle 1 at EXPSTART') + ofd_b.header['Euler0_2']=( np.float64(0.0), 'Euler angle 2 at EXPSTART') + ofd_b.header['Euler0_3']=( np.float64(0.0), 'Euler angle 3 at EXPSTART') + + + ofd_b.header['EXPEND'] =(np.float64(time2jd(t2)) , 'exposure end time') + + ofd_b.header['SUNANGL1']=(np.float32(0.0), 'angle between sun and optical axis at EXPEND') + ofd_b.header['MOONANG1']=(np.float32(0.0) , 'angle between moon and optical axis at EXPEND ') + ofd_b.header['POS_ANG1']=(np.float64(0.0) , 'angle between optical axis and the North Pole at EXPEND in arcsec') + ofd_b.header['TEL_ALT1']=(np.float64(0.0) , 'angle between optical axis and the ground- piston at EXPEND in deg ') + ofd_b.header['HOODSTA1']=(np.float32(0.0), 'lens hood altitude at EXPEND ') + ofd_b.header['HOODANG1']=(np.float32(0.0), 'lens hood azimuth at EXPEND ') + + ofd_b.header['POSI1_X'] =(np.float64(self.information['POSI1_X']) , 'the orbital position of CSST in X direction at EXPEND') + ofd_b.header['POSI1_Y'] =(np.float64(self.information['POSI1_Y']) , 'the orbital position of CSST in Y direction at EXPEND') + ofd_b.header['POSI1_Z'] =(np.float64(self.information['POSI1_Z']) , 'the orbital position of CSST in Z direction at EXPEND') + + ofd_b.header['VELO1_X']=(np.float64(self.information['VELO1_X']) , 'the orbital velocity of CSST in X direction at EXPEND') + ofd_b.header['VELO1_Y']=(np.float64(self.information['VELO1_Y']) , 'the orbital velocity of CSST in Y direction at EXPEND') + ofd_b.header['VELO1_Z']=(np.float64(self.information['VELO1_Z']) , 'the orbital velocity of CSST in Z direction at EXPEND') + + + ofd_b.header['Euler1_1']=( np.float64(0.0), 'Euler angle 1 at EXPEND') + ofd_b.header['Euler1_2']=( np.float64(0.0), 'Euler angle 2 at EXPEND') + ofd_b.header['Euler1_3']=( np.float64(0.0), 'Euler angle 3 at EXPEND') + + ofd_b.header['RA_PNT1']=(np.float64(ofd_b.header['RA_PNT0']), 'RA of the pointing (degrees) at EXPEND in deg') + ofd_b.header['DEC_PNT1']=(np.float64(ofd_b.header['DEC_PNT0']), 'DEC of the pointing (degrees) at EXPEND in deg') + + ofd_b.header['EXPTIME']=(self.information['exptime'], 'exposure duration') + ofd_b.header['EPOCH'] =(np.float32(0.0), 'coordinate epoch') + ofd_b.header['CHECKSUM']=( 0 , 'hdu-checksum') + + ########## finish header for 0 layer + #############################################################################3 + ##### header + + b1= self.image_b[1856:3712,0:3392] #b4 + b2= self.image_b[1856:3712,3392:6784] #b3 + b3= self.image_b[0:1856,0:3392] #b1 + b4= self.image_b[0:1856,3392:6784] #b2 + + ####### do Flip the b2 b2 and b4 array in the up/down or left/right direction. + b2=np.fliplr(b2) ## left to right + b3=np.flipud(b3) ## down to up + + b4=np.fliplr(b4) ## left to right and down to up + b4=np.flipud(b4) + + + bb=np.hstack((b1,b2,b3,b4)) + + + #new image HDU, blue channel, layer 1 + hdu_b =fits.ImageHDU(data=np.uint16(bb)) + + ######### instrument information ###### + ##### + hdu_b.header['PMIRRPOS']=(bool(False), 'FSM pointing,T: to MCI, F: not to MCI') + + if self.source =='sci': + hdu_b.header['CMIRRPOS']=(bool(False), 'position of calibration switch mirror,T: for calibration, F: not') + else: + hdu_b.header['CMIRRPOS']=(bool(True), 'position of calibration switch mirror,T: for calibration, F: not') + + if self.source=='flat': + hdu_b.header['FLAMP'] =(int(1), 'status of flat lamp,0: off, 1: , 2: ') + else: + hdu_b.header['FLAMP'] =(int(0), 'status of flat lamp,0: off, 1: , 2: ') + + + if self.source=='lamp': + hdu_b.header['ALAMP'] =(int(1),'status of atomic emission line lamp,0: off, 1: , 2: ') + else: + hdu_b.header['ALAMP'] =(int(0),'status of atomic emission line lamp,0: off, 1: , 2: ') + + ############# + hdu_b.header['IFSMODE'] =(int(0), 'IFS working mode') + hdu_b.header['IFSTEMP'] =(float(0.0), 'IFS components temperature in degC') + hdu_b.header['IFSSTAT'] =(int(0), 'IFS components status parameter') + ############################################################################## + ################### detector information############################# + # hdu_b.header['COMMENT'] ='==========================================================' + # hdu_b.header['COMMENT'] ='Detector information' + # hdu_b.header['COMMENT'] ='==========================================================' + + hdu_b.header['CAMERA'] =('Blue','camera of IFS') + hdu_b.header['DETNAM'] =('CCD231-c4','detector name') + hdu_b.header['DETSIZE'] =('', 'detector size') + hdu_b.header['DATASEC'] =('', 'data section') + hdu_b.header['PIXSCAL1']=(1856, 'pixel scale for axis 1') + hdu_b.header['PIXSCAL2']=(3392*4, 'pixel scale for axis 2') + hdu_b.header['PIXSIZE1']=(15, 'pixel size in um') + hdu_b.header['PIXSIZE2']=(15, 'pixel size in um') + hdu_b.header['NCHAN'] =(4, 'number of readout channels') + hdu_b.header['NCHAN1'] =(2, 'number of horizontal channels') + hdu_b.header['NCHAN2'] =(2, 'number of verticalchannels') + hdu_b.header['PSCAN1'] =(0, 'horizontal prescan width, per readout channel') + hdu_b.header['PSCAN2'] =(0, 'vertical prescan width, per readout channel') + hdu_b.header['OSCAN1'] =(0,' horizontal overscan width, per readout channel') + hdu_b.header['OSCAN2'] =(0, 'vertical overscan width, per readout channel') + + ## Readout information + # hdu_b.header['COMMENT'] ='=============================================================' + # hdu_b.header['COMMENT'] ='Readout information' + # hdu_b.header['COMMENT'] ='=============================================================' + + + hdu_b.header['READT0'] =(np.float64(time2jd(t2)),'read start time (UTC)') + hdu_b.header['READT1'] =(np.float64(time2jd(t3)), 'read end time (UTC)') + + hdu_b.header['DETTEMP0']=(np.float32(0.0), 'detector temperature at READT0') + hdu_b.header['DETTEMP1']=(np.float32(0.0), 'detector temperature at READT1') + hdu_b.header['BIN_X'] =(0, 'bin number in X (wavelength)') + hdu_b.header['BIN_Y'] =(0, 'bin number in Y (spatial)') + + hdu_b.header['GAIN1'] =(self.information['gain4_b'],'CCD gain (channel 1)') + hdu_b.header['GAIN2'] =(self.information['gain3_b'],'CCD gain (channel 2)') + hdu_b.header['GAIN3'] =(self.information['gain1_b'],'CCD gain (channel 3)') + hdu_b.header['GAIN4'] =(self.information['gain2_b'],'CCD gain (channel 4)') + + hdu_b.header['DARK1'] =(self.information['dark4_b'],'CCD dark (channel 1)') + hdu_b.header['DARK2'] =(self.information['dark3_b'],'CCD dark (channel 2)') + hdu_b.header['DARK3'] =(self.information['dark1_b'],'CCD dark (channel 3)') + hdu_b.header['DARK4'] =(self.information['dark2_b'],'CCD dark (channel 4)') + + + hdu_b.header['RDNOIS1'] =(self.information['rn4_b'],'read noise (channel 1') + hdu_b.header['RDNOIS2'] =(self.information['rn3_b'],'read noise (channel 2') + hdu_b.header['RDNOIS3'] =(self.information['rn1_b'],'read noise (channel 3') + hdu_b.header['RDNOIS4'] =(self.information['rn2_b'],'read noise (channel 4') + + hdu_b.header['DETBIA1'] =(self.information['bias4_b'],'amplifier bias voltage (channel1)') + hdu_b.header['DETBIA2'] =(self.information['bias3_b'],'amplifier bias voltage (channel2)') + hdu_b.header['DETBIA3'] =(self.information['bias1_b'],'amplifier bias voltage (channel3)') + hdu_b.header['DETBIA4'] =(self.information['bias2_b'],'amplifier bias voltage (channel4)') + + hdu_b.header['RDSPEED'] =(100,'read speed (in MHz)') + + hdu_b.header['EXPTIME'] =(self.information['exptime'],'exposure time in seconds') + + hdu_b.header['Img_Ver'] =(self.information['img_ver'], 'IFS CCD image Version') + + hdu_b.header['sky_obj'] =(self.skyfilepath,'input sky fits filepath') + + + ########################################################## + #################### red camera ###################### + + + #create a new FITS file, using HDUList instance + ofd_r = fits.PrimaryHDU() + + ofd_r.header['GROUPS']=( bool(False), 'always F') + ofd_r.header['DATE'] =( data_time, 'date this file was written' ) + + ofd_r.header['FILENAME']=(filename_r, ' file name C48 ') + + ofd_r.header['OBSTYPE'] =( self.source, 'observation type raw,flt, mask, bias, dark, sci') + + ofd_r.header['TELESCOP']=('CSST' , 'always CSST') + ofd_r.header['INSTRUME']=( 'IFS', ' ') + ofd_r.header['RADECSYS']=('ICRS', ' always ICRS ') + ofd_r.header['EQUINOX'] =( float(2000.0), 'always 2000.0') + ofd_r.header['FITSCREA']=( '4.2.1' , 'FITS create software version') + ######### Object information ############# + + ######### Object information ############# + # ofd_r.header['COMMENT']='=======================================================================' + # ofd_r.header['COMMENT']='Object information' + # ofd_r.header['COMMENT']='=======================================================================' + + ofd_r.header['OBJECT']=( self.information['name_obj'], 'object name') + ofd_r.header['TARGET']=( (self.information['target']), 'target name, hhmmss+ddmmss') + ofd_r.header['OBJ_RA'] =(np.float64(self.information['ra_obj']) , 'RA of the object in deg') + ofd_r.header['OBJ_DEC']=(np.float64(self.information['dec_obj']) , 'DEC of the object in deg') + + ofd_r.header['RA_PNT0']=( np.float64(self.information['ra_pnt0']) , 'RA of the pointing (degrees) at EXPSTART') + ofd_r.header['DEC_PNT0']=(np.float64(self.information['dec_pnt0']) , 'DEC of the pointing (degrees) at EXPSTART') + + ofd_r.header['OBSID'] =(str(obsid) , 'observation ID, 3+8bit ') + + ######## Telescope information ############### + # ofd_r.header['COMMENT']='=======================================================================' + # ofd_r.header['COMMENT']='Telescope information' + # ofd_r.header['COMMENT']='=======================================================================' + + ofd_r.header['REFFRAME']=('CSSTGSC-1.0' , 'guide star catalog version ') + ofd_r.header['DATE-OBS']=(data_time , 'date of the observation (yyyy-mm-dd hh:mm:ss)') + + ofd_r.header['EXPSTART']=(np.float64(exp_starttime), 'exposure start time ') + ofd_r.header['SUNANGL0']=(np.float32(0.0) , 'angle between sun and optical axis at EXPSTART ') + ofd_r.header['MOONANG0']=(np.float32(0.0) , 'angle between moon and optical axis at EXPSTART ') + ofd_r.header['POS_ANG0']=(np.float64(0.0), 'angle between optical axis and the North Pole at EXPSTART in arcsec ') + ofd_r.header['TEL_ALT0']=(np.float64(0.0), 'angle between optical axis and the ground- piston at EXPSTART in deg ') + ofd_r.header['HOODSTA0']=(np.float32(0.0) , 'lens hood altitude at EXPSTART ') + ofd_r.header['HOODANG0']=(np.float32(0.0), 'lens hood azimuth at EXPSTART ') + ofd_r.header['POSI0_X'] =(np.float64(self.information['POSI0_X']) , 'the orbital position of CSST in X direction at EXPSTART') + ofd_r.header['POSI0_Y'] =(np.float64(self.information['POSI0_Y']) , 'the orbital position of CSST in Y direction at EXPSTART') + ofd_r.header['POSI0_Z'] =(np.float64(self.information['POSI0_Z']) , 'the orbital position of CSST in Z direction at EXPSTART') + ofd_r.header['VELO0_X']=( np.float64(self.information['VELO0_X']) , 'the orbital velocity of CSST in X direction at EXPSTART') + ofd_r.header['VELO0_Y']=( np.float64(self.information['VELO0_Y']) , 'the orbital velocity of CSST in Y direction at EXPSTART') + ofd_r.header['VELO0_Z']=( np.float64(self.information['VELO0_Z']) , 'the orbital velocity of CSST in Z direction at EXPSTART') + + ofd_r.header['Euler0_1']=( np.float64(0.0), 'Euler angle 1 at EXPSTART') + ofd_r.header['Euler0_2']=( np.float64(0.0), 'Euler angle 2 at EXPSTART') + ofd_r.header['Euler0_3']=( np.float64(0.0), 'Euler angle 3 at EXPSTART') + + ofd_r.header['EXPEND'] =(np.float64(exp_endtime) , 'exposure end time') + + ofd_r.header['SUNANGL1']=(np.float32(0.0), 'angle between sun and optical axis at EXPEND') + ofd_r.header['MOONANG1']=(np.float32(0.0) , 'angle between moon and optical axis at EXPEND ') + ofd_r.header['POS_ANG1']=(np.float64(0.0) , 'angle between optical axis and the North Pole at EXPEND in arcsec') + ofd_r.header['TEL_ALT1']=(np.float64(0.0) , 'angle between optical axis and the ground- piston at EXPEND in deg ') + ofd_r.header['HOODSTA1']=(np.float32(0.0), 'lens hood altitude at EXPEND ') + ofd_r.header['HOODANG1']=(np.float32(0.0), 'lens hood azimuth at EXPEND ') + + ofd_r.header['POSI1_X'] =(np.float64(self.information['POSI1_X']) , 'the orbital position of CSST in X direction at EXPEND') + ofd_r.header['POSI1_Y'] =(np.float64(self.information['POSI1_Y']) , 'the orbital position of CSST in Y direction at EXPEND') + ofd_r.header['POSI1_Z'] =(np.float64(self.information['POSI1_Z']) , 'the orbital position of CSST in Z direction at EXPEND') + + ofd_r.header['VELO1_X']=(np.float64(self.information['VELO1_X']) , 'the orbital velocity of CSST in X direction at EXPEND') + ofd_r.header['VELO1_Y']=(np.float64(self.information['VELO1_Y']) , 'the orbital velocity of CSST in Y direction at EXPEND') + ofd_r.header['VELO1_Z']=(np.float64(self.information['VELO1_Z']) , 'the orbital velocity of CSST in Z direction at EXPEND') + + ofd_r.header['Euler1_1']=( np.float64(0.0), 'Euler angle 1 at EXPEND') + ofd_r.header['Euler1_2']=( np.float64(0.0), 'Euler angle 2 at EXPEND') + ofd_r.header['Euler1_3']=( np.float64(0.0), 'Euler angle 3 at EXPEND') + + ofd_r.header['RA_PNT1']=(np.float64(ofd_r.header['RA_PNT0']), 'RA of the pointing (degrees) at EXPEND in deg') + ofd_r.header['DEC_PNT1']=(np.float64(ofd_r.header['DEC_PNT0']), 'DEC of the pointing (degrees) at EXPEND in deg') + + ofd_r.header['EXPTIME']=(self.information['exptime'], 'exposure duration') + ofd_r.header['EPOCH'] =(np.float32(0.0), 'coordinate epoch') + ofd_r.header['CHECKSUM']=( 0 , 'hdu-checksum') + + ### finish 0 layer header + + ########## finish header for 0 layer + + # ########## blue zone 1--to--3 + # self.image_r[0:1856,0:3392] += self.information['bias1_r'] + + # ########## zone 4 --to---1 ################# + # self.image_r[1856:3712,0:3392] += self.information['bias4_r'] + + # ########## zone 2 ----to----4 ################### + # self.image_r[0:1856,3392:6784] += self.information['bias2_r'] + + # ########## zone 3 ---to------2 + # self.image_r[1856:3712,3392:6784] += self.information['bias3_r'] + #############################################################################3 + ##### header + + b1= self.image_r[1856:3712,0:3392] + b2= self.image_r[1856:3712,3392:6784] + b3= self.image_r[0:1856,0:3392] + b4= self.image_r[0:1856,3392:6784] + + + ####### do Flip the b2 b2 and b4 array in the up/down or left/right direction. + b2=np.fliplr(b2) ## left to right + b3=np.flipud(b3) ## down to up + + b4=np.fliplr(b4) ## left to right and down to up + b4=np.flipud(b4) + + + + rr=np.hstack((b1,b2,b3,b4)) + #new image HDU, blue channel, layer 1 + hdu_r =fits.ImageHDU(data=np.uint16(rr)) + + + ######################################### + ######### instrument information ###### + hdu_r.header['PMIRRPOS']=(bool(False), 'FSM pointing,T: to MCI, F: not to MCI') + + + hdu_r.header['CMIRRPOS']=(bool(False), 'position of calibration switch mirror,T: for calibration, F: not') + + hdu_r.header['FLAMP'] =(int(0), 'status of flat lamp,0: off, 1: , 2: ') + + hdu_r.header['ALAMP'] =(int(0),'status of atomic emission line lamp,0: off, 1: , 2: ') + + hdu_r.header['IFSMODE'] =(int(0), 'IFS working mode') + hdu_r.header['IFSTEMP'] =(float(0.0), 'IFS components temperature in degC') + hdu_r.header['IFSSTAT'] =(int(0), 'IFS components status parameter') + + ################### detector information############################# + # hdu_r.header['COMMENT']='=======================================================================' + # hdu_r.header['COMMENT']='Detector information' + # hdu_r.header['COMMENT']='=======================================================================' + + hdu_r.header['CAMERA'] =('Red','camera of IFS') + hdu_r.header['DETNAM'] =('CCD231-c4','detector name') + hdu_r.header['DETSIZE'] =('', 'detector size') + hdu_r.header['DATASEC'] =('', 'data section') + hdu_r.header['PIXSCAL1']=(1856, 'pixel scale for axis 1') + hdu_r.header['PIXSCAL2']=(3392*4, 'pixel scale for axis 2') + hdu_r.header['PIXSIZE1']=(15, 'pixel size in um') + hdu_r.header['PIXSIZE2']=(15, 'pixel size in um') + hdu_r.header['NCHAN'] =(4, 'number of readout channels') + hdu_r.header['NCHAN1'] =(2, 'number of horizontal channels') + hdu_r.header['NCHAN2'] =(2, 'number of verticalchannels') + hdu_r.header['PSCAN1'] =(0, 'horizontal prescan width, per readout channel') + hdu_r.header['PSCAN2'] =(0, 'vertical prescan width, per readout channel') + hdu_r.header['OSCAN1'] =(0,' horizontal overscan width, per readout channel') + hdu_r.header['OSCAN2'] =(0, 'vertical overscan width, per readout channel') + +##################################################################################################### + ## Readout information + # hdu_r.header['COMMENT']='=======================================================================' + # hdu_r.header['COMMENT']='Readout information' + # hdu_r.header['COMMENT']='=======================================================================' + + + + hdu_r.header['READT0'] =(np.float64(time2jd(t2)),'read start time (UTC)') + hdu_r.header['READT1'] =(np.float64(time2jd(t3)), 'read end time (UTC)') + + hdu_r.header['DETTEMP0']=(np.float32(0.0), 'detector temperature at READT0') + hdu_r.header['DETTEMP1']=(np.float32(0.0), 'detector temperature at READT1') + hdu_r.header['BIN_X'] =(0, 'bin number in X (wavelength)') + hdu_r.header['BIN_Y'] =(0, 'bin number in Y (spatial)') + + hdu_r.header['GAIN1'] =(self.information['gain4_r'],'CCD gain (channel 1)') + hdu_r.header['GAIN2'] =(self.information['gain3_r'],'CCD gain (channel 2)') + hdu_r.header['GAIN3'] =(self.information['gain1_r'],'CCD gain (channel 3)') + hdu_r.header['GAIN4'] =(self.information['gain2_r'],'CCD gain (channel 4)') + + + hdu_r.header['DARK1'] =(self.information['dark4_r'],'CCD dark (channel 1)') + hdu_r.header['DARK2'] =(self.information['dark3_r'],'CCD dark (channel 2)') + hdu_r.header['DARK3'] =(self.information['dark1_r'],'CCD dark (channel 3)') + hdu_r.header['DARK4'] =(self.information['dark2_r'],'CCD dark (channel 4)') + + + hdu_r.header['RDNOIS1'] =(self.information['rn4_r'],'read noise (channel 1') + hdu_r.header['RDNOIS2'] =(self.information['rn3_r'],'read noise (channel 2') + hdu_r.header['RDNOIS3'] =(self.information['rn1_r'],'read noise (channel 3') + hdu_r.header['RDNOIS4'] =(self.information['rn2_r'],'read noise (channel 4') + + hdu_r.header['DETBIA1'] =(self.information['bias4_r'],'amplifier bias voltage (channel1)') + hdu_r.header['DETBIA2'] =(self.information['bias3_r'],'amplifier bias voltage (channel2)') + hdu_r.header['DETBIA3'] =(self.information['bias1_r'],'amplifier bias voltage (channel3)') + hdu_r.header['DETBIA4'] =(self.information['bias2_r'],'amplifier bias voltage (channel4)') + + hdu_r.header['RDSPEED'] =(100,'read speed (in MHz)') + + hdu_r.header['EXPTIME'] =(self.information['exptime'],'exposure time in seconds') + + hdu_r.header['Img_Ver'] =(self.information['img_ver'], 'IFS CCD image Version') + + hdu_r.header['sky_obj'] =(self.skyfilepath,'input sky fits filename') + + + + hdulist_b=fits.HDUList([ofd_b, hdu_b]) + hdulist_b.writeto(file_b, overwrite=True) + #print('IFS_b.fits is created ') + + hdulist_r=fits.HDUList([ofd_r, hdu_r]) + hdulist_r.writeto(file_r, overwrite=True) + #print('IFS_r.fits is created ') + ################################################################################## + + def earthshine(self,theta): + """ + For given theta angle, return the earth-shine spectrum. + + :param theta: angle (in degree) from the target to earth limb. + :return: the scaled solar spectrum + template_wave: unit in A + template_flux: unit in erg/s/cm^2/A/arcsec^2 + + """ + + # read solar template + solar_template = pd.read_csv(self.information['indata_path']+'/refs/solar_spec.dat', sep='\s+', + header=None, comment='#') + template_wave = solar_template[0].values + template_flux = solar_template[1].values + + # read earth shine surface brightness + earthshine_curve = pd.read_csv(self.information['indata_path']+'/refs/earthshine.dat', + header=None, comment='#') + angle = earthshine_curve[0].values + surface_brightness = earthshine_curve[1].values + + # read V-band throughtput + cat_filter_V = pd.read_csv(self.information['indata_path']+'/refs/filter_Bessell_V.dat', sep='\s+', + header=None, comment='#') + filter_wave = cat_filter_V[0].values + filter_response = cat_filter_V[1].values + + # interplate to the target wavelength in V-band + ind_filter = (template_wave >= np.min(filter_wave)) & (template_wave <= np.max(filter_wave)) + filter_wave_interp = template_wave[ind_filter] + filter_response_interp = np.interp(filter_wave_interp, filter_wave, filter_response) + + filter_constant = simps(filter_response_interp * filter_wave_interp, filter_wave_interp) + template_constant = simps(filter_response_interp * template_wave[ind_filter] * template_flux[ind_filter], + template_wave[ind_filter]) + dwave = filter_wave_interp[1:] - filter_wave_interp[:-1] + wave_eff = np.nansum(dwave * filter_wave_interp[1:] * filter_response_interp[1:]) / \ + np.nansum(dwave * filter_response_interp[1:]) + + # get the normalized value at theta. + u0 = np.interp(theta, angle, surface_brightness) # mag/arcsec^2 + u0 = 10**((u0 + 48.6)/(-2.5)) # target flux in erg/s/cm^2/Hz unit + u0 = u0 * 3e18 / wave_eff**2 # erg/s/cm^2/A/arcsec^2 + + factor = u0 * filter_constant / template_constant + norm_flux = template_flux * factor # erg/s/cm^2/A/arcsec^2 + + self.earthshine_wave=template_wave # A + self.earthshine_flux=norm_flux + + return + + +######################################################################################################################################################################################################################################################## + + + def zodiacal(self, ra, dec, time): + """ + For given RA, DEC and TIME, return the interpolated zodical spectrum in Leinert-1998. + + :param ra: RA in unit of degree, ICRS frame + :param dec: DEC in unit of degree, ICRS frame + :param time: the specified string that in ISO format i.e., yyyy-mm-dd. + :return: + wave_A: wavelength of the zodical spectrum + spec_mjy: flux of the zodical spectrum, in unit of MJy/sr + spec_erg: flux of the zodical spectrum, in unit of erg/s/cm^2/A/sr + + """ + + # get solar position + dt = datetime.fromisoformat(time) + jd = julian.to_jd(dt, fmt='jd') + t = Time(jd, format='jd', scale='utc') + + astro_sun = get_sun(t) + ra_sun, dec_sun = astro_sun.gcrs.ra.deg, astro_sun.gcrs.dec.deg + + radec_sun = SkyCoord(ra=ra_sun*u.degree, dec=dec_sun*u.degree, frame='gcrs') + lb_sun = radec_sun.transform_to('geocentrictrueecliptic') + + # get offsets between the target and sun. + radec_obj = SkyCoord(ra=ra*u.degree, dec=dec*u.degree, frame='icrs') + lb_obj = radec_obj.transform_to('geocentrictrueecliptic') + + beta = abs(lb_obj.lat.degree) + lamda = abs(lb_obj.lon.degree - lb_sun.lon.degree) + + # interpolated zodical surface brightness at 0.5 um + zodi = pd.read_csv(self.information['indata_path']+'/refs/zodi_map.dat', sep='\s+', header=None, comment='#') + beta_angle = np.array([0, 5, 10, 15, 20, 25, 30, 45, 60, 75]) + lamda_angle = np.array([0, 5, 10, 15, 20, 25, 30, 35, 40, 45, + 60, 75, 90, 105, 120, 135, 150, 165, 180]) + xx, yy = np.meshgrid(beta_angle, lamda_angle) + f = interpolate.interp2d(xx, yy, zodi, kind='linear') + zodi_obj = f(beta, lamda) # 10^−8 W m−2 sr−1 um−1 + + # read the zodical spectrum in the ecliptic + cat_spec = pd.read_csv(self.information['indata_path']+'/refs/solar_spec.dat', sep='\s+', header=None, comment='#') + wave = cat_spec[0].values # A + spec0 = cat_spec[1].values # 10^-8 W m^−2 sr^−1 μm^−1 + zodi_norm = 252 # 10^-8 W m^−2 sr^−1 μm^−1 + + spec = spec0 * (zodi_obj / zodi_norm) * 1e-8 # W m^−2 sr^−1 μm^−1 + + # convert to the commonly used unit of MJy/sr, erg/s/cm^2/A/sr + wave_A = wave # A + spec_mjy = spec * 0.1 * wave_A**2 / 3e18 * 1e23 * 1e-6 # MJy/sr + spec_erg = spec * 0.1 # erg/s/cm^2/A/sr + spec_erg2 = spec_erg / 4.25452e10 # erg/s/cm^2/A/arcsec^2 + + self.zodiacal_wave=wave_A # in A + self.zodiacal_flux=spec_erg2 + + return + ################################################################################### + ################################################################################## + def CalskyNoise(self, lam): + + + # calculate sky noise; + planckh= 6.62620*10**-27 # erg s; + cc=2.99792458*10**17 # in nm/s + fov2=0.01 # arcsec^2 + + # lam is input wavelength in nm + + ########################################## + self.earthshine_wave # A + self.earthshine_flux # erg/s/cm^2/A/arcsec^2 + earthshine_flux=np.interp(lam*10.0, self.earthshine_wave,self.earthshine_flux) # flux from zodiacal + + self.zodiacal_wave # in A + self.zodiacal_flux # erg/s/cm^2/A/arcsec^2 + zodiacal_flux=np.interp(lam*10.0, self.zodiacal_wave,self.zodiacal_flux) # flux from zodiacal + fluxlam_sky=(earthshine_flux+zodiacal_flux)*fov2 # erg/s/cm2/A + ############### + + ephoton=planckh*cc/lam # in erg/photon, cc与lambdaå•ä½éœ€è¦ä¸€è‡´ï¼› + Ns_skynoise=fluxlam_sky/ephoton # in unit of photons/cm2/s/A + + + return Ns_skynoise + + + ################################################################################# + def sim_sky_img(self,skyfitsfilename, skyRa_shift, skyDec_shift, sky_rot, exposuretime): + + + ############################################################################ + ### load fits file + indatafile=skyfitsfilename + a=fits.open(indatafile) + ####################################### + self.information['name_obj']=a[0].header['OBJECT'] + self.information['ra_obj'] =a[0].header['RA'] ### in degree + self.information['dec_obj'] =a[0].header['DEC'] ### in degree + + disRa =(skyRa_shift)/3600.0 ##convert unit of degree to arcsec + disDec=(skyDec_shift)/3600.0 ##convert unit of degree to arcsec + + self.information['ra_pnt0'] =a[0].header['RA'] + disRa/np.cos(a[0].header['DEC']/180.0*np.pi) + self.information['dec_pnt0']=a[0].header['DEC']+ disDec + + self.earthshine(self.earthshine_theta) + + self.zodiacal(self.information['ra_obj'], self.information['dec_obj'], self.zodiacal_time) + + self.information['target']=deg2HMS(self.information['ra_obj'], self.information['dec_obj']) + + + ### main input data + SpecCube=a[1].data ## spectrum data cube; + + Wave=0.1*a[2].data # the relatived wavelength which is converted from Unit A to nm + #print('Wave data header', hdr) + + ###################################################################################### + + exptime=self.information['exptime'] #exposure time + + dis_dx=disRa # image shift Ra in arcsec + dis_dy=disDec # image shift Dec in arcsec + + sizeout= len(SpecCube[:,0,0]) + + blue_img=galsim.Image(np.zeros((2048,4096)),copy=True) + blue_img.scale=self.pixelscale + blue_img.setOrigin=(0,0) + + red_img=galsim.Image(np.zeros((3072,6144)),copy=True) + red_img.scale=self.pixelscale + red_img.setOrigin=(0,0) + + blue_sensor=galsim.Sensor() + + red_sensor=galsim.Sensor() + + deltalam=np.mean(np.diff(Wave)) + + energy=0.0 + + energy_blue=0.0 + energy_red=0.0 + + width_blue=0 + ################################ + ############## doppler effect to photons.wavelength ############# + + #self.orbit_pars + x_sat=float(self.orbit_pars[self.orbit_exp_num,1]) + y_sat=float(self.orbit_pars[self.orbit_exp_num,2]) + z_sat=float(self.orbit_pars[self.orbit_exp_num,3]) + vx_sat=float(self.orbit_pars[self.orbit_exp_num,4]) + vy_sat=float(self.orbit_pars[self.orbit_exp_num,5]) + vz_sat=float(self.orbit_pars[self.orbit_exp_num,6]) + + self.information['POSI0_X']=x_sat + self.information['POSI0_Y']=y_sat + self.information['POSI0_Z']=z_sat + self.information['VELO0_X']=vx_sat + self.information['VELO0_Y']=vy_sat + self.information['VELO0_Z']=vz_sat + + + theta1=beta_angle( x_sat,y_sat,z_sat,vx_sat,vy_sat,vz_sat, self.information['ra_obj'], self.information['dec_obj']) + + v1=np.sqrt(vx_sat**2+vy_sat**2+vz_sat**2)*np.cos(theta1/180.0*np.pi) # velocity at stat exposure time + vv1=LSR_velocity(self.information['ra_obj'],self.information['dec_obj'],v1, self.TianCe_day) + + + ################################################# + + ### exposure end time is t2 ; + t2=self.dt+timedelta(seconds=self.information['exptime']) + + t2jd=time2jd(t2) + + if self.orbit_pars[-1,0]<t2jd: ## orbit parameters are not in currenct txt file + self.orbit_file_num=self.orbit_file_num+1 + fn=self.information['indata_path']+'/refs/orbit20160925/'+str(self.orbit_file_num)+'.txt' + self.orbit_pars=np.loadtxt(fn) + self.orbit_exp_num=0 + + for k in range(self.orbit_exp_num, len(self.orbit_pars),1): + + if t2jd-self.orbit_pars[k,0]<0: + break + if k==0: + deltaT=jd2time(self.orbit_pars[k,0])-t2 + p1x=self.orbit_pars[k,1]-(self.orbit_pars[k+1,1]-self.orbit_pars[k,1])*deltaT.seconds/120 + p1y=self.orbit_pars[k,2]-(self.orbit_pars[k+1,2]-self.orbit_pars[k,2])*deltaT.seconds/120 + p1z=self.orbit_pars[k,3]-(self.orbit_pars[k+1,3]-self.orbit_pars[k,3])*deltaT.seconds/120 + + p1vx=self.orbit_pars[k,4]-(self.orbit_pars[k+1,4]-self.orbit_pars[k,4])*deltaT.seconds/120 + p1vx=self.orbit_pars[k,5]-(self.orbit_pars[k+1,5]-self.orbit_pars[k,5])*deltaT.seconds/120 + p1vx=self.orbit_pars[k,6]-(self.orbit_pars[k+1,6]-self.orbit_pars[k,6])*deltaT.seconds/120 + + else: + deltaT=jd2time(self.orbit_pars[k,0])-t2 + p1x=self.orbit_pars[k-1,1]+(self.orbit_pars[k,1]-self.orbit_pars[k-1,1])*deltaT.seconds/120 + p1y=self.orbit_pars[k-1,2]+(self.orbit_pars[k,2]-self.orbit_pars[k-1,2])*deltaT.seconds/120 + p1z=self.orbit_pars[k-1,3]+(self.orbit_pars[k,3]-self.orbit_pars[k-1,3])*deltaT.seconds/120 + + p1vx=self.orbit_pars[k-1,4]+(self.orbit_pars[k,4]-self.orbit_pars[k-1,4])*deltaT.seconds/120 + p1vy=self.orbit_pars[k-1,5]+(self.orbit_pars[k,5]-self.orbit_pars[k-1,5])*deltaT.seconds/120 + p1vz=self.orbit_pars[k-1,6]+(self.orbit_pars[k,6]-self.orbit_pars[k-1,6])*deltaT.seconds/120 + + ####### + self.information['POSI1_X']=p1x + self.information['POSI1_Y']=p1y + self.information['POSI1_Z']=p1z + self.information['VELO1_X']=p1vx + self.information['VELO1_Y']=p1vy + self.information['VELO1_Z']=p1vz + + theta2=beta_angle(p1x, p1y, p1z, p1vx, p1vy, p1vz,self.information['ra_obj'], self.information['dec_obj']) + + + v2=np.sqrt(p1vx**2+p1vy**2+p1vz**2)*np.cos(theta2/180.0*np.pi) # velocity at end exposure time + vv2=LSR_velocity(self.information['ra_obj'],self.information['dec_obj'], v2, self.TianCe_day) + + #### get slice and slit mask + + ######################################################################################## + for ilam in range(len(Wave)): + + #print('ilam=', ilam) + + if ilam%500==0: + + self.log.info('ilam = %i' % ilam) + + + lam=Wave[ilam] # the wavelength of the i-th frame data + + if lam<350: + continue + + ############################################### + Specimg=SpecCube[:,:,ilam] # get the i-th frame of the input SpecCube data; + Nspecimg=SpecCube2photon(Specimg,lam) # convert to photons/cm2/s/A + Nskynoise=self.CalskyNoise(lam) + + ### add sky noise + + if self.skyback: + Nimg=Nspecimg+Nskynoise + else: + Nimg=Nspecimg + + + # multipe the tel area, exposure time, and bandwidh; + Nimg=Nimg*self.telarea*exptime*deltalam*10.0 # photons/cm2/s/A to photons, here Nimg size is 100*100 + + + ########################################################################## + ### shift image with photons position and rotate them round the image true center + img=galsim.Image(Nimg,copy=True) + img.scale = self.pixelscale + img.setOrigin(0,0) + + photons=galsim.PhotonArray.makeFromImage(img, max_flux=max(Nimg.max()/1000.0, 1.0)) + + ### now shift and rotated photons + self.information['shift_dx']=dis_dx + self.information['shift_dy']=dis_dy + + photons.x=photons.x-dis_dx ### apply shift to photons position in ra direction + photons.y=photons.y-dis_dy ### apply shift to photons position in dec direction + + x2,y2=rotation_yan(img.true_center.x, img.true_center.y, photons.x/img.scale, photons.y/img.scale, sky_rot) + + #print('rotation time=', t2-t1) + + photons2=galsim.PhotonArray(N=len(x2), x=x2*img.scale, y=y2*img.scale, flux = photons.flux) + photons=photons2 + ## convert the photon image to galsim photons; + ################################################################### + + image0 = galsim.Image(sizeout,sizeout) + image0.scale = self.pixelscale + image0.setOrigin(0,0) + + rotphotons=galsim.PhotonArray(N=len(photons.x), x=x2, y=y2, flux = photons2.flux) + + sensor = galsim.Sensor() + sensor.accumulate(rotphotons, image0) + + ##################################### + ##################################################################### + ### do convolve image0 with PSF0 from primay CSST ### + ### calculate the PSF0 at this wavelength + + Q=lam*1e-3*self.Fnum/self.pixelsize + wavefront0=self.opd0/lam + wavefront=ndimage.rotate(wavefront0, -sky_rot, order=1, reshape=False) # here we choose reshape=False, rotate the wavefront + + psf0=anySampledPSF(wavefront, self.pupil , Q , 64) + + conv = fftconvolve(image0.array, psf0, mode='same') + conv[conv < 0.0] = 0.0 + img0=conv + + + ################ opd1 rms =0.075 @632.8nm + wavefront=self.opd1/lam + wavefront=ndimage.rotate(wavefront, -sky_rot, order=1, reshape=False) # here we choose reshape=False, rotate the wavefront + psf1=anySampledPSF(wavefront, self.pupil , Q , 32) + + ##### do convolve with psf1 + conv = fftconvolve(img0, psf1, mode='same') + conv[conv < 0.0] = 0.0 + img0=conv + + ####################################################### + + energy=energy+img0[50-32:50+32,50-32:50+32].sum() ## calculate the slice image energy; + + CCD_Qe_lam=np.interp(lam,self.CCD_Qe[:,0], self.CCD_Qe[:,1]) ## CCD quantum efficiency + + Qe_blue = np.interp(lam, self.optical_blue_Q[:,0], self.optical_blue_Q[:,1]) # optical efficiency , convert the wavelength to A + + Qe_red = np.interp(lam, self.optical_red_Q[:,0], self.optical_red_Q[:,1]) # optical efficiency, convert the wavelength to A + + Qe_blue=Qe_blue*CCD_Qe_lam + + Qe_red =Qe_red *CCD_Qe_lam + + lam1=lam*(1+vv1/(3.0*1e5)) + + lam2=lam*(1+vv2/(3.0*1e5)) + + ######## consider the slice optical efficiency in different slicer channel + da=fits.open(self.information['indata_path']+'/slicer_QE.fits') + slicer_Qe=da[0].data + img0=img0*slicer_Qe + ########## do the slice effect ################### + for k in range(32): + + #### do slice effect to get slice image + img1=img0*self.maskSlice[str(k)] + + ############ get opd2 and PSF2 ###################### + wavefront2=self.opd2/lam + psf2=anySampledPSF(wavefront2, self.pupil , Q , 64) + psf2=ndimage.rotate(psf2, -sky_rot, order=1, reshape=False) # here we choose reshape=False, the rotated image will + + ##### do convolve + ################## + conv = fftconvolve(img1, psf2, mode='same') + #suppress negative numbers + conv[conv < 0.0] = 0.0 + img2=conv + + ##############do Slit Mask ########################### + + img2=img2*self.maskSlit[str(k)] + + ######### get opd3 and PSF3 ########################## + + wavefront3=self.opd3/lam + psf3=anySampledPSF(wavefront3, self.pupil , Q , 64) + psf3=ndimage.rotate(psf3, -sky_rot, order=1, reshape=False) # here we choose reshape=False, the rotated image will + + ##### do convolve + ######################################## + conv = fftconvolve(img2, psf3, mode='same') + #suppress negative numbers + conv[conv < 0.0] = 0.0 + + img3=conv + + ######################## get subimage ##################### + subimage = galsim.Image(80,80) + subimage.array[:,:]=img3[int(sizeout/2)-40:int(sizeout/2)+40,int(sizeout/2)-40:int(sizeout/2)+40] + + + ######################## get photons from sub-image ##################### + subimage.scale = self.pixelscale + + subimage.setOrigin(0,0) + + photons=galsim.PhotonArray.makeFromImage(subimage, max_flux=max(img3.max()/1000.0,1.0)) + + ############################################################################# + ###### do something for each photons; + ####### + idx0=np.where( photons.flux>1e-3) + energy=energy+sum(photons.flux[idx0]) ### totla energy for slice image + p_num=len(idx0[0]) + + ############################################################################################### + ############### find photons for blue channel, and make the flux multiple the optical and CCD efficiency + + np.random.seed() + wavesample=lam1+(lam2-lam1)*np.random.rand(p_num) + + + if (lam>=350.0 and lam<=650.0): + ## bulue channel + photons_blue=galsim.PhotonArray(N=p_num, x=photons.x[idx0], y=photons.y[idx0], flux = Qe_blue*photons.flux[idx0],wavelength=wavesample) + + dx_blue, dy_blue = get_dx_dy_blue(wavesample) + + photons_blue.x=photons_blue.x/self.pixelscale+dx_blue+self.slice_blue['px'][k] + + photons_blue.y=photons_blue.y/self.pixelscale+dy_blue+self.slice_blue['py'][k] + + blue_sensor.accumulate(photons_blue, blue_img) + + energy_blue=energy_blue+sum(photons_blue.flux) + + width_blue=width_blue+deltalam/32.0 + + + + if (lam>=560.0) & (lam<=1000.0 ): + ## red channel + photons_red=galsim.PhotonArray(N=p_num,x=photons.x[idx0],y=photons.y[idx0], flux = Qe_red*photons.flux[idx0],wavelength=wavesample) + + dx_red, dy_red = get_dx_dy_red(wavesample) + + photons_red.x=photons_red.x/self.pixelscale+dx_red+self.slice_red['px'][k] + + photons_red.y=photons_red.y/self.pixelscale+dy_red+self.slice_red['py'][k] + + red_sensor.accumulate(photons_red, red_img) + + energy_red=energy_red+sum(photons_red.flux) + + #################################################################################### + ## stray light will cover 2% of input total light; + blue_img.array[:,:]=blue_img.array[:,:]+0.01*energy/2048/4096 + + red_img.array[:,:] =red_img.array[:,:]+ 0.01*energy/3072/6144 + + self.image_b=blue_img.array + self.image_r=red_img.array + + return + +################################################################################################# + +################################################################################################# + + def simulate(self, skyfitsin, skyRa_shift, skyDec_shift,sky_rot, exptime): + + + """ + Create a single simulated image of a quadrant defined by the configuration file. + + + """ + + #self.configure() #print the configfile name and path; + + self.dt=datetime.now() + + self.information['exptime']=exptime + + self.skyfilepath=skyfitsin + + np.random.seed() + ud = np.random.random() # Choose a random + self.earthshine_theta=ud * 60 # in degree + + ################################################################## + #### load orbit parameters ##### + flag=0 + for k in range(1,50,1): + + fn=self.information['indata_path']+'/refs/orbit20160925/'+str(k)+'.txt'; + d=np.loadtxt(fn); + self.dt_num=int((self.information['exptime']+self.information['readouttime']+125)/120) + now_dt=datetime.utcnow() + now_jd=time2jd(now_dt) + for kk in range(len(d[:,0])): + if now_jd-d[kk,0]<=0: + flag=1 + break + if flag==1: + break + #####################end for + self.orbit_pars=d + self.orbit_file_num=k + self.orbit_exp_num =kk + + exptime_start_jd=d[kk,0] #### jd time, utc format + + self.dt=julian.from_jd(exptime_start_jd, fmt='jd') + + self.TianCe_day=self.dt.strftime("%Y-%m-%d") ###str(self.dt.year)+'-'+str(self.dt.month)+'-'+str(self.dt.day) + + self.TianCe_exp_start=dt2hmd(self.dt) + + self.zodiacal_time=self.TianCe_day + + ####################################################################### + + self.sim_sky_img(skyfitsin, skyRa_shift, skyDec_shift, sky_rot, self.information['exptime']) + + self.information['sky_rot']=sky_rot + self.information['skyRa_shift']=skyRa_shift + self.information['skyRa_shift']=skyDec_shift + +############################################################################### +############ add some effect to images ####################################### + + + if self.flatfieldM: + self.applyflatfield() + #print('Applying flatfieldM finished.......') + + + if self.darknoise: + self.applyDarkCurrent() + + + if self.cosmicRays: + self.addCosmicRays() + #print('Applying cosmicRays finished.......') + + if self.bleeding: + self.applyBleeding_yan() + #print('Applying bleeding finished.......') + + self.applyPoissonNoise() + + + if self.nonlinearity: + self.applyNonlinearity() + #print('Applying nonlinearity finished.......') + + + if self.radiationDamage: + self.applyRadiationDamage() + #print('Applying radiationDamage finished.......') + + + + ##### cut original CCD image to four parts by four read out channels and zones + self.CCDreadout() + + if self.readoutNoise: + self.applyReadoutNoise() + #print('Applying readoutNoise finished.......') + + self.electrons2ADU() + + self.applyBias() + + if self.cosmetics: + self.applyCosmetics() + #print('Applying cosmetics finished.......') + + self.discretise() + + self.writeOutputs() + + self.log.info('Using the following input values:') + + for key, value in self.information.items(): + self.log.info('%s = %s' % (key, value)) + + self.log.info('Using the following booleans:') + + for key, value in self.booleans.items(): + self.log.info('%s = %s' % (key, value)) + + self.log.info('Finished the simulation.') + +############################################################################################## +############################################################################################## +def runIFSsim(configfile): + + + opts, args = processArgs() + + opts.configfile=configfile + + simulate= IFSsimulator(opts) + + skyfitsin=simulate.information['skyfitsin'] + + exptime=simulate.information['exptime'] + + sky_ra_dis=simulate.information['sky_ra_dis'] + + sky_dec_dis=simulate.information['sky_dec_dis'] + + sky_angle_dis=simulate.information['sky_angle_dis'] + + + + simulate.simulate(skyfitsin, sky_ra_dis, sky_dec_dis, sky_angle_dis, exptime) + + +########################## begin main fucntion ####################################### +############################################################################################## +############################################################################################## + +if __name__ == "__main__": + + + + if len(sys.argv[:]) <2: + + configfile='./ifs_data/ifs_sim_example.config' + + ########################################################################################### + + if len(sys.argv[:]) >=2: + configfile=sys.argv[1] + if not os.path.exists(configfile): + print('The given input configfile path is wrong......') + sys.exit(1) + + ################################################ + + runIFSsim(configfile) + + print('---The CSST-IFS simulation is successful!---') + + #'/home/yan/IFS_FabuCode/InputData/IFS_sim_Fabu.config' + ############################################################ + + + diff --git a/csst_ifs_sim/ifs_so/__init__.py b/csst_ifs_sim/ifs_so/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/csst_ifs_sim/ifs_so/cdm03.cpython-37m-x86_64-linux-gnu.so b/csst_ifs_sim/ifs_so/cdm03.cpython-37m-x86_64-linux-gnu.so new file mode 100644 index 0000000000000000000000000000000000000000..85a4cfc31920218e8b634b8d53cf9db62547f63f GIT binary patch literal 175816 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 literal 0 HcmV?d00001 diff --git a/csst_ifs_sim/ifs_so/cdm03.cpython-38-x86_64-linux-gnu.so b/csst_ifs_sim/ifs_so/cdm03.cpython-38-x86_64-linux-gnu.so new file mode 100644 index 0000000000000000000000000000000000000000..7bfa02f3f33ab5d5a16e4d35ac622d8bf7a49ed1 GIT binary patch literal 182992 zcmeEvePC3@)%R{bU`Zf%gP=h{R=bhJ0wxGb_^?^nkh{9Uh@e3ONk}#%7?POWNbo_7 zZlY|L#ni{w+SazTPi?7>RodDXzr#0Zt3VY2zalE$H6R}<1XS|=elzzbmq4t2-uJKf zbv1Y9oH=vm%$YN1&di-%?#}Vgh_Tyk<|o#6jg3&gTVk?}0_TPpBWJT^+a}ru;Q2k< zrGhrDyX5T5+TjvsrZ%U9*+x9GE<W&aiD!2jt(35tTI-4SS`GSMY4cEtH&bi9ekfY; z2U))2g)`H2110PnBvZ2<d(C=}81)`8>X~UfJA#jyIwWYLjQpEusI7PEHt5WhwEX0M zq?Iwh`WFH`EB(7f+sxFgcLVBC&TsoMhQT(=Xs<85G#c`osnK20w;^aO7Js=j=h)s| z`{ZwSHC?~%vF%0uI-ZNWbH&M_Z&DVP&%__u^k>>^bGcNT-8MHqX>g1!n`JlPuK<6u z9xR{z_@{ekyjJV%T(|nl2ljn*(eWP+t{8pGOX`MwPur#z%xL`4Q>)U~=ew_bQc0aO z3RU|2gwUYbM=Q}25a?X^SSWI^mC(rl8tJ*{ZwH@q(cjqz|NnropNoE5AAH_`Jm+ec z`ga+!S(6+3=<iE?;E(pfKdlcrf7(aCcK3l-An3W|uj+&T=05P#`j98s2Y*)|d??Gg z^p?=axHt5{e-8MZt6#xB<b13T{-gVl=b1j*{ZSwI;y%W4e;;zr0RB?^o%QL1e|sPN zf7XXxE$D;K-_YQ>^cLxZzrBxfJlqE#S0C~`(FeY^4?d-RjAL0J^f&a;-_QHNkL?4$ z6a3HRA0F?6{`EfkbpiBwE<Qi&qhCY%(DRr+@Tq-_SEvvDZ0-Z^>x2K~KKhl@haQwZ z=r8Vr{s8dj($9LxlMGpVe^&INw=n3>#pjtm^m9cYe5(7Pzq=3mC;Fhj82EF^Q{0Ds zKI}vP4WLi9U0`c{S!%+JXGRPB`L@;DBz`sYC_X~Yfi~w{363|=F`yr88)$PGh@Yc9 zex?b%4Ybu7^tWY5{9yy%>XGoH2LCt2cn!2=OqcjSCdl-0gT6gm!uc|>eQdOwVepw} z;8mfYfwmnCHt;d!Jl~K%-;n2gS!|nR(62S<T?XD(RJ3q$O?6SdR#K-G71@e>v-66| z0(F6fmGxSnZg$@Es+#J+?2-jl0a<qLlA_YalA`j;>XNF;I|H`-r8#wVMc0>>Hq_Mx z$_#KuKr5{<@-u7d77Nmx#?nBoR#{Wc0yAH9V?di-S5g{SP*QqZ?}F(i4fSRVvjX*6 zO&tWwUs~i1lvGvKl%hZAO6hGyr4_dom6udjq5h1jni8#O_R?C`V^ZX+zp-I~CJ{3m z7B2|Y6$v7gPp?^ATNP+D$=MNzbE8&QS-lX&*DqKUDAkH`1DZ$E>blV+n_d+tsRPN4 zf!iAb)un-==@kJXe>VcPd|F^JXpBbvHG(OVB2WF<kf*xr`a1%3<yAFHL?>rrEYM~{ zsRkaNx`jpgC3W?I*$t2wq}K(OE~%+2tGAWZ)s-wQDzB?qTvWTXX2BvVr4}8~%BdDq zEt=L)SygsZNmT<?;;XLIib~5CXIu#&ucoY_3bNM)O0>W@AcVpU<;|$6)9Om9P38C& z*8))_6Il@zrkB*#lZ8>o1kw5Y8psf+vlUg>LcDQ!cxKJ=%q{Zd`%n+#Z?J+kYp6*> z7S!}siY`xEss-wcW}su;nx9i$Sz1#TI1|a?m>F2oZBgK5h;ED@3O)54L8IMS4b@uZ z;(*yO>*rHpEJhxc7ncYCGO}9bf(Ff?7K$qZp}~4aU4Tlp%GF){`WuVttK~=-4T~|5 z&0>&@GGmme5Gqj?&ls1#lxm<k(uxcX)N7cnP-#)QWrQ&ydOC`hL_PEw*|YRuTO3$i zAJD|asVl`qp^4OMb)}1ISyWoP)MVfdR9PA>t-<)s^cD$Yvr#&8q&Yq})l`<{3-y{< zHV?UkD8@vPUAVbYtB_snmO3|39jL1;1(_HlNK+M{i^vNsF3OYh{7el?PM8BXO8-N` zUIQ_`rW(Bi6SP${vj!A3bxY5X+f#2!ZS9Sm#c)@`yDTg>ra-+`w4|<5gY)S|acb0; z!<W#?7b5LVVAd%r!#uVH8f$H}nAqhsm>w=Q^+gy^*nbbIPFkmduc};NHaWJwX6ytT z5Q~|+in&sm%bjuktl6_XGm9qLa{az((~HK99hcRe%^csI?a5s^wkJOhY>f{VAhFwx z6?<eW*34tc5g#lu_{0cmkrj}cJ2N%w$kPbc>cLnk<3tHLvmA@0*mc{m;qLptKZBI9 zxeI?4Cm+N%J>Is*V9#2cEajmeJ&a?9Slb8P<#D!GjdE1CJtWHe+degLLn<qAqSDWH z(tx#Ll>>M(5(_SDv*AL*F*e0GyfDvY%(%mrO0G6rt8wmP;@jL3@7f?!6K}%po6f}R ztrFII;SU-3BfapS8Tig#_>%_Sw)sr{UmJKwFMRBeB%QMtet>~b>4hI`;9b4&DF!~R z7k-3+&*+7})WBEt!lxK=Hub_68}VLSFT6?b+InVxThk?+)(f9)jK?}7PBh2m&POEu zj$Ziot0lg@7v4Eb;`LtmBY6_v*$eNSDDkfCGIhwrR+}v|jW5ZRW@dzz0?}l_8zw05 zD=c^;<P`W;3qDa`<l_+wUa{a;Tkt&VGCyl9_+%4_bgcz{fd#+Lf*)bQw^{I)Sn%5{ z_)9JL9Txoc7W^Iy-WXa@+HS#r-$Jij@MbK{;v*J(mW964f;U2WQJP}d568q9a*1yf zi99ouS@CpP@bqrxC#_B9;JnW8yBQXIyd)9Ni55KTn4j!6nIq1$A!5`vKBYH>!|MLz zx5+H&jU!}%D6rtoBV`s8TkuIl7@vwZnIRvifn!qJCIRBD`@2R9{ya${o=q0~5DR{V z1#cXYi_%sL{(KAlBNlv$1;5&YA7;U?vEVPX;MZF47g_M@EO_G;fhcXW;4ik&Z?oV> zTJSq8c$Wpg$AX`2!M9uR-?QL#3*K$PAF<$5E%;6g{xS>Rwq61puTd7f!-7w<;GGuy z<raL31<$iW^W(DM$CyZ@X%_rg3qHewzruo_Xu)S#@Yxo8rUkEB@Z&7_d<*_23%<aD zztVy)w&1%%CX`oL@K;&rYb|(VsSu@&7QEs51-{9GpJd^)!h)Y{!M9rQQ!MyLEcmGw z{AvsS8Vi1n1^)vJeys(cZNaaz;5`<6n*~43g5PGrdoB1K7JQBczsG`~VZpas@VOSe zZo#V-{1FS@XTf(`@Yh=KHe>y#{a<InJ1ls=1@E-rjip_brdaSdTj;;bey4%&H1K~< z1D`1upHhPd9cnm!=`RuHw6tk4T|3m^CdWq6NY{k@KzF5nh^I0#8#%%iEQ_{x;gh<L zu$}M@0q-IlL%2=AFB4{{7F{dg4TR$euNLsLgc+JeTLt_l!u<$03HWisbSKeT0sopX zL$heHfPYGuAz3tEzz-5;$R5oW@DB+yRF7r|_+G*c)uJu|-$|GuTGT1vI>JeWZ313I zm?3@i$Y~%_7Z7HM7Ht>sErc1uM|TK#7GZ{J(KZ2JOPC>Abgh7=5oTx>T`k~Agc*`W zTLnCh@cD$B1bjJRZUv&X0=|?mL$YYGfG;G>P%N4+;K76$f<?0hoIseNS2RPwF@za% zMO^|u^$Wn<Qbe5sK1TRr!ZrbaLU<(MBVV)s`w6=Uw+nb5;Y$eb5b!R-mlAFh@XLf5 zYDL!ycmrXESkcu2ewHvpt7xl$|3sJ}RkTUKj}vAn6|EKUuL(1RiWUp_r-ai9=L`5j z!VION*#iC{VQyWb83MkSFhi=SOTc#$W+)YP3b>9iL#U`tz>5eobc!DNN{l~YhD_0R z0pCKHp;B~*fM*eAh!kxT@U?^)0!7yfcp71DnWC!&Jc%$vp=hgs#}Q@-6m1gl<%Ajf zL~8|nDPe{@(P9B#NSIr#Xug046K3cW%@%M1VTL@>3<1XwW~dW&3Ha2{0W-vjIt6@; z@HK>O0{(>X4+tOmQj9<0Y{KmVzV~M~TX`#B@lhjFqmRLlMB?`|$?DXG!nMo*4PDEC zu6AW)6A3pODd?XO^b`KXB>l7+I-;)s^atwt&REsHMcsK?8v+J{3<i#__Htz;0wA+K z{a4e}2Gq4Re1DD_oO<l1$f}`_w1H}P>NSv6p9`t=GCa1#=Yh^X4|UI|A6<e%Lmtl@ z&up+cn5~AExl`1T=60%~*=|Rf8XlNRt5ZXM_r%QYYD<^W%%=1NXbF8&ntu<-AE|O@ z_#<WRG!;3QKlF(|bU+Oq);}jzgxn(FrbfVAZzC?O0c<%=H7#>H^<}U*<{WD93cGeY zvne8bM-Q(RMm;A>)AZ0OR+;V2Ag?syTzaY?@wz9LsaM7cxf`aysb|mg6naGeSpiO; z0<j7GbBtxjKgwJ6L<rEa0!nU1chJ2r!KovtHzT3{_uNDc`9fdKQA1zIg=0DROwfJ; z)nuK}6klk!z7@<oq0Ja@*D=MJ<Mh11^}!p`k9m~jI5$@pA&6)GM(SoF$kotR8b}7{ zvz;bcnq6uB05w@b@|XuE>;h^^J5a-SvH5o%k<I7p*MV6}TSKlI&T*(Gn%1xrHd~6) z{5TSQ9(3go9Y<4aQ1MP(_Fup*q_)ron45B${fB&NWWw$WP?ZQVH>)j&w7=;?P{kiQ zriMQChd$O1z*B-{ILFp-u^QCvY6!Up*|+CW3F;i%&Ce)RT1LU>Kw;RO{+}R>o(G)K zFVx)uVQE-1BxUAt{TdE+Xmhl&n~vk*3%y|-k`&mg9CJ0~bvrU4*9^y2ubXSG?Re9F z<7rn~gkI6e<da=pzR(t0aLWTIG8DS<$5Nq#^iv?96#H2yw6Sd=v~i;ph1!^`_k-}T zPeU6OkWOktX*tMRrbY%+BafqEk3RHQI$8BoIsP1xPksgNZ-6MXtz&pA@OlMEJfS$Z zFE|zk@hmv5qdlo%Kj-C@a$YJePl~2CrSuFT`~>G*9Gm?wFbP8m>}Q-*sIC}{1-p)? zXy3ifrsY<HcDkX4>m-c9_#<j_Fiv9dyXTA9SEZ%EsQ4@@iUy*r>JOdJ*8mgE0-%pY zuDnMX@JsY(o}0^+J7AzE)X;9vO=@IlVY$sF9aHEZYGhCvoZ*e?JqK$MWvSs2mpp8< zS%$pXT?{-%J<{x6N0ngcVZI38(wp5Ap*W^0QsDE29z%uhS^(mhL<P_Ypnx^h(4+1q zq<{;N2zZ5ri%poGU)|d5#sm}})>(}lamM5m_0|FhK4l~#jTEif?ScqU1vL4nyNzY2 zmuA6jGjJIe+z#OK**^+%W=1zLXJ^{YqCI9t@X2iR8=CS*R=SDO7aoT^!A<#|P+MkO z4&2f>HT<-@2}N}6voRuv0?1?H-vu{-Nv6WGFoPPhm?<_ME8PVc2#bLh#iM)oY+`VH zt6`*`qHaI-wCD{NkODODchSIMefSv-XustBFx#_yyu=vRA2tR#^0YezSpDrUIGyQB zmF7+$)Nr=b51}eVMHOUJ<g*Y#GEhTtZvA(n5`BQSgcaCZjwj@B!}Nq3Q6tUnR^q@M zJ$CBHV7onCS6cRgr$0+`S7-@xqBg}6@w^ymxDU({AJ#ObWe;-xP?!EIXgT@{05R_( z54qb#lTW)jK5FE7ITp`BHZ?2(cw#T~g0+{9Vm%l4Cpc8$hh!ZngX5=$9&#UH3VgeO zo82@A;yamAISV-dW`2&^ga%R8$P;cSl;e;5#_gc$0P|fz&%%2JWq}F>a|kS$K~OT+ zkC7J?CtEnKjil71)YlkY5G7PW^Hem)Vj-2l@SbK*L%%h6$zD7!#L<6sOm>wrvLPWO zm{3N2JZeN&31v2+O$gtIK5rAOyY=~-QqW3$-u@`~6bf1Y2l|Xb+@PPPh}0*qEB<SJ zzW3QT==0YsJf}Vjj4t%(Gb~hM)#o@0&>el<WbisepEn%+27P{ro<zrD@^#0l&F<CI zD<oPY^gGl?)ydhAqJIcGw9JO)W2nmTs#eW<S83iMYAkd6F{5Uonx2ET!%Du9<fUG> z-xpf1W;KgRsx-eSsy!jxv_BGGzy>3O78bMJ!_RWuU&J4Lz5W-`!KqIoBE=%CKMXKh z1D;%NvIx`*c?^?9A52XM(>(!AL_Ju;^+BZF1T*5?5&G>-`wD4gcqzq1H~i7@oJ~8Z zv#V(bTbR2|u+iL&P=N-Yw#*GzJ@l0Y=>CioXLf%R+Gh9jjqY=q(k5~O<|Bu$zkyol z`tl-fOW0N!TX;rvO0H@UBfsM*{cSO*PrKJrb!c}c+buNPeYMvp`Hgl9jdtlm?@B+r z-4wRFLiDFu_*t}8*zwFcoN*i5g^S>_riSG5rsp0(_fW+p=Ef!#!6mzTs?&{cGiq}2 z6TV$|V${l@W(vuSMf$13l3AKyc9Fp>%@^A93|9m;o(*J=i}#0Br?9PZRjF<hYW8yz zLvUNUQnj7|0juc01ZzK{s)=B&hBhkA_X+N(j!g>&PjmY{H*{(4iFu)DUZ@>8lz81* zK5_ixUSeX`8(2Ft^kbhwPOK;lJyi&1Lze+J%qCHqiiLqa=I*XP7a<uq^;en~i8ir` zAxRrZl;+2<)bt{2`4MpXd?+@0KTAXJVka4#Cnm!hLqo+K4{;gcJfS-jeiPcE-_*-U zV>nN-m%9%wVSOnpLE+6DFHC@QdfI)Q03s^vi?`!U-r6MaeZClcyF@`BeD5XS=NMCl zryf8^7p-Pg6rQ>d`HmO*?8wik=AMpl)=W6e#vc5p#)h)7dKk2R5y+w|g=tT%VN)+z z0@CtU5s%J+ZqNG>yv-M}2t;Sk(JvFchyF55olQ+baOewd#x{L95utpC{*fGfrMU#_ znlH2oLdAoM(foxd@&!k`u}RvjG>gg5a!6@D1wwH6>W4_OavVwvZ;)mlXXsvm*8Jhr zqbTwTOIeH!O!H4UtXyl}0%4bPDvki{zHppdX-OlZ^^txyTd;GWK;6f$-*mOM0>v7) z0}6H`6uAx=-FFZggrOpeix05*$b@QGff}Bu&xEXgV^fGz1MDaKkY^1mM5fl<3Zl?v zJu1Kniv@U?oegc!U;o7DrP7>EK_gRV(Xz&Lu<C@oGicZJ&>n&nX6{0_BU3X$qmMWQ zda>ymE2?ZzL-E@mLV<=lFpd|H=kb8j{9m-+;M5N8;gsfF+D>HZyMXj(C|`KOF66<= zkZ*iXn^9Tw5)3eE4w5y80MhT4H66(J)I1e6ddB$o9Z(p0`B>ipAbJH%3Hun1TN_}i zKRQR?n!w+t|2K(lL?d#aOD2yH)ek7tBfNs}%Lbotd}avEM<y(oj|5}#EK1cNOrXKR zMs5YDUq)Ow{&y>Eww%mEAZ~%fCUFD>mI2Hb{L_GpCdl@>oX^s5P~~#)$Ko4~Uk@&* zi&eD?UG4a_G^J;GL=3VUO|qYMlkEYS*pj1iGqI5ge~`k0$8#(c?jjt&P!<+<7yg2U z*HGi(_yw{sS|BC=CoCoUJy~>xEc(DGTE`-XlwY3TUt?QG<svHX1gEtRA{$y)0K41B zavarst%mQ$>eHq56NgCypt*U`4Dit}qD2zA6d5_+G2JJWQGvmOPW?6-8m#<#q{C*v zoI7NBir{SUz{c`Hsn5|-%0bbR;QXCDVrr&Dv;(ny(Elt97UvPY%RdE=E@%Y0Dgu{| zb;6!Vg@VseFfV%I<L)@jb2E3gLk|Kkk3PPTM;|xJvnaniKV0Zm^>}b<X=|LXKH|^P z@47iJGCt0izB%}%eR+9g`e{F60t6&gn~K%Qi2nwwj*GkH6%{V?1-CkU_ARL6%Q~!$ z^Mw^O8`_713Px1FgFG#5OaBQW9qQILj6|1ZLnq|VYdN&MT@60(egvan^K9vt?u*Q@ zYdFi><nX7rTgc@+@C6UqeZjAl<^Nr-)WmODfI3R@4133G7H=%h-)`<XfeU?cqZ;}r z4g&U|iSW(Va~~N_WVW^JQkt{qf5P#9YGDE|xCgK&Jlmb(3vI~yM2UP17<8*%N9se! z>WbWnvlowuPCBkI;$I*9<?;dkto2IEz2w)jU1`oh#;-iJU5%)AHEXMOxf<GrW73WO za2)oM+n2tQM`wE>sPdGjw)sPG8x6{a-RjmY)LKVUaD!dl$`#s{^~Ul`)zS@W1Y}`Y z$w|BNz!$)`9ACOmEj<RptT*m{x8-=F(;wQQ{=|3UB*KQz(Ehf(ter~pMv(eLJN==T zVZ9e)Owr|E!Up9`o^Zf8gi*tfins&Y^5NoKRB6eG1Jym7s6@-K82xTJt~~G;l)&yw zw;%%A*y#`VQ$jz0#5tL7v4bnFL>`TeLt~zh?hWmQ069Vc`jF>7GFt9v7W>?-aU0p& z=vL|9JnIDXo`AfZ1<|=s4EXI2f^B5NMTlu+A8t1}MXv@$Xai_olr%4KX%!wTubbvP z(0If_fgH(bh)uNI7%K-m8!5(FjCbZPW3VqRZ^Z~}{W#cnuf`B+`Eq=xVSL}zF2TZv z@%<;pcQ?oPpBU1Aa%k0vAZU0mFY9I48(QujiO(Tg^mfs^CUhIeJ8}PHk2@ZR`lNhW zZzz#PScr2nw}%dUvUc8el@Bqf%U8M{wy?fqu$WJt;Cj0nY;&MoJKwO6<)4t+0TI`; zIJnjB5B1A>bJ=r<Csw6^qiMxlSCpp)ZUh5+*5<oE69)4jgz|+xnuXoP1<>&`+aQ(a zMxn76na4^$2d6)oT^<2?X6dysBFtYG#}TFB3)JA&xX8U-r%#_gvFnl@sZIE3(a?sO z;elU*>&>^YyX&EiuJxZdf8W%E<<$%OzBvYd`jluWv?bfNh3C=1_hK{K;B@T%^uu@w z;<q2xW6+v6>+8G!7q+qC1U0xJE^?1(YUd@}%%;{0(bh*z?$Fq^<i0bs(YEn9_CgKr z1Lw>`{`61O^xeM5vY{}lq3h?uXP4}Ug&-(TX=z)&%=CZX)GzcYh>CspNiBUt^vDOU zE{5djR&cZ3A0D^^{SrNf8<pMr9xT<9Rpm~(d*%PMgR*aD_Ut&;Nd5lz#SB^vjq_+3 zaX`z5<{|8t*z);;rw}py2)jobfHZz%{L#k&h_nn@=a`m&(XRswj()TXhNEjAKz!jM zqy4etg)z76T7IQ4+(;ckHR8c*p7BRI1{mvE8+=-pUHRpD<*(a4_E%JH^tUv8td?#z z-3q)(;{b2gJIcyGKu8+#``qA$_F`rrtPy;?SuZcI_F)HQ%#W?T<_F5P>-=Gx@YkRC z!<now)f4g9^WZvf$jds?aDykb9za8Xb*uQ|zXwC42G={hS%(@{V?kK88Lh(0MXQl| z;8Mex(o3PzQdp}U?}@tKXMk77L3pC^cT?9#y`fLwv+kyq2!HfKyQ%jePV|lQZMjtE zrUV-uT@4re!%fBT2<SYISywP>;UekbtHNwL)}zaTiA;F8n`s4@!j3?+u@&XXXd2}< zToaOwswnSxSFWofK5E&e#Yd;T$MF+49lFRdbQBZey_<|P6j`$xG<p`Qb3c%vzXm(f zFUK@l$4M+26#JpsSa-jayrzc1OTQ2G7+9m$2z@&$_>A4YHqwLbFZYqyx)kzN9+v-5 z`>mcr<J=eVZcgTh`eSIRW51yvxx&v8jo{5-OxJEi`rl(a7k9U#G<(2QpJ!=HX&wob zXb;UniIWk|4+JW+t!KR80oBqSYUQq46sW-|=h+$#dLXQmOZ9uEn98aH$in6r7&Re_ zfB`hL6i?P>B|^{QL!g!7D?OxE9umAFQ@$Tw;s~C`d(rz*><>S{q0GY~f}kLN{9Oo9 z9>`~-k(+VAjPh0;F4`Y1a0X8fR+_PrL7sz-MYueIbMi%Kz0Dtb&(pOFI&;Z4RGNpL zB}JG&U%rLMr|Gx7!}*LCLoHl48J+nseo;RF+K>L6P#Mp*8#X|{V&~a_G5A=&1a#2- ztr!pUl~H+X@KekM7)j}tMX)CCR;Q3AUu?$7PmI5e!9rg%^!$8I=#3jguOJHRL=Vn* z52FK-*%o{sn^^`jp}l#bt-<%5O7l}tgMV^-#WHTV_Mylho^T!joXX%G<Y8a9Usr1d zXgtBM2lFKtw#`a&9X7AwY!~BqjF&_CYwoZWUiV0)`DqlOiZ6UO-h|dV@fKET{tIe@ zn^T|iE?#>fgW+vi4djW9gYi^aI&q^0mC%}ON)2scYY6I4khu#*!4I-=O0PV$0p2Hb zyEk%gGKM8{S63^y*WB*I*oXN;`^CFEy$t8ZG@-}P8|n$R6a9(kf97_C!k3!si!VH6 z6PICi{U<-L@5EyKDI&=S9!4|*9Vq`HZ6I^k@r~JN*&B)q*VhJd=*JtKi)^#d<RW{Q zFdj+)<DeuD1V3;#eBT$&ndk{Oz(VeFsig%j)az<J634FI<;1R9d1?=$cs=(m%w`<9 zae%sCkSi@OInew)n>dcxGoBF(+M3@|LN~$jW7z(9Cl%-efcW~5@<2N6E<9lt&@`RQ zUC`XWCA`w&1&io*aBRhN@%zHL6FtXsvtyO!I1V~)2xQf|l$D+6h)_7+o_vOrS`O-e zqE_&OI4#Z>>~GHteJ%EkJ@dVrexpHO3i{CA;QQIfH@cJ-e$6`%&0$(0w8{qNB49k> z?BS98uHdNw%KeRyz!S;o3U&fG&7lwHI*)ISfjOb%_|`b3WhbyNI-#}WTVd+k0C~c> z*`W>GBYX~`d-mI5I`^F7Q)%|Wz>aT>!HZlFidzzJ-XrE90!s&rJRYAM{_HoYB%Ug2 zwEUPNG%a&qc#YB=Mn10;;h}djCWba&{f6Mk%U+!$IKn~l*EeE*F!&M&=rWK{LvN~E zH((^X^zyg6y7IycVM|_jw<i7pi9Fb*VV(@QqvRVKR$lbGN9HImdfmg$-Tq_W-2MR= zXt$pE6Bt6z?Z`BJ?7)Qp`i6DX_!>oNo(Slhq!C>_w-|%-p$3GCJzbZPs2+d-Q7#AE zjjDJvj8&{rbEVnTb@eWMm(#Vd23zO9T+f!h?poM~7)d1^fgh`+qDme%*bZVci1{8c z1hNTSW&rsF(hZ<ktoPp#SLcOsOdQ&Kj$qmtH|vPXfO?Zd|LH!AW!6Uxk3Gv(3%2(4 zOiF!N&)h>V5P#<#1V81u5dy_RP>YLAFTxqX-Ki&VSp=Kt%Ms*JK3Z<e5n3*$ddqe= z7+?5im-5hhPk2d+bXJJ(q^r6C{_AX4r8KuA6hcLR=rp2joJxWlXYy$@czi1YQ(iRj zh37bF0lv`9PEU9a_UgDs6V6TXgl>j+o8$6?a**a?VZ0e$ZVrzBbCBjDy*UkV24JMQ zNN>&nJP|O`T%<R{s^??_Mw*)qe%U@A+<;-W(()%X4Wab-y->qrLXLi1M|c~`(bd|? zjwASVa7p2A5GP95n(+Mb8d@PW6@%Wvp0-YN0b|=TZCEJ@wqU6$g%R=a-KMnoPr?gv zeR>pwKxWZNzz9K<mNsM|1V%)^3&qhJz>$W+?}UMmYEz#Jq`SoTXn9>ByW8p%5D0_w zm#QvdkittSk)d#U81g=MY{FAWR}dK#f>nQmjd8k&?V6rV;hu$IU@&=84D0j>Q%8Wr z8hM=h;kA{g&~F?H;YD~SqUx<VLOa-<c(&vWD~<jTNUr|!)%yK!(lTeeom~8*zlHGZ ze)0{X`xSk5-wA^5`F0+GWN3?3&o_XAsCW$@&c)Vbf)D)^R-d1OX%MdG(DKA$z#Hh+ zI}ixn(ZAXafXkCmJbj{c+3Pf81jv2~+z2JlrbTs+#_hlgaj*`wjK&zIGO(M<N5eqF zpSNTHZ%$197!)VwBd?>)3s4Zr{~~xQ=8pJa=LHQHcp`HMDfj&c%mY670-WO`7s)?H z?ESl;U#wHdf}J2KKtc2dY+qi)l4*-hKyD3I(<E+a)(O-reX?&xiDZALppoob$Ub-| z2_<N(i~Mgzu_^l6Yo+M#{1XL*D7|Mt`+3hPKDBDG-o1?JWUhB((A6{6yQn+?vaP`z zu!SJ>tfT*ly3vMrfQ~nD7?0@PC=gIP+rJYJPg5gS#g;GeJ~jF~kmzqicLwqRkR2_( z&JSh$>I<Fd-elZ!aD`YvaQo1_=@@6+bZmAvqA0Tseh3a~)fxbi3dA}~Qn0_}u2F{m z9T)b*8|pn9#cm+0LuqDZUwHh*2v_nVqc7HrDO+e0BJsUB;Rc6C>=j;wOYw#Oz%3w- zmzCxw;bPz@)XDL=w=>`w(~huEY2F2j93023`XeYjkr`b)#m#uJ3u;m$LpD=gjEipD z$!HAq#pc`_ItDlE3BSOdhyKzo8Z{$VrFl9KeuP#yW%j#AtKkMXjG<5B*w`1Ik)qo7 zs1fW=TPc<=JQIk$-f*SESNet;S&9S5)9U*DvHDBs5Z~ltKhp@3_tfA^-19)#{}SBC zTvH3-f?J&;B+bFuD`QbL*xA*Pj8N4EG_KpZ3^b%#5k)=TYXipy{M~@^=Px8r6+T=o zo#jFZyF<@qyOXOB|6C*Agj~&Oa|3LzV~nw1GsQx1+@*QdAbhq>TOe+ILVA6|4lxuA zf;mc-Aoz!D?4C`u2`@IPJ@=IKqu|f`4x+=MMsjZWt><|LOdWqU<9jk+12v0rUiwQo zmLJxDVPwK>*Rc~5^)FG_aew!HIWeMq1JymEeEHQgoR7YSMma*h2u}K-_sGxzIDN-E zW{SZzTQvtKhbJbtz*#a}6?Or8;M*X{jTd)QbU*n)!71W4Jhp!rGY&G2+aKEGIq`Nh zN(Rzigc<oF4Nh2*uqJ&u)Mgk^ODqVZU*my3{<d25@$DJlBNW1(CZng(pMrpKgD}=; zDHaQvOG6*T5Gu{jkO!AwTw!DuLwO&JIQlC9`at9?Q&_x@MS~wLhFyj_;i3JwyBUUN zn;1rPwTttP;6dD6K87obFS57T9Sy)XDFyFjvW1&==r@5Y708z{DI0t9_ZaUOc*U3Z z4EN9^LR0X5^lsM~8{BOuz(EWwEME_TrEvsur5eN=HC|~zxy7_1h~0V64lK_=dQ1!Z za(&~gLez$>^4vy6tmh3^IK`lHj^{)InAeT)Jig#2dtT*-bTb`J!{7L`K2Vx@f)9T) z5*ow{pON|z^d8RUZ4d6hV$Lbee-i{xcKezf>~-kas^O&bA~T#p-EP>;R?}+qi~hlW zwfRF6<}TqN`*BAnvK*#}w*f<!<4myY4NNXS_A~czZZkxUEl3I1JN)4=CoT>^l;#37 zfKj`m3JFgaA~!m5yb%u5D~ZwL&ek~hFt@hYCgZU2FNXa*gSV7ued@zrB%x0~`>pch zw&AwsHf{Mc^n55eImKF{ytt?3Ep6#D39_)|jB3h@ZCJ<f0+o*N9~2ul_u$`Y6BuPU z$j}!3GxS?nB?eV#8EY8kA&gS=5+PGFIHM*y><<^ae8D)kJ=z~7#`s01R!@h^odT}B zj|j4GzLT$+?q++qHIlD}s&Hc@gdIc2@NR!V!r(^x<N~J>p)1M@eXNFuxYbg;6vCnB zGh^9iWt&)IVyD49V$s3`SW^Mo&(z1lE2vU$xEPVtY+i<M<rv7w3U9o`3iEql*x}nD znm<xe=7$_`>4)`pbk4X6-TV+2nc!D2n#)NZj;~*YojAOxc!kE+c(NQBdKo&2Lnq}$ zbr`#nf%qx(3RfUM?(IC{3#Qu<1}e>YWI_jDD7ewV<5k+KnS|2U(><ra0*CbTg<viD zXgjCnL*;=bEDoNGS5^(BI9p@tOG~QO;YX8jj1}!y?g>qc^F^lNbq(H?t=a(1Y_TP% zky^Y4IpI$~uJ6DQB8vglAA1?2$(NU1`aXzf4y=5Io<b965Z|&K;|CfHfF8^7$6#<I zR^Gwk4|BM}jV>H1@Q&HB?efIuJOownqtQg9<*h=)qaZCctO!j&yRac&*5+jkxMh&9 zP@BOXw}`Hb#9fw`{=VqJ1J__O`O}Z!wPeR+b3NhhWoH?>=6Qk7=xj(L{AuVlp>O?G zVYbkG^idSG=3vVfj=#7PqrwFO@1ZbA7v!9A%DV!R^PsR5Y36b2WDC`UOY>;KrX&hK ziP~x2P#NA6<DxajL0Vqu33nQt1}|f^0ck9sfSkkvT)`m&oFd?--K_%t7^dkDz3LCW z=?|?GG=AJgZA6*=eZH%>XOl2!yb{1GfYE-0{%{{yq<oRM7+?DK=!NK-oLBmn+dz+7 z=bVx7n|Yy6qKVL3x4tlB!U0Wpz!0KK5HZU459jU=E?ZMletPvuHM-i}w{OvxBA%Sf zzGQ9}y<n^(dV(D?I+MW8<Y5t{w~ekraLctg4MVi`2b5qdCKYB-F8hd6YPgFP-$y@X zM1;4zt40t?-w9UdW2!`X=@d7EMlR%xpaZ%OF|isR?nV$1o(}IIE<xzIH2Ls<V6(g_ zdJS6-eH9&tRDTi{U|Id3Pjmgm;(3%tfyHy6v3NE~En(Hv&lmR6*ZK(qoKTMLWaT=P zhuW0Cwr%W*kGZzyWFD7aqIn%>{P!Fb230!P4^4}s$5L!2m$|cfscVI>H4Tmn*Dz}V z;4KLbk<}3H6>!L4aK$7ky~c~$uLI?W6H3cdRQSY4-AydR<=zk+X!r?tqu{nu-Z~Di zbn{!8Y_%Qrd?$7=K*EG+7I#Boo;w7)mE!)KeAUGnS8RSM05bY1Xsu6C5e|PG>r=dV zCI6*fiC6n-=sh_-3wwY9{dx(&BkJBBe4~D~0Yn~^SMDIg3N)^d1l}JRS}_gX2)*Zf zt_euQ5CE`za0aDd2Kn*D0Vh(JvJ1%sRy;rhLU5n*EEXHq)rXK(=s-6dC!5s$Td}1I z|3-9H#CSPbA1kYxu-f`WAcv_n67Ts-x8}5T`4x4eKeT}=uJ9oaht7zFwA<K9B<>9) zc+-6S5r5Wx<$-FfRd{8lhF<e2Ij8kmo2eG#x;_`)X((4qai`LY!R6SgrC)+v@tsDH zzsz01)1;Q;9_1J7;nYNCL(YJme#rO0d8q1n3BAQSu^mnv+V?9tblrN#CfQ6Y8M2wT z@ZClh>@o@%C5eI!C{Xbd2Ny}-QXUAQ%Up+QZOW?eu_QRfjcfvIlPC{FtM-p(6?wDV zxBi1z1~Kx^y&v|ZgL7W!U4O(a6cKF4UiK;oiQ5E9^GOtPZ{GZ}$Y3}AGm(kYYJ;8e zT28RDpLSth=ruq8--qe<>x~G+*RhY+M+S}(XoR$0C_lv?8tB&VMLExHQt*1&?ZGRB zJp21+Qx$$Is;j;gmGfIseS#z8e=XOhb5MCFOI<3>zd^6n&}cXGp@!b^hG2FWTy#Ir z{;?iHRTI{i0RU1I0*P#JqeCyZlFU7eM4w?T&pNyOGHdxTSw8tuF-eq`TFePG)S-q) z!>e!uEvyD#-0P>Tx(X{l!(j|~!S|)*)Rrr0+Ylg>D?_&Xc6PvQ5VZUUzT|m04qIb; z@MBoX>zC8ux=`z{?0K*YcJiMx7prN2<Fq+=#%ovM*-yKmTyf5UA^P2op68vQD_7?3 zRFad+rzy_DR20m1Hv+YHnvy*HQeSYBlLcj|V!zLV_opk#Zrt&b1y!tp<82f~QDZb> zSy`a5hAcRW8sobQmazbhqsB=TOu0nVn4vhmX5(IE?s{M7%^CQ*qYxl3>uqW9<)HGX z+L+8vbuuYTbulSR&0tcMn$1K@%`XR!?aVJrEvEdlQ)`LZ$;Vzk-sdCA$I)CRdEhAK zP9isZloNvOM6Pg@3(vAq8F*HW%EnV0m5=ALQN<8@_NZE4@L&@~YYA{nF_^W!&@o@| zWqa^|T|4jCG-a;$jZOxBjmRe>&qckKi%}Cthbt7)nZ|@iV5mQVIl^+eJmJbekv|p_ z=TYJ0a_C1cfSI5&R~UScc9nym=|`TI7q+3_3ez#>ghyd(M#r-bHLx3F3!TX3L}p^Q zUv1A(p4yZX+V77H{|B%(HFl+N$(|GYRQq~w_$n2i+P+JTEPEM;Dl5f;M{Y;Rt@K!4 zX`3I11fphe3$Ed{*?Ff3Uic_&EITiPSKq=Dsp}8K$~ep$+Ljl3(-#>s$)h~A#dqR8 zU+}QQxBhUf*WSi^Jh*shZ^x2=n@Kcqz6$lhz_sOg#%L9I#%i<hjMJvz8Lz<_Vc1U0 zBAEXMhiX4^Oi7;B2^f2H6TX%(?hu&pEreY?@B+eVJ@6vJ89i_v;fX!)ot<jdDQ)R7 zFI%-AK|wb2qIINBO5ueVZN%c3ML^eXBjhrmSvv@&8PF|z2xS=1f_6d^@km~z8@M{b zLp0oQKfSgm7>)7U-}7YYO3UvM-Em?S;|svfWG+jqmSI`q`cvTx?e&G;^@ZN{?To^s zyexKY9z+G}-^Z)Z1E+n#zuQIdFNdC?5sigjColBQwUN>9aD4rC+|FCJ4ZFjE*yz5B zOE^45!M#wWxdls2d8;pS!;$MF!?A^G!z*fds15euehlERP+7&bA?<EFW3);<V>Mhl zJr$=-#WP+Tg=ar4xg3()e35KS!GiU;!U+L5Vr_)?D#-;$0As`i{JxT0Oc*03;HZ*Z zK^P+@;G;@%En$q9fKMvPjYlxcX(B*)(E?PPjc8+!(i~!EQRd(yA5K|sVy<8{pT%qW ztZ3u2b_bpX+xeg`aW=N2iEQ#Mpj#=RTPdJhDLBf<Np=Lys7-j}x8hN-8js?&cvQ6E zQM&_=#&%PXmL+f{nDjn;`DUnUKZZHElf!w@F{NN1zu0||Co;?Kw}0xh>)xzWxcGkw zVwn(bd0-G)?t%q~yH_2XyoN`>flqfNhVNo}Lv0MhN<00bQ#cRwBLZbG_NIDbH%ise z(?&2h#SF$yh+yn}_Zh+1=I3OTL=zFg&|gsQXE5e3eZ`B=nXU=ZSDxZ~6;_2yj<3OS zAr{*pf-=Npo&hiCWxcOFumTmIW0aE9va10e;C;lwIeQs$mKbfcnr++wQWmI2!5*_< zA`7r<5f;A$-%%14AKJ$oLkO|xvM8uOGF})l{H-+RSb3M#4?5Si5$|4yFjby4hzo9s zB7>!r!6ocfY5uv$#A%CYu~)-jm6lH~1!IO5*nM#mu^J?duP5r4Jj+1F{Ms8ZoUZU{ z=cfMbnSY0R^S?#?<9~~~^53GK+y}LHGD1t^YZW}G;vv>qq1fqlmQd^{fU`rfx2z<u zo<*WRXDxs7?DC&k%U8+r$*>EhrQVFgcrIf^?v<C&lJF&5#^bav+(b0ZMjW7dv4Hy# zp?`rg_$mKMyoRBFyAHPE5mu8Vb1<8?K>{4?=5d*e)0P2_*Jk3`Pjg{sW7q;u){p&- zD?f4`F&+H&_sw!I>=OrlB>D%4ym03@NFpT;n$Au4*tev+>s!*z`IdBJz9n7!x#+wY z7k`h*;GMmU-rq8#bw=;6{MBMIF9JB*WY$<oes&g#zQS7mA7__WSj%sf<w7*8$>2y~ zHqE42e5)IK%^oxHx?M0KT8Z$Xd6C&|j^F_pNe)aScp7Wv0Fi--(8PkLVIjX0nK<pv z;OTfRFL)Z}Ax^vCSo}DNP0|1P7rHg%<WWMNeZN`mg=K)4L{Eaq3(IgxN?htbH{E^T zl5YODq`T@{(j|RMx&u$2qaVDBK=a_23*k{x5I+i!@`}|wo<L0#)_)1$Z1V_NNtT^O zqE}kW3(qe1S<9!$^0Un&`sHD9o@+RkDI+k@a%0zkET?ZR!m#*dne;KoksW#uvPcJo zn0l483E9Y~h}MuF<7FP9ni{FZ*6$DktIhV{N3f}_!%={j5lZvJFe>C=RpPWf_%+Nb zUgF}E<`-aKD2>;a;@MBbFD=N;2jj&IkGOt@IOYln@P(2-+Ko7D?r}c8z+MPJ)ZAm` z%KW1UKQjF|?cuJ4CYDh?U2%>ck4j&gl}@wL*Qn5mzf-6rc6j4_!7bQ2JY>}5ohEF_ zMvr6PHjAn`%G@pGcx(o0E(5K(8}OLF9^0+B3|U*AYWeXNLDtS-?SGiHUuErou;Mm8 zUS{p>s6Fs%*7hSNq11HlQtB&N`wg@9Zq|N-6&c>m-No8FvHcu!m2BIrjh`nHl8f5! zn6=+!?RQvl4<GwjdoOAiPQb2(9k=LORKFS&X&;%@53u@2tl7@TepY`UqPsI$+n4pK z(mV+R={NM37y5g7uHu|Bj@mCA=VVeg&c#F<Cpx!mTsA4Z<MPS*H1qy(#Y|?8tK|T_ z%f|se#2}w0nNYvbqEN=yEPaQMkNEh4kFQC$nU8<)A@s#@-h)4c!NO2F*#$9xVjP4z zVFyqOdnODCb^#iWuNWq&Z3N2m_oCBNU{3RS!caKgNt;8iY`n`bByBtgeg1kNmyOS6 zmP70vpU*6}?Edk^c+MV=t@)=-)LhF>u_?mV+#mW(4Zea66ZYl{&#*=8>f&$1ks#7R z^&*|?-Pb9m>oH|+d;w92^hYd|W$TH&k$I0Ye<NdZ@19P~zZ5Zl<A0AMKhERzJO$)D z$7PS5QBGceWa$y?ak1ap3Ng5^y=9o(*DB3k3^4Yvn7s@jki+a{+=(1!ud)A)*A|F< z?)MqsHqw?0o^yf-W8*vzZGNJp4{>9|@d@;dUEX|MNggYX9~iq7V1CaYVS}d9_6s`f zPH1Z4AY^_!b|LPOYH%Z_3XW#{VZ6E_+abePK{7^#PgsF2X}+F=v!3Cy0?vzg7erRL zkQI)ZEgWM7?u6zaL51=7d8dt-526BoB?lr65%i}_dSMzTN#6<jDcJjw9;Zm0_kunJ z9o=Vilt#4|9o>UL7;Z>!YDP$Z5r}1P*;)2gnUB4eTgs933T_h$udod248hkq$B#tY zPVY!3li4F-c+RSk8PMr*BC1Aa!|)4e-p*ws^QqC1#l-9a#UW<I123D<XJXO$^?d9U zBO-JMO%MZn7l%>v+mvJt!-B~>vR1TX=!^S8?+DHT9l6;fT&Tqntr{WbKqrt@BeGFU z!et{M%={yyD<;2MHQ3RlqJJ&orUcBTRt@b@gWK%E53p7woG-1t1&55nv{#DLMh#jJ zCq=W}1?K*do6oo{*nPGkH+SPP%sw2g#BIQCQCam-9BsS`lZ$5z{OzG8s1pVZXC;52 zfJaSY^Mxfl8!t6+@@dA_YVf1edARkn^DyTnUzn{$#cLz}(>#%nyFTJR>BpOz)j%@( zEjAA!x?kTIKY8R2{YLzzi1{9Z?;p#R!`m?&hudUi|Cw_6N_P_&edbke!HeV1@#@A{ zjz1qFJ?kSVMUAv=__{|9Pdy@an5>^-vTmWzz+{~XN}q_|xHCi!la=2-Kn|02jm#m& z2OQ7CDFkt;H1z_Wf@X{R#u()U3}f0(C4Hb9&CJ~iBgc$`X;XvQwAq3ENwL?Y*b9o` zu{^O5^PL_AgYF#I50)JjL>LwveT?S!`#{65<_cCOr}s@x@54^qf)l4W8pMc*2JLK6 z@`6ZFG*}gnV4)3y3F$S1E{1eRO?F2?Hy+=IW}_hM7A(dW+JVrWv?op4lW2O16cE48 zLRBlxtMO#>!^Ly9%}Jol=3=7RGMFs02?4#fd_b7!Ihb!Y&NpYFO{`-(iGQDuqkNp? zgU3e0`wQhFH@m-+*}ce?^>^W^_0Pa_S^sQ2z5VmiiP`;&@ht3*Iiq9F81l6gi!)u^ z&i3QoUmJvF5iL|p;aH)=(95x0obh&a9>Zeq{j}2$W2YU+9UQK-PULvxbA3rnGhaDj z26^A>ELU!he`*xowO#%=1N$l*+QFy94+I%9g>87?r~X=xp|5%L*;foY32NoOR}`8n zY``BLdKeh=IBh+N@$!+xReL+jeM<GqL{;I}4JZGhs|$H2uP26wZbl8vUhGi#>m@I< z@>Wvf{)C<kN;N#_ag&6Hso2AlaJ&Bb6O<Bh8=U}_JBokgGKhcM@4+AA!OJ2z<G{RQ zFuP6E<*yeG<-ap}457)C(-dQf8;d8LNa0RG*oOlwgyc%Wh-CIgNo&VZd7&F8t@A%X z+5Tfn(E*fx1@gkT@tFH2Bq%(EuHrZhVZaoeTyC`kOrB@+*$?GpeWgVB-C)%&w)GqB zKKrLx+*d~UEm}2bcqqn$O&BRPh*z?X9Gu}tw&PvD^cG@fkYY6`lvN#gXNm#xd&J3F z%OSj>#3?>w?p4=f_4S8#L+nAnP8H(EKZ_LKdR2FR3hdCgC3eJzNOAfd2VAPod}Kc2 z_zuMJ8{v`RT&_r_Fg!^8F`Nr>a4vIX4$g&NIsy)n0AK$h7q2wmD|7v{YiM>W2*KDg zJTI9M!B|c~8Dv6l-An!44}ceu=KK#a^rPsGWo<K{&tk<xB02?S_mV%igB5i=<{yN; zkDdh0!>D9!VH_g16}9Ci0_5H6|J=`5n@ivP&k>@HpD1gaL4BbSSWg6jv6}#ScQi2f zOV(y=IsYrvo-$e1e!|#Ll*!svQ)xl6Z5e4|6-L7%GM)c9%w;@Y7f@&!&ogL|@%&`e zlY1DkYZ0sSm#7CrpZ^uj>>63GcOd@*iYs>!kWZ}l;tkV3Deex6`#QuOlEvEotkd#q zhuu00z04O>!?XDGW{KBX{w(=AD@(r4%95|MvhvAqpLm^>C0=J~S+zv<1kqxA#aIcI zGvpSTy(AMc2+ypoZ@maI3So3M_bom)^6?5E!bZe+i(#WGL`Ljy82-pzRy%XF2r;l? z&nHIsZJ_3Ff{_fL#N6NM9w#}O{SaCIBoWKdh{`5q5c@f@Rg<!r{R&xa5~CR+mrW|h zn=@?^;`zf(RA38#*o3c+f*+su9N%EqZsHjX?HA5w>K8bTrDGZNIWvlLj7X;|bEkCD zJ!Qb7Obww(#`at>h`C=7&;Ob)>85nzDj0qU3bUGV`=^|=eoR&$CaVvV)gxx>e-7fZ z&)Ld*(8yu7_Ln)#*1tm<;4oVsmbrMX3~)bfj0na>Y%Sw<{JJYGR#(#F7`N+C^Fj2y z18dW0+zVtp#swXI+8K8-w3D_&P$CfD0ch^)RM<Z;iHGz=?qV?(6^4QHHiI*MsA}%t z!TA+zh%b~ewTSY`9K1;?S(7svgD-?I`6B+N{-hu&6l9Mnh_DDT-fuyW;UZu+wkP;0 zMj^;Wtk7mw5Z1Gal5a!>?+CavZaT^=dx*H<tRZDbU&Ti9@2v3({QN*8cE|6+ePB4f z#=H=X*y$F*yN2MM;kgS>#_m`uK19|pV|Nk97mC>3i`ZQ$K(LOeUBN3I5Q=F4Y7yek z{T!<JN{$J%hxWy^cpDfY|7VcKJ&X;PA#@kbU{Fwd{+B4xhCvK5l*@)el=-hfpH;(z zx#LYpvVT}MkQ+f*I4ocA2GTo>p-9;<BYb~XX-O5YgYZ)++_~<zYgY^N9_o_j&6GhJ z!uAfl;6)h5aDDhbte9`XvflwTe=ipN;rrmGcR*XXO}i?wKP%zAkNLA{d3IbJlYw?# z=u1R9q$FGZtm#CUH2@jK(+DcOyh<F}6`6;(e7H(>hg048iMqZ$_PWTjck%t(--tIz zdG@z)#~)K>|LK{Lfd|y!c0~B{CryR@^G%b3s~YcWA&_U2ymMO2dr4~ru+rVerg7u1 z38{Q<jQHY1X!<aI@_~145Z9NvCo-u2Tv^rG6Vwk8uRXD}gEsB7jOcM`uAtX6=3*+R z@oJgFG`>gXVzqKkVeL9R<29T>VfqfGHBWKNNFL6k3nO-yh+fCXp=j<2z?zJlNjX{| z4+Ck0(-6ivBo5EHZ(@{Z_fQTLl&^u(--84tc)kgwNr~#iMfLY+HIh=zLNAr(UqEWI zk7FgLH;zHC(;w$zQWnQK;H-)h!E|9<KA^c<NmmwE%w$=d2&T6Z{~8}3^KqEXvn6jl z`#ASwNaBrmGTQ~LKi-9BS$qbbRq>3b3*+<gEQ>G3b6LC*O;fs-1tOG|`#Ww7+aRrq zAFrs@k{Cd1Uv(l$*1qoah%b?GL&rS=FWs#csSMWgLZ9QiGRjCVM{Sc`jje()W|bkh zTgiVfnloeSfAKsNjx!%2xl=pPiJn|>`i>n~3*z^nh!bK9gV!qo=uiGa1g{ew2EZAS z%~+@vEh0cYk{8jU4$PhLZq6y3j9xM34$vw0@lF<gQQ&p}aGRS!f-AZVac6(jiFMwA z9ixL$^J^%<C2D=$uVe`B#r44O&}pcK0*2s>)1l5Z5$q$>)>nZNQTiy8#1ewPtlusQ zaat?xmAo%P@WmIQ7y8d7|1x(Prw6(^Vl(jYDcx~6I<UMG-6-5kC80-nBIXBX?k42t zmZ1Z1w5buJo{oUJu(}h^`3G6vfk)9nkQaQ-lCOz7fn339GChr4^4;X0yu8z&^`+80 z4~sNFskLk{Rqp4yjlnp)i`C9I^#oxDQonOwhRceAEj9*VQ^Tf{ZxYPJOYL6c9pS&V zAnq~aG@7QuXnhS*g!2>ePE6VhuaQmk+p(|iz8co@9HM*#46lQh2N+!#OP;Ip%!1ct zwgJy0i`621UbrYvcyJzWgrinFuzox4#;!De+>;k8PVDxCUiT_bol+xHPQYTx8sCKR zhKG?(CnH|<vw!G~<aN!A43V!6OFz#m?TRe6d!9$jSOR%(W~&`<;*a2Ed8a>C{`M^| z%m{lI_hs<=GvdC?M&F5dalVPS<)7ldOgm2~cweT|FYe3msA4sE;s65iNt4Xs$_0-p zv>Wlnl?yz@of#Za(8k8`P7C#(;lm{r#d*02rxAv&3>F9siBl5r_jE)B{K^+A$Z{|c z<*0xd0|cm$VsMBt5!j_2;jbZS<ePxH(|AKCo6rJr8D`NQ)-xF2(hiCR;)m~95x|{7 zAY8=(k&7s#LQJ$S8bd1ZNGBTQ>=xQ=Sm}Y=;Efr4+02{uk<#)Q%!sG+>!2mQ^=A^G z1JHv8u!q1M0>DmQuQJdKIQ1d}-Kft&j$eVuGcX1EbR(C63*Ee--1BvvXc~&l`{tOi zhu}I2MvL9Cn-g>HM;M91gXmYm-?_sb-Mz!jg9_vh_anSqiVizUc?Tj+g#XDr4&4m> z`31r!4f+D-d**#F?#wFW*0LG4CjDn#WbTofktvEA>O3>DeGDCwOJY#wVzfnoW3?Ob zjMK31!g833XFp9rP&G=8<RZ+O_dYg~0FA3S^Lkyynb+$o&b+g(;>?p*aTrU%9K`LM zdD{^lsz-=&ny8&X<sb3mpT)SFct)bmVwB3uIu)x4*RJKWu?^y6??84QcR=%S@arsS z$D^1W=kW-89%IIN*a6L3kH5X_1=ttxqE2xu9u>T(Q@a+AMx4=R??4%jj*HoR!#((7 zjku!Yv%dyCp2CnhuQ;a6`-HRT3U6dSoX~pJe%PC}TWLP=0bXbF=bU&&=U$kcynEb% zUwT7KEf${Wv4cEdk+0S;l4B<GgckjXzf=q*_Njyh4JR6lbDXf0_!ovskS9QM<6k0# zD0MR)$^FD3RP^01%wG^1@rl`R^!`p{U!dcOW**|JRv8@PGPLr*7?61pjT^@u_#%xw z?}!e8&6#&s<PDb}{Fnv^A1iP7;ciRx=-Wi$EK0^_=m~y??(#Qat)+Wef@3J)`bRGS zN?wtE;2nO?F9)TJ3p31@T+w0pfh($}G3wYYTs9*_xa<d3MnRv8Z_6;=%`o@U(Ldq6 zusGLbBaP8RpOJt+1~0%%^{y_d5dJQhJjsdP3dZ>6*Xr{ympA@I<o(Fw8x-+?%<nS5 z9?gHv2@-tw`A!4hY2Z5ze5Zl$Gyo0M1xl)H*BhT@NGFw+EzY=dta#c|>nFKHZc<}e z<>INSWfsiRvoLoWn3=ZfhQ+l@$ClRA1;!RFZm7~K#gDZVH7qXCDr`lbS+hKIi#+*0 zOV(9gqq)j!8mh~z$jW-x%sGC)tG1@HS_{<K+_M6ARMuD4R8MlbZAC?Q1nLMB6(L_% zQ;JjyAE>LVsk0RcphyDsmDRPj%JQnpTH7M=EUQ^yt1GLi57;WJi>fs~>nj&7E@4Ki zv$4N6cG1RO*$l>lV_LdvTy+_Ke`aCB;y^Wi6iKj6ca@e@kJ4NV0<O}UYDlI9%3NBF z3xd<oq+n+KE9<QFg+TwJetAh{6&O}lo7^j_7rL&}Dtg2y7X29IswtO4CWnwBOuu4A zO`TR(QZ0WoN7(&2`DNB?7JgLOw`JF>f8(u!r9stw^{%X@VL?^kEd5M4qrMoXf5G8Q z{jwvs1(q(Ufu7Silzr7UMhE|Xa(zWfZ6J+(9-Wasb*ijnXsNuW&ShmOj6<lgSHEc& z-R;tP{;hU1(XOmyY1hh9*yFj{r9E}GON0H_?N$Y<(}cyOUo%zKurzArC++{7_Hwm# zm}q}u27N1=IVZn~z4>W%--;Pja!!5~m1SjtYFBZ6O@sC=8TB|P7n~2BQvTBECAIYp zRRLGcf<=K+F`I3+#WiI_mDVh-6%(^$VM%2*tj;sd=Q7-qE2A;BQT$k%Rsmin7V}fM zNAf3y9M3-a<^Rw4&G5|j;5F4*Z0lVO)wfmGEU9({s>>=%s%7goTi^6mm70d0O7hX7 zKV<<8ihw&Rt1K@M)X@pb;_5(sy{klX)iqRWm5VvAEh|CKLf|q+i|%o8EqoLFqi~*; z)s<K)sw(dcbW6_F$d%T+f>dF;%{H5=HF`NpIDt`AY)OMwGiG6+I#5?aIhRzzvdYKR zE_J0D!!T)F`q+dS4b`O@7LfW$2`(3n#5Gm=PU#1PUmq>J^Jw_6(ZUan7L$fgVeHIk zb))GKrk>$KMsu=SQJLwZIhCgNOuY1ju~@jOOBM&Pa!rAg5k5L~&NV%NG`VYRV*N}@ zttzvP=EEf(^G4I5j|J2Eskho(^Ac>;HLh}_PjvjHB~?|n94>~gs+y8AE*Yuy3AS__ zs*kq0#*D#wQj1>G%&}-`l?xkc8tQu$q?V1rh%BrQl-X*ayfI7aFh<~H%3BA$RaOVM z1Xq@7=t*k5YYbSrup(n1?!dxTLLWaWwRF@NEXw9uZqzpn5UpT{(3L<nmvq<S223Wb zrR9~4avg=p#t#o_?0v$&sAnb5aHX+_Wr1?YS%z^(-G=HwW34n|p<7oyjBb*vI<N%e zdS_rNHRM`|TC!9a5VGBcuC&D^OCg_DQ{!4(QoYnwUKa>JozOv`K0V?8n7`S-ZvG{W z0R&^ISkD6G<ygyaLo}8?+ST0)17+6xclGH?V<gB91RBZN<kN?qdURw}%4nA%1?1`$ zQW|M>8Muz-0Mk}+2Z{66G$Co_ro*Mx3X9<o(@4Af2+vX#D1l)Fs-ysCm;}jt*{<1u z#kd7kFTQ=Vv+$$+8Z%{aZHZP1o8}xN8ayoys>g>hXsy<;%wmcx!&Iv(DGe+uEh()q zf4*?EF#$)V)?<AV%ZsUnGorO`!Qc2fKBIfKvOpD_G~}%w6KJfgKV!z0Xj)w*e#Ddh z+0c+|du%B#Hb^(bczP1FU7c2&J~j2uvTN`+Rn8HbWK|7304F#&Ay*f;y`i!$fB~+o zE`=f02gH1W5selq!-&?D(i2<sL^?=l=tyW~85Zn7`m&l@I%Qa+n0qh);S4HD?g*H3 zxW`faE4_=g#L`BO(=$B`Lh71o$QxM5XkNyV<yjeqB7GRbg@HO3U0-=s%@Ws=3Pcnz z(b9%07y<gORRmlmi?MUj7<w-bEUu|rO2aVwEE##E2I$(B)HJ}C1sY2O@N5QsRpsJJ zBeDSfB8NxRl4;XlIv>KXqu9*U=E^M><xB_1UUT)kPyRUDOl52Bq{m03?IV}(m`cD% zS<u9X@d4l0uR&g>7a!X@tnK&NHZw)N_m;gS>Kmyk-x>0pqkT(zM<`GB`*${r^vWwg z5dHbdPxijVc99BL$kD4^`$e&nc^xH%g!kYlTad19>FVMye$?LA)s=>{_5Q9d{;rZM z)YZkeQAd8*)zyi#>3?-~t&9O4hoSsc;%uaEBdtaH6;kI<ySg&)YQu^584n@dfftlc zTnNtoHSkDVk*Y|KAk_%}rmJfQ()_2;UOejkxvT35q!~!tkk%sQZ}isUi<1SobGH^L ze?EB!QvTCZ{0xza&3@-Bo4wI#zi4282Y(~T4LshO+FF~sx?E_(mgJm~lya?-xWv(9 z`@w~iFTc`#DXX%+7k?|7ySf}i7$4eeA^x(Vo8jPRo0jB^#7s*{SsCj|a@`l_O)8Gr zosi`6B&DEaT9U(?DCqgFXf*W5-`ZlGRjd<<otETUi8^Wb#pfnvEJ;X80}~X;s-DD3 zU~-dOIVL7IF(wZvuZ75$XqyO@NAOpO@!4=D{~Qbd?3k`z4a`Wi3As?`$O`<tH5a29 zNzMmi{7EURVtq-jNZhofw3YFmq>TIeU6(X5*grREO?=F$q_y$Bq;>df!{0Xi?ZDq2 z{I%mx$KR3oTa#AD$J~;TG!b<@NonY3ceipAV;}DaK3=f77HnpKjTdaZU~?U+iT<=f zrh^Z5b^RRnLYX2lGrM&hb2PzJ$c)6;zuCK?oJ5-w<X@p~{=*nw<oV%vJ7I@~z~S2% zxOSQ3yf5aagd|5!qA$r|%K$0^<y9!>7bs-;bxE!}5|W&rB!@2%v@%ne<Wy0^W-G>D z8S3mooukNeOdp83j(S61BXK#@o0od?P;cI(>=+H&P|woFjKo6VL3x&zY}~SNK52M; z@&fHzv;jRDZHTcEZA@ny*Cw^b;Pvr2b*?7H?zbmB0wu1--<p`bq_r_V(!WM*9<bK~ zd#!;*Q`DIkx?hJo1B;NisY%WfXe>8zKAzJOIX}u!?)XJlS3b*UB{}bcX3~&d27ET~ z^N7dTt&G8J2*$#Y8!%K}F)eZvZMFgwuK}$F+DB=(pta5mXyiWHUa()x7fBPRC1vL% zsne43^O7=RptCb(!Sux3q=`96+1Dnio+Qe%0)KIs-|K$a)%C}2yYA6l&-e)4`Ox#& z8TO=gF@;HO5O-TlPSOscrI;JfIXvFPMdu)neLfc0qFyZgkfjx}9K;pqr_o<I$1tg_ z<0$5su$A1Tw%FJqG3RX71GNboZwJ3ZT*P((=7;0;IdB!gjVD4)azS!f_>IC|HK2yT zXRbi`G1`)t=RNx9nde?P&s*bSu0N*;-o%(gNsq+cl(ZT~z6K6rZCqYbYh3IPW0RWt z$CM%)vzWOe<fL3H(XJEUe>COFhg_;57wt&+c9i3lW%q|V+k|=(fxnFtw8!@0(+t1V zGrw|^+WW=+dh|JMKaV>5?(>}nzSF>W8u(5F-)Z1G4g7zsfmGS|Hn&U}cJlLQ#2WmV zFk=rZ{Hg&DlxS>rWd`5x5TCdCyHNPxd)nf&;su%FN~`#od&mn7xYa0U+{TYt{>AAo z{Ej>J7l`}$F`Bhy7(tA&y|uL&<qU24xyUFmV;%0}`C+&zK5a5Fs@YNudd6S;;Htm) z;9j8kJYoc6CcbsB#G7(D5Zm#C`}5*swueh=LVlY;j|<%bHs!$OD*^lQH8y@u8nCH1 ziT!`?`G_&zy?b_*OJZgi=}ksjZlre@>3v4}u#x`ONdIc2Ta0wKksdJ8<3`%=5}Wv( zZ={zQ=~YHL!$@y3(sCoc!$|Kl(ua-ow?_I`Bi&-8yN&dKksdeFewP~U8|h_6dX<sR zFw&chwA@JVFw*;s^kF0Yt&#rKNVgd2ZX-Qlq{of4-}j96jr1}jy~;>u80k$$T5hCw z80mdR`mmAy)=2+qq+5)1w~-z&(&I+j&+s?r8|h_6dX<s7Hc0vUdj221HM^Cs&BTi` z@oH>ddP2g@btSd6IB&%<w5zySoW>Rxk4;F(FR8<OGTZ^FPZ-nvN#N^x*CgW*o$nsT zjFX4PX`{+UrOVfT3wWudUS0zbZKWrO7kl0Ha5|hIUh<uR!3)1`7ze*4T7r1}*9#|J z26p3w1etwGAYQX4m~RgM?OIyhzgH#UdK^vHxz4FMslo*6zndxaFxq9Fz2k+b%jFG} zm*Do!B-a^lHWT<}^WUtMnV!Jjf16r8??)37W(Bl{y6WyBPY~8NNxWtHRwIpjv8~c_ z4;kraMtagnzc$j?A4$3aMmpF?Q;c+kkzQ(~=6tZ5nSYU{810y3SbxN)_+=CGKTA!% zWJV5>tIYq;IDS{ls)1JAG2kcrU-&^u_1*LTwg&o|Uw1wtTT1KIVEff)BKU8{@pB|k zrsmT*(ae2wTATgN<^R8z=1!kJ$(1%|0bYMLxU$AxIW}WV=G6@X%v?S$V{FFwbcwc& zhN@zOx@4^GOqII(gAtMU)}*8l&ouWSZN|u&5#G7!1HUurYv)P|aZ1~p81Vhz94GJ& z`wYl3aK|W{?FS=qBzz9RVm?X6KRvMXf-F>sb@V^#LK4@XL2O($Q1OmfyQ39*o;WbI z#m4j>jBm2U+WS2SRBTNAwXo8Daq(DSZE@UX^yeey!x6|`ettG<IN~QD;EG8=EB(h@ z#8zUeW08Mk*h=R2f?fZgTqN=zlV-ihI~=c~bihV(u=o23+b1F>irr8DS4Gu?Oziab zI5HiJq5H(s(6!@A(Y!73vP%J6C2Bho6_7cu7JxJHb2R6eD1em2VHW_%5`Zgl684pj zNdibq9E`o1W3m7;64zq~>6jvbiHSF3m*$u%fb7KS3V>_@sEOyZQI7!f69-|J=a?pd zg2dg}ayq={-v>F16Gx&iju}Jv_O>Fi2z_#>Lh9PY7U;?06M&X@E23D(wTZt3L1W^@ z2<aVpgKq)Ql(-lwcg$2u0Nk6H1U8QA9S<T2Ci2aW;|Ar|09GUxk-^+S{|&O%#G%;i zIc~k+4=8ygaSjzyIBXq&)rmEi0+=VnS(7;51z`RFKkBSaypK{B@n1=>txN1=w~K{r zZHYGl<yhe0zi+q67Bd0t2J|0x0LXzZY=#}*PZ~4<n^TA59uPPjEJ)(uQ7(lBK<rWg zg9cM9#~Nm5Q7FfskrlMBnzZKu`vz*n5i@`fCr#`SGRc$^CIPES$UE<E$Pa!5LzNIp zil-ukT?`ImAQFBkFoS=CZxAJfWuCj1#0v+KSJLZXHVIYEv&CJ3Wbm~>CSG(QQG?$g z-Nk}#u#fnW60c!84IGoSk*&T1z5~aKJj^`<!-$D=&_x*@0FNO;;@=~e9O`}u*@t$( zoChV^hwKBJ^Y4WigGR<E8$sl7Y$U3gs7oYj@Q>hKlH9V%L1-jtoD^#l#wO`%nSTu3 zO`0t7F$XXUl?#V7fl<srC`q|!$bT|_F|_VnFpL7lT=_lZD~C~?F`qk;uN!iC9ORFS zE5i`RI^vo@eE#bwNsf;dY(@KvK_iCJZX5hM=E~q-Cd~tC@bHWASS>~QF=pi8UnO&9 z58h3h-%6T`N%N$n`3Y&B5;W&GBq2Z8E($K_AD4}K=hY^B0JbTyc-T_j?T^Evlp>JD z*b;t&4mr<T>`29NP2v!k-FaI74J1np4Fu3QfFm21cnG>VZ<zobiA_+>c})TsXdAo+ zojNagIU7j$5hj>3rouUw-1xH!F^inkgDo)?jmF$IYyfocuno%sZnb^LADx5~HH_Yn zKgD~Iw<Z1@%!m9rnHHLo_}er9PYV{VL|)7o^7O^zmzKz1LKw2n>4q1`NZbk?4|ztA zO-$SgE<>J8_Mjv?@k%_0JeQ0sjW#ur|K#G3|ION)fJaqi@5A@rPRPyeEWM^X3lI=O z61Ida1iA?c&>`#rK_V)IeH9`QL;=ACg;5m74HOY~)R~bP_iYA62Xw|kXWYl1qT_-x zI=Bw%DBt^@s@nu~e*gdXJzqc1={~3G)TvWdr<Qwf_uEf|tKo2y_p`1LexG#@a+<w& zVRS-I=fsiI;(do6?2QhAFwfhF<t+3}q!B`^_ZdvC(EhB4P-dlfAKVQ+=f4Xd>%3kz z;d!yP!Mh5b75Y<PF4Q)A_ab^ie-7+`u+{qwO&<u2g|(gD0CthkUxNeS?=Ej&%(&3Y z((K*d1k1c0cnd}!@qUCs3H?3uuc&8__cC;B=pFxSu(scOm|njp&3@6_851e=f!~7m z>)vY+8=(&aSr86-v#>meKF+-kl^*gAr0Gv`Z-H>cJBezCbH9ObG%r#J;h!=>hM5;& zyFbl72esN}-q%$8ERY9#J~J<+7}CE2MUbLq-V}U<j;Jv*^S(mVgg(#ehs0ttZ#uS# z&==YBA(feVshHoPFEeW))tGswBO*dyWu>7hb!Oi89GkDDm5pZJY>w_XQhSq`*N+YO zw@A%qUKCR;bX24kGw)iq=Ub8HnRySg7rzs!)y#{rx4)MdS!w2tz&afIF;Iu@UT5ZS zrPqcjnH$XfB4(Oq=m6Z`Z07%ieUV~z3S)L`HL;2?psi9!)*??i_>^pPOhME-C!J9% z5o|5ZVxr-7&~?@_=@6e`J;A_V?kPl;)e&)OU6FGpcpD2pI+OiN^79Rew2(qRjc?XQ zn%b1J3A}Azjdv-)kdp$clr;fyVqKYYzi9E#{zQubb6iWSzC{nN%6?l^-=`|)_m{4! zVa<hTZO-90hip3)hNT?@8_^aTxo&I;7b3;Bi>N?P2f7M=neLW_{<N;nY7ni_)M7oe zPtei^|AQ{KuFX0}RL^x)Hz!qTUaNjs4Atwiw~OknuIfW4s2Wxbi=?$R`)SeI?`m-} zi5b1!{f<4cE&GsYedcO08kLq<9Sx@q>+gs$Yr8LqJloF2dq*xi+Ri2fwRMxPOfsvP z$(2Vt?7@Oz?Ff&N%v13$oyCPgRkBy?4?)ygH-|aO)@dB^o!M)p#Cn!s$8q&IUP2o` zj7ehMlFg2@9?8brtzkx%^&QRK7Jgbx?5BxpESX#~biqr&TDOP)AqpQ;L4pl4Le(KX z&T0)ShogOmvb&@Q_&XK<6w~htGvutD<aa4Qy!7dA#eYOU?g@{CUE6NLyHvxqz|Up> zcwLAmteDol;WklS<*HtlRF$9##EPKxmqO0Pz)Wr~2NeHRH}EeCpEHwunU%wdl=BIe z3TvPeoWH=GrckkO0phLGjJ7#OsKhJd+X-K7HA1DbYS^7{bIAzxRI}In4!4|MB1FAK zFc9h^+g_pf2W|y@Md;?u;r>(R<!Barf6tt9KdUM8KEYMFp9nSH8@U=*h*0M}mHSVn zc+iOcVGAvPG196$FQDDlCay^Rvp2wuZC{CZ352`AsE!j(2FbQtk!qE8L4g|Iqf+1x zc<;!??6|UF{m3<aVEFH%@h;wFK#nD~gzJq)NFh{vE;_Mup&6Q%eh6di?Z7p9mhVEO z8s5GbjL>WmZ12Cg3eOS2=k0^}7n&<V)cY2jG*5&=Z<O6RU$)F*Zwpq_(1PqHSS#~} zFl?cPBGh=lU`rN>Q0Kh~?uE`)8-w>>?C8ak)8u`J?ko}0&E8lcgjNw+yrW<<bdCt~ zyhB;fQW09cJ{nji!b<PM2<Xsqv9`|p4O$p#lkwQ#oldnClC#<S4s%vYnXTUY*`D)6 z*y+8REj?d^UEcBZdX)&fy|=MLR!d7C@m`Fv4Xu%!J>FG_$<PHN?Du*Y5o<+w(YuUg z)`{@C_hE*|g(4jEPNad0ML6W`!@c+t5sr9!FuvA{a5Qf=_t#5Bzz%)^j|v;44cNi| z%+C6S<Y5QDoUOQAq^N0Fs}XRaD?F))kAkMqmFerSns{GkJy&INZ!o-1aO5^i0o%Kh z!j=Fx1)ujDWQTq!Le#sD9dfmFVxf03tGp)6tpQhpcn@7GIb~ii)|}9FKCbaKUjCtV zXsej6^KPNAO{_H<)=JK}8$4fO01Bd^?dea_uhZB~H)+4#q~|-dU;AkG<{)<&Y`mKo zQae3YpbQG%n*JRNf5lmKn{<ldT|i5>s~++WWuxv80fpb<(dtgmb1du&?Mg4j5y^Xy z^XKl+YDA>ry_W%ZPxRLiY{S}*19<3OPY0;kHfyqNP8r)~SK2lm#~eqla|Jvu3|H7Z zj(JN_O}H|^!>-{?M{C1Xem~Yi+xs6F3|IS?Aj9YV7U3AK5w$4nOhnPlkI~h(y`3gc z$D&)D<Mr_z=j{!XIT>=0G&;?lz1+yj%;<|H$?mj_LRLl$g0B<4nQ!D|>tpt>a8Sze zsbPcByI@CF8y<hu0>UdnaR%A{L3Wt`x)jPXJzR`)KIMG7$jr-!e$I{XKXkDYvgrR9 zqy~+gX*|VkF#SUy7Wg6qQ!fDH{Vhf*5({#NGQ97?wMbk9n>vG2cS5HV?$1Q(0s*RY zT3BvG>V=0!G%_sp8Cr>8<Rgg)d2OXZtoV$qu}FFu>2jHs%`%OtN0Vhn=rWiOMr5Qe zQy7g@rw_sabZMJuL~4S<&RM*|hzv@bf}&k_V!R?l(%68m_p$2XX>_#fi<pg(QE9AB zRXhepq~ZuRF2qA*w1;&E9zf(p#&lwK-~+@))RE2&?8cx*y^24AK#683zM?z$OvOKo zo{wfJek+D03M?tq7kCnb81*TBKY}3YSG)zMq5;L{qn**9;&*ffA5y#*qZkb<ek1&h z<|zJ_F5n}I|23vgG^+SI1Y~Yk8SlWKF=)A`2rsuB;#h@(MxZl>E4L<44k>UST*&LC z)N8T+<@Hwl-DrCL62<RFdVZ@iGYRdvSj?oX#7EA4ycLwCbYYtF8H^QnoMb-<K@Q#> zPt%u<-=LQ|PWGm=BaFZ*tY4inltBi;8_<`rIA#PcLjQLfm;W4+0z1*JPKTmA^aQ+x z;6E1L`j*yu2Rfh~SwBEA7iOhA^bVkWXGb}{4}ID>P<SnEEyDP94wREGh!$q2Pe&Q? zvCx;QE)Mu~x6q$40#>oi49EIk81M{&THrSr%fhg-`FC_immZ2Ag3PV~#h;2Dt7}m4 zuR_0TNb&pA4C55-&$Z-Ly8|P!oOX*SonDxi-J*)$f>o<~PsM+QdD&eL&TK3}-Syx+ zg~93GN9i2GlrPFw{AGx(qQQz^jW{T(Q~Y-rm!f*b2VuWxwBqB4p`tO0{}I7oG*<Di z6@hP3{12E!MdKC!D(y^A{BTT=9=hI%<b5i=6Uz4RD?Y$<-9Hba-+Ji&nS{PA)_w9L z+FtBc`p>|(l7t%XdofTY+PA%!ZzbBd`w=@O<CMOMI0$D6Z*7HsIG|4IT*$)%3%D5D zc1KhY7=Ri}b&Wi+mzGE=XBuiOF74&p2qlSz(%v2w4Nt&EX`k#Xk>T?$Mu(U7&EiQg z>irN&rDd6n%0lB5e%Ln4TQpW$?imi=nFx1$rGtF?A$Wg>*eI=)6RF|78Y@)kU|G>^ z!`Y3Hm{&T=Hwr`T?SZzHjt*UeGKP03ER>GP<_1*keG~gz=~xlUyzd}TOUH>fHQr|_ zH2F$Urp~(&16n%1fW{iV=b`sYC-``E)#SC1UwW#SSDww@_pzpwPR!sHRSTToiM&8z zH^b<uW330O?m1QU@dJpdp3@XR4s)oNj_YxV{a!jwhoIrTbMokFU=94~9aa3b81vqF zYF!#fzN6wVL9F#r<7V3j;H;c>{{cpAX`|78Bk&Te_SLhFe{fr-qAhb9s<G|wp&dv^ z$Cjtd6-8hMx~RNBIob;6$~!84G}Qa4$^zrjm<n5^KZ5S5NLTzP<W+cBg=l1DBs2%} zr`xpU%W#jSs>1Gy+2@^y<)o_G|1fyNI~-=K`io$DJ75&6YI2`Mj?a4ob8v$L2BKaM zMx-jPuS}jpKvoTM{(|z|yqBQPs=*?3_bx^6SJjJJvE1IPY7n89cRhNcYPbkx-j~p> zsu6(-)KlYa#_Cu#QiMA1H}qhXTqreqAH{%HjTWKFdlNQ+s&OJTdwEa3s!4<v@5_kl zs_`Ps^G?FvQgvF+y)fPCy}S^@l*nEPxU-IqtvXZGwtBxq098#DcXoOYP-u~yUEXup z(&=)~Y`6Cr%(tqUqV|aQ%&rh-iP|1-CM#W&!7KLt-W{l*>H?VyFM2DertV$7?(I$k z7fG3e-UD>!Vi68`|A2n2S}(#8Z#4~En#BXi(eCqS8C4sFH*j(elwcflLw%r8G;RJe z!-}KZtAg2skzm^iyvspqCKwfU959Jbb&ch0Me7Qyy7}&ahIc1>v8U8(c&}nF_RN#1 z?|qF8>RCj==lzgl(z}2~cpRj0Yc*z5RbLNz+h$nV5>B?wzP9ZtNC}j~x9TDljL%?| zt&S<aD@LU{uK1TR2dZloZ=rG3lNJ9GW>a;u;_oxTpRV|~v6@s*5#IVGCQ6PSeh!ny zdIvt{q-PIDi)?!g-lZSrfKmOxmZ&=@w#{Q>;C3v9IeN>;L<Ko|S-uy6k)xO8^&aqg zS^hPg&e7Y)U5N4=y?y*ZJEtn=9>)0R%vJmj1b=_Ml$;F@`|D*Wgsr^4-tu^tw<bqD z8F(5E8=$w0o6#u)GqoLrN$eA~^l%A`4^dmm^_cbXp^7g+N5u6O^CFhP_;8gz55C14 z6+aa=<0BN`1<O`^q~cej?eWoy=U2euV-$Zs^~Wmy5JDq9PVtY@hbG1UfC!C`SNuZw z8K0o|?HKs@M8((9&(jqDG}9+5{zuHLc(dXM(B|oi--<qoPf`3_`gw-pPoY0&D!vkf z9iOWBB^a-Gi{kg8&*Re--%OupD1HUTF+NlA1qg}wEX6NCl*VT(z6eWFe2(Hjq@QyY zKZJcaPw`K%jq?@1jeWjA@grI9LdE}v{l7@@SJM93iqFTk9$&2Zxd_JiIf}2L{!+ys zCcjMaUCA$3{6Y3}o8oUKze4fn;aCzsSMlB04=WX4$T2-n@t;!Xe8s<x_>8Yod<*+w zwc=N^Eo&728~S#E;_t+I6<@3PAK2%YD1H?CbG_nc(a*~j|2-Ck_!WvjkM=hyzIPh< zD;3YDhViQuzm(~l6+f{U{1(Mui`6IoOT{0eovRhU6LTbfjp9dQ634Gq{B?+*LHZz+ zhuvh5o;!CiT_53Y##q#Tq2^I7`eE>LnO~<Y!B_{%(V)7=g6pwJ*)|^$`t~CEb})E+ z=Dx{Qb09?3$HTit^>Vxi-oWVBJz4M^7QVoB=#Bc>vfw&*VbApqSz&(zCAmx<a;~~e z_C5d~hphDT7-k!Ruc0^O{LU7F3y;rf@!#m9As2{$&L5B)9dfBX0@=#SW!g#=X3CHa zd1G15n~C8cvQhRXpOF$0TaygfdJO$E<f?8hl0qYafhadLO{@q01*eDVvjhLZXs9|n zWDQ5r8=$N&U{Zd;g5%MJ!!iq*o<-Y_w^O*63e{L6hvju)df@knsbTrT>!*T=*E)QQ zoM<Q1Z$$SaF3so?tPYl8twC@l-VJv`Y=>uK@Dmfw$XIB3d?~A-5uSr0iRGqTFZURU zC{xcF8|ph8!ZH&59&4%*{QxuAjNX9`w4#5;D0!m1H<=RsHQJaOor3fZ(Ix2FwCH8* z_~@00?(}E`)j82|(D6oRB0VEoiImLfY>ZJ>^et4J9UTr|ebHmx5eZQXxq;}9NDoE_ zAs$1~#V8eymSNuHL@N=+k!S`yj7Hx_cjZPqqse*2|ASG4bAzaA=>BN9Gb_6*6xTq* zh!!Cx&FFO)Ei1Z+?@6_Hv&yKJiOw~mtB_?zuR#%X+Yyv$_`pLe;cnQI8fwkXBOsLg z2Tm3?3^VPEAeDZIplnE(c~3wvO8<n0H8hy{PeZaxzlGI?M$@|=lFtagN-OmM7=_sJ z2E6(ChPaI5Bh33V4MWVFUqkRQgBD#4R)u3X-m^xd$m?JvdQ2mH5$0jT8Z-O>(&SY9 zEg0F2)s`Ht#p2#@ftl6e6euh~>CRw|ADgw-Shi!GncWMS9VbzP75N!d?Klx>LzlW6 z3rNGoX7&u0TAeH<Mcb*Z!T2>?Vg@%t!<UMvy6FT}BkUju8m=(2Hha($73_&kX4b>h zrj=Kc+ERZ~M3*oj{3Ig0;VLux5cE3wv0}9I_~%-|G$Z_1cHA$`>`o}qaZs|<Nd=Vd zOayqtHZzNxk+?LE`m%h9{$3dLGYu{+#z#pn1VT&0ILmhi0=twC#T%Nebh%J0-G&Zm zm~2IOfbx}o$Gp=mx!n>iEyk+daE6j{OH(XJElSEOJ;wN%p``rM*HR$OvNG901*Lq9 z*f2*)g{5yHtzn*$x|NP(BrmoKzQFt`E*-@oTW$q;Xe%qd21{GRc}lA3IR}Aa<sXG! zUFjUGF%9cfPGjjTN|#z;24+*~KHB(&70N|RnvL*WOx1=P&8&H7tMtyLVEoc2s&_nY z?}UHP`gWLESG%geqUwo#ZiGLj)=s4rz9R#|EoRmq-6H&RB2`2pAsM1ZcmY<OhP%zI z&t27Q#MMdGMKr=aar9`o*UWkwT^zoj;rDAZy9A#d8~;lgU2s(g=-y{$PonPfr0$7L zka=T-dBeEjw`TT*P?L^fMam!1KkmOY;`kdEC8O6$v*B?wo&T{_dXSy)wAqz{Q98tg z^t{=rE2LeeKXSDHWOgcsw7Zo5r_}J0S=a~CBc(5JYW&sg%(Zh*>6NLFUN<`pgtWi( z-<)S}n|XDRUM#(ki`DyPUIV1pOUtq9Hyk$eM?*STx(O4j;d8Uo1W1QUs~NFJ%}&jb zj+ExIzGG(oR7gkj8yE_yR`*$u3^RWQMX!~=0HST?PotP&by^3p(9A!FMMFCH%>1ut zH{a@V9dhf;{Miim0xNqv#6}Z;C=aotm31q`CNqB>8{OIJybEHpng1uwhC-|BZy>gq z`FC*|b+I}>0CAp~|2u3A4LvMrX{%{u6(E@;YiI~_mWzgMb6LfbBJW%zZF`cubG5SV zd*q#W^K6^Tg>7?g+cuXy+h)kyHbXP(d{`!lbqlGC@vO~AAth5El@g3l+h(I|n^W1g z3nYb6h~pC8!~bAZmslPKPe~Uv#n-UO@^Lno@)3K(l~&YSf}*8-TG?=w>Q5V`c{kIx zAH#dNH#ersEe{tb+x`(rB?F<|)NqsKy9tHW61BrpcQ#AUprxIbJO%aj1WISat(KgB zqNR_OBI|Z5o3UG1%4ebtcPpt_x$}f27rkYrMeOz8TOm4EqgJmy%1T}7F*^RV(rh%s zgIM2Q%j1V?xJMMi0jm@JLbv0+cK~6Wy3(>=hLG;r{5)EVmu+(v$ye1rL5B2fosse; z_?*iSYQsC3dCbV!K%uh|@IV>y)YlhAJ8-#*_l`aBrj{!<%COGr0F82Af6*93jmgyD zAo*p=rn{oixz22idCrF1X_nC#3z36MoXKmzic39=&aGx+|MZWLAg9bm^<_)LTiFK{ z4UlgT+TOm1_r_QcR^`j%KF}DK9DHep!_la|V2Lly)UpA!0eanHcIU&NM)j@AdANy@ zz(i;q=3(Ul9|otfDZ)$gK0n~7=LrS4>Zg0wJx?!jv+PcUlqW2yvH|t$iA`Yua&}lo zAAZNd^G;?Lq@{b@Z^UP@70pPJrkO_hH8k;t8EF)?J<p0^Ba1gt*Sc!BxAq1q_8c@r zOGK?jJ5Zj7mEQA#na{hPs6?0UHwazr`P`KAOkt%mDHtqZ&Fww=;pW?X!}Eoyx=!UA z6=xfsFHO14x)e$CKozr?BxXK__%4%{F)7537>8w)e{x>2{OndH$_3AUB=B!tD!U9b zjMH@8rg0<{9(`ka4q(WtC{$M<e-MVEKd5>zgw0_1eb(yH5F#G@Is-yw8-xpzW||OM zsZXVP4)j97i;-23f@3kL|7Hk2*!?Gkn;`J{(XT)?P1SH4uf>S=0p=uYHFz<5f6^@R zhEiWh^%V8iX1_tghafR~5W)0EkeKDe+bmE`%SmQe!0bSJ`;g8slN^>_d8Iy=nzqrc zVkC?-f}{$baF$Y_=i9;D0IGTRXR3&up}k&(=InwoG%4M4+GbrvY=zFg4B0QJY_xcQ zIWgU{EUC0hD_sqxPqfksDw$<Q%=Q0fWTs=dq^$2+w}LMH6?ZSP%iZi6ojt%DpPB*J zO(WLWPH&Q{x8b;+Imn33Zl|-{)v>R0tGcLN_SJ6o>q$>;(%E$McW(9tZX;_RX_qZ+ zxZ2Iq<B$LAmX~Sl!BBhtV|t4EVh9*ke6aWjkPJ?5OyrIr8Jy3-d<v@BdeYz|!)im) z>=Bx^EYBL(Y;P}~$$-S{7BK56aLh|G@Pr9ev*Ev)-K))F+dwRO(k;&muG!fr$Y&v9 z_E|7bQlQ!LOsxK(cw0NOD*FGEbhC-}GOg5j8A`GB3sGV&NbKDQhBqEn>%klb#fG-C z*8}DB#Hu;kF5R7Mv4J|=9v*ENGnDf2#R@~?alZB#@igtwUTDR-YJp>Wr4&H`Z@A8l zj2fMN0NHoy>eryyaGm~lq(AG{^qb9YF?Ym2LiQ0|OyWM>^SD+*1apOmEz_31glcxV zo@RTJ4!DC%O9NH5r7i6{$<l4w(lMycbS)i7Dq+r{PENchv?6V8IML?cwYm}eNGo~A z7{*<$HFw)EV(zHY#<T5gs77_sqr<}QyM@d4x!qH(vsu`}Ccyz@qoi>Bd7T?U;hKMF zf#V~StK~Xv#TYah)5G(*?27IW!UU8I3g-5g>v6B^+7xQk2%m)x1l4-FA?*vft-l8H zxlB9XhqNyx?EvKGnD$8oX<wbvbqLNRSXlExeImH2;rTkUnw#X7J*)b7aSri(<6DIq zJzI9I8l1_A_^r19Wq5TQ0rg2R?YoR(q<OY%UQ_3x{C(yMl(7acEQ0W#z{4dtisD?+ z0vh}|H`O0x%e(>gT?*=x$*J?B?3tb|`&aehvh6u0I-V`RT2($C-gykQsd~1&xT^eC zSn`-^<MnLWy{h~SYFMtu>#OQ-#97VbF~!+SLf95S<;84timAQbxn{_pa*&W}DtGID zfm=kL4yO2fRu~-vs_)F+NK;jv2K8Z}^5?k^+iv|2tSUc%+3ZPo>p!@v{Bv}U$8j|t zSylc^IN<TR8i!U5B^bOX!*uxI-m~S%s`7#C{!CZnD2#SRLYAwsZgu&iaLAMGYHV0t zp3(yeKDU-9R+X<{KlojZ&8zEQ#?t5ssD2oT=I4RR=X610(9EcjQ9HVNNRSC3)emNU z3r}fb)el>74E_bE{!#`}j;g9Z6#9b7>u|pCMBM7OuC9NAjftx2?t=!OVU%CS;mvic zTeoINgb8_Wbq}%K`Kr2o7y^Ffx_$z?y+BoWJr16igUY@1p`%;f&eipwG1@z+>iFk$ zok8WlgsP{rTiu2=Lq6z^ghIEv?(Cv2s=6Myz{~{IA7BS`Rn?8hIi2_Y%3Bz|r?}Pa zT3voR1EibjYec`Ldk#LM=IXFk^g?zGZmj}e)9?&5<;nwLxq9dd{Lujt!aV1Bwmh<W z=yHttKwNW*yk~V~%1}g9A7uxJEq3Q1Gxg8?u~GCwR!^LrOF;cQLudjsmO=o+xnSBr zi5dt;JcjXGlxY|M!L#My>V^hk4y|rDRhT2I<*2qNSyLIt$$ZB2b2XC9Y6ooHK;t|C zz6a)Q3f%m<7UHr36rWP2{NxExZGL}E+H0Y`Kbo0&^qiaDnJCc=5_>zrY^Okb2f@4r ziU-@<i(RN~t;M=n3oGubIZ@7C<E=H=O?GIV%b~+V4|K3ztmfXg<wbmq_iTB6wGn?r zt6dMZ*eC7ET=(;K;|dAUFm6MEctKx7UiU%3^DbSS+i5&qdn{S8uX`&+di<s9&2Ht* zBg&gStBsnFwvb%ocWqJSF!H<#95K+1oQ9Jlr{Sc?!9Cp*BIm1KuBCM_<QZY6c7QR7 zoG1c12PBa*2uzFuBWD(v86b(A7g6r;fd6ykwCc9v>cFESCk3Tsq%Vi9%V?aD!+G>4 z3LI(Pwf2JIPqZItiNuSN_PB&FawfX=czZhm5__A#Y@|SYFMxRt6mM#8FIL`e99F{0 z&qdByt;5K<S?T;-<jm7*5;-@tEA!&d+l}9+btH2BtOXT0mX;)Ps!oWUJM_3Qa(ZLL zB#wU?InQXdWaJ!8M$YhCbd+K@lGkrwro5#iqF}P=X&%C5VE3BFd(dmHrj_K}GF0uq z4=SmrKp)iqaR^ml%0bxwwrj7kpvo&4b1OOXq)J>(%Wyfjj0dVxNh@qFb}QKlX1i1} zY;y{J5tB4L{kY*udLJrRRa?d$=y{NRF?7WsZ-Twy8uWI<V;@k>pLEAOj=oJsf?3YR z!NCQUQS+u&(7lSI87AUpZ0J4W?nIpHPQ-(H37_ju#6xNcpX*M<BdcT070N>n=6CQ- z2J@g=1`erZ;K*ttc8*qKwYjKCj(f$|sIqu=s<XKv7{glN&O=FemYwX*vXk6d*3O;( z;Ka!n-PtJhV2%8#JGt%L+2y*kGU-nB3GVEHJBdMV@2ox9owX;qv$mZ(&uT+-Ckhk) zrFY(L=T3i7!-dNJq&wfYcc*d+;$o7X8@TGkpnC2%Q=dYy{_~L4h%gui8o}ELu3n1q zBJ`||R=O-&7a{)wkSsEP1oJcnE;1c(Sg=4fAL%%8Z+Kk5UX{AfPS$N$sQY0vbwsVM zyA~zmphnj1>ZK$(cTyz%m<iqKAhp<mxts$1co59}pqjP1HrJ1}Nk1;qLyh}FDez;5 znfiOzkGE0sb&&Lds|Tgjc74zr#~VItkh;$Sb2bIm&3nAR2E|h=S(&=&qZ@yBveGgb z^W18tHV#HHcD#kt=#MBSjd%4@441=^N?ysv$DuzEBo6RN51;Rd1DnBI0jhag*QOhv zvSl5gd>FCZp32s@2&>JgpJDZ-IguxUFU|3o?CGA=%}Ql}IpO$OZGhR#D~ti=>6jF& zZ~?CEJcJeVL1jmsH_|=D?qVCey`9pVT4@ccL?!c*N-t}r)UoJ@I`PPi%gN*@7Xhw7 z6U=fWmad1BdZj1mZC*pYep;_q>&=5_<CR{@mLunPkZK!$X{c9hw2o4$t#s9nYPAhX zwN+Y;?cAZ%cx5HV_9wN@*XupCo^iEyE3LY#RgFgcWv%5$3u0fiEAnr*$P=o_BW{t{ ze7%aZ(Vgqtcg{L#wA(okwbL7Zg5HJ`^!z$3Xs_)Ay`9H95xw7REi;UfleG37N;754 zA@&c>jM4$TexxRE@14$LW_+sF=gwX8x)$<K6{0NNGcg%g6KS2d?{S*%$g5(%yvZGU zdHXr>c-rw2<Y0$ag0}r8yp&t_ygJkOw?*bvhsem^ivrx`MfR#+<}(CDK4y#}_MYc< z`Ng)$(Hy-3ViD^Z&EKYZZtur~<e1MwR2%Xa3s)9$`}q#Jb{RJoe_&>Ko{`71hB4}q zZctmVtZ{>)we^K;qO!KW*Kup><HxOC+TPkt+FH{rG}C<8G(AUQYCNx*AeGX>cwR3- z7$5?!mB2TWA2;DORA&Ccj8K{|zM}}8D4e={MnC3srx06&HIFZDH<!RXMoisMYIhZ} zPV4Y2c(2mIwb@#Uh~4<WRm85f_!g2@le6F>?aI9M^LFF=w2qtw|E>i&3mT&yf=_0b z$P#>bcuRlul2*vQ>2u%7STfD7@?guD*bf7j`f#dAO_LklsmqodsgI`0&5#M7Wgz#l zRJl_!;RvcoeOw7f)0i}@J9$>f!<}b5%tMe)HJbXPl=Y$+^6)@4X+3TtK<de1n$%{B zFo4xbp_j}OI%S;pSr)!o(^dTNyh4wsO<Tr<=a4z(*%Zlq112UL%?t?_z@z{M`7*bg z4Oq;1!SOs6^8FyW6!{mJPbu*7HdKt~Lm;^nVW~F~`clN&QYY82)|N)OgtfLb$#ugv z-K}^)#7b}ldj*QfmL7wl{v=+9tOc`*0=Kh2fO#Ag52L5~;%=h0#@mzjT9Cx+5V7?w zw7+I?+8Tu0R|7y|YYmw5K=JPFZ5i<fZAec089I-HAMd3FE|*3#Cux~Zk^etnwcBrP zg!%K3wHK!EXI&RV_(du3;6eSbqJaJ7d{Fg`5bAp&)<LIpuy54n%p`|9hw}0~n7*Td z#-Ozc>X(D0Ne_d0kOI5sZ7^?vj45<(kG6(=6-ih_*3mb5kk%Wng2cBo!8B2z*Pnv< z2vo%);$XZF7|<DaA^S6J(mnkQ7>>+c$k+&t^`Q8dT0>S`emkBo_khlW*AzCiRcBbn zi%9b9Dcb-;(zvH!<PRWe++i>uQ()r)*!X;)_$FOg#$Nhuf=)3Fmvc`jo~P13aZUF} z;VO`ro(^Uj1)AOf=2B1%k1c%ZLyBBc#9z@(DjJKS>Z>&_8;xge=+ES`l<tvkX6ZPO zLwxmPiIH01kc`nK<N=hvm5fe_?bJH8C@?!|)u`d`HuxHa^khxAHI6z?Z|7Cb1}!uv z^$?)kE%s;w@&_6yW^R9V6dJt`Sr4MY_p%3Gf)ImEKDOxpKM*=&?+$~iKZbBKm@S|w zT;t!@<}6skxLuZBKLTaa(S>nruGOF_W;BG5Vr>~#^Jy`?N1Kv<VQoeRlBUo-{-{~K z%4lzWMk&3c4;x`?JxILU2j&kH=y&f59CkrfEFvy0gftT*q1A*r$CrtR*)X}S_a}6b z^X56I>;uX8e+lMu3LO7D9FC))nmM{~`|+0ulkcC1RhKJ}T2R9c>7z&L8V1A0Adu8B zAIw||tYI^lD?v3Ybc@^9aK_hY7Qe&7mpiqtfzj%3knu2z@yTp_z1EPab)y#CsfE*y z5iin-5~+OV%@-r}k1&>upZ1YTY$?7ZQuzfOzBn@f)+O3UD(Z;!);+{X&BkCUt47UW zo&M8El~MVXHf;hy1AT^{5p$q9DxafipMs>%s;Y2X0wjILCr(R1H7idV6)q#ORBiDb zII{J)BQbt~hp!8ezFVhrikaF7)At|Ok6)zIWl=wK>W(w}&RcT!?7rtsU)*>4;_3M7 zuUXS8`YxJ3qi^eZ%jYdwT+yed@3Q&JXZLQMK6BypxwDt`mH#O0%YUowi@&d0)HZ9j zPMX&K&ugc*&hInNIJ0_3WnUc6NGn!OTU@?idU@YvOK0|3G=Fj1%HAt$s;5;~_GTS3 z`Ok&wp9%ZSG|sB+hI^?X>yKt&>K`qPC}_yQ=+v_vT<w9Z52I5b>tYzBzFk67hhnCZ z;@-g2S{sEy@m<lWk9)9#f@=R3ow^!bMT%!fr!GO4kxC=csT=W0%Bze{ozfHY3RE=E zKb24dr2LJMsl|o(@*gPvMs#WxbV-e;hNmt~#S<D(-4%f|r|f9{|E)6@x1KkxVj=%9 zbNX_0<kS>A$soo3fvK}F7fJDMfvHz?#`PvB-oroDpNAC&6z>(7`UXBp@jzf&7Iude z&`9IV@*RDD&P8`1kB_<ji!;>hK~IuuOZ-#cMQ@WDm*%!iPs0rW(9|k)JE^ujI`tLY zp(9z(`=^HSNs9XdXWfvAoAjU&b1eT^l>uClgGQ{iqGxr%z>-FItmxDPdYIHH8aN9b zEUytin9-@LP${WXBw)PSjOG~Y(dinBZZF1*P;@6_-dz}kBcJ$j*8E?f=sIAzz!N!z zM|UdupTna|(|B~tp&(Fn9exT$*P$I0U59p1bRF73(RFAKMb}}kRDBW@T?Yk4mo89r zX$p$YArxI&MH;I&9755hX(&2}P;_Y;iq0VvU7CiXa|lJ3rlIJZf$01+4Mpb!IzZ4+ zbPl2D(livELnyj54Mpb=iY`q<(K$J+R724@grZB+P;?HV=+ZP4okJ+PGz~@POoO*+ zjpB8yLnykm5h5&i&Nu~vhN5!_MVB@vK<#x7q3F`aX3v3ek&}hMNYhYs&Mr*jGz~@P z5Q;8ML(w^eqD#|IbPl2D(livEvxHu2C^~0qAp{LY=Mai6O+(Q+grZAp5#RPWr_t*Z zpy+G`Mdu|HU0TnqjFX}0GXH`igrdvB&33#L6kWz~D7uW}P;{cpD;Uu|0gA2zle0O- z#7^@uFclPCx`Lwf6N)aqJrrFB`3g1h=+YG)ou7Dg=?ag||7uqROI`*IX1)xIgVBKj zBc&1_er$J!lb^>V|0~q%Bzpc4Oz*7H`C}8W!lUyOkIwt^cy!xfqr;VW3ySaegY!{T zZ_<j;;dFdWOM}vd2}+j%P`VeOq(JGymoN#SbWHMZ!D^GKK<WGhrOWK6e0v6?l-XbL z1f|Q22``{@S$Uy#aNWwlbkAxBN|!w&mktRiU3NQAy6mN)$`nlY6F}+01f}x<luo*A zFYKKQ9T_Oo@Dr5Ie{<GcB>4$S=ijMZAt;?+fztV3rOus7hoE%+-zXh|()krAUAPT< zhaaGHtRzSMSR~Nud<wG>58jN3fYL=2C|&yPXpk>(w%r%&okLK%!1A;|Q_b0kttqfF zon}%Tg3<+6i(oqhr3<VRA;a+RLZbo~m$HKNEtqNqrJG4>H6}V{fsg%QINh<71C%a^ zzPF920;LQ7)<@alx6^{ZOC15;a0p5l)Sz_Eoy8Cy5EF$CLFs}IbfUdthoE#p4NB(_ zlrH$FsMR<x!Aekr(m54aFM=AB&LJpWP=nGr1f>gVP&$X8bU_VD=Ma=Gs6pu*g3<*w zD4j!4x}XN7bN0dApa!LLyljF7rE>^M7u2A14ngUH8kEi<C|yv4(m4dB3u;h0hoE#p z4NB(_lrE@2=^TR61vMz0a~V1|s6pu*g3<-wlV-o@5R@*cLFpWV(gigrokLK%pa!LL z2uc^!pmYvF>4F-RE;mvL;h!=>hM7xHy5OhTE6_;W%q1vY&;_N-B`96c1*OX+C|&S~ z8Y458pmaeOlrEQ`bU_!CE|;KmK^K%Rm!Nb(7nClSpmaeOlrDERNB0}4y~)faC|&U1 zA~l=21f>fe6{*F{B`96+Tao6Ox%`Gi@H>%O&0K=g1zk|OT!PXCT~N9_g3<*I7nClK zpmf0`C|%w^*ca_V=@`&1C|wMEKJn-nuoAq$qss+vI2w<RAqvO|jYroVSuP&kbnv!4 z7w_UEyVu7zB+^0(`JY13iSAvlt}5_TC_2$1Ab=<we>1F~K+(xc`lYLCSaadQ2~c#| zY(fY@tt)H9qH+Qhom4i^Rglp)ehNh=^$19iv{d><nrr<8icVAsQ*_*MUH6B@sJlHB zov0Et?zrmDK+%cTTS+ao-TefLPP7P|plpd%rTP;nx&lJc>232TP;>=^qSFrl1d2{N zi%@i`60ZD)^}j;ViCYA=I9@^<Ka8ny5)>VS>Zee2*>xB~Lec4hKY^kXuPn?1Rfmkw za&b*V(TQCRMJN3KCn!3phEQ~}*dMR!XQ1drl~8m_mEmIeH546ZpkG7L39q5($cJ4h zI?kc63q?mEU7+ZK3W}~Hq3D7dimoGX_XkU*O1mSW=z={ZjD5~K+-Q1<5OoMe7wjXO zU7<rLx?o=sx;ccR3u-7jhd=HJYA8B~Kf4HOC_0BwbU_V8=Mai6cpQq3EfgraU^^(f zV0$P!2?PSrsg4s)2B{qsU9deAT>+u!jw>rDx?p=KI%)E;q?T~K(bG~03lYEO*s0JA zDkwUKP;@~JMduKTE~ugC9753rH58pgD7v7AqI2FVhM=M7oG80fL(w@cIBx_OWKTjJ zWe%a}f(u2caR@~hTqHuBa}(SPYA8B~P;|k?lGEf6iY}<3=$u#~1Pw*!5Q;9Sq39e! z(FHXWokJ+PpoXGz2t^lMF4opLgrW;-C_0Bwbioypv)LgOT~I^OIfSAMYA8B~P;@~J zMdysC*BXk>ArxIuL(w@GV{C&Oiq2WZO-n=3IfSAMYA8B~P;@~JMduKTE~ugCoQX7` zq39e!(FHXWokJ+PpoXH$B@|uIg`&$P6kTwGv;q4zq3D7x6kRT%=z=Fg(FGM0U4Bzg zLD4ycq6=y$I)_knK@COctfZi!=$vm5FF_4O=j>yLXec^|P;@~JMd$F>3_%S==Mai6 zsG;bbkEy1i=o~`P1y6vY3o0nO{Af@?(K&>o3u-7jhfs7u4Mpb=iY|Bp6kSk3(V?({ zqH_pE7rae6#c&8k7rb5dkTaBxx<dpFMHf_1bosuZf}(Q>MHkdibk4mDxD%l0g8w&A zbm;;`7gA7k4x#8m8j8*#6kVvw|1M&}b_hims`hh&`y4{ig-(Q`%lH^wt)S@A1&S`L zpy(Vz(S<b>T}MLEg)=igLz>-@P;}v}jPD@$I`Y>@VGTv+{0hgT@QF}#vfA*c&T0YS z<)2TlHiV)Jt>$<FicS{YPdVQ-6kV85bU_V8m&qc8q6-*dLeT{^6kWbAM?uj!zs1DQ zi3Pbs84jW7a^fP`26P6e65*{Qpy+by0{j6E_;MqsUU+Cka}*SvLnyi&4MnG{G>8?S zk$Eag5gSe}uCiH1LD8u)8j8-rd@yoG>N1_9ISPudunl;93W~0fP;@y8imuB}#7d5W zqU%B^x*P>X*X2db#vBbrClwQGPAb+=bU6x&&QB=190f(^Clp=8k&*WEr$iC2;t53; z$xwVnckr2t=PyPgS&AnVT_juagrbZ16i+C+h+px9qKgC+pO1D%f{NeK6?{nXgrbXt z6;CL-NRHxf=>k5YctX)dqKdCWKt>f5ou5#2Q3XXOw;TvX7cl&tF<emvMdv3JU9N(D z@e_(JS3$q{2}PH;L_iq)`;ng4DtzV?j0R!na1Vh{bYVi#<!dOqbb+EPP*8Mo<}Nr* zUoaAiuE2$&^An1$V}>$#Dhv{ePR8Px;U^SbM+HUaClp=BLs1@j{N6(F9}6!~bOpTw zKC~m#g`$)4&?6LGCxx})=Z`l#DJVMsB8*=r1x4ro4aTOk0=e@49gQng&~ko4%XLxE zX?{Y>by3i1{#T*jML}@+_v4DFtF}*Qxvr`menQKgqM+scgqAx+LCg6GE!R!q?Dz>S z*G+f!Y%D3=bY~M<u3I0~*@Twsu0Xf^gqG{Bpym98mg}yd<@|(}>#m^X{6X07K3bI} zv|RTwiYK&OcZCz=f2|0-!UpmaTCTgo2J#bHuDgPk^AlQ5L)!TXEmx#)N&JMCD^k#M zenQI?>Hc{T{Z^#=htP68be|Afu7|=2@)KIFIHAUm&~nAvH$ux5Yu^YhSFA9M{3fC# zlqLQPv|LC*%lQc;SEB9nyj`Mz<hn92fXa;;{e|6dA76JZk<>~RlA51LYNZNE%}*q? zo_ZL^VW@lRVIh)QFNLJ$Cz4t(g{0=c7ESDxr>507@*NdVB(>hkO+XQ&b~&uw3P!ES zqY=`EpGazbbdV8At*;u?jBQw<@QY$P&1c1B={Y<D`-!AhrjXS9L{ckLNNWDkP%l@N z`H7^~PobgsiKNy~p`rMRq}EUMk07a4L_*yWYNse9waN<nT?CIa53`}N+P?xu42MW+ zmHkDq9U`e!*5s~6j?cM)IkC_m;9%4tl3Hb4AFPR_R;iKH93rVzY9uv>NNSb!qE;;T zq$(Rk=;f?OFH{Z}q0AwYTIGnq7x1RWA(C3<ND=BBBB@o5l74J-h@@6IT7)KtNNSbi zL}+%dpl?kgv^Xzg)>MucVV*MyOJn6}ISbH)R_Ai86_ryW7eUzUgwe5;XNuZZ=R0(D z<y3KJr*nWpi{$Kb&S6V6lA1##waS^I_K0(4R|vC2ZI44FwMvbo<`7A(QX{E3L{h6% zH{4!#h@@6|k(4>;9H2WFi*U#xl3L|@5so-SQmec)i~Hx%Za`A2+$g-Ek<==3L!WZm zCy~@DgV{eK!M0P-G&u)!<(SD;AqPy(0qPPVU69l&yZL58!y%GdWlyQqaEPQ<*)vaO zk3%H2%AQ4H!Xc7cW$ywOA(9%63zAx8Uk`cPW?0!0PPWay#vKu)_{$MeRSHSXPb9S} zg{0;ul3JBQQuDuzIZ&mL)cizJt5Qg6ej=$=DI_&Nk<_XblA51LYE|u!)WUXn1DYsE zYT@+k4(K}D&cM6$Lw7K$AEYHR1r?H-pGaz9y+RU6Ev#1|{-80eSE2P-;lp|rB9dBI zua-no3+vUANNQn)q~<4*T38{e`F9}rtMyVsB(-Y23=v7KTCea#QtPjf)cizJtI;bY zk<<ocsug<&!epRAQu7l@EjC20octA1Y^dUiq!!aF>WerT#D=SMBB{k16;C9!*a*dU z!Lk(_sdyr(#YQXs8w6`?jN*x;78|ShLkNx7IK@9oADR?TB(>Oh#V>@Pu?dRbj)9L& zR6LQ?Vy7woX{JwBJdxC5&59pDo2M(DNNTYuil0kA&rm#()M95Uo=9r3sfs6(TC7F! zL{f`QS9~*lo}u^^7{}O5#S=*_HcRnDQj5)2JdxC5a}@s}{hX`#A?(9>ihqJ_oUeEy zsl^s3p5QgHg^DMVT5OTxiKG@gTk%9vi!D|>Zz9IdQ9O~<VoMcIB(>Nw#S=*_wp{TC z+0Si?znT0B#S=*_cCO-yq!wGL_(G29d5Zs(I_E2%NNTZFiYJm<Y_;Nvq!wGFcp|CA zE>Jv?)M9HDPb9V2C5k7KT5P@IiKG_0T=7Iwi(R33BB{kTDV|7bu`3n7i{o;Y;)$dd z+pPGB#o)Ino=9r3Un-tRYO$*oPb9V2HHs&aTI^cI6G<(uPXa_zi|e^VB(=Ccu@FgZ zkU~=P6G^RBA*pp;j<NO=Np0|B!C|m(+ZA}v-izd!VDQYxed9AY!ylsR<KZQuIuh@G zBB>32vS0%O-A^R7y4i9dNWTjQ3t#;T`#~tlRbIVDQgeu;R=?6u=rY^z6G^T9{LW8_ z#Z9#MZ`4$;kkrxzNv-};+r|Q_tY{=Phe&Gm8}c%dVLO=^{`!rwHvviQZ(?f-{UwrG z{Z-xgjKLNo{(&erL?Nm9|Ahr|h(0^eogwP%kU1PhPe&1b{!SSI-cKa8p_zqDmlOZ_ z?GzSJfk<jY^SUtIPb9UW`N9iO+OT)S#R%P$>ya5ETG}w6rJaguG+G+|7y)TOOXHPg z(Q&l2M16<L3vnSMXlaoTFiXvdpru6wEiEEwX%Rt7i%fy-4iQ01iwIg;M9|VAf|eE; zhqihnf|eGkgaeroK}(AWT3STV(jtPE77?_xh@hoK1T8JH7=06t2wGaC5|J8-2wGZ1 z(9$BE;b2}5g_agkXlX^Gdg6(2N*x-QSki&NPm4T^l);e|eehGYNJ($>b>yW|fN4Z} z^upIBBKP5ae&kuCjEHQ8&Z5ZG&>0=6Li#xo{<ds<BpViHM?OT#oXAG-vm&#gIX6N~ zl7`51qz{XnR)QZnMFt>!T;vqIpBf?V$@Iu$$ek2fj#8&ZuE+bBNH4sf9q}T4W~47l zwMMo<vnetfb<KzjLhk&CA1Q5-AneSEyhcs;xn$zbEdEF?vIb2zB1H~|MPT3}ix6;D zQtjQWUr|k9;35J87r6#SEJI-65+8VIB}5pw1YqEvg-|Roa0$S`af>MV5Hl(P7`U3Q zsHlW6a0&cmuojYCLKwINVBm&9@);q*z$E|!=Y?3nZzcHnhOmExb@1Lu0x)nTNXuph zExH=43IIV!$sCO$6TwL6n?UTxB9Z_M+;pVLQK^mPsHGk#ga`wd01O<V<mA+GBNdVd z4y{EPxWqa$dlxbbUP_wabWp~GlQ%9&x)fpH5`ckwo28B>OG)kR)Yf3pP5=guKYGjF z1(Ug8lv%18A;Q2V00VaeRxkXy3IxEw@$cBg;qggrsXr;AOPCNM3|s;*aI>ISK**|g z9*Zkd>_iTK+Qp6o4BQPY^=PuxiE6r?gn>%{29AHTEiS!JeOY@&e=oa)X>f@T35t6m z5Lyy|fqM<BZwVhmCjbM-YbK+FFmMULz{%;a<U8iMFmNTs*m4ps3|t9e;1VtjTnS;| z5-to}$!l1L5`ckYHy4!f5nci?aFhy5-okqVFmRN*l@JCl0T{T&SQv^+2m_Y@3>*WX ztb{Od3BbTnswtg=K(X?dL$9ucKMqQ)Q#p+#{Jw1hFmMdarV_%yB>)4*rxDHgn;0zT z3BbU;kG4whSl!Vb(kIe8{BDHmoe*K*5`clrhK8sXQ}x6?$6uCFYp2o*-H`zSFmOZM zA}z@x5(&w{#UIh&K#%|o+}W-wf7*4Dbv>elflFu@xDbDQl>iLf9Z)ZL=D(ED1^HvB z1YqD^qAq_ApzNR61RtF;LhG=MCjbNY1JtCoe8|yG|G59sh~sZul#HG$%>-cJHlXWE z2m_Y@3>*ccWQYj~FmO8{?JD^ZNeRHf-41DY31Q$8FPVk+KzgKvFmMUL!0m>#r{v01 zNPvNR2-5x%!oVc}1NQ`^7fT2OmjDdh(~w>-Aq-psFmU`4!NC&FsRUr){sQSx31Q$8 zfPs4%(vcFvz$E|!_a>yHd4z#W00!<LB*V-j3|s;*a34a%|JM)(E&&+0|3EA>^9Tc% z01TW2AO3ZYb^!y&pC{De@8cNmfPsrb#J|ZA1}*^@xK0p(jJ1x91`J#`h=9f-3|ykn z>RJl1#mu`a4I*IR${^w&<p=|p01O;k+G-k^Tk%PfHIy)LY#{!U1;K6GTt97_i==IH zA;i_9<QB>MWO?UuVcVSBw#{YFwi)ua&CtyJ29`-;oiK2W@yrakLQ1AqNeM=%ZL?7T zeM6gUd#j`{3T>P56(S5=0x)n4p5iWOiZ1~eIL_u0!oVc}19uq&ql8Zi6M%tZe-Z|6 zs93GWdx$V_3BbT{ak6cK)D;U1Tmmp~xg{toOB7(>)DlJ9v4jf)R|*)o1YqFkUbKWT za0$S`F?I_}xB?^q14pS?xdRwDwYCrjE&&)gI#;7suRY32T?t{}5`clDW}^`z3|s;* zaGU5WVc-&gfumn3MR>zs)XDp8s4PrGxP~^=C`p`ly=;3j1o@`eVldLfbw<im@L?AY zju~MW4vvBg2e%EpZQqRdg8T5MmMu2NuwH@OSmtZShYJn254>%^fcJur@aE&d`D7Yz zaz&$49iicVfZS1_;mE-~&hAWfp19Y;=p@i^=ORIl%`P;YQ;EY2py4DI91RU8RpoMT z05lwP@YR(Qpy6_BE#%b(9!FIzX1AY*hGXUV#f=T=Pq9)Cc;j%7jJG_bZdBiQ^f|X6 z&KgGqsTGwQQH>)dqzch;`fELlS{g@rE(Y&!2Q_D%3fIk3!iSM=+n?iIhL@+pb~iaV z;%X`FeG&D)i?Sj>Bt6ew!rjNeK{T;4r+aqpS4n-pg$dJ1F{SCJt3(8syv*$jkz3Zf zd?{5r(!4pz=v$3bqG_a<vM%c)mB}LSqewX)(?g{Ti~PFEFzyERTZ)HTrj;UpH1G)$ zJ_J>C)&{<xWEiiaXr=u0byB6kj#UlRxoM}te&6p|@i!imR$m;iYCK-?dA(4v`1*~f zGkxn`jl1-q>ff=A-*|eKIXE~YVJb*@bJQdK_y7`igDT$BR)ePj@Cx?YdsB&@(&0zB zM%8y(Njc?VpC0z4vIBSPoI>RrerfU!otloHA3~*=!sn>wFsOV<8+zlgCtiaQAKD*R zsG$DIR;eEVqZd#mdIp!KP^%$!o0-sc4N#RliA|F)bNh|uZe0ma1?##6Ca(fjGw@Mv z$SUZy)!;`zplVJ4Bu?NITLNR#Km)EoF|)}N;(Aa$5X%r~;7;`SOQ?FlZrYjb32?rZ z#&G2W8qmxl%^o=seTsySLH*_%_)W4T4T$5$GpOGz`~pxF?L7zs1B%@TRlYi-yV2Hk z&z`L+0hJy>rM0L}ReFgk`5a0;4x;__%Kjy_hOq)f`<E)M?t@_xRCO5M^F{lyznxs! zhU1mhVaA?^?xWqCl-;c`uo%=2k$jU!ju?~cv3i17)ecn^e}kF>8bH)L^JZ0aF%sr5 zk(cJ?PNn%bB)k9`$gfNFLS6B*m(9g*^gIEM8z7U`^yBwg%zYlYhfp*WkEcL`4vogo z(9wT<d5k?MZ0`4DZtRQR@sGhzwxDwns5TYCU%~u^!nY{I-ydawD$3AdeDy>xj7K>H zHGUY3{<bc_JATVuX-*KfIo(rugVHr(eb9EkSn7BQdw;S7*>)u=&C~INaOLmSx<=C| z#FR4+c>G_u{w{?_tswDtCzu@+=<oAj_Jd+O+WDKTE&Z6(_R#gpD_zmyWJT*((ce6o z1XGcYISNzX&^9}!IDykTNGh5QW+o_hOqZ^fCgS(+kDq9LA;O9;pfb?<s~-QOuJx-? zehUrK`cq*3K!MFT4CZ4{Y>h6hI#74>&o|@QWJNwNDtgnC89`S{Gjbbn4GoftMu16B zU`3aLxdaq@LzhlA<N0JWVuy8Jy)<#6buOAyF}vMN7>|l%>h0VnZH3UxpZvvU)+sqT zH(yUG5WYyo3~p=u8_Nb?o5YYHX;#H`?2JLJhCFG$7rC-K?=$M&?SeL*Yx%hHl_6UB z`Yk$`FLV3f5$n~w0)tA=RY>{@ZTuZbEm$k9o?Nj0JOW>?2dSm)Jf->DQFs;&s&2vB zVV<uNAH)D{0jWJ{mDQ8GN8>nD4XXb<1kDYWlbnOHR&TUIbZ&7IG(iJ++%j=d#^ctp z@rLm)(0~h}VP0;@e+NA}0ly;z4dBJ1d4)QP&BHyeDWHMAOvFfqT3xQOWO`>##2qQn zpdJ{>!bWL3rgt4Q&1<d9&-!7Ihasy1I_03+8VF~BIRj)2>Wl{cRhKf1bu6{j@()EF zwQ*#vhtkC?RR-aHFuw)GKGX#sQnA2!Ki*<MPLN;z5BULIcUbF~NiL*(Gt6yP=C4>m z9z1y;_TB^4W<dyGgYto5$8_PRqyqj_T_Wo%9geKd-VePH297T`C|7_VxEb5g+)8xe z+ofpDy;eFqI|j2=ph3TcZ?z+(6sF^g(51>m=-2K<)-RxQDQM`gAq-9G`GPo70VJjN zaU?&3{5_yr{_@R+iz%SmS0FTk83wA_27#|*5RlYQ8^ZFJvgP$P9pGhM78a^%czHfY z-|}>1oLma^3qV8OL;2@1_xUoDT#iaG@RRlMWAyk4)ZT~wdmv*F1AeRS5&Sd|6_`Fx z__-=5euu2|$+(*cs{Ir~A27W@392=uVf{K4(s)oq2*OG*D?r1!yY7KX39K{}LAV*I zH-e1e{U9Ad)-YxfoaRj=zbaWnA(dt0B*3gj2;pWNLqW#yiI7^6bw0CBhtP!N(ULVA z(r#p3%d7<uE=TfZlC=WT5oGOV)+z{pMDo+jYP<|mnGeYuz#K!;4@}l0ovAxM#b||! z8SwZM)#w3^bhp#-6$_Azw5yk9?1o-)q(>lsI7mi%8JKe@aHMYpvker>*EMjY)$Yc+ z89keHj%6HV-5DPLwXB;Fv<D@BPg9JbPrw|aK)azSm;#`x+uGSR2G7&OdOs|1nsM1| zHp{qGmKnn?)49iY*R^nBU|9x2vj!n1t4<G3E+;}WjE@8j<ZlnJ@9$2NQcosxzeUdH zAekmp;SXP?u@kx`R4#$Oblw?f;7%||I&WrDk9R<lop%rN?*vIBKLhg#1vawmOq}{a zv2LSP4Z8F6+`tsl7LU)D!8UeazV3w!x}OL4*J=OIX={-KtW$Il-<thjniK50JiD-4 zS&4lt@02Z$>aQ3fp!xcsmurh>7%nn`MXHAHDZQbj7ze#*{R39&MD(Q$-(~Q96-ZiE ze-^%$0+N=sO~nxyRCP)F;Tv%yLX%%4G_STYH^a)v$B;1c*LX`XxnUo;XHe|-poYIf z2v5U>83-dW9)0wYb{Mh2S$(^e`A_<CKC)&(s|8fc-$362=4J{rAnXJ4EGYJ^F5NJh z%>^PX+qsOkxo51!j>wm3`22W3Y-M&G01MnRK1b=pG{-$-S__68r1p&T;o#)Ouk@Oq zTmH*fihITzE%@R&NcN2M>G**pD3+%S{B+Mq_Z+=JnZlT*VtKqKMOU&hS;-z&@^8!k zg<Hw#usIndm23pFo|WA2zf@9qqg%=8-Yx%HbB$@&bhB%UbX6T1Rjz@52}M=kS=nO; zy6u7G*W9YoW}rQwSiUasbL|Ojb&W|6?@BHNb=XGCy;kNWw9OtK2vgM{>ER2&oDWhx zJV4I@!`R7E`z-&*u18Nm=`oh#uKWp@L!ellF7R_6?fjV@<}STgm+=@!Sjn@NzjF+B zxija_#3KNZ?92%;LqUe@?Ux{%FVk?jT$Ny$|FZlWTnlHTz(Uu;jbOHcVq10LllJx( zlOC$QT`C%k_VHyJE|;w6Q_KIkThSia{k>b!XJG!xicZyqPpatq>y=IS5Ha|sp(-IY z?yd$#)%!Z_HcXkpPwM#-7lq>s#ZMOE!RPBOd(Qt!v*Jmu$tCC)x?(P0$E_O`pSIKa z&41B}=-%Yv`UO>Mx~EZxx>5DA?gKeLj~b22%;}c=Hqg8l%gpHRICLPT2M-^kOO+ru z62@HK2RSpWe5#F^PzqtD62@}h9|v%vSyt*^_S{(R_Dq;<$-N6>EcbXO%&}5=#5Trq zXJ^7(H-Y;(6Xsc|JVhI0xr;MlzLm;-$Y`RlKpVte3*KiObuZl*Y{@Mq^KFzEE%ze^ zTisWo$Y{9_QD^n6h3+_9f7h$i^EliysaMZgjG9~71vi><=f{UNl&@{-1D6bA2jh@D z2M|Oznw`mqXW`fa8o)1Dn>U$qkEa<4W0`mlZQW$b?W~uPupcBF=O}F$0CZ_kxzkL2 zycQFQr;e7{ILd=$<8<{>j5>5ea^t)g`FDe4dwB)S-zae7JO<`_Q0#17gL~>&!6sC6 z*Qxg*YTreT*e7|{N6yacblBtnEVUNzI#swXJdPrnXfcYUd#-bJE4FCeeaP<TW^dHl zDq4;4cWWiuII%niZXd>M)NKr=^{Us+>tSaCJ9)k8<O$Q4;`YUQvo|AQ!oqXO$H{XH zFE!<swsGp0?Cb_p#{P(o>IXb(<jn0qV!q12HJDvFa0BLG4+d4sz%`h?7^#;d;T%x; z3R;pXcFi@6+d;ftGh9{m9>jx8!tI*jrgu3CX3fKQ0zmcre+(qb?I_Qdf3EH)7kQ1Q zT;yE@jYXh=Wg!G(J=7&2o6H>ET*iHw)%_M4IG@O6+d1>`XdE=?ve7t<kJIfi_}f}@ znwj}>9Y%aNvR;GEOQ71@Ayh9w2ZL(4hMooHbWp5bmws8gf1)L)AZLw%bB|qERM8Ei z{P|c_0WY49!8Aus)Z}gr@b|FurT{UxgE9CNZLJF$fF%-l()z2iSnb$kW7wljZUXN9 z*hy1A)ieg~L336OL0>Mz>R{&ZZr_b?`C5=P{Ayhp42IG0`DWk|R4Wbt5IXOJq~ZAs zu@`});q_n!gQ^~F*KlJ9kKB873huLLE~<Pr%vRH%4^QO$wiKmXK{CO%gSmkMC)hJ! zo(9DZ=<@9+*hE%w*?48qOmfL87Mfu(|1k`F1QPSXMOZ>WVm=0D04R2Yw$k3bF{w%S zY?*fYb#~oSMC&RQax+kLDyX7aE53sve*#Ks5R6!xPS@AN>7Li!oxrGQ)iH1wWsXRh zNr(ZX;uW3F(;@E@@^GzoA{$rq<1;Q;n{f=Uyozq8*ha<ox?lbc?OM^+k)*<>s;~CI z(+tzMYk{U$wl^(D(332G)lT`&_R5y>W6cSE^wS;4h<-`?vBt+eowp*}M|8zBt;$Y0 zqEyp8y|?N<uDV@kt1Z&$jW|rvE7j-2^h%YYR+Z7Rnxv@JgsW4kS~A9AsYq2z#W+lH z0Oxbn7$d7iswsDT$1UTtk6N{ZjFSf#wPu*B+}OKN%Qy^jnki3kD#lDuu4SVOw;@k2 zvsIgPdOp&Pv5)9d9nE~TgTBiI%(Gs~%(!L!$oG?lbXf)Y{-W44=FU>Iaez|8S9!*i zK>R+_o#%zBcI<|I5;$Yy4)ym1dy%#sfwvXZJO?So+}H64<MiQN*>}ozYTgR{DYIrH ze`f)oL7l-LT$;CfS^5mD_qWR5IGq6>Z<CGm4BVu?U4CbI<`eYc_F!cS5Ypvd_w60Y zpLKQ`(!a2p&VU<x)e}@>>JTcgG^wz=MtS>r(&_gb;Ive{GQf)8h0Cviris~=U0JH_ zY%IQ@$>QwF{&e;S$lrrn;OP0{a@As7*nwIw(5qw@`U|8#GX;*Xl2g=CNMC>kwqhi= zqUzr3dcwJD^Lei^-P5vN`8A!Z{4WP6!Ax@5uGibrXK=Ci&EzWI;fvqhi40lmhA!c* zL$!*(>!!vq{Ci=Y^K`WY2X6*op}y;SZ7w!I*F;sSaY{^-dj{&dFY^^>(nGnCnr)=8 z(@u-@g6FN~!T!ojA8pOt{=#r{6*ufw*;|*xpE;meyp{G(t&Q))bEwWq-2r7e=>%JG z2@8^w&gWVU3p3P`C!I0K9|4k;atoME6u1z-1m*=$RjO__S4w<y&Cp^an)WcNLi6Oo z*7&S;8E&F6CktiF775QX>@0kpr9KefO^pbPTZ*XBlg~G^&%q5cPz&2SJ%{Irl@J$$ zDn{zk6H#v!%Atzm&pz>ubDhm)uj+Cw&_`p=_nd7-;=*Q~vE5WYnA<mwbX_RwP8U8y zU57x^e(z<efqdFsyA<&SVjT96I9vniT&B>`VsZ2U#C=S{LQ*2Ls~T7My+Cti4o$JR z=JPelH&ihN>cdDMfntd0#$2viyHMm#kQ&}+bs^JOM~6=HZ-%lA?*Zui2_&1MtCnK8 zT)sA*9BMkw%L5teF<?ee;81S@vk??~O;_e_iWks^M49WmY3!yOXQW2ZZ{o(YD7Y6S zZn$bGvca)*HsA0{y738g4}rvuP#f+!gT#$En1P_!v6I|bO#}1pbVnFZZYzGL1x5pJ z5}y<edtF^*557&Cn<;v@X=hZpoy1Lal_Yc9GO9k%s+@4f9R81+8Il9<!8-bYt0MJ* z*yY@t#vh=VA^EY=TzEc>BwJLd50}2bL4FQ2SstQ?YPtM3t-vi)(5xr1(tK8@?3qRr zyET$N6jp2BM9u?H`5mbCFA&}Xa}X2@=ytWBU06}%zJI#sz3Y_~9uWCh+nDXzW&0Mu zq@Ir`LIo^V_!w_gMYK6?XjMFK^0kOUkrw2^`1~Y<E6-mOG=!_{W%H8|uDoGBx;=#J zXcxj2gRKey!c`UOQi_1skDKVc10weJ>#PNT?2VK91txpX!<%CZ6TKwiIV3Fn8s(7r zh6Q0k3^UWytTcIxPH8p^4y@8_)|$(x8IvzLc(@NJO_i{48kSjP(#eIlDMh#d`}fe3 z&Z-p0N|owtj-{q}(%HPm<Cf}ds#2fA#grLh&co-u3*VQ7d@nTxopwf?{x32Xw4g*v zol@mfpeX`mTPF<wznGacs*2S~V^B=v-_l{v$Ye2vf2&lxYSptRVgYTfgCbrF)CVHB z4lSsigRH>0*y}*GOCj71<|YbjA=Irz%zzeO4#5~gJA3N1fh3pbTEulFdqr#>K&d~0 z#Ae2Mcsv6Vn<Ky^Kuc&d_PRFL`80{-bkAR|ckQ=s*LmGw^yect_Q=V_SL(Z0_%<{z zMST;LwJ$oTPjfrJl~U^)W*FDOhl}V`0fY<B#}z54p#(yI+{CB?HB>@43(OgyCH(Kg zB_sJZnQyc3HvAmCHHGo?5FR$HfN&W!F9c2GG?=6-w~}0n@&eBw%uIP^^jGM<2tw!5 z-L1(IE;rkC97o{;be-P%u@ZibQqqn|YtWw{aXk;KmkkovKLqn81-iasErJbn4x8ZF z^2F)}Hsdf-J_0qcIo;RcOB|r3JP0p1m0qC^^<g|T4qCrL##!soA)sMfwFb}n%W&f7 zimL9|cgNbp7d9(&j#+P}W@5pVOR|gB;o&Aomi=FWxrYLGpO?Y>6%^wGQoh{X2MeBh z4%etNuyATFRTNQ0v6()ERq#37x9foO2{MNBXucaBd<FFe-aPDcA-;+RYT&mL{srb^ z3NJ$#d=V}PL4$bK{w!J15&GZ947`N4)(%G2PUvg^C79DN3Mt`B;OfN?CPOG(kFO{o zp<z0NS1!d-0MxJ$!ey5sXh02Z5H@T8L?x)<LI^b*@r4u6vP}^FhIzo(@M|H|<>2Ii zkZ8CL!fn66#01Ua;yZhiQp3|l=$Ox@&m9j3`9$kGs2l-F2VZeHVjLtLoPGs1eo)o3 zx(+$X&EiUUZ_?aBntM0%ZkppsxE=)tgXHReE|}RAc-vzOn5#g>;DNgI9u&enP2F;I z)io(b#blk#!|!30)&2mS?pd%^HNvP^KUs0SaLGi2VI>7tI$)zp*|Gt5Lt^7$gfD9R zB-dEZMl9CNGLu}EDr1-rX5Ij+(x6A+@&h1g&=D}7QDB3@n*fmjimld$)O{TH)PDS_ z)N*bE?m$^duDe^?m#H3x3%BoquvY_;?Rx>3IjrEQuHeM&+tAl2atml38f{b@(}8#~ zTAvS_XgR;hQNd^Pd~HU0g-*v3P;pSFZ%6tlosI>d;;>HNh4h*2(x+=jXn$2Z`v6Us z7xk|`u3z<_PJaODv2A$c>t`-*(mkhcRhc-8q-@#B#;B#?N9_q7azzknWoBkE+9;8G z7rN#a_7$JSrd^3yMS)AhG6+jRF+StxtNqd-k9ge-3qN^**>W>;t!wr-D0mM@%zgpp zGYT|Yb`@3xP^{xgX0agRKXG;6^JeM}@aX$=&kNT}{mA}CH)Icb;R%(k@78dDYPCfk zyxx@DcFz-H4pRAISq`b(<>BfnUpJ7a>BzOzb9HbTRL0BfX8OCJ-jQ79jHSHM@HagO zT}1&aGqM}rL&hXD>{K@HW39n&aq_H)YAO!ueTKK7mZ5}>tHHxC)_mQl(=NbW#gp$m zKC#-U$ZFR&_a84G>!{OTP!02(Yj6rPWN}Yi+vYu}PhI=iHYVb>l2K)yE)^Sc^QX;) z{O!{v)aK&L#(aUc=X&8F4eC=6ZFAv&W4od&uEBxr7oZWw3ZAC!7Pid=3yygM=T1+< z@1{U20fjtg`us(+XB94AQaE$z?CHyA7tUY2eD>ny#WSbRoHu**y!o?cm#kjWx_thU z#nTrR;>Pmy^LqC#JiBe#^1^x3SIjQNy^8sZQGV9^vu7_}2CZd<GuoCH&Rw#+u-I7P zqVU3%)>6!O&<JDY|9e2*^J=>xOhLp(URkrF`u`4KdCroh%a=}HtZ{v38Y_6{oiF{d zvgeMH<4vExc>ePF(-+M@|HS5(s0JG=PubC>5Y3*yxD{=a#?PQ;;gZF(3zyBFi>5C( z+Fr>?;sCd`gKTc&R~krp8zbla76U@cv&`rU9;SDKMi^}$;)B#Z=5O2H2e-9ABR6KW z5tf<MeW1T>KJrQ3!_l_)(FoG0qG%i8ok_9m=*qwjU$4T&==|x67A={H;hbfhcLvIk zV)drKZ8;dy=sAJ5%P}0J(dS3odf}6l(wx!e;yVw%0#KVf(w5DfzG(VV<2(<Fkw#u< zX1867z#|1JLv5}2B;{QcX}b%~k^<F%wmc}4VmC(5%SRe1uhbK18;FWX7JluY5<sQK zwhSEA%vaFrEbEVWC$w>^o&~_%k=KXSC}F2OifqeHtw5^BPKhHcb*_Wuz<jvxPs^Cw zzs|;ap8thvnq;rQDzFmN;f8c31$_8w(`GCmpbq?>Qk4|i0!Kg{_{XHC$selBhB%!` z&!@Utw?Vv_N&NdzRq$Pi{{u?n|Am?+T*dLy=wKhflH`hZ2Ro&QTfp=Gu=gh5aTQnE z@V$L?uUnQS%aXjY%ItwyURYv4#&`wU#%^1SC1c#kQp*--L*241gKc7GAqgZldoqbd zCJEV0wn;u16UasqCle+l5FiQ3WPzCs+1O@=ER*@(Q&n%>+qb)gnQ!v{-}C&xLEWd$ zJ$34Ab?Q{z+uaANgQWcIr|VvTQM`jQg5(#=q}imJ^+8g8Hq&)CspeTh`T5{^@~yBY z{wB(A0J-xAaqUVpH{h@0F%0USE+Z%Lcj>w3{&LZzo*lSvc?NN)XOoK+pS#fE4*XT( zR@eM};PPcOzKB0{_0ItQh`)*7n<Jy#f$Q^bbDUZDtHi0#EHU1HqVXL5^293LsKlAH z>UaDd@EiUraWbtCQ||;5{8bJ>)YC-NPonh!g&B0*dih4zBX{AZ2>vPuaB8h+F2D|_ z0e@=5+X38)ze>zTcm8we@DN&mFBqKe*1rnG^uIwl3`9l4T&UDwEmD8k8QLPB_y7)@ z@Hg>G;)MC<!?Ta0`Ca^}F-|-LZunD;9|QQFAhH7@;^iP77{e(z{?zqXK8Rxq{Hey* z{}#`7<8KmvBF23qN51h3uRd|fr0jM$U=DFV`==XzybuSu?i+{!)$NNEmy14x8VY}v za&SNYtr)Qjtu+2736Hbc<7X%Dd2HdN?YV6@og>bvzpQ6*)rO6*E&kn&zBhR|jKZ3m zMYwlI@b^UU*G2FTMDRC6@Q+3C?}*@k6~TWnf`227i*Xwc9@rJ^apZOG*=M=VwAyn| zn^y!kw?SQWs(xg6d<e2H(>#>yzcKj3!1r4GWGR>*7!4-l_U3s`)t@6oH%EzZU~Nds zuGF^q0{DE`k~mcZ1}`@IhQ?3Y<ILORSjm16q4=rkxffQIC(PuZ^!)b-{?I0ke;D|g z$SC54y?8}Q0$JqTt?J<j$wEycHAEiGvk{uk5;PO93Wt(!kjGF3eC9@IK3;;REkg5X z37Q)sG%uE*xj#Zvg~Xhv&?AwH^VG!xyZk6ZvL@dDUm_Q;E8hQ)5t4Vu`%l;$8tb#g z`yUq}`Nw$wGb0yYEZ)E6YCXia#Pz7c;E%F{AKN94EjxIRysPK^s(K@Ii%Iu_gtLTo zNcX31%}+wCOVh=IGo1-3uGbW5+U$(rZ;Rkh?$PuToDXp1r`5<|cwP}9`bjCG>mx)7 ztVc@MIH!+Ch|VlU^i+gsbtxi$Ybdz<FjmpwmPCl&t%xF%Zf)e^XElfTyv#&M{xRMk z4~?jQV!9WL_kU}IqzY9?Ui{x0xj0W<EQtS)L`c@e`+qKS@w(#u*K7+#yi=2yG#Rl& zHbV4ZDWboL5dEwa(bpnGJ_<GE6P1-C!~Hr!bapAC+TKv`wWWwIju7Qa5sgHM4l1IE zEc+rCKd(8&L*VWR$@k*@KN7k4O7Z>=L`bHf_{$4{uSYJPr!E$Rz|#?ub@BesMK0!w z_wT<ZwB&m=Nnr@w8X=M!e?=X4BtrDdQbfOq5G7IR7v(hZ+EAw1rHJsXlKLmpYkeuA zjS-?9rHF2i5Z$hbA|dd>$i@3Lhj<9wA0c@n-d`Trk$)oQe-!WkRD`6iG8O{QMlQZd zT`UNJ|A>&Z#QT@^h2!ri+P`|mc1@zbkn|&_@lTNV(~7<`IQW^-e@`|{cDGc#(vSqL z+DSN7-;I#|s08Va?|ttNzvNW?CPM00iHhL*Kt5L?U4-w$*bz!o{Z*Vp%ReRBS^IQD zL|aKF#YI~mAss0}YD621klsVm;-bj`xBOGmJoZ-IcplPxQ}vUN&g=@Ds-Hxz{G3-l zBUhe}T=^5P;74Dbs#hXcrebrd<^@)Gr^<a>IL;hiL5<*4RYa~d@ygwDr8aV<Q(wW; z6;9QO5&ZS+@hV1{vLJFrzL`pm|Ck#89eR8T;3K>eU$-AMME?e&A8I1}#_k7nPp9U` z=JH=~8JzLqOJ2gS8Z>}P_K$V4o&7|@0QUoM5@mihc4wMKHpPnODbhSEG*hL&?2y&9 zZ@NUuE?J?TuqfFaE7Z>|N_M&mHP@nKbE{B0ElPHr3U#NTrn!l`g0j1UxoXoWo6G5C zcbz&Hs8bgN<#(NWR&dv;^}$Jkyj+keL0+nnT3p$GDt;?OgM5Cn&wRc7WV@;Oy|a*? zYz$v7KdB!Tzq7Gxb7ovQ7oWVsU&5LByE!;0#^1~v(U!lNTks-(GkBtwaAxp0E8!fM z**WCY<1)aZ!5z+01<sH!JdzVvaC{it<ZtGac#%KH#kZkW)mC^_$5%~pYbMBncw(C4 zRb5nZam9rdO|>{1InAl4xC9h9Fgn8#j6WF|oWGb0$Wjx|R~M3UK`6@Kq}mf}U9YO5 zLi2Kguc(Z$UH~4G!m+TquEo{HnV35`hN%_$$+N&`4(O_<x@XSRxGBEkU2|T9)uNfw zt#%d^syhQOIImSI_*#W&hE_E-?esGDk_r(v6b@fo;#Hl1!DcG4{qV|hd1Awy#~XxV zC||gDLaiIs^F$F>6gUZlN!n5rJ{g1&&h^vt`pt@x;}dDoaq)Tgsg4){pH_o_$tauC zqy0plGhoW3*yPMIxFD|SSxQroy}>#Nnuxq-n-R5QkoO$J*&^O(6fhlT=bJV$0|!G< z&j?~p6oFeF%BdKAUbL?e&TnuR&7|W*RSC&UXWY3&+45YFi!GHXiRt$*L9Cv4qC2m4 zz5Botzjb<hMTfsZX>opq+lq@9oafA|HH2^SLwLbE_PL1rdC>R5ckaWNpw2kB1fySM zdC9OLw~I+G25LmZ(R~*-z_i-8p{#dlSugP;(P>1$Pgs(^iDF$E#YyZf&a;VDa!C{? zL`#7PEdkM&iNYe@@(QS>!4*n-T)eCT%GTh4QrxpHq9PKy#nOm!3a)G<omS=RS+7jI z8VcIL#^bF~eQ^|L1T-mRZ3R+!%CLd^&YY>4tTRlMM^RZu^~9Z{sFrw~A=<yGR&!`I z;~EZaHh?g)IHkVgJQX_|U<aqY0mjiGW!%(ZH8(D=&;hj3;*~`V_DV4>O}Xg;#0{QA zXmBK<3{){}@lbXi3WDIEFdv0S>_Wu<VG`Dvc0!no!z64cH)Ie;;und+0F-1@5zW5% z{z096E17+(n0+UQ*|%C}-zmmb%E3CL)=2iPmF!!WpM9rB-KuG)6=vV*%)T??*>`51 z*vK19$I9uF?T*jSz9%sIo@kPnl2Q~tDL?z3oS%K`qvSYnkB*CE%<Ow=Jp1CCQp33* z@|@1>dq%PBdnU8*S=K?&L>%-6Gon@u@=7|k6I~QICqMhXQDnk%#!+ubR3ZgmCMz2l zNpp^!7C;o_s=3iwDCG0<5IP6Vk4{FD(9Vq}#`7YX^!zYMUJ#w2%*DFj9ZMkkg8W&X zH#;wk29D`_5i_05%E-xivO$4``P0{|3dqTJIam~?w@Zr~$1FPe`53&HSl%XO8173g zK1`y^^e8GV%Yvj+vNkBPGBfq%8Z?QR-6bGaipXIGHr@*}uq;0+Sdf9E#zF?JaD~Cz zsA-UcB@wT)<`>@Uqs~UsE#?nnix#V5s5)-)hsz7nFB8m}GxJ=z!HlA2qH$$=9uB7M zh<0a&-x#IB{WhbJVua5J7_Ck7s);tkNgj?!!&<^5{xrDS8rR5kb(FQib;ec3Qh*X% z+#(BcmkKF}-fiik3q~elY4Jvn4K>JHFb{D%l`>6%o3^1dDvjHgfPHV&E86|n#CdV4 zyEdvCp0`7Hr@vt38<6TiR2UQhcW|w!BItFj9fqSzUUni#MYNpN)&zoCAV<PgP1i+u z<S!qEN7X|FZVBr}bTq{2fDYHhCHY&Ea4+KNO-Pwu|NPJz18O64=?vrPfab6@*91ls zFfdLsLV#xZdDvc@H`DlkBIC>Ut_U$FOvDC;LDN(#&C0N8I8<rF&eQvuNRq79{uSd- zvBuYAHS8nXakm`16md$OT8;rs<pMoTE~aLznV|`$&vH(gF=xg)XfY$tqHy!f5P=2M zG?F^rVC~&t>p5S++U2@`s;b1R3qRxGNyjbrBhLSwAMJLEF)H{qXy=$7F>&UMWQXl< zf}7v=)<5*Ubzo%9mfl=elZc>OySnBSkX*>#$G~b%ZgePP7#e|(O_@1e`d6+UC-xiL zu&a4GW*fHUPW~^F;}{^D>+T(#->?mjXgEcF>m1!dfoFg~0hcN9G%-F{Hqw<#uV`Am z9Ebo*j)fFYASa;nXf~Z09`5VS$`5{H3^WD?^|g@!V7oPpACJN_NNM>2c1<Td26D4U z@G_t=L!(1@+6OSy=<m#J(;ahoEJ;H{qy3qFec5V^1B3nye(@a-Yh07*GM&3K*{<Oz zVrX<*XIA)u^U!E_X3NM{-Pkgk%cv)!qSS)SMiJ1XYp^>r9tv{w4GwIDGQ*jnVa;3+ z(LP%S2m7M!p1#4(TofU{o8Fh%8AajQr>%Jd!vurFqfwIF2s%X(;)`gzySFQ^Js3x1 z21fd$9q`*;(Wd@=`zWSoWS}eB?&|Bz=2@%<PozZ&^4hS~&}diZP<EtGJPV)T5wEVy zmd>tgbu-)7+m+Y7D}!gDA`b4&Wn%u#=J2GH?maZh1_s)i;j?3EpdFdcYlkyEQC>RC zvzhC3?}5(#Om+z3L}`Y4yRPj+)Z}%Pkm$;COoaX5uxWJ-;sLy!jO4-Y?8s0U+0u=j z5V!-wBNF~Hb2HmJ`!v|wAJT8>%k>Uu7qDBG%u?NuWPq^g9~35-%LCmioH>nUcK2?@ zbAPys$(sK(-8Q6Yr*jJo(8-z8xMifbFE_h);1XnPoX)vUd7}Ds1v}pTo*TFad_PD& z<tGCdz-@jx-jnTqWpG<<^1<XnzYgu{c7ICHF;<rF>%2+rzCX2A{`YI8Q%@Nlo)5es zS6!W0{OWb?Q_ls-M&F$Q{>cZ*65f<#E@(d-xIudZ7`WbbZkgw=3cMfehCH>k0IU7- zWSyT}ne)qW{Os<Nm-b+%UnK%<M3)nL{7GJCBRFpJ-M~B1ZEt`EUZ&lzP`ccwbSe)v zsV<Nkgi6T2NkG-84u>$d>%F|&^)K^wtOQuz)3ef_6nIzWeBY~cwNY03<wx56iNR|B z6!5P^Gw>!RYy6pLm2dP<xY(b0F>nk069f_L4`7Qx%;(k~Qp7_C{K;s-+@~ASIyzuG z*Prwx<ieLJBpM*dB=7m%LOw^y`kp*lm2>3c0IUhxxq<hK-P-a8iWA-&9C`_a69ez3 zP)}@Exle=>Nsju<1MhM;0iN-Lm+?Es{&eqsdm&*hI@J2*O+fD#QICQJO#3Ux&9f~m zGzxcllcE;Vyi05OkkRsMO3STE%l}necxYK)<^|rDAiA;g%!?pBO?;m=F+AlqNE~>5 zTE$7C;wr`Yt9hKEiuk(P`+IP7z1sHVAqhXI_LjZ-g7(IsBak>udOw4v<-vn~Eeuwr zxcSupVaADv>HdiU;xlg1*})IhxcBFcYyEaFxGxL52Y2r~1Tskc^@JOUbzScfi1cQ} z@%No%gTzE1THdaejg1iJf(B_|DgfMPz)EkT0=MUUFTl^TCj;+%ap0<bXdi@4rU^l{ zH!SV9*2+H>Y+lgePrv{k93{b5*xs*+^NIGyI_-xsr1OJ@NntzIzgFBN9YR6&A1iK# znlC}(>KY^jUwM7A%1kxM!(h2e$rh{x=)K!r=}%V!ZSqg4^}XpzPPapx{I7cwbKK(n zR>L|nSG^!{X00Cp@`F27u-C5jE0Q0@g)2aUcxVT>&`@kv%<Hc3C;lAtR|<!He$7!( zL`C|gvkzC@U_?d6zaX^yI=>v_d4DI9EuM*>#MLsq8$6{t{Bpbwh@pFfWDO!n=I0(4 zNn1@7e_xQ?8YIrDk?b0HzY`IVO_g4GNj^X#ehQsbp5G^V{#$BP%%PZMd3nD0Rpj~P zsvz+OBhQN^<@w|PEArd~bBmreiPLKGee@P6?&`ogs7a96^SroU)}Lg%yt-v&SVsYP z|A0B`2~>xtXz&&&v|6g3giF+=z<VfxWR2PG{il;`#B7H@29dPADT!0C{<Z6NkT^xG zcA{eAy&aOCqB%;>z<Z~gtO2bonC-$j@cy*N4TbI)Pw0AK6bk)~(n2R2^k_#=7^rcK zI5L(I2bt<c=SdOZ_PtUTz-kiRuSbBdj4Ob(!4afT4(bIz#;mUMYm-l4Xygq&#mDSS zl{{Q`m0y+oo@9Y5C0olx1tlCVP=_Uz>Y(;2OzL;}ldov^XQ5tbRefY}Mk>|QTvV!k zGuoW%eSY~&neHzo8!)3@mI=DjFVn1LZSaG)!%--nR2r&SDFnfDuxFk3=aMrR9gx&l z9?&jbrKf#TFa58M*ULxZD-Z70UOFf6?$^t<m}M$L7s=qNT$l?G0A&Z{C3w)g4pEnX zMS>bv@R|s`3S1WGh`e|?1s@2!X~p}fuztodfs7=idVL7OoEms9I4C5&Rj}u&!DN5h zJpa`Def(&z*HMPl;(dKW4q8w1j_i~LY+;bYitQu1zA^z`s6&ORywOpo{N@D@NixQ8 zN$<{`&w{YRdwzl#f1$GQdv?YWX%9#cqrU+&N#<T~hj~v<_m2Z&@*x>j*9iOLoe%5I zuiDOc`qR)SXz<Ux(hn{}$3Fi=LG<`@7HNc6(WA1f7i={Hc@_Hv64y=%ytiTuuU4;9 z?Fg-Im<D;^RIC>eb90Ye*`EcxP_MICqdy?6{Yt%-n0AMCyqxK3;)neS?*s9rns`ld z;@LV~c>m!~d9OdY5%i-Siuq+Ia^q`I1^fu{&V$ejlE8dQ*M1NB6(2y$NVc@dU<gNa ztPrc?D*AiUSG}7yct{g`6n3G!D&Yn2gr@*g<pqJD-xLZ(skBs{^@6Jvybs1WM?u~j zF|0rmDCJ&Dd$4aGCLvZhq%+xUyd-~c?t}o*<0iHKZ;!hl6YGXRxSISuLuGZ9`h!DY z?*`B6{2zFytC0e4=~43i4+PDb$W#;F=%4vTyaq`Gaxl-IBe-sVPKfjB+7a|g<fp*P zDiGBL_8jd=RH2xN>OJA(xUKV4Ie_~`(F3?#|B#%DZQq$5n0HO*ygAw7t_FSBWsbGZ zZCG$@2U5py*!6$axmmFz!~fRVV{8|V&${HFz+pe#JFqn^d+pwy-i(}oMUUY$tPk99 zT*jTcLPrnW;68KU28ai4IEBkUa6>m9xZ#>Ta08rw;ASL<9Jm2f<iHIb&4C-BVh3(G zMfktszzuTz{|9c@*dx!p12!Bc<+Wj}|7Q-|Fwp;}4%~3S7&~wSrpO^Xu=W@Z^D2G} zhXj&;@TOA;5(kL$4r^gxoJ-<(&>R#xSjx&1{Dw8}k1qBUSZ!DNGlJTqzWXEpjKKT- zo_d2kBbZX}`>F&AypMaRIrSc|T<Y<{-KCt>p)!0w>Tef?hJUgwlPHoB?E!Wna_M$^ zNy-yBD_mgC3O|8^3MEM`E>!!IPVwDgf6{6><679EN}rjsG`9QG<W0_~ZdXSpe(*(A zWxP_dn#HCxC%aT{J-%8}*6j-p1UQV*0yW_z1mn6La(pMJO}f-hPLD7JC4O*dZw`V@ z^Q%|*?oPk@1T=7%cm#dR=lkx>I7~bZqTW)Aoww3M%Uq|0oh)y1dU&NOsKnlKy5R?x z_*3K!Ra)g(&YvM<V}7lsmP#an9#U~6aQL9x3-MI7v|ayX_3rIz^rr{}KIVdWM^0XF z6go$1=S^RUlbS7Z^mtNEb`IXq5wls}g!ifb#9RCcf?vfw`~}dj)~{;v-GwW~*xt?q zwLz6XX$|0BlrFCKHWc9=dZKC;cY7ZWl1DLUJ<crm;qrDl^8?)Ar+_^dqCv@Od3#m2 zyj}3Ew1XvnQoTz7d6P2Vl>L5<x9gBn%ng3yE7$AIZx4v>QoGSgbV>x@@lTg`Zy3D= zfZ7VbQeNepc_AwOT7PmAz*Wk-sFrbzJPT3@+p?p+Fe<~bt1v1fBXPRIuk<Thq{2Sw zfPYrtZAUL}Vxt0c{wy)FoLj6?+llH!5bVQh?+DUST$fWrskP*^SJRy#+r<+aRUaw( z%Q3LNb}%^V9fxXinrMgV;e8vw#&C+-YrVARN#!mah|b=p4tY<2Kn;F*9VC<BftC`u zGrRoiML-=)eg_lUJ*;8`<39vnoe6DZip_eZ=MWBo|AhGht=_da7d#pKtx!V+Z{SeS z5P0Xf$(?e_e8^9E`0kpT{=*PaieK5m)&|#TAKmBI3>go7*gsx#msi=f_eVT*tGXzA zJr&u<;Gw#}D~FLVSS1b-k5@g#QY!<ms-4!-x+Qm0F&X+0oKx*W>QC=&6m@>*^oXp7 zA@m%a>MaHhHsB3P4rDW_>JtI{D(~Wwt;&ium_O4n;dFql^53Ays{G^R{Zi9hp!N+` z896{s$yna5eJYT=;B)@j=pcI(IUw;czQmiS<I00FtEftCt(^FHugV@y&8U@#zA4_# z6Ou3C!bI<tojsDla2w>EsQzclQ43Cr|9z*sPv{hL?_IbuU5_W11@iuFXYw#86dD9L z?2cTKgK1uY%cMhxMqC^rlWF8hUMDFBTnHlBw|L%*BDO$NLuqcFpoCP{A-%jy!aY?0 zqlJLbNnzaJDs>cInY_=h-GCF0Df9i>77+v7#Ta$o!3l8N8zs_ZVDGoeR=5JA9GKuX zD%uxzw&!FR;0`K70iwJ~oayMXgj68!cTw})I^juwwxE-9HQ_~hHhHr@S1vZ$&cEN; zh>^5aZbk0YZV0XNytRrRO{Gai<lTmo3Ci%>&^T%UBe{$f8fP?O9Hr><JClbndaZXS ztU{CgbHpTf(Io#Gn&fWmNN35sJcKy)diBCr8H^Q1U*a4&)-4RT1Hii82VvS8@1DKw zhcQKQTTI_NY4m3v$sI<gRoI@oxO4PP{{)${jlo9AQMhoQnq1R@pUO0WM#&C6A(Odr z=VPO<=cBMN2^`jOF-Og+;7@ClOopTk-Au-7XI4-Lo;Y^O=2YR3;4->W(nF0b`tD1j z=}=>xO5ty~$gkce>?$x_!ETzDdlnb246u{FR;8p%1MeTNmz55y<uw1&pwh2cD~EFB z$R3hKC*^R{W|KO<sl@F>H<<2ET@K<M!IO=_h%Bpt*N>DvQ?=0n`T3^ZI7bkMW>LOc zWd<oo+Tm}U10z{`bz=R%`|MsdwY={-D|3h18yh6xLHT*4cy+H&);!$zlPNVX@V??4 z(wuA2s`e+|gToko&kgS#O6A&ixgqOAX6f(a-i{o0%2mj^Pk8T=vS^`Selc*e%)kVf z;;0xjIDD%`6SuIEmx8jxlr?kB`*TL0+wumw-428^oZ3Lb@j=D6BDh#Z`pibZLgakN zbbqUrs7eOKAxzH^RV*b;Qk8N@mqjRI5FOGk$Dxp%@y&SBpCq~cZsn5d9Gu(X*9SSj z4uLlnwS>5NN|1b5h0hceTo(zV9S60l27Ck)vE=;}jG}IjsM+%K8-$U7`;|JVe~#a$ zczo$Kc*t=OBFFm+IJi=<c-KCu<eCbzi+oqElAFJ{9s9YmBrKnN5@zr!lMQkwO_gjY zG`6bs#(mPS^kyE#b(xGV?(W^{SKf%`C1OkzN{9CxcnO1{|1)?>Q|tJCoWJLt(V0sA zpIosc&YW==ER#;ydjI0!02sV*#j7}?3aRqopH;-39o#E7o+=SH$pg5)$i(qR5yhW$ z^a$R)Ut%!K)O|Sa^FE5GEq_@~OeN5^`W4l_zeY&CM-lQE0Jj*yEqS<ICKyU1DV56A z?MJ9qiB)~26r+K6*Y$EPE_aG`L0akkq^w7-P4qr=eWT0~7blahe}?ycb(0Qbe{L_j z_<ySvc?!c}pregP@<;OOk_~lg)Jha;)u;-l+!uUH1y<cr$rDdG`$QWlH}tXk=ds0^ zS||6oYrxuFg;iH+@;1~8+6qRmNeJHRgL0$4`YFFMr;FnQ-%@tQi+2FzPy1)fkPX_k zYBH85>y11IRUQ7@U6LC_?e=HQ;&&?)Z4f>XKxz<_WU{m+BqAPGA*!CZ81YX+M93oh zce_-faFX|^F9}B>q&^UYTB|@Iyh$KwXcz3Qh6R2K=o(DN#$3Cs*l_gsA%@)GuHL5$ zzXKuzw1J;F@O>QkasP<w4}>20aWn9JX5hz_WEl99`2#<02EK0>2G-;LK#wbmAH|C& z<9dz$a#VL2{{%E9?U%6x@IIjhP+0FttvxS@AiN+}ka7og@W(^|0VN^J&JMUIebzg| zvQdyyv8k)Ei&9aki&FZa>r-J@?6G&LL5w0Vl)1Ia$6vdiK9;Eq(>{c^sq!cR>Ofq? zwq@lZ-0tu$aE~UI$l`6P!iNE#gmF-X8kIfo=Igby1?|037S<xTpllzxpej5RY}eyf zh@ka-Na1FN00R{<s?W{%3SkgQ%_(+6rS~#Gb-oU%6~+xVDvh4A8sXlhQt5qos|&{b z%8S*bE!Ey5I46aLu%78RNjFDL=zB8`)FO~1)g<O)Q;sNWz_&D23KDa%S`y9M6dIc$ zWRvenf~&1__pJ<So79~0Yu%NqaT+F=ZCn&>oEL30L>uR`f$WawB7U<+?BRR2W1`7? zH7kjCFYb!U{kfZD^isFvkqrjqrmgp=>ox`}RTuDlagUg>+<T9EAdtJebvTw$Ty*9w zdj29cA*}QRIn)VU{qRFMp1G0@@N{{0Xhag1$n4#_M<(f1??*UF@q=%dTnEr;eb6q2 zA9CHN5?UX5lq7Gt0M+L~G9&OlozS<Uzqh+l?mSDZJ_nWLz~Bz+a%d|To-Z>IeCPG< zp`>}x>o;mBB#i?Y@jja<e!@iYAs<g8NQweRXNnK0Oo7bsV{E;2N|L#U0Y0XuR^UCo z3r9Z+^|ru;b+90a5nkFYidA~=#sQVK@e88axMy5qW3YZgj;qAR5_));%|Bkf@0Zp3 z=t^*hA3nX?4Gul2=?jhEow3i`*nY^!1zY%2^kn~g+R5AKdS@i-lfnY*#*o&kgU|To z3xebt8CQ?;;BMT8GF)zfgT&O4H9-%L6+x|(6TRQ5d|K_@>L+l=t}=KF?i{)PIqhn} zNJw?`pknbJO5rB=fk(B>Uhk)6G9}9-s|HEg)lE2(oaG&N$e+Al*YF<$&JQmq<u0#m z=K^oXvx@D(e72Y3dcym;R<InEnzG`!3tKe`pMCyvlvwCH(d)+MUID1{WUce0baK6) zI4}9a9Lql*BUpqeydilQg_D$(NjxIt*Pyn?V1A=N_prYll+fsi+K@n)8foLALg&;| z0$7e!PQ&Se)aj^lRIx8*i9S6+-Cr3T1m|kZwrPKl#)t}znL#h~cl`wiB%+h6)Fz@1 z72K5IRs~}ha>7e1{Tiufk||}SFCz@qcKS{7bcdQH-q&_Fs&y3zc{Fb#5G%#)hzxlM zO-kKKlJ=fb_n#N#{Nr$ffl@^RRF+&2ScD7$-7shF$McYq*<IPZpQdr&)FVm*53<P^ z>Vo&pges^EUWB<s!QV{m^W_#Rjw2u!FUz|MO92A!QOGDB!=!;Y`cWl$3ND^UZjh&q zfL2)*CsFFAFp5bZ`x%}3-l0@-Ulz@C37ksFwy#ENBY7$fS;*Vo{*qk8W<g4@a-<O* zSF3^?IL*ZUaFM~fWR@aRzM1Lzr{Y4LcWt|WsyDU4KLayjC448SBmM%QP<{cHspy@3 z2%9RE4hEAwDjrs1UxIp0Z7C6lb?`=I2HOFMc%Z#qPR6_w+m*mmgZnUl>%8ZR*x>Ve zLc89F_rh||m*LSIRIZ3R6qTZhoQ!X4Jc2om6LkK*x>qiymDqFxh&*+n1gbuTb~nKY zkE7i5u^E?h-T8s{_Fcji^Pyt3KmT%ENzPHv+kz6uKym;n&q2y)RoD_$>V3i&u^+It zExd$8_|-itMIuxl$)oCo%=MOIe;@}VuDYdt7`%@I0gnG_q&`=(Zl6C_o({!ilJi9o z8?y{E>?J_a$%PrE<_NZJQvpi-e1<#`m>g4lWRA&Z6$qZ~ep+qwuy2(!Q8_|XJHCVd z$pEjwf#^y#^A-gwC8TCTNj&(Z_rG$qjjaw&uVrtwQf*<+RIO)fB?|Y;<Eje<Qj5o( z>hukdiR@ALD3mkb1N+1SdLY=R9?AMPiUe`^J=p3*ZHPeqDOl)8{j@qfE)Sj)qd**) zv5C{C`zKT?;Z8)F2-KOfUxRHOw#zt9PF!3gw<f%o_CTdNvmXTcK^5cJn)|`6`hg}N zGePE%k9#L(16OxQjD%;Pkttx^WDYWxd$%TJ=2m#W!|a!Z@>V=ktJ{+A^dm9v!i3J# zRTgk4BTJ}+4Yq5&a1J8&62GDg%~i@(<=BYos2Wi6A%x0N%jsqGgDU$yj6%oWS*Y>8 z;vP}??n`@AzC(vE!_0CNjRPU2%~Ye+2bIs@q^Y>gQstMg>GA!Ie)&aE_>vAq?=4a} zK`Hf7S1PO;?}xCyoS|vw#FT>E7pToShJD<4aIA=z?**$91Mj<gboujHSM52`=?N$U z?`d})4boy|+zmMF*X<W;{b>&l<CSRIUDf;jDH}u_W05PBMV_}7G3CVV5TORPoqVwv zK?M(jb`Ey?INodYPxKz%dsKPyNCHo%;BMDpsj@+G2Xv4VB`GFNt&~*N1Fqfby8E@2 z7APx$wSFf5o;-!20Hg@K|AM2DMUz;+suLSfd1s??D+kqd_>)B&C1ImHQHGmvqFMXl zmn0Yd7RgT@bgJFg11g+h;g*l)cy^+>#-F^?uenci7!e&C+htGeZPVj6`jhqj9UVJ} zwtR~;s&tF|syzE)=n$QDQ{eX_BGA-!e+5LqYPq68t(gz{$2H-?LgdToxEmxlv!+Ac zhkf<jv`Mi36l7y$ADKofz5ZvIUU5zVtPqN4-DGXT#X~k*@ce}5$amNje9BFK2CJdx zLVQt5{LU^u6qw+*;!4Sx><JnVA3d5lqh{r^aIH5lai;67?Fn!!<jq?dytJ=<UwaS! zf<=4b_bZbZUKu2x4H9QhN9!ph<r9L$aw%_4Q1#mx2ar9akh@5Vwu|J+QuWd<d**g& zw(mR89vl}Oz_H~KeA*y!k1M?si5C+!LGseX8>$j(<&JD3NE~r%5{F%2=LCt1Y65(z z?X$u5#NBT7D?wsIO^_Ix(viqb*$}LJDZn}qB-(25ATPT5iHFeh9r#;T6X4Ng^aJ*U z#QZ!lFO=3rNx79$Ld=yI^1$K5Y%Slvc#vcks3F-0%K(e=fN#W?4+BW<3q1WGVvu;M ztS0dlsFU~-KIy24o=Vgt{sL8=zEK|Ts!N{ZO+xk9p11}Aj!NYOMj!QR5+8xkjlfm7 ziAyV!s}i4er*7Ty_Q3$p{{~Z6Z`in@Bj^d5yd4LE17grbaFKeIhrAL8g2%n72Lcgf zXQIJP4655pLE=I1{TieJwgaCONi>`BehiuZfbq_#38ulHHHj6VDNh~>lmz$+BPG@Q zL3J;vR@AHvI_|^$*Tad0mB~4YPq|aOHf@Dub08Vy>e#T=8|k?{IX^jTY?Xq811p2J z;Mw4Xp#3N!9WnpUL81XxSzDbr6OO+UU=}VMG%l>b2Mdk{-pzZDdjIYu7P#I!_a<ww zX+JvlDXX?O@j!sM>^?9L()mH+_mFIF4Fd4l0KX^$4cB0YBp>dP*OT1faNuo~*J`EU z=}_=$H*r=~@KUlK1g9Z18j~*tKNspQ(19s(?scO2%-~3(3NtG;x@M$*OJ+E|8lR<e zQll&M*MYB9p9M>=$?RC1U7W-B=*q|YvYmZ7kX)7-NVnkgQ2^8Gb7k^jH76Z;Yzn_; zG%%9QbkBFv@|X<1_!lpVDm8k=U^hOMmcA^LTZT`~IX#`(TvuQ35ST5IPX(q|3=j4< zs|UP*TE4R@tvjq4%&iz48R%Xvp8~^`rh!~~>9$PQwT5a{W>jCw4W;p5R;S2}FDu_V zpuTrpa}uF7QTDntKH=8y;B$EDePBzvv%4FtAXYOZlaDu2N0DI#w8)oWa7!8=bL+yl zC}T9mBQ@G0pA*#GFaSQVrw4&%o!N}Bs4^U$2Na`dsTOCm89c}~I1q|9Fw}?7$6<h> zOlQu4Mx9ywKPpyEjV=}dKG-naIW&~%ZtLtDF@r)2e5!M}cW1hP1fOXe>Kk={>dS8H z?a4W!vf+zQ&*5v&g>P>*y|v4ck7EuFcV~v-#BK1u{01L7;#;YJvH`L}K1}KK%*W^9 zV77F3XRb4?eA?Nc?i|3U@j$v1A0v#~t!bbeU;Ew}YPTlUkzT!a&1E8vQ7@g&3~cWm z9vpDGMusymHa?^`l0oDQ<AZ{Ds%J<-&)BMY6x?=h=o}uv1AxNAsDgM<ALvW#Hytuc zL3lZfudFxym#<yH09rHB*Qcow{K_lx1@}Y4gI%Cq+nipX>FgFitw3;#{HZ~F^i<gc z7n|fu?k^u4yw>R*NFx&QS<7BCMAKT1z*y=LLAD?SvUqZ7u%{<2mXfGy>D)rvE7V79 z^WrYO7QZOa57}4rb#8Ui_^Nt|b>#(`*vzG+!w8eid`FDieEHh-EufR>yk0)q+619Z zOzLSdsGJ6ox-;qv@ST?Ri<d6HV)5$LYnP_itZhj*t!Zj$TD-bx<ML$^Z!#?x%WoQ_ zGyOw3IA2fBbPlsge}vO9Nn;s8Vi|r!60w6%-VP3@yL-3ew-MCmsiE=kFlKCL?*LTK zs2@wnF6~5?5OPMQiB&Ntf~>E{7;5R@zyKb^gBR9kdL*%Ev%&Uw=&QdIX6@<MsRVB6 z@62AS9{Nn<L$?JC7H>g-lYw@_+Gctoy=Jf#ld&1|d0Fo;M#Kk!3pkKiJh)_d@Y>8k zs+V~Mvr}1W>EO_4^N!A;H4;6B1EW@3B85j-b6WN8%ub1r;oh!o^7-V>VFW)?tIBTc zGnf?elM$;C3XGdp{b}hId~`Y62hSU8^yoAyay8?l;No~S^PGOnr3|OQ(rvwc-6@25 zCY#kAv#@>|v2raY+rW^MZd#k(F$@!6UP?-A*@p1yZkCV#ioC;_e)v$5#rEE;nJ|jO zvflnI$aN&^h*QZzrj<?<qE*ZANCxR0pL++bHr5I(0V(Y_Wv)m(*gS>^>CNRjx1dwH zEi=4jFl(ko&+y=`%z(2484~G0eXbedklQ7nGFB6!wR!paWy@D6$z-9E01eZH;i{(g zkkVhzWrmiv3zEG=JNk)nQ?Lut&oX=rJ%c<7=g_sHVEeM=OV?vOcvM*(zs;7z=dROT z+pbN^k7*bt>qiFUF<|zz<5?@phtS)4GdqkWVWV8<wIYI^^jeL!&SAZ-NW@&xIncQ^ z)4gP*r-xHMI<=$Ix+{%DXP#gM%f-W6)2YtkY(}kMiwC-~n(n}gkahG-9308P0rHb4 z%A_q#S1ez)e09rW(FL;_(;w@O1V<+#Ms>0Jm~Pr~OC*WGbYYIv5wK=(U>81buDp-$ zFpysrm#;j~mO~`=JDI*n7B|tm8u@o*NXIa&jbGsCbJQxC&g|^c3st`^HuUq<NWWOj z@N*>Eq+5IY)W_JdhQJqyXYfF7V<^e;t;0#nZXBkE8_)tP(@ADT&4B6FuM_~QfzIL4 zo^a+b#%$UK8G5^PZ-kR92k0&9j&UFw@)`Xl5-Vys+KHcw0ZB@IGCt~5V@u^`%@ASN zG>{!a!qRI6JSwwaR|qEir^SOqxnZn6`o~J(h;C<x{<yw;p@CUWbC}&(X9(qxEU^e% zw3XK{U%oiiEQ^cS$y8Wa@$q4MEpK*YOQ$41r+cs~t!DnP#Ets84E+jiOcjKsQL0K) z=c&xsKcp-+f*;7)DnFKkfu;Dc(XI#SzGlnLbI<J*y9^Hwp>9G(k(t>qH4+>)vIUh} z?+`O(Q+BaU<l0oSMlN05l)7T=vgP0+HR$@xcCnT?P%{gE>84v{Ly20oXzOTgR=@SK z3g%P(*6wH>*dpcWYW$!~pB@QjQco85^uSseN>T^PHc85Z!^?N7Y_4l>oifAZDRUdW z@uNZN=XTI{seJu|CX3Vv{VFTsGHPZdK?EV?M@=Fo3C#g^U48f>4iKl;jr3-0plGIf zk)o|4CP5m|9JTb#_}+(1zY<+Cok?_nq&(IaA$lij&*k{`3Kc(52TB!;@y+TLE%dRZ ztDS^I97-1iqaGF+MZVGlIBj|4sb(zS%IxCER$c8t7}0&%NPoX9*Gu&mUuYIxNSrEs zmvpo&cTf=wjf!o>#qyvx{ztY!GVDSN)dVU<<2Og=j&8MFi0?#6=$_4)WiwnSF{`8( zmY{x=<f4R`A0`Jh%eQSr4T-G;O3%KG>`hpUY=O5;)==M&0Y#cK*NtQb(3KmVD>8Zo zi|kIcVIW(dvP!QM0eT7RPh%oFTY6+Wgo++(g0-VH;&xTzNaj?ca&nkG&9Fkkx=RO# z2lGNi+^@bPBb~!HuE;haE4G6vRTt!6$=xUzq6^T9rZuLjghbdrpuiX&Mz+YQKH!Ks zq~y$?+Q3)ps9dJLX$IyrG)9WZBv1rkNLkaDW4q9t!4GxiFlQsRglzD#LsE9B3UxSx zN^d)U`$<*JE$f@GDH$9<QQVh-+$y?cqoOt|T+$?a_7ACxf?u|_b;;`GDn(@RJ6}4f zOWM{B7`2dmhlmPfnXyvt?Xs5`+EN6yV1Zu|E*pAx!U`drI4a@Em*5zih&S`RWA;&M zZ!X{Y0>7u1$yf3yi*|Kl_lIg?&{;Dyx_D%#RPE^;witHJ7Io$GEqzMUrK#3*>zY+- z)^1pnUcP2o)8aLbe8UQuBI=MN7}&b1voYH`AYt6SqBqmmt#$yije|#IY{`qdPPi6@ z2FnbLkF8W*!LSA_bT*ZUQwsH~O^a;&dV04)5_}oWj?SS0XK;IF7`u)g@TjaHTRZ!; z^u|d#sZrLn5k|RrP190Y4AN=&rlbqbgNzZwEX8M_=oGtB+iaw~g&5nZ&LkvDtj8A{ zjSP3$!VVV)GFwq4Zr4H8+_D%kqt;Owe8c+1DVgaxl;onhv8G(QV)^>ZG$C|XwZRoy zb?k;jbz8*h?5`I}Rpao4U~w}lRjo3rP?@06?HaXBz)bD$+zB4C0OqfLSfmZIKdU>3 z=D=rVRFQAJjD=j*O)yfOXkT(L>X?uV>kb58zqk`V!<v9HT5odFSi4arb@oXKkLq|A zZ12c4GJ;~w-)UE*rLcxb&M|d~B(-5S>cAD)`j|<zw0|gXp7i%&pW3-KE6IBxvqQzp znwE~#@@5^J@>M<E`ZOYM3DzUx3$d7J?Pf!FjxKu5eS>*f2wR^F_r>rlf*YGP%u!`U z<TAB2Qqi<jq?X-<d^S-srC#OK>}Nt!+h3KFWPWsJyLx-mJGS-W98JDp$-%m|6{jee zQ`_Z-?!ZeQ@T8T%rf@+TWR8&~O=U8@^FyG?w=7|kp*6-BI`UQeRSRWC7H4(NKsTTe z%^|~NbYY>f63$CktX{jg1=P#?uta5X@}xA8rN4Vnwv?hK3Pv5E+Opyo*~ei|fd8GY zzQHVxh>)myxgKE0F1vM|*kr0Yc59=uqh6Nr-BW5Il}~cw%cqpXv09r|F}g;eBvwaY z^|lVhtTej{eDDr6*>F~l`@+(cdaHvOn<18?($H5#0{NXmXdbTB8?YhJWuyvC<l2ml zA-n3Jdc$cE);_5WCAYL-O29%oAr5zA4{XddEU8tmTnJ<cD3!Y$HK}aIfib*{h7<ue z%bs2@SXix0Ww;TggK~<F%cTmP?nH>HMHW)1{UJg%lBV>8NiSZ~lwP{_iqztkCa#Gv zuR1~y@0%>Fz{M@gWd|wogLPX@YOxf7rd6%A%2>*G2)Fz~Ned^b3(?Z0mje`V5*{)? zka%-?zpgh{>85P+$d;Vi9$>vd;fIu$9?<8CX_R-ehN1YE9AwfYMCw;3aoR}w7)0&W z6!T@0{e%V*YnPxR!#-VmL}R4Ng|qYtmpaIigCHE#uEo(xYIK9%aHUl$Gsf0&VN$6I z2r0SL+@n8Cvqg@Zh?9^|Q3rRc(@Bb<`L(Iqu2rf^9b|HHs|>44?9h$c-77M=u5D5< zA^Y^`9sP(cNlgry_?7_b?;O5XO@r`!P^lw{$drbiTl&<I5td~f4`}n4J%l;MmxV?h zV4G~9X%t2)BivF*k2u&cCXlbPQ!Ybt>%#i4%p^_;YgvhWOdI5h>qdHUf+xX+gH0rM zT@Ru=wnu%cK1RxclsKvx>`xELxBjWwAq7s?c9B`?5xr|h2Q^32z51vb^8%Y)Epd}n zbu>Q~$I!OS)TnG&I!Zycr0FvC>FRntKG=vUu;0ovL>NcV4+#rN1t(Y_#*%?`GMZu` zsk(n+Qn^ZqaGKmJ&}1rbWxKDwyiglR@69vH8Bk9`Un``eSB^FG5v^p4!2#S)fE==` zFlL9%hh?vz=CBGaF||(gO7UxVsFMX9aAu#)@MR4_@l*#j&BRbrB%-KeL9T8$C`UG} zQ6~`8M7c{cjhdx8qxTN<sQHP+g>nqLZA4*ahY9^FI!%(35>Vlc0t&XNQLlh9#c<@D z8J2CBiAco0d~JY(k~wcyU~NFDYZ3>Jy|u_XK9I-a2NC*0kwZk3!PsZ0RKr4EpFQen z&7<WNvQfxx>%`#)oFdA=b#^X>0hq;>s#hvK(Z%e&x!&U(6ZgQRFht;UADoumiaNhp zyng-Sj`ZSGQ~vZayzJ4mwu_p9>Zn?6CQN!ZMh6L2YMc_v&j*K5EhEYN!eWI3r}HJ0 zv<KDPmROLKDYr7x8*x5}fsxY(<;c660j`eQm*M81n1j0k$7H9hY{X@;#!2n=-oX)b zLr!j3?dY_}>C5%)C)tb}7l&zDicCpkVY)^Ut8ZmOVSH66=A)Wf%t{XG#rbmff)#x$ zrc-7Z1%rHDg(IW(iZGFSL-q~Sa9QuxUY!iZ+*th8cYflgQG{OKl9Qx(IUKHcxr&<W zC_(@SCVGm=@v{zUwX->QzTOYpGj*A(OV+Mk4eP5fr9|Lio1k~da$F63cjqYXp>9LA z)bk6XL<?Bq(6+W|nc6JwKux17e31yQloX7h%3^y8&*|vJUPbQiDsLIj>QzJT9;2F7 z=>pxwQ0AVZ#BDUSffw>p7~rtR8Wf4D;?;`dMu4$CuG!5H?qdv^({v1=DjJbef=ch8 zOh}oVS(=p*CF%pLX5p=^@H<bsvf141{;u9RSUV96`pmRdvK4hl!8f23M|8)_a<#Ik zIU1(k7Jg@|u8!0JmY(8fk&wWG9vDClXtcoiRUx(3%5q{7u3Ap@Roq47H|C;OY@5eG zT#G6idaHyg9$tF+;`N|bb2zgjGJA0|NZ(sFo?M)jsfybNYq2iCOgrQzZU)IymD<7r zuGFU*dZG#Ub*)WHSE>DQ23J+;7WDeXP0eyZo8Feei3(;$R*tfUaXN$gN+$`!(Bw4D zQJ??oN?o6xs-rm-)Ox`c3*=Y#;r6o|#@}Xc>8cxIX=GrOj(sEj1K6cT##RZ+T5vdG z;>c_bZ<Xnz4P8E}+iB@uxwWP;o3<KeSQcAFEFVb4sNB>YOesgqT!%Q=CiU)8yEqf6 zOU*&&WtklBPP5#=3L?h|vUgD#GE(0_Kzt=Fbiy&0b_vRkErXrI-A(8*JUoJ(mMnvE zax`MXz%Gk&)QNAHMrOvXaa4-%j4W3mMT*0u()N?di%mT6;l4z&Hj*6!!qf#Nj*j(O zE0LXEh6-<k+>VqSAa$8iK4N90(0*IBt6h<P76m8maz&l#VyoVR#4KSg2WLiaxdqX? z1$NM}qaSS;>5@C6LfO^XwT&i<-fMzTJWMguF-%6d*4naS0S;qu6L+w$o295WH0OmL zFQS8)N8%++YU6Vpua!JiR|hOA>TJPi=0Q}JrTXix&D@7<`THp(V!02iVn!0RY^3C- z5Cj_<#JycPv%)E#Ifl?&)bvp=h%dFhS!Nz1&?*`!mMK?hJ!QF)+iqq!91nC|3(Lwq zQFG@_AH&SYV5rXI0G%}<x^lyWGEA)$SjwfI!RXPVT@S7w53!?0p5kbcidjw$5Ud!c zc?9>4v_eRp`5MCWJ?d0Q^OVA48J=U1oA8=5)KN19-{}kssc^h(O>6zqd2gz}u;JW> zx%IRAb0Y(pg~&n~+}c93bGU2ULVW$#><iATpS`ty_S$pnXZP&D^E=z|o@!c(SCzQ1 zLJgownLRSF1Adr|``vw+EG{aO%|_0_3_v+M8!;kTj2EO(*v88c6BoLAB5kd<-WqqM z<!~4CK_ykSvaDUQa{1D5nUbKvGYDphR)H4oOAs2UOk~2#!YK~XR#fXm<V>8Wv1Vuq zF&$^>Q2{CNwRN$nvrl%QUeE@%HxDJp;06qCLwEPjJy*8ucytUsO)Y_w<fS-EQj#hG zu(4X*)Y5|DT&HHU0788FTCG4#bG-E;r|~M3c{H_Fr(hFQID1k>gv>0Je!)GxM9v1) z1Qbo=6c101=|ayOh=mieOVU%PJTT?-N@~QJT91^gntv)Y+~13Y!tg>(BAHTO<l-jx z(@dI@WkS~@dj9b~488&#-Hz!O8RjT^YI8PpNv_l7kW_5Y%`UI$rmX|mJw*y+742f{ z%NMVfXDXU-6lZSk>T@&63R?6PBRL$_ajPK}xRc(lLOPNZVYszjSY(HBY#+&o@yFO8 zA<B{7E|tt9bT$?x$E@h=%QDHJmY6RL@dOgoG<W*cqOG!>ib9Ag3uIU#GDy_yhQM%x zP8(Q<=Lrw}h!twO)asV?*rE>OCnL;RiNvYwHo}eS(r`Kmby#F$*C2)lf2_@Fomcm| zLjqLc19@dQs@X_?UUX#nRTe>#)<vfYTs48V5B7H3=We9blV>gwl;-J5IfB&FO?FM` zHOu6n4+k3J+}1VCO_!}%zD&st%Qmf1kF?-1tB6>UoB1lwfx9fIQgE0@(bP>f@R%PF zULJ=T##yx5V5mu}jtk64T7G%#RLenA%Wol|?!a>z_HGJXiyfOx8yxqG%%Bx60;}7? ziY4~_X^f6BGq@pS#23V{Ousy<*-<65rE_@44OvPam=xCb*%v#OwUoMyLnc)(ub8h> z5FZUOxj|MI#YeVH!eU@Br;mrFw>~8$=Vj)gRLg>sM(k7Y7*{t|0L4P~ZgTC|ro7pf zz>ru&FzH3WrKW(?_m@QikzIHiYD9G?oxa;n>3B>nZEO^A&f>_8I2}b<N9w$E=T3do zYiX!hXjHQm#A=TnLo?0=Byx1QhB^S+>f2pb6jiv1j1fn->U(!0L#Pd-M~<UcFK?&7 zHqNLUCZQZ$$vl<`Ml|xTLhH1?W)PytV}LSptL(vqU(|Suvu&7ZDKHX}%a*U9Uob(M z?M#MzY7UBUcIGI5D#lT3h6rU^?#+=lB;Dj2aD_go)pN?xRTXv$IE&gDogilLWf{3+ z#>cCpN{BO}YA9pjmN<>q%(?7jdT@Y_X9Yz{T{#F1jVFhL23AX48uMI{<|jkxOk1iO zPLe(0{&|*Gn2J`Y6v$g1Q;>r^9V3{~eP_utObZvhA@X^UE%2Tr<rpl3GG$=?+_?*0 zS6MbNI6I5t73CKm=fUBQ{GJX9DqW?G3=9wU_07f!z>w5sSV3^KgLP@PUQ4sHvH9Ls zuYT`noF6knzplQKZefd62EPTOS_|`jCW$n2<ac^z>$C0I#uE72LR}C!>8&)*p!$&@ zWCq;$MloaY`0*3DlPZr|$XS!c;}IKmcO#OTWy(rjo!Och)|Nf*4Ux<8d&SwF9bNe( zFn+jj$?q74Eq$lH$e1`n#t}njAD--vTorF+<;g`Of|1Wj;2%Ea^H8;X)(1ZoZ{8Em z+%dxE;#ZmFU&5I;MwssjXa3kT=K60f-P|$VquA@klQnjUd3T)@!Q;%}u5%T^<1H#h z@DVc%s5tU{HJT?-#fB8ze8Wh7&0GFqSc25Wb=o=%?_2B`Z5)Hzfl6~I_PWe)Uloo* zaLA%I5!_)>DT2>h)TTmNHWeFE<Jj-lwttG?NmiFl1W&i96v5C4n+i29G4Rig3ttLd zxzKoGne|9&qX9cZR7pMDRfbh2WJz$$qBc?3<yMbP^w<|d)DAP?Eq34nJ@Cz?;XiyV zj{i}N0W+pd2f{fkM~Yx*fHsP@$jXr-NQWYV3Z-phd`+>^w$&PNL5QM#TSFA>I~<}4 zHE+AsT>V%`6>6>_^|`<Zk_y+Dm<pVio?M0NoQSJqc(!Q*&|k0`^lVdq@?o3CAU)f3 zCF$dFNqSn2S%CBrRTP-OcWvM^S@LUs>KFa&^+=04f5<qw%$fKVe~c|!0@z3WvA7*H zmR8tltOM+y-7&WQF2p7hV{H8<#Fi(<*rMIQp)z4JFJm59NX8azsbyg68WV)Tf-hUU zLo8%qi&h6M<YnvLkQSq{MbCitTYf?Q2Nv?uD~v^8VKcTEj=+L1TlAo&wf-@HOji1b zGtYI3C4+d+cx1=@$%u)2lz94-9%1CgtxtN|pH?LOYeg`vLq2i45MNZk!ng)mTvKh? zxSkqIEg7r8{*Od%+)8>h+K5pJ?CXrtxHZ9{WZcCqsbz@UQ6h{M`;<-dZE*#PlmH1Q zJ~vAGs(=!*U=|h166aWSSm{Q`#lw>(KGradi-3fgmnu2V|8#&*&j0C9i0dQnr4AcR z%0&W+XF#ChJ*7m(PxP8TrR+>buQlC^aJNek$KcX{;CP)2#p|(V@hKFSPwYmy_J?+( zyQp>%yGc*Sp)RHDMn<pKZfYry@c+#*EThG(b8L2q>cS0^>$H+(w=MZvg);h2;)l}3 ztq>oZR*3c&xEK$e^5PscHr`)~+fWK_?%=dDjNB9qs5r+Wt`+t-;s-$F-!0}H#vtg~ z0_tVAwII3aZtQ-*c5fk=#4iWPKX4=%<=FBX9N%j>t|Le`uG2y=%5hx@j#`Y@dZi{G zv*WHOxX5bKMsV1m%AA+o^<!*Zf*(hae@OELa|Wde*{a3QF&ILEUoj|6$W~XmB_ucn zKg=!vG$C8>HCPNy@R>Y9w*C?l5=`P3wL^|<U2L%6NN{Z)AzQbHgakjEN66NfLPCO% z<PowpX_6KQLlZpNptRO((fuIQJ;GO=x59Q5dfE7x-jux|eK^xNOmKu}S-++T&bDNG zstK<(IL|rwt6g+89VGk+(-(@6jkAp@gpe=|uL#+o-Gz|wM@?r%$Oi2$goJ5$MM!(o zj0zbwl)%PTaWvZFneoqNg2>o}{m_gAX(iX$Oz`%QiXdkLs0h-O!k;iL2{M8VW+5ZI z+=k(1f;6L$5vHZUEp8{E;^x3FB&k!lD1JQqyb`ewVd^HQbcCr}F+GLuSQHhyW6@OT z;;ITRs*}KWYT1%!D%6*M#U>Opp=dxKf7c`-!BGR+TX2-3rc(129O3gVZm62@GJ|uS z_1`t%3sqs)KN^^EF6{Kx@U?iD|FsmGWR;jZMwrUrT$AA2tX|Fc8<6_BPBX!~BdQYq zyupDPL28elq1qZU?u%>{{#uIv+2nC?0by#Ha2m(rY6@;VJ*kw?#kI0=8oyxL{o_O} z=cLF<_*Gj6qzHz=y~AN}bLu9X9S-4Q(>R<2I~+~|<|rAKFsH8YBg`ZvbcDkRw8P;9 zI>pA>4u^1)!6DoKY!@4&5kmSPoI*RC!YQ<)z^ZzSMfB)6*8OHA`w@O3v@Stf&vnuS zpS6`!iXim{71d@`07Y^5jxSA9iF!Qo?um#;n4`SzB*}rz`<urxOBhYBKULlynOKD1 zYwM^K!H*bJ;2ga1`ry=Rw$EXTbPgW4o{jyH#6tKzQ9?GDbtD`K(+3E%1J}olpmsv} zxLf{8cG(=U3*q;Kb|FZWA?=M;|I5N8N-(0;jRjgEw)8(NjDIbCS|a)orcmQ9)|3tJ zcl?!X{p*NqgdLMuT&IH|^F3^R_w`IRO!5lJ24ks2T-{yZf&3H{QQ7(6UrFarMsz0p zOc-ATsS(t>>3TMPZEcex7>UE1Y#eg#i5UoU>M4e7yoSAQDzH~HVri|vmZd%zu@qsd zE0If>8Wz)5=#E9%Vl%;U&NI8|#dcS{j!K8`Z;TPazz^IIUM3VLL!re>e3$y;Glts{ z^NypTQ?CF%zK|2ozI-pn1BXM8xCIrx#<E}ZJuU-IWH@}2-3t{Qc*)3LHBz&Dp_K8H z1LC8j3S5i_<ot#^7U!U`@&3}L4Bs)bKzepgl$PFco;CZ(7wvwsh_j!G5tVRuoUDYi zuQtWWHRhdWiEqe>kE<)@iu2HJjdLjN?0A2ei=97N+FUa7u#uXj7Nz9517n8xV$#QX zXt%~Wly)}z-(btUR(4)gTKa@@&}=9_YThS0_<2PwV8OOP)(Fz`tgOsA_?g{fY>`Wm zW2J<1vyp>V#ZYs{8;bNi8`DFvMJ`2$Dl-|A$6Xj|$#_GNo`+_7D7MI@$WY?`<z_1I z6bpwO+@WxHQvBSbpeF+48<OMV-HF$J314Mpj*pHIIWaL7=b*7+PYub|J>LJ=q{q`n zMr&@~itHHt0;1B2#MzY+I8Ik&Sn&xar700uGhsS&TlR{rPFo4uU7A!Gs(<7~%p7M& zO~{iBh>vtvU@;zA$2f;lnhTq_6#oZGiIv`KZ1h?44t4}tT_Ud+mg~OlNwU&va|}|J zR*#ev;aH_n_Ej(E8xTE1WE={KTH=?&c1TpP_KD%%VJP2Y-l4uKPX1!r6LbvXH=s4% zpzT{R9xx1wlQ;*BwH+fsTm~r3&iHK@^{<E><jU=a%RiWRN=d1wAA|I99*`5oNt}bm znql(Z*#CV73sKp*uC(-dEYPSor00iS2wrPZn+OgWl-vqw9b@YwAtAv}<PoyvnLQG2 z2og*hl;+6RCqlxwz{T5CqtS}eLa^7O+6Yo`8MMW!aYsl<kb-MMwtgBC5~SdokgZd! z8f^skMf7bMW9uU!Awilzb1bfPh^79QThZ1LOj*=sf>Hg~S^YmA5)!1wBE-5ewkB9< zHxs1BnvgB(P-OAeEGYK%W@y=W5vC7N@N(cstb_#{o`mx*bCLZpCofnXTF63$l%A9P zLP4qK7BDPQdF#U@iuVUA-ey|hy3kbg^*Ba>jE3HE$dnO=(up9)dCg$s=$eoMFv7r* zAZ5~o)>H(PP!x!xV-go?xru|2V~KnJj&q99^c-uU6hVqzM8IM`fRw*6mVd>1AVu(1 ziz-;rJg3bJ&Jjz+Od%y==F0^!lPF+Vq~J|BOU$Soz0|0Mlo<6Z1*5tJ42z6PSK?T} zjQ(3|_*R17FlRDw8o_@sD2a^LF}9wzgslXJ&0VaL4i6;|s8EU)N-@_mZzK4gh!ibj zY~33Y5~P4SklFfyC2S!$--_Et@M?q7ec9>{2?<iw60^lBTBzeX>Uh*jbQM7gD_qxE zOFv@?*Ae9KMLw@!V%<pagz@mJ=3TNY;i;ByiXhF3Y)$a4kc!|ZEow6*{<A>|f5Nm? zsnqXMI9dcx){q~41Qfxa*ij3fwh(1qbNLoab`=GoAB$Lvj$&^{8>SCIGSsdnPeu#~ z338ayF~L#D5)*~|*m<0}LxC=|8m0*LSd^9KO*Uv#1j8{3ESPZOM5QxQoDv!7y+txo zoUBMjN;oY>a4JxG)Ho$ZeP5AL<77of6`x;k#(kSLT#Dd3EvjI(kV*7@bNOELPKjw; zMm_P2FuoV#0bSlb7H6Q4?8SGP-Ej#pzv6w1OgZ6@nx*+{Ht*Ok5PXY4N$?hb+%9b> zMs4R5L3YMT*fu>v{%iGdx;@LhV_bsE465|Fj>GOJ+U_j`$;Nfo5sY#y{+Qn>hR=nT zUy2|*m(s*>UYMzMac$>Tf|D((oghUYPd#!hv)x+=k_`+-Fv_vGdil10!PV^x%nATj z1lQY0-$by(ptQVfz1<SF5<JnSmrVpuwWwBtM=WX+!LM0VE5ZBhacjYI)A_ovRj5-7 zbz+i?ByegWI<<_kHEeZiAxK5gmmn3vIz;d+`=me{!Sl^Ao*sd%9R>?_1aHVAWGmFa zATLv6zEkr_)|=}HhMG4Mq^=^@I;;6it3WeBimVCQqSSa~hag4PglvTh6g=BQ!Sml2 z8Sy);8YzPJThvC1&zO_jYKM*6SSYy8#y=QTjg730ara5j26K6hB})-xY=Rj<#-{Y7 znjf$ZO%eQC8@e0wHPkJcduIMQml?%6&AV_W{1&Tp2f<qmYLYYLoO@c<IVBi%P8vI4 zu;JdS<5LDj!{v7<GsZd2hI>b$2|H-QKZR7q)cLX*DrDC3l<D!D?OE(VFoBNp7kR|1 z&>VA%m?IT8hvy8r)(TV|TS9`gf}*3mUo&!Jl_2<SgYul~_Kvafhmfw&NGYoNJFDut zLc0~5N<{5Qchk47(|)%ZGIVG=L8>%CML^Cug))7^3eZlF)4|dfO4c5ggm4(3=f$Rn zgeT`mx1BN_1X<=xa;}Sn=a3<MYuJI{yA3M8!^aJl(+<yRaJIeO%r+5(;zr)Xka7w| zpIb!qb#c+*dUvc);&pL}6<wjA>k0)ee6CXqOgnNg_<g5QoMr*4aEPKVQ!MqfuXvU4 zQ6Z$Kmo?BeCPu>CId_ak4s+YwF~W~okF^o3GS94_Vjwuhpgd<}?-(0=SQB&vPc(G0 z9X#E@vn{(6!FiS)CiReM<jlMDCH$D}o908lmq(tGBm7~zvb7O>$e=uD``$4&9tr8< zYn_bB$or6uz`0{TGVre>IKnBr2wX*w_rbCD6ATy0lHV~P-qXtk-SUsdEg}~ELW5$i zj3?FER;mtyZ?dQq!7hvHAh<n55xm)=QUtm3dCsU?WPXYog~PUUjOz?TncN(N95EGa z7{`EPjp||^q&L4}Jm@-C#<-hiVGz%=K|E*!v7<0@ismWB^l{Vehqim`IVJ`#vaz`C zlLmaiqFVV$g*q#A!L2k8Kf`;8;mbLMTlMwt)9Q>ZGF=DEd-Ph|0L6G=A9}Qai9#0k zmY)Q6tTaokwi^giKpe$TuBBGB4FoA_kpmmop)G%ExI>@+b(hgKE>TEL%LmYA#5tiL zVhbrJItQH*=ah-nZZT@QkLd_fJXl%^$02=#@vX>l9pqs966^DV`pLDO87m^%btOe( z7%|(8Zy-`L=t>(XPC34T7`glu6Qua|cm^VU(u4yI#P$puCPfUy&YULW87LkjufIKH zp22w{d?tust9|zJDuVYIlx&$=$JqM4C2S?g2UI2M&9ej<^RD}{bvS&|fZ#(GbrnHA z=BfL#<=e+Lt|B<ipfn*{S^M$zs|b!7l;`Yr$Jn^KS{qRJX6ri!i<*ESKjo?k+4|%Z z-5p93yxM%jh~a2jkJ|4Yxr*Sg@(9^FRBJgB{0D>59NAh@X9)@R8k8nv>kU&aA;Ct2 z(u8acg@gq68We0+HO9uHAsxYA<}qYz@-#a#!8(J|BeOLtB-B0rJFkrEXKY-z5M<cm zc$y#|vBuE|!3%8^ZX(E-6>(d}*!q|yY$5o#4a`jh8BDq_TZ|`+OOU~&3E3L9{@q0I zClUX)jIl+hLOFtWN8Hge#@5%Y-!>7Xr}WTly%-V_{I5KYY|*P2njl@OIkFWx_!!T~ zN(Dfnlh+kGxs6W#m`zjb2-34CZ3)t?BJw)x<lC*2*AaZgI=PJ?-KzVt^=_L#+6dCE znvkuN?QCx&_}0j5UpL0q4jT<^1nGaxku8P*^dm_BYeKd@Z=Kvmkp9<%Y%v7Dks$rA z3E5%@fRG^luL;=-qv17A42#79W8fopqOT`-m34SCLB@iJu--0U{M;Z82MID9G$DiH zE*l2T1i2V#Lbj4NIGPD^G17!=y=<4JX2#2#ZM-xS<hN$&zKoauvdc&_K}LusWa}?B zu$l>;7s(#$$JnB$V2DEZG#4{}F&tgOxrj{=L4KYJPiYd2x}@E@<e#nY+6mGLqFcM2 znIEz)X(vcSVi1DNt`LPFt*F_t6<Q!oke1MdY=vQ)j@!T-gN11O>E00KIDcybc9+pq zw#9_sWwlQcq`6RB&|<8tq$gp1wim~U1R2WcNfWZJlAeSay68!e??OhH7L6E}(J5rK zBMToPi&Z^B#<GVI3NnKKVuDr32s1uGMvw)KkP)WGKz0mn3Z0=H_ABF%7i}g<5u9NC z(MoN)?Bq)kyw0Lp3EpB*cxv|P-E2H)>DCeannks;r2DS1gX$W}sv&bCrjN@U*N7L2 znIg!r0hizJj{8s{;~rDUFBo|!j6%{IG_yj+4Xu!IakYVY_kiMZSAi~17nAMj-9==3 zdN*aeC2Anbw#no*#WNlk3Ry(pr*{_$%<rXSx{x@FQ+W<&1F3PR{O2Ezlc8NmiBA-~ zu)Bbx<J6c<1iy#|d(D3@wb#Vg4;t#z&3h$w)7zaB#@Xu|Le5#Rf29<AY}RAcSj>wk z2h<)DFAQ-c5r)pw#!WyGq_g0UpB0#1qNI?WofhPQ-B?@{iL(7MLEw-L9|4}yaA@L> zg$Ev5#wRG^95goGU!;%A08!a_9O=o4TgL~D?O`{9%st5DOrSrtiQ_7Qzp$tx7Mf@Z zlPX)F6f9qE;%PJV6_!)MF>f)V0#2SoPNC$-L{u;wjFb48k?MueFa#-R!r5(#Ct6dz zCrIa5g;E3~U1#KV(v1Y^s>7}XBVFr@btPSW*p*<U>siIRl5TF;m0+an++tlxcWKy_ zV5IAUg06`;6#_3#ROXPy)s}mKuaX5sr6yY;W${Thp@1W1KwLJ@dDO_n(-RDPm(2b6 zzd}k3JIO0Z#*$CSlamVr6C7ur*%8&9tW{=t=6VOi65MVJix$>DH--6<;2jp#Lh!!m z;>QNF420x5$R$uMeO9a(z_TUtfq(>yu<WwC&lEw9Qp7EK(JvgKg%Xkn&Oiu~T~VRM zD<3l2Q%VLHd6EI~F@06p6z8EsFV3NOKx(Dp9H0TaQ<Gy=%6BF>We`gkvpix6$1sjh zJu1g~h_xi?8M^W55Eq+#DEn&}&)ln+0Es2MBbysa&gh2mK97$cnjIR?Xf>7_U{+8X z%Yu)(YAjn!I>2H<rry+3)3QaafyLBji@IxCwirg5FG~d4L({TF>u6fGSQ2a6c!{a8 z@gOWyH<)NMdK<+86{AD(s0YEwJ|WIdwO#HFdBP=SE8z!hvPtbWK6$%&FIL@3C_3XZ z{HkTR{umiLXPN=$nfJiS;*pS(#@G%wtIdT9vNMT_OHHZ;R=2{UKpr-5oiCXp=xOtg zV)$c!qldM7$^nz@qSrocPRov(_vp2_)H0*>yyj>;Ez~;zwkQKiYz7sF)`T3C=W`m% z7DXvqp*NXBrp@LZ^1jMjs&RRxP5M?tZ*~>DO-FP`{^e4e4#)YHA^cG|em(76Y<$xH zAb$XkPxKG-FP9#Fg((WJH1E*A?ruGB!J_XtErx2Nd4G*PRRZp1digg~fgq(mBb5hJ ziD!a{__)%=cxeB|IcRLWzvGOW74b&%4i)by?P5~zHPo-6B5tJ{1$g=bMau6jlmZzo zPFY-F*LlQn<WV&Qeyo(hh15mD+;#Sv>BvKEu>4c$y=|Pj2uo2gWwh)z@5s*t|J9)6 zV6gBxb6q0{NsFP|X5J-j5$-cMlw1Uj$jDD^CP<z8EmhkC27ER|8OXkcBZp(Z%UqSQ z2_LpBQUu9eo*5_ny+~KWkB40e(i+8*vMOsFj$1^*`z*h<!XXOI9DK`)GO~s-Z0uVh zrCzr!fdR_!er)2!drEt*xnub@^NtuH_^f%v9;NJKMZWu{7`NgaTgcIwt~=q7li-vY z8YO|)GRD>=1`9%h*W?khbz?|K@TNRMw!R+{5^Od4>7m)Wj~^^>(gZ)3N66OwAt6Cp zOmi$|ph9!6qjA_7<~~|rZqLcY991k<k<QgWvgA8v=--*{_gg=w2-4`n@qS~be=^Dy z8^sI~Q;+hUXM8L@3Ab6lrwDRTWD0`xwDgSoS8#OYB@x*O(|ce?a3n%Tc)#^oir^O` zWQ3`GiM%Q);djQ4QzPoqc+VOmiqL;B@OhD8K5SqPCv-7us@)WRCc|*Q!Ms;EyPahH zY03IC&OL36$Q!M7*AaYkG5W$G$e!dfFJu2iSCWkwuAVboJ;nxyMB<2bHO;>>y&ke+ zroL^!S3?wS@x#zVh3p=W^_${sUl5#He|wp>i4^0n-6`R0H`P&;HqIJl#bY-Fr_KoQ z$p5KN7lb?z#<7fEr17FBHieW(<9N<CI=H|vbc|z>=u0@?H1=VLmL4`viD9oTHf)@( z$gm>c-x%rcHSfqN1R3|^d}vZQn6po4+Dfoq@c37}4AIy0>kFoFoCGBPfeFEzEou|N z+YCzcW$VF^kl<JI2-*61NT^4Py_$1_LYZ19({9V*DvtiC5Jm7a28E}R_KtDz??jPo zgc21T9y-o6(_@8sPdc|Hn{O+-?b(8`H3UW-_M^}do1Seb;ZlO3N}CH++Dw)1w;fXi zzhqFJv&Xesh6=GtwKjI0*`^1-IHSa8576UyLwSBUEIajts8IukDij&?`-W&7$*hP9 zs5i|wns=Cw;KdfzMsSfuwGzD4pmdb7)np0V2wq`PtpwNP^)-#WH_Gy+u=Aw`To$4X zWZxuY=9w0IvO>Mo;5jz&25sMp@zAwvoI~-7RvZzR0mfzLaipgRL**KJt9eIng7;fg zGeLeWqxJ(^kA{R~%Xbwi>Lq80ZZYq&loP(wGDs2pv_);=Fy9DK1ix)jC6?6348e0D zA;C`j%MQ&1`zo~DrITzSzZUX~b}sy!tDZ7#W=sw!Mj$-f436XVH3lThA}8)lSWg(m z{>{7#M+;jGQwakuv4d<X9HihuJwAZoI2?w;Mg{M;!)$)ufUj6oir@)$<jrRpFx0pp z$v94PfepCBW^Cczbtq6o2;cOKj2P)+K);|T=V-h;@yEhL&(b)D;&WHl^8cRnNc%>` z@Jk*GeCHPsl~SaTvbexy1sumIW9m&j&JHIY!3KlUvy81(At6ELrqa_<`=oHJmSSVI zjB%{X?N}`Y*ICqhg3;j%Cp5#MaPW1-2480fUus8MM=&~4;m`884&`2Ny5h|17k6m^ z3aVqrxzJEuVcrusdmr!LXUs>Ner(>c1Q2}2ptJ|rdNCv<_+NR1Y)!GMwh}zfpkB+T z__iIxlCt0~8$k*pOj^d+`kfW4g&+mdgltt=v04a5#VYM<v0|ZE>xzlB&WiOPR;+ad zDTs)*Zj7zzR;+adqhb{c498_>+853vIAdH>V?nZ=X$6>=V6=0gL86^0D{f#BjCL** zyI3ryj?>s7^A0r#-fvLydk%!ZZg4mOdf|FDzHq$eA%ukg$>0<r8@(rogoM9iaEg$P z3+qEd!gm{-B4lI9tdLMcd9Ql$Hz=xlvsJZ);Cn5qjY=&r3Sh5E@L7Y>LCw}5Lc(Od z9_m!{t_klqtuN<c6Grk{^R8)i|L`^8eBX$+(9lT%5MI|%F{&aTF?5CcfZ-RaoTAF# zu~tYC<mg2f9M8R@kX4~%aZK1IZ<_ZtE!}#8?hHbLS%cEn+i6<g3<(Jio}~LCdOmgo z8}Bwq-J30XQIWEd?^3qtT1Cpnm+SRVnk!rMw<2XD-}!9O)kTguSbgdd92*^+cCR@F zX)qzAxi}RCN0>7a;=XV_8=Q(lNSHHG5wbxIgfRZklXE0Ivl-U73<Sr_Bnk14##|{l z`m)`)4bRaNyvn*ayLXHYx*2qF-vSl)Ay9E&0d@W?Eq|y{;q>E~wxTpTP#2s*)f?1l zHc_MqGKYwE@kkR~Jfs8{j~&5j8H>FxHiK?6??U}P13zU2YB{N1ccxLWARWutAS*T~ zXXhq64^spge??+jIAu(a;jkycu;-@2F@J1Sp+RBxI8nkfXWXMMFL549F-VEJd~vaZ zNz#R~wZ(^Zotum<w_2TwD4-tniF`8y<NuSkQ;Hy`0gl26{?bxyBFISqDuP)%Z#EUq zhcsPJzoTQ}d`QRVLy_}%*&Vu0p=fRAnDN7T*><T}{aeg?>0mD8x9JkY?=q`bieNZI zF<Xm|R1#9oGSEpUYS*1^-pieJw<R~JGfJW^F_$Kyu;(@6s*Dg7__3H9c#%kIp41m_ z`&EJt_;|5yL_TdUhTVvH#axL>Lfm9y%REVlq`^a$G(GcAUblEq<Xw!1N8Uwk%-4D? z^y=njW8{AGj;TyA^y+5X?;c|aP!Xh!@YQxS$@9h}KoNY!qEZBD0Z_&D28!A~QLmN4 zhy<CEK~+Lwa~xmdszQ&W_jj!+HWMtfdT%7iV1r-;ry45t9Y<^&Z@ab-JUL1?j%mMU zyKW}<xJ9LC?OJQv%?z$bENUacUl<e$hgYv>gRX!M1pm`^wO%<;uMLTB;Uf5HgHqhs z2vb>V9Pj<na@$NWbZEgcqRJNi1IG}e!Fc8jV+F}ygwGBwLy&m@s~@e*2`N2kEe4|C z;*lsgDnl^^r!A8A${(%HLw>|a{7D;ADS|(@sH+Gvwi3<-W6VkqhI$cv%%V0i2+FM6 zQUsZUaH>j8ziX+kBFIoc2oU6)#m{EO%>iD|)N2K44eW>WG*%7QqT(qB5p&}WmmAfY zVHA=sVnR_!>PH_bWLzqRjC)BTtr!N7M`I#uQT#I63^9s`FI4FsW8?cqZpE7oIt}Kc z3g0jeQgm#DUhANW)J_e;2IsTtOwSEi&#foOnT@X-BKVx4Lf4yaU?X&A2SHA9H3Y4B zNxe1)^dQLTjv)ws&QPf#*a&BS2i@?WA>EBPXvXo^UB;TXns<aCLCz73a?cGkj1y{i zPXWt>4LMFZ`h|5T*>GMEPZQHP#M4L&J>qFEDouP`z0wlF-CrMzi=&WnSrjrZh(gAt zP{_ClViTH!CWS9KG&2QIg*|_5yyBQxmYnq3R4|73(Ks2}t`p~n)g(?Q;(p2u$6SY? zAo#^F?G^T9zmTZySco>qi4qRy-vSeEIE8lJugMAwAn4-^-MQvn&Y=mv$>4C#7avHT zq{h=5CultP5ez04+su%}uQUu9D8v`xj_pk$e{8Mhxntyhxv?m)bKNnvIHsnJkEm(m z<H-^o=Za-F-nsbF>6J7?T%^+K7V^;I$2n+hT>OMXI_}<z?zHC4(jB=iLvY49jn|%U zE+(82hw#HQH4={&|7<j1t9rJ^dh#?b8~@l4C1vaUIT2De78#`G%2sQXl#NMqqg>gV zZLmrJHm=Ph)!oK_U1TmNoSZ}W;|V+91ET?3{B3&~u!W6zlcJ<-t&7Ok!bU_ka2;PN zbC8PZah*f>{bv10I5#+i$x~!1Qsjh#957(Q8FmP>GhA@f_2UY3y6wHwAsp#__xQaZ zvb{$g!jazh6z|Okou4wjk)Q~&GuGY%yUgXhx8IxA%jR7Y9$|Kd){hl)1N)M$<RE|M zkk&6lwsK=<4DxERLD-jcB?sXc^3ES<s)!6oct^RW#7A-+!i-S}@tM(ptxuT`O$cR? zc?-(DW)ePQ-i7ja27WbyTVbM{N(kMt{`-T8x38M-W|POI2+uOQ;M+sqX>!kLW)cV) z;YDU?kP2)U8%&Zo&bVjS?PaIp=SI)gGQDixg$3be^S}}AW*jvjO`^CmgZ;$hHHBPh zOu+P{kZjO)G74?Qj3u~ZvkxtCvbkd^Jzp^EaILK|(gdelOYC*WE;JMLkLF$a5<cD7 z03ts<I^Q(*nRl3*Anl{**l0dS3oi_5t$(uyOcVTrL3s{@VP2=r6vOds@R|Qz-Sr2@ zRbA&R%Q&uUgAB&jG!86;xX>nB*%n|2{*Ww7M#Pe~viUW|Jg;`2q_y`KZ{K3AA;bgI z)HG#KYG_0t*d!FpbZDG}h6xF&hA9~jq^&b;r%VG=Pm^YtDQz5z!3in!+;_ikwR`tn z$<1^+)18sNchCLKx##{m@9leU??o-IsMm4_4>#0nS!p}G=yGFaIj~*b)pmF-5@)V3 znbNI1{3S#YkKVJd<+lEOKFP}c@ai<KIG3r%&@)O=R__dTdS&u6va)emUHZ<_<l57# zk{>>OLGq%*Re1MlxYB5ZvU`x%p^cpG6zz|Q_A1e4&X>VBUo-BWib^2o&ycqqJ=$1; zUFXKU`77U=%RqDo&XY^zcEh2ihf+*`7V_0bzI2n$UA*D&p|*|kcj%MMe-OM2RZ0jg zG-mSz+^K1we`9|ulMKeV-;l5?v{)`VYPqQxooBiOa+mYW{|I;v=b6o|+uhES@iZpv ze9n`zACqj2sc379kic$t)rR?;sPh$04kxp-a1wasGoR62)=8w^9j(JIlC&cVFe<dE zy?=yZ|6O34D*cl+6WY|+zoN<JCVio`2##!?(j;ERUtz4mIk>aoT+CxC%XxQZ|Gd{# ztqv$f%iJ-I4N^}pFu9f>|GfDp7qhdVxyL6NoH){(uP!vX4&k*p*RW&$qu@Cv5wrgT zG`EvvaDvR|Bssh1CXudC>m(w9lf+dU=5vC~S2#JGBQlBN3n!sr5;>cl98M;uQ4%;r z&sT>!?C9J&C^;ml<(w5C$86|om=!#xvdoI33(pE({iiTI<;yM)IS$2(<25F(#|RM~ z4|$y!@i^;wMHdOL#FZTTBogvUj#q7w(EffI30oVA5_<m=2;>el4+rs@gMJf&&d*(v z?^B<FPjeUF`xLvEO&IqU1&ekeyN2_gVTI`e8rn6+na^{)W5zQ3(+h?bGS~<*X^t%v zRu~WHJk#$k5N?>ybG*ZOW^-`}ceo*gp=3Vi$tlc*8(q=Xa6<yaiK{D^&tW@X;p8xy zNMwjFoCJ=w`Hb38gx%p9dvkIhhdH2p=iniy_y4b%K81>KdjFrybk1eQ1BpiQS1H#c z4s+{beIJC!RF-&rs`VBHZ-u?WzJn$1O-(WJJ{&wi0r(w2iir>6;EO==T=pM^ox{Lm zz@Gy<5O25x4$C24i~JtoZs0*6c|?1I$rA|M+)9!>BKK#U=38vhb3CPX1IZ&^58g1a z2fP~{e0%3U+T~_Cv`g&AeH9x=AphHChWQ$hdc<Ae**FC`c|^*O<9qQ^L}W(yYmn{- zJ_Y<5kambaMmhgm_TGcN@4&zRsXyF`We@Zh@;?CYE=PH+Cz18+wEBhZ$aWiXv{(19 z8B4#aK7Z-49Ob_cJlpb*p?v;CY$1PN1poU$yF9iF@hSN8GH~&7lXEeUJR<quK1+VE z!f4v~S;$YFYw~{qWI4o#!L#u>$jKvem9BNLcQ5b(hyCA%{BDak<KR>NZ^)<L?dQ>h zW?T>XCg1?@Ey`CK{%+tj@GpQ|^6?qmU2e9n)Hv+y1r~v!W&b+Zv-Q6M-k$@>qdzu( zdxw$S1Uz8*ZS$wVyBAmnpL#a`8{oYFq#x9?`EP>vE|BZZZbUgJfow-xAJ>lRYGm{P z`)wl9>w#y>{~Y)>{xRf7fX@JbU?GxqpdFWforr_uIFA$UACcR9?g7aC1dri7%JVdL z+~c-{AH{h!={UdAP8aM@kJ~|Vqd0DaX7Au;`^W93=oj@~K>6IIi@RfT+bM4KW!vL6 zP24()TOd*2#m}5$a&kcKqC}j6oc6eX647P<LFhdR{1))Lz?Xq1fZTeC$W4{F6_f4% zWw>v)4#-WAh#Mj2CQ7z`9{Ie}z)jtbLe3qDzK%5aFyhWfwmn%eGWsk6a@!!{3dp%< zk*%M^d5*XNY5tJV=JS`UHYObB|1QXF<nK~#`&??B>md^P#r6rr@uNU4lF0QQZF|?^ zJUj#B@~T``-Cobp)+e89LoUSslM9T6M}YQ<rwi%ZYf&!5XT6S~eq2YBD`?vFVSX9$ zp12=rZZ&ZNX<Ogs@%-_h;4i`XVg-=vn6E*aE0yy+W7}svxTd7Nprp;`DvzJQ^-MRA zYeU+6u0EQ;^+yeU4PiVHxyC5R6_@t2?Qv!6t<WE|?6~+pM!9bQ-vrux7w>KG&j5ev z(0B0`!_TF_<v_c97jG5#oxrsYeHZUC@Gl2`+@bH{b%VbNc&$U<#oG%0LjC39ahwo2 zUhMXB>AUzGZ$E^8TxHrd{<xYb*A2B74duo_PpmSYarsa#6l(js7T2+t0K0+L0DFM_ zK&}z`DWr#iw*hVY4?+Go@LAxufwRDufLsIg6{P<L$TdW5`yWLdx*T{7a0`%YfD#8G zPXW2=C)WriGH%-Cu^%VUU&Q;7=6Qw-c-r~_cy|Kt2A-|Hy~)5r<#8NwiBjTfoUiET zPmz8b$n`vl7h*iw^%(&FCg2|6?LaO$$^}Y^JkQ$p&ejjENNVf<!)hbpvTU=RCjCB8 z;YFSV@KPYxn6vG1{Wjw5YYbxw$c5xso~{1~c%3MpD=khV&9&ROCYi0zwbh8P!rp7Z zlfXBCZv%f0wCx?l3rzf#^>L(M1={>wc;jRY$R8FSK-%WdK;DrsIhO<Z8wkD+%Ac*; z`utG=e~>bb$L#zy%FP!W4VQh}-Z<Wr;VbTEV2`gZ)7~lArN6WA+qU-w*n1TC81TzL z`yFzY*8%&sJ-+MxF7)36@?CP9e--?{257%Y%-4unFI%7QrQHDin}K|p*XGZc)<2lu z6m#FYU0xUEeeFhly*2M_EPt`$_l0KuIcj^%bxymIFH4A<&HN9k=~($vHG{a&%$F}e ziAISzZdc1xB3AzEs^_ve{&JOym9J2*-51A~i_z&g`FZNdV{!5hRX!XiU#Skh5GOxh zO~=YFP&2XeRch)l<Lq3h)NGu5wMx7gCtss_UXGJ9_%`RYGZ;6EWt7ARqjvswy@eki zjM^0^Q?o+5V{*0gXEP0SeLHBe`q>8!qUcb6{aPf?Y3+X3Uo*7)fHfX2fqd4IUoG-B zHP>#sJpCDvzcv}<c0U$GuI<-ff7WFA)a0*CwT_1wk;nP}q{y|Mj*rQKeAc4im*iN> zyVgZw^@ouEqa?MT2hhKGoS=RL{_JlWK38JgBzoG;^c6;aFYbT871>#>PX3jV?>3+o z3%^aRRz2DQ`Aiy6=R!UU`ANi&L?mCMcEg_p_}#RF@p%~hVUfqR!)+qhe$MKSkWV7| zuhc|jXN@{&)wc}(N$`{4AAr1LlMy@&`TdX|gZyWZ&qVgmRl6TG0$h%&r^w%I<h&0w z3wgQ6$oCjfe+~JmAtQJe_YGf%ykpeJ-&$hu-$fqR4kC_~zbhGSszV+4Q={MbKhDlM zQG2(>u}+aMlHCgJczBV>+f-|u>5k+w9?<?Qw+C`N{tQL(*7$a#$QP;BIDf0i&zF8r zbQ{ZGLc8Te&c0xo8t;<!i<93O*=b~&;|Cmeo^bG=cko|v@PFu#zvHl@p9?2i-BcYS zkE_?k4tcjj-Y4>yQ?I(o!JiQMN{J`a*8IBD!N1QTpK-{a6uIu-@-3#)e9Pb&2mi&0 z-`YSwb@2boAz!vQzMa>JJg$9uL>|}v!w&hb$d1I-UgIl&fOEUU{=ML*&<?x|ddR_l zTI7k=W>ES$L7boe?2w;v$d{ZGZ|4G$Um8>H?}&V*oEMH9H<?Ey9_f#M4x#(EtIwpr zw#?v&!~Sg!c?otp&^`zU>h~c(_PfSz!hkyDu=9jN{+vVpl0*KwLw?F3Z*#<@6%KjA zA>S<WxbeBm!OuD5`Z<U0my<oF!BS|q&pY^s9rAC&P8Y`cF4#E{$&qM)Hyw7~bI8w? z=Ol6Uz0@He5P97AA9ctl9CH1<F3!$F4*BB_`BxqCmmKmRIOPB0kiRAJxb|5g7k)8c z$<!qxkK^|^<hP1Et{tWv{4Y58-*oW5=ivXHgZ~o;|2>C%iCj|Xaee~vfpJ4+g0K=+ z$H$WymGuLEB3B9hzzYjrCSNN073F!^k~fhrjivKmHY^1dFI}BdnNp#g_d`FM+|+ed zS3JoZ&lPiCItbD=&o72SO^pZXg70Okg+fhK8d9Dx!zOAbTj<(YC}pd8Upy<8YhJ3> z9|T_CWI9*upUU{<Fjp#8`qI^kud=1;Sl$<drGi(kmB#j{NZs>;pcJTFF>K08mvi3U zeR-*9a{X0Tb!}Frn5;jp#y3boL8%(%isGj~UNI6w@Ctr7S;|(VxQth4dZwu8zZx$E zVURA02Yx0Lzbk&|Wz%6=Rnm7v2FVcP>3qJFsiy<K9Oy(LEgIrUu@puGaq-G4uU45! zKeN|M7qil+Q(iV#@QW2)|GIug*!6@In-0Uso_5EZKss_VIlftU*uZG-P`}qdyw&q0 zwQcwYum3s-uiHARqRvy^w(TQZdbfKc0|PtycX~T}w`}j%^qoU}b=7R8<V}iad0%;3 zZyD|#8thY1f2ve%P<N|o8tJ~Nj5k;)OA|>)O1~8Rf;igKvu*p}mOgJoazpY;QK|Q> zx5E!j_g0GKKss?ehU(pz&R2b7&z~wcFgEKEX7s$w<lecQjmd5)X2>si1A#9-dlQ9H z(W`{%Ae5#^)%w!qii|pMXRYi@@`hqAQ_A{6E){l!;>Uz`Qbyu%No<s4R2QO-nk%4Q zkI01a&C??|8Z*74qrJCyy{SQYF~2qv4HR$K-=_<X=F}7m9@*is;uy}BHv`dVQQibb zou~V{GA^@M8q1#$+!y3RUmP148QnSBJM3)|3)@S@39q-J0TrR0!JR`g^cVu9i**3l znU<L)jZ_JPj10|~mK?4Y#-ywUgCm(tH3<By*caQ{tA=`xOQScp)xd_iM(@+(TuEVh zzu3(3w0p76rE0ywgqKPO6@O<{qEc@$`zgP+uN25sZK|(ijNIV|<M~q5+~{Z1_yhTp zR4?jt&&y1u_4rTcbNek{>oqb|6Wki&PO66Hi0n!696o)eqO_lCtZQ%O#!@bul6jgb z$>@-o7?~5Lp(yTo+x&2AE)$Aihktw3FJ^o#8Vvn{i1ZK~^(zvQ^(aLHZ}W?Okjn_G zSI>Vl=SHi=Py&V-h^d;cqc>RDQ5_4-2#*9&%~Q24wa~A`jdcl3x;5&vvtig(LNn0h zL{YRyoAz?R4>OaEl`x&Gn?hGl&vRX;`sDJqRCD=kG_f0N7FDTEY8hC)m8i;kq^2cQ z%0TtT)4BZIAnMi=PG)V<7bDfES+#f4{d1L)ftM*XMiB`~bMq@O4QWm**0j>5QaVbZ z(X}(Vv1(Xv_Nb~`{d`kZ>m}<(*cqfV{+Ku)Il2`mh<e{f(Mm#U6hRS4%|OvbO7VSp zKdt*5qo*(M)1kisnPMMpCoSX(i<MC3e=yf%I+D#*zf_5-xmZJVj*AT({d2)n=HLz) zM-65<e3}|mx+-cgjCbSuO}TJVDk`Ura%o?Kmz#B^C7utNQ>vU-GUeJ_{(2qn8P&yL zs-)wiZmFmUJ^vf0rS_E*Qza|4LYN*C3<HCcJd!iCpPVRGlVf_gej=AuQED<>nN-Pa zttgrXWg<p75_<GGyD8yGUf}1`S^-Dpe5jK8dPpVZFga0@gV3Ln|N44LNTukCBI!@! z3TiSdMwl|Hh$N8)kEMikA(xTjOQE(b&gm<Y<XEMml5#yKmlRs&k5wl`C0(45i$5fD z#qko4(_>?Se+N@}xlrP<Gz<^*l?`-Zso|^7uXL!FC6!Bjxi@A$e2zoB403{eop1W+ z`=0N7@Ii_CyKz9g6>Pap5`E+{y6K~Dhw4|ws6UGXVi^j$T>X`w`kivDKRxoNZBw7m zkBA?Z?|qFQ+%~9-u9Kq=8vN&TCgQVT(tnmi)Qc3o-=JUr@`Eoy)6m!cYa8?*VwIHx zokx3oZbe+GGv&kbsn7ZsB~MefXp(&Re2dtL`fGi;yIL=w`cop)ZBlQhge3GQ5&ds@ z(gJr(ru?tSU!#5^VY2FIDe$`<@or0>&((;mudzDkKjnX5>GL@Z@pC>k4YFKH@3-`M zUz&*5%1Dpex}K1OL(pgc)t~2~<B#YEK@A_f{6{2Dw;%QS+>iME23>t<HK%%7WR3cK zK1f_u?^t7q?PgL+eM1hkiyU8kj(G5ycs})s`f;ItHHZ3qPBnd&`mcztc9HsgE;$4J zle%*9VZB){+wmUB(-i9S`Q_ACwU$x`4b=ZrpZNEZ)2OdzK|N+L!H$8Ldc@a7-l)&# z5s9xupG4><fP^2(fu_)ZKIiCp-Y{+^5ty*jZ%A5~-(|_E|67(^bM=R)pF{CD%D}%p zD1W+97{?XmIQ?HhzwoVQ12%WLLw_PP%nw=f$JW>TuGunOV(}g$-Tuk>%U=h5yZxU3 zj?sVI%3xW<_0VrFMXBG@57^}MrLQ#SP><4U9r|ac&A>abhD?LDzD`?1G$KwNHPSA; zH+P9h2j!2$k?~({U)9H6q=<h<pELRwX+p!tE??gR<k)SXsqf7ieg5K;dA9z41Ge|j As{jB1 literal 0 HcmV?d00001 diff --git a/csst_ifs_sim/ifs_so/cdm03bidir.cpython-37m-x86_64-linux-gnu.so b/csst_ifs_sim/ifs_so/cdm03bidir.cpython-37m-x86_64-linux-gnu.so new file mode 100644 index 0000000000000000000000000000000000000000..a63494c33d3e3f2c0dd42085e549d38415c682c6 GIT binary patch literal 192640 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 UcKbTLx%8{QGx~406s)59A8mFehyVZp literal 0 HcmV?d00001 diff --git a/csst_ifs_sim/ifs_so/cdm03bidir.cpython-38-x86_64-linux-gnu.so b/csst_ifs_sim/ifs_so/cdm03bidir.cpython-38-x86_64-linux-gnu.so new file mode 100644 index 0000000000000000000000000000000000000000..4ddf6dd453c91a1ed8b3448956bc127596d748f8 GIT binary patch literal 203248 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 literal 0 HcmV?d00001 diff --git a/csst_ifs_sim/support/IFSinstrumentModel.py b/csst_ifs_sim/support/IFSinstrumentModel.py new file mode 100644 index 0000000..52550f9 --- /dev/null +++ b/csst_ifs_sim/support/IFSinstrumentModel.py @@ -0,0 +1,55 @@ +""" +VIS Instrument Model +==================== + +The file provides a function that returns VIS related information such as pixel +size, dark current, gain, zeropoint, and sky background. + +:requires: NumPy +:requires: numexpr + +:version: 0.7 +""" + +# import datetime, math +# import numpy as np +# import numexpr as ne + + +def IFSinformation(): + """ + Returns a dictionary describing VIS. The following information is provided (id: value - reference):: + + + + :return: instrument model parameters + :rtype: dict + """ + + ######################################################################################################### + #out = dict(readnoise=4, pixel_size=0.1, dark=0.0008333, fullwellcapacity=90000, bluesize=4000, redsize=6000, readtime=300.) + out=dict() + out.update({'dob' : 0, 'rdose' : 8.0e9, + 'parallelTrapfile' : 'cdm_euclid_parallel.dat', 'serialTrapfile' : 'cdm_euclid_serial.dat', + 'beta_s' : 0.6, 'beta_p': 0.6, 'fwc' : 90000, 'vth' : 1.168e7, 't' : 20.48e-3, 'vg' : 6.e-11, + 'st' : 5.0e-6, 'sfwc' : 730000., 'svg' : 1.0e-10}) + return out + + +def CCDnonLinearityModel(data, beta=6e-7): + """ + + The non-linearity is modelled based on the results presented. + :param data: data to which the non-linearity model is being applied to + :type data: ndarray + + :return: input data after conversion with the non-linearity model + :rtype: float or ndarray + """ + out = data-beta*data**2 + + return out + + +if __name__ == '__main__': + print('IFSinstrument') diff --git a/csst_ifs_sim/support/__init__.py b/csst_ifs_sim/support/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/csst_ifs_sim/support/cosmicrays.py b/csst_ifs_sim/support/cosmicrays.py new file mode 100644 index 0000000..e6c7464 --- /dev/null +++ b/csst_ifs_sim/support/cosmicrays.py @@ -0,0 +1,424 @@ +""" +Cosmic Rays +=========== + +This simple class can be used to include cosmic ray events to an image. +By default the cosmic ray events are drawn from distributions describing +the length and energy of the events. Such distributions can be generated +for example using Stardust code (http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=04636917). +The energy of the cosmic ray events can also be set to constant for +testing purposes. The class can be used to draw a single cosmic ray +event or up to a covering fraction. + +:requires: NumPy +:requires: SciPy + +:version: 0.2 + +""" +import numpy as np +from scipy.interpolate import InterpolatedUnivariateSpline + + +class cosmicrays(): + """ + Cosmic ray generation class. Can either draw events from distributions or + set the energy of the events to a constant. + + :param log: logger instance + :param image: image to which cosmic rays are added to (a copy is made not to change the original numpy array) + :param crInfo: column information (cosmic ray file) + :param information: cosmic ray track information (file containing track length and energy information) and + exposure time. + """ + def __init__(self, log, image, crInfo=None, information=None): + """ + Cosmic ray generation class. Can either draw events from distributions or + set the energy of the events to a constant. + + :param log: logger instance + :param image: image to which cosmic rays are added to (a copy is made not to change the original numpy array) + :param crInfo: column information (cosmic ray file) + :param information: cosmic ray track information (file containing track length and energy information) and + exposure time. + """ + #setup logger + self.log = log + + #image and size + self.image = image.copy() + self.ysize, self.xsize = self.image.shape + + #set up the information dictionary, first with defaults and then overwrite with inputs if given + self.information = (dict(cosmicraylengths='/home/yan/csst-master/data/cdf_cr_length.dat', + cosmicraydistance='/home/yan/csst-master/data/cdf_cr_total.dat', + exptime=565)) + if information is not None: + self.information.update(information) + + if crInfo is not None: + self.cr = crInfo + else: + self._readCosmicrayInformation() + + + def _readCosmicrayInformation(self): + self.log.info('Reading in cosmic ray information from %s and %s' % (self.information['cosmicraylengths'], + self.information['cosmicraydistance'])) + #read in the information from the files + crLengths = np.loadtxt(self.information['cosmicraylengths']) + crDists = np.loadtxt(self.information['cosmicraydistance']) + + #set up the cosmic ray information dictionary + self.cr = dict(cr_u=crLengths[:, 0], cr_cdf=crLengths[:, 1], cr_cdfn=np.shape(crLengths)[0], + cr_v=crDists[:, 0], cr_cde=crDists[:, 1], cr_cden=np.shape(crDists)[0]) + + return self.cr + + + def _cosmicRayIntercepts(self, lum, x0, y0, l, phi): + """ + Derive cosmic ray streak intercept points. + + :param lum: luminosities of the cosmic ray tracks + :param x0: central positions of the cosmic ray tracks in x-direction + :param y0: central positions of the cosmic ray tracks in y-direction + :param l: lengths of the cosmic ray tracks + :param phi: orientation angles of the cosmic ray tracks + + :return: cosmic ray map (image) + :rtype: nd-array + """ + #create empty array + crImage = np.zeros((self.ysize, self.xsize), dtype=np.float64) + + #x and y shifts + dx = l * np.cos(phi) / 2. + dy = l * np.sin(phi) / 2. + mskdx = np.abs(dx) < 1e-8 + mskdy = np.abs(dy) < 1e-8 + dx[mskdx] = 0. + dy[mskdy] = 0. + + #pixels in x-direction + ilo = np.round(x0.copy() - dx) + msk = ilo < 0. + ilo[msk] = 0 + ilo = ilo.astype(np.int) + + ihi = 1 + np.round(x0.copy() + dx) + msk = ihi > self.xsize + ihi[msk] = self.xsize + ihi = ihi.astype(np.int) + + #pixels in y-directions + jlo = np.round(y0.copy() - dy) + msk = jlo < 0. + jlo[msk] = 0 + jlo = jlo.astype(np.int) + + jhi = 1 + np.round(y0.copy() + dy) + msk = jhi > self.ysize + jhi[msk] = self.ysize + jhi = jhi.astype(np.int) + + #loop over the individual events + for i, luminosity in enumerate(lum): + n = 0 # count the intercepts + + u = [] + x = [] + y = [] + + #Compute X intercepts on the pixel grid + if ilo[i] < ihi[i]: + for xcoord in range(ilo[i], ihi[i]): + ok = (xcoord - x0[i]) / dx[i] + if np.abs(ok) <= 0.5: + n += 1 + u.append(ok) + x.append(xcoord) + y.append(y0[i] + ok * dy[i]) + else: + for xcoord in range(ihi[i], ilo[i]): + ok = (xcoord - x0[i]) / dx[i] + if np.abs(ok) <= 0.5: + n += 1 + u.append(ok) + x.append(xcoord) + y.append(y0[i] + ok * dy[i]) + + #Compute Y intercepts on the pixel grid + if jlo[i] < jhi[i]: + for ycoord in range(jlo[i], jhi[i]): + ok = (ycoord - y0[i]) / dy[i] + if np.abs(ok) <= 0.5: + n += 1 + u.append(ok) + x.append(x0[i] + ok * dx[i]) + y.append(ycoord) + else: + for ycoord in range(jhi[i], jlo[i]): + ok = (ycoord - y0[i]) / dy[i] + if np.abs(ok) <= 0.5: + n += 1 + u.append(ok) + x.append(x0[i] + ok * dx[i]) + y.append(ycoord) + + #check if no intercepts were found + if n < 1: + xc = int(np.floor(x0[i])) + yc = int(np.floor(y0[i])) + crImage[yc, xc] += luminosity + + #Find the arguments that sort the intersections along the track + u = np.asarray(u) + x = np.asarray(x) + y = np.asarray(y) + + args = np.argsort(u) + + u = u[args] + x = x[args] + y = y[args] + + #Decide which cell each interval traverses, and the path length + for i in range(1, n - 1): + w = u[i + 1] - u[i] + cx = int(1 + np.floor((x[i + 1] + x[i]) / 2.)) + cy = int(1 + np.floor((y[i + 1] + y[i]) / 2.)) + + if 0 <= cx < self.xsize and 0 <= cy < self.ysize: + crImage[cy, cx] += (w * luminosity) + + return crImage + + + def _drawCosmicRays(self, limit=None): + """ + Add cosmic rays to the arrays based on a power-law intensity distribution for tracks. + + Cosmic ray properties (such as location and angle) are chosen from random Uniform distribution. + """ + #estimate the number of cosmics + cr_n = self.xsize * self.ysize * 0.014 / 43.263316 * 2. + #scale with exposure time, the above numbers are for the nominal 565s exposure + cr_n *= (self.information['exptime'] / 565.0) + + #assume a power-law intensity distribution for tracks + fit = dict(cr_lo=1.0e3, cr_hi=1.0e5, cr_q=2.0e0) + fit['q1'] = 1.0e0 - fit['cr_q'] + fit['en1'] = fit['cr_lo'] ** fit['q1'] + fit['en2'] = fit['cr_hi'] ** fit['q1'] + + #pseudo-random numbers taken from a uniform distribution between 0 and 1 + np.random.seed() + luck = np.random.rand(int(np.floor(cr_n))) + + #draw the length of the tracks + if self.cr['cr_cdfn'] > 1: + ius = InterpolatedUnivariateSpline(self.cr['cr_cdf'], self.cr['cr_u']) + self.cr['cr_l'] = ius(luck) + else: + self.cr['cr_l'] = np.sqrt(1.0 - luck ** 2) / luck + + #draw the energy of the tracks + if self.cr['cr_cden'] > 1: + ius = InterpolatedUnivariateSpline(self.cr['cr_cde'], self.cr['cr_v']) + self.cr['cr_e'] = ius(luck) + else: + np.random.seed() + self.cr['cr_e'] = (fit['en1'] + (fit['en2'] - fit['en1']) * + np.random.rand(int(np.floor(cr_n)))) ** (1.0 / fit['q1']) + + #Choose the properties such as positions and an angle from a random Uniform dist + np.random.seed() + cr_x = self.xsize * np.random.rand(int(np.floor(cr_n))) + + np.random.seed() + cr_y = self.ysize * np.random.rand(int(np.floor(cr_n))) + + np.random.seed() + cr_phi = np.pi * np.random.rand(int(np.floor(cr_n))) + + #find the intercepts + if limit is None: + self.cosmicrayMap = self._cosmicRayIntercepts(self.cr['cr_e'], cr_x, cr_y, self.cr['cr_l'], cr_phi) + print ('Number of cosmic ray events:', len(self.cr['cr_e'])) + else: + #limit to electron levels < limit + msk = self.cr['cr_e'] < limit + print ('Number of cosmic ray events: %i / %i' % (len(self.cr['cr_e'][msk]), int(np.floor(cr_n)))) + self.cosmicrayMap = self._cosmicRayIntercepts(self.cr['cr_e'][msk], cr_x[msk], cr_y[msk], + self.cr['cr_l'][msk], cr_phi[msk]) + + #count the covering factor + area_cr = np.count_nonzero(self.cosmicrayMap) + text = 'The cosmic ray covering factor is %i pixels i.e. %.3f per cent' \ + % (area_cr, 100.*area_cr / (self.xsize*self.ysize)) + self.log.info(text) + print (text) + + + def _drawSingleEvent(self, limit=1000, cr_n=1): + """ + Generate a single cosmic ray event and include it to a cosmic ray map (self.cosmicrayMap). + + :param limit: limiting energy for the cosmic ray event + :type limit: float + :param cr_n: number of cosmic ray events to include + :type cr_n: int + + :return: None + """ + #pseudo-random numbers taken from a uniform distribution between 0 and 1 + np.random.seed() + luck = np.random.rand(cr_n) + + #draw the length of the tracks + ius = InterpolatedUnivariateSpline(self.cr['cr_cdf'], self.cr['cr_u']) + self.cr['cr_l'] = ius(luck) + + #set the energy directly to the limit + self.cr['cr_e'] = np.asarray([limit, ]*cr_n) + + #Choose the properties such as positions and an angle from a random Uniform dist + np.random.seed() + cr_x = self.xsize * np.random.rand(int(np.floor(cr_n))) + + np.random.seed() + cr_y = self.ysize * np.random.rand(int(np.floor(cr_n))) + + np.random.seed() + cr_phi = np.pi * np.random.rand(int(np.floor(cr_n))) + + #find the intercepts + self.cosmicrayMap = self._cosmicRayIntercepts(self.cr['cr_e'], cr_x, cr_y, self.cr['cr_l'], cr_phi) + + #count the covering factor + area_cr = np.count_nonzero(self.cosmicrayMap) + text = 'The cosmic ray covering factor is %i pixels i.e. %.3f per cent' \ + % (area_cr, 100.*area_cr / (self.xsize*self.ysize)) + self.log.info(text) + print( text) + + + def _drawEventsToCoveringFactor(self, coveringFraction=3.0, limit=1000, verbose=False): + """ + Generate cosmic ray events up to a covering fraction and include it to a cosmic ray map (self.cosmicrayMap). + + :param coveringFraction: covering fraction of cosmic rya events in per cent of total number of pixels + :type coveringFraction: float + :param limit: limiting energy for the cosmic ray event [None = draw from distribution] + :type limit: None or float + :param verbose: print out information to stdout + :type verbose: bool + + + :return: None + """ + self.cosmicrayMap = np.zeros((self.ysize, self.xsize)) + + #how many events to draw at once, too large number leads to exceeding the covering fraction + cr_n = int(295 * self.information['exptime'] / 565. * coveringFraction / 1.4) + + covering = 0.0 + + while covering < coveringFraction: + #pseudo-random numbers taken from a uniform distribution between 0 and 1 + np.random.seed() + luck = np.random.rand(cr_n) + + #draw the length of the tracks + ius = InterpolatedUnivariateSpline(self.cr['cr_cdf'], self.cr['cr_u']) + self.cr['cr_l'] = ius(luck) + + if limit is None: + ius = InterpolatedUnivariateSpline(self.cr['cr_cde'], self.cr['cr_v']) + self.cr['cr_e'] = ius(luck) + else: + #set the energy directly to the limit + self.cr['cr_e'] = np.asarray([limit,]) + + #Choose the properties such as positions and an angle from a random Uniform dist + np.random.seed() + cr_x = self.xsize * np.random.rand(int(np.floor(cr_n))) + + np.random.seed() + cr_y = self.ysize * np.random.rand(int(np.floor(cr_n))) + + np.random.seed() + cr_phi = np.pi * np.random.rand(int(np.floor(cr_n))) + + #find the intercepts + self.cosmicrayMap += self._cosmicRayIntercepts(self.cr['cr_e'], cr_x, cr_y, self.cr['cr_l'], cr_phi) + + #count the covering factor + area_cr = np.count_nonzero(self.cosmicrayMap) + covering = 100.*area_cr / (self.xsize*self.ysize) + + text = 'The cosmic ray covering factor is %i pixels i.e. %.3f per cent' % (area_cr, covering) + self.log.info(text) + + if verbose: + print( text) + + + def addCosmicRays(self, limit=None): + """ + Include cosmic rays to the image given. + + :return: image with cosmic rays + :rtype: ndarray + """ + self._drawCosmicRays(limit=limit) + + #paste cosmic rays + self.image += self.cosmicrayMap + + return self.image + + + def addSingleEvent(self, limit=None): + """ + Include a single cosmic ray event to the image given. + + :return: image with cosmic rays + :rtype: ndarray + """ + self._drawSingleEvent(limit=limit) + + #paste cosmic rays + self.image += self.cosmicrayMap + + return self.image + + + def addUpToFraction(self, coveringFraction, limit=None, verbose=False): + """ + Add cosmic ray events up to the covering Fraction. + + :param coveringFraction: covering fraction of cosmic rya events in per cent of total number of pixels + :type coveringFraction: float + :param limit: limiting energy for the cosmic ray event [None = draw from distribution] + :type limit: None or float + :param verbose: print out information to stdout + :type verbose: bool + + :return: image with cosmic rays + :rtype: ndarray + """ + self._drawEventsToCoveringFactor(coveringFraction, limit=limit, verbose=verbose) + + #paste cosmic rays + self.image += self.cosmicrayMap + + return self.image + + +if __name__ == "__main__": + + + print() + diff --git a/csst_ifs_sim/support/logger.py b/csst_ifs_sim/support/logger.py new file mode 100644 index 0000000..b09ef82 --- /dev/null +++ b/csst_ifs_sim/support/logger.py @@ -0,0 +1,40 @@ +""" +These functions can be used for logging information. + +.. Warning:: logger is not multiprocessing safe. + +:version: 0.3 +""" +import logging +import logging.handlers + + +def setUpLogger(log_filename, loggername='logger'): + """ + Sets up a logger. + + :param: log_filename: name of the file to save the log. + :param: loggername: name of the logger + + :return: logger instance + """ + # create logger + logger = logging.getLogger(loggername) + logger.setLevel(logging.DEBUG) + # Add the log message handler to the logger + handler = logging.handlers.RotatingFileHandler(log_filename) + #maxBytes=20, backupCount=5) + # create formatter + formatter = logging.Formatter('%(asctime)s - %(module)s - %(funcName)s - %(levelname)s - %(message)s') + # add formatter to ch + handler.setFormatter(formatter) + # add handler to logger + + if (logger.hasHandlers()): + logger.handlers.clear() + + logger.addHandler(handler) + + return logger + + diff --git a/ifs_data/__init__.py b/ifs_data/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..f65e2b3 --- /dev/null +++ b/setup.py @@ -0,0 +1,36 @@ +import setuptools + +with open("README.md", "r") as fh: + long_description = fh.read() + +setuptools.setup( + name='csst_ifs_sim', + version='2.0.0-IFS1.0.0', + author='CSST Team', + author_email='zhaojunyan@shao.ac.cn', + description='The CSST - ifs - sim', # short description + long_description=long_description, + long_description_content_type="text/markdown", + url='https://csst-tb.bao.ac.cn/', + # project_urls={ + # 'Source': 'https://csst-tb.bao.ac.cn/code/csst-l1/ifs/csst_ifs_sim', + # }, + packages=setuptools.find_packages(), + license='MIT', + classifiers=["Development Status :: 5 - Production/Stable", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3.8", + "Topic :: Scientific/Engineering :: Physics", + "Topic :: Scientific/Engineering :: Astronomy"], + package_dir={'csst_ifs_sim': 'csst_ifs_sim'}, + # include_package_data=True, + package_data={"": ["LICENSE", "README.md"], + "csst_ifs_sim": ["ifs_so/*", "ifs_data/*", "ifs_data/refs/*", "ifs_data/refs/orbit20160925/*"]}, + # install_requires=['sphinx', + # 'numpy', + # 'scipy', 'matplotlib', + # 'astropy', 'healpy', 'ccdproc', 'deepCR', 'photutils'], + python_requires='>=3.8', +) -- GitLab