{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Redshift ML BYOM Remote Inference using Amazon SageMaker Random Cut Forests\n",
"\n",
"_**Run Predictions from your Amazon Redshift cluster on a model trained and deployed on Amazon Sagemaker**_\n",
"\n",
"---\n",
"\n",
"---\n",
"## Contents\n",
"1. [Introduction](#Introduction)\n",
"2. [Setup Parameters](#Setup-Parameters)\n",
"3. [Training](#Training) \n",
"4. [Inference](#Training)\n",
"5. [Redshift ML BYOM Remote Inference](#Redshift-ML-BYOM-Remote-Inference) \n",
"6. [Conclusion](#Conclusion)\n",
"\n",
"---"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Introduction\n",
"***\n",
"\n",
"Amazon SageMaker Random Cut Forest (RCF) is an algorithm designed to detect anomalous data points within a dataset. Examples of when anomalies are important to detect include when website activity uncharactersitically spikes, when temperature data diverges from a periodic behavior, or when changes to public transit ridership reflect the occurrence of a special event.\n",
"\n",
"In this notebook, we will use the SageMaker RCF algorithm to train an RCF model on the Numenta Anomaly Benchmark (NAB) NYC Taxi dataset which records the amount New York City taxi ridership over the course of six months. We will then use this model to predict anomalous events by emitting an \"anomaly score\" for each data point. The main goals of this notebook are,\n",
"\n",
"* to learn how to obtain, transform, and store data for use in Amazon SageMaker;\n",
"* to create an AWS SageMaker training job on a data set to produce an RCF model,\n",
"* use the RCF model to perform inference with an Amazon SageMaker endpoint.\n",
"\n",
"The following are ***not*** goals of this notebook:\n",
"\n",
"* deeply understand the RCF model,\n",
"* understand how the Amazon SageMaker RCF algorithm works.\n",
"\n",
"If you would like to know more please check out the [SageMaker RCF Documentation](https://docs.aws.amazon.com/sagemaker/latest/dg/randomcutforest.html)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Setup Parameters\n",
"\n",
"***\n",
"Please set below input parameters\n",
"\n",
"1. REDSHIFT_IAM_ROLE: The IAM role arn attached to Redshift Cluster.\n",
"2. REDSHIFT_USER: Database users to run SQL commands\n",
"3. REDSHIFT_ENDPOINT: Redshift Cluster end point.\n",
"4. SAGEMAKER_S3_BUCKET: S3 Bucket to store training input/output"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"\n",
"REDSHIFT_ENDPOINT = 'redshift-cluster.xxxxxxxxxx.us-east-1.redshift.amazonaws.com:5439/dev'\n",
"REDSHIFT_USER=\"awsuser\"\n",
"REDSHIFT_IAM_ROLE='your-amazon-redshift-sagemaker-iam-role-arn'\n",
"SAGEMAKER_S3_BUCKET='your-s3-bucket'\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"isConfigCell": true,
"tags": [
"parameters"
]
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Downloaded training data will be read from s3://sagemaker-sample-files/datasets/tabular/anomaly_benchmark_taxi\n"
]
}
],
"source": [
"import boto3\n",
"import botocore\n",
"import sagemaker\n",
"import sys\n",
"\n",
"\n",
"bucket = SAGEMAKER_S3_BUCKET\n",
"prefix = \"sagemaker/rcf-benchmarks\"\n",
"execution_role = sagemaker.get_execution_role()\n",
"region = boto3.Session().region_name\n",
"\n",
"# S3 bucket where the original data is downloaded and stored.\n",
"downloaded_data_bucket = f\"sagemaker-sample-files\"\n",
"downloaded_data_prefix = \"datasets/tabular/anomaly_benchmark_taxi\"\n",
"\n",
"\n",
"def check_bucket_permission(bucket):\n",
" # check if the bucket exists\n",
" permission = False\n",
" try:\n",
" boto3.Session().client(\"s3\").head_bucket(Bucket=bucket)\n",
" except botocore.exceptions.ParamValidationError as e:\n",
" print(\n",
" \"Hey! You either forgot to specify your S3 bucket\"\n",
" \" or you gave your bucket an invalid name!\"\n",
" )\n",
" except botocore.exceptions.ClientError as e:\n",
" if e.response[\"Error\"][\"Code\"] == \"403\":\n",
" print(f\"Hey! You don't have permission to access the bucket, {bucket}.\")\n",
" elif e.response[\"Error\"][\"Code\"] == \"404\":\n",
" print(f\"Hey! Your bucket, {bucket}, doesn't exist!\")\n",
" else:\n",
" raise\n",
" else:\n",
" permission = True\n",
" return permission\n",
"\n",
"\n",
"\n",
"if check_bucket_permission(downloaded_data_bucket):\n",
" print(\n",
" f\"Downloaded training data will be read from s3://{downloaded_data_bucket}/{downloaded_data_prefix}\"\n",
" )"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Obtain and Inspect Example Data\n",
"\n",
"\n",
"Our data comes from the Numenta Anomaly Benchmark (NAB) NYC Taxi dataset [[1](https://github.com/numenta/NAB/blob/master/data/realKnownCause/nyc_taxi.csv)]. We downloaded data from [here](https://raw.githubusercontent.com/numenta/NAB/master/data/realKnownCause/nyc_taxi.csv) and stored in an S3 bucket. These data consists of the number of New York City taxi passengers over the course of six months aggregated into 30-minute buckets. We know, a priori, that there are anomalous events occurring during the NYC marathon, Thanksgiving, Christmas, New Year's day, and on the day of a snow storm.\n",
"\n",
"> [1] https://github.com/numenta/NAB/blob/master/data/realKnownCause/nyc_taxi.csv"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 67.8 ms, sys: 16.3 ms, total: 84.1 ms\n",
"Wall time: 250 ms\n"
]
}
],
"source": [
"%%time\n",
"\n",
"import pandas as pd\n",
"\n",
"data_filename = \"NAB_nyc_taxi.csv\"\n",
"s3 = boto3.client(\"s3\")\n",
"s3.download_file(downloaded_data_bucket, f\"{downloaded_data_prefix}/{data_filename}\", data_filename)\n",
"taxi_data = pd.read_csv(data_filename, delimiter=\",\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Before training any models it is important to inspect our data, first. Perhaps there are some underlying patterns or structures that we could provide as \"hints\" to the model or maybe there is some noise that we could pre-process away. The raw data looks like this:"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"\n",
"import matplotlib\n",
"import matplotlib.pyplot as plt\n",
"\n",
"matplotlib.rcParams[\"figure.dpi\"] = 100\n",
"\n",
"taxi_data.plot()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Human beings are also extraordinarily good at perceiving patterns. Note, for example, that something uncharacteristic occurs at around datapoint number 6000. Additionally, as we might expect with taxi ridership, the passenger count appears more or less periodic. Let's zoom in to not only examine this anomaly but also to get a better picture of what the \"normal\" data looks like."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"taxi_data[5500:6500].plot()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we see that the number of taxi trips taken is mostly periodic with one mode of length approximately 50 data points. In fact, the mode is length 48 since each datapoint represents a 30-minute bin of ridership count. Therefore, we expect another mode of length $336 = 48 \\times 7$, the length of a week. Smaller frequencies over the course of the day occur, as well.\n",
"\n",
"For example, here is the data across the day containing the above anomaly:"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
timestamp
\n",
"
value
\n",
"
\n",
" \n",
" \n",
"
\n",
"
5952
\n",
"
2014-11-02 00:00:00
\n",
"
25110
\n",
"
\n",
"
\n",
"
5953
\n",
"
2014-11-02 00:30:00
\n",
"
23109
\n",
"
\n",
"
\n",
"
5954
\n",
"
2014-11-02 01:00:00
\n",
"
39197
\n",
"
\n",
"
\n",
"
5955
\n",
"
2014-11-02 01:30:00
\n",
"
35212
\n",
"
\n",
"
\n",
"
5956
\n",
"
2014-11-02 02:00:00
\n",
"
13259
\n",
"
\n",
"
\n",
"
5957
\n",
"
2014-11-02 02:30:00
\n",
"
12250
\n",
"
\n",
"
\n",
"
5958
\n",
"
2014-11-02 03:00:00
\n",
"
10013
\n",
"
\n",
"
\n",
"
5959
\n",
"
2014-11-02 03:30:00
\n",
"
7898
\n",
"
\n",
"
\n",
"
5960
\n",
"
2014-11-02 04:00:00
\n",
"
6375
\n",
"
\n",
"
\n",
"
5961
\n",
"
2014-11-02 04:30:00
\n",
"
4532
\n",
"
\n",
"
\n",
"
5962
\n",
"
2014-11-02 05:00:00
\n",
"
5116
\n",
"
\n",
"
\n",
"
5963
\n",
"
2014-11-02 05:30:00
\n",
"
5232
\n",
"
\n",
"
\n",
"
5964
\n",
"
2014-11-02 06:00:00
\n",
"
4542
\n",
"
\n",
"
\n",
"
5965
\n",
"
2014-11-02 06:30:00
\n",
"
5298
\n",
"
\n",
"
\n",
"
5966
\n",
"
2014-11-02 07:00:00
\n",
"
5155
\n",
"
\n",
"
\n",
"
5967
\n",
"
2014-11-02 07:30:00
\n",
"
6029
\n",
"
\n",
"
\n",
"
5968
\n",
"
2014-11-02 08:00:00
\n",
"
6280
\n",
"
\n",
"
\n",
"
5969
\n",
"
2014-11-02 08:30:00
\n",
"
8771
\n",
"
\n",
"
\n",
"
5970
\n",
"
2014-11-02 09:00:00
\n",
"
10151
\n",
"
\n",
"
\n",
"
5971
\n",
"
2014-11-02 09:30:00
\n",
"
12501
\n",
"
\n",
"
\n",
"
5972
\n",
"
2014-11-02 10:00:00
\n",
"
13990
\n",
"
\n",
"
\n",
"
5973
\n",
"
2014-11-02 10:30:00
\n",
"
16534
\n",
"
\n",
"
\n",
"
5974
\n",
"
2014-11-02 11:00:00
\n",
"
17133
\n",
"
\n",
"
\n",
"
5975
\n",
"
2014-11-02 11:30:00
\n",
"
18775
\n",
"
\n",
"
\n",
"
5976
\n",
"
2014-11-02 12:00:00
\n",
"
18985
\n",
"
\n",
"
\n",
"
5977
\n",
"
2014-11-02 12:30:00
\n",
"
19911
\n",
"
\n",
"
\n",
"
5978
\n",
"
2014-11-02 13:00:00
\n",
"
19123
\n",
"
\n",
"
\n",
"
5979
\n",
"
2014-11-02 13:30:00
\n",
"
19524
\n",
"
\n",
"
\n",
"
5980
\n",
"
2014-11-02 14:00:00
\n",
"
19640
\n",
"
\n",
"
\n",
"
5981
\n",
"
2014-11-02 14:30:00
\n",
"
18364
\n",
"
\n",
"
\n",
"
5982
\n",
"
2014-11-02 15:00:00
\n",
"
17940
\n",
"
\n",
"
\n",
"
5983
\n",
"
2014-11-02 15:30:00
\n",
"
17949
\n",
"
\n",
"
\n",
"
5984
\n",
"
2014-11-02 16:00:00
\n",
"
17288
\n",
"
\n",
"
\n",
"
5985
\n",
"
2014-11-02 16:30:00
\n",
"
16326
\n",
"
\n",
"
\n",
"
5986
\n",
"
2014-11-02 17:00:00
\n",
"
17522
\n",
"
\n",
"
\n",
"
5987
\n",
"
2014-11-02 17:30:00
\n",
"
19243
\n",
"
\n",
"
\n",
"
5988
\n",
"
2014-11-02 18:00:00
\n",
"
20291
\n",
"
\n",
"
\n",
"
5989
\n",
"
2014-11-02 18:30:00
\n",
"
21649
\n",
"
\n",
"
\n",
"
5990
\n",
"
2014-11-02 19:00:00
\n",
"
22839
\n",
"
\n",
"
\n",
"
5991
\n",
"
2014-11-02 19:30:00
\n",
"
21772
\n",
"
\n",
"
\n",
"
5992
\n",
"
2014-11-02 20:00:00
\n",
"
20994
\n",
"
\n",
"
\n",
"
5993
\n",
"
2014-11-02 20:30:00
\n",
"
19774
\n",
"
\n",
"
\n",
"
5994
\n",
"
2014-11-02 21:00:00
\n",
"
18398
\n",
"
\n",
"
\n",
"
5995
\n",
"
2014-11-02 21:30:00
\n",
"
17764
\n",
"
\n",
"
\n",
"
5996
\n",
"
2014-11-02 22:00:00
\n",
"
17334
\n",
"
\n",
"
\n",
"
5997
\n",
"
2014-11-02 22:30:00
\n",
"
15431
\n",
"
\n",
"
\n",
"
5998
\n",
"
2014-11-02 23:00:00
\n",
"
12958
\n",
"
\n",
"
\n",
"
5999
\n",
"
2014-11-02 23:30:00
\n",
"
10224
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" timestamp value\n",
"5952 2014-11-02 00:00:00 25110\n",
"5953 2014-11-02 00:30:00 23109\n",
"5954 2014-11-02 01:00:00 39197\n",
"5955 2014-11-02 01:30:00 35212\n",
"5956 2014-11-02 02:00:00 13259\n",
"5957 2014-11-02 02:30:00 12250\n",
"5958 2014-11-02 03:00:00 10013\n",
"5959 2014-11-02 03:30:00 7898\n",
"5960 2014-11-02 04:00:00 6375\n",
"5961 2014-11-02 04:30:00 4532\n",
"5962 2014-11-02 05:00:00 5116\n",
"5963 2014-11-02 05:30:00 5232\n",
"5964 2014-11-02 06:00:00 4542\n",
"5965 2014-11-02 06:30:00 5298\n",
"5966 2014-11-02 07:00:00 5155\n",
"5967 2014-11-02 07:30:00 6029\n",
"5968 2014-11-02 08:00:00 6280\n",
"5969 2014-11-02 08:30:00 8771\n",
"5970 2014-11-02 09:00:00 10151\n",
"5971 2014-11-02 09:30:00 12501\n",
"5972 2014-11-02 10:00:00 13990\n",
"5973 2014-11-02 10:30:00 16534\n",
"5974 2014-11-02 11:00:00 17133\n",
"5975 2014-11-02 11:30:00 18775\n",
"5976 2014-11-02 12:00:00 18985\n",
"5977 2014-11-02 12:30:00 19911\n",
"5978 2014-11-02 13:00:00 19123\n",
"5979 2014-11-02 13:30:00 19524\n",
"5980 2014-11-02 14:00:00 19640\n",
"5981 2014-11-02 14:30:00 18364\n",
"5982 2014-11-02 15:00:00 17940\n",
"5983 2014-11-02 15:30:00 17949\n",
"5984 2014-11-02 16:00:00 17288\n",
"5985 2014-11-02 16:30:00 16326\n",
"5986 2014-11-02 17:00:00 17522\n",
"5987 2014-11-02 17:30:00 19243\n",
"5988 2014-11-02 18:00:00 20291\n",
"5989 2014-11-02 18:30:00 21649\n",
"5990 2014-11-02 19:00:00 22839\n",
"5991 2014-11-02 19:30:00 21772\n",
"5992 2014-11-02 20:00:00 20994\n",
"5993 2014-11-02 20:30:00 19774\n",
"5994 2014-11-02 21:00:00 18398\n",
"5995 2014-11-02 21:30:00 17764\n",
"5996 2014-11-02 22:00:00 17334\n",
"5997 2014-11-02 22:30:00 15431\n",
"5998 2014-11-02 23:00:00 12958\n",
"5999 2014-11-02 23:30:00 10224"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"taxi_data[5952:6000]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Training\n",
"\n",
"***\n",
"\n",
"Next, we configure a SageMaker training job to train the Random Cut Forest (RCF) algorithm on the taxi cab data."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Hyperparameters\n",
"\n",
"Particular to a SageMaker RCF training job are the following hyperparameters:\n",
"\n",
"* **`num_samples_per_tree`** - the number randomly sampled data points sent to each tree. As a general rule, `1/num_samples_per_tree` should approximate the the estimated ratio of anomalies to normal points in the dataset.\n",
"* **`num_trees`** - the number of trees to create in the forest. Each tree learns a separate model from different samples of data. The full forest model uses the mean predicted anomaly score from each constituent tree.\n",
"* **`feature_dim`** - the dimension of each data point.\n",
"\n",
"In addition to these RCF model hyperparameters, we provide additional parameters defining things like the EC2 instance type on which training will run, the S3 bucket containing the data, and the AWS access role. Note that,\n",
"\n",
"* Recommended instance type: `ml.m4`, `ml.c4`, or `ml.c5`\n",
"* Current limitations:\n",
" * The RCF algorithm does not take advantage of GPU hardware."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Defaulting to the only supported framework/algorithm version: 1. Ignoring framework/algorithm version: 1.\n",
"Defaulting to the only supported framework/algorithm version: 1. Ignoring framework/algorithm version: 1.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"2021-09-03 15:41:29 Starting - Starting the training job...ProfilerReport-1630683689: InProgress\n",
"...\n",
"2021-09-03 15:42:27 Starting - Launching requested ML instances......\n",
"2021-09-03 15:43:29 Starting - Preparing the instances for training............\n",
"2021-09-03 15:45:30 Downloading - Downloading input data...\n",
"2021-09-03 15:45:54 Training - Downloading the training image...\n",
"2021-09-03 15:46:30 Uploading - Uploading generated training model\u001b[34mDocker entrypoint called with argument(s): train\u001b[0m\n",
"\u001b[34mRunning default environment configuration script\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Reading default configuration from /opt/amazon/lib/python3.7/site-packages/algorithm/resources/default-conf.json: {'num_samples_per_tree': 256, 'num_trees': 100, 'force_dense': 'true', 'eval_metrics': ['accuracy', 'precision_recall_fscore'], 'epochs': 1, 'mini_batch_size': 1000, '_log_level': 'info', '_kvstore': 'dist_async', '_num_kv_servers': 'auto', '_num_gpus': 'auto', '_tuning_objective_metric': '', '_ftp_port': 8999}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Merging with provided configuration from /opt/ml/input/config/hyperparameters.json: {'num_trees': '50', 'num_samples_per_tree': '512', 'feature_dim': '1', 'mini_batch_size': '1000'}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Final configuration: {'num_samples_per_tree': '512', 'num_trees': '50', 'force_dense': 'true', 'eval_metrics': ['accuracy', 'precision_recall_fscore'], 'epochs': 1, 'mini_batch_size': '1000', '_log_level': 'info', '_kvstore': 'dist_async', '_num_kv_servers': 'auto', '_num_gpus': 'auto', '_tuning_objective_metric': '', '_ftp_port': 8999, 'feature_dim': '1'}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 WARNING 140518723704640] Loggers have already been setup.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Launching parameter server for role scheduler\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] {'ENVROOT': '/opt/amazon', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION': 'cpp', 'HOSTNAME': 'ip-10-2-232-234.ec2.internal', 'TRAINING_JOB_NAME': 'randomcutforest-2021-09-03-15-41-29-072', 'NVIDIA_REQUIRE_CUDA': 'cuda>=9.0', 'TRAINING_JOB_ARN': 'arn:aws:sagemaker:us-east-1:845897987212:training-job/randomcutforest-2021-09-03-15-41-29-072', 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI': '/v2/credentials/3a9de4cc-b7da-4154-b32f-625999c2fe7d', 'CANONICAL_ENVROOT': '/opt/amazon', 'PYTHONUNBUFFERED': 'TRUE', 'NVIDIA_VISIBLE_DEVICES': 'void', 'LD_LIBRARY_PATH': '/opt/amazon/lib/python3.7/site-packages/cv2/../../../../lib:/usr/local/nvidia/lib64:/opt/amazon/lib', 'MXNET_KVSTORE_BIGARRAY_BOUND': '400000000', 'NVIDIA_DRIVER_CAPABILITIES': 'compute,utility', 'AWS_EXECUTION_ENV': 'AWS_ECS_EC2', 'PATH': '/opt/amazon/bin:/usr/local/nvidia/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/amazon/bin:/opt/amazon/bin', 'PWD': '/', 'LANG': 'en_US.utf8', 'AWS_REGION': 'us-east-1', 'SAGEMAKER_METRICS_DIRECTORY': '/opt/ml/output/metrics/sagemaker', 'HOME': '/root', 'SHLVL': '1', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION': '2', 'OMP_NUM_THREADS': '2', 'DMLC_INTERFACE': 'eth0', 'ECS_CONTAINER_METADATA_URI': 'http://169.254.170.2/v3/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'ECS_CONTAINER_METADATA_URI_V4': 'http://169.254.170.2/v4/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'SAGEMAKER_HTTP_PORT': '8080', 'SAGEMAKER_DATA_PATH': '/opt/ml', 'KMP_DUPLICATE_LIB_OK': 'True', 'KMP_INIT_AT_FORK': 'FALSE'}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] envs={'ENVROOT': '/opt/amazon', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION': 'cpp', 'HOSTNAME': 'ip-10-2-232-234.ec2.internal', 'TRAINING_JOB_NAME': 'randomcutforest-2021-09-03-15-41-29-072', 'NVIDIA_REQUIRE_CUDA': 'cuda>=9.0', 'TRAINING_JOB_ARN': 'arn:aws:sagemaker:us-east-1:845897987212:training-job/randomcutforest-2021-09-03-15-41-29-072', 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI': '/v2/credentials/3a9de4cc-b7da-4154-b32f-625999c2fe7d', 'CANONICAL_ENVROOT': '/opt/amazon', 'PYTHONUNBUFFERED': 'TRUE', 'NVIDIA_VISIBLE_DEVICES': 'void', 'LD_LIBRARY_PATH': '/opt/amazon/lib/python3.7/site-packages/cv2/../../../../lib:/usr/local/nvidia/lib64:/opt/amazon/lib', 'MXNET_KVSTORE_BIGARRAY_BOUND': '400000000', 'NVIDIA_DRIVER_CAPABILITIES': 'compute,utility', 'AWS_EXECUTION_ENV': 'AWS_ECS_EC2', 'PATH': '/opt/amazon/bin:/usr/local/nvidia/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/amazon/bin:/opt/amazon/bin', 'PWD': '/', 'LANG': 'en_US.utf8', 'AWS_REGION': 'us-east-1', 'SAGEMAKER_METRICS_DIRECTORY': '/opt/ml/output/metrics/sagemaker', 'HOME': '/root', 'SHLVL': '1', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION': '2', 'OMP_NUM_THREADS': '2', 'DMLC_INTERFACE': 'eth0', 'ECS_CONTAINER_METADATA_URI': 'http://169.254.170.2/v3/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'ECS_CONTAINER_METADATA_URI_V4': 'http://169.254.170.2/v4/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'SAGEMAKER_HTTP_PORT': '8080', 'SAGEMAKER_DATA_PATH': '/opt/ml', 'KMP_DUPLICATE_LIB_OK': 'True', 'KMP_INIT_AT_FORK': 'FALSE', 'DMLC_ROLE': 'scheduler', 'DMLC_PS_ROOT_URI': '10.2.232.234', 'DMLC_PS_ROOT_PORT': '9000', 'DMLC_NUM_SERVER': '1', 'DMLC_NUM_WORKER': '1'}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Launching parameter server for role server\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] {'ENVROOT': '/opt/amazon', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION': 'cpp', 'HOSTNAME': 'ip-10-2-232-234.ec2.internal', 'TRAINING_JOB_NAME': 'randomcutforest-2021-09-03-15-41-29-072', 'NVIDIA_REQUIRE_CUDA': 'cuda>=9.0', 'TRAINING_JOB_ARN': 'arn:aws:sagemaker:us-east-1:845897987212:training-job/randomcutforest-2021-09-03-15-41-29-072', 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI': '/v2/credentials/3a9de4cc-b7da-4154-b32f-625999c2fe7d', 'CANONICAL_ENVROOT': '/opt/amazon', 'PYTHONUNBUFFERED': 'TRUE', 'NVIDIA_VISIBLE_DEVICES': 'void', 'LD_LIBRARY_PATH': '/opt/amazon/lib/python3.7/site-packages/cv2/../../../../lib:/usr/local/nvidia/lib64:/opt/amazon/lib', 'MXNET_KVSTORE_BIGARRAY_BOUND': '400000000', 'NVIDIA_DRIVER_CAPABILITIES': 'compute,utility', 'AWS_EXECUTION_ENV': 'AWS_ECS_EC2', 'PATH': '/opt/amazon/bin:/usr/local/nvidia/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/amazon/bin:/opt/amazon/bin', 'PWD': '/', 'LANG': 'en_US.utf8', 'AWS_REGION': 'us-east-1', 'SAGEMAKER_METRICS_DIRECTORY': '/opt/ml/output/metrics/sagemaker', 'HOME': '/root', 'SHLVL': '1', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION': '2', 'OMP_NUM_THREADS': '2', 'DMLC_INTERFACE': 'eth0', 'ECS_CONTAINER_METADATA_URI': 'http://169.254.170.2/v3/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'ECS_CONTAINER_METADATA_URI_V4': 'http://169.254.170.2/v4/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'SAGEMAKER_HTTP_PORT': '8080', 'SAGEMAKER_DATA_PATH': '/opt/ml', 'KMP_DUPLICATE_LIB_OK': 'True', 'KMP_INIT_AT_FORK': 'FALSE'}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] envs={'ENVROOT': '/opt/amazon', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION': 'cpp', 'HOSTNAME': 'ip-10-2-232-234.ec2.internal', 'TRAINING_JOB_NAME': 'randomcutforest-2021-09-03-15-41-29-072', 'NVIDIA_REQUIRE_CUDA': 'cuda>=9.0', 'TRAINING_JOB_ARN': 'arn:aws:sagemaker:us-east-1:845897987212:training-job/randomcutforest-2021-09-03-15-41-29-072', 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI': '/v2/credentials/3a9de4cc-b7da-4154-b32f-625999c2fe7d', 'CANONICAL_ENVROOT': '/opt/amazon', 'PYTHONUNBUFFERED': 'TRUE', 'NVIDIA_VISIBLE_DEVICES': 'void', 'LD_LIBRARY_PATH': '/opt/amazon/lib/python3.7/site-packages/cv2/../../../../lib:/usr/local/nvidia/lib64:/opt/amazon/lib', 'MXNET_KVSTORE_BIGARRAY_BOUND': '400000000', 'NVIDIA_DRIVER_CAPABILITIES': 'compute,utility', 'AWS_EXECUTION_ENV': 'AWS_ECS_EC2', 'PATH': '/opt/amazon/bin:/usr/local/nvidia/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/amazon/bin:/opt/amazon/bin', 'PWD': '/', 'LANG': 'en_US.utf8', 'AWS_REGION': 'us-east-1', 'SAGEMAKER_METRICS_DIRECTORY': '/opt/ml/output/metrics/sagemaker', 'HOME': '/root', 'SHLVL': '1', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION': '2', 'OMP_NUM_THREADS': '2', 'DMLC_INTERFACE': 'eth0', 'ECS_CONTAINER_METADATA_URI': 'http://169.254.170.2/v3/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'ECS_CONTAINER_METADATA_URI_V4': 'http://169.254.170.2/v4/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'SAGEMAKER_HTTP_PORT': '8080', 'SAGEMAKER_DATA_PATH': '/opt/ml', 'KMP_DUPLICATE_LIB_OK': 'True', 'KMP_INIT_AT_FORK': 'FALSE', 'DMLC_ROLE': 'server', 'DMLC_PS_ROOT_URI': '10.2.232.234', 'DMLC_PS_ROOT_PORT': '9000', 'DMLC_NUM_SERVER': '1', 'DMLC_NUM_WORKER': '1'}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Environment: {'ENVROOT': '/opt/amazon', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION': 'cpp', 'HOSTNAME': 'ip-10-2-232-234.ec2.internal', 'TRAINING_JOB_NAME': 'randomcutforest-2021-09-03-15-41-29-072', 'NVIDIA_REQUIRE_CUDA': 'cuda>=9.0', 'TRAINING_JOB_ARN': 'arn:aws:sagemaker:us-east-1:845897987212:training-job/randomcutforest-2021-09-03-15-41-29-072', 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI': '/v2/credentials/3a9de4cc-b7da-4154-b32f-625999c2fe7d', 'CANONICAL_ENVROOT': '/opt/amazon', 'PYTHONUNBUFFERED': 'TRUE', 'NVIDIA_VISIBLE_DEVICES': 'void', 'LD_LIBRARY_PATH': '/opt/amazon/lib/python3.7/site-packages/cv2/../../../../lib:/usr/local/nvidia/lib64:/opt/amazon/lib', 'MXNET_KVSTORE_BIGARRAY_BOUND': '400000000', 'NVIDIA_DRIVER_CAPABILITIES': 'compute,utility', 'AWS_EXECUTION_ENV': 'AWS_ECS_EC2', 'PATH': '/opt/amazon/bin:/usr/local/nvidia/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/amazon/bin:/opt/amazon/bin', 'PWD': '/', 'LANG': 'en_US.utf8', 'AWS_REGION': 'us-east-1', 'SAGEMAKER_METRICS_DIRECTORY': '/opt/ml/output/metrics/sagemaker', 'HOME': '/root', 'SHLVL': '1', 'PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION': '2', 'OMP_NUM_THREADS': '2', 'DMLC_INTERFACE': 'eth0', 'ECS_CONTAINER_METADATA_URI': 'http://169.254.170.2/v3/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'ECS_CONTAINER_METADATA_URI_V4': 'http://169.254.170.2/v4/e2b93386-53a1-46ec-8f1f-419bf568a86c', 'SAGEMAKER_HTTP_PORT': '8080', 'SAGEMAKER_DATA_PATH': '/opt/ml', 'KMP_DUPLICATE_LIB_OK': 'True', 'KMP_INIT_AT_FORK': 'FALSE', 'DMLC_ROLE': 'worker', 'DMLC_PS_ROOT_URI': '10.2.232.234', 'DMLC_PS_ROOT_PORT': '9000', 'DMLC_NUM_SERVER': '1', 'DMLC_NUM_WORKER': '1'}\u001b[0m\n",
"\u001b[34mProcess 33 is a shell:scheduler.\u001b[0m\n",
"\u001b[34mProcess 44 is a shell:server.\u001b[0m\n",
"\u001b[34mProcess 1 is a worker.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Using default worker.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Loaded iterator creator application/x-recordio-protobuf for content type ('application/x-recordio-protobuf', '1.0')\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Checkpoint loading and saving are disabled.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Verifying hyperparamemters...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Hyperparameters are correct.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Validating that feature_dim agrees with dimensions in training data...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] feature_dim is correct.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Validating memory limits...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Available memory in bytes: 15184003072\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Estimated sample size in bytes: 204800\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Estimated memory needed to build the forest in bytes: 1024000\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Memory limits validated.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Starting cluster sharing facilities...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140517211883264] >>> starting FTP server on 0.0.0.0:8999, pid=1 <<<\u001b[0m\n",
"\u001b[34m[I 21-09-03 15:46:21] >>> starting FTP server on 0.0.0.0:8999, pid=1 <<<\u001b[0m\n",
"\u001b[34m[I 21-09-03 15:46:21] poller: \u001b[0m\n",
"\u001b[34m[I 21-09-03 15:46:21] masquerade (NAT) address: None\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140517211883264] poller: \u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140517211883264] masquerade (NAT) address: None\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140517211883264] passive ports: None\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140517211883264] use sendfile(2): True\u001b[0m\n",
"\u001b[34m[I 21-09-03 15:46:21] passive ports: None\u001b[0m\n",
"\u001b[34m[I 21-09-03 15:46:21] use sendfile(2): True\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:21 INFO 140518723704640] Create Store: dist_async\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Cluster sharing facilities started.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Verifying all workers are accessible...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] All workers accessible.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Initializing Sampler...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Sampler correctly initialized.\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683981.8909588, \"EndTime\": 1630683983.213549, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\"}, \"Metrics\": {\"initialize.time\": {\"sum\": 1316.580057144165, \"count\": 1, \"min\": 1316.580057144165, \"max\": 1316.580057144165}}}\n",
"\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683983.2137547, \"EndTime\": 1630683983.21381, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\", \"Meta\": \"init_train_data_iter\"}, \"Metrics\": {\"Total Records Seen\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}, \"Total Batches Seen\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}, \"Max Records Seen Between Resets\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}, \"Max Batches Seen Between Resets\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}, \"Reset Count\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}, \"Number of Records Since Last Reset\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}, \"Number of Batches Since Last Reset\": {\"sum\": 0.0, \"count\": 1, \"min\": 0, \"max\": 0}}}\n",
"\u001b[0m\n",
"\u001b[34m[2021-09-03 15:46:23.214] [tensorio] [info] epoch_stats={\"data_pipeline\": \"/opt/ml/input/data/train\", \"epoch\": 0, \"duration\": 1322, \"num_examples\": 1, \"num_bytes\": 28000}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Sampling training data...\u001b[0m\n",
"\u001b[34m[2021-09-03 15:46:23.244] [tensorio] [info] epoch_stats={\"data_pipeline\": \"/opt/ml/input/data/train\", \"epoch\": 1, \"duration\": 29, \"num_examples\": 11, \"num_bytes\": 288960}\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Sampling training data completed.\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683983.2136898, \"EndTime\": 1630683983.2479045, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\"}, \"Metrics\": {\"epochs\": {\"sum\": 1.0, \"count\": 1, \"min\": 1, \"max\": 1}, \"update.time\": {\"sum\": 33.71024131774902, \"count\": 1, \"min\": 33.71024131774902, \"max\": 33.71024131774902}}}\n",
"\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Early stop condition met. Stopping training.\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] #progress_metric: host=algo-1, completed 100 % epochs\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683983.2141645, \"EndTime\": 1630683983.248269, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\", \"epoch\": 0, \"Meta\": \"training_data_iter\"}, \"Metrics\": {\"Total Records Seen\": {\"sum\": 10320.0, \"count\": 1, \"min\": 10320, \"max\": 10320}, \"Total Batches Seen\": {\"sum\": 11.0, \"count\": 1, \"min\": 11, \"max\": 11}, \"Max Records Seen Between Resets\": {\"sum\": 10320.0, \"count\": 1, \"min\": 10320, \"max\": 10320}, \"Max Batches Seen Between Resets\": {\"sum\": 11.0, \"count\": 1, \"min\": 11, \"max\": 11}, \"Reset Count\": {\"sum\": 1.0, \"count\": 1, \"min\": 1, \"max\": 1}, \"Number of Records Since Last Reset\": {\"sum\": 10320.0, \"count\": 1, \"min\": 10320, \"max\": 10320}, \"Number of Batches Since Last Reset\": {\"sum\": 11.0, \"count\": 1, \"min\": 11, \"max\": 11}}}\n",
"\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] #throughput_metric: host=algo-1, train throughput=301332.5625496011 records/second\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Master node: building Random Cut Forest...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Gathering samples...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] 10320 samples gathered\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Building Random Cut Forest...\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Random Cut Forest built: \n",
"\u001b[0m\n",
"\u001b[34mForestInfo{num_trees: 50, num_samples_in_forest: 10300, num_samples_per_tree: 206, sample_dim: 1, shingle_size: 1, trees_num_nodes: [405, 403, 409, 409, 411, 409, 407, 409, 407, 411, 409, 411, 411, 407, 405, 409, 407, 409, 409, 409, 411, 411, 401, 409, 409, 411, 407, 411, 411, 401, 411, 405, 411, 411, 409, 409, 411, 405, 409, 407, 409, 411, 411, 407, 409, 411, 407, 407, 411, 409, ], trees_depth: [16, 21, 22, 16, 14, 18, 17, 17, 19, 16, 17, 18, 18, 16, 17, 17, 20, 16, 19, 17, 21, 15, 15, 17, 15, 18, 15, 18, 18, 22, 18, 13, 17, 15, 18, 17, 18, 15, 18, 14, 18, 20, 20, 15, 20, 18, 14, 16, 15, 18, ], max_num_nodes: 411, min_num_nodes: 401, avg_num_nodes: 408, max_tree_depth: 22, min_tree_depth: 13, avg_tree_depth: 17, mem_size: 2124960}\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683983.2479992, \"EndTime\": 1630683983.2633133, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\"}, \"Metrics\": {\"fit_model.time\": {\"sum\": 7.804393768310547, \"count\": 1, \"min\": 7.804393768310547, \"max\": 7.804393768310547}, \"model.bytes\": {\"sum\": 2124960.0, \"count\": 1, \"min\": 2124960, \"max\": 2124960}, \"finalize.time\": {\"sum\": 14.678478240966797, \"count\": 1, \"min\": 14.678478240966797, \"max\": 14.678478240966797}}}\n",
"\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Master node: Serializing the RandomCutForest model\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683983.263396, \"EndTime\": 1630683983.2957816, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\"}, \"Metrics\": {\"serialize_model.time\": {\"sum\": 32.332420349121094, \"count\": 1, \"min\": 32.332420349121094, \"max\": 32.332420349121094}}}\n",
"\u001b[0m\n",
"\u001b[34m[09/03/2021 15:46:23 INFO 140518723704640] Test data is not provided.\u001b[0m\n",
"\u001b[34m#metrics {\"StartTime\": 1630683983.295877, \"EndTime\": 1630683983.296018, \"Dimensions\": {\"Algorithm\": \"RandomCutForest\", \"Host\": \"algo-1\", \"Operation\": \"training\"}, \"Metrics\": {\"setuptime\": {\"sum\": 27.47488021850586, \"count\": 1, \"min\": 27.47488021850586, \"max\": 27.47488021850586}, \"totaltime\": {\"sum\": 1443.469762802124, \"count\": 1, \"min\": 1443.469762802124, \"max\": 1443.469762802124}}}\n",
"\u001b[0m\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"2021-09-03 15:46:50 Completed - Training job completed\n",
"Training seconds: 67\n",
"Billable seconds: 67\n"
]
}
],
"source": [
"from sagemaker import RandomCutForest\n",
"\n",
"session = sagemaker.Session()\n",
"\n",
"# specify general training job information\n",
"rcf = RandomCutForest(\n",
" role=execution_role,\n",
" instance_count=1,\n",
" instance_type=\"ml.m4.xlarge\",\n",
" data_location=f\"s3://{bucket}/{prefix}/\",\n",
" output_path=f\"s3://{bucket}/{prefix}/output\",\n",
" num_samples_per_tree=512,\n",
" num_trees=50,\n",
")\n",
"\n",
"# automatically upload the training data to S3 and run the training job\n",
"rcf.fit(rcf.record_set(taxi_data.value.to_numpy().reshape(-1, 1)))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If you see the message\n",
"\n",
"> `===== Job Complete =====`\n",
"\n",
"at the bottom of the output logs then that means training successfully completed and the output RCF model was stored in the specified output path. You can also view information about and the status of a training job using the AWS SageMaker console. Just click on the \"Jobs\" tab and select training job matching the training job name, below:"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Training job name: randomcutforest-2021-09-03-15-41-29-072\n"
]
}
],
"source": [
"print(f\"Training job name: {rcf.latest_training_job.job_name}\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Inference\n",
"\n",
"***\n",
"\n",
"A trained Random Cut Forest model does nothing on its own. We now want to use the model we computed to perform inference on data. In this case, it means computing anomaly scores from input time series data points.\n",
"\n",
"We create an inference endpoint using the SageMaker Python SDK `deploy()` function from the job we defined above. We specify the instance type where inference is computed as well as an initial number of instances to spin up. We recommend using the `ml.c5` instance type as it provides the fastest inference time at the lowest cost."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Defaulting to the only supported framework/algorithm version: 1. Ignoring framework/algorithm version: 1.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"---------!"
]
}
],
"source": [
"rcf_inference = rcf.deploy(initial_instance_count=1, instance_type=\"ml.m4.xlarge\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Congratulations! You now have a functioning SageMaker RCF inference endpoint. You can confirm the endpoint configuration and status by navigating to the \"Endpoints\" tab in the AWS SageMaker console and selecting the endpoint matching the endpoint name, below: "
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"The endpoint attribute has been renamed in sagemaker>=2.\n",
"See: https://sagemaker.readthedocs.io/en/stable/v2.html for details.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Endpoint name: randomcutforest-2021-09-03-15-47-12-234\n"
]
}
],
"source": [
"print(f\"Endpoint name: {rcf_inference.endpoint}\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Data Serialization/Deserialization\n",
"\n",
"We can pass data in a variety of formats to our inference endpoint. In this example we will demonstrate passing CSV-formatted data. Other available formats are JSON-formatted and RecordIO Protobuf. We make use of the SageMaker Python SDK utilities `csv_serializer` and `json_deserializer` when configuring the inference endpoint."
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"from sagemaker.serializers import CSVSerializer\n",
"from sagemaker.deserializers import JSONDeserializer\n",
"\n",
"rcf_inference.serializer = CSVSerializer()\n",
"rcf_inference.deserializer = JSONDeserializer()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's pass the training dataset, in CSV format, to the inference endpoint so we can automatically detect the anomalies we saw with our eyes in the plots, above. Note that the serializer and deserializer will automatically take care of the datatype conversion from Numpy NDArrays.\n",
"\n",
"For starters, let's only pass in the first six datapoints so we can see what the output looks like."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[[10844]\n",
" [ 8127]\n",
" [ 6210]\n",
" [ 4656]\n",
" [ 3820]\n",
" [ 2873]]\n"
]
}
],
"source": [
"taxi_data_numpy = taxi_data.value.to_numpy().reshape(-1, 1)\n",
"print(taxi_data_numpy[:6])\n",
"results = rcf_inference.predict(\n",
" taxi_data_numpy[:6], initial_args={\"ContentType\": \"text/csv\", \"Accept\": \"application/json\"}\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Computing Anomaly Scores\n",
"\n",
"Now, let's compute and plot the anomaly scores from the entire taxi dataset."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig, ax1 = plt.subplots()\n",
"ax2 = ax1.twinx()\n",
"\n",
"#\n",
"# *Try this out* - change `start` and `end` to zoom in on the\n",
"# anomaly found earlier in this notebook\n",
"#\n",
"start, end = 0, len(taxi_data)\n",
"# start, end = 5500, 6500\n",
"taxi_data_subset = taxi_data[start:end]\n",
"\n",
"ax1.plot(taxi_data_subset[\"value\"], color=\"C0\", alpha=0.8)\n",
"ax2.plot(taxi_data_subset[\"score\"], color=\"C1\")\n",
"\n",
"ax1.grid(which=\"major\", axis=\"both\")\n",
"\n",
"ax1.set_ylabel(\"Taxi Ridership\", color=\"C0\")\n",
"ax2.set_ylabel(\"Anomaly Score\", color=\"C1\")\n",
"\n",
"ax1.tick_params(\"y\", colors=\"C0\")\n",
"ax2.tick_params(\"y\", colors=\"C1\")\n",
"\n",
"ax1.set_ylim(0, 40000)\n",
"ax2.set_ylim(min(scores), 1.4 * max(scores))\n",
"fig.set_figwidth(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that the anomaly score spikes where our eyeball-norm method suggests there is an anomalous data point as well as in some places where our eyeballs are not as accurate.\n",
"\n",
"Below we print and plot any data points with scores greater than 3 standard deviations (approx 99.9th percentile) from the mean score."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
timestamp
\n",
"
value
\n",
"
score
\n",
"
\n",
" \n",
" \n",
"
\n",
"
37
\n",
"
2014-07-01 18:30:00
\n",
"
27598
\n",
"
2.111130
\n",
"
\n",
"
\n",
"
38
\n",
"
2014-07-01 19:00:00
\n",
"
26827
\n",
"
1.740207
\n",
"
\n",
"
\n",
"
87
\n",
"
2014-07-02 19:30:00
\n",
"
26872
\n",
"
1.750501
\n",
"
\n",
"
\n",
"
134
\n",
"
2014-07-03 19:00:00
\n",
"
29985
\n",
"
3.113783
\n",
"
\n",
"
\n",
"
527
\n",
"
2014-07-11 23:30:00
\n",
"
26873
\n",
"
1.755937
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
10309
\n",
"
2015-01-31 18:30:00
\n",
"
27286
\n",
"
1.959775
\n",
"
\n",
"
\n",
"
10310
\n",
"
2015-01-31 19:00:00
\n",
"
28804
\n",
"
2.689794
\n",
"
\n",
"
\n",
"
10311
\n",
"
2015-01-31 19:30:00
\n",
"
27773
\n",
"
2.226761
\n",
"
\n",
"
\n",
"
10317
\n",
"
2015-01-31 22:30:00
\n",
"
27309
\n",
"
1.965813
\n",
"
\n",
"
\n",
"
10318
\n",
"
2015-01-31 23:00:00
\n",
"
26591
\n",
"
1.655542
\n",
"
\n",
" \n",
"
\n",
"
236 rows × 3 columns
\n",
"
"
],
"text/plain": [
" timestamp value score\n",
"37 2014-07-01 18:30:00 27598 2.111130\n",
"38 2014-07-01 19:00:00 26827 1.740207\n",
"87 2014-07-02 19:30:00 26872 1.750501\n",
"134 2014-07-03 19:00:00 29985 3.113783\n",
"527 2014-07-11 23:30:00 26873 1.755937\n",
"... ... ... ...\n",
"10309 2015-01-31 18:30:00 27286 1.959775\n",
"10310 2015-01-31 19:00:00 28804 2.689794\n",
"10311 2015-01-31 19:30:00 27773 2.226761\n",
"10317 2015-01-31 22:30:00 27309 1.965813\n",
"10318 2015-01-31 23:00:00 26591 1.655542\n",
"\n",
"[236 rows x 3 columns]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"score_mean = taxi_data[\"score\"].mean()\n",
"score_std = taxi_data[\"score\"].std()\n",
"score_cutoff = score_mean + 3 * score_std\n",
"\n",
"anomalies = taxi_data_subset[taxi_data_subset[\"score\"] > score_cutoff]\n",
"anomalies"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The following is a list of known anomalous events which occurred in New York City within this timeframe:\n",
"\n",
"* `2014-11-02` - NYC Marathon\n",
"* `2015-01-01` - New Year's Eve\n",
"* `2015-01-27` - Snowstorm\n",
"\n",
"Note that our algorithm managed to capture these events along with quite a few others. Below we add these anomalies to the score plot."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAA4oAAAFfCAYAAAAI4TJNAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOydd5wcxZX4v7OzqyyNcgABQ84gkDEYsMEmmGMcfk53+Gyf7eN8Z9/Z52wPxnceR8YBzmAbG2MMNjZgbDBpRJCEEEE5oJylUVxptZJ2dlcbZ6Z/f/TMTnVPV29NT/cGqb6fj2C2u/pVdXV1db16r16FDMNAo9FoNBqNRqPRaDSaIjX9XQCNRqPRaDQajUaj0QwstKKo0Wg0Go1Go9FoNBoLWlHUaDQajUaj0Wg0Go0FrShqNBqNRqPRaDQajcaCVhQ1Go1Go9FoNBqNRmNBK4oajUaj0Wg0Go1Go7GgFUWNRqPRaDQajUaj0VjQiqJGo9FoNBqNRqPRaCxoRVGj0Wg0Go1Go9FoNBa0oqjRaDQajUaj0Wg0Ggu1/V2AItF46jbgR8Dd6WTsS4VjIeA7wL8D44DFwH+lk7F1wnVDgZ8BHwWGA3OB/0wnY3uENOOAe4D3FQ49A3whnYw1CWlOBn4FvAtoBx4BvpZOxroCuF2NRqPRaDQajUajGbAMCItiNJ66DFMZXG079Q3gK8DngcuA/cDsaDw1Wkjzc+ADwC3A1cAo4LloPBUW0jwCzABuKvybATws5B8GUsDIgoxbgA8Bd/pwexqNRqPRaDQajUYzqOh3RTEaT40C/gx8BjgiHA8BXwJ+mE7GnkwnY2uBTwIjgH8upIkAtwJfTSdjc9LJ2Erg48CFwPWFNOdiKof/lk7GFqaTsYWFvN4TjafOLmR3I3Ae8PF0MrYynYzNAb4KfCYaT40JtAI0Go1Go9FoNBqNZoAxEFxPfwWk0snYnGg89W3h+KnAVOCl4oF0MtYZjafmA1cC9wEzgTpbmn3ReGptIc2LwNuATDoZWyykWRSNpzKFNJsKadamk7F9Qv4vAkMLecxzKnjB7XVo8e/2XatpfPrH5+bbMnuc0ms0Go1Go9FoNJrjiinASsMwjP4uSKX0q6IYjaduAS7FdCu1M7Xw/wO24weAU4Q0Xelk7IhDmqlCmgYH+Q22NJZ80snYkWg81SWkceI2zDWUAIRqh5Fvy7gk12g0Go1Go9FoNMcZM4EV/V2ISuk3RTEaT50E3A3cmE7GOlyS2rXvkMMxO/Y0Tum9pLFzB3BX8Y/M63+eBmxcsGAB06ZN66WIwdLd3c2rr77KO97xDurq6vq1LJqBh24fmt7QbUTTG7qNaNzQ7UPTG8dDG6mvr+fKK6+EcsPXoKA/LYozgcnA8mg8VTwWBt4Rjac+DxTXD04F6oXrJlOq7P3AkGg8Nc5mVZwMLBDSTHHIf5JNzuXiyUKk1DpcHmw6GesEOot/h378ntEAJ510EtOnT5dd1id0d3ezfv16otHoMfvyabyj24emN3Qb0fSGbiMaN3T70PTG8dBGamsHwio/7/RnMJu5mEFnZgj/lmEGtpkBbMdU4G4oXhCNp4YA11BSApcD3bY004ALhDQLgUg0nnqrkOZyIGJLc0Hh2iI3YiqBy6u7TY1Go9FoNBqNRqMZXPSbmptOxlqAteKxaDx1FDhUiHBKNJ76OfCtaDy1BdgCfAtow9zugnQylonGUw8Ad0bjqUPAYcw9FdcAcwppNkTjqReA+6Px1H8Usvot8Fw6GdtU+PslYD3wcDSe+jowviDn/nQy1hzE/Ws0Go1Go9FoNBrNQKXft8fohZ9g7pN4L6a18UTMNY0tQpovA08BjwNvYCqS700nYzkhzccwlceXCv9WA58oniykjQEdBRmPF2R+zf9b0mg0Go1m8LHtYCu/mreVprau/i6KRqPRaPqAAeU4m07GrrX9bQCJwj/ZNR3AFwr/ZGkOY+6v6Jb3LuA9yoXVaDQajeY44kuPvQnAwZZOEu87v38Lo9FoNJrAGegWRY1Go9FoNAOIXYfb+rsIGo1Go+kDtKKo0Wg0Go1GmUG4Z7RGo9FoPKAVRY1Go9FoNMpoNVGj0WiOD7SiqNFoNBqNRqPRaDQaC1pR1Gg0Go1Go9FoNBqNBa0oajQajUaj0Wg0Go3GglYUNRqNRqPRaDQajUZjQSuKGo1Go9FoNBqNRqOxoBVFjUaj0Wg0yujdMTQajeb4QCuKGo1Go9FolNF6okaj0RwfaEVRo9FoNBqNRqPRaDQWtKKo0Wg0Go1GGUP7nmo0Gs1xgVYUNRqNRqPRaDQajUZjQSuKGo1Go9FoNBqNRqOxUNvfBdBoNBqNRqPRaDSa455E5ETgx8A/AMOBzcCtJDLL+6M4WlHUaDQajUaj0Wg0mv4kERkHvAHMw1QUG4DTgab+KpJWFDUajUaj0Wg0Go2mf/kmsJtE5tPCsXQ/lQXQiqJGo9FoNBqNRqPR9DfvA14kEfkrcA2wF7iXROb+/iqQVhQ1Go1Go9Eoo3fH0Gg0msr48Lm1o0hExgiHOklkOm3JTgM+B9wF/Ah4K3APiUgnicwf+6ioFrSiqNFoNBqNRqPRaDQB8cD7h2+0HfoukLAdqwGWkch8q/D3ShKR8zGVx35RFPX2GBqNRqPRaDQajUYTELc+3X4OEBH+3eGQrB5Ybzu2ATg52NLJ0RZFjUaj0Wg0Go1GowmIv23ItpLINPeS7A3gbNuxs4CdwZSqd7SiqNFoNBqNRhkDvUhRo9FoAuD/gAUkIt8CHsdco/jvhX/9gnY91Wg0Go1Go9FoNJr+JJFZCnwA+CiwFvgf4EskMn/uryJpi6JGo9FoNBpldNRTjUajCYhE5jnguf4uRhFtUdRoNBqNRqOMVhQ1Go3m+EArihqNRqPRaDQajUajsdCvrqfReOpzmHuDRAuH1gHfSydjzxfOPwR80nbZ4nQydoUgYyjwM0x/3uHAXOA/08nYHiHNOOAe4H2FQ88AX0gnY01CmpOBXwHvAtqBR4CvpZOxLh9uVaPRaDQajUaj0WgGDf1tUdwDxIG3FP69DDwdjafOF9K8AEwT/t1sk/FzzIWftwBXA6OA56LxVFhI8wgwA7ip8G8G8HDxZCFtChhZkHEL8CHgzqrvUKPRaDQajUaj0WgGGf1qUUwnY8/aDt1esDJegWldBOhMJ2P7na6PxlMR4FbgE+lkbE7h2MeB3cD1wIvReOpcTOXwinQytriQ5jPAwmg8dXY6GdsE3AicB5yUTsb2FdJ8FXgoGk/dnk7Getv3RKPRaDQajUaj0WiOGQZM1NOCVe8jmFa9hcKpa6PxVAPQBMwHbk8nYw2FczOBOuClYuJ0MrYvGk+tBa4EXgTeBmSKSmIhzaJoPJUppNlUSLO2qCQWeBEYWshjnqTMQwtpABh+xhWj2rcuIpvN0t3dXXkl+Egx//4uh2ZgotuHpjd0G9HYMQpRbAwjT3d3t24jGld0+9D0xvHQRrLZbH8XoSr6XVGMxlMXYiqGw4BW4APpZGx94fTzwF+BncCpwPeBl6Px1Mx0MtYJTAW60snYEZvYA4VzFP7fQDkNtjQHxJPpZOxINJ7qEtI4cRvwneIf42/4LHu3LmLu3LlMnDjR5bK+Y/bs2f1dBM0ARrcPTW/oNqIpksmYKzo6wwazZs3qOa7biMYN3T40vXEst5HGxsb+LkJV9LuiiGnRmwGMxVwX+IdoPHVNOhlbn07G/iKkWxuNp5ZhKo0x4EkXmSFADODtFMzbSxo7dwB3Ff84PPs304CN1113HSeeeKLLZcHT3d3N7NmzueGGG6irq+vXsmgGHrp9aHpDtxGNnft3LgJg1NAwN998mW4jGld0+9D0xvHQRvbu3dvfRaiKflcUC1FFtxb+XBaNpy4Dvgj8h0Pa+mg8tRM4s3BoPzAkGk+Ns1kVJwMLhDRTHLKeRMmKuB+4XDxZiJRah83SaCtPJ9BZ/Dv04/eMBqitrR0wDb6urm7AlEUz8NDtQ9Mbuo1oioRCocL/ayxtQrcRjRu6fWh641huI7W1/a5qVUV/Rz11IoSw7k8kGk9NAE4C6guHlgPdwA1CmmnABZQUxYVAJBpPvVVIczkQsaW5oHBtkRsxlcDlVd6PRqPRaDQajUaj0Qwq+nsfxR9hrkPcDYzG3JbiWuCmaDw1CkgAT2AqhlHgR0Aj8HeAdDKWicZTDwB3RuOpQ8BhzD0V1wBzCmk2ROOpF4D7o/FU0Ur5W+C5QsRTMIPhrAcejsZTXwfGF+TcryOeajQajUaj0Wg0muON/rYoTsHcz3ATMBfT/fOmdDI2G8gBFwJPA5uBPxT+/7Z0MtYiyPgy8BTwOPAG0Aa8N52M5YQ0H8NUHl8q/FsNfKJ4spA2BnQUZDxekPk1P29Wo9FoNBqNRqPRaAYD/b2P4q0u59qBdyvI6AC+UPgnS3MY+HgvcnYB7+ktP41Go9FoNBqNRqM51ulvi6JGo9FoNBqNRqPRaAYYWlHUaDQajUaj0Wg0Go0FrShqNBqNRqPRaDQajcaCVhQ1Go1Go9FoNBqNRmNBK4oajUaj0Wg0Go1Go7GgFUWNRqPRaDQajUaj0VjQiqJGo9FoNBplDIz+LoJGo9Fo+gCtKGo0Go1Go9FoNBqNxoJWFDUajUaj0Wg0Go1GY0ErihqNRqPRaJQJEervImg0Go2mD9CKokaj0Wg0Go1Go9FoLGhFUaPRaDQajTI6mI1Go9EcH2hFUaPRaDQajUaj0Wg0FrSiqNFoNBqNRqPRaDQaC1pR1Gg0Go1Go9FoNBqNBa0oajQajUaj0Wg0Go3GglYUNRqNRqPRaDQajUZjQSuKGo1Go9FoNBqNRqOxoBVFjUaj0Wg0Go1Go9FY0IqiRqPRaDQajUaj0WgsaEVRo9FoNBqNRqPRaDQWtKKo0Wg0Go1GGcPo7xJoNBqNpi/QiqJGo9FoNBqNRqPRaCxoRVGj0Wg0Go0yoVB/l0Cj0Wg0fYFWFDUajUaj0Wg0Go1GY0ErihqNRqPRaDQajUajsVDbn5lH46nPAZ8DooVD64DvpZOx5wvnQ8B3gH8HxgGLgf9KJ2PrBBlDgZ8BHwWGA3OB/0wnY3uENOOAe4D3FQ49A3whnYw1CWlOBn4FvAtoBx4BvpZOxrp8vWmNRnNMk8sbhGu0b57m2EUHs9FoNJrjg/62KO4B4sBbCv9eBp6OxlPnF85/A/gK8HngMmA/MDsaT40WZPwc+ABwC3A1MAp4LhpPhYU0jwAzgJsK/2YADxdPFtKmgJEFGbcAHwLu9OtGNRrNsc/qPU38v1+9wdNv7u3vomg0Go0mYAzDIJ/XMyeaY5d+tSimk7FnbYduL1gZr4jGU+uBLwE/TCdjTwJE46lPAgeAfwbui8ZTEeBW4BPpZGxOIc3Hgd3A9cCL0XjqXEzl8Ip0Mra4kOYzwMJoPHV2OhnbBNwInAeclE7G9hXSfBV4KBpP3Z5OxpqDqwWNRnOscOdLmwH43Ws7eP+ME/u5NBqNRqMJCsMwuP2ptRztzPJ//ziDGu1JoqmWRCSB6UkpcoBEZmo/lAbof4tiD9F4KhyNp27BtOotBE4FpgIvFdOkk7FOYD5wZeHQTKDOlmYfsFZI8zYgU1QSC2kWARlbmrVFJbHAi8DQQh7HJF3ZPJ3ZXH8XQ6M5ZtDRIDXHA7qdazTmMoM1ezJsP3iUvU3t/V0czbHDOmCa8O/C/ixMv1oUAaLx1IWYiuEwoBX4QDoZWx+Np4pK3AHbJQeAUwq/pwJd6WTsiEOaqUKaBoesG2xpLPmkk7Ej0XiqS0jjVPahmMokAMPPuGJU+9ZFZLNZuru7ZZf1CcX8ZeUwDIOP/34ZHdkcj/3bW6kLD5g5A00f0Fv70HjDyBsYhQVcg71udRvR2Cm2bcMw6O7u1m1E48qx3j5yYn+f7T5m7zNIjvU2ApDNZiu+hERmfxBl8UK/K4rAJsw1g2Mx1wX+IRpPXSOctzt/hxyO2bGncUrvJY2d2xBMxONv+Cx7ty5i7ty5TJw4sZci9g2zZ892PJ7NQ/1BcxnnX595gbFDHZNpjnFk7UPjjYaDNbR2m+aWWbNm9XNp/EG3EU2RTMb8ZnSEre1btxGNG8dq+8gbpXfilXmvMGFYPxdoEHOsthGAxsZGAD58bu0oEpExwqlOEplOh0vOJBHZB3RiBvH8FonM9uBL6ky/K4qFqKJbC38ui8ZTlwFfBH5cODYVqBcumUzJ+rcfGBKNp8bZrIqTgQVCmikOWU+yyblcPFmIlFpHuUVT5A7gruIfh2f/Zhqw8brrruPEE/t3fVJ3dzezZ8/mhhtuoK6urux8VzbPg7uXAPDOd81gWkT3cMcTvbUPjTeebFxB+KgZKPnmm6/o59JUh24jGjv371wEwIghYW6++TLdRjSuHOvtI5c3eGCXuarpmmsv4uTxI/q5RIOPY72NAOzdawa3e+D9wzfaTn0XSNiOLQb+BdiMqbt8G1hAInI+icyhYEvqTL8rig6EMN05d2AqcDcAKwGi8dQQ4Brgm4W0y4HuQprHC2mmARdgRkwF0601Eo2n3ppOxpYU0lwORCgpkwsxA+lMSydjRaX0RkxtfrmsoIU1kz2zAaEfv2c0QG1t7YBp8HV1dY5lyYdyhAoLTYZI0miOfWTtQ+ONUE2o5706VupVtxFNkWLbDoVCljah24jGjWO1fYRy+VJ/X3ts3mNfcay2ETB1AoBbn24/56//OEI0fJVbExOZ54W/1pCILAS2AZ9EMEz1Jf29j+KPgOcxo5SOxtyW4lrgpnQyZkTjqZ8D34rGU1uALcC3gDbM7S5IJ2OZaDz1AHBnNJ46BBzG3FNxDTCnkGZDNJ56Abg/Gk/9RyHr3wLPFSKeghkMZz3wcDSe+jowviDnfh3xVKPRaDQajUaj0XjlbxuyrSQylekUicxREpE1wJnBlKp3+juCyRTM/Qw3AXMx3T9vSidjRWfln2Duk3gvsAw4EbgxnYy1CDK+DDyFaVF8A1ORfG86GRPDeX4MU3l8qfBvNfCJ4slC2hjQUZDxeEHm1/y6UY1Go9FoNBrNsYfRa+gMjcYDichQ4FysS/D6lP7eR/HWXs4bmP67CZc0HcAXCv9kaQ4DH+8lr13Ae9zSHEsYQp+mQ51rNBqNRqPRqGOJhqj1RI0fJCI/A54FdmHGW/k2MAb4Q38VaSCuUdRoNBqNRqPRaAYFWk/U+MR04FFgInAQWARcQSKzs78KpBVFjUaj8QltnNdoNJrjA21FHJg0tnYyZlgdQ2r7e3WdBxKZW/q7CHYGYS1qNBqNRqPRaDQDA0NrjQOC3Yfb+PSDS/ncn6QbFmgqRCuKxymWNYr9VwyN5pgipBf8ahSYt7GBr/11FYdanfZaHvjoIbFGoxmILN5xGICGlsHZtw5EtKKo0Wg0Gk0fctfszWza38KDb6T7uyiaKnlyxR4eX7q7v4uhOY5pauvSFs0CeqrWf7SiqNFoNBpNP9Dame3vIigzf/PB/i7CgKOjO8eDb6R5eNFOMm3d/V0czXHI/M0H+cQDS7jv1e39XRTNMYpWFDV6Ckaj8Qn9KjmjZ7sHP795ZVvP78HYzoNog125fEm+dsg97hCfeX89/Yfe2AFAanW/bbM3oKjRWo3v6Co9ThE7uNCg/OxrNJrBwJIdh/nEA0tYvvNIfxdlwJEfRAp00AOw7lyezmwuENk/mrWBLz72Jrm8v/WdzZXk1dTo7+jxTH9NhjW2dvVLvgOJ7Qdb+bc/LOXVzQf1eDYAtKKo0Wg0msD4/nPrybR3k3hmXX8XZcAxiPREywDM72J3ZfN88N4FfPjXC+no9l9ZXLjtEDsaj7Jpf4uvckVFfzA9S40/9Pczb+saPK7rQfLjFzZyoLmTn764CR1Pzn/0PorHKf3dwWk0Gs3xzmAyQhlGjsYtK+lsPsSY8ZPI5d5apTyDdfuaOWXCCB54fUfP8S0HWrlweqTa4joS6CBSf1OPO/ZnOnp+98eY6mhnMBb4wYZo2df4j1YUjwM6unMMqwtbjomvlZ6B0WiOP15ct5/tB4/yH+84TbvN9RNBbKcyd8MBXtvSyDduOpsRQ/z5xD/55JM89c3P0XakoedY9K9J7rzzToYOHepJ5sJth7jj+Y2MGzmEI0dL7nPd+bzLVdUR5LdusK1RXLs3Q2R4HSeNH9HfRRm03P7Umj7PszuX5/7XtjPz5HGcNmmUr7Lbu3L8+pWtvP2sSVwWHe+r7CDRY9hg0a6nxziPL9vDR36zkMXbD1mO6+ASGo3/BPnBOnK0i1++vIWtDdW7z3V05/jly1uZtaaelbv12sH+Ioj28vM5W1i+8whPLN/ji7wnn3ySD3/4wxYlEWDv3r3ccsstLFy40JPcN7Y1AliURPA/UE5eWJdY40OFN7R08OW/vMm8jQ0W11Oflz8GSn2mndueXMN//nlFfxdlUNPc3veun7PW1PP8mv38ILXBd9l/WbqLeZsO8r1n1/suO0j0/sXBohXFY5xHl5qDhV/O29rPJdFojk2OdmYtg1E/qc+0M29TA4Zh8Ov523hx3QG+/JdVVct9csXent/9Mdg5ntl1qK3nd5CBF452Ve+Wlsvl+OIXv+g4sVg89sADD5DLVZ5XX81VisqcH7V93/ztbG1o5a7Zmy1bYgymyVexDWoGF/WCu6vfHD46OAPjaIeYYNGKokaj0Xhkb1M7t/x2Ed8JKFDLZx9ezl0vbWbOhgb2HPFvcLc/097ze7C5zA12/rx4Z89vvybC/7x4J3/zyYIoMuflV9izRy7XMAwaGxt5/fXXK5b92pbGaormimEYdBe2rhAH1n7Ud2tHaWIl/mTJ9XAwvUWDqayDhb6qU78j91oYpJY52YRbY2tnH5fk2EQriscJ9s7Fskaxb4uixIJtjXzjb6toaA5u9kyjqZa5Gw4A8ObupkDkF1/bFbuO+OI2V0R01QlwSZjv7Gtq57YnV7N85+HA89q4v5kH39jhecuGlo5uZq8/wNFOq8W2Llz67PoxE77rUBuPLdnNHxaky/Kqlr+8ulopXX29f3u4+eFGFn9iDR+8dwGb9rdw25PiOrLqZYsWyq6ssI/iINK+BtO2LIOFvqrSIHU5u+j2rpyljQ9UwpKO9I8L0n1bkGMUrSgeJwyG70J7V472grvUHbM2sqG+hV+8rF1mNQOX2gA3l9tyoLQW0e+xgTjYGARdQw93vrSZtXubSTwT/Bqab/5tNU+u2MsfPA42/v2Py7ln7hbumr3Zclwc0/ihFIkBNR5etNMlZeUcQS1YxrRp03zNt1rW1zcD8LW/riLTXnIP9WOQLXtfBrrr6dq9GX41b6u5/cjALuqg5FjwzBDfj/auHP9430I+9eCS/iuQKpL3ujM38JXcwYBWFI8T8oZBPm/wyOJdLN95uE8VR8Mw+MvSXSzcdkiaJp83+Mf7FvKP9y0kK7zczR3d0ms0mv6mVhj1m+s7/FPpFu0oWc1CIdjp47oi0VVnMFkXmtqCXUPzu9e286vCeu6iNXdH41FPsloL1r0lOw7Tmc3x4rr9Zfue+dFamoR1cmv2ZnyQWGLa2TMYNnaS9HwoFGLixIlcffXVvuYbFH7Ut+x9Gehv0W1PruGFtfv56Yub+rsoFfGBe9/gvb94fcCvn+uPbtRv5VT8LhT7vZYOf7wU2rtyPL+mnkMBuIOK3jaWrTIG+ks5SNCK4nGCYcDC7Yd4dMkuczZeeIGCjhi1ak+GPy3axY9myaN0HRUGUOIMcH+PYfc2tVsUV41GRHR5uf+17b7KFi1PbT4EJhGxWBT7+yXrR55csYf3/uJ1lqYP05XN8/Sb+3hh7X52H/Y32MfX/rqaX768lX+6b5G18n3uev10TwaoDddy/oe+6Hiu+N249dZbCYfDjmmORWR7tg3k10h8x5fsOOx7hNYVu47wlcffZOchb5MqMhpaOnrq+7ev+tu/Hgv43eaCDArzwOvbufeVbXzzCTV39koQx2h7jojr7zV+oBXF4wQDgwPCer++dJM4fLT3GSSZshp0KQ3D4Ok39zquMVu47RCffXh5YIFKNIOf2nCp3drD/FeLOOj3WwGwr+k40NzBXS9tIu3RetZX+N0fPPhGGoDvPbveso77mVX7Snn6kKmlXgWBfj9Xv8d54ZoQ0y6+hpm3/qDMsjh9+nQee+wx3va2t/mca3D4MSkqszAPZMt81qYZ+l3W7zy9ji0HWl0ng70gvh86XkE5viuKAWqKS9PmNkwHmv23KHYLkzfiN/l4ngT1E39249VoXFB5V2UvdNAf30eW7OKxJbsBePYLVvep1BpzsLh6j7/uXJpjB3GNoviB8kpTWxdPrNjLu8+fQjgkfvCqFi0lFArx0xc3sWl/C/O3NPL0f11VtcwFWxvZ1niUj19+sg8ldMYwDO57dTsnjx/BzRdWv0auS5iV9jsojIg4Zh+IgcREik1w2sXXMPXCq/naypupbzEYMTrCex7YQT6fZ9asWf1byALtXTmaO7qZMmZYv+Q/kIekbsHsDMPwzauouT1Ldy7Pg2/sYOYp47johNFVyRNLZVd2j1dE99DBtC4ySMe1rBCRTZwEPW6bTCIyFvgwcDrwUxKZwyQilwIHSGT2ul7rgFYUjxMMI9jBpmEYvLalkdMnj+LEscOrkhXqJdJGNpenqb2biaOGVpUP0KMkOhEepKGiNX2HqBzW1tRU/TG8a/ZmVu5q4sW1+/nwzOk9x31fiyKUsyYU6tlXza/9IO94fiMAF5wwxhd5TqzZmyG12oy26YeiKG4/4vU5dmXz1NaEXGfm80FaFH32ahX7wFBNmGuj5pDhUGg44XCYfBUhc4fV1dDR7Z9b/78+tJTWziz3fuxSaZogLQyDyXohtkHD8G8QHwrByxsbeHZVPc+uqufJz17uj2C8rxXuK/pljaLPeYrtoKHFXwtukKMpcSJErJNAtxIZqCQiFwFzgAwQBe4HDgMfAE4B/qVSkdr19DjF7w7m9a2N/PTFTXz24eUArN7TxIZC5LlqyBsGR4528ZMXNrK2EKjhG0+s5tMPLmWzEBWyEuasP8BXH1/Vq6vg5gOtnuRrjh/qBEWxmsFWMQT5+n3mO9PenQv0yyrOSod6/uM/YqAVPxD1r1afrX7ffbYUSdVL/9iZzfGhXy/gA/e+4ZrOYlEM8hn7IFsWdt4P+5nMiuW12MX2sGLXEY8SqmMg64n2sv1ciMTrp9dOKOSvC/4ArtIy+sO653eO4sTVpv2l8ZUfkyD2SbEN9c2W5VDVIK4bFttzdjDt/eQfdwEPkcicCYgV/DzwDi8Cq1IUo/FUKBpPabPLIMDtNfejExCVwpaObm7/+1q+8bfV5PJGxR9Qe3nufWUrr21p7NkPa0tBgZuz4QC5vMG//H4Jf6ogLPzdc7ew+UALD/YS9n7M8OPH4L7lQAuz1x8YVLPi/UUub7Bkx2FaOrotrqdeq+63r27jQ79ewM5DR8kJQsSOdVnan8FvcdG/+DEN++Ay23cEV9b2KgMGFS0eeQP2Z+QDIEPyjHvjd69t5wfPrSefN1izJ8Mji3f5ZgGWIVfmvOW789BRnli+h65sPrDAGXLlNljFYzB1nWKz8bMJ1YTcremqzFl/gDWDbMnHYHr+MqTTQj7cm9iV7D7cxjf+tpp/+8Oy6gVjtyiWfo8aWueL/EHGZcB9Dsf3AlO9CPQ0Eo7GU7cCXwbOLPy9Bfh5Ohn7nRd5mr7BkPz2A9FCIUZo7M7llfKSBrMx5IufDQN+mNrAkaNd/GXpbj5+xSkVlbm9q9wiYRgG2bxBXbiGs6eMZl+Tf+4Xf1+5hy0HWvnajWfT0pHlT4t38u7zp3LGZLW9yoLkK4+vAmDciDreEh3fZ/nO29jAwZZO/vGyk/osz2p5YsUeHl64k5MnjOBjb7WuwXNTEGQ8u8p0n3xs6W7LB8/vaMSvb2nkxy9s5Cs3nMWk0SW37UBdrH2P6umvPBle+kdxxnzDfrk3hcWCU0HdP/2muWZ6S0Mr3/q7OWk2fuQQSxqLaB8qP+yzz9HnH1kJmDP9svJV+21ya8+Bup4OYPuXW9n8Lne1/cn2g63cPXcLAL//1GVl5/1cUznY8XuiSFatfuQiPrPtghuxH9tviJZDsUr+4QJPetFgpwNwWvNxNnDQi8CKPwPReOr7wN3As8BHCv+eBf4vGk/9wEshNMFj/0AG+cEU95ZzWoC+61Abr2xqqLoM+bzB0vRhy7FfzdvK7X9f47kD/dlLm/jwrxfQ1NZVNtP68KKd/P71HV6Ly+9fT/PalkaWpg9z7ytbeWHtfr78lzc9ywsCP/fqU+Gu2Zt5eNFOtjZ4cyPuD+ZvNvvaXYfaLLPnI4ZUt0VAXU3INtCvnseW7OKnL24knzf48QvmusG7Zm9mzDDrHGG11jQZfg/nRCWrM1saHGw7qO4m3tzRbW46LjB2hHXmWXwOqt2U5V5t11x8UqTnt9ivuCm+ndkc33l6rSUCqym6JODXr2xVK1wFvLC2ns8/soI9R9oCm0TYuL9Favmr1hXSrcjBrtMPTna1uJXN73K7WXRVONhSmhi2K7FNbV188sGl/M7nrYgGE0HqyLI1017Ham9sbeTzj6xg9+E2S/8o/v6/OVs8yRaJThjZ89uw9K/H5YTC08D/kogUP2oGicjJQBJ4wotAL/OFnwM+k07GbksnY88U/t0G/DvwWS+F0PQN4svut3VRfB/FD0V3ttxH/L8eWcGdL21myY7DZed6ky1iAJfZrF8vrN3P6j0ZNimsX3Tq+17d3EjegPte3W75SHXn8jy+dDd/X7m36kXe7d25PlfIBjqZ9uCiTPqO5IWJThzpfEKROpv5psYHa86fF+/i1c2Nrhux72tql54baIjKoRiZVHUCp70rx8fuX8zHf7fYNZ0XK4s1Bpf1+nEjSpY/VavfC2v3s2JXE/e/ut0y8SUqb0F4nv5q3jZ2HmrjsSW7fXc9LeIWQKVaxaW/BocDeXsM96Un/uUTsrmeepmwFQOEddv2rLz972s5crSrx7p+LPPE8j1879n1rvs4BxsNW8jHo4zk8xvZeaiNu2Zvlr7vK3dX72J8yclje36L7+HxqSfyNWAS0AAMB+YDW4EW4HYvAr0MRcKAk2PxcnQU1QFLEP1JR3eON3c3uUaWeupNeSTebQdL7gcyJRbc/eZPHOccYVUl2pVbite3NEqtCm2d1VlfDKqfdQ2K/utYB+4gy449YmDpj+rk2tf2+Dngbe+Wt9lul4FItfjhIvbYkl289xev8/yaest7LXou1Cu6/NZnTKW4M5vvCSDkH6Xy2KtUbCfWqKdyaaLVU/TM8Huvs65snvtf3c5KWxCYbN6gucPfYERFOrN5l7ZRrUXRLeKs/LoN9c18+sEllui3xwO+BrPxQfaQcMkzQ3wHrjpjIrsOHz/P5qEFaZamD/Pa1kYWbG3k0w8uYaOLS3uQVNtE2rqyfTaBYxzvimIi00wiczXwISAO/BK4mUTmGhIZT6GDvSh2f8K0Kn7FdvzfgT9XIigaT90GfBA4B2gHFgDfTCdjm4Q0DwGftF26OJ2MXSGkGQr8DPgopgY9F/jPdDK2R0gzDrgHeF/h0DPAF9LJWJOQ5mTgV8C7CuV5BPhaOhnzdyftfsLvofgPUutZtTvDP9nWl4mdyrxNB6vaS81Avh7B7xlctyiKvublMpve3wzUcg0kZJajXJVtxO7e4+c6nLJ91CzL5Px96E1tpe7Sq+R5mxo42pnlPRedwJ8X7wLg3le2Wdx7xXKr5jO0rnR9Z7Y0CC17dB4epai/lbn6CwJVZ7xlYd5Fi+L5J4yhLlzDm7ubCvmUUH2ss9bU88yqfTyzap9lL9maUClwmN+s3ZthnG19ZZFqraRuerSbpfgbf1sNwOf+tKJsT91sLk93zmC4i3v5QI7E7+Y6WO23TbTst3R0u076qiD2o6JFckjtwA7SH5R1r7M7x10vmVFqv/vMeq45e1LpXNbfJQOybSY2H2jhghMjDleokTesE3t+I5uvPe5cTxORWsw1ijNIZF4GXvZDrFcL4K3ReOpGYFHh7yuAk4A/RuOpu4qJ0smYXZm0cw2mYra0UJYfAi9F46nz0smYqPm+AHxa+NuuuP0ceC9wC3AIuBN4LhpPzUwnY8U36RFgOnBT4e/fAg8XriMaT4WBFOZiz6uBCcAfMMcgX+jlPgY8hoHlDfKjU1tVcBl4fm097zx7smOaQDsHn9ddLtx2yCrPIrsq0WUMVItifzGQB1l2gpq48Muwd6C5gxFDwoweVlp357bhtt88+Ea657eX4D5Az8DI7lputfJXfheikiW6sRoYnD5ppMXLQTynQsjiEipXzK2KolqETjFYgzj4iQyvK1tvWSmNrc7Bwtz6qGpdT00ZznhxVzQsVlq3YDYViwbgA/cuAOCRz8j3BRysEaOrLbXorRAKhaTKhio5oa1bYhwM8PoNKpiReNt2xfDFdft9zUs22Xnbk2vKJk8qwTAMywvvt/4m71/9zWfAk8hkSUR2Ynp++oYXRfECYEXh9+mF/x8s/LtASNfrW5NOxm4S/47GU5/G9KudCbwqnOpMJ2OOb0Q0nooAtwKfSCdjcwrHPg7sBq4HXozGU+diKohXpJOxxYU0nwEWRuOpswsWzBuB84CT0snYvkKarwIPReOp29PJWP/Y/AcBzbb1ZVYFy6BZIaqVW2Nxe9frhfVV1X5HRKX2vGljeH1LY8/fXjufF9ft58Sxwzl76uhSOTHK1qMd7wQd5t9PwpLFG9Xegn2g4aVODh/t6gk5Ln7Y3SyKftf8YWEftaMOkYUrobnd6voo2xdL9Z0U69iiKBpw1tTRjoqi6qy0qFeJ1X3y+BGWdKqbQIsBhsRyhSz5WFuNl3GRrC8KhUKcOXkUWxr8tyr67T6bV6wEL98I0UK+bOcRl5QDF9c1ilVOUInVHa4Jee4H83mDmpqQZV3iYNowPSg9VhRrW7JJY6u/zm7dWcFzwcd39EBzp2UNv98uxBYrtlBHx51F0eQHwB0kIh8nkVELBNILFSuK6WTsnX5kLKFo27bf3LXReKoBaMJcmHl7OhlrKJybCdQBLwll3BeNp9YCVwIvAm8DMkUlsZBmUTSeyhTSbCqkWVtUEgu8CAwt5DHPlzvsJ8o9q/zt1cSZcbvryR962a/QvMZNeOmn+OHIGQaLhYA41Vp0xMHL9HHDWS/sDWlRFBWHYxvqm/nly2ZUwm/cdLblnF3C1oYWhoTDnDxhBJViGAabDrRw4tjhFiuSF/wIqe+FwTMckLu2+RHFV2RYXeWTCVslg3p79GHx/ffbEiJ+m718qMXyiOUOhazvv/WW3PMphtS3zM53W11P/ZyVtiri1t5W3BzarX7+vrK0vnvR9kOOafKGDxNkkn00l+w4xPRxzv2RF4ui2L5PGT+CTLvz+kcvuoHYLlwtih7KrWrFHsg6jWvU02oDEwm/w6GQ5TmrSt5Q38z/Pr2WT14ZJTK89A0T38OBXL9BYumX8oalp/Pb9XRaZFjPb7+VdLHch3xWcMWSisU+LtVE+G/gDGBfwbponf1MZC6tVOCACT4TjadCwF3A6+lkbK1w6nngr8BO4FTg+8DLBbfSTswNJLvSyZh9qu8Apc0lp2JaKu002NIcEE+mk7Ej0XiqC8kmlYW1kT0bkg0/44pR7VsXkc1m6e4OJgiAKsX8ix82wzDI5rI9f3d3l35nu7vp7q58UCp+NHO5nCC7tE7ByBuWdF1dXT1/53K5nnKK12TF6w2j5x9A/ZHWnt/tnVmL7M4uQYbLMxDztyi1+dLfuXzeck4sX3e2Wyo7nzc42pVj9LBa5m3cL5RVvD5H3ijJP9LazpceexOAJz97ecVrxpbtPMIPZ21i3Ig6fv/JmUrXiPUOpTrJ5nLsOdTCou2HufG8Ka5rcvxA5XkNOIT22J0ttcGu7mxZm3Einzf45pNrqaut4YfvP68ky9Yea0PWd0dE2rbzzu9hZ1c3Z0wawZYG85uRy+Z6Lbf9/6oYwrsjlkdVVl7oM8R3OoR1Rl3sw0IYUtkHmjv41lPriF04lStOHd9zzdGOUl9kGHnyQv3nhXvI5/MW2S+uO8BrWw9x201nMXJo6ROaFdpCpq1T6Gfy1v4xK+aT67WfMmWLz8val+RsZXXqX90Iie1ZkN3akbW0dTvd3d0VtZGubKlsl50yltkbDjjKdutfZXR0CX13LutS5t6/C2a6UhrxuY4fXqtUHwMN8bna6ezqprvO+5A6a5FtH2d09eTvxq9e3kJ7V47fvLKNL153uuP7b/9eD4S6tpTH52+Y+G20jLXyzv0UeKuTXYfbeG3rIf7fxdMYVotjP+VVtni9WNas8CzFvscrYtvIWvragTGuyGb7NKr7U34LVFIUo/HUk8Cn0slYc+G3lHQy9kGPZfklcBHm+kBR3l+EP9dG46llmEpjDHArSwj5Gtdq0ojcBnyn+Mf4Gz7L3q2LmDt3LhMnTnQpWt/R3GxaxULAqtVHyGRMhXDu3LlkMqYSMGfuXEZ7MEQVrwdYv74ke44gO3vU4Gi29BFKzXq+59zatUeYddAMINCWxVKe4u+ajiZqQ5DpCBXK/XLPue07msg0l2Q//8ILPefeeON1dkp2Kyim2bGjiUxL6folS5b03MPmzaX7AXjxpdk9173yyitMHIYjT+yoYUdLiE+dlePRzaX6WbpsWY+8ZUuXsftwiEybmfdTs17qkf1c6nnlTa6bu2BELby8L0QmU0MmA7NmzaK10C+OUnims2fPBkp1surNN7nvpRAduRBzF6/ippOCm8ZtaC/lu3jxIg5tCCwrX1m3o4aOnPnsFi8utZl1661tZtasWY7Xt3TD8q3mfT9Zs7OnDrZsbSKTEdrj0mUWeSIy2TtaSnWaSs3q+b1ixQr2HCm1uRUrVyqXu9hGVEnvrOl5r9auU6sTkbxRuodXX3u953cIGFZr0F7oT1YK9xDuaJLKfnpnDTsyIX65r5G2s3M98ubOf63nd2fYYGO2sUfetu2lvmV3tolZs3b2yPvZavOaHxzaydunlt6Pxo5SuX89uxTyvaajiWwTPc92V2dTT3+2aeMRZrU4N3yxf924qVSPr7zyiqUPywOZVlPeXkH2hg1HmJVZ7yhbZPWBUI/sR5+aZcl3T7aJzFEHJcLIW+pbpY105Ur3tH7dEQ4eCtHaXS578eIlHNnYe7+TzcOSgyFOG20wdmhJ9tIlS6Xvzeuvv87OUc7yxPsW7621u3RuycLXLelEXn3tNbZVt0NOYBztRlru2XPmePr+F2nuKske3mWwavXB0lhgzssMCcvbR1cOhoTh4P6anr5p8ZJSv/fGggWl/nGbtX9U6UuCRqzTBW+8wd7RLok9yhb7aoCNG0p9wS7b++lWJy3dMDwM9phAxf5s0cq1TB1Bj+z1Gyvvu2X3ALBP6Js2b7Y+S6j8OyOyrr7Uh23fVuq7X3v1VbZU7qTlO42Njb0n8otE5rt+i1S1KGYoKUsZt4ReiMZTv8CMRvoOMVKpE+lkrD4aT+0Eziwc2g8MicZT42xWxcmYUVSLaaY4iJtEyYq4H7CsVC9ESq3DZmkUuAPTCgrA4dm/mQZsvO666zjxxBPdbiNwuru7mT17NmPGjDH3NgrBueefyLoO053pXe+aweP1bwJw3XWXMHHUUBdpzty/c1HP73PPncrW1eYy0mvfOYPH9pmyI8PrqBVcjG7+h8t5YJfpAXzBBdO5+bLpADS1dfPnvct7yvPYvpUATIkMo60rR6Qg4+3XXsRf95vKZfSUsTTubOqRfeONl/HQ7qUAXHXVeZx/whjXck+eNppD9aX9Fq+4/ExebTI3fz3zzEns2niw59x111/Kn/eaS3OvvfaisnVHPbJ/vYhIBDomTSFyoNRsZl56GgubzU2CZ77lNBrXHaCtYN25/roZPLHfrK/rb7xMyYq363AbX/zLaqaOGcp5Z45hZ6Gsl7/jEv7tYbPu/vKZt0ojxRXbxw033EBdXV1PncyYcQorF+xkKNA+Ygg333wpv3plO/WZdr733vN8XVv05cdXE4mYaxWuuOIs3moLXDJQeWDXIoYWesPL3nomr2bMNnPOOVPZ0lVaSn3zzVdYrsvlDcI1IQ61dva073dedyl/KrSrYeNHEDFKazcuu+x0FjRvcyyDXXaRN3c3MefwRgBuvOmt/G7XEgAuvfRUDm9ooL2w1u2SS6IsP5p2Lbe9jaiyLLWRI7uaALjwghPZuLzkQikrt0gub/T0ESedewqRw6aSFgrBP1wwhVlrzPfq4hmnsOyoee6EccO5+eaLHeUtT22koVCed77zYp7YvwqAiy49gzmHTdfwkUPDnH36BHauNx1PTo2OozFtfk5OPnEMN998Xo+84rty8umTufma03qO7zrcxt8PrC7Lf0pkGKdMGMGB7aab/ORxw+k6Yq6tPu+8qdx8VbQn7V+X72Xl7ia+855zuX/nkp7jV156EukluwG45pqLevI5eXqEvGGQ2WtOCE4dN5zuHtnTuPnKUxzrRCS7qp61C8x6vOodF/F4vSn7kpMitHfnad0v7Elb8PQPhULcfPPNFbWRlo4sf9hjrp+9+KKT2Lf2AOGj5S5ol731TK46fUKv5X506W7W7d7Lug74w6dm8vAe8/txxeVn8lrGeRPvq646jwtOdP8ugLWdHmzp5NHC+3r12y/gmYa1ZdcCXHX1eZw3zVl2f9PU1s0j+5Y7nnvXuy5h0ujKv/9FDrZ08pd6s34ujI4jOnFEaZxx3Qxef+Vlx/bx58W7+NuKfdz2D2dxclc9Rwvf4otmRFnUkgbgssvPYs5hM7DVGadPYP/Wkgu2Sl8SNGKbufKqc7l4esR32TNmnMLyo6WJqnPOncL2Qh948gmjadlXej9ldbKvqZ3/enQVE0YO4Xf/YvU8LOaTGz2MSy6cyrLWNABn2MZAXupbrJ9pE0bQVdg/+vQzJrJns6k8mda/IxV/Z0QOLNjJlq56AKLRcTQU+u53vOMCzpgsmRnqQ/bulW8TFxiJyEzgXEzdbT2JzEqvopQUxXQy9mmn39VScDf9BfAB4Np0MrZD4ZoJmBFW6wuHlgPdwA3A44U00zAD63yjkGYhEInGU29NJ2NLCmkux1wTuUBIc3s0npqWTsaKsm8EOgt5lFFwfe0JGRf68XtGA9TW1npu8H4TCoXMtTmAQajHrbGurq7nd21tnafyWtYlhmp6/m5sy/X8rqkJWdKFa2t7/g6Hwz351tWVtsEQ09TUhKgNl2TXhkvlRsjTfp3bMyim2bi/1Xp9WMw3LD0XDvcuO29Y7zsUDluuD9WUyj5UeBYhoU7ceG5NA6FQiAMtXVwkyG7LlsrQnoORw91l1dXV2dpCSVYoFKKuro65hY/Flsb2qkJk28mD8Fyrf2cMw2DzgVZOHj/Cd5fZdONRVu4+wnsvOoGrz5zEa4VAR2Gh7sVnCljuZ+3eDLf/fQ3/evWpvO30CcI1pet3Hm63XF8rtDk7ouzDR7uYu+EAN543lSFiW6qxvmti+WqEctvfI/tzKLYRVcJCPmL9OMkuks8bPLFiDxecGOHMyaN6rvn9gl3W68V31PJO1VhkL9p+iCeW7+GrN55NXa3t3Sv8ziHed4gasX7Ee6ixyi4eN7AeF+texCBkqZOcIbZ76/v+6FJznvSVLYcsss4/cSyh0J6y+w7VhAgJfY34ToUV+5IpkRGWfrP4e8TQOjqyXaX7zed4JZ2lvsUgMrqDdwv1otJGwkLfVFtba5bdob5qatTKvWxnRmgLtY73UCbbpU7Ea7ryIe57dTvXnDWRo505x/ZTdn8+9GFBIX5f7YQrGK8U1/qK1NaW6scIhQgJ/UltbW0h//L28cTKekKhEL9/YxfjRw4pya0R27d6P9UfWMcIau22Utk1tj40LNRJjcs3R+TNveZ44XBbN3V1dYXlPNbx2f7mTsJiX1mj1ner3EPhD2m5i/K91p8oT/zOVSPTT4rvQZ+QiEwGHgOuxYzrEgIiJCLzgFtIZA7KL3amv9co/gr4Z+D9QEs0niquBcykk7H2aDw1CkgAT2AqhlHgR0Aj8HeAdDKWicZTDwB3RuOpQ5hznj8D1gBzCmk2ROOpF4D7o/HUfxTy+C3wnLBn40vAeuDhaDz1dWB8Qc79x0rE076KNJ23+NMbtnOl35bgkS4OwKIRy7LHkmGXXd1NuS/4d/4tw74OXFzgH3IRonoHczaUrJViuduESInVRhK1X20YsP1gK0Prwpw4dnhVsgF2H27vPVEFzN98kDtf2sxJ44dz78fU1mqq8oVHzcm4fF6+5Ytbdf98zmbyBvzutR1ccVrJWtJtu2jcyCEcKVhZVINMfPOJ1ezPdPDHhTu544MX9hy3Rwi1RoYT3yOlbDyhGihn7sYG/rjQnDV/4nNXyuVJ6sQ+6PhhynTn/OW8LQyr7X3SwED+/suWDKv3N9ZSd2V7DzPZ2Z3nghPHsLZgKXTLyRpsRZ5ub1M7ew63cflpVmudZS9QSWOoXzWfdU/cTaqpaPFuZ/rcKHfeeSdDhypao8S+Xy2ZK0eEaKRdwt4ybs9FVfbjy3Yzb2MD8zY2cOc/lizVfu/d21e4ftsUb2n34TZuf2otH5k5nfdefIJjmo31LSxLlxy7VGSHQuWR0ouIXVhQ20/4RV+VzktwLXuApx+kNrDrcBu/+merdVEW0MsXgpQtcFxvj2HyC2AMcD6JjPkhTETOw9zu7x7M/eYromJFMRpPTcFUoK7DdO+0PIp0MlbJVP7nCv9/xXb808BDQA64EPgXYCymsjgP+Kd0Mib4w/BlIItpURwOzMVcUymGhPoYZiUVo6M+A3xeKHcuGk/FgHuBN4B2zL0Xv1bB/QxoZIM2PzpgWWQ4e5ayvNwUMTFMc95VUVQqqpRul43s8pJBtipZl0hwlnv3EKpcLJs4YDraVX1EtJaOkttwS2c33/r7GoCq9lQqumD6zZ8WmRuz+62Aimyob7Zs+i7iFiVOVGTEdAdbrHvYTRAVRcVmJu5VKA4IxOia+5s7pG+53x/tMcNKnxVVybsVw6XLBjKy1nS0M8fIIUJ5JP0Uhj1ynn91YhjWvIbX9f6JzBuGNHpneTNz7hPtr9hnHzYdY374gQu4aPpYS/mKOO23Wb9qPssf+HZZOfbu3cstt9zCN77xDW6++WbpvXTn8mYdIO8DLXkq1v1Qwa1e3ErEj0cnRmUUq9FVCR3Aeoxb0WR759l54PUdHDnaxW9f3W5RFMWrWzvlW2XJONDcSWT4EMdzWaumOKAZyM/f3pcsKUSLf3N3k+V4pRPilWCNtO2zcDEfxQmpY5ibgOt7lESARGY9ich/IewOUQleLIoPASdjRh+tp4r2lE7GXJ9jOhlrB96tIKcD+ELhnyzNYeDjvcjZBbynt/yOBfyenZOFsbbno9JB2NNYNrIWt8ewKVXVhvl3CzVtG1P2iv2+7crFQWGTa8OlvkRyeYNtB1s5baI1YoJ4Rbdgrfifp9byp3+TbxDdG3kDVu3O9Pwt7o/X3pXz5N75+NLdPLJkFz/7yMW9J66QA83eNnevhPJtJoTfLu1PHLSLqVbY9mUTO0QvzVlsP+LEx5Mr9nLqROdIG37vYXnW1NHM22R6t6jeg3WAUvrr7WdO7HHzLUunILsmFJKOFpws5o7pVO9Bki5fcPMqcsqEEextcp/MMHCbnJIPuFQe5ZYDrRZFUcSuNORyOdY9cbdzGQtuiA888ACJRMLRxcswDP71oaV0due59+OXWo7LUK1vcf/HDqHvdlPmVCcARNmqbc7vCZeWjm62NrRy8fSxVa8N93sLHMMwSL6wkVzO4N/efppLOnV5TtcMLgtuMGX1owpkAfLsYx7r5Jm3jB9etJO2ziz/cc3pluPW5+pJtBTpBODxSQ3mcjw73YVzFeNFUbwaeHs6GXvTS4aagUGgrqfSvc7cBmOCAuhSuJx08OSva639A1VtR3SC4KppGAZNbaX3WHWvqAff2MHTb+7jpgusu7VkBYVArB/ZPmWqGIbBxv0lr2vRMvN/czbzrZvPrVjmw4tM98Lfvbad6MSRpBsL2zUMkk2y7M/eGrZcfp24P6X4vGacPLZnv7yzpoxWtrrIy1f6bXdrlaUL8qOtOtCTDRTPnjraoijK8nEbR4fFtdQeZrVlyVTdmgybDKVsDbvbnfDbNmklq2+ZRbLGNlQQZdvfwz0bVtDRJF/SYhgGjY2NvP7661x//fVl57ty+Z6+TrSeu7v5qz0Y8fYsdeUmW1UJrRXajGJ79rsH+8bfVrPnSDv/cc1pvOciZ1dPVdzKpvo9E9tTQ0snCwqBZd43w61siu+/5bdznzo4vhD+4/Y+tHSobbswVPBicPP4EvHyXcjnDR5fagbdev8Ma0DHIJV+sY6sy5uOS5viy8DdJCIfJZEx94VPRE4E/g/T27JivGiXuzluLbrHDn6/slLl0K4oqrieuimKlnzsiqKasqmCvQw5xc61yOo9Gem5MkuGS74iT79pvvMvrN1vOS4bMPmBOLMuvvULtzlvAK6KYZjWoiJDFdzxBgKuz87lrRIH50c75W5yIQ9d6+hhzvN9uZy8PJbBmN/WBrEMHkYbhsuHXmbZlw0IDKwunNZbNSzpZEpkbwPpouVW9vzd1iu7WiFl5RHSmW6tOKaTjZFChMjm8tz10ibmbjhgnaiy9R9Hj6jFPaivr3c8LspTHbN56cMs1ld3tUhJnszLw605+23J2FOIXjt/U8WxJypCtdji8/vz4l09v+1eFl5k5yXf15zQGPz2fPAbt3vdtL+F1XuaPMm1vw+i8rzzkJrLvuju3p0T3xWXfG03lHhmHWv3ysc1dtzWYvvt0SZ7X49TReXzwGggTSKyjURkK7CjcEzqdemGF0XxS0AyGk9FvWSoGYD48M7KlB17h2CZ7ZHJsiuXkoFQ2QDMxdpYKeWW0MosPQdbOrn27Ek9f+dcBoeWgWNFpTSZecq4kiyH+/7b8j08u2qfkiz7gPsEH4LWvLr5IKnV1oFk3jAslp6hkm08BhqGgS0KU+mn20BGVACt74T1GouLqoc2bLUoqo24VfPJ5vJ8/a+r+OXL5VsPLE0f5ht/W8XepnblGWtrGRTTSdbjSQcEBrR358Q/qy6DyJYDLXzw3gX8efFOF7mGtN9SmTizH7Eru5XWSSgEDy1IM2/TQX4+Z4slM/ukwcixk1Bh2rRpjsdXCYNj+TsAF58UEc6pcZJkiyK3Zu+3p4n1XHWyZfQm9o2tjfzv02tpaivfaqS9K0emrdt3DyJx7bqrG7GiPNk3fjBZFN3K97W/ruL2vzs/o0pp66p88/ZhgqIoXl/uIVP6be8Llu88wm1PrnHNx23CJmft+HxFFCcLmHjckMjsJpG5FHOv+Z9jxma5mURmJomM6/aDMpRcT6Px1BGsz2IksC0aT7Vh84VNJ2ODYzM0ja/IZrzdFC7ZTH/57KJg/RAtivb1YhIZXnB3PVWTIXd78LfcYj3aO/fG1k7+sCANwM0XTus1iIx4trPbvgi04qIB8NMXzcDCl54ytlpR/Y6BIR2Auw0UZRF+3V3w1LDqrc7vSplsy2Cs9IdbNNvVezNs3N/Cxv0tfP5dZ1rOfe9Zc2P3zz68nH97+6kl2R7aszgT7TaQsZoUnWUZmIF8nOSV9U0VlhPgvlfNvVEfW7Kbq06fKE0nU+Zkj8gwbIqVS/8onssqWAvyhtHjnWDH3mZOOPcSho2dJHU/DYVCTJgwgauvdg5u9dqW0nX2couPbLjENc6NC0+M9Lg/5hQn27w8Y3XrcjC9Wm/fhOTz5r6pf1iwky9eX3ovD7V28qkHzX2Ff/HRS6TXe/lUit/erJvngoLssSPqpPfot7dDkMiKKraZprZuxo5wDtwjlWv7+7RJI3mlCiuzZeLMPmktG8gp4jb2y7p4g/mJWN9ePHSOGRKZ2cBsP0SprlH8kh+ZaQYOfrvJyLatKFtHKOoe0rDzpd/1mQ4mC5sBi/nYPyLFtV52GV5wW1up2smpRsvzs3O213d7FZFP27tzFnluLkYqNLeXZjJN17oS9upZsuMwT67Yw5euP4upkWFV5RskblF4RVQjWEq3jFFEtZ3KZo57C6ZUKarXiGVoalebdbe6GElcTw2DmSePY5eDi1ZZ9Uj7MHkZth9sdbzGLS+VvrcsCJiCXPt1UrfWsvkfeRsOhWo4/0NfdIx6WpwIu/XWWwmHnV3HZRMS5d4gYnnUkE9OuvS1iu1RviWKWnn8RFXusp2HLX8/IriH7lKMKgxw5GgXw4eELVYosH7Pzpk2hhW7moDqlbm3nDKezQdKQexFaaLr6UDXGaVR5YXDXixcdrmyb4kqbbYxwbC6GjoKk8LVTlq79XMnjRvRE03YD+v7s6v28fLGBhLvO9+Sr+iOGw4fh4piInIPsJVE5h7b8c8DZ5DIfKlSkUqKYjoZ+0OlgjWDB1/6X8WBlRju2hLhUSjFpv3ybSvdrDGie2PVewjaFVwfXVldXWYV5Z02aSTbDx4tu6g8Eqw1n3CFM2y9DcBmrz/A9HHDOXfamF5l2RViNxfl7z9nWqjunruZOz54UUVlDpLyGdjSb7cBk+zb7j4I8PChtsgu/b7mrEnywaJiNqI8t6i3bvuoyjhpXMmNUKwDt2AEYnlk6zQNoFYYLFjqR0HRBMoGzCLieh/VLkcl6FaZAigZwBm2N8ca1EWtQDJlzpQP0y6+hpm3/oB1T9xtsSxOnz6dn/3sZ677KI4cWnou6oq0UrGlkzR+TIJKrbluVvqqc3VG9dsjBkgDq+XIDbEFHTnaxacfWsqUMUO57xNvsaQTX8WJo4TJW9c66b3s9ldcto/iQI+AKitd1fs72/+WiItKolqb14h1qlYe5f4sb/DmniZOnzjK8k2w3/cpE0aUbcdRDb8teHPY3f7FAD+yPY8HFYnIbZj7x9+tqOR9CHifw/EFQBwPhr+KFwZF46lLo/HUhcLf74/GU09F46kfReOpymzqmj7Fy8dYWbbw2xpUxppOHEzXSNZ6/WreNss11g5HlO0yc1zl/bkFyvHS8buuUfQwi1drD13okA9YFfNqLVT2AdiOxqPcM3cL3/jbaiVZ4r11ZvOuFsUiohVyIKJqeZK5WdsvsQQmUnxeMiXHEgGzJiRbWunaNkXGDC8N+ps75BF13RQPkfauHFsOtJhr+BQsYeY55/5jwkjnT49hyPewtKSzDWnFGh0jUULdyuaaTrxX2RpFmyzZuk/DqNwK4OZWX6YoFv6cdvE1XJf4K/M+OYJHPjicWZ8cz44dO/jABz4AmMG7nl9TXybnnKmje45Z95J1m4izncsbroExzHLK28+ooZXv6ylz53Z7J4MKthL0UPfBN9JsKVj0NtQ3k8sb7Gsy3bXnbWzg1oeWsv1gq+U9skZ7rv47LHMdHtiqoRXppE/VguXt0Zq/2iSGfbLMuna4hOpYZO7GBr7z9Do+/+gK5X7cT6X/+TX7pXmJ7/6gJBG5DPh3QG2QZTIBcIo61AzI10e44CWCxH3AWQDReOo04C9AG/AR4CdeCqEZ/EgHzLY3WD5QkyMT5zq7q9gRvfOcyY7H7aIfKqzzs5fBDetMqXyQ5GWzaNmHo2yAiXM6Fbl2CfayqWySLhvAtXRmLYUbaAMCwzB48I0dzNvYYD2O3T1UbcAks56XP+/elRo3pANmF8XDi9tfT6RPhwarqrh85fE3+crjq8oi6Kpah6wus84YWLfHsKzhs11kUZgUX0RxIKJ6jSVAh4fBZZmiJ6Q+c8qoXmWU3beLbJFQTZhro7V89MI63n7qUIu76Xee3cC9r2xj/b5m0o1H+fBvFvCnRTul/bVdgV8u7CdqL8LnH13BR+9fRIeLhczNY+NsQVn1smzAbbJMZKD1Yaoeist3HuErj68Cyu/hrtmbaWjp5I7COsgisommMhTqOwTWfUUV+4+Btl+eXIEr/fa6Zi4kmWi05i9Huk+ly17UqtW7aLvZfzfZgia5l0dNdrWMHMyKYiIyCvgz8BngSC+pRbYCNzkc/wdgu5eieFEUzwLeLPz+CDA/nYz9M/ApTJOnZoDiZQ8xZdmSzt3+DRE/Kg0tnazc1Xv7NySDgEr2tLpj1gYSz6wr+7iMUNw0fmVhPYZX3NzNvvfcutI5RXmygYx9sKoSil8VL8E/ZO2irbPcUpjPG2xtaPFlT8VsLs+q3U2ug0s31uzN8OSKvdw1e7PluNvenaLrl7iuFrA8MLeBp9WiqDiolVgK3T7aMuXAafBVUgqtsmevP8C//H4JWxtay64p4vYsi+H/521qUFYuZelkl+QNwxJJ1i3oicxy5KZwXXn6hNI1EqNXKBSy1Wvvz9VdmZNfN7S29/7MbcLILV+RcE0NzR3dZZa+A80dxJ9cTTZn8Jeluy3XWyyKFfTduw+305XNs+1gK5v2t3DvK1tp6ei2DXjF52qV4CXaovhOWYNwyK8ZYHqL1YtB8RqZcrk/0yH/5gS5bYVLXznQ6ltWyX4E1gtLvh8q+Zcnc+sDS6g+V1m7cPNc8Bun/uTMyaMcUvYvHz63dhSJyBjhn9xvH34FpEhk5lSYzV3AT0hEvksick3h3/eAJOZeihXjRd0OUVIwrweeK/zejUezpmbw4zajK7J+X2n94aw19cxaU88dH7yQSfaBtYB18Fv6y22Dc7HfaO/KsaBgtRA3fbanUzne2zkZ1n0mrQI6hOiiXtyXZIo0VD/L7RbKv9IZXVGW6XpqHTj+afFO/rpsD++5yDnUfiU8umQXjy/bw+Wnjufb7zmv4utbHRTZIuKssPgsZQEZwGrVcqNaNzPZpIHXwcqOFvin+5fwn9eewSkTSmtgDAPumWtuk3HX7E3WMgi/VZpzU1u3slXLkk5FuGEdMFtdseUDGUOx7saOqFNKJxuAyd4h96jLtoGe7Jx04Aonjx/Rs2bV7V7d3vGP3b+YiaPq+H9CnPO8YVj2CbXkq7w2yjmdYZjbDAB0dOU4ddJI4Rocf7vJc0P2jgdt4Soq3+IaQK946UvEfsr9eSnWiey46zXOsnfaPFgGmp6ogqdgNkC4JmRZD12xDMP5d3t3zu7u0oOXiUoRt6BZXt+VB17fwZDaGj5xxSk9x4YPCTv2dVtcJjD7iwfeP3yj7dB3gURZwkTkFuBS4LKKM0lkfl9QQG8H/qdwNA18jkTmjxXLw5tFcRnw7Wg89QngGiBVOH4qcMBLITT9yz7R7cMjbpHzRH7x8tayY5v2tyivS7J+u+QXqXZy8k2yq5dtHWwoXVJGR3fOcWZPbkWSz6arFPuFtfstf7sqoWrjdMey2K83gL8uM7f4eU4ISlRJtD6RWWvM+1i843AvKZ2RrQG1I9/eQFHZcalDLwPcVzeXgo24Kg0Si4A93TM7zY/wva9sk74r5c+1sgHBxv0tyi5PlXoXGBjUCCZF5SisHizxXoK1uE1UydfJycum5I7rMpmkalHMF0aBB1usEWrdtkOyrlGsjvShNrnyXGb1l30/5Mjcy4MOqPKx+xfz6QeXWiaq3AI6iZw03ra1TchZ2XVD3D7p0FFb9GFJMdyiYZe1p8IB9Xeq9LsYMdMuq6+RRjeVpq8+z5CCddjVU0By/ME3dkivUX1XrJbr0kWdWeuEkdtYQoXDR7t4auVeHl+62yrbGDyTBrc+3X4OEBH+3VGWKBE5Cbgb+DiJTEfZeRUSmV+TyEwHpgBjSGRO86okgjdF8UuYmu4vgR+mk7HiyP/DmFF1NIMAMRjF/z69ziWlIpKPtgqhkHsnZ8nG54+DyqCt7BqFNPZF1KqDDfFUW1eWj/xmIZ/90/KydLK1DvY9rdw2wHVi56E2i5Wk2llAN5c78a91++SRbmXk8wbf/NtqfvbiprJzI4equRTLsETKdBmYqw4aZCHNLZE3bUncNg6X8bKwptLucSff1VM+gA+HnO/dTVmxKsK9txmxvZnX9HpJeRkkaezZZyUKYIhQxZZQe76iPPGeQtgVPefrZXLtB6wTLIa03PK26TZhY6vTCl95p6ipTuTz8v1I5ZbQ0okdjUelrtX26y2RYD0MKVXWlJrlU5N3sKWT37++gwPN8jFgfS+Ttz97cRPffda6lMLex4jLKnKK1ihRIVlfb+2TZZFg3SZfNh1opeid3NGd47N/Ws69r2wtewp1YWfZbgTp8SrNM2/w1cdXccesDQ7lcS6QqpKezxs8umRX2XIcw7BaelW24XA7J5YnmzNc1s97+d6Xfj+xwrq3u3Uk4OU9FPpQl+juA5m/bci2ksg0C/86HZLNBCYDy0lEsiQiWUyj3H8X/lYf3CQyB4GZJCL/QCIyzmu5K3I9jcZTYWAccE06GbNP1X8d8L5pm6ZPWe9hYA7w9Jt7OXK0i09eGbUcF19iN5dQJ0Kh3j7AzgNC146xsiKUXePqCqvQK9Xa9u+xWD9c6ke81w31pivjfodJJdUZby+KsIyyAZiCQMv2ES6d+1EXV08Z2w62moOZevjau8+2nDvQ7NT/qiOG1XZbX6pap6KBUtl6pibaBZd2IVNcbOnk+8m5KGmSmeMpY5zfqchwu6KoVu6c24MRDsu263AbrFhdxZ3TdNkatJjPey86gYcX7bRfUihT78/fNYiPTdOs1IJbfj/OA7DqJ4ZcJhfcZEhly6+x7tFoTSgqPKq3FJJY49zdLNWEf/fZdew81MbiHYfKtqBQIZvLM7/gObBfUDbDtq0AThlf2nJGNdCSKCPr8iEXpdknJ0XunL2FSK6G9wGvbWlkX1MH+5r285m3n9aTJhQyPTi6c7ky2X7Ut59sb2xlS0Oro1ujygSHGwu2HerZ+/LZL1xdkotheS7SyRfXCWh5nyPbu1fd9VSyFGO/3PXTy1hELKcfyyoGMHOBC23HHgQ2Aj8mkXHWsxKRrwOjSGS+U/g7BDwP3FhI0UAich2JTMWWoYoUxXQylovGUy8C5wKHbee8mUg1fYb4PtkHOar87rUdAFx1hnU5qmrn7oR9Nt+Ol85Ltkef29Wi7JEuQW68dEteBkn2D7+ISgATcB9AqeBW969taRTSGb26SAXZobsNavN5q/uhCuLsfLfwrrgGyhDzNMxIfidEhhXqRbaXn5yq999SnGEuW/MmoFJr9okMmZukLAKdYVRgraxw4sOw+SXJLIr2v8WBoGxAeiDTwbTIMKHcpXPiu2ufCBPvr6m9izd3NzF+xBBOnlAa2LtZae2lcXv/HTEM6YO1y6p0MF6ukLjUt7R4zoqv631brpeXT/VuxOpRmTToLV+R4obgxS0oStc7C7A/Ktn8iH0dtChN1eVa7Cbtl4hLVCwWxV5ufFdrqHBN7xMk9nOuLvz9oB9Um6fbJ7KhpdQe7HVV5fa6FSjfYjo12bJPq5vnghdrcK1kCUHesPtVDHISmRZgrfVY5ChwiERmreM1Jh8Ffiz8/WHgHcDbgQ3AH4HvAP9YaZG8uJ6uAU7rNZXmmCbTbt1HzYsyp4qsg1FVuNw/Ss4fL1XFVRXLrLRwE8PqrK+gWB6xYxSPn2rbWNfto+3nZr/2zt0tpH3peuf7tp/zFHhBce1Z3jBYlj6stJ1Hb7LtH21Z/R452sVnH17O02/uA6wfU9WBkKwR2tuMTEFX3d/MzcItj2gnv0amzMluNZeX76Poplx4WY+Xc9lXVDrYkBweO8K+d6OaUiPW3bL0Ef7nqbX81yMrLOvS3PYZLHuPxPdfYW2l21pj+4RWpd1H3nCI+Nsjz1o2FYul27si20Tcj4Azsv1Mg53sUku3Zm9pizTLqx8yl5R8/7n1rN7TZJHnto5QRHQvFSdBwHT37SmrzLLvJltieXKbYPT7O+wnbltRiagqRRaroXDN48t2WyJqy8tj/XvJjsN88vdLWLW7ybXvlrkUq7Z1WXRd9/61ynGJi+fCccypWPdbvBl4gkTmDRKZw8APgLd5Eewl6untwM+i8dT/AMuBo+LJdDLmzadREziy13TmKZ5dl3uQuXep0NtafdnA3LUjU+zwVC0ZUuGKWJVQtQG82AGX16nzFKP9XsVBhafAK4r1rTJQdxugeokGZ3GTcmlz6+ub+e6z6wGrS4+qbLcZ894+UH9cmOb/XXKibf2QWjuT1ffwIdZuW772UExjtzY4P1d7lvKNntXagoolPWcY6pZCSXuUT1RYy+3mJlehnoiBIW3fri7gEnmHhWAdbu+KZU8728O3PiHnnPKGfV2SmE91AzDTs8D5entfq9JnyBRs+znVrZ+8jCdV9/W0n5m3qYHhdWGuOG2CY3q3fNxwm/D6/rPr2bi/hSU7DvMf15Tm81UjzlreFeGaUMj8Hjl921WVUNlkmVsZvEQBDxJZ2zb/Lh1o78rx4xc28rbTJ3D5qaWwwHaleH+mg1+/spUPXjpdmqfqhJb96PefM795335qLbfdfI5jOc+ZOrpnm6Le8pUhnQR1kedFsZNNfOSNatXOQUAic61CqjpAXHPzNsygOEX24XFnCi8WxReAi4FngD2YG0EeAZqobFNIzQBhWF11gT/sVLtRuJ1rz54kJLSeqws7D5OVg+NIjvvt9qceea900k0Rks142/MtRhK1iXYtq2yGV3xGM04aazmnUl/2LSeq7dzdFGlx3dvmA5WHyZa5nhn2c73cd/GsF0XYTbG3b/PifL1YbsN2TpCH8+/yfJ1/u6VTGWTn81aFS3X9icrki2HYlbneFVcnGb3lD7ZBbdklpQPpxqP2k4BtDU4FfaiYsq1LsEoqvu9uFuBKXbrKg2k5/3ajrSvXsz7O+vzlmqJoFXdrM3e9tJlPPLC41zK8tK4UwD1nG5TKEPNtbO3krpc288PUBmUrppeIrJbjhNi4v8XxnIoyZxiGpQziGsW3nTaBc6eNFtJaLuxVNrhNOtnLIaaT0z9r0+SRZMW/nn5zL8t3HuGXtijv9rZwx/MbWLGriW8/tVZ530vV91pWOPEZTx83wpLMy4S/ZVmHcMkltjGCpTheFEXhd9kWQ9qkCLAV09UUEpGTMfe8ny+cnw4c8iLYi6L4TuHfu4R/xb81gwGfXyx1a5wzbteIm0ir5uNmyZKlUy232vZtLgNzlzzFv8PC22nvtK1rSZwH46dMsH4EqvXj97I+RzzebHNXFk/Kori6UWMJvGAtwDVnlSYXPO1NKfy2u/OJ53oTnc0Z5hpJS9Q68frKy9bU1s2/PrSUVzY1uCdUHG14sZioRybtvThu7tL2a9yeiwzxlNum7zIR8rZtWF3XLbKqfNfyhnQdslM5iuw+LKwjk8k2rOuJ5RFZq3tv7DJUrZWPLtnVE+lZtX+uZAsMFTc+cVLLixdLa0fvCrsdmeyjXdYJNsv6V1u/KVMicwohlFfvyVj+tpfGGj1WOK6q4CpuF6Wqg/aHoiiboAWsz19oPw3CpJ69yPXCOlXrN6LyezvQ3MH9r263RLR3xipb1s841e9wB6OCbHsMN081T32LByX2OOPXwC9JRB7ADGKzkERmvXD+XcBKL4Irdj1NJ2Pze0+lGUyoWju8LCyvqQlV7T4i20fRoGj9KpfvNhEtQ31jZTV5XmTLXE/dXOaskRxx/A3l5T7UAS0dWSIj5d2ATDF3W0MFUJ9pZ9yIIVJXJj8Qm23WNhASo856yVdm4bK7G6p88OYLexua1zjnU1aGXmTf+dJmrj17svS8u/VDrQxWtyLxWcoHnlLFU5KP3XXI7ZpKrYN5w/YsXYPZOEtxk239u3TgT4t22WRLhAjIovq5lQ1DuXtTonwdYWXXu/X19jbnJtopanG566l/Cq4bXqyi4rPM5g2GKATTktW1PeiNGLTG/u0+e8roHquiKE+lD/z2U2v53vvP7/nb/iz93FvSfW12dbLteAlmJsPNm0TW7m7/+5pSGtW+1qUMbueeWbWPpvYuvv7ucyzHlRX7Xibine5RtrYyb1gDeakGM5IWTfhtt/JrtRFIZO4rbKXxHuBV4Lu2FCcAv/ci2ssaRaLx1NuB/8AMavORdDK2NxpPfQLYkU7GXvciU9O3iC+WahfqNuaTrXl6+xkTywbKdv6wIM2lJ7vNPollkAxC3a5xc3ORrG1xt5713i3Z3bZk5bZ/6GVltQ/MQxIXGDf3N/HPvU3tPLg5zJMHlvH3/7rKJtt6H075uFlCtza08OW/rOLk8SP4yYcv6jlun9WutnOXfTjsiIPuzQdaOGvKaGnakmyxTq2ZygaoMg62dFqenzVoiRwV2at2NyltYWG3PKi6GMnWsrlNXKg+l570dsucovKcd1H6RNkiruWWyui9LG7pQi7nLOnEYB9lgZ9cqLTcrsq3kmgpbmszsX0j1LbykPf3UtmKbS4UCrEsfZgjbd3ccN4UadoyNzeZTEltKUfqVqzt4S4RuTuzYoTmEqoWGEPy2/Ua1YRCZ7LJ7iLro2u+yKubD/KreVu57eZzy5ZLVIvbeyTS0a0WLcxt/aNKPkW2Hyx3bXcLhqXy/XDLWxqB3T6p6mHCRZZ32X6tWlM0SWQeAB6QnPtPr2Irdj2NxlMfAl4E2oFLgWKIs9HAt7wWRNN/XDQ9UrWMnGWNSOm3ykRed85QftG9dDBegkxU2/HYZ+OVo7VKrmnrsm6dY3GBkbgElQ9kS3+LG9zb71UejEKuIIl5zdtoTgzsOtzmOlgRZXtZwyfiNmMulvurj69SkiezKNrPqQx2c4ZBlzCA6xQGDmKdbNrfYnX/UpC9+4g8sIX6+j55lrJJA3t910giGqhaX8Uzqu+rihXJsJ1z20dRVjr5+kfr326D8YrX+lWrsWFOiqwtBLNy3WtV/O2qjPWO3YIrXv6redscj8vozTXY2rfI0zlRfFbffXY998zdwh7F98jLRIOqkqb6bZs4Sr7HryxStrKiKGknC7YdsnwzRJT32xN+t1hcc+XP2U12t8IWXz99cRNtXTn+92m3XQW8oTpR5HZNyOUvrzjVWTH6NsAyIVp5Lp93cSl2UBQd8pO5zJZ978XfXqzQLt5Jx9T2GAMQL2sUvw18Np2MfQYQnaEXYCqOmgGKzCLU2/53Pdconm3t7H0NSCXIZo7d+hrZTLTb+Et9Y2U1pLJd3bOsql4RMXqpez7CcZd7te+5pYLbsE02aFeNqOoFw2UAp+paqUJOkG1Q+Uy9aT0p/W3dH9OtLaiX0YnyCQBnK3RaEvbevMYiseeX22bcIsrPQaIcul1ieVdcEsqUVdV2IUtXiS6nZFF0ke2GbJC0taGV255cQ0tHd5nyJo2Ua3le9tbe+zXKLrMK2CcQ222TZbLnqvJO2geaze1ZSUprO3t+7X5pOss3Vahh1c3uq+0PAamLpZc1XXfM2ig956WorhODkn7CrdiffnApL6ytr7wgVSD2oW6KkAy3ehMfnds6w96UIqc8RAvuC0IbnrfpoNXDpZf+2qmNiuX+8+JdZeed5HlyKXa5XlsUg8WLong2pv+rnWZgbFWl0QSKzBKibs2TXyPOSj27qtR5qytVaoqZ2DdPGTNM+nFVHENWkFAsg8LgCcPFsqJYHOG3uHei/XqZUuzmGhMSZ55V615cF2DTE8R8a3yZeFC4XhBgd82tfg1N6XdZ/Vb47uTz1miCqgpB9XtguinpasdlHwj74FdluwW5wmU9se2gsNm9izKmMgC3r19xs+xXXt2GTbazANWJOLf9OaXPMtR7uZs7rEpQuWXfWclS1S3sz1vldu2TJ05k83nLff9p0U4Xec6/3fIX+7Mal5GQKO9Ac4c0nSxb1TX6CvFmzHwEcb9+ZZs8oYBoUVKV7ZrO5kZcKbJ1bebfpQOp1e6KoGildsMvRUJtik+O3QoqvitiP/HpB5dKZfR2L9VMMIp1X5+Rt3VZeWavd44WbMeT66nwWwez6Vu8KIr1wBkOx68GtldXHE2QyGcsVWc85edkH4tqZ+3Nc84fpZPHj3BKXrzKUbaqNc/1465wT2WKtGQw5nrfLvJkCWWz7Pa/3fa0srobCmUVjru5r1ktV87H/Ua2FxR4nP0WLRQuFi6VQVLegKgQgVZFuQC1chuG3DrkNvBUfl8V9sR79/nW9V1SJdvFhVM899iS3dJrZGWQ349csbdYq7pzdGStFiuLDAfK6re6LsNqmbP1P797bYfSdU7k89ZaVF1fal9jpJK/uotj75aRrmze0n802LaEUVkDLiObNyxWxfmb5Ovoqw3Gls0bzNvUwG1PrqaprUuaTnXts9jWlwtuhJsPtFgsR25tRi5bLd3vX0/3/FYNFjZmeCkkRq2gmZdN2KgVod8xXCZLZfzv0+ssf4uW57DiaLz3XLzXoJcrZdfY+xnZN1U5H5d+ZsE2T7s+aBTxoijeB9wdjacux2wjJ0TjqY8BPwPu9bNwGn9R9BZTQtVNxg/f8cU7Dvf89rJ0RyyruNjffr2X6HbSPG2yvVhtVQbZrteUzdSWfodD8hldyzXCb9c1WEK1KnpWelLg8nmDl9btZ29Tu+X6Py5MS6/xop/KJhfMAa5zOhl5Qx51b4nQtp2u6w3F+QOHoElqyB6lWLaampBLRES1fFQtnNL1hqr5IH+n1ti2Byilg6OdWVps7mD251O10i/8tr9rLR1y10gVVzR7xFrVABYq1Sr2qPbAPe4TgO5yu7J51++MbC3r1obe903N5w2LF8JzLpYr5WA0kv46nze466XNrN3b7Oqa57Y215KPUmm84cX99fk1cndcq2znfPyw9rV2Zvlhaj0LtjZWL8wFWR9oPyfDvpewiPIWUb1UmF/WUycqGRc9bPMAkD1/VdzWKGoLo0Ai8ikSETcrSsVUrCimk7GfAE8B84BRmG6ovwPuSydjv/SzcBp/ka398TLIKpctuUZZtpz9gguEarAFq2WtxEMLrLOsOw85BzFQdcd0SySbAbN3apNGl4ITyNZ0KVsehd9ufaebdS8kC2PmIttqrXR2a1Xdt86NF9ft5xcvb+WzDy+3yB4xxBrAWTbQ8hIlXfwoNXd0W/aDVBlE2p+3eM3KXU3S69SsOYb0WYr5vr6l0TKAllrgbE/F4iYrcUu0WzVlgym3PkJ2q2XHJe+U9HoXxV51bJE3DG757SL++f7FdEqsjr3JU5kwy7v0EdWQN9xztzQF4feq3RkOtpRvU1Eu30W2B/fnIl25vHutWTxASodlQVdEsnmDbhfLqiQb93SSa8T+o61LbS1kkIP9/kL12+Tl3h9bsotF2w9zx/PydZV+4BoUqtqH5pPDTTVLFnq7NJc3PFvYLc/fg9HCi+fCccodwH4SkQdIRK70Q6AXiyLpZOx2YCLwVuAKYFI6GfsfPwqk8Y+Wsv3NZYNDNdw6kX1Nctc/NdmVf7QNl2GI7KO9arfVarBDCOTx6JLSbK9bP9TameXRJbvYW7jnhpYOjhwtdymSreOwix47vM4xHy8z87JgOPZzopuL/cMidWV0ce9SiXRrvwUvs8qyaK03urg/ikwaPUwpH1mdHmrtYoWg3KkU274VwJMr9iiV4ZlVauuK5OOLygfp9uNSy5NrlNnSb3EixjBMK1FXVn2UsH6fSxAnhUZjXwsnXvP40t0OV5QjRqk91Fp6z+1VcM/cLY7Xh6DiWZFtB1vZ1lAe5t6J3qohmy8PU29V7OWD32rzlw0IVQabTyzf68tEoxO5vKE82FRN98uXt/LiOtO65mmpgXBuf3O77Zy87/WTIIff4jP/5bzSu5K3Nci1LoHbZBxy+P4GgfzrWj1+re2vplwq1y5JW71g3KLwWoVX2c8Iv7Wi6Mp04OPAOGAeichGEpFvkohM9SrQ0z6KAOlkrA1Y5vV6gGg8dRvwQeAczO02FgDfTCdjm4Q0IeA7wL9j3vhi4L/Sydg6Ic1QTNfXjwLDgbnAf6aTsT1CmnHAPcD7CoeeAb6QTsaahDQnA78C3lUozyPA19LJWN/0Qj7z5iFrxyPzC1d3rZGfc3Op8JMHXt/R89swkBZK1W1TisvN3jd/G905g78s3c2jn7mCWx8yX4NnPm/dj1Cm6NnrOyfpQGVucuVKmvNApMxtz6LMOW9If+nJYy3r/WQWIXvtWPbsU3RrFVGODGipkxK1Nu1UPOe2SbJKPm6zn70FWzDztP5t30A7KF5ad0B6TnXSqEZyzovF3TAMPnr/IkLAY/9+hUWW7LGs3Wu1DlkGCwoTDeVul5X3BaK7uszF1g9EcW6upmXX9XL+y395kyc+J59Y9mJlFVE0zFnzpPd+ec6GA3zyylN6/n7nOZOZt7HBIqNIpQPPbN4gXKN2jd2Fzo1fvryVd59vHY+pexCU0q3ZY233ubxBbdhsfIEqc31kyjzaWbLMt3ZmLUFetii4Dtuxl/uFtfWMkUzAVkpXNs/cDQe49JRxvVgUK5dtCWajeE1v+VSjQ3V0yz0mZGnqwpWbQlUD5Yh42e7luCSRyWHqN8+QiEzGVBo/BXyfROQFzH0WnyWRUZ6xVVIUo/HUk6oC08nYB1XTAtdgKmZLC2X5IfBSNJ46L52MFadTvwF8BfNGN2NuzzE7Gk+dnU7Giiu3fw68F7gFOATcCTwXjadmppOxYqt+BFPTvqnw92+BhwvXEY2nwkAKOIgZmGcC8AfM9/cLFdzTgMAwDBY31BCJlI75uWXAjxRdPAxgeF2Y9l46IC/FUb3GS5/idk3RZSmXNzgiBCfoclkEKgvLb9d1ZVY2d1cdZyXSfolFeRL6dnGrg0mjh1oURdlgzO0jaXU9dU5jx/1cyb1SVleqqCoKouifvbRJnlCBXF6uCPmBbCLabcAlrQbbcdmempZ96xRdsMRgJEfaSu4OldSNbP2jgUFrZ5aO7pxlhtvudfDkir3qmRWQuY27zFOVoZLMa8h4lcusEznyyRwvk2puVzy0IO18jWK5RcaNsA78rZZrNetrkWoD1LiRtbnMim3GbUJVvMYexTlnGD2DtSAtikFqobIqd1unrYpYJWv3ZpSjoarwl2W7eXzpbkYODfP991/Qc9y+pUq1VadsUezl+VfTPl5w2f6liGo57Ww+UPkEgIjbZLtGQiLTQCLyBuZuFWcBFwIPAU0kIp8mkXlFRYyqRVH0BQgBHygcK1oUZ2JujaGsUAKkk7GbxL+j8dSngYaCvFcL1sQvAT9MJ2NPFtJ8EjgA/DNwXzSeigC3Ap9IJ2NzCmk+DuwGrgdejMZT52IqiFekk7HFhTSfARYWFM5NwI3AecBJ6WRsXyHNV4GHovHU7elkrPeFDwMIp/cobxvkuKV1QjkqqAfZXpFbL8TflRdCtSOqE3w4RZc6+4DrT4tKbq12xU4paImiAph3uW/ZFhauQWokkwvl1krrQLRUHpdyK3b8htF7QBr7LbhGwVRATHW4SrcmwwhuO2Cv75fqdSouit70G5vCpVhDbpMqH/3tIgD+dOvlVZXNjuxedx1uU5pNb2jpLIvY6YSXonqxvtjrxOrRUHkZvOpcasqzkN6lz3l1c2VBTOzuuH7yi5e38t6LT+j5W9X6IbYz+/rJY8GC0lebou+tchmMncXbzYiaRztzljt45k3rpFO1FsXnVituYVJ5NoHRlc2zSxLnwU61z0WsXy+eIccVicgU4BPAp4HTMOPKvIdEZg6JyHDgB5iGsFNUxCkpiulk7NPF39F46sfA48Bni9a6gjXuXsy9FKshUvh/cYrpVGAq8JJQls5oPDUfuBIzAutMoM6WZl80nlpbSPMi8DYgU1QSC2kWReOpTCHNpkKatUUlscCLwNBCHvPshS24vPZMXw8/44pR7VsXkc1m6e72d9P5SunOmvmLH9OF2xt7XrZcLtdzTrW8Xd3ZipWuXC5H3nCPXgfQ7VW2pMMQ78mL7KxQP65lyHb3pOvqKv02DINczvm+u7Il2XkDS7qu7lK5u7pL8rqzpXsw8nny+bxwTniWQrnzeevauG5Bdj6X6ylne2dXT7pcLm95XtZ2Uvqdy1vvrau7m+7ucE/5eq4R7iFnq1OxrOK5i6aPYbXgetXd3d0TNVSULT7XbNb6jHNiHYvlyeWV2rpdXjV0ZUt17TfZbLbsOavQLbm/vJEX3htrHyLWiaXuC89O9pwd8xeub+vMsmV/s9r7Zmn3ecf2uHl/k/B+Gcrvsoys8H52Cu25szvHeoXAKap0C7L9Ruybcvmc9R0V3+sK2n3xmecNLM9Bpb/v7M7SprBcQewD7c+xmufa2dXN0JrK3xsV5m44wLvPm1RqJ13y5yr2ReI7Yf/WdnR2Uxcqf/f8psvHfg9K7aKrq8vXPlWku7vb8g2sDTk/V69jsrZOsd8rPcvWDutzFcccbn2gWA6x31Rdm9lbu8/l84H2Jblcrucevv3UOtbXt/RyhTvTxgzFMHp/Pt3iWEvx/vp7HF4km+2bpVkAJCLPAu/G9MC8H/gjiUzJbJ/ItJOI3Al8WVWklzWK/wpcLbh0kk7GctF46i7MNYZf9yCzuBbxLuD1dDK2tnC46OxvX2xzgJImPBXoSidjRxzSTBXSNFBOgy2NJZ90MnYkGk91CWns3Ia5fhKA8Td8lr1bFzF37lwmTpwouaRvMPWnMM3NzgOZ9euPkMmY1rCVb75JzZ6VvcrsyEImE66oHJu2NtHYGup1Hcv8+fMrlr11SxOZTGlKbmStwdGs+bd4T40dlZd76zar7NoacIrBMXvO3B7ZL740u+d3BljTfpjM0XKLw5bNpbqvCYFx1CDTaaZbsHAhDYXVtztbS+X+6p975jio72yiuRYyreY169aV5G3eXCp3rs2gtbuU/7x585hQiOWyowWK7WPOy/N68tm8+QgNrSGau8zrVq8pyd4klHtfZxOZjpLsuXNfZmxhymRtQ6gnnVg/YpsD2LCh9PfGTaXfu3NNPfcGkHr+eYqGm227anrub/6rpTazYsVKi2xRnlg/7S3wzHOzeHV/iDPGGJw8yv50TNItlbcZGZs3NwGGpXx+8eaqVTQcCpHpqswdaIvt3SlytAZmzZolHKnp6UMWL17Scw/LVqwQ2twRjjTV9Lzj6zcc6fVe586da6nfuavVBknbtjeRaTHLvau7iUyb+TudLh1fsGBBj+z2Gli/vrGqum9vydBVePfnzXvFt3Zh5xUPfaAqL774Yo/sbVubONIJmXazvlatLj2vWYtLdepG3jDIZMxnlp9GTxtZv+4IB5pCtHS7y3h2mdrznjNnjrT/mLfc2k9UwgPPvsqF443A6vu1V1/tkT3/tdek+Yjv2uHOUp+zYWuT5dvx0ksvUdyGcFuzf32THfEd95OXZs9hS3MoENmzZs1i246anvd/xbKljvlY+zV19h+o6WnP818tPcstQl8EsHLlSthtdoIb9snvVSxHY2MN7dnK2rD4PXMikzHzCKqNLF2yhObN5n0u3Fh9HpkMbNwdpr5tNieMlKcTx3GLlyzrtS3Vln3L+o/GxmC3bbHRAFxDIrPQJU09piFOCS+KYi1wLqYVTuRcPEZRLfBL4CLM9YF27GpGyOGYHXsap/Re0ojcgancAnB49m+mARuvu+46TjzxxF6KFyztnZ3cteYVxowZ4xg+/9xzp7J1temPfvHFp3DzxdN6ldnSkeXhvZXFLzoMjBrTe7q3v+MCnj24tveEAnsNLGswxwyvpbawbkC8p12H2/j7gdUVyT711HE07CjNPYweVusYYOJd113CX+pNhfS66y/lkX0res41Yy1fkTPOnMjuTWbHUVMDk0cPI1dY3H3FFWfx1uh4AFbtyfDSoQ1l13cDTYLsc86dxuYuM6jK6WdMZE/BDWvsiDrCwlqwa669iJPHm9vrLNneyBM7ljNmzBhePFJLJGLO+5x11mSO7m4iVIjuePa509jQWV8o9yR2bTQ3pp46bjjdwlrGd75rBtMiphbasXIvq9vNiJIzr7yASL35XMU2B3D2OVPYvvZAmeyTpo/hiGBRvOmmt/a4+G6eu5V9hft7+9sv4JkGU/aMS6IsO5ouyT57MjvXm3ND5543jU1vmvcwtLaGP+0zQ+NvOwR//8dSUBWRlbubmH3Yn1Drp58xkZoQ7Nnk/8fiootOZt+6A6Dg2igyYtJIIkb5uq66cIibbzZdN7u7u3lk69yePuStbz2T+U1mtMJLZkRZ1poG4MyzJrF/S2OPu9zZ50xh2xp5IB2Ad71rBo/Xv1lRmcHsT4rt/oRJI2k7aN7DCSeM5sg+c2b7ired0/PshtXVcM45k9nSpbbXm4zhhf+/4x0X8nTDmqpkybhaaM9+c+O738If9ph99+mnT6A+00F7oe525MM9738bzn1WD4V56VAoRCQSKVgUj/S0kfPOP4FDWxqpafUn/tt1113CY/vM/vW886axdVUpeFSmt7K6sKETvuixDarw9reXvmdXXnkezzeud0x3882l/mfPkXae2L8KgBas93b9DTOJFIKzLE0f4eUj1a2blvFaxnudOmEYBs3NzVx//fWM29PCq03OkYGr4aabLmfprI0cLkQ0v/JtZzG/aXNZOrGuK+Hvh1b0tOerrz6fWY3mTK7Y5wBcPOMUbr7IHHPsfyNt+dbJyvF4w3Iy7ZVZvezfUScufNtFRHZWNuZR5fLLz+TK0ycAcP/ORVXLK7aR5w6O46mPvE2abueh0jhuV3gYkYh7QJzkB87n7Kmjqy6fH+zdW/naeM8kMrcqpDEA5ShdXhTFB4HfR+OpM4BiK7kCiBfOVUw0nvoFZjTSd4iRSoHi2zAVUwMuMpmS9W8/MCQaT42zWRUnY1o4i2ms8fNNJtnkXC6eLERKraPcogmYbrBAzwgt9OP3jAaora2lrs6fiFteKUYRC4VCjopiOBzuOV5bG1Yqbzjrvv9eNdTV1vogu3Sv4XDpnsLhymWHQjWWa/KG873XCuUOK96DKDtkHuj5e8ehDv6ybC2fuipqeUZu1NSU5Im/7c9ebJe1tbU9adq78z3p5hSUteLfT6/aL8iz5jN8SJiOwtYBYUH2sCF1Pek6cwjXWO9HvD/ZPZhlraOu1lQUay3ttlTfIds1ljoW8s1jWoaLf8vavZc2IyUU4pXNjYG8O+FwuLDhfWWytx5sc7wmFApZ6sSg1I4sdeLwvEqnem+3dXV11deH0L6b2rM9v4eK7S9r8NyaA77VfY3iOznQZNfW1gnvQMjyvojvfyX0yDOENlJTQ9j2LlaD2Obs/UK1iHXiN+K3IOTyXMV3LRzulqYT+27V78KAoias1C94Yd6WwxjCt79O8ly9jsnEdheuFe/B2h5rLGMOtWfupe+2f+uc+MGszYGO1Yr34GceoVCIHDUMq3O2Uor9Y32m0zXvt0THccFJ430rW7UUx1uBkYj8t3razD2VivdS+q9hKlVfBopmqHrgJ5jRRpUpuJv+AjM4zrXpZGyHLcmOQl43ACsL1wzBjJb6zUKa5ZhGlhsw104SjaemARdgRkwFWAhEovHUW9PJ2JJCmssx10QuENLcHo2npqWTsaJSeiOmIri8kvsaCFTinq6cNhiXd9+wby2x50gbU8YM8yWiqqyO3CKBypi36aBNdum6vxT2dvvO0+tIvO98JXkHmksza25lEJdzetsvzVq/FnnCH0NrS44FYrCfxlar1cuwlMf5uL2ssoiqZWWVlFv9s+ZfYxdDwQeDfx9rt7uWBwjyLfuKENtMbU2pnQ2XDDT8ztNvgqxHUfSCbYcCk+03QcoOMnKiGLgl52V3cbs8sX+sWlrf85tXd3D5acEsx1mwrdHyLL//nLP11iti7yo+hymRYayv7/sYhyp90MEKPUwqZV9TO6/YxjF+0NqZlSqKlRDy8Zs4SPiyYjoDc5vAiqhYUUwnY3lMpfAn0XhqTOGY17flV5jRS98PtETjqeJawEw6GWtPJ2NGNJ76OfCtaDy1BdgCfAvTQ+aRQt6ZaDz1AHBnNJ46hOkc8zNgDTCnkGZDNJ56Abg/Gk/9RyGP3wLPCXs2vgSsBx6OxlNfB8YX5Nw/2CKeqiDuseZlbzm/8UOy+D1esPUQv389zcUnRfjXq5RdsUuybHViD1deSlf67WXckTfcOn41gYu2l9YpW5Uv6/Vue0CpYL9X2VYe4m8xWp99gDprjeAkYCmbWnlkedr/Lt/jsW+HWrK24wd+34lqs7BvE1GpDD8G6bL9R4NUAIKUHWRkyyC3VLAX28+c3N7xatnRWNmWGpVg7QPVrnGN/CyRPViYv7mRy06dEIjs7lyerJfNPD3w7KpSrMNTCss4+pr+fv6hUIgv/+VN2rr8nwB1i6ZfyW0PNoN71SQylQ9yK6CqlcXpZKy5SiXqc5hWvVcwrZLFf/8kpPkJ5j6J92Jux3EicKOwhyKY2vRTmBbFNzAVyfeKAXeAj2Eqjy8V/q3GDB9bvJccEAM6CjIeL8j8WhX312/09lKJ+xqqdjyBznj7IFscOG7cbzaPVbszngYuy9JHLH/L+i+ZslQJflpq/Nwrs1y2dTBuGbzYtjsoklMshLV+7Qpu6XdNSEylphyIsk8cO1yarsiuQ20knvFvVjrI2U1zj0kf5Smeszwv+4SEwhvnh04kvnuWvT8D7KcCtUINQgUAArayWvoVfzNKKu4F7AXxWf55sdpSILe2taOxle0Hza1Q+mqbCb8JqtTZnBFoGxQRJzv/uMj6XL1Manhx3ezvPQRDIQJREqGX708F93286YlBo2RRjMZTK4DrClFAV+LyPNPJ2KWqmaeTsV6fZzoZM4BE4Z8sTQfwhcI/WZrDwMd7yWsX8J7eyjQoCKAzETeX9xs/Pn7V7p3nhkyGZebYYz5SJdSDLDfF1Q/rp+xvmWzVunefTS+dqxE0RbcPs8zCdObkUb1aEn44y1/XpSD3fDLw+aPo9hzEOrXdU6UWDz82PJdZ4AarMhesJTQw0RbZe460++r2FuTEV5CIfdb2g2qWS7fBd3Hi6m+fe9vg9D2FwMrdX3vqlfeBlZdjMCo0QZbZ7R2v5P0/7iyKdhKR6ZhxX04GhljPZb5SqThV19OnKQVtearSTDR9TyVdlkratXsz3PZkMNH+wJ9BgNzq1zeyvSqkskGzl8G0zMpnP+ulqGVKqOVv55l/Vcucm6KhUg3yO5WvhZRx+Ki/EyKd3cGtUdyf6aA+4x79zS+sFkVnC7KyrADfySAJ0j00WAXXX9khizW/dHzxjsMOqf1hMOlHXqr7Fy/3HhG0vSs3qOpBJChLaC5vWDxN/EZV6RCfueo1XhSablVf5kHI7A0HmDZmGNef5xR7Up1BF+zJTxKR64BnMGO8nA2sBaKYOv4K+YVylBTFdDL2XaffmoFLZcFsek8s+uYHwf8+XX1YeKnVr2rJcvJ25ckDfg4+ReUyb5iBPYpuxtaACJXnKbrdGNhm+4V03qyVpYvs9SE+V0swGxclfd7G0rapojwVq6/fykB7gIri7PXu21BUiuudK1iQQW2Cww+laL9EQR6saxSDlB2k1SXIYasflufBwr6m3id8cnmDrQ2tfVAa/9l5qC0QuTnD4KozJrJN0XIbFEGupxWZu8FpS/C+oyZArfzxQjC/q8+caAlqU2m7P47VRDC37buTROZ/SURagA9h7q34Z+AFLwJ92/00Gk9Ni8ZTv/RLnqbvGAif4uI2C9Ug65xf3hhcx+qLoii50MsYybD9IVs7WO2HzK6YGVVamMSL3KyDdWFxy5LSmT8ulK8DsiqhvbczvxXFCaOG9J5ogKC8Xtll7ZhK9Q1eN8vghHcHGJDDb4XLQHwPfRUtz3MgfKgUCaqsv35lG39bvqf3hAOQJ1cEtJecAQt9iOS7t6mdDVVEMR1EzbMq+kIJs3+Df/vqdu59ZZu6gONbUzwX+EPhdxYYTiLTCvwvpd0iKqKiqKfReOo84J2Y21E8nk7GmqLx1ETgduCzmKZOzQCgIouRAdsPtjJ93AiG1ErmDgbxi5daXd97Io+Itfy35bs9yZAN4rxY/ZbYXL9klp9qB3flVj/xd+XCLWsK7bIF3W6oMMvYmVWbXBDlqXjt+D3wXVXYCHqwI7bHx5aU2rphVG6tHqyWuSCVlWcC9NqodFPvSuirIGeDKYhLUGUN0rV3sJLLG+w6XL218rMPm7ug3f8vb2FqZFjF1wcZWXgg0R9enZYI6Qoch9tjiBwFhhZ+7wNOB9YV/va0R42yRTEaT70Hcy/DXwC/AZZF46l3AhuAGcBH0snYeV4KofGfSvqsF9ft54uPvcmPZm2QpjnOXzwp4sfBvj+iKrKB7R2zqovKlzcM6ZYY1Q5k3ALbVCvPbmEVy2rd00otUzGVH3uaHeukG4861q1MyX5tS6Nl4kBpTWmAY6qOgCLyQbBrFNfsCW5C4bevbg9M9qzdwe1b+ezqkvI8mMbhf18ZkPVMU4bfE0N7m+xKp9rYZxA1z2Oe43mJIrAIuKrwOwXcSSJyO/D7wrmKqcT19HZMBXEM5pYRpxX+/lA6GXtnOhl7zksBNMFQSafVUIhSt3znkdL1ts73OH/xpPizrUf1MpywryPcdrCVxDPrzDDrVSt2VgFbGlr46YsbOdDc4TFQjihbfk489d1n1QLliIP7/oqQN5j4wqMrHV257pnbe7ANQOmlSAe0XgngjgC3PXh5U/+uD/LKtoPBrWvrCnDu5YW1+4MTHiD27ZU0waHSpVfm/u9xsCOUY0tDizxd9TlZCDKQjxN9ESim2q/0cT5c/QqwuPA7AczG3HJwJ3CrF4GVuJ6eC3wynYy1RuOpezD3N/xSOhl71UvGmmCpRoFZv6+Z7z+3nn97+6lcd64Zfeo4f/Gk+KF3BBWwwbBZFO+bb1oV1tc38+9Xn1KVbLuiWJS990g77zhrUlXy3LZe8ILFWqkVRSV+8+p23vLxGZ7qXqWKl6UHpwvdgq3Vr4XqD4Jc/6jR9CcqFkVZknkbGzhp/HDOmDy651jWh6iiG+oVFUUflK5QKNSn5vYd/Rw0SIX1Vaw1HfQkMtuF323Af1YrshJFcQzQBJBOxrLReKod2FxtATQDi1+/so3Xtx6ktTPLz+ds6VEUNc709+a3bhg4K1l+hFiXeXBuO3jUU/Q5UaG1K3NiHXv5rIqyg7YoGvkch7atprP5EEPHTGDC6RcRqgnONS8ojhztYv6WRk/XDuR3QjN4OV7WgGkqQ2W7CKeWs2p3E3fNNoewT//XVT3Hf/HyVi4/bULP3wea1bYfqnQ5x5Mr9viy52hNCIJzti+nmoA/fcWh1uD2/B5UJCKjsHuOJjIVP8CKgtkA50XjqamF3yHg7Gg8NVJMkE7GVldaCE0QePuozlpTz+hh5c1Cu546M5AtVHlDPtFY7ZhLZZuJSjAsv+WBcrxgiXoaoGWlftV81j1xNx1NpbWqw8ZO4vwPfZFpF18TWL5BMXu9NzdLpRrW/YmmQnYfbu/vImgGIF73FRQD4DQJwZ68Bn6q5DuVzxs8+EbaUz52wjWhPvUY6It9HPWkUBUkIqcCvwSuBcSoTCHMz3PFM9eVKopzsX7ii+sSjWoKofEfv98zHczGmYFsPXFzaa22s/fbXda6hYX1XLWBd8StV9wsio8s3sWjS3Z5yqN+1XyWP/Dt8rybDrL8gW8z89YfDDplsTbs7Z1XeicG7mvjSuyiaYFGUdbIOa7dyTRSjnb2bk9zUjzEI3e+tMlT3qIHyfrac8nNPJFwWD4Enj5uOC+sref3PimJ0Peby6/Y1RR4HoP08zBQ+HPh//8KHMCH6qxEUTy12sw0fUc1LcNpoKctis4MZIuiG7+ev6Oq6/1WkMVqtMuWBbNR5c3dTT2/7VFPdx1qY2n6MO+9+ATPSqKRz7H6sZ+4pln92E+ZeuHVg8oNNX2ojYb2EKPrKrtu/b7eB/SD4b2JThxJutHqRr14++Bco+g3IT2U0xxDrPYQcdjuQbLyD/Dgj6Zz9913A5MdrzEM+NW8CvYDVKCvg9n0BQN4/n0wcBEwk0TG2+yHA8qKYjoZk+9orRlwVPOiZXXgA2UGskUxSPwe54suofY6zeYNmtq6GDtiSNVfEHvT/q9HVgDQ3u19lcehLSvpPuquHHUfzXBoy0omnv0Wz/n0Nc3tWU/Puamtd9etjmxfrqrxxqih5Up9o177otEMOvz+TMs8SPbu3cuHP/xhLv3X7zt6kASxv+ax6O1VreupV2+YY4SlwElA3yuKmmMLt6Ab4kB9b1M7J44d3l/FHPD0gbv+gMRvBVl0K7NbmxLPrGN/poOf3+ItCqeIbB/Fjfu9u7U1bn1TOd1gUhSDZNXu4PYM9Iu+dukaTBjH4OBUc+zSlfXvQ23kc6x74m7nc4ZBKBRi3RP3OHqQBDGvHA7QpOgUUPXikyK+9N9BBmt938UnBCN4cPBvwG9IRE4E1gLWmdtEpuI4MlpRPEZxm7nqLeiGOE5vD3Dz6mOB49WiGORt2+t0f8aMOvfcqnoiw6vrsmTW8sHgCjk1MqynLjTBcyy6dGk0xyNdHmd0nSxbh7attoydnK7paGrg0LbVTDzzEus5T6VwJ8j5rFAoVFYHI4f4ozYUg5o4cZwOq/xiEnA68KBwrKo4MjW9J9EMRmQvWtFlwt7RFYNu1K+ab92OIAR7jrTR0pENsriDlqD2QDyekW29caStyweLorOEzipmnCeccUnviSpIJyOsLVx9iq5vjebYIJc3PE0GOl3S2ay2TtkpXRDRPGsC7KecPDj92mLKzWPjeJ2A94nfAyuBtwGnYcaXEf9fMdqieIzi9Jq5uUwUsbtM1Dd18OMXNgZQwmMDrSf6j2zrjc5sLrBtPTq7vSuKE8+cQd2IMXS3yd1X60aMYeKZMzznAVCjp/X6lCBdT0+bNJLtg2Djao3mWGHJjsO87fTS/ogqSptTdPChYyY4pCxHNV21BOn5YCqhtpgBPq23cdv/sdph1XE+xXcK8D4Sma1+CdRDj2MVDy4TQI/LRJEX1+33vWjHEn7vJ6iRf8DX7m3m7yv3ViVbthGvuKdWpYRqwlz00W+4prnoo9+oOuKpXjPXtwRZ3aOG6jlajaYvaWqrPBCVk6I44fSLGDZ2kvSaUCjEsLGTmXD6RWXngphYDnKNopO1snsQzI4f59/Kl4GL/RSo9LWKxlMrgOvSydiRaDy1EheFP52MXepX4TT+4sVl4jiPHtUr2vXUfwbDekE70y6+hpm3/oB9j/8v9S2lwcXQyCQu+PAXfdlDMUgXo8HK2BF1SlFWvRBkfdeF9RytRtOXDB9inag72NIpTfv6lkb2NbVz/XlTys6FasKc/6EvOkY9BXNwfP6H/ttxYjCYjeQDVBQduim/LIp14Rq6c842Re16WhXPAv9HInIhsIbyYDbPVCpQdVrzaaD4Vj1VaSaavsfpNfPiMjFED2h6GDW0ltZO61rNwajUDHS6B+n2LNMuvobnT4qybsd+6lsM7jnxx5ZowtWi1cRygpw51sFsNEFTjJKpCR67Ff/pN/dJ0xaX2xxsdVYmixOD5UEBJ/O5+PfYMuJ8x+uC+LIFOURzslb6tX3akNoa2mTBEqvM4jh/pX5T+P//OpzzFMxGSVFMJ2PfdfqtGbg4TcgUXSbc3E9lLhMa59k17XqqEampqeHaqNmtPjKhuuA1fUldODQoFfTg1+cEQ5DuYn1BKJAh7/GHYRz3g9o+w0uLfWGtfOnNtIuvYdp5b+W6l97LtsN5VpzwT4y95tNsqR0ivSaIieUg91F06gP9CmZT69IHHtdrFBORzwGfA6KFI+uA75HIPK92fcb3qYOKBUbjqetdzv1HdcXR+IXTi1Z0mXBD5jKhce40/7psdz+UROM3F02P+CMoUMUluEHlWVNGByM4YIIcEARp6RnUAxmNb4gudpNHD+3Hkhz7+L1MpH7VfOZ8/2N8+cVOfrm0mwVP/4mXv3cL9avmS68Jwk0+yCBnTmMev5Rdt8my43z+fQ8QB95S+Pcy8DSJiLOZug/wsqI+FY2nfgnclk7GugCi8dQkzJCsVwH3+Vg+jUdkvvBuLhPnf+i/y9ZSaV/xEk4d24Fm+TqHSqgJ6Qiq/clgaOehUMh176nqZAcgtA8I0uoXqLUyQOFnTh7FlobWwORr/EPs87V3yuChuM2YneI2YzNv/YEv69JVCHJCy9H1VLZ/VYW49d1u+4Af8yQyz9qO3F6wMl6BaV1UkBG5BvgacC7mkGED8FMSmde8FMmLovgO4GHg+mg89c+Y5tHfA+vxOdKOJhimXXwN0y+4nC+9+X7qWwz+NO0bhM58p6MlcdH2w77nX1MTGpRBYIIclIZCoeN+Gq0/qWZ7jL4iBKZGF0A7GazrpILdbDpA2cGJZtQwHVF1sCAOiHX3HyxeqjdcEyqzoHnZZixI+nqyzK+hm1u57XlU/NkboN+zD59bO4pEZIxwqJNERm5tSETCwEeAkcBCpUwSkY8DDwJPAvdgfm6uBOaSiHyKROaRSstd8RclnYwtjsZTl2AumFyO6b76beCn6WRMd3UDhN4eRKgm3LOW6uWx57O/D91NwyEY+MPycoJdDyXfU0gTPF0+RXIL2qkwKOmDdclcsIOkgCeGAqIvouMa2nnWF8TB72DwahjM+FW/lWwzNvHM4Nep9/U6bb8m+Stxma3Uk2ag9k4PvH+4fVPy7wKJsoRmxNKFwDCgFfgAicx6xWxuB75BIvN/wrG7SUS+AvwPULGi6NW7+WzgMkxf2ixwDjDCoyxNAAzkb85gDfPf1y4emr6jo3sQqOkBrlEMMiBCkAxWq59+3Y8dTp040vO14nd6IH+zjwk81K+Tcullm7Eg6eugW365SLt9c4LZRqT/ufXp9nOAiPDvDknSTcAMTHfTXwN/IBE5TzGb0zC3yLDzDHBqJeUtUrFFMRpPxTG14N8CXwdOB/4ErI7GUx9PJ2Nq5lHNcUuQ63OCJDxILQya3vFrrakbI4aE5eHAFQgFqM4N0ldy0Fr9gnzdB+tE3GBlWmQYOxqPero2bxg8sngXi7YfKtt6SeMvXgxhTvqKl23GgiTYCa3ggtm4jQOr1RMHahf4tw3ZVhKZ5l4TJjJdwNbCX8tIRC4DvgioBAzdDVwnXF/kusK5ivGymOGLwP9LJ2PFUK3rovHUW4EfAa8AOnTXAGAgz8gEqXAFSZBWv8FaJxorbi551Q7gzainwYSzGawTFYPV9TTYSafARAfKVWdM5I2tjf1djIqp5t3JGwaPLtnlY2k0MvxyPR1o24wF6sbuMObxK3Kr23CqakVxkHrIuBBCXbe6E7iHRGQGsABzwHA18ClM/a1ivCiKF6aTMUtvnk7GuoGvR+Op5yoRFI2n3oFplZwJTAM+kE7GnhLOPwR80nbZ4nQydoWQZijwM+CjwHBgLvCf6WRsj5BmHOaizvcVDj0DfCGdjDUJaU4GfgW8C2jH9OP9WjGyq8Y/htXVINnHtmoCjR4aaBTE4GRrBgZ+fM8H4+dveF2Y9qBcewdpMJsghQ9e63B/l8Ab1ZS7P6dzB6ti7hW/FMXiNmNOUU+L9OU2Y0HHTghO9iB94YMmEfkR8Dym9W80cAtwLXCT2vWZX5OI7Ae+Cvxj4egG4J9IZJ72UiQvwWykPUs6GZNvIOPMSGAVZoSeJyRpXgA+LfxtV9x+DrwXszIPYWrTz0XjqZnpZKw4OnkEmE6pon+LGbn1vQDReCoMpICDmJr3BOAPmMOQL1R4TwOCgWtPhKG1wXWgNTUh8gFtHB6kFSBYFzq9/mUgUO0zDrmsUXSKzjdQOGfaaFbuagpE9mDdHkPWl9SFQ3RX2X8N1gHYIC12VeV+YY18Q/egGayKuVf8/AZWus3YYKW/PB+O88BOUzD1k2lABlgN3EQiM1tZQiLzd+DvfhXIUxztaDx1GWbI1pOBIeK5dDL2QVU5BffV5wsyZck608mYY28ajaciwK3AJ9LJ2JzCsY9jauLXAy9G46lzMRXEK9LJ2OJCms8AC6Px1NnpZGwTcCNwHnBSOhnbV0jzVeChaDx1ezoZ692neIDR23sWElTJUB+rlUG7cGYDup/BOrsWrgmRDUh51thweY7VPuKQZJViuCbEkNoa2qtZ/zhI23aQ72R/rFGs8cO1uA8UgCC+GYPV/b6acj+8aKePJTk+mDR6KAdbKndJ8jKRNqyuhg7J1kn2bcYen/olus96d59ZEosE2nf303KbsidV4Wz3IO1KTBKZW/2RExkCTMYetDSRqdjX3Uswm1uAPwIvATcU/n8mMBUfNViBa6PxVAPQBMwHbk8nYw2FczOBukIZAEgnY/ui8dRazH1DXgTeBmSKSmIhzaJoPJUppNlUSLO2qCQWeBHTJ3gmMM+pYAW31x6/4eFnXDGqfesistks3d3++HF7pZi/bK2ieNwwjD5d02gY+QDzC/BeAq2n4GQPDdfQnbV+7Ip5DeS1rIMRsTbtdVvte2YYefKyd6fatulwvW9tJMj3XXLfNTVQ7b7QRj64cstlV98PBFluSz5C3fuRX5DfhbefOYHXtgQThTLfR/XtN33RTvz+zgwfEiYyLExDc+Xy7OMylTJ1ZnOu+kkoFOrZZuyNMeeQDtX0eVsIcvw2JBzkGMGQ9iHd3d22Z5WvyCKcz+X6fQwuks32YaCqRORMzL3tr7SdKc5CVjyT4cWi+C3gy+lk7FfReKoFc3HkDuA+oN6DPDeeB/4K7MQM6/p94OWCW2knpnLalU7GjtiuO1A4R+H/DZTTYEtzQDyZTsaOROOpLiGNE7cB3yn+Mf6Gz7J36yLmzp3LxIkTVe4vMBo7AMI0NzsbQ+uM0kvU3NJKJpSpOs9TRhnsbO19Kmd/ZxOZjmCmfDrCBp25ctnDaw3as855jqw1OCo5J7Kvu4lMW0BTVe0Gma5gZOfqDFq7nWXL2sdAIJiwLcGSy5esepmM9Z3Ktcmfgwq7s00caQ/RZVOAwiGoqzHocGj3quzY0USmOZg2kk7LZVfLvq4mMu0OVtYQVGtE37zpCJlMMIuHN292lt1eQ9nzrZTt25vIZIKdUjcMw9K+u9sy0v5Vla1bnOtkWLi6tg2wfWtwdbJ1a3DtJEi2bQu+nRTx6zvTXgOho4an7/CSZcvp3FHqFDKZ6i1/Q4zSSqjWVn/GUU649Wd7sk1kjgbzHPca/vbdb52UZ8lB812xl1tsI6/Mn8+G4aXrMk3himJPrFlzhFENq6sur180NvbpWuCHMLctfA+mTlb1MMqLong65no+gE5gZDoZM6Lx1P8BLyMoTtWSTsb+Ivy5NhpPLcNUGmPAky6X2seYThXlJY2dO4C7in8cnv2bacDG6667jhNPPNHlsuDZ3tDMQ5sXcuLk8QypreHwUevsSq3RDQX1evTo0UTCkYrzmDx6KEfaunrW1Jx6UoSm3b13lCdOHEFXY1vF+akwZlgtzR3lszeR4XVk2p1nmM6YNJKtB3sPb37y1NG07W+puoxOTB0zFALaomHS6CEcbLEu7TUMg+bmZsaMGVOVi50flhsZfqzX6mvCLWEoNLNIxPpOTRg5hPBR77GxTj5hNN0Hj5a5QtWFQwytraG107vr6WnRcTSmrfNtfrWR008dR+MO+1yeP0yfMor2A61lx/1oO+eeO5XtAa0hO/ecKexcd6Ds+MihYY5W8RwBzjx9Avu3BrSH22Hzf6FQiEgk0tNGJk6YQHNHdeU+66xJ7N5YHklywsghHKrivTFlT2TvpmAGa2edNYk9DuUe6JxxxkT2bQl2AOtXH1Jk+JAw08cNp83hne+NSy49lZvOn9Lz9/07F1VdnjqjqzSOGjWSSG3l4yipbKEPO2HsMFo7szS3l49tTj5hNC37ghmXnB4dx6G0f333pRdPZ9NSM87kySeMoWVfs2Mb2WoMYeULD7F161bOOOMMRp/5QagdppzPRRdN5+aZ030rd7Xs3bu3L7ObAcwkkdnol0AviuJhzEg8AHuBC4A1wFhghD/FciadjNVH46mdmK6uAPuBIdF4apzNqjgZMyxsMc0UyplEyYq4H7hcPFmIlFqHzdJoK08nprIMQOjH7xkNUFtbS11dneptBUK41ny0NTUhQqGask5aXOsUCoU8deKm7FCPP3g4HFaSU6eYzgvhcPm92o9PjQxjf6aj51xNjfM1dupq1dJ5QVbu4UPCVa09AwjXyOvb67MvUlsTojsg15TacA3ZoLTQwLC+VyKyZ6xKOBymJlRDKGSt71AoVJDtva7cylZ1Gwnwfa+VvLs1NTWEqmw7dbXVlfvG86bw0nrnz0etRLb5fM1yD62tITK8joYK12PJZfsbEVrMw+xDg6nv4nemGmrDtYG1wSC/Z0FSW2V/VAnV9iE9cggRVvxe26mpCVvGZX6Ux2JH9ukei0RGDOFQqzlBUhOqkd636vhlwqiSPFVkfYlX6mpL76F9PFVsI4t/8w1S60vbsc+ZMwf4DVMuvJrLPiPbn95W7nD/j8FFams9hYPxynrAV5dGZX+JaDz1+2g8NRp4DXNtIsDjwN3ReOp+4FHMrSkCIxpPTQBOouTiuhxz/v4GIc00TOW1qCguBCKFvR6LaS4HIrY0FxSuLXIjphK43P876QMKA4IQJUUuCKwvuto1sgXSE0YNcTxeCbLAGWKWkeHWDkS1Iwzyo1or2R/DjwAPgUZvDFD4YBx8ue3fVG1VyS4PhZyD3FQku4/34qoGsajyoDC+ZukJtyqVlc9+b14ei+ySSaP92+LYvl+oH/Uta4N+BEMKNBDZQGhsml4RI2l2BLBdj98BnsRWZX8Fxo6ok6SUM7RWbbj/r1dHK5Qs59SJI60HxP7NQfoL3/gHDgpKosiBNa+z9P7bHM/VhUN88FLTi8/I51i3fCGPPvoor7zyCrlcQFszDVy+CfyERORaEpEJJCJjLP88UIma+0kgDnweKNqA78BU1K7GdAX9fiWZR+OpUcAZwqFTo/HUDEyr5WEggbltRj0QBX4ENFIImpNOxjLReOoB4M5oPHWocM3PMC2ccwppNkTjqReA+6Px1H8U8vkt8Fwh4imYwXDWAw9H46mvA+MLcu4fjBFPAYxeOi1/OjXrq646WJUOeKsuj1xxCUl+QwUKbqAKtyRPH5a+BLv1RnCyB2sURDnVKnNyqdVHVA0OmWyvFq5bLju5Z5NyWdv2Y8Pl6rczcZs06F0pquQeTh4/gl2H23rJN8B+IMD69qMb0MqcA4O0f/VabFFRzA7QrYRE3Cbhb75wGo8s3uV4rsiQ2hq6hCB2qv2ZmK7a92bkUKuKYZFtE/3Kj28l2+HuUnxgzevkutoJDxluOR6uCTFmWB31q+az7om7SQlblkyfPp27776bD35QeUOGwc6cwv/thrsQfRDMJgSQTsYOFw+kk7E88JPCPy+8BWtE0eJ6vz8AnwMuBP4F0621vpD2n9LJmOiQ/WXMhZuPA8MxK+dTwh6KAB8D7qEUHfUZTIW3eB+5aDwVA+4F3gDaMfde/JrH++p3in1iKBTc8MA+463agcuUOT+sUzIR1g7Kmkg11/7YR9EPJS/o7UgCk+1juceOqKOprbIoaKKrzmmTRrJdYR2r4cGKVC2+PIL+sDpXGPLcWUR1ysWMk8by5u6mqmSIXHDiGNbu9T63WJ5n6YCsDZ81ZTSnTRrZoyjK+oxwgPFW/GiDchk+uCwGaVEcrApXfxfAI14nJYIORup3fdq7zZBEyZLla/82e2mnXu7phLHD2NfUUchTLk+8n2zHUY7u26Ikf/UTv+SSj3697Pjiec+z/IFvlx3fu3cvH/7wh/nb3/52vCiL7/RbYKWOs76+aulk7BXc2+K7FWR0AF8o/JOlOQx8vBc5uzCjBB1TmNaGYD4JIaydtupAOMgBgcqstN1Kp1o9gVrPAjVXBic6yHL7aQWYeco45m5wCn4sR8zdj8Fg9VY/ufWsautXkNYmmeISAi+r2sRmoeLC6caIofLJVZU6rQmZ7lXbCpMI4vvg7noq66dsk1jCn2dOHs3S9GHs2EX1h94SpHuoH91AsF4VgYkOFFm5T5kwgp2Hggk25wde61vcR9GvDd2D3YPa6l1gUbJQ62ck4tyTeVhOZM1Gfr049hLfyU1P3IUqB9ctKDuWz+X4/U+d42gahkEoFOJLX/oS73//+wmH+3afyz4nkZkvPxeZ4UVkpYri5mg85fpmpJOx8V4KovEX0aLoeD6AgaHsY/zWU8cztLaG1woR1lTWEXpF6noasnazlnOKdRHserzg8pRZ/cKBWgGqx4/yFfEyULQM+pWvkqesfh2ht3PVyq4WWfsz30nnz8nZU0ezSRJhuEZhIKNa127tQunVswWwCOH8+4Sxw7j6jIk8vmwPRj7HppWL2Lt8E0PHTGDC6Rf1bNLtlqfyhJbkeH/0X5UQpOtpkLpcf3i1+hGYSDrxNMA1Xz9cT/ODwvVU/rflt6x1u1jz3PtXBdk2Jo8e2hN0y225jMz1tO1AWikfgHy2PCBP49ZVHGqQ785nGAa7d+/mtdde49prr1XO65ggEYlgelX+G3AxfbCP4neATKWZaPqeYjdYfZgLK+GaUM/MXFmHrTjIkQ7uAhxsuFkh/FyjeOaUUWzxELpbOpiuWFI5snLX1jh/LE+eMILDrV20dva+Saxs8Dm0tobObHVREFUGtpNGD+Vg4QM1fdxw9hxp9yyrHFEh8cFiUqXrn5shvtrSBTk0lE6C2E6cOXkUWxrMd6dOcZZA+r671PXFJ0VYVdjGxzUXhWcessmocevnQiHHNTTDxk7i/A99kWkXX1MmXD69ZSuD2L9J12l7e8pOW43YLSmBWux8aJ2Bej5UeO9DamsYXheWbtdkle2sEIZ8cduWHK9K6sBFrK5cAIqi39ZFtyarNllm9e63rn+W48VaKVNc3d5dyzsZUldFho8r38SgI6O2HVB9vd9bvQ9gEpF3Af8KfBBzW8EngFu9iKpUUXwsnYxV5r+l6RcMoVf08xteEwJLDCmLAqZmTZEpRb64L0l6V5WOtVfZSq5o3oQHuUZRHvDDmaHhGoYPCSspirWy+vZhYKainNUotj8vqLg4VoJ8Br/0MZ8wagiGAYcd9o2TrsfDeu9us8XSsgVpUZT6h8r/dnv2IYVn7m4pVOsLVJ55yKYphiSDsRAhlr3yguMamo6mgyx/4NvMvPUHTLr6Rsv1KhNsRfm9Ib6TUyPDyOeNXrfeeEt0HOdMHc2fFu1yTedH+5G1Ez8CegVJpZNI9ufaq2wHhbDsO+wBWREGftwfbwW0WBQHvkHR+k67TAaq1oas3zx14kh2HjraUydWpU9VtvNFZa6nknTDTzidziP7lPKadPbMsmPDIhOUrp02bVrviQYzich04FOYCuJIzNgtdcCHSGTWexVbSRc8CF4tTZGeh2V7Uc+YPKoqufaofF5mvIMMgy4zRLhFE1S2KCp8Qb3egWww5MveUx5cumSn3nuxtaOVP8vS7xPGqm2Ua0+nNmBR+6qVBTBSkK3aHqdGxHJX/rwuOWlsz++RQ2or3iYmFPL2cbfI6Ac7gluwBfHZX3WGdUsoL2toLppe2gjbLbDVKCFKn3oU597fr1w+y5/+77uuctY9cQ8Y8uG/m2umkseG7beY7uoznbfd8sOFV5WBHMFWhpHPsXnlIvYun0PjlpUY+d7VN/N5qdar7Lgf34XgZAeJd9dT8bf34azcOi2X6UX5Lnc9FfqtGufj9utl4zPx+qG1NQytK3kjeimr6oStTFkdOd5pq3Nnho4xlcKLTyr16RPPuJgJU+RKYCgU4qSTTuLtb3+7cj6DjkRkFubuDedhxmw5gURGGrulEipRFAd276FxJCT8V/wluklU4jLhNuB2Hci4yCgrXBWoyHbrCN1clFQ6UK8fWWnAD1+2x5Dk6Vqe0m9xz6YTx45Qki1TzM+cMkp6zbvOmWz5W8VdTFVBsouSWUIt10gW3g+vC3Pi2FJ47s+8/bSe37m8wSvpLI+u6bYMHO2WpytPL82AlgUwcbM8OryroTIHyMqRNdtRdQbjR1a3cbGqq7ny7LXw20tQGJms0cNqueWtJwmy1coiU9LE57h/05scdllDA9DR1MCBTasssrxsOaSy1q+Sulcpgx+DA2l9+yBcpVu+LFpZeIX6VfOZm/gIP/nvf2blH77Lol/8N3MTH6F+1XzAYQ+5YlkIKQ/GpVbWACcQBzJGFdEVROWwGtdTVbd4ES91bXcVVRpDiXnaasp6jZsy5+H+HMaYTrnIgh/WjlDf3m/IyLEADK0VltrVhPnMN77nXLbC/fz85z8/1gPZ3Aj8DvgOiUyKRMa3DSSVh6HpZKxGu50OIsTtMSwDhCo/DrbBhsyf/bpzJwvHrYUIcpZU5cNaXgelv98/4wSpbCXXU4+KnVyZC65OpJJtJ644raTU2EWp1LdqnZRbehXq22WiQlTG7O6GSkoozvcwfEjYYkUsiqpfNZ+ZP93MO//Qxj8/2W4ZONo/9NJ7s72vsvKUnVOYsHHDbYxedRAeyfX2ZyC7h/KZdTGdLE+X8ijejmo9ygZw4uXtTY1KstozpXQhQkp9d1k6iezy+wm5nCvm6VZaN9mVE6inSYWTTr1Rv2o+yx/4Nh3CWlMouRHXr5rvHphIMZ9qt38RUVVwBroC6bV4hsX11LuiWCt8DNwm2cU2pzox4OZNIrvvfC7Hoa0rna3aCh4/ZfmoZGqXp+gRJevjh44aq5QPQFdbc+F66/Grrr+Zmbf+gHERq9fc9OnTj5etMd4OjAaWkYgsJhH5PInIJD8ED3Dvf41XipYHFTfLSubo3II1WGeSXGbDpMqFPN93nOXsGlUuo3fZqi6X759xgsVVV23A4u0rJl23KbyhoqtFXVh9VlrVotNz3MVCZb9GyXphaQtqyg6o7dHotvB++JCw47lQSC3Ek7WduisuxYHjvmbrus7iwHHfm/OtrkMypQh5C5JZmEIhmzyhzYgul57x0KQ/fsXJpcsVr5dFmbVf7uY6KstTdo3qWkirLDGNrX+VyBoxVq3/GjnO7mbbe3ns7cKL0ife0zlTR9suNP9n5HM91vJXd3RZBqSi7DOnjLJ4IahS6VpqN2IXTeNCoe3LZEwUBuaq+Rj5HOueuNs1jelGLAnmFVJXfv1cz//v7zhdKd3AX6PoDcv2GFXEWasVFG7xndizdaPlnRD7M9VgSrI1fPZ+ppiuftV87v7MjSy857/LrNp2Ty77JL/429Lf2r5HKqhukybr14eMUesfoaRUOvXd0y6+hp/GP828T47gkQ8OZ968eezYseN4UBIhkVlIIvMZYBpwH3ALsBdTz7uBRGS02+VuVBrMRjNIECfM3AZdleI26BdfXLvLpMqARzUYjhuymS23waVllstu5VAsXylNr0kccbMWOOU/YdRQRgwJ92wC//4ZJ/D0m+Zi8ImjhtDY2uV4nVW2W3lkv50/WHZklhV78rOmjGbzgRZHWVLLc02oJ7y5myVNVnc1ITXlxfrs5eny+XyvA8e1T9zDW9/pvC1s1UZ+tw+z8mSC27tXOSeNL7koy653X8uiqMAp9iVeyuDq1moUJ+LU3pUpZ89g/ORpru6nw8ZOZtrZl1DfXHp3ZS5d5WVy/i1Str485GwNuSw6no22YEilaK3F/fXaGfb0Rzjvg//NiOgMT4rLVWdMJG8YLNx2yLXcXt6PEPbJk977KdUAXIe2rS6zJNrpaGpg78aVMPEcx7J5mTwR8eK54maZVzk+UPDq4dAhROH2Y41i/ar5rH/i5zzR8078hGFjH+yJYCwq+V7WpJZHKbV+U4uTk3aKk5PD68JMvLC0Jk9lgs1eBmWPgho12bKxVuSU86gbGaH7aKbXvIaNNY1k9lyK+dbU1HBttKDaXHttr/KOORKZNuD3wO9JRM7GjHQaB5IkIrNJZN5XqUhtUTxG6dkeI6Q2iFDFbbN6t5l6lainqgMh1/IpyC7bHkOxDLL1gqod6/+75EQX2bJBqZiP9cMhmwV834wTGD2s1vE6ETHL808orRGwzzC6fWC8lFs8eeK40lo/e9uSlTvsJluCdW8otfbkaj0X/n5zyUKlgWP9xpWCbOdyh0JWN8If/L8LLOWRrVGUvXvKa9xcBo3eBuq9DxzKt6mpPCMvsmW5GIYtnVThwpJGaq0Ur6kJ86mvJiQ5m5z/of+2rKHxOrB3i44rXiPrP+zXLHn5eamb5Yrf/w+N6xfY3i+rrBlCsCaRIbU1lvoKNBq2m9Jf/G07N2a48zx6Z7NaKP42ibux+U4pKg4+rlG0XyHrG6qt75qaEO8829nj7S3RcVXJNt9Rb9emVpcmaXJVuZ6GepQ0u0u56HpssSgqF1reHkURhsLk5Iq//B+IVn/hnGpwPy9rpFWxlKEmzAUf+Uqv1wwbFWHC6ReZ1wjXG0YQO4MfAyQym0hkvgFMBz7qVYxWFI9xZLMuXvESPdJeCPmAx2UmSiEbcFNcXJRY+whKTGcZFPY+UnOrX7clIl7WbcpcGe2du8oaRbdBqbsC1vtgw62NuK0xVBokWW5CLtvi1hhSdD11UQDE6xsPHuhVFlgHjjJrh122vdxOlE0GCeeU3ZNlrsYu51zluSjZRdwsyG7tR3VyQFYe6+y3LZ1L+WTHVRS4ECEuf9c/MPPWH/TMiBcZNnYyM2/9AdMuvsaThbM8Xe/X29uMrL6NfI6H7ky45rd91v0YrtFa5dda+15JGtfc5XJV3OHcynbWFGdPrasuPEOpDKPHyyPJqr6X0jW4PijPQVkUh4RDUiHVjj8MvLUHO/lq9scwelfS1j1xDzWhkgXTzQI8YohzxNGyb7Lwe8PKxb1OTrYdaaBx6ypBtur3o/IadnPHt+XmeA3AtIvfQXjocNxx6bu1pignkcmRyDzlxZoIWlE8ZjF6gtlYB8XFl8nr5rD2/XJkH+NyN6fSOfnMsWvGSuVTWqPocr3FXcQmr1ILV1kZhEJcFh1fsdWvbKAnpHNT+mS4Wv0E7GvHrNc5y65ReN6mPLkiJLtK9kxcB/A2pVrFdcvN2iDKnjR5au/CsK0/U5StqrDL1mq6fbRvukCt3DIRYvstL0/lclU3erb0JQoTQ2WyJbLKBkwqClfZLJjzNcVojdMuvobrEn/tWUPzm3+dwXWJx5l28TVl14dCtr+dRRfSyttTT7nFkPouVgTx/tLrlnOol2itXc2N7Nv4pkWW28ScWE7xjLrVpYQYsMoqWzEQkFs7k9Tk5W+7ipHjJzueKzJs7GROPrd8v7feZNtR+Va6rQcVI7mqKpe+KKEVHq9ItqR8lWwrVI2e2LDlTSUPkkMKSpr9nOr3rPHAfqWydojBsRTHKSp9oB370g7Z9W4K5eFtq8l1trvm09HaxKFtq13TaNui/2hF8RjFyUXNpPwlqmx7DKsk2Uy9vbOxxgWp/KMtU0hOHDuc6YL7YrXhxMsGjsI5meup7MM1YkjY6tIpnDtn6miroqgUrVVabNf1NV4siqoBMeSL9J1HuJU8YxW3VpmybKaTfLxQtSg6y7I/77dcfmWZlcjO8HGTOfGcS5zLatc1XD7o0nKHnNO41fcVp41XSic7denJ43p+u7mUVb+FhZrSZ83TnpdFgGMZ7N5o6sqF8+BO1h5DNWGujdby0QvreMtp4wjVhCXXy1upNTqzbT9b6cOU16PsNW49ohattc0SrdWWq+y5uj0jy3G1xinWib3vVrIOK5anJhzm6k98TV4mCm7Etc4TKQaG8hpDle/C6ZPkeyO7RtGs8HglSOvOwyL+mafI+xaRSiYaqlmj2NGk5nosuiirr9sTjkvSAGSOqJWhq6XJUYabMujFY0P+WbL38XKJHYou3cV6deuHNf6iFcVjFEswG8vAszq5agMSJ4WydMDLWhTZkOnC6RGmjCnfqqBMttjS7QMChYGnW/nE+/EaoEPluZS5l8rHOEqyLZYZl0G7fd2WtW1J6kSyB6F98OvmMqsUgEJZCbVWlsqYQhqQB2t919aGOf9DX+w558RFH/4i4bCzBVl1MoCQZI1iKCStE/H4BSeOsez/KFOkneQ7H+/9GiOfY5NkQ3J7nqrPVclSVKYUOefjdp2SO3iovG30pHMJjFXCcE1j9eAQ+lDbpJxKH28P4iurR7GvHDNeLbr66HHydGJ9nWwJchSylbvydqbS3xr5HOuWLZS0QW8fxNMuexenXfdRCNkX7ddw2nUfLbgRy69XDs6m8Cy9109lx9247R+sQXvcXNkrxW1tv0W2gvDiFhnV7KNoj0wsTSdMHrq1BavHjnNnErKdGydxa7YzdPTYkgzl/t75txvK3zBJPgDDxjh7B9gZWkgn1oeRz7F66QL2Lp/Dxm27q3q+mnJ01NNjHPsgwuklrsRU774hvaTDK0vnfNyry4vKYEPsdVXdrkLY605WcGdZhlvZQtZySAP8uFiyZG6bqpFJLeNGW0evGu5aamWVKN9lg1qX9WIqSr9yNFvbb6U9GhVd9UIh06Vw5q0/YN/fvkt9prvn3LCxkzn/Q//N9EuurWAG3/me3J6j7Fm65eQWfEpeNudzTvVTipRZctMaNnZST1RA9zp1bj9muZ3vwZLGLeqyRZZLGSR3b5/1t7dvp3xEiiH161sMmscewbgo12NVtLcra1mdZZflo6BwlfdtYj6lP6Lnz2TC5Gmu7qdDxkzkpHMvYWODu9sYwKWnjGPX4baev1Ws38pt0EFAb21QZol3IxSCbUteZvvcR8tPGnm2z32UcdHzufgk+XIgqcUtZHWLVNqnVlEZLH+PepftFbkSWjrxzrMnMW+TswvnOVNHl0XehULQEo/jhyljhvLV/8/edYfJURz738zuXs6nS4qnnHXKSAIshEhGJkmAAYOxweY5kWywhQ1GGGyEDZhgHLAB87ABk5NskkBCgHLO+RRPOl3YvRx2Z94fszNT3TPd23eCB4at77vvZna6q2t6OlTqqufWo0d2Kr42pkxaVga9R4xHWl6R1P00La8YvYaPw+GIFcFYxjeJAmjJ1qaiErVjAxn5JJ81+V01Qriyu7IAt0fJJ2gTAAoGjknYr1mFJSSYjfWbPcdfiddbC+CZHA0PnpWGL0FSjP8XSFoUv+BgMTJqApw6Rv4qfi9gPPjFQiWP4oCiTCFuL0VkkRPgpgJNIquNELegHmtRlODmmlERQoXMoSbpb74tBSFAbmWh12y5oMCHShf0t4oVStSWg1vwsp5xJtjw1BxPWeQeBt6HUSurmI7VPx3unD+bcu1DsM+fyQK3yBh4lbO1/FhQaYd/JgOx3ClmCN5/8/WECcl55knVsq9Cm8zlSTYeRYIZmN9ZXCrCpV22av1iLJx3EWY82YLLXmrF9x5f7+Q943F76kvWORW6PV4DCvuCHgjg6pvv8LRBYcDZ32XcLGUCrswluDvHBkRzBQC2Ln0n4RhUZWopmLEYPvrHvUKagHgeRUmyPrGCg18nBGu3wrogqyOD4xUUZeuratCTccSt3bOfCfcFOV1HG9qxs7oJS3fXInocFqdQIOh4kIhg5JzrEGLmhJg4cWwHF/ho2GMmTUl43CGjoARFgyoIDooQoptucYiqFkXp2qsH0HPCadJ2TrnyZsZV344+y8/xQw0mLnyuFS+99FJi4pOQEJKC4hcUaDAbCsfreurd6P2FJNn5I7FG0L3mA2WoMsni1BtiJlQkMPHvEBQxMgILF4+d7x+Z9tAtx9ahv4sEOE1j3UNVvrmM2ZWdK1HR7naX0RMLP/4Mrnwzpky2GtPEus+616YpHo8BXXPOn/UYPI7Z1Bh6dP/+sYJPgdz7X3vwKWqlKSgHjxG26f+7acRw369+LkYIi5E2uEiZKooT/pnKEVn+9pMO5EBBdhZ7uSTNhC24eFYPAT18M2zkXNFaIp4rsjEzdebZVlTWHHYsp+UVY/xVd6LHiGnSuSuNthi/No0YNq70dw+l1flIpKJ13YjF8OZf5/u2a8PmFx9i2vGjzw+2rVuB5rpqKe62cDUObl3TZdz8HiM87kDXD6mXj4RIBThFkOYCAK6Y2s+9UVy7ReOiok+uUn3Zs64IuK0d4u+eCDRNczxIMvPFEYyDzBovpltV0UzHejAQTChUTbrkRmg03Y6qwaA76x4jSSiur9yzqvWL/a30cRgw81IMOcF9ZzMWE0aftdmfG264AbFY9791EixIup5+QcE+y+RlPLT4792Neup/DUjOGHE6xk/S5UX9XJsEh1CLx54JE1v9BKufKS6ngaVdnKNR3KdsOf/6Fu7EQih/5okpJ7xRO28qw9edqKci4dLDrML/mapFUTRm+ZmjNG41CF9ILhwknjc8auk5F6HgIR4j4nb9f6/dvQHVVYd9n9nQFq7GkW1rgZIRzm9C66dH2SUeM35leNAE155yCkw6n8OSpcG9NowYHrv3dklrluBy8mlfFdMjo1XQrrS8YO74vU5ZxXS83asUG/bVo6rRRF52Gh4Z9xyg6YhEIvJjBwLhwL5K6KLMrFMcaoqbvMTOjavQUCtPW9MWrsaR7euAomE8mXHc/h0ZrpULiTY01dcAOYN9n6nugeJAZP57lgyfZx0+Tmtld+aO6L2Dus643UqmvxAo7l556TgUFrtCt0e7LzzYY7CsYjpOmDoFFy05F1WNJl4p+SGah37NUQ76Wf39uC6R8CwLKrPknQUJhap+E2agrdNf4SL3NOmGpMjUJ7i5ZyLlpGnEsOWlh6R4D69eCJhuEKk9m1ZJ3VRNAAcOHMCSJUtwyimnKFCeBBEkLYpfUGCCeiVgAroiNPKpElSAt/opuXTx7hDk9rIT+rK4KX3CzU+8YYra0cBb5hLjlqdo4Cv64xDS49no/WmTBfKgIInvI2yIL6cSUVWXdIKcCRQw6orfkrbLC8Iqm2FAsOOZXMQ8ZsMTCVwQC56y/lURarz5Pt1rOaPof60KIoZSOSF5hC2nkuKBB5XztzLwVhfPZdHvLFPrPw+PbF+H2qPyNBNt4Woc3uZaoXjrsp5ImkvwSEa3yllfai0/uX8aYy2Xra+yMbjxo8TuoaI+5d+BXjcoCnMtEkZT1MP5PUqUcOcUutYmepQikUcCBaUAP4qDXXlfUFwMZN9FTANth+LicavhED2QnQkEgI6o2C3YD3QB7vSUkDMn+gwawswJ1qKoCV+KTznm/s4XtP6ZRgz3/fInUnoPLF0A04wp7QXSPUd1bCnuyRQoPZF9W5RSjlArfYNiROaqKvm6m4TEkBQUv6Bgs7K8IHW8ZxTlZ3D8mQ2+RrcshzJ8koAo/vSI25fRphSBjnsmYsY0DYx6USUfnCxNgOyzBgTnCEXaeC+j50+P373bpmBT4hkC5rrrDIpqMBu+fleHoGdcqHW9kB4VxYlVLrFwoIHT1HLPRKAaBl0sePj/nqoYvS4zr4fUnVJEm4q85KFNMoZFoBpxUoVJagmrMTXNHPOjcnaZb1jlDBdPN4NKQJss6Jl0/AiuTSOGl//4a0nNuHsocR2TpZWg75NbKM9zaEOWJFqrCIaPnayUR7H/SDePIo02DKitm0DX97OSnFQmr6LchVvwuwKd3nLCYlybZL1W9IuVKY0pCD17fKC9i4KiyG1bxi94IhP74uW9YsRriX1bs3MdGsL1Uno7WxpwdNsayVqgxsd1Jzqv7EiDqNnOxjqldlpIahLViMxlZd0PXJQEC5KC4hccrBDkckamSwlKJQyXzA1Q5RC76oForwsneabgZqlsWfG8X2K65VEUxaDClKqeA5IJekx9wbW3nPipCm5VpYG6JpK0I+gDbx36jfwokdfxyh3+jIOqJpy9VutfYV/zzIbg/KNfPaVyIiup4L0L+o+EnihRnKajdMgYMT5FZkPcJ2rvrRoBmcMgpk3wLCNPLZx9NmF++LVN1A64ckJGmvMGEc5R8kDV16Q7rmy7N61GpEaeOLwtXI2D28Rn/SCge2jFJOQUyi1/aXnF6DNivG996wf38uuT+jjXeiCAad9InEcxyAX4oSAMOMQ9EAf48b/OSAmiINPNndiFnd2tI/mWonKqz1Td2OXzP3GfJMqp+P42f4tzV/Zh04jhwNY1eGZjJxZVRmFwwYt4F3U/kjRIlHwc82D3Xe2utf5EcnBk22q2LQEvIlcMKzXFvEN3FMuh7ALf33kIV+1zrgeOmigN6KMB6NOnD04++WQl3EkQQ1JQ/IKC4x6n8QzB8eFl3P64Z8w9t9uo5ScT4OKhG0yJut+8RKjp4qbNA78B0/OPShuoqnaXp6+LZxR5JAHd92f/ej5tdldYUWE21IOesN+1qwF++DOKImFFVekiFJBlggc0T1J4PxDNd++5VjEzRnGpMgs21O3d7GGaPGAaOLpzg5BW1aAOqq6nokAOrFDEfT0hMy+hTbDOlA4di+zcfHFFAKHMXPSVCC6qbsQqfSIPNuZf32T6kHe/5hn9xLgjx+RCog1NjBuppB06LgIBnPXduVK8I+dch4Ag2IcHH/dhB0w6FROuvgvpnAKABjOB5JuI5pQnmI1wz5GMBVE7knJC3FIllowXSLznqAqkHhwq9CTAt/tYsz9uQUW6zwU0zYle/OxvbsBlL7VixpMt+OtdtzjRiwEuIrgmoZsU687RHiFokoB5inuyKqgYAgDxGpTbbwRScxMr09YvfMkJQBVIkL/YBPCd73wnIc4kJIakoPgFBcf1lPv9uENfSzclurGK66mEBleNyqdxK7BKUBgeZJo2yg51x3ohooFn+ruqOfbS4H8twy3mIcQMkwyHELciQ+A9Q5V405aec2Fw03JqrqequFW+Py9cqljF+HL8eKQgdLuSME/KQU8U2qR9oHxG0eNm6X8jC44iAvn6oVZPRXljmmLcfH0zkX3ONCHj5mXvoOQiprj0e4WaxBW9670/w8ucS1I8R9hM3M3kAjL7bPjU0zHh6rs8VgcqzKnuCzyYMFFWMR3n/PIJJx3OWT+8A3Y6HECuVFU9/6qy53RnfeZxiCrJ+qA7z2TzQ8X9RlUISWRRFNGmopzctuxd33O1TZF651wtwO9TmpB2keKK7Q53z+oxaKzC2wBlwyagsS1KcND3Edfrzlnx7uThZfZXPYC+08R5R21orD2K2t0bnHs7+iwfkdmG22+/HeXl5ck0GccJyainX1TofpogKfALsEiQkkVlU3FXlIGMSVIJOKOqTeM3YBVhjiKwLBSJNwELR2K6u+cmpybMSc+LyLpOgeHxZzxNcm2XU0LN0iP59jLBTIWxVj7DJ7lzQDIfvTkeyTspaZg1YYoWZYagGwyziK9TPqOYX4ROcq/a37Kx5f4uqa98NsofpPkfBfQc2b4OTZGwtL3OlgYc2rYGyBvij1vQJg8ir1+Z4CJNCC58QspITFd+fVK1fjE2/vMPCpiB1qYIUgW0CNfX+P+yiukoHX0Sblp7djwy5Q/QPPQcJ+iIbE0WMdaMQKLrOKXcYqPeyRuFY0yAH4pMvDZR4L+DME+t5n+tadyaKlk/xHLiJycoyMqpr6nc7wpCpCo9qu3a64xpqKVdKR19ksc66DvFOKWl0AtGc2krHDwOuXn5iEjOKYYyc1E2bDxqml1BUZRCh3eL7c5xEAqqCgS+WGZRbyX8tiLSfoeyiul4o3c/PLr4IG5f1OEpf+jQIVx44YV44YUXMHv2bKU2ksBC0qL4BYSapnY88N4uAPbG4T6T5prrqonBw9j7M6hexaGCMOdpVixw0XsVYc7LbNBy7FNq9VM6W8njlvT98eQ6lD/TGOuFSnoM2ZmQbkVUFbir8qkpVF1WKIjyTql/V00aFMOPnq7knRPiU1BoeOv4tymixVNHwvRJpjLzoKuRRQsHjkFJWU8RRgCWVafX8HEM8aJ3VWXgmTKSOjJghQAhJ+0Ab1EUlVMOZkOsFBok48yzpgrKCcp4npFrxpXaNLtsfZe1q2tukuyOtpbEiAFoXFAQYTmBwK7pARKZcqg4WquMBsE6JYsYLlqnTA4HBU9KBZXxLdt/mGKKazf9XuRmTO9c5vxj94LS0XZk+6YaL0BBJDwrK4Y0caobey2o3b1BKe1K7e4NPsFsvLg1iBV7oj7R9ADm/ub3UhrGXHIz41bN41P2llFcOVXdlUVKUABIU1QwihSRf13T6fu7fQwrmVOx+5AUFL+A0NIeQ0OrusuBvdkFJIuHW1+8IIjDL7NuF92xAsgYIbFA4F/fK7j606Bp/DlCf9rUg/Cw9wxuhbMo6tYhMQ6mDrn2pKYQXUv6TkSPLKIqSyeLV4WRkUXRE52TVLUoyoUVtXdSwdcV9zc+NYdbTmXcu5pj04hh+cdLfBOce3CQ65nD3WiPwnGlBzD3DrnWfeSc6xDQOXchVWZDgQlUrS97JirGe1WI5gf9XTWYTVa+OJqmjDb73jRi2LjqY9/vKhc0E6/PsvO3IuuH1ZR7ZxriJNkiGDD6BKVy/PwSzRUKym7fyqoGfwRMn5ridvmxpRZATY0GVVBWSCkKGxSUz1ZK2lHhTeh1QLELdC0x/6DqVt/eUOsV+vx4L008znglBp3jefn56H/KxUjJyGbwpeYWuWdkPY1534cH04hh9bIPlfYF/j18ccvGDIejYOAYaXAaAMjpUYrCgWM8vy/b14aDDeL5bpqmk1MxCV2HpOvpFxBkQpps3wjoGjpj1mTTNQ0xn41WxszLNlaZUOLiVqNTahVV2IC9LpxqO4k4RyO5pkwRly9L5qKmJuAS3JwmW66J9EUtFLg07l5kHbTuRYxM4vZ5fF4a/Ot0Jx+UJ12HwicXMrsm/13caxEzbcIU0ipXXCQmlH8dkeLDBr8E59ufLcWAc3/kYTBk31vGEJx29rmYcPVd2Pzig8xZnrS8Yoycc53TDq0mGjM8DSouqtI0CpJ5KJpvojL8vYhZLR06Fj1KylAjyaWYlleMfiPGI3yo0WlfheG2aUiYuF7YcrfkCba+4Nqi1b3etm5lwnxpFEKZueg/ehJq90fiuLv+vWQRoFStH8K5S9Zh3rqoGkCNgtf1VDQG/fczT+5NAQ2mEcPWNctwaPU2pOYUonDgGDdRvEyYEwk1TCGJsCl6B+kewb6rypyn10FdR6eCJYnPR0vB/i6qbvWpOYVMWipdMJc1cEJtAuun3xxn8Kn2o88a2pV9wYvbBVkANdH3BwBNt4LTrH7sVmjwP61x5tU/Q6uP2/jRpqhPaS8kcyp2D5IWxS8wmEYMh7auwvaP/uNoh/yWK5u5VVmwVM/CybSAKuGtZQuMLDCJ0M1EmW4xE6rieuptVsxsMMFsFPpENYWBqosR24540+5OwAcRw6xJ6niZkq4xSVLgxpaKACYKmsOHHFEKZsPteqKzQ7wCQKUdfn7JosLuWfmebyCG+mNHmUAMPH6/60RQVjEdM+c97wT7eP/KDNBgHzxDKQ6xztHD0CYiSCZQ+JeyFDv+NFDoVrAXPYDvzb1TWsaTUoF7LoxGagIr3n+zy4nrxZYMFrf9TGpRlLhM0mfhGrUANjaMueRmBIOu5dl7Pl187QZ0EwuKovPl/C3tu1gshsNbV+PQ6ndxdOcGxAzTtx1mDeS9HSSClIo7vkypQqnwWx/tiJ13/+hSrH3yDix7+DosnHeRM/e1BPUTvYOsntDNUtL36uC/7qkcM7BrJ5rzhQPHILdHqRRPWl4xCgeOYfd0resu/HzxnSsW+s5xCnS+85iFY0bTcHDtoi7vCwxu3b/vZeBXrKxiOk7+9s/RK4d9aAegGjHtdLc+eV6cpWbzSuZU7B58phbF8rkLvgLgZgATAJQBuKBy/qxXyHMNwO0ArgGQD2A5gB9Wzp+1mZRJBXAvgEsBpANYCOAHlfNnHSRl8gE8BMAOq/QagGsr588KkzJ9ATwC4FQArQCeBnBT5fxZ3tOxn3PQdSt886YXHkAHcZVIyytCj2tvA4rG+ddTEBRlm5I0gAm5Flvm1AQSj+BBsKsIXDLwCEwK5whFyeVlNGgat6ErMKVSbaH0mcK37NbGLN7kRFYfWV4lD2MsxE3rS2gTjEdd9yoeDB9ekilznME++JJs+7Jx7z4zYjEc27EGzeFajxVAnIsLTP0Pn7pX0JLVAXYgBtE5LpHiQmTpsc+H2XCfLk5HoHxeVUCDCJekereAEaQ48UmG+8TTZilZWUVtsePRvTZiMfz9vnlSmje/+BBw0RxfvID4u/LRet3fxeu77NPlF8kT1duQkpWH0V+/ybKEShQfrEDqj0vjRCe2vtq8tq+r1i/GD+56BLXVrmWiPEfDg2elAVPFFkUPbtkeqGmOZklF79mV8WyfD+XBFjAmXH0XMOwi33akNGjiZ0q/S/Cp4g4wAb3caysgUGKLomX1k68nmh7A+d//OZ688zohnpFzroOmBxAkPq9ShabgXZl5aMSw6O+/k78Agc0vPoSKk06TNMnuK6ufFZ15FO8LLD7BtefbJe6TvhVT8X7vLCzZH0NVo4m3elyB7aHhaG8Ko3LjCphZA6DpAQb3lH5p6J2j4VCDf2xpTdPQu3fvZE7FbsJn7XqaCWA9gCcAvOjz/KcAfgzgWwB2ALgVwDvlcxcMrZw/qzFe5gEA5wC4BEAtgPsAvFE+d8GEyvmz7NXhaQC9AZwVv38UwFPxeiifuyAAYAGAYwBOAlAI4ElYY/7aT+ZV///g36+/gjWP3+b5vS18DE/eeT0mXH0nysd4z33QhU0scHWdA7M2AZZRT4Tba0UQM8Ii7bWwvkQiYRc8NaZCaKHwoUIEwn5VZAh4FyM2CE9C1NJw4nziX/aZqA6lTYY7MS4eRJY+GW38d+XHjBHz+VqKXJIK3R6GWzrWvcWq1i/GL+/8A8Ik95ztVthr+llCywjt+/1bVqO5Tm7RsQMx9Bg8zqFFZFmRMnMK7KumqQnjXgt54r6X0SNaZ0yroLBdG2RzJZHbHh+FsylvCF4d86DQ7U/0rrTcga1rUFctd6lqC1djz6ZVQEq5hasrdPtc8aA6x4ePOwFpeUVSq0hGZiZO+dWL0IMpCVoVK4MAqcepL23ydsRC1qEGExc+14pTM5cjfdz5SrSJFYMsHSLXUyZQDm/N5fDZYCicD7UUCm5kSNl+2B2Vi8pZWP+23CaFORoFCmPVYDbQJMoGgm/sV87EJh+FT3ZePobM+YnrVs/MV3/cfAAdkYL14LY1aKqTB9Gh0BauxtHt66D1HOmPmyDfv2U1Wuq7ti/wIOIRPCOG6xNfXDAR0DWcUh7ES1s78fK//oWGSAQAsBbuvoeRFzt1ArqlrLnwuVYhbQ888IAnwE8S1OAzdT2tnD/rP5XzZ91aOX+WJ8lJ3Jp4A4BfV86f9VLl/FmbAFwJIAPAZfEyuQCuBvCTyvmz3q2cP2stgMsBjAZwWrzMcFgC4ncq589aWjl/1lIA3wXwtfK5C4bGmzsDwAgAl1fOn7W2cv6sdwH8BMB3y+cuyPm03v/TgFgshtvn3iwts/nFhwDD69NNF5Kg4AQ4zxyymxJdnLlyCoKDqqAgY6xFTJwsabyM8RTrol3oTjAbPo+iuI7/JuKtqyZ4MLhpmS7QzeBWUCh43cVUWE/xQ2EIcY+VgzAOnCStlmJB1PdiFzNTcRALeRfeRVXTHAY1zCUot60Ae1a+J7T6UWiqV4u8qRqwobs56JwysmeK41FVoaWqkGAYY0UhVGQRkOEWlvERLhPVb6xXO/PXJCsnmeP+xU3+ByGw+4o4SbYW/zv7wosdIRFIoLAREkjXBZnrqdraLROybOzLXv67MHgQj1u2B6pY1ruTu3fjquUJz4daCoXVDD1+1xZuJRKEdVQDCTG/S56xnj1UaFSnR+XMfUDTfN3q/+cXbBAZb9ArL257zNN79x3c6+Z6tTWZQmuEXe9Ffd/4CewL7Dol2RcEdViwZtRLWzsx57lWR0i0wd731i95m/l99vAQXrg4Hfm5WczvvXv3TqbGOE74rC2KMugPoBSAMxoq589qL5+7YDGAaQD+AstlNcSVOVw+d8GmeJm3AEwFEKmcP2s5KbOsfO6CSLzM9niZTZXzZx0m7b8FIDXexvt+BMbdXu0UT0gfNCWrddcyRKNRdHb6h+r9tGHx4sWoOnxIUsJEW7gax3ZtBOxAfKYRZ35NhwnWIYgaZ7plTNOE6dS1XBjca/K7YXDPYr64TcOtQ68tHDHfZ4ZhwGDq+eM2uDpMGfoOpH7MiDFlYwLctE8YWiT9E4tFOZoS9wktI3vvWLwd/p4l2Yq049JKcZlsuxzdFJcfbp5upg8MAwa5p/VjUfKNNQCG6Ytbg/+3lI0ZZsyZ7Ptp8G+H7W9Cm2ky/d3Z2Ulwc33s4DK4PpX0DynX3t6W0Arw8T/vw+Tppyfsk4ycfCkeG1Ky8pjxY5LvwMxjwZwEgFg06tunTJ/E39sPB73mx1iUjEHRnPTQE/MfM7EYO6diCusUO99NZpyK6huGCSMWw+F1i7DlpYewIGynhliPtLyLMGK25XrKzndTuG7RdjJz1QJsZOcX4piNyxSvH4YR9e2TqGFi0b4oqhpN5GW3w8iNAlpc3WRw64dg/TGMGErHfAXjr7oTh1/6DY6EXQtA7xwND5yVhnWjxmAN6XfRWuLpY+7aeT/TcHFxc100J/n+3rx6mVTIMgE0h2tRs2Mtegyd4Lyrbx+Yhmd8uojYvuPf1y3mP1es3915RudH9dHDHjx+EKk5CrOsnwe3tYb5rwXM2m2645b+5uBwaPOObfs+GqW46VrCzgkKhmBN1wD/voZlbbTPmPJ9T4HicPpe0xm3+v9oGluX+XYi3KbzjMENMOWz8tTmOIW0nELkpgcRbrF4UdG+kKmIOzW7QNiPzHg2/dcsgFu7Y/5jBKaJmGHimte91kEKz9x/K6bf8TLjDjt7eAi1Y7+Fwdv/hqpGE0Xffw0nnXQSAoHAZ8aTA0A0qhZs5/MKn2dB0T4xzNvbjwLoR8p0VM6fVe9TppSU8bOrV3NlmHYq58+qL5+7oIOU8YNbYJ2hBAAUnP49HNq1DAsXLkSPHmrh0D9p+OCDD5TK1R095AiKjY2NiGgRoNVEpMNS85itJho6vCqf/UYYkUbr9wPRMCIdQFOndb9hw3pEIhbjsH79Oud6+/Z6pAfhPlvnPqOwY0e98/uevWFEGtz2t251n61evdq53rK5Hs1RDZGIFm93fULc9BoAdu0OO/VXrVzlPNu4oR4HIxoirdaz1atW+eI+FA0j0qw572qXCWhAZWed8x6U7rVr16L6mOb0t4juPYQ22geBtjAagnDapbhXrVqF2lodHXH+aPPmel/cZblAQ0ODhXuLW2Z/LIzmKBBps3CvW7vWebZ8+TJEIu7CzPelDZWVLt07d7pl9lWGUd+sObRtIrQtXfqxg1vXgN17XBwU9sfCiDRZv+8lZfjymza6uFescOmuag8joAORFqtsW8BEe8zbzi5C9w7yXaPNJna2VTv377/3noO7He1O/QjRhAY0YH9HvUP35k0uPtr3hzrC1lxp1GAaMfz0xzcmtAI01x3Fyvf/jZaSMR66t29zrzuPHBHioNDU1IxQnPaiNODw4UPOOKPfm44rOocAYMmHS5hx4tcnBzvDCLdpiMbHAu1jSjc/xpYvc7/lpg3+428fWacAYPcu/3lE+75VB1auXOk7HikcIPO9VQd2d9Y6uLcRuteROa23hfHkoy9hzePetCFt4WNY8/htGHbJLSg2p7rrXquJ1np3jm8htNI1NDurB7LzC9EosTqk5PRANDUbkXqr/w92hhE14axtG0g/rli+wrneuzcMrcbE7qXLMG7BAVQ12hazVqS8fCEGnH0NeoyYht27d7lzPGbtC/baRr+rvc5llI/FKzd/Ba07lqCq0URZtoaT+wYQ0DV81NKCSKs7Tui8rqxk94XtO/z7ZNOmehxu0RBp0hAyXQaxqanZ2uviUEn2GbpOAcAuMmbWH1gp7FsKq5+4DYPOuxY9RkwTjudWHajsqGPew4YD0TDqWzTYnvC7dwrGN+kH2s6hzjBM8l3pGljdUqf0Do0tbc48pXNlnxFGbRvQGN/vV5E9h86VtgCwdWsNQ7ffPkPXwD17wgg3uO9N+Qe6lrQHTOzqcOcbhf373D7ZS76r3mYi0u5vvkrR4exF7QETAQ1ojnrLhtrDzn64U7DntTQ3MWOLfvOD0TDq2724W3Ug1FrnzPG9e90xR/e2zKweSMnIRkdLI1QgJacH9LxStEeOOfvcLsEamJ9ZgFBGNjoluIMZ2Qj06Mes3xQon7JbcA1wa/fGet8xEjQbsKgyilq5nIjmhjD2r/sQeQPHusI+gPaODkeAf7W5GW+99ZYc0f8D1NSoWW0/r/B5FhRt4FUYms9vPPBl/Mp3pwwPdwO4376pe+fPZQC2zZw5E7169UpA4qcDmZmZuP/++xOWKyhx6cvOzkZuIBdluWlApA0AUJqTCq2h3VOvvG8e6vaHAQB9y7JxpKENgWZrIx47th/WtewDAIwb2w9rmq3rYUOLkZ0ewrbVlqVzwoT+WNW814N7+LAS7NtsyesD++ejZq8r/48YUYZd661zOJMmDcSyxt0AgJEjeyLc0omD2y1mesL4cqz9sNIXd+UmC/fQocXYt8XVHQweWIgjuywm64TJg/BRwy4AQEVFHzTuqkV7TYvT7scNuz24+/bMQePhBuddbdyhgIb+vXNRuy/s1F8ap3v8+P6oXHsIaOzw9B2FQYN64PDOmvi7lmHXOqsPSvLSkJ8RQuPhRk+fTJo0EGta96Kt09oBR43qha2rWSuzpRGNICcnB5qmYdTIntix1tI49+uTi3BLJzpqWxxaVzRZ32vKlCF4v36Hg2fY0BJUbvaenRg4oADVeyzGZMiQIhzcZn2f/v3y0Hy4gaHNHhfTpg3DO3XbAFhuRIMGFDjfhUL/vnkIx8fgoEHutxtEviMAjBnTB5tWHAAATJ0yFO/XbwcA9CzMQEpQR+vRJgBATloQDW1ejR8dJ8OHl2L3BkvQyk0PYUjfPBzcfgymEUNmWiuadi1DWk4hAj1TnbgJubm5Dq5QQEO/smxEDjbEaeuNTSuseFsjSd/3KspEdnoIm19/FVteeggfKaYSyE4LIhRvb8iQYuzfatFN501aJEVYn0LI7EBubi5M04TWGUHvXr3QdLQZADBsWAn2xucR/XZ8308/eRQWHNtk3RD+lPZJ37JsRI81oz0uKQ4bXoI9Gy3cw4eXYs9Gq7/5MXbitGF4r94aJxUVfbG+db/nHeg6BQCDBvfAoR3xeTSiDDvj82jkyJ7YHu/7tJCOyZMH4MOINf+nTRuGd+PjkQY8Ku+Vg8ZD1ndMTwlgUN88590pbjqni7JDeO3+J/07PA6Vbz6GSy+5BNX7LGasNCcVBZkpaKyy5jjt7/HjyrG6udKhZ8bXLsRrT/1FiLvXxNMwcsRI7I9/u75l2WjvNNBeY33XcRV9sb7F6scpU4ZgUdia4/3L89G2cym2PXu3B2dHQy22PXs3hl1yC4Z8+wrs22b1b3mfXByJtMGM7x8jyNwZF+8T04hh+5527NxjzbviTFcgz8zIQG6KO04GDyrEkZ1W/w4oz0dtpbsv0LExblw5VsX7ZPToXggdaUTkYANCZgcQr5KZlYXcoIt7AFmnBg8pwoFt7nwbMrjI2VfGFU/Cy38Vdq8D0dYmbHv2boy/6k6MOPnrznvTsZ0W0jGgT57TLoV+vXLQdqTRSVNF90QKdH8cOqwEe+LftVdJFkzDROsx67uOJd/1kjnfwv/++UGp4iktrxinnH0B3t1u9TddP8r75kGva4HeZO1ZEycOwLLGPQCAqWTtzkgJYMSIYuxcVwXTNNHY0IBsss9sa7fm25jRvbF1lbUGDhxYgLrKeue9Kf/wlZNHYsExK35hVmoAg/vlO3OZwoDyfNTEx8agAQWoifdvz/x0GPX+UkdWagBN7daCnZMeREjXUdvsjV/YqzADnfH9cPjwEuyNf0u6tmVmZiI35I6t0aN6Ysca61379sxGKNKGumbWqpUW0tG3KMvhHwYNLED17jqnT47Gr/uWZKiftQQw6sLrUdazFzJTg84+R/dh+l37985O6MqsQUNubq4wmM3gwT1wOP5NBg0qRNVOd0+uIvvC1KlD8V58H66o6IMNrQdgmiYaGhocXiTHiGJRpVr+xraqncgdPx16WAfiAn96WpoVjhLA2WefrYTn04ZDh2RefhzMy70FwGwAw2C9yccAfoZ5ke2fCnEK8HkWFG31dykAelK/GK717wiAlPK5C/I5q2IxrM61y5T44C/i8DDRXeKRUkPwWjQdqJw/qx1wTQjaPV/LBoBgMIhQKCR8sU8TZsyYgbKevSTupxrS8opQNGg0ELZ/0qFpGkJB3VkwQsGA7+JBfw8EdGiaf51QKOiWCwbYZ8GgL+4gg5ttn96nkPrBYACBgOE+C/njDiniDlLcgSB0XWfufekO6My72teapjG46XuHggHogr4T4Q4GWNyUthSebk2HppmefqWgxfFY3570j64zuOm35PuA70uH7iD9XmzfM7TR/gmFnGtd1+LjS71P+PL0WWpKkCkXIO8nbIfQTXFZtAVwZMMH2Pzig/g3YbxOyA3hD2cGMXt4iMWpaQjoAd9+pH2v6zp2LF/oG4xKBrmFxWj3wUfpzilUiziZltuDPfOo+/e3dy1w64QE85AZO3G8iXDr/Hdl1hn/8cfTExC8Q4CbU+x3CZJn7vkafh7Stpi1hFxX71wvzaEIWOfDDm5bBy1jgIWbm4dBwTplmiY+eus1Ke6qNe8hoN3h9qmmQ9dN3zlO39s0TPzhzp9Jce967Q/Qr7qCWT80XdAnQWvebHjmt/h3S4OD464lQGE68Og56dAms+OEnXvcd2XWD/+1WzNiWFRpucweLNkODB3sMLzMWNADQtxjJk9LGISHwpaXHob+zUv81w9NZ+4p2Gub/Ui0dgvnoa7D0Ezfb5makurkqRPByDnXIZSS4vvtArpuRQb13c/oXNG4OeLuMwFu7+bbcd+b4Cb7gqbpSntOgNkj/Nd3p+/iJkVr39Ok3wVg99qYYTrROfeX7ASGjnTGFu0TXQ94xi5gj4XEa9Oh7evQ1tSARECjBQd0Xbju0TFzYNs6dDTLcXe2NKBuz0ZhMBvaTkjwDnyf8LyEPUY0AIbAxZUHKz+x5T5sz/EtBQewsL0T1c1A2Ucf4eSTT/7Mg9jQtEcKMB1WBoaVsGS0XwN4G/NyR2BepPlTIC8hfJ7zKO6FJcA5iVPK5y5IgdWJthC4GkAnV6YMwChSZimA3PK5CyaTMicAyOXKjIrXteEMWELgavwXQSAQwK9/e5+0jB2+2VOXRKARpseQ4GWYS25BFAYWISBPUOx/w5dTCUzCA8fPK5UT4ZYe5OYeqSyFsj4VV2Lz8QkP6Ava8W5m4mfiPvHHbdOXCDTIAgvQPqF1xO3I6Kbj0TRiqNm5FodWv4td65YzwSkorF/ylm/eqSORTlz4XCte2uo9D8GQIBjDMSOGN//qdU+UQVZBCcpHTvB9RtssHzEBmQVyYdHOASbCoTrWKdib+DMbO518rolwM+1LVgPlOozgq/n9DNPk1wL/cc8sXybbFvOJyU1LWM31iAac0cDT43+9f/MqJl2DH7SFq7F74yolGui77lm/HI0R/mQHC9GWRuzasEL4nH6jZe/9B6sfuxWdLV7GtLYVmPNcKxa/8xY7RihtHlppO962D699HwtuuxgznmzBZS+14vk/3cvkDFRNtRMMBJ0gPCrQFq7Grg1id1VxxEf2gTDCrnBOcsW4H8oqpmPC1Xchh1j2ATdPXVnFdHkgMtF8k+2v5DogwS2im59TCl3CtCNLYs8/U+Ef7HetWr8Y5Q82OWPrmT89wI0thXfVJHOcFGtWDDgz4oJrmYA6FIc4yJma8kMezMb/JTxbPx23wnQ2QEG62t6SkpGDqvWLMfH3lc53uP9vL+K0p1px2UutmDFjBsrLy/HSS554mZ9fmBc5C/Mif8e8yGbMi6wH8G0AfWHFS/lM4LPOo5gFYBD5qX/53AVjAdRVzp+1v3zuggcA/Lx87oKdAHYC+DmAFljpLlA5f1akfO6CxwDcVz53QS0sR4B7AWwE8G68zNbyuQveBPDX8rkL/ifezqMA3qicP8s25b4NYAuAp8rnLrgZQEEcz18r589KrMb5nME5552P8Vfd6ZNHsRjf+sk8HMwdDc1s8dSjobiFwpxk0RUJet5olKL6aouDLKKhbFPwK8/TIwuxLtoMVZkNFrcmPBguquN9Nf8FWYNaaHjqWC2L6ilifmWgFm5fvDHK2hKlguDLyyKbMjlDycZPQ56vfdINxa2Nu8wpbxgxvPzHX/vSZsbf44Y32zBmWsxRyJimZJyR60Nb16KhVj0MOgAMmnYmm6hd0Kd6IICTrrgZbz3oFxXZGgy8Ekn2Tdh2/Odk1frFKH++CQcb7DF1ndOno3qdoxZhU8JsqNZhngmurW/nz3TrmpuJTaZ0EK2PGXlqZ9ZzCoogOinEpviw/letX4x3//VbJdzh2mqgR19/3D7zqGr9Yrz9tNfl1A92rl+BwKSBDi6/KWoaMTx6T2JL+eK33kTa8tUYOed6i+mVzHHuLZx2tqxein898UfsWuU9s09zBmpD5nC1vXTb12UV0zHk7Kuw49+PJ3wHAGioOwYU9InjJusrTOnaZn0La76IxlO39kpyya/xJgn4I1uTKajOMWGid8Fck4GmSRSIAgUQzxOYRgy1uzegvaEWRmkptLLh0PRA3Frq3y7FHdDU8lEGp3yTocfvm2kQ71O0eGZ+kT9hHKTlueW866Z/O9kFarhTc8RBb2TKCo4K3zpsCRPFmWojorXuCLa+8oi0zMGDBzFnzhy8+OKL/62RT22tjtoh408BPmvX04lgI4rah+uehJU78bcA0gH8EUA+gOUAziA5FAHgRgBRAM/Fyy4E8C2SQxEAvgHgIbjRUV8D8CP7YeX8WbHyuQtmxdv5CJZf8NMAbjruN/wMQIO1qaX3HY279l6GqkYTWdnZ+Mu45zBhfB8cXHeYKx93A2QWQ8EkZn7mBUCB4KJ1TZgzjRj2bFiBQ9v2uonFKTPGcSGiTQnM72oLj0wo4tuxzyypalP5PjGZZyr9zYOLgdd4srj9a+vU6kiZCL6cNLWIP4g2JW99NYGSoUdVKy245hkCXdcSbvyr+xcAOaMBANU71iFcIw4MYwI40GCiF8k7ZYJjxhl63OtmRdc2Crs+fgvGNa7wxwgUHPM0cNKpmHD1Xdj//F041tDmPCssKUX5137oSfouG35yBUniPu1bkI7ggKkEX2ImwjRiWLPsIxxavQqpOYUwT+znW85LTWIwTZNbZ3h6TF/aROOMQunQsSgqLcOxI2LLX1peMQaMmohDu/35Ab5LRP0rgvweJc55Dj4tNa/k6ypuqZAV/1+7ewPqqtUCKjHCHJMAXtL3mqvsWaAwjza/+BC0ORcIn/t918yiPgrUW5DfoxgHDZc2CuL0GKwCUZTagX1vyf6jOGbaIzVOf+sVl6jhFox2TVNb6+SCpkiIUNtrGYsiufYoA+EqAwtPPF1NGWwaSvkozWsuT0g3L0Dy+5QNfYaPR1ZBiTCXogYrajD1BuHzBVOg79NvxARk5BdLcyn6eZqIoDvKX6YMzISBbGzYv2yBWkEA11xzDc4777zP1A31wuHBLMzLpSn32jEv4g0GYsO8XA2WXPQh5kU2fdr0ieAzFRQr589aBMkeXjl/lglgXvxPVKYNwLXxP1GZOlj5FWW07AfwNVmZ/xZw/Pn1gBP9qV5Lw6NxrZkIaO5EsXuomLGXuRvKBDCKm1/IAWshL7/5DiB7tJcGDp/YdYTSwkskrJBFfxYZ5miSdlVtmkyDKhaKKJlqDIEGVmMsFubca7qZelzwJMIcL7QZpntNfxfVZ+iB/3fw0k37UdKn9P10vhy5V9j4//XQnZj682eg6QG0htVyWjGuOpwGnxW+XVoycgqUcFNoqjuKfVvWAPbZNsGYsa/LKqbjN/1XIWXn26hqNLGk+OuY/q3b8Y94cB0ZiPqeB5Xk3u8+/juc+avnCW74XtvgJwR857m7fQVcL930Wo3ZFK0rUmZHtP7oAZw6azb+9ZhY+91zwkwEg2ImhmKOxRKPWQppecUYWjEJW9dbghrvcUC/ZSyW+NvxMGTsFOwSPLP7WzU/JwUrAbya1e/jd//dJeG2LVyNPZtXA6n9Pbj4e/taZlWhkJKVh6FjJ2PjGv+UFCprMiDeh73rGalPvi0dt4bCmNn84kMwv+EmMvcofEV08/eCucxaxRX3M8l3Edfx8jKJFFc5aSEMmnyqL27a3zs2rFTKR7l93QoAZXKaPZ4Y/t81EAzg1G//FK/d9xMfHBY8cFYanuCOFAn3bto/gQAmXnIjPvjTLb4U+nmaAKxldlfHIJjBPtD0gLIwL1uHizIUJEoARkdb4kJxqK2txaJFizBz5kzlOp80PHZe+jbupzsgkW8A/AHAGAAnfVo0qcDn+YxiEroJflPMtjHJmBw2MbJ/QY27Fi3oqsIc3QfXfPCm77mvtvAxPPKLHzq+//x6R5keFZdZmeVKtKnxz0RnLWSWOX4jY91axeXcdsQfrzvJzzXhjaygGDfLvPjT3RVhV8h0qwqeisxG9Y51CTf+uuoq1O7eAABIU807peqqIxkzqtDInW3zuxaDKf0ugP9YB/+9CKxa9nHCPm2sPYJju9YT3ALmFy6Tx+OsrT6C1Y/d6qwNInooiNx+KZhGDCs/XoJDq9/1nquk5bi+E7VrGDG8t+BlCVXA4dULYRg055+Y7i1rEidPpzByznXSgAq0G9atXNol3MH0bAwfN1n43BGysvKUcdpgJYAXn6201xnTiOGPd6sLiTY01ZF5wys3fdatwoFj0DMvFYlg1EU/Rkja36K1TfNt11OfwSWmg87XDasSf9e2cDV2bXTPVkrXD9nay1z7e650B7VMWGX3ZHZ91czEyo8Vz9wP0/Q/k06/Q0Ot2tyI1LoWOtW9W7Y2DT5hJiZcfRcKczOY33vnaHjh4nTMHs4FUNTkPBmFvhNmYMLVd6EoJ435vaC41Dm7SqFq/WIsnHcRlj18HdY+eQf+cNMVzvlM+Z4s2Es46JXz6YgmixYt+lTwqsLVr7YOg+VKav+Jffvn5T4M4FwAMzAvkliL+ynCZ+16moRPAfwmqiZwmwIAM75shALu5BQtbAFO4GI104JNjfuZxaHFE6DH8PQDv/Ktb8PmFx9C6eiTPFYNQ0FQlLLBAobXIs3fvZMKnrpAQOoKDSw9rvtRdzZW3hIqc3uxgbEoOiPCgq6dh7FaDiiu83ILoz/Qbyw6r2jVF23AbL1WRUuHbREpGlyBvB6lQvdTDV43IBkwtES6dwwhp6AITXb7CZiDqvWL8Y3n30SN43r6JP710tvof46PZU4TfyPZuKg+quhi2FCDbAcfaZaOR5l10k6Ibq8Nca23VxmUeAybVkFUrV+MTS88gAURN4BEWm4RRl5onZljBHvTv79NI4aNqz7GodWbkZpTCCMjgGNH5AnP28LVqNy8Ckjpn5DW+hqxmxgDmoYBp14SD1IiLkaf1VR38YzseT+SC6Hx/6byCshCY90xoLScRWbjjt/X7t6QMKqsH+QUFtuZM6RgN6vpAdw1ezCuelzsBTZg5qXoOW6GcN6Ypux8FgvC/UyoVBFHBFD9rpG6Y0BhX7shBreIVlWFHbuHqtXhe0XYllB5q6F29walfLRHd6wDSkd6nlF8BUV+QfS9UFhU4qRpUO0fUZv2ZVnFdNwyYBsKd7yEqkYTT5bdggUFv5OMExFuzVOmrGI65pcvR3DXQlQ1mniw7G7MGFqEt1bvQM3OtdYRID2Q0DI7tk8uUDA28YsLQIOJk/sG0DtHI2fbvZCWkYm2ls8kCGi34YWt0SbMi8jjnljupg8DuADAKZgX8eaS+3+GpEXxCwgypkjGLNDFJtgNgUvkbujB4VOudvcG1B+TMZcm2sLVqN29QRk3Q5vAVce69xf6rFZpORcCPgutrH3rGUuDSJgLMP3j344XOYtLJZiN8kYvuaOg8woA+3eJdVm256tYQmXWHLHAxLJT2flqgUZsC6GuBzDnh7+Q0vbAWWkeVx2RpZhxPVWkhUJWQQkGjHIDosnGzO6V72H1Y7cSIdGCuuoqoWVOpDSQDceS0lIl2tNz/N+X0r1T0dXLtvha9dXWQFrKNIHFby3A6sduRXuEjTLYFjnm9I/XrZ69t7Xtt333Yqx98g4se/g6LPyDn1uXFxpqxdENabOFRWqpTmCa2LPwGeu7SixmtCd6FKsxwilZeRh/1Z3oMWKakpW/o0lFJPNCbg/3XUV7W3fcWlOy8jB49ESlsjTS5S9e3OFbJpSWjonfvgMjzvsBAH6PIIoPiPcMXefPKPq/r0hpyQPd01W/az5Jo8N/V5U1jAfRPuMNSqcm7KicI+T3+45GtfHRJjhWQL/D8HGTmaAxfpCWV4zRE6cQ2vyD12ma5JiGwG00qGs4pTyIS0eHUDZolLJyXBhUiNwE4rhTg8D6f/4a86/7hruGzbsIh9e+n9Ay++IjvxFGCxftJWwZEwFdw4NnpUn3mNMuvkpKhx+ccsopXa7zGcAjsI7KXQagEfNyS+N/6Z8VQUlB8YsIKsKKjyDBWGoUNJmyZ7Iw+n4uIqobfXtDLeeawz4XuoQqarMVgqYC4M5zCvqE3xf4hZo5R0ieic6fyHGzfcJsSqINQlDfc35JwgQym4yi8Kxi4eSFOQoiN2KZsCtjeHqPGJ9w4y8oLnMshKYJVJx8JiZcfRcKcjOZcmW5Kb5uQHxETZELZ89h45CezYauTwTTLv+J0KJD2zFiMSx67C4prg3P/k64yfP4WDmD7fzJU05M2Kc5PUpRNKSCoPAf96quXqpriNDt14hh/i9ulNbd8MxvYcbE/bNy0X98XWTbE+QpsyG3UNxntH8i4a5Znje/+BA0qVurez0unjNQBj0yNMy573XXAi1RxNjPVM/3UUjJysMgIsyJ5nh3cI+66McIhtTccXXNdX+uingTsgNAZ1srNr/8B1fZIlhrbXw28Ou9bH/zqy/bsuxnsY5WLFzwCvSgPL9zWl4xhlRMIvW7LgDyP6gIB3LsFK2MHvG+kJ6rpoATKer4XIB2qhQRNSPnXMe4HovKWXuRP9/l3Te7BhZeEU8mhpe2Wime/I4ArXnilwmVduFj7jENybCQ8FrW6jR7eAgvXJyOHjmsfGSncpn1zR8hlJHjh8AXCgsL/1sExe/DcktdBCuHvP339c+KoKTr6RcQ/Cag5jwTLxEqUU89lhnRxOeqU+GDcdu0mQjF8yupOYUet0YawY93CXUDzhDSPMKOf1uy/H8qERq7AqLNVG5981/4PYszhzvm49bKMMye+uINhsFNvguTfkLC1fDCoQoIw4l7XJQ0/2uuXiieI00WCOOy63+JSs5CWFYxHTcN3IPS7c+iqtHEQ73uwb96/RN9W7d66ssCBHnGj+JBxbS8Yoyccx36TzxVYmV1r/dsXIn2pogUZ2dzBLU716LH0MTMuYzxCAYDTp9q8H+lM676GXQ9ADvxhOgsa14PNesZFRZkDIoIju1Yi4aw3OrV2dKAPZtWAlmDAbDWIdOI4X/vv0OJVj8IZeRg0OiJqNzub1W0X8E0YvjzPb/sEu62cDW2rVsBoJc/btJBwWAAPSechj0LnxHiu3xsOupDKUCbFbCP33P81q3CgWOQnZePxgR9TGHURT9GIChO12JD4cAxyM0vQKReTYC23UNlQOeOYcSw4ZnEaUhaSbRWfdqVYty0v3UN0Zjp/B4KaOiIWs+EwdkE3ht86g1dB1b+9RYc3fhhQtoB71nW7mxtvIpPtM/wVlYGh2DL8JvXNm/BWubYNbB44GhA0wGSBsRDt6ajbGgFDoa9OXDpHhbQNScf5dHnb2PcI+012Up4n1jgl/aVkFJaRrxZaJJ2RWt3zDBx/Ztt3T4rb4OttFNVErNlLDqW7I+hPQr89MLxGN+5BtXNwIoTHsTO1CHQ9AACgSDGXPpT5QBWjz766Gca8VQZ5kWOn6H8hCFpUfySgb8Q6ZMeQxTMRiJwyRhHkylHrnVLU7v2H/556SiVvsnAwQmhBLfwcDsvUNBr/h0EEeTEUT3Fc5zXFoqC2QR8BGm+jAw3RzZn6SW/0/rKFkVeGPPHIWrH2/fi9ztebbqqKzTd+PNys5hntvZy4iln+da1IwtfOjqEHoPHKeXxBMQMwaGta9GaQJgDgOHn/xAz5z3na9ERKUX2SpKiU6jZtc6XNh6hbDxqcPu0Vw5b0O7T4dNOk1oBbBg8ZpKSq1f3wre7NzU71yrVp/1omu7JOyv9Q9fPyVHCvJ4c3v6p3b1BmmZDBDS4hqdpcm3EYtj34StSXH9b1cIw3SrzWNMDuP6XajkfAaBk9EnoOW5GgkBdmoP7jHMvVMI79NSLHfdQab5Xcr9h5cfobFFPqbz5xYdgEMuzDHdQp7EBuFgBoqTkkn2Ywm0/+paSkJhRUOIELRGv3WIapPQxv/uvU6K2TCOGZR+5QaUMIyaM6M0qoMFc1+zZJBUSASuX5NEdG3yf+a2pZRXTUXl9Ft6/MgNPz07H5d+7llmTRcd3TCOGmp1rcWj1uzi6fTVinZ3O/a51yx2PDqFXF9ndDSOGRZVRPLOxE4sqox5vEFHfizbOjZW10nOBqiCy8Mt4CRsqNyxD+YNNmPFkCy57qRU/ffwjfOvVNqQGgaEVE5lz6PYeU5IlFmV69+7935xD8XMBSYviFxD8J6A4mI0NAbIriSyKnuS1gjWFDcsdw+ZVK3Fo9VYr95kxzHl2aK16vi47RLMnhQU906H7B+SRbawiYUfm+uEJyONThgfeFZbPZeaHm21fwjBx9wLPUwR1HZ1xBkbcJ2qRHHkQC7iqGAho4naFLs4yQZorx2rdrZuyium4alAYI7b9EVWNJjbPfALrOkvjY84tT62DndEYHljWjt11Bnb3fg7tk9Q2WZEw1xIWn1GjsOvtp5BRWIayiukwYQoF4U/C2k1B/E3870tHn4R7OtKwqNIac++OuQeFg8fFw6jztNJ2yDcOSKyTcY2LJ3y7jAkV9UkCRlKIO37flUihftDZHMGujauAoJUbUuRe3p3zeIAVhKMybizx4CZ81sqPP0CsXZ7IrKkDOLJ1FYJ9KuK0icvSbzn9zHPw9MxLpdZKG45u/NA6EzqG5vXjcbsw7dQz8PyTjybE22vMib74ZOvruuUfJ8RLoS1cjR3r3fQIPIgijMuUr6LfWY8Pd4bEOlrx8cI3E9I6+Xu/xdCJJ6G+xetSnUgZpAIqZ/C87Wq+6XA25Bcj9frbnGApdjA8QL7/dCjOmdZwDYI+DgwiDxn7TB8AbMkejDBZg/wEPb/0Xwvv12HG3cLXPunmdcQo19OQ/cbW+760tRPPv/V9PBlpcZ6lvXoRRs653hFWNUHfi8ZVbaN6ugkRZObkO0o7ebwM//5Z/cT9nt8PNZi48LlWXDN0IVA0xfNc13UA7vrdIx24vCKE806fjpNvf/O/w5L4OYakRfELCPaCYBJt04d722BEO7BlzVIcWv0uqneuR8xguQW6YYm0YRQ8JXyY36r1i3HL17+CX//wEudQ9NdOrEDV+sVW8ux//T5hO2l5xbju7j85i5/q+UeRAOghW2oJ9Wf8he6P0m6TPfQXrFQZfaaYbHMXKBVFioGE7ZJrkXCo2j88baKyKi49fLvKZ2Z13bEQjpo41dVe+uDf8uof8c3bnsCNb7XjDys7sfXlhzH4F8vx03f8N1vRlKLvkJGndpams6WBCT6jkp+sfIw4hQGFwkHjWPoEuBMFs7CDupz2VCvuWtKBu5Z0YN0/f4MjcQuHLCgM/wq25rg0h93wi0rKfMO3y1Lb+PVO1frFqPzoVZ8nXhg0mu1HJ09gU1ipvgwa68TCpv0O3TmPl5ZXjBEkhQUf2Zj21xsv/UsJ566P/0NoE/c3DyPO+wHGf2seshTU1JtffAgw/C2XfDumoaak+ehvtzvzRnXd687qSCPT8vWZtVcg4HjAdC1RO9Yucy1PtA/IfrX5lT8p0Xl048cIBai7qUAI1VjKpaQKFJWic9q84uLDdxb4nvVtqa/GY/Oudb6fSAjlla3piutqZr6/5wIV+kRjhncD5T2N9q1+3/edTINVUNnRQ9cveYvUZ9uyzxG2RGp96yZMUyG4KcxO44t2A/znoWnEsHIpsQ5zZ71l0a1tjM/9+V7GauqcG26IMuVrW4EHl3Wirrk9KSR+ApC0KH4BQYPmhHif0WBrm1oB7XT8m2jNy3OsyFLmVGulYDVl/joEmaWIFxpEYZSrj1Th6GO3YsjZV6GlPnGY94pv/ByTZ5yFPSsOxHGzz1k3S/daVaCgoCpQClM0cCByuYUGoeup7DylH14PnRJmSpirTrJpMwoA/pFAGBNrkWW4WVxqOcTEQj4zHmmCe67vhbk3JWPhlb/c42sVMUzgdx/Hg11cwj5TEbJ6DhuHnMISNNSqhbLf/OJDGHfyaULrMH3vAaMnITUrB+1NYhe6UEYOegwey/wmxC0Z92++8ao0hPqEq+8C+p0vVHD4oS6rmI43evfDtsojzpnQX35nNv64uGvRw1nhIoYd//k7dvznMaW6ocxcDBgzGVV7vOfsupMnkIe8wiIksksWDhyDotKyLrmfdiWPYmuzWsj5aJtbTsb082ty1frF2Pjc/ehkeTtfcPL6aX09uHh47dn/VSEb7U1hZwxqYy/1pRNgx+C4KSfhqT8nVmpSoOkRKJimKYwwroHfF6xnvCWKWp60KVf4tt9yTC31WnPNQbFSVUHYcAWAVUjNKUTGiPGePdm+V9rbjBgemHeTlOYNz/4OpaNPQiAUQqcTh8B/L9A1DSVDxiKUmYNOSVCptKw89B4+DrtrvB/Nj25bEV/VaKIsW4MxkhX4qEBpxGJY/rTXUiaDFx75Nab9/BlP9OyYEUt4jnDziw9h2qlngrL44tgH7s3o8kL0ztFwqEGkIk8MzQ1h1O7egB6DXYWjn3X48ufuRr+v/RClY74CAKhLkMLEBFB/7Chqdq5D0dAJlqdaAsHyhidX47zfxpLC4nFC0qL4BYRXXnkZax6/zetuwblW2eb8vRuWA+A1cv64pUELuIVROInjO+HeRS9I3sKFjqZ6scWEY/pFLiLdsczxaSb83BX5a9qK94C+hCEg5YIiumXCnMIZIUAsPEvPKCrj9scnq9Mda6NISJe1I4skyLy7Aj3RaDvee/5xMbEA7vu4A0bUPzoi3yY7rgI4+xq1VAqAxUhXbVsnPEvEtKPrKBs6DjIoiOfKEgHbjn8HmUYMt99ys7Qd+wyXiCcVCdW2q5d9JlQk/HjHgndOVa1fjGvPm6YsJALAmEtuZoKr0GA2ic5RJoK0vGIMHjOJ/MJORHoe7/tz7zyutnig/TNuste1yw/oWGLmEEzOVc6FD+KWoq6c9wvXJrbMmUYMyz98TxknYI1B3prD4CaNjTthGkKZ6hEW0/KKMWqC249ei6v/PsWXo9FW/aJQrn7sVqx439+9NKOotxKtWT16C9fHREcIbK+Bqy46x/EYev3ns7FykUsTq9ij13yfWP9rdyoElYoH3WLSSumiPo3jTij5mELBmOUrdOe97XN0M55swUO/voNJL0T5gn2bVyspxSnUV/tHD92691jCc4Rt4Woc3raO+U2oDCBgp6U4XqDBbETjt6b6COMV06boHrzmiV+iav1i7Ny4KqG7/4HaFixZsqQbb5AECklB8QsGsVgMN//4RqWy9lKz7OW/wzRirEVIeDBczM3TJxtWLUs4iVWZBZmrlbX++6eZEG1+qm5ShhHDoa2rHFcJ6vIgTgWh1j8yxkEl+Iy3XUk5+H9XET28LlGkfeRxiIPZyIQ0Cd2CZ+J8WyI2UqoYZwRc0ftQYna+/6JvTiwKBoC9H7wkpE9EjwlgxLTTMeHqu5Cequbw0VxXzZ6HEfRPtKMD+9bIN82jmz72CLgq35je1+7egKrDh6TttIWrsX/LarYdwQeXfTsRyOpQ5kWeu5WFATMvtVxcDcNxATy2Yw3MmCVsFA4cg8IS/zNpKpDQ6keus7LVhRYgLhSZxNXLowxy4ZIrr5FrbWAxDqNOvxC1O9fi2IbF2LpmqbM+iiyKphHDH3798y7RDQD5PcT5/+wxU7t7g7Il1Ia2cDV2bVjp4uJxk19CwSDGXPJTZdxWegQSrVWy7gW5c/V0/Y3FYtjwrDwA0F9/M5fpexv1yPO/r0Rr6egpABkbIqWTBvY9Fr39hq8A0FpfjYdv+b7rFs+8u1dhA7B7Dg2mJYOaXeuECkRwa23NzvUJ+Y22pggOb/UPaEXXpo/e9XeLbYyEGcGH0iNzKZeB33nk2ojaON+/cSmiHR3OWrVtjeuuzG9t9P3stBTZuXkMvrS8Ygw5Wy13oc2zmRKDgb1QbHnpYZhGDGmKLvX2sYu1H7ytVP7QIflelITEkHQ9/YLBkiVLcOiQmssJYPELzeFaS3M1vo/zO2PV0t00E4qGOdQdU3OdS83MEeYY0wCU5oQ80Qx5Lac4oI6gDiljGjHsXLcch9btjAfaGQnAYiSv+vXFqDnquned88J89Dn7ByirmC60+sncl3gahMFsBEKjqhDqecb0g/810yemhFmQSHMiwUrVokhB13kBU3M2FmXFhbAcW0cUal4kqB7buV7YJoW6PRsw8FTX/1TF7cqG+srNaG1X8M0D0NrIat9FY275v5+FmShgi2lg00t/wOgLrwc03UusSDlBrlWDrTTV1yCtRKC4oNdMX3FKDK5cAvkdgBrz7Qe2q/GS9e8jUuMKmJufLsXAc3+Esorp+O5Pf4X5P/lul/CmZudj1MU/QVnF9ARWcff6nVef61IbbeFq/OdfT8DsPUNqMQaA1NQUDDj1EmnAmbOGpOCZm2ajuc6yksx7gQTh6Hc++w5whbmao+qCuVVZx+BR47F1U5zRFij5uhvgJ1JbDRT28X3mN+wDKemIdYgD/WQWlGDYBdd6viU/3RnXUy6YDR3Dm1cvk7pLAkBjpN6T0sam9eTTvool7/5HUNOCZX+ei43PFWPYBdfFo56K124bTCOGB3/zCwlWE5tffAglo04UnsfkihPcakGlTMMQex5w79AaUQsS1hyuge5znNHGZxox/HG+PPje5hcfQunok5j1Pruge94GtsDF5FBtblequ/KVx7Hqtb/7B8o5ub9Tzu+LzB4ewtJJv8GsTTc5bv6FA8c4rvrSNCO6joL+Fh+1W8Hq1xauRmTfFvQdMxVpeUXKQcE+/s+LSuWOHlXjRZMghqRF8QsGVVXdC8/OJ7LXBYuuqkthj5JSpXZHn3mp7+82qp+f3dsTdZJvlz0HKN4s+GvbfeSBGy933GZOP2EUtrz6R6x+7FZGSASss5W2xlBkcWV5WtNzVkMEos1ULAj5u6Xx1zyIghRJaVMUUBnXH9GYkZyf5C2XIgFX9XyoatRbkdAvqh9IVXPN0VPSxc8kffrWE/cqRYW0IS07X8mdt7ZqvxK+/R++jIXzLrICTnHPWMHMfwFQDbaSXVAk/v6KGimmGAk7v2fDCk+oeBteeOzhhMy3CPYsfIYREgEgfOyosy6ceNrZmHD1XQhlZCvjnHARjVIom2vuswN7d3eRcuDxe+9wvqsHNzf3Rpz3AwyYealwfv17R4cjJNpgu0JuXfqOb51uCXOmgd2b1hDa/KE7AX4AIL/ItVbKhtyityzrmUxInHbmufjG719T+5Z0nxK4TALAppVq0VaP7Vzj+/us2Wo5upvrql1rmIIirnb3BlQfOSzF2RauRt3uDRK3eLa8Pb5VXXxDmTnMGWyZl48oSA0PmYKgN9RbItHZ4LZwNWp3b2DiPJSPmoCMfLV8sDZk5eYzSnL7nXIzU5VxiALlLHtPrjwA2MBuPeKRquv2bk6cZsQwrHIAGurVhL7OxjpouhXdWhVamxuVyv3617/GSy+9lLhgEoSQTvGaAwAAdgZJREFUFBS/YFBW1j3Xp9ScQgkzLrKycEw/uR83eapS7rNJF1xtudlxC3TvHA0vXJyOM0fkx3H702aapvAcoSx6qMhv/mjVYTGTHm/IisTnMqHdOv/IaY4ZRl9wjlCtFXWhT2S1kSU/lrUlspjxgWRE9FCKvK5aAkFYQfvNA18s0EV8+b0GK7WT23MQc68yTjo72/HRy39Xwm9Dw9EDwvOCtM2Csr7KONvCx7Dm8dtwcCPLqIrGj2m6379w4BiU9fRP7G5DWl4xykdO4HCTa0E9PrIgVfq8c/tFWPbwdVj75B34y8+uZIQiu5xpxPDy39WiQaqDuy4YMcOK0PrtXynXTsvJd65lI4S+w/49u7pDqMMo7lyxkMXt0/KI836A3186zPN7Injzb/fAoEJ6HHV3hbkIcdsTeWwUDhyDvIIu4td0DBk1nuDy733TiOGBOxO7zG5YvoRTIIq/Jl1z+CiarFVcLaRI5eIXPQoA04jh7p/fqFTfBv7cpqi/Va0+bZFjQmWQqH9SM/OUcKdm5omVedzvZUPHJuRHsgpL0HP4OEIfoTV+o6rsaG+oZfmpQBD9TzhDqa4N0c4ORtllj88euWIFpCr87be3CxVpvhAflMrfPV4ut1BNOA5lFwCwApad+a0bUHD8r+hAXV0dLrzwwqSweByQFBS/YHDyySejd2+1Q+yAtfBn5hWicOAYYUAV1QTw9D4UFGuHbGbTOscRRFnFdMz65ZNO4tozfngn9l6fhdnDQ764GQYV3BlF8owNruJeywLtqEBbuBqHt7tnGUSCCw+8ZU0YrbU7wqHgmqdPqHUltbzBbNRAHPWUFS5EIdI9lmJBkCKx+yyvuPDHzbcjzr3Jfi8bUnPyoAKp2bnMvehdaTsb3nxWzX+SwNb3XmA2fVH/TP7qJdC0ri356179G5s4nDyTRT2+/Fvysywj51wHnYtEJzrLSvHGDNNJ+XNs+2qsXfohNr/0sDTYB2Wga3euRVtr186yqUJbuBpb11qBwQoHj0NOKEGFOIQPuUKf18oCz7Pa3RvQoqhNF8GiJ3/HCHN+8+Pw2vdx4zPbuoy7oeYIquj6GP9fOHAMcvMKuowvt8BVIoqEOU0PYO5dv+saYtPArs3+ljjAHd+1uzfg2NHEnjpN4Xoc3b7OuddFCxD3LBjwX38AYMzkE6ECsfYWrH7sVuxY7ioAaneuRSRBUBge2sLV2LZ2hXMvsoqqpoKp27MJmkipKthYOhRjF3S0NCjtbbqmIRAIOvyIaD+bceVPoQvyINp0qyo7LMU72VONGPYuVztTZ0NbSzPe/eUcjwJgcO+Cbp3bplBz9LAbKEcT9Qnlq6xr1e9ulxs0eqKSwSC33wjnfuCYiXjuwk9QUozDDTfcgFisC8JxEhxICopfMAgEAvj97x9QKmsvDlMu+JYnkT3DPAsELhE++87OfdajII95UlrW08l9Zguhuh5w3BzKBo3yuODIAqKIQMT071y/8riTY9MzD7KALKL+0jQwymJRVNdu5SCUMJuM0C9Gp4ybLecvWMnwidN1sEEdRO5Q0kA5TJAaMT30jJDIpZhC3d6tQlwU6vdxTLbou8b/V61fjBUvdN3a1dZYzwTlEJ3HDKakoGLW5V3C3RquwYGtLjMtWwvsJNkL512E3/3GPypnWl6xM/e9Cg3/axuq1i/G+N8fcCINLn/kBtx01YXYu0h+Xm/ziw85AWdUA2V0F+prrPMwmh7AsCK1hepYnGED2PEn0hd09zwehabaozi01SvM2VC1fjHWPPFLKKYm9EBLmK6PFnZND+CrF1zcPYQiIAPljFnnY8BM/6MMIojUJrZWdqW/W33em+Lye8akx9BYxWfFpGkIZagHLnr/7791lEbdHethkppHNIJVU8Hs/+gV/Ps33/ENbHO8uFOz8jhh3L3k+17X3FysZTnszmevSYNPmMnsyX7KycKBY1Bc2lNKV1peMQoHjmH22spuRD0FgI54Khfbnbtq/WJc9dvXu526gkJXxrUtKHbl2wCAHgiIBfR4/46YfS13btrEKeVB9M6R7dpAJqeIlYFpmjhw4EAyAmo3ISkofgFh9uzZGH/VnUjhtF+8dtB27+w/5gQA/Dkw91oUpMQDPsXKKqbjn3+43bEWTrn2ISxevdk5x+EcEqcMf4Jl0LMBC/MR+jPmNjN3PJBDzhuIUk6YEhpkC6AukDzlXa8mmAlkCAZMSZhwvh3W6uffjjCAAcTCmMbhFrlqyRUX/t+Ffwfm+zG0CfSs3VTnsoIw+8x2hY51ilNqyEAUVY9vZ9ol10vPnvlBEzlnIhrPAHB47SJfy54Nd5ySgpnzniNnuMRt8koeu38ON3RdI+zk4vt/gMIi92z2kEK13F0pqRnOteyz2Ot3d104eWim34k0HDtOjwtAfNbrlDO+2mVcjfWu8CVTgmmadbZy/Ld/hVzFY1z5PcSucXZbXenvLBK0RDq+hR47YITzYDCIMZeqR1ttrD2Kg9vEVlIVKJCc27Tvu5IKpjVSizWP32ad7ZesHzao4ubLMfsCx7/YbZVVTMeWG4odfuT2Pz7trEl8cDm/oziaHsCNv/yNlK6Rc66DpgeY9+tu1FMb3vzbPdi+9G2sfuxWNLR0b4/goTvrSHe+jSugs+thcalrMKCgQS1Nx9iTT1cjmkB3Y3h82SEpKH4BQYtrzyb9+DFnQXzrylz86a4fOfczfniPx72T7goidzzGvYNvV2AVC3CHomnyU8ea0wXGlU3lIH4mSgXRGK5Tb8wH0vKKUT7KPV/Fyl4yLTJ7L7aY0WuJAEivNdETngYBffSmCzkaRYGEhAFsPO/DCgSiYnTjF2mOPSASQjUw6S1E/S0SfLMV85NlcuVEfWIYx8+Y5xGGN5HWfsR5P8DLd8zB9yeqBb3OyBUwFAS5EYth/fPid9AA/G1NJ/ubbGxzblvH2z8NcUatcNC448Ijg7S8Yoye6ObOu2yUmqA4ZJorPKkEjiocOAZFCawaKpBJmDk6Htcs//i4PC5yepSibJjbz/SVJpwwrcv5Jml6DM/q4bNu9hw3A9U3ZaEoQ76ppOUVY8S4yQnbt/o78dn/7Lx89B3hnnmUeYOw6THEwhO1hGWlpySkAQCa6izBujtjPS2vGCPHn+DcM0cSSDkVyxoPm198SOjuzONONL5tq51oD+TXcT6/ss2PVEya4lqzpPmD3esZZ34NE66+yzOOc/LyMPWaXzuCD/3GOd2MempDQ80RvP03uYDaFdBJZFLTlCs1AFd5XzhwTML5W1BS5olUX1YxHWtv6MMYDF5ctMYjJNK27DQdxTms1se2AI+cqOaWzdDRzRgeX3ZICopfQKCJme0FcXp5CoLBoHNfPNh1jbAnJl0rqEVRZDHztts1+gD1QDCUOP7wv0GYftYiROqQm+xunJMBXLrts5VOO4r+uKxlTxMVE1q45I4YMhL8tdcsbkl92UMqcFEtrsBFUSY8889YYc5fWQFJfXYsyAR4kSDrX2fQ9NnQdPnSGdCA/iefz9IjUAZsWbP8uBjzzIISJlG7yvwKBYOYM1ztEJ0mdMdyr3dvWonWsNi1ygRwoMF0zsUAVp+KovVSqnd8Aq7iuXFGrcfgsUjPzDwuXKKRxufOSwmqba+BEFlLFJRgmh7ADbf+Wp1cH8gqLEEvEriDDpMaxdRGIjj9KvasF8UdCga7FNmQF+a8FkWyLhgdyDMsJWBKUMefv5ZmjTEPVuuXUbOvRYCs46I1WdMDuHne3QlpnXneRQgG/L+lzIshEOAo9PGQKauYjl9cdWZCGgAgM9+y5vYYPBa5eflKdegYprk8Reuzpgfwk9u7Jri0hauxcfVygo+MdbqH6wFc/wvZ+NYcqx0FWcCzoNmBb7Q8hcGd25k6lM+RBXFjlYbWsZqZ8553BJ/3r8zAjT//OfpOmOFLw4BRE7sc9ZSH1oaunTeVgUEik4qA3QnjPKJCZNJv3nC78214zyJqMKBrpQhmDw/h9ZumOv38y9//2bEAFxSrRda36NDQp08fnHzyycp1kuBCUlBMggMiJlAUHIMHRtiR+Diy5YDbG27HjxvvldImalaD+CyPSKAoVFxgCrNYDW6Jz9lKC7VMcyxghDU+6qmg7yURQ0XgPTvmTw+/+dkgS4kgA9E7COUwWTlI+kfgFu11kxIIxRofSIjiFvUPaTOYglMvlAdr+fHUFOhBdvzwNNhQX9P1sysUJl/6Y2Gido/bb/zWhIZqxZguLeQsi8ha2VCrJsgx52I0sbKCthM+jv7RYGn6h1ZYwoamB/DV2d/oNr4BMy9FXhGbAL6guNRZF+h4VO3f9oZ6zGhfiKua/8YMetM0hf19isCqoQpf+eZNrDBHnhV1gQGjYGv6h009TXheOaC7Z9d75cgYRavOmNk/YMa2zOI6+PlT8VT9FSiNWe5ltkWiVw5bJ7uwCP+6OAvPlr8kVSDRtmZ+9dx42hPvecHCdODFi9MxbMxY9fP8BLfMokj7rmJwr4TntrILS9B7uGXV1PQAbv/tg5LStF4xzvjWDeg3Zoo0wBiFmV89p8tjsK7aVUKI9h8AmHGWNb4zOW+GzIISXHnbg/6WKAGfomvAmfXP4JLWZ3F/w4+ZOikShR9vheRxU0X8KeVBBHRNmLpJDwQw6VK27c8a6Frsx0PlGmHfevb8LeWiddnzf9IMf/dy/siGeC6zxAR1OP08auxERwgdVjFJaezZ7TzwwAOMN1sS1EHN9ygJXwBIfPyZ1/74XatatVQtj0UdBzGxcxX73IdWkVuiCQiZfpHgMjS+wMisFGl5xdj4q/HYvvoDJ+Hsn2/6Bm59dYuFj+kfSjtHt+TaFDxTy6PItSPZdOmdUEMsxa0q9PnXkb2DKOCMpmnMWR1ZFFW/+p5nkhcU4pZYBC743s+wt7YZe9971uPG+pOpKfjt6Wk4h29HwEQUcoKHCPgxk5ZXjJFzrkO/CadItN8cDeSHsmy1sZWVXwTbWVvkXq6aUJqei5Hl1KS484q6p4m3MTxxRjvqiPZ62swz8dJTj3YJV1ZBMYbGE5KfecvtGPXUeFQ1mijL1rDr2x/g1Q1HPO+g2r+ZBUX4cdNNAID3a88E0CeOi63Pu1+XVUxH6eiTcNPas/HqtigeWN7hGSM82GNm4KSZwjK2e6iqFTcrBNz5wCN4t3Okx8pjvYd7ba9tZRXT8UG/MqzYXYdXt0Xxz42dONbiUp5dWIy/zWzG6X0fxzuaWClDcac0HgAAnNCxzPlt9vAQzhsaxJL9MVQ1mni95HuYMX4QLj54CxDbjXUCXPy9HrcilY4+CTeu/ioWVVoulKeUBxwhYSVMqWKQAuvtojPlGA8ZUi6o63jwrDRc+FwrvKuBBTO+xVpzTz/bEnA3vfAA2kkAtuycbNw0vh2DCwL4a9ntuHR8Hr67/6eojCzEFu0t33fwgtsnp/3nTNz4VuJE8IXFJSCLiRD0uEJh7IiBuHzD1c5ce3rGaxhalotF24956JMdfejZsce3HcaiaJrC95V9S7cd+ffvN2EGJlx9Fza/+GCXPCQ0AD0ygGMticsGUjNw+dB2PLkh8Vlu/zOKLs1jOqn3BzvWyiqm45/9xqBq91ZUNZrYctoTWNtRCk0PcPyQZO+X9CN775+30Q6Us/qxW4VtAEDv3r3xwAMPYPbs2dJySRBDUlD8koAsQIwdSIbOW2EScomaVFU4YDTMWmIBlqdNSgO5FglwKgvMyDnXISW0FKeUW1Pk6cJxCBJmMyAQImTMBr8JmQJTqLI7Lm2HYeDFNAS7kXuDFTRZIY0Vdv1pkAlcwnD3knvxZi6/FwG7udOzueI6mmad9btuZh+Yix/E7joDgR79cd0pJRjQsj5xmwT5qAknJGTM8zODOHRdKpYfNh3FReHAMdD0gGdmC12wwPbjyX0D6J2j4WCDeA6m5/VA3xHjUXeoyXlvtx33euDoiUjPL0arILKfBit4ll8CabeM//gZVjG5S4KLDb1zNDxwVhpmDw/hcdJYxcSpCfHlZgTx/Owgalo0aLmlWHXmC9hebXFqgUDQWRcAYG+Qulm67dj9e6iBD5MRLwugODcVvYePA3ZYv6V1huEIip7y3nlkWzVOKQ/i5H4B/OjNTlQ1RJ1y2YUluGl0PQYXBFB30m34jz7NFeYEczQYdNfHRIInADx5QTpKJp2AhcvcZPSitY1XQNq033tGqiPMLSy+HMOmnYWLd38bMMNddnsyuBp2OwCwIWcwF+XYIdiDh9lLNLe/Zw4IYeYAr9u2BlNoUeK/Jd0/QtxeK1N8WlZS4JpFeaitdgNz2AqAISd4FQBlFdPRd9QkXLfuAkfgWjLyF7it2XIdfS1/DCY1PAYAKI/twzbFLYJa1q6dnIL7lnYIx7pN47jJU/HWmzviuMXY7X6k3w4AnuUUEaK9if8OoraC5GfD5PctQo/CZqL5tMsDVe5UNZrYWRfDI+tDqK73dz+wUTx8dga++342GmvFbuFFGcCku17HY/XnY2Flk/RbFJX2ZNZi//XJmx6DAv02z06YinXL98fLJhaqZc/4n3WB4gSa651w9PnbmH2sKAP4xpgQzjtlEk6+64OkJfE4ISkofonAZKagd+LzAWj8fqeLH8UQNDvRb/ltmNAxCKtTJikz6bKImID/AqVrgG7GYGgBHxdFf9z02gSEC0zPXr1Rdtb34q4tSzla/AVmNmgO+z4qrp4yumVMv6i+PAIqwS0ow2tWRe5v0DRx1FOJ4MqhEF7TbY4/W3lS+xIEEIWuf1uIW+S6qmmASZSUQhdT4Yu7z/RgCq6dYh22Xxbqh5SgOCKdaCwEAmLG3C72y3MGID3lCE4pt+6fLhzH4Ob2TxHZTrsmNCey3JznWoUCwdhzv2NtsvGIB+z3J3gDAYy/+EZ89JdbPDjsYg+clYYnAwEM7diCkzqWYE/sBuhmDKM6N2BncAi3ZpC5Gwxg1JzrsUpRcLlhSgijp56KK7M+ds9h0/6WCEJ2sZ+dNwqnD7SsEPsCWVgboO6P4rZL9r6MiR1NWJUy2enfC33610Zx09mDcJjiPg6PjdnDQ5g0vC92Vx5AVaOJfQVT0DHrAfxynXUuZ9m4MXhzoz/DxOOz18dDL9yFI5E23zq5hUV4fGYTZg8P4SO6L0g+ELt/eIVGAKjMGsgq5XQxQv/eSrCncArN7zb/BRM7VuH9qDjNSoIjyU6rIqWqx6IoOKMo8BRn6sweHoJ204fIf2Q0qhpN1H7lDryJyb7WXGedigeUs+EjasWUHDaQ7Tm8YOZaO/2BP9vPo6brvSOE8tYlTbzfCwME6XzWYlJHUQsh27spBAW8ALM+x5U7FoRw7uVXILzkCby6LYrHt2ehgQTbs5Vd541Ixb/6/xQv/+4nnjZt3H/+WjqeCKYofYsf3nIXVmnqwpNf/zGR6gX8i6i8jVWlLWpR9Nvbyiqm4+OeOfh4fyeqGk1U5Y/H9T03WHT0LwCSQuJxQ/KM4pcEEqWciBdyQJRbjl8E7EX7a22vo2TbPzCvcZ5VR1WoUZAoU802DNnzd+fsSc7iX+LZuotRFKuOu55SzRcryV7b9ABmt77ALEkDD76M+8I3YsTo0ai8PouJxLV8w1bn/ENuDRtmXKRhlL0Bs0FwwpPIGicKHuRZZgUNe38nuEUCINttXG0xw8O2S9/B/Z0N0MGHIBfjFuVw080O/KxpPm5quhdpHWExQQxt5Jq3agoEOMj63qaRftMEc0wkCAGuZrQnl+PLTmFzxsh8OW6jE19rfQ29o/uFc8o03f62N+3Zw0P47hUXoJdPbrHxV92JnqOnobh1N/5Rfxlmtb4uFqQB9Bl/iu+ZJfsdZg8PQdc1/LbhZpzb9hpOPPBXnNvwNO5uuAW/aLyT8wZgGa6eY/1DrFPILCjBixen4/dnpmPykFKhwsV2I7TOybHvYNM6YySNCCo+K0ihJFaFYUtvxu2Ndzi/ic7J2e2cOrKI85AQaM8hXwtsCJDzPGMGlCAUot+1awJXWcV0vHPbqc76+O4V1p8dvOOux19ho2aLcAs9TURvYTKMSUCxT9zaMmBDPGqahnPbXkNP4zAGHX5NWCuRQtPGHdA1FMZqkGq2CRVnACdkcQuxKbCgUAyhoO5854njK3yFRFqf3/9PbVtI8LLPRAHP+M/F98ns4SH88+JcFORmMb9n5PXA+KvutHKnKoxhwO0fX0FR8IWZtUnpe1kxEmzwHmPx0mPRJACTdz0VIONpCFiC4+/PSsPf317uzLd/3nQmE5l+6JTTrLzUOWwyerq+2jB7eAhPX5yLHvnZTFn7HOH0M2cxvyt2lxBUAubxIG6T4xGoAoG2Seqn6KYzH8YOKHJpkGmtkqAMSYtiEuAX9TREVG0BDbi45VmkoAPA7ZjQsRIz2t/H8ugvHIaz2CAuZ6aJsnd/iB80deCPWT+Stu23oE/qXMHcf7PlSYze/Br+iCBmF76KzDXW+aILW59HEyYJNYwDWjfgjHYrUe1S7Tbn9xM3zwMAXNnyd0aT/XThOEbjGYyy7iCs1oxeq+1+IsFM9kxVSFMVzLsTUVUk4GgQRybVBBwBv26Lz3RowkWeMo7BaKN/m+D70f93Lw3+lnTPebH4fYxoZQOIQTYA6BM/K2ZZxXR80KsQK/Y1o6rRxMbCM3Fn6UIEdA1bfZijTKMJYzrXY0/GiRix/2lMavkLAOANbavwXf1g7OiheKR/Hj7a14aqRhMP974HBQPGAJoOdIRx7v57kGs24Hstf8abuMH3fWzgXas+KP46/lD0ojPuaJ8WtO3DkEbrzO+4znV4UzC/KO43e/XEpn21qGo08XaPb+Dy1n+iuhl4qNc9GD5uMmbvO8P3Hf2maFnFdCzvmeW4PJZlazi5bwABXcNypr9N6dy1IY8Ef8gy3HHJn5NrzBuCq3vtQUDXsAbqTFpXXdI1mB5GO81sxbiONagzToYRIPkbBe8XYKwfLOwk0VqhaRgY3YWJHSux3bgK/Drh4kv8DpYLp79FUcV13Wu5YHGLrFAyRY+S66FpoqD9EG4LX4kGLQe7tA3kIbnUNGZ8BwOsuzulQnTuLiDoXw9NAkFxaudS/4IcPl2iZ/DrkvNGpAGTLkLZpsctF/me8zGgf19EgoUJaaXgCIrcHqBBE/L+IuFb11iLoiYQPACxyzT//fyLmIyCXXW60mJBMt929+2NwH7NKWWa1pp1Z/81SN/5JqoaTTxXej1eKHzEd16dPyINeTOuRNqyP6Cq0cSBrz2FDxp6eHI8qtCpZGjwwSdUDJkmytbch5Pb0/FBylek+HRiUZQpX3xpTQqKnwgkBcUkOCDy8U8xO3BF61MAgLfbf+BYDdMPF2NT2jXxUu6ELDGOImfXq/gqgEcz/8ezEsmsEgDw/eY/MfejOzcCAEKIesrK1rhU0z1c78efpJte1wxa7EjfWSjdv4A8I5uPstXPvw7AudCQ30UJ5VUPhvN9KhKkhRZFRdcxj1VUQIM0mI1ImBOTAJ34jQZM/4PuicDPzcnv+uy2NzC9fTF2dj7O1LdfiZ6HsjY02bv6C54lB9/GrQ1P4cGsG50IbwDQmd4bgVar3PDoNg++2xp/hZHRzXgb56Moo8m/HYH11BJqLYgh4FiiAODZovEwDNNhmrhTU247nNXPYUoJs3M4qz8CTf4MnIXLv788jExccUAVO3uyBmNmk6VFt5Q8/mcF+XteceInCOkcYykbz34s9sTOlUwZ2s7aUC4Cnf5rrQbLMnlK+yKsyJwDwE06reqGzrTLzfEfN96HqZ1LsfrIqfhnn9t96zBpCyTt0Oj2mgk8ELkeAPBudQpezfsm064vbgFeDZwXC32m8Noymq2hJFAGyQRFJQEXGNhgpX/IMRukVig+6uk3Wp7CqM5N2BR7UrgvsJZZw7cMDw4NkjWdVyiwkbbV1jMGH5n//ywYhwBRoKha/fjUXWLwnxNBbn9m5j+j3JRZ2f2/n1ww96dHOnqY8ejS05A9yLmmyo8gWUuW5Q5DICKZo2Rdf2vyiVjy3i5/EmT0wf87cFwGrmn+M47pRQjoN7tlNGsf5b2DxkTXo3Tdw/gpgA8KLEGx0KjB8Og2HNNZjxTG9ZT+LiCaofXE68QvlQRl+FwLiuVzF8wDwO9mRyvnzyqNP9fiz68BkA9gOYAfVs6ftZngSAVwL4BLAaQDWAjgB5XzZx0kZfIBPATg3PhPrwG4tnL+rPAn/1afDahohOjECwXowkQsOIabNDuno9rhYzRmc0vkgkeZpMTez2KGwgTMGObs+SX6dvTFy+lz2I2IlFV1RaHlTM6Hn2EwBYyj9OwhxySzNgsX+E3O75oHlahsHloZaj5ZEAUS8tAmEVxFrqd04wgIBD4e5MKqWDC3lRba7ifgLg8uxAgbq5sxQBMvqSJLxtil1wIALm95CirRiW0YGbWWuZOa38axjKn+78C9tv0sSJQuFhPC9iMVv0VnUWRBk0TAy4km/4ODmx2nKuNT/Rt7y7UhFWmgURu9Lm+JQPXL6ZwmhheKH4hcjyyzGUNrD+DVAjef3NCPbsR94W24OfdeZWsFK/C6lqQJje/hacwjJf2/sSk5nRJi1lp3xPRp2QLkqdHnD+KgMB7weSazKAK8wMXWFIGKNVeDCV1nrYMioHtBQNdwSeuzAICmo2/BxFh//MzaJHbHZWnylvejm70ntBHkPAb1s2h+FHk/nT0tdDOGfm9+E1e0FOODlOmi6h5gjjt4gtkIzihKKGWaVdhfNUiUvNK9m+Jw6WzN7J2Yri58VxHPYtHgJZC1zMHT9/Q750e24PS21wEA/9F+yiHSAJN1GM7zSb3xl/D/IA3teDf1NCEdKs5bDN1dOIeZBDH8N5xR3AygjPyNJs9+CuDHAH4EYBKAIwDeKZ+7gDpmPwDgAgCXADgJQBaAN8rnLqAj6GkAYwGcFf8bC+CpT/xNPkNQERTFUcPo73wdL37GdUYQ2tjFJx+Clq7Tv4wGE6XVSzA6/C6uarEsPoxWURIkQASqPIkw4IynDinH50QkDCMNic6GS1fTSorONVqQ2HqWXb0K57S+6h/9j6mj1pGiNApS11OPjlK0uRNXFD5ZtYgeyQYjtoS6vwdjbkAPk1iYqEWRWukSgV8/5plh5fpykIzH+A8RLZcpw27GagIXj10lEAtfn3Wzc695ZYnK/FU+F+3znI+UyVBpqo37RAKKDfyayDPcWabl8j6kdQPze1HlaxgS24Gh0e0o2PsGbmi6H0GzkynjYQ4VxVfR6ylbFOn4MVnPDzouUo6uwxUtTyLV9A+QY+Ni1lqihfSurz40S78D+1R1PVM9owgJM06BPqNjPWB0sLk0SR2NOw4iocKt47M/86BxUoAmmIcGp7nz7RIT4sHEPeLnpI19XOcaZB9YhItbn/OlW+TFIjonJwOZRZECu2qJcJvCaPHytZEK5pQ2EQVsmzKg/SdTvvhhTxT1lEKK4c5nXinv9yn85qitqBvfsZqtz/BGhD5hlybdTT9p+FxbFOMQrZw/6wj/Y9yaeAOAX1fOn/VS/LcrARwFcBmAv5TPXZAL4GoAV1TOn/VuvMzlAA4AOA3AW+VzFwyHJRxOqZw/a3m8zHcBLC2fu2Bo5fxZ2z/tF/wsgM4xJz0Gs0HQTYlqaNhDC/5zlS6QpqcUs+gqMWDiJymdTcwvDBMgikwiAV20k0nKBXRgaOdWFBnHAJRz5dxrmUaPClCsgCsTAP1xy11U/YWI0W9/HaMBVAeKUY3TmE4XnZPUNMl5EV3DD5seQlmsCs3mC2r0CDZ9Tx2TRkELAHHrmGpKFq+VTfx+BIEDJuEH6djumuupiE7CJKqajTzt+P9OBdyjATd3owaDGYBsZErAJHOeDVLE4vcjl5/7bPRhS0R165O+FEYPlDC8zOcSM7Uqaw6fu6urbp9yxlyMmwXTdx6YAAYuvhYDAewODJTSoeq6LlopZRZFGNQlTO27lD73VVwsxujgYpQGmljZ6P8tJO9pmkLX05Rok18Vq5zi2UrROsP3DrMvKJ5xZ9NoqjHxdv8kEhRFwjPtX+87+BMrPyOaGFJMGjmat3aKj2yIFH50vXaR+JVjCwqFWsnarRrIRQRUcOWHnP3e7LeXg0b2Sl0yztx38h8nCb3EBIpGTdPi92x9VaWahbtrZxQTBZVLQtfhv8GiOLh87oLD5XMX7C2fu+DZ8rkLBsR/7w+gFMDbdsHK+bPaASwGMC3+0wQAIa7MYQCbSJmpACK2kBgvswxAhJT50oFIWPG4hPlsRFQ7r8H0CBN0ofULWqEKGoDU9hr2N4FgpqphlLuIiPBpuLfhJvys6R7kNWzl6kBQh106Y4zWrOubjcwlkOn/BBtez9hhKW5Z5NaUWDOuav4bBkd3QNeAs9rfQkV0A3Jq1wnbFJ5R1MRnJdnzNGyyaracWu/pjPBDBT9/BUlxtApfW3EFprR/zGx4iSyKSpbZbu5xrCtaYoZA58598PXLo3vw7ZbHkWk2M0hEZ3CU6UxQJc+oQ55R55krKm2pKgpUlgJ+piqtC3TsSM7O8oyMakRFG+j6yluhVZNVA1y06G4w/W3RGFNSBH4Y+kUrpWpGkfVDZXrIyvC4qQVnzO6/COsFlQRFVo8qtSgSfEwAFO4LsumH/PuEb8VP6Jcy+rJ0SBpTjG1Hccyw67pIJeE/Tvi50pV0HS49LHZWqFFbcFUtz7qm4Yy2NzGyc5P6+ijQKKiM+64EmZELWYlolbfDRsZn27T5MNN3ZPq1xD6jY8DGxXtSUOhKnyRBDT7vFsXlAL4JKx1xCYBbAXxcPnfBSFhCImBZECkcBdAvfl0KoKNy/qx6nzKlpIxfluhqUsYX4ucfU+379EFTslp3LUM0GkVnp3gg/38AH70rwFkNTO7aNE3EYjHnd9Nwr3XCABsGuTZNy/fcNEEXEqZt04BBNM+mYSAajbrtqLwLWTjY9zIxduu9zDOKmzJJMfK7W55rxzSZcqZhip+ZhouP9ElGYyVMc5jzbobhljNibv1oNMq48jB0E9wG+Q70+xiGKcTdyb0rcx8PUmKalq3Ar08Mw4ABjaHVuY51kj5g+/vUA3/EpLaXcUHby/jAONvFSeoYMYMJlBKLRqEbnYhpQcRiUQZ3LOa+X4y8q0nOyZom6RPSPxatUdIOocEwGNwGuWbGTMx1oTMMt6++3/h7FHVuxC+wEb/O+rlTJmCygiLft6LvRftedi/DTe9pP9I+6RtZhXP3z8cDqd9jkXNCjQYTD0esc5OFwWqYqWQekPFoEtyx+O+eqIH8eTzuEZ3bRmcLnqq/AgCwsmMzgxt+uLk1RxOtQWDHSYwbJ36g8YIeaT8WY7+zPUepZ55MQKPPTP7e4Nu1xoxOxhZNyWKYMgbPhEnqxQxufJLxSOcxXS8MCUMXJHQbUeJuapoMbr/+lgsuBlPeZNZNFhc/5wF5n1jCMalvsG6y7DyiY907X/3opoOAzg9Kt2maLN30mxsxZl/oIOsWs/PF3DUwZpDvFR+3bt/Hn0mDfpnCPmXX/hizdvutYVbb9NoENEIPwUfXqZhhOHQwGDm6TcNgvwuZl3SvhMH2PQ1gU6MXoU/sgIcG0zBhElqZfYqudaKxYJoob16P7zc/DAA4Er2co80Q1GO/v9+1CQ2GXV+ydvP8kWnStcX/HYyY4Zlzdn36brLxz/N4TL8539Wfj0s0ryj/CSOGa5r+hHPa38AbDa/CNH3OIPI8wGfMiwPWPPpvhs+1oFg5f9Z/yO3G8rkLlgLYDeBKAMviv/OjzGvn9gJfxq+8Cp5bQILtFJz+PRzatQwLFy5Ejx49ElT9dKGhwTuB2trayPMG57qpsQERLQNr165DJGKxch8t+QCRiIXjEHHJ2bxhA6bHr1uaW1DdcRSRDg0dhhsIItLolm+KhHEo6lqpGiJhvP/eew7u3bs8XsUMWAuNu8BEIhHnurOjnSkbiUTwwbv/gRE20KhloSp6yHm29OOPnDad+twCEolE8NG//4V+4Vps0Iahpr0WPemzRW+jI6yjVUvD1s31Tl+tXr0aZ8XL7ausRCRSBsDSpu3Y4ZarefJb+G3dLvxIvw3rFr2Gm+v+iRf0s7BOG44VK1c55bZtc+usWuX+vmbNGucarSbaw0AkHlFy0fvvO+/3Ifl2ALBm7Vqn3u49YUQicStwgcmMAwBobWvH4cOHEdCASDzi5ocfLnHwLXp/kXPdqgObt9Q6uHO0TQ6eFctXwA56vWXLZkQiIwEAO3bW41ijhtaohbvPC2fjf9uqMEd/CAsXLnRwB9vD6KyHQ6vZaqKhw7reuG43ZsRxb964EZGI9ZU2kW9i02Dfv/XWWw7uvXvCaDfcvlu3zh33tW2uhXrFsqWOS0H1sWOItFhjLz3mjsGWlha382Kd6B1xz1fQsQoAW7e49H24ZIlgPLobbmsbO74pUNymaTDfcc3q1U47y5d9jKawhpgWxLfrrAhwd3b8Eg9oblTKtlbyDgDqamud6/5GJdra3DQKq1audNeIjz503mHnjnrUNGpojrJMeksLG1m4psbVyTU3tyAv5r7vllUf4cz49bqP30MkUgAA2LChHvX1OjoNMIxRM+n7SCSCwySnZjjsXls4Njh0r1i+1NP34AQ7urGbRgx79+5FpMF6t61b65mymzdvRiSio9F00+m0cu+9GiMxAVbwISNKmPzOTuzdu9e5379/HyY77Ro4ULkHkaYgQkSD3tDkvrfezo4xyrC1d3Rg7y43yuH27dsxhZQ9dOgQIi3WO31M1sePF72LHuFq7EZfNAbYFEEU9u7e6fbBpk0O7ra2Nhw+fBiRtvj8WruGmZcAEO3sRFT3t8C3trRg/759zv36NasRieQAALZtZ+f4xg3rrXvCHLa0is8/tjQ34chhd39avXIFZpLndF7R9eQ9sjYJcbc042i1myx9CVmHN250cQV1dgxuWL8OF8TrHDx4EJHGoQ6OlSvc+Vbf5s7LdWvWOmvg1i3bEIlYdQ52hq33iH/XxYsWIxIJQDPZdZ5CU0MDmoJun6xc4a6by5cvc+isrAwj3AFE2m3ci3z6xERTszs+GxoaUJTj8ht0nC39+GPnes/uMOqbNHQYQIvp1m9uagSFw4cPo70mikgkCGga9LawQw+l+2OyNm3bXo+pZK1YgJPxPTwNAFi9YjkikTwLd3uY2fc6m020xNez9esJb/Thh75jobWlGflH3HPFdD/bubMe1Q3e9REAqqtrMDJ+vW7dWpwev967Zzcm2r1qmti//wAiLRo6Ddc1t7mJdZdm9hzTRCTsrlUrly936KHfddfuMI62AJEOFndHh3vd2BBBA+cCHiUK2907dzn7/falbyESsfjfHZuPIb/2MI4Y/Zi1qbnVXR/1yAHoeq5zb3CCo0EUtls2b8R17W8AAMpW/w6R9u+Dh2inS/fKlStRvV28j/5/QU1NTeJCn2P4XAuKPFTOn9VcPnfBRgCDAbwS/7kUQBUpVgzXyngEQEr53AX5nFWxGMDHpEwJvFAEr7WSh7sB3G/f1L3z5zIA22bOnIlevXolfqFPER6tXOoRAtLS0oD4/MzJyQHC1nV2djZyA7moqOiLtS37AQCnzhiDV6utRa9/7wIgvv6NHTsGiMtfGRnpKC0oARrakdYcgh00MJvgzs/JRFlxGRBf7/Nyc3DGmAzUVP4b76WcimFDsgHJHAoEApagGOcpcnNzgfhenBoKAeQ4Q25uLi7d+R18w2jFxXn/Qt/evS0nYwAnnXQS3qy1crbZ9UOhENDJ1j932zdwLoCbsn+HgvweQJxPysvJxrd3fhNXmTGcn/8yKsYMwOYVllZy8uSBQJyvKS8vR26ltejpOjBsaAkqN1vDaEjNWwCAM9K34sKOD5GHVZhurMLXCt7AhPEDsLRhDwBg9Mie2LnWEq5PmDwIHzdYzN7ECQOwvNEqU5yditLcVEQOWt/4tNPG4fkjawEAp0wfjdeqNzrvNW5sOVY1VQIABg8qxJGdtXELTD1ycnIsFxm7T9PTUdazJ0K6htZj1stPP3kUFhyzOnLmqRV46eh6AEB6SgBDBvfAnvj7pben2ccFMWXKCYBFKkaNHIHcNqtPhgwuQsP+ejS0WgV71lnM5pTMQzjttKvx7OE1AICy/HT0zk/H0T0WYUXZKdAarY89rqIUiMcsHjt2DF5rsT7i6FG9sG21qxyYfMJgfBCx8J911mQ8ccDKz9m/fz5aOmKIHGqI4+iHtS3WByzOLQLifPvUqVOcdyguKUFunfUOgUjAGY+ZGelAfK9uD2aBZnDJzXU3P6sfemJbu/Vdp08fjdePxb9RvO+DoRRoZDzS+coDnQeaplvz+Zh1P+WESc6Y+U7jPPyPuRVX5j4JkBUwPT0NiPNOmempzjUAFBcVOXNcM4GU9HRnHkw94QR8EN4BADjppBHOnBo8pAhN+8MItnRaTHu8rYwMty4AlJaUAJXxZ1mZ0Bvcvhw7dqx1ehzA1CmT8WqD9UKjR/fGzrWH0dZpIKXO7eAe6ZqD+/T0bQj3mQnEPb/z8/KslT0O4yoqsD6+tp104nC8WxcvaPchZzkLBQPOtwzoGgYO6I+avdZLDR9exuAeOXIktrUfRlY0C2jw79PGlB7OWhUK6M47B4NBDBk0EIinju3Xr5/Td3lowKON38OS4FT8MfMHzu+ZWdlOOxebbzJ067ruyLypKSkYMniQ5ZcDYNiwYQzdvXr3RsvRJqdP3q61+uQ7O7+B7wC4N/MnSA1mWocwfGD4kMHOmBs9aoQzJ9PS0tCzZ0901FodMHHiACyLr1vu2htEAAFePgdgjZniAf0BaynApAnj8FajtUkMHVKMyi2usmHcOGvu6mbM6Z90bsxRyMrIQO8+BUB8Kzhh8kRnPO7sPQe5Le6cpfP1jDMm4OnDq5l34CEzIwNlZalAXH4+Zfp0Z46PHt0HG1utwZ0S1DFt2hC8W7ct/n4DAGtook+fPsg95NIwafIgLIlYc7lHVpFTbsKEsc5cGTFiGHLXWYJ0z5IshHQNzVXWhjtjxhi8Ur0BuYbh7Mk85GRnITuQ5bzXlCknYFF8jk+ZMgTv11vX/frkIrWhHUbEEsTpXuDOIyAjK8sZMzk5OQAizj5z0okj8FZ8zTjxxOF4Jz4P+/fPR9OhBrR0xJDZ4a6pOVkZzlgHgJHFQdyx95tYnPIV3Jd1E0py0xx6pk4ZgsVxuk/5yij8u8bas4YOKUbmxnSHpvSsPOd68uTJeC1i7V9lBekIBXS0xfe9vIwQwvG9Zfy4cqxprgQAnHzySPy7ZjPz3gCQkZGBooIc57uccfrpeCY+ZoYOKUaksh7B1k5PvaLiYud9x48b69QfNGiAM7+gB9CnTx80H2lEqCnFWUuysjKZ/qH7AjQN+bm5QFxvMnXqVLwf3h7vq6F4v966HjSwEDjWDDPShpQml6dKSUlxeLrcnGxoOrufBRtd/mnI0KHu/jOiD/7dnAIA+FHsHvSNLsEfM74Prc2d7xkZGc47/0Z/BNfC9czRNY0x0QTJellR4fKf+QWFznw9Ei5BqWF9x9RQwKFr0qRJMAdSVdBnA4cOHUpc6HMM/1WCYtzVcziAJbDYuSMATgewNv48BcB0AD+LV1kNa8icDuC5eJkyAKNgRUwFgKUAcsvnLphcOX/WiniZEwDkwhUmfSF+JtJRV2j3fC0bsDb/UCh0nG97fODrHy84X6RpmnXoOBBwfk9PTXGuQzS5fCBI6gGBgO5tixzU0DSNPbujAaXPnI4fA2jWsxAMToEMNJgweHyk/V195mDQgRedZ3rU4qz7G5UIkYTSoVDQQ6eHbPLD6Ngm5nmq1gkt7sZVaNYjheBLId86ENDcc5uahmAw4Gk3qMWQ1uQuHHzfh4L0OogUdCKIKIJBt01d1xAkdVJTQs41LQcAAYqP1NE199uTXrDo0d3vmpuV5uIOhUh9DRopR9GEgkHm2imj69A175jR4/3o5PkL6CwNRgQXNT+Bt9LOQkh3Ax+nBgPQtGi8DtvXwQD5RikUdwCabpL+cuvRiLOpQRL0QveOn3hvOddbgyMwMrrFfcaVDwTpmPHBp3EnNxTPOGlc0TTSj7nHVgEARkc30erMuY8Sg/W85wN3UDop3XROBfSA873Y8OTc2CcHWDQujEYo4GrpQ0EyzhzcJkJEs5NFLHg/br4fvwqc7tzzfevQapoY9MF1+FZLGp7MvAoi4F0jmTESYK0J9jxk0y6IXS2Z89xaAEGCT+eiQKcYrZjZ8R4ezfye8xuftkf8DlyaI+5AOJ2HtL9tuLjteVRljYQIKL5gkH5Xk5m7qSEvbqug//jWNDB9QtdDnZvj9tpCo7vKAvBoGph8mynkHaKhbHbdFKyvYtwaMzbo/KBrtaZpzJqYluqulfx+quvk3XU6V2iAKYIbGoPD/q4Jz9iSPZbSRseFpuvQdY30SYqnT6xwPuzaZJqAFq9H+4S2EwwEHNxM9FJOkzA98ip0GJjRsQj3azcjoOu++Oh6z48Zen4xNcTuTQFmP3PfVbTusf0IZKaQsRWie7J3jbCBftcUMjZzmvd5yvHfksfGRkk3mXUoNcV//9ED7nfl+5vi9e5XdG3x33f71iwBAJzb9hofMsm5Gh3dLJVE6Hl6Jlcu2ZPXh8aitP0tT/lgIAh8xrw4YPFk/83wuaa+fO6CewG8DkuPVgzrjGIOgCcr588yy+cueADAz8vnLtgJS4/3c1h63KcBoHL+rEj53AWPAbivfO6CWli6lnsBbATwbrzM1vK5C94E8NfyuQv+J970owDe+KJGPAVYZsWewNTiz4Ts1v2ZHFqBWULI73woeFp/QHQPAppcUKT08aDBRHMg1/cZoDGRW7saM+f0tncQMyf7PrOim7n3skAH4if8uRpShxOG/7f+cmSZzVgYXcfUEQUZkh68ZzYSP6o0D3VBQWAJi+8WeGfTMUDaFJ9HMDncLKt+Zc39GNe+FGe3/xvLsdAftwAz4B/gwQ+YyIJKlcRjXQZipjORt7uXHBOATs5a+QVu8gSFIPeZJuu+5A26RBlXOn54gdKLm+8479j07wc6vwwzcaiFKIJKAasGxnYjb+8CXAgwgqI3CAy75gUUxjCTb5IPWCMYJyY0btz746aBkmTnBvknsgAWmuZ/bcPO4GBkSlbOgUWuIk52oNZXRhSWBjSTi3pK9h++7+3xRPsnUURFYVAYSbWgQr5fcEGPRONRA7++6swzFqMLTLAWAa2W2x67f/jhZekxmYaYOU4q8i6BoummcWNdNDK8ejKfvYd8183BkTit7hkBNpZuJhAMd36Z/S4CHiZO+5SOpdgWHApdG0Rw+7/4lVP7YWOla7LXuCETEyQG5ldbGwZuuJ/8SsaIya5NMhBHI6VlXOFcmNw+UTAbLjBWUawaYzrXMxhko5Bdp7i1mLxvQDZJSUtJ+GThcy0oAugN4BkAPWAZtpfBSmNhq1p+CyAdwB8B5MNysjmjcv4s6th+IywnoufiZRcC+Fbl/Fn0gMQ3ADwENzrqa7ByM36pgFmgqcaS/O5lROwFxn8hyTEapMEF1PJ8KYpb9IA0NCaaZbCLkmJP47DtAQLAKwSIIqyldLJnKkTrGs/MUAaIYTY0zbGcZEd2AsiAH8gWULq/J4rEXmB4/aoCEuGA3fvcm4zG3aRNVpjzy4/oZdTZPund6Z7j0pmQ37R5DgcneKoAk6eJG0/utT8kEhQZfaqQyVID/n16xzW3gIhBlQQikOQQ5EElxYesH5ixwCHQBJHzTMKAs7jd8jEEIKPcr0/kkfO4sjSKokg3wtQXC56UqTKgeazDfiB6bwCoCvZBWfQA/CBFF3/3RHJ1J4LyYDZ0fsmivPpa4r1pk+izIE0TAGBm2zu4rPWfeLfpYQBummR7nDDCt2SuaxBHPdUkwq6KnGhZcIjFg1kzxLipddBDuqAaw8Qzwhz7XdPjFq6uJGYX7RF89/imDNG8ShYAKI1V4VigxCOgsPi8bQZITs4avVD4DjzdFExO0US/uScfMnl2atMCXNn4MCJaDlboqwjd/lCSnYqN5J4vxwvafiXFqY3cVFSq6TE0LvCNHveo0OCNcuvX96zQqC4oBnTgT+HvIRXs2UBTcG3RRtsVK9kYBQn1NGP6hKxFSanxE4HPtaBYOX/WJQmemwDmxf9EZdoAXBv/E5WpA3B5t4j8nMK0jo9wbuz5LtWhjDkrHNDFhi4eBoqiR3AQuRBp5r7f/Aj24VK3vifZdJdIZEDjtKespp4VDhXzsjPAaHMZRojNl0SZyIE7HwfSJrn1BEwSDwJlo/A78Lh1hrFmgWVg5Yz+hW0voCUyEOsK3KilMk0k3fwYzV+0lZQjjLFgs9TgFX5EfcJsHNDQN1qJCZ2rgdgPPDj9rgExsy9SAGi8etgHupIewz91B69bljC8kvHsJxR5N18xYy+zzMmeac5/GcMte0c6l1nBLBh3+xa5RhlawLOWtCHVSeJs93eUbHlBeqCUA55JomNTzPC5EPAITv5skmVRTLw4sWOLbb8u2IMIiuyzFGbhE68ffmBCTzAGRQwr245IcSESzDTOMqcDuKH5AQDAzB2/wjOpv2NKA/z6LHsvkxUUuAAdQbMTAcTQrqVxNKlYMji6JUsGffUUInHLKad7DmnXZPc9SoMjhMosvp756r/eW7stJ1hJaASsdWZCx0pc3/IgVoUmQtde9sUN+PcxtSj65cfTNCDVbEO7lsbMUV45ySjpaPoG+jvX/NhWK15irtmglB7Fegd/Cx4g+QR0zAgULqamIS3W6Pk9sUWR4NY0zG26G4OiO1EV/YAr551HsjnNQ0Bj35sXEi0Msr1DNj5pHkWqaKQmDH9FXFJS/GTgvyGPYhK6AT9vuhujsCtxQbiTlHVzIdeUaSKr3dCGpfhV5WU4q40Gp2Un/YDoHqGm3YSmZOkTabU1mIgR5Lz7kc4lCp/S/jF+2XC7sJ1Mg12I2XD3HPPDCGnudUtWPyF+F5ePRZEK2qaJOa3PY0TnZjbHFn/uiX4jiWscn65kcscyFBo10ACM71iN81pfZsqfX/OocCzwmmxD6E7j/7uMx07kCufiJsyDDjwS+SGuankcIyr/zhdUwkdB5JYk2m8YxkAagp6rJ6RHxcIu3/783OS6lluKG5tMgnKQa7aczZRKhVCOcFMwtkLtdSiMWQFMTl77Y/yjaha+28znuaOWOZ1jNFmLla4BuUYYaaarwKDWCh54ptSbl41AvB+Y9jilAcOwMWugrpQ3laZeofW3BEdIJ1VQomiyGetsowEDX/kazml9jXluQoMusboybtoClzWrHW/dPCMsxKvBZMYQw4Ry38x+PV5JKMUt6JOhe5/Ey3Xn44W6Ofh6yzPsvqWwfvDKLpEXA69okFkURZZIevZMMw2kmO2o6FgLzejwda2VJSHXwJrcxJY5E775LTlXSN7N+sx2iz+Y2Ola5Xzp8Gk3QJQ5fmvYyJblzvcSKTT56RFg3lUi2JERrusaRnVuxNiOtf6W1HgNCjw9Kgom0TqdEWvEndtmYXr7+9I2ZTRpGnBix0coMaqRe2gxdDOGnrFD3PfztyKGfNdKOo/IfPXh6UyNtfR7cm1K5pfOCIq0jv+6KTsjn4TuQVJQTIILZH7RRY4R5nwWu8ta/iGcqDoMoWXIeq4C4oWZ4ubds4KM5tDEL5p+jUmSzWpaBxu7yBTgthgCoKJjLcpihxhmrLr0K6DgzyzwOk5WKC0/vADfavk77mn4KSOQpraxbqEipl3W30OPvYnbGu/E4+GroGvAr5pux3da/sbSwn0VXcAkW5sfuRdq8qhFUUSZ17Zkmuy9Q49JmUj3SUn9WpZuBaaNhwA3ZuhdIkjseuqvXLAh0dkqpi3J+/hZMnjrDbP5eoQiMV0y19OMuJvbDMLM8MKY90yp/3v0fGYm/h6+EhlGM/odfReAFRBB9A4xTuDiIRhtwj/qv4F7G25yfgsxTCgLvOBDn4vOGrEWUfHZbCr0GZqu5O2gCyyKR/ViyJjFEGN54hlZ6//s1heRfmwDrmlhBXETGtIMNnUKBc30Zyq9jLn3BQfG9gjHuwbOrZU705lqtmF26wvoGTvkBuTgysiAFRT8y1ze+g+2zju34c6GnzP5LD1gmgjqrpUjoGm4pvnPuCdyEzSSSoAfPqEAK3JzKH2BnbMmbmj6Pe5qvBVzqv/IKfO0OFaZQOEVcC5sfQ6/aLgTIGefTZNdt+zrDJLOIsNsZfBp3F4nPz7vSJ7Ob0HS337vcFn17wFY34vdPzhBhPFCcYEXPGi9oe2uI2nAjOHuhrm4s/FWBNrC/i/A5YCUed8wtAnOzPrBj5oeBu2f8Z1rpOVZl1C2h37cdC/+Er4Go6tfdT6R7vl2Fvy0ab60HU0PkWuvo2Lc4ZVU4L8Pveb3KvoOLE5fWiRu+knoHiQFxSQ4QBcyytCFBBo4CqKNSANYAbQbrqcyhsIkJgnKgJngBanE7fACEoUzhrt5MXUYyItsxV2Nt+LR8DWeBZiC7zEO02SsNABr9ctp3utcU2G35+5nSXlug2HQiZmCfvWWO43IhS9OIXMnEkp0jd/8BJpJ+l1M05f58Z6bkGysgo2DTz4sd60TaOoZZj+xZpK1FMkFRSZAlKhPOSWLCPh3qyz7KmknsUWRV+awz8T9JrJ+xUzToelM4mFQHqtk6qcEWaaYCQDj02yZUeX90YduE/LIjtlNez2/BTimf1noBEIZBRM989LFyAGkmy0Aw4y6uI/oJcwzHew6Rd0fVc59sswc2HNI3HdmBEWBxYNGkqVgQpNaXUXHDfjhoxJkiMfL7DNkXhuajstbnsK3W57AX8LX+FoU5W5s3Bk1BUt7wIxCX/YHjO1cj/Gdq4XlNJisBwhMnNP2OkZEt6K0+iPnd0vRQIQhQfAYgBUUKaXM2UqYOLnDOqM8PfJKlwQPqz4LuqbhypYnMaVzGXIPuEofwzQ5ITvxmsifRZUdfbBv2bHuzpUp5fk+bYkEIRfoGWerHJ0vLlhRwN37dCIAUzf1YKfXBdSlR/C7Jt6VNdGe41uWfT6ic4ugpLc839/TOyz308kHn3AooO9Jv9uwqE9cR4Ivlk6+TcgvjoIGWTRi2RlFZl1lXE/9zyjqZuJ9Owldg6SgmAQHRNowJsCHD/Oab4YlgqLBaFPBbHwajC6463lxmwDjksUyjsw5QoGAS4EujO+lnIr+B19x7r85pY/bjhlDWfNWFzcftc5eqEwTuU27kWNEvG1xIe7FmmNax72LmVywacb1lMVBLSDU/SPF9E9MbWoae16VO5/Vt8DaCKYPKRJaFHkLLAW/tZu32mgAoob/2KDMA2PJ4IRvVf6U9pfI2kBxixQXCS2KYoWqL/CCjAgXAHQG3c058+gKnNH2Fk5te1eJNr4dr5xJGU8B4aYpcclyYVzfPOEzv9rS847MfNflVlYfPPwZxSY9m9y55TNSAjinoqdzz7tbZ7QdxXN1F+HXDSQXGFnXavQeoMtPfhqZq9BRkp3q3IvO7QUElhUNJtdHbP38jABT1oY2Ld1ZHztloQpkQWoE1gfAsjZO6FiFPKPe15ofk5x/tILC0HYIOdAZ5tgJpiY8W8WDyYwTuUumBflGvfNbNhchmC+vM3sB+WbcHKNDSOZ6LKJONQiPG81SVoZTIFCvCpKAnbco2vuCjLHn3fF1DegdO4AhndvY+Wqa6NO51zkjagOdowFuD7c8GERWOga1hwYXJ/1drCJjPCmEpUxm3+TXI9ExDSbNhCT4FACkooPxfJKdi7eiNfvv4/wGYtOaYpLvnWAmiayAfpGbs4xGySolxguwY4iJgKz5r21Ji+InD0lB8UsKidJj6ILFSxbdzg+3BhPn7LnD9xkApCqYFGmNbMPNLhtEFJMPPuHc84sm6yanICiS8p0am3uHvrcOgxEc6CsM2fwAnghfiTyjDsWxKsxeOgf/rL8MozpdNxYNJtPWLWcPw3h9JwZEd9vEuu9I5MmGognOtUEsikGzE8GPfo+Tsw4gPzMFfQtdoSE7LYiOqP/CKYr6mB89htt3XYyB0V08OTBN4K7zR+GG0wbjm1PLufOPtBV2W0g3WzCqcwMMIyYINc8ycKGAzgi4zJiiTKHwcLtEGOO19hS30PU08YaTSFBk3q96I3rH/CNV2mBIAuicNapU+Kz3y7NxbfNDuLH5985vHmbQ9NfaA+AYe3asitIJ0GiLMs3xBeN6E8ysesDPW+Hc1leFuHTG0sSmmeA5kckLL/bU5wVFkVY6OzXIWEJHHfoXU6+8ykp6n2O6lgZqjbBYS5fW9ICLu7xHFib0c7XxojEbEFrMTNZjg/TJwOIs9C8kllAa9ETTnbaimn+esa+1vyF1tWTnJNvhExvewbzG2/FI+PuOIETnbRRBiM7faQBy0ygTyNHtU4/pH8kepcFEIOA/nj1l4x0UowypdP/jUvzQqMncXM5LJ7l3qTunBDtDKiMYiz0p3GiW8j6huJn1mbjSWtZvr0VQtu6dP6bY89ufwt/DfQ0/QbDZTSUx7tjLuKvqGvw1fDWjFLlwbIlbkev7By8ZxyhgRBbFcEsH835MfAF6RlHS+XQfFu4r0jQciU8TAmoK7VS4wpzsu1rPybXg2EBeexUu2XsLCmI1OKaznlOqoAuubSgw65n7QVE2foaspxils4KGlSmRtCh+IpAUFJPgAMMwU62bhCHwA7/w2O49u/iU5qQiEeSarkUux3QFxQl9splyt5w52LnWYXAuRirgVuiZy9FluJtXADFmwaJJ2kPRJvQwanFh6wu4rNk951ISczdFgGWmp5Xp6PvyeXgwch3+9I1xjMaSvkNHhrtpmiTX2Bntb0F771f46b7v4bErJyI1GMCvzhuJgUWZuPP8UYgaAoFHIojkR6txU+NvAXjPleVnpmDm8BKkBHVkpLjWCJZxJM2YBu6K/AJ3N9yCCUdfdJKAT+5YJmy/f1EmOqIuksLoUedaF4xHT5oHwSYhi2AnymlHo572YQQ8t8wpg/IhA5txSDNbkf/M2fhT+HuMsM7PlUaNHd8UrpjSj7lPtB0GYKAupUzwjBUGfnDKQK4EZTx5u68FBgl0QdnO8X3ZPqEJ4HlbmB+PNKPjfeY+RvOJMcou1qJoaprUigIAQzu3kTs2CmdWmnjFmLHnd8w9LwQAwIVtLzL3DC3k3Fefwixp6gsbAgIruiVqu/VTdfd6cEmuUNNvgljjSJnSGOvqK2dEaf+y3hyjmyxXyxyz0ZlT9B0Wpc6A6F2vOqkf0lifctKKzlTru/UvKI/u7YLrqcnsZ7omfj8/C/WxQJGw/MCiTGad4M9W2tAjKwWDS7LxP9MH4I7zRkrP/YpydgaYiLNEYQI+Ibv9jSVg8q6Z5Bk5b2aYrGutTTft+0N6Twzs4SonLhzfk3WZbXcFhpRGdx09q9Laa3oYtQy+fnlUicH2RWluGvObyGC2Zn+YVQJp/nVkvcSMGeG2yfM67LU46ilR3nZRrpELc6wLty5512kdS3Fd80MI6+56LfNo4THogvHIUuPWyCEKf5422flu2o7fuuutnxQUPwlICopfIhCFg9dgYmyfPM4Fz3/xEiloWAFSLCje//UK5/rMkaVIUwh7mmq6oZbpmZk0LgrEyFJ3g7r6xH7CfFkioJSO7pXDPXQXn99cMILVwPrgDppRzOhY5LbPLX7pRMBCU7Vz2Ts3hRVCGQ01YQgMA8Mr/4GhnVsdyx8AhDoiwMcPY9z+J/HAJeMwsCgLPbJcoZdahxJ1SUpccxnQ4FgWePeZb00rx5CSbPxwBitc8FaPIbEdAICxNa87GutzSZRFO7T8fRdX4LyxPXHl1HJ0xgSup9QNj4ukNqRzGx6v/xZObF8idEXMTfe3oFh00P6h0q77ewo508VEZxSc57Lp1c1O5Bt1KIodgxaz+jbDlAQLkTC8NM+pxlmVfGmAgQ4S8p/SPbYXK5CO7JnL3NMNPqBpOK/1ZVzZ/LgndL49omgk036F7HkV5nsZMTCjUEGbvjRlqu87GNDijKM60ND7mqZhfF/3vXtSBVYi5VhXtdyxDvJA5xg4/7Z0gcXMsga595khOmZ1xjLKplHQkB5rwj2Rm3Fe6yvO79T1bE1oPPrkpgjfiT9tSiEn6gbe8hMoGrQc4ZBND+qcIMR6v9D7gevvxcORHzERcWXMc0owoHxGMaAZ+H7TIzi7bYHzW6/YIWH5iyb0YhUpgpQdpbnWPvW1MT0xvm8+W4cXFJkb/0iwfL5XloG30cqEZwgVn6BeGiZ8rVK0v9NKBmN8H7J+mAazfoQaXOFQ72zGhI5VCJhRHM4c7rZPFVcxsqb6WHNF6SgonZmpATYID/3+IgGZgwCXCibTaGS8hFwaqUApVgCIQKa48C2fYG2i/ZOz+Z9Senglkd88EnmUMIosAU06N49FeL31/IPXGXC9SGibDN0Kaa2SkBiSvfglApGG6LyxPXHTGUNZ7b5gARW5ItHJSZlffoPqmeMyc8U5aQm1/hrYRYVZBAyOMY+5DPzwkkypphYARnRulrbNANmksoI6J8x534FfZOn91SeVM5YVhh2IdQpxU4ZwcssHOOfIw7i34SZ2yW08Crx9K/Du7UCLxaydNrwYs8aU4ednD2c6QtVtRX/2EjwS/j6CZidyM1ghKzcjhPsursBZo8qY92A1/MTN0Yw6Wuk0sLkWNQ0YUpKN75w8AOkpAaGgKArhbWgBzG26G0XGMcxtmu8RhK+bORijeuXg0sl9ITj+yGlGWUtswIxiROcmHNOL/Mtw43HuV4fhxPYleL5uDq5q/hvOfa0C/1t/BR6O/NApE2Lcf8UuN8cLvMvc6SNcl7CsUCIuhrUifKflb7iw7UWk1O1wfrcsita1zPWUwojwIkZxEVTiptwyA4hbZU56CF+f5J4jzm/e6+RQFEErEZxTggHkMVZEf8WXL0UKzEhxFlEMkXUKms4wlz33v+Fbf0KHG635B82PuNVhMt4SGmWs9QDACJgM1Tjh6LMYEd3C9BMdzxUDeiInVfxuIs8RExoGtG1y7htarfdl0hdpmlhJaLJnq3RGENI9bmsAcELnCkKLGG48bTBChBmXMagzln8HZ7f/G5e0ukHEzmp7U1jeWsOIAofMudTOMO6ePRpTBhTgxtMHM/XYFCZAeXQv7o3ciLEdaxmXZyYFgURQpAJKMKDj0sl9ceYIrwuoDUXZIdBeC3AuyhQYBbKuoW9BBgrJOdjCjCCrFOUERbq39fn3FZjXeDsuan0OUc1VSDCCotEVQZH+7kL/HpnMisQqvq36QbPTOqMoGA+mQceMhoci1+LuhrlcIZkwLh5o9ElIQVnG1pW7FFPhrMeinwpataCXcZjtT5/zj2yaIH+lquiYD/WeMbiOls1ZUXoME7oz1pk0NyWZBHHSovhJQFJQ/BKByKI4a3SZJQBQ7TOzIbhlRQvTKcR6VmAQbTLPZHGLvdLZQbqJiTYR/p4TaP2EuTzi0poQiOspzBjDEKjkgqSLbnZqEMzSSDcYgxMUBYmVT2oRBCrpIMEWohYDGNRMfO8rAzB1YCFDt+rpUG3nW+htHML909qRo3c4eHkoa9nuqWvR7V4HzKgjwA+N7mDK8JtpJ0mSeTTVdbVkBEXGIBVDkVHj3Ic4FfHpI0pw9+wxyE4LMUIomwbFBSrLFx96G6/UnYd7Gn6GIuMYKU+/HTvmThzUA3Ob5iMFnbig7WUXL6GfRpzUALRorvDz9Qm9oALpZisGHXxRWoZXyBRnUYuZ3MWIWgjpONY7iTXUdDX6rBUk0fx2kY97/gRJOQsGFrlMwNT+ec51YVYa0kMuw1rWsC4hriDDCGns2qTgYm/DqF18fkcWyntkoW8+OSvIWRQ1IrgUVrMpemyg6RoGxvY41+khHb3zybeka6Cms1F0mUAV8E19QcdjQNc8Y5qCSGHDs30H61vj7bvlzxhZxkXAZYFGpmTPKKpYb8XMc0jnlEGSM4fFtSs9v20MjRY3bPJnFF3cw3f/DaN65eIXs0agOJu1fLOBUoBfNN6JodEduLPxVpw0qAcq+uTi8il9GXyMQMFE+9bZ3t/5Li5LW4o543tDBDefMYSpE9DoGHLnlGGaKO7Y7zD8mqbh4UvH4d45o9zy7Y3AZnet8wp33nl1RvvbMKm1lNZhAuElChbmrxiOxkwmgjYT3R3A1c1/xXN1F6JH+yFEyZ7TortrTWsHVe4AxWQPIARiUN1iKY3+QPbHLguK4vImdKGcpNE1SIDvhPI85tkVU/ohBZ2Y2v4RMo0mCKO1CtbOINhxyrTLCPkyKz9pBrrvMRIGc9Ki+IlAshe/RJDIeid6GlDcWG0oi4lD2vOLSKJtP4goIyjSvEoeBpcufqbBbn4J2gE4iytvcmI2rxizsvkt7hM7WSaDsRzpAU7TxQobTCAhWsyIoSBWg4tbnsWEdleDzkSWayehuxsOAZ1twMMTgGcvA4CEllAKumkyCcr75waB3/QE7hsmrQcAZsjdZI0M1wJnwH+c2RZFCj85YwjSQwF8/5SBaNOz3LLU9Y4gG1DzPlN/WGk2JvTLx6wx3rN5ncSFtoRYuXVOu29Dbt0GH6q5+WCIk5OL4OpmNodlrV7oXBdkSKJRdhECiLHpRhi6xSkQqEuphYcyTBr6Rvfh4pZnsevgUfwo7U0M79yC9FxyjkuCe3fWhC6fICnLIa6QnFCkmivTBsZVWLN8FxwwEzM+NqR21EufZ6UGJZ4QmuL5aX+Y0DcX6XSR4IVQKqws/r5zballvGt5iA9wpRrMhrEosv2V0lmPPKOOUfLlZaSI9xLT5M7FUxfjxL01rCRL/NA0mYAhoQRRJnnYExwgfc4IfeQ7ByRrQwrhfmOGiVwSJTsU0HHX+aPx9Ul9wQoU1L2OelXoWLO/Pv6zAfxzDvDyNUCdq1zgISslAI2seyHqRqjrGNq5FfdEbsYJ9W/g2i2X4uW68zG8cwuw9XXoR9axFsSDK4Bj5OyvaXAqBG9/B81OZr9lLFnU+u4zD8XR1kmfcimZsohTTADA+W2vIIQovnL072iLum3XBt2YAP0KXEWPbJnpV++v6JHVoY+CXfQi4RXxo8iRGQO6kMHvu/D7vr/T/gxxtFw4oTeuaHwcP2/6DW5tvJMhnM7XUJO/ezb9rr3z/VJoeGkAuMBr3Dl0916wt+niYyafa5iX+xXMy30d83IPY16uiXm553+W5CQFxS8RnNCx3Ln+x9WT3QfxyWYYJoZ2bkU+sQgCXCQuBUHxf1okGnaDZc4SCa/9YvtQZriBYM4c7jLSHmHuCDkzYMSYhUxXYAiKDfesoIfBZQRUg9l4Qj4HIKllCwCb1N40gcNrWVptiHUymzZFnVW3GU+Gr8QVrU8xuBkmtJ0cEv/bTGDfR0D9XmD7vwFwgmKCTanQrMVpbe+4P9TutP631gGVH3nKH8iucK6psSDQ7jI+Re0H8KuO33lShlwwrqfHAji8LAfPXjMFZ48uE2ocZRuwrmuYd+5IfG86H5wFiBmGw3hMG1iIy07oi3nnjmBxJ7C0AcCccSQqn0QoEsGUTjegz7jONayy4jhSx/BwUetziDKuvGKXWQp8wuwAGasaNDwS+QGuaH0K8498B8VL78RvG25G+agTlXADppKFiK3ib0npjub4+uYHOdyG//Xxghlj8fWaQB92mTn04hd8V0GEUMA6izjxyL88vweZnIpyiyL9Fuw5bfabnv/2yXiq/gr2PK5pSgRwtk/okTlRAAsKpw3rIX5oGggSIYtnhhPB907qK8FtMmu3pqg4yk51hd8Y3yf3jwCOWZ4aVGAOCFyKTWho6zTQJ7qfOVuJJjaYGkc4q1SlChQ9hHsbbsKI6BZcevRe5+ffNtwM/Oty4NFTgJZaCWrW9VTXvYJ+vhlmLIpCpQo/J00T2bGwc7uvttmXBP5MekiQtzRkdGDqAIu/6J2fzllZWSukL/iM5ykDCgBYqaRSzTac1P4BMg02xQoTKVWS7sIP+gRZJdXcs9yznobmrwySwWSaq5Jbu3Vdw8xWy/V6VHQT0z/0HcoWXOmLm/JE4/sVMM+mFIn5M6HrqemmQGNWHEZQPB413GcKmQDWA/jRZ00IAFkCpSR80aB/bK9zzWjfY51ARzN6hDfg3oab4j9G0De6D6loR0Ard+sdL1PDadO7mov59KEFgC3v8oz8K0RLxlkUEyWyBYDLWp8m9TncnOspxRbs4uLuxd3JXOs09QZ5ibLdXsYOAFKpqxDvFkqi1sFkkx+ruLkwQn+QuLj9/WxgHivsdequ1pUeyu+14HKmXP7eBXhyZAbQ9zJgvdXnw3vmww/8cvOx52S7YBEwDKvvAyGcEFuLP9b9BA9nXgtNOwmXTrYYwB3rqEY18Xftm0uYEBlTrQAZZisyiAX3kxRWSo2j7A+8hVwAGlh3v/wX3TQTlCmm7rjM+JYwy5am+DjOkFBF0XG7GPGup5+g0BjrZOfhMdfl2rJwHQd+05TQZwrX61RBDtVvtvyve6NpUosiXVOpjseEhppQT/ToPMyUn9H+Hikk8i2AZVEk0Vspk2JCQ1jPR55R761H6gvBiDLrXlf7PiMgK2+yeRT5sW8Y1nsHWLaLX+IYsa3hEPD6DcBV/2HPelPGfNsTbhPQMT11O26q/TGHVEI3119eS3sC2OdvRfNrV0v1t/b2ad/pXE/ulwPYaYo5LyEGuHWrZ146bmi6H+1IhaY9gdvPGYFX1x3GD04ZhJY91AWbuM8zAmAMX5/UF/0KM1HROw9ND5BxQvpEvNJ4x93NZw5DU3sUBRkhXNP8F5zR/jbWByuYMqyg2DULd7A97N4UDmJiCBgIdNkSVJpNPDZ85j4jyNI0I12km/+Ww/NNoDKOlsNF2+Qtin3Mw7gmfBebaoriDvy3WhQj/wHwH+s697OlBUlB8csLHUT79ohlXZwyjigvqtbjkcgPAACRXac6P6d00YfeA5yWSsWVlYFmwpBKtd0sIxLoaju8Dz/D/LKCYle1gB66qXuNEUWw09U4qpx/nJy6H048iijHADLJ7mIwyIGzROGvPdDg41JsxCxLbngfk0Q6mGDjCG5+Hjj5J+QHcm7HiAHrnwHe+zVwzgPAoNPZQ/aM66nkHTqagZ3vAINmAqnZloW1sQq4fj2u3GO1fW3zw8DmicDzVwJ9TkAo1z0nF9QU+od+u6NccKSq9Ynry+A4BU8pUOZwn9c6bAMvaISOrHFRiOgL73evY3KrSiKPAg8wAhxnUezCuUIvIRpb/9hW9zqulX7lhyeipSMKzO8ibqMTMImSpYO4h5sxtXEmAtP0elaQZ13t32HRbewPkjGYsW+hc80zuLyQCPCKOEPyvVj30CDJO2mAcxH2rS5Z65trANNVaKV00fVUOp45KyndF5blfhWnPXaaFWzsurVA01Fg2xvAuCsYBVxaazUySJAvAM65cyYgC5mXuUddTyETwEUpS720SdcS1lk492+ut1FqZK+3OA/p/ko+CzXrfZNau8W3GBVOR5VmuoIiiQjuFRRZXmJw6wYMa7fGZIfZgJLyYkwsj1uu6t0+Gbr/Gec62Oi6SWowkRLU8ZUhlut8bof77imHXGHYFI0v00Rzek9ktrpjP2XfIhSk5QIv/wZntFtxBSqi7L7AWoqPYy2o3WXtdzY50LocRZU/BsPA4XUICeJc6IKczELoVI/2Tduk+9GIXY/iHvNPXgRHyDGRz5nr6YXDg1mYl5tDfmrHvIg86trnAJKC4pcVHhzj+amwkTAJb/3Cucw94GqCu3qmwwPcRttle8KLV7vXB1eIyz19MdIm3ebc6pQ5U4Gtr7P3lBk7tBoxw9XyBDv9XV6EIInWipeuQb8D7saf1uZ3aJ4FnYQcx2vXsg8/esi9NmMgZ/WZNA9K8MFv2fuOZuBPJ1qurQBKgy7DoKQAWHKfe/3POcDtYSByAHiABIx4+mJg5Gz0JIFymHQAW58T43/mUmBvPLjA7WHgcFzIIWMbgCUkAsCB5ehP+j57Kfe+fvAmiXzXyrps4y9fSVxfBp+k+yMPdr8kAA0QMvRao8CdbQOxfK9/hn3GCTWZsS4ElOJp2f4f9/rgSqCti7gY0MSCS5blXhzYsxDZlR92HbVpiL+lEeuy+yMDbWHpONGPZwwZMamAkb/qAee6eOmdzrXSmr7tDcgsiml17l4UZCIt6onXljd/Jn2WNcz1cOiyN4gMN0wYJOosFUIPtoSAhtXWTfUW4O+zLAHwzbnAra4wNHDrH71oa3YCRoyzrPj3gQkNffJ80sSI5ioALH8UuS3uHqIRJXKvJT/1q8GCRNFkKXOIR8KCaxLjO+pGzMVacsyC3zerWaEz8OQs5zolAGDRPcDml4ArXmHKpURdRWzqi990f9dNS+n5yveBs+9l6mS8znor+cLSR2DSdCKRQ8BTF/iXJZBX4yrfEh0HSQj/vNC5jPGBjVRgJTkiU1/JPnt0OnPbv8U96tN3wTe61s6a/2VudcNVzMto1qKuEkUUgZ+BwOdLxHnsvHROE4c7AMz7DEjpEny+ejEJnylou9xImqjZ4VumyxpYHqhQ1VKLtC3+7pSfBPRb6TIv+MMEcUEV2EgEkvfuRE7PU5zbwMcPesvLYDEngPzvue41EVQAIPinyTgu2EXOGH70ELMNjTj2mqd4l+CV7ztCIgBkRV13sEDVGr8aclj1OLDgx97fN7/EpgAgb5FStcpb3gYqDLWF3euVf1UiJ7T5BaVynxrIzvcd2y5+pgKHVoufveqm7wgihiERf0aw7M2rfX+Xwj/nOJf9m9d1vT5l0sL72Gf39Os6Phs0iBnAw2uARfOBRXd3D7chERTNGPR6caCRhLDvIyCr1P9ZYxWCB3ysS6qw7Q2gcHDicmAtRUObvdFCPVC7C0gRBJ156xbQE0w5r3/HudZibcg1G7x1ugDF29wIssFjmyQluwgv/w9ob4X2usG1xvfOAuwuMmJsdOpX/AOLOBBtBX5VgBHkJ5FAYUCHvu4p7wNeyUdh3T/gDffVBeCVQQSCj58OHZJznX6w5VX/32t3s/d/nSHGsfYfwKLfWNf3i4OvaeRM/4DaxcCfT7JuHj9TWCd1lSAGQ812MCOa8lMSKKh11+LUfe9JSnYNDIjPKCsBv75+inDOeneO07zZPGSs/3vXEIvWmM8Irn61ddjzF2dQ16zPvTURADTzeNx1ksCApmm9ABw8cOAAevcWh6P+1KG5BvidN4DHJwGx7F4INPpHtUrC5x+aMvsgq/lA4oKfY2gcMAvZexYkLkjhvD8Cr/7g0yHo04L0fKBVHlHzSwflJwOVSz55vGl5QJ8TgJ1vffK4AaDXROCQQKmRWcS61H+eIC33OC21n28wR5wHTSSYHC8UDXMigDae+HNkfxQXXIpHeKxhXYXOc/+E0GsJBMwkfLYw+MxPbz1RgHotH/nml3z/mPf5WLsOHjyIPn36AEBv0zS7xkDPyzUBXIB5kVc+BdKUIBn19IsIdQrnCroJSSHxvxv+24VEAF0XEgFgwU8Sl/m8QVJI9MKnISQClsWZd7X6JKFqnfjZ51VIBL7QQiIAaG3HZ52UAkkTkR0kbnLHKSQCSAqJ/w3wGQqJAJJCYhI+MUi6nn4RoThxnrskJOFLBdHWxGWS8OWGmuN055VBN1KnJOH/Af6/BOHO5PqThCQkQRHm5WYBGER+6Y95uWMB1GFeZL9/pU8PkoLiFxFSsz9rCpKQhCQkIQlJ+HwDH4Dq0wI+GnUSkpCEJIhhIoD3yf398f9PAvjW/zcxSUExCUlIQhKSkIQkfPng03Q3prBHLcpwEpKQhCRgXmQRjivJ8CcLyTOKSUhCEpKQhCQkIQmfFnyabs1JSEISkvApQlJQTEISkpCEJCQhCUlIQhKSkIQkMJAUFL+gEL38Uwr5nYQkJCEJSUhCEpLw3wSz7rPSJVzyNBBM/6ypSUICOBD4DFPMJYGBpKD4BQUzvSBxoSQkIQlJSEISkpCELzoEUq3/w2YBtx75bGlJghQMaLg15zfYFByFnV95uHtI9NAnS9SXGJKC4hcV9GScoiQkIQlJSEISPrdw6b8+awq+PBBM/awpSIIiXJ/7MOr0QtySew8aBn4NCGV2Hcm33vjkCfuSQlJQ/KLC5yZeUhKSkIQkJCEJSfBA8XBg2nVAwcDPmpIvPgRSPmsKkqAIHZr7rXRNA7RuiCp9/6+9O4+Por7/OP76bJLNfRA5AgoGRBBE5AYVgYJBJMpRbVFoRevPetaf1eLZ1qNa8VcP1PpT23pi7aH+qlWkAlqpt0JRa+vxqxAKhkMICSHXJrvTP2bY7C65gJCl2ffz8fg+MsdnvvPdmc/Oznd2djKuHVuU2NRR7LTUUxRps36T4t0CEUk0yakw9Sdw2V/j3ZLOL0m3Iv6nSHYaGod9PjCdz8aT7k+MUXjNkouBBUBP4O/A5SULi1+Pb6s6WHKa/kGwJJbSD+LdAhFJNJ35W65zXoLHpse7FZ1L/yL45/J4t+KAq0zKCQ/7k33ghOLYGtE3ihEKr1kyB1gE3AoMB14HlhZes6RPPNu1T2K/qt+bh9v4s9q3LZ1KzJUtf3Z8miHtq7Y83i1ou7P/GO8WyP7qOSzeLZCDgS/pwK+j4Jjm55145f7VPf77zc/L671/dUc6+3nI7LZ/dezL7YsHm4Ih8W5Bh6hMbjxfzfAnQbA+jq2RTvDOaVdXAA+XLCz+VcnC4k9KFhZfDmwALopvs/ZBl8LG4W6DYNrCpuMOHQWFJ0ZPG3tB43DxXY3Do89vfb2Trmtb+067p21xbdH96Ojxk25qOm5gcdvqG39F43DXATDu4sbxU26Pjj1tUev1nXB58/OOmNI4POWGpmNyO+g6xXeWdcx6Yp3+sPs34xAo+gkc/fXGebMfghFnu1fed8ftjTMeaVvcSTdBVsHe17/bgrVNT0/NbX6Zbz+39+vpcxyktOHR7pe837b6eg3fu/V3HwzZPZue11z+gnv8uXTV3q2rJTkRj06f9WDzcc2dCE+9pW3rOerUtsWd+ZvG4ZN/2nzc+a/C9Zvh3KVtq7clsce9SG19+MM3Hm8cbuk407+ocbitx/i2aOrkPa2F98zeyuzeODz/xfbZ7k0pvnPflkvNaXl+3wnu8W9/nPXb5ueNuaD5eW2RFPOAmMk/cv/2HBb9Ht0XkceTXiNg0Iz9q2/AtOjxq9a5nzkn3QjHXdr0Mhe/Ez0+7fam4yKd/2rz87oUwtyn4Qf/33xM1wGNw9m9oudNWBA93ms4fO+v0LuF3+MVDG0c3ttj8JAzWq4v0gURN97l92u97gvfhN5jo6dd8h4sWOv+LtGTmZoMoQbapIfXkR48s23x0ia69dRTeM0SPzASiO1RLQOOb2aZVCB8pEzrOzKrdt1qNmzYQENDGxP7AKmvr+cvh93JpDHHkJTdHcxInriInGX/HY4JZXSjvOhhspZeir/OAaDitEcI9hiKfzQ0dBtMqNsQmPNn9wPNlwyDLyF5w1vkLG2671wZyCDbq6t61KU4/kwy37qdnVPvIZRdQN6zcwAoO2QSzH2L7CUXEjh8InXDz4NQPST5yX/IPRCF/DnsLH6ArJU301AwnNohc8j7/WwAdpz1J/wlr+Kr3EjN8VeT/4tjw20oO2wW2bnPkrL1Qzf2zBdxcnq797mPu5WUdSto6DqY3D/Mw1dbBkD5Gc+Q94x7UKxIH0Rw3tukrHuV+sMngD+b/JX3u3F2KHne6wMoyxhKvjcezO1D4LATqBl5IflPTHTXPW85TlYP0r/aStrHv2PHt1fgX7+SrJXuh2DZ8beR/4/R7nD+BDjHbXPKF8vIXHkDVZNuxsFHznL3ym3Zdz+EQCXJpatJKX2X9I+fCrclcOg4dp36C3BCZC7/AcG8QuoPn0jm67eSvP3TqP1UPuk28l671t1nRXdR3+NYCHXDzliGf+0yQpk9CKXng/kIZfYg841b8G94E4C6I06hvucIAkfPCe+rSIHCyewa/0PI7IpVbCTtk6fxVW2hdsg8fFVbqC8YTv7irwFQO3A21dmjYP6axpPGQ2eQdOipkOQnmHsMDB0HQ90T/jwnG19gZ5O5B9DQpT87z3gaasogLcc9kZn/AdRX41/7MsEuR5L73DwAdk5/EAtU0nDIQJy8Qjh9JrbzS5zsnuT/svkOVO2RM6gZ8z38a5eR+fbP3P3yVSXMX0NS6SqCXY8i5V+v4y95lapJt5D/yNgm6ylL6kvSKYvJeOduUjavDk+vGnclyVs/InWte4vRjnnLcNIPwVf2OaEuR5BU+jm5Xs5VHXcVvqrNBPpOIZSaR9ZfbqZmxPk0VPnDeblr/PVkvXFruP6aY88l/cNHASgfdiWZNXfi+FLYNf3n5Dx7Fsk7/kn1iO9SOfS/6PHYmKg21+SPpm7AaWT/6TKSKr+Mfj2HzYa5U0lf8yuCWT0hyU9y6Woaeo0kUHAK7MLdz7Xl+CpLyfvD3D22yc7pD5Lz0oUA1PWdQuq6V8L7tWbURWS8czfV4y4nZeM7pH21wV1vzhi61PkwglF1VU5ZSH1hEfkr7thz2/eYRn7d9e72OfHHBPOPIPf5+QR6jcVJzSZ13QrqewyjcuxPyP5qCyml7wFQPew86gbOwsnsTtL2z8h93j2Jr9i2M7xPdmQNp4s33JDXl5pRF5O9YgENXY5gZ/0h8OUWAHwz/0De72eF29TQpT9YEjtPfYj8JyaFp9f1m0bq2j+526fo7sZjwfSnIBQkpeQV6g8dB6k54fdjTf/TSP+723l1fClUzHwcJyWTpPISgt0Gk/bhowSOmEYw49hwnpRNfYT8J90LV2XnvU/+w+5xKZSWT/n4O0jqt5qUL9+mts/pZPZeQ+o/X4rapo7Pj4UC4fFdE24g6y/uRbtdk27GSc4ge8UPwvN3fPN5nJxe+MpLyHvmG+66UrtQccpinNw+4DhYZSn+L17GSc0hUDiJ/MWTAajvMYyULR/ssV+rR11Cxir3WF0x8wmCBcPC26QskOt+js13l/Nt/5Tk7Z+T+ulzVI++FH/JK9QOPZvMP/8If+m7AFSNvZLMd+/co26AihmPkvPSxdT1L6a620nh7Rg47AT8G98Mb7vdnzFNKVu/PjycMuEOspe7x7nKSbdQ368IUtJJ/ehJMr26HQzD21/nvUfG23eQ9o/fE+g1NtxmgB1nLSVr5Q3UHVlMYEcDqcPdY0r1qEvwl/yZzPcWuXVs2UGuv9ce7+Wd0x8imNuHjHfvovbouaR+/gJpn/0fgd7jCWUVkPbJM9QeeRrBikC4bSF/NuV9zoD5pwMO/OtfOCc/QfLSK/H3HkG6l8PBrAKSdrn/nqLsW6+S8+J5JJevi1p/KKMb5b2/DnOLoCEAm8tgwLnkfPYWtUfNJnn7Z24bBsygdti5jecF85bT5ddFxNp58r00RGzrsG96nbpgPZkbv4BQkKqT/qfxN3HVkDz5ftLX/IrKojsgoytZBS/hX/8aVcddhZOaBQ0BLFhH3cCZbn7VE84Fdz+9j1VvxwIVhLoOciduqyZ1xAKSN62iasINdPn1VCxY576GifeS8d491B59JsGCYdBQR+bKm6gZOo9Q6VfhuitmPEqw50ioBCY/SOaKq0hd+zLgfob4qrZSM+4K8CWRtGk1TloeoV0p4eUrJ99GKKuA9DUPU3PsOYRyeuPbuYFg92ManxBrPhhyGUnbPiV3iftFQWW/b5K93j1PKf/Gs4Ryers/V6qD5CkPkP7BI1QdvyD8ni771iuQkkb6X39JyvqVJJevo3bgLKprs2DKL/B9+kfyVv6QwCGD2VWVClWV7Nq+mYaQ285tmzZSf+RZpP9tMQC1A2ZiDdX4qrdTOfUuMB/5j09w1zX5Afcz57CxUFKy5/6Ok02bNsW7CfvFHMdpPSoBFF6zpBfwJXBCycLityKmXwfML1lYPLCJZW4Ewpe9aks/Z8viK2LDREREREQkcY10HOc/7slV+kZxT7E9Z2ti2m63AeF7M52GWnwZuYNC1RUbD1Tj9kIW8ClwFO61fJFIyg9pjXJEWqMckZYoP6Q1iZIjPYA18W7EvlBHsdE2IAjE/lCpO7ClqQVKFhbXAXWNU4qBa99tKrajmdnuHz9schyn+Xv1JCEpP6Q1yhFpjXJEWqL8kNYkUI582XrIwUkPs/GULCwOAKuB2Bvci4C39lxCRERERESkc9I3itHuAhYXXrNkFfA28F2gD9DCY/VEREREREQ6F32jGKFkYfHvgMuBHwMfABOA6SULi5t4XNZBrw64iahbY0XClB/SGuWItEY5Ii1RfkhrlCMHOT31VERERERERKLoG0URERERERGJoo6iiIiIiIiIRFFHUURERERERKKooygiIiIiIiJR1FHshMzsYjNbZ2a1ZrbazE6Md5uk/ZnZtWb2vplVmtlWM3vOzAbGxJiZ3WhmpWZWY2avmdnRMTGpZnafmW0zsyoz+6OZHRYT08XMFptZhVcWm1leB7xMaSdevjhmtihimvIjwZnZoWb2pJltN7NqM/vAzEZGzFeOJCgzSzazW7zziRozW2tmPzYzX0SM8iOBmNkEM3vB29+Omc2Kmd9h+WBmfby2VHl13Wtm/gP12hOVOoqdjJnNARYBtwLDgdeBpWbWJ57tkgNiInA/MA4owv2/qMvMLDMi5irgCuBSYDSwGVhuZtkRMYuA2cCZwHggC3jRzJIiYp4ChgHTvDIMWNzeL0gODDMbjft/YT+KmaX8SGBm1gV4E6gHTgEGA1cC5RFhypHEdTVwIe6+H4SbCwuA70XEKD8SSybwIe7+bkqH5IMXu8Rrz3ivrtOBO/fjtUlTHMdR6UQFeBd4IGbaJ8Bt8W6bygHf990AB5jgjRuwCbg6IiYV9yTwAm88FwgAcyJiegFB4GRvfJBX79iImHHetIHxft0qreZFFvA5cBLwGrBI+aHi7aeFwOstzFeOJHABXgQejpn2LLBY+aHi7Z9ZEeMdlg+4F7aCQK+ImDOBWiAn3tumMxV9o9iJeF+5jwSWxcxaBhzf8S2SDpbr/S3z/vYFCojIB8dx6oCVNObDSCAlJqYU+Dgi5jigwnGcdyNi3gEqUF79J7gfWOI4zoqY6coPmQGsMrOnzb19fY2ZnR8xXzmS2N4AppjZAAAzOxb325uXvPnKD4nUkflwHPCxt+xuL+N2TEci7SY53g2QdtUVSAK2xEzfgvvmlU7KzAy4C3jDcZyPvcm793lT+XB4REzAcZwdTcQURMRsbWK1W1FeHdTM7ExgBO4tQLGUH9IPuAj32PFTYAxwr5nVOY7zBMqRRHc77gXIT80siHt+cb3jOL/x5is/JFJH5kNB7Hocx9lhZgGUM+1KHcXOyYkZtyamSefyc2Ao7tXeWPuSD7ExTcUrrw5iZtYbuAeY6jhObQuhyo/E5QNWOY5znTe+xnvwxEXAExFxypHENAf4FjAX+Dvu78QWmVmp4ziPR8QpPyRSR+WDcqYD6NbTzmUb7j3bsVdTurPnFR7pJMzsPtxbyL7mOM7GiFmbvb8t5cNmwO891KKlmB5NrLobyquD2Ujc/bjazBrMrAH3AUiXecO7953yI3FtAv4RM+0TYPfDz3QMSWw/AxY6jvNbx3H+5jjOYuBu4FpvvvJDInVkPmyOXY9XZwrKmXaljmIn4jhOAFiN+wTMSEXAWx3fIjmQvMdQ/xz4OjDZcZx1MSHrcA+mRRHL+HE7C7vzYTXuEw8jY3oCQyJi3gZyzWxMRMxY3FuSlFcHr1eAY3C/BdhdVgG/9obXovxIdG8CA2OmDQDWe8M6hiS2DCAUMy1I47mj8kMidWQ+vA0M8ZbdbSpQ561D2ku8n6aj0r4F91aRAPAd3CdH3Q3sAg6Pd9tU2n1f/y/u08Qm4l5Z213SI2Ku9mJm4x6InwJKgeyImAeADcAU3H+p8grwAZAUEbMU95HY47zyEfBCvLeByl7nzGt4Tz1Vfqjg/na1HrgO6I97i2EVME85ogI8BmwEioFCLwe+Am5XfiRmwX2K9jCvOMD3veE+HZkPuL+X/RuwwqtjilfnffHeRp2txL0BKgdgp8LFQAmNV1YmxLtNKgdkPzvNlHMiYgy4EfcWs1rcp48NiaknDbgP2A5UAy8AvWNi8oEngZ1eeRLIi/c2UNnrnHmN6I6i8iPBC3Cqd8JVi3vb6fkx85UjCVqAbNz/ebceqAG+AG4B/MqPxCzApGbOOx7r6HzAvUX+Ra+O7V6dqfHeRp2tmLexRURERERERAD9RlFERERERERiqKMoIiIiIiIiUdRRFBERERERkSjqKIqIiIiIiEgUdRRFREREREQkijqKIiIiIiIiEkUdRREREREREYmijqKIiIiIiIhEUUdRREREREREoqijKCIiIiIiIlHUURQREREREZEo6iiKiIiIiIhIlH8DMloqiUNCYX0AAAAASUVORK5CYII=\n",
"text/plain": [
"
"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ax2.plot(anomalies.index, anomalies.score, \"ko\")\n",
"fig"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"With the current hyperparameter choices we see that the three-standard-deviation threshold, while able to capture the known anomalies as well as the ones apparent in the ridership plot, is rather sensitive to fine-grained peruturbations and anomalous behavior. Adding trees to the SageMaker RCF model could smooth out the results as well as using a larger data set."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Redshift ML BYOM Remote Inference"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Setup Run SQL function using Redshift Data API to get SQL query output directly into pandas dataframe\n",
"In this step, we are creating function run_sql, which we will use to get SQL query output directly into pandas dataframe. We will also use this function to run DDL statements"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [],
"source": [
"\n",
"import boto3\n",
"import time\n",
"import pandas as pd\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"session = boto3.session.Session()\n",
"region = session.region_name\n",
"\n",
"\n",
"def run_sql(sql_text):\n",
" client = boto3.client(\"redshift-data\")\n",
" res = client.execute_statement(Database=REDSHIFT_ENDPOINT.split('/')[1], DbUser=REDSHIFT_USER, Sql=sql_text,\n",
" ClusterIdentifier=REDSHIFT_ENDPOINT.split('.')[0])\n",
" query_id = res[\"Id\"]\n",
" done = False\n",
" while not done:\n",
" time.sleep(1)\n",
" status_description = client.describe_statement(Id=query_id)\n",
" status = status_description[\"Status\"]\n",
" if status == \"FAILED\":\n",
" raise Exception('SQL query failed:' + query_id + \": \" + status_description[\"Error\"])\n",
" elif status == \"FINISHED\":\n",
" if status_description['ResultRows']>0:\n",
" results = client.get_statement_result(Id=query_id)\n",
" column_labels = []\n",
" for i in range(len(results[\"ColumnMetadata\"])): column_labels.append(results[\"ColumnMetadata\"][i]['label'])\n",
" records = []\n",
" for record in results.get('Records'):\n",
" records.append([list(rec.values())[0] for rec in record])\n",
" df = pd.DataFrame(np.array(records), columns=column_labels)\n",
" return df\n",
" else:\n",
" return query_id\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Data Preparation Script\n",
"Data preparation script to be run on Redshift\n",
"we will create the table that will be used to run inference on"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"setup_script = \"\"\"\n",
"\n",
"DROP TABLE IF EXISTS public.rcf_taxi_data CASCADE;\n",
"\n",
"CREATE TABLE public.rcf_taxi_data\n",
"(\n",
"ride_timestamp timestamp,\n",
"nbr_passengers int\n",
");\n",
"\n",
"COPY public.rcf_taxi_data\n",
"FROM 's3://sagemaker-sample-files/datasets/tabular/anomaly_benchmark_taxi/NAB_nyc_taxi.csv'\n",
"IAM_ROLE '{}' ignoreheader 1 csv delimiter ',';\n",
"\n",
"\"\"\"\n",
" \n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Run data preparation script in Redshift"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"sql_stmt = setup_script.split(\";\")\n",
"for sql_text in sql_stmt[:-1]:\n",
" run_sql(sql_text.format(REDSHIFT_IAM_ROLE));"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Run Redshift ML Create Model statement using Sagemaker Endpoint for Remote Inference\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"The endpoint attribute has been renamed in sagemaker>=2.\n",
"See: https://sagemaker.readthedocs.io/en/stable/v2.html for details.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"randomcutforest-2021-09-03-15-47-12-234\n"
]
}
],
"source": [
"SAGEMAKER_ENDPOINT = rcf_inference.endpoint\n",
"print(SAGEMAKER_ENDPOINT) "
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"cfa8e390-605b-4c44-9c45-86914f70720e\n"
]
}
],
"source": [
"sql_text=(\"drop model if exists public.remote_random_cut_forest;\\\n",
"CREATE MODEL public.remote_random_cut_forest\\\n",
" FUNCTION remote_fn_rcf (int)\\\n",
" RETURNS decimal(10,6)\\\n",
" SAGEMAKER'{}'\\\n",
" IAM_ROLE'{}'\\\n",
"\")\n",
"df=run_sql(sql_text.format(SAGEMAKER_ENDPOINT,REDSHIFT_IAM_ROLE))\n",
"print(df)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Show Model"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
Key
\n",
"
Value
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
Model Name
\n",
"
remote_random_cut_forest
\n",
"
\n",
"
\n",
"
1
\n",
"
Schema Name
\n",
"
public
\n",
"
\n",
"
\n",
"
2
\n",
"
Owner
\n",
"
demo
\n",
"
\n",
"
\n",
"
3
\n",
"
Creation Time
\n",
"
Fri, 03.09.2021 15:51:52
\n",
"
\n",
"
\n",
"
4
\n",
"
Model State
\n",
"
READY
\n",
"
\n",
"
\n",
"
5
\n",
"
\n",
"
\n",
"
\n",
"
\n",
"
6
\n",
"
PARAMETERS:
\n",
"
\n",
"
\n",
"
\n",
"
7
\n",
"
Endpoint
\n",
"
randomcutforest-2021-09-03-15-47-12-234
\n",
"
\n",
"
\n",
"
8
\n",
"
Function Name
\n",
"
remote_fn_rcf
\n",
"
\n",
"
\n",
"
9
\n",
"
Inference Type
\n",
"
Remote
\n",
"
\n",
"
\n",
"
10
\n",
"
Function Parameter Types
\n",
"
int4
\n",
"
\n",
"
\n",
"
11
\n",
"
IAM Role
\n",
"
arn:aws:iam::845897987212:role/RedshiftDemo-Re...
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" Key \\\n",
"0 Model Name \n",
"1 Schema Name \n",
"2 Owner \n",
"3 Creation Time \n",
"4 Model State \n",
"5 \n",
"6 PARAMETERS: \n",
"7 Endpoint \n",
"8 Function Name \n",
"9 Inference Type \n",
"10 Function Parameter Types \n",
"11 IAM Role \n",
"\n",
" Value \n",
"0 remote_random_cut_forest \n",
"1 public \n",
"2 demo \n",
"3 Fri, 03.09.2021 15:51:52 \n",
"4 READY \n",
"5 \n",
"6 \n",
"7 randomcutforest-2021-09-03-15-47-12-234 \n",
"8 remote_fn_rcf \n",
"9 Remote \n",
"10 int4 \n",
"11 arn:aws:iam::845897987212:role/RedshiftDemo-Re... "
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = run_sql(\"SHOW MODEL public.remote_random_cut_forest\")\n",
"df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Computing Anomaly Scores\n",
"Now, let's compute and plot the anomaly scores from the entire taxi dataset.\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ride_timestamp
\n",
"
nbr_passengers
\n",
"
score
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
2014-07-01 00:00:00
\n",
"
10844
\n",
"
0.943024
\n",
"
\n",
"
\n",
"
1
\n",
"
2014-07-01 00:30:00
\n",
"
8127
\n",
"
0.949037
\n",
"
\n",
"
\n",
"
2
\n",
"
2014-07-01 01:00:00
\n",
"
6210
\n",
"
0.961702
\n",
"
\n",
"
\n",
"
3
\n",
"
2014-07-01 01:30:00
\n",
"
4656
\n",
"
0.851479
\n",
"
\n",
"
\n",
"
4
\n",
"
2014-07-01 02:00:00
\n",
"
3820
\n",
"
0.894885
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
10315
\n",
"
2015-01-31 21:30:00
\n",
"
24670
\n",
"
1.100063
\n",
"
\n",
"
\n",
"
10316
\n",
"
2015-01-31 22:00:00
\n",
"
25721
\n",
"
1.303702
\n",
"
\n",
"
\n",
"
10317
\n",
"
2015-01-31 22:30:00
\n",
"
27309
\n",
"
1.965812
\n",
"
\n",
"
\n",
"
10318
\n",
"
2015-01-31 23:00:00
\n",
"
26591
\n",
"
1.655541
\n",
"
\n",
"
\n",
"
10319
\n",
"
2015-01-31 23:30:00
\n",
"
26288
\n",
"
1.509151
\n",
"
\n",
" \n",
"
\n",
"
10320 rows × 3 columns
\n",
"
"
],
"text/plain": [
" ride_timestamp nbr_passengers score\n",
"0 2014-07-01 00:00:00 10844 0.943024\n",
"1 2014-07-01 00:30:00 8127 0.949037\n",
"2 2014-07-01 01:00:00 6210 0.961702\n",
"3 2014-07-01 01:30:00 4656 0.851479\n",
"4 2014-07-01 02:00:00 3820 0.894885\n",
"... ... ... ...\n",
"10315 2015-01-31 21:30:00 24670 1.100063\n",
"10316 2015-01-31 22:00:00 25721 1.303702\n",
"10317 2015-01-31 22:30:00 27309 1.965812\n",
"10318 2015-01-31 23:00:00 26591 1.655541\n",
"10319 2015-01-31 23:30:00 26288 1.509151\n",
"\n",
"[10320 rows x 3 columns]"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = run_sql(\"\"\"\n",
"select ride_timestamp, nbr_passengers, public.remote_fn_rcf(nbr_passengers) as score\n",
"from public.rcf_taxi_data;\n",
"\n",
"\"\"\");\n",
"df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"Note that the anomaly score spikes where our eyeball-norm method suggests there is an anomalous data point as well as in some places where our eyeballs are not as accurate.\n",
"\n",
"Below we print any data points with scores greater than 3 standard deviations (approx 99.9th percentile) from the mean score."
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
ride_timestamp
\n",
"
nbr_passengers
\n",
"
score
\n",
"
\n",
" \n",
" \n",
"
\n",
"
0
\n",
"
2014-07-01 18:30:00
\n",
"
27598
\n",
"
2.111130
\n",
"
\n",
"
\n",
"
1
\n",
"
2014-07-01 19:00:00
\n",
"
26827
\n",
"
1.740206
\n",
"
\n",
"
\n",
"
2
\n",
"
2014-07-02 19:30:00
\n",
"
26872
\n",
"
1.750500
\n",
"
\n",
"
\n",
"
3
\n",
"
2014-07-03 19:00:00
\n",
"
29985
\n",
"
3.113782
\n",
"
\n",
"
\n",
"
4
\n",
"
2014-07-11 23:30:00
\n",
"
26873
\n",
"
1.755936
\n",
"
\n",
"
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
...
\n",
"
\n",
"
\n",
"
231
\n",
"
2015-01-31 18:30:00
\n",
"
27286
\n",
"
1.959775
\n",
"
\n",
"
\n",
"
232
\n",
"
2015-01-31 19:00:00
\n",
"
28804
\n",
"
2.689794
\n",
"
\n",
"
\n",
"
233
\n",
"
2015-01-31 19:30:00
\n",
"
27773
\n",
"
2.226760
\n",
"
\n",
"
\n",
"
234
\n",
"
2015-01-31 22:30:00
\n",
"
27309
\n",
"
1.965812
\n",
"
\n",
"
\n",
"
235
\n",
"
2015-01-31 23:00:00
\n",
"
26591
\n",
"
1.655541
\n",
"
\n",
" \n",
"
\n",
"
236 rows × 3 columns
\n",
"
"
],
"text/plain": [
" ride_timestamp nbr_passengers score\n",
"0 2014-07-01 18:30:00 27598 2.111130\n",
"1 2014-07-01 19:00:00 26827 1.740206\n",
"2 2014-07-02 19:30:00 26872 1.750500\n",
"3 2014-07-03 19:00:00 29985 3.113782\n",
"4 2014-07-11 23:30:00 26873 1.755936\n",
".. ... ... ...\n",
"231 2015-01-31 18:30:00 27286 1.959775\n",
"232 2015-01-31 19:00:00 28804 2.689794\n",
"233 2015-01-31 19:30:00 27773 2.226760\n",
"234 2015-01-31 22:30:00 27309 1.965812\n",
"235 2015-01-31 23:00:00 26591 1.655541\n",
"\n",
"[236 rows x 3 columns]"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = run_sql(\"\"\"\n",
"with score_cutoff as\n",
"(select stddev(public.remote_fn_rcf(nbr_passengers)) as std, avg(public.remote_fn_rcf(nbr_passengers)) as mean, ( mean + 3 * std ) as score_cutoff_value\n",
"from public.rcf_taxi_data)\n",
"\n",
"select ride_timestamp, nbr_passengers, public.remote_fn_rcf(nbr_passengers) as score\n",
"from public.rcf_taxi_data\n",
"where score > (select score_cutoff_value from score_cutoff)\n",
"\n",
"\n",
"\"\"\");\n",
"df"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Conclusion\n",
"\n",
"---\n",
"\n",
"We used Amazon SageMaker Random Cut Forest to detect anomalous datapoints in a taxi ridership dataset. In these data the anomalies occurred when ridership was uncharacteristically high or low. However, the RCF algorithm is also capable of detecting when, for example, data breaks periodicity or uncharacteristically changes global behavior.\n",
"\n",
"We then used Redshift ML to demonstrate how you can do inference on unsupervised algorithms(such as Random Cut Forest). This allows you to democratize Machine learning by doing predictions with Redshift SQL Commands.\n"
]
}
],
"metadata": {
"celltoolbar": "Tags",
"instance_type": "ml.t3.medium",
"kernelspec": {
"display_name": "conda_python3",
"language": "python",
"name": "conda_python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.13"
},
"notice": "Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0 (the \"License\"). You may not use this file except in compliance with the License. A copy of the License is located at http://aws.amazon.com/apache2.0/ or in the \"license\" file accompanying this file. This file is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License."
},
"nbformat": 4,
"nbformat_minor": 4
}