From 8aa96c2123e45626c04ae42324ff0e3f500c21a1 Mon Sep 17 00:00:00 2001 From: Pieter Gijsbers Date: Fri, 1 Sep 2023 14:27:02 +0200 Subject: [PATCH] Master to stable v2 (#588) Update NAML version and fix evaluations of sparse targets --- .github/workflows/build_deploy_docs.yml | 66 ++ amlb/benchmark.py | 6 +- amlb/datasets/file.py | 134 ++- amlb/datasets/openml.py | 8 +- amlb/datautils.py | 14 +- amlb/defaults.py | 8 +- amlb/resources.py | 3 +- amlb/results.py | 108 +- amlb/runners/aws.py | 1 - amlb/utils/config.py | 10 +- amlb/utils/process.py | 16 +- amlb/utils/serialization.py | 2 +- amlb/utils/time.py | 6 +- docs/README.md | 399 -------- docs/about.md | 50 - docs/automl_overview.md | 334 ------ docs/benchmark_datasets.md | 61 -- docs/bib_workshop.md | 14 - docs/documentation.md | 9 - docs/extending.md | 98 -- docs/extending/benchmark.md | 319 ++++++ docs/extending/constraint.md | 71 ++ docs/extending/framework.md | 415 ++++++++ docs/extending/index.md | 8 + docs/faq.md | 40 + docs/getting_started.md | 267 +++++ docs/index.md | 31 +- docs/modifications.md | 42 - docs/paper.md | 17 - docs/results.md | 40 - docs/stylesheets/extra.css | 25 + docs/using/aws.md | 162 +++ docs/using/configuration.md | 51 + docs/using/parameters.md | 94 ++ docs/using/result_analysis.md | 217 ++++ docs/using/upload_to_openml.md | 26 + docs/website/automl_overview.html | 17 + docs/website/benchmark_datasets.html | 18 + docs/website/frameworks.html | 957 ++++++++++++++++++ docs/website/img/logos/GAMA-icon.png | Bin 0 -> 117679 bytes docs/website/img/logos/GAMA.png | Bin 0 -> 161401 bytes docs/website/img/logos/GitHub-Mark-32px.png | Bin 0 -> 1714 bytes docs/website/img/logos/GitHub-Mark-64px.png | Bin 0 -> 2625 bytes .../img/logos/GitHub-Mark-Light-64px.png | Bin 0 -> 2330 bytes .../img/logos/LightAutoML_logo_small.png | Bin 0 -> 214460 bytes docs/website/img/logos/auto-sklearn.png | Bin 0 -> 9083 bytes docs/website/img/logos/autogluon.png | Bin 0 -> 54649 bytes docs/website/img/logos/flaml.svg | 1 + docs/website/img/logos/h2o-automl-logo.jpeg | Bin 0 -> 80863 bytes docs/website/img/logos/mljar.png | Bin 0 -> 8395 bytes docs/website/img/logos/tpot.jpeg | Bin 0 -> 181208 bytes docs/website/img/shiny.png | Bin 0 -> 211925 bytes docs/website/index.html | 424 ++++++++ docs/website/papers.html | 289 ++++++ docs/website/results.html | 262 +++++ docs/website/style.css | 527 ++++++++++ frameworks/AutoGluon/README.md | 15 +- frameworks/AutoGluon/__init__.py | 32 +- frameworks/AutoGluon/exec_ts.py | 127 +-- frameworks/FEDOT/__init__.py | 25 + frameworks/FEDOT/exec.py | 99 ++ frameworks/FEDOT/setup.sh | 45 + frameworks/NaiveAutoML/__init__.py | 6 +- frameworks/NaiveAutoML/exec.py | 5 +- frameworks/autosklearn/exec.py | 6 +- mkdocs.yml | 51 + pyproject.toml | 37 + requirements-dev.txt | 6 +- resources/benchmarks/timeseries.yaml | 19 +- resources/config.yaml | 4 +- resources/frameworks.yaml | 18 +- resources/frameworks_2023Q2.yaml | 3 +- resources/frameworks_latest.yaml | 13 +- resources/frameworks_stable.yaml | 4 +- .../file/resources/m4_hourly_subset.csv | 301 ++++++ .../m4_hourly_subset_nondefault_cols.csv | 301 ++++++ .../datasets/file/test_file_dataloader.py | 112 +- 77 files changed, 5576 insertions(+), 1320 deletions(-) create mode 100644 .github/workflows/build_deploy_docs.yml delete mode 100644 docs/README.md delete mode 100644 docs/about.md delete mode 100644 docs/automl_overview.md delete mode 100644 docs/benchmark_datasets.md delete mode 100644 docs/bib_workshop.md delete mode 100644 docs/documentation.md delete mode 100644 docs/extending.md create mode 100644 docs/extending/benchmark.md create mode 100644 docs/extending/constraint.md create mode 100644 docs/extending/framework.md create mode 100644 docs/extending/index.md create mode 100644 docs/faq.md create mode 100644 docs/getting_started.md delete mode 100644 docs/modifications.md delete mode 100644 docs/paper.md delete mode 100644 docs/results.md create mode 100644 docs/stylesheets/extra.css create mode 100644 docs/using/aws.md create mode 100644 docs/using/configuration.md create mode 100644 docs/using/parameters.md create mode 100644 docs/using/result_analysis.md create mode 100644 docs/using/upload_to_openml.md create mode 100644 docs/website/automl_overview.html create mode 100644 docs/website/benchmark_datasets.html create mode 100644 docs/website/frameworks.html create mode 100644 docs/website/img/logos/GAMA-icon.png create mode 100644 docs/website/img/logos/GAMA.png create mode 100644 docs/website/img/logos/GitHub-Mark-32px.png create mode 100644 docs/website/img/logos/GitHub-Mark-64px.png create mode 100644 docs/website/img/logos/GitHub-Mark-Light-64px.png create mode 100644 docs/website/img/logos/LightAutoML_logo_small.png create mode 100644 docs/website/img/logos/auto-sklearn.png create mode 100644 docs/website/img/logos/autogluon.png create mode 100644 docs/website/img/logos/flaml.svg create mode 100644 docs/website/img/logos/h2o-automl-logo.jpeg create mode 100644 docs/website/img/logos/mljar.png create mode 100644 docs/website/img/logos/tpot.jpeg create mode 100644 docs/website/img/shiny.png create mode 100644 docs/website/index.html create mode 100644 docs/website/papers.html create mode 100644 docs/website/results.html create mode 100644 docs/website/style.css create mode 100644 frameworks/FEDOT/__init__.py create mode 100644 frameworks/FEDOT/exec.py create mode 100644 frameworks/FEDOT/setup.sh create mode 100644 mkdocs.yml create mode 100644 pyproject.toml create mode 100644 tests/unit/amlb/datasets/file/resources/m4_hourly_subset.csv create mode 100644 tests/unit/amlb/datasets/file/resources/m4_hourly_subset_nondefault_cols.csv diff --git a/.github/workflows/build_deploy_docs.yml b/.github/workflows/build_deploy_docs.yml new file mode 100644 index 000000000..ddaedfa59 --- /dev/null +++ b/.github/workflows/build_deploy_docs.yml @@ -0,0 +1,66 @@ +# Simple workflow for deploying static content to GitHub Pages generated by Github +# except for added job steps "Copy Static Files" through "Build MkDocs Pages". +name: Deploy static content to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["master"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Single deploy job since we're just deploying + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + - name: Setup Pages + uses: actions/configure-pages@v3 + - name: Copy Static Files + run: | + cp -R docs/website site/ + - name: Replace GITHUB token + # Use different sed delimiter to avoid clashing with forward slash in URL + run: | + find docs/ -type f -exec sed -i "s@GITHUB@${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}\/blob\/master@g" {} \; + - name: Replace WEBSITE token + # Use different sed delimiter to avoid clashing with forward slash in URL + run: | + WEBSITE_URL="https://${GITHUB_REPOSITORY_OWNER}.github.io/automlbenchmark" + find docs/ -type f -exec sed -i "s@WEBSITE@${WEBSITE_URL}@g" {} \; + sed -i "s@WEBSITE@${WEBSITE_URL}@g" mkdocs.yml + - uses: actions/setup-python@v4 + with: + python-version: '3.11' + - name: Install MkDocs + run: | + python -m pip install mkdocs-material + - name: Build MkDocs Pages + run: | + mkdocs build --site-dir site/docs + - name: Upload artifact + uses: actions/upload-pages-artifact@v2 + with: + # Upload entire repository + path: './site/' + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v2 diff --git a/amlb/benchmark.py b/amlb/benchmark.py index 572dc91a3..b8c531208 100644 --- a/amlb/benchmark.py +++ b/amlb/benchmark.py @@ -379,7 +379,7 @@ def _is_task_enabled(task_def): class TaskConfig: - def __init__(self, name, openml_task_id, test_server, fold, metrics, seed, + def __init__(self, name, openml_task_id, test_server, fold, metrics, quantile_levels, seed, max_runtime_seconds, cores, max_mem_size_mb, min_vol_size_mb, input_dir, output_dir, tag, command, git_info, measure_inference_time: bool = False): self.framework = None @@ -404,6 +404,7 @@ def __init__(self, name, openml_task_id, test_server, fold, metrics, seed, self.git_info = git_info self.measure_inference_time = measure_inference_time self.ext = ns() # used if frameworks require extra config points + self.quantile_levels = list(sorted(quantile_levels)) def __setattr__(self, name, value): if name == 'metrics': @@ -477,9 +478,10 @@ def __init__(self, benchmark: Benchmark, task_def, fold): self.fold = fold self.task_config = TaskConfig( name=task_def.name, - openml_task_id=task_def.openml_task_id, + openml_task_id=task_def["openml_task_id"], fold=fold, metrics=task_def.metric, + quantile_levels=task_def.quantile_levels, seed=rget().seed(fold), max_runtime_seconds=task_def.max_runtime_seconds, cores=task_def.cores, diff --git a/amlb/datasets/file.py b/amlb/datasets/file.py index ee92d3b1a..f39e3ca7b 100644 --- a/amlb/datasets/file.py +++ b/amlb/datasets/file.py @@ -1,5 +1,6 @@ from abc import abstractmethod import logging +import math import os import re import tempfile @@ -33,17 +34,17 @@ def __init__(self, cache_dir=None): def load(self, dataset, fold=0): dataset = dataset if isinstance(dataset, ns) else ns(path=dataset) log.debug("Loading dataset %s", dataset) + target = dataset['target'] + type_ = dataset['type'] + features = dataset['features'] + + if type_ and DatasetType[type_] == DatasetType.timeseries: + return TimeSeriesDataset(path=dataset['path'], fold=fold, target=target, features=features, cache_dir=self._cache_dir, config=dataset) + paths = self._extract_train_test_paths(dataset.path if 'path' in dataset else dataset, fold=fold, name=dataset['name'] if 'name' in dataset else None) assert fold < len(paths['train']), f"No training dataset available for fold {fold} among dataset files {paths['train']}" - # seed = rget().seed(fold) - # if len(paths['test']) == 0: - # log.warning("No test file in the dataset, the train set will automatically be split 90%/10% using the given seed.") - # else: assert fold < len(paths['test']), f"No test dataset available for fold {fold} among dataset files {paths['test']}" - target = dataset['target'] - type_ = dataset['type'] - features = dataset['features'] ext = os.path.splitext(paths['train'][fold])[1].lower() train_path = paths['train'][fold] test_path = paths['test'][fold] if len(paths['test']) > 0 else None @@ -139,40 +140,6 @@ def __repr__(self): return repr_def(self) - def extend_dataset_with_timeseries_config(self, dataset, dataset_config): - dataset = deepcopy(dataset) - dataset_config = deepcopy(dataset_config) - if dataset_config['id_column'] is None: - log.warning("Warning: For timeseries task setting undefined `id_column` to `item_id`.") - dataset_config['id_column'] = "item_id" - if dataset_config['forecast_range_in_steps'] is None: - log.warning("Warning: For timeseries task setting undefined `forecast_range_in_steps` to `1`.") - dataset_config['forecast_range_in_steps'] = "1" - - dataset.timestamp_column=dataset_config['timestamp_column'] - dataset.id_column=dataset_config['id_column'] - dataset.forecast_range_in_steps=int(dataset_config['forecast_range_in_steps']) - - train_seqs_lengths = dataset.train.X.groupby(dataset.id_column).count() - test_seqs_lengths = dataset.test.X.groupby(dataset.id_column).count() - forecast_range_in_steps_mean_diff_train_test = int((test_seqs_lengths - train_seqs_lengths).mean()) - forecast_range_in_steps_max_min_train_test = int(min(int(test_seqs_lengths.min()), int(train_seqs_lengths.min()))) - 1 - if not dataset.forecast_range_in_steps == forecast_range_in_steps_mean_diff_train_test: - msg = f"Warning: Forecast range {dataset.forecast_range_in_steps}, does not equal mean difference between test and train sequence lengths {forecast_range_in_steps_mean_diff_train_test}." - log.warning(msg) - if not (test_seqs_lengths - train_seqs_lengths).var().item() == 0.: - msg = f"Error: Not all sequences of train and test set have same sequence length difference." - raise ValueError(msg) - if dataset.forecast_range_in_steps > forecast_range_in_steps_mean_diff_train_test: - msg = f"Error: Forecast range {dataset.forecast_range_in_steps} longer than difference between test and train sequence lengths {forecast_range_in_steps_mean_diff_train_test}." - raise ValueError(msg) - if dataset.forecast_range_in_steps > forecast_range_in_steps_max_min_train_test: - msg = f"Error: Forecast range {dataset.forecast_range_in_steps} longer than minimum sequence length + 1, {forecast_range_in_steps_max_min_train_test}." - raise ValueError(msg) - return dataset - - - class FileDataset(Dataset): def __init__(self, train: Datasplit, test: Datasplit, @@ -350,10 +317,88 @@ def __init__(self, train_path, test_path, # todo: handle auto-split (if test_path is None): requires loading the training set, split, save super().__init__(None, None, target=target, features=features, type=type) - self._train = CsvDatasplit(self, train_path, timestamp_column=timestamp_column) - self._test = CsvDatasplit(self, test_path, timestamp_column=timestamp_column) + self._train = CsvDatasplit(self, train_path) + self._test = CsvDatasplit(self, test_path) + self._dtypes = None + + +class TimeSeriesDataset(FileDataset): + def __init__(self, path, fold, target, features, cache_dir, config): + super().__init__(None, None, target=target, features=features, type="timeseries") + if config['forecast_horizon_in_steps'] is None: + raise AssertionError("Task definition for timeseries must include `forecast_horizon_in_steps`") + if config['freq'] is None: + raise AssertionError("Task definition for timeseries must include `freq`") + if config['seasonality'] is None: + raise AssertionError("Task definition for timeseries must include `seasonality`") + + full_data = read_csv(path) + if config['id_column'] is None: + log.warning("Warning: For timeseries task, setting undefined `id_column` to `item_id`") + config['id_column'] = 'item_id' + if config['id_column'] not in full_data.columns: + raise ValueError(f'The id_column with name {config["id_column"]} is missing from the dataset') + if config['timestamp_column'] is None: + log.warning("Warning: For timeseries task, setting undefined `timestamp_column` to `timestamp`") + config['timestamp_column'] = 'timestamp' + if config['timestamp_column'] not in full_data.columns: + raise ValueError(f'The timestamp_column with name {config["timestamp_column"]} is missing from the dataset') + + self.forecast_horizon_in_steps = int(config['forecast_horizon_in_steps']) + self.freq = pd.tseries.frequencies.to_offset(config['freq']).freqstr + self.seasonality = int(config['seasonality']) + self.id_column = config['id_column'] + self.timestamp_column = config['timestamp_column'] + + full_data[self.timestamp_column] = pd.to_datetime(full_data[self.timestamp_column]) + if config['name'] is not None: + file_name = config['name'] + else: + file_name = os.path.splitext(os.path.basename(path))[0] + save_dir = os.path.join(cache_dir, file_name, str(fold)) + train_path, test_path = self.save_train_and_test_splits(full_data, fold=fold, save_dir=save_dir) + + self._train = CsvDatasplit(self, train_path, timestamp_column=self.timestamp_column) + self._test = CsvDatasplit(self, test_path, timestamp_column=self.timestamp_column) self._dtypes = None + # Store repeated item_id & in-sample seasonal error for each time step in the forecast horizon - needed later for metrics like MASE. + # We need to store this information here because Result object has no access to past time series values. + self.repeated_item_id = self.test.data[self.id_column].astype("category").cat.codes.to_numpy() + self.repeated_abs_seasonal_error = self.compute_seasonal_error() + + def save_train_and_test_splits(self, full_data, fold, save_dir): + full_data = full_data.sort_values(by=[self.id_column, self.timestamp_column]) + shortest_ts_length = full_data.groupby(self.id_column).size().min() + min_expected_ts_length = (fold + 1) * self.forecast_horizon_in_steps + 1 + if shortest_ts_length < min_expected_ts_length: + raise ValueError( + f'All time series in the dataset must have length > `(fold + 1) * forecast_horizon_in_steps` ' + f'(at least {min_expected_ts_length + 1}), but shortest time series has length {shortest_ts_length}' + ) + # Remove the last `steps_to_remove` steps from each time series to obtain the correct fold + if fold > 0: + steps_to_remove = (fold + 1) * self.forecast_horizon_in_steps + full_data = full_data.groupby(self.id_column, as_index=False).nth(slice(None, -steps_to_remove)) + train_data = full_data.groupby(self.id_column, as_index=False).nth(slice(None, -self.forecast_horizon_in_steps)) + test_data = full_data.groupby(self.id_column, as_index=False).nth(slice(-self.forecast_horizon_in_steps, None)) + + if not os.path.exists(save_dir): + os.makedirs(save_dir) + train_path = os.path.join(save_dir, "train.csv") + test_path = os.path.join(save_dir, "test.csv") + + train_data.to_csv(train_path, index=False) + test_data.to_csv(test_path, index=False) + return train_path, test_path + + def compute_seasonal_error(self): + train_data_with_index = self.train.data.set_index(self.id_column) + seasonal_diffs = train_data_with_index[self.target.name].groupby(level=self.id_column).diff(self.seasonality).abs() + abs_seasonal_error = seasonal_diffs.groupby(level=self.id_column).mean().fillna(1.0).values + # Repeat seasonal error for each time step in the forecast horizon + return np.repeat(abs_seasonal_error, self.forecast_horizon_in_steps) + class CsvDatasplit(FileDatasplit): @@ -396,8 +441,7 @@ def load_metadata(self): else 'string' if pat.is_string_dtype(dt) else 'datetime' if pat.is_datetime64_dtype(dt) else 'object') - features = [Feature(i, col, to_feature_type(dtypes[i])) - for i, col in enumerate(self._ds.columns)] + features = [Feature(i, col, to_feature_type(dtypes[i])) for i, col in enumerate(self._ds.columns)] for f in features: col = self._ds.iloc[:, f.index] diff --git a/amlb/datasets/openml.py b/amlb/datasets/openml.py index 678d1854d..e924774be 100644 --- a/amlb/datasets/openml.py +++ b/amlb/datasets/openml.py @@ -25,6 +25,12 @@ from ..utils import as_list, lazy_property, path_from_split, profile, split_path, unsparsify +# https://github.com/openml/automlbenchmark/pull/574#issuecomment-1646179921 +try: + set_openml_cache = oml.config.set_cache_directory +except AttributeError: + set_openml_cache = oml.config.set_root_cache_directory + log = logging.getLogger(__name__) # hack (only adding a ? to the regexp pattern) to ensure that '?' values remain quoted when we save dataplits in arff format. @@ -39,7 +45,7 @@ class OpenmlLoader: def __init__(self, api_key, cache_dir=None): oml.config.apikey = api_key if cache_dir: - oml.config.set_cache_directory(cache_dir) + set_openml_cache(cache_dir) if oml.config.retry_policy != "robot": log.debug("Setting openml retry_policy from '%s' to 'robot'." % oml.config.retry_policy) diff --git a/amlb/datautils.py b/amlb/datautils.py index a002a236a..d8a24d2ef 100644 --- a/amlb/datautils.py +++ b/amlb/datautils.py @@ -37,19 +37,21 @@ def read_csv(path, nrows=None, header=True, index=False, as_data_frame=True, dty :param header: if the columns header should be read. :param as_data_frame: if the result should be returned as a data frame (default) or a numpy array. :param dtype: data type for columns. - :param timestamp_column: column name for timestamp, to ensure dates are correctly parsed by pandas. + :param timestamp_column: name of the column that should be parsed as date. :return: a DataFrame """ - if dtype is not None and timestamp_column is not None and timestamp_column in dtype: - dtype = dtype.copy() # to avoid outer context manipulation - del dtype[timestamp_column] - + if timestamp_column is None: + parse_dates = None + else: + if dtype is not None: + dtype.pop(timestamp_column, None) + parse_dates = [timestamp_column] df = pd.read_csv(path, nrows=nrows, header=0 if header else None, index_col=0 if index else None, dtype=dtype, - parse_dates=[timestamp_column] if timestamp_column is not None else None) + parse_dates=parse_dates) return df if as_data_frame else df.values diff --git a/amlb/defaults.py b/amlb/defaults.py index 6d0bf35c5..3031be71b 100644 --- a/amlb/defaults.py +++ b/amlb/defaults.py @@ -1,9 +1,15 @@ import pathlib -from openml.config import cache_directory +import openml from amlb.utils import Namespace as ns +# https://github.com/openml/automlbenchmark/pull/574#issuecomment-1646179921 +try: + cache_directory = openml.config.cache_directory +except AttributeError: + cache_directory = openml.config.get_cache_directory() + default_dirs = ns( input_dir=cache_directory, output_dir=str(pathlib.Path(__file__).parent.parent / "results"), diff --git a/amlb/resources.py b/amlb/resources.py index 808a7f954..f3667b891 100644 --- a/amlb/resources.py +++ b/amlb/resources.py @@ -210,7 +210,7 @@ def _validate_task(self, task, lenient=False): if not lenient and len(missing) > 0: raise ValueError("{missing} mandatory properties as missing in task definition {taskdef}.".format(missing=missing, taskdef=task)) - for conf in ['max_runtime_seconds', 'cores', 'folds', 'max_mem_size_mb', 'min_vol_size_mb']: + for conf in ['max_runtime_seconds', 'cores', 'folds', 'max_mem_size_mb', 'min_vol_size_mb', 'quantile_levels']: if task[conf] is None: task[conf] = self.config.benchmarks.defaults[conf] log.debug("Config `{config}` not set for task {name}, using default `{value}`.".format(config=conf, name=task.name, value=task[conf])) @@ -310,4 +310,3 @@ def output_dirs(root, session=None, subdirs=None, create=False): TransformRule(from_key='aws.query_frequency_seconds', to_key='aws.query_interval_seconds'), TransformRule(from_key='aws.ec2.monitoring.cpu.query_frequency_seconds', to_key='aws.ec2.monitoring.cpu.query_interval_seconds'), ] - diff --git a/amlb/results.py b/amlb/results.py index 6e1a5bc60..cdaa56725 100644 --- a/amlb/results.py +++ b/amlb/results.py @@ -2,7 +2,6 @@ **results** module provides the logic to format, save and read predictions generated by the *automl frameworks* (cf. ``TaskResult``), as well as logic to compute, format, save, read and merge scores obtained from those predictions (cf. ``Result`` and ``Scoreboard``). """ -from functools import partial import collections import io import logging @@ -16,6 +15,7 @@ from numpy import nan, sort import pandas as pd import scipy as sci +import scipy.sparse from .data import Dataset, DatasetType, Feature from .datautils import accuracy_score, auc, average_precision_score, balanced_accuracy_score, confusion_matrix, fbeta_score, log_loss, \ @@ -244,7 +244,7 @@ def load_predictions(predictions_file): if rconfig().test_mode: TaskResult.validate_predictions(df) - if 'y_past_period_error' in df.columns: + if 'repeated_item_id' in df.columns: return TimeSeriesResult(df) else: if df.shape[1] > 2: @@ -293,6 +293,8 @@ def save_predictions(dataset: Dataset, output_file: str, predictions = predictions.squeeze() if isinstance(predictions, S): predictions = predictions.values + if scipy.sparse.issparse(truth) and truth.shape[1] == 1: + truth = pd.DataFrame(truth.todense()) if isinstance(truth, DF): truth = truth.squeeze() if isinstance(truth, S): @@ -750,6 +752,108 @@ def ncrps(self): weighted_losses = quantile_losses.sum(0) / denom # shape [num_quantiles] return weighted_losses.mean() +class TimeSeriesResult(RegressionResult): + def __init__(self, predictions_df, info=None): + super().__init__(predictions_df, info) + required_columns = {'truth', 'predictions', 'repeated_item_id', 'repeated_abs_seasonal_error'} + if required_columns - set(self.df.columns): + raise ValueError(f'Missing columns for calculating time series metrics: {required_columns - set(self.df.columns)}.') + + quantile_columns = [column for column in self.df.columns if column.startswith('0.')] + unrecognized_columns = [column for column in self.df.columns if column not in required_columns and column not in quantile_columns] + if len(unrecognized_columns) > 0: + raise ValueError(f'Predictions contain unrecognized columns: {unrecognized_columns}.') + + self.type = DatasetType.timeseries + self.truth = self.df['truth'].values.astype(float) + self.item_ids = self.df['repeated_item_id'].values + self.abs_seasonal_error = self.df['repeated_abs_seasonal_error'].values.astype(float) + # predictions = point forecast, quantile_predictions = quantile forecast + self.predictions = self.df['predictions'].values.astype(float) + self.quantile_predictions = self.df[quantile_columns].values.astype(float) + self.quantile_levels = np.array(quantile_columns, dtype=float) + + if (~np.isfinite(self.predictions)).any() or (~np.isfinite(self.quantile_predictions)).any(): + raise ValueError('Predictions contain NaN or Inf values') + + _, unique_item_ids_counts = np.unique(self.item_ids, return_counts=True) + if len(set(unique_item_ids_counts)) != 1: + raise ValueError(f'Error: Predicted sequences have different lengths {unique_item_ids_counts}.') + + def _itemwise_mean(self, values): + """Compute mean for each time series.""" + return pd.Series(values).groupby(self.item_ids, sort=False).mean().values + + def _safemean(self, values): + """Compute mean, while ignoring nan, +inf, -inf values.""" + return np.mean(values[np.isfinite(values)]) + + @metric(higher_is_better=False) + def smape(self): + """Symmetric Mean Absolute Percentage Error""" + num = np.abs(self.truth - self.predictions) + denom = (np.abs(self.truth) + np.abs(self.predictions)) / 2 + return self._safemean(num / denom) + + @metric(higher_is_better=False) + def mape(self): + """Mean Absolute Percentage Error""" + num = np.abs(self.truth - self.predictions) + denom = np.abs(self.truth) + return self._safemean(num / denom) + + @metric(higher_is_better=False) + def wape(self): + """Weighted Average Percentage Error""" + return np.sum(np.abs(self.truth - self.predictions)) / np.sum(np.abs(self.truth)) + + @metric(higher_is_better=False) + def mase(self): + """Mean Absolute Scaled Error + + Error for each item is normalized by the in-sample error of the naive forecaster. + This makes scores comparable across different items. + """ + error = np.abs(self.truth - self.predictions) + error_per_item = self._itemwise_mean(error / self.abs_seasonal_error) + return self._safemean(error_per_item) + + def _quantile_loss_per_step(self): + # Array of shape [len(self.predictions), len(self.quantile_levels)] + return 2 * np.abs( + (self.quantile_predictions - self.truth[:, None]) + * ((self.quantile_predictions >= self.truth[:, None]) - self.quantile_levels) + ) + + @metric(higher_is_better=False) + def mql(self): + """Quantile Loss, also known as Pinball Loss, averaged across all quantile levels & time steps. + + Equivalent to the Weighted Interval Score if the quantile_levels are symmetric around 0.5 + + Approximates the Continuous Ranked Probability Score + """ + return np.mean(self._quantile_loss_per_step()) + + @metric(higher_is_better=False) + def wql(self): + """Weighted Quantile Loss. + + Defined as total quantile loss normalized by the total abs value of target time series. + """ + return self._quantile_loss_per_step().mean(axis=1).sum() / np.sum(np.abs(self.truth)) + + @metric(higher_is_better=False) + def sql(self): + """Scaled Quantile Loss, also known as Scaled Pinball Loss. + + Similar to MASE, the quantile loss for each item is normalized by the in-sample error of the naive forecaster. + This makes scores comparable across different items. + """ + pl_per_item = self._itemwise_mean(self._quantile_loss_per_step().mean(axis=1) / self.abs_seasonal_error) + return self._safemean(pl_per_item) + + _encode_predictions_and_truth_ = False save_predictions = TaskResult.save_predictions diff --git a/amlb/runners/aws.py b/amlb/runners/aws.py index 6aae9cff1..221fa7fb8 100644 --- a/amlb/runners/aws.py +++ b/amlb/runners/aws.py @@ -1314,4 +1314,3 @@ def _download_resources(self): def _upload_results(self): pass - diff --git a/amlb/utils/config.py b/amlb/utils/config.py index 59bf7db30..5bf80412e 100644 --- a/amlb/utils/config.py +++ b/amlb/utils/config.py @@ -1,4 +1,4 @@ -from collections import namedtuple +from __future__ import annotations from copy import deepcopy from dataclasses import dataclass from importlib.util import find_spec @@ -59,19 +59,15 @@ def config_load(path, verbose=False): return loader(file, as_namespace=True) -# TransformRule = namedtuple('TransformRule', -# ['from_key', 'to_key', 'fn', 'keep_from'], -# defaults=[None, identity, False], -# module=__name__) @dataclass class TransformRule: from_key: Union[str, List[str]] - to_key: str = None + to_key: str | None = None # if not provided, used for transformations on same key fn: Callable = identity keep_from: bool = False -def transform_config(config: Namespace, transform_rules: [TransformRule], inplace=True) -> Namespace: +def transform_config(config: Namespace, transform_rules: list[TransformRule], inplace=True) -> Namespace: """ Allows to modify a configuration namespace (for example if the configuration format is modified) by applying a list of transformation rules. diff --git a/amlb/utils/process.py b/amlb/utils/process.py index d50d8615d..8849da05a 100644 --- a/amlb/utils/process.py +++ b/amlb/utils/process.py @@ -1,3 +1,5 @@ +from __future__ import annotations + import gc from concurrent.futures import ThreadPoolExecutor from contextlib import contextmanager @@ -18,7 +20,7 @@ import threading import _thread import traceback -from typing import Dict, List, Union, Tuple +from typing import Dict, List, Union, Tuple, cast import psutil @@ -118,7 +120,7 @@ def live_output_windows(process: subprocess.Popen, **_) -> Tuple[str, str]: queue=queue.Queue(), lines=[], ), - ) + ) # type: ignore # no reasonable type annotation, should refactor def forward_output(stream, queue_): if isinstance(stream, io.TextIOWrapper): @@ -135,12 +137,14 @@ def forward_output(stream, queue_): for output in outputs.values(): while True: try: - line = output["queue"].get(timeout=0.5) - output["lines"].append(line) + line = cast(queue.Queue, output["queue"]).get(timeout=0.5) + cast(list[str], output["lines"]).append(line) print(line.rstrip()) except queue.Empty: break - return ''.join(outputs["out"]["lines"]), ''.join(outputs["err"]["lines"]) + stdout = ''.join(cast(list[str], outputs["out"]["lines"])) + stderr = ''.join(cast(list[str], outputs["err"]["lines"])) + return stdout, stderr def live_output_unix(process, input=None, timeout=None, activity_timeout=None, mode='line', **_): @@ -448,7 +452,7 @@ class InterruptTimeout(Timeout): def __init__(self, timeout_secs, message=None, log_level=logging.WARNING, interrupt='thread', sig=signal.SIGINT, id=None, - interruptions: Union[Dict, List[Dict]] = None, wait_retry_secs=1, + interruptions: Union[Dict, List[Dict]] | None = None, wait_retry_secs=1, before_interrupt=None): def interruption(): inter_iter = iter(self._interruptions) diff --git a/amlb/utils/serialization.py b/amlb/utils/serialization.py index dffa4c53c..65f0c817d 100644 --- a/amlb/utils/serialization.py +++ b/amlb/utils/serialization.py @@ -23,7 +23,7 @@ def _import_data_libraries(): except ImportError: pd = None try: - import scipy.sparse as sp + import scipy.sparse as sp # type: ignore # https://github.com/scipy/scipy/issues/17158 except ImportError: sp = None return np, pd, sp diff --git a/amlb/utils/time.py b/amlb/utils/time.py index 416688bcc..cbb409f89 100644 --- a/amlb/utils/time.py +++ b/amlb/utils/time.py @@ -1,3 +1,5 @@ +from __future__ import annotations + import datetime as dt import logging import math @@ -41,8 +43,8 @@ def datetime_iso(datetime=None, date=True, time=True, micros=False, date_sep='-' return datetime.strftime(strf) -def countdown(timeout_secs, on_timeout: Callable = None, message: str = None, interval=1, log_level=logging.INFO, - interrupt_event: threading.Event = None, interrupt_cond: Callable = None): +def countdown(timeout_secs, on_timeout: Callable | None = None, message: str = "", interval=1, log_level=logging.INFO, + interrupt_event: threading.Event | None = None, interrupt_cond: Callable | None = None): timeout_epoch = time.time() + timeout_secs remaining = timeout_secs interrupt = interrupt_event or threading.Event() diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index 491eeb627..000000000 --- a/docs/README.md +++ /dev/null @@ -1,399 +0,0 @@ -# OpenML AutoML Benchmark - -The OpenML AutoML Benchmark provides a framework for evaluating and comparing open-source AutoML systems. The system is *extensible* because you can [add your own](https://github.com/openml/automlbenchmark/blob/master/docs/extending.md) AutoML frameworks and datasets. For a thorough explanation of the benchmark, and evaluation of results, you can read our [paper](https://openml.github.io/automlbenchmark/paper.html) which was accepted at the [2019 ICML AutoML Workshop](https://sites.google.com/view/automl2019icml/). - -_**NOTE:**_ _This benchmarking framework currently features binary and multiclass classification; extending to regression is a work in progress. Please file an issue with any concerns/questions._ - - * [Installation](#installation) - * [Pre-requisites](#pre-requisites) - * [Setup](#setup) - * [Quickstart](#quickstart) - * [Running benchmarks](#running-benchmarks) - * [In Docker image](#in-docker-image) - * [In local environment](#in-local-environment) - * [On AWS](#on-aws) - * [Output](#output) - * [Advanced configuration](#advanced-configuration) - * [Issues](#issues) - * [Frequently Asked Questions](#frequently-asked-questions) - -Automatic Machine Learning (AutoML) systems automatically build machine learning pipelines or neural architectures in a data-driven, objective, and automatic way. They automate a lot of drudge work in designing machine learning systems, so that better systems can be developed, faster. However, AutoML research is also slowed down by two factors: - -* We currently lack standardized, easily-accessible benchmarking suites of tasks (datasets) that are curated to reflect important problem domains, practical to use, and sufficiently challenging to support a rigorous analysis of performance results. - -* Subtle differences in the problem definition, such as the design of the hyperparameter search space or the way time budgets are defined, can drastically alter a task’s difficulty. This issue makes it difficult to reproduce published research and compare results from different papers. - -This toolkit aims to address these problems by setting up standardized environments for in-depth experimentation with a wide range of AutoML systems. - -Documentation: - -### Features: -* Curated suites of [benchmarking datasets](https://openml.github.io/automlbenchmark/benchmark_datasets.html) from [OpenML](https://www.openml.org/s/218/data). -* Includes code to benchmark a number of [popular AutoML systems](https://openml.github.io/automlbenchmark/automl_overview.html) on regression and classification tasks. -* [New AutoML systems can be added](./HOWTO.md#add-an-automl-framework) -* Experiments can be run in Docker or Singularity containers -* Execute experiments locally or on AWS (see below) - - -## Installation -### Pre-requisites -To run the benchmarks, you will need: -* Python 3.9+. -* PIP3: ensure you have a recent version. If necessary, upgrade your pip using `python -m pip install -U pip`. -* The Python libraries listed in [requirements.txt](../requirements.txt): it is strongly recommended to first create a [Python virtual environment](https://docs.python.org/3/library/venv.html#venv-def) (cf. also [Pyenv](https://github.com/pyenv/pyenv): quick install using `curl https://pyenv.run | bash` or `brew install pyenv`) and work in it if you don't want to mess up your global Python environment. -* [Docker](https://docs.docker.com/install/), if you plan to run the benchmarks in a container. - -### Setup -Clone the repo (in development environment, you should of course remove the `--depth 1` argument): -```bash -git clone https://github.com/openml/automlbenchmark.git --branch stable --depth 1 -cd automlbenchmark -``` -Optional: create a Python3 virtual environment. - -- _**NOTE**: we don't recommend creating your virtual environment with `virtualenv` library here as the application may create additional virtual environments for some frameworks to run in isolation._ -_Those virtual environments are created internally using `python -m venv` and we encountered issues with `pip` when `venv` is used on top of a `virtualenv` environment._ -_Therefore, we rather suggest one of the method below:_ - -using venv on Linux/macOS: -```bash -python3 -m venv ./venv -source venv/bin/activate -# remember to call `deactivate` once you're done using the application -``` -using venv on Windows: -```bash -python3 -m venv ./venv -venv\Scripts\activate -# remember to call `venv\Scripts\deactivate` once you're done using the application -``` - -or using pyenv: -```bash -pyenv install {python_version: 3.9.16} -pyenv virtualenv ve-automl -pyenv local ve-automl -``` -Then pip install the dependencies: - -```bash -python -m pip install -r requirements.txt -``` - -- _**NOTE**: in case of issues when installing Python requirements, you may want to try the following:_ - - _on some platforms, we need to ensure that requirements are installed sequentially:_ `xargs -L 1 python -m pip install < requirements.txt`. - - _enforce the `python -m pip` version above in your virtualenv:_ `python -m pip install --upgrade pip==19.3.1`. - -## Quickstart -To run a benchmark call the `runbenchmark.py` script with at least the following arguments: - -1. The AutoML framework that should be evaluated, see [frameworks.yaml](../resources/frameworks.yaml) for supported frameworks. If you want to add a framework see [HOWTO](./HOWTO.md#add-an-automl-framework). -2. The benchmark suite to run should be one implemented in [benchmarks folder](../resources/benchmarks), or an OpenML study or task (formatted as `openml/s/X` or `openml/t/Y` respectively). -3. (Optional) The constraints applied to the benchmark as defined by default in [constraints.yaml](../resources/constraints.yaml). Default constraint is `test` (2 folds for 10 min each). -4. (Optional) If the benchmark should be run `local` (default, tested on Linux and macOS only), in a `docker` container or on `aws` using multiple ec2 instances. - -Examples: -```bash -python3 runbenchmark.py -python3 runbenchmark.py constantpredictor -python3 runbenchmark.py tpot test -python3 runbenchmark.py autosklearn openml/t/59 -m docker -python3 runbenchmark.py h2oautoml validation 1h4c -m aws -python3 runbenchmark.py autogluon:latest validation -python3 runbenchmark.py tpot:2020Q2 -``` - -For the complete list of supported arguments, run: -```bash -python3 runbenchmark.py --help -``` - -```text -usage: runbenchmark.py [-h] [-m {local,aws,docker,singularity}] - [-t [task_id [task_id ...]]] - [-f [fold_num ...]] [-i input_dir] - [-o output_dir] [-u user_dir] [-p parallel_jobs] - [-s {auto,skip,force,only}] [-k [true|false]] - [-e] [--logging LOGGING] - [--openml-run-tag OPENML_RUN_TAG] - framework [benchmark] [constraint] - -positional arguments: - framework The framework to evaluate as defined by default in resources/frameworks.yaml. - To use a labelled framework (i.e. a framework defined in resources/frameworks-{label}.yaml), - use the syntax {framework}:{label}. - benchmark The benchmark type to run as defined by default in resources/benchmarks/{benchmark}.yaml, - a path to a benchmark description file, or an openml suite or task. - OpenML references should be formatted as 'openml/s/X' and 'openml/t/Y', - for studies and tasks respectively. Use 'test.openml/s/X' for the - OpenML test server. - (default: 'test') - constraint The constraint definition to use as defined by default in resources/constraints.yaml. - (default: 'test') - -optional arguments: - -h, --help show this help message and exit - -m {local,aws,docker,singularity}, --mode {local,aws,docker,singularity} - The mode that specifies how/where the benchmark tasks will be running. - (default: 'local') - -t [task_id ...], --task [task_id ...] - The specific task name (as defined in the benchmark file) to run. - When an OpenML reference is used as benchmark, the dataset name should be used instead. - If not provided, then all tasks from the benchmark will be run. - -f [fold_num ...], --fold [fold_num ...] - If task is provided, the specific fold(s) to run. - If fold is not provided, then all folds from the task definition will be run. - -i input_dir, --indir input_dir - Folder from where the datasets are loaded by default. - (default: '~/.openml') - -o output_dir, --outdir output_dir - Folder where all the outputs should be written.(default: './results') - -u user_dir, --userdir user_dir - Folder where all the customizations are stored.(default: '~/.config/automlbenchmark') - -p parallel_jobs, --parallel parallel_jobs - The number of jobs (i.e. tasks or folds) that can run in parallel. - A hard limit is defined by property `job_scheduler.max_parallel_jobs` - in `resources/config.yaml`. - Override this limit in your custom `config.yaml` file if needed. - Supported only in aws mode or container mode (docker, singularity). - (default: 1) - -s {auto,skip,force,only}, --setup {auto,skip,force,only} - Framework/platform setup mode. Available values are: - • auto: setup is executed only if strictly necessary. - • skip: setup is skipped. - • force: setup is always executed before the benchmark. - • only: only setup is executed (no benchmark). - (default: 'auto') - -k [true|false], --keep-scores [true|false] - Set to true (default) to save/add scores in output directory. - -e, --exit-on-error If set, terminates on the first task that does not complete with a model. - --logging LOGGING Set the log levels for the 3 available loggers: - • console - • app: for the log file including only logs from amlb (.log extension). - • root: for the log file including logs from libraries (.full.log extension). - Accepted values for each logger are: notset, debug, info, warning, error, fatal, critical. - Examples: - --logging=info (applies the same level to all loggers) - --logging=root:debug (keeps defaults for non-specified loggers) - --logging=console:warning,app:info - (default: 'console:info,app:debug,root:info') - --openml-run-tag OPENML_RUN_TAG - Tag that will be saved in metadata and OpenML runs created during upload, must match '([a-zA-Z0-9_\-\.])+'. -``` - -The script will produce output that records task metadata and the result. -The result is the score on the test set, where the score is a specific model performance metric (e.g. "AUC") defined by the benchmark. -```text - task framework fold result mode version utc acc auc logloss -0 iris H2OAutoML 0 1.000000 local 3.22.0.5 2019-01-21T15:19:07 1.000000 NaN 0.023511 -1 iris H2OAutoML 1 1.000000 local 3.22.0.5 2019-01-21T15:20:12 1.000000 NaN 0.091685 -2 kc2 H2OAutoML 0 0.811321 local 3.22.0.5 2019-01-21T15:21:11 0.811321 0.859307 NaN -3 kc2 H2OAutoML 1 0.886792 local 3.22.0.5 2019-01-21T15:22:12 0.886792 0.888528 NaN -``` - -## Running benchmarks -The `automlbenchmark` app currently allows running benchmarks in various environments: -* in a docker container (running locally or on multiple AWS instances). -* completely locally, if the framework is supported on the local system. -* on AWS, possibly distributing the tasks to multiple EC2 instances, each of them running the benchmark either locally or in a docker container. - -### In Docker image -The [Docker] image is automatically built before running the benchmark if it doesn't already exist locally or in a public repository (by default in ). -Especially, without docker image, the application will need to download and install all the dependencies when building the image, so this may take some time. - -The generated image is usually named `automlbenchmark/{framework}:{tag}`, but this is customizable per framework: cf. `resources/frameworks.yaml` and [HOWTO](HOWTO.md#framework-definition) for details. - -For example, this will build a Docker image for the `RandomForest` framework and then immediately start a container to run the `validation` benchmark, using all folds, allocating 1h and 4 cores for each task: -```bash -python3 runbenchmark.py RandomForest validation 1h4c -m docker -``` - -If the corresponding image already exists locally and you want it to be rebuilt before running the benchmark, then the setup needs to be forced: -```bash -python3 runbenchmark.py {framework} {benchmark} {constraint} -m docker -s force -``` - -The image can also be built without running any benchmark: -```bash -python3 runbenchmark.py {framework} -m docker -s only -``` - -In rare cases, mainly for development, you may want to specify the docker image: -```bash -python3 runbenchmark.py {framework} {benchmark} {constraint} -m docker -Xdocker.image={image} -``` - -### In local environment -If docker allows portability, it is still possible to run the benchmarks locally without container on some environments (currently Linux, and macOS for most frameworks). - -A minimal example would be to run the test benchmarks with a random forest: -```bash -python3 runbenchmark.py RandomForest test -``` - -The majority of frameworks though require a `setup` step before being able to run a benchmark. Please note that this step may take some time depending on the framework. -This setup is executed by default on first run of the framework, but in this case, it is not guaranteed that the benchmark run following immediately will manage to complete successfully (for most frameworks though, it does). - -In case of error, just run the benchmark one more time. - -If it still fails, you may need to rerun the setup step manually: -```bash -python3 runbenchmark.py {framework} -s only -``` -You can then run the benchmarks as many times as you wish. - -When testing a framework or a new dataset, you may want to run only a single task and a specific fold, for example: -```bash -python3 runbenchmark.py TPOT validation -t bioresponse -f 0 -``` - -### On AWS -To run a benchmark on AWS you additionally need to have a configured AWS account. -The application is using the [boto3] Python package to exchange files through S3 and create EC2 instances. - - If this is your first time setting up your AWS account on the machine that will run the `automlbenchmark` app, you can use the [AWS CLI](http://aws.amazon.com/cli/) tool and run: - ```bash - aws configure - ``` -You will need your AWS Access Key ID, AWS Secret Access Key, and pick a default [EC2 region](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions). - -- _**NOTE:** Currently the AMI is only configured for the following regions so you'll have to set your default region as one of these_: - - us-east-1 - - us-west-1 - - eu-west-1 - - eu-central-1 - -On first use, it is recommended to simply copy the `config.yaml` from [examples/aws] to your user `~/.config/automlbenchmark` folder (or merge it if you already have a `config.yaml` in this user folder) and follow the instructions in that file. - -To run a test to see if the benchmark framework is working on AWS, do the following: -```bash -python3 runbenchmark.py constantpredictor test -m aws -``` -This will create and start an EC2 instance for each benchmark job and run the 4 jobs (2 OpenML tasks * 2 folds) from the `test` benchmark sequentially, each job running for 1mn in this case (excluding setup time for the EC2 instances). - -For longer benchmarks, you'll probably want to run multiple jobs in parallel and distribute the work to several EC2 instances, for example: -```bash -python3 runbenchmark.py AUTOWEKA validation 1h4c -m aws -p 4 -``` -will keep 4 EC2 instances running, monitor them in a dedicated thread, and finally collect all outputs from s3. - -- _**NOTE**: each EC2 instance is provided with a time limit at startup to ensure that in any case, the instance is stopped even if there is an issue when running the benchmark task. In this case the instance is stopped, not terminated, and we can therefore inspect the machine manually (ideally after resetting its UserData field to avoid re-triggering the benchmark on the next startup)._ - -The console output is still showing the instances starting, outputs the progress and then the results for each dataset/fold combination: -```text -Running `H2OAutoML_nightly` on `validation` benchmarks in `aws` mode -Loading frameworks definitions from ['/Users/me/repos/automlbenchmark/resources/frameworks.yaml']. -Loading benchmark definitions from /Users/me/repos/automlbenchmark/resources/benchmarks/validationt.yaml. -Uploading `/Users/me/repos/automlbenchmark/resources/benchmarks/validation.yaml` to `ec2/input/validation.yaml` on s3 bucket automl-benchmark. -... -Starting new EC2 instance with params: H2OAutoML_nightly /s3bucket/input/validation.yaml -t micro-mass -f 0 -Started EC2 instance i-0cd081efc97c3bf6f -[2019-01-22T11:51:32] checking job aws_validation_micro-mass_0_H2OAutoML_nightly on instance i-0cd081efc97c3bf6f: pending -Starting new EC2 instance with params: H2OAutoML_nightly /s3bucket/input/validation.yaml -t micro-mass -f 1 -Started EC2 instance i-0251c1655e286897c -... -[2019-01-22T12:00:32] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running -[2019-01-22T12:00:33] checking job aws_validation_micro-mass_0_H2OAutoML_nightly on instance i-0cd081efc97c3bf6f: running -[2019-01-22T12:00:48] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running -[2019-01-22T12:00:48] checking job aws_validation_micro-mass_0_H2OAutoML_nightly on instance i-0cd081efc97c3bf6f: running -... -[ 731.511738] cloud-init[1521]: Predictions saved to /s3bucket/output/predictions/h2oautoml_nightly_micro-mass_0.csv -[ 731.512132] cloud-init[1521]: H2O session _sid_96e7 closed. -[ 731.512506] cloud-init[1521]: Loading predictions from /s3bucket/output/predictions/h2oautoml_nightly_micro-mass_0.csv -[ 731.512890] cloud-init[1521]: Metric scores: {'framework': 'H2OAutoML_nightly', 'version': 'nightly', 'task': 'micro-mass', 'fold': 0, 'mode': 'local', 'utc': '2019-01-22T12:00:02', 'logloss': 0.6498889633819804, 'acc': 0.8793103448275862, 'result': 0.6498889633819804} -[ 731.513275] cloud-init[1521]: Job local_micro-mass_0_H2OAutoML_nightly executed in 608.534 seconds -[ 731.513662] cloud-init[1521]: All jobs executed in 608.534 seconds -[ 731.514089] cloud-init[1521]: Scores saved to /s3bucket/output/scores/H2OAutoML_nightly_task_micro-mass.csv -[ 731.514542] cloud-init[1521]: Loaded scores from /s3bucket/output/scores/results.csv -[ 731.515006] cloud-init[1521]: Scores saved to /s3bucket/output/scores/results.csv -[ 731.515357] cloud-init[1521]: Summing up scores for current run: -[ 731.515782] cloud-init[1521]: task framework ... acc logloss -[ 731.516228] cloud-init[1521]: 0 micro-mass H2OAutoML_nightly ... 0.87931 0.649889 -[ 731.516671] cloud-init[1521]: [1 rows x 9 columns] -... -EC2 instance i-0cd081efc97c3bf6f is stopped -Job aws_validation_micro-mass_0_H2OAutoML_nightly executed in 819.305 seconds -[2019-01-22T12:01:34] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running -[2019-01-22T12:01:49] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running -EC2 instance i-0251c1655e286897c is stopping -Job aws_validation_micro-mass_1_H2OAutoML_nightly executed in 818.463 seconds -... -Terminating EC2 instances i-0251c1655e286897c -Terminated EC2 instances i-0251c1655e286897c with response {'TerminatingInstances': [{'CurrentState': {'Code': 32, 'Name': 'shutting-down'}, 'InstanceId': 'i-0251c1655e286897c', 'PreviousState': {'Code': 64, 'Name': 'stopping'}}], 'ResponseMetadata': {'RequestId': 'd09eeb0c-7a58-4cde-8f8b-2308a371a801', 'HTTPStatusCode': 200, 'HTTPHeaders': {'content-type': 'text/xml;charset=UTF-8', 'transfer-encoding': 'chunked', 'vary': 'Accept-Encoding', 'date': 'Tue, 22 Jan 2019 12:01:53 GMT', 'server': 'AmazonEC2'}, 'RetryAttempts': 0}} -Instance i-0251c1655e286897c state: shutting-down -All jobs executed in 2376.891 seconds -Deleting uploaded resources `['ec2/input/validation.yaml', 'ec2/input/config.yaml', 'ec2/input/frameworks.yaml']` from s3 bucket automl-benchmark. -``` - -### Output -By default, a benchmark run creates the following subdirectories and files in the output directory (by default a subdirectory of `./results` with unique name identifying the benchmark run): -* `scores`: this subdirectory contains - * `results.csv`: a global scoreboard, keeping scores from all benchmark runs. - For safety reasons, this file is automatically backed up to `scores/backup/results.{currentdate}.csv` by the application before any modification. - * individual score files keeping scores for each framework+benchmark combination (not backed up). -* `predictions`, this subdirectory contains the last predictions in a standardized format made by each framework-dataset combination. - Those last predictions are systematically backed up with current data to `predictions/backup` subdirectory before a new prediction is written. -* `logs`: this subdirectory contains logs produced by the `automlbenchmark` app, including when it's been run in Docker container or on AWS. - - -### Uploading results to OpenML -The `upload_results.py` script can be used to upload results to OpenML with the following usage: -```text ->python upload_results.py --help -usage: Script to upload results from the benchmark to OpenML. [-h] [-i INPUT_DIRECTORY] [-a APIKEY] [-m MODE] [-x] [-v] [-t TASK] - -optional arguments: - -h, --help show this help message and exit - -i INPUT_DIRECTORY, --input-directory INPUT_DIRECTORY - Directory that stores results from the runbenchmark.py invocation. By default use the most recent folder in the results folder as - specified in the configuration. - -a APIKEY, --api-key APIKEY - OpenML API key to use for uploading results. - -m MODE, --mode MODE Run mode (default=check). - • check: only report whether results can be uploaded. - • upload: upload all complete results. - -x, --fail-fast Stop as soon as a task fails to upload due to an error during uploading. - -v, --verbose Output progress to console. - -t TASK, --task TASK Only upload results for this specific task. -``` - -Note that the default behavior does not upload data but only verifies data is complete. -We strongly encourage you to only upload your data after verifying all expected results are complete. -The OpenML Python package is used for uploading results, so to ensure your API credentials are configured, please refer to their [configuration documentation](https://openml.github.io/openml-python/master/usage.html#installation-set-up). -Results obtained on tasks on the test server (e.g. through the `--test-server` option of `runbenchmark.py`) are uploaded to the test server and don't require additional authentication. - -## Advanced configuration -If you need to create your own benchmark, add a framework, create a plugin for a proprietary framework, or simply want to use some advanced options (e.g. run some frameworks with non-default parameters), see the [HOWTO]. - -## Issues -If you face any issue, please first have a look at the [Troubleshooting guide] and check the [existing issues](https://github.com/openml/automlbenchmark/issues). -Any new issue should also be reported there. - - -[HOWTO]: ./HOWTO.md -[Troubleshooting guide]: ./HOWTO.md#troubleshooting-guide -[examples/aws]: ../examples/aws/config.yaml - -[Docker]: https://docs.docker.com/ -[boto3]: https://boto3.readthedocs.io/ - - -## Frequently Asked Questions - -**When will results be updated, also for the new/updated frameworks?** - -We don't perform a benchmark evaluation for each new package or update. -Due to budget constraints, we can only do a limited number of evaluations. -The next full evaluation will be performed before the end of the year 2020. -We hope to find funding to guarantee regular evaluations. - ---- -**(When) will you add framework X?** - -We are currently not focused on integrating additional AutoML systems. -However, we process any pull requests that add frameworks and will assist with the integration. -The best way to make sure framework X gets included is to start with the integration yourself or encourage the package authors to do so (for technical details see [HOWTO]). - -It is also possible to open a Github issue indicating the framework you would like added. -Please use a clear title (e.g. "Add framework: X") and provide some relevant information (e.g. a link to the documentation). -This helps us keep track of which frameworks people are interested in seeing included. diff --git a/docs/about.md b/docs/about.md deleted file mode 100644 index c63eaa53c..000000000 --- a/docs/about.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: About -layout: category -sidebar_sort_order: 10 ---- - -## Goals - -We want to provide an ongoing benchmark with up-to-date results on realistic and current machine learning problems. -By making it open-source and open to contributions, we hope that all packages will be used as intended and evaluated fairly. -Fair results for each framework are enabled by allowing authors to contribute directly to the repository. -To ensure the benchmark accurately reflects the state of AutoML, evaluations will be rerun when frameworks get major updates, -and the selection of problems will be updated1. - -Currently, we limit the datasets to involve single-label classification problems on i.i.d. tabular data optimizing for one of two metrics. -We would like to extend the types of tasks to include e.g. regression, multi-label classification and temporal data, -but also to include problem-specific metrics (e.g. have a false negative incur a higher cost than a false positive for a disease diagnosis problem). - -## Open Science -Open science is important to us. -This is a transparent benchmark: no favorites, no cheating. -We require that all evaluated AutoML systems are open-source and all data to be freely available on [OpenML](https://www.openml.org/). -All the code required to run the benchmark is available on [Github](https://github.com/openml/automlbenchmark). - -## Limitations -It is important to note that the current benchmark has some limitations. - -First, we evaluate the AutoML systems by their default settings, only specifying the resources to be used (number of cores, wallclock time and memory). -We do not tune their search space or optimization hyperparameters, even though all packages allow at least some tuning. -There are of course valid reasons to tune these settings, such as only allowing a subset of models that are most interpretable. -However, in a general sense we feel that requiring tuning of AutoML frameworks defeats the purpose of AutoML, and thus opt not to do so. -That said, tuning the search space or hyperparameter values may drastically change the results. -Our hope is that authors of AutoML packages put more thought in picking good default settings, possibly dependent on the task at hand. -Over time, we hope this becomes a non-issue. - -We must stress that this benchmark does *not* tell us what optimization technique is best. -For each package, the search space from which to construct a model is very different. -These differences are caused by many design differences. -These are differences in their representation of machine learning pipelines (e.g. fixed-length vs. unlimited-length), -by the underlying machine learning packages (e.g. scikit-learn vs. WEKA), -and even the selection of included algorithms and allowed hyperparameter values. -Finally some packages use meta-learning for warm-starting, or post-processing techniques to improve results. - -There are also qualities of frameworks which are not evaluated. -Perhaps the most interesting one is the convergence rate, or how good the any-time stopping performance is of each framework along the optimization process. -But other qualities, such as ease of use or level of support can also be important to some users. - - ---- -1 Due to the high (computational) cost involved, we need to find a balance here. \ No newline at end of file diff --git a/docs/automl_overview.md b/docs/automl_overview.md deleted file mode 100644 index 890bcfed5..000000000 --- a/docs/automl_overview.md +++ /dev/null @@ -1,334 +0,0 @@ ---- -layout: category -title: AutoML Systems -sidebar_sort_order: 2 ---- - -There is more to an AutoML system than just its performance. -An AutoML framework may only be available through an API for a specific programming language, while others can work stand-alone. -Some systems might output models which can be used without further dependency on the AutoML package, -in other cases the AutoML system is still required to use the model. -Some systems might be developed with a specific domain in mind. -When choosing an AutoML system, it is essential to consider things that are important to you. - -On this page a brief description and further references for the AutoML systems in the benchmark is provided. - -List of AutoML systems in the benchmark, in alphabetical order: - -- [auto-sklearn](#auto-sklearn) -- [Auto-WEKA](#auto-weka) -- [H2O AutoML](#h2o-automl) -- [TPOT](#tpot) - -There are many more AutoML frameworks, and unfortunately we could not yet evaluate them all. -While we hope to cover them in the comparison in the future, for now we will -Some other frameworks worth mentioning are, again in alphabetical order: - -- [autoxgboost](#autoxgboost) -- [FLAML](#flaml) -- [GAMA](#gama) -- [hyperopt-sklearn](#hyperopt-sklearn) -- [ML-Plan](#ml-plan) -- [mlr3automl](#mlr3automl) -- [oboe](#oboe) - -For completeness, the baseline methods are also described: - -- [Constant Predictor](#constant-predictor) -- [Random Forest](#random-forest) -- [Tuned Random Forest](#tuned-random-forest) - -##### Statement To Authors -We did our best to provide a reasonable description which highlights some unique or important aspects of each package. -If you want to change or add to the description and references of your AutoML package, please submit a pull request with your proposed changes. - -The description needs to be kept brief and factual. -The goal is to get an impression, based on which the reader can delve more in-depth in the provided documentation. - -If your AutoML framework is not on this page and feel it should be, please open a PR with the proposed addition. -Keep the formatting consistent with the rest of the page. - ------ - -# Included AutoML Frameworks - -## auto-sklearn -[source](https://github.com/automl/auto-sklearn) | -[documentation](http://automl.github.io/auto-sklearn/stable/) | -Python | -Optimization: Bayesian Optimization | -3-clause BSD - -> auto-sklearn is an automated machine learning toolkit and a drop-in replacement for a scikit-learn estimator. - -Auto-sklearn is declared the overall winner of the [ChaLearn AutoML](http://automl.chalearn.org/) Challenge -[1](https://docs.google.com/a/chalearn.org/viewer?a=v&pid=sites&srcid=Y2hhbGVhcm4ub3JnfGF1dG9tbHxneDoyYThjZjhhNzRjMzI3MTg4) -in 2015-2016 and -[2](https://www.4paradigm.com/competition/pakdd2018) -in 2017-2018. -It provides a scikit-learn-like interface in Python and uses Bayesian optimization to find good machine learning pipelines. - -It features automatic ensemble construction. -Meta-learning is used to warm-start the search procedure, this means that the search is more likely to start with good pipelines. - -#### Papers - -Matthias Feurer, Aaron Klein, Katharina Eggensperger, Jost Springenberg, Manuel Blum and Frank Hutter (2015). -[Efficient and Robust Automated Machine Learning](http://papers.nips.cc/paper/5872-efficient-and-robust-automated-machine-learning.pdf) -*Advances in Neural Information Processing Systems 28 (NIPS 2015)*. - -## Auto-WEKA -[source](https://github.com/automl/autoweka) | -[documentation](http://www.cs.ubc.ca/labs/beta/Projects/autoweka/manual.pdf) | -Java, CLI, GUI | -Optimization: Bayesian Optimization | -GPLv3 - -> Our hope is that Auto-WEKA will help non-expert users to more effectively identify machine learning algorithms and -> hyperparameter settings appropriate to their applications, and hence to achieve improved performance. - -Auto-WEKA is built on the Java machine learning package [WEKA](http://www.cs.waikato.ac.nz/ml/weka/). -Auto-WEKA can be used through a graphical user interface, which means there is no need to use a terminal or programming language. -It is one of the first systems to consider joint algorithm selection and hyperparameter optimization in addition to preprocessing steps. - - - -#### Papers - -Lars Kotthoff, Chris Thornton, Holger Hoos, Frank Hutter, and Kevin Leyton-Brown (2017). -[Auto-WEKA 2.0: Automatic model selection and hyperparameter optimization in WEKA](http://www.cs.ubc.ca/labs/beta/Projects/autoweka/papers/16-599.pdf) -*JMLR. 18(25):1−5, 2017* - -Chris Thornton, Frank Hutter, Holger Hoos, and Kevin Leyton-Brown (2013). -[Auto-WEKA: Combined Selection and Hyperparameter Optimization of Classification Algorithms](http://www.cs.ubc.ca/labs/beta/Projects/autoweka/papers/autoweka.pdf) -*Proceedings of KDD 2013*. - - -## H2O AutoML -[source](https://github.com/h2oai/h2o-3) | -[documentation](http://docs.h2o.ai/h2o/latest-stable/h2o-docs/automl.html) | -Python, R | -Optimization: Random Search | -Apache-2.0 - -> H2O’s AutoML can be used for automating the machine learning workflow, -> which includes automatic training and tuning of many models within a user-specified time-limit. - - -H2O AutoML performs Random Search followed by a stacking stage. -By default it uses the H2O machine learning package, which supports distributed training. - -#### Papers - -\- - - -## TPOT -[source](https://github.com/EpistasisLab/tpot) | -[documentation](https://epistasislab.github.io/tpot/) | -Python, CLI | -Optimization: Genetic Programming | -LGPL-3.0 - -> Consider TPOT your Data Science Assistant. -> TPOT is a Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming. - -TPOT provides a scikit-learn-like interface for use in Python, but can be called from the command line as well. -It constructs machine learning pipelines of arbitrary length using scikit-learn algorithms and, optionally, xgboost. -In its search, preprocessing and stacking are both considered. -After the search, it is able to export python code so that you may reconstruct the pipeline without dependencies on TPOT. - -While technically pipelines can be of any length, TPOT performs multi-objective optimization: -it aims to keep the number of components in the pipeline small while optimizing the main metric. -TPOT features support for sparse matrices, multiprocessing and custom pipeline components. - -#### Papers - -Randal S. Olson, Ryan J. Urbanowicz, Peter C. Andrews, Nicole A. Lavender, La Creis Kidd, and Jason H. Moore (2016). -[Automating biomedical data science through tree-based pipeline optimization](http://dx.doi.org/10.1007/978-3-319-31204-0_9). -*Applications of Evolutionary Computation*, pages 123-137. - -Randal S. Olson, Nathan Bartley, Ryan J. Urbanowicz, and Jason H. Moore (2016). -[Evaluation of a Tree-based Pipeline Optimization Tool for Automating Data Science](http://doi.acm.org/10.1145/2908812.2908918). -*Proceedings of GECCO 2016*, pages 485-492. - - - -# Other AutoML Frameworks - -## autoxgboost -[source](https://github.com/ja-thomas/autoxgboost) | -[documentation](https://github.com/ja-thomas/autoxgboost/blob/master/poster_2018.pdf) | -R | -Optimization: Bayesian Optimization | - - -> autoxgboost aims to find an optimal xgboost model automatically using the machine learning framework mlr and the bayesian optimization framework mlrMBO. - -Autoxgboost is different from most frameworks on this page in that it does not search over multiple learning algorithms. -Instead, it restricts itself to finding a good hyperparameter configuration for xgboost. -The exception to this is a preprocessing step for categorical variables, where the specific encoding strategy to use is tuned as well. - -#### Papers - -Janek Thomas, Stefan Coors and Bernd Bischl (2018). -[Automatic Gradient Boosting](https://arxiv.org/pdf/1807.03873v2.pdf) -*International Workshop on Automatic Machine Learning at ICML 2018* - -## FLAML -[source](https://github.com/microsoft/FLAML) | -[documentation](https://microsoft.github.io/FLAML/) | -Python | -Optimization: Configurable | -License MIT - -> FLAML is a lightweight Python library that finds accurate machine learning models efficiently and economically. - -FLAML is powered by a new, cost-effective hyperparameter optimization and learner selection method invented by Microsoft Research. FLAML leverages the structure of the search space to choose a search order optimized for both cost and error. -FLAML is fast and economical. The simple and lightweight design makes it easy to extend, such as adding customized learners or metrics. - -#### Papers - -Chi Wang, Qingyun Wu, Markus Weimer, and Erkang Zhu (2021). -[FLAML: A Fast and Lightweight AutoML Library](https://www.microsoft.com/en-us/research/publication/flaml-a-fast-and-lightweight-automl-library/) -*Proceedings of MLSys 2021* - -Qingyun Wu, Chi Wang, and Silu Huang (2021). -[Frugal Optimization for Cost-related Hyperparameters](https://www.microsoft.com/en-us/research/publication/frugal-optimization-for-cost-related-hyperparameters/) -*Proceedings of AAAI 2021* - -Chi Wang, Qingyun Wu, Silu Huang, and Amin Saied (2021). -[Economical Hyperparameter Optimization With Blended Search Strategy](https://www.microsoft.com/en-us/research/publication/economical-hyperparameter-optimization-with-blended-search-strategy/) -*The Ninth International Conference on Learning Representations (ICLR 2021)* - -## GAMA -[source](https://github.com/PGijsbers/gama) | -[documentation](https://pgijsbers.github.io/gama/) | -Python | -Optimization: Configurable | -License MIT - -> GAMA is an AutoML tool for end-users and AutoML researchers with a configurable AutoML pipeline. - -GAMA is a new framework under active development. -GAMA supports AutoML researchers through a configurable AutoML pipeline, extensive logging and visualization of the logs. -The configurable AutoML pipeline allows selection of the optimization and post-processing algorithms. - -By default GAMA searches over linear machine learning pipelines and create an ensemble of them as a post-processing step. -Currently pipelines can be optimized with an asynchronous evolutionary algorithm or [ASHA](https://arxiv.org/abs/1810.05934). - -#### Papers - -Pieter Gijsbers, Joaquin Vanschoren (2019). -[GAMA: Genetic Automated Machine learning Assistant](https://joss.theoj.org/papers/10.21105/joss.01132). -*Journal of Open Source Software, 4(33), 1132* - -## hyperopt-sklearn -[source](https://github.com/hyperopt/hyperopt-sklearn) | -[documentation](http://hyperopt.github.io/hyperopt-sklearn/) | -Python | -Optimization: Random Search, various SMBO | -3-clause BSD - -> Hyperopt-sklearn is Hyperopt-based model selection among machine learning algorithms in scikit-learn. - -Hyperopt-sklearn allows for different search strategies through a scikit-learn-like interface. -Besides random search, various sequential model based optimization (SMBO) techniques are available. -Amongst these are Tree of Parzen Estimators (TPE), Annealing and Gaussian Process Trees. - -#### Papers - -Komer, Brent, James Bergstra, and Chris Eliasmith (2014). -[Hyperopt-sklearn: automatic hyperparameter configuration for scikit-learn.](http://compneuro.uwaterloo.ca/files/publications/komer.2014b.pdf) -*ICML workshop on AutoML 2014*. - -## ML-Plan -[source](https://github.com/starlibs/AILibs) | -[documentation](https://starlibs.github.io/AILibs/projects/mlplan/) | -Java | -Optimization: Best-First Search on a search graph induced through Hierachical Task Network Planning | AGPL-3.0 - -> a new approach to AutoML based on hierarchical planning - -ML-Plan organizes the search space of possible solution candidates via Hierarchical Task Network (HTN) planning. -It works with both WEKA and scikit-learn backends and can be used to deal with classification, regression, multi-label classification, and remaining useful lifetime estimation tasks. -ML-Plan is under active development. - -#### Papers - -Felix Mohr, Marcel Wever and Eyke Hüllermeier (2018). -[ML-Plan: Automated machine learning via hierarchical planning](https://link.springer.com/article/10.1007/s10994-018-5735-z) -*Machine Learning 107(8):1495–1515* - -Marcel Wever, Felix Mohr and Eyke Hüllermeier (2018). -[ML-Plan for Unlimited-Length Machine Learning Pipelines](https://ris.uni-paderborn.de/download/3852/3853/38.pdf) -* ICML workshop on AutoML 2018*. - -Marcel Wever, Felix Mohr and Eyke Hüllermeier (2018). -[Automated Multi-Label Classification based on ML-Plan](https://arxiv.org/abs/1811.04060) -*arXiv preprint* - -Marcel Wever, Felix Mohr, Alexander Tornede and Eyke Hüllermeier (2019). -[Automating Multi-Label Classification Extending ML-Plan](https://ris.uni-paderborn.de/download/10232/13177/Automating_MultiLabel_Classification_Extending_ML-Plan.pdf) -* ICML workshop on AutoML 2019*. - -## mlr3automl -[source](https://github.com/a-hanf/mlr3automl) | -[documentation](https://github.com/a-hanf/mlr3automl/blob/master/vignettes/mlr3automl.md) | -R | -Optimization: Hyperband | License LGPL-3.0 - -> mlr3automl combines a static portfolio with Hyperband tuning. - -mlr3automl is built on top of mlr3. It combines a static portfolio of known successful pipelines -with Hyperband tuning. mlr3automl currently supports classification and regression tasks. - -#### Papers -\- - -## OBOE -[source](https://github.com/udellgroup/oboe) | -[documentation](https://github.com/udellgroup/oboe) | -Python | -Optimization: Collaborative Filtering | -License N/A - -> Oboe is a data-driven Python algorithmic system for automated machine learning, and is based on matrix factorization and classical experiment design. - -OBOE is still in early stages of development. -It focuses on finding a good initial set of pipelines from which to start further optimization. -The focus is on time-constrained model selection and hyperparameter tuning, using meta-learning to find good pipelines. - -OBOE searches for a good set of algorithm configurations to create an ensemble from, using meta-learning. -With collaborative filtering they estimate which algorithms are likely to do well on the new dataset. - -#### Papers - -Chengrun Yang, Yuji Akimoto, Dae Won Kim, Madeleine Udell (2018). -[OBOE: Collaborative Filtering for AutoML Initialization](https://arxiv.org/pdf/1808.03233.pdf). -*arXiv preprint*. - - -## Baselines - -We compare the performance of AutoML frameworks not only to each other, but also to three baseline methods, these are: - -## Constant Predictor -[source](https://github.com/openml/automlbenchmark/tree/master/frameworks/constantpredictor) - -Always predicts the class probabilities according to their occurrence in the dataset. - -## Random Forest -[source](https://github.com/openml/automlbenchmark/tree/master/frameworks/RandomForest) - -The [Random Forest Classifier](https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.RandomForestClassifier.html) of scikit-learn 0.20. -All hyperparameters are set to their default value, except for the number of estimators, which is set to *2000*. - -## Tuned Random Forest -[source](https://github.com/openml/automlbenchmark/tree/master/frameworks/TunedRandomForest) - -Uses the Random Forest setup as described above, but first optimizes the hyperparameter `max_features`. -It tries up to *11* different values of `max_features`. -Five values uniformly picked from `[1, sqrt(p))`, five values from `(sqrt(p), p]` and finally `sqrt(p)`, where `p` if the number of features in the dataset. - -It first evaluates `max_features=sqrt(p)` and then evaluates the other values in ascending order, until it completes them all or runs out of time. -Finally the model is fit to the entire training dataset with the best value for `max_features` according to the above cross-validation results. diff --git a/docs/benchmark_datasets.md b/docs/benchmark_datasets.md deleted file mode 100644 index b0ebfd36d..000000000 --- a/docs/benchmark_datasets.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -layout: category -title: Benchmark Datasets -sidebar_sort_order: 3 ---- - -The benchmark aims to consist of datasets that represent real-world data science problems. -This means we want to include datasets of all sizes (including *big* ones), of different problem domains and with various levels of difficulty. - -We also want to prevent AutoML tools from overfitting to our benchmark. -For this reason, we plan to change the selection of benchmark problems over time. -This should help prevent (some of the) bias that can be introduced by static benchmarks. - -In our selection for the [paper](#paper.md), we drew datasets from [OpenML100](https://www.openml.org/s/14), [OpenML-CC18](https://www.openml.org/s/98) and [AutoML Challenges](http://automl.chalearn.org/data). -However, we did not include all datasets. -One reason was that some did not meet our criteria (more on that below), another that we wanted to keep some datasets of the future. -There are also a few datasets which we wanted to include, but could not include in the paper due to time constraints. - -## Criteria -As stated before, we did not adopt all proposed datasets but made a selection. -Our criteria for adopting a dataset were as follows: - -**difficulty** of the dataset has to be a sufficient. -If a problem is easily solved by just about any algorithm, it will not be able to differentiate the various AutoML frameworks. -This was the case for many of the OpenML 100 problems (see e.g. [this Github Issue](https://github.com/openml/OpenML/issues/491)), -but also some of the OpenML-CC18 problems (see e.g. [this task](https://www.openml.org/t/15)). - -**representative of real-world** data science problems to be solved with the tool. -In particular we **limit artificial** problems. -We included some, either based on their widespread use ([kr-vs-kp](https://www.openml.org/d/3)) or because they pose difficult problems. -But we do not want them to be a large part of the benchmark. -We also **limit image problems** because those problems are typically solved with solutions in the deep learning domain. -However they still make for realistic, interesting and hard problems, so we did not want to exclude them altogether. - -**diversity** in the problem domains. -We do not want the benchmark to skew towards any domain in particular. -There are various software quality problems in the OpenML-CC18 ( -[jm1](https://www.openml.org/d/1053), -[kc1](https://www.openml.org/d/1067), -[kc2](https://www.openml.org/d/1063), -[pc1](https://www.openml.org/d/1068), -[pc3](https://www.openml.org/d/1050), -[pc4](https://www.openml.org/d/1049)), but adopting them all would lead to a bias in the benchmark to this domain. - -*We want to note however that being notified of new interesting problems in a domain that is already well-represented is still useful, -because we want to eventually replace datasets in the benchmark.* - -**miscellaneous** reasons to *exclude* a dataset included label-leakage, near-duplicates (e.g. different only in categorical encoding or imputation) or violation of the i.i.d. assumption. - - - -## Final List -The first iteration of our benchmark as presented in the paper contained 39 classification datasets. -For the full list of datasets and their characteristics see [OpenML Study 218](https://www.openml.org/s/218) or its [table view](https://www.openml.org/search?q=tags.tag%3Astudy_218&type=data&table=1&size=39). - -## The Future -As stated before, we want the selection of benchmark problems to change over time. -If you find a good candidate dataset, you can [help us make it part of the benchmark](extending.md#adding-a-dataset). -While we are interested in all interesting datasets that match our criteria, we are particularly interested in bigger datasets (>100k rows). - -We greatly appreciate any help to find new and interesting problems for the AutoML benchmark. \ No newline at end of file diff --git a/docs/bib_workshop.md b/docs/bib_workshop.md deleted file mode 100644 index 5eeb9a23d..000000000 --- a/docs/bib_workshop.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: BibTeX - AutoML @ ICML 2019 Paper ---- -``` -@article{amlb2019, - title={An Open Source AutoML Benchmark}, - author={Gijsbers, P. and LeDell, E. and Poirier, S. and Thomas, J. and Bischl, B. and Vanschoren, J.}, - journal={arXiv preprint arXiv:1907.00909 [cs.LG]}, - url={https://arxiv.org/abs/1907.00909}, - note={Accepted at AutoML Workshop at ICML 2019}, - year={2019} -} - -``` \ No newline at end of file diff --git a/docs/documentation.md b/docs/documentation.md deleted file mode 100644 index 45a863e88..000000000 --- a/docs/documentation.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -layout: category -title: Documentation -sidebar_sort_order: 4 ---- - - - [Running the Benchmark](README.md#running-benchmarks) - - [Adding a dataset](extending.md#adding-a-dataset) - - [Adding an AutoML Framework](extending.md#adding-an-automl-framework) \ No newline at end of file diff --git a/docs/extending.md b/docs/extending.md deleted file mode 100644 index 33aa01048..000000000 --- a/docs/extending.md +++ /dev/null @@ -1,98 +0,0 @@ ---- -title: Extending the benchmark ---- - -Whether you want to add a dataset or a framework to the benchmark, you will first have to [fork our repository](https://help.github.com/en/articles/fork-a-repo). -By forking our repository, you can make and test changes without affecting the benchmark. -If you feel your changes should be included in the benchmark, set up a [pull request](https://help.github.com/en/articles/about-pull-requests). -When creating a pull request, indicate clearly the changes and why they are made. - -## Adding a dataset - -### What makes a good dataset -Before discussing on *how* to add your dataset to the benchmark, we want to briefly elaborate on what we think makes for an interesting dataset. - -In our benchmark we aim to include machine learning problems which are representative of those encountered in practice. -In particular, problems of different domains, mixed data types and dataset sizes. -Currently, we would love some additional *big* datasets. - -Another important aspect for inclusion in the benchmark would be that it is a hard problem. -Even if the data is interesting, if a (near-)perfect model can be created with a decision tree, it is not going to be useful to profile the AutoML systems with. -Ideal datasets are those where only certain algorithms (with certain hyperparameter configurations) work, or require non-trivial data preprocessing. -Running a few different algorithms, with and without preprocessing, with different configurations, is encouraged to show the problem is sufficiently difficult. - -Perhaps your dataset does not match with the above description, or you lack the resources or know-how to evaluate the problem with different machine learning approaches. -If you think the problem is interesting regardless, do not hesitate to contact us anyway. -If possible, do this through a pull request as laid out in the following sections. -Otherwise, open an [issue](https://github.com/openml/automlbenchmark/issues). -Please title the issue '[DATA ADD] DATASETNAME' (replacing 'DATASETNAME' with the name of your dataset), -provide a link to the dataset on OpenML as well as motivation as to why you think the dataset is an interesting addition. -Following the steps below will make it more likely that we'll be able to review (and add) the dataset quickly. - -### Uploading to OpenML -To add a dataset to the benchmark, it needs to be uploaded to OpenML. -This requires the dataset in [ARFF format](https://www.cs.waikato.ac.nz/ml/weka/arff.html). -Read [here](https://docs.openml.org/#data) for more information on OpenML data, -and [here](https://www.openml.org/new/data) on how to actually upload it (this requires you to [sign up](https://www.openml.org/register) for OpenML). - -After uploading the dataset, visit its page on OpenML and create a [task](https://docs.openml.org/#tasks) for it. -An OpenML task specifies the evaluation procedure (e.g. splits of a 10-fold cross-validation) and the target of the problem. -To create a task for your OpenML dataset, visit its webpage and find the 'define new task' button at the bottom. -After these steps we are ready to add the problem to a benchmark. - -### Testing the task -First, to make sure everything was set up right, create a single-problem benchmark. -The easiest is to modify the [example benchmark](https://github.com/openml/automlbenchmark/blob/master/resources/benchmarks/example.yaml) by replacing the iris task information with your own. -Then run the benchmark: `python runbenchmark.py constantpredictor_enc example`. - - -Check results for errors. -If your task fails and it is unclear why, you can open an [issue](https://github.com/openml/automlbenchmark/issues). -If you do, please clearly indicate the related OpenML task id and steps to recreate it -and title the issue '[DATA HELP] DATASETNAME', replacing 'DATASETNAME' with the name of your dataset. - -### Adding it to the real thing -If you've made sure everything works, modify one of the existing benchmark or create a new one with your task. -When extending an existing benchmark, make sure not to modify any of the existing problems for the task. -Finally commit your changes and set up a pull request. - - -**Please make sure the PR does not include the changes made to `example.yaml`** - - -In your PR include: - - a link to the task and dataset on OpenML, where the OpenML dataset has meaningful meta-data (e.g. description) - - a motivation as to why this is an interesting addition to the benchmark. - Preferably address the points from the [What makes a good dataset](#what-makes-a-good-dataset) section. - The higher quality your motivation, the better we can come to a conclusion on whether to include the dataset or not. - - -## Adding an AutoML framework - -To add a new framework, create a new folder in the [frameworks folder](https://github.com/openml/automlbenchmark/tree/master/frameworks) (`/frameworks`). -In the package include at least a `__init__.py` file which exposes the method `run(Dataset, TaskConfig)` and optionally also `setup(*args)` and/or `docker_commands()` as documented [here](https://github.com/openml/automlbenchmark/blob/master/frameworks/__init__.py). - -For an example using a python-based AutoML tool, see e.g. the [TPOT](https://github.com/openml/automlbenchmark/tree/master/frameworks/TPOT) folder. -For an example using a non-python-based AutoML tool, see e.g. the [Auto-WEKA](https://github.com/openml/automlbenchmark/tree/master/frameworks/AutoWEKA) folder. - -Note that, as can be seen in the TPOT example, imputing the data before passing it to the framework is (currently) allowed. -The data is available in its regular form, but also in a numeric-only form (where string values are encoded with integers). - -Finally, add your framework to the [`framework.yaml`](https://github.com/openml/automlbenchmark/blob/master/resources/frameworks.yaml) file. -If at any point you run into issues or questions that aren't answered by the benchmark's documentation, -please open an [issue](https://github.com/openml/automlbenchmark/issues), the title of the issue should start with '[FW ADD]'. - -### Testing an AutoML framework - -To test if the implementation is successful, it is recommended to run the validation benchmark: -`python runbenchmark.py your_framework validation`. -This benchmark has tasks with a variety of interesting properties (e.g. missing values, different data types). - - -### Adding it to the real thing -If everything seems to work correctly, you're almost ready to set up a pull request. -But first, make sure you all documentation is up-to-date with your latest additions. -In particular, add or update the section on your AutoML framework in [the AutoML overview](https://github.com/openml/automlbenchmark/blob/master/docs/automl_overview.md). - -The title of your pull request when adding a new framework should be 'Add FRAMEWORK' where 'FRAMEWORK' should be replaced by the name of your framework. -If you are updating a framework, please title the pull request 'Update FRAMEWORK' similarly. \ No newline at end of file diff --git a/docs/extending/benchmark.md b/docs/extending/benchmark.md new file mode 100644 index 000000000..5331662fe --- /dev/null +++ b/docs/extending/benchmark.md @@ -0,0 +1,319 @@ +# Benchmark + +Benchmarks are collections of machine learning tasks, where each task is a dataset +with associated information on train/test splits used to evaluate the model. +These tasks can be defined in a `yaml` file or on [OpenML](https://www.openml.org). +Both options allow for defining a benchmark of one or more datasets. +It is even possible to reference to OpenML tasks from a benchmark file. + +!!! note "Supported Datasets" + + Currently, the AutoML benchmark only supports definitions of tabular datasets for + classification, regression, and time series forecasting. The time series forecasting + support is in an early stage, subject to change, and not supported through OpenML. + +## Defining a Benchmark on OpenML +Especially when performing a benchmark evaluation to be used in a publication, we +recommend the use of OpenML for the definition of the benchmark if possible. This +ensures that other users can run your benchmark out of the box, without any required +additional files. OpenML also provides a lot of meta-data about the datasets which is +also accessible through [APIs](https://www.openml.org/apis) in various programming +languages. We recommend using the [`openml-python`](https://openml.github.io/openml-python) +Python library as it is the most comprehensive of the OpenML libraries. + +Defining a benchmark on OpenML requires the following steps: + + - [Upload a dataset](https://openml.github.io/openml-python/main/examples/30_extended/create_upload_tutorial.html#sphx-glr-examples-30-extended-create-upload-tutorial-py). + A dataset is the tabular data, alongside meta-data like its name, + authors, and license. OpenML will also automatically extract meta-data about the + datasets, such as feature types, class balance, or dataset size. After uploading the + dataset, it will receive an identifier (`ID`) and should be visible on the OpenML + website on `www.openml.org/d/ID`. + - [Define a task](https://openml.github.io/openml-python/main/generated/openml.tasks.create_task.html#openml.tasks.create_task). + A task defines how to evaluate a model on a given dataset, for example + "10-fold cross-validation optimizing AUC". OpenML will generate splits for the 10-fold + cross-validation procedure which means that anyone using this task definition can + perform the experiment with the exact same splits easily. + - [Define a benchmark suite](https://openml.github.io/openml-python/main/examples/30_extended/suites_tutorial.html#sphx-glr-examples-30-extended-suites-tutorial-py). + On a technical level, a benchmarking suite is nothing more than a collection of tasks. + You can add a description that details the purpose of the benchmarking suite, or any + information that users should be aware of before using the suite. + +When a task or benchmark suite is available on OpenML, it can be directly referred to +for the `benchmark` parameter of `runbenchmark.py` as `openml/s/ID` for suites and +`openml/t/ID` for tasks, where `ID` is to be replaced with the OpenML identifier of the +object. For example, `openml/t/59` refers to [task 59](https://www.openml.org/t/59), +which is 10-fold cross-validation on the [iris dataset](https://www.openml.org/d/61). + +## Defining a Benchmark with a File + +When defining a benchmark with a `yaml` file, the `yaml` will contain information about +tasks that are located either on disk or on OpenML. We make a few default benchmarks +available in our [`resources/benchmarks`](GITHUB/resources/benchmarks) folder: + + * `test`: a collection of three small datasets covering regression, binary classification, + and multiclass classification. This makes it incredibly useful for small tests and + fast feedback on whether the software runs without error. + * `validation`: a collection of datasets which have different edge cases, such as a + very wide dataset, datasets with missing or non-numerical values, and more. This + typically produces most errors you might also encounter when running larger + benchmarks. + * `timeseries`: a benchmark for testing time series forecasting integration (experimental). + +Below is an excerpt from the `test.yaml` file: + +```yaml +- name: kc2 + openml_task_id: 3913 + description: "binary test dataset" +``` + +When writing your own benchmark definition, it needs to be discoverable by the benchmark. +A good place to do this would be adding a `benchmarks` directory to your benchmark +configuration directory (`~/.config/automlbenchmark` by default) and updating your +[custom configuration](../../using/configuration/#custom-configurations) by adding: + +```yaml +benchmarks: + definition_dir: + - '{root}/resources/benchmarks' + - '{user}/resources/benchmarks' +``` + +Each task must have a name that is unique in the definition file (case-insensitive), +this name will also be used as identifier (e.g., in the results files). +Additionally, the file must have a description of where to find the dataset files +and splits. When you have a task already on OpenML, you can directly reference it with +`openml_task_id` to define the dataset and splits. Alternatively, you can use local files. + +It is also possible to benchmark your own datasets that you can not or do not want to +upload to OpenML. The data files should be in `arff` or `csv` format and contain at least +one file for training data and one file for test data. When working with multiple files, +it is useful to use an archive (`.zip`, `.tar`, `.tgz`, `.tbz`) or directory structure. +Use the following naming convention to allow the AutoML benchmark to infer what each file represents: + + - if there's only one file for training and one for test, they should be named `{name}_train.csv` and `{name}_test.csv` (in case of CSV files). + - if there are multiple `folds`, they should follow a similar convention: `{name}_train_0.csv`, `{name}_test_0.csv``, {name}_train_1.csv`, `{name}_test_1.csv`, ... + +Examples: + +=== "Single Fold CSV" + + ```yaml + - name: example_csv + dataset: + train: /path/to/data/ExampleTraining.csv + test: /path/to/data/ExampleTest.csv + target: TargetColumn + folds: 1 + ``` + +=== "Multiple Folds CSV" + + ```yaml + - name: example_multi_folds + dataset: + train: + - /path/to/data/ExampleTraining_0.csv + - /path/to/data/ExampleTraining_1.csv + test: + - /path/to/data/ExampleTest_0.csv + - /path/to/data/ExampleTest_1.csv + target: TargetColumn + folds: 2 + ``` + +=== "Directory" + + It is important that the files in the directory follow the naming convention described above. + + ```yaml + - name: example_dir + dataset: + path: /path/to/data + target: TargetColumn + folds: 1 + ``` + +=== "Archive" + + It is important that the files in the archive follow the naming convention described above. + + ```yaml + - name: example_archive + dataset: + path: /path/to/archive.zip + target: TargetColumn + folds: 3 + ``` + +=== "Remote Files" + + The remote file may also be an archive. If that is the case, it is important that + the files in the archive follow the naming convention described above. + + ```yaml + - name: example_csv_http + dataset: + train: https://my.domain.org/data/ExampleTraining.csv + test: https://my.domain.org/data/ExampleTest.csv + target: TargetColumn + folds: 1 + ``` + + Remote files are downloaded to the `input_dir` folder and archives are decompressed + there as well. You can change the value of this folder in your + [custom config.yaml file](../../using/configuration/#custom-configurations) + or specify it at the command line with the `-i` or `--indir` argument + (by default, it points to the `~/.openml/cache` folder). + + +The `target` attribute is optional but recommended. If not set, it will resolve to the +column `target` or `class` if present, and the last column otherwise. + +You can even make use of the [special directives](../../using/configuration/#custom-configurations) like `{user}`. + +```yaml +- name: example_relative_to_user_dir + dataset: + train: "{user}/data/train.csv" + test: "{user}/data/test.csv" +``` + +After creating a benchmark definition, e.g. `~/.config/automlbenchmark/benchmarks/my_benchmark.yaml`, +it can then be referenced when running `runbenchmark.py`: `python runbenchmark.py FRAMEWORK my_benchmark`. + +## Defining a Time Series Forecasting Dataset + +!!! warning "Time Series Forecasting should be considered experimental" + + Time series forecasting support should be considered experimental and is currently + only supported with the AutoGluon integration. + +Benchmark definitions for time series datasets work in much the same way, but there are +some additional fields and requirements to a valid time series dataset. + +First, the dataset must be stored as a single csv file in +[long format](https://doc.dataiku.com/dss/latest/time-series/data-formatting.html#long-format) +and must include 3 columns: + + - `id_column`: An indicator column that specifies to which time series the sample belongs by a unique id. + The default expected name of this column is "item_id". + - `timestamp_column`: A column with the timestamp of the observation. + The default expected name of this column is "timestamp". + - `target`: A column with the target value of the time series + +Additionally, the data must satisfy the following criteria: + + - The shortest time series in the dataset must have length of at least `folds * forecast_horizon_in_step + 1` (see [Generated Folds](#generated-folds)). + - Time series may have different lengths or have different starting timestamps, + but must have the same frequency. + - All time series must have regular timestamp index, i.e., it must have an observation + for each time step from start to end. + +If the `id_column` or `timestamp_column` names are not the default expected ones, +they must be explicitly stated in the definition, as can be seen in the examples below. +Moreover, the definition must also contain the following fields: + + - `path`: a local or remote path to the CSV file with time series data. + - `freq`: a [pandas-compatible frequency string](https://pandas.pydata.org/docs/user_guide/timeseries.html#offset-aliases) + that denotes the frequency of the time series. For example, `D` for daily, `H` for hourly, or `15min` for 15-minute frequency. + - `forecast_horizon_in_steps`: a positive integer denoting how many future time series values need to be predicted. + - `seasonality`: a positive integer denoting the seasonal period of the data, measured in steps. + This parameter is used for computing metrics like [mean absolute scaled error](https://en.wikipedia.org/wiki/Mean_absolute_scaled_error#Seasonal_time_series) (denoted as *m* on Wikipedia). + + +=== "Default Column Names" + + Given a file at `path.to/data.csv` that contains two time series with daily frequency, + `A` with three observations and `B` with four observations: + + | item_id | timestamp | target | + |---------|-----------|--------:| + | A | 2020-01-01| 2.0 | + | A | 2020-01-02| 1.0 | + | A | 2020-01-03| 5.0 | + | B | 2019-05-02| 8.0 | + | B | 2019-05-03| 2.0 | + | B | 2019-05-04| 1.0 | + | B | 2019-05-05| 9.0 | + + When we specify the fields outlined above, then the respective task definition may + look like the one below. Note that we do not have to specify `id_column` or + `timestamp_column` as their names match the default expected value. + + ```yaml + - name: example_time_series_data + dataset: + path: /path/to/data.csv + freq: D + forecast_horizon_in_steps: 1 + seasonality: 7 + target: target + folds: 1 + ``` + + + +=== "Non-default Column Names" + + Given a file at `path.to/data.csv` that contains two time series with daily frequency, + `A` with three observations and `B` with four observations. It is identical to + the example "default column values", but the header provides different column names: + + | Product | Date | Value | + |---------|-----------|--------:| + | A | 2020-01-01| 2.0 | + | A | 2020-01-02| 1.0 | + | A | 2020-01-03| 5.0 | + | B | 2019-05-02| 8.0 | + | B | 2019-05-03| 2.0 | + | B | 2019-05-04| 1.0 | + | B | 2019-05-05| 9.0 | + + When we specify the fields outlined above, then the respective task definition may + look like the one below. Note that we do *have to* specify `id_column` or + `timestamp_column` as their names do not match the default expected value. If left + unspecified, the benchmark tool will raise an error. + + ```yaml + - name: example_time_series_data + dataset: + path: /path/to/data.csv + freq: D + forecast_horizon_in_steps: 1 + seasonality: 7 + id_column: Product + timestamp_column: Date + target: Value + folds: 1 + ``` + + + +### Generated Folds + +AMLB automatically generates the train and test splits from the raw data depending +on the chosen `forecast_horizon_in_steps` and `folds` parameters. Assuming +`forecast_horizon_in_steps = K` and `folds = n`, and each time series has length `n * K`, +the folds will be generated as follows: + + rows | fold 0 | fold 1 | ... | fold (n-2) | fold (n-1) + -- | -- | -- | -- | -- | -- + 1..K | train | train | ... | train | train + K..2K | train | train | ... | train | test + 2..3K | train | train | ... | test | + ... | | | | + (n-2)K...(n-1)K | train | test | | + (n-1)K...nK | test | | | + +As a consequence, the shortest time series in the dataset must have length of at least +`folds * forecast_horizon_in_step + 1`. + +!!! warning "This is still batch learning!" + + It is important to note that the model does not carry over between folds, each fold + the model is trained from scratch on the available training data. As such, it is + still batch learning, as opposed to [train-then-test](https://scikit-multiflow.readthedocs.io/en/stable/user-guide/core-concepts.html) + (or prequential) evaluation where a single model is continuously updated instead. + \ No newline at end of file diff --git a/docs/extending/constraint.md b/docs/extending/constraint.md new file mode 100644 index 000000000..7d6497d37 --- /dev/null +++ b/docs/extending/constraint.md @@ -0,0 +1,71 @@ +# Constraints + +Constraint definitions allow a set of common constraints to be applied to all tasks in +a benchmark. Default constraint definitions are available in +[`resources/constraint.yaml`](GITHUB/resources/constraint.yaml). +When no constraint is specified at the command line, the `test` constraint definition is used by default. + +A constraint definition can consist of the following constraints: + +- `folds` (default=10): The number of folds to evaluate for the task. Has to be less or equal to the number of folds defined by the task. +- `max_runtime_seconds` (default=3600): maximum time in seconds for each individual fold of a benchmark task. + This parameter is usually passed directly to the framework. If it doesn't respect the + constraint, the application will abort the task after `2 * max_runtime_seconds`. + In any case, the _actual_ time used is always recorded and available in the results. +- `cores` (default=-1): amount of cores used for each automl task. If non-positive, it will try to use all cores. +- `max_mem_size_mb` (default=-1): amount of memory assigned to each automl task. + If non-positive, then the amount of memory is computed from os available memory. +- `min_vol_size_mb` (default=-1): minimum amount of free space required on the volume. If non-positive, skips verification. If the requirement is not fulfilled, a warning message will be printed, but the task will still be attempted. +- `ec2_volume_type`: The volume type to use for the task when using EC2 instances, otherwise defaults to the value of `aws.ec2.volume_type` in your configuration file. + +!!! warning "Constraints are not enforced!" + + These constraints are forwarded to the AutoML framework if possible but are + generally not enforced. Not all AutoML frameworks allow for e.g., memory limits + to be set, and not all implementations that do treat it as a hard constraint. + For that reason, only `max_runtime_seconds` is enforced as described above. + It is advised when benchmarking to use an environment that mimics the given constraints. + +??? info "Constraints can be overriden by `benchmark`" + + A benchmark definition can override constraints on a task level. + This is useful if you want to define a benchmark which has different constraints + for different tasks. The default "test" benchmark does this to limit runtime to + 60 seconds instead of 600 seconds, which is useful to get quick results for its + small datasets. For more information, see [defining a benchmark](#ADD-link-to-adding-benchmark). + + +When writing your own constraint definition, it needs to be discoverable by the benchmark. +A good place to do this would be adding a `constraints.yaml` file to your benchmark +configuration directory (`~/.config/automlbenchmark` by default) and updating your +[custom configuration](../../using/configuration/#custom-configurations) by adding: + +```yaml +benchmarks: + constraints_file: + - '{root}/resources/constraints.yaml' + - '{user}/constraints.yaml' +``` + +You can then define multiple constraints in your constraint file, for example: +```yaml title="{user}/constraints.yaml" +--- + +test: + folds: 1 + max_runtime_seconds: 120 + +8h16c: + folds: 10 + max_runtime_seconds: 28800 + cores: 16 + min_vol_size_mb: 65536 + ec2_volume_type: gp3 +``` + +The new constraints can now be passed on the command line when executing the benchmark: +```bash +python runbenchmark.py randomforest validation 8h16c +``` +*Note*: The above example is _allowed_ to run for 8 hours, but will stop earlier as +`RandomForest` stops early after training 2000 trees. \ No newline at end of file diff --git a/docs/extending/framework.md b/docs/extending/framework.md new file mode 100644 index 000000000..ffd66f60d --- /dev/null +++ b/docs/extending/framework.md @@ -0,0 +1,415 @@ +# Adding an AutoML Framework + +!!! warning "Rewrite in progress" + + Most information on this page is accurate, and it should be complete enough to use. + However, it hasn't been updated to make use of `mkdocs-materials` features, and + _might_ have some outdated examples. Contributions welcome. + +## Add an AutoML framework + +Adding an AutoML framework consist in several steps: + + 1. create a Python module that will contain everything related to the integration of this framework. + 1. define the framework in a [Framework definition](#framework-definition) file. + 1. write some integration code + - to download/setup the framework dynamically: by convention, this is done by a `setup.sh` script defined in the module. + - to run the framework using the data and constraints/parameters provided by the benchmark application: by convention, this is done by an `exec.py` script in the module, but it may require more files depending on the framework, for example if it runs on Python or R, Java... + + +### Framework definition + +The framework definition consists in an entry in a `yaml` file with the framework name and some properties + + 1. to describe the framework and define which version will be used: `project`, `version`. + 1. to indicate the Python module with the integration code: `module` or `extends`. + 1. to pass optional parameters to the framework and/or the integration code: `params`. + +Default framework definitions are defined in file `resources/frameworks.yaml` in lexicographic order, +where `version` should be set to `stable`, which will point dynamically to the most recent official release available. + +Frameworks that offer the possibility to test cutting edge version (e.g. nightly builds, +`dev`/`master` repo, ...) can add an entry to `resources/frameworks_latest.yaml`, where `version` should be set to `latest`. + +Maintainers of this repository try to regularly — ideally, every quarter — create a +framework definition using frozen framework versions in order to favour the reproducibility of the published benchmarks. + +Following the [custom configuration](../using/configuration.md#custom-configurations), +it is possible to override and/or add a framework definitions by creating a `frameworks.yaml` file in your `user_dir`. + +See for example the `examples/custom/frameworks.yaml`: + +```yaml +--- + +GradientBoosting: + module: extensions.GradientBoosting + project: https://scikit-learn.org/stable/modules/ensemble.html#gradient-boosting + params: + n_estimators: 500 + +Stacking: + module: extensions.Stacking + project: https://scikit-learn.org/stable/modules/ensemble.html#stacking + params: + _rf_params: {n_estimators: 200} + _gbm_params: {n_estimators: 200} + _linear_params: {penalty: elasticnet, loss: log} +# _svc_params: {tol: 1e-3, max_iter: 1e5} +# _final_params: {penalty: elasticnet, loss: log} # sgd linear + _final_params: {max_iter: 1000} # logistic/linear + +autosklearn_latest: + extends: autosklearn + version: latest + description: "this will use master branch from the autosklearn repository instead of the fixed version" + +autosklearn_mybranch: + extends: autosklearn + version: mybranch + description: "this will use mybranch branch from the autosklearn repository instead of the fixed version" + +autosklearn_oldgen: + extends: autosklearn + version: "0.7.1" + description: "this will use the latest autosklearn version from the old generation" + +H2OAutoML_nightly: + module: frameworks.H2OAutoML + setup_cmd: 'LATEST_H2O=`curl http://h2o-release.s3.amazonaws.com/h2o/master/latest` && pip install --no-cache-dir -U "http://h2o-release.s3.amazonaws.com/h2o/master/${{LATEST_H2O}}/Python/h2o-3.29.0.${{LATEST_H2O}}-py2.py3-none-any.whl"' + version: 'nightly' + +H2OAutoML_custom: + extends: H2OAutoML + params: + nfolds: 3 + stopping_tolerance: 0.05 +``` + +This example shows + +- the definitions for 2 new frameworks: `GradientBoosting` and `Stacking`. + - Those definitions (optionally) externalize some parameters (e.g. `n_estimators`): the `params` property always appears in json format in the results, so that we can clearly see what has been tuned when analyzing the results later. + - Note that the module is case sensitive and should point to the module containing the integration code. + - The application will search for modules from the sys path, which includes the application `root_dir` and the `user_dir`: + - that's why the default frameworks use `module: frameworks.autosklearn` for example, + - and the example above can use `module: extensions.GradientBoosting` because those examples must be run by setting the `user_dir` to `examples/config`, e.g. + > `python runbenchmark.py gradientboosting -u examples/custom`. +- a custom definition (`H2OAutoML_nightly`) for the existing `frameworks.H2OAutoML` module, allowing to reuse the module for a dynamic version of the module: + - the `setup_cmd` is executed after the default setup of the module, so it can be used to make additional setup. To customize the setup, it is possible to use: + - `setup_args: my_version` (only if the `setup.sh` in the framework module supports new arguments). + - `setup_cmd` (as shown in this example). + - `setup_script: my_additional_setup.sh`. +- 2 custom definitions (`H2OAutoML_blending` and `H2OAutoML_custom`) simply extending the existing `H2OAutoML` definition (therefore inheriting from all its properties, including the `module` one), but overriding the `params` property, thus allowing to provide multiple "flavours" of the same framework. + +The frameworks defined in this example can then be used like any other framework as soon as both the framework module and the definition file are made available to the application: in our case, this is done by the creation of the integration modules under `examples/custom/extensions` and by exposing the definitions in `examples/custom/frameworks.yaml` thanks to the entry in `examples/custom/config.yaml`: +```yaml +frameworks: + definition_file: # this allows to add custom framework definitions (in {user}/frameworks.yaml) on top of the default ones. + - '{root}/resources/frameworks.yaml' + - '{user}/frameworks.yaml' +``` + +By pointing the `user_dir` to `examples/custom`, our `config.yaml` is also loaded, and we can use the new frameworks: +```bash +python runbenchmark.py gradientboosting -u examples/custom +python runbenchmark.py stacking -u examples/custom +python runbenchmark.py h2oautoml_blending -u examples/custom +``` + +*Note:* + +By default, when generating a docker image, the image name is created as `automlbenchmark/{framework}:{version}-{branch}` with the framework name in lowercase, and `branch` being the branch of the `automlbenchmark` app (usually `stable`). +However, it is possible to customize this image name as follow: +```yaml +MyFramework: + version: 1.0 + module: extensions.MyFramework + docker: + author: my_docker_repo + image: my_image + tag: my_tag +``` +which will result in the docker image name `my_docker_repo/my_image:my_tag-{branch}`, with `branch` still being the branch of the application. + + +### Framework integration + +If the framework definition allows to use the new framework from the application, the (not so) hard part is to integrate it. + +There are already several frameworks already integrated under `frameworks` directory (+ the examples under `examples/custom`), so the best starting point when adding a new framework is to first look at the existing ones. + +Among the existing frameworks, we can see different type of integrations: + +- trivial integration: these are frameworks running on Python and using dependencies (`numpy`, `sklearn`) already required by the application itself. These are not really AutoML toolkits, but rather integrations using `sklearn` to provide a reference when analyzing the results: cf. `constantpredictor`, `DecisionTree`. +- Python API integration: these are frameworks that can be run directly from Python: cf. `autosklearn`, `H2OAutoML`, `TPOT`, `RandomForest`, `TunedRandomForest`. + - contrary to the trivial integration, those require a `setup` phase. + - Most of them currently run using the same dependencies as the application, which is not recommended due to potential version conflicts (especially with `sklearn`). This was not a major constraint with the first frameworks implemented, but now, those integrations can and will be slightly changed to [run in their dedicated virtual environment], using their own dependencies: cf. `RandomForest` and `examples/custom/extensions/Stacking` for examples. +- non-Python frameworks: those frameworks typically run in `R` or `Java` and don't provide any Python API. The integration is then still done by spawning the `Java` or `R` process from the `exec.py`: cf. `AutoWEKA` or `ranger`, respectively. + +#### Recommended structure + +By convention, the integration is done using the following structure: + +```text +frameworks/autosklearn/ +|-- __init__.py +|-- exec.py +|-- requirements.txt +`-- setup.sh +``` + +Please note however, that this structure is not a requirement, the only requirement is the contract exposed by the integration module itself, i.e. by the `__init__.py` file. + +A simple `__init__.py` would look like this: + +```python +from amlb.utils import call_script_in_same_dir + + +def setup(*args, **kwargs): + call_script_in_same_dir(__file__, "setup.sh", *args, **kwargs) + + +def run(*args, **kwargs): + from .exec import run + return run(*args, **kwargs) + +``` + +where we see that the module should expose (only `run` is actually required) the following functions: + +- `setup` (optional): called by the application to setup the given framework, usually by simply running a `setup.sh` script that will be responsible for potentially creating a local virtual env, downloading and installing the dependencies. + The `setup` function can also receive the optional `setup_args` param from the [framework definition](#framework-definition) as an argument. +- `run`: called by the benchmark application to execute a task against the framework, using the selected dataset and constraints. We will describe the parameters in detail below, for now, just note that by convention, we just load the `exec.py` file from the module and delegate the execution to its `run` function. +- `docker_commands` (optional): called by the application to collect docker instructions that are specific to the framework. If the framework requires a `setup` phase, then the string returned by this function should at least ensure that the setup is also executed during the docker image creation, that's one reason why it is preferable to do all the setup in a `setup.sh` script, to allow the docker support above. + +#### Frameworks with Python API + +##### Frameworks requiring a dedicated virtual env + +For frameworks with Python API, we may worry about version conflicts between the packages used by the application (e.g. `sklearn`, `numpy`, `pandas`) and the ones required by the framework. + +In this case, the integration is slightly different as you can see with the `RandomForest` integration allowing to use any version of `sklearn`. + +This is the basic structure after the creation of the dedicated Python virtual environment during setup: +```text +frameworks/RandomForest/ +|-- __init__.py +|-- exec.py +|-- requirements.txt +|-- setup.sh +`-- venv/ + `-- (this local virtual env is created by the frameworks/shared/setup.sh) +``` + +Noticeable differences with a basic integration: + +- the `venv` is created in `setup.sh` by passing the current dir when sourcing the `shared/setup.sh` script: `. $HERE/../shared/setup.sh $HERE`. +- the `run` function in `__init__.py` prepares the data (in the application environment) before executing the `exec.py` in the dedicated `venv`. The call to `run_in_venv` is in charge of serializing the input, calling `exec.py` and deserializing + saving the results from `exec`. +- `exec.py`, when calls in the subprocess (function `__main__`), calls `call_run(run)` which deserializes the input (dataset + config) and passes it to the `run` function that just need to return a `result` object. + +*Note A*: + +As the serialization/deserialization of `numpy` arrays can be costly for very large datasets, it is recommended to use dataset serialization only if the framework itself doesn't support loading datasets from files. + +This means that, in the `__init__.py` instead of implementing `run` as: +```python +data = dict( + train=dict( + X=dataset.train.X, + y=dataset.train.y + ), + test=dict( + X=dataset.test.X, + y=dataset.test.y + ) +) + +return run_in_venv(__file__, "exec.py", + input_data=data, dataset=dataset, config=config) +``` +it could simply expose the dataset paths (the application avoids loading the data if not explicitly needed by the framework): +```python +data = dict( + target=dict(name=dataset.target.name), + train=dict(path=dataset.train.path), + test=dict(path=dataset.test.path) +) +return run_in_venv(__file__, "exec.py", + input_data=data, dataset=dataset, config=config) +``` + +*Note B*: + +The serialization/deserialization of data between the main process and the framework process can be customized using the `options` parameter: +The allowed options for (de)serialization are defined by the object `amlb.utils.serialization.ser_config`. + +For example: +```python +data = dict( + train=dict( + X=dataset.train.X, + y=dataset.train.y + ), + test=dict( + X=dataset.test.X, + y=dataset.test.y + ) +) + +options = dict( + serialization=dict(sparse_dataframe_deserialized_format='dense') +) +return run_in_venv(__file__, "exec.py", + input_data=data, dataset=dataset, config=config, options=options) +``` + + + +#### Other Frameworks + +Integration of frameworks without any Python API is done in similar way, for example: + +```text +frameworks/AutoWEKA/ +|-- __init__.py +|-- exec.py +|-- requirements.txt +|-- setup.sh +`-- lib/ + `-- (this is where the framework dependencies go, usually created by setup.sh) +``` +or +```text +frameworks/ranger/ +|-- __init__.py +|-- exec.R +|-- exec.py +|-- requirements.txt +`-- setup.sh +``` + +Here are the main differences: +- the `setup` phase is identical, but if at runtime, some executable file or library is required that need to be installed locally (as opposed to globally: for example, `R` or `java` executable are usually installed globally), we just recommend to put everything under the integration module (for example in `lib` and/or `bin` subfolders as for `AutoWEKA`). This is also true for some Python frameworks (cf. `hyperoptsklearn` integration for example, where the modules are loaded from `frameworks/hyperoptsklearn/lib/hyperopt-sklearn`). +- the framework is then executed by building a command manually in `exec.py`, running it in a subprocess, and finally collecting the results generated by the subprocess. For example, in `ranger/exec.py`: + ```python + with Timer() as training: + run_cmd(("Rscript --vanilla -e \"" + "source('{script}'); " + "run('{train}', '{test}', '{output}', cores={cores}, meta_results_file='{meta_results}', task_type='{task_type}')" + "\"").format( + script=os.path.join(here, 'exec.R'), + train=dataset.train.path, + test=dataset.test.path, + output=config.output_predictions_file, + meta_results=meta_results_file, + task_type=config.type, + cores=config.cores + ), _live_output_=True) + ``` + Here, the `exec.R` script is also responsible to save the predictions in the expected format. + + +#### Add a default framework + +Is called "default framework" an AutoML framework whose integration is available on `master` branch under the `frameworks` folder, and with a simple definition in `resources/frameworks.yaml`. + +*NOTE:* +There are a few requirements when integrating a new default framework: + +- The code snippet triggering the training should use only defaults (no AutoML hyper parameters), plus possibly a generic `**kwargs` in order to support `params` section in custom framework definitions. In other words, one of the requirements for being included in the benchmark is that the framework is submitted without any tweaks to default settings. This is to prevent submissions (systems) from overfitting or tuning to the benchmark. +- There must be a way to limit the runtime of the algorithm (a maximum runtime parameter). +- Exceptions: + - the problem type ("classification", "regression", "binary", "multiclass"): this is available through `config.type` or `dataset.type`. + - information about data, for example the column types: available through the `dataset` object. + - time, cpu and memory constraints: those must be provided by the benchmark application through the `config` object. + - the objective function: provided by `config.metric` (usually requires a translation for a given framework). + - seed: provided by `config.seed` + - paths to folders (output, temporary...): if possible, use `config.output_dir` or a subfolder (see existing integrations). +- The default framework definition in `resources/frameworks.yaml` shouldn't have any `params` section: this `params` section is intended for custom definitions, not default ones. +```yaml +good_framework: + version: "0.0.1" + project: "http://go.to/good_framework" + +bad_framework: + version: "0.0.1" + project: "http://go.to/bad_framework" + params: + enable_this: true + use: ['this', 'that'] +``` + +Using the instructions above: + + 1. verify that there is an issue created under for the framework you want to add, or create one. + 1. create a private branch for your integration changes. + 1. create the framework module (e.g. `MyFramework`) under `frameworks` folder. + 1. define the module (if possible without any `params`) in `resources/frameworks.yaml`. + 1. try to setup the framework: + > python runbenchmark.py myframework -s only + 1. fixes the framework setup until it works: the setup being usually a simple `setup.sh` script, you should be able to test it directly without using the application. + 1. try to run simple test against one fold using defaults (`test` benchmark and `test` constraints) with the `-Xtest_mode` that will trigger additional validations: + > python runbenchmark.py myframework -f 0 -Xtest_mode + 1. fix the module integration code until the test produce all results with no error (if the integration generated an error, it is visible in the results). + 1. if this works, validate it against the `validation` dataset using one fold: + > python runbenchmark.py myframework validation 1h4c -f 0 -Xtest_mode + 1. if this works, try to run it in docker to validate the docker image setup: + > python runbenchmark.py myframework -m docker + 1. if this works, try to run it in aws: + > python runbenchmark.py myframework -m aws + 1. add a brief description of the framework to the documentation in [docs/website/framework.html](GITHUB/docs/website/frameworks.html) following the same formatting as the other entries. + 1. create a pull request, and ask a review from authors of `automlbenchmark`: they'll also be happy to help you during this integration. + +#### Add a custom framework + +You may want to integrate a framework without wanting to make this publicly available. + +In this case, as we've seen above, there's always the possibility to integrate your framework in a custom `user_dir`. + +Using the instructions above: + + 1. define what is (or will be) your custom `user_dir` for this framework. + 1. ensure it contains a `config.yaml`, otherwise create one (for example copy [this one](../using/configuration.md#custom-configurations) or `examples/custom/config.yaml`). + 1. create the framework module somewhere under this `user_dir`, e.g. `{user_dir}/extensions/MyFramework`. + 1. define the module in `{user_dir}/frameworks.yaml` (create the file if needed). + 1. follow the same steps as for a "default" framework to implement the integration: setup, test, ... except that you always need to specify the `user_dir`, e.g. for testing: + > python runbenchmark.py myframework -f 0 -u {user_dir} + 1. there may be some issues when trying to build the docker image when the framework is in a custom folder, as all the files should be under the docker build context: solving this probably requires a multi-stage build, needs more investigation. For now, if you really need a docker image, you can either build it manually, or simply copy the `extensions` folder temporarily under `automlbenchmark`. + 1. even without docker image, you can run the framework on AWS, as soon as the custom `config.yaml`, `frameworks.yaml` and `extensions` folder are made available as AWS resources: cf. again the [custom configuration](../using/configuration.md#custom-configurations). The application will copy those files to the EC2 instances into a local `user_dir` and will be able to setup the framework there. + + +## Using a Different Hyperparameter Configuration + +When you want to use an existing framework integration with a different hyperparameter +configuration, it is often enough to write only a custom framework definition without +further changes. + +Framework definitions accept a `params` dictionary for pass-through parameters, +i.e., parameters that are directly accessible from the `exec.py` file in the framework +integration executing the AutoML training. *Most* integration scripts use this to +overwrite any (default) hyperparameter value. Use the `extends` field to indicate +which framework definition to copy default values from, and then add any fields to +overwrite. In the example below the `n_estimators` and `verbose` params are passed +directly to the `RandomForestClassifier`, which will now train only 200 trees +(default is 2000): + +```yaml +RandomForest_custom: + extends: RandomForest + params: + n_estimators: 200 + verbose: true +``` + +This new definition can be used as normal: +``` +python runbenchmark.py randomforest_custom ... +``` + +!!! note + By convention, param names starting with `_` are filtered out (they are not passed + to the framework) but are used for custom logic in the `exec.py`. For example, the + `_save_artifact` field is often used to allow additional artifacts, such as logs or + models, to be saved. diff --git a/docs/extending/index.md b/docs/extending/index.md new file mode 100644 index 000000000..54f1a4939 --- /dev/null +++ b/docs/extending/index.md @@ -0,0 +1,8 @@ +# Extending the Benchmark Tool + +You can extend the benchmark tool in multiple ways. +[Benchmarks](benchmark.md) define collections of tasks on which to evaluate AutoML +frameworks. [Constraints](constraint.md) specify the resource constraints forwarded +to the AutoML framework, such as a time or memory limit. Finally, it is possible to +[add AutoML frameworks](framework.md#add-a-custom-framework) or to +[use an integrated AutoML framework with non-default configuration](framework.md#using-a-different-hyperparameter-configuration). \ No newline at end of file diff --git a/docs/faq.md b/docs/faq.md new file mode 100644 index 000000000..481bb4b0d --- /dev/null +++ b/docs/faq.md @@ -0,0 +1,40 @@ +# Frequently Asked Questions + +If your question is not answered here, please check our Github [issue tracker](https://github.com/openml/automlbenchmark/issues) and [discussion board](https://github.com/openml/automlbenchmark/discussions). +If you still can not find an answer, please [open a Q&A discussion on Github](https://github.com/openml/automlbenchmark/discussions/new?category=q-a). + +## (When) will you add framework X? + +We are currently not focused on integrating additional AutoML systems. +However, we process any pull requests that add frameworks and will assist with the integration. +The best way to make sure framework X gets included is to start with the integration +yourself or encourage the package authors to do so. For technical details see +[Adding an AutoML Framework](./extending/framework.md). + +It is also possible to open a Github issue indicating the framework you would like added. +Please use a clear title (e.g. "Add framework: X") and provide some relevant information +(e.g. a link to the documentation). +This helps us keep track of which frameworks people are interested in seeing included. + + +## Framework setup is not executed +First, it is important to note that we officially only officially support Ubuntu 22.04 LTS, +though other versions and MacOS generally work too. If that does not work, for +example with Windows, use docker mode as per [the installation instructions](getting_started.md#installation). +For MacOS, it may be required to have [brew](https://brew.sh) installed. + +If you are experiencing issues with the framework setup not being executed, please +try the following steps before opening an issue: + + - delete the `.marker_setup_safe_to_delete` from the framework module and try to run + the benchmark again. This marker file is automatically created after a successful + setup to avoid having to execute it each tine (setup phase can be time-consuming), + this marker then prevents auto-setup, except if the `-s only` or `-s force` args below are used. + + - force the setup using the `--setup=only` arg on the command line. This forces the + setup to take place. If the setup is now done correctly, you can run the commands + as normal to start the benchmark. If not, continue. + + - manually clean the installation files by deleting the `lib`, `venv` and `.setup` folders + in the given framework folder (e.g. `frameworks/MyFramework`), and try again. + diff --git a/docs/getting_started.md b/docs/getting_started.md new file mode 100644 index 000000000..e1d8d02dc --- /dev/null +++ b/docs/getting_started.md @@ -0,0 +1,267 @@ +--- +title: Getting Started +description: A short tutorial on installing the software and running a simple benchmark. +--- + +# Getting Started + +The AutoML Benchmark is a tool for benchmarking AutoML frameworks on tabular data. +It automates the installation of AutoML frameworks, passing it data, and evaluating +their predictions. +[Our paper](https://arxiv.org/pdf/2207.12560.pdf) describes the design and showcases +results from an evaluation using the benchmark. +This guide goes over the minimum steps needed to evaluate an +AutoML framework on a toy dataset. + +## Installation +These instructions assume that [Python 3.9 (or higher)](https://www.python.org/downloads/) +and [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) are installed, +and are available under the alias `python` and `git`, respectively. We recommend +[Pyenv](https://github.com/pyenv/pyenv) for managing multiple Python installations, +if applicable. We support Ubuntu 22.04, but many linux and MacOS versions likely work +(for MacOS, it may be necessary to have [`brew`](https://brew.sh) installed). + +First, clone the repository: + +```bash +git clone https://github.com/openml/automlbenchmark.git --branch stable --depth 1 +cd automlbenchmark +``` + +Create a virtual environments to install the dependencies in: + +=== ":simple-linux: Linux" + + ```bash + python -m venv venv + source venv/bin/activate + ``` + +=== ":material-apple: MacOS" + + ```bash + python -m venv venv + source venv/bin/activate + ``` + +=== ":simple-windows: Windows" + + ```bash + python -m venv ./venv + venv/Scripts/activate + ``` + +Then install the dependencies: + +```bash +python -m pip install --upgrade pip +python -m pip install -r requirements.txt +``` + + +??? windows "Note for Windows users" + + The automated installation of AutoML frameworks is done using shell script, + which doesn't work on Windows. We recommend you use + [Docker](https://docs.docker.com/desktop/install/windows-install/) to run the + examples below. First, install and run `docker`. + Then, whenever there is a `python runbenchmark.py ...` + command in the tutorial, add `-m docker` to it (`python runbenchmark.py ... -m docker`). + +??? question "Problem with the installation?" + + On some platforms, we need to ensure that requirements are installed sequentially. + Use `xargs -L 1 python -m pip install < requirements.txt` to do so. If problems + persist, [open an issue](https://github.com/openml/automlbenchmark/issues/new) with + the error and information about your environment (OS, Python version, pip version). + + +## Running the Benchmark + +To run a benchmark call the `runbenchmark.py` script specifying the framework to evaluate. +See [integrated frameworks](WEBSITE/frameworks.html) for a list of supported frameworks, or the [adding a frameworking](extending/framework.md) page on how to add your own. + +### Example: a test run with Random Forest +Let's try evaluating the `RandomForest` baseline, which uses [scikit-learn](https://scikit-learn.org/stable/)'s random forest: + +=== ":simple-linux: Linux" + + ```bash + python runbenchmark.py randomforest + ``` + +=== ":material-apple: MacOS" + + ```bash + python runbenchmark.py randomforest + ``` + +=== ":simple-windows: Windows" + As noted above, we need to install the AutoML frameworks (and baselines) in + a container. Add `-m docker` to the command as shown: + ```bash + python runbenchmark.py randomforest -m docker + ``` + + !!! warning "Important" + Future example usages will only show invocations without `-m docker` mode, + but Windows users will need to run in some non-local mode. + +After running the command, there will be a lot of output to the screen that reports +on what is currently happening. After a few minutes final results are shown and should +look similar to this: + +``` +Summing up scores for current run: + id task fold framework constraint result metric duration seed +openml.org/t/3913 kc2 0 RandomForest test 0.865801 auc 11.1 851722466 +openml.org/t/3913 kc2 1 RandomForest test 0.857143 auc 9.1 851722467 + openml.org/t/59 iris 0 RandomForest test -0.120755 neg_logloss 8.7 851722466 + openml.org/t/59 iris 1 RandomForest test -0.027781 neg_logloss 8.5 851722467 +openml.org/t/2295 cholesterol 0 RandomForest test -44.220800 neg_rmse 8.7 851722466 +openml.org/t/2295 cholesterol 1 RandomForest test -55.216500 neg_rmse 8.7 851722467 +``` + +The result denotes the performance of the framework on the test data as measured by +the metric listed in the metric column. The result column always denotes performance +in a way where higher is better (metrics which normally observe "lower is better" are +converted, which can be observed from the `neg_` prefix). + +While running the command, the AutoML benchmark performed the following steps: + + 1. Create a new virtual environment for the Random Forest experiment. + This environment can be found in `frameworks/randomforest/venv` and will be re-used + when you perform other experiments with `RandomForest`. + 2. It downloaded datasets from [OpenML](https://www.openml.org) complete with a + "task definition" which specifies [cross-validation](https://scikit-learn.org/stable/modules/cross_validation.html) folds. + 3. It evaluated `RandomForest` on each (task, fold)-combination in a separate subprocess, where: + 1. The framework (`RandomForest`) is initialized. + 2. The training data is passed to the framework for training. + 3. The test data is passed to the framework to make predictions on. + 4. It passes the predictions back to the main process + 4. The predictions are evaluated and reported on. They are printed to the console and + are stored in the `results` directory. There you will find: + 1. `results/results.csv`: a file with all results from all benchmarks conducted on your machine. + 2. `results/randomforest.test.test.local.TIMESTAMP`: a directory with more information about the run, + such as logs, predictions, and possibly other artifacts. + +!!! info "Docker Mode" + + When using docker mode (with `-m docker`) a docker image will be made that contains + the virtual environment. Otherwise, it functions much the same way. + +### Important Parameters + +As you can see from the results above, the default behavior is to execute a short test +benchmark. However, we can specify a different benchmark, provide different constraints, +and even run the experiment in a container or on AWS. There are many parameters +for the `runbenchmark.py` script, but the most important ones are: + +`Framework (required)` + +: The AutoML framework or baseline to evaluate and is not case-sensitive. See + [integrated frameworks](WEBSITE/frameworks.html) for a list of supported frameworks. + In the above example, this benchmarked framework `randomforest`. + +`Benchmark (optional, default='test')` + +: The benchmark suite is the dataset or set of datasets to evaluate the framework on. + These can be defined as on [OpenML](https://www.openml.org) as a [study or task](extending/benchmark.md#defining-a-benchmark-on-openml) + (formatted as `openml/s/X` or `openml/t/Y` respectively) or in a [local file](extending/benchmark.md#defining-a-benchmark-with-a-file). + The default is a short evaluation on two folds of `iris`, `kc2`, and `cholesterol`. + +`Constraints (optional, default='test')` + +: The constraints applied to the benchmark as defined by default in [constraints.yaml](GITHUB/resources/constraints.yaml). + These include time constraints, memory constrains, the number of available cpu cores, and more. + Default constraint is `test` (2 folds for 10 min each). + + !!! warning "Constraints are not enforced!" + These constraints are forwarded to the AutoML framework if possible but, except for + runtime constraints, are generally not enforced. It is advised when benchmarking + to use an environment that mimics the given constraints. + + ??? info "Constraints can be overriden by `benchmark`" + A benchmark definition can override constraints on a task level. + This is useful if you want to define a benchmark which has different constraints + for different tasks. The default "test" benchmark does this to limit runtime to + 60 seconds instead of 600 seconds, which is useful to get quick results for its + small datasets. For more information, see [defining a benchmark](#ADD-link-to-adding-benchmark). + +`Mode (optional, default='local')` + +: The benchmark can be run in four modes: + + * `local`: install a local virtual environment and run the benchmark on your machine. + * `docker`: create a docker image with the virtual environment and run the benchmark in a container on your machine. + If a local or remote image already exists, that will be used instead. Requires [Docker](https://docs.docker.com/desktop/). + * `singularity`: create a singularity image with the virtual environment and run the benchmark in a container on your machine. Requires [Singularity](https://docs.sylabs.io/guides/3.5/user-guide/introduction.html). + * `aws`: run the benchmark on [AWS EC2](https://aws.amazon.com/free/?trk=b3f93e34-c1e0-4aa9-95f8-6d2c36891d8a&sc_channel=ps&ef_id=CjwKCAjw-7OlBhB8EiwAnoOEk0li05IUgU9Ok2uCdejP22Yr7ZuqtMeJZAdxgL5KZFaeOVskCAsknhoCSjUQAvD_BwE:G:s&s_kwcid=AL!4422!3!649687387631!e!!g!!aws%20ec2!19738730094!148084749082&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc&awsf.Free%20Tier%20Types=*all&awsf.Free%20Tier%20Categories=*all) instances. + It is possible to run directly on the instance or have the EC2 instance run in `docker` mode. + Requires valid AWS credentials to be configured, for more information see [Running on AWS](#ADD-link-to-aws-guide). + + +For a full list of parameters available, run: + +``` +python runbenchmark.py --help +``` + +### Example: AutoML on a specific task and fold + +The defaults are very useful for performing a quick test, as the datasets are small +and cover different task types (binary classification, multiclass classification, and +regression). We also have a ["validation" benchmark](GITHUB/resources/benchmarks/validation.yaml) +suite for more elaborate testing that also includes missing data, categorical data, +wide data, and more. The benchmark defines 9 tasks, and evaluating two folds with a +10-minute time constraint would take roughly 3 hours (=9 tasks * 2 folds * 10 minutes, +plus overhead). Let's instead use the `--task` and `--fold` parameters to run only a +specific task and fold in the `benchmark` when evaluating the +[flaml](https://microsoft.github.io/FLAML/) AutoML framework: + +``` +python runbenchmark.py flaml validation test -t eucalyptus -f 0 +``` + +This should take about 10 minutes plus the time it takes to install `flaml`. +Results should look roughly like this: + +``` +Processing results for flaml.validation.test.local.20230711T122823 +Summing up scores for current run: + id task fold framework constraint result metric duration seed +openml.org/t/2079 eucalyptus 0 flaml test -0.702976 neg_logloss 611.0 1385946458 +``` + +Similarly to the test run, you will find additional files in the `results` directory. + + +### Example: Benchmarks on OpenML + +In the previous examples, we used benchmarks which were defined in a local file +([test.yaml](GITHUB/resources/benchmarks/test.yaml) and +[validation.yaml](GITHUB/resources/benchmarks/validation.yaml), respectively). +However, we can also use tasks and +benchmarking suites defined on OpenML directly from the command line. When referencing +an OpenML task or suite, we can use `openml/t/ID` or `openml/s/ID` respectively as +argument for the benchmark parameter. Running on the [iris task](https://openml.org/t/59): + +``` +python runbenchmark.py randomforest openml/t/59 +``` + +or on the entire [AutoML benchmark classification suite](https://openml.org/s/271) (this will take hours!): + +``` +python runbenchmark.py randomforest openml/s/271 +``` + +!!! info "Large-scale Benchmarking" + + For large scale benchmarking it is advised to parallelize your experiments, + as otherwise it may take months to run the experiments. + The benchmark currently only supports native parallelization in `aws` mode + (by using the `--parallel` parameter), but using the `--task` and `--fold` parameters + it is easy to generate scripts that invoke individual jobs on e.g., a SLURM cluster. + When you run in any parallelized fashion, it is advised to run each process on + separate hardware to ensure experiments can not interfere with each other. diff --git a/docs/index.md b/docs/index.md index d884d6b24..82ea1189c 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,18 +1,21 @@ ---- -layout: index -title: Home ---- +# AutoML Benchmark -# An Open Source AutoML Benchmark +These are the AutoML Benchmark documentation pages with information on how to +configure and use the AutoML Benchmark tool. For first time users, we advise +visiting the [getting started](getting_started.md) page. -This the homepage for the open and extensible AutoML Benchmark. -The AutoML Benchmark provides an overview and comparison of open-source AutoML systems. -It is *open* because the benchmark infrastructure is [open-source](https://github.com/openml/automlbenchmark/) -and *extensible* because you can [add your own](extending.md) problems and datasets. +This documentation is accompanied by [our website](WEBSITE) +which has information on [our papers](WEBSITE/papers.html), +[integrated frameworks](WEBSITE/frameworks.html), +and [evaluation results](WEBSITE/results.html). -A brief overview and further references for each AutoML system can be found on the [AutoML systems](automl_overview.md) page. -For a thorough explanation of the benchmark, and evaluation of results, you can read our [paper](paper.md). -If you want to analyze the results yourself, you can do this on the [results](results.md) pages. +!!! note "Help Wanted!" -Because the benchmark infrastructure is open-source, you can rerun the benchmark yourself, use custom datasets or your own AutoML platform as explained in our [project documentation](documentation.md). -We also invite you to [submit your own AutoML](documentation.md) system to be evaluated against the benchmark and included in the overview. + We recently switched to generating doc pages with `mkdocs-material`. In the process, + we did our best to make sure to use the additional functionalities to better + present the information and make it easy to find through notes, tabs, and other features. + + It is possible to find parts of the documentation are not updated (correctly), or + are not clear. We welcome all help to improve the documentation. If you have a + suggestion on how to improve the documentation, please open an issue. If you find + an error, please open an issue or open a pull request directly. Thanks! :pray: \ No newline at end of file diff --git a/docs/modifications.md b/docs/modifications.md deleted file mode 100644 index c90dff209..000000000 --- a/docs/modifications.md +++ /dev/null @@ -1,42 +0,0 @@ ---- ---- -# Required Modifications - -Each method is given, unless otherwise specified or unavailable, information about resources: -* Memory -* Runtime -* Number of cores - -And, additionally: -* Metric to optimize - -## auto-sklearn - -### Data preprocessing -Encode string data to numeric (labelencoding). - -### Non-default arguments - -## Auto-WEKA -logloss metric is specified as kBInformation. - -### Data preprocessing -None, ARFF file used directly. -Output is rewritten so it fits `docker/common/evaluate.py` expectations. - -### Non-default arguments - -## H2O AutoML - -### Data preprocessing -None, ARFF file used directly. - -### Non-default arguments - -## TPOT - -### Data preprocessing -Encode string data to numeric (labelencoding). - -### Non-default arguments - diff --git a/docs/paper.md b/docs/paper.md deleted file mode 100644 index 8011f3628..000000000 --- a/docs/paper.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -layout: category -title: Paper -sidebar_sort_order: 9 ---- -[PDF](https://www.automl.org/wp-content/uploads/2019/06/automlws2019_Paper45.pdf) \| [arXiv](https://arxiv.org/abs/1907.00909) \| [BibTeX](bib_workshop.md) - -> First look of the benchmark submitted to [AutoML Workshop at ICML 2019](https://sites.google.com/view/automl2019icml). - -**abstract:** In recent years, an active field of research has developed around automated machine learning(AutoML). -Unfortunately, comparing different AutoML systems is hard and often done in correctly. -We introduce an open, ongoing, and extensible benchmark framework which follows best practices and avoids common mistakes. -The framework is open-source, uses public datasets and has a website with up-to-date results. -We use the framework to conduct a thorough comparison of 4 AutoML systems across 39 datasets and analyze the results. - ---- - diff --git a/docs/results.md b/docs/results.md deleted file mode 100644 index 7c9aa541a..000000000 --- a/docs/results.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -layout: page -title: Results -sidebar_link: true -sidebar_sort_order: 1 ---- - -### Complete Results -[Complete results][reports] are also available in [csv] format or as simple [visualizations] for now. -We hope to provide interactive visualization in the future. - -### Binary Results -A sample of the results obtained by running each framework over 10 folds for various durations each: for binary tasks, the plotted metric is AUC. -Smaller and medium datasets were trained for 1h and 4h. Larger datasets have been trained for 4h and 8h. - -![Binary Results Stripplot 1h][binary_1h] - -![Binary Results Stripplot 4h][binary_4h] - -![Binary Results Stripplot 8h][binary_8h] - -### Multiclass Results -A sample of the results obtained by running each framework over 10 folds for various durations each: for multiclass tasks, the plotted metric is logloss. -Smaller and medium datasets were trained for 1h and 4h. Larger datasets have been trained for 4h and 8h. - -![Multiclass Results Stripplot 1h][multiclass_1h] - -![Multiclass Results Stripplot 4h][multiclass_4h] - -![Multiclass Results Stripplot 8h][multiclass_8h] - -[binary_1h]:https://raw.github.com/openml/automlbenchmark/master/reports/graphics/1h/binary_results_stripplot.png -[multiclass_1h]:https://raw.github.com/openml/automlbenchmark/master/reports/graphics/1h/multiclass_results_stripplot.png -[binary_4h]:https://raw.github.com/openml/automlbenchmark/master/reports/graphics/4h/binary_results_stripplot.png -[multiclass_4h]:https://raw.github.com/openml/automlbenchmark/master/reports/graphics/4h/multiclass_results_stripplot.png -[binary_8h]:https://raw.github.com/openml/automlbenchmark/master/reports/graphics/8h/binary_results_stripplot.png -[multiclass_8h]:https://raw.github.com/openml/automlbenchmark/master/reports/graphics/8h/multiclass_results_stripplot.png -[reports]:https://github.com/openml/automlbenchmark/tree/master/reports -[csv]:https://github.com/openml/automlbenchmark/tree/master/reports/tables -[visualizations]:https://github.com/openml/automlbenchmark/tree/master/reports/graphics \ No newline at end of file diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css new file mode 100644 index 000000000..7727c4398 --- /dev/null +++ b/docs/stylesheets/extra.css @@ -0,0 +1,25 @@ +:root { + --md-primary-fg-color: #1971c2; + --md-primary-fg-color--light: white; + --md-primary-fg-color--dark: #90030C; + + --md-admonition-icon--windows: url('data:image/svg+xml;charset=utf-8,') +} +.md-typeset .admonition.windows, +.md-typeset details.windows { + border-color: rgb(25, 113, 194); +} +.md-typeset .windows > .admonition-title, +.md-typeset .windows > summary { + background-color: rgba(25, 113, 194, 0.1); +} +.md-typeset .windows > .admonition-title::before, +.md-typeset .windows > summary::before { + background-color: rgb(25, 113, 194); + -webkit-mask-image: var(--md-admonition-icon--windows); + mask-image: var(--md-admonition-icon--windows); +} + +.md-typeset .limit_max_height code { + max-height: 20rem; +} \ No newline at end of file diff --git a/docs/using/aws.md b/docs/using/aws.md new file mode 100644 index 000000000..1e9c76a2e --- /dev/null +++ b/docs/using/aws.md @@ -0,0 +1,162 @@ +# AWS + +The AutoML benchmark supports running experiments on [AWS EC2](https://aws.amazon.com/ec2/). + +!!! danger "AMLB does not limit expenses!" + + The AWS integration lets your easily conduct massively parallel evaluations. + The AutoML Benchmark does not in any way restrict the _total_ costs you can make on AWS. + However, there are some tips for [reducing costs](#reducing-costs). + + ??? danger "Example Costs" + + For example, benchmarking one framework on the classification and regression suites + on a one hour budget takes 1 hour * 10 folds * 100 datasets = 1,000 hours, plus + overhead. Even when using spot instance pricing on `m5.2xlarge` instances (default) + probably costs at least $100 US (prices depend on overhead and fluctating prices). + A full evaluation with multiple frameworks and/or time budgets can cost + thousands of dollars. + + +## Setup + +To run a benchmark on AWS you additionally need to have a configured AWS account. +The application is using the [boto3](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html) +Python package to exchange files through S3 and create EC2 instances. + +If this is your first time setting up your AWS account on the machine that will run the +`automlbenchmark` app, you can use the [AWS CLI](http://aws.amazon.com/cli/) tool and run: + ```bash + aws configure + ``` +You will need your AWS Access Key ID, AWS Secret Access Key, and pick a default [EC2 region](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions). + +!!! note "Selecting a Region" + To use a region, an AMI must be configured in the automl benchmark configuration file + under `aws.ec2.regions`. The default configuration has AMIs for `us-east-1`, + `us-east-2`, `us-west-1`, `eu-west-1`, and `eu-central-1`. If you default EC2 + region is different from these, you will need to add the AMI to your [custom configuration](configuration.md#custom-configurations). + +On first use, it is recommended to use the following configuration file, or to extend +your custom configuration file with these options. Follow the instructions in the file +and make any necessary adjustments before running the benchmark. + +```yaml title="Starting AWS Configuration" +--8<-- "examples/aws/config.yaml" +``` + +To run a test to see if the benchmark framework is working on AWS, do the following: + +```bash +python3 runbenchmark.py constantpredictor test -m aws +``` + +This will create and start an EC2 instance for each benchmark job and run the 6 jobs +(3 OpenML tasks * 2 folds) from the `test` benchmark sequentially. +Each job will run is constrained to a one-minute limit in this case, excluding setup +time for the EC2 instances (though `constantpredictor` will likely only take seconds). + +For longer benchmarks, you'll probably want to run multiple jobs in parallel and +distribute the work to several EC2 instances, for example: +```bash +python3 runbenchmark.py autosklearn validation 1h4c -m aws -p 4 +``` +will keep 4 EC2 instances running, monitor them in a dedicated thread, and finally collect all outputs from s3. + +??? info "EC2 Instances always stopped eventually (by default)" + + Each EC2 instance is provided with a time limit at startup to ensure that in any case, + the instance is stopped even if there is an issue when running the benchmark task. + In this case the instance is stopped, not terminated, and we can therefore inspect + the machine manually (ideally after resetting its UserData field to avoid + re-triggering the benchmark on the next startup). + +The console output is still showing the instances starting, outputs the progress and +then the results for each dataset/fold combination (log excerpt from different command): + +```{.text .limit_max_height title="Example output benchmarking H2O on AWS"} +Running `H2OAutoML_nightly` on `validation` benchmarks in `aws` mode! +Loading frameworks definitions from ['/Users/me/repos/automlbenchmark/resources/frameworks.yaml']. +Loading benchmark definitions from /Users/me/repos/automlbenchmark/resources/benchmarks/validationt.yaml. +Uploading `/Users/me/repos/automlbenchmark/resources/benchmarks/validation.yaml` to `ec2/input/validation.yaml` on s3 bucket automl-benchmark. +... +Starting new EC2 instance with params: H2OAutoML_nightly /s3bucket/input/validation.yaml -t micro-mass -f 0 +Started EC2 instance i-0cd081efc97c3bf6f +[2019-01-22T11:51:32] checking job aws_validation_micro-mass_0_H2OAutoML_nightly on instance i-0cd081efc97c3bf6f: pending +Starting new EC2 instance with params: H2OAutoML_nightly /s3bucket/input/validation.yaml -t micro-mass -f 1 +Started EC2 instance i-0251c1655e286897c +... +[2019-01-22T12:00:32] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running +[2019-01-22T12:00:33] checking job aws_validation_micro-mass_0_H2OAutoML_nightly on instance i-0cd081efc97c3bf6f: running +[2019-01-22T12:00:48] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running +[2019-01-22T12:00:48] checking job aws_validation_micro-mass_0_H2OAutoML_nightly on instance i-0cd081efc97c3bf6f: running +... +[ 731.511738] cloud-init[1521]: Predictions saved to /s3bucket/output/predictions/h2oautoml_nightly_micro-mass_0.csv +[ 731.512132] cloud-init[1521]: H2O session _sid_96e7 closed. +[ 731.512506] cloud-init[1521]: Loading predictions from /s3bucket/output/predictions/h2oautoml_nightly_micro-mass_0.csv +[ 731.512890] cloud-init[1521]: Metric scores: {'framework': 'H2OAutoML_nightly', 'version': 'nightly', 'task': 'micro-mass', 'fold': 0, 'mode': 'local', 'utc': '2019-01-22T12:00:02', 'logloss': 0.6498889633819804, 'acc': 0.8793103448275862, 'result': 0.6498889633819804} +[ 731.513275] cloud-init[1521]: Job local_micro-mass_0_H2OAutoML_nightly executed in 608.534 seconds +[ 731.513662] cloud-init[1521]: All jobs executed in 608.534 seconds +[ 731.514089] cloud-init[1521]: Scores saved to /s3bucket/output/scores/H2OAutoML_nightly_task_micro-mass.csv +[ 731.514542] cloud-init[1521]: Loaded scores from /s3bucket/output/scores/results.csv +[ 731.515006] cloud-init[1521]: Scores saved to /s3bucket/output/scores/results.csv +[ 731.515357] cloud-init[1521]: Summing up scores for current run: +[ 731.515782] cloud-init[1521]: task framework ... acc logloss +[ 731.516228] cloud-init[1521]: 0 micro-mass H2OAutoML_nightly ... 0.87931 0.649889 +[ 731.516671] cloud-init[1521]: [1 rows x 9 columns] +... +EC2 instance i-0cd081efc97c3bf6f is stopped +Job aws_validation_micro-mass_0_H2OAutoML_nightly executed in 819.305 seconds +[2019-01-22T12:01:34] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running +[2019-01-22T12:01:49] checking job aws_validation_micro-mass_1_H2OAutoML_nightly on instance i-0251c1655e286897c: running +EC2 instance i-0251c1655e286897c is stopping +Job aws_validation_micro-mass_1_H2OAutoML_nightly executed in 818.463 seconds +... +Terminating EC2 instances i-0251c1655e286897c +Terminated EC2 instances i-0251c1655e286897c with response {'TerminatingInstances': [{'CurrentState': {'Code': 32, 'Name': 'shutting-down'}, 'InstanceId': 'i-0251c1655e286897c', 'PreviousState': {'Code': 64, 'Name': 'stopping'}}], 'ResponseMetadata': {'RequestId': 'd09eeb0c-7a58-4cde-8f8b-2308a371a801', 'HTTPStatusCode': 200, 'HTTPHeaders': {'content-type': 'text/xml;charset=UTF-8', 'transfer-encoding': 'chunked', 'vary': 'Accept-Encoding', 'date': 'Tue, 22 Jan 2019 12:01:53 GMT', 'server': 'AmazonEC2'}, 'RetryAttempts': 0}} +Instance i-0251c1655e286897c state: shutting-down +All jobs executed in 2376.891 seconds +Deleting uploaded resources `['ec2/input/validation.yaml', 'ec2/input/config.yaml', 'ec2/input/frameworks.yaml']` from s3 bucket automl-benchmark. +``` + + +## Configurable AWS Options + +When using AWS mode, the application will use `on-demand` EC2 instances from the `m5` +series by default. However, it is also possible to use `Spot` instances, specify a +`max_hourly_price`, or customize your experience when using this mode in general. +All configuration points are grouped and documented under the `aws` yaml namespace in +the main [config](GITHUB/resources/config.yaml) file. +When setting your own configuration, it is strongly recommended to first create your +own `config.yaml` file as described in [Custom configuration](configuration.md#custom-configurations). +Here is an example of a config file using Spot instances on a non-default region: +```yaml + +aws: + region: 'us-east-1' + resource_files: + - '{user}/config.yaml' + - '{user}/frameworks.yaml' + + ec2: + subnet_id: subnet-123456789 # subnet for account on us-east-1 region + spot: + enabled: true + max_hourly_price: 0.40 # comment out to use default +``` + +### Reducing Costs + +The most important thing you can do to reduce costs is to critically evaluate which +experimental results can be re-used from previous publications. That said, when +conducting new experiments on AWS we have the following recommendations to reduce costs: + + - Use spot instances with a fixed maximum price: set `aws.ec2.spot.enabled: true` and `aws.ec2.spot.max_hourly_price`. + Check which region has [the lowest spot instance prices](https://aws.amazon.com/ec2/spot/) + and configure `aws.region` accordingly. + - Skip the framework installation process by providing a docker image and setting `aws.docker_enabled: true`. + - Set up [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) + to get alerts early if forecasted usage exceeds the budget. It should also be + technically possibly to automatically shut down all running instances in a region + if a budget is exceeded, but this naturally leads to a loss of experimental results, so + it is best avoided. \ No newline at end of file diff --git a/docs/using/configuration.md b/docs/using/configuration.md new file mode 100644 index 000000000..e95350c91 --- /dev/null +++ b/docs/using/configuration.md @@ -0,0 +1,51 @@ +# Configuration + +The AutoML benchmark has a host of settings that can be configured from a `yaml` file. +It is possible to write your own configuration file that overrides the default behavior +in a flexible manner. + +## Configuration Options + +The default configuration options can be found in the +[`resources/config.yaml`](GITHUB/resources/config.yaml) file. + +```{ .yaml title="resources/config.yaml" .limit_max_height } +--8<-- "resources/config.yaml" +``` + +## Custom Configurations +To override default configuration, create your custom `config.yaml` file under the +`user_dir` (specified by the `--userdir` parameter of `runbenchmark.py`). +The application will automatically load this custom file and apply it on top of the defaults. + +When specifying filepaths, configurations support the following placeholders: + +| Placeholder | Replaced By Value Of | Default | Function | +|:------------|:---------------------|:----------------------------|:-----------------------------------------------------------------------| +| `{input}` | `input_dir` | `~/.openml/cache` | Folder from which datasets are loaded (and/or downloaded) | +| `{output}` | `output_dir` | `./results` | Folder where all outputs (results, logs, predictions, ...) are stored. | +| `{user}` | `user_dir` | `~/.config/automlbenchmark` | Folder containing custom configuration files. | +| `{root}` | `root_dir` | Detected at runtime | The root folder of the `automlbenchmark` application. | + +For example, including the following snippet in your custom configuration when +`user_dir` is `~/.config/automlbenchmark` (which it is by default) changes your +input directory to `~/.config/automlbenchmark/data` : + +```yaml title="examples/custom/config.yaml" +--8<-- "examples/custom/config.yaml:6:7" +``` + +!!! tip "Multiple Configuration Files" + It is possible to have multiple configuration files: + just create a folder for each `config.yaml` file and use that folder as your + `user_dir` using `--userdir /path/to/config/folder` when invoking `runbenchmark.py`. + + +Below is an example of a configuration file which **1.** changes the directory the +datasets are loaded from, **2.** specifies additional paths to look up framework, +benchmark, and constraint definitions, **3.** also makes those available in an S3 bucket +when running in AWS mode, and **4.** changes the default EC2 instance type for AWS mode. + +```yaml title="examples/custom/config.yaml" +--8<-- "examples/custom/config.yaml:3" +``` diff --git a/docs/using/parameters.md b/docs/using/parameters.md new file mode 100644 index 000000000..e0494e8db --- /dev/null +++ b/docs/using/parameters.md @@ -0,0 +1,94 @@ +# Parameters of `runbenchmark.py` + +The parameters of the `runbenchmark.py` script can be shown with: + +```{ .text title="python runbenchmark.py --help" .limit_max_height } +usage: runbenchmark.py [-h] [-m {local,aws,docker,singularity}] [-t [task_id ...]] [-f [fold_num ...]] [-i input_dir] [-o output_dir] [-u user_dir] [-p parallel_jobs] [-s {auto,skip,force,only}] [-k [true|false]] + [-e] [--logging LOGGING] [--openml-run-tag OPENML_RUN_TAG] + framework [benchmark] [constraint] + +positional arguments: + framework The framework to evaluate as defined by default in resources/frameworks.yaml. + To use a labelled framework (i.e. a framework defined in resources/frameworks-{label}.yaml), + use the syntax {framework}:{label}. + benchmark The benchmark type to run as defined by default in resources/benchmarks/{benchmark}.yaml, + a path to a benchmark description file, or an openml suite or task. + OpenML references should be formatted as 'openml/s/X' and 'openml/t/Y', + for studies and tasks respectively. Use 'test.openml/s/X' for the + OpenML test server. + (default: 'test') + constraint The constraint definition to use as defined by default in resources/constraints.yaml. + (default: 'test') + +optional arguments: + -h, --help show this help message and exit + -m {local,aws,docker,singularity}, --mode {local,aws,docker,singularity} + The mode that specifies how/where the benchmark tasks will be running. + (default: 'local') + -t [task_id ...], --task [task_id ...] + The specific task name (as defined in the benchmark file) to run. + When an OpenML reference is used as benchmark, the dataset name should be used instead. + If not provided, then all tasks from the benchmark will be run. + -f [fold_num ...], --fold [fold_num ...] + If task is provided, the specific fold(s) to run. + If fold is not provided, then all folds from the task definition will be run. + -i input_dir, --indir input_dir + Folder from where the datasets are loaded by default. + (default: '/Users/pietergijsbers/.openml') + -o output_dir, --outdir output_dir + Folder where all the outputs should be written.(default: '/Users/pietergijsbers/repositories/forks/automlbenchmark-fork/results') + -u user_dir, --userdir user_dir + Folder where all the customizations are stored.(default: '~/.config/automlbenchmark') + -p parallel_jobs, --parallel parallel_jobs + The number of jobs (i.e. tasks or folds) that can run in parallel. + A hard limit is defined by property `job_scheduler.max_parallel_jobs` + in `resources/config.yaml`. + Override this limit in your custom `config.yaml` file if needed. + Supported only in aws mode or container mode (docker, singularity). + (default: 1) + -s {auto,skip,force,only}, --setup {auto,skip,force,only} + Framework/platform setup mode. Available values are: + • auto: setup is executed only if strictly necessary. + • skip: setup is skipped. + • force: setup is always executed before the benchmark. + • only: only setup is executed (no benchmark). + (default: 'auto') + -k [true|false], --keep-scores [true|false] + Set to true (default) to save/add scores in output directory. + -e, --exit-on-error If set, terminates on the first task that does not complete with a model. + --logging LOGGING Set the log levels for the 3 available loggers: + • console + • app: for the log file including only logs from amlb (.log extension). + • root: for the log file including logs from libraries (.full.log extension). + Accepted values for each logger are: notset, debug, info, warning, error, fatal, critical. + Examples: + --logging=info (applies the same level to all loggers) + --logging=root:debug (keeps defaults for non-specified loggers) + --logging=console:warning,app:info + (default: 'console:info,app:debug,root:info') + --openml-run-tag OPENML_RUN_TAG + Tag that will be saved in metadata and OpenML runs created during upload, must match '([a-zA-Z0-9_\-\.])+'. +``` + + +## Profiling the application + +Currently, the application provides a global flag `--profiling` to activate profiling +for some specific methods that can be slow or memory intensive: + +```bash +python runbenchmark.py randomforest --profiling +``` + +Not all methods and functions are not profiled, but if you need to profile more, +you just need to decorate the function with the `@profile()` decorator (from `amlb.utils`). +Profiling reports on memory usage and function durations: + +```{ .text title="Example of profiling logs" } +[PROFILING] `amlb.datasets.openml.OpenmlLoader.load` executed in 7.456s. +[PROFILING] `amlb.datasets.openml.OpenmlDatasplit.data` returned object size: 45.756 MB. +[PROFILING] `amlb.datasets.openml.OpenmlDatasplit.data` memory change; process: +241.09 MB/379.51 MB, resident: +241.09 MB/418.00 MB, virtual: +230.01 MB/4918.16 MB. +[PROFILING] `amlb.data.Datasplit.X_enc` executed in 6.570s. +[PROFILING] `amlb.data.Datasplit.release` executed in 0.007s. +[PROFILING] `amlb.data.Datasplit.release` memory change; process: -45.73 MB/238.80 MB, resident: +0.00 MB/414.60 MB, virtual: +0.00 MB/4914.25 MB. +``` \ No newline at end of file diff --git a/docs/using/result_analysis.md b/docs/using/result_analysis.md new file mode 100644 index 000000000..24d8d9a06 --- /dev/null +++ b/docs/using/result_analysis.md @@ -0,0 +1,217 @@ +# Results + +The AutoML benchmark produces many result files, such as logs, performance records, +and meta-data of the experiments. Some of these files can also be automatically parsed +and visualized by notebooks we provide. + +## Output File Structure + +Except the logs, all the files generated by the application are in easy to process +`csv` or `json` format, and they are all generated in a subfolder of the `output_dir` +unique for each benchmark run. + +For example: +```text +results/randomforest.test.test.local.20201204T192714 +|-- predictions +| |-- cholesterol +| | |-- 0 +| | | |-- metadata.json +| | | `-- predictions.csv +| | `-- 1 +| | |-- metadata.json +| | `-- predictions.csv +| |-- iris +| | |-- 0 +| | | |-- metadata.json +| | | `-- predictions.csv +| | `-- 1 +| | |-- metadata.json +| | `-- predictions.csv +| `-- kc2 +| |-- 0 +| | |-- metadata.json +| | `-- predictions.csv +| `-- 1 +| |-- metadata.json +| `-- predictions.csv +`-- scores + |-- RandomForest.benchmark_test.csv + `-- results.csv +``` + +### `results.csv` + +Here is a sample `results.csv` file from a test run against the `RandomForest` framework: + + +=== "Produced CSV" + + ```csv + id,task,framework,constraint,fold,result,metric,mode,version,params,tag,utc,duration,models,seed,info,acc,auc,balacc,logloss,mae,r2,rmse + openml.org/t/3913,kc2,RandomForest,test,0,0.865801,auc,local,0.23.2,{'n_estimators': 2000},,2020-12-04T19:27:46,3.2,2000,2633845682,,0.792453,0.865801,0.634199,0.350891,,, + openml.org/t/3913,kc2,RandomForest,test,1,0.86039,auc,local,0.23.2,{'n_estimators': 2000},,2020-12-04T19:27:52,3.0,2000,2633845683,,0.90566,0.86039,0.772727,0.406952,,, + openml.org/t/59,iris,RandomForest,test,0,0.126485,logloss,local,0.23.2,{'n_estimators': 2000},,2020-12-04T19:27:56,2.9,2000,2633845682,,0.933333,,0.933333,0.126485,,, + openml.org/t/59,iris,RandomForest,test,1,0.0271781,logloss,local,0.23.2,{'n_estimators': 2000},,2020-12-04T19:28:01,3.0,2000,2633845683,,1.0,,1.0,0.0271781,,, + openml.org/t/2295,cholesterol,RandomForest,test,0,44.3352,rmse,local,0.23.2,{'n_estimators': 2000},,2020-12-04T19:28:05,3.0,2000,2633845682,,,,,,35.6783,-0.014619,44.3352 + openml.org/t/2295,cholesterol,RandomForest,test,1,55.3163,rmse,local,0.23.2,{'n_estimators': 2000},,2020-12-04T19:28:10,3.1,2000,2633845683,,,,,,43.1808,-0.0610752,55.3163 + ``` + +=== "Readable Table" + + ```text + id task framework constraint fold result metric mode version params utc duration models seed acc auc balacc logloss mae r2 rmse + 0 openml.org/t/3913 kc2 RandomForest test 0 0.865801 auc local 0.23.2 {'n_estimators': 2000} 2020-12-04T19:27:46 3.2 2000 2633845682 0.792453 0.865801 0.634199 0.350891 NaN NaN NaN + 1 openml.org/t/3913 kc2 RandomForest test 1 0.860390 auc local 0.23.2 {'n_estimators': 2000} 2020-12-04T19:27:52 3.0 2000 2633845683 0.905660 0.860390 0.772727 0.406952 NaN NaN NaN + 2 openml.org/t/59 iris RandomForest test 0 0.126485 logloss local 0.23.2 {'n_estimators': 2000} 2020-12-04T19:27:56 2.9 2000 2633845682 0.933333 NaN 0.933333 0.126485 NaN NaN NaN + 3 openml.org/t/59 iris RandomForest test 1 0.027178 logloss local 0.23.2 {'n_estimators': 2000} 2020-12-04T19:28:01 3.0 2000 2633845683 1.000000 NaN 1.000000 0.027178 NaN NaN NaN + 4 openml.org/t/2295 cholesterol RandomForest test 0 44.335200 rmse local 0.23.2 {'n_estimators': 2000} 2020-12-04T19:28:05 3.0 2000 2633845682 NaN NaN NaN NaN 35.6783 -0.014619 44.3352 + 5 openml.org/t/2295 cholesterol RandomForest test 1 55.316300 rmse local 0.23.2 {'n_estimators': 2000} 2020-12-04T19:28:10 3.1 2000 2633845683 NaN NaN NaN NaN 43.1808 -0.061075 55.3163 + ``` + +Here is a short description of each column: + + - `id`: a identifier for the dataset used in this result. For convenience, we use the link to the OpenML task by default. + - `task`: the task name as defined in the benchmark definition. + - `framework`: the framework name as defined in the framework definition. + - `fold`: the dataset fold being used for this job. Usually, we're using 10 folds, so the fold varies from 0 to 9. + - `result`: the result score, this is the score for the metric that the framework was trying to optimize. For example, for binary classification, the default metrics defined in `resources/config.yaml` are `binary: ['auc', 'acc']`; this means that the frameworks should try to optimize `auc` and the final `auc` score will become the `result` value, the other metrics (here `acc`) are then computed for information. + - `mode`: one of `local`, `docker`, `aws`, `aws+docker`: tells where/how the job was executed. + - `version`: the version of the framework being benchmarked. + - `params`: if any, a JSON representation of the params defined in the framework definition. This allows to see clearly if some tuning was done for example. + - `tag`: the branch tag of the `automlbenchmark` app that was running the job. + - `utc`: the UTC timestamp at the job completion. + - `duration`: the training duration: the framework integration is supposed to provide this information to ensure that it takes only into account the time taken by the framework itself. When benchmarking large data, the application can use a significant amount of time to prepare the data: this additional time doesn't appear in this `duration` column. + - `models`: for some frameworks, it is possible to know how many models in total were trained by the AutoML framework. + - `seed`: the seed or random state passed to the framework. With some frameworks, it is enough to obtain reproducible results. Note that the seed can be specified at the command line using `-Xseed=` arg (for example `python randomforest -Xseed=1452956522`): when there are multiple folds, the seed is then incremented by the fold number. + - `info`: additional info in text format, this usually contains error messages if the job failed. + - `acc`, `auc`, `logloss` metrics: all the metrics that were computed based on the generated predictions. For each job/row, one of them matches the `result` column, the others are purely informative. Those additional metric columns are simply added in alphabetical order. + +### Predictions Directory + +For each evaluation, the framework integration must generate a predictions file that +will be used by the application to compute the scores. This predictions file is saved +under the `predictions` subfolder as shown [above](#output-file-structure) and +follows the naming convention: `{framework}_{task}_{fold}.csv`. + +The `csv` file contains a header row and contains the following columns, in order: + - For classification tasks only, there is first one column per class, sorted alphabetically. + Each column contains the probability of the sample belonging to that class, as predicted by the AutoML framework. + If a framework does not provide probabilities, it will be 1 for the predicted class and 0 otherwise. + - `predictions`: contains the predictions of the test predictor data by the model trained by the framework, + - `truth`: the true values of the test target data (`test.y`). + +Here are examples of the first few samples for `KC2` (binary classification), +`iris` (multiclass classification), and `cholesterol` (regression): + +=== "KC2 (csv)" + + ```csv + no,yes,predictions,truth + 0.965857617846013,0.034142382153998944,no,no + 0.965857617846013,0.034142382153998944,no,no + 0.5845,0.4155,no,no + 0.6795,0.3205,no,no + 0.965857617846013,0.034142382153998944,no,no + ``` +=== "KC2 (table)" + + | no | yes | predictions | truth | + |-------------------|----------------------|-------------|-------| + | 0.965857617846013 | 0.034142382153998944 | no | no | + | 0.965857617846013 | 0.034142382153998944 | no | no | + | 0.5845 | 0.4155 | no | no | + | 0.6795 | 0.3205 | no | no | + | 0.965857617846013 | 0.034142382153998944 | no | no | + +===! "iris (csv)" + + ```csv + Iris-setosa,Iris-versicolor,Iris-virginica,predictions,truth + 1.0,0.0,0.0,Iris-setosa,Iris-setosa + 0.9715,0.028,0.0005,Iris-setosa,Iris-setosa + 1.0,0.0,0.0,Iris-setosa,Iris-setosa + 1.0,0.0,0.0,Iris-setosa,Iris-setosa + 1.0,0.0,0.0,Iris-setosa,Iris-setosa + 0.0,1.0,0.0,Iris-versicolor,Iris-versicolor + ``` + + +=== "iris (table)" + + | Iris-setosa | Iris-versicolor | Iris-virginica | predictions | truth | + |-------------|-----------------|----------------|-----------------|-----------------| + | 1.0 | 0.0 | 0.0 | Iris-setosa | Iris-setosa | + | 0.9715 | 0.028 | 0.0005 | Iris-setosa | Iris-setosa | + | 1.0 | 0.0 | 0.0 | Iris-setosa | Iris-setosa | + | 1.0 | 0.0 | 0.0 | Iris-setosa | Iris-setosa | + | 1.0 | 0.0 | 0.0 | Iris-setosa | Iris-setosa | + | 0.0 | 1.0 | 0.0 | Iris-versicolor | Iris-versicolor | + + +===! "cholesterol (csv)" + + ```csv + predictions,truth + 241.204,207.0 + 248.9575,249.0 + 302.278,268.0 + 225.9215,234.0 + 226.6995,201.0 + ``` + +=== "cholesterol (table)" + + | predictions | truth | + |-------------|-------| + | 241.204 | 207.0 | + | 248.9575 | 249.0 | + | 302.278 | 268.0 | + | 225.9215 | 234.0 | + | 226.6995 | 201.0 | + + +### Extract more information + +For some frameworks, it is also possible to extract more detailed information, +in the form of `artifacts` that are saved after the training. +Examples of those artifacts are logs generated by the framework, models or descriptions +of the models trained by the framework, predictions for each of the model trained by the +AutoML framework. By default, those artifacts are not saved, and not all frameworks +provide the same artifacts. This is why the artifacts to be stored have to be specified +in the framework definition (_before_ running the experiments!). By convention, +this can be achieved by specifying the `params._save_artifacts` parameter. For example: + +=== "autosklearn" + + Save model descriptions under the `models` subfolder: + ```yaml + autosklearn_debug: + extends: autosklearn + params: + _save_artifacts: ['models'] + ``` + +=== "H2O" + + Save the leaderboard and models under the `models` subfolder, + and the H2O logs under `logs` subfolder: + ```yaml + H2OAutoML_debug: + extends: H2OAutoML + params: + _save_artifacts: ['leaderboard', 'logs', 'models'] + ``` + +=== "TPOT" + + Save the description of models for the Pareto frontin the `models` subfolder: + ```yaml + TPOT_debug: + extends: TPOT + params: + _save_artifacts: ['models'] + ``` + +The framework integrations themselves determine where the artifacts are saved, +this is typically not configurable from the framework definition. diff --git a/docs/using/upload_to_openml.md b/docs/using/upload_to_openml.md new file mode 100644 index 000000000..ce50145da --- /dev/null +++ b/docs/using/upload_to_openml.md @@ -0,0 +1,26 @@ + +### Uploading results to OpenML +The `upload_results.py` script can be used to upload results to OpenML with the following usage: +```text +>python upload_results.py --help +usage: Script to upload results from the benchmark to OpenML. [-h] [-i INPUT_DIRECTORY] [-a APIKEY] [-m MODE] [-x] [-v] [-t TASK] + +optional arguments: + -h, --help show this help message and exit + -i INPUT_DIRECTORY, --input-directory INPUT_DIRECTORY + Directory that stores results from the runbenchmark.py invocation. By default use the most recent folder in the results folder as + specified in the configuration. + -a APIKEY, --api-key APIKEY + OpenML API key to use for uploading results. + -m MODE, --mode MODE Run mode (default=check). + • check: only report whether results can be uploaded. + • upload: upload all complete results. + -x, --fail-fast Stop as soon as a task fails to upload due to an error during uploading. + -v, --verbose Output progress to console. + -t TASK, --task TASK Only upload results for this specific task. +``` + +Note that the default behavior does not upload data but only verifies data is complete. +We strongly encourage you to only upload your data after verifying all expected results are complete. +The OpenML Python package is used for uploading results, so to ensure your API credentials are configured, please refer to their [configuration documentation](https://openml.github.io/openml-python/master/usage.html#installation-set-up). +Results obtained on tasks on the test server (e.g. through the `--test-server` option of `runbenchmark.py`) are uploaded to the test server and don't require additional authentication. diff --git a/docs/website/automl_overview.html b/docs/website/automl_overview.html new file mode 100644 index 000000000..e72f07c04 --- /dev/null +++ b/docs/website/automl_overview.html @@ -0,0 +1,17 @@ + + + AMLB + + + + +

+ The old AutoML framework overview page no longer exists, you will be + redirected to the new page. If you are not redirected within 3 seconds, + you can find it at + https://openml.github.io/automlbenchmark/frameworks.html. +

+ + diff --git a/docs/website/benchmark_datasets.html b/docs/website/benchmark_datasets.html new file mode 100644 index 000000000..f9b28623f --- /dev/null +++ b/docs/website/benchmark_datasets.html @@ -0,0 +1,18 @@ + + + AMLB + + + + +

+ You probably found this link from our 2019 paper. + Unfortunately, we updated our site but the new website does not yet contain a page with a description of our dataset selection strategy.
+ You will be redirected to the markdown file from which the old page was generated, so you can still view the old text.
+ If you are not redirected within 5 seconds, you can find it at + https://github.com/openml/automlbenchmark/blob/2fe3bd41768ce28387f827791bd57ef1a5a84783/docs/benchmark_datasets.md. +

+ + diff --git a/docs/website/frameworks.html b/docs/website/frameworks.html new file mode 100644 index 000000000..08315b7d3 --- /dev/null +++ b/docs/website/frameworks.html @@ -0,0 +1,957 @@ + + + + AMLB: Frameworks + + + + + + + + + + +
+
+

AutoML Frameworks

+ There is more to an AutoML system than just its performance. This page + contains more information about the integrated AutoML frameworks, + including links to their papers, repositories + , and + documentation 📖. Summaries taken directly from the respective + documentation pages. Want to integrate your own framework? + Adding your own framework + is relatively simple. +
+
+
+
+ +

AutoGluon

+ +
+
+ AutoGluon enables easy-to-use and easy-to-extend AutoML with a focus + on automated stack ensembling, deep learning, and real-world + applications spanning image, text, and tabular data. +
+ +
+
+

+ AutoGluon-Tabular: Robust and Accurate AutoML for Structured + Data +

+
+ Nick Erickson, Jonas Mueller, Alexander Shirkov, Hang Zhang, + Pedro Larroy, Mu Li, Alexander Smola +
+
+ We introduce AutoGluon-Tabular, an open-source AutoML framework + that requires only a single line of Python to train highly + accurate machine learning models on an unprocessed tabular + dataset such as a CSV file. Unlike existing AutoML frameworks + that primarily focus on model/hyperparameter selection, + AutoGluon-Tabular succeeds by ensembling multiple models and + stacking them in multiple layers. Experiments reveal that our + multi-layer combination of many models offers better use of + allocated training time than seeking out the best. A second + contribution is an extensive evaluation of public and commercial + AutoML platforms including TPOT, H2O, AutoWEKA, auto-sklearn, + AutoGluon, and Google AutoML Tables. Tests on a suite of 50 + classification and regression tasks from Kaggle and the OpenML + AutoML Benchmark reveal that AutoGluon is faster, more robust, + and much more accurate. We find that AutoGluon often even + outperforms the best-in-hindsight combination of all of its + competitors. In two popular Kaggle competitions, AutoGluon beat + 99% of the participating data scientists after merely 4h of + training on the raw data. +
+ +
+
+ +
+
+
+ +

Auto-sklearn

+ +
+
+ Auto-sklearn is an automated machine learning toolkit and a drop-in + replacement for a scikit-learn estimator. Auto-sklearn frees a + machine learning user from algorithm selection and hyperparameter + tuning. It leverages recent advantages in Bayesian optimization, + meta-learning and ensemble construction. +
+ +
+
+

+ Auto-Sklearn 2.0: Hands-free AutoML via Meta-Learning +

+
+ Matthias Feurer, Katharina Eggensperger, Stefan Falkner, Marius + Lindauer, Frank Hutter +
+
+ Automated Machine Learning (AutoML) supports practitioners and + researchers with the tedious task of designing machine learning + pipelines and has recently achieved substantial success. In this + paper we introduce new AutoML approaches motivated by our + winning submission to the second ChaLearn AutoML challenge. We + develop PoSH Auto-sklearn, which enables AutoML systems to work + well on large datasets under rigid time limits using a new, + simple and meta-feature-free meta-learning technique and employs + a successful bandit strategy for budget allocation. However, + PoSH Auto-sklearn introduces even more ways of running AutoML + and might make it harder for users to set it up correctly. + Therefore, we also go one step further and study the design + space of AutoML itself, proposing a solution towards truly + hands-free AutoML. Together, these changes give rise to the next + generation of our AutoML system, Auto-sklearn 2.0 . We verify + the improvements by these additions in a large experimental + study on 39 AutoML benchmark datasets and conclude the paper by + comparing to other popular AutoML frameworks and Auto-sklearn + 1.0 , reducing the relative error by up to a factor of 4.5, and + yielding a performance in 10 minutes that is substantially + better than what Auto-sklearn 1.0 achieves within an hour. +
+ +
+
+

+ Efficient and Robust Automated Machine Learning +

+
+ Matthias Feurer, Aaron Klein, Katharina Eggensperger, Jost + Springenberg, Manuel Blum, Frank Hutter +
+
+ The success of machine learning in a broad range of applications + has led to an ever-growing demand for machine learning systems + that can be used off the shelf by non-experts. To be effective + in practice, such systems need to automatically choose a good + algorithm and feature preprocessing steps for a new dataset at + hand, and also set their respective hyperparameters. Recent work + has started to tackle this automated machine learning (AutoML) + problem with the help of efficient Bayesian optimization + methods. In this work we introduce a robust new AutoML system + based on scikit-learn (using 15 classifiers, 14 feature + preprocessing methods, and 4 data preprocessing methods, giving + rise to a structured hypothesis space with 110 hyperparameters). + This system, which we dub auto-sklearn, improves on existing + AutoML methods by automatically taking into account past + performance on similar datasets, and by constructing ensembles + from the models evaluated during the optimization. Our system + won the first phase of the ongoing ChaLearn AutoML challenge, + and our comprehensive analysis on over 100 diverse datasets + shows that it substantially outperforms the previous state of + the art in AutoML. We also demonstrate the performance gains due + to each of our contributions and derive insights into the + effectiveness of the individual components of auto-sklearn. +
+ +
+
+ +
+
+
+ +

FLAML

+ +
+
+ FLAML is a lightweight Python library that finds accurate machine + learning models automatically, efficiently and economically. It + frees users from selecting learners and hyperparameters for each + learner. +
+ +
+
+

+ FLAML: A Fast and Lightweight AutoML Library +

+
+ Chi Wang, Qingyun Wu, Markus Weimer, Erkang Zhu +
+
+ We study the problem of using low computational cost to automate + the choices of learners and hyperparameters for an ad-hoc + training dataset and error metric, by conducting trials of + different configurations on the given training data. We + investigate the joint impact of multiple factors on both trial + cost and model error, and propose several design guidelines. + Following them, we build a fast and lightweight library FLAML + which optimizes for low computational resource in finding + accurate models. FLAML integrates several simple but effective + search strategies into an adaptive system. It significantly + outperforms top-ranked AutoML libraries on a large open source + AutoML benchmark under equal, or sometimes orders of magnitude + smaller budget constraints. +
+ +
+
+ +
+
+
+ +

GAMA

+ +
+
+ GAMA is developed for AutoML research and features a flexible AutoML + pipeline, which makes it easy to develop and evaluate new AutoML + components. GAMA's benchmarking configuration features evolutionary + optimization and ensemble construction. +
+ +
+
+

+ GAMA: A General Automated Machine Learning Assistant +

+
+ Pieter Gijsbers, Joaquin Vanschoren +
+ + + +
+ The General Automated Machine learning Assistant (GAMA) is a + modular AutoML system developed to empower users to track and + control how AutoML algorithms search for optimal machine + learning pipelines, and facilitate AutoML research itself. In + contrast to current, often black-box systems, GAMA allows users + to plug in different AutoML and post-processing techniques, logs + and visualizes the search process, and supports easy + benchmarking. It currently features three AutoML search + algorithms, two model post-processing steps, and is designed to + allow for more components to be added. +
+ +
+
+ +
+
+
+ +

H2O AutoML

+ +
+
+ H2O's AutoML can be used for automating the machine learning + workflow, which includes automatic training and tuning of many + models within a user-specified time-limit. H2O offers a number of + model explainability methods that apply to AutoML objects (groups of + models), as well as individual models (e.g. leader model). + Explanations can be generated automatically with a single function + call, providing a simple interface to exploring and explaining the + AutoML models. +
+ +
+
+

+ H2O AutoML: Scalable Automatic Machine Learning +

+
Erin LeDell and Sébastien Poirier
+
+ H2O is an open source, distributed machine learning platform + designed to scale to very large datasets, with APIs in R, + Python, Java and Scala. We present H2O AutoML, a highly + scalable, fully-automated, supervised learning algorithm which + automates the pro- cess of training a large selection of + candidate models and stacked ensembles within a single function. + The result of the AutoML run is a “leaderboard”: a ranked list + of models, all of which can be easily exported for use in a + production environment. Models in the leader- board can be + ranked by numerous model performance metrics or other model + attributes such as training time or average per-row prediction + speed. The H2O AutoML algorithm relies on the efficient training + of H2O machine learning al- gorithms to produce a large number + of models in a short amount of time. H2O AutoML uses a + combination of fast random search and stacked ensembles to + achieve results competitive with, and often better than, other + frameworks which rely on more complex model tuning techniques + such as Bayesian optimization or genetic algorithms. H2O AutoML + trains a va- riety of algorithms (e.g. GBMs, Random Forests, + Deep Neural Networks, GLMs), yielding a healthy amount of + diversity across candidate models, which can be exploited by + stacked ensembles to produce a powerful final model. The + effectiveness of this technique is reflected in the OpenML + AutoML Benchmark, which compares the performance of several of + the most well known, open source AutoML systems across a number + of datasets. +
+ +
+
+ +
+
+
+ +

LightAutoML

+ +
+
+ LightAutoML is open-source Python library aimed at automated machine + learning. It is designed to be lightweight and efficient for various + tasks with tabular, text data. +
+ +
+
Paper to be added.
+
+ +
+ Alexander Ryzhkov, Anton Vakhrushev, Dmitry Simakov, Vasilii + Bunakov, Rinchin Damdinov, Alexander Kirilin, Pavel Shvets +
+ +
+
+ +
+
+
+ +

mljar-supervised

+ +
+
+ The mljar-supervised is an Automated Machine Learning Python package + that works with tabular data. It is designed to save time for a data + scientist. It abstracts the common way to preprocess the data, + construct the machine learning models, and perform hyper-parameters + tuning to find the best model 🏆. It is no black-box as you can see + exactly how the ML pipeline is constructed (with a detailed Markdown + report for each ML model). +
+ +
+
No paper available.
+
+ +
+
+
+ +

TPOT

+ +
+
+ TPOT is a Python Automated Machine Learning tool that optimizes + machine learning pipelines using genetic programming. It has a focus + on optimizing models for biomedical data. +
+ +
+
+

+ Automating biomedical data science through tree-based pipeline + optimization +

+
+ Randal S. Olson, Ryan J. Urbanowicz, Peter C. Andrews, Nicole A. + Lavender, La Creis Kidd, and Jason H. Moore +
+
+ Automated machine learning (AutoML) systems are helpful data + science assistants designed to scan data for novel features, + select appropriate supervised learning models and optimize their + parameters. For this purpose, Tree-based Pipeline Optimization + Tool (TPOT) was developed using strongly typed genetic + programing (GP) to recommend an optimized analysis pipeline for + the data scientist’s prediction problem. However, like other + AutoML systems, TPOT may reach computational resource limits + when working on big data such as whole-genome expression data. +
+ +
+
+ +
+
+
+ + + diff --git a/docs/website/img/logos/GAMA-icon.png b/docs/website/img/logos/GAMA-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c9626aa28c3095e61091db865d1324f33cf37288 GIT binary patch literal 117679 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%0Dv$UZ~g1nM&Q67Py06kGjkI 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

Rbutu@LT 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 eZ^OV}x2RD!xu& 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 literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/GitHub-Mark-64px.png b/docs/website/img/logos/GitHub-Mark-64px.png new file mode 100644 index 0000000000000000000000000000000000000000..182a1a3f734fc1b7d712c68b04c29bad9460d6cd GIT binary patch literal 2625 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 W4I>>0bz>}E>ge79vbNS=9n;FC~MOYyq z5Qu5ON?Ne?^wWKYaP5AUm;6k7ER@nCq#?pMX&OrmLdYE9CJ-6GXT^iTAd9m(`4;E} zfy}Yzg+@pt0@sk(LOz-_L`>RbTB#+~b3MT|& z14UGj%UhW)21C+=LfPqwY$6Bc>x1-?k+cr@pp=D_@sk7+lFS?R)h|hV*O@UW6`Ai_H`049j)JozV)4d8r`BUo7M!zgCCD`;G!S0dV&q zp8LL%~Ba#6Eg$iKtZe$N47EeRXa5>+}e1_})f4LZ~7>us9|I_MOlXiY|*KdQX zeS8~zP@tW6v39VXfr*USwp~rS`=B$j`)nk?@}kq(ClF4d>YOz8hkr;=W~kkm zCW7a<(pcz5X#A0R<9Z{E*BfJ?`u2(tHC?l!+(h-PRUM^q=-1CbjbNI^81U7VyU;3( zT2f^?#ma%q8;EN&iz|Pk@=)pdaMq3d25mbDNrIP#bi|hqP`3*fT}kuvR+%ng#;F!o z!3#SBB2F;iNzfJ(L`*fNFT`NdGQiAH|Ej|Hc2f5bF>p2ufwkUZTFe}(dJ$`MX;C(0 z-V{r-E2m(c5BI}drL(~k6SEswne#fEUdvi&3FiZh%N)80&$C_2kh}Zs$!WSMT5)2L z->t!4_PuW(@0iMUf!tM3EXsxR=8aqQJS!tI77vxXD$Q$NZ1vCFp)TCJPPKgJ6$dq6 z6AvwIT>T_kTfhs9Ro&hblgcP`#)4Y!f6RfcKKz5}fFeLswhx__Ru z`f>qsFw=AMC$D2)!n`KC&FVyxLH=oq<|UuIL`hLk2jvOa!Qq_R3CqNXSp|NlZhBlh z@V0BxvHNAmtK__)^rv^SNw9j3M7}#zg*ToWtbKT~2{x#g2)k9TC|R>Dzhq!T-pA~R z>ZL3u2sdInHHePlU?n!;#-16SNWGJd=j+gQ4vI}N_YbJpa3kc$Q-$nCw8DusXXMl4 z*nJS|qzj=rNJpZI; z$vRbg>YS|lmxjj--{P0zyGBQ?yoS4%MX$EkOMqE$O+Pm%_1o-3WM-q=b4f2dQfTt> zOFR@zTq!4JBAQzKEZEFs#YOE+WUR@=e`!;~PCh-+ddeAuP%>I*Cd8Cb%!1YNZFKDIJTra-- zG#+}%TS;ZSZaqDK8^0CL=AU{B|LU>Hu0mU~}a9D5U= zlszxG=SokFC;8liaQHBlh z2BUO}iYG`REj!%$Xj-syeaVfwq3hF5*L>e!Jm^2?Jo?@}>G*`TrXZHmap&CnfJ4u^ zk68!bvsByruv+!zzl{#!R8}8y9^Ra-sENMbl68A9w_o}?z5eO*E&If08t#Rq+K#s{ zb}mq^_${jVjmeHhTXNWUoFMIe)lJ26`vXz zWvk~HR@whs?OF8cKV8YyEs1et|A`i*;GS`_+RH=ns17TKJg|lJv;Y(H<+2}hIXsat z5ANw;3-!HT?J@e?t>VkCV$sSaXTfoVh-!;h=kN@TPi^X~Dlo@yIP4fl2 z#pt2|1Jj>Ov$71^ei~h1H$uM|R6wY=ZG3Q99U>X|mV`BoS9`4vYw~J@(FazM_8hI9o-&aIo@yE| z6xi92RAt7!kM;6HVQV)mjXu!6Snn}L!YlYRm7CF)XL~-WsBd9Uk6GUDFm8S4@oR}s z!f_@&&0G2FHTy?nQd8F&@&}*SrC)xRgU!h6eepUXk}}=;?q@wX1aZ#AJc}avS@*XR MKo6o-Qerdz3wwRZj{pDw literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/LightAutoML_logo_small.png b/docs/website/img/logos/LightAutoML_logo_small.png new file mode 100644 index 0000000000000000000000000000000000000000..8d268e3909296f64fc80291333cc34a1d9daeac4 GIT binary patch literal 214460 zcmZU)2RNKt_dYBU5(EiRG6abr$S6@qO+vH@q6ATcgBiWIC`q*F(M9h=^cXE#^eCgZ z=wr+vdhdJ>$$8)R|NC6moOv=&+0R~kt^2;$TKfdPQj#Sl1`*@o;gQPANvq=F;p2c0 z&kaK0m%{7rRCstdjp0&KujHkqm|of2n8Gbh@bKgUV>GX8sdZ4N=%~uWKHQKastX(- zVq)>7e)jY$6UTj`htaf@AA|1csoSnT2r_x0`9jyxiQpgbr>c<`rTeWPgT4h3&~ey2 zzxw^CbH8UFl`Lu2bAtE>H+>h+as2Sf8-}kWPwSCS85nOjff5ti9ysCMS;PaUksuGR z`h`%^(2%Cx+&PaH(!|U7&HX*Ms-E$@ID`8R`!zhKrCVmiR3AM)CF1=ECV1j@1+V2* zZe@xplbRuK3!yzNQwyKEuuf=Po^1}uX0=j2Wa0TF9^RL>g|4zIebyh`HPV^rwqTO) z$6j+p%U$W?eJ}iq2}g2Y$=6lO>+B&_3Vta*GVWO|zL7IdGwIj)Y%l%%!gks9Qjub> z`vD4fzKNY7&&&AFb+)#n@g-K?W(Hy-Hou-2k``l?f>aGbEqVjp@mjA7?|ZS`{<=(t zr$EKY95u9;oA1+OR40g_N%?%~#85aSvAL?|#5-M~t{NqAsD6G*AXlymjH3JFUG?=1@{ z%e0@0pHwH_YP>MA?tUMtd$%}fhR~=&4s<&M*FI1-kKP2mdsA=3WKbae7~Kl9eepq< zS5=SE67hb9vEg=$(*t%k_w_Np6O*8qKD`f?;p1V>_Le42B}%(-LK<=75#fU0PI%DM`$OKKp|7c2 zO!?l(5^otU*Bf>cpRT%XRDSc0b?no5;)*8_xn4{1w!p0+dQ~JoSlYdO9ON-49)QJ&Yo|%WlH);xuj;ZLf zKQg(&5lY10;UXj5jbH7r%hvDqo__6lJ|^pF5eRPCGh{2t9AjT$ z(jeCwyIpWaH29t>x=~;!&6||eHF!Oojb=-(e!G42K>f8US{pOIbfm&ZNGz>JqD~hg zDle$W)j>^DBD}%LWVD&}5#6k{Rt`Ak zGeq#l_UWy+Ck!0-ARA724OiGSNusx&my>CV-`KE9!*_}1<+(oc1oJqk``(^naSIN6rX(W_sfYz2K~eI>(d>T2YjF1G?Q7Qjpk|^V{64e6w{3i2KnFD2m zmhn=q6>+7OyTT+cA1s6^l$!_+{_&u$r!@#z|FOJ5ee%GIX1z_4a`BqlN501JAIu>v z|4`=KQn-Qjwemgn#n=it-I~4?D9zfRvWV|u%)uKVoLm)O^`RzWgk$GRuE2OlXwp1Q6N;G_1Pbv_<{0iUj0JUHHpCt-XdH$M^X5sLZH z`#kY6xT#J0ophH}oHU9Q0nz|5Jh3!0dMU~p{-s^FbF!

4c}n@`l+b*w2jnY$BcXQfjNOLQa^p#3eW&VzJZ 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�Egv)|{t^FH)$h%Y{Xlo59qxtY+(lpB zUe?>rrw9C~Lt-!U-|c;T{Jc{U=TNINsp)lxo(Bf-@@_sL{8GW%ieGlUuftjt&zbdp ztneNRDNl*SEX*x{cKYSWK1j9oe6Bmy=>idc@Jngyv*UKSlQ3h1mKSz4Ki)!VOJm*+ z^Ci|DrZ;3+X#F}zmv*|OVX>j-os`N9Dm}XNgmwJh6Df&nfi_(Nq%Z^XvhSyPTO8(h zbquUb#Rn~Kdzm#sUZTGS#ZjIvT4$C8kA{~$%xvC3VJ|Z(E38zH-$*%S`k30ps^cMH zJ|!B(tn_gwAErHy-n?3A&Dl(@rz|ujP|yKnz0uk3 zix#X8nCu&a98htIj0H$>?X`DAh1?RxKF44YElqsj+C&>?rv>rJLsyou-2@rN)~64U z@{cu9{E+XJ<(dmOEV~BfHk;H6Ks#XQzNF{4G8`mdg03zC$wr?+-|9nZj!7-$)+cnB zgYe`3Z=2;(7{Rj>5e$Uijq{#TuV=*j#z~x(t7pYzEEv>;X(N=t-uATH*D_O5_Q5?QEe*{R|L`B(u zXK?(8b$=YOGsmj508^A5K0^gz;@wzgQYxYK}aL9LeM}QKpa^$V^#Q>o>;8WV33ah5Ww3%ES4} zD2NF#_VF5Oym$Z2ryaTd6@^!9-B1?-8lkriKU#%vmD&S>DLR`-LZ5U79QtLD3x;tP zK!9s~>o^abBX&yDLS2%c%>+X|FYFy^sX=V?0q#K)xTzoW9J*@42bMqyzL&8ry{eG( zKG+(ta~f_UWYumn)Hcp`Pi=sUd`|{-E<_b*%Yjf>rtXcOXqLYv@Em{ zs5S!t$6|8T(qu0fR_N9@gllf4X^+Cx=DlanSjo6jfYacTXOxipf;->~_j)BaQgCJ#x3?u(4(|Jxh8=4~m1TY? zD_Crr-(dhsgc$v&Z%&8AmK|&jZn16w1x+Ias|{m)6eH(y$61`e?sGG|Ei|-fjUV(pJz=K#9{> zIItLy+5;i!ITkWAeeZjVna(Wits~NI5fxOjL|&!615hiAqXKLJ%a6=sa%Ma5P*a>U zrZ!z*Rfir(@3!Mg?c7=ziM9o>q8ww$Zw1uR1-$Xp7PD`oT~Y0jW&+x8k0r3(G^JWd z>cqk|HGF16oQp<|Mp+%8@AO*PFE&wZsZ9eSSBrAdFJ1k0K{m#gZPJd=l2yK5Gy40; zCj;i2YL6qGak6pQ(m75Yv!fZ$L$f?EagNu$VP#jeY=$+U+VIt4K`*Or8`hKruSz7k zr<^43(mY?S2$QFg*iYIS>z~W~TJr5481_JW$Yps!tmkXjrIw(VU*I%%IToa|c^;-< zEDpr-PHgDUvp8F^3N1hzC&=FoezV?Y=Op0v!ksc2r-SJx$@{tkxK39f@b9#1u zi`W!~0i2Oi0gg;A41PK8!^4R-KPGYF+S_UhFtWT2MBdquAxZ1|3s+l!vf{mlfzeu>r~Ot_6# zTWxcELBsyCT+t`u{A+tmRfV|GXq&9CSM9VwiE)vOKc#DcQ3qUt?b*+dHb`%^3jclI zxuAU?0PK1Fpy2cB_j$21b!RxwiATmv-k<{7-%F3(uJ{2n*5P!%y4Hd*7f3k@e6pX8 zdP;+dj0Q76i{3A=%-=2x>_93mgR*32_l_esfZ=GueCtJC}S z*Df(F1Iv;@-LIJtg)KOR(<=XCwf}76ASpO}%zy8buF*?l=Q9j$!=~>=SZy9Ms)0wD zpW%0ioA@FQxKXdwKdH!}rP|o~AEyHf*jU$u27%e)LTN4%Rq<_)-%(&Ly#P2tfI~iG zZYZFxefTGT&G7Fl54Cb)m_fGI<;M(!pGY}~x57}wT-m%0j1Kg!TPu;!cY#wznfqdp zlLkJ0NsphsT~O`wt$Gw-!%~3$J~xJV(Mw?dhacw<5y$UQsan6cr5J2@WUZzVr05=Q zwcKDR?rcciMVO_EXte7tmGQx|;+|Ov=)RWb1DagN+aCKazv(uRE+HeQ=Irx@K7!Mg z*fl9p@*dQ=i{~dLD9yxsR%n}SI@X={zk1D{igtU7Jjci9@z38Nyvuj$@+B8Z*B0Mr zoRi(QDNhsi-jl2fR*S_`;0<4R)f!>s_EH*Ibaq-E zn2M*lPWbUHScR||I(&53m5Ng!S$&S2nml@BefiSNt<%j|=1+Twr(;g0<+na;KZsG> zYc5zO#SHHcyGxmgiCq@#-xIHhv$f*Per>D*n`Dgr&4>X$>kH|E2!6O6&LyTr;Wgb+ zjzPi zVxhL}KOVUxJA2sInAi0W7Kju0#dl0+D*{~&x;2NO85zzUqv^MC+Y9E4* z*sZQ))x7rnNhRK_#L2>kB_Y5Ux|)b3?qvzl7;pF0JEALfX^xEi@|fIvcVj4=+sBR_ zvr+#0j@Ao-M~kr9S@Qg@%~7cG(&b4h77;4G{z|<947}|5xF^DEi$#iy1=wAWW=Y|zTel`& zAf+_l9MK*-c67v&KiT~+8-fM*Gx@yQ*rT3HTkc%X|7d=F-S!*o66+n-GiR~Nr%w1k ze~gtzyy(uMD#?;~Vg$LFThq=&E2(zB5WOLMJwWiWR^Yv-dd#Puv7A0-;xl%nEk9T8 zwwX59yZEZKa%tPzo_kvdNN2Q*N-8CaM##pV>Sr(SKc53q)r=GBZk?f023UseYdBd1 zhP~Okf9%=|C)Hp+wOo}Fal|!lWnF)RN!PW|co=x&m!3C@xKz{C+@a-S4w6~>k+VJW zN=ZR(K$Z9*_eIXe_H(ggT+Wt5chW!wO?3! z4c{@u0iOkLKrs@^cv6r?Ex(?r(!2h5W8tn*sMk9&|Y zuvYknj;bK%biQqpC2Md#1AX=^4?{^qq~T=G#t*K%l(8}tq2TF5i-&$mt6^h5iDC!W z(B{Qj?(!_Jmn`*4(>!|1eI<O0wV`j#@XrY4>}I`(+08@qm-fel!&33c{l`p)W3FI{V#^`MKvX!cV!W$iA2%yK z?J^Uk3lJ(53v1?qrGXrAQs=-){le!T<$|~oVf|B|Ovq-Co?ftTl ztad$({j_M*X>*KR@qoIhT?A(cYzby8_~M2yExcCGshI|8;iPJlskzSoRiyfBrtV}z zL5)?=&%fjW8y61|4H?a1u=iY+?Bh8L!9+AlEN5LI*EsyHi|!#%uP}ma%j~st^EfR! z%doWYtGA3v!WsH~2=^{KdCK$VYv;kzlHu}2Hy?^bAs(!lYkdiK0W$4)ne@l1U#+)&@)p8do2u6)#f2s4_>Lx>gbiH( z#7}t@MpjbNXFp0j53W~?0}c)04OPW_Hg)EhGYt6XxjlacOfS{;#v{)4@t6Rk+p~6> zA+@oS0jD2MuYmF%yc>U-wPwv`I-1MzZ170tZ<-G|WZDYw3|&04Tv1ipE#lg!QUe|k zP9PZ1$pL`i<^0V*j@a*>43a-j=kZst{0i*}7v}?7`JFq&l^VL*V2_OiO7FuRnAB7v z7h&_IM}VSyFaExujm$D)2#suyb40fun@^4QP7zmMsDHoO&E9@ml(KSZT~iHN?=B#{ ze_t3g7QujAmB5u&21&k^ePO_K_aX?pK5^(l3=N+ zR}6Rtih5J2VLv0re)gtgy9!Rwc#IwYdnfqPQ0JkKMA=u@>qEJw%_n3sGJ_{UW6NWw zNw?x67#f+j0wD#hX2X{&oa%a0s6xE5ab1MW{-)?SXF7>OG3U=BnV0Gaa}5NTNPlUI zd*G0c`>fkBax$V4*pb(eE4B(&@HV&vs{0vdj%q`--tor98a?s%gT2;NEN2AO?e`si zQlSBhGRPYCSDkdh5^$0!yb)vk)z$0sZ$nAn*ND)LVq>$>{Z7RujpJ>r^%IG9E-Q#Y z(;~|cdC$oky;5TF7k4kh2HeD~UuN#8iT6GA+72|6xhk{%x&0iV;8eonfGb~uirLjV zh^idbu5!5TdE~qU#ybquJ*mJ^AGY+lJ%8;ukyeEsD03*+A&QqH&}76~oo!Yq>W)|H zu{hnR^S=f}DZnPdg7}M*%{xG(SQ1KSTi2!0cx2rtyD!u+6yOxr)%N{kX)kg7v}Z(S zuLpxKsDWzItugXHxt`nmmc3o?ZOSRy_5wOJ?u4evH1IN!94q`y2dD4d@RcU91%x(@ z18*eg^=^wY>@t||#y$9@DJhy!XhhfUevD3jg=(|2%O!I-8-K_T0}?vbJcgoAwOt;i zl4Id+E+0BrbWt7q5T!yjav;+A@uGfPeg2zS^UMuLir<~pJTtTt4GhsDSkl&@b=<@K z^-u{S-tFQZX!KtktF~EDWshrsnb+HYnBz0K#c;n>PjA{1s z+ea`6NHo1!*OJ*?C7e<}6C}Jg5u?rR3_Uwb>tv}tVF^v-5VArqP>X?4&WErNPH)${ z5H<27g#u`b`#iA)apJB9ax1~t_N!|9fU0QySW!r=S=)GO^@{Awinh$k=ao*{G7JMA zS+-{nuuJh#F9yT|3Ca_9m2BTNN5blt{iGR8bJ51GfN>Ga4_Ep%3(X0C6Jq&bPn+os z;f`=mWbLwfo4mws26L^lld?p!WF>#Hc%;Q)l+hX?#|U?WcBRIIs$Ups(-PNAzrX(; zYghJPj@^UkcN$aBY9c-V;}HeEYdh#Hhp-*+F24}}S<6`FML#MXv>aEtXk|kOIM%jZ z-)j|ozTENUI~E~jjxkCLF?E@1NPfsA&^&bZMWr+4n}eSbu+#P1Yt;%B+Z?^d5XDwU zi!4I;%0JICDlef92gVQzR%IlO@+{ocQLVaNDlx3R0qWCL19~3es!eoAZ2rDbv@a*- zC!#@_&?^(cM>cNG6fhDp>S3&e9)&~X+%*M@gb$oIq4Tw__8+eyau;UY@+l}RxQ(A? zhTmz2+sB1)BX!a5bj?bqrG z=6Bfh{B~PYq60>aeEjIXroOU?=-gKuDWAB}7it@SFmZLw3vRu7V?^pK`Ci_ddct!j z6<_SJeIgqX;W`X%!|Mo#Fr_?;U6@+nAdf`DmjssJi40d^r7X{gV*Q~W@wT(w4Y-&Y zA!&^NkD&+MIN4Ux^dGcTB5Z&D&j}`M0Vk-_7`!= zq_mmhttGqK-(k~R`G0>32YQCQ{WkIKDn(U{$Q$hi(?Ck($rA?M3EI;;^@%f3iTB$1+{XS zOo*G|{hdyv(6x$~`AaxJ*J-nba%m7Rc>ruLcYI01Kh}#f-x=p}L;5HX+1(qec`l(} zbJHbja0d$)zA6zk)Mi?xEVWUz5N>S1+0eRLg!>pDY=yh7lqGNbY3vKK!!=?^R4q0* z1-cmR#W$i}F2K8Dp8mev_W$Kz4M=Gge^g%&ov4z>z4nFo-M>4@5U=R#ThHb2^G>UC zJlwYGcq|Qi&_9R{lpb; zplxNQJ}A^!7_CRy0uiL|B4D*A`zcAo2gNCb7}uEk>$SYzyGbya(gspP)~HD@b`P~N zw3a#LgN?%#NNUR)yb+eTm-pC5w#)occBXZkL2Ai_Yv|5TAAvD;Yb6vLMv%3y)V#$+ zHg2c4gvV1kf=Oi})IleZxy+|t>V*?Pgg%g(BG71}1_F(BQ45DPH?AofoMD)nz(fqm z=zJnQ25(yMqzp@Yh|RGFG(VtC6#I{S1`a;wnl*hyI(a`c>OS>r79K86S#~3rMzzN~ zcSIV@Cl=4NsMP%w|Kmqyzx~=$jkBPu6Je`qHv5chDw;S+DOnj2tg z0`*DSMGO4mbQaT>smdjQHX(Dp|{eTq|zfebis_inJ-hc@V`g)ovojg7@z zcW%TZ<|MPAhYU57u2#W?~%TO4(F&ccD|Wdaen^ zqv4X-JJ5I%UjQlu#Zg2AdV)g*&x2V}JuySs(y+MRdOKW3CA)NudZQ}aB3}3CyRs2U zM*N4N1m%$lcZ9AXh}?3EdKGTv0|w=}6er3JB1THIOnp>@Z#82bU?`PC^0w!4>xs?H?=# z6su`iWw_bO{Gdxh_&Tm{c073@4z^725IP1Z5FI!eHXXWg{4^BSw%mH0=7enq56LbU zR~X|Ia72EewtNe;*^x6z5g8=|`BN*D z9dyV4?YC3!F+e?ycEDt1(%Kn3B%PPwQ)qd)K>oXYgwL7AKFe&yJANRt-BTx5hkVfu ze=_^ZKg-xIgik=fEI|eqsd<*w{a57tvOXi8>|}JMy^xSTdK212lembH+&OeYSncP@ z07aGm2uP^*>5DNOzRW6}U*!X%WVLOuZ!*OxkGxG_NfOtqwt-ee!uS)daRlG01)1q7 z&;HFDVr_z7dY_aJX5E)kI)8G5-6qzt_hlR>;aOvdqPtqs6W4i$iWN=H^;I#7ZIJAY z9GJKyilR!{Xw$XgTNTE>0P(=Q?UIhaSBkcx)Kj}drbOs zP0i;BF@mMf=QZSYtUXR>kjFPuB!y_|$7D_i$T_rZ(q>(RiSkJ;heS7|uKz2{*Wa=( zoqf;qp*DIlz_kD%DxkD107dtj)np3QRyHDY04o^L!3GeA+yV+SLtVp8;?6JW#)hFL zx^;txm{j~(T)Rw}CPVZQaF`Zf00G|wSmiOS1o8Kc9e=B7bx(7EV)9n=_J_x#zmgA4 zW9Af+jmQm`B6F_>zj?x(+#jV%#->F+ib*}uW+)efd196!{pA-fi;UvzjamC5AGlNU z)?y3-%^+KzTJW>5RjkJ@zngB3pxvp(&-}&Bs8bVG634R?B4rczsC}pbkak5F({-K6 zkqU;1oA;&YqtoC55*eY~sq-s48s}OH*kKX=i!~saY8ZW2Nj<&Wjm2smJEEds>6z&< zns0{iB-pJhzYqLbE2N-&GYwX#)HDw_xbspD)oz;Z1Zy_ks0UkUnW>+r3}aVczf(Fr z=!~(ReoO7edYsk}M^x@li_|JG$}$^md}H%2-x?5rfds(>C>a^SZ)0R{u!q}9(|^J8 zn!+hpu>!2x-T}ztGLCXP{tWQIGU@|HQnfUkmN)Z;zE*N;X6=1e{R4T79!v7V-XPp*bLH5})U;o$q+n zIumo>=3Lb$%a+S#{Dp}L^A;E~sC-py6MMgDJrv3+8hOIq9p9$8!rxbj_#Q866YW)3 z?`UYZuBXkd3%#XT>)N7&S>n9NGEjEL6vD#eO}&VqjMlHP+82dq&E#rJ2TkWrr)OrL zqHX9w>$&Au-(v~_qf@RzPLC$wSGMG4HXU9%Tcl8%NmyBG2R*b)Z2*k)sof1ME*xnf z{5*P4Hx_-msnN>2v+dhB@=gVq6lYL-2G3q*!7y`rL@1jyk#=mztsM9;*@Bt3;@KUH z9xGlZ01LE;T7Rtl7WeGiJo&1pY=_hvD1WbiO9T}@CJW?(myP_B#-Ygul889A?C}S- z7-3d6^uW}c3dtw1_v08&_}GhirOAk~FSyRKV0Mk6G)@m_(fjt@`aT^)AbCLrjNuGa0eylYwIM-8mCmh?1L%)l-o)uO583FB>5NnoFu8LHh zMNFz3hn!;k+i6#e3ZhzTT-prwV|)+?9~$kXes1bpf^WnGcBGf_z(lb64mHsgjz}bG zOYB2IXJ_Vn-Z`rLTGEMWDC`{mAC>~28M|dS(btegeRS}F(>{u?*Q5nQ=DdLGBLm6P zaM)~D{Go%(IGr(jFK8DcA~Go>xhH-`)=E>rABI90>lTCXr$Giy^XfHktqT$Ij&rvu z>A7;4AfT`MNt5tgy~9E;uyzsEYx~{zXXsUdsD#Sf{{^f=jl%Q=w3P0 z#qb5lGPQN4dHlHcrXG&vJDxgZAGfGFYqkO$MuYSTcN<KiJV&CbMWG0@rc zzvuvxg#ha7@_&5c2HZ7SGPZxMp!bgJFBtU~^r15GS)BGl@+IO{ag*s-25n<>=-YT9 zU%q>AY~2NuVA-t~6}RXscr&>JvQO}E*tc7p&o&HFJa}{?K8lg#C6m|yo4+ybCk{i> zY)aZmM~K1ZOs3>e_cD~SO*ACW(@W*%CahnCg|$a*Uutej z81T`Bpn>I>jqnSj_ruPj-a21|={#({H=jH%D!XGYt{S|0tu!$d?Sd_?2&qi$T01TX zi!uc6)Gxzlk2GIJ;E{NR$yYPQha-{-)zg+*UvyRq9@>_Hk@a+*E3}?JWj0#Z9n}={ zJzEnjPup?YFVEZTmc;JrIQFT2ygK8?E2@~nkHiZ8z*x0>eUFpP&lzektuuG?Gp=>p z;NT7SrKHRzl_6+?!m~-E0o5*&4HH)wNB}MCAe^F|&ZD?Dd_))tEvOvP-Q#m8p z1lw+8o_@7+3*>a_8&NjJ)5=6-b1R?Q-8k#QvHrF4(9Vd_%`{nv+uHw)>tMq^7>{mU zLE6u47N$$r&1P7UrMUcL|DJ$J8?Lbs&ziYKNtmr}1E4eZkxXm?oJ;Ig8n>hvJTSsy zyRJ%4vH^W1D98%;Q=Y_z)F3I>J!~aR@M(gbP)}a+dOxt4e9ag9S3q>rg<8_Wd2-E* zLap)wIgto9zD)l5h`p5Ea6JLLvHSMl@kkw0Nz9zjG{|=7LGw*r5_BJ;2g$*pfolth z^zT5(ca{uD`@CUvJQV@p!PZ*9Ef|`*>&dtghq_zUO;$MJn9qMwIFJzo%1Hd>>7Z4f z=qZbFF;24mC5**xn2abxT8e$3suFmEBG!_z5Bg+bsR;YkqyuEUQg7QQQW2Wf2|S?{ zIqliSCBhQC#Y4r1IV=B!XQG6(gZZ>Uy`dpgMnoBBSB3`{>VS*kB3FPQon?HLFOK*b zreJ>v*}%epolvXSC@?~vq3r$gEl-Owj9~e|u`X2DhfYQ;-*S3sJ-^$IpB|?ukOD>PRGG9+kK=bD2ZpzeE>|2Il<}3|>NJ4oB!u!|v zX?91^V}`aI;~}bsmVb|xHUn0~7HW-Ze5-)Us9kOAl-0jJ(ftu5lyy@Qz0^oPnGgL6<`inEBcG-RV z704&{@9vCjCpU=TzPjoS0fc;!-WV%%<4f!wJIfHu@e0o^Gf!3qnU$&>z;W?~G_MXS zFI!$3xo~O3Ub>DB+j+!>6*5=DH?ICE@~#2qeCeeb>YT5IbcEfG$x4JSFuscWBrXd7W&+pc;nb_DMwsD0&Z#ByD( zk9zA|HrAOFANBUg(EAP>2w8(R`Mkn;oy=1f=E%7jPxupzu`0}dPaBNOd>DUagpv3u zaYfPUv8J7VHNUpa424M7x4-|jDnGMD6{pv5+78GKBj85ovX9)ZBOPK^IiENpW9X~9 z7<;tLuWaiEOi$y3x6nV8iApI0Mnsik%YBXv{Qws)N$_l>CylgxulfuV)Lod7_?E&Q z?_klWDo^u5*!*`TZ|Zsu3f3bDP_H7_TijfA+!j38ai)ERlhRi{-12`$&# z2n$*X)89T~uwB(bz++Hk>TBl@9)bB_ZI|CHX=M%VeU%x?DMF?Dgszh0u{YjLh%2TW z%z;p1^95L0uvb&Ur9||sgYy7q`B{;pEg9&cIx%ki>T#fHNVZ<`Y2tRSfU8|AWCtEt z1v%->T#Yrf>% zmAHkpay`y@`oD6W^U104LIZS^%!aiSpM9^A5Im$(^RUMf&!za+=Kuf zRQDyNlLTGQ_GuGCu7m);;gW}S#BQI%);ijRE1&jMgfdhy{y(%dCcf(32K$`D3Arl8 z)M29U1Wml70v10*EeW=V&clU>6JgR_?9IM45(Y!0R&~^?$r{PVs&s{9d9;kMPA>^L3Ztd&{Pz~+-#Q*;Ak#;WPDsPk-tRI;=IUmYv0LapaKDU_v~r611Sw z{GoW(s^@kg_c|#}`u7~A5vA;sJqFtw=~7K^JljPPT52ftY6^VcNMhGNT>NbKwxLpQ zEq@xiT?sq73&wpDK(NrB)_WQwpF9KyaDI2b5#Sr1}${jldqe-i;>K%mY<81#iec}4Y!UsjEODO z(}|nJO zpHcoebUM_#(G^5_ZlJmk3H;P6jh&&l?%>t@T>Wg7llt=A@Nw4co@MY)c~Z0HM30o) zbyG;2(u(USxLL9YJ?qD_B*$NdlXO~#^R89|Ff*jy9#a`|rp5(3rL zt>&=Tg558m3+^LfyoeHu&leeBzq+AcYkAc<;I<&}G>%gF2UB_6J20%|`G-x?yN*j$ zMWhEH<@qZ47>y4v7Aq88oHo4@8`l8Udv7DwUn9`MB#KUfEpAA&^K>g9N3}VrE`8W* z4e`4bm&|MeJy(EEvw!20>(>%eFG#?#)V;=!zI84*AHZ7oEbxEZ#Li}XOt>wv!PFuQ zDrXM3kC*Q=BCzm`>79bdW;?VAF;gA$x^4b6YgG5QJsHOdO#=z_PO}cf4Qu@{-uUkfpR}qbonsX?-i+BfH0nrjY`nIC=fB_%J=A zQ6_C5xp7~zN;0m+Tz~?z8OY9olu~=Snvw7h-qZb0tBrfuR4XwT$VQROK*c6CJ|LRZL7AXd|H0kE$2nC?mQ`JfqTM`WMQH;kg?BxhBGMqn!X1r$AB&MH zI4PJMxnvNa zg}PEX|HER&80et+W=&=gq_TX3-_-#({MK9bAtm}C{?u9VMypm+c_P8(0?WRT>e+B_ zWO%>e?C1GMdAZLsE#Bo#?=*`HQzHRLkjD5haT~<>5eyRU~G zyar81GfA2;?;E4Qji?V~MobuesHH-+6c%_@z1c-b>~jgGf9>QJ;{ZYr>Ln-jF)Q*{ zq*mfDSB-TA31j0NL*31w)4xnli8I?G>)eFl)x4rcLcNwTuMdh+uk^j%8ggnkzac(o zQqM*-1}as~iALjY#K|iZ0neI^d#aWzX112eOH`E(jE>OFdl>lCPNiNdCMe*&OQg~W z||%Bt1o@SywJQLj%R;&KCde`d{_Z~p9@mty0toc*wKQ{Wql|AjWeNSDR|GnR^d4u6obdtg}HP3BclNTp7OSY z`w4nyM$?l7IgJ2XEK5F#5)%=zHLgOc1VW735$xyQRsqAHwT`!jw!A?reo8B6S9PS* z_W;@{smQO^xtCzBG=E9%Yls8#`*Sd1-aaF0@XTjc3KU znpWQs-rKFhPzY`Q^9`B&&o^Y0KE8rSZT=P;_$@m)N28qs4rkEb-=p1NuG3osU3|DF zhW0}zri$~KS>cJ;f2Pcws6q;bFu+r0LHo&GGVs-{*td4M(Q+ywh4Bn~q|*l~&ejml zAeTP#qiIxp|49jVf&lk)!`+PIY2>sV@Qx5zr)wS|Vx-VJh$He^8IpKXQ}H3eC=5D6 zpONd{VXlVk&dl*7>CA}z$nIzkkUM-Ycjsh18Kz_US8`YCo~d~?t6YfXo`&;zjq8Wb zb#u2tTjH=_r^er?W<1JfqMj&4?b3WA$iFIII?x{Ax&#GngIkYnSP0awigK1Eaxyx@ zW#Af?5>^oiNu7hLM(H!@t#`jw80Sx3O3}-Y7j7l|8h9VWn!$vHeXR-p#*B({G~!ee zS{8w%x_t}uV|ybQG)(X4DBTU+Y*t%bV@!o{iHh1dLh>QzSSoKPw~mvxPdLC- zvNA|C<%&bQ*5}@@d|@bew}oe=kaAm47o3K^ZY>ZoJT;{z1QEAq_r;J}uNFvRMG}Qr>3oZ4>l}s72FA-MB@@ivC z=*C-8B zBDAa0?l9~4zw4TC3s!Kyf_-z7hl7-92WIc7_~fEo2txpjDXEdBx7EF&?--nOV2XGRQ_P5u0l@{&a#jS`GWnED-BG=a{(2i&p{z(>|w(q$se1 z2kZy}OB{?+x|zb9Z=h0Ia{O2s-?|%krsUenYxE4?hTRQyKGXA6F=!jHZjYSm!(roR z*iw{D%ij3UQF|M+`@*ac1ord#Vw@FQZ1;;>1Ln@_#sPRFv_6@nxgcPx`Y_TqqNyq$ zfwL>zlD&FGb$jNG4=*sW6F*MGzUXWdlT9q$GuTI&Wg@y{v$y%ii)Jn zl{)EH2zxUOeCx^_+e?AFWz^`v2qv;ycJ=k&CZ;);y;!WTFMPtpO6Lj{H>l0fR;*oi zXgeR9d4UO2YNNzOO>tCpW@_$b?$Mi1_K>hC$gB%d%W=CG%Va0*@Kp*b>cDJ$GNHHn z4x9KgL1BW%QCq!O-c{nZNwe{Hc`G|bCdci5lJ6Q}!?InE+)+7Wlf18y$G1YYj!2M^h_1S6-T!a^cGI>)Uxgps z>wbX=&4*%CANYRz8H!M@0OEWU0?aC{0EkkKF1BCWlPmXtjP5fh-MuW|x1IN?)d_72 zE36tZO=3tBqvl(3rRl5d`@HGtsrF$(#o3kbl1i)JadS z-8#s~e=&#PGh-UwjGt%7!T+^1m;UcdlXRtNWTAEOr7uD4jBgh8!@KC-q$)kF@{lhD z8}AEVL3RKpC<(bYk#4fgI2bz!50fWmdE=1@P0hD638QIankMxR_&G>AEQF*3wUGY1a08mX+ntfjtHENgV1De`7MYq5XQl`!}l zBkpxLo2kN(-h5|LB&HtqLZ^;L0$PfDBMF4(3wrTPr9C=0A31;TzK0JuB5GMq#EC;hJ~7)-t^{1X7Aa zh_OR6J8Q&wUMRW9(a(somO&m#SFNvl&oR3fiDZHTLDK;EbL}pV=y9ceOG_=EZ;do(k23#aCwZnwz2)-|y>**gcXmm?hJ`#xW*r3jCS#}?>0#kX zPG?KXe9&on3rnM_TJw%;A#W(e;`>C&HI&$b0t{*yffn~!UGL^BBEV{^k({^l2xESP zAo0YmjytufQ@VoC*Z^YV?r&9`YSTK7PNITaMq6TBMhvGzJ~7rWmBF;~k4? z(P~aVBT0%UZv8mNqEb;(UOJ}DZB|e-Hh3PXDct}YK4X&O0;Xi&Te?UrT_u&XSU$ECCi68^W@Jd!?M->#3qz|~LVk8OVu)QWd#x_`{VI!^zU zyLd8f1-J<^8EmuB_Laj=A9mogB(&?z+8tL92#PBOK?)^2#W<)C^;gFRPmsjm)l5GB zO{h0`9__68;`@}{$GcRvO8)g8d;ZV&m>oH`{yKM(1zSwaCDy7refy1Is@F=3i^FBS z;5i=2p5fZ%fLgQY8i%(Hu{7P79!hRGVI!55JHOF9)@*-EYyM8`O(M-Bmq*Wp<}eeY(S^<0XGg`!Gbyv`C$S9+W*D0VgdPFpMCz(;H7G^OeZ{YAR10b$ z@D;fk@j?~^am`$S(eGJv?qxT5#McubzzEvAInaCzL`~cMRi(~aqMH)Q%s-l2Q+e0) zd}5=yVVWrtA5{HF*Ou`Ws!az&QrCvd^|6afF@bfn93#@$BZP`i%200>QrVNf&30T3 zV;pEa`}gzx^ZyKP6{;--bN4Hq36*Ovx<=+@b21w;=40q30!?ADc`LjUKKE9m))7q! z7(cXbHgVIv`tlr$M#O)+`U_7b5Cu3yhRa5M^T?|L8xhSflZLI>=CrYwafnF9?3;mo zI|TiMTN7=--?rJl<9^MZ?vxaNr&C+GM?!U?)qV?juVjwr#~#5+&c0Dzks$lHLwPwP zX$q-asID(7jdeVHcU0ffmZ0y0*%D8ufDh#gX2fA`xe=exsso8UnqNQHe&rAPDi|b* zMr!Ng5Bl1Tzt1N>y9cOB|0}3V#lc`F;TdpxIfB<{eKl{tne8hdkJI~hut6Z2zK6%X zzDsWd$Fh661)v)#ExZjDQvy178R+hZY+qp94i`Szy z%OgL*^H}6~2~6+aaJF+Dl21E)cdxzz)E=)`S{rk-_XPugTKsYm_gX9_!Mkb1^a}{Z z6%Z>U{Zj(oyyI7?so z`ymF@tw_q!+qrIxQS)(?P~4X8-~G#+GbgalA>M51pQ^y}a{K8= zQ^Wsp5`6^zI|w_V(|Eu9w9OL^K3P2Z&Tb|eV62RXS-xi$lr`T}KdstW+agK<-22&T zctzp&w2>r>6+$fx1(6(td|4&)c-XcoeSvlhd}@42^eW;W5?WgE!MXXvT4R#DY*Ind zHhp2sRF2BFz`TXb=cY230g~GzE5$A`cW4?BcXMbOT4Ab$mX=S*r>k%j&03WjF$a=e znhr|K2sH2IqH-stP;8P~SmV@G^!5PYQANqvlATSTnqx&z?Csw+)XlpPmA{vy2GPlV z{z+x+6QpGKHt=h85K4_tqvTb}tcWOYiU-Pf{`XHmCfsse^H2W3e3n&QUcLt*BTl;c zR0YCDCeuEL7#T z9VzLRf<&u8u93QRD)E>KugvAEgsX#{$G_Lyxx&uYp}8*rqwoX=j#F$cm=gAs6DvU_ z=8FUI1q_Uz9J#Rr{XKLE$YUKG(Wq6o6R(Rg?4Vekr3cap{cT4k=`oE-3VoM4*X2?t z2rzJ45<|sdSD>K4kO7)enmH7@x2lhc@ET%g(maz$nW+hB=KuEVv2FjIQ&VM;*<5xO(QzA*HMP&&nScD=`L9Z zP<%1!um<3G`#NgvRv+k(&h->w+f*)V}89^lwqs?7yRGQwZ57U}rGOB!}G6Y!@Mp2Zo&)e!YZuHjOBaqopUl{G$Qv7;s!YvWr zhA{y*d&a|9v>4gkvOy`&mM$@_qrz$Ldx%|KUAlxF5ZXpy;N4zwq#0-Cezy*15jybq zU7KRc%mX57eSh$dG2Cu5ek^`Pp;KzBF+I7niw4LJ_|UA zJ!{%-NK`UZbXq;3o_&Q=4P)_QUZ1qn%w6|rA%XhA=l1TaTX)88d7j9_@F#Wha))X?l}c-3QFY(Q!?Y;3>Ks$v0369UV)c zKV|%;5tEX+j}5QnuHdY_k{FL^QA0uvR!L%c`8B+S!>dw@} zkB^%LhM8TL*8k8GbbQJ3lF!|)s3WG=)A$oqCSj8THLhaL{(o&!nqE0Htr4h}xfFH0 z<$DnRI`zN|+SHjXVKY0r1OZ)X+7|gEScCwn(Wv2ZGzshD57XzGjA`g29K@ylXGFGV+!9M&EZn5g$UI5SQ zSb^?k<&}dJwN*S?^$I3iL_)Gr@Jj^+6_6^TDAAI?cHoHj^r6!(Fg>~S0 zoAP0)_{Q+IZuS^VWa1!M%p8Ct&W(TFsFIdUdFF6c6cG&LzE-L=M88{jheJ`q&b+7l;Bl|3EHE zmiCCLseDulzbV1_S9HLYLuFN7Ev3O`{1Lf>Jc5#ttUJJ)NJ7uKizkBq$C0l|UsMD7 zoOB`~qnko_`;g}H=;7nnFA|6*mnmJkI5#UWCM@JldiRb}{SZJqTAof=Z?rSHWX7dU3GEpPD9i=g1On0_p2j{wRo3*C<0flj8nb!QOG1O?@9Y13>7 zfLxh5=yZHe>iAJ3>-PzBUa4UEisD2s&601*@iTgg1Fg zb~RW)&{5wZ7{i7y^`V*Hif5v1#${`+vkJI+kwgil3ATU8JY$akySt_7XG zd_2`Pv)J)CJfD9f5S^FEi<<<)ujLE1I?|bYz==2&NUv%WlNau>wOuZS6AvnLX1lJc zfW@>AAmu&lMZPT5N6|BZ6^z+9agW&!Z-M|@s8#w%>C)VaFGdacfc26dKC^50C0Ho` zCSd}C+iHoB1MYyX+uae;SVTzkm;5uo<7syE`N?a4|FR|l&-P;}5=3Heg)+bNWdHjz z$z;ORmH;uy@em9nlaPn4ho5zl9lAgfCwWXiz$DM#OO2+ab8?%B1nPy$D}Iyf+&|>! zJliOGB=>oPIYuib*`etmI#9!J{@H9CKYZ`+1c}B>?(TRg&DdC$AQ9kA)CXt!n@qC% zMHn?~Wc@BUYhNQFcJ)Wzn7kF7)*_4M9I&_?_1{l_Q7pe+xX7j`X?Nk6P8>8g=8l!n z$RM<=GE*2SLm%k$;xC<@T7TGKqQ#Y02J) zf_AsctvveqzQ!>E_2#W(7JX=OYZ|?K4 z1|O{cObzMmS%dHkaXUucHFZF4k9s%!W)_3^AnX`eJX4c2n}t$!P32khht$Sr{t;!) zq>b&fWO-uW1&1e}-|U5((91sa)4~ zXN>TiUHY%Qto7!^>iv@)S?MuQK3h6Pt9^-DU7O06Op>#@k^Nd?D)dUpO=l|OqN_h= zgc`l-#IF&pcCUgB7^mNDVShpk5#M!}K##IF`ST%_&85h*sT1L=qwg38Gh!ej8AC+E z6EbOdy2)qNqqiY+AfFv`JoRq2ePP1x2j3w|`k9*Q7X($Xug&^y7ih_Yj&i&Eqczfn0~MIC zr7lhY&Yo^p(wFm4>Mg2NXaMd>IWNzS@DVWFC@hoGqK^FxUT^<#+T4TC{_T zcftv}J2!E)h~ez*1v{v*^(mR28>+dC5!yu>cEdvRT_nP8LG`cQ*NVyZx!o%IIm&M0 zyfc&?egx|wdCAt^<|ak^Lwk2v-8ccH*yT%?oH1!&_pz^ZoaG6x!tE?>C8l?GJW?z2 z99rf+zj-n!;=>b6E(Rm$e743&VAc}$H6T{4l3?wA+$1hCqX5&?Zynj*=U&Ear_{dC zVCxM<(-V`EpcRG_TW}F0TayFC6WcA>C*_h@aFicIfTkW<7Z|t!Y zTiCg_7Nyp0BdS+U7`#A0Pei^5shoUJuop+}hm8Adv|4_wS0LoM8^*mfm-5S)i}R7I zZZGS$sK<;wzd0GK7ujYSd-a$uaj}n3DREUavPENHk887@`$bZ9_n)oSm>(XhaGp`u zsH>_iE|-(k#PZDF{e3oxk^go!Gr~|B%hB~2l+7AJgszn=#kXecgk(`M?BDxI2VKkG z5wo2G-zbC;pMp-?>V+nlSBQ}(U)=WSQ%ZQuF1sEkvAHKZ4_(gno%M}zO~$3AHcBmU z1}<1r_ByaB9TuHO(oG2`o5{*Xv|s-@ewP1!{IKKi=&ons_#ycfa{T0M-(=!nIyA{t z?b+?w{?jTlJ+N}g^wVVS^JV&eq{te4**SrW#TKA|0JxAg043x8f<%lW=Na_0xK@J= zF`ii%47%^|e&^2E7AZ-WWYzMk@x$%&#fugh?}7=)|1LJmnx+IRa#q|ceGR8u$Y2kJ4A>C&B0d6m~WI-;pV@-Xb~}SpqDTZ7n>tn zpUwCsFq3xdvN+4?`p?m7o%fWvW0gWTr(X^{`+FUKO61M8Rn*A%77!FbmYh{r*HrEQ zUdh?@!xuY9U(Sh=^CfNH8Fk@HPREyo^Pwb?=x8I|S9H zTO2jPdW^a57PWc0y06pnF-+%G-IDeIBfd9Fd$l8Nmi~2X${O|cwtobIoo{ZZAR$nB$)(!CTjjo3$Kxo+}BOw=GI%yp-TAHg8? z2l#d1Z?Tv%T%{r>c8TECqCJ7KY2bmI`)|7o7b}gMpZpX#j^F9IA!K3+zNh)$8H}B2 zBg-Yv{qM5~g|j6c-_m`Cz4;B6Y~9Dv)|Ppddomm04|=b>I>A94+G~@+IR3{O3Qu7- z_M8UXqDnV0vLDsHpk(#<4*TAxQ%+YC=qVyIxFY$)@#ly1EkDO_>+|rTe>Kt1D!v?O zPDl*+du==us~u4?e%q(IE>7J;d7uGJyfpl5G0C~l|KnFR%_FSQL!Wnwk}LN$H6M2$ z+T308TOZ8&+Wgvi-1eA|9!hQgG}2mpV%e*w!f~s7xb4RKOV;3wrNUWEYh&Nf(LUSs zv4)|F_li2nQr7GYY6*D1_~r8ZD$UpjtIKzNqLpX}YXhGxd39Jw?5K01RGIN+n$d0Y zZ7%5{LZuUE6=rnMi$Co_v2;o2r5WQJxTJvFv3TjXln&f6t(l)zyO{wmFu6+8euPdX zEi1ht@}#I<{Xw=Qp^J%<-Sw+5EZ0j9abxi&U|azUr$WTAA((TZ_arYbqfM<;=Vxe1 zFOB(xXC3r%%U#KFyJFrs_EY{=XOAMcB!2jEQC==|w#-EJ7IZL=s53r_Ug=O&Oo)=r zzji8o^pi{bA)(JiXRl06IuPXjk3Gu}QjI?J`wYX6OB_&2~(0KWx*XL2~ zN{ZYhFnG|UYcXSw&T`)=tloc#djg zsH(bqz}am!F()-27l2yEwP}+1eTzooT*~YHdJ7ZdMt#Zf$z}a(Z6dF?EQK%;A9TS2 zABOC!Exf3m2-)e`&-1^z`&9QKwjhYI8Yae<&t4Y{IN$_wR$H*a6eg7St=aOu7hL-A01|;?E;fXECd&O2E*PA`c*Vd1C*TwHT)wq+#mzBw z^ukm;$nocrn*I41ZrS*U_NCqB$^MbKki&Hu;FK>dRdk8D@xCq(drX9z}FIk_U5r2$t6XcbO* z=z-+EV~L}8+|v?TUNEt06DxX^ZdSm7h#aqEBRFPof|LFC zVbYPkUZ{FF)y#f^rB)Ute7LK_SI4C#wf1e&6Q~M6^`KN*kN>jr(}aC~^5?9lbN4Eg zIiPeS9<-0Lvfl@eAG5j}09>z(?XO6DYoVQ70!@mqBd!*;6J5rr^o}WmjzgjS^e9yk z`Bc`&nuJ?hNbh!yJv1j;N3bFe_8!@5){y=FZ*GD9VLiuSlcRV3&P$Yjx*kaa3!HrH z;ios3hgCxxt9S6S$-bgW!YmAglyVvtN4U~dymTr0($i>P=cdV}H(np<-G@JxTusm$ z{Rx)Zoc5y=P`VTceuJ+DYRe(p!_+>?XHoJ~ zSF=<;hw|Z-`Q$1TIHI1xUf}oub>Sv5<1EdiT?g@y*rI9h><^tl)_`0}$1QIE_RQ{TK)fMO~q4C^-;K@jy0s=~dw2K&>?ekP5 z&e@2RjeG2ZLW&R7mX6<^*F~QZuK9ae^R@Y0A^)ly_Co84H0i&}8P3y6KU7sGHG)@n z;r`4VTcgNLNRzsl*nCWws28mbl%m$@wIZuijqw-6B*V={?|Kkg$PIz~;Al12&{A*^ zT}wRGK0-YGT<3*IEX(?btcfsU9I!yF=FbcyQB5{XqpnzPV$iSDGk-U$RXHS8|If#q z`rjYZwT%T>!CaZ<5xrF%TrtMbwdsCL`(>Wi@IPw%h>-piH=I2k%WW6a*y}o{ivvbR zHr8R#nMz(PK#u3?QmtK?>0v9K3dUAtKL`55OITEbAO~bB+By>9{q2bjLlNhlcRYdJ zwK3-wzPo}Ki%+|R?C!dc&&3r}?noyfM2E;=3MDf_VY{Jh6x8Z9;d7M;#v`vjZB6|Ge({dZ#yEv|6(;`(AXm*g`@N#rU63HE#7kI%ttyr_>1;dKj)ub}2rh zapBRt52AseOM5bSJW=^fcHB>pF5J1Xj3<+lv`R_)TS6Yn-p?)fFlg0+Y?p>Jv{TnE zPtanKddGs-J4=;0pYo@ROwFr$dM+O_5(77i&oKFQ*`&N!G@ST4TFokQxeuP{XD)W^ z7BRN*-4+7-+RX`dG*9kB*}T%S>TO|3wMCvEzY=;V>Cdw-G((-dro))7EDfE*ETj&J0jZmye3Eqm-9CR zWpUf(%AG3KeMIdihDWW(wp7$9LF-|D87By5571~Y4R~hri8`-JYAiJ`1)qvka!&vJ zRYdu6u9J-U``l)|1xHfZRU?wG#03e%tuNpn>@zO?rHc>%@YNP=V) zfL}kfV(P=?ce=I*v|E0+Q!nkVCE-rnKo``6ihRvnpW_L1U9@muw9osvh*DK4h)=Di zO#tCvG%3H|PPNoQQ18+FX^Toz`7*)ew&bb2vs_ULgrW#14ih>asobpHVTr>S6m_&k zjD;t@`kj{HE2ko;E!OmKw4}axjW6rlFHi|~_oWGrMM?j0(D}B|fW8AH)iHa@g)Jd* zg`ewqT`3hg9HHjGTWJcLlE2&E=XOspN=TA@o(_*8jCl%$)@6qYr^)f`l{brdB6X*D zjORyOGuDqO$2cqhcv}UvjU?ZQ$ZqX z0?wNU2K$eYUbyfO)fFwu26lc}SZm~66P)YSy(;BDEV3yOTgaN_vemE8^c~ngd)WBD zKD*}s{j;Itsu-;{5i^lJq4%X+WD#PtklgPca>ces8N2n%w6A%I6J;KbDoMQ2Ltax` zej4#Xqh;?wO%x3UtO{Q7^{5GPawSmGOz1K{J#maWHGfh(3a-F;t$N`PDK?KKR-c;h z2`0G3t`z<^v11p0exR5rf3nNxrbx*f%)46`+2@+_L8xMIm zw4l#MQhUq&V#a>18&yXWG;x_n{qZCNd9NsFPc4~xm3#HY>>!P0S5y{>X8-k_#3ozu zZqM^#3+|bi;YC4 zAJe579(B=;*?ZzCQpuQe3Fmsxz%AOIw0Vn?nHB*l`p^kQ#0!r{ZCQQA|?{pTqSyAN} zIumv8jkVO1@n}|NWv*vk#%k44tACvq@pf*SI>GVz zP$Vuq%GC1@bX3x15V7}?%aAgKh8VmQh*1sisO@{gT*`Z1w|ne%K)HHL^i|bA#h4-p z4KCJ};1xAF@}Q>&E9DX;+oidwOb3swH$h;DY2`|Unq&aicOX$0U@l96*i7D2#9g(P zUd>66r~f(#dAWwBd8~+Vsec(=FuAw~^AT7PEzI)q%Xx=|ty%FB#q8uHv%kU)6As4% zE3wEgrl0o8n*QR;5jUzRLth9zkf(`?4L8zA_s5?>JsR6cOC42B>Qh8otDwg^#l>h= z`yG3I_r~v%j&h7cB!7?in3;MSKJ>!%dNBHmgo{2EaRB!9Fuo-vY1pN4WNBga-cHO@ zP@c(vEGj_(N;?+sF*mm%$^bKrtb9G>&+n{cmM@;pQ07~VKshy1b(CnwO681aK1uah zA6S19^mVU~k7z&W>-Birp#m;RwM>ok7spOZ=IN2gUsUfnMMTp1@{k@W+ zv6t6J!5-ZH?l2Q5aY0m<_BrxG!NwP}OCkVIy;SCY$^3HWH^<;TBvPuLTj|7^xdps@ znqBY>$4|(SjHm~oZuOdgK#YE3znkK9aT;L&IC8a}HV0oz{`hR0$IWdyVk&c_8(<=(%r=ju))}phs&4V z2x>R;PRHrDA57+)`e4ns6wYvp%)T0sAr${P>9(|ZRh{Tj?Y}J)E)>P3%2&<`4LGYA zt(Thv+HwyK0U`57B3>8aCSr4Oa8&0sP@q*UEMsq(fb;e~Ou>j9TeHnYsIZ67}Jjd*IpA zHc&td=GI+T|JX{;3ygwvCzHCL1G;T1Cq-RF&J^{f3s~&SDCivWzH@x1H$xWvKs$Re zh4w0U)R?|`&F?F6V6=|6Ie7VVzHDSRd-!>Q(HPj$GernI9n6X_buVNHTiDf;f@*(F2!}nAoGl{6431w%?sA!%8)))vcd9`B zx^NA%bh{hD8B;8eUOgMVitlmIVJCSS7{lI!0h4Y1ddmLK(6Z571$t>>0j3HeoWev= z6e3)9>$Tfprm^`7_ESs$a3R(nOxMz35l9y!xg%jAa4Wobm$r7jy)~h72$E{FY+ir)DvU6Y=ze-}w`qa3 zcnge{bK~5#54CGd3IVTP2Z@p$Tb*!M!A?c76VzB{uXbspMt%V8$MQ|Eybo?u737P-BjdVXIB^>8V6?RgtWvBRhvGJ0FKwvA zd6II%5_W4l0I zg$e6>!5mSYoj=_-6@~opW4}`k6R%5mg^d;C4!dj$@8l&Ld7V9?=88ZR`GZPy{8S^| zeLPKRye_|TEdSa7rPgoFCE;_7${@Mhl7m#(vql4ISeZ)ery(8SFoEU$OHSzf1197o zXOg6Ox|=+Jz37v&g5}%M@?j@E-(db!;5uz!w7o_SM9j129O&E)F2`JXDN4Q#8ei%b;$Q?K0e{wFW}&_7)UG_%}xe^)Y|CYGbJ&wYd+}wJ=X&SvqK5x><7fJN4pK#Mlk- zgI@)U#GT+;{BplTee*dT>fP_Of1b0Bw@$O~6=MJD(loS~qY?rG&@j{RmonyWniC{m zT3hz!`f*r6$KO&UVZ{4L`b>cR%7>v1XR}HKBVQSp*4n?Zp!N0m09XSxTWKtMXD7u% zjQ}LnGf9nQ-~1Vbu4^9C4Tv+SweWjZb8t@Qh2!GlSAtjF--3dZqR0S_ychS!@1%G$ z45{Dp0Bihv@>je%{dwo>b6a5L9{>DrE9bb@qjnoie(J_*e2-<9`O2ZkJb?~~K5|Gn z3Z#v#qH}-K53g<8mEts6*zk@wQ&8WzsV12l5}*nu(OHL%yzaI;t!!a59yj1j-+c9Rdlfah^$YcYoQj27R3?enI3krb`aD7My^jFM z^E(S#nQ2^|g&>%T2l7d^Yc+hid;7BipQ27QY>HhklzA-v5QOHWc$>UP9 zTjVrcSmD7Xs<%?<3=9qJKK@K7^}Z15`1WXzUkl`0g^cEea_cZ0ChkRygzxyBXLC$3 z6+zrh`@?Af$=HI0Sz-gmkZn(hq1T>xJBwBc_~W}lOi*v5HD}}0D?|-73zLP}BUzGP z92P!*pAxXv>k(BW+^~c@jYY76Ev5acT~!H6Cq7}{~VJ{^?g&rGmtSCWq)(ing%8TdiB6va?qTfN-uY_1*|08tkE_)=IuD9x|y0i9+n#$$FR^;Qi)NmRnJB%!IKcsro^3X0yTl*Jfbw(l;}8fgiQBgf~9Ud_`A- zKhc{LSY4-3UAIe`1aad6hDo`J@L$XF7?#Dm^CSTTJG`MsX73*(<-BN?wI&C){+uw;pH4ea<@5n-~mgS#UE3Ps><}>MHW9sNT zT%%zJ*(N4_8pZQ7Do};9)3{O43Hn?ek5<3(R?!qWZ*aBVxdkvXrP=-hc*2${2c3b8 zc5*!g!;d{CpqctP-!<^b>JK@F0i(N*m-hZxRCoE&cf6eA-IyhdvkX1YJE};Uo0rBM zc#$I|h9&aA0vHm)!a8cw(JDSU1*vOQ3$AcOVOjdfi~{f zN32~-$3P{wE7A{jK6bNN4dp+Zz<$$umILcwoXU%+3=;aLOP&d%flAO@N% z*PS`E5)CBk)~6c)y7M7aM0<&~ZHB%v&Yx`GZW@ij7&uW)@HSS-Y^y+Kf0oSw zKW=j4l)53IJ=;1m&nIu6kT${{?kd5=TD8WBixO8Hw!Fr67OXvUVkw8 zutCbHnAu@zAC_3ma^-Tx z2x1a<;zN<~!fo{r18v2xLcbzbObd#{vOw`a%C=^#CH3&Zqz2zuk^%93a}^A#NLpw0 zP%PPoW`aS5cnjr6TE(@JuYZBKlA3DFBWRC>JgOE9Ul-q%g6E_0*WiNV>)k;?vbeQo zy;@|f4Kl{acgRM-T+}S?B(FA~_6HBm4;n*SiN>#p>N*M&her-uMJTL{-Cw zzsg|#Xm~aH>KQRY>SvY}Y>G(WuR#N#bLRb$1gHMXsi}sA&Gd2#1D}0>#099*fD1X; z&@;&UG3aoo(G|(W`+={S zY8#ZM8H(~D;B1&&5SP-ap4PB_6*&9Ggaz$p2RWzC0EJL_7;uh2rk)^1w$IgXCO8kj zWyf=)N9M=KfAJAKD;snJn7jM-_U3NNAjL4}|Cv{2D1d=ottCGYOS@1L4e}+YMdb7? z{JvJi+h<&I2i%$3%Qa@o8RqJ~E6R@AeAmFlsP}&^j+y*FAHeFD*qG4HZci%-%FYZ> zWJ3Wxe~MyJ9+r~>sCj&wJ-q*P+G40KfZCCrf}5=YSi~xy#Lq-r$TheVKATa7_!2naBDuBH;P2szijr!d8Q24I z5p>x0z-s{5Zu9j$0-FlpTzz`84sJMIpE-C)K z>*;_Z-O~Lbn+E#KV?bZj2CG&wB)^DemOZ4RharAT-TsjMO9iMq>&lB%rr(@T+Y~*v zWnT;q)3gAM zCsF(o1#Z8HUVUxFelENc8mpV}?$QDP3@*3~*ocP8UsoBs5jyF5Ms0(c4ftbD$D?=l z#<)2 zH<2*hHnrSwY3WG#C%3-hp|cR@h7O2gmhP?GmFAG6Uz;)hLGUSUlWwLK@Yf8Mv!eIh zP1@5a70&%}HbvHOu%EmU*zxmujd>7eWZn-{Rs3+a1QCk#Ml|0+K8-3Na|H1eck83v z^}O|qK<)3`n|PI}j~r>WZ$mE++AC+MT}{dbf~( zOaDE2daZ2*D<^L_!v(|f&jd-UaoJ1UqcY<_eRXU+U=K8C>!`qQfu;WE(3@Ca$WhD*`i*F@DhWWqh( zM5uF6v}6%5!tkf-u@3z2ZhTQccInin(fx<+ch9|ba5r=hJz6=mtT8ILeB}MeJB?Jc zEl^QVm9sVe=;y5ewpWmSEcU@DPSo*kodySYw6II@azA#%Z$t#ctJ~E{6Owq7*RY;A zK=dBabo^?e-F-H7f9u-UcW4)oXQH;zzsCm+5#}_A+U9q;G ziQBsxjhOZokYJ4cw>vp%bS<4XIulB3I&?9j>Il-c!M|H%o+?OXhMM+8NPp~~60 zM43X6eHDu#JJ^~q?asQ*Jhx2ZJh%gx)bhekr3@mM>z#(#_c21Mr$4`xoS3>K4Q^LZ zaxEOU$W-7}mLnvt$VarDTA-7EE6~7UKGJWpS@m?|1bo;sF1vJNvwGD|e3w& z-&^;YpA6RoHr^jDmLgm`j)_bIwSZ$!OwREihr5GyD&~M^iL2x*&}&3=A>*PMP4my~ zH=^v+spn&A=n_;I#COhpbaY%^d`ZN}Z6_{m{|R)xL#Eemsls2NKr7v^-Ln$4DQ>R6 zoND^sZGPyoxwZ*kdP11F+zPr_YI|ii0gzA*n`Sq_OyO=?=W5W=-ux1*%aBsy3*5+9 z>0`!x`Nj=oJ}XyJLM-sFSU6#+i~?>_nZ!Rir@L8M-1qYtQ<6%Ls@BCYU})ju=)o?& zd;BjxLB~j}h<+F4IbGXDH@zt?DIwHuke;O5j_VN{_B4gKo>Vi|*Fons3?iS5rMe)j zwxWs#Mk3T7*GNr7c+G@cbYH()gWHVi{x(g*NWp@-!aVY5W+{eBv+IfzN0wDht=IwY z2$3=o$p}$Lw>qhUs`mo+*@aSrWCUz#O-L|4;rfmb<511~Bx;s=O1TNw_zL9qfDhsa zPD(|=CPU3G51HF=gt%5Ic70QwJjTw=rn*lhO`7q;&5uqG>KAB%TB4?Bn#!F$7ux=8 z0u*3p8QzM$CMr=(t^)sbw>3jNugHaZO;xmPD$ODy?zi`&v@H_{mqsBhp8o1V8|i|X zVP)3V=3;I(V9N(dvVJg|ss$~^zv_gQ(hkNAhW~GUp zu4to-12f+r6nmBR4;yFC1nx!38}@Lz7-+y^21(#XMPJZ&GUZLMpdjSM*|kfa5FLFg zAS(0Jo&_!f)%PO1D{B~G$->H1rDm^uU=e!U`951eJ#*=CXMo7g7)|4=aO)^kV8`D>nIJhX?M)j7#x1m&k;oM?8SCBS(kE8Y>p znN)Ff5tBt(8aq0eILeggJc%3)DF4}eQox?zA-@MMZQ%E)M}BTaQ!^uUo8QI zy_rSzWF%^gFz!e0HH+Csh`9uct)prd@^s0HxjU3bz8=X>u~BH(3HHx z1*5tomF$Vbt@2(jXL<@XdN=qKwCf2a7gl?(DRXtD8Ok;G55+J}&~hJlY&%vEZ0j%+ zg!th2#-)@$p>bujSgb?x#($11>M2FBnoZ2bvMRLK`Ny&y(J_8)dzYD@EgFO-ZQg*4 z@v_AXSJjsK`)<4C4LY7|`ojP1Ig6*%tT{iChc95_j{NRbm8af>@cTLQqAzirC%082Qi&QIt$7SDmF9eCznhTm!6Xdnr{AQG??O6oHy&}Ics{V54Yq5dq zw-&vgL}@3&V4QEHm$(t7vrLM>?YL7vUaapY*+KizG)MN8l5#cQd9_bx-)#t@ z!Yl&RX(m5w=#MovOh(;X_koF~JcHXc|0W4o5(dn3a=Lt$B{mxUHuEVfLXD+@#L`>hhR8!-{qfuyT|Hy^ z2k}xlrFQ6iMlQ4F>X;wlYyUb`E74FDKhX07m|}kWOp>#3jB}ZL9JlqLDuF_B2TWs>BO$n13gjZ(#^(AKiEp_Uvk2XNSPXX#rrBdlvIe$PhN&r9zA|zz3|L zR)%kW)z_V;=)kTkt%*HGOk^eg6)lkd%)AeMKhl+PGL=$f_zUIYEX*+8Pl(g`urW7zXHuyqjG3x%X+#g~{Q$!+mx zzYiYNhw6)=r=KI7Vd?`2=!0~7KgXSorBTxy%9&?YiC4>EoUNWsOBI4%7e!z^JTj}P zMNVb#>I+#@1nvZ>1gjDR*8HrbB~CNhxtDf%xj1iHSUMAXsXe{3vW#WjvrEMu+G(7q zf&5YUKJ8Ik5eZr;6;mskg6K2>6#L#@yCT%vixS<<*O>H?tChMikEAPxD;56;lyi2P z=Hrw7tkJaeYTu>yk08jDtfRQED*KVa>;&QamY;J<*6`Vwqixpk3(S^-StL*YTU1O| z=*!M@JCa!brJN__7XC}TmKq(vay1;#*M~-o%zFB(z58%R&3^cgCqA>Vd-LVnuBex zdrvB^Poe{e$#-}>c?4aY4Ix5SS0aPN#7z_H=I%)HqM_vQ4NEV0pQFaGyPMc9gJ}Gi z9$80^d@sN9sBCw%r$9tl&!CCdHp)~MQOWDZ%;L$9XvrhgHhJ>qKg$%&WD-@G*VN~Q ztZT&ZxcbNOmGgJSA!)E?+>AT(Uh>5L%m)56Jo5PVw{)wuZ=5b2vV4k{m%F{#S$X14 zV@7=})@Pk>YUpa)+>OD=!6Vha=LPoMGU*{3TNaS|-BBImj4NIhgs8!vm*Skhw_G9> z*7H7cTEzCVTh$y0pLpIk|NCLn9Ir$J z!2}ky%pI2^Et^-Ad?mpPZoGq97EdZOk1l^7Qt3UW1s!8YQ+Ojsf&b=HdWq^@390@B zyI40T>1bX*P|=@W%AUQQO}Xg>XNC|1>H~YX1Y!r!L7iFFLJ}h@pP5;m;qnFAR>$3T zG{`N&%f%miOJ$K>x@pvEF_P9{I45Dv_u6Ti6SPSn-P}~gcEclYSnBvgmXJKX&@#u2N$y%g;YMHG?327+KYk2FiyoWr* zxRTaVwam7t%dKG^A$-eq_PMxzw30@D#V-u`+3NCq6T&;*Vt`+pDdixSGWQJqTsmK(j%%NPDe7n(*p3dc z*{Swo1%@_jU zWK9ztKJd-HcR?vpVDg8;Q5)C;-T$gh?4t%oOSkf<_3{ph*wARjYvChizg{DI%S2T$ z?-8JuOohNwtI_t#46`F#N!r2EF(Y0Jka={|?$_4kQp`&VvOGp-Qh84ka!NHuYh*L@ zMA#>bG{@S$*I3{j<;jQRXfd zYR`dlALon(+b0pOb_2W<_nyGVwxdbCehfq!AqR)EpSFF}*iZN5Z=WqIpS)&-Eu+2V z9v*-u=#JEwPU_Z3VJg3fD~Jb0ymKKx21ihTG|7JWc(HL`UE%w?*TfP0K^aOFhCc*5 zVfiE~CSNgZZb)6P9C;e`=YOuVvtvOFK{;qYy6Pa&~aCvsNZ%xiJ@+n9b zd0aCi<2-|*B@DB4PKMz=q`_orerL5xvA&OH{Jg5?tGUNrD0!n@ep9yu zuD>QqVQI;DOXCVf-Qt$ zd_U)YV;jv!GoOSMhnCnF|3=c`8E*~DLs%e&7Tf$-F{2dZs7G~Zq+~7hr`jP%qN4NZ zO;s^<^kzvm2GHs2e$lae=&A~~NLb!>(V#ACj>TpQEu5;IG5#yY{Ax=>Wd_ss#%6og zxu~$_gP%rK3;m((R@S5I+}O_na{kg=!GimLShT(ZD^Vz(zQBt1Y<3E=ZQu^9FUvd; zk#^s)y(}|EU2P=YW$rzc7yri1+U_iQyU|nm+pLYLM?`yjEE}QCm$f|fDrL+0Klkeq zx?T)KNX6zaK5w|=DYY`)i~w`6c)sLLdXxB$qd&ajg8Hsqvd!mG|6j$gX)bTdREzv( zCt|iD+Wv&w*)t-}qOj0hq&38cKB}Rz_U@SKKqJ3&Y2wAIDM^n?HpkYG9a5NJ>dJ6} z@i-p0YVUgZMR!TA-TOeV6AFdvi>>Mci!-2^g%AOJ(DD5dN+ z7=!`HIS}ChZ-(f54#>OlM=zG?o)1QTxMH}0`aFiT`|rCrx^*G-)nSvcibp--T#U-@ z94SkoX5PJK(Lypn57;#jmoRTe9~#Q}>vaVZ z$iJ6l+e@d2kdeK}$;1@ZS#VDS!B{zTRhq!#B-YWL4RT!&#Bwbblac+M(qa5PW<$$J z&%V<`=vbhX$_)`!oxh~6Cr(kAd{vKziD7AnOWE_zu+*vj_yT{SXs)$%7qARcv+_Z5 z+t=%|2F=h}hJW2u<3x(_KKOhG8%wVNyyQF-baYT+kzu`)0Kz-OfA&&t>S zg*zBW$)Di-QSmBFCHo&+9a`mWb8~@UL0&=sryimFk)Hl~wBOVZVa;5gD6-=Gr11dS zzJT@P#$&lCd^~h~<~gr+mCue)h#%4+vp)bLglSU#NU zN%$ryon5s1eLy_wh3753KOL>n>b~+%iKpE3#oH3vq{~F`-^UbbsmL3pnkFv$ym=S0 zr?SnJD=q+;idSc-x#=>m)yR`k-V+gVF5*_KlxClbQYpsH8aX%^=Ig~B^q2_iI27Fj zKEo>SELS%HRtJCnL4uZXi10yLwYp79%Axo;oOHTqzhAGGSoSKfvgkh^ida+Z>R_z? zp1q)R+(&y? zQ}E)vJ7K(8lHu}bU9k?2N9`<@)K|v{e{dFhy3wzkwK_MMfX;?bi_DAvu24&hwr~ts zFi7J~1&iP_{pvhlGYq~1&fj8pz#ZQQB#S^rnZq4o(0GQ;yO=S0;M=tL2gyxB680G5 zVQj?(!e}*Ht@EG**8K|Xb`i|Kl}XiQfZOMwK3?{2`=3|$&kVd#2o3n^6Wu*n_SE{M z6W7e!pVpkSpztHzn4`=DCGOowc;t)E?f%n4D{vfl0XtAYlQomzVksET%ui(x7Wy3`!+S|5Gq|p2MD&>#`8h@t&3y9nG%A%w9R|ER+A|5QQ6X^7)t> zbZ22m&poiokD|6@4dvwLNl=;B})(3 zp`iDTNdVJT4Yl?=C7Le7SQ`_s$bx39Y)dMoBZTB(r#!gLnLC9ZMsHYmzz0TT(0{q# z()-}5Y^xV4VB=A1nb^C+TQ(JxsKMIQ;SxSt@fhhGDAU~gdmQqT2K&Ou;8QyS<9?=&R$H0}dp z%RYXJuHsl6Q=$X)eBwe6j%2z{IxB6tv-w&We)$%d(}>jeORlZQa?TX^bRt6ielA+# z#{E`ZR31m8=2%jj_CFB)uPbjb+jEt*cXhk%Kkm_g?(m1|Zo?DRSjp)Z7m^HI44VEv z%Nr>|zMq?FJM=4{S1|FGJ4~uLo8u1wAo;AK)5Vpt@TY4L3aq10+^47>+A8uz#<;^?Xae30RUnz^o#WM~Z8F^jr{#3RdaPWaCy9=?lyA2majH7k;rrsT zm;^q@^`4$7?r$KTiUZJ`Dq6QDIxj$)D$z0z)Z6Z;n^j)r8K;ISWMso_FUwBL_uqc{ z26{1gOQ4Lvum7fBM*UYALP~W`nQqP;g5vgv2rBX)VcQ#*(mbkNCN=eaANZ;qm(49d zhT8CbTqwo(g)sP%HM{l!Ba8ML^m~qAEWXo1CiR1Erg-3aPCyKI0J(u^o~V}ntivP_ ze6>vZO*L|9wXBY0N?(GDsD1>fp@jprYcm?2`+VH5F5OSCXpdR+*?&!J4u5@<>a4jv2|-(od19}nmE;e{Yw99p%sn?=COQxk)C_ji-kAdAFz2Ik=IX0P;=Wd7d@M1w`5}1#-uar5;hz#@xYoYY?ZSiq4U{39wC9LdM zkaNV3vPzjw7If%NlGvdFZ>$6Sz9bb2d}5ac+JdR4bL7bG^s#Jf0a20>KF% zzY84{=Q$#{CG{x2&b;bCr|@7@=JW#`?s8NIvDi%djN6X5pMYQys(GD+*(lx$)a8qvypR!_o#b^%1yGaY9_}rK`ltQCYew`R$8Svy3oVS&@-UxqwfnG`s7XY|r#u zO^EuLBQUR4kcjvg5>;=^;<;eC-XJ$)vMgQZ_?s8$rot^=gfXKQSVLArqYRi4JK{>w zH8X?GmHe{RU^IAXf)OYEYpQQ>*%uVnA9i`y#(m$!E7VGVRNhVjRj(MFwzJWzuOIiM zT9gMfx>7z7D0|yXTl6UJMf4jcThjamuj)bW0!`dO4zSMtBP{v(#)0Y~MKzT1L(hKF z-BGDFF?`1M^bKgz5&q%^DfP-}ecJ_8xHA6G31pxd6u3qS=iy8wfFZkE48LOHBu9$E z)sDIG*W2@_-G}S2)ru(i`-DoKq)xVIC@0gkfvIpNFlA8037i}wWvWJR8Md`7F+P(WU;SvpQke@ z1469JmY$+vw};kZz}bP~IJ;;9a2WJ3{gmgLsmpx8mH9yjGO6!sOB?OIzZqqJ z)`woFRvljzB^XS)EgPY%2I#)!mOzg&&$om6xKH1mtCjRt>hGLEpXYDJops}(Ol&V0;!=@m1)&> zjwW7Yr@+qB{*g5yh~|W(Ol-e>YcJW6yXPug`J;fo8|X39%T+E{Hk}eIK<;h>M(Htq zFM{FvGcPK<=tVj!iu|Ky+86}~0HJ$8(F^92bbzeFt6wqOx6y8INy{e{-s|dv$P93g zKsu%Oo;GKDlvP#)~sF?7la(uU3tuKl4LAzl`tAw*bL+_`V+1qSu) zdhi%|Yd@!V*W)2BjSoz4mshx_d)9c;V-UKwCvUF%2Y*iTUXq#V%LJ#Y{sr+N`H$zI z(){mR{VeZw*?z*uQ0;YqXs}sUgF%m}7`vX$lhK8e(Djju>*5_n&}KxhI}fxA@3T^Z z&!nQtrBWRZfxo%~sIyhxUhgoTBZ)cv$6R=N;mc3`nfH!2LIa8+E{XcSHpH$c7f}{qon&F-y>SWSx>I zM6Jni)~&H`;$wXcY99;&(fo^sCVot*jo(&Dn)0vac6-8im7P#C1?Ii>y%=WHB;WP@ zJ+S^a%Sh7)N%EOqK=LDp3@6?fm733nPk370Ph-F@Fi7g+3%^p2nH}%IS?^F`IEfiF zq3_+kHU&1+%s|)ozZup1S;KjbpNNBKk0hma;VI4v@?#Rn@~WRM3_;6JOd-X)1<1IH zJwlI;SS5X0wSRfZJbBlHBU}L*SWgxRKK_98T%p1s>{azz7$Z@B1!>;o=`nTjDMIMu(-6$U~l$VRW z>nquTmZa)PjZq+&)ZHbYG}!!$7~$)b4p>(b<$;NV)vE8{=nAw5c`YwRFo^CkbB+)4BE;_z z_=mo2jF=R)bO9KSi-_NIhpE&W*FQRLOzll*50)B7wlTMZGd(1pubZv?qEhxNxznYv z#)%VT&hoofuSi7l%eOs>OJHvLS;=&GuO%u~s_l;+st4J^k8tj8) z@{Bu7kQNplr-va4V*9Dr!lp7Tu;Tnn=f&nrsYvsDt40$aZPpwMFb^}P`3+$b^kY== zbosX%JAT>ml#=hFkVr)jbd(qUFy1zZV(59Y2ln8t&SBWCM5~+Q=LB z1s^G>kIzaIr%piXCaA$opRI8QZHyYQN>J<+TbHv1vQ=ol#~m)mt2#uLf;vCj5|hL3 z+fM&pzVSJ_WW8m5f1RlRd(fs)klg-^+u_sivlrQm$&m}Ql;I%bI7^^RIG*DOtcbDD&u*;zg6S{J*-;Zk(pm8?JHl zr52+7ZqZKK=?q-u8;?YLCsE4OD`xi@;|@bb%kJ0NnYPEoJ;#3^dGJy&Xo?o>*B~vD z&8m+kAiAZx>vlTbRLqy1jIJ6LHIX3&cX1}rl$U-ho@vQYW2qKDa;C9}eMI(FUtIiG z%6(Oz2!4lZd|TLt519`ZsO(>hepNT5HK^WTQnpyPg^scn+mH{Q~JzqT9;Z9)=`@NlB zlOAW9cD{4_f$a{cQal6VL2%};_&9iVBq^a8BMl#O3tUe=(UnEI>;yvGa_9s-dV(9Y zrb_4fAKBcD7ObZ1{~DEa*sFMovPb%-e8BO@h^iisJ1W+ee`R{WUxD+Yr<-;%fAl-{=xyLB&6^&& zN}61_IQI0Fb~B?k%~H6+4@63&&-H<@*%Z%EF!DLTea%iy>e5kromzIT^7tt@y!@C| z2k8UH5FnDzvI4lIrf2q|Rq7p;>>u@94yae~@uU|Dsy}cGu@&^}XHh1H;Xi?l{l}?@ zXsjbQG-gm)T9#E(AHU{g0u^^<)2`*TM7M8hLlI&bq5b)!LHAs`@)AJ)G|~omZBDlJ z2HpynJ7Dpg!|GI+R*b9Yp2sD(>%Cald5d3oN*p?$cZM@ydr~`b{4gbT8ep!Bh+&tE zJ`Z5lPJMaN{Hb^ImC%gbx@+U0G)+2TJd$ zf)y)0$6rW|UszSf4|}9E5KamT1y&cBl0AMXjG3Wxju*bI=Q{r*LX5Wp0!)c8Qqm@W zv-z9jTf)#LkZkW7A$9RV9IogM@y~Is7k=2IHOZr!7Cp5@mA%)h9P|{j%o~}Xzu>_R zvN+4C-^AW&`W3#Fs{}3|x-cFZSbz}b_HLCXhi_t7~8yN{?qKiY#~oHgN7OFr(V|aRWZJ{8XXJgxn|ABKZ@#9!P7> zxzkbwWN@X4w}Q4Nf{v10#ghyUyqz*E!A(_ts;=c%Mf|9sr|o)PLc)=t#$LpY|H7>b zBnD{;ox0GJ5JKi$8d%!YD}JMbNub=f9(_u+_UvS3_v}TZPrwQtGSBidOnJ$A{*f#F z0lR&9-gcDR@6NJRB{Gl{3Z!o4+GmD6xZ<^PHgKN1WdD2>*J7gxyA|%d zYRy#32?En5-!9O6x+MPE%*$Rrc)cD-F#-SndMwo@qs z`p=W5lIs~|F!w{G>PHyigUp!dn^yU4j_jF8wP^#&vq_ zqg#+Yo#=fyOZBVU_G2!VNfpViRXF;1<+Gk0(cf1fC^f$y|84qm_6;uENbM0?A)Wz4 z=-CrJLRcWBL$)}3j+~Js1K!#xUiA3j5uFzW`X(+HZ@)crzrip+>c9@$=iq zQybA?-SPO$U(wM5#H-!aB0s4ganRub8!a6`nnc+SI+;nARluCttjK_q8GR4i zOF*VCOL>L`1yC~O0*pPQ&Kpa1M8BjZ4g#jjjZ4y*5r5tPbnJ%`)`%DxXR%Hdi?W-Q z7Srit(~YK-Ir>NEkYtnbn?tfuS%O8!B3VadTeGrD1wA{Y=W}5aADZLh{am0*p@J#Q zIKgL4crrgb_U~Z?uJP0=0ifu&1u3q>ff*T;a$VR~EdA)#wfG-d$ka z6A6j~wDWYTov`jaW;rFasSSHct;DbLg79dPSJ&w@qZ2{S9*&EQj7tIu!^2mZLqfWo ze$iV*2y!JPtcLW!%DLiMfJSSL*IA7GEvHs{bigCNk_5uGXY}dXySU*c7Kw^KYBWjr zgQ)+I2Ffd+EA~doi~uRL_ME=T&J>9;O@84w%h>Rg?blwza?~UJbmyv9M7#^Heaz3` zm#IzhBXay-9sjLD%uHc^?5sT+j`Q*UmaL7_BIp~2DeJ^0sx_APU~H;2kZ%uRGbBaD%0PRMkM`vOIbSK$qDGh3Y{&A=Rqmgz#-)0M&V-8eP!ISi6i z8*aKw=C|Lc6~g=tJx0&2Ai%G#;1{%S*Cyz-#?Y`*|I!J>{-uJ%xi~zgcv)gp@>uz> z7l@JF?uFKI(qd-O0{qUVQSrj7S9LUl-7BH5yW31t6(q%HxUmU=QSXSRCAc#vPP{;) zdqf_Kr|U*vGJCxUR|gE#den(Fj8`dyy%32%=F<*UFsz$JM##2Hm$@Io^{}c>>GEf;R=2Kzi_rqjk=Da~&fSf}b}2r1 zBG{)}M~#uY<7S!x{H1`t4MCLCqv~va+p(-t zpBNFAS@2@O^+8knST6Y~2D~7cPz}Pr=W|fxEa&B3=qPQNS{)-L^gnlHyt*{ecF1&B zT3rRvi9i2%y+u9qTtJx=lTZa}8Ts33+fZM8gF!P%+WU)d`|YpK|C{{N8T|nr0X3{m zNGNT`X4(%c`vc|_AY?M|D$$t*s{(fDnC%-T8Ed}|TS(k^a#V>YLlNj}x~t_e9z^rw ziHt1(;}P5k`&5`eV6Y1?h&7oR)ZOdDR>P?Zds}lBhZ1GkMQWmb{2X%ph_|Mtg+H3r zMySqb#yruI#6l^8{RUv!?=TkHn^_B&Q*!CQhB{!rE6CVm$i5n|>SwT02>83TPlozA zXGUg?M!vW#4e{!U>*K$i5C!N(QeFmdP<<8=(*p*_71#R_KI7Flx`ynuRqGZ!!6K0+X7wvX z?F}IY-Fpn3W^H^cVXX8FHfN|3dhjDjfHIT{%8=|85%ivVqn7-)RQ#e{IEM43lvbP!!0XMJ@AnEl{3^KjSy} z8qHDeW zIVA3vJY3+A0QE7U{)+rhH%PsjpAu8$6I`+0DxIuUNCUhkiT1Z;HAckqv!MaeuX|K6Y1vxg@oBXMd4?xFkb zR)4==nr2*XSs>O2qLRH|2ja6J%!c`pFq?!u2>*$pC$jo}N%93C z`;$!Bem^`0ShmBDhY1oF(b(VZ{-on#{8~Kflme;sqGErk05cCZH-8FW7|>^LnhhJj zrF2}TW=8KmYFxf?xOq|pn{B!sBq}((^<%Oo6e9k^;}Ww=1?x1!8X^pAZIn_jJ7_bi zMeh3d%$6EKD$WXkN~ZOdqC}DE-cm^zd(a#Xr@0DqWNe^(pvB~D{?x5`144kLgwR0P zR&5^}njyNS57MZ+hQP6}JpzSbr1qYmS+_UC7M@ z2AqyGvoVNQK`7H~!xY|tq7A6<9wRtC-Wx@e%{)@y**5?t!_5Ypdb=@sU1!S;8JC>V zdIWUH3QJ{!mhaU)Bf`Fu&ceDXNY?jJzA{>3T{N~QDcu^3ZMqBd6&pI-|5$alir=p9 zoejxQ^y5|D3W!u^DVIh4z|V4|G5foM7I8IG7(21_R6!e4N?G#|`{7Zkq>?>YftS;Y zbyek@VweZ{Zt|!Uph`}x1RO0G5l0IH?CKwh)1$yJXi!$JhET+0Zw>ciKmCzPmd(Y8 zG8m5ueZMg!m#)hf6#U2us_~N4YY!$MHqCr)+oIOqCiQL2{Drc_x>xFH2Qb4*r|M>k z&l_(v^81|TEb3%>`UfXpy#Nk>O6asSs!8UUGSb@{;AhV`l+j zaLLttZZ33f0UHNH}{3|!OxWS^TH z>;=N`B+f(QeJdad+0D!;83)yy${NFN>ZitG(qMIHm`;Jac2bD;pu#(O-U05rW9S~& zL%-7WXQk3a$X?B(^!PNsC67kS9l-dWNOaw)gPuUrLJ8|}X zPKjnWam-sagy6t_^m*g@FZ_GA>fV3cy7&0lsQ=^BHurrk+A7Ijnt{CMRd_yJCvV;N zow}EPetL=u6I?9f|iFVP!To26* z<(#HBOfRGE@&~$Om;N-W)cRg`k>xiB^7f6c71G)>u}0ckn7PCe;EMWDVu#WgOk2(G z*R}wY|EX^a-?#yq$^2y)H2i0=NvO#D8$`M2SvsM=O!N*^Z z6c*j}J`MbD5f=wQKWYwiT>qb!d!sorJVYF;fqF=thcFM^wJ%H{C02U*{^mK?npLiuCV`%`o+bvC`IPW=L!I)iB=Z z8^U449eSY&w4E&m^OrggNXm7MK0khmmh3Nln@!~9+ydhn7Fn^{&z}1YKdv<7;f1h@hrVDz#yqV!fhn3(g7`U0#eONte=wzk zA&hOC6tlLje$D^>Ghms2n2L%=#PB=Geo5h1nWa#klEjoMU}-bu)Fj}jkpvn9!0EJ+ z<#!&+$Z|#`-hNmiw{;iZ7Q(pzrfug#p2Zvgpdd#|rG}6^dFp-09(RbDzPNt%c;e=3 z$Mx{7ku-5d@v+Vtk#bWT(on+{0T$=Ofsh9e&1V3yo7AzJY9{GD2z_VU8@V|t76tt0 zKNU#ur+zM?rHz4U1GD6EraVeWr?sFtfuB`Po{N}%(3G%>3F0q6AHA{3tgk6D|to!_40Z)v5wYPZ_<=?z4b>v%0(akbqH zxA-^aOkh)8>*l6Z`s4&U@jgHh2GU<#{$M^SLl;X3Ki}U$GFxk2)grEHH%+R(*Uuk& zoME*D(`mBbl=&jflz>;5CUPFHR(<{9YMqG9S}hj8__<$AZIJ-{a{OCjXX|a#yGHqi z7c)cv4}rtp(Ps&A7U|ZYneW^?bl2}|-t;5#-8#0RDCS?X5FC8_)%o6I}xPl{&v*W>|MDG@##Oy1ZQS_jv=La z?yJd=B81$PYJT}yimhRzV_@e@cPR?Y8Gj4_xhSq|$kfKce5lY7X0ml=pr>V+l-~K~ zPN0c8EtWW{Tvo9%^js$qwNe~SS6a__vt9E%*UxdYhjhTB7PlDlXdB|E?2(WFp4H=A zQwCY3R5GKcZ(!|Dj|{8G<%V;_xZu#swU=_5t$MC4n_Kd8G@O@=J>l_WSWV5zchnQV zHB*7NQ-ACjiOg6qO=RNi?2lakE2`t%_VYZh+0p3Pl(;f~5|FQ^K~Cc?_=OfPvpW*YGJ#_Q^hPD5z$`I^A=Tx^ zeB~mznmJ-H%CZ%f8Q=}Nn~KQ2d0gA25_pS`d&T1W>9-4ZR~Z5PGlDLq~cQ^j%@^{ha5# z=X~FF-t)&_YVLL4bFDS!m}8D{*yv_*D_JbrvPyhHcpszs+P%T9dmXJ*8qR(ON$%+< z^cIT8RyA^Cx(aWcx3yu`0)rWX0_R3HL;X?4g%JKY9&Tgw#s$t+W^CWxifC+_bh@p1 z?30k9Q1_+XzN8tmODa8V1>67e&MW_V=dyrJ5LL}gHT`kcz0%GYO};js8{{ZB2Ssm1 zi^ByDo-g*_KweRkLW0!PJ?s#N=XA@#o17iGuH!mqosTOQZ0pY4nf9#qk~Euz^W2j* zDY0-Z1G6rF=QdO{9X?Zp{DxLhW04B8Gu4fDj@eS^eO%}^`T%_?*TWf3__EiRZ=!4) z9dTKBSx2Ns>x)5wN34+#6a7C@3VSWivgmBMgSq9Haj!mco}e z%6(ggMXJpr9Lu=-p~w!S>DkiRh*a$eS9Pfk*I_xI<%dg{ChTlkQ$Fppi_gsBYlxe- z1lz*w8b8c{NB?;|Cg}s`x&P0j^KlbOJV9Fa*Q4kD>(Tq|HlV9F6Al|%ap%FP-XrA{ z)&SP-czPvzzHIy1nS)d5!*H`NjTPuAj5 zfWT>^rwl&BD^Xi;?lDmBUJwmjON|e@$Uc!311ZP`=!m^_(SQkFKe@d%Izk|GjZRE{ zKx+kNa<4!H$!D}Y$P}xGx^( z5*OSml5ui*@DR8X`Kw|Zf~Erqt!&H&f*Of;TyAuVxS-BTboi8G)5EpFl-Co;Mb{|D zojNJsz(x~eLUs=0+zdAN(>O|F;O}+#)z<0mGGkLyhehJ9YSt^p*~ndtGus0YX=-$V zbv3MrmL~2hiu7$amoZv+Fjs9<)ZwZ~tZQTwq;yHUe@ZQWlTfBmkd(W?`LnX$JFH;Z z-kaI`A#=d}nN`+bBjT8i&qfLRTsAFgFn%03jQ&t1uWfY6zX8#S9Sk-YVqSB8Jo2Kt6-=Rx z*8g4ysn2V8xK4**UVAs3q8yQ`(iFh_cckGce2j}6qN@B*mSDP^As_?1zO>=jTWH#7 z`*5DouU5sl_-)Vu=9Chw5}$ss(a=jw(2M;!BHDSO@cW>a%$lMZnT3--CFH>$+>s243vAL!2vHWWHp ztw?X?22{+QmA|XIe|~62F7oK;A||Co;@o#tr*mq*%HgA@qDwC$O;ksz3|`jb=+jP) zRs#@Kwc`a~35p|j^kgbj-b`?jQTOjh*u9SqkY|k z=AQeoG5NQknc9k%98-=#=LcSMJm^7 zzDn$qxg$WOPNR)K{mr&b6-W*_Vgduy3dK0oSU9|UVZ?kmP)Y0_c3ZQ?hU#9 z>zjapiKdL((wAvP2BvQa$ED3Qz6uJNaq}V>9`k``*8!BKKi7;yEp&zq1i09b3Q60P za;9gMAek!}rj0tIKSJ+z9uH_cSaEg z`GirhjDdoo?PtZ?mCJQwaT8HP$&9ZYnWUowPV*aY_JJ~kN{|p#FTiJPeI$Z25Qt3x zqgWx6^m(``_iSBC9j4Hd(JEx`hhBbG4N6+ z<-?a(_!!>$9AgjFCM){oFu4%F=$Xb(zqo8dYWz?n6HD^EKy}CvmsW8$M5Lmr-$8ma ztNW&7rT1i3b+{jYvTIAaiy&){e)KWoS(aCyT#3K@FWOP0dTYV_^RY})Ef_7I0C=E~ zJ5;}n_yDzWE%|e{I!Jn|IHF8ZH)01F))YO zGGt82_w1dzO6Rk3p4RzSXfr@gR4G2IUpGKTz6GM92ER92Zg3j3*iYRLvPVJ%vDV3U z8;UYH5xtY8Z_{R5TyCVz=8Vn&D)Wz&bUU?dw&bC3wN3>$h0Ixk&ilV!HyUm;ZI8p3 z+3cK6QmJsD=k86U!~SrKrvQAkxKapVc^0uq9!-tvO)35VJAJtFu; zks*Rw;|&ggheocjP*jNl3+&!#b9==lD8n0 z${;EzI0RuIk^y=3HL2wGeHLg;VwDhrIrX7=Z4HR2)z(yeI&N0SYwe#s{F2KCAinY| zw1903bR9sqjoj1%_&nOP#TE)#hpS!$48-s51XjuA0 z%bwaE%!{%3km6AWH|X$JKRJqeCFO0EfoNB^DC<)k2&2&8S0K}as{~qaDE_4Dq>nRs zfERHE@N0t1<>D7`^ObS0VdI_GLF2lI*V^#5##lB6hIz{AhEsDR5SXEa^j+}s5if5u zYpSAeTb45NN6D+mUWW)4zp)0m>s#s9jXH>RI#5Tg0fm9|;UqV`eOQr_7f%g;Htq)X z>IIie)oEpSMl5jIl#qk@6^~AcyOkT^IW|ViZos>E{rTP|x)ev_$X^4ppvOjqI&9Sq z&7zA+9vQ2^c8bIK27%a_Z|&L6Jrm9*2xT)y|HOsv-vqNe++SKY^rV?Jdp{SoUjxPw z@qvs6>m37o&k|NIVzvwO#89gTUFwd zoH{-8rhJLk?dpi1XpN%ey%tFND|docS0$orK`uQSGC*y~gxY+1=W^BNTY%FqL@*}SlRQ(I7zXouy}OQ}qI_x@ zyrX5F!sKTcwiDJ848c*8W*Z+ksPlLFE)5KYzii>^j91Gl^=dgNnH801e{rQf$}w|l z6V=)(2qr=s@Iu)qU?W7BJcu3g0Z2$Bc&4QB6i3f==L>Op(A4zP^rVsddq97sNXnwn z!Hrr3By5AT6`GE>7^@;e?#X!{_`==a={ndieLOR0`|A7KBHj`hixSba&D+i*6m}|8 zp-h{NHXbm^0wH>V}40TXbrixVXrFH$^jcI%=2ry$_$_e&X=z1?uU2IP@LBn zX!;$$I&r~;#acf*vPK1{3C+pTb6c*_+Y%mMOI|}+5W8{L{et0Iaag(BYVc}wtJz#K zH~{I;GTL?$AU9QdAQMl}VNP$@LRTJlP3sx}2$3}XUm;anuzyEzFMdbXC%p*&DK@8# zj7erpXiPs-fQ(T?KMH1e&P$($bbH`@eV)1=B%v?Hh%Hy}&Z3c-WzgUmAqKYtkHpDoKub zK_laj2NkP^T(KoT;4r=dLruF@;PCe_vBc4Jwr=do1tG>5jQFC_d520rH6Yjs=g{KW z#}&Rx%ta&|-WoH`>l$)#LY?qY&aPtB#h1@U3UdScVaGr_)AAc38y*5J1)~BqLs)Gi zVoHWKn}`JY8cY88ru_h#XqukfL7v`-YSo`M)t|9qq7p;=)N4Z?SdBbS{=fG?QD1a8 zLW$kok-!wh`mkV-37bkE|22C3gd0R|NX`IV8Y&P+#oB=S0GfP&8;-=5ui)7fFjNnI@Jyfzv)qZ+WBx6f*7AVDf3=M1a_M!IZ{s5*93xK?io z(yed76^?`)8r97mfoYpwSA8Hhw&lGkE$)7z6%jSI(a!`E+wWKCp* zK%3>|*iM|FC9E>Vz~WEDt?1jImLd^ky`4s5?Z`aviV9YoEKY=&P97ams#P7Emda8K z^x>-fi&Kqv;#czd7acs$wz@sBCq<|h;`r=@J7Mb;R4gxdB#);ANrM=ihgIYz@{6p* zE5Rv@cdPlZWgC#+c-3nY`^_hUX?S-obt45jvfB_9%aGnQu2gY_#T!r@GPWnBn0jVF zSB4pCkRYc5APJF!@4~o%pVWSYOig3~&@veAcNfJ_df7dQDr7=x2$aE=C-sSEGs)3H zi)GZWBb~f@<7Wo|2lBxJTvS*;Gp#YSDRALIQL-x^;}FTrQVB9bn>AbFkgAmt(s;9K z!i`v(TAAcME5PFz3r&}N`b&Ri-OKN1;S#CoIbyTr*oav5rjs0l2!S3R0O=n7fzQvL z5)LMC!}3=HxZq%X@GG}tezq~V0u6h!yE_`!_b)^Qu{JtL^=JPKm(?zIz?8F1;PBE1 ztA#PD7bkOOdSU6qfD`_1>CU{8-X%fa=o|z9u9ZGK+aZEFmAC=A=eUVYU6+wevgViQ zg6k@?YC(~e-jM}AP&|_w9uNxn?4Y#E4DCtLXbttu4}JzOi6V#qC9`Q)v}J9xch>{e z5q*BsK?hT6!%gg#%0q!e_=u<5yy*!C_X^Sz z!d(U)coARYI=&pd)r@-<*5XO7POBLzqL+ca1=F2?2r%n`ey-o!Wy6->*IoFmK5a@Q z&bOU>BLn(WKqV;=cYaC=?C$^EZg^oq%}}HNvsxgB9mE;z_srf=(#B_<&wjs{v>I;m zAOmzX1R@RBd)!t3tb~ae_*VM;w!RD zbcE#A8(CR1Bazv~S2cs;{?j&r`;BRXZK5>7^$UkrDqFqsb3AB#+~>Bu_b9Y2%*pbT z?&cO&63-Wdsa%jn=Wy}wTax5#sADrSXA;m>H(!w8Gon7Ni6fX^nWSIr6Lu~}iGDG)Mhu#z%KJw1Y zBDrnlPZy8qZ`y@a^==V#ws#?gu+91;PfmhubpF;GOi(*6)cWzaS4Q^+E@GJTQ=^nV zJo&d{OLo5A@%aHKz<-%Fty)FB7_PeA53|CXajS#{sdRWdMG?9ey1#W)XMT z=2n?Q;yFHvDASXOn$0BX9$>zKSs1q>aY7~(-j@@ia1@2^7=pS9CSE{b&j=xFp5hT|iGz5QA=m@7C zt*zidP|z$Te=)2O+Wz!`v>BEEwySQ>sR5q=D|BTRVn(65Bt+aZU-&8T+GMcnkRk+2 zrxlAtVMY${j4jCxtw0ua_8A#}Y|DMn*aPx$`V37Sg%gt%GC929t(D>XKjXh}R+A*)D}c1~@~0y6E^ir=Yn`>iC! zps%gLN9{UC*<5Sz=`;|%Jwj0N5Nnc>%dKn! zbSztrznX-)4GmIBnN3!&Gvvh+>*%IX{N$?iN6xvMYwxmjVvVuUO>WLCAyyjtYO7?+>z5oT_(m3EjA0f@S zN<8EuOYvJj-?dM){pZ=@u6mH5KPczBuiNl)PZj3-W-dC8#*9c&=XTOY5Cr?vo9zRc zQoR*r(RznxhvSSWqsa>4cUlF3h^eDUFe6V{s;Cn_(qXJ~nQwQ=$WpLK+EHO5nbaSl zr*#QbLmP#q4WDikLY_(CAE`wpKyLVtKn;36^UeqAM=W25qo0-+-axde0k(dQpqVlD z%@>+=I3oemlvX9KUY4Su+i5_i{7yjO$d17;>OIBeqKHEl)L%D({!MvlixM(GERlSdq37w!Pg8_m{aCBA{IsYt_Hea#G z391V%U0Chu4BGbI94fP>9At9$`lieEyofq_N8z@_qqMhxS=ke#_$!8f<*mykHix+7BfnGn*?}6r9y7FQDxZ;_y{z@?hD>waSG7?%7g|vq2iiE3n;V2J`!4^C?v&#hpao z9q`POyj3QWQIdamgb6@jME%kj2-f=d zWl(cMX~i#sJ*M1MtCjSi-a(@#duVG15y*<>UpOBhJYm~S{LQ^Z5`wI>HNSDjr=9o` zG-Q@*LCIn5Hd*4p>-`s0U_PUp**#20_ll>vQ$kbq12C&gV7a(8R);Rq;I2fP9ej9L zlT&;c`$xLvdj4^qc-4x?!ET^*SVs@H?q46PP+#%?X;oK&zP%g2uHeqoY3Ws%u(Tso zc}?kOwmAGp4C;28OO6`q&|T%Lk_35OR)hP17JNdh0t7&{v@KIe^%pYikNeURu2m#@={ z(c7(Ccp4AS4SxElaVITs&ytb%FJZkrMye60N|38(aE+2jRc<45U6jVF&^nc>mLlcvse@z87nQ+w zF=3p0B;=VVctUrwSaT7G7Cl&sRC~blI(3Q+frVmIjfa(DnbivJ5y%WGTf6qLp~5-+ z$9pl_HgjbyZ`>oy^IOTdC#TCfMy+H1*#*cJ^h@e{yN|+ zQkhamZ|NRs2x#>7Y)tc4MZAW9Y}H$5O(IGq0YQC)vy0x*+n{ebC{c7m#atb3 zw@ZV8pw!~il!`YPIh&;|1E8}gzlsLl18E7M&M#C?X1|A(!ZEDKG%I#D<{%`)uy>FPZN)v$r3!9L zcToS5`^`Z>(8&QP*L#>m3QIHJ*3MY$&vSrRh-s5}$q8#cbmMW?JE{M=0FRkR zjH%jjn9t*NTp=SMcP)ae)s3n%keGt;m~UNseoVhKTtc`BZ^@ zadkx6A$9WYfqUnB%{hIBISaFnU=M~Ez?@UN#!I61nydUYL44e1XZ1mNN3~j8fE-qb z`qS@^*y6+ePActLNG<3cMmPOA;}-8)=6PXe%1tOGIw)h&LNt`Y7<~kK24$Xbza^wf z-B!M@k^~^7S??I`n$E#0s0MTWjyUPdtB(zL6 z0s9T%3Ntw@AY_z*jxi8@yDi$tw^5on2(4y7Y%1ESaGET?DiVH1;Qo=9Z}+2QmM4Xg z!t<=YPde^%a1$po6nr-6&9yJE>FXud2?jPo=jgjSG4|vInT+GLtcMnUFS(L z1I0uIuDM$wD$2GlPN6NDp{m;_(7y)zNeKSGeZI%vG8J5JS-UkL02>KZw_#=(IL@>- z%P)|$K+Yf0*4ph{=-1a0d9+SwQ=sBl2nSHQvp$drsaFWLv4#xY5CAkSwpe6{7G!_? zC|d^@LC}I-MQ$*tDfgt@PEvvB?smP49pA;_tKe8{P|kgXTJyDMZz_|`iM*P4A^)pN!_nY(DH{k1ZZx0I4LrpKn`J;vx4}1L*_G7g0^H9 zgq}BO$4!4)F)k6lsTu^j5KV8VFQ}!8(bR3x87O<|i99NJ8szl+L#usO%xwy*Rs#)B z&zG{q8_x?C`n*zQJd~XIMdvO?ljiOs9bd_1^=JWY189O7FjJ6ccOOo{+Vr|Acob)^ z$Oa4^{sGH3Y~5JT^0pd-6wme^KEN69V*@6WbOJSr5e{0z#1bcIazd~fcedc5^XmmJbN&W26{nFt$w~CKU)uH`dZ5;ibTT3lA~&l zJtQ5hCuLC1r|>fb5FC?9SIU%WIY-tq)}Lai!*JT1{+ZyM1cQ(F#K?ILG%AhLHrsY2 z67=heDuq>P^aZq@B(6Up%7n#7vt63v)S3R6MJhs*J3LX9*3(ezox1BU`ed+SYkp># zptvVIN^vgB7vB>Q0^G)lA(qU-_m!89xG|<}D$LN3vYC?Ej#8x$AOBv{yU72^nsz^* z4^3?SG`qF$mbFk{o8|4Ok~v;Simh^L8kjvCKVdgN4NTK zFAp!C)zspFP&&k6(GVTI?VyDfB>xjX>7(&m!LsM+8e7();GhDuG7dUaL?wbJFxPROA1ftkvu z$JYiQ@t7stapCXfcjt{LB)5XxXR6%E?c#XL|3GC}-+^0Ux&6hZ_SkA#p6C~6Q9A&s zL^)!~7k~_7^t9%1IE7^)IR1r9vj!YLgw()jEz20IgkPNi;pwn&@8M#HJSCe9TT2CG z2v8wiQdG@=9_YPH@$%mh)VrL%o{=bM`aKz_Si8I{GRlGL z<%1xUn>3xz)?@oA#cT_JzjPZ^%mCs4#6N0Cf^GOgrHkF+MsRd&XH10ILz^VgNKB)x zqWc{;-iVWq&;xNY=`Wew4V~0KK_#2skDMHNxuAEhaKscV;>C$=3mwg{BPn}_o;Q}( z6VaJ|fVLz#RA(U$dCL-ZhYrgiE=@xiwYSL|O8a1_u74$#ihu>W{!W#V4n0QnO1Y6=UzV~O<>W_f>f>L`kf|_`tm?BizYKE?+7_@3^s|{W0`CVVUk@5gV z=HP~aX?hqx^nsFh&#=b#b4Q+Jnk-HIfyv9o2OPK%eL-Uq3|SVquFrcmu%BVj(wQr4SsT0DYfsu^i@MjJ$iUKWsR z9uzjsIni|NyER;ef5a2WgA@>~(;1naH$6M*GpO&g?6y>NykjBAaHn@7V%;@3X1*!6 zVK>CGfpPAN_Y7m9_12_R479c!+Qxfu*Cxpc01u-aZZg*v|ImhZli|V(>2H8K`k!QW zgJ&x{9+B4_qoH4{g!(v@N)@q4Ht4MvtyTX>Yq`l?fR4a7lmBi?XwNj5 z?GAxCrl@$8f|(ZoTp$7RoH|mwwC<|k@$RVo-4;e>Hrl|o+9)9ry~#h!J=M2mfiQpS zWnI~(NwRpKo|EY-PI2o)nfuIXH&k%20kWf@GLGQr!!q`)l=w6!e3xZWV{z(?CbDnh_OZ{EAiC&qqnfXOxi;4RgmB>+fT-xK;m7{jr zmDj78`ztJmUv(Um#!{5%*kSXLRdXtv`z1oNI&YvHR~oqt5Q1Ary~@{rv0$?C2&bWSKgo z_r|8k%2G2F?HR=hGvZnuOgzE7*b=fjqJB+tcePCf{Nu~XsaAT3{jVQ2zv8?FSIXuS z;$(adH*WQ7ta~~F@)$iMquFP z0EGTiP*I8SXoF#HX>b6NEz#sQ6`6b1y7?RPg!wC?d;m>dA-5@E=3P$YKc+)F8q^T$ zeh&+skti=f#}SAaZcIYwm!{sOpDWt1F0iFPI;w+w67|;2j5CdXMq}6E3nwkNMC3`g zmQ9Op8}riVkz3q<9cUG|{96ycmXK=;mJl!*TOoX&Ibn32;$-mF0T@YBi}zx{Si70{ z{-lpTSpuuR^X2Z=YC_&60r8kT)F+@1<7MZ%YHcLx2{f2l9p((|q!{)duFz)joHyn- z1Yp^8=&OhkU~?1NbAS7z4>hwLd63gf&V07;A^m0(4Z}H|XU{ke8!^@5p5M0;Svr6# z^OXBw1+v(F+QAGMKyBrqyHEkF3S0Du4u1l0t*WQw z!3iA!bsqHL_1{OTMA-_W=lUd0bhlw!`vh6<(%$&*!jnOwo(Fy*P3o{W+ zoW|2}yPo~0!+tYD=62;Qm!N`xXV`-{Ami-^+TsJ^c?uBwEq6+#LpI1DX$N=y;0Cg| zXrG~EAR$P-2cVMk0l;1)l(SvTR+2w)_!6Zw8y(_o)=Ae~l~RARm#t+AEwc`N zN%Mn=xk>~tUVE)ya(n|@ziRiQVk)nmn#B%S2Inx$u|(J&P+Z;6W^ZlvQxYh9zE4&( zgOG(oY`WczRS~muJtO9E>T&uF2VjyooMBkaji}jEUHkkO^I)mGgk6y@*9MsAPhvBQ z@%*`!$c~l$xnFowdh*XR;p1}_nGB91MtuWv7lWkv!`B}+04+aRDPZITu>+&f>An(B zCTTZg{=5YsWkv6Qq8XAU>BOl`^L~1J!JfBC#~ZhJ3?#_K#-^xWJTebl148;#{y@hn z&DTvp^bji;kXKWE*q;l$=28W{EDukgHTu%5@>4a;+iD(2+3kZ?d%Yj~Y$)oSkvQ3p zlMM?5$4+T~{)&~Mi&iAkb1}?Kdd; zV`hggYFoNAJSXkmp>$c4SxZ7|XZ_B)0#D#-?Q(YQj+Ap*s5Fk1fs-L3Xp!*7&Gx9= zX5tDJp{_FTf&lcElDAVU_-4oPz&``x1C@j6gVRy>KTb#1zfZ@{hP{DS7Os{NpscrW zwX08|4=Mp(Au{#AKx1tRSe3Kex%bAUHL`mSu=lkZ+J%NR?yLC$muI)qU&m{SJzyTw z(%wekz}0?t0XiA5MG|}oe>J}ECq|9<_T#ft#VLH2mz=?*1H)x)kxH_|)`@UKYi-f! z6>=hYOUL#l2Fp4I9OoRRcgDST8Xy-j-47X4GtCl!H$qw_ox`;~nI9_=O{}S&C&WjPVf~W7 zK6&*2&L&VU7mkOWs4rkeLh82~BTto@{6+vKl<^{-lV{kOkh}TOshNfj9`72XUB>5j z#&q73n-8&R+nVgDRej&V{io~JKZ1cN#?J0pT-L&}4=b5MLzl@DN(qM$n6z8SYjuYA z$qfO4s_zGNg3wMS^>vWjyX+K$Ngh=~gg^YMKkCo|flJ0q=h4f9sVGhRx(ZXtAL6g>+<){EIx}UpF86q9AgUZZ=h1_&@)Uyuo`fvOo8z+Qp z2u@5!`%4Sd9MC!08$hfHz}|VCtQD|m1IzjTPXBqOl1{7ra9Ge>eZOq;F;Fsb)q6Li z;q7_v)t!YfD#9?3zI~albU;phcy8Incjef<(wwUstyG1(+R)XHR^~MBjaWI|AS^`y zo|;w;aL5BJkd^#GGznmMGa1NMP8lK?>FLx=)eDzj*@9Ndk_pI7Z%|D_< zate)&-xRErx=#X671BD$*UDXU4|I;h%i6yIhC>sHgU0QVd-F3})lvjYC+;hw!mq@t z<=+ZZxkoy)MTkQ$Ml5r8Y^*gE<-Cn(Tap%K_jNw;WrFM*<7^p?Xe@l)^T+Zmrt&L-xIrR9nX;Nc z^1Znl(cT^ROjpR4$JZztvDI2O@%?@-X61A;R%RXR*HJE7JQpe+k?mOV8`G@Fwv z;%ybG9_If_-rwmN){Tngt3=mxo1j-C?|x(FV=c>Bv3RYCXd=eVC`G0d9e7bB=S7aJ zawZP%#JPErOP1VVB|R&~vUW+mM7=1bnM5oKj?~^VwuSecqJT_-EzL^p?)TMJg$_b3 z&L%eQnk)&-4!?m6+PVbDs134FU0NIv^(T&YO~#-^DIl0EH@lgbAXW#6n&hf5TeqQA zMyl%}EUo;9<-46t=MXKn8m~e^`EpKca(zr#-hiI<#+BVPQI4TMqLgPLm`Q!fW!~y1 zy2}27KB1zeok;gZuDwZuEq8@&~Dx-D{f35 zZ23_+Ai7CHA6(868cXSqGMmGy?0b`ePGF=NgCxf$cL$Ytu`^wxj9+Skjy)})NB4Af;E*z)?pZo_lT_7gW{ zgrYog8|Hroc`>x<{Z<b&-4&iM|Aa9L4!xlQ;h0h?O|KRqJRG z$L2bDDxoQ)sNur8HqUK1g&xaSC7FJChc>*RsLQ1VB8(8FrE|u!o=R+80`tI%P)O>s zFdNYAaFk)khP%`|x9NsLc=BlCG}%EAPcVR70J!mt*8QG(wrwf(3Tp5Jjl) z5O99ON`}qiHgYJ|jMk3rQX{pebuPVD-@Bk3Ts?v5l&&0rykZQyuQ^f#oopdNrQnxp zJPU<@d{qgd)8AD`=#RMMd7@l7=C+0a;fg#f+f+Z|V(}bJ{EJt#bt>KRa^}Q@SMRAN zkB5jIw0Y(?;?ac<`(YHROyNzsA|zacj$1JDVeZ_e+rA&@Mg~KJ%_G_tWl8YV1%&_S^bgmS@$=lDj1F`Zp8lZQubu4-DuL48@ zlJi;XBT3Td9~Z>u9&7f#V!Mci#~Jq8H9N%z3SKr$F0Nx)RMl=9`scv3o(kG%Sm<%V zZ!)o>@wXGd&&Mrn!;U=l+g@a%kR`0C@g$~*Xfy;WCBt64^SU5!Ij3TC#44Bp^nLA{7Qf0~xTPyNnquU1DHd!lD3BmFI2huk)xIpSV_ zb^1rtuZdsBMhE)K(|V^^TIF4aO&LqN?qA$kIjd|wI8+_tEz>6>qxS9Sqmb7a&hSvL zxh#~!i9M57nuoDBG3jC&1XZl)#>x-vl~`0H-4 zpC)#RdK?xlFCso#r)ZzIDeR)LpXpW|Q~ALzuQ9m)jbq^sh0TEA*xik{VdeSBl&Y-P z`0QD#aW>#sBs>g`JaCc~6uWy8a-$~IEUa5PENMB}g$0lZrnki!GmW3|Hx^jZ;!wX! z$`9u?ewd?WSz?=d$8i~w=E&~cr!Iv~K(|$NQL@BMU+RGoEVxfQ8CSv0sGqr4nC{-q zYL6R$`H9_>kZ7{d?z_hRQgrw^eM#N#eBxP9nsc?8)(Cn6L;}sa%T0n`J7T-+acZxQ z76F+e*CCtZ%g)P?8N%&XnYq=mGuNK!Np|2dz6r;4`Q7P7?Ll75h{WVdyXuQ=m;JgN z`a~DEm_mI8q+n9-2}Bd8+V{!6opqe9heJlN6rB0jMHnDQPG=m z7fS9doWE;KfMh>$tv+6j#9TpvgRI8SSnkDxM0hr)%9u?vD0JMiUJ=IcLubyRTSL9Gctky{vJiUVThnh={i4tN90seCpNvt1WSkFpVH&r>BTE`xivtE*z=JY@|q%`ZQhb_jJuZG^zlz*sIbYY1+bZQtGTODPesP3zXJsQzj&MPWP5Agi=qwtuX zub?N}lf%&Yx!k6VZ4wI0a7`7zdlhQ{-{&V^BsO(LWOpj~O~&Fo_2VQs;uPo0h4rt) ze(2T^dvi*se`kB>hsr>_ zqj)MdfemX$6+)6r9OO&(yBO?zuWC<<^gCRsP#l3JnkTrqHdLzmOA$s>#-eK}e(w@8 zsRrnIInWJ@N5OSQeyb5H1d{GQDR41T-qvK9pH2-oQl$1+{EP9$IdIGn?VpZ*?tJy3 zHE0}?C@?tBzzPB}{jWg$_CE~7G^`n4D(%#%k)8n5cvH2yV_SEJGp_y8+5>_VdWQO) z)PRJe?W*Nty`VK+JODGg8)$-lS*US~|lqP+S)Y6+7?UEAH@RN{EBwCX0MK zI6%$yoqiz1ncm(E>6Q(4zy1hP?DpC~;CNp4m*Y!djx`2g?$z(*%K|QK#+u(cB61L_ z=|u)YjW8qIqJD`{!dS^EtgKAnBxj=nPyDQ1<%axtnyStE!9<4J7`={mXgRqzLwYn7 z!|~gE54uKY`B)WXmRqNmWCjf|Wgx8|v8_Is^R&wV{aEl*&O!Y77k(8qKNG!VcIya$ zLQ{YG03kBU$7P+U79R@UH}kzmo*cSItPgbC z1Tx3DJ#9@3r8+cMr?*@_utTd12RPpLHw|ApUHk_%kwLr>+Gf&S{9B%Jk7e4YA8)^n zeu4WE^iw$)r&s5RTe^<7C4SAbZYdwjsmNM@AZ`0EK`MRaBuIUFQg>>WA(-G>JZxvn zZSUK(Y+fp!w7gV_68fD2IET5eWLEWS>3bxYx;I_eWo^xjZf=^M$g+o7)NyBvf_n4XT>!*MDvDh`YJ{&N>sEk*50*?Ywk;bRm zh9s=?uFf7XQx{0O}eyZ3)jd zZkGV%=CsSuG))I`R{Y5SSqqHII*bulUa7KQBmnOm7W6b^2b+FyXQ5un`Q~8^g)-Bh zP?T|sfgbdGj1T7$F534sy-X8sjmeHF^r7FR(`?7??p|tqa(c!s{ifi zOfEv1Ixlb_`LeN8@U|CkP{=1tFZp<%h?R@`&ak@0t$Xl2@te0$6xCLZdWh%K(mv?= z8QSf%MB}~gBc<^J;6Ov!Rl6gVx#NKYyB9S=uVue?tfr<2R>~w>m zj(ye6*ivTh_pA4bwJ%$K$1P8QV2GBr|M(cLan{Mj?g zW?&BDfwbEM{@Wpl5tveAtOM0#-!I^Z@;u(+Wt;mwI+o+D$85qkpqgSv+EG`{oDO3c zKD_$|DcDQ(v$-j@gz4rZ964ifAvV>!>J*hoSKT(}Wu;WWw53ySk}A$m~m$j50&WSLUxXI(DZm)A3@D>Xpe;gEQjRJqAe_@P5X8qJ2@M0iPQBi%^ecyC*>>Q)PqzsUlu4rk# zC%&{^{|%HZGjoYAz11V7s<(TTR#J{Y2%4o|;S7i>nj86<^7_H2bEq4vm=*R=ulC%s zIcBzD&)s2jw~&`fzpuqyr#vhMqTcJbDaTMTO(Bnt4AWy!)Y4JdGJpeJji6v%{nPSC z>41(l))WGo11TAl>ynLE_GOQzXudBS{VJCPFuyB}YnulCe5c1!M*4nzC(uE^nsELX z@L|ULd>DI!lZe&~5AnJe2=v z0YqM8$2z+LA5cRyQaio5NE#b8UhHB{ikyidu?pA!W~1N~y;5Xp70n~olA_uBWVh}I zH6QzX6t%4iuKi8hTZwr}$vUdxaEYEnx;Z_GILeKVpppM;N6cJrB#!jR{U65O!Yk_V z+Zz=DK^j4F1_VSpM!Ka%N(7~INQaVcq)}i9iJ_%I8U~PVhE56T?(X(}`JHp#d)9i_ zy6gT2Gwb<2``PI0&n0{Fi|g>ynpzz9w- z7uxw%tOL-o4ohOys(LMx+RR+3xR1dl9V61OER-B zliBQgachOAbRxwM9!sxi56LT*jyK79%|5ky`L}rZ(H^&x)u^)-G?@uT0f`Kk(gk;t z8uo9gYSK1OGs~kDHm}f4#KCP&1n?x+@}}V9~iN zd&�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 literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/auto-sklearn.png b/docs/website/img/logos/auto-sklearn.png new file mode 100644 index 0000000000000000000000000000000000000000..65141af67fe239ba1dede8b7494c045993e9ecc7 GIT binary patch literal 9083 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 Wa~H;pXhNb4k&cGGdW9-D=6?V~j;!DS literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/autogluon.png b/docs/website/img/logos/autogluon.png new file mode 100644 index 0000000000000000000000000000000000000000..8afef59abaeaeda5eb97d43b574ba1e51614b25c GIT binary patch literal 54649 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 Eg1=qiuK)l5 literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/flaml.svg b/docs/website/img/logos/flaml.svg new file mode 100644 index 000000000..5ae22b683 --- /dev/null +++ b/docs/website/img/logos/flaml.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/website/img/logos/h2o-automl-logo.jpeg b/docs/website/img/logos/h2o-automl-logo.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..68ab95b32b00b4fae6d706e36796ded4c28c4888 GIT binary patch literal 80863 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 z ~RxW%=6-k;OgRtpPnDAnjFC#)9T4^E#y@1#>W882fe6u8VUsjT}2@N>Ms0zv;5 zll_Sk6n4Mb17P;9SepHcNm?$eZ=QX9J*H9Gn^x2~%UYIU=C52_{);R@fj)R_oMza4y0x9kHdC^}JG3bbv9R&ae2?h=h3k^D`{T)03kl+wd&|m#~z(Fq^T$gH~@r^lgAA8x3 zrh;R7!;6rK!%U&9gY1ULOeE)p>Ld7Eyk&oUg{&P7ugFyAJX^Xkl2F;xePm~uId1?V&a*AJ3te>3G>eYT7p6ub4qvfxt)R(REGPIWS+p(44z3-A{AO z>1$J;C+qS63@{nuZ=?wwyu+a2NdIowHt)Rb?k`3y(<3jZVh5BS`M&DerfnU{Mj8T+mK z@dIE--oYE0>RX<1i9e*BW=Y>-0O_lc*ydGQrfUoa>1jI(eTzS&eO7J!5Xrfzegm(D z9!xyur}>ApQO3~+nnSe@b8P9RjrS%G`jvd(NxPx}=L+dc%x$mwrjF7@X*R z`|IBvx^?>X%@P}IGf0b2mJO@vXszf2Ok?n?)UYDPcY>~($scrviK|cEJ!G7&pVv!1 z`~r}UvgWRBf7o@D{O|RIBTrFSqnwR8;iY77R+KDlsBl;>l-73e8EIN+j&DbZiSOUF zGfE34vGyN(DHEA~;XBhh{cha}RoZ>r7Fi-Re|G}u7TR9I5{jYlCc;R<%L$plC;R1n{z&yB(Tv(e4PVp4&#j}@=+bFmHvR_?>Lr|G%A1k_gMqa- z&39Ti*(@*m|AV(4<{t_>dX&;I4p1)t1z;)vR7#4$1GGBBw&47Rbtl&Q9@5Hrb85-# zxSTW4oK~&+asYO^Cjs|OQM_bp z2`=t;tr*15K`BABJl={N^Tb1F@l+SNuT%}Y^Q!stDBJQVv$Ge&^)8j4Jd5mcN-t>`EG$HOtFfXz|1xRqHm7$);8)K}(LmdqZ(P693FI zrY`>SkBhPpUBs{L*eO!1sbV&#mObj)r~iP2<2?S@svzG=WS1&6|C%R`PH=W2fA^r~ z#LZSqhNE6LY5n@Dp-q9W%rZwKXr1OJx9vw}ZUbX{A2UL_}Dkk4ITBHI)l&rV6)@qSC1OnpBi8p zeR^$Iglh?I>c+qE(dLmxVdsL_kB@yT(u5A~*o;v_^!&TYZ3ld8#>Xd4C%&1lP(o{* z&0c*!p0Vj)d&p2KU2~r;yPZ~HyI92%*Qe8KZMMTxw+Hzxfri0jZBo7*>UPSMsEC7Bz5H$-38b9d&Gvsr8wdi;(CLM6T0ti z59KM>ZmrLh=b6hUH-fzV9Ttrf)O}wzOfJyM@)gb9&NxAuLgXGBDgO!W+He0?<0P2F z$$iA7UoGBpt6TKRc5dbX(bVyMpvKH-8S-g{=x!R(l5SIIp3`Ywa8Im+&#Rh=W3m>8zM9Ju@F^ zP`I!P2_|glbHXL?>8$+PfR4A3-yaw?){@A-%EnpIwf5R66IX}L+^rtcc`E4({QLz_ ztre`e^~+mhTXt>r3c7pYs%u`7w_(%t4$_vDw==*8mpMky2u;%zIJMgA(1!Rq#ixR> zuU8S|TxzA^$AfIY^z{^9r+v%bH$3q*l=xk7S?|u3W!~01ty6WMR;R&V^ixo< z#mM@YBoyFlk3)7r;fbzr{?%eo9kGE9Rt}?`kuLKUE!XpUwds4GO4QxMmj1;b8m(WQ z+oSH<^rn)jnB%*%zFgw^SX#fRCrFL6R#BtP+0{?doT!E}GB+jw6t@>C3tx++-LIO)cvjGMRu$lmtnh5_w;R$W68#GVPON zf0aa2l6lT#XmLN1!qs=r9Uv%zlxE)7{qPx*^z`?sZk6&1n)wBAU)njvFVK^wIZu&y zA1P=vQ_*9isl<(+n7WXm3V7{m{haDf5o=jO)>PfD_)l*62~%_Bq}$0AA3(CZ**)D^ z_S`7*I>0$J+hY@%zf~h357|&e@%qDMfVRku5H{Y|2*i$2OaD~tcIdS?*=tDU%hok- zEQ(&}wI7aL+j0x0YaRp|hAJ}If9q-TYEY~qNSw@EuDjFZY7;@Yw-XWPAeg&()o~gfj`(eky(H#r>%DBfhfD@a2`hlFMy?&=+~jTj`5xJWvh@aOGbuBq5C98tSqBn{1gn zyzljgT^`O}JNEU)>o9iI{ac|-^MA~WatcZN-9}>Z5VD8Oum2e5C_SDck+p)(-7*U( z5T^8p9oLKg&`Ft-WwfLvO}y9={&8U$ZjAB9k3%un^x;YLPg=byj%YP#+kGg|pumhG7&-ra;(F zk^>oTwShrnFgf7DDwO?RAa>&jve3lFU3(d`{aqI04>fMyX4Zh zWV7sSOe;QNTc^sgj@(7vXJXHHNqV-LSP!vT z+BL+y9+z%O>w8!G(IlEmMa>*L`3P(ijqL=jf6*LgjB0BoG`3>UNSW(>%QPaceYB-i zE7x3DW@N0|e2OZHsUA}kT+><-rA^<*Xrz8T(dBjD)bM9NyAU5iCb-FDpHt2Eq4O;c zQ1z{kTo~25W9)_|yZWB(tivCQVKSUfR5MFFWiyk*LlICYOK49>i;u~`!kB?pBJ>c~ zGzxlb`en>mWoPn3Y)Tv(JA#A#_;y&+UfX%Fa8cn5H-UJHmxbG8hh-ESc!u3s zJDecz-Mi}yIsg-Uk4dmnpWUCT;~WNFHg=m)@zE6xGX)tn)B)C^6#1z#o39iz?=R;*!g)Qvn9&+JDn@5BSI;BipGR-)gCf1Uu zg!=MwjJMITRROFR@x`1D;?PDsv$Tu`^9A{DjbpKis}uIW#D~T6en1g{jI2~56rZ7B zReVh6l|?{<_fNsy4J9^;M9}48!`O^Vr{U8x;|BUxhV6R^r5)#5^iYrV685l zp585B%@`5`UbfvGD8z>~JiTG0$I?jDGEZFi>hWD(O*+ehe{ham0RI9^G!8kD~&3mK^JJxfZjD&&z|-v zCE2yeQJF`1fAzUvQ1f_jDW;QPF=JAo?Z+_>vwBK> z4=5hsha@OHC$HHgwE9VG0#p|5A;pR>=cGMA{n@|t#uQ0AZkB$Lr-pVyI^0@4?s29J zC8LiC6#V3pkK=K#?K6bO2h_K>hAn>Ve13O+-ObOb`}vcf$|Qqyb#k+F2~kZqb=CX= z!uwz*=jbxdV$BUYhq8J)9eQ=c(q0Tv3t5XLS83Ew0w#%Wim?R)BUX=Zv%eMel1ME{ zQ6gip+-B|7yGAW^V@^cu2R7p352rP5R(lv64bEcH}YuryP z-yl!!3>G)HOih(z)oXILxT;wtN6gn4RH~W^=tkQa*lCo;wUsWH7V-L#YB`tjqtg!~ zarq3f<1HOeTBrnm_}b41N+S|Y9ktrao*U-0_n3)pUfx57&iBxbYHEk-+ z`%pJ6cb`cjxRfF-S&IA6qsU+^s&m&od95weEVdYy`KL?p<{5{w%0#61RNf2n%iEYm zB~w%^7-UjH8%Vz$1UFjiSYlnnZ^8(IH&<3ssy_VE^reyRh9$4wE>n1P3e2s|_H}YT zGgOrv9b7yfapL~c`tFMBEg(ccK*F+M*%GTJlh%9)ZHXk#U^_*R(A;|BC%qIOUu?G6 z5;%Xkw>UmGWr>kY$eP2`kV4cNE|K25kZMp+E8A6kt$Q!{n;RVcBx9<Y57mEWyhpK!q6Df+V}_qF$&evA_{G<8EJ$e@~PmZucc}*!&C%V5*EIx z*5A-*jtZ(Ynul!lK(TV#Ki0$23(=I$w8WG@hvJ9Bt%Wn$AK50Ev3p$Cm#6q55hVAcI7NoJ(Wa@W!1 zjnV;Hn3W+^hEqR&h@74G5ty7McAFx;tomAjr?Lz1Z`m}c)=(sHI7BM@^RrFXH>fH* zVlIqG1kArUPlz*HOeZRlC1ILIa>0#ZM)DuoJQ)0 z2-s&safFS92^V5`FWAhpFo^=o3RMGZo<=6h5=Y~yz{Z@=C_U3_PR4e&ALy2$wPxRngULBvY#~ZUNZ>)!o!d>s&5HOXS*Xhf zuT(mICh@|fi~g7h72lkY`_s5{_0P*t%T!Ot>m*rarOz$9&P@LacbFbR(i~ z;R@T(x!f&>NS<==4(83qk${JftY5YTXp-W>VPwGHrxjng`$PMS^U}8esJ9@GZbc<( zDV9Vl>*Dc=O)3yLk^AA>Lw$TR+>Mo4sbaNUZ|xwko=Ltg-X|fmb+Z)1cAxRasES?y zlAxWeRPMqUg<9Fkt{^wFEYkiQU9*;VIJE^Vj+8q8T6Z=FrcnO9(c`DRX zLR(*}6V2w-1=cGixa6otm@@FKn4Ldi@liyxsIg0;vanJnnv4`=(OMmC;q+0ixx0s@ zYU-?0&;fxU&%lrZmNNJ3FM?~_Fm3)Jb3Sroephjrr;v5Fn%*}K6u$R0W zVk85NB`&@itmjmmSO(+gI4_&nz*0WlIznC@i(Yi=@PVs_R_Q_=V8O(ba}=&+fs&6~ z{=>B|$DMTm=)LgCj3Wt)6clLJ6^P&}`k5Xtmth`gDeFxf8EFn_$P~hA6L#wJlV%RX z*$P7kG9HsOGLD5>sklv+9D@QQ1v4?ibS-=Z^4yEOJ@~%4VsG)!ieO!NjON_b>{1a- ze8n_s)e**@ma#V+nJKCFJ2)4n90ImZ227DT-sn=&`dPa=h3&xLoZQw?!GFASNWabK zAbDiKUTPR)Nk>-Wy%48VY8&NqQiJT4E8w)rRbvQ+XAG!z&pV87~-L9%qvz!;`Rpq%1T9bU2Y zz=k4@w_BqYX#WUV+$D>{yv6{NoxW~3rDV`WvDuyK$f;bGt1^U?`*X>A_G5-Hww~@! ziIgadt=0?;lT#zjgpO*}>E>t>>;Pph2%>HYnE>I2a|~!lpCDE7eqos1q7z94f2ZY! zp@cjV>c^2SOQqIrpvKq+Q~Sb919A5x>jGYE(@qV=9#VpB5q@^B{W_n*-q|%^CxL=i zR<$T-xQ`{mrjEkGwi)F!$2kn(M@#C3fP0|~XcdFlbjE&U;R2;fN~H4Pu5KGe4640+ zQYKQcnJV;clRQN>6y=;%{N^?#0$e~CMZ_-vQfRq^drFavVg?2u1+y{JcX>z=c(fs` z_dyuV)cFwB6pSO?k@PDrss$OxlZz{&7Mj#tUhaM&NY^BmB+S)sEQ1$(^U~X~iF(|3 zjak+7DJ8AE>BVGgIws>uWT$QNh5W}joIdJXzcIBpn=}kjHUWxeqoVe`mqMDhVKEUx zo#cSM!ZRj~=*RtBr#Q;{L_ftgCs9!LQIh5{Aa#bLPaHll6I#U*CZ3t4oL0}uK(76b z`WG>|L}_CPV#hA{$QtpK2y@)N=)@=(ab4^+k{z*lvs2Ljc}bwoE$@#bjxTf&Bk+w- z;V5vN6MB4`=`m#XT2Jd&j%q7u&o_qey)Q^j47$lES5lCQ`e>f2V7&K6S*_O-Tabd^ z`$Kazlaw}QhKjg*=&Bys8%B{1xX(~`JX#}`L#i~o29`hS3h*q0>TM%*;(-$Ho8x*! zkE0e7spnFQVAl6IoKqC(=d%(>KIQ@lDSGqTU9TcowDMHnh z>1&%JOCy5l72PAO0&cA#Wivv~-|^7AT{Yq%!$+mUlK1U6`njB!0oNds?o;S(#$w-l zyT4iel=e;{sY&q_}CtBwORk>TvF*d)j!a zWs~%VO60{C%d$y{${$1bS-hDaf)C+s zwLI9(oyWD3jcO7_thHpxH6_zLCVL^_mseGrrBYu57 zSrOeUJNu2tsot%pJ6IZT)De?qziyQOO(qLh2BKjC;l`@$G0^O#XSlp2Bj6W6ZL;&c z==}|Yw#*kk;VGXZx9lw9HGe-d1l)HFF;VkgVgjEgo$I?1`}M&u8cUB6X!`+?btP|-Q6;U%L@rdZ zpstR8`0%WFPJM~pVkDWp*Zyu#qk5?N6FpkK5mJScE$g&R{o98iXeb&^ugF;vMDeQJ zLJo3^^G%ue(lTwMR;n|xaP&x74DVU%Xz1jARN$hkxHM2+n|=PC9GWReZ%?*OImnA9 z!^du^JnW_p=hUWwH}jFlrI;HcFVBQ3JQ~*O$-1GorcG ze_moxMkT+PTHb$UWMmkn$?BSwxD&Ir3;sqE$JL#onkSsM!_|b0+q{e$^0N&ZCEM8@ zRAc?O>j638UJg9Yxw`<a{G2Sn5I4*lpf`d{~-}1*_t6NxAz> zbSd?a#dVhkt@9=ojJNN?ONZN~THZqN;R@hj85TudNpUVE6)edJu}szvLNbC!u3nNE zM~%c_-hU#IO|Jb!MkK_tmitqlPD)wrlb(&?HlrWqp6N0z?=;b!V{n=f89WkM?!*2Z zTf`YoI^)E^r|O!^iLfy~FQij4BsO_9?HZsdj*F<`bGHZYz)tKAqJ(HLa%eFtQz&zk}JUk8N>pCsp8e}In<0L&0)NgYR9A991TSop%SUSZVrnuGCV76Mkl03 z&X3oaC#2e#dyF%QhNNGyU!~SFxe5a3s=b;bSk%;~6EQnUKOhHv@)dJ86S)r z*)b&@OMqdCyy{X9pO+xefbm3>3qt1b6ru54uj*D}AqMIyg@u6DbUQSau@*C==(?C% zH08r;XzH=7r)9&U9Y}2?Bk%a%p%M~j-?E%-MHUlq(QrA6D>Mhi8I(|XhL;S)7ll1} zTc^fFqlu@;IL3u|76u-bYly%C*yQ)Q#$pC0>gt(PE`~&LYBN=y7n< z1@+8__n34Dx^K`YLYf|Z@Z`WI(Aln0i7>uW$LVv<+u>O{BFJl(O+L*zK8mahROrqZ zNhQ%9CYZ4&t^07*dsMLinp1qib_Bg0!6JlquHCW)zaxsSQjsO~yK!{FsX-_THjB%ljp)>Hy(2DO+y&LR5to{9tR1+;DQHYH4 z!6vIkZY*xg95n<9)&&^e5m?8?qrTzQdJlPXd_>0r#HI}JzYxE z#RKfZG`rg&`E={rlnTDP%#=5-2AUHB=Lj;(xbAIjzY#BEIZ-IYLPWGN-%`N`BHHU~ zsS@8hF<%WcE#Lrr%_laTXInKaL0MARZ#Gst1ls|+ywaqx-(3*67nf}Uk#DqaI1Xb-o~mC*-|gC$R@ijM(l{@7YZ zH5g~eIS8Xnq92ZE{ukh*ALunAdQ<>77&z#+9U%YwF$gel2mmT13K|Iu>sxe1B@9w# z;ddg+h6ZG>uMdG*34#3r^ySgd#FjX`$MLn?p!*3Q*pwH*6yAlG$(sIX0C_GQ3_AJj z|KTlkp98zMqzvwnuh{0xskkz|F>rJ|h|WPS^EG1&d6b{Nqo+taObYz+!46g=@sp|85s9q-J`x#Y+UUGobF%y7a zg+|X$G*wRMAq%jzFaVSK8<^o<8EvKrJKEd?ag-m*{Ye_vmxkoci5+}BzfJmmH;SRt z$)y;Ej)&pHqc2%uB5`FbC+0PSQbT@+vYcwUl8nxB?+O+BLeLA{oL{QWyBA9h=BDR1 z$@la^`jkI*VB`u{NZ&(rG2 zds1o0_3XYm>&fsRRF`T{uE-yPaDFcP2deFuL+o}RuIEBs%GuzPjZl1(Ld6bc&V(Vb z8{fHC#^UT9KNqOnmI+z8!7@p>=JycqCc|iv_Vs;HPPi7j$QZtqX^AX)^XAXy4tk$w zWK?Y&6DiG_ii}P9W(G!kMKN1He1l%fI#3oPO2x*^?w~O+mioy34}pfsKSBX?i`AtX ztBiO-8hMel&)H20$4`}(K`fzSWc2xrIz5a$KcqHQf7m%nK3eJrEpBT)`9ADQWivtK z{D&0yZb!Bsy3FlvyZL=S7xr1I2x6dT<)vb^=~_NH<17eB__*JX{#9gpQJrP(W#t!| zg~Y~;C*ta1r1g1L8z!-pb$TJKuLT;m?-O6e4&}_TwUcS7>2A0gQ#07}oLlFSt-+gH z=YT+yKXiS2qO()pVFfO8D(250-z%L@&o))lM z)Y`Hp&r$BKON)F~T%~?Ih7U8(tlf^@e;C)yxXg4}@R7>ZFyi1vkMl+M^_lAw)6N@9n}VNC z$%`Pwj!DgD4rc6#kxp@G)jXZXvIE6Q%G>gXP_25^{0LRgR=z2Q&4L9u~4FSbTWI~=4iEl5eDMmzET zTAjabN_$|Fqf4ie39aE2g6@ibylCYG)&mvEXx3?RW}9;I6xBH3F?U1S`C%R=mFc9}W6(zdfU3b9 zNB8{D(>`U%iX>#?F_mJ&dQYZv#bVX9e8`H~{mx!cNiY0KJ?9qy^FXN2{Z*{>S4*AT zy%yMHR1Bqg7>rN2e;1oaDKi4;YR=_)Bgf?Fs;Y}j-X7f0gIug5qc|JSk7V8=^+?JddK)hBn$dn zDl8+`ZXzejSx|3^y$*ljF`1w-HRURF+}$H%i?s?U&cv2BLipQGm02#rW z_aK`&?u3J!7phN50Z^-=kQ=t=86{wr8$tP=54|3DA>5Q8pR-c))Kg-H>CPNNLFSEv zJbr~DK;MrP*j%a03Zm^0PCfL_oX0Slw3<)|fEO8P1P4IIk)Cg`p`RO&*t;9!fN%A% z)=y7glrD`MQ!I}$B|UITB#hc(t0z!+{7?&xg-iZ}ArkJ|X5~Z70XD8UM__6iN^V&D zZPC`86?c~dh*8Cynp0)Upn3>nPidd`^?~&8^}JAg%7}7M>{8+-?690e=0LR}s8-Vu z-FlOX;UAYJX(~f4t~{cofz_3|+9!qnMIHYiU0)p)*R%WyA%x)WE(z|=5D4z>?(Xi8 z1ed{G6WrZ3FbwYQ?(PoR$@lGhzkR!B|G4M$nN!nUx4OEjZgusi6-S_I3e#X&XB;Gh zM@xC?&5uj$wqQp~eM-M?!}Hxiq&bY@zm!$E__avwDsI-Rz_sBp8e;Q06HMgTN*egJ z#|m;8?36k~I^a}ZX0AdOOjDgbc(du|F8yTiNLXu-n*zt?tA{>Yc+V& zUMlzJMFn+t&S9}^5FfcBxc_Qtkc=yC5HAi?)6F_YdDfgvgKprLh37R|TesH?ZK)oj z$xs_}AINY~2>S!YA@>Ig$tAF+D3+R&Dt*+Yfr(gxlYvico@RfF!Ri<4JtGGKE{!n~ zlcf>(aVbBs%t|{%ozX<2K~~_Udf&$^9H8^*eO4_Qi6uoeEa$DmHYPgpn0L(B*M+t3 z&0T?Ga9CqHIfK4=TuzB0LoQ)jAM_)9RYx7ForEGTGg$3yQ1(j-8!KvWv%{%f;$y`Z z+aoe(fE86=br%#tRoBYkJg4{(h-~o)o>gNHa0kg|nmQPeU6TM3vLb%IHBc!%9#I=E) zDmSB^g^E3WovFSvF#+{X!V>R5WRlyrk`#F)@kiEANyC`)S46`1^*+U_$&{k_;H+w^E~rR)lM{F6xzia3ff5iS8y$oMnu@L+!YH?!5^rtwrd&4 zTngv=*?FtvuVovrcM+yQ^odiS&TMKHVYMWknv0Vap;f*47sX)*D<&d>EA5yRnUS(I zmT6qwrBY#Vqi53FS|2=NgsjBVkk7$#ul}>@sfz;rhI#i6?mhf_7)TX2q~seCtG$PUMT69Ple2ONIgwE)eaFIPWB;nC9QW%3i?9(6 zWet^K_vGfqKe5}pzp>jx{8#*R=^r5`doE1n{R>>B1@hiX=ULgWEQBNTJ?ZKx_8F38?K0X{&ogBxf3Bvu~&7cCi(o3@<{OFLi7GT4HWqdYhG! z)QBozD`7Rj;a-kEG$B7Q^-=sN&D*Z?SVv(iCwBX2%5neMwsRX{%63=r+|s4>4)pNT zWl2DWX>Y_XV?0=-X;N^t~ z04n#;SR+jbGL}$sjrTKJ+3`vLW#x^*@6etWY(=x@kBz8|5-%_QYh5t%50tlEZ*vwE zQ9pR3y?)%S^YTSCTz){^o-{n>)56h|?F?Yr{$B4ar@vRGxej*;;7g}BdI;b~MFoaC zdvkTyd#cJLur(rwf;LHGm*J-zcU73>c~>nAU*^1Ceh?q_wN>7S?&S?y3%h3UzPwAs zU{{mvgkCi{mv3!S%dbm&B(!I2up-;BCcYp!hA<;MRg<5P`ns6nu6b6}ZY|rNpSdDP z4P;#C=Nc7h=lBEV<~RNDTB4E`0oZp4mTm2zG+f9@0=0f2G{4+bqOPM~0Qdqtd;-hq zRoBMP!m0NBwc!cHw3(RNJ5(|PI%l85i3JQyw%TK?Uwfmo3KI&ea|mu>NR>)1r}3|r z90M(_MWDf$8uTVk+S5{iXI7&&S}igauFopxC~iloIbwoFwx^c6%9Jg{-YBS%HJADl z4gOma@-qRx*?EZLIKI_&7va}s=O}!4l+{Hm$VFK!J$PS*xmDAE;`q&$28-j1oFp>N znE8t(ap<%iu*wrUO43a+5&zv0ynE1~YqMHXKuq2-Ck9W{ge}q0Gbp+v@*TUI^aYl@ z2w&_|j$?B<w7Z6_kSa zBLy_I9z-8!??Z{LsnmvCgg91{>BJ|qq-yGay;X#yIysRd0Ki;ZdXm~61ZfV|1`S<( zp@-KwO?3sLK{Kj55eek1%S?2cj?J|V4uaVKBYIVgEmdEec_sb;Y-c~z0ebNh#(AC- ziH};#8aja(TJW}~V-@U_VCjZXtFnR-ehfVIG2ha;qt&P+WR-%av~MnMikmeS&!d%3l7n>1>3CfKg52*KhF^Gm81=#9_XC zd`Qfb9s+zsT9&QVLDz*D$YkVz5ZpEDq4G@41IJgPv&s2}|I9=3gs!6Gz8n|9*RQ+E zriDDPx?`FKd52uYL^X}#W=@K#-|zBJ1oVGD8`(+f=EEY~@ce=L`mA;tvTR2H4`Zjf zVAZFp9_v1(jK(Gjn%I7YIn`*KSpH3BR-0}mUrr8VCtAlgFgkYmqWo3<2;ebOCW8tL z6rD*Oj_!cnL=BY?3JMW9O`aXg6tWYeTVtv28x`9gHtc)ueN;<`Bt{`E{<6e(_aDu! zGl?k=&T?RbT^&m@Y*|uwCR= z$S)2KXr~JN;O_!e9N1NSaCOC|Ua5i{3r(^}s*J|)C^D0Yref16V-PMHntcg4wJ)>HkxD-L z16B2U(RnGLX1dic5_*K{9^Fw!ioN5baYp5OB5I<4rE^)aU>PxBK6X#=^(# zL^dZURCAm=Ln@Rzh%d9Z>)vxETI6!i?x`05p*z%`0@j!d|9{#R`98pEdm4T|K+HoO z6JnZj@~#bb{@N#A3K{b5poO>Sr#N*D;jN$t!`o8!;c3NX+3IEZNn2AEh}y=@BT9`? zu&BkeswXeCfYEbk<R{ka6v?baIb-QcQ<@2Nkst@Qw4s(b!KowR$zkW*l1VQr&WJ;ZEuwsACs5^1Ebq z>0n;kYo@%Rx4Ys%(i#S4C$|s#D(#D1+dSLUNr)2)v()2x+CA#}PS_Q?(;Q8I%4ps<&=; zf0Mx*RXTHpA6K|JU}`g0BhY$Vu29)wgLzz~-TQQ~N?~@o{cjVI!~AdWq>!@kZ|`6} zZzuaxy{@)UOUEw0ad5=9upjJ2^4Gnx)_;`^#;$TKLDP!O!j3QoI8FatSd^Aj9GK=B z7^#w@E$iq&6!HRme0hnOw-^1X+R;<6s4YULW4Z_Uk39wgs~jKd7XAj}V8P20y7;NZCZp#~2li z_7O7V!pYwu>)-P&y4otfZ2t37xA^-c)50$JM)r10(!y%3--h9%OXg<^JU3x`PF!hq zu6o{(NnhZ54@OiMy_5 zv)fzk?rH#xiG-YL;z)CrYH>xQ&(1uh(?^uvK(cz<{1rr3f@`=P_IWLB+5f!fTHOG1 zY+Uv9T)&a&vjl%B?D~}MYzeQCb3LOyuGaog-eNva<-;Ua(0i&+fM8wfkCt!@gC%t- zj9<%=sIZBGMeAyp1ee%3Mw1G&=V030F)J*SD=3^f?9ko32?TtPRL#U48><%U`05AY z<+r=w^0|6kGkI0GX~yZr=$3;w`_b_ZyzVmWgs^@U(& zs>I`{Z3lONdGQg{Uj!A&DTQ>8Ad^hG;I&ixqu~tOM8?L+-sNO}>s2K}6oDXmCytQV^;))`gR89g z@<-dArK{|yBziyeEQ3@#cUICPyT9x{0Bi5pRWg);S-pIG zFOP%3iiW849$UVE{_99Yj8*IvN8eZj!v2Bf41dQve!Vc(Ie#8d@F zpt_Iq!l!xeO}d9A*VylA;DS%|usS7((o8py zOX_>mU5F#Q)i8GF95_E+>z38SOXC+2*Jz^p#0!=t@nP@aVL2%-$#*Qz4%M|}ybz?v zOjV2A7)t!HM#p4irl-a$WHV11%-b0(mEsDLN80|{kWJQx)}C14UhS|sPVHh;mcbvW z81u(6m14=eQUJVB^^%vnz0x#^kg$gd%0vs}F+wfYuu%Sc>LlIIAAwdbyV9*P)L-}- zR%CxFcUc;q{u2SKaL|5KAp|n{oM9JPzNj8znDOD$ z4nO6y1yPGpRK>Zf6A61yF~;jUXkym>(lsf`&o85FLp)KVr%o95$B`_xs@>{J#wAR2 z?uiXHmxmSuh|yZBUkBQifGvNTTNB4T3f@6VO9*K3Q5Q2T+}>AoUcAgmG7Twx+*Lo& z4_gc8O^|2ciZ8IodOZ`Kee3v9(d5S0p|U*A&xGS9aOhOmnYWr5hR7T>P{_<&a#?Va z$<&0K=E^b4^suFrs}z57ACMBHgEIC$zLIsv~Sz_tpDBwtn z*3{Hia+7!Nkr}Wnz$PMevdf%sE*SRf&TWXNqtHPrQfsSoi4HXnSz7a$5*K0kf*)JK zh@K-$;-I-G?qwn0sI4X36x|D8ue{GZiy4)Om~lO56m%pfi~sP##8@&gEbaJXDKqw4 z4v{?qVqz`7BQCF@S&@3!rpc7Li&9Z;{hN00e$pp$N^;1&4yulrr{0^;b%=;--#i=K z<%VJmiDVpn6Bh@jldF3RrrXumXJH`)6T}DqnuX)u#(|mYSSUu1GKaD7PZY`{pPJCO5aa?*SE3hwDM+;bQCm{IlH5)KAwK|pCZO&ZH(m^{( z+0m9vhFPr!Ov#v<#z*?Jx)@!7y!UH0ExrP|9}%RC7^Y*wB6up6y?iio!Vl(jjXrLz z&uW%#uERR0@?&y=x6vu6?SNj6V}qX@cav{qq7bedF)|W-*ssLRF9!1(SxT`@Co^ZR zD3N?l^^)Zw62H{%@;Jb@55wR*UMjFFvYTAhuaQ~~EN?smN4;S;O>8WxtlmZ*nq})A zESN%9M^IA6m7$TudK(^+zmFLIQuv*0kM@0H)I}%sp}ugsV|{haQ1EL`{xrIu@nQVI z*%dZL-*Cie=PApC8D#yaHkZV&Rj3gRf&8yKR5mLS8ltif%S@tq@n}bHzCyfsGLCBb zlw@&idPHVi@Q}#U?I+Rin+vtaq5*eazM^3jlJfEhfi~zw^i$(-<=*}EJ&gp;i;yG7 zrg9Oa>5aM?pQJ?sEqly>()tN-L%*~Ta0@T5dXAlS)!uU}@HfpD)-@4g9_g6XweSGQ z3;i0*IEXH~I@>|IO*8OzgEno$N%*z}qgv`KB(cjd+$gFkiuH&2Cna{3duItS z#_kr%jPaCtawg_DJf(JY+SAECom?tQA&GlhyXs=UaQ?>?lR*)5{nJm>1hXk4L>M9z|4}e(4WeT7(cu&5;s!2NryDid$;|Pw zOI;KvXeYu;&}j=#DO;<;<Gh$|DXnhL2Kt};8-FF)pXDWfv|ReJz|C`YSKf>Oz}P{yctrui*)(4j9w zHbcWpN6}jB*7OflzNuhq$XiEZ%eDr-I6a@$x>D7Ue1C`^o$c(fe%$JS5z5R>^yNZ& zBy4J4GuOjQ;oVR#(1;KPhl-YUkbexf0UDQbizSf45OP+;MMXccz*4fX`d)B#94#5G0A4-NCZJ+w8%{N;zGEx|65DDH{hkGgs1bLOI(7 zew5YRM$)nrPSd*w9l^#*)Y%NCX$@-73PGLiQ^k}`*?|wYhR{<%{XDMWlfYlvl4a|` z)3TiW6}6mY4N~P3uJk4UjOy78qo=qgKUdV9FBGkBxw`4KCvP(5OLQBrLbX2DJAa_4 zn>j7+Ajm?C^>foNRYnzUsMi$@6M`u>5sNQNJF^KE*8qW~X2Fq@w!hSz5bDJjQ2yNd zK7jrwWVtNan0LS2+fVACUPY$Y`q((kApYg{N{4A$M`7kmNcl4A6;tccQ%s$kD`}A( zr`du)!DVB_f`3wDdG=DvQ-+gzfSs-%sX2svmN=x`oix|3^82kuzWOL6ozTK*ws>nk z3h6NTFSoBcf0=z?zs-NO64X`*wlXs;Zj-7aiMjs!6yjOUDYu>e);~-$9&Nqdo_uqI zJg%R=gZezsH?EB>B%kHi&9w2%Q>x!{#KVc961HS}0eeFN@2P*D@8WlzdA@njk=N$`AVSC=*%A=lM zmm+E~_;oE)<7emF2h4^}0>@VfFaqVq2OM@Q>h+mcb)ML^nrfKrpd1=r##atNhnv~& z?qi+jqtQU1_jIJVFD3pK;rtM3Wl|i9x{9MUgX9`0iVs!r`g+qTz@rGmEQzue(cH#m z9@zc1QAHT|+O5wG_xz)}H7ze5T$Kbtu31{Y5_sp=M#)!mG{x#%6_Bdym$VUOifCED zWyqT$PmLfy8qeJP2TD)?7x&&D@n7^B{AUXLxp*hMSk9fq^8&vSdIx!86?N$>7Lg5aBj-zkzVzh+c~8U95Qg0S?z zJNv(6nE%rS5N-JfN_%UA%WY6S2bn?7aIeCiKrPO@UIHl8$VC6dr-2@7!*WMbiZDi& zG2(K@$1d58TL3HuU3tw(y~>-N9OjNlQG4+*(9xhWC%zUvK3+6;wM|Fd;I9Afac=_2 zlQwkixN;9ZSky8NYPw`cL*<}6>g4>qn=&?8^o#1WDvTBziDD4L8y%5rxCY=YKgNrMY?i`d7BzPWnHdAMoVo9;`rjO)o%&u(xzfvDB5U8+4BZ zBcV^A@+qCD@o6b0lBaO5_UT+-?)bq>ci;yk;Z=otk~q=0^1yVV%Y)7Ghh0`sJ9XlE z!Fw@;JVTg_Bj}4-qpXPXAH5NmC9gl)tpf~8NN7#{44VkQ<0Wgz>76G3{jG{1XMvWb zcw{JL$;Vojo%ib&gudnVN4!u(`qA$*0+tCcv0+R1Jxv9WTv#)QHvMMKiT$017i8bb zUPYhQzaM*R(~lb4SN<~x@kb_04kwF*alfJ?^d}uDN?0*ms%w?;7G4^@4}oE^+ERDl zC)(GQ$EU(S|90S9d2q31%jxrWWnw32jPw@w?W~)}_<TsYL-hA#b5vJ1Tm zEAo=yZ=*z{ucp-nW)x%@ZywY*a>O+sE%zYixw9Um@n4P4w5)8r^2Tt}1t2C8u8(%k za-R7HVe=7U4?yt*qixB>a!ukj*nAf=C1=as9tnGU*8dDqx$lYoLD?Q9dtVa0@9X^M zc4g*X8!*L-_}_*#@5e?nw#g-uGHxgYo$MP!)+}*OmUCQ?Fz_XN9NHcP<@F`H+r z%K<(~!8aqUiv;z*`T6AN8QH7fUBuaF6@%6`StUb3ScVvlL?4o&jt>ujlk;4BL448x z=KSs|py8=&_oDocXjCwp?2Iy2dRg~?ds9Uy_&q@SpJp+Yi@W7a!coayaBV9vbY7n; z;N4pyDdy*zZ`F&x{}1XA{2JJ}DyKwONA@kMCgJOJ`e3DZH|N&v(^Ay=OAbU)p(h!N z7}dSh%j>6Q;)|c&G8|qXcyeSmyU*PDrS1aCGJ=MRIzYV!F>udzMb9#q8$$OoXHTpb zE^@ot!%LnRT>20Fx?c>MU=$SyU>r2K;gIhw)(gIn{|3Eo-aE3ayLKLdy#>)XSl+ta zGY~n>2MogVIL7qGc{f9pg$Tob1%pZcKuy!l);Fmi0UlOKpm;5tILpn=NW&A z3JMH)t~;N~j@>YNyLfKKb7(biGwvV_yTA)DXcJ8h=cQp*2ur+7edhmYM#Zv(%uuus zha)s!gn8)8BNylbPO*N{g$`B$hXxe%ye(V3O}%)c`At1{M){(fbHP}ZIKd6uM2~)U z<`QnY%|hGyy^93An0D&?)$3Aw+2-|t=g=nbN_&X%f%F`;?R&^`!M%zQORK=8_hZN( zD90J4&BW4r4{q-L4PQ_|v&|miD@cZ)mBnqvB@1m6>#F(mV#7oJ^D$ifhx^wu1|HAp z8XJb#zU>OD8XjodHf`qV@5R)SEKTM1)8RLr1S%+n;ByBv%}8QIIzqOLh#0htOoKYn z=8&roV|B7;_9OPL5~1=c4W*j%&Mh#@MgKjEvfnQEc;PGrp(G^;OfqIib4_8Q^7!te z-!E_p+6nL@aj)k1C*Fj@px%eB{suv0P~UwoND9qz&5&*q?9m2W5W#9DWb`|o6Gx=q zKtI)tL?rO96gf8i1ix1}N8bw)&W{($B4)j~J{-inEAk+IBQPM^K9RUAmso4+Quwd+ zvC#lo_V|9jPs-S9Cs@jTnMpVV=7Fi4^L4VC-*>py#=PGX2DZr)o{e`&dy9MzeFmLv z7U@4@W+ zUP0QWCkz_!;%Kl$sN4XfW=w~Jf6i%R&M9;MceqvNwuAoPg8+N64vy%*B81#L;$xG% zwzS*S*qCvF4ZjWQg<#J+uDkm^sZ0?e39gZPz#u~w#x&f@i|+@9fL%Vv{KvbEzHD0q zVy*&W1P)_A=8#P0q6o+&A^9h_Ft4tnu`hgfW(PO~#_;Mpi$^G+hRZXWI zV24GHIOVy{`v0XPY|Z>)ytvg?)m0e*AOo&HP$8XmkYjSb%WnjaO)s40@7)hk3P%dJ za(kJRnaX&rGK%dOfYG%F=bDftc{Z7M9bPBE}HNDw+4~CW1^{dF0R>HA=t7p z{UT%SrN)MBTj1aaAEDHU*>|G=wTr)HuS~ElJxLO(-Q{X=q{d+gIlbg^)AUYO2Zh0e z?k?-Ekt#wwd_hU0fC=*)T>Q;bNF?dut?fkWz4j`&Y$v#65CcWGO$CLBaJgvHZ&pQ| z-0rS@xoG{#)-(tg>e>IB@B3*Kwc0AH4V$p7o~GN2U*PX;9ZjI`Ovo|R(H)sjc*Sj^ zE-^8I|8TuoctqdBf>~?!(iZ{*&jyF(A=-&F5axSg{lFeMaaT6lzVgUUnEsFUPp=~I zTtMWcAdrC&P0H+Zci8K9>~r%6>R-l80D-jKAYcOZTjYl#W2DpN(cg1%eQ9;xEzK%I zV;Ygmze55(-`RumM={os`YjfYHsPsY9f#bTvSw(G<{6Zc2Ke~uH~%WXKF1??8-mt+ z!jHGFchFs8sxN~G{D2>t3-V4MX1i4Q)VB>nH`-=eJL>GuYEif#LW20b>EN3;I4N~p zI3sK(lHOo`6}#>97RHlb^i@8gz^0;%@BfD~`eF%sc0z6+B86rmuW@o(dP%5lw`cCL z>Dzkw{I_96Aumk>6Uq>0Oet#KtXyQ~xndAB4+KBR{cX%B$!@OVfI|g-l*7=jA>(!r zmIxRvHPk{=|D4@Y@u9bUCny&T*C$meV0@yD5P>beL956kgbFNatVvtE|jlNh}P>dI2>zkX;wsE%p0_gN_!}P-#aOtBy}qNMBa( zG|}cW;jZMuae|QRa`eA`Xf)FDUXK*2NmxITc$%w1#pvtM#do3)1BzrU1nP6+ZgOrr z`C}?>>7Wz7=dOn9mZ1TQvbWevRS`yBq+d37!B-x5P4+1>e8@hKn*8v!k>bCk@gK4L zzYQzW*4(XX{)8Ktm!g0fnE(B87RV|U-iG|Bepi(fa5rk>I8`1#d+YeXAX{p?$bhP~ zs6w0CTT{$E?Cq}WgMk&x>1x!4qYB{bp9O(tzKR&f{DA_KCbDnUerRmmn=j9y`9Un+ zFEo@F5`nBM8tCkvp6#y8S*zv!n}9gU_F~96WFO0?6c_mWiYrhUPoy-VH$=dHEuCfS zeK2%=95=Ta!v&A4UH=hzcp($WU#!Eq@DG%IL$j4gm7vB%3?e$eZ+=vqFoWz}$7=ij z5f;lKM%dTk_+>`z5iAf&QDTrT$`G7NRmymZ!>&4Ey=iYZQQj%zu>gV#)V}yOs+!q% z2l8FXl{|$gb4~MLhn##@0$&zt)dS7wAG~kBw#-z_2MvAPRR^x>Z3qJ0u)t2W$uJgJ z>ZQ*RM1bS<8_FKKo{bZVWJ&xa=4{-9qx|0QNiA$BArq!avuFaoKJ}6$;gDuI zU8q3MY|QEMzd}mCYwB|na+@PC`=8~s4<#-!fL*4p0iWObiYj65bC&gA{DC?{7)J`H zxGCwHLLo&GF;@5k)qgIrOTG#VW0$_~XZ@z6ZVqD_#;aHFIQTIF!=Zi^r~m;zvWaTi zhY_i*)QC`4VObC(IR@1>6LR_p{X(+7qYg)MHBQt2y(FpmTw?M4n$pvxrwuKye6H~G zIFSh5a_04nrUTPr{!R3gujptp2d;@Q&1|hfhp+$#Au)j6tLE%(Hc>V-|BHvHLPe05 ziIM)&8Ig&;BTvkJ%)GEk9+B3aU_KqA?O~--(s#Qy-ak zO@}g}jArhv%})XpmXB8W6v;%Yk0N?8GPjC9cxFwM41d}-*f_@D)9~jHJ01O0hGxi_ zNwAuZ_l#FNFzc}Bk#_8$x9zDlnvU{8ZV5&H5w;3I2qba`v}T<)hTPk^H^+hV~Q__hV$fHL#}0s zXBvt&+Zp&3%ta_5-f3!M&$)Js>HekTwlsmy%#bQ9;|D(qBp+r|$Sol3QjG1hP0c7|zv)JKi_r=a{oU2$o5z`mt&P~y zGm-E*5&OpJ1|+PYlsH`cjFX91dDG26Nx1U$K>zBwZdIm3^G2c6_e_}w68LNg#)_8v zSVbjz#?;1xXCV7rB5-*Fnk-&Ca3lu(SugZj+v>NN}Jh?m=3sh^TVsz!!3{n@rMk%)WCXB^wq*WPJvRi*W(9< zJbL#%j35am8fmitR^*gr?Q#ZM3|E@T7j=9p8y&8_ySab_^AW)!+J}i8!en0wmMfLp z3R`zsWn|#K8-ebpbF6+^{lMuPz`#*L z_={SZIM`_JCBBUguLejI2Y@w6?sYqeB>1rhV{s!F5IQjDx=gBhFf}#Qtt2+cxz>F? zo&+a6C7zjxFJ_ZBWM)2)QpQAQKajk3q~&BqS7qY-a-Wt34xwX3Vy^{lbx}}^$y|*X$QZB3$3=6`DmOANSzW2^LxZj_^v_hwkGivgCK_Y%V>ZjMAXx0)2+E3D?~mobNBQ+oVGk<*9B*#}B%) z&bKg4i$yPjD64l$>mRQ)?yD|oLq;cJVkS})od@a7MknYE5G-Vt0UaV?eF`|5%Uq(% zet5nZIhnlcv#o6vp}sjD%7-<}5-kru(HZpAaL7F*zn5H;KO&!1*!8u|G<*5ESLm$b zf1LYt_VHpu0ZDf6GjA>M_XKE1%1C7p@bPx8>KzcdAAdQZw5vBA|GmcU_1)V|Grx() zA1Lzil;;CoWkf1a#uzqH(Y{JJwIw9|f)vFdv|oAHv+v7!R@t_F`fB-^30-jcLton( zitxHsFaxyI`%9xJrEDKA+P?K_J`N8$-!;O>rIlMGxD?xQ$VcFormlEXlbmbIns4e{ z$VaeCm)`Dr(OrcuOXFv*omO9O8o?pF$bjw0+XB#L0+or#Nbto~OACGLYf>^zTLH>m z%=V;ASpROi-zI<3tJRz0Z)%@)29v>KV$}uwG2=+j<+8j3#|?=!?w+<^Z!VaS{DuNo zNcT$)xukesoJW_18oY&3h{zOE|E#XAZOXBb2wD*v?IMG}!l4K(kg}CO^!g8!ANosf zMou`j11BAcE|JLM=q60-zQ;oNv_3uDzKC8>RFQzPgH%}1Dv_=g$Zzvr@p*09^@iV4#{5_+M_NGmCao7;W1;!O7OnY}n#KFX$qbqe~ZiTr}&1f@F zsjL<7cR7l4hjM$;Ot|7*%7`;>77mk-@#_sASNWu?-xF_4@HngaJ5x?78iziHp;i|5 z*dl=<6j=AlDsl7|(%+5{0V7{`#khHHr=;6c6hWaCy+bus24BoT#xUF&%?A<8hv4&a z+8kKK0b|&3y*6w7i)PEM^E4f@qw<{T*qCUb%2tR`7Y!AHO0b(b9KZQ9L2Z%yS3cOQ z8Kvz{7(JTwdphX3{Mv|(M3)_y2Afk2sf6J9*@D8P9*W3#>&d|N47wQ3zkw%IZq%gN zJit_DHU%>xpcUs{c@QW?8GY}bkmyUlHOES>%#(jRTcasO@hs`0n1M_;6q;%2HK8x; zOs#ZSnCy~HGiJrSOOOoZyf565LC;^Um$%iL9bJmIu%{h|-Y#*mvzYB{aL1 z0)U(z^$(HBdUbt%J=Vq<>p6+uIDcnB?z>5P5;j@4QUwD}k+3KzVh>k0PvIC~^md+| z=g~7VJcXMpAdD}dwISkp@@)DC(MmwDh<$Qb)At|&wdGAkgE1c;*P<0vuX5&!6VFl^+sF;Q4S!**~}_F4pw*K7lC`GH5tVL|-oktn8*`}yGF ztq}%4a-}+wXI!6z+uU+!Wd@mNoKV$2%0?YgpzFYb4$osK64vzHz-?4J?nDL78VB6;uC>tNG8&zS)Ln`0QH%s<8*{vp*+o&8IvjP)Y`rrlJ%RKxg_%7 zkUh|{ajC}!m6+juN60f=q`8fx1=xnK17Wt`w~`}mLunuwZBq*uo!+Z(hQLyHMq9#=8m z!9}k)oz^>I;1{XADX8MeH|x}a#U>(KrwHCOGFvXig)5%!$AAUXo_8?t#+YfIVmYC0 zY-^zkN?1s|>xU$<6*sn}yd}6T#DgW#Y$miVh+frjx*|L7t{Lfs^DC}|6H`r>mUkR@ z>ytA+q{Sp=sywQVpsb3EXt7L4V7$f^y{Mpc`3pjd4@MlQgb%zmK*Y#A#8)URUvzK7 zyD{tbaaa5asK7>-+Ii$7O37O{3u)T8VZ=x7GjX!u28MSD6Ruk<$3w1U?la|a^z2CG zRim;U!=bo1ol9q#9cQ2T?d!C%eniLH^g-e#M-A^J(n*^OmVl!NRSfHSUdF!0)h9Kt zWORqI>f*K_nX?UDFQs=jA5YtRf}S}vXEwjW=yQ8FTObCJZTS{n3wq1ycVQ-t_4y=O zGe)*6SKhvRY@;QYbaToxZvn_rqC;S0Uj(o@1iZ0d%5*7_zS0aV)8@OyQIYO02N+f8 z5=`)?{_1*#GHG(^3^!sNo&)R<6^E@tkLJ1}I zx;}5eNYSA%y^kLpxJS4h1R zAv!`4*IpU5IXf?m*&aBt*JQ7j+Y4r4w5rb%AY#1Qq{J?ht!=l{_!uK z`1?H|O4p=ieR8R;iK%M{Fd0S}N5IOPz-gijd}?&wlvD@TN~n8mGq z{oHDYETJE3a}%04fuHff3~U16&I$P_E*2Dert-T8phJIXNA ziem$lJ%S-YiFeM&-dZxGEVUK1?0fv}?BqQDc}!yl>BqbbA$6$0b^>NJU-p1)z?Y;Z z(odZyigCtl1N<%Shku~3LiP={Am!hc8>#mT{XPQD7u{g_nsvv0P6kgUcF7^(MjdFm za3?oVMSs2rWRDLK)KJOHN_trU-tHb+R%Xhs)1nBc)DPBC*A*w>zO^gJ{$Tzso8IMD zc^&B%`NAJ4o1e2lt}0h$3k3;34{$cqYzI7foD6D4qKg{=kNoN93YRH~?aRgL)-vEQSfd;~Jh$%=7gA^(OAf z^qFJgXQQ7b3`=u&vaRXA*{O=Sm@UmvJW4NnNW*nDj#fBuF*YEgU#CXxuje5O=HMF` zy&fSkQPs;w;Ii(d&u&U@ef|O$(NJy`Se2@(-4J)jM`FEgI6+ziuDoQ zD(V*|N|eWK>zO`4p;L$IiT<>ZzWiRwXo5#$Wj^{8hefg|&|7n<)^NTxr^tCW_Go`U zyy>acs$oNN>RlOb&aoro9J}1 z{n+~jkCkHwJu2U+GV=Qu4mhxg$Gh&Na%*2%yzssXL^B(LUNL|27|z!7LSLSB3N(PV z3Xx4YC1v@Kh@u_wz1ftG-Xh?frw?6!cfGBa3!=G-F+G2CmOZ9ld)!$*n3#;?&z#VsOzo!z*UcVXDq# z#VBEvP;<_g|I5|f9Ba#DDY&P$^3va$`N|bc_~dLyvNV2`;~nLNFwgj;*lnHsNg;!d z_d~>rh1}iBvGleJ;uPp3Ecw>nHIPar`=OuLfa_(6Q?ocQ+GGqs_aJN8ltK3*=5*=l zMy$c{DgGf%d~4hA*2-&~fOlaa%5SDN68^&=?$3+6lRP3_qYM>nv7i`N8~bTx<039m zlC{#0&~^~lv(j~6_`T0qvnhk*+|Hw9U;MbHAeEQUGeJVkw06s6H#)oKXFI=YLTCT% zA1FC7zS`B~9RsJb6ItPC$`@q0AdL*v@`WSb1BK{OEZxCf?n7l`$LW3G2ji;F+3=oZ zUTF)M`CLm74#E}{G3m{mt?TZ121)m6g+Eby9E@8WugtPmzJ*Imf!`3l+Q-_;IeYix z^6E6rhAYuf$0{7~8=Wo+g@ok}ukC*P3cS`Gba=}hBv$ICHUZ)s7K>)E4Jkf1qtX-7 z(VA$w6M-|IIn3P=_@v5Jzbr$?<&x1g+|8`JToNHo8*Rnj)ULJ5puR2q3@a_={nmtN z->m}|nt;f&)x198Z5c{rISRSfeo6+vm2Zy-^^zvIdy(egxN@VH+ds?+{wn2eItP>A ziFwIJt*!Pot^x8TvE_d4U~)3`kg~KK=et+vl^QGWm0g1vx_cBR z5U!V>FoYhtds<Ilp_0L|oiYhca7gno8e0slqjm-3%!z zrKSok@#G1CF3UQ8u$mpuXnv*vg}n1>d71s0`Y@^ZXtgu%X0(Ss0CM1K(&O(}qabS; zTAAf~Ck6lBA`0_#a&UkjYj**gd6g(2-UFa6B2USgn!=E}g7oP!$ zQfo6Lt+rO3vOLwtCV5J*Iar_^XOwiS$|yB;5NpXK!eC2m~BFeas64>|gGk#1a!XXS>}N#^+O_epPdW5Sl1Xh!g0g%`if zf()Tblx&C;MFNva=Mu@MWGRsWQKyhaYeoTbN*^axySusJzEwDDN!qNXovW2IA)PRx zhpaM4G3%P*oS~#a?M*_@VxE(u>t^T4^D!)>ZUlGLv}qG7c{NezJD1*_&NCh0eBjHH z!du-Rs1z6-ej872 zTaOsv8D18a)$yPsF=l!jG6U_K`>Qlw|J=gg2{C3&^LkY)5Au-qnsgv3)s-0f3MS>y zS8>15aPv(=lMw0)_x&|HFLmX*Y~o_t6>Ax?;xUo%ZfR6^_52iJ)!J8p9H#FXjPIyb z!|H&uTVcJ7PSeCu_B2-}Kw;>csF#z(M7b*i#T5pjLaKM5O8+aA~zXE~S1JDR?-qD}lrGwpBj6H45O zYbS;IP#BYy3u;yZ;Fc-u76HgnWN!CcEd@iPlnN_#L|U>qCbRC`1cZ!VBa;64IynIw zWp9mtda{Tkx|k2*Hly4LAQvmpv&BkCPFs#&vYkY^`jwu|cUEHhd3iCaA5*eaeR{U6j%|Hc*sH6kDsB?3B1)1Yl^M32yseOAAq4fG1IVFoH7cu}6 zYY zb6_Ro?NzeX2`{izNS1x{mqaRcL*}(Tz5cfwwVG6ujIpQ}`u5F2_hwcr5psf-N2H*vK!xe#3a zxL13Jj3E}(Lr>RG*XD4m+|3h1X4|dgb@0E~dIuocnr3Tw=8SFIwr$(CZO<9owr$(C zZQDNM^Ud?bd*Aru-an$FBX&o3b!G0X%C)Pq)}kJy8e4yOvafr2>pEq#Y4Nr+Q~1>9 zwtDMUR`E08>MsmKw|WdRa>lIyfC8K@DlGf?42!Bm4W`vy>K?38ShN0911(`2d-bxA zmH0SZBMs?fPJPuXtG+g)85NNxAM`tM#u@!c#F=XlDq^af_=jc;%eu1jfcS#Oay-bN z5c_4v`HwOhyyU7PcgR^~>+EQQ+-lHkdMpA6j1 z+9?OayJ&{C$P~l1Z<8lECAkWg-^tvZtp9v#Apg+Feb#-ecv(HegR%TTsXrQX$~2yN z3Bo1*^n|M1ir?@kcKl;9Dq)JrZ|#v}Y2$AF&=3YVzBv22`|W^m@u@EGHISXjAoACYrHoX`lt8?r3f|o<9hQ zb-K%k?6u~F(6mRiYN9qz32+obs{J}-Z&07bfztggQ-PV+iv3Zl84T^CR_xf@4t(Ni5xNjqn7$-j_+LS8*m z&JISx!v~w_k~W=UB47+@>5TG*T8CuW3bF&6R=r~3;GgVt-qA^Qr%Ia5rImhw+cyp; z*$|Q+<`c)h0q8{XRItS8O)ei|ts*U0nJ`3*XTG zHuAFsk%_ujAz>oh)3M#}+od_oT_;9FRUJul-B6VWxLgQ^$KcABdMi2T)rr(MAa$&h zQUEq?s&GAT3J}u~C4xz^-#$SzV+HYts)TLuI)m!odtbBdaFj5{q`O>E-9c{tNARqr zP$HA-dX2lKWGtF$<4uf21f5jXyuVTSW3{oMVNZYZ<>-r&T0oRx)Xl7A@@!Blc(AKI zkzj&NQ7krvjgq>eFoDbCXHOF27di>AviEnz!Dj)@D%!0^J(EP(2Y0+6xsm$38)Y=k z>1jU4oX0j{4C3#2Nw>G^!4)}5(QaxRxr$sZlD2&1+hPy*NwnWyk2!X;{QdhGYvH0R zxPq(B2O5cRzf*Re&FkV~8d_N_?Bid`CM?W?*YkT(-j?PyV(;m%e499(SxfcB5XIKD zOwD6AC2wvMvoUSGOO128X~C2tD61P7Vdc&LI518Ojp7{HdbwNp)T zf>6(k{A7!Ke=ZB+w1Ygd#I)No2V#vhhfe1SA~Z@Ntuo~@`;Ftcz=`H^Md6HJt~$XZ zVW$d@j5b$%Ps(YG?)NPQYwidJ%DalR+a-1Lb&V)9zr8F@k{b%3r>wdRND~(bEJ&7& zIUFg=yD#CO9unx`AYIa{5E^Rbi?j(~u}v90zFc-wi3<}cZ}F>qq(c}kjTOJOLELT#ciOESzLFrgZ8Efb`XL4d1=bsaq|P+IEb;UEskB5{&M zbiIAciAv$kejpC-7b4BK<8Sq=Z7FQSv4TE}L^%9|v6iwzUJVAmuj{#5-g;vN{V|UU z3H?!A!j#5hZnOh#OEKGvO4MkLD-e%3Trlp0xS6%>r)fC2&!SIcsU(Q zLIvi}gAcTpX7{rcd^hpTZkJk*LiMhPP4aP|(`b2emeA0taIs?rsV|Q1gBT7&>-axt2z3ZPbr`QEtGM$k|;a9pLqxs@HoXpX;{{Cbq2^V%?GwZn-+CIu|0ikTbGG%KhHF7qU-Fkr!bv^ zHa{dwtcYiz7CG$js`;s=(NtOiY_qSu41>E$)>q}W6rMPTn6qR}+ga@;)6du&StI7d zx)w3^vFz@ZSvf&qxNa@5q_Y$$&A|VVjXSg;YL^rcId|bftFfRn&7c^Aue@G0LE097 zs&AJNiZ*oM0QJ6C1hvo5CD%|UbW;e@exXF?L{@Uq;0RPg+a@y$w*t$0Fz#DAQo%6E zWQH{+P|8mpQ|i>{M0u^8mMCK#tz_#R8a*v2%p)4L?;yBqTx_J;oBncE;QsNlXTTbF zL%l%c2d?q2F_ZFH2~Hr*F}G=fqySnu$K>D~xd^;OSGL=)1;rQH@(OuDCLW_n@Z1i-F5PLGFi$b?=jyg>Nh0w0HQU2%v_7c*$V8I>w4m$R-{KS!ZtW{ zIrm0}^Vrg;K7w1xJ*EIdhK_g1amw2#NFTEIE27w0c8w-_+Q|@eApQ|j*aCxKaIm3= zrT<|0MhmlRI*Nl&{V;UnT;=iB~24F+HPy~>cbQJ9Ac|px`GdXcx`B^jr zKfN2v`z|A^qpC})vy!*g?zo#!XoaU@HXz&J9OH1Yr-i_WH>Fdpc}1PSnp@<$w7nzd zl-%gE?Gn0V+G6A@7EHa;BTOTWd}&I=Ftq}p+IY+X^us_Db@iO_uX`s7^}qG?hsCma zmeOJ_=zwj~tS47{u8ed%>(SyIF88FsFC1Wqw2d0Vb`X%!MDJ#f^C-_v z{ou(IqTAwl_OXM*DkWBwK}(X3?_5X;YBk0{qiMO&AyW5U_i9%(?z`yx#iZ`$_#z3K zFOf~n=2Vim0xe7=qd@`C4_vM9qa{V`n zsCwI#H>u4=F3p}znr z7Nu^65QkGwX0n{5+ty+(GQq>rCKKs%EnkRxb+4f@7zt0>+gvn zpeok;x!RN$JRbDct*W^E1>nqVA73}Z$G)6Zv;y-P-}z>#jM`A9f{bZ@AQ82 zl|-MpOb$P>6}V`*uyBCcddTY}%RXBuAZWfu7RpG4%VcuQ?zl|p*;o_U<7}HMMKOf4 zam!+6cqa!9@C4zXZH>}f?Q`EWH^E=Q5lc>&Ym{Xa4IsQkAZUP!82TyZ_gfrf@K4(g z(TceL3-HyulZ!#UzOI%s&@Vy_Pi5Jt$v*PJ!`vu(pmFU%hzFZtO(~(z3Vqp3rBj*0 z?>m*W=Hr5jkj6waiLhW1cVl2AXf5?eIPcyg$(Nf_q<>9>w>B9#l-AbaFTk?fCt^;M zr?x4=vy*K*UZToVSl6m!4K9ydx=k{|pjf2@@|MdA%NK;BKwNeVK9M@w@j)vL9%DP3!q>dYIH<5BCeOn@k7*;Tv1j@7W(MunuThi@xs{`4D8zLFo_zE%3nCl`1 zagVsMy8hvr5J(f;1-X8ylTZ*X!#2Kc_N^F#$8wWgea)mIPnh z;=SWaO{kHwv=9D3D&JNm!eb}gE{pOd4p^>!j-X9z)+YTLkv#_^Tm9)YeCwl{MOkKs zwyd4XZ6Op-yF>B|-cH`YENz9dcGvIGRSo6vQm%Npo<`o{#HmS34Na0HSfdG{c|}%a z$%J4MQL6y+{j7C|U%MArO}^m?sZ9znM=RA;Wdg%xW?b9@HVX z?jCU`dWhYKeeIHdE0acXC&JOpT>qlh_UK~+eIbne%;xp|bhLX}zMrt4i~e?Ul^+m6 z98fyhg2{V+npZ_NIj&`@b~BDPZ#c=LFR!p5o^5o5x?M2!`$IkIqcF@{alnczu$Z&_ zDSRi`t!<@?vvvH4Sfj2=Zzlf3Qfll&>|ie=<=E7`V>QI7~d=ag~lAV*iR@##KG93UtA;YN8&^cffEhT9;V%wCXUkJ0!@8bX=45&{6PI->m+b4_3C*8!|LZ zSFpP9THZ>#e~KGHLuBKWA^NCVXJ0br`XPD|H?lgMxGS&&#?n!iU=8{x2AkGAJtaHL z6YBS$(oK}Dc|-Tl;ov}5b1-N-p3bjUz2_>{mOu5)?{tm9!2H;NJLEhG?kmfK*sDZOTW#~YTD3v_;Wqq_;#g;V!`Lz>pD8yJGtepv=u@@b z*~FD~_VSr{f79K~-K2UbO-O*TP}Q8Eq135vmtLexATws~ML)e}Auv=$nnq?Ws}jjM z2JVt^^^8@C(uB^?i#(erK=Y!Mj5(gr7zn`;Gl-#EZ_;^oRVYuq_3>cC2|M7=rT@*Lvjv38F*!&B_BnsD9rhK4vt2&)Dr>v@u^&i=(t80 z`!PSlq%`|o7f2B2W+ncVjf4bgvJVH#g!f{u$hL5m&k#5bVs5wGaxc5r*_UI#+4bFU zGc;YXPoKc8bXKCJ+jngZBSCYer&33{i1=3F5E&>{j~M z)8CJ#bYcdvo2Rgk($DYM8V8+1ohtNC>nGww&u!se?qc^rJt0g>cBy2*qb&J|i6jAV z_SB)p2UJ`WKPoqP=VF0xw{@FU6e2o4L~VCLi@89Jpgo=xr9cmmfN5^6oV^dtOGcb+ zLdMt45AQFXJg7tuxT?hD9QGR+kH~mAxalT&SJjW=T5p8S`~?vIP9h9pi3UAZcuq90 zp`F)qFK93@gz{1HklFD43jp*F|050jzh}0=fPej$s~Z7;fI&b3-oU{>KEEEHzW+{s zo?n0e-u{11Xan*Q{1i*$hf#tjelYsem<4KAsHYT%S!hH%<|B&AUAZp$DWPcz!AYfV zib2+Ok$nIrPE^`Wyx4FrV`P{3u9ER1*N8roNKRfyFw!rkheSjZe>bjdQue0yT9Gz3 z*C^|~S4X&k7*3hi{uIjg78#DusYJMe?O6-8S%De}eIZguOzgCOqm{R~_|lz00#_lM zgzuCu=nc-q&9x9Y#t|ETUY7}Y9UQbRP|;E>-}b`lo;T{GdpG$S)KoEVgNA? z)IL{9PJJMPPFt=EXkAEEAs{W8^xt%@=lc` z8$=_88E^jH_{?&cEA(xltn#bjJJtM6g)sAt|HpPS7U^K$k}+T_>Z80kq}P|(XmRPy z-m*dl+uBF0*R+Ip6w@QTWoxB2D`e5oR|H{{1RAH3tKJpH)*2U7xwbsXeo<5AB$Dq| zP9f1FTlsJzvgUnXy}^SIU9{&prtd_pYdRDdyTNX_)328 z6-$^nO4EOMl|3AWkS3^J#2jC!lz0135&KF@;@|8(%P)|E;HCZBX6JTS?qFR}XvJ|J z=1O>j4yd+6Wxl6|$GfDNbM=t^T+Ss<>T&18tGAxjz#p&H#8**e1b!8Oj;20F*hbgT z250uJb|zc5&lWtijl1rh>!WXkWZ;f2=^=;9P@Vdxz=`tx%1vyIc9l@C)|FWKdojr# zOZ3*ejkO_ELNkRqVd^YAm(QC2`SFHfenBeBZ>E!;^hZ7Ex2kl2{E(bAQJby8$gXRo zw78MJgM)XGBOxuU!sdoNJel3(|1lybM#PaS{yM1dP$mNNqy-dFD~%jlL7&Z2isD!@ zyUNvM!H173boix<&aKmf2Ycc~jcF6YerdL6n*Z03) zWevp@gXXBb(nEQni}*kr){{tqFeq(7s1CHhdE_!3BXaN+-0G%(l*u(Vnza;CN87%C z)Bfi+d3A4&-=xb+5pZb$^oQKj)?BD;ch1$N^k+Yu&;Hd2H z9cFrBiR(|yo2tITZ#$4rl30({mEd9uKZ{0^16Xt%`7=46#3A<@%a`(BH?1cFFZH_* zcMem7NIIDpC4#;*lbUAD=L@|GXVM>YTFbNubj8Biq$TQS%~umT+guMSE$KmyUPrfe zaLu8kgM;S&r>z`AdK^Re$;p{P!LnW9UoLgRtAuguHbM8B1xAe23zlss9tB z->OX9T&ST-R{@#+#ajqiEeLLD4O2+zUtn;N*Y0}b zK?22ZM3IW?_Br7>4&DsY;h7&^0E96jFhu;@8P}V_hRZlk3s5?g&y*jb1afvXLVS}r z?df7=Q)o+nT_J2gZ?X51IKhpjkXAH8j-X@YynYS8GGY~vM-#>)F zh_nu|S5{Ij>c0mK!qu_)g4ervP<{7-GHY|S0I5KvB;Z0WWBLA1OS~JJmxs&W4bazz zuW4|dFKNmCgKNS;m`z1|g&*bMM(5c==@q$prgu;FhPC|OJ>K`vnt^c`9Uf0#H(2(p zqo6&la_#@R+;Ly(58KSvIVu^&X3)hU6Q?pi%pcxlT>?y9B1>SHJ>vUUPn3rs=q$1P zU!Yi1+7qOOnO8=rR`tKG6XOJ!QpA%uB%`~6KyaDS!sb~2MurONvGnx=8K>$miZqKfEaFhMYp);sO z>gS)xiiifCN0Zr1O#aWG*Z~F3YBhLX56WS0K*9^OiEs|@a(-pnTyg(F)8ie$)2OYE zs=R(u(|@6ToUT6)zy4@nN+}f;!r$`rc*pAK8*<4HM-|O_J8W%q_v~_J|H|P(gXDFI z72N)<=M}OAQ{P`(y?FC)tZ#$>De+gW?=2E6ui3JBV3^`PgFJvx$NEZTp|_UJmFAUq78U6M5}vz3M%6&mo(K zW&RQxycD`*d9F|X-4orbHP%e{2M-=_Q-lsi3`$X?}Ts`QK4!1+Qb}>py81_lX&$?~Naw zvb9_gW52cOcSoiTR4lwMx%5o%A2*5amiIOdRl(whdhyZDVfl5S6-6z{k$h~_$)=We zXVy11y4&2S=yByWoJce;1lqOA|InChBjKS$Rd_YA3dYNMsgu50o;+GzKVScE`)BAs zVg*b1?YcK8lVXZ}cUQl@e0LWRBUN%m)>5x*?=Sw3AE0kawXVTby$ZbF#jDCsT7p`u zm3)L+W~TRB+m%%@+$GpKxa^>q9C~azKZ$hdh^En#|9{Lk`)oVj9c_oh6zhFDy%3}s zhM{vb-O9v5T;92&wF4F1`Uyvy_skDz$-ezF^$)%xUe+Re)Ey>?6;>8gN7o#ru|Afv z25WcL4MT|bea06mp6tv)JI8gMk0?^v93FD=JkvI1f$8rW+9o4CyIQ;dH8H)|;;fOS zZ@`0S1Ju6%5VY3(_dN$q081YkqCgc&ceq zpRu|5#P$UcOGVBRuN}7IB>r<&qwGopl59Q^=Qr?zg|eQ)c>au&S%Rb}>2iiA73A|1 znFMUUG&7i*B1Fy zp5s;gT!g?B*ATg|_hkK>mk|lMt$n_b9#CfMA1@NoP;MWdjPBlQH)kfnGPZnjc&h&K zp_dh%+t~M)2AolqYj$w-s3{9`uHYlni?u$%!%gJ}P`FX^dKc>-nkMIyl;^uqb9u-X zAWqVO@n`q%c58;(*45Tq`%V9Axw?5-y3&6$!f3i*uN-ffIpnd{@#?aE@hs?Rfxf=$ zfzmOE%Gor)410y&5^7`;0$*mxW*)xsflv$wBiRNS&z%Mgyi{q*n zo6p;vd@qWL0+wDcy}BW@3ERP8Z#N?0;ccMA5C z#ed7Y72w-d)doabfRB2fo=5CPlLXpkNX;Ikj6a?QN(KroxC4X?HMYtyoG(Yegtqrr zm;Sl7D9QMFnSU6-w?i++{_AhO@KiO;)2qo!#f#@p-G6NDt^F51y?_6IE;do20v0Vu z2mGZKIB<~YF8+lOF9eH*a^%##^QvU>Z8gaEU7%+M(GucJ75k50Qvcq|mJnQm<=uS# zN(uA~)1-T5UF7lWfxyF}*SalbC_p3+?A2l|ZptmxOl?^4NO;lWYItv@-G>u3=Fy#y0d@O1MpD@R>mB zA8AlC%BX;$dfPtvAFUM(>#f3x;G|4t_WDcJx0c;|HWY-$9FUc5X~1}NguCy+EVFv$ zL{zzVW%_Rv6~A6iop~X|VOa4M{l>wjc2eAbM}lW8!IFNAa#fHj{R6kk`^>G2$fs0|(i05L ze>&P>V{{sbpb_>Ix-B`!)mjQ+>$U-(-Be?176v|qZP>32(kIo|{5_i}lT!vpI;O$-FQ@E`8e;T|u5bob?bW8I{OLb*t`H&}8~1 zCO^xsj#u0q6sSn{5^B{=l6sT`ylk_t^oW^@9) ziwfKDP}bNOnXX{sv8Dhf5e~b?{sB{O zSTw)-26@B^7O>xw;w=sCnEMiwj@ti`UDhmq=n^Hfk!cOGOFDc_>MoxDsEtmC{#Hz_ z9x9XAjb>z1W%Vu(%kfeFjYaqiq5o$s=`u9_Abz2~F2wZ2Oh2sLkD|eeW~cR9CZv;O zUmOn{>2CbEnd^Nw|D$k_;)>U<@F$vqz~QA_DOF_g6NhZhKE6<1G_RSk1q1EA!3qcm zxZ;Jge9;OS{4WeChxVy(Eg8Jxq>W<8nsrE|e(C7A>e>W?+v^sBO7+QNye%RG-)p&6KP}=V z2R?^V#y^=zz=X=}_eGbz$s=e`iVeAPD3B8oDV-fF2H59#L;1<6#5IlBtYdvj1ZIca{Wg5oK4EF2qIjepUkZAp}kZTFuo++CXNfHSZ z8_0!!TuSvcI)~sZ8T{&C$Pky(l{X#j5(4=wQH>`unw5{4@WRo1iHRbW_ZI$o!t(?& zG#%8$^p3=Q!0%2FQr{qGoW05x(#88@z!Lb21tXqKPcV28%IUc$(32g*)}nl#p6<>r zpD_tF@?MwHhhEG%X_N+gEZ=kp!(NU-{jm(F%f2YwNahRXnw}N^4>N|tH!gdkMo5XY zS=v26c`J^RQ_RXp+J<`?r6p`B3bTDD{G*dgG zlKt_NL$_F<9TF{KaH-+LKM~lt(AZpb)WXqv-UR-`Bg3gFWhBZlj#$?<%V;4*-z^qg zp}{B7b2=?6PLU~u+JX}O@`FIzsA=pY(HA7O=(RfR@R|WenTa~Z@Q_(PaDFQ9^5F$+ z2fk!XFqHYX^AW-~Fxh%wN7G?AL2&dB6vxPnO)>>f z0)1*m*)-U5Un%KD0Y^LyCg(F_;{y?T7gkovI_PLQT_RfE2WziX)Z;N#~ZYqhxaB{jju9sxj^|ENpd; zydFW@QN=5wBgNhdZ6mak*8Y^o%&G0%Y@irES}+lPy<_ve)C;qJL8oD}{`hBnuJu=J z;z@irv6D}F1?dF@lBA9`uGI{enpZ(z^HBJWlbwY%UReEce0@8Nk#VV9yzMeP8Q2=d zV+w8E!L`=0zazUg&ZkAfjTu<^nFNaZq*ygqj=oJRu4t5p@zkcVnV=4N!6hJA28O?J z{3e&_WE=Kc({u63^ILBqgnVkiK35s7%?MTmGLV-1%p{HA8XSMU#EA(50#$MQJa=Ry zM?1}`dA~Vucrm?b$jB!Lvxx9`iBZ*(^VD6yG@@3+w?t)6f!rATszDs$Z?{5w_7wj} zDTrHwz`&SkV6Y6mWu4GnV!3IWr*!Cu@N-4I+WLpJ?VzCYZb~vv4RDD{e=hp1Rml+H z0g~`Unec5Wj#*O91%;&SzU{+V+nhoMK|wKLtG-S_VdNWd$_WBkfng(i<)ZolFdLC2 zt;T$|>^5&bbDT+iMo4^$ zRod_dWpl|)X6~^7J1Z{Wt#7FuE3UmnMnplMivG1VI^YYG2i++jvmq>OhFJ-#I#cCz zTCk=JZBH98ktlZak7~wX4nEBpruvfA0X=o#XbFv|L~QZV4imWq{G_jIIq2MyQ7eXw zwaGP;`8X>kF8!_G`Ex5AcOFPvIRzoFPLP7=9p4==Kum+JNawM6*~e;}Adh^=Us#dc zWh;K{WM>}F9lup!sksB{&f@+8_$|-msghf6GaTd}j{OC|!9{M#YSPl$&cg*}M{XpH zVlUQtre(bP6BdJ60k+n|XXcKKnrr zG88M8nByUewnUz$l)$m?ZXC)9#Yhp;c9>{Wn>m--wR5I$1o8(CSs2!Vvll6zqPp`E*J84Z`RxDtXE4 z8u2r4&>`-CEN>~Y>B@RdgCdu~>vTr#H;A66hetX2n9JLO)}w#QG!&_w2g6|^NMoV( z<-;q-!0>xhGuBiW-fr z$DkZUNvV{y&YQF)Q!RlCR53C82_Op3q?9tGys{X#lf1KBp2dzmQZN#f+^+69R&Z0hi<|g|o}F z^MC`?iGd~rcgYFC%A`uh8;)CMJQR7sYnI5ao{D4HckA5Hu!C`?buqG@6fclXv@2e3 zH1`TS4bR$~%=^iT^&iXP5x#57;YR)QkYP>9ZU2M0iyMdFWc;8HEYJt!5$0-K+M8n~834$ld)8Y}y~(Txu!H}=Nz*bk)u9fDB)%x0wM-v{9E;5>`sj}KBk zZhU&DtNiR4K%7Cr-yhFLynY`xJnR>Wu?T{bAH4gk*uk|*1~!oLALveFi)n|hl19fc z&=}Ii%MR3}r(uc{Z?+X=76-YvvE~DIM4q`6JW#ti>jo&UhdyLhs7HWcn^y-{!HlLK z6e04PfyLb|K&gVqkZ4~jY$ejnIO~7U;pi1hS{2WFf`p>RN-3&em0Xe#aLMr0gU2i!)xD;j?&RmiK0lIAfGP<$Vp z*^e2YGZ!BD7VfG`Ide5 zgCxcRz^46O22;{iC9CvVs?NQYtdqsxR0L#{EO@=zxP#^~DM6h98`u9+s{@0PwV z-Fzd1D7P|hPvb1XMJE}q{;WDYb$`|eN*gK1syQgq6)&hR%H2TGfaSd%;75##jz9-a zF}jd4V7ZJWG_m8!%VIeLZyyN05K_q)>;|mWkm^@|cZUoB01iasFQMTDat`>gB<8Hu zP*>a7B_^}Xtteq=E%Aqih6%=+3=%z)`=Mdaqu>dc(cYo!irNMsokI2}m05Nc<5;jVevomnL{OqMPKgu@$ zc*wpAW1xDb_;>1Wz3s5NdNU-<_!#g5s(x)tWiy-1$b%aCz0@Q{`tAfh(|6#YA<)cd zO%xyyfW?1se0^Y%pJ;VkusSsRqor9M)XK@MOz3T;qA2OAsvk-E-fig^V16Vlmhsbw zpOuh?z5nhmkPG9GI=6j}B;=N(?sH#xmB9wk`&DyVtztat<`gQefuz4`dyf(>2uwyT z&9*h=*4^-GVYwpY)#APoZK#qhw{WSUv>QiOrb<(QQQN*W#pw5*-9*p!F*+rx4apNZ zeGRN8sH7ScaQCCP%R0GZYrauxGBPZrpDhBX2)+0ag=bsc&VgMeSbAXkt86rW$dR3CB-j zEUqFuVUsWL)(sReob`hOZBTz`o0~ z#KDuIBH^|J6yJXneyiN)5WcnGPX)sCkmaWw6(slb3na2wrow9AF)YP|xD9h#6K`0G zlroyhakPd4MY4pRVrc{ZvvDW2JiilEB0=MEsis1Kge38G7=`G^^*)eC)!`4#yH#nF zPe#cEZU^5DzAKizhYv$3RWEb~yyy?b(S!VyEBU7t<7n4`g)5Mx@5{cdud>qq*>zt* z9$TrTUhDZVwtv#VF$G#mfmW3YojQvF`=pxT)z-T1R-r-Nsm!WZGhuwJ+~l21vY#i% zcqu6fQF(;TLdsDO#+&mh`Y*swo>ZYKu!Sp0hFBr!Qe~+H*vRd=P8I5BOV@)#Q0J)r z7)-4hT3c?`aK_i)AWg(Dzj|Y24l5#JzQVr0j}q=mdVK@Inji1BbjG8xM9=*{{}jXnrej?T{B`K>dEp Z|E4BL#ZfaKg%y}E7%rNgX9d@Wj7gatj;6e9p9#=|%~bngw@nwc zi(Qs|B$mGrBSr|l;*tjIX`MC~fxXHr#j6`2?B@(o7_nI-^``;TR-F6*^0;hZNyBh7 z9{^{prW1RBGz5%j+52q?*r|KZQW`Z7JHM-jPhcm@ffC-YGjUF%O!EW`Rt1IiTl?W~ zzg27~sm)5q1KlNpG&wY0&zk#Fo85Hv7n*7)HY5`~M%Y%R)uFeS+X=aG!Xtmt7*@}9 zG{$uNGXs_YJha-c2*kR`>@*Kmm|)$Rn2TxjlEn>-r^=5g=P$T&UO-ebD?69UUa*XX zia%(ig}}qr4H)s+_8qw9Y@)MJdmBGemx;f@dbO`!%nV;4?*op~OjJ#s%=XJG)1^X* z_dNx|X$?B{8A6o_t74|xJgCm}kk4gA0DmS@DA){1bQ@yrO!-#{nqC~pOerIKkwaJ) zf`qbzz@aPn2KYl^?=y_!!D&xg-Bp)FGzW>51L6}V@_i2GK-5O|y#2_XkfYL!sRJay z30y5=>#P$nZqFs}v9Nar*2IDQZZw`}>jViWtf|*EsBzu}jTpu%N@uCHvf3i>MgT^h zqN->ao%YzfMl^w5N|HASP3YfnbKnqYXo8wCY~W!r!Y^y&CnGdUYJw>Z*w{CGA_kK& zTulWBDW;E~%AyGmo9nOg<0R4-Vazn=KFac)WRc~@=RR6Y2!YRZBw81(0uMOn8MAub zMudrVsIX`-$J$PX6bVu}UWCy=&}l8`C_%SfVqVX(H|l=@>To8cYZL8D`-N=5f0)vn z4{F;adWXrGh$tN;KSG0h=j;p~uKxlg!o90~R*4mUzZHI~apcgi8LIs*jM*|`&pe27 zrRU2T27S(RcX+=``O~anSbXkzI~#0<0W$!W;79U2e|M^C&Cv)7QpXDSi(C<1vV0sH z=G5?GNYum5mE zjz_&FkqT&+3NI*3w`m)kgn$ymTBIEK0RRIg^PZ%cd_#CBEAxBjPF~9(uDCZ%L>hdG zFGxBud8V5KPZH+Z_>)`qR=A*=2tU^g1@)PtYKKuZ!U-_1$3e|=frtW6>u*RISuPG{ za-yau9E|wtDo^zZawL0dWStF6DmY`sin%0N{}Slqv~62?WXiCrA0;MA^Om7ga7@_lN_(^ygxu(}iM z1+v^K6u*@0b{NPI{BM3bU@AoMvR{4F!5crxJN3M1I-v5bE1z(qACV?;{r%xA%&<=)$B4$NOdduw#Z+DPFeuh2;7UedNJm zjW>j0#v1bCWD(ujx$0#^&&3nAOm>B=VH>=+n-ZdXFmG@qI-lZzij0H7kyDOV%o|_8 zOsYyw72|A4&Nu-(F<&YI!}Sdwb(eBa_&q92e*u1-_*S!-rVAWAHW-VOdUVe2D{`hu zo$&k)Y&Uhbe)g7!0UsOTe#CAOxo>{CVY(|li|+#Lw;9XpFX0;&lF-&WSCqH`9UbhX ziJ#kSr!{$Bs9VkAEU~m#@Pxq80QkA_%-*{LkWj)TiUB~Uf*$63sZvOl)n!R zQxEgD$fQyw3BYxI!DNQ%&j3D)ez(68-quGfgDDPctI+vUU`-AP*s{W#qFshzIF@1c z2a6hwVeo~+v6L%L>ANI*kYK;(q3MpzEK)D+3Q7nul+w68HE3FRHXkP2145K3~S@v5HML7;O?F)3~Fxo7YFi<#HY~2EoEA)Z0m2G4WPhZ zezt1>n=ddp&&cr)J%{SD4n@cE{03&x*f&l^IreL7TNETAL@gc6PspSxiWlSf(PKN2Jy(wc zmHd7seBdZgcoB%B?GTe5Lcw7tG91Y@Djx2$d(4*R)*+VyCEezUS*$xzdo_L)uO$KY z=OJ{KTFJ=u?Y%;jD5Ht^g-!Y#?O8Psl`V0s{oc(8hJ!2EV(M7a$4s4LJ7{<;p(|5} z293Y(k=FKQnZwDJ%|)9)mhd9%1K4I!akbcrtN_*Y#O$y-ry{r!tb+$!mD?kKb9g6b zKX*ON59xgLL37M4N_$JgAkhD&PWWs~TUDu76zSi zRO#!;kgphAZm??~TusbuRY_ZAMA!VZh~Bje9p5zBWu4s9^3q;|e~gBC!sUpwwK>P0 zEcHlA)9G#)#5h~XP`|?KdAAjm(3!W|;!fgV9|u2?(Nxl>Ht8s85+y#koKh8N2baZ6_6y23VSQFVw~Ul)9vQRO?Tl6D&xpR`=kPqnZBN%Y~at& zAsanSj=%XMMA;}Lcn1#2GAFhlX8{RL7a%uElr8Hh00*Rckt+%cD0q|aES=n?v`EY% z_+9#=jkQ9Iaq*wdS<+O3 z#jCtB&raM_S2WTY+=?;8cM(Fb!EOYnij+3|OUDynO#4(!>}>X56?{L8`3uF}n%@2F zoyu6JE{8Sm)B+k}Qc|<3u+7XXdjyd--{j`F@PV0^WPnCv7k1u9M5Z{em<1n zB#^r^5Iah3?_Ym{^luedxE-@fSsAm)Z{Y#Xb}QBQ_Yv%YG$Dv!L!ULkw&Ayil9Fek zm2Ap3>WD?c+^rcX24-;85_jiGhCo)Tn&a;1V5+nM2pcBqzSlhA5lBFF$Vt6+n+c>* z`-d1Bp|xq3ha2$| zln@YbXwY>r;5SqTk@oB)GMs2glOv==M9&`pOQ{k98ba0zQsvvc!)#hxaoFX%$b$lf z#(F?km@p3NGhELYg4QqubaP)rcw<%YDSlr9=xdkm<&sN!sdqRj!Q`}_1;yTus4oc6 zNgIVPEB}3T+SH8r1Z*C=TV|;Zr*fJo8UR6gn)$%-&Sp#8*@PYX$H>CP1sq@|FZNHQ z?&+}fUP6Nw9i?zUpE!e(>=riYd`B?lKs#QtgMQkfAv-Bz!bmJ(ejon#=KEkv638JtNJgk2$F(q` z?hwM0q{AphZtEBo4}&cIhDT9!&FX<8y8@?4XJ@-d2|rIuK^{Z@L#C5k^sJ%d#ciQs5OyMs2J z@vSP0)_o*I^A^2pC5=B26*&u7F4D6(*)>om>KZX9icr!i< zFyw0mi84V=p-VvkhRcgbC^6PuUMRe-AQ@y&O2$Oa+|YWW_u!|FJv$?rT5)r#V_QNG zd=u>B>WvtW&xS`)v&Hr1`Q4eMiLL>*L?Wc*SJsy8+{G(fWk}J$XInPtslQsMnW~II zIzHgC{VlJR5ZVJ2$d?IoA+@aCjzR%DN`4>gbs6D0d$xc9Y{^r75Gz%A_=hvI1>5oI zERj&dZr*~x+NS!IlLhIQqCu*7@9eWL$%Q#Xy_Xu1`2XbKGQ~XqF(DUwUI(~s{UJ-s zBc$@r!IF6LC8S}Xz`=>&X(n61$CyR={`_P38s;>!FM95UtYa=)JK7s$#C8L-3-9^# zzW}<%HE#K+{EgU{IR@vyA|&$dkKZiF1INCDb&^c~0yG9Qz?{@C?^Y_bK|-U%QdfT4 zh9|HwozeL3L13wrUXfzqcPU&8W$8LYoz5u=(TpQsX(h@%H@B4(v0%P)^@Np~kGn9h zP4*wJAY-m(!RqfGgf7i#<=7P)U;}S9*zc`=qA&ZPB;@(0kM z9O)lWO={M8)J+l;0T$+x6JkBC}UcE@GT?h!?Qm-nTay ziC`p7ee{={7&LlPU#|`JNb*Y9Af(~5j2g-m=r(rCH=%q{XdkJQ3z;z#na!}tA_`Hf zB+BKsi*Ily*f{pzG3yK#(W2=)OMjK0o7sD^lj*n5dV0(2nPxV${@mR}s|A#`aGnq~lNOX#3gTz)+D}k5cp3O?> zptVsD z*V0!6o$jF+ObYQwmIkgUQMN=;G4^J+)J@SZ@Ga>t?Sm&y%%&rT0k0+vbmI2l=}1lg zANqyVC)L+~9y?3ITnAmDj<@3;-QC?O?(W5{xD?moQrs!-E$&d<-JwWvEnb}BzHz=?JNG^3 zp8NlJ7W>KCdouIO%p@yWNhTc!Qj#N9!D+Y_;wI4E0xczSkl=vlcvx9Ey+jRi*0{O! zt_y9y_Rkl@l@Ta3Z{x$G!#=pVgrK#a@nMn8FmDFWE@a;JXxVxu49)w^_y5r0Lz^^A zCh{O(2Rq4XD4j@a54~4|gXZ|%$)m{Snx?{*qF84 z>or}E1EqG31G;;n*rGi%W6wkuChAwxcS4nupqV|e;vCQ*vR1Un1rzOwU3?MMBejG! z21AcoAemO2QMTI?ilut1nL4S!ja`rjJFnW2SYJP<5r(PK{{7sQYfa#D%8qikvbFj# zY>V03RVinq*#4Q7>JsAY*4niM1&&m+u=;VjhaAk(cCNP?=?^^d5Ewp&J9nNWNC}W{ zG`XHEKL!FwQ6zV^I3%0q2JZv$2hIh;@pWKW2->~iooK?zBc-l3{VGa4>T0iiUa#g_ z5Zn8Vd~_rLEvlm=_#(U8m~VzxOE-lW%I*NyJNE)`zAt+LWMF+ak;?u^VJ{0>-|tj5 z!TF?s{HO%ssklfSiO&X--7RyzPjm_ALz9h1x} z0ly76Bo5|bLjK-*Qn4D)x_DNAn-IlY&)gpo4DiAVMZla5ZGTr^L@g6QRskR-eXhWi z6?p~yX5I@FO~pa!BNR%PSUwER#c4rKlrO~1j$9aOf0{shNeXghYiE>tton?1gLE~Q z0`=bOtC^OdF5L8F`xJK-yGum`n#ncos|p>!*ZX;B{HF?>SJ6feq9+HZ-`K3aCXn%b z!NQ8wSp=NCzqey(0gvgmMn-l)i?h62Y?Fkgg}L6aTyx2QcvB{X9>d3;N^eAoL;m!H zwg!0+I~r}_CI8&oo%P@|4X?+1zi{VC)vYk<)PAl zihh{j+5Cn7-zc}#W+p(G|5Z{Ukg~l0;{PY*?K7yxaR0@#U3K;OVe9ds3iH?PAAGllAT@$i)c&xw4|1_Vzs_?d{D%Vr&}6dK zPv(E%-N({jW_N-tz5fD`&%E4gBkn7|91tj;Xto0>?3KkFeu17a& z4WXWOVLqIAs|gEM4fy_){1@O|$>ZQ@`%O01oweYllHi>ji5k#na8ux>3+o>MOYcDj ztm@jjf7IG30Sme?wvld#<@$%O>*t0YHOJa#>jJR@!sqsa z2opA!Gp~6a{^;+ng5%+Yb)}P|j6-NosJhJ%xVnzIFrs{GE7XR_+Q<1Xc)u#rPe=IW zRfHhV0VQ4lzg)fR;q+(f1@Qdv*UY~V|1!=0w#Yx!IPEO7{ND-wiG|nV+#fx5KfSlIqpZyW_Hl}PC?JbKg357$wLmm(7;KKqDU2bI6Pr8sLuDRIQ8Ktt94sX@53SWdT(Vc)6^)gI|%D{9m>MqnSQ5_Acpl7KDQip zlsMq7cTJ%cr22fn7f<-2|hB=t_35tKv?Pp1<#C#&h6e z#(nFDq{S7OBq+a$&Vz@ajoZ&AuFuNm^w{$>_7izMxC>+^egDHr1($*T!BmKbPxI+I z$h&^E)S%Dk0qFJ4-5!y*dQVxCjHXp(h1ng&(Wjo=6Z#-0ocKldD`89QaWnYd_x3f( z4d7Z(E=@)1EvT{0R=S+{w|4(>VtczIL>ejN3FJ{4V-PvlhLGPoX13RU!ureZXW~@g zeB0W#!zydd_h$M9P~Jh(J`uc9<@=v>zl76JSTPl@_I)PZ)LvRYEdw1+{FA}I@%zae zgrs4%Uqga$fEx8p{%NV}KZ@{g#Gr;@v*+?$cKy2dQmL{F)Dr&_+CS2u?+*>5UHoGD z*Teq3r2ipZ=<=%)Ls)027O0e<>py<|=WYAtvBvkV|BC;gWIt`h`7cZTzZm{ouKy7Y z+CWQ(2I~BPK|p{GKL-2N2LgZr(8y5PL`hX@l#SozvWmn9oPoB_g8E6YU?3V{)TcPj z@bH-f&s0bV#O~^kmoz29Vip-4yqAdbC<<;N)u1q-s9@4Ma0)a$-qMy@1$*y=zRxn8 zhluT(Qk+mZ?6=Ioc-A|tUmlGDKW0vd*$0okee%t+ffg1A#w#m2Yyxry5Bv)<*84R> zgqza)A3`Rd689CJE!L0h2;4ueg7%EHr8xpWhSB)V>I9GPK6xSg;T*7tUxBGhIX{Y9 zs_dIg*0N=9k{4g>WuQI^65eBQ#@{CNVQ}qSwU3W3;-22p0WiI+4e%P6LAzP9l`dQz z9r8K*eG1j7h52kw@Q;8S{CP%;9Q`O&$&I2qjfc~cT^DAvb56(1F-pOQ_5fyPr%em`ZE{@eKUPtL>Yph*4Ekw7Kbj{U5YwTtx)bMu?28tkbSve&%O+dhjWj$!I zl8_ptZXN?!r848jDVORqO=o&1+1!J}FJU{?{G;A(s4;>NKUv=eTNZ%xUj0hXmZ$%q zWr+!4Tq^|=YbCN(GJBLT9svUv&kB;)kq>PDI$ew}0p9r=vj*Ij&fq!irlkw51K{Y& zXN+6xuC#XZ6|>951Y7a+!Oucp`D=wAwZz1I@1Rx6lz>8hc*s*$@_9-n-%!yc|GX-= zcf+Hx`!0`08%@izeuaQ@3dkWsC<5+WNXq#SCXan`BrerqWc>i@>h&V&12U1&Hk9S`>}@1e4K|aGK;5X-Rcm{u?h8PW%e5vP2hp2);cjLVzt6Ws z_{Vu}Ud<^zoJKBg(CeP|i58*rSD~Z%{gkU=-w;TnfO%vQzC)%o2}0T12kUpB>DFJ?m-9C#Bos>g`PJNT^PrtP1v{5K z7!qS_E~&jJL|Fb$pC}zY{Ssx0SYsXtbSEj6$eV{_6^@T+{)(O|<(+VALf}axkg3I< zK85=Fk|;NBa&(ERU!-{!yyo~p475f2crk%Rl~_5oa`4;$8_ z{S<+`AaeMOJu$GxD3vcI*!@diVm}ijCJgY3cGfz;G>EjY$?Dc*w8FwWWhoYMv`^T- zLk&YEVHdRbHRe#>4`nUgiAMY?n%jDwTO6Mk!n40E>)kw(8ks<^Il=bPHhnB$7W!nf zY*!f+kgBq2_0slr;eIf$Kl6-LXDUFrLLgJpG(Fh(OVWN%4tuNReF{A|6=LVB^H*Qa z@$410%;AhOgJP)Aw^U2GBV|q*Y2c#%;qp5fwFMPJiqr z6Q`HxONOt29n8v=8WPn-KjlO1I+mO9lxX3Kip`{*it+w5TUdkVjMM0!j1y*xYuuVT z@D}qEE-m3#Q)5Z1j#}uOu_83D$2tiLm5~(T!qDsBvP9VmK3>p=j5!+fT7_s)@i=hNjAGP7i%5 z;_O+zlB(GKF==}`UZy)P;erzYyKTu~Wu`sc-!W=Qbrj0|(V%cvvXIa2(Xx9joT!&o zMKBL3)O#N!dMcWz!SHhh`(*=AC<489sGCNKt%k^>tCY=f!`WK0ln)_gcP}WG48=P7cKcVXa7tsP=+V-{nDJTvIt&zPMmhueZtjY@lsKIGxG|UM(xXPdhG4BASUt z(+OTn#w6S^$-~6KiUFclz5u?ZLu=lQ8VsJobG@EHq=7Ay!pl~`IKg?|2>mz|-jE`d z*sjehDj{o6_+@q(&f_Qv|3>;t>OS*gnj$MOkSdYk{?=b^x`>8n^LDz>^5z9lVHbto zftjK*gxLG0$uclX$|)~777WqMp}zJw#MDwzLk_GnEs=3$EunmIGJy~up(SsZ(vTX1 zM^oWl(DVQSsro~DV|Q~kE;ML?;p>_MO7L0w8kh#4(o;l84;_&OywjI;9gy)q4HCm)H_4&-( zj1XYfH48Nxw20TK#9VMtq&LEPglCn4`0=3@n!Z{m?-vIBDp?x)15*DJnf?^{F$>ZzAp*8AKv z@ugzzyRiC=duny5A&H{!Yb`VY(4|5B5x(~rR@S{r@`eB7Ou55MQUUkK8w*cD42xTg z@9>mM6FzOT%bqN$EKMxCjVzoo%id0TA-i?UzH0_>&yYN^TDd8O;+bWK4R_N?KcD`z z!^%F=(mvjIb8!a6YCm-{^#CxlRZsicMilMUSg82gaDRZ6lOEMHk!T`u#6N&FRd`DX z&LGn0;1Mf28oXzDr|as*YGvqJm=kK%Y5!3OZu9)upSeq4C)r*lwX8~>WUfysYbL+A zi5>%b*Kch_32Y@$UrU$3l($%xq3p?;TueQs=e6d#pC3-nL)XGHau$my@V!_gs%MRi zu=E@)JXprccX@f9@HztJog|zXZ(<^_+Gf5ky!-(Y1`^-;QsTXn51Nhkp4-=js3g*9 zhmT!7GXwiVrys7l>Ao6-E%seH+syc6LtEg)mwn5(hAC?s%R9pXbKQTx84t~Le5}PN zs92N~MjbP8bdmoVow)d-3q}cqrITfLrI?9JeZYUZ>oPK!G`)SX>h;Zg=q!;-zY%C{ zx|P;De4=I=Er7l78#>ydNx}2;$EtsbmQRIk54Fj@@KO2TWS7BakbZQF!R_8fHPa_)uF_5u(an49GGGYG?qcGX|nw}lKUELB!XzVDj!{bOOs^ecRKlNMp_ zlZ0N%cs_$yl>%_Ngxx+`!rQ<8Rb)vcc9y$e%RRAB=z#pvx0EdQmcu+5{%g{qEP!ae zbs{eo*y0B%I0C`LzU;PImU!vA|2oGs6POPSAY%A=*FlBswtM@>oU|dX_F>BcCaQ;- z1ox&y)LpFtaj-GDP$niClw1PMe5ge1WZDuo zRj>!Qou2d)N+e`y|*KbX}Joi3JPe?Ju9mku0T*e%{Z?5JC3tY4* zi`G7{VnW6%#RhYOfy;`x7)9}+Aw6HwX6{iy&}J#N5oZEzxTP`{%5FWp7Mf6$F3yHumx#`ME1(g(!;BtU57k_5)7^|tX}l~&N;HhF zF$`!e3e7KyO>R?TP+dtRu18#c>|nlA4b)S$tVRyW_PI6v0kpZ|;_(7DefaHu-%VMo zCfk09z_Rrvcq)TVsH?!Sy~_~fKbcg=9O6?pwOOe3Y!|dy4lBO%cv}=6EnTlgKfEi+ zgexzoh$jkpZT~RE-_4S&;Qrc|Yrq$JOkuvQlXwDZ7Ckk+!$2Q-sf*}vrsIFaHoShV zMDp7+0woBuPJ6m5NfA6EW(c%scJC{d#;&E36ozY6;gGljx%OA`pml_tyw9}b%`vm) z@VcT}&#tTNAxK084G`wFBAV*&Cp8d>W6wWHv=AE)FLp@>`?}j^wQ@K{m|7Si!_LST z6?ekF`=ysUDS9jKfGX$UwVNP=<9|Sche7HARy|73`E3f7I2cb|5B||hFdo9c$dQJTHZ@vaje= z0L#2hVQdSTFiA5mmEW01X4y7oyl(iaRGBa#DAAo3z_d*1f(Xos0N+&c-)6mL_ezqe znaw9fwgM{g6~TO69xs6G@>G+u6rtorPC~;1A6MCtqKyV~GTFt?u#_0>zuCa3h2X!a zR2sg|G_gbLYe$x8KzuF`T&0*~KADdSs?$49Nv?XVvDvyT0wSWBr2rB+C z>9Yu_Mc~2=2QY9A8=}<5~Ok>2?DV)@&hsoyH z6Skq$`L0j#?Z-hCj(e(WgRjO%rJen5uRM~?W2tJ^d}spl;lDF?l$a(0BKEiZ*`dj@ z^os?%!WbIaTy>=P8Oc0A$56>9wb-q_@7PylMjr;9LVFkHv*d!#k@6th>_VtfJ=z`` zE10z+45Ne^?4LxV6#zyzC~64_={Wi}#=qMwuWlCOSnyUN;H~~9xyKHa$iXbMqTxX@ z+=qygt!Jmi@I5z266RTAT4U5~pC1BEt>tARXniWZuQAAgYf-F)2!Ojq&@lodWJ#V( zF_$rqklchnJ3&$-3Su;!JTeO7c+vcdR^(%#a#47(V$hBSx-Lv#yAvJPEWP2L&sB&I zwk=BCnegx9<$2YzV7D*Y{#nTg#7`)PbYJ5v7;;dn0ourj@KOw3b3kJ3l82YX1+ApO zZf;@5Un&4yFD5Dc`+fSv7X~WowiuGzwF!iH&jY^<@?htM+>{u@YH}sn@56zCvn1_8 zbi52ulnU>YzUMMd)=-3jrUf^W>4?DmH!=hEu(ROdTt0L%fc%z_phD@glg<*Yr+Rd- ziTRm;k(AH{njJd%nqt9{~pDGhf&8ibl*n zCi>R*=$`cpa{Z{JrNeh%eogkJopi&g_aW1jcG4XWr&>7~3`Q(`7#1$3${JgwoA+@6 zmgycgT^FyWSEAMwaK>TB&a@*T`reE8M(=39av(&rX}*%p*^Brt2) zv(k>mb;WT+_o{@zWszn3P;qlmO@bKdagyZsVh~e$Lx*oHf=x%b!!10|^iZ2Wb_q%I z!8KFyG#q!?Bd0+SZ0?OwfESy}_Fi0AnQ-$`&PWIB?P9dFADCNiS%8*~ca*^e@|^&! zga5a6qoc7My>U&XC@;QR4i-=CO zVj@#f0BlkwI7|mE`pgicwgqAxA#Tj*Fho+;Ebd%Ct!MU;as#Ts=5vEEYm~W=afu@m ztKo9}D>Qp@*>;Nkq#PMp*;hz{pi^Nk6h9nW1B_AeL(9gNgCl|y`W0#1BS^?FSJG!7 zXybQ!JyqnlX?BPhs70S@x06=l~W?<5MV)1dp+UGVn2#H zY00U__KUH>Q7Uf>sZcXG-s1q3gu~C8M`w@NFb=ND;qRNgZwaOma(Q2GH8o-Q+v;d# zB?o=SdTXZbyf;)<$%{s;A~CDih~csBB}!ISUl1%=hY`BGn{!-?cfoNTS&Q3O&VTA- zwcy_=`KEWMXVUiWvS?hQ*5I(TG0B5e7s}`zGlI-c^n|tNF!hL&uwoKLFzV7yGqNnC z69&bM*C#>aV8Uqc=^iGGUdfI{!<00W3Y%c&DMM*V@ z^)8!>l4(w+{FKX);%zuJ!kF0x5&6j?c#d)w*V`ONO9aEWH#Qt_@{|_*6MQ0ER3}nV z+lxyfxugaQ1Zllw*F zQ&g)XE2S-PVf1>VNR(){sTh0|^>8Fgy|Us9Lz0MQ5SbO)1OF_B0J(=q%M!9hx&A{j z$0!*8Wl0{{xR?j2CLI53v+%Gc)O0L_i^?VUi!#`ggKNJHVsJ}d{x38ko47a9TcIX7 zH+TlfbbIky-z|Cggm$wqlBD=3T9hiL2FP?e80T|z0}=eI+I23KWHhzB@F4;E5JhD#9p@~SQ7RsxfQgSA_fT(w9%OJ zly@^6y@69Q9Gzpz!oOc2LiS2d~9-J$cT7vLZbS-tM6?^S_O`ups;1@ z%j}jRlpHDwMWc@Ub~K58#l4z{M&R+Yufzw&nDN~)rAjTQPaNMVt#Ve&?_NLsm;{YS zUI4s~?{9S!q%z-jp=!dTI$|FU&Tbap0%!Mv_a99{fv`-dK4%<(Bk@iSb^=eA|Y7^O9{_}Z^DBLx?HRw5U&+TQ8k{pR)KvO9pze%2;N z;jH$Ypvm6r{Z!~IMBU?J$qv`Vrl&=)W{lSr`xGkkWg#cJ7H%rnEoc-&$s1}~1xGt|Cn2cTDGX0NzcFFeIsM&TqJ z#>S4k0zoOp(5eq@DY=*kXn}LhkP)&pn#5RaT+ z<&yoEiL||5p8lGKHZ)m{CBh)n%4b}r5ve;RX6jGSX4@Fn9*hO_V;x<&v5@dL5pPe= zCclgEMdJH<;G&SRPIwy0IGRSzAD>mPt`475n^+;D9-kA9Q_L`nqT%QwWC-b}=)djq zPV)&Vx^pXO(%HWnv-RDKz)YG+MqEqTY43hXa{2MHHEy5+zsvK0XLYq%xhmebn5YJ1W*1 zQ1DkHk*V{Ie*}L;eF1DmHNiPcG|MZ#02bp&p*03%z*_nmug4QyasfKY_|SvQ4=SY8 zXz|a3%qzS64IjMhP=G%!cRbZ~g`!7njIhzSJ+GXgm{EW9O>`>SAA5i7TW@ zN#8A+hp7&_6%1E@^LS>~3DR=i%&Tf;%9^-Tvqx(!<=SBe`o%`u@}=@~#(EvoT#Nu3 zbkbm)Q|(I8G3ZBL0ObDRtkENZQiI43Q%t=a&oXEL_6BO|7XS)Se>)|!D|wF&e-=PM z*mf*}ii|dKelZZMOSH;>e6@rEd>pqsZ10*AufP8Y>SW^)iRZN5mbNtOwsnp7Db+T* zS?|auzde5x3n(vBOp_XT#B3=0DN=~DC)k)CbZqCd9Aiky3jj8UA+WH2W$O9BDl0V1 z^qz1=(9Js;7N*(nGaBSuzW^#A(Vn&IqIUb~6A|hPo5xbVbW6L#vkLf znw#DWK+Zq?o$Y0XNaL1T%d?tOc^MQOd*%lZIODm-q_xs zRO&#^eQ(Hr^4#^n^qe~W&{g&P)vxff^Axo0zjpn{`_s0ARj1_E2$TDT$4|oBlPtYv zGvGru`{ItcQ*R(51P`BIlU!K(+|%fh#@R+(^##bL94CIKeZwf%X$bGUxU~)*1+91( zv0?s6RATLMYMX&P({#J9?{V;`>8IHHUaX7;=3~XvqbHKirG%5&wl4Ws4cct%DLqOF zHYaO?sYYtNix@zSb(ucok;Nm&Wa1ZqX($czE)kJ%>Qf462)F06uHBcFU9`Uc$RXaSYiQqDg@<%A>H00}hA*^)Y%KCkUDngioHs6J`d5nZI^ zn!>aAmY#vK<7d`2eYfsD&$^e(;DUf39N|OK<;y6UcS^x-VtlXCrV@(FkLaC#Irl!i zsWQkocoFFde^~z5G5pBC`vX2jm+mDsGFr`wVeCIR72pT0ln9^wxi}zduJXm6$$*75 zhD1}-1_B;~eG-r&0|7pZ=byILxIMX&S(p9p%- zSJ8aqn`D7f{V)XsHx}p1_g*}Fa486uCrxVW=-zCSS+uzJ+6X~#8)e7vUo55?tRdC< zaj&QqKDK012Ae}Z(XN)ruF{&_2)MGy!;i+iL*I-4!B0wOg0>3ZLf~rXv7)ts;&;*Y zFAg(T%TFYg%d=69dAN(of{CJZTrYr9eD27wq~W0Y=_y8i;$hcbBFbR9)Ra90A`eVQ zIq!rQfUMKUG{BmU|3(b{Tt^F4507QBLc}U9?O@rddOI^-2i;b+Y_b;pl{O<7y(8gF zLcRm*S?rF|qQh0E`|5QR?~i-C=hy|iA5!lp%&h}WG1-R$uMwtaww6K=;890JTdVgOu-JBL5zQ2XA8 z5uadJ=sR~?HQj~jqM}EOPIwQc)5EpHTKvN>@`>SG$|nRvVIxhYpc-7H+Rh{LN&H;d z;}xce-2k0(gk~<<+U5&j=eC2mKYv<6=y_GS9|mkFIx$lH1wb$9YZu0XSp9xJoqU5o{6>7t`LXMFReb?4LA%DGYZQLpqAfa+)N6NfHWH(( zT$Eot5Pe+#OG8)o7$@<$8A2y3I-Zt;>sjg?vujc!t{LA3rH&K;fTp-d`AbSAk__?5 zb+we6YhlF}Lv$OSob_{~;{8#m2%YndRmeL8WW#;o-+uHMRc#Qs-_`H|-;(Ily)P03 z$)xaalgx2p(ioMp0KAKHf$QP#O4#ueAic9%Qo5yk-%vH+Yk?+svgJO1E@8Fl$D;G` z8?&4Wm7HK^)r^;ngusfSm>Fjx}`Fx6wFGBl|&rL03xutA#x_U{-{+9BmV=@E6s z2M12gK5Qwn+bF>#g-<#v&Hin6G^trxZNFp*!AyOMGVcSl$!?~zZodGqMTF7(rN8rf zFx;FD&>~$u<$bD4VrjZ%7KCxOz-%V{*xj~qAuKMtfHW_h6L4j8*rn8^^~JY}tYevqK3Yx2eAw;w}kh6KJVjlbg zx2D}DlH%KZ`T6N>`?6I<0LhL7GX;I)i3lS;(8z6957+N44$l7~R~?MYZNDKtx@NRO z*QcfN1}#l#$mpI-cYS_mNOW@#3wT=!(y=bg^+WKf!aN zf;;BaFci|{dYNJO5HQP`mz!mnAE1iUU*o==_6I~!EFk~aemnf%Q_Zs=s z4Z^DjDj56X5n?TYL>}X)+FN7zwp5`h65V>JZ(HTdJXQ?6MNOVG`n!>KWcd@~Fyj2i zCaZKst>8Q2EX27_ml!6?rxwOPdKP@MeXF9L4E{Lbk2nu^Kckcn2W4%km3l&JRYS-r z_NJAL2~3MKgWW!eF95Bk1@Bb*&LZA>$Wa#;*?0>?9YXwyHkp01wQeI01mc?ZT`*(x zEtyJnQq<;s^hcJgNrD;t8~7$|(BEO5EB!Df1u&lyDSKY$0f z6LVX?pU<6HAy`C{-cTE}LE3u~aA)$H6_T&&j4m+S!SKz`PxuaTmW`?SQ7`WCo~s-x zfuKWO6r8W%(n@pTqSwGiL{7C@Cb_T|p<OANHgVH&M%#-b^vRl$=OK^XgO8=17ToJ)nXK0RFN`2Dr&RH)hpA z#o|6y>RT}>{~)OFAL=}0^C{5@K8wF|<%LX*zQZ(~Oo6XNF#RTYUrJC(Y$vCK?H&B6 z7AyM=os3+RVkDdPLNi zumLl94|K;`+RNvwVVe{vRST`YBbK;@?^(H0{?pXVyuxI+S5Hr--jQul1tqeoem@ef zz_nk!u`RcAllBz2)@FjGKf}7u-t1C))H?8sd{R0$EPbZ`hW)l=jkvNIW+d3BH{XrV z?NO8uS90GIT`+ZdvVk)W&rE7s0Z}SSCqw#1BVe9AIuxo+R-c>n6nm6m=BZoavc z0=X4sf8Lv7c`njyI^x;w1VmWOfcW>ZvTp?>x1o+0zD`=9gl6zegsG--aS$vj-V|+` zC3SQItsaOaq7a)P_$mca=H)-YZ(TR#gA4*q2k@sPf5TPimExiyKJs1=`;|EY(nHK% zK8*8}_^;&UWWCUwXKrR6H^Ln zy_)dFUajo`cB5cPza$(9hW$h>HcP%(w<|cM^eEnoNNyQhxTyFhK#4NTvX5#^L5TQ6 zS}0F#ozEy0Z)(7-htGiT-Szs{5{hoUXgKV&AZ}(Qy|Pvq>7UN$f@Vh*0Sm-VO$?xH zj^lHb zn!hYkPT2A+?QlXyPAx)${2QGoze^B_wG-|Oz{iRsn$%W#%}9wxk_6-Mt<0aI|2n_N3KQ5eLukeX!_3n@V4u>D?R!B_If|Vzdg2v7r^fh?~FzPQmC>-I)Y*C zGpL78l(_-FAzbSFyVI3xV%EvWgVO>J$k@-bi!+}Tm8q^1WgCG;;~9|@rZ%iDj_wvr zExe+`Aoo-H!+NbssX$*j-v^A{rR9r1%t*YfT`sbddD5ewMQgjr^HSi{F0=&|1%7;#j+aHL&bnare zvLnSezW^k3Zo;`73pQ+?J5${Ik&ia?FN-Jt%Fn&`mIcp^Htvd4Eilx8Cvy7y9WyO5 zsQitcSaMML=;sDH!!ZO`#4vu_kk546BJaDf+o#;M0npt>`%{1j5yyfo^oq7OjTbPr zigI=c;>385ZWn8yxL8qdwGw)Va^FSDem1ienUc~Su6cs_u3$qjDA`;fmP5l~LGK3F zUHzG9@mUp-N43bgq1rw@w)sjK%ZRxWUWBxqf@1HFp*qCu3**V8h6?43Lf$E4YL4%_ zS~5m5!%N4B_H+Dz`zk^3d4Rk>-1)2*h$dc8mgq_1%1o~`^uaT$`W>SkD3Z7~(%WNk zG}N8+mKYh1XIwPOY=Xd1XT#6FRyiDS_R|S|Lo+)1COsim`OHDQCFhmpyGV|#ib+L9 zfjRYY*h56(9Cc<=5|ogAfGtisOLN0SRy7&1cihD!TrJ+9pknpUrf zG8yJzJ(7OH${8b~j!vwQE^zer%-pD|R(r%(f z0~h3cPKYS~YPcH*m-)h)VP7zWcl=|d_?qZjd$)AlKhWIO5YK!{vu!=aQfT!6qSlmw za%HXBQ^wF6;%RC+Y|k8=hy8sj(WXN5b~>wF1UShqxb5or3?E?YROX!-r=;VVuZ+5w z;-!mZXrbE18TB8rS(PE7% zsY703xb+Tht68zXYt;`n^>Oc9Y#3Sn&(hO~GwS91NDL@ah$-OU_De06_Yg7a(ZfI} z2*_VHVeJ#AC%76WnJtQRR(IR?r)MlNR6)?9dBl!%0TbUA2?xm{ z^D#~eEjh7y7PNO1+Z{t>ks$Wg(h@=rR$^9eEHzEktPQP|H@~%18PWiNRLJoI;)+qA zYMF_9N=9+9-C1mUXBc_t{d@`ftGZ+lwLxtG%uVzIr)~$P&ya92Cr*3YK}yn~!MRu= z(PtAV#I{+^{h2gu^j%~hI*Nz1Yr-qVVd}fc7Hf#Zwgy#R3URUufh zVxidTa-qPg8F6$gj8#>MrkB4Vo9QrgWa~|kPFV>X$vl;NZ0M0oCdnq_mrc^D_V0@n zAbq4u#PYW%=LcNOHMDXK1=lqPiR;9-ZqdE6yN|Tfb`Gqq9>uH`z|_k=%gEj)JE6PD zL^KmM*A(-&RZcSj`8lmvtCnbvbsB^Q{2Px43R~vpc2RLKYF9gll*mmULc)Hf2738u zlAILj56WZoSm`cupW+fpDV(m{kiRsIE3KX?J~dJ{^-nZ&_#8qi(HMf9E8ejc+=TQa zS81izVkjIrRS)G<@uY~6#Vct7ssNGnN6k>h{ zq*8u=tYq}sP;_VIR@TBrrB9f|L$wc+bd>1P5tQ9Z)(u8VUDDEQm_M>8V&f@>+-S?t zrP~!FEJ-s?pYg!}KRa@zUmk0F-A%ZqIVmS?zaX^%;|ZKkJ{ z2ekoC(dIDc3;5&<$EOz+5R39GZ;S;J_Wgp>M1#gOBfEbvq!m@5kmlXPil!EvUd7KEr2&&jF+p-#Nc zT9o|iTO1}?EeG`Qu=ZQs@X0sx_)L6Y>A_5+m{Y{nx+7Tmej%Fk`P`(NRpuYRuKH-? zd_&ML6#)>y-3A<;DvDgXYEzC4;E#70I3)|e;v#3EUDy8N<# zEY@uh;u8fBZStWl@LO8Ii4L5NV|o84k_{ZAHl5vJX2$ahZl?lP^rc|?ECg$1DiKZ{ z!+xt^@QbB|qXt}f60o`26Y&AMI07=E{!YuhI>}sK-j*?#JUjn{0HeUAZdVqWEV3VG zOF*JSyu+_KX|flGF2twl4V4r_$0N*Z1}{8X7lo zSJAR&RrZAXmK2vP%SvH*NN6}IkVFh!{}jp$^!8I0xJY@c__4+}@wlpC8h@=;S6wicd(vGFxN)w3j2EwUkAhi#sm#W}l zs1{SSNOBTF&d?6BpVBeNf7J^NAQ3E!VeK_c8!^{v3A-_b(|(sv&jzz%F?8)@C2i4E zYb%U$u{6OoQDX!RnL# zFs!E>;F!~DIAP=41UQQ9-OO8gLV)%hc(~5I`qbmcf#^(Kft^wCFi)x0V_Zg zD9Iz`0i&-3%qQq_UH35_Q7tyoz5>#^_qMD?YU93MJ?c4?{D^!5N6Ra*mhhH(5cUZ7 zd-QlhjyS2tnttf2Wn!I@i_^ zQicr^1ZQ+~U^PKebYx*R$`IUeq zTt#{#C<=UoZ6Q`G-jWzWaAY@BN@L=yN-eYQl1t@4S_sBtH72!>G!lu(G;%UkGR5U+ zN2|L*v5=0?GHB*mMmdNDf{ab9%(}|}d=QVdDbH*xf*_Vur>aE@XlqSy+G^Qy11Az%$67M(w#vDjLg08<56Dwv6n+lH<{PE{pz;zyalmihK77$E5mhw{S z*|k4`R08c(+*MScTqaP@N)Z*kkxtslU=>Um>l^jQ8&1rR0(paM3LHFG&}wkl5v7nS z!NzQ4X$i3ian-UI1H>Z!@`!6Bs8fRj@{r`){`fKD?Kn1)*uC$>se*hDhyv-I9%MYq z^kpI@Z6ZKV8Hng4Kg##Ys$xGhmBFZVft9O+3oL90qB2{`G|k8dUG3OVAM3=yUDQZW zd!xb^c}mjAL%5y46RNrCcF5jR!17VNEn?Y^RMarvMv-08&DQhgKLhbLErQ{}-|)P1$b_b_TbM%}P{?$;?zH6y z-6@IR0YU)*Ev3$C-+!oNJ0!AzKu@)Z`AT1BfQ101!PI!EaZqDu3^!pLG`^~{h%YMg zGPX1dh=NYfM62AZnKcmTW?>{mGA7iL_9ATnu_NZB<>GD+XhL_O)hSXmA*hN_B~X32 zkS>RSb0r_EE{;x+?ynT+9GF$a!1<&-^bGeWKp5CkSe_S|lU6Ms=7B$z!qhVK7sckN^o)fH$Oh>rk}NT}0Tl z6ztpm!`-8F3(7o!qRti~;`ls)!Rf4`_*i4C(9+5Q8tR=XyBlG2d?5kS>6;Z*Oe@y(pPNrZPJwqYpqDWm1wsu_JL( z7-~)%D0n62pq(Lh?z;27)L%ScMj>pYhQXHbP?Cfq)i(f>x*9%@*>Ci|ciqwR0_oL2 zc~GKlxwNwnf45CzTA47D6xw|@=_*7nBb=W!W%$%x-`U6_uPQVY2Qa9oKr47HId}vr zNrFg3N{V|!u@Apg*DfX`p6E`JZ%Nz4k<{5&YI2NXbP3jCiPw+bmt@o%D+5t}g0D@j< zyQlyGfD9cSvutVJ-??iw_PVv7a+iV;6(_Ny{rVF85QYHJC8blFa zrckOmF6o&H1;q+L0|Ds$mj3`qxE6>kOf=XpB12P>Xkf{ga{-_RtssIy4ao9WVCz9F z8qq)YB_SbbTgEoMe%b`DF2Yf0x zEvV*(jl%;8B$n~JJW!3<3o5949}1agd(jTz2xW=pJ~f1l+Y(%D0_1Z-#HzdtWtz?1 zDP@UQZD0Mh!(q9SK+@koB$;SvI+oUMW zu=1@)sNtMEG`oaQ23E+{UXkPXDM(+@ER&#&>YZ zdn1~+8qW8u_00@8r0MIz<6j6ybB)I~oyukKC z_9!t?uIVh)O@LM)#I>C%wsnCMy&i4?v?ID1*JAOaME2NTlO!VM90Wk0H1h@n!b!UH z{uE%z16CBq4(F_ERskzTGF3^Km+6&eP|qSx>zcoWtdg0GnwDLKkZm+TL;x@V5kP5k zPAsQL5zJEg7hDuWFbnrjPM&VKN$!9KCS9Tzb};rfSlz&}t4k@26E$?dyWLjAXN|H? zm0l=YnUtc;E=^!`zDMFfi9sULG*3|W3lrFP6)5a@wY$8Tml>gp!dy4F(7c(1LqssF zN!$~4vQUnJu0VkM)$)7ui`tX{t1hKanjy3h?*P1>m&->bXl}k8MxeOchhtOOL}hEj zTo68Ksc;N7ib>@|tHTj-JJQnJYPnFQ1EvN;YW_x^v`8C_J=#cCZ7^GRWZEkBhI-oX z++JxQ&kVhTsz7_-sRhWK(X@y91Qay*Lg2!^z)_TH;$I{$X09$qjhoj=n@Kq;1BF<9 zg3w!PI7-FL)Bx7cmTv@{Q1!084jNKGd__T&L_jmXy&S8SkslNome_@qwDOEhP*#+C zHuEgplGx2fU^}98B;2Ccx2feCD9mOQ;+x<@SST1JC%s|;OUR8v#{hSzB0v<3khvYF zj8NO8FzDDPYs&JqA_;+uBL4wnpn0eY0lRb5oae{0{{U_?NH@~bU!&L#XHKtFDewn-|3J9 z^`{+47eQeAdJ8K-9_=Dxzi9kX6KE*706kDMbC-Ci$~RYD@7B0s-mR}eNw2g^^K%U~ z)(Vp0JOn0)Y}J>Qc`|vwqAg5mN(O`BsM5v#a_ znc5ZLdWSiwg@?d}GzW^6XfBQMFoQtYtfgNtKyrc)6()LfcwK0`I3#RP0s`R~nW8pi zlemC*F9MX72f)p9xzxLir~`FuRlJHr)>uvxM|gHeP{?YbC^^LDoH(WLU={o1+z38>Tm?$0XZrcP|>82K$7LScj&xC1|}2isozF8ur)#05WBAj zRC0BfHrNfvM5qlFOAQe=Nb(hJ88mmPsF#4D!EO-4hkCl{w~7h)Dt!+F7$lTflL+?T^=B@n z$1!bPDj~j3ju&1;gw5&p&kI=>76~Ls?^gV|SW3oNF9g$&I6<*D5}-Fb^kWh|5E99Y zBI@v>rK6C9b1!gZEY`77Ld}9#Vy`Z-5HlNaNVTJSdBsP7_7M@lb*|Z<`e~bCMkOxT zHm0sjfqMtdG_XUh0GMTBTe7=-5l;DN{{Y&Ej~$N2pWzu>Yz(Mal2wvNYH6flq7mJf z(E?fE8YpuQa4BCfl$d%jjWYBMe!&*B{yJi4m zF1rjv0v4ykY2~omId!p+Bv8~kqMny3}w7U5hUVoPn2321es_m^0cy? zlhR{=JgC8I&<8tn5x~*#!%OQ104zE8YBMe*SjyT|Dz*m2YQ(O@<|9oBw$p9^dr3oj z2oUUvphQg*ujsc_H0P{p-Bb2njl6VhS&xYHHDRKD#wi(3SyHjQc~&MibIz@YoJ@ts0LbT%>Vx9Wgv&p(7$C zb+|n9#VpD)?hpV1Rs&nFMSxR7p%UmpB3LS5Z&}u}Z+JPStW@l7dE&~8$if|+unYeH z>QFpVv{=rtn-<#EL_KLBJVetY0__SpM0w1Vzz{2CQI8m{$RVAP$Tt$>P|G817Xj1V z;G?nal0K938aVKT;lKp$iepj;YbG(uXH>-#@dN+}05C-q&tWUDgITE+JFy6@UG5v9 zN73BLMh@*kskX!Y&;S4o2l$PUv`Uv$?q9>LAhXOO0#)n{OR)&4vIUnh0G)GJX}~qK zmiMhg@c{+eMU;EPNd~6nQ1cPymHA4!GVEK0ZKz+u94!yatA3ivnzpg*bX)R8A1i9i3is?&#@%;KxIZC3K%*KIoyq!(^)lmSisv6?G)dX@Hn7 zy%Yp4B?BQKmW!uE05OY9le(3WAu~c9#D%hQbz5dbeTAx6H)$Cn0dPS(1U#i%LJbY7 z7e9g=Tq2|kh25f?HNg+KzEum>ZA<}jZg2_L)J@1CxRBJX$8L&p5hdS>xHuez?}rYe zI?$sd4@D#Y0PYkOAjyc$GzTLjb_r*$Xm(^_jiqhTvrAl>NnB8MiJP&lAz^9-gy^77 z)4fNESVbkAr;=R`kc6Wf$4Cn{Adk6RMpQkHki?_yK!74bB#BrDpxqMG5+=-PMqDfq zP7kr}zOqhC0V_~w@=te45(S`tkbx0wlO%gO(tyH*Vurd%ovBwU_h+I&iN?hITg?qb z+pLev&;sTb7?mM@fDgf3rl_Pc!*ey#l1!#SX$ye-t^uYV!R}b zm1QUGry|5D8$~$~8J8<3AUsw++1M9ei3ssXFjLql>AbwDz5A6XA`VNh~5Zl zw42SxxC^tST(h9m>~Xf$EvPjLNL@_>X4_OrqGk_iV@uL#cm_z6dtBnL*!MA3Zp$k2 z)W1g@RNMt)u#n`Tqb{;roRFR8YR1Fd;1!_)`XQv&4LBp&Ccr!&2t`dL2uun}aMyyhJ-7(-h^fe8s~N`m&OM|3QFC^wVMJ5Ce`*jvHv z8KB?bDs~;};^B&GVb=q2Z0(i0)#J}dN;v|IOTjVIEZhJxO^HW^mr3+Rp9y!dQSMW^ z{{S-RS*I>lxk`=*%J$Hsloq^c23rg0F2eTdl6HiS6*o5JG$e4En$&D11 z4XFFzPz?aEbuZfnF3Pi4l9{%Ww}nR306SiHWMz;;&YW z&d4Xe;+?Nd(owXF8W41YnwlMzW|7*;l3W-&5K-~RK6j1zDWp)A7k+$;(+rs@)j@=2 zz0&t~l7L|f+G$|ek7P}~R+TqOs0&m;??&m=lqQm?F2xbqWKvK>K}x)q(%$emz@WQE^ywL57n60Sy1 z6&t!NN#G|@L9_4#vI)o~B#H_2N2&l=GZ0SYHM1J&HV8r^GIq5ERV%r;$l(*c7Xd8+ z#hW;az|LW;h6&kBSP8_*{$)&ZogyWd$xB~2N%G(&FB599&;TbzDFZ}gq;~*5Xd%U7 zq`oL!G^W}GgUd|?zihKAomF(m@wk7LN4XBdp^hC39gp+d&^Nb= zJkF=O(Pd085 zfy7o-nIIwVK;|m>#V*{`H;FfpBM{j1;RcB`A@|cY16TvPxSf!$#X_M3hJBmJ@khUd zfZ-C!&qK4pa_w|I;)rg>X}hogkiU zVEOc6lE!ZhsCD+XIzR=0y(Lwb@cM*p0<37QfPzh#O{!jxc8stn%;JsfEzjAJ9GW`k z1|tOUY%2k}6+8qfD-t2VODWZA;!C>gE4VV-TD2+14|NXd?M>C7gJsaESiW5-u@vl1 z(Iv+P!V5R3&%5XlOSmAx5tfMvFa!tiK$j_DYOd&VZs{j_pNTtJPY|W_qXWtocvLTl z6Yw8=y#dJNwk$iKo!1>~b zVMz@pI-LHdRm?aQ>@|}W9W)6;Gg8)R?O>U~%Vh|HA~;HTj8HX8+CJ)PqjvG6c5m6} zDB+@zg_kskaFGz82ayUs=aR;ig70HB2+B@aAe?(snR-B&x(b*;QPc*;g$IUD9+wnl zX@VLEG-bClM0xuQ$Ryb84rODB9N@Ij_DvF}Zh+0G6+EvBHv5#LGq)`c5-PP5Ds9S7N7be0jth{U0^8398$Y5Zb6CfSH6wRD80s{-_qy8 zn#P9gi?A9~1zZ+XQa1gHjGzDltZv=K1fhvynQ;l*eY7(|J!F8;J&vjw1eq{%0z6WO zAsnQ86-FpIS`p-+AO%wm+td6ObuS3fF_@`0IXMVT;ZDseAyKs3p)Mt4B#Em!MeKy> zD1n(1+KWR3k%S1ACYSf?r~X9v#i$+OLw7cr2qf`fCvg6zyNN6U;Qr1RDlSs z{F|V;l?IoGU6QHXk6pVU?fQ>0G%3;(#|JR+K8E1VMTjV3AOqR&G#k%Xk82 z64Q~V#JY0{C!5EPjwufyI=f`3JjJ(-(@dEYy?mmE)G*xp5u`;NmU^avb}$9k+KRNn z8YB2of`M=?He+%&gSB+Slb>IlQKQ5;L|fMVE|cJ8y2S=EkF z&}?rDi0O5`p$?F)TZq-fa-eXB50OP>+op$tbkN3ja%)@%bpSDnBS10JFHjcl7SgEj zZAB8p;F7_-vE=o?>w$p<12#-@;cURp28hTE%_8vmcdO%f_|>LNiCOV}4`Dv_d;pSx zy0(sJ=ryT9D6&f8i9jk~2z{w!qi-eq9Vi|EmjK@|tD=sCUFFa+ng!^aEP^Nh09d-0 zD1jpoC={0op@_RnvDnjK027K!>l9&pEG}ai@6eb~gJ=Nl068{Mgj=A34cRa*Gop1w zmX$=wFcu7gu9XQjL|_*HzkQB}PKUiLgp7rgj{!_l1B34&vsB%7y#eW2LZ`c z5%Vt!=~J8p#4e|N_#1SU%CU>lb_=w)e?Hs;O-?fX^7PUrgG!52OeCq$0cl`hYXDig z9e{62o0GZ;;IME_O(PnVMlu!#E)xZUk&u+e(;cjcuY7BeLhx#!=7f|99>)IwVma%@ zPnBWM%3C=_Ne7-=8?N?rT9|(pLx9U+h2$M5aV$VuZrT?~jwr{ZS@MkF@{vN&Fb0O} z0stti6BO|xI1cn}_Csg_$MO#N;7p7mB2aV}wz1g+B_!es*7Q?z2uehRq0y2CjXI)` znyl_hH=+<=+sILFYj!Tx*s^n@9Mea6x<#l33}LNy!7$)Q2?*G=q>FMmpfIGE46VSu zhKzCpq*8KBc&r2KiKv+d;$f-Z7tk2PCo!$DLUu@uXo)=38QZbw3HGHo0k4(dR}Qx} z9MoSLFiQvR^F(O|nIt<+-Ugh}^2VTPKM5NZoA2vaRmNl)8rW?|n7G#N4;8tBl&5xU z2wGCE;Jz-f6uN8u7MVunxKM@{#XNwAy#)v-8JfgTc&DbMgGynKT^qQeE+Yj<6CyJ- z%)q2X6zzM(BY9Gb0E2~xk47Q{U>a;pJ&ob0Rw45>-sHPwxZF-=$+xW10OF!7S(A4M zK2B;<{b&JpV&&yGy*QyOBzd%j>`XvfX@s0_J-o>$bXA#@h`gz=+@$%TrVvm;iCec+ z(6C(R0R*a{Cj$a?U9bYD4V#?7FJLKvLwGaft}4v460EQ>HxW7LU4osSqBkUyVTWI8 z5Xu%Lnx+23K>kxOL%n7$ZdWvz383XLUFE1tD8ouR04*dti9jKFRH-@!jSoD036Hd= zBy^@NkvxTQPG>h5H|eD5TFFyNzum~vGPdmdgQk-f-hhB2LL`Y!W-7u=6vSoP)Gda* zBipnQjTQA1`XWjsCD0<=35&H7D&0GI8=N$tw_BF@Oi4EnM}n86REMhD;BL~$X;Ng% z>5AD&bc!s=W|QXI$YBA5PDS!v)=hIGfN+9vv^pkJ`dAnc1&2hU0mj2F>Qh98;HKm) zJQZ7Z4cb_c~$zBK|3<_gvjhja$z$KL%Y!OqHJ>mS*qwQCX z=#$)cjlY;C_B4bfR;7>wNN`*=6LfB4G_7heR}_At9hvNx{^>@X*{l zun9634((K5zN%2nU8H_ftyzT*{icJnOizG=2ylqd+igXKcnhw9s+7Z3Ad$#h{)I3h zizyMIfo%!7S5>>Ma^ArxNxiR1xG9se_+U!d4Fa0hK#_J%fCTM2*XduHSX9E0J-rt@ zjf*94mZ{?6gx9$)kBdLJlkG<+kS>t_0Au2gqn%K~mG`8qq%CCq%SJ0i(aF6ndMGJq zGCi7X6J%Sdtd!9-VVj{MmgzA&R5w&huXF{+Hx`*&!JCel0IC=S%h15`(;uKfoRVM+ zj7zIlBHO}@KV}fnD0x#N;CB}|EfSv=&2KJ*fVql|@lHbcYUHovX6UmNWgKfj1Oy+= zAdr$#nrS374-M6m(sv06v zZof23!%W9+Fklv474IEY&6HHGvQ|SVg=l^wK2VnF#Jg?Lj9E zAR9jpR_=g~ULs-!QUKVFS{%p2M5LLLMpB4K(}sfhAen&=hpJa*%0&leB6LS;1X+E_ zCi_(X0FPK%1l+iaH`$}2Ne&x76cu1=EJJbu;(%k8kqHsmFV&Njn~evSdka9)N-+dI z**v-vQQRO91Bq~ceVb%bi=c_oM_)!gPSwT%!w;`J$V<|cjWT*s; zBMi|DQ~(eJ0ASdyPi+7Y5&ZG8#lww+NK|5b%Iy?_YZGd-^Up+Wx3TTk9Qo)DCTNf~ zgv~m1l>%&SmRdawl@LM@xGmgEQz~0Cpq3UA;%0?G5J1YvY^~hdnQ=nsbiLxX;hK$| zIX!VO357zi1&4C@eX3bkc4)=3a2SWRWx`wCf)W;u6q+4Mnn*b{AiIL~d@7jW3kQ~b z)}~c!5{PbDfqJyEFT{)s3`LzvjL*)1kX}*mCrHvHsH+1ZVVDl8K=y<8=vqbaB(Onh zVIR5!$wM_PP1qV9MIIxtVQ(qmd03}YGFb}LZ91yflJ6G*l{f)wCKPLAJbbz+Pmhp; z;-jHvAAt4u{{ZXV7%+B$r6Ki#LM0f{H0GDa#TjGI^dUgfB{oE|GG_UuXJp0y0G)s9 zQw8GhPwnM_0JxhqbAq5s9;8`TP}yp|@sa~HTCJZx#KkcVIJ0f}LA243i7E(25hR4VtvpLnq;;Tn)eJny4bu94xagP=nJJesgSf{4FHbYnw^hY!yT=8t4|(4 zc6ThPsvH!R@JK7FwgYyJ%R_ZQiNLYoURQflI zot(Q@lxdpEloA;2wI6YUG52f$0s7XwMQVCu}g5>Bw*x96DK1~Z4 zvi+f@1_ODgyC|&rp^0kXbS2&r2JI-`$Yti(#(Lyl`CIQVUP|%x_^K`YTAWbBQLU|UWQ&mW?N|J#bTxddy z>O3qybcAPO4poxKf*50Z2(Kz$Nkf6@8KPtv6W$Fi$YKLpje`vl2BINJVwqkxtQe7| zKs;Sj7nr2BDDNN;T%{i74g&xd4m}WM!d>iFn>)+;hBD6;Jz^C90FEs!V@9IivFHwj zX6Wb2m4p?fkbRdyOexu?sUkrJ3Cvf^^-s64)-a^m63Wf6gHt&RNioe-cS*z8LEQ}$ zTj7K5>bk1X#Y{yogn&e`GR30e0x;Z4El}b@tg#?WINYviyF^c9s3LB59%>uBiye>Z zZj`?NF2JV{7lhGGE-|ui=y{3M?&P%XNhpfOLB{m5VUT9lC60mQ z%{39C7XV;_!*%l1j$|^1Q&g(EtqkIx+(;dpxK#b1437wm=1Mfc7Xt1|kDK5&jD z=R`S31n9D7@2D3!t&LK8#->QToDT+}nqh?(1QCQ-?zySqA&4k27)-z}7m7z=SV1_S z>qZi2O9q!h(J0a?@K1)9RBoG<>36V=elu;`p*5&Zp@d|H#jl8N`bxrZ+$Alf2KU;Y zz#|YKY!QOMO}byVtQj1zYgn7R{{UXN7HPJmX_r#46n_m26kuD6=2y~Sk+a#!C*Jf# zr%?eGZN%{I=`}VM)=RyGNEx*0L3PjdmJXwDpqBIS9b27&(o;BWugZ#U}$ literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/mljar.png b/docs/website/img/logos/mljar.png new file mode 100644 index 0000000000000000000000000000000000000000..a61427befb007ec6f1692b6c544a9b0041365eb2 GIT binary patch literal 8395 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 literal 0 HcmV?d00001 diff --git a/docs/website/img/logos/tpot.jpeg b/docs/website/img/logos/tpot.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..fd4d56addb5aa0126ec51e386035ed5646398bfb GIT binary patch literal 181208 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 A!vFvP literal 0 HcmV?d00001 diff --git a/docs/website/img/shiny.png b/docs/website/img/shiny.png new file mode 100644 index 0000000000000000000000000000000000000000..9942dfeec8010206198fcc3bec9ade8a5de5f39b GIT binary patch literal 211925 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 PE4h0mcPb`#4jnLlo|Kl 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 z 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ΝX;ZqD&==KKjKfZLjm48-|8;w|%S6+f_8I7r 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 b`3>s4=~0`@kD}zL;NQ8^YNxUlF8TfsQ-04% literal 0 HcmV?d00001 diff --git a/docs/website/index.html b/docs/website/index.html new file mode 100644 index 000000000..fdfc40b7b --- /dev/null +++ b/docs/website/index.html @@ -0,0 +1,424 @@ + + + + AMLB: an AutoML Benchmark + + + + + + + +

+ + + +
+
+
AMLB
+
An AutoML Benchmark
+
+ Comparing different AutoML frameworks is notoriously challenging. AMLB + is an open and extensible benchmark that follows best practices and + avoids common mistakes when comparing AutoML frameworks. +
+
+
+
+
+

Easy to Use

+
+ You can run an entire benchmark with a single command! The AutoML + benchmark tool automates the installation of the AutoML framework, + the experimental setup, and executing the experiment. +
+
+ > python runbenchmark.py autosklearn openml/s/269 1h8c +
+
+ + + + + Installation guide + +
+
+

Visualize Results

+
+ The results can be visualized with our + interactive visualization tool + or one of our + notebooks. This includes stripplots, critical difference diagrams, + Bradley-Terry trees, and more! +
+ +
+ + + + + Results + +
+
+

Easy to Extend

+
+ Adding a framework + and + adding a dataset + is easy. These extensions can be kept completely private, or + shared with the community. For datasets, it is even possible to + work with + OpenML + tasks and suites directly! +
+ + + + + + + + +
+ + + + + Extending the benchmark + +
+
+
+
+
+
+

📄 Paper

+
+ A preprint of our most recent paper is available on + ArXiv. It includes an in-depth discussion of the different design + decisions and its limiations, as well as a multi-faceted analysis + of results from large scale comparison across 9 frameworks on more + than 100 tasks. + +
+
+
+

🧑‍💻 Code

+
+ The entire benchmark tool is open source and developed on + Github. The Github discussion board and issue trackers are the main way + for us to interact with the community. +
+
+
+ +
+
+

AutoML Frameworks

+
+
+ Many AutoML frameworks are already integrated with the AutoML + benchmark tool and + adding more is easy. + We have more information about the different frameworks on our + framework overview page. The icons below + link directly to their respective Github repositories. +
+
+ + + + + + + + +
+
+
+
+
+

Community

+
+ We welcome any contributions to the AutoML benchmark. Our goal is to + provide the best benchmark tools for AutoML research and we can't do + that on our own. Contributions are appreciated in many forms, + including feedback on the benchmark design, feature requests, bug + reports, code and documentation contributions, and more. Why not stop + by on our + welcome board + and let us know what got you interested in the benchmark? +
+
+
+ + + diff --git a/docs/website/papers.html b/docs/website/papers.html new file mode 100644 index 000000000..579aee363 --- /dev/null +++ b/docs/website/papers.html @@ -0,0 +1,289 @@ + + + + AMLB: Papers + + + + + + + + + + + +
+

Papers

+
+

AMLB: an AutoML Benchmark

+
+ Pieter Gijsbers, Marcos L. P. Bueno, Stefan Coors, Erin LeDell, + Sébastien Poirier, Janek Thomas, Bernd Bischl and Joaquin Vanschoren +
+ + + +
+ Comparing different AutoML frameworks is notoriously challenging and + often done incorrectly. We introduce an open and extensible benchmark + that follows best practices and avoids common mistakes when comparing + AutoML frameworks. We conduct a thorough comparison of 9 well-known + AutoML frameworks across 71 classification and 33 regression tasks. + The differences between the AutoML frameworks are explored with a + multi-faceted analysis, evaluating model accuracy, its trade-offs with + inference time, and framework failures. We also use Bradley-Terry + trees to discover subsets of tasks where the relative AutoML framework + rankings differ. The benchmark comes with an open-source tool that + integrates with many AutoML frameworks and automates the empirical + evaluation process end-to-end: from framework installation and + resource allocation to in-depth evaluation. The benchmark uses public + data sets, can be easily extended with other AutoML frameworks and + tasks, and has a website with up-to-date results. +
+ +
+ +
+ @misc{https://doi.org/10.48550/arxiv.2207.12560,
+   doi = {10.48550/ARXIV.2207.12560},
+   url = {https://arxiv.org/abs/2207.12560},
+   author = {Gijsbers, Pieter and Bueno, Marcos L. P. and Coors, + Stefan and LeDell, Erin and Poirier, S\'{e}bastien and Thomas, Janek + and Bischl, Bernd and Vanschoren, Joaquin},
+   keywords = {Machine Learning (cs.LG), Machine Learning + (stat.ML), FOS: Computer and information sciences, FOS: Computer and + information sciences},
+   title = {AMLB: an AutoML Benchmark},
+   publisher = {arXiv},
+   year = {2022},
+   copyright = {Creative Commons Attribution 4.0 International} +
+ } +
+
+
+
+

An Open Source AutoML Benchmark

+
+ Pieter Gijsbers, Erin LeDell, Janek Thomas, Sébastien Poirier, Bernd + Bischl, Joaquin Vanschoren +
+ + + +
+ In recent years, an active field of research has developed around + automated machine learning (AutoML). Unfortunately, comparing + different AutoML systems is hard and often done incorrectly. We + introduce an open, ongoing, and extensible benchmark framework which + follows best practices and avoids common mistakes. The framework is + open-source, uses public datasets and has a website with up-to-date + results. We use the framework to conduct a thorough comparison of 4 + AutoML systems across 39 datasets and analyze the results. +
+ +
+ +
+ @article{amlb2019,
+   title={An Open Source AutoML Benchmark},
+   author={Gijsbers, P. and LeDell, E. and Poirier, S. and + Thomas, J. and Bischl, B. and Vanschoren, J.},
+   journal={arXiv preprint arXiv:1907.00909 [cs.LG]},
+   url={https://arxiv.org/abs/1907.00909},
+   note={Accepted at AutoML Workshop at ICML 2019},
+   year={2019}
} +
+
+
+
+ + + diff --git a/docs/website/results.html b/docs/website/results.html new file mode 100644 index 000000000..dc4c84cc8 --- /dev/null +++ b/docs/website/results.html @@ -0,0 +1,262 @@ + + + + AMLB: Results + + + + + + + + + + + +
+
+

Results

+
+
+ ⚠️ Our paper outlines + important limitations for the interpretation of + results. These limitations include: +
+ +
+
    +
  • + We use AutoML framework versions from + September 2021, many frameworks have since seen + major updates. +
  • +
  • + We use the "benchmark" modes of the frameworks, which generally + only optimize for performance. Most AutoML frameworks + have multiple modes to support different use cases. +
  • +
  • + Results can not be used to make conclusions about which + algorithm is best, as all frameworks differ in multiple ways. +
  • +
  • + Performance statistics are often independent from many + qualitative differences, such as ease of use or + interpretability. +
  • +
+ Please read Section 5.3 in our paper for a more elaborate discussion + of these and other limitations. +
+ +
+
+
+
+ All results are available as + raw files + 📂, but we open source the tools we used for generating the figures in + our paper. The best way to explore the results is through our + interactive + Shiny app. It loads the latest results by default. It is also possible to use + our + notebooks + which contain additional visualizations. +
+ +
+
+ + + diff --git a/docs/website/style.css b/docs/website/style.css new file mode 100644 index 000000000..117611739 --- /dev/null +++ b/docs/website/style.css @@ -0,0 +1,527 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; + font-size: 18px; +} +.grey { + color: #495057; +} + +/* main: #1971c2 */ + +body { + font-family: "lato", sans-serif; + color: #343a40; +} + +section { + margin-bottom: 64px; +} + +a { + color: #1971c2; +} + +.page-content { + padding: 0 clamp(15%, 100%, calc((100vw - 1000px) / 2)); /* should maybe set width in px instead */ +} + +h1 { + font-size: 72px; + padding-bottom: 24px; +} + +h2 { + font-size: 48px; + padding-bottom: 24px; +} + +h3 { + font-size: 32px; + padding-bottom: 16px; +} + +footer { + color: #e7f5ff; + font-size: 14px; + background-color: #1971c2; + text-align: center; + padding: 8px; +} + +footer > a { + color: #e7f5ff; + font-size: 14px; +} + +.terminal { + background-color: #343a40; + color: #f8f9fa; + font-family: "Inconsolata", sans-serif; + padding: 8px; + margin: 16px 5%; +} + +/* NAVBAR */ +.construction-banner { + background-color: #1c7ed6; + color: white; + text-align: center; +} + +.navigation-bar { + background-color: #1971c2; + color: white; + text-transform: uppercase; + + display: flex; + gap: 24px; + justify-content: flex-end; + align-items: center; + padding: 16px; + height: 60px; +} + +nav a:first-child { + flex-grow: 1; +} + +.nav-icon { + height: 24px; + fill: white; +} + +.nav-icon-with-text { + height: 18px; +} + +.nav-icon:hover, +.nav-icon:active { + height: 28px; +} + +.nav-link:link, +.nav-link:visited { + text-decoration: none; + color: white; +} +.nav-link:hover, +.nav-link:active { + color: white; + font-weight: bold; +} + +/* TITLE */ + +.title, +.subtitle { + color: #343a40; + text-align: center; +} + +.title { + font-size: 74px; + padding-top: 48px; + font-weight: bold; +} + +.subtitle { + font-size: 62px; + font-weight: bold; + padding-bottom: 24px; +} + +.summary { + font-size: 24px; + color: #495057; + padding: 0 max((100% - 900px) / 2, 0px); /* does not seem to work with just the math expression */ +} + +/* CARDS */ + +.three-cols { + display: grid; + grid-template-columns: repeat(3, 1fr); + column-gap: 5%; +} + +.card { + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1); + border-radius: 5px; + padding: 16px; + + display: flex; + flex-direction: column; +} + +.card img { + padding: 16px 2%; +} + +.card > svg { + display: block; + margin: 16px auto; +} + +.flex-grow { + flex-grow: 1; +} + +.card > .card-nav { + color: #1971c2; + text-decoration: none; + + display: flex; + align-items: center; + justify-content: flex-start; + gap: 8px; +} + +.card > .card-nav > svg { + height: 24px; + fill: #1971c2; +} + +h3 { + font-size: 24px; + padding-bottom: 10px; +} + +/* Frameworks */ +/* .icon-grid { + padding: 24px; + display: grid; + grid-auto-rows: 60px; +} */ +.icon-flex { + margin-top: 24px; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + gap: 40px; +} + +.icon-flex a img { + height: 90px; +} +/* Paper */ + +.two-col { + display: grid; + grid-template-columns: 1fr 1fr; + column-gap: 2%; + + background-color: #1971c2; + color: #e7f5ff; + border-radius: 5px; +} + +.two-col a { + color: white; +} + +.two-col h3 { + color: white; +} + +.flat-card { + padding: 16px; +} + +/* FRAMEWORKS PAGE */ +.page-title { + margin-top: 72px; +} + +.framework-card-list { + background-color: #e7f5ff; + padding: 32px 5%; + border-radius: 10px; +} + +.framework-card-list > .accordion { + margin-bottom: 32px; +} +/* +.framework-card { + background-color: white; + margin-bottom: 64; + padding: 32; + border-radius: 10px; +} */ +.framework-card:last-of-type { + margin-bottom: 0; +} + +.framework-header { + display: flex; + align-items: center; + gap: 16px; + flex-wrap: wrap; +} + +.framework-header > h3 { + padding-bottom: 0px; + font-size: 32px; +} + +.framework-links { + display: flex; + gap: 16px; + justify-content: flex-end; + + flex-grow: 1; +} + +.framework-links > a { + text-decoration: none; + font-size: 24px; +} + +/* RESULTS */ + +.limitations-list { + padding: 0px 32px 16px 32px; +} + +.limitations-list li { + padding: 8px 0px; +} + +.results { + display: flex; + gap: 40px; +} + +/* Accordions */ +.accordion { +} + +.acard { + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + border-radius: 10px; + background-color: white; +} + +.accordion > div { + padding: 8px 32px; +} + +.accordion > div:first-child { + padding-top: 16px; +} + +.accordion > label { + width: 100%; + display: flex; + justify-content: center; +} + +.accordion-input { + display: none; +} + +.accordion-icon { + height: 24px; +} + +.accordion-input:checked ~ .accordion-content { + display: block; +} + +.accordion-input:checked ~ label .accordion-chevron-down { + display: none; +} + +.accordion-input:checked ~ label .accordion-chevron-up { + display: block; +} + +.accordion-input ~ .accordion-content { + display: none; +} + +.accordion-input ~ label .accordion-chevron-up { + display: none; +} + +.accordion-input ~ label .accordion-chevron-down { + display: block; +} + +.accordion > label { + background: linear-gradient(0deg, rgba(0, 0, 0, 0.02), white); + border-radius: 10px; + padding-bottom: 8px; +} + +.accordion > label:hover { + cursor: pointer; +} + +/* Papers */ +.paper { + margin-bottom: 48px; +} + +.paper-title { + padding-bottom: 0px; + margin-bottom: 0px; +} + +.paper-links { + display: flex; + align-items: center; + gap: 12px; + + margin-bottom: 16px; +} + +.paper-links > a { + color: white; + background-color: #1c7ed6; + padding: 4px 12px; + border-radius: 4px; + + text-decoration: none; + text-transform: uppercase; +} + +.paper-year { + color: #343a40; + display: inline; + font-weight: bold; +} + +.paper-venue { + color: #495057; + display: inline; +} + +.paper-authors { + color: #4263eb; + padding-bottom: 8px; +} + +.paper-abstract { + color: #495057; + padding-bottom: 16px; +} + +.hover-expand { + display: flex; + gap: 20px; + + color: #343a40; + background-color: white; + border: 2px solid #495057; + border-radius: 4px; + padding: 2px 8px; +} + +.hover-expand > div { + display: none; +} + +.hover-expand:hover > div { + display: block; +} + +.hidden-content { + display: none; +} + +.hidden-content-checkbox { + display: none; +} + +.hidden-content-checkbox:checked ~ .hidden-content { + display: block; +} + +.bibtex { + font-family: "Inconsolata", sans-serif; + color: #343a40; + background-color: #e7f5ff; + border-radius: 10px; + padding: 16px; +} + +.flat-button { + cursor: pointer; +} + +.flat-button > label { + cursor: pointer; +} + +.mobile { + display: none; +} + +.nav-mobile { + justify-content: space-between; + display: none; +} + +@media (max-width: 900px) { + .desktop { + display: none; + } + + .mobile { + display: block; + padding: 25px; + } + + .shiny { + height: auto; + width: 100%; + } + + .results { + flex-wrap: wrap; + } + + .framework-header > h3 { + order: -1; + flex-basis: 100%; + } + + h1 { + font-size: 48px; + padding-bottom: 18px; + } + + .page-title { + margin-top: 32px; + } + + .page-content { + padding: 0 32px; + } + + .three-cols { + grid-template-columns: 1fr; + row-gap: 32px; + } + + .two-col { + grid-template-columns: 1fr; + row-gap: 32px; + } + + .nav-mobile { + display: flex; + } +} + +.mobile * { + color: white; +} + +.mobile > .summary > a { + font-size: 24px; +} diff --git a/frameworks/AutoGluon/README.md b/frameworks/AutoGluon/README.md index 51286533e..1b5c2dc65 100644 --- a/frameworks/AutoGluon/README.md +++ b/frameworks/AutoGluon/README.md @@ -1,16 +1,5 @@ # AutoGluon -To run v0.5.2: ```python3 ../automlbenchmark/runbenchmark.py autogluon ...``` +To run v0.8.2: ```python3 ../automlbenchmark/runbenchmark.py autogluon ...``` -To run mainline: ```python3 ../automlbenchmark/runbenchmark.py autogluonts:latest ...``` - - -# AutoGluonTS - -AutoGluonTS stands for autogluon.timeseries. This framework handles time series problems. - -## Run Steps - -To run v0.5.2: ```python3 ../automlbenchmark/runbenchmark.py autogluonts timeseries ...``` - -To run mainline: ```python3 ../automlbenchmark/runbenchmark.py autogluonts:latest timeseries ...``` +To run mainline: ```python3 ../automlbenchmark/runbenchmark.py autogluon:latest ...``` diff --git a/frameworks/AutoGluon/__init__.py b/frameworks/AutoGluon/__init__.py index 9d3d980a3..2d5734e33 100644 --- a/frameworks/AutoGluon/__init__.py +++ b/frameworks/AutoGluon/__init__.py @@ -10,11 +10,11 @@ def setup(*args, **kwargs): def run(dataset: Dataset, config: TaskConfig): - if dataset.type is not DatasetType.timeseries: + if dataset.type == DatasetType.timeseries: + return run_autogluon_timeseries(dataset, config) + else: return run_autogluon_tabular(dataset, config) - else: - return run_autogluon_timeseries(dataset, config) def run_autogluon_tabular(dataset: Dataset, config: TaskConfig): from frameworks.shared.caller import run_in_venv @@ -36,26 +36,18 @@ def run_autogluon_tabular(dataset: Dataset, config: TaskConfig): def run_autogluon_timeseries(dataset: Dataset, config: TaskConfig): from frameworks.shared.caller import run_in_venv dataset = deepcopy(dataset) - if not hasattr(dataset, 'timestamp_column'): - dataset.timestamp_column = None - if not hasattr(dataset, 'id_column'): - dataset.id_column = None - if not hasattr(dataset, 'forecast_range_in_steps'): - raise AttributeError("Unspecified `forecast_range_in_steps`.") data = dict( - # train=dict(path=dataset.train.data_path('parquet')), - # test=dict(path=dataset.test.data_path('parquet')), - train=dict(path=dataset.train.path), - test=dict(path=dataset.test.path), - target=dict( - name=dataset.target.name, - classes=dataset.target.values - ), - problem_type=dataset.type.name, # AutoGluon problem_type is using same names as amlb.data.DatasetType - timestamp_column=dataset.timestamp_column, + train_path=dataset.train.path, + test_path=dataset.test.path, + target=dataset.target.name, id_column=dataset.id_column, - forecast_range_in_steps=dataset.forecast_range_in_steps + timestamp_column=dataset.timestamp_column, + forecast_horizon_in_steps=dataset.forecast_horizon_in_steps, + freq=dataset.freq, + seasonality=dataset.seasonality, + repeated_abs_seasonal_error=dataset.repeated_abs_seasonal_error, + repeated_item_id=dataset.repeated_item_id, ) return run_in_venv(__file__, "exec_ts.py", diff --git a/frameworks/AutoGluon/exec_ts.py b/frameworks/AutoGluon/exec_ts.py index ab7c4110f..32fd34072 100644 --- a/frameworks/AutoGluon/exec_ts.py +++ b/frameworks/AutoGluon/exec_ts.py @@ -1,21 +1,20 @@ import logging +import numpy as np import os +import pandas as pd import shutil -import warnings import sys import tempfile -import numpy as np +import warnings warnings.simplefilter("ignore") if sys.platform == 'darwin': os.environ['OMP_NUM_THREADS'] = '1' -import pandas as pd - from autogluon.core.utils.savers import save_pd, save_pkl -from autogluon.tabular import TabularDataset from autogluon.timeseries import TimeSeriesPredictor, TimeSeriesDataFrame from autogluon.timeseries.version import __version__ +from joblib.externals.loky import get_reusable_executor from frameworks.shared.callee import call_run, result, output_subdir from frameworks.shared.utils import Timer, zip_path @@ -25,111 +24,69 @@ def run(dataset, config): log.info(f"\n**** AutoGluon TimeSeries [v{__version__}] ****\n") + prediction_length = dataset.forecast_horizon_in_steps - timestamp_column = dataset.timestamp_column - id_column = dataset.id_column - prediction_length = dataset.forecast_range_in_steps - - eval_metric = get_eval_metric(config) - label = dataset.target.name - time_limit = config.max_runtime_seconds - - training_params = {k: v for k, v in config.framework_params.items() if not k.startswith('_')} - - train_data, test_data = load_data(train_path=dataset.train.path, - test_path=dataset.test.path, - timestamp_column=timestamp_column, - id_column=id_column) - test_data_past = test_data.copy().slice_by_timestep(slice(None, -prediction_length)) + train_data = TimeSeriesDataFrame.from_path( + dataset.train_path, + id_column=dataset.id_column, + timestamp_column=dataset.timestamp_column, + ) predictor_path = tempfile.mkdtemp() + os.sep with Timer() as training: predictor = TimeSeriesPredictor( - target=label, + target=dataset.target, path=predictor_path, prediction_length=prediction_length, - eval_metric=eval_metric, + eval_metric=get_eval_metric(config), + eval_metric_seasonal_period=dataset.seasonality, + quantile_levels=config.quantile_levels, ) predictor.fit( train_data=train_data, - time_limit=time_limit, - **training_params, + time_limit=config.max_runtime_seconds, + **{k: v for k, v in config.framework_params.items() if not k.startswith('_')}, ) with Timer() as predict: - predictions = predictor.predict(test_data_past) - log.info(predictions) + predictions = pd.DataFrame(predictor.predict(train_data)) - predictions_only = predictions['mean'].values - test_data_future = test_data.copy().slice_by_timestep(slice(-prediction_length, None)) - truth_only = test_data_future[label].values + # Add columns necessary for the metric computation + quantile forecast to `optional_columns` + test_data_future = pd.read_csv(dataset.test_path, parse_dates=[dataset.timestamp_column]) + optional_columns = dict( + repeated_item_id=np.load(dataset.repeated_item_id), + repeated_abs_seasonal_error=np.load(dataset.repeated_abs_seasonal_error), + ) + for q in config.quantile_levels: + optional_columns[str(q)] = predictions[str(q)].values + + predictions_only = get_point_forecast(predictions, config.metric) + truth_only = test_data_future[dataset.target].values - log.info(predictions_only) - log.info(truth_only) + # Sanity check - make sure predictions are ordered correctly + future_index = pd.MultiIndex.from_frame(test_data_future[[dataset.id_column, dataset.timestamp_column]]) + assert predictions.index.equals(future_index), "Predictions and test data index do not match" - leaderboard = predictor.leaderboard(test_data, silent=True) + test_data_full = pd.concat([train_data, test_data_future.set_index([dataset.id_column, dataset.timestamp_column])]) + leaderboard = predictor.leaderboard(test_data_full, silent=True) with pd.option_context('display.max_rows', None, 'display.max_columns', None, 'display.width', 1000): log.info(leaderboard) - num_models_trained = len(leaderboard) - save_artifacts(predictor=predictor, leaderboard=leaderboard, config=config) shutil.rmtree(predictor.path, ignore_errors=True) - quantiles = predictions.drop(columns=['mean']).reset_index(drop=True) - period_length = 1 # TODO: This period length could be adapted to the Dataset, but then we need to pass this information as well. As of now this works. - - # we aim to calculate the mean period error from the past for each sequence: 1/N sum_{i=1}^N |x(t_i) - x(t_i - T)| - # 1. retrieve item_ids for each sequence/item - #dataset..X /. y - item_ids, inverse_item_ids = np.unique(test_data.reset_index()["item_id"].squeeze().to_numpy(), return_index=False, return_inverse=True) - # 2. capture sequences in a list - y_past = [test_data[label].squeeze().to_numpy()[inverse_item_ids == i][:-prediction_length] for i in range(len(item_ids))] - # 3. calculate period error per sequence - y_past_period_error = [np.abs(y_past_item[period_length:] - y_past_item[:-period_length]).mean() for y_past_item in y_past] - # 4. repeat period error for each sequence, to save one for each element - y_past_period_error_rep = np.repeat(y_past_period_error, prediction_length) - - optional_columns = quantiles - optional_columns = optional_columns.assign(y_past_period_error=y_past_period_error_rep) + # Kill child processes spawned by Joblib to avoid spam in the AMLB log + get_reusable_executor().shutdown(wait=True) return result(output_file=config.output_predictions_file, predictions=predictions_only, truth=truth_only, - probabilities=None, - probabilities_labels=None, target_is_encoded=False, - models_count=num_models_trained, + models_count=len(leaderboard), training_duration=training.duration, predict_duration=predict.duration, - optional_columns=optional_columns) - -def load_data(train_path, test_path, timestamp_column, id_column): - - train_df = pd.read_csv( - train_path, - parse_dates=[timestamp_column], - ) - - train_data = TimeSeriesDataFrame.from_data_frame( - train_df, - id_column=id_column, - timestamp_column=timestamp_column, - ) - - test_df = pd.read_csv( - test_path, - parse_dates=[timestamp_column], - ) - - test_data = TimeSeriesDataFrame.from_data_frame( - test_df, - id_column=id_column, - timestamp_column=timestamp_column, - ) - - return train_data, test_data + optional_columns=pd.DataFrame(optional_columns)) def get_eval_metric(config): @@ -148,6 +105,16 @@ def get_eval_metric(config): return eval_metric +def get_point_forecast(predictions, metric): + # Return median for metrics optimized by median, if possible + if metric.lower() in ["rmse", "mse"] or "0.5" not in predictions.columns: + log.info("Using mean as point forecast") + return predictions["mean"].values + else: + log.info("Using median as point forecast") + return predictions["0.5"].values + + def save_artifacts(predictor, leaderboard, config): artifacts = config.framework_params.get('_save_artifacts', ['leaderboard']) try: diff --git a/frameworks/FEDOT/__init__.py b/frameworks/FEDOT/__init__.py new file mode 100644 index 000000000..86e68de98 --- /dev/null +++ b/frameworks/FEDOT/__init__.py @@ -0,0 +1,25 @@ +from amlb.benchmark import TaskConfig +from amlb.data import Dataset +from amlb.utils import call_script_in_same_dir + + +def setup(*args, **kwargs): + call_script_in_same_dir(__file__, "setup.sh", *args, **kwargs) + + +def run(dataset: Dataset, config: TaskConfig): + from frameworks.shared.caller import run_in_venv + + data = dict( + train=dict( + X=dataset.train.X, + y=dataset.train.y + ), + test=dict( + X=dataset.test.X, + y=dataset.test.y + ) + ) + + return run_in_venv(__file__, "exec.py", + input_data=data, dataset=dataset, config=config) diff --git a/frameworks/FEDOT/exec.py b/frameworks/FEDOT/exec.py new file mode 100644 index 000000000..b57448949 --- /dev/null +++ b/frameworks/FEDOT/exec.py @@ -0,0 +1,99 @@ +import logging +import os +from pathlib import Path + +from fedot.api.main import Fedot + +from frameworks.shared.callee import call_run, result, output_subdir +from frameworks.shared.utils import Timer + +log = logging.getLogger(__name__) + + +def run(dataset, config): + log.info("\n**** FEDOT ****\n") + + is_classification = config.type == 'classification' + # Mapping of benchmark metrics to FEDOT metrics + metrics_mapping = dict( + acc='acc', + auc='roc_auc', + f1='f1', + logloss='logloss', + mae='mae', + mse='mse', + msle='msle', + r2='r2', + rmse='rmse' + ) + scoring_metric = metrics_mapping.get(config.metric, None) + + if scoring_metric is None: + log.warning("Performance metric %s not supported.", config.metric) + + training_params = {"preset": "best_quality", "n_jobs": config.cores} + training_params |= {k: v for k, v in config.framework_params.items() if not k.startswith('_')} + n_jobs = training_params["n_jobs"] + + log.info('Running FEDOT with a maximum time of %ss on %s cores, optimizing %s.', + config.max_runtime_seconds, n_jobs, scoring_metric) + runtime_min = config.max_runtime_seconds / 60 + + fedot = Fedot(problem=config.type, timeout=runtime_min, metric=scoring_metric, seed=config.seed, + max_pipeline_fit_time=runtime_min / 10, **training_params) + + with Timer() as training: + fedot.fit(features=dataset.train.X, target=dataset.train.y) + + log.info('Predicting on the test set.') + with Timer() as predict: + predictions = fedot.predict(features=dataset.test.X) + probabilities = None + if is_classification: + probabilities = fedot.predict_proba(features=dataset.test.X, probs_for_all_classes=True) + + save_artifacts(fedot, config) + + return result(output_file=config.output_predictions_file, + predictions=predictions, + truth=dataset.test.y, + probabilities=probabilities, + target_is_encoded=False, + models_count=fedot.current_pipeline.length, + training_duration=training.duration, + predict_duration=predict.duration) + + +def save_artifacts(automl, config): + + artifacts = config.framework_params.get('_save_artifacts', []) + if 'models' in artifacts: + try: + models_dir = output_subdir('models', config) + models_file = os.path.join(models_dir, 'model.json') + automl.current_pipeline.save(models_file) + except Exception as e: + log.info(f"Error when saving 'models': {e}.", exc_info=True) + + if 'info' in artifacts: + try: + info_dir = output_subdir("info", config) + if automl.history: + automl.history.save(os.path.join(info_dir, 'history.json')) + else: + log.info(f"There is no optimization history info to save.") + except Exception as e: + log.info(f"Error when saving info about optimisation history: {e}.", exc_info=True) + + if 'leaderboard' in artifacts: + try: + leaderboard_dir = output_subdir("leaderboard", config) + if automl.history: + lb = automl.history.get_leaderboard() + Path(os.path.join(leaderboard_dir, "leaderboard.csv")).write_text(lb) + except Exception as e: + log.info(f"Error when saving 'leaderboard': {e}.", exc_info=True) + + +if __name__ == '__main__': + call_run(run) diff --git a/frameworks/FEDOT/setup.sh b/frameworks/FEDOT/setup.sh new file mode 100644 index 000000000..a89781583 --- /dev/null +++ b/frameworks/FEDOT/setup.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash +HERE=$(dirname "$0") +VERSION=${1:-"stable"} +REPO=${2:-"https://github.com/aimclub/FEDOT.git"} +PKG=${3:-"fedot"} +if [[ "$VERSION" == "latest" ]]; then + VERSION="master" +fi + +# creating local venv +. ${HERE}/../shared/setup.sh ${HERE} true + +RAWREPO=$(echo ${REPO} | sed "s/github\.com/raw\.githubusercontent\.com/") +if [[ "$VERSION" == "stable" ]]; then + PIP install --no-cache-dir -U ${PKG} + echo GET_VERSION_STABLE + VERSION=$(PY -c "${GET_VERSION_STABLE}") +elif [[ "$VERSION" =~ ^[0-9] ]]; then + PIP install --no-cache-dir -U ${PKG}==${VERSION} +else + TARGET_DIR="${HERE}/lib/${PKG}" + rm -Rf ${TARGET_DIR} + + if [[ "$VERSION" =~ ^# ]]; then + COMMIT="${VERSION:1}" + else + # find the latest commit to the VERSION branch + COMMIT=$(git ls-remote "${REPO}" | grep "refs/heads/${VERSION}" | cut -f 1) + DEPTH="--depth 1 --branch ${VERSION}" + fi + + git clone --recurse-submodules --shallow-submodules ${DEPTH} ${REPO} ${TARGET_DIR} + cd ${TARGET_DIR} + git checkout "${COMMIT}" + git submodule update --init --recursive + cd ${HERE} + PIP install -U -e ${TARGET_DIR} +fi + +installed="${HERE}/.setup/installed" +PY -c "from fedot import __version__; print(__version__)" >> "$installed" +if [[ -n $COMMIT ]]; then + truncate -s-1 "$installed" + echo "#${COMMIT}" >> "$installed" +fi diff --git a/frameworks/NaiveAutoML/__init__.py b/frameworks/NaiveAutoML/__init__.py index 32a48deed..889396d4c 100644 --- a/frameworks/NaiveAutoML/__init__.py +++ b/frameworks/NaiveAutoML/__init__.py @@ -1,6 +1,6 @@ from amlb.benchmark import TaskConfig from amlb.data import Dataset -from amlb.utils import call_script_in_same_dir, unsparsify +from amlb.utils import call_script_in_same_dir def setup(*args, **kwargs): @@ -14,11 +14,11 @@ def run(dataset: Dataset, config: TaskConfig): target=dataset.target.name, train=dict( X=dataset.train.X, - y=unsparsify(dataset.train.y_enc), + y=dataset.train.y_enc, ), test=dict( X=dataset.test.X, - y=unsparsify(dataset.test.y_enc), + y=dataset.test.y_enc, ), ) if config.measure_inference_time: diff --git a/frameworks/NaiveAutoML/exec.py b/frameworks/NaiveAutoML/exec.py index 4f0c00050..aa9072156 100644 --- a/frameworks/NaiveAutoML/exec.py +++ b/frameworks/NaiveAutoML/exec.py @@ -45,11 +45,9 @@ def run(dataset, config): if scoring_metric is None: raise ValueError(f"Performance metric {config.metric} not supported.") - is_classification = (config.type == 'classification') kwargs = dict( scoring=scoring_metric, num_cpus=config.cores, - task_type=config.type, ) # NAML wasn't really designed to run for long time constraints, so we # make it easy to run NAML with its default configuration for time/iterations. @@ -65,13 +63,14 @@ def run(dataset, config): log.info("`_use_default_time_and_iterations` is set, ignoring time constraint.") kwargs |= {k: v for k, v in config.framework_params.items() if not k.startswith("_")} - log.info(f"Initializing NaiveAutoml(**{kwargs})") automl = NaiveAutoML(**kwargs) with Timer() as training: automl.fit(dataset.train.X, dataset.train.y) log.info(f"Finished fit in {training.duration}s.") + is_classification = (config.type == 'classification') + def infer(data: Union[str, pd.DataFrame]): test_data = pd.read_parquet(data) if isinstance(data, str) else data predict_fn = automl.predict_proba if is_classification else automl.predict diff --git a/frameworks/autosklearn/exec.py b/frameworks/autosklearn/exec.py index e2e7023dc..dda275f2a 100644 --- a/frameworks/autosklearn/exec.py +++ b/frameworks/autosklearn/exec.py @@ -8,7 +8,6 @@ from typing import Union import pandas as pd -import pandas.api.types from numpy.random import default_rng os.environ['JOBLIB_TEMP_FOLDER'] = tmp.gettempdir() @@ -69,10 +68,7 @@ def run(dataset, config): ) log.info("Environment: %s", os.environ) - def is_sparse(data: pd.DataFrame) -> bool: - return any(pd.api.types.is_sparse(data[column]) for column in data) - - use_pandas = (askl_version >= version.parse("0.15")) and not is_sparse(dataset.train.X) + use_pandas = askl_version >= version.parse("0.15") X_train = dataset.train.X if use_pandas else dataset.train.X_enc y_train = dataset.train.y if use_pandas else dataset.train.y_enc predictors_type = dataset.predictors_type diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 000000000..5f2dd0f6c --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,51 @@ +site_name: AutoML Benchmark +theme: + name: material + features: + - navigation.expand + - navigation.indexes + - content.tabs.link + - content.code.annotate + icon: + logo: material/home + admonition: + windows: fontawesome/brands/windows +extra: + homepage: WEBSITE/index.html + +nav: + - index.md + - getting_started.md + - Using the Benchmark: + - Parameters: using/parameters.md + - Configuration: using/configuration.md + - using/aws.md + - using/result_analysis.md + - Extending the Benchmark: + - extending/index.md + - extending/benchmark.md + - extending/constraint.md + - Frameworks: extending/framework.md + - FAQ: faq.md + +extra_css: + - stylesheets/extra.css + +markdown_extensions: + - def_list + - admonition + - toc + - attr_list + - pymdownx.details + - pymdownx.superfences + - pymdownx.snippets + - pymdownx.inlinehilite + - pymdownx.highlight: + anchor_linenums: true + line_spans: __span + pygments_lang_class: true + - pymdownx.tabbed: + alternate_style: true + - pymdownx.emoji: + emoji_index: !!python/name:materialx.emoji.twemoji + emoji_generator: !!python/name:materialx.emoji.to_svg \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 000000000..78d101b38 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,37 @@ +[tool.mypy] +files=[ + "amlb/**/*.py" +] +python_version = "3.9" +# Required because the normal usage pattern of namespaces raises [attr-defined] errors. +# I can't a way to disable [attr-defined] errors for `Namespace` only. +disable_error_code = "attr-defined" + +[[tool.mypy.overrides]] +ignore_errors = false +module = "amlb.utils.*" + + +[[tool.mypy.overrides]] +ignore_errors = true +module = "amlb.benchmarks.*" + + +[[tool.mypy.overrides]] +ignore_errors = true +module = "amlb.datasets.*" + + +[[tool.mypy.overrides]] +ignore_errors = true +module = "amlb.frameworks.*" + + +[[tool.mypy.overrides]] +ignore_errors = true +module = "amlb.runners.*" + + +[[tool.mypy.overrides]] +ignore_errors = true +module = "amlb.*" \ No newline at end of file diff --git a/requirements-dev.txt b/requirements-dev.txt index 4ff2a0f94..ab42f00ce 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,3 +1,7 @@ pytest pytest-mock -pip-tools \ No newline at end of file +pip-tools + +types-psutil +pandas-stubs +mypy diff --git a/resources/benchmarks/timeseries.yaml b/resources/benchmarks/timeseries.yaml index 26af06497..586cf738a 100644 --- a/resources/benchmarks/timeseries.yaml +++ b/resources/benchmarks/timeseries.yaml @@ -1,13 +1,16 @@ --- -- name: covid +- name: m4_hourly dataset: - train: https://autogluon.s3-us-west-2.amazonaws.com/datasets/CovidTimeSeries/train.csv - test: https://autogluon.s3-us-west-2.amazonaws.com/datasets/CovidTimeSeries/test.csv - target: ConfirmedCases + path: https://autogluon.s3.amazonaws.com/datasets/timeseries/m4_hourly/test.csv type: timeseries - forecast_range_in_steps: 19 - id_column: name - timestamp_column: Date + freq: H + forecast_horizon_in_steps: 48 + seasonality: 24 + target: target + id_column: item_id + timestamp_column: timestamp + metric: [mase, smape, mape, rmse, mql, wql, sql] + quantile_levels: [0.05, 0.5, 0.95] - folds: 1 + folds: 2 diff --git a/resources/config.yaml b/resources/config.yaml index faae3657e..a3b7809b8 100644 --- a/resources/config.yaml +++ b/resources/config.yaml @@ -54,13 +54,15 @@ benchmarks: # configuration namespace for the benchmarks def binary: ['auc', 'logloss', 'acc', 'balacc'] # available metrics: auc (AUC), acc (Accuracy), balacc (Balanced Accuracy), pr_auc (Precision Recall AUC), logloss (Log Loss), f1, f2, f05 (F-beta scores with beta=1, 2, or 0.5), max_pce, mean_pce (Max/Mean Per-Class Error). multiclass: ['logloss', 'acc', 'balacc'] # available metrics: same as for binary, except auc, replaced by auc_ovo (AUC One-vs-One), auc_ovr (AUC One-vs-Rest). AUC metrics and F-beta metrics are computed with weighted average. regression: ['rmse', 'r2', 'mae'] # available metrics: mae (Mean Absolute Error), mse (Mean Squared Error), msle (Mean Squared Logarithmic Error), rmse (Root Mean Square Error), rmsle (Root Mean Square Logarithmic Error), r2 (R^2). - timeseries: ['mase', 'mape', 'smape', 'rmse', 'mse', 'nrmse', 'wape', 'ncrps'] + timeseries: ['mase', 'mape', 'smape', 'wape', 'rmse', 'mse', 'mql', 'wql', 'sql'] # available metrics: mase (Mean Absolute Scaled Error), mape (Mean Absolute Percentage Error), smape (Symmetric Mean Absolute Percentage Error), wape (Weighted Absolute Percentage Error), rmse (Root Mean Square Error), mse (Mean Square Error), mql (Mean Quantile Loss), wql (Weighted Quantile Loss), sql (Scaled Quantile Loss). + defaults: # the default constraints, usually overridden by a constraint. folds: 10 # the amount of fold-runs executed for each dataset. max_runtime_seconds: 3600 # default time allocated to the framework to train a model. cores: -1 # default amount of cores used for each automl task. If <= 0, will try to use all cores. max_mem_size_mb: -1 # default amount of memory assigned to each automl task. If <= 0, then the amount of memory is computed from os available memory. min_vol_size_mb: -1 # default minimum amount of free space required on the volume. If <= 0, skips verification. + quantile_levels: [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9] # default quantile_levels for timeseries problem type job_scheduler: # configuration namespace exit_on_job_failure: # if true, the entire run will be aborted on the first job failure (mainly used for testing) : set by caller (runbenchmark.py) diff --git a/resources/frameworks.yaml b/resources/frameworks.yaml index dbaa0d1ac..da2881ce0 100644 --- a/resources/frameworks.yaml +++ b/resources/frameworks.yaml @@ -203,17 +203,15 @@ TPOT: # population_size: 25 # verbosity: 2 -#################################### -### TimeSeries AutoML frameworks ### -#################################### - -AutoGluonTS: - extends: AutoGluon - version: "stable" +FEDOT: + version: 'master' description: | - AutoGluon-TimeSeries - setup_env: - MODULE: timeseries + FEDOT is a AutoML tool that optimizes composite machine learning pipelines using evolutionary optimisation. + project: https://github.com/aimclub/FEDOT + refs: + - https://doi.org/10.1016/j.future.2021.08.022 +# params: +# _save_artifacts: ['leaderboard', 'models', 'info'] ####################################### ### Non AutoML reference frameworks ### diff --git a/resources/frameworks_2023Q2.yaml b/resources/frameworks_2023Q2.yaml index eab8170cc..1ac098b6f 100644 --- a/resources/frameworks_2023Q2.yaml +++ b/resources/frameworks_2023Q2.yaml @@ -97,8 +97,7 @@ mlr3automl: project: https://github.com/a-hanf/mlr3automl NaiveAutoML: - repo: https://github.com/pgijsbers/naiveautoml - version: '#1af07c22b64510df7700798f4c0f32c3ca76ab93' + version: '0.0.27' TPOT: version: '0.12.0' diff --git a/resources/frameworks_latest.yaml b/resources/frameworks_latest.yaml index 7a5ca78a5..44f924232 100644 --- a/resources/frameworks_latest.yaml +++ b/resources/frameworks_latest.yaml @@ -86,17 +86,8 @@ oboe: TPOT: version: 'latest' -#################################### -### TimeSeries AutoML frameworks ### -#################################### - -AutoGluonTS: - extends: AutoGluon - version: "latest" - description: | - AutoGluon-TimeSeries - setup_env: - MODULE: timeseries +FEDOT: + version: 'latest' ####################################### ### Non AutoML reference frameworks ### diff --git a/resources/frameworks_stable.yaml b/resources/frameworks_stable.yaml index 3de7da369..d6b5a1ce0 100644 --- a/resources/frameworks_stable.yaml +++ b/resources/frameworks_stable.yaml @@ -91,8 +91,8 @@ oboe: TPOT: version: 'stable' - - +FEDOT: + version: 'stable' ####################################### ### Non AutoML reference frameworks ### diff --git a/tests/unit/amlb/datasets/file/resources/m4_hourly_subset.csv b/tests/unit/amlb/datasets/file/resources/m4_hourly_subset.csv new file mode 100644 index 000000000..7ee20e07d --- /dev/null +++ b/tests/unit/amlb/datasets/file/resources/m4_hourly_subset.csv @@ -0,0 +1,301 @@ +item_id,timestamp,target +T1,2015-07-01 12:00:00,605.0 +T1,2015-07-01 13:00:00,586.0 +T1,2015-07-01 14:00:00,586.0 +T1,2015-07-01 15:00:00,559.0 +T1,2015-07-01 16:00:00,511.0 +T1,2015-07-01 17:00:00,443.0 +T1,2015-07-01 18:00:00,422.0 +T1,2015-07-01 19:00:00,395.0 +T1,2015-07-01 20:00:00,382.0 +T1,2015-07-01 21:00:00,370.0 +T1,2015-07-01 22:00:00,383.0 +T1,2015-07-01 23:00:00,397.0 +T1,2015-07-02 00:00:00,420.0 +T1,2015-07-02 01:00:00,455.0 +T1,2015-07-02 02:00:00,493.0 +T1,2015-07-02 03:00:00,554.0 +T1,2015-07-02 04:00:00,610.0 +T1,2015-07-02 05:00:00,666.0 +T1,2015-07-02 06:00:00,715.0 +T1,2015-07-02 07:00:00,755.0 +T1,2015-07-02 08:00:00,778.0 +T1,2015-07-02 09:00:00,794.0 +T1,2015-07-02 10:00:00,806.0 +T1,2015-07-02 11:00:00,808.0 +T1,2015-07-02 12:00:00,776.0 +T1,2015-07-02 13:00:00,723.0 +T1,2015-07-02 14:00:00,709.0 +T1,2015-07-02 15:00:00,660.0 +T1,2015-07-02 16:00:00,585.0 +T1,2015-07-02 17:00:00,527.0 +T1,2015-07-02 18:00:00,462.0 +T1,2015-07-02 19:00:00,437.0 +T1,2015-07-02 20:00:00,413.0 +T1,2015-07-02 21:00:00,407.0 +T1,2015-07-02 22:00:00,404.0 +T1,2015-07-02 23:00:00,420.0 +T1,2015-07-03 00:00:00,441.0 +T1,2015-07-03 01:00:00,471.0 +T1,2015-07-03 02:00:00,526.0 +T1,2015-07-03 03:00:00,571.0 +T1,2015-07-03 04:00:00,612.0 +T1,2015-07-03 05:00:00,635.0 +T1,2015-07-03 06:00:00,613.0 +T1,2015-07-03 07:00:00,608.0 +T1,2015-07-03 08:00:00,614.0 +T1,2015-07-03 09:00:00,637.0 +T1,2015-07-03 10:00:00,669.0 +T1,2015-07-03 11:00:00,683.0 +T1,2015-07-03 12:00:00,687.0 +T1,2015-07-03 13:00:00,660.0 +T1,2015-07-03 14:00:00,661.0 +T1,2015-07-03 15:00:00,632.0 +T1,2015-07-03 16:00:00,573.0 +T1,2015-07-03 17:00:00,521.0 +T1,2015-07-03 18:00:00,481.0 +T1,2015-07-03 19:00:00,452.0 +T1,2015-07-03 20:00:00,447.0 +T1,2015-07-03 21:00:00,425.0 +T1,2015-07-03 22:00:00,427.0 +T1,2015-07-03 23:00:00,441.0 +T1,2015-07-04 00:00:00,438.0 +T1,2015-07-04 01:00:00,472.0 +T1,2015-07-04 02:00:00,528.0 +T1,2015-07-04 03:00:00,596.0 +T1,2015-07-04 04:00:00,661.0 +T1,2015-07-04 05:00:00,708.0 +T1,2015-07-04 06:00:00,754.0 +T1,2015-07-04 07:00:00,781.0 +T1,2015-07-04 08:00:00,808.0 +T1,2015-07-04 09:00:00,819.0 +T1,2015-07-04 10:00:00,820.0 +T1,2015-07-04 11:00:00,801.0 +T1,2015-07-04 12:00:00,770.0 +T1,2015-07-04 13:00:00,717.0 +T1,2015-07-04 14:00:00,697.0 +T1,2015-07-04 15:00:00,655.0 +T1,2015-07-04 16:00:00,607.0 +T1,2015-07-04 17:00:00,552.0 +T1,2015-07-04 18:00:00,512.0 +T1,2015-07-04 19:00:00,475.0 +T1,2015-07-04 20:00:00,452.0 +T1,2015-07-04 21:00:00,436.0 +T1,2015-07-04 22:00:00,429.0 +T1,2015-07-04 23:00:00,433.0 +T1,2015-07-05 00:00:00,430.0 +T1,2015-07-05 01:00:00,472.0 +T1,2015-07-05 02:00:00,536.0 +T1,2015-07-05 03:00:00,611.0 +T1,2015-07-05 04:00:00,662.0 +T1,2015-07-05 05:00:00,705.0 +T1,2015-07-05 06:00:00,707.0 +T1,2015-07-05 07:00:00,718.0 +T1,2015-07-05 08:00:00,733.0 +T1,2015-07-05 09:00:00,741.0 +T1,2015-07-05 10:00:00,737.0 +T1,2015-07-05 11:00:00,710.0 +T1,2015-07-05 12:00:00,647.0 +T1,2015-07-05 13:00:00,593.0 +T1,2015-07-05 14:00:00,564.0 +T1,2015-07-05 15:00:00,528.0 +T2,2015-07-01 12:00:00,3124.0 +T2,2015-07-01 13:00:00,2990.0 +T2,2015-07-01 14:00:00,2862.0 +T2,2015-07-01 15:00:00,2809.0 +T2,2015-07-01 16:00:00,2544.0 +T2,2015-07-01 17:00:00,2201.0 +T2,2015-07-01 18:00:00,1996.0 +T2,2015-07-01 19:00:00,1861.0 +T2,2015-07-01 20:00:00,1735.0 +T2,2015-07-01 21:00:00,1713.0 +T2,2015-07-01 22:00:00,1724.0 +T2,2015-07-01 23:00:00,1798.0 +T2,2015-07-02 00:00:00,1891.0 +T2,2015-07-02 01:00:00,2037.0 +T2,2015-07-02 02:00:00,2102.0 +T2,2015-07-02 03:00:00,2163.0 +T2,2015-07-02 04:00:00,2269.0 +T2,2015-07-02 05:00:00,2404.0 +T2,2015-07-02 06:00:00,2515.0 +T2,2015-07-02 07:00:00,2621.0 +T2,2015-07-02 08:00:00,2745.0 +T2,2015-07-02 09:00:00,2816.0 +T2,2015-07-02 10:00:00,2938.0 +T2,2015-07-02 11:00:00,3022.0 +T2,2015-07-02 12:00:00,2976.0 +T2,2015-07-02 13:00:00,2892.0 +T2,2015-07-02 14:00:00,2784.0 +T2,2015-07-02 15:00:00,2725.0 +T2,2015-07-02 16:00:00,2530.0 +T2,2015-07-02 17:00:00,2211.0 +T2,2015-07-02 18:00:00,1995.0 +T2,2015-07-02 19:00:00,1833.0 +T2,2015-07-02 20:00:00,1768.0 +T2,2015-07-02 21:00:00,1712.0 +T2,2015-07-02 22:00:00,1707.0 +T2,2015-07-02 23:00:00,1762.0 +T2,2015-07-03 00:00:00,1880.0 +T2,2015-07-03 01:00:00,1995.0 +T2,2015-07-03 02:00:00,2134.0 +T2,2015-07-03 03:00:00,2227.0 +T2,2015-07-03 04:00:00,2376.0 +T2,2015-07-03 05:00:00,2477.0 +T2,2015-07-03 06:00:00,2597.0 +T2,2015-07-03 07:00:00,2691.0 +T2,2015-07-03 08:00:00,2751.0 +T2,2015-07-03 09:00:00,2782.0 +T2,2015-07-03 10:00:00,2810.0 +T2,2015-07-03 11:00:00,2781.0 +T2,2015-07-03 12:00:00,2693.0 +T2,2015-07-03 13:00:00,2567.0 +T2,2015-07-03 14:00:00,2490.0 +T2,2015-07-03 15:00:00,2448.0 +T2,2015-07-03 16:00:00,2277.0 +T2,2015-07-03 17:00:00,1997.0 +T2,2015-07-03 18:00:00,1785.0 +T2,2015-07-03 19:00:00,1689.0 +T2,2015-07-03 20:00:00,1562.0 +T2,2015-07-03 21:00:00,1560.0 +T2,2015-07-03 22:00:00,1505.0 +T2,2015-07-03 23:00:00,1538.0 +T2,2015-07-04 00:00:00,1641.0 +T2,2015-07-04 01:00:00,1735.0 +T2,2015-07-04 02:00:00,1950.0 +T2,2015-07-04 03:00:00,2138.0 +T2,2015-07-04 04:00:00,2303.0 +T2,2015-07-04 05:00:00,2432.0 +T2,2015-07-04 06:00:00,2528.0 +T2,2015-07-04 07:00:00,2656.0 +T2,2015-07-04 08:00:00,2740.0 +T2,2015-07-04 09:00:00,2803.0 +T2,2015-07-04 10:00:00,2855.0 +T2,2015-07-04 11:00:00,2880.0 +T2,2015-07-04 12:00:00,2778.0 +T2,2015-07-04 13:00:00,2637.0 +T2,2015-07-04 14:00:00,2479.0 +T2,2015-07-04 15:00:00,2381.0 +T2,2015-07-04 16:00:00,2228.0 +T2,2015-07-04 17:00:00,2037.0 +T2,2015-07-04 18:00:00,1758.0 +T2,2015-07-04 19:00:00,1648.0 +T2,2015-07-04 20:00:00,1560.0 +T2,2015-07-04 21:00:00,1508.0 +T2,2015-07-04 22:00:00,1486.0 +T2,2015-07-04 23:00:00,1486.0 +T2,2015-07-05 00:00:00,1515.0 +T2,2015-07-05 01:00:00,1623.0 +T2,2015-07-05 02:00:00,1919.0 +T2,2015-07-05 03:00:00,2172.0 +T2,2015-07-05 04:00:00,2416.0 +T2,2015-07-05 05:00:00,2605.0 +T2,2015-07-05 06:00:00,2755.0 +T2,2015-07-05 07:00:00,2822.0 +T2,2015-07-05 08:00:00,2917.0 +T2,2015-07-05 09:00:00,2997.0 +T2,2015-07-05 10:00:00,3060.0 +T2,2015-07-05 11:00:00,3046.0 +T2,2015-07-05 12:00:00,2942.0 +T2,2015-07-05 13:00:00,2758.0 +T2,2015-07-05 14:00:00,2487.0 +T2,2015-07-05 15:00:00,2349.0 +T3,2015-07-01 12:00:00,1828.0 +T3,2015-07-01 13:00:00,1806.0 +T3,2015-07-01 14:00:00,1897.0 +T3,2015-07-01 15:00:00,1750.0 +T3,2015-07-01 16:00:00,1679.0 +T3,2015-07-01 17:00:00,1620.0 +T3,2015-07-01 18:00:00,1463.0 +T3,2015-07-01 19:00:00,1342.0 +T3,2015-07-01 20:00:00,1192.0 +T3,2015-07-01 21:00:00,1108.0 +T3,2015-07-01 22:00:00,1058.0 +T3,2015-07-01 23:00:00,1024.0 +T3,2015-07-02 00:00:00,1031.0 +T3,2015-07-02 01:00:00,1091.0 +T3,2015-07-02 02:00:00,1208.0 +T3,2015-07-02 03:00:00,1337.0 +T3,2015-07-02 04:00:00,1435.0 +T3,2015-07-02 05:00:00,1515.0 +T3,2015-07-02 06:00:00,1593.0 +T3,2015-07-02 07:00:00,1667.0 +T3,2015-07-02 08:00:00,1753.0 +T3,2015-07-02 09:00:00,1768.0 +T3,2015-07-02 10:00:00,1823.0 +T3,2015-07-02 11:00:00,1813.0 +T3,2015-07-02 12:00:00,1842.0 +T3,2015-07-02 13:00:00,1838.0 +T3,2015-07-02 14:00:00,1800.0 +T3,2015-07-02 15:00:00,1761.0 +T3,2015-07-02 16:00:00,1670.0 +T3,2015-07-02 17:00:00,1609.0 +T3,2015-07-02 18:00:00,1467.0 +T3,2015-07-02 19:00:00,1309.0 +T3,2015-07-02 20:00:00,1189.0 +T3,2015-07-02 21:00:00,1102.0 +T3,2015-07-02 22:00:00,1054.0 +T3,2015-07-02 23:00:00,1017.0 +T3,2015-07-03 00:00:00,1014.0 +T3,2015-07-03 01:00:00,1063.0 +T3,2015-07-03 02:00:00,1187.0 +T3,2015-07-03 03:00:00,1314.0 +T3,2015-07-03 04:00:00,1424.0 +T3,2015-07-03 05:00:00,1497.0 +T3,2015-07-03 06:00:00,1586.0 +T3,2015-07-03 07:00:00,1659.0 +T3,2015-07-03 08:00:00,1722.0 +T3,2015-07-03 09:00:00,1781.0 +T3,2015-07-03 10:00:00,1805.0 +T3,2015-07-03 11:00:00,1831.0 +T3,2015-07-03 12:00:00,1851.0 +T3,2015-07-03 13:00:00,1831.0 +T3,2015-07-03 14:00:00,1809.0 +T3,2015-07-03 15:00:00,1755.0 +T3,2015-07-03 16:00:00,1685.0 +T3,2015-07-03 17:00:00,1618.0 +T3,2015-07-03 18:00:00,1487.0 +T3,2015-07-03 19:00:00,1311.0 +T3,2015-07-03 20:00:00,1180.0 +T3,2015-07-03 21:00:00,1087.0 +T3,2015-07-03 22:00:00,1033.0 +T3,2015-07-03 23:00:00,1002.0 +T3,2015-07-04 00:00:00,991.0 +T3,2015-07-04 01:00:00,1005.0 +T3,2015-07-04 02:00:00,1071.0 +T3,2015-07-04 03:00:00,1191.0 +T3,2015-07-04 04:00:00,1307.0 +T3,2015-07-04 05:00:00,1407.0 +T3,2015-07-04 06:00:00,1495.0 +T3,2015-07-04 07:00:00,1576.0 +T3,2015-07-04 08:00:00,1635.0 +T3,2015-07-04 09:00:00,1688.0 +T3,2015-07-04 10:00:00,1711.0 +T3,2015-07-04 11:00:00,1741.0 +T3,2015-07-04 12:00:00,1768.0 +T3,2015-07-04 13:00:00,1765.0 +T3,2015-07-04 14:00:00,1738.0 +T3,2015-07-04 15:00:00,1684.0 +T3,2015-07-04 16:00:00,1605.0 +T3,2015-07-04 17:00:00,1553.0 +T3,2015-07-04 18:00:00,1433.0 +T3,2015-07-04 19:00:00,1297.0 +T3,2015-07-04 20:00:00,1177.0 +T3,2015-07-04 21:00:00,1082.0 +T3,2015-07-04 22:00:00,1028.0 +T3,2015-07-04 23:00:00,987.0 +T3,2015-07-05 00:00:00,970.0 +T3,2015-07-05 01:00:00,959.0 +T3,2015-07-05 02:00:00,993.0 +T3,2015-07-05 03:00:00,1083.0 +T3,2015-07-05 04:00:00,1215.0 +T3,2015-07-05 05:00:00,1310.0 +T3,2015-07-05 06:00:00,1415.0 +T3,2015-07-05 07:00:00,1479.0 +T3,2015-07-05 08:00:00,1525.0 +T3,2015-07-05 09:00:00,1599.0 +T3,2015-07-05 10:00:00,1623.0 +T3,2015-07-05 11:00:00,1652.0 +T3,2015-07-05 12:00:00,1671.0 +T3,2015-07-05 13:00:00,1664.0 +T3,2015-07-05 14:00:00,1637.0 +T3,2015-07-05 15:00:00,1574.0 diff --git a/tests/unit/amlb/datasets/file/resources/m4_hourly_subset_nondefault_cols.csv b/tests/unit/amlb/datasets/file/resources/m4_hourly_subset_nondefault_cols.csv new file mode 100644 index 000000000..bc2b6c24f --- /dev/null +++ b/tests/unit/amlb/datasets/file/resources/m4_hourly_subset_nondefault_cols.csv @@ -0,0 +1,301 @@ +CustomId,CustomTimestamp,CustomTarget +T1,2015-07-01 12:00:00,605.0 +T1,2015-07-01 13:00:00,586.0 +T1,2015-07-01 14:00:00,586.0 +T1,2015-07-01 15:00:00,559.0 +T1,2015-07-01 16:00:00,511.0 +T1,2015-07-01 17:00:00,443.0 +T1,2015-07-01 18:00:00,422.0 +T1,2015-07-01 19:00:00,395.0 +T1,2015-07-01 20:00:00,382.0 +T1,2015-07-01 21:00:00,370.0 +T1,2015-07-01 22:00:00,383.0 +T1,2015-07-01 23:00:00,397.0 +T1,2015-07-02 00:00:00,420.0 +T1,2015-07-02 01:00:00,455.0 +T1,2015-07-02 02:00:00,493.0 +T1,2015-07-02 03:00:00,554.0 +T1,2015-07-02 04:00:00,610.0 +T1,2015-07-02 05:00:00,666.0 +T1,2015-07-02 06:00:00,715.0 +T1,2015-07-02 07:00:00,755.0 +T1,2015-07-02 08:00:00,778.0 +T1,2015-07-02 09:00:00,794.0 +T1,2015-07-02 10:00:00,806.0 +T1,2015-07-02 11:00:00,808.0 +T1,2015-07-02 12:00:00,776.0 +T1,2015-07-02 13:00:00,723.0 +T1,2015-07-02 14:00:00,709.0 +T1,2015-07-02 15:00:00,660.0 +T1,2015-07-02 16:00:00,585.0 +T1,2015-07-02 17:00:00,527.0 +T1,2015-07-02 18:00:00,462.0 +T1,2015-07-02 19:00:00,437.0 +T1,2015-07-02 20:00:00,413.0 +T1,2015-07-02 21:00:00,407.0 +T1,2015-07-02 22:00:00,404.0 +T1,2015-07-02 23:00:00,420.0 +T1,2015-07-03 00:00:00,441.0 +T1,2015-07-03 01:00:00,471.0 +T1,2015-07-03 02:00:00,526.0 +T1,2015-07-03 03:00:00,571.0 +T1,2015-07-03 04:00:00,612.0 +T1,2015-07-03 05:00:00,635.0 +T1,2015-07-03 06:00:00,613.0 +T1,2015-07-03 07:00:00,608.0 +T1,2015-07-03 08:00:00,614.0 +T1,2015-07-03 09:00:00,637.0 +T1,2015-07-03 10:00:00,669.0 +T1,2015-07-03 11:00:00,683.0 +T1,2015-07-03 12:00:00,687.0 +T1,2015-07-03 13:00:00,660.0 +T1,2015-07-03 14:00:00,661.0 +T1,2015-07-03 15:00:00,632.0 +T1,2015-07-03 16:00:00,573.0 +T1,2015-07-03 17:00:00,521.0 +T1,2015-07-03 18:00:00,481.0 +T1,2015-07-03 19:00:00,452.0 +T1,2015-07-03 20:00:00,447.0 +T1,2015-07-03 21:00:00,425.0 +T1,2015-07-03 22:00:00,427.0 +T1,2015-07-03 23:00:00,441.0 +T1,2015-07-04 00:00:00,438.0 +T1,2015-07-04 01:00:00,472.0 +T1,2015-07-04 02:00:00,528.0 +T1,2015-07-04 03:00:00,596.0 +T1,2015-07-04 04:00:00,661.0 +T1,2015-07-04 05:00:00,708.0 +T1,2015-07-04 06:00:00,754.0 +T1,2015-07-04 07:00:00,781.0 +T1,2015-07-04 08:00:00,808.0 +T1,2015-07-04 09:00:00,819.0 +T1,2015-07-04 10:00:00,820.0 +T1,2015-07-04 11:00:00,801.0 +T1,2015-07-04 12:00:00,770.0 +T1,2015-07-04 13:00:00,717.0 +T1,2015-07-04 14:00:00,697.0 +T1,2015-07-04 15:00:00,655.0 +T1,2015-07-04 16:00:00,607.0 +T1,2015-07-04 17:00:00,552.0 +T1,2015-07-04 18:00:00,512.0 +T1,2015-07-04 19:00:00,475.0 +T1,2015-07-04 20:00:00,452.0 +T1,2015-07-04 21:00:00,436.0 +T1,2015-07-04 22:00:00,429.0 +T1,2015-07-04 23:00:00,433.0 +T1,2015-07-05 00:00:00,430.0 +T1,2015-07-05 01:00:00,472.0 +T1,2015-07-05 02:00:00,536.0 +T1,2015-07-05 03:00:00,611.0 +T1,2015-07-05 04:00:00,662.0 +T1,2015-07-05 05:00:00,705.0 +T1,2015-07-05 06:00:00,707.0 +T1,2015-07-05 07:00:00,718.0 +T1,2015-07-05 08:00:00,733.0 +T1,2015-07-05 09:00:00,741.0 +T1,2015-07-05 10:00:00,737.0 +T1,2015-07-05 11:00:00,710.0 +T1,2015-07-05 12:00:00,647.0 +T1,2015-07-05 13:00:00,593.0 +T1,2015-07-05 14:00:00,564.0 +T1,2015-07-05 15:00:00,528.0 +T2,2015-07-01 12:00:00,3124.0 +T2,2015-07-01 13:00:00,2990.0 +T2,2015-07-01 14:00:00,2862.0 +T2,2015-07-01 15:00:00,2809.0 +T2,2015-07-01 16:00:00,2544.0 +T2,2015-07-01 17:00:00,2201.0 +T2,2015-07-01 18:00:00,1996.0 +T2,2015-07-01 19:00:00,1861.0 +T2,2015-07-01 20:00:00,1735.0 +T2,2015-07-01 21:00:00,1713.0 +T2,2015-07-01 22:00:00,1724.0 +T2,2015-07-01 23:00:00,1798.0 +T2,2015-07-02 00:00:00,1891.0 +T2,2015-07-02 01:00:00,2037.0 +T2,2015-07-02 02:00:00,2102.0 +T2,2015-07-02 03:00:00,2163.0 +T2,2015-07-02 04:00:00,2269.0 +T2,2015-07-02 05:00:00,2404.0 +T2,2015-07-02 06:00:00,2515.0 +T2,2015-07-02 07:00:00,2621.0 +T2,2015-07-02 08:00:00,2745.0 +T2,2015-07-02 09:00:00,2816.0 +T2,2015-07-02 10:00:00,2938.0 +T2,2015-07-02 11:00:00,3022.0 +T2,2015-07-02 12:00:00,2976.0 +T2,2015-07-02 13:00:00,2892.0 +T2,2015-07-02 14:00:00,2784.0 +T2,2015-07-02 15:00:00,2725.0 +T2,2015-07-02 16:00:00,2530.0 +T2,2015-07-02 17:00:00,2211.0 +T2,2015-07-02 18:00:00,1995.0 +T2,2015-07-02 19:00:00,1833.0 +T2,2015-07-02 20:00:00,1768.0 +T2,2015-07-02 21:00:00,1712.0 +T2,2015-07-02 22:00:00,1707.0 +T2,2015-07-02 23:00:00,1762.0 +T2,2015-07-03 00:00:00,1880.0 +T2,2015-07-03 01:00:00,1995.0 +T2,2015-07-03 02:00:00,2134.0 +T2,2015-07-03 03:00:00,2227.0 +T2,2015-07-03 04:00:00,2376.0 +T2,2015-07-03 05:00:00,2477.0 +T2,2015-07-03 06:00:00,2597.0 +T2,2015-07-03 07:00:00,2691.0 +T2,2015-07-03 08:00:00,2751.0 +T2,2015-07-03 09:00:00,2782.0 +T2,2015-07-03 10:00:00,2810.0 +T2,2015-07-03 11:00:00,2781.0 +T2,2015-07-03 12:00:00,2693.0 +T2,2015-07-03 13:00:00,2567.0 +T2,2015-07-03 14:00:00,2490.0 +T2,2015-07-03 15:00:00,2448.0 +T2,2015-07-03 16:00:00,2277.0 +T2,2015-07-03 17:00:00,1997.0 +T2,2015-07-03 18:00:00,1785.0 +T2,2015-07-03 19:00:00,1689.0 +T2,2015-07-03 20:00:00,1562.0 +T2,2015-07-03 21:00:00,1560.0 +T2,2015-07-03 22:00:00,1505.0 +T2,2015-07-03 23:00:00,1538.0 +T2,2015-07-04 00:00:00,1641.0 +T2,2015-07-04 01:00:00,1735.0 +T2,2015-07-04 02:00:00,1950.0 +T2,2015-07-04 03:00:00,2138.0 +T2,2015-07-04 04:00:00,2303.0 +T2,2015-07-04 05:00:00,2432.0 +T2,2015-07-04 06:00:00,2528.0 +T2,2015-07-04 07:00:00,2656.0 +T2,2015-07-04 08:00:00,2740.0 +T2,2015-07-04 09:00:00,2803.0 +T2,2015-07-04 10:00:00,2855.0 +T2,2015-07-04 11:00:00,2880.0 +T2,2015-07-04 12:00:00,2778.0 +T2,2015-07-04 13:00:00,2637.0 +T2,2015-07-04 14:00:00,2479.0 +T2,2015-07-04 15:00:00,2381.0 +T2,2015-07-04 16:00:00,2228.0 +T2,2015-07-04 17:00:00,2037.0 +T2,2015-07-04 18:00:00,1758.0 +T2,2015-07-04 19:00:00,1648.0 +T2,2015-07-04 20:00:00,1560.0 +T2,2015-07-04 21:00:00,1508.0 +T2,2015-07-04 22:00:00,1486.0 +T2,2015-07-04 23:00:00,1486.0 +T2,2015-07-05 00:00:00,1515.0 +T2,2015-07-05 01:00:00,1623.0 +T2,2015-07-05 02:00:00,1919.0 +T2,2015-07-05 03:00:00,2172.0 +T2,2015-07-05 04:00:00,2416.0 +T2,2015-07-05 05:00:00,2605.0 +T2,2015-07-05 06:00:00,2755.0 +T2,2015-07-05 07:00:00,2822.0 +T2,2015-07-05 08:00:00,2917.0 +T2,2015-07-05 09:00:00,2997.0 +T2,2015-07-05 10:00:00,3060.0 +T2,2015-07-05 11:00:00,3046.0 +T2,2015-07-05 12:00:00,2942.0 +T2,2015-07-05 13:00:00,2758.0 +T2,2015-07-05 14:00:00,2487.0 +T2,2015-07-05 15:00:00,2349.0 +T3,2015-07-01 12:00:00,1828.0 +T3,2015-07-01 13:00:00,1806.0 +T3,2015-07-01 14:00:00,1897.0 +T3,2015-07-01 15:00:00,1750.0 +T3,2015-07-01 16:00:00,1679.0 +T3,2015-07-01 17:00:00,1620.0 +T3,2015-07-01 18:00:00,1463.0 +T3,2015-07-01 19:00:00,1342.0 +T3,2015-07-01 20:00:00,1192.0 +T3,2015-07-01 21:00:00,1108.0 +T3,2015-07-01 22:00:00,1058.0 +T3,2015-07-01 23:00:00,1024.0 +T3,2015-07-02 00:00:00,1031.0 +T3,2015-07-02 01:00:00,1091.0 +T3,2015-07-02 02:00:00,1208.0 +T3,2015-07-02 03:00:00,1337.0 +T3,2015-07-02 04:00:00,1435.0 +T3,2015-07-02 05:00:00,1515.0 +T3,2015-07-02 06:00:00,1593.0 +T3,2015-07-02 07:00:00,1667.0 +T3,2015-07-02 08:00:00,1753.0 +T3,2015-07-02 09:00:00,1768.0 +T3,2015-07-02 10:00:00,1823.0 +T3,2015-07-02 11:00:00,1813.0 +T3,2015-07-02 12:00:00,1842.0 +T3,2015-07-02 13:00:00,1838.0 +T3,2015-07-02 14:00:00,1800.0 +T3,2015-07-02 15:00:00,1761.0 +T3,2015-07-02 16:00:00,1670.0 +T3,2015-07-02 17:00:00,1609.0 +T3,2015-07-02 18:00:00,1467.0 +T3,2015-07-02 19:00:00,1309.0 +T3,2015-07-02 20:00:00,1189.0 +T3,2015-07-02 21:00:00,1102.0 +T3,2015-07-02 22:00:00,1054.0 +T3,2015-07-02 23:00:00,1017.0 +T3,2015-07-03 00:00:00,1014.0 +T3,2015-07-03 01:00:00,1063.0 +T3,2015-07-03 02:00:00,1187.0 +T3,2015-07-03 03:00:00,1314.0 +T3,2015-07-03 04:00:00,1424.0 +T3,2015-07-03 05:00:00,1497.0 +T3,2015-07-03 06:00:00,1586.0 +T3,2015-07-03 07:00:00,1659.0 +T3,2015-07-03 08:00:00,1722.0 +T3,2015-07-03 09:00:00,1781.0 +T3,2015-07-03 10:00:00,1805.0 +T3,2015-07-03 11:00:00,1831.0 +T3,2015-07-03 12:00:00,1851.0 +T3,2015-07-03 13:00:00,1831.0 +T3,2015-07-03 14:00:00,1809.0 +T3,2015-07-03 15:00:00,1755.0 +T3,2015-07-03 16:00:00,1685.0 +T3,2015-07-03 17:00:00,1618.0 +T3,2015-07-03 18:00:00,1487.0 +T3,2015-07-03 19:00:00,1311.0 +T3,2015-07-03 20:00:00,1180.0 +T3,2015-07-03 21:00:00,1087.0 +T3,2015-07-03 22:00:00,1033.0 +T3,2015-07-03 23:00:00,1002.0 +T3,2015-07-04 00:00:00,991.0 +T3,2015-07-04 01:00:00,1005.0 +T3,2015-07-04 02:00:00,1071.0 +T3,2015-07-04 03:00:00,1191.0 +T3,2015-07-04 04:00:00,1307.0 +T3,2015-07-04 05:00:00,1407.0 +T3,2015-07-04 06:00:00,1495.0 +T3,2015-07-04 07:00:00,1576.0 +T3,2015-07-04 08:00:00,1635.0 +T3,2015-07-04 09:00:00,1688.0 +T3,2015-07-04 10:00:00,1711.0 +T3,2015-07-04 11:00:00,1741.0 +T3,2015-07-04 12:00:00,1768.0 +T3,2015-07-04 13:00:00,1765.0 +T3,2015-07-04 14:00:00,1738.0 +T3,2015-07-04 15:00:00,1684.0 +T3,2015-07-04 16:00:00,1605.0 +T3,2015-07-04 17:00:00,1553.0 +T3,2015-07-04 18:00:00,1433.0 +T3,2015-07-04 19:00:00,1297.0 +T3,2015-07-04 20:00:00,1177.0 +T3,2015-07-04 21:00:00,1082.0 +T3,2015-07-04 22:00:00,1028.0 +T3,2015-07-04 23:00:00,987.0 +T3,2015-07-05 00:00:00,970.0 +T3,2015-07-05 01:00:00,959.0 +T3,2015-07-05 02:00:00,993.0 +T3,2015-07-05 03:00:00,1083.0 +T3,2015-07-05 04:00:00,1215.0 +T3,2015-07-05 05:00:00,1310.0 +T3,2015-07-05 06:00:00,1415.0 +T3,2015-07-05 07:00:00,1479.0 +T3,2015-07-05 08:00:00,1525.0 +T3,2015-07-05 09:00:00,1599.0 +T3,2015-07-05 10:00:00,1623.0 +T3,2015-07-05 11:00:00,1652.0 +T3,2015-07-05 12:00:00,1671.0 +T3,2015-07-05 13:00:00,1664.0 +T3,2015-07-05 14:00:00,1637.0 +T3,2015-07-05 15:00:00,1574.0 diff --git a/tests/unit/amlb/datasets/file/test_file_dataloader.py b/tests/unit/amlb/datasets/file/test_file_dataloader.py index fa8151789..778cccdf7 100644 --- a/tests/unit/amlb/datasets/file/test_file_dataloader.py +++ b/tests/unit/amlb/datasets/file/test_file_dataloader.py @@ -4,6 +4,7 @@ import numpy as np import pandas as pd import pytest +import pandas.api.types as pat from amlb.resources import from_config from amlb.data import DatasetType @@ -241,14 +242,15 @@ def _assert_data_paths(dataset, definition): assert dataset.train.data_path(f) == path_from_split(s) -def _assert_X_y_types(data_split): +def _assert_X_y_types(data_split, check_encoded=True): assert isinstance(data_split.X, pd.DataFrame) assert isinstance(data_split.y, pd.DataFrame) - assert isinstance(data_split.X_enc, np.ndarray) - assert isinstance(data_split.y_enc, np.ndarray) + if check_encoded: + assert isinstance(data_split.X_enc, np.ndarray) + assert isinstance(data_split.y_enc, np.ndarray) -def _assert_data_consistency(dataset): +def _assert_data_consistency(dataset, check_encoded=True): assert len(dataset.train.X) == len(dataset.train.y) assert len(dataset.train.X.columns) == len(dataset.predictors) assert len(dataset.train.y.columns) == 1 @@ -257,11 +259,107 @@ def _assert_data_consistency(dataset): assert not any([p.is_target for p in dataset.predictors]) - assert dataset.train.X_enc.shape == dataset.train.X.shape assert dataset.test.X.dtypes.equals(dataset.train.X.dtypes) assert dataset.test.y.dtypes.equals(dataset.train.y.dtypes) - assert np.issubdtype(dataset.train.X_enc.dtype, np.floating) - assert np.issubdtype(dataset.train.y_enc.dtype, np.floating) # not ideal given that it's also for classification targets, but well… + if check_encoded: + assert dataset.train.X_enc.shape == dataset.train.X.shape + assert np.issubdtype(dataset.train.X_enc.dtype, np.floating) + assert np.issubdtype(dataset.train.y_enc.dtype, np.floating) # not ideal given that it's also for classification targets, but well… + + +@pytest.mark.use_disk +def test_load_timeseries_task_csv(file_loader): + ds_def = ns( + path=os.path.join(res, "m4_hourly_subset.csv"), + forecast_horizon_in_steps=24, + seasonality=24, + freq="H", + target="target", + type="timeseries", + ) + ds = file_loader.load(ds_def) + assert ds.type is DatasetType.timeseries + print(ds.train.X.dtypes) + _assert_data_consistency(ds, check_encoded=False) + _assert_X_y_types(ds.train, check_encoded=False) + _assert_X_y_types(ds.test, check_encoded=False) + + assert isinstance(ds.train.data, pd.DataFrame) + assert isinstance(ds.test.data, pd.DataFrame) + assert len(ds.repeated_abs_seasonal_error) == len(ds.test.data) + assert len(ds.repeated_item_id) == len(ds.test.data) + + assert pat.is_categorical_dtype(ds._dtypes[ds.id_column]) + assert pat.is_datetime64_dtype(ds._dtypes[ds.timestamp_column]) + assert pat.is_float_dtype(ds._dtypes[ds.target.name]) + + # timeseries uses different task schema - set attributes for test to work + ds_def['train'] = ds.train.path + ds_def['test'] = ds.test.path + _assert_data_paths(ds, ds_def) + + +@pytest.mark.parametrize("missing_key", ["freq", "forecast_horizon_in_steps", "seasonality"]) +def test_when_timeseries_task_key_is_missing_then_exception_is_raised(file_loader, missing_key): + task_kwargs = dict( + path=os.path.join(res, "m4_hourly_subset.csv"), + forecast_horizon_in_steps=24, + seasonality=24, + freq="H", + target="target", + type="timeseries", + ) + task_kwargs.pop(missing_key) + ds_def = ns.from_dict(task_kwargs) + with pytest.raises(AssertionError, match=f"Task definition for timeseries must include `{missing_key}`"): + file_loader.load(ds_def) + + +@pytest.mark.parametrize("missing_key", ["id_column", "timestamp_column"]) +def test_given_nondefault_column_names_when_key_is_missing_then_exception_is_raised(file_loader, missing_key): + task_kwargs = dict( + path=os.path.join(res, "m4_hourly_subset_nondefault_cols.csv"), + forecast_horizon_in_steps=24, + seasonality=24, + freq="H", + type="timeseries", + target="CustomTarget", + id_column="CustomId", + timestamp_column="CustomTimestamp", + ) + task_kwargs.pop(missing_key) + ds_def = ns.from_dict(task_kwargs) + with pytest.raises(ValueError, match=missing_key): + file_loader.load(ds_def) + + +def test_given_nondefault_column_names_then_timeseries_dataset_can_be_loaded(file_loader): + task_kwargs = dict( + path=os.path.join(res, "m4_hourly_subset_nondefault_cols.csv"), + forecast_horizon_in_steps=24, + seasonality=24, + freq="H", + type="timeseries", + target="CustomTarget", + id_column="CustomId", + timestamp_column="CustomTimestamp", + ) + ds_def = ns.from_dict(task_kwargs) + ds = file_loader.load(ds_def) + _assert_data_consistency(ds, check_encoded=False) + + +@pytest.mark.parametrize("forecast_horizon, fold", [(50, 2), (100, 0), (10, 9)]) +def test_if_timeseries_dataset_too_short_for_requested_fold_then_exception_is_raised(file_loader, forecast_horizon, fold): + ds_def = ns( + path=os.path.join(res, "m4_hourly_subset.csv"), + forecast_horizon_in_steps=forecast_horizon, + seasonality=24, + freq="H", + type="timeseries", + ) + with pytest.raises(ValueError, match="All time series in the dataset must have length"): + file_loader.load(ds_def, fold=fold)