From 3c9567fa8e467f9bf588b9c385c6ab3625bce4e9 Mon Sep 17 00:00:00 2001 From: Timur Bazhirov Date: Wed, 21 Dec 2022 16:03:38 -0800 Subject: [PATCH 01/24] Update Flowchart-Designer.md --- Flowchart-Designer.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Flowchart-Designer.md b/Flowchart-Designer.md index 76a923d0..12d69e62 100644 --- a/Flowchart-Designer.md +++ b/Flowchart-Designer.md @@ -35,4 +35,10 @@ We leave exact timing to the candidate. Must fit Within 5 days total. # Examples -To view examples or discuss this task more in details, please [contact us](README.md). +We recommend reviewing the following: + +- Introduction to Flowcharts: https://www.geeksforgeeks.org/an-introduction-to-flowcharts/ +- An example convergence workflow: https://docs.mat3ra.com/models/auxiliary-concepts/reciprocal-space/convergence/ +- ReactFlow library examples: https://reactflow.dev/docs/examples/overview/ and https://pro.reactflow.dev/pro-examples + +To discuss this task more in details, please [contact us](README.md). From 6a718045d438b805e9d6159a8cd0f6f2c2d2469e Mon Sep 17 00:00:00 2001 From: Timur Bazhirov Date: Fri, 10 Feb 2023 17:30:14 -0800 Subject: [PATCH 02/24] Update Materials-Designer.md --- Materials-Designer.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Materials-Designer.md b/Materials-Designer.md index 611f7904..3af1c5d8 100644 --- a/Materials-Designer.md +++ b/Materials-Designer.md @@ -4,9 +4,9 @@ # Overview -Create a skeleton IDE (integrated development environment) for materials design. Close to Adobe Dreamweaver (or any other IDE) - when you can change html-markup and simultaneously see the result in another tab. We edit material in XYZ format and view result in 3D. +Create a skeleton IDE (integrated development environment) for materials design, where one can change text and simultaneously see the visual result in another tab. We edit material in XYZ format and view result in 3D. -Front-end developers: use Meteor and React.js and minimalistic UX/UI. +Front-end developers: use React.js and minimalistic UX/UI. Pure UI/UX designers: create high fidelity mockups.  From 96e01f3753f57a38418013fee956b11f02942737 Mon Sep 17 00:00:00 2001 From: Timur Bazhirov Date: Fri, 10 Feb 2023 17:34:03 -0800 Subject: [PATCH 03/24] fix: file name in URL --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 414438d3..6c154cfb 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ Each file represents an assignment similar to what one would get when hired. | Front-End / UX | [Materials Designer](Materials-Designer.md) | ReactJS / UX Design, ThreeJS | | Front-End / UX | [Flowchart Designer](Flowchart-Designer.md) | ReactJS / UX Design, DAG | | Back-End / Ops | [Parallel Uploader](Parallel-File-Uploader.md) | Python, OOD, Threading, Objectstore | -| CI/CD, DevOps | [End-to-End Tests](End-To-End-Tests.md) | BDD tests, CI/CD workflows, Cypress | +| CI/CD, DevOps | [End-to-End Tests](End-to-End-Tests.md) | BDD tests, CI/CD workflows, Cypress | | HPC, Cloud Inf | [Cloud HPC Bench.](Cloud-Infrastructure.md) | HPC Cluster, Linpack, Benchmarks | | HPC, Containers| [Containerized HPC](Containerization-HPC.md) | HPC Cluster, Containers, Benchmarks | From 6ccf5f7817a485c0f046b997bf69dea866f22e51 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 11 Sep 2023 21:50:45 -0500 Subject: [PATCH 04/24] Create branch, lay out plan for today and tomorrow --- .gitignore | 0 boxylmer/ML-Band-Gaps.md | 31 +++++++++++++++++++++++++++++++ boxylmer/plan and progress.md | 33 +++++++++++++++++++++++++++++++++ 3 files changed, 64 insertions(+) create mode 100644 .gitignore create mode 100644 boxylmer/ML-Band-Gaps.md create mode 100644 boxylmer/plan and progress.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..e69de29b diff --git a/boxylmer/ML-Band-Gaps.md b/boxylmer/ML-Band-Gaps.md new file mode 100644 index 00000000..2ccb5adc --- /dev/null +++ b/boxylmer/ML-Band-Gaps.md @@ -0,0 +1,31 @@ +# ML Band Gaps (Materials) + +> Ideal candidate: skilled ML data scientist with solid knowledge of materials science. + +# Overview + +The aim of this task is to create a python package that implements automatic prediction of electronic band gaps for a set of materials based on training data. + +# User story + +As a user of this software I can predict the value of an electronic band gap after passing training data and structural information about the target material. + +# Requirements + +- suggest the bandgap values for a set of materials designated by their crystallographic and stoichiometric properties +- the code shall be written in a way that can facilitate easy addition of other characteristics extracted from simulations (forces, pressures, phonon frequencies etc) + +# Expectations + +- the code shall be able to suggest realistic values for slightly modified geometry sets - eg. trained on Si and Ge it should suggest the value of bandgap for Si49Ge51 to be between those of Si and Ge +- modular and object-oriented implementation +- commit early and often - at least once per 24 hours + +# Timeline + +We leave exact timing to the candidate. Must fit Within 5 days total. + +# Notes + +- use a designated github repository for version control +- suggested source of training data: materialsproject.org diff --git a/boxylmer/plan and progress.md b/boxylmer/plan and progress.md new file mode 100644 index 00000000..175968db --- /dev/null +++ b/boxylmer/plan and progress.md @@ -0,0 +1,33 @@ +# Minimum Goals +- Create a model which will automatically fit and predict material band-gaps given an input. + +# The Plan +## Monday (primarily planning, familiarize with literature and MPRester) +- Create package structure +- Outline classes and necessary abstractions + - Abstract class to load / curate data (DataLoader) + - Abstract class to wrap prediction (BandGapPredictor) +- Fill out the data loader and curator + - How would other kinds of data be incorporated? + - Probably a dict that holds extra vectors and a validation function to check that every entry is the right corresponding length. + - Depending on whether or not we can expect the inputs to be standardized in pymatgen's structure format, this may need to change a lot. + - How would data from other sources be parsed? -> Another concrete DataLoader + - Parsed data held in this way will be slightly inefficient, even for Python's standards, as np.arrays allocate. + - But I think the result will be much more organized and it looks like structure.get_distance() will be the bottleneck anyhow. + - Do we need to cache the data? -> Not within scope + - Leave reading/writing method spaces for future dev if necessary +- Will leave relevant and useful literature sources as comments for reference later. + +## Tuesday (Finish up data loader, begin model class) +- Identify appropriate structure for models and fill out the BandGapPredictor + - in this limited case the input will be flat, but a 3D structure such as graphs will be more complicated and likely require a different representation or accessor method + - The loader should hold onto the structure objects, so graph construction is still possible without weird methods / a class rewrite. +- Models: RandomForest (doable), GradientBoosting (doable), Graph Convolution (reach, likely won't have enough time this week) +- Padding -> Decide how to allocate it, how will the max size be determined and stored? +- + +## Wednesday (Finish up model, test model for goals (realistic band gap values, parity, etc)) + +## Thursday (Visualization of results + deal with possible issues or hangups that may have happened Mon-Wed) + +## Friday (last day: wrap up and write comments and instructions.) \ No newline at end of file From 53a81046aa62b4e8d96c0ced9ea6b5e4cca07b80 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 11 Sep 2023 22:39:04 -0500 Subject: [PATCH 05/24] Implemented a good start for data loader + testing --- .gitignore | 3 + .../MaterialPropertyPredictor/MPRLoader.py | 186 ++++++++++++++++++ .../MaterialPropertyPredictor/__init__.py | 1 + boxylmer/tests/MPRLoader_test.py | 21 ++ boxylmer/tests/__init__.py | 0 5 files changed, 211 insertions(+) create mode 100644 boxylmer/MaterialPropertyPredictor/MPRLoader.py create mode 100644 boxylmer/MaterialPropertyPredictor/__init__.py create mode 100644 boxylmer/tests/MPRLoader_test.py create mode 100644 boxylmer/tests/__init__.py diff --git a/.gitignore b/.gitignore index e69de29b..f200babd 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,3 @@ +api_key.txt +boxylmer/tests/__pycache__/* +boxylmer/MaterialPropertyPredictor/__pycache__/* diff --git a/boxylmer/MaterialPropertyPredictor/MPRLoader.py b/boxylmer/MaterialPropertyPredictor/MPRLoader.py new file mode 100644 index 00000000..62656d1c --- /dev/null +++ b/boxylmer/MaterialPropertyPredictor/MPRLoader.py @@ -0,0 +1,186 @@ +from mp_api.client import MPRester +from abc import ABC, abstractmethod +import numpy as np + +class AbstractDataLoader(ABC): + def __init__(self): + self.structures = None + + # cached data in self.structures. It's possible to lump this all into a dict or just to use it on the fly, + # but for now, explicitly referencing them will assist when we're unsure what the best descriptors are for the target property. + self.lattice_vectors = None + self.lattice_angles = None + self.volumes = None + self.extra_data = None + + self.band_gaps = None + + self.formulas = None + + # hmm... https://journals.aps.org/prb/abstract/10.1103/PhysRevB.89.205118 + # suggests there are better ways to represent a crystal lattice than coulomb matrices. + # This could be a good idea to explore in the future for more complex properties + # This paper ALSO tells me that coulomb matrices are a previous industry standard, + # So it stands to reason there should be some libraries to speed this up out there. + # For now, though, this method is slow when doing lattice-consistent distances and needs optimization. + self.coulomb_matrices = None + + # https://par.nsf.gov/servlets/purl/10187380#:~:text=Coulomb%20Matrix%20Eigenvalues%20(CME)%20are,searches%2C%20and%20interpret%20rotational%20spectra. + # Very good primer on why the sorted eigenvalues are both useful and computationally efficient. + # Still not as good as a graph representation, but this is much faster to implement given I still have papers to grade :(. + self.coulomb_matrix_eigenvalues = None + + self.input_length = None + + @abstractmethod + def load_data(self): + pass + + @classmethod + def calculate_distances_fast(cls, structure): + coords = np.array([site.coords for site in structure.sites]) + n = len(coords) + distances = np.zeros((n, n)) + + for i in range(n): + for j in range(i+1, n): + dist = np.linalg.norm(coords[i] - coords[j]) + distances[i, j] = dist + distances[j, i] = dist + + return distances + + @classmethod + def calculate_distances_accurate(cls, structure): + n = len(structure) + distances = np.zeros((n, n)) + + for i in range(n): + for j in range(i+1, n): + dist = structure.get_distance(i, j) + distances[i, j] = dist + distances[j, i] = dist + + return distances + + # coulomb matrix implemented from https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html + @classmethod + def calculate_coulomb_matrix(cls, structure, distance_method='fast'): + n = len(structure) + mat = np.zeros((n, n)) + z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element + if distance_method == 'fast': + distances = AbstractDataLoader.calculate_distances_fast(structure) + elif distance_method == 'accurate': + distances = AbstractDataLoader.calculate_distances_accurate(structure) + else: + raise ValueError("Invalid distance calculation method. Use \'fast\' or \'accurate\'.") + + z_product = z[:, np.newaxis] * z[np.newaxis, :] + z_product = z_product.astype('float64') + mat = np.divide(z_product, distances, out=np.zeros_like(z_product), where=distances!=0) + + np.fill_diagonal(mat, 0.5 * z ** 2.4) # faster than using for loop directly (cProfile -> 0.181) + return mat + + @classmethod + def calculate_eigenvalues(cls, coulomb_matrix): + eigenvalues, _ = np.linalg.eigh(coulomb_matrix) + sorted_evs = np.sort(eigenvalues) + return sorted_evs + + def calculate_max_input_size(self): + # later we may modify these descriptors, so lets tabulate them. We also have extras! + vol = 1 + abc = 3 + angles = 3 + eigenvals_len = max([len(s) for s in self.structures]) + extras_len = len(self.extra_data) + return vol + abc + angles + eigenvals_len + extras_len + + def _validate(self): + ndata = len(self.structures) + for key in self.extra_data: + assert len(self.extra_data[key] == ndata) + # given more constraints later on, this may be expanded if the types of input data structures widen + + def _process_parsed_data(self): + self.coulomb_matrices = [self.calculate_coulomb_matrix(s) for s in self.structures] + self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] + self.input_length = self.calculate_max_input_size() + self._validate() + + def get_model_inputs(self, padding_value=0): + """ + Acquire the model input data as a procured ndarray of values in a standard (Sample, Feature) format. + + Parameters: + - padding_value (float, optional): Padding. Default is 0. + + Returns: + - padded_feature_vectors (np.array): Padded inputs of shape (Sample, Feature) + """ + + num_structures = len(self.structures) + padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) + + for i in range(num_structures): + feature_vector = np.hstack( + (self.volumes[i], + self.lattice_vectors[i], + self.lattice_angles[i], + self.coulomb_matrix_eigenvalues[i]), dtype=np.float32) + + padding_size = self.input_length - len(feature_vector) + + if padding_size >= 0: + padded_feature_vectors[i, :len(feature_vector)] = feature_vector + else: + raise ValueError("Input feature vector size exceeded the available input size.") + + return padded_feature_vectors + + def get_model_outputs(self): + """ + Acquire the model ouptut data as a procured single dimensional ndarray. + + Returns: + - outputs (np.array): Onputs of shape (Float32) + """ + return self.band_gaps + + def get_input_length(self): + return self.input_length + + def __len__(self): + return len(self.structures) + +class MPRLoader(AbstractDataLoader): + def __init__(self): + super().__init__() + + def load_data(self, api_key, **kwargs): + with MPRester(api_key) as mpr: + data = mpr.materials.summary.search( + fields=[ + "material_id", + "band_gap", + "formula_pretty", + "volume", + "structure"], + **kwargs + ) + + self.structures = [d.structure for d in data] + self.lattice_vectors = np.array([(s.lattice.a, s.lattice.b, s.lattice.c) for s in self.structures], dtype=np.float32) + self.lattice_angles = np.array([s.lattice.angles for s in self.structures], dtype=np.float32) + self.volumes = np.array([s.volume for s in self.structures], dtype=np.float32) + self.formulas = [d.formula_pretty for d in data] + self.band_gaps = np.array([d.band_gap for d in data], dtype=np.float32) + + + # when pulling directly from MPR, extra data doesn't make sense as you don't know how much data will be found ahead of time + # thus for this concrete class, extras are moot (but we could fill them out later, or just lump all our parsed data into a dict) + self.extra_data = {} + + self._process_parsed_data() diff --git a/boxylmer/MaterialPropertyPredictor/__init__.py b/boxylmer/MaterialPropertyPredictor/__init__.py new file mode 100644 index 00000000..6874dfc5 --- /dev/null +++ b/boxylmer/MaterialPropertyPredictor/__init__.py @@ -0,0 +1 @@ +from .MPRLoader import MPRLoader \ No newline at end of file diff --git a/boxylmer/tests/MPRLoader_test.py b/boxylmer/tests/MPRLoader_test.py new file mode 100644 index 00000000..b34a8f39 --- /dev/null +++ b/boxylmer/tests/MPRLoader_test.py @@ -0,0 +1,21 @@ +import warnings +from MaterialPropertyPredictor import MPRLoader + + +loader = None + +def test_loading(): + global loader + warnings.filterwarnings("ignore", category=UserWarning) + api_key_file = "api_key.txt" + with open(api_key_file, "r") as f: + api_key = f.read().strip() + loader = MPRLoader() + loader.load_data(api_key, chemsys=["Si", "Si-Ge", "Ge-Si", "Ge"]) + assert len(loader) > 0 + assert len(loader) == len(loader.get_model_inputs()) + assert len(loader) == len(loader.formulas) + + +def test_input_and_output_len(): + assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) \ No newline at end of file diff --git a/boxylmer/tests/__init__.py b/boxylmer/tests/__init__.py new file mode 100644 index 00000000..e69de29b From 8d1e0ee69af1f723d47738255dcd317df5b0225e Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 11 Sep 2023 22:41:51 -0500 Subject: [PATCH 06/24] exported requirements.txt --- requirements.txt | Bin 0 -> 1848 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 requirements.txt diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..4d5a00bb3b3a85fce948041a0043866d37388c7c GIT binary patch literal 1848 zcmZvdOK;Oq5QXm=iJy`vjzbFz7VJUlmKAbR*A00%)DCU(^Iz z$=^SlRHv8Jr)_%D`>fA0E%eGXPxpFDecq>cX_KB)CC^U&eVV0XYW2T^zS}GAYFUUT zZmG8zqFUMUtjrgWg{&*RyV2vQjBPs0>y$2rp^%*ySuU!-A8U}InAmIOJ`A`vR;{)y z_}y6-AFNiL-jt_S75Z(}L!+8hKHXF;&HKqbdc#H+o%w)#WgQlS*I6E5&oztmQC^;9 zn;uoCvRJrTS=3hFZG{C4@ZOl+d5f-p%DOgo*CRS-7d>{0de!UXwNJlCZeR_J-tk_Q zd)er_6_Q$iyT(+3MRK8HFAh+upHz$)@Jl@2B@g9eQ<9nI@j%VJUwR@nK>nKPDIyBMNQe^QT& z!Sv-?z3v8cGc(pe&%VGD{_w}HO#QEeC9V(^Ps%|J=jlOAd{1A}xAfI~eZm40oA^sr zYK!o#rA|3f>P2=gQY{>FW#iwD$ho4AazOQe-?1f+VaEL0=BakvXT`;@U1hnML#6}-G1smj_nb{e-_q>fQ{3-=KLZIo literal 0 HcmV?d00001 From f16b325bbc99b20edea482019c53478466b303ea Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 12 Sep 2023 15:45:11 -0500 Subject: [PATCH 07/24] File renaming --- .../{MPRLoader.py => MaterialDataLoader.py} | 372 +++++++++--------- .../PredictorModel.py | 0 .../MaterialPropertyPredictor/__init__.py | 2 +- boxylmer/plan and progress.md | 5 +- ...der_test.py => MaterialDataLoader_test.py} | 40 +- 5 files changed, 211 insertions(+), 208 deletions(-) rename boxylmer/MaterialPropertyPredictor/{MPRLoader.py => MaterialDataLoader.py} (97%) create mode 100644 boxylmer/MaterialPropertyPredictor/PredictorModel.py rename boxylmer/tests/{MPRLoader_test.py => MaterialDataLoader_test.py} (96%) diff --git a/boxylmer/MaterialPropertyPredictor/MPRLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py similarity index 97% rename from boxylmer/MaterialPropertyPredictor/MPRLoader.py rename to boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index 62656d1c..7eeac497 100644 --- a/boxylmer/MaterialPropertyPredictor/MPRLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -1,186 +1,186 @@ -from mp_api.client import MPRester -from abc import ABC, abstractmethod -import numpy as np - -class AbstractDataLoader(ABC): - def __init__(self): - self.structures = None - - # cached data in self.structures. It's possible to lump this all into a dict or just to use it on the fly, - # but for now, explicitly referencing them will assist when we're unsure what the best descriptors are for the target property. - self.lattice_vectors = None - self.lattice_angles = None - self.volumes = None - self.extra_data = None - - self.band_gaps = None - - self.formulas = None - - # hmm... https://journals.aps.org/prb/abstract/10.1103/PhysRevB.89.205118 - # suggests there are better ways to represent a crystal lattice than coulomb matrices. - # This could be a good idea to explore in the future for more complex properties - # This paper ALSO tells me that coulomb matrices are a previous industry standard, - # So it stands to reason there should be some libraries to speed this up out there. - # For now, though, this method is slow when doing lattice-consistent distances and needs optimization. - self.coulomb_matrices = None - - # https://par.nsf.gov/servlets/purl/10187380#:~:text=Coulomb%20Matrix%20Eigenvalues%20(CME)%20are,searches%2C%20and%20interpret%20rotational%20spectra. - # Very good primer on why the sorted eigenvalues are both useful and computationally efficient. - # Still not as good as a graph representation, but this is much faster to implement given I still have papers to grade :(. - self.coulomb_matrix_eigenvalues = None - - self.input_length = None - - @abstractmethod - def load_data(self): - pass - - @classmethod - def calculate_distances_fast(cls, structure): - coords = np.array([site.coords for site in structure.sites]) - n = len(coords) - distances = np.zeros((n, n)) - - for i in range(n): - for j in range(i+1, n): - dist = np.linalg.norm(coords[i] - coords[j]) - distances[i, j] = dist - distances[j, i] = dist - - return distances - - @classmethod - def calculate_distances_accurate(cls, structure): - n = len(structure) - distances = np.zeros((n, n)) - - for i in range(n): - for j in range(i+1, n): - dist = structure.get_distance(i, j) - distances[i, j] = dist - distances[j, i] = dist - - return distances - - # coulomb matrix implemented from https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html - @classmethod - def calculate_coulomb_matrix(cls, structure, distance_method='fast'): - n = len(structure) - mat = np.zeros((n, n)) - z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element - if distance_method == 'fast': - distances = AbstractDataLoader.calculate_distances_fast(structure) - elif distance_method == 'accurate': - distances = AbstractDataLoader.calculate_distances_accurate(structure) - else: - raise ValueError("Invalid distance calculation method. Use \'fast\' or \'accurate\'.") - - z_product = z[:, np.newaxis] * z[np.newaxis, :] - z_product = z_product.astype('float64') - mat = np.divide(z_product, distances, out=np.zeros_like(z_product), where=distances!=0) - - np.fill_diagonal(mat, 0.5 * z ** 2.4) # faster than using for loop directly (cProfile -> 0.181) - return mat - - @classmethod - def calculate_eigenvalues(cls, coulomb_matrix): - eigenvalues, _ = np.linalg.eigh(coulomb_matrix) - sorted_evs = np.sort(eigenvalues) - return sorted_evs - - def calculate_max_input_size(self): - # later we may modify these descriptors, so lets tabulate them. We also have extras! - vol = 1 - abc = 3 - angles = 3 - eigenvals_len = max([len(s) for s in self.structures]) - extras_len = len(self.extra_data) - return vol + abc + angles + eigenvals_len + extras_len - - def _validate(self): - ndata = len(self.structures) - for key in self.extra_data: - assert len(self.extra_data[key] == ndata) - # given more constraints later on, this may be expanded if the types of input data structures widen - - def _process_parsed_data(self): - self.coulomb_matrices = [self.calculate_coulomb_matrix(s) for s in self.structures] - self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] - self.input_length = self.calculate_max_input_size() - self._validate() - - def get_model_inputs(self, padding_value=0): - """ - Acquire the model input data as a procured ndarray of values in a standard (Sample, Feature) format. - - Parameters: - - padding_value (float, optional): Padding. Default is 0. - - Returns: - - padded_feature_vectors (np.array): Padded inputs of shape (Sample, Feature) - """ - - num_structures = len(self.structures) - padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) - - for i in range(num_structures): - feature_vector = np.hstack( - (self.volumes[i], - self.lattice_vectors[i], - self.lattice_angles[i], - self.coulomb_matrix_eigenvalues[i]), dtype=np.float32) - - padding_size = self.input_length - len(feature_vector) - - if padding_size >= 0: - padded_feature_vectors[i, :len(feature_vector)] = feature_vector - else: - raise ValueError("Input feature vector size exceeded the available input size.") - - return padded_feature_vectors - - def get_model_outputs(self): - """ - Acquire the model ouptut data as a procured single dimensional ndarray. - - Returns: - - outputs (np.array): Onputs of shape (Float32) - """ - return self.band_gaps - - def get_input_length(self): - return self.input_length - - def __len__(self): - return len(self.structures) - -class MPRLoader(AbstractDataLoader): - def __init__(self): - super().__init__() - - def load_data(self, api_key, **kwargs): - with MPRester(api_key) as mpr: - data = mpr.materials.summary.search( - fields=[ - "material_id", - "band_gap", - "formula_pretty", - "volume", - "structure"], - **kwargs - ) - - self.structures = [d.structure for d in data] - self.lattice_vectors = np.array([(s.lattice.a, s.lattice.b, s.lattice.c) for s in self.structures], dtype=np.float32) - self.lattice_angles = np.array([s.lattice.angles for s in self.structures], dtype=np.float32) - self.volumes = np.array([s.volume for s in self.structures], dtype=np.float32) - self.formulas = [d.formula_pretty for d in data] - self.band_gaps = np.array([d.band_gap for d in data], dtype=np.float32) - - - # when pulling directly from MPR, extra data doesn't make sense as you don't know how much data will be found ahead of time - # thus for this concrete class, extras are moot (but we could fill them out later, or just lump all our parsed data into a dict) - self.extra_data = {} - - self._process_parsed_data() +from mp_api.client import MPRester +from abc import ABC, abstractmethod +import numpy as np + +class AbstractDataLoader(ABC): + def __init__(self): + self.structures = None + + # cached data in self.structures. It's possible to lump this all into a dict or just to use it on the fly, + # but for now, explicitly referencing them will assist when we're unsure what the best descriptors are for the target property. + self.lattice_vectors = None + self.lattice_angles = None + self.volumes = None + self.extra_data = None + + self.band_gaps = None + + self.formulas = None + + # hmm... https://journals.aps.org/prb/abstract/10.1103/PhysRevB.89.205118 + # suggests there are better ways to represent a crystal lattice than coulomb matrices. + # This could be a good idea to explore in the future for more complex properties + # This paper ALSO tells me that coulomb matrices are a previous industry standard, + # So it stands to reason there should be some libraries to speed this up out there. + # For now, though, this method is slow when doing lattice-consistent distances and needs optimization. + self.coulomb_matrices = None + + # https://par.nsf.gov/servlets/purl/10187380#:~:text=Coulomb%20Matrix%20Eigenvalues%20(CME)%20are,searches%2C%20and%20interpret%20rotational%20spectra. + # Very good primer on why the sorted eigenvalues are both useful and computationally efficient. + # Still not as good as a graph representation, but this is much faster to implement given I still have papers to grade :(. + self.coulomb_matrix_eigenvalues = None + + self.input_length = None + + @abstractmethod + def load_data(self): + pass + + @classmethod + def calculate_distances_fast(cls, structure): + coords = np.array([site.coords for site in structure.sites]) + n = len(coords) + distances = np.zeros((n, n)) + + for i in range(n): + for j in range(i+1, n): + dist = np.linalg.norm(coords[i] - coords[j]) + distances[i, j] = dist + distances[j, i] = dist + + return distances + + @classmethod + def calculate_distances_accurate(cls, structure): + n = len(structure) + distances = np.zeros((n, n)) + + for i in range(n): + for j in range(i+1, n): + dist = structure.get_distance(i, j) + distances[i, j] = dist + distances[j, i] = dist + + return distances + + # coulomb matrix implemented from https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html + @classmethod + def calculate_coulomb_matrix(cls, structure, distance_method='fast'): + n = len(structure) + mat = np.zeros((n, n)) + z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element + if distance_method == 'fast': + distances = AbstractDataLoader.calculate_distances_fast(structure) + elif distance_method == 'accurate': + distances = AbstractDataLoader.calculate_distances_accurate(structure) + else: + raise ValueError("Invalid distance calculation method. Use \'fast\' or \'accurate\'.") + + z_product = z[:, np.newaxis] * z[np.newaxis, :] + z_product = z_product.astype('float64') + mat = np.divide(z_product, distances, out=np.zeros_like(z_product), where=distances!=0) + + np.fill_diagonal(mat, 0.5 * z ** 2.4) # faster than using for loop directly (cProfile -> 0.181) + return mat + + @classmethod + def calculate_eigenvalues(cls, coulomb_matrix): + eigenvalues, _ = np.linalg.eigh(coulomb_matrix) + sorted_evs = np.sort(eigenvalues) + return sorted_evs + + def calculate_max_input_size(self): + # later we may modify these descriptors, so lets tabulate them. We also have extras! + vol = 1 + abc = 3 + angles = 3 + eigenvals_len = max([len(s) for s in self.structures]) + extras_len = len(self.extra_data) + return vol + abc + angles + eigenvals_len + extras_len + + def _validate(self): + ndata = len(self.structures) + for key in self.extra_data: + assert len(self.extra_data[key] == ndata) + # given more constraints later on, this may be expanded if the types of input data structures widen + + def _process_parsed_data(self): + self.coulomb_matrices = [self.calculate_coulomb_matrix(s) for s in self.structures] + self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] + self.input_length = self.calculate_max_input_size() + self._validate() + + def get_model_inputs(self, padding_value=0): + """ + Acquire the model input data as a procured ndarray of values in a standard (Sample, Feature) format. + + Parameters: + - padding_value (float, optional): Padding. Default is 0. + + Returns: + - padded_feature_vectors (np.array): Padded inputs of shape (Sample, Feature) + """ + + num_structures = len(self.structures) + padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) + + for i in range(num_structures): + feature_vector = np.hstack( + (self.volumes[i], + self.lattice_vectors[i], + self.lattice_angles[i], + self.coulomb_matrix_eigenvalues[i]), dtype=np.float32) + + padding_size = self.input_length - len(feature_vector) + + if padding_size >= 0: + padded_feature_vectors[i, :len(feature_vector)] = feature_vector + else: + raise ValueError("Input feature vector size exceeded the available input size.") + + return padded_feature_vectors + + def get_model_outputs(self): + """ + Acquire the model ouptut data as a procured single dimensional ndarray. + + Returns: + - outputs (np.array): Onputs of shape (Float32) + """ + return self.band_gaps + + def get_input_length(self): + return self.input_length + + def __len__(self): + return len(self.structures) + +class MPRLoader(AbstractDataLoader): + def __init__(self): + super().__init__() + + def load_data(self, api_key, **kwargs): + with MPRester(api_key) as mpr: + data = mpr.materials.summary.search( + fields=[ + "material_id", + "band_gap", + "formula_pretty", + "volume", + "structure"], + **kwargs + ) + + self.structures = [d.structure for d in data] + self.lattice_vectors = np.array([(s.lattice.a, s.lattice.b, s.lattice.c) for s in self.structures], dtype=np.float32) + self.lattice_angles = np.array([s.lattice.angles for s in self.structures], dtype=np.float32) + self.volumes = np.array([s.volume for s in self.structures], dtype=np.float32) + self.formulas = [d.formula_pretty for d in data] + self.band_gaps = np.array([d.band_gap for d in data], dtype=np.float32) + + + # when pulling directly from MPR, extra data doesn't make sense as you don't know how much data will be found ahead of time + # thus for this concrete class, extras are moot (but we could fill them out later, or just lump all our parsed data into a dict) + self.extra_data = {} + + self._process_parsed_data() diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py new file mode 100644 index 00000000..e69de29b diff --git a/boxylmer/MaterialPropertyPredictor/__init__.py b/boxylmer/MaterialPropertyPredictor/__init__.py index 6874dfc5..60054a45 100644 --- a/boxylmer/MaterialPropertyPredictor/__init__.py +++ b/boxylmer/MaterialPropertyPredictor/__init__.py @@ -1 +1 @@ -from .MPRLoader import MPRLoader \ No newline at end of file +from .MaterialDataLoader import MPRLoader \ No newline at end of file diff --git a/boxylmer/plan and progress.md b/boxylmer/plan and progress.md index 175968db..177d5c9a 100644 --- a/boxylmer/plan and progress.md +++ b/boxylmer/plan and progress.md @@ -24,7 +24,10 @@ - The loader should hold onto the structure objects, so graph construction is still possible without weird methods / a class rewrite. - Models: RandomForest (doable), GradientBoosting (doable), Graph Convolution (reach, likely won't have enough time this week) - Padding -> Decide how to allocate it, how will the max size be determined and stored? -- +- Possibly, we could use an autoencoder to get over possible padding issues, if the tree based methods don't like the zero padding. + - Pros: Faster tree inputs, reduced input space, likely better performance + - Cons: Can't find the importance of each input (random forest), training the AE could be super expensive and lag out everything + - This might be a more realistic reach goal than GNNs, lets try this first if there's time. ## Wednesday (Finish up model, test model for goals (realistic band gap values, parity, etc)) diff --git a/boxylmer/tests/MPRLoader_test.py b/boxylmer/tests/MaterialDataLoader_test.py similarity index 96% rename from boxylmer/tests/MPRLoader_test.py rename to boxylmer/tests/MaterialDataLoader_test.py index b34a8f39..9be27d61 100644 --- a/boxylmer/tests/MPRLoader_test.py +++ b/boxylmer/tests/MaterialDataLoader_test.py @@ -1,21 +1,21 @@ -import warnings -from MaterialPropertyPredictor import MPRLoader - - -loader = None - -def test_loading(): - global loader - warnings.filterwarnings("ignore", category=UserWarning) - api_key_file = "api_key.txt" - with open(api_key_file, "r") as f: - api_key = f.read().strip() - loader = MPRLoader() - loader.load_data(api_key, chemsys=["Si", "Si-Ge", "Ge-Si", "Ge"]) - assert len(loader) > 0 - assert len(loader) == len(loader.get_model_inputs()) - assert len(loader) == len(loader.formulas) - - -def test_input_and_output_len(): +import warnings +from MaterialPropertyPredictor import MPRLoader + + +loader = None + +def test_loading(): + global loader + warnings.filterwarnings("ignore", category=UserWarning) + api_key_file = "api_key.txt" + with open(api_key_file, "r") as f: + api_key = f.read().strip() + loader = MPRLoader() + loader.load_data(api_key, chemsys=["Si", "Si-Ge", "Ge-Si", "Ge"]) + assert len(loader) > 0 + assert len(loader) == len(loader.get_model_inputs()) + assert len(loader) == len(loader.formulas) + + +def test_input_and_output_len(): assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) \ No newline at end of file From 4ec80dcee67f9d129ff7c7a7d9ce1657159e1757 Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 12 Sep 2023 17:15:14 -0500 Subject: [PATCH 08/24] cache featurized model inputs once calculated, sketched AbstractBandGapModel --- .../MaterialDataLoader.py | 61 +++++++++++++------ .../PredictorModel.py | 50 +++++++++++++++ boxylmer/plan and progress.md | 19 +++++- boxylmer/tests/MaterialDataLoader_test.py | 14 ++++- 4 files changed, 121 insertions(+), 23 deletions(-) diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index 7eeac497..ee244e86 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -1,8 +1,12 @@ from mp_api.client import MPRester from abc import ABC, abstractmethod import numpy as np +from sklearn.model_selection import train_test_split + +RSEED = 1996 class AbstractDataLoader(ABC): + test_size = 0.2 def __init__(self): self.structures = None @@ -32,6 +36,9 @@ def __init__(self): self.input_length = None + + self.input_cache = None + @abstractmethod def load_data(self): pass @@ -120,26 +127,27 @@ def get_model_inputs(self, padding_value=0): Returns: - padded_feature_vectors (np.array): Padded inputs of shape (Sample, Feature) """ - - num_structures = len(self.structures) - padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) - - for i in range(num_structures): - feature_vector = np.hstack( - (self.volumes[i], - self.lattice_vectors[i], - self.lattice_angles[i], - self.coulomb_matrix_eigenvalues[i]), dtype=np.float32) - - padding_size = self.input_length - len(feature_vector) - - if padding_size >= 0: - padded_feature_vectors[i, :len(feature_vector)] = feature_vector - else: - raise ValueError("Input feature vector size exceeded the available input size.") - - return padded_feature_vectors - + if self.input_cache is None: + num_structures = len(self.structures) + padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) + + for i in range(num_structures): + feature_vector = np.hstack( + (self.volumes[i], + self.lattice_vectors[i], + self.lattice_angles[i], + self.coulomb_matrix_eigenvalues[i]), dtype=np.float32) + + padding_size = self.input_length - len(feature_vector) + + if padding_size >= 0: + padded_feature_vectors[i, :len(feature_vector)] = feature_vector + else: + raise ValueError("Input feature vector size exceeded the available input size.") + self.input_cache = padded_feature_vectors + + return self.input_cache + def get_model_outputs(self): """ Acquire the model ouptut data as a procured single dimensional ndarray. @@ -149,6 +157,19 @@ def get_model_outputs(self): """ return self.band_gaps + def get_train_data(self, train_size=1-test_size, seed=RSEED): + # these data sets are typically small, calling the function like this is not likely to bottleneck + inputs = self.get_model_inputs() + outputs = self.get_model_outputs() + train_x, _, train_y, _ = train_test_split(inputs, outputs, train_size=train_size, random_state=seed) + return train_x, train_y + + def get_test_data(self, test_size=test_size, seed=RSEED): + inputs = self.get_model_inputs() + outputs = self.get_model_outputs() + _, test_x, _, test_y = train_test_split(inputs, outputs, test_size=test_size, random_state=seed) + return test_x, test_y + def get_input_length(self): return self.input_length diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py index e69de29b..d796312b 100644 --- a/boxylmer/MaterialPropertyPredictor/PredictorModel.py +++ b/boxylmer/MaterialPropertyPredictor/PredictorModel.py @@ -0,0 +1,50 @@ +from abc import ABC, abstractmethod +import numpy as np +from sklearn.ensemble import RandomForestRegressor +from sklearn.ensemble import GradientBoostingRegressor + + +class AbstractBandGapModel(ABC): + + def __init__(self): + pass + + @abstractmethod + def train(self, material_data_loader): + pass + + def predict(self, material_data_loader, test_data_only=True): + if test_data_only: + x = material_data_loader.get_test_data() + else: + x = material_data_loader.get_model_inputs() + y = self._predict(x) + return y + + @abstractmethod + def _predict(self, x): + pass + + def parity(self, material_data_loader, test_data_only=True): + pred = self.predict(material_data_loader, test_data_only=test_data_only) + if test_data_only: + x, y = material_data_loader.get_test_data() + else: + x = material_data_loader.get_model_inputs() + y = material_data_loader.get_model_outputs() + + return y, pred + + + +class RandomForestBandGapModel(AbstractBandGapModel): + def __init__(self): + super.__init__() + + def train(self, material_data_loader): + pass + + def _predict(self, x): + pass + + diff --git a/boxylmer/plan and progress.md b/boxylmer/plan and progress.md index 177d5c9a..31d168bb 100644 --- a/boxylmer/plan and progress.md +++ b/boxylmer/plan and progress.md @@ -3,6 +3,7 @@ # The Plan ## Monday (primarily planning, familiarize with literature and MPRester) +### Day plan - Create package structure - Outline classes and necessary abstractions - Abstract class to load / curate data (DataLoader) @@ -19,6 +20,7 @@ - Will leave relevant and useful literature sources as comments for reference later. ## Tuesday (Finish up data loader, begin model class) +### Day plan - Identify appropriate structure for models and fill out the BandGapPredictor - in this limited case the input will be flat, but a 3D structure such as graphs will be more complicated and likely require a different representation or accessor method - The loader should hold onto the structure objects, so graph construction is still possible without weird methods / a class rewrite. @@ -27,10 +29,23 @@ - Possibly, we could use an autoencoder to get over possible padding issues, if the tree based methods don't like the zero padding. - Pros: Faster tree inputs, reduced input space, likely better performance - Cons: Can't find the importance of each input (random forest), training the AE could be super expensive and lag out everything - - This might be a more realistic reach goal than GNNs, lets try this first if there's time. + - This might be a more realistic reach goal than GNNs, lets try this first if there's time. + + +### Notes and issues - Tuesday +- It's a simple design problem, but should we have the model be dependent on the dataloader directly, or some direct representation of its data? + - Making it dependent on abstract data loaders make it harder to get fine-grained control of what data we're using, so train-test-validate splits are less clear. + - The direct meaning of a flat input vector is basically useless to anyone trying to use this package, as the meaning of the vector changes depending on what features you're using for the model. + - The latter point is- probably -more important in an industry setting, though I don't have much experience here. I'm guessing this is the case: it's more important to have it be readable than to expose fine grain control over training and testing. Therefore: We will add train/test/validate accessors with rng seeds to the dataloader class and implement reasonable defaults. + +- It may be useful to implement predict_pymatgen(pymatgen_structure, extras={}) to facilitate easy prediction with custom structures, but this may be out of scope for now. **Future design will need to consider how exactly novel predictions are going to be made and where from / in what format that data will arrive in.** ## Wednesday (Finish up model, test model for goals (realistic band gap values, parity, etc)) +### Day plan ## Thursday (Visualization of results + deal with possible issues or hangups that may have happened Mon-Wed) +### Day plan + +## Friday (last day: wrap up and write comments and instructions.) +### Day plan -## Friday (last day: wrap up and write comments and instructions.) \ No newline at end of file diff --git a/boxylmer/tests/MaterialDataLoader_test.py b/boxylmer/tests/MaterialDataLoader_test.py index 9be27d61..aacb44c8 100644 --- a/boxylmer/tests/MaterialDataLoader_test.py +++ b/boxylmer/tests/MaterialDataLoader_test.py @@ -18,4 +18,16 @@ def test_loading(): def test_input_and_output_len(): - assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) \ No newline at end of file + assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) + +def test_training_and_testing_splits(): + # test_size = 0.3 + train_x, train_y = loader.get_train_data() + assert len(train_x) == len(train_y) + + test_x, test_y = loader.get_test_data() + assert len(test_x) == len(test_y) + + training_length = len(train_x) + testing_length = len(test_x) + assert training_length > testing_length \ No newline at end of file From 9595fdf8497e7c11623b2f25badb47053b21d8eb Mon Sep 17 00:00:00 2001 From: Will Date: Tue, 12 Sep 2023 23:26:34 -0500 Subject: [PATCH 09/24] two models implemented, performance is sub par. Need to test various featurizations --- .../PredictorModel.py | 37 +++++-- .../MaterialPropertyPredictor/__init__.py | 4 +- boxylmer/tests/MaterialDataLoader_test.py | 33 ------- boxylmer/tests/aggregated_test.py | 91 ++++++++++++++++++ test_output/gradient boosting parity.png | Bin 0 -> 23665 bytes test_output/random forest parity.png | Bin 0 -> 22448 bytes test_output/test_parity_plot n=150.png | Bin 0 -> 22816 bytes test_output/test_parity_plot n=200.png | Bin 0 -> 22521 bytes test_output/test_parity_plot n=300.png | Bin 0 -> 22813 bytes 9 files changed, 122 insertions(+), 43 deletions(-) delete mode 100644 boxylmer/tests/MaterialDataLoader_test.py create mode 100644 boxylmer/tests/aggregated_test.py create mode 100644 test_output/gradient boosting parity.png create mode 100644 test_output/random forest parity.png create mode 100644 test_output/test_parity_plot n=150.png create mode 100644 test_output/test_parity_plot n=200.png create mode 100644 test_output/test_parity_plot n=300.png diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py index d796312b..6a79846c 100644 --- a/boxylmer/MaterialPropertyPredictor/PredictorModel.py +++ b/boxylmer/MaterialPropertyPredictor/PredictorModel.py @@ -7,15 +7,16 @@ class AbstractBandGapModel(ABC): def __init__(self): + self.model = None pass @abstractmethod - def train(self, material_data_loader): + def fit(self, material_data_loader): pass def predict(self, material_data_loader, test_data_only=True): if test_data_only: - x = material_data_loader.get_test_data() + x, _ = material_data_loader.get_test_data() else: x = material_data_loader.get_model_inputs() y = self._predict(x) @@ -26,25 +27,43 @@ def _predict(self, x): pass def parity(self, material_data_loader, test_data_only=True): - pred = self.predict(material_data_loader, test_data_only=test_data_only) if test_data_only: x, y = material_data_loader.get_test_data() else: x = material_data_loader.get_model_inputs() y = material_data_loader.get_model_outputs() - return y, pred - + pred = self._predict(x) + return y, pred class RandomForestBandGapModel(AbstractBandGapModel): def __init__(self): - super.__init__() + super().__init__() + self.model = RandomForestRegressor(n_estimators=150) + - def train(self, material_data_loader): - pass + def fit(self, material_data_loader): + train_x, train_y = material_data_loader.get_train_data() + self.model.fit(train_x, train_y) + return None def _predict(self, x): - pass + return self.model.predict(x) + +class GradientBoostingBandGapModel(AbstractBandGapModel): + def __init__(self): + super().__init__() + self.model = GradientBoostingRegressor(n_estimators=150, learning_rate=0.1) + + + def fit(self, material_data_loader): + train_x, train_y = material_data_loader.get_train_data() + self.model.fit(train_x, train_y) + return None + + def _predict(self, x): + return self.model.predict(x) + \ No newline at end of file diff --git a/boxylmer/MaterialPropertyPredictor/__init__.py b/boxylmer/MaterialPropertyPredictor/__init__.py index 60054a45..feca4276 100644 --- a/boxylmer/MaterialPropertyPredictor/__init__.py +++ b/boxylmer/MaterialPropertyPredictor/__init__.py @@ -1 +1,3 @@ -from .MaterialDataLoader import MPRLoader \ No newline at end of file +from .MaterialDataLoader import MPRLoader +from .PredictorModel import RandomForestBandGapModel +from .PredictorModel import GradientBoostingBandGapModel diff --git a/boxylmer/tests/MaterialDataLoader_test.py b/boxylmer/tests/MaterialDataLoader_test.py deleted file mode 100644 index aacb44c8..00000000 --- a/boxylmer/tests/MaterialDataLoader_test.py +++ /dev/null @@ -1,33 +0,0 @@ -import warnings -from MaterialPropertyPredictor import MPRLoader - - -loader = None - -def test_loading(): - global loader - warnings.filterwarnings("ignore", category=UserWarning) - api_key_file = "api_key.txt" - with open(api_key_file, "r") as f: - api_key = f.read().strip() - loader = MPRLoader() - loader.load_data(api_key, chemsys=["Si", "Si-Ge", "Ge-Si", "Ge"]) - assert len(loader) > 0 - assert len(loader) == len(loader.get_model_inputs()) - assert len(loader) == len(loader.formulas) - - -def test_input_and_output_len(): - assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) - -def test_training_and_testing_splits(): - # test_size = 0.3 - train_x, train_y = loader.get_train_data() - assert len(train_x) == len(train_y) - - test_x, test_y = loader.get_test_data() - assert len(test_x) == len(test_y) - - training_length = len(train_x) - testing_length = len(test_x) - assert training_length > testing_length \ No newline at end of file diff --git a/boxylmer/tests/aggregated_test.py b/boxylmer/tests/aggregated_test.py new file mode 100644 index 00000000..47264e6e --- /dev/null +++ b/boxylmer/tests/aggregated_test.py @@ -0,0 +1,91 @@ +import warnings +from MaterialPropertyPredictor import MPRLoader +from MaterialPropertyPredictor import RandomForestBandGapModel +from MaterialPropertyPredictor import GradientBoostingBandGapModel + + +import os +import matplotlib.pyplot as plt +import pytest + +def output_directory(): + output_dir = "test_output" + if not os.path.exists(output_dir): + os.makedirs(output_dir) + return output_dir + +def generate_parity_plot(y, pred, filename): + plt.figure(figsize=(6, 6)) + plt.plot(y, pred, 'ro', markersize=8, markerfacecolor='red') + max_value = max(max(y), max(pred)) + plt.plot([0, max_value], [0, max_value], 'k-', lw=2, label='Parity Line') + + plt.xlabel('y') + plt.ylabel('pred') + plt.xlim(0, max_value) + plt.ylim(0, max_value) + plt.gca().set_aspect('equal', adjustable='box') + plt.box(True) + plt.grid(False) + plt.title(filename) + + plot_filename = os.path.join(output_directory(), filename + ".png") + plt.savefig(plot_filename) + + assert os.path.isfile(plot_filename) + + +loader = None +def test_loading(): + global loader + warnings.filterwarnings("ignore", category=UserWarning) + api_key_file = "api_key.txt" + with open(api_key_file, "r") as f: + api_key = f.read().strip() + loader = MPRLoader() + loader.load_data( + api_key, + elements=["O", "Si", "Ge"] + # chemsys=["Si", "Si-Ge", "Ge-Si", "Ge"], + ) + assert len(loader) > 0 + assert len(loader) == len(loader.get_model_inputs()) + assert len(loader) == len(loader.formulas) + +def test_input_and_output_len(): + assert len(loader) > 1 + assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) + +def test_training_and_testing_splits(): + # test_size = 0.3 + train_x, train_y = loader.get_train_data() + assert len(train_x) == len(train_y) + + test_x, test_y = loader.get_test_data() + assert len(test_x) == len(test_y) + + training_length = len(train_x) + testing_length = len(test_x) + assert training_length > testing_length + +randomforest_model = None +def test_random_forest_bandgap_model(): + global randomforest_model + randomforest_model = RandomForestBandGapModel() + randomforest_model.fit(loader) + randomforest_model.predict(loader) + y, pred = randomforest_model.parity(loader) + assert len(y) == len(pred) + + generate_parity_plot(y, pred, "random forest parity") + +gradientboosting_model = None +def test_gradient_boosting_bandgap_model(): + global gradientboosting_model + gradientboosting_model = GradientBoostingBandGapModel() + gradientboosting_model.fit(loader) + gradientboosting_model.predict(loader) + y, pred = gradientboosting_model.parity(loader) + assert len(y) == len(pred) + + generate_parity_plot(y, pred, "gradient boosting parity") \ No newline at end of file diff --git a/test_output/gradient boosting parity.png b/test_output/gradient boosting parity.png new file mode 100644 index 0000000000000000000000000000000000000000..8abf21a335d15fad403ed8735baed411c151dd0f GIT binary patch literal 23665 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 literal 0 HcmV?d00001 diff --git a/test_output/random forest parity.png b/test_output/random forest parity.png new file mode 100644 index 0000000000000000000000000000000000000000..dea69d448a1a07a50aec53dcf0a26b14396e5174 GIT binary patch literal 22448 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≈?C-U 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 !*V* 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 literal 0 HcmV?d00001 diff --git a/test_output/test_parity_plot n=150.png b/test_output/test_parity_plot n=150.png new file mode 100644 index 0000000000000000000000000000000000000000..c9266e617e77e7266133333bae60ca8d0432d72c GIT binary patch literal 22816 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 LTkm{z_}o7L2iEjs literal 0 HcmV?d00001 diff --git a/test_output/test_parity_plot n=200.png b/test_output/test_parity_plot n=200.png new file mode 100644 index 0000000000000000000000000000000000000000..3ddc2a3ef3014ea90bcc9cc2bd3ce6bcfaddfe32 GIT binary patch literal 22521 zcmeFZWms0-w?4WkB?K{$kP-=Li4)wVRFv*+rMryZ1iV|D4a~!|}SjoIY!v8;@w5`ti>qkr*F z!7tUOABN!{0Y@oyM`c@6M;8No6GXwl(ay@&(aPMA-r2<7!Q9s778f7aEe?7!M@Ksc zL2hpAe{bNjwSU6hDt31kIw7!=(QrVJvj*s2tTfS7a|BT{m6a5K>>9f?;_>YLRNV3L z4(^qS_qcCK85;0{KVJ*@{Pj@oF&mqd1eQiI#b^C&DI%wek^CAjVdpo+Tct%7@_3gm z^Sr-}QEsW;k?I4bKxJ3d$sUmE(I15g47z~a==f)=l=f-{~vrM&aqv@ ztI(?4WZWQU5)vAk=!MH%3D1wpeuUEHaB3CHgzfFDEZR9;^k6)r!G@bQQHt8{lRu* zqS%q&DQ>QdRvRJWlBIHIu!yS32z?(vdNkp93#r|}R|~wVU#7s%5fLRH&LS@*HSOtE z=5~izBJp8nNsMi^KuTW-%lK{2n%G$CIFIEr_o)cAFt4!y_;_<+@?7s2J+}v*5c*0C zmOeFV%ppR=B}(N;u$mOu*i&9&rzcBhq`mFUy0IcJ*ZiAZRsATk!g(oZbh&Cr*W}3) zKB4V`gu~|b9jjk;zC=ZqeOy)BgO-9vyT7-pRy-dhc+ufGb`(U*lqnos$mv1qE9Z{&e@~Dope3;mbxwA6rv!CKypD zT{Dg^aY!}3%YV?Mcl7zPZRMky{gIX1hTrh5`*X$B^gN3MU6!*x-g+{Bw7;TeVv=&S zT~d>-SK~EU?O9Q5JH{pJzK~t=J}N5Jmxz3RGMHNxzUQRZSO|@f+)W&9e(K(z@2+mq z9k0V_WxT`k9 z6a}U(I?c9=k5styi5_-|rdL*KA0Mq8bN$jL-ixX^kg7S_$_YO-!a>@uYHQT4zOxxA zrzE<>VYc>!h@9)Ty}iAXS7>xJ)!nd1%F11fyDxA~zup=3XydmV7n|hXn-RV2N0~TT z5fPPoAfRc#nb7e`{MG9Qy62Sx0wp8PF^|;M%_#f~w4Wbt{lFvF*1yfmTfFNY_Ij!* zs^o9ALR)5L<}I&--*lIk28(Wuy3NF0YNHeNs$8=@-nQ*%F#7TO#=X}R9rFt|1Nqu zdz>C%row#P?@^J6tNd)rHyffraTHl|y6 zi}T6I$doEQhD?lQnxayR1i~Jxsii&;`72pq+M*Q2rSrK&?{HqN<9WyX$ViLdKi*K? zG!F1u4^No=POf)<@9@im1Pqr>d75P(Mzh%Jr|&ZR;OxuZ(fa?)|1aPAg~=sTgQu zsP}vl`_!-4YT)xsyoVyXl(=dR?BCD`sme!jDeNACVxUF;CmrTtV8t^uQ6^%n>cuA+Grp)Vn2sBIW5>Js(r=fjjs^uuo7a_Gx_-eiD zjFMbSSF@_H|QjuCB9Ok|?pYrl0w&&hl>fYD0UZfk9i;GqYF}w=!?z-Ny zDm$)yC$|JeG(TEZF<4?t=TfwBaPW+n_Rj8y-#Jy=(aegmX_U82Wp3_ZAIv6&8lIX{ z*UYRI@z}OfND$HS+}lLgxg)#-=FLH5+{uT1!OcA&_pUz))g9N|dm+^6`S~~Fy!PhG zSE~0X-EH=_mv}%Kcpj`ZWXJP8KYG^F-7RVRPIfqwjY~1>v}Gsb!chB5n2eN(iAnkK z(f(G4G#&b#(f74ny>BDi39mLA-K%@!ug=1Dr!)T*#?;u>re4>ybo!F-tgdWF%cnD47O zDr&v6aX-$fS7UFnpluWWvi%pCTx5 zbgoaIKCR1f7=GF?2Wqsh{;X&gd}GkjH}(p^6Nre6%t%ZWXJTTKExLeI2G~W2T&WLG zA+H^oZcE6K=PHvt+}rBv(|eu``bitrBD$^rAlyql!*jw#5sxv9fl+Yk40Y zp46o%#7Tu=GzV?a5r0t@7G(madd~vvRk~J*4V8d>GJMS~pPBXK79WCXi@HuF^Reoy z4*3i_Wo4a7q31Cis>;equ*B!q8t6jVwXwYE+8rXi;+MYK%MH5chE%>SbWGO>GFZ`d zkl0U_ozA7NVv1yEW9tNGB;68Ic5i3c;emEr;%Or9r~w+x?AMn<#wN12Oh51?(=bsY zxCFv#+iN|HE(p?ovo4|vAHt$t>WM}#)Wv)D+HUF$_9X-nkt($(LBj<)25o_0a1FiN zNHMX}wGxA%DVdA16*5kpq4?ynQq{M;gNN|ZYnS0*5wUS{g1@SC?P8G4Cr>bg^Q#l} ztX0dNJ0q!5!Iz}y$jQjeM=RaZc~m=F_{OrpNozRx3*RY)?r7DYwdO41N<7gheC;-& zY$xd7EU=&%)z!LfBKuj>%^#Dtmxe5l4*n9HNPG+5ud}_g7+k)tcOV1HIn1yx zEr(1Ptm%k^gdFfn76vVIdiwK>k~}s>KnN;cs}HF4hLt(rAbOMsnv%|Q`Lk5;`$XplIDeD{M8g=giKC9=jE6)cl>kJOTz4 z9f8+&G^?_*(p0nt)X`&g^|Z{KYEAGkI$`Z~=je&*IQ6K2rZFgRAm`Ff+h`Sf0G$^v zZVcNuah4yfH*JX?Z-|y}cFJ$PqB{@+MH0cNqNcX+l8CE4;M~>C?IGKRzcUGapc|b2 zPDN>LA0cnKeArzW^b;xTuft>9bH3!d?O^}uWuy6Q<6A|KpAl1B7bDlUd*QW}sW)f) zd|#_z2E2Hgn&ZP29`{W%V#=G6ae_`3+Z*6hqW%l~2X$7#&FsPG2*FmLhwa}DYnRe9 z4&BabI!+NO37KF&Q7>`)>no@Ir4map?j1V^BP(91=dRwH1v&dlq>_B(0XjtrGd zRFi59k|4R~CmO3hyoxY=67TjUBO}A=`54%Ps>AJ}rwPZKT@NzB=m|Q`zNNZ+c`N65 zFQ@$PbPSU$Y84wB8#lk6rb{a>R`owirwXnb-`KMY#7Z!mcJtJ@NIM}SLc-f#2d={F zKd(~pSiD!wQcv95b61EH!l5oVKO&B#bUld}T z@1IrA0PQoj_!Ks!kx>$(IlRT_>jp2ED>qt=;`=IGY~_cr5LMW`bXe>y@I{2zs^f%Q zY@W7ul{+nT_xGn&ESJkuQcee~chtXHLxltD5hCCrd z+w5W8QuM7SAxFCnq859bb9;Z=o@3zAh2No~y_4UAQQL)vOcQ;$-j4LzZl}YCJ2JW+ zi0Z(;EP+>`80S8pzK6Q`5Dq2lE<6$4|2SA=nF>N?JZXzZ)xhSHcUKzNb1H9Q`u4zi zfG{Ayv;I%ZvRkpFQDeNObV(*o%N4_14@V<;GWlI9l{wm>P)PRH2xcBd=r&|#2T8(k7L@gKXVskguys~qm{s5viyC)6OH>P4g85lItaLp z9(_4pqrs6OuZwt2n#*y1AZQA9=F?IpnG#e>oyU{GQV+75;(l+QD+6i=6zAm;u~Ow! zMcI{>(>oScR^8-!&k{ig=4F#0O{ACue|8^VhW%qHiAx8pSFhd$yM0v*Cl`03F#$${ zsCa&)qGWx2{U4Cv6$%pIXw4$%4K?`c=Ix*%re_dDQ>t{G?}(BF@ovFaJCX)4tM;Bx zrarws7NUQlPQ?xdxpJ{4*woRvBvVeXxt=u6O|X49X%I}Xm7X-?ZQW2_i=IA;15FpG+#CoZ@DEPAIZ^yYR0TA4s=PPwo@S+4{?2yS*P+e@3D@x zh>ew%m!1x%LabT*>AqE~+WD^3(B;zKB!CAg+SVKvbCr&xp4g)pK3ki$18}l*P(7Tb zQBY`5e~OHpJhQY^9gGjAh4VC08i!8EYFk@2%%Jd@;vZM@bT<+0E5;Og)i+k=KwEij z#EhANwrV)A8Z0!=$jt154M-#G+$u0*w!1pvKAY%2=@t6FHb`XQWn`QdL!cJ+SeGl} zJ)`r{Ysxvx2j^e9k8E0Bm_VZN)mC|@dwzw_+%#ie?Yar-TMrh>>XbV^GBy3;wV6a`{&#(f zO3=|Pct#c6G}wbJAzSl3@}Qx!tEDwGK7z0Dxdi+M&0a6W+oP0ATXx#w>rd^>;@iA( z9y?!3gacwyaeCigxm)=3_q{_1zS==IWTG%Z)y`mzR1O%A<^!3$g`7ku@C>eE^2j?S!)@ygdsI{f74YkTKG(%M$ zC7`LbJVTqC@0*yKYWA5S-kGJmAkq9+mW0Iku*b|;oz++&8`OANkh21_OhFy5; zV#Kh{4>hOUMbd6}T4bC&o={D}x4yG8#gx^r%A0EiW-P9lE#KhAu;3D+reAxQ~VVAE8*O4uvNct|-1fk-p)yGqa7~)gk8OAitR-RLR zlRbu{2GvMP+rl*-*8trJz3`ta!! z#t%WXR8*tCN?KHvno9XP4wy6?^uMzsV<+Y1jaKO$!uRna>t0}X06n*So+L(G%0fV! zM_5 z{HZTrx_^bV4%9D*m!8I-PkdkN=FR5DX?r^f55gCuM^Z4s(k3-M8cIz|d84F4mz;u3 zyznzVt9&Q@xo`5{46Nd$q#S$~F=fT-$B2F9AoM0NbT-$Qvouj`yJTkdxMOc?&$x|N zmZYa_zT@{#i?7AT#vfvC*YC`Jh0dix1!`XGOBZ4!Gco4B3{mfvK7+7&ICDyofZb_y z6yZn?0j2p*WN?S<-k%};-)6qs>B=pFYSzS-eiGAe%3u1sxcGzMo7jc&GryLu?-HALfAO`Z7_X%<9b?sA3TKHCPw{>0biXvLaBniW zXQph%%2GF`&Y+;RXML(unogF^>l%%q@wPtYk9WUTrA4>bA_c{(Y&u_|;!#}qp#@ug z?_m5iFAs;JhDPUW%FgDGozpFy6ZO+;GJ5y^6wn-g;BQ%1&8726=W)pXT zNNau<8w`8Zm)4_M!2I~W?s)3hap2_dz#5fMt}=>tMt zj`lkzHikE5xa#-oTaUYw{6*5!-)$~geErPe(Ax8!b$PKYNXB>}R=r=TVFQ+q_hx3+ zZI)c=Z_&d#j|}`WKQnl)&!vWGKb&EE6lirKhAZt|AGnXuza^fXb-Ob8r_XlSd9pW@ zzlVRcsQ&N1f*d+`Na`OxQh4Lyfnk^&5oEbk+`WbxX!@$k(nAHd$$@`|((a)?NL%)&BRSit4*VJu{>r!jfu(tc3a#+;Wt_anw1bOR#K4I#W>;#nu?kGvH8XsknwoaLwd(sxmyZ%QezF=-c(vBZ zk>9V8RV+Vz=%4K4rts6xWruGJ_$v+-_^mKjS!vg2{I_NeB2_;K^6=L?98f0H-1Q+K zv`}L~lC$zVvm8{EyX@Ok!sV9dtnLQ){JDI&MVD7-aQt@6@fk2_#sQ>=e(>xz-^I)mAv-(A7Oy6xenb zK4!GueX&_{>N%wJ(T6-|J-@ga?W(IV2?#^8KuK982PdHeJW%amz zIjKVdz9lj^c4dXHLtN782RcioaD;b8DYn^Yq!^oZ89Q?RD z%FsXS=TjlJ`F(0Ec8v$3);7AD59zbjCmb!2+D90o|GqybyE*3iS1Sk9cyw<6^t8cj zb}P5Gk#Arzm$9&~=S2MMcR$g~ipBT{pe1%pOuXq8Od#6&WMgF$*DaP6ZXJtL)nHTT z1)Q}=?C_*NH$TvAu zavP>)m>^}MT1y{DV64DCX3$*FCXeut(esLNPdpM-G+SvX*!pi zH5r-bgvb=U_rqJ_GH>rqURI1tE@{zu$wN_`;i}m; zSDrLq4^17!*r{ivzXLo%aE_5x^!TS|<&|J_=IVMj33eZe=^E`cccNM@=d3!*x-g|P zHk{^fLLE6I2GjveE@%~$N0XLM?l1LU**S0Q^m!G55Abl{3BuRenFHN5cArH{*9_n;d(G2?@+LeE(kevMWTc9+d z4Q)%HIXQ@U^M*)76^WL+&aNN$XdwU;UX`66{Xww}Xjf0o^XHHbR=dEW*o|figlhmi zD=I2#u|dZ1V^k+noNUEQYlmiVh03%HrgDe-7uzMlEPt+UFsZnTqDpISn#}NrgAkJL18Ymq=r`(B=WPu#B zZS}p%guZE&&$;p3+YFT`dNJ(KHn;Np*hAv@0zZH+iXwlFQTQDaOIpD*-QccQSBvbG z0`dYm9^&D6IYe83-FV~W=29%R^ToN*B8tWP%-AA06ato*fmb2}NC!NOnk~_)!GrkO(%EY_CT249Vc1542 zDcggGf%U{|X5`{bp|DD8Bg3~D$vh_uakH3Ma(1gq@(dI0X63i(UYN^8Fz2{pn!y2` z8-{Nj-+S39B{OS^`M)AiN5&n@bJ`W#f}MuT)r>wz_ey%~nWt*~#%C_W@eUn8cgBp# zq~tBhqC)-=d0}ovhXvg?YeC(T!T4r**p0WrcWY9>at&SbAmSalyE6N!r@G2<#Hn+s zq(YRQ-fbdxz(GZa=J3dpX-eirh0RS#d_?5W&mS%C;-eCd9t$p~VTJjfnv3^1C@~?4 z4lbecL;zx_eRBDt(0L4l?z2bbJGyhL6VnZcl_n%1GRag`Z8s!8(1VYVU@n+N#=1^X zw$j@Yd+X0O!FL6IDvTxttp!*t#op1f@Ck_;^F%6PaE?fCiwu40@33Ra)3|XyGjQ7B zfEB@KPOyHs=vo@qpG6VaBe@}feaTyY{gG`jSnF?*0s%G5ny4ta;Sb!ktj?-sbK>ha zQGZi@BSH^e*~?$2t2jft%Yq)yVA8I$+){h|A(V(P`RH)q=II92q_bx205RY*hwc>f zpT`VplG?QiE6uc8eSCG5r=zhcWyP~?u9yF%Hy-_mJC)*jSL&7#Ofu!zL$q?mvI$oKhn8tgZxgt-!~XEVZ(gQ1fB`RX~Id8G>9y%zk9l2OJxvXFX*)#q@|B z>gq76Eh)@q*pWSTbh2sWMzRgzNtwVX2KDMYoExvTDKQM1nxtZX@jgkx%-?F~@g-)~ ztKd$NdzW5^g%kGMdP=5$v1rB#XUZL7SNHrA6uA`Qu|jGxM5zAE}R`L+vJ_&edoJf$;S{m_>n_-Cm% zC?1!L!WRm&O^HukMF{cWG}0KS;xxWPvBtw9jD} zrMFdZ+o`dL?9PY3^Q`BYV5|G#Nrpuotm5Mx&Jh0YH-X0ed(NDFzM1%!(K~NKXUUU> z1sCt$fidJT#A@eGqNHhJZ)*w$+}Ll%#t$4kOR>i({u$Nd(gdNHC5Y7Z@($%d(h$x$ z3{uEsOkqtnF0KsruJPBeM+ypWz)Hv2kQ^{llk^(@Q6IwL;f=0O>{3Y_s#3v2g<2? z1${q>Cr4M*`QaYBdW?-=KLfzERh^>}r^9z@;5Kq{!1T z7_MmtG$D*yP~b6i`Vn7#tgW3j2`=*fas_WOHHMV(GYSYu6MEiT&df{+ywI|t&lzfc zR5 z62tcZSOpj$4t0N+0kiqP@VFZZ%HZI|#>UQO+m2O77F{M;>nDv^xk%1Z{Iv+@WHBT+ zl4Du6#tOItd{*STX4s_X0me2XJw0#~7&Z`*2=}}NbLe#s18m`X}tS9 zE2PU9-S4olNJDP_J!8cC_p?416dwWt$yji|9y0Kb4Kyxh2fJ%11Zq=r=$x%rQ{7Xh zrGV$ey4#ZX!dAx23?li&;QD! zh>>hgU9l>s=hv$g9h8U@EFs3D)D&xOWkH%=xFs*z<5%Z++IZK9>Z3 zt$|+$f=RzR4VX-?CJ_0h>5JBpc{_eS%`PskFzKB@ib3{qx60=RK-s-LQ%8mf_1~0q zg+ynA=kfz!+T1S26?+RCxc__PmAWL$$7qs$4{{vu_pOOzA#D%bKUr{@_aJlEH4^(C zwJGFBdww8Fd^sQ)HGP3DL&00f%eFjB-c>-i9 z_-uFeMg!0cLk3t#5v6mxc4QYfBPfP1fpKI?Y;H$ zYUnjlQ9U&4i6+25eoTLqbPwG*XxezB1#A5M?N%ZNZO_cllRr-lTL1caooE>wM2Hyn z*j`MBRHG`L=jJ=eE8xg>q6vhRXEQ?1e0caILTYb$Jaf3K-;z*Y4|Q3*wzX(pZQBsi zITc0crf6ieu|IF&kn@vq8t)t?dUrna>hmww=2o{|ZXx;v4aJR=*Y&;6)B~6F734G* z`*D&LvV_SKo+(8O^$iM>$5g9bb6jkHe9gGpR$kPy@p`j^oP5jD>&Y`Od@_?ZXP^EN zvX#H*SEh0ik?$9g+y&MEnoU4?oG2X*JYIz`$HT3@g%F|T+zJ7)`A+`OYbNi=jC*>f zf2#{iMMU)0sL5lo*>l8yZz4eFU-YSzKaVy`HoS9?nqJ20top`GTOY(?Nj;fr?3ur6 z)=y8FB!ck{}eIskfu>f|w{*#r5Hy5?VFRgemv4yya`(&ybn|!=mtF-u* zOyFoX>9ON!4r7nn|0raa=C$(ja?=+?c0AnOt1-9Dc1yoXmk~T{qCo zME9Z6L}Sa{@;LyQrww1M+ZXf|rTwhr=H?3>qQShpWPeVkn0u@OlI2dnn4)GOchLoQ zz-i2LXAW&IDY`j#`EVv6pCD~cEg%{aI33wtX4phAgN|^eKDYd){sNHmC^nt| zXBJq(>2I=Swg06&B|*jzn9-@g?>)EU{k{>XT1yftocZ7Qnw z;yF%kKKUDr_SIdPOT*V96zW+X@FtMk{^aC}{Gc>Rgep7Q+~}anqA0@Gr?$xPvhn?w z=4jT-aqqT<>@O>K9PVf-CkhAJHMqFEe|&sH{3mf1mTJG0M^cb+qS ztoMV|c^A;lmTcteP^T=J;|1+&n#8w3f=-<*PEKJQgGZ*{2_1GHS$N7sWlT3%Xx_~# z60PX92smet!w$~e5KGyZ>+d(wLM|BQ`yW0r$w!(2s}7|Zc)?KfKQ7xARtO-A=Vz#6 zX~Kfe)DJ??WpY11i!G03g-JrgJSzphB7{#Ob^%`MjiEqAx3i~)c42%wgE<#`>xD@;r-5+Rk9IwR^UaiIX zcVNwruN>}|HvVj%KP&n;;p?j<>#HFukBx1D;(q?kR87g`S^Wg>)q3S?ShMUhclGXP zNUu`Mc8VUYokdk7@aW1X{4Rf?aO0H!jKvRYG)U~b)?llrd7FR2*W%>A zcD!e##;~!s_~Pwv(-3?G#?B6p3r55A74a*qU9q3n8Jf~b|96&Mk*^`fP{$au5fX{% zy2kZr#wm7obTG%|n(-y-k+Sgka7IQlOi*ykvCW)EU^iE0+I7B5r^eAufAciac96F5 z)yxBide?XR^Yh&c%HNgkZrdMpNE4{Z%2=r97Iq)3s3%5sQX4d!|J!1oRc3uGdM{uP`~9BpsupiL?B+mLj)(mubZzJqGze?__nQ8Q=_ktK)%N zU1Oi%sOI~frNaO@4CNT16f-Aa7z>UhkK5&osC1pjde>*`PNz{N6X=#9;903k?4OKWJ+ zk5M7cqPHwaMeqs(I3)%1Cjv3*%&@5vgcQ5xIo{*9;)?!oXFyx>hFkvM4`Wvlzq2wo z0qTrj1%lwp9pL6uX2&~pDezH-g_HrGnQ>sy8`68PAO5WTnD^x`=Xyb-+`{Na+jE=0 zRfZ#t0P@*}qU8=i&i^#KvX9mY09(1itL_DkUq`mq;>yz*6j|R^H%T;rHTA!x~7#1hwWru(KTyy1MYSTW#3K`Fg6#16x1ui)PiJqN|4(jdm z6Ib}MbTY|1R{0n(*UH9@zy_8GusvcUEkB_X|y$E?EzkK0?X- zHC~6ef!FPM^mk@&BjK1s_JjrxMG|q~(-HdDqyDt6+Z0*V?qsl{C$3ALhp$euNY87^ z-YQcL#T?yD{CVx~teskYkzeo}mUe|tkFx?Mx#J_@b{`OQSx7b_%v$mMa> zYs2iAQdD1Fg;+h+T{mtq8)uvnH|rBoqn-bSOmZErM7thUd^z54s;bdd!AwlkJAhoc z=_wh~>g9c&>a));ro7vVOinn);peRB2#4MJ`M8hkW>~4?g@csS+5oNASyK4VH znR`dd`S~(A$KXU)dAnrIdHRlg(xxb_oj7Ut1=N!|d?4l@i$(pF)S&&w@VRRQXNj0^ zogpX4Yl{3BUJ=E4i;j<&D!uj4p_~I87vO8v5(=hnpY~ZgAKxC|ibslGs+Zi5vDI-a zE6MD{ks-oXZO^OYA`R2z{D5BH7As4c;fWs=L|#bNV%O7%L^-nhIg-?;4B|+&u_IAe z^}l|z^XE=^Ji``OZwI$`Y!KE?rTvNj^hq_@cPCj}@^)O$Kz0UZMUu${At3mdiNeoJ z&C8+%_|sigVfPPJbjqon>>Y&iY=x;F!HHz-%}S@07E(wCsp3iehq#EaYHxsYKA(FY zwZzixLhmj%71zAWA`;JArNOBt2l@yW1m%ZPc{*L#QQ12ESMj*6{Ca8EqZDdT1jqh+Bi@Zs}ERuRjItO;@g+C{xF?_=0?+)@gi*stJ=NuU5(CUxn9 z{^bk{?f%J`g0*-h0bb|MHhrAPy1$G@6~K z?g;{C1KG8G>rDxKAs4e}3JiB4?PijB}1Wfhu)mi;Z>r}Gb zR33=1w!~Q~J`CNY__04z^~`PD-x%u?=Y9JJ4(4q=p-WFr<+HMJO?ST^>q&ikp~ggGcyDlkZ;D-uo=e&?p*Pg3NmD=EK^ zjg5qe*S-`2ie4*m<9``CA?MdCPL(1zDu4(;psMtlrYS0O_6^^rtWF%G`NMmDs>jcd z^_n1oq7yh!?fFdDZ>0QVQO;mA|5*g9fg0!_P8rlZNI4`GtIa zN~j>$&z!Jh=!nA#HI)(`rcDh#mXhj>=2@%hOHZZ!=-<;D$?x}dn-`h91Rq~m-L52y z!{Pg2zRC2rd6TB*hMt}yuBmoo5|w5szrf?5BdIa1)v3N>AP7QI!pOF`$)jU0g)L4Ecxee-OP~-8Zr71F%|zZ zx%n7-91EAjRXHE4&f3t&7cDsbd3}&XO{wYbr!~yC_stuVbLRH-m+mPr9|B+=`$YAT zfe6>N>oZeW-b8@L+XmqV1YR(TvXZ$imMjm{#3O1Q^J*jMIe*bRrun-ez>v$CVPohe zH8W;1%_5j9D+^SRad9U~D&|cNX+Ac*Yk_cy)xLDmprP+fEXuY>zItVK=xuIN-iBXsV5n)|>{$DKO!982sa zzPgy;x3WntjG)>~tP$om2M`UYE|JHCx-1ty_tMbPqDW!iWYXmCv2Sv8#PEWAhxk#cNldO}IlERz6W8!1#1L=SDkhi$*sOn-2VWjT)-Dy#3kuEczc(;>p>^h@! zp)cWPwQ0>{^ml;dF^|vb_8Rv8eG11mm=i%bG59Y5pVi!Oo z<_D3=q&9JNh476%?kJm?4;S`elzk=W(mOu{71L09A`{xwF=4j;=UZ`#Ms+NZ%D5zI zu{+HG31TbXoxBRA(DYF1tm(N|sF@^O<;!DaEkcv55{SGt#pR$^a9-?B{EYIS0tK#9 zxRi!%Xb-&Taf)#9IR83 zRE_-W5#G3>Sgy*1jc9%&HDIG~Ca5g*XU|MFQei;onXy&TUv9Vgu(M82cQxSu7mpMf zSH{hHEa|5+`878<$CV8P&XL1K3WK~O2>o=he>tE+qNA$1@#fAP)+J(t-bQnuPixEIh4ex}Kg@;NmBRT3T9adEu}JiPt&dt0CUTuFfQpI#8pB{&ARwp8-_K zLTN+{W5G;%ax$a)QK;AE)syN>wEO~U&c)EmpRJObLj}>pxd(A(BHE3hIsyAmV}8JE zsjLuhB|_rgwO@^R7XpRW4{%rX>xfS8Hh;WTWY)oeRs=!iY8Skf7~z>z(Zlpnj}_sq zxi0DBo#P`txXip+Ev{ojg&X3_-uMhz&HEpTi5iF7+EVi+MVo3jl+ubn*KwT2Mrbc| zFPQ32>;Kh7srQDu0X2J#!vW=`{ll&Pg4)^kj_TJtUr{ZL3HTZKWpyeQ^iqv6A+9eW z080#PluQ34#>RRBr#G5s+EX^r?b&z2RIORf5Jfa_rM_g9d12ss^F}0>!t)rQw9)Ik z=@=4Xb8>{<1eb%`D1g-l zIB#JZ_7fe_Eyp2b`3wzop6|~CP5ug8c5n~)b#HWL*^__7J-R|P{(TzMk54Bz0dy~DK<50_h{4?aq? zks%KpdYroM;b!5MEt8vkCoE`<=-yLhSKWT;YV1J{N&{KF(Wk>_T}PVOHz54&&$~e_ z_{}>U7(QpYDw?T}3P5fpk4#PlOWT$Y1|$0oFJP-f-oA-DKfjqieEIr?^eVEpKYKDu zoR@JRH;jy*I&+TU1{bCZFdw884~r=9sreEolF#~0vTLz`1;R6VnGA#XBYax zp#AJZKOq1RAqRfmc+vnJAzpwT8KF|t05%1rbi_O1T&}(lIwLM?Zj3 z2tFb9B`dT)T6w`71`R_ z%E->Pb|#`i-%23R%jE7E7$nNc$=!aoYxjoo);&0ZAQ=Um{pq~;ryc&MGXHT&=wzOg zAaRK3kt+}l6)Rj;Y@DC%ERO(JFm!2@Q3`lOCi;acz64rslOg;;}g~0+sg(iavmO@>dRcfwn4I{ zXBJE?frdfU3+Z@7p9cF9x=++!dz0Cr%Q#EAmhd_%%$#^F;kA>--C9EWlZI3+A;n1p z?jc1R+w}T)xG)~FPnwGjq#eW?YNSQb^Of*8W7EBj|?$o#^oueF0!2Al{3! zpk-VA*EDm6TO(hRCC)JnbjxixtU`Eyu|T$JWq0j20Z98vDxO3g=#f4)r4y${9J>@y zlBFV$T+p)!An|Sf|5D**Q@2tDxS%X5rd`%Q#hfy|15XmNQF<|YEDWRUn>TOfhe~qL z9M0h+c@6*c!T&RnMi@M~i16^Mfv85(V(4oDnhc!r1GSn%)H9AaVdyzNC<6d8(xJ3X zKYzAERa+5oW-cWZI4^0Az@BUgLB)n6O>T^(0=F0ROh*H3f-qqC?OT2iA_Ky!DsXEE z6L8_125Dav9!?0q*mf$5yXHU%%H}|QsTKULa^LDaP4}#Q(g9UvcWS@`o!*C6Iv1&B zBQU)S=OchlZD-UZLBv*{L2kX{+$VbQtMi*c)5L7KL%Db+9MXbT$A0p9#JHh%1yJc8 z*u6MCE$nLpe;1!^(-W*eiOM=Y@H3c&jIpY?_zS%34HA$8G?p%;c)Lyt*~b1;$o5Rp z%gak*MqUX@@c_{c6^IAN_GgW27}PelJUL4*B9tI(_VQqW$x`%ryC5Uu*&K#NC`3jT z1gJCt_pH3UM=-&BsBhDHrf6VbP_V&dKGhg;qwO?;$e=W7#yP*sHtpbEqB(L4fSpl9 z7v_-)mAy(~kCl`@Ur^*12U2rbGGt;c0C|POjVjPeZ%*Axb+jfDjwcZ1|9b;Gw>CIR z13i62@7bEKP377>P*>(?AtRv0Nf!o6tcSk5etk905k0L1W{c4~T94XmJ3e?22M2ll zr(TU}$HUarbpHS9Q$zQQnGHO?#&naZ?EGUCMHkgEtx5HJI)%n6eSDwhFPt_p|> zIJuO;M4bgh5*Q%-738KChJdJCic>%lR_ZOdQtAy#Em~?@%camghmg4}W?z=`wo-&FGr~i5p3+X>$ZPL}c z8%B}|fB`noLP&UyD!Ofb99U?15=s-9AJ{^cV5rttmP)eji2dtAvw%;k_3`q`N$1qJ zBhX&_c<~n%=gw_B|6RqS<}X)%pwxO7Teh{BVxc_gNRW}AnU?pFsQ*EkThgdK)fJ+? zCyH|=uJD*Y!pb+z4_oq=FEwejzx1|KBh?buxbW9}JPaeU2|k2}aDQASjUkRcR7h~n zyPpzsr^coEj)^ydyYoxY%dddpw5_d;sJS8{uUjvg)STHZi6gE+0S0Tt{u*ntHsJ^) zKAezh&?zAbDLYhWq;4T{vf2ZzGa)-kVj{Il8aunAaT} zI;us98}J;&B6V8YM`Q-Y#Kc%OY*R?ppYcL+HDk?!ACpy_nV7^k9$AQp^z-_L3kXE# z6+)9dp3{u`0IjofWiKPXh%GKpMo{D^XhKmIb? zohTYAnwt7<=B$dEksqqmT&+-2)@#iG7jsXIZ=eDkM&x~fy z`FTL16g{z>$a@LqC%6M0K#oSESwdw~6xA~pnbRe9^8OoyND^AS@Ai0qZEfwN8s_HX z-UF90^nS28>kAAI%x>kXSC^_Ux>JsvB565S;jxFB4ELD4Kh<`pvvV!XEyE8t zZ|OwZ838`oO@QfASKPgZEuVBmAv)MS*2q6`Du4P;-{?(B4aBk!hfsIOW#F*2Lp&0- z0o4x!?~W~|SpAimr_Z=JX&uykOgJ^@+6k_9A6)Qve}PCPD=RCo3B5hH#Gfws#=ov- zxVdH2994xgr^6cIjyQBwv&7kB!%1Tkk@P{C5(F(aA{!n27A;eQT*Cr8RC4Hem!~}w z$%Gb*w8Kf`{jV9VcAZ32qYu)875wA@?B&*-$hvKdo%F4O*_JRh1&g(>qgYlgib5G3 zY!eHjqLr(J5gHgRYW!@_53A4%Z zILAERn_R98uu{^0=fk-~j>SMMOGlixSZ<+ni;H1nIQ3*w*(@;Ki#P4hT88ykYdLTJ ze`J^*d5p*!q8j2mBZ2D9SPH2&$UFxsJZT$SXFm-D%)%2DlJS}~B^|Kglt59*AQzcx zI_HzaSdELwM4Oayr!GNQOLurj0u=av#>U16s{(1WGn41GJ|Mg&(jO*xmsKz@n0kbT zRpNc!!ZG%)xMiVJu0M-bNr%*}?Atu7H8-|ky|_j0lBN+ZFc%Q2yV*vBbYpC077KhRxiMWr z08JW6HCSzB^*~ZaqrrjFgsL&o8_EfC890wS0#x)3S6VCRQ2jP&SEH}*4!)KV^wIlz zNJ0`|ISAV^sjQ~|f$4yj+(x|Qv?VM5=Pzos1~$hvXW!b4WZ?8P*G+CNRbL0B{0T}i Beu)48 literal 0 HcmV?d00001 diff --git a/test_output/test_parity_plot n=300.png b/test_output/test_parity_plot n=300.png new file mode 100644 index 0000000000000000000000000000000000000000..fffb582d0438fd92b827a2a51ea5685325a441a3 GIT binary patch literal 22813 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%0DMT>%c){7VB9i

hmqrC44(_T-QJMtj`$xk4axB5V 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 UU!D;LhCr$B*W5?nV-fH_0N~?=yZ`_I literal 24134 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 Date: Thu, 14 Sep 2023 18:30:50 -0500 Subject: [PATCH 15/24] Much more parity improvements achieved. Many more descriptors added. --- .../MaterialDataLoader.py | 235 ++++++++++++++++-- .../PredictorModel.py | 14 +- .../gradient boosting parity - all data.png | Bin 0 -> 29379 bytes ...oosting parity - tuned hyperparameters.png | Bin 0 -> 28088 bytes .../demo output/gradient boosting parity.png | Bin 0 -> 22913 bytes .../random forest parity - all data.png | Bin 0 -> 28542 bytes ... forest parity - tuned hyperparameters.png | Bin 0 -> 25732 bytes .../demo/demo output/random forest parity.png | Bin 25099 -> 22369 bytes boxylmer/demo/demo.py | 28 ++- boxylmer/plan, notes, and progress.md | 28 ++- boxylmer/tests/__init__.py | 1 + boxylmer/tests/main_test.py | 6 +- .../random forest parity - all data.png | Bin 18430 -> 18688 bytes .../test_output/random forest parity.png | Bin 16426 -> 16555 bytes .../gradient boosting parity - all data.png | Bin 0 -> 29284 bytes ...oosting parity - tuned hyperparameters.png | Bin 0 -> 28088 bytes .../gradient boosting parity.png | Bin 0 -> 25227 bytes .../random forest parity - all data.png | Bin 0 -> 27248 bytes ... forest parity - tuned hyperparameters.png | Bin 0 -> 25732 bytes .../random forest parity.png | Bin 0 -> 22733 bytes .../gradient boosting parity - all data.png | Bin ...oosting parity - tuned hyperparameters.png | Bin .../gradient boosting parity.png | Bin .../random forest parity - all data.png | Bin ...t boosting parity - accurate distances.png | Bin 24185 -> 0 bytes ...oosting parity - ascending eigenvalues.png | Bin 23943 -> 0 bytes ...dient boosting parity - fast distances.png | Bin 23753 -> 0 bytes ...dom forest parity - accurate distances.png | Bin 22676 -> 0 bytes ... forest parity - ascending eigenvalues.png | Bin 22574 -> 0 bytes .../random forest parity - fast distances.png | Bin 23050 -> 0 bytes .../random forest parity.png | Bin 24739 -> 0 bytes .../test_parity_plot n=150.png | Bin 22816 -> 0 bytes .../test_parity_plot n=200.png | Bin 22521 -> 0 bytes .../test_parity_plot n=300.png | Bin 22813 -> 0 bytes 34 files changed, 278 insertions(+), 34 deletions(-) create mode 100644 boxylmer/demo/demo output/gradient boosting parity - all data.png create mode 100644 boxylmer/demo/demo output/gradient boosting parity - tuned hyperparameters.png create mode 100644 boxylmer/demo/demo output/gradient boosting parity.png create mode 100644 boxylmer/demo/demo output/random forest parity - all data.png create mode 100644 boxylmer/demo/demo output/random forest parity - tuned hyperparameters.png create mode 100644 previous diagnostic output/demo output - Thursday/gradient boosting parity - all data.png create mode 100644 previous diagnostic output/demo output - Thursday/gradient boosting parity - tuned hyperparameters.png create mode 100644 previous diagnostic output/demo output - Thursday/gradient boosting parity.png create mode 100644 previous diagnostic output/demo output - Thursday/random forest parity - all data.png create mode 100644 previous diagnostic output/demo output - Thursday/random forest parity - tuned hyperparameters.png create mode 100644 previous diagnostic output/demo output - Thursday/random forest parity.png rename previous diagnostic output/{ => demo output - Wednesday}/gradient boosting parity - all data.png (100%) rename previous diagnostic output/{ => demo output - Wednesday}/gradient boosting parity - tuned hyperparameters.png (100%) rename previous diagnostic output/{ => demo output - Wednesday}/gradient boosting parity.png (100%) rename previous diagnostic output/{ => demo output - Wednesday}/random forest parity - all data.png (100%) delete mode 100644 previous diagnostic output/gradient boosting parity - accurate distances.png delete mode 100644 previous diagnostic output/gradient boosting parity - ascending eigenvalues.png delete mode 100644 previous diagnostic output/gradient boosting parity - fast distances.png delete mode 100644 previous diagnostic output/random forest parity - accurate distances.png delete mode 100644 previous diagnostic output/random forest parity - ascending eigenvalues.png delete mode 100644 previous diagnostic output/random forest parity - fast distances.png delete mode 100644 previous diagnostic output/random forest parity.png delete mode 100644 previous diagnostic output/test_parity_plot n=150.png delete mode 100644 previous diagnostic output/test_parity_plot n=200.png delete mode 100644 previous diagnostic output/test_parity_plot n=300.png diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index ed71c006..971e5d37 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -2,6 +2,8 @@ from abc import ABC, abstractmethod import numpy as np from sklearn.model_selection import train_test_split +from pymatgen.core import Element + RSEED = 1996 @@ -15,6 +17,12 @@ def __init__(self, n_eigenvals=None): self.lattice_vectors = None self.lattice_angles = None self.volumes = None + self.densities = None + self.atomic_densities = None + self.is_metal = None + self.natoms = None + self.energies_per_atom = None + self.extra_data = None self.band_gaps = None @@ -39,10 +47,14 @@ def __init__(self, n_eigenvals=None): @abstractmethod def load_data(self): + """ + This method fetches materials data / parses it. Implementation arguments will change. + """ + pass @classmethod - def calculate_distances_fast(cls, structure): + def _calculate_distances_fast(cls, structure): coords = np.array([site.coords for site in structure.sites]) n = len(coords) distances = np.zeros((n, n)) @@ -56,7 +68,7 @@ def calculate_distances_fast(cls, structure): return distances @classmethod - def calculate_distances_accurate(cls, structure): + def _calculate_distances_accurate(cls, structure): n = len(structure) distances = np.zeros((n, n)) for i in range(n): @@ -70,13 +82,34 @@ def calculate_distances_accurate(cls, structure): # coulomb matrix implemented from https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html @classmethod def calculate_coulomb_matrix(cls, structure, distance_method): + """ + Calculates the Coulomb matrix for a given atomic structure using either a 'fast' + or 'accurate' distance calculation method. + + The Coulomb matrix is a representation of an atomic structure, capturing the + pairwise Coulombic interactions between atoms in a matrix form. + Implementation is based on: https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html + + Parameters: + structure: A pymatgen Structure object representing the atomic structure. + distance_method: The method for distance calculation between atoms. Supply 'fast' or 'accurate'. + - Fast will use the immediate cartesian distance of the structure, which will lose important + information about the periodic nature of the lattice. Use this for debugging. + - Accurate will use pymatgens internal distance calculation, but will take around 1000 times + longer to process when loading. Use this for final model calculations. + Returns: + np.ndarray: The Coulomb matrix of shape (n, n), where n is the number of atoms in the structure. + + Raises: + ValueError: If an invalid distance calculation method is provided. + """ # todo should I raise ValueError or some other? n = len(structure) mat = np.zeros((n, n)) z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element if distance_method == 'fast': - distances = AbstractDataLoader.calculate_distances_fast(structure) + distances = AbstractDataLoader._calculate_distances_fast(structure) elif distance_method == 'accurate': - distances = AbstractDataLoader.calculate_distances_accurate(structure) + distances = AbstractDataLoader._calculate_distances_accurate(structure) else: raise ValueError("Invalid distance calculation method. Use \'fast\' or \'accurate\'.") @@ -89,21 +122,126 @@ def calculate_coulomb_matrix(cls, structure, distance_method): @classmethod def calculate_eigenvalues(cls, coulomb_matrix): + "Calculate the eigenvalues of a coulomb matrix." eigenvalues, _ = np.linalg.eigh(coulomb_matrix) sorted_evs = np.sort(eigenvalues)[::-1] return sorted_evs - - def calculate_max_input_size(self): + + @classmethod + def calculate_coordination_stats(cls, structure, radius): + """ + Calculate the average and standard deviation of + the coordination numbers in a given radius for all + of the atoms in a pymatgen structure object. + + Parameters: + structure (pymatgen.Structure): structure to analyze. + radius (float): The radius (in angstroms) to search for coordinating atoms. + + Returns: + tuple: (average, standard deviation) of coordination numbers. + + # todo I have not been able to back this strategy from the literature yet: Search for better ways to encode constant-size structural info. + """ + total_coordination = 0 + coordination_sqr = 0 + + n = len(structure) + for site in structure: + neighbors = structure.get_neighbors(site, r=radius) + + coordination_number = len(neighbors) + total_coordination += coordination_number + coordination_sqr += coordination_number ** 2 + + avg_coordination = total_coordination / n + variance = (coordination_sqr / n) - (avg_coordination ** 2) + std_deviation = np.sqrt(variance) + + return avg_coordination, std_deviation + + @classmethod + def create_element_position_map(cls, structures): + """ + Given all structures in a dataset + + Parameters: + structures (list): A list of pymatgen Structures. + + Returns: + dict: A dictionary where (Element string -> integer position). + + Example: + >>> position_map = create_element_position_map([structure1, structure2]) + >>> print(position_map) + {'H': 0, 'O': 1, 'Fe': 2, ...} + + """ + unique_elements = set() + for structure in structures: + for site in structure: + e = site.specie.symbol + unique_elements.add(e) + + sorted_elements = sorted(list(unique_elements), key=lambda x: Element(x).Z) + element_position_map = {element: index for index, element in enumerate(sorted_elements)} + + return element_position_map + + @classmethod + def create_element_fraction_vector(cls, structure, element_position_map): + """ + Generate a vector whose indices are mapped by the element_position_map (element -> position). + + Parameters: + structure (pymatgen.Structure): The structure of the material. + position_map (dict): A dictionary mapping element strings to positions in the feature vector (see `create_element_position_map`). + + Returns: + np.array: ndarray holding the fractional occurrence of each element in the structure, reflecting the mapping. + + Example: + >>> # assume you have 20 of one atom, 80 of another, and nothing else. + >>> fractional_vector = create_fractional_occurrence_vector(structure, element_position_map) + >>> print(fractional_vector) + [0.2, 0.8, 0, ...] + """ + total_atoms = len(structure) + element_vector = np.zeros(len(element_position_map)) + + for site in structure: + e = site.specie.symbol + position = element_position_map[e] + element_vector[position] += 1 + + element_vector /= total_atoms + return element_vector + + # todo this should actually be parametrized; a loader should have options as to what information is being collected ideally. + def calculate_max_input_size(self): + "Calculate the expected total size of the input feature vector for each sample." # later we may modify these descriptors, so lets tabulate them. We also have extras! vol = 1 abc = 3 angles = 3 + density = 1 + atomic_density = 1 + is_metal = 1 + natoms = 1 + energy_per_atom = 1 + coordination_stats = 2 * 3 if self.n_eigenvals is None: eigenvals_len = max([len(s) for s in self.structures]) else: eigenvals_len = self.n_eigenvals + elemental_composition_length = len(self.elemental_composition_map) + extras_len = len(self.extra_data) - return vol + abc + angles + eigenvals_len + extras_len + + + n = vol + abc + angles + density + atomic_density + is_metal + natoms + energy_per_atom + coordination_stats + elemental_composition_length + eigenvals_len + extras_len + + return n def _validate(self): ndata = len(self.structures) @@ -112,7 +250,6 @@ def _validate(self): # given more constraints later on, this may be expanded if the types of input data structures widen def _process_parsed_data(self, distance_method): - # self.coulomb_matrices = [self.calculate_coulomb_matrix(s, distance_method='accurate') for s in self.structures] if distance_method == 'accurate': print("Distance method is accurate rather than fast, this may take some time.") self.coulomb_matrices = [] @@ -127,12 +264,19 @@ def _process_parsed_data(self, distance_method): self.coulomb_matrices.append( self.calculate_coulomb_matrix(s, distance_method) ) - + if distance_method == 'accurate': + print("Coulomb Matrix Progress: Complete") + self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] + self.elemental_composition_map = self.create_element_position_map(self.structures) + self.elemental_fraction_vectors = [self.create_element_fraction_vector(s, self.elemental_composition_map) for s in self.structures] + self.input_length = self.calculate_max_input_size() self._validate() - def resize_eigenvals(arr, new_length): + @classmethod + def resize_eigenvals(cls, arr, new_length): + "Pad the eigenvalue vector with zeros to a total length." current_length = len(arr) if current_length > new_length: return arr[:new_length] @@ -162,14 +306,22 @@ def get_model_inputs(self, padding_value=0): else: coulomb_matrix_eigenvalues = self.resize_eigenvals(self.coulomb_matrix_eigenvalues[i], self.n_eigenvals) - + feature_vector = np.hstack( ( self.volumes[i], self.lattice_vectors[i], self.lattice_angles[i], - coulomb_matrix_eigenvalues - # np.array([atom.specie.Z for atom in self.structures[i]], dtype=np.float32) # what if we use only the atoms? + self.densities[i], + self.atomic_densities[i], + self.is_metal[i], + self.natoms[i], + self.energies_per_atom[i], + self.calculate_coordination_stats(self.structures[i], 3), + self.calculate_coordination_stats(self.structures[i], 2), + self.calculate_coordination_stats(self.structures[i], 1), + self.elemental_fraction_vectors[i], + coulomb_matrix_eigenvalues, ), dtype=np.float32 ) @@ -189,11 +341,24 @@ def get_model_outputs(self): Acquire the model ouptut data as a procured single dimensional ndarray. Returns: - - outputs (np.array): Onputs of shape (Float32) + - outputs (np.array): Outputs of shape (Float32) """ return self.band_gaps def get_train_data(self, train_size=1-test_size, seed=RSEED): + """ + Get data used in training the model. + + Parameters: + train_size (float): Amount of the dataset to include in the training split. Ranges from 0 to 1. + Defaults to 1 - test_size. (defined in this class) + seed (int): Random seed used for reproducibility. Defaults to RSEED, a constant defined in this module. + + + Returns: + tuple: (train_x, train_y) where train_x is the feature matrix (samples, features) for training and + train_y is the target band gaps for training. + """ # these data sets are typically small, calling the function like this is not likely to bottleneck inputs = self.get_model_inputs() outputs = self.get_model_outputs() @@ -201,6 +366,18 @@ def get_train_data(self, train_size=1-test_size, seed=RSEED): return train_x, train_y def get_test_data(self, test_size=test_size, seed=RSEED): + """ + Get data used in testing the model. + + Parameters: + test_size (float): Amount of the dataset to include in the testing split. Ranges from 0 to 1. + Defaults to test_size. (defined in this class) + seed (int): Random seed used for reproducibility. Defaults to RSEED, a constant defined in this module. + + Returns: + tuple: (train_x, train_y) where train_x is the feature matrix (samples, features) for training and + train_y is the target band gaps for training. + """ inputs = self.get_model_inputs() outputs = self.get_model_outputs() _, test_x, _, test_y = train_test_split(inputs, outputs, test_size=test_size, random_state=seed) @@ -217,14 +394,29 @@ def __init__(self, **kwargs): super().__init__(**kwargs) def load_data(self, api_key, distance_method='fast', **kwargs): + """ + Implements load_data from AbstractDataLoader. + + Parameters: + api_key (str): The API key for accessing MPR. + distance_method (str, optional): The method used for distance calculations. Defaults to 'fast'. + Using 'accurate' instead will cause a progress meter to be printed. Expect very slow parse times for datasets > 500 items in size. + **kwargs: Search criteria in MPR (Forwarded to MPRester). + + Returns: None + """ with MPRester(api_key) as mpr: data = mpr.materials.summary.search( fields=[ "material_id", "band_gap", "formula_pretty", - "volume", - "structure"], + "volume", + "density", + "density_atomic", + "structure", + "is_metal", + "energy_per_atom"], **kwargs ) @@ -232,7 +424,16 @@ def load_data(self, api_key, distance_method='fast', **kwargs): self.lattice_vectors = np.array([(s.lattice.a, s.lattice.b, s.lattice.c) for s in self.structures], dtype=np.float32) self.lattice_angles = np.array([s.lattice.angles for s in self.structures], dtype=np.float32) self.volumes = np.array([s.volume for s in self.structures], dtype=np.float32) + self.densities = np.array([d.density for d in data], dtype=np.float32) + self.atomic_densities = np.array([d.density_atomic for d in data], dtype=np.float32) + self.is_metal = np.array([d.is_metal for d in data], dtype=np.float32) # implicit bool -> float for ndarray, I think + self.natoms = np.array([len(s) for s in self.structures], dtype=np.float32) + self.energies_per_atom = np.array([d.energy_per_atom for d in data], dtype=np.float32) + + self.formulas = [d.formula_pretty for d in data] + + self.band_gaps = np.array([d.band_gap for d in data], dtype=np.float32) @@ -241,3 +442,5 @@ def load_data(self, api_key, distance_method='fast', **kwargs): self.extra_data = {} self._process_parsed_data(distance_method=distance_method) + + return None diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py index beb5787d..14ae599e 100644 --- a/boxylmer/MaterialPropertyPredictor/PredictorModel.py +++ b/boxylmer/MaterialPropertyPredictor/PredictorModel.py @@ -46,10 +46,10 @@ class RandomForestBandGapModel(AbstractBandGapModel): def __init__(self, **kwargs): super().__init__() self.model = RandomForestRegressor( - n_estimators=50, + n_estimators=160, min_samples_split=4, - min_samples_leaf=2, - max_depth=30, + min_samples_leaf=1, + max_depth=None, bootstrap=True, **kwargs ) @@ -97,10 +97,10 @@ class GradientBoostingBandGapModel(AbstractBandGapModel): def __init__(self, **kwargs): super().__init__() self.model = GradientBoostingRegressor( - n_estimators=170, - min_samples_split=4, - min_samples_leaf=6, - max_depth=4, + n_estimators=180, + min_samples_split=3, + min_samples_leaf=8, + max_depth=3, learning_rate=0.1, **kwargs, ) diff --git a/boxylmer/demo/demo output/gradient boosting parity - all data.png b/boxylmer/demo/demo output/gradient boosting parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..31e6ed53556b423957b9c255e1ad75a0e1b0d8a0 GIT binary patch literal 29379 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

Sm)4jb#A(Q6! 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 K#Nrjr1O5-beFReg literal 0 HcmV?d00001 diff --git a/boxylmer/demo/demo output/gradient boosting parity - tuned hyperparameters.png b/boxylmer/demo/demo output/gradient boosting parity - tuned hyperparameters.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d68c9d7ebd55eabb7e095ec125da761ca387cb GIT binary patch literal 28088 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 literal 0 HcmV?d00001 diff --git a/boxylmer/demo/demo output/gradient boosting parity.png b/boxylmer/demo/demo output/gradient boosting parity.png new file mode 100644 index 0000000000000000000000000000000000000000..7f7f73b3b001b5bc4721f7a8d6fdc45b35f028e6 GIT binary patch literal 22913 zcmeFZgFy8^q>*ko zW3l&n-{1MZ_d0*U;o4rz{jB-SHDkm*?lC5BA3l&F#G}MR5QI=pR!SK`FxAn2xY+PX zjbZpG{1URit8V|u%Fy0P-_`(8(6_fXx3V`kc}nkSU~6Y$Wy!-Kz`?^tZ)|UGZ70mh zY4KkjIIL`qINQY~=U|X?*0LIQ2tuTf{=-NUOEp0d^%Xg(JCB{Cm&aV3AJ2@PtaY5d ze~nFp0q+%a8U55NdX_Y)yLC_LMXqX+O7>=`T>iQ*60)BuVR2`1JxwJ|>l33NVGwcA z3S|+=qQrdS)b|8(;-P{(!8o^u8p)_HJWX0b*ar^9k_Yj$Z+NUwN|5*4bh1a z19Be*n3MXo`V|cL{gn!n6hXYc;lk1p(kpuKnfiM#ECkWx`hO4phb^IQo3S=4;_ugwuwvo}jM^1b(?(|tPk%}-;J=j1drBH;7p=H?|@`9T`DrF<4PwjwujBmox# z-!JdzV8;x;Z*xgxwk;~vDAwisioR5c!(u-=YADWDLxV)QHphgTvU1P^ku|9?mp?J< z&LSVScUE@%bq^DM9#l>T+c*;;)0?N?7#tFke4a))&1rSK;&8oXtC=-- zcYAL(%IffY&)>yZw-uAEj{UtqU(9;blooo^KXY?)+s}lknKlK`+!=HH{+>d3qm?J* z)2DbCWbXH8MVLupk<;pv+M_Bu%*cJ$lcOCiQAhEh;So`UK2qCdCS-rF!!su-DJf6% z`|;5MpWC*%oU)^%;~?#IWpr5_Iu*Q;_2s`_;crd{im`BUb;Z8C+Zm?ok?!qX(UG~> zpWU-GR2UKyll?4Ew7yT z4Bba`9=q}FVka+j9QssjE64VCYEQD=R?20ps@8nQUH;J2PJ~=lh~if;ig5^?D1r6W zs64}|!d3SZDlRS-w*KWcYFRq7GnS)stJrLyef_{8!Q0zA?=T?YjXpUXrTl{j=gsJ? z(%cWWBSl;aR`)*$jHfY3`pm(?dR`OVPP-B)(rtC3lqj8ERP>m$_ORf40L|ja@wnTn zNl%IbrI<$*x*HSQuW^VLRw`HfnZmRa2A;TOcTHPO)Kqts@N|guSlzccUEN5jBAw@9 zet^&{xm@?J`qvIWnZo8GjAFYS26P6dmQU6KJ$Z-wQx)mP97innf4wHMZx{Nr>%Mxp z(V_O_Nvy#%&eii58l(*j3@CYxKf=QHH|GcB?^$>4~H^xwaq6H*I4YzbvI+f?V{Cociaw61RqozU(bOQdduV5F=~?BQ&?QsiZ!L=`A)> zL+2}OKlkzK#z*;q933XPLZgmtnt(K2oc?G~vBmwxTs1?(6lG=Q#}6OIy?ggg`T*po zV@JecbzJ9B>H`&6QsNPO&TIWkoay@Y%zI%R=y8;o4^5SJlvs?|_o=9*%LLMbXeyUl zj`2D!sZVU!E#)^Y6n5P1$xz9BA?EL-nv+hMwX|fuwK}1T3iTVZCuyh-%_Ro*)1B-# zNlzbak67^;wvwaE($LUASO3I)t1oV$qAE9$vu0NUl%gDFiEh<=PpUv; zMwsA@8#m;R_P2Tt_co};{^U2&X0~ut-p{Ss&%h?6OoE*iJ>H$JS#>e`8|yMlG4too zy&#UNzY-H0%BrdD-o%mh2V&5%yy?ED-?;9Lh)kgbgee&Tln`eou zV7Iy|Kvj#L|GZec>`%topPm|<0cw3$BG6{p%qa&mH?4{Epiwa_ifDVxF*J^b5PbHWDNs82|K zQ@r+IY?T)jw%BUo$==?c>wI$9q2&pfLUKSm7%urmJXz)=~X9V*G%e4 zl*xp%uGkrO+ZvfTRz;5p?CAirAC0iR>=l`S#~>o886l+NzfUCc*DKa}>YSW1OwHYD zeER!`o`k#pMaEr>M+2TmYIQcF_B{&wpc#B-{cI$cFB`8-eFKRM(I>BQH*AYcPJfh| z;kL8l`s*bQug9S?dN!0?PrWCi_CX^PTR3aAmxqgcM$7FSmWu~W_ts~GSF1J-$GyG> z(&bJ~Jw?q;q<~dyib7P1sN1&j#%xkk|FV=rntT(fQ+2g3*U&!<* z9V)Si8h2gHR_(xa(e<65pI7kkocj7!v)nd07keJ;5eo}T_t&?VsFtI^g@Hh4YnLlm zI<1~xSld~h$OSvVzn?*;{?6auVg2Xz%(AkwZwJE#2L2^h6FGNYWAp8g!x&quo+r1` zxM)P2AKr3W>Fv+f+8Q>?oj*CMJxN8a%->)2AGWI(GBSgMf*4Cjvhg{qZq7bnz7x!i zQ2qY>n;c}}CaU%$+gk&=RLdi!0+cmuOcdwNo%?R|#l3&dV|#UC)#<425(YkLcNd~Qj)gFG^p$2n70ftY&<8V!8!UHTz z0>jU;jrLoFjW^%Fdxs|(WHaHuQ!H5X=z-8Ta(;95#AU16qY{Rn&Iik-?jztr4Q08H z_XleCOZs|y$z^C9g1JD5CrWT=o$Ee64-O9AEjikq4wME-q#84Nv{JFiAsNI4maTRf zL@klw=Wd7R@$^XlU%uz$K3ulHWfK97c#ODiEf~mhKLN-feXz68*AmWc@NU%=MELWx z2$*lsP@?H~tT}&2j=}j*a)h-Ef=%)l8-P7}A3$@9@|NS$O~<7{{Vd(u@v@WS1H!Nt zgU!{6iL~tOtr6WIE{BE3&vsVE(2dClO@)1$P7Zs*4FGJdO<-a-Hk0O-a@ zYUA`;ku#l-K6$2E?lx76-1V5=xt%pwZx1Y5PE1_DyX6*w%{=??&?}zl^*&0`Lp{;PFmVS z6_pUw4Q6W;elI-&$*#P*XGl_ISw0i$_00WfYd}RqBmLZ^YrF2;Rs%UP?Y9ritBF9xj2Cb7Y2j_+(#gF>VD1O_9mWgIultyTpO zQ=?HGcza)Vq||BvkjR|c6+YKZ<1N^XQe9iyf{T|fsi>;<|BnCBk0Qs3`wFnr*hI8T zJJi*n>cabTiKu&<;0MKm0r``fB843?CbpuiYBZF`%p}%52~|{7O#ZaTQ1Y9H^IMJ% z&RO@{G|{Afx+3Gl>$89H;zeGQ?yDi8p{C#|YEIn`AP4(VnTYz|4ATpS3 zjliHgV|?!JieDL6l0|?@=Id-Rv+biMDxt;KZp zYMSDg+a9HaDdRJXxwWBJb?m$DDtL%7F@0OD7+K!#Q+G*DP1U;i@PXju+1kYzVFwhG zyzuo!zb*H{Gw179sjZc$o#E zzU*i=(;O1iTDW|?+azWRX3XPG{*6o5AM}Q(JxK>tmI;Bx&x+FhYxl$BK(x~;Dl|{P z5^c8fbQr@SHvjzDmHNeFfvjB-R!>NGTO@4_XX;33;Y8HUW$_Q@QC84i={!x(VE(gW z5P}ahw^Sj*>H^#|zO;;r4f;t-80SE|q_5ySR`z!S(x(!SPU340Rw^lZ4BrE)MPruQ zlcQBvP%u85DXH3uq!O?&AmYQX$R_)QU z73!F9bZ~ltXJfBqdKj^rkPq^k561a()~KW22nF?YpJk9J}B0GTZ8G^wT1N-PNIcv6ej$gY~*{fYfVB*x&U^p7X_p+w^HXyu4mr? zWXnBDxv!+4pwJl@78I0lkE2`)#cg0Ti}V|@j}~=L@D@t4yRx+eqpfn?pe_G7S6+VId(*pvYT`0|NU`9*sn9G~jdo zSaw|OQ`7B(f7$mqtBZarc7cv5TUcbnI)9ZO!D$ohl89aIjjtLvrXww8MK?j=m2d!(PqAsK>YkAraNqe2+}+eqZh;>au$j#rj^J z!9f8?(cT{ux!fn!upS@jc-G(n-`-szEr{++&CJ|8hMGfIRUSP`?Cw_9@jTi>1H6>U zM&D8)SuEEFczAf5{aRM@@ZNzSrhB}un{$Tvy=Uh8v!mby;zL-~N(QNUgoHH8%gb3< zS$j}W0|Be|q562kMoL4VO2F-XV+S~dpAs8Hw|C=yUc!H+1TPyN9*%2&I$CCv2ofXg zu+W>)gn1Q{)cn`c*(b`%3E5hu`z2t@$5-zc=&dx(*zRf4%gzoxChU;f>~|1d|8d1* zgwAy?-YXFGj>$<$#_iEU3bC4W=0@}T5X#V}@AZ6(+W2}&arcA%@!=kz=D5{ARJUK0 zfeqgJaV2mU>ocf$Bo*itZy`kxPFSJ@-E+RSbAL@n;`zz~ISP z_@qUqqffwb2KOGWIzs?$Tdo~>+r0v{-m|pI0uwI^VZOw9cKa5kV=0v@757j@h#E5j zc%)hF>hO7D$~$a@l4jRklS;k=RJg9oa$9!HxH z0xZHYJ(iaC*$0@KMyDi+bDp{rta}!U@^wA-l2L;K;HyIocN~J%wrHV85TEv^DJAlv z&e8*=4ptQo{jLO@+Re*LP8bC`-{au{D|)T{tN_`X%AZ)g;8`o z?C(6#53p|`K|w(;s!OhJIHB82LPBzbot=Fyl%efsYwKol_bzM=Y7hm=Cs6bI^yt%b z>@1Yqh_-9*g4OpH8Yu#t$Vf_(TCF+Av9+_Kaxm5{H2kpo(a0UVO&4$=ta3Guboiuf zxaxDq5LZawy?eI;!c0C`&na0m=Je%(=+ec63*D|Z!K z9xnuMhA0FC<>9rpwS5n(Ox1#Hy;%og)aRC?Oo?+uvR`vtJtQ zl2uUPLjmNpmFGd!#F6<(NgKJSYf)FZosncvu7RYT1?2;wnPBN>5dhk|GSxV1EvN)6 zc_F^GxO)9Ml}@E2-|60PR{ebifdsIGQSLPai7P_7u(6-Q!i?-!Mu%h-6$LCS=C9TE zUj_gTTK(N5HO3J3U>XfASE_fOOmlkf-Af#}1J?dM!~+6*&V(bpK2D&livVpUxnHA4W&D6V-B` zNCT1D6)%Z{9_x4aoiU@{-rikHsx$@3qx`cYDfNrsbohWi&0 zqFbFF@QemuNQH%kbvh9coyKKHs?=!PcQyk$P81OBZ&e ze_J?ENox>J;_ykwF>y5di5uJ?PJ$V^Zx0!LFf~Gcie%k-_MIRkENl_DB1^|wjY30{ z?WLjN{AV(mrXLvf0dfGh(06OKDiQ4Z#L6U+M~)K?>#H`eIo>xrg3ut)AM0b6BcU!G zZJ71sGE-nVO5BVs3hd{VPx0Xs*LfzCl+hQ$zvOj< ztDg6vv~UxE3B-m;b{(Q>cC)P}z0?=mdBMGjZuLF_@-`pHuq2P8eG>p26;tn6muNMk z?uXyJ0|2(0Z$LYd%BrdhmWF%DG!M9THfh5D$VDV#vq}M>I$Yt9DeSaz--ZQ2Fvxx4 zff`AJeGga&P^`o2f?&T7Y)Yjs1|oic57^LN2q-IkFL0gBB6e6A)d<>?05#2b;YEHMWMJjsCA23 zEk`>Y7A=&M^<4-@5(BX=IDBzKbc{fb-KMtaEfCGfB!cUVMx!=e+J}PkthpWoi|>K4J`f1WEnz zldDl#Gty;@DzYlf#004GS&yydVJ4c`2-7sBvY^L~3+Vyp)h_Zuc1N%!oU6M(ySuv-$lA$ zl@EJ{*~j+YWB}?m5zOVnpmuUk!%eiTWGTF z>$}$0PQ$z;FFp^mVfSXz)0=^*ZBX$RG|m6x zwpy(QirV`M3;)GPz^xTQDw(s0IF+**u`in`4oKqT&zDWE$5vnYu!tr z3fL6owGR(p0GVY1_SzLJ*)lEcLH0o2wU&|Vi+>GVWKSbUZ$dv`fZ|Ey*w zvj?~nx$f-J@eKH``|hMKidK&g|A?722j5T_Pf1CUM#JsJzP`Q%2ztQC0Tp=hlg$}~ z_+!(v?Q#|l{tnXCA2-c%Xgvn|BQh5jOd+-vUUBbH!e9kt^ctJ68%myl$>Lx4wzKC*L|_&CS!6lCZZot6!(;7g~rFLzzeI;FqUW zYPkS#ZlVN5EC4SpxA}RD+8+a|T3xJMt-;^9iGe&&)->h#q5V(~J4+?AwdK{TI5Ja9 zX3d6>&q5hL+~+#u_W|l3m7w4dK%81(sT|}d;HS(N8?jD6WxBbgk|1EGyYitO=td+1 zu6O3#uQZA*3Le9`qn(L?Xd$~Ik0V!hjRGk}ku~p>2Qj8Qoe1(^dMzCP<~@ZkM{1sK zJotP9u)DMYcHBnYTJ6iA=haWL>B;ndt*L zE~7#gmIceGk8$fWEg>-<;|P6M{jCkeny|ngCN$*e)W2cCO5xnq;JUByugGFT5UfDZ0vnq+N8t zoRac>**bP+5wFQNy!o$}+6u8q=(Xi$2~?$hR1#%axzHiYfT{7UWVgxtLqJ!lh4v8WUA~M~djstS8y)KpK1Q zMI{C(YuMUuK>B8TRluxT{+`y!pfS&B&kc^(J=ilr1-aGzo)+~^6Dom8NugHcQ&D_5eTmPII2RiO|)MH6FG|_-!8WXAo6IXRn2j-Y+MFsQ zc2_dL_Mav#e>a>9_0C?Dl)O0Fj$+Y$QwP$9y>`1Usu{xWX#w<*Pf4q7k z|M_~UiFO_-`g*;P;G+52P+!(t?}n&ig(4zMwvU=SjApZF(aoy|Mzc?Vu%$KR^3c<5 zP}>iU@9+v|GfVobv}+*P9;3!D)(v8|#R20S5y8Mmw1s!C?43QAn@PIRqZu9iuFC#| zoq_^o%3J-TL?~{+%*YD%*t<8MT`IAXMjL9)_snPWXy+5Y+NmGoJK1n6B_oYIxJ8Z5 zEp*hzxBPeObl^bS_}Lq5lMB1k$vAZH&8r_NeR5I1`LK+az^>Myg^?$RS-K83T*zru zf4d6LfkymI{w(CUO2#GUc5lbSgK1tSWLFYz%omf!V&dXIO^co6yisOm2Xl1aI=QrZ^`; zv$CKi-MXP={>GTz7e5Maos~Y7eT8$}t=^*A4s-MtqsE@ToBw!8-i?aVYb|ajPPp&6 zIU0@cVtsk7qNc{m#|P1_iacOPH$lY9Iz5ZmzgWvT%G{xBVOV82|H^JYo91Ove<3#! z!!MarPdCi#-xCzhvT)}9j9^WzvAUQi@w=A{4-xFP@??cDUBM$$fd^zKeDZ2|!~`YvA|Osmo(iBd1r+@DD+y}m)v#FqkBU#bUI`?!j6xJg#M&84dxqixzdmG zV+)Lm>!u6J!0yrG&dkg-x3~BE5E@o3^rQwh1I!my&E@aN(W>YrcvxS=6)yOxM%m`n z<{%0_nFZWib4sgqddwCCbF3sgXaNY=WQ~WD&1S9SCX4;QhRL1JXz0g3R?^4LA0Dn~ zDdOeP?owm9)|J8_^+0s&G7`<4WZkF9upRP_?}7WoRRGlKoR<;nNI!2@9P5RHYbZ43 z6)%&}LUB@>uQe7c3Z(?!TVrLS4dO|>enyZB>OlAa?GhkeCLxGE3AkG(QFhvpf=^B# zNx~;J`d|fhsL_g9-Z+=Mb~QW_ZconhAci32DIHoKmaRvQ*@Bl&-Hf z^9j&bcp)uui545FlkjGhqLQIu3{CNe$v!J_yV$#;eM|9hsS$KGxA$-hmi{ z7J6Qh!ODUlObe|rg3K97+ZQq2D1M7>$nE3;s^WEvD!2Q?0;$9uh1*9*FNQ*DGNlm<-ws!$J$h`jQZT^+Cq4 z7x?8$UrYoSHZC8wX|ZI)60MBb1jc#}@&P?%Hq*UO2BQ#uvwkHW19=69kY(M=(6GL4 z3!mMobX-Pr?G8{>GY`;24cg1Jln6c2K=Sl$B4&Sg^1WqR(0LMEH9tPUB8V6B%$n@o zyUKEJi_F4;BW}#h%J1#5Oq74NeiM#bhr!IE$1H5YEG$XhXVd>Nr85E(Sxdj4TMU*c zptD2~e4gT|5mnJztYixd)=^1@3{?=kf;~XkpBN#&D?)2GD<4F;S;Y|+%x=;+x#)iJ z;^XaRR&Um?1Yp1FXaVx**NaceD{EL}yH=feJa57&!T`If7YIJ7KO^>9V@MM1xpT@k zHfM2giU?1i=u|G4=JZOG1+^YIt_Cdadhw&OxAZAuKC0f73;ehT1;r;Cx=w7+c`s30 zyTx|W$M}=-+(vodKluNi^WsM(bm00q?%XK%r2^yjKIf-E*0h=NfZDn!C%6A(ouL`k}D+=*@x|2v)lcK3_`J5}Fj2Xp1 zF7*9wXv?j7`kz2}eLcKf;y$Vkj42Qm>KxC4kNEl7f|fy#5Vco~3E!--zM^)OehF92 zni6efL4y%(m_vgFZLmRu8ya=C-mHQ&=tkUVAQ6X2sry-Dg`?){9&wJBFsxZT>Ov0U zdD?(azQZFg)hpT<3aA=tzOlyQMV&M*#U!3F1q?$B@=i>SHh7^yjlPQ6o0Z-f{k}Lf zc+rMGuA2B9I*{Ro9It+K|01QzFg0_l$Ibv2tegJy?p;#QMUw%J8$6Gi+d|eim`bCp zv5GFhu+b_1KS7GTtuq6~7E5A>FQF59+|fxzz0v9G8QEKvY`JLzYIB9hW-W87x zPaCGWjB>92yh-U^sjZA+R@a?t+8Ehi0ow@PMg45vxepB?Nd@yg=hVbc@!$g`<){6c ze4WqBY|DF}^=0@G68Z_iO03_VO3!&SZf&^*ee&*=u}{=A#A>j#UzZ~yJb2XGd;lPG zUb#{*eP#-Z43TI?fzlQ8JH^B~SM6$TrWu7r=wrbO*4C)K9 zl3lTBh)ao{w2y{eNLW)Vi5>==$=7mHGRs*0w%IO>wYLy-6E|rRs38qLaFRCftg!}t z(FO>@AR5iu_&@_aWE*d5EGZoH>*wHXMPZf1IB=5oaDd|PK_t4+uW^BYkh+d`VunuD zXs6d`ClD9$_YBafqYDEqeEifh)6HHw`gG^vKN7+($ghV6aIS}IO%B5*sY9Zd5nQnH zel!6D>Zn;ulKZ>~6_6~VqGLczoeEQlAh(`Ej4+_~zWDtaiwVa6GRd~DG zsUy&;uulg!kw_$Vcr)z?^4*z`gZ6cKjC7(R8b!_bdTY#S!UPgCC@(f@>GZHPLI@a$ zjEon$kQ~tompO-AgPxVzK$AKWF)Bmh8L#E2AX-CMx(p=*;DF?1WgjXie3;mYR0d1l z+Y6zi$_+?Pk4j?ydI;tTACQOe0`Vl8iBP<~_tk1dMNKF9-})ejI%_QClXw~C(=Umb zsxZO6T2Ief3t+0D3d%5X8PUUm*V9p}KxEPd+xwMBrcIA8IV-Dm1tJUBBA!+~46ioW z;4yV zp30&|UPZ&?NpAL5?Z5QS841+(;KNhDrf2QiazXmM)qzfKKop4)LnaSVzdAM9JpGB3 zJ?ML2SV3W1%Uyq5%zBpp;Crlw3VyuDw|VJ>g^>C=m$9&iR5*p<;k7m_okr`Jb_dNN zlP;sq%BUt|U17Mx!f}4lnphVEv{Smon{~lw*m5AJ;t$)$VNH{rmA?TvHYl}dq1U2+ zXTc}yQv}5@M2OPPO|Q$)T~aMbj*F>aSo}Tf!~dGkQd`~k_3r8CdCTT#|Ic4IlT+_; zsI?rFYtMSPxO}1@o5BPGAo1Lc6&s#UJ4Pu;CC^HRIvq5;vA36zMHK~em6hk#F$YL@eg-YKu^b!e-;L$W*j#WlwlWXp;j?8cy>6TbB z(buU02K)_?>e){7vW0G@^_bptD$J*tJn9U#rWbLdGlr~-4L=MSWh69Y4WwshSKe0? zXjBkfbdj*v6pqLiV(zfq;97KR_%FV3O>Q> zS+VIJ)&KtLm0}Z%`u`)!hzPxwt$ydaLtXtTlJ?`hM`}sS^WB_L{<;IA5ck>5FM9YB zsUKOWH!E_-ZsEZ2afcq7Ili-c%VN0bX24l-5l|q%;I!C!;gz!K!<^N@e942IRkh*C z3g6~td55{qJHRHRb)8b*fA?NJ|5dnwM2`r}g0#b@10c6w=z8up(%FBfFq(t3!T^*b z6}#AMqLu`_F+9K?92zyK|znb?LbgSv~0%W#p&BdPC` z=EJB_|Xr8duzgbR~+UNKLv=^f2*dUh$v&?G~7A6otjKa?WQd1wI(np1EjA`-t0 z#w1Vcaj8jKF4P9?A55I&Ku%d+_r=4FyFa}!9S z`!NjC!x&Mp^a}K4bsWN0OgBZHVoyu0l#KJHE9z#t~{zqJaOK) z5ngn!28x~>@pcK#w#5G{!p`A1M> zLGD=*s&72)|NgoYGc%}1Wf-9O7FhgM?C$-NzGMD)%yka($Iy5x(? zH1B=sK_^<)c(n25q!)73eUQznT~&i@k!;u51*3XThy{M(@{9@bIaN9c_LFj=R_R0Jg^g zDpTWDu3W#~w7O4s{1*p}^H!l6xf26l+!;Nc&*4H+&gexAnCFKQF_7y>UK8aXJ5F<* z4CoC9D5Wy9$)Agiqy)<1z#StGLRs;uw-FRq{h0+ zXR2nK@;`^N(zKM6?@rZF-UU&t{b>GkdTLxXePvA+5>j~*5@m^3kF~U%B4Rn%wVC;t zBant~>3r&7I2sIg|4yQ81ufJ~#%((-;A7=c!nEY?wMDSVnJ&~iS)J4YkZ%o_{eX8K zEPY#edOcp)@UUhr1q(7MQ-*gbuqnDcDDu48)+q^g2G>74quw+V?u;yS-{b7#YNAer z8KJdiXgyG7ZVgI_H_>aqQ99+rh#PP2XaSihB6K*7N&N%(0N8kRGoiF97f@J?Rb^#0GZI-?llJ{O%!aQJ9fO*cxZ!#|yO6`EH<0tIA>{c=shg8? z(;30=X|p`Un+}pLkT{4)*SmUE7G=bUe(8am(!X2wE^c%baz)=i;4fMu*8yVTQbD3+ z=1-J+PE|H}ONXQ$o8ErzQp%|`@C}JO5AuqJZ*_EN1N{WTc)?7&0PB4fL`Ouw)`)hBfllvX&f=Q@p}8O!Lb^UcCv-+qwcCzF zi1=SHgqJs*lM)!ylca`=?=`mu+u9``zWBLZ;%4u669&41_F!cX!NX5}hj)YFPDVB# zXBcN#ieeZ{iC-`7=Dm4DV0c~H*1$Roo;0cz)cuq6uEcp>%$JqR61LCebpR3M zY4x(VU%t}G*Ga?=vf=d2-uCJrhl%Q*L`1~5=@~rt{`d2D-j6#UEaT|a{J=QdFeh>}+I<_1V|MMD$hP z-+wBxLwnk04JrJx7@Z z;T|(9>pd{Z-B@JW#Jv`%i?SdK1;JB7rx6fYZ<+@DU{G*Z!~7y-O*7Kd*K~4oa?T%= z5qpBf{$dNrsL#kPDN#j>VSUcipf`mCDktDxOGsqo!T}^$jn2xvb%sC_`D3%h(14;m z^m5lR+%+rOl^%dZFI0Nd2=u+}2OwuHeEx#)4+Vj-B(zEpF2p>j6R1c^x(ZS4UE}9| z*Fo#7Ib^Wd8gJS|xgOjAQHR_xihY-8FHT(sdlKCS_88okX2J8fP!}GL-uM_Pu?R{6 z!wmPjMnr_a;)62PDe0Uf#Y!?o&QdU|``P+Yo|fzFUnUo^%18%FDM##-P6C+cyhW z!G@5#jE8P#kXyv?2=3!$4xLLv%Lpp_i0+mZJUr`Zh3JtD^Ge}AP$SYYG#t|~dU@)W zvR%m=LcTF>qF?2DO+pA>IAP)yCJ#uW!4uNU;Uj7}MQ+|*Hy~t+_-HdN;ep$rLN4`d z2ODvmW@{kU@Zk5}v3E$HPtaY(>|Y(~Kr9qr^Tp{}UL3Ris9p6)p~DXpErFm@4!WhpffY_xXhqu*XQl+d|w# zjMPjSRF;V?*+MQcrj{HAl0iQ|HVCY2{fGnZz>B2d@>~F_Q&JZ(@F9r-sRCY1QZ$JH zybUw}`N4TX16XcE5127DiGk<|Km+J4gqRTSr&6IWFQV6D-~b7zd-p6Tt|5bMa0y+1hyLkXD-~!lUHqR% z@2m|9fsS1ukW|rPg#xN&XM`TR6Ni<0x7SkRjC_O2zR@;NB*2SxgWOTP8S`7(TolB<;vDM{xm2{_y7FKMYNHU z95Fyuv)$9vrtx!U{PQ(M$5|W#NW~@FO8hq4JNbG^9&%9smEi0cvSOQVin3~`?_Iol zHQe{2u5*3q&mil*QOvJw2G0otn+U#t`&PA$arRsKy&2-uJgEFbAk$uLKiu{_u#hA5 z$sE<*m{6$Bs`f3Fmrvq)_NrDF5ziFba{nypofoiUf2`MQW}rW$e+Pe|7D4iWk?B7- zV}IP3&Bn%RTpD+beDx1^Mgt=W&@lG&_A5Ojw69EOzygqdXt;*$zVQ)6Z=G|;t*uj2uDifOrf%Dq3yOh zo5AIZ{VfaSjia`w#WigSAvj2#KLzkfd~b2urax8Ke}bsXG0awOD2SiBW<1r&DkNKz zM6=8^JzSL7Fi+yrQfrcvNp!Z>GuGgnJUHGVk0u1t>kIITZ=@t7bfS#EPG#@(#L4-U z7Ojr7STu_$EA|2u5*%(F0!WR=HGJXjAKKfCd|o@b@w8z^AFELQyMoCH@pj|LMg zZX~L^EH4d{3=hTUD^HMi@Yo^dGIgf-uAF?K5ktn09!|1!MyUf|I`X$mCO+^6Wf=Fn z6sGoia_m2TlHJM==pPZ!#HLw5-l*M z)Loa05^6Q>`wc`0Axba3`bb}3TC$1h3Qyt6G5D~i&kN+2kQSe;oniBcK?%GLPE2vj3~~dapUbT#bSM8G>b@KLGBeYx2KnD;r4)G8_oK;vQLl(vD=Gk zHMuB%AKtS{(=J6;vgwIchi>`nwTw%`gf;0P@nIf2lo&m ztPUB8W4=XP>p}bW?PgbcYF9%W5L^Y#@>{qw1Z8*qTU~GDK6Je)*By7KyK+_fWaBK|U@(sXRR=}^7~m1`clw_jjxn_SKT7Hi0tE~Dwkr4XV%AqfRh%ZRHO8QoPg9lwO%oCxL>y0*PIdUCe!v ze!g!kr6Y$?9+Oz}%cY4Mt&b3{H(n%ltr0xH?9LqQ1GUj=m8EUMG1Q$MwKu!csaVGj zr@H)YG`@XPwyQcvSF$x05!X(@&Mf9r4>}CEnyY@nnWkFs(oJo-_*|O7JnRm9KP$m5_mUN*?GdP^0(SB_Fdd_;OGp4rT#%4O?#PFzlG+2|b3 z0wy#tGGfhQGSYP?sW}M1WO&00*6lV_uN8K--k+~IXnnXf-)#A5 z6-VB+spaq*4JD<#P7ru;_fZ)Z!aL7LjKqp*_OFo6*vK0O;!ecrYH2QGYSxB8U-o|_`5A_WxGPF}8U zSTC)4I6h+*)|R!m4GNH*Xu^aK8=f3&Nug)!~xS`AK)xNLK4Fix=$B-+WkH%x{_8Pk z&7gTtyK25EP3<*TrD7IsIo`FiNE|RE*)yWS192usnHodYRZloGRDHofUW-NR#RNR6 zf@3V6XbOGCLBy%)^@>9Tj7dmK*q^J9RljH@5Apo_vY@bFp+Ti7fCUK8E!lf!I+r?# z!zM5g;BD1aaUVO=68Kk!!4IojFSEs9jZXLEj1^jJWLc@Ozo@&ol3CvL@i46LoXs8$ z6urOqG6*S&wLzDF_tc{PAv`eHiz#Ub&4uKzx@!K^`&;<^Yxu5{hE|t4;1DCym&`Y8 zyBO`#ff+cFKs? zYe0y-*-?Bum(2gBU;k}Qf|sc&iy*&U8{hbp`L(|vx+!BU+Sv1TtBs!96Lc3fPY zh<3?;F*Mz!W}|OdZ&ab({4h7`@stYP^RCV(eNN)6G2T00wR|oqWwE4c`MkXRV~^R0 zHL{$fzgv9}kFEHoy#tKlOT2h$mQII0temXq8i@^H)yY(r#(M|sMc0il=UfdjFluswK#BeV9Cc9e zRfXum_1kUm46UBvG6{Nf2BhT^OiJF)sIf2Xixmf+j@5)=ql)i&LknfEYe@(~zYkkH zwI9+l{i1BW-P(odx-0yN zl;r$pZHCD(1{#Y%CDff|RoJZN_SQ`?E$gqi8+mapBzfmd%E-VAq8w&{GI8ely?)ZH z38~G++`eb)&w*8oJGlA2^R&l>yU-)`0lP=#w>MGM3bL<1ebnQheSbEvi7k&#EcTTf zg1nMS?7}sH8X}CSkNfG_e3h}jS|Ejj1qlf`XWS)T6}>3ub+6FK>rmzgo6$fJ8nV4& zVQW`s%~U+-UG&NOtesqhH48i6fuo9Q)p~5w9KBZ|fT@+)X61N3Y!aFP=r} zd?{com!#D%V9_4=PGGKWH))o2nrl*WbZJ@xzxkeCPb1w*SMClqDS`cNHiOlm97;>$ zdg{CIl8!=&z9f3WRaJFZ%k{J#8w(?93j-Zl<;^YltF0knrN3^6e7AgMYhozic+(Pf}Rh+1j#Qi^2g&R;E&Hewf%S&CplDm0pgDMC?UUlbpn z@e-Wv^_ux1=^ZG#9UdUMtzJH683Py6&_DYmQ4`o@3gtpug8Os7ESHKJt&)>xvvlsf z+_TI5PhJP=wwrA*7SS9hdffuO`}^-*`yBX#4yJB5c@($Ig;4YhnFya4SgL`f^hP z1L`X`0FXFZ1xP*-`NxQcg8Y0VJGoKO;lqaFMvvr89s!XTLRGzcaa&XF`!<(dH`Vp$ zD0fD5yvTaEx}#)BZ^xKI5R+Yq-dL7C%vB_ZK0CC!3tYc%|KgDLTlXL^n;!7VWkb#W z=@TzyU9stQ-<>^#ZJFhQcRjDa9u+(qPZIaj5%Hlr&9(t_=Si@G))-$oVV2HcC<+_| z%U3(7sVB6b-e$GJ^y!eF?rp~#JrR+bm+l~`sRTbCZ(ZC97N;__GnaaeFq1%*g64XM zFfWPQzZlOsND6T!EG9E`#gpw&DZF|hiT>x|!XvYm8ax(?HMF(0nL&?M%Hf8q4nV01 zf#&s{Yj0j^j;O68LQ1pjsEv1OZALB{@P24ef>@7}1h!cdZ%f1nVp-S56wWQKuz{N8 z4j4mGK#R1K=<2y=s_KNVYIA=-*Re0+-D%y932$0 zi7>F0BSBrTe@NzlaYXupaefQp8&>Zcw_4)wIbX&DG}(W!=uLh?Zoq)s$B`13++{dewF*Iy4iO6#fwfy7Uv4kEQ8st-gjLL;$S1UBG# zxb)qSla+^s-h~lNgq?Nx5Ks)0USvwpad5-OCc~2~PCJ!^fe5K}X6`ILEBMyQ2kB+X zi!cGxk1*&2i9=OY+vmfM1<5J`-;L+BGQ71Dr)Yo(#8D1%h_7{JSNetV7s>GeY<(yC zy43;jEK!yM0-k`UwUZMN0Wiui82ypR(UbORToBgtyqs?g1Cl@ReNgUIngWp~WLu4N(yzJGHTzcQ7>bQT^MQAh>VlB?KzG#~gXdm<%HBbECC_wrECeTDbicpiXmpxi!73XEKY}4S63JM()kqKZ%4$tpjz3SP<{D1EaLL#3!bb*S-Dy z`rM0H$fuXZ4s{irQKDc+ZJ+7s8ETGDgHYx9-Z}Oi1&#E>I}9+79bG+mshB5doifHltJ2uab z1-a)7T}9@i9ZBa{U>a_phq|>@RjcD3On?}JWk2^zT@mz#2lJC?iHjRN>BF!Bw ziHl%e(XBrX%u~mS^jr(5hDNhzPlIjM$^{&!Z7}{=sn;PTbwwafgb-B z4kkM-6!5^bNpab_QFZJJd0{1CP~Lo{0=CWj5X_Z%Ul`pch0e|8nqJ6(Qn9#qx(?$S z+I#VSq|Wpd^fCjm<|mVLNLW&`9zO;z4vh*jPlLv-HHHx_)qy>#zrWuC^0kTjR-Cqo zH;LizdeDw#EaeDf>bR93`0OGiCk13Q+Qp20`O-FL;d zt{VL)NQu*ji9{k&dcr3|egH(T7^v23AEI?F{6JqM_vnvD5PR}U{{q;-5I)1FkO0KZ z#&W^e8pi-5Ho1j%wIF$G1*D1|k5ddzi-Hrj`2X`xG8lI3b>A1; Hc<=iYyZH{a literal 0 HcmV?d00001 diff --git a/boxylmer/demo/demo output/random forest parity - all data.png b/boxylmer/demo/demo output/random forest parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..e71ffb008097e9440ae3fe50763137bf2fc0c967 GIT binary patch literal 28542 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 Ne8$wugl6Ot`5*H5UiSb1 literal 0 HcmV?d00001 diff --git a/boxylmer/demo/demo output/random forest parity.png b/boxylmer/demo/demo output/random forest parity.png index 27324fe852c8f1ba46d4e45f230968634c98f5dd..4479dcfa0c3558ca35613837852178845e7a2753 100644 GIT binary patch literal 22369 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 QhXE18wQ*RSZtWKKzx#PAcmMzZ diff --git a/boxylmer/demo/demo.py b/boxylmer/demo/demo.py index 825b4e16..39b0f236 100644 --- a/boxylmer/demo/demo.py +++ b/boxylmer/demo/demo.py @@ -1,6 +1,5 @@ import sys import os - demo_dir = os.path.dirname(os.path.abspath(__file__)) parent_dir = os.path.dirname(demo_dir) # feels very hacky just as a way to avoid pip install -e. sys.path.append(parent_dir) @@ -46,18 +45,35 @@ def generate_parity_plot(y, pred, filename): with open(api_key_file, "r") as f: api_key = f.read().strip() -loader = MPRLoader() +loader = MPRLoader( + n_eigenvals=10 +) loader.load_data( api_key, distance_method='fast', - elements=["O", "Si", "Ge"] + # elements=["Si", "Fe"], + # chemsys=["Si-Ge", "Si", "Ge"], + chemsys=["Fe", "O", "Si", "Fe-O", "Si-O", "Si-Fe", "Si-Fe-O"] ) randomforest_model = RandomForestBandGapModel() randomforest_model.fit(loader) +print(randomforest_model.model.feature_importances_) y, pred = randomforest_model.parity(loader) generate_parity_plot(y, pred, "random forest parity") +y, pred_train = randomforest_model.parity(loader, test_data_only=False) +generate_parity_plot(y, pred_train, "random forest parity - all data") + + + +gradientboosting_model = GradientBoostingBandGapModel() +gradientboosting_model.fit(loader) +y, pred = gradientboosting_model.parity(loader) +generate_parity_plot(y, pred, "gradient boosting parity") + +y, pred_train = gradientboosting_model.parity(loader, test_data_only=False) +generate_parity_plot(y, pred_train, "gradient boosting parity - all data") @@ -65,9 +81,7 @@ def generate_parity_plot(y, pred, filename): # # Run this to identify better hyperparams # randomforest_model.fit_hyperparameters(loader) # y, pred = randomforest_model.parity(loader) -# generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") - - +# generate_parity_plot(y, pred, "random forest parity - tuned hyperparameters") # gradientboosting_model.fit_hyperparameters(loader) # y, pred = gradientboosting_model.parity(loader) -# generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") \ No newline at end of file +# generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") diff --git a/boxylmer/plan, notes, and progress.md b/boxylmer/plan, notes, and progress.md index 09f9a55c..6f45ea92 100644 --- a/boxylmer/plan, notes, and progress.md +++ b/boxylmer/plan, notes, and progress.md @@ -72,12 +72,36 @@ - The scripts that provide plots need to be separated from the (rather unorganized) tests, as they're a demonstration rather than tests - A readme needs to be written to provide instructions on installing and running the PoC -### Notes and issues ## Thursday (Visualization of results + deal with possible issues or hangups that may have happened Mon-Wed) ### Day plan +- Finish up changed needed to better reduce overfitting +- Document everything in MaterialDataLoader.py +- Implement some more ideas I had + - Coordination numbers for structural proxies, at various radius + - Element vectors + - Dimensionless element vectors + + +### Notes and issues +- The coulomb matrix is proving to provide no feature importance and is acting more as a fingerprint, as suspected. +- Instead, we can feed in a list of atomic numbers and some aggregate for connectivity in lieu of a graph +- I think right now we could just get get average coordination numbers using a variety of radii, and also the stdev to tell the model how "spread out" the packing is. +- Clearly more useful descriptors are needed. The model really cares about mass (not atomic) density. I expected the latter and have not yet found literature to back this. +- Supplying composition by elemental fractional composition would fix the padding issues + - I don't think it would make sense to supply elements that the dataset hasn't previoulsy seen, so we will need to bring attention to the limitation this introduces, lets see if it's worth including. Since chemsys searches are exclusive, they should work better as they have lower atom diversity. + - This also needs to be communicated, as if true, it be very important for this models correct usage. + +### Results thus far +- Wow! RMSE 0.44 -> 0.29 with the new descriptors and ways of including structure. This works, but the parity is still indicating overfitting. +- As expected, limiting the search to a smaller number of atoms (but similarly sized datasets) greatly reduces memorization and RMSE decreases to ~0.08. +- Coulomb eigenvalues significantly harm performance for small datasets as they act like fingerprints, encouraging memorization rather than generalization. + - CMEs still provide useful information, but more work will need to be done on finding the optimal number of top N eigenvalues to include (hyperparameter tuning problem) + - I expect the bigger the dataset, the more eigenvalues can be included. ## Friday (last day: wrap up and write comments and instructions.) ### Day plan - +- Document PredictorModel.py +- Write an installation readme and point to the demo file. +- Finish up conclusions in the writeup mdfile. \ No newline at end of file diff --git a/boxylmer/tests/__init__.py b/boxylmer/tests/__init__.py index e69de29b..160f51b2 100644 --- a/boxylmer/tests/__init__.py +++ b/boxylmer/tests/__init__.py @@ -0,0 +1 @@ +# also frustrating and hacky, but the environment refuses to acknowledge this in pytest without an __init__. diff --git a/boxylmer/tests/main_test.py b/boxylmer/tests/main_test.py index 1fbf6a2d..71917c44 100644 --- a/boxylmer/tests/main_test.py +++ b/boxylmer/tests/main_test.py @@ -59,7 +59,7 @@ def test_loading(): assert len(loader) == len(loader.get_model_inputs()) assert len(loader) == len(loader.formulas) - truncated_eigenval_loader = MPRLoader() + truncated_eigenval_loader = MPRLoader(n_eigenvals=20) truncated_eigenval_loader.load_data( api_key, distance_method='fast', @@ -67,8 +67,10 @@ def test_loading(): chemsys=["Si-Ge"] ) assert len(loader) == len(truncated_eigenval_loader) - inputs = loader.get_model_inputs() + inputs = truncated_eigenval_loader.get_model_inputs() input_len = len(inputs[0]) + expected_len = truncated_eigenval_loader.calculate_max_input_size() + assert input_len == expected_len assert all(len(item) == input_len for item in inputs) def test_loading_accurate_distances(): diff --git a/boxylmer/tests/test_output/random forest parity - all data.png b/boxylmer/tests/test_output/random forest parity - all data.png index ef12ebd2de8c3e87025aaf6c8e25b69610f6b58c..9f41819e157c624b6e7a735bd76550064a484fbe 100644 GIT binary patch literal 18688 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 DvmBYQ diff --git a/boxylmer/tests/test_output/random forest parity.png b/boxylmer/tests/test_output/random forest parity.png index bd1b3dcd2330176bda7ecdccdde0abd65da9a3b9..48d1141e8609ecaf9d8a9dab5007122f2b930bcc 100644 GIT binary patch literal 16555 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%0AMl!7^e=_g#-)n5WnaKkUzJF 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 S4&WQ9xgGR4P`=;y>wf`=^6+v1 From f8803acd3be0a945d71d566640d43219ee6eb6f1 Mon Sep 17 00:00:00 2001 From: Will Date: Fri, 15 Sep 2023 17:34:48 -0500 Subject: [PATCH 16/24] Documented the two band gap model PoCs --- .../PredictorModel.py | 50 ++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py index 14ae599e..ecba193d 100644 --- a/boxylmer/MaterialPropertyPredictor/PredictorModel.py +++ b/boxylmer/MaterialPropertyPredictor/PredictorModel.py @@ -8,14 +8,39 @@ class AbstractBandGapModel(ABC): def __init__(self): + """ + Abstract band gap prediction model. + + Defines the interface and some common functionality for Band Gap prediction. + + Accepts a generic MaterialDataLoader, which will predict using however many features that data loader provides. + """ self.model = None pass @abstractmethod def fit(self, material_data_loader): + """ + Fit the model to the training data in the data loader. + Optionally, a printed progress bar may be supplied. + + Args: + material_data_loader (AbstractDataLoader): Data loader object containing training and testing data. + """ pass def predict(self, material_data_loader, test_data_only=True): + """ + Predict band gap based on existing test data within the loader. Optionally predict using ALL data if test_data_only is false. + - By default, a seed is used, so data should be the same at every call. + + Args: + material_data_loader (AbstractDataLoader): Data loader object containing material data. + test_data_only (bool): If True (default), use only test data for predictions. + + Returns: + numpy.ndarray: Predicted band gap values. + """ if test_data_only: x, _ = material_data_loader.get_test_data() else: @@ -28,6 +53,16 @@ def _predict(self, x): pass def parity(self, material_data_loader, test_data_only=True): + """ + Get predicted and actual band gap values for the data loader's test data or all data. + + Args: + material_data_loader (AbstractDataLoader): data loader object. + test_data_only (bool): If True, use only previously unseen test data. + + Returns: + tuple: (Actual band gap values, predicted band gap values) + """ if test_data_only: x, y = material_data_loader.get_test_data() else: @@ -40,9 +75,19 @@ def parity(self, material_data_loader, test_data_only=True): @abstractmethod def fit_hyperparameters(self, material_data_loader): + """ + Fit hyperparameters of the model using training data, then train the model on the optimized hyperparameters, which are also printed to console. + + Args: + material_data_loader (AbstractDataLoader): Data loader object. + + Returns: + None + """ pass class RandomForestBandGapModel(AbstractBandGapModel): + """Predict band gap using random forest regression.""" def __init__(self, **kwargs): super().__init__() self.model = RandomForestRegressor( @@ -94,6 +139,7 @@ def fit_hyperparameters(self, material_data_loader, n_iter=50): # which is fundamentally the same but can be parallelized easily and may even have better optimization methods # more info: https://stats.stackexchange.com/questions/282459/xgboost-vs-python-sklearn-gradient-boosted-trees class GradientBoostingBandGapModel(AbstractBandGapModel): + """Predict band gap using gradient boosted trees.""" def __init__(self, **kwargs): super().__init__() self.model = GradientBoostingRegressor( @@ -138,4 +184,6 @@ def fit_hyperparameters(self, material_data_loader, n_iter=50): self.model = random_search.best_estimator_ - print(f"Best hyperparameters found: {random_search.best_params_} at RMSE = {-random_search.best_score_}") \ No newline at end of file + print(f"Best hyperparameters found: {random_search.best_params_} at RMSE = {-random_search.best_score_}") + + return None \ No newline at end of file From 17b1bdf61e7d2496c6cd61c2939a8167182ff179 Mon Sep 17 00:00:00 2001 From: Will Date: Fri, 15 Sep 2023 19:06:23 -0500 Subject: [PATCH 17/24] docs written, dataloader abstraction increased (previous implementation didn't make too much sense), and README written --- .../MaterialDataLoader.py | 383 +++++++++++------- boxylmer/README.md | 31 ++ .../gradient boosting parity - all data.png | Bin 29379 -> 29763 bytes .../demo output/gradient boosting parity.png | Bin 22913 -> 23309 bytes .../random forest parity - all data.png | Bin 28542 -> 28816 bytes .../demo/demo output/random forest parity.png | Bin 22369 -> 22663 bytes .../random forest parity - all data.png | Bin 18688 -> 18601 bytes .../test_output/random forest parity.png | Bin 16555 -> 16465 bytes 8 files changed, 259 insertions(+), 155 deletions(-) create mode 100644 boxylmer/README.md diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index 971e5d37..a3cc7c71 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -9,52 +9,80 @@ class AbstractDataLoader(ABC): test_size = 0.2 - def __init__(self, n_eigenvals=None): - self.structures = None + def __init__(self): + """ + # todo + """ + self.n_features = None + self.n_samples = None + + # + # Required abstractions + # + + @abstractmethod + def load_data(self): + """ + This method fetches materials data / parses it. Implementation arguments will change. + """ + pass - # cached data in self.structures. It's possible to lump this all into a dict or just to use it on the fly, - # but for now, explicitly referencing them will assist when we're unsure what the best descriptors are for the target property. - self.lattice_vectors = None - self.lattice_angles = None - self.volumes = None - self.densities = None - self.atomic_densities = None - self.is_metal = None - self.natoms = None - self.energies_per_atom = None + @abstractmethod + def _process_parsed_data(self): + """ + This should be called at the end of load_data(). + Take the loading data and perform post-loading analysis and featurization. + Should prepare and cache data as needed. - self.extra_data = None + Returns: None + """ - self.band_gaps = None + @abstractmethod + def _validate(self): + """ + This should be called at the end of _process_parsed_data(). + Determine if the resulting loaded data is valid and will not cause errors. - self.formulas = None + Returns: None + """ + pass - # hmm... https://journals.aps.org/prb/abstract/10.1103/PhysRevB.89.205118 - # suggests there are better ways to represent a crystal lattice than coulomb matrices. - # This could be a good idea to explore in the future for more complex properties - # This paper ALSO tells me that coulomb matrices are a previous industry standard, - # So it stands to reason there should be some libraries to speed this up out there. - # For now, though, this method is slow when doing lattice-consistent distances and needs optimization. - self.coulomb_matrices = None - - # https://par.nsf.gov/servlets/purl/10187380#:~:text=Coulomb%20Matrix%20Eigenvalues%20(CME)%20are,searches%2C%20and%20interpret%20rotational%20spectra. - # Very good primer on why the sorted eigenvalues are both useful and computationally efficient. - # Still not as good as a graph representation, but this is much faster to implement given I still have papers to grade :(. - self.coulomb_matrix_eigenvalues = None - self.input_length = None - self.input_cache = None - self.n_eigenvals = n_eigenvals + @abstractmethod + def calculate_max_input_size(self): + """Calculate the expected total size of the input feature vector for each sample.""" + pass @abstractmethod - def load_data(self): + def get_model_inputs(self, padding_value=0): """ - This method fetches materials data / parses it. Implementation arguments will change. + Acquire the model input data as a procured ndarray of values in a standard (Sample, Feature) format. + Standard practice for this abstraction is to calculate the inputs and cache them in self.input_cache if the calculations are heavy. + + Parameters: + - padding_value (float, optional): Padding. Default is 0. + + Returns: + - padded_feature_vectors (np.array): Padded inputs of shape (Sample, Feature) """ + pass + @abstractmethod + def get_model_outputs(self): + """ + Acquire the model ouptut data as a procured single dimensional ndarray. + + Returns: + - outputs (np.array): Outputs of shape (Float32) + """ pass + + # + # General-ish helper functions used to featurize or make life easier for implemented dataloaders. + # + @classmethod - def _calculate_distances_fast(cls, structure): + def _calculate_structure_atom_distances_fast(cls, structure): coords = np.array([site.coords for site in structure.sites]) n = len(coords) distances = np.zeros((n, n)) @@ -68,7 +96,7 @@ def _calculate_distances_fast(cls, structure): return distances @classmethod - def _calculate_distances_accurate(cls, structure): + def _calculate_structure_atom_distances_accurate(cls, structure): n = len(structure) distances = np.zeros((n, n)) for i in range(n): @@ -81,7 +109,7 @@ def _calculate_distances_accurate(cls, structure): # coulomb matrix implemented from https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html @classmethod - def calculate_coulomb_matrix(cls, structure, distance_method): + def calculate_structure_coulomb_matrix(cls, structure, distance_method): """ Calculates the Coulomb matrix for a given atomic structure using either a 'fast' or 'accurate' distance calculation method. @@ -107,9 +135,9 @@ def calculate_coulomb_matrix(cls, structure, distance_method): mat = np.zeros((n, n)) z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element if distance_method == 'fast': - distances = AbstractDataLoader._calculate_distances_fast(structure) + distances = AbstractDataLoader._calculate_structure_atom_distances_fast(structure) elif distance_method == 'accurate': - distances = AbstractDataLoader._calculate_distances_accurate(structure) + distances = AbstractDataLoader._calculate_structure_atom_distances_accurate(structure) else: raise ValueError("Invalid distance calculation method. Use \'fast\' or \'accurate\'.") @@ -217,63 +245,6 @@ def create_element_fraction_vector(cls, structure, element_position_map): element_vector /= total_atoms return element_vector - # todo this should actually be parametrized; a loader should have options as to what information is being collected ideally. - def calculate_max_input_size(self): - "Calculate the expected total size of the input feature vector for each sample." - # later we may modify these descriptors, so lets tabulate them. We also have extras! - vol = 1 - abc = 3 - angles = 3 - density = 1 - atomic_density = 1 - is_metal = 1 - natoms = 1 - energy_per_atom = 1 - coordination_stats = 2 * 3 - if self.n_eigenvals is None: - eigenvals_len = max([len(s) for s in self.structures]) - else: - eigenvals_len = self.n_eigenvals - elemental_composition_length = len(self.elemental_composition_map) - - extras_len = len(self.extra_data) - - - n = vol + abc + angles + density + atomic_density + is_metal + natoms + energy_per_atom + coordination_stats + elemental_composition_length + eigenvals_len + extras_len - - return n - - def _validate(self): - ndata = len(self.structures) - for key in self.extra_data: - assert len(self.extra_data[key] == ndata) - # given more constraints later on, this may be expanded if the types of input data structures widen - - def _process_parsed_data(self, distance_method): - if distance_method == 'accurate': - print("Distance method is accurate rather than fast, this may take some time.") - self.coulomb_matrices = [] - total_iterations = len(self.structures) - percent_complete = 0 - for i, s in enumerate(self.structures): - if distance_method == 'accurate': - new_percent_complete = (i * 100) // total_iterations - if new_percent_complete > percent_complete: - percent_complete = new_percent_complete - print(f"Coulomb Matrix Progress: {percent_complete}%", end='\r') - self.coulomb_matrices.append( - self.calculate_coulomb_matrix(s, distance_method) - ) - if distance_method == 'accurate': - print("Coulomb Matrix Progress: Complete") - - self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] - self.elemental_composition_map = self.create_element_position_map(self.structures) - self.elemental_fraction_vectors = [self.create_element_fraction_vector(s, self.elemental_composition_map) for s in self.structures] - - self.input_length = self.calculate_max_input_size() - self._validate() - @classmethod def resize_eigenvals(cls, arr, new_length): "Pad the eigenvalue vector with zeros to a total length." @@ -285,65 +256,9 @@ def resize_eigenvals(cls, arr, new_length): else: return arr - def get_model_inputs(self, padding_value=0): - """ - Acquire the model input data as a procured ndarray of values in a standard (Sample, Feature) format. - - Parameters: - - padding_value (float, optional): Padding. Default is 0. - - Returns: - - padded_feature_vectors (np.array): Padded inputs of shape (Sample, Feature) - """ - if self.input_cache is None: - num_structures = len(self.structures) - padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) - - for i in range(num_structures): - - if self.n_eigenvals is None: - coulomb_matrix_eigenvalues = self.coulomb_matrix_eigenvalues[i] - else: - coulomb_matrix_eigenvalues = self.resize_eigenvals(self.coulomb_matrix_eigenvalues[i], self.n_eigenvals) - - - feature_vector = np.hstack( - ( - self.volumes[i], - self.lattice_vectors[i], - self.lattice_angles[i], - self.densities[i], - self.atomic_densities[i], - self.is_metal[i], - self.natoms[i], - self.energies_per_atom[i], - self.calculate_coordination_stats(self.structures[i], 3), - self.calculate_coordination_stats(self.structures[i], 2), - self.calculate_coordination_stats(self.structures[i], 1), - self.elemental_fraction_vectors[i], - coulomb_matrix_eigenvalues, - ), - dtype=np.float32 - ) - - padding_size = self.input_length - len(feature_vector) - - if padding_size >= 0: - padded_feature_vectors[i, :len(feature_vector)] = feature_vector - else: - raise ValueError("Input feature vector size exceeded the available input size.") - self.input_cache = padded_feature_vectors - - return self.input_cache - - def get_model_outputs(self): - """ - Acquire the model ouptut data as a procured single dimensional ndarray. - - Returns: - - outputs (np.array): Outputs of shape (Float32) - """ - return self.band_gaps + # + # Directly implemented functions + # def get_train_data(self, train_size=1-test_size, seed=RSEED): """ @@ -384,13 +299,65 @@ def get_test_data(self, test_size=test_size, seed=RSEED): return test_x, test_y def get_input_length(self): - return self.input_length + return self.n_features def __len__(self): return len(self.structures) class MPRLoader(AbstractDataLoader): - def __init__(self, **kwargs): + def __init__(self, n_eigenvals=None, **kwargs): + """ + Initialize the MPRLoader class for loading and pre-processing materials data. + + Parameters: + n_eigenvals (int, optional): The number of eigenvalues to consider when calculating the + Coulomb Matrix Eigenvalues. If None, all eigenvalues are used. + **kwargs: Additional keyword arguments to be passed to the superclass constructor. + Attributes contain all data, data is randomized with the same seed (by default) at every call. + Thus, accessing attributes directly for the purpose of testing or model validation is unadvised. + Attributes: + structures (list): Pymatgen Structure objects from loaded data. + lattice_vectors (ndarray): Lattice vectors of the pymatgen Structures. + lattice_angles (ndarray): Lattice angles of the pymatgen Structures. + volumes (ndarray): Lattice cell volumes. + densities (ndarray): Mass densities of the materials. + atomic_densities (ndarray): Atom densities of the materials. + is_metal (ndarray): Whether the material is metallic (1-> True, 0 -> False). + natoms (ndarray): Number of atoms in each sample. + energies_per_atom (ndarray): Energy per atom for the cell per sample. + coulomb_matrices (list): Calculated coulomb matrices for each sample. + coulomb_matrix_eigenvalues (list): Solved eigenvalues for each sample's coulomb matrix, in descending order. + n_eigenvals (int, optional): The number of eigenvalues to be considered. + None (default) -> Pad zeros up to the largest sample in the dataset and use this many values in the feature vector for eigenvalues. + input_cache (ndarray): Cached model inputs. + """ + + self.structures = None + # cached data in self.structures. It's possible to lump this all into a dict or just to use it on the fly, + # but for now, explicitly referencing them will assist when we're unsure what the best descriptors are for the target property. + self.lattice_vectors = None + self.lattice_angles = None + self.volumes = None + self.densities = None + self.atomic_densities = None + self.is_metal = None + self.natoms = None + self.energies_per_atom = None + # hmm... https://journals.aps.org/prb/abstract/10.1103/PhysRevB.89.205118 + # suggests there are better ways to represent a crystal lattice than coulomb matrices. + # This could be a good idea to explore in the future for more complex properties + # This paper ALSO tells me that coulomb matrices are a previous industry standard, + # So it stands to reason there should be some libraries to speed this up out there. + # For now, though, this method is slow when doing lattice-consistent distances and needs optimization. + self.coulomb_matrices = None + + # https://par.nsf.gov/servlets/purl/10187380#:~:text=Coulomb%20Matrix%20Eigenvalues%20(CME)%20are,searches%2C%20and%20interpret%20rotational%20spectra. + # Very good primer on why the sorted eigenvalues are both useful and computationally efficient. + # Still not as good as a graph representation, but this is much faster to implement and I still have papers to grade :(. + self.coulomb_matrix_eigenvalues = None + self.n_eigenvals = n_eigenvals + + self.input_cache = None # will be filled when get_model_inputs is called. super().__init__(**kwargs) def load_data(self, api_key, distance_method='fast', **kwargs): @@ -444,3 +411,109 @@ def load_data(self, api_key, distance_method='fast', **kwargs): self._process_parsed_data(distance_method=distance_method) return None + + def _process_parsed_data(self, distance_method): + """Implementation for AbstractDataLoader._process_parsed_data. See aforementioned function and MPRloader.load_data.""" + if distance_method == 'accurate': + print("Distance method is accurate rather than fast, this may take some time.") + self.coulomb_matrices = [] + total_iterations = len(self.structures) + percent_complete = 0 + for i, s in enumerate(self.structures): + if distance_method == 'accurate': + new_percent_complete = (i * 100) // total_iterations + if new_percent_complete > percent_complete: + percent_complete = new_percent_complete + print(f"Coulomb Matrix Progress: {percent_complete}%", end='\r') + self.coulomb_matrices.append( + self.calculate_structure_coulomb_matrix(s, distance_method) + ) + if distance_method == 'accurate': + print("Coulomb Matrix Progress: Complete") + + self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] + self.elemental_composition_map = self.create_element_position_map(self.structures) + self.elemental_fraction_vectors = [self.create_element_fraction_vector(s, self.elemental_composition_map) for s in self.structures] + + self.n_features = self.calculate_max_input_size() + self.n_samples = len(self.structures) + self._validate() + + def _validate(self): + ndata = self.n_samples + for key in self.extra_data: + assert len(self.extra_data[key] == ndata) + # given more constraints later on, this may be expanded if the types of input data structures widen + + def get_model_inputs(self, padding_value=0): + """See AbstractDataLoader.get_model_inputs""" + if self.input_cache is None: + num_structures = len(self.structures) + padded_feature_vectors = np.full((num_structures, self.n_features), padding_value, dtype=np.float32) + + for i in range(num_structures): + + if self.n_eigenvals is None: + coulomb_matrix_eigenvalues = self.coulomb_matrix_eigenvalues[i] + else: + coulomb_matrix_eigenvalues = self.resize_eigenvals(self.coulomb_matrix_eigenvalues[i], self.n_eigenvals) + + + feature_vector = np.hstack( + ( + self.volumes[i], + self.lattice_vectors[i], + self.lattice_angles[i], + self.densities[i], + self.atomic_densities[i], + self.is_metal[i], + self.natoms[i], + self.energies_per_atom[i], + self.calculate_coordination_stats(self.structures[i], 3), + self.calculate_coordination_stats(self.structures[i], 2), + self.calculate_coordination_stats(self.structures[i], 1), + self.elemental_fraction_vectors[i], + coulomb_matrix_eigenvalues, + ), + dtype=np.float32 + ) + + padding_size = self.n_features - len(feature_vector) + + if padding_size >= 0: + padded_feature_vectors[i, :len(feature_vector)] = feature_vector + else: + raise ValueError("Input feature vector size exceeded the available input size.") + self.input_cache = padded_feature_vectors + + return self.input_cache + + def get_model_outputs(self): + """See AbstractDataLoader.get_model_outputs.""" + return self.band_gaps + + def calculate_max_input_size(self): + # later we may modify these descriptors, so lets tabulate them. We also have extras! + vol = 1 + abc = 3 + angles = 3 + density = 1 + atomic_density = 1 + is_metal = 1 + natoms = 1 + energy_per_atom = 1 + coordination_stats = 2 * 3 + if self.n_eigenvals is None: + eigenvals_len = max([len(s) for s in self.structures]) + else: + eigenvals_len = self.n_eigenvals + elemental_composition_length = len(self.elemental_composition_map) + + extras_len = len(self.extra_data) + + + n = vol + abc + angles + density + atomic_density + is_metal + natoms + energy_per_atom + coordination_stats + elemental_composition_length + eigenvals_len + extras_len + + return n + + diff --git a/boxylmer/README.md b/boxylmer/README.md new file mode 100644 index 00000000..aafaeee9 --- /dev/null +++ b/boxylmer/README.md @@ -0,0 +1,31 @@ +## Project results +I would say this project was moderately successful given the constraints of a 5 day time limit and the concurrent management of graduate obligations. I had a lot of fun working on this and learned a bit along the way too! + +Two tree based models, that is, random forest and gradient boosting, were chosen due to their ease-of-implementation in scikit-learn and their reputation as good initial-choice models. Additionally, these models facilitated the 5 day time constraint as they are tolerant to lack of feature regularization. A graph convolution approach would likely be far superior in performance, however, a number of caveats to these kinds of models would have put this project out of a 5 day timeline: +- Regularization of features is much more important, requiring additional time to test and validate. +- Training can be excessively slow, requiring either a proxy model or ample resources. +- Predictions may require much larger datasets to generalize, and memorization is a larger concern that would have risked losing time to. +- There are *far* more hyperparameters to worry about. +- My previous work regarding graph-based approaches were implemented in Julia, not Python, and there would have been about a day or so lost to finding the relevant libraries (which I later found were NetworkX, DGL, Pytorch Geometric, and some others anyway) and learning how to use them appropriately. + +The resuling RMSE when using datasets with a smaller (3-9) number of atoms (which is a limitation of the featurization choices used in the data preparation) ranges from 0.25 to 0.3, which I'm happy with considering SOTA literature models report around 0.14 to 0.2 as [the current best (2018)](https://pubs.acs.org/doi/10.1021/acs.chemmater.8b00686). + +see the [plan, notes, and progress](./plan,%20notes,%20and%20progress.md) for a more detailed log of what I struggled with, found success in, and what I would pursue given more time. + + + + +# Running this package + +## Setup +No GPU-acceleration is used. Simply install requirements.txt + +## Running tests +A very minimal testfile is included using Pytest that should indicate if the environment is set up correctly and basic functionality is working, but a complete set of unit tests is not yet implemented. + +Navigate to ./rewotes and run `./rewotes> pytest`. Output will be sent to `./test_output` + + +## Running the Demo +The demo demonstrates usage and hyperparameter tuning (which is commented out by default) of two proof-of-concept models. +By default, the demo assumes you're running Python from the git folder root, where the api_key.txt is stored. To run the demo, navigate to the root (asummed to be "rewotes") and run `./rewotes> python .\boxylmer\demo\demo.py`. An importance matrix for the random forest model will be printed. \ No newline at end of file diff --git a/boxylmer/demo/demo output/gradient boosting parity - all data.png b/boxylmer/demo/demo output/gradient boosting parity - all data.png index 31e6ed53556b423957b9c255e1ad75a0e1b0d8a0..9555b23b75dfa758c751d091469f6e597a532789 100644 GIT binary patch literal 29763 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

    K-i3+^xP=-oUzl zXgmG0jCGSe2>A^pP{#jppHy#y*mr3u^izA>=L*d?*ZQ@n(6=8|yE!PTq0S)9D279t zf_G!-_hR)34(Aw)y>)DtgBMUJx0D4nT3*_qq6wo*j|pno2UsBKy&N_+6yS5XFY`PN zJSvcTrp2cvBRPL|faUtId#ieN5$^r_WN+vogG>(-%;Q{Zx%wnd>31`EHQgHp1*>`l z%%+0SDJ5V&P`n+gM`Ckt>#~I2Jqmg~0&1!Pm$>)zVzfzTpWq-p@D+_-->tFqA*W85D7sUS8;wm7M9pg z(G<=9p=`P7$e_T7gd-%fB`h$%@MMrP6kURuxgKi+cng3LS&q|9-^Z$px_&NwP7MQT z*B?Dt@XL=Xhbo?~L`Yfi^@YHDQhq@n3%T9&0dO znAkI|wjUpMx|f(c-xgM5sn)kq8SXRMV{5Xs@7>#J|J84o(MS5lL8BDwbdN0)9 z+2lo6IlYMsr}M`{&JfL2qg$q-LJx{+w}8=|8ZmMr)Gn|C3q-IpFl zhzkeJ1eT6YON@GOQ#gnWMT3(9Eq63DoL2^N7zKad*f$-lu-Gvh6}g0ckB$CWh!c

    1}`p~u9#7TqNi}2|-#a=cC zp&z`zTx9x=O?Qzbq+>JP(6^CNGKYB(pDn;Z#j${y#pA%zbyiu|_(I_u1_puxR}d~h z;yV*-w5Iu6GrNBeNObKzF1rbZkUYm^LQ?PLYolNEKl-tGwzqrQ}_n)CQEd)X7g zMbXq2cHiczTHlx~9AA2M@j)$gI4s#|Pfl%APslIdEaY3fWMpZ9F;n(iGLW3&<-@fd zK2x#``u*KjNjMM@`zbVC9gZ0=rLkO_YAoMf5A*4Y#Ko$lrq+M}k7$wv1K*&-R6U@8czGN#1qkg^-J>2f4*P=-`;da8QT=r zxw)?36dSGlF@knJLE1UEODj;oxA?H~s8FY+>S1{VGhVM?S?z`}KZShH&&FI;t&t0* z)ZAR6q@PY_zMPTRB-6`T0oF^1|qDs`9_7hjP8}p(%b)KS7!H{8{y(nX{i-k9)#jPGsA!gJK zLdKb!mm&ov-)$t!3+oY4Q!!C5o1*tYe?~EY%K-PUE78Sv)3&ZHRYS3M-ns zs$Anvxn8}pM%U^tygaPM3#HL$!GYi)S;2RPLM^$fY9SCQ^?$N4G0~!nzp9^_hT*40 z9xElM0{OeV{B+qfET@VA%zV>R#m4R(>>xqeXXz%sRDGN3&RS=SzQT*_Q~|2xEZ*&W z*bcp5Ba;nu;)w|n8u}&v%}#c0xas$$7tef%B|DT*#>mEmO(@h?Jeg2WP!ETU#fG8O zzs^Zpm)CPN_LsOvqSNNi{v+2zCx{b11wsjz>Hm&!4b=ysP<5s)nctTfv4%^7AO=uP zqPOvawZN`c45#&UkoArh?Nq$J2YV&xa&z!de{!$2>Of+v~m$shX) zIn8LfCTt0aEg_fFF3Zo)ZGYO-a9Fr0n_=mCs1faTrYn-*g7L18Z!Lv0q;tTh5OmRF zW3b%JymO}9tVj39H@lYIm0yx-oRDE5WNX3+(j8inFF1)x*POiucS?&gLYxG8^825r z>8wtMLmoA-ix~;$4?Fs;HQvz8F5%K1Gge1jCbvoq6;MQ z^PKSZ(=PMqe*X9rCp+aysQ+#aG($eh`d;650Q`nFO#zwl6c*=Q(FOvB>A?aw!Y zZFHrF87|1Dpdd}(NT}qcEFay?{n>@}B-%^a+c`x_+9vkv@na+{Bun-EMsP-^)lk+s z56suE_!E%!hUHGxvZEr7l*5M~@lqb1gZzJv zF}(l8zFns;tu$Hb?}|E?RBra5bo0Eu7y$?ew(A=4?%V~5xuK)LxPLN+U)dQGRh4IT zwczC0)`Su0pDg>du8(wsL2zf%ee9W_2WIp2-^bG=bOJ89RlH@MtfJWtfoq2gTaaxI zq@!X&6rm-D~ne%?|qX`=H~e#OO;qw z=}=NfX`$#d+}s#x+-lFpTle2El@UZ@j_6%SRD-S(^nN%h(OC>j;!48B$MQP}tHX&` zQYt-_vl!NJ-T%bA>6#N777)YN*-$uPG~%HPE3VGY=OU16X&Wlg;<78zZ&giwj^BH5WPaayP?-&Z4@6Qw#`Ii{#NK7Ur5UR|-M>gU9W2Z`o7cc6T ztteEs&SZ_mfd6CANJ7WFMN`1$20v_MdYP{*3#Pg(Y~Tpl_G4L(Qs$TH4jCn?P<;XY z9T);XSWjLn_qd<^Vq%Tx$?NaN+T8SKC|}Mhd~(&|!550lTnZGmOQ+`^5C1}m!WjM#ik3cesjdK~FD4z1>Ov`Wr9#AO zDF?rEGLc6H7mUyN9x4@^vq~EjW3;JByCrg1Zd}*>&c}ra5VDljbaln3HJUss21v@4 zvDby4Y@{T3?fL!9dzefr5Jh|p_QQ66OB857gUNaVqXs^O4H@~<4cN^u$^1=}J|94Q ztBj8d9c$hq%Ipy_c<{65vqWM?j|fjPL(w}d!E`Xsgfq2^;sk8Duz&~d92`gOx2z~I z*>LrW&Ovz=MN){MEGa`JL$9BWxVP@u8ocW{jO8y->#POu!-wpRy_ZvyJ~k68*G4-V zNBxa;*e}k79_LrSWXkkBNm3K^HRJZH#J6nvz32vEWmE5NyQla*D_5?0z*wCtlfTn{ zv5evdWp%a?y|bYP<;hR4!H+MaxzjV{Cg*`+D9b7MeU=!@_XvGFETesUYU|s$8_LF0 z8rB-x@{KH%6})PXr+6)pbVSwG6fY_*ySS=0e@v+-PwhYgWi8%rpha`!#KUquUO@!+ zWz4xL8Hd}jk)RTMS7cG9NYawSW?$<_lezcns(5n32pBlphSH=#ncpK9-+iXa2Ji6? zLR%wNq1S#9KGk0Ius`h{v^xfSxGxAqh*MaF-bax2&B_V$2{15(*=zl)G(|LR%a#w? z>nwfJ-cjVcIvVSB@b8$aCUksJl0@NVkqKOeBC_yl^Zt9p7nfA2(P^?cS?V{vR5 zs5pnXfH_bQ$D+Ce8>MUb#ioQKY|&t4XgjmHyq}a^{KYr$7twlkBvmCO4^J)G9Oe1* zOrf?y9r&|4H1}t?B%s<>dfMc_CzsH@1rb5w%JDI@RP#BuAZ5lVZ+0!C^%QG@410bF zoh2W|LEI}`Fv3mY+=A0;4(^My0N$oQ|7B&@Q}S8xogW|7kT5hf`++O>yfa-!Ge|iB zU|Box|e#N!=QoeT+=Z^8^*-Fjt1NajanI^M4A(!W? zb2O;Ey&3S;@n1p?dY zNVXjex}LO{J#9LZroAgiDkzj0Vi*MyWeXS>!ZHlvH3*0C23~t=P4VVGco5cw$T$R3 zWpb-J`$D7V?xZaONVP!7)Ix*V~_9F3nMcRJv#CgPN(1&lZ?eP|jp z&(E%f^t^Oovu1<-R~if$oiUXa{ntW+?XTc{V!#(-2Xztp-aY%jO+Y)@2nj&0G9ImW zQb2T9nKZfhs68DRms0E#@O4o8brF6Rml56@*# zW|HE#QTBXd%@w~JQBmo&+&EZhKHGNu#brU~{oT`hIYhk*3-LS>^A!2$! z2}}w=KIC1z?sp-|hF84zZ;6;i>h-+i&^L#js%KH&wb9cfrnDFxIaQq_r}1e~=7V}V zI;xi};5C8#WhdlsD}4UAVS)Obpd9{zq(M%k(`6VGudrOy(|IoZXd%w8$+~f_xRx>D z+R%C=g!>ckWVSU7h>Ycg?f>TIr=t z$noBWbTc*GOW+&3fg(mZ>b33iup3f!iKTLZbU?xf`ZxDi3KipxoHziy?K*Z|sm zTSh!4m>WBW@48Gx-ZH-sd}E08-)Y`q9x2lFBbAoD zM_#hf3nw4PL&I>@Qnvi$8Vw@a6ZWi`OIdB5J|%E^#tPAYNgk}NsOwTz!Up%V@fxJn zN%6>8meg$n+oumLvdMs;BnRl?_`Kc8WzlF%m?FIiw@o6|rIKL`RF!$OvXNJucYGsZq3ZsWKH7w@7TptPqCT9dcT(RK}9$Nb7?2whb zJm9V0Z$aJnGG_kpa&=j?I=kslD?dZITe(Ybti;1)?&y}1x)otEiGOo(yWTkb-~oH0 z7MDe3Sf%#;^g2o%Ew++t{5W#Ja1rNX;~6o>4XNif#*TOUmyA4^AE6C9Z-|Tc$48+n z=$ViubA0ncgiJM!=`oxqmT-_&sJzSFUDld$gaYAGP4|8=g+fMKA2V{OZu(Io)>>bO z6;G>>#*S_Nx-f~S0DesOv4!_=NT$Z@gK*4K1kX?z$%E^}q!hobB9QZVDn4t@ypLwJ z8nzt^i>+goJYaTjEpv%WIv*@>mTzL*&is3I!-Q9(NQ}}m^p#|58p*i_;r!nLtbjAG z{_srB&$q0TzSpY{msAW386R4ncC4g)G+2HIi$Vho9KMtAwseV}&W`RnqEdwbuX_h!%8SCV>GmzC*- z<=(4Y#J=v1zbKhn%M!f(fHCd^`%y6!9v&{eK;{aoP`X1hd5aIk#ofTcl`I)@-YCNj zo-a;mGu!^}=IZ3-#omtREk_3p`S6Xx#uw7;uy5IM$0;5ldV6yTEZ2w$FU*NSnKho1 zE0h?CS1+*T%ksALj6Z$`(kImT=Txm`3Dfl2)(da}5qu%P?$+~BpPqz;#xh8f;&i%# z8aKV}n#DR!3z-|l9l%(508p@wl%fI6zabTa4n$d;ItnNrqT0s--0P1#jMayxo`bW1 z5r)Q;&xre{^Cp9KUo$e&^{hvtW%fFO#PApiBm0Rvk!zqp(8BTq+?y!#mVqQl&Xb3b z(FEOwKhyQew`o6;rA+o;LEP7Ja+4=v%FcoJU~?@?s&8=q0=*>ztUPE&B>)YvSM&6x zq{CM#i#o8l0C33v+-+2JRw!%5OoOnpti(cugNf*0S2=-%yg+EiR@}+*FM3BV0|Q#G-+PVm!T8hI{E! zQw{S=uZ>{v{e@)KADXAVr3H|6f_Qk45_FMWIc$|{lp4}yNpa6F*5*V^Bx~vBdKk*n zmmZZ^lvxE%%6fw8Pf_C5dMmI<{KA=aBs}h^w)P)d5-iwkoLGN;zYghBhB6tC8DTU$~(5Ovf?VLXa#YB1mb-p-vUzTA*|D>z3xVw4Cex zYLt1%+Dkra*Aj7dwM}QFw1q}}kgQ~A-erF2kmgIANTPo>x9OA=I8$sHH0}~{^Wvml zd)~b&Zn(vpSVWZZh=LOmhoFwcRuNRrs~j4{Xt=hMwfvqA3y+P1-sV+ZUE&(bvYubM z;p0z4v&x&Pr-y6ew|;QtgS`J{!#UrR#aFH_xymX5ll7g(FIrP9O085l>3Mk|^Uwm? z_R)7Vqm>E}wL`TWZ2GO8j0a?z-2{#3l+o@+u@RBo1b;A7Sm-LTe~(M|f}zJ{TP5n& z(gq{eSGbWNtGu9#N6%2?rK+6&O%rqaoJh+F1T_=x$a*)7Yvexp9G91wx?}OPP3|`j zJ=Uc@(yeAv1&&895HIA>Pl$yfjnylbZ(-s<%wZ9xx@cCnRz`4g?3gzz3L@NTO=4M7 zOa3ZKMKev1u+sI4Y3xUbteBf0Avv%dTK|?F4eM5C6;Aa(;`oQm@PdeS_|p;5U!;%e z($ZSLDW@ZVFPVOD9b1}}H}Sy(!DPYr%AnY$#b+$%Y7L|aHLGk5#8%Q|D=lptuC~sT zX|s%eH_(<1E52*<+`kn$82YqnO0i4_xb2tZg1&OQ@E|t`FB)61qQ>>IZUg;%DR_-q zy4Y=h9vvK*JIbp6e9ij$GEa`fBEmDc36R{UNzD2xDrN!#=%(Xv?uVBdKv`@!^myZk z7an_y(h~d>lu|$e5~%!W3-{NMgL$#F<4xfuIXZ?B`|kON#KrLXd->>&8KD&-C0@?yF2)bbJcyjh+aFFZf9UK4ODe8TZF>vyMnSG67ZVEO#Oc5I7cF2PuY-|w(i22_0fNkD55PtPuVOOtCIEv`~{&{~96iLNWv+DH-_Wj6?!isbDud zOKFCANL`8*f13lgNML{DT)1ph{V?mORi7;YmUecROoK3ePFL>Zm%Cr=Jx6)^Jt(H! zVnVP9k}m%oq%2~Jm)PfIDT=+>pv4gX&wtK2)0t5UB=w&x#FUynU!+1vVMz$^eDfA6 z`rqsaj%?q%n(7o zOnqtQn2)DA!pvIhD#U2_Wc|wG@*4|0xG+(>>La8|$thSCVwtx$ry4H-#s=YBL*7ab zSo3pTk{VuXZ-7wH!M%ab!m)8j8C2lZK0zNG{L_FoCuw~s1i{67C&3>Wdk7xr2~fJf zfDEVsu!4o`y$@1$8qqodjEdm+UE6aoMSvIjOZrV*)*^|=t^gzjdF#Ns&%eT{M^XX; z&mj>8@b#VJ?WdcOj^2?C^MB^gPP0$T9k4M~$hQF>=)So*Qa#8U$f3XP15R)M=x5)T zJazW7;QIh-LkHM2u(lvUW)5gg1XKl3_8=&-kyThoJpVrYYdyG1P_#Ux4CNb5e;iV- zI^!TTZ6w15NK(X^?wq*4p#*YU1g~7v9^CP}i{byct$8n6X5Mb=HC~vzFi$^fAQS{} zJqLhf22#7HCg=ZI_9~vZtnn8!lpcyi9P}HLEKpJ?d`gv=1rYx{K;!&U=W2@(N)O(A zaiL9y{bgzW#x*hfG1`@t6$F_G9NJw6-BJB2YpT+wLmRKzc7#p{Qf5yHK|AT+6D|mE z_l8g1lqwMma0S5B^5_t$RxtI6SP-zK@AJ`FQAtUm0O^L1VRI`85sTd4WYXit%R%;$ zlg(!rEd{k6_MyhoX=RR?mVm2J*JnzVghWS2r*N3hfLRT2_sinvQzZ%L~J%hLZ?&i|794LPR z6$p%502i?5pgejNDAtIg55bW4-S{JfP@G|$tW6e|i$GNrgf|XTh^GXPko0y3&Hidp z*;b$5iPmN=BfeKTZ7oD}5KsX&F8*jF(E3RkMX*4W`K7{=wgA}vSQyHipAlRn#f^Q) zlj=;g6{dk25~=Q@_V;4uHQ?0W1fSKH40!@X=C}{Z++7FFQG~${@UoWxPv6~r{CIQf zEP(O9)ZayiW2-<6T73>gniqzq41q`w`PkLL^P$@C2EgOLhTw}~sH{$=ly5_su5|b@ zFeG&%raUw{nAGev5jAe;u^%9;X2_z4u-xdbd( zA(JMf&0GcHcKbN_>>Bu`S)iIP97TCvb6tJ5K3da?SUjNklVG7tNg{7eWVze(UC!&(Bbh)!wjM3#L`DlBN|}&~R4`@kI+%|tsj1z9 zAF6QQG=>hN2lm6_PFD{Ujp;TUG4iBLVUYbQ1Gf4c6tzMkHOTbXn9S&g z@RAXpJ@DX>K?q>KksPs)z}tJ7m{_0{mdPGMNaqPfWiCMpCZtf)ztC*7j!qDKbyg;; z%ALTYm)A@SAaj4@soZ^I1>)1x2w@TmU6*&$nT@;%%8*k_#hAfWbn+2AV}nLvwC# zbx7q9wDEiJDvSc1_)N>9EzIID0SMK4IbtcoC?2YRXf_KjfmbkOa-e#NfUvOY>U4AS z?n>V4Rd{s)YcKNGZT}w+&4g;mLdYL}VK; zXL|ekx?sF%7#Z2gxE<{~dqdfyTF_p&+A&cvA=E8}Vwk@X_&D@HHMRHFoA{Jec&h;fY!ILLiChV$HUHUA%;PSA+J!y=465~H-4);C zJv~HQT?;p{=Kv{hSiw`FJ5-dF+se(_`?Hm37M7M)Ct10;K)4Y~j(mlnr zfCe_y4p_(tJLI3D5&=+5Yh@Bv(rSl{0<%zW^-vJr4i? literal 29379 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

    Sm)4jb#A(Q6! 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
      " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "gradientboosting_model = GradientBoostingBandGapModel()\n", + "gradientboosting_model.fit(loader)\n", + "y, pred = gradientboosting_model.parity(loader)\n", + "generate_parity_plot(y, pred, \"Gradient Boosting\")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "bc4dff28-9994-4823-b593-268e64245fd2", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
      " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "y, pred = gradientboosting_model.parity(loader, test_data_only=False)\n", + "generate_parity_plot(y, pred, \"Gradient Boosting Training\")" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "07b5b4c8-43f8-434f-8122-ea1db5a40a82", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "vol -> 0.2142503869933048\n", + "lattice vecs -> [0.16403965 0.22457721 0.14573862]\n", + "lattice angs -> [0.18249219 0.13755082 0.11528523]\n", + "mass density -> 0.8147220157386834\n", + "atom density -> 0.20131281279079555\n", + "is it metal? -> 2.8002421436647036\n", + "number atoms -> 0.09632179063843187\n", + "eng per atom -> 71.66258183324956\n", + "Coord 3Angst -> [0.23337498 0.48541303]\n", + "Coord 2Angst -> [16.82683622 0.42899729]\n", + "Coord 1Angst -> [0. 0.]\n", + "Compositions -> [1.15932754 1.47377265 1.31944836]\n", + "sum Eigenval -> 1.3137152237614458\n", + "Checksum 100 -> 100.00000000000001\n" + ] + } + ], + "source": [ + "fi = randomforest_model.model.feature_importances_\n", + "n = len(loader.elemental_fraction_vectors[1])\n", + "print(\"vol ->\", fi[0] * 100)\n", + "print(\"lattice vecs ->\", fi[1:4] * 100)\n", + "print(\"lattice angs ->\", fi[4:7] * 100)\n", + "print(\"mass density ->\", fi[7] * 100)\n", + "print(\"atom density ->\", fi[8] * 100)\n", + "print(\"is it metal? ->\", fi[9] * 100)\n", + "print(\"number atoms ->\", fi[10] * 100)\n", + "print(\"eng per atom ->\", fi[11] * 100)\n", + "print(\"Coord 3Angst ->\", fi[12:14] * 100)\n", + "print(\"Coord 2Angst ->\", fi[14:16] * 100)\n", + "print(\"Coord 1Angst ->\", fi[16:18] * 100)\n", + "print(\"Compositions ->\", fi[18:18+n] * 100)\n", + "print(\"sum Eigenval ->\", sum(fi[18+n:]) * 100)\n", + "print(\"Checksum 100 ->\", sum(fi * 100))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "rewote_venv", + "language": "python", + "name": "rewote_venv" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.0" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/boxylmer/demo/demo.ipynb b/boxylmer/demo/demo.ipynb new file mode 100644 index 00000000..9e03058f --- /dev/null +++ b/boxylmer/demo/demo.ipynb @@ -0,0 +1,251 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "15f8503c-30b6-4746-b172-4de55d448c23", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\git\\rewotes\\.venv\\lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from .autonotebook import tqdm as notebook_tqdm\n" + ] + } + ], + "source": [ + "import sys\n", + "import os\n", + "demo_dir = os.path.abspath(\".\")\n", + "parent_dir = os.path.dirname(demo_dir) # feels very hacky just as a way to avoid pip install -e. \n", + "sys.path.append(parent_dir)\n", + "\n", + "from MaterialPropertyPredictor import MPRLoader, RandomForestBandGapModel, GradientBoostingBandGapModel\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from sklearn import metrics" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "4ddffb51-b7b7-4b62-bee9-d5fdf3710912", + "metadata": {}, + "outputs": [], + "source": [ + "def generate_parity_plot(y, pred, title):\n", + " rmse = metrics.mean_absolute_error(y, pred) \n", + " rmse = round(rmse, 2)\n", + " plt.figure(figsize=(6, 6)) \n", + " plt.plot(y, pred, 'ro', markersize=8, markerfacecolor='red')\n", + " max_value = max(max(y), max(pred))\n", + " plt.plot([0, max_value], [0, max_value], 'k-', lw=2)\n", + "\n", + " plt.xlabel('y')\n", + " plt.ylabel('pred')\n", + " plt.xlim(0, max_value)\n", + " plt.ylim(0, max_value)\n", + " plt.gca().set_aspect('equal', adjustable='box') \n", + " plt.box(True)\n", + " plt.grid(False) \n", + " plt.title(title + \" RMSE: \" + str(rmse))\n", + " plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "6d46626a-41cf-4dd6-be74-c3d9344f4319", + "metadata": {}, + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + "API key: yKDyZrX3LGe09wvygtdnQwTnNwrF36JR\n" + ] + } + ], + "source": [ + "api_key = input(\"API key: \")" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "5c91c377-5907-4544-9dda-fa9428368217", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\git\\rewotes\\.venv\\lib\\site-packages\\mp_api\\client\\mprester.py:193: UserWarning: mpcontribs-client not installed. Install the package to query MPContribs data, or construct pourbaix diagrams: 'pip install mpcontribs-client'\n", + " warnings.warn(\n", + "Retrieving SummaryDoc documents: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 610/610 [00:00" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "y, pred = randomforest_model.parity(loader, test_data_only=False)\n", + "generate_parity_plot(y, pred, \"Random Forest Training\")" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "2b016204-cd8c-4872-ad6a-575b4ce82233", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAggAAAIjCAYAAABml+OWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAABRMklEQVR4nO3de3yT5f3/8XdCoaVAW1pAYBw8oQhMUQ7qQIdfUGRYKIPOCQyKzilSQZ3fbfzcTzxMYe63Decc6nAIKNMVaKkHBmwquimeEJWhIggDKSqUHqDQCs39++MmoWmS5tCk953k9Xw8+gi5eyW5elebd677uj6XwzAMQwAAAA04re4AAACwHwICAADwQUAAAAA+CAgAAMAHAQEAAPggIAAAAB8EBAAA4IOAAAAAfBAQAACADwICklZBQYFOP/10r2MOh0P33HOPJf1JRJxPIH4RENDidu3apcLCQp1zzjlKT09Xenq6+vXrp1mzZunDDz+0unsxt2LFCi1cuDDk9qeffrocDofnKy0tTX369NH//u//6tChQ7HraIheeukl24WA3bt3e50zp9Op7OxsjRkzRm+++aZP+3vuucfTbu/evT7fr66uVtu2beVwOFRYWOj1vQMHDmjOnDnq27ev2rZtqy5dumjo0KH6+c9/riNHjnjaFRQUePWp8e80Ui6XSw899JDOOOMMpaWl6fzzz9df//rXkB772muvady4cerZs6fS0tLUtWtXXX311fr3v//d5OMqKyvVpUsXORwOrVy5MuK+w95SrO4AkssLL7yga6+9VikpKZoyZYouuOACOZ1OffLJJ1q9erUWLVqkXbt2qXfv3pb079ixY0pJie3/FitWrNDWrVt12223hfyYgQMH6qc//akkqba2Vu+9954WLlyojRs36u23345RT0Pz0ksv6dFHH/UbElrifDbluuuu0/e+9z3V19dr+/bt+tOf/qQrrrhC77zzjr797W/7tE9NTdVf//pX/exnP/M6vnr1ar/Pf+jQIQ0ePFjV1dW6/vrr1bdvX5WXl+vDDz/UokWLNHPmTLVv397r+RcvXuzzPK1atYr4Z7zrrru0YMEC3XjjjRoyZIjWrFmjyZMny+Fw6Ic//GGTj92+fbucTqduvvlmde3aVRUVFXr66ad1+eWX68UXX9TVV1/t93F33323jh49GnGfEScMoIXs2LHDaNeunXHeeecZZWVlPt8/fvy48fDDDxt79uxp8nmOHDkSlf5Mnz7d6N27d1SeKxxjx44N63V79+5tjB071uf4nXfeaUgytm/fHsXehW/WrFmG3f6U7Nq1y5Bk/OY3v/E6vnbtWkOSMXPmTK/j8+bNMyQZ3//+942BAwf6PN+VV15pTJw40ZBkzJo1y3P8oYceMiQZ//73v30eU1VVZRw7dsxzf/r06Ua7du2a+6N5+eKLL4zWrVt79cnlchmXXXaZ0aNHD+PEiRNhP2dNTY1x2mmnGaNHj/b7/Y8++shISUkx7rvvPkOSUVRUFHH/YW9cYkCLeeihh1RTU6MlS5aoW7duPt9PSUnR7Nmz1bNnT8+xgoICtW/fXjt37tT3vvc9dejQQVOmTJEkvf7668rPz1evXr2Umpqqnj176vbbb9exY8d8nrukpEQDBgxQWlqaBgwYoOLiYr999HfNfN++fbr++ut12mmnKTU1Vf3799df/vIXrzavvvqqHA6H/va3v+mBBx5Qjx49lJaWppEjR2rHjh2ediNGjNCLL76o//73v57h5cbzIELVtWtXSfL5hP7yyy/rsssuU7t27ZSVlaXx48fr448/9nn8+++/rzFjxigjI0Pt27fXyJEjtWnTJq82x48f17333qs+ffooLS1NOTk5Gj58uDZs2CDJ/P08+uijnnPn/nJrfD7dQ/k7duxQQUGBsrKylJmZqRkzZvh8Ij127Jhmz56tTp06qUOHDho3bpz27dvXrHkNl112mSRp586dfr8/efJkbdmyRZ988onn2JdffqmXX35ZkydP9mm/c+dOtWrVSpdcconP9zIyMiK+dLBz586AfWxozZo1On78uG655RbPMYfDoZkzZ+qLL77wezklmPT0dHXu3FmVlZV+vz9nzhxNmDDBcy6RuLjEgBbzwgsv6Oyzz9bFF18c1uNOnDih0aNHa/jw4fp//+//KT09XZJUVFSko0ePaubMmcrJydHbb7+tRx55RF988YWKioo8j1+/fr0mTpyofv36af78+SovL9eMGTPUo0ePoK/91Vdf6ZJLLvFce+7cubPWrl2rG264QdXV1T6XCRYsWCCn06k777xTVVVVeuihhzRlyhS99dZbkszh4KqqKn3xxRf6/e9/L0leQ9CBHD9+XAcPHpRkXmJ4//339bvf/U6XX365zjjjDE+7f/zjHxozZozOPPNM3XPPPTp27JgeeeQRDRs2TJs3b/aEkf/85z+67LLLlJGRoZ/97Gdq3bq1Hn/8cY0YMUIbN270/I7uuecezZ8/Xz/+8Y81dOhQVVdX691339XmzZt15ZVX6qabblJZWZk2bNig5cuXB/053H7wgx/ojDPO0Pz587V582YtXrxYXbp00a9//WtPm4KCAv3tb3/Tj370I11yySXauHGjxo4dG/Jr+LN7925JUseOHf1+//LLL1ePHj20YsUK3XfffZKk5557Tu3bt/f72r1791Z9fb2WL1+u6dOnh9QH9++xoTZt2igjI8Nzf+TIkV79DeT9999Xu3btdN5553kdHzp0qOf7w4cPD9qn6upqffPNNzp48KCWLVumrVu36v/8n//j066oqEhvvPGGPv7446B9QwKweggDyaGqqsqQZOTl5fl8r6Kiwjhw4IDn6+jRo57vTZ8+3ZBk/OIXv/B5XMN2bvPnzzccDofx3//+13Ns4MCBRrdu3YzKykrPsfXr1xuSfIb6JRnz5s3z3L/hhhuMbt26GQcPHvRq98Mf/tDIzMz09OGVV14xJBnnnXeeUVdX52n38MMPG5KMjz76yHMskksMkny+hg0b5tOvgQMHGl26dDHKy8s9xz744APD6XQa06ZN8xzLy8sz2rRpY+zcudNzrKyszOjQoYNx+eWXe45dcMEFfi9vNNTUJYbG59M9lH/99dd7tZswYYKRk5Pjuf/ee+8ZkozbbrvNq11BQYHPc/rjvsRw7733GgcOHDC+/PJL4/XXXzeGDBnid1jc3a8DBw4Yd955p3H22Wd7vjdkyBBjxowZnp+n4XD+l19+aXTu3NmQZPTt29e4+eabjRUrVnj9t+bm/m/Z31fj4fzevXuH9N/I2LFjjTPPPNPneE1NTcD/b/wZPXq0py9t2rQxbrrpJq/LI4Zh/v/Wq1cvY+7cuYZhnPpvnksMiYtLDGgR1dXVkvx/Wh4xYoQ6d+7s+XIPWTc0c+ZMn2Nt27b1/LumpkYHDx7Ud77zHRmGoffff1+StH//fm3ZskXTp09XZmamp/2VV16pfv36NdlnwzC0atUq5ebmyjAMHTx40PM1evRoVVVVafPmzV6PmTFjhtq0aeO57x6G/fzzz5t8rWAuvvhibdiwQRs2bNALL7ygBx54QP/5z380btw4zyUV989aUFCg7Oxsz2PPP/98XXnllXrppZckSfX19Vq/fr3y8vJ05plnetp169ZNkydP1r/+9S/P7ysrK0v/+c9/9NlnnzWr/43dfPPNXvcvu+wylZeXe17373//uyR5DZ1L0q233hrW68ybN0+dO3dW165dddlll+njjz/Wb3/7W02aNCngYyZPnqwdO3bonXfe8dz6u7wgSaeddpo++OAD3XzzzaqoqNBjjz2myZMnq0uXLrr//vtlGIZX+7S0NM/vseHXggULvNrt3r07pE/ox44dU2pqqs9x96UNf5fb/FmwYIHWr1+vJ598Updccom++eYbnThxwqfN8ePH/Y4sIDFxiQEtokOHDpLktezL7fHHH9fhw4f11VdfaerUqT7fT0lJ8Xs5YM+ePbr77rtVWlqqiooKr+9VVVVJkv773/9Kkvr06ePz+HPPPdfnDb6hAwcOqLKyUk888YSeeOIJv22+/vprr/u9evXyuu8eym7cv3B16tRJo0aN8twfO3aszj33XE2aNEmLFy/Wrbfe6vlZzz33XJ/Hn3feeVq3bp1qamp0+PBhHT16NGA7l8ulvXv3qn///rrvvvs0fvx4nXPOORowYICuvvpq/ehHP9L555/frJ+nqfOUkZGh//73v3I6nV6XTyTp7LPPDut1fvKTnyg/P1+1tbV6+eWX9Yc//EH19fVNPubCCy9U3759tWLFCmVlZalr1676n//5n4Dtu3XrpkWLFulPf/qTPvvsM61bt06//vWvdffdd6tbt2768Y9/7GnbqlUrr99jc7Vt21Z1dXU+x2traz3fD8XAgQM9/546daouuugiFRQUeJYw7t69W7/5zW/06KOPhnRJDImBgIAWkZmZqW7dumnr1q0+33Nf7w70iSk1NVVOp/dgV319va688kodOnRIP//5z9W3b1+1a9dO+/btU0FBgVwuV7P77H6OqVOnBry+3PiNMtBytcafJKPBfZ36tddeC/uTdaguv/xy7dy5U2vWrNH69eu1ePFi/f73v9djjz3m9cYXrpY6T3369PG8IV9zzTVq1aqVfvGLX+iKK67Q4MGDAz5u8uTJWrRokTp06KBrr73W578/fxwOh8455xydc845Gjt2rPr06aNnnnmmWecpmG7duumVV16RYRhek0P3798vSerevXvYz9mmTRuNGzdOCxYs0LFjx9S2bVvdfffd+ta3vqURI0Z4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", + "text/plain": [ + "
      " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "gradientboosting_model = GradientBoostingBandGapModel()\n", + "gradientboosting_model.fit(loader)\n", + "y, pred = gradientboosting_model.parity(loader)\n", + "generate_parity_plot(y, pred, \"Gradient Boosting\")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "bc4dff28-9994-4823-b593-268e64245fd2", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
      " + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "y, pred = gradientboosting_model.parity(loader, test_data_only=False)\n", + "generate_parity_plot(y, pred, \"Gradient Boosting Training\")" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "07b5b4c8-43f8-434f-8122-ea1db5a40a82", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "vol -> 0.2142503869933048\n", + "lattice vecs -> [0.16403965 0.22457721 0.14573862]\n", + "lattice angs -> [0.18249219 0.13755082 0.11528523]\n", + "mass density -> 0.8147220157386834\n", + "atom density -> 0.20131281279079555\n", + "is it metal? -> 2.8002421436647036\n", + "number atoms -> 0.09632179063843187\n", + "eng per atom -> 71.66258183324956\n", + "Coord 3Angst -> [0.23337498 0.48541303]\n", + "Coord 2Angst -> [16.82683622 0.42899729]\n", + "Coord 1Angst -> [0. 0.]\n", + "Compositions -> [1.15932754 1.47377265 1.31944836]\n", + "sum Eigenval -> 1.3137152237614458\n", + "Checksum 100 -> 100.00000000000001\n" + ] + } + ], + "source": [ + "fi = randomforest_model.model.feature_importances_\n", + "n = len(loader.elemental_fraction_vectors[1])\n", + "print(\"vol ->\", fi[0] * 100)\n", + "print(\"lattice vecs ->\", fi[1:4] * 100)\n", + "print(\"lattice angs ->\", fi[4:7] * 100)\n", + "print(\"mass density ->\", fi[7] * 100)\n", + "print(\"atom density ->\", fi[8] * 100)\n", + "print(\"is it metal? ->\", fi[9] * 100)\n", + "print(\"number atoms ->\", fi[10] * 100)\n", + "print(\"eng per atom ->\", fi[11] * 100)\n", + "print(\"Coord 3Angst ->\", fi[12:14] * 100)\n", + "print(\"Coord 2Angst ->\", fi[14:16] * 100)\n", + "print(\"Coord 1Angst ->\", fi[16:18] * 100)\n", + "print(\"Compositions ->\", fi[18:18+n] * 100)\n", + "print(\"sum Eigenval ->\", sum(fi[18+n:]) * 100)\n", + "print(\"Checksum 100 ->\", sum(fi * 100))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "rewote_venv", + "language": "python", + "name": "rewote_venv" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.0" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/requirements.txt b/requirements.txt index 4d5a00bb3b3a85fce948041a0043866d37388c7c..fb428cd0ca829384faa354580e8d847df8a81619 100644 GIT binary patch literal 1382 zcmYjRyK>tw5bW_U#PA_ecEKWjGUGOt2Ld4)7G4I9mZ`7L9;n3Wh~vF>Z|_tgidPfL zH1+ZzTX9zUs+Duo)XE-jZ8F)5#qYKs?*J5XG6+NP<40hu@LI26D6Ih*sk?0=u?QzI2cI2_^L3FAF#!e}^TJjtUl zU)m(HF)TT*Y0o>rYV=ArENoy17gVMg9WWl`p+~OEO6#7ddy<2&b3n@jnzTN}OwOJg z6jQSz*hk6zeE-R&0Eae6H%c@wY_I@#u_%ag?3=c$$-#icQT9jKvxVMbn5HM$^?1LV z8I&UU8Sd}#jEdYXSQPIod`*7U&YD0RF`&jjYsG)8wyV9_65S`02!=t3Qv^=pZ1mnr zC%mHMA|qmeCxHF7G&VRJDxDpMDJ0(H(dBLxcVM(_ZD05ft)w=PQ+L) z`a})OY;t%OsX$2><54mr38HDtr+O?$FVc1f;oKKcA;~tYKo;afuo!MHUbe+! ziWSFRbpwlwff6dukOPM$EL0@}t#WG+KtU5H43&$pbQ*}!?9KFGp_=cHEQ3t35XaqY z76$FHA%HJY}&|A70xOWAy^s8HJ)c=__Gym4|UFCgc_kBJ_#pL zv;{|vGb#fItF~p^W3zc9iUlb^g8dLBEj1Q<$1lR<8B4tp*bY&)hcG}F6tJ>}xe{*% znV_^~RRS?4PjA_%Iblee(CB`2D0;{D2@~rC4n|Njq%u|&(Z`Gfgj2*5r>rbNXMhbF zSQ4})(Ee(^P^jRJ;Lia|0@wTAVja>T*1%^_Sqzugo~LvYYjyxO?3EAVrf+uU1!0m# MakmK<37(Ac5AhA5vH$=8 literal 1848 zcmZvdOK;Oq5QXm=iJy`vjzbFz7VJUlmKAbR*A00%)DCU(^Iz z$=^SlRHv8Jr)_%D`>fA0E%eGXPxpFDecq>cX_KB)CC^U&eVV0XYW2T^zS}GAYFUUT zZmG8zqFUMUtjrgWg{&*RyV2vQjBPs0>y$2rp^%*ySuU!-A8U}InAmIOJ`A`vR;{)y z_}y6-AFNiL-jt_S75Z(}L!+8hKHXF;&HKqbdc#H+o%w)#WgQlS*I6E5&oztmQC^;9 zn;uoCvRJrTS=3hFZG{C4@ZOl+d5f-p%DOgo*CRS-7d>{0de!UXwNJlCZeR_J-tk_Q zd)er_6_Q$iyT(+3MRK8HFAh+upHz$)@Jl@2B@g9eQ<9nI@j%VJUwR@nK>nKPDIyBMNQe^QT& z!Sv-?z3v8cGc(pe&%VGD{_w}HO#QEeC9V(^Ps%|J=jlOAd{1A}xAfI~eZm40oA^sr zYK!o#rA|3f>P2=gQY{>FW#iwD$ho4AazOQe-?1f+VaEL0=BakvXT`;@U1hnML#6}-G1smj_nb{e-_q>fQ{3-=KLZIo From 69e7e500e9b405aa208a978300984954c1e7cc30 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 18 Sep 2023 09:41:25 -0500 Subject: [PATCH 23/24] update gitignore --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index f200babd..400824b6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ api_key.txt boxylmer/tests/__pycache__/* +boxylmer/tests/test_output/* boxylmer/MaterialPropertyPredictor/__pycache__/* + From 4fd6e3f9602056bf135da7d9a9b1bb822a3ca3f9 Mon Sep 17 00:00:00 2001 From: Will Date: Mon, 18 Sep 2023 09:44:31 -0500 Subject: [PATCH 24/24] reset gitignore --- .../gradient boosting parity - all data.png | Bin 18848 -> 0 bytes .../test_output/gradient boosting parity.png | Bin 17156 -> 0 bytes .../random forest parity - all data.png | Bin 18601 -> 0 bytes .../tests/test_output/random forest parity.png | Bin 16465 -> 0 bytes 4 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 boxylmer/tests/test_output/gradient boosting parity - all data.png delete mode 100644 boxylmer/tests/test_output/gradient boosting parity.png delete mode 100644 boxylmer/tests/test_output/random forest parity - all data.png delete mode 100644 boxylmer/tests/test_output/random forest parity.png diff --git a/boxylmer/tests/test_output/gradient boosting parity - all data.png b/boxylmer/tests/test_output/gradient boosting parity - all data.png deleted file mode 100644 index e2406b78e1268d18ddef287eb7daa6baf0e89f2d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18848 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 diff --git a/boxylmer/tests/test_output/gradient boosting parity.png b/boxylmer/tests/test_output/gradient boosting parity.png deleted file mode 100644 index 0861c051a64a6a430a2b10a59c62ceeeddae59c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17156 zcmeHucRbeb+xLekrNXx~R8(5_SIEd}k&2Wpp@eL*_oY24g=969Ju)J@5|yINY!Twh z$ljj!>35Ike(v9MKlk&`^Vjo7FK5?veU8sLkK=v3kN0^)T}^q#GOlG5MXgXdeDEYi zG3t_kEQ|3;f!V_*{E>D#r0b+%XXfO3=7K4uddA7#+Rn+^;_PM@(+iFkcD7=|lEPww zo6kEr**nUJh}itw4}|S5n2VGv9{2?#OYINqIZ_nc8S;-IRw2fMqV_we9Neer7T(wF zsr$frZvIal_12A%jfH#b;lvNt?>DbF+DAKkuf#R!nCe}j;gBTlYTNoZ8o5tQlQX&b zk2Ysi{%(76N&mrgvygtF#j8$>;kz-6nX6@2Z}al;%|7N&3-5BOkmae9sH*ucn2QAO`r1o5A>ys6}?+eM5NWiR^wzxXFp!tli` z-J-qthCiKkjo{rcW>s0OKJ?7ca!t{y?kL~>z7xIY`WiCR>aF#2U6Qht9dfg?rS7Z~ zecNb44Q^pt({^U3TKL!E8>?n_$eL9|CNZpi90 z1qF|-HL&+93E)YI@|}BKImJnDb|~GX)zZovAlt6n{q@NKHHA~JFFc3J3#yGz2N z^5CYuF4aO=O;5EFw54k&#~SS-x}=A9n|^xWp-?Au>Q$`o{G4TNVyJ$m1x zT#{(%zsBS9RpYqa^Ok(i1l6!TmfxOU5iXp$Af%TTU75o<&l1}^RBs+t^cD^!NB``W6Ip>p2KnGvCd4=}5bLXDRN#%Qv*B)1x zjsE&oePDUlzQ$KJ8tPwD<_(+k+|zfcJ|a&Xad2=D_D)Pq{X2i6{Z?S~)2Ca7j0y|_ z6y~yBet&^z5v|YjE3(VK)p85AyDfv5cn+^HOU#Nz?P?-6_)>{=5P;zHO z3{0M%9_yPLe8-mQ_UG*AKx?bT?3M#pe@)R-QbxWv=Qtrq8TLglGTj!07(w+yuMU0{v8Dzy7@8a!WhUKkwJlF{l&P)`=$d zzrH;Sdh{qhP9vr_z<1`^qdhjgPGN@m9z8F@Y%kQ$(2A8W4?fMbs^gcI*27Z#`SZtP zZn9g#q5U8>YRstho-m*J=~jA>j^VfWYmLZSmX@xrdZDUO5h+)b<7_2i+oY?aqT4Cx&yg1IH>V;)X-s{S$D*S9m zjI+}1bx$x*i}|_PPai(0r<;ALexbTSZm?((zktAfr(WKmJvI%81F->qPDr(nbQHxq zwihqG!zFPf=~R}sn_Kp7F)`HHUn1oiUq&=!*`?$T6r57_-x!zCQu+L7(1Qoj z*g^ukcc08^b_p9BXdTE<+qcgzEj``2T)KM~4kJ!=69slCk)Hg0Nudh91<9|wxDFjU#D|wh>~*aT zmv-cDHa9Q`x6S^sILR`2VmE1TvVE%Z(zdAcjiuJ`H& zTl?amZO>o4=)K4){FRDuD1=CD1YL23Q^_56H%aThkIRDOG=>^$`IqrU8_ z$1W^_ZrCwiPv&N)>BJ31tK4^*?#r?w-@mff3!?jud{ZXVCGIw8EI0gF%s=3Cq>6R~Te`{he97(gy>%&3FOG#iRl38)CnuM$oi1#U zt=`kqL%iP$wTSpqZqH+3l6JM&vwD2RpFVwh5FGrXHtCcV7M8e^NS`T-{K2=ZfzjAl zQZ0G&-M(|mtZRj<-(F!IZET%;RU%FHyj5AS&?6~_r`TSjn9W_hya!6wmCC>+RyVu0 zCXMwq(s6ieAMd*~GBaF}U{vU%X4i|j@s&8~wl?F=t}e@;AMSb3ld_yTgLGuxe1veDs$tUFtFTX36N>^uXR)X`h*FvWL7Ueq7_)>yn5kIJ~ENV#qJ7n$%))JA+S+ z3|A-!NJ{F|8TsZ%dXLo~@l@#g9Qy40cU`%e!FL|`HRq~T&#-1zwTXH`{dVx-T)WR* zpBn2+FpqRsx^d%1P;F0hZdQr^CIJ->yl7Kn=hIulmFU;#J2r*$qrEk1S$w;8eO2c1 z)*Q%J`kRURuL}D+R8X^T?>mL60N?KVM$D zYGYYfMU>sP(9^jt>rHM;dyK?dAcC%!z7Sny!@6wQv4aOMR}Cd53i5tD7AaeA(QMnC z6B-@8t#tI#5;kp*ru4Xne0+Q#vHxU(6()b)R|?cC@Omv;@^I0Tl@Ad(t5S>A_z`(z%UfG-yJO6caX&UxV!{Oc7(T;-C*tN&@ z@8AD?I`I>Rczc@|yjM);Gv$CifuBQ+e0p?Ux~x8|GpVesJXY$zDI)lNNeP#VSxvlF zP;J1SI}&<&dj9mIA;L))%G1(zW6yR!d~<2ZUZE&?@0^$Q)@I%15$4{8_|*$|`Yyl_ z^3M#h+YINg#4LSba6>~EVn(-z!cRBOOmqb75Eri&G|2wC&g3&bvO?4$0B2KUFCO)8 zyu+i=a(Fl3i$vXN*NDmCsCnz!6eA;xNU|&{HHJgO!<*>ZdH&rMQNFd^6Tb7~zCnh( zoO6TM6xOM9Avnv^y~BIpgZ_qtexZ|Ms8)v6SVd-Lxbmn-XlGeSSW}Zh6~dWGR^yke zD>n3wtSbureu+6iKtP}h560fUy&RFOHu>vR2OlIh6~)wPNiD^2ckX=u3FK9`h>upZ{=oi`x8dHsFW=Zn+T> z>2to!Py5bS^mrgV#?R_L6-FFald!D*;4qt<+kf)#;p-ifcn>|DG^D*&Rhr2^ZP7q9@@6i3drn%XToia`mbu;+mGvYCWSbk0cx$G*)qO#p59D zwRr{%8HY{IC1wBEB(&MK4)*9Hx~{F>SyiK=CMAcbMkTgL7hb)2^QP0UuUkfYs+1QZ zi9@Y>cSKA^MuyB6`<%y*H?P>R=a_(Y;#atkO=U*zoty;lbVs-v-Whk8nQ$O5z@{PN zM2uR*NYNs;UpEDkzYcYl33%rjJ~1r|Cce$kvrj^$G9jfPK2pw8dumtGTZD-bgt+)q zS+@H59+||iZQs7V2kTS==fa=l3;Vs7*yLlKq-QIBU+3UGcRTKn(;9`@k^9@U+zn2> zr)QpxXxJqpQkQz>ozu?`9J8Y-zRpv6z$>FA8|;3$7EVVjUb!*$8n?&cDDSaQ>@|P` z9eODh|8`&hU^b5CFPxV6p;Iz7-i|Rjk|fY6`%YCwWjJ&w0ZT{)N6jgvdyd-z0P@Mp zxAeTqly2z+;JUZ%wBr{EtvOj)*`}VHW?R>dCR${i!b=~(5x4eu5NMNpdT(jzfn3*t zV9iN)EKxilr+<`AR^+zr+qV6RnxBb@*08h3E~^1XOaW*-?K9b#^W*A<2ce;HuWTA? zr`^MG=7RP=hUKa8!uh`J0`%p5X{nBWN^7 zg-iX&@Huhf-qx*KH`ZCLQk3}k`Ezx3oW>}LNMd3daQ;VIE;}AGhB58)p7T2 z^ZqF1kJg?7y6HG75-Z8b8mwMp6gxjrsvr(WHQL`yf~R(_OJ8;D3EnSJ3Wb#n`J-Bf zhQdA74!S@shp!LwZ1J5gn`rSIsG%_|%CN5AO%PRp+}Ohlj*g?>lzD2V1tw~2cpV#F zp6kD0mfH9I<$*dw&!oTp`b*q<%ISS^@h)+31hnzUxuK9kskwQb*s=|t&N2W~aPC6- z8HYndL-jMx-`juSfODBpR(0>#n>TONMDGJxBzJJ+f7aZam(sm zr+sHfkEp8J*dMORP$ftUtJ8x_p^mtOk&zKgHuV%0thH0C_qYWfHJ6h%L!b`2ckc=M z5|89Ui~INK`!^R=B;4fD>G}HP5`v6Ir(YNHy@a7#%vzxmR>3>e!ec!L^0Uf~{J+0; zjQQ=7iymvoG&02SrnWh7&NCXlvJNen?%!KF)Yq7`*ZY3ro^g}(`i(J)ch$VZdOzE3 z)!tY)`a8WsMkq?uMCnezJuLL#pgqYkwR|!Q_Lv9DYuw+Vx-IUL#?J6BtRi`B;_ray zorZp@lnx(NRnFXnIep64N&nwmc+YR_G`kcN35!FiMRUOtR@B!JU@6bJQ0 z&x6HC#7LG@)rX8tzq|Y7{frFpzShE4i-6BKP>BdUwLL!NGdqmmi%M}eCZ4rx=xHSJ zXSll}rLKvSzdT*D*=0S@9Q<4V>u&D8rq}6jy6UKhv$?uVH++QlxO^ zDapQ;6>L8meE#?Mmt1?SA0o>&?Ca1R?H(@^DXhiGB-IP$%au>_+B~(lq(YNk-h+#aTE)a6QA)1UJ6YV7-=X0nS zeWVFdI@kVa6qLVA*WqJJ5=*dJX3lk;~bAHvL@y@&x-ZC4_>))#lOm^31Kua zdSR+c>6mpuErR+JQd8BlT09a=lHo&0mq|#0|J@0^r{(!s--fsiG4paVOs5LD@mM$m z59AFSOJ}QHQtFdW=PtOvfmS0d6LCIQS8nQ+S`&l3W7&!o#LcXLtbjfYDkeeM(=+Yu*?=$d{9VP+*_##Qe zJFL262q6B9WK0!4LlxA<7tG~n5N1}gst2xstok1P{COxSC168U3~{~a*~^p2_%_is zy{^n1)A}-u=O1BF0k8Bs_%`sHO-;AX+Y%60m1cUhDp5~N%=-J^!0wjPbt#_&M_9*7`nihz@Q-0vnD1H!8rL<(J?Uu z<%A*OeF*Q`nm5@MrW7~{mloe_STd9IMbfUt+BTe>9rG~{<6wVCY3f=3P{PDwwzhAz5xkFI! zv$#cNu@k-ai|lB%#*66aVu!{@YE|}Af|+ty4gx7g=yet3M;Yh8y^Ug9svY{`d= z9y1c}^n3Z{h$-E1M1ZOS@9Aoiz1D>x^CvVW61iHsF7I(&ByPKR?;a_fpDygJNeIa* zWoSF=RkS=sde~qOEZ+gzkSm;E{%}59%!o%}ekPqzHxa&blje5>5*}iR$cAGDQt~Pr zpHcRU{NG%xbHcvnRl02-{>-90T$&tWp7{x7yMVxi zgZ$%OK6-y^ExmPqE~~|R{4`-rY$w<3pau}gBsk53g?H^z2jIXd94TIPTvJAR8>5E4 z{v$)LKZo+c`v6mEAUz`l>I!bz?~TtSfZPsLV}~~TO!tu-f(&cN#!Ji;)pqt@{xGef zDB3ND<=UHqLPF?B&oqX+zDP@PQZ%l0CQcwQkQm87F84ofT=NaCFXrLHb#?&^6z%!% z=3Jfba7X{F(!q6%3I2~H?EukOue7GEq-g0#&IRD`5!wTtdPA}XTJjtJ%&p(Wk|+~D zq5HS2Y&gmkZQ{rpt8f}OI&kvvqy!1*#AA;!xazL(LkGF6aXbh$mw{cS64OqS9fn-7 zw?oQdNOz8c$V+SN>;3lZ8mJ$gzMOwB`i?o+#%yY=6m33EIGM5MVS<>ROlq*8-qY~# zjU*bvo2i434MKz`=*=?>0mgfNcHF-VnUkE9C`HX($&P>Ye32EXc`gtE#Q(o`G>3O{ zw5*K2L5@bB4T5gND;s(?j<~1&S&Euj;-Dp0wpiQ3A`Y2rN_DknX&Uk;z+y1cg$<3w zZDaf2ym8|jXvkQkx)GxeM~)oPG%)z>#6WHS%AsR!USA~R^y@D8EdD;foBsaV`}XY% z%6bhVOTw;2mJsW=)(D++cYp0M_B+mddQ59t>hTchFe{|W=-v5JqBuUNwHR+o(r2cfKOmx;DeBm zZe49d!{od?+2_&G)xGi<#Yl~gQ5-fvKi4XXDpWM6xnnwRta4IK%^!IAL3nr~Cfo{i zA7E}aCV9IGKzA zSn;tgS=Z6GB{4cXTbF}_gP)&&+4rjXMHJ&Dfp&iNR!Jex)$9ujc!oypH*jAJvx>CM$+FjQCN{%N%J~fLCg%A6bHEyGZTF6pFD|~ z8JIau%=lc*9+D@oR@iSaxp<+m&tP)pLPODDat&$R;!XBq!y9NFR8p*K9}%@Xo%9`uH7p@H74B@GeYjLu& z<7F-m@?9A3-|e5~$s63*9XQvKH^^SjUbd0Efm_jld0|kJyvd9UW;Sr>_$`=Gy`E6C zU}kZ#mN7A7FWSD0JR^M2VBc2q|Ml(5IEgg_TK3x>(%`zD{Wf%=LCfB+MH;;~viCbL zH2kvP){{A}=5V<3XraO2aHU~0?8I(wUzSPUq|RE**?SQa`gk!KH;F$Jye?2prcF@- zjkTn~d0jx935}xlXsjj;i|Yc}jHKbqp<~ZU<^+F*@RxlM-*Dj@mh;7&O@6S)B-p;J zpUghvUk=Q!WDpG3vM=UhZfLaq25(lOr;0_JliT<(&drSdYG2lJcCrXbQE+>E`?;*fnrF&vfcMGTS*P;cUc#9n@-^+>+57N)0MVa5 ze*6adFyqX-#m;>VS{4=-GWKmndUoS|S*^W(OSsj+X32{4QAPLhOxXXyU&0-T10$(E z5?6sM9BIp-sN?83tKbG*B)a;AKKUm#G&YrizeS!JKQl99X(#DEbPmwD2hcjDrsKhb z2eH}N-+LITLDgbTuPdgD=%}HRc<1DlQ8fe}1;=00JskTVqpGe!#yMT0j{ zq>;j#+-64%>!9Dt*w#f>*99g7$Qw9|IcL_BZ7tQlY|bBVa9izgMNtuNkiD9{|1mk5 z-1`i++$CnRc$3-B6EmkcbXX1&Gd9-+nD~jAHN~8a#EiXk`!YZOqWF|X+xu&TANb7G zH{Pdc$G0SJ?x~*cczY$LMP$+4FY8S5(>2;_JqB?b5H-(gSjzDiy{g@ zjxtm>*cX^__KNt~%T5!iH*NMDTKDW<=WKVt88&TiEvKG)yp?w(BRxbJ6e->X^JkPw z;>MMG>c-2c1I7}X?^(@@S>%P8*i)|y9F`fCmpWSx-h5Ki*YtuygbL zYhmOokA_5gC@de$4rCFmTe>W;#iy}RgQ6+Jhoo88$BiFg*A><<6rP=UmK8%$0b7#Q zKe8!=dnhpZb?)A`?_`2@OC%#Ddog=|kbagKTdnU)PJ`!p22)Y_A za3{`hO*MF9w%1ucG0b*oY#Y_4UCdeD+ZA>^pQpjPC9;^#l6W=VjbpaYF0i@3S&u5Z z1Bds)R$PsD%#YsfA-*3RM5Ro@t7bqeTnYOKcnLUZfiUtfMA}i8(lPMCBH`6$DXe1)D zKgLfMonQ0xKA!Zp_9GKlmL}s{{%}63LjhG=3nHB{zBqA3Dzzm7VZ80!I zBJ$t?m?05)0zqbw#K0MtnII8)h6xQ4k!L70NbnN$&t_bR$ZM1g7#1S(t*yxviO4i& z7$y<9=qwDAh-|#2nA4avdP5>IEdaeC5xM9Z9wHIB?HL{-5qWSQ9wHHW z0)t8=z40QwAraY&^oB%aFVY(lk@Ie6GcH7A!-ED43lUjlOEN_wGHorp4$U{+%lMz6 zZM*!@;K2L$Yn~orC53U667{p~pDc-CrrMXWFu~z~H`=vxr!v^-uPB#PXIkmN(f6Q| zp_SYUYDRA81MjDbin_x2Svym6b5b$|lQ}l{lVap_U}jnzCR*a=d3}n&d*R&QyT61> zYXoWnU?TarvtCSzO>RUzslNk711%)S+`cn^^plJX3=)yWgFfPumCb8OU&JDdvwi~m zMjt@+pCj{<#tkL_uQ71kaj2m8Z{(z|3v4dB?B+?E`WG<1def%93|Sc&eH1K`##|7R z2uKBXU%hc-BA6s1&ZtQ?I(hOb3UZ~R2(VY#*fu|A*HLVH2{f*QWQurmk^#88yCbTe z0B`DCqot$u+6Uo@$R6sqFigPtvK$Luk@(@mVdf=EKqh^)a6fbA39^h+eSL_Fgh^64 zdG_qnSJw4Uo0^&|7g;rBJHVWSfrzlM_OWBf-bDdsD;qHQm8F#$qw)Y2Rt0Zdh)y8W zG|=Uwftb9!rXJoRG2nd6QWN5-#Fk`Qky*W*Zs3Fa_n(2M*}ijUg6DYuBTCjSFe_ULA5V`s%hqh_ZcB@y9(A9D}N&~D$etm>e9awcjy93RS)oM^} z=GO(N!1ooGI#>94$g@!ryvejrjHBLF7#IVM?9Xrn0NP?4n{a?X+TzX0l;#yQJn)Go zIkO)4B%EZC&e+wlOGyLgCUyljyycB-M)gxT9o38u%#Vd}USb*0NJc}7wSAeQHx4!l zg^J!dQ|ioUz^797i%A2Y*mJ>O3E-1Kqhd}<2L})?gsKBLW0J);3HS*kmjiRrCfH-R zmCe{D%(R9^Loe)iGO{Wbq3_un{Fur9pk%icuVNblM^o$3{L-W}$Kfx^52vw>4=O*0 z@k`-EfKkWBEgMT{Iug;NQD2NzxxWKtyGl@<&2nm&{xvimI<$<9ZG22>VR(7G$Xn!w zIDUXs+!&%TKUr}E^eU=rBPb&Gmh$+Lwi8ei5h9HjOHqu=(c>!Fv?X*WA`pVshh%** zo%FhtI#tQ$Xk>Bj7s6#&tN&V(cr%+ZPk`9>xjQ}H>YIX0OS@ zd*9*b+?QEri4smj>X}O>^{6~Kqqxf_AyHG+K@DnP&g_QVj3FXAj>?QvbJ1Ei*;M}G z_wPThdp0rQcIC30&2q};GA2|&c8=o*6ahq@l7RWk0fCl@1W~2(p{R+t>8I7C-^Z~c zUN=e?j@8sqnMkHfpFRpMr9(*OA*U-Q-Cl%l8+H7t=)(NHfQS2q--UcJa}+Fu#ZA7_ zjEXiGz1O|capO(0ZtAE;2L2`)!gZY4!x zz{KtV--8n%c7B0CuL9Emt&IxdfEu8=lb;>Yn4KN)9UqaR1g~RMblHL>gvPE$O+OB+ z&>MJE_!}_(YEI7QGc#T&s=9k@q}GrV$r#Z8hRBErgDf}p-Q*GIs+~MsG#(ri-7CuD z#-v(BRC+sk{-Q;Z4{wwzZ2kPrfBzm_1?J=)Bpvy3E8FT2 zuBOPT?(j@?>1*hm7`XYWgXtMnj>D3=JAmiXb`_EQk-!|Mo~^mf!vBD_zo0l8DcMDG zPUfOsOn}wQ#GgkHCV)rikaF}yA(ZITh~x${GB$E}A@mjTxXr9f1ULGNXd%Ifg$Eao zHCT~a38Yg$KRWaZsw*5_EbE6*cpUMun4%j<1DM)Ol4W54U4eg1r` z^XE^gT8KJwBuf^xAxKlcKmQa>LEz|&vv?%1L!=tsAL&Rh6j&~arEwdmdHC}|9d5Qn zLQ_|k~W2oYQibgrpPDc$M5hP&@9wfdvtV3`!dSl-H@MzRjnZQ&_~;>1SD^$ zB%IEq!wKp@kZ}@)wHlDxpxYvyy*J;*qir((H3lif=_Vx|9^aXlke3jhl+WxG(I|39 zZX6WC+GGbWp#Ov3qrbi#ASEHQ@^C&Cei0F!W5;e|yFG)zAhx72Bq%5jmHJ20jxRvE zS&csY5Bq$BxI!B%=Cyxy>_Av>^Cjp^<45Ur0&s&b1$XT_92XY{6qHiqP0DkGD~Gzb zGg*`&3MYx?`M-rBHQurlZI>*;%4tML#6?FR#9{ZRETIAXF!E%fLo2jh|sl^dJH3XVk;C>fWV%QVM zfKG=ShADD*sfw5X9qb|P*cFRXwq&!@{i@kx;DixhM}GbyNfgzl7c9>fEXmY6DQkQh z6KS`sdR(=P`x5hGGyKmD2plZjGAa)sgTx%F1wa`r93x@q2@A(Sv%?uuAQL-48bBR1 zJ8W>Ua7f14bqNbcwS}<=5*CgcM9u&fj+2_$!^jF2ZW-mpz``-m z=1GI}#uvQ-3r7{r!!TGlsx1n=0SgC2gEugf-awQw_%{sCpf_OQm?=N-NMPX@X+>}^ zVBr`PjbR2X9JP56X28Nx>j77h&#UBbdq1jZ2-j#_|mO;)90Sy)sGhPg6V5KN8W;8IxlotkEhAE~Bt`=QL!Eh=g1U1A=;>Dtipl2vbU`r~YXDC{Yu6!zl*w1mP0l{$bs)>sm{CKi<~4vx8vGCz_x|1wm5^W_3tNl)jt{u6@l>+>b4*REV~ z$O~RVrqA~*aw8O-k?ou`G>kOSLj`7NXy`#;VEg-z>N;c*T6JC6g0~^M?}B0*ey+DA zKiBN@!zV~`NMajEq+I|SyCBuAj9b)!S}gR0D3Do!bR?o?8Ry=gncW;8$Ra7E{dZg# zRMl!ICOaBL?Xh`8u0WvDa~}1vNN$BTvQd0Z#Y)!Mv7OoeAEHsdoWCi)WncF%xzw8+ z^2S2c7EfRpo7vfQ2Z;}2-vwzmhysdb8`GL5uoV;&7bB}JnRiAGKjth%c*^f)(Zy4k z9-5+(@taPVQG5(DCt-$ST4O+tblYl1R$;Oc2SMMhKs=+`ZWrypM5a_z$@obNo}uE= zFkEOT8$T&0jdK5@{So9h)%bA|8A|m^zbpFWm9fAX5@gk4aqG#P^hVv4X-)h>Ljeuq zVbpz@*6@=bpI^twszwZQ`4?SWgt5@9*mducpR^reT0_3TMX6=>q`%3^#>~XoQRACa z8CR2^PP6MWkRcT1vm{agObBvJ+7vN6xSUZyk#x^(r5~XRP@A|_G~`IkL@FCk5@$!j z@6RllfxGuvFq6w7ND^bJ&6_EhXTi)0reFfIsliS7WT7F%6#SkHcY>R->@6|uwaU+w zEDKd|t0-+VG2E(TtcOI6q9N7@!WmOVTr7gO$kVAS8Os>SLy1?4h8)O4wFitR7Y1du zHPvgOH_jZo@(aCbU=idYy)i~_*cN)j#uQATEj7r4PZk;?Ou-=wz2RXjyG0Dotn%yJ zP7Kdsyo{tb^Ge3<>qu|rc~fPH;mv=u>v9uM#xBJoxL^jpGdPTxVZxxm5TXDEGb9nB z{B9LpSOhb)A|>P3#0nW6=dOPVrVRU63?zXn&CU| zL%N~)@t;7$X1zM29H%(w{ZQ<1{2RLdjl zmP&XOWb>sjeCkum`0=BKyVL}iwG_Qkq_&)$ z8U;ZT{y#ZGqfQ$j)}Z_MJ2C`?gj9ij6UG*5$tO>?XB%p2Zd18==S~eI_)rihgN|A( zi~8$~&U?@3E92eOxBheG1eZZFKQ%&Sq50YeHRsHL`+$i^leP4T@)Yj-HTV5R6uX;0 zw_NW8(=K-1J*l#$AfMDc^ZhqUKgD$e)L z(U1X{nws+AHWVZzbqID&5Hf>-JQ_%ZNly+e!L^PffkaV9RMC(-W{`_a0MXvKHsyf} zIC+!e*rib~|F>>>^S`rPpu2ie1+RG)ARiBvxh|yY1%x_4k*0b|^xfOH;%DAo=2zHr znVuRUcg?0x+S;nZc(3Qm#vBj8P!um|B5A)xQP7|YNPY1?UF$6W`+rS}{^`yi{u*7Y z6JnE(>sTuw`6J4SdTYY(buS)WO-pL^pbHT` z5bTp>Lq;6rDw*~__Oq#3opzqh&3W7Y{+4Na{eye=ezY*m9zOkQ^dd9sx%B#QVTiIW zRZX!kx&}2%7_tK~C>YZ5da(;X4_ARR*3i|}?VO788oIG`<;p!ofm{!Y!yOlfR3SO| z42<9T<6}}xa-#>LToUmKn{p*ZT=2;=5m8pP1ohOBXJV{0(iJD8x2@ zql8anRoszH9=$n93Ud=C!?maELP0czLHilDUd-$v?(U>p*6_0(w-s`3F6RXIUE1GLd z)>VOO8~*hyAjd?u@I+Lf7dW3PsN#m(Z;3nt9m|*yjDg_lgB@IjtayZ72k+Z?a#aA7 z8gBme>aJP6IvN~RXLq-bdl-lx+`Hft5=v@-z{LBNL~ki);}oQsg#IC#NY^_(Yq@gJ z8BoIHuvO=}+PV5$T8uWA6DAMRJKMrpm*cm4*7oKm1#H^;0{thtKuGIxZ7)n#G`V6+ z>fFB+Ume4l3-jww$W30NwXFz`y4pZ_HEo~v<3 zVPwRKi1xLxPR(-3rZwh!=W*ww`lv{LG<2^XXAfc?Y`k&SppbRfhcF8|#%PpG$?XFu zhK7qj$iJ^FCyBwIa0*nO2L&6}2R-Ad}l;+Y}2OBC^rr($dns-(NmU>d1 z3+P%){12|qTEU~;ynTCQOv*=O`}RXXmi~0e4y%by5hv6TTub)aox`$>^uqs~7~2G8 zVH?`~>p-KfTGMe2#^TchK5}(+lnCh}Os1|(+0vo^aqg{F2_(f<+}{QI3n_|MI-NEA zUzLvgH#Iyp_~YvQ@4}nrO}ta$@>^$8{&SM8CgGFw;K6Dvcn`TS;o=>BGRo%8RNTNT zpP`RCM{)1Q3i5jpj$_5K!QJt7&WKHbu}z{+jbiC8YKISh#X)-x{i}>Hv{2RXR7v;` zKgfam9j9&z7*@eklF~G})PQ}Ho9F!?Uqlazfu*dhV$fUtjazto5Z7YJrKt{q7ZB-6 zqB3*WWELm7`10k;4>2{N82iJet9IBwx~d;feCU-`7(*!dY8=V#2}XAq=cGAyc& z;Q|ej7-mIY++OXxH|mBRN39`@;G)TADEYpSpW>{1fe^|P((roR{=`q~*mcb(=tlFF z<#OW&PknzA&#fFh=SA3vhrn(d4lmw>}M@iLUPs zvHU%q|$8}&JI7jrbXb+-K0eFhdM5O8JW zo+`x1@zDJ44JKt8qFf|rYGB3U&21p|1Z{8+Qa|174zAvcsF0h=xbwRu>`PbYM{tY_ zr92ku{B=lZo1Lmu$@NZ5b~3I5YKw|OZNREXvHlsOsITg-O%B&c;zY!Q5)wfmxt)K% zVKjC}-bTnSwMf}Gkg9s5Of+_wV%&&wP--3sEfUqh18FEJU4_7r0;}o!z0kK1g-4>o zunS3PsFW)UR;f?B)7{wZQH(Y>%6V1e0)748zY56 zS+8{B=s607R*U>&Sc6aUO`kU6$3gpJTK4CyOzoX6*qTtzT(GykYGr@*%0+HR6I;70 zR+jrjBt`ZKabLE#x3-fK6}|Sa3q-7J%|y%O6?)LgAJ!+d?I;wc3*;Y7f?WI+3gyHW zrK5+{oWlp3T=di?+m}Zrx$m-{iiuWiKle=gY{HGsiu*73h75@dm!yn!UlY4)6;>To z8n|Vju25xFuFLt#;^b1HVz+(5IU>T;Y*D&Cb)L~R-`zdEoS$vq_R!~3Y523+@zJNp zZ4Q`q?c<{F?mTF=f#>U1Ud%>oS5@sQ{AAd_dJBc({e?jYzueu3N2hGzO~d~}ibgcJ z>|P-)g_5?_hmJxq5~E#9p%h;H|LF}2Iwwx}bGi+P88UtP@}^uiDOgxnKuGBHo;`c= zIUfwpbVOZImzk9-gqv$k{*7)Hug*PJGZkWM6}j8Kql^!AJe?+?sw;O z$2GP*GRYhnvEIqg-#?Ty>^QIW{rh(ecveyIR>ORlltbcp{?g*GSB|??eY(l}xxS?8 zWbJ*&jvebQ-B+$w9w{?fqidC&?9}e8oWD4k>XkBO*OcRwIyc!LUstDf?D+8{r{U(` z@2=?vz0=1WE%PQdGAwG9FI>2AQdya5-6X90F2SlL|IXdJ=kr`A?dwfKdhd$nCro8s zU~+Jmp%g01E-%>Kymia`_uDIX{QXBJts8X;JoCQZ+xEh;>Am_~NPgB0IvmwvuDrF4Q96J1(%0Osw~b=Yo0uLNAbb-S6NvHuC?Ur zFVEE$?04u>TfgGV;Sw9Or zV_$P#j;)Bq!XgWnSD$_^e6+<&$1uZ$~|iqp+*sTwIdCiQl{UTw@gjRMlA z(_qP1aCsXWoA(3hC45RPUdws6)@^%EdjQOgTOgC2OdUuIJWo<7~W zogdC(^liSd z%+2+u>esk*+?U+^=bz6_N`iag8X7MY?{8*jPip(*m-O=GQ8Mx9!`C;nvc|(MWJU^C z?ft4I#m~dTL;UZ~ojc)v{KaJv2OS5Vetp1^gvZ&lckekkm+MTMpSqsjfGrn(c|Y~r zV)8qGRD#F+RHAMs)xd2~T&V&>IF!pw@7}XV>CvM{=1uQ2B0cA>;I)R#Kiy~c;N1E1 z)oB+L;9UK%tlG7rxvlQawT51Ke7$&UP7myQD`Ht>QxPo^4qsmb=L_4rZ=ZUBr-%5p z-)dNF=j?;qBt>K;PWVNQn{-v@A=~IF4ESq$O+=z3IM=k3O{cIknf5XDc+C5cn z-d~eK%&x&JdB0_2mX7fu*NFrP%f^IN^c%u$n`XzmlN9_mlw}3Jl(_c0=Z+xtXMCO6i$I5&Cz?iS%Ej~~B4 zm;G20&5p14C*da2wb_I38unY%2oZ~pkaDQ#j`E^%%D6sZFMsdQUzKfVM&7LtJ*TR( za~3fPyrMJ93*B--!NFbWOa2>qpFDk>^^?x%(K161U0EuxI;v#uj)9oG@Ve}>qt1j$^nPWxsv2qgBo4ofz$=!*vc7j5Ow4neHlG=3lNvAGmq9`}t&uZ$~+_YPgxLOyD;Cqty_ye^N5q#PWUbE=0A< zW#I?kFU|E&w)t@d&yUZ+0VWZ<`l&fX=iJ?M8$JbjEsaNIxQv_rh?LPSms`%Y3s8dR z?ze80$FrT5TbgcpUz z9e%&&rUv^Zj)qEFQ5zfe2J7D(Hw(A3zv&tsyr=N8!w?cud8>+1i37^&wfy?9MGA4yidqQg(B_@zMnb*tZ^C z8p`U}5Hh)D-Bu&MX9ELQyVGSo=AQcdGrV!=*XT}<@>;4#`2K0%Tk$3PDz+}g!0)A{ z`#1P~%046`({$s;ji+SQ%1nwLaO}gA-Ri|#*tyTPvGv3CGjJ9C;Gp}LMbuy*eFzpoF8qOarXMUf@l#=!kWlHs?~IbI#--mL@t(1_ ze~VzNb<;Rp(kk-NrTm%pyXR%2(!2S--`gtoF}t+Q`YBv&WyW61p50@Qmj_OrJb4jGACT6S{Yiu(;uKp`m-Ja{&vuAPGWr7}5K9!5?h&vNjy0kd|;{k_s=|pek z8HAQIu;9~Y&ps-dBOS}QPW(ld5qq8~`uw`pxF*%mitib*{IaMbtAfRv?54L@D(~@a z+PLuoF_`hpg2f;1KqYZ+-@a{p%BSueCgb+bE>ARn=6Pd(Nd!O+yHeL^5trz6p3>u8 z+muWZs^Y_w_L8A6q|NiA5Z!q#t)6u9Mo;YRC<;g&>nJohaMb@~_WX^q+udt} z7L&#TPl-I@OEJisdoukCk!-PBZu#tm3o(3Gemy@H_>wH1NuJwKc2Q@4Ma4N`?ewD_ za}#Gvf`ubW!uDTzPP1ywWdO~xc_BMsr1t}7Pn|mTSWGdq*)_>dTTAOHfgYVIOcBXf z7qqptMM{>3mzPumCw?90$`-Q12-ym|#=Cx;?=FkL))0^Qf52+nwrv8!!qqT8QKfT$ zh1i=XdgG%sERut=5jVn@4ITYcv7<+MOg*!kz3nySw}Io_;ln;sPD2Az<#_;Z=72sK zMVmHldeNNcW&u|z%ZrbVjSZD{qRvh98u!k6^UJ0JUUD3;CgD6#Owpny`PJy6sLtCH z4t-U>fX#;VwrtrFw~<#-O)5BX!9Clq-DC6S%{_%atNMOtBw-_o^Y!%=Xev6`9gcU+ zw&&nMZTR(FolMIV?AUeL-JO?!nfq!}qfE;qg?ned4=O1sl_}ii&jIQoL6d9|Sj9@% zST&ZN>{L4W?k?GrZqq|4Dsqc&8wUwEpjM{nN^Ub&cG>nYU7-N`b7#J$}fIrJD*j64bDt6$?u{k3-j@ctEhO2#4J2F6#qt-KH&p zD_vM*9Z#RW#|OUis&NcEbWl!9;%;^?1V#N|{$0BSfDojehU~S6ES0_Hdigz;7pKb< z4)F_ybxRLrDPY3y#$ODAZfF*GF4|YCYpPoem>f}1(0{Hz*HNj>Z!pw`t)^;|%Apu= zj`!h)j$;=td|w=&r~+^!@Y@3((N__BS9X42UuSo>MQfo?kfo-oYU|inmW>-@DwU;E zK2ACf{*L|i;TII#ETV{P2w0Lpa z)HDuA&0(VFY>H0CNkoe3zrR0r7|f_OhdYXNUyQK%x{bwv@#A@u@{Ygl_;wzY8@yai zuR_hAGtZl-IOW_>?tyB^7PM$dNGg5YFP=UvMC*mblvw{?7QgX%Wuv z0BX^PO~Q5L1ATSe8TRT_LqnK!^+O(o#{4*o$MJH8{0;9NlBikjjD$OE+I3p>+_}IV zJ9ey~pyh>ebx&FS_x3iC4b^YVR3f~VX5aV5g}pVe7Pxuqz1+;B;NUob^WI3epqZJ+5q#Q@GhJ%h(8ANN}| z>uvB;(9N`Tm}Ol=%-5^2s7iQ*-CEN!o9|j<)>(K^=hSHzh58v{{2`COkB^T#%#2(R zw`yKMY)w=bBx`kY`AC4jzbYsjc|33g0ytb@GZTpUXHvi^Y}=xYW&(c@g^A~g zxLI4+UMN|!o^7|Zv@Tq|8t^Lxb|3T6!76uDQD*e>CW5GvCc`!$#EU9fb`%L<0i^K$ zO7v&c0`q6P*g@GV0yj0PsDaAF#siov4ZJBQq?cqpf@L=>(03bs;5D(j%0E1~Xa0$< zgPzA^b>K@@L-*Ge^Xt~GJwH9vG`TcCoU{F1ad~+y@w^g|oYR0-)ttv2^zD9#2Nnl7 zeZ28U;NMe~5Bd8MY&DX#VqoSk8>csL$tHs?E1kYUXTYbK3MIKHRwLM6;dweMG z<1|>$z=D_YJp<2K6T)&qG9KEyFDV>3qNbzMr)P!zS|`oO=Xii!`uY1#2sBdmJr8d& zaZw34?$tQ~uA`2W%Xn~Ts7~AaA%n`VTf1XLldXS<*Y+T!i-erqjXms?Xr6uX>k~s> z`2wMmPSa;qRaHBf^I^{RU$>cMxzE)`G+5@Gsjshh9m?(&&=-}ItQ{Onw_|JKkdU5N&@v%u0Kxlwy9vndXc zt53yi?s3_Hj&)=cA^;xV817b%|2Ja;#$`E`u-6`lb&KC(<^TCdwhNaIRn+SgflGLYF#_Do8?vdDP=> zW!&V@8ynIWMw&B1XAQ_ z&P}&?6#yFRwYhi!qNP?0hYonXtX==-x+00N(rQG2Il8A+m0c{87e~@Z=yovxLKR3BHqI z-F8H&$csf804dVB{ST$0W#!%M%OL0o%yI~vB`)>%zdz>hhkuNe7-rC|o$dN`cf`qr zt6FxHcg_Uh$rxNsY7;xV#l?#kOF@gRJYk2nTmjS`*<#srkM^RH<@uK7P=XZ0J?DDk zknM^yD~~jV_gc!?f|{E@e)jANGI~Y`mSzOrlDuDLfK7YRM?v<-IVGZ5=YP2tEHCA3 zL%;>>y!i(clO*7hX;s46E<&fYQwMklhZd0KAs@v7I_=uAAh|H8V%md2WBG#H_1lk$W^{JE(*mv zdG_sQDJ z>BY5ueyujScfE<@aPu_~R|_Q1&S3j5&8Ri7z&ne#?T=VEz%R@1l)1@}iJpmbKT-w~ zm>pSX?8_ey&9q+cjO3+N@fR~VP`TB+g>CO8e`KIi5e{cuceA**-DI^N&YL!eb9c&a zW27wk+oe%v#EtJ^r;MZO=lrQjxq6*^6bsxfte2%~=stSWbEb_xZ+U4xpYu$&DqugS=gb9SpS23K-U1!lSE>^>8~&|SVY4CFZ~F#6Sfd#d9%(uSfvYLr zMi=j`P-+aTG2L(h6_;EhKW6+_{*p;q~`aTSw5zbh=c`&bLOw$M08 ziTdnlv54n)7!Y2kP14*o7_qoVNhXW#@CQO4($mxTyNq1|nYhya`8HB$RT!voN#`L9 zP~W99$Q)3MEDNmT3J}Si`}b4EjDr_xf5I&1|DJB9p|qAy4K*c!*&guvavszt!>(Jo z#LMSh!JEl=hRTYHsu%_OZqZi`2ey+;98yPM&P+kNUSofMcb%#?%dqKC#D1mOFSd5= zS{5)IUtd}jWxO{bxpo}yz7iR&ol1bC74%&0(cmd-n&#uKG2IGADyBM7z4+TVYmv3< z*OR>qdu5wr*v+-90x~lCK=<(oFjZ82X*|3#90h&c!ZL zmWpYoxcy0?toFXs-gj?b8N=`CGYvx@5|Md`L01;VPxhQVb4Go6X>sx!Z@^_dHjCwB zB)X6r?iSv&=lfmWHI%{v^(~qoO5gdgaB-!krTqmikRw!HUaooZ;`4@U1iPX-qYM63 zX3`z$Mjaa)Q#*IA-7)O!3&mH_(S%%%8-SpMRdaHH?A!@Zg-VdC-lTX`;RcyC z<4qeLH|~7pwY>DZz^efGGbK0o5YYeS(e^K8n_56`I&G`#UcTh>82iru9w~B%4|J>v z+HXurr=0F1hYe*=s=InKE0ImtkiLX93qHfGrOr?Fo%E=z@nfK&csr$a7w;oQyoAj* zod-!xPt89ok&`sCj_Iib0#hi(JXG^rr1U4^pA<^!f!>>JOxBZ2PVAs2A0?&1_TrUF z;Nb^Z>72Mlo|%_wPEQ&ScTmllRz5+4b>$QEM!J<}=Aq_ZN4MN3m^GUf&#?Kd%0(y;zb|BWW=^X);Y3|Ew`#V&xPCz1fwaC_L1KRir;}ZtB9ym=rYD z;uG&58#R~wFhb#1f5BxkPowjngO9}!#?wD5U6R}+r=V9)9?F}Ghe}Ik;~m9K z1$QH#ps_NWfQ_0yE3@(QPbws{Y32Q_-b!XOLenmgMrPx@&4y)$jF9V}#khftU~oi_ zj){yQ%1!kp-N*~`QhireRCou~chkxzJXGJ6r4`0C>}1R@{(@w}TK-wSE04XcozaAJ zD>K?*j)}PxBpA)r~6+ZmQ}wG9uGP%>yhe4Q9;*M)D^CT%%6z zQpa7J-Z3R3;Y89Mz+xv)ovH-(6V#hVYEl&mwGv?gf#SO_=qPm?ZRk|$rP4^@3XXvg zV1Zcv9=YM5XU|>%h^l9i{m*l@lePOA0;R!rF-oDOzo435$|?&WdNzrxPj7ADNJIcL zM+iXmCo)bY%AidG^_r8XPun*mR^=YJNb!!qG({TLXecS&1}luccW+&HI<{q#OP4Nx zxx>O@=>(1g0;UHzL9)S!j@|d$Xen23WgR(FCy};cC74y%x<#YICm|u-j$x#-RT-~R z3v!qWuln9*op3&08MP;sn*rzb^pZb*JQBiA;ZEDAnXm@~JG_jKxA+--_@t83*;=ap zBq~pdh%8RLlAkB#IFN9A z6My2r2PlO2^UBH(_YU_HKB===z&5x3g%I591QPjhfy;m=?u`jtEq|xsU77)Zi9w z|BagRgP1t?3DUrO=Vl;{bPpqB0F_X|MH1zlj!visRZly1u&eah3rI6ST;m<-87Q8& zvS`ht5P^movx|$1&pA52(?~T)LBW=!zep-OwqdaDwE_xbQ6$?O`-s-tiJrj9I8xgM(1p&cEWbxG`o9rKxEG+6#t~PHet+1z7nRn}x0USy4 z5J~Sc6C_Xo(0<-w5fo?~f*Xj5||V_3C`m!hwSa55lW#ngas^&G%cbM4u7ahBd+Qo{N*3>$e|J zMPO5RcXtoUWEVGo!pO)No(Y^<+rFEoPzTdvhoZx~4_sXnNv5&!asA-#?ruRbvDb}r zNP|@q`irR8z1Qy(j}j@Lp;-G8K{%*E1mOosw=Dsj6mu>cx|s*prvK}>C7S68hBbk# z?`0$q%XCu>@`x700>5mZTg9vjQ_H-XLw_oe;BMy;qYSGS0}g4&s?WDKsjI2IL=Nv{ zAc)pW!0kNruTATy*{OyKgkn zf)eVOF)~33*lB11=G3^2l-{bWbmzob527Kl}a!>4Q?e(ZRu{+VZG>(5Ma{}yjk9Uovn zGcuaWv7vUEQ&wnl$irPm@SVcQfm!iCU(VaqUGL+?}yBL zBsAt`yF2_A6LUCx{laQb#Jt?Pr>9x6{yH5+wzYE8@9rPcp3cK+%lQ&rGp^&^wO4cG z#~Z9F!mLhu&EBm_X&7Bba&fft12r-A5jR=TklBSw-?dw|%b6t#98rjcc%k0W=Th6p z4!6r|)=SB9p%Op3yn)T$eU_eU#`Q*i=XVRfLNP?qW3mB)y)*Gk#bwW=So{>EoYPDj z=ori7q{USXcxgzK5*@vp75KpL+=s_9XX7I@-VD-yuqxnKRtr}fZA(q>RJgTzxb4Ww z#o9n?BVo9B_~z&(l`4nYYRtQE)=a&FjD|?BTCyNOec8df>i%8nr7H!+H*RbaCbIOrt9_WrzS64US zJ?vYUNDZ^5P)TlCyIUSD6%Q)F!M)D`1$XSQc$+nILg?{z{-zbd#)@{N3|l0t^p ztSPjr+eKA%(EF1A+jmkj+S)%YZbnPQdlR!Jjlk1#IfV>nEe(dLfKJ+nNA>7(jbxVB zRi7)WUB$4~gsWuzl<^Q@557lJ4T_kS=_+T<61LEm2z*$0t;hXsqvqjV0(~=bakKQ| z0v~veB(0t=vi0FUrblD#SD1b>dJzv44~I!$@MB0(oqF9UKbOHw5y0OQ*14sb-@%xN z{jzAS1y*Y~1l?reDxvdbw4sX@IB--;zt%u-vcHIQ2RBU+piO#j`XkV{Cvce%Jc_fg z!VQWw<7XC%3VD;*bmbl3!KyT*flpf3pr2jv{{w%Z5l0#{HgtuIc%KVQXb7O;pG9i~ z5+nZ;{b>QBFjx5tQZjtdcuN{L(Re}{x6!aCjr%LFIJnvU{M?|VVZdr{dVJc@HtVTfYwT((nv%kQ0QqP_dfa6I$6CYUg4H? z7W2q?ES}YPF=z6o4D;%f$kY+6`**rKk`jFlnW^urT84hKIVU&bf;_ml-5bixdc;!U zDI=Hfq6G`j(O;0RfsRh%!h*XMQ;}3mOoiLVE)|4;T)n~1ek3~eI8Cb;)-eC?$-+=skM~dzR_A-TLAoS>4Ga5<+L0r^240H} z|Lp%tJn0_>HIgUQ>{*C1FR6)>G77XxyOqq5CN7hmziP$wMF;&iIplNFF;AfXrNVw6 z^HHb?BS9y0wPkk4G1cWAi;cWd7t%*r-WaxLM1z5osVbQYt5FkL;of#0`Ob z_qU22QIVN^lIeHe&ZPDO-sPP;V}n}W+`v#H{022_ipAl`Lu4B-1F&$m zw7gV$`~E|BBr(J-HapPrQUL5b2kldHv)XKa#XnMFc?)ADfqcjjA@M;Lh)HHbHE5^< zRauPyPMJh^mRX}bBevE6vLR!ej>F=@qzt$`CLWFVr{`%Akyk}!WsOa2x^4ex*6X?+J{tGPy&tpIQcKU)d~zx@#>mXxIq#%)tZJWll`?Tawnub z-$LamY?!Y{v|i|%e#3TE=%YX-^@92N_zs9Jx01X&s`GK}?H9pudV@3#e&L^X+Z?bN z>Wim?is+)Jh&e>mP8;bv)|-&0w;!kzBZW^LC~zTPOU4Yr`7&y_3NC!QMO3Nzi&MHX zvwuGZNUeYs2Uh`pb$`Lv*=Klfc zw6a?apGHNce*XNKF_UBjkqqCdgwp=+vyJw%;RPpn8w=Ig9C?D$X-9^bjm^I=zkULrzufip)l~x!yPo@e~ zO6o+{>e3Dq*%qKUk>e>i+{b?e-=hbxr&8+f z*Q(gc^(ViXK#8|MDK-BbGI!8f4390sCvu9Xs|&omNE#Ue1`WuBQAi?ki|*UQaISNg zd$`tX133~sg4@)t|vz_bdzc`d7uZV_5HZ}VpK29 zpnTN`9k5z~kw?qK9A`2Fz0%7C$%D$d&!s6RU?*K2#!`IX6(` z4(rh{@F8;etfKFO2@7YsBh5;3wYf6eDW2XK=`uzNwqM|z-gzpxXGId^G5$jmny(Oo zuaUy(c15Lr&xO(BL=YYL_rh9nSy_Y8(a|}OmWY0v-Zk7Kuo>E* z+ExA73r40CXh#%2vv|vQJ?=N6VX!1kFuoB1Y@dXyIW8!6$c-mwT@=mm){+7+%E3^O5I)te1h5Uv`nh${$JRlSCn zM7V0gmUc!8;i@Bm+!Vr9ow434TvZL6fkL=y!k@T?a8>J*xQlRARiJwc;i?IEj}*dH zt?%M4!d0Ir=+UfjRXt`+$_iKI$F+p30_M=Ha8-0dxT-GaZU26Rj~j0EWh9L9S+WV+Rrt6g-8pxK5sH zhDh$n5ff8Wq^&$GYYpGqzarIZ56EV8USGTkW?Pl#<^)kuZ3!>E0Cq_4#hWWRrL+1N zjfjj%g>ujy15lPxMOo3| z_S?q@mPuJzb+ZnrR6wYy2E+C)yx1V4B|ceoUgZjuv#uzqZDwInZ*%=ODxZ7c%+1A51{xZ5~l{DVLjv+y$oW ziKwCg={|Lc*&U|Ca24+zsw)d571?B5-{P7lfGS_^vP!GCw;&1~QCO~1n#L)GL@56d z-yE`|pxz>9Wtz83`4T7gDX*#hFm}@@FOoi)#5;)(bNN>qP;w**6K-c1D=Q3)S&u;| zIvA$T?2g73(g-J?kU!;;Pe`K?UT_h1>|IDJ1ec`n!3W5a?S{v1!Shr2;iGIjNCVEr zMm`yWkBXx=?>nS{PP~gTA^}!~uh1aSU0xl3VjJLY>uHd^s_{G&Y}`(eMF^`6@IJ zRVe0b(IAgtz6lLP6^c1K8VCoJT%W=tKgrn5M~rxOV@QhCjx^>GGC<}=Er!daV^#*C z)j}|}R>9R8;+NhPrK{_605UK+Sqol2(UHgu7GvHh3D@Syp z)*7)OH$7kwni0lLMw+X)ERflx?W0}mNoG^W;X_wIWD4h=FJTFfSj%*F?^ zQ6Z}@kJ*@^WBKSEX|0>kG55obS|d{En7M~R$e9HlGpt#?C6@%x)oUB*YyJyZonzS~ zwb&`@br$w~EpF~8Ykh27k%n-Z`xmvg5B5+9}P_Ap= zt9YCW=;{2m2AO>d^VO>yTG(NKrd{|%KoKC2#$$dJ4ag_tuhwS!k#l(_~)IqNksL&ZCAP)(Nh)Bt%KmUA-LUIWw&cghw zEGwKdEKiKb_ZiZ4E~iinfZ!uM6M);0={v!I-bN^N{-<=Ht}E^Qzm+N)(&slE#gbAa zHYB4`8XFfU08JASbMKav)Wm_QU>W60mtI1Cpl@j%fcdu`Xo$SNQwiE&wnNToNU^3O zt!R$gIuXMlm%394QQ{mFFgWbM+dFf66e=&LrDf=PGaLtX#4rDphh%Q5ew<-78PyAk z*va7*L&9x)e!U0^35kF5WHUJvf3`DKssWvFf&Rdy}=^- zeS>ZE>+mipnm8ia(SNv32|8%30qQV?ZAZug6ccK3t^9*8Sq=guVsv0g1W0@!`yK%j ztw@Vg2#`=UA)lx#7{#0<*8oU-+(YgHkT^mR3jq=_N60nR3PvA@T@xUoimC#I010bi z#RN!%lWPGa4ik$fK!P|2fCQs0xfeiUCHfH{;R||BAwa^H0006cd`Z+IK*E>o+yqD* z#wJ66L^3yV4gd)aZ{i#P5`x}jb^sDA(PTsb2}TlJ2#}!LN>&9xf_9}F014XFq(1-& zT4dlU1V~&3Vp{63$j?K(qs{`_{Iz_+)Jq)Mz+n_ySCRg$KU9 zd^UqK6Ig@H)Vid`hn)R0F)`T#ab}WcYRyengM`x3)8HfJgLCB2DC)5Z&`YXASadc@ z)}snEY!Q5kQ*H`DXeU|P=v-#wd!v)wiG%#k_~m0 zY<*$qwWtp8HaXgpTk_wiPmolS(J>5!c#LJ+Hf>9n)2G+TUFGzD@W3?xP~pFK$X~Ac z*U-bX!FUGV9Xp3Wvn?*`jbhF#{^$bq7v+;L@anWI3$QaG!3y(6!pkYIEokvknF z+mx)ES+#LJjo>=?>9=M#)1Fse2nTtt64$*axyD0ZHFfnbG2ncsmK> zuj@8(a9mrFUkHnemY2Mk;!x=(WaOuPsMLVnem%9=eqo)(>Md?F~-Jj z3SGx#XwbEF6($75BSekwW%oS4TlykER)_u5xODZiRHS*I5m6_O$2P6wJanLkwxsf4 z7*6Oyj5u1+vk(wJJ_!~OiZW^_N~c!qe_2`kk9Z+ykrM)teH;kE>2m>IUIjsoWb2$C z$gJqqguE;*EoH1_+F$+bjgjdWcXDp90D4np>A|;ItHi-hq9sqcFu%@c@;`Ee;{qcl|B{-ZWE)WPuUW}JV@VE|XQwe8t&T{Au#dnS zWZL>5Y{sGQokU=mA)^r?_y=$!or$g`D>8h30$Y>qC#?ngRiOhFv7_Ose8I!M>(RDI@Z7 zU0Mt|I|7|2L2!uM=Jn~ZIQ81qA2S<7;vsNl6%u=p;tlt=)hW8Vl00jKp%VfJ5#N#H zu%MDPe!Sx<(5paPxN-m%+HMd}@ODiCYSZ7m@sP>YIcBt|fGbJ|%Zu`O%C)BA&r*Tf`d`IIu4tv#ieyDg`1MLAN*khjPL5vl?ZFnsE^$>= zSy{P|J~)0n0|y>S)gDV>FJgCKd*Dkf%w<%`agtMgaKrDSO87l@mbnz!exXpORA zv#usOdQ7gW=C4IXhpzsLQ=--IhVW4lr7%e=4d{PprKo&1&u(q{@oZlaQM}@8$R{F8 zUMN_eUOs*GYVtU57Ev7|hyKuR5hs3&@&1bLamh79MoU!C^qnSbh_%RB19-EMf0Zwl zHre5z=QDAOnx|2obKf;pJ|rQ);41-&j~+ex6uSN#ccBG%?PT@&5doEM3&>|pzX$F# zMOv8zKU2VLq@Sfsaik#MmC>NH*F8dLtK6}k-f(;a#8-C|l2$IoE9tt$Zuu8tuPKtV z|GX6LR6pzPL+Vdpugy4${DY4=92mf;i!XZL$htgcWC zsu+;j)Q1Gb`P#a%&XO|-jkoXJ+Yi^>PmZXNZyE?WKIlQXMpB*`c19nfnf|}}-W4NV zFKF={Am}Es+{6XYj~t}ty3a_#-Yem_I9Zzn4!D+8#9jnjLljwpCfgEWP(^Pe?`U#G21*cD@M3@CTSNGIfir*NWEZ}6p}pe~ z4TI@Fh!c_)FXQ48@hukQ3o(e;48=8kJHq$cPqfUR`(|7z6xH*YO^#tWfu4YE3E}#B z7HzBDzz13*H{_`h1z%yeh$~oL9PVo=C`k2N&HasNzZ>q}zWvK^X^fRbMw~+(owO!N z8s@D;Qypgco_zg6J|`o^+Mn4w51{r0g1I^phZ(5TkOT2VXl@-SO>xV?wqxJ(lSgK8 vq7s<8-~;ChH2Gij>(D`ciefh*zg&y)Nzs|RE%>w7Q{BY#xXT&O^C#VHDD9J;u8uCAj&`R+&e^zo z*ts~%?2z9fBPnv$)6>;ML0a1BKOflP;%+PbQT4!gG_ut7&Twg#9Oc+JiKS{?saTd)|nomiWJ{nIsKC$}3V-An!Ke8%*Vf%B`;x@(r% zcAMLNTuOE@ZHjps6~$mgI?1<5_BlU&HDDiQch0(P^_8dbCU-ydj$f|$#UNewGDiZTgh;;YOx!JHIj zwUd1rMKMot2;kwjT#|U`Iv>`C64>ytsYm z&d&{B8^crrb=ewM26J*;F-$e;dw5x>I?~u8+2?mp->)*^@zF#4j?FpRU(3Q9(#>D_ zD;>^GGt1Q>|8~B)EEUjZQRur}OssVD?5Fr(h4TYxYh}*-+vmx6_R67QM}u$B%vWKF zfFd)OLPJqeQTvv>=gsbkHOa;nKI+@IZ&&Dj;8FWTYo)n&=f(05A8L!|Mx`5k9U9WT z?)Q$Ab-lf=6qv!Pe^z5?Z2t5T&pPoPJ9HjvhSz_7tXaiqZ7cMXJ^7l$i&d}v`Sa&% zSFaw+uqYfEFP<-a&G_A0mEk@%Gvgm_yTtx+Y{nAG>c)6`kmbXN4}JTd-dQCiG{ABb z&vt5-)4u!H{zBhTeKoa^jI!j8GT|VDLf_(<>^$dI1@he{jZnRs1Z}B+XTLux>gMO? zM?Cp^$%_8$28){6@%D_@uhnMzbc0edi{5m8dZd1R6nVYbFS}f<)Z?Nh8kCyzJ z>V~67j>xRG^nc#`LO5vV^GoN}rrmbcr4RPFz0UUU{TQPWF*%wMzfrSwckHKUU4me*PSq7 zm2~WrgpAB_qN!nF^#@iciCKSGJFbPr=&8J)7!mPjL-NhZ-@Qj7bRO(^sC8>gviYlX z*REXAgI>N1+mKpat)JU_=+L208G)k`&uIDj@87?-$BBy#n)A`B#!2*Q4;bIBtZc!@ z$7kPOR2b{sb(K3YOF-Hp?a31{GWMG{Z!$)zkH~uT9Br5u+I{vPu|Dk0xyt-=Kbyqc z8?Nwes?Bq=4)|Ru-`|{@At-DABudK6zN_>q|JeJNb~Uwye&=N!>W}gW?$*=SkHB|E zeMM8n^V2GYQ~jxoiLUGXe0&f2C5-X{pUnuS{rXzQDp?|YTa4(S>>w=1?Wm}P9p(%J zh2QF{&7WWujV5DLx?J~oPIlj6{d;qhf@_EBMN3_6ZNvL=P9s>*e5oL4yjQDNL*E0B zk8Wl~9=$qitv$OVjg1&9OkbWo_I2&kTbj)|F6|bbRqy+*UB8~~J8Iv0uG#5YXsD-D z)rSuTU*Fvry;D5X9omc&_ZB9?%}fBJWMvdvOppDnxw%PGymbJ5i%UqP_Pk>2Umnca zEQqBE+n|^LOF-MC8FpLjnMI*#yZ`SSI94MgHM*=QGw07RO=jxoR2Z*+mc}mlXT;hqxbo|=x@l#n46t8_D+9hmYbp(E;RM+ zmhQ->11tKTmkHH;j8TMLke;1xpHI)6OFH&=q|VsV?)8PGf_q%!ExbE9mBt#a1^=?5 zmzS51OneO|+FT7wo^4eUA~SHEbD2OAnuNZ53gKM#(yD}g^v9PP+4(%Tuby9Q?)1Ii z8fRc?8tv}k;Z-4(Yv3I#T{NL~;L;z*2HOgWLTui$rN8mH_2DB&YF=Ml7J2Vpa$>CS zVHoMB??Tr;{_(@HAt%*1qy8V!1FJS{c(ygxTkY0XT_a*{KWhqWMfi^WNQO;55&=zR zMQ2%;h1vSM*x1-G1{kbW>(-@iKc28{`*y9pd-s;VfA41I((~b7e^Ykq7M%x4WR*wz z>uTcn|2^_ianQi~BQewXEnd7rDD9q%t&uNdxS@D1`_dn4H){C~zu#*9Th678_T~~# zO=4VNN|o~T2dDe~#ps%)DIftWpR zYB*`m6>r|WiM)F^DO_bP&r~L6hl+|N&pJ5+j6!0j30w8--+vFuIyUMN17U0#(EZtg ziW=(flwq#Kq%|Ve?mB(wqGjrj+x2h}FjZASb6KxFT3~vdS#925ZzP<^I+LCu@6zTd zcJI|-QL|Ga8R#DMyEkv1eEsH4CG?S2Q8YVdRs&~QlVz*h@M5@TZNT)HtWIK0_C8tJ zx(gRB+-;v7IG=8_Rp-H9y)oxwwT>K7d?U2iZepmDUxzQMDhMAkq=GtvmtX)ec(0jjnZ7r&R0LtN;vjdqo+c;*wbuo=*^1znVElO*;WZzhwdD2^UJu3Bc)jA#fXmG zxL(;m@8)TZ8-m@YJ)R2M^K-M>-rjl5+n>}FkC%lD%ip27U(N4{c4&z@vJ3w93>-MW z#o)-Gona!^3Sni(^~*0$z7d}5$nhWf{+V=Yt7H=s6?I0z^Sc%IvSr#QPd@xo6!6Mt zsAS0vv6|wbpj@vCT|S){g*yMSFSc+m9e=L~-TCfAtWxuC=a$CXw{IIv&EmB0jyUS+ z`7;04yLFYYS08%gf-FwP4j;c@s8lpPpxD6Z4m$U7Oi6OyB5tZTy#)$)ltyb=o15_g z8)kz+t(9}U+dRDaNYq`vO&WLaSO$J6KwCY~a9Qm2?wvb#rnkq@bKN+W<&3^+pG|-L zVlj_k-rO|Qu)5^$CFZM#ots|vrB&f1tO%H&9S2&85-Xe@cop$YVOW0vgYcMUq@^8A zHF~D6p>YW=h-Df$kl$Z+=+>4St@hCL(4_W)#?`c)f1E$Z(;v~Y&8>4~UKnOhR z_k8lQ&)r4P0fB<**9Ej9Ec|}Tl4c@>DsMgksI;q3J7Hgwa07bJqcp@^1jF-~pq-!X z#l^3uV6kg3Qi**!O0#VwK;wIEEL)_-~DM3y!T<1zbNlTFzpJnHEIzfaM0fYz6>25(_ri4 z@y@Gy332h1%(=n%k)Bqd=V%ETq_ zJi(DH@AI^W0k!r2iIvjQ_xJa|*xmiR)?jkxXLIg(GojV16BD%W+oKuh3W?@K%Ye~H zqcoGwYr(^szP=2x{PfifXopwl#nma6#eoWg1;0I~f9AeQcS^bO>62dW*~ll$qzm*S zTAas+#+qGN*Cf*a0m$6j``|Ig%=%&*_iSX^;>&beGN%0VOO~dv|4^`4-(b-ED{gM? z-Hwf!_D*sC{1Xqy;?P|l>DzP9wl>93f?q(uXv&UxoM(fA0nlDugJsY&7(_!~-%Q%s zvq?}$A*YtSW3Y*}fSGj}mMVoDhX=G={)Sh!t&?Z(VYy(R*zK5x2K`IK7a#*Q>PvY$~#LU z9$=-vN`KAyrTYD*gONLJ^OIV*4GYiNR5&PBC2N*{eDWfo-&3LP)p-{sc+5!W<3fs3 zrY}EX6|&vC4;R8d5nN2uKdVa%NfhbVo9Nyr|fH?uUueXzg)B zXZh3r^4?f0qXA4{kaecAHc>auzR&{FZU7f(z8<28YL&TPD}J^WHhVpbs{5!kPSdJB z-yUGx*?`0U%3fVRABdy>XKs6aYDQ6tLwbHfQ}f%hGS+qJqNK4YdgPvvi*&c|pG3R6 zyZbsX3)f#*y3+IO4fzz{dj7D$+Jms9-JS~B)@93cyA$W1wh~l|ZLTiv zZq0;(hyHUl(qmHFwtWIBOdWlb4Irt2804v@Ty;%NYgp;U%a7mCK+h}=7$)g7@ zFRy!HQ{jn07f$xv7lfaS?DUt5Q9NJol-rs>Y_K1|fqUWaDiuqDC+gG9Q}_S9IKMSF zl~FFeFGDgg&Her6J4uKlr=Yp4902#PO_*5r{L|ni!v1={dn#*g=_>b4ecJCuz^Q#( zfzOQ`wlp;>QLEeYR*JJ{t3ubx>9$F$5NwsjV+YR`7K(*_VISopE; zqugNT$v0$S$O2;nlFH(QB*zKh!>XJM2uc|)Q<*ykcmSwv5Xt)1+w0JrKn&xAbgGzk~ zy4_SD8}8Lttxn=mn5}pc@4%C+lXLt8Opyk+VU7USHXw{_s!QQ$RN!c;rCsS2zQczP z>uYIU&2jwl$fhF74kQC``e%Zkg##z{H_$w802l7Vp)%7|nSJ@^%9ZB1rw$!GYJg2f zkh2t{+`e(68lJ0MJNW*a>zs!VW$c z0SEm|RqV5|pUo`9lcV1An>TOPiV*Vo#@FgzAqAUUwD^xT9o!iRUiu@B?D$;$^hh1h zq4~KlHbTWwVqX2VS}>l47XH7~2|TxlV|&U%#JF8b>L=i%OS>}RCddqke|!7(Z67mu z5%H$Vliyah!Z7d;$c(}cekVY7h=vU~_jVW%bT?RyXD70H(pEF(!7b>+fkYyBYM&d+ zZOV0tn*-QQMO5M3nRW8bVzR0PRkvRLaYMch>ZSB#*^WHb4T|S#0p(j`U%_}>yKy5@ z%xkdC9Hzj~-TlR*M~{Gzwp7L_8vpwBOHlFLkF~ZO{h=#VO1QkA%vg6Nws(J7V~usO zbuRd&QS;L7_)30$8=#%jz@W|C!o?Z=d&^xOy7re12hIG_Bn(GQ+6kGOq+^?8te8|5 zx;#Aitq5Jz#cX#$+S=`Ms@CLs#pB@R*$fpTFy<7I}Ybh-)y*tqQ>b_k~!aa~t>#Rdh z9UW^(2I@djDR~EJ*0gIS$ z^3A0!a&qE69FH7IP%^oG3tM6X9!d3I|z!DjkwtWrCN|9n*RNN8 zxF@6CUKCL2(;H)pNYEvEx7{iI?Dc4I=5xc# zEBWyjkMQj~cAPUyoEeqyi%AhmESlRCzV8&yfwqCc?PMtF-uao|m9U+Dx8mX~pREmM z@SX}?o!-Mqtq5JSQw^>-wO(cU4+$CDkF|ucB04Z}dK-UEUM3S-B6!h~DPJ)v@RGv< zv-%EA{wK|fe`LRTDvZM4rGU^7n#~fXD2|oZp(I=ee;~elw|5we*F<&%PfUGlzrBcJ zejFQUO(mpGgS9tLu;Bsi=-oFxhvlzH&pGX-sF^Q_pz9D3G^iY}XLvafPdoZs#sqB` z1e*S}YgYtF;Eq)!w5PKzqPf+jn=8)#bO}11s1p-1@IsK#!nIAH9)KyOe>OfpQ2jp7 z^wl}1PeP%Yvvp?>?ihh?K`5ZFum2K?A>I&!a9&MKtwm`0taeIlh-&h%gahT zPT8Cw2qU8?1+V@my|I2e2rg<{@;y>pwup%xbaQh{*90Arn%0~CMLWI!fs-CvDR89zI8Xnu;Ws!B7Aa|*Wt zLXiMp056zsqmy_Xe-CSGKdbk+9T{l{eOADsVA&rb`fHP$us;I@zjZ8& zcra{1H$x9>ETXy8%uGGRBF6&*i*VGk;Zqte4g$)!P2YL7VuQjHLLGqw0G$W_RgHxQ z8MD>05ZMPb(tVHDI`r2l?>T)MEe){&d=%%;pYv=~Ny)W5?)tdE?Ahz6~WXF*V>)ooZ14$|tR z7K8(|y8n1ajpnli&8q$*l3s8bt%z{(8n>yVecp~M5`!cO!evz&>B5V{%CW7h{5(mK zu=Bcgn~|>BF69j`G()M;CYO+gsr|Ic6$^qYZE`gP>i(wmnHA`PeuK|=j*OF;a7ALC z^k8+MG%|?vkh!+2e4b=o8oAtTR*;6}_S3$QVbOVbjmOmRY)9`EiD{C<8L}>oR3gt# zZ0{;BBBPn%b+d6HF9lx8d!a(QR8gaGE?yA!(>Rwe2&yzr0U`)*N@rgf%?du_;Dym> zUP)z=(R3^-HMAn58QRq)K16!(=5ym;PkJc0kjE`VdaytT1c`xb=YJT)64>^n$%C{8*O z5=nR6LIl}^v`)u`XXtrqUSt;xR=Qp6--w2j7I$&W?#IYo1xoqtuMuz8{ZA8X3Aq;`6D8}c2ana*7X(jgPQzVJcIB6LX&O(qN z!Zrv;i13})ILTq*8D8Tdvc$Z*(d9Di6c@TIAoJwd*TvmN@@(vaZk(2+C${T(AsLOz znFK&xxWKV@{qm%%u)NQZ4dX(mKniA*|jUGbh+*_WTqtoIH zI@=!bU?A^nn0=v+on10m<5nSxnm zUM5+i-L@Ye*ca&s*%NU9`iZ;XzXK0?Zox2r9a;IsL2 zt|J?8@Zg2FHH)Y;HCl=AmoY9Q5N{C?5x4K$=_OoT+1sAcS7?7&a~P33mk>H5Z;2q5@aOBec&1Q3fLT2gARA6URW<{~iAAS+?P72b}!= zSx)J3V!}I0*I4^2U5Ht=dNpX4!|Lkl;O9q1_fWi^S0wzF!W^z|W1|`uyK%lEnw6tU zE78H}pto;Iw~~imGBfy$GdDpmJ94i`H1b0)hmMr;{~!t9i49%c=ZN8);dZ;Is!D{# z5Xj+}VTVAhjDJ|3+CrvSS)C@zOAc$CXgY5a=|Pv*nCmp@fptZKLxJ>QSjr#5MtZ=} zDj}!No73&06=|k_Jp@1?s(%%PgGBfP0y%#D91zIqkkq7!Hj*BW08F73VkRDtMSS+MY9nzV-@ae)z0JCr85)X;gn(G>}Up?b6GD}2=t59lAdl9BjpDH+SoE^hvU z(Wu)ue^oTRn{ZrZ*(HcEYm%pHbhn1nwDzwv>fRH=NhRUQNK?khH@p3=9Lp#@nNt3g zk)Hed+w4S%4G@Ig(P$5n-WyXC`&t_2hHfvK?rKyS?Z&|hYJ}m-+L*23#!_sKmBFv+@tOO>=I~jmcZ;E~30b^3-nZ zSzlct9XB&55-y4NyT`}(_?s{~FWr(iT11BvDcQ7W@q?M&CuB;k z&<;;gI(yw-Hu+d%C-LDso}&72NM06g+QwVN(>#LD}EP3)#Fr>{f$>H0?V} z%Rhwq;_%s|k$3BgV%aJCi+Sv6`>jsA?YkW~QPOanqL*EfU@CA#8LAz4>hbZ{=qjp% zuZufVAlQaK@i^m`hNUhWC96SWt53ydu&W*V_kH-|HqTobTiNJ>qUm%-313>1cyVzV znNKMP)yUz-S-XKu>SW!^9*LbNAG~-P?)P8y%d%<-kJDt*`v9&>QRjEzsR6EpOM3v8& zK8VfXrDF!U&`z$uO8GndpdcK)UED*&gK}^|5GDczK^j8idN^VnyQ!l&fa zX>4=ofm*jQotlSI(kn5FdH6u41{xMZ!MbhbN`{;D?yH z7)=0_r{gkSYQsxIP%5h+bUA_b(H&Q3<7tVUxC zCZiD+NvAWkN+k&aH7oKw>icf$Yre8X_eG*ZFcCB`b`fH*t{~nVYLkxn!nmi7uD@e`?%ve+UROM)RH>$n7H`cH+)sb_(lp&$md3c^qu20XR|+j;&E;@7@vO#?aZ=z~Bk2Y%&1*$&)7+ z_*q2j;tkSLQigC%ELK-nSJR3WB1zDji0i5 zdwT4VFKpZJrz#VR-Eq2^NlGHXl7I|uiCVpC)wUfw(#wA$Xss&>@Y5petUN#C(cRNy zwAO@ps&nUZNSCLuFb#7&6qk1?KW~AfAJ2d7Wb9SKYx+DDIlUPOl+`sf7)n%!;}r>! zy#ME}1$2G@Nn(J-^8+q({tBG(Of-w=ULbyYO%Mcof z03+DJGg|O#qps4ZL3YCiC11}CI_x5M;e-k{!}<14sUtxBI_8DU8p&)UDRDSrxv+8? zN@`M&qnQE$+VA_o6g-0wI0Zyz8m*o++D-W$ ziSlL1&#k1~nCZmUg^czlG)TM8WB)yY&$ufp%F9W__|uKz_zUZh;jNTO2sFZ@l0e(x z3o0%~ktw&p$!il@qDqIUn}}#wmYW>Lh$m2+@2{6hkBn_2p%5oi7`>Kn78Cn-&0}D)WDBLZ z8*CzUOl{_3gD#(t;<=;eTih-S$~h*1y*EK*cvB44>oD@-V`Fm#IY(7$;w46>64UxA{ksrtU+r!8)x~@sA`t#2&)4*SESHGHb=b-nK znQh7tCMUq)x`33pBr1#CmhGVSti!?-5Bpke-nx|quGB5ST*#126Qok1(sJrPc~K@K zZlnLquQHOuA(C{w{W7Cgm-B06F8r=*UcRN#B*)s>`FB-_4D zJp1ftH8B3hDEYt&TEPoYibMT;X>mbwCrD|Fkl&A;q(tYwG>-^{)%o!{RWp;+I*_zM zo4*#t7Lvzqwbep}HaSDXirC zGFOwm1HPO(w+cmnZT=;&{05T_qN1WiSqt`PSMvW4Xi`-bzH53J(4>V*NH$7E8iMZR zZjfKY>8gOGit(8hl++?1-V@n|e>+|A^POi5@V;;A1IQXz^BdDdwWd(v_DsodY#XYHKzpQ*g2o)U{)Z0^jkQ>02u6WD5@)3{TDC1viwcCR=Ka^-U09MT zfvw^F4ufI=48gS+4n0E@<6FkQjBboMhb#@|jQ@z&LwF$Q5P^?;LcRhhkJll>+F(wm zJFKG>uubMFH%f%JKwFbT+x|~%)WWx zWH+9S5_{k0DUO=0#~L@Pk(KtZ{|VDaDr}Hl+AbrLWtwr~KMADmyLP=W`n_ll^U=FQ zOr}%#|B4v2S1Lo2dITvq77C}5Q+Kizll5&S0mweDp^p8Lk&!Tq^-ew@8cF%ov)&05 zWW2zARq=}@R>n; zCUhRsa66YI^9*Sih}~)v8g4}S0|{oRF~r7la6I%vUK4s84jD5L&xYeAD_stOjzpsC zpuC0-keAj4b55+qXntTcGh{Tu7|jf6CK#h3_K6C{X#5d;(3u#G@*~Fb8PGp+C`Z2>3v6HZ)U$X8I96P$l3i`{94767Wv_q|Xu{ zrGC;?$qgpEB<4$@IW@GRijFGKKHZ%|z={p6xr(zdOCn0-ida4g)B~lr79Ek+lDN?k zjt=zzR;-qMvS%HhA#dqz;1JN$MtkuLF3EU7j8j#c*Mxb3v>d%LlP&`zO~s02(#7!! zrORicx|uxVglFs)1U?hyb_jHSF3FA{A^yTn4%7@M1Z+4pgPAvD!>PGT%#df;a4P7aRY?wMxOiix z6#y{BjN>!O1f@cC401^}662h?h<#ZOY34@=GenAvMo~1gW1PIy`d_hshUu@oSVprw z^2NuHNl{Z%BdpRO4>xg|l;R67E2$GN4#I08WBC~{wD#$d)uTU~jh8H6pX51gak%F1modNqjh zitvIbEU-Z;Qe0fzT?q**7V9Rv02YgD)u_J`J@M43Q>z375@7doyE!>Iqb!(0e0(LN zrXZR@pk9UD{x9*&XEBmz{atp9{7@Lj4|u5q|&9fb-m}g+h4) zpn==>?@RQ3yZ8%510J*ENQ`Cs{60fW7>bX^zf5zTSs3dVg-lXN`TDgQESt{c5oAt3mH+9SihjNk{#^&E!)!4FitFPG#3eo!6dGg-h7^k~t{1^htCYFa%c z_<@QQ&0N3_R282I!4FjYIW9?pAE+cGMhJeO>P0d|5QtIC!yE!oAaV(Xb1ycJV)2>m zhdHF+3r+SD^^G5Z0FZ@G@YSV-Pas@?z*OW)6CtYFp~PXtOV0ez4t5D9nXb2RFh7$t z?Eg2DTaWZubij&Jg!It9F_ZldXd8Wy&xCEE85Ld=g0f-%A&~Jhi+N4t$j)^HaY?Qt zD>0A290GF~F1$z07|QAJ*AToK$& zz&Q2eDs%Wad1*}DY7&qcFKx=4Ss2YMpGhDYjmTfTCV`|G5myLgG)R4#D3cB1_2!Zk zhM%Iij&ejTSOkt8>=jE$!|dyVyKP9r!Qsr|jcAzOp=#x`6w_2463HxBXeN)>#EUE~ z$QTnZvZ5k;_)NSO`t*kIAJ6ca2$1YgcH8s?< zHXQI42N)$5?M!9#W-WJxm}}wT4Wu3%1)|0#L4*uJEoZY!@lVrpZ~2Y4?c8|`bqTa= zi>$mn6C@iV$ZS6*%=Df?;$h>aO#w<_4Yj{VsaS=;nLIh?mZY85?@&^D=@RHGa|Cu7 zp7#;sNGK{cJDos*!YHCEqe%sn1BgpWc?Fmo7>H@vw=%L(dQuDost+WW?Y$Lg!}Q^} zn{vvrU-_CB*CSnOXk?Ut+;VRB^XJczVE234jCv+x2GS>ikqbt2>B=nzCPjYZ&ZwGs z|Mz=1ab?Z0^=>h2+>3K~Bwa`bx%n7L%BEtuno!}aH>>e0=Repe2jIi~UWdM{Zft0K zQ#7`GENk4r)^eS-=eK|PvK_xvSJX^K0W~7j0gZ-oFIO`QJ-zt6yu8D?SFc}B{X7*x zxPU8Hu5ecXZ%+Kp;smSr!&dsFrQeF_CdJ08HjkWu4WUcK9H+Ox9vX5*>Ug`fbXE2T zpmPv<$;ru)&g5oJP7%2az$hPOLssu(^Cpvs+c7cEP-Q29^4wO2R}Bi$4D|IMrKL$~ z>7O~10HpgA*8;SvQK6WMr1|V*Rge)hE!+FosaZsEb*Pi-sK`ZY?4kclqD%C@6J02G zVUc@BkHeKy0Py=mmhJd--=!$|$d3FcO&M!3#|IA{9M)a;TH%N7;D4Xoo1*mSXM=x3 z)jPsL=OF<}96rtnj28O-&zo~z(OJ znuhc{Te6Fzf3QFy^vf4d-T<8o(&7fuf^AB(Cts)g zZBSa))&2fwV#2g95|ll`ON9Ocm$D1R2t8msMh2L2Ml}ISxF#fnknlH-=zY*zEhwIO zeNbKf9%>?deB7s#`-)KPdBX?QgO#LlRDL<39_b|M5dO4aUw&b&r^=mXuv>NrGWtG0 zzMS8AXl6yZKfHu4e*+!M zm_w1QBiQJ{9Ldd_-?o7F@=~xBN$M+7Hbe>N(lo)O$|AXUcUNxJxw}O>nv|;Nr)&JN zCcCxa-I^LW^53|GR{z$U?ai%O|E|)dHMqL-yX(4iG*oq^Nu2>Ei=rl!bag-Nn^~90 zHQ!5WE>R|kfY-bN1Tm_7(_s}*CW5SKYyF*t+dBEmI>V@GZKu zb$aU2^&Qoyv&r_KbeE##>7lR$kCV%F1v_6@J|9(yTomuD9lP%YZj977Wjp*mu2!c| zkNXx*Z3QQAxyI1KA{L;G+?~XQm5PSPoEK2YbG9+_WVDQJ7(k!Dk`D6-t}mfbhQ-2J zO~o?#f*ZxxGDZf;~mjr-)Fhq9)^TYX++blz+F!TLYK zpv3i6Ibpc-Wqb?OrG@^_diYTDz!!RWrkRZE^Ve=&*0Ivjy~ zKq9%{^AlHWnjboqUn@=}hMrV0l2prezF9%+`PTm_$o5G6b^K{U0^^yq7E12Z-2)zc zdtY?P7At)`;ppclTDM4LCGe=9wLx=M|9EyypMjm7oq6aQUVBEIqUZN`P`zhSuA5$l z5-2Ye`#InrxUcb^iJVh!2m6p$clz=|9VJiB<~RC^{R1KkRZbLmKSvb*7w&7y1IWr0 zqg+cHDAZhd=LTHI@Ii9MoE3yyMhPeoJ_Gi*2dsuXDy~`*9!A?UGL9TMQi&@>j>@>D z=z-GpXjBm}3Fp~^3hUuIv&vL!c&~e@u}g^@-o~8*w=9sH zxUsZ63#_ONZdo4Buuwv&+F;K1%iN*G6@u<|aTbTp!kw|mwv z&w>i$(Kyjeo!__|b|1rQzi|2TeK61Wf@WEk>6RFx4E)-8vw7*D$?N$;ua}YQGWobL zSE)Ey@U{Eu&(tl`zU1Ph{zXk((i&fq`w-@}{+XFEBf|rCHC6I>>P}m#4F9`{)IPrJ zbiIo^9`Hx@pkjXfoeaAcWE^*mnQ{+rq29MD+ZnV@J_@ud5n=iNl|6WIjdf^7SS)Nk z$Hw#$AeR3Z*QDuAg~R0%D0RIDny59(7B?+$0+ge<5tUPNa%Vq@fL!W(mfPkorRds0 zZ}aKhKyFwnKlnp66O3P@(cg=C$c;?YHdbXjB2S}$>P2$(t(|AF$am0uj!r1}ARH0k zm9!SQPNxyN<{`X*uT^CT~&yOmG#)eI7T<)~LIhkW9>=?P< zKBIvhHo_g9j50(&%T%ozLFAFUyXprIPWU3Hyh@bvgU0_us@d;5Gqj+(HK?fj#=1$- zueY!@nxTr>3#H#mze-mER~DD>p%93=?zZ537Ye%mzr2y&IKRZiTlwfFedhxh6{V%F Lb1+@aD&)TbC^(gW

      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 K#Nrjr1O5-beFReg diff --git a/boxylmer/demo/demo output/gradient boosting parity.png b/boxylmer/demo/demo output/gradient boosting parity.png index 7f7f73b3b001b5bc4721f7a8d6fdc45b35f028e6..68394114722decdd221f322d6d9a21157b9f55fa 100644 GIT binary patch literal 23309 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 Hc<=iYyZH{a diff --git a/boxylmer/demo/demo output/random forest parity - all data.png b/boxylmer/demo/demo output/random forest parity - all data.png index e71ffb008097e9440ae3fe50763137bf2fc0c967..01711828a0276d8244d6a8ccebc21381f0af679a 100644 GIT binary patch literal 28816 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�CsDW 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 dKb))7{wZQH(Y>%6V1e0)748zY56 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 Lb1+@aD&)TbC^(gW literal 16555 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%0AMl!7^e=_g#-)n5WnaKkUzJF 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 Date: Fri, 15 Sep 2023 19:07:36 -0500 Subject: [PATCH 18/24] One quick comment on writeup --- boxylmer/plan, notes, and progress.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/boxylmer/plan, notes, and progress.md b/boxylmer/plan, notes, and progress.md index 6f45ea92..492591f3 100644 --- a/boxylmer/plan, notes, and progress.md +++ b/boxylmer/plan, notes, and progress.md @@ -104,4 +104,5 @@ ### Day plan - Document PredictorModel.py - Write an installation readme and point to the demo file. -- Finish up conclusions in the writeup mdfile. \ No newline at end of file +- Finish up conclusions in the writeup mdfile. + From 3ca62e536b60b2fef3127623bd2991004a9edf90 Mon Sep 17 00:00:00 2001 From: Will Date: Fri, 15 Sep 2023 19:19:13 -0500 Subject: [PATCH 19/24] fixed typos and finished some errant doc TODOs --- .../MaterialDataLoader.py | 28 +++++++++++++++++-- boxylmer/README.md | 2 +- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index a3cc7c71..39c87773 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -11,7 +11,29 @@ class AbstractDataLoader(ABC): test_size = 0.2 def __init__(self): """ - # todo + Abstract class for data loaders that fetch and preprocess data from various sources (really just MPRester right now). + + Defines an interface for data loaders, implementations should provide methods to load and preprocess + data (see below), get model inputs, get model outputs, etc. + + Required methods (more details in each abstract function) + ------- + load_data(*args, **kwargs): + Fetches the data from a specific source. + + _process_parsed_data(*args, **kwargs): + Processes the fetched data to generate features and labels. Must be called once load_data is complete. + + _validate(): + Validates that the data loaded and processed are consistent and ready for modeling. Must be called once _process_parsed_data is complete. + + get_model_inputs(): + Return the preprocessed features for the model using it. Caching may be necessary. + + get_model_outputs(): + Returns the expected outputs for the input data. + + In addition to this, _process_parsed_data must set self.n_features and self.n_samples. (see below) """ self.n_features = None self.n_samples = None @@ -130,7 +152,7 @@ def calculate_structure_coulomb_matrix(cls, structure, distance_method): Raises: ValueError: If an invalid distance calculation method is provided. - """ # todo should I raise ValueError or some other? + """ n = len(structure) mat = np.zeros((n, n)) z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element @@ -169,7 +191,7 @@ def calculate_coordination_stats(cls, structure, radius): Returns: tuple: (average, standard deviation) of coordination numbers. - # todo I have not been able to back this strategy from the literature yet: Search for better ways to encode constant-size structural info. + I have not been able to back this strategy from the literature yet: Eventually, we should search for better ways to encode variable-size -> constant-size structural info. """ total_coordination = 0 coordination_sqr = 0 diff --git a/boxylmer/README.md b/boxylmer/README.md index aafaeee9..caeb71ca 100644 --- a/boxylmer/README.md +++ b/boxylmer/README.md @@ -8,7 +8,7 @@ Two tree based models, that is, random forest and gradient boosting, were chosen - There are *far* more hyperparameters to worry about. - My previous work regarding graph-based approaches were implemented in Julia, not Python, and there would have been about a day or so lost to finding the relevant libraries (which I later found were NetworkX, DGL, Pytorch Geometric, and some others anyway) and learning how to use them appropriately. -The resuling RMSE when using datasets with a smaller (3-9) number of atoms (which is a limitation of the featurization choices used in the data preparation) ranges from 0.25 to 0.3, which I'm happy with considering SOTA literature models report around 0.14 to 0.2 as [the current best (2018)](https://pubs.acs.org/doi/10.1021/acs.chemmater.8b00686). +The resulting RMSE when using datasets with a smaller (3-9) number of atoms (which is a limitation of the featurization choices used in the data preparation) ranges from 0.25 to 0.3, which I'm happy with considering SOTA literature models report around 0.14 to 0.2 as [the current best (2018)](https://pubs.acs.org/doi/10.1021/acs.chemmater.8b00686). see the [plan, notes, and progress](./plan,%20notes,%20and%20progress.md) for a more detailed log of what I struggled with, found success in, and what I would pursue given more time. From d331c8fdde9361fe432f078e8f06c59b3ec230e8 Mon Sep 17 00:00:00 2001 From: Will Date: Fri, 15 Sep 2023 19:23:22 -0500 Subject: [PATCH 20/24] Whoops, forgot to explain how to add the API key --- boxylmer/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/boxylmer/README.md b/boxylmer/README.md index caeb71ca..f0625fbb 100644 --- a/boxylmer/README.md +++ b/boxylmer/README.md @@ -19,6 +19,7 @@ see the [plan, notes, and progress](./plan,%20notes,%20and%20progress.md) for a ## Setup No GPU-acceleration is used. Simply install requirements.txt +An API key is needed to use MPRester. The demo and tests will search for the key in a file called "api_key.txt" in the root git folder (i.e., alongside `./boxylmer`). Before running, create that file and put the key in there. ## Running tests A very minimal testfile is included using Pytest that should indicate if the environment is set up correctly and basic functionality is working, but a complete set of unit tests is not yet implemented. From 5beeb1549cb7ce50de7813c43d534f88c7290794 Mon Sep 17 00:00:00 2001 From: Will Date: Fri, 15 Sep 2023 19:24:03 -0500 Subject: [PATCH 21/24] last edit --- boxylmer/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/boxylmer/README.md b/boxylmer/README.md index f0625fbb..9dc22f3c 100644 --- a/boxylmer/README.md +++ b/boxylmer/README.md @@ -19,6 +19,7 @@ see the [plan, notes, and progress](./plan,%20notes,%20and%20progress.md) for a ## Setup No GPU-acceleration is used. Simply install requirements.txt + An API key is needed to use MPRester. The demo and tests will search for the key in a file called "api_key.txt" in the root git folder (i.e., alongside `./boxylmer`). Before running, create that file and put the key in there. ## Running tests From 6cb0440746e726c42175d9a6a32ac7d75f67a138 Mon Sep 17 00:00:00 2001 From: Will Date: Sun, 17 Sep 2023 22:43:59 -0500 Subject: [PATCH 22/24] Added jupyter notebook --- .../.ipynb_checkpoints/demo-checkpoint.ipynb | 251 ++++++++++++++++++ boxylmer/demo/demo.ipynb | 251 ++++++++++++++++++ requirements.txt | Bin 1848 -> 1382 bytes 3 files changed, 502 insertions(+) create mode 100644 boxylmer/demo/.ipynb_checkpoints/demo-checkpoint.ipynb create mode 100644 boxylmer/demo/demo.ipynb diff --git a/boxylmer/demo/.ipynb_checkpoints/demo-checkpoint.ipynb b/boxylmer/demo/.ipynb_checkpoints/demo-checkpoint.ipynb new file mode 100644 index 00000000..9e03058f --- /dev/null +++ b/boxylmer/demo/.ipynb_checkpoints/demo-checkpoint.ipynb @@ -0,0 +1,251 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "15f8503c-30b6-4746-b172-4de55d448c23", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\git\\rewotes\\.venv\\lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from .autonotebook import tqdm as notebook_tqdm\n" + ] + } + ], + "source": [ + "import sys\n", + "import os\n", + "demo_dir = os.path.abspath(\".\")\n", + "parent_dir = os.path.dirname(demo_dir) # feels very hacky just as a way to avoid pip install -e. \n", + "sys.path.append(parent_dir)\n", + "\n", + "from MaterialPropertyPredictor import MPRLoader, RandomForestBandGapModel, GradientBoostingBandGapModel\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from sklearn import metrics" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "4ddffb51-b7b7-4b62-bee9-d5fdf3710912", + "metadata": {}, + "outputs": [], + "source": [ + "def generate_parity_plot(y, pred, title):\n", + " rmse = metrics.mean_absolute_error(y, pred) \n", + " rmse = round(rmse, 2)\n", + " plt.figure(figsize=(6, 6)) \n", + " plt.plot(y, pred, 'ro', markersize=8, markerfacecolor='red')\n", + " max_value = max(max(y), max(pred))\n", + " plt.plot([0, max_value], [0, max_value], 'k-', lw=2)\n", + "\n", + " plt.xlabel('y')\n", + " plt.ylabel('pred')\n", + " plt.xlim(0, max_value)\n", + " plt.ylim(0, max_value)\n", + " plt.gca().set_aspect('equal', adjustable='box') \n", + " plt.box(True)\n", + " plt.grid(False) \n", + " plt.title(title + \" RMSE: \" + str(rmse))\n", + " plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "6d46626a-41cf-4dd6-be74-c3d9344f4319", + "metadata": {}, + "outputs": [ + { + "name": "stdin", + "output_type": "stream", + "text": [ + "API key: yKDyZrX3LGe09wvygtdnQwTnNwrF36JR\n" + ] + } + ], + "source": [ + "api_key = input(\"API key: \")" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "5c91c377-5907-4544-9dda-fa9428368217", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\git\\rewotes\\.venv\\lib\\site-packages\\mp_api\\client\\mprester.py:193: UserWarning: mpcontribs-client not installed. Install the package to query MPContribs data, or construct pourbaix diagrams: 'pip install mpcontribs-client'\n", + " warnings.warn(\n", + "Retrieving SummaryDoc documents: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 610/610 [00:00" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "y, pred = randomforest_model.parity(loader, test_data_only=False)\n", + "generate_parity_plot(y, pred, \"Random Forest Training\")" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "2b016204-cd8c-4872-ad6a-575b4ce82233", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAggAAAIjCAYAAABml+OWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAABRMklEQVR4nO3de3yT5f3/8XdCoaVAW1pAYBw8oQhMUQ7qQIdfUGRYKIPOCQyKzilSQZ3fbfzcTzxMYe63Decc6nAIKNMVaKkHBmwquimeEJWhIggDKSqUHqDQCs39++MmoWmS5tCk953k9Xw8+gi5eyW5elebd677uj6XwzAMQwAAAA04re4AAACwHwICAADwQUAAAAA+CAgAAMAHAQEAAPggIAAAAB8EBAAA4IOAAAAAfBAQAACADwICklZBQYFOP/10r2MOh0P33HOPJf1JRJxPIH4RENDidu3apcLCQp1zzjlKT09Xenq6+vXrp1mzZunDDz+0unsxt2LFCi1cuDDk9qeffrocDofnKy0tTX369NH//u//6tChQ7HraIheeukl24WA3bt3e50zp9Op7OxsjRkzRm+++aZP+3vuucfTbu/evT7fr66uVtu2beVwOFRYWOj1vQMHDmjOnDnq27ev2rZtqy5dumjo0KH6+c9/riNHjnjaFRQUePWp8e80Ui6XSw899JDOOOMMpaWl6fzzz9df//rXkB772muvady4cerZs6fS0tLUtWtXXX311fr3v//d5OMqKyvVpUsXORwOrVy5MuK+w95SrO4AkssLL7yga6+9VikpKZoyZYouuOACOZ1OffLJJ1q9erUWLVqkXbt2qXfv3pb079ixY0pJie3/FitWrNDWrVt12223hfyYgQMH6qc//akkqba2Vu+9954WLlyojRs36u23345RT0Pz0ksv6dFHH/UbElrifDbluuuu0/e+9z3V19dr+/bt+tOf/qQrrrhC77zzjr797W/7tE9NTdVf//pX/exnP/M6vnr1ar/Pf+jQIQ0ePFjV1dW6/vrr1bdvX5WXl+vDDz/UokWLNHPmTLVv397r+RcvXuzzPK1atYr4Z7zrrru0YMEC3XjjjRoyZIjWrFmjyZMny+Fw6Ic//GGTj92+fbucTqduvvlmde3aVRUVFXr66ad1+eWX68UXX9TVV1/t93F33323jh49GnGfEScMoIXs2LHDaNeunXHeeecZZWVlPt8/fvy48fDDDxt79uxp8nmOHDkSlf5Mnz7d6N27d1SeKxxjx44N63V79+5tjB071uf4nXfeaUgytm/fHsXehW/WrFmG3f6U7Nq1y5Bk/OY3v/E6vnbtWkOSMXPmTK/j8+bNMyQZ3//+942BAwf6PN+VV15pTJw40ZBkzJo1y3P8oYceMiQZ//73v30eU1VVZRw7dsxzf/r06Ua7du2a+6N5+eKLL4zWrVt79cnlchmXXXaZ0aNHD+PEiRNhP2dNTY1x2mmnGaNHj/b7/Y8++shISUkx7rvvPkOSUVRUFHH/YW9cYkCLeeihh1RTU6MlS5aoW7duPt9PSUnR7Nmz1bNnT8+xgoICtW/fXjt37tT3vvc9dejQQVOmTJEkvf7668rPz1evXr2Umpqqnj176vbbb9exY8d8nrukpEQDBgxQWlqaBgwYoOLiYr999HfNfN++fbr++ut12mmnKTU1Vf3799df/vIXrzavvvqqHA6H/va3v+mBBx5Qjx49lJaWppEjR2rHjh2ediNGjNCLL76o//73v57h5cbzIELVtWtXSfL5hP7yyy/rsssuU7t27ZSVlaXx48fr448/9nn8+++/rzFjxigjI0Pt27fXyJEjtWnTJq82x48f17333qs+ffooLS1NOTk5Gj58uDZs2CDJ/P08+uijnnPn/nJrfD7dQ/k7duxQQUGBsrKylJmZqRkzZvh8Ij127Jhmz56tTp06qUOHDho3bpz27dvXrHkNl112mSRp586dfr8/efJkbdmyRZ988onn2JdffqmXX35ZkydP9mm/c+dOtWrVSpdcconP9zIyMiK+dLBz586AfWxozZo1On78uG655RbPMYfDoZkzZ+qLL77wezklmPT0dHXu3FmVlZV+vz9nzhxNmDDBcy6RuLjEgBbzwgsv6Oyzz9bFF18c1uNOnDih0aNHa/jw4fp//+//KT09XZJUVFSko0ePaubMmcrJydHbb7+tRx55RF988YWKioo8j1+/fr0mTpyofv36af78+SovL9eMGTPUo0ePoK/91Vdf6ZJLLvFce+7cubPWrl2rG264QdXV1T6XCRYsWCCn06k777xTVVVVeuihhzRlyhS99dZbkszh4KqqKn3xxRf6/e9/L0leQ9CBHD9+XAcPHpRkXmJ4//339bvf/U6XX365zjjjDE+7f/zjHxozZozOPPNM3XPPPTp27JgeeeQRDRs2TJs3b/aEkf/85z+67LLLlJGRoZ/97Gdq3bq1Hn/8cY0YMUIbN270/I7uuecezZ8/Xz/+8Y81dOhQVVdX691339XmzZt15ZVX6qabblJZWZk2bNig5cuXB/053H7wgx/ojDPO0Pz587V582YtXrxYXbp00a9//WtPm4KCAv3tb3/Tj370I11yySXauHGjxo4dG/Jr+LN7925JUseOHf1+//LLL1ePHj20YsUK3XfffZKk5557Tu3bt/f72r1791Z9fb2WL1+u6dOnh9QH9++xoTZt2igjI8Nzf+TIkV79DeT9999Xu3btdN5553kdHzp0qOf7w4cPD9qn6upqffPNNzp48KCWLVumrVu36v/8n//j066oqEhvvPGGPv7446B9QwKweggDyaGqqsqQZOTl5fl8r6Kiwjhw4IDn6+jRo57vTZ8+3ZBk/OIXv/B5XMN2bvPnzzccDofx3//+13Ns4MCBRrdu3YzKykrPsfXr1xuSfIb6JRnz5s3z3L/hhhuMbt26GQcPHvRq98Mf/tDIzMz09OGVV14xJBnnnXeeUVdX52n38MMPG5KMjz76yHMskksMkny+hg0b5tOvgQMHGl26dDHKy8s9xz744APD6XQa06ZN8xzLy8sz2rRpY+zcudNzrKyszOjQoYNx+eWXe45dcMEFfi9vNNTUJYbG59M9lH/99dd7tZswYYKRk5Pjuf/ee+8ZkozbbrvNq11BQYHPc/rjvsRw7733GgcOHDC+/PJL4/XXXzeGDBnid1jc3a8DBw4Yd955p3H22Wd7vjdkyBBjxowZnp+n4XD+l19+aXTu3NmQZPTt29e4+eabjRUrVnj9t+bm/m/Z31fj4fzevXuH9N/I2LFjjTPPPNPneE1NTcD/b/wZPXq0py9t2rQxbrrpJq/LI4Zh/v/Wq1cvY+7cuYZhnPpvnksMiYtLDGgR1dXVkvx/Wh4xYoQ6d+7s+XIPWTc0c+ZMn2Nt27b1/LumpkYHDx7Ud77zHRmGoffff1+StH//fm3ZskXTp09XZmamp/2VV16pfv36NdlnwzC0atUq5ebmyjAMHTx40PM1evRoVVVVafPmzV6PmTFjhtq0aeO57x6G/fzzz5t8rWAuvvhibdiwQRs2bNALL7ygBx54QP/5z380btw4zyUV989aUFCg7Oxsz2PPP/98XXnllXrppZckSfX19Vq/fr3y8vJ05plnetp169ZNkydP1r/+9S/P7ysrK0v/+c9/9NlnnzWr/43dfPPNXvcvu+wylZeXe17373//uyR5DZ1L0q233hrW68ybN0+dO3dW165dddlll+njjz/Wb3/7W02aNCngYyZPnqwdO3bonXfe8dz6u7wgSaeddpo++OAD3XzzzaqoqNBjjz2myZMnq0uXLrr//vtlGIZX+7S0NM/vseHXggULvNrt3r07pE/ox44dU2pqqs9x96UNf5fb/FmwYIHWr1+vJ598Updccom++eYbnThxwqfN8ePH/Y4sIDFxiQEtokOHDpLktezL7fHHH9fhw4f11VdfaerUqT7fT0lJ8Xs5YM+ePbr77rtVWlqqiooKr+9VVVVJkv773/9Kkvr06ePz+HPPPdfnDb6hAwcOqLKyUk888YSeeOIJv22+/vprr/u9evXyuu8eym7cv3B16tRJo0aN8twfO3aszj33XE2aNEmLFy/Wrbfe6vlZzz33XJ/Hn3feeVq3bp1qamp0+PBhHT16NGA7l8ulvXv3qn///rrvvvs0fvx4nXPOORowYICuvvpq/ehHP9L555/frJ+nqfOUkZGh//73v3I6nV6XTyTp7LPPDut1fvKTnyg/P1+1tbV6+eWX9Yc//EH19fVNPubCCy9U3759tWLFCmVlZalr1676n//5n4Dtu3XrpkWLFulPf/qTPvvsM61bt06//vWvdffdd6tbt2768Y9/7GnbqlUrr99jc7Vt21Z1dXU+x2traz3fD8XAgQM9/546daouuugiFRQUeJYw7t69W7/5zW/06KOPhnRJDImBgIAWkZmZqW7dumnr1q0+33Nf7w70iSk1NVVOp/dgV319va688kodOnRIP//5z9W3b1+1a9dO+/btU0FBgVwuV7P77H6OqVOnBry+3PiNMtBytcafJKPBfZ36tddeC/uTdaguv/xy7dy5U2vWrNH69eu1ePFi/f73v9djjz3m9cYXrpY6T3369PG8IV9zzTVq1aqVfvGLX+iKK67Q4MGDAz5u8uTJWrRokTp06KBrr73W578/fxwOh8455xydc845Gjt2rPr06aNnnnmmWecpmG7duumVV16RYRhek0P3798vSerevXvYz9mmTRuNGzdOCxYs0LFjx9S2bVvdfffd+ta3vqURI0Z4/j/98ssvJZlBevfu3erVq1dI5wnxg4CAFjN27FgtXrxYb7/9tmcSVaQ++ugjbd++XUuXLtW0adM8x92z693c9RT8DZF/+umnTb5G586d1aFDB9XX10f1U1/DP+TN4R4Cdo/KuH9Wfz/XJ598ok6dOqldu3ZKS0tTenp6wHZOp9NrJUl2drZmzJihGTNm6MiRI7r88st1zz33eN74ovXzNNS7d2+5XC7t2rXLa/Sn4YqQSNx1113685//rF/+8peeyxj+TJ48WXfffbf2798f1uRLtzPPPFMdO3b0vFHHysCBA7V48WJ9/PHHXpfM3JNiG44MhOPYsWMyDEOHDx9W27ZttWfPHu3YscPrkpSb+zJQRUWFsrKyIno92BNxDy3mZz/7mdLT03X99dfrq6++8vl+OJ8e3Z9AGz7GMAw9/PDDXu26deumgQMHaunSpZ7LDpIZJLZt2xb0NSZOnKhVq1b5Hfk4cOBAyP1tqF27dl59idTzzz8vSbrgggskef+sDZeobd26VevXr9f3vvc9SebPddVVV2nNmjVeozZfffWVVqxYoeHDh3tm1JeXl3u9Zvv27XX22Wd7DWu3a9dOkgIui4vE6NGjJUl/+tOfvI4/8sgjzXrerKws3XTTTVq3bp22bNkSsN1ZZ52lhQsXav78+U2G2bfeeks1NTU+x99++22Vl5f7vYwTilCXOY4fP16tW7f2Ok+GYeixxx7Tt771LX3nO9/xHN+/f78++eQTHT9+3HOs8SUyyfw9rlq1Sj179lSXLl0kSb/61a9UXFzs9XX//fdLMv+/Li4u9vx3gMTBCAJaTJ8+fbRixQpdd911Ovfccz2VFA3D0K5du7RixQo5nc6Qlh/27dtXZ511lu68807t27dPGRkZWrVqld9r/fPnz9fYsWM1fPhwXX/99Tp06JAeeeQR9e/f3++ciIYWLFigV155RRdffLFuvPFG9evXT4cOHdLmzZv1j3/8I6JSx4MGDdJzzz2nO+64Q0OGDFH79u2Vm5vb5GP27dunp59+WpL0zTff6IMPPtDjjz+uTp06eV1e+M1vfqMxY8bo0ksv1Q033OBZ5piZmelVO+BXv/qVNmzYoOHDh+uWW25RSkqKHn/8cdXV1emhhx7ytOvXr59GjBihQYMGKTs7W++++65WrlzpVW540KBBkqTZs2dr9OjRatWqVdAKfqGco4kTJ2rhwoUqLy/3LHPcvn27pOaNWsyZM0cLFy7UggUL9OyzzzbZLpjly5frmWee0YQJEzRo0CC1adNGH3/8sf7yl78oLS3NZ0LfiRMnPL/HxiZMmOB5kw11mWOPHj1022236Te/+Y2OHz+uIUOGqKSkRK+//rqeeeYZr0s5c+fO1dKlS7Vr1y7PctcxY8aoR48euvjii9WlSxft2bNHS5YsUVlZmZ577jnPY/0tlXSPFgwZMkR5eXlN9hNxypK1E0hqO3bsMGbOnGmcffbZRlpamtG2bVvPErEtW7Z4tW2q+ty2bduMUaNGGe3btzc6depk3HjjjcYHH3xgSDKWLFni1XbVqlXGeeedZ6Smphr9+vUzVq9e7beSovwsofvqq6+MWbNmGT179jRat25tdO3a1Rg5cqTxxBNPeNoEWvLlXm7XsD9HjhwxJk+ebGRlZfldatlY42WOTqfT6NKli3HdddcZO3bs8Gn/j3/8wxg2bJjRtm1bIyMjw8jNzTW2bdvm027z5s3G6NGjjfbt2xvp6enGFVdcYbzxxhtebX71q18ZQ4cONbKysjy/pwceeMD45ptvPG1OnDhh3HrrrUbnzp0Nh8PhteSx8flsuJywoSVLlhiSjF27dnmO1dTUGLNmzTKys7ON9u3bG3l5ecann35qSDIWLFjQ5DkLVEnRraCgwGjVqpXn/AXqV2NqtMzxww8/NP73f//XuOiii4zs7GwjJSXF6Natm5Gfn29s3rzZ67FNLXNs/LOHuszRMAyjvr7eePDBB43evXsbbdq0Mfr37288/fTTPu3cr9/wdf74xz8aw4cPNzp16mSkpKQYnTt3NnJzc43XXnst6OuyzDHxOQwjBrOnACAGtmzZogsvvFBPP/20p6ImgNhgDgIAW/K3hn/hwoVyOp26/PLLLegRkFyYgwDAlh566CG99957uuKKK5SSkqK1a9dq7dq1+slPfuK1ygJAbHCJAYAtbdiwQffee6+2bdumI0eOqFevXvrRj36ku+66y9ItpIFkQUAAAAA+mIMAAAB8EBAAAICPuL6Q53K5VFZWpg4dOsSk3CsAAInEOFlCu3v37kH3zojrgFBWVsZsZgAAwrR3796gVWvjOiC4txDeu3evp3Y8AABxbepU6YUXpFDWEDgc0jXXSA1LeL/0kjRzplRZKZekOyU92ehh7vfPpsR1QHBfVsjIyCAgAAASQ36+dHIztqAMQ/rBDyT3e2BpqTR5siTJJalQp8KBU9Jjkn6i0PYzietljtXV1crMzFRVVRUBAQCQGGprpe7dpcrKpkcRHA4pK0sqK5PS0rwe5zIMFUpadLKpU9IySbmSMqWQ3jdZxQAAgJ2kpUlLl5r/DvRJ33186VKzvSQVFUkVFQHDQbi7lxAQAACwm9xcqaTEHCGQJPeKA/dtVpa0Zo3Zzq2kRC6HIyrhQIrzOQgAACSscePMywcrV0rFxdKhQ1J2tjRhgjRp0qmRg5NcBw+q0DCiEg4k5iAAABD3XC6XCs8+W4t27ZIUOBxUizkIAAAkBZfLpcLCwqDhIFwEBAAA4pQnHCwyLyxEKxy4nwsAAMQZn3DgdGrZHXdoisMRePVDGAgIAADEGb/hYNkyTfntb4OvfggRqxgAAIiV2lqzPkFJiVReLuXkSHl5ZrXERqsQQhUwHEw5eWGhqdUPV10lnXZaSK/DKgYAAGKhtFQqKJAqKsxP8C7XqduOHc0iRw3rGIQgaDgIIpz3TS4xAAAQbaWl5khBZaV53+Xyvq2slMaPN9uFqLnhIFwEBAAAoqm21hw5kALvpeA+XlBgtg+ipcOBREAAACC6Tu6JEHS7ZsMw261c2WQzK8KBREAAACC6SkpOrRoIxuk0JxIGYFU4kAgIAABEV3n5qbkGwbhc5ioDv9+yLhxIBAQAAKIrJyf0EQRJOnLEZx6C1eFAIiAAABBdeXmhjyBI0rvvSt27S88/L8ke4UCyQUDYt2+fpk6dqpycHLVt21bf/va39e6771rdLQAAIpOfb9Y5CKfc8cllj66SEluEA8niSooVFRUaNmyYrrjiCq1du1adO3fWZ599po4dO1rZLQAAIpeWZhZBGj/eDAmh1CM0DLkkFf7wh1pUVyfJ2nAgWRwQfv3rX6tnz55asmSJ59gZZ5xhYY8AAAggnLLJublmO3clxSBckgol24QDyeJSy/369dPo0aP1xRdfaOPGjfrWt76lW265RTfeeKPf9nV1dao7efIks2Rkz549KbUMAIitSMsm19ZKl11mzjMIwBMOTt53Slr29NMxCQdxU2r5888/16JFi9SnTx+tW7dOM2fO1OzZs7V06VK/7efPn6/MzEzPV8+ePVu4xwCApNOcsslpaVK7dgGf2m84OO88S0cO3CwdQWjTpo0GDx6sN954w3Ns9uzZeuedd/Tmm2/6tGcEAQDQomprzRUGlZVNzyVwOMytlMvKfC83TJxoXm5otLLBbzhwODRlwgRp1apo/QRe4mYEoVu3burXr5/XsfPOO0979uzx2z41NVUZGRleXwAAxEw0yib7WfboNxxImmIY5rbMNmBpQBg2bJg+/fRTr2Pbt29X7969LeoRAAANRKNscqNljwHDgcNhtps0qdndjgZLA8Ltt9+uTZs26cEHH9SOHTu0YsUKPfHEE5o1a5aV3QIAwBSNssnuZY8KEg4ks13jSxQWsTQgDBkyRMXFxfrrX/+qAQMG6P7779fChQttMTkDAJDkamulmprQ2zudUna2/+/l5sq1erUKU1N95xxI5vyFNWv8r4SwiKV1ECTpmmuu0TXXXGN1NwAAOKXhssZQuVwB5w+4XC4Vrl9/qs6BTq5WOO888zGTJtlm5MDN8oAAAICtuJc1hsO9isHP/AG77K0QLgICACC5NayQeOCAtGlTaOWR3ZqYPxCv4UAiIAAAkpm/ConhysryW0kxnsOBREAAACSrxpcSIgkHgwdLr79u/nv5cs8+Da7sbBVWVGjRq69KOjnn4KKLNMXlMkcsbDbfwB9LKyk2VzgVoQAA8Ai1QmIwI0ZIt9/uNQrhcrn8L2UMZe+GGIubSooAAFgi1AqJTXE6zaDRYJ+GgOHA/KZ5sKm9G2yEgAAASD7hVEgMxOWSPvzQ/LdhBC6C1Phx7lBSUGAGDJsiIAAAkk84FRIDSU+Xjh4NLxy4NbV3g00QEAAAyScnp/kjCD16mHMOFGY4cHM4/O/dYBMEBABA8vGzw2LYtm9ves5BMIYhbd/evD7EEAEBAJB8Gu2wGImIRw4a+vRT285DICAAAJJPgx0WIwkJUQkHknT8uG3nIRAQAADJKTfXXM2QlRXWw6IWDiRbz0MgIAAAkte4cVJZmVnsKARRDQeSOQ/h0KFIHx1TlFoGACS2hpsxlZebIwZdu0pffmkWLcrKkjZsCPo0UQ8HkrmSIju7Oc8QMwQEAEDiCmUzJocjaEXFmIQDyezPhAnNfZaYICAAABJTaalZ0tgt0LJGq8KBw2GOXkya1NxnignmIAAAEk9trTR5crOfJqbhQDJXUth0Z0cCAgAg8cydK9XUNOspohIO3EHAXbXRfZuVJa1ZY8mOjqHiEgMAILHU1kqPPtqsp4jayEFGhvTHP5pLGQ8dMickTphgXlaw6ciBGwEBAJBYiorMAkQRiuplhXbtpKlTza84Q0AAACSWkpKIHxr1OQfjxkXcl2ZrvLwzJ0caPTrkhxMQAACJ5cCBiB4W9XDgcEjz50f66Obxt7zT6ZRWrw75KQgIAIDEcuxY2A+JyWqFu+4Ku4xzVJSWmrtVurmXd4a5eyWrGAAASS0m4eCXv5Tuv7+ZPYtAba05ciAFre8QDCMIAIDE0rZtyE1jEg6eeSYqNRgiUlRkXlaIAkYQAACJJcQVDDEJBw6HVFhofpK3QknJqVoLzURAAADEv9paafly6dJLpU2bgjaPWYVEwzA/wa9c2dxnikx5edhzDQIhIAAA4ltpqdS9uzRtmrXhwM3pNAsjWSEnhxEEAAA8M/YrK0NqHvNwIJmf4A8diuYzhi4vjxEEAECSC3PGfouEA8n8BJ+dHe1nDU1+vtSx46k9IJqBgAAAiE/uGfvRDAdReGOVy2Xut2CFtDRzh0ip2T8LAQEAEJ9KSkJ6Ewxr5KCZtQPkcJif4CdNat7zNEdurnlu3EWaGu8kGSLqIAAA4lN5edA39IgvKzgckYeFpUut36lx3DiprMxcTdFwJ8mrr5Z+8pOQnoKAAACITzk5TX67WXMODEO64grplVdC7096uvTss+YneDtIS/PdSbK6OuSAwCUGAEB8arjfQCPNnpDodEoZGaFP+EtPl/bts084iAICAgAgPuXnS61b+xyOymoFl0uqqgo+4c/hML+efdaajZliiIAAAIhPaWlmWeMGoraU0b1UMdiEv6wsac2ahBo5cHMYRnOnbFqnurpamZmZqqqqUkZGhtXdAQC0tNpaqVMnqaam6XDgcJibOB09GvpzL19+6vp9ba3vhL8JE8zVClZPSAxDOO+bBAQAQHx7/nm5xo1rOhxIZt2EG280qy429dbncJgjA2VlcfXmH4pw3je5xAAAiGuusWNVOGaMbzhofBlg4sTQ5hRI9liqaDGWOQIA4pbL5VJhYaEWrV0rSXI6HFo2aJCmtG/v/zKAe05BQYFZhdHpNCckum+zssxwkIBzCsJFQAAAxCVPOFhkjh04nU4tW7ZMU6YEmZIYqIhQHM4piCXmIAAA4k7E4SDJMQcBAJCwCActg4AAAIgbhIOWQ0AAAMQFwkHLIiAAAGyPcNDyCAgAAFsjHFiDgAAAsC3CgXUICAAAWyIcWIuAAACwHcKB9QgIAABbIRzYAwEBAGAbhAP7ICAAAGyBcGAvBAQAgOUIB/ZDQAAAWIpwYE8EBACAZQgH9kVAAABYgnBgbwQEAECLIxzYHwEBANCiCAfxgYAAAGgxhIP4YWlAuOeee+RwOLy++vbta2WXAAAxQjiILylWd6B///76xz/+4bmfkmJ5lwAAUUY4iD+WvxunpKSoa9euIbWtq6tTXV2d5351dXWsugUAiBLCQXyyfA7CZ599pu7du+vMM8/UlClTtGfPnoBt58+fr8zMTM9Xz549W7CnAIBwEQ7il8MwDMOqF1+7dq2OHDmic889V/v379e9996rffv2aevWrerQoYNPe38jCD179lRVVZUyMjJasusAgCAIB/ZTXV2tzMzMkN43LQ0IjVVWVqp379763e9+pxtuuCFo+3B+UABAyyEc2FM475uWX2JoKCsrS+ecc4527NhhdVcAABEiHCQGWwWEI0eOaOfOnerWrZvVXQEARIBwkDgsDQh33nmnNm7cqN27d+uNN97QhAkT1KpVK1133XVWdgsAEAHCQWKxdJnjF198oeuuu07l5eXq3Lmzhg8frk2bNqlz585WdgsAECbCQeKxNCA8++yzVr48ACAKCAeJyVZzEAAA8YVwkLgICACAiBAOEhsBAQAQNsJB4iMgAADCQjhIDpZv1gQAiAO1tVJRkVzFxSp86y0tKiuTRDhIZAQEAEDTSkulggK5KipUKGnRycNOScvS0jSFUvcJiUsMAIDASkulvDz/4UDSlGPHpPHjzXZIKAQEAIB/tbXmyIFh+A8HkuTe76+gwGyPhEFAAAD4V1QUeOSgYTvDkCoqpJUrW7qHiCECAgDAL1dxcfBw4OZ0SsXFLdU1tAACAgDAh8vlMlcrnLzfZDgwHyAdOtQifUPLICAAALx46hy4lzIqSDiQzBGE7OwW6B1aCgEBAODhUwRJIYQD84HShAkx7h1aEgEBACApQIXE9HRNcTiafqDDIXXsKE2a1AK9REshIAAAApdPfvZZs0GgkOA+vnSplJbWAj1FSyEgAECSa3JvhdxcqaREysrSyW9632ZlSWvWmO2QUCi1DABJLKSNl8aNk8rKzDoHxcXmaoXsbHPOwaRJjBwkKIdhuMtgxZ/q6mplZmaqqqpKGdQCB4CwsCtj8gnnfZNLDACQhAgHCIaAAABJhnCAUBAQACCJEA4QKgICACQJwgHCQUAAgCRAOEC4CAgAkOAIB4gEAQEAEhjhAJEiIABAgiIcoDkICACQgAgHaC4CAgAkGMIBooGAAAAJhHCAaCEgAECCIBwgmtjNEQDsqLZWKioyt1ouL5dycqS8PCk/3+/uiYQDRBsBAQDsprRUKiiQKiokp1Nyuczb1aulOXOkpUul3FxPc8IBYoFLDABgJ6Wl5khBZaV53+Xyvq2slMaPN9uJcIDYISAAgF3U1pojB5JkGP7buI8XFMh19CjhADHDJQYAsIuiIvOyQjCGIVdFhQrHjdOif/5TEuEA0ccIAgDYRUmJOdcgCJekQolwgJgiIACAXZSXn5prEIAnHJy8TzhArBAQAMAucnKaHEHwCQcS4QAxQ0AAALvIyws4guA3HNx8M+EAMUNAAAC7yM+XOnaUHA6vw37DQXq6pvz+9y3cQSQTAgIA2EVamlkESfKEBL/hQNKUZ5/1W1ERiBYCAgDYSW6uuZohKyvwyEFpqVclRSAWCAgAYDfjxsn1xRcqHDnSd85BeTnhAC2CQkkAYDMul0uFd95JnQNYihEEALAR9laAXRAQAMAmCAewEwICANgA4QB2Q0AAAIsRDmBHBAQAsBDhAHZFQAAAixAOYGcEBACwAOEAdkdAAIAWRjhAPCAgAEALIhwgXhAQAKCFEA4QTwgIANACCAeINwQEAIgxwgHiEQEBAGKIcIB4RUAAgBghHCCeERAAIAYIB4h3BAQAiDLCARIBAQEAoohwgERhm4CwYMECORwO3XbbbVZ3BQAiQjhAIrFFQHjnnXf0+OOP6/zzz7e6KwAQEcIBEo3lAeHIkSOaMmWK/vznP6tjx45WdwcAwkY4QCKyPCDMmjVLY8eO1ahRo4K2raurU3V1tdcXAFiJcIBElWLliz/77LPavHmz3nnnnZDaz58/X/fee2+MewUAoSEcIJFZNoKwd+9ezZkzR88884zS0tJCeszcuXNVVVXl+dq7d2+MewkA/hEOkOgchmEYVrxwSUmJJkyYoFatWnmO1dfXy+FwyOl0qq6uzut7/lRXVyszM1NVVVXKyMiIdZcBQBLhAPErnPdNyy4xjBw5Uh999JHXsRkzZqhv3776+c9/HjQcAIAVCAdIFpYFhA4dOmjAgAFex9q1a6ecnByf4wBgB4QDJBPLVzEAQDwgHCDZWLqKobFXX33V6i4AgA/CAZIRIwgA0ATCAZIVAQEAAiAcIJkREADAD8IBkh0BAQAaIRwABAQA8EI4AEwEBAA4iXAAnGKrZY4AYJWoh4PaWqmoSCopkcrLpZwcKS9Pys+XQtx/BrASAQFA0ot6OCgtlQoKpIoKyemUXC7zdvVqac4caelSKTc3ej8AEANcYgCQ1GISDvLypMpK9wt431ZWSuPHm+0AGyMgAEhaMbmsUFBg/jvQRrnu4wUFZnvApggIAJJSTCYkFhWZlxUChQM3wzDbrVwZ+Wslm9paaflyaeJEacQI83b5ckJWDBEQACSdmK1WKCkx5xqEwumUioub93rJorRU6t5dmjbNPMcbN5q306aZx59/3uoeJiQCAoCkEtOljOXlp+YaBO+IdOhQ818z0TGnwzIEBABJI+Z1DnJywhtByM6OzusmKuZ0WIqAACAptEgRpLy88EYQJkyI3msnIuZ0WIqAACDhtViFxPx8qWNHyeFoup3DYbabNCm6r59omNNhKQICgITWouWT09LMIkhS4JDgPr50KRUVg2FOh6UICAASliV7K+Tmmp98s7J08kW9b7OypDVrqKQYCuZ0WIpSywASkqUbL40bJ5WVmdfEi4vNT7bZ2eacg0mTGDkIVV6eWZ46FMzpiDqHYQSb/WFf1dXVyszMVFVVlTIyMqzuDgCbYFfGBFFba9Y5qKxseqKiw2GOzJSVEb6CCOd9k0sMABIK4SCBMKfDUgQEAAmDcJCAmNNhGeYgAEgIhIMExpwOSzAHAUDc8xsOFi/WlJQU89Nnebk5Iz4vz6xVwBsKklQ475sEBABxzW84mDNHU556yqyu53SaM9zdtx07mterGZJGEmKSIoCkEDAcLFzI5j5AMxEQAMSlgJcVnnrKbMDmPkCzEBAAxJ2AExJTUtjcB4gSAgKAuNLkagU29wGihoAAIG4EXcrI5j5A1BAQAMSFkOocsLkPEDUEBAC2F3IRpLy88EYQ2NwHCIiAAMDWwqqQmJ9v1jkIVLffzeEw202aFIMeA4mBgADAtsIun8zmPkDUEBAA2FLEeyuwuQ8QFWzWBMB2mr3xEpv7AM3GXgwAbIVdGYHYYS8GAHGJcADYBwEBgC0QDgB7ISAAsBzhALAfAgIASxEOAHsiIACwDOEAsK+Qlzn+4Q9/CPlJZ8+eHVFnACQPwgFgbyEvczzjjDO87h84cEBHjx5V1sliJJWVlUpPT1eXLl30+eefR72j/rDMEYhPhAPAGjFZ5rhr1y7P1wMPPKCBAwfq448/1qFDh3To0CF9/PHHuuiii3T//fc3+wcAkLgIB0B8iKhQ0llnnaWVK1fqwgsv9Dr+3nvvadKkSdq1a1fUOtgURhCA+EI4AKwV80JJ+/fv14kTJ3yO19fX66uvvorkKQEkOMIBEF8iCggjR47UTTfdpM2bN3uOvffee5o5c6ZGjRoVtc4BSAyEAyD+RBQQ/vKXv6hr164aPHiwUlNTlZqaqqFDh+q0007T4sWLo91HAHGMcADEp4h2c+zcubNeeuklbd++XZ988okkqW/fvjrnnHOi2jkA8Y1w0ITaWqmoyNyaurxcysmR8vKk/Hx2m4QtNGu759NPP12GYeiss85SSgo7RwM4hXDQhNJSqaBAqqiQnE7J5TJvV6+W5syRli6VcnOt7iWSXESXGI4ePaobbrhB6enp6t+/v/bs2SNJuvXWW7VgwYKodhBA/CEcNKG01BwpqKw077tc3reVldL48WY7wEIRBYS5c+fqgw8+0Kuvvqq0BkNho0aN0nPPPRe1zgGIP4SDJtTWmiMHkhRohbn7eEGB2R6wSEQBoaSkRH/84x81fPhwORwOz/H+/ftr586dUescgPhCOAiiqMi8rBCs/IxhmO1WrmyZfgF+RBQQDhw4oC5duvgcr6mp8QoMAJIH4SAEJSXmXINQOJ1ScXFMuwM0JaKAMHjwYL344oue++5QsHjxYl166aXR6RmAuEE4CFF5+am5BsG4XNKhQ7HtD9CEiJYePPjggxozZoy2bdumEydO6OGHH9a2bdv0xhtvaOPGjdHuIwAbIxyEISfn1KqFYJxOKTs79n0CAohoBGH48OH64IMPdOLECX3729/W+vXr1aVLF7355psaNGhQtPsIwKYIB2HKywtvBGHChJh2B2hK2Js1HT9+XDfddJP+7//9vz5bQLc0NmsCrEM4iEBtrdS9u7mUsak/vQ6HlJUllZVRNAlRFdPNmlq3bq1Vq1ZF3DkA8Y9wEKG0NLMIkmSGAH/cx5cuJRzAUhFdYsjLy1NJSUmUuwIgHhAOmik311zNkJVl3nevanDfZmVJa9ZQSRGWi2iSYp8+fXTffffp3//+twYNGqR27dp5fX/27NlR6RwAeyEcRMm4ceblg5UrzaWMhw6ZExInTJAmTWLkALYQ9hwESU3OPXA4HPr8889Dep5FixZp0aJF2r17tySz0NLdd9+tMWPGhPR45iAALYdwAMS/cN43IxpB2LVrl+ff7nwRSYGkHj16aMGCBerTp48Mw9DSpUs1fvx4vf/+++rfv38kXQMQA4QDIPlENAdBkp588kkNGDBAaWlpSktL04ABA7R48eKwniM3N1ff+9731KdPH51zzjl64IEH1L59e23atCnSbgGIMsIBkJwiGkG4++679bvf/U633nqrp3Lim2++qdtvv1179uzRfffdF/Zz1tfXq6ioSDU1NQGrMdbV1amurs5zv7q6OpLuAwgR4QBIYkYEOnXqZKxYscLn+IoVK4ycnJywnuvDDz802rVrZ7Rq1crIzMw0XnzxxYBt582bZ0jy+aqqqgr7ZwDQtPr6emPmzJme/8+cTqfx9NNPW90tAM1QVVUV8vtmRJcYjh8/rsGDB/scHzRokE6cOBHWc5177rnasmWL3nrrLc2cOVPTp0/Xtm3b/LadO3euqqqqPF979+6NpPsAgmDkAEBEqxhuvfVWtW7dWr/73e+8jt955506duyYHn300Yg7NGrUKJ111ll6/PHHg7ZlFQMQfYQDIHHFfBWDZE5SXL9+vS655BJJ0ltvvaU9e/Zo2rRpuuOOOzztGoeIYFwul9c8AwAth3AAwC2igLB161ZddNFFkqSdO3dKkjp16qROnTpp69atnnbBlj7OnTtXY8aMUa9evXT48GGtWLFCr776qtatWxdJtwA0A+EAQEMRBYRXXnklKi/+9ddfa9q0adq/f78yMzN1/vnna926dbryyiuj8vwAQkM4ANBYxJcYouHJJ5+08uUBiHAAwL+ICyUBiH+EAwCBEBCAJEU4ANAUAgKQhAgHAIIhIABJhnAAIBQEBCCJEA4AhIqAACQJwgGAcBAQgCRAOAAQLgICkOAIBwAiQUAAEhjhAECkLK2kCCB2CAeAH7W1UlGRVFIilZdLOTlSXp6Uny+lpVndO1shIAAJiHAA+FFaKhUUSBUVktMpuVzm7erV0pw50tKlUm6u1b20DS4xAAmGcAD4UVpqjhRUVpr3XS7v28pKafx4sx0kERCAhEI4APyorTVHDiTJMPy3cR8vKDDbg4AAJArCARBAUZF5WSFQOHAzDLPdypUt0y+bIyAACYBwADShpMScaxAKp1MqLo5pd+IFAQGIc4QDIIjy8lNzDYJxuaRDh2LbnzhBQADiGOEACEFOTngjCNnZse1PnCAgAHGKcACEKC8vvBGECRNi2p14QUAA4hDhAAhDfr7UsaPkcDTdzuEw202a1DL9sjkCAhBnCAdAmNLSzCJIUuCQ4D6+dCkVFU8iIABxhHAARCg311zNkJVl3nfPSXDfZmVJa9ZQSbEBSi0DcYJwADTTuHFSWZlZ56C42FytkJ1tzjmYNImRg0YchhGscoR9VVdXKzMzU1VVVcrIyLC6O0DMEA4AREM475tcYgBsjnAAwAoEBMDGCAcArEJAAGyKcADASgQEwIYIBwCsRkAAbIZwAMAOCAiAjRAOANgFAQGwCcIBADshIAA2QDgAYDcEBMBihAMAdkRAACxEOABgVwQEwCKEAwB2RkAALEA4AGB3BASghREOAMQDAgLQgggHAOJFitUdsK3aWqmoSCopkcrLpZwcKS9Pys9nz/BQcQ69xFU44HcHJD2HYRiG1Z2IVDj7WoeltFQqKJAqKiSnU3K5Tt127CgtXSrl5kbv9RIR59BLXIUDfndAwgrnfZNLDI2VlpqflCorzfsul/dtZaU0frzZDv5xDr3EXTjgdwdAjCB4q62Vunc3/wg2dVocDikrSyorY7i1Mc6hl7gKB/zugITHCEKkiorMYdVgmckwzHYrV7ZMv+IJ59AjrsKBxO8OgBcCQkMlJea11lA4nVJxcUy7E5c4h5LiMBxI/O4AeCEgNFRefupaazAul3ToUGz7E484h/EZDiR+dwC8EBAayskJ7xNUdnZs+xOPkvwcxm04kJL+dwfAGwGhoby88D5BTZgQ0+7EpSQ+h3EdDqSk/t0B8MUqhoaYxd18SXoO4z4cSEn7uwOSCasYIpWWZhaBkcw/gv64jy9dyh9Hf5LwHCZEOJCS8ncHIDACQmO5ueZs7qws8777mqz7NitLWrOGSnJNSaJzmDDhwC2JfncAmsYlhkBqa8113sXF5mzt7GzzmuukSXxyClWCn8OECwcNJfjvDkhW4bxvEhCACCR0OACQsJiDAMQQ4QBAMiAgAGEgHABIFgQEIESEAwDJhIAAhIBwACDZEBCAIAgHAJIRAQFoAuEAQLIiIAABEA4AJDMCAuAH4QBAsiMgAI0QDgCAgAB4IRwAgImAAJxEOACAUywNCPPnz9eQIUPUoUMHdenSRXl5efr000+t7BKSFOEAALxZGhA2btyoWbNmadOmTdqwYYOOHz+uq666SjU1NVZ2C0mGcAAAvmy1m+OBAwfUpUsXbdy4UZdffnnQ9uzmiOYiHABIJuG8b6a0UJ9CUlVVJUnKzs72+/26ujrV1dV57ldXV7dIv5CYCAcAEJhtJim6XC7ddtttGjZsmAYMGOC3zfz585WZmen56tmzZwv3EomCcAAATbPNJYaZM2dq7dq1+te//qUePXr4beNvBKFnz55cYkBYCAcAklXcXWIoLCzUCy+8oNdeey1gOJCk1NRUpaamtmDPkGgIBwAQGksDgmEYuvXWW1VcXKxXX31VZ5xxhpXdQYIjHABA6CwNCLNmzdKKFSu0Zs0adejQQV9++aUkKTMzU23btrWya0gwhAMACI+lcxAcDoff40uWLFFBQUHQx7PMEaEgHACAKW7mINhkfiQSGOEAACJjm2WOQLQRDgAgcgQEJCTCAQA0DwEBCYdwAADNR0BAQiEcAEB0EBCQMAgHABA9BAQkBMIBAEQXAQFxj3AAANFHQEBcIxwAQGwQEBC3CAcAEDsEBMQlwgEAxBYBAXGHcAAAsUdAQFwhHABAyyAgIG4QDgCg5RAQEBcIBwDQsggIsD3CAQC0PAICbI1wAADWICDAtggHAGAdAgJsiXAAANYiIMB2CAcAYD0CAmyFcAAA9kBAgG0QDgDAPggIsAXCAQDYCwEBliMcAID9EBBgKcIBANgTAQGWIRwAgH0REGAJwgEA2BsBAS2OcAAA9kdAQIsiHABAfCAgoMUQDgAgfhAQ0CIIBwAQXwgIiDnCAQDEHwICYopwAADxiYCAmCEcAED8IiAgJggHABDfUqzuABIP4cACtbVSUZFUUiKVl0s5OVJenpSfL6WlWd07AHGIgICoIhxYoLRUKiiQKiokp1Nyuczb1aulOXOkpUul3FyrewkgznCJAVFDOLBAaak5UlBZad53ubxvKyul8ePNdgAQBgICooJwYIHaWnPkQJIMw38b9/GCArM9AISIgIBmIxxYpKjIvKwQKBy4GYbZbuXKlukXgIRAQECzhBwOamul5culiROlESPM2+XL+VTbHCUl5lyDUD38MOcbQMgICIhYyOGgtFTq3l2aNs18U9u40bydNs08/vzzLd73hFBefmquQSjefZfzDSBkBAREJKxwwCS62MjJCW8EQeJ8AwgZAQFhC+uyApPoYicvL7wRBInzDSBkBASEJawJiUyii638fKljR8nhCO9xnG8AISAgIGRhr1YIZxKd0ykVF0eno8kiLc0sgiSFHxI43wCCSIyAMHUqM+JjLKKljOFMonO5pEOHotDTJJObawaxrKzwHsf5BhBEYgSEF15gRnwMRVznIJxJdE6nlJ3dzJ4mqXHjpLIyafDg0B/D+QYQRGIEBPc1bmZohy9IfYKww0HD59u2LbwRhAkTovADJam0NGn27NDbc74BBOEwjGAzyOyrurpamZmZqpKU4T7ocJjDrWVl7GLXkL/d/nr1kp56ygxWDTf5cbmkjh3lWrJEhevWhR4O/G0aFAp+Z9FRW2uOolVWNj0xlPMNJC3P+2ZVlTIyMppsm3i7OTacoT11qtW9sQd/b9wOh/ebSKP6BK6KChXm5WnRyW+HFA7y8nyfLxj35LqlS3mzai73pMXx431/v26cbwAhSoxLDI0xQ/uUQIWKmviE6ZJUKIUeDkKpd9CYe25CVpa0Zg3bEUdL40mL7vPM+QYQpsQbQZCYoe0WwRu3TziQtOwnP2l6QqK73kGo+vaV+vUzr4FPmsQn2WhzT1pcudIMyocOmRMSOd8AwpCYAYEZ2qYw37j9hgOHQ1O+/rrpB7rrHYRyWcHpNMPBqlUh9wsRSEszL7FxmQ1AhBIzIDBD2xTGG7ffcCBpimEEH42h3oE9+JuImpdnVlxk1ABAmBIvILhnaE+aZHVPrBfiG3fAcCCFNhrjrncQ6ggCozvR528iqtMprV4tzZljTkpk3gGAMCTWJEVmaHsLoVBRk+FACm00JpxNgxjdiT52zAQQA4lRB8HhUIZhmBvX8EnplOXLzQqTAQQNB6Gul0/U9ffxMGSfqOceQEyEUwchMUYQBg40y8wOGGAW/mFfBlMTu/2FFA6k0EZjQtk0KN5Gd0pLzTfeadPMgLBxo3lrt5Le7JgJIEYSIyC8/760ebP0+ust80c8SHli2wjwxh10zoEU/nr5RFp/H09D9uyYCSBGEuMSgxqUWnZzvyGWlJjrwqMl0GSwk+WJbXmJo0GfXQ6HCg3DOxxcfbWmpKdHZ718bW18r7+PtyH7ESPM0Y1w2r/ySqx6A8DmkrvUspthmH/ECwqi90c8UDnhxp8sox1Kmutk4RzX3/6mwnvu0aJduyRJTodDy558UlNmzIjea8X7+vtQa0fYpaQ3K0gAxEhiXGIIJJrXXUOpSug+XlBgu8sNrjZtVLhp06lw4HRq2fLl0Q0HiSDehuxZQQIgRiwNCK+99ppyc3PVvXt3ORwOlZSURP9FovVHPI4ng4W9ZXMyi7eiT01MRPXicJjtqA8CIESWBoSamhpdcMEFevTRR2P3ItH6Ix5vnyxPIhyEKYTaER52GLJPxBUkAGzB0jkIY8aM0ZgxY2L7ItH6Ix5vnyxFOIhIXp5ZfTAUdhmyd68gCTR5NivLnpNnAdhaXE1SrKurU11dned+dXV18Ae5XNK2beZSxOYUuYmzyWAxDQfhFhCKh4JDbvn5ZmniUFcx2GXInh0cAUSbYROSjOLi4ibbzJs3z5Dk81Vl/ilv+svpNG87djSM0tLwO7hsWfDXaPi1fHlkJyIK6uvrjZkzZ3rOj9PpNJ5++unoPPmaNeY5bHhOmzq34ba3g9JSw3A4zC9/v1v39+zYdwBoQlVVlfm+WVUVtG1cBYTa2lqjqqrK87V3797QA0LjP+5r1oTXwWPHzDe0QG8aDZ+/Y0ezvQWaDAfHjplB5/vfN4zvfte8XbYs9L6uWRPaG6f73Ibb3k7iMdgAQBDhBATbFEpyOBwqLi5WXsM6A0E0WSip6ReLrMjN88+bdQ4k/8PP7slgFlUMbPKyQsMCTw6Hd//T06Vly8zLMIGEW0Do88+lM8+Mn4JD/sR70ScAaCT59mIIV6RLEW1cTjhoOMjLO1UAqPEb9tGj5pveL38Z+AXCXeb5i1/E7bJQD3fRp1WrzOqDq1aZ9wkHAJKApQHhyJEj2rJli7Zs2SJJ2rVrl7Zs2aI9e/bE/sUjXYrongy2fLn5pjtihHm7fLl53G7hwF3gKZSBogceCPxGHc4yT8kMFHG4LBQAYLJ0FcO7776rK664wnP/jjvukCRNnz5dTz31VGxfvDlLEW1UTjjoaoVQSwe7TZ8uXXON76fkcJZ5SuGdW5ssCwUAnGJpQBgxYoQsmwJhg6WIzRXSUsaSEt85B005etT//gI5OeE9jxR6+wT4XQBAoknOOQiSfYrcRCjkOgfl5eG9qUv+h/vz8sJ/nlDbx/nvAgASUXIGhDivSx9WEaScnPBfwN9wf36+lBLmgFNKCnsEoPlqa805PhMnmnN+Jk4079tsQzQg0SRWQHC/GTkc9q1L38w/dmFXSAxj2agk8/z4G+5PS5OGDAn9eZzOU+3t+ruA/ZWWmstrp00zL5dt3GjeTptmHn/+eat7CCSuWBdliCVPwQd3IR53ARu7FrlpZr8iqpB47JhhpKdHpwpkJNUk7fq7gP3Fc6EtwKbislBSJDwFH3JzlfGDH3gXsLFbkRt3LQKp6SJLJSXmUspGmrW3wqpVoQ3hByta5C6WFGxVROPnsdvvAvYXbmEuOxbaAmwonEJJiTGCEEISslQzyzRHZW+Fu+4KrQR1sE/07FOAlhBHe58A8SSc983EmoNgV+FWIWxQrChquzL+6ldmP9LTvY+7Ry5CrQJp42qSSCDhFOai0BYQE3G13XOzWLnlsPuPXahbRRcXS1OnRn/L5muukf7wB+mxx6Tdu81jp58u3XKLdN11oZ8HthZGrIVTmItCW0BMJEdAaLhRkfuN2umUVq+W5swxZ9HH8hNvuH/sXntNru9+V4V792rRrl2SohAOAp2Dgweln/5U6tQpvHNgo2qSSEA5OeGFagptAVGX+JcY3JMDKyvN++4/OO7bykpzh8bS0tj1wf3HLkSugwdV+Nprp8KBpGW33da8cBDqOWDNOewgLy+8UE2hLSDqEmMVQ6DZmHaZCb18ubluOwQuSYWSFp2875S0TNIUhyPgCocmhXMO0tOl1q3Ntg1HGVwus5hRrEdaADe7/L8LJBi2e3ZrxuTAqMrPN99gg1QVDBgO3A0KCsL/JB/OOaipsXakBXBLSzMDqUShLcAiiR0Q7DITOoQ/dkHDQaQhJtxtmgNxB4xIQgoQCVbMAJZK7IAQrZnQ0bgu3/iPXYOgEDQcuEUSYsLdprkp/kIKcxYQS+4VM8uXm/MSRowwb5cvN48TDoDYiXlVhhgKWvDh+98/VdY32JfTabZvLNqlgo8dM4wnnzSM1q0NQzLqJWPmyQJIkgynZDzdVD9HjAjv9cI5B+GeJ8ooA0BcoVCSW3NnQsdiBURamjkR8Pjx0EcO3CJZzhXOOQiFe6TFDqtDAAAxk9gBIcTJgX63HK6tNa+3S4En+EV6Xb6kRC6HI7xwIEW2nCvUcxAqp1PKzIzduQEA2EJiB4TmzISO4QoI18GDKjSM8MKBvxATilDOQThcLqlrV3usDgEAxExiBISpUwNPjIt0JnSMVkC4XC6zQqL7oQohHLhFupwrlHPQrl3oIy1ffmmP1SEAgJhJjIDwwgtmIaLu3aXnn/f9fiQzoWNQC96zt0LDCokKIRykp/uGmHBXDzR1Dvbvl/76V7NdKCMtlZXUyQeARNcCkyZjxjMbs/FWw2vWNP/Jo7ECogGfLZuDrVZwf6WnG0ZFhfeT+Vs94N5+OSXFMC691Nwut9G20UGFuiohyucGANAykncVQzQnxkWxFrzfXRnvuMMsn9zUJ3aHQ3r22VOXBqTAqwfcP/uJE9KbbzY9ohJIqCMt1MkHgISXGHsxSPKpKL18efN2GoxSLfgmt2wOtMNioL0PQu1T4/5FsodDU6iTDwBxib0YojExLgq14JsMB1L4cyNCXVnRWLSXGlInHwASXmIGhGhNjGtGLfig4cAtLc0c6Vi1SnrlFfN26lT/b6qR7KsQq6WG1MkHgISWYnUHYsLhCL/iYCDuT/krV5qjEocOmc89YYJZkyCSkYNIRbqvgntEpTmXXPyJ4NwAAOJDYgYEw5DGjo3e87k/5YfwBhuzcCBJOTmn5iiEI5ZLDcM4NwCA+JGYlxik6JUWDkNMw4EU+b4KkezhAABIaokZEBwOs3hSuJqxdXHMw4EU+b4KLDUEAIQpMQOCYYQ/pF5aai7dmzbNnHy3caN5G0I9gRYJB1Jk+ypEuocDACCpJWZACHdI3V18qKLCvB/G1sUtFg7cGq8eaApLDQEAEUrMgBDOkHptrTR5ctO1BQJUaGzxcODWsH7CpZdKKSfnmroDAUsNAQDNlHiVFMOt3nf77dLChaG/6MkKjZaFA39qa1lqCAAIKpxKiokZEEL91FxbK2VkSMePh/aCTqeUlydXUZF9wgEAACFK7lLL7n0EQ1FUFHo4kCSXS67ycsIBACDhJWahpMmTpYMHgw+vl5SE9bQuSYV79mjRxo2SCAcAgMSVeCMIklRTI61YEbxdeXnIT+mSVChp0a5dkggHAIDElpgBQZIefTR4m5yckOoJeMLByfuEAwBAokvcgLB9e/A2eXlB5ysQDgAAyShxA8I33wRvE6R0MeEAAJCsEjcgtG4dvE0TpYsJBwCAZJa4AaFTp9DaNS5d7HQSDgAASS9xA0JOTuhtG5Qudo0fr8Lu3b3DweLFmuJyRbTLIwAA8Sgx6yBIUvv24bVPS5Nr8mQVvvGGFpWVSToZDubM0ZSf/tTcyMnpNPd5cDql1aulOXPMSxQtuddBba1Z4KmkxFymmZNjTrbMz6esMgAgahJzBMHhCP0Sw0l+91aYM0dTFi40d3M0G3nfNrHLY0w0Y0tqAADCkZgBwTBC381RAcLB4sWa8tRTp54v0OtIPrs8xoR7S2q7hBUAQEJLvIDgcJhLFydNCql5wF0ZU1LMywrB9nUwDLPdypXN7XlgtbVmCHG/XqB+SC0TVgAACS/xAoJhSLfcEtL1+Ca3bC4pMecahMLpNLdajpWiIvuEFQBAUki8gCBJf/pT0E/RTYYDyZwA6B6+D8blkg4dak6Pm2ansAIASAqJGRCCfIoOGg4kc3VAOG/K2dnN6XHT7BRWAABJITEDgsMR8FN0SOFAMicEhvOmHMakyLDZKawAAJJCYgYEw5AOHPA5HHI4kILu0+AR5qTIiNgprAAAkkJiBgRJOnbM625Y4UBqcp8GD/fxpUtjW6TITmEFAJAUEjcgNBB2OHDzs0+D121WlrRmTewrKdoprAAAkkLillpOT5fUjHDg5t6nYeVKc17DoUPmNf4JE8xP6i31ZuwOKwUFvmWfXS4zrLR02WcAQMJKzIBwstRys8OBW1qaNHWq+WWlaIcV9nUAAATgMIxg1Xfsq7q6WpmZmaqSlNHoe66lS1W4aVPzw0GiKi0NPBrRsSOjEQCQgDzvm1VVysho/M7pLSHnILgkFb78MuEgEPZ1AAAEkXAjCC5JhZIWnbxPOGikttbc+bGysunSzQ6HOa+hrIzLDQCQIJJ2BIFwEAL2dQAAhCBhAoJPOJAIB/6wrwMAIAQJERD8hgOJcOAP+zoAAEJgi4Dw6KOP6vTTT1daWpouvvhivf3222E9/k75CQfBqg4mK/Z1AACEwPKA8Nxzz+mOO+7QvHnztHnzZl1wwQUaPXq0vv7665Cf48mTt55wIEkpiVniodnY1wEAEALLVzFcfPHFGjJkiP74xz9KMisf9uzZU7feeqt+8YtfNPlY92xMqVE4kKROnfxu2JT0WMUAAEkrnFUMln7M/uabb/Tee+9p7ty5nmNOp1OjRo3Sm2++6dO+rq5OdXV1nvtVVVWefz8mKVdStftAWppUXS34sWiR9MMfNt3GMMx233xjfgEA4l71yffFUMYGLA0IBw8eVH19vU477TSv46eddpo++eQTn/bz58/Xvffe6/e5fnLyy+OLL6STowuIULAQAQCIS4cPH/aMwAcSVxfq586dqzvuuMNzv7KyUr1799aePXuC/qDJqrq6Wj179tTevXuDDiclK85RcJyj4DhHTeP8BNcS58gwDB0+fFjdu3cP2tbSgNCpUye1atVKX331ldfxr776Sl27dvVpn5qaqtTUVJ/jmZmZ/AcXREZGBucoCM5RcJyj4DhHTeP8BBfrcxTqB2pLVzG0adNGgwYN0j//+U/PMZfLpX/+85+69NJLLewZAADJzfJLDHfccYemT5+uwYMHa+jQoVq4cKFqamo0Y8YMq7sGAEDSsjwgXHvttTpw4IDuvvtuffnllxo4cKD+/ve/+0xc9Cc1NVXz5s3ze9kBJs5RcJyj4DhHwXGOmsb5Cc5u58jyOggAAMB+LK+kCAAA7IeAAAAAfBAQAACADwICAADwEdcBobnbRCey1157Tbm5uerevbscDodKSkqs7pKtzJ8/X0OGDFGHDh3UpUsX5eXl6dNPP7W6W7ayaNEinX/++Z6iLZdeeqnWrl1rdbdsbcGCBXI4HLrtttus7opt3HPPPXI4HF5fffv2tbpbtrNv3z5NnTpVOTk5atu2rb797W/r3XfftbRPcRsQorFNdCKrqanRBRdcoEcffdTqrtjSxo0bNWvWLG3atEkbNmzQ8ePHddVVV6mmpsbqrtlGjx49tGDBAr333nt699139T//8z8aP368/vOf/1jdNVt655139Pjjj+v888+3uiu2079/f+3fv9/z9a9//cvqLtlKRUWFhg0bptatW2vt2rXatm2bfvvb36pjx47WdsyIU0OHDjVmzZrluV9fX290797dmD9/voW9sidJRnFxsdXdsLWvv/7akGRs3LjR6q7YWseOHY3Fixdb3Q3bOXz4sNGnTx9jw4YNxne/+11jzpw5VnfJNubNm2dccMEFVnfD1n7+858bw4cPt7obPuJyBMG9TfSoUaM8x5raJhoIxr11eHZ2tsU9saf6+no9++yzqqmpoQy6H7NmzdLYsWO9/ibhlM8++0zdu3fXmWeeqSlTpmjPnj1Wd8lWSktLNXjwYOXn56tLly668MIL9ec//9nqbsXnJYamton+8ssvLeoV4pXL5dJtt92mYcOGacCAAVZ3x1Y++ugjtW/fXqmpqbr55ptVXFysfv36Wd0tW3n22We1efNmzZ8/3+qu2NLFF1+sp556Sn//+9+1aNEi7dq1S5dddpkOHz5sddds4/PPP9eiRYvUp08frVu3TjNnztTs2bO1dOlSS/tleallwGqzZs3S1q1buS7qx7nnnqstW7aoqqpKK1eu1PTp07Vx40ZCwkl79+7VnDlztGHDBqWlpVndHVsaM2aM59/nn3++Lr74YvXu3Vt/+9vfdMMNN1jYM/twuVwaPHiwHnzwQUnShRdeqK1bt+qxxx7T9OnTLetXXI4ghLtNNBBIYWGhXnjhBb3yyivq0aOH1d2xnTZt2ujss8/WoEGDNH/+fF1wwQV6+OGHre6Wbbz33nv6+uuvddFFFyklJUUpKSnauHGj/vCHPyglJUX19fVWd9F2srKydM4552jHjh1Wd8U2unXr5hO6zzvvPMsvxcRlQGCbaDSXYRgqLCxUcXGxXn75ZZ1xxhlWdykuuFwu1dXVWd0N2xg5cqQ++ugjbdmyxfM1ePBgTZkyRVu2bFGrVq2s7qLtHDlyRDt37lS3bt2s7optDBs2zGeZ9fbt29W7d2+LemSK20sMbBPdtCNHjngl9F27dmnLli3Kzs5Wr169LOyZPcyaNUsrVqzQmjVr1KFDB8/clczMTLVt29bi3tnD3LlzNWbMGPXq1UuHDx/WihUr9Oqrr2rdunVWd802OnTo4DNvpV27dsrJyWE+y0l33nmncnNz1bt3b5WVlWnevHlq1aqVrrvuOqu7Zhu33367vvOd7+jBBx/UD37wA7399tt64okn9MQTT1jbMauXUTTHI488YvTq1cto06aNMXToUGPTpk1Wd8k2XnnlFUOSz9f06dOt7pot+Ds3kowlS5ZY3TXbuP76643evXsbbdq0MTp37myMHDnSWL9+vdXdsj2WOXq79tprjW7duhlt2rQxvvWtbxnXXnutsWPHDqu7ZTvPP/+8MWDAACM1NdXo27ev8cQTT1jdJYPtngEAgI+4nIMAAABii4AAAAB8EBAAAIAPAgIAAPBBQAAAAD4ICAAAwAcBAQAA+CAgAAAAHwQEAADgg4AAAAB8EBAAAIAPAgKAqFi2bJlycnJ8toPOy8vTj370I4t6BSBSBAQAUZGfn6/6+nqVlpZ6jn399dd68cUXdf3111vYMwCRICAAiIq2bdtq8uTJWrJkiefY008/rV69emnEiBHWdQxARAgIAKLmxhtv1Pr167Vv3z5J0lNPPaWCggI5HA6LewYgXA7DMAyrOwEgcQwaNEiTJk3SVVddpaFDh2r37t3q2bOn1d0CEKYUqzsAILH8+Mc/1sKFC7Vv3z6NGjWKcADEKUYQAERVVVWVunfvrhMnTmjZsmW69tprre4SgAgwBwFAVGVmZmrixIlq37698vLyrO4OgAgREABE3b59+zRlyhSlpqZa3RUAEeISA4Coqaio0KuvvqpJkyZp27ZtOvfcc63uEoAIMUkRQNRceOGFqqio0K9//WvCARDnGEEAAAA+mIMAAAB8EBAAAIAPAgIAAPBBQAAAAD4ICAAAwAcBAQAA+CAgAAAAHwQEAADg4/8DN10b3V4twFkAAAAASUVORK5CYII=", + "text/plain": [ + "

    hmqrC44(_T-QJMtj`$xk4axB5V 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 UU!D;LhCr$B*W5?nV-fH_0N~?=yZ`_I diff --git a/previous diagnostic output/demo output - Thursday/gradient boosting parity - all data.png b/previous diagnostic output/demo output - Thursday/gradient boosting parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..52bfe9e07d095ed4f1e71d3660023710ae041103 GIT binary patch literal 29284 zcmeFZ^;cF~^e_AXf(i(Nq?Dj2N`um&(xHGNAUt$QNlS+y-5{Za5=u8nhjgQ)bcZx3 zC3WZKeDA&E{ox(s{R3XdIOoi>pS9OsG1r`*&zy4^p!ihk3hs4W6bf}kMq2zC3WceL z{BsEhp41w}jl+NV?IhIfo?9B(Iq2FLqMqp5S(#hfnVaa{cw=Z|YhwADn~j%^o8`tU zJ3A{|0d{ta|I>iY(#Dv*=b_j#baL5B`lT%jMW~DXgOMScZh}Ht|CAAbr0kfmKH=o} z{KYBG7O%x`Tur7Ma>>$$M2bWmiKvpFf=f5nm}D5 zBA0|lTv=TTLrNK~BmPpngWxfq56P>|&9KHN#Y>a(w|U#$M0@+w@7KsY?R#G>yyQ~X zdP^qq0t5W%lYcjfbpr%kUVJri_;X#q{`@%w78wx{QA7(xfj|7Y-{L6&Kc;cwupqyN zaO%L1L?*!)LGYur{{R2#|HoyTceovOncKLh#I?q1=5d_-?c>v<&B~DWB%!ZQ;(2}x zlf3BY=+NQ%ps1qqbzku~&tmKw1-DV~WaCy~@vy6k3RzK6QFZN;qbX(vTsC|)l9;E7 z0zMzOjeVbN#qnCwlChyP_Bp&dhH^DHZ5O*fxNalAxuxDuVP0OCB_{nix1;VFoYiw=G1Xjr*kU_oQ8qKA zVJRUmA3U`&H<0-}?tvK@>fpZIRhGr>c)#0EKJp!39Lv`hO%QRr{`2S0fA}n(-z>&_ z{r&&dT`qe)5%{v$h@P1l4;F3EQir}}s&_0kOe7GGz51$AF(no6>!t=DyzPZp?b)SI z9+KwfIo*Zu=U1(p;OWuSS&C}D7SEK+{)7V&71iohp`m>3FtfZ09E;JC?}-kR0Wbvp z-X!5)<<>WoJWieDlY~YV4_;4H&cF^jP#AZ{u+})c+S}Vx2sv`NAIw}lUbplRi@N=U z!*Wu{z|e4J%(Bj&k^*DpB}-V z-z+rb+OBixcrLgsEG)!~WcyyBGTozK;wTrVSOl#P|L`H;*Do~#1B2;kRjuz`AGj?} zWiiEtTZQ+>y&b09$TchN9?8q&i<}|AJMbzf-(On z&=p&os3NbZsCf0OfF5}p`p?hE&BaC`2lUlw$z7DrP|nL3MhwQ?d+ART8xFSTB0hc$ zY-$oGAtRfG9VKY(j_2*&5h^twA%p3DqbvxC}#kTVBq0-=yzCs$__b8XLdW zG^!<(Ca9$3ep6G^XNe#(3N8cxg+r6EZ>%sRubmy6PW=eug@i#JLqo%4v*Em7mG;be z6^qxKT3b_JWUDx?WTsQMl)3D`o}Zt;K~Im-{qaE~9H#=K?&}ivnmen@vD)t63v?U9 zcUPBuQ*-kS zY(Sx_Leh7Qaw~dVTyToRXxoqlr@PF|jmtk%f2PS?OAvM$n%T1~pTV(P`}K2u?%7-` zoktV0mU)_jO)V`cPJb55Pxi*F|1K+aZ;1Wg9Nd_w;hvr0}qR75Idi1t?^F!6r z6_iRII^eta#Z<%282^BPN0O2_r-!{B>h5LL*1LnMSg1E^zh?d(HTn^@&Nc@rsj3=R zm=9*X;Im(OFLoo!GF>i~jbH{B_3?q(;vfZ_(I9R2Ly4a(KS4{azhje6FUDJbLl2dh zJjbWv!Dm*@6Mym~q;pkLN^0yK^T>~6F$~lh7yxrN1qB6%gSwB8FB%s#{Mw)L2z%s> zlMMTV*dbFhv+d>7F!ct%nqJW}YC6{~jE#yVTG-a6BG;|sKfO0W*=|aOHi0$X0-Z_y z{24{(en5{yNNZkkO5-s8)?w1=;!VlmdQw&NTj*kZ@o0mDoLv9!@=pprs~bkWNg>bE zpX#0-AC|9VWpADAPmQq{4h#+HP1nC&o~Yslh4h%|R}gLH?iKP54#t;{{`gmd+~9&9rOhYsqt ze4GydM!aS1cU5gSAF$}CtCmLkt)UXIeoD&9@4PP(&K@p(YDIqCtUH_B!HI~C^<&le zrn58O{t8r;fJWe5soC&snCR)lv2PZf#y!+v6DhAy@id7M3SU5#PkZ5wi-ba#x<5WY zDnDF|=QRJt!J=77;sL8|-Od<0-9lw~0i~>}IyY*T-+X#<#A&~xeBW}CI*5$5q0)Yp z(f5iN^p1=ugo=08hg_?^P``C+Z_H97^n<8}NTuCxFYq(s5)!(g5pjIh3@a-u z9439Y;>X}MDqljnP&kQmJ%XEd*Zu$PuKL}5{&gDZ#hXyXKZw1S0%ZlRZSLFH>qaop zArH)kroYC&E3Rl7NcRinUq zPV&hlb@Zv0+n;V;wK{j<*EPE;Xp` zCxg*MKC#_)GwgF#7OsNmNr~!QES8q6Y+(Op7zJm;Gj^x-(qT*#nACTxc~w0oIW~#qo?@H0%ocNZn1UW7 z+^8!~x56B34l&API8QV3mP}v3wL59xPJY8?lvHfI#k!c5mUb(?Q!0#>6(gM1?XOb2 zK6~A?C>Nf>zl+gBbsiqj9MLhh?99vv*l;#*SufdK7C#u@LOqj_30NrV zPgjsj6tK4`e_{+%g$di(*qF0@;}$y9b-BP35l4w zH|wK}7zIvl6_MfLHzq)H2x2|{{*+?Vu1dnE;CLu2FaJK2MsRV@Jvund>tgJsMr8{N zRuLHB{Nmy$iLI91Pl*^xd=~&aQgF^_*kaE*u$sE04GkF)uN_}(bb7Msfra`i|3S}o z!ez5&cuoz}Drl}XO#fhO1~~!?H@UcoYh3o<2&CEoiW_rv16|jL&S*C~qpCJ4JGrp1 zQP*zEKU7wJzp(B0?{_+%?IQk0&AwKAoz70>EExGJRK-16^aLvLr z4J>#t!0eZyK|w)cc6Rpxt0b^VIA_E0<*~m5KxcU{JGR>v*;&Lpx3#wyqRFVJf&@3K zpAWi?^ge8tXxXvF`Bm$CkD1wezK!Vb<`f-luDGG$m+oEm>aEB4)O?DA6gj}KbmrS4 zm{?hx;i$00)*WqBmCpt;Tg~{8JG+hT<vg$n*@Ga9MA~~1A{cfk*>+zVeK%m=r_Q(i5_oZB{{F$g~470 zB>33GB(rfFmb(SW1C0n6+SmMF0eOetlKJ_eGF{=*8+Agav!qWVZliM+YA&+@ceZ|~ zf0}K-^U1DqO(r==?w#%mxL!WDfA`rcml^yv`K$0fJ9(1`MUStB3GY$xSWcQh*Vd^y zE(Dwd)bqy8n~jT=vMZX1Q9>245dM;rmoGUK;Ncn4{lLx0C=unU=YgXLw)JO<1YRc> z;_xu|MDmuGUzNb|+i_EE#drwFZ42-}CJGJ#hs&P%xX0NE;-`=W9k=U$!orvG%x_t-0*d8DLcQmA()aI&=yXD zfPKf}K}Uz|Ek?$dwL=UjQZh0<0P<>udf2#lc!d^YJg!IUWsZjnu@hRG^X*Z5PCID} zt8lJj#vP(fH|va>*#^Gh+Nn0_-yp4NVAwARGaHnFq#W*jp;**=>wd3OoO;ha>0R(D1k#_=bOI z=o|I>7VFw)|6;$?T)eU3HohBloyVL4;dON<>z2zyxm57~{*{#i_}A~Z%~&6f!Il*2 ze8(Jz@hy*)u}4Nm0u@Kr@ZR-KKoLK|U?Mi+rxcw8KvbZ|+rW2cHa*U&W?TESRoOdV zz5@z@z&8%Prb~dlx)(lJv8tCm1md3Lv`Fa+28qC!ppqD-0PCM(+?%xgBN+=J1B`Mp zuhfl~%yW7IXBIl&fAdhQdcz7z!|AxC6ZZYn<7-$dafnm<(i$vm99vNYJPlB`9w2`n z4<9zQg8IdB@Gk>{gSz0}csw*M;p1~|Z61ldW<&DDb@yvn*-qEXrmVUj46D_OIPKip z+nfrkJ6>Q%HO*aUnll~FOI#=iYN-Q8HD+6b&RCSY4D_{g-w@Qk{Ot6|8q{*GY|32> zi1t<&ckeWC;_ctt zL`cyVqS<=eOdoY`4g#jfBFQVmC)i zJ6E@*BqdWaGA;pmxw6=k7<7@=v3{Wtf#3)n2PD$D8Gqd-hHx!lw6vCUfR6hLuTDKmTuN#VAZx*gE6#HvyoxVhn($XKb8}xq zXdl>h^Wua8=Uvld(8FSChn0c5ela+(X|Dz{BD!~piHVg($rJ#E_=Bw;9ms_cOf|5; ztk+9G6^ahkH@>op8t<5YJc*2UlU8L0HtD(gX&XR;F4qSRz~gJ<70;E})4;v!)_Y>a zgfZt=_bn9m(2{>%dyxPB<5V`7FTcWSFgOIPWN2Z_9@<`DKuFLdzlE){qvLVDRt*Pm zgY=0GLkJZh5dw&$EPb=y0EC~=)6}tRI$1KK*#DJYRFv)_A#KynLMLl14ZqC=Kp&6Z zy!qBmmjYJ6>Xich*(sv+uYws5-8#ue?gRB8(hkC2XlVYyUW)UH8g@MY?o3H z&Rp$OoHB;c{3O6raKbMk8xKK>tv)&SnUo;5qRge=U;+?^fEcZ!B4SmvHMYpn8n;9- zeLz3}kYkb8RqH%;Xw=n&>;la#PD1Jr`inc9)+qq{g=IPD&VjY48gn{wL(l}xpK=UO(|8w zXoWdEPF;oee(9Glrv&`~jvxELOg4m0lonudGi)cqtx8_~Z0HlFQWP=!W;V0y)8JDyyh4 z+`iq?XNGrGG#iGj+aAd%{q(8IIG1=P1VsL>4if@YC+Ptqu9B-h1Nd>lt)W{534MivcxrYpcOhy~aKjP4ynnDP7fB*C=8*Pnlte+%JBYwN<>ogE%WV^fNX zik?1r7}i^F?N=dB>*hq&FxNHn zT!3nA-QA_ssU=SkH}~)FZ*O3cdf-iBo^F(umhyCVqO2zDhcPlNUs%sJT}ChtVu7Yk z_jo(o*@}Q}|6Ly&-r3E1k-gPOD2lpDzlFp*^uvU4PyqOp2AqBE()ve&NNxan|6m7h zOb&qIGf7F`zyDVA<-iowkx)^Y*;1oS`qE^cTEaP=3?D7CWN&V2k_H+P3C>c7Ut((X zcYpd9ps3QBnVHWXKlXZ`n8><5QrxN^k23=2B@IZEtc;AzGYDS3kBFcTq2!hvEis8& zi2Io;B?kn4IP_AeI9V>M{Y4*#|Gsgnklq z$b&fRolMxpK5TOIjVEy&-+$j73L($W&M(#K8F5g zyY$p#Yx?^$G&*4b0y4iLQW6U!`Zh*5&+GB!ox{kqe@m{gFVEcFYX>rvZr%lCSGknr zVy^xixLb5gjBKoyb0(}MbE(Cc%12?BZ+{`WBT!Ay*WdpILP&x&qDMSefYRjG?0p=7 zSkzrEu0E61w=lkkm^YABcuf~ncJJQ3G%y9S?d|Q)o;{0HR#d#PK31mi(@aYy9!KWc zsf+#EFHRFsp=U7HG$7ovSQiQ2yB{u)zvvxQHPO7Doa z0QGE{aRGHg_8r-tL_vq1orA=hr@8!Q{fLeJ4V*F-S-J=2zZBu9#URkv1QfXshHjC! znfJtdchl?R`2;*p57QA&cK5-97lC16vH$irH~(6vr>6_n(5cex?X#DCvED=AiiAGn zN!+cws2BMp$~LyPg@&DEPs}8kT;V`m?Em^iOhN)%z0`DJhp%F0Wv0>3``e@0j%enH z_;?6^95nPPCHOO4Rr4lYTyrTphVdQj*PYRjQQe5zT+^n5$Z&r34lZcwCJ)*ta9GRb z%KB(&@m=&C2HXonIzAQP7hdkkj@7vEE<#uz!1nRf*~zC#vD6z@5DiHM!ig9TAU@l` z`lpe&WYuPE_Wlpo9oYHvn4uJ%+dF{1Nk`Izk2POcdgqIkcT9z zR|GOG_pPQMR-gV`bp(E=1h&2>QE(0dWv#4b<0;T5m+OJmee+*e=UPGuru{zfwd(OJhNLD}^o>JqcB zkg8MvOh$`LUS8e+Nvst;Q&M`nwq`C@-qF@p59Z`Yg{^U8^dJY4P>bjV#SDjV5sly* z)YX}+oSd$LD5923o}2JyofTC)7yX^l-jaFYo z|C1W5NU6^U+Hj%q#TF10*cU8()$cyYsxdWjqOt#b`D%+5X~KEK$0X2D@4Vq7Xc+Qe zLm0zzUQ0QfV4-UATMAS|qzj+~MRSaWtU>>P+>=)zHV1oKb;go8!B zQVfn3mToz& zhwnX`VK1eiT}WqBN#dzWx=r05z(;l}DVQuT_&m|ggrdj`KHv7XUXc6{O=$}QDd1dE z04eBPA_VDNk03Ly+Jt1z)98JfG0&CbexsEH7oso>S2)lS{~cU9PISb7$B+)5ai1S5 zExmFE)$=#1>#Za<&h0~Hla)l$e-b>CJ(upnGuiWW{9Slvdj8A_kY*o0p?_ZwN zQ&(!!gNEl5rVoIIl;;g$gt%|c8$N@EByukI#F=7KVlo&KnLO4bOZ0 z0X-_7_xK2Ue0<&`HVrhiKX0fE4XMw2`~f{$>B5Xid#6q(B z>MKZQeoz18Zh9ziufs|KgGlLzF1({(Zbw8)>H`F6RT!UvK_F}LL&tyH-y`OyolcA2i|#`oN6h*f_p|^1he@+(Qol_^Y2O zKArjytb$PzW5z`Y9VUsmRf1h9ELMOH&%IN;x z%J3mJ_Cr}*9j@QP#1n|ZL@ZL|;osvSb6jQJw)FO6L3Fwub{M;+}2)LgQxl-c~b-0(wV!7&xmLV&P+%?=gB=Px&s^6L-mKj}fb1_R`8 ze*O_KJO0$?(lAH~=jA*39B877^OBt`PLR$=m<7+A&YuOsv%8JRr~~2I-Sb~*;aTSS zv)71p{)`PIr*kWp0LEzN+_UrRfOG{pOCyLxgGeu-7ZY#9c%TsJ+#14A&TEDYtngLE zN0C8sariPboFTS|iwTi*5$OgZA#O!fgd-T=o~Gi=sf$M(|{u`jg5}(HkM%kRX>F%|cwy*nDCJBA3w z=c%G@Rb+j=Wt^3j75@JHJ0wPZ`}T@3H3KerbMr&p5OxmJ#DpHC0+^_K+SpnaK98F@Igu0KxJv&>IE$BnQ&*43g7k7g7hClBfj z@aI-DrF;-@O$n8wjt#MmT05#d14u8wc+q2A*k$zDP>v{N{6y7~3!}ZgzSgZH29N)y zmP~h@U(H+|R?sZR^b|d_ zbFc6kA|$i7&$CP~QD%8CY3&!s`A57vm_jM;T*HW=WTee`2HSq7!vOO-@0(L(0K`N@ zJ(jKRGKzNHZl94a*qd&;c=F}X!E=|R1 zh{nlJPK5R`I2oh6{fQ_qfc``fy9>DV(4!3vKIc?Zn*@oOJHAH}mpk-^EO$Ee94{~Zjl?HZ$;p;m(M(tUKh3!afN7PIOQFI}{E=rKS4OV_FAb(w4C zMDHV`2B(ns%#w_T{PF95xDbgP&PTNX{@x?UOLC z>H9IU318-yPeWgwR@h}SQJnozC|u*Q%ecfYyMOiX-W#E{u;urWA09AZahTuP2V#ta zB=Yt27?3iSW{l1Z8k2yAq^ga1P>iLXyV(+f{#TPBrXB0Ygsb|!zWdaltuRV(gmdNS zD}C%Gg(RT>NPC?}qXMI9>Hyja4XP#zXIK9iYaFqqzm|tukl69Olx$gh*Qf&yTrgz; zpul%Ps`VjgNgI}%nfd6&i)a9sK1AB;M0|6LYZc+Rs-8OxPEj&lzd~p_4Iica!6z@6 z^f+^K1#-!B@7^;zS0yDP$N{j>0R!Cob18u7v#W{3bZ}7d(qlGsyX)P^J6s%Mq!pVZ z#TTJ+qZ#sGMA=*UIS|5`t3BE%cGZ0GqB&fG(cx*(#BbutVZF>6<$a>bCaF z;j31L`Q;SS@_(JE#lJUYY{mm$r`+{Q@EPBwZy)!`kQ4e(KyE+f6 z0br=a{4Ng%+g+lW^fYnTi6X`V)996WyRjwN*BHs~+SAO%Ok{{V{p4b^Xqk!5c`T)O z`jy0m;zL@HUT4wXxnn4b#ijRvRlUbOsO+rJz3f zdm(h$N7PBom{EwOE^|_YLr`Pf!^Y-hUBlz)Q?euSr*WTM`3v)&CQL|+KkD2Hkql@< zh0?wt*Fv+@In`L(J`Lqt?bXD)RQys?>hRdrFwD>24)LtXQWn|R52ysH)ZG6Fpxfuy z?a>y6sn$|X41MI_5|~OH`ynYa;`%gZ%9TJ>_O9krgF6l>pIaqU?@^ZOURP2K*I-4h z2qeaLGq~Q>bT2lYr7W;A?Dh-Y5&z!ue|IcRknS-tinI8Ef&W2Sm6g#0u{1gG)ZC!x z^MJK{aI`g8Gtlm~*YiY9DNI&}Fr1tos>B?i(K#8GWJHvBLE`~T_uF#G-jikJtIen> z=FOXnlwVSX3ZD|K8ga*{Rw5z{7HzhkQ$=R%PZ#y#>UD{ zSuBh7wT~pkeVZ8{GvHn^<$1bS)L$W1ZaPe0IM;e}eWR+mFI94E?W)oN;FOdf)B4%i z3e*iR{wy*HI+K{3?R(UZ6en3eoZ%4^H^4`>_xgZ&LPBIpR)0mmmHjlTFDq*xXS_6^c#NfPmfs4imw#hFa-;z2u_2^?pK+*6j|G!TETkP%aj;(YHd>S92zy;j!XH7Bk4Zb7;A4OCZIQHZOtcY>(Ua&d{A5 z_=VoQnd15U=b)x_Ii`5|;quKJ0@odv>3ex!bKT9ay2na7BP;U)r>fzaPj&cZH6(uu z2`_54{M_7TaCi0;L`1(ObyXc+%*ejkNKi{z9h4(UZfzZN*RJh-Pr^C2U~2Lsi}Aw0 zU98u&FDFI<)^HU_`n)P}I!6(Af|SZZ$p=y}hJl)LKVpR{K~E?eSr!stz-6k)J_@I2 z(|F)WnwQhQP7_K?$}PjJ;?K4oLKUQ?dU%*;oR>ganBAPWB~H(3U{o;a`sWE!&IeV< zNL44)?jq&Pcx>gU{JPW1$;O*04~sWf*oF-x#1Clma$=YD^xrC_Hof#(9SZ18m8>9C zt*A&*quF9ZCwfpL1FiI`eB#XwX)tCa6pup6Ie_o^c}~_TDeyAlsv8w|<3E?MyI(Yv z*BtuitTdBAwaEVx(RbA!`HiG+w##NZ!}JI8e{ZV?iwEo~=?L^0h>n`ng($rqaK@ zFKhEpNoF4#h2*BCU4VBap}&g6z#;EDT7^K+uO?a4-y-4m@*NxHSE?jwy*fC zDfj%V{}6#VN#En!Iy54#6p%W$Ew8Su9KCG?aG}`DLs3a}X>7zxRyy((Hm4DOfo*zR z_r1Fq1avq&uLr)yX~u-3x{`7y)`=osLl=fdMo6Vp0~AbP)DvfEd7RioeoVDDnJ9w! zP4N@yC#2jW*w`zpK`GH^S3o7+eViywUv9XS*{Ym`^Ql+>{A3S%Pt|=fzpiOXJ z!FpqyU+C=k4^r!llxRQ|bd8^s0XpxoGMd_ISo2#qM8Q25I^SkKe;ccX+0oe?tY}{v zSJU2uljK@dTNd5*no#u95!y*^5~ZGP#VE>t_ijo?qP?oP?#;A+I_u*V*N`F;sLZq4 znU_J5y8pWj^@2IRs|JH zlEN#5Vx*Lwh{~lr5%b2mQXv0?*N|a{z4&Dp8sqe`DoRoL0t=c#3m6A6-I}!o$=+iI z9gK&sU$a4V!CzV&B8**{&J%tNHktaHVXunIbPA-O;;7^qwAH&14 zgv%p3@7wV9CR!H?=sn&HSD<4)uIy8?bT_^bf9Gg^im!U*y8lSl?I(_JZbW?dk%zBU zZ?^!yD`ke_8MtN6$%9Mcm;a8ujE=`4}=YCd>^uP-vx zGqN1v(iuPk2UvKZI8e%|voeqgRYWaNL0MqXPHbRotPiPB$N31UzqGVUuN2i2*c{lj zD+dnu@o<}VV(A(JwaxNIOSTns-Mw*kn^%pv711nv*Sb20KLrJ8`n_PlRe0wAsxK`7 zvg8bYo#d?Qx4wM+iepY49UV=K%7h9Noqd_K5Al{UY5tdFh&dZiq{QFxO-A=Uli~W% z$cI2Y>jk|*ASFpr(ael@8NZw!7M~_WG9+;`cmuUD zYU|QT6m}s4`$!PGzx)#ma^n5EkY`$6R$7pAvA3`P%XiyQ{O##S4V zh4F;^ZO$lOS4TICvF*88mps!kS-H|G55Sc4*9wr5g|1JcQ!_h|rzC}R?EuoFG}}{E z;1#dNf1Pmh^QYW&+TRel!hB=qo`Cv0>fD%13!nFfG-iv*N-e}mcpfjZJbp-0;jzCqhXep?e5FaoZETy3I%Nk21Gs0<5l64OKM|TwuI+|n z4lQL_>)RWPN{XXuT(IhnXR8w>Y;4@{d}sCKTAj*r%*G@`b`I%@l(ukTH<761(P3Sr z!`js|QeLNa!!&|E72aV93z*QdKeQTki~sEALS$45hMC9YS0+)lYjh&ed8 z5+luCLjqaLw}he>RC2D$eGQ=!{HCMW?>J~cTn4cqk|D5IK;fQl(qHwd{iVja3fCF4%uIm*< zi)|5})z=!<%dj?US1XRn(Pr~sKI5uJUiiD3eyn!Xl05`3Nr?OF$cgKADq@%+cLx6U z$stumNd3k77&(N0hu}=TeU31f%Oqrh10=E+CYs?OMG18+pAOUKbRk@;L0&{!#1Zg4D#o1pz*!&@RLjPdVUmh)TRr znMtZM4)d$VX!YAs7EC+3JiYp1oD8^5zPM^b$UO_>`b1^rb+@CvK^H#p)6!QFoAE-i zF_^ZC8I@xNmsLF-U*izwosD*m2zBlW!Fn76LOUYZnsQtRBg5dk}@ON z)!5eI|D6P5N_!uJ=`fXh>}ZVrON+$L57yx2u-U?5)~D|~1Ny=K4Zbs&Dgeg{p`P9K zWOq1@Ll+Z@7eYXNDursHmJFh?F=61YE?Sj{i$t#G^(4J;r-9Dyjd8!TDF3(B_%9#K zjr{wM6F0|qDQ>0|=#_htLe?yZt@0AoWITkB0$bG@7vkyI!oYV6K%$J5&Sh`y^7N|! z*J%qX4CsuJG0BEZOW2z-BzsevZ&~^iV>QzZz9sxuN*y`vY zMIILyhYIzVzB$Q*ZLi|#c2JN~yxzcr#^~`*A1BqGjQ!~@w*3D6zbnZBZHoA$1z#0D zg(A1Zkeh8#Xj}mH?tOH$Zb-E#r4nC+apJ(9iRq8}Le$Y;lQ31hRV(arkw3j-c?XcL zfwz%+A7BWOtO6_sqIZRG?+Cdh=u8+Q?IIQCJba;8UurP<##&=^`>mC9bmAd76?5gZ z?J5<60I1h0)V}<1xg`EJ>f_49F5ExZ*%7yPh1epYwKW^zun>Brx6+9lFI_T-Y?c$N zXVcI4lqiB6Uv>Ve0Yyc{q~>NDQR}+xM;?3U3~i&l(K2%E8Qv*;149g9=K~wFr1dFF zs+{>rl^x@xLn(1B4#?s~Btt}Zt|im#=Z)ei5#tqQKe6L)EWeVmtQPU1j;DUJ4(siT z@EyOL$(pxu6hlfx5eo8=^Su@OThISXTOt)toSaIVGgm9X{?*&|9=@TveJ%X`Ew7%# z>4o8s*>M#0-5+Y)VWU08_e+R%U3&Paiv2vU z$n$soRMUcVK5&F3=Ki0Zrbr{Lq=V5x_fTy*v1VvG1C{do)j zP&#sLh!F1Wntl0F3$*?*fmwlaQ4V9gy!889Z%n^V>+u8;Koly4Q02*$0_)UXUMk`l z+^ZPbDVVQ@d#c#>ipW^SX=0d-isO<6+{fMUE?0PvnN_yc2djHG7hkGjJWIcK7Onn_ zK|tUdcA#6FfGrN(eViW1{FkeK|0)-t*sSbk-!975Tp^TJaaeAs-$FDEIq#e3dN$)!i_5dAxRo10PEtNA_t~sM)TTAPZ@zkx~xtOFRtsbs{!GY#4%J+zL z>4V!cZrgRjhg}Wx24iF4qId2JIDW$5^u5jhkt?vmb4!}-g}+>+4Jlr)f1JNWy=LAh{76t_)!1d zyFN)cDa>u_(e!rfiRf(x8_0>1C<%E-M`Pz`q;Isy$u;lH7V7UNmM`>gF zq^HuPP?rKbIsjNIII{Yklz1hFX}#W+7*WUmeP629f3f3I_t+KQO;rn>@T|TW@~Qbh zaX3CU-q@KA^2iJFpYryZ{M$bBd4Gx2HZ5@MDD%MX@A{nn4R7azF{F1?wJ{WgzZ_o0 zC(1Km)xdPwUlGP-5aV9KC&P-7rNxTjrOzl=>(XLs#&lj7xNzOWawzw<^qt$7FJ6px z>wJ*+yoD`QUb*#ndVdPb=FP3h$b?TX+SH{|JULD4XNi+zs@Gi_L-bF?Wa#cX#M_(I zl_jvmDc|MhG7lB$wYz33@X9Aq{wUk;7EtC_;cu!DgW!(OuT--}N^^FwaB zB;%CJqxy38<-Y6Ld~WJz&|KIhaD-pAo4?dZl(}79s@E%1D}w2r#BX8G@ZFW{`c^u# z{(Z?wJ{6g^*_OhN_P3HIjx|TGKbt%!DxWu$sNan*7&Vl5@JL4u=`)UluF;;elHEHOiFVGItQI$cw_miFMPGMEfFZRlzC zs9T?191QEodrC~O%qL8%N}AQBhFx=2Z!uiNS931Nx2E8KcAU=0uD}P&KKRGsv(nLR zv?8jh^~h34#fuG%@$gB=jy{k^Leam~$we%;TlV5aPpxu3=;x-IB~0AxqsCJCTyZbS zeS^R79YY<4?VQ@w-9*a2F{8XQztpCSI*+-@m@x=dPaWMCmWKL$JMP}qySvpzxm1QR zz;2PqpZXf7Q@S+tyr-aXtoF(~*QV9xAeM9>WO2Q~g_k#U_l0>*90ny5(LK-55LBHzFBXwPQo4bICxtcnrHPU zOxhM-?QO~;{#PHo5GR}{(KhZIhleTtnsSq%Bf|Rkxu0L~CZO?b^qZi~>+E`AbbD)e zcy#L9i7k{!KD||FS)hStiOCU)xV3#z9wJ@;N{VQ%1uL(%aeoN7-^$qVP&dTe-Nwc< zR(oiVr$%_DKAu}LDoVKaH70G|>|ArCec5a1?c5%OmZfUA4TAsvVYWn>BZ8*?G|=!=K-(wd^iFIfznNFyfDfY-yDF&$f$P+m7iTkBqRr?)ik1P zlgjUpP2=QepR_s4k*V(NG&#B@oLr8#`Z8$dHkkEKg?c0A8{g66G`v(C7B(WBK=d4H z3;(uuh3Sy#MClkgq0nbnLLnKG1FA-Ik#K6F z{`-lQn#8w7uZLD%e@jUdA5d~ieZkC`oub?sQ$JZVJC#SPicWAe7r7KtDTAG)`+y6JG~*ifK#$IY*Z6RS=+ye~Mp{F(ps6vr z_k*SjdSuZ|!AQ3Fff@;)Y#APAleJOt`ab4h&WrW~(zL4L) ztU4t8b+l~Q#&J@qh*X)wkK(nHgg7pzj?(mj0F2Hkx4r#gYv`n=>dlX=c;76TF;&c2 z3hc8bQ*BcoVfBvXvy;n@1m#Hfm=UBx294$bFQd^;Zg&B=B%fA!`Qv%K09m4VzV zRA1YFQ5zTqjueWxz3-iN`lyM&c(su=-(Q*@hXt2f+xRnP1^xO5?n&+8iyz5LI+LYV zZC}nW9f+P0-66hjku|ZV$KgX!{PIFuwa^V_yn}UKdv5#joxrw&@)2(Ar?1%xTq}z7 z6T2TC7SZRX_n+j}c^q(TO`TWa3pQUFt0 z;S+D!N7j`l1$#I<;@Ki9ah^-x--Ao zu+tMRPxd6*dT25VcX;VeJypo15JJ{~?9p~@=EVTz%$%I}C~1hN{KMB-kd={@iMaJJ zl7YcoG(AoFnMtO|+_S6_=e@aHN*1yPNW-~F?1gipHUZ(An_(dIJMcxcnz ziFmYpTAO(dN|qya)~}@bvLCgKh`Jwr@aa!)W=T3eh)&qZFAo1$f$8aSEY{Ul?#wEX z`bObl&HlQwGg<11TKPUb(aRa)WZB9m_Bf{TaSxTMG{bqrJlcuv<(^=W+05Ld$KbOO zKh|jP#k@K;hfmAmo@ZL-)t4RR0=WL>!}e!|?H5X3Vc0F}RKo_7aIFy22aSvQ9IKYz ziBz7Vl3uMOVQp>++`dbb${VIFGNJAF@t(qcJXMhm>x>SU&45oD)`dl%uy2?a?fj{6 zVO^Z}|4hB?CODYT%p}8r&ed4@RCraXZI)O!{f!?)AjbE29do4{+Cer~wZF-~i!+$5j^7V8As?_>N2Z zeSk`ua8k(qLHf}}|HV$P5GpMF)<9P4@zVToO;^sVbnK@zbnJO|dM{yg7zH()lx7%q zUWUp*oE$|WmYTQK$=`C{70+d74~n`!uzZg(9s4o+lLt;-IVSwg1qahu(|J|seG9;Q zZ}>M>;@-22WnIY=J!4t<_&7QG(v22A`>Y*jQSIxa#7YN!NB3J4Q^$UPwXDnCP~M)M ztq<)bEwx}Ar^(;jK60+C@ukBsX%3HM7*!@Am+R~1m3uav*D-oI2c5ZLoV8cF{M(o| z*wy0BV{tM`i~joJOD|?$zPsmWI>a=L75(1d%Sbz3u%qm*s5{CLaBIa^`!xPs@EAKNcc3JJ9q?Wj-)Q!rwUx!}?i|e*z7!z^nWTvg+84li4GR7(= zWcmKXTgu`F#G4TU#cQ!ThS@Y1oA!^l^JCEdd9omDYWrCEV zw2lj;n;V_(@zgRqZnwK8PMGGe=8cw$y>#O5>q}79jE)()NXBZnNnk#iQ*Fe`tD2CU z?pr*Za{ctztgpXU=*DKe0H<=iZ%PWoU#P?jx&GiWWXZzeUI3KbLb;;-{N%&t=GiBl z%yO=5Y-F()p{8iyQ%9X?^v>LRd#71`4G!9)W^ZB)AXcrLro$(P272@Z%MAhaONWHv zj{T{lGkMXYVYp4&kxvzxEAH=~L$Sir0D*n^kM}Rb74#;^Ty0Hz6VCcly{?CtO2l;5 zMMaLCfi!Lk9&Z(wdmi?smg^+*7B*j>zL>o5JhM`uklxO{_Rm7fFSYpM{d+4b)Qy9@ zQ+$x7*}0u%nsFJzdG@9!>Rla>9*EXtCmG|tN|dRy%-8^bb4V)OBxGVgzaB`Ud1pCY zz}xV$QumvikO2I%2v_oIeORJo%)6gyWNU6R8}B~u!CccmWoQ_@NOvPU2Vbzu2=z1u zJ5h7LmG15OSSe+GS&3TS^CRwkqnDBXkDvaiv-}s3Y*euJLPZ4=b-n6vwFY9x5TJ?4 z&(6wf5|s=g=Dz)XV7T=ki%|Wp(T}%$-f|YjEoBU5tS%WKr%L2at28v8AOmMf*>F{<9y|R&djV? z|J=;g+_)CYuCCp+ckSA>zxRD!W%-BqKhx)fdlh_KQ&8pHUGEY!WDx_&>Bo4HuIY7^ z$kQRi0YmPC(z-o?Owwf5;|mfdCl<*Bq&}fHgC=TQH=^Q6U}^pF_3Y-Qpm<)3=}y*w zox0xr`~eMX4mo*mi$Qw6X5#$Ql$?kz{m<8rd}!Ds(*|j{=4m!mZ$UxCgoXXZoQ*qU z+D)-{e;+9{l11LA0D2Y3wQp80pdb4RdZm}1qvjAbJk#>(F?SgSdzuft*7->vscne> zq~jt#zuK2d$E?LAJ<0wrE>7yosHA4X`*SKghMCb%hU)grCs!ux#;UHx5R=QFTuZQ{ zVXlwmTdR%qIQO*TXYcU`#+kK5X@2F|wk5F-uq)4S`E6ab2S@|>T&i|XmVG@4;m$9L ztj325ABbTew1!f1^YY$+YKhilAV+At$v9UJ;@I&5 zWi^u*5zJQ4-c%BlQu5uZFcrl zekDnZl0)&bW0M}&5{I@rJ z3%`zG(n9(}HSfcYjv1@H?*5Sy-sJ^t$GM+E2Vp1+M^7)LK@C20{1PVM`6ypjaw=O| zO_H2TF=IZkPyevjU8Y67s3afE8NF>l?Ha*a;BBD3px3*yD0JWt$CtXo@osSZy98Sj zgYaikZn|w>`CiGyI(@T`e4TSB$$9sPF*;sPz(uOs^g-+8FU4kQuHK`Ui|9)tMD(fx zc^eL-%_c6*SU=ZBevKGiVa?X3tG+oeA9K>hI6+DN;@v1#L1kI@s@?K_J%Pv$N1FsM zE8myrm#ji-PU(7+>!_HkMO`!Jr++M})HTA2dPz!#N#(}GIFXPH@>2_7*a%*}(i7NQ z*G%`xDERfUfbLsn6
    ?D7*;33Z9xNNL?ES)?)gqeKeInihbxh2+%92DD{N9<;dwOia@d+i zL&n=3djG(@1hXA!k$L#B0I3Mu z%^a_+6cC+va^Onyxs2sW`!Ao-qiYvpA@9FF7-%Ee@5! z-jr!=EAuNBj={*=`rBZ0K`J*7iiV@&TgoAEL`CJ;Xw2~16R)QuFKhNVFWDwmEydl! zvFaElWA1E}_#jp5l?O`lffj>4t!Ni1%OWY|LaHCh60={o45V=BN?r`lDe#vZscl76 zLBCEHHonESQ?%Yv6%k!x#wnsug~Qesm$X{P#WP&8va3n`Da7k#kdw1$cRRo*An(xt zrsP|wm{Sl`CIeOf;(2s==wb@4V3V(5+(5JZ8^24L(faEL6Evb?HY7|EY2LSREF-0l z(vJLCp-Rrd73M`tPs3Ccm)ve&A%D}CvRzu+;azN=x28kg`})J($G?A?aXW5Td^9(i zma88(lr67!JFp4lwYXMGb95Ac9!p{U$W`yJZ+Er+yFGx&0A7Rx&QD16t z%Ccgn|Ba*GATu}<&i(z#3=f*Bw1l$-VGNedEJedc<7tgISDe*2*#tgqUlvi#A~_)pI$r~ZCtR5Ao(pJ_ zf1RL2m!BZ4L@%fRPM^)!SkouU6xRo;CKS8-b57!))>-f2<_I_#cB9}su%JK@og$1e zBIs*V32QJl<~1|U{>i)K&In&^d*XtD(=tztcvzT19@uVn2((;o%2QpSE8M)WQ^X@c zGmVCo-0-5BJ{)PtYi5|8PjukUm;p!bN&8usFF#Pa928x1d#;vH^n!nStW|)SsdT-79DEi9epT z*pnC>`z)BmLse*>p@si`l+RDkC^@e3V;7}ykd=p@>=0aGqSM6r_7<#|DB^d)r{1X2 z_U+#Fo*miclj%AVwzXyyPxhi&7&%+AjP*-(YFzpJ8q%HOvl1$AHa)%(E5pmKTttd>ewU99m;0pUX5y zd&;cO!Wt*l^2pt!lWJ?avuZ8xOYPR@?!-UUif1h&3_QyH0+ukYb|!eu3l1e5hpNk$ zwrM9y17468){g2&eEk>_Om-e-D-FDkZWgc8x+oO7^l&{a&TP$eyQBC}#NqAYTDB3* z`1|gyI|-iVV=vf~S(W4neoc66P2WlmUvF_24gK>a{#P)HX^ITKW-T^{Fh z6E!z-zjqGYNyxi02BQ67^x=6W>mJ(;^M8)P@46|x5M}E&8xc+&FafifqH6fjfkM&F z>novzK_f)VDluOYod)ao%-5W>qAeNk%MgC=wx+6nO^Ko>jy<*Y=6k6(e~vDNW9um6 z@3+cnUj7Vi5rm9lJPiJ~El7C`v5|!7{b!c3G5T{FdK!4Ql5!9EvUy(+)y(xs@E8F)+}G4Vc|Bv@@u8K zp-Ygk{9%|ye*>@ort*B>3Jgr(`^pR#Un zpr(4xguhbHYT4i7rtyMwd%l}c)CRU*?mnF?D?=NA=QK2*51^w%L3z)}qPz};`bBM@ zBrb=969ERxtwLG-%&m%-vHB8>-~rM`$|W2jTwLeZb|24`(CF%>y)n$m=QH^#Nv^aK zSk8FPqx!pj`{VHPNCxA$)e-9pjV zo92Y3OJ2Le8u-ESyrA?!lTeajj!l>qA5J6>uiACRT(m1-8wtEfZbpL96T*xbfYu$Q z8T_DOo%VoV&#$QC;iHSc`jk5TUyV~6c1wHOif>keaS7bRjXraNpWa)Z&g6`AAdikO zIsS%Q;1PS|95@{s9Na`dCcGP#$FJup@y<9;imdis>MN^e?R@{D(_20j}vC-GG*7O_B~G+m(}BvZk2Pb@(p zXuIZG-#pZ=U|s$`^@`r={RJEHXamOY-QPbI#{b>GHlGX;oq)xRjI_yn_ft=a&&|y^ z-cPOY9O9WTx2R2=&!sb*5S9?UeM0DVs+tYC*1aej8;o`SXK5v(AhX8r-Cm?R6MKq$^E+T>d=;m9=5{DJ(q2>65JC9=J~kxEo~j+ci#G};G|`SifyYF=9f8frzBhUXtM^X zN_?{WDX-8b>Zuy~JgKEfxINazJxMdB!@;t978dL?JbbQK2{}%l$nc=UrYcA7mz>*K zb~NN(;oQ7<1_UOzxNcWTQ})(L1u&>IF@oVP1qc|v4yULk5K_-G> zuI|^k!opo@D81h;e-yd#p1Lc>4Oi~arp4ujbO^Wz_kqUsA}J{xKo?-}NNuUw@}a5w zJt6ea?JA)e^SPfpmo}Api|b@uq%yxbpG}e+J;6FO-5Fod)a{^BC2PF!% z2cBqcCnpg^K~e+4i{ncFc!sIk9c#goWZyf@(roP>bTqVKPn90kbiMR^y26kq`Uove zLh4&k|K4CI%YN=zLDCI_q@$bQyk!eq_BXryx)6-f-#VqDsT@X6s>ZxN?YR*?I|n$J zg}%#Lzdo|eLJ`cJN(A%1x?Xgv)fsBvs!+#R98}>UaHd-UIRBz6S!2P zj8kpK_Mht8EfEaTKGqK+Q>L(3by}FBdlnTOPHl0dYiIW0w(_~^8Io3)AEK}#N|XNi zQ+NJ8?k<;R{anw4(W?s|gv_7qzjH;1=nV{fXGJid%nS9(ZI`Qv^KP6(#T~EHP8B?* zR`pj|OxYwOFu&59jj~@!Y`a0-ZD8nChOvD@^F4-7v))Z)>gZ$ak#s0@ghqZNI_n>c z>-2CzeP~9`)fJ8RjgFVBmx>>TI8XC{aPP~#zv5wo-D%0%!|I}qK6}dP-Nuv8oy=8= z60U;ey9E#cT(^^3z+elox-Vs<31W7N;EnIgRAXFTxw*WqBYy%QwP-RXDW0nO`R}2Z z(&qAG#+!5BwrqRH@NZyPGq4AYE=O74-c#QQtf;%aB=`HLHK0%zW5r|+Zha)-X|!E| zg+ApCepF0!^mM!x?s0`DpldM|_Ni%OzdmO+(r$~WUcA^zI`LH~!S}}ih;%8+G%rg` z$tzSQHQr&u4f452@*eA~S8S}y%ig0fJ&#@_yZ}va%2xd=FuoC}igFtB$`;JsUQ&#> zQYtzjf^3}gVe+AYCEQv)%N!3?dVES_5ns~E-Zs9oBNrO|l@3d+O6r}|=cj!gs|i^upCl2bFHkb;X}A-%%cHLvypdsgx-gJ+s;wr zu_R}vdCn68Kl-NXfY*{aOhhl5(L1t{%{@&4Y1%iHl{R)=i+qbxI2oCnwB*2-4pZD& zSP7g|rm!IvsFe3~Rybo^RD?F!^BsuKOT9sl^9#v4bExOC57)i>lF1Ly+FfHkuk1ax z0t_M?NN0xvNKModYb>PZD{s!Hw-I%51>xXKStr&@MM#g!Kmq*~g4)%Mcxr6>jky_s_q6U@2SOJiH+rA$KFZ<)7 zqBNE>_D7E9Uzvab0D`Wd;8Sc|C%FY^u8=ZcrscV;@*u(~0Tw?y|E ztSH$23|#X9&N6t-9{uaj){;oepC8c1As0<0h{73Ml%rv5Qn;V$?0@qn9xNE8_uhIl zMsKLTQ179+r6Q;I__4`Eu%XTJ9UU$`S$iwmt&iq?^Vn9B;clQO2tk1gmbjq=F;0eL zczk*%#=XSsxAUC|FA5ODZnj+=Qsdr9T+$|6=hFd+*22a~H!IqPy;qiRK7dglx(`%8 zTHmBW3SpnxO%}?pC$LCgj-? zhauy!3MdUi`+hTgwIccqb zw~L@bF+Dd2E4=u8+*OzzA0}2W1C`M1%Hotthxg@g1od+*N4cYr#`U@Vz49~1=Vixt zU6q>JUs9mct)lw;o;*93fP%7>xNmQ7#`^k_pR>-i3Td8ph_sH+!8==VQdrTG(2JOW zED5hU7e~X+DXRVRqBu6HnH>z(Y1B8^ny5AETjsGP-@iSy9lixm6Fg8J^gjvdg{n(K zbF_%S8eHUmWCZ5;s@euWFL`8G!3rMT{{miydeDQBk%39zfR~p~jlfsE?M!|Z%=fT@ zCnStX&S!AG3`=iR0C0l%IXLi@t&shYqM!<7LRi372%i3dpG!GWOSYbG^IDX1DW~Ou z=SRJ|7FK_nzoyAzhMzO#{C2U7Fg@K1 z4O-ujaD<^l0~O+#fPp=Pr04cUM`!E}QdddU4WP{D-(V&~H(P)!DOG&C62G8RRN2|qg>Po6<^ zyD|Kf;H(c0CTp`7!GQnj1B7@4A?Y1}HERZjVjxhLP&m1~l9tEdKy5stXMlp~NtE!nt3RRvf@HY?^rkP^^Zo~d2?Q2+K2PxS@GcN!7uSIVQA;!yraF4< zp}ie>|L%D@UK50`37|TJeQYgI5C0;7Xz^Ngkf)n>$IsdC+2SQ78Qve_nK~q+g^okG zXodNB^uDPCF=B{*9N?`z>s#O#dT>$E8-Dfc`v(;L&lJt6$ktj~87Ka*t5HwRNv1WJZol9XgX(7ynSHLuKv zD+&Nc`u*+YyxDf>ChkO7B9h{P8$cSNN`lh{VBNIeKfd-~T*N+OzN)>NiVVv*a1T_? z#pv7b{gPf4&AH}JtwY|dD`DRoKrM{;$)0#w4 z>-_m^bhxv~ef6@QJ{M>maMp8wz)k-qH7N(7kHTBX`{3|!1>h#GfrnIQmHo$eVDZTU zcN2Jmrz1Q5di9E;Ht20$+W%6SH|$Q4VMREI8M>wbuqy(xU~Le!FycT2+z^5DDtl0Y2bzO#Y=lucL0EAiw{?t*sU z0YDU8r+iO7VM(gH#Yw51kMSKJH>eGw5I(~y{S3x*YE2E((f-zehxqk$uy4A8Swslv ziqL=rfDNSqx(^9ZLPCn3EDe)Gcv7DSrYcUtkrUzjf*S=h{y- z;3p|6H0HwC2f~>k!lnhDgVyTw!Xgl+asckuX5~2xDL3-SfM#hkZ%!A$)ygKAH$!ZW`Ph9C8(SuW)CEK1f1KA`gXM$JH73s zfnz*D?UTrWNO^iZ+FN#^7*PMF08-D+&u{q~*c=rb%Xs-AuuT7xmBGlEw`1?u1a1(^ zy&ZrNhr$3oFD1nc(JH>|u`ie4sRhVoz$6pk*#l5@79f!yV3v9YUl6S(cU`UWq z9l$V)yZ(C9JqI*g1m5n%KuwhHu~K;wNne4H5d=9qwL$6Cz@{{SkO3e+oeT{PwI4N$ zody#(I1j6k?t2Vz5{M~OQ&TfIG!z-%My}ID5G#@j*$k`fivs^eu-ak?70@fSoc`6; z28j&T3uXfvAAB-oAsGOP`stBA_~@Vu30Me8xOpV<1)DMj5)^~*dg1Cw2mtTDHi#+; zNYfg3@22ludh!^kq|?w-O)&fMv%(YwV7d!HVt)o?<=UX^>i@>Vnz+%|3QW8oy%Td_ zjZ|=VuTnpcHU_nSDgx6^SBg+HH|Io5)_`q!0}d((UjeRF6~dYCHhztCDx9OQ;_(CE z2`jd}{P6%_w3t#$6q3IKq(WWn20VVw(b8sZENlt^rfb}FHr#R`lN_10f!UV|eq|sA z_Q6*obm<#vMsjilckbRL*U#G-sXwM39UZ+10VP1}yacf+kWOU^1Y`HJYP5hMZARd} zNN2)$YzFJCan1f>9+F0~#lqlr1Ko*n7#E@ zQ-3s#I^xUf6`J@?+!*Kvp1A;kHvf=z;S3oNk)jSd&fA+T+8RF~)I%7M$F)JJ3Hr8` z3RobCQ86>~mtlugkeU81kUf{A_zWS*KxOeuSsoQ7<$0&YL1p(pEuwG>@%s1J&_56V z|8wA-+%OU{13XB;GJZBl2C3DUZM9mKCJKd6K2Gs+bIU?121J1X0bBCPDFiibTYu!t ztfVNfh_I~Kd12;8IM#kdqw3JiS86wme3NL&COa!-E% zkXvNO+l}_%_V!x9rC0tEoLIyYUwp_ukUM^`rlp5ik=D0hWGgU4O`|Vw zhy}6y{h5Mq$Rh~E>HF}wLq;|{+BaE9P^drr5CEN$!6pR+&b7g>Ks<(XblLgFKyvVyuiPR_*d FKL9mXu9*M; literal 0 HcmV?d00001 diff --git a/previous diagnostic output/demo output - Thursday/gradient boosting parity - tuned hyperparameters.png b/previous diagnostic output/demo output - Thursday/gradient boosting parity - tuned hyperparameters.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d68c9d7ebd55eabb7e095ec125da761ca387cb GIT binary patch literal 28088 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 literal 0 HcmV?d00001 diff --git a/previous diagnostic output/demo output - Thursday/gradient boosting parity.png b/previous diagnostic output/demo output - Thursday/gradient boosting parity.png new file mode 100644 index 0000000000000000000000000000000000000000..4a64eabda3874cb269979987085a53753b859500 GIT binary patch literal 25227 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 literal 0 HcmV?d00001 diff --git a/previous diagnostic output/demo output - Thursday/random forest parity - all data.png b/previous diagnostic output/demo output - Thursday/random forest parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..afb0729509d507bb9f2cc118767e9f31128f065b GIT binary patch literal 27248 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 z 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%0A*iyz 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 Ne8$wugl6Ot`5*H5UiSb1 literal 0 HcmV?d00001 diff --git a/previous diagnostic output/demo output - Thursday/random forest parity.png b/previous diagnostic output/demo output - Thursday/random forest parity.png new file mode 100644 index 0000000000000000000000000000000000000000..c6a89245bb7c07de8e5ca836021ba8f4561e960f GIT binary patch literal 22733 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 a^oy^b96i8HS^+XJx-4I<_7#2^mii}z?5jxt diff --git a/previous diagnostic output/random forest parity - ascending eigenvalues.png b/previous diagnostic output/random forest parity - ascending eigenvalues.png deleted file mode 100644 index 7d83451fa7a91f9e1e0ffdaa3f010b0243d15021..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22574 zcmeFZcRZHy`v>|E5m`wJS&?L~j54zFkd!?hGi2|*laQiPD2mK%vO=~>_TD?$dvDHl zKi}`~oZor9&iUi~e|l9e_xRkO`!lZbzTVgU;^BjPBt$esC=`kWtstw4Lg8v7{|L{* zkt*{KBk)7iMNZpA&EDL_-Pp+trEKitU}NuMV`;+ZX6EETXMEzB*z$!Ou?;@~XC z!(;n@Uchbd^n|BPN@flkIp?6D4eL!sF8sewExysL?HE!0>iSB*KL4oGIi=4_yf{4-m!v@n z=iJ0|rMq9a9%j|BQ_IQWG2>PIW3I(h*x76_4?f?>BJfV!duMvnuX0AH#k{>`NZ{OI zv##~2W)1Io8R%C2eZ>M=_&Fhj#|b}PQsl$`oboleaOyG+F$z^<^8cUse;AUQS=^@q z^nQDjroz`+C{^wx3bfx*_}86ij|7J}AemFIg^@A!&__hWQ&{ak}7U$Nd<1py5dJ`^*1>e;1>{h*UwvXZ>|=XE~TJ=e^6PW{0sqUx<-~}^mC4S-mOvhah(m_2by|%S(%wP z(W<(-y4p3kMv}Of-ms8K9_7OuLMPK`?Mm;$GkbTdPkqr{)hF9L;S7=nPvSk(y1KgF zM@6OT*_Fu|`X9SK%UhrSnh@;8#?R01ve_!U*pVn>e5k3VwKywzS|;YUlzz*0$l~9h zw>P=D?ecADh3$HT`Z38{TP~ly7Bb2=nmCI6jt}yE&0Awrr5L|dA1~XN&>Ae0zM) z%-r0nF6f+?&t860Q;{M9KmM@L4` zi)Y?r@KuLBpl)TA3FCEMe68k8W^OL2cep^Ch>YaP`s-qsc~yOvPC2XI%qRn&bvd-E zj?TxG%3TAqCr>zpgfuF>w!5ZYOXdy@4dwTHEEo3+I!s6vTXxIO&(DjU9&K(f6}AUQ z+?JFyjC9$bjtLnmgO)-Yg#3;?kQY0E(}Fewyq}$#*cXP1v*e zy*&I~D@!v6X|pv>IIp(d>hI4N2MMS944>V{JQbCddm~wur2VNsJ=;c>OHB1qDoe(_ z*Yt@yekc30H2kKa2fM4|MseP|D>=sX!E$%5qr#`EMWiC9XJ;3)3){LLzZSnFHpp#Q zg-P(;`DjEL| z=Uo?i(61#=JS-B1?S3db&$M)s2#4Q=A-Pve_C7v7_i*Kh z3R{9t0Wyr!Gc#7(3%%w4B9-cPs^Lr&td$J4uU5wg+sLEefBcvM%XML^TcscRnD%|# zPfz8}deFhna#mnqU}%Dzv2mh-*F0#w2I3p%75W~!goRJHe)Sos6*-LDCL z<$byOS?p?Q7UNaEUNaw`NGBW*e0%IV9iKRTRK08a&W$(91%cWBwOD4Yc2D{?uJz0vz3)>~K-d?-6 z@Ky3SgOoucyWhZDd4GT33)vaIh8$YCJqf2rPn182Ji038V&PD_F@CZt~NWqfGhy<9ARxU($tTG)2TRDpk` zVzVv(*sgT)tW4y3hYZ>ClIiK`D_nXdf^JI#6hkHMs|Lx+akqY(#pquey5&4`UnY_d z7ISh*$*m%BHns*rJlx+`-A5>f+_vT(CF^~+`~8MVhGt*({?zYqfd`_~@AGYIcgEd@ zZH@w0}ztiJgT2Q6DZmVOq zmxGP(#|kzosHh0T$kKcZcb;t%Vz~ml-tJuk<(=#3-=M{=4uKA{KF=UAVlh~dx;`Ca z7+jLDH_9O4GcY&&JIJiJ;qOF#8q?ExPt{hiCb>p1DJnWPyTS4yWMyoPm)t*8#1H8i5C4i-2_Xap4^ zi(t=PH=H7n+PwUCt;?4@E23;tj+kAsItLz;S9W5x*S59I*;yLwp7VZUYN`-fP*}KVOIE_BS-Z2l(92=tt*IFeW(~APZvHZf zZ(4%S#*1i9oh0OOqrs$CZ#I6y@Ss6$er=ODw9$8N6u>wyb3JMCOYbm9C2(<(1-$zGV{R*Rs6?4s`_gSm$*in(# zXIbfA8ms(aWo=#jxFI5cECXy($Z|i}-D11Z@-a8`!Cdm|_mPpRc~6>1Yj^xN8rh8B zHGD>5(?rLE0=R_wq&Tr1PYr#ZBbL(gJ^z?N2!Arf`KVGoPu0*^l#OQ!Qp9k%z z_2|)CyXxbe(Aq0fE|;0{=&pO1-2V2R%_B6qf zDrnw{8$Xi27eUu)`So*}S#z`{Orm4;4EU3viM5ZR-&&rYWoOCgv#B^V=MeMoebxVD z*57J>V;cKbw^u9FzzK{*Mq2}%F5&8ZWoJ?@yW_*%{!+)Otu7^=40t7(;Pai{tCe42 zRUvyh#?a66UEX@L;fdv8mX?;f z1*R{4htqyl;x3b2t=NnJEyjhoV+#Y{l34_9NNo409ZZt>rz0LG0V!PvJT=dt(re!E z^gwGQVZ7$)8CEo6L?n;@u}O9|vL$50A`1%a$EU`80kdeeGEyeCJL2p*`JDRqu>mRq zJ;VAcAOT;Av!_y4GQG5Ppmb-*I=rRj{i@L23-7Fq>aA`ZD&$dcCO+IPID*aC zRtnbs)z0!TEoiwgK9iq>kHO*CHt6O({}{H`?|kF>S86Kay%wY8#g5?Z(Sk0rT@ydq zZ}*pX#gIf9S}3F(N6?9y-2W`rJJ*>U;t0Eic5ra;_j`7=SDBfa`N!q%t9D?lDr);r zc82Z4!40_#E+)TjiH)VpTu1HYJ0AJ#!{aA?BH-;BUk>K8AGw;;K&0v?v z@m6>EIm+vo!Hg4o=SUt+lKuYpB;K;fqBE&6lBD+W(6`4Sj$jICbM(I75_4a%xwF+F zBM+-`pvwPfiXptPO{`f#Sy`w}be8V%Ov}f__9AZdZ+-XC-ibq@tGzWtz zs9i7#3n`qb(PQab12a8Az#RVh`e2=W)WqYdhS&WSo|`Vpo6=+^6|^ zpkc$g&Z26>3AI|MhJMBWa9vD;-PJD!k%H;vVDt9)oJYy>mf*XI!3G7x8=J4(muX9Q%KFtAN+ZGGTbAi)Q%-Z@l2Aw_QX)DS%^o~h~U=PWENbWDYX z5jDR)g9lHDaCMuJjf@ zQK{Vf`|{CpLPA2`y9Z+Eys87MpT0B;weWU3qhv&=nz#$2&eQz?(=SA|?-myq8ylzd z2?+@y?+B*5YtAntBO_6jycX~mgPMG!zol-ZeV`;5e!2AhueI~u$|HjfJ|>L24($pvaJzw zma+i$U@`an|u9eXrQISp+&vJ{3)RFK)QBkp{#8!`lPUInI zwQ#E{Se^#brHXe{T5AiQ88$@XpvH{cOE(rhyVa20C}p~Z8AR4z02z7ik{m3{nkho9 z9b}IB*1eu@fA@3MOy_dzUI4 z!3xrF1baI_9Kj0AK^*Sb+b;xh>|zC6ID)<10ghk=BRGP+{UIE|3Q}+cdpj>2!3vB) z9QN4T$%8mnu>uN?Ah*9Ug(Fx&7LFjdzhQwRSOE`?Ah#O{)J5$g_*p*1WD^6je+Pmb zrWueOZ6j5>L5=M3bMmDd3|K+7bb}2mNSAK#UAKOV29_7 z*b|JHL~cZAl`XA%ft(UNGf6~(bc>v=j*1y85Y$o8APRy}K8Qo`IkY2no=__k(X0VC zD00cUkozAoVwf(mvHrk;#r^qO9fUK2?z!sfEWXFZJyn(OW7wu=l`JiHiqAYkn(QFF z7nCLUGG%=#wM&(qRW36}Xm#8}CRPv~E3QYwS68+31$~|Z7e)T`ah--iyt<~jL~agA zH4n!-`EdT-XOBy787U`7=tI=62HK>nyBkzNGU66?&bEBMtu_0}IRbzr7XULBAz&}b zC`O^aJIa=3X7YRIvNZD2jIova9(g$Xiv(Jq(fn>Vy0vI{s>|TB_H@ku)K?#ZI~pOY z_a%0tLlY;kYI~75elh2}73eV7@<_-9QL~A2GY;y(Y^Ve4N9SBcrE4KsjP<;`al-BK zZi#4|dW!`;=htq_L-Q}#;*s!6cXc(l`ov2^Q*!|VoAb7`f);Pip1=Hs+Q5TpVK+TJ z{h_>kFyi6F$J?P{7~3X4IIyCV@5Q|vdRG559F67+xiH(V;*w?Zw|_Iu+B<(CGb5wZ zI1k0Lp@Rl$1+5U&{Aj%hF*yGV+4!%800q9ypB}s;XUc-uL5f zDPOsAB~j1Kt;B4Z03{MKRTpI%ZKCjEL;Z6kbFp>Izz(BTE~z#IVSQ=Jaa-W|$w(d! zwhP*gh(NT~+O_+E-z*GXQsz6DOzndMRKP!H)6&QmrfO}k{M^c0iLH0HFjw=zZOH&9 z&2pmVY3wcASOBB)z!NB`^(`zYDDpo&$+tb+UDeXm)J$G|8yibguFB_e2IUd*xIW7C z5{2!sCJ`RZI1f4RF0H_CWHO*fY!EfP+y!{r*1vZu3(2n~y6VX!vvWAMt)?MQ9PjrEO%uHIVyRbk?fnvR5wM zA2rwfrHOtodej6}F0mH(EV6(?2*LJJO%k~w`_bpA1O9D9&&1y=4ID+(fXX!t(-lN$ zXT~t;VD!>J$vSFibd8jmlceWW-|C-kZWhRjyZ0zMz~Q+mqO?9e>14J%^2jLa;Y`=j zvmUEn4;HkH)G4lbTNfL|!9pt&ghD;hDf+XNag#%Ufq?op=~zq@I$8eXp-_MWKHC=p zV$=kkhK6~26pLKuGuz8E2i{W+alNgJ=c&cGF+$ECC|3}3Fz_{_hR;1$lyl%BcDt#R zugjxJ&ug{P%>@16lO;suHzdia_UEeJeR?HdGw;?aF;UC%OX|4SYDss5Qd2%GZZsxN zW?rfPW6^@2)iLc}R${y2g?H%DV7n52zJ3kJ)%U9Q^y zv+)BD;&&rBHQ^&JuDT8e8iF$Z?CcO3b#*3(pUp8rm$9=CIZgzygal=kzZ*(+wfR6f zhN#=`j>El{hW=NFD>5Z~Q*!iL6YI`OYko_?pl?T1rXh;aV5waR{dTChutHQpBA5`T zMtQ`;Rrhe`oBkD#ok8vY@INwYob;xS#Jg2X|(Ul~y;Jt+Q> zx*V;qpwexJZ~3|!F&eE1o4?u@;c7i{Hi-8up2*Z_n8kedOat?EQExd{;nT>O7o{*z zHC%r=>pr?zTFzAPvOE1DvP%#@++#U@{2cv~nCSfv(-&@Zi*Fa%EqnV7vxa|%uNQyK zY+AZPE3VtrYJ0MV;dE|^{ri(%;U{8*>?jsZ9oh6h-!hT?>8TOfvP?`(pYX}wCRfMN zGD9@+c%XUfeUYN-_pq=%FR!GG>kL`iGauyYEydr25+iTG+}HT`!4I*Vr=A*3%>oRo zquzHgSL3WTZ7!39aIja!$II$7k~h;8T8L&4TyTV45}@}}Kxf3VtE=VL$JzFnG2i}* z>h<4iL;B9M@+)PThq~XkwpccBpIXd*_*I8I<_h*PV~u~g)sC7tltZ$A)&C-u-Tl7>~J??`4ddHzS1*EYwnT_PbyD zDG+dCO3PMy1Fcvv=+51(0mr8`FPvM%Ttbh9So(LR>VB$*V~JXC(UuOo^|G${O^uU*?s&2e(MW(r?;U^ih^p!;VkPuGC)<?_MmxA19GXEfRwkn8S#7xN^y_cBRV@T|!>*SjA-w&^Kda5N4jN4*i; zM&cLUVz1(Is!OrAwT1dQuTT^I)UBF~xLwz*QPT_hBp}6t7lR*D{mm;^ho74~RH#S% zSg<~jUK-ijxt$JF7j2EZECzj_29V_*$eQBRhq~|E`)B@d^BBK0g9=!brOLgKk=Zmx zjCYBP|7A>cG=0K5stWtzzD?)cBd;+QqhEjWByXUMo~MLlnSQ(7BN}Sh9tTm^{x$(V zDz^FiWYa8MmU90Lig6N@XJ%%LnQK^B%iomc;keDJjZN|KZaiy5C7zp(b)d4$?V+_- zcz4~?FZW{hFO48nK#-#b021$-npzra4>W2I3-~R2Za7yfKtmjK_g>%1^Pm$S^6{~m zXV@cl&Nunj|IHK?8fA@mMm@z@SCW!4=&IfAk0+%Q4A}=RSH}y_LlmpsCN!zYKZ}Wq zzD1wQvbn0H)S88}Sdg?!9FJ%O?IsO4%~teP)>G_0noo%fPebFQxR&a_fJ-A1es}7h zOCZCj{o56;%DeQ+t+i%Iw=hEEp|f}Ogbp~30j!uSxh#bjWjMvPmxr$Uk9->A@t}cK z+F=txrWLL~852XTN7h%|PygRjuJHb?fA<`E)qS%hk7_Hrc!shF8(xW4aSa?&DgP1s z1|5?p12t;r7{c+xN?y+SxuIW`%k1ZwDXA}${pVnR->#6AarUZ?d=aaE?%q`x|KfN8 z)TbLO4rW@d=@yH6=q@xHn%dxo?I812v5USxveOgIgyXE;_O~n0NXzD}L|SgWufleS zB++7C>Ibuutq#5A#V(Dk=Isv*;s*;0-R9~aOH{jfo1{h@|gybr9BcTR^pGmU(blKV1Zq+Lr{_|Jrr zlPdq()#A?ork%2P;MCgtoNo6gw1fmyT~({4GxOl_{vn;XHtNW>li7J7_}APQSlDbM#f=U3=W$ z;y1>-v#ZXzB-%(~ZMSMy97!GmDyE7!r}pDxbI$)sd6K&+z5IT7`kOZ63U29@ms|3` zx|oxY=gbgQ|MuWAEiE>WQ7XG-lw(k->ptol)0bzMH{Bew2%vEJ!9o_~J_qME!ND%J zAFt}L1^i=OXrfj4iZp8E)wycrf(mKxB5}p10cD1xVe{+Yxzla5w%j=x>fF%%qwsrn z^)d7i5;C28>r<{{p0gR?yu}JxM?)GWhfHGcOXn;;E)Jwhp4)xC?H-YbQ|td8Y5Ikn z7j4v=Y5PbGfy@;uzianm<>cc2{(3W6606TWI~3rW1hF()^~d#cXEORb=@4^r+`g@s zEFa$0m!n5JT3ueQOGQOx{GIna6KdsW(0J&D@{)-c;)=CzXe-)V-e2M_s>;5*MpT`| z>`YQ8Rg=JUO(&t6%#+y&fS-ji@73Pa7=uhe|KvyV{tFTmJ4{NqeiXO|AvXr#e`Q={9$dFQSXx71Gm;2)giA;{ZAw&Uns61KJXTTz#|FT z`=^9-qE4~^3FiKexS9p2iFTM~(a@Oje?`s7>wROmSYQ?ter2jMK8t0;n$^9ZAo~R+o7H69 zbKOGoaIdX7icRE?D{QlQ$mE1uopz9gJs{MM+^-IB9}h1hK}FVtzudb1X0?vWW(tsn zAtvd1UO~sdvPdWZDaBVDnBJZq3&7MC05RC4{g(_cO8H@pR=U(GE%Rn!i1U`krsPoa zJ+>w`>N! z(Arl#`r)?RW&3@!@93=OvXem#*^vY_1c~O4Sp)tA)^<va=Ak6hjOEXmbyMZM|Pr5@v+1iv&%iHhbb!6F%76 zp2U1At)p7JMNf@6$9SVl5hW)#)BZ7mQ`gi$-%yvvpVc?U`IwILM{nFSs-xQVy;CO~ z4<*cG<_cP%)WTt{%2v<$hS1*Xm;Ps$o%fitXz!57P(|{yjJMV@8~wU*F&`Hvl~(@P zUmaC5`Il77^+D`5-f5wZy6MU#7y zt=(D!?oc*fN4`bOmkpf$wpztS z`V%o3twi+-H>mb_E~eQ&aTwxa9eq7iQ?I9`T^UFVf(n$nse+X!FqW_1}M* ztJF2n)6-pMG3ep%N>o(lk7mXyTghi;jRp3Iz}jKjN*sFMD~M}(?F#*J)*D>e@>SuNfvFtqAcL`-* z1mL5%ry#KYRdTs#xc|R5QafTwBTe+q4=r1h<39R(QyL}mNFz#gNkiQZ=rX__wLg&-}S#Kg3aG16~k=# zEU-^~s<^_pVJ)XyLmilUHsyDWC;QDv`G}${jW$xP$ib=p;w+u8S`};Z>ya|vkESO3 zH?QMx$on1N#ktd-$W#l#=#AK4Us(GXUj;Wr(*W}Jj!7EzhEB(-25~-A_T=Qu_ufYs zYFq|g$%2u47MK%X%i@lD6A?ob>Xx( zPefI*5yWs;c#n+qAg0m}8~@#!Qo zL;>JYoP1%tOILn}_`*wv=hp{&URn{r9qfWcER@gjeM20cr$5Z^-Tv^86#M&g2mCz( zNM>IrB0e}fNwfx7-JAOtFKyx1QB6qVaWa0q!8zv%*^2~1Z7Kdo+8y15S^@qP`2nVi ze>XT4IN>ULxN0ymANxG~05RoEokwuPPAJ4Qr~l_FX4A?0-(F5-<27P%wo!t?0r>tK z19Xg9>ovIj&?RLiqgwwvw+Q~YVya*n5=jXXYOgVnwcYk(|uLz*qlXKbX**%eYzH@LWz0lcX~*b}t6#P`-~ z;E}}K4p)`Ql4LHGUWe{RL3(4MHw)6V?v{Wj>Q?!bL8>h&E3Zly$VC(hg+QW1(ERUX zURk&7M$#)P?f{#`5~vrqO6btD8=_M2MwdIcjYN%Dd0>z{Jj}W3c&d+7!58a7+J(%z zP-**izhNHWbd~!vaf!AFzXx)#TXn=dvfC1V`f818M8vJC=f5raPldm*em$?Ng>T);*8Bbds2L=~U`2T$bHV-B z8F3{ZJ)&@X)?DU7`sPXLKjt&gubDO38iYgu+>tCLo=SD!!=3O_Lom*e%cCpF0Se4b zcJ>#0pDer6*ddka(%jZol0B*rIYGyW4bp7z8iiu5tP= zL&6am8JFS0C$FbhpR!!$tGm3caA8hLc4|u9uI%$b<;tgw>XnT0UDU$XJ(g!uRr*dj!%5a0ysenoyqs!wKq04 zc7{=L)Rk}nVGR;kFRZSA;^u1oR3qVE1^L36<8a{%xfdD}pUas~6?M;SkpB%1Q1J|xm z1g|E6&I8-4UPx}GsU+lr%L??hOr;p^#NoxfYWkrkyDOtZ-|Y?O)+cJ8Z8ve`&4Jsg z3U80(l)!%#662!}_(kW2v?9gqkwzM=f27-fCVwPJZpLINHML>Z6n}NNM5taPkcXcU zgYyEx^%mL6&NyVS7@ERXextC3M8RmfwF`9`k+7xlpS%ofDYyzdgj(|7tn3^~ z{M1|4{`FB=?r>NGE*V&JT+^?1eZ?^VZ5$B^z%tk4rHR(B~WY?L!b` zHlOs8TNQA4RW&u&^F;TzY}T)#{y)lr-=lp7@gB>T#@8 zX=XBF@dQKW{%i1le5Nb^BmCwDnnUma;r;3`rmxg_= zcO$(5uiV?IzG`NfG3agC-|I!H_m5UVaQI9gOuY*vN-}})f+Twp_!`{>u73`a5OxzL zSmVAOvP{PdW1e{}_9bbcKST>V`Z>ZTLHo|0*=J4WW(7PFKC*LR6jGKmu zJfo)*`T9k!A+Z8B)O06TgqqGj3h%8g@PJ9{4KP|YE5gw$DE0~N>Pn%t7qkz!H#qie z8`x%L2jLTw_E2=$#Y}h#IRMa%iFXkdWjja4}0fVogS|)`k(Ily8?sqv;WCHWK=!^ z*CPdCB0*LKdG0MTgJQYTFzNhV{!8jA1e|8pWPQLb6*R8H!xF1b)V3XfL*l9dFtou8U z%2NLqx;LvcUj&zT@+Rr#%twGS4xYp>%quX0^JL4w+yV(TpkIyJ6IbV3FN^==iTL&P zoR%Yv!0+<~;qX3h$V+yOj%WQ(z9NcN-*Y;OM#SL@mIYc}4MFsh&4ZSs*q{1Oi`zc& zTnjB=(HGT;xf!0km&A;197Pw2+lH5!~HpWUxC&; zi!cs==uPn>4lgg?8HS3x35DTg@8>N_E>Mm9HF>iOlY&*?CfpZL&7f8gtAj9kXl}dN zSPTQAgHRnteRoIkIDhiM`}7=rGrWjXs;!!vGEuM^9g;PH=gq!BmF9YV;EYs-4FmHX zU^8%+&n0;c19d7r`QGcHQ92Jaf8UtQ)B&#IktFZM8ZrC_g+#@+ z?gSvbMoZv6ZkJR8P3&M^#ox-^d4jcep;z_a8@X17!%y0)kS=3h(dEIUrdafjpW2N= zfQxsS#vLnhtJYw1MrX4M<wB;EMwUzN=uKb9Md%_;tHU)8*O_vv+&c)FogpxPAQh8;V3G6V7581&v4Bn0v0Jc;~!~4!J;Df5AH^?cozhWe!Fm!OZVdV z;*ZWGxvqn4iqrDibIWCAFAPtDIqpy0dqK>|jmJ5_7M!Xot>yHqK7z3U{k6(y;*L{F zZM7XQ2EAae?F1(Mh&TuXa8zBr^oe;UmwO|f3jbNz5^d-0B z2Ew(=xY6T-qHqaE*%J1W&*UPsBwCP#Ylzq>AzOb;;fjn(b)k1b$yF_<|4dO9C2~z< znPEeO`Q5JnycmO)ZaD=jcR=Yw3qkpKjt|k$+^WYU zKYo7arIHdYnO1H4Pu?3X3%4%z%6+=yKKAMY#NzRXcN<%U*oqnoPJgUk&lKuYa(OeA zLaBPkInBwwEOj05b}H8wRud1*8~k5Qh{oTxmwy2PX#4S(d_ucT$F4_?j^6+SD}Eeu zCC^Jymx?f5Z!|tL4LACys!#xd=SsyD)&-+|eS`R|-?W{}iy@6e>ua9+sa}%{Eds?> zT`aD8l?NUZO9PL*)_+5TCW=A#wQpOSF4yy}x6I?Bh%gib+5bAr5T}0)7(&G|K}b42l;TWHj!%dXGNA_XfSYyBrC$>ii9uPMaJ`s>rP-#(womEaZ) z=i~J8vo(|8<^M(4+CY=d0t%k$WQE?MOsTrVqQ8MV=ThXeeRr=W}+W0 zDr8f+W?}Tl_v`mRe0h3?zzW!s2$M|+SOVe*kyFC{e?il>R(zcAki5>NdNcq;cl|P< zyRJTz`7}=8WG({h*VZNBf5&giInT^CHe1cqn73W9ew75n11GssBBHi=@G_sd*yVZ} zYFpT`VQ>^K0O*-%4Jil&8cse;NlUvaB-ERBiHRw&9!c#pWquRWhTFr$Frt=E%@TNE zt$c)$LTKH6hegh_4*()Y1A)IADE+z6iMf|NRUHW@TWshqsD4X^LV!6aCQ*Z=nR&~H z#3&9etHA=ZMlrkrc9BmPEsZBy?vHCZy%xhfqF_M9Lga=7V2c~gJY?eWcRUMNEJsQm zk$eMy0$-szB;@1-n0p7mc>EH1s`jKIUe>JkJKlo&C)OpQ2}eI|(i;!>o@W`!`LJ)` zHmm<6m~iHdqP$ieeH7yUOOVrI+DRDYgQ#>v6(@ot?zD5ua7{oupsNXC`&P9^az_?; z9DmOQsK611u&j$`sMc|S5c3(7v;*X2Ux)r^)5vG`E3y_-rCLJv2hzAJ%P3pz{u;Pgw1gY%2p%h(h{L~B;3W>co8BvsyPI(CrU-#Lt$YzAJsnE{$0NB?vI)Y$9C%>xB!sf!an_P&9Hiftx>dNg1!n+~iDoFLO0I zgrms}C3Ro>C9gb!S7<(eZq6QTQEbNr_VdnrY#7R>cW5K=W_r@9lX=r5uuE0qF^UgC zpwKH0@!Cx|3g)GeH>SVfJ;%1xg7n;?8AsMRD)C>OD(Sf^mr^kDQ;I^F>iPH0 z7TQHJUm=M#K30jbJhw-VL%ed)nmxpA`NDXbY^V$VIIVs99u%7mXGXcbf3Hv=fi3zm@2Np>8mN|LwImP@B^G6K+q~Pg^Pm=wM zPuw#3!EL$a-OvZVm1PYuQS}{s6!jXT$K$@jM?!(lr76LAZp1qhR8${X`DpYmunDM@ z@0(lpbFcdRUI%hry`_%Mlu#Wm&ZhI!P3gT);GtmT2zOtqH`TT-U~2nKORX%ho#Clu z0c!Yq_3dxDYMy0VEdmYo9}@6G9^4BLt4Io92!YoDMu9`p@vU?sg|~2KruwHSvuG2Ml8jo&*X5HE+JR8C_2@4qkGrVEC_mIfv1vUEKXooR(S)6qoOnSD zM@k*)VlOZap=Tlm-LlI(Ty;K%=@qL29SGs~q&%h?is9s2#Qfqv9~JXtCsHT8`~ixb zY6ih*9yf+QGEUU7zNz~(AdKXikF>XDwC3?yr0UcYyZJcotv@epx~mY0kx7 z^mctziUup|LW!}A&nkm5)sFVQEt(ExaTZ`^LcaU_ueHONw3Ba+6%evTU$7uWdUqd? zW@cH@#)?icty&t5&6!{05pS=xULd8s{&T0o=u1Izu3CjPD{jCufT3kWO)AUN!$NPB zv>6paw98Zd%I^<9`I~YVzIsTzUvb-6QHJ!0YmO|+;an~=-UTMf@oZ-*<48|+u>HB5 z(%G)x+9ZCQ3gX*ZvXC_IMIv3 z_69bK=WpH1=Z^loI`~GrPcb_us-U37xHhflbKx&12~=dLs5W1iNHj*n?7;}vP5uzc zq3^;f%=`Q5RXZ8-^-<%$#Mq#mrzKYVTiYP+8<&<^>7yIbp_CB$lP`YCFDMw8wZW0P zK#?E&^2K)%oXMMt-&)Q&>t5wSS>QV7$6gyUc~L9pP3b#-JCd7evZ=Ygy|eAyOV>8d zq(u)LDasGesFL%){d-Q_YFuMMb%}qyuO2Kx`k|>4(!?VuOf%6^zc`#P=S;o){4pyh zhVRG*d&&YACrk7%do*D?dLW>mh52(q!< z_#YxC)8qw%u&0wxP!2-4n$EoIeK9r}&T^w{@O%H+Y(SAMeuh#Y)zDC64&2CCpEhs| zU7&CWd=hNIHPo!ej+0*>I|#FtlifrJZzg+JP;|eFak2^uRFRq{s19Q2J-O|^(gS{i zE4WmMZ&MDn!md!Igp_c#+TVBhYipe7Y0`ouH>#*>YNoL&Mav!=_;G!haYyT%n6H}@wngg~N zH6ZrW_!zjl7DF09<~7I7n-_*2h$wYY+oi2gqDmv}aWyM|nVSYR)7O7oQ3wQb6yt&f zPQc=xc_=S@CIEP~WWyy;*p~YB>%FDQ$dv!(7^)=25fM1tFU3XL@ydsqiY=%$3PFgp zW$+7)ufcz?OUgk(k@J&8s18i-a;=!h+84;qq(Hqdn!lOX2HZV}-lI)-?oeI47_?J8 z6>)oO@JYga)!|AvP$5#rPfvCaHWN;>5yYd>LV_;L0UwnQH0{2_)#^NA?ouggjKfnF zODJ4L@ZGJ6XJm?z;NDRa=|%P=-y^Gp@kVku2xl0o##IH(TRNb=DzeK@gbey*M5WSG zTky_s(bMB9{Cc4t3_<^n5soGk1_zZbUlW)|kqdNAu)X$JLAoZ82P??d1g?@Jr)J`$ zljF5CSX)0^bCVuz_p2W6s2aq-Pe>@;UWifCTa zN&%?5xNq{uT(cS<<6MYMuph=hgF-Drj*}>!RO^2x&OGDgknZM5xG>^5d70dbs(|8& zXH3!}@w4?%n4ojTP^{|wqqVB+`!qsLBV?!v8t_+Rzt%&*GU&`IXW(|@KZORU01jwb z8(NMOoy{yNS{J&?ilz4@!Ek6X8r8nN!vMT|X>Y~%)q(8n=D&RYbB9P3p;n}4v5`Zr z224-ubSMgy3yU*(4~PihfdgwEil1$~QK)Ee|M+~UfHb&J`#)TI9F#Ux(%f6q2YNem zlI^hKQ>m%L{{ZC!-P|atLW=x1E>-8XB6SjdcWgG>-%4vb94-y2yAYtLnT(h+d}x7F z{)#v6dP|ES0|An45)epzP7Ih6io0G_RDot3D6Ma=rB-^kifIvF`k+NzV*RA8j7A_h z9_A)7z*taYn%osM(~WD_WI!V-s;H>AIb&YJ>N=SKR)S1WKC%fXTmisAw)xr_+)Fkx zF!_7@FQUlv zjhJ9zqORj!;zZWc1Tb1-!{Gr^hyaOsl$0+(px7hzgxXLoM}!LagJH;z_doIc?D+c% zz_;D3F_p3eiQ^o6p9IYgtwU3SP_NmG!J+*>pDMG{%?RR;?_Ma3{EOh=L|az115-HhH! zZ+G~vh;>i;qoH!wtgEfA;>hcF0`LJ8zC3j`HMKl~%>Sf#E!RYm>I^7|%zjQxZ3RhA zBr6OFNDT~zZXL@*Lz2gvv`7oz9BpgD?mc)Afz&zxwn1`*U)H{2JsA0Z1ht_L-(P3M zmb`lPs)OtH?cv{-*cgzJ8~{2Y0<9uN)==PHU$Q!0ZK$K8^QiJSQeTVc@C3gD%b&h! z_df!WZ==H&iXL07zQ-Y|A@ns=r!ri?t~@yj9c{{N-e zO@tJAlNm?XnsUfCAsL>9S^@@j$d@BEJ7B?su2(^Ys2)3e!|i!kF0O~m-?P9TLzPP} z)D#y3X#h$%*>plCM6ff@^PkGWQuKd{{?rW&R>~%&5$$PZAYp&&cd>K65f?J#eN0A( z_6_(&s4a01)^3d#9w!5`1KwQ5<4izyz#9=bf)%vk2(lI4c)$@vFe1Z^RzXHFpA4s& z02!5mmjTm`NDr3o)ocKX1626knvEM+L8fMd5i7{mY+S|)a1A*kv`N)$5Ml+m7=;x; zV~b)1nHncPtRP$C#Euo@YMij!tqqLB73`6FHBJ+R<9Wih9ZM1NuF;bjSQ+Jq4q6gA5ZY$W#b{E3zVE}JY-NOR6sz+ za>5V<>@~o{d5P#36izeL38GMp6#1NpmO=sWOpJ`Sls;azIdXFVCAi?o^r2{^Yr?u= ziy-O;MdIXJ;{~;7u8>Vd7%9j%Ie=waDZiU=+dUVlm5cn?0+3nSFL!`V5U_Y7>e?ZP4xsz=NSw-8C(np@2o(Kg7@);(6 ztKb?cVmoz!8*F^J(N4C4yX@Zu-&ODNZshv{XjS+w1~6A$;X_i3fSSQ)HU8g8D)9ic z0@d{m;@o^;uiZ3<&jtV~_}wVoFk(@$1+fRiNgQg{~F)b zmw<}A4@p;w@vlJ7?d|PNY{0TufV^wH{`VKy1}!)%5P=8tMHGKce$_yM)P%UkZMJrnWG76GKr9c%|D`X-QRk?%SHV+S31 zT{$*|NhWv>6f6?DY!6xI%^&ZM_x~TAoO@8yR~E-pTU+hm*vE`DC}3SBQ?-pq*c4pB zwJmK#O<}NO*=d5#*7E zhmb&k?Dw$kOgo)+c9%cGUV=gbP!BH*;^n{O%?S4l#f74X@Qt~_UcMGVU2ir5mR+-Se ze=!{Gy!Cvo2D~h2S5`a|5>@vSi(G`2X0_=o$`GK;GO+8EKmp~P+n1u7{6|{XT8$~4 zZ0F;Ht!&@7Tv@C)p8?n>rf&DSmb?CStP=$snknOK+!F1XL z+Se|l21ntGoIKwHI^znJONb8sm%E~~;RMX;!C0KHb)pYkj0&%izwn@F@A*H}>oZ5( zg_AkQ`?RYMO;`Ht{&RP$aI(8Vdt5NuV3urr{6z#TMFg}@DUPjo?=FS)+YO8BUe7EZ z%5gbt87>Z^(B&e!e(YG8>#n_k=e+V38=$LaX zF~XVdWW=_jMAIj)FTUqOaG|H14u1oMNorX^etyWq+oz!}5+pYU;ucE>IJDw_S~mv% zt(MIL4#gMZDs)o147Q^c*L`$xAK78D3(BLK{QLz48ptE+B>YRT{rjZjcY7hisVKqR zv|MGlr8C1&ss_^o>rAQ)&GOfnL(&AJy=KW%^X|F4A3y#DC|z6pdXh;u7a`%{Z`<5e zb*h*{>gmyXfG19q{v9wLT1?f|)zKXH11sZA2%%GeQ>5QrV}(=y4R*!w(cZ?~qRFv7 zGA~@Ya;3dk^xDPjC71EeF8u!GXqzt+v|aPjjQzdIQPrBDsd5$s)WUWAyL4}nCks*X%uLR@ul4^StNfDrt;~A3^s`DcAbq6=Th{R8TQ8vN zqb>cH7|J<9nUx0LvPW_&Z;Dqx+Q_bs9%4mWO>syHTh95jdCkbL#)(zd=xIF_buOI?mpA zpMCyU#)faR`WIlG%P$_dPEOUCeiK`K;(!Wwp>Esz>0T695^_nRa9B9$x3sl z4J?9-DKJQQ&3lzI6MOc-n_dGD&LUn7rpO1OoysOH4B244L=gLo+ZFY8hz%ollOQvM z=4rM7{U?Jswi}3-6ot4h{pZW=@R}*vLGVUv(HZKrhYH&ytHb<&K zWR^mVTi?56&)SoE4YrWitPuCLS)fr9BM7{>P%im8sO`w}hpz2&;7U%ph<`W{+sIrW zl+=WIp}*1GYmGj!qeKxjgPH zA)o^z0M#mk5#$1q^?&t5xZG=|f5$;xr5Xo%Rb_n-9$@-Nw(dU1NJ^T2wR&`H%nvmY zQj?T2hgZWlLtl21*kr59?2>foLMq?EfnZeCB5nvVdBO;`NS)Ts&Q61yU6P4j(N3lr zz@hpv^e0x`%5w7ogvWoyGjB!KGc1AlGJk24p%hvQ)m4p@nMcBC+9y11(;uPeWT^rf zhlfylp}ZXgDC7>cZK=5mRq|?dh&|v*Q3{bRmPZ@Ehk|HeN8(flc7`c2cVSW^3DF0^ z5D9tou*n0ZF#>WX+?@P@&q=|Ks=NRkj z9FkOm@N4tezyk!}A744IXDRvmFx+$b$p1I?|NF1?XYUxYJ^u9ld3&-~SM9`XVDR4H LzkXp$(9wSb)ZCFN diff --git a/previous diagnostic output/random forest parity - fast distances.png b/previous diagnostic output/random forest parity - fast distances.png deleted file mode 100644 index 35baf0a7d8eaa500e4b3f021460cdb5b4bf740ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23050 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
    UaDLGIWT^8IIaE;4FBev>{ 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 Sz6Os3#rYe$W5L(kRFEbMHBFI~GN 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 diff --git a/previous diagnostic output/test_parity_plot n=150.png b/previous diagnostic output/test_parity_plot n=150.png deleted file mode 100644 index c9266e617e77e7266133333bae60ca8d0432d72c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22816 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 LTkm{z_}o7L2iEjs diff --git a/previous diagnostic output/test_parity_plot n=200.png b/previous diagnostic output/test_parity_plot n=200.png deleted file mode 100644 index 3ddc2a3ef3014ea90bcc9cc2bd3ce6bcfaddfe32..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22521 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 Beu)48 diff --git a/previous diagnostic output/test_parity_plot n=300.png b/previous diagnostic output/test_parity_plot n=300.png deleted file mode 100644 index fffb582d0438fd92b827a2a51ea5685325a441a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22813 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%0DMT>%c){7VB9i

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 S4&WQ9xgGR4P`=;y>wf`=^6+v1 literal 0 HcmV?d00001 From 202fc39dde6e8712ea35a042cbaa71e8c746dd62 Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 13 Sep 2023 01:34:09 -0500 Subject: [PATCH 10/24] writeup of current results, plan set for wednesday --- .../MaterialDataLoader.py | 46 +++++++---- .../PredictorModel.py | 78 +++++++++++++++++- ...ogress.md => plan, notes, and progress.md} | 18 +++- boxylmer/tests/aggregated_test.py | 44 ++++++++-- ...t boosting parity - accurate distances.png | Bin 0 -> 24185 bytes .../gradient boosting parity - all data.png | Bin 0 -> 27825 bytes ...oosting parity - ascending eigenvalues.png | Bin 0 -> 23943 bytes ...dient boosting parity - fast distances.png | Bin 0 -> 23753 bytes ...oosting parity - tuned hyperparameters.png | Bin 0 -> 28576 bytes test_output/gradient boosting parity.png | Bin 23665 -> 26148 bytes ...dom forest parity - accurate distances.png | Bin 0 -> 22676 bytes .../random forest parity - all data.png | Bin 0 -> 28656 bytes ... forest parity - ascending eigenvalues.png | Bin 0 -> 22574 bytes .../random forest parity - fast distances.png | Bin 0 -> 23050 bytes test_output/random forest parity.png | Bin 22448 -> 24739 bytes 15 files changed, 159 insertions(+), 27 deletions(-) rename boxylmer/{plan and progress.md => plan, notes, and progress.md} (60%) create mode 100644 test_output/gradient boosting parity - accurate distances.png create mode 100644 test_output/gradient boosting parity - all data.png create mode 100644 test_output/gradient boosting parity - ascending eigenvalues.png create mode 100644 test_output/gradient boosting parity - fast distances.png create mode 100644 test_output/gradient boosting parity - tuned hyperparameters.png create mode 100644 test_output/random forest parity - accurate distances.png create mode 100644 test_output/random forest parity - all data.png create mode 100644 test_output/random forest parity - ascending eigenvalues.png create mode 100644 test_output/random forest parity - fast distances.png diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index ee244e86..3d5bbab8 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -33,10 +33,7 @@ def __init__(self): # Very good primer on why the sorted eigenvalues are both useful and computationally efficient. # Still not as good as a graph representation, but this is much faster to implement given I still have papers to grade :(. self.coulomb_matrix_eigenvalues = None - self.input_length = None - - self.input_cache = None @abstractmethod @@ -61,7 +58,6 @@ def calculate_distances_fast(cls, structure): def calculate_distances_accurate(cls, structure): n = len(structure) distances = np.zeros((n, n)) - for i in range(n): for j in range(i+1, n): dist = structure.get_distance(i, j) @@ -72,7 +68,7 @@ def calculate_distances_accurate(cls, structure): # coulomb matrix implemented from https://singroup.github.io/dscribe/0.3.x/tutorials/coulomb_matrix.html @classmethod - def calculate_coulomb_matrix(cls, structure, distance_method='fast'): + def calculate_coulomb_matrix(cls, structure, distance_method): n = len(structure) mat = np.zeros((n, n)) z = np.array([atom.specie.Z for atom in structure]) # docs: https://pymatgen.org/pymatgen.core.html#pymatgen.core.periodic_table.Element @@ -93,9 +89,9 @@ def calculate_coulomb_matrix(cls, structure, distance_method='fast'): @classmethod def calculate_eigenvalues(cls, coulomb_matrix): eigenvalues, _ = np.linalg.eigh(coulomb_matrix) - sorted_evs = np.sort(eigenvalues) + sorted_evs = np.sort(eigenvalues)[::-1] return sorted_evs - + def calculate_max_input_size(self): # later we may modify these descriptors, so lets tabulate them. We also have extras! vol = 1 @@ -111,8 +107,23 @@ def _validate(self): assert len(self.extra_data[key] == ndata) # given more constraints later on, this may be expanded if the types of input data structures widen - def _process_parsed_data(self): - self.coulomb_matrices = [self.calculate_coulomb_matrix(s) for s in self.structures] + def _process_parsed_data(self, distance_method): + # self.coulomb_matrices = [self.calculate_coulomb_matrix(s, distance_method='accurate') for s in self.structures] + if distance_method == 'accurate': + print("Distance method is accurate rather than fast, this may take some time.") + self.coulomb_matrices = [] + total_iterations = len(self.structures) + percent_complete = 0 + for i, s in enumerate(self.structures): + if distance_method == 'accurate': + new_percent_complete = (i * 100) // total_iterations + if new_percent_complete > percent_complete: + percent_complete = new_percent_complete + print(f"Coulomb Matrix Progress: {percent_complete}%", end='\r') + self.coulomb_matrices.append( + self.calculate_coulomb_matrix(s, distance_method) + ) + self.coulomb_matrix_eigenvalues = [self.calculate_eigenvalues(cmat) for cmat in self.coulomb_matrices] self.input_length = self.calculate_max_input_size() self._validate() @@ -133,10 +144,15 @@ def get_model_inputs(self, padding_value=0): for i in range(num_structures): feature_vector = np.hstack( - (self.volumes[i], - self.lattice_vectors[i], - self.lattice_angles[i], - self.coulomb_matrix_eigenvalues[i]), dtype=np.float32) + ( + self.volumes[i], + self.lattice_vectors[i], + self.lattice_angles[i], + # self.coulomb_matrix_eigenvalues[i] + np.array([atom.specie.Z for atom in self.structures[i]], dtype=np.float32) # what if we use only the atoms? + ), + dtype=np.float32 + ) padding_size = self.input_length - len(feature_vector) @@ -180,7 +196,7 @@ class MPRLoader(AbstractDataLoader): def __init__(self): super().__init__() - def load_data(self, api_key, **kwargs): + def load_data(self, api_key, distance_method='fast', **kwargs): with MPRester(api_key) as mpr: data = mpr.materials.summary.search( fields=[ @@ -204,4 +220,4 @@ def load_data(self, api_key, **kwargs): # thus for this concrete class, extras are moot (but we could fill them out later, or just lump all our parsed data into a dict) self.extra_data = {} - self._process_parsed_data() + self._process_parsed_data(distance_method=distance_method) diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py index 6a79846c..1f9b44b7 100644 --- a/boxylmer/MaterialPropertyPredictor/PredictorModel.py +++ b/boxylmer/MaterialPropertyPredictor/PredictorModel.py @@ -2,6 +2,7 @@ import numpy as np from sklearn.ensemble import RandomForestRegressor from sklearn.ensemble import GradientBoostingRegressor +from sklearn.model_selection import RandomizedSearchCV class AbstractBandGapModel(ABC): @@ -36,13 +37,23 @@ def parity(self, material_data_loader, test_data_only=True): pred = self._predict(x) return y, pred + + @abstractmethod + def fit_hyperparameters(self, material_data_loader): + pass class RandomForestBandGapModel(AbstractBandGapModel): def __init__(self): super().__init__() - self.model = RandomForestRegressor(n_estimators=150) - + self.model = RandomForestRegressor( + n_estimators=50, + min_samples_split=4, + min_samples_leaf=2, + max_depth=30, + bootstrap=True + ) + def fit(self, material_data_loader): train_x, train_y = material_data_loader.get_train_data() self.model.fit(train_x, train_y) @@ -50,13 +61,47 @@ def fit(self, material_data_loader): def _predict(self, x): return self.model.predict(x) + + + def fit_hyperparameters(self, material_data_loader, n_iter=50): + param_dist = { + 'n_estimators': np.arange(10, 200, 10), + 'max_depth': [None] + list(np.arange(5, 50, 5)), + 'min_samples_split': np.arange(2, 10, 1), + 'min_samples_leaf': np.arange(1, 10, 1), + 'bootstrap': [True, False] + } + + random_search = RandomizedSearchCV( + estimator=self.model, + param_distributions=param_dist, + n_iter=n_iter, + scoring='neg_mean_squared_error', # really annoying convention, I'm going to forget this later and be upset when I do it again and it moves **away** from local minima + verbose=1, + n_jobs=-1 + ) + + train_x, train_y = material_data_loader.get_train_data() + + random_search.fit(train_x, train_y) # very confused initially but the docs say it does a validation split internally, so we're OK + self.model = random_search.best_estimator_ + print(f"Best hyperparameters found: {random_search.best_params_} at RMSE = {-random_search.best_score_}") +# if this performs well, we would want to replace it with the more performant XGBoost model, +# which is fundamentally the same but can be parallelized easily and may even have better optimization methods +# more info: https://stats.stackexchange.com/questions/282459/xgboost-vs-python-sklearn-gradient-boosted-trees class GradientBoostingBandGapModel(AbstractBandGapModel): def __init__(self): super().__init__() - self.model = GradientBoostingRegressor(n_estimators=150, learning_rate=0.1) + self.model = GradientBoostingRegressor( + n_estimators=170, + min_samples_split=4, + min_samples_leaf=6, + max_depth=4, + learning_rate=0.1 + ) def fit(self, material_data_loader): @@ -66,4 +111,29 @@ def fit(self, material_data_loader): def _predict(self, x): return self.model.predict(x) - \ No newline at end of file + + def fit_hyperparameters(self, material_data_loader, n_iter=50): + param_dist = { + 'n_estimators': np.arange(10, 200, 10), + 'max_depth': [None] + list(np.arange(3, 16, 1)), + 'min_samples_split': np.arange(2, 10, 1), + 'min_samples_leaf': np.arange(1, 10, 1), + 'learning_rate': [0.01, 0.05, 0.1, 0.2, 0.5] + } + + random_search = RandomizedSearchCV( + estimator=self.model, + param_distributions=param_dist, + n_iter=n_iter, + scoring='neg_mean_squared_error', + verbose=1, + n_jobs=-1 + ) + + train_x, train_y = material_data_loader.get_train_data() + + random_search.fit(train_x, train_y) + + self.model = random_search.best_estimator_ + + print(f"Best hyperparameters found: {random_search.best_params_} at RMSE = {-random_search.best_score_}") \ No newline at end of file diff --git a/boxylmer/plan and progress.md b/boxylmer/plan, notes, and progress.md similarity index 60% rename from boxylmer/plan and progress.md rename to boxylmer/plan, notes, and progress.md index 31d168bb..e0675d4c 100644 --- a/boxylmer/plan and progress.md +++ b/boxylmer/plan, notes, and progress.md @@ -40,7 +40,23 @@ - It may be useful to implement predict_pymatgen(pymatgen_structure, extras={}) to facilitate easy prediction with custom structures, but this may be out of scope for now. **Future design will need to consider how exactly novel predictions are going to be made and where from / in what format that data will arrive in.** -## Wednesday (Finish up model, test model for goals (realistic band gap values, parity, etc)) +- Clearly, based on parity plots alone we are not predicting well. Though we technically satisfy the "reasonable value" property set forth by the original request (that is, values are in the right ballpark and will interpolate between pure systems), these techniques are a far stretch from being usable in a real environment. We have a number of options and conclusions as of today. + - Random forest slightly out-performs gradient boosting using these features for large datasets and likely all sizes as well. + - Foregoing coulomb matrix methods and attempting more direct- but less informative -features such as simply a list of atomic numbers might assist with these models. + - Time permitting, an autoencoder would be very interesting to pursue, as it would fix two issues at once: High dimensionality and variable input sizes (necessitating padding). + + - We can check the model for memorization by plotting training parity as well: Thus far memorization does not appear to be occurring with fewer than 100 estimators. This is consistent for smaller datasets. (see below) + + - Since we're padding with zeros and eigenvalues encode structural information, maybe we should ensure the sorting is *descending* and not *ascending*? + - Yep! This slightly improves the testing results in both models, almost certainly because larger EVs represent more prevalent informaiton. ] + + - I'll go ahead and implement something to find the best hyperparameters and move on from this, as it's a proof of concept. Fixing the descriptor with an autoencoder or another better featurization is likely the core issue, everything else is just slapping band-aids on the problem. + + - Optimizing hyperparameters definitely doesn't avoid memorization to any degree, and possibly worsens it. + +- Overall conclusion: **Switching from eigenvalues to atomic numbers improves both models RMSE by almost exaclty 0.02, suggesting that the models are struggling to learn to represent these features. As a result, autoencoders present the most viable way to improve these predictions, but implementing them may be out of scope within the time limits of this project** + +## Wednesday (~~Finish up model, test model for goals (realistic band gap values, parity, etc)~~ -> Document what exists now, begin understanding more about why the current set of features fail to adequately predict band gap, and begin improving the results.) ### Day plan ## Thursday (Visualization of results + deal with possible issues or hangups that may have happened Mon-Wed) diff --git a/boxylmer/tests/aggregated_test.py b/boxylmer/tests/aggregated_test.py index 47264e6e..e4bf9d36 100644 --- a/boxylmer/tests/aggregated_test.py +++ b/boxylmer/tests/aggregated_test.py @@ -2,7 +2,7 @@ from MaterialPropertyPredictor import MPRLoader from MaterialPropertyPredictor import RandomForestBandGapModel from MaterialPropertyPredictor import GradientBoostingBandGapModel - +from sklearn import metrics import os import matplotlib.pyplot as plt @@ -15,10 +15,13 @@ def output_directory(): return output_dir def generate_parity_plot(y, pred, filename): + + rmse = metrics.mean_absolute_error(y, pred) + rmse = round(rmse, 2) plt.figure(figsize=(6, 6)) plt.plot(y, pred, 'ro', markersize=8, markerfacecolor='red') max_value = max(max(y), max(pred)) - plt.plot([0, max_value], [0, max_value], 'k-', lw=2, label='Parity Line') + plt.plot([0, max_value], [0, max_value], 'k-', lw=2) plt.xlabel('y') plt.ylabel('pred') @@ -27,7 +30,7 @@ def generate_parity_plot(y, pred, filename): plt.gca().set_aspect('equal', adjustable='box') plt.box(True) plt.grid(False) - plt.title(filename) + plt.title(filename + " RMSE: " + str(rmse)) plot_filename = os.path.join(output_directory(), filename + ".png") plt.savefig(plot_filename) @@ -35,23 +38,34 @@ def generate_parity_plot(y, pred, filename): assert os.path.isfile(plot_filename) +api_key_file = "api_key.txt" loader = None def test_loading(): global loader warnings.filterwarnings("ignore", category=UserWarning) - api_key_file = "api_key.txt" with open(api_key_file, "r") as f: api_key = f.read().strip() loader = MPRLoader() loader.load_data( api_key, + distance_method='fast', elements=["O", "Si", "Ge"] - # chemsys=["Si", "Si-Ge", "Ge-Si", "Ge"], ) assert len(loader) > 0 assert len(loader) == len(loader.get_model_inputs()) assert len(loader) == len(loader.formulas) +def test_loading_accurate_distances(): + with open(api_key_file, "r") as f: + api_key = f.read().strip() + accurate_loader = MPRLoader() + accurate_loader.load_data( + api_key, + distance_method='accurate', + chemsys=["Si-Ge"], + ) + assert len(accurate_loader) > 1 + def test_input_and_output_len(): assert len(loader) > 1 assert len(loader.get_model_inputs()) == len(loader.get_model_outputs()) @@ -76,9 +90,18 @@ def test_random_forest_bandgap_model(): randomforest_model.predict(loader) y, pred = randomforest_model.parity(loader) assert len(y) == len(pred) - generate_parity_plot(y, pred, "random forest parity") + y, pred = randomforest_model.parity(loader, test_data_only=False) + assert len(y) == len(pred) + generate_parity_plot(y, pred, "random forest parity - all data") + + # # Run this to identify better hyperparams + # randomforest_model.fit_hyperparameters(loader) + # y, pred = randomforest_model.parity(loader) + # generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") + + gradientboosting_model = None def test_gradient_boosting_bandgap_model(): global gradientboosting_model @@ -87,5 +110,12 @@ def test_gradient_boosting_bandgap_model(): gradientboosting_model.predict(loader) y, pred = gradientboosting_model.parity(loader) assert len(y) == len(pred) + generate_parity_plot(y, pred, "gradient boosting parity") + + y, pred = gradientboosting_model.parity(loader, test_data_only=False) + assert len(y) == len(pred) + generate_parity_plot(y, pred, "gradient boosting parity - all data") - generate_parity_plot(y, pred, "gradient boosting parity") \ No newline at end of file + # gradientboosting_model.fit_hyperparameters(loader) + # y, pred = gradientboosting_model.parity(loader) + # generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") diff --git a/test_output/gradient boosting parity - accurate distances.png b/test_output/gradient boosting parity - accurate distances.png new file mode 100644 index 0000000000000000000000000000000000000000..1894a9a982cc084a320b5c90d2af2ff8ac0420c3 GIT binary patch literal 24185 zcmeEu_dl2I`~S9?3Q1Cg?9A}uMcI2aBzwzN**h!y zdtC1O^Lc+ikMHMC`2Ns+AGogbx~}s&&*OL=&*OPqVRzLO$w}x*P$(3+vXZ?rG-w0Htc??riVmZf|p+`QZasHybBMAwDraAs%LH zcXwwuNq&BZ|2}}v$<>O#Ox-S9=P$<)@xHRymFGMgAD4NUv{}2Dm zlrWwq!gn7u@(f<#H>|k(`1&=fCnrbg zeX4(z=DmCUg(kAnyT7BW7O~X}!HL(I-{}=w&hO5q4o)^ciHV9z@5i8TM;#r^%G&ki zXeoc(e}s32V2INj~_M5M_t1uJy-I#mq+ZHo)UBM@nOqNDkO9ZYqt~p zH#3-W9Y)G*C+cdyMqGH$Yf#oVZ1wfUdD}s3^262ff}|vdQoBL5z?6rMzh{*8 zv7Tv*=i=tZluz_z-4=2EtyJnbrk^b7(Nkj6TjIO3qQC#<&6~OJ+=W`5DbmQ3t&COM z{rnu3w)0*+Rc83(gYbbu6DG-6(?UZzx1x{5#Ud8pPWv6KH%qS8Z1iQTUPyLsBHrsw zJ<=-lyY_IY>nZWszA^^`kNF-2WCjNE_0D$JU?+Fxdevq7+2Rb-OG<=2mWDKntva!^ z9jSiXddUGty9+&8;qX3$t-F}pQ)TPN-L~g@6=e_S)k`hg>688U=55ESN>d*FY3Z6E z@Li+fGtA+D>m`y9)Im-lx2HDmRho8aEKA3|6eoJw*oif zO#CZfGD_#s8hhQimwl(ZmA^jU<=59>#(=GUwB7p8FMGS40a%TUTl4K=6Zu;^5iPB) zy_@sBA`h2z$9z|7B_I7Qn(0g}WI9?49WJrCS8(ZFULIG(#cMiN$sV!D+F6Vc8}B;Y znJDx>+?(H9EJV+CB#Q(bJu(V7+^YKfGkmK!_3%!Vu=`vW`^Z(h0iFjI7IWC@m7akD z1LUyfp%0hOS+EM}w!tHre|^!tHE6;#yt*22Ts`hRn|znQ6*i#9bPRgog-}OVjrT^0 z(}axl!P+OE*KFQWU#tLME)gxvv+Tv{GgKN&=4k3yi9Du6eE?KW=u(QO+ZO zs(!e<8F0LM9K-6dJY3rS>k2P#e=x0aPU_*3Rn_mP+a>lt1P^D#>brB_r{sn6RVhWm zZC^s(?Qpecp=D=Ef#X<}O-mG;&tgG2%U)X$U*&JAEqKctGwr=FTkjPaz2&pAvV2x5 zXK(JerOKK-A*38YR@27^w+r-3Rm4V}pX6aMB5pHn`kmz-i#n>wlG@-^lChOD38(P7 zD`!(MiH=puky3x2Io2OOOm_Xw8I^fYO+o=}=n|abyCPAbS9}XuQ*x1PIbAk ze1!6T;Yqciy6k^7M~cB~GG7|6y;ibZ+$kfZUuJL9ceoX0!OF&V-k{7rcSi~w71rZ; zt~=xFt4ne(HacZxOB~<Tdx^Yf);u*b$;S&aJajFoO*yn6rXRoCC&x(@m44?d1Bin0%7 zgG-@TjASHtIEF1|p(Ln-HMF4%FHP5uCb9RG#hteTX#?9A94i`MSseUgIwo?!>|Ycl`$Tu`VSabH(}ezr&(4YiJV2qb zk<;;bt?vc!+LU7^Rqi%Vmh z4s2PUUlC$&qN6jwt355-S)GvWd!jK2??S}7>z&VtLAm3_JvSSh-0!WeTNzA;N=%Q| zZdmVQ3hTI(tLC#4ZKbzo5}h1B7T679we|Gkv(=LG3hVZ`HhUpZBzp|#k#FZ5{E4g2 z_c&IR-FuB({I{LR^srrFfk@{pvO8O2dF7gSU^C3YMXPpa67AZ3t7a1H-o(acqm8{4 zqDowT-CCZgH$j#v1QEIYhznwBc!U&W%Y#)Oc5ECR7zi;ftR>4|JUBe?%U+2pb#Q{GV2Sw3%629o%5o_H1f^amKBP9%YW?zNOhyH9>&{ z!o5d_`yRi)o!MHQs2`sYDN)rNI@^hOH(2xr5F{76(&Vg(urpyU%`Y#isHkYx`ybj$ zi$?A8fxC`poj=&jdk>)` zbVd%`l$_?_FBLU4oryX>xd0|dS!H^0XVbaWdzzZ=tF=1|rGv)z2C+sSu=N+z1NNff zn)fANrbzn^BwC?&q=!G4hwg1HqMhoUCnB8}>Z}g;w%}CF0*QwZgI+?|%z(GWb@{R! z5-*p_C-{`fPvz@Q&&(`*dwuzPXJ?!R#kIQQqy4I%&$;jWJ2sHMeL^slW63Yqb-W*N ztbUgLP8Z@mnwbI&$ErQi7@dO6rQ%Loa8|K3jvgMRtZs}t<&I+uhkmWGrN^As-RZ$> zg^TB4OBa8QWGV~_!bM!m@owsIuJ^_a5)S&Fow=N_l{7Ve`IEqX8(aB>Q)T>he{aej ztw)MDPhOXX6~54qiHnMk-deyEE;JG{k@+3nAort07Bh1MgM?-{Ex!&#a~gi*{NKMV zj9gpTuF8r{65#W^i?4E@Pw(r~@;lm{-8#aiIZW}G)EUBi(=WDEEvVA&l-aj0IE39+ zu&`k3xBi8;)W@OBacuav9lmcZa_&|0ukxd1Uxmx@KU<~xWp8v`<99zEajNf!UAe_{ zyv`KW_UldCuZ59vC+m9f2DaeB(zXXjSK-AMZqdU=BR}-J3yZ>i#G!n?Y{an_83vHZ z;?e%<;Lk7N=8`F2H&@0Cm;w$ykbTP8I_Q2R%eo1MLm&#<(^^yE7x=zFWm@X(I6TRO{Q)#%%?Jlz#8zuv^hpYOH9HEu-w0Iz;Y*W0V+ zT6gchllI+yS_T1T)@QkNFx@BRI`e6+$IS5$PLq(3*e=s14Q_qA9N9N~1R+dhmmYSA zw!VG>tg)0+`~}CbOD;P)-AxpAV9jmpA&&4~$bD~HYIbz6y9ZAp*DPk)Mh81~@wFmj zZvTbNxcUQy>FMb-47{A$al)nhVJ~Rw>e3DCXlSGX$dt^R^S?r%b zt`YPiDvJXJ;W=Wgyu7L#vz>#~Xv4H#wQH&fOhPYwNkaXIhPS> z3n@i{v~O9J=PDNbqKq)7Y>#pA@<=&?&k=Z7YW6AQZthF?ud<+>I=p?mgTL!1XMz)J0oaZFqsH#lA`yW4`Y7*hV4ySL-`v~S(I^_fi$ zWummC@FH*@(v}W72=A|xlI%AZ2Rn6(Odq?z?m3U-B-_yzZAlWvjkAASO^)s-0m{9l zqVgQV>-AqhtWwF1(oK3HkiP(M(=rE{MmNA~bGWguSflC$p5D`&0|rj#VTp3%aXKO3KPt zCEe#t4gGhgZ@IX*%&pe%EpVH|oBi7G7%u{@N)I6CtDaTzgPP5r+odV*Gc!Nai8&^9 z*ZKL%Y35kSRS1#;%)<`G0)D?x>$`(3g{;WoD{T4~0CF$Dk`r~TUKTaq{WA>^rgmqX zbl?B{*Y%wPShb?;>M8aBX~(~{wFv`!*Tx73o6+5Z(0A2+?(Ss~k^Z^f_mM6TVCXxg zHty7}-dG*4jew0I^4G_sRTxl|)Zu3DEm%GgG`#x4x*w;q;*14Z&kq{=I%G8C{#9)d zuz&lS`0pJxwU=e~Kd7pFD0Al1LK%B_%SY3H{=APwYqK3v8pA{ICH=YgI4&5_RmO0m zxi~l!o$3$EkR*?-N+Qr)fROZ=hV#Ypci@@t0OZKypt*i)X~AEXi;HU$9LECua}+kL z`~oRbL7m_JLa6M4S$ZO_IEh#njXoLdX~Z*OG^C^>TqJ&%5Qp?xH{ulPkG2ZA zI5{<7rG5PP(H-DkA2$VY06oAp8Xnzu2yOtcLN9Fn%Ghg)zzBd@n4|t31T;Nd9-hy` zV0*~LMqka%pk97r-~mb{{3;q;hl{Nuhs&KhGu2S21XH>Yz$6#8 z=DOvSm5=5JFPSRXK+Xwq5S^Zgg9^kf4VT^qpMJ+($X>4Dxh6y%ws?~_B_$>J<-l86 z{iyXVN0MdOu(t(ir6)d^E6yFv)8gk}AqXYt?dd_7oxZzN^hnye5 zVyF;_uue@Zh9ZKXnN*F(4jBr=5_$CLqopCHa~XWWa~2+DsLJ)KkH< zNS^lK!GqwjRloq+ut(s9@FN$3l;^{T7!*qU!qj(3>~dpNCZ+7bT|GU$yqui7kPp5| zO)b3f2YB53G=Q0t47=hTnrI|NZ;-u0z=A`u+?k6f6DI zcYT~s0x#sn(oZsM*yee#egR+i1`&{!K>RGagvkbHrS?9_^*OTUCV+`D+o=XNM%Z&@ z)Muo%wKXO-mge3*4$3*mD+B{Wb4g2&dCsb$3G=HEM2Mu+FmErckAW%3dC(fW2iu1J zVQPp^kFu^YZdGr$U+XfEkHciHnM&;vzV6 zfP-ovrK5SlG}zIYAY}EDuWF73!7O`_Pn1}+Pyrie)1Dv_l{q?Ucmmt*fhCNTNrDv zMcto8dAQQ;eN@y-&n|e@g#DA-fN>a43>b$GF&JPRnG*xXQ9ChU9ODxM#&J9`V4RbCW`J?XPksaATs$#g z9A3nrg43l>3^+@b_bkHyN@b+q)UVRwy7G#G;g#gWH?FRkocA*O`h2R-Vr#--dj?XI zkY=41%Iwhub}$bs>V(dJW!V`^!yENAl5$zC;*V$u5$r2%v$P-gv~?`U3$a)~108nN zBL+7;d5qUQs~>!Z1l_y>w}^O<>pYSV?MnzT z#uc_BvCh+Y$Rpl=9euV8`Bjt_`0aL5G&QxRaf+}_)SG07@tNuPktuPUPeh(Ac=WDo zlQ**7zej?Djg3v1BL#}Nn~N)xQMyf&Ohhf0JOs1pzQx07Q#5Ct(bPYbhm92!TI?Tk zrK(R6n{UKLG3Q9s%ID@c(O2R`GONO<7(31h!=cYWe0dx_7;R^2+_ zubG=}k%XLABfWv@Rxn*i<;2Ga-Sww_LYj(NE5E}1VekTf!|*d*_ar%oIY(uQIzeVe|%D!vkq@ z8z!W&Ea2G>3Sb_ZL#V^aGp3x`L}c>ma&Ot%iwu>8^E-|&Hn_rD39J`+A7?$^vnGue z*@^V{v-^f~hWbVGciE@ZL~r+1Q$}kBA5SAYFu?8>zs7nLn`$T~fia-Q+rjSLR~_lb zdZ(DlbNhv25(!UybXKylp!+d{AxbWUwZB zSx&#Q=R?fsVcvuE3lNEJ68MI(s|m|#$)V4l;w}Nc<|BVi(RP23EsG&R``a^mm%6@^ zq?FlQCcnU*mHAdKhStQMg0#nN`osZzjT9?nC!@6&6l`-z-w)}>YED$-e2{A~kp_e|KZn4uTUxkwee~z_SUwj>z6y$PjEN z8y>5us`ewiB~UB<*#o$!(d=$#YWKsf*RpA5N)vvxz7Km(b9JPMJD zK(IZNGPOQif{c&W8udq3Dt=Lz!<0nGc!CSlFg9k~`%!8a2mBsCe|g?6YLb#0O@GTW z+e|6s^&72yQK4P|5>oS#i6GG>pPBPWjuFBt7u5}Q5_3on1{g*<{U1Iu;E{bCxSOQ- zQa<2-_^z?>O6x{8X3^B|?^Gxt08O~iFwjB=2af=i>%)7Fa{r`6`BU=rBx z2(+>b-~D+>i>M_3j{XOhk7XgBK8j9i5OBCMmDGFj;?0&>SdXv_f!SM(B9~`fJnp zi`N`R*teE1>>j=Ddt#eT{zY@Slwcp6(%#nVV2qN&hK$mTjK`wI1IvV|?+UFy|9U*@ z>X+7SX=z!QsIO)z!GkX0JHTbD(b#b z22O)hET2fYt>_nlwnP8@k-2S39YrV03k$*A$_m9+1{biIIkCUHd$KJ1x1DRvoTUbh z6^33dEG+2Ps)_)jvw`tS%MdbOue(nG2PI$lj=2gm8_O5*=vZm-MzD?ClPRv#cRRNh zFZ&*5_ZgN*Tr<$GxSJqtprS5zEHm2F9?c$~=CbQLUr^pQV$(~6=KDF!m@nZrGnXFD z*MnppPIbGtfThvU(0C1%p3BMzk|E|udIvO^auh=P15tUx3PDD<37Nk2udfk4z_d_# z)1fB)2q_p+SI>o6FI-d5r_6gSDolrE-4Z6Vv%MoyX6<$>#J!cb=jFxCyWVf?@CE=! z#Uv(TAV~zIXCxO&(Vrkw6(($40Bm=n)VQ z&M_ zWi?WqVq$fj6MYQ%^bXd-h6)==Q}WkxC)mP8#o|ml6H^kN5TKmjnU-#NS@(Wr&my{_Kv)8q#mCeoN0#Y*j zQ_MNvh+J#-tzzq9tICG}+ZxQ8R2PgtG%Zon3tS(r>K`6_QS?I1#pT1tIqs2 zPW3!DYFw=1ou7wkH|=|Ni`KDjK6_}S>s3EX&%1QMprD8 zFAsjU*u3>gTZ({VOU#2u=T1(j`N@^T9%}CBS;cQ82kqF6TUsd9?Y#k2o)xTkHN-aaRPCxcpRhp5xWpSI=tMQHo$|tq8O``T_`C#l zTBjst*gQ9CoJcX4`|01UnifD|%%T);`&27}dJ%;6L3u6Hv57kA88R0}LF^u9v6EVN zTnSOSpJtTDo^p$yk4DC7@j*?pKIPt7Tl9{;bQ3bu)7Z&VNQ}1wg9b6U!C*&>UuUqB zqKJ_J#x2A!2SW!jE`wotats{&@Z=aUfWd`hz@R=k1`IYZt~bHKA}6plu>J=X7C>6o z?W`c&`39U^b45-L#RNeG71h!ek3e%+PJvH9uo(i%5wcXu%F@(~(lT-w$Ld~cPvPa& zXN_QT8e7D<|LipC6?0iICW#?8zpci^$Y{ST|4xE<_b6r2X#h&5*G57Jtl9*Q?dix@ z&yLENhg8a%o`FoaL8naB+5`cvWVF~IvQMK^9)@o|*(z>)J41+TbCdeaIC|d__13YiL!+F~JQT_FXQKvt@|CYCK!c^2q+4Qh- zUK^=tZ~djBLW(RSm)C34PMY`HS<*HCzM>wjvwj`GRYi*cKc&jbnPAl7U}8BK+u9ha zv7745fZ=%J){tdYbDk0K&3>bVUgO9MGMj0YV=dSBYk3a1A>CS!Pxrb1KZsfUrFoOK zDmArbGUnjXhHWFo#Wo3aG{^q?*}U|or8F*XyBbklX46xh(!Te7on96kdpXZ*W)o!rCuqZ1kLfDZ($AXX2ZTc`p!d^{M zIB+p!bN>2yX_%027cXpU+<2__t@vaCe9_bUUbl9$DJJ@dhL=dx7Ly->k)PdZH%rZA z-C#|6llhaH`%UtjO#YY2HNN-dWNfZRp{xy)%~Fe|RGu#{2=Tk>n{|58 z{&S5h!t`t;5x8r~OZLTs3aU>r3H$Y1u|@@MeAT4Bw?@jm&KWyQzNJ)AiF@QZ{+kQ# z_t#7E{ip0DOe3SF6}Bt=R>l@qW}VhwFl)BXbgn<;g~azNC_|A4`{nA&LWBGPMK_X7(wJ_?^l_lb4*JainpkfBA>Yb-< zA{B?#`s2C|>7CJ{NYWEJ$Dk&W5QU|AI5ne|{L^hKo>n!Ur9I{1uJ%*10-xu0csfQ< zv53l~P<8*{zrS3*Fjid-1$2*LoA>ij4(|pI>C=kI|4q*HnxdR@V5%w(RHd*o8|g~e z9CPdbV#90ly7! z1jrZmPwm*`5Mt1U#&z6pPc`flp|%}mcOTRqZjWdjU+&7& z=8mAddNVcP$a~1|AM`|JCxp|`4d>CodCok86ldr|(m=w)DJyFNm?c|Hay~OB6)NW{ zO#Xk7V818wm_rGPC83@bGO ztD%94VdVrM0?d9aD^hBFdR7h5SgnZn3#tDpE91xhKi z;wh%-rp;F}x81l*)?)k{no%Y9gT1vuu+%0IG+PPl5!4Tm%qJV!?L$cxa~}MB)Wen0 z+)R3faY$i2+C>I)GBf4lWTjJhTjc{4+Ug!)eO8}^IG6Li{PIO0z) z(>P*t1QrdaXA{w+59drfDifsQQ@B&t?b0-Gb>1ux@Py@kMlpOkGewfqScubFYIjCb zr9JO+Z#HtVgLmmo`ANoiO$SmJhBUrF*?38jv72_JOqsCiRUFdmH7D`; z?eT}(Dp7eDZ3dz%zF$cET)=(Zye~FKgDFGk2rA{ z;t+q|XNvM~YTrk#m$~Ok@C<1I z%<3d1cy$_|hx?y_Np5as(vzcm*1gkER6&8%+<8=ZMXd}oxwl_r1U|DB^afy)`PCe=~40rBiY@$XPoJ;j}Jj4+6U$2OIOH0B^_kcdZ zZvB3XBDD<;s}8_YJ^9U{LqLYk9>mD$a+EYEaYO6fMAP7h{}~b&MQG>j&8c(WUzsE#JA)f2CsO6S(HY=4Q2D)6tdM4@t1-z<#9L4r9f*fd_DlDRr2OYX zOb}iXI%A5&`3#U#=OJi@UNXd4Q3O~*2*&tzFhZHZxPklzF>W^C2I5}^11R}Ge0V$K z@`!;P3?zRbK61=0HcwOz=6|6Hd2*xFDsWFIIFbKCS~Gk8{rxk`Nse$23ZznZ_H zSfM$J$1{n~6LXfWKK6j{QCd-#RQGL7xnto|xHAqn9t)e@>{C~-(EN)sFyeh+`IW(R zN($InK_J6ei_s6hl5KQO9Zj4+!CwLAh|rRZrmf%G_JNCbYW~V(y&%Rh&OUc_CbUT_4 z%e)ig6f2&v0nB2Kk1lv3r>&ZcjjcPXY8fL!i+tv65H&DMg9P_YqFtH8q0fe>*x+cL zt@a}mrW9m)TWX?s6HrjJ$f!PzU3exJ=pZ^1)QI5WS8Znfc-hJQK|naabVAsn(a z=cBWSiAS~MH@=DYt~nOXzg~z$l`t|Ot^Cj*I zzwY!?r1z)pCUD*!X}vB2rPXX4TtsW zauK3z69jGy7dJD|!|G8lx+wWpPA8h9*Nr;dG>{zKB7OPtQOxKQw?-CXz4av0Q=KrO z*Nt*>K><0VewGNWVS6jER7>q;CDwxVrv%(wv;I?!KZ^+}sD;ahm3I|_fv?KXUk_V( z9QY%n%!-oqZu7UoS=AXBMW}+$P@{D8_nS)7H7TE>^xuQ56qDkE!I-9|wT%=(pCo!r@l&KTJmnR0@KJejDI8m%4B2qzWXk?00o8E-EqFHpTyo{^EmNM=S^r zNn)V9_AGF*DMr5EmH9DHP)KkU>JXPhq7c-h5rzqZkmzp3|3YSk4B%S7y3KA}Eoi9R z^D9!Zj$gYK=Qe~GAVQ3VtUCG-6`bi_&=Tm5Ibq#Imm`7)JPbk}FK_S?>TTM1Ln&bG!qq&5n2 zG~{}-DZY+R_7RO2P+qSff=_pqA(Ep{p_GGX)uqmKFaGu5IbZY!xnEI3f?4C3*jq<$ z0o@Ae)k!(F2g&Yk)yx9{Q3VPwHsy=-dIP4PLdfZbEbkOJAQFoZ@(WEe*&w|oq-4zB z!ec%~O+7QcuKBm}2Exp<+E;XyPN_)B>~PU*@e=Y(hXo>-1!RDFvq^3*L&(lkJ*L%EeDotZy=d1051%+VnKwiHM^5xUO@ zKw9DfVG&?YK%yoE4p0HT2fCvs8Fn@{1<)+UmQV+#U)vp#S|2_;r4l9iP|7$)ib_up zd7PPHMyL@A!%(1!SVSa9h~(?HIdGjNpuE%{8NeDr9V*{T~3fq8)KK2>^)Y;r8hTzhVzGP|A2DW_R83WDp}jUE6BywrMKR|OU;JrUGBSg@4Ca* zQ9Pm#o`b&FV!zDc!cKJkY*UOyN0xrcw*$8dNCP`YxtaN-?h&@~`4`OM=w_$iTl^Aam!aZYr2`N#yAF_I)_=??aET&Wh z0sY)b5N-cs=_O;RZ25XX+P7^-0LX09cXEVoLmq!De6WGyP#Y*h7u}I#-6#rrK+i*= zTL+v(Ztl!JZRjf!W+?<#O==SJ^-f}(37F07=No-~zgA=!-^osNd~SXl#cC)llEA~) zd%XhJl-2-u;0dLS?&1;Xj&os4aD$#LN=rv4Thw7V2NWgvJPnIb!J_7785wL6B!9|{ zdie3dGiOAbl`4BMMM)3hBT(L*^#gFd2Xe(NsD93s^s4m&p!U6%fXAHjKQrlTb=GdU zw!&wysG;_4L2}U4^#VyMeE;(^{Sjb}{Zvz=^gsbtUM!)pu{fQ5U7m%Pw8%C_*d=}U zZO9QZNl0M~w>jTsxOb{naEButm8&4xLe8vRhRX8R05Sd~OK|Yanu%V#x2$+GmzRN# zWk_DrO(9|Gb4tzG#7|>8h=DIUjYU-?EK4J0>p>7nl>$qf{BYPNs%;!&S6HjVk>ngi zLQ1-9uhw^v@cHpA2y4Gzq3FVuNJ5|AW3*C8nW_c>3jw+!G=+D(Ulfpomom!y#yF?*i?rX}8G=VxL^Df#&#h;I{K^;Wvs%#XMEib)CRd6A`n9s3U!W#we#9!V_E>iW6Rte0XqTZ zsX_}<$JDF8yryn{=EM2-v~SyiTObF@gSEF+#w6*Uqce${PE!+Ako*0zNTJ0Ok^e!z zJlL2-?(X|`ATsNVAQU4WqYTL-Af>s&&E2{(({MWo{ZWC%3+~SR-g*}^085VI!#}mY zE0v10M((d=pr6AJiYh)(E7*eOk;O63iGEOhE;~}xe7=PKxI6rm*z!!bI5j0Xiy<2k zdKULgacxvJE9iw(5eYdIWhni?fl4ly^lm0j9Nc=J;*&R~8kS(f-BZ<+sXQZl@Ot3> z_m&V*l%u zis)yiDXtqq=-E@j)sp4!8kWA`n+8zo`1n+bI*sRp0=K0juJnaTbOpDtr?gZBE*$)~ z_T~%lDkXkVzMvoiP2!Tj-rpNRSPQv>Ggzu;7`MlkAN->BVVmYdyfr|ithZh=P9_Y~0FUf^m5fRY_fg0rd&p;FO>RC3bLqp@z^mP0* z`^Vz;ks2uzzInL{*H`$3Lc|p@%W_XWM_oc0y(V$SynaQbeP6yHYTpGBG0(uUQUS?| zliT5SR7*;?at5Exy?X9ug)1GFMgC-xq)k0mM)eTwKFB@v?e<}7e z24Q*)?e;co1wBpExwyFK$ajBCm@wJRANU#jRzBr~`mn_Oe?Mw&EwrNgv8K ztRfYp5d^jt6Ho&jB%F_Oh+(T-u5)|$)5!b^9qW^07h?3|>LP)v*$Azt8{eTya@x>J zkiYXl?SWNdxwrSs!zSvx;o#wrt&a2|Y%TQPMhbhZ^8v>@0i{s90R8~vusUgeOfY%Z z5^2uVv%9Fbv_`wSWsJxgqc4ATJNzu)nH*Ns{KT2SD-l_;aW;QJ(&!Fkj4 zhZu{-(@__xcvI5Y_1E*SzR6)eKXuyvL*|klwwtzjSP|SE8*%Ov0#+@7K6#e$;IqH< z%&%zN5DfBuaH3tHMs>27HU=bViMxD1=O&|hPwwYGkpH!;XL^uD(Jar4yA_fT>rF<= zAZDe=H3S`h7V4Ad7U@q~y7;KpdHGe_VS4=2lpN+CN}YPOpfQ;1yGM*hNreUy9EVxu z*t}f-)oz^nf^5UTXotfq@pX3%?#nQeC^Mf9dNTCmK%eb7v-U;Yz$d4RCe_zTMB1q% z>E+<>subI)1oqE&+QIowAuSn~O z9jX6bu1`n&<=UMT_utPdGsZ~O@d6_t1L8S*!tSx?%P2-wnkXoYj*y_%A$c+lE1Jr) z>U~WpBY^MbZAL65E?c(Q7p`6Rvp~N)S)EjaMg4)z^ z9kAACfE7xO!<@zuhg!fnIgli5+vv z*U_SQZpDXO+1+xzr(RT@UfHa`fMs=SNgW-XGiK&jPY_-HdkC?8Q;D3g)O5Wk2-j^s zO=-Or_4E5luGGjB#4-C(a6^U-_db<2V9u0xIt45Nk25oeH;TBpe!5Y!Opu~nZZ-t% zd|CXxbWbCcyM@8>f&lX$+FYz?+$Qn!X6_)(wF;E;|hhM`)8xeW;pCkdNF*At@N zSYYGm&b4bl^YE>2n)1bAehF#Pxc|OG1e2_>w9n>U=F@j?+_;gkPfJbB35|36fTcgY zZ&XV1N=ov(k_}*9&gHe*Za!9&HiP2%4A-UtQemqC zGA&z>$fczMPy9JI*!cxA1p5pOu~8%_l(_PR1i$T&U0tTG0ID8MciYDco&Or6o?RY{ zwW)xrse88qt-@giLNZ^z{Aur0VJ!q-cKDk^wj26yqUUCq#{u4TBxfw1=E;<{j*t zw93f<*PvR>f0O6E2WRfjAChozgsu_Xaa2Xiyj2L>eE#J0kE4R2PegXF{0b zU_V3X0YY@{JCux4){1Us!3kRtEN6(`a{N_N>yR<^t|0j*`%V&0Np+&A^_Vj~^|mGY z0^id4+pB1!#`N^oxZAu2DiZ+{UcS4=C~JyOc&z7lcXu^pS4Q1BMIgN#n3M4w_kMpV zcU&Fh??MKo2KmtB1VRGyl$RHdiB}AC-_FHeYl4*Q1)#0qx>dlcLZCv8nX`;fwX@9L zjb~%)uWN6!-`lX8TYtnKSOFFPooVl0Pr0Weh}YkP#)S)GR?syJf1o@BooQ?KK-v$M zTqiAbMH(m5bA!$p>Y!Q^@YSbHPUsRVN2jF?QnXgdB~@}g-0No_3CRz=f-(W-L>Cwh zZIW-^oJ-Wlzm30mL17`T{te@!S0b}--Z@h*O9ny$KqV;>*B$m-goS(zp8eO?c)6gd z5FVU&#IT?yU||-FBQjPy04~sM^F&Q*UA`Ui#cI#h0qA$-Q1+Qi3w4K{9UFjYAhzrR z*t!W~!v$#YQ}4UPY#aoypjOiU*k3JOcL0_W%XD&Cbf0ZEto&2*t%bBtQ+g{WUI;CRUry z-n&KN-FcP<8x$^fdukBp#l!WP5cvyL8ym#BsQXj`FO)cPum4%go1F5Yf--XJc)@~l z(I)^}#3DV>Hfk@u72?Mj{-ki&>lP_e3dxIXtKVHCse>XJY0{4$J$qZ-%f|x-?E%uL zODWP$qK$*mqb_$UTIxM~sYpoAc2!t9%lTant(hfG>~h?Z3|!B_r$j|Co9-I1Mh83@ zfy(8MXO-8vtdc0X@r}1l+6uwm)8m=SmY_9Oo;g$+v4wLSiN;V;!GY7B4|iCHF6q9} zBw_lG)tvP_vmYigo=KuUA>q6)&t8@`@AdfQuR#! z6Czamb;{U@tGk2##9p1emHJ)Z)7s@Jeh|p*{F%1o44H0i--i%N!(zI7F*;z`YQxu2 zkMk5JRP_8uyh$^-U-LhOhxU&;c?;aABg5v^k~s)bS6NISr#zJ}nvyQBd1hS`a&qhq zgs)VOJ1ERC{Zlyh6YeVOX7yO>2x<*qJyq<&jfUq@CiPdGBP;jsv(EeJwI zmzUPvzXkn3(a-#M1Z=oyuV>J8DO~FsmKR0;`#-d*N6NT30Umr(U%y#;TQ^9WvI)-I?|b}kqg6Og-V zReZdk+@vIK+GvlmCc`1!<_2jH6O;g^61NuHM@9|Z_VcvE9MkN?*$wq7)y!CHs+1&9 zoy?|<#t*k$;Zp=|So%eml4`}4*6=rYYxp$2A$}~&(?sB_--?}$EtujOt;wV2ZX-yf z<&_-II5&?wu)F(#w_*8>!gtOyILu@|MW#$M?Yd3d&eY10zv_=3I7LRCrQx*7xp4h5 zk#12WdbWK?+-zdotWjxJ+hNT1P%=0|d6Q+D%mdFF7w&icXU+KwzE|y2yBJj?e|b*) z7|D3^P2u};N*5*Qv2}~ooyYG0`RMeOOLY7G5DnIL`|FsG-ES!LW$F|xEo-Rsos9Ji z1!K81)ttu+4TYN-ROF3Z*y%^VmK_kt#KCKm9r=+VY!>8wRo*yd_wf6_(u#Fm_GXOS z7>Y-sA;^zP+Ucu`=+^xqdMy1yM7Wk_)aDZ=)@(&ik^UN%|0sQadQzv-hF0O|z6>PT zXLTKa(QiNZrN~3KD0jRf8{e1VY$f7u+A6Q-Zu}ty zXNRBEy0lXpuJRB4qFd5~T^9*QC8 zpR+#sL>TkZwb$fivI_O_nlKtXd3z6^nF7wUprA=AfI?L7xkBzas>~KmvalSQjwBXT z5$ui*YOLaeFC@hjuW$QmvE;c?H%l5sxccsrp`3|kOdI2y3L?-uBvnmK_`=v-7Cx4R ztl$qg4WVzJz^;7BHu60KU80>k<5-qxr|k2|iR8>~M`s>H**r!28c zcqlZa3*PCqL449;-yBHlb?SI~YdSjq-Y>Vgd{Jg8=jYql zU~ZJN1c37RCj_(cf?voKr`SCS3677}%r*utWibHrfWoCo;^^U?W2yXpS1>$AM@x60 z<|}YZC@LIMwf;V8_W}dOZ7I=MS19|Sf{1jTL4o5A0Y7tV$$mqWUmX03L&x0heZ!GeMIg zKHjq5jT9I)RKz9I#$>7rI>9LtRM$BWpq5Yg8vw(Fj%1WRM}!aEi(S9XpFe+&pH>@jn1QLqc550pP(Y|3(_>zIcP|>9uyg>%6Qb=iB z+7&j2v^(ON9rTX~QKzLR&e8Ki8xd$g?Hm?|OEDCTQaSK>jU11+S!jTb&}n_XDga~9WJ&H{dl%ETi~H?Uh@Ec`XXh`O$2=u2((@L?G}_f-Ggm~Eij9fnIdUls%z zNN^b{Yc{`ZE~K|t(Tsw|&4Uqq)U&sCcr*(+IRdlG=gz&YWx9AR0sT%j{{Fn=BjexC zoV9m0uDM^SV$2Wce`&XYLUpgpvw2>V_{ic=p|9NEuW89%8bv<^jZQ8_~1ree~y21A-vaLTS$yKD> z_&qw*ti-P<4YTyx-~R@%2`0j|(VLFAN&Vh-|@v56Yoxq7fLGQY{zzk7YToiQhg zp_tINGbQ^Ib!{T*)#*E~p2emGnM#Git(|e%s^PxHNj#Sz$`cT^#wqUXCVK&itz;q; zrLqR2Gr=jQoVduSoLt0kd%OdqA0HgZ)SIsA-m~3y+>?5Q7Z^jw;(jvZ-x?jwrY3E3 zIroVGrd>CM{ap=WMikZaz-dbfi9VI**PB8J66w>!Z4GSDKHct)o2;yl z7!Gq9k*=c{6hs9(PYR+7|LWH!`XyDoI76&M=2+dDsx8L;9SwcPr|~KA%!6%+vC%R0 zN5c$%D*xW!_^jL+bLfFhH_G=O72hcSxUfOG?WmUIRde0ONM>aWKhP@!al-nq2Y6wA zS&L6wJ36}WH)q_zjTyyZeGAMJ^xN%jh5tMS?=h-4_G(_vJI}M%n@-f0Y1&QNiz$M^ z(QnBasIjb83AN_us0dIaT~Da9PDP7<5+I(gaMnIML5`A{9c1J|1Q&i9LH$)( zUwt`ANZMNFir!>=(mpNcj(YSWF!)*DUOFqsHLH{e%1Wr<2X^j?m}(Gm)4bMM#8$rJ zON)1jJWSjZAMenc$=pqXr0@PM826nh7&j3^ z2A3uw0xo&|6Opbp4RY{QrHrZc_K-PzXDJdsYXP6iu$p%Y*f$vRqlFLgTxY(!$N|l^ zUk7~TYMuMb3Z6@P>U91n&Z?2hO=oH3#YZuJFuYh~{AgWa48HwR1)m$(g6|zz4;7gq z&8FL{6HMDz|A#8BZ0PVr;vPzgne|;&CLn-PGsqK4Y_)HW5TmZMR7#p6A5cI(z2Oe6 zt+rk7ZutBR<3K(}B)!olWX5!s2)_@Anl5#SN)GlPs{iEy-9i^^H%)bdf zC8Re5x&#*BBRqrfRe_r$(1jojo&QMGTl$6g`7QX40W<>id=5KX`k2okkJ${->lvZ;WmQ1&J41m^j!J=0k_Ju_#{nSVGhC-;82 zxw(12_xs-G`5l*GNd~v|^%CLxioVKS}Q>^-$I6lVrH{P4{)2`qu0 zAL}qb=K8nJEc1gW_G>b+z~HMEkO(b*vOr)g&cu{*v8H{2eEc^nVYBk%C0IFVg-QHX z>}4s=a*RgI@Mr*oa^>J|4=o_(&D-cEpSt?@8oGc)?23TlQ!(6qJl&rcEY=CRHTUd! z4gcn;BAW?R{bmT9Id-q{6ePfvz7-$^vO7a>cA(I42>KBB-*_k+Rz}U7R#J4IxjM7NN-j!X zQJNUs^n!d}*Pi+6iFWZ z5YHT)cOSfLQkS*vVai8vR|^FW4`R>p&tV)BYpcdYdmri2i^tIyptw2c;Yzto<{ zxi~dF6pqaupR|3ObWhBH0d9MN9QDmwVb8S3aWQzObrxingY0K6Z^C4b(zNu@W8Ra= z2MGJBynf<|#V5Am_=AtE47dB*7lk7U%{luz;BD5Q%ulG1Y&Az$)=q65349QsBa0k^ zfF#H{-3Uk`6V66JGQ7|b0ov4*aF?vzQuH$@VGsf`j_?u!GLG;80y2)U8UYzcID~*6 zM->4*jtK&K90ysu&*^c(5YXdXK|qg_kANQM4FY-`2?BZ?1_FAVRS4*D>}Bny(5HtW zpwGIDfIc`60ewuZterkd^YvkqmM};z?~<7izlG%TK^duHY0P=l=(ik2H#&&mC~lyG zNRFZ=9el@8l%aztj;k(7=5zM$I)&^`X-tTBC8Nwa#c`D)FC^ofd31ntCX&EiRx0HZ zXmnd}J1BYIFkvu=B`?wT23D_yoB8ZT-B|zq^#edS-I4xWB^l_6EAaLNgN}B&FBc0H za@ibdWb1se%yPk&@&^~I1tN#%C|>ojwg4-s;E|*b`c=a6g8wZJT8A4@8hv>G9*r#1 z)5Cm_qn46Mm1_A6zy^)nX(jaZLx5&DU=duqJP@Vw4+9O=a=$=wC|?4Yo0Y23;f-Ku z`MTE<2R0$oz^rttc?Gtx$uE#e?nuIPW3PCSJG8X4%1Sb}6k8Zvqs{1`TseU;Hsui9 zX)iD*WB~^vt)A)pM4C)r{A>bngQv*Z={A%`ST$T9p;gxKZ?h`yT0@>&j?C_|aymr` z79WW|>=V8<6B2WXe{JC{x1!fcomeNCf;}Ov4vf)@`Z2&moSodT@PYNsGryf+^pJ8A z%6#$NHbI~?C5jq4%9>&x zFL7|FYJO`>osL{sZ;3%m*^d#EQ~eY$*^xdWtZ%fwsQp)ck#gu}sEm?ooMJzTr>(p~ z(AU-u@77qTr4{8e@MZKBmjQ;EdfvYF?vYgUwZ7ffC*Wrz+G9)uvubQ0qw;TkwGfoS zN1}bMt`!&wY9mHKIDnfUy$>nGYmi&_pXK}m{cY7`&g&=`XA^vuwxH`6Ss9@byNLMa zDdWNlsa7neDu_;IRY#6F?jF&;;4x55`1v8Rg3VX$yun!EaXx;@uB1Ac!EzxK_wOmv zOu2S#HP|$fgDVJm3J;_H%7e}RDyu{t2IS8Mwi!DmCzlxKF@q8(7RA{?%qD1kL9a-q z(?|#)F1SWCN(b;dbjOWaxtU@-dZ}d+sPXO|ohY*iZF8bNa186SzPwvmy-ejF5f8gr z0$h-?8Cwu6Zoa;H&hzG)^J@U3Akqam|B~QzV>LYf*2l|DU=cEk7y3*G$WgI7w(5Dk zH71-K0*)joC;V0p0m4%x3Tg;^XejE4s|#cjObB-Kl^5N(6c=|BG?Uaa(UAtf3rS`H z+F>05^Y&JBL2lIoYD~qIz_)i4Ob1s(Mps^y;ld9eACn#k|05Tx{k)pS3s1i;Kp#Y2 z(pHu6q;RHvBebE)`UfxKrevJz2TvuBU^-CeSz>|wiog+39_?nm;zs&yYQ*^ppaHQ` zOCLg5;^W~Q%KalL;u%|Z(`CQ5SOaz)%;%+7har1OCO=Vzf#*xWq|zd1XnFt~A>Yv% zSL$$jtZIH|Xh-()slFdCxhX^7DEB6fu;s+f&QC8Jq&<>ogF5K)I>(2fO^|Pekgd(C z3@F@`B^n3ui_mKH`Onm1&y0?at{)icOA9|Fr)HeZdjBmz zF{pI1vx=6E40IZ3%x{WH%k3YZ#zC_OKEK#DOJPay%;NZD~?_S(OnY@r%(6 zPLDPW7AL=jOe$*j@&#GgJ7E%ZBV=yMp-=JGqg|W8+~o5L&aG$~od3&jOpde#2I?3r|@|669C)D?Xoykfq0er7r$hL zv=2z0D3}qbBzfSS#(FMbuc{JBPx*BvD=|b*)WI)(vz6z#NG1{~*19#^gh1>T-u@v; zGcnYvU|iBUqiWet<=~F!?Gy6{RX5;6YZ&fXQ z;WALuIf7HNf_nF(2x9@&N^%n6o9eqCVgCB2lejKM{w+6v1ailt%+K!p)tK9*i`}O0 zJi;|u&$=s->Hp?AF-~Y!YA_uD*A!?~qcy2t6QW-^zhNI7vB5(hF7)-+dZpmejp}H< zSr@c0*CnmEy`b|C48i&R4>tI<`9F~O-JfB8LZtDprT46WgGR`T-7E^{KObSybM3BPumYV1w5ng;%!GE~r0ZO~NJ+EddRf`T4OHjg`NBi#=VA~5%q7q1= zdIW9CNDS?XBpgg-usfIGs-9S=uHBquG6v+AGE#x=!@+l-HDcLiur#l28G$ub0q2$U z`So3d5#$11Yau$ra?HYs3dVa6)?^hSJw-Sxo$Riy8+(-lj^El5uiESqcXTeh!^cX; zb&2$`F+-%be0P?+GuJWSXnVxebM7(YSZeA)dvylvrKf{{AVpPYx-pncCNPeIv&rV} z@dRtN(bCcYyRm05tDa;7VysdlN-5|qF$_o>eaJXDbj1;tu8gpefJTsQZqt__J8428 z&h%6|8E6*xjx}v3L&wcHJpcbD3%J%{*<}YJuP4px zbO95<6VC+$ru7w9!O*R(Jrsuz`!=L=1vGPRAPFg>2GRkpHwu)(<+@QZYs^JU?!0pQ zrJ`==qe`AFyH5Uz4!iq1CnbDleR3tJCK!ZlU=A{mVB`T~y;#(7v-FK8{*@aUF2*b< zh%tnf`G10E3;9Fyd$!ii)lQFT!Ed-GYm2kX-c#&S`)YB6`` zcwgWD^de^2@9X2Gx-vN+ge5Vgs0<}kF93*fi8Bv2wp%n^8IH3^&zY1uEu2}+R9Av z3f`1@dD7g6oRUYftifaow$FM`%phQZy?9@Ajz}I^LXK3V=X6S^NR^XE9Bp_x7cN4G sp;V5m0sQh$kgeYG|7f`S4fAuZjT?otrx?iT6T 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 IU}zukA2TtlL;wH) literal 23665 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 diff --git a/test_output/random forest parity - accurate distances.png b/test_output/random forest parity - accurate distances.png new file mode 100644 index 0000000000000000000000000000000000000000..4ad3629c7a2570414ab2aa668ad75533b7a7dc6c GIT binary patch literal 22676 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 a^oy^b96i8HS^+XJx-4I<_7#2^mii}z?5jxt literal 0 HcmV?d00001 diff --git a/test_output/random forest parity - all data.png b/test_output/random forest parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..154ba2b229b3484205bb456cf064616ba96f4ad4 GIT binary patch literal 28656 zcmeFZg;!Nw)INGZlu{58P^42@x4e_J4ZJ=>t{3`<}R+*jt;z>f}FhUG*)hIPOc(c zT=xIlfYZ^%lB+}N!2)!G>m;Y=ib4@SMSd{8NoHE3P>x3O5ASPwC9IBnKiBL(J>T39 zVtm?4_u-q}dlDJVn`+(f3s`NqZ(-%W#MIBL`evWkTE=awPxwYs zQv~Kp|G+f#+8efXpL$KU6nKfCt1Xt-eYao7(nrqz`A)Yi(#6j1poyi=-O%czr5xmU zO&y(>#ji7;HESF^-WE%WxGnsLap}s!m}_Uqf#IbqS0B?{@A?`{MZUSYR=wR3-Q=^~ zF8JVVB}&J*`;#nH)@tdfij0iR(qMivD=X_x*8{@WhGb$%8)3bwlHybA?u$L?B6~xo zTKf9g|NcFr^xNq^+G^#Ro^U)p+O6CjFyOc8yK7(6F0eF^7r!^=sygm}ygE|t?b=-8 z@iug4bK@r=vzUij-CiseDqPXnYw9w|&6^8rRqNVKp_IJh32!Bi7U+$72JT9!CY9;tTb{_8YbT!TlQFeS*UxZ0hHa;T3J{?5^yU<@9MVWkyRRbD8&AqQ?l!*LBD7N_UZi zzpu1RO!5^uD;`pcxOH6<9Q*GTfr#9C?J>I2bDe6p*2MoXy+e4Og3_g#w({>wd`&~c zT+1ZyNAQzj9B}GB?m6jazvgdDzuzBro9V->;9WV&1_uU~W@AhSh6+siJ=ey< zj}4uFlaPyfeTU)g3IrrabD2z7h>5NiN2&--Vdd9~k9&;TAHf{&BAp&=Ohu&8hl!~_ zcyqN|@@zBgOHnV(@WAnUUA~d$c*$&OuZpNLbMo^-i;jdW$@9a`5$7h#2Wv%x#=hPn z{$`TVI7FXnls39$sjdJ0dWTFsSHPj7e2?#XO=gxxrcE%V$740MPd@u=d6B9TdO6y8 z?+D!p&6-GM!n3G1Dc zo2z7QZeF?3fN!p+-8RT@9mi^}E!M`$$}09>nXRRO{YY94x>Dg1Hi72Tr(dsJz4aer z4a&;Ov|-#&exNAb`_z2qVl9hdKj(nW#&MgzVaP(GRpt{tlaBUQa~c|?SIehEE9c^D z`^Ls7wr&who_vSrXE=;kW|f!gR;`xCJ5(-aM6dfc1mQ-cy&{w-H&4JP(%RGMTTNAJ5R9Agob$)Sus%qr*i)N@}z5x4!apZ#0tp`~^1EU3vXN zGx>N)HrTSycj?uPT!`*?2Gxc6$WSwR^Oj zU&ewd0RUJ6qqaTTS@eOaatDad(#bbQ)=?iVJo{N==f@>NE3oO2fb-Mc27E57orP}u z#_g$K>LvI_)7iOzvwB0?eWB|7{N9U zR!~&jUCPPNHmUQk1eo8QiBw&xTt@eX(>|c%yg!tko$b~{>A4UhIMD?gk5L|ZtU+VI zq~E^v$-(B)>3Tr^`PqJ5oP=Mc#Myyqd%PgmjI+e)js|7G$)?C^aj)A_R;EqYfA{t4 z{A&nA7HBw(Dm60`J>p<@Wda;(k(oR%h~_ZJxZ_w|Fk2#db};SUOdDKW?N1$WQgF7N ze2(A=xv)!GhxoqX`19@d%9#ko;#SToIrY|gD*?xeT>4NUX_%^Hbj_Z=_~}k><;hlS ziFGg2=`2@(b;VjnyhG0yZc{$%9tK#O`^Y|EQu^{=6Lmm!d*||NGUKk)Fp2D8W~E~u6dDlCI!ZVE$r*7F#ib7jFdU%U&be0XyfhFbagH25LwO*s>K$q zj*5zsIoWOo|@F7n*UO#sH50 z*8Xup9kcv^@O(nAivcVVzt4_Uj%icqz0X=y1pC53KTHQ-32d38R?7u}z(NM;Lf9$G8OOn0iH znk+F61a3fZ@_DaI{HZ8qZov83z-JbXXA=JI?j?*Zm3t$$1`eae){*XiUtsG;|#LU$_i%6fnqrRd5f*49GyW!Ni)40<0(IcyG(%e^-LMIVm?xI{Btyfzq> z-6>dnsj>f|x$X8`yL}@A%Tg0;Bz?5+=5Mmm6Mvb)XTR~lBx34L(%X~AeU|g08J58^ z-W}^-wzaV-yh2E2XJ2=^H_#Yz$H3uyF5WR$E%lLJ*`$A!mWGDuxYu-uHn@h|moG7w zH=C$EcPW}V*oo*e}#Tgf@O$DzWKj%`>Xfj@SWcQ-}Z* z84F+T03;937XQpF;N2y|Oy{ z3h2sX1Xu*+D%Ja6ROgq;46nN!uLqp_%J&efiV?XS?~OW6TC|t}7Kp&pwY0S}qS$mw zpHsm81hQIW?6b%yuMW-&p_IU!8TkfuJ7CX6pO?lQ2-pq%7jS+&$x()VzA~7rmwI&M zL+SPR1yR5nHl-13;8g{`^r;UB-A-mk%x|&#*!r zm{J{kYY)6<1*9BN{#xi~fECh4*q%9$u>NHYUr;}eAEpvpBn$P6e?`blz&}qmZ70CaN58P;_4lM)C0Q zq@{EEDn;4K$A1D}K-Zn^=KH|Y9xSys#Jo;#p3F3eWLCXcPC!CEdfCvvy7N=V(}U?S zk*A1`0g>ca$*j&;!1%ST9B_u%x zd;3Jj^ekECWvTHY%t(|90ilW!fULa--lM{PZG%OGU{9W(c{VAgHH%}h|GK$I9cvmU zuAN_dlzn#4BxwU~42itr;^Wx_Ca+&9`v+-R`3s>^-(4 zV`I5L2}G61jJ=-zIv#qO3495e)?IL%3t+N68mi*y0ERYOGc81AZ+sV#xCCJYE;DjS z)G-3PzVGV;Y#@+D%FabIYu8xg5ZY_tSW`mf^%oMP*~TIm72SZ=SOGmB zfT%hjXl*tuqt8|gvpaAMp)-HPzo{!~s;Pa2F)2qfDfhth(_g-9{y=@aR+SGv{@Zqk zsH%zIu2#G@ez)7&m>xEj*M9_J8&bOq-4B3Mq$l|-WxeIMF&+ZrK)ADcYjnvW?{TSp z+4w-W={TU)QE&2D8id>9T1Nk!N_yw$mUO8AMD3ocsAfexnk=TUtQatKzCHnOnX=8K)U3+ll9J`((aV{^-lg z_oCJ;kU#GTrx^Ppk#v5*X%0}fm>?CAA(%@> zmS+c>3gFPegvta$R2dgxv*sh|7}?8f+w+}+ESU)@rlG=*$|ihra=3>Wal0+@J{^Cn zf62CY$Kb#&tfrNNNS4YwjbRZWDfIBm>PSiNH?>s0fU}cu^BkbRYJ}oD;r@rMCfViX zLQ~ERe~fS7P_KjeaLE&SK6oPvvBK_%Z9amG*4viu?(Sfkkqjl)uhkwu{twudk@~Vr zuu=R>>Cb(Rvaz16$!PP%XafheU;;|S80C2K18A<}ENVh($Rww-a-@Gd=!4({xG^eddC4$c3qym?XPhPvWzVKyab(STI6EMOX%zU5MxdepRmla)xKIEek zv?oWh48K2+1qbDVp=okK9HW>+JPKYV1^l_dOevB&foLQF_DU9nnfI1*CxB^{*S4-(nezrtPy$7iddF*~=eQ#@!7 zfeJ@ag2&w&fUtf*oivNrNcPaWH)9dW3IJzV{N^42fZ^#jFoT3h;Mj~wNJz+qoc=?I z5)do{d{XwVjj5l2AVe;wK-)49_-miGtJxhuAeceev6m*+rx6&B1_b5<)Mp#mNE8g? zsVSZCSr+&`U$s)G*vzvH&MlSOwDB&aTp)zC*Y{qjJznEDpLT^*Xes-s1EfZdAR50| zYd$_N@_(OR^Avd#4R=grQ&!7NY8x2XhER$QuySye02j-}C1%o{1hk1??e3=fIZ;Si zU2_6JSc=4}IllXA7jXq(-g4D??T7N&BY3q^0?8An9NR&(Hn6EYNWBdCfJM?v$ZnKw z=$gLo^QVol8U%ywt^^{A%*Dh~*VkA5WsWAxV4J0ose6DfDl3-V0w~u*0%(Mt=~Ie& z6#MKfJYB5=?tXq8aNarc{pl;n?D1Q6P}sr}Xy+T(O(@c2ubAG4i}o!hPi`N z(uc_4RX^IOs+{A_%DQz+1mgfeQEo?~r~%>z-4ADD%7%FYz^fV{WG)xdOSW)ZDWu zlz>w-fK=-MWO8$D(G`uA5HqEey5o>8ulvJhhC6Tc^e_yp7jyJXHi3K7Lx6+d>8})$ zF4KnGA3vblG7^~%ppEXh1pKz@y)H(YX-{qkxs61Ah@^AM%ZCsO0`x{!FBzO;{Bnx8 zYH`@#`2dKub3f6`>WlmC6+@Wr2p;$+Ipl#5UL;IT@1pagu;;P$RT^6)mF7Cv)(swz zNBr|Q$ha{j2Amxt_BFb4^>U!y!)v60xfXiSYqiG?2mudbLkYhkXGiH}ef@eLpvDKn zrropSb=$L(!&s^tC?Tkdghy%T>V5?um|a|~8Dr@3uJPmT$VFO=K-0b_7$}t2N4Wq0 zuA*FvR%~x?KY~8`^9;&@LK!enKU5(!0EkTkW*}hGbo~6`50^!V7&@E1JyEEcLV&Lh z9c%;Q?}mkhs8dLx^SG>0qEN$jKx@dwecW1!RFMP&Y^3Q0)arBTA1*D%r0krWOz`;Y zX^`%Kt;;cG^Y_OK{qIj+K-jWURY;CWibBch+uP^;X>BbrYq=rMWXNGy-c=S!be1J> z358-I;xIhSnq#FvDnSe%ok(t9Tm(6hP$C!QkILVN1YSm=3~3F2%Oa(rP$F~!E%L&$ zI656j$w&Wr|h!;**z7QDVrLtnQa@ zT|u58M`!5$4tWBO4i!E0``0yyZ5`=%gS$b?<~nl0(xA0;aX|~8TzqvKKDoFcYS8kz z_zJf{>*(SF13p2%YIY6E*+DuCZ^F@uy$?gDQ6)n21jD1GsOSvMN#WsvVh_syTnxuM z$SH~vd5Ib5XpaWD4I4*i_%+fxl-|&s8X2?jN2jR7i$-^$5gpR#6*NNTM=F%o&|LDO z5%hHDq7hDm*4jl+mvD3{E_#ZlH=LzH8tFk#@kk>xc(=8So?b(vi=Lus4QC}T8bMFg z7mZ*{XBRzP#?d*v=;;j+dW#TwgR69gv&=~A+tTHKOpqz&33Q5@L~cvFJ;i#COobeM zLzE;kIda4eQ2`ehml~q#E-ttmqRuZaXrawTVTAGxO9fJ7q*8BpOBhh=K@PxheV191du%9 zH&Idqw1%`)lUH(qc-X>5LO2BP|Mhu2uE~{L;6TSy% zztQ;?-@)^UBGD|N#KC{>-@m6Aw*;yL>22%71qeLf%i^M%nS$6D=$`0BM=jn@Q-n-U zV<=^g2lO*m>b-3Ng$Af{eap&XndwYx=GFB(-qQl~gJe~&fCozIhzK1~=CP_D_4)I` znqRMuVh~cN0B(F5K8i5hRjAV;F+m@bp}acO86aoh%l{B16%BKByB1Fu(oaYxSlVH^ zC;bDIo+jozP=NtN=x}zEelWW0gj0CN8~s7~=<{Clr1qXKbsHW0)9 z>l?)8g;>)De*=m73*>?WE)dh%V1x@~!);K)#YG#E29looeLq<0vrlAG*#&BG;s)91 zXzjd+O3xTpwsc(Lw3HO3FaiU_P-?>qoMz2wva>#As6-9qe!{~`o3q$HENDuz?oB&h zi-hXchVqZRKq#)#cnufDM?a%W!Qq0eIntldF=9Bn=`Mz z<8XZ;8ttwmf!Og(`bW}YU&^=HIqf|u#FsDkRC{-zcjF?TEE0oJOHH&KINZ;_)Sa!B z;n4bS&cb@v#&Xc7-TM0u23R;vzL}Vz`~-H&+W7e8(!5d^kG#P#tX8q69DtrXdPHc3 z^-F5z=~X`jJaUU{Yv!1A=Y)~lxXhHxBdQ4>5;J`%CD`luX@!a5I)1R(ku+-S@X|bK zS_>ekIu}nTV*karZ_PVxh3mwt1q`l68Tx$XxY6FBuyD=RdSvLdKCG1YcpB51`Zl$t zmhV?O)6;vvSFO&h@#!9+VD7?;3V95N)rsCVe&kkun3LURr{-O8XsBiG(7D4ctnxBl zwX0>EQKaIMlt=TD6G?7C_fAEeVCM?ym<^kTE5HBqGpY_HW>3s$1DK5F>I7UJ|58{Y zza6y>x`)q^&)6HZ95$DanfP^4feH7^rO^mPxnNG=RRkfU^a)~{K_Gx82Q2pk;6-4r z3^YQ(uJ8sl`iL|Vfkq-1jjp4^2`?H!Pqj!-h0xRCMNdKvBwN>zS5kx4^hj${9Gzwz zWRV`hZJo$%#q@@>lL%T_%ap&QMhw;ZLHSFQi;Mf^FO!iA7TNNblNT3A8>BG{(&pj< zX;ad<10MX4*|9;(G?mY{RMUtfPoL3!ol{F&ftX27MkbbuvJjC>{LQMy)#2xd$f75X zU;X}zzA-xq$-OUp_Hk~Le(EwZ8M5!#f8U@5r1U01!v?Ap*>-nzU6`*FSzJhMcbCF~ zp$9T=F&Xj;#Kp477v?q(4wb1U+Mux;km1Rql(ZxE_5JdvFbw;WMeqikk@_t`IUFX0EB&qBOT$A*imWXTbKQWK6We z_Iz&(rJCAI(l=t2d%evGvX^NlAKu*xB}W68WiatxBC#)trax!+tw;~bk3V^~Ig#KL577M{FwCg`;cySBw?qo#D|bu1ws`VG`VDD9@CzQkJ|e?UGr2 zF*RCRv6Z=7F54B^f5ueGrQbiEStIF4#SCZG?;tIXf4jG2uFuUU@P^cz+Bs-j8%HHQ z#o1Er(_vX`K=P+YSnT;uR3w3hH$A?%+Gnb;27ueut2I{p{SpDU|8VyoJJO zWkV)-Fo<%_aCD49-?hKWa|N2{)Bbu;FT8b?U)OjF##zCTyJ;Ek#ArQ5DEX~()KNCz zYNqTTA%0&0ezoR1SnOQLvoz)UEBu}Y3(MO7ej<4Gaqqc`KCO_sUQeea^ZqRct zHycg$dg2{@>L~EcZ~#RLTcT%0Wp8{l$j-~-_d}OHr-W^^=_yxrJD=E?D;V=OsD%RU z3T>jc8xuK~qxD6KN0lFvFdGUF)2>=nzx!LQGjkWVj2Us2XeBWxIYn7e4x`1I&6D+s zyu4d<&Xo^F+P#R)xq>_5qDJO1#K7eR+NtX;I$UAv*)q~S&mEx;(>(nCG!H@sDGtMG zUB9_bLD8@21K~HHe<_Nj>~Uy}&+S!7rNS4cf1=l-&2-cXH4KRGQlLIULPlokBLvoI zn#!_*&iP;@tu;}owX}4-)Tr8#W!7tod z0i0e9`Rnmm>@g=tA24Y`NZIeb9#@~~dd4;Ry7S)fX;JAImrZgG5q%nO#|HYcboHhW zi~jeA16$y16oXLV_A6@(4$#jB{H zWp0uFr?q`Po7L6V%l>okwBt+fZp^P}6_HanUiyJCJ81}HdpN6p)tb;ek*IWYrfwF} z#ug4#Swn^Ay??LtV47IvZ9tyiNk}ijs`?h?6jzOAoJ7rP;S-}o?=jP`C@2`FQz^B# z=OrsD8W6rOjUh|?r%O45f@PVxB-k{Gg>UTQdSk{e#+cQ}&wZr{yys#Ae)_n_2cw53 zM)tK6<=w-sRaUAPW_Vx_TY)*#jt#?#4l0+ljS^!kT>e!qD}8^zJ7n4@S2oF+=<>d( z>EoagRWl|;oKm5#ekaO8Wr_}DMl;XL{xg>+God)Il#f&zJn-7pRjF*fq!$QNQ9+aI z{jD)1GCN!I_&3>FXx+PCs}b>|iNPxG7e2h#w=IlVx2h{nO78NDn>cnwS6BFu)` zS84V|V6@$#&y%K5{qm=;s+<^OZ|8QWCYnrk{axEkG87@Ur(SDfvfXw@4w2wnDe|E zMwR8hc7lUd_Am=9ChjgK5WFJAGLw^kWQFXCko-tSSFMR4Nvsj5-BOCbF%j*-Y(^d5 zA{RBZpDOQ+GUyKdYHi2oSDKxZu9cJKSQk}$^yhFo$-k22Suoe(E>Lg`wurpa5e1|u z;(t6kDN;F+Uw0S9^I!HKH$%dRLMQX(9vS_L!jeXo6}z9|jH1k#7#dQJp5DRh2XK2C zzb;bogA#N<$he5;ADMyecWJx3TeU~2Q=l0%xcJ?^6)&UJ>->9^1xwCiDYFyau(j;8 z(izqVKPUT+q{TySaZ87UgdnMnx%T)>NY=^L)MjPLLy*E@l5bQcK=~6ZT(u!)sM1r= zU8X*mL$-1*HLT|j+Ai6j6|$!;*n-%YOoou>@tnqVdAlBsBM5a%$k1xw6D7uWmiSULD7Wn(xq-q;?w zS)gfJ>J)=&@pY$=6wx&bp~oO$d3!Mb$>KXmnwG0fZlZ9%d!iIRS-x7K4A_eeBto~m zbJBYJq_(rdl~??R8ExGa_DK$+H?|HA1h|i6b<#jAs0h5DRUE_qBbb&wbHv z*s|=Iy_gkKq>{F^epDX(```|0Hbeq*1O-M!m}ouK@EVa<@rd)G4$}(MAXpSwB^hgu zbz*$&@iMHG;b_RTr`Vbg@3rFr>k|%>T0^98S7_d<37~{z-aEy%KN3JrO^NWDR4op{ zE!;m@PK+f~wG`D1Hj`8*6|nJ-7Mg2H1I4C~$=SPhGqH$P7j8y;KR`B<$KCqAn8<1L-# z&nO1adK`L_2t8M1xf?#$uDBQ;s00a%W_Dk_Jaor%$~=e645mx3Tu0%Bx<1z$Y-86YO$EuD>xkB7#0ENf(zj*kmHeThr3 ziTTEb20G5w>p@qE)FqqCzq;~T;!$x^?Ye|M9}SY%F$;}1FVP%aEjL0Z@U!jgrO**m zq;fL<+%Hn=JIGa~1wZ zaqq~0DW%63VS)_5nbQY)BxnW2^s03M$yfhFY3vxjUkZ=U$lB|)Y`e96OG~SO`cAW} zn~P^lKBe`G&sKJPucwE*POGZNZWdP&;S^IH-&nj_``@w+W0ZlmM-ZF5$UFtq97b!C z+}(R*$YM8!x@hu@?ns(-CsJ|)EJWUBN5xK?>2Vmji{h?eem0ZtPZ0j}VY=*FN$v_n za62H$7$@;wOt-l0(Rh_OdTBZFHQT#NR+_6YeHL1pX0qd;%Mi+Q<}lzyGWKk9Tb!{KS=&*Q(`x6F!eF7#nw%NaN(#w8PmGk>dhY00;3kurX( z$!s3L$rjlmqIfhqc|$_=o~}OLi06b}305hD!$2^(Z9d6X&T_3O~8LTp9bay&_gjBm|+lFAti z<5_N(g=vDpR%Rs2lpi`)DOYZ*Y)=wgQq=#cMRUD^<7EwfQ7$`4=ZH<)mp%yz$kZXd z#q$y}F18D%Yp6zXR;1Y`vJCf-6_a163b-nvPP+Eu2_-1cx zf2(e%XP^t0hSdVbSobjgtwPVbzom5hSOu8<8^eg`*qo3%>GiMDv8g|+2-O>PW^FK` zTX3+_&W|M*vvVQ>*neD%c`^w19f`%L%)0B`m;6_uz4Es0{U2}Jhm| z4zoAwY8}Gyxoj}tcT@^ zm&UzSDec!e9f|FhqG?0_gXu*985XTiheC%28GE(qW4CX=xQXDo>U3l5<7dIqIAYgy zVvLv2v6cvs75=*EucI9|Tlz;~dv|}*G5{>~PF!QW_*EEIq6p)pHvPf#M>HQ0yUJHf zO$()@Kl_w91)Amby0d<)ui30cnsd?S^5irkT$h@>JN$4V4 zplMsEgpb_}#gbCdFQ8*sNGtxY2Hk=6VY?%;_DI2I(s-n}mCk`P7p9G zja3wZ20NXr?u3WKbjwzfkcRmhHD}FXMjGEbsnSk42o*p1pZm`HeWfd?O2rOHl=Iwm zd*9z8o@BT{IOpo`H`%tt*no(LW~Utkj^m+xo*gE6rVBOa0g#66f@IJZL{L3iEmSIa zH2LW@B(FxD%-6GR9XtlfSPj#jIaXEqr0lB(TPePuPj);Tldl(>!qa2QiNSe=C>sY5 zHMmvRf6=3eKJJb~`Tgmpu)#F>NFE^(sM%>`t}MBd$UDiE?@!DS9-@U!unhU$v=nYpHc2@gGxkk^>o3 z#Hbco*3jr0dTr3Pfmjrbo^#O)jjy)J0oz z>0=qz{LHu5Cn|)mJbH~N1DOje3AMlPE)OmzxOQ~=8Juk%g6gOkRAdXt2cYQ51P$fn=Qt0r^czX}Q2#7`$mG>UZ(GU{ zGmFG~yKIr8sJ54nEjqAr5tRcRQ3-RX-h4#q{ENtEy=EVIlogb8FOFG(vLel#!v9nT zqwtYws<7$z%8_E4g$bh)dfDugx%d(@#h+6GQ-4Bqr!pR3_a=_7O2+TmeU8^l`Fn3? z*s>=xS>cXg>G*41?MFG7X8eGYb4ov!ChO{`yl03&Jm8NUm_pQi)^O^j3*-V{YxYJI z0rr(!g^;v|*+Z`{HZ~CxzMTmzWsFwEi>@U<3G~aY)SgYT9(dEY@4zvEovqe2YOdJp zH=nzyYfAVXrknx2vPdrHaWFM^#$cV6307<&Ut-^l(nXTHy%yA7Hm6csDH=C$|3;5KlTb~` z*T@~LR3zK}w3Phd;~?F?eK-~|A;$HW7BR1f*R(-H#usDlcwkgq$#CpyWVB=x_7Xge zz&E8g;>W!1*|97(cAvAefyBD#xRR`U-|$ZSS2M6Y7$3IXDL5Dv6W^(&Wue!V6OHR& zQ(L%8asNlAOU4yjknEF-xP9x8JU{su`V&Hg=I?HUXTQ`DQc&Y|cGy$1|Hz13Nyt!! zc-j3=#-K=iBPK&Lun=L5SGylfPNV}st+fNfDOr%JX&~bNvlCERw|6xM^1aoF>7(-! z)bsj)k?*#?hSs_-_Cm^5SpzF6m@RA9eZ*DOdgE``NUohvp0MooW<6ovSIAKu+0!B^ zn*X@U+?-VS>zJI)bTd36Wmvb?hBe~2=?|McXc(th4ZUP{eAnI2^cB^^sOBhsYC7<} z?KesSpm(`2h(MAyDiBu&(8P2zM`1f zgu8d|Io7t6@2K@<8!3MJ_!?62dB!Ek%@EXNU94AS!O%*$C`Yn0F`?c1?o_(34v9#QS^Iz0@gI zy(v+8j00`hNN|@1!Vf~>+)ntYWqVvYa>fYGO(_Aii1gzUGWOi%GpcGKztis3V2S?6 z!Wk{%@%hTtdm-X=hmEJMY)wD4%CockNa`*L|3X#~rrde@5#n_09jFEDzJR#!^9v#j zT)CYS317k3o9<~C^>JXAeAev0|x z1W)Hi(*UYDQ9?I@#U%ioUdg2Yv3$hY@#Oi^sAFCKOiQGD{bjOZLr>7wS=zjnGIQuy zj~C%Tx-t2Md#+QxB;Kw+duDB2o94ffvs10J-NCGDI-~Z?97apC^o?`BA6-HTb68>y zfPnEo1Q8;N&E6emmV*dzsXH}T0?vL$FY|O)V!Ul_or~IYDAerRcUz~b`D%{Wryu=i z5Kg8Ux-Zi4^F3TAavyryVKY?SP{1F!4(sW|J)9&V#WXy>FKmBP#L?ISFO7{Yy@^V( zRij^lmFsR-#B3`gBM}-CBkKY7Vv=uK6LpwG4p}~ZrOryomFcF;HDQ!l4NRYuib2UA zqxjcK{p(7I`;Fd;O^S}o;mB|K@e-56&OyaaudA@lOVsV{c+CX*X_073CML|;5S``w zu@?!^YmdIZ!<)$aLPvx@LVQg}AhT+3g}gMIm8Ahala^$%Ws!;zSS|Gfvxhb@L^{&E zbLVrE_gR;HgBHzS<@;6fdXiOdR%c_{_rEBOTLcs2&0p8nirsirj!A<_8cs#bB;?CW z2;@5!J&BvNIP55y<+s(3MP!L)Z;c;+`L69qc#(rt8M5ee9sD(ILZw%vZoz#7i#9jO z(NOD3bDnO)=mONvPo$WB*11!?7YC;l=lq)}=vOOqmY=3ocWR{+`EUAs7?zCG+@ZJ> zKIk&{Ex~STF#3E$PFdOZlly@~DFJ0#QK!H>3IskcliBo-Up~Z?){0sbTYvoLr&eLp zC3z;NM@t+YeQFk#&scpzF(jr2_mwfD6~W2B2qwRiuE_bxp+aV)ykOUZt0Am?jhstn z;+j=wo7mB}o$by~oid;4l4B1RQsGdE(1`ghK|{t-p87M1FUpvO(I%6ExVoH&03}o| z7d@Z z*r_qMkbT`>5<01mvQ)h*SO^G{-Lt>lOPo$DWY=&bKK$cg;ntXFL~hT^?LdakXj=S+yWR%6>R)gtWF%J^;QZhM1}Ul#3j^PY zty_9GjvQ3m?q_1}1UlVD_$TO{4Y+^dC%jX4TG1{Qg%D zVl^B>+i=mBMgQRx^>SXL)V*OtM@}U{9P3=fzP)+0+!1YoLDN1YgHt|h5tC%}%^{dW zFo7zTIM1}|W=&@lcEnPbLmd^IM@{sv9465z59%Zf~aQAc$N+ zsVBI*)UOC9la9bTdBxdh;vVAlkFQXDZtIDOJX6`Usb?TA+#7CUPX|eW?|S0S)>q4> z$?C%lw?8aBBPA0TZ(#o3tyBD6V*SEH9!oLIjmuEeko@8T}BGTPjV$< zEOFl`9uB`W-rBnQ$RNAJ3v25$n5G}e_l7*(0_hr`-JTSg56B@4+5OFBF1(lJ*FZ>M z5!+>bx9GR;wu%`AbHd-XyNUONNzioid$&?Fsa>&V5PorF^X{G@sF)b6b8Z<-#mB`J zgWf5e@F1br$Ok<3S0B39W1Ak6j3dRx-*`BDB_Y01jgCzi_wL@R$Ja`-JmQAQ>PTySeYK~Uaegx& zDf?2eN~>{nO8<^0IxrOa-VAg+6u6Lj9l?>M9XJ8gRJ{f=Tx~x;zt$!=Xdjb7M3?g$ z|L%o9$!qn-?I159I+cTtGtlW<*J%Us4!-@ z;Pc^(DF{6Vkn=!@yxs5Umw)`-i-7BC+@m)M&#*rWySBwIF7-40`bcRTefg&W`_NZ* z{TIa=d-4AhxOJ=%=UH2;eadQO<#eFb2``_@cC}nQn1&3rhlIc2NLh@4{npvW(!)?% zg(hxU)YhAPW+)PLgs+&%;#FtMAgGlCbvJyWk0rHccKExmsHt!=h1vEjmVu5+X=DK zQPa08w;yCy$r20C;Ydwv^xv4$vrJ3}&9)SBssZ${8OWbakUZIV1%HHL9_l3i&w>jp zT+_)+_>!>+J!(&GB86@FNT%5Fz|Dpzvk?gj=ZB;I%4&FJlwA0vq;c!>D@BPR;~{ev z#ORkMIXWi%iuvZ|b8$i?rrgw{tK1JA1Xvk-+K2+Hr*Z_Yy|`P##cSEory1Pz<-om) zMVGNKh7r%J8^VaaI=s8yte_He{Bn5kvWcT!PdKf5nS%vO`&p3{ z2ld{#pxJP%`~72q(J!4cGEkA2<4z5c6vAn|QG1Cu!b-77+&7NtG?8Gt*lD4Xmt}~=9&oykxzZTMxtD#T+{b7eVYIDTNQFi9(Y$|h2W7|A9D6| zC}a*Y(nW z6C2+c%~_1A11GGe{{3DmvWpcyYP=?SDu()T8IzPJ?13Boavw`Y^fjV~hNRU;Hm*#T z)>*<^jn~Q~!x|s;W;`7eD!Rm7T_gtTS`&V9ndpDl$4hN&(oDm4cWCL~KL6B#bluXzi(ii=2ur3-78Enr}xvRa? z@ABUt&v-2U=S62IAOG(3`%1SZ*p-O84c8qB;RR8D>K ze+sK9AEecq+dV`5eE{PRR-#IYUt`Kt8C7Sfk7P<|!C5mXeReti7V3b2U$>bGAZxbH z4cfdrqVaviEMqjnONF-cm@G^V*js11f~uAIA?;DnIi;v`EmS=Irm9n9uUS)c1HDrr zli~2nZ8Cz-E7dZXZ3!t^AEw@ zDat>PwGkyw9q;@q0HJ~ue!woGWx?5ANHyVesfr@_qFUKDMUxo+w#=RkgbX}ZA|;1%s&3_-u_MY|Dd0HR*pln zvl;)5XYH+~C;Qu6qry#)1-=Q04#m2I8&5Z;HMQez=h#JAof>?1OOnJrK)k#j9hP0E z1lzb*YO%G(!fJPD+v3FdIA@h|ynYNWu~1l-8rz$>xrL_%yS*tFY9EtO) zm>ZOsq%@3sZ;bR7(f7o!TiI(aZHYaWweNnRs30JsqJn^cgoL1U2r3HFKGG$ibR*p&sUQgG1}PDxTe?G} zJGYw@De01~|GjwL=Q-~g5Ze zn{6V;yFC5O!b{ITHK(RrOU6#xK9Gyx$n02n9}UIDd;Y!bsRMnZDx?|?4{1wY)Os8^ z=Mfj~F1E*Ab5d!%cgh*tF#6*q%)|S$BPb~oU?+nvrCf{h);Ij?oWU7Q6S9ACQEzcS zKVU#c!I%)Xd;G)PT-%kUHx%tzq;cc{wlwj~MnoFn&amZ#p>gZnJy4E}A+)jmsJCU4 ztO{jwml&V@uJk-&n0#U})X?`?%){TfnzoJ0wY5RRKl9Vl>R8 zm*Bpyta_>J40@CV7L(x$sgrTpn|o_XpG4FhM=jcUh(*ID2dxr|MpZ0qZD+q>+L}td zEE9L8Lri1z2oik%t+$NnO3IN2cat4P)G2QZeC3`RqWMiFMXO60W;yg@igxCGyB4k^ zw%IyQ_hlr@`)6^de%l#6D`j+1<2AZ`EEqjH_JsEH;&HAteLQnlBw^9hcHev-HkS3V zdMoaG9=jed8UFhsSgsg9@}U+=OOK@vn75;7O-!i8?E6_>YU1b7-)Ix?=#LYLQSfSmenWdxq|jSt``DDd=Qj zWAG?`{nuUEHwML7Z@=A`qAX{B?~`Bz%XGts<-Z(KI~JCnu<~6*1kru2|8zmh(1?FM zQ{?%W^7ET*vW(dV*N@C1X{$;Wi-Cz*7LnAFXAa-5yk=i7N!@3=e)H`eM@vww+r&U= z&UpL&S^d1`@;FqTRmRVt;AH+XjfPqOgT;6Q$2%_;ctHWvTD*yCc&w+;ae83ki`B*u z_e$2fN5pTszL=*3=s4Tm(9%99yzo9s&%!*Mk=phRkB$BWt)h~?VVCIMO-lzr$qNQ*XxzMy=1awU^)7y9bbw;)vw(4ousE z*|g(pj`in$bjT$FHOYzx5&F-hCdXP=_QtO=nb(CBS{vA|4QxO8EaU#4>??3~F-AIl zrf#R&n=(2q+BaGl5OkeqND$G&4V621gtsc_b67Aq;a z>+{(Otn!^x){<#Bh6oF^Rxc*H-*@T6fGkv}c8Pe)IWT z6}>9zy)@@|2Kj!DuA5HNL8nAL&5mUpPKmRJe|I&B_+iUL^2lY}5rsGMiyYep*DMrr zCy9&n&%6$%WBZ25%vUNsJoxT)uW&D>yNT0Z={Uv2(X?&tabaJFfO=SH>w@D*Wa+I^ zNcMW>7;C?oQF=Ciwk`cM`9PV-IN`|G4|6j5?CW@vWZ?vBK@r2<6&ETQ&bOr|Ct1F+ z3}>a5)GUV6SvW9X$(BoER!MVkJ?2SDma{6wG;1^zb3?%J4ZwrG?y4l_);H8nB|NX~ z10s*1&o5tkX1%ZX-}Uslx%vTOU?_ICQQZ~!Nnx6!)jUuzA=}&WV9)|YkzTS}mU-qW zE9yDb_yR0rUmSkHoe@xB3 zU~Tv#sLUUp!n=DxeYZ05S*z}3ppu=;TgDM{TokWiJ)F>L8p#d?uavKq-`SbWsnu}R zXRPkZ{bW$E=#y{e1|kcebp4XZx`E=Zy&_2Uy-1k|9xdtFoK0W zt*xPhe1zPFPMZ8Gir3bEhc1r`o>mQQkGEZONmN|!koc7$f-IlKW7A2<^QfPZeczUq zzBA9gDL$p$r;p>dBq1Rj9#+2R>SQZjl>Dqsteo=Nl`Vz`IF#nXcRoW+mrndHT# zh}JBDXc6!C%?9_R;9SebRyvz9MkAah>XCS7u8t0+^)XLo0<~@W*mZ78!xnP~xxeTw z&VB9+5*)7ionNJhpJkW@$ce_9YoS=Sm+fI~$mz*VXp27Y+WxcjR?&Xtxexbjcx?^T4U>N+NQD}8hgn!t zR{ptc<~O5rC~eO2zETDG$zljKVTWO{kYAZTraj!b>El!9<$Igl_V1Xa-il0ZrJh^t zq?uW-T$8tTYnw@C=Cfs%+8nwDQ@A{{^ZPh3Akm8F9=LOh6R2@ae&>`Q z3a(T}9{aoB?WT9~WAEw=d6k>nkGsylE=w&WnP(`~aP_L=NtVo0{KEEdM6r%7tJ0AR z;xUk(<1%GWosS`{-rU=%lp;~d9g3-onEPfH*B#jghSu`!vdm7#Kin zO0cSwny-Wzcx3ik$J;}ybMBca7BfS?xA%if1n5UHn*ZJ>8*!lRI2pMpQR$GmJ)bnH zngd??ormfaSqy7J%!*Fh&>L5QjGEgMO@USp)aEX$QjWqnn^@K1#`E@r7E`wL!mI3T zrl&SDKti!f^3>u_!7Mny$FzpP49W478lkCRp6W_+*f(Ql$_hf&Xu>pbc^$EaB)HV9qAK z+_^Kl;p|K;#PH{@kG|kwQ?TWrg_J_pAZs?Iw=r_mx$kf*AI$kz^<$q){Ki5VWKD87 zUqr1C?i;rbW6c|LmmZA?A`>LgPnfF9oWWO`pGa&8KZ9#>aO!xl>7W_G(cO%R&l3y^ zN=n}~Nfs3KV74r_8N{ZiNwabUAC%U+$Os<_V!P8nHz-1kE-kV_eTWZ7S^Vxcm=kZ0(7GWciC?~pH%Y%O6zj^Q2$INa0; zVFLF<_lfpxSlKUmToQD{guB?9lOeQhx4b76+85~Ugw`%tWjIL6OlQlOq}mD2Go}`#>W(P1k zHRw5Mdj4eklB%LWPi-SPaW?F3o?-*9YB*!8y^5J|fN_gQ4fmse;{mmE!W#cC*|e-PnS=p#BP*9_PR97<>yuyjU`?K>-8Lzp zbt(UF!K!pXiTT3wwu3vrW zC6^z5D?5=aZ}EgFh;MB|T-za^#h5Di+L$%D zS!C~&eq?uU>*jf?esJ=MUCnTtMiZq-P~xYs*T|mIrIOk#3BX?NpNV|4-CK7R`ALb# zhAp28#+E#r!Z72Dy27x2e!_QLR=L3Va>8rl^7@<&uEg`(-T%2f0@_SC(L3g7 z{vGka)@f)w3q%+5D;_Q5+`Gh7$|)F<>25s6>MUi@-mVw8z0gTx0@*ssKFC9De4nU2 zQ8lUzR#AJR*t1c&fpbqxoHBDgSwGXoE-$9>8LB1lryMNadw&!WDHha@uZW)PzFXbe zj)%DUdt!)UE~>~(l}fhwZUi?#f7APq{J)$c!I zg_f|7t{kha^iY0XO~Z+A>=H85xLQ0dvmW(j)l0@Ujk-PpIK_7w&aOOQ04TdQP_tGo zi`_6W4V$=E9QF(ARU-1P%R@_p51h(X4mO*8#Qidy6$tG-0Cbm9vKK~}nDDrI*dCbD?1}%Uz5j}W{IHXg2d73)^!0B251|8ZjxNwWM3)WT$%z6<5MS+f@)upEk;aCaA`3%Tbx(r zm-!O;K^-5_hjALToXP142?>*5tVS!RNNHZ&cJO}0$=Ji*Yhf&@RIaUQU|=Y?(5EUV zuwjF7=OJ#ZULFDt7?f8JdjmaG17Gv4Bp>uy>9#Fb$SFugYn38jrSPi&wX4H58O8U17abD8?`N>X*vOkud$f zXo9Yt$A9UnH&Bfa>rQtRWxzn(a0V?9bza`CC0FQP^#V5^E0b?Ohwk~dD(%_bgO{EL znD8i4W^6bn60X%g{xW>mgIWE!w}u&q|3^*Sf_Lnf8%wy@ z(b$c)fc`j>4Rda`^KT6bXv7vKG|FbC2$}N*jc(22yk2^iw9gr+Wk(ecP%qBdoO zckBd=BfRbprzu+y4Up4m;q=_sNDq#wk}?U zIWApmT@zz#K0n=;p6QXF07BU_ZQ61bofdyjmkMOozT}eqq8{-qe^@OIa1BPgByBD2 zKKwc&l2qMO)TiLj*i@s=EI6Eh%y>D=D^56)e(RQAYe#Nc^BytUjVkTE!9$!oRD&cc zLRS4uHQr3+uOA;=lBoZPN?Tzf$4Lg^QOnlK?d>%s|x zOI^wI`gJLUffQNhpEdB^nn5(F)NMx_O>Ac#&p%+c~Q7~fto`WE)?EF6?949Z;L z7ZNu9u`pI|`5q%q%oO}hnMa#iYoRW_9YL@uHDVjqd2fu=!E4dJbH8LEbW*}c^syAE zL&`*zwRvE|Url#Rh0mskh%H=lKYr*!SJ^Fn$!L|6QvPhwm)z6Jh2qE%1f=4)Mmf$5 zC;D~&Tz0FD%k0-fK)yG@)B#FsoTxI@EHNM+Ae~hg3Qnh{7LJV#o7Xopiig&$4T!7+ zZ=st|Qn!Tsg^nZLuRJk9Lp1j1A1#Mr!5lBql1`D4b3a7!VpbTMXHOn_U4t+65{jQH zmns#?9H#h$FaK!Kq81V$)v1xuwhX8kCuHO37_er1p2CgLW0nMe=*J za4lTk7{>Ne@6YM98^wD?l$V?HP%3GC>>F#YKT1BHG+c&dVVZ2nMHB9XlUa62P$MR-akOg=e?tWS9lBa*qXX@oF0u zgR1MVd3xOz1$(BY185rO2N$NkG|{A(-{}v(kFn)|+ST2hjTgxH&3r6>>vr*iSUF?% z&xYKH6BUg;n&DK0stEExqPqFwYX{1=y;s2?Om#8#w59{DZ?Wj=*lEP`Iy@VFr2P2U zemuD6`m-Ok3EYq=7_U#=TdqC2xeKPS)fXMWmHa#M(rcOITrSM)?O zsi#=vio>5SDc*}gSF#ccg(;8jV8dBlk{6&`X~;3EO_JwrapG_!7dow~utyz)AX~6H zzQn^9CBM|yXXvlHxtP>$`pxGDw??R8ZB$eOR)_xu&7@PTMvKkGtb{Ez#bvs7dOH?I zBi6dpe|3lsI$Uf<$AIu-<9+(R>8Y=GJ`^xAvM%*X$-o(-LX0)J8wb5V!*PUuc~0F2 zmU6cb#b1*-^d`!fJ=`$%7nEW80O*HB=POqRd!74e>_VEYN~L5f_Y}gstr-Q`N>3qM zz_JK-+6h!p)H6&=_)hxtOq{s1wcxE^HEj`E&vvw&1zk@f%jCx{QmxEiO8kcsu>v#$ zbm<{)EO_f#aqioy*Ef46O&?xEs<8xW)(MlBCL69Q@3nF-5_MQ8D}%dygcwdH1{_C= z>*m4+*qQ5zp>8mMjr5_0$75+3Wi8c+t!^Bg&CfgaJ+E+gHCdbbk@xgz%WHUxchk0c zbzxKJvAz9N9(Bk($f=WRjO66zcU_%nZE0zN()J>?D_0}9kPd2Oh!B{jadbwry^a2~ z{CrW9H63?0Hw0s80u}%IG;r!F1A2`Zeuff36wB$yih8F9nIDCR-&mU}Ifj>a`?qys zQDKStB+;dFS-^6Eo+HiYs+W0@eon;2itFxqMwx!3Rw8GG{KChr3R^SC(2Gcdo24*6 z?}uEu(iRr~UM**~TO3HUnt$nNn4X@Un@zxK2X3FWXuo*$&s^}&grfM)8|HcXA5vVG zcB_Tj zhP!Ob+%sQzQ!}Cs_e3*E#G3Mi?Z754Oh@8r6L|MCazu>hJ1K zKOh=Dj%V`YW~xqA@ia|$JT(#`x96gC2CpU2=f&fT>;!`Pf^^T@MbNUz4bnM&QO0LR z;W1sTqqfakvhkt&Xby1R6zmaU(!YX&y7>n49c(wnK!5h@8OCubi&4jeSIY2kp5b74VK!@#`#ZPO-_Q^fmY=Q7nobL!2n=ZL;_nKs`WpRC;&)shN>@z*0775B(Hr)qFOUea}4o(b4}NoWhC+? zWaGNWkbt5ddAej}N@K6RR1&%OXP@-Dw10-~Lq7)WC(b${?i_GJMt~DCweKG%WTo!C z!CiCQb2UvZD)%YYy??KUHSw_L7@Tj*VTN^iBpz;97q~7MM7^>EC-URaqves3vef8{ zqrxMC-7=tTCH0Brz>u}aQE;)=KaX9}jMqMmP);*^S0lJ8{`Ga>Hu+MpXX77Bx-L@w z!)?P{agQc@SWPYTwh>w_$^ev*cm;k%A;ter)I*X`RXk%_Pfu=_^*GLnLjv5Dax{0;n!Si6# z)v;m;&L+V>x(OP5=^F~Ys8=e=QW#9yu+<%my-ltC_sRn!)pNq6oTkNHSmNCBVMrYaP-R`DYEh7 zK7=PIhL{zLv(JIo%_fEZX{SncE<0O~w`4LXb5(2oNwGlLq?a*&8SNMLTZjHK2Izu*^Komvo&mavoBU|c$ zrD#%8Qh4^<+#I763SIL$aTM(X(oAyr2`}*au1L4hn&81{HIUu*f}y(rAawpimGF7Q z)pm-5rRiKVTei9FE=oQGyLYmF4BQwU=dqJ&aH5eER`lnd17>c{i-^N`yYz2zD;9hM zbLl$o&A$RZYJFi)brh(0*-24(C$e8mt#CK8Yrok1FNj>veJM7b6B!U9Bn1H3J7BZ9 zZ+QrxfY?}iwaN0go+)}zMp}BS1#=IuoaF};-{<0-_lUUyv7^*?3=(0@-TAyDR|N{x1QC4mpH2k1 z`*Hb6^-2}`w&tAmaU!6)3Fe2hc=KbhwA@UAwSNc-g`-- zSo?4^5)9b3YzK;;1B#k5(a+CMmbC2>5XQcs5Hz^D2;|dNfE?Yy1dHw%y941lk|t`2 zUAtTjocEo8P=MrVTe^~J;{UsfH`#eE4HjiX1*dvq*CkFt6I+FU3=fTD0D48pfYtx5 z|7(;bZHOoYS`P$}u-^fudh|^ERy`=d@*!Hw3=~(7&f$(K3AKR0djZa4RxK@;fJBp~A0&BriQa{^hmG?s>pab_4eG z{s@t$u^YBYgzP_!V$jZY6rOjzi8)T+Sm~}I4^%E-pY`CKqWT0%dY~v&uAr1fKt(|C z9wltn6JC(Uk0=&4-|g2t}~e1k%W_z(jH@(_dt#WwxwMqp7C?S!a7VemlBpYD18 zff7rrtkgz{k3i#BfxCk_o;j^CtRA)Ts8fPF71#!tf zd@3!CRB-dK((VHf-dqHtD7efdM)W2>ii7e~6>^wQfw()5!+4;908~zmf7tGwVe5y` zvCzq?q7fIFmIzKL&V@dkL9|GKYk7qFRaATj1dE6oGWsizy(jPfpBh;5$zzp(mqY&) zeT6{X^(q9#J5=6HfHDKR_WjJ$t#5SxRG&9tPysZgWlIAH7&1YcHv^~xMlCve!yGC! z3K5S%^95A8KLB)AyYV3YG(cD~$J!|*`A-qe^=I~=8#=4&5cDGvRFkTj76lkUiAU6g zZr7sHKz|w+Nx&wn7FiDe0sOXP7|1mNn43)emgDe=+e#g3*y+pGfw&YskI-Nj`PO4% zB5SSOP-8jmAbGipr{MSKt#EamJxfN8*AhRvH^q;#%{j{Ex%Q!spvDrEG|T6^BpC!< zp&}^oty{2Yhr(b2n@nhIEGYlOVlaI$0_|#&uBZcI$^b4@?$FcCaC>z!>b7$(>e>Ug z(gKVfC?Ue`$5Vd;7h~k}CsKe7dN!og{M}7JKl1+=%}j6(Dx&J<;xH8b1shibgGBk; zE8mHOP9tD0xB1~ics?J%fAC}eP$3X~MSu*C0{Xe3kMsa8W=I|ca!5dxe6cjW$0Y2AlNaJD-drR{lT7;GY4e_zH zGLFXGS^)nN3M~Z&?Wim%k>}eZLK&@ka*Ry?>T5%zy1)y(K6d(U{Vh0so9@G6&A{f= zmn0VrXC9k#{8ig>N&fiN(@;PmYw&7$EQbWpz)444#u*sVkqQ4qnFv!rErQ>$_0M03 zCwTo!EZU-YHHxj{Q8YB_(DFV>()=d`@dR&pi3ONadm#jYT^ld|E5m`wJS&?L~j54zFkd!?hGi2|*laQiPD2mK%vO=~>_TD?$dvDHl zKi}`~oZor9&iUi~e|l9e_xRkO`!lZbzTVgU;^BjPBt$esC=`kWtstw4Lg8v7{|L{* zkt*{KBk)7iMNZpA&EDL_-Pp+trEKitU}NuMV`;+ZX6EETXMEzB*z$!Ou?;@~XC z!(;n@Uchbd^n|BPN@flkIp?6D4eL!sF8sewExysL?HE!0>iSB*KL4oGIi=4_yf{4-m!v@n z=iJ0|rMq9a9%j|BQ_IQWG2>PIW3I(h*x76_4?f?>BJfV!duMvnuX0AH#k{>`NZ{OI zv##~2W)1Io8R%C2eZ>M=_&Fhj#|b}PQsl$`oboleaOyG+F$z^<^8cUse;AUQS=^@q z^nQDjroz`+C{^wx3bfx*_}86ij|7J}AemFIg^@A!&__hWQ&{ak}7U$Nd<1py5dJ`^*1>e;1>{h*UwvXZ>|=XE~TJ=e^6PW{0sqUx<-~}^mC4S-mOvhah(m_2by|%S(%wP z(W<(-y4p3kMv}Of-ms8K9_7OuLMPK`?Mm;$GkbTdPkqr{)hF9L;S7=nPvSk(y1KgF zM@6OT*_Fu|`X9SK%UhrSnh@;8#?R01ve_!U*pVn>e5k3VwKywzS|;YUlzz*0$l~9h zw>P=D?ecADh3$HT`Z38{TP~ly7Bb2=nmCI6jt}yE&0Awrr5L|dA1~XN&>Ae0zM) z%-r0nF6f+?&t860Q;{M9KmM@L4` zi)Y?r@KuLBpl)TA3FCEMe68k8W^OL2cep^Ch>YaP`s-qsc~yOvPC2XI%qRn&bvd-E zj?TxG%3TAqCr>zpgfuF>w!5ZYOXdy@4dwTHEEo3+I!s6vTXxIO&(DjU9&K(f6}AUQ z+?JFyjC9$bjtLnmgO)-Yg#3;?kQY0E(}Fewyq}$#*cXP1v*e zy*&I~D@!v6X|pv>IIp(d>hI4N2MMS944>V{JQbCddm~wur2VNsJ=;c>OHB1qDoe(_ z*Yt@yekc30H2kKa2fM4|MseP|D>=sX!E$%5qr#`EMWiC9XJ;3)3){LLzZSnFHpp#Q zg-P(;`DjEL| z=Uo?i(61#=JS-B1?S3db&$M)s2#4Q=A-Pve_C7v7_i*Kh z3R{9t0Wyr!Gc#7(3%%w4B9-cPs^Lr&td$J4uU5wg+sLEefBcvM%XML^TcscRnD%|# zPfz8}deFhna#mnqU}%Dzv2mh-*F0#w2I3p%75W~!goRJHe)Sos6*-LDCL z<$byOS?p?Q7UNaEUNaw`NGBW*e0%IV9iKRTRK08a&W$(91%cWBwOD4Yc2D{?uJz0vz3)>~K-d?-6 z@Ky3SgOoucyWhZDd4GT33)vaIh8$YCJqf2rPn182Ji038V&PD_F@CZt~NWqfGhy<9ARxU($tTG)2TRDpk` zVzVv(*sgT)tW4y3hYZ>ClIiK`D_nXdf^JI#6hkHMs|Lx+akqY(#pquey5&4`UnY_d z7ISh*$*m%BHns*rJlx+`-A5>f+_vT(CF^~+`~8MVhGt*({?zYqfd`_~@AGYIcgEd@ zZH@w0}ztiJgT2Q6DZmVOq zmxGP(#|kzosHh0T$kKcZcb;t%Vz~ml-tJuk<(=#3-=M{=4uKA{KF=UAVlh~dx;`Ca z7+jLDH_9O4GcY&&JIJiJ;qOF#8q?ExPt{hiCb>p1DJnWPyTS4yWMyoPm)t*8#1H8i5C4i-2_Xap4^ zi(t=PH=H7n+PwUCt;?4@E23;tj+kAsItLz;S9W5x*S59I*;yLwp7VZUYN`-fP*}KVOIE_BS-Z2l(92=tt*IFeW(~APZvHZf zZ(4%S#*1i9oh0OOqrs$CZ#I6y@Ss6$er=ODw9$8N6u>wyb3JMCOYbm9C2(<(1-$zGV{R*Rs6?4s`_gSm$*in(# zXIbfA8ms(aWo=#jxFI5cECXy($Z|i}-D11Z@-a8`!Cdm|_mPpRc~6>1Yj^xN8rh8B zHGD>5(?rLE0=R_wq&Tr1PYr#ZBbL(gJ^z?N2!Arf`KVGoPu0*^l#OQ!Qp9k%z z_2|)CyXxbe(Aq0fE|;0{=&pO1-2V2R%_B6qf zDrnw{8$Xi27eUu)`So*}S#z`{Orm4;4EU3viM5ZR-&&rYWoOCgv#B^V=MeMoebxVD z*57J>V;cKbw^u9FzzK{*Mq2}%F5&8ZWoJ?@yW_*%{!+)Otu7^=40t7(;Pai{tCe42 zRUvyh#?a66UEX@L;fdv8mX?;f z1*R{4htqyl;x3b2t=NnJEyjhoV+#Y{l34_9NNo409ZZt>rz0LG0V!PvJT=dt(re!E z^gwGQVZ7$)8CEo6L?n;@u}O9|vL$50A`1%a$EU`80kdeeGEyeCJL2p*`JDRqu>mRq zJ;VAcAOT;Av!_y4GQG5Ppmb-*I=rRj{i@L23-7Fq>aA`ZD&$dcCO+IPID*aC zRtnbs)z0!TEoiwgK9iq>kHO*CHt6O({}{H`?|kF>S86Kay%wY8#g5?Z(Sk0rT@ydq zZ}*pX#gIf9S}3F(N6?9y-2W`rJJ*>U;t0Eic5ra;_j`7=SDBfa`N!q%t9D?lDr);r zc82Z4!40_#E+)TjiH)VpTu1HYJ0AJ#!{aA?BH-;BUk>K8AGw;;K&0v?v z@m6>EIm+vo!Hg4o=SUt+lKuYpB;K;fqBE&6lBD+W(6`4Sj$jICbM(I75_4a%xwF+F zBM+-`pvwPfiXptPO{`f#Sy`w}be8V%Ov}f__9AZdZ+-XC-ibq@tGzWtz zs9i7#3n`qb(PQab12a8Az#RVh`e2=W)WqYdhS&WSo|`Vpo6=+^6|^ zpkc$g&Z26>3AI|MhJMBWa9vD;-PJD!k%H;vVDt9)oJYy>mf*XI!3G7x8=J4(muX9Q%KFtAN+ZGGTbAi)Q%-Z@l2Aw_QX)DS%^o~h~U=PWENbWDYX z5jDR)g9lHDaCMuJjf@ zQK{Vf`|{CpLPA2`y9Z+Eys87MpT0B;weWU3qhv&=nz#$2&eQz?(=SA|?-myq8ylzd z2?+@y?+B*5YtAntBO_6jycX~mgPMG!zol-ZeV`;5e!2AhueI~u$|HjfJ|>L24($pvaJzw zma+i$U@`an|u9eXrQISp+&vJ{3)RFK)QBkp{#8!`lPUInI zwQ#E{Se^#brHXe{T5AiQ88$@XpvH{cOE(rhyVa20C}p~Z8AR4z02z7ik{m3{nkho9 z9b}IB*1eu@fA@3MOy_dzUI4 z!3xrF1baI_9Kj0AK^*Sb+b;xh>|zC6ID)<10ghk=BRGP+{UIE|3Q}+cdpj>2!3vB) z9QN4T$%8mnu>uN?Ah*9Ug(Fx&7LFjdzhQwRSOE`?Ah#O{)J5$g_*p*1WD^6je+Pmb zrWueOZ6j5>L5=M3bMmDd3|K+7bb}2mNSAK#UAKOV29_7 z*b|JHL~cZAl`XA%ft(UNGf6~(bc>v=j*1y85Y$o8APRy}K8Qo`IkY2no=__k(X0VC zD00cUkozAoVwf(mvHrk;#r^qO9fUK2?z!sfEWXFZJyn(OW7wu=l`JiHiqAYkn(QFF z7nCLUGG%=#wM&(qRW36}Xm#8}CRPv~E3QYwS68+31$~|Z7e)T`ah--iyt<~jL~agA zH4n!-`EdT-XOBy787U`7=tI=62HK>nyBkzNGU66?&bEBMtu_0}IRbzr7XULBAz&}b zC`O^aJIa=3X7YRIvNZD2jIova9(g$Xiv(Jq(fn>Vy0vI{s>|TB_H@ku)K?#ZI~pOY z_a%0tLlY;kYI~75elh2}73eV7@<_-9QL~A2GY;y(Y^Ve4N9SBcrE4KsjP<;`al-BK zZi#4|dW!`;=htq_L-Q}#;*s!6cXc(l`ov2^Q*!|VoAb7`f);Pip1=Hs+Q5TpVK+TJ z{h_>kFyi6F$J?P{7~3X4IIyCV@5Q|vdRG559F67+xiH(V;*w?Zw|_Iu+B<(CGb5wZ zI1k0Lp@Rl$1+5U&{Aj%hF*yGV+4!%800q9ypB}s;XUc-uL5f zDPOsAB~j1Kt;B4Z03{MKRTpI%ZKCjEL;Z6kbFp>Izz(BTE~z#IVSQ=Jaa-W|$w(d! zwhP*gh(NT~+O_+E-z*GXQsz6DOzndMRKP!H)6&QmrfO}k{M^c0iLH0HFjw=zZOH&9 z&2pmVY3wcASOBB)z!NB`^(`zYDDpo&$+tb+UDeXm)J$G|8yibguFB_e2IUd*xIW7C z5{2!sCJ`RZI1f4RF0H_CWHO*fY!EfP+y!{r*1vZu3(2n~y6VX!vvWAMt)?MQ9PjrEO%uHIVyRbk?fnvR5wM zA2rwfrHOtodej6}F0mH(EV6(?2*LJJO%k~w`_bpA1O9D9&&1y=4ID+(fXX!t(-lN$ zXT~t;VD!>J$vSFibd8jmlceWW-|C-kZWhRjyZ0zMz~Q+mqO?9e>14J%^2jLa;Y`=j zvmUEn4;HkH)G4lbTNfL|!9pt&ghD;hDf+XNag#%Ufq?op=~zq@I$8eXp-_MWKHC=p zV$=kkhK6~26pLKuGuz8E2i{W+alNgJ=c&cGF+$ECC|3}3Fz_{_hR;1$lyl%BcDt#R zugjxJ&ug{P%>@16lO;suHzdia_UEeJeR?HdGw;?aF;UC%OX|4SYDss5Qd2%GZZsxN zW?rfPW6^@2)iLc}R${y2g?H%DV7n52zJ3kJ)%U9Q^y zv+)BD;&&rBHQ^&JuDT8e8iF$Z?CcO3b#*3(pUp8rm$9=CIZgzygal=kzZ*(+wfR6f zhN#=`j>El{hW=NFD>5Z~Q*!iL6YI`OYko_?pl?T1rXh;aV5waR{dTChutHQpBA5`T zMtQ`;Rrhe`oBkD#ok8vY@INwYob;xS#Jg2X|(Ul~y;Jt+Q> zx*V;qpwexJZ~3|!F&eE1o4?u@;c7i{Hi-8up2*Z_n8kedOat?EQExd{;nT>O7o{*z zHC%r=>pr?zTFzAPvOE1DvP%#@++#U@{2cv~nCSfv(-&@Zi*Fa%EqnV7vxa|%uNQyK zY+AZPE3VtrYJ0MV;dE|^{ri(%;U{8*>?jsZ9oh6h-!hT?>8TOfvP?`(pYX}wCRfMN zGD9@+c%XUfeUYN-_pq=%FR!GG>kL`iGauyYEydr25+iTG+}HT`!4I*Vr=A*3%>oRo zquzHgSL3WTZ7!39aIja!$II$7k~h;8T8L&4TyTV45}@}}Kxf3VtE=VL$JzFnG2i}* z>h<4iL;B9M@+)PThq~XkwpccBpIXd*_*I8I<_h*PV~u~g)sC7tltZ$A)&C-u-Tl7>~J??`4ddHzS1*EYwnT_PbyD zDG+dCO3PMy1Fcvv=+51(0mr8`FPvM%Ttbh9So(LR>VB$*V~JXC(UuOo^|G${O^uU*?s&2e(MW(r?;U^ih^p!;VkPuGC)<?_MmxA19GXEfRwkn8S#7xN^y_cBRV@T|!>*SjA-w&^Kda5N4jN4*i; zM&cLUVz1(Is!OrAwT1dQuTT^I)UBF~xLwz*QPT_hBp}6t7lR*D{mm;^ho74~RH#S% zSg<~jUK-ijxt$JF7j2EZECzj_29V_*$eQBRhq~|E`)B@d^BBK0g9=!brOLgKk=Zmx zjCYBP|7A>cG=0K5stWtzzD?)cBd;+QqhEjWByXUMo~MLlnSQ(7BN}Sh9tTm^{x$(V zDz^FiWYa8MmU90Lig6N@XJ%%LnQK^B%iomc;keDJjZN|KZaiy5C7zp(b)d4$?V+_- zcz4~?FZW{hFO48nK#-#b021$-npzra4>W2I3-~R2Za7yfKtmjK_g>%1^Pm$S^6{~m zXV@cl&Nunj|IHK?8fA@mMm@z@SCW!4=&IfAk0+%Q4A}=RSH}y_LlmpsCN!zYKZ}Wq zzD1wQvbn0H)S88}Sdg?!9FJ%O?IsO4%~teP)>G_0noo%fPebFQxR&a_fJ-A1es}7h zOCZCj{o56;%DeQ+t+i%Iw=hEEp|f}Ogbp~30j!uSxh#bjWjMvPmxr$Uk9->A@t}cK z+F=txrWLL~852XTN7h%|PygRjuJHb?fA<`E)qS%hk7_Hrc!shF8(xW4aSa?&DgP1s z1|5?p12t;r7{c+xN?y+SxuIW`%k1ZwDXA}${pVnR->#6AarUZ?d=aaE?%q`x|KfN8 z)TbLO4rW@d=@yH6=q@xHn%dxo?I812v5USxveOgIgyXE;_O~n0NXzD}L|SgWufleS zB++7C>Ibuutq#5A#V(Dk=Isv*;s*;0-R9~aOH{jfo1{h@|gybr9BcTR^pGmU(blKV1Zq+Lr{_|Jrr zlPdq()#A?ork%2P;MCgtoNo6gw1fmyT~({4GxOl_{vn;XHtNW>li7J7_}APQSlDbM#f=U3=W$ z;y1>-v#ZXzB-%(~ZMSMy97!GmDyE7!r}pDxbI$)sd6K&+z5IT7`kOZ63U29@ms|3` zx|oxY=gbgQ|MuWAEiE>WQ7XG-lw(k->ptol)0bzMH{Bew2%vEJ!9o_~J_qME!ND%J zAFt}L1^i=OXrfj4iZp8E)wycrf(mKxB5}p10cD1xVe{+Yxzla5w%j=x>fF%%qwsrn z^)d7i5;C28>r<{{p0gR?yu}JxM?)GWhfHGcOXn;;E)Jwhp4)xC?H-YbQ|td8Y5Ikn z7j4v=Y5PbGfy@;uzianm<>cc2{(3W6606TWI~3rW1hF()^~d#cXEORb=@4^r+`g@s zEFa$0m!n5JT3ueQOGQOx{GIna6KdsW(0J&D@{)-c;)=CzXe-)V-e2M_s>;5*MpT`| z>`YQ8Rg=JUO(&t6%#+y&fS-ji@73Pa7=uhe|KvyV{tFTmJ4{NqeiXO|AvXr#e`Q={9$dFQSXx71Gm;2)giA;{ZAw&Uns61KJXTTz#|FT z`=^9-qE4~^3FiKexS9p2iFTM~(a@Oje?`s7>wROmSYQ?ter2jMK8t0;n$^9ZAo~R+o7H69 zbKOGoaIdX7icRE?D{QlQ$mE1uopz9gJs{MM+^-IB9}h1hK}FVtzudb1X0?vWW(tsn zAtvd1UO~sdvPdWZDaBVDnBJZq3&7MC05RC4{g(_cO8H@pR=U(GE%Rn!i1U`krsPoa zJ+>w`>N! z(Arl#`r)?RW&3@!@93=OvXem#*^vY_1c~O4Sp)tA)^<va=Ak6hjOEXmbyMZM|Pr5@v+1iv&%iHhbb!6F%76 zp2U1At)p7JMNf@6$9SVl5hW)#)BZ7mQ`gi$-%yvvpVc?U`IwILM{nFSs-xQVy;CO~ z4<*cG<_cP%)WTt{%2v<$hS1*Xm;Ps$o%fitXz!57P(|{yjJMV@8~wU*F&`Hvl~(@P zUmaC5`Il77^+D`5-f5wZy6MU#7y zt=(D!?oc*fN4`bOmkpf$wpztS z`V%o3twi+-H>mb_E~eQ&aTwxa9eq7iQ?I9`T^UFVf(n$nse+X!FqW_1}M* ztJF2n)6-pMG3ep%N>o(lk7mXyTghi;jRp3Iz}jKjN*sFMD~M}(?F#*J)*D>e@>SuNfvFtqAcL`-* z1mL5%ry#KYRdTs#xc|R5QafTwBTe+q4=r1h<39R(QyL}mNFz#gNkiQZ=rX__wLg&-}S#Kg3aG16~k=# zEU-^~s<^_pVJ)XyLmilUHsyDWC;QDv`G}${jW$xP$ib=p;w+u8S`};Z>ya|vkESO3 zH?QMx$on1N#ktd-$W#l#=#AK4Us(GXUj;Wr(*W}Jj!7EzhEB(-25~-A_T=Qu_ufYs zYFq|g$%2u47MK%X%i@lD6A?ob>Xx( zPefI*5yWs;c#n+qAg0m}8~@#!Qo zL;>JYoP1%tOILn}_`*wv=hp{&URn{r9qfWcER@gjeM20cr$5Z^-Tv^86#M&g2mCz( zNM>IrB0e}fNwfx7-JAOtFKyx1QB6qVaWa0q!8zv%*^2~1Z7Kdo+8y15S^@qP`2nVi ze>XT4IN>ULxN0ymANxG~05RoEokwuPPAJ4Qr~l_FX4A?0-(F5-<27P%wo!t?0r>tK z19Xg9>ovIj&?RLiqgwwvw+Q~YVya*n5=jXXYOgVnwcYk(|uLz*qlXKbX**%eYzH@LWz0lcX~*b}t6#P`-~ z;E}}K4p)`Ql4LHGUWe{RL3(4MHw)6V?v{Wj>Q?!bL8>h&E3Zly$VC(hg+QW1(ERUX zURk&7M$#)P?f{#`5~vrqO6btD8=_M2MwdIcjYN%Dd0>z{Jj}W3c&d+7!58a7+J(%z zP-**izhNHWbd~!vaf!AFzXx)#TXn=dvfC1V`f818M8vJC=f5raPldm*em$?Ng>T);*8Bbds2L=~U`2T$bHV-B z8F3{ZJ)&@X)?DU7`sPXLKjt&gubDO38iYgu+>tCLo=SD!!=3O_Lom*e%cCpF0Se4b zcJ>#0pDer6*ddka(%jZol0B*rIYGyW4bp7z8iiu5tP= zL&6am8JFS0C$FbhpR!!$tGm3caA8hLc4|u9uI%$b<;tgw>XnT0UDU$XJ(g!uRr*dj!%5a0ysenoyqs!wKq04 zc7{=L)Rk}nVGR;kFRZSA;^u1oR3qVE1^L36<8a{%xfdD}pUas~6?M;SkpB%1Q1J|xm z1g|E6&I8-4UPx}GsU+lr%L??hOr;p^#NoxfYWkrkyDOtZ-|Y?O)+cJ8Z8ve`&4Jsg z3U80(l)!%#662!}_(kW2v?9gqkwzM=f27-fCVwPJZpLINHML>Z6n}NNM5taPkcXcU zgYyEx^%mL6&NyVS7@ERXextC3M8RmfwF`9`k+7xlpS%ofDYyzdgj(|7tn3^~ z{M1|4{`FB=?r>NGE*V&JT+^?1eZ?^VZ5$B^z%tk4rHR(B~WY?L!b` zHlOs8TNQA4RW&u&^F;TzY}T)#{y)lr-=lp7@gB>T#@8 zX=XBF@dQKW{%i1le5Nb^BmCwDnnUma;r;3`rmxg_= zcO$(5uiV?IzG`NfG3agC-|I!H_m5UVaQI9gOuY*vN-}})f+Twp_!`{>u73`a5OxzL zSmVAOvP{PdW1e{}_9bbcKST>V`Z>ZTLHo|0*=J4WW(7PFKC*LR6jGKmu zJfo)*`T9k!A+Z8B)O06TgqqGj3h%8g@PJ9{4KP|YE5gw$DE0~N>Pn%t7qkz!H#qie z8`x%L2jLTw_E2=$#Y}h#IRMa%iFXkdWjja4}0fVogS|)`k(Ily8?sqv;WCHWK=!^ z*CPdCB0*LKdG0MTgJQYTFzNhV{!8jA1e|8pWPQLb6*R8H!xF1b)V3XfL*l9dFtou8U z%2NLqx;LvcUj&zT@+Rr#%twGS4xYp>%quX0^JL4w+yV(TpkIyJ6IbV3FN^==iTL&P zoR%Yv!0+<~;qX3h$V+yOj%WQ(z9NcN-*Y;OM#SL@mIYc}4MFsh&4ZSs*q{1Oi`zc& zTnjB=(HGT;xf!0km&A;197Pw2+lH5!~HpWUxC&; zi!cs==uPn>4lgg?8HS3x35DTg@8>N_E>Mm9HF>iOlY&*?CfpZL&7f8gtAj9kXl}dN zSPTQAgHRnteRoIkIDhiM`}7=rGrWjXs;!!vGEuM^9g;PH=gq!BmF9YV;EYs-4FmHX zU^8%+&n0;c19d7r`QGcHQ92Jaf8UtQ)B&#IktFZM8ZrC_g+#@+ z?gSvbMoZv6ZkJR8P3&M^#ox-^d4jcep;z_a8@X17!%y0)kS=3h(dEIUrdafjpW2N= zfQxsS#vLnhtJYw1MrX4M<wB;EMwUzN=uKb9Md%_;tHU)8*O_vv+&c)FogpxPAQh8;V3G6V7581&v4Bn0v0Jc;~!~4!J;Df5AH^?cozhWe!Fm!OZVdV z;*ZWGxvqn4iqrDibIWCAFAPtDIqpy0dqK>|jmJ5_7M!Xot>yHqK7z3U{k6(y;*L{F zZM7XQ2EAae?F1(Mh&TuXa8zBr^oe;UmwO|f3jbNz5^d-0B z2Ew(=xY6T-qHqaE*%J1W&*UPsBwCP#Ylzq>AzOb;;fjn(b)k1b$yF_<|4dO9C2~z< znPEeO`Q5JnycmO)ZaD=jcR=Yw3qkpKjt|k$+^WYU zKYo7arIHdYnO1H4Pu?3X3%4%z%6+=yKKAMY#NzRXcN<%U*oqnoPJgUk&lKuYa(OeA zLaBPkInBwwEOj05b}H8wRud1*8~k5Qh{oTxmwy2PX#4S(d_ucT$F4_?j^6+SD}Eeu zCC^Jymx?f5Z!|tL4LACys!#xd=SsyD)&-+|eS`R|-?W{}iy@6e>ua9+sa}%{Eds?> zT`aD8l?NUZO9PL*)_+5TCW=A#wQpOSF4yy}x6I?Bh%gib+5bAr5T}0)7(&G|K}b42l;TWHj!%dXGNA_XfSYyBrC$>ii9uPMaJ`s>rP-#(womEaZ) z=i~J8vo(|8<^M(4+CY=d0t%k$WQE?MOsTrVqQ8MV=ThXeeRr=W}+W0 zDr8f+W?}Tl_v`mRe0h3?zzW!s2$M|+SOVe*kyFC{e?il>R(zcAki5>NdNcq;cl|P< zyRJTz`7}=8WG({h*VZNBf5&giInT^CHe1cqn73W9ew75n11GssBBHi=@G_sd*yVZ} zYFpT`VQ>^K0O*-%4Jil&8cse;NlUvaB-ERBiHRw&9!c#pWquRWhTFr$Frt=E%@TNE zt$c)$LTKH6hegh_4*()Y1A)IADE+z6iMf|NRUHW@TWshqsD4X^LV!6aCQ*Z=nR&~H z#3&9etHA=ZMlrkrc9BmPEsZBy?vHCZy%xhfqF_M9Lga=7V2c~gJY?eWcRUMNEJsQm zk$eMy0$-szB;@1-n0p7mc>EH1s`jKIUe>JkJKlo&C)OpQ2}eI|(i;!>o@W`!`LJ)` zHmm<6m~iHdqP$ieeH7yUOOVrI+DRDYgQ#>v6(@ot?zD5ua7{oupsNXC`&P9^az_?; z9DmOQsK611u&j$`sMc|S5c3(7v;*X2Ux)r^)5vG`E3y_-rCLJv2hzAJ%P3pz{u;Pgw1gY%2p%h(h{L~B;3W>co8BvsyPI(CrU-#Lt$YzAJsnE{$0NB?vI)Y$9C%>xB!sf!an_P&9Hiftx>dNg1!n+~iDoFLO0I zgrms}C3Ro>C9gb!S7<(eZq6QTQEbNr_VdnrY#7R>cW5K=W_r@9lX=r5uuE0qF^UgC zpwKH0@!Cx|3g)GeH>SVfJ;%1xg7n;?8AsMRD)C>OD(Sf^mr^kDQ;I^F>iPH0 z7TQHJUm=M#K30jbJhw-VL%ed)nmxpA`NDXbY^V$VIIVs99u%7mXGXcbf3Hv=fi3zm@2Np>8mN|LwImP@B^G6K+q~Pg^Pm=wM zPuw#3!EL$a-OvZVm1PYuQS}{s6!jXT$K$@jM?!(lr76LAZp1qhR8${X`DpYmunDM@ z@0(lpbFcdRUI%hry`_%Mlu#Wm&ZhI!P3gT);GtmT2zOtqH`TT-U~2nKORX%ho#Clu z0c!Yq_3dxDYMy0VEdmYo9}@6G9^4BLt4Io92!YoDMu9`p@vU?sg|~2KruwHSvuG2Ml8jo&*X5HE+JR8C_2@4qkGrVEC_mIfv1vUEKXooR(S)6qoOnSD zM@k*)VlOZap=Tlm-LlI(Ty;K%=@qL29SGs~q&%h?is9s2#Qfqv9~JXtCsHT8`~ixb zY6ih*9yf+QGEUU7zNz~(AdKXikF>XDwC3?yr0UcYyZJcotv@epx~mY0kx7 z^mctziUup|LW!}A&nkm5)sFVQEt(ExaTZ`^LcaU_ueHONw3Ba+6%evTU$7uWdUqd? zW@cH@#)?icty&t5&6!{05pS=xULd8s{&T0o=u1Izu3CjPD{jCufT3kWO)AUN!$NPB zv>6paw98Zd%I^<9`I~YVzIsTzUvb-6QHJ!0YmO|+;an~=-UTMf@oZ-*<48|+u>HB5 z(%G)x+9ZCQ3gX*ZvXC_IMIv3 z_69bK=WpH1=Z^loI`~GrPcb_us-U37xHhflbKx&12~=dLs5W1iNHj*n?7;}vP5uzc zq3^;f%=`Q5RXZ8-^-<%$#Mq#mrzKYVTiYP+8<&<^>7yIbp_CB$lP`YCFDMw8wZW0P zK#?E&^2K)%oXMMt-&)Q&>t5wSS>QV7$6gyUc~L9pP3b#-JCd7evZ=Ygy|eAyOV>8d zq(u)LDasGesFL%){d-Q_YFuMMb%}qyuO2Kx`k|>4(!?VuOf%6^zc`#P=S;o){4pyh zhVRG*d&&YACrk7%do*D?dLW>mh52(q!< z_#YxC)8qw%u&0wxP!2-4n$EoIeK9r}&T^w{@O%H+Y(SAMeuh#Y)zDC64&2CCpEhs| zU7&CWd=hNIHPo!ej+0*>I|#FtlifrJZzg+JP;|eFak2^uRFRq{s19Q2J-O|^(gS{i zE4WmMZ&MDn!md!Igp_c#+TVBhYipe7Y0`ouH>#*>YNoL&Mav!=_;G!haYyT%n6H}@wngg~N zH6ZrW_!zjl7DF09<~7I7n-_*2h$wYY+oi2gqDmv}aWyM|nVSYR)7O7oQ3wQb6yt&f zPQc=xc_=S@CIEP~WWyy;*p~YB>%FDQ$dv!(7^)=25fM1tFU3XL@ydsqiY=%$3PFgp zW$+7)ufcz?OUgk(k@J&8s18i-a;=!h+84;qq(Hqdn!lOX2HZV}-lI)-?oeI47_?J8 z6>)oO@JYga)!|AvP$5#rPfvCaHWN;>5yYd>LV_;L0UwnQH0{2_)#^NA?ouggjKfnF zODJ4L@ZGJ6XJm?z;NDRa=|%P=-y^Gp@kVku2xl0o##IH(TRNb=DzeK@gbey*M5WSG zTky_s(bMB9{Cc4t3_<^n5soGk1_zZbUlW)|kqdNAu)X$JLAoZ82P??d1g?@Jr)J`$ zljF5CSX)0^bCVuz_p2W6s2aq-Pe>@;UWifCTa zN&%?5xNq{uT(cS<<6MYMuph=hgF-Drj*}>!RO^2x&OGDgknZM5xG>^5d70dbs(|8& zXH3!}@w4?%n4ojTP^{|wqqVB+`!qsLBV?!v8t_+Rzt%&*GU&`IXW(|@KZORU01jwb z8(NMOoy{yNS{J&?ilz4@!Ek6X8r8nN!vMT|X>Y~%)q(8n=D&RYbB9P3p;n}4v5`Zr z224-ubSMgy3yU*(4~PihfdgwEil1$~QK)Ee|M+~UfHb&J`#)TI9F#Ux(%f6q2YNem zlI^hKQ>m%L{{ZC!-P|atLW=x1E>-8XB6SjdcWgG>-%4vb94-y2yAYtLnT(h+d}x7F z{)#v6dP|ES0|An45)epzP7Ih6io0G_RDot3D6Ma=rB-^kifIvF`k+NzV*RA8j7A_h z9_A)7z*taYn%osM(~WD_WI!V-s;H>AIb&YJ>N=SKR)S1WKC%fXTmisAw)xr_+)Fkx zF!_7@FQUlv zjhJ9zqORj!;zZWc1Tb1-!{Gr^hyaOsl$0+(px7hzgxXLoM}!LagJH;z_doIc?D+c% zz_;D3F_p3eiQ^o6p9IYgtwU3SP_NmG!J+*>pDMG{%?RR;?_Ma3{EOh=L|az115-HhH! zZ+G~vh;>i;qoH!wtgEfA;>hcF0`LJ8zC3j`HMKl~%>Sf#E!RYm>I^7|%zjQxZ3RhA zBr6OFNDT~zZXL@*Lz2gvv`7oz9BpgD?mc)Afz&zxwn1`*U)H{2JsA0Z1ht_L-(P3M zmb`lPs)OtH?cv{-*cgzJ8~{2Y0<9uN)==PHU$Q!0ZK$K8^QiJSQeTVc@C3gD%b&h! z_df!WZ==H&iXL07zQ-Y|A@ns=r!ri?t~@yj9c{{N-e zO@tJAlNm?XnsUfCAsL>9S^@@j$d@BEJ7B?su2(^Ys2)3e!|i!kF0O~m-?P9TLzPP} z)D#y3X#h$%*>plCM6ff@^PkGWQuKd{{?rW&R>~%&5$$PZAYp&&cd>K65f?J#eN0A( z_6_(&s4a01)^3d#9w!5`1KwQ5<4izyz#9=bf)%vk2(lI4c)$@vFe1Z^RzXHFpA4s& z02!5mmjTm`NDr3o)ocKX1626knvEM+L8fMd5i7{mY+S|)a1A*kv`N)$5Ml+m7=;x; zV~b)1nHncPtRP$C#Euo@YMij!tqqLB73`6FHBJ+R<9Wih9ZM1NuF;bjSQ+Jq4q6gA5ZY$W#b{E3zVE}JY-NOR6sz+ za>5V<>@~o{d5P#36izeL38GMp6#1NpmO=sWOpJ`Sls;azIdXFVCAi?o^r2{^Yr?u= ziy-O;MdIXJ;{~;7u8>Vd7%9j%Ie=waDZiU=+dUVlm5cn?0+3nSFL!`V5U_Y7>e?ZP4xsz=NSw-8C(np@2o(Kg7@);(6 ztKb?cVmoz!8*F^J(N4C4yX@Zu-&ODNZshv{XjS+w1~6A$;X_i3fSSQ)HU8g8D)9ic z0@d{m;@o^;uiZ3<&jtV~_}wVoFk(@$1+fRiNgQg{~F)b zmw<}A4@p;w@vlJ7?d|PNY{0TufV^wH{`VKy1}!)%5P=8tMHGKce$_yM)P%UkZMJrnWG76GKr9c%|D`X-QRk?%SHV+S31 zT{$*|NhWv>6f6?DY!6xI%^&ZM_x~TAoO@8yR~E-pTU+hm*vE`DC}3SBQ?-pq*c4pB zwJmK#O<}NO*=d5#*7E zhmb&k?Dw$kOgo)+c9%cGUV=gbP!BH*;^n{O%?S4l#f74X@Qt~_UcMGVU2ir5mR+-Se ze=!{Gy!Cvo2D~h2S5`a|5>@vSi(G`2X0_=o$`GK;GO+8EKmp~P+n1u7{6|{XT8$~4 zZ0F;Ht!&@7Tv@C)p8?n>rf&DSmb?CStP=$snknOK+!F1XL z+Se|l21ntGoIKwHI^znJONb8sm%E~~;RMX;!C0KHb)pYkj0&%izwn@F@A*H}>oZ5( zg_AkQ`?RYMO;`Ht{&RP$aI(8Vdt5NuV3urr{6z#TMFg}@DUPjo?=FS)+YO8BUe7EZ z%5gbt87>Z^(B&e!e(YG8>#n_k=e+V38=$LaX zF~XVdWW=_jMAIj)FTUqOaG|H14u1oMNorX^etyWq+oz!}5+pYU;ucE>IJDw_S~mv% zt(MIL4#gMZDs)o147Q^c*L`$xAK78D3(BLK{QLz48ptE+B>YRT{rjZjcY7hisVKqR zv|MGlr8C1&ss_^o>rAQ)&GOfnL(&AJy=KW%^X|F4A3y#DC|z6pdXh;u7a`%{Z`<5e zb*h*{>gmyXfG19q{v9wLT1?f|)zKXH11sZA2%%GeQ>5QrV}(=y4R*!w(cZ?~qRFv7 zGA~@Ya;3dk^xDPjC71EeF8u!GXqzt+v|aPjjQzdIQPrBDsd5$s)WUWAyL4}nCks*X%uLR@ul4^StNfDrt;~A3^s`DcAbq6=Th{R8TQ8vN zqb>cH7|J<9nUx0LvPW_&Z;Dqx+Q_bs9%4mWO>syHTh95jdCkbL#)(zd=xIF_buOI?mpA zpMCyU#)faR`WIlG%P$_dPEOUCeiK`K;(!Wwp>Esz>0T695^_nRa9B9$x3sl z4J?9-DKJQQ&3lzI6MOc-n_dGD&LUn7rpO1OoysOH4B244L=gLo+ZFY8hz%ollOQvM z=4rM7{U?Jswi}3-6ot4h{pZW=@R}*vLGVUv(HZKrhYH&ytHb<&K zWR^mVTi?56&)SoE4YrWitPuCLS)fr9BM7{>P%im8sO`w}hpz2&;7U%ph<`W{+sIrW zl+=WIp}*1GYmGj!qeKxjgPH zA)o^z0M#mk5#$1q^?&t5xZG=|f5$;xr5Xo%Rb_n-9$@-Nw(dU1NJ^T2wR&`H%nvmY zQj?T2hgZWlLtl21*kr59?2>foLMq?EfnZeCB5nvVdBO;`NS)Ts&Q61yU6P4j(N3lr zz@hpv^e0x`%5w7ogvWoyGjB!KGc1AlGJk24p%hvQ)m4p@nMcBC+9y11(;uPeWT^rf zhlfylp}ZXgDC7>cZK=5mRq|?dh&|v*Q3{bRmPZ@Ehk|HeN8(flc7`c2cVSW^3DF0^ z5D9tou*n0ZF#>WX+?@P@&q=|Ks=NRkj z9FkOm@N4tezyk!}A744IXDRvmFx+$b$p1I?|NF1?XYUxYJ^u9ld3&-~SM9`XVDR4H LzkXp$(9wSb)ZCFN literal 0 HcmV?d00001 diff --git a/test_output/random forest parity - fast distances.png b/test_output/random forest parity - fast distances.png new file mode 100644 index 0000000000000000000000000000000000000000..35baf0a7d8eaa500e4b3f021460cdb5b4bf740ac GIT binary patch literal 23050 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 Sz6Os3#rYe$W5L(kRFEbMHBFI~GN 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 literal 22448 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≈?C-U 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 !*V* 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 From 047c95e31038fd66bde41bc55ec8d81246d71411 Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 13 Sep 2023 13:20:52 -0500 Subject: [PATCH 11/24] Optional override for model hyperparameters --- .../MaterialDataLoader.py | 4 ++-- .../PredictorModel.py | 12 +++++++----- .../gradient boosting parity - all data.png | Bin 27825 -> 26094 bytes test_output/gradient boosting parity.png | Bin 26148 -> 25818 bytes .../random forest parity - all data.png | Bin 28656 -> 27621 bytes test_output/random forest parity.png | Bin 24739 -> 25015 bytes 6 files changed, 9 insertions(+), 7 deletions(-) diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index 3d5bbab8..51dfd183 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -148,8 +148,8 @@ def get_model_inputs(self, padding_value=0): self.volumes[i], self.lattice_vectors[i], self.lattice_angles[i], - # self.coulomb_matrix_eigenvalues[i] - np.array([atom.specie.Z for atom in self.structures[i]], dtype=np.float32) # what if we use only the atoms? + self.coulomb_matrix_eigenvalues[i] + # np.array([atom.specie.Z for atom in self.structures[i]], dtype=np.float32) # what if we use only the atoms? ), dtype=np.float32 ) diff --git a/boxylmer/MaterialPropertyPredictor/PredictorModel.py b/boxylmer/MaterialPropertyPredictor/PredictorModel.py index 1f9b44b7..beb5787d 100644 --- a/boxylmer/MaterialPropertyPredictor/PredictorModel.py +++ b/boxylmer/MaterialPropertyPredictor/PredictorModel.py @@ -43,15 +43,16 @@ def fit_hyperparameters(self, material_data_loader): pass class RandomForestBandGapModel(AbstractBandGapModel): - def __init__(self): + def __init__(self, **kwargs): super().__init__() self.model = RandomForestRegressor( n_estimators=50, min_samples_split=4, min_samples_leaf=2, max_depth=30, - bootstrap=True - ) + bootstrap=True, + **kwargs + ) def fit(self, material_data_loader): @@ -93,14 +94,15 @@ def fit_hyperparameters(self, material_data_loader, n_iter=50): # which is fundamentally the same but can be parallelized easily and may even have better optimization methods # more info: https://stats.stackexchange.com/questions/282459/xgboost-vs-python-sklearn-gradient-boosted-trees class GradientBoostingBandGapModel(AbstractBandGapModel): - def __init__(self): + def __init__(self, **kwargs): super().__init__() self.model = GradientBoostingRegressor( n_estimators=170, min_samples_split=4, min_samples_leaf=6, max_depth=4, - learning_rate=0.1 + learning_rate=0.1, + **kwargs, ) diff --git a/test_output/gradient boosting parity - all data.png b/test_output/gradient boosting parity - all data.png index 564efa02d5d716ddaa40da67628934e16f705d4f..7020d5f8eb8bc141487aec6df15ea434f777e9e2 100644 GIT binary patch literal 26094 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 VHyb^Wg70Jm(bCXUFH*I>^Dhw`v~U0b literal 27825 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�Mto~J6KW}f`f;<(L^JskEwzjq&NCZc*+x~6v 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 DebF~R literal 26148 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 IU}zukA2TtlL;wH) diff --git a/test_output/random forest parity - all data.png b/test_output/random forest parity - all data.png index 154ba2b229b3484205bb456cf064616ba96f4ad4..97756d5d2b578353a187d4359e481722288c57e2 100644 GIT binary patch literal 27621 zcmeFZ^;=cZ7B;#;QKUgZLON7Zfeiu@N^TL5+%(eN4H7CLAhng0P`bN2BqXJ~rMnxx zxj5&Z`~7hLgzNJti@n#HYsQ#kyyG43G~k`ABrX;?77PZ%MM#M$z+mXA&|l0u;FCI| z=t=N{&p}+(LDAaC!CBYN5GJGRU}ItJU}369<78-OZ)$DD#m>vl#Y$u1;9z6V&%t5& zzZ=-C?Tk5kL_}9WBlm2i)a+p}d|l`-T841CDGX+=fDn77%(S& z2oq1)FnJ{=-iX0Qie2&GqiO>)^X!p{vdBi(5n;L6P`Z`)f+|FEtj zJ1ULRc0;5mdRBQJBvU^X7S@@nb{<*jONM)0T@;-AhNREscd}Qr&Ltjpa?}s18ONt4 zCD9Q-cwn+IS~y-|t3SCtQEDEwRe$XnZ`bjZf92=r!7@t?O2b#gy_LKg(fS9P)1c{pyKZ#rG$+IVg?Q6@u7OiV89SySb_omcCAyjHoKF!24U z;=!Chwb4JX{#iV95{vA-JeBp~+yTL_CF4bgLF#1|tLhb;IHF(-W@AOEETK`EYinyI z#=TUF%gbPJ!c)y3aTnS`k^Xp;3USnJ~I9h`3oYOY)Mqp*5+eRT=-7k+kLV%Qlev2eN@>XozKBhZ^m zEraWl1`N7IDA|xN#`l#fp6CYiI^-YxsrOG|us+QxO`A{6oZ8|^R>)X{xL`zo` zd2cvhCqLl+<1DRer?WqDo^*(_ZLjO>r;2GA&fC)+y}d~AHpe;Nhieno^}#2ki68b5 zJ6>bHzP?qnpRh~JNAe2JhlhvFTECL5jTR=4msw^%*Kf@L);&LZb-C@eelQ@1eD&(% zc!_E9T(kdr>4-LVbuX|PV$9nI{n8w!;0x%%z`#HUFcLGcle2Pi22&8<2J^H8O3g=P z>n}I07i357qN8=ka7hjg4K*&_%XTuFsq?5hUHUPUE=OHz()U`>{b&%hojpE2UeLBO zR-E4RVgUy-4f2;R1z>42{i)ofP)cfQnb~<&Z>Fjo6@y6F9KhaMKbo*cYH4YW>c6}? zSs>>&34_J}?26L!WUlIX+WoWevCqBx42Z{xAM9-6aIZh&16T8))O0|Cg4b#=Gd&>- z?2ByaDE6w=v>)WPOxMR=*Xj3VU%c9!C`WcivcXOM(y*zQJefClT#P`jf!VFb6WDkL zb-FW(1K+bdtFda%kK*9R%!LGMFdLaa>mq!pkngXTiM!^ z`JmWmx}PAsCSg<0&?vWxeXj54v^~8!Zm*=GV%G8fDKjgplDvF4lU%|h+dthsGx@6d zKNz676TV!P8_HCC488jD{CMOuzEJew39x2n#CU@+bTSWi)c0Kj+sr%7JCTP?YEVAu((8g~Z5jDR|dDVY9!3%zWB?dll^2VfXFY^bu|MTzSGB$a!klx~-N?SPfJ;t{=41 zhh`|I%T`?;O?*DC1oLw^svl}P|2u$x&gcFC*cm2+8S=rc`=BY)mA}83pFH_%?RBmJ zoY7l+!Go~CprBH>Lo-U}Nn73HM1IFCe&?+m3hNsA{Mw^fD$f&L;7L{^klOOVVLF1y zv9_9?I2`Xhor!kqj+o}Bg71-$YfultBfli6T*XihP4^z(ZWFeiei=+HtX+RLlz(ux zp1%%t7tBIFqjaQ?V2?kwXNG+bpCsf(*em}L9d1q_tDQFc5s%|jIO;DHpwFQ-hMe<= zrhRbT*&53fn4HFut2q0fzMZ+|&-pV@b5S~;Y6IzVBL%w6+?M0qQ_eFURY&9Ijw`?X z-ze*%r!9mEYl9*BM{?-o#c&y$LE8t|>!;&tVB&D2F4B1St;+FY<4`KE z3tO4!XRm-$7AC)Rt=(zDcH8^&7_!|gQGYzbC>F1){lxX;P@(=$7}yTSQ_gpd-|{qKeV1x$M!YvGbUqd5@-&S6NB+9O5yVh;bg7t>=Bc1_5pR-@`KQpd}!^LeLT zM7>Tsb%3@0^2L70ba~>Z3k5_s;0PSX45L>6isBEU7^S&g_x?#7m+l|446ifAbh`Uf zIzFJi;a8 zWLP%N_vnVvMf2IG(f)a{9A{7NVL6hg6>OzZ@ctw1AJt+bndG(#(0cQh`%;WCIdB~K zo>#yxQJ}s8xbSkr^ZsL5ZU!Qh-jt!5~R$EPLYk z{1_Gn73JU{aD6JrC*%B$c^kdeFiH!2307PJdh0h?{->=hda*BEi~7L+DVWIF)%md7 zqFa7_Hd4>SKnCE$>zy(xK{ry=*Tv2#|Ec4pAJ#nT|x^uedjy5E9zj3AXT}%`lxQE%B&?Xz){7kx z!P7e77E@J2VFr^912VyNPS=;mpf%uVX|~LXv&zbbS7z$#`?8T7`Tz~ zpX|&v){nHyuoBXxNeMW-zHT$T%-=g%2#sRM)hK7*(#N6XSDNuW&vn`urA4@%t)?>~ z2GV4(t7nvvTEs`Epd+PvEm#rXzeDl9aRQ%zg+?asg*->?fx^ynwuf2{@}pnJZQCdT z#&qZte~4ji-k%b12cOEq{P-Qi@JT-KOa&8OhuJy^)YWOPm*3Ph2w@V^OxO?E2mk&O z9Rg7t7%1C``R^};(vm zGvj)Xb0=kGWyog}UQf#LuQD8N&j`=$J|H1615QG{;QcF`BL@Ja+~xxwD=8?z_rb~KuTz?&ZupoSSFaW@ArYCSVcWwp%S*1Oz)0L+<(HSXt3yAqY zWWg&eCoAN^uVqxpAm~E4#0`WjY>t|Dcd0)VB)Be-m6{DP&tLxFHccw-;g<%h7iK_G z?z}$CR#7tg*Y}}z2G}y$6&0#r{!mtRr$)G7`u!i-ebIJZjF32{7I4ae1}#x9D|GsA z)&m3|LsE%J9-85PYk)_{J-V|99jab_0M6Fz^6W4cZmu%QgxATp9GASD;4Ztr+>1}L zQ(bvGxT~3nRu8xsWb#Da`If+x%R;c*#cmq~ak9i&TebV~mTsbkG|oi1HH5u*EXPx7 zYHDVSKBarg3HQ&sRPuvIpLsYdY3 zFI42SQ|*^~z>@U?hudTodJyXgUIoEK3e9=bcDHyCu3m0 z8Ds$c0H`K|fFitf3|7Net0tD$I`0R{%#Y0q;@2>H5! zSaJZ;4igX-fWKB49k$_soDVsd(N_>J((Y2Zh}@-g2m@A@#%I68&1@AJr}Z<54?s=F z*^hVE3frg#0IWCw0WT96fGtM}02=u2f?%JdWcXe|$f7-*{t!&$s&oB${Mq4pI&hln zP=X6mExNk&+J6VzNKpzNi@yM`4CU(xPdScgtqte?fL0SEgz8`k$~O~@K`3ifPwGpS zT;FNN9|5UacKNiMw5x0QL*WpCtrv%@1CmHB#|R;?izRYNl1zuPBK+_uvwn&CLx`jb zq)CThm|{8d_RVN_AN>TlcqKc(&g=lbUdFCfHR_gAX}`P%b&D0z?a|Txvdn|gNGwJ)HRm?G0C1hhj2nw6~Ehn{`csn{eX0O%tR|nEVowg=T*S%IisJ>wY z+zw2jJ-64%F(QgD_+XOUig(2qq}cHt&S+uuLjDDL%R%k7Hc zYTMoS4TMiK$;6rfa2qS&oM%;k=@bzWv5Jyr52(()EU&+`9F4p(@f|}QKT)$&QZAUwf?zdo}3q#&bW5XTX=`qSAt0HE)5#%?AOJr@n^62m2VRLE|DYwVt*WfkxOtS2J^Y&@N= zHVY6`Wcd~!uxV9sTa2v%PNfgPwZm_T7h)I~823Wy<%dxs&AZdUfKU%?c@0F3;~gWl zJr0#2Ll3S~0eKzpSO|q=6;fAMSN{1g^bA8B&Z?ydS%D9|v2d0X_vUBZ=EJNI>Id9G zltJCqM-iGF#Y5vnkF=s9PRZVZcQv~SURS5%bsp91Aoy)gRt~6eq=5JcMXpAj&v$SG z-Dae=O`D&6%H^2cDNek63w$KDc|?KNwdds`hgX0A$3d-THQXAj@mZ;l>82VTOR7< zY}cL3-Xx}_=19x&5(JbG0OF`&c4MsJ<1L8toANy01U*#%0rHbzc+#KV-jThzX=XFyg!1|lqhKTdB6dT0&;UM#<( zS@O8dzpw)fZLzfCGBbaxzH%icB~s%A*ED%0B?AD%$nP_~eZ~WF5fgWZlD2{}3x6w) znOgVq=O7VH2HQ~rSZFYqUJ8(3i2r6A0l#uV@iZB5sS?>LxnIA@35~e`tV1Uxxl*>H zsvkJ$NsBT$o~U-tw*{0Md9B+aCs-mQhxOs^iltcdud%VQ1?OrSBkl`%?F?*fo5rh~6(`*?6cXCahs3vwz7;PE7Mb${JlL)jLEp#N08jvwKr zBMS!yZ^(;zOnPDA8HnVv1;i)?WGu;Lj+n&j+n&nG5%Q|4q{ICT!|vlmtJ@18NB;^q z@re}>i28~QrEi`DiG(eP#bg3b8<^*wEhYm5{3O+uWT6F|}S0h)RNke%EhY}_AyeW&vAd(t?bdnaQ6 z0+g8a(E&HgH6YW5$W_aWX7e%olQ27+Lo-9Ko}dWB@3>VIpBgci^fp zPAD(c6ig z_C22g8#c*<2LuH$7^Xa6G9Z7_tPD0XNE$go$};0@2#0zURuUM9Mf~ugIq=P>E*mJ3 zn30t@Ngv07!CdInEA|w-l|^rEeAc9FaC1S>r0f7)%#zMA^FYNS8y_2DYBVs&QHhEo zf2fFLL900?*?rD73B6DDznf1;o0RvU zvJ=f0n?*o{gU*Rn*xiR3Cdkv20L?WlVW!xp-CahVte@q~Z-5bio&56X6EkYzKxQ2tEGqNt5y!)L{E7pX>uV z@QN^fOynvw1{!~YJkDF77v7IvRdhVMc?>qkTzqr4olka`D0EX0VIC*cRc}`DiVjWa zrXm7x6EwhfPH@vrOF;yAMK>+6f|jUmZUQY;-?U`olf7}%(r3cFqMMd*Kug-tO`M>m z>YJ9Hftzkx`b>~#cheFMXo>RXCeTtj)RGielkyfc=V1~)*^^>W=VUOEl|f)#M99Ho z6i_c8&}%LVK~wQmtYYu(&Bg1AJ^Y&sk&3;C&;=E}<|#fj`}l-;7XjdLZ%It#l{mBx zw|rQ2(a<>ySeyi<12M@@x{j1@!y6{s1%$2O{yf?@1U@$cw8()_X6a~Y1TG>#L2So$1Dt~lXJDm^9=v=3F zsr|An#0$m>x|abM6SXx5Cj0grmeVQcdo9}*Vsb#~NPHy?-}?2R&t@f&5N^#|b8~Mwo{x*KflkCLuZ7s#?uvY=Y_!fVsU_y$R9F^`4gp)ialQ@)f8Q zh)M@Ub|yI;j7F3oFAPTq19BQ>4c=(F<)v0r>VT57b`XFy)MFyqGcvWR&}tM$BMu3yVFtX0ndRHw7ZM_17SJAy@;J{`LPl-L z8{7tOZHU4|Qkl#okmXSCFoT`wZ?hPVA~GuQ6ahAKf;HD6dY?&ZbNsaISosNbJ1@As zvo~s~o6Bo^KMXRg6ZAP|afwhK=ldkYF^T8gCXm(hh1x{u>9-vcC za$bD#glCN})$i~@2H&nuMx6&{@~L9V=0s}E%gnrJwQ;DA*sJlMaI92_L7^6N-y z5Sg2vmeDP=%nYgV8or~wgo)6o*PgXjoS(tiq|_+#7`P_8ei&Z~5q$YTy?*4nKkrZL z#ApP$WSRv7$BLq_RF))355aEt?h(R z2i}Njl1$cWXx;j_V!WYNE*GOm<$_~y585jBgxKThGF(v@d<~?0Ux3lrnIl?wHGzza~JUHLq>$;OX z+~%~Iqcc-C zwGo41@C>rDv@e~XK+Ppvxgx>L)zwI}UkP~UH`1xL3n}w@`}(Gtt^x#5^d?aL{prYb zpv$n)K{ zM70xKzlTIUsgOiLo1WkZI$+XvnD~2ivw=e4@O3<^`M> znnhV+CZDUBIwNeuWd7DsZ=DpvB`Nf+P;|mVD zsJ*-AlU?)D-e|K=GPUt@DjsE*j=1=)=$jRNgExgPo^_QESj4Hlvaq(oOTo&7-BYNs z&rM2t-7=!J+|#A370(xBKj+&&UfMsLyOd8KS~9aKI1tz(8On40wqFZ+9WI#7PY<>< zvCH%_@*@8=6}^|2|7Tca!9haJB>`M)Ef}ymG~nA$vFHiUHJ|>8&BkW`@`%Uom+DJl z;hV3)#uQnD4EA^-y5-Xo*q^q8tmHhtslUiKH&H|`rx^y$7N~N9rUA#$D_|3GD?hO z=4ZC;GQ^B_|Ko?+xrcj7TY^%J6P_E}MY4v=3UnVe_7X;6IB)Y{k556P9xT+KpRuOI zS5hQ{*hrPou|fs_vNc{GKu+3 z;(ptg1YvXsjlc{Hj%Sx2Cvx}hod0slOfr-v&eurC)hLrXqt#^7$pifH))gu6-!c-L z1tE6>A0N2ToXOKl14v9WFd9F0?{-RY52sgRRC-`l)z0T10>JZ_=PQrshh*w}vJaxz zB+gm*xWR+eD)RC6%>i-E`|W~((emBkrU(O)5*>$d0ev%4pIDxVycz{^KF-~?w{yE9 zB3bev(#Ev@Y3xNYr?k$!K{%O|-$w6myelme>oZeloe1jT&&?a>i$d-e(ckZ7zO4t4 zfJmC{v*HEQ3RIU`k(|);TguH7ssEf#Q)gXhXduiKW;$LT>SYk3K#+(2@yynxurst6 zE4=vwaRJqbomZ5As{z#0J5a~*!y!uo2$*TA8Qt4vs=94cIRa(FIJO=`T-DiouZLL- zZ(q3q@Qv9J&R@+fpY8`dYGxw%jU3dSKn7mxfR77%ySUh2d)!(RvxH!}DbUIgJEbi>(r}`pYjqTsYSoWpEpx~4%cI;>h+3=TJ<&g|%jZu$2V z7a8fanG#HqI$gUE!toWpFq9Xs7M*afRMGQ;wIM-0JK-7odpNh=Z%n8>0fZ#)e&>Te zf;uhF$!Q3sz+f(@{?y9Dl9S>{;aiDo0;%vfaNPyV>S zol_q4wt|$mhjr4aXv1*Xy|c4BCi^WOayYNSr21kWktQ6e!MR(DF|#v-GYlWmOdgOE z)`D2R;~B5~)BR;g_%s5jq3m#;-hn-HqPs73?E~I^^mhF?Q!{qX7;j+oa^pk3ZuCQs zr~8o@6j)Qlq*a~Pmu{<{@i&BJO-vKuGp>Abr-~WO?36LuJ}R* zt_9s=_l5Ro8^#u)^WL>kL&>7cLZS#@Z zHkAC_n?R4F#DOc-KBK0Z@BjDR^tSft>PcKwV224`#|&;LxB6y_2kDiwM?Y(fn+tr% zeCy*Vm#%h)AHkP6fC+Q0fMkJef1G|8>MsbFSCsh7*T;OH*(@@h!` zMkQMJ*dY3@H*zNQyM0`rQoN?IBS*s)IUB8fH!;^L3s2{wGLDni8BL%;HYwM8_9Jx= z*dz>a5=1}s6-~T-NbR}AdZ^)l0D+9o{ay>qkL{))sI5kr(09JGdhk>rX4hos4XBc2 zHaU$%Vw@krgEpu=xC=*QIlU6ZgHnE2I~{rGw?|E zIc>gKqvhh%RO@$)!wqW&E|(LT28M0=n*5c7KTCk@lK0&YjwH0+tOjgjuF5Hziuzkk zKsNFtSb~4~FXDdx9Zn%lgahZ@mjI)Mo#rqKl;bZ1tNi^hwC-P6={uB>qV&rFX`+J5 zV|#&*_eC@}=p5Sft7*OC^c{7hlFALjx_-(lFIq?@7d_GR-J;Vhq&vgwaN1nE^?24> zC;!K7R{x7L2{gMmGQoqXL9VI}IbP_wJB7B%gVoL#=hrmZz-)G73|Mm7s;NI`j5!&=Yica;y4lmw$6bJ zI=$pD_4)lxxb6OX%Z9rdji0>a%~93!Ln?sNu21VQ(=Bi*9NWFfDNgbW`-+KFkvvXH zI%BLAzMwr~`q;0qUmEzh#5i)|&_*PL_I+dG1_>|yxzDf);*hrE4CLCiXIYnR*p|8l z?#@R3EC_P$_7C{}TLoXs5e;Uda||{_1>VuBbUxRr4`(~x?C(oGoGsMvKBui7930hI zD`F|}ef8Z_74#V-%v)34I|~LR!w3p2HzTw%P^9IMWp5aaHK498RhIQBd-jDuj1wdV z0shq4xW1GJUFa5|M>=sNy!JvGPKcrfH+tM&K8qQljnRa!SV)EWx%8CZV>pq-FZ2US z|G;+8&`B;@{$ND!j}^%gQI1dqIP}bA$T!+pv1r20mwHq;iYPqE?atqC?%5UNwx%GK zW-5oWyFbS4`s-E@q50taeVLv`l}LC@A~iG zL58^@b`=fSoxsw_2S4PE=Rlr%y@XGuoZ!&%5 zo+X||_|_Ts0X#&6K-vcnBc1;i8ZoI~`M~Cmij2&BDU)Y7%Q9TO(+}^uvUAkN@F^Q^ zzAiJHW0}3}&ihP9^W!VccpylbC z`7)!jYA^g5s0$+I7Eju*FG7>bTJDa(f+ z_zOp)F@%#hic#cN9WK8KrY8VZfm>}^G*KzlA#K<}Br(NE9;S@}e*42^VQJo(IG5n} zMZqdlC-$i~3v7oE?nV9^cMV=#G_sUW^9L!*YT`Aw7qxndj)GpoB2q!mlPVJ}t0h<> z+v=i{iQkjP{~ah!B$Ma7Yia54h{&XVFq@{iW@s>Ud(6Z$h7gYYb48(7eup{X?X|tQ z%C9@ve{?~|#n}%zi^kMmf@nu^?KhhFv50=)TJs~TNP`{rO&1h6l8cHegry|_Cspeu znlvQB7ryG1CqhE=zLGXZapU9Lg_MxT1K0Y5#ysr$O%eaL>S@Exe%`?^yS|LMTE;R! z1LQ#9_}w6_=k3ImgPkUmFYNabK8f_nP0BR0m-V!j2g`vuuW?D@3O^BRgoK;hWk&U7 z$j4CU0f9{S&DWp}bd{u@7oXYM+O<~K43!l1uWHG8do+j1dD$zugt?w;5)&gX&th-| z6)&wZ1+%=r|5;&d0^0Q6Bad{MA4_vmYp0G`_k|3PYa{@+IhZ#|xFhXjijS1}5nF7w z(3*PuQnF`G3=2enm_9ThHPil|o=Kq(|N0z=$CW^7aS+IyftKqzqyFAH1;&?-;P*<} zRy`|X-&SH0!JMxRp*U$Y;e$Cb4vP`}x#dJ=VUV$Rfv!MR@{{#Y;65P{4!}w}Gl15E zL{_!eSLghoTIIOk&71C?;VoQgYosd^%x$Z;v5YvtjG|VTO<~Z~a*ii^!swn$c(fI< zRj0A`_Z0ve-Qloy7@6Q_;w-sDA@vfI@DTpBjDm?7w{4E^cu?wi#`>D?7TUh8QCAoi77*B{q$hAj zp>=k2^;SFF>%mk8*~NU#%kw$rzRxJH3;lh4&pNWJ*5G35JcfOEN95;Xv{4is%^WBW ztAKJJu;Nv-mXIt8Qq`FOjfCkVvROr*s+7Cp0yrLXukACt*qfg<4+tJ}U)9~|L=k&k zW(Ud%$WVAz2wGK;Kl^zlGM}lq8HzBQ{66rpSnvVCTb1EeV9TgfAL@0urE$!Q{^*NLOJhWRm1Hg67!XB-OXC}xwk|KG><2_ z_xAQvF|hSU#9GWcR{xb2+B9&6DHbukR|D$7r_IkG`7vNG9h>jkNg@K&t_>thiZ_Yw z(LEQNWK&g4&SO!L>WmUtPlvmej5%{7vT8kZ1Tqtj7lw45aMG$~R} zC(gcAeK`K25v@~1_D`(0V>f(c1)M1f1!AVui?G!bLVAgnfX4|^3+=E(y9En@YFakD z36H#_!vXb@_Ba{rsfY@LfK%7)X$9S1YKf(Gh92=MIZHo(2H<_#0B`Ij#+6_H6>alQa2sW*%>BsGOHxGe3F))fJ&2FE){Ln;Qe`2>{hNhv+sY^C2_g6+wtwWmgd)sHTZ-lNI5_8#%(u;H9vM~{^!Uj*KhO3uMl1p?6_NUSPC^ApHN)*-z+ zFnQ?U#43>B$sO;&e(SRxDyhUKYM?zn*M=0@XF{lDhA zW8njOX^S5>l+>PrgoAH@z>!)w%jWJR)pNJo4pAfE)l;}2ZsoOAWxAK zuYSujzFNG`JM4UbiP( z*_+}3J~tY^o%3!uY@qM`AYj>g`?i_fM{9Q&vs~>>d#SdYm9-O26Mnp`6dHX@gqhnm zFO0sWQP!2?_)YJ+nqa*I_W!IqBLY&NK|Bm3VWawp2ldr#W69Cp+#RvxIpDN{w)2!@6wp9t z(Te&>p&%Vycl2}7M6at#D{v}=JCxvFG5hH5yL}W{o1f~$^8HmtLx{L}piLT|XkC{M z&Z*(3e`8`iiuTj($zrg}!K0Htdcs5_Q)CoSpx+i!1w>sAKxF1KRrkIT9oksntdR7d z7Z?0PtC^&f)f9!1ju)e4^oo)4K|$S2zo?|tDvHGT&suXC{~Cl0q1key__Tu(!q43L#|86`*hNggw3@DXkcqsP3HzT2RvcE12R zDMJbLo~RUDiY~7}0f&{Jc$EArKv0W2%|V$<5tahHdQjk$C+|XAx|u-?J?O1gT(S-@&gLdnSn2~($VZf0>ZpUk&(=(t-#a!pcNL7WVN@qEGz2(Gru{EH zqnrO^rHM|${}`PMDMBMogN0GKXh@7{Q2Wo_oDqBeZOoMTDlm~sBg+j4B(98^oF_?*#4>C^y=|1 zYRpOaT0kXioEw%oJEZnW#UvXPv_pqWifSgO7Z~k(-s}E4*iZb?XwsK-0thLsFk#(K zWCV&+FI`%3R?;)OUqIlNc)|dh{Fz5Axc9rUJ3NXo4T5((<=B~$!?r;0#IcsX=*-t*`FmBM4}G1KoyTE-QmX5%e|=n-vNDz z^}1|o$6NiAl}pj&>>v4`yA%wj1@jF!{e88>s;o?0I}C$}o&Odk82*@AD%uu4*mlVf z!|LB0G*W}VcDgpj%uLN1En|DBiBKoT%rIY(tx?HMp%48Y%Zty^s#8ekgdK>@9tK3K z96Z$UH)linU14I4FTx4|x=)e06^5mKAZ*uP(yzBHGUs<$rgtwhHINjP%{6_6jzJ+Z zk>$^YTB2J=+z?>VcVCFMxgSsUDUOu6zKuimT)X|D3v(Bq&;O7>i?DI>A{pbSj?JjJ^z%kP!pN z!lAmT<4oNk{7!c#S7-s6H_ksGy@3>_kl+>)v;r-S9CVfwa(}tt3_j5Gl^v3L#;=Lp z){bY1{t_E|cI)Rzew5Hj!_~200>%p~&B^93`c#t}^JIQyqo&4aG`V1S2g(g*CO}dO z5aKtLeC=G_X1}pBs`@(lzuw4YtSZ`=TfPei>w)ez_RM3J?O6YLW{5~v6qE)~DYx_v z9%bd`4gspZ$+K~}h9CKt&B?4d>CoS7MriHWK&b-gYl~st+&h*HkT@TlmP)-Z_fr1W z9h@(2^%GXrGT^LCqYlsiYwk)KYb(tk2H8=BsMD_@Rf}7O%2-I{EdOhAZ8N z_w=Oh9)HC_65)z{WStvfe64dQhb6y80US0S0=igmSeQd{W_^Sg>$Qt*-cQO*<}95u zR#o0e!a3$C3QQOSWu#jA82 zQL`y^VsI=07gX`U8R)^<>e?}0SUXJ}mMT)y)_18lF(2sqv%t}+GjN)f5dlUIoxO~e z^v{u3AS#b|6-MDZ>J+pF5=_ru)#&l;Pp=66G2_r*av}X_WfHY#UZcZ`zT`(@-ja8c zgbpJs=3uKnf)@RY!8i>=Qi)P5_n)!LUV+|I)I7d0vgK$KB)lRt@O(<|5+H;aKys-H zb)a@oLw9sHMps_Zs#ExgeUISNKxr0~8>uWXK^~E>1JGNJ=6XYh5;BG~FNIpD`*rfCV5ZeBKqVC9C9Q z=uF$warC~F{@Zh`=1~Psj1&Lh$#iK69P|b3j_E(CeaAQdN^g1NEN7Fm@}4-djUnSm z{2uR}jA+tNdDWLVTVHMtbG~0624dC={#27Y_>sf8#e(Y*Whyvv^q41~K$z=#kM=8x z*iZQIdu1})*p)OW8vG70@-}P75*r?g^JB?=R%6(C;FE3C-E>Qz)v7cf=8Xdi*6$15 zWRw9gmt?`=;E)3cu|k3$<)MhxNv8|-Jp>hT@_e(kYrE77?^2gs3yyh){8XmqwTk1r z5B@oI&FYQ69ai{XKhD>?K8#Hm^3xUykmdC;#pXQY{1yE6hMN*^9nS+D5XzDsG?FKP zYR4g=arN>pK0L_;r?p*wh4vqJAI4^9G4Cf2)x8cpn^c?m)VQuD3*-CjjUjbdo3>Hl zCgXZ|5&%v?)EBg2@+UkfK`IS$M0CfS4`&gR#Om0Of1>>sHND|97}Yec1KW8VIEe;i zR4XYXgU&Oq$0q?ME=nOo>E?U?W-Wq@t1*O6#l{O7AAK%WQc+^)j;6I7H>k(>JVJqk zGIS>4bcp<>?+KgHyMrCJhHq0wA5Li_OC>BH9?9VqEx%hs{26Yq@7tcmyqe(NqFimAIX^Et+>QIzCgz>~Fq-(nu9afgN$w@65jkCxuy{KR2+_P-vTwzK zN}i4F@l>I4K`giJi&@OIwUofXu6xK|Nkj66o&7&XisOK)4h+r#9&28hq@buz%Y({IJ#*XTdi7g95)dL0R|fOPT;`&=IwI>WhtYIETG5G ztKdH~Ssm3+&9CFU)weaZw3(}ppyZblbd$1Q8XSolBhG}{3Uc~lCog{{Pd-h}?o_^ov_x#h8kO2^aYWq>zVr;I2)C^HGK^f5X9LJ4aZ zL2KTrdM;-*27EFWHa1i}{`Bb+s9MM5lnicM{|lGMB^@st%G$1XwpJ^s7-iinPX+~K zad|be`k(a~?KldznHnBKAfugfC(wUtg8rz|j!Toz(q9Do77P=p2y65nJ222N%81=J z{m*B50e@-hWgY46EiU#2l~cY!RJ?H_%TM#;XNJ83R00vC)1tsY1U}#wy4F-L?{WJ3 zMy&!BZ3-3-;K?y@%#_zDb%>Uh7~(vJaax$SG^VOZ)u_cnSdk6fr2zb&BZr+XphV1j zR>WDHjyyjyYTLVaUv=%4_X}_%9nn2%-1_t?e*2~fhEh{S;Ug1AeK|o!nZzE}hp^wT z{)0LszNm_?cgF&vzi_bJ+GUoRBZ^7RY4Gr6DoB^Ai}5L#9Jj4_@FMg8SEgdba~H## z6iflbd%k}oyn*?@W8>8en=Wb})c;D;jrJ&DubEsa`tRov$*XsKY=h}RVpEA^Z$R_M#TP~H=A1oQ z*EdX6<6WG)Mien?E-uDcK8C@9fdu4_CP^G;%Y{cQljA@cYjj2xe{uRl*iS+yLUfdx zeW{20c*68I8&J~cb}uV&FCY7N(2So-DUh;V&+En5x$5c*o29?aD#D39e*a}1lUjmL zb|?F{t-9(uSgr2ofuZbgt`3TH%f#s3a-b|_Jsi>qH@BnLRI5IJ-K;FiLlHObmaw~U z-wOxUt~>a?u^z})!CnW9tL22k)jqt|;NtWh{UhxcHIRc4rfDXL#5Zu2Aon>id5 zQpW#MT~se#(eSTl^cE~`CHG^7gkKo&B2MH4q`xSKRm8}p9XXQjcRV@tDG55(I*J73 z66>#ph>4%kPz~80$Q!j!q+D#Uy;qK~2@;;GO*lonD0biSy?%W!BdZTv^o6vJY33dETSuEfbu=Yu`C$YUYdTWXgm zVUd#^!{YPhrC zGG8Ir_gnm>H@g;vXX7`VT?Sl0!Bu8lH+(qv(~cWvj5N)V!(m|o_Kx_(5>2hUCD$`D zR$j-<-Yxn14J2o2nX+d|u| z^60!K#6@Y1q|_5&0)PG&#C{?K@uz4@YnbUKRcD^Q(+R3lM74xEadAb>HAc)U1m`>d ztqMN>v0A_TrTMv%?{|#(^Ni>5mmw9I!C3=|kCm#{!=uyw8fPfbrqeUcSm8(&D7hW# zyl;Vk{{xBFOL}B%gOQbyFO&P8CDq{mflS9JW>{){7EY|kB&k{ zM{>EekJ`+-he`?asr0HX@&zFv&7QQhervAMEi>y7Q=G!#uvqnQ<%Qq}eXpN)uwx%u zCUUedFBW8FB2vAP+#4hsngo`Y3D0S@&VOzitr<iu`5ZocZ1oCPAr4nxhkGFr9{Qg zK(eC+F4iXl3v|5Hu)%t6ozld3MK3%0V9yCiwC$IlAiq2;Q0ZGkPe()+?RRJ)I%hw+ zV0R9ChUE@13}~Dmn_y`A7;VLQW!zusZK) z=G9_Bmp0H44Cm0p+!vF7v{gD;of@_Jw)Qf?W0uS?k6T~zSU{=SKMMe_zhXo;!@|1; zNCn#<^Bt<|AKx)cM%cy!i-3!PL0f8;nICPGqNm7oTSEA<*D2I;D`mG9-?HY3Q-}6B zsIFVLAV|4zAP8ojdt85D$i^zK`-G3j=VZqs^W)BE1Z$|egu06J0H&F~3TutZ*e35g zoTBznlz_~XAsVNz0vkt<SB!hGF9@`x9r^|B@iXeHKnx>d@B zW?uxWRe;a{fvNO5@8)_Tt=aXiR{)U`{(kC4DyCjKPBAUgNy{j0fXDPEJ@|U{9{g$+{%^V+hE3**yo1wPjtV zX>2{gb)YQ3U~F`5q-IdsqR@OUQECt)qu-m^!ycl->Teh6J9c%xZYO%OY?`AYN-DH}LMje7&0~A6l|h?Wc>+?9*g-+-Zszt3PVc5~ z%cgOuj`&uGnkOEsp}_^%X4%yAfQ4M#k2oVlX3!z+ewwh{ zdpl(i_do(CK(gn_N7h{9L^EH-<%miBQbII3zU@tjFtyJuW`=M(chk5>NyYr2)iO$6 zirv&oZ(5E{9qflLLm{O!>HhHNM?RL*(=&oHLin=?VnnQ8)f65WaCRx_b>TINnEjuk z)h=2=ZwwvAwwqfn!*fs*cu3nZ7P5$u02Q>|5>GTyVON$Qge~YBVgl z7lESrfKmbG?Dsev|L8U6DB9MP%U2Er4JfQNdBq*wC5%-+F(0#7UNEZt#(&$i_S@kI zi8^MhAS{H_31PE`upPvw+#oN$0G{YuJGVz>Kgu`Ul=P`-oRMz=ycMtCEb|WOaNX6D zElKmd0+&pUE~v+ZuKnvG3^}AB^X&!+%Pem?{MrvTvl{EMs*f%FYD!8$C>!lHTB=NT#W}BqPpFUSh!l3TTD1pUEMhUASkbOmsS0xF61AN;2^(5O0u+N4y$W|3n!9s1PzOl<1&*UDg9OS^t$ zarVXg3Vf_?fw+GpthWVCbVTfv!i1_-82#Q8g)`)H{47ioxwgO84Oy9Vh^*A(3mbf< zR7CqC7->bOU~Nr3cnmrG{z(SB@}NEDEvhzF)&xifUK z++~8?w>ZzVN?*nHcS=15)>Ya|c;O|bm@h+*Gcwjm+Zb7VjE(r}epT;XihNFh=vj5S z^;&%xR;mOurY}&W8oL2!q+JKNJIV2YV|_q)5R2@za*t9ub-eT7qwR_TW(8AOOvd=v z@-P=hGJR zJabV3zKq<~L4*v@BAxm3RQqCF)DR@+w;yFVS{%S(tgMcXQl2GFS|W(}9C{hEGBj77ru%5ptTHl{t| zP1}Qu2=a4ORG&f#A7c2mFGV7~-OS( zi|2t+lM##vy2&1D__U#mc}-ua_0>&AhmEbwf%(9bk*PxqOyWOee~CyNpCG(fY4Z(x z7;n@mxaEEcmq20=>G}+9Rtl=Z;z!S?^QtAY-!vSV_!sFDST+)hl9k(9`>{;w$Nys` zA7mXFsj1K%^)9FeW2}J_$j#1;IO2`Rr~aG3_gjt>mm}jgj*c z%F&K|F#{JE)f$<%dY-i_njLr?Oc#zJDlZ+Q+EsN74Sz|=5EYi{pxT=!QyOgxUmBNM zR)hooCevH*>w781Gi^Z#{DnJ!|9R+sj=UxKn3G>hv!#@bmJa zq5%9JD6HI9?WZ!@JlpJ_7 zD;~(=TYRA1L3#UaS!Z*&U~a4!_l)Rd`JMu4SfsGSY@41Nar-t z5*VVGaX*|E>X9evPc`KRT|78^^+Sul7Zy*%2w>i4i`eG1M2K4B;6=6|TQxth>MVPR z#@T!z7AU8ERU9%gu=lVG*Isw$xz6X~zrcgtcg1eol_2=V%rx2eFU3?pE`PUeZi$Em ziUQ*Q?qtW?aYJXeH-u6`CeQ(&o)dEaWx4K7j`6Dk`0M$mFv>sK|dUy0!!?B*{w~|imu&^5w zAh)9e;sErz>!$xG;7YHUU+qz=fRF@f%W73C{%HB!@L-<`ql8+X;Sg&$YT@*|IzfVr z+xCG@^!JhMe6q_sRwlb3cqA@W+~*dONH{x+X(=IDCT|{%TnVGhKcB}d_!peTCxRZQ znBrG$;Nc)pV~|IQ1KVm*ceCyL%obe5#^XEpO?78%I)a~0sA&zlbh|BI0Sv(PPBSix zPP&rN_l(Nr{Kj)#Z#!e@b3kG~5;UjP5&V9leLj{O?9NXE;&A^mvVJPOmry%rU_~=5 zWN`QQ6z+AcF-7@F3PtvF0T1`Lnp$Mx3SO1H(e(Z@jQ%+JV}IV!$l3>w@n{frg?5ryi$V~80M0iX7H=X4G5 z3_UcNRPg4LyM*On_OGR5#uKh|%~<>z|q z!hWad%*Oq4!M8yUf=>r;*@5r#7XsV%2DOCXSt3D<-S+!p?-ujLftlD5fr`HFi_8y` z`%1CC%Y7ewdlm~qgj^!P(6wW6GgaWey&s{C^+% zWWSN~S}xl!Ffz5R?7X8pb00nu!uM%thA=l(znGB$HJO(XGpp_2;L61-tL4AF&t~>n z+#YY|htE(yJeG2;zO^M5^BF#pECbPnp(DNgEgLZ;+U0UMCB8&^)k1GBHjb#n_yahy zOS(?z%8DQeELt*RN7*bB$}FeTuhsmN5!nS@_-Aq2^Uh8Zs8?P;dul`TQX{8R^46E) z4;M&G!F=txNP@Pj9UJsVYgy5UNPPV8SoNyA=vTQ0<6>uQV#h-?#N!5x4G5W>`MJ^Y zS<3f9?+vjt&Cy<4PF9H>2@~zHa*IH;zsqjM)r`$rRZI$P0YLD8Pb_Zm1^&tq|NiW3#D)JVSD*}&YO5mDz(a#O!s%Ddd))_EmAJ3gPi>`-nn zPv7qinEHl&L}|D>xxKl9*9dV3IK^>-4h?Zbw&RPwhGovbJ(>Aks9=Uzqfnl%X=&p+AWpX#&+J7wOA>iptT&(JAJMSw8=)z!Vf z{q!DQP%bTXu=l(1=3j?%npJf<=so;|rxJj4R=NEtH@XWjhND@)%*}0cVdu7cb#+Ki zwg}@3L4&*HMwiEtlKZ}gyH8HjqC@@SBU7oWvjAS9Ddf+{5INBF41%etjoOb~pP$N$ z%TRA8i9ysOg3(%V2VVRz+LP_QXV43hm8|mS($d@c$IrafP%FK8)zh;_`<7~N)+?n| z5u2PJ=!6wb|FUsIt$AeugxU|htTOhh`j2(&&!u0!N(fUjk{B2;9rtBr;nJm<&N%8L z4<^*a%OpgLo}!KaIKPnCQvL_0w^jUfj`RyCkb8GQho-_Vo7~i2AQXO!T&CGcKFy+}K=GygU&|HS-OOYHkx`lz zci6KlbHdOAPTqwBSpB&3^vw&d%)OS`W*y}H*Ae8?!rRf&$7YvK+tzf0~bdW8qt120d{W(JC6PB z$tOw{$`up=El_>k)&}}S&*OmUGGck2OwK4V>sE$7dnIx`t*OjR1a=w3`WP3jaY0o9 z!maw(rE}fY}w^`^1r+RF<-sWZ4uCk;s3nD4DZMu=Q2_V?0Ir3 zhnxQyYd(YcB^Xdx<%W&nC#UWq#SGEcd)c_}*nPhzPIWZVq1pVOpWWNLhs3@M!JU-n z0b6aqqL@&DU&R~hnrt4p=TiG-8BKFvXB?VTl=0x`mdE0yv0HO()}(@_4%=15y?-vj zq(S&cirll?=+YgKN6NWbXJB&LaV`pnlgLz3dj2beXJ9$fbEJljz(%`w z$xJgajsSg_PMssvO+trRo6K>X7zf&mU`dEYhZWmHs=}TC^rks*nq|Uqd z?tTsE_Cdh5W`X6gdEMd}!zHwPAsibf4Ja?w^=H4HEg+i!>zfiOy`hrgwUCXX($ZS@ zfQiY4UWA+l0WfV{Pjkef5JprM0+NIH^Vz_p1l2cdG1&0CXzp57C&`@R) zS{4DUo_Go-VEkB_aQcd;P8I}!R975TwF9-%?AtQDz5(`P;L|Y|;NZ>!wb9P?0HmLN z_5S|1T23Ky`6wYQkWbEUJU1ZjDUiahgG$zIZL_^y4aGO1QpW;3cj8?*5lWl+u=|75 zRO6C03Fi0KWH(!#$5DzX*|jnM-*wfl^RX*$(_a)2>H;Yp!1QN*LH}=F;SaB9?SsEp zv7k=}P5;-qZE$D*a?a3{mnSIjXIS6QV)Z{c|8a5k8S91fK4syBP>ccP%cGRRaeFs6 zH!pyFq2^ezNHXYXXMl^JIgi%ZNxm9ljEM7-Rl)%w zzjac3fVjebt?t9GeOoAsaT{3jjyk(68sMB21G@3kj^H(x0)MZ6U&ZMfpFtv0mtqWeuc=JLrhgMhv;DIdbdis+DV0+VmY=v^}fx81GGSqjX zeWp>UxkxKh8nAM5K#tDK!}Ar$<}X*w_gVm5_?|QJGRLIn9Q)fF3pn#)Sbus)4CMlG$@A2F2Z%L16^f(_OUxJ-Xq81yo-3k1)P1 zD4#HomURGrn_D|i7POM&=(WwDd=Nq1^51`s2X93kfSLE_Z~5mGS+p+H?cmjSzW7*! zGt~>|=&pZLDW`jLw>gz!3+F2*BmevkgOYoy7o{42=c|FL>wy<|AQtu6l<-kNJioy^ zfEz-ckcx7L(VUwplIVpnh}-E`hfJyyF*yaG&{q>cB+s*iIWCPra^!$wfH6);p2r)iBAt4J@-oq|jW3nw^3se)amYAs+LzJ)z6w>^K z1)IoSwIbk~D*$$yq~;v*bvOUHHwUzOCUE>E7PkFRUMsY?O7DC4{C}4#sq8rUOak`k zYc%^c9c}G2l=1m5TXl8FG-H(PuS&qSW&wOM6Pn`;7(*kCf$ii4V9uYQS<3L{{?Jq5 zXo?0LVEXKNrxXr6cFR0WT~c%$AxezPyp@`d(uw!>_5fE?4678Nvr4{);vV}z4sUY! z4X=HGUYoRr^{vUa!-+7y{4YQI~YK9w>3qZv_b`D;` zcn!3+3Tlo(G03PI>k`yi0itBB=7d!3IyCkIpj#>Y{9uY#kA*4_DE>ARtMh9e+E^_X zVtUOEsiM}Az~zkHC)n$Z7cde7IWwr4^#JhHN2Sd47LO z^!OiDEGixt`?W1m<~W9dJ7->z@Z!ZB+^bu??-77Qv4x{G2cW})V8e5*99m~C_4i?x zVC`BH%#HzLK$Nn~gDXYhe@UX&H`mIc^vw-uWW5Iu9_*hy*{}ny-r`|^D!xO-+Q902 zalR`>N>4lUh9(=O%4Qp~YXB9QI7b7K0829HW+(%gCoB1#MU;##O7H|BUi^wV!CFz~ zJPWYY7EypLsKwLJVhk`!;qj~@1y~x(I(Sk6Jx~eIuf6E+Ir>3cud)-3>@opts2Brl z3~&u(q3q`L^z*>zKnTwTjI2#3m@bUCbl-u=xkrW?F$<-XbN>#YS=4y5KG|vu{*VPA zjG>%EfFQLwprN^P$FY3qO({+%*erzqX?+{u;vmK-O$c$K2dKusS%)Za>woi&q2ENz X%p-WazA{}nF`}w;Q!!t`?D78roT*iv literal 28656 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 From c0c56f1777b79a8d40dea3d544cf56b386b5e026 Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 13 Sep 2023 13:37:48 -0500 Subject: [PATCH 12/24] more planning, needing to step away to TA --- boxylmer/plan, notes, and progress.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/boxylmer/plan, notes, and progress.md b/boxylmer/plan, notes, and progress.md index e0675d4c..09f9a55c 100644 --- a/boxylmer/plan, notes, and progress.md +++ b/boxylmer/plan, notes, and progress.md @@ -58,6 +58,22 @@ ## Wednesday (~~Finish up model, test model for goals (realistic band gap values, parity, etc)~~ -> Document what exists now, begin understanding more about why the current set of features fail to adequately predict band gap, and begin improving the results.) ### Day plan +- We have a model that overfits/memorizes with larger sizes. Yesterday, I determined that the coulomb matrix eigenvalues, while good descriptors, are too noisy and too ubiquitous to provide the model with generalizable information. Instead, I've come up with a number of options that may avoid this. + - Truncating the eigenvalue descriptors to the top N values, possibly cutting out unimportant noise + - Switching to other (limited) structural information, such as scoring aggregates for the atoms in the lattice + some lattice parameters that are already there + - Autoencoder representation of the model input (reach, out of time) + - Graph representation of the model input (very much a reach, but it's here to be a future option) + + ___ + - The first option, truncating the eigenvalues, is the most likely to result in success. The overfitting in the context of the large number of descriptors, as well as the large amount of needed padding, likely happens as the descriptors become "fingerprints" rather than generalizable information. Reducing descriptors therefore is promising. + + +- The classes and function need documentation, namely each model / especially each object that will be exposed in a theoretical API +- The scripts that provide plots need to be separated from the (rather unorganized) tests, as they're a demonstration rather than tests +- A readme needs to be written to provide instructions on installing and running the PoC + +### Notes and issues + ## Thursday (Visualization of results + deal with possible issues or hangups that may have happened Mon-Wed) ### Day plan From c92c575bdbc6c85fdd1a831a1484cb044a95c686 Mon Sep 17 00:00:00 2001 From: Will Date: Wed, 13 Sep 2023 18:41:21 -0500 Subject: [PATCH 13/24] Lots of output changes and diagnostics moved around; started editing demo file directly --- .../demo/demo output/random forest parity.png | Bin 0 -> 25099 bytes boxylmer/demo/demo.py | 73 ++++++++++++++++++ boxylmer/tests/__init__.py | 0 .../tests/{aggregated_test.py => test.py} | 17 ++-- .../gradient boosting parity - all data.png | Bin 0 -> 27849 bytes .../test_output/gradient boosting parity.png | Bin 0 -> 25890 bytes .../random forest parity - all data.png | Bin 0 -> 28527 bytes .../test_output/random forest parity.png | Bin 0 -> 24134 bytes ...t boosting parity - accurate distances.png | Bin .../gradient boosting parity - all data.png | Bin 0 -> 27825 bytes ...oosting parity - ascending eigenvalues.png | Bin ...dient boosting parity - fast distances.png | Bin ...oosting parity - tuned hyperparameters.png | Bin .../gradient boosting parity.png | Bin 0 -> 26148 bytes ...dom forest parity - accurate distances.png | Bin .../random forest parity - all data.png | Bin 0 -> 28656 bytes ... forest parity - ascending eigenvalues.png | Bin .../random forest parity - fast distances.png | Bin .../random forest parity.png | Bin 0 -> 24739 bytes .../test_parity_plot n=150.png | Bin .../test_parity_plot n=200.png | Bin .../test_parity_plot n=300.png | Bin .../gradient boosting parity - all data.png | Bin 26094 -> 0 bytes test_output/gradient boosting parity.png | Bin 25818 -> 0 bytes .../random forest parity - all data.png | Bin 27621 -> 0 bytes test_output/random forest parity.png | Bin 25015 -> 0 bytes 26 files changed, 80 insertions(+), 10 deletions(-) create mode 100644 boxylmer/demo/demo output/random forest parity.png create mode 100644 boxylmer/demo/demo.py delete mode 100644 boxylmer/tests/__init__.py rename boxylmer/tests/{aggregated_test.py => test.py} (86%) create mode 100644 boxylmer/tests/test_output/gradient boosting parity - all data.png create mode 100644 boxylmer/tests/test_output/gradient boosting parity.png create mode 100644 boxylmer/tests/test_output/random forest parity - all data.png create mode 100644 boxylmer/tests/test_output/random forest parity.png rename {test_output => previous diagnostic output}/gradient boosting parity - accurate distances.png (100%) create mode 100644 previous diagnostic output/gradient boosting parity - all data.png rename {test_output => previous diagnostic output}/gradient boosting parity - ascending eigenvalues.png (100%) rename {test_output => previous diagnostic output}/gradient boosting parity - fast distances.png (100%) rename {test_output => previous diagnostic output}/gradient boosting parity - tuned hyperparameters.png (100%) create mode 100644 previous diagnostic output/gradient boosting parity.png rename {test_output => previous diagnostic output}/random forest parity - accurate distances.png (100%) create mode 100644 previous diagnostic output/random forest parity - all data.png rename {test_output => previous diagnostic output}/random forest parity - ascending eigenvalues.png (100%) rename {test_output => previous diagnostic output}/random forest parity - fast distances.png (100%) create mode 100644 previous diagnostic output/random forest parity.png rename {test_output => previous diagnostic output}/test_parity_plot n=150.png (100%) rename {test_output => previous diagnostic output}/test_parity_plot n=200.png (100%) rename {test_output => previous diagnostic output}/test_parity_plot n=300.png (100%) delete mode 100644 test_output/gradient boosting parity - all data.png delete mode 100644 test_output/gradient boosting parity.png delete mode 100644 test_output/random forest parity - all data.png delete mode 100644 test_output/random forest parity.png diff --git a/boxylmer/demo/demo output/random forest parity.png b/boxylmer/demo/demo output/random forest parity.png new file mode 100644 index 0000000000000000000000000000000000000000..27324fe852c8f1ba46d4e45f230968634c98f5dd GIT binary patch literal 25099 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 QhXE18wQ*RSZtWKKzx#PAcmMzZ literal 0 HcmV?d00001 diff --git a/boxylmer/demo/demo.py b/boxylmer/demo/demo.py new file mode 100644 index 00000000..825b4e16 --- /dev/null +++ b/boxylmer/demo/demo.py @@ -0,0 +1,73 @@ +import sys +import os + +demo_dir = os.path.dirname(os.path.abspath(__file__)) +parent_dir = os.path.dirname(demo_dir) # feels very hacky just as a way to avoid pip install -e. +sys.path.append(parent_dir) + +from MaterialPropertyPredictor import MPRLoader, RandomForestBandGapModel, GradientBoostingBandGapModel +import matplotlib.pyplot as plt + +from sklearn import metrics + +def output_directory(): + script_dir = os.path.dirname(os.path.abspath(__file__)) + output_dir = os.path.join(script_dir, "demo output") + + if not os.path.exists(output_dir): + os.makedirs(output_dir) + + return output_dir + +def generate_parity_plot(y, pred, filename): + + rmse = metrics.mean_absolute_error(y, pred) + rmse = round(rmse, 2) + plt.figure(figsize=(6, 6)) + plt.plot(y, pred, 'ro', markersize=8, markerfacecolor='red') + max_value = max(max(y), max(pred)) + plt.plot([0, max_value], [0, max_value], 'k-', lw=2) + + plt.xlabel('y') + plt.ylabel('pred') + plt.xlim(0, max_value) + plt.ylim(0, max_value) + plt.gca().set_aspect('equal', adjustable='box') + plt.box(True) + plt.grid(False) + plt.title(filename + " RMSE: " + str(rmse)) + + plot_filename = os.path.join(output_directory(), filename + ".png") + plt.savefig(plot_filename) + + assert os.path.isfile(plot_filename) + +api_key_file = "api_key.txt" +with open(api_key_file, "r") as f: + api_key = f.read().strip() + +loader = MPRLoader() +loader.load_data( + api_key, + distance_method='fast', + elements=["O", "Si", "Ge"] +) + +randomforest_model = RandomForestBandGapModel() +randomforest_model.fit(loader) +y, pred = randomforest_model.parity(loader) +generate_parity_plot(y, pred, "random forest parity") + + + + + +# # Run this to identify better hyperparams +# randomforest_model.fit_hyperparameters(loader) +# y, pred = randomforest_model.parity(loader) +# generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") + + +# gradientboosting_model.fit_hyperparameters(loader) +# y, pred = gradientboosting_model.parity(loader) +# generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") \ No newline at end of file diff --git a/boxylmer/tests/__init__.py b/boxylmer/tests/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/boxylmer/tests/aggregated_test.py b/boxylmer/tests/test.py similarity index 86% rename from boxylmer/tests/aggregated_test.py rename to boxylmer/tests/test.py index e4bf9d36..4157c61b 100644 --- a/boxylmer/tests/aggregated_test.py +++ b/boxylmer/tests/test.py @@ -9,9 +9,12 @@ import pytest def output_directory(): - output_dir = "test_output" + script_dir = os.path.dirname(os.path.abspath(__file__)) + output_dir = os.path.join(script_dir, "test_output") + if not os.path.exists(output_dir): os.makedirs(output_dir) + return output_dir def generate_parity_plot(y, pred, filename): @@ -49,7 +52,8 @@ def test_loading(): loader.load_data( api_key, distance_method='fast', - elements=["O", "Si", "Ge"] + elements=["Si", "Ge"], + chemsys=["Si-Ge"] ) assert len(loader) > 0 assert len(loader) == len(loader.get_model_inputs()) @@ -62,7 +66,7 @@ def test_loading_accurate_distances(): accurate_loader.load_data( api_key, distance_method='accurate', - chemsys=["Si-Ge"], + chemsys=["Si-Ge"], # should pull little data, making tests faster ) assert len(accurate_loader) > 1 @@ -96,10 +100,6 @@ def test_random_forest_bandgap_model(): assert len(y) == len(pred) generate_parity_plot(y, pred, "random forest parity - all data") - # # Run this to identify better hyperparams - # randomforest_model.fit_hyperparameters(loader) - # y, pred = randomforest_model.parity(loader) - # generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") gradientboosting_model = None @@ -116,6 +116,3 @@ def test_gradient_boosting_bandgap_model(): assert len(y) == len(pred) generate_parity_plot(y, pred, "gradient boosting parity - all data") - # gradientboosting_model.fit_hyperparameters(loader) - # y, pred = gradientboosting_model.parity(loader) - # generate_parity_plot(y, pred, "gradient boosting parity - tuned hyperparameters") diff --git a/boxylmer/tests/test_output/gradient boosting parity - all data.png b/boxylmer/tests/test_output/gradient boosting parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..b34a7eeade0f82156dba9493280ca331cc5e916e GIT binary patch literal 27849 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 literal 0 HcmV?d00001 diff --git a/boxylmer/tests/test_output/gradient boosting parity.png b/boxylmer/tests/test_output/gradient boosting parity.png new file mode 100644 index 0000000000000000000000000000000000000000..2bd3fa3aaa7f022b931cdfe4c10bfa3a9fd6a4e4 GIT binary patch literal 25890 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 VG{9OnHrfHrt8}V{R@P&AH)Cv literal 0 HcmV?d00001 diff --git a/boxylmer/tests/test_output/random forest parity - all data.png b/boxylmer/tests/test_output/random forest parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..2da967c47f37a381e056310c791576ab92858123 GIT binary patch literal 28527 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 E0ocGirT_o{ literal 0 HcmV?d00001 diff --git a/boxylmer/tests/test_output/random forest parity.png b/boxylmer/tests/test_output/random forest parity.png new file mode 100644 index 0000000000000000000000000000000000000000..df6423af9f45b328029ebee2e0f5482d112cc739 GIT binary patch literal 24134 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 IU}zukA2TtlL;wH) literal 0 HcmV?d00001 diff --git a/test_output/random forest parity - accurate distances.png b/previous diagnostic output/random forest parity - accurate distances.png similarity index 100% rename from test_output/random forest parity - accurate distances.png rename to previous diagnostic output/random forest parity - accurate distances.png diff --git a/previous diagnostic output/random forest parity - all data.png b/previous diagnostic output/random forest parity - all data.png new file mode 100644 index 0000000000000000000000000000000000000000..154ba2b229b3484205bb456cf064616ba96f4ad4 GIT binary patch literal 28656 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 literal 0 HcmV?d00001 diff --git a/test_output/test_parity_plot n=150.png b/previous diagnostic output/test_parity_plot n=150.png similarity index 100% rename from test_output/test_parity_plot n=150.png rename to previous diagnostic output/test_parity_plot n=150.png diff --git a/test_output/test_parity_plot n=200.png b/previous diagnostic output/test_parity_plot n=200.png similarity index 100% rename from test_output/test_parity_plot n=200.png rename to previous diagnostic output/test_parity_plot n=200.png diff --git a/test_output/test_parity_plot n=300.png b/previous diagnostic output/test_parity_plot n=300.png similarity index 100% rename from test_output/test_parity_plot n=300.png rename to previous diagnostic output/test_parity_plot n=300.png diff --git a/test_output/gradient boosting parity - all data.png b/test_output/gradient boosting parity - all data.png deleted file mode 100644 index 7020d5f8eb8bc141487aec6df15ea434f777e9e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26094 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 VHyb^Wg70Jm(bCXUFH*I>^Dhw`v~U0b diff --git a/test_output/gradient boosting parity.png b/test_output/gradient boosting parity.png deleted file mode 100644 index c5cc618c3f245d7a4cdc19508eb03589b730ee0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25818 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�Mto~J6KW}f`f;<(L^JskEwzjq&NCZc*+x~6v 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 DebF~R diff --git a/test_output/random forest parity - all data.png b/test_output/random forest parity - all data.png deleted file mode 100644 index 97756d5d2b578353a187d4359e481722288c57e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27621 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 X%p-WazA{}nF`}w;Q!!t`?D78roT*iv diff --git a/test_output/random forest parity.png b/test_output/random forest parity.png deleted file mode 100644 index f676616c66d93fa1c5253d47cb1baf90d50b5675..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25015 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 Date: Wed, 13 Sep 2023 18:59:20 -0500 Subject: [PATCH 14/24] Made new truncated flag on dataloader to eventually test reduced feature space --- .../MaterialDataLoader.py | 32 ++++++++++++++---- boxylmer/tests/__init__.py | 0 boxylmer/tests/{test.py => main_test.py} | 28 ++++++++++----- .../gradient boosting parity - all data.png | Bin 27849 -> 18848 bytes .../test_output/gradient boosting parity.png | Bin 25890 -> 17156 bytes .../random forest parity - all data.png | Bin 28527 -> 18430 bytes .../test_output/random forest parity.png | Bin 24134 -> 16426 bytes 7 files changed, 46 insertions(+), 14 deletions(-) create mode 100644 boxylmer/tests/__init__.py rename boxylmer/tests/{test.py => main_test.py} (86%) diff --git a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py index 51dfd183..ed71c006 100644 --- a/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py +++ b/boxylmer/MaterialPropertyPredictor/MaterialDataLoader.py @@ -7,7 +7,7 @@ class AbstractDataLoader(ABC): test_size = 0.2 - def __init__(self): + def __init__(self, n_eigenvals=None): self.structures = None # cached data in self.structures. It's possible to lump this all into a dict or just to use it on the fly, @@ -35,6 +35,7 @@ def __init__(self): self.coulomb_matrix_eigenvalues = None self.input_length = None self.input_cache = None + self.n_eigenvals = n_eigenvals @abstractmethod def load_data(self): @@ -97,7 +98,10 @@ def calculate_max_input_size(self): vol = 1 abc = 3 angles = 3 - eigenvals_len = max([len(s) for s in self.structures]) + if self.n_eigenvals is None: + eigenvals_len = max([len(s) for s in self.structures]) + else: + eigenvals_len = self.n_eigenvals extras_len = len(self.extra_data) return vol + abc + angles + eigenvals_len + extras_len @@ -128,6 +132,15 @@ def _process_parsed_data(self, distance_method): self.input_length = self.calculate_max_input_size() self._validate() + def resize_eigenvals(arr, new_length): + current_length = len(arr) + if current_length > new_length: + return arr[:new_length] + elif current_length < new_length: + return np.pad(arr, (0, new_length - current_length), 'constant', constant_values=0) + else: + return arr + def get_model_inputs(self, padding_value=0): """ Acquire the model input data as a procured ndarray of values in a standard (Sample, Feature) format. @@ -141,14 +154,21 @@ def get_model_inputs(self, padding_value=0): if self.input_cache is None: num_structures = len(self.structures) padded_feature_vectors = np.full((num_structures, self.input_length), padding_value, dtype=np.float32) - + for i in range(num_structures): + + if self.n_eigenvals is None: + coulomb_matrix_eigenvalues = self.coulomb_matrix_eigenvalues[i] + else: + coulomb_matrix_eigenvalues = self.resize_eigenvals(self.coulomb_matrix_eigenvalues[i], self.n_eigenvals) + + feature_vector = np.hstack( ( self.volumes[i], self.lattice_vectors[i], self.lattice_angles[i], - self.coulomb_matrix_eigenvalues[i] + coulomb_matrix_eigenvalues # np.array([atom.specie.Z for atom in self.structures[i]], dtype=np.float32) # what if we use only the atoms? ), dtype=np.float32 @@ -193,8 +213,8 @@ def __len__(self): return len(self.structures) class MPRLoader(AbstractDataLoader): - def __init__(self): - super().__init__() + def __init__(self, **kwargs): + super().__init__(**kwargs) def load_data(self, api_key, distance_method='fast', **kwargs): with MPRester(api_key) as mpr: diff --git a/boxylmer/tests/__init__.py b/boxylmer/tests/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/boxylmer/tests/test.py b/boxylmer/tests/main_test.py similarity index 86% rename from boxylmer/tests/test.py rename to boxylmer/tests/main_test.py index 4157c61b..1fbf6a2d 100644 --- a/boxylmer/tests/test.py +++ b/boxylmer/tests/main_test.py @@ -6,7 +6,6 @@ import os import matplotlib.pyplot as plt -import pytest def output_directory(): script_dir = os.path.dirname(os.path.abspath(__file__)) @@ -48,17 +47,30 @@ def test_loading(): warnings.filterwarnings("ignore", category=UserWarning) with open(api_key_file, "r") as f: api_key = f.read().strip() - loader = MPRLoader() - loader.load_data( - api_key, - distance_method='fast', - elements=["Si", "Ge"], - chemsys=["Si-Ge"] - ) + + loader = MPRLoader() + loader.load_data( + api_key, + distance_method='fast', + elements=["Si", "Ge"], + chemsys=["Si-Ge"] + ) assert len(loader) > 0 assert len(loader) == len(loader.get_model_inputs()) assert len(loader) == len(loader.formulas) + truncated_eigenval_loader = MPRLoader() + truncated_eigenval_loader.load_data( + api_key, + distance_method='fast', + elements=["Si", "Ge"], + chemsys=["Si-Ge"] + ) + assert len(loader) == len(truncated_eigenval_loader) + inputs = loader.get_model_inputs() + input_len = len(inputs[0]) + assert all(len(item) == input_len for item in inputs) + def test_loading_accurate_distances(): with open(api_key_file, "r") as f: api_key = f.read().strip() diff --git a/boxylmer/tests/test_output/gradient boosting parity - all data.png b/boxylmer/tests/test_output/gradient boosting parity - all data.png index b34a7eeade0f82156dba9493280ca331cc5e916e..e2406b78e1268d18ddef287eb7daa6baf0e89f2d 100644 GIT binary patch literal 18848 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 literal 27849 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 diff --git a/boxylmer/tests/test_output/gradient boosting parity.png b/boxylmer/tests/test_output/gradient boosting parity.png index 2bd3fa3aaa7f022b931cdfe4c10bfa3a9fd6a4e4..0861c051a64a6a430a2b10a59c62ceeeddae59c3 100644 GIT binary patch literal 17156 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 VG{9OnHrfHrt8}V{R@P&AH)Cv diff --git a/boxylmer/tests/test_output/random forest parity - all data.png b/boxylmer/tests/test_output/random forest parity - all data.png index 2da967c47f37a381e056310c791576ab92858123..ef12ebd2de8c3e87025aaf6c8e25b69610f6b58c 100644 GIT binary patch literal 18430 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 DvmBYQ literal 28527 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 E0ocGirT_o{ diff --git a/boxylmer/tests/test_output/random forest parity.png b/boxylmer/tests/test_output/random forest parity.png index df6423af9f45b328029ebee2e0f5482d112cc739..bd1b3dcd2330176bda7ecdccdde0abd65da9a3b9 100644 GIT binary patch literal 16426 zcmd^mXH-?qw&ey<`7i(~qN0F;iTEjk3KC2pDme;Az<@{=1j#|n5k)}}2`WlHU?8WX zVgeB)=cIseND7A>dKUNg8!y~`-DC8R{?TLTpxD%|s$F5Nx#pU6O& zAK0f$QS8R#Kj%C=$vgG10Y7%S>^FANb3EnZcFft5(m3XF#?H~j&ic6UIZNlW){YJ` zQro3uB!o}9xSTmFFD-5VZxy5*ovoz5sqFoQM*cc;;K*5u;yyAYPuciG9!`X91VwjE3e3JKYN_ru&;*|quygiqi3+Bq`6`174hC!J+v+&ac~ zSZNlwH-(NgP#(ig3J-Wr+~mc8B$jqF+3=Hn(fPR)WwC{Q0Yx#6b1bJQ{|}rJ_`?le z%mlSuB!yH~wLo3tn+$e}N?Gy$=?m_gL`C;4-KaUlTH)|QE0UgOUoR#haroM`Yk7j7 z&Q1RI;$lQ_N(ieY9(k?Gtvs1R&l|TXj#M_+i_v7U4z$}f=N-k{6%mSF-iilP6V3C@ z$gkg@sY&`YHRXDVi;5PoPM1cVm&%`XE`B6?NHeC~zERO@IHPLfz0kCF>tN%#dV8+F z{?hsJ@m6DqLbzt`aGh;;Q*QP*h5lW#)@A$n&Anfim6x+h{HDuOo3dP)4IMitUb=MY z1~xOtSxnbr+3MJ1?=N4!aicuL>4(eY=3%c58jrTAH)gr&xwyPJe*AbvwwvQr zucM!MdSC6t;8(S&ah77ln%G;Od4iO`tkP)9oJ*H4cLy7p>A1URB!7x49qz41@1m@} zM$^Ck`YTT`=CP3P=x$c`)MRxVx+Q;|0`bjy&w7K=n=`TU+J$qh$Y6#)y=eKPy40hhJx;<^>c8A9uUqhe0y)d7d zR_~yf>&Y7Wz;FI*YNXkyKF!{>(!eO#bf!=|Sz=_@=FOW0b3aL%ru`acCL4Xay+-zI z$Kf?Q&Zx+o`dVsa?(=-4*)PA)-iS_%+Zf@#XYb{O-(z*2xpY@-o}JM0n81$Wu$Y@S z7glHG&rJ2ZRv&fCv^S^G5}PMGws+U3C#$`llX}XZIx{)yl$`%U^j>gqJF7bBu&U~1 z>x$UBmL;7o^2OJdZj|s+I&t$zo_FTmlS-2Vdk;mX%N;y)s2E#AyER!OQmOI4)@--_ zv>{nNJw1)iZ{dw0Qv>h0U$`=>UZ~&O&`}YmM{h?3xuCDoeq)D3zSz~i`e2`3ZSL1t zk!;?)aP^MT-igQu53Kg=+4J?`mJ@}!dF5T(#>U3z$;#+X6=?#_{~gr zOb(W8zjWym-STYbH`$=C-IWOm4a0*a%G>A8o$FBKJNa9!{K?+=XW!1{e>|AVFGV{o z8cMo)-Fn`nZP{8otG0q`*n8i}VjnNy+^?p_d}K?%E9x^`Yqd(z^G#ivz4(>)Pckxg zG&+4+Gv4nvW7>Mwdx}*}f3{RdN2l=f=Tb~bLzU#_&EMy6?~1|{C*UhrZ99Eu@#-Dg zt#)DC9Svuur}$Q`jQe;?fQhAZQ{WR(U$9(4`@n&#O4Fk!ZV7DHEDqalRQ^K4b)?aa z`SZ&?dC#F(?0CL4Ym$EbI;}W4@P6w@{Y)*)$Tq)eZ$5thY|UE|#wjX6WOX${x9;z) zOV!)A@8XgrONM?u3yhDBF6iA!ez{>jxhKIW+0fbf6^0arlcW>mGW1KQ(QjtzdSIXt z-lOvZkB+R&Bw{Lllj&70M6ZgftbjF!so*{V1-R8AjJbor&NUY1&I#(Z=Z2P!x( z8K*nJ>BqbVoD}hl%bn(o_4aqC(%btL*u^Q0dH{ zOIXb6#(aGSh2t@C5$^K!NNbA1g*`bxgkUcY|*&ADEaM&F6v>o;$@NNQj&3v}D)dP2w1C2`QU} zhKADZtLaA*THjw0mzOuu+V%V53yrWBa0bkKT1t0CS>2U~Fx&S;6~}))qwiEW*JIr7 zC619U+TIXVQ)8?+_VeDsg9mjD4MSeNdeu(Sn95^t3WN?3;2jRd273D^Z#_9O*ZmSuZy; zJ(ACAe_-A{T<@6tN73L#k7q)mrW%Yl4NK)ZWv1jkno^Z`V4C6*sh@H_M!)o zGM5WiE1WxggCI^QR)^*j`z?nv^nEE-o&zM;5Kzy6@I1*+0Kr{Y?hjTV)taj~qFo8njZ$+db1f z;n)4Dp!J7tiVg<)O+ITl+W_n1z-)3U*LZQ{^(lICx?SyY(NM3x%un{YWQ+>?cbxpp zvs6&f;aqQByUB2Gdh??V8jl{D<$7j@z*{#T*b0Xy1K*pvYyJ8U7cX9XNX$OnGDb6e zD?jbbd36nqq~n2)N!FO36M|)vWL)c~cE7-rK8W3lD6?7Il?8 zD<6J};m@{V*RF=%Wo5O^6ZbZ1Jvt~qUMYpUeXumhbwI~(yzQ$s^`jl9d>u<F4FJ-rttYR-?J!Mzr^h;N3$F5x<18O7Inn_< zqz|9LWcD>?7p-`v(4SMDDgmVS<;xdhhztAuZ8n9?d==3M8k(7Ip1Bw8tmXzwqSrT6 z^{2h4^0k!~+*|gV$^(ZE=~-LHP5%z`I}r3p&OW}a?Re7B?5bx+68^wMSFxHcV@5S2 zc6AM3dnJ=UqIP?=&aq=pJcoOZw2mms${K{ryZ&*Hh>hK}NN|_&p%4kDHI18bcwbo- z#rss8gvYnRd3&_ok-m71JTW?$iaX2-hyBFt7fI*S@XB46@ohCNZ!d@|K9Ye)D~?b! zwXb{gJo}`h-l^^4<;82_=Pg=w8sBX|&vyTPT-LFP<}*GN_uZB(g1bxSfbHa2#cS|FWM+RKF3RgdvgIaCIl#kXozJPuW6 zlG~T{4>Ej?YHLRU;NCZtQpYgwmv>c6Pfa9v_hLTOb-lg4Gutf(EA(q8d+XEPOa=M* zV_^DhV5=R9#Oq?reOSSUNha;r&%aVLF?l4KN$1b%jPP>#{eeFLXeO&AV1di0HEtPn z`}kWp4C$wXqhWfDgBl!02C)3U;uGjW?^{bfI>TdNS(sy;k;wxSX5S|g)DstSrKm_&bMrt{-`xW=GKZWdx{=N zR|63x!O0rAd!`&deLA);cf`!TA%pDPs={FL%6vaRpMkgY`6AZk^}H&&9};5N*ZL(! zw-v^%@~J_*2~WPClAF0@)#66{_)gVTz|NZ zPcpf8mzCh=goFDhD!N?awIY=~M_aFmH@uKI2haWlz~eOewwb9B*7QWb?eyf>K`pK7 zgyg*Lv4P5g?`lHCDFPTii16y$8SXbdMto~WNu+t-(=%~xBS-XL8TIV!5|>MwM8jTM ze}B3kR^sfX&dhB#6`$=J(UOS~&FPY$&ybGd;8&Sohwa{@XNade@$sh4>r=(?J^}%7 z-J~0`*Rea32*R$*c1vcONG6ajgQENMCg=^x*mQ0Ns%5n>InUghJk$srqG$JIiB(HZ z_%%TVz}sc_kGh-bOd7YB9g-&AeJFBf@{|48 zmwOviEsH{IW)96E@DNLu924PL$a-=iUcxNL7@$|&El`?K&ndxi^OcaDl~8Y}tZm4r zl3Hw7buqVntv#I!7c9_2r>V~E2h+<95k;8fxWA-lcC1PdjQ1)6B-<1>nImKM?S3?u z@*<_bXJ@aOB*+Z`_P!Uz!CRaO#nt&pw}-xdDdswAR!-0{TC zQza2ehzAL@f8gRdbLHa2*f(z~Qk#I;$UId3a{YFW?g1+rC!%)yS6_C2)$bpl6sLzQ zLazw<8Y@o?-D6JZg(^?Bau*gBmessGA%1kDw6s=zx}$XZBoKAsmoISx6;7`DBXWxn zav;_!f4cuhgF{>ju-h7C-v-yB#a%-z1EAIlAg;!U6R^3Dww$<3_A3_Dr}MG>U`KHs za7u8D2AgB+vbF50!1tc4?&ljLy>-b5Oj2#0%i30*9_ecoRJJ;P{OM(GAv)O<2(7xm zKfB`W>`YTT`EBTm^5kyYYI>z?HSHO|hZ@dZIW}NyP|y+r+EP7i1({{fZvY}ce_-aR z4*zXnV-qiDR}%$%YCu9#L=j%!I^BOgxiSRo#pKT)y`&l_n1mn!VT~=bD#_&K@k_&q z006)n5u=XdNV}rY6|g|66xNv4^SVTA%a-r1;+G2w_F;Hk*EU9I!#@Gcx}ctcht>w{ zP{0%ftvZB8X!4u!AyCm1K%g?m({p;vXO1}ov_agY&IHRZJDmU zWAMZng76E3wy;KcM|gpiJI+Lr19!>Ix%rLty{_uyNNZSgYe3>m5IMz|L2>U}elruz zm7eB&K9hOtf|EuN%Y-6Y36-<2dx#2QqoeLJzLV~Qn8B>1YS;zmbk0p@duq0jr{#G* zUIf{K#5o)&sQC5fN|~=P4Y#&@Of-J^Zm74u`pxO@?=D`s5=NYN15B)g(C_UXL*Y4~ zP;B45d-rY3Y39|)8{2BB@^nY@asctA0s^)OEe-<))n_H={JEa_>*QkpW;L$+Nki3NC7P~| zslVZ&Lb19luDm}6)Z{?Cub#gC&os?irqPgmu;Mr0DfrfM`0cYF_>A;zrK0GUR{Xe> z;K9b2^Gq$U>N=lzJS%X{L?LE1X}+Mliq~+@=8-Sj)Y}`jDHLPx#}&DM3dIjv zz3eP;`U4I88;km5RpKgV`S5WZ<;rOFrGeA6+!PgXZHp@4v|dq&B(T%2Pp+Jat4Ix> zKaPcLl!evANPqQQep(B2OU`9R{1b#J2jr&&KJd?^t){5y9>Bs?fbq=8&9?A!!+nj+ z@v)T>XhTdva>dG(>Y!}TT*kRNP0nS8O*K7ydb~P69)aO*w~wg@ z^<6HsB-3=M)7+{x(>AYnp6%GQcJ1!PSN1k$yH#IaBp`Ow4IwxvASbUKs~1aaE}&Fe z;w0z+U5^r8*UF~=#k~0X^)SvA@ViDgY#X*~3=W1tmIiES-b9~5^$DOmv&Snaf5sk~ z!PlzugqI^sz{-^?yDQ@EnYp*lMc}6m8=T-0cIOVyhYuez1z)~=`Hy#Y(+s|)op=57 zQ=LFAYinz|C3YFCyq<%D!}EF=crt!NZ||IW+=7XSjts`+*RNkMCMM?WMNvFGR}vE*hO);zq$XzH8yHMy1;-{ zGc31g%a$!%aI(I>d9y$RA7{Ya*#t8Q={4_Da{hUhK(w5kU5J^) zL5hKbGJ>u5W+9V+MuM&O+}!f9dT))oj?UeuPoL@=8?ShiJ~N-7HSMe92=L905A?(jmoGNW> zBN=DdI{GB(!G962(ey3!z&LePd`1mDScnt^E0S-j;c&7Pnte%yR=a@IjTE8xTp@J> zd5wnmp>9jeRq=^+7|p=mg5X>-n$eYQh0~0aT) z=RI5CapHSCTR@*Vvjue3KnfD7wDV-ZdkXkONk>IIMw|AMk7R4(vLXYIU5^4uAH~jX z~sc^O<|BO8bq!F8|8SgU5lM2e|Qa2e)?1nb3%Kd0Zdr<+OO#pgmS$$Q! zVi{R7zN_NyGO|LqrJ7k z)CkA&8pSRkh0`dAlfotx4w1qy9-~;>**ZK%1M~1zJloJESs+fX0=}GU=$m6#8&?xa zhq146nrlvaV!M$MkX)mbLh=(AFLLZ$z1X$C>8OC5U2N4kkYom+A}%jnshd8Bo$?OI z2$247tz~8-fy3aD;sKk@9xbCKXE2_F!H41O%9A zyX52yas2rl27iANVj}nRy&>~#!jyb%En$eA72AINu$A3TMLA&FHl{5~d_5fJy~Na5)t;e#BIx~`{Z z7D4^sc(Jla!5KT$Z?~`04=R+LPmL@n!xPsGQUd66~X1K`QE zD7AODJf*T8ADoTk>u(m%IbD7IXz(C>%a@C7-C9=tgHkD7OYd0^bLi|opRy1r;Oim# zyoTLrt^(P^zJVD5jpUf*tJ2=y#=-G#UPreu!cJvK^BSeduovm2H%m#s8P28;6|IH*ZMr%M(L-o!etzjjXLC+CUnT%8v_mzrFS$Gb6N ziNr^8!G`qv^A-TMwP?`pmmow4l0tl!H89_Rr^^??mRyeYAQux}+M7 zitVF4`G_Rl&|UG(r{BjfR72P8IBcK)w8v;I2oS;6aDz=8t}@l#WWAP{I~ka=U=XOz z@;-`}X6;naRdM5}BQm!wrntS>D42&;doQ2iVEW;c;Zyk}WL#pGty%MCBu{=R2D1BR zM!@sci@Pd~v}WAys4XXtu4n8CU$J9gDCVy)ImId0JC|plUd7W@+YXEmn_9Q->Eh2H zU~N<4J%0F3vrXz{ScheNe9zy#+p}L)b=-3`6}tuIb6KMD_MHJ}@L~pg&IJa$zwmAv zTN9jz3Xd?I>WA|XX7C#MkKj9a7+8btWQf`Yd@Teaa0s_?4M<|$*cUp@9VJkK4b4o> zA%y@G=97Xy3dC&7snOV`$zlkI(5V^tReudMJcAw>m(g%Oda#f|!!zh1g}03>Wj-3V zLo+=X7A1huc;WmpO7PMY&R@$Xyo4k_HK13(XJL-fjIPB?+wsyQMpGk%E`2c?b}|}Y zG{a6tT^oO@f-B zN3=-^(p^TUk(79})$(9!m9&@`Y}kDOS|n_{e)muT+&HIXUG2R%NM^P!!|54tHmzvS z-o3#gAuk#l8qPX6-qe9v&Kqr80BfEgr8bvpcYZ`3El7osGK#Z{4c=7Oo)P zNKZ-8Ml`9bu6_;C=}^Pjk~ol>!E|$7-KStus;iM5NEH%P(OygUZ#hxV_@jSsgT@=n zqU9tQ*tv6O;n%PF2yH8o1>~wO`Sz_UTK!&*f~dbgw%gk;Y3KQtE`0_LIUgO(b8J?+ba~qQ4m~5oc%!@G{}@sS+c`=Og&i=QQE8+w$7wEu3++sDqacO?`n15=S1HADHU^sIskkamxdMms zydi~4DBLFnAT=HrQXqBoQE1XG5s?1#Ri;GWs}TwL%2rV-U?mzg#pZuOH;+a_-NBrH z*|J{+*OrolCffDu`!g`bPY84Fm^b!<{wXdPbOm-?9CjtvGf!~7iY)AcBL}lYBl+>V zhFq_7=I>9+(>mbkK_Xtso0<0V0ohK<^o%wx=np;!{Gd3u;=>&W3waY|kZsTe6RZue z(-`82s1{j(*XR11dW)TGB#aNOP7#NxOR|{C>|)($$VUi`j8c5VAD}&KSud~E6dU|e zi?|tgBH~9gFqrA!iGG@-IsH(bYMz;j!~x7vTFL#(wZQ($ z1D+Pa>IV+o*`i8B6}g^D0&`TTwRCE9L2~4}T}UzY*n`UYd1eQ#sJyJ~ja}{5+0kHQPTs06Db8h8nVO{8h0?RS#V%dE zm=WUE*HFuPAVTT$V+DmgrZ^2j#Srm=gNKvTOVcxKj7;)waP=H<06LOTU@~9DdXBX} z2o4Hr>vf`Pmf^)nkEvy?;HF60#vbAu5M8JCpO|rD20J;-o!}XadomDf_{@u#o-FoVbY6)5x`PC z?-JBfNYI}@*)HAWtv>6rEH;`c&!(lxhc@{hA)zE&ia@gYPv7tR`K|x_{4)OYp4R>Q z_oKlVXHJbnyp==a0FP!al|Uy?tuk#MEP zJY~9JXq-0@oKE(1c4BYF+fDwjvFJTtnbj8RWe|-#MVeV3tPlQyn2sYm!~7;YgPT