From 1673afa1907b715fea1e5320426f11b62c2fc06d Mon Sep 17 00:00:00 2001 From: Nick Date: Sat, 14 Sep 2019 19:53:11 -0600 Subject: [PATCH] made significant rework. Console version works unconstrained --- AI-Adventure-2bb65e3a4e2f.json | 12 - console_play.py | 20 +- cortex/cortex.sh | 468 ------------------ cortex/cortex.yaml | 11 - cortex/encoder.py | 129 ----- generator/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 137 bytes generator/__pycache__/__init__.cpython-37.pyc | Bin 0 -> 141 bytes generator/{tf_local => tf}/CONTRIBUTORS.md | 0 generator/{tf_local => tf}/DEVELOPERS.md | 0 generator/{tf_local => tf}/LICENSE | 0 generator/{tf_local => tf}/README.md | 0 .../generator_local.cpython-37.pyc | Bin 0 -> 3102 bytes generator/{tf_local => tf}/download_model.py | 0 generator/{tf_local => tf}/generator_local.py | 0 generator/tf/models/774M/.gitignore | 2 + .../models/117M => tf/models/774M}/checkpoint | 0 .../117M => tf/models/774M}/encoder.json | 0 generator/tf/models/774M/hparams.json | 7 + generator/tf/models/774M/model.ckpt.index | Bin 0 -> 15535 bytes generator/tf/models/774M/model.ckpt.meta | Bin 0 -> 1381883 bytes .../models/117M => tf/models/774M}/vocab.bpe | 0 generator/{tf_local => tf}/src/__init__.py | 0 .../src/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 144 bytes .../src/__pycache__/__init__.cpython-37.pyc | Bin 0 -> 154 bytes .../tf/src/__pycache__/encoder.cpython-36.pyc | Bin 0 -> 4982 bytes .../tf/src/__pycache__/encoder.cpython-37.pyc | Bin 0 -> 4977 bytes .../tf/src/__pycache__/model.cpython-37.pyc | Bin 0 -> 6724 bytes .../tf/src/__pycache__/sample.cpython-37.pyc | Bin 0 -> 2606 bytes generator/{tf_local => tf}/src/encoder.py | 0 generator/{tf_local => tf}/src/model.py | 0 generator/{tf_local => tf}/src/sample.py | 8 +- generator/tf_local/models/117M/.gitignore | 1 - generator/tf_local/models/117M/hparams.json | 7 - generator/tf_local/models/774M/.gitignore | 0 .../__pycache__/web_generator.cpython-36.pyc | Bin 0 -> 1553 bytes generator/web/web_generator.py | 44 ++ main.py | 31 -- other/caching.py | 44 ++ .../__pycache__/story_manager.cpython-36.pyc | Bin 0 -> 3591 bytes .../__pycache__/story_manager.cpython-37.pyc | Bin 0 -> 3582 bytes story/__pycache__/utils.cpython-36.pyc | Bin 0 -> 2095 bytes story/__pycache__/utils.cpython-37.pyc | Bin 0 -> 2099 bytes story/story_manager.py | 6 +- 43 files changed, 118 insertions(+), 672 deletions(-) delete mode 100644 AI-Adventure-2bb65e3a4e2f.json delete mode 100755 cortex/cortex.sh delete mode 100644 cortex/cortex.yaml delete mode 100644 cortex/encoder.py create mode 100644 generator/__pycache__/__init__.cpython-36.pyc create mode 100644 generator/__pycache__/__init__.cpython-37.pyc rename generator/{tf_local => tf}/CONTRIBUTORS.md (100%) rename generator/{tf_local => tf}/DEVELOPERS.md (100%) rename generator/{tf_local => tf}/LICENSE (100%) rename generator/{tf_local => tf}/README.md (100%) create mode 100644 generator/tf/__pycache__/generator_local.cpython-37.pyc rename generator/{tf_local => tf}/download_model.py (100%) rename generator/{tf_local => tf}/generator_local.py (100%) create mode 100644 generator/tf/models/774M/.gitignore rename generator/{tf_local/models/117M => tf/models/774M}/checkpoint (100%) rename generator/{tf_local/models/117M => tf/models/774M}/encoder.json (100%) create mode 100644 generator/tf/models/774M/hparams.json create mode 100644 generator/tf/models/774M/model.ckpt.index create mode 100644 generator/tf/models/774M/model.ckpt.meta rename generator/{tf_local/models/117M => tf/models/774M}/vocab.bpe (100%) rename generator/{tf_local => tf}/src/__init__.py (100%) create mode 100644 generator/tf/src/__pycache__/__init__.cpython-36.pyc create mode 100644 generator/tf/src/__pycache__/__init__.cpython-37.pyc create mode 100644 generator/tf/src/__pycache__/encoder.cpython-36.pyc create mode 100644 generator/tf/src/__pycache__/encoder.cpython-37.pyc create mode 100644 generator/tf/src/__pycache__/model.cpython-37.pyc create mode 100644 generator/tf/src/__pycache__/sample.cpython-37.pyc rename generator/{tf_local => tf}/src/encoder.py (100%) rename generator/{tf_local => tf}/src/model.py (100%) rename generator/{tf_local => tf}/src/sample.py (89%) delete mode 100644 generator/tf_local/models/117M/.gitignore delete mode 100644 generator/tf_local/models/117M/hparams.json delete mode 100644 generator/tf_local/models/774M/.gitignore create mode 100644 generator/web/__pycache__/web_generator.cpython-36.pyc create mode 100644 generator/web/web_generator.py create mode 100644 other/caching.py create mode 100644 story/__pycache__/story_manager.cpython-36.pyc create mode 100644 story/__pycache__/story_manager.cpython-37.pyc create mode 100644 story/__pycache__/utils.cpython-36.pyc create mode 100644 story/__pycache__/utils.cpython-37.pyc diff --git a/AI-Adventure-2bb65e3a4e2f.json b/AI-Adventure-2bb65e3a4e2f.json deleted file mode 100644 index 7e72b6e..0000000 --- a/AI-Adventure-2bb65e3a4e2f.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "service_account", - "project_id": "ai-adventure", - "private_key_id": "2bb65e3a4e2f0c0ef073cb0f10c9c26e1bb1447b", - "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC7nTHn4hulYkNX\nrPmkZhKemEeCvURPB/6kJnfnNGCk/bxNfM4Jg3WS8zF0KvZsBpT/6ZCctMIynwMc\nAd1ABxpIACi8Ci9gobyDsuBRd3z2V78WTPZ8/MCKIIQC5X4prGvosyBp8APr6C9z\nsFFDwzf9tLBPg0F9JlgAtuxiXDRgQRXkxNwniqkGi95QNofsgmaJyj9DlBhtWU0K\n3jWN6P8eGaV+lyRz5qhgVdp3hI9ZFSweW4XeuVWAexKcDT6tY2OZyXzlftqwVW7L\ntcYJiKWDrjwszi7De8D0g/4tB9zd4L/mDtBhpJp1O0a4tbJ4dtbIeEIM+pcDeskF\nS6B4fv2HAgMBAAECggEADWORfS/osyvJDIe+pRnXuFO7vrvNFSrH5GUOZ4SYZQ3q\nk0kV1x33lQ4f+F9ciKcLmRvNAzHvLfelHCmR5ZDcMkk4nvrHGMlSD8ADPC0f0ODA\nNVI2wQK0pubdJOvFzimM5eVqqcTEMuC2CjaKBiD3bPapInOGh+zlmN91DSvxXPEI\nxue8mmW/gmUexOKxyVm8HREFLdDOvz4Z6Ta95OvOs1ez16ROI1DFPAg0K0cnJxrm\n5Z4XW8rZTMsLPrSVTfR/HvTyXmdzk0bviGEYWnGY1wZI+MvKhpADEmaYXnbMloWh\nWk2/3YitKMGeUwSVX/9+6VFiDhI+8uuNV/WzsKLFOQKBgQDrvGTTjJP30qH2Qosx\nOp4T9GdF2n77B1hjJ8pd6tPKbG5C8nWbogPVYqG0skEI3iSgyGbMNs9WXy84ghfU\n/QlFe9muUDWUv4bJOwRulYJhXqbYpE2aRsz09NcH9hJk0tY8fP6ow/QXUKXtjB2S\nq+DuU49bHMjmzE+1PmOHzgosbQKBgQDLvdSz6+YcwEbk0tuGNAaB1N98LwIlORLb\nzXnPOeWNMZ67F18D1RDTtqHo0rYQZpMqJqotGbLfWRuup5/qLe1aaT/sLRQuMzqK\nrDDIEf7AeH6MlKqnhArv/g1BQSFrRaa8ju9Nzl/1MF0hTwc3d86CjG4b5dUg9mNi\n16dA4NaxQwKBgQDS2hipK/Vx1iHt/ck4iEC6goIY9f1cFU7WqdGVPaSgS2o4UVwm\nj7y0EVuoH0SSZPgIJBfmkyPTEqJO/fXJGWdAki27f5zdZo5t0W7+ZpZO93VvE08i\nLi/G7nSjd1MugXMEeZziYRsj+4vetNQCy+AN7Amuqkl8PsUQzTQDVaS95QKBgAop\npON4n9jNSnv9fI+8JprxSFiEa8H5j9RA8pOAms+pKvbAGrAxP46f7IGViRlWVH7k\nwNZREtgLNNNIbzSaJ927pEGemgQX8BKcti40n5VwLTfL7ps+feEstfKMUiNsrP14\nz7z8z1KGoA6aR4zfwABJCvD/TNtBDwIOKbyVun/LAoGAGc1B0SFY2a3LyJ3CFMQD\n3+Y6Sam5w1dlkB/yECFeLN59fk0NErjHmlntIu6fgWMglvzvU5RESSOnctbh1wBi\nkyj/OdjrS76dAH4HfICJgS9gcLFixphU9JqOKd5rZfnZh52AFWs3aeEmpmoN5yyu\nnVir78ePOnyRJzLKm2iql1I=\n-----END PRIVATE KEY-----\n", - "client_email": "ai-adventure@appspot.gserviceaccount.com", - "client_id": "100390463556501175877", - "auth_uri": "https://accounts.google.com/o/oauth2/auth", - "token_uri": "https://oauth2.googleapis.com/token", - "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", - "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/ai-adventure%40appspot.gserviceaccount.com" -} diff --git a/console_play.py b/console_play.py index 1c97d6f..cf46c81 100644 --- a/console_play.py +++ b/console_play.py @@ -3,22 +3,28 @@ from story.utils import * from google.cloud import storage import json from story.story_manager import * -from generator.tf_local.generator_local import * +from generator.web.web_generator import * import tensorflow as tf +import textwrap + + +# Set the key +def console_print(str): + LINE_WIDTH=80 + print((textwrap.fill(str, 80))) + if __name__ == '__main__': - - sess = tf.Session() - generator = LocalGenerator(sess) + generator = WebGenerator("./AI-Adventure-2bb65e3a4e2f.json") prompt = "You enter a dungeon with your trusty sword and shield. You are searching for the evil necromancer who killed your family. You've heard that he resides at the bottom of the dungeon, guarded by legions of the undead. You enter the first door and see" story_manager = UnconstrainedStoryManager(generator, prompt) - print(story_manager.story) + + console_print(str(story_manager.story)) while(True): action = input("> ") action = "You " + action - print(action) result = story_manager.act(action) - print(result) + console_print(action + result) diff --git a/cortex/cortex.sh b/cortex/cortex.sh deleted file mode 100755 index d16f778..0000000 --- a/cortex/cortex.sh +++ /dev/null @@ -1,468 +0,0 @@ -#!/bin/bash - -# Copyright 2019 Cortex Labs, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License 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. - -set -e - -#################### -### FLAG PARSING ### -#################### - -flag_help=false -positional_args=() - -while [[ $# -gt 0 ]]; do - key="$1" - case $key in - -c|--config) - export CORTEX_CONFIG="$2" - shift - shift - ;; - -h|--help) - flag_help="true" - shift - ;; - *) - positional_args+=("$1") - shift - ;; - esac -done - -set -- "${positional_args[@]}" -positional_args=() -for i in "$@"; do - case $i in - -c=*|--config=*) - export CORTEX_CONFIG="${i#*=}" - shift - ;; - -h=*|--help=*) - flag_help="true" - ;; - *) - positional_args+=("$1") - shift - ;; - esac -done - -set -- "${positional_args[@]}" -if [ "$flag_help" == "true" ]; then - show_help - exit 0 -fi - -for arg in "$@"; do - if [[ "$arg" == -* ]]; then - echo "unknown flag: $arg" - show_help - exit 1 - fi -done - -##################### -### CONFIGURATION ### -##################### - -if [ "$CORTEX_CONFIG" != "" ]; then - if [ ! -f "$CORTEX_CONFIG" ]; then - echo "Cortex config file does not exist: $CORTEX_CONFIG" - exit 1 - fi - source $CORTEX_CONFIG -fi - -set -u - -export CORTEX_VERSION_STABLE=0.7.3 - -# Defaults -export AWS_ACCESS_KEY_ID="${AWS_ACCESS_KEY_ID:-""}" - -if [ "$AWS_ACCESS_KEY_ID" = "" ]; then - echo -e "\nPlease set AWS_ACCESS_KEY_ID" - exit 1 -fi - -export AWS_SECRET_ACCESS_KEY="${AWS_SECRET_ACCESS_KEY:-""}" - -if [ "$AWS_SECRET_ACCESS_KEY" = "" ]; then - echo -e "\nPlease set AWS_SECRET_ACCESS_KEY" - exit 1 -fi - -export CORTEX_LOG_GROUP="${CORTEX_LOG_GROUP:-cortex}" -export CORTEX_BUCKET="${CORTEX_BUCKET:-""}" -export CORTEX_REGION="${CORTEX_REGION:-us-west-2}" -export CORTEX_ZONES="${CORTEX_ZONES:-""}" - -export CORTEX_CLUSTER="${CORTEX_CLUSTER:-cortex}" -export CORTEX_NODE_TYPE="${CORTEX_NODE_TYPE:-t3.large}" -export CORTEX_NODES_MIN="${CORTEX_NODES_MIN:-2}" -export CORTEX_NODES_MAX="${CORTEX_NODES_MAX:-5}" -export CORTEX_NAMESPACE="${CORTEX_NAMESPACE:-cortex}" - -export CORTEX_IMAGE_MANAGER="${CORTEX_IMAGE_MANAGER:-cortexlabs/manager:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_FLUENTD="${CORTEX_IMAGE_FLUENTD:-cortexlabs/fluentd:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_NGINX_BACKEND="${CORTEX_IMAGE_NGINX_BACKEND:-cortexlabs/nginx-backend:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_NGINX_CONTROLLER="${CORTEX_IMAGE_NGINX_CONTROLLER:-cortexlabs/nginx-controller:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_OPERATOR="${CORTEX_IMAGE_OPERATOR:-cortexlabs/operator:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_SPARK="${CORTEX_IMAGE_SPARK:-cortexlabs/spark:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_SPARK_OPERATOR="${CORTEX_IMAGE_SPARK_OPERATOR:-cortexlabs/spark-operator:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_TF_SERVE="${CORTEX_IMAGE_TF_SERVE:-cortexlabs/tf-serve:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_TF_TRAIN="${CORTEX_IMAGE_TF_TRAIN:-cortexlabs/tf-train:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_TF_API="${CORTEX_IMAGE_TF_API:-cortexlabs/tf-api:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_PYTHON_PACKAGER="${CORTEX_IMAGE_PYTHON_PACKAGER:-cortexlabs/python-packager:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_TF_SERVE_GPU="${CORTEX_IMAGE_TF_SERVE_GPU:-cortexlabs/tf-serve-gpu:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_TF_TRAIN_GPU="${CORTEX_IMAGE_TF_TRAIN_GPU:-cortexlabs/tf-train-gpu:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_ONNX_SERVE="${CORTEX_IMAGE_ONNX_SERVE:-cortexlabs/onnx-serve:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_ONNX_SERVE_GPU="${CORTEX_IMAGE_ONNX_SERVE_GPU:-cortexlabs/onnx-serve-gpu:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_CLUSTER_AUTOSCALER="${CORTEX_IMAGE_CLUSTER_AUTOSCALER:-cortexlabs/cluster-autoscaler:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_NVIDIA="${CORTEX_IMAGE_NVIDIA:-cortexlabs/nvidia:$CORTEX_VERSION_STABLE}" -export CORTEX_IMAGE_METRICS_SERVER="${CORTEX_IMAGE_METRICS_SERVER:-cortexlabs/metrics-server:$CORTEX_VERSION_STABLE}" - -export CORTEX_ENABLE_TELEMETRY="${CORTEX_ENABLE_TELEMETRY:-""}" - -########################## -### TOP-LEVEL COMMANDS ### -########################## - -function install_eks() { - echo - docker run -it --entrypoint /root/install_eks.sh \ - -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \ - -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \ - -e CORTEX_CLUSTER=$CORTEX_CLUSTER \ - -e CORTEX_REGION=$CORTEX_REGION \ - -e CORTEX_NODE_TYPE=$CORTEX_NODE_TYPE \ - -e CORTEX_NODES_MIN=$CORTEX_NODES_MIN \ - -e CORTEX_NODES_MAX=$CORTEX_NODES_MAX \ - $CORTEX_IMAGE_MANAGER -} - -function uninstall_eks() { - echo - docker run -it --entrypoint /root/uninstall_eks.sh \ - -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \ - -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \ - -e CORTEX_CLUSTER=$CORTEX_CLUSTER \ - -e CORTEX_REGION=$CORTEX_REGION \ - $CORTEX_IMAGE_MANAGER -} - -function install_cortex() { - echo - docker run -it --entrypoint /root/install_cortex.sh \ - -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \ - -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \ - -e CORTEX_CLUSTER=$CORTEX_CLUSTER \ - -e CORTEX_REGION=$CORTEX_REGION \ - -e CORTEX_NAMESPACE=$CORTEX_NAMESPACE \ - -e CORTEX_NODE_TYPE=$CORTEX_NODE_TYPE \ - -e CORTEX_LOG_GROUP=$CORTEX_LOG_GROUP \ - -e CORTEX_BUCKET=$CORTEX_BUCKET \ - -e CORTEX_IMAGE_FLUENTD=$CORTEX_IMAGE_FLUENTD \ - -e CORTEX_IMAGE_NGINX_BACKEND=$CORTEX_IMAGE_NGINX_BACKEND \ - -e CORTEX_IMAGE_NGINX_CONTROLLER=$CORTEX_IMAGE_NGINX_CONTROLLER \ - -e CORTEX_IMAGE_OPERATOR=$CORTEX_IMAGE_OPERATOR \ - -e CORTEX_IMAGE_SPARK=$CORTEX_IMAGE_SPARK \ - -e CORTEX_IMAGE_SPARK_OPERATOR=$CORTEX_IMAGE_SPARK_OPERATOR \ - -e CORTEX_IMAGE_TF_SERVE=$CORTEX_IMAGE_TF_SERVE \ - -e CORTEX_IMAGE_TF_TRAIN=$CORTEX_IMAGE_TF_TRAIN \ - -e CORTEX_IMAGE_TF_API=$CORTEX_IMAGE_TF_API \ - -e CORTEX_IMAGE_PYTHON_PACKAGER=$CORTEX_IMAGE_PYTHON_PACKAGER \ - -e CORTEX_IMAGE_TF_SERVE_GPU=$CORTEX_IMAGE_TF_SERVE_GPU \ - -e CORTEX_IMAGE_TF_TRAIN_GPU=$CORTEX_IMAGE_TF_TRAIN_GPU \ - -e CORTEX_IMAGE_ONNX_SERVE=$CORTEX_IMAGE_ONNX_SERVE \ - -e CORTEX_IMAGE_ONNX_SERVE_GPU=$CORTEX_IMAGE_ONNX_SERVE_GPU \ - -e CORTEX_IMAGE_CLUSTER_AUTOSCALER=$CORTEX_IMAGE_CLUSTER_AUTOSCALER \ - -e CORTEX_IMAGE_NVIDIA=$CORTEX_IMAGE_NVIDIA \ - -e CORTEX_IMAGE_METRICS_SERVER=$CORTEX_IMAGE_METRICS_SERVER \ - -e CORTEX_ENABLE_TELEMETRY=$CORTEX_ENABLE_TELEMETRY \ - $CORTEX_IMAGE_MANAGER -} - -function uninstall_operator() { - echo - docker run -it --entrypoint /root/uninstall_operator.sh \ - -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \ - -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \ - -e CORTEX_CLUSTER=$CORTEX_CLUSTER \ - -e CORTEX_REGION=$CORTEX_REGION \ - -e CORTEX_NAMESPACE=$CORTEX_NAMESPACE \ - $CORTEX_IMAGE_MANAGER -} - -function info() { - echo - docker run -it --entrypoint /root/info.sh \ - -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \ - -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \ - -e CORTEX_CLUSTER=$CORTEX_CLUSTER \ - -e CORTEX_REGION=$CORTEX_REGION \ - -e CORTEX_NAMESPACE=$CORTEX_NAMESPACE \ - $CORTEX_IMAGE_MANAGER -} - -################ -### CHECK OS ### -################ - -case "$OSTYPE" in - darwin*) PARSED_OS="darwin" ;; - linux*) PARSED_OS="linux" ;; - *) echo -e "\nerror: only mac and linux are supported"; exit 1 ;; -esac - -############################# -### DEPENDENCY MANAGEMENT ### -############################# - -function check_dep_curl() { - if ! command -v curl >/dev/null; then - echo -e "\nerror: please install \`curl\`" - exit 1 - fi -} - -function install_cli() { - set -e - - check_dep_curl - - echo -e "\nInstalling the Cortex CLI (/usr/local/bin/cortex) ..." - - CORTEX_SH_TMP_DIR="$HOME/.cortex-sh-tmp" - rm -rf $CORTEX_SH_TMP_DIR && mkdir -p $CORTEX_SH_TMP_DIR - curl -s -o $CORTEX_SH_TMP_DIR/cortex https://s3-us-west-2.amazonaws.com/get-cortex/$CORTEX_VERSION_STABLE/cli/$PARSED_OS/cortex - chmod +x $CORTEX_SH_TMP_DIR/cortex - - if [ $(id -u) = 0 ]; then - mv -f $CORTEX_SH_TMP_DIR/cortex /usr/local/bin/cortex - else - ask_sudo - sudo mv -f $CORTEX_SH_TMP_DIR/cortex /usr/local/bin/cortex - fi - - rm -rf $CORTEX_SH_TMP_DIR - echo "✓ Installed the Cortex CLI" - - bash_profile_path=$(get_bash_profile) - if [ ! "$bash_profile_path" = "" ]; then - if ! grep -Fxq "source <(cortex completion)" "$bash_profile_path"; then - echo - read -p "Would you like to modify your bash profile ($bash_profile_path) to enable cortex command completion and the cx alias? [Y/n] " -n 1 -r - echo - if [[ $REPLY =~ ^[Yy]$ ]]; then - echo -e "\nsource <(cortex completion)" >> $bash_profile_path - echo "✓ Your bash profile ($bash_profile_path) has been updated" - echo - echo "Note: \`bash_completion\` must be installed on your system for cortex command completion to function properly" - echo - echo "Command to update your current terminal session:" - echo " source $bash_profile_path" - else - echo "Your bash profile has not been modified. If you would like to modify it manually, add this line to your bash profile:" - echo " source <(cortex completion)" - echo "Note: \`bash_completion\` must be installed on your system for cortex command completion to function properly" - fi - fi - else - echo -e "\nIf your would like to enable cortex command completion and the cx alias, add this line to your bash profile:" - echo " source <(cortex completion)" - echo "Note: \`bash_completion\` must be installed on your system for cortex command completion to function properly" - fi -} - -function uninstall_cli() { - set -e - - rm -rf $HOME/.cortex - - if ! command -v cortex >/dev/null; then - echo -e "\nThe Cortex CLI is not installed" - return - fi - - if [[ ! -f /usr/local/bin/cortex ]]; then - echo -e "\nThe Cortex CLI was not found at /usr/local/bin/cortex, please uninstall it manually" - return - fi - - if [ $(id -u) = 0 ]; then - rm /usr/local/bin/cortex - else - ask_sudo - sudo rm /usr/local/bin/cortex - fi - echo -e "\n✓ Uninstalled the Cortex CLI" - - bash_profile_path=$(get_bash_profile) - if [ ! "$bash_profile_path" = "" ]; then - if grep -Fxq "source <(cortex completion)" "$bash_profile_path"; then - echo - read -p "Would you like to remove \"source <(cortex completion)\" from your bash profile ($bash_profile_path)? [Y/n] " -n 1 -r - echo - if [[ $REPLY =~ ^[Yy]$ ]]; then - sed '/^source <(cortex completion)$/d' "$bash_profile_path" > "${bash_profile_path}_cortex_modified" && mv -f "${bash_profile_path}_cortex_modified" "$bash_profile_path" - echo "✓ Your bash profile ($bash_profile_path) has been updated" - fi - fi - fi -} - -function get_bash_profile() { - if [ "$PARSED_OS" = "darwin" ]; then - if [ -f $HOME/.bash_profile ]; then - echo $HOME/.bash_profile - return - elif [ -f $HOME/.bashrc ]; then - echo $HOME/.bashrc - return - fi - else - if [ -f $HOME/.bashrc ]; then - echo $HOME/.bashrc - return - elif [ -f $HOME/.bash_profile ]; then - echo $HOME/.bash_profile - return - fi - fi - - echo "" -} - -function ask_sudo() { - if ! sudo -n true 2>/dev/null; then - echo -e "\nPlease enter your sudo password" - fi -} - -function prompt_for_telemetry() { - if [ "$CORTEX_ENABLE_TELEMETRY" != "true" ] && [ "$CORTEX_ENABLE_TELEMETRY" != "false" ]; then - while true - do - echo - read -p "Would you like to help improve Cortex by anonymously sending error reports and usage stats to the dev team? [Y/n] " -n 1 -r - echo - if [[ $REPLY =~ ^[Yy]$ ]]; then - export CORTEX_ENABLE_TELEMETRY=true - break - elif [[ $REPLY =~ ^[Nn]$ ]]; then - export CORTEX_ENABLE_TELEMETRY=false - break - fi - echo "Unexpected value, please enter \"Y\" or \"n\"" - done - fi -} - -############ -### HELP ### -############ - -function show_help() { - echo " -Usage: - ./cortex.sh command [sub-command] [flags] - -Available Commands: - install install Cortex - uninstall uninstall Cortex - update update Cortex - info information about Cortex - - install cli install the Cortex CLI - uninstall cli uninstall the Cortex CLI - -Flags: - -c, --config path to a Cortex config file - -h, --help -" -} - -###################### -### ARG PROCESSING ### -###################### - -arg1=${1:-""} -arg2=${2:-""} -arg3=${3:-""} - -if [ -z "$arg1" ]; then - show_help - exit 0 -fi - -if [ "$arg1" = "install" ]; then - if [ ! "$arg3" = "" ]; then - echo -e "\nerror: too many arguments for install command" - show_help - exit 1 - elif [ "$arg2" = "" ]; then - prompt_for_telemetry && install_eks && install_cortex && info - elif [ "$arg2" = "cli" ]; then - install_cli - elif [ "$arg2" = "" ]; then - echo -e "\nerror: missing subcommand for install" - show_help - exit 1 - else - echo -e "\nerror: invalid subcommand for install: $arg2" - show_help - exit 1 - fi -elif [ "$arg1" = "uninstall" ]; then - if [ ! "$arg3" = "" ]; then - echo -e "\nerror: too many arguments for uninstall command" - show_help - exit 1 - elif [ "$arg2" = "" ]; then - uninstall_eks - elif [ "$arg2" = "cli" ]; then - uninstall_cli - elif [ "$arg2" = "" ]; then - echo -e "\nerror: missing subcommand for uninstall" - show_help - exit 1 - else - echo -e "\nerror: invalid subcommand for uninstall: $arg2" - show_help - exit 1 - fi -elif [ "$arg1" = "update" ]; then - if [ ! "$arg2" = "" ]; then - echo -e "\nerror: too many arguments for get command" - show_help - exit 1 - else - uninstall_operator && install_cortex - fi -elif [ "$arg1" = "info" ]; then - if [ ! "$arg2" = "" ]; then - echo -e "\nerror: too many arguments for get command" - show_help - exit 1 - else - info - fi -else - echo -e "\nerror: unknown command: $arg1" - show_help - exit 1 -fi diff --git a/cortex/cortex.yaml b/cortex/cortex.yaml deleted file mode 100644 index 5e2b63f..0000000 --- a/cortex/cortex.yaml +++ /dev/null @@ -1,11 +0,0 @@ -# cortex.yaml -- kind: deployment - name: text -- kind: api - name: generator - model: s3://cortex-examples/gpt-2/774M/1539234541.zip - request_handler: encoder.py - compute: - gpu: 1 - min_replicas: 1 - max_replicas: 1 diff --git a/cortex/encoder.py b/cortex/encoder.py deleted file mode 100644 index ce76006..0000000 --- a/cortex/encoder.py +++ /dev/null @@ -1,129 +0,0 @@ -# This file includes code which was modified from https://github.com/openai/gpt-2 - -import tensorflow as tf -import os -import json -import regex as re -from functools import lru_cache -import requests -import boto3 - - -@lru_cache() -def bytes_to_unicode(): - bs = ( - list(range(ord("!"), ord("~") + 1)) - + list(range(ord("¡"), ord("¬") + 1)) - + list(range(ord("®"), ord("ÿ") + 1)) - ) - cs = bs[:] - n = 0 - for b in range(2 ** 8): - if b not in bs: - bs.append(b) - cs.append(2 ** 8 + n) - n += 1 - cs = [chr(n) for n in cs] - return dict(zip(bs, cs)) - - -def get_pairs(word): - pairs = set() - prev_char = word[0] - for char in word[1:]: - pairs.add((prev_char, char)) - prev_char = char - return pairs - - -class Encoder: - def __init__(self, encoder, bpe_merges, errors="replace"): - self.encoder = encoder - self.decoder = {v: k for k, v in self.encoder.items()} - self.errors = errors - self.byte_encoder = bytes_to_unicode() - self.byte_decoder = {v: k for k, v in self.byte_encoder.items()} - self.bpe_ranks = dict(zip(bpe_merges, range(len(bpe_merges)))) - self.cache = {} - self.pat = re.compile( - r"""'s|'t|'re|'ve|'m|'ll|'d| ?\p{L}+| ?\p{N}+| ?[^\s\p{L}\p{N}]+|\s+(?!\S)|\s+""" - ) - - def bpe(self, token): - if token in self.cache: - return self.cache[token] - word = tuple(token) - pairs = get_pairs(word) - - if not pairs: - return token - - while True: - bigram = min(pairs, key=lambda pair: self.bpe_ranks.get(pair, float("inf"))) - if bigram not in self.bpe_ranks: - break - first, second = bigram - new_word = [] - i = 0 - while i < len(word): - try: - j = word.index(first, i) - new_word.extend(word[i:j]) - i = j - except: - new_word.extend(word[i:]) - break - - if word[i] == first and i < len(word) - 1 and word[i + 1] == second: - new_word.append(first + second) - i += 2 - else: - new_word.append(word[i]) - i += 1 - new_word = tuple(new_word) - word = new_word - if len(word) == 1: - break - else: - pairs = get_pairs(word) - word = " ".join(word) - self.cache[token] = word - return word - - def encode(self, text): - bpe_tokens = [] - for token in re.findall(self.pat, text): - token = "".join(self.byte_encoder[b] for b in token.encode("utf-8")) - bpe_tokens.extend(self.encoder[bpe_token] for bpe_token in self.bpe(token).split(" ")) - return bpe_tokens - - def decode(self, tokens): - text = "".join([self.decoder[token] for token in tokens]) - text = bytearray([self.byte_decoder[c] for c in text]).decode("utf-8", errors=self.errors) - return text - - -def get_encoder(): - s3 = boto3.client("s3") - encoder = json.load( - s3.get_object(Bucket="cortex-examples", Key="gpt-2/774M/encoder.json")["Body"] - ) - bpe_data = ( - s3.get_object(Bucket="cortex-examples", Key="gpt-2/774M/vocab.bpe")["Body"] - .read() - .decode("utf-8") - ) - bpe_merges = [tuple(merge_str.split()) for merge_str in bpe_data.split("\n")[1:-1]] - return Encoder(encoder=encoder, bpe_merges=bpe_merges) - - -encoder = get_encoder() - - -def pre_inference(sample, metadata): - context = encoder.encode(sample["text"]) - return {"context": [context]} - - -def post_inference(prediction, metadata): - return {encoder.decode(prediction["response"]["sample"])} diff --git a/generator/__pycache__/__init__.cpython-36.pyc b/generator/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4dffe2fd29e460638fe085e95089bb5116ec81f0 GIT binary patch literal 137 zcmXr!<>gxbwmg;r2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUuOCl`MIh3d6~)C z<%u~Z`FREg`stY^`i`D1rFrS8`FZ;3sd=eIi6!|(`tk9Zd6^~g@p=W7w>WHa^HWN5 MQtd$I6$3E?0C(>p8vpg`kg5__^V?p#|5CH>>K!yVl7qb9~6oz01O-8?!3`HPe1o6vEKO;XkRX;B? zIlDYDrzAhmz(7Aevqay~)1@>oJvBd1KRq=swJ5P9zeqnmJ~J<~BtBlRpz;=nO>TZl OX-=vg$h=}8W&i+zk|8Pp literal 0 HcmV?d00001 diff --git a/generator/tf_local/CONTRIBUTORS.md b/generator/tf/CONTRIBUTORS.md similarity index 100% rename from generator/tf_local/CONTRIBUTORS.md rename to generator/tf/CONTRIBUTORS.md diff --git a/generator/tf_local/DEVELOPERS.md b/generator/tf/DEVELOPERS.md similarity index 100% rename from generator/tf_local/DEVELOPERS.md rename to generator/tf/DEVELOPERS.md diff --git a/generator/tf_local/LICENSE b/generator/tf/LICENSE similarity index 100% rename from generator/tf_local/LICENSE rename to generator/tf/LICENSE diff --git a/generator/tf_local/README.md b/generator/tf/README.md similarity index 100% rename from generator/tf_local/README.md rename to generator/tf/README.md diff --git a/generator/tf/__pycache__/generator_local.cpython-37.pyc b/generator/tf/__pycache__/generator_local.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8c7f27944b6f6e546d63b1e6dfaa7d39868f8fae GIT binary patch literal 3102 zcmZuzTaO$^6|SnjPS0hp_ImBa7zlw$VApm)e!#K~Sh0Yx66^!eQfQ5*duC_0r@LKU zL*h}-(;5*Ttbmjs(EG^$;1Tiz>NO9@Qhq_6_)hgqypE|+pE-3uRp&e3sh@Yd0YmxB z|Mf zzb9K~4DuVHm@S={FWp!yy^2>XVv5(I^3F-OlwCXLZ0Rdk zc~ie`RbFhJi!=V|p->ZPSrZ+=bW?OW3At^-?2Y1)vbHyxEr-mZ>o*yR^`TQ zEY1a1+*Ui&-TG4H&{@?dLYe?qlxN`Wp5RjP?duwQN^G{U*k- zs(miVf4BnY=mp1F7MtTj-99ufC=YMly7QYw=cE|O!K^%(mU-5)R z&s6fU(!t|_8lFVuWRdi*Yr9O!QhP}@gg>Qjj}sNGD;5+fu%F(DlhI(Fs%X8cofk=_ zMP6#V7+`gKnolylo&PzJauO%eNanMMV1XVOr0p~x#M&z2$GTNw3nd4`L<=?2?IMMG zlBcx2Gs)C@w`H656j`BNImqICMph=V-k_OHOJo|{axg2>1RdrdjZfyVIni!DSH)au z2m8P-=Xe0a^j11hNvWdYNisYwV6f7jL_;odEmfA#+1Nj^&sv&r!Eqd}_j?B>nG@kAZ| z?3WMc**M9w!|@uYMN1<5$34$|Nw!m?o zvXwJ+YY+VAtT@)MyxLc-I;i~DIF{9I#ipGK8IQPi*;3tUuimI^!>p{{TxnZiRIg%H z3nSgQ_u!BSB_{tR zX)}Ys))%2W$v|&q=ruf7_OHon=+WLW*nE;_hP5S8h1@1V0Va1zTq1Fq#2$$&B;FwL zCJD;I@>?WskoY!Juvp6b&tIe@%*l z`=W>54(|y0KE{6yXQFTdx`Fc)3c*={jn25umK?AaO95zG=FwmQI<~SvilQ>~w{$8z zAOL4R#uI}8Sh*8^#_`m!YZs3RZy!%BLxR5YD*p_Rg34F^NPrMqN8|TQ`QrYcWXr2xR<$x?2Rs`Q%+&=BIRpe#V+(cBW xfmEg8LW3Yr%H;_pR0i>q4wz2L%nX1r?2Z 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 literal 0 HcmV?d00001 diff --git a/generator/tf/models/774M/model.ckpt.meta b/generator/tf/models/774M/model.ckpt.meta new file mode 100644 index 0000000000000000000000000000000000000000..f5fea4fb1f05ae98668f06fee1f0171973441606 GIT binary patch literal 1381883 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ðxXE%Y~Q~nsnSEQIm z?F--Qz;MmioQg{WGny!#Opd0QR_z}&-TY3iYN7-jGvOe`v=mUL z9396?K2{9aobJn0MKLX#UY&S=VwxHXAfAec+CQ1UL^M?XR!Z4ieQczTAsni_5a3XQ zFVEX{4AYK_v>ID5mXGR9Pg-_Q<<5zB4*qS`^d5 zMD-qyt@DHe)?x-$@eiPwCJ{C`E`3GeQ6)*%8r9vie^Uz-)7Wn)6w)H5c2P`I>j_m@ z4>WD#{-PQ`1Bz*ET~SQqqxZfTSZ{1JYb23kn#9Dh(-hP6sHK=j)pj@%QcOcrnqnF> zd%u~|lD>N!2grs=fXU!owz-}2T$oJ1^y9}b-afm&{@&N_UR~dLxJ9C(^v{L(!Z)Ot zt`Y-=6e*_B4D}{f{rPSL^eE5{VY~~Zmp*QB2qFHe+t8Hw^vZX!_vsNHI;S^eLu6SH0ypfMS|j&!LZS+7kgT zy;UP6n*%WizRpK6&1QQ1>gM%lH_sm39>sJk8YBH04^}KW2%{3k^k{~_aB`g0j6i=c zy2KRI{asPq5yimKM+*Uicfz%Hz8^{^DciAIqL|iFYl2iqZ>mFn(A|$6O)*W{S@o-& zv6CrqBBrU4Vp@tk7P$X975te2_w~JkLB#1QhSk5_V1BclK0Z`b%y+@gNONnaDC1+@ zGIpB@+@ESHf&0A;%xQgSsHeAoc)7I*^Qo>s+(9wD=x%Y|V!CJCn)&d|TRcg|_pdL1 z=}y^jIxhj_?r%sj?N>hRaPvi@gUo6G_ou@{!2K0pnLwNpZmx2Z*}(moUOnLc?7a?f zfBsqo?lVU4aBJAW{j8NhEH{wjE^uFw?D_^}FCaQ=Y6JJlwu+Wd?^a6fLj$-!8ypwl zeOS9^NGYtoR~z2HnZSM0dl+Fk5>Gy>tV51>WZDg2Ja`$IWN>PErClqPglYFn+e_*qofdc zFn5nYj;=E(QcRm8V^U1ZUj};_;C-tHvyBFgBySVN2OD4xT;wV!P;OW>)g?4wPq`B3 z;-_a9ngs%f2w*xAJ%~YgT;_mj$)3pJ++FK`_M7r_HOQH6ZMmV)wAkw!n^Bi~%^q1_ z%Trt9p_cz%>`2IbYFU@%q6Ecss@@R(BEkxDQXN-6cdX!ltMU}EW@>lZbcW}gd4Z(p z97Agw&N$eAI;>#d7+o)_+7x07bjHFNk8~<)Q|jq!Tl*?#sV|4>@dJu!8gj$po}oP_ z#WZU+aYnfK=`q;Y8DHc6D1F)Iu6>0R)70fCQd3N)Ds{GxRa{rSIuFG(b%nQBfUag|4fJS$u1h@09NVke^&j}%bLCsz&*T;W5*3ceS& zW!s$IK8k7V`oNM4NwN=XV$)}U7y?2!m>w)sNM#4bH1;(LQj;2OCbKm_`MKmp7iO zqgcv82XU7~3mZcHq1f-ESC3zY`y7apdv?rlIZ4dyy)9xFuT z0JFwlXOqN&{+FW+QcU;MbtFE@s;5#j;wqxnOQ){-xB7e608_?KZ-52GblatH6!|$a z%s2Y;9$wDt>0KR1PsC14IODxA!4#prgQ#1q?pbc zhF$gehRY6$X>K`(4Wt98gTNBb2D0@;;J^G04){)gJvm))gt9ttqD2V%qDHBC8^S zVmdcWx&2g(qnt(HJ01q)M!~%Zy9?{l_OAraJ%39H*f5NUAtq?VL@4@jK8k56MjRdb z;l>5ME!UNS(e8X2FA{u5ADZR{79q!zG;OG)ySLGhV%lv{D^@n6n07awuxBC;DCgJ7 zvUo2eOigIM-=>0M+O0YVADLp>{iIdi2NBHK zMqsC(QRLC6Gw|UCK#FN;01>8v>3SMCCzmzimkZiAaUm;$NrQ+K)3Og5HPReGviU2; zw0a#2ii=s;=U&6m<$^KH;ALc>Wlm3}x5Afnx_w5sLW*gj+aNsYHi#XdTt`Fwi;MQq zo*Y7AqI5)Z0as^1pccBRKLSB9t<0)I@Ai-b#k6`IJ$(+`Tj+!7yJN%>QcNo~U5*X# zsRcy`k>w33riDgyUUMVNb@*g(fAdmMOj}ZGXr+xdJOYYo>s_i^?2gObjr$Nd*1p}K ztQc&$%K`RGpnIg4wz`F}%hBYBWeED(*9p>XCt8w_Vp`~_BA87KAk9ByM7&CEDOuH< z#Rt>1usQBtP)rN8!$B}_du*dpDARtp8q5?F(?W~lTq>M-WQE;-dV#m@4XZ=BTe$H8 zKMbatc-H|zO+hi8z=|c5pzv%^LI8ARLsl1>oI}$0zX?{~2PaWXm$%OVvoB5ecd(1S zVD_w;TA-WGREKkEH5w?(83)@-hrFXUmI$*a%g8OII8KfFxYHS3H#+goN6~WTi~zIe zSK6(k%hc-*H#$xs#WZU+amHbqx?bHM-Wn*f0=X_ntk;I2=GTk{u=6w@S=f%beKtZ2tOSkR7Jnw_?3aRR74wbG-QuIjAH0H{4^ z8gc};L@_OdYN);Fb)}dV@3e~gu-ajDbFhlPuGnUh8iqV>O(N9ZH|Va72oKu^V0)4n zHej_BX&d(5MKN8Q&f8#4*a+KJ1X%t3DPVhQ#Rl6~5o`?CNFvyt+TcJh!(Zq@8oZ`g zr-JRP)aV&MK(Kv%R59=LHv-!)x(9&mshyP5%A=^e8|;8!dwPM+FN=bKVmjRac=P7f zdqn0W(qKm(U9eJ>6zR@`jcP`yCP#_6P^Ie50ui39RHfvIy{?GCx+_(w77ciSAA66L zs#LoJO=YF36)U&%*FK7Azphs5rjrfhq@cg`6VqV{9wykL%j7q%RHYOYm8#UU!7%bX z$(5@7?^_^o0`GESqIR%(jRU`4aWn{}LQflu0qkBCZD zN@u6jL!~O+KpX5h#*KHB9gq~$T2Y^mL#k|L2nQi6K`||rqNuY>mce{A0)h+XaQ#U`LimDzrXAf&BP!N(1%R4weRCB<|{a5W5P zqvS6&#k71{atYLdDY(B&`-@eoqzIKXV~T0{D^jFZsWKl2is|sh)?C<=>&tsw?(|}$ zeHuxNep*zil0t)P<(*N-w3ImOJYCJ435sc{NExNI)Y*coUBx24T-B)~yt*3SdXT>i z_QF6Vo|{z<%D(?XUZ|O^*?AC=Vwx04X_WHyiAkx0fWF^y{atN;qh=4O-E&e*qlkuL z8XsB|)AYQdnC2<&``cF^efIXv>$h(nrK#!W`oZ?ihhM$E423UKz4Y)O+wA|xtk|o! zFCQf{gv!EK8&FJ>3L+vROn<^fmAEDV#WaZ`Cz5mR(S_TQVp__r{ts(VW?zyN)AF_P z;^VDrzX8QGwa?SwS!sNc-dGF9(*BHDlD)4K)B5G3DW<9YB_;===uJH84UQN-jbS%X*H7t^u zko8ZypxD#uex1%C#WXd_fqBTwrUvPJrJYk{FvrAlFn$}50FmfC72gKMGzknjuyasM zi`Ea~dgnRd1JumaPyq2%Jd|tqVDV6IKrvk#&cH6cDW`5Da43IVQIpZ#AK*l8 z`w?P;wI7y>VtVLa5eABB>IVmDxwt^>VAF@BMg4*XnUK31QcP2mNGjcr zs?yV7HJB4Arl|#+V%pHtAt!9mzkl=QN7t9%yciKu4^Ef2NHI-aEb$MEVp^D}-ow#v zjstV!ZDkFj-VOYudWV{zXbm_neMR9>B}vvAEu2NlNp}N^Y3%o~P{=NdX=**83TsK1 z7UJYDs_`@9;8_8udR`*I1M3x=Ow5R5_czV4(-hOnu+6lRR4dcU#e(=hXvD{+G{rQD zPhQo?j(>&2_SkLZX^1ZYl7Jz_^yy^7NHJX{hR*~krs+X4L%oSre{LY4dDusxOE>Q@ zQcQy~nqnFr0mXFHbK(Rr5bQUh+Pq%FT8e3qdn&~=HDz)*m+*P#6hFM%AXf4XDW#>FyB~DW?6p{%{Ayw7>P6R6u|7 z2_+2j4kBr#Mx400Y(CE77dCKz`mKZ=Zaz!3!2RjFmRSwp{cNw|vvlqN@GlBa_?5V*0+(^G3hFZ}^ zanwyvOv~Bzz)A#uySWMy{0FGLqI8}E_p|lB@$025pKbtmBe`V8AauK*MqP>R(5MGS z37smS&o)DTfmEXNd9MQZ$+<>-Mv7_K4HGqKXAe)Km^Q`MGl52D@L|OO@23t6#q0Mj zpgq&*_7;GXP}?EJU}?090t&n@k}UnLc`w~rY`7uCv}u}fy5~~;9f#_I_t8KxMV0n< zWiO!+eS`W^G;5pS{Um~5HVwtJ*`el$tqpw=c;706WrO#V=A0Mmn3ljLou{kdeL*p8 z8t0Kh;2n7eHNpGBMF51?g7=HP4Dh~eWb9{?b(>D;KrtQcRBl)_)g{`?2vU{Vek4od zS)(mCWD*{iu;;V}PGk{2o?<%HEC@}{_PQ?hrZ@G}-gdaUH06e(`P5!kmWv8MKzv3b zWI2*zy4cEIq{sU!UHd9_M(s|U&af-ZD+-0?#`2M3n))%=e>z6nzA?I9RJEynr75Oi zal9Dz(YV{`F`R3wX*grU^rXj6*S?CZ)a|a4S5TMD?Ss`1JMd7ao44UVI8SpvH{D zFE9<4WQJ^{;v3Go0RonFtD5-MLtXc(PccoV3d*c5e!A|}oMIZj^PL6G!uA*NylkGZ z=~Wcd)GbXh4UQ2uxJ`ksYUYz`o*~6_wQ*2XQcNE=aRNyQcQzZ#<91a?DWy;=eM7G_@zu9;k1z*iLm&mw|^$!zw7`q#pM<| z4R@W!MJ*_%g*jCe%o=2%m=>?1Pv^9j>0qNk%YKS!)MP`7X?&m~5oYgr$LyWjhqb!} z#Wd(5(m};#kIG{q#dIsP=4qh+4q4GR4#FY~XfK zOoP6h|FG;x87k|MKHp8XM2cyUU&doCH?`nPS6e{tLXNF5H6*40-ON7=2Er@?|6M6w z$4h31CmXc%=?OCCY@4tl9N%!+K{3rO=kNi94r8a1#Gy|GFiSAHi9|m-Ff5cKKrHulSp+k2X zfPNs%`46&kBg>fQLdq$ zj#SFbhwRpLA?*0=<>AWEEiq7&CGlQ7kauwU3u75XGE84kOuOw8)|@<_A7j!=G40lX z0+760U+BKe$bw?pt5u$|KV0^NV9quI>-ya541Bl&kYZXIV0SQ*{MQIZE@b>td1eNPOub`L~cAz774b!QUMLaA5#kBSA80tHZ zH;J-h@o=KC;L;>V#c`2h+Ugc!?wRmd{E(uTP#dGKeVrg>*lA!MT9S}rT8LK>%q9ka zUWHewEhVdZ1BLG9-DFs=>Lu;R*Ria=_*1I1FDRyk+TkFWw>`E|DU@kHTn%OlifN$* zhnl2w9SOBZifLPR{puPtO&YvlDlBqg3>-ycRdjr^=+iist#Ak@Fs5Drh?rtJ{dM9( zP*}z#Ucl@>m{LrOQ_pCA9YTkToDm>@Lu7M#L9F7XL+y;M>TXu)Q2Lx8*N54cA2iNrSlmFtFAe(+x}^OBN=7!%3ifIt3DW++4s6c!8?YVK+j0`5347As4R}DOacGYQoixWWYsg)kZbXCU{ zMz6jQ>U95F3H*SjAxF?4*vmk>2eeyp1fljqsD|2$URR1~@lLB~HS_6Ed!U#msjszqe5C&V6pCqT#Rl6~5!Ga#0YtDp zwZVa2t$!N4rdO&!yKkHTY+t2D&-g(Ii|TnIhDtdjOFt)y>9PU#eYgP^q5G6_T6q-p zqj+w9zY$F57gslVD8hQcr=bsSpJG~y9Ho;|exl4(qnZ(_$x*T^B)axfOe;BJuPb7( zZi;EuqM5DrV(*b+TD3dSROZ4~tlVbg_EAjxbzR7YeWxykRCpo%*VNr&72=qi3Y249 zrf^&eO{p(%_3|J$`Aieg>|If*O0_*0MxH0RQkDN*%dE9hmA@TIiLLmM%OrK?`tL5c z_m>AYPpF*D_V*`F^_*2*c+Fj@O0_v#H^@Q$9n|bpEr_s!ILY}8Z5-)VMzcv1SeY^E z#eagLJ*pQv?7*dL)bDDgD)pfMopi43yREZ}cv@*EDpjdx`drxSI)4(w@>;5Kr+;Ck zD%pZ@pk7~|?O?@e6w^vg@fqmo+G#A&3-)d!9fD$7>FjiRpqSPTtmVo4-}R1|hoqR+ zimE_d$H$*6nR*aHtHinj47t& zuSk(vrOJG~0{*x7q^-2s-?`Wr#V>^h*UCGij%g`z)_F=N&sla4zP&%F#n7Z8Wt7%# z0%&&{FilB{>5lN~YJGcQpb}3Nss}r=XJDtlf?sY2)p9sMLoZS;IUt|yU$=cfTycTx3l69kp_zlg9r zq?jgAl482uo2CWr>6@RveikVH`g>ELn1+Tm#WXxRmSUP37RgLV0Ow8kD#bK4%7J-% zj4^|muYWHIEX^b^QpqRGg_9&+5w`s@`&X&(%$m^Qvqbr)%l9GQDU;~UOAN=b7FBH>g zqIfbnnqpeDFQyxD`s`gBwHStxBU=eLX2L;=X(^ygIXaG)e5@F-Io+41ieg$e{odll z1JumaPyq2%Jd|ZP`K5PEjug|iVMQ@5Rd1Hvq)FKzU5&~f-3{9y9U>99uKoQ0ifK}p zgR}rc%9Fv{Cruxc7S2BW-HQeU!5z#!PxVVf+gN!f5&F({T?qjI*1>Lm(W=Lr`q z@DZ00yO7aqq?jfV35wQ$1S#DqSla9<|6n7p(=F-_8wYYYp8?4p>a))T65RMO?n z9aTJ|3yu95)R@E8?Rkj=@3x*bk{eJ=!`NwxX=T`ET1l!^_ZXi@K#x#gM$eP6DNQjA znhBI@aj26irb)mpQcPEg;WI&sX?l>%(Co@g1*_ei;g3m$`7g{d(G=4{PrdX6J@T!=0)8midoWhY}np)4{t#H~C0j`dc&4HK$Utwl&eiSJTHQ}Nj#!)53v>i!_C(|yC z^x(MoPApWXBLcOPHpR5EfLb z?tYAvW`oLI)(n}KZ`hi^{dBSSY-#F$bFsBZ>LhZCq%M=J3uu;`oB{WjGVCF&{_O_r zHB}u;SgmN@g5hvvgBP)sW$2*ff37`%SC7r38I*;E6#-v#b(f?`_rVvb?X@(keq zY)pq2w^xSBE+*g`zyRdcVN{;{rl4jrwM)`2FBBBha%2X;{Q+=#TlmCnRKHdDN>EHI zHN|Iel25nb`}_JLzzPW^QcNqIolb87_mfK)W3yy;+o6ZU8Z6tp$PyVPIzFBuzZS)` zvdA9q9Tz+>f&0mNbSRLhNti%KD8V6IJ?u5(xvT|rqu6>T=tVt0G{F1V0^uha1%5L1wa2Doh+yV_PXM^{p;A)(XLv_LXvK=zfAd!%+l)=tK7|{mr zClOQdJ}S~2v2|Io`DjUiey`LOe?Ed@T7F}k7wVX{3*JvXS}%KLf%nlkw?#26txzHY z0K#j*`$^4UF9W=9^?x2#z(?Qj8!=foEq9LWql}@jH6$t>F`(R}bn3gw+EW*cA zOs8TAp=q(mpRg#$uPMxJp}NVVSC3x?fZ6q(d9kF}HGNIBt$h{Er^t0=g`V&O#AhTz z7Q^B`eGXp1b?vLz8MQlYI^$DxxTz>hSX=wbBs^YlM*rS&l(*m7+E6!Qxx(mZdbCAmX|~!16w{<#$VMu@;j9}VU|BbA#~HEKb+7sq(^VN? z)2vBT_i9ct-N6xs+2cz;e*EI?v+L{ceeLem^__=X+!&{SF2vS2Zhrxg!R84mEk!X+ z-O?1(;22?t-W2FMa=>3<#y4r268iojpF}Kl^-o>(Dpk~~C@(mhbtB?N8Jx&N-IRw) zP3I_~JsOB*NL>$GvXiS`J$O$5#UV{vM6hqV#?j~&2ZaGZQHQSSmBNg>1}s2hb>l&5 zaA2eARj4-GRJ|&@irQD7SY7ps3a;f*G&NFHugVItI!yq@^aquq`D~dpq?iVIqb!Ly zsKa+MI*DHmi4RfmEV&jg0SJm|d{>+$0ygyNXD=VU`t0+Uk6(yNS0lzuY|i+;{n;|4 zn8rp2I?7bp30gK((p~fyQcOFww6ZxfifL!l$+OCry5KUw2~S9m35IGxG3`{Fr$MHe zcD`ttvJ#v)8=I| z!#`&@u9?R=Dp`XR)6jpCS@Se7y5%T?6w~dir)ICjRYaa7OIY8Zy3+hK1GJ^2m~Oii zPC!3L3VZ{S39K9?t(bGiYJtom(om!9P~H(#7y0L+XcLQ8=_-IB@=uE9kQUOAXYUD_z zLIiI?rAJLx$`qIp6w_J5upu1ZaM?jI%`NBf0fY`?XOl#{W5^cZA>y%g9qWx=or7XJ z_bRlkD5kBEMw)=wy`;}-uYh8jEgIs3M^j8g+j+bodPd_FrB+sCHiU0dhqL>DCR@-k3 z76xnVeg4~UKrzkzkHN<8hAB`PjHKeV($ZNTTwm9aV!GNzQ%v&{?R80!Rgpk3og1dy zz6dnBgM0I}YD0=?A#oHG5TVBY9o8|$w3IfAFUA5R8oa+D#k6c{6wNr2Vp>Y=L?s2q zw0vWrrwlp5c=wYYBSJ_i*U&WbO$&-?`Nlv~D^}JCI|8OUevyoQ#gm?hUeHEZbbm67 z-^-+cW*Pnk3t{9^P)xh+64so&I5New`&G-Nm15f6j1E99bl+uUK{4&sDo@!T>LYA| zQjKPuV9quIJAX?AA`dqJQcOz&h+yOn|242l3);J)pZQA>6w|T~I(X9@L9+QP#k6|8 z`&q~EsR|R;WpbgLb|}Z^yGSvu^j1-wPPcby?9&Y?riE^U@TA*pb_~)&+KYLcBq6M zHX}@j(Am7ompD62mZQY=5PTnV(cuGc&WI?rhF02W15!*28&bUCw7BIxSyl|TLM5Ex zk6h|q@i20U6w_9>Fm?$PU!WjGFQFh9JXG3`B9^pED;^@T(i>7t3q4f?b2z?umD*CW z&fkNZ0VxKSKFxZezK6RP6w^ZOa1hMf9^0rC%CsLkgPHaA!uHc`JUnaR%moL#+K^&e zSfIEDAnoDC3k**%6&AUGC)|V?9iJ?$G>*mJ0%VFY^$Dz4LJ109`L4N5WldaB1Q?l+ zN8xbohf|8_5k9rNeFm6)X~gYD(8cMf^}U8jKA7sZ4#!VckL zY>|C#>&SR-mNWKY_N5z*Ga42j?gL$xUf+8f&e+`6)L+&SF#BQ`gxS;IY$SWxB)XB- zU4UHxfbhN#L~4p@S{*9T9)5dn+%-q*NhSmB_1aYf&!AnM4qR*F22guyrAIMc)mfDR z6w{!ogglee0=yj!-7Vn&Q$bn*-qyp6bEQ1bUdy*J7V26Y4Ytt%WBWzn? z>Gk&kZ11|eQWo&-QAMRwD>m4^il{#9k%VA-YJ&s441b{qY4Dm}oeH+EQsbue2O%t~ z=ZP39<(wG({A7x0YA5Bi@+j)=2C+ynO)u!X!oJA}D5gKWeTr!*auk&od9YC#5!K`< z*%eM)`zfZC9I@AxsTFUfD%GNqJMv@iu~L<4cc7`vg{@e*tyHy-V%o2(mAdI4of7dc=tyJZ2hf-oIJ~WxI$lAOB zA;q*?uRNiCt3(^z@1=WHoK;QPnifOI6$|Cf-zONrHjYXv@sh)A5E=LK! zIqhJ@X%y2+P4O8teykH;%6$jHn8fQEmI+bSVxi}PVp{3!bb6>%r5kATWNlzhT&|K{H3l^C7+gD0(GD| zzl3TJESEPRqDqw%p^|3fajsRWWFxF+)o`FwO1JExn3h6=Yvr9$$F!6<>payb&#Arv zZOlaAQjya8wbYq*r$KI3QcQP*S6Aa(5Av76UKprM3<#e*O8=#LP)AYv*<|_6XP&|6_%zS8rcF zO1;0n{G}@%uI)L-x6;UdjOFW$emPT2hf_WiMzfoRJBzwt z(4X3V@!{8rp0rYvZa^_j?I(W>p-G~c?k~kxqaavhlhodd6ic#`di_7zCyg;E6DnNy z(<6`xeBZA?6kF+PbvYN0#sC=?ka$9maWKqnQB1d@(K{LKp>5D?IM}&KcegLbfK}_t zT@Pi_#v|uUAVF6hRa=K!^iaUu*d7WL)3(xQ_0Zd+m~K4ufyYCEV!CZ0&!N0xj6PYx z=!~wqA;mO_2(*-+e0u%PUk?9S`D+^SKr!7sI~&C`NupDQVBpaoIe*HdKE%(~q}JKP zH;ok2r0DS!)6lS{n1)BkQcP3BBAE&Jg|rKbJ?-Hg_!AEBK*$%S_c$;QNyGGj&R2T3 zr81aqPA4P*qWBY%j^M5GYJeiuyasMi`E6_>wY%Rp7O^q zz9PjmYG3$XxjFzo)D+X=nWC5$&lZ_p0WeO@3@E1iPScBlMSqF^NM`}A=f2Rov9*h9 z!7b-Ab4(pT7BND9C>K%{}n=!X7FprY*TWifQ_7`i>CJmd|0x>#8ZH zEh#O<^x#(yLOtE>$+O>m{_4@o$2XsbgYm`vU);X(?8S@cuWz2;lt12ye|+`qCyyR~ zQU7>(|Et^GXRn@?A6?x4v&|9bE8CxV`1A4l;N5u6DKq9(^pf9t_4L^n$>e`}``XR# zeg6E_r=s~g$k2=?iYJq!DW+BXV!9FT(W_Hx%}Ij}95dk{#kA}}nR0X-FZoz8U~{@J zPZh&h!)?$XJ%5@9aF9F^)XdaS0P$2jlw~+EiS(9Vq?oP^D=Js1Is%9C#}zfH zUb)zh5F0$AA3!lp>T-})Z!3c3nm!~goP9uwX_AH1&DVbt|6k)CV!=R&RI+8zV{|6hcu<_fMB4E*JMp(sTRE=sSX9T1&1`IlX<%ChCSi zNatc@MI1e$3PqmaKWt*635wQ$27N0lU5_hll~70x7!;w zq?oP}<0lRj)3v+Jn49VyJ?20$O{(-Mra@Od?gvmzQ|meO5l(v|z@_7-q~svHbvBA= zHq+x*H?KdtdG_e`D5hJ{7)RB3uwuzUpr0tF`HLNeQ8DuoH!vLW??#tygJPOYQnq8a zL@}+U)~%S1-f$!~+-&Ddt@?FJl*%lW2N3{QTrJ>!x^;iHG&NF8Q;)obg~}u=4$b|2 z@R%A{$sQ#)Bf>xY8!JP7yTSbCqAGoSsHm6^n)eGsx!`|UYzN)HnZW(2rV_Y+3%W)g z>g^w1ZY{!ms_PGTP)w^KAB@?JpJG}y8s|70hVQxuu;D!b8@N9;4d(|AGOGdHpX#7% zS*`f=WC}|Fx=m0_t1;*gY!A3U?N2<0?)>)a&h~gCn85wq8G%^d3*665H4J(KzGw_m zIN7Xi;64qBDzdM4D`n|0fcvvCHE{I%hH5{Sf3t!6r1=!oOrzuaUUqfO2JR=ZrvmqL zBmH_9GTb$;8z3mA_e>VC6(Ut#cFJ?yvPf`%SrP9HdGmt8c1V5SkWyU40qv#5LX3HNCND%MC^I zsbyVO=m|eSd`2Q>H!&MO6bi zq3*ccaf%?y$gi#Kq^l#^^;!~Z%NZxNuLQ+3ePxElhr3Fb_V(FnWGKTKC$+CaXNK;z z*S(rkOv876)dLj;C+zc03yNv*tB}%C6w~xjQ%s9@i~;BKfTwIyjQD)| z?Ahx_PoKZMxxT!25yO%NlC=TFbhU9%G~_6se1l7J9yjE=>eYEDrl~8u#R7N?e@LNV z5+u9RpTqA@u6os@n64^S5B3aSQ}rq_I%j~5)<0n}nqFnhxa*5#)sSMEG>_mAv+9+i zn5Lf}Q}xQGm`06MxhZN@Jxfx6T%RO2-g8;EY(o6l(dnbd;&G6SUk%F^$6|PGtdQ3uN63 zNwNjS*+FfUDgE+}sX+PUSh8S{e+&Pw9eW_z0%p$a})Au!55@}rcJS@|n{}qNKqlmB} ztT$ZDlbFiz^iE=buzg)_@OZxtp+lB9^hvnm;p*(x^y(ZG)7h6=ifPNokR~AZ`BaMO zEF)MnB*2fRn1;4V(`+&AbxDy`kw7t>8zz{@N}y3MGXs#)m7tgw5=T+H6c8#W zqY)*cY;hE93`(z{tF8pav=lQ4l3}=UL2q-J6L)mG2!BB_?bcI<98c0TvPVnEMQ=g= z2bUZ3A-grTVr8A8`hcm9UnIl0@T4cA7qov_=>F~~Z*#XLRG!#-y3j@j!<-q{Gg>GuBl%SZF8v8sQD5llx z=;?~IazSC+od=OgiHwlBE_`Oh{7Csl`p%=0m6J?UwbJirY)&8 zw4zQHX^-E=RS>RB`;vLAi&s?{QxVn7U@KJOK4${mBgM335{zArCPyqo(AU0B>7w(a zKqf6oNHHz+R1wT327qIPSE(%}M|#}Nn?Vuh>@iDoHwDGCP&*t1^R~w}Dupubht6Oo z-0}vBX`w}NE)~w4ge-NP=iylrDW+}N^{Z>pG->dHsV3f4aQ616HCvVQ$cAtNW9k!f zE#j8G8$>HS8{Eb>Txc=qxCvzQw@#v%E^nU!W?z~XJJ^F)@ex|M$Zs~W0@+-CrB`kS zXqO+?c%}3083v4c%#1Xg}2fqu?jsOte_kl=FF-@yO1=_=JTlI!WYP6RoaQOQ63lG0i zc}PNq(}26?0!k#4f%bass)1+F&bJb>Qb;jPt@J3St2(PP0BR4Kh8#io{@#A_=J{u@ z9zB2c^!X>xZjKx1aMP3%1VX5W+KXOSifQpqt0)`L$AvtE+5^QjNlkd|47K+SI`4`m zQ4rb(0oa}-h7DLPMJiBqov5)-kE3iH4v-;t@t!4M9nRrUoVEg*0V&3U*Cxh*&onWxCSJvH48a0CH z{IckmP^s!$w@)!GMULXjA`b>%%c%PIxKfppJ<6EHN>zczOjN2;uZz8|Os!xhY*ed8 zwP<|qv8*~Sy8TobR;p6%4m6dyu+wziM=|Z!bs-z}of6{px1QV$i$;~nYt5&2C&?1f z>|If*%C9`nlU%9F|E^`$TB*w4j>hD#IMZZBCEFmyv|F#dEb_G!_j{6Jdf~O07UL=T zcq3q?Dy5YOE38OvPJM^+NgL-tQK?GxLWdo=l#TjbtyHBR^ryQaA+2hq17>!4s&Nct zmk^bzl+3UNe*Ex)KjuL)nvm+U&QA{f} z#b=#DYY+)}H=Hk+Vp=M-nk-ug++PZcX;W;C+v{zAIuX<=Rp#52FXNGQ zCxqyj3KY|3`yqm`XD8mHAWD_K;?5eYRCNSb!*DiA{!&v+%cmtNQ>s+0n~3%u{~D0w zQiMvHag{3hD^jFZsWKl2@c%67>13AXi_QF7AqSVkN$m36Ovizpc@m-{tCIt?sn5K5m zNimHg8j5LrXi-elb8TJr>N9aoBgHhS@bN8BOp_>c3F_0?L>ilj>itN?2S&k>cea0U zQ7;2Yxz+z+4a)3GuU|ZWQ!j|f*Tx?2EoZ;|c+)c{-+?+SjW5z0Q^!~^miA|un(Te0 znAR^JLXQd*)6{vGa?qD|FT;Nm`O@Xx zk79-aa;Ry^rBj7q;L#sBf6A4Er_uBM_7UBOzniM7ydMZ8@7+O)X%ZC)-|7v> zUJ~=VRBQYB@BQ4}tLr-tFFwMQ#?|&Y!Ud8AV#AtZTF3-)!K=t{`u|e*KEIwN*L_&O z_l8vK%B09A(Go|{$dG0EsSTLyp5c({4Tl6b0z$#y3@jnG)9#*bSe=>f8Bcd}NI@|M zfdL5t1P2fdM9Cs@Y-eL2LA+2_Sr}dl`U|qmA{#FQ!K)zkPUOj*R;mg1d8!k-u6bXa%y%#Uv3v{Mu+q;wwB^9OJ;s=qtx8lu?vX+gAQGLY;+vqDCV?Rbb{!PcqIJRfx}TL4D5gd8 z$1uJk#WXfw_+Gg>06x?d)8d(;m=@3WQ%qAcf-y7`6PF!kfBo*ocfxrj{U^V00A=@u z){U)=Q#YF)U}goy^gyg*x6{qyr$dBBp}qnM`Ortb*hY-wgNMyaBCEh#O< z^x#+b!lY^PJKrqzbXcz{<21$VE|8%aO%zWiM^j9z_79qF{)@&R(in#h95dk{#kA}} znR0X-ugFgZY)<#(siK&cO%uiRAmV;o6g&N`X2lI4o{ER+tf_(1oNB#p-@To759goV zmY>@*MDyiurIgLp$42T{v+O2KMwnjUL~i>LVuQ6GQ+<2elMsIb2vzC_2Wj<#pl{QM zq=mB&e*ic1XjG9@x<@fhKNV9^tpz|&gC1oAb1{u*-xd_p)I#P@ru`pZ-7xfoUEtR2 z0%yVWg{7TQN4$w-yDZO#@kAyDF%vZ5@CbmlDmdS zl_XhfbRxwxHJAE5EEKYfVwze{sKR=nfgD5^cV%L>KKr(yn8wyK;8f2`BzU*=V93h1 zceVk=G-(jWPE$-P!#2}OQjHs(j3Vd}GCoZxInWtvifPacN3iHc&H9z=`YYxZuYg50BHc!!Z<8kEr#)9~nCGrdQO>GAwwjtEdpQ}ZpwG{}8( zj|?Cdr>0B}=W@6?{h|X>Ojn8V69lZ|ZpC!;h9j{^F-=zD*T?%Y z4>Vv47rFFact`yzomLsdPcAm3n5G^%%E`RItho!km5ZH>hA61LR>3NS)!%MF;8{)| zA1WxOdk4~$9yw}T35w|jBfot7_{k5;Qg)h7kv$rZ)ZNXlpqTdS`hy)5)Be_zyPW{s zC+7)a4rk?y@)^Md?&r=3#IhfZuL${EY8YUAABa3_Y6JIaNK`>`y;~_uhXLH5jp@E| zu`36-&7{E7HgKObpMsk6@Amb>rLhg%Phw96?&n7O^)U1mwLwUD6BN^OE|8T7{2!pB zioW_%MhY4qh@hBOI?sXo*?O=4n!Ot_#%2`5waQZMajFigUrpY|Rmct44lg7;C8=7>$bC?~wTbr1(ST81c(Krtj0`Ev*stMkg!mF#b;QeB+nV%Inp8NtQD=!Ua z35x~ZJ}z<EEc^?j--ZYhNM7Gz~@+ zsVSz@@_=j7K)KVaAF)X{pqM7@LN-$I4QJf|0n55^JH8q_P2HRfev6HK&+9 zJ@41ly(&V@x>u#ws_s>J=X&d20mXE+aV#_RE>cV%H{`nNm7)S1`XgYQ;T37(;4Y0L39qT2xvT&~_^XFmq5C02Hb5gvCIF zM%AYZ_3asT)vLrK9sT0_A$qDi6(g$J#8malC5@E}mw0ra!k9#{-wF3?^`js*45AjS zk1s9_kYf59mGU`dG0R@0e>nDJ57CD&Hl&yadG2~wBSuVYZQ(A;mNb5od`2 zp#)-NtaRnpxt#OfB&p?G;+&Aiyo+}3juJEB@MXKxsE%#AOJ1uEtb2?lvZ><_2 zCS>glncEttrN<=2w9_Iy4Kl^F^F_;)mEgqLh|Y?+Ej5{sQdmk-O#3v-bL73nv5!;t zo2&1{5?06dx2^z4F^wG;N3rJA-YrOVC8rIS@r@9_ySsv78uix^16a)JELAC{#j6;r z5%cRX9N-?I{duq}K`||KRxt&$yFBV{^Ue+y^!0=a!@p`cwQ=k%i~AsEapl#{jzn1e z(}H3e%q9a4IuxaRd8o2cTifXmZ5U$vKgD$bcGo8GU=1=*Ok+pIo?%`I-mSas%Og_> zifN&u!-a?Oh01d4_8_E~23@W-kA)P|t;`xchtVxZ8KjtQU)`OWq0&=8G2J$2jGml6x z5M~kh@BI4MktSQ6^o?C18FSV!YzPmy;d1NSAt}fd)7)|nA3*3Zb}C66`s8B9%jng0 zP)z4uwG`9VNFz-^>~p4=b`24KkI0J577f$j(G=6rb{;Q?u+Vr#sg+`y4Z*6;wrS*i zjf?P{0Ez3?@3k?51L3sgvZ`&&;mxsK6w}q1bg{}Xrl6S4F9buZ8WSj{a~l@LG^pbn zBi5odSkQ6oeY+^8x&I~Vrwm3?F$NhuBvDMeM!xn4D5k4jG{rPO(O#Dn;l_N{3>VLu zbvYprjtVsDq)Vqr`r2dfONt*7Xn08y#ij{T3j)1AobN1W}De$;Eba-_cDqU@M;L>kX zK{4&NOIUOA;>Z-!?pH07R*GqNGZcWF%z0!Z-qSDG<^Mg~zP{?&ISBdI>T9W(eiOH! z`cKR*)EU^{wb^8yjV36j<*q)`-bDA&LXifP#g9gu8}AldwtVp_f4 zT|S0E$py>Up&Vbgkz!iut)e=eZeOEYA;q-NZ4jPxo6U|vuA`xlVp=MBnD4iN##7h? z1;w<~*yrg$F|A%lPtT#sh2gNhco2{rLih#6v{KXM*pG%}=(5EzB&;kcNHHzmr#OY& zO&%4d3mH;Zihg!B}oJ3fvTiA5!$vr9F4|j@wSOtRlsg7q#k5d690c>W$2Ka3GVO<}!OShxkQ@)sS~zpT!7gI0hOvX)s}2S?USN2Fsj$ce zJShWLaQ0<(QQkFK{cooeLAVdZnEHfVE1?95zMr_zV$e~t`o2A-m==4v;c_s-To*Yb zK>miv=JJAA#r?V%dtH}$%`R8xHYLoyXsK6jMy8h^)QPuWf|>{&Cl zKsTKk0-8%J&P6#S^>~e=R|nh6Q~l4s>$IFvX1%Z589m!h0kdcG_3nI>A2iNrSbTUm zayVlLNk8-o!x{T9`_dVYGY+%gTU|N3vuH_RR>ra`2pn5NaC0`1|q*NwYo5G~1M zpuJwZYTy~PW8=Nlkd|47IGv>AH_%+OMmXy6I%YI4S6FJy)s{``^j; zln`NW*cq@DO9q)-+)7lc@+;5tBv-2PziXMbR;u#1qcQm_CU9ALLyBp)UU^yM^p^WQ zNin_fT1<-_-uJp(VWldil?W>s!Gaa7nwUWsR;p4D z`qN$K&c93L;n{J)vZ7Lz)?5WCdR=F4INs4jr7EeOaiCsbIP74>X%y2+P4OA{N5&DF zP_8}*+$1tsRTD#0s!}>TogOHrbpvglEX)AivH>e*Sq{KSifOH=&&MAvxb`p-0yMWk zF)fv%__sS*wh*|N6w{{I8n@Tm{)BR?RjSOlDPL9&Q7U9VOPp!889fwm)Q^&58Vj4v>6w~<7qL`M3=OL<_p6@l$zDd4Uwuq{30aV7*?1n3Mjn%q7TIkKG&1kQCF@ zMUq?nAJ(8u*CZ*XbCUa3c*p_taMl4r`f*z1ry)gXZ{NnpO0%n}?dfP_dKA+np^oy+QB1d@Jst`a(`^HJ4jtJ6shT?; ziWJi%!lamP!~?~2^9;aA$5Kp_Bsx_H1|I#9^B`A>=|)ecm`)VY(L$&2O(VrLiHd}8 z^#C?Gz^Ztt{nX4rFlzsifJvmo-XzFQBzFoH!1uvrUC^* z;4)%o@))`S#Wabq!Ewne!=p-)tTn0<#!3M}?e_O8Jt;M(DW-d0TZ^u2sHeBTx9RC2 zK|NabNhifNJ&o6;21 zpczn1!(UIOn5L#o2Imq;J-z7ozdEb+udBp>A$|BG)1p8zU4L#Mpq=55vmyAoj>(Tq zr_>bFq){5KW_phl(>uLa6Q}fDW*YJz2!K7Vwzgdp^tFd69KM{l7sNpy%N!C!dthNZTQYG(l05d z`!#ubNso9~J`exmQSu`E69?y5s7^-&IJ)=XO^l;zJXo>hAkcp}#dPuWh|Ye%6x03a zQj99a2-7>d--9FcYe+Fo0?T$xQA{71VL*y$EwygN24ht(wd&W$iBbPm|1&``y!F_POD>;z+T%4DE_RV4cwn9&-sBCxIcZ@ zGOGdHpSI(xWkq)4t>40DU<3DOdi8+&v-di{{rPL6p4CG4W*5$~;`#0K&d4EEqPb-zt11D5j+Y9axFLZ)OMTf3t!6WLlroTfqI^*c{~S zyNVV35ma_kqZ6VN4!N1 zc~({xuMt@wQ@I|;Z5Yc?oeoMlw&puu?5!Plbq4Nw;U_h6k@wEifM92*H-h-&M@bh zJgZ@P(&P82aYn=9r#j=V?Ici47bDD^ad?@t&b1y-eS{R#B>%c=Um?Xbh}0C*X?egk zDUGzP9Dbb|uD@Ca2`HvXyO8Bme8X8cK)|wYRg=kyxl{M5kS$++KG(m(t6Mlo67=tdbSrSreTo7ruVftgsM9wkR)mPM4HYwa+`{2owj~_gK`s~H!`PEqr zVZQhDaY%**NOTF)Z9p+y2RtY$DW;Dba$WUGQA~^ARxiTdM$Kbstfo9vYTBxLRV<5{ z_vBs~B2{eTGV=x$(_}ya6o)iv5y8gy2>^;|62L)WK!=yl1BtUypDNV%Y3iz1HpO&R zsPSp4dd0@{i3N&jYCDWcbjR-?#dH;m6w~xqI=;B%u~m>_`t1(I^pU3)q?iVI?zGv6 zauM5`<;*lC%^=_*DW*|~*uDh_?rNFtf=_4{^S9XTX>!;fvo^SUS)#hoCDW;wMwM>xFn6^f#Wd<8;sVBL->rtfa+RX=ovbLN|9=2F zUesSl3}Ef9vs9&+7O!HgM$E56>RN2#gvwTlNVHcdNKj0pKz)oeyX$iaUZmZ<-H>7$ zv@(vpWz+9;A3NA!u}F`C4OfC<8Wj{?E;hr1piUYg9sP25sQDgr1nf#sOry3Qp9YF) z@hbZCyb`>-H_H*RD?u?WR8(Ox%Z1@M>Q-?yl1MQPx=$GUlvd*j0~jxZL_S z!jrpjLZq1HmUGc;2pz^wC5f1fYBQmbc4RX9Up2JUf?`^V8H^wYACEC< zrI>bW;0r)fe|cu~`_zUM(_XFel>OH7j1$b+Mqpi^dvTw$758yDiJ+L42Iz-rTrFE@ zCI7&*m?aC3p9fx0Ov^s#;7xM`$>y&V)9Q5$;K-olsId4#H|!lT?rCw$E2NmVn%9xbL3DEAN~@%pw&hl%FyXQIp{AG?4@=mI>izS4=7-+X zl7tk~LV}85HZg#-Adwn)l{%jP8o2!|Ea*hpb2kOWv`{-71oO7XHY$ZO?T71Fd!U#W zT9n~Y;mjjJD@ZYI%dQRvH(p?Pf~l~`1w2vev)Pq*O;-Qg4aIaqt`z_gQ%q+(8}nt` zopGJ*E8=uRnEf}W6w@PocX|67VD_cy*(&Z*@6h!dkc_Mx%{98$je{EnQfj} zboJ9*ipTpWKsK{xYJqM#Q=Q(W)o@WZoN=(dbjUkuV~H?(vdn=OJ6#=_yRD#@E?Ul< z5n%TGO1pI&9gbYuAL5L8-GSSh+8G}W0raJR!*77y8DaMHrj2ATp}W%&*hn!AA~nS{ ztqv7v55ElvmdCH&fBE#I=MSDfe;kUczVH>%@}YX4*Lq+ilY#bpAFOD{J6ORnZq4q+khT4l>SE#*sr&aXGAqR?Sk{T%=MEwk22RsMD;CB|#YiZe}Su54*hsmiTao=`cP?S4;Is#S0T8XfN*k8EpYbC~3^lwgfR%VQb5-FxtFZ4-|OWCO3)k;>^TTw45A@#Ea+&5IV}EZQK?FHbYDQj z;)Gt(yzzdGTogOMx=?2z<9e!uuQCdJ!Olw7bK0c6w|T+ zihs*w*-@FHP;`K+7nx#f++J_{(}|!~sWRWDeAztX!V9xNDkH_T*}hJg?aU!+PGCVX z-4R?3!`UeLOHDB?pO&n~{+t<2iAXUmMX03Nc${mMD%l9@S*P{cXzrnymO_JT<(*N- zw3ImOJk=-9slEYi%mmF+k<$CM)R}gtA(|1ZRCR<`SL0g`@|VG07^qB?8t*?y|3~$p zj-vR`X3KBNp1rXF#WX2!IK?!zdz}>1D59a5#)lTgG(FeWt#+9!=MC=)7_snjFTP)yrO z4>^?41?%J@CT%31&|@47b5j)4t!VU4Mtf)*G#d{7sz~>tc^m}3K!Q%PvxhQiJN%Vj3FO6w~l1P)vVuyZzoL zub#jE@MVbAU)}1`KZgPO-iw!!iaOO`E40+xyOnH<8Wzb+$oi*UQ0!^_R6BQukYbt| z_4zS6s`oWbOyx}S~jqh@E9r{bHSn5Hg;9N2YGOpDeJ;(P^)Y0?# zot7W_43Y8|f?^t*FMO|D9RMF@y4>b#&PG)f)8f5FrdO!zK+W7N#dKe2-Pqcpw|Ffu z{wIt*IQR=@>w#F_t=M8uqnNhj_9&+5w`s@`Tba*c$m^;prY$Kg#q{7;_re7Fr5C^R z$~al_UOq!diuQl|I=V4)bn~Mrb&wug-{gJ z{rpFdV6rSAk!&&k6YJMDh=06UqjGxtm`zmg;n+GCZ&1Y1e!^g+m?jYkiq?SR(#VHL zl_XhfRCV!hYJp;!noIp277A&oq`Ti6P)t+n2~{{M>CzO>=r;ZtP)uX%_Pj)bPq!YB zJtM_5X%NRwQ%ozvHq%N{%{zD~{&$-bR%}XBOoL`XF%5r(!?xdXfNYqWx7ky=Hnpono4rZz-lh?x_^h)Rf8LT*BwQ z9f$h@MBI1jl{rX^pEyuV*X}lBZmKs7{p}cYpqM6A`V`ZktI;vRW zOuIDFgH!5jf?}FS=;8AhAAj`XNrz&ZepW0w2=pILF-@X#bm=B2rb%Ggj@=N&w3b@8 zVmf+L9rDfYevFiMVF2o-R(bu_1n#F>*=a1wtafC|1u3Sp3`k&nlZpZu^4`f0jG_GmnmbnhbxifO-9 zLkJ?c$Gb1X|9SYyy?k^d^1n%b+1aQBLnpgFB zJZSS&XCutVf|_r|#Wku~P)zF?K+*E)eP3BR4B-B3aD0AtI=r6-)P(ojz5eM>Pd zRqTTIWjkYt=>T|6dk+)5pF|MMrlFXYYSKtGN9^mbdG-5eTMI@{nsZ*L^Q{uNr1NyW z?3D%H7o(&Qct@T=P4K=HUR|wkF9WZA+E){ z1fSTZ+)$(yZkCmDR-D$ki7dj$Q%t8K2cc=P*EK3wy42I#(tuL4rzVpx1AcDPw}8NuGA>e^SaGiv2-Ix|+3z0sppTZnB) zG3_3uc}1ikr|-65&1!02X^QD1oyxjP?J(aX%NhF=)AUX0+E=E6!Qx$1J@Dbq77nzRAM zG-(&Ik&16P>jnr|)~#ydTbOj+t3tNiQcPE6W=H+J)UqZ`-K)Yce4T^b)V(S~&AL~m z*Q)MSd8bvBJLjrqHXd-Gn65SsyK_k~ecX`is#l6)x($@af>yrZvn~&1QB1=phh)t3 zX91Bqb6K~kdUfw>0w@k?(!$HOHhjpOO=@yb7|`LV@r1=dghu+S!i@VqO`w>rQlnpd zzo~ka*r!$Tsj{o6ef5b2is?EgQS5h+Vj4AS1k>@wC6CoZis^6OFvT>;bJx2X@fl)! zvz*xyUCqBZ+up3DKXQHG34Jpr%*0-<2d;2;teq)hhCS}$pq7tIN0}-+L4kb~(>Pq> zR3@{gRyL=TBztRdkkZLW&asoPC&f;7uu5ZJqd=yK5fsz-tARy$8f1!T=ZlspE5V7g z5uFut`;E)Af@0dIQJy33EslLKVx^e&2}#XG)J*+Qfv=Rv~@W1_HsjtY1Cgw3}Ef9vs9&+7O!HgM$8Js zLz`FSQ|PA!#k9~_#T3l$9_%~plY(Lzv>GJ3oW`<42&Yj@qk_WAbpIn|_-Vzkk_)CvZ1I4s>6@5CVwaj?cDD*TWKll39BSA4ORCKuT zBe$4wM@kG0DW*Xekq#=sh@`_1<3?fj*?ctY%G9e&!YDZv(O5O6w{!gN>>er6z_Af=B!>- zY>+%lQI;JP)1WWsKP)>^hRS;6OixvYZlst7`K7}uHwCAZQ3`aKV%m~izb!yF^N0ik zVHSb^t`t|F)nt1~1IP2tZ&z~HtYO#?j&Hc^pqS>CbNB#4hp|&h;?O4-GhTu?JIlTf zifL~7@**@p?m*?I<+rfDx@*voVwx=)rjw&7rlIXTUU0dL#w$v#6w}p#Y?>zh%ES zWX_eM1;w;{)VE8XvYP;Of>MoUoM6s20y}?8K=KzpBbU(x#k4el2-E0r$sH>gNq#4G z6)r8TV5GmNf?`_sK?iS|BSifN^{it2Q_T^Dx0 zv1dEB>;r;gTIeFiJ@kx>hZX{n^}eFLE9wpR&okR^-3kw@W` zA;LWDCF2L)oDtJ#lhhhoF^*zDG2Pc##Z~6Pu(HM?#kAFYi2xoQ$Nkr58;G4%<#RscjyF`e;jvRL zL^iW#YJqM#Q|By~q9YHooN=(dbjTZS7lpr#GM$^{jPhbg#YdPuHE$!?%Z{iA4s^rsBLIZ= zeIQa(Ow;O6f%foQ19yEgzMjWz1Bz*q$v}I(cGbW$XvZzh4xM?W+yH7%t@J3St2(}> zSrdfXgQj7-dqWh{La2t?i(Xf#y?Ccp)P(^bBJ8VqfMS}YCcJir+F#3{1K6GiVS00*+vNYQ+ZIR}pM}mm~z+QyU!UW%vs{P+)u1 zrwVm#W07LIN^QXQ^-;yV)89^}n5K48PAiY1?ruu5HiGH=QU=I3V_>DKZ{0k_v=ljt zO6M!1#HItAn5U0?ZX z7JX4vs*>s%2kLTW#IYS6r^kHLN}L&EBfe=-sY<;kJ_EmICw&Tzbeg1?RysSK9w?@D z1DFw>=gIuezN55&q?p!<`g|NxWh=T4!g6n5r7Ecu#lK~;Y=CKBD0X@tzjvk{HpSM& zklyyE6G5#~WxhQwjWf-^AjP!VzD}6+@o~enq2>e@RjN9It6?}BC4Z@_RLQ3$t5I@h z16$|?S)|uCtWqUKsHE9=oNJXT*$C@7y_Ml)mgW=ihE=Mh(BN8mXVft*CC)le^~rN! z+7tqN11YAZBBl3hsWa_PVXgS$gO6Ul{P@+&2Wcn&;_~+P`TMU0;-ZTUt5kJ_S6Aa( z5Av76UKprMlp2}@dHg9(b_Zl9pqM5F(qvv1+LnbV(J__kx))vi;XkbDX=?X6DW*|G zLotmHEsAM+uC2>nedl}4SRYL>O)3arFzh78A&7a_H^iLuhh;87b}{=%Sre&hBC7YD z@DKApBh6mhkYbv;NOG(H!y1&?j3mXhe2qMQRMa2&Q0oxN2^J`(seP{7eyudVNbjQs zBSk7>mSpcM#k77o)1!{e0$dS^>)^daSA72U3%1b)1isXM^2ZRGyk3fF*-5?rAMKOI z7?dRe%2etRXeg#_rP-JgqY&eb>a+t1wpa-_M-^cZn?&Tqei#1ndqgJEupV!9QL z-pObWZG&dR!Cw{W9%qi$@rKqxzwLS`lQzz$Lhs~t5iSxkWJGmTZ5?jVLjiMRdniy$ z+e%-nhf0d+{uZf6jusY|K5fbtD$?*h*TzF_ifL_wfrn<@t9eGBEIOs|>3E^ISg78s)&eJ;s=q zO>$JZuoY4@Jptv-0#i({fBkWv8TXiRuNnV|sd@vJX6kFmfoY0qv1jgB&7f?)wf%!; zYRRo1#QEA&{usvB|Gu4clJ&slStis`B(6NH4Y#qvsw$FDm@KkgE^66np#La!gn>r zw4o>L0=H%tIEzW&j&FbO#mo0D&%b^)I9)1=>Hg`m#O0d3(jYkfnxL4bE|&O*MKLW* zRPW*FH^-sq@wO6qf`6|$J|!rcszgiD!=p-)tTig0dFDTqggvItfG5{Dy--Nxq27RE znv_kb!g`>A`M6txz`#M>y7k$&x6j%=U~1i-mq_rydhQ`(J0rz(9iUPPrDxb?T1l!+ z#tb~BiU*2mFt4VV2F-wC8vY75fyOp~)9eNm)6~=rQcPEg;WI&sX?hSXdav1)nF@MC zaXTocK^aXk4Ud3gx^`>g4KNVZ8y;0MW@@OVm zmu`Y$noLqQMK?q-t)o0DMVp{1GhquQ& zI}5;ln41U-)WV!2RlrHgG?Q9RT+S zcU7TIz3(U3<* z37smS&$cOA(D}Sqf%~NEP^*{QU$=KibSTKX>$2rM3b_9#7H~hQOJeJpK%+DGuwsDs zu?0F72sGq0cn;tE54XQDG)zp9VR2iCXpWGgy~Jvv>9)c9*s*ZBZz-mw=Xb&TvK=zf zAev8$AYX$P*0jO@LKSGv6lhfmyM90 zO|}9wfE`~0is@jda>JsjF2NMj9b;Bka%t0+8;S&g&9YLa$7u)*g<*i0( zMx)$NX!=GMc~4*4azoL4YA-9x4TT>dJ|hvb7#1JyT0N@mS;2u~I@Ohkol(2frZd&y zTv`p+YUDd71qS<1hdlq@a@iUG6RUj{sG%)qoYcMwZ#B+nSbS)lQ$4kFNwleb70ItB z&ItQQmvaoA@nhT{rO$L+`|9+R5K>H&`$v(QVmd7kxF!vha~02VmO%oFY0@raBNg9p z)(sG_tXrKYd<&DVdsWDmTZ-wb%&Lq}w!c}oz^rN5_}*mQt3nrT*1amdR&}q+JFTMC z1g-*2;iUY*lP4cPc>MI)i-gz?xR&>xJ`P#2uU~{xXMlfC=1B>C|B$;znl;{Z)hk6Y z4F`~JMBIQ>#L`$zc_@ow8a_Fsn5I7qh}1g8G_@jt;*cgy)(s-q7_JZ3=oSZs&7nht zMiQAZeZrHpqQ>>5)O-!Vj4AS1naxUE)9@k`dc?l zF%9yLuXi<~&P2hp_Sq z#kBK9%aoPi#MuaC#rUM}_M6Fkl%iEvf@0dIQJy1r7_m}J`vhf*X;(MuQs*^~pqNH| zL|mYofKn{HJ|&IHK3;X3+?b%4M*Vff0M_pMkyeUn@hZk@#QZuum%00}zgpFmpqLgq zt7DwmT~`XLa)k!KTc6Dwg$s&lcwiiROVn#{OuX{SwIdN0|Md261pJpBKn5K4`=z7Y zl=@Oe{TCF|!kj7!W(_h>Op901r|0#koFm_fGmK&zSAt?%sOWHEh(@?o9GdzcZ-32L zy(xM6H)jT@A8& zVecw>Jh*QmDW=;lVcrUo39K9?t(aokYJoBdymJuwsFAg3Yk(Bf(7sAn4TcmGKdkwV zMAZ(8Y0#JRAC?^{LuEap^W7|qR+kN=m1xbyv+4UX zPF9R5D5moZF-+)k3hwp>6w|p4i((qoS#7^DSkQ6oeet53&tO0?&HXP?KjnQS6|a>> zJDx}}UG1VNrum8Xx}*r3-)GHmQKDIw6U<-*qQA5RA;om=N`YApA}azDG-4u@EskP{ zLFrpd0R2Fi_YJ)hPNo{gND-gEpm+PNH-W|OGKUn?(i|fLzkK}o$q&ofv$r0d)Psh4 zI#MY!AF^9hD^}JCJHEXT3cLY%G@b}k&|_r zT-FHYEPUS$+S!VLk|fNb3W{kph$?u~96_@AE5)>W9RoNrD9I<=g%0kDK~~c$vT8vw zt@Kt=oldu}(XGO*;45>!8H6X@mb7D#L>w(QV}m%_Ad$*s_f_gp0UMfUecJ&Hys5G7UV*vSP4ol)#Mw-47y{3p?iX z4JoEAlVI%9_92R1GKaC<%I^3j?JJOCT1Ze4%q9kaV}zw`EEA97sJHVbQb6i^D0}t- zK`|}V4hO-!?XitYp-lUsGnffiI)GwYXi=O?g)?D-9^L4;7@gf>eaGO58&XW$vg=m| zH(p?Pf~l~`1w2vev)N@zV77D3BO4%7jHypx#S%(jis=ktgnGf2CRK;Y4v(ZFviaAi z6w@Q{YI*w_VD_bHv4aICIhJC&NNdvM6N>5bo?f{bnO=TSC-U+aaWVB1FTa{OBf#wWm3HgMha;C_>z-#oLJ(%p znoXS1x%qRM7b&Jm{&mCbkzyJ|YKm!E9V*ZsetX@xYeoi>Oa|KPwW|i6LAyFv_!cLC z+EXh%is`D3Z?$DjkYXA%4LO1?)E*X|E;UU!R(|e>4?leMnU%Gv9dF%cbaSZ9d zvv|{#69hu2hT4l>SE#*sr&ZJi(RSXg0E%gn3Q+rN8FT>KlfH1Qz^vzq@Tg+m>E|a?Ojm=Iy|V6Z(x?%<4{ZN&jbZ%y%~MQEk)w2y z$b*dvLZ~K3hpBLoy0yekh7{9Ej@avp7_0!^uV~(W`~FlIR;u!AD&hCNIq9@MG}P1E ze|NrdNhQCo3)!%5)=g%r&rWn@Q+JcQ-O1vf5Metgrd5w+J`5{WsUMCUt|Y_`GHb0= z<<~)D@>iV3Woc2V%B@#k7CD>keot1aT6is1swzv`kPBF~Iot4MciXU1m1;qR6|5W; zc`R)F&U{j>v)#)0>I{OYRHb^MPkLO+M*Xf8_GV^>GQ`GPA|Nu?0u@fJdWnpK1E~->@1XsfhCrk_= z;cl;FHK+sCXWS`8T5^$MTB@p&W=t_He?^MaDpls=2MblIoLtkQN|hAKd9#jbDRI_$ z>dc(g?-VJfr6OgNRO)O}rE0;|B*k<`cy%?t^&o#4lV@DcO+HdR==s@XcaZW}Z)`v@ zO;QBKG%RQRm|e^Dcd-G*G_`x36w@f8p_s;p7R59@|I4J9CKcYr@_ZAITtEw4AjLF^ zA}5k_ZJ*92(%3{)?>pfi?wUqvW=SzEy;6@rLouyiJ;*bEv~fK^lE4lU40BTy)2(RqPDXoZ8#EgZt-F`RBwfQYm?wY) zon&VZWzxpJvv@EsVq!xQFx64DbvSy~G-e52@@F0j6w|iSayLF45J3e}rd*^(AqjPq zCB?LDml$C_5C7saFp4Rb(W<5v zsNHso>zm#EYDir(OcWZ{6w~nNYd>lT1$(Irpb-Q@!V9FBriMi_(^9B+3yC-UNHI-~ zasm_bvT0jI=PSM2${Eb^ar?&)Nq|Uno{E`b+Wz|ES0C5qxSx#w{9iw?G?T!P1Je}K ztxG5gonb?YY0Hp7(+98arva}U{Cay_@A^!f2}`9PA9lMg?9`tb|=5?h!ejZ5h&quwGKn2uOgmIkYc+1UX_RTzE_}_#vusp zi|J-Mt@IX%K?jbRaKfb~eLx}$l__Uvz*_#n>VEg>;=}{g%*7E8r-pHnyHuP+Efm3lvD-HX>ZE(6&6x026VHE#}>w>w*8pS^>ifOV! zHc`EYLw_#kQqsAM!K&>Lj!Rw{!EySW!W#MavaB^yOk=-?g+d~G zG;U1#g+hR0np#h&!cj?=TkfJ7pFxc|Y~7xhNbqj!!H`w!{a5DLQ6&@&EhyaG&9stK zn+%>Q9w?^40GeW&9%X=|p%v zG@7B=m6;0iV0t4SW3K5CEYc>9!>cK#g`Rrp33^to#uEt)%?1?H)O<@Z4RYVyBcmO4 zlf(JAQAdhtQof~_uH9|M+*Hp8Xm>jVQcRO7eTr$&Rge1t6w}mt4t<2vo(OR14QxX( z&B|Xp#dIU-<|w9H(HKY7lXkJ>AdGrA#WZP{qf0kIF--!?M&gDjrnS@>=-1I3j>ICx zw0?b@j`BbQHl&!Q=BXk|8jCWk_4lXiDHo)emLjJ}>Y|Pd8JLTm%z*n#8Fmx6pXK!N zq3ghX()@7X{!~*5++VSBtLr|BX}?4KU6wUHJ zD>H&d=ilkx9gq~$>U)@Dm~(Fp;QnlIP6zJOQ0)iqZ-Qc4cYO+KCiyGF;v4&tE3|?8 zN$jb>{oF{u9)`>Wjf+^=!2K+t{}~JdvL|}K1Gv8lifK9W4gH_qq8D1%N-?b)Xo35- zlg?~#8rDCLfS{Pxiu!zf2;2u0y8lafWCHh-!gMH*sL2!4c=2v~s<`tfKrtNtiA{|_xt zwQPq@P6J!eB3LFu8S54l({dCEX46ni%U{u0H%DyhMLCw^Fkfd z61b%E)Cu0N->M1T7o(&Qct=8|kz(2$nFmnGzi%%Cyl?fO_bE=+Vk$xf6w^V~Qkkr& zE}Q7$$XAMRRRU0>e`H06e3XVl8wbY@;iDEh=`sQJ4QeCMgKMWhvO zOtavO_Knf?qN;{7%Gy_Z>Q{x%Im)Zy!aCU=|Jm6FTgc>D%^p*apRRpnTKrUJ+;I4`w3m?rnPD5lf$fNN43 zX}d5Ne_OtCI$^r(GY$jAG-($SfQoN8>jnr|)@>H<$;%+?8t2Oj#H&ZE zGJs+l>>W0~-MUw&4{}rYs?bH7b+1~A>4~Cjzyk&xD5mRx$1+3jzIyaJm*hNd$aU2# zMKRrh;B{D~#k|>+hq5T9g=G=Tki0KLq+Gn+GBT!6}%@PE|s(N)VMO5{dd`#7=G=|X~zZ34)>h5Mxh!(uB>eaIi z&gi+|Y#`rb~AZF7#XoifI%gwr>Gg+M$?+ zxJwsw6<`acBIqw}zi|0gRS}d2=2K%vh!8qKG40e*rpm5c%g95${j>9pd6Au3TG^Zq z*UMYAx>YsUV32Z#EZl^N*{THJrrGVnKOC6r64UZ*y-v}Ys|_ipofhF~@CZ{@f)l57 zofUIC?qvQYd;G=O_P5uDG0&0r)?P|e_nWKlh)meQ9sfTBFtYluhzl4;F}E5`xS*TO zQY^f_f%^{vI$ibG5d&Dv>W?bLw9gBNhc>rG>?ne-yMH8tkhLc|reJor?u6XB`m_oa zhJV#?>Or7k5WE;uOv6Cgk%%e9G`1kTT*tALKMqyi|An*x3qdiB+IoB%D5k}$O~~g6 zU)~XfkQCEGMHLpaT-Zr5jm?hYWLFzdOv6iN9_y%NO$ZMIW{p4LCW!_8FGm@qnC_`7 z^DT}v2p_G)RYa|qPF)SsQJwpEDXpb9!0|>n2(WvHx2&h(T`F%9xdhu3mb z+FynTrjQ{X`4S|i0Nu1aWqjEhwg2gkva_^o~5WbOKRGG0iP2ifPNokR~AZIa5qeHZ$~* zmG5x_l3%uHm`;wSn1;4Jw!N)SLJ8R54mFM_ z6Gb0B9R(YM()%f+^hb-M}YPOiwi(Q%uX(2Nqoj zJMQ$ec+I*EJT7?M?$F~^q8g0U+ixw8Aa7=vV)`VLR*GqNGZcWFthBk0Jc}=Qzo3}* zYL%z#UFK{fu+w=ee(noBnoZWqRvS`GO9O~7&4R1CVvnST*ns#(xefXVifP#g9lU9d zAldwtVp_e90UVL^Ss9UCp+_=M=xqGqy4#^+xfQcMfo2H{D!kJ&NE zbu`rfDoV!09Tx3WrkJP&Rh!R2M?5#N){Y`)o1mChW>sK4d&q%eTD^{*o=Gchw;cpz z(=CLaxB5SrM;lU1D>Yq?4FSuAfg1HJoOYP7S!hIY3JJbHDoppsMrZ{AyERPLMjMb~ zy05V#{8dioGQ=sXnZc)10yqAO`3qNCCB?MWtpKC=2~y#8COj5D)D+X=q0(OVd1NfT ztRls1+Hm9F)h>%2f@7Uv5iWhO#7h*t4x&*H6)>4 zo6+;NaOQ%8T?mS4VS(Zr5YTMUG->dHsj$dJU;R3KBKAF7Ve^0n$P{Dh6LPHph!mcU zDW>htR2?R}FOmu{`!~OS3dJW4#hHPdDdXHMb!2AOakn>-} zS@tA~X>Rh)`f?A*W^P8O#GB6ej6Pb6*<}%CUlbT@F9(+m`0c(kF5T}0m_0WwobiM` zU`!zgFq4;Jn&mf+jCVfxS2JgL7REox_UBIsQz1I)h2 zw~_3}!R&!z8bxY~X<8i^Xpg^b0pk31gmkXMT7A~oT) zGt}NU=zQSt?MN!vzDNukuu3uAX0IA5>2Ar|myQ4OHn=2gip*?VMsJrtCsllAE!_sN zeQCu6+n0wy#M%G?*uJ#Ef!+dtDGwyrzWg5+Hf>UWwB6C_vgDo9hpi-3*>CS^eJa)vQbTQ&|)v`w! zv(UfDMI94NC9|Sm7kgb1gY{Ob(k*&YUfnqXD5iD015G9Teo*#7w`u6wP)T=n1&V3i z?m*XtY*0s9YC(CPCrhQOg?BBpa;2(;b~Gk`#RQWn zEJ5<#z)Dqqy>fKu8}NwP^okA5$OTraYBX2p!d};%{U|%Pl|>ON zRVnobAq>A&>=fBa6w_Kw@fnB-eGt7#q^&x9vC^&PgVCWBK{2g$b~=5fm~I+qgB>f{ zo31)a`6YYxa%xzqs!`PEBne`*gf5e1MS)u+_PfKE? zP)rZfJ2dfkOav6uN`y+96{1x2D^i53RN0TOnPOTA4X%}UMjg{q;;i%3c@4m%m{y9E zQBtY1eyVy}DOtPW234wh!mF#5TMz1&!Cn}s#B;Oi0Y?^8l6JB&N?$2bOcwbd|Ha5cmFcJgC)GCl-!U-! z{MEAusrTW!^#u>t_7np_X@EsUA9~4N*)RqR~4G+N1o8&DU%=wC=X!x&5~5p-kF%WYv~Wn}|W_sC(-$ zA_42ps7L~)O$?YD+e0hGbo1&#bLYrIZ;WEPbgnwsJ&%W0ifN;P^mXx<=ypos(?~I0 zL|7El&(*JFQk|*lIT<+7erhD9>7;8x4Ss1T1?H?Q$y%*!SVabRAXj?Pzlx24L3 z`6;|UVv^CKa^5W50L63>7;<3OKrt;_KZx_S@?*>9k70ZTifPe&;d?FB0mMT^F)g1- zifQ>QGrb1ie(&kyOb|Q>g53tdcxh%pG2K5*oOkLvg!4%HFHSv=U;g;xC-DmfQ1(D* z-Pq#0gFF5+9h_o$w_=C33UjpR(MT(#m^QoHp_neeP2Uk>EAu%Fd0jJoG^2UTo5n~2 z#q{V`_wJbd&@GMhA*9jKlzu*IU}!E~NG6JrNu-z-Uej9x+5pO}0Bq4=uG0QN(@o{b z)*TQNj$dcVbssM^>Fp==piDWv4kiOOr+d-;?$g~A)5Qn@#8dH5`>C0qHLGrDSW>wb ziPSNKL*xKEJm2_hi(}rk_qiQ@@vE(4o zPZZO^*V_!!Fs6!`x-g&W;mOgZ8=#mjCMg?Spe^rp{TXa97Q@+)plc$dRUu43IZSeqEif7rt{i$if4mV#kYJvOHcP+CT!2M}EyMX&-L6@Cu;Qman z9&ms5UI(~8e{CJOzhndxxSw0-BbHtEwQgRoeEAJ@xr_A|6w}Q&sw(~H-3qN%pBljZ z+2EWG$)};Ran3F)+rWL&ds)=NGC`o%TH#CHVhu>$Xa^${e_#f5#Nl>Z>uvrmSUW3r@19GJ)|?*}#43sn5q( zf&1iKgV_6K0{7E~Fl!$P>c{Yj;mR)a=j>zP2KGx)G#fcIO)r&03C z_A3ExCU_s)UjXmx9rQ56894UzX_-Fa(sL+xrE^bZ9Y`fv3{bVzfsu)5GsaV^I9nmb zv>HW%*=UMs^(*R7bHvvDtzYdd@sP^V)l=ic6tD=__3ED+j2vZR=BwjR?fB4azl|$`1S2`KYaM%t0$LV{_al)c>U)t zBewod0G;opm<|R>yd{!i+PI|ZQm@&up0HbJ%MC^IslBYM&=Y=u_>A1K*5adN?6@YS z%LwLPwyAv;JEKzIfiR>Q;5wZJTA^SYRaRGe^-ip=fxRiIn^Vb%G!cD z2KABUj9rRp?ndK`)~?bcen+u2V;9NpWH@79d<=?d?hL=}8~>39HMOs9lw!K{D3;)% zf=F_Cz%?n&A@P@Oy(TossgTX{8dx+szWhdBnJ_T0(3F2#OR!Z!sgI5y*i}oRgxP0;`^b(736-C-9nUF6`v}* zirQC~pKPDv9m_H%QS5iZl%u;F;U9M!!TR{(6I>~#!${@Qw>LyFjq;{>j50?JC^;9b`2?} z#jghA#<{UVG3|ZPG9?q7cpK4KF}L5iOuPL>rI>bVl;_BMs~>2Xy7zq4WxUV)U#zd= zKrt;kE^=T-T)=Jr<`~z_W+_TvpZ-8GE%etB16a)JOv)6~@>Pu0h`DQYxbhE-87P|Zlst-T`0*Q^H}zEw0KTkA@e(r;bFk6u`iO$8a#*o*PZ$6f6Z8Mgu2y2GGsnY zgUG9hTCauF)xswC94V%a5eP>SrfKQVdl+x)>Ak}&H01)tG-{~QRf8eL8(XbF6$K2wdEW>fY4#=Y?3(i$rC81N%l2ROxKnr#Wel> z{Rbg_z&?iI(%9z{DW#Wc2^#|vr`(0E0uOfg*zG21hyurF}GR~B+=gXe_d zXQPdo;y`uUn(WiF62O=Y9fq4@ouj)^*E+IFi_+!V+N_(n86UM9jX-5B-Ego zMs-%(ubkY}O3-oaeQh?lW7GiPQFB6SJ1-B)`$#IrAfr>BMllU`Q54hliT1jr$g0Oz zifL+?U?S> zu)a)V7bBuh)n6HU1d3_(yOF0AVE!>CWr}IP208$_;6;-aG8-8wrrlcQDf_KuPY6qR z8-bnrPs}cq@jqJ`f1d$>VpW$2Ka3GVO;H%$)0378;sj$ce7*VM|TYhinb3n0*y7p2jrh}dkN>K1hU>LGAS=2$m?C+jLFA^wKd2LV`HMKS%@d2Re%hPU(Ix>_GB5E^=^(+2X84oeYKpi53?`bXq?fo_|P~* zIEP1X8=r4DV;^Q;Ix|Gq^N&W~0DCOL?CDJ#$zB4WoiK5*ofDb8A;mO^R20)?b*Mml z`0aJ$t{Fs2G8t%J?t`&*yn_YpRu?CL+EXh%sC`vuRR%!qLDR5dydjEdAyh-{MXxKx zw0NggbjTCV4(>yW1I08+1*pAm(0RWz31H>z5rXYWV%QATQlxFzdl%TgHmwpi!nPH? zU4I|I_O2TYrP~O$r&dH&cKu0(-YyCNussO~=f#}3WB3a_NQ2k(>Qu0OmD+&q>!XT! zr@s-!w96~lYY}Wu?Z94HcQ++j8^Ick;nEtZtwPB?y zDRP>hD2vjlVv1^Vq*2f&GDl-_Y1lhKF|Fi?y{=5*A@F`h^L9>%uzJ+Cp9;fDRenun zF08lopVo(ldRkPf^6R>g4f|%vf%sd`=`b_5wbFgW)ysjKe4Pnj_J*ib4o zf7dc=tyJZ2hf-p$Zt^rZtfHc1i%M1MS^s0q%i=fI9U|EDby4>pN|ib`jxtN;Y)agm8zst6#sT7%N7Fn z=ka@IDoRsqjoa&Oe>xG=Dpls&S?RjstmVr#tWssRUs6uxQy(PE7IxN>V!9)^8iun` z@|Tn{i_QF7AqSVkN$m36OvN29kBSA4u z3LH)`P3>MM#Wad&D5mkDMKMj!wRP`&@8&3`Nre?)@WPr9DcAIeWiCNS)A{~$prWEK zlHBV5um)xJrH?;+`m$aSk*|@*%Qa`jhJl6adAbX0ke)etZo5_*U!*stj(xgzzS(sTWzxnY0Wd%UraG#&4maqb)+ItxE_*0YOxsG=A-Dz)l@!zcYP(*i#DM0- z*h6iKX>Egnhi2XPO`U91K`~th=H^M-{y*=qGO=PyLrg6wrb!DrRR{(i{gJb#13m99Z~}$tE0R$+ zY(15k8Y!kp(a1|yZ$P%}ooPX1qS@}UA9q*L=I8ipDasa`i%BbOrwe7$pk5;+wWDR&M&&_4^T|2_79qFfMQw+5ED*kS-I18Oio0C zVp<9)Q;rTdq-muXusPkAr+M1xy}LN^{8p_lNje4)PsKwWLNQ$%R#dLiDhM3PA6KH7 zre*hH1QWfD6w}mdhz%am51^Q?4d)=O-c|(5HGN203{@{1n2QZ5rb!l3H(&l0{9lcG zh`GDg0;o!}pb;}f3V2G2X=)+S-8K}{hMuRnlKT^S`wV&#qP zGpI3#t=sbw2_9I_c_hHG1Bz+VAda1;m{x{urj?``56NT{Q9Mvgg8?+fG-!6Wk)8DQ z%BB-{Ja!|+Gzl;noXf_~4Q=mkA&_FaN(`UL!yh%hiWa?BZ(`M-8wh9~c4vUjPccnm zqcWOe8Xf_~bk%duh&*bJ#x2D($bEC-XfW8UjWOybhx2ixjug|Rd`mG+4+O<@{qgmW zIZ#ZK*gnNH=&C38&@r~Oe{eRWn5Ncq=p&r=M1V_2_#298R{r7h7axE0;>m++qnK_a zNs8(Ip?F^$H597T5dn_wg>UmG-wWIE)Z^DR9;{e$5Jo+mVw#MTqf0kIF--!?M&gDj zrnS_%6&s9IcRzMC#WZQRqkh#=n%V^JPYc7mh!xGtB{jbmstp z`@PfnN{<|XenBzq*Hi-cPt&QPlJ0JEkYd`e>koENO#53;?pBtjF~ziMG#&@I2);NQ zxInWTmf*L6`_peF>~Qm0ss-*(-?hwY0QaZu=vr1Q&NKlvC1Ckx1NUco^?>`c_aw!% z8uC6id=GFxtKxH(%>?e}76f8>#r%HAy($La8aLxYfDPQIAyEa%^=_rqJ~V*)voSp# zd{0AVW0_snuz~xe`4rSl^7%ZsGRi*nOyGVJdn#~0H`1?%p|7Y7K=9j!6w~tKyxB?w z{sDNjA;q-Pc@Esq)~giLx`Ar|?$dzT&ORKSz$l@^{q)&3MGHEgH`KUVF!3mEEhwg? z_2^KLqn%~T31Pbt604UzEH(TE#k485o(XzU&$kTlei|I1_%urHp_n!`)Zo3NOoJ5D z9l_N&9f#_I_t8M517&}ACW{S?EJu5f|Gn$c1hZ)$Z!TU)~ z8@zAzfUU3mY_bGX$p@gA4yu+L7EN^trkL*ZXSSgvcPe{{w%kx80Bn{OV|qLrPP_9W zG?8z3Kt|n`8wxLoy)Mj06J3mZeAAjdQN3n|+!Qow%MC^IslBW$7ZrYh_>4rzVp!Z~ z!1Yynv>R^94aLr=-D%UA>h&(04tEepF`Wuq3@N4^^6VRu+ zo8^p?+E>B8jWZfM{*lvo9JNyub!_v0vO(fHeJ0H|QadB;A6?EdbjFW2xEq+{k859@ zo(K%LJpnt)A~nTyS|0F18UJ#W5OUS)2{YaYPo8}I;PKOEFD}oo&SI46y{C@@viIv3 z8&FKs#~BiUieftJX7!@Z6TbCO*S#ua%a@&f|t0D5l9W z371qhA8kNkP~V=lsd|;hFpB*SQcPE|NHI-+)pw75{RN8YyEjZR z4f000Cy_QAQ7&S8vz*yNS?_eA=gkV!&Q*B>kJdW!$ZPW6l4It8tQ35F^w+|w6wB09j=$R76(aX$lT);HpC~S#{@&QpqO@A zgmYs|G3|WOGG!$=aWW(JHp^Hm7tgw zI;)t1+1=TuAb$(%t`;i{|ElpJ7{}hS@$??+cF=sRABGN&{W$o)|B|U}PrD2*&P)xTnYn}!^;c{9E+wZBmj>HEa62u*M z^hRS;6OixwwA;mP zR|?E>5Ni^l#{PAdF{`hXHVQbMWtK&t@{Ix;Ud8| zm-UqB{9efMq#iWX(;HGuO9KpC!HSi2!j5mRn<08V4*Rqc`BkhDA%OMe3tVzWj9f;$ zG!fJEQ4Ry!1(?qi((E-Q>Z<(x+*~o%o+N)I#LhdqW8-bkOY&T z$pA<(EgKNQND(@6nbrz0E)1V5`bmBGe?)cZyq6-oDhN|^1j#?E6w}fK{W)V_6@B`$ z!{KumKd)3yP)y558tl~R_K>$(w&?SwGEbewYAjdgR5=Jwy1l~=JFcUlkYZYNSB5AJ z*xiDvjUzYUJGnRvB4?YRn3fvrFr_`@KryXeUkg<(^nW>6xe1DCrKSp3c6vDkWU-U_ z-T#plrb|=DYS40FUwa-u@aBw&Qfp|XjW!^~w6LMjxY|O-Ri+^@Syl|D+;V`u0g7p> zTj4&3Dukj>?7 zv4b^M@e#JRwBZ2H3q^)Yk3cpT33}ybFmU-n4Um_=h<)iivFPgOj&&N4&8(SPpqtJN z?Nhzcqq4a3K?)4EmyRZn+F1U}vrTt=x}|ifcj#vF&(1c!zsTlO2d1VQjWZe+?;MVX zv%%<0oDmY+9uY&=MT%*XA7Rja1hyM#-HpH_#WaZ26w|aiRG>ZlwpA}o z%U^u((W{pqzk2x~g-BmqetG-p`(H?P@u-~lxWE>F#M|>)?}}tH&|a@yHSi4DaZ9t) zCoPEpwWn5k6w_55U(>9~22gv@G~@`nQ2Wyd8lm<=sD|2$URS8Sc&AnL$RP)cX_A`o z+8Ju^8+6x3qz(vx?MY(TfYnl@ZPLpfbFS`kh;rRP=>$I0|mB6eO5ml0NYooant(!fX>vN3JO)QJ^lP-usyYt za$0#5b$4S5^KK)U&M%982^7--;Q#XF^RE$^lSqR>Ty+Fsx)`OFEQ)Ccr+f?`^|F7~2a-}N&yOvpNr7C|rIwiK^ zOp_@rL6P4Om8#r&5v#{&T53MEfsTR#d9enyYhRuj}j$$2;1Fm8ztA z#(}yla)T4}8w)zxVGfIbT2!i1YKqUG@nfCkQtmtKi4m&vkG!l@rF3>WJy1;R2GHqq zu$XYejuN4k3^g^+$>##k5q4;@`4T)lmq4q?k6v*0{ai_NNm; ztx{#aJth;Fr!;<8t1y`DhX{h$iT4p{!16F6Se=TbWz!PPLFjgr5llo^+ikWWii z!;AR`;&PF6+^|ZO6rqx4OgSolMT*oaRp#S>qMePFlUbUV2T`R;3JtE6cSar4QsS)h zbTxDK23Dz(ij+}WOPy(V8m7*$N>xXAbv3^AAb%O`g@H=kiKrgP3nQ**MD@Jw@7AmT zq=2B97U$p|bg`u*y4e0T)J~2ju?7W!v9L26Ay^j`*rTrPrBYR&druEB7>r?4bKd3jisQu)RAv8&p zczuuXgyn>pkYY)8Qm_B^7-&}$jSnVga}3Ia3XmB+0u9Bqt+bkpy$)Fy&>uCM6!y$u z7^IlC?XurDkz!iAS8xF!o?x_xwn4Mu(7JO!_qi&Ppp)$Ep-kF%tK(> zwRk90x3oPJD5hZjwf_;A zzDRhWrEDpt=^1<=mF%^7b}xQ6znRE2Pv)8y6w@S$P8EWIM}Oq3=|IoBaTbom(LYY5 z=Gc^DhB;(!qW2T=G*V2HqQ_HAL&KV48Xg6T>A-6G-Y2h~zyI)MsFDyaN%!``p}yYt zUc8Jnf~nRXQ3_sc?>75vk<4V=DoE|hD27FfX?l+nn2?uE+bTL=>D^W?7v>)z7X49Y zv%nP7{msH?`xv*5w_+YI{1a<>p#S5`bkx@nYP}AMY0>&YoUc9Q1>>vOefRvUJ!_q9 zNHLAt7rxhl;hL{G8&y$EW1}ZfOj9$0G4$Fgru#zc#?}tKMOTdf2|pa{Ezc1PJ`l^h zmHsEv3vIBco5SWL--4u}cIm`j9X^%fvOF)e#grW_r|OFmW%Sj#`im%pYc zrq$C-F%1Q5M>s@5%}fmi5KqNJ^(I)$pu#HKGeq;{Z>5yY)thqaHo~FG3l$FKrzyX{e;T-`n47w#*4t zSWCL}rX&ld^_eWpBPgcHasW8h^AZU@-Fi57KrsztrzxiCQ88>Ytt8bZV+K-rm_x=# zA8uk(nqnF>gW}2X*LxG$cwB|k5MQICriK*Lu9bZRmyW0jJx2$L;WI&sX;LMbq29zA zDd>&Md4cagGRH(yObb1YZt)oVhh_tcX==WumGF;_P)w89KE*WsAnK~eJyJ}M*A4SaM2cx@J%>KRX-@>W^px08OtbQpV%lk` zcjA6A#=%k?tNf1`6syJcwo#;CQcNEmNBt9^m~J|0Q%oyM4#KEJF+H*rrsAS;IC{$8 zd8nMEhbIU6Z-Qc)`dT&;H$*Y5rPi&Oj^1!2Hr#CIORf5K+K)|;hWWY>n_cDx!bL8< zXQ!e}*OsP6ifQVRqYl&yET`oHZ{=bqGd%uMh8-!U{igKOPv#~vTG?W+c#{p>pXt>D?$6%q0Qcvwxqk=7;C>Q20Pg$sv9bBzSYz^#qFPf#P)l1@3$b2j2p4vc^ULnP_)G4G` zdfJsg}7ulbxgimZ!`zq23H_J*v4G&kBX}Ouu^a-`E!rNl6>k@a}t9w&!D4I|0 zWo5ac@B_qWBtjO$;=@I4xTSU3#oWs_<%VKs)XLp-raGKU@W_MO+E=?Nrc+sr@OIzd zR48R=@3s(IXj(Yqs9VOaa9$@a>b~f_Z6UU3zKJse#dNV*`}v>hZ=D_E*yg$rTkOol z8DanEaK=Yt`9LvEmKoQ+>c#vZ-BX8y2U|ZbLbGEkvf|(M!a9Uj`eDtBu7xJ)G|riISx7-x33Od4nYNyDcV zQcQzZgG86pSaz_1h@<5cItUkB35sb{PVAgmt zYLZy+3769qQcU;Ml_<4&(uyYqf@YIDaqdLz}FWDNZIRrn81&S6y$om?trL zlcjsc0sdfaIfoA*bQn98Bo2M@6pHCATTo29(2!Qw-+2dFk-23>F`fUO;s-obND~nI zob;(9=Nl`am}ZNHY4B)@X=po-7evo!yrR@fG0lcp?NH+)JSU8%;CtGbDGszM+cf6z z=GZQZ>1s?(F%3^zV+KR4b_gh@bJG^ZGzeX7zcE?Y0XCADLp>{iIuP|Z3K4ymYZT)>OY&cv(YxBn3fHQFpbzw z`ux|x@cRd*#f(_dPwE3wOv^s#;7xM`$>y&V)9Ur^?B=uXFm$Yq?4FSsq-A5y9h3V4NL5E*A_ouT5t%k9KLAhJF@dCpWOofF_;E7V7`@18k z8Seuzras}z3V?_yrZa?b(wW(EPHt4T)&kl5=9FT31YRv~_mR!2oX~I?5yoz4%MWURy!=H(2l8qicH3$ht?uR0etqdim_2Kz7U-rk!%c9g_R?X6qc)aEF-?|{F#ES zYc_F4*eALyI2snDm?rr)lD!1P+;IACtP3foL8PXbrq!VW?cuiu?)qf7HGjlNF-C2WLkD=fYKK7j3ApH%5Kg6*jlQI(zX z|5e1I0JuXyZE&F19K5Dir-JRP)CO!{A63jd{q1CmX=*3swDKtG?xrMbBUpnmCgIP# zWyVTXZ}usskGv&}m8zu3X?~(CN~3}ks>x9zjF_WwQ!^qVx)2o8N{-m;$_x``!d5hI z6HI>WJyJ~jHI=!r({$ZOG40pYO5I%kto7HL(DApP3ZtQ8_;C1d*y*qpONxBhAD?gE zD5*TZ@;py+r7HisrUAdTt^=jSR(d{}uo8?N==c8X^X=}kUU@>@XVcd?tLisr{PyeK z?Qm;|N>xg$eptb0Xd^MUqQ5@J-LW!bc}zv6D%A^p(&I{1>UXtLm3q*hn1?lZR4XR{ z^Ai(jFX$mERVkTa3;gi$0d}OE!7)@F#K*}M=~rH=}|!D z4M8!j)D)k=Nj~jJeJwCli%L~WXQ$Hx#k6it*Fn(Aq29b>mU;H z22xB*r6~R_lVyM`80`^z>@x-KAHR35RAq{-i6Oo1PbY#(F>SuR8_-V20jN@CwjUx0 zqGs$MVYa~gdoC!ZJA$iWI2$E@sVS!A(~{LF6w~D(tFjt{^bajoNHHx%sHE9=oNJXT z*$C@-68PVupB5C;QfP3kyff;UmJ(;3r_Rh7?A?C17DJPYl-{e<+2s7W;A$7Kh%Z-l z>Iko{#P?`8HGzs$fQ=II<(&zXFQcRNqf?~P@guK(T6J6k0Mo>&syVprE zjUpO~X?$o=Ow)61-8UbzaxI@`KxCSQttyxXmu~8j5NC>Or0f#1kZeJu?{QrYNRc(deDph0BV1x7l!L z-MtJpiKD|{o&XYbQZaidlQteXXZAf*Z5?jVLjiMRdniy$D-R{5dHGShQuo|B^3a>3 zm~K4OrkK_?73JRcm$xAjLE_%7J;lNJkIoe5H3=IfKb3 zRX3*-k^qr}JQXv=bbnTidqtB*dT>STHKdp(fguNW9Td}|b;0?%pUo2}rbY9|Fuo$i zG&W!OUb#8|KFoBv&DWfbswk$#dztBV5cs+sKbH5NJ`Mz1;bVKTaeV}8Wh1QL&9b?LEsWZ*MM+L?7KrHW8Y_TSd^iV8POj~k$6w~zEG~|e_%;zxV zbZwfAHYpkDk7G@a*A>55l4O z)?XUMG@2-$Opd0QR_%-FrZejYTTsc;?Yp;A$>=|j?j)f{$aLyBpV<)N4^=EbR~)&i(X zS1ks?^%U@w6w}l~=1->mA79-t^qk%^NlRa$k%m3vruU3UF-?NXG5Q86rnTf6|IpjV zY@&J(N544^e~h=4HJW;R1Bz)9k)UX*5^a4{Ns_fj#V2-BOjC1(3Au#8V1v>vOM0h; zRYe}^4Jf9m^#lp62b%Uhe^HIk&YEcg0H=ChBEbXexrdDHyaB~@9iYhZ{QYp>TSE(q zVVh|ssm6^?4wC3PKrs#G)fCg98Bk2aUwLP;;y52|debwcm_8lyjug|Rd`mHnW@vV0 zrh?u8otJJHD5gOfO)(9R?lseU(9`P;z&VT*)6{%RF%5E0rI@CsZjfTSN>minwY$xj zo9Z1s=0Gt`s`M$QL07%yh!oR1;u1(PO|9q9M>y??0GFN;8;WUGzEVv0VpWwn+H1^r zkYc)#baNEbt!Rw&>q)ys757%*HaiM%@PPljc)UbN-$00s{Tkr4{eV1;w=d$W8_B zCw*+-{(5aIq?lG}iqAl}>ma*jdFg_g9T5M`2JUC8%z^v)ca>sVbz1C3a>)$8L+>d_ zF#48k;6C-#=i{rueR8hR2%EtD^d4=`bF{N;-0U=7!Qg; z4Ddd-Kw;Whl)N4SPrlnhzbBiCmzp%URfcLRu;dIZX`gQK9ta|CTlL4xh?TjPY z1Iy)QPf$!t8xhQ=p_rDxB1<+$Z0ZFYnkV9EQo>pM$_DQz<8WT6V_E{2be`&K;{zMg z9T5w>FGfir@L=v9ePXUdxe4Bv!mF#b;QeB+nV%Ino+u_a+YV;)@W=<40~fgpPE>AK zG}R^A%LuYRt74I2I@J=01c1$burfW4X4+7&;qwpP|M2097nfh%e(v%sAAa=y{dek> z+r&JwlVZ9kCKh?)cAiUv=Bnulb&J|^L(zO{FDuJMg&!b3Bb%kQ_$UXPCV}1^QQt6_ zd)cP;RUw0fYo$$R#)|T3$1^l-?W;&D+;v7rlSgelo7z`FG2x6bYn_cPvd?W@Tg|2r z+lXSCzA0V%%Cz`s+voAOJzGt~8S~;ZaKRmLY9GdF|11GMQT>s}RJYqRcE>9wkRRo-b8T^rM(dmzPhwQ<;;U%dP3 z(d%-zqDq}*{i-gLa0G1?b=50HG2KEc8Y<~7K1!E|N=@e|A;4qUS&?Fzx}G6Yr&Yb` zQA}46)npz?NHI-qa8MY4W~o~Vi-8D@^jC!$_l*-!OjoJVFCsVua=%GJjHqf8A5-;; zY5?X@)ZGnY!yszG`uO7OFHlUs*`b(*_5b8k3sOvjJa@gT5uYKpH_MqVl=YSr(H6SUb!G40gS%I0*cTfJ3JWVwiQAWNTmR*ZXb zwhDt_zGT1-zG>|Eh7{BIVB}k`KFre*Q%pNwv`kqEPMnQUIV(Q=xcz1_AEmI=m7tjR zX_V*4dy8Wqr|vgb-w`FO4(>QoOk>BzQLH)NcS}hrT3(m&<54JNjl%}F3NMEZ$1vcKsFrs+tRv`fB`Bs* zTaQlz#k6=8eR^IA-aR~K&}$T}xe^r9LPduQLpIB;;vm3!g%s1E%eCgQkYc)(S%c^B z38!6uI4vQ?bo=V=)C`>!#Z^R}Bsrtv&gv~}a?b_DblWA&TR}2`mD3c{Rtvk$LR*9X z5LvsDtAfOje)iyQTrDbQ@nDK+um|Tq`ki^*dZf>Hv-FgpmkpE>pg<9YOlEDml{j+jzG=iU=FR@eP+->lD+u z@1fGQA~q6tL--i3p$Ry&wm^4rJjXS+fD2?dLK!}7-anOi4@b- zE}CMRpXg6GDY81M%B+2^tL8`FFYS9rrmnVkmE_3?xUD?Yih;HI$_7Rbr>mmwkz;h zYW+-OjaNGeP1aUg^e55W|J{gR|lzv|m6w}_$ z_4)WzQ1d;Svwm|P)th$h%k*2EnHB=70RSh6ak^hPMG?D6w|T~ zI(X9@LGqwgifQ$Fclq#HcNmmhu%8+55fsx(Zxz+)bi3}37Ig6qNvOthWxDzxJUNIN zZ9}SN(Rn+1X<_s?q?nd%2;UbTIaKnLuf!3gloZoaW1pu3#k6`IJw1mi-9E7g6*c-Y z1jV#c)8*I@uw3ZGXk=x@Fj%}OP9b-b{gTDKB4G)bufs0!18>fVX~H6@HMG)38<1jJ z*idLZ#c9_liVVTXYG$oL!l5bMNh}-HqwXUh#kAEej9o(298i#=mrxr69+t4v{&M-W zBq7DL&{IV)hvSQ-Z7e0Hqvu4~^E$90#k5d690c>W$2KZ~?d^xF!ORUQriB(|cvLvE z|Gjz8^@szw*pOn{mR-L(xbXtR6HJ9gF5rn$pUo~mt=ZP%b~+v)#dHEIM%>bOf@pX3z&V;Qm@>MOfNsE z0rK(}ab}w*7G2t#d(2T%aYJM?Yo-?HrZenHL-2BGZY&?~e9#+%?WMyC{=MT^F@)I{ z#e_4ubea1TPF=(7xphI*a>hq9X9Spi>DckkxMxFYIAb4XUsPXm#xW=#VfNI#jbtx7 zqSNbbA;mO^)D+XSI#i%N{MNu-2e13!$&-&CJbwD@#pU_c85Yh(dpUsi&o>6ql1v8L z^L?Ck7By2vnm6i_MmCl?%oj8UI^7td(rC(wHNQSiiVkZKA1y< zJ^KYxOq0}v*UnJ;YZ-I^+mpnw0js4*+pza8uzhV>C2WLkD=fYKKGam@z@*2}NHI;V zh^p-RlM21{4Pem%!S*D8v(^lMp$7_VkNT{BH~_Y9uzN4y4N<8| z^+KQYxKfq+U9D859`t=-6x?6&L>rDj+j!*pLR6~KnyVm1uj@WZyw_Oiny6GI)fw8P7f5*x`8%NwlXNoLAEiC`X51pNGs~|aY&V| z^ka}K6BN@@DUo_A8@Hn}Lr5`gimh>bz3opYf?B1@e0w*box=4%F>SWLkT6@=S<5O_ z9l_NwoQ?Yb*n7WNy^`cUY&jh5a=+c#KX)x_ms*WRE7=+`fQR>d_wwF5NC0W1I9Ne) zHd)CAoWKk@bC*jkhoni)a@T;3MIHht0sIi;!EZqx0vmAxBZvYcGVH{TV+47Uk%zp; zfb;4Ac?*!F&pB1qzxvmw&-pGX2pCGUGwkX=Rln}8s_xTYm99yj%>GpD?eSNQ?cdBu zV`GYG&4Br6CMl+MEn=ibsS3&E@&D3m`Y4U`Xw$M^45%nodeE}8X3r>rmOh*%RD1GV zWV}4xUYI5G>1^Q{=8C1JQ%q|Vc!@x&Ncq)+u37NHi^?g{i%o(|TXDhJn)Y2yzOBEp zVTx&DVET;0N@*#Tbb37e_jdBZjrx6+DW-7zfRqtyd#WW2SnxH%_V46m{k^Ah;9j2Jp<5pD*HfYXf^z_lg7xf1sx*4r_9ha>; ziaj3!F~v0XFBlD0#75e&8OuH2t zrt^3 z3YCG!ZgSbmH7Tv*^LQa47^Hw2El-?TS{5j#n5Ln|ykzwkklr^{Ki|Bb`lgU#8alQq zrh#;|DW<7o^)VB^`cGcaC~3xjMd-))u3%~>A28)-oHQDpudKIa!iBXH%fb9%5+E93 zb{1YoifJ0Kd;@zGDW+BLD(CC=Y@U!}T6KRl8DBBQGCDA$zAjGh|r8x8RLoJG_-_*f9O{4pU4= z<7O$QsqVCo@NMOM4#T{zHpO%_icc}!s5KPj7AKSb%5Hc6^1;K$oL>4`oL>5CySE-+ zzEp{*-x%|_UOxV)w)}Z_aDQv}h4(){z8k(VhC*dcs`Fg$AVV`kG@eW_#dH=~z}qFg za?8UOd(AaXLFr$qo2>suHPjH`Y7`EpnAQlf%E<(r0CcB&C4Nd>sdykYGcQC;F};Xl zW`1{&V!C!bKkTwjISGc(q2|rCEyXkqSMCPuyRPl41X4`bj^|5Scw5E%IvFM|>JDmr z3Av$COw(9BDW(}-R7EuwKxMjev2-!4Q%qA2Q@Yz@n_@cP(yLJ>>2jTE51ixl+7#2o(MW<6)0Iz|&5S~I^MZL}YQcSM^c?v+p zrmX9UT*~XV6x02@{@WW;O!xQxe2m_KatXlAJe`#_Kf4EO_$M2lGAdesJ6X%PMnrZy5k+!X`as>Sq z_Yig(_Rxp>b0>L}3v1~bSC6|LrkK_`SSS4J-&!57^mpiSuMbG@e_nI$C@p3emmpd6 z(Zl_0ZmwvtZwgirKHMip`_}l{hx@d+nrr68?ib^gP44-8+sV#Qem=`Sc-k*k`XErXyv}TiL${n#u0TB7X$o)|~toZT%#ChZKK1k+1 z+=?Xc)J!qG7~-e2&TaiqOag+Y-ge=JO4rKQb%Cf3veV0v zn?}*>&s2T5p%Fgg%j$4Zr2@Xsm=dxCNxl2{iCxkbt}O?_g&P`$F_zm2(+nC_S7Xo0 z@qyUFgvV^F;kIhQE$bLO{%t8mSoML}UR#RkDO^Vx%`LrKZv97#(fOEm{%q{45b@+U z%Ujo3&)U8pEXIY{S0hSImgIw2&w6mNuU>D8X`1&j+?Gu-J(&lzNs|tV19SC7(di10 zg(;?qyYiK9{w6K)8E4+$1+4H^RY9L&vT?6C+49k6=lECnk!c#FFtc<8Gn-oBWM|`E z<(ZpV=N$gE_ita@!GjEer#QWDj#FqN1hLd6?p4lcUr4L2Wq~QC>xA<&gjX=-HtLm0 zF|G7{|9g!wG?ohw6{VPlEr%(lsaQRcy4DBaUHoJ|O|^O`4xdRUVi`i#X5RpiIh)v& zN8|9Zp0`IJ)%<3>Yex!etepE%b??`<8NY-v zr_JQc$oZ1vHm|82rkKX&>R!N}(Ql=pq+UmgX=GESm_~xVF#uy$wNy;%f2~eBkZWMIHAHde^8F(+W;=3l>c>q?lGsaZS&W;MZ!D4Ii+kWZa)T zzr0&g#Q)&o;|F7$Xq94GvDmSM;cHem`mJfj6w|-Q6`!tFIJr8-bTn$k13o6m2Bwcz-wG_MdCYSn2tuSYbgN;zaj{5hVg1d)iPOfx2CQ4 zE+%81IV=ug`xh=7QcO$F^Y4P->Tncl8WBH6dP%E{3tmYkl}a%koi9x)>Ga2hkQI5B z%BPr)X1eC5l~x#Ey-zAg@+*iIHF(u2rlD_>6&Wa)6vluSF#LH*s>%Xn<$!PK4RVk)tk<>L|-|B!A({mqDis=d% z{BEkRe+O9MvAz2Ge+>sIrbT|f^@EGW5ilARKMjn<2d0>=xY!iaLa|$TVno(c-|{Oz zlyG)=dSK%>4aV`haRuLzL9mY& z6MZno=Q*?9-ZZ8CSB?j9x-G?YH=@y9S#s@oXFUx0)BF{fY<`*l?ig5Nr&3IJ<5HZK zS)WUa>F%Zxq&3BKcQ<|U^k*5Xn(D_@rI_yJYQBU#S-lbpoc;!OaT|@>eM#{i0Kh-G z<_|72PwFxT$vcMxSuIVP+>7GKrFb9p;`XO-hC4TWGRf=ha1C3g*R)VA0-ruWuj;qbo_bSWxO`q%} zNpr;7ikr(7FQMPqVT$Q^+zLudIbs+B*hYNqv^`w@tgd&MVp{QOZZO>)0L~HqlsaOv zbs^dDv|U|iPB)w?#k69(90X^#CkBpO*2hifofrO5&PNZ>$$4fVT$SLu_9k3nD=ZDLLgW|!;%YdV>&(vr|M<%>0*lM z*85a${R*DhbJxm>ck%LyO}%>A%v{=!=JK+cD^x|!C4sdTf3!=^*b{A8z~C!9zHAoG zjDdE-G(9p|XXVx4XYYRa=-%_^N8i}}%+XJmPnqxkDj&FbtY|Sd+)J>^2RyTa#asUZG+K<#jkNOz&+J*SU@tqmedhh$ z_|wGc&oynTFvT%DH@7w`+a;1iCiGH1!fcwy#5UO^qyc{0#y1 zAs4;!{Dlb92QKNwm)F)cX*@|0+#T3)jfX**n zVpfzPQq}3}Pcf~BY<{M}-^RBBPM9uRAHvF!etU{(GmdgE)E%sPc)x~ouM@`5YiL~i zB31QsI)BGlGX00i;8IWT{^lDy$%Wj{YxLbZE0&guRMpMbY!>BbDc$XKq^cFoIzEdX z0>b}vt;St8T&a^>-{K8Ec&(Tb_r)v!DS%GJt0GkyDeSd_1nn{PYNRSd$oI+8r4r3c z0VO>Mu0bcf%utc4Ea&EuA``utGurgoDKl?Km10_V)wsgwM2NRhp^rW7$=`@W&L>;js1I-n#wME4Lb@Dr~*{pxs=Rn|J<@Vmj>KelW|w zX*53@+MK|<@-ux2wUZ27fswCKx+XpNm*mBo${%I6e>0oy!49KT=^@NVGx-FrYY`(g zN>xZMkN~YrmYmjZvyJBRosy)7irBz3p;p{&X6n zR3(Ggr6xa!&^5=8XAA4>3cjAbjVY#y0hMApyPWlDl%_OIAHDeT({fRN`}z)2OjEzF zGQ~6w;ZjT^F-kE_^gqfJ)5OAe@d^Sy)3hE>^nBSZ0Uqqe3QbTPu-?XF$3tt2Go50Z zM5J-+`Ue{{XEV|%rgbwiKHUNAMZu|89hhR8`j?+Gz0x$knBLe9jG_JI&61YBrkJ*k z=M>W|Skk<`VgxXOFZDmI$8twVDW-E%+_MPPvcVKfTF8F;-Z$}GTOis^hZGF-;Hy*%;6e-4Q!?D8s001{8gYY&Tob2u#T zO?VDip^~(5!HTbVVRgN+LXGQi)mpQ$LLs_kyh0(xw3(d+Z=t0-aN%MSbhk`&is{$7 zLgN(E7K6qLz4{c>G)P|X_aD{Mxs-N%D`hcxoqW{V%qWf>QYS8 zP-DWk`U^haw#*mIc49e9;q|2cT7rh2orTwt zVwwgl-@sl)ifPrm%K5rID=DOyR^4As##c-+joov;SNRnp5^aiUMKdX;6>ZM+TGsaO zJpAZK(|%~&hTXsiW?>TUFw#y`q`Y#jVmX6weV;;qEPhH0dm!(xi* zXxuEtG}WE<5x%XQ&taI?)uxz^M)4`88@2wpq?ksC#*+!AnD%!dW~n500aHwy{*}7v zvTu=2!W7eHfU8kBm||KFz$(XHH%x1c0j%L4bmKY0c1m5Tcp$|z4O1TR)b~)^(S;P# zwPTaYRSSj>hvv<-EyXnTs@`=)3qWhEY#Bm|>Dux9`5K-fF~3fRi3|2cuD8By=@ip6 zR!@p)s;UeIK9QPuD|{^8U*8Zu$6t0>-)PRCY*S1Jd^*o>>E}URDW+*4zJ)L;rq`dM z*no^V6vuzmYS=YSm-~7v7eiEkhZFP6C|}dxd=@fLuvdR15tG`{oxpc+4c7<0rsJUDfi z1>;-P64fO~PwuDMM*^I?zZ%Y+O)+hNb!uheTBc-S7IAn;F%1CN6w^eSA2>#94G!CF z(P0IZNFVYeKpLQ#Vmi^tE1tY#is?FH*(R7`8eyov#H!VU7tpP1Ah@9GO*afFrhyro zVj4)0V!HC#yBcstAjLFwQpM zn2zt4$CGJ#o8LGtzNu17`=Rls-@XT9BpcVLSDs>;IGk^nB*k=$$@VXmkYbt!WJlsP zrI@y(R#(j4-pEbt-F@nhaf<1MN15%HI?==Z>4&}QGxb$|a={eS1jyO|R_a)n`_9+< zo_kH=zFd0YUp_01*Xnob?=mO%w1agFVb%52j~I$PMeXS4ZfJR(a=xBZ{c!&?X@DKMF+eWYk5BC@Q zp@;i&!dSDIy1zKb936SgL%mGxFw{{|2DmnJ9pk-xZ@YbGHH`qQ_H%R^p!jmjdGliR(Ij&6MW zqszxH9=`bT%}n%dO!u*eDW>)MI`rZGG&}Lb{q?b}FvYZC^Xj(2>X-wq>(X8PaDPT+ z`QiRt@1~^xHbN`Qw)k*=%0+wFk5gzi;~%Gl5BEvZzBS&PBCy}e+%G>2mK4((JvtQV zC|B`kyfIM0njoles1(!Tu=Pxk-P=Km>9B`a@pyllEj}&1h7{AGVC8i0Q%vic>Er!K zfYuiU^5DdO(Qiw`$NSR|^vuSknAU6(lJ1C2s$YPvs(tArM3hfDh?o^W-k&%xpIBz^ zD6vQMxFn&jeZ0R5AMdMKGB5C2=e(8Y(_Q#@Uk_fFnt!~{cm3SErkI{W1B_{f-S5Hp+H*02QE6T7t0>sZS3mgj zjcZ3gHAmYjAFnp2m}bV7jC>b+_NR3|SFb(;HeST+e7K*3!0{9C%CFwh{F{e z(K@i{aZ01bxDflQ;OiD+;PF?b(#2}HxZ3N)|7_aDz8crU!eYF?98;`254DSZ^?FlG z(<&RoZP^sllX*a!H0{(lFxORvL3(5&UlqgcQcTah!3$X7t*)Uy!(`)Lak6EfVw#{T z%=DRB;RI7m1K#CpdK&lY@UOj?VpQ$6t8aT&f%v7wNNUcvXO}(gx;_#Vt+9u=cCoq^_y8Gml7f(NV zargQ7Q^My*U)_EA{kM+ZC@vNKh~t`zdNqs}nDYZ0cn>jkKE1`j7aCLP{ARpsM+$40 zVw%L7o?y6#J<|w~HB)*s63jYl4%`PV85)?sd}ztx7T7$I+}Khm~_bs_reDS}a8~ z|1NUAWD4drrBX~|b9FD^&i7H87h0t1*wzL9c=RrNLIpDJonDn<8u_<324K6ZmZ~YH zRa3mHQCguN{P?`q4M+A#L8X{hJey-&C~n`9SijVEm|_~Z3XZ*e(a<@+@nu7lMY?qs zepjWKMh4X?@8-#E2OHH&r;Kj07A$_1Vj8*aS<{eWS~bNry_~nD8;W?HH}3b|RVk(w ziyccCGPZQH*ktA}@7@VC_$&R6g(;>%ej2l0p2HTdp83s1cI)<4A6{BtZ0O$l`A$+b zd%ngWCt>)N##g-+POeTd9gSM?fR71PgHNX(yl)eddA`6Krrh!BAxeA^k zS{CpZTb8ya%2a2rX-qK<{L1%_2uJ!t6_M=ut^wGzj#P?i7@z0Ee4ASM{t>me0#I`yafFBkBR+$W>_SX2J#$zb!uBs*Hl&!Ap6BZWxH=q#oknb~N%)ON zm#|){SCL|RmddA?j%FI~&PJIhewN%HGjo^~Sr8q67Q{Y`KR18vm(Tt+eXz^U&5#ut z`kvh2jXQ$O z@YfX6ra4~V=u62J(#O{|UF);;Kx)iDD>*$4-{w{)5&IP`D@-x1cxzlwc0(FpP_BQ5 z|92t1x@JIa zRElZCX4k@o3(FO}w5Cl*3~j{1De&EMi-_pj*6H zsyag5Y?ikZ5M9CpVs9=%tGC?!X88Q^C#{%bS}hGeIK!L!mU6@}1UdI6WK07rGG1(_ zRf=iFr@6sw&M*FyI%2ZUO@p%=vujxlc>R&~luvrJEw$+W(Hrl6Mx~fmY?p)J?DoW< z(p6?mq|3}@9tFK0FD$Ng*O{v#?3P#!l9gE@zzYn*-NG+kV0sEv3#)6*r6&B)Qg6T) zJ9$$-JyzrgMCLu)f-rRnE%+nzGTQyi&+fi3Ux{G|Syn%{=UjRdNv;x(qr&oT?Zu17 z6vB_2@1w$!gVfh768pkCQQ=uscpepAU?G18I#wb{sgg-bl~7Wuq>@r4mXs>Fq*Mte zrAjg>Ria60DBBRqHiWVbp=?7a+Yrh>85xY(ps95Xv@$vh73J_MvS1P_}(2+dh@dicDY|F4aOf3Ez; zFYW$@Xr%H*@_Vgcwfwx~<^Jj2*N(mldAaA7SM-aP60PlvvksWMRnGDv53ksp-u?Y+ zeB()QnP0Ie*4e^l$hOX3w-!Z>4}MKQ^VyCr$%!N5?<(f&x>@9;Ii^`)jT0JpaSOi= zS>UL7f*ZpDqM-U0D#1;};$T;~=IjDv|$3=O+du@!QB9W-YtNq^YO8|rX=ES;jH!b&dpZED_e^E`b$+B)(Sljnw{uR1l zTTXiEuS^b~%o1+`*XuZ$#nF9p{5OA2oH&`KDm3R8mTPb8a3E|+3Ej1$@kTolvAF^{3Z%I4KKWP?UCJIPy(pmkKmdtU9ap| ziy+@Dkl*3@8U*ZO>0ad$Z4um_f{n>3*>UtG?=@R8a31?Ss;dH2@)Ul{LLZXCUN-t(H zxoNq!yT=n;zLfpoJ(b@MysRyEWgKvD_glN&Y;VRP*uJXHlcx%|d=&X>MFG()ZVchxtp44w#uKR9PH2BTjzThYX#4X2wk7T$BF!8Mg3pvMk&z}b)B%-YZ5<$4oq?1 z=w467Jil9Rv0mK!P!?7!;P}R16tZ8y$2-a(8je=fASHgw#~a7Ivhl7wF~;A1gSD*@ z&}78;!gn6s`|$GnPab`A`RrzE0yqPo>298#;^a2rd=)t_J~M`-zkK}B-H-1*|3SIJ zxL(c?_D1Bb-51{fJpBgr|NC5Bpk>2<`|(GYQx2DG;gw+YeGBhO76Oe{7oO5dxn{^d zWsFRXJ7SkCbRJI@-htzdV@>1ztz_ZtS1&wbF(=teR8WrROJu(xA2aa_D- zE5-dx{GraS8;Y(G-&oj#Ke@5{ko6LKT&MI^^Ud!RHP1$JG&18zbWb_GQyT9nuQfcs z=`wRlQ&v738ei+Qx_|~8mff&ZMN{8HTDKlIO7N!lW>@IDPwzc@e)-)e-+S@#y&wJh zvnS7=|Lc!mJbUu=$A97Bi|_x|lLrr9JbzEUQ~VhY0`#R1zIfyM(VOEUdH;={+|W~= ztAT5~|NYwTw^t0l%;3>4c1Xc4Ec?2As~~75fy}2UM>n)b`_}Grzw_wc{mVz?a-*c0 zV`q5h&JA~ZzJrg-XgoXgBKXFxgkUzS=1yHTSBtG(bR?0;Y`zG$4O`h%iSJYnSg+B9 z(P-6#<-XGxA+Ud95);Pbi3y9xW6RV(-hY*tuoGj#>}rYqCt@=;V=O~r#+W?BW+=2) z%Z91FoQj`>?onNniOt+S;O8UlE7!zc6^%;q&yGI$N>P2Ed4D&qj_J=eHD|m3@EV^= z;I@_Cv}=oY!oPuuS*kKMG-~^_@}1r8`Mn=r>Lc}^WKrJw;0rfCcl4PLernRlD8=Wp z!_n>^{^suMQsky%(2{pFeqa_wl`tOE4313jXD{d4zxQ?GOI>x62r#BK`gA zAMn#V`W{IM-R~#mFMavbXHS0by`cV7{_+D_>fgWpUb%uiE)`9|16@$UM%jV~AMp40 z+chZ2{iyKe2mCt)u1U;=#Z?yi>gr_IfnN`r5Vf#4NDGU@;MN0`z!E~UDnC2=@UF%IN&yEhwK%A9 zkcysHcpNk#YGHAZ78ZxS!+}Zwhp9y2KqY{~KEwe^0S7L%IH+=viXN1B95f+nVR4Wa z7Kamu1C;;{Q;EWXN&ttG5CB0UXXl9H10%;8Kf&DhH|PnV-i&6QULt2Weq( zxNta73E(i5C>*E+aJUF@fKtGLODztnyw(?+Pi_?ZUAjD|Z~B+|gaIEL#C0$Q59HV& zj)ST(>PJ3Du*sj)V^COqX|74k@i{^j*BKq`A&Na?Lx@_?2)@Nccqta4bY*;LE~#r^ zF2OaxC3OvylE8PuQkWyI`&6Ixr1n$}Qi%g>d})5WOPeHWK|=@*(iM%tma%kYad5u$ zTu0&HeCbjr!U0MF2QDQhWo@f+kV+P@#X%FI78VC-VR4WRA;?e(tOwZ=x(@mb9AJxsCPXbP4${Kn;C$)w+}+~feCfH4!h!u@jRTYd4qR$+P~{+%IKUPMO^8}p z9HfQC!THkVfxpGU`O?HI7kbNgY%`!PZ}%^ z&X=C+C>+=i);K^Z;J~F82UQMIi34nL(1fUk#X(wF9Gov*e#BvMaK7|hN8!MJu*LyO z0S7L%IH+=vN*rK|gC;~REDqAb;^2Jg^0O6-gY%{5ItmB&gEbCN3OI17#X*&WRN??z z95f+nVR4Wa76<1`mmlg_9Govb*HJjIAFOeJQow;rEe@)@))!kxFtER&%Y*u+f2mIx zuwyJH(-b@qUs?>NsxivXZZn&@N&KL&`qEsJm}6gB71tT%A4s|Llp#bdXax2lYYUQ} zy`VyvX1v~|a7pzU<`VQFxup8ir9`}gdM}NoFh^XMn3OqHB{2ZeCg7M*$Z=t!om5{rA~wclmZT1YH?8IfP*-|76(m;T38&Ug~h@7(&eXj76<1` z&vj5Il#&PsCgX|P4fqfyWLDx|@@ZMIsvHWmR z&;cB{)Z(DZK`L>8Ee@IxwXiry3yXvErOVGN?Rs#&^jt^bz<#jC0ZIV}F10wQa*#?K zV2gt$L@g{1(!%24eChIoQj3H0rRO>d2lj(C4p0g>aH+*XmDl<*hXe!bRb3v`H~mX} z!hj8*ECo~WKy0Nf1XW{{pUomq;Us=gSZyWOB<9#ws^Th(%$t#2mk0HY>{8#zF4NDF z$?U6w(KwibDmzb`k{t@G>|AJMSH)EpIrkXZb$L+V$S(Db>~ef!$>j8;3Q%@BO;y?X z*rQ~J!YVr#8rfBGl|{}vMs{5u)HkwAeIvUZnOIagF{uKSola0yc0TGT*`ct?&V@#H zRa|9}^No>Rmk0HY>{8#zF2^JmRZdB&0A;6BQ^VkzEy6S>#M(WY^_E zeIvWnH?qsoh((o?kt#sh>7-O;=Oc}h9SW=LTxeuh#VM=jW?0pI*v; zzPQwHr}7_||NiyeAAWB4O?*H#g+#ntGQZq?{^;R{^%2$o`&oWO^?!f%ga7NZ^%2!) zKKS(iK1JYD1YR)$E4K9i^V=nT%=pZ5eiK=e8BT8_Z^GNlo9Uy;n@w$SlU+;mwJ#}u z>C0zLmz2Ncm+1w{?pf(QHqjM9gkweClSFZn^a)FkHE<>U@#6CpgyRl;n7 zlJY9M)Hky0@+v#uNQh*7A)yOUcD{}fG5IE8G(k~em7QxE*;Vn&n|z;SpG;aH+*Xm4j4rpJZ{+gs6qZL0VWG_-d-o zHD67c5`_a@R>6AUYbA{XlmZT1YH?8IAeG!FSsXMWYGHAZ78VD-nyOOs)s!hwIM8Jk z;K0{P8V4u^9JtitpvplixkIoxXhPJ&;vg+74tyU`rKS?l4}2qG>L~rdR|*;jCF7Xh+0@2q=m(S z?<}g+d}(1y6b^iCQE}jF2aN-i0uEeiaZu$TmE1X495f+nVR4Wa76-n+s8aIaH+*Xm4j4r|6p;@gs6qZL0VWG_%5SL&6gRbMB%{K85IYx<1N82Egl%Y*u+f2mIx@MVp-4yK@`-Sbb@( zNzCy%LKW8;9qb{BeMm!yTF?l-#YA{1^IN)_K2}senM8Ee@Ix zwXiry3yXvErRB+F#eqC$SP#yZF0DjjSPxJNIB==OL6w74;s9G5G$CqXagY`k2j@%6 zlgWw$dCq`?^QB9x2nQ$y9Jtitpvpliaeyrjnh>?HI7kbNgY%{3$z;WWJZHec`O>9T zgaecU4qR$+P~{+%IKUPMO^8}p9HfQC!THkiWU}Hwo-^R!eCg6E!U0MF2QIZZsB(}> z9AJxsCPXbP4${Kn;CyL$GFfpT&lzxVzI167;Q*z81D9GHRC%p0wvJ$6`=ZN(`lf%W zPZ+T4EGE+wR9{*Qrm8Xe4eU0vsZ+i*6jooF3yC@QrB!jA(emJMlA51PimPY{Q41P@ zeaPB^iRx2P>ZeA5sDiT-V~D%0Vh|fGrN15Vf#4NDGUD^QGm< zWR=?a((+_dd?)o}GAsogl+Rp!Y3YM_l*KHY+2WuHfP)Y$4w_KUnB`HU-4|2>`$ANM z>?SIK^}u^uuLmdv9JrL2lzpMfK`L>8Ee@IxwXiry3&L6?a=x@YnXK!<`O@-avd%pF z!5RlB1su54;-JbwDsg}<4w?|PusBEyi-Yr}<;i5l!THkiWU}JGez3*?N&yEhwK%Bq zT3_anVBqzm%Y*u+f2mIxu;G)XU<#_Ol!c&bpsnO7oWy4X3We2Hav?Ftwo(;WS!CXf z?7BRtZ)BJHMs}HgmW&Fj>@xYP2FlLUreuf0Dmxb%*;R3sMb14&c3mFSH?m88BfA`* zSTZW8vdiH~)j-+#*rQ~J!YVr#8rfBGl|{}vMs{5u)HkwAeIvUZnOHI^sItp}N!38v z`KY60hr%j57aG}Bag{~RH%4|{9@ICoOMN4|9FtfwDyXu{AxYIh+4*>*WQW2kI~N++ zRdJO?&NN1LT^`govP*p z^~t3CXL&ODKVRQ{_M;a+ep;S9{=xO#-@88i{`G60{`q5v!0xZ^er9_7R^soL;IWVH zesuY?#Jj$H{Nay}ZhX7^`^Cc-KUPoSzWA5mu^b0E{M@adlZ0Jg+kN%u%TvOxsbUEW z{QN~4knj(GbN91TwGzzr#gk`AOu}!y_1;I9KP>NS-~aXR{OAJoB+v?%)StY~B_jm7Rng%!^cLSqOd#+# z!qQT1J7A8ul$d1yTWS-J!n~gBPeT;mrOhA!$t}f1fb}2*yB;*5hS@phdyP8RR08XP z?=?&vwI2AcLazrXh4sLtc0H(akV-BiEDo9wwXiry3tDrs!s!+R);yH}4s?rQ>nI%f zPD0}VrGNvMS{zh4NF@hQi-RUaEi4Yw!s5V(**e!$0yyw-*3?lr@Of0@0HuHfms%WD zIY=dkQHz5nL@g{1(!%1v2iqzmpKMKu(vx)91wF}UQ;h?Z0uEeiaZu$Tl^jeh4w?|P zusBEyivu5WtJHkTH6;oMI`{$(d`{IkKq=tBr4|QO4pPY>)#9KDQ45QMw6HkvfwxM{ zCtg#caG*ml;J{~AjRTYd4qR$+P~{+%99S(5nh>?HI7kbN10Q~?)O`9iB?<>R5CaZ; ze$_ZYDd51R76(-hQpw@f;-Cpp3yXuausHBRxJu0@VN;@Tpu;iXz-L*F1C#;|TxxMp z<+Z-pe1d`fE?pkfH~mX}!hjF<;yRdu2jV)5_d3ep5v53(WHt1O*QD+JbqYzbWleJ6Zb2kU`X zdf6(l9=O!vpvpliae$3(ERWl!5*KEt5@-n77t&%P01nQVmiKmbr#N4FuA^{ZKUnF; zQcrdZ;J~F82UQL@hy!eK(1fUk#X(wF9GovL@9ioM&X<<=c5>Fnmvyin*gMwiflDn8 zsvM*e2iW4E2~i7+gS4Hi`~IgP3JC}2ORM*Gb+@p0 ztoH?%+I^wQVU>#mZ1;sGL@n&TkQR1dIA2=c+tqzRo-^zV=S!>ib`=Nqjx`QkYH?8I zAeA`476(m;T38&Ug~h@7((>M};y|7=;NW~|_1>=Hz}~UOflDn8s=V44v2_Fk`_j5R zsBik0`h)>H#$qx}!2|K7#bBx$=u5MyD}vU0X(+6|G#3(c>`SZSI-}*a+9b8}oeUvr zK_jrwP+O4v>;)Bq@uj(>`c88R`qErded$sn-a)mMSPFB*b%{xtQ&kR9W%ttdy`4Ch zm0)p@t}G7nfkKd>62M_9Q8-Wu;J|+Hv>5n)UcI-IZzWP{ao|3PN0~%%fQ?Ql57Tg= z0CGaGIA}ukA?KHKm?DHr00-ww&vnp;EG5x;fKpfwTxxMp)NnS50PW#?&AvO{5&oePcZs<_G`-w=%Kx;&_F zWS9CzcKH;+lF63{RWKSxQ&8_4`4fVY9SW=LTxeuh#Z?yhZeV2B{8#zE=MDlj0&pkaxhXgPi6*5%{A+U`5cv|Ke!(CB4ayJ}*xw)qBm> z^U9k`io$A$Phb81v3ubgF?{P^ytVt%-6x;Cc>2kUyOVKve)PY+wfn=j-hbok*FOE{ zQw%;`1D~#ePuIYwYv7Oj8rc24YZTo1*PcIr_~7x;XXk%QP$lzS=B9C~Zsoz?fAaRN zukOC^$@9y*<+mR!{uXrW zPwc+*!+Vb&esu4}<2f{mG+0p;!6*HFCq0>@2^h8NVfBf?4#Z z2lD&iD)_w<^INVK9lv)D;SR@9^Y;X@veaX_U@ZUHzV*jYxYrlYwoKJ4Y_}L({bOnp}pL1oP>8LJG%P^Rt#@L zaL{vM74B3gz2Uxa`((ka^e8>Y z-sIAV4?M@4Z7z4YK?u)rHM;CHPTh}AjZ>R#i@OB-Mz6-LifV2R#{tF{Ed|;1u3Jtp zA(S{h8W5!Eo_diQ&1@n;Fd1jb66v|{YHr%TWjaa!a`)fZ zbye*zzfmnqd%k1wTcT}%e^Iu}H+DaB^wVa$Y`?d0JXZ^BdG;oFXdibwcuvf0Q^`7< z_tge#o+C$R-#*6yV zKWpoJo_%0uH4DL99Aajh?5#lNrE@^{)y#^=AfhBb&;Gn`$jyFDQ#o0mXJ3tOB0(@2 z7j;XvTr`cu#%(ZP;si1|TYM7OV!G4tmkuY}Z87(`exK|-&w(wb{=F?eIlk30soZV@ zUje)_#h&MCi^YGK#*TcRlcCl3vOHJh^PE&0Yrdml6kC>UU&jwQV^Ort1Wf){(+Z#%VRWi3EN!PLIVP zHr+SPZnD6a_E^8qa~jxUj*8^&c}|BaL(7P92OF>sjJ@+8P6Jy^LwZ|$x?jcf7Q@@c zbG60dKk%>NJUXUmv%;0p0WZN$@_;X*IMl z|G_l0uadj@-#8J;J9&&8eNF59@>yD<#J zaykd}PBpXQF-T9zwzvbRzJKXXgxX%qj zd!DNewmb(opDj=EHoqotDP>u?d!9Sh~rK_6>BGD0A2ACu8S)p0jFn6A6OJ$ZT)VrQ7!RJQ`U4p64vE#T=H)+2XV9wwU|e z0>6D{au(QP>fhVqv-VlI6hY9B5w65WnS77={*zMUz(Up4&ozHW=-4=778>Z3o z9N1!x80vY>KJac{IW6)vNj&A9PAIWv0^m|5LZFc)WW=dbvSmto8KJQvl>ipL;rvTXr3&@K1C^pnWH(%kvU zs75!DAefBKH_TdsjoTpqw)Nj$+kIKZZMq#8V~)dp^T>tEXrGE(mW?~zFef|DbzqJ; zSa`toc6-d7UJcjPAd3?*4KO-B9_zL>Uc@?eZd!V67hqjYvE}+fz%_is?O<_>qZ1w1 zODGt#uB+`82ZBSpPtK3Wd&AF%wqKSYFXPXp4foaZM%=#)a6jZ8`AWo?UTzvOs@)X_ zf(0i{@28=CncVUqbk|$9Z27f{k)Yb$Sb}IO&Z;NS&F)4`KRZ0pj`&ATl)&yvHUe^j z{A{$3xh-34`d&XBZ}0wBCqrO)^*GUdw6CE1W!N}J^u5bX$Z<8j;zo!t+4d+At3J28 z_B%&!+`iU)7i>COkA8Ht_7iek4RInvFd@f>+)qb*ZGq&aw{*vWedfFzUgI7QR|9Hg zzGW|&kAUmIK6CPrfa~@-xr2o*COhD|+Gp`9D4|K<3mtE;&FzJR{iMpiZGBtLh3>mhI6DS6X71g2N>5X?u3Y_;{{Rkc(7C?wOi^Al1{ zub+@?dz1)QtsvK3Y|eeJpR8RlA=MBkGDH&s=jDEe6I{FIHnNM}(hY%q<~&{At0+OP z!Z_j0tA^&}wTvV45pW&YXHF&-aJ}6=bEg}`4!ExNS-gsAfbd>uxbpA6i&%%g&`|BN zJ)7aFP=7H@)6zs0`Lu;GWj+g%If#rr}-HNg@0k$!0#;Fc!`tQ?|m z-u1o^M6nW2f=A1geFI`GtCn-2yH4Xfo=lmqn2PE14@)qF^=f zYF_HJJX$ku3|BB2^#mMC5KTtg?lu6`Odeu(-}a}3ARLyAm+p)!H@-d6lNaPp2|++C zEkQIHZA0A6&LNXA#SPR49terW=?XY(k9UDeEUcDUZe&>CKI7%y+Gr8a)hZjF1EYNM zYH}=)K#9Q~-x+J1A=;JVIdp$Ym@6^IOQ4nxHh>z;W59E@#D?bp=MvaznbicY=KKe& z3OeKO!3@sT>~cy74h|E$J|&n{YfU$DLSVn^r(k*;ZFsMz-GKK%r<9;phx2}jLYdx1 z8zHKx<&+Q%RHocd+mE9g*&cMy>nCA)8*TWnhBo9snufNW?d5;tL}cH>AOsd4)d!o@ z!o3Sx2!qu)s@uNTPeyS61EH`I8KUVpOU7RCLFe~8%^lS*|4V=W10k`zFzMcCo7^sj z=Drh98a{6DEeyh9B{D=4(mogW%dl~WWcNQ18jDZ&WffC$3%4~Ef?_pJ_tNQ>DR8$| z5Dv?79hl`32uoav4i>M-K>Pb2hGfmwF!g3R(yj}mS9a(;T`)D-KynCG_HhH$LrU3@Gb~KTt(am`lZCVx&rPGQ7*x^ zusikRuN>HU5}rPL@_W%w1Ma-mQ?BO5Upd^VAA(~EqNzA*-hHScHv+zVRpd=CgvJuH zC0PZs3!oAntF^3JX3O-weqRK>5QNA|WQgWtyXn<3Y@Dpwr}7g5p|ZR%+4finmen;O zbKmPHB=ChGTvj4OFd+*8v-)K?WI}>p13}0vv2>iE!rP05U|B8O&7E$U0_O`sm@Lb6 zV4u&j%juR6+|&Ubf9mlY?9K^sEg3wnH_mO^SUo&@de~5Ake4(@Y z@mD+v#wu0z=S@#SH(w8SbKiJh2x4Q!5=2vR(J#S9z_<895Hd^5mVCX)e4!FHtDz*@ zAH!NU%?upRqko11p|cVhg83-nvtI2DkQOGHQtt~v2rVy6wmnJ^t*y?fuz7{P5QNc6 zWQZnY-+FjIXg(7-yQZ|g*_~Gbp|r%(@dqsL3zZ;Rjjhofx@n(z#AHu+t^@nbU#SAF zPhTn5*+OKvROkwGXeFKd12D+(Z0Rz66OkhAqcOP$Pi7)Y10>yg){Ma z21UTC;oO>o4$*Ds|-GH}n4c)LpnlKW@5!|nQ5OFRi~ktqAp zMrO5ny`uX`gm1X9p`x)bL5JJ*192=tG!<>z+wz5!P#dj4;tLJ8>%%QETar#7@r6pG z^~i3&Ei&x5d!gZWJp(5)MDx)$y?W4%pfA5Ia`!^R?Rqr!!lc{dPScMNVK)0aEhQLC zNHxTX4AF$N?QzSW)AAiMS^gW@a67Qioan;&LZx;Ks-_j>PS@|Pi0i;UbE=Dg>-L$s z8X)q8h7vt%^*u$T;Hzm_6twW+e4zotW?8PiFH~y(5pey$`$7;O zOS}nAz7YFDTViBwcOsA%cP}&?R}&m@ALy6kebZZm;SNzCO?lm~Vus^te#MhuPBLX* z!e?#07t&pCScmQ#*>GHqZ!AGH6&u4_E`RuHI)_Sn|5SH?$Xa5yB!5HZ3oQiKYMCw5 z_xkDZ_d)~2*GgoF=3~3*)iNBibKds85JcJX!lc{dyy*)G!>`E~IgT!G9xUP2DavfpaJ`{IIwB^po`$7;OOS}orz!3XFTViB2eS@ZR zg1mTNXs9MQ;y%zX!}hn+z{(-Y#eX9khI;Z9Pl89wlzj=GC0Ea_D-_+&hW#1n1n&z$ z5Up5(Xe!#aw_B)$=nL)J2joSpxA{o{*VQgt zt^;3a|BBvbO_S9BUTA>$SmI4^E{50_DlxJepH#McJveH-#Jn#Aak3)rBmHs~_uciz z@JfUWzLD+grL%Yv3`eT$;nQ%-ZP5KB!Z#)~x488Tm}1lMX{xczIG891IkZ+aoVRw6?%A0@e1K>lWmU@ zW~=3Z3a*>|ou)~%$xjA|vz5pYO-TE^+%I1Ob=PzUUd2hh#uiJ*IWD|cQDSVhJi3;B z=1${f-`a5z*MWUbb8QSK?K5)+*PHGt?Az%90%>WiLtp5mX`3TeUJulZBBhR!_k|#M zmgPF|g-#&pQU@1XfDM+QzZZfyS>jD_E{50_S_qcadVP!?uV3H6d!dtRf+OxD{gUMr z?lA+~eIbxM@P#0VmUt4}B2)GymR3u}wA>@z_4NXT`fw|jAef30S*x4NjoN(K znex8SX<&MFo(iAvXDHFO$aPbWs<06%c_-EFI^#@V?MO=&hFV z<4%+H)Hr=aT-PUCmg~SipPp?Pw5gFh1ogkEA0W7v<~sC+PB;9nX}gESIX}EF1mUzS z*Adq33+YAR(yO1gw`}7J4G=d=ya~?J5c@(4v9nsf5O%zNsRh0e#LtSj5A;ikq1B_3 zw|hMxW1@omdm#v@C7uNLlPUWWR%@#-q`O`}5rHpsryAc_f@muCOH;Az$~3(xC1*An zHqF%l5x2x_>0AC$QW>4kH(hk0PBS~ zS{;IHxhnGaLJ&7gya~?55c@(UcGl{(z1_7yUi>#Qh@Ta4ALy47L#yRNv^+Urt@fLN+1p01>xX z6#4aX_KB>-+*&;u(G5@4WDV&JH^F4o6L2g+G#PMD-97e3KjR68`DV{_3rv%bkt$NyaU}PWAqU15jlLj ze_#TA59jrrH0P>dpfcrNB51XyppmOW_q=`*e6EcF!f1v3N7K+g-}dsqac;=xarZwE zS&NVA`=wkPLkX_cnu^9z-S)kHGJ^Xbh_98%5KYHL>nV-lb0g@fyCdG7zyE_;g=ZN0Mt}C?U3b?j)p# ztC5T zS){~4^7lUwAB%5LN*^_jp?B;{jI5U0Z``1$j@K{w;9J;5J?Tc=NBX60e>=H9M7ad_ zKNrC%mnR`r_HFCiIwR_?*H1+7E$kvV<*H$#smQLI7d}=V_JvFq;RLMz?ff1hYl+#? zxg`9zu+pfxDOzUB^u2yMyf3te_*#h!em+X0YP9+pK4dFIS76Q;+C!8rFHEvMN~6Ok zWV4^-e4#zW*-B)HCZri(dM^uSUdhSAS=dbT+n*Lz&eH86(w0~{PK)8}MX8-|_A0(A z6;NiMEZ{n@&s5vn=lyLsF1K6=?%`@=47jdGWQ}#?3+->WZS$faSL6%rZ&$l)xsI?t zyBhSW`sxtW#}V2?d@S)MI8Q@(Ayitlc24Vu@MWP^Cu_a<-WS^6t|mC*KGH82y&N8* z36P4Tx z?IE(3m@P?bkbDd)jn=~$c>=OXnztH;9dCLezE&bbG#~97>Xv(?8QM4@^PQ3Rg&@k7 z7be{v?GtjBFjwdcL7c5bhG;@gyIxl{uc-RgQOle1_8B5=iKXMr7v2|I2(i^NTiogT zz2$GS_7Gdkavj*`6{=h?p@Fx;$%hK2l}PN%90z~)+G>(dx&a}1oyts zP=BH%o&+N_!~{3ZzQ-DZXlbrPUuYqE)*{zevKopxGX8zu2aXyqe(wwIs|k*{5A@4^znYswX?JOo2oCQHLEtR$ zg&2-Z*_ZHH;?%X=2Hj5#Y->WJQ>S|gy5H9e=vabiDmK57E~ae0U_3I<2^*UwPk3qgFXM22WS;F)yG&T57a*&UHv<$WQDvgL(Iw@3Sg+$G=K z_xcI(`RMl$XDg8*nvjhjk(a-FHE)Y#e&^lg?K4E$5=+NvF}yESLTt6RM$6K1r(34L zM&#K;Y%R-mV4q7+tq#t%*x(i#0oL`Htho+-p%Oi7k?U>#&PuMUUAA0DSnt;wplbR$ z#7!p2y%*X;d@S)MI2%Fi3zZmIs~@OGEiT>k2%;5B5KYC|k~?|e%OE9sGG*TMLS!v5Taua~ z^Mw|IYqd3jVQ1-=l(*GgoF=HsHSsD6eMT$iRceMIdi1fpztVY2P95N4}OzAN;F zAkJ1ILogvF&{oTf=$GM;ISOuAAkvmtI?i$7eW4O!t0hItm~p4;_e8{XV4pcHM!@we zvd=tXERy$yAc&U6I`oB3;efmd?3Fo10oTCLub+tEy$}S^iY17q0&H(LyBjAX^{V`2Kx8czMNZ0@D^y}@HSS8I>yPSoG(yKSn%=FVT1fnvC`%=x!ztnT){afk;|x*Es8`_a7D_Xf+Hg_ZcJH^gq1+0Fko{&w(vI zZ$E%u<~g~_S;;d5$WlCqK2HgZ)jDo1@m%`65}Y9*mf<JSFs13+skYf&H$>JMeiR`c=Stpi@c!tc9zDNe4H*mX_B95+-WL`#cZ~i+u*} zCR6SuB9>g@Hyi}r&3eQm=g0dz7xg?F@*hnD#NO!TKf!ZpKGUlq|7{B*WwDWxOq1fnOR#Y=((hrxWYi0zSDXxrYN`I#g*WPZHQa{>{w*sgJQQ|I%P%1!&wuxs4s`t1?%T+hRX zXK#y7N@T3YjcTL^>$YDOC^6K|PdkA?Sc>P!=P8vB!ug7Po)ZXsWq6KoZXb4+pxkx` z;kEY=)8F|4WO&yr3fqG^4-?mO5 zA{LujodVR~^OQDq=!Qiy{Up*i)NYs0a{^JZVhN(TIOKD0#MTBtg2@OXV+n}awkVOY zdgfrWU(?!j&H+6MB4cR@g2^b6vAQKVL=82qxVOa+8H?>2XEF6YPl<@tSjf$hTOU4n zzj(C0aBN84!l51isOhO#M7z;m_1hUW<9 z(?y)O`8Cb0Y43SXAdVIL4V+3c_IXMutHzq%?DOED@nm?P2clU8yhl2veRtgOd4Rn` zluh9C9M=;q`wTo-s@%_8-?nt?7|YfaHr0~5=Q)8eS0Vq=G_;Si4ZlUnws9hoZ(Ao2 z`HDRTldjY&_!9f7b?MnKV5aN!)8xNxoj~-fSb|_KO8lz@Pcyxp>GE#0oXM2Ad!CaZ z0+#fYZHp2Cs|WDcFpXsz+$_`sYin?vDp@LpX>KR zaL)q~uME$DEgsru;fDXf$xN??=X(5AJcmBdaHr)zOnhy-%V}w}U~Tw!Q#5vjbKCwd z;k?Zs^7lLtuZsN!&T|?2JPRSK8h!)zyMB%MZ(Ao2wJP8}(kT~R3VyTW1`=l4-RA!~ zfgo1wGjKPVaxamrJ=%0cxj5s=lMJ4VbTdi zxccJ9Pd>VQG)B??-h09APKj*w^SjU9{qWJf=g*IRdiS-XuReP6;rqXejjjf5ndY76 zww_~=+d$EjNLDSsY(bJOr`z3s>9DOQ*w4=}y?lD?!8Bkj^6xpPyWrP zH^2CoCc>{hfBx{nr3Vg}2t24Ngy(>9!C8w_Bjw?BHCFic> z!V2LSJa$4H`#MgDV<*J16XMtjaqNURc0wFGAbj-9~?F*qRx-^vLwI3Wfn#NdP& zoDhQ(VsJvZ!S_yxy%S>ZgxLFjoDh2_#NG+9cS7u)5PK(t8|uUfapHtHaYCFpAx?bH zPKXmH#EBE)#0hcYgm4|7Iw4M-5T{OvQzyi!6XMj5<%BqOLYz7wPMr|0n>$X3J5Go@ zPKY~Bh&xV*J5Go@esm|q9Vf&cCxmNs=7czNLYz4v&YTcuPKYxn#F-P~%=6=fICDa{ zD(6m!b0@^P6XM(naqfgTcS4*yAf@ zE}Re-PKb*OW5EYw{G62-Zd;*-+g7OIwiRl)ZG{?cTcL*AR;b~&6>7L`g&J;Kp@!Rb zW}IOgoCP181s{%`5YB=R&Vmolf)CDu56*%Q&Vmolf;(G0__^_d2CdvoI14^F3qCjt zJ~#_LI14^F3qH8PodqA91s|LRADjgr_HH>j3qCjtJ~#_LI14^F3-0l97JP6Pd~g43~VQuEYve@@l#|R^^sd zj;@ZKnUb*3)v+^E66{$a9D~k+mt=6ZV`stl&Vuiq1>ZXhzIPV9WOZ_5IU$?{cV?`l z{;}OS3%++2ykvTDt=vpF^}ctya_I}5&d z7JTn4_}*FYy|dtZXTkT*g72LL-#ZKLC)8Q+y|dsY-j+q#S@04D%GGf*;Vk&xS@05m z$MxfulhX#yf|npHwi{=`_s)WsARDfg6T(^Wy|dtZXTkT*g8OabEO_~8yJg2&@V&F( zduPG-&Vuiq1>ZXhzISKvy|dtDr|S#ny|dtZXTkT*g72LL-#ZJwcNTo_Eco78@V&F( zduPEA*&VrXWcdlnAggb+mhgMbyhpDsRD4yQLM&S@08g20tk_N`Db5_R$o$8h31sGh1+O3+yeH z?Xwt0J!-Lwrodi&6{~1!Sk8-0G&L;e#Uh#-mh)l{^%peTMX`pui((8-f#tlILQ}(X zUXHS+h8xy$UaX*LVmY@hiV4&$iUl+Umh)o&ObyFkN^E^yFdNmlgB^2eD>n*gJ<_XdU*Nx#oZTA?!LHu{QSwYyXVio zcl@1y>)vnv`gcx_KDWF6qr11ie(mN@?XLak>(_?A@@Jns`|$D|ZuQQKC-2<9eCOUf zAC;z;@5~+inceQ4^5@$xe);)3Prg^m-ud3W=Pxdwjg>zt|36i|{P_OmM;|?W{Gj&r z@AofqG~_xPRXPwzb|9hRbB|IY9JnW?{T-6$*^jqH5u%^N@al`r1>jolZg zui(G_a-G5Y`4E)VMxPJ7XmZHD7`+~e)D1B3y?(+EHJ^JVlCC@JJef0kA z;ZI3}_rCr3;fsg&9zFakm(SjNcJJ{=Pd>i;_{p=6?>&0|_W3pF`^6>n{lfKKN=)CS zq}})L?Y=s*@%`K5qn6|M9+VOISu7W^46d9;`$f}*8k68Ia=5YX`?2mPW8G)T%vkr6 zvHr%j-PeVy>G$U!-ktvSvW)q2F@=ZD$RzEMv~C0aA7l)TAjBgI78#isx)n0C2ASzO zS%}O`Ns%FPh76I{BQrG&k(nuNhGelgWT-VVl&;V6j?%8rQp6*xy)c$Xdtof^9Lw#6 z@+>tOOT<%qVXPmI_3vNX@%y{ml=ZGW;2fv>rmUPf8QxgTgN8H`^1Y}X4(^rMUx|1a zg$~9M!9yDH@XMZu41oXW+K$tNFaYz)EW>}(bTbnegoH{g9LH_jK$O`CnHjMNhZ8gs zDlzjb5i=PgRTUq5wa-Ni0xxwbrxAJiNjVB0Z7ZsXOP!07vD{LZ`tewx_K)Ao)V`tc z(5z)GnWSa4Z^_7rU-qE(b;A*actn}+j7$u%ax?uVN+3c;Hh~*S?}Ch+Aw#X#BQrG& zk(nv!R1rBthRDcJx<0kqpVnKT_NAPLRC}RE?NbMCF9d3zt6CEy<*{6#_K#z=kHriv zt6W7RAzAG!8V>H)e^vX?XcRgaM;3laBOX}oV|U4t2er?&r-d+DKGvn0z#t@4Vu97Z zY1;+@)V^vrVi67}Xe3l(hSk3AG(n`Q{lTk!E@BW^?Mpe0$V*+yQSfM6QAJ$pT$GIE z)V|b@#{%Uxq-x(#cxYB`mQ2#J+P7q6#4meL`?}!>LOi0(cSa_LSnZpBlNpbYkxk%6 znkgwVM9z>Q@_J;Zh9NRDrOl8m7KaSAMuyV$sn!0p-U78R<U`&i7-vdUF75|Y)vqT%3v{a3XQjYgq^ab)3#G~$8PK6aNZc~JXYdtRBK zX*GdCU`=bN!~&~*Lu~^AYG1V*u?U9~G!iN?!)jl5njliu{@$y7E@BW^?Mpe0$ZB88 zQSfM6QAJ$pT$GF@JK2ntonk<_?NhaHC_FUlK1(KPS?yag3hkFYsD0gV1R)+#<~t)3 zL#*6PzsZb8$jByeBh8c)86s!M5P3Z^Q^OFMnbKxR7K=lMS|da0`qXNFTAzX1m-1*Y z^r(I6!0m-V?Q>PD_N6?Q3)KETR{L1Y(6Y)^G!l~4zM|pae*IUq4~<5lgK=cxhcx1W z)joEYEO}7-Tzg)bplLOML10a5sKf%ReM4;n0cu~h8?gw76EqSkF~e$KcbXtl)jlOL z!~0AwVh~vEOF50ms#wZV@Mv36MO^A!l#C@i*^Jep_9ZEuyW2Mu9-4KZC6lzQ_AMEO z_RAjBzHT^z5RWMHoso$lR&J)>WX3`5O9R;iZlsx#B17a186vMoW@;EBGgI0O$zpNH zP-|o;U7uR*PwO*K`%)h5g&ws}9k{&^sC}+#)xMO+a)H|CEM(?xAB!1UR=J8sLbBRd zG#uQo|El(((I|8mh5CRR)^Y` zq-9R+8wwB2y3dkHT2}j(j6(Zm4{BdG96^Xjl=;rc#1Jbt({D24p!TJKYyvmZOi7U; za)u0%*CR7E43U{BZH8pAIAo|bGL)`Qt@fw&8K`|JkM=^3+NTcOUI^4aSG8(i%44}e z?Q@bQqxP|wp=Fh;Xe1=7eMQ5;{razJ9~zB92jj@X4{5{$t9|S)S@NLvx%Rv=LDOmi zgTR{BP>BUr`-a*E0@S{0H)0VECuk&8Vusbe?leK9s(s3SgWf(DF$k>orJP1&RV?Kw zc(kpkA})0xLr;@rW|t8JQSj z}c;Mw%%pGDOahA@X`;riLLhGo{UtEEb0hwMK^0^{LhVv_1p1FXho* z=u!LBf!hm#+UKfP?Mrzq7pQ$sPh-?R7BjT0autn)WVNqoIJjT`RqaEgQRrYCS@Xh*Y&t z2|!Toa}k5UYG2A}L{`O8j)F(qiYnq#=b~gR*~w%XdfXfz5Pj3Wy_q!ACS_OZKU$%ESG+Vjc;O{)nE0&7}BB^Fri8)_Q}Q2VOg zh($P@ppj6C8CLtc(*%*K_9@K)s(mhE5LoR?IgQAwSjtiGXj@T5T`-Z|pv+lEGl9tuJC8N-O*@N2G4Mz~-5oNwJGBL!;&GehhIH-MTAe+FAG*eP! zh@2rq*=HeFkb@%A>u|qxPu-w-*An&sDA3m-1LH zQ2QLw->7{oW@uUEDjEsNYG2WCaKHYm+J{D?(7`ye@IxB$z-k}6OO`ySeXc#POwhEN zz#y=uHB@4O)xM#&fdI9y+KpI*!wDJ*m6&0*uRBc;scN4?s+ZAOy>k(R;L2%4R>e{u z1&_8BRm7#vMafvQlg(HiYG1Amj<#4+(3GDKdF%+xSMW~Q_mlEvbXq1MPyx<0kqpVnuf_N6@9 z3q5L|I&ga-Q2Sifs(mSsNfDML3+Gkx+>lR{Ofs1d+$P zBl>mMG5;pF49`C!lQM?E6KK$1vb}VVH;QY!6-hlI881`+|H-x8H!5qB;)kE>zMYU* z+>}mS?6damnJ>#QVQK^;8B{Py>BQ8(5;L_5A=wpvu$h!2MD!FPqHjQGY8fLmlNOi~ zYv2*0_Q+H<2X>Fl_CPO9FbJLyuG!oq`0@N60i$5Y6EXFk99zWl6_11+y0YQx?{&*s z{MoveYB|Fk6G_|HZ?Z&SNlw2FoTE9&%HuKy!xLy!S(4HM0SLDo z)l^%6%d+wO7LXS4cxWc{uU^NW^obHQBpyDclhk4+YVj}S& zW&(RmwgQ?7u0AhU)XJK|V2D;WWMV_igdw*9K{KHmj+n$F3Mv_y7!os~`%RDmGco;^ z(3lA>V=%-_2!TeGB`E|1Al!0PQ*8k*%f^$PZpX_U1XP0hSF*}X7!nUJO48CvYB3X* zj>7xxfM!Cs9KlEimHAKU#FQvO({-`}LWE><_`zmUju6pPgowTYp{Zqz&`erjN*0et zh}t7l`Ia6&WG1+>GZR9H<-^ki|Ay3>2`p!rMLjDb2`gqo z5s?AEFThMdt5Nu9DA^D(k@yfZfjuT$0nG$gpO-6YWldo)L@OIIu_0!{klTQunNST! zOyUs*m5fXbiJ8#-Cdh!9n0|X`%mkM)7-A-bK%TRn)c+ z5P)#YQBAc4xGWn_cDfy}$4tnNYUSIsC_zKw;Zr(EEoQ>DN8$Z;Kr^9Rj$kB%%KWEv zVoH>t={i{fXeOkEYz{xzOv(`=dWsOyHy|{%j1ihi3rxx4@d#0SWGY{?#!O6WHZl`J z2=_>rnV>HG9*N8ZS9WGX2(f%669mG80_cnF%4p@}ZgF-?UmYf#nRdsAoka zVZ}@+A~N9j1(*qFH3}aMB^x3p5+7nFu*YO8pqb$6^KwP4tSJnJXk|ktHpEOAavKmd z6RP2eNj##Ul97oaF%!Dq1Q{?B({CY-ncy-8L(GH_XjD<#LO=k*Ek`xg7T~gMJlW}X zydES5qNfNEeFH*M%NU`Vw7`@s9*+>UN2c;MYs|#7W+O8pgm8~^nF;E`?~%w%aAjvE zgb>SzW`chMYt00fGt8o%6_JD$GogscfZrEjCZN?Qd^D77h?q!xh?&41ldXVef~(KV z6}7UaFc_kh4Vl;wGhxVWK+sI6h9f5Nh=NK+CWgdJ=zbGqz)VcPoit{G%NPtX6GEU- zMQsZK0SLDo)l^%6%d+ugr`z#*%!K^N*P97L;^9R}S~^KBX2Q}@c)uOcOz4&)7|EbA z|0$iA5+!K5PF4V#327ml!w)u-a)gMUB1H5J2u&?xgl5tLQ?htGLew6a%Gazh6VsZF z%!ClaJ`j46IjkLi+WZ>5?0KFA|eBRUx1l_R-^FI zP_iLnBJm++0((rh0-6b~J}+0)%9_Gph*maaVnfV?A-4fRGoc!en8YIrDjAs=5;LLu zO^^XIG5yxkmOJ#*>|H$Llc@@}ppHCJc#(7bR)w zB(<0cOGn}Tc0eTRn)c+5P)#YQBAc4xGWn_ zcDfy}$4tnNh`pIGBpzOrq@|P8VkRsdh4tqF>nUEH; zIs9NVDMyItDMCcwfY8)3MrbB2FeQt}BSh_yseH{EGcm2%$V>hp3%t*j{whG=C&CN{)O7;+mBG!v@fh)F!6ppub^Au$uW-vpUzCWhcw*iyz|u$ia? z8kN;{B_IINmgAbZ1*9w+PjwG2Gbu-i=qW-(-+<86GDc`7EifgE$0J1T zk*R#mYBMoR`zA0Gl@RWc9y7sR_&pMs38`$&L?y)Xfte^(>#warJ*#qtnbor@ZN=7Dz*i4vy6J)?lOh4k(r-^~f7z{BJLZDGaZ3_Vb2)7*7R9k?{vhif6+wpqL zg#J}B{%)eksVoQ&FG|wVNop|@mX5;v?SN)Nw;aJp29^0w>BN*MLDO}z0?JIf z{9rRFM~LVtLPXzy(9|+UXeKQ%C5y)+MD3BOe9am&F|FCiOb8*|BVA^Ky6}4>G80_c znF%4p@}ZgF-{hLpMA;zKd@#(So)wXV6*HlT$bjD$U?!l|D10=OY>1dhe2AIA9+Rzr zW`e8F%N4bjZ@rZ&-Mka>DOz3_SWWY>JztuEmg3A~T zF%v?dQAKSF0RafN9Mx1?fXlM+WT)Hldd!6WRkAV@hQz~*lC*S^TFiu{qwsz^pqbDu zM=+8>W&Tq-F(pdSbe*gKG!xQ7HisWL?INWzMlP()v6CZ^wN8Z*IV42GBqA<(FzwuOKIgjW zD*(-ew2;l=2b)PbLPSpyBKih|rj{{6GiiY-Sv(#gYL86iYu1>FY0XAvLI~j==`s`4 zh2JBQnc&LKOb8*C56uMsCfAw?EN7TSJu4y!D`r9wkpaIiz)V1^QTS*m*$^?2_z*LJ zJtkWL%>-AUmn&*zO<^!ZD;qMgA!fpm+kl{%Pz^^+;t>Uvj7$uPnb7?v$bgxceyeHB z1eY-wVkU$@ql(%V0s;_jIjX6)0GDOs$xgT9^_U6yjj=ZqhQz~*lC*S^TFiu{qwsz^ zpqbDuM=+8>W&Tq-F(pdSbe*gKG!xQ7HisW9?B3OmG>4A!b4dG^(g=As_(Z zmZO?#3vgLBp6qlxUXPiO-xzx{VMsi@C`n5vsl`lKItuT%1DXllas(q8ROUaW6H}rD zP1nf^KrSt2(Nlzoz5$`BWsJ~FT3|{Rk4K2wBUAaBHD+R3vyqt)Lbyk| z%mj7e_ef+WxUw@7LWt!$>ib%qWnNUPz!0!t%6VPfDJ{n3kL`)<; z#7tn1$yPu!!PV#GidtDy7!1+MhD>aTnK0xwAZR93!x58sL_sAZ6GLJqbiWBQU?!&D zY8o@aWekRx2_ev^qPB&A0EAnPYN{>3W!ZSL)9rXYW(8k(uDi&P)g)mJiJY|0dU(2`p!rMLjDb2`gqo z5s?AEFThMdt5Nu9DA^D(k@yfZfjuT$0nG$gpO-6YWldo)L@OIIu_0!{klTQunNST! zOyUs*m5fXbiJ8#-Cdh!9n0~8i%mkM)7-A-bK%GNGXbqe;iI8sL&QYlL(ByBm}~_!6I^{>uBeqY zg~1T5Y{Q_aLa_!YL4F&JznDuG62wOt7a zK(yt!CT;;K%f^$PZpZ5|6Q%RXJ_NtQwj>^&m87GS)NCdk9fkMX0nCJHIf9W4D)XPx zi78fsw(DdCfSIT*WOMkzW>St2(Nlzoz5$`BWsJ~FT3|{Rk4K2wBUAaB)n=lA_UQ55 zz)Vy^xJP=-1b5;0NMI(UvNaQx5X%Q&zeZWvYF6CWWeu>Y9_GN zD10=OY>1dhe6X2NJtkWL%!E{*mn&#xLt!vjD_b(L!Dhme+kk+X&<#gS;t>Uvj7$u% znK1n($bgxceygcZ6MHUWFvLsOJ#*>|H$Llc@@*87!nkaHA z3&O*TlC*S^TFiu{qwsz^pqbDuM=+8>W&Tq-F(pdSbe*gKG!xQ7HisWJtvhLQ~t6NwKo6WC+270^s@^?A9XR@M{- zL$tCX6B}YC47m*mnhDi##3UY3P|3)|keCVGZ-NY%iRrhR#!PS-gCS-@2sEmwZ6P24 z;g+MCY71~#HlFNsJ6?~Oklz@4Ghs+PyeLUaC#l6uSUL*tw*#69-EssY8C2#!r4v)4 z1Wnh;3P3Xnl)x(TC| zy37Q1;rB>nCb+UQ6GDjPLo>m@$+czz%Nb@-&x%OGikVPEWWetWFcZ*f6h0bCHbhJ$ zKEzC5kI7a*Gr`s8<%(KaQy2`<%7#pAh?y|tHXvvwRKpRIctk-ZBNIbnCUn0EGGHdA z-)b5&!DS4Fmxo`D6g!PZa5J?BJ3MgG-S{q2|&l_xW!G9$Y2t=k#*=Ic7RO~lAW#*kF+f5cIg zL@-@FOn}>jBD5Se*@0$;fR79Te}kbN*)w#Y7e#4!Dnp3(qUM=RHnC^6vk3w1jy$pn zTv2zVvk5+2Y(hZapW6h#$;~$5=cHNk96&THn+Tv6Q1`-Y!lG95T`Da^526m)gx@%< zg4+ZiKjZ4E91)TsRZcLYiT8^6RKr=(YM}~mE!O)KE89LC5qBJ~}A;f!8^UNlj*fZPNgn)KO z9@zx0s5{cx1RpLoA)xQiZGzwAW}EPH(kyunAexm;1kekpdto+VQLFhbl@_80QHN~8 zZyZ*^ZGw-VadlOW2+5EtCm3bOCK7y4h}%R6T%7b7#mWSuAlXE`cVOn{pML!N?|${o zx9g`he*NWdKC*w||4kC&Au|0mJn0QzD;Dox-T77ODIPZW4>s`k|M#aKefr{$Km78y zfB5CUe*4WY{^OTF{C52x|NfKz{nL+r@;@KozkK@hQ|5nu|IJ7CztDfMH9JAxf4rXY zrs`Nv!6iw>vY6C=oKY7N{P6*qaU{t_W%+cO-eTlY;G0;~rA@>Ezj<||B+6%hgLdQ%I zDP47tu@Jx$Gl0F2XUy!tmYIXx7c?`2XfNnuCe7!u=`e@p(&fCH&)K6(uCfc}&?%SN z3wyVo@B8}iKl}7o+R*Dq1U{DUZ<}LM+hS<)%P!87*SGv%T@9=0CXYm*#ZbdP)fy%O zKK{JSzj*LR?9OChWlfTDz-^|ALve7uden8ih#PHYS)iuvcRn2C{V{PxeC zoWHek%y>i+$~iJ}{Pesx-mMiL^ik*0kgJTkp6_#+xasGl^tUzYdP10bg3&EyKSz5Z zb?i;{W8fm8o3!6=BbpY9z*pkqc$P%_0WnBa*SM1MXrJFsQuAmgh7JTU{<3mWG$ z%Ko0WM)q}%lwlX1$UZJ8yU@r!ALSqJQm$#oP4@ZoL-<=6Wz~;KZHu8v%6^D*QtSL* zvTs4F=_Zc`zr|1kW#6wGM&4wfPwzok|7ZiXGy)`HKv4o^KgHe?VX`0M78h+gu`!@1 zhO!?o9T>S}fBzgwlzkqN1j@e7k&)x4b8oy`D?I3<&Z8k$k$pYi=Q45A&pj2{PY6>} z+%k-ADf=1rLh9I??8m@GLZ4CZdxB9AWk20Jyz!11EkVh2kdYa{6ElE6pP3!lGINmo zf;23J8AN+Q<9tTh-}BbUzRtT{cq03_pzJ~;`+PLZzRvr;O!oQnKuPxfnAB2o1BNCk z`vLRhb^b5ex1iN@lShN!VyJ<#@7E0@Z?ey)&t#g?Mt~$xX%mVPDEkS$C&FYu#4Rq` zbYf#bQ4D22UOF&x$^QPikSO~+A_M!oL|MnM#}bno!SJ7%;5CDTDhW&lsj0RDVt zc3{iQLGBCEuoPwx?FEhV8D)RZXCwPM?{?vd?Bjy63ytja(JcEq@B1>@=g;>f+4o~o zOUVrwnxyOp%#+vozhvKnR?|%$4StKE2Fku)H;lZ=KA%35X-XRbl0c64xMK<=z{n;0`{z8O?DL2uQ1*3>jFe)Xd*j_&;XxmD9u2v)$tl+Z z+1Jk{71>V+Q&amgjBY9W8TO{@*qiLfz(qozQSW<#Q4qx~-8;N-lYIqf2}-7ejLZO@ zm;wCx%8j56WPZFWfvOR=c8Hnb>8=7vd^E_ zNwV+9q?VE!Ff>Wo511#f^MA>{1+Au=JR1BKLk*ODzit?LlYKsYCexHQ0wjS-n^2TM z*-z*_5hnW~ZgJ736B`4HVkrCZ(t(jn_V>?iMA_#NNuccO92qIaI`_uAwZelw>O2~9 zX_Hf~2ePl9Gb*y55T>T~Wf4e?CZSm z%VeKFf0Jb2k4Y^hH(+RzvL7%{Ug!UkeG6JmH+eMpEruE>`+nUp@+SLy`b?%NZ3IXH zl{TR$fwG^_dm>EsL)_w`O(!-66va^XUDNa!=_eNQk7qPV4dhc|Ar zuK+DU$#jsB8Nd@WfIpv^9oRB+ko$r(EQJ|FdqLxTM%mx<*~q@myIpu9`?#R&LL>Wp zG|Rru`@T%}`L7xz+4o~oOUVrwnxyOp%#+vozhvKnR?|%$4StKE2Fku)H;lZ=KA%35 zX-XRbl0c64xMK<=z{n;0`?uRi+2;{SpzP}$87aj& z_r|-m!h=5QJQ{LolT)q-vaf%Qp~!whn3~#`VRTE`&#*UL$KGT=1}+l%jC$V_jDjd` z>E7Xuo9rtw)a+UsouypAe>|_GK8|QuZ_KP1mtE*^hyXgg&F* z_XMLLid(vOc;hDf3eXaiOa~d60X#7S`16_Bfh{u!xi3h=QkX%s7c|ail>I%QjqK~Z z+l42xj|<8!G_ub}v+V1<@5^ML|LQ=JeLp6(l-z)!Ny>h}Jb9h}OZF{jHQnUV;I|lR zpzQl~!^oTL^XW60rnC_t2~^sIq6Er*Lhp$%*$;7xi#DCu7*G^L*^ieFj9jw6fBSrt zeIAhn%D&E#ky5O4Z@gP8Jm{m&qal|zIpumF`})@sitHzZsi}P#Mz@sx413dc>`nG# z;3A>VsP{d=D2U>g?j7E^$-V-#1SQi!MrHs{%mDs;W_Do9%t7u8(y$a}5bXtx^BHA- z&u1h1I`4MjiR|NovI~vu^U*B(I`8{3+2_9^kYwMFNi8KeU}%!EA23f|=l_y@3tCM# zc{KPfh8igQe%&zgCi{H)Or|Mq1V{pvHlZkivY*g;DuAT?tru5>H-D{G&9~ak*Q(PB4EZMcx8EW0QQ8*%<{yg45ZmSN zm?$`^_!?iv72KPzEATOff73@UGKQq$WW-Sve}_aW>a!TqR@7t%ni&ENCcXZH9(98EKX3bZpjTSDHE4+AJWVy2Musm-{PE28i3<4+{~1Kr2W zgwJ^S3oODpY3@NZ%ippQBfWsS7uRpu@Tk>%mr4uKgQ$bQWh2};5Mh5J(&J}bKT6=A zh!R3FCKzS#&x$$vo)G)9VhmiI^cls<1fwASi74GWFk>URzZpD#J<#OwjAT>*Sv8W1 za01$u!;@hJcsAv$E1-xzpW8(I>UDk6ClO2#(~mg1mQCb%FQ%@8+eD09WDH65{zn`| zNd(i?!vwSpX*p`L1I-Kp9~lDv217ftXXrpLiqh~@h7j*X%`=;9VozXa69U>Dd1Mo~ zqV7m%6MUF|d5Amt%qI9vDE|5&1@?2&+=FOVHW4D7;JO!P6Bf0a?^0 z72GEH_!(DM<%p0Bsd9o*hHN6i_k_4jguul~pHZw#Fba}Q#Cr#3%qI4?gvlm&Mlxg* z0+3ZBDZmM6R}N2x72w&FPn(|eO@C5y5sY8S2AfC_(@P{Xj;>`B8TaPvI=D^5$VJAG zRPTSpQIte5T|G=d%aE3%COgo~5b%*9;BPRrBYTDp^r9#YPh|-4Uer9Z$tL#9b~YiP z-H}H&fh+2cbT+|6MjybCC>pwv$BZ*dI5DW%qA>qHQ%MuLi8Z& zkWKiF!z#E<@bNRQuF4T18B*m0qYT+Zg6|1&n+So6lRl$ZnP3zon~3)g%$QB=Zx54A z@Qh^0CIld>WLtm}(5@Vw3@gC1DW5hy=X+uk@vGWk6A5B^iDbsnwQM5e-h5pLw}}|J z$QY99{f{_`k_e`&hY4_-P=uDFCOgo~5b%*9;BPRrBYTDp^r9#YPh|-4Uer9Z$tL#9 zb~YiP-H}H&fh+2cbT+|cSq{G2pPo&$(xWfKAP0_t9vO<2@wzDuQr z=t0yWoA4WlRdAc&<7Zr5l_Nqjq{<0K8M284-xK0C5ds${eMYe|!6-;J5$_$CF`L-m zDkhuY8Oe}M2tZcJwg4xfT{%1%R)A+yK5cr=_rxajQLX;BX^CKhn1003wQM5Cd-HW2 z+$Lh=B4bFZ_dnt&N+Ou99wxwTLJ?Yyn(RO`L%>IdfWN`ej_esa(2JrpJe48Ddr|Yu zCY#tZ+u4MGc1IrB1g@w%(%A$bE;b>c@6T<5->7Dr@N?2Ec@7|&l}!ZD3#fZxHepe# z`7V_fq6bljY{G9GR>5t8kDqaMRgMVBkSZq_WymHHd{2nmL&$zlOM}%ZZl@p9IWD^O#C&Xa(FVV0MDj;+Vq_7iB0IE-D(pFVtR>W#?iHG zBIDkCT?e;`7`ez8lIs1BIEs=8rmKeuaGOwsmZK&+(996c^g>W*|a!H0`Y2`&iC!k$9JQ-GiXH!0Hdd~O6CiIbSwTT2Vy+ktO z=vp?Bac{n^gWE)mTx1MM_5Md3MM(tH)x!k1O(;UkQIj2LW(fGm5b!q`+L1j&2YOMI zhNm)wcrR+6*<=%YW;>e@(C)}1o4^%yM>?C}!^I{9^!>R_@SE9e6MjybCC>pwv$BZ* zdI5DW%qA>qHQ%MuLi8Z&kWKiF!z#E<@bNRQuF4T18B*m0qYT+Zg6|1&n+So6lRl$Z znP3zon~3)g%$QB=Z!MEe@Qh^0CIld>WLtm}(5@Vw3@gC1DW5hy=X+uk`Y5>CM1q)J zBAIb?Et|-=H(%GmZ6Zc4GKQpj|09l~B!cPcVFKJH6rts)$qqC#1bk!&_!|uE$ey7C zy(mhx;EK872GEH_!(DM<%p0Bsd9o*hHN6i_k_4jguul~ zpHZw#Fba}Q#Cr#3%qI4?naL)2Mlxg*0+3a*Ex-wAR}N2x72w&FPn(|eJ+TRWL|knm zK};`^%s9H1O=R4guj}A85hE8FLsGr}5l2xH!F2U70d5nD&~nsd2bviIJ~9OS4Tg4P z&(MKh6s6&*3?bf&nrAlI#GcvCCIqxQ^2jD|Mct9kCirl%2?2e7ZWH__H`|1tlV-_t z0MV>$B7j~%-3zk`i(1Whsk9J1h&p5we&etTZWDa`jH|11L`a5IIl(AHHj&_aLfj@o z;NqmuC{`vI1<5Ajy#q6sO?=gSg{?D^L7TV$WTk9hfD_QI9G~xPW#?p4bGhs5{cwgdQgM zaYt4}-=EpU#~tlg*x{TsQ=TJ;W@!@<^aAQ$TsGlRtNAXK7NQ4H2W=wUI1phrp~t`H zCQx=0LNX>8WzZ&a^gSVF6ESdc(q|Ma6O4jr6Y1W88MBG~5oi3{#8*5c8L|lh$f}VP z-~_ZQhbO}d@NCMbP0#tJ6>t%ZUnK_-Oc2vcku#32C4w3E=Ic7RO~lAW#*kF+f5cIg zL@-@FOhC)f_gs#e>_9U^z(=`=Hi=s3?qo zA*tT~h@&WpV7hvk0JjN6XgO-K1I-Kp9~lDv217ftXXrpLiqh~@h7j*X%`=;9V$W=6 z69U>Dd1Mo~qV7m%6MVSXgn+(3w+Vien{C3+NwefRfM`}W5kN1X?uFTeMXlz$R9c80 zL>;mTzj0Uvw+TLe#?@6hA|ykqoM4n8n@I3IA#M{PaB9olO1Sg2>8el@HZIRkv&5PdQp^yr!s_iFKV9I zWD|R4JDU*D?#LsXz!h~zI-B6b#U=#w{kcu>o7`*@eomSt&jCcUvWWnC0d+6TCM;?- z-=)$*^dRbxP56z&D!5JX@iVTj$`K(MQso4r4B142?+J062!V@}KBHKfU=$>qi1!Z6 zm`&_&HIq&7jAY0r1R$$qTYwYLt{k2WE5NfUpEf<`dtwv%#< z7PXr1QfVQ25Ov5V{KjDw+$Q+=8CO^3h>#4aa)MEYY$Cz;gt$$Fz{N?QQLIcb3X)C4 zdk1FBCib_Q$tHM4GGr41kX5oRzzJwq4o`*^;MtT)NCcXExcyp4rYO1hhNy$R=<_-I2~F_;9fa0eydN6Z|GO+k~H!X328^(X4DDfL=h| z3$qD}TFrND6MX!PtE+NENQP87!6-vEk>Gnm+$KWc;-t?gRwft) z$tL2x12bk5`&-Rq6FegsvIzmmD%lp`1hgxMC&LQxY|5ui&-tF%guXGZHjyBvmq=zD zUCSmi?#jBD5Se*@0$;fR79Te}kbN*)w#Y z7e#4!Dnp3(qUM=RHnC^6vk3w1jy$pnTv2zVvk5+2Y(hZapW6h#$;~$5=cHNk96&TH zn+Tv6Q1`-Y!lG95T`Da^526m)gx@%YiT8^6RKr=(YM}~mE!O)KE z89LC5qBJ~}A;f!8^UNlj*fZPNgn)KO9@zx0s5{cx1RpLoA)xQiZGzwAW}EPH(kyun zAexm;1kekpdto+VQLFhbl@_80QHN~8ZyZ*^ZGw-VadlOW2+5EtCm3bOCK7y4h}%R6 zT%7b7#mWSuAlXE`cVNbBVt=cdY=UPbLpC7*StZ*7oPc)a@MKs4o=y3*={esMo6tAL z)g}_e^b*O8qifkj#=ZHv4sH`Ma*;74)%zcD6eST%R}T~5HlYYDM@@F1nIYgKL%`o) zXh-%89q2_-8lK7!;=QPOW|K|qneA*sK)WN4Yywx*9qDX>4;Pyd(D&yy!EbW2P53!! zmOKX#&B`VM=mpfhFq^Qb)qIyq3(nh%Ju~~0o}^+NnZh-P5HFxIo|`D z__%!gL-Q4OhM1lrS#Wesn<%(9U)RBGB1JAThNOD`BaWgdg8AxU0?a0^2rWlVcA%Ld z;3Gr8-(YA*_6!~9MNt}_$`IncsCj0iO?;5{?H_*8*u(|2JMzRPctzcj#wPS|wuuYq z`!k#Pc=Y;=&g40qlV-|u1ko&QB7$B(-HXd6JZd%HrP4z5AnKq^gd2xdFq_chXIxE{ z6GAem${9u(w22Jg6Jj9olO1Sg2>8el@HZIRkv&5PdQp^yr!s_iFKV9IWD|R4JDU*D?#LsX zz!h~zI-B6b#U=#w{kcu>o80ubiH`-j?1MB*o&$(xWfKAP0_t9vO<2@wzDuQr=t0yW zoA4WlRdAc&<7Zr5l_Nqjq{<0K8M284-xK0C5ds${eMYe|!6-;J5$_$CF`L-mY9^cD z8Oe}M2tZcJwg4xfT{%1%R)A+yK5cr=_rxajjdA&ZI(?lWrk6-&99_#MGVaaSb#R-A zk&BEWsowvHqbP}Bx_X!Zw+TgPIcl;4%?tq_83O(WLp!o(=s+)u((qJ<5bs6JGn;H; z&unKC0@@vUWD~fe?nq}7e7M+zfWAMs34W8CZNkq(K_ zT8JJ*9kL0(aaaYn2|j+t)m1qnBtxp4V3Z-7Nbo%&ZWAGJanffLD-(=@WE1h;ff=)j z{jFxQ37(M**@OUOm23-e0@{_slVJsTHs#Z%=X_6WLf;ryn@AATOC&Rnu4NM$_vY(5 zxJ|^!MaGa+?|;NmlteIHJxqYxgd(&YHQ9k?hJcR@0e^#`9oaK!>-=EtAzsb!u;pe1T@*F@kE1L+Q7f|=YY{H^e z^Ia+}L=U14*@WLXtb*GFA3x*jsvHrLAyrN=%8*SY_?{5Ai4eFr=`)Iz2}VJ(iFoh8 zjM>EgRx{ZI&q#)BLIAQ#wgor=?aJZFumU`r@@dm^z9%-JZ;Y!=B#7xHk{L(WvWbj) z^K~8ECSv3wV@Rs^KjJ7#BABioCcte%5n7I#>_9U^z(=`=Hi=s38O6#3qafKt zymw&6Y+`?_nQVe*BtteK09hs50-S($Yg#Pkx$jH7GW zM8>`Ox(;p=F>;YHB-Q&LaTFyHOji#R;5MNMEk{jupqU}yBSXO7U}#773?1l2Q5v4g z5aPY4d1jMM?3wLsLO{DCk8A>0)E((;f)5v)5YYGMHo8N4Vr7C+ zkZdB}J23O}Pe1gw%Q4z}k1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnFI)YL{M=Oiyv*e6 z^2D5y{5%5#{q)QdeMe81(!BK4{5<{i)V$Q9#FG3X{gO2O;-X~z`1s7c%#!$cy@JYH T95%W6DWy57b|7PmftUdR0T3d= literal 0 HcmV?d00001 diff --git a/generator/tf/src/__pycache__/__init__.cpython-37.pyc b/generator/tf/src/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4f376a5f534d369102ee9771d53fef9af4d0740a GIT binary patch literal 154 zcmZ?b<>g`kf>j(9u^{>}h=2h`Aj1KOi&=m~3PUi1CZpdPhpPrhRT9jClU!-4>7N3)!oS36uT$HRIAD@|* bSrQ+wS5SG2!zMRBr8Fni4rF*S5HkP({aYnK literal 0 HcmV?d00001 diff --git a/generator/tf/src/__pycache__/encoder.cpython-36.pyc b/generator/tf/src/__pycache__/encoder.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..22a67d44ac68f683d5becdae6f3e73f33d7684a5 GIT binary patch literal 4982 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 X_bP{&QNXc~74ffWEuQzAi`V`Q^6i$& literal 0 HcmV?d00001 diff --git a/generator/tf/src/__pycache__/model.cpython-37.pyc b/generator/tf/src/__pycache__/model.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a59f4e76c70b7669cfcecb07e2a2f1b0741b92f2 GIT binary patch literal 6724 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 literal 0 HcmV?d00001 diff --git a/generator/web/web_generator.py b/generator/web/web_generator.py new file mode 100644 index 0000000..823bf4f --- /dev/null +++ b/generator/web/web_generator.py @@ -0,0 +1,44 @@ +from generator.tf.src.encoder import * +import googleapiclient.discovery + +pos_action_starts = ["You attack", "You tell", "You use", "You go"] +project = "ai-adventure" +model = "generator_v1" +version = "version2" + +class WebGenerator(): + + def __init__(self, credentials_file): + os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = credentials_file + model_path = './generator/tf/models/117M' + self.enc = get_encoder(model_path) + + def predict(self, context_tokens): + service = googleapiclient.discovery.build('ml', 'v1') + name = 'projects/{}/models/{}'.format(project, model) + instance = context_tokens + + if version is not None: + name += '/versions/{}'.format(version) + + response = service.projects().predict( + name=name, + body={'instances': [{'context': instance}]} + ).execute() + + if 'error' in response: + raise RuntimeError(response['error']) + + return response['predictions'] + + def generate(self, prompt): + while (True): + context_tokens = self.enc.encode(prompt) + try: + pred = self.predict(context_tokens) + pred = pred[0]["output"][len(context_tokens):] + output = self.enc.decode(pred) + return output + except: + print("generate request failed, trying again") + continue diff --git a/main.py b/main.py index b44a96a..c2cb365 100644 --- a/main.py +++ b/main.py @@ -134,37 +134,6 @@ def about(): return render_template('about.html') -def cache_file(seed, prompt_num, choices, response, tag): - return - # blob_file_name = "prompt" + str(prompt_num) + "/seed" + str(seed) + "/" + tag - # for action in choices: - # blob_file_name = blob_file_name + str(action) - # blob = bucket.blob(blob_file_name) - # - # blob.upload_from_string(response) - # - # print("File ", blob_file_name, " cached") - - -def retrieve_from_cache(seed, prompt_num, choices, tag): - return None - # blob_file_name = "prompt" + str(prompt_num) + "/seed" + str(seed) + "/" + tag - # - # for action in choices: - # blob_file_name = blob_file_name + str(action) - # - # blob = bucket.blob(blob_file_name) - # - # if blob.exists(storage_client): - # result = blob.download_as_string().decode("utf-8") - # print(blob_file_name, " found in cache") - # else: - # result = None - # print(blob_file_name, " not found in cache") - # - # return result - - @app.route('/generate', methods=['POST']) def story_request(): print("****Generating Story****") diff --git a/other/caching.py b/other/caching.py new file mode 100644 index 0000000..9d57d87 --- /dev/null +++ b/other/caching.py @@ -0,0 +1,44 @@ +from flask import g +from flask import session +import os +import googleapiclient.discovery +from story.utils import * +from google.cloud import storage +import json +from flask import Flask, render_template, request, abort +from generator import StoryGenerator +import gpt2.src.encoder as encoder + +# Model/Cache Info +storage_client = storage.Client() +bucket = storage_client.get_bucket("dungeon-cache") + + +def cache_file(seed, prompt_num, choices, response, tag): + + blob_file_name = "prompt" + str(prompt_num) + "/seed" + str(seed) + "/" + tag + for action in choices: + blob_file_name = blob_file_name + str(action) + blob = bucket.blob(blob_file_name) + + blob.upload_from_string(response) + + print("File ", blob_file_name, " cached") + + +def retrieve_from_cache(seed, prompt_num, choices, tag): + blob_file_name = "prompt" + str(prompt_num) + "/seed" + str(seed) + "/" + tag + + for action in choices: + blob_file_name = blob_file_name + str(action) + + blob = bucket.blob(blob_file_name) + + if blob.exists(storage_client): + result = blob.download_as_string().decode("utf-8") + print(blob_file_name, " found in cache") + else: + result = None + print(blob_file_name, " not found in cache") + + return result diff --git a/story/__pycache__/story_manager.cpython-36.pyc b/story/__pycache__/story_manager.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a283cdce48f53a992d3d2b466d564a8c8c1389d1 GIT binary patch literal 3591 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 ZSC3z|Ug2EV7shR(f=cm@SiZ1){$Cjp2XX)a literal 0 HcmV?d00001 diff --git a/story/__pycache__/utils.cpython-36.pyc b/story/__pycache__/utils.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c1e8e0440cfb4d31f909d22d0261ec089aac0639 GIT binary patch literal 2095 zcmb_cU2o$=6rHi1#C4KxTK0o|L8g^h1w^tE(ju)8+7-)+1l?HDSYBVox~m6;T%r_^N1%efXNVCtC2fI5=VL z!};%yj3!ACM&l?|`E$o{@#HF#ag@7Rn#`W-5gI+3WmES&PLd;7HPrp1>*yeJRkjmy z%Ykymmq~Ixb23dsH4RjprR7R#=H?Teq2mTZxIx*uo-dC8Qb74FB{`cHDl z2|4(n$HZ5~_XWPZ149H6IYi8$y5JY@7W@@EZ7qy~{m2SK)Gmz$`|06ZRxnUu_dKgV z4M(2!THAaWE6> zX{=@~0*16;jJLSMTZXKly~R&F&`ugZB?+M<4hW@gn>%f=vK_CMOz1hb*rRd93wFur zKQQC;=EfU$Zjt%Xw<0z+ZBWwu_kzvs5ek~bo7=;wRMcAW z?_~|=Tk%tHN>biIZG)12gZm@Q%PB{hv6WHFDVrGE(oFKxr-c+~lq?|Gka9>^11+O4 z3O-`8gCaFYmiE>owlLH83fy-Xc>!OJGzx|yul#B}Mx5G(N$r9areM_S8(^f`Tk_6| zzkh`d*%d*$x(|aIw)$}@+Lq4JWuqUHB4@{3*w68l_?MDRwDYLCHD>6|N26Fyuo-wyaQIY;)rWbpC;rXKPlT0i!`IlsFeG z{b0?`H;8C{wh>~fQua=;wq`_9&B=RYNH%#u<`4#IzeCO}OP7d}56I97cZ#@4MSM0@ zzJ~lIf;W&J0_hzPO{mGMMz-F@6F5`&&>CI^WGQDro-_3$u3Tn&DbB* z**pdsPx0kn!wBXv!G-ZN^SCgD1#gIosKT3~CTw_1>)b!hNW% z{~&jqkb@6;Ong;*U*gLUI--ltmv3U*KkOcJ_I$B7hqlm)U-f*0b_pk?z+_2St5Yk24>~@Tq zIjzLF+=Klec4%tlHXA(H*?`jd+6G&JzC+}{2&DgYM13n_W77sD&3`Z0+#VsJNxZo| zoJvKl75_ojaK05k1*atC4b(R1(r<8of_XXJQD$sq)N;xu#-4vjzNiQ!#50h7m+P1R3hlp*ZW5_{(+UpYgQfu zqd_c`I2SDaXwA;Ih-iMc5n`!Q_D-<2W<*lX$y;PdHhDni5C&?$N6su$mxz*g$j}LQ zlDJ7pd^T0ShWr(R*N`3p=^-Jd1iyxKtN%BM+=!HPCp|SrtuISa!nOV{bVOq;BN|hs z_ji~eaz$#DOF&*dK{;QG?6q`fN8@)<-U)$F$skVRbl`7vJt4GZ(IQ=e6lhVB?_<2z z-domuUu2>0>msPjldd+BDuPZ3t-q#5|Fg5JW|=5j+MkUxF-@Y+DT6e(mTA}QhHc?( I*!%YWUpYj$jQ{`u literal 0 HcmV?d00001 diff --git a/story/story_manager.py b/story/story_manager.py index b8cd613..f59d5ba 100644 --- a/story/story_manager.py +++ b/story/story_manager.py @@ -1,5 +1,6 @@ from story.utils import * + class Story(): def __init__(self, story_start): @@ -28,19 +29,20 @@ class Story(): story_list.append(self.actions[i]) story_list.append(self.results[i]) - return sum(story_list) + return "".join(story_list) class UnconstrainedStoryManager(): def __init__(self, generator, story_prompt): + self.generator = generator + block = self.generator.generate(story_prompt) block = cut_trailing_sentence(block) block = story_replace(block) story_start = story_prompt + block self.story = Story(story_start) - self.generator = generator def act(self, action_choice):