From eece0082496534823134b03c5a97268ed886f6bc Mon Sep 17 00:00:00 2001 From: Felipe Lopes de Oliveira <33868364+lipelopesoliveira@users.noreply.github.com> Date: Fri, 8 Mar 2024 13:46:48 -0300 Subject: [PATCH] Automatic Bond Detection for COFs (#58) * Add automatic bond detection * Add custom user name detection * Fix column size on cif * Bump version to 0.0.8 --- build/lib/pycofbuilder/__init__.py | 2 +- .../data/__pycache__/__init__.cpython-311.pyc | Bin 0 -> 172 bytes .../data/__pycache__/topology.cpython-311.pyc | Bin 6843 -> 6840 bytes .../data/__pycache__/topology.cpython-39.pyc | Bin 0 -> 2309 bytes build/lib/pycofbuilder/framework.py | 34 +- build/lib/pycofbuilder/io_tools.py | 458 +++++++++++------- build/lib/pycofbuilder/tools.py | 62 +++ dist/pycofbuilder-0.0.7.6.tar.gz | Bin 99429 -> 0 bytes ...hl => pycofbuilder-0.0.8-py3-none-any.whl} | Bin 145370 -> 147684 bytes dist/pycofbuilder-0.0.8.tar.gz | Bin 0 -> 101062 bytes pyproject.toml | 2 +- setup.py | 2 +- src/pycofbuilder.egg-info/PKG-INFO | 2 +- src/pycofbuilder.egg-info/SOURCES.txt | 2 + src/pycofbuilder/__init__.py | 2 +- src/pycofbuilder/framework.py | 34 +- src/pycofbuilder/io_tools.py | 458 +++++++++++------- src/pycofbuilder/tools.py | 62 +++ 18 files changed, 751 insertions(+), 369 deletions(-) create mode 100644 build/lib/pycofbuilder/data/__pycache__/__init__.cpython-311.pyc create mode 100644 build/lib/pycofbuilder/data/__pycache__/topology.cpython-39.pyc delete mode 100644 dist/pycofbuilder-0.0.7.6.tar.gz rename dist/{pycofbuilder-0.0.7.6-py3-none-any.whl => pycofbuilder-0.0.8-py3-none-any.whl} (57%) create mode 100644 dist/pycofbuilder-0.0.8.tar.gz diff --git a/build/lib/pycofbuilder/__init__.py b/build/lib/pycofbuilder/__init__.py index 41a33dea..b9c040ca 100644 --- a/build/lib/pycofbuilder/__init__.py +++ b/build/lib/pycofbuilder/__init__.py @@ -43,6 +43,6 @@ __author__ = "Felipe Lopes de Oliveira" __license__ = "MIT" -__version__ = '0.0.6' +__version__ = '0.0.8' __email__ = "felipe.lopes@nano.ufrj.br" __status__ = "Development" diff --git a/build/lib/pycofbuilder/data/__pycache__/__init__.cpython-311.pyc b/build/lib/pycofbuilder/data/__pycache__/__init__.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a9b73b2c85ebaa32aade3029aadfff2be7274222 GIT binary patch literal 172 zcmZ3^%ge<81d&>=Q$h4&5CH>>P{wCAAY(d13PUi1CZpd~UGejxFInURt40|SgGVg`x<0Ol?!JOBUy literal 0 HcmV?d00001 diff --git a/build/lib/pycofbuilder/data/__pycache__/topology.cpython-311.pyc b/build/lib/pycofbuilder/data/__pycache__/topology.cpython-311.pyc index 3a6663909c4378042f9c55a9007af66f41b6e3a5..95c8d283589bf524a9b6384ccce3f653bb2c2f89 100644 GIT binary patch delta 43 xcmdmOy2F%vIWI340}yQ3^LQh7rGTKlenx(7s(xB(PG&)>en3$1<{1LYTmUQ)4d4I( delta 46 zcmdmCy4#d{IWI340}vRAKi|k*DInscpOK%Ns-KpclUb0e@19wbQJS=Qs(>;V05*vZ A5&!@I diff --git a/build/lib/pycofbuilder/data/__pycache__/topology.cpython-39.pyc b/build/lib/pycofbuilder/data/__pycache__/topology.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2926525760af1e320c5dc1721187904224621719 GIT binary patch literal 2309 zcmbtVOK%%h6u$S)j34Q^bzCK<2*Gx%04{*h(el%4g1e-+7Ue=lHOn6DXv?ii@N}!0z;{yR)}DVKgDZ-Va6dFv9-q`g1}*%Sn%{1!S_ZS*dy4Yai_&;^>AbX1 zY%EIS>IW;*LP7eakOZ3aqy0m;5aqHr>wT;DkPFmfqPH$U^ZciGmAd>me0pICH z(u_V1`?9pQdS!KGb@`)>3-2wheZ|5zF`pI>nvEMl$8B79+kVe&T=_6+^tP8)FP`7> z+u(+cC~P6n3a)P^062Z8(GPk-JMgy8Va~$aodCAl?mM)dXdY$3tndmKgClHS`&XFa zPqRG3X9hSIF=N&E9G`oLeAVXm0p3nL$1)b7c>Y1(Q-`wd3$sR<|1v8>)lht4YYyvr mi0sLOYz<=~^S4=^z~rc6j7{f(_`|GCvcta8Lw29C`~Lw;)Cp7o literal 0 HcmV?d00001 diff --git a/build/lib/pycofbuilder/framework.py b/build/lib/pycofbuilder/framework.py index 20376e51..958802de 100644 --- a/build/lib/pycofbuilder/framework.py +++ b/build/lib/pycofbuilder/framework.py @@ -33,11 +33,11 @@ rotation_matrix_from_vectors, unit_vector, angle, - get_framework_symm_text) + get_framework_symm_text, + get_bonds) # Import pycofbuilder io_tools -from pycofbuilder.io_tools import (save_json, - save_chemjson, +from pycofbuilder.io_tools import (save_chemjson, save_cif, save_xyz, save_turbomole, @@ -120,6 +120,7 @@ def __init__(self, name: str = None, **kwargs): self.symm_tol = kwargs.get('symm_tol', 0.1) self.angle_tol = kwargs.get('angle_tol', 0.5) self.dist_threshold = kwargs.get('dist_threshold', 0.8) + self.bond_threshold = kwargs.get('bond_threshold', 1.3) self.bb1_name = None self.bb2_name = None @@ -132,6 +133,7 @@ def __init__(self, name: str = None, **kwargs): self.atom_labels = [] self.cellMatrix = np.eye(3) self.cellParameters = np.array([1, 1, 1, 90, 90, 90]).astype(float) + self.bonds = [] self.lattice_sgs = None self.space_group = None @@ -368,9 +370,24 @@ def from_building_blocks(self, result = net_build_dict[net](bb1, bb2, stacking, **kwargs) + structure = Structure( + self.cellMatrix, + self.atom_types, + self.atom_pos, + coords_are_cartesian=True, + site_properties={'source': self.atom_labels} + ) + + self.bonds = get_bonds(structure, self.bond_threshold) + return result - def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, primitive=False) -> None: + def save(self, + fmt: str = 'cif', + supercell: list = [1, 1, 1], + save_dir=None, + primitive=False, + save_bonds=True) -> None: ''' Save the structure in a specif file format. @@ -392,7 +409,6 @@ def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, pri ''' save_dict = { - 'json': save_json, 'cjson': save_chemjson, 'cif': save_cif, 'xyz': save_xyz, @@ -422,6 +438,11 @@ def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, pri final_structure = structure.make_supercell(supercell, in_place=False) + if save_bonds: + bonds = get_bonds(final_structure, self.bond_threshold) + else: + bonds = [] + structure_dict = final_structure.as_dict() cell = structure_dict['lattice']['matrix'] @@ -440,7 +461,8 @@ def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, pri cell=cell, atom_types=atom_types, atom_labels=atom_labels, - atom_pos=atom_pos) + atom_pos=atom_pos, + bonds=bonds) # --------------- Net creation methods -------------------------- # diff --git a/build/lib/pycofbuilder/io_tools.py b/build/lib/pycofbuilder/io_tools.py index e0d79d2c..3cf4c8f0 100644 --- a/build/lib/pycofbuilder/io_tools.py +++ b/build/lib/pycofbuilder/io_tools.py @@ -237,28 +237,39 @@ def read_cif(path, file_name): return None -def save_xsf(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): +def save_xsf(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.xsf` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.xsf` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom label. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -290,31 +301,39 @@ def save_xsf(path: str = None, xsf_file.close() -def save_pqr(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - partial_charges: list = None, - frac_coords: bool = False): +def save_pqr(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.pqr` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.pqr` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - partial_charges: list + atom_charges : list List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -337,7 +356,7 @@ def save_pqr(path: str = None, cell[4], cell[5])) - if partial_charges is None: + if atom_charges is None: atom_line = 'ATOM {:>4} {:>2} MOL A 0 {:>8.3f}{:>8.3f}{:>8.3f} {:>15}\n' for i in range(len(atom_pos)): pqr_file.write(atom_line.format(i + 1, @@ -354,34 +373,53 @@ def save_pqr(path: str = None, atom_pos[i][0], atom_pos[i][1], atom_pos[i][2], - partial_charges[i], + atom_charges[i], atom_types[i])) + if bonds and not bond_orders: + bond_orders = [1 for i in range(len(bonds))] + + if bonds: + for i in range(len(bonds)): + for j in range(bond_orders[i]): + pqr_file.write(f'CONECT {bonds[i][0] + 1:4} {bonds[i][1] + 1:4}\n') + pqr_file.close() -def save_pdb(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): +def save_pdb(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.pdb` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.pdb` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list - Nx3 array contaning the atoms coordinates in cartesian form. + Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -414,37 +452,54 @@ def save_pdb(path: str = None, atom_pos[i][2], atom_types[i])) - pdb_file.close() + if bonds and not bond_orders: + bond_orders = [1 for i in range(len(bonds))] + + if bonds: + for i in range(len(bonds)): + for j in range(bond_orders[i]): + pdb_file.write(f'CONECT {bonds[i][0] + 1:4} {bonds[i][1] + 1:4}\n') + pdb_file.close() -def save_gjf(path: str = None, - file_name: str = None, - cell: list = None, - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False, - text: str = 'opt pm6'): +def save_gjf(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False, + header: str = 'opt pm6'): """ - Save a file in format `.gjf` on the `path`. + Save a file in format `.pqr` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.gjf` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - text : str + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. + header : str Parameters for Gaussian calculations. """ - if len(cell) == 6: cell = cellpar_to_cell(cell) @@ -457,7 +512,7 @@ def save_gjf(path: str = None, temp_file = open(os.path.join(path, file_name + '.gjf'), 'w') temp_file.write(f'%chk={file_name}.chk \n') - temp_file.write(f'# {text}\n') + temp_file.write(f'# {header}\n') temp_file.write('\n') temp_file.write(f'{file_name}\n') temp_file.write('\n') @@ -476,28 +531,39 @@ def save_gjf(path: str = None, temp_file.close() -def save_xyz(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): +def save_xyz(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.xyz` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.xyz` extention. + Name of the file. Does not neet to contain the extention. + cell : numpy array + Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. atom_types : list List of strings containing containg the N atom types + atom_label : list + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - cell : numpy array - Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ if len(cell) == 3: @@ -527,27 +593,39 @@ def save_xyz(path: str = None, temp_file.close() -def save_turbomole(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): - """Save the structure in Turbomole .coord format +def save_turbomole(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): + """ + Save the structure in Turbomole .coord format on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.coord` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ if cell.shape == (3, 3): @@ -575,29 +653,39 @@ def save_turbomole(path: str = None, temp_file.write('$end\n') -def save_vasp(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): - """Save the structure in VASP .vasp format +def save_vasp(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): + """ + Save the structure in VASP .vasp format on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.vasp` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - coords_are_cartesian : bool - If True, the coordinates are in cartesian coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ if cell.shape == 6: @@ -634,15 +722,19 @@ def save_vasp(path: str = None, atom_types[i])) -def save_qe(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False, - calc_type: str = 'scf'): - ''' +def save_qe(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False, + calc_type: str = 'scf', + kspacing: float = 0.3): + """ Save the structure in Quantum Espresso .pwscf format. The `input_dict` can be used to specify the input parameters for the @@ -657,20 +749,28 @@ def save_qe(path: str = None, Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.pwscf` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom labels. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. frac_coords : bool If True, the coordinates are in fractional coordinates. calc_type : str - Type of pw.x calculation. Can be 'scf', 'nscf', 'bands', and 'vc-relax'. - ''' + Type of calculation. Can be 'scf', 'vc-relax', 'relax', 'md', 'vc-md', 'vc-tddft', 'tddft'. + kspacing : float + Kpoints spacing in 1/Angstrom. + """ if len(cell) == 6: cell_matrix = cellpar_to_cell(cell) @@ -721,7 +821,7 @@ def save_qe(path: str = None, # If the kpoints grid is not specified, calculate it automatically if 'k_points' not in input_dict.keys(): if 'kspacing' not in input_dict.keys(): - input_dict['kspacing'] = 0.3 + input_dict['kspacing'] = kspacing input_dict['kpoints'] = get_kgrid(cell_matrix, input_dict['kspacing']) with open(os.path.join(path, file_name + '.pwscf'), 'w') as f: @@ -809,68 +909,38 @@ def convert_cif_2_qe(out_path, file_name): k_dist=0.3) -def save_json(path, file_name, cell, atom_types, atom_pos, atom_labels, frac_coords=False): +def save_chemjson(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + frac_coords=False): """ Save a file in format `.json` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.cif` extention. - atom_label : list - List of strings containing containg the N atom partial charges. - atom_pos : list - Nx3 array contaning the atoms coordinates. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. - """ - - file_name = file_name.split('.')[0] - - cof_json = create_COF_json(file_name) - - if len(cell) == 3: - cell_par = cell_to_cellpar(np.array(cell)).tolist() - cell_matrix = np.array(cell).astype(float).tolist() - - if len(cell) == 6: - cell_par = np.array(cell).astype(float).tolist() - cell_matrix = cellpar_to_cell(cell_par).tolist() - - cof_json['system']['geo_opt'] = False - - cof_json['geometry']['cell_matrix'] = cell_matrix - cof_json['geometry']['cell_parameters'] = cell_par - cof_json['geometry']['atom_labels'] = list(atom_types) - cof_json['geometry']['atom_pos'] = list(atom_pos) - - write_json(path, file_name, cof_json) - - -def save_chemjson(path, - file_name, - cell, - atom_types, - atom_pos, - atom_labels, - frac_coords=False): - """ - Save a file in format `.json` on the `path`. - - Parameters - ---------- - path : str - Path to the file. - file_name : str - Name of the file. Does not neet to contain the `.cif` extention. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - cell : numpy array - Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -887,18 +957,20 @@ def save_chemjson(path, AtomTypes=atom_types, AtomPositions=atom_pos, AtomLabels=atom_labels, - CartesianPositions=not frac_coords) + CartesianPositions=not frac_coords, + BondIndexes=bonds) write_json(path, file_name, chemJSON) -def save_cif(path, - file_name, - cell, - atom_types, - atom_pos, - atom_labels=None, - partial_charges=False, +def save_cif(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, frac_coords=False): """ Save a file in format `.cif` on the `path`. @@ -906,15 +978,23 @@ def save_cif(path, Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.cif` extention. + Name of the file. Does not neet to contain the extention. + cell : numpy array + Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - cell : numpy array - Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -932,7 +1012,7 @@ def save_cif(path, _audit_creation_date {date.today().strftime("%Y-%d-%m")} _audit_creation_method pyCOFBuilder -_audit_author_name 'Felipe Lopes de Oliveira' +_audit_author_name '{os.getlogin()}' _chemical_name_common '{file_name}' _cell_length_a {a:>10.6f} @@ -956,7 +1036,7 @@ def save_cif(path, _atom_site_fract_z """ - if partial_charges is not False: + if atom_charges: cif_text += ' _atom_site_charge\n' if frac_coords is False: @@ -966,22 +1046,33 @@ def save_cif(path, for i in range(len(atom_pos)): u, v, w = atom_pos[i][0], atom_pos[i][1], atom_pos[i][2] - if partial_charges is not False: - cif_text += '{:<7} {} {:>15.9f} {:>15.9f} {:>15.9f} {:>10.5f}\n'.format( + if atom_charges: + atom_labels[i] = f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}" + cif_text += '{:<15} {} {:>15.9f} {:>15.9f} {:>15.9f} {:>10.5f}\n'.format( f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}", atom_types[i], u, v, w, - partial_charges[i]) + atom_charges[i]) else: - cif_text += '{:<7} {} {:>15.9f} {:>15.9f} {:>15.9f}\n'.format( + atom_labels[i] = f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}" + cif_text += '{:<15} {} {:>15.9f} {:>15.9f} {:>15.9f}\n'.format( f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}", atom_types[i], u, v, w) + if bonds: + cif_text += '\nloop_\n' + cif_text += '_geom_bond_atom_site_label_1\n' + cif_text += '_geom_bond_atom_site_label_2\n' + cif_text += '_geom_bond_distance\n' + + for bond in bonds: + cif_text += f'{atom_labels[bond[0]]:10} {atom_labels[bond[1]]:10} {bond[2]:.5f}\n' + # Write cif_text to file cif_file = open(os.path.join(path, file_name + '.cif'), 'w') cif_file.write(cif_text) @@ -1189,10 +1280,10 @@ def create_structure_CJSON(StructureName: str, CellParameters: list = None, CellMatrix: list = None, AtomTypes: list = None, + AtomLabels: list = [], AtomPositions: list = None, CartesianPositions: bool = False, - AtomLabels: list = [], - Bonds: list = [], + BondIndexes: list = [], BondOrders: list = [], PartialCharges: dict = {}, ) -> dict: @@ -1208,11 +1299,20 @@ def create_structure_CJSON(StructureName: str, List with the cell parameters. CellMatrix : list List with the cell matrix. Optional + AtomTypes : list + List with the atom types. AtomLabels : list List with the atom labels. AtomPositions : list List with the atom positions. - + CartesianPositions : bool + If True, the coordinates are in cartesian coordinates. + BondIndexes : list + List with the bonds indexes and bond length. + BondOrders : list + List with the bond orders. + PartialCharges : dict + Dictionary with the partial charges. """ chemJSON = create_empty_CJSON() @@ -1252,10 +1352,16 @@ def create_structure_CJSON(StructureName: str, CartPosition = np.array([np.dot(V_cart, atom) for atom in AtomPositions]).flatten().tolist() chemJSON['atoms']['coords']['3d'] = CartPosition - chemJSON['atoms']['PartialCharges'] = PartialCharges + if PartialCharges != {}: + chemJSON['atoms']['PartialCharges'] = PartialCharges + + bond_indexes = [[i[0], i[1]] for i in BondIndexes] + bond_indexes = [item for row in bond_indexes for item in row] + + bond_orders = BondOrders if BondOrders != [] else [1] * len(bond_indexes) - chemJSON['bonds']['connections']['index'] = Bonds - chemJSON['bonds']['order'] = BondOrders + chemJSON['bonds']['connections']['index'] = bond_indexes + chemJSON['bonds']['order'] = bond_orders return chemJSON diff --git a/build/lib/pycofbuilder/tools.py b/build/lib/pycofbuilder/tools.py index 14f74f17..95563552 100644 --- a/build/lib/pycofbuilder/tools.py +++ b/build/lib/pycofbuilder/tools.py @@ -1004,3 +1004,65 @@ def cell_to_ibrav(cell): 'celldm(6)': np.cos(np.deg2rad(gamma))} return celldm + + +def is_bonded(atom1: str, atom2: str, dist: float, cutoff: float = 1.3): + """ + Determine if two atoms are bonded based on the distance between them. + Two atoms are considered bonded if the distance between them is less than + the sum of their covalent radii multiplied by a cutoff factor. + + Parameters + ---------- + atom1 : str + Label of the first atom + atom2 : str + Label of the second atom + dist : float + Distance between the two atoms + cutoff : float + Cutoff factor for the covalent radii. Default: 1.3 + """ + + periodic_table = elements_dict(property='covalent_radius') + + # Get the covalent radii of the two atoms + cr_1 = periodic_table[atom1] + cr_2 = periodic_table[atom2] + + # Calculate max bond distance + max_bond_distance = (cr_1 + cr_2) * cutoff + + if dist < 0.6: + print('Distance between atoms is less than 0.6 Å. Check if the structure is correct.') + + # Check if the distance is less than the cutoff + if 0.6 < dist <= max_bond_distance: + return True + else: + return False + + +def get_bonds(structure, cutoff=1.3): + """ + Get the bonded atoms in a structure based on the distance between them. + + Parameters + ---------- + structure : pymatgen.Structure + Structure object of pymatgen + cutoff : float + Cutoff factor for the covalent radii. Default: 1.3 Å + """ + + atom_types = [i.as_dict()['species'][0]['element'] for i in structure.sites] + + # Get bonded atoms + center_indices, points_indies, _, bond_distances = structure.get_neighbor_list(5) + bonded_atoms = np.array([center_indices, points_indies, bond_distances]).T + + bonded_atoms = [i for i in bonded_atoms if is_bonded(atom_types[int(i[0])], atom_types[int(i[1])], i[2], cutoff)] + + bonded_atoms = [[int(i[0]), int(i[1]), i[2]] for i in bonded_atoms] + + return bonded_atoms diff --git a/dist/pycofbuilder-0.0.7.6.tar.gz b/dist/pycofbuilder-0.0.7.6.tar.gz deleted file mode 100644 index aae2e51d3918c02311b849965ab9a41476e61490..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 99429 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 diff --git a/dist/pycofbuilder-0.0.7.6-py3-none-any.whl b/dist/pycofbuilder-0.0.8-py3-none-any.whl similarity index 57% rename from dist/pycofbuilder-0.0.7.6-py3-none-any.whl rename to dist/pycofbuilder-0.0.8-py3-none-any.whl index b061214934b501d13698572aeeaf797d0624158d..e5be3fa921adf2359aaf84077bde3f91512c54f0 100644 GIT binary patch delta 47202 zcmYJZV|XUd6E^z9+;C&t8{3R!8oJqUn9Q;>#${0ahrU_qXq78*Lp1c-5HRDk?C6Uxx`o%%+f$hu_|&rM)# zEae!j>uECFOK9w2;qgOHE$cei%l1`fY=excr{v|^YnM;gfH~7UU&x%@hz(;NoRt?U z?N7Zf*GFx|u6vZkk2o&Ins zHo|)HJfN)UoB#cL!uD%$)DrJ4GYt5)K7NQlbfW9EH<8;?kLP#Vx>Z&l`6XDEv8`#s zoq3E*eafDcgag#B?qm%Z%Ar45u6D@yNT=_7`Z}D2#^1vLT&IqtEgosAO5uiKb@=`2 z1Z>MyC>vA0Y-`(bs;QFSkH4InjF#uh@|`EcIRTlkaS%Kt0xY^*n!6FM@iV3L>I1*y8g$5Z_D@yM-5Qw}z zVTzmyBDHWY0gQqhcywXJo*WweyGPtIHT~$<%PH@Ns8{HiIJ|G*f!7g9HOhyiH+|%Y z8M(hRN#6P^fepNDpL~4Y#3L$kdEPM-`q>o!z|kuSs^0lwU%y%|aCwwE+syHJG=a$P zX?GN^!#7P#{pMKng&A8mpB^E;{F%HfyqLSlAzLPaFHN={AWn}CD(C9XjH=)9NrsNY zbo9u|U5PwI|0yVaXON7sEmr?*d*kcn%ijGZpFVXe$A6~!Y5n;^HBoco0p>%WR-4<77Cx_>^~5k~DrxVZ5PqLIjZ zEZ8JY*z>OP0b>akbEESX>B2)*;U4zpp23>pmfN^}(Pqc7`*6vQZ>C?THNi0UN_wK< z={-1L>i;~s@^!YnnWs<9JtX8#v0`_m$`;>H%iG1jB@fyp!3_xHee2sb;dnVg9V4fP z#QWI{fmt5xE|4)zSs$@(fPWYl#@=-)LE8I#Fqvbo2XsGQe1;5H>t!Z7XUqCfjBJhf zwg0?xfQ7;qdp@^vT#ecrC7&=S@tZ2Z4Pk(d;EEtC%>NZU13iBr{Syb)J~!XYvWe?~ z-GxE8GnFe{PiAk>MB~S?Xg6Z5e6Z&mMKu=cI0v1r<|sXVc@e3^k_zVL!0ri4*GueV zQKJ@j3=o&OO!eXP>h5c#fZe~kSRsdssc4sP(-q9Nik3e;+)wdSaB&_z@@XCor{l?C z%WJPx_M{U_$~SuD1pPKeKAUehD0tz0atTZtMODy`@R#BNPmm*Z4wNOI{63->IyRHu zgk3(IpKpTRk9m{ADB@gWvRo((fd7|JrJVDO3&12nGA<|X!#y?#n^K$OeQPLK+(X9& zYw$IZ;u@w4Er`fvmJ3RB8r*!@lS@u1;%%C``$t->iw1t|n^(L!f#l68U+R>Tz_+1& zj*&O4nimAkyZ0w>%Y*{ZTXGkYz@p%vW^r}KvTc+WyxwR zcmnA{iZYCWI7AXWy%84Sl59owmKzrP=3W@GJ9v?!QI32aT^7`yG5dG0P7cJQ*&}O2 zNF=Kyf3@t}g!+^YP1PfD!0=dEkUtat@|f9EjWT5#b9;qj7Jmt>9cSl~r*w2x%n(s; zGO8U13zx*khX#Zs>tY=P=Lzv|vvT2b{D4I0;8oEhXfv*R*wu{!7N)<2sfV*CWXaL! zP9g8(p1kS8z$9AtQ^7cOr_i4~b|{qVNY=nI>7xXbfpy|g0%%=SFta4|4?;XR$c{)# zoa4}b`_%0{{J$VtzJ7~hb6VH~2XGZI%q#inHL%b9uRb+_g-C&Sqx9d?&9exP!+{`u z$rbFCkY@^)MQMvK(7lX&x3Y;c`6Nsy1Y!BN=rnCM_SK5?7FY3nCj>Cz8%B%z(W>2n zs$T?VIxwo0#IzzbiIEgY^HN73+&RlvV$#BAyqPCD<35ie@5%qxlosiW>f;BX{W6$U zm>t%=V8#!P&Bhn^=o~s0#@@RnLj*E3`MB-t5B?TyB4rD_KjCP(K?lVigf|dmeeKrn zE%{WG#vsp>hM^Rm48_J%C@>=+KlMqam_LeyiV=v(V3=tWTCix8Df(VHhE%|cVc7GP z{Wk_`ojye@rVWCr3G_f68+o_|CB@K#h_i;h++K!Rd;u?!1;4m+TAuSVAr z9PSi`1w>7-H1$-BM^A5=ku+tB6#ozf)tIi8Qp!^z|L70hg{K8qQ1R9}NG?{jP?I=shkKG)OO|?5FRJyN`@b=^~TNR|CzC_1jLC zACV51@XBM6^P-lxn;i1(3NGiL`Z*YYd8J%pUZyMui)WeWh~d48teWEe8Pxnj^CCJOO5!B7j`0!pKfZMydk7 z3EGE#bLff@dZl2OjL&L80X@q7(=Q5jr@$=u^ZB9$bMxv7$M~sa^y%;wJrYEOB5X}5 z2u)Q_j2nYY?7dI^J$;wnl$K*M^<`{zm^x<an8lc}-Y1%9_NU@eKh8c& zn^_{!H_g9K%Kew$mjJ$>N!K^!WaMEnvA#GRp6gu3N<%I2k#p-Tlxv75HHGlNEmZ~9 z5VJN-YJKKxzGbvHt}KZ!yH!{t3B65nC)vkU?zo`W+h#Cu@OFrR`jo%SWzE}>o4Pdk z1@8>kvr>`e9K)Kf{_!jkv3>FXV96c?v%pD6Ex+bLT)-jlZ0##0oMZi~^Ef({jsWJv zY>1;tqJ3FA#j#a30XdF#S%IG*(-SLN6HT~_EKb31`5O{P=6-u9@6V_^{Xz1myE7MB zFN@H^8RiTzmkk50ub&-x59M9B32F8hxgN8u`dd6LAx?|RAWp=Zitk(FqfC1K5-6PPeBaMU1Ndo58d;jRp>y3b1j#&p-j|) zR;9#rrGoFsw@P)IetGJFachN2Mp5{DA9jvyEov3dzs)yKUSDGnkYErrdj=}M6G~@} z4Qw_<-Lgs)?8531K=v*N*)`w2y=7eC{kXb@w*dt1WiaHCU(74f9=M*TFGsong`tm= zp7EA+)*P4|0Xk!z7KnK}oOvvFgEe03XX~qu8&at|F6n&B>u&*!qGaf-TJ-@qw+5W> zat1Hov=zv^zZ`Pf;DKqYB(kinukU*=Ssl0CW~_ddZA6q_C~AbYYNUM`SPuF~#W?mG z5&-=Ey!q(e9(I2!Gwu~0p&ly5P&`{YHLa=$MG4`~L|;*)UA~jguRE~#gdoyb>Xu>4 ziOwta=XP-=LKw14swUX5;W~j#w8NIw`?*Zl<86{?9?oxMzN*2WQ)A|@(7dj7(uCNn zk~AT&I&lW=1~U*wWHmw4BN|W+A!&X0+X2YjuUGW4047E;we7A7mb@7xvTK!!f^a2E z+h-}>>G&&|v}ZRPZG31^^a8M4hA`1@q297}KA|ua^z}Cy1e7-{7JsAh&aq2@iY$`d zf~mMzCFs@=HPZERXSL*uTha(6isZ2_3uZUeq_6Tn*SD6AI0eMtCWPgheZUhZnt%#O zqlQic)@tMW!s;p#FlxzET1&jWgjI91Nr;f8&_Q$FlYSz((ynx$?o!eaHMHVZ-ME>b za*a|}^|U1bv6rz#hdfd@+@PlcW7&JnCdTl zOR@T|F(HGVP^|XS5m4y|J!mT7{X8({^sH42Ma;*&NYjH-ipnO{MZMHxMt}&43Z$Ol zS`W=m8T7~;^(f+R4Stue)sb^_(9vukE?I>)D>z(#6FRW$^}-#$<)KUD1NC7D3FK4TiylPA6iNlX!4~{^4%^=SL1FRPA zs~*nl7Qsq}I8jBCW-^3qY)(>=s*F}aeR}Dnf8)w225q6Eftj6Q@Rk#*kpA_9rmWiE z6`qFlQOTRJ?bVJ@XKBEV9UB>(clc2Ef=|*>g?Vm4<38CSX>jIc*tA1Ik@5V|amuYh zbvcFn3UR)PmInTN)Tpl|qH9NQ=vRw!pD*cd%TQ&MWnQmmiLEWW_AGYtyjFvx>+N1CX9vo zK)z%CIWv(&+|T#Q{xR9NlC=pe>D*86zYj6$z?)kSULb`tv#**l&$kdh{;BNNnjMGC z$lJPoT>*H9vy$;yl*d-Ct-=G)a#4(w@wJFnmcT1pX};SNnJ+isw@@|@bYQ0_evW)W zrGM^D99PEgS_A$b-d;nfWqrI!>xo`mi@!L1yrrrX6Hz5CAOVGpF}=v*t}navsteFJ zoWAK{*4A6bjSp_{g3}F#>~wgFH*vo}cyJz8ZN9Quz73l~jpACETsfM;1*`M~=7x!V z=fzx1+$Oy4lwpwY#@SOxOw6I4&%4WF9PM)Aj*2>K(7-Jx&TK6eda^v4=bQ@0E~}<< zGp2`RxhL$D{ea9We*bi}Q|l(L)Rb*`#yKuaplE4iLI^=h=kS!7!ag~_$x*Qx_DN+q zdD!zk39HoYpvkJq;h(g+v-Qm@c*sC2*qZa7fi{FeZxfMf6*wu`N;3VI?I)5OjwgsXHhOwv^1GW@UmvNPedRaxRXtXmlLc~SnPfIcR{534hjSaEblElDX1`Z{eTw8V9q4AW(+TMAg zl!YM99kL7~1wdVI(2zoXWC3nV$l`^26p~;90kCgbG+?Whcn>LcfOs;XYaUw2pUTY|n^HKHl&;ZQA=~7)$E7#J1Wzd)6nn>Yw|9P>AX&XFq z{F3AYo0&%R-ba-E36qNRQEqe9QR=9YLse`9Jhv$fS1nmeIjH?>sPr}C!eJK_B%Lry zuA;K5KaP;@F{&RX27ufLPd}nOTCDu#m(x z%7#A|{XJ4i&L$?QiIy3YjmV+RfKwcjO#Xlb2O&p2&&`uwL(o)EphLo{X#})NM6tWQ z&C4=psp+cy6dFct&utb~to%-$FpXdId;o))k_4w?=q-M7%;hI_S&#^{_K-W@xE$bH0E- z+*vk`G8Rjl3rS(6?aEcr5_YRLVQ2U%o?y1tK_S?t{RDZ?AECrQ`NDayivG|^{4TTk z+~0QREdC6S&KAYbgpU9vrOnLR?$ClApS{ik#*+fkJTz3u+vQ5NE4q^dOSn!4P5pIy z))fAT{=nI1E+&t$-Xp=%QKhuTpm`h>|IQ zVG2EUm3|T2#k*^&3jIa_x-IPDfLTcXvje_TN4`(4!DiCiJ= zZ-|80v*$;goQ?q^gL<45Sx|SxxXVEDAl(s|`Lvj1-ET}fG3K25AuNI*M*L4lItkb z;%x+j`-WFNZ_r}o`9M^#K?u_57Hsj*IQ%l5J%!8RfF}m@_bcw%=8`e;Dvp{v0{71( zGdb{pWzbLtO$}6ZRN+0pQEk8cu7h)&J;te2PV0TdFs<~y=A}hdQz9WotQtH;Bi!$j zn~+@)mV~UgKptmQ4vOk${(4Vza?R9ze(%HHPD;ZY$G{%ydsLD6>t3sO#-Ak%RtPKB zAa8rtP9DJ4OkvGzK}};04{=j@H-cyQX&4s@5M5B%*PvBWSkr?YNTZegB50;MB`5v!A9OE!2<8m}>i zoRA4Ynsv)#f%1g`I3>i%{br@sbEx7&y)bv5ggoGpxOnbYG;5!Bm41fW+7=E_K^C zrvd2x<)V#&)dciXQ}Y#Vk?l!gE&(ggY?XODC~*oH_<#Do zDslG^YSYSj(W4$n?2w0jTffO#xfZ;5FF?M){1kSLB!h~qY~h?JKngUPN>EjIx%bGs zJ;Lmu2$WXfr`_3)L_`uTmty!U!Qi10rv(^fcF8x+yo<|E%@Y2gIRWSMm-0{q%4YP% zsQz*mqjQv!UkaPYVy-q|!mW$CBk0jrE4)NgH#SNtpvf) zNWSz8-sM+#JTPBmKbb=eDpy*a$#+XE#+Om3wr`dt7t4k>`QUp!pjbUv)ZImF-~qmX zTC=@Q&aG(i6lVkJmLJrsu3cghLB>wK*&yu~_~__VReQdN79OW08M_QE2Njt^k~lui z+Otq?O6hS-MWWUQ0*;Xag~AY`iJn1N!t`DdIu8@*nABbAX&Ir^df1PRaEg_Ao9s!* zR?P^BXwCXWbgUzW%(Ysp-eLZ-I-m;LCi|AuBBG;7wCF9A9D%*VFuo3Qp9KLU4e7!= zKADQ4n?P%eo8A3RxcErh!OHGhHD$*Di~5&wO1a}%l=gTZPWKi|olfdk&tZE+@#CPt zqKR>2Hrl`Wc(V4QF+{RvIPEYz>3bmxxGUrPaysaJjuc1>L|7e*nEujw!*y5euMX7j`%f5U7{@a8dmGC_BB-+wm$THecPbhf)I-w>qe? zb%Niq*bp-0m5yUMWqu-`A|B6GJ(2QFq{x!_rde#55drx_a|0(DgtqNU3pG@lYrRCX zIwYAMNjb`f!;YC`wm)sh{)MhVtXWZwtxdBe>vDVW<2@mtW>ZH8AnDL~D~+5lB9#iXyuz9Ue|F8Dl`!)8p$-IpOtZ9!zSu1YnV zeZ0c0^~6)~F7TKg*}!$@4xCA4Se=~Ace7l)4LngmgHVQOgFp_T5_;cKLR8Y!x?( zZqPCoy3P^E+6&BR|F5ci$F^tH+>-B#x_8UVJlK8A0LAf>wq8{i_PN9NeWs!b@ za)$53a%UtRe7lE||051*kLOC2hJSV)eCAT{Zo_H=+BJ$|9-e*U=z3e@u@C&4;3N$C zKZUfm^#84%Q#e-z=8Wxwt{^~Lo3M}`R6XrJu-6|gpsV;;l&fHm>d`=yE9pdO_C5Yr zHcjBA?aBRhSCIgPmx^G4#CHK}xcl|-3@x!8_C^mMImo4Tf>KN&rwM~{?5Y(!S2zkE#ukR%thT()%j)Cy?dN*?s(T;*1hRX zx&JYJF}&9l>0J&}@?uan#BQknaR)Bj2{$mkZgk!H)1q%$^dJi&7b{9pcqW2&OBJOp ztw5H-@sal|Ei)rHKLXOnz$H0gGpL{*AIIM%Iqo&Ikd@ggXfW+3UH{xwc5)K7@H||4 zm-fuxJMxe}+iUj3`X1Jur(TcF5YGg}e@s2hM7(XLEARf*d8ymDCObYej+4+f550ix zp^W_`4M;Vrnl@^D@Nyu`;Jys069Ti{BwJNX=twgicDzUFahA{eQ#hcs4K`Sfs!_;l zcXtsyZ}Dsj16HIJ^S7|o!Hp4hyLLd{hFy!-Ri0uZq&k%^=!blF2(-y)ID>=ulU zZcv8Y*BLf0VY)$t2AzGF@`+pYFWi8pqp6n5i9jZ#>?Imo1Bz*B#tx4Awo0!C9G$$z z^Kii?oTw!~azN5&-0J#w1-;7oL`w9E8jIhejD}Zm-tsHnxa<}SB_$`D*zB^R=$1vX~*R`1MNbK4bK;0LqrZq>0F8Jx{0#-##e%n7{v$fSt= zE)pqyfI;)knHi5u2=DFz07unrs@{T?^`NM;TV408TWFW?An^tohV z=lgRy=uB!t z$pLti1au|dTo7h%n#{wXB%Tw%hyTa9sX9R;SoMa+?pqT7hi%)XdS0a@>j0h}pWyi7 zndWQGePxgo6feJ`0Au{2)CXvUsHf=_g1XCohM?zan!w=wj<*fMW9xyb>PyAra8sec zA6})$BU%?O_*za-LRFv%KPN66vqgK=7jK%8K121Ju*dEQ`_+^4IxKg7S z%YXAhKxr5fxzqx$^oy&Z&8eK^WJcK}pQXePh=|Nd$g5m4@Ex`=tfXIvIRW?7Z#yO?ws63B9Pp+{29b zzXY{IysC#ie17O{*k6G?j@Niy`wc9K{ZR{eP3smzKF|X)YHLFq{v1F{v2P#@mrndbSrx8+@6L!NDKiNa5nM=-r(!y zVLcCzNKF7^153a~6spyD&qIg_WD`|Q=RX=;M_=(9MvNY9tBCZk7-vIu8*7W~c__pL z7l&3tI3=m+yhmBdM#(J{g$1+X|IdiORO`PmgR|*Q3Qz8NfNVOJk?g%(3HLzY7=!&k z1A61kbrow97yjF%k{Exb`}yBpR5bwq|NlgcKCm{`|9WGDSkD1wq5twIy!I0NG!qdn z_D(y`2@}j=_&=2Qou@#rZsQnr)AoEEz9yh~bi&s5-V2pMj4p$Uhs(Ouh4?wJ0~gQ> zvx)DIL}Fi(NbdioCy$p80^$4rr6aV$@&(sv>d>nBAor@q86LYeie_Q zkB>J=8;ibrpv-?fqF|=&zAF(qbpBG9;i+S;`0?!5E|RRFuroIOEWVlr8pfm%Gos!v zaUl=zzKA{&;x~8L;Of&EUV|?(Mf#?YCNIB#)gT_Y0z|Ui4@6)8mPH6jcqkzhViM{x zprCbK>I7V;Su5feiV-pj)VE_iOF3^Rw^og?ILmi2X|lK zmgQSMhC|L$f+5eT3;-g_Ny znGixh{@@bxm0jQy^R1V^1joEHTH4bdkqx2Xafr2aK#gHH0;oOUHkn|uGTqZqxk4pQ{Fx&Q{EU+Dh&SxyXoS4YQTrfG5_?^6oV6-wLE;2N7r~%oo)XbI!AWR zO>h(ygS?iXcq5ibvnj|J$zrhQgue4U4BA8bw3}NR#fv1YLV{Yu`=1?!Rlb zc!XwTg&9LdTz&gK7{d+O)7SrLUffK)Rc7&2EHCI6Jr`j^g82TViUX?~Oy5$P?b{h? zSk{-&SI5l&S>lY~Boi_m@GPH=t4vxNCtK*H4pDX{>j>uZ zRtR$2{E=V{L{}{_?GN%TUrSmSB3!)Yfo|hTNZL7no`37IM_Ks-ZzwWimvI+AV@K6S z)`D=UH~oIaar_%fAABpSRprSpat!D_sd-ejs-pGbR7lQmr+`Qh3Uhy?+u5vuXY=74 zUp4aQj4>na@Lb3W@`w;CVcN=fa>qEZJunxcN$l+anlb63y!|Nl7==1=&<~P#x7{d;8;K)|>WGiGet8L&}yR zpvM$YYJzyZd#>NJM+j(1I4~OHVS|D2TGN}sSZN?1Y+cNZLajBo)?*uh)eL=}_@=b) zWXCrzQkOB5R)9HAm$^~njBwOT)g7FKI_2?=%k1*qG9?QmH-m0g8-8oZ1`pS^%vBkE zdA#YuQ`^3b_T0%Bw{z)}ARSfoo8m>+v9~y&i7qc3859eyso8?ex|rM(3XTf9ldbyG zMv&d4LOT^+`GqCjAxMx~lXt!(AvT9@yaVdAtV`>AM2BE&icgH+PHl~v@L@Z6l+5IYiJ zws|dLxaE1@ai4PsXcbpT>g3WvC7DPYlWKvSiIcPv zO5enm{=Pz?O%&?8iQDj~YcWG;sW1oR&cM4V1wH(QTg<*6%d4!kZKqgUqG8PuqzN;F zOWM%ZqwwxDe^Pa__e|2#39jzf^q3pH2p(-G`qgjxwB1n)QTvau6H_wUN zzdYoU9F)@4N8mG7Yh&7lp)fhG5;**oN@Z{MtR;G>6yB#QJI2-+D4I*6G0p(EjY=i8 z>7uI^ks_3TD8OqqO5GGa`0~QuJUykd=j~4vyw%--4N1L$$%y3)%VL+}QhoZk-%ejY zEh?HPW^(RKKCAkz7;KMj4^`n2wk|gGT#rNvg^Fw2dK{>%*x?e6GPIy*uX9PM*9tpL zlBw5P-&(Sy1vOf-G9Jg<_QC@XipI69p8KUc>^fxCv$&pc>+ko637U`9QCUo%`b&v^ zjm+Z*jV~>xx0+Wg6rPOSexn}AHx=dF8;UYR6zD%#gvrqdSfEV;EoN*};Pz;j@9?WX zy|OV7QPnv`JH{9J##70Xx5DofpnoBo#gGgn8^m( z({48(?^!+&j5ypoCu$$PaIoR~D9(}TE>l|Tq4wahCh!H55zL~A7NJ;&k==SHmb3`# zw6$!={-qcZM`!7X3gpq3YrP8OZiIQ9x=fPswD(uGOwBR7qCOk5Nw+XOPTmUpy*iwN zey5E7*Gbax+3X4q)?r|~tsMsN}K|<_BJ? zL7`K{fya&N_RL5#=Ccu%C@)RdzZ1xm--Lp5NWDo8zRD(%WETRCNnca0KPQF{oxk~X zWHn8&OcbQjHpJr?bFcH(wUf2CU-ev8js3=M0BL|s{F*HWX%TRPtiV6k8<$*~F~|4a zR$sYwIBf{(zm2E5Y7SP+lbS^>F}c?UlZ;QgYS~rU{Aq9QSxQ0t&X0@}{6feAOA$1q z)iFYxi1>Z}x*CmAs6BD@$rw@CTja7xt0wIZ6>t6dPZ$qOF~`ftZ8kO+YJ3@q6`7+GlR5 zgap2#Fs0|8GQLhmtva!?CgZ$(f&H6|GUiF3!GHCj!@fZ-C(CkkC)hopAI+MbSgpa3 z*JFBJ(Bk`i^okCf)}$&nz033(DfjB$+SJPr0>Lqk$?f2Yzp2)9GRCcch1~WY1f{)X zjfI4x%{}LRwv&zAedNk;s^o(xe>o|lpb0sKKO?*-L%sgJ+80A=X+ zBG+tg(cVV!UQq-$8_9@1cJ^RXn({^ea$@?!+_;p}ums=LR0dN&BRZW*D0jf~s6mTW zkV?d!CRRK(6x16AFBPR(yxun2$Z2# zNwjI6rE!iX9k0|{pG#WUSTDGqA#P1HNC1KRd;LQCe9c;Ygu*1Ij*wlCm1RInP0QNM z%JOw{tML$a>slo#@W2;ahB3*Ocl!udZ_>KHAQehl8W+#Ph}8 zG8J0ro^s+AV8fq^b0Ungl)A-}a!Q|KL6cvJd8A4?(B;Zk6nn3%ytufi9M51PtM}l` zQKIG<3t}3RARL~Ll-WxRR%Dr$M2V8*o4z?ChwRft2^salJut+N^BiKACXANb{$N5b zR;Zgcu@9*ymvcrl*G^!|j$>9KMK(|TdG@3|_v20zxD^VF{4t7IEJtW2>?cbm82PTq z6(=LUdq6M2nofIz^OiLyuZb@?q{xQ@FY2KRX&NE-CsNFl13Rpsqh2)GN6dwX;NS-I zNh!P*2?k3s?G$RAj!bFE)R&Ctp(&g`Pmh=nrXu*|Dr0m;hqw==B|LI^*^*074&ID8 zsEfz|&_)i#|40kmWjG!;GvL8Fb)W9$u>W*Og>Js6tgK|tiluM)9i-^CE*1Dz)Q{+d z0>!!}>Qk!sf9+XMe&e4rbPn2HRn`Gm>n9^UD87G{;m z(1rMm2Cf9OCeCYXfxtNxtq>AyB#&wWYe(WRU{jN4kh7`CgIOZDL&3}@XjGdS*6~ZY zo;p-f*fM%=VB{cJM)>=cbB)P~sUGAKL7}la^^N^Ct^+cSbwh1#;)U_qt(aaieAM0_ zA52q$=apxP9?2bci%$cA$yQ<;P4SSre9+?Q`8a};ocRrdDR~(hBs5ni%whfap!>h> zfS`1d;nuBBwQu7(OQ~jDE4O>+Qoh%+5O0-1MGljBfb^@c>2A96hh*FWHLnpsxXK+kx3iOON=?dHB0|F z2}Lt`Y&p% zF!mk3KSsTE^x8Oa=o($NG-E&|o>yWEC1m#*Y5hz1uqJQYlnKqs&&A3=)}@k>0O{bs zFNShDH9Ko}-fByWv0bt-a&vnIg1ni!Y;LKUI+zKrK_**Dupx)jMqhl$d8T|#=}62~ zC!C+{@F7#S{5qfSK#U6W+5DBOAB>Aw(y$M%?z*AKksF4i+ww__y?{RMpcr(gU^@Igau5zW{WGLe8JoEdYCdkvkWfG zm{UaDdLzy>{Rs*oU{Hfmhi`OXe)AZ7UVaq~Q9`egL-z=680c9VUs}7p= zEYc}ae6^R2;jFvxZ(2%7;Jd?Ycv-_59Z7Mc!Eb#$f~Y>KcCvqO*-EB&C>9Xo0OcOc zDiJcjQtf~nd6*o1%f;R~-Q6sYw+Z=&{axuEEmfu8fcAGKoyDCB0LTCN`y>8W$xTYd zU9ThtAKDq`ufi$*c@vgnwThaK+P&1BuVE`a|l@ zK2K*C4FhQ%ta`ONiCZUVV%B*KG2i-Rz#x5tPyHSybc1AandE^dbuwG_TYVG#L@84t zZEI7hZjp1_;>v;pJt$%BcL@|UVQlCi;Yveb_r`qpXPQ7y3oV@mB2`6K?2P;T?)7)t zSt&F6MCMC^j#FL_fZ42kJ+A`d3^XgzhMfAN{W*k_+UBI;I)|mjz?)y}ovrU=WNrz> zz9Kf_JCp~Vp^v~zD^++#c{))X+4rT0=i7MQ>ADX~c^5K!br%h9Sbqv(xl(`~w)p;U zNQhJzu-t{XUAYy1*;LI#!dTXiEU=lMWDr68FyH!+yupR608kWshA{igG4)ReL28TO z09Zus0G6xo6)+pXBn{dk3Ur~N+FgiH@F=xGwRwP^=z*!E4PtBLS{14X^J_I)Bo;$0 zHACdkUp+0vy7^iK!p_DHiKnj&HuA_w)K=KT%Bl;a!Lq~zwK2t3$hHG8;cJH9nxnv@ z%6Eh_4N~nXfKEcsO5Xz~PQ(c@QMO|Qr?2A8Y^KJ8mDSmVilA-Uu)gH0(dI516KIE! zhI$TEQhKvt<|j{Gv9Ri3UdWWjrz=9cb4_Ut6U<78E{j3_*hmQ7))*S7pOs=UH7L8g zyiHLj01F51xORHSSX(cG5+(5ws%4c1fPK63dP(=$J_=5=cv$s%o84A{ zL47uo$j8Ia4=AgmstEfMDw?l0T!c6lYir96D(R|T-53ZeqY+i|a05aC0y)-NYxdtK zQ_O$x?UK>;yc%AJx-9Dt=ymHhz-M#d(6?>dn0#fta$>H_Q8Vns0S4tCO_V$ zS}sIlkffSBnXevj#2S;dkO7rPYfw+DqvfxM!l4a`;@8-IrFZ7~uB$2+57;BxfQbjBRlx>Z|>FI5_o?Tug}Uv0rC7GKfk{xVm3t$dm= zu1z}sGud^NlQg4D*GETHJGMU*zeR?SthU#5I^8fbOu`0b8QRenWqF>gbrS^XFw}xEri{Ih zgDw73)p$5vs5fReKoOfb+B0$AvO)@7dCSNYG6>0B6to|m3basnR&{G5I6icP7QW6e zWFrrs91rBEZs_qB`cD~jsx*K()&>(Eyw-1!+U!bty_);*q>foSy0qq-pUO0`A@XLpHD&hA}!5`=j=gV((wgM ze*#sNev6wH0Kd%VeWv0K2J|}mqJzQnb%AbFy|)}sl*2n5?y2}hGfkPd1Ed3lYwDdn ziaqfM77UI{!9Y1gzuJ^yQ0O=s4?GpJ5%e%tCAk|k+=fBm56fXJ^W$MGtYWk8zi4SE zU@-&donC~@oP8z86JqSn{e1?cE&1M8NQmmg5XG4NfCA-fQcHZ(YlxdZaT%58k>k64 z0~a!X(V^cfbrAI`Q0U^0@RRXEf~4PRmL}cHBBP8gGyOTCN+2#xmuB-1O?~X)fVw6y&N^!NT?(M-0dQ=0O;ZQT)8Drv1KU_L~XeW)!Y2bPr{SxWF{)@;iugX1p!| zC4AD*01$GIQozW0yC&W)ouxSeGj;Mnc5Bgewpqf@U>8qd4|BSQN*F5WR}`Mtm2y6) z2fMKo=cUPletgpPO^X_2xTheBq2l&C*7s<&+6aFZ!FYQNgaCVQ2e^W(z!-V8>#}q; zDF4({csB;Sa2(M&{|dbJm2%Q0gBUwE8aIej1WehjcS$W2J3J15{Tevi_f>6zsoy2< zc+3@Unsg0suB6hNK0y+DDtWOtjPHev5BiN{c9ROe*)+VxpAQR zEM;&3dv|0b=05c521JV81)EQ@l-YK}BpF6oQD(tvg}mEovKoJ5%t8=aY_m^c;@#?x!TSEO#h#N@d4REgxOSna)c zlLHHuDMF&G!cwCn=(7tGky(4F%Sy0LQlw$UO*oyNaOWJwjR}G^G1vYdroJ&et}og< z6B~_f+iYw#wrv}o*mlxbjnmk+Z8Ub9q_N-p+uVEK`ShFRwa?o7nKS#Gwc`I)@v8LC(o*a3MjbS?jYViV@wv;CW&@kvGOrv;=N2PM_Os8 zG?lw3;Tmz}4ivZOn@78-U1w|<@`uhB+i$yPm1}x7Mfyj$%Z-6`eOG;VL#acDK+HmP zXu%ZY@ks7c>i6>CTw2;N=p!Xa7 zmk?oHB(YG{ujJ;y{4MjCB9{0mAg-_}Ne-uz6*wJSI9Q`$O4Tbq-QHf`ey}*59nUz- z)|=}k(9F&cRi*h&pwce6MqQA+bS{XeokX|Dz)*Sx_Qpp`cB#=CasBMH;tj%sgE|k`j2q6wd?(Qv5;wsF1q zVH#$P9Sipl%Vii@2ZyfzqT}mD;K2o>x3%6rDg#4&wK|Gr zPA&cBv8Lm2qnB~z;mru=00J|!W1lpCC~?FukjksMMXupM|C+g$26pI!UF5}QuIjpI zymgG8DblZ3R~~qLTR@raE0=^&*45S5#~fb$Soh9s+a^qMGptn3%e3WCMCmdEL{8;R z#^>G7gXuuID@z}I@ygp?Fjt39Jsnu$P~t4#{5k1-D>hc?U-d*DU`JURp7|i5e!9EA zEF}g{uv8dgw`z*B(-nY5UVa^x9=JH@xvRcZ8K~S@BP@3f{03y8uv0>pJuBYn#V0Y4 z-1Y3$ey-*{7g}iV-p`7!GFQ&gLF}GDveaTIXlr1P-ZcS%M`HaEer+fS%nofjdV>@S z8FJ0_^t!|UGfmv(k$_i)U7cWpq1PNT7%d#?c!}r?ALxC!0Cl*a-#A_YX?>tBB8QM` z@7-S)?4aeUln2D;9~2rZemV5&l@pkQ)En|xm*d-3+tpgUrUKRlVjto=tr5E`7!e0I zrrl~us;Yw0c#Eq_1}mi}de?(4MoOe?M43M~UeH6m?{ zRo~5EgHT6VA*2WclW!;Y39Yz;LKe#uAwS;DszTGSkQE#%utT9BzarecfkkO|%^9h+ z4Nj?ZF4=v#y5rR!OOz#b7wA}8x?ix={|ij>NP6h~xhdh=0quedeR z=6n3JO9dbh2h@pL;%SI&tnWx@eXB20Q*BCwN}cbI(s{m0zhT~QAIoJ6W(y0|I*RKw z8+&|QYMtZW*=d_ZVZhn!27+8^3u@o0a53dBteZ~I!!oqH>^&%OHh= zOt!3eJQ66jIoZ{I_T}p@9Nn_f{Tu3b(pIvxE|F}M60A6OGMZk&7-$7ohwmg6%FQ|o zc9u!SOpDb5+iE3zdXt+_y0)dq>+6Xev{UGA*-sX1g(4`fkBT?1d8(vD!8qKoKASiT zmaD)*agD1G_MNo_L?L`*<3D9<#P|BZeXA2FORqhuOuy3!i&cj~%iR+-sIfY=gpfKW zBzx*LF;}#mseq{;z42a6RaNuukl)<51@4_2tW{#R%{>=d0mypAuiM3MM7Y?=Gp3L% zP?9cm`m!KW{>P)=AUz3UsIJs{vEfsv5g>pYES{vtxA(%>XVChLKg(1B)Sm%bE7C16 zm@+}=vMl$tnURWRqNBpl6rxJ^+c!78C1mh3SRM+_*I@%#KX#ifCfhf!W;{Ap;daB+ zpgjGgj6~ezSA@lxFi5Cs;v7RD%~Qi?vu`d~Ag(ySr=qt`h13^q;Qi)^mH$~AIjatY z<);)c>|%fKT&Roq-F&ufm^L6ZP-PmRWJlsW#e6I@9x@R%(u-JqvWzdR=0tSGfp zYh;KB&7ty!9kST7#EYs^J1Nkjw@jdh7{W-Gb<#TI9j{f^lJ%^;`g|20?21YnY>JxZ z{<`H;kJ>ND>-1AW{$$6((+@nY$TJ^?^%MNA=cM}-R`S%+)F(1V;{=xgdU+>c+5>Rg z&aDaT4*4Z=3jco&X5d z(pa)diF$xJSWjWUHcQX-pO!j$2mwkM_+Zh>dM)vXp+T{LHH^K9hd0;ZwXsBJL9Uh1 zyNg3Yf#1&_PTNnNVc3%2deCfuEuVP&s(;*K6&aEcY_srmEFODVcnY3tq@zLSRYOf% z3u;eB)6UL%%lh;Y^#4k-iJL)zR8^Q7$R97mG~JKTC_dU@ryuFjua!!Lx0OPKf$(;@ zl!q6*j0h>>1R`Bjv*i^9z`mYFmL{G9&f`1CSi zh-OddAbr_le^dJ`1_k3XF7|wE2Q54-^oX*ek$m@OF6{TP9Q=`AOKN`b}WpDZ-Qq zES=zTIaFki18Q`Ez8|#H4!_4%EXi_*!a$UcJ6F-0$;mB3+_s@{%0p0M>3F8S{Ckm8 z(~kd-`(^z{{^1L^8IwO;sZRLrb!1VSQ{O$I@7>W3kZy@)L1RcW^ne0f;P8PKQ; z=V`5x4>cM^+CC;K>~)?{nLt0*0>_P8%~|wi{&EiY>PHi!hnl&|6vA!mKbLgv2YfV0 z_UtL{;Hx`# zIH2XQn?ks6=3R;!Wy8G~73newmO1FKDoc^pq%ya{KG3hm{vrVfK~0gAoG^0Tticd* zVVvP(X)$;~c4iBB83?SjtDe%*?IEAr|ap{X$C7i zleXu>tk`()%26t7^3({W?{>8bWu@O351ae5_M4@k-`q16!!+;llYN8-tN2!>lj&>w zH{+w7qeaIk9XxMWJQ8r-gVpMVsNmc&S;o^eQSjFBo3ch}9B5j-&DB@%zBM+hh8I4w zVzO02`V%mb7CIo0tpFt*@}fv=-k}3oLU-d@8fv~#`zTdp8S`+omsII}R;0lRwkhYf zs6^?#hQAo9Q|-uxX3y|TIRXEEx^DUp5hkcV_qM=sQJS$v9f!4rO{KF~y6@$hRZE;z zGvS0f@9kG)*-dIO8H4N#8!AJG=*6BIG8imDI(Q7_49kG^`wpb#Qr=2^M%EmB6rE*; zGejr27^am?h7VipXo?3~X+xdDLF#M09AKz6`aAiW(s7wyJxEx`{)3X7#eX^z5x$fg z?^*g#I)}~sQb58u=u>r`;*yu&!Q-Ox%`e{HppzJwDS+$mjXCGaT^2nA^}uY_T3tp6 zV1KrTPV4|iq+1r3w&c6QRa@iKNL)kx07uuWZ&s$y&J7=Gw*DM=nhwAG^C}1bA=uu| zb=+Btd42NSUlXo2B`&{Cd4Ym6*o&yx(vz+$H%?=c(9J3#pU6=t*r9QMS+<$BCxDhg zdpyQ0JT4hOedB;VIk!*R>ypzyn2&1WWBwmCr2^GbpY;T{cNy#(9t8`%GCss7hmtk%923{eYcp)nctdNJRY^h>2rsp=DvD{FT*-B+!tFG9%d=VHfd(S{i6m|dlt_-| zH1=-ncdV|!0gNA7;c#1No9YS~)7*cbjk&q2EzJC;pQwr)atEmrMw)upoxMpNjQvss zP^Nt7+u}Z$-$zI=s%yn`!Yt|ZzK_tz{{hMEl#5{b(n}5$W;mSV!rWJ-8|BJDCuz$~ zCF}%J>X9q*G48x>ZWc(y-frrW2dA0Nnc|2nT(L+VK%|b<)+3JvljCe4(hL0> zzd+n2tdNY!#G{{-`kk}A77ZWJn098;bC6K=`_#C{o3kp4ju_1`VhE*!m&Pe5=klgW zTyAb|vULKH9dV|1JT+yDrBu8k@w75hzwOE^nAMSGj0fZ&xy0UrKfCf|aXPk)`|k-7 zc_d5(`V`=R`Vk@}&)QHwWl>KgQ~zXyC!@ z-8?5KU7X|3vqndfHBE<8rA0FF&k6>~@wI9cADaLXRr$&ehB-ig_HzA9iNq_}r>|uj zPW(nBJ6pIuUl(W!yC+{V;K>oomqTr-7K&FFVb=TnZ~m5Q?up*B?6zYR*K{+%>5ZG`D6wr7Pp>yk-)m={yDny%g0x zk(@ZtgT2xGF7Akr0b`nr2_{9Blw}&Nc%MYdIN`G+eAyb5T>Hse0=e^-4%tM!x{i?` zK}ubHmtrAomn~dm3WMx?DeNH2bqUpT7wq$)!uC%JyX$l8g8uDuVmDn(G+X%~BvA`T z-!++T7|4W;9)YxGt(JbR1j?6S@7q|td$7!J9Hlw`7s?WUcMOI@%*S{kHY6=qfl%I3O0lTT2mxnigS ze-uNLabbpwG-6P(6A>^=k>8%S#*zXsHb4}w!~}+~3`pZ2jkN4AE*%d+9~;2Ag_=E6 zra)XsJ4GFsq=dXyhD7b>8l(ovr0kfwWR30FuLrF5P<4m0EPc|49EYameo_kI&?{q6 zdx94P7y!p&9pUNk(?)Ln6yT+d)e6*rkc7Fh;0>~O;qE6$ZAKW~SU=2W1Ry2_3DLT- z#cOdkzN6J-L1OBjRHu;*o!e+Kq?qbwnv9_h?rTuV=T`ZTz#NE42*$eRR~%itYZIDH z#pnKJRtr^9jV%X!8ad%@Zw#`4#y=UJ|Dg?mttuq0L|d%M4Y=wVj%l*&P0152Aw6eUZG7S`^)W#DMSwqzX{<@g)53 z!R#Pq#D+6pikU|J-}e<#rCDiusr!?Q1K}CUy)qXY#yotiDdbqk}~ zq)%r~06SiKvO^WJqLeOo;f=CK@byV}^?3IjG%mU9t#?-dG$Q!-XGdVj$zdck!oUu! z{>~?U#=sRiEYtuQhs>D=fJ|Re`kfO|QC@uJXFNjB_4j^Jc%R^;rY_rju#IE4+FO#H zg%;Sf6-%wK>$;uvmQhKN4*al3$3ggr$5-W+SaR4ILG3`08R5>{kjeT^=kfD#Nqt3X z>k-!7g1{eNYukmtxvK$Lz4johDVJ%cL1gso3&$fUE( zQVTBEZO=e1tY4~T zb~m(WO|ucUt`sFOGA`5vt66Rt`>-|mFo{smGaDK-%Mu4QF0=BLPWHKSa zwQ!AOpeLQ>6Gta>ilrt*NC?u4zrfMsC`~ffMjxPWUJ9CS$EPBwql}7b`q{n@Ax-GA zsrK-F%dh+wnu9NTZF)rao*9clK|T1^jjDS{ z`p3D5=!P;NSCxZZq^g??)$=GMSW`kvW}yH5*NeAbBDO_B?c&aR?3afe>|6U= z(L-~6pJ^YD8ofOWcb$z?webU3WgX`}kM*mY(1dVcq2xikq=7gxl8-@7)=JerG7)0t z-gdoA?xY>~Jiwl#1L-P^cS}*uw#mFruF#slsCWMClst z_l1!_cE})6_@^)3FPAtgo^gs3wkZ(e?*5a{XR0nV&>J|)^Mj10Io&}ezG zBrf=|uer2Rf*h*U-Szn32Dg)sCR){#YBcmP;xcBs?^JN?@%=vk2h;dYd&1lleP&Q0oy->}w242`jPV3M!xB zD#`jo<2x)kX9irFO+hP9xtw)c^79DP5I{+Yq6m&GLMR%GaqYJGTk&MiMA)L1tPEJeocU_8uj*`^$te$RKZ z`X4{cyV}MZWCp8&{`PhJ`kGz;-c_-8C-Sb)bmPj|9i6S!QyI4a}>E>C;U{X(cU`@2ZHRX332H9m?x6%%i5+nmLei97G&B z;rgRXKxr!P#%E+I7UJt~*7zscPrka+tn z2lDSq9Q9!t<8GVRY!*L@Oc#-LmPd>Xa-^tpxgg(*sBEl|w<= zYu+~2=zs(gBP3HKOt)6J07PPwg3*29U(8DRPnbHQxg}LJ#b9n&;X9rX)o~*OIJ|p$ z;g>JP4b^$;LV|`;lupp+cm|bw+Ib6EW<)mYi@BGYZD+kBKWbk_cHkgYxC}5k?EEdn zxvYXOazFP5azI;FSFy>_gaB0$3`+gZP6S)AqahI8(MqZ=v5XC)C^2RYMHnjCc=0kU zlC|iZw*;@%ouZ&6v<-VSDnby?dek(m`~w=;se>|+tq_ptbXz;e6H9fx)Si-Kp7EpBo7ew$f9?Oh#S#6pGSF`Pq{JgNX#?yv<&&bfB5){lme0ok}FDc>>dWK)7uYvDm* z^RiV+wlky0^B^5(qXA}^Q*4oe=grA*vuRNE)seXQSjRSMaKPL)(4(p?v!UO0b;!BG zez5Msn(+%Yv}mH)Q6$Io(1=7tYxqEWa(+$nP$KOo6}oA({B)t&)V17Z1jt{ZUbvab;@VWwrA9&QY$qfdx>j_1 z4iyC_Wtx=YC$fB@4*~Fibq5c>Mw#9%^0+$A*v7@IYTy)vT~MGVXDhU@{iQ8;w%yv; zsP%Sq;PE6%jOZy@VDQ13L+8-)VPfW5n28u8<%ht^ee?!_14l-u`o&|mmI0$m zvyQzhYM@GemueUMK8g<<`zF2#RY%nlmKM4h`<^H!oX7Rr6kd1}Wi!T=%g(7DTzEt1kyd*S& z@3LH?%{^ujd^fiaGqRVi+gpy;Nhc+LJ`qg#cHw8{CyGNufcYY~ zgbS=o)4!Bm;xsc{zu}&XMi+oj=7cF(P8N+rz$iXS3l@4>hK9YjyrW-Bp4ZG?qOzZ# zI~crGE?-lh$}k01G}h>mT~Yt=!m0l3xj2c*OnC0x02jN9Hai1m5tDg2zQJ>XIgPbB zSgjCjbr}6~*7`=r0w>6^EO}IAxSmCvUj^t%<^ucL(aT1k>G7KEh`uJOhmxjp(0YDW ztc`{&6atHyOtNfTH}Ru(33mf@I;{?TP+HS^X`|;mjdbQbvYG!< zqa<<~j$~C_&`2oEAFx6se#&w591S*2lM6I6BHVkeXo%wxh&;p6`|fttC;EkO$7mqf z=RUq{({ij>W+7HNL;?oyIm@P2V=CLTqlkHxHtmK=S53d7(iz*{*=#a+n;#FApOzA; zU_nEL7np+`Ctu61+8K%0!$36}U)lD{y=dkI3Ov5eD#8knpx6V9Oq8*#HzQ zOoVOkH-`6Uz6ezIb1DlxRz{WZhl_@f8rZO7M7#CQs1&hQHEOZv^V=z^%YpTBozQ%rf%Pk%UF23O zo#2{(OgU#&Xk+yy2+rD6>MP#S5$L5nkE#ckEv|z5p*xw-(wfkNo@?A@YmWHavCaX{ zdR%S`Axn?<%b3^tTFCcW@>vStQg!?;=lrq(EM=j=D3P>wNd-{{&X_r$*wBe8dxI6^ zIY~AWZ5GHp_c0L-!YSywP>_4%W#I7UhUmFIooCfnLjtc3=xj_Nl$x`Ajo4?zZ%HUc zaqh4`e@~Y$QhW9fH0SULiE#?}Ul`(>kch1Rk%ODE#L!jW4Hbpe(*QdI-mBiZ9$xR4 zID_ls|CINBsZH_t^SHM!3EnLo$lA6NTVf3J(Ffp|t zQCar0qcRd#bOOJojp5x!){f4>ij&Z25J_bVWp#t2t8!nq=Em8zgBa>BE%p;u;awg# zoaqfj{zw6{hnvFXakE4gpk6A0{$V1dX}aiz1NxRUEWMIEbh+2IU_E1rNh8yu{0O$u zTpgh#lHLRh|exQP$SxMb&Tn4rNT9D;j#|oj5f`l%1o@BarCum0?B2XwKDydDM(G z?Zlg^&_m!0LGS&q-B}G6a&o#Bg=33e>Y>hcIC2=7Qw37!Ar^%DN5breUFb{rY(337 zOLwlNrR=!=fWF}?b|C6ZqDHa_?p?yUV9yBdBn4{>P5qjPiKJC#Iw(VN{xXVvtLa)5 z$yx`>sqNTcdR$8&ym(5?DQ@7HDf2Rpk81poM^V3VzfI3gfelPns*7%@d`kR==6C`d zg9E+QL~ORK;pUmcg#0|gg<$*3_LDl}W|{l|c8`wVaQ~LPJdifM9}SzqdL|T+S(QWG z8o{`M`E&N~-<&Ipu)UbPl7rrGj+8;@$BB|>SV7`NG;zuZCnK7EifZ)e2v|bel}93h zlB(bf0q(5_zhW8XJAt=Wf6g{e2{(6i%CB;orLQ0b_+32mFAfIuUms6aaN!QX>%Ls> zl7DR4Z><>UpZ z!$hR^RF|L`M1uo19omz9H9Ze7YX#}W? z`m1bS2p3)x`x2qNX%E@dRmJiy6}Sb4aHuv(yiMTuO}E@uK{y<5-tcyjh2#u-h=mLK zFdrvcQm8U@Hzz2vPkGtGzEDq3e=37LrbAV%DBL3zwA9Cvuqv+S{izzkn#By~30+F< zz*;Or_$ov;naBuodMA(}Z*w8F%~e_;LsD@Gr_bzazbtDD-r6L!-5dREx$?}wl{L5( zm6!n*65%&L$P5E~KKHWa^H~)@YA|>24vzD%rZV*e0^97@t_Nx%-~*(7JCfpHdE7JM zFgegI_l>;d*pbK52lg&Z^3?nPW;f{C$o0ALJDV?f?W?^$)s{3-&M#N5Zd&br!tB6( z>1aea+K7(=s)2{1%6bTvtk(c?7xeYJA#HonwB1Si?_mQMS zxy;qE?wy^-+Tk;=X@iQD5EQ{f-KP6NEmd2g7FeO?@Y|rCo1LksQ-|F-1uWp1x zABAGa*8L3Y580iFszl0O^?jgnU9Wv73qOMgA^R6_ zeWrmxSQ)R!)}oNY{MlP^WkIOnEwg;|cu7RQ?vMAgVj{M#84XZe^tR^S^#Ue#ewr~3 zi>QN2)F3&m*0s_9y(cl1(N+&7ff3>?O7=?c*ioH}7hjaO4-GbFdmGBWJ#z$8UnI?C zsM3Y7eSaV2B6JNjn9j}6RgBYE_~0o}udw=SClOs3>=8Fv0c|HY2l@4DS}s*Wipr?FcT3Q`bS%fqK!Y@Xa<#9J1j0IeQYeDBR=X<$pZcJ9<&|`T!$H~G1;p2jigME z08r4xy!1o#S`+pe7FiMt1D%5&a=ob?UUlxr9U8qccwyGD1I;7~=kea6OTKMj(^Jmg z*8>8MlI+jrnJbIBY8zbcqlQXg1`H7pJDg%h`htL*;V98EMAWYuYQ~h?y z-J!~hm$ChjQWK{3AluccCH<;)>*4Sv?YL$`iZOe7#TZYa;{Cz7g zDy;X)4PV%(EzTYJif&XJfcscE5`VDWY0Cr0{#Z2m6w%Hh(v;^ll)~7GHY5-%~z7)0Ha4M@Z|Z z$l7h8(=}s&QQ;}lz8MvZ9LE#CR&f^MEU_P*`W4eS?@!gn9A#X+t8_%>;4-M(3y zNQxBHx2vDNcjjLvih-TrP3!v}a}qy)O!zM(@mPeH%a#4YdQ)4oc>CQ8%)>MN`k2Xuh_bGCMj*4;D^R3bu3+c@z zVpzC6JEZC^VGF5TV0x|!b|xDGZ{N~fV-~6Kx62ey{V_cQ&n~d8=e~kewVbuFk>_M0 zUQFpE$JwZ;Hl5a2ue}mFwz4}j6On2A#`HR-8daZb)^88%dAa9`tEC;bF7s}OFB!8^ zf!(KMHGFSFDNB2)c@5aK6m(9o|T!I!NJp5dva`S00cZNx8cV>y*dy*S4i?3#Y$9<0 z|7{SsNs2DMTm&!nLe}^|XT2w!5rFWsZsaX7zK3#KN^0z3vS<-w_{6hQ4gQIt>gPh# zllQFw0+LS1g)uU(m6#(_%$Z|$PezXu89wWU3bn>~C!m@LZ^RQ|Ph3^a>Q{+Tmz52y z`3Y^dC*EepUNR~XP$ngdh;z&dZkSSR<-+Rm68)vKV&F3tN$hkmLk+K1>|)?_gV8e+ zELKtmjtP9D$gN9>H_qO3qrZFf{I2R#E4%NBU*48KfwvHNHl|4KwJi$d3umOiok0Jt zN)6P85b#@hGrDw#yt;1$7OL+-*lnn*G4bz=vft~Uo)n@rO69S{lFMi?gK_^<6zj?T zneeH{Zx_odcwv9hznnfivRB`B?<}Ncz?+e&V)w0qWz@GEIIhCHI4SnlBdXdY^}?3+ zs!06Z2S{$Y20tI>6y1CSx7}`xv!6Kce%4K6JO>&H=m3ss#+OVG7H=NyY|)>n^|{~P z&Nvlne-aIgh^h4vZTLONsj`C3QjK$}PNdm5%PeBCHTN^pS8QOQL`OcyM2*q8ALyo0 z&TstoXM?#)Docm7ggj_6K{)9Q)lViVth=uaeCRCm)LtAf%{ULd7ThH#_BCJPQ5QKa zh5?=zwddTzMc1(jbj`Xv2P@e{1YWWAhUU>VI01OdT1%yL#Jgc*XzJXqycwAYrQDpbv zg2hieDcmER(DPw$jX-4UfZzN%DFCt8fCdhNwKJn>Xu@1Xp9)bB=)q5d?MNbDREO?< zYp0hCl~yrZVH(7BWTu$!{ykOLxt|TYJO^5&_z=uj22Y})`4F7LT?)F$DxZ`UA>5qH z{_rK!JhoXGN_yT)JQZND9KFE4TyDGdiG4 z+x@dHO6?bjXWx)F1P0;HDWbD)D~xH#1Ab*V_o4b+!Da68EwIHoPY~Y^ew8|?D)%4; z`{#=Um#LO$<#nmhelr9aXEtc3{(*-mcCZv#8%g)f+kL(OH^t1#KTmSC$kIS%yp2U$ z%VUB?F-P>f2`|ie0UNjMY#47C2ksJBZ-#CNB0m6*rg4&u{_&rTSrbw%G ztL(nocD8;hB4mWBW_33Zc(xsU1?|XLN+e5fI+7I07Br)fgpyb$4`^zAyj%Kd&ad-R zZ&mN!BD~>^?~kHM*Xwo8$(M8OFNYPb=<2vm91>MM*>&s(>)Dy*H*n_Oz}|F+VoL5& zs3dDUsd0*8H}jQ|td@-yww5cRjR|f>lWROz^!NYU2&=*1ZwGy3@J&Zhhu4#dYy5q! z%}sS`M`!` HzMHsVh6rnx%Kv@*3>Hr{2dzofEdvSgHwOHE#~qn&TfFu1Ltsg};9 zD{3e;yiY_|Q*7kf&!4$I1M9EqJ|{TeniO+eAye72ET8_NzvYnxtF225K?rj+_Wl)E ziPXgJ;U|RH7kmOilkdb(rGksE(FF3za{JUVt%xquNKOui-;dcR zSF*4VN&vaF3u%JNNYImGGg}*hwZxN9K7Dyz`D|H6vb9^j%sNJ}N&q?TBzv1C67MKtk@#HTh<2&= z$dx6<@mgS}-slM$u6n=>LCaO*_4QZn)OwVH^+oz{YFkV9O`z1>?=}YM8d>U%ZL_r% zO*b0$Z`rbwMF$C(w=Pe=K6?jdUPaTb8`*>IXMDCn!ZpHF%5!<|@}VWIw^nzabFvZ0 ze>Bx7BW`-Cqu%U-tGi~rW*jbuXUT{-Iiv2BYBK2HFb}OT>B%vZVzG8Qp*PT@c<0Bq z^ag7-;A`!+QS;SIBkkAfn8oI88ctBEEi6FFOyf!0mlZ zyKU7!Ps|IPH`se`cM=>}U`|L)iIj0&)&o83Ap#e#aPPlMu>R*DSX){3uKuK$2rv*32pA9$ z_C&{6%tW3BJRtXfzoLp%W$aPa(K_!YqX>H_Ci}^XIkt6A8V#gZ&=+8Y_(X~LYW-~T z!_S$bOuW~zq2hJjpTp@g7-(Fl_~|qnm5QWQUDfG}0#*Q(K|y{FljAq{>==^c3qJg> zomT_`Q8sQ--RyT~VU~L^525fnV$J5;w*=)u4!xFHKsx0~*+;NVSaptLiit!l@qL_3 z@GnkADA|wk!Y*Ecj-YxpU+k2!>4e2)wvC6i;oIG8q6YS3CZ-;($OJ0HV-w<~vEui6 zd13ePQ?*E@ooZG^;}pZa)VS9Q#b(VzUo3TE-I%aNQL>@D)qk#geaR&F7C5k%7Ud*+ zLp5iB2`ucuJ^NCq3*Lsdd{Uwt>l2gyim%OPHs&4RJJElR)kruWG&ix5E)~!1tXRQd zjK1=ucQM;*&c0VyeW-cl!1G{uem>It_8A+=rVxsyHg?>DNeS_W=9%fsto)0 z7lEs{_-!2w6tZ>*3e?9(FbHB(?>$hrk#6j@J43QeL9!*wP6R}x#kg=>=#sn2>}uv3 zUY>4mImTI{`(4;%hHfkyWFGH&Yh)yoNN&&LvVI%?vIqGEF^r!C`ne42Bv!B%*t=?p z`4+g2553&^O>8-wDJD)NO>nyH>Q(bbc?0N{#hb#A`WYgVF+awjEnvQ`kyRF6Pp!a!ps{eEN6>)o+njMfA zq0VWnVvWAeX+J~Vvhw|Hw9g%8OD)H0d`*y|6D_9%KiUtDYigK zHR{egZ~)+c5keRA2g2@F0)Y8}k=EJu5Pp#2d%Zspa=$#_@BNhFKqmn4KTWQO#%XB) z2#5}NDpCgkE7buR6t?cmkO2Vk{lQ%gHq!=1jCZajSR&Inaoy%H&4(fQ(f{#>H3s`Z zqZnuYK-v=!|EymZTwdV3>-&PGUcvxy5}8J!>S8D90pNdc^SY;m{{hHp{=ZR4OpAd1 z1<`Z<;C}(iG8F7zfV-0q`4@B_2|^?M7uyp;Y7W!;y2Y9*qz)iR%|!* zKq=^7`%P`|fYA>ajs&p&fcGfxivI+d&;Sx2&>I6F^8rV(0D1pLwaFd_;QB#5!UG6_ z{ZpeS0#JWYwMYQYAJiFgfYk?8fC`}f0kdfU%AkK!vs#UsGkOp6JHo%z237L^*nbfT3IX)~*?2*7LNtBn z_mpY*618!>p zct0SK9sn8a??5>x`ZQF%*FXx?zp(TS0lojq_iu@%$`}K1p#LjJ@vL&ERAy5EWoj4c zdyd)0fXKg7t%=SQ(DM&nm;us0#xTkP&;#-B0xH@8*go8bI|8o%PJkvq*LS7=El0{! z8+X9JQf`WH2W0;1z7pWt;!eh>0jtGuWp+M?-PUxb^-P95DI;v10&EkpF^;O#)Q>oq44}DFH;!+#QzzqEC9`i7E(UI@`LJA z1n~NxK9&NsKA=Vw;O0X>u@>O>|EKj__djXj)B_Md+|V@u3_f67BS8BDo;LxsKA>C+ zfaG7%DEp&ibG=`kL$Lo=FS4e*R)Fk>&}AC{`2#|90A@Z$XSEB!^8vAX-{-~OGJXyc z^EP|8vXx4_1RzhfX9R_5s_F+g0RD0}yYeh1-v4njN@N_zPMw|rz^5t<0yh8hNHl9J zr`~yH|Hm^J0&M-|#bvCJjKA{?|BvT14A}TvRg7mUZ#C~8^&tPoo!Y_lUNVs*fVPi_ zrN;m)AJA_c@UiGNRZReNKd4Ak0E7=nGz}R4fEP0Wlz(%^fYPlb^WDKuh*ban_km%Z z2ULFu9V`GCJ|NZ-ApQeZE(3`Fsd|{%?6$tEYC@%6EC9$F*Z$Z1^!opX^11=|`l0Ff z6Oj3FO^LPvV*l#LavJ~vic<96PH&=Yxz_i6_Hw_kx@4&}*YC>+S5wL^ARQF(KlU%D zy#y8n5Dma%$-?z)x|wqt%CNj37T9yyHVw936abiTcx2 z{Zk=<(Ss^;vf1naFrY>00a+7@9)f$ft*m%%qS zxp}d=mfJbG#`+B|8_2ID0bD3Fh|k{JGMloE8H!$FK;lZ1T^~#S zHDuzuz(97O?lGhG+^cqf!SbZqpU94+^UA#Q2uc4OYxBWBNRj)%eHl*q##w!PB{k<* z&8I?Nt!jepaD2*Gx1Z41j}h||J_8)W5&J2XmoH|uvSw+mdGb!Xu z$Q=D+Nl)>FmDuJC@6RI`0VP@i-00P_P>8e_!^S$L%QxIdER1e-$i=KFnh${Hig;Z; z*(-d;m>a|FEg`7|&PLjlA5a>UlS)|1MYHbVYWR`sL|0+ojd(6Z1O%kMWvdiP=W~%M z$3@*&*D>8bqkj&@;2cTuujX()cyQ@wkzp>eP*}^CcVgd;kOt@F01AzS@@YZw+TCdJ z&=UuLZ-GUR=Cj%PL6hFKYo9ys}c-6JK3M2NM$toqbtd9@Ct~H@0o3uzd|umj!T0qwv5{!=?rww=xUoaz4$R zz83O!n;*_%^VEI0N!Ute#ht-c--W52mNRE@Zf)wD4BA+iw*wB&@h>0yKM!N;$~kDg zwF+dcaN!$Qys`2xyG&yv9uFs&9bzcSh1oCS|Mbb=B7|h+z(Vr&h1a|7u{?BI=9Ca# z{{3TDXGyc#dE;SvsckT~F)=*_w`yfbD5v=78S&NCe9}X7$91S+1w6-9QXoBQPaW4&2 zwn+8m9!q53+s&0PAjDz3Br_`TI#7MG$5J9g@~ofye|232SX6D(URIFq?(SB)C8R+@ zkw!pLLRxA8L1~n52?1%56zP(bl#-P0l9Dd@&$9BqFZ%t<#UmsL=NoOXYqyMNds{tV$5IRg7UYXK6CH>XxJ@)4TWq>I19xvP;+W^oo!2gxa$ z!tadpmDUuf=FJti>n=xK^JS~gQ8h^|GCIQ{bbR+T$TKA7tv!TqW9$7v!zPlJZ#?20 zx=q)tN^DREk!AUhk%QF?yTVlUa_pRFPL5(CTnhxQ?_|-G9LLd&;{^e{v5#5V?B`wLeFtTayMfBJeiWdbZoV09GIyRh6zGH! zFXiEab{CD?XSM)-MT!>NR6GL8%1$~+grUdGMW<^2#QnXTMmFAzRU5D-gAkOWxHF_c z+1FH))N3XXvFsBWPop??SgZs%a?AQ2rsz5ilS>7ir;RZm+xe3l3w;WLw|a(?5Ra6y z#zCw#Eh7|t2(vRc4Q_0^G@}BEdqPx9h|HZ|S;5Ttfx3&$8;mV1G--$oY+vyp2qVi) z3tvFyT0aW6yL-#%n2G7#I7YsjMQhGO(t;+wg+KnvH__37tF7uY^A^KeiO6Pv7ZXWF zAQ-j#ZXupu3Nj)EJu}CRkM4+;2>#}wpBRJ19#E@M(%IgXN^m=w{eM>c5r4%K7LKR^wx9&1!TJ9kUnvd*2lDLtG#SXZveofTK}4Tf3Vt;V=0M~zq7w8@^urv0Kc>L+Q%6<=?@SCUmdq9qHos2W^Z8~sWDZiuG6rkOKFSGEok{+N>} zZ1n|Bol%dhi*bBq|2w0gyWXVonWkQ0bdi{P`#n^0T_*&V-HTRv-ByhHi|Ne1P9NQ= zBn}^J@wc4#srliANKy2VzLOtY+QUV^|NRx?f<|@>!4D(`wH{kF2B`k~0=;{AK5KXlzA#XK5qIJ5rmp#^yIdd=t-}t zr9gb|m)#`wmX!h-mc!5Y>bP=ObJ|^%b2a(~=hUN6? z5+p|}N`0J2UzX0vyRVSNA6%6~ti2a+iL5_60i)FLK14L#HWg7m=_FExG1hogb8S-xsr#Hs0fen2+Lz zFieCXc8)$__vN<9qy1i~^D;%c8NTf?~cp2{2k*!dw+hP*(z4Z7A0OX((y zgVH?>3#)n8EZ)unmW_(N+BPDH*NFpt{Vso;Q8jA+2yIaktyhPhL(gj7(2F&hq}Gt+ zHX8j=9ILb~j_$Z1<_BWvnw)629pljCMylA>Z_2TXtcYEZLiSly;uOlt%y6QAq#!4- z*uN*bHw8vsmqk{2l;}9`YV?$_#Ltu{kO*aZ1-$wtg(nZ6W-OMkji8ek;`ZYmpYecW z76Vc2?2kzmC368K-t47~5fMhP&+fe{H=fuIF3fV8{l49rTfHs%YdOmIWj;?j$E^@k z)P^?;;aJQH=B7?}FP|u@S)Q(gBQjiBW4CZE(m!qae-!>$%EI^%N-}z0DSR@ax>`Zi=c&i^z%0tdF+6Chg=?UHP*9 zrxp8!`sCE^wjPp&wdG&j3iNBpy(N4F1-e$msTiMY{|^LyzJ_6yIAU%&iRQ!`KfyZk&M029krLvSPTXEf*Z*%UfH#JV`?WnlqU$1f2=#i6Y9757$J+BKelj2rOW9R zbEc&Y_=Le}t<23P7xxz4hjs4r26fcxPsp8e9$=0tW7MzDeW~7kIg`EHG`=O=WF_gz zC&0+eP`}nKTutoN;EAjUVW$xqrYR?L7C3#^FEC`Sjr)r*J&nqiAk`~9N57e||9)l| z^oa(`qrx~I2Trn=GIkgdvY{91TCqGTQc=}22`E0Yv(h<{HW{YhN#-i<(e>R6T-n)5 zyK{;vvN4^OA+2yiKsh(`Btlj%_^k4HY&Ak4Ed<1uz;1+;+B()58iI z#L9e46{+zzHENFi=S&AY`38LXoRsLx?Q~R)Qp`#pSJ(Q5CQ)(OTjzO?=gXu6&s(r2 zJp6h%QO|DnTn2c>+CvD&c$f%nCX%iNuekm~L@{rxbB(7Zy4|w^X8JZ#^m})Lw6ixA zKjLW`&n$Rs^s&Osov+$cLc|e}6vPAi>Wj&GKY8rZ z!1p&#c&RYEgB1*Yd|OR3-iF}L$tH%J?bUW}y&k!vc>s+$2eO+X2^o(Tco>?+?{9l; zB8&Axs>Z@4@-_0w%@xpcUfiyAtlBfOau!RIr6e8X2@6yPGFoEARo5wwa81{ycgzmn-?k?roB*d$EtohVYBVe#3)XKmq6{f(qzG{NZy@7pCIkVu=pHJ z8hTe;GE2Fx?v#!Iviqir)6=5du)Aj=V|C10IM?}We*4KMH(oXPVOOvTw}K9ErPwc=S& zidm4R^n@#tREa@HBnc;9=Kl6Ky2UNO$4&kGG|%fSbp*)2FG70bzt`A5af|TNVx3SK z`e;!PDg9Me>G@oqD&BaualVuK#cKM}SZZ`GF24UsopIFiu$QS{*VeDPdapUp@^~Nz2WMxQ9gEzfmE(?2&j0h&aoBwjm15)3T1AJH0~nQ-#hH7yU&qb5%?*E~e*Os)#jPtO+VH z1Qk56tWXSd$r~SKw}cohmQUOeo+O75h)dC+ovUB4ZyQ63D(EBx4fQSpva~bpTE}B@ zf3%1)@AJgvCB0JT?$)12;pwNJ4Oi0~2^MP*QbJkOF^>OG-!-MZSC0$Hv$_;j!2>0)>FMBn*!%ei1=hxZ4;im$x@*Z;}wF3 z%;mGy_1>jo&(}G{Soa(U8GTL{2})&*zGQw)ojh8Pswa%O@g{JtZQ%y*Y>xss3`F@3kLRC-OUOe>*iS22{Q{Ct+y<)74ug@z5ANZA+dab3-9l*8 zaWB9|-UDS2oRL%}Zs-QBukTn z^k~GG&uu)z-9-^6wB-j{V38%QMMd;$e>aPX7!A{s#I?gbhL^oJQ0e+A+(v&vGapm6 zU6d()FLEB61R(|pSg%4_h6sGNFqGTMlIB{YWHEj(OIeD*4%-<$sDKmS-6|xV(fSO zP|}CvY7{A+h zWc^}JWcE`^IFrcOO!FEUM-w}y zM5b6jFhJuu+TLVyB<=~Zn;V5Y=s$k~ovYG5_a5;&Bnd)B3D`aaAFP>;oNDo_r9X^L z!A^C2&M9=?a~tEefN*~igy)`M$!TyVNbD8jPogRByWCA>J9N^KE>*Xgr5DlHTg54? z<|6AVQd)C@zD1P>#aB(uopYXqX`qpUZ!g}eZE+P?lPX|J6!Gl+Mj4n?W#8;9o-7;C z67}Pa@{GIO3Gu-c)1$X{Y#N(*K1P7-#bwJ}?nd2(A_;t)0(UjvK89c^-!8O9HkI7* zezBF#YtGS!ECWd{8V)pw2gizWBEEXpXf{=8fGH?;}K|(FZS9<`K#1gr~SHKaC%-%|Tw4{3Je4y>*QH3*SP; ze&h|Q%wZH+QxY~O6BTb3Tcl0$NQPDnl~UP>@=IHF)1f&*jpZ9+$ZecBeE{O1PekB!uHPsKw01+@@}^lZljdQMTlhomm)jO_AiDe4V;C;C=l z@kr>Apjex=wRjw1^b+t5Y%6hy){Th;J7-e)qvL2ZtQs@uwo7J5vjAc3&|BxPhN`h` z20jUh;_4~`#T6Mvsb?a17b=hPy{=7nJ@93rDeTXkxIr*O9>xYRT1OyT_oqb0^mvh4=+% zz^1FCLOXYPxZN&0yPZ?dWTkE3C$~pso_>Xb2sq@8q)>x>rnS{c`;gTeF)X&DfJnA6 zcgLn9THJ5Qu_smWkOo6%!KTF#JYuVkpCp!6l=D8;}#*sPCoU_w_!R<5_oBi)uW|6gu4f~A9O_S<4bMw zqqrBTDL+W8+B58~mMX56Z_TgRlb^P+ciOYBBP<-Ekf0)_;4!X}`Cv(2E1{|V0>{{! zE9Ysug{cRl)t(s5%DC06%C93*wbXIxwneOs67;A}3<%X-;c7Ay;%!EBR$^cBZwQfL zT+30>VYPY7LK;2B2n1@ zco0+p{f&t9Z^2shfqN*Ph?2wmS|#hAy7$G62mRd&=;mJAwVgb=eG$glwOObWtn%__ zvv|_j(vLaF+GF5dwzy6dP@Vh@e8Y5UTtQmYlExdMF}pOuwLvGEv$KBf`e?bA7I7Odw#RI-TTMt#LCx$wNSISp zors=rEg^dwQOqLHO{%{_PGfj-QXw$;w7v{vwqd*m`E-*qP;RU%yP7Lz` zHv&W0Drnx}xm?cI`SR(ky>!K!efU#4kB&=Tts5Gb%S8jhJtUd3+(6}FW4NS?vlH4riT0FR%fd& z+7YNCY=k+Vcu+YjiQAN(7=Q=02RP3|9D1iOg0?Kvmp2$QG|}!W#D+g<%Sd`Eddwl# zU{t~GvD>EXB{n{sAn?g#M*ovHsXmhxkuCV^8;Gn(M6LB(jcH-6GgPrU)07V<(0)l} zwlB7J`V}mD$x9c5<%{niC6x0eHBLP-tOAmct+I`^-3?1S8l(zrSQoi0P)F6tAkTFr zpO=TC&!3Le_U@e$pD5Ri?d_~RoXLFe(MR)M7-{+RxmeI~sVY%*vpX(ks9xtqWTCO- ziX6oC*vsz?Mv#=zy28T;QSON0KQUd&;$A#hx`m9}tU=++Tc#U_je~YE$}UjOnotwL zQu)k}SEosFk|5BMN`aBJ=ewd&H(|z5*O}*B6^oQasp>M#elzagv`h2U&@P>vwR|MY zt)&mdK0^*J^>4kKbIgWuG?kzsdNa-SaX(xjd7+Yreb|*!>@Hj z4R{rk?j|HL61k~RIGjJ&_m>JbDwwz}P5s;n!7qLi0(-p2Lv z{Gp!2%x3*@68GVUlebR@1Ru8$vlRd6!9(~^)*vb=!JS2DcP76pL=IOg6c}o0{{Yp=_L*GvEW;4G)#e;j!9Oe}yt`B- zM9uB=^c~M$8^+`cSM!e_(zg_}EeFK8d+Hz62F#dyDug9#RRpxLwfn6q%8hz*rLOp& ztd{+pc5I$3_?5vx%pbKkdP8RL&J%kzNOaf({lyF&;Q~@7#5X*iQi?Lb30$GOka$`H z=}bREt9{kP(X1oN4ZPUN9OtIDKktWf*PchH(fi?u+XBIOl0}?A#J&zlaqA}%YlLgE zdmz@@DxdFFV{*DI3t zc;)NHOc>L*v24hA88gRQ_67P3zm1Mfd?A*dW$U^-!{(>695a&U{3T+%XW>jO*0B*OP(1CbUcjkhEc$L=7G<$02JZ_~?7 zk9$Lo*Ne>vY3ls<+t}Af5FGVxKr}|!{nLJe#BVSN51WAyXllxY7sSt$zb-n}4tFj7 z$b8n;-rG=rKhRXld~3by{*BF_b;5aKX_RdROZLrkWW;9fTRGgR__C$L zr}|;36c}yl?im8+7lr&~b}pLq_sXh*iy5j5bo!9b#+NSG&%2T!1W!q`har0l0x7zw zS@;i0Q#n5Qgc zm8zdzP@i#GRexB{zK=X&ZiaA=}=NC&+qQF|AVVK+N_M^e@ClJTuh2kiGcH z0`YWgQf+@x%i=ng@~mVvA%RwZXzt047?bq?{6I>iPQPE}Y%7bR3TL;{GSVq$ zS;wIAArID8#woag;p7+4-T(d-JE3akJOkTy1?!wqn? zPgafSJG2#1Hj*`w_U7|Kwr;*vr>h^Pv_|y9D4Osz5U(U7e5MgDW(bX9HNe#x(@$WI zNi+1xWcINZkNJqb5FWw4L7;m!X!jA>!kJOB*zzrB(QOA z{wgf`QG@mwbT|D;az6wssqb(gAD3u~E$O98Lev;%S|b&mDW}Oir+2-$i+8&1@#cWF zPzRZ{`NNhC@+Qi#OuN)Ip`=w%OhH+^Nz8K_*O5vR86DOICY<-_g=;JUZE^6g< z4;Ok`zEfj7nVuN+u5Ub$5jiL@JMe=Y6;sFbSR04C+{HqyUaJH|iY1P;1Z&_(D0?}Q z+||pY?7L|loB2)5p`|kHvn_D@Sb}k2ucxRJYqK!F5No`)o;Jv`*DIP&W5Ko$w``Mc z?``_B#joiss9A$({r$M}xXPNKFx%ihP&ky2Zkdkm} z|Bk;f2r=ay{g?054)Y<&tItM_gRpwGn7-}yvU6bRqQp>(`v@L_W~gVV7pTWv6aCjW z2F{KeHpeb(o?L8*wPUD(h^pE;q8KG_j5&`L=>4KBdvg-Gv(Li>yb$Ng$XkHI4z z&?PJAFYIK-$u@_sCB*fSY;Prye4HLU?A`ME;8|ehPV;`cUmdTP`XZ&7 zlajr!TxxayiH_@2r1!3JMMT^Nz2iz#wI~C%!|}Y}y+;+n5QJVsYQbZAhhOo~t0QkZ}ChgzJyU z1%U{!Q~>{$`lq5)|0~b@uhZ9xBgy_$#$EMW8N;{3_0xc<_+}L0u8W{7*Ck~G;fN2ge>96$xZo6a#V1o%RQ{JG7 z*kCd+Ry*_~4wxD`gbgNyWnn`%uz{gA?|`GMIADA@SqcXrzv#S#W9pmGpq_YOjLRN- z^#p@)fb=^vU=$dx^@!9Bqu;t5Cz(cLeouf^g#-ezUSsKe1?-}ZiE71wa^Zq8;N3~! z0^O1H0unZOPq4B6H@W-ID7^2BX>4bPc60u=X_NFq6&3|p7Vh;ZAPfLHsi3rYVEjw# z`E>3Zz>*$K0Oob;F~42L>nR?X5N=Z_9$*vs;3e9O2PT4}lQ8t&&?QQQe-$oHd;rxQ zhM_T0J*ZFze84l<8h}DzlCqIY$$Bq3v=AMz`OnoscP&DvBT!s11kxDJK6GdjF+hg} zBhaa75)lY_0@j~~i;qHI6M!k8`UJq7fKfRL=4YjWY{q-Q|F~WE@%cE63Lhb`<@QlK zP*Rf)ERO3eht=5?*LeNk-*qq z57`DOjC$)*;Z3rSBdCDFShPP`j1({yCA5zeOn6BJa}qqm1gMFBQ5~t^R64S&H6uy} zSpS&@4!isVN5EinIyn60A9xxDPcpz^67nl0yyO5(#{!3K0Ql03{tq5s_<;ow2Aqc1 z{ZeOx?vMi(*IrRKaA@T@0E^?$|D=B5gi+xkXefzGqXbyczgT=cFc#n(1(@Kn@16YD zQ-lCj{IBrG+=BOALUCn%7X@Jb8Xp{{;Y2`%Vp3iWIVB|^ixh;*9#CF2ae%>UB5?Tq zKX4-q_7Q`{fdYC=`FngnZSJg_198y6`_s8Nai~8P5C;{i-y!>_{NXRNMeo3<@HqTi z0`aH9BN-Tr3d${pfC4?H`n}l(F5K0w0Vdepzvcs$Je)5>eRbyOQv)ubE5cm>DkjjN z$<$ZDD1gbJ%5WJ_Gl2%(`bTyFlS!ySacKd6glMh;r9lJ0Od4?5KoJ4;uk}nNs+1H7 zj1&QojBtIH6l=qpQ9&nZeh=!h^;jAiKvn)LI(|AZDm*$@AZh&fx^Cy+s0PbZ!?bR}0rv*IWG={_UbXTxA9RLrT!eMlMASMvHt9V7h zWP}!QnUWC#8qS}W4bWK_h1D8P0V+YRQ!dY=%e|J=7EVz!L-@}T1FI162L{#~7})Dq z9Y&XYQs^r)1T1I={qG|Q>T7xTfAi_=VEQllh)_I+-)93m18@Q?*~3L7mO!0?9mAD# zJ`8~6{*G{2@lymuXgR~xsQ1ETcisLY^R`Do{o8w5Mu6x0>>nN`bd>G4sW*+e^Z&Q0 zZa#4Sd!X@uws{c<90uxIu;7OIy zAC6`KDEvUEV*+ga5&(x!J%ItfV7iI{HZvg02!hMxnXj5Wg27e6aCp-X0qw6zkBMYD zNr?yosr_}}&xXUBtpnOFcd}h|Oqy_jnoIYm2U4$LRQROF_;7RQHgMpp0@L97Ou%{r zW6?lkSgtO8KCl4h1-^y%Gsp7V{ZkgeeZDj}%Ex-;iyA9HZb^s3FaCkw!QkO6IEw^lw08HSXhvC}gnrbAu^Ibh9Kj;kIgIRI-HplMuSS}0}Z|JYND$?d<*0iAvW z_BN(#ol7^uHQICjw)5Y5ClH9`8r7-^PHp16iqZrp;OSB`9Hy=Xju;xQE1P(@0NF_k zT=s9}@kuwF z3KUntuQ&cFs{*{fz6OYU;8dW>3K`nPeP#1FHxNf==r%79N1(_G8A`=-CF0@%j1lgG zH?!fnS~~tPSfL*d10`1QCHhv~tbGTFoyuPWDESRe#pk`+8aa3Y4X%T5xUd_Dp(F2A zr+zS5#t>Xq3pBZmfa_A0d=H@g(O+&Mj=-q5FImpJOH{!?q#clebiQljNH_{((L&Yx zfNAS^>z~eU0i7+5!DZ9~z`mvcyK{lX{NGZqKVyC}4(AixzPeuExDBWopM=BKx32=_ z2ZJ%E;cy+mzEn&yZgepP7^x3ThwJy4=`+xs+h9TXOyJ-H8n?~C8q>TPhlPmmAFE-a z)`d$E^w$Ie%3oWnWRoYg7|_QKFc{aT-0mX084mx|lw;!uw7D+B;lgPk29EqdPnS#H z4<;jAh0D}tuZ~?XQ6#<=USUm}&EpEcM?UOjSAUJF<7Q@BH_g;_tlAfBP);PddHSBK}`3Itp@fDu1fD zmK*x72H@Kr!Luu?fmG4!Up2w{zLqw6tzjg*Aa(5L5^d5S-L)bTE9tH)+OZjTvQd z>qBFGJ&fFh1vi8RE@Z|fAljD5W>W^W&RM4F7sC~K^8{cpQkCgaco*ecy!G@lx568A zGDMSXF81&Urd|BUK#Ynfh^N4%CBPUNetw>$LM{l46Q=c#Bza198|B&WNX~e>P7$bP zF~{LwkOghKM?VqiXlt8*-xRQFF-FjXgH-L!5nS3=!=VH)pPzsC2^Mn^`mZ|I((oqH zl>;V-5*X676)VRt&XELl`(DJsK8>ZZcHW#LV($KOce0FoU+?6uOx+Er$?}q$zOSLZ zRenFC&vJq4CCV9z5mFE>G$XD_db!cHQW1QP*4ECT=KST(5JT$)ELC_6d`IQZMc*Zx zgB*j)K@jRVD~1aEOdwdPh?(gp-x}7_1hx7Kibn-+92Z9>>Nw)7@LS*SmbV`BKBGDc z0e3|~GT6SianeM3C41hkVO?Xmm2SLD3B1LW369r>2TgTc^BtJUNQ)DEm@x9How4J> za(b(cZI65)H9Nlt9Ee>9vXF16rj`T)YqiKW7?VN}pPVYV{x%{rV~Hk6kWwZwdYl2m zmvzNggmv@IZ9;+q$5SfD1I{R31zMbAUC}<+bkZNp$_u!!0iOL1jTJu@X}hN2kgU%N zZS0Ws_sG1;`c{iZ;Qzl&aIi4be5kMJi~E-t^{ims7~uar_4inI@c*Nje$xd*`tKS# z7Da3~Mi7vtmZV8?X7KRj{3K8c9^lT03P)aYWdD}AWrWGiua|4e4?(}sDS4>C&=I>M zdT4|mNngRj2`hScdxE<)CW#%aEQx$<&eSm|nJY;t6Y52cVBg6r3vv$ranGPyK4@u# zIos6fXr-Rm?|Em1ro%T)V(I3{>Xij2wtyZ!@oa^=E0&7qk7I&dB7d5E9YB&E9eBpw zogQ1aZJZ93faTgTnU4cBCY z!6XaplY8yYQ-oqGg7EO_0)FV3wcd9APTWH-D_c|x_azd2ucZjendeJ~;qLGkdo0Ag zF&8g3J}lBHk9phQpD}QUpt3|r}++%(2znDTX)4`r4!K96=y)Bwp^l{8kY6Zn(#bN&P1C@j@72qPXwK3iBg^r=jNdWy5h{ z9P;x2SaAwHBDye$2;^|5>&EWAm}-8<7Vk!=RS5Qcr(m*U9AT%Yd;2DZ1z>Fq?u6O$ zmM+-hK3vmw=`&0GR049I$2PVeB19|@{w&S$7HNKOjj3A!n>B?G7sN-zBKcHRP-EUz zfH%Fq?H4~wE56JFH=sr2H3e53HW2iFjE+NB{@~IHqZgU~eDP)z9|ewK*_re*gqTm;}VH}`j_r5SF83f|$&24{_&gl{vPvR%ms%A*Wf zCtjv;;#NuS40=wPaL~2FUNfVIdP%U%IN=guP1ri5RmM3Bhk4%#Ej;kWGR8@AQgCvw z?p%1yl`O2l!~vF8gg-v?ClE~eu#_{u<*1wrVscJg*+U(e>A56swh!y__5~uCz76;0 zk$Y3x0L=cT(9=VmCt$F$zf$#BY$0ryhxy+X<}!YF5>f>@h8`T#XlL@k3^Fclf5RPG z5VwofUr8Kb9HOQ)a>RHCr5F*FfSvSloOcf#^np^wLjlZF)9`=qoRgW(#f|n%CmE+m z_Qz@R$`5lqG96tw!hLYazV9Me=ij3hg)L$T_b^&OsHKh%j>I>MAn?JpeFKxDA9@$y zM1%3bjbWQal-y?S?zcK7RrLs+nVeKZ8Qy^?0i)l{$!Z4w9HM#lfRrYL!rrqAW^d0T zI*QygkOr1vmP1}JT^8sp5utjS_;2l!qYFTpkF$dFZ_#PmY#pkV=q;}j`H!<8BG-)@ zn{moJ;nX>vh40imWN@t*%wxHQBZ7??k=HjWjD^f;MXv^!KO{bL(C3q;`zh1?Fnyh1 zWXJ^$HZKp2J7#WUNQ-vH0~6Nz&fZhRh}?|T-OE4T=viFC7W zF3RurkOiNT3~KR?jD)|1Iq;2bg=5lP<4f+0(&f@su=wBkt(%0;z?2FWSkvGdY5Afj zRf9oQ=9AUG5BvQR)~;blPQXPOn~kT=PfNyGiyJrUC|s4bFW=;h;PDM2>BO&@|d_Zi`BGth7_-LU+w!DOMF z^xOTW*kP^xVvY_?4DWlnjd(N{X1tk;bBZ2re40Bzdx$cy-&-bSV>q~K`~I09CjcM| z_U%c;T&{aOT`l2&3R+7%=WNMa&wPAlvxLT_M;mkr4ZvK3qE4!r0|@fPBJ6mCqK^{N z!R$d+qpC*fEF4MoaYll@$d=*HPAmkwLms30<}V0B`J@Ho&?i*N`@pjyB4o@+H~^}VX2J7=Ul|R)y^|rrc+lp zztW(=bu0g0JINn=d^sJq;oUxpV;f>AhX&!$ss7D*44q1sAM0_Z6>u_5b|`D7z_u17 zAjj2FF7Oj#e`Z5#0wP>~;1(1q43IjppgTbFeZ}0V4v@#(Ww?CvvJ5SpX33CnS%*o- z{>smL{MCh*l;Uua>oLP-fRTj$l0OZGaxweqWl~d>ioU~)l^Qht z3eH#KVqD3W(0?sM7V zgX-`nv#zeJ?0An^hqc~jtYG|TM35c%)3|KaNc;MCslOAIZt^4A_kH%|C4YYm_$t=_ zD?KsyH-t#`7O3C%=`8if3t-PB6p~`y2$TNPd}#VCgQGm#rpl5T`KKsU#Mg-$y3aJR zoN~pIeII1F>Dj&t+G(^2d4*QxymIe`q5@;Nl;(S_%44Iq3fxwisO??tfjv||tPVdG zpE05)PLEtPVR-Pnp~PiFtpLZDp?-8l*N2MPMJ^%UHgKXQiCHwedi%@ml6)(T_0Ddt ziMt_UPy$@I9zIGJ;VIqp1p}E~(|j+1_kPE0`Z$Yy*=cGs!fi1qj`vDL26rDzJHob_ zQB$jFEQ(&{mnQ97{=l-hsxm*Ry@F20{4>E_Jt)t{EvzEzS{+*Wj9lPEhx~YAS62W; zF1b-zAz-H)SDcf!gNUJxkCk&_i2Ug&^RTf0_5+iqA(4CHA~IOQ<&TVzkqfyOL=(6I3b{QJTTibgWURb#-o#+7-@6lS)JM$>t7N5d=AAuw%lZ*z z^>-;=u6nIZP927@VHL$Jm~g5B^Vv2@tBZ~92H-J;rn2(~HA7yVz`TqJa`opgoo*IZ>yET*LxMR_DjndEA z*LhbEUe)Vs=PVl)ug;qr8-DQ*WJ~f%R{ZVlisKP+q#fD zU(o7mZuR{l8PBz#RTi8uNauOi4c*PsJQfo&b;ORp*4mSf9bQ5}RhnJ4hHp1I(cfeODPkmMYD6LcLI=_W-JY#O1Mm_^UiO+ne~Kr3l9_{eEkrWGLeCb zCbx=sVuTJgq>!t$TSi*})t$R^rf8qPsK61~n#^&PzBj{qMdlunPScZ<(6Gtz6^}^J{@Gv;fHe4dP|$qI)n(D3yHXMfIq`h+UBZCHkogM4TpnevQlm;g|U1_9u# z<|n#P8Ry*q+VK}r_s8A>aW~;@sNsmNT+YJpSXokqxOxjldTs)W{*H5x)Hty9$P;Vs z9$!WzL>iu+#*>0socDP3;wizH@)E*NDTB!z;>Oc^VkSwmd7+Q!51*kWw3?mcE)B40>47?jgZ<(zv5W2ej8R)%P& zxC47+_&SO}oaTTL1)woJ54$OB`N}f_K{&2#--@Wi-X!%AQd%)_)2nWuTJB)kV;<7h zgRE|i@Zc!KAHk8+kH)PGzG{Vf+!Kda_kcxCky`-ObRIY;j?0nTJNDgHRSCRJ1ob#K z9B-P(G&cs%+9&bn3Q6AJ0d(3oA2p-&roWR6(H@PM@3Na~<$(J__bA+%PxMut`Iufq zfmiQCoA|O@5{H|o*;)M`uDZDJfp4=`;GzSC5^=P>e|}gL84+5x%c7oLmq!|MK0qKB z&$%RrD8W_MaH9$tZ%iH}_k?rF7Uy=}l268Van_w6Qr8*F&CA1f<0d??Jwv>jSte(w ziY(1Y{+_`Ytp#Yh8}kPHR=Dx7f|6?chsdxu=6B;bMR8{5cbSVEO~nOlVD452U$lbu z=v~KT=7MqHcPo0K_xH~88On_+1tCz6mFp2xn_Jq0xde!cyrFy_I!2mVB5{gjofdsp zB*Jz7{F*fe=PnE0EISn}JJq%)B(mBnKgqL>jbuXLYBv$Im7WMyW$&ORx#25PxGr!D z-_@#^U-3J6>YwYpZoyIm5(qIelZd7o?Iv^AG0Mu?*H*HycW7IwYbI6+uy-NPb6Ot> zJy}B^AOJk=QWxOzT>WCdh73;g6mt!C6$0Br^BV*oJeNigEGm*}PBG|l@`?*Yed5~{ zs1YQ69kS_kgaDEiykhvm(IqCByo)VG^RWI5+QN+`xizGCQ#2WsO=1YYT$1>U)lxCPO*{Q9NXeIjg$`HpNgJ%yid_~uy=wiH zrZ22_!&WB;e%m@UwGrEhbwl^4FWD!kq}C4MowW^j@loG?*6X6%kZc5(|J?)vHktnA zW(Bx%gs|($WwU>tBAjrGkk%3R%~jcBp2GCm(fGUUsj7lC!4k$Re4Y_MRK4|l-{RkU zmcSgJmgZxF6VyKaOc?Yi6dNco#YrT2?W%eELnFUWI3Bm-s5p~v98@ODstxfTOOR-ArQq+BgwK$gk6p}zy3oeA&ir)DAsi~$dBU~BjS+sghkk$xz3Z#;JT$Y>2Aj#Ls6?v1fv`_Myqt{8#h=;p)I>+9 zM@ekdq<%Ho1%E_XS;>&dq*(AwC(e##omuygsvI}z-lBC6ayk6q3ytPS3XvLrE#~r8 zeu`SH%uiMPB|()!O5#Q5vBNgbY#xn@w__S#kKj*9n!%gIL#-Ifsh?G+9WDa!T2#eS zt(SWuQxeNfhwAAJW}mgioRD_c#X=l7^2d%}SH%YOxhnL)?}X8ofRqEWLr{w;3F*2b zEIJ96occj*LT3h_MkgCcwe24ze?<6jnmiZR=xyv6y?s60Ad`OnZb|@s(k!9G>BMld z7hPynjgwp_xNJGYnT)tRgL4L=@a1w9W-`)sioPW~*#9!$rYf?T*P()Btfki$*r}HQ zJ+{tl&X!!Q`0l{ zB}($1D?R&y@8Hw!k50kFed)wKamU2{X+xTyRfdv|QHYqF0v!$I1zf+jSD%t+o04ap zl2e(|-FK7HxoE6AuY?~e^q!5)*3qEF+*3I9KUtp`BTF&*{P)d454$>!p9{^#*#{_@5#oY6W z2k1w|ejp`|I_Fz=4a!Yq7Vgk)_?RiIYnE)j`#$I_rjRC%+@iihj`m0s=eRZllD%A7?%e>I!k@VuO{$sqn%{;KdZdv$ zZTI+UcYwvWA)*FA=N)>1B^HCZX?K%3ZWTF_M?qb0W??U6G(+b)1%^@Np~OFqjg=dt zlD2W0tZ~~&+&aMNRd7M{iCBO~(i@{F7ycTCc1Qf9v~TkpuaScY<;EIVJdK1O2Na z&!bGu?&AczR9m^R(3(qU;kH3~CM8a+Juc5YZb+wlxO3sj!u4%%fyTh)(p#2pcS56P z>p((lr509@PQ79_cl-Ib*25rK+!(&b$bM5Pq-2LG5!y%+X1jfhSzUuI>O+F;no$rx zoVfOLFM=)*y&ZtdUlSN+ejSh7bw3Uf%oDXeRjCzWWuxZ#v$8^*|idCZ@pOOZinXz6m;bgjt%F1*0HY4vKOU0Rs*u}aF zwD=Ipz!ewHEg+HGtrf31r=^iTv+j(6Y%D}N!TlW=baWA=vK;N`6fO{TD4W@rzklBG zNUtsTE`ZhFE(qx4w=d!#B}knW{t!{366%FBmB;Y;y(T9e&=n<=3H_z!k9H3q`i?{c z`PkR8-;~x6glw1Uur{=4Gn7R^5LmG0gdJI@C`6W{b+o|&2DJ|FpCOO9#8LBaBIO!n&h(6Ov2E=@SJjr3FV zB#*co^*LcRO~*n9Y+T;`j<$0KIHq7oZuEe1CBsa(HuJ1RyUaf$j+t_aMke}JoS*0F zb2XwiF8F5R1sNf$X%6qW$EXLt`oJRgT5UD;i0W`$Agei@WbzMv?U9g^KW(3C+`H(( zE1%VSzGc!62mjdefc&+-y(D6{JYVg>7#=K}UmxjJqO;gIT5q1Vz=$nyb){P zA^GTogq}Vlm=;!hKS-te&q7B9odmu0pIkwfZ1FIL&EGNOtH#M2l4la+IX{EVbSSmq zMSp0MUU?~3YlKu`w?0wbGY`M!_3Z{Dv~ofR>w~P@7u+C1=i6Mr8V8Q)D*Rv+vCZr{ zjkt0}QeAChy0hL=26%Hn^IDSefH7dKhDEq$4!yBTox%W2=S;RIuTB@1d*?v_mRsqE zB$)hl(+eu~Z!E?4Mjq4_VubG5fS$8#GFJzROK|$Z#-dA46ODGHX#(huOPXfT9VfdX z(4CufU1&oIgdtGZb*LJtraAu$7hFSLgzbg4&P%Yxb9!N>YzjR{kf;Y*BrXL=%vo2sInApw`}yJvRfwo_i~XxZ`VV zO1B`LzRV6jm*5YB#c-E;U`JKpOM}G(b)6uFYn558xpoe&OVDqreNCy>P&dbQ4Ty%C z6HtnlDw`muOSy7>t_#I9ZuP*c>E0Y#rKM+i`NE6iyQq1wI;`23Z{E4ujxE-DmovDg09tZ?-8Z6OwzB$P7zDQQQ?1B!mOaAu)6%wH>k;8dy({{KY| zSf=iT$dv2b;M5~I>0bMlNDpw%Q5Yr#56`|aZ`|3gVjYsg19((GYV3{968-v?a*fLC z-0s>JqNg1{0OSh7BNZ8RGY4y14-IWM3+0MK3uV_g;Ag2sheggHyaD!?y%2vDxbacp z2XCRm>+ZArm!DqXPi)f7s6C_jSamm7e)W|y{|lL#$g#cJ-KDH;F#}=+VP_v0OZn7A zA-H7%*Wcjlo845vx=;6onI3+d9@f^cjn4W{!MZ2cmDG;&ydHktr?HPxQe$ zuW4rzUG(crjUXt2BhL(EL2T3?&#mDdt|0gMEVM9QN&{&ILj8kr@)D>By%pYE4X$o!%6g1GPO zP^qDJWn@p%4NcyOFlB2QH__^+j$NFF4BT}n=dbBrWq3GuphfkZLa1Yhh#5Xy zp;YKELBpB7?CG4OY3lQej3w1OE?Yvi*_ z#qjGPn7IRF%*h#u8dn0Gk%`-AqYV`0}VLk63DMg;>3H zU`ESb(`QWsF|jHejw#LsjILn46$+qY@Gvnu2@3$I|FM_7`!>-ZvumD$J9EBJ9`(Ip zybVG+4Gx=L+}|>s);fGonnefx74RWdtD5@)SzGOSl^5<|XSsgfk_Mpj(f+|Gq*Ug_sOCMmj7n7??=%fg3;)ljU&(#3UkKm+v~vhwG=*!mqeY>O*epJ`muCUc zPS`Ix!-wPbq5fniIxSR0xBjqRK@l*~-A5R?4Xd|<)arRow=NP4iE_^Aw;>l+HlCm2Du&VktAsnLSnXLpZz$txh+Q}*HIUg9vmaV3tmsCwek&lhkA%ijGm zbTRlIDtu?EA?~IoVG1^ZZkas~RvH2zD#AmgQ%&=e^5i7ry=*3A{%3VWOO&OkGL){? zol;J}cfy4U-~H$IkuJ6EcB6VOctEkt7QVYBo#wyTZF80T?`tlK<-T0-4{$xBSqhR& z^H*#C&l3N|8AO5x93r+&fKC7%^BhF1nJRT3e$Q_r6KAIiPr#y!R;QmUcQ+5gj_9WJ zpS1Z!-Jf4V-C4;!d*b291OO&bTXVxKrnyq|)JvJx&L#~y@t^YNS+ zng-C`Uj84j6!|G*aHKd^lqs`?2H z!lQZ#Lh|hk)Wkx-0z|llQUgTuKAjF^e9lJ$gg)^E&R=|;R|BMDhvuJU`HNgdX9K z1u=^Fhv~WT(YomIHegEJ`{~1Xr@^vx$>TK@?&E|LU?y z`=1(|;;We@qP>5TZ{{5rlX79#WfBNYovqw)F33YkqGm%b_AetY&|T%Oe@8y{5}?OB zfZQS~ie8groV&LwHCc6m!i*_s`t{u=rBE?+7inkztAPV5dLg41*s-sMns-Put-s%q8#Aj5Z9i#X(+b6AV3?ehaCl%qaq>73Yz?F& z486hDqWVZ{1OhIa$G3l1jQxYaHaT>o@`^DSTLo)UM^lo4kS2q^NcmN$J*?+(Rm|{>wdP|0+fKL|yz%O(-~DaJiSV7D>SBph56rTge%#L}{-cxh zaSZJIAD_k$uoQ)YuZvvB8}9=NIC@o_LPO4*1d&P!h@8SII|xFQ8sI6%@s0-+Uu~hQ zc5gk_RUs-e{r`ptS4&|_^_jH(0#V~YpQbvpA#$)y;L@G-G{_^r!yW14w|v+-?1W|{ za|3n>$Ofh|51qV6^Vr2--@i5;y(y1)L7%>X67Of58IA$MPo3MIBsvuVoffUA4z$es zbfH^pJl5cQY0r=fBTmQL@*Ue2Q>j$9}p(|T!z#Mx!7a+swN@) z#~>XhN?8AC=HBK@Nu;_BCODX?QP_ItW&w@h-ghgfe$5CTI#s4f;WoCDw%R~eLLci20s8t2ET6wq=q({?!) z%!IhOMQa#DF)Lj=F%t3*MW6uB%7^INYCVEwl<45orpxxppE!E=(_PAs!((?&9Y9?3% z2x%j%GF=P1Ucc@(O?nl|`oB4G(AOf7?gnAF_*FYIb3N8gf(8z3fI~dFqc}2QgYpd> z$b)(OzMwSZW$C#IAL-W!M~j_Z@IcgL3pP+VcXbetKuj!49##Wsg(J}bRoGPPStWp6 zN47RNA@6BBBr3Yxm=o{O|A(+m^8yaQx%CrBx-&>PwH|ozP-E6VVdIQ!$PL}&v*3id z%?)LU+C0tRe}W<0t?!4g2Uf8{>aWi)+XfDTb><4CxC`fB)Ls+|BF6<1pCsuBRs%!7 z1$B^dqRIm@ZO@RM5i2IU4S;<)a6JQgvU4_j-DgJKIT*KZGmcxX>!8WGT|lZW)UBVV z0)9_TI%4khAA4|W#^@y*gZ6p9m9izxin7g zPUl>99IdRji8C5qNcRF*Q~v{>n%;eb=$zR#H-!h%V-BS$RJQy^d$9Nl%O3y7e@EOm zXoGCDH&$~~U@Btj(@mUx?ryW`3Dg4a6%3HrS4m)bL;d|OyQsK5@lwO!{2;I75 zCe%WJE2vRrmu6E#wBzf`PB;&)axlcLiJzRr+Y<$8Fb+hnXC#~XsI<||CF^#Op7<|X zDsX1ZS1|)Jdqmp|$2(&!B|i~_k5dWzdgm~&4RrUZrY{D1dp_-8;>JbGWT&q zhQ)0O0hv4V>IZ@(U;TG`w;;l zBqxKklRbxt$@lY>bZkTx(G(-W#;Ez0O#G?)`12;G%aVb6JSwj9^+3<-k!nM;V76>P zHa5*0STwVMJU*1UPYG;hSqqiOu-=&e`%q`+y}6iC2G_p+TcY{_2s8hlAgkJb^|Gn7 z_*VsGkEBpo9qY1Ru92c9PZ$EM#RBu&+7u%08P=b^)cj70#kLB4k~PauaQ>T=B?K1^E5Oz+BJV)<25_HqdJ(T&rS4>DmSfuLg<#cWT;9!;`<$MOZck-pB?v6 zY>>Q#;nS4eR4{;dq|xLyg1em-IKMn+`?=mpKvAk$dS(-#XI=!4?x!d^czNoa9qxH+ zo>Hy0&sapQyHF^nLZ=CV7udLNoLZq;y2hboM$6iK8dsRBR*vCdz119q5*HU|h0Z%k zKU&R8Y*_J^xX1L_b3Qns%;|N?z4!}3L7&h)bVM9{Q&;y$67ezX-Ojch*h$d&;fxTs z4rA)kFcT^%A7WR$ldv8LU)vay?}Cd@zQq3%x1BPFGKohsjq~m&;|f-VAu-1xUlLa~ zoPH4IEnZc8YR!g$o?x2m*XT0r-Iw@}lT`eAIsLIX9m<@ASiQujz`fLH3*4!;^nStt zQ(aaOa`f-4BJ?K0l;KbtfO#4TqqD%&$Z7SFRv(I!r^??q-HG~e9^;cr?l`mfXU)fO zx^^N9@~R=!C5QyfZ(5{@n7jGv;Wlid9XT{xVg^im-6ZC|OJkWH)u{n_B)UDHHM@Rk z-Z~_VPQBwJDy@cx`_g*M&bOA> zsRmjp>P&u>GP@uY&=`HaJ{F(p!eF-39RMpqJ0uf}ZSa5?<71P+Xn$p z4dD36kjty>NUGCap?#*aDa^^P^rMz|IM_Z`iB@U==;=|LBgdpB9wxzzvZV=9#d11B zRQ8M_4Vq8&44PM>mQ&71v4X4TxzHV&DYViozCJ(6v*D6!tdK^2Ze@?G`RT39 zzpGy=K*MSW{dn}>QL@>`LbE@GMe2nV094^Js={(r^^m&c3Q<}=#`xc&K(W1y6wI;; zlgv*F_%JGMYxbbHM(jZ zo-6#y`VHqw{LEWMM^)oWsK1e%w$N9eZ_qz1S5Y&fB+6Uif&X|CJ| zx&t@Is-uT)%=M7Lo<0+gK51$)cLJ%WCO+=$u~pCo)XzVu<$?=t%q+mf?C#(tS+32M zvSS6yI+4RzCW%}ZsuG3x*7>l-NauLl<&_*SlpJRQ33X=k9e*GiX^mQQ0Nb=MvOJdi zMXx(92At-yX*sKK8aBNf25wpEHit*^<(K#4nd+sybX3K6^XpdC?D$P#-x=_`M|G1` z+~N5O43Cyt(;i>%*;w@sMyDoS9Q6M@$*}3=`TDF(zr8v8BK7|xA5XGVk38+m^$JHO z?Wz@=_{CIo*qsipaS|w60T(v6g3YjZ?b(9We%+#ngjX|!yip|a=FvTg$`%T6a?yCW z4DzdOTPO3U)y0GI!^YJq+RFio=1&Ozi?nh3k@J-Q#NxJ$d9$gT%^hjI&e*v+&eG#n zhuNP-Q!Uw)#zaD`#Y8g(t;MRq|EndMReq6A!^#D1}ILc3~SdYFsx=Ge-ITfs!lcDy0 zwnt8!Tjqm}#>R(-hsOGH601CD%rP+}ZK zTLC^}@5v!I>He_}#eQxh{q`uXVZEB97tnhqLeidzNeVkx!GK(WA}LbAjWFxC^lzj( zK7GafQ-=o0VA1A6V9Du?{ zyPQqR90I%drcV^R16QYWTt0*0h9|?p%(Re_kCg+JLSXev3ZN8YilVK#5GHK@M)id^ z2IAc#ZAk`Ox^HrKtBpw)8aiXji8#mjHvQ7mBV~v?yp{8VRRo6O%u-RCJYF`di{FIG z2T#u#Yy`j8(EkqKP>=zpqPW|A4)8!TWvD)DoZ@1Vaa39zKsxb@4y-A`Ki4_TTkd#F z9~^sTm+1H%#vm5eF$EGL+=Ir!g5oQ}+mOMA$QEQ&v*2^Zl31`*mV7r7&@O z@kZ6)B%gQZA2}hq?v)cn5{vi^37~2I~9Y z$!{DWEn#Yc-sp)K084q>=74&vWIuaiQ2EGc(Aur+kwt+W!Rzqus7C$xgBX@uVJ9> zH@kqBTB>7;ATG?@5%wT9b5MLhP9&GXLW*sC!=)$lEvlfk&W&KsezfxnP%GFc!D>mQE)8(V0dzvrl;#P6C)5T2d@p zYRN(bQpn!>D~3sNixOfFtXe|9ATJYpvDdaZhRCQ%;lPOG0l(C&8dD=P)zRoaR%d3I zTbg;m{=Fp++7J8WXP6Xb$zu`P=t23A8Ioih!SVdR4T1(uKk)TmMkoMkZx-%_o*ZiH za+%fjC4JE;p?Q6@2t04;EM$o?!-SG8f`dL~+@dn#iat7_i!6NV%tytaA-mdjC-2Nm%N1#3y-|SH5aEodoZCg`W76n_^qUM4lJ&5w8Yy!L-KMBGC(QxH9Q}f%E-)=K= z)hGg9KWqjQjc&`1qX%hna$*`h#ovpKRBR;O@fB+xAlWk)DPDBeR~W)d!9GdB1rk0g5Qc2T|^ zMCM1ol@2X`Y(_3xk0{O#_F0c3Pq~6Vau1XeyHd)0ZSJ0&c`*vd_dHa^k6RJ>`oBMU z87t4`f$uDDe&Moweg%%9y~hcldq*HTpi>60;oR6_EQg-a@x>T7ni%+DydnOkX`0|M z*fBbbXSEvbvItJXoWGccdITj_E003dEPCTPA1R9VB+#RHe|78I+G>mGG#YvTk(ZKazVm-6W<9rdgG@1U4&AtyFgvWN@@9jktE zK%BMzao8`7+QwJfCZ<*K%9>R5k+VS|if-3xI;vn#>PAs$#MyUV0(O>H{GZd4(qCk) z*2SL{lzdKChK5792+2NI)r1HYgHJ)MOszf-D#kB<;v`Su7GV|+$mGR`KA{Kl4gR}X z1RZO9FWCGZO0eG+>w7wVw>EI62!ZZ1z&`b>ZjYfKHSx|M0T^wxP}`K&sOda~b5qyr zjZ)LNW_90U)`h2p;rf~PwAvV!H10dyM_wR&IzaHXG1zjtF{9H24RED-++&xzEE-Vu zGevif(xkpRA`3zOnrc-(#qYUZ)0THchWQ{un-d_{tS_j6X4jbfb#6LF=F0H__`b{^ z*smMZjll=K`Pp%*4!Q|e{Wh@od_^33M@HIrdYaWh9ma0bDvkAo+n=bxeB+FhDoxD+ zyBdP&kPLdez#jv5kTy)~S(BIvX!f)&Mth}!nxgZF?8R2kHMuqy!A39A;k#V+DsP7+ zU7`GlGStCvW=K+IC~@Xleszlg6wk7a7JbDk-a<8=5G&V>63}wV=#_Pth$-l`QF?t) zYZXBmgP27d$D($l2j(=gS4-=t4f8*K8Hn|$uEUhIozoc7S_mqU$#f<;97|+8xC1H5 zavb+mVxF;0zvq3lTPmXR@FcUJwlvD~D>Frj?0wlfUgz0%D;VDw^VD&HPuzB~tlt`e z9vs6G0#7|poGVy59Z=Gt3!b+!Ok$r8X1v(t(OWTu2I?J`Es4Jde^oG~sH4}SK#|92 zd#23Gi*ag#3@MZY@fGx*yXYY71Ix8bL|UNPgUD>(R%!$5seczY&q6U*xZh$ zU?x?Z=yoU7Yp-XqpRb~TuO|!evkx)6Y7&;|(RPI%_xqe>ANC8^jn(eKUkg|R3+C?W zy%j_|nAYXDkwu2bfc?*D579ddv3MfSUN#ExMGBV_tZq4IDFQ)Y!X|aYhmOIHtMk?* z_OhmN&WP`VX_Kmoxmba4{h9!cQ@oX@<7U)}vcUA^iy8`@J6e?w4NX+VVwYTJPXOd*|8FW0cDPVmsyN&7$M zh~0`VB$LG7|NUV_rqLFSZFek;|1$Z<{%(`#Zm4t4 zWKmqiccu#s*XQT2A4g?{(7r-DtMDv&SUe;BEQGUX!|k*8W$jG&qGXIa5vikSQ+?aT zxK~k}`$Ot>*i;fq^2t?j!W02Vlx-Il<5YS=P|e)dkf(k?k|o?fswwQaheXu}`yB6A zKu~4~?xu6Hv+-;O(}kmwbLxHbB~3p3?AodQqSt;F^z-)a?aN-Pp0CWI(um!Xx9~B- zX;D7XFj>Lt&-M_E<3N5DaT)UJj}e3^ckJr%eg(DrlZso{c>jdDhmv%D&zc|L%`Ow81zpn4 zo0NqBlauZ%r1?;{jA%j!X4!(!C=tR;WpRN}khz9tUznI3jq1Ey=k&xHJu2keU0pO^mRM7$J8D`n6nB1vf;|KE+SM z9%=;vmgUZ~9f>}w&zPl&i|ojzvnJDH-DE!CP=cH9C$-5)JDuzt=fT_DS0p_{A?ZGv(Jy*8Xhs8$OYlIopZ9T@TR#>PMh9Hk(p%@8* z?L~n$e11YoKhBOi7(b#QG`ZgYsJy z+;d4m7V|4GhDg`zk@FfDTx|Z@23s`d3#0FKMtLnBvEM?Cc}!fqY?=f^38(~E!SP|T zugOxu52t0U1lHCnNKW*BHURgZ=ljQ%95jEgF|=)(w`#in{mIH3Ub%G;J9$qO>`fm2 zfrGsVx3mPIuV(JeS1hOY8<< z`=S)@45Hkxm)~u1ZO%|8P^3j=0g_JH-ZLz<%NOAqw$jCvmII>!a;1RvHOH-7Y`xoN zn<02KG@3@+szokzl9|QtaNbYidV^1&JvZyqp(yo!_Pg&Q;FjX@@NjT*^>p=UI72?R zo(`rvUU}`)Rc|Bd+Iep0eb-A(Gj7KNa<+q9;4QA5jp*(ieIg07!se%{z(#+?kfroS?*8jgi*LPQmFoOzJRd&ih4YlE4g2Cqh5ZH$)lA2>KE@F-P~ex6o^pqIdJ?tvS1_|*GF@Q`Kj^KN zrs{anw$MK`M*fv=qgX4GwzPRiNz7!G2cG%<1;fwESTTwhOKq3yZz`47Dv5iW$CjsF z(MaA50t+(fI7AJKJ%{3Z>5iPJ0*HVyVm1wY!ACUKIGZ}@$l+o=B#H+b%YhuWSA^)-R~xhf`bch zZWam$-BUaeFL%0*$ELRL} zYd)vNQBa=Hbtc4?A;nBRuWzSGYV+T>l`||gljc2hvJ8if{@l<9!yu~>b^M2w^* zE@Tx@!VR&B@u-IzN~bh1Rnm4&?uZ!jOFnV6rI$~=)mtqxhvNex;Agy5Y(1Gg^;29f zYiwji_?F44WPRzf5r^S*zK8E#Ll&Amr7@kw*mzjec-!N}-Uw%DPpN3wCpJ8YC^hXp zISxjR=k*H;IY7U>ELrzG1L&IO+wg}W>4nP{(dkIynGd;3x3&tlnH0d4^EkhrA!??r zss3(?VED<8*(eVTWG3qY4ZTE(m*~IPIzz0y*eByoy{(G!ewhyw#6KbWx}Y_cyDh30KeF~Wm|2X6MxwE{jQp6_U%Jf^sUXD^KTt?#(dnpF!Q6AME5f9GwU~Hvc53%%*Fm`X zQYJq-EW7~R&7IiIy&6k(Xl1C#a%8+m~(^ZKX|c>ahLTS!KW(P5ak;4y-?vn!jXtQbj84ONf^OGJA^iEfu_b5 zZi7^1?y3~6Yf}dA@;wwlwHVHq1E6`fZ^N+WnZ^PGmU}`KGv(w$z|osPtRDVDo}>HRa=6TZH=NNZn2(H{2}dF z*V7nLspo0#T3n)9S9HNsj-vl9ELB#yoZzyGywo02hu(ymuEB;w1LHUe&(=~wyWN0R ziiQ>FXj}1%Jj1b7RDC1F2zt6p%*#jg);DvG5G3GBlkVzsFm=iAI`OcoU3g8R`6wKJ zj(&-)2bG{LAi5;0V%D#N>K8q@Le^dJ8CDY~`kfK-{Bky!LVn0N5{-EWrRj{vEPOc? zkB0Gy>vL2~%WmMszQ>H|*8uI3SvQcFtmQCZQ0c{sgDI29!eOa2dyRoG94tOWzPOD^tiBvUo@&tq#6B==!n1jT-3#sX_G&P zGgfFT$=uNVsedlYC3!nHEDOP}Gv$f}$U{DWN@gtXPF?A@uj|D9M_K3wrW+Z2vh5Tr zc!W;ECO*uP!SdSZAV5diGsL_FUg$KjPT)(Wy+}2QMi~=rC?pOaUJzy@ht zv(ESjKhwmJ>qPK5v?p5S=vHX)F7Z0D@y_cvs_6;@C9oNABU==B*Hj4#`~k8M?8!;* zMdT|o<@{BI-DKnC~ zPrCYN^isZRxJ3*cZSx0iKV3m|>kIh7N^po;%39USp+~H3NU`ql3-@Qdh6y5ZwzlG0 z9$LdoNR4&_)k+S!nVE-tbf?A9;mgGlU?DsmwkRWP^)xy5yOkw&kAxIAfLe`(3hWn> z9IUi4$(n%@hl!R2gBOEne}qMbjWS2`R^3_+CleesV5u8~GnB}z%mJIl-@4^ne;{g zG_+uHn#dKtO>{7-rE=|jl(2wk!{N9`$(llw=B1Mmmv2(*wW5cX5-^2o7*%^+z1464N!Ts#=jYahVFJEAhD$QmpY z86bX*m8_8qg)C_x8e6}rdlVFeklsBr4GcNIPzA-F*Q@)sO!H(cH^{~xdzkA&Y-6?d z?_0A~Bm#K4W2P{AaDhZERJ;W`Vamsy(+O@>%tMZ2C4mKn%#^4c<;0B*4GT>yn+GET zS}jW9I4)r^eX;yWIDOqhpUYID++Yhh@u{?}yi2XVOSC*Pll3KcqBSn^?Gs+~Mf4<& ze&S;g!e@JEll_Aj3(jeXG*aGyk2NpIxh|XBI9FIEZ zrbP$rmCA_~3edA#%$2glHq%4WgqL%K=X^3~K@c<+9Z}<~PnUP93%|)l5GQ&6mDW5h z-=OZRs#ptW|0pG*X5Y)xPx*6lki6bv&q5`Rw-sCnr!F}wdv)t9C=oMe)nP(&RCq$& zPzo<}qG0a4GayMa2F#v|lD>REx@o@?(317$g1n_zD*(q|I6P#-NkoWY!D6JYPWwv5 z5SXt`G3Hds2qAEoEJ)+1Ghv^qa+s|DG9}tI4sz^5ss&e+xLA%*A zVzqb@bEg2i1U-3zBZ#m%6-qUF7kCj0w6#b{=m{E%@4)G2!P%q=_NT34~4v?n^%XqJM;{GT#|;Wn>W$VFNIJd%O0uG~;DD<=xnf#=Z zRf+kz&RM&qF<(=CaNBpM1Z?z0e{41Ck7?9g#iI58u>6T>yCBi1rzJir!#TL>n<1cy zP911RPA~UO8ekV-hf+z?HiT>?fst6n?2p<`nWuj=hpM>UR+o3TIzl1x8{YqQf3fz=rWp+7zdf<&x47lIut7iyoIpU(K$0fV zK+%Dx+~)QxBC#7Ul*Sq5gk*lqr{P$D&W7JzWcwI)e_kk@#=WDR5VSm_WtRz1L6cFBSK2z^yI=`GOWC>7b>k% zzYR4=UZ4vy14LPWrv@=Z#l9N_XEgWx-o=mQp!0J5B?(s85 zuX0gbiz_AW$76LzJW3=BuZJv%4ao~@q4tG&kd4yERbK2!N|lTS_#=F**dyYg5P`Vi zarQBWLqsVmyQb;=%5;=^`NH)aCxaAO`In}IBQ-PJF8G_3Gl#A33qSyoq|fFLo`gOL zMDTkt!6^*krc@zUk{t&sh1P&jjHUukKqmfjmLUNt3|&S3O6EhJCioX9P*?7@Y?NpB zPcPwd4Afs82on{NiJ>5at3rbIuYpw9(m7#4w^+;~o0{>cX=X8C=8m;oal&rYc}$X} zb8hwNCVXeXB3e5$JD`PnQ{XUglq9a7I$^>I+awC9`6NTOp?#-7RgBds)6tV$U6%si zx6+{>L(daa;e*nu%l5(49<=4qHE~R*C7M*TEYS_;O{FMNWH^G2iy?})iw2TVwnDDV zaEdv^#4}=iO$HY&M8-6Qow3U_h8fCa1D`wfBhk47j?MhYw(kGoGuLG*l$~cq#$lj7 zgx~?zjXJ8xRbm)V?5T7slXU4NRVoSKmI0dqV_n90kr0vh+jFdF^u35HECt_flymAXAL6 zA3MK?e(pl3E3<-8Xd&GcOSWmk7kolb4$_H7x^xP(7hGgOcR1Zw-2^BPVIIooYaYX9 zXda>fwjC3#wB1VcbO2Lz2pgO_{#Zk{BS8S)*QhZT+cVBSY7SxNYctcD400gh5wfWl zYv?pJ(5*M;DBe#fT#>G0C|-r(|D7H#q@rh>t%)o)-{7$D{98)jH5?bQJDnNyUBhEC z5uI;T6BZ(LpEr{+y#>(d0`SN;IXIdQKCqQdNrK|h87usT!3Jh82Wo;b^xY*%rPs-h zrf`n8O6=j>LuYJHS@-MiHQciuArq2>tNbq_B+$mTN$M`)QgK|Im*eXTvGk?2kRfF^MZ*Bt-xS2|nhXtq*5aGef z+AkX8+4?(!I}h_Ioq9Kq*LX%YsI&!(nijuoV1e#DyBQRPQ0^&}@3an5hJ-SI2Vm-V z=J#voO5}hNT}}q_+`M?g`i9#Vq?tdI&=?VS%4zf2_?Hu8=iQYP;chMDJJYTna~K7m zh-6E5t74yEWflQ*DfF<$r?kkT^{ioj^6C^`5_|ZHj4V+}^0T?>b>cE>Btt9E5LKPi zO9m494&hr>XyQ|yIz4R)((Y2h+;v_=@W#6wNindgoYVVF8-?85kM@C zDNuOcl{?WOXa+@Syt~~oWJPW38@fOh+BURt!*U}C{^Jbn)?3wc<}^i&AsE)Suyre` zEC10RoN5?g0M#H0euWS+KZ-+{qjktDGH}QW96@@HN{Brq+uC zk`@YpZKp*(mj4y%T;TGWL=|6W-*qmH$ZnYunC6!kNah(+Q#ct5{vwc~R3|k3x`ope zl=Vcdw5tt_OL&vfd_W>bd*teuGlaAS-1zggt^7*fBm#Rk$y>AGgLZ`qD=9p&wemf4GkmkTN!f;fjY(6!z>K}N6Gn#( zB^TN_3UhcAgbTTB`E-^c3!at;5hPd@{udN<=+^PcKs!S`Nsn}yPx zYm9GzWNQKePwq<_-!w78xQbB~~-%*t`e#t^AYTCdNK1&kgxzs-L zj^=+!2#|N+?ukN8E^Wm})c}GyB2HsR$blF-VVuOeV|lkEe5-9`;|hdu>uJs}Ott7a zPDO}hf&CplmtOz1K7gt1*!D~u*u7@cfNfT)r0;}?6L=bj#MT?I2qUUoO*Qpw-3_12f5}?2uTZnZ>;&7`9=s^k zr)OuM&_Z?2x0GB9ndyx7>=xBP_t%fV9ld!4+6K>WSi_! zyY_0(KLw`;KR}O8NwoaQoZdczUpK7Vht8~b@RV+0vLl7q)-AJtTmu&^<31aS(?uT9 z+Tk;B(eH;WfMu8%rx)R=;STo59Jg0wH8qQ%1aS4eVdXT`dMcN(F{E;W;_3FX6M zJBl-4MX=YnYUG(s+zdpj@Y1cswf`zQl4wiDqsR5;qYt!2=fD%VT))_Quv5uiyL8l5 zr%$4ky41kv_o8LO(;%5<$hZ;&f*$jO2Kxvi7`Mpqd9&HX1dY%@l+L3bY!N^!2WV@R zBmVm3=Qz1n=q{reNx8t`5MU~Ka#*Km;Q%B5n6 zR4hXMO^NuA4LZzKV?#$~U9&&S9&|UxcKG+;rP(1iv2hK`YG6 zSj6GIj3|9nN+4#94HuijtG@_ zdizA zpmtbzG)S`x?c8fUb(7~5_<8?KSS+$1u(L1KIy&!P><@?87NhjTkNWW2Ta<>dvl-gP zFSMafOYEGg)nD*1)8)lI0sYXu@B7BN#2_&Ge`2gM0M`2UjE_zjvWL0Ep=itA^iydU zRK>vk|c2SA&FhRsfDNQ3>BWt(WcjeMjvIAbGVc@?h>Jn|v!)j}t z^SMuhz*SFZULw36{0O9%Cr)D`xw85(McQBy@ z)&KNpYa>74PRHxcdW1@t7~F5QAj}OAPVB|?(r0YeENYEpWaP9*rXPQ5_aeHm4+>e; zk3BdR(Dypt&8_?#ECQzH6x?P7zv=H06!nx|Gg}Wnnp% zX8H1_YQMgmS$g=xU{W`(p9%A3Az$r{{@_i;k0%@a2{LRwugjAhwD`ofVW|u%G5eFS zhbpV0pQS~mCC_JMA?zF}+L(n;)UrR9e(BU*7Qp~q%z!F=l4YokObbf5cBXU1s{lo!}PrP9WvYCLH z*Jz8=STlpn?YD%7%&Hxs!Gbqi$@ zoqlU8(30OKt13u@Xs6=JndhPbCy{=0SJIpCg996#*x^BZ&D-9P+ zUC*$Vk^#Nu1iuD8y6NdrtXA>So1{HkDeO|->`nrg9c-l13S+Q&<_m1>55_XI$~6cz z>-nA5P?j7&8H#wm?+qbl&3F#Gx@dkq zpv6=Dy9DO-rS_OKx>FU}-LfB!m9Hc74eWMhDcW<#yll#$NACf2;2V`Lq^#g26{@Io zlM^;D;yMM^%di+L)U}vZZAM2G&7@?kqB5)f;qb@CsAz(e@qI7xMJ~0M>32VJBRhx5 zx!o6#+hhqs`>ZSCt4PMkt7R<_=!;Q8d%}8CqtdUfN=C?Xu(v-&;1|l2;NgSADyZp# zT%6R>JqF6PA{^Q~eKP>9ntaZX;*4anRX>-l4w)*i+^db;*<#Gzf2A zE0L|T`kEEg&s}tO_xJ0ypMJeWTzH>fvC&x_M}Ep-~l2Vp;)! z;xWtJsfZO0R-SAL_B?S@>SW`&_f$%h)zxfayO_KZ`9W9L3}ty(q`@%ovjdX-pV2Ah zrl>|}VcA=x41RwbC))ZmnT0Hvzg#dZH4SO=+mz?%W$g8{#~rAdc5_Uq$I+=ETihn7 z%cc#$K-Ir1LaDUD``3I1^#r(;zn?NIFc7-i;?nX^mi5$V*JLYV+@Un++Z2aH`l;|q z_Mx0VEI6$h=%??n0%?5AcOEo zBeKgTDB{>R@+D|42OsB*BHq_2@Gp=W{m7l1*u)!BmJ#W0h|J}W$&pZBJ|o}7%~ ztCtY)Aau(Ww{Y+vod=Kt;fIc>-OG~4cgi~6aE!mLTq1w5f2AW^_>*q531>oVQzD&N zD{NdVOjB!gSEJotV-#rTE@Ni^3PhlF5ApOjnY)}Vhv8Y`R{{|f;?AD8r_+++Z=;S}=vN4qC5=g2!wa@HDbLb|% zPrE~SzMe_}nnM@NN47O^v+6B!L>{dZ3p8AjiY0uA+3fcHl+ODY}(9MuP#JiQGXE$7sVN;N^SV zwC~k|2@%dyM^KeVsPSpI)rwZvLc&T6{WGfBwxN)P!OBL*Kou+AE(W~7_zX8QzqwVj zkl`fjOjQu^SvxNE(c!qd-s)3T9aFQo+H#zK2s}%N}Mvf!rtPtw4uK!4;YEPt0( zy*M}ys&bfIMX+trnVa?=cgL~Smw>%-bg}t4(aBmL&RdXZnzH#Bz@lt}!!!Dkiy|J6 zO<1H>K~?y4YRs;Yf(lT`fv-LfkU|F9ZJwSjHv!oqCqsJt7n| zGr#I7HKt`4S;hMC`{kpX;KxROZFqR--^HaGBIY0(5}f;D2`qV~@EMCHs^{ZyOP}0p z3)Twvw0QeVH~s6tr3w!}RcT927kd%=(eeeIEy{4M7L9e=n$ofQuu45HyK2n;UMJzI zr;ed%+QMSj7mNbJ7upEH7Q*M&1T4c&m)Co+DBP62kAP$23zluyj%gUaj68%~hAN&; zY9W^vjE%69HJO{&vDp1jI+RU4qI@Ja(4A&79O22doMRI z6mHj_q4DncNf^4RH*PlBM}C*Oy+(_5q0fVGda>HCv3mjOPri1lk~)m&w5d^YxjEi! z|7_a67yg`>hdvO|SBYiA<=z)PvD#f&lLr^J?rs@YpPPr?lV?E1eI@y)F+7xq-D2xv zO?O)h^}$1A*q_j{u}H`K_i>>Qw{784+Eyw_a~swyseeD>30!sujz_G=XjrLyQ>v7R za!nbiSB5N*q?96JYg=JE4%JPJov`dN@bgqocH+aR1}C*i@K~9blq`7GM4cQ8l2C02 zo<~cErWZ;F-t&Z>*v1CWp62r-XnR&?L#OW+Y3~&JL)pfmeP(Ki4kIUUQ#R_2$Ci-t z2{TZ&HhbpS;T)}rQ}9oes`OnOp^Dw_VKNCnlnG3rP)3FKbXdu2mBp*S+8m_6U8Zt@ zXLoPq8soUyC$cHz=cS!%#^C+^`0)v%^ejo1`b7tB_3-N<@We*|EO~oYQE(?P=-!m7 zT?r*I^Vp7QOX+v}>L+3t%`~NN&;wj?&yRRI^?5-qu&T5fb9LwAW9G7A-wE_~Zd1n& z$jdZzxAGU-v0JLh)Z&M@s_EVpHY{YrXs&opN*vjQ|@kELP^Cr zyEeIyE6+2qsS_FzXv`&y9D4_U;I`V6*h8H z0*VM6A9ETY9z8(Wc#A{CNey|?dBNbK+zG??E^A(3x>z&Svu2U`^1X6$X57x^x)Q?} z9J?X?it7oyDPsK^(f{q9h+7Qr5bEsF`o+}i8=>?B*vfeHjI89g92V5A3HW}l2*0&W zbBtSkJ`vKNy_lmSh&2SDavF)RZ7i4VGLTIi9)~mRQf5FmpkYfR;|LxV2%sDyhru~- za+s^-Pw~lnd!}royY85MVo+894SRi@koh*<%+kE<(KuwCO1U9MX(y0XF?s9Qc6}>@EMS+d ziDU-onpwddiJl1_;%ggoWf;ZWlhdqux^&IFi&Dx|*dZ!wZ{*@BFQymc{ZZ+b-k+h@ z^@S)Xu()JHffr|*MNj;~>z&>L zc{7S`#W)dB!*Tis_?rZ&tuz1OLS?p5LS zs#fekXhdk9(r*@)?_aENWPt`{jO;^8H$+)N$DvDdX-D!=Fk6(yH zEv=)N3PdE;d|lKBJ=5+u5)3~U^sws?Y|W^iQ7pi`$}c1xO>lW4df#Y($Srl*oHpza zed!8(-~1MD`^&{4oE6x$Ik<*5AGKKd?0w9aC_DRW4ToRWPjxOV_5;A1W<)l5{Wb9kxoZPCVw6$q}i!iQu2?Upmgcy1y~sd?NZX$c0K+r6ID! zzQUKLEgDY`z4;lDe#9c!4$2i=0uxinM#nFLt8^}&v78+)G8SKxV1Lv8v)E}PvYX# z)oh9NS=VsQsWCS@@Pye`_%-L&@z2D1R~0v~VbVOlhPe9vSUT-T`J7dpe;~{fi>?ac z8BfOi_Cc51IpVFcj%HqvIZue5S;sWrYuN25>%n*vqf@}qBt_efRA`zIgu2*nN?zADz)Me>^qrbm#QVeb8Qd!3nhE6%HJsTHPP~wM$=(x`Y2d5a=s! z;pY}EcLb;RvSzv_3oo(8G&n(U^ybTdl`_zuq1wC~XL+(TZ`094khOK~KX%fU zn}h1;qkWPqPJpa8D|cO9kC(~PDxVGV6rV^*8=zq!NjiNN-RHG`wSRr%M1KS8s9LcE z=V}|s4BF>}-nRBXyCl0#GC79XHUXC&MP?GmP8?zff>|;l>G#CSGbgM|9bsEO#uEik zh~2i`SdPGbsXVeSJl0b)rIZ$dejHRpiC%JoV(Yh1--q zUDV;uTtG>vreZlR?Q_Zw(!P$CHOs+*@(WzW3y)a zk&|zZ3I)yj@k%9yTBz28GtF-GWUSX)P8UfIk*^Ckz&^pOoDOxrjis6jHfJ%~g87>V ztX9xnv?6z%?qkrkCluRToaqszd4n|vUWA{ceMK&!?ZlTpMW&w`0_@DaKJ8iec>I8R z0&X#gsp_?tm{wIRI31ZU%DxOkyqR=#)w~4q;nGxN0S-Avt<6)h@gurD6lcQ8SsG9y z#DgRsr@NOeVWt{;&&e9gBuv%=Tm@E6amC{3WPhaoh&I;q5}nFE>#TJFg&N-~DQkbHr!PFwF&V?zF(E5)=e zy(w`|(7O436&s#(dp(GL9{XxtPmppe0^`Z^yce<+qRT!PUL!AR5J$Fca*wA%2@`2L4WzC%g2 z8ef7qXen6-bj<*Br^tLnjiz$&{!QT<+>r`T^eH_7LtGtj>NNL9%E*QJ_kP`07XloJ zX6M_v7p2h?OcIUX{Nuqyk>)Au7qoRtT;KVSYCddAl36`=|#dsCFF!w=<`X1v(jyf0vT%2X>ohAZt)lnIkvWy{(;aH!`vV94V4!Y<& zXeiaywWWs#yJKGwL$!F|x`HnXDvu>te6p@&l~Gut9pl(9qSeGJL#*MMa#d4}J>DyM zpQ{szFB<3}MUE>_!(&XEdx%$7eH!8qEIdF_Hy*?q&z~o8p0;kUOO+Q7s?n#Up%JA} z)0J*Nzi4AIv;`QGZ1X;Owdl11*%_#keZ~-B`VWU}yWrqSlD{$(1|XnsIWo^Iw;f8^l$qHz)wk$VWCT14p<0O zO-QY#VPs)=I=?&{m7LV!r z;d_^a<*52`X~s^=E%sA^oj9Iq*l6B01metm84U-zND+{b)ltOIt5#Ts@Q z<4Z$;rX=8Nb8W@LtYcyEYQ06jxV#Ka#|6kHvhB;}WeNSkl6|ed+{t_~Twj-StS3LW z*-cA#6}4YK9&umpuyG~}rEVCIr-r90stRn4L%Gt!D znDLO2oPsgIY}N7Nto?*g79MO@lY3}jm3};hC($-vW2StCcN7k2{brc7v(~osBNGdh zLQQHsP#~=qFztQ9RHzU3ebwdaKCe8gfyd38KZ(2!N&6}2fG6RGh}%2h2&^RijMX+W z!u0*gJ(hJP)YXk8)ntK)<3h z&|-wP=Zkm&)SJP&U&y=+_;_Enn3JM0Z!uz-sKkN>G|Bp7I!5WP8e!iqZoXtF8EzjsTz`qj($J#%bBopC)zh?_F8P(H% zd1w9r`=2xD+U-g54;te1|GZ((zs>Yo=zkv|NgLY$ zj5zN(n7FeA^uNooIG9DAzcM5i1;PG;=oKIEzbZgYF75|mKtOU?;*cK*YWX%-VEz(t zk8&aZ5~|jQ!vOE=HXW+Jg!2nj=)VNW2Wzl@#$BKJ|HY;K*$MnFYG4BZRKOAbiwE^= z0lXX(2uL;edv%;7S$t6VhJFZu2GsxRk|s&Q1F-&8`|*xI|G^+cfbIu8LIzBJz;;x? z@COV>2bh1rCrkhn=wEM;Sk((K?@@?{O^QJT;5TT01>k&;yl?@MA8-sGkOTP3PtS?D zWPRsH!TsZ>6aK%XVf(}6cQ8|YJp!fmrnE=@zFr5|9`T?~#0F)mvj0=GJPh;)b<*^|c z2#7q&UyVt+q@b`33)}#!4|U@FfTn+~2m9gGJ^SuC7WrRm=!5_VALhP_0v`TlOarDk zAo!os7gRe0qj$bf5`g)=2@{e4*AKds3}EM<&3@CzSFv~R?x_E4>c|7MJ{-3z0Y*Rg zk*WZ-4|t>w;QfHqS^(G&E~hS_0PJtbRiL30Uf!MNqa^YFc=w8E06_Xz@`qO#fBL;7 z0r_8vj4@#M!xHNczzN|0%NUvW!TDbjHkg|Oy8aHZ23pJip=&EZ@<&snYye#lf4yED zGrZqS0ReeGYwSG@8{C}$@E^*;T>&>>(EmNy2&qe3mSkfNAW7<=0sYj_ffbh*H?cF{iT+&qVd*Z$N0xCbWR|f!4K70)X1BgCG$ay$G z^8?Dn0ER!{*F?bkVNU;zn-P`_Iji?GYQu^D8Ej1l_=5j!Gk*>s;-6D0gy_Y|cc=9z z|2WUN@4fan2Mwv?i%;HrEi-8{7(h^jPzd-p8XujRkb85}+4A*wEb$p!!#MC?45{`F|BA(XfC*H;{J%zI|Ad>jDsd zK&Nhi+rJ=qG`gHlzR!9;K>wTfh?1ySL7|f9^9}s&Op!osa zMgc|trtbBQ9MiFPOW%{^CIQ4risOLwzriF_uPL8+zi#~Ry1@is^Pg?eNx-KMJt|Xx z>klYB17P?kE$iV{>gc`V#)mWyj(2HIvw)j_)vMAUd8TH3=Y3;#&Z0 z{0)}<^&W2UdpxWmKtL$|3l>3=3nwUCgZ3gI_MiC+E4qmBcg8kkob?z+k`34U)JnJv z*#6J~y$V?SfQM@Unh%J*0f_m4Rhs~Uk08u#10MewmEiW~_)qivhvrG{cg--n|I-ZE z19<%-USlmDYP@@Q22b+tevi8w&wDDh>;nw{|6fOc#o@Dp!X-`efPPBy1Onjxwcp|p z00D}u;9#USRet{_cKr;3sv_-QFxrN*|MDa$fA`l+icwWH!Dsr<(q z^|ri)3FSkd&hVf4NoV2w&WU=jHrhzigX`XV`sEgjnIMEhs ze>hKJSd;ee*aUrcBlEGM#TQ2w!~uGjp-tE{3%TRd$(N=hD9O;++eX7LgHiM0jObeN zK%weyYu@Rhs)t}fXf8YS6-p0~dm^N+As z&?FbZ%08QrhZidxwg{C*3R^|H_A1ij+~;Ivmu6S=V%tjF_$Fh_SdK(I5DdO7%srX!s|ys^A}7ESdljy2e?mUNv_pEb;OLI=H~~pK z_oSA_44-Rfj{hu%jiYYR9-ZVdVuxFsyg%feF?I48Teo`r;PX=ukON2HG|pzN{UKb&QjweZ z#c)c*L3rsUxcWgMV+#A)ioQv=l@*Yb_4g0FlN&y-o$v}0wsPPa-k3#tB>nswCY}Yy z0bG!Sp?IzRr(%*`*5gQP9_e&MKTPcKpf(;z+NaGrd-jvGZv+<3i?$WVWeZJb9tX$T z268JyQX}vSC%?006&<{w-kKRrxCk$se@|KXPH^OBjY^>4W&G$E=lEY~dV^-(Di^k1#FE(tJetPy%*C+!jP0oD@vs zD=CUiKy;oG$!r$>%+2jMMg6+huVrLUp`r1p%ik2zhMaTh$5->K`TCPL-()=+4(E;_ z#ll{P(SPEwp@y)+k;evcX_zPh4{7Myg$cvF^vK&XUJu+_92J(fvq6PW&vEh5o{Rrk11pqlI>S zUHEbkrO(cUxE3i4`|U>8 z7f0l_%0liFAIMbT8NIsJJ7zS_VRj{W3COY6l4mnnj90)NdC@jzNUA1OX}yAB*(MtW z+Iq!h8hBIhoR!@5{`ivfN`YQN)bHAm40jubF>2nKKiy2REKHED1St-E`JxsET?>M4 z>0Q$hB-w5_#3GEu!~OLFxce>jCz}>dWZ_2Zg^dOEW_^&Kw_W0GtTKxCZBh%-iYKt* zuQjqO8{uq^efc3raxbDl1w%ZYK^v$Y%FWPpa_f}v%L+;+ z@)im$K2#?;BRpF|KaLb}H*tf4)Brd897FJ0WvHGs3e@Ft5x6iEu%brH03G+f!%mUO z8SUjqmBgrNbE-Eg%s4Srncer}*sNrweq1&J{?jr@DVvEN!h$I8-|kpSJ>wj~Fl*(( znak)A61*!Q>`c=U;kCCUfOdsL7QSJcOJ*nsKDI`{0tnZdP4}luu*e{ot`Ix>&`uai zeU%3rcNltDF)~01P@-0-^R|hui5_GLwS|)F+P-{ns4p02#PK>gfA(J2l;97OfjT3+ zvz;BdvLYTEsbFesK&pe3U{^H!chK6HQt<430AOGcW`yqqr%Rm=KV{njhA?U_NHJ(I z6`!IT7i_!?l&z|B4x26+%mNr zgh5D^(@0URjNL#F9KW8S zO_`yu&TK{ufnVfl4bBD{TW|~5GlwW@<9FFXg<2PAbRAd8s~D3o{l>cID@6H zD(@ReMU*dhqrPv2&N-Zhq7;w0?4tc6+>TP>iJBXDUfq}Zx)OZuAzhGUC2-?7cx*hV zQ!}4t|7cd9^Ehd2`+c8&@CysL#sTLid!wxovc50)Z*Vis5E{`A`Io31Gi2 zH>@JDg5@cOKT*p*KS?Nd2}FEDXBWp5KrxwQ)g?n!D}X9H86pRwo3)v*xtetJ2waSX zc#IwxU>Avhv>?99?@Gv9AhZP;CR|CEChcRdRkDryOs zFWxwakYm&mMFEhv$}r?mihF*RjSLc7KfFqTf@Hx-f!h_I^oUwR^V)!KnK34xF{&e9 z!Ne(#rQM4N3^nO>!IVknk%hP9)m50o3A5eR z`3@!F3n3(Q9)by}%*-AuKUcxLPs(Om-nZS@tD?0J7OvO0|QKd4q)}| zXC55R+lV`$9c~kAqDmy26OU?!^>4{x3x12)ew#rhhWk93N8>^wfG6KLS)8~0Gnpmu zo;n_y36;R@+1+%~%U9;f`QRr~ERS%I3$y08m@kC9R$fkSdC~=@#zn)t>JiP!KqqTN zC%l=p{6pI8Gp3H*i{8|;U$<8?!*<&1lIA#d)}#FYPg~akPv!f?uS>`*d+(6FM>Z*B zL?WB)WXtA~S!CyyoxLM_j|h>Ooh>8T%8dVez0^sxrEz zRIHX_50M-FW5vxcg_EPwI{GUe?e-s_>UU{h=6I;(`+p`D5}p((l}QlkQEm-Xu2$OV zp{UVFSXMO2l~(oSeJR*2JD1Gl`zv@2R>3*lhs;i!>+2nQ8=03*O*7e`c!b&fp}$b1 z8J&dK+bxgzClN8fzM8;bWjvk>79_%09d;^&M@ffBJ=+F00%^Eb1S_bdQO!9sSe&{X zb;M&7D$J_4QTe;*X4L#5ubHY0+(7g8e|4~XG%`Ps)gIZLl-VR&D3CuS)SdUFy`ewR z&xWFc%riw^9yj>r0vbhi(deCi)RINH%m_;P{gkJ@8LB-h%WAgkuzK{?T2q^lq}SHO zCA|9w0aGqt|absdb`*kbrgzE-4w_Wr+rfCUwiVb9XZsG;oxlDTa04G-(PEy|u@m-d3018&RmL!RB+ja4C2xlGi^a6m8|pY( z(s9nL6w0lBCMEH*Up*3Ij7CFfZ-V;J3$!kK#STVsc793g^C7*;!CXOid>4ylfQshn z&Fn-$TWisB>t7|2^n8|rWOC7{Rx8)r1MXaAobF&UFPW~amJR>%6_3!7HXV(?m-ZVk ztk@=mZXGuJj4b?C=|nJh&FrJN!@5Gf2U1FGQ;RYtZm1{*;y*Y%Q_x51tt*olYq82emV9WpwKbrvk+ zM7Z!Sqr%2pmW&(oewjhCaLCWy$MIDb%8GA4vgvw`od`xL>}t1c za_B=vD&}v3neoY^S40?yZ`ToUe-Rn|(nE*MCP(+l0Js9Vvc1-OO42Q>@R0tF8a``my{2yq)HDQblgUMdU+P?r z?x`zKagP+zV{7q|*lV=cl1vF+wS+A^jO(=VBumVaok4m^bMy02O{~Zv;XZb*yMym`pQl4aBMgR$PMTMGmb5Ady>GTh(pC&fW_udF{n8nL zs=RXal}%Ydxgieq;fF^dyA?|Y32N z<(bv@*gMmj0pFQ^PBIxKNIhz5<|^(;*Az=txRDk&YUV4$w%hn~Q_;J*KX~Q9cf{pV z@=T2d7Ad*t(;0hG+n+wVub?p_0`DBXg>j#~x~_7aam~g(kjRer&^rA@t!hYz@eAH| zvz*pR{+hCV89NuBw2A2C3$p@#ZaUaqoJ^Kc@rchlE+?4pV#>Xa-`WfB;Krr>=s6bR z{AQO)hVEH?WhBm-xTcp-D|^3##=0RQU4?x73A(5fwZN0(8$V8-)`T{~0(YGyJ~qi= zE)T?FjHSIh;^!|Z$Z3LBzITXuy^TzK_&NcHWK)Uz1ar;4beELMa=IhMa5n=FCT$r) zILKC~k!pN*J|N z=D%JU{xHDMz!q@3|8pGRH-#c^h`6qX% zgAb~QjxU{5NUJuVM7TP`e~Q@@0iVu?yCz9#Jzn^Q!Gp^FbK)_R@H!T2W|o|LP1ep3 zZRGk4(l)97J?Ab;>q$xDhieaJ&7!1jyL=Rvi|kuegpVqxH5^`0P5aVy*e1fZkSc!0 z<`MZ6rLHFJ?9H>y<}+TOG9qi<+jM42<6uwcEy zVB8RJmHkJ?imtAC?&>uuXU?ZEVb0smclWWCYfC61tMt6ZgG4s_HGPH3<_GaQyFU@o z33up;>sJOpuC56QK#J$3uNq|EN&LFRxuKiC374~oBUuV}zq6s~7f3~zVe}tL?qoBz zBJC@`JbB6+O6(QLIr%G&idq3vq(?~q7o=Qg`xV3I9nUvyd<|~LS4(2jX;-aXJywVU z@tr?8Cg`uqYtdLLUiG;bMrWVvTO%4gTpyHmKTP=hGri{MTekQjo0AURCC>b+YmQIK z(A_CsrJJpf^$Aht$#Jdbo%F(v+Jv3hZf)Q{{VXWtU+=g5p__g4Gm27rW5vc$oMb`&au`|&I!D>m@N&3&bO)$cK^>UlVOMkNw#t*)UWq;?+2nAz{v4V`20m{_?GEf;^K>DtyT`C-hw# z8=2T@ei!R5cgZ5xaVLH25%wM{=5=Cks{y325RS$0 zsF2#cMRLzYqL7$?BBRj0im)!fA^IfYaz<~pl&fg|lk?frPxKmZ@1x+NZw)y-3vmv} zvo}rAz#_9}^^ee(3Yylw4^xV|cYiyTY(HPzqKAWyYSb*>mT|jbNIkkt5L9l2c(iV@5B5) z$pyG)UKd3w3+=^aJ}77Y7+7KTtjKYgU%-%KB3GGkiH_}~zCK|XUb&*Qs!)O_t-+-T zwm{_225cg~a%b_k49!Bw{83nx*pqK`wooeVc$OSI3H#{ccNm95^O)P7A74pzvElZ< zN|(r;^0<|ERXtOk?$u3Km~<5%qofIg0UnY5l{KjkZdm49u`(ky-zylriJuAQ21Bn3 z-Th2J*Hqi0ZF^ zDc|Lnt`9bu8+gQS0ACQ8&)kJQ!LlYO($Fw7GwIMr=#cCywS6^)suL!zzE|Bp?3~>? zLM@bM&q(0Jqs1b1>=Ut9gIOkRj%Lo+2j3VeVg4YtnKe$oR{q_d!#vko?j~Jz0sT*i zcvon6(o%uOgBfvxdmRm9jyHIRN4u1-rdLqiAUWyETcSs~bx`(YtUAU`X zic-qjy=>L*pfKp9owxugi*dRGd%EW=bb?>M{w(v5B~1~UvWyra%OTWw>v zoq}skIFOM_b2#xjTpI;C-j+J376h!&PYXA1{HQfe>Pz#;+{1U(Hcn!x8T_8fN;vnj z{)G;~LH8ESYRsWeVkCBRL{E6JgMgfglx+FsBij=3S0veR>`gvzhta$DglJtyi*+XNUsIvIrr!}~* zjISqr{v_!-@2eg)n-9F zL2u_5=Hep3j3PNf_AwG#7)|i6@o^?sr<1R@{P3Uwa;DiBwgig0GOA6oS^b1UbCyfM z-%2GaiVVZLTi0!1J5v}=xcd*kG~?6a_>S>F5~+V+3K#pM<$a`x2Vg~eNIBSlR;KS5n2AsefE zN6=9uP^FaiZRjzXuqd@}M;lrwF{(Tpl@Z;v@u#jOw-Gbp@8eu2nDsi34H&!wP_!W} zd!-guih2saJa;L-IovF`QEDo@L1;1UV<}{~w>w^fTiLb75reEIR5Q{TG5++^BQ;G+ zfxvfW?>4i^bz@GGwxm171s*lNd6o*z>pBwJ$hK12k z8I!D@dCBB0lqM5-e`4h$Y(^w2Iz(oW`yI(J`9OY8vG!y9u>51)S*3tMeDet}+{HO9 z4jh6&@Ax<56UMI+4dhUt^Q|fc=CBqeZ=o7B5|gBTi+2!Tpwa4y*rFA0`}n^FXUs|_S2El4iYy^;%|DDM`POPcAnkIhRhljTlYP-s>C%E}#xnH9xB--DuKcRE()=Zd?omb*?uJkld zGDo&|qtud~{U)0&6HyqnMN(d8@oFoPi}K1PW~=^Zw+vw)c*My@gV5gz{@5yN4kz$h z-~P4mwzZT;@&^7&DY-{Jbh;EJ)hGrk^A*V*Rqox}0|->oIa+vL>&Kph{4M{&A3C2V;#vhaU{b*xJsxDlUWeZU4aAv(E$T#U z@FXfp!jh9Mit5=?+>vxM=kMtOHprdww{KfcgRM zkLipF@hl<|VSbX-a(sA~b)+@xd@s(^>3hT7?s%5-}L%k#;*JAY1hh{eeO^*_NFYn#)v*XUR zqvh7iF0>x=t%DJXkxVOLq@?dut-HCoFPC!)NeQW@i1ylw2k*5^)pZ)@RL9^Cx;5E* zDTsEMv%|bzV^-e}Wh?w_Wvt`ZN5U$zsWW}FW+pr_R^aSPaGl;SO{8Zx`2`ehQB5s3 zYrisT-d?_{xTbxcETtIBrjGK*VCL~6@}4!$nB{=jE4v{-vEPVqaVFYtfSHttA12O-lD&( zm&03zQSOU;;P7&P*iJA?vmENdnW17c(6 zY7A(;$37*VQe>l8$$7WhJ5H|ze_kb5l$~4hVQYf2fO}=_fyTZnskf$!bFn4Ku)Lrw z<#QpOTv)Bg0p7dLR*v45qJEFIdr$W_P)A#yTRWU=anG6W**Fky@4cB>`|3=_nyFH8 z_wnH~nioE8YM!3=2i3)wqo4p zVJlCQxu(YM?H`r*58t}DNKkKdnqPm*y1+K6Hi0n$+p>~|i$(5^lm$YJTM7=ZaP_mw zc5YT;M>8CVERu+AYARV2(J5&eN$E`v?(nHtgUS zN@Q+dZNmnGt;%YH&o2lELr6q(PJrPi1+P-vl)7SkFN|Mhxv|qNLvKXHMU9~b zG5%a#85KCvj>=)BGaKA8Fp&HDG$Y)J(|z z@>js?SD*1P`9&pBj_;2j?EBjjCvpUZVtK6l>+r#L3FI@GqR=R&XZe=$t__l>GqvTs z9yYrnNwO!RH=2hbfozug_~VlQ6W5)Ad?K^S`XSC`o=2l%Z<=uE9*P;xv3u6*I(eq9 z?Ar`jR(Ienn>+~glkVp{yrxaR7iITasZTP7W{8lsu35B3O!CUnIBWSq`FO|d>)zEg z+DQy{n9C<2`--16I<=`3{CAfqnq&Q>rSC}(R**AxOzpQ-uRTBRsQY&95c)>lter*9 zxIm?ceVDx4*m`GF|BeZY(%{Sw+@p19`$Uz2f6uJ}$LsH_2!)tmIhEx=x--qAKC3!? zro}ExrsKozE3GSq*1I3bL#k2MWld{>okqf@I5KLRKO-1m5rwOg1x5Yu>I#MI`H0~_g zF?|gTo8GR*U`&GV^;c~8$!#Z6IeOu{RY>7Dv|p653hC|CW%EbZ0MeimhT6JvpVlzLCFd z7xez*2>9YcBq#wg0r1yvbcmOQ>4PKHxJ-BlKJ>H(7LGvxl}8lP!8Hh=lBd7CCVs3hCJ@9U$gZZv{XqI6oPb^mMq;etE9~Fp(}$fW~}bIAPl0*a6r&SBDd7R+=iDR&O44+jG!fdWMJHO}9Wz0rG0hd-tSqKKff70k^@0};Fne71CP5qt(fYCS+b z-7901z$&1Ofan#fGn9=AKyhY&qbP7QDj-z=-EeP&sATDnD0+S4GVXuV62a<4uzqg* zVZkw|fe<717CeOy2%E*usVq9>2nTc#kvtr0Lz+T>-4VcExoCF*NQWCBAzgwOQ9}t% zvju5~Qk?|gCjx=K$Yfr1iW| zfExY}wE!qxriJpHdibbMij5s$k^IB*zy%db(4Ecg75S6zC$M$GfF^>A!T5F+Zo~kk zgh$bxXL%kSU_BiH2WU|IoehyP8Jm!U@8b0DS6Zz~%tqD&VFJ@PY6}2k!8I z)S7dud#d1CGsn9wZ% z{Bvm`=>7a46R?Z&%HJ-C+=BaF2hvvY`dOCzX@U5gN-vL~f>}Z(q7WYjC?o(rdA}IB z0!2{a#<{{p%h5Mv0QJs4G4WCXsnRUx`LDwQB|{p8`&@@o!DD`-1po@AP={Y-0}NgG z4WA%j7EKTqVm;TP$_l^(+8_+{TU`Dp8h=_Z{x%*@9~=fWWBg~2IYxVy6#^L*3v~8e zbe7Qw!RPtU0Y_vEE(44WN_^U9aVs&;0lvuwC4%Z0!&NzeP0Bd5MNJ^@VwdPmM~(M~Tof-WG8#|glQGY8Jj30Udr z0*~YZJU8Wp5`ot@PQX1XHxR7=P>|e*AisA9VW6qx-$Z6{&u>69{b>Dj+@*LShEc=y zxuE!`=Rn`F^W*~H64yW1=W-te6-;F8OAjX~Q6LcIe^`_L2o_~5_gQ4ORj_G70cH-} z-ysrv23oAjeeQ@AH{b|n7zn3vp9iBJ0sF>)FwoJu&%Eb_%DRD*+#JY_i#LQ=rSM{5C=HyG|LlGSzaGbj8raQ<=Y@;6 z*;Hj9Rj&@%{h|Elhj9WwV9nEVP&UGUe$H$n;F$^#rfK{?o2rQ1W?&XDYTzHEB&xt+ z-c3m8@aF>OGsOu2Dov|F*^t0_I5rUQTnz{V9Y5fG8GhwHYdD}e7~}7|_}yBN>LYlr zAx;p`(A5CKnC(D7r-2p~aA`IWGK}Uk?Lub(J@S|JFax4A4J`1*C|S0ER6n8fNF)dW z8VEjs@QBd)o%=chW@rOpR^hX484)*1*98Q{2r&KPBZWXaNcBFaa(-7oDF$rNNB!GF z*$xC%0CZqQ7??-26CCU@0IVI?jdSNDZvZlfE>H$^B!QvB(cr#I0VsCdt>keP`iC z!cbaxugLi!v4T*rI{+$R5}I zfb0KsT%Cs=_`lTGWDX8=vf`gs6xvBZsZQw^`mZj~uPvO?r7zYHD#@x#-IP+7`tS4E zUv-Or-8Up}pX!mgs7F&yR#x$EB^SyYFBl`X^T&2mNhrgq?SHBr|K47)|Do4OLP>F+ RL!Lu)*&q-LOkgWQ{s(|F>g@mk diff --git a/dist/pycofbuilder-0.0.8.tar.gz b/dist/pycofbuilder-0.0.8.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..0a095566944df1c6a62dcb91a34e72e402625ea0 GIT binary patch literal 101062 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%0D;@!5& zxnc~@^4AI@dFA-35Tm>qH2DBf-FkUn87#xH{pvx!XA$AaH(F04Ry*gu;Il`V$#%{7 z66_j-@;`~#!UH{Gp-6-TwqfdO1@qK<;uH3sUYcaOZZ&4`<=GuEYZ{MQMrS!kh;va& z{8_q<$x(`Eu0+z3hrvgE9LgX5O+VpLAJK5Z`HSDuKfJ7v<%eL0l6C6IIcK&} zal`ok2MFc-*wXzDJ>uN3`Z@;{*?jG;$`)HwM_}3#cK@IVXfAkGT|caauxd{4c9W+= z*hM$m))lTjc<6ol^&P*)QscC(1yCa6@+$a`9+h+cl^_WFE1=v#?=!X%>D?NFvc1YN z)ps7sS>G4x31n)?sCfEds|%NmVN00KBObf5D7?=J9O!A{*!JHpyTTPrsE~FlF>~f& z1+2&M0eBSHPA-IGbZnI4{mf}V+mV!amzO_3Jt}Q^3w|kpjo3 z#S${5(SyREaH%lkj*ath-gr*h)Wk<*7eYtn!;m!H7dYbJ$~TVBA$rk0!j%N-L!9~} z2X5V+TE;`)Jbv}g3@VNn-S#bkfU zjYi3~vT(em;9X-i4Ko*bcanuG@TWS?2W=39Paclu7QA@p{9(r)XO=b>zr6TtNo<(= z1^2U+Id60yE8;IyeFx5p+W;c7Ke#zGSn-dL;c=@Fs0@`o1juL=s? z4&wl(TI{Gua%++R(hdN!o}~v5>H6a64d(%fF^l;4mlc@fh5jAqaoHcds0xGh|Yo%XtPu8 zfAZ~rAVt@^$@D&y=tK1%RH10b?w%>R>lDE=5!!EeH4bIX{gl;4m* zyP6BYZKv87=I$t(BER2)hEhao8i~nDERaID8gtEy_06EC=UldBH z{|!b4BLr@Db;NAaNM4aT_Bxv$U*bNGD~MOtkVn@1H9y|bz7gppmf9iw2X>A|-SkZ= zNMOQ-|4HV-rS&B^zox0oGs4ogky*VutmqG@4wED-17KooKr^l&>&`-Wa7qwu6$y+fzchhf!Q6=h1&gO zNL2jXbo7gZl{>$)(VZ;g-)BkrN{<_;<#X5OajuG8y+&^?QnErGCCMdoaP0+7xil~A z3*1Ev2x}3iIP5GJTeDQ#Kl?98)zJ>)CGhm2xg%gGP0#o1+ABqk?hw@a9moPHFzXQB zgK|Lty-<3A%o|nM{sRDhOBnJlfEd4pG8>-U>K&?^2nD63#fx8JD`iY0P#;l*NBov1 zRf?!bwxBH3JI+TC@dn4IZX<#|mi>E#nw#O^=^Gh)YX!W;?dq1wn%iw8zSOTDcy33) zOOFWz%d0NSD0>Eh=k8PkHB8g%YV7P0`kbme_tz7zU`cR94sFU*(lQ%AM!?W5S5@To1xasXsn1B6ueL@#9 zXqcGSt)56R4j^HCz;-R#$0<^DsQ}ZEJ1CJGfoaWqO~c#pt49GI8RSPwd@@nkglzN2*>* zp>J9V!onbjSsq`oS|Y(JcEH3<43C7zz#uo(oNEOUs``v|wyKd|<))`$@KZGJ&kvf8 z_+XexlKd-Y2jvV&jpWlb4^W6x;ICD2w|kIW`Pklv(g@zsRZm-5Ddlr5t=5ip#Pk?) zu9P3kYjNxA%&MRpCRJBM1FN+}k+!usT>DD4l5>n^fKl>e zM+1bM*nYK75b@-*xr?L6Y75E3H_BPD)*8xHD$As3@pcbv)ERE?9QMOHNy68%X-jnU zf;jMqqrxi1K{SuIUV$r3$jCY;-PwHgM$dOGO<6~}6xE;DCpvGPgx7Si%sR*L=iXfx zDr(xe%T*c|=1w-3mT++4o0`FLs8RG+8=%=&V3_~R5fvSdyL}@WXq#Drvso2J6l0Ab zUQ{{?11~3Owm)h5XdEJ^O%>Nd%N0i7u}?G=hlciP)*@Q^k6x>Zc=s%gppva9o7|@K zu0%Pbb~K)RUQt}z&1zSN2>;Jle{qBwhW;&O^Q`@3Tl@l^+sfd6xM=SxBHh!nNp?-IkrvzOhj(&VSRPk3IOJUt#Xh8@_j`q@fxTi?hn zX-&pza^N?Aa%!7JJN5KcH+$0Q60fp+DJAjod3TaR>oT!wivNC%JNH`~mIe=5UfM~H zX;$x|g_Jn+D;>C)-L*E8beo`42U9=(sdKa`dn`tO_rJgyF9!{JmV7)>_BmkV)cY*i zvji)uA4>>R_46ana_AUFTBc0JQZ`Fv?E>B}k3e}FUS0zi|1>2@)td0%;cpSs``BrU z-$6m%fj58xvC~>^b7ty4fpf<%hM3iHK^J(b_3KB4bBIJST3@wVwkUE#lZo+j{@$>^ zfqt#x2E>g-gJAjzzr|b^VQUMdua*mEO^;c5!6$2unkLR{F4$~@-&A(rW-cPAUkg-K)z2RUDUU|93g?jSAssPtNR|F4OlB&>_5nZxVxlf$k zU(fy>O%}-?w=*jTlyJ){kLk00FGV;}&xzmEy*-tbQ$tT-@!3VDXwW_&qMqn`)9>@X zN**ZtI$<+WX$L@j6#|(oOxY$@^Rn7noZkcz(#GeArTpF_%48*qfG0{_;g`K{%{3p0 ztdcPH{6ZZj?)@{EYQ{g7rq!Jub)UH*VkaQsyRMn%O*29;t@@RZUQ_fdi1<(sM{SBU z0L;XWEVl^LtJmn0|dgO3{!1?8 zsnJ@?F`{0Ho?@hp+viEIDE4OpWNGm+di+FqWV|Wl+HWEtsb>lz-zQjeJ9gc-zpYQ@ zxzE{hS}=)p^gf|(xV22kdbGc>1Xq-3 zQ95mU4!z_|UCQ?{W7?i^EDw-VK9?aMN9$xN`T*IxA z`&2$IXbfRQ{=CR-D7WZD*8NPsPE{N(3omUx>F74VS~ta*qw!aa%H#p;uovyRCuh{x zOzd48KrDNon90?%o$<8^u=epYyu z6up=SLFA09@@?Ua%dlvbWosBv6l?<;uoE8@p=v?f1*b@hzKV&Cs<;EKC|><}aZT7) z<`Qxo;q;^w+eZEiuGs(D_ov?#^V`Xdw+X}&z4#Q=c47#H4De!a_K#!uhYxxT;ED_+ z&*|S;U5lESN`CS)YdJst6+YJbyMs~@%{5u?v|TFH>VxQw(}eW4JWMG?K@nnF$J<5Z z*tJrvAj~Au4y0EpOrWsrcoRw0rqg%sh9EcWZ^uUJM(Su1F1FZ3s%D=@;k(Num{{31 z28%w9BR;`gge!`_IQ?rA%{9-T7~JM;-Of@|LeI(1l!rCi)i=vU-e-IBMV1Ttni$YO zMQawWxsv?=#q4dXCEcW4UY7>}XZaD&E-zJnROmaZ?0HRh>H$Oe^adyq|9Y3 zAief32)|6TK`Ap}y_#5|^X7UkUpf1n`^7D7-uJNq0ka5J|JI+YNIM?gx9UQ9l=^d) zxn^)Z0>A0O?UPl2o#)k7rcca?w4YJHHynz9IRz#TobP+$s9|%~M&HRIP;$uFoEeV7 z+n(e4v^$gUrTyVB0{1sgKep<$b&ahRs%;0)-uE>Y(j3uO)e1H5`>{Sxy0cwZI$P5m z)Sxj5QEki@n8)u!QJ)V6g?I8;wtWuBGQh|1eSq-V7-lxdg^yUs@FrnyYi{7f)t1;IaS z3jbiO4yL|(vWJ;~CvuHZws&MHWZY8}&60Vug(r8+8Mj?!q{%gY!GPTZD`h92JkEpo z;nF1s%X2^L8xqd*{JPchaQ-7>Noele@M{f?khxm`Ouxi-5pT#@`$vzMFR@Q;kv_qd zaKME*rs&-pW|bkz)zn*}Xm$*h8?H(!K2A}RZ9uzeUOqigJ%--Y9i`Y@$(58`b5nte5nnO<7UmJ6xLxr^Ql=r2c#*z|KZ0WsRi4qiQ~4 z;i$#@j=dPIcw92$!(aG!223rQkr^-S& zN^!ViBeD_4@1XdMPmY4H7%OYwdNC${IO)LMcXyb~^X&|A_2algjLz<+vH(cPV@|vm@(h@ zM4v_f2w&Lum7ryZNhGFyF5)kS1e?L@4e)=Bjq`Evz)d2An^2%OOMfXvf+i#DTA4U; z_luGfxv{>LU*zGCHypFx<>5>XXI_h&&WSb-{FlJLwe{9j<%j-N^ZHXpDt26$$ThSPfE4Ep&00Wnnwb*=+_{72|g8oQRNaF7p|n;85%x z--#};AE?i>|1kL2Em3)e7Xasbn)*K$R&GW}SW(!e*Q4S|5X8CB^pXrr3=F6a(l^)s zWk1q=5=s40bX&AlS-4w-9tBu*uzldHOfNX*8>2qs8w(Af4#&07l77h2a6VD@ID*(DXD$l>FaI(9L8YTb1#Fzd!B=?6MOUA$D)c}RzZ!0fk3)-F1*;z{*^?v9-a*N4 zo!Q;Bj>AV)^@f+(_gOZdaR**Nw;{Qx1i3}1uz9HPA+k>;*6lL&zN^g0o_S7^pArkV zwj^0nR@;K?S{?f`ILBY>x z4RmM;!vox-e+9}y%*P}}$f1*0?i~$n8;d^LfnMxQpO%%hUn9h zVY`vze44;~14(8aT1k}VMHVW8Bi3^6@%_41nzjFSrUL=6K)QGRYwLaxJn+)4-NE5} z9Q^?02N8ay!-yBrQl-O~7g0f_!?+ibPv!ZLYdHn&SI&x9A0(WixSJuI*n-H%Jmw82 z^0CMnG+Lz_1seKz#ERO<)C$OO>pAn2#&Q}mBGC@ZisKJMUO2k#zg5@M(nc@7n#SwzDMz*tyd>tf zx%L~5Ve&uEn{dqX_}US0Z)r{&tKYK>)nm8_neD(Cp?*@uttn&M@zNU9!FtYGR)00| ze7Ye-R}gpjT<6STjft+hyJvvwXs;8F95qdc?#6OXsOCf@$s+F+ay`PSv2-prAfD0v zd)H@j=y!Mu`&V!21W4^fEFBWsu$9gMI9zWd&ONeYB|h-WtUh)@edwqC$JC?(`kYtcEGXRd6=fB2K@*Rm^K_tB4gqxy9pQx z3JpN`cpBBLmyT?sD0?_lzdNwK14r|bU}y-&D(P9V$uIp{X%=qVyn5RVA~`H*N&W#lHWC^3LC#OT1(cO#rIT&{Y2Z~5jRNs@ESfkn+)$czy07VRv9 z9TMh}`x=I%C!9`;Ojud&5Wl8~F@4a8buAJq7NhO^JN$EExyTa=Wk@JP6R||iFF=#BBM!x8Ii3Zyj>z4A|@r z2%L#Agrm|xw|QV;2Ax-$H!rw7WBd|2_W#;{EJmmzXN_OiyVuei5Mypv*aMpCMC|Jc zUDADp)L@r0H&)qQY@CKSUOM@D!`ku*_9(E@54FTPQTKc}HLTh>yvz)#9Z^{%D#!)g z`y8;ELNLUBkIWmH{uf(6_!NUCQShmZWb@FfpWPq~Y*xB*EW!LtYQ%%bWbF@T7LHBX z=aQyqvG|p=k;o!GWBv8ew>SO`u0}5@>AQqZ;b>;|S1`P+5gpQ9@XPzM0<~qVR&oH! zIrBA-*+7ar4L%EN1a%56266e*P3&7F2~2&Ii|o;LV%%waJ_slv~B2zK+GfkRUQ-=eC>n zgla)f_`&gmH)Qdxu*5G|NOcRcu$6x%B9f)rS0YDvd->$syZ`_^w)Jg8rtmk1cjE9b z6qrYl;OBiZ6%3Tg@4tV9iMxt9{L|88`NUkFPJ1O!ELaz^jeB>}Vh7?fcve0urF-~o z<=J?Gu~2QhOE@y?QinO<9TmfCfCwXNsKBWifI`Ff#IVi$dOBerZSl-^(f#^lxykdx znD;-1#Kbt#EyN32#@R44{caL)Y7HqFn=t=&2P~d&pyNDJ_*Lve$A=_+Rn$UE82_C1 zkH{QeT=dFI)GMem^g;(^tq41%v`|W?&#NNzN&`hz3pSgSW9Oa9&#fm9D-w0t zOt(iD^OLAJzr2bwx_hTmR>xytoE8^nsIUsM{LtCCs?0>v@R{~2sh9VaX;SVVtFwpq zF9IFpq;s@L`tQpqOf%(yGnoBxZ(E-Bs@{Tx1sosn($|bD(enW$;g|}=my4Af`vA!d zKJR#?q5-Af?K$fZ>!K0mRUr%G5y5n)tJ)BoEwPCRT}s4(X;O-4N|jp%_`G<1JnAwX z6Y2FUFG4#;&XD^WyDHueM@PSkSd@+!^ZEW|zJ+7uA)%(VXawn~9h(wa2bZ_cvQEcC zDskJ$eQo9nBPoiSzkgxUGo~NEea7Bk(&>=vrvD-L@sWiRZYuDp^qb9bReWk_!*UqM z&1qd*etTk;8LIiW!H)CfebP7@a#p$@O-Q1{f7JibrJpZzWc(nOEhti`l&_Z^jg0;I zwQf8rzyFdAN9g;mkR_*vd0Xi8h|A0R*z16ZQU|c+#=;Z$b^o#u$U^2Qayntx*W*;R zfsQeW&6GRpFHtGCv7Q+(P(5Ipx8PxUf>k4Q!Hbj1`0DwG`Rpav1RjHZadoXKr_q^h z{fYeqqXX@yoJUg5LGI+J&u47eEZb!4eEw3co}%=}#g#2oa>7^3K2hr>)!%FrzSc7K zp(78UKR@`zRE-jDZ;O_edH)z(TR7xpDU{d=aAE-03@{bA&>hd5&QyjKNROngts=Js z4@+e&2%_@i7|dP!x(?F(0b|rWK5h zF}gAk!og0hj_99$4^1xka}FzrvSgTOw@#=1?_G6lQ?|uv@L2iksH09FJ3MlPcwDfwPK#-(_FLJiri*Rfh9cLuvy&2+#$bd z@GY@M3({jX{V$q9H-^)%v7D)uaGv#zb~Y}HCV(x&xyq_FIO*9Ds#Cd zAzF6;_GG%)saL%S4JvHR9NOtBsI*>ZK>73P9; zUN!O0Cy*A)<1bd4jKl}E#%qn-);6pgW`&-s9dDV9Xv3Kt5rGIR9NIzlM4F6mc6q0Je)&i{~H*w-gxOuD;} zh7No9No*@rWZ7~RFXE7bPbEIf5m)9lty}ii0(=C_hMX$x{Km0yje`jv7RHyl0LV54K)o#jqDh}i$NZ*l7p4}8tw>(o2gIc zl0-(?8Tmueve@%DkF%P434Am4np684bLy%4=b5;w>SB{1a{FIMfs{+BlP&@Udc~!q z(}U;!`|vKyBUP0gcg&vs{TFtjfkxeH!WQ3aH0ny5z!RmNu650D@{ZB7q^HL6$F6!Q zb6Z;4Gsc?tx?$LjftoG4OQtyOhNYDJ2&2ln8dH0`HOu$qS(6)%m>vREL%W!+nUvYS zgO4vsy0nxgI6-Wl$SC8Ep;N;P|IvK!b~8vA>uza{LR{@(%!j`Vo(-^7-r?jl~b#uj*lH%X^8TqKi$A8INv*Im%m6X{~h&r^QnqK zG*iaN<0TGVjpz05+7SHe{9Gj$6o?&-ixZ77Ou)bZD-Sy$7wE4(2$Kt560qzd*6pa$ zDrszDtl~Y;<)nQRJ>V0Oi9e#bG>VIGSK%!{ySUzKmg!F(4t2%iW_2=cov;FtEu)p_ZWkD|JhVW?@OH#Z$~!8AN?# zyv~kYCmYt;`#>GXIKA<`U{{Lb>wAI3p88YFtu3_hwZNU&)(YUgzm{-EGp?Ub{^`Sd z+oXtk#tbKnhW0c(W6EMfdm{&dF6lqM>Fl>(WTYfY2aW6kMxHSl1_isPADq{Uzd}N~ z4>=(4Eum9w7-w6}pDKY|QP6Aee^3_4^v!SR9_NO+Cq9(E02*=+K&PvX;1}!PgASYk z_|kh-dgyXVbpD(CFJJu%x`D2orTqiSRV+IBB#*s_R6^^Xfm7+}H&7xdXa-tv2yNTT z_`l)KJwOm`zS+~aWwpw7pLqL*`~~RrClErSv@8c@?Tv|s0{$!k-_IM|nxL=iP%5D( z_FYU>L@0DJ@%oV>rxc_os?Oi`9H;88V)j+^C39(d%g)*N=wn6z*tGs>o{`lE{3Um) z+IqCx=d~pB;?;A`uj)=p&EkpV`tju?kzO?*;H&>x)>MjJGt~MGx^oHTgtUx2LLHzK zVCd7T;f0l-#gW(}kpFbWmj%K%{IP|r|9(Zi0R?=pL&9`l%O=n7rySz`u|E{~ z$_4bnHb{Bf*7_(6y_Z5bIk8-Mox2h@$(=ZPUHS$cVr2OB7_ts|`$^d)n0>l7_ja~c zO`8*=@XX`i1&P_AwR{5;CHpF*_&QB!Oph;S$Hw?|@1JOm)<_o!3daGgR2NO;cH#XY zI`;xuX9O~VPknkGIphXMpq>_IBvmjxsGGz;0813e{``*Z4*|dXADUj@1THQ$$dj(~ z3n1cyS?czX_I4;utIh%M_iJCKPSSHRrZ3>`!jKQsP5pt$MWB0E|NVLcbXAi;P_0Oy zg`Yz&v!A{A@0Lj3EYVfod3sOA8@qa`57~zj*<92U4WOVKYrX0NfP@Q*DRcRhNIkQz z1&N_QP&(M5=g_2%kp@Yq3>}`W!Tun}l%NU{xLLRlYc2_>hU{UDDHqk6`%Y-|eqV~B zP7(y=+_ZxuG%BZ_{;^w3Xjp6Tr_`Xm2c>gBv26=!w=TK|I>lJw%1?TL1dwU}z~^h6 z=X=d(07>C?C-|{%E7@cJqnXgay>NElrbphUw7xZT(DXO@T?5D#6R=yMFuf#KCSRT$~VWzX` z&0$!LmZ3BkoU7GawqBbH+xKCqxBKKMr`32OxuJ!?b2x2^57^J(&~7k2Yo^HSG>6F3wdKRkXj25eeS9<<9_Dl|XrQ0I@UFk#c|&IW zIzu;d3juO1PyYFNwh_#E0Q!kM?r%Na?FBwNb3OoL#UnLH06`1$t+y?}x0ZS)Z^*|0 zKM#b!d;VGW8ei*vwk==}*F!0$3_8vOEZJ^ky9>mqsD7}9If z&3^-ly6S!&Z9=l1?!U6$@;mu3=`w+A>rxoMZLCprevFQ8eH`LEZV#SpfdX6}ORnEu za7v*2XaB;Fx*uK?O#qp1?+9Sq{>*!`hq&p(h!*A%H_DjtZ10md_vS>*si~g-c75xO zpa)C<`EOhyiMpbKPd9CGQvn)~V-k?))3)^9(|@P4|L;1#myfN0=WI+6^jQcb{510< z3fa7ZOwkhrJb3{`UbdwnZwE-$N83+#B~!xChiMaE$k{jaXWqzu7o^w!Oc3z)wDpE` z_3^P~TB3=fPGFMT@w^M_g5JKdOBzlQUssS{_LtIo?fUtozrKewzy!UV+zSj^!?&$^KH9J)i}tu^FNc^ zbpvVp2yO18wg&PBTPVZ}@_wA2j$=-pUXy4;|6|)pseMENe4#~8Ca;Be+bj_#Qk^BD z!Vfo^psaU>C)Z0H#NWEVuJa*&X~9c7OR}W|pnj@>7Jz26%tDn`ml4oYwp4dY)O2Nh zt0%9gC6c=8z0!@rBHlzU%vNi2#pI*+`X)=6$i~9QW zw08y6b9FQ=`swcJw#5~4txUli+M!MW=anR7&-zu)Vrnms2kubw?Ya%~0`p~%z2sZ* zA%#kqk8waZPR*^?6F?ubhv`9~Mql_}y|GEG>cy1~fCKXEHglyYF!1@JKN1u8VD_?S z^2_a_pal@{R&b)K`r#T36#UN(&M?IW*?Rxi3l1b9J3|rn6wdw{AII5oTQ4?`b4SqU z@*BqOppOU?K%!et_a=S&mhTHYKE!$3H~-FTT;kY zLm>4yRxVP}!S>U+$FugqlUHPFcbH^^v*w;BT`p@k5EDqA^&#*sBlr5|b$!&UZ*$jY ztu^(9FNFLSfcqb?!hB8Aoc6Ip`@hO4Ka*voFg z&=fmolcNw&*4DiYvk+bVPuQyqN)!)V4!>MVU8mE{dm7c z$uhy_@RY40*Ul>G_bkK9_$v&)jb~q8XS|&zzoD{pEgJgcCU(@Rm~w zpor;3t50&Kx~7i|08lVL38U=c!tRA354BjR`ZI@Eo9iG>4^*P(Bq>FzkGtUCQslDNpc_hefdH*F8 zCxnhh zc~v$L1EGb@y4vD8@XegtiGiZEpEn-EDC$sQeuZT_SW?7BXs+`RU@4P|#46b``1Mu;+;Og-wq@mk4 z^Z_r2$WU{aSsqn2wgUBp+3v9l(}(axvXE&X=^ApMexxc2yw!pp&95YGeLz*R1sDaA){ANLvKh`1O0Sy4hTcxuWC+@*7FOHY8Zq*|JqVA<^SJf%EUSc z;Bkw4gKh_HxxNp(pW7aV{yfb5L$7Kc)qMtipDcskO?YX)fPtK^z5c*}T@&jg=mZq% zDgxDnK%?7=|A(osjEbX)w#D7u1_=ar*I>cjg1fs75+K1Pcp$h09bAHIaCdiimk=EK zk?*d%?)!6AclAuos_8m)q|V-DX{{b``n<7W9Dw;~&=(s*sj=uE0Pvr#f(KD6tLKeh+koKNnDoeq zPDhXBOVdNB%U4js*$JBIqhPC>A8}90l|M1?CYDZ^`hleV&$h121TK896Wj>9{y}fG z{js>fg58Z^^#Jbk#=F)od6{0=P>=*E}Ey2E{&SJBSFE&G)a-2ZXRa+18SHZ zDXZqNqjcWCXoOYfoc3VxqMqMKo{gG59^cKp75)@T@r-1!N<|5DfE}Fs0n2COOrSP% z^j~Ng_Q$_J6{d6TUNrcG3b5`TzT5NHeZJf21sr|a^@WszURwM21EGac_MKmm?uBnH zO^=C^iYa`@?X&k=_rt3V|Fm)${z)t6*m(=n-YVWLtEjgC0>Xh>sMQ#tHZ&_4Nb?5V z`vDNw>&3isyT+Hec~~}i>C0l8z&``>!h^r{a3uAcy19vMLv36tGb+!c$L(4gEQLah zNQ==I46Tp`K*Xs`Aw9Wh&@uSAB(Qd7)Tmq@BU2s=kesV`jfNv;5cfsqt9J}h2ARfW zR^T+odQ4r5|Hk-FZ16vCOhb-sluy+0z@`W77i@)vsSmBl zr7|#CJjru6fT36Y38c{|M=4v@4fOx1Nw|(ut}K|S;(uQz)td**`2?HAYnZ94iJkCgij6I z8C9LtFaIF$UT^A3))~5oY3?li?mm9OcJNGS?tB>iBkGKY@TsP0@H8a@Ka9y>#6_+` zu)3zfMcUd5WGZCPl=(x(jep`e>?n4f8zd%x!4kVm>olGZ!xcGNZxGB?V;Su(!`>x> zux}zpo+1VjE@ul{7O#*9V%@z59j0GD|uu)@g&{4{?LNbQTN z0t<7;Kq1>FoHp(-=uX0ST%OYPDBi*}BZ$LMuscW&IZQUOgiYE5*!i^+Ey2Q7)Hb<| zM|n-7WQHN<%cEPX?{$4Q)j%5b_Xokd>V$+zipNg32*H+du~K73Y0si>8H@-2TS3}q zfWHR7zV~0Wp1Jn#!Sd_}D5zgMKAn} z2~^!IO>@pZ7I|?RJk;3k|LW}9OeYv0V0G|1o8qy6WrEx5(J@2X(7 zI_%sJ=fSO(x>JWGRGcB)vzO6Fa z&N+X)p3X5?o_1t<;8Q+# z^LRmX*zuMh3+YL**Yj*ZwYU*g287lh+N=CY$M0Kb{Bzx%U|$wkNas7!{=?GTi01#7 z=>np*pUL0AHaEuUaBp8q1T1a<`aMzI=f>#Q3u)lsjX>jb^`mG8>CwIO>U`}J5WCA$ z3Rt(d=sNx_Ew}=BI3~Qm9U+#(tR5sW7rwk7rm{kf&#zT%jLL68o;PsS6~p|6we$ zVQkegIrd`8CO(j}z(NwZ*F=a@%%bV;gtje?Y28C5SJ|;69=9DE;L+wN^NH>S!D5Z%j zbL9QVJ%bz9quJzr+boHli&ck11SI5AX?)Hvc|CAGXV_I_o>qoy?RBh%-A3G31- z(=j7h&@yoh&Y+d6aye>+ot z;lMkzgXUd9iK6UM)HaQTMIAAXMJa1CUAp=Ed%8A-`Cz%hJY7QS$w89O_IQ)i%6%=z z)NKYk86}r_YZ4Zsr`j_=b5jiu&lM7;E><##qBOHvIj*GvcM~QQ8I){E679qgT|CbG zp7Ur@Wv`d?<|C4rPflZl8%LL7)6>%MXEkjnsv28J=LqNEkW~v4GkjkVzHL{7LY3Ue zE_+3#RDKFPcyimW8Y*?wz?7*PYE6qU;*fWeOCK5k4HX#Ruq(G%D z49(XOwEn-)4{RgP{&9)V3t4XdwdfAKKaJMyz{~bAfA@JQLnO!y_VY$Re#@|wBnwsL zSMU?YtpZ7yrGeBLMGG`{pw!Gyp3fM#7>)Gt z(o{RNC|YFMS+wa| zUu`mWLj?|Rx8DK68DVz6nZ>Lt)7cEY$U^n9R$`^1w%@xU&v@b=qS?KCL1_ms)Y+ofo^+3IrW%AItHT#|!>u%+E6C|W zyUVTCHcf&ehs|Y7e1l&Me?7$wevNp?m#VxCH_bjWm6ksl4Lb$5s(rZPp;5$UD^tvi z#c@3Bg^bT`Tr#gFu_rZR)y)H^RGbPACq-YJ8oPo_$mq!AP|%>D;YuX1sBCKww+0hw zo<7WCY#mvM$vw=A-@6FaFI9v!dC@V3CzcDa^S0z4cjRki5|1XC9>zM-W5pB0q-yjX z?{!*s5*4Q+Cz58acA;x`<~7=8!d4>4(l!elnxrVsNux(IxP$Cob0uhcD&?->C%;(K zX|C}>^Wn899DeW$wcF#5m0G5P)}-9*%x-~nyY$0_#V5YF7^IwkaFMccGN0~8ug(F_ zRBMr?v&(X!Q7X|QCP+IrkS#HclSLWuOn&a+kXzUHB#-#r{ZX=05t&jB(Yu|5DM{Y1 z#iFxAZniObGe4F23Ww>(D1C*6a!UDE0#h|XUAzv==42MN8G$^A`%wBg`g}ptFt6q; zhTpIRi}mA%B9L+9U%OzQ3$%ZAJ%0>5_D2s!{g4CTFTGF<$N?jew^0pepMP#w{<|ja z)v~_WvRCh!KGW)rkQ7QUq)z3Kmx5Iqs#N3T5~6ok@B*czffYP@um~I% zf^OZTZ~CNo3gN%h$v(+JSJa`0ibM~gt;{(}ZuN{PE_cGE+p(jL9pb5`u@8nLX*E@z z>!1`b;x1c~;BPdz$aygBur{)UH}r~qXW=q%BSDv0OlHStkwT=DKFM|Lkw%pi^bR#o zudHz4n-3jNli+aRRNyO7g<167;&14|BakLAAwBbT5M;-uT~j>IQ_pNm>uF#)pWNa! zz%?QOp+TcFp@)7)zRhSx(a;JD`(`nrM8qCY${yC^;hcfuu#HBot#jkOJX)<8$i&>^ ziN}HGfFWs@5qVCU?4qc@wG=D9s}y=fJV~NoguUTHM3~Ij4aZ6+sl6!KQf-9?&1NDX zV3SiE8Mfs%quv`75JZcM^3HN42rWDy3J*c1NR1*M!3gE1!GW98bT}0%5}rrIK}zYO zreN}?u{OLj2mDS;A09On&CFCNPAL|o+hn-A6EWFMfdeh8#NpOp-$g2#B*Ps+vJ>xz zUZ?bXhtT(h_WX5Q@6wG)!`z^|j=Mo}rfbJA_^QOekT)WujA*JYh(SBhIfAhPbCou6 z==n}eXwm{C2x;H~s^AscqVkx@N922y@DiK2K;Gm6XxgATj~oR?nBbEU4_i`&I`jgD zXt5P`NVRKl0_~$5k`Je0r_G3J?*r5uq-e7k?I9pzN^XY3WRPsr>ag=&3;f4V^|Jh@ zA7)WFC$B;INt4tAX_Z1P`J3?}jzo32EshE^S~63rD|JcYq9)dy3|^SH6&a2YCT1A{ zRpdo9d`T3AsJb6gIblvmVUakTR)>tnSYd7XO3)t6g!wwI%l9DIO8V}1$Y^3_LX5}5 zhCSTqBwS=B%#O>^I{Xb#tE#7o1PKl)VaF~AObXZTP4lPfLdp^| zFyo=xB%)gt#bMBTTp99$RShYH2-ZH;y&`6E;o)_{d`R71{y6118LPDgW!ghcn`-vb z)7gx&9(_cMWjWmluR6@FxHpCJC6OOg90PrV+)8!S2gNju&?&z@%I&yZk0?Ed&w54@ zNP7=CXAFb^Y1}JyvPS&svPsk+MekICnBlWz#7ZHA%UDz^lF%+|Wk|T5PeS);aaraf z!pg-e1}`P&BJm^YV>1gx!stjDy5y7)!~pC$f~V4zW=sQzQnTV+tlf6*WFx%zRxc3A zFjfg#^~31I-!N8FmV@uqDnC^VNSJSy+s}Mz?3C(34#^Y1U>EExkIz<9#kw^+q*>Ek z?A}bZP+MD2YSa9|J;!J2z&~5UE`zvQZMqcC!b22K8ayM8yH$;7t(#(%jkaJS*+!3^ zLK->4jK-HQTWN?lNQ|WKN(8q*WIjF?COIGmh>TOs^-4TktGEr4+43Sv?LvM1~S8t>msZeEAq_s7zad;Om^a9 zp^3s~Je0Jz(qPeePGf%TwnTK%ZjF|j>^LGesbxr$=!C^es=!}<=zMHa+`@oYkmkcj ziyZ=G=oRu-uT;;V1n+NyaAm)jZKhjXs+UHwKIWK?%08merv`%~or-&8<&rc)^4rc5 zj3TPPn!5HxavVNLHHwBym^9jOss0T1`QX_&_gwk4lg$@4NS`? z2k90=G+x#~PsPSt;F5Mf#&{$X;5`HNDQ05tRg+YcwraXV(F@bSM^Ant9V>TC_e*ER zu?$_EhTb3azz1WEn-TFR+r>teqRr&&QMiEX1difuyFYdxEz;28G&7oHpviP;K^N`o zNOXPTP(a|z$?6Hza`gx&|0ENJKx>OwUE1m1ROdY?z4hH`x>wNz&st`Sl8!9am%iB> zZM7CpyvH=wku$H!@Q3oV;1RS<-XKmYYeFJ!0)-Tz>|Am8c#mfOFlZks9f7DNr#(Bj zBJ91Q-lTOm>n2oM?a^K-DQ$HGiYLOtFUoI~$QfCtZW*ixP>J^O=`w0~2+VHqf_WQM zE^&1x@RIm0iBsa_XbV&55JB=yMKwATF`303w5;T^&g>Jto8M8AJ!o08!}7VPSOS$u znwSUDl>2pDeAVQgRgAL4?yAYTi=JeQp3M5#z%tknOiD#;6Si!b@hQ2h8pgCcDVY;7OgcA-0>l%waxu}ij!_!zDHjAAZ7kqtv1g&gG>9{?99T73Tgi&k zDs;4031}D+r?O0$G`31tM-8NQ(Fln}Dm%4$uq5#NBxFixv`qpmO)p*hib+)7!jRcQ`9dHOwhozSAzB=I7sKX44niRNrtH=- zNYNaoK=A?G{DEJ|Lum$|-e^5;3axJSTIDF(LfuhgGgj6aB3LU>i~mM-=`k>qPX>DA zjJqBMg#G~I&mCOA#VFv*2V5AFRReteJX{FR9b==wlg^WW+~)1r+g^wynHt&U=-gA3 zo%;T9*86iR4)+IibylM>AAwK9|3hmtEm~ob^gkjX+jq zPNLFZP}fUJYcO3{3|*4OK%e`d!m7LsgPG2u_8{hhb@{Nob9Dw9MHfnY1ZQKkfy25zZ^WHopYe>cWoA!YffwJbj3+VoDM zZb%WVsu3uKBK8z1Zf-mFs}56ULnJhd4K2gG*w6Xu6JNE0h=hVjCKD{`rJWQR&htVYWFJ!G%pQi{c$h%M--?XapI{ zGV`7eNmsR#5ZGRo zGY9CW>f!q|u5o;FGQo8c=i&gA9@TqAm$ut3(;&}iu>p4dvlM%QI#do-o&lPyju5nH zR>e?rxb?Fbqmfc2k{Cvu)j`a5pP?Od zm0k*G3aK=u$*P+Q{^mSpBTidu`^f4E+KQj~%EEXRn6;#uqE@=>eLUgUm#TJvXH_UB zpko6`V9M!uVdOX3fxJC((Qce24???>aG5lD5eCz`^${=`Zg9i+0w6l4DrUHdPWJ=l}Y#nL3_ZFG8xUpMHc zsLMsFn=jdSAlSzmy6KA}9cTLeownPIgp z^gSH)gu!&>DqaC~#DrV71dk2r2NMd}yl|M2-CS)Ia@r)BFxG_;`vI}1H|R#H)RB0a1lcyu$Mgo_ zxrEay^7R7zbqZn5&M4N(Dg9bb$dBU!bT{5h95Vdt}Mx_ja%!MXk{ev!kLy)Mq6JUVwwXauX zS$RXNihnIS6T3>FAia2C$jBS*<@t;mPc7fg5=G5{G=@Vl(R*4NMfo?rvSkqK{7SLS z6X{zTx=Xwd7H=n_O;yIftPUscSg_J4JCi=4?siI#ix1!^VNRboOKFbgGoS`Hi33wX ziMPzWzl}~46n($~*VCzQfbF~D(tK9>?yzO`{RK(I-0GQD3v%Fd!tINIkO7F|~r=xQ2`7K*`APlLnc zu#09xOKeE$=scM-SAZ@~R!6Z78BRr4nh+>~-G!+z1S`yak*PQULzVH{8gy~|&Qr=@ z7Fw0g__W-HAX(I0ISiSp=IG4co<>D=%=IYTC)O)ynuMZ<3d`ZayH$>4Zy`Dv<2baw zPA0)4n$hg*jrydi{7%d%)RB=T6uk?Npd+@6Y=j`vHHpNm&jXXcvVqY>bTdE-QQ}YV z0!d|VClqRYa6teD0t{Z{;-3JXFiLYbs!EhL^q_18ZkWKo;u9Rw3hHn-Jsy^3a84e8 z?Tq1)|4q9K9t~8FY{D&>jnDX@K8?2;(OVukQUMg8-o={J^nz4O&D{^lfb}J7#Ghv+ zdr2ef%R*o^GKO4^{$lCjV3D#gH*IcE$S{I=%t#)VMOcI5UqeL<7C=!>Z^^U$W=Y>| zFM*jOz=%o`J>kGOI>XXdA6PdG|IyQ7fhr$W{sI-YN(~F8xEd)WH)pRQzco5m9R1HB zQPAyCr<#ZDh_FDp4eduC;U;gTly|rEe5NaNETM1sF{WT6&FR^p0_Tslm*?;!R7>(= zsKFfJ4A}T%?KX-YCVM(4GL);Yxy=TlP^_u~eVWLqEQt-w2PZuMsr;{5hP;N%J9iQuEJPJV(V%1O^xdk-GCUw zs`0wc14Fr*$}ac82He{W$)C$)InyawbMtbu@Un9i z81m3IFO;<&Fu&8JHUBO#6#M5^w0T>04Oiv*$$S|p_pJcxJKMg!=wxKPfHpsj*rq|k zlbaYqF(?yUF6JacbZG|{CBgL$@GwDSh6uaaul%OVcvsp%)IezZYV-y(WjF^R?}3o> zQdy|WOzr_oL0YboY{*fsZW+B7EKy9JOGG zO$JNVHBC6Sp#8DL)+*8y0aoa*uHmLjF$;!0%ABop@l4!Ub#xj_RWsZK5UuX*0sGZ97oxPU*FP z=j6hVws_>Jc^6Q+7mukVTxH6KdFb#n!N|#rLG<{P0R8F|DA7^4qh7>XB)sK9kn82N zVp~is!HJ8v8GW^y5s9fAyk^Q4M7GLXjEp~EYO6O;zjs7@ur(h{%8QM;VO@&Fue;rJ!b9$ zR~Uv<8LTEx;- zEXsN5xnaMr54aB@CMAZxQeXTV{rNNR%j6pg`Q{1qQ_;;iGA2t(YJ#37yh><8GvGA%etvmWphts+iHJ1 z@jbbj*?wev^E(SUJuA1jV1xQ9in}?RT%@e7fnaqWy%3$roL5^%U#~kiMlQsZU(g*N zn>&yLf0SoV%of$EE_E_3zs5xR+iJ0?xgWKCC5lN*SX5XcP6o&uw+PdcJtmKVeKxfa zDVoVaQ<>pl?c>?YV9yY`;3pFsgNhluyB-@Vww4A{eXu5uO^8mHbU)hd&l`N^#Mp{J4BIL`hQW#l{ zTAp)}_LE6Uvrz~LEe!_sYW1c}!AmFL&QHXnB(Mv5$A6U>=kX8E`EUHflV^`*cM#V) zdq_s8)6d%9?V46(!&c37Ol+@-jDfTfF|5c@13pBtju2&^uaY4ja ziMIF}(So@AVUY^Co&i)VvT6NO1sT$+4g zX!a$lxisn7=89s=i&AUKARAIF2K$J!W?O++pO1#uY3BN|+YR82n^mh(bz*Q2j2aff zfMq7yIop|qVV@RkPX^R+TAGycJjF| z4~RJV{PT4jk(`Wy(tuHk|BD@DcETv_RdfcRpnK^U0Y@$UcT@HkNRrQ=JJe$AtH=tT z0-o&2{{pKL8+4u$(nfq-FMzoufX*Qce10oE3V9Vmesm^AD^wWeVG&w^=Y0H`2mG0T z5UKQE;g!h&V3azPH}Q3efThvHx3dkbZ-Bvj|1NkgGLe5!i7E*2Cq-TX(H^kZH<zoowF1xPqA299zO9 zG5*G{O%2wzJab5mwIz;>Q23z+Yh+sCu3=geByJE5{A~9+i=md8mcIM*i~<`K%7#@- zOt|i|i8*t;v;$4xrhf~)p5|n}>Evs4l4;bsu=CYbxZ@SBtVaGllkE4s9|kqLU%vMa zNAL0^_`Tak&hxb1Gt+3**R!|r5>l$jT|4U?@{J29Zuz!&`njhkNyX$a3hoh&sW;<)u7B`T_TkaA3s_o z^{s`W)zUhp^iv7c_%J%%vd*-aJ`w$xt2ml#gg{)B8vA*8lI&YNDoYp)XDU3Dl+Mzf z+U@Nk7r^#L8XD~o{k!?u!lU^V9wnz1t>zL2#oF+G<`cJ>icuvc=nN-x1C36IKI{Ts z_0e1>54=MQkIP%L(f`*x->LkGK;JCsg|vul(pGEvavB^(kNc7F031}OSb<27Z}4Tg zF;#8WT-hwo{w4l%Zq`oy>}2I1#u&briYhJl3%yUR;0tm?j?W2+=E=j6S?aN__Va;h z3_?OjHryr3>!4kZ`c;WUV zIdr%cch}>J?w?0B!yKGkXgVmu!v}u3h+j4z z@{0(+VpfORtGBUjboZDiQ`}z?p)L%iTvO~BQ%3pn``7+vCe-+?f~q%^4A@N$Gd^3a zKx5Y3ihBQkaeCd6IAQaDab00E&aHpG*3xTb^HaK3kX#&P*ay03y=j443)c4Q2?gVw zN0r6?l~q5Nu}gsD)wl<+zxVgJ_kXFnAovUDA^Q5A0zBKI7{kEHR2kq5@gFrZfwyM6 z)c0q*E#fx#Exkog#%laT@HL6mm~ZI%^GtM3um~70CT~KQdv#WN%Y)D;ZpC=qH%gE` z^V>rnCTM@BhI@vk5~+huIWXPy)RL**COk>(`8NVdCYj_gLmC*ONnwEWdo6wc%Qy## z#|Fkjn1;m~OW(?Azp2NvR9tFMpG1)S$H6eidhHSQ+O%nfC)J6G4EJSq#n6_Tu_cke zy~!5&)J4|qqjH{xRDH%$j4DG?otuVK0I{G*nE_DDCU{uSvEe(|NFCdbTf)1WgzZe~ zGUs0@ynZkfA&BTFwEir2n$0gaCpMO3c*Aa$qN8+5n;0+|eD0z~{=H&w@qNvQVWwPc zt*5*U=CI7RN_TiCi?9#h=fqh*=jBABJWdKnk5ueIv=&ON@3b%>taasRjEEX3 zOV!b~f#1)+YG1sRR-!AcM74N{Up(biqAM!dXSC0GuGl}$%r+d&t?<-4-p;N-AWdVx z(_8RNKV=KG?~Ipemx2C9X^6nS zaYn2=R`Aq!6taizYRlzm+13ami7T0z$!QiNCh3U6gp0}1SxL)&2b(?WLSEevu(XT^ znM}HTV#$1%^qkt38vjD({c4?`lqz6v9Ra%=Ly4jyLocFKSbPhgs>jozC&qr7D(}B9 zvhfATk2<5AS}C)mIw1C59P*xd*juf-dCyww9i@uDRvY^ndQW$bzim%6*MvIM7rqQ^ za7QOyq!(&^Q!-p$xo?;0(9_azYF}!6IFK(@k;9 z`08&n+J!o2eLA^4yVNU(i@2W{nSOU&?l4q+wd#MsA9`;0dwJ>Jt7|b}-DP66cyN2~ zy@z1XKI>@l$i#Z%ZphJ!pZ%;nKu;*rIydDaQP@VT4-$kBjnRDM$YVp%TWXYu~fdzn=)Z9asT_6LCajOLL0e^4g@HkZ*>q z-Px%Vt@3&wQG{kVI#kX_kkL+;5Uq69NY*x^wu_MAI~O!Y1}0?;ELkS{)feIUnxZ$?bl{ zcd~+MLVdIA%Bg;rc%ZT@X%1g?uS0Y~meArSmgUrDKMkQIp^??j0*&Ty#fX@*f+3{M zg!3l^s%0opS4!$ofz}7x)Q>-D4jjU{NfY;o=DOg*=&S~Wgjde*K|wbNCbbslJUb#L`Kqm@JAJXYLwPeq z1{xa85dDMn^l6?oy@lD?%A@&K2*g{dai520&i>KES;;Wn=!>q#E<`^uBfX#dg|W7L zSgDGY5C4A+(*JL#=Ks%5{ZF$o>;WaSnwgOTdsi7x=F-zjp#WmG-y}nZA*4cO43$Zd zKo}C?6A_*%U=i7S+sS%SLH{R5J+F0F*NAV-BMR3f)~K%7{jOH={FYBC6-R+1`mkjVGPFWzi^%Mb-Ag$UDuH!V@ey!}I#GI)&muPgQEC?Ie+eUgh5Z};w zg5o2i+4ya3clE)Uk1@&e zobpY}zr5PaBTE;+Cq^1GDG+_r^mJCfwc*uSFy!b{Is`JI)F{En^WLGQ-o>%Yvua`4 z?aZhG(qPc4ZSVNYvr0=tzkJQUzCp89+b+Q=dF#d}4+o>nFR$`Ji+TWBEGuJBc4a}kIr$}tJBgh8#n7fShS#@I@PuBV;{Bu-G`%kr zg)ko`xB88dO4<>w_x>$jlxHOG5UKb|&Y<5oox6=F(;Uh2nzDv%@sX2lMJ}YZkiq)k z{hNho$VhBf^W}V>F1v23EW%bKSJx7CJ?!A$A-GM39+Xb&$w9M#0hgvHspO@gR8azH zt@zKU*yp2vZ*NF%F^fi&p-W=P7t1ifSk@wPkHl(%c-gf4LkIm^f>*uA=;UvP5}vxo zEXcg-%-Zx@Fa8Ry!(h(jn+Mb23E!<-&96q>L?7vCkbcZ?G+ULkTi8bDNS=Ljhmo`4 zBO+W`T2p-Ea`EC)s>p)0=GwRM7ma8l8|`XRXSmx8eEe=GpKfTxi%BCSpa9a0!lSIN z758Tw84_ujSe2hs^jfp~&znIHJR%Qvph;Ll=sMnY=qlO=!CH-Egcrkh#3PFtoXYK| z-o=TFs0MP2iXkQ&I~5!`6qfMJfE#CKN$e_Zj{efTW-u`9uln1oM=Ij~YU!;iCboHL zPrMM|;<1$&qrc$nF!TJ;?dJ{#=2$g5kd=%y~o^Oj35Iu(~V^ zeB-G+}(2AH?+2kteUX_H$4$r=)z z=&x~AVZgWhn%99`!1*IEfcm(B+Zh5i^uWFjBMJBy003&olKV^eCdrMc^)cNPK&hcq*OiTf!PvosqLPkU^$pDq*{!fD(VLDN{|igtb07OJyx?OKdwJGKN*~c05-BWL z+Gr6fuuqOgC*=kCxr?h&wYn~ezQ9pHx)>W2o&8lJC;QpLMWKA!x!#=MDELl?!^FGG zlzSw0=c}RTSZxs9%7Qt3N1`$VJzsBTXNbp7!J}I|2^m>e-PM}uN2W%bH8<}fc-?*< zoIx6Mr~nZbmdI9#<)By`mm#k0b&e0hOC*Pl`;SRiYWovVEWYhlD?f zp4NyE|A|YiSL^6YZR2@Yg;uBHDX)Ar|GtXoexlPK;g#$1r`2AtKhHHH7`>DakPVt6T4QBNEPm8BY3s7421iZx-R?gkUHf$55bVD5%6#mC zCtN%V@%|=x*+A{g_0cn=fV0Nc?9#!|xVriSf>oS2{lXYnyK>$c(y?O~Yq%oL)wE8{)S z7N^iaS%-^L2s&>hjv{$qZ){$kzJ-yG`5XAnCf%!r#d%&)KRoqcA= z|LgTj?ORnlC26(7y~-^>{@*{t7CVjl=lb+-c*@0kx_^2tADi*>_3_vW#TC-%#Kt4F z_1E7|&wEQx3)ar=W|JfmV6@jCmq%g|A7r*>_PbAH1NbgW^tIt)EE@%sChBSUe!*>` zeB)8KAPqhf!$(TUyvaJp>KqF1TQGin zKOzXn{XS+PQd~s-EnwC(r}*1RGOc~0U!7ek&ZtRcCTlJow5nQqv&3q`M+ud!OkpH# zKh9cfvN0WN1fI|O$MbCx2bz2;YmrW2*P)EN40LxS&128chzD{0)qidf|MXB~iaxC- zIXxZHVz%IK3iSLW9cWg%dh~7a_zG_P%XPUC2w*&WZFY>^vl+v_qHb}%o*=yXiruqy z@WVXSB0%+Er~mBmkogML`4hYArHvC2%1_93b%OG=3_9TKM?C7%u1U=l9eDLS?RR0< zJQyhEy$`yFE`+Bn`t}|tmCM5yO!vi}WQq($UtM!y@47SL zXo67a^a-hP>kcd!;%x8Y=a+3;NcHTCj+_n|@g0!V5OX*l53_=ALzbwDIL$%ojpIf8 z<@~}Arv`{V%Rd+-)mO>Sjtdw#hSVpwEELF~C5&O#B&yQRow$;|a;<@^?L-#VTp{!B zFQ5Ym)>NWbj<2W}qsi#6~7+8STgo%1CK~?)lWJH-|k| z1gmG$1wm+5Cw zL+W^z6$+& z2eA`po&Es$`V?&XypYfy0$gtbLNw2JeHnLE8aN@!X$M*NXzg0Yc-JS= zXE?HGFd^KMEZ`3+`$IxIRj+sp~0j;zAU)xJKiJOpP98t4jg*RLu?Pb-E*~xmGWHiDkC0P z1fp(*?VU{3p;q<}SVxTWf%UCtyjh!xe`tcsjI&2|5kz61I`7f`O>kHM^iw|=_J+DNDj^J<&yu!-5 z%Y~JyW#E*a4TKCLCuZggA>lRVYCLeh+E`QOWs(c?GK3bzDIiest~EU?8uWCII-g$`p2Ip?4H zeWI`-kFJ?*54A#^hQeY$qGW?l5udh-Q75pfjBfzL{T<@<^Z^mKn}++zGZDeNH;2vc zemT>cnxZ3w$-i(crfkex$@}@X=i<(MV=ZOa|KOhq4Ez%-6Tk*=Fx34ZiuK_3d~pc~ zj{X5A%KiY1^LG>-9llr6q7S0$-XTj{sGd?=JNw^SXeog3dRmnrTC~u1oKDNWcVi4-C)2^T&1uJmXC#Ro7x@le%u@cYu1BYmj2RZfe ztXc}?gz{zGW1D3eWi)Pv)DgeiL}|{jcuFONO%W1N6DN9sBn@yE*wATZrdEnA$#ao| zZlFz{{1{NVv}N^ij=Y7#k+w0kS4l3KQdRz5X%&Z`?%Nj+m}lXh=Zy^Se0bi;JatSI z`&*k&*#nsWGk^aXf0E0e)}qWY0R4lp?PUi@_;sfLuNC6dN>b?0pJEl8f!7{pVn6xd zlzq!lzT)zK486b?@Kk!*fl|^~sn2KVM z?&S_+9DuIif!LnjAdgact`Y7jaHH#z{Fa4eLSkmh1E9$V%-GG!hX-c;C(&m;p1YkKsMqaGScG2}Ij8Mg!Gg+a${(^T zme4q7V=!VN(y$c=y#I>w$q-iFkTB0AL_kn9I%Zjnbwq;;uw!agM8C0TVFeBowBlpN-47Z))Nv)tEcx4@jEp@+`$&2ZbG zOvy;Fz!NCeU?=PDE`O65?pAE%7J8rNzAnUrNu(1wuHM?hjLNk(&92caFDYmIxW1z3 zvAXrFPT&<p!i>G> zWjTJ-3CF*J-$q-i=g5519~L0J-?(2zdA_LHV2K2VKCMmf-T!32>{)2*<^UxcA?fi$j5Xl6ITF+l{NG<(y6%F%XtTc%phZgiYm86$Zjhh*j!cD@PN3H3jjiY!Qw`A@HJP#oL(?1s7d*D* zO?esXWF+rCBRTiV{knZ|xrZSzp@_!Geb3p%ZW+>h{n$GB@& zq%MSo#ELxnw+<7vqo_wp#5Cgb;__kz{q9EIyyXT9ovTV++cy)hlQB;|KLC7f`#n6- zK+k8qH?Lh0^+&7Deq|fgvplIVYB;Q{p^mVnh5@L{H9)sggwf!i1a!%(7}1;3Xy#hAj~a=w*U7S6+g(P5c(vuYk+@A?|4;A?}D(bm9k_yjR@aW)71bRXw5+poX?_-HB zYnq&F+28ld%Ej~+eS_^EOcw0^{a=jHPPJ8w$l`Y@{)BfS3Xks+|K+U6ci0HWUn=K5 z8m+wDOcarpeH_?%7X2qS{9b`qQQ*(S$fLiR(J94G;A|5RWCm33qCS7Vee4Z;mnK69?Mg-jfE#V-!1S=n1keIf*kV`iLw6($F3 z+h4FTODp9)IqZwn<}7}RqI9xj&l|@4)OH_|meKg_C%FicD|VQk(iOq-wH$dAbz9*x z3&@!?+9E37IBKZ0oidqUf_mGV@K0*g#^RAb z^bZd{yYXZND0d;hR%M)bWh$Ij6Urh)?n#oDnpszoMrI1F&rjIv4wnVp=#Gjt@l#Si zu&mPd&NxUmAhNKtuT}KPo;n&eud5Z_b+fKo(+leVO0gSn_H7G+VgJsiVq2)0nN|*u z#Bs0}E<}Lg=x-WdkYZ)4lPHSVsUUBIi2*uIwr96pow7kZ$sPSPTe#C&%yp16PxGB^ zbxSfHogBV?LoBVt8N=yd{og+eawi#f`{2k*5NmWU0%xMAz9i61Kt5>@@WQ#~s_>psQr3^M(13~_p2eY2Ap-m zLyB6qR)uG1$s)el6UC>`q3Zq@IABobjW>AOQ5#K?DU0&jkGFV zw}GezA61=(aD^%Bp6$e|=Z*8RV=>A*&!ZC^z1o5%$3LObxXKzN@9Cl2jrAUisp)o91@y+$+?lF z=0}%~@}Fv8&Z!;ldY8i2TNBx+C?rjIwr^y%hiLm zZC)XNL0Z5GM8#^$2r9a?yzVAknCSGhx^jQM-H;3;+JU2Wj4qx*{Dct6UX=eacww~u zsQDtn_v0vrL`R30 z{zh>AMh_NlH1W^|T@EvH^sONWCQEe@-zL}ut)_%F(b zS6p5LK7^jqYQs=}eF(HgNsnX%GZ=r;flY(34D?|1e%(}9((j#J(hL*^?6uPt^s9f9 z^J*eDXMtC`B#u&I=#)?*GaOm`<+_ zU>fvLyz z^Yi36*NTp5NKVe}Y;I2F9yI*1AiX7g>qM=1mxI%)`=jC~Vcr;XzZK7#6oE+-U-kr> zBsTV)ffugpqxeOB~pSmsX=H^S7)t%tLG!YHBH_nR=9{~BK3I=$-_F^~zLV}YX z*8_ol(rvG*HQfZ*&kvJoFaUpZARS!(1D1itdmRqAGnmyQ_N+ zp49}}M*pGJUVUv;JO)*(tY&0fr_O4aKtkpd9Qd9!`Wcs(i-)-EaY11I?Z^HjxC67; z-u=V>(dATI9Y_O!o5>+7uzdmWK{WZ7ll#&}F98Z7oh+Eq)dq(@9w^C9X36#GX!9Rr zPD_IHMeKyv^n?d+I{S8Nz9dop`c?v!^Z;jh!{V;!&m@PEaNpSHgvp%Sa z1q`(1E#}|nWK=bw)95i-Q{9pf`gxR%q?U5KpUUdJ#wvL~XFBDsY${T}hz-UX52AmM z-Yp8~X8H^#pQgodz3wiz5~7Q!$NgUy*?Plk>|s6c9B=~Bzfmm0#NU|s{x|Bw{ys=P0f1kEm%U&(^CL|a*nz!_U@vwfG-?om>z{>ru6uMP84&L3ZavEnJo;Y5-!tl3D{{m zDT<()Z*w3bI3aJwZ?pD>{E52N7+NWe1k9Fjj0hlmi$iMkTwa9Po@2*eOYDpsh#unu`VRQoKXrC4?4BP*dZ zS!yvMtP>6?32)_2MIUu%DCV#WN-Cw3lf&xhBY!x0gO){0Qo#a>ngV5C*pu=cDME~9 z_05}MsHmxe%)DbR9-Bf6!7-PD)8&A|`nGzF+-of?@^uh1*HJRF} zjbDKg)+)3Vcm210XDo&B^U@13`W3q+BeOU;<47p4&zR`k9$ba5s`Nn~4`1RwQj z-ik{zXhxbzbxMnMm2V*WetJ9M4s0$|5bwRZOK6!)ReGCr`pb}oGtT4HLX|WlWp+l~ z_|qar;5f|V)qSc9g@M`a*IFHRX5xS^LiQ(%yGTdp!l42{&C^zdnRSwZnR9 zPGC{1=E)7$<-dz&$axL!&l5xUUOK6OYzQFw`7W!c7HIvs>?OXnzO2hNN|#rhXPV4| zNlxKi%!A!{UMW{R6H4cmoCixG1AeUlpFt-1if+LJHH*}Z;U@3c0}C%q@t$O ze?P?wPnjBVjxNOtNb$%|FiAbkFi)V+Yo7Nmk@+WAEw;^?;c7YNWdOr62D<6CO7oFn zhbp=hl1UA@W}~1Y_^A?_Kl3cx!_fE9RA18QMMT=JbM1vuuungM|LInn;W^^{8_Y(6 zUl%LmV?Sf+qpH*8aA*#V1r$if7x!jW;^r9Wml^U7Sc=v*NC&sf_p-|eS=Hb*5tRf2 z92>XdqTtu;%E|Zi`jCfZ>}w6h6I_ChPD8rk2l8_V?a0niQqzww^okHsIoPTDLxK6M93R#AvQ9V>YvFaSw3Lt++GpFnxEAj7$SWaI6NjP z{3{1w8=(^9o%wupnfkEawW5|;U+A`$s93{Rnt6>Vy?-4Y8Nkw#Lqe~t4R zsH0XRa7-lLm9vTI7iwx`mJH>M8t{LU3#9(E>~w7RUrgFkKogCTr?rY;wxHJ%8Go^N z)2XWEfa`oN_KzD*MKYPXbB5sK1YmBPk#+27^-g{M$hV^BRLj0=W0O%w;uJHs@t6)6 zP*S_g()GGs93_Q;l!QPh0QUx=)PioUG1De6j{E|6UjYAW?9jnTIP64r^Se9j z5JSu;-8QfLtqSvxe@2Vm4d`WU&~&Sr!%}BYUzjNp>xyo6m!~xlUt7lE;LtY@8B(tq z^b38*BYr1(^3FOb{sYELn6ugF@Ie5V3daGgnT({%l z7E&YdzVKVuIq%FL_C3r#oOF@n(*_D$DU;DqM2!bze&x)>6ZI)% z8y4jE*-V6vJ~Q6meNU`XKTVddpP_w@+gNY?_ii0@t5cjm7YIB z%2Dtd!WCk8&?gn;Q1QS1rnSFnI@#V`mcU$aQzYb~o)+LCuHjE!E~HLVRxNp7Aya3% zJk7X`xodZffG8(M_ba!T?b+Ckgk_J}Bnz=M98Dy5VbemClw#lEv$;stcH#1MkO(3T zPr^?eqf>4NLOPLnSeN5G#2(2ni-Arm_(rRmj4X<7c*P6b55b9sK3EIk;Kc16o&|Ig zFoV6&YJ>C>GT&-=*_c(Sik92dMgV=e{N79H4~opuv*ek8Vg^vR>4^I-ees@j}41l7Hu4vY7USRHGpR9J@lbahE|G|%)z=yZ_aNzagV1f$i8c?_M1J0{21-ZzsujoZRh&|aa2Gd{f7e{aa z*XJ@)`@3f^{I4cVx~nDL-c)}+S}{Y@22hO!^q5)xcw*4TObrc`ShIxYbODh*;QAeX zjps9{ZRanf=aP|=)$EXVKqlbLUFGUMfhoxSQk~m(yrFH6i@{4vejm&TvMl7>rm?eQ zQP0qgWR}VzZMYuMAC@|q@m8QKvW{FqX?YsdYnyHwYc(w}`ON@9W2$-#g0TV6)CZ zGcL<0Mof6HRzl=Rh zt&`#c;|Ls$p3Eaxxs3dL>vFz8=9f-^sBC3Ov2b5;4OMOpFP1cyZpj_i^X-$^4pM(w zi84FeSr-;>6ILx@ZSZ}WrdvtLTn8>6xYs&(GTZ{id0Nfqv3P*PD!eIyQ~njlh7L*X{kDU`_clN^?H5ERJGprdXB8EH@dDPjLDVu zAu@(ddxQBCz1o5t6qjpB!39!{|HrB$I|Y30?Sl|~e;Pb}l6@H6-3wJHk9w#yzggRW zajKi*BI%m7U#2+N^xtNV>V{!STbK{vot?Rd6sP<;&9L;=t@hrT5Q2^-h7`fLH9cdW zm~FrDR|EwA1L~`vFq#iYF%|EG5XVYp?cX(1k+Uly$Ut!o{&ap{Bmo_hG&A$Ls{l<4 zt`vTQ6;+7#$5)N-HT;|j6GOf;R(muq#58y0(f6Y}>6Bx;(QnGb69xO~B8RE@kEJak zN+^N{dic>O+u0!GMw+JdV85kPy*@LG=6y@c!W54}4cq@D)zZuhA$xmjGke?9+zfW> zq0VIjh54O&-foi5p(lQFDk7)b!NnCV`|8My@|sHFvyqWG;*f(y{t}3@?RahGYwV$l z6!-6M-)ihr#SuTwLG?xcsm+B1l;tS-&_L4ghGqrmJSX-P>V>+vatMZq>h{<#TurL82>U^JU=xl+5!m7{JH5EjQO8Y6>RrexqU+%NEv-(7;@-vdAYZN%ML zcC^(1c@!bXl(4Fs_mbAiBTE;9ZXbWO$DpH)v-}*{{v(o_!B5t~CCL-_^Yo<@j>FP} z?QHCZ_IlEle@(kws!Ec$B z^)h2>2X^B`%;72e&f0k%B?g55g*t;SJa8i)aY?au&gBLVOUl2ed;IJYKV z)9$-EgKL;(pe8^&qdubk{HMYWn#o&kBbMOW{Tcy-&0m})aRsVNbN!4f9G9)Qx7nW2 zwXpMnrY$9h?PASkdDFJZuwoRX%~7QPk*BK>^%KnPoZ1; z+|!!FjoLjK>+@WxSNom(Jbz1v=1<@^1KG4kn{FpQZ-L zaYoH$b4-@&PN`(DKe93N%=dooevUYmVzlU{1<5p2pQWbompN%Ka;h;l?1yk3^3Cpr zikTW?E=lzdv5gMzhwzRJ9-3kJ{H;f6A-}B-{LW+xf9XkZhaaVr9;3L1wghS8`su~? z;_^SGx0)Xy;MQvMCclWO-S71eN}&MSF^>;w7ESW2kB1e zw7Xs(HQ7p>o$-5;-}5&!Ikz*oLhqfsiDU7#oOFOTrX^Q#EHD8jkW+RJ21M2Sy?&!Akh zxa=$3l6TWk-mq}3>##5C_DX)vDsd1M=l*Su8rV0~9PcY_n(Cqf6N^kp`V^D@f#`-r zA#}*~Y~x*DaEe%iP%zRI>R%cCv>ua1su^yR3WJHtjNKa5hO^Sy{#q|dI^@-&jNQd$ zeiw`Xk{*W3CY4yK?)Sb`hq+cNg-3nVD;w>GJCi^4G4XUpgi0}OPA9Lo1;vy zY3MEaF7=IKRW42>9Hm08*PU28(Wl&*@kli`n*RBK_k}VpLZ@It`;+~!0OrzALmUI`gMcG zgFXdX(a&J|Aqc0H!La1gr8F*Bj8{FsCt{Lk$*BxW>7Oqz$L)rJcKg?l=_e=n_iiHL z2k=QZYZ#*|c!!65#GDg+(##pgr~)qkJQRMT$9;5m^9jwnWlDmHs^S84!R=<+x$r4p z7@=ZLI~jZqlCON-{bfHjE`n_%gyRz{Fw8OZl--yvql6L4>Q^D-s;V2U;EE=4l8ui_ z8r|PIfe{y1`t0;nZ%Sw)_(3*V=6CE`r*9LpI)1LEoT+S~y2Dno1)h;T;q@dvxASP- z$FVvYNU_9sk74Zeq&&!<#-$M*0bg`mRL5H-QJzIl7457uGuDBvWI8cZQ~Whk(dLR( zRkU`e@2KJ{E)OV}o<`0I8||v)r?dXMBzr3VzcG&n!nTjv>4PmIj7}-XS0pDc;By*F zQY!E5?Kn3-R4=F?Ugsm0Fb1|b%9(I$-m z!;i!XW9&;bO}NhU2S2Kj8{Jq3mL}6%e4MV4syvVbv%0DQ)Mua?h?~KKWr&OHvs~9$>GXXCbr@Osf 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 None: + def save(self, + fmt: str = 'cif', + supercell: list = [1, 1, 1], + save_dir=None, + primitive=False, + save_bonds=True) -> None: ''' Save the structure in a specif file format. @@ -392,7 +409,6 @@ def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, pri ''' save_dict = { - 'json': save_json, 'cjson': save_chemjson, 'cif': save_cif, 'xyz': save_xyz, @@ -422,6 +438,11 @@ def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, pri final_structure = structure.make_supercell(supercell, in_place=False) + if save_bonds: + bonds = get_bonds(final_structure, self.bond_threshold) + else: + bonds = [] + structure_dict = final_structure.as_dict() cell = structure_dict['lattice']['matrix'] @@ -440,7 +461,8 @@ def save(self, fmt: str = 'cif', supercell: list = [1, 1, 1], save_dir=None, pri cell=cell, atom_types=atom_types, atom_labels=atom_labels, - atom_pos=atom_pos) + atom_pos=atom_pos, + bonds=bonds) # --------------- Net creation methods -------------------------- # diff --git a/src/pycofbuilder/io_tools.py b/src/pycofbuilder/io_tools.py index e0d79d2c..3cf4c8f0 100644 --- a/src/pycofbuilder/io_tools.py +++ b/src/pycofbuilder/io_tools.py @@ -237,28 +237,39 @@ def read_cif(path, file_name): return None -def save_xsf(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): +def save_xsf(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.xsf` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.xsf` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom label. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -290,31 +301,39 @@ def save_xsf(path: str = None, xsf_file.close() -def save_pqr(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - partial_charges: list = None, - frac_coords: bool = False): +def save_pqr(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.pqr` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.pqr` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - partial_charges: list + atom_charges : list List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -337,7 +356,7 @@ def save_pqr(path: str = None, cell[4], cell[5])) - if partial_charges is None: + if atom_charges is None: atom_line = 'ATOM {:>4} {:>2} MOL A 0 {:>8.3f}{:>8.3f}{:>8.3f} {:>15}\n' for i in range(len(atom_pos)): pqr_file.write(atom_line.format(i + 1, @@ -354,34 +373,53 @@ def save_pqr(path: str = None, atom_pos[i][0], atom_pos[i][1], atom_pos[i][2], - partial_charges[i], + atom_charges[i], atom_types[i])) + if bonds and not bond_orders: + bond_orders = [1 for i in range(len(bonds))] + + if bonds: + for i in range(len(bonds)): + for j in range(bond_orders[i]): + pqr_file.write(f'CONECT {bonds[i][0] + 1:4} {bonds[i][1] + 1:4}\n') + pqr_file.close() -def save_pdb(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): +def save_pdb(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.pdb` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.pdb` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list - Nx3 array contaning the atoms coordinates in cartesian form. + Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -414,37 +452,54 @@ def save_pdb(path: str = None, atom_pos[i][2], atom_types[i])) - pdb_file.close() + if bonds and not bond_orders: + bond_orders = [1 for i in range(len(bonds))] + + if bonds: + for i in range(len(bonds)): + for j in range(bond_orders[i]): + pdb_file.write(f'CONECT {bonds[i][0] + 1:4} {bonds[i][1] + 1:4}\n') + pdb_file.close() -def save_gjf(path: str = None, - file_name: str = None, - cell: list = None, - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False, - text: str = 'opt pm6'): +def save_gjf(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False, + header: str = 'opt pm6'): """ - Save a file in format `.gjf` on the `path`. + Save a file in format `.pqr` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.gjf` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - text : str + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. + header : str Parameters for Gaussian calculations. """ - if len(cell) == 6: cell = cellpar_to_cell(cell) @@ -457,7 +512,7 @@ def save_gjf(path: str = None, temp_file = open(os.path.join(path, file_name + '.gjf'), 'w') temp_file.write(f'%chk={file_name}.chk \n') - temp_file.write(f'# {text}\n') + temp_file.write(f'# {header}\n') temp_file.write('\n') temp_file.write(f'{file_name}\n') temp_file.write('\n') @@ -476,28 +531,39 @@ def save_gjf(path: str = None, temp_file.close() -def save_xyz(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): +def save_xyz(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): """ Save a file in format `.xyz` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.xyz` extention. + Name of the file. Does not neet to contain the extention. + cell : numpy array + Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. atom_types : list List of strings containing containg the N atom types + atom_label : list + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - cell : numpy array - Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ if len(cell) == 3: @@ -527,27 +593,39 @@ def save_xyz(path: str = None, temp_file.close() -def save_turbomole(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): - """Save the structure in Turbomole .coord format +def save_turbomole(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): + """ + Save the structure in Turbomole .coord format on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.coord` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ if cell.shape == (3, 3): @@ -575,29 +653,39 @@ def save_turbomole(path: str = None, temp_file.write('$end\n') -def save_vasp(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False): - """Save the structure in VASP .vasp format +def save_vasp(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False): + """ + Save the structure in VASP .vasp format on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.vasp` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - coords_are_cartesian : bool - If True, the coordinates are in cartesian coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ if cell.shape == 6: @@ -634,15 +722,19 @@ def save_vasp(path: str = None, atom_types[i])) -def save_qe(path: str = None, - file_name: str = None, - cell: np.ndarray = np.eye(3), - atom_types: list = None, - atom_pos: list = None, - atom_labels: list = None, - frac_coords: bool = False, - calc_type: str = 'scf'): - ''' +def save_qe(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + bond_orders: list = None, + frac_coords=False, + calc_type: str = 'scf', + kspacing: float = 0.3): + """ Save the structure in Quantum Espresso .pwscf format. The `input_dict` can be used to specify the input parameters for the @@ -657,20 +749,28 @@ def save_qe(path: str = None, Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.pwscf` extention. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom labels. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. frac_coords : bool If True, the coordinates are in fractional coordinates. calc_type : str - Type of pw.x calculation. Can be 'scf', 'nscf', 'bands', and 'vc-relax'. - ''' + Type of calculation. Can be 'scf', 'vc-relax', 'relax', 'md', 'vc-md', 'vc-tddft', 'tddft'. + kspacing : float + Kpoints spacing in 1/Angstrom. + """ if len(cell) == 6: cell_matrix = cellpar_to_cell(cell) @@ -721,7 +821,7 @@ def save_qe(path: str = None, # If the kpoints grid is not specified, calculate it automatically if 'k_points' not in input_dict.keys(): if 'kspacing' not in input_dict.keys(): - input_dict['kspacing'] = 0.3 + input_dict['kspacing'] = kspacing input_dict['kpoints'] = get_kgrid(cell_matrix, input_dict['kspacing']) with open(os.path.join(path, file_name + '.pwscf'), 'w') as f: @@ -809,68 +909,38 @@ def convert_cif_2_qe(out_path, file_name): k_dist=0.3) -def save_json(path, file_name, cell, atom_types, atom_pos, atom_labels, frac_coords=False): +def save_chemjson(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, + frac_coords=False): """ Save a file in format `.json` on the `path`. Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.cif` extention. - atom_label : list - List of strings containing containg the N atom partial charges. - atom_pos : list - Nx3 array contaning the atoms coordinates. + Name of the file. Does not neet to contain the extention. cell : numpy array Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. - """ - - file_name = file_name.split('.')[0] - - cof_json = create_COF_json(file_name) - - if len(cell) == 3: - cell_par = cell_to_cellpar(np.array(cell)).tolist() - cell_matrix = np.array(cell).astype(float).tolist() - - if len(cell) == 6: - cell_par = np.array(cell).astype(float).tolist() - cell_matrix = cellpar_to_cell(cell_par).tolist() - - cof_json['system']['geo_opt'] = False - - cof_json['geometry']['cell_matrix'] = cell_matrix - cof_json['geometry']['cell_parameters'] = cell_par - cof_json['geometry']['atom_labels'] = list(atom_types) - cof_json['geometry']['atom_pos'] = list(atom_pos) - - write_json(path, file_name, cof_json) - - -def save_chemjson(path, - file_name, - cell, - atom_types, - atom_pos, - atom_labels, - frac_coords=False): - """ - Save a file in format `.json` on the `path`. - - Parameters - ---------- - path : str - Path to the file. - file_name : str - Name of the file. Does not neet to contain the `.cif` extention. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - cell : numpy array - Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -887,18 +957,20 @@ def save_chemjson(path, AtomTypes=atom_types, AtomPositions=atom_pos, AtomLabels=atom_labels, - CartesianPositions=not frac_coords) + CartesianPositions=not frac_coords, + BondIndexes=bonds) write_json(path, file_name, chemJSON) -def save_cif(path, - file_name, - cell, - atom_types, - atom_pos, - atom_labels=None, - partial_charges=False, +def save_cif(path: str, + file_name: str, + cell: list, + atom_types: list, + atom_labels: list, + atom_pos: list, + atom_charges: list = None, + bonds: list = None, frac_coords=False): """ Save a file in format `.cif` on the `path`. @@ -906,15 +978,23 @@ def save_cif(path, Parameters ---------- path : str - Path to the file. + Path to the save the file. file_name : str - Name of the file. Does not neet to contain the `.cif` extention. + Name of the file. Does not neet to contain the extention. + cell : numpy array + Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_types : list + List of strings containing containg the N atom types atom_label : list - List of strings containing containg the N atom partial charges. + List of strings containing containg the N atom labels atom_pos : list Nx3 array contaning the atoms coordinates. - cell : numpy array - Can be a 3x3 array contaning the cell vectors or a list with the 6 cell parameters. + atom_charges : list + List of strings containing containg the N atom partial charges. + bonds : list + List of lists containing the index of the bonded atoms and the bond length. + frac_coords : bool + If True, the coordinates are in fractional coordinates. """ file_name = file_name.split('.')[0] @@ -932,7 +1012,7 @@ def save_cif(path, _audit_creation_date {date.today().strftime("%Y-%d-%m")} _audit_creation_method pyCOFBuilder -_audit_author_name 'Felipe Lopes de Oliveira' +_audit_author_name '{os.getlogin()}' _chemical_name_common '{file_name}' _cell_length_a {a:>10.6f} @@ -956,7 +1036,7 @@ def save_cif(path, _atom_site_fract_z """ - if partial_charges is not False: + if atom_charges: cif_text += ' _atom_site_charge\n' if frac_coords is False: @@ -966,22 +1046,33 @@ def save_cif(path, for i in range(len(atom_pos)): u, v, w = atom_pos[i][0], atom_pos[i][1], atom_pos[i][2] - if partial_charges is not False: - cif_text += '{:<7} {} {:>15.9f} {:>15.9f} {:>15.9f} {:>10.5f}\n'.format( + if atom_charges: + atom_labels[i] = f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}" + cif_text += '{:<15} {} {:>15.9f} {:>15.9f} {:>15.9f} {:>10.5f}\n'.format( f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}", atom_types[i], u, v, w, - partial_charges[i]) + atom_charges[i]) else: - cif_text += '{:<7} {} {:>15.9f} {:>15.9f} {:>15.9f}\n'.format( + atom_labels[i] = f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}" + cif_text += '{:<15} {} {:>15.9f} {:>15.9f} {:>15.9f}\n'.format( f"{atom_types[i]}{str(i + 1)}_{atom_labels[i]}", atom_types[i], u, v, w) + if bonds: + cif_text += '\nloop_\n' + cif_text += '_geom_bond_atom_site_label_1\n' + cif_text += '_geom_bond_atom_site_label_2\n' + cif_text += '_geom_bond_distance\n' + + for bond in bonds: + cif_text += f'{atom_labels[bond[0]]:10} {atom_labels[bond[1]]:10} {bond[2]:.5f}\n' + # Write cif_text to file cif_file = open(os.path.join(path, file_name + '.cif'), 'w') cif_file.write(cif_text) @@ -1189,10 +1280,10 @@ def create_structure_CJSON(StructureName: str, CellParameters: list = None, CellMatrix: list = None, AtomTypes: list = None, + AtomLabels: list = [], AtomPositions: list = None, CartesianPositions: bool = False, - AtomLabels: list = [], - Bonds: list = [], + BondIndexes: list = [], BondOrders: list = [], PartialCharges: dict = {}, ) -> dict: @@ -1208,11 +1299,20 @@ def create_structure_CJSON(StructureName: str, List with the cell parameters. CellMatrix : list List with the cell matrix. Optional + AtomTypes : list + List with the atom types. AtomLabels : list List with the atom labels. AtomPositions : list List with the atom positions. - + CartesianPositions : bool + If True, the coordinates are in cartesian coordinates. + BondIndexes : list + List with the bonds indexes and bond length. + BondOrders : list + List with the bond orders. + PartialCharges : dict + Dictionary with the partial charges. """ chemJSON = create_empty_CJSON() @@ -1252,10 +1352,16 @@ def create_structure_CJSON(StructureName: str, CartPosition = np.array([np.dot(V_cart, atom) for atom in AtomPositions]).flatten().tolist() chemJSON['atoms']['coords']['3d'] = CartPosition - chemJSON['atoms']['PartialCharges'] = PartialCharges + if PartialCharges != {}: + chemJSON['atoms']['PartialCharges'] = PartialCharges + + bond_indexes = [[i[0], i[1]] for i in BondIndexes] + bond_indexes = [item for row in bond_indexes for item in row] + + bond_orders = BondOrders if BondOrders != [] else [1] * len(bond_indexes) - chemJSON['bonds']['connections']['index'] = Bonds - chemJSON['bonds']['order'] = BondOrders + chemJSON['bonds']['connections']['index'] = bond_indexes + chemJSON['bonds']['order'] = bond_orders return chemJSON diff --git a/src/pycofbuilder/tools.py b/src/pycofbuilder/tools.py index 14f74f17..95563552 100644 --- a/src/pycofbuilder/tools.py +++ b/src/pycofbuilder/tools.py @@ -1004,3 +1004,65 @@ def cell_to_ibrav(cell): 'celldm(6)': np.cos(np.deg2rad(gamma))} return celldm + + +def is_bonded(atom1: str, atom2: str, dist: float, cutoff: float = 1.3): + """ + Determine if two atoms are bonded based on the distance between them. + Two atoms are considered bonded if the distance between them is less than + the sum of their covalent radii multiplied by a cutoff factor. + + Parameters + ---------- + atom1 : str + Label of the first atom + atom2 : str + Label of the second atom + dist : float + Distance between the two atoms + cutoff : float + Cutoff factor for the covalent radii. Default: 1.3 + """ + + periodic_table = elements_dict(property='covalent_radius') + + # Get the covalent radii of the two atoms + cr_1 = periodic_table[atom1] + cr_2 = periodic_table[atom2] + + # Calculate max bond distance + max_bond_distance = (cr_1 + cr_2) * cutoff + + if dist < 0.6: + print('Distance between atoms is less than 0.6 Å. Check if the structure is correct.') + + # Check if the distance is less than the cutoff + if 0.6 < dist <= max_bond_distance: + return True + else: + return False + + +def get_bonds(structure, cutoff=1.3): + """ + Get the bonded atoms in a structure based on the distance between them. + + Parameters + ---------- + structure : pymatgen.Structure + Structure object of pymatgen + cutoff : float + Cutoff factor for the covalent radii. Default: 1.3 Å + """ + + atom_types = [i.as_dict()['species'][0]['element'] for i in structure.sites] + + # Get bonded atoms + center_indices, points_indies, _, bond_distances = structure.get_neighbor_list(5) + bonded_atoms = np.array([center_indices, points_indies, bond_distances]).T + + bonded_atoms = [i for i in bonded_atoms if is_bonded(atom_types[int(i[0])], atom_types[int(i[1])], i[2], cutoff)] + + bonded_atoms = [[int(i[0]), int(i[1]), i[2]] for i in bonded_atoms] + + return bonded_atoms