{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.11.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"nvidiaTeslaT4","dataSources":[{"sourceId":6927,"databundleVersionId":45059,"sourceType":"competition"}],"dockerImageVersionId":31089,"isInternetEnabled":true,"language":"python","sourceType":"notebook","isGpuEnabled":true}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"# This Python 3 environment comes with many helpful analytics libraries installed\n# It is defined by the kaggle/python Docker image: https://github.com/kaggle/docker-python\n# For example, here's several helpful packages to load\n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n\n# Input data files are available in the read-only \"../input/\" directory\n# For example, running this (by clicking run or pressing Shift+Enter) will list all files under the input directory\n\nimport os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))\n\n# You can write up to 20GB to the current directory (/kaggle/working/) that gets preserved as output when you create a version using \"Save & Run All\" \n# You can also write temporary files to /kaggle/temp/, but they won't be saved outside of the current session","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"iopub.status.busy":"2025-08-04T03:58:59.496266Z","iopub.execute_input":"2025-08-04T03:58:59.496806Z","iopub.status.idle":"2025-08-04T03:58:59.751402Z","shell.execute_reply.started":"2025-08-04T03:58:59.496783Z","shell.execute_reply":"2025-08-04T03:58:59.750783Z"}},"outputs":[{"name":"stdout","text":"/kaggle/input/carvana-image-masking-challenge/train_masks.zip\n/kaggle/input/carvana-image-masking-challenge/29bb3ece3180_11.jpg\n/kaggle/input/carvana-image-masking-challenge/train_masks.csv.zip\n/kaggle/input/carvana-image-masking-challenge/train.zip\n/kaggle/input/carvana-image-masking-challenge/metadata.csv.zip\n/kaggle/input/carvana-image-masking-challenge/sample_submission.csv.zip\n/kaggle/input/carvana-image-masking-challenge/test.zip\n/kaggle/input/carvana-image-masking-challenge/test_hq.zip\n/kaggle/input/carvana-image-masking-challenge/train_hq.zip\n","output_type":"stream"}],"execution_count":1},{"cell_type":"code","source":"# import zipfile\n# import os\n\n# # Define unzip function\n# def unzip_file(zip_path, extract_to=\".\"):\n#     with zipfile.ZipFile(zip_path, 'r') as zip_ref:\n#         zip_ref.extractall(extract_to)\n\n# # Paths\n# base_path = \"/kaggle/input/carvana-image-masking-challenge\"\n# output_path = \"/kaggle/working\"  # or wherever you want to extract\n\n# # Unzip training data\n# unzip_file(f\"{base_path}/train.zip\", f\"{output_path}/train\")\n# unzip_file(f\"{base_path}/train_masks.zip\", f\"{output_path}/train_masks\")\n# # unzip_file(f\"{base_path}/train_hq.zip\", f\"{output_path}/train_hq\")  # Optional\n\n# # Unzip test data\n# unzip_file(f\"{base_path}/test.zip\", f\"{output_path}/test\")\n# # unzip_file(f\"{base_path}/test_hq.zip\", f\"{output_path}/test_hq\")  # Optional\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-01T04:50:08.305296Z","iopub.execute_input":"2025-08-01T04:50:08.305643Z","iopub.status.idle":"2025-08-01T04:52:56.989425Z","shell.execute_reply.started":"2025-08-01T04:50:08.305612Z","shell.execute_reply":"2025-08-01T04:52:56.988327Z"}},"outputs":[],"execution_count":23},{"cell_type":"code","source":"# !rm -rf /kaggle/working/train_masks # Replace with the actual path\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-01T04:50:00.031151Z","iopub.execute_input":"2025-08-01T04:50:00.031526Z","iopub.status.idle":"2025-08-01T04:50:00.310799Z","shell.execute_reply.started":"2025-08-01T04:50:00.031495Z","shell.execute_reply":"2025-08-01T04:50:00.309535Z"}},"outputs":[],"execution_count":22},{"cell_type":"code","source":"!pip install torchmetrics\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T03:35:51.58542Z","iopub.execute_input":"2025-08-04T03:35:51.58569Z","iopub.status.idle":"2025-08-04T03:37:16.326406Z","shell.execute_reply.started":"2025-08-04T03:35:51.58567Z","shell.execute_reply":"2025-08-04T03:37:16.325635Z"}},"outputs":[{"name":"stdout","text":"Requirement already satisfied: torchmetrics in /usr/local/lib/python3.11/dist-packages (1.7.3)\nRequirement already satisfied: numpy>1.20.0 in /usr/local/lib/python3.11/dist-packages (from torchmetrics) (1.26.4)\nRequirement already satisfied: packaging>17.1 in /usr/local/lib/python3.11/dist-packages (from torchmetrics) (25.0)\nRequirement already satisfied: torch>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from torchmetrics) (2.6.0+cu124)\nRequirement already satisfied: lightning-utilities>=0.8.0 in /usr/local/lib/python3.11/dist-packages (from torchmetrics) (0.14.3)\nRequirement already satisfied: setuptools in /usr/local/lib/python3.11/dist-packages (from lightning-utilities>=0.8.0->torchmetrics) (75.2.0)\nRequirement already satisfied: typing_extensions in /usr/local/lib/python3.11/dist-packages (from lightning-utilities>=0.8.0->torchmetrics) (4.14.0)\nRequirement already satisfied: mkl_fft in /usr/local/lib/python3.11/dist-packages (from numpy>1.20.0->torchmetrics) (1.3.8)\nRequirement already satisfied: mkl_random in /usr/local/lib/python3.11/dist-packages (from numpy>1.20.0->torchmetrics) (1.2.4)\nRequirement already satisfied: mkl_umath in /usr/local/lib/python3.11/dist-packages (from numpy>1.20.0->torchmetrics) (0.1.1)\nRequirement already satisfied: mkl in /usr/local/lib/python3.11/dist-packages (from numpy>1.20.0->torchmetrics) (2025.2.0)\nRequirement already satisfied: tbb4py in /usr/local/lib/python3.11/dist-packages (from numpy>1.20.0->torchmetrics) (2022.2.0)\nRequirement already satisfied: mkl-service in /usr/local/lib/python3.11/dist-packages (from numpy>1.20.0->torchmetrics) (2.4.1)\nRequirement already satisfied: filelock in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (3.18.0)\nRequirement already satisfied: networkx in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (3.5)\nRequirement already satisfied: jinja2 in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (3.1.6)\nRequirement already satisfied: fsspec in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (2025.5.1)\nCollecting nvidia-cuda-nvrtc-cu12==12.4.127 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cuda_nvrtc_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\nCollecting nvidia-cuda-runtime-cu12==12.4.127 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cuda_runtime_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\nCollecting nvidia-cuda-cupti-cu12==12.4.127 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cuda_cupti_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl.metadata (1.6 kB)\nCollecting nvidia-cudnn-cu12==9.1.0.70 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cudnn_cu12-9.1.0.70-py3-none-manylinux2014_x86_64.whl.metadata (1.6 kB)\nCollecting nvidia-cublas-cu12==12.4.5.8 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cublas_cu12-12.4.5.8-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\nCollecting nvidia-cufft-cu12==11.2.1.3 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cufft_cu12-11.2.1.3-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\nCollecting nvidia-curand-cu12==10.3.5.147 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_curand_cu12-10.3.5.147-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\nCollecting nvidia-cusolver-cu12==11.6.1.9 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cusolver_cu12-11.6.1.9-py3-none-manylinux2014_x86_64.whl.metadata (1.6 kB)\nCollecting nvidia-cusparse-cu12==12.3.1.170 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_cusparse_cu12-12.3.1.170-py3-none-manylinux2014_x86_64.whl.metadata (1.6 kB)\nRequirement already satisfied: nvidia-cusparselt-cu12==0.6.2 in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (0.6.2)\nRequirement already satisfied: nvidia-nccl-cu12==2.21.5 in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (2.21.5)\nRequirement already satisfied: nvidia-nvtx-cu12==12.4.127 in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (12.4.127)\nCollecting nvidia-nvjitlink-cu12==12.4.127 (from torch>=2.0.0->torchmetrics)\n  Downloading nvidia_nvjitlink_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\nRequirement already satisfied: triton==3.2.0 in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (3.2.0)\nRequirement already satisfied: sympy==1.13.1 in /usr/local/lib/python3.11/dist-packages (from torch>=2.0.0->torchmetrics) (1.13.1)\nRequirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from sympy==1.13.1->torch>=2.0.0->torchmetrics) (1.3.0)\nRequirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.11/dist-packages (from jinja2->torch>=2.0.0->torchmetrics) (3.0.2)\nRequirement already satisfied: intel-openmp<2026,>=2024 in /usr/local/lib/python3.11/dist-packages (from mkl->numpy>1.20.0->torchmetrics) (2024.2.0)\nRequirement already satisfied: tbb==2022.* in /usr/local/lib/python3.11/dist-packages (from mkl->numpy>1.20.0->torchmetrics) (2022.2.0)\nRequirement already satisfied: tcmlib==1.* in /usr/local/lib/python3.11/dist-packages (from tbb==2022.*->mkl->numpy>1.20.0->torchmetrics) (1.4.0)\nRequirement already satisfied: intel-cmplr-lib-rt in /usr/local/lib/python3.11/dist-packages (from mkl_umath->numpy>1.20.0->torchmetrics) (2024.2.0)\nRequirement already satisfied: intel-cmplr-lib-ur==2024.2.0 in /usr/local/lib/python3.11/dist-packages (from intel-openmp<2026,>=2024->mkl->numpy>1.20.0->torchmetrics) (2024.2.0)\nDownloading nvidia_cublas_cu12-12.4.5.8-py3-none-manylinux2014_x86_64.whl (363.4 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m363.4/363.4 MB\u001b[0m \u001b[31m4.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_cuda_cupti_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl (13.8 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m13.8/13.8 MB\u001b[0m \u001b[31m88.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_cuda_nvrtc_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl (24.6 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m24.6/24.6 MB\u001b[0m \u001b[31m80.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_cuda_runtime_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl (883 kB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m883.7/883.7 kB\u001b[0m \u001b[31m45.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n\u001b[?25hDownloading nvidia_cudnn_cu12-9.1.0.70-py3-none-manylinux2014_x86_64.whl (664.8 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m664.8/664.8 MB\u001b[0m \u001b[31m956.0 kB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_cufft_cu12-11.2.1.3-py3-none-manylinux2014_x86_64.whl (211.5 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m211.5/211.5 MB\u001b[0m \u001b[31m7.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_curand_cu12-10.3.5.147-py3-none-manylinux2014_x86_64.whl (56.3 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m56.3/56.3 MB\u001b[0m \u001b[31m33.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_cusolver_cu12-11.6.1.9-py3-none-manylinux2014_x86_64.whl (127.9 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m127.9/127.9 MB\u001b[0m \u001b[31m5.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0mm\n\u001b[?25hDownloading nvidia_cusparse_cu12-12.3.1.170-py3-none-manylinux2014_x86_64.whl (207.5 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m207.5/207.5 MB\u001b[0m \u001b[31m8.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m00:01\u001b[0m\n\u001b[?25hDownloading nvidia_nvjitlink_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl (21.1 MB)\n\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m21.1/21.1 MB\u001b[0m \u001b[31m88.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m:00:01\u001b[0m0:01\u001b[0m\n\u001b[?25hInstalling collected packages: nvidia-nvjitlink-cu12, nvidia-curand-cu12, nvidia-cufft-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, nvidia-cusparse-cu12, nvidia-cudnn-cu12, nvidia-cusolver-cu12\n  Attempting uninstall: nvidia-nvjitlink-cu12\n    Found existing installation: nvidia-nvjitlink-cu12 12.5.82\n    Uninstalling nvidia-nvjitlink-cu12-12.5.82:\n      Successfully uninstalled nvidia-nvjitlink-cu12-12.5.82\n  Attempting uninstall: nvidia-curand-cu12\n    Found existing installation: nvidia-curand-cu12 10.3.6.82\n    Uninstalling nvidia-curand-cu12-10.3.6.82:\n      Successfully uninstalled nvidia-curand-cu12-10.3.6.82\n  Attempting uninstall: nvidia-cufft-cu12\n    Found existing installation: nvidia-cufft-cu12 11.2.3.61\n    Uninstalling nvidia-cufft-cu12-11.2.3.61:\n      Successfully uninstalled nvidia-cufft-cu12-11.2.3.61\n  Attempting uninstall: nvidia-cuda-runtime-cu12\n    Found existing installation: nvidia-cuda-runtime-cu12 12.5.82\n    Uninstalling nvidia-cuda-runtime-cu12-12.5.82:\n      Successfully uninstalled nvidia-cuda-runtime-cu12-12.5.82\n  Attempting uninstall: nvidia-cuda-nvrtc-cu12\n    Found existing installation: nvidia-cuda-nvrtc-cu12 12.5.82\n    Uninstalling nvidia-cuda-nvrtc-cu12-12.5.82:\n      Successfully uninstalled nvidia-cuda-nvrtc-cu12-12.5.82\n  Attempting uninstall: nvidia-cuda-cupti-cu12\n    Found existing installation: nvidia-cuda-cupti-cu12 12.5.82\n    Uninstalling nvidia-cuda-cupti-cu12-12.5.82:\n      Successfully uninstalled nvidia-cuda-cupti-cu12-12.5.82\n  Attempting uninstall: nvidia-cublas-cu12\n    Found existing installation: nvidia-cublas-cu12 12.5.3.2\n    Uninstalling nvidia-cublas-cu12-12.5.3.2:\n      Successfully uninstalled nvidia-cublas-cu12-12.5.3.2\n  Attempting uninstall: nvidia-cusparse-cu12\n    Found existing installation: nvidia-cusparse-cu12 12.5.1.3\n    Uninstalling nvidia-cusparse-cu12-12.5.1.3:\n      Successfully uninstalled nvidia-cusparse-cu12-12.5.1.3\n  Attempting uninstall: nvidia-cudnn-cu12\n    Found existing installation: nvidia-cudnn-cu12 9.3.0.75\n    Uninstalling nvidia-cudnn-cu12-9.3.0.75:\n      Successfully uninstalled nvidia-cudnn-cu12-9.3.0.75\n  Attempting uninstall: nvidia-cusolver-cu12\n    Found existing installation: nvidia-cusolver-cu12 11.6.3.83\n    Uninstalling nvidia-cusolver-cu12-11.6.3.83:\n      Successfully uninstalled nvidia-cusolver-cu12-11.6.3.83\nSuccessfully installed nvidia-cublas-cu12-12.4.5.8 nvidia-cuda-cupti-cu12-12.4.127 nvidia-cuda-nvrtc-cu12-12.4.127 nvidia-cuda-runtime-cu12-12.4.127 nvidia-cudnn-cu12-9.1.0.70 nvidia-cufft-cu12-11.2.1.3 nvidia-curand-cu12-10.3.5.147 nvidia-cusolver-cu12-11.6.1.9 nvidia-cusparse-cu12-12.3.1.170 nvidia-nvjitlink-cu12-12.4.127\n","output_type":"stream"}],"execution_count":26},{"cell_type":"code","source":"import torch\nimport torch.nn as nn\nimport torchvision\nfrom torchvision import models\nfrom torch.nn.functional import relu\nimport os\nimport numpy as np\nfrom PIL import Image\nfrom IPython.display import display\nimport matplotlib.pyplot as plt\nimport cv2\nimport torch.nn.functional as F\nfrom torch.utils.data import DataLoader\nimport torchvision.transforms as transforms\nimport pytorch_lightning as pl\nfrom pytorch_lightning import Trainer\nfrom torch.utils.data import random_split\nfrom pytorch_lightning.callbacks import ModelCheckpoint, EarlyStopping\nfrom pytorch_lightning.loggers import WandbLogger\nimport wandb\nfrom torchmetrics.segmentation import DiceScore\n\n\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:09.873494Z","iopub.execute_input":"2025-08-04T13:48:09.874151Z","iopub.status.idle":"2025-08-04T13:48:27.503306Z","shell.execute_reply.started":"2025-08-04T13:48:09.874125Z","shell.execute_reply":"2025-08-04T13:48:27.502641Z"}},"outputs":[],"execution_count":1},{"cell_type":"code","source":"def mirror_extrapolation(image): # input: image nparray shape(H, W, C) output: (H, W, C)\n    image = cv2.copyMakeBorder(image, 92, 92, 92, 92, cv2.BORDER_REFLECT)\n    return image\n    \n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.504678Z","iopub.execute_input":"2025-08-04T13:48:27.504969Z","iopub.status.idle":"2025-08-04T13:48:27.509022Z","shell.execute_reply.started":"2025-08-04T13:48:27.504924Z","shell.execute_reply":"2025-08-04T13:48:27.508234Z"}},"outputs":[],"execution_count":2},{"cell_type":"code","source":"def image_to_tiles(image): # intput: image_size (1280, 1918, 3), output: (20,3,572,572),postitions (list of top left coordinates)\n    padded_image = mirror_extrapolation(image)\n    width = padded_image.shape[1]\n    height = padded_image.shape[0]\n    tiles = []\n    positions = []\n    w = 0\n    while(w+572 < width):\n        h = 0\n        while(h+572 < height):\n            tile = padded_image[h:h+572,w:w+572]\n            if tile.ndim == 2:\n                tile = tile[..., np.newaxis]\n            position = (h,w)\n            tiles.append(tile)\n            positions.append(position)\n            h += 388\n        tile = padded_image[height-572:, w: w+572]\n        if tile.ndim == 2:\n            tile = tile[..., np.newaxis]\n        position = (height-572, w)\n        tiles.append(tile)\n        positions.append(position)\n        w += 388\n  \n    h = 0\n    while(h+572 < height):\n        tile = padded_image[h:h+572,width - 572:]\n        if tile.ndim == 2:\n            tile = tile[..., np.newaxis]\n        position = (h,width-572)\n        tiles.append(tile)\n        positions.append(position)\n        h += 388\n    tile = padded_image[height-572: ,width - 572:]\n    if tile.ndim == 2:\n        tile = tile[..., np.newaxis]\n    position = (height-572, width - 572)\n    tiles.append(tile)\n    positions.append(position)\n    out = np.stack(np.array(tiles), dtype=np.float32)\n    out = np.moveaxis(out, 3, 1)\n    out_tensor = torch.from_numpy(out)\n    return (out_tensor, positions)\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.509649Z","iopub.execute_input":"2025-08-04T13:48:27.509927Z","iopub.status.idle":"2025-08-04T13:48:27.530575Z","shell.execute_reply.started":"2025-08-04T13:48:27.5099Z","shell.execute_reply":"2025-08-04T13:48:27.529878Z"}},"outputs":[],"execution_count":3},{"cell_type":"code","source":"# Creating a custom dataset class\nclass ImageDataset(torch.utils.data.Dataset):\n    def __init__(self, root, root_mask,transform=None):\n        self.data_root = root\n        self.data_root_mask = root_mask\n        self.images = os.listdir(root)\n        self.label_images = os.listdir(root_mask)\n        self.transform = transform\n\n    # Defining the length of the dataset\n    def __len__(self):\n        return len(self.images)\n\n    # Defining the method to get an item from the dataset\n    def __getitem__(self, index):\n        image_path = os.path.join(self.data_root, self.images[index])\n        label_path = os.path.join(self.data_root_mask, self.label_images[index])\n        image = np.array(Image.open(image_path))\n        label = np.array(Image.open(label_path))\n        # Applying the transform\n        if self.transform:\n            image = self.transform(image)\n            label = self.transform(label)\n        batch_tiles, positions = image_to_tiles(image)\n        label_tiles, label_positions = image_to_tiles(label[:,:, np.newaxis])\n        return (batch_tiles, positions, label_tiles[:,0,:,:], label_positions, image, label)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.53225Z","iopub.execute_input":"2025-08-04T13:48:27.532647Z","iopub.status.idle":"2025-08-04T13:48:27.548649Z","shell.execute_reply.started":"2025-08-04T13:48:27.532629Z","shell.execute_reply":"2025-08-04T13:48:27.548079Z"}},"outputs":[],"execution_count":4},{"cell_type":"code","source":"root_data =  \"/kaggle/working/train/train\"\nroot_data_mask =  \"/kaggle/working/train_masks/train_masks\"\ntransform = transforms.Compose([\n    transforms.ToTensor(),\n])\ndataset = ImageDataset(root_data,root_data_mask)\ndataset[0][2].shape\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.549315Z","iopub.execute_input":"2025-08-04T13:48:27.549562Z","iopub.status.idle":"2025-08-04T13:48:27.706507Z","shell.execute_reply.started":"2025-08-04T13:48:27.549539Z","shell.execute_reply":"2025-08-04T13:48:27.705765Z"}},"outputs":[{"execution_count":5,"output_type":"execute_result","data":{"text/plain":"torch.Size([20, 572, 572])"},"metadata":{}}],"execution_count":5},{"cell_type":"code","source":"dataset = ImageDataset(\n    root_data,\n    root_data_mask\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.707369Z","iopub.execute_input":"2025-08-04T13:48:27.707897Z","iopub.status.idle":"2025-08-04T13:48:27.717441Z","shell.execute_reply.started":"2025-08-04T13:48:27.707871Z","shell.execute_reply":"2025-08-04T13:48:27.716746Z"}},"outputs":[],"execution_count":6},{"cell_type":"code","source":"\n# Example: 80% train, 20% val\nval_split = 0.2\ntotal_size = len(dataset)\nval_size = int(val_split * total_size)\ntrain_size = total_size - val_size\n\ngenerator = torch.Generator().manual_seed(42)\ntrain_dataset, val_dataset = random_split(dataset, [train_size, val_size], generator=generator)\n# we need to define a test dataset if we have it","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.718173Z","iopub.execute_input":"2025-08-04T13:48:27.718442Z","iopub.status.idle":"2025-08-04T13:48:27.724301Z","shell.execute_reply.started":"2025-08-04T13:48:27.718417Z","shell.execute_reply":"2025-08-04T13:48:27.723667Z"}},"outputs":[],"execution_count":7},{"cell_type":"code","source":"train_loader = DataLoader(train_dataset, batch_size=1, shuffle=True, num_workers=2)\nval_loader = DataLoader(val_dataset, batch_size=1, shuffle=False, num_workers=2)\n# test_loader = DataLoader(test_dataset, batch_size=1, shuffle=False, num_workers=2)\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.724937Z","iopub.execute_input":"2025-08-04T13:48:27.725231Z","iopub.status.idle":"2025-08-04T13:48:27.734251Z","shell.execute_reply.started":"2025-08-04T13:48:27.725204Z","shell.execute_reply":"2025-08-04T13:48:27.733479Z"}},"outputs":[],"execution_count":8},{"cell_type":"code","source":"def crop_img(x_tensor, x_target):\n  target_size = x_target.size()[2]\n  tensor_size = x_tensor.size()[2]\n  delta = (tensor_size - target_size) // 2\n  return x_tensor[:,:,delta: tensor_size - delta, delta: tensor_size -delta]","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.735025Z","iopub.execute_input":"2025-08-04T13:48:27.735309Z","iopub.status.idle":"2025-08-04T13:48:27.749165Z","shell.execute_reply.started":"2025-08-04T13:48:27.735293Z","shell.execute_reply":"2025-08-04T13:48:27.748137Z"}},"outputs":[],"execution_count":9},{"cell_type":"code","source":"class UNet(nn.Module):\n    def __init__(self, n_class, input_channels):\n        super().__init__()\n        # Downsampling Formula: size_cạnh_ảnh_out = [(size_cạnh_ảnh_in + 2*padding - kernel_size)/stride] + 1\n        # Upsampling Formula: size_cạnh_ảnh_out = (size_cạnh_ảnh_in - 1)*stride - 2*padding_in + kernel_size + padding_out\n        self.conv1e = nn.Sequential(\n            nn.Conv2d(in_channels=input_channels, out_channels=64, kernel_size=3, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode='zeros', device=None, dtype=None),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=64, out_channels=64, kernel_size=3),\n            nn.ReLU()\n        )\n        self.pool1e = nn.MaxPool2d(kernel_size = 2, stride = 2, padding=0, dilation=1, return_indices=False, ceil_mode=False)\n        self.conv2e = nn.Sequential(\n            nn.Conv2d(in_channels=64, out_channels=128, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=128, out_channels=128, kernel_size=3),\n            nn.ReLU()\n        )\n        self.pool2e = nn.MaxPool2d(kernel_size = 2, stride = 2, padding=0, dilation=1, return_indices=False, ceil_mode=False)\n        self.conv3e = nn.Sequential(\n            nn.Conv2d(in_channels=128, out_channels=256, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=256, out_channels=256, kernel_size=3),\n            nn.ReLU()\n        )\n        self.pool3e = nn.MaxPool2d(kernel_size = 2, stride = 2, padding=0, dilation=1, return_indices=False, ceil_mode=False)\n        self.conv4e = nn.Sequential(\n            nn.Conv2d(in_channels=256, out_channels=512, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=512, out_channels=512, kernel_size=3),\n            nn.ReLU()\n        )\n        self.pool4e = nn.MaxPool2d(kernel_size = 2, stride = 2, padding=0, dilation=1, return_indices=False, ceil_mode=False)\n        self.conv5e = nn.Sequential(\n            nn.Conv2d(in_channels=512, out_channels=1024, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=1024, out_channels=1024, kernel_size=3),\n            nn.ReLU()\n        )\n        self.up1d = nn.ConvTranspose2d(in_channels = 1024, out_channels = 512, kernel_size = 2, stride= 2, padding=0, output_padding=0, groups=1, bias=True, dilation=1, padding_mode='zeros', device=None, dtype=None)\n        self.conv1d = nn.Sequential(\n            nn.Conv2d(in_channels=1024, out_channels=512, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=512, out_channels=512, kernel_size=3),\n            nn.ReLU()\n        )\n        self.up2d = nn.ConvTranspose2d(in_channels = 512, out_channels = 256, kernel_size = 2, stride= 2, padding=0, output_padding=0, groups=1, bias=True, dilation=1, padding_mode='zeros', device=None, dtype=None)\n        self.conv2d = nn.Sequential(\n            nn.Conv2d(in_channels=512, out_channels=256, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=256, out_channels=256, kernel_size=3),\n            nn.ReLU()\n        )\n        self.up3d = nn.ConvTranspose2d(in_channels = 256, out_channels = 128, kernel_size = 2, stride= 2, padding=0, output_padding=0, groups=1, bias=True, dilation=1, padding_mode='zeros', device=None, dtype=None)\n        self.conv3d = nn.Sequential(\n            nn.Conv2d(in_channels=256, out_channels=128, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=128, out_channels=128, kernel_size=3),\n            nn.ReLU()\n        )\n        self.up4d = nn.ConvTranspose2d(in_channels = 128, out_channels = 64, kernel_size = 2, stride= 2, padding=0, output_padding=0, groups=1, bias=True, dilation=1, padding_mode='zeros', device=None, dtype=None)\n        self.conv4d = nn.Sequential(\n            nn.Conv2d(in_channels=128, out_channels=64, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=64, out_channels=64, kernel_size=3),\n            nn.ReLU(),\n            nn.Conv2d(in_channels=64, out_channels=n_class, kernel_size=1) # n_class includes backgground\n        )\n\n    def forward(self, x):\n        cv1e = self.conv1e(x)\n        # print_feature_map(cv1e)\n        p1e = self.pool1e(cv1e)\n        cv2e = self.conv2e(p1e)\n        # print_feature_map(cv2e)\n        p2e = self.pool2e(cv2e)\n        cv3e = self.conv3e(p2e)\n        # print_feature_map(cv3e)\n        p3e = self.pool3e(cv3e)\n        cv4e = self.conv4e(p3e)\n        # print_feature_map(cv4e)\n        p4e = self.pool4e(cv4e)\n        cv5e = self.conv5e(p4e)\n        # print_feature_map(cv5e)\n        u1d = self.up1d(cv5e)\n        cv4ec = crop_img(cv4e, u1d)\n        upcat1d = torch.cat([cv4ec,u1d], dim = 1)\n        # print_feature_map(upcat1d)\n        cv1d = self.conv1d(upcat1d)\n        u2d = self.up2d(cv1d)\n        cv3ec = crop_img(cv3e, u2d)\n        upcat2d = torch.cat([cv3ec,u2d], dim = 1)\n        # print_feature_map(upcat2d)\n        cv2d = self.conv2d(upcat2d)\n        u3d = self.up3d(cv2d)\n        cv2ec = crop_img(cv2e, u3d)\n        upcat3d = torch.cat([cv2ec,u3d], dim = 1)\n        # print_feature_map(upcat3d)\n        cv3d = self.conv3d(upcat3d)\n        u4d = self.up4d(cv3d)\n        cv1ec = crop_img(cv1e, u4d)\n        upcat4d = torch.cat([cv1ec,u4d], dim = 1)\n        # print_feature_map(upcat4d)\n        cv4d = self.conv4d(upcat4d)\n        out = cv4d\n        \n        return out\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.751568Z","iopub.execute_input":"2025-08-04T13:48:27.751923Z","iopub.status.idle":"2025-08-04T13:48:27.769591Z","shell.execute_reply.started":"2025-08-04T13:48:27.751902Z","shell.execute_reply":"2025-08-04T13:48:27.768778Z"}},"outputs":[],"execution_count":10},{"cell_type":"code","source":"def unet_loss(logits, y_true, weight_map=None, class_weights=None):\n    # logits: (B, C, H, W)\n    # y_true: (B, H, W)\n    # weight_map: (B, H, W) or None\n    # class_weights: (C,) or None\n    \n    loss = F.cross_entropy(logits, y_true, weight=class_weights, reduction='none')  # (B, H, W)\n\n    if weight_map is not None:\n        loss = loss * weight_map\n\n    return loss.mean()\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.770486Z","iopub.execute_input":"2025-08-04T13:48:27.77086Z","iopub.status.idle":"2025-08-04T13:48:27.786281Z","shell.execute_reply.started":"2025-08-04T13:48:27.770833Z","shell.execute_reply":"2025-08-04T13:48:27.785621Z"}},"outputs":[],"execution_count":11},{"cell_type":"code","source":"def center_crop(tensor, target_height, target_width):\n    _, h, w = tensor.shape\n    start_y = (h - target_height) // 2\n    start_x = (w - target_width) // 2\n    return tensor[:, start_y:start_y+target_height, start_x:start_x+target_width]\n\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.78707Z","iopub.execute_input":"2025-08-04T13:48:27.787518Z","iopub.status.idle":"2025-08-04T13:48:27.801646Z","shell.execute_reply.started":"2025-08-04T13:48:27.787501Z","shell.execute_reply":"2025-08-04T13:48:27.800982Z"}},"outputs":[],"execution_count":12},{"cell_type":"code","source":"# device = torch.device(\"cuda\" if torch.cuda.is_available() else \"cpu\")\n\n# model = UNet(2,3).to(device) \n\n# # stochastic gradient descent (SGD) optimizer\n# optimizer = torch.optim.SGD(model.parameters(), lr=0.05)\n\n# num_epochs = 1\n# count = 0\n# for epoch in range(num_epochs):\n#     model = model.train() \n#     for batch_idx, (batch_tiles, positions, label_tiles, label_positions, image, label) in enumerate(train_loader):\n#         B, T, C, H, W = batch_tiles.shape\n#         batch_tiles = batch_tiles.view(B * T, C, H, W).to(device) \n#         label_tiles = label_tiles.view(B * T, H, W).to(device) \n#         logits = model(batch_tiles)\n#         label_tiles = center_crop(label_tiles, logits.shape[2], logits.shape[3])\n\n#         # compute loss\n#         loss = F.cross_entropy(logits, label_tiles)\n\n#         # weight update\n#         optimizer.zero_grad()\n#         torch.cuda.empty_cache()\n#         loss.backward()\n#         optimizer.step()\n#         print(torch.cuda.memory_allocated() / 1024**3, 'GB used')\n#         print(torch.cuda.memory_reserved() / 1024**3, 'GB reserved')\n\n#     print(\"Train finish\")\n        ","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.802485Z","iopub.execute_input":"2025-08-04T13:48:27.802794Z","iopub.status.idle":"2025-08-04T13:48:27.813882Z","shell.execute_reply.started":"2025-08-04T13:48:27.802762Z","shell.execute_reply":"2025-08-04T13:48:27.813199Z"}},"outputs":[],"execution_count":13},{"cell_type":"code","source":"class UNetLightning(pl.LightningModule):\n    def __init__(self, model, lr=0.05):\n        super().__init__()\n        self.model = model\n        self.lr = lr\n        self.dice = DiceScore(average='macro', num_classes=2)\n        self.automatic_optimization = False\n\n\n    def forward(self, x):\n        return self.model(x)\n\n    def training_step(self, batch, batch_idx):\n        batch_tiles, _, label_tiles, _, _, _ = batch\n        B, T, C, H, W = batch_tiles.shape\n        batch_tiles = batch_tiles.view(B * T, C, H, W)\n        label_tiles = label_tiles.view(B * T, H, W).long()\n\n        tile_chunks = torch.split(batch_tiles, 5)\n        label_chunks = torch.split(label_tiles, 5)\n\n        total_loss = 0\n        for tile_batch, label_batch in zip(tile_chunks, label_chunks):\n            with torch.amp.autocast(device_type=\"cuda\"):\n                logits = self(tile_batch)\n                label_batch = center_crop(label_batch, logits.shape[2], logits.shape[3])\n                loss = F.cross_entropy(logits, label_batch)\n            self.manual_backward(loss)\n            total_loss += loss\n\n            # Free memory\n            del tile_batch, label_batch, logits, loss\n            torch.cuda.empty_cache()\n\n        avg_loss = total_loss / len(tile_chunks)\n        self.log(\"train_loss\", avg_loss, on_step=False, on_epoch=True)\n        return avg_loss\n\n    def validation_step(self, batch, batch_idx):\n        batch_tiles, _, label_tiles, _, _, _ = batch\n        B, T, C, H, W = batch_tiles.shape\n        batch_tiles = batch_tiles.view(B * T, C, H, W)\n        label_tiles = label_tiles.view(B * T, H, W).long()\n\n        tile_chunks = torch.split(batch_tiles, 5)\n        label_chunks = torch.split(label_tiles, 5)\n\n        total_loss = 0\n        for tile_batch, label_batch in zip(tile_chunks, label_chunks):\n            with torch.amp.autocast(device_type=\"cuda\"):\n                logits = self(tile_batch)\n                label_batch = center_crop(label_batch, logits.shape[2], logits.shape[3])\n                loss = F.cross_entropy(logits, label_batch)\n                preds = torch.argmax(logits, dim=1)\n                self.dice(preds, label_batch)\n            total_loss += loss\n\n            del tile_batch, label_batch, logits, loss, preds\n            torch.cuda.empty_cache()\n\n        avg_loss = total_loss / len(tile_chunks)\n        self.log(\"val_loss\", avg_loss, on_step=False, on_epoch=True)\n        self.log(\"val_dice\", self.dice, on_step=False, on_epoch=True)\n        return avg_loss\n\n    def test_step(self, batch, batch_idx):\n        batch_tiles, _, label_tiles, _, _, _ = batch\n        B, T, C, H, W = batch_tiles.shape\n        batch_tiles = batch_tiles.view(B * T, C, H, W)\n        label_tiles = label_tiles.view(B * T, H, W).long()\n\n        tile_chunks = torch.split(batch_tiles, 5)\n        label_chunks = torch.split(label_tiles, 5)\n\n        total_loss = 0\n        for tile_batch, label_batch in zip(tile_chunks, label_chunks):\n            with torch.amp.autocast(device_type=\"cuda\"):\n                logits = self(tile_batch)\n                label_batch = center_crop(label_batch, logits.shape[2], logits.shape[3])\n                loss = F.cross_entropy(logits, label_batch)\n                preds = torch.argmax(logits, dim=1)\n                self.dice(preds, label_batch)\n            total_loss += loss\n\n            del tile_batch, label_batch, logits, loss, preds\n            torch.cuda.empty_cache()\n\n        avg_loss = total_loss / len(tile_chunks)\n        self.log(\"test_loss\", avg_loss, on_step=False, on_epoch=True)\n        self.log(\"test_dice\", self.dice, on_step=False, on_epoch=True)\n        return avg_loss\n\n    def on_validation_epoch_start(self):\n        self.dice.reset()\n\n    def on_test_epoch_start(self):\n        self.dice.reset()\n\n    def configure_optimizers(self):\n        return torch.optim.SGD(self.model.parameters(), lr=self.lr)\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.814658Z","iopub.execute_input":"2025-08-04T13:48:27.814914Z","iopub.status.idle":"2025-08-04T13:48:27.82972Z","shell.execute_reply.started":"2025-08-04T13:48:27.814893Z","shell.execute_reply":"2025-08-04T13:48:27.828982Z"}},"outputs":[],"execution_count":14},{"cell_type":"code","source":"def print_feature_map(x):\n    # x: shape (20, 2, H, W)\n    x = x.detach().cpu().numpy()  # Convert to NumPy (shape: 20, 2, H, W)\n    if len(x.shape) < 4:\n        x = x[:,np.newaxis, :,:]\n    num_maps = x.shape[0]\n    grid_size = int(np.ceil(np.sqrt(num_maps)))  # E.g., 5x4 grid for 20 maps\n\n    fig, axes = plt.subplots(grid_size, grid_size, figsize=(15, 15))\n    fig.suptitle(\"Binary Comparison Heatmaps of Feature Maps\", fontsize=16)\n\n    for i in range(grid_size * grid_size):\n        ax = axes[i // grid_size, i % grid_size]\n\n        if i < num_maps:\n            fmap = x[i]  # Shape: (2, H, W)\n            if x[i].shape[0] == 2:\n                binary_map = np.where(fmap[0] > fmap[1], 255, 0)\n            else:\n                binary_map = np.where(fmap[0] ==0, 0, 255)\n            ax.imshow(binary_map, cmap='gray', vmin=0, vmax=255)\n            ax.set_title(f'Feature Map {i}')\n        else:\n            ax.axis('off')  # Hide extra subplots\n\n        ax.axis('off')\n\n    plt.tight_layout()\n    plt.subplots_adjust(top=0.93)  # Leave space for suptitle\n    plt.show()\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T16:11:03.414559Z","iopub.execute_input":"2025-08-04T16:11:03.415384Z","iopub.status.idle":"2025-08-04T16:11:03.423886Z","shell.execute_reply.started":"2025-08-04T16:11:03.415357Z","shell.execute_reply":"2025-08-04T16:11:03.422934Z"}},"outputs":[],"execution_count":21},{"cell_type":"code","source":"api_key = os.environ.get(\"WANDB_API_KEY\", \"83f4544a22543e319c6009abceaac90b634c68a3\")  # fallback if env var not set\n\nif api_key == \"\":\n    raise ValueError(\"Please set your wandb key in the code or in the environment variable WANDB_API_KEY\")\nelse:\n    print(\"WandB API key is set. Proceeding with login...\")\n\nwandb.login(key=api_key)\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:27.830485Z","iopub.execute_input":"2025-08-04T13:48:27.831108Z","iopub.status.idle":"2025-08-04T13:48:33.756287Z","shell.execute_reply.started":"2025-08-04T13:48:27.83107Z","shell.execute_reply":"2025-08-04T13:48:33.755703Z"}},"outputs":[{"name":"stdout","text":"WandB API key is set. Proceeding with login...\n","output_type":"stream"},{"name":"stderr","text":"\u001b[34m\u001b[1mwandb\u001b[0m: \u001b[33mWARNING\u001b[0m If you're specifying your api key in code, ensure this code is not shared publicly.\n\u001b[34m\u001b[1mwandb\u001b[0m: \u001b[33mWARNING\u001b[0m Consider setting the WANDB_API_KEY environment variable, or running `wandb login` from the command line.\n\u001b[34m\u001b[1mwandb\u001b[0m: No netrc file found, creating one.\n\u001b[34m\u001b[1mwandb\u001b[0m: Appending key for api.wandb.ai to your netrc file: /root/.netrc\n\u001b[34m\u001b[1mwandb\u001b[0m: Currently logged in as: \u001b[33m10423057\u001b[0m (\u001b[33m10423057-vietnamese-german-university\u001b[0m) to \u001b[32mhttps://api.wandb.ai\u001b[0m. Use \u001b[1m`wandb login --relogin`\u001b[0m to force relogin\n","output_type":"stream"},{"execution_count":15,"output_type":"execute_result","data":{"text/plain":"True"},"metadata":{}}],"execution_count":15},{"cell_type":"code","source":"\nmodel = UNetLightning(model=UNet(2, 3), lr=0.05)\n\nwandb_logger = WandbLogger(\n    project=\"unet-segmentation\",  # Project name\n    name=\"run-1\",                    # Optional: custom name\n    log_model=True\n)\n\n\ncheckpoint_callback = ModelCheckpoint(\n    monitor='val_dice',           # What to monitor\n    mode='max',                   # Maximize Dice\n    save_top_k=1,                 # Keep only best model\n    filename='best-checkpoint',   # Save file name\n    save_weights_only=True\n)\nearly_stopping_callback = EarlyStopping(\n    monitor='val_dice',\n    patience=5,           # Stop after 5 epochs of no improvement\n    mode='max',           # Maximize val_dice\n    verbose=True\n)\n\ntrainer = pl.Trainer(\n    max_epochs=1,\n    accelerator=\"gpu\",\n    fast_dev_run=False,\n    devices=1,\n    precision=16,\n    logger=wandb_logger,\n    callbacks=[checkpoint_callback, early_stopping_callback],\n    log_every_n_steps=1,\n    \n)\n\ntrainer.fit(model, train_dataloaders = train_loader, val_dataloaders=val_loader)\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T13:48:51.882998Z","iopub.execute_input":"2025-08-04T13:48:51.883686Z","iopub.status.idle":"2025-08-04T16:05:57.958494Z","shell.execute_reply.started":"2025-08-04T13:48:51.883665Z","shell.execute_reply":"2025-08-04T16:05:57.957794Z"}},"outputs":[{"name":"stderr","text":"/usr/local/lib/python3.11/dist-packages/lightning_fabric/connector.py:571: `precision=16` is supported for historical reasons but its usage is discouraged. Please set your precision to 16-mixed instead!\n","output_type":"stream"},{"output_type":"display_data","data":{"text/plain":"<IPython.core.display.HTML object>","text/html":"Tracking run with wandb version 0.20.1"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"<IPython.core.display.HTML object>","text/html":"Run data is saved locally in <code>./wandb/run-20250804_134852-hlyb4q5o</code>"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"<IPython.core.display.HTML object>","text/html":"Syncing run <strong><a href='https://wandb.ai/10423057-vietnamese-german-university/unet-segmentation/runs/hlyb4q5o' target=\"_blank\">run-1</a></strong> to <a href='https://wandb.ai/10423057-vietnamese-german-university/unet-segmentation' target=\"_blank\">Weights & Biases</a> (<a href='https://wandb.me/developer-guide' target=\"_blank\">docs</a>)<br>"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"<IPython.core.display.HTML object>","text/html":" View project at <a href='https://wandb.ai/10423057-vietnamese-german-university/unet-segmentation' target=\"_blank\">https://wandb.ai/10423057-vietnamese-german-university/unet-segmentation</a>"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"<IPython.core.display.HTML object>","text/html":" View run at <a href='https://wandb.ai/10423057-vietnamese-german-university/unet-segmentation/runs/hlyb4q5o' target=\"_blank\">https://wandb.ai/10423057-vietnamese-german-university/unet-segmentation/runs/hlyb4q5o</a>"},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"Sanity Checking: |          | 0/? [00:00<?, ?it/s]","application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":""}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"Training: |          | 0/? [00:00<?, ?it/s]","application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":"dadc8ea9d2fc45faae3461aa835bab24"}},"metadata":{}},{"output_type":"display_data","data":{"text/plain":"Validation: |          | 0/? [00:00<?, ?it/s]","application/vnd.jupyter.widget-view+json":{"version_major":2,"version_minor":0,"model_id":""}},"metadata":{}}],"execution_count":17},{"cell_type":"code","source":"# trainer.test(model, dataloaders=test_loader)\n# in case we have a test dataset","metadata":{"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"torch.save(model.model.state_dict(), \"/kaggle/working/unet_weights.pth\")\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T16:13:51.797567Z","iopub.execute_input":"2025-08-04T16:13:51.798295Z","iopub.status.idle":"2025-08-04T16:13:51.958418Z","shell.execute_reply.started":"2025-08-04T16:13:51.79827Z","shell.execute_reply":"2025-08-04T16:13:51.957756Z"}},"outputs":[],"execution_count":28},{"cell_type":"code","source":"unet = UNet(2, 3)\nunet.load_state_dict(torch.load(\"/kaggle/working/unet_weights.pth\"))\nunet.eval()\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T16:14:20.192915Z","iopub.execute_input":"2025-08-04T16:14:20.193421Z","iopub.status.idle":"2025-08-04T16:14:20.584096Z","shell.execute_reply.started":"2025-08-04T16:14:20.193388Z","shell.execute_reply":"2025-08-04T16:14:20.583346Z"}},"outputs":[{"execution_count":29,"output_type":"execute_result","data":{"text/plain":"UNet(\n  (conv1e): Sequential(\n    (0): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (pool1e): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n  (conv2e): Sequential(\n    (0): Conv2d(64, 128, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (pool2e): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n  (conv3e): Sequential(\n    (0): Conv2d(128, 256, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (pool3e): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n  (conv4e): Sequential(\n    (0): Conv2d(256, 512, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (pool4e): MaxPool2d(kernel_size=2, stride=2, padding=0, dilation=1, ceil_mode=False)\n  (conv5e): Sequential(\n    (0): Conv2d(512, 1024, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(1024, 1024, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (up1d): ConvTranspose2d(1024, 512, kernel_size=(2, 2), stride=(2, 2))\n  (conv1d): Sequential(\n    (0): Conv2d(1024, 512, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (up2d): ConvTranspose2d(512, 256, kernel_size=(2, 2), stride=(2, 2))\n  (conv2d): Sequential(\n    (0): Conv2d(512, 256, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (up3d): ConvTranspose2d(256, 128, kernel_size=(2, 2), stride=(2, 2))\n  (conv3d): Sequential(\n    (0): Conv2d(256, 128, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n  )\n  (up4d): ConvTranspose2d(128, 64, kernel_size=(2, 2), stride=(2, 2))\n  (conv4d): Sequential(\n    (0): Conv2d(128, 64, kernel_size=(3, 3), stride=(1, 1))\n    (1): ReLU()\n    (2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1))\n    (3): ReLU()\n    (4): Conv2d(64, 2, kernel_size=(1, 1), stride=(1, 1))\n  )\n)"},"metadata":{}}],"execution_count":29},{"cell_type":"code","source":"with torch.no_grad():\n    x = unet(dataset[1000][0])","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T16:14:59.205006Z","iopub.execute_input":"2025-08-04T16:14:59.205302Z","iopub.status.idle":"2025-08-04T16:15:40.03957Z","shell.execute_reply.started":"2025-08-04T16:14:59.205282Z","shell.execute_reply":"2025-08-04T16:15:40.038972Z"}},"outputs":[],"execution_count":30},{"cell_type":"code","source":"x.shape","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T16:10:32.675632Z","iopub.execute_input":"2025-08-04T16:10:32.676486Z","iopub.status.idle":"2025-08-04T16:10:32.682682Z","shell.execute_reply.started":"2025-08-04T16:10:32.676458Z","shell.execute_reply":"2025-08-04T16:10:32.681999Z"}},"outputs":[{"execution_count":19,"output_type":"execute_result","data":{"text/plain":"torch.Size([20, 2, 388, 388])"},"metadata":{}}],"execution_count":19},{"cell_type":"code","source":"print_feature_map(x)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-04T16:15:55.327201Z","iopub.execute_input":"2025-08-04T16:15:55.327719Z","iopub.status.idle":"2025-08-04T16:15:57.336515Z","shell.execute_reply.started":"2025-08-04T16:15:55.327699Z","shell.execute_reply":"2025-08-04T16:15:57.335768Z"},"_kg_hide-output":true},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 1500x1500 with 25 Axes>","image/png":"iVBORw0KGgoAAAANSUhEUgAABdIAAAXDCAYAAADUfMyZAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAADVC0lEQVR4nOzdeXgV5dk/8PskQAJh39XKpqhVXBC1VhB3BcEFFQQXQJRK3ftaW5cqYNW69KVq3briiq1i0YpSV4pYaqvWaq11qyC4IIsIyC6Z3x/+kpeYZAxLck6Sz+e6cl1mzjwz98w55zZ8z5xnMkmSJAEAAAAAAFQoL9sFAAAAAABALhOkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDQA7q0qVLZDKZcj9NmzaN3XffPS655JJYvHhxhWNHjhwZmUwm7rzzzpotOsesW7cuJk6cGMcee2x06tQpGjduHE2aNIlu3brFCSecEPfdd1+sXbs222XWKnfeeWdkMpkYOXJktkvZYkreL193TOPGjYtMJhMHHnhgjdRF9q1ZsyYuvfTS6N69exQUFEQmk4kuXbp87bg///nPFfbvr/589tln1X4Mdd2cOXPKnNMpU6akrj9gwIDSdQ899NAaqhIAqCsaZLsAAKByvXv3ju233z4iIoqLi+Ojjz6KWbNmxbXXXht33313zJw5M7p165blKnPPP/7xjzjhhBNi9uzZkclkYvfdd4999tkn8vLyYs6cOfHwww/HQw89FJdddlm88cYb0aRJk2yXDFVy4IEHxowZM2L69OlC/Wp2+eWXxw033BAdOnSIY445Jpo0aRJt27bdqG2MGDGi0scaNWq0uSVutHHjxsX48eNj7NixMW7cuBrff3X77W9/G4MGDarwsQ8//DCeeOKJGq4IAKhLBOkAkMPOOOOMclfKzp8/Pw444IB4++234wc/+EFMnjy5zOM/+clP4uKLL46tttqqBivNHf/4xz9i//33j5UrV8bAgQPj5ptvjq5du5ZZZ+HChfGzn/0s/vd//zfWrl0rSK+iQYMGxb777hstWrTIdilQ7R544IGIiJg5c2Z07959k7ZR378ZVFPy8/Nj1113jT/96U8xf/786NixY7l17rrrrli/fn3svffe8eKLL2ahSgCgtjO1CwDUMh07doyLLrooIiKeeeaZco9vtdVWsdNOO9XLsHPdunUxePDgWLlyZRx77LHxyCOPlAvRIyLatWsX11xzTTz//PNRUFCQhUprpxYtWsROO+1Ubz+koX6ZO3duRMQmh+jUrFGjRsUXX3wRd911V4WPT5w4MQoLC+Okk06q4coAgLpCkA4AtVDJ1XZffPFFuccqmyO9ZI7ncePGxcKFC+Pss8+ObbfdNho1ahTbbrttnHvuuRXO2btu3bq499574+STT46ddtopmjdvHo0bN44dd9wxzjvvvPjoo48qrPHAAw+MTCYTf/7zn2PmzJlx1FFHRbt27SIvLy/uvPPOGDFiRGQymfjJT35S6XE+8MADkclkYp999qnSeZk0aVK899570ahRo7j99tsjLy/9T5299947GjduXGbZypUr49prr40999wzmjVrFk2aNIlddtklfvSjH8WSJUvKbaNkjt4uXbpEcXFx3HzzzbHbbrtFkyZNYquttooxY8bEp59+GhFfzrn84x//OHbaaado3LhxbL311nH++efHihUrym13w+fr/fffj+HDh8dWW20VhYWFscMOO8S4ceNi1apV5cZV1/MVkT5H+tNPPx1HHXVUdOjQIRo2bBitWrWK7t27xymnnBLPPfdcufW/+OKLuOOOO2K//faLFi1aRGFhYXTv3j3OO++8+PDDDyussWRu44iIhx56KPr06RPNmzePoqKi6N27dzz++OMVjqsJS5YsibFjx8Yee+xR+rrZdddd46qrroqVK1eWW3/58uXxq1/9Ko477rjo3r17FBUVRVFRUey6665x2WWXlXsvlsy7PWPGjIiIOOigg8rMDV3yHFXX63Fj6y1Rcr+HOXPmxJQpU0qfs2bNmsWBBx5Y6XO2dOnS+NGPfhS77rprFBUVRUFBQWy99dbRu3fvuOKKK2LdunVVfGa+9MEHH8S5554b3bt3j8LCwmjRokX07t07fvGLX8T69esrrDlJkoiICs/zlvbFF1/Er3/96zjwwAOjdevWUVBQEF27do3vfve7MW/evArH/OEPf4gzzjgjevToEa1atYrCwsLo2rVrjBo1Kt56661y62cymRg/fnxERIwfP77McW34nt7wfVaRDXtFZcsr6yEREatWrYr//d//jX333TdatmwZhYWFseOOO8YPfvCDSu/9URUnn3xyFBQUxMSJE8s9NmPGjHj33Xdj0KBB0bJly0q38fTTT8e5554be+yxR7Rt2zYKCgriG9/4Rpx44omVXsW+qb06IuLBBx+MQw89NNq0aRMNGzaMNm3axM477xyjR4+O1157bZPOAwBQjRIAIOd07tw5iYhk4sSJFT5++eWXJxGRfOtb3yr32IgRIyocO3bs2CQiklGjRiXf+MY3kg4dOiTHHXdccuSRRyYtWrRIIiLZe++9k7Vr15YZN2/evCQikhYtWiT77rtvMnjw4OTII49Mtt566yQiknbt2iXvvPNOuToOOOCAJCKSs846K8nLy0t23nnnZOjQocnhhx+eTJo0KXn55ZeTiEg6deqUfPHFFxUeZ9++fZOISO66664qnbdBgwYlEZEcddRRVVr/qxYvXpzsscceSUQkzZs3T44++ujk+OOPT9q2bZtERNK1a9dk9uzZZcbMnj07iYikc+fOybBhw5LGjRsn/fr1S4499tikffv2SUQkPXv2TD7//POkT58+pdsdOHBg6Xnv379/uVpKnq/hw4cnbdq0STp06JAMHjw4GThwYFJUVJRERNK7d+9k1apVZcZV1/OVJEkyceLEJCKSESNGlBl75513JplMJslkMsm3vvWt5MQTT0yOPvroZM8990zy8/OT888/v8z6q1evTg499NAkIpLCwsKkf//+yYknnphsu+22SUQkbdu2TV5++eVyNUZEEhHJFVdckWQymaR3797JiSeemOy+++5JRCSZTCb5wx/+UIVn+v+UvF++ekxfVfJ8HHDAAeUe+/e//11a+1ZbbZX069cvOeqoo5IOHTokEZHsscceyWeffVZmzMyZM0ufjz59+iQnnnhicvjhhydt2rRJIiLZfvvtk0WLFpWu/5///CcZMWJE6TaPOOKIZMSIEaU/M2fOTJKk+l6PG1tviZJe9r3vfS+JiGSvvfZKhg0bluyzzz6lz+fNN99cZsyKFSuSHj16lO7vqKOOSoYOHZoceOCBSceOHZOISJYsWZL6fG3o73//e9K6devSfnPiiScm/fr1SwoLC0vP5Zo1a0rXv/DCC0tfFyWvja+e5zTTp08vHVsVy5YtSw488MAkIpKmTZsmBxxwQHLCCSckO+64YxIRSZs2bZJ//OMf5cbl5+cnTZo0Sfbaa6/kuOOOS44++uikW7duSUQkRUVFyV/+8pcy648YMaL0vbL77ruXOa5f/epXpet9Xe0lvWL69OkVLk/rIR9++GGy6667JhGRtG7dOjn00EOTQYMGlb5OunTpksyZM6dK5y1J/u/1np+fnyRJkgwZMiSJiOT5558vs96pp56aRETy1FNPlfaxQw45pNz2tttuu6RRo0ZJz549k6OPPjo57rjjkp133jmJiKRBgwbJ5MmTy43Z1F49fvz40u327ds3GTZsWHLkkUcmPXr0SDKZTPKzn/2syucBAKgZgnQAyEEVBenr169PPvjgg+TnP/95UlBQkOTn5yePPvpoubFfF6RHRDJy5Mhk9erVpY/NnTs32WabbZKIKA08Sixbtix55JFHygRNSZIka9euTS655JIkIpIjjzyyXB0loUpEJLfeemuFx9m7d+8kIioMP//1r3+VBmkb1pqmJMy88sorq7T+V5144omlH1BsGAouX7486d+/fxIRyX777VdmTEmQExHJdtttVyYEWrRoUdK9e/ckIpJdd9012Weffcps97333ktatWpVYfCz4fN1zDHHJCtXrix9bN68eckOO+yQRERy8cUXlxlXnc9XZUF6165dk4ioMGT85JNPyoWAP/zhD0vP14YfTKxduzY5/fTTSz+0+OoxlNTXsmXL5IUXXijzWMn52mGHHSqsvTKbG6SvXLky2W677ZKISH70ox+VqXnFihXJsGHDkohITjvttDLj5s2blzz99NPJ+vXryyxfsWJFMnz48NJA8qsqCzFLVNfrcVPrLellmUwmuffee8s89rvf/S7JZDJJgwYNkn/961+ly++6667SQP+rH+ytX78++fOf/1zutVGZ1atXl9YwZsyYMtv773//m3Tp0iWJiOTSSy8tN3ZjwvANbWyQftJJJyURkQwcODD55JNPyjz2s5/9LImIpHv37uU+cPzd736XfP7552WWFRcXJ7feemsSEckuu+ySFBcXl3m85HU8duzYSuvZ3CC9sh5SXFxc2vNPP/30ZNmyZaWPrVu3LrnwwguTiEgOOuigSvf9VV8N0p944onSD4xLLF26NGnSpEnSpUuXpLi4ODVInzJlSvLpp59WuLxBgwZJmzZtyvTiJNm0Xr169eqkcePGSdOmTZM333yz3P7mzJmT/Oc//6nyeQAAaoYgHQByUEnwU9nP3nvvXS7oKvF1Qfo3vvGNZMWKFeXGXXvtteUCiKrYeuutk7y8vDKhSJL8X6hy8MEHVzr2gQceqDTQOPPMM5OISC655JIq11Jyhekdd9xR9QP4/95///0kLy8vyWQyyauvvlru8Q8++KB0+xte6blhcPnYY4+VGzdhwoTSIHHDsLDEueeem0REMn78+DLLS56vxo0bJx9//HG5cY8++mgS8eWV81+90jHN5jxflQXpTZo0SVq0aFGl/a9atSpp2rRpEhHJH//4x3KPr1ixovSq6/vuu6/MY5VdwZwkXwZTJVdUz507t0q1JElS5srjqvx8NUi//fbbS0PQiixfvjxp37590qBBgwoDuoqsWLEiadCgQdKuXbtyj21MkL4lX4+bWm9JLzv22GMrHHv88ccnEZGMHj26dNn111+fREQyYcKEKtdQmXvuuSeJiGTrrbeu8AO5yZMnJxGRNGvWrNz7aEsE6ZX9lPTnN954I8lkMsnWW29d7j1Z4sgjj0wiosIPTivz7W9/O4mI5N///neZ5TURpFfWQ6ZNm5ZEfPkNjXXr1pV7fP369aXfRKjotVmRrwbp69evTzp16pQ0bdq09EOGO+64I4mIZNy4cUmSJKlBepqSD8W++r7alF69YMGCJCKS3XbbbaNqAACyq0EAADmrd+/esf3225f+vmjRonjttdfixRdfjO9973tx3333bfSN8A455JBo0qRJueXf/OY3IyIqnZ/61VdfjWeeeSZmz54dK1asiOLi4oj4cm7f4uLiePfdd6Nnz57lxp1wwgmV1jJo0KDYdttt45lnnok333wzdtppp4j4cn7ke++9N/Lz8+O73/3uRh3fpnruueeiuLg49txzz9htt93KPb7NNtvEEUccEY888khMnz499ttvvzKPN2jQIA4//PBy40qen06dOkWPHj0qfbyyucsPP/zw0jnxNzRw4MBo06ZNLF68OP7xj3+Uq6c6nq/K7LPPPvHnP/85hg8fHueff3707Nmz0vnpX3rppfj888+jdevWcdRRR5V7vEmTJjF06NC46aabYvr06RXeGLCicQUFBdGtW7d45ZVX4sMPP4xtt912o45hu+22iz59+lT6+D//+c949dVXyy1/7LHHIiLixBNPrHBc06ZNY6+99orHH388XnzxxXKvkVmzZsXMmTNj7ty5sXLlytJ5uRs1ahQLFy6MJUuWRKtWrTbqWCKq7/W4qfWOGDGiwu2NGDEiHnrooTLzbe+9994REXH99ddHmzZtYuDAgdG6deuUo61cyXaHDh1a4Y2FjzvuuGjVqlUsWbIkXn755ejdu/cm7acylR13SV9//PHHI0mS6N+/fzRr1qzCdUvmkp81a1YMHDiwzGPvvvtu/OlPf4p33303li9fXjrf+yeffBIREW+99VbsvPPOW+pwqqSyHlLyXjn++OOjQYPy/wzNy8uLvn37xuuvvx6zZs2q8PX5dfLy8mLEiBHx4x//OB544IE47bTT4re//W3k5eVVeG+Hinz00Ufx2GOPxZtvvhlLly4tvRfJv//974j48pweeeSR5cZtTK9u165ddOnSJV577bW48MIL4/TTT6/x5wkA2HiCdADIYWeccUa5f/x/8cUXccUVV8RPfvKTOOCAA+Ktt96qNICpSKdOnSpc3rx584iIWL16dZnlK1asiFNPPTWmTJmSut1ly5ZVuLxLly6VjmnQoEGcddZZcckll8Qtt9wSt9xyS0RE3HXXXbFixYrSoL2q2rVrF/PmzYsFCxZUeUyJkg8QunbtWuk62223XZl1N7TVVltVGA41bdo0Iio/7yXP3VfPe4m0erp06RKLFy+ODz74oHRZdT5flbntttti4MCBcc8998Q999wTzZo1i7333jsOPvjgOPXUU8sc++ae54iNfw1XRZ8+fVJvJDlu3LgKg/T33nsvIiJOPfXUOPXUU1P3sXDhwtL/XrBgQRx//PHx/PPPp45ZtmzZJgXpW/r1uLn1VvZ8lyzf8DV84IEHxg9/+MO44YYbSm9K3L179+jdu3ccc8wxcdRRR33tjYRLfN3rLZPJRNeuXWPJkiWVvt42x9fdnLTk9fOb3/wmfvOb36Suu+HrZ/369XHOOefEL37xi9IPMypS2fu8OlXWQ0qO9fLLL4/LL788dRsbHuvGOu200+Kqq66K3/72t7HPPvvE3//+9zj00EOjc+fOXzt2/PjxcfXVV6fezLayc7qxvfruu++OE044ISZMmBATJkyI1q1bx7e+9a047LDD4tRTT422bdt+bb0AQM0SpANALdOgQYO46qqr4le/+lV8/PHHcffdd8fZZ59d5fFVDaBKXHLJJTFlypTYaaed4tprr42999472rZtG40aNYqIiP322y/++te/VhrmNG7cOHX7o0ePjiuvvDLuvvvu+MlPfhJNmzaN2267LSIizjnnnI2qtVevXjFv3rx48cUXN2rclvB153Vjz/vG2PDcV/fzVZFvfvOb8dZbb8WTTz4Zzz77bOlVy88++2xceeWV8Zvf/CZOOeWUTTu4ClTnudxYJVf69+vXLzp06JC67oZB3hlnnBHPP/98fPvb347x48fH7rvvHq1atYqGDRtGRMTWW28dH3/8cWpImmZLvx6ru96vjrv22mtjzJgx8eijj8bzzz8ff/nLX2LixIkxceLE2HvvvWP69OlRVFS0SfvKJSWvnz322CN233331HW/9a1vlf73TTfdFHfccUd07NgxJkyYEPvtt1906NAhCgsLIyLipJNOivvvv3+Tn4+q1FyZynpIybg+ffqUflhWmV122WXTiosvA+0DDzwwpk+fHpdccklERIwaNeprx/3hD3+IcePGRdOmTeOWW26Jgw8+OLbeeuto3LhxZDKZuPTSS+MnP/nJZp3TDcfuv//+MWfOnHjsscdixowZMWvWrHjiiSdi2rRpMXbs2JgyZUoccsghm7wvAGDLE6QDQC2Ul5cXXbp0iUWLFsV//vOfat3XAw88EBERv//97yuc8uSdd97ZrO23adMmTj755Pj1r38dd999d+ywww6l0xEcfPDBG7WtY445Jh5++OF44okn4pNPPvnaYHND22yzTUT831WTFSl5rGTdmjB79uxKH5szZ05ERHzjG98oXVbdz1dlGjRoEEceeWTplAfLli2LCRMmxPjx4+PMM8+MQYMGRVFRUem5SzuubJznTbXtttvGm2++GaeffnqVp8VZsWJFPP7445GXlxePP/54tGzZstzj8+fPr4ZqN82WqHf27NkVBsUVvYZLdOnSJc4999w499xzIyLixRdfjFNOOSVefPHFuP7662P8+PFfW3tV3tclr8VsvN5KvnHTu3fv0m/kVEXJ+/wXv/hFHH300eUe35z3ecOGDWPdunWxfPnyCr/t9P7772/SdkuO9Zhjjonvf//7m1xfVYwaNSqmT58ejz76aLRq1SoGDRr0tWNKzunVV18d3/nOd8o9/nXndGN7dcSXHzqccMIJpb1j4cKF8aMf/Sh++ctfxqhRozb5XAMA1SN3LucBAKqsuLi49B/mJVM1VJdPP/00IqLCr8U/8cQTsWjRos3ex3nnnRcREbfeemtpmLQxV9mXOPnkk6NLly6xdu3a+O53v/u1V06+/PLLsWrVqoiI6Nu3b+Tl5VU6F/bHH38cf/rTnyIi4qCDDtro2jbVk08+WeFUNY8//ngsXrw4mjVrFr169SpdXhPPV1U0b948xo0bFy1btoyVK1fG22+/HRERe+21VzRt2jQ+/fTT+OMf/1hu3KpVq+J3v/tdRNTsed5U/fv3j4j/C+GqYunSpbF+/fpo3rx5uVA6IuLee++t9KrXkm8WlMzbXBM2p94S99xzT4XL77777oj4cjqXr7P33nvHWWedFRFfzllfFSXb/f3vf1/hlD9TpkyJJUuWlHsf1ZSS188f//jHjZqSKO19/u9//7vS81OV10/JBwoVfUj72muvxbx586pc54ZKjvXBBx+slivlN3T88cdH586do02bNnHaaaeVXqmfJu2cLliwIJ566qnU8RvbqyvSrl27uP766yMiYu7cubFkyZKvrRsAqDmCdACoZb744ov40Y9+VBqIVnQ14pZUchPSn//852WWv/XWWzFmzJgtso9dd901Dj744PjPf/4Tf/zjH6N58+YxfPjwjd5Ow4YN44EHHojCwsKYMmVKHHvssRVeJfjpp5/G5ZdfHr179441a9ZExJdzRg8ePDiSJIkzzzwzFi9eXLr+ihUr4jvf+U6sXr069ttvv3I39qxOq1atiu9+97ulgX/ElzfDu/DCCyMiYsyYMWVCopp4vja0cuXKmDBhQoVzGs+cOTM+++yzyM/PL70Ss7CwsPRDkgsvvLDMFZfr1q2L888/P+bPnx9du3bdpBuf1rTvfOc70blz53jwwQfjhz/8YSxfvrzcOvPnz49f/epXpb936NAhWrVqFZ999lm5gPmFF14onY6iIiXnseTGhzVhc+otMWXKlNIPSEpMnjw5HnrooWjQoEHpVecl65bc/HdD69atK/0wqyrzXUdEDB48ODp16hQfffRR/M///E+ZAHn27Nml76Nzzz23SmHrltazZ884/vjjY968eXHccceVfkC6oRUrVsR9991XegPRiP97n996661lztPHH38cw4cPrzQor8rr59BDD42IL+cLL+mPEV9eVT1ixIhNDsGPOeaY2HvvvePvf/97nHbaaRX2jCVLlsQdd9yx2R8UNW7cOObMmROLFi2K//3f/63SmJJz+stf/jLWrl1bunzp0qUxYsSIWLp0aer4jenV77//fvz617+ucL71Rx99NCIiWrVqVXrfBwAgN5jaBQBy2K9//ev485//XPr74sWL49VXXy29IvCyyy6r9lB37NixccIJJ8Tll18eDzzwQOyyyy6xYMGCmDlzZuy///6x9dZbx6xZszZ7P+edd148++yzERExYsSITb7Sfu+9947nnnsuBg8eHI8++mhMnTo1evbsGd26dYu8vLx4//3346WXXor169dHt27doqCgoHTsrbfeGm+++Wb87W9/i+222y4OOuigaNCgQcyYMSMWLlwYXbt2jfvuu2+zj3VjDB8+PKZOnRrdunWL/fffP1avXh3PPvtsrFixonS+6g3V1PNVYu3atXHhhRfGRRddFLvuumt07949GjZsGHPmzIkXXnghIr58nbZr1650zPjx4+Oll16KZ555Jr75zW/GQQcdFM2aNYu//vWvMXfu3GjTpk08+OCDpVfP5rKioqJ47LHHYuDAgXH99dfHL3/5y9htt93iG9/4RumV+P/5z3+iffv2MXr06IiIyM/PjyuuuCK+973vxfDhw+PWW2+Nbt26xdy5c2PWrFlxyimnxHPPPVfhtA7HH398TJw4MX7wgx/E008/He3bt49MJhOjRo2qtl6wOfWWOP/882PYsGExYcKE6N69e/z3v/+Nv/3tbxER8dOf/rTMNEQzZsyIm266Kdq2bRs9e/aM9u3bx/Lly+OFF16IBQsWxDbbbBM/+MEPqlR7QUFBTJ48Ofr16xe33357PP7447HvvvvG8uXL49lnn43Vq1fHEUccEWPHjt28k7QZJk6cGJ999llMmzYtdtxxx9h9992ja9eukSRJzJkzJ1599dVYu3Zt/Oc//ymdrurSSy+NP/3pT/GrX/0qpk+fHnvuuWcsW7YsZsyYEd26dYtBgwZVeMPhI444IoqKiuLhhx+OPn36RPfu3SM/Pz969+4dp512Wum2J0+eHI8//njssMMOsffee8fChQvjxRdfjN69e8d+++23ST0kLy8vHn744RgwYEDcddddMXny5Nh9992jU6dOsXbt2njvvffiX//6V6xfvz5GjhxZ4c1yq9MFF1wQd999dzz++OPRrVu32HfffWPdunUxY8aMaNKkSYwaNSp++9vfVjp+Y3r1kiVLYvTo0XHWWWfFHnvsUXqj0nfeeSdeeeWVyGQyccMNN0R+fn61HzcAUHWuSAeAHPaXv/wl7rrrrtKfJ598MvLy8uLEE0+M6dOnx1VXXVXtNRx33HExY8aMOOSQQ+Ljjz+OP/7xj7FgwYIYN25cTJs2rfRmg5vrkEMOifz8/MhkMps0rcuG9t5773j77bfj17/+dQwcODA++eSTePTRR0trHzRoUNx///3x5ptvlrkxXps2bWLWrFnxk5/8JLp27RpPPvlkTJ06Ndq2bRuXXnppvPzyy9GlS5fNPNKN07Vr13jppZfioIMOiueeey6eeOKJ2GqrreKKK66Ip59+utyN/Wrq+SrRtGnTuOOOO+LEE0+MNWvWxFNPPRUPP/xwLFiwII477rh45plnyoX9BQUF8ac//Sluu+222H333WPmzJkxZcqUaNiwYZx77rnx6quvZmWajU21yy67xGuvvRbXX399fPOb34zXXnstHnzwwfjb3/4WRUVF8f3vf79cqHnBBRfEww8/HPvtt1+89dZb8eijj8aaNWvi1ltvjbvuuqvSfQ0YMCB+9atfRY8ePeLZZ5+N3/72t/Gb3/ymdOqc6rKp9ZY4//zz44EHHogGDRrEH//4x3j99ddj//33j0cffTS+973vlVl35MiRcfHFF8dOO+0Ub7zxRjz44IPx17/+Nbbddtu45ppr4tVXX61wTvXK7L333vHPf/4zzj777MjPz48pU6bEzJkzo2fPnnH77bfH1KlTs/qhTbNmzeLJJ5+MSZMmxaGHHhpz586NKVOmxLPPPhurVq2Kk08+OaZMmVLmBp3f+ta34qWXXoqjjz46VqxYEX/84x/jv//9b5x77rnx17/+tdIrmTt06BDTpk2LQw89NN544424++674ze/+U3MmDGjdJ2uXbvGrFmz4rjjjovly5fH1KlT45NPPonLLrssHn/88c3qIVtvvXW88MILcccdd8Q+++wTb731VkyePDmef/75iPjyqu0nnngiK98O6Nq1a7zyyitx8sknR35+fkydOjVeffXVGDZsWLzyyiulc7ynja9qr95uu+3ixhtvjIEDB8Znn30Wjz/+eDz22GOxYsWKGD58eLz44otx+umnV/chAwAbKZNU9wR1AABV8Otf/zpGjx4dhx9+eDzxxBPZLifrxo0bF+PHj4+xY8fGuHHjsl0ObJIuXbrE+++/H7Nnz67xD6GgJujVAFB/uCIdAMi6FStWxE9+8pOIiNL5ZAEAACBXmCMdAMiaG264IV5//fV4/vnn47333ot+/frF4Ycfnu2yAAAAoAxBOgCQNY899ljMmDEj2rZtGyNHjowJEyZkuyQAAAAoxxzpAAAAAACQwhzpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkJ4Fd955Z2QymQp/Lr744mrZ56xZs2LcuHHx2WefVcv2N8eG5+P5558v93iSJLHttttGJpOJgQMHZqHCL/3mN7+Jb37zm1FYWBjdu3ePn//851mrBaqTHlVWbehRt99+ewwePDg6deoUmUwmRo4cmZU6oCboUWXleo+aN29ejB8/PvbZZ59o1apVtG3bNg488MB4+umna7wWqAl6VFm53qNWrVoVp59+evTo0SNatGgRTZs2jd133z1uuummWLduXY3XA9VNjyor13vUVz3//POl9S5atCjb5dRLDbJdQH125ZVXRteuXcss69GjR7Xsa9asWTF+/PgYOXJktGzZslr2sbkKCwtj0qRJ0adPnzLLZ8yYER988EEUFBRkqbKIX/ziFzFmzJg4/vjj43/+539i5syZcd5558XKlSvjhz/8YdbqguqkR5WVyz3quuuui+XLl8c+++wTH3/8cdbqgJqkR5WVqz3qkUceieuuuy6OPfbYGDFiRHzxxRdx9913x2GHHRa//e1v47TTTstKXVDd9KiycrVHrVq1Kv7973/HkUceGV26dIm8vLyYNWtWfO9734u//e1vMWnSpKzUBdVNjyorV3vUhoqLi+Pcc8+NoqKiWLFiRbbLqbcE6VnUv3//2GuvvbJdxmZZsWJFFBUVbZFtHXnkkfHggw/GzTffHA0a/N9Lc9KkSdGrV6+sfdq2atWquOyyy2LAgAExefLkiIgYPXp0FBcXx49//OP4zne+E61atcpKbVCd9KiycrVHRXz5B17J1ehNmzbNWh1Qk/SosnK1Rx100EExd+7caNu2bemyMWPGxB577BFXXHGFIJ06S48qK1d7VOvWreOFF14os2zMmDHRokWLuOWWW2LChAnRsWPHrNQG1UmPKitXe9SGfvnLX8a8efPijDPOiJtuuinb5dRbpnbJYdOmTYv9998/ioqKolmzZjFgwID497//XWad1157LUaOHBndunWLwsLC6NixY4waNSoWL15cus64cePioosuioiIrl27ln4NZM6cOTFnzpzIZDJx5513ltt/JpOJcePGldlOJpOJN954I0466aRo1apVmU/r7r333ujVq1c0btw4WrduHUOHDo158+ZV+XiHDRsWixcvjqeeeqp02dq1a2Py5Mlx0kknVTjmpz/9aey3337Rpk2baNy4cfTq1as07P7qsZxzzjlx3333xY477hiFhYXRq1eveO655762runTp8fixYvjrLPOKrP87LPPjhUrVsRjjz1W5WOEukSPyo0eFRHRuXPnyGQyVT4WqA/0qNzoUbvsskuZED0ioqCgII488sj44IMPYvny5VU+RqhL9Kjc6FGV6dKlS0RETk5FATVBj8qtHvXpp5/Gj370o7jyyitz9qr++kKQnkVLly6NRYsWlfkpcc8998SAAQOiadOmcd1118Xll18eb7zxRvTp0yfmzJlTut5TTz0V7733Xpx22mnx85//PIYOHRq/+93v4sgjj4wkSSIi4rjjjothw4ZFRMTPfvazuOeee+Kee+6Jdu3abVLdgwcPjpUrV8Y111wTo0ePjoiIq6++OoYPHx7du3ePCRMmxAUXXBDPPPNM9O3bt8p/fHTp0iW+/e1vx/3331+6bNq0abF06dIYOnRohWNuuumm6NmzZ1x55ZVxzTXXRIMGDWLw4MEVhtszZsyICy64IE455ZS48sorY/HixdGvX794/fXXU+t65ZVXIiLKfVrbq1evyMvLK30c6ho9qqxc7VFQX+lRZdW2HjV//vxo0qRJNGnSZJPGQ67To8rK9R61du3aWLRoUcybNy+mTJkSP/3pT6Nz586x/fbbV2k81DZ6VFm53qMuv/zy6NixY5x55plVWp9qlFDjJk6cmEREhT9JkiTLly9PWrZsmYwePbrMuPnz5yctWrQos3zlypXltn///fcnEZE899xzpctuuOGGJCKS2bNnl1l39uzZSUQkEydOLLediEjGjh1b+vvYsWOTiEiGDRtWZr05c+Yk+fn5ydVXX11m+b/+9a+kQYMG5ZZXdj5efPHF5JZbbkmaNWtWelyDBw9ODjrooCRJkqRz587JgAEDyoz96vGvXbs26dGjR3LwwQeXO5aISF566aXSZe+//35SWFiYDBo0KLW+s88+O8nPz6/wsXbt2iVDhw5NHQ+1jR5V8fnI1R71VUVFRcmIESM2agzUJnpUxeejtvSoJEmSd955JyksLExOPfXUjR4LuU6Pqvh85HqPKjmvJT977bVX8tprr1VpLNQmelTF5yOXe9Srr76a5OfnJ0888USSJP93LhYuXPi1Y9nyXJGeRbfeems89dRTZX4ivvxU77PPPothw4aV+XQwPz8/vvWtb8X06dNLt9G4cePS/169enUsWrQo9t1334iI+Mc//lEtdY8ZM6bM73/4wx+iuLg4hgwZUqbejh07Rvfu3cvU+3WGDBkSq1atiqlTp8by5ctj6tSplX6NJqLs8S9ZsiSWLl0a+++/f4XH/u1vfzt69epV+nunTp3imGOOiSeeeCLWr19f6T5WrVoVjRo1qvCxwsLCWLVqVVUODWodPaq8XOxRUF/pUeXVhh61cuXKGDx4cDRu3DiuvfbaKo+D2kaPKi+Xe9RBBx0UTz31VDz44IMxZsyYaNiwoZv5UafpUeXlao8677zzon///nH44YdX+VioPm42mkX77LNPhTd3eOeddyIi4uCDD65wXPPmzUv/+9NPP43x48fH7373u1iwYEGZ9ZYuXboFq/0/X72z8zvvvBNJkkT37t0rXL9hw4ZV3na7du3i0EMPjUmTJsXKlStj/fr1ccIJJ1S6/tSpU+Oqq66Kf/7zn7FmzZrS5RXNFVxRfTvssEOsXLkyFi5cWOlNZBo3bhxr166t8LHVq1eXaZ5Ql+hR5eVij4L6So8qL9d71Pr162Po0KHxxhtvxLRp02Lrrbeu4pFB7aNHlZfLPapDhw7RoUOHiIg44YQT4pprronDDjss3nnnHX+DUSfpUeXlYo/6/e9/H7NmzTLdZw4RpOeg4uLiiPhyXqqK3kwb3kF4yJAhMWvWrLjoootijz32iKZNm0ZxcXH069evdDtpKrs5XdonYl8NjouLiyOTycS0adMiPz+/3PpNmzb92jo2dNJJJ8Xo0aNj/vz50b9//0pvpDBz5sw4+uijo2/fvnHbbbfFVlttFQ0bNoyJEyfGpEmTNmqfabbaaqtYv359LFiwINq3b1+6fO3atbF48WL/CKTe0aNyq0cBZelRudujRo8eHVOnTo377ruv0n+gQ12nR+Vuj9rQCSecEJdddlk88sgj5iSmXtGjcqtHXXTRRTF48OBo1KhR6fz0JfO+z5s3L9auXSuTqmGC9By03XbbRURE+/bt49BDD610vSVLlsQzzzwT48ePjyuuuKJ0eckniBuqrEG1atUqIsrfjfz999/fqHqTJImuXbvGDjvsUOVxlRk0aFCceeaZ8cILL8Tvf//7Std76KGHorCwMJ544okoKCgoXT5x4sQK16/ovLz99tvRpEmT1Btd7LHHHhER8dJLL8WRRx5Zuvyll16K4uLi0sehvtCjcqtHAWXpUbnZoy666KKYOHFi3HjjjaU3HYP6SI/KzR71VSXTd1bXVbWQq/So3OpR8+bNi0mTJlUYzu+5556x++67xz//+c+UI2JLM0d6DjriiCOiefPmcc0118S6devKPb5w4cKIiNJP25L/fzfkEjfeeGO5MUVFRRFRvkE1b9482rZtG88991yZ5bfddluV6z3uuOMiPz8/xo8fX66WJEli8eLFVd5WxJefGN5+++0xbty4OOqooypdLz8/PzKZTJlPK+fMmRMPP/xwhev/9a9/LTNX1bx58+KRRx6Jww8/vMJPLkscfPDB0bp167j99tvLLL/99tujSZMmMWDAgCoeGdQNelRu9SigLD0q93rUDTfcED/96U/j0ksvjfPPP3+jjgfqGj0qt3rUokWLyh1XRMSvf/3riIgKp76AukyPyq0eNWXKlHI/J554YkRE3H333fGzn/1so46PzeeK9BzUvHnzuP322+PUU0+NPffcM4YOHRrt2rWLuXPnxmOPPRa9e/eOW265JZo3bx59+/aN66+/PtatWxfbbLNNPPnkkzF79uxy2yy5qcFll10WQ4cOjYYNG8ZRRx0VRUVFccYZZ8S1114bZ5xxRuy1117x3HPPxdtvv13lerfbbru46qqr4pJLLok5c+bEscceG82aNYvZs2fHlClT4jvf+U58//vf36hzMGLEiK9dZ8CAATFhwoTo169fnHTSSbFgwYK49dZbY/vtt4/XXnut3Po9evSII444Is4777woKCgobc7jx49P3U/jxo3jxz/+cZx99tkxePDgOOKII2LmzJlx7733xtVXXx2tW7feqGOD2k6Pyq0eFRHx6KOPxquvvhoREevWrYvXXnstrrrqqoiIOProo2O33XbbmMODWk2Pyq0eNWXKlPjBD34Q3bt3j29+85tx7733lnn8sMMOK52XGOoDPSq3etS9994bd9xxRxx77LHRrVu3WL58eTzxxBPx1FNPxVFHHWUaKuodPSq3etSxxx5bblnJFej9+/ePtm3bfv0BsWUl1LiJEycmEZG8+OKLqetNnz49OeKII5IWLVokhYWFyXbbbZeMHDkyeemll0rX+eCDD5JBgwYlLVu2TFq0aJEMHjw4+eijj5KISMaOHVtmez/+8Y+TbbbZJsnLy0siIpk9e3aSJEmycuXK5PTTT09atGiRNGvWLBkyZEiyYMGCctsYO3ZsEhHJwoULK6z3oYceSvr06ZMUFRUlRUVFyU477ZScffbZyVtvvbVFzkfnzp2TAQMGlFn2m9/8JunevXtSUFCQ7LTTTsnEiRNL69xQRCRnn312cu+995au37Nnz2T69Omp+9zQL3/5y2THHXdMGjVqlGy33XbJz372s6S4uLjK46G20KM27Xxks0eNGDEiiYgKfyZOnFilbUBtoUdt2vnIVo8q2V5lPxvztxjUBnrUpp2PbPWoF198MRk8eHDSqVOnpKCgICkqKkr23HPPZMKECcm6deu+djzUNnrUpp2PbOdRG/q6c0H1yiRJBd9jgjomk8nE2WefHbfccku2SwEoR48CcpkeBeQyPQrIZXpU3WKOdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIYY50AAAAAABI4Yp0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEjRoKZ3mMlkanqXQA2oK7db0KOgbtKjgFymRwG5TI8CcllN9ihXpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkEKQDAAAAAEAKQToAAAAAAKQQpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACk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8Z///CeaNWuWldqgOulRZeVqj1q2bFn06dMnPvnkkzj//POjY8eO8cADD8SQIUPivvvui5NOOikrddVngvQs6t+/f+y1117ZLmOzrFixIoqKirbIto488sh48MEH4+abb44GDf7vpTlp0qTo1atXLFq0aIvsZ1PtsMMOccopp2S1BqhJelRZudyjzjzzzGjQoEG8+OKL0aZNm6zVATVJjyorV3tUt27dolu3bmWWrVq1Ks4666w4+OCDo2PHjlmpC6qbHlVWrvaoF154IV588cW45ZZb4uyzzy5dvuOOO8aoUaPi6aefjkGDBmWlNqhOelRZudqjfvGLX8S7774bzzzzTBx88MEREfHd73439t1337jwwgvjhBNOiEaNGmWltvrK1C45bNq0abH//vtHUVFRNGvWLAYMGBD//ve/y6zz2muvxciRI6Nbt25RWFgYHTt2jFGjRsXixYtL1xk3blxcdNFFERHRtWvX0q+tzJkzJ+bMmROZTCbuvPPOcvvPZDIxbty4MtvJZDLxxhtvxEknnRStWrUq82ndvffeG7169YrGjRtH69atY+jQoTFv3rwqH++wYcNi8eLF8dRTT5UuW7t2bUyePLnST9l++tOfxn777Rdt2rSJxo0bR69evWLy5MkVHss555wT9913X+y4445RWFgYvXr1iueee67K9UV8+Q+/1atXb9QYqKv0qNzoUW+++WZMmzYtLrroomjTpk2sXr061q1bV+XjgrpKj8qNHlWRRx99NJYvXx4nn3zyJo2HukCPyo0etWzZsoiI6NChQ5nlW221VURENG7cuMrHCHWJHpUbPWrmzJnRrl270hA9IiIvLy+GDBkS8+fPjxkzZlT5GNkyBOlZtHTp0li0aFGZnxL33HNPDBgwIJo2bRrXXXddXH755fHGG29Enz59Ys6cOaXrPfXUU/Hee+/FaaedFj//+c9j6NCh8bvf/S6OPPLISJIkIiKOO+64GDZsWER8+TXae+65J+65555o167dJtU9ePDgWLlyZVxzzTUxevToiIi4+uqrY/jw4dG9e/eYMGFCXHDBBfHMM89E3759qzwPVpcuXeLb3/523H///aXLpk2bFkuXLo2hQ4dWOOamm26Knj17xpVXXhnXXHNNNGjQIAYPHhyPPfZYuXVnzJgRF1xwQZxyyilx5ZVXxuLFi6Nfv37x+uuvV6m+O++8M4qKiqJx48ax8847x6RJk6o0DmorPaqsXO1RTz/9dER8+Q/AQw45JBo3bhyNGzeO/v37l3kuoK7Ro8rK1R5Vkfvuuy8aN24cxx133EaPhdpCjyorV3vUXnvtFUVFRXH55ZfHs88+Gx9++GHMmDEjfvCDH8Tee+8dhx56aJWOD2obPaqsXO1Ra9asqfADvSZNmkRExMsvv1yl42MLSqhxEydOTCKiwp8kSZLly5cnLVu2TEaPHl1m3Pz585MWLVqUWb5y5cpy27///vuTiEiee+650mU33HBDEhHJ7Nmzy6w7e/bsJCKSiRMnlttORCRjx44t/X3s2LFJRCTDhg0rs96cOXOS/Pz85Oqrry6z/F//+lfSoEGDcssrOx8vvvhicssttyTNmjUrPa7BgwcnBx10UJIkSdK5c+dkwIABZcZ+9fjXrl2b9OjRIzn44IPLHUtEJC+99FLpsvfffz8pLCxMBg0alFpfkiTJfvvtl9x4443JI488ktx+++1Jjx49kohIbrvttq8dC7WNHlXx+cjVHnXeeeclEZG0adMm6devX/L73/8+ueGGG5KmTZsm2223XbJixYrU8VDb6FEVn49c7VFftXjx4qRRo0bJkCFDNmoc1BZ6VMXnI5d71NSpU5OtttqqzHN1xBFHJMuXL//asVDb6FEVn49c7VHnnntukpeXl8yZM6fM8qFDhyYRkZxzzjmp49nyXJGeRbfeems89dRTZX4ivvxU77PPPothw4aV+XQwPz8/vvWtb8X06dNLt7HhJ1OrV6+ORYsWxb777hsREf/4xz+qpe4xY8aU+f0Pf/hDFBcXx5AhQ8rU27Fjx+jevXuZer/OkCFDYtWqVTF16tRYvnx5TJ06NfXmCRse/5IlS2Lp0qWx//77V3js3/72t6NXr16lv3fq1CmOOeaYeOKJJ2L9+vWpdf3lL3+J888/P44++ugYM2ZMvPzyy9GjR4+49NJLY9WqVVU+PqhN9KjycrFHff755xER0bFjx3jsscdiyJAh8f3vfz9+9atfxX//+1/fnqHO0qPKy8Ue9VWTJ0+OtWvXmtaFOk+PKi9Xe1S7du2iZ8+ecfXVV8fDDz8c48aNi5kzZ8Zpp51W5WOD2kaPKi8Xe9QZZ5wR+fn5MWTIkJg1a1b897//jZ/85CcxZcqUiAh5VBa42WgW7bPPPhXe3OGdd96JiCgzB9KGmjdvXvrfn376aYwfPz5+97vfxYIFC8qst3Tp0i1Y7f/56p2d33nnnUiSJLp3717h+g0bNqzyttu1axeHHnpoTJo0KVauXBnr16+PE044odL1p06dGldddVX885//jDVr1pQuz2Qy5datqL4ddtghVq5cGQsXLtyom101atQozjnnnNJQ/at3doa6QI8qLxd7VMkfcEOGDIm8vP/7fHzw4MFx6qmnxqxZs+KMM86o8jFCbaFHlZeLPeqr7rvvvmjdunX079+/SutDbaVHlZeLPeq9996Lgw46KO6+++44/vjjIyLimGOOiS5dusTIkSNj2rRp+hV1kh5VXi72qN122y0mTZoUY8aMid69e0fElxdQ3XjjjfHd7343mjZtWuXjY8sQpOeg4uLiiPhyXqqK3kwb3kG45FOpiy66KPbYY49o2rRpFBcXR79+/Uq3k6aiN3hEpH4i9tX5mYqLiyOTycS0adMiPz+/3Pob+8Y+6aSTYvTo0TF//vzo379/tGzZssL1Zs6cGUcffXT07ds3brvttthqq62iYcOGMXHixBq5AnPbbbeNiC//5wH1iR6VWz1q6623jojyN8nKz8+PNm3axJIlS7bYvqA20KNyq0dtaO7cuTFz5sz4zne+s1H/sIW6RI/KrR515513xurVq2PgwIFllh999NER8eU3kwXp1Cd6VG71qIiIE044IY4++uh49dVXY/369bHnnnvGn//854j4MoynZgnSc9B2220XERHt27dPvbnJkiVL4plnnonx48fHFVdcUbq85BPEDVXWoFq1ahURUe4GDO+///5G1ZskSXTt2nWLvIkHDRoUZ555Zrzwwgvx+9//vtL1HnrooSgsLIwnnngiCgoKSpdPnDixwvUrOi9vv/12NGnSZJNudPHee+9FRGzyTTKgttKjcqtHlXxF8MMPPyyzfO3atbFo0SI9inpHj8qtHrWh+++/P5IkMa0L9ZoelVs96pNPPokkScoFd+vWrYuIiC+++CL1eKCu0aNyq0eVaNSoUey9996lvz/99NMREW6InAXmSM9BRxxxRDRv3jyuueaa0v+Bb2jhwoUREaWftiX//27IJW688cZyY4qKiiKifINq3rx5tG3bNp577rkyy2+77bYq13vcccdFfn5+jB8/vlwtSZLE4sWLq7ytiC8/Mbz99ttj3LhxcdRRR1W6Xn5+fmQymTJ/9MyZMycefvjhCtf/61//Wmauqnnz5sUjjzwShx9+eIWfXJYoOd8bWr58edx4443Rtm3bMvNcQX2gR+VWjzrwwAOjffv2cd9998Xq1atLl995552xfv36OOywwzbi6KD206Nyq0dtaNKkSdGpUydT4lGv6VG51aN22GGHSJIkHnjggTLL77///oiI6NmzZ1UOC+oMPSq3elRF3nnnnbjjjjti4MCBrkjPAlek56DmzZvH7bffHqeeemrsueeeMXTo0GjXrl3MnTs3Hnvssejdu3fccsst0bx58+jbt29cf/31sW7duthmm23iySefjNmzZ5fbZknYe9lll8XQoUOjYcOGcdRRR0VRUVGcccYZce2118YZZ5wRe+21Vzz33HPx9ttvV7ne7bbbLq666qq45JJLYs6cOXHsscdGs2bNYvbs2TFlypT4zne+E9///vc36hyMGDHia9cZMGBATJgwIfr16xcnnXRSLFiwIG699dbYfvvt47XXXiu3fo8ePeKII46I8847LwoKCkqb8/jx41P3c+utt8bDDz8cRx11VHTq1Ck+/vjj+O1vfxtz586Ne+65Jxo1arRRxwa1nR6VWz2qoKAgbrjhhhgxYkT07ds3Tj311Jg7d27cdNNNsf/++8dxxx23UccGtZ0elVs9qsTrr78er732Wlx88cWVXpkG9YEelVs9auTIkfHTn/40zjzzzHjllVdil112iX/84x/x61//OnbZZZcYNGjQRh0b1HZ6VG71qIiInXfeOQYPHhydOnWK2bNnx+233x6tW7eOO+64Y6OOiy0kocZNnDgxiYjkxRdfTF1v+vTpyRFHHJG0aNEiKSwsTLbbbrtk5MiRyUsvvVS6zgcffJAMGjQoadmyZdKiRYtk8ODByUcffZRERDJ27Ngy2/vxj3+cbLPNNkleXl4SEcns2bOTJEmSlStXJqeffnrSokWLpFmzZsmQIUOSBQsWlNvG2LFjk4hIFi5cWGG9Dz30UNKnT5+kqKgoKSoqSnbaaafk7LPPTt56660tcj46d+6cDBgwoMyy3/zmN0n37t2TgoKCZKeddkomTpxYWueGIiI5++yzk3vvvbd0/Z49eybTp09P3WeSJMmTTz6ZHHbYYUnHjh2Thg0bJi1btkwOP/zw5JlnnvnasVAb6VGbdj6y1aNK3H///cnuu++eFBQU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FAAAAACoEYJ0aoXDDz88br311hg4cGC0b98+Tj755DjnnHOyXVa9VFxcHA899FC0bt06jj766GyXAwAAAADVTpBOrdC1a9do27ZtLFq0KBYuXBj3339/fPe7342+fftGfn5+tsurd959992IiDj11FOjqKgoy9UAAAAAQPUSpFNr9OzZM/r37x9JksQXX3wR69ati/nz50ebNm2yXVq9dPnll8dBBx0ULVu2zHYpAAAAAFCtBOnUGm+88UYkSVJm2bx582LPPffMUkX12x//+Mf47W9/a3oXAAAAAOo8QTq1xpQpU8otW7VqVaxZsya23377LFTEhAkTon///tG2bdtslwIAAAAA1aZBtguAqlq0aFG89dZb5ZZPnz49C9UQEbFw4cLYbbfdYuDAgdkuBQAAAACqjSvSqTVatWoV+++/f4WPFRUVxY477ljDFbF+/fq48MIL4+abb852KQAAAABQbQTp5LyioqI48cQTY/HixfHss89Wul5+fn4NVkWJmTNnxiuvvJLtMgAAAKBS55xzTrZLAGo5QTo5b8WKFfGHP/wh2rVrF/379690nTfeeKOGKyMiYsGCBXHnnXdmuwwAAACo1MknnxzbbLNNtssAajFBOrXCunXrIpPJRIMGpvXPRRMnTsx2CQAAAFCpfffdN/r27ZvtMoBaTJBOzmvcuHEcccQR2S4DAAAAqKUeeeSRuO6660wLC2wyQTo5b82aNebgBgAAADbZ8OHDY/bs2fE///M/2S4FqKUE6eS84uLiWLBgQZll+fn5MWTIkCxVBAAAANQmy5Yti1WrVsWwYcNi6623znY5QC0kSKdWWr9+fUybNi3bZQAAAAC1xJgxY6Jhw4bRtm3bbJcC1ELu3EitMX/+/HjxxRdLf1++fHkWqwEAAABqkzlz5sQvf/nLWL9+fbZLAWohQTq1xl577RVPPPFEtssAAAAAaqnbbrstiouLs10GUAuZ2oVaY/To0dG6detslwEAAADUUuvXr48kSbJdBlALCdKpFV5++eVYunRpnHvuucJ0AAAAAKBGCdKpFV566aV45ZVXIkkSQToAAAAAUKME6dQqbggCAAAAANQ0NxulVrnxxhtj9erV2S4DAAAAAKhHBOnUKitXrnRTEAAAAACgRpnahVqjRYsW0atXr2yXAQAAAADUM4J0ao1f/vKXMXDgwGyXAQAAAADU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lx5VVl3qUc8880yMGjUqdthhh2jSpEl069YtzjjjjPj4449rtmDYDHpUWXWpRz333HNx9NFHx7bbbhuFhYXRsWPH6NevX/zlL3+p2YJhM+hRZdWlHvVVo0ePzmrd9U2DbBdQH1x55ZXRtWvXMst69OhRLfuaNWtWjB8/PkaOHBktW7asln1srsLCwpg0aVL06dOnzPIZM2bEBx98EAUFBVmqLOK6666L5cuXxz777JP6j7ni4uIYMGBAvPrqq3HRRRdF27Zt47bbbosDDzwwXn755ejevXsNVg2bR48qqy70qLfeeiuuu+666N69e+y6667x17/+tQarhC1LjyqrLvSoH/7wh/Hpp5/G4MGDo3v37vHee+/FLbfcElOnTo1//vOf0bFjxxqsGjaPHlVWXehRb7/9duTl5cWYMWOiY8eOsWTJkrj33nujb9++8dhjj0W/fv1qsGrYPHpUWXWhR23opZdeijvvvDMKCwuruTpKCNJrQP/+/WOvvfbKdhmbZcWKFVFUVLRFtnXkkUfGgw8+GDfffHM0aPB/L8FJkyZFr169YtGiRVtkP5tixowZpZ/+NW3atNL1Jk+eHLNmzYoHH3wwTjjhhIiIGDJkSOywww4xduzYmDRpUk2VDJtNjyqrLvSoXr16xeLFi6N169YxefLkGDx4cA1WCVuWHlVWXehREyZMiD59+kRe3v99ObZfv35xwAEHxC233BJXXXVVTZQLW4QeVVZd6FFnnHFGnHHGGWWWnXXWWdGtW7e48cYbBenUKnpUWXWhR5VIkiTOO++8GD58eDzzzDM1UCERpnbJCdOmTYv9998/ioqKolmzZjFgwID497//XWad1157LUaOHBndunUr/XrZqFGjYvHixaXrjBs3Li666KKIiOjatWvp11bmzJkTc+bMiUwmE3feeWe5/WcymRg3blyZ7WQymXjjjTfipJNOilatWpX5tO7ee++NXr16RePGjaN169YxdOjQmDdvXpWPd9iwYbF48eJ46qmnSpetXbs2Jk+eHCeddFKFY37605/GfvvtF23atInGjRtHr169YvLkyRUeyznnnBP33Xdf7LjjjlFYWBi9evWK5557rkq1de7cOTKZzNeuN3ny5OjQoUMcd9xxpcvatWsXQ4YMiUceeSTWrFlTpf1BbaBH1b4e1axZs2jdunWVtgm1nR5V+3pU3759y4ToJctat24d//nPf6q0L6gt9Kja16Mq0qRJk2jXrl1OTlkBm0OPqr096p577onXX389rr766iqPYfMJ0mvA0qVLY9GiRWV+Stxzzz0xYMCAaNq0aVx33XVx+eWXxxtvvBF9+vSJOXPmlK731FNPxXvvvRennXZa/PznP4+hQ4fG7373uzjyyCMjSZKIiDjuuONi2LBhERHxs5/9LO6555645557ol27dptU9+DBg2PlypVxzTXXxOjRoyMi4uqrr47hw4dH9+7dY8KECXHBBRfEM888E3379q3yHxVdunSJb3/723H//feXLps2bVosXbo0hg4dWuGYm266KXr27BlXXnllXHPNNdGgQYMYPHhwPPbYY+XWnTFjRlxwwQVxyimnxJVXXhmLFy+Ofv36xeuvv77xJ6ESr7zySuy5557l/hG4zz77xMqVK+Ptt9/eYvuC6qZHlVUXehTUJXpUWXW1R33++efx+eefR9u2bat1P7Cl6VFl1aUetWzZsli0aFG8+eabcemll8brr78ehxxyyBbfD1QnPaqsutKjli9fHj/84Q/j0ksvNSVeTUuoNhMnTkwiosKfJEmS5cuXJy1btkxGjx5dZtz8+fOTFi1alFm+cuXKctu///77k4hInnvuudJlN9xwQxIRyezZs8usO3v27CQikokTJ5bbTkQkY8eOLf197NixSUQkw4YNK7PenDlzkvz8/OTqq68us/xf//pX0qBBg3LLKzsfL774YnLLLbckzZo1Kz2uwYMHJwcddFCSJEnSuXPnZMCAAWXGfvX4165dm/To0SM5+OCDyx1LRCQvvfRS6bL33/9/7N13mFXluTf+e88whQ5KUxQLiOUYGxwLQeyAUVQsHEUjdj0/PTGJMcZjjN0QoyYm1mMIKvZu7KLxSBQrtlexK2BBaaJ0mJn1+8PXeR1nWFL27Dafz3VxXczaa6/n3hu4mfnuZz3P1KS6ujoZPnx4an3f17Zt22TUqFHLfeyoo45qdPzBBx9MIiJ55JFHVmosyAc9qun3oxR61HfdcccdSUQkTz755EpdH/JNj2r6/Si1HvWt8847L4mI5IknnlipcSBf9Kim349S6lFDhgypH7OysjI5/vjjk0WLFq3UOJAvelTT70ep9Khf/epXyQYbbJAsXrx4uXXTPMxIz4Errrgixo8f3+BXxDef6s2dOzcOOeSQBp8OlpeXx3bbbRdPPvlk/TVat25d//vFixfHrFmzYvvtt4+IiJdffrlZ6j7hhBMafH333XdHXV1djBgxokG9PXr0iI022qhBvT9kxIgRsWjRonjggQdi3rx58cADDyz3NpqIhq//yy+/jK+++ip23HHHJl/7DjvsEP369av/ulevXrHvvvvGo48+GrW1tStcY5pFixY1uQnFtxs8LFq0KCvjQC7oUY0Ve4+CUqJHNVZqPWrChAlxzjnnxIgRI2LXXXdtljGguehRjZVKjxo9enQ89thjMWbMmNh+++1j6dKlUVNTk9UxoLnpUY0Ve496991347LLLos//vGPed0ctaWy2WgObLvttk1u7vDee+9FRCz3B4YOHTrU/37OnDlxzjnnxK233hozZsxocN5XX32VxWr/n+/v7Pzee+9FkiSx0UYbNXl+RUXFCl+7a9eusfvuu8fNN98cCxcujNra2vpNO5vywAMPxPnnnx+vvvpqg/XHm1o/qqn6+vbtGwsXLoyZM2dm5baX1q1bN7kO+uLFi+sfh2KhRzVW7D0KSoke1Vgp9ai33347hg8fHptvvnn87W9/y+q1IRf0qMZKpUdttdVW9b8/7LDDYptttokjjjiiybWRoVDpUY0Ve486+eSTY8CAAXHAAQes9rVYeYL0PKqrq4uIb9alauof03d3EB4xYkRMnDgxTj311Nhqq62iXbt2UVdXF0OHDq2/TprlbViQ9onY98Pgurq6yGQy8fDDD0d5eXmj81dkV+HvGjlyZBx77LHx+eefx5577hmdOnVq8rx//etfsc8++8SgQYPiyiuvjLXWWisqKipi7NixcfPNN6/UmNmy1lprxfTp0xsd//bY2muvneuSIOv0qOLtUdAS6FHF36M+/vjjGDx4cHTs2DEeeuihaN++fV7rgWzSo4q/R31XZWVl7LPPPjF69OhYtGiRiVMUPT2qOHvUP//5z3jkkUfi7rvvbrCOfU1NTSxatCimTJkSa6yxRoMPQsguQXoe9e7dOyIiunXrFrvvvvtyz/vyyy/jiSeeiHPOOSd+97vf1R//9hPE71peg+rcuXNERKMNGKZOnbpS9SZJEhtssEH07dt3hZ+3PMOHD4/jjz8+nnvuubjtttuWe95dd90V1dXV8eijjza4bWXs2LFNnt/U+/Luu+/W77SeDVtttVX861//irq6ugYbjj7//PPRpk2brLw/kG96VPH2KGgJ9Kji7lGzZ8+OwYMHx5IlS+KJJ56ItdZaK2vXhkKgRxV3j2rKokWLIkmSmDdvniCdoqdHFWePmjZtWkR8s7nr93366aexwQYbxJ/+9Kf4+c9/vtpj0TRrpOfRkCFDokOHDnHhhRfGsmXLGj0+c+bMiIj6T9uS/7sb8rf+/Oc/N3pO27ZtI6Jxg+rQoUN06dIlJkyY0OD4lVdeucL17r///lFeXh7nnHNOo1qSJInZs2ev8LUivvnE8Kqrroqzzz47hg0bttzzysvLI5PJNPi0csqUKXHvvfc2ef6zzz7bYK2qjz/+OO67774YPHhwk59crooDDzwwvvjii7j77rvrj82aNSvuuOOOGDZsmHWqKAl6VPH2KGgJ9Kji7VELFiyIn/zkJ/Hpp5/GQw89tNzbtKGY6VHF26O+v3RFxDfv+V133RXrrrtudOvWLSvjQD7pUcXZo3bddde45557Gv3q2rVr9O/fP+65557U18PqMyM9jzp06BBXXXVV/PSnP41tttkmDj744OjatWtMmzYtHnzwwfjxj38cl19+eXTo0CEGDRoUF110USxbtix69uwZjz32WHz00UeNrvntpgZnnHFGHHzwwVFRURHDhg2Ltm3bxjHHHBOjR4+OY445Jvr37x8TJkyId999d4Xr7d27d5x//vlx+umnx5QpU2K//faL9u3bx0cffRT33HNPHHfccfGrX/1qpd6DUaNG/eA5e+21V1x66aUxdOjQGDlyZMyYMSOuuOKK6NOnT7z++uuNzt98881jyJAh8bOf/Syqqqrqm/M555zzg2Pdf//98dprr0VExLJly+L111+P888/PyIi9tlnn9hiiy0i4psgffvtt48jjzwyJk+eHF26dIkrr7wyamtrV2gcKAZ6VPH2qIioP/7mm29GxDe3bT799NMREfHb3/72B8eCQqdHFW+POvTQQ+OFF16Io446Kt56661466236q/Rrl272G+//X5wLCh0elTx9qg999wz1llnndhuu+2iW7duMW3atBg7dmx89tlnqTNXoZjoUcXZo3r16hW9evVq9Nyf//zn0b17d99D5UJCsxk7dmwSEcmLL76Yet6TTz6ZDBkyJOnYsWNSXV2d9O7dOzniiCOSl156qf6cTz75JBk+fHjSqVOnpGPHjslBBx2UfPbZZ0lEJGeddVaD65133nlJz549k7KysiQiko8++ihJkiRZuHBhcvTRRycdO3ZM2rdvn4wYMSKZMWNGo2ucddZZSUQkM2fObLLeu+66Kxk4cGDStm3bpG3btskmm2ySnHjiick777yTlfdjvfXWS/baa68Gx8aMGZNstNFGSVVVVbLJJpskY8eOra/zuyIiOfHEE5Mbb7yx/vytt946efLJJ1PH/NaoUaOSiGjy19ixYxucO2fOnOToo49O1lxzzaRNmzbJTjvt9IOvDQqJHrVq70ex9Kjlnee/foqFHrVq70cx9Kj11ltvueett956KzQW5JsetWrvRzH0qMsvvzwZOHBg0qVLl6RVq1ZJ165dk2HDhiUTJkxYoXGgEOhRq/Z+FEOPWtG6aR6ZJPnePRFQxDKZTJx44olx+eWX57sUgEb0KKCQ6VFAIdOjgEKmR7UM1kgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBTWSAcAAAAAgBRmpAMAAAAAQApBOgAAAAAApBCkAwAAAABACkE6AAAAAACkaJXrATOZTLNct6qqKtZdd914//33m+X6QLpS2be4uXpUIbn//vtj0qRJcfbZZzd6bMyYMXH88cdHTU1N7gtbTVtssUU8/fTT8dOf/jTuu+++fJdDgdGjgEKmRwGFTI8CClkue1RJzEjfbLPNYq211hKiA6yAG264Ic4///x8l5F1kydPjgceeCCGDBkS5eXl+S4HAAAAKCElEaRvs8020bdv33yXAVAU7rjjjqKccf5DampqYsyYMfGTn/wk1l133XyXAwAAAJSQkgjSASAi4oknnohXX301Tj311BgxYkS+ywEAAIAflMlkLD9UBIo+SC8vL49NN90032UAlIT33nsv+vTpk+8yVsvkyZOjZ8+e8eabb8aGG26Y73IAAACgXs+ePWPw4MENfvbecssto1+/fk2e37Vr1+jevXuuyiNF0QfprVu3jv/8z/+MZcuW5bsUgKKXyWRi1KhR+S5jtZxzzjkxZ86c6N27d7Rp0ybf5QAAANACVFVVRevWrRsc23PPPePKK6+MnXbaqf5Y69ato1evXtG2bdv6Y6+++mq89NJLTV63srIyqqqqmqdoVkrRB+kREXfeeWdMmDAh32UAFL2NNtqo6DciXbJkSbz44otx2WWXRVlZSfw3BwAAQAEoKyuLESNGRK9evRo9tt9++8Xhhx/e4NgTTzwR9913XyxZsqQ+DH///fdjyZIl8dprr63QmJ9++mlMmzZt9YtntZVEwlBZWRmtWrXKdxkARS9JkliyZEm+y1ht999/f3z22Wdx+OGHR3l5eb7LAQAAoACtueaasc4660RlZWWD41tttVX8/e9/bxCMd+7cOZIkiS+++CIWL17c6Fq33XZbXHPNNQ2OLV26ND755JOYM2dO1NXV1R8fN25cll8JuVASQfrw4cPjwgsvtCg/ABER8cknn8Tw4cOjpqYmOnXqlO9yAAAAyLNDDjkkBgwY0ODYnnvuGSeddFKstdZaDY6/9tprceyxxzYIvHffffdIkiSeeuqpmDFjxgqP++abb8a7775rWeoSUPRBeufOnWP06NExb968fJcCwHecdtpp0aFDh7yNP2PGjHj++efNSAcAACghffr0iS222KLRLPKIiGOPPXa5z3vxxRfjgw8+aHDs3nvvjddeey2mTp3a4HiSJFFbWxtJktQfu+OOO1azcopd0a+H8pvf/CbGjRsXW2+9db5LAeA7evbsmfcQ+5577snr+AAAADT27c+KdXV1DcLqiIjtt98+9ttvv4iImDJlSlx99dUNnjdgwIDo3r17TJs2LZYuXdrguddee+1yx3z//fcbHZs/f37ccsstq/oyaGGKPkiPiNh4443jzTffbPQPD4D8eeutt9y6BgAA0MJ07949tthii5g2bVq88847jR5v3759XHLJJdGqVau455574v7772/w+Ny5c+Odd96JJEnin//8Z5PPu/fee2Pu3LnN/VKggZII0l955ZWYOXNmvssA4DuuuuqqfJcAAADASqisrKxfMqWmpqbRppp9+vSJX/ziF/VfP/XUU3H77bc3OKe6ujp69OgRX375ZZNj7LPPPvGf//mfUVtb2+TjdXV1UVNTExERc+bMqT8+b968OO6441b+RbUArVq1ql+OhuZTEkE6AIWnf//+8frrrze61Q4AAIDcqq6ujuHDh0d5eXkkSRL33ntvLFiwoNF5Q4cOjaFDh0ZExKRJk2LMmDENHv/oo4/ijDPOiP79+8fzzz/f5M97U6dObbBJ5/fdddddqYHvu+++G+++++6KvrSSsd1228VLL720SmH4tttuGzNmzGhy+RqypySC9B//+MfxwQcfxPTp0/NdCgD/1/z586Ouri7fZQAAABSN1q1bRyaTiU6dOkUmk6k//uWXX8bChQubfM6RRx4ZO+64Y0REjB8/vsk1v+vq6mLmzJlRVlaWOnP5H//4R/zjH/9Ybn21tbXx9ddfx2effRbz5s1bmZdW7/uz3FuKtdZaK+bOnRuLFi2KiIhhw4bFlltuGeeff35EfDPjflWXrZ44cWLW6mT5MkmOFxb/bhPIhiuuuCJuv/32mD59eov8tAoKRansUZDtHlVsxowZE8cff3z9bXSrY/DgwVFVVdVovTvIBz0KKGR6FFDI9KjV16VLlxg1alSTj40bNy5mzJhR//WWW24ZFRUVsf/++0dZWVn98TvuuCMmTZrU5DXKysoik8nE4MGDY/z48Vn5eY5VV11dHccff3zMnz+/fkZ/eXl5/Pd//3fcc8898cYbb0TEN38n11577ejatWu8+uqreay4uOWyR5XEjPS11lorlixZkpOxRo0aFc8884xbJQB+wFtvvVW/EzsAAECxO+644+J//ud/Vuo5Xbp0iQ033DBmzpwZ8+bNi48++qjB49+f1f3aa69FRMRLL720wmN8eyfwG2+8IURvRm3atIk+ffrEV199FVOnTo2IiG7dusVFF10UH374YZx77rkR8c1mq0899VSDmfe1tbVx3nnnNbhekiTx5Zdf5izTZPWVRJDeqVOnaN++fU7Guvnmm2PnnXcWpAP8gI8//tjMNLIuk8mUzKwoAACKy8qG6BER66+/fgwaNCgivlnSpDlnHn/88cfNdu1SlMlkoqysLOrq6hr8jLHvvvvGDjvsEOPGjYs333yz/vgaa6wRQ4cOjXfffbc+SJ8xY0YcccQRDa678cYbxxNPPLFCa50vXLhwuUv2ZIOfn7KrJIL05557rsFtMM1p2bJlMX78+JyMBVDMNt9889huu+0abU4Dq+PAAw+Mzz77LJ555pl8lwIAAD/opZdeWqnZ5WRfRUVFDBo0KBYvXtzg54itt946TjrppHjyyScbbI761FNPxaRJk2L27NkNrjNkyJCYNm1aPP7446njPfbYY9l9AauoS5cucdRRR8Wf/vSnWLZsWb7LKQllP3xK4fv+J0cA5F91dXXqTu2wKlq1ahUnnHCCux0AAKCFat26dbRr1y5at27d6LHDDz+80bGysrLo1q1bdO3atcHxl19+OY466qhGP7fOnTs3Pvnkk/pNQb81ZsyYuPXWW2P+/PlZeBXNr6qqKtq1axcjRozIdykloySC9I8++iimT5+e7zIAit6zzz6btQ8mX3nlldh6662zci341h133BFJkgjSAQCghHXo0CEOO+ywOOyww6JPnz4NHjvppJPioosuiv/v//v/Gj3v9ttvb3RsyZIlccstt8S9997bXOUWpE8//TQuvvjiqKysjG7duuW7nJJQEkF6PnTs2DEOOuigfJcBkDWtW7eOG2+8cYXWcVsRSZI02jgHVldNTU1cfPHFMWLEiFhnnXXyXQ4AALAcbdu2jZ49ey53X8Pf/va3MWbMmEYzxSO++b5/0aJFMXv27Aabdu6yyy6x6aabRlVVVZN3QH/33FLRqVOnVX7uwoULY9q0aZZ2yZJMkuM1UbI1g2zgwIHx2muvxe677x4PPfRQXna47d+/f0ybNi1n67NDISuV5ZVa8izXESNGxLx58+Lhhx/OdymQqmPHjjFgwICV+ruqRwGFTI8CCpkeRVP69u0bw4YNi4iIOXPmxNixYxudM2DAgNhnn33i0UcfjSeffLLR42VlZZHJZJY7mWuPPfaISZMmxZw5c+qPfbtBaERkbRJYoenYsWMcddRRcf3118dXX30V++23X9x11135Lqtg5bJHFW2Q/vvf/z6uv/76+OKLL+LLL7/MyjVXVteuXeOoo46Kv//97zFz5sy81ACFwjdXheukk06Ku+666weXwBoyZEgsWLAgnn766RxVBqvnZz/7Wdx8880xa9asHzxXjwIKmR4FFDI9qrT06dMn2rRpU//13LlzY9q0aY3OO/LII2PnnXeOiG82z7zpppvqH8tkMrHZZptFRUVFRHwzC/ztt99u3sJbkMrKyth0003j7bffzsvE4WKTyx7VKmcjNYPtt98+6urq4oYbbsjL+DNnzowHHnggjj766Bg9enReagD4Id27d4+qqqofPO/RRx/NQTWQPbfeemuceOKJcdlll8XcuXPzXQ4AzSiTyZRMmAewIr6ddf19dXV1y33OEUccERtvvHFEfBMuXnTRRY2+T95hhx2iR48e9V+//fbbTQbpY8eObXKWeUREeXl59OzZMx577LEfehktXiaTqf8/7Nv/x/r37x+zZs2KKVOmNPmcpUuXxmuvvZbDKllRRT0j/dlnn41FixbF+PHjs3LNVdGqVas466yz4uqrr45PP/00b3VAvpXKDzalOEuhU6dOcc4558TJJ5+83HPKysqib9++ZhFQdI4//vjo0KFD/PGPf0w9T48CCpkela5Tp06x++67x5133tks1wfStYQe1aNHj1i6dGmDJUQivgmMd9xxx3jnnXdis802y3qfmzJlSrz//vuNjnfq1CkuvvjiKC8vb/TYJZdcEm+88UaT1+vSpUtUV1fXfz19+vSSXf6kEGUymdhxxx0jk8nEv/71r6irq4thw4bF/vvvHzfccEP98jZt27aNZcuWxdKlS/NccWmwtMsK+MMf/hCLFy+Os846KyvXWx3bbLNNHHPMMXHDDTfEc889l+9yIC9awjdXxaqsrCyefPLJOO+88+Lxxx9v8pw2bdrEpZdeGieccELWxj3ooIPiwQcfjIULF2btmtCUTTbZJLp06ZK6LJEeBRQyPQooZC2hR2244YZRV1fXaIZwq1atYuTIkfH666/HDjvssNzn19TURHl5eYMxli5dGpWVlQ3OW7hwYYP3c/LkyfHSSy81ec1ddtklDjzwwPqvx40bV9CZU2VlZSxbtqxk/r58X0VFRVRVVcWSJUvqN+4cOHBgHHLIIfHwww/HAw88EGVlZXHggQdGJpOJO++804cYOWJplxWQyWRiwIAB0b9//3j11VejpqYmb7W88sorMXPmzOjTp09MmjTJTrhAQamrq4vRo0fHbbfdFhtssEF8/fXXORn3H//4h/XcyIn33nsv/v3f/z1efPFFf+cAAFhpH374Yfz0pz+NqVOnNgjlampq4u23347jjjsu9fnjx4+PTTbZJNZdd92IiFiyZEncddddMXLkyPpzkiSJ3/72tyu8z98zzzzTIGRfvHjxyryknBsyZEhMnDgxZs+ene9SVlv//v1j4403jgkTJsTHH38cERG77757DBs2LG699daYMGFCREQ8//zz8dprr9X/DFJXVxe333573uqm+RVtkB4RUVVVFSeeeGL87Gc/i3nz5uWtjiRJ4tFHH41//OMf8a9//SumTp2at1oAmvL888/Hv/71r+jcuXOTQXqSJFlfY3r//feP++67z4x0ml1tbW3ceOON0aFDh1iyZEkMHTo03njjjfjkk0/yXRoAWdSqVauorq6O+fPn57sUoASNGzeuyeMvvPBCvPDCC6t0zbQ7Jn/I0qVLi2rpj/vvvz/fJaRq06ZNdOrUKebNm9cgQzzppJNim222iQsvvLB+mZ2FCxdGTU1Ng0k6Dz/8cDz88MMNrrls2TKTaVuYpncuKALfBkKfffZZQTSWiRMnxv333x8XXnhhvksBaGTOnDlx5513xi233BLrr79+o8cXLVoU//3f/53VMW+77bYmQ/SePXvG5ptvntWxoLKyMnbZZZeI+GbjXCE6QOnp0qVL9OvXL99lAFDADj744PjFL34RnTp1anB8iy22iJNPPjm22267BsevvPLKOPbYYxusVf/OO+9ETU1NzJgxIxclU0SKdo30srKyGDNmTEydOjW++OKLuOqqq7Jy3dVx3nnnxVZbbRUjR47M6wx5yIdSWQetlNf2LCsri1NOOSXeeOONRp+kn3baaXHFFVdkdYbXYYcdFnfffXejML1t27ZRXV1dErf8UTz0KKCQ6VFAIdOjyJfu3btH165dI0mSePvtt+vXHP/d734XvXv3joiI6667rn4Tz4iIPn36RLt27WLy5MkFMfE2W3r16hW1tbXx6aef5ruUgmON9JXwzDPPxFNPPZXvMiIi4ve//3188sknMWjQoHjwwQfzXQ5AA3V1dXH//ffHPvvsE48++mjU1dXVP7b22ms3uSP86rjpppua/A9twYIFsWDBgqyOBQC0DEOGDInnnnsuvvrqq3yXAsAKKiv7fwtifPfn0K5du8YvfvGLiIi4++67G228utFGG8WAAQNi2bJl8cEHH9QH6eeee+5yx/ruzPJiVFZWVv8e/eIXv4hnn302nnvuudh6661j8eLFgvQ8K+oZ6ffcc0+ccMIJMX369Kxcc3VlMpk44YQT4qSTToott9wyrxugQq6ZpVA8TjnllPjzn//cYAfxTp06xVdffZXVP8dDDjnEGukUDD0KKGR61Irr2LFjzJ8/v8H3MUDz0qNYnoqKihg4cGCDSVmTJ0+Ozz77rP7rHj16xIUXXhiZTCaWLl0av/zlL+snVrVq1Sp69OgRERFffvllowlX++23XzzzzDMxc+bMHLya/Gvbtm1ceumlcckll8S7774bPXr0iPnz59sb5AfkskcVdZA+derU+O1vfxu33nprgw0A8mn99dePa665Jvbff38zLmlRfHNVvDbZZJPo1q1b/c7j2bDxxhvHSSedFKeddpognbyqqqqKJUuW6FFAQdOjgEKmR5WuqqqqqKioqP964cKFDWaMb7PNNnH00UfXf33//ffHI488Uv91dXV1HHjggQ1mnE+cOLHBrPDDDz885syZExtttFH86U9/aq6XQgtmaZeV0KZNm7jwwgvjlFNOyXcpERExZcqU+Prrr2PvvfeO2267Ld/lAKyQbH9Tmclk4qGHHhKik1dlZWVx8sknx+23357vUgAAIGeGDh0anTt3bnDsqaeeajBTPCJixIgRMWDAgPqvR48eHVOnTq3/+vXXX49HHnkk5s+fH5MmTYrFixc3eP7ixYvjxhtvTK3ljjvuiLq6uvjnP/+5qi+naLVr1y6GDRsWs2fPjsceeyzf5ZAFRR+kd+rUKdq0aZPXGtq3bx8LFy6sv71w/vz5jRrWD6muro4kSQpmZj18XyaTie7du8ecOXNKasMOIj7//PN4++23s3rNuro6d+WQd3V1dTFmzJioqqrKdykAAJSwtm3bRocOHZb7eE1NTYPlSVq3bh2dOnVqdF6SJPHFF180OcO2srIyLrnkkmjbtm39uUmSxGmnnRazZ89ucO7cuXMbPX/ZsmUNvt54443js88+i5qamrj22mvj9ddfb7LuTz/9NBYuXBhff/31cl9fmkWLFq3S8wpdJpOJHj16RG1tbcyYMSMiIg477LDYdddd44orrohJkyZFbW1tzJkzZ5XfOwpP0S7tkslk4tprr40jjzwybr755vjpT3+aleuuivPOOy+uvfbamDZtWkRE9OzZM37+85/HqaeeusLX2HLLLWPJkiVZD7MgW6qqquK3v/1tXH/99U1u3uF2v9WzzTbbxMcff5zztd8ymUz87W9/a3C7XrauG1E6fy8ofqXyd9EtyVCa9CigkOlRP2zQoEGx9957L/fx6dOnN1jWZKuttoqRI0c2Om/JkiVxwQUXNJr5/a3y8vLYf//9Y/31149Zs2bFuHHjVnl/vm/fj283tyyVP+fmsv3228cOO+wQTzzxRLz++uvRpk2bOOOMM+Krr76Kiy66KCK+eS/LysqitrbW+5lDlnZZAUmSxK233hojR46M3//+93mro3fv3rFw4cL4/PPP648tWbIkdt1119hjjz1i/PjxK3Sd1157rblKhKzIZDLRrVu3OPHEE+OXv/yl/xSy7JNPPsnLBiJJkqTueL6qWrduHVVVVfHll19m/doAAACFZMKECbHHHntEr169mny8e/fuseeee8bDDz8cEd+sStC9e/f6x5MkiVNOOaXRzPLvq62tjZdffjnee++9WLx48SqH6N+O+e01+WFTpkyJrl271i+Ps3DhwjjjjDManFNXV9dgjXlKT9HOSI+I2H333ePII4+Mv/71rzFr1qwmZ8k2t65du0bv3r3jueeea3D85JNPjuOOOy7+7d/+Lec1QT6USrDe0mZSZTKZZvmzGzhwYGy88cYxZsyYrF8bVoUeBRQyPQooZHoUfGOvvfaKBx98MN9l8D257FFlP3xKYRs6dGg8+OCDseGGG+Z87HXXXTcOO+ywRiF6RMS0adOsgQQUvP322y/WXHPNrF/3xRdfjFtvvTXr1wUAAIB8EKJT1EH6m2++GZMnT44OHTo02jShuWUymTjkkEPiqaeeavLxe+65J95///2oqKjIaV0AKyqTycQDDzzwg7cProolS5bYbBQAAABWQJs2baK8vDwiIn7xi1+krrlP/hR1kD59+vT48MMP46677ooJEybkdOxu3brFQQcdFHPmzFnuOX379o2TTjoph1UBrLgePXrErrvumu8yAABW2XbbbWe5BgCKWnl5eZx99tnxox/9KCIirrnmmhXec5HcKuog/Vs77rhjbLnlljkds6ysLJ588smYMmXKcs/505/+FF27dq3/RAmgkEyfPj0effTRrF+3ffv2+h4AkBOLFy+O9u3b57sMAFqIgw8+ONq1a7dKz+3YsWOTx2tra+PXv/51vPrqqxHxzUamS5YsWdUSaUZFH6T/85//jK5du0aXLl3yXUojr7/+egwYMCA6dOiQ71IAcmaHHXZY7jcIAADZ9NFHH8WPf/zjfJcBQAtx++23x/z583/wvM033zyOPPLI+q/Ly8tjjz32aM7SyIGiD9LvuuuuWLx4cb7LaNKHH34YEyZMiOrq6nyXAtDA4MGDY/3112+Waz/22GOpy14BAGTL119/HQ8//HC+ywDIud69e8fmm2/e4FdTM6WPPvrouP766+Mvf/mLO4dXU+vWrWOzzTaLXr16Ra9evWLzzTePNm3aRMQ3fx5jxoypv0vq888/jxdeeKH+ubW1tXHnnXdG27Zt49BDD81L/ay+TJIkSU4HzPL6de3atYtPP/00brvttjj++OMjVy+nbdu28e///u/xv//7v6nnnXfeeTFmzJjUJWAg38rKyuLXv/51o9ti//KXv8QXX3yxQs+vra1trvJyyhqbUJpy/O1Os9GjoDTpUUAhK5UetbIhcpIkq/za99lnn/j8889j3333bXD8/fffj7FjxzY6f8iQITFo0KBGx7/44ov4y1/+0uQYo0aNirXWWqtBjXfccUd8+OGHq1QzP+zkk0+O6urqePfddyPim70Rb7zxxvj000/zXFnLlsseVfRBeiaTif/6r/+KU089NdZff/2CC/OOPvro2HnnneOnP/1pvkuBVD179mz0jcX06dNj2bJlqc/7t3/7t/jVr34VRxxxRDNWlzuF8gNg375944MPPii4ntZc2rRpE926dfOhI82mVH4ALJQeBWSXHgUUslLpUdddd91Knf/mm2/GxRdfvEpjdenSJf793/89unfvXn8sSZJ49dVXo1OnTvH00083+FmvU6dOMXTo0Kiuro4vvvgi3nzzzYiIWLZsWUyfPn254wwfPjwmTJgQs2fPXqU6WTlrrrlmzJ49O7baaqsoLy+PSZMm5bskIrc9qlXORmomSZLEjBkzomPHjnHQQQfFrbfemu+SGhg7dmwMHDgw32XAD1rVT1DffPPNOPLII0smSC8UJ5xwQpx11lkxb968fJeSE+uss07st99+cdFFF+W7FAAAoAR9d73q5jZ37txYY401Gh1fsGBB/OhHP2p0V/fcuXPrv16wYEFMmzZthca55557slMwK6R9+/ax6aabxtNPP53vUsiTop+RHhFRUVERjzzySLzyyivxq1/9KuvXXx2ZTCb+/ve/57RhQz6UyiyFQplJ1a5du9hkk03ipZdeyncpOVFWVhYVFRV2JqfZ6FFAIdOjgEKmR8E3unfvHl26dKm/Y4DCkMseVfSbjUZ8c6vL6NGjY+7cufkupUmLFi2K1q1b57uMFdKxY8fo1KlTvsuAFq+uri4OPPDArF7z0EMPLdheVFdXJ0QHAACgYK2zzjqx6667RllZScSprIKS+ZMfP358PPLII9G1a9d8l9JAkiRxxx13xNVXXx1VVVUr9dzBgwc3U1XLN3r06LjmmmtyPi7Q0MKFC+OGG26I9dZbL2vXvOWWW2LRokVZux4AAAC0FC+//HJMmzatYCeo0fxKJkiPiJg2bVrMnz8/32U0Mm/evNh9991X+h/aO++800wVLV95eflK72QNNI8NNtgg1llnnaxdr66uLmvXAgAAgJYkSZK47777YsGCBfkuhTwpqSB9xowZBTnb8qWXXoq77757pZ83derUZqgm3f333x8LFy60dhgUgAcffDC6devmwy0AAACAPCupIL1QbbzxxtG9e/dYtmxZvkv5QePHj4/FixfHEUccEa1atcp3OdDivfXWW/HrX/8632UAAABQwLp16xa77LJLo19rrbVWvkuDkiEpzYF33nkn7rvvvqJZVqG8vDxuuOGGqK2tzXcp5NAmm2wS7dq1i5deemm557Rq1ap+rf+6urqora2NioqKXJXYIn17Z8p6662Xl7tUAAAASkHbtm3rf19XV9doRYPq6uqs3Q28ZMmSqKmpWe3rnHbaaU0u9/m///u/cddddzU41qZNm0Z7bLVu3TqmT58e06dPX+1aAEF6zmy//fbx4IMPFuTSM99VW1sbXbt2jTPPPDPOPffcogn/WX3vv/9+/ZI+bdq0iY022ihee+21Buf0798/Ro0aFRERn3zySbz99tux++6757zWlmTRokXx6quvxg477CBIBwAAWEUXX3xx/e8/+eSTuOCCCxo8ftxxx8Wmm26albGuv/76eO6551b7Ou+//3589dVXERFRU1MT9957byxdujSWLl3a6NwpU6bEddddV/91JpOJc889N9ZYY43VrgP4hiC9CHTs2LG+cTa3ZcuWxfXXXx9XXXVVXHjhhU02Z0rTdz8tb+rT+YiI5557Lt5555246KKLYsMNN4wNN9wwlyW2WA8//HBceeWVcf/999vUBAAAYBVUVlbW//67d1ZXVVXFpZdeGtXV1St0nTvuuCMeeeSRrNfXlOnTp8fChQsj4puf2efOnbvCM92TJIkzzzyzOcuDFieTJEmS0wFb6CaW//Ef/xHz58+PBx98cKWeV1FREfvss0+jW3aa0wEHHBDXXXddDB8+PB5//PGcjUvxaGr9/GLYA2BFFGqP6tmzZ/Tt2zeefPLJfJcCRSnH3+40m0LtUcDq0aOAQlYqPeq74XmSJA2Ws12ZPeLq6urcvQ8FJJc9SpCeI23atIlLL700TjjhhHyX8oM6deoU9957b7z55ptx4okn5rscikSpfHPVUnsUlDo9CihkehRQyPQooJDlskeV5WwkisbcuXPj73//e/Tv37/JTS0AAAAAAFoSQTpNevjhh2P27NmxePHifJcCAAAAAJBXgvQc+Xb9rfLy8nyXskLmzZsXM2fOjM022yzfpQAAAAAA5JUgPUcWLVoUEydOjN122y3fpayQxYsXx3PPPRd//vOf810KAAAAAEBeCdJzqKampsEu0YXuwQcfjCRJ4pBDDsl3KQAAAACshK5du0b37t1ttApZIkhnuaZNmxbLli2LjTbaKAYPHpzvcgAAAABYAZlMJo455pj42c9+FlVVVfkuB0qCIJ1UZ511VnTp0iWmTJmS71KAIrf22muv0mMAAM3p27AJoJQkSRJ33HFHjBs3LpYuXZrvcqAkCNJJ9dFHH8WJJ54Y6667bvTv3z/f5QBFbJtttlmlxwAAmlOSJPG3v/0t32UAZN0ee+wRw4YNi8rKynyXAiUhkyRJktMBW/C6TP/xH/8R8+fPjwcffDDfpaywVq1axSWXXBJ9+/aNgw46KObPn5/vkihQOW4lzaYl9ygoZXoUUMj0KKCQ6VHF7cgjj4zq6uq46qqr8l0KNItc9qhWORuphdh2222jbdu20aVLl7jjjjsaPPb8889HTU1NnipbNTU1NTFr1qzYeuuthegAAAAARWTs2LH5LgFKhqVdsmzDDTeM0047LbbYYovo3Llzg8emTJkSn3zySZ4qW3UXX3xxLFiwIHr37p3vUgAAAAAAck6Q3gzGjRsXERF1dXWNHjv55JOjvLw81yWtlsWLF0e3bt1it912y3cpAAAAAAA5J0hvBnvttVcMGDAghg0b1uixLbbYoujW5UqSJH75y1/GTjvtFFVVVfkuBwAAIGf22GOPfJcAABQAQXozOOSQQ2LXXXeN008/Pd+lZM2kSZOiqqoqLrjggnyXAgAAkDPvvfdevksAAAqAID3LXn/99Xj33Xdj4sSJcdlll+W7nKyZP39+zJo1K/bee+/YZJNN8l0OAABATkyZMiXfJQAABUCQnmWTJ0+OyZMnx6233hr/8z//k+9ysurcc8+N7t27x8Ybb5zvUgAAAAAAckaQ3gwuueSSuPzyy/NdRtZ98cUXMXbs2Bg1alS0atUq3+UAAADkRWVlZb5LAAByTJDeDJ5++ulIkiTfZWRdbW1t3HrrrbHppptGv3798l0OAABAXowcOTLfJQAAOSZIZ6W88MIL8c4778Thhx8eRx55ZL7LAQAAyLnrrrsu3yUAADkmSM+xiRMnxo9//ON8l7Fannjiifi3f/u3ePHFF2PbbbfNdzkAAAAAAM1KkJ5jP/rRj2KHHXbIdxmr5aqrrornnnsufvSjH8Unn3yS73IAAAAAAJqVID3H2rdvHxdffHG+y1gtNTU1MXXq1PjrX/8aG2+8cb7LAQAAAABoVoJ0VsmNN94Y48ePj8MOOyyqq6vzXQ4AAAAAQLMRpBexioqKvI09b968OOGEE+LFF1+MqqqqvNUBAAAAANDcBOlF7LzzzotOnTrlbfyvvvoqPvnkk6isrMxbDQAAAAAAza1Vvgtg1bVp0yYymUxea3jggQfyOj4AAEAhqqioiPLy8li8eHG+SwFoMcrLy6NLly4REfH111/HokWL8lwRpUSQXsSeeuop35QBAAAUoF69ekX37t2jqqoqnnzyyXyXA1By1lprrVhzzTXjjTfeqD/WuXPnOPXUUyMi4s4774znnnsuX+VRgjJJkiQ5HTDPM6jzbcyYMXH88cdHTU1NvkuBrMpxK2k2Lb1HQanSo4BCpkeVrrKysthss81iypQpMX/+/HyXA6tEjyougwcPjnfffTemTJmS71JWWefOnaNz587x4YcfRkTEoYceGvfee2+UlZXF3nvvHbfccktERLRr1y5at24dM2fOzGe55Fkue5Q10ovYnnvuGdXV1fkuAwAAgCbU1dVFXV1d9OjRI9+lAC3EY489VpAhelMfZBx//PFx7rnnRufOnRsc33DDDWPw4MH1X990002xYMGCmDdvXn2IHhExf/58ITo5ZWmXIvbCCy/E0qVL810GAAAAyzF58uSIiNhjjz3ivffeK8iACygtffr0iT322COuuuqqnI677bbbRkVFRTz//PP1KzEcc8wxMXv27Nhkk03i97//ff25a6+9dkyfPj0effTRmDdvXoPrTJo0KSZNmpTT2mFFCNKL2B577BGtW7eOsWPH5rsUAAAAUowfPz4ymUy0atXKUp9As5o1a1ZMnDgxIiIqKytjxIgRceONNzb7uBtssEG0adMmXnzxxfpjf/vb35o8t1OnTlFZWenDRYqKIL2I/eMf/2gxa3wBAAAUux49esRWW20VDz/8cL5LAUrY3LlzY+7cufVft27dOifj3nbbbSt87uTJk+vv2IFiYY30IrZw4cIoK/NHSHZVV1dHRUVFvssAAICSM3369Kiuro4//OEP9rsCcmLp0qVx7bXXxhFHHCFDgtXkX1AR22233WLffffNdxmUmIMOOigGDhyY7zIAAKAk3X///dG5c+e46qqroqqqKt/lAC3EuHHjoq6uLt9lQFETpBex999/v8FuxZAN8+bNi1/96lc+qQYAgGZQU1MTp5xySlx77bVx2GGH5bscoIWora3NdwlQ9CRlOXbPPfdk7RPATz/9NH7yk59k5VrwrXvvvTe++OIL6+8DAEAzmTdvXkycODHGjBmT71IAgBUkSM+hLl26xDPPPJO1IL22tjaeffbZrFwLvut3v/tdHHfccbHOOuvkuxQAAChpa665Zpx++un5LgMA+AGC9Cxo1arVCs3e3W233WLAgAFZGzdJkpg1a1bWrgff+vLLL+PFF1+ML774It+lAABASVu4cGH885//jCOPPDLfpQAAKQTpWfCb3/xmhWbufvzxxzF9+vQcVASrZ8GCBfHSSy/FSSedFH379s13OQAAULIWLVoUzz//fPTo0SM22WSTfJcDACyHID0Lamtro3379j943sSJE+Pll1/OQUWQHWPGjInDDjss1l9//XyXAgAAJe2vf/1rDBs2LDbccMN8lwIANEGQngUXX3xx/PKXv0w9p1WrVrHzzjvnpiDIkq+//jpeeeWVGDx4cL5LAQCAkjZ//vy49NJLY/jw4bHZZpvluxwA4HsE6VlQU1MT6667bhx99NFRVtb0W1pZWRkHH3xwVsc97LDDok2bNlm9JnzfPffcExMnTozhw4ev0F4AAADAqqmtrY3/+Z//iVGjRkWfPn3yXQ4A8B2C9CxIkiRGjx4df/7zn1doiZdsuemmm2LhwoU5G4+W64033ojFixdHq1at8l0KAACUtHnz5sWzzz4bZ555Zr5LAQC+Q5CeJc8++2zce++9y501UFtbG++//35Wxxw5cqQZ6eTMY489Fr169YqIiD333HOFNtgFAABW3kMPPRSff/55bLfddu4KBYACkUmSJMnpgCX8TcDuu+8eF110URx++OHxxhtvNHisoqIili1bltXxWrVqFTU1NY2O9+7dO7p27RrPPfdcVsejZauoqIhtt902nnnmmSYfz3EraTal3KOgJdOjgEKmR9GU9ddfP8aNGxfXXnttjBs3rmT+nlB8SuXvnh4FpSmXPcqM9Cx6/PHH469//Wusu+66jR47//zzo0OHDlkd74ADDmhyRvrUqVPjlVdeyepYsGzZsuWG6AAAQHZNmTIlRowYEccee2wcd9xx+S4HAFo8QXqWPfroozFgwIAoLy9vcLy2tjbrYz344IOxaNGiRsdrampiyZIl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zz475s6d2yzXXx3ffT+efvrpRo8nSRLrrrtuZDKZ2HvvvfNQYcRVV10VBx10UPTq1SsymUwcccQRTZ6X9mf7+eef57ZoWEV6VEOl1KO+9fjjj8euu+4aHTt2jPbt20e/fv3itttuy02xsJr0qIZKqUftvPPOy/2zraioyG3RsIr0qIZKqUdFREyaNCn23nvv6NGjR7Rr1y622GKL+Mtf/hK1tbW5KxhWgx7VUKn1qPHjx8fAgQOjTZs20blz5zjwwANjypQpOau1JWuV7wJagnPPPTc22GCDBsc233zzZhlr4sSJcc4558QRRxwRnTp1apYxVld1dXXcfPPNMXDgwAbHn3rqqfjkk0+iqqoqT5VF/OEPf4h58+bFtttuG9OnT//B85v6sy3U9x2WR49qqFR61NixY+Poo4+OPfbYIy688MIoLy+Pd955Jz7++OMcVQvZoUc1VAo96owzzohjjjmmwbEFCxbECSecEIMHD27uMiGr9KiGSqFHTZo0KQYMGBAbbbRRnHbaadGmTZt4+OGH4+STT44PPvggLrvsshxWDatHj2qoFHrUAw88EPvuu29ss802MXr06Pj666/jsssui4EDB8Yrr7wSXbt2zWHVLY8gPQf23HPP6N+/f77LWC0LFiyItm3bZuVaP/nJT+KOO+6Iv/zlL9Gq1f/7K3jzzTdHv379YtasWVkZZ1U89dRT9Z/+tWvX7gfPL4U/WyiFv8d6VENTpkyJE088Mf7rv/7LD3sUPT2qoVLoUXvssUejYzfeeGNERBx66KHNVh80Bz2qoVLoUddcc01EREyYMCHWWGONiIg4/vjjY6eddorrrrvO91YUFT2qoVLoUaeddlpsuOGG8cwzz0RlZWVERAwbNqw+WL/kkktyVXKLZGmXAvDwww/HjjvuGG3bto327dvHXnvtFW+++WaDc15//fU44ogjYsMNN4zq6uro0aNHHHXUUTF79uz6c84+++w49dRTIyJigw02qL9tZcqUKTFlypTIZDJx3XXXNRo/k8nE2Wef3eA6mUwmJk+eHCNHjozOnTs3+LTuxhtvjH79+kXr1q1jjTXWiIMPPnilZjgecsghMXv27Bg/fnz9saVLl8add94ZI0eObPI5F198cQwYMCDWXHPNaN26dfTr1y/uvPPOJl/LSSedFDfddFNsvPHGUV1dHf369YsJEyasUG3rrbdeZDKZFX4tERHz5s1zix8lTY8qvh519dVXR21tbZx77rkRETF//vxIkmSFxoBio0cVX49qys033xxt27aNfffdd5WeD4VKjyq+HvX1119HdXV1oxm1a621VrRu3XqFxoJioUcVV4+aM2dOTJ48OYYPH14fokdEbLnllrHpppvGrbfeukJjseoE6Tnw1VdfxaxZsxr8+ta4ceNir732inbt2sUf/vCHOPPMM2Py5MkxcODABusbjR8/Pj788MM48sgj469//WscfPDBceutt8ZPfvKT+nBk//33j0MOOSQiIv70pz/FuHHjYty4cat8W8dBBx0UCxcujAsvvDCOPfbYiIi44IIL4vDDD4+NNtooLr300vj5z38eTzzxRAwaNGiF18Faf/31Y4cddohbbrml/tjDDz8cX331VRx88MFNPueyyy6LrbfeOs4999y48MILo1WrVnHQQQfFgw8+2Ojcp556Kn7+85/HYYcdFueee27Mnj07hg4dGm+88cbKvwk/YJdddokOHTpEmzZtYp999on33nsv62NAc9OjGiqFHvX444/HJptsEg899FCss8460b59+1hzzTXjzDPPjLq6uqyNA7mgRzVUCj3q+2bOnBnjx4+P/fbbL2szziBX9KiGSqFH7bzzzvH111/H8ccfH2+99VZMnTo1rr766rj77rvj9NNPz9o4kAt6VEPF3qOWLFkSEdHkh3pt2rSJzz77zL59zS2h2YwdOzaJiCZ/JUmSzJs3L+nUqVNy7LHHNnje559/nnTs2LHB8YULFza6/i233JJERDJhwoT6Y3/84x+TiEg++uijBud+9NFHSUQkY8eObXSdiEjOOuus+q/POuusJCKSQw45pMF5U6ZMScrLy5MLLrigwfH/83/+T9KqVatGx5f3frz44ovJ5ZdfnrRv377+dR100EHJLrvskiRJkqy33nrJXnvt1eC533/9S5cuTTbffPNk1113bfRaIiJ56aWX6o9NnTo1qa6uToYPH55a3/e1bds2GTVqVJOP3XbbbckRRxyRXH/99ck999yT/Pa3v03atGmTdOnSJZk2bdpKjQP5okc1/X6UQo/q0KFD0rlz56Sqqio588wzkzvvvDMZOXJkEhHJb37zm5UaB/JFj2r6/SiFHvV9f/3rX5OISB566KGVGgPySY9q+v0ohR5VU1OTnHTSSUlFRUX9mOXl5clVV121UmNAPulRTb8fxd6jamtrk06dOiW77bZbg+OzZs1K2rZt22h8ss+M9By44oorYvz48Q1+RXzzqd7cuXPjkEMOafDpYHl5eWy33Xbx5JNP1l/ju582LV68OGbNmhXbb799RES8/PLLzVL3CSec0ODru+++O+rq6mLEiBEN6u3Ro0dstNFGDer9ISNGjIhFixbFAw88EPPmzYsHHnhgubfRRDR8/V9++WV89dVXseOOOzb52nfYYYfo169f/de9evWKfffdNx599NGsLcEyYsSIGDt2bBx++OGx3377xXnnnRePPvpozJ49Oy644IKsjAG5okc1Vuw9av78+fHll1/GOeecE+eee24ccMABcdNNN8XQoUPjsssui3nz5mVlHMgFPaqxYu9R33fzzTdH165dm1w7HQqdHtVYsfeo8vLy6N27dwwZMiSuv/76uO2222LYsGHxX//1X3HvvfdmZQzIFT2qsWLuUWVlZXH88cfHE088Eaeffnq89957MWnSpBgxYkQsXbo0IiIWLVq02uOwfDYbzYFtt922yc0dvl0GZNddd23yeR06dKj//Zw5c+Kcc86JW2+9NWbMmNHgvK+++iqL1f4/39/Z+b333oskSWKjjTZq8vyKiooVvnbXrl1j9913j5tvvjkWLlwYtbW1ceCBBy73/AceeCDOP//8ePXVV+tvZYmIJtePaqq+vn37xsKFC2PmzJnRo0ePFa5zZQwcODC22267ePzxx5vl+tBc9KjGir1HtW7dOhYsWFB/e+W3DjnkkHjkkUfilVdeiUGDBq32OJALelRjxd6jvuvDDz+MZ599Nk466aQGm35BsdCjGiv2HjV69Oi47LLL4r333qvf8G/EiBGxyy67xIknnhh77723fkXR0KMaK/Yede6558asWbPioosuitGjR0dExODBg+Poo4+Oq6++OnWjUlaf7p9H365TO27cuCb/MX33P+cRI0bExIkT49RTT42tttoq2rVrF3V1dTF06NAVWu92eRsWpH0i9v01l+rq6iKTycTDDz8c5eXljc5f2X+sI0eOjGOPPTY+//zz2HPPPRtt5vKtf/3rX7HPPvvEoEGD4sorr4y11lorKioqYuzYsXHzzTev1JjNbd1114133nkn32VAVuhRxduj1l577Xjvvfeie/fuDY5369YtIr6ZSQHFTo8q3h71Xd/WcOihh+a5EsguPap4e9SVV14Zu+66a6PXvM8++8Qvf/nLmDJlSvTp0ycvtUG26FHF26MqKyvjb3/7W1xwwQXx7rvvRvfu3aNv374xcuTIKCsr05+amSA9j3r37h0R3wQbu++++3LP+/LLL+OJJ56Ic845J373u9/VH29qY8vlNajOnTtHRDTagGHq1KkrVW+SJLHBBhtE3759V/h5yzN8+PA4/vjj47nnnovbbrttuefdddddUV1dHY8++mhUVVXVHx87dmyT5zf1vrz77rvRpk2bVd7oYkV9+OGHzT4G5IoeVbw9ql+/fvHee+/Fp59+GhtuuGH98c8++ywiQp+iJOhRxdujvuvmm2+O3r17198iDqVCjyreHvXFF180GfAtW7YsIiJqamqyMg7kkx5VvD3qW927d6+fOFVbWxv/+7//G9ttt50Z6c3MGul5NGTIkOjQoUNceOGF9f8pf9fMmTMjIuo/bUv+727I3/rzn//c6Dlt27aNiMYNqkOHDtGlS5eYMGFCg+NXXnnlCte7//77R3l5eZxzzjmNakmSJGbPnr3C14r45hPDq666Ks4+++wYNmzYcs8rLy+PTCbT4JuZKVOmLHd9umeffbbBWlUff/xx3HfffTF48OAmP7lcFd/+2XzXQw89FJMmTYqhQ4dmZQzINz2qeHvUf/zHf0RExJgxY+qP1dXVxdixY2ONNdZosG4fFCs9qnh71LdeeeWVeOutt1LXJYVipUcVb4/q27dvjB8/vsFrrq2tjdtvvz3at29fH0BCMdOjirdHNeXiiy+O6dOnxymnnNJsY/ANM9LzqEOHDnHVVVfFT3/609hmm23i4IMPjq5du8a0adPiwQcfjB//+Mdx+eWXR4cOHWLQoEFx0UUXxbJly6Jnz57x2GOPxUcffdTomt+GI2eccUYcfPDBUVFREcOGDYu2bdvGMcccE6NHj45jjjkm+vfvHxMmTIh33313hevt3bt3nH/++XH66afHlClTYr/99ov27dvHRx99FPfcc08cd9xx8atf/Wql3oNRo0b94Dl77bVXXHrppTF06NAYOXJkzJgxI6644oro06dPvP76643O33zzzWPIkCHxs5/9LKqqquqb8znnnPODY91///3x2muvRcQ3Mw5ef/31OP/88yPim1v5tthii4iIGDBgQGy99dbRv3//6NixY7z88svx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AAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDkBBqaioiEMPPTTfZQAAAADUyyRJkuR0wEwml8MBOZLjVtJs9KjCUFlZGUuXLs13GZQQPQooZHoUUMj0KKCQ5bJHmZEOQMEpLy+P1q1b57sMAAAAgIgQpANQgHr37h3rrbdevssAAAAAiAhLuwBZ4nY/oJDpUUAh06OAQqZHAYXM0i4AAAAAAFAgBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAAAAAAJBCkA4AAAAAACkE6QAAAAAAkEKQDgAAAAAAKQTpAAAAAACQQpAOAAAAAAApBOkAFJW+fftGnz598l0GAAAA0IK0yncBALAyPv/883yXAAAAALQwZqQDUFS+/vrr2GOPPaK8vDzfpQAAAAAtRCZJkiSnA2YyuRwOyJEct5Jmo0cVh06dOsXcuXPzXQZFRI8CCpkeBRQyPQooZLnsUWakA1B0amtr49BDD813GQAAAEALkfMZ6QAAAAAAUEzMSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdAAAAAAASCFIBwAAAACAFIJ0AAAAAABIIUgHAAAAAIAUgnQAAAAAAEghSAcAAAAAgBSCdID/vx07EAAAAAAQ5G+9wQSFEQAAAAAMkQ4AAAAAAEOkAwAAAADAEOkAAAAAADBEOgAAAAAADJEOAAAAAABDpAMAAAAAwBDpAAAAAAAwRDoAAAAAAAyRDgAAAAAAQ6QDAAAAAMAQ6QAAAAAAMEQ6AAAAAAAMkQ4AAAAAAEOkAwAAAADAEOkAAAAAADBEOgAAAAAADJEOAAAAAABDpAMAAAAAwBDpAAAAAAAwRDoAAAAAAAyRDgAAAAAAQ6QDAAAAAMAQ6QAAAAAAMEQ6AAAAAAAMkQ4AAAAAAEOkAwAAAADAEOkAAAAAADBEOgAAAAAADJEOAAAAAABDpAMAAAAAwBDpAAAAAAAwRDoAAAAAAAyRDgAAAAAAQ6QDAAAAAMAQ6QAAAAAAMEQ6AAAAAAAMkQ4AAAAAAEOkAwAAAADAEOkAAAAAADBEOgAAAAAADJEOAAAAAABDpAMAAAAAwBDpAAAAAAAwRDoAAAAAAAyRDgAAAAAAQ6QDAAAAAMAQ6QAAAAAAMEQ6AAAAAAAMkQ4AAAAAAEOkAwAAAADAEOkAAAAAADBEOgAAAAAADJEOAAAAAABDpAMAAAAAwBDpAAAAAAAwRDoAAAAAAIwAnorxrXRVVIEAAAAASUVORK5CYII=\n"},"metadata":{}}],"execution_count":31},{"cell_type":"code","source":"dataset[0][1]","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-01T17:12:36.649837Z","iopub.execute_input":"2025-08-01T17:12:36.650294Z","iopub.status.idle":"2025-08-01T17:12:36.725965Z","shell.execute_reply.started":"2025-08-01T17:12:36.650264Z","shell.execute_reply":"2025-08-01T17:12:36.725017Z"}},"outputs":[{"execution_count":132,"output_type":"execute_result","data":{"text/plain":"[(0, 0),\n (388, 0),\n (776, 0),\n (892, 0),\n (0, 388),\n (388, 388),\n (776, 388),\n (892, 388),\n (0, 776),\n (388, 776),\n (776, 776),\n (892, 776),\n (0, 1164),\n (388, 1164),\n (776, 1164),\n (892, 1164),\n (0, 1530),\n (388, 1530),\n (776, 1530),\n (892, 1530)]"},"metadata":{}}],"execution_count":132},{"cell_type":"code","source":"def tiles_to_prediction(x, positions):\n    x = x.detach().numpy()\n    out = x[0]\n    for i in range(1,4):\n        if positions[i][0] >= positions[i-1][0] + 388: \n            out = np.concatenate([out, x[i]], axis=1)\n    print(out.shape)\n            ","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-03T16:26:30.25857Z","iopub.execute_input":"2025-08-03T16:26:30.258853Z","iopub.status.idle":"2025-08-03T16:26:30.263395Z","shell.execute_reply.started":"2025-08-03T16:26:30.258834Z","shell.execute_reply":"2025-08-03T16:26:30.262488Z"}},"outputs":[],"execution_count":13},{"cell_type":"code","source":"tiles_to_prediction(x, dataset[0][1])","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-01T17:34:42.156447Z","iopub.execute_input":"2025-08-01T17:34:42.156756Z","iopub.status.idle":"2025-08-01T17:34:42.220806Z","shell.execute_reply.started":"2025-08-01T17:34:42.156733Z","shell.execute_reply":"2025-08-01T17:34:42.219956Z"}},"outputs":[{"name":"stdout","text":"(2, 1164, 388)\n","output_type":"stream"}],"execution_count":168},{"cell_type":"code","source":"print_feature_map(dataset[0][2])","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-08-03T15:47:34.002214Z","iopub.execute_input":"2025-08-03T15:47:34.002571Z","iopub.status.idle":"2025-08-03T15:47:36.53157Z","shell.execute_reply.started":"2025-08-03T15:47:34.002544Z","shell.execute_reply":"2025-08-03T15:47:36.530429Z"}},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 1500x1500 with 25 Axes>","image/png":"iVBORw0KGgoAAAANSUhEUgAABdIAAAXDCAYAAADUfMyZAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3RU5fr+/2tm0islgQACCRhAijRBpClIbwISmiCgoigH1K/l2AH7x4KiAnosoBQbRZQiCESKiAdsiIjSIiA9UiJJTEie3x/8MocxyZBAMntm8n6tlbXILrPvvWfmZs81O8+2GWOMAAAAAAAAAABAgexWFwAAAAAAAAAAgDcjSAcAAAAAAAAAwA2CdAAAAAAAAAAA3CBIBwAAAAAAAADADYJ0AAAAAAAAAADcIEgHAAAAAAAAAMANgnQAAAAAAAAAANwgSAcAAAAAAAAAwA2CdAAAAAAAAAAA3CBIBwDAC8XHx8tms+X7iYiIUOPGjfXggw8qNTW1wHVHjhwpm82mmTNnerZoL5Odna0ZM2aob9++qlGjhkJDQxUWFqZatWppwIABmjNnjrKysqwu06fMnDlTNptNI0eOtLqUEpP3fjnfPk2cOFE2m03XXHONR+qC9f7++2899NBDSkxMVHBwsGw2m+Lj48+73pdffllg//7nz4kTJ0p9H/xdSkqKyzFduHCh2+V79uzpXLZTp04eqhIAAPiLAKsLAAAAhWvTpo0uvfRSSVJubq4OHDigDRs26Nlnn9V7772ndevWqVatWhZX6X2+++47DRgwQHv27JHNZlPjxo3VsmVL2e12paSk6JNPPtH8+fP18MMPa9u2bQoLC7O6ZKBIrrnmGq1Zs0bJycmE+qXs0Ucf1fPPP6/KlSvruuuuU1hYmGJiYor1GCNGjCh0XlBQ0MWWWGwTJ07UpEmTNGHCBE2cONHj2y9t77zzjvr161fgvD/++EPLly/3cEUAAMCfEKQDAODFbrnllnxXyh46dEhXX321fvvtN91///2aN2+ey/xnnnlGDzzwgKpUqeLBSr3Hd999p3bt2ik9PV29evXSK6+8ooSEBJdljh49qpdeekkvvviisrKyCNKLqF+/fmrVqpWio6OtLgUodR999JEkad26dUpMTLygxyjrfxnkKQ6HQ40aNdLnn3+uQ4cOKS4uLt8y7777rnJyctSiRQtt2rTJgioBAICvY2gXAAB8TFxcnO677z5J0qpVq/LNr1KliurVq1cmw87s7GwlJSUpPT1dffv21aJFi/KF6JIUGxurp59+WuvXr1dwcLAFlfqm6Oho1atXr8x+SYOyZe/evZJ0wSE6POumm27SmTNn9O677xY4f8aMGQoJCdHQoUM9XBkAAPAXBOkAAPigvKvtzpw5k29eYWOk543xPHHiRB09elRjx45V9erVFRQUpOrVq2vcuHEFjtmbnZ2t2bNn64YbblC9evUUFRWl0NBQ1a1bV+PHj9eBAwcKrPGaa66RzWbTl19+qXXr1ql3796KjY2V3W7XzJkzNWLECNlsNj3zzDOF7udHH30km82mli1bFum4zJ07V7t371ZQUJCmT58uu939qU6LFi0UGhrqMi09PV3PPvusmjVrpsjISIWFhalBgwZ65JFHdPz48XyPkTdGb3x8vHJzc/XKK6/o8ssvV1hYmKpUqaIxY8bozz//lHR2zOUnnnhC9erVU2hoqKpWrao777xTp0+fzve45z5fv//+u2688UZVqVJFISEhqlOnjiZOnKiMjIx865XW8yW5HyN95cqV6t27typXrqzAwECVL19eiYmJGjZsmNauXZtv+TNnzuj1119X69atFR0drZCQECUmJmr8+PH6448/Cqwxb2xjSZo/f77atm2rqKgohYeHq02bNlq6dGmB63nC8ePHNWHCBDVp0sT5umnUqJGefPJJpaen51s+LS1Nb775pvr376/ExESFh4crPDxcjRo10sMPP5zvvZg37vaaNWskSR06dHAZGzrvOSqt12Nx682Td7+HlJQULVy40PmcRUZG6pprrin0OTt58qQeeeQRNWrUSOHh4QoODlbVqlXVpk0bPfbYY8rOzi7iM3PW/v37NW7cOCUmJiokJETR0dFq06aN3njjDeXk5BRYszFGkgo8ziXtzJkzeuutt3TNNdeoQoUKCg4OVkJCgm6//Xbt27evwHUWLFigW265RQ0bNlT58uUVEhKihIQE3XTTTfr111/zLW+z2TRp0iRJ0qRJk1z269z39Lnvs4Kc2ysKm15YD5GkjIwMvfjii2rVqpXKlSunkJAQ1a1bV/fff3+h9/4oihtuuEHBwcGaMWNGvnlr1qzRzp071a9fP5UrV67Qx1i5cqXGjRunJk2aKCYmRsHBwbrkkks0aNCgQq9iv9BeLUkff/yxOnXqpIoVKyowMFAVK1ZU/fr1NXr0aG3ZsuWCjgMAAChFBgAAeJ2aNWsaSWbGjBkFzn/00UeNJHPllVfmmzdixIgC150wYYKRZG666SZzySWXmMqVK5v+/fubHj16mOjoaCPJtGjRwmRlZbmst2/fPiPJREdHm1atWpmkpCTTo0cPU7VqVSPJxMbGmh07duSr4+qrrzaSzB133GHsdrupX7++GTx4sOnSpYuZO3eu+fbbb40kU6NGDXPmzJkC97N9+/ZGknn33XeLdNz69etnJJnevXsXafl/Sk1NNU2aNDGSTFRUlOnTp4+5/vrrTUxMjJFkEhISzJ49e1zW2bNnj5FkatasaYYMGWJCQ0NNt27dTN++fU2lSpWMJNO0aVPz119/mbZt2zoft1evXs7j3r1793y15D1fN954o6lYsaKpXLmySUpKMr169TLh4eFGkmnTpo3JyMhwWa+0ni9jjJkxY4aRZEaMGOGy7syZM43NZjM2m81ceeWVZtCgQaZPnz6mWbNmxuFwmDvvvNNl+czMTNOpUycjyYSEhJju3bubQYMGmerVqxtJJiYmxnz77bf5apRkJJnHHnvM2Gw206ZNGzNo0CDTuHFjI8nYbDazYMGCIjzT/5P3fvnnPv1T3vNx9dVX55v3888/O2uvUqWK6datm+ndu7epXLmykWSaNGliTpw44bLOunXrnM9H27ZtzaBBg0yXLl1MxYoVjSRz6aWXmmPHjjmX/+WXX8yIESOcj9m1a1czYsQI58+6deuMMaX3eixuvXnyetndd99tJJkrrrjCDBkyxLRs2dL5fL7yyisu65w+fdo0bNjQub3evXubwYMHm2uuucbExcUZSeb48eNun69z/fe//zUVKlRw9ptBgwaZbt26mZCQEOex/Pvvv53L33PPPc7XRd5r45/H2Z3k5GTnukVx6tQpc8011xhJJiIiwlx99dVmwIABpm7dukaSqVixovnuu+/yredwOExYWJi54oorTP/+/U2fPn1MrVq1jCQTHh5uvvrqK5flR4wY4XyvNG7c2GW/3nzzTedy56s9r1ckJycXON1dD/njjz9Mo0aNjCRToUIF06lTJ9OvXz/n6yQ+Pt6kpKQU6bgZ87/Xu8PhMMYYM3DgQCPJrF+/3mW54cOHG0nmiy++cPaxa6+9Nt/j1a5d2wQFBZmmTZuaPn36mP79+5v69esbSSYgIMDMmzcv3zoX2qsnTZrkfNz27dubIUOGmB49epiGDRsam81mXnrppSIfBwAA4BkE6QAAeKGCgvScnByzf/9+8+qrr5rg4GDjcDjMZ599lm/d8wXpkszIkSNNZmamc97evXtNtWrVjCRn4JHn1KlTZtGiRS5BkzHGZGVlmQcffNBIMj169MhXR16oIslMnTq1wP1s06aNkVRg+PnTTz85g7Rza3UnL8x8/PHHi7T8Pw0aNMj5BcW5oWBaWprp3r27kWRat27tsk5ekCPJ1K5d2yUEOnbsmElMTDSSTKNGjUzLli1dHnf37t2mfPnyBQY/5z5f1113nUlPT3fO27dvn6lTp46RZB544AGX9Urz+SosSE9ISDCSCgwZDx8+nC8E/Pe//+08Xud+MZGVlWVuvvlm55cW/9yHvPrKlStnNm7c6DIv73jVqVOnwNoLc7FBenp6uqldu7aRZB555BGXmk+fPm2GDBliJJlRo0a5rLdv3z6zcuVKk5OT4zL99OnT5sYbb3QGkv9UWIiZp7Rejxdab14vs9lsZvbs2S7zPvjgA2Oz2UxAQID56aefnNPfffddZ6D/zy/2cnJyzJdffpnvtVGYzMxMZw1jxoxxebxdu3aZ+Ph4I8k89NBD+dYtThh+ruIG6UOHDjWSTK9evczhw4dd5r300ktGkklMTMz3heMHH3xg/vrrL5dpubm5ZurUqUaSadCggcnNzXWZn/c6njBhQqH1XGyQXlgPyc3Ndfb8m2++2Zw6dco5Lzs729xzzz1GkunQoUOh2/6nfwbpy5cvd35hnOfkyZMmLCzMxMfHm9zcXLdB+sKFC82ff/5Z4PSAgABTsWJFl15szIX16szMTBMaGmoiIiLM9u3b820vJSXF/PLLL0U+DgAAwDMI0gEA8EJ5wU9hPy1atMgXdOU5X5B+ySWXmNOnT+db79lnn80XQBRF1apVjd1udwlFjPlfqNKxY8dC1/3oo48KDTRuu+02I8k8+OCDRa4l7wrT119/veg78P/7/fffjd1uNzabzfz444/55u/fv9/5+Ode6XlucLlkyZJ8602ePNkZJJ4bFuYZN26ckWQmTZrkMj3v+QoNDTUHDx7Mt95nn31mpLNXzv/zSkd3Lub5KixIDwsLM9HR0UXafkZGhomIiDCSzKeffppv/unTp51XXc+ZM8dlXmFXMBtzNpjKu6J67969RarFGONy5XFRfv4ZpE+fPt0ZghYkLS3NVKpUyQQEBBQY0BXk9OnTJiAgwMTGxuabV5wgvSRfjxdab14v69u3b4HrXn/99UaSGT16tHPac889ZySZyZMnF7mGwsyaNctIMlWrVi3wC7l58+YZSSYyMjLf+6gkgvTCfvL687Zt24zNZjNVq1bN957M06NHDyOpwC9OC3PVVVcZSebnn392me6JIL2wHrJs2TIjnf0Ljezs7Hzzc3JynH+JUNBrsyD/DNJzcnJMjRo1TEREhPNLhtdff91IMhMnTjTGGLdBujt5X4r98311Ib36yJEjRpK5/PLLi1UDAACwVoAAAIDXatOmjS699FLn78eOHdOWLVu0adMm3X333ZozZ06xb4R37bXXKiwsLN/0yy67TJIKHZ/6xx9/1KpVq7Rnzx6dPn1aubm5ks6O7Zubm6udO3eqadOm+dYbMGBAobX069dP1atX16pVq7R9+3bVq1dP0tnxkWfPni2Hw6Hbb7+9WPt3odauXavc3Fw1a9ZMl19+eb751apVU9euXbVo0SIlJyerdevWLvMDAgLUpUuXfOvlPT81atRQw4YNC51f2NjlXbp0cY6Jf65evXqpYsWKSk1N1XfffZevntJ4vgrTsmVLffnll7rxxht15513qmnTpoWOT79582b99ddfqlChgnr37p1vflhYmAYPHqwpU6YoOTm5wBsDFrRecHCwatWqpe+//15//PGHqlevXqx9qF27ttq2bVvo/B9++EE//vhjvulLliyRJA0aNKjA9SIiInTFFVdo6dKl2rRpU77XyIYNG7Ru3Trt3btX6enpznG5g4KCdPToUR0/flzly5cv1r5Ipfd6vNB6R4wYUeDjjRgxQvPnz3cZb7tFixaSpOeee04VK1ZUr169VKFCBTd7W7i8xx08eHCBNxbu37+/ypcvr+PHj+vbb79VmzZtLmg7hSlsv/P6+tKlS2WMUffu3RUZGVngsnljyW/YsEG9evVymbdz5059/vnn2rlzp9LS0pzjvR8+fFiS9Ouvv6p+/foltTtFUlgPyXuvXH/99QoIyP8x1G63q3379tq6das2bNhQ4OvzfOx2u0aMGKEnnnhCH330kUaNGqV33nlHdru9wHs7FOTAgQNasmSJtm/frpMnTzrvRfLzzz9LOntMe/TokW+94vTq2NhYxcfHa8uWLbrnnnt08803e/x5AgAAxUeQDgCAF7vlllvyffg/c+aMHnvsMT3zzDO6+uqr9euvvxYawBSkRo0aBU6PioqSJGVmZrpMP336tIYPH66FCxe6fdxTp04VOD0+Pr7QdQICAnTHHXfowQcf1GuvvabXXntNkvTuu+/q9OnTzqC9qGJjY7Vv3z4dOXKkyOvkyfsCISEhodBlateu7bLsuapUqVJgOBQRESGp8OOe99z987jncVdPfHy8UlNTtX//fue00ny+CjNt2jT16tVLs2bN0qxZsxQZGakWLVqoY8eOGj58uMu+X+xxlor/Gi6Ktm3bur2R5MSJEwsM0nfv3i1JGj58uIYPH+52G0ePHnX++8iRI7r++uu1fv16t+ucOnXqgoL0kn49Xmy9hT3fedPPfQ1fc801+ve//63nn3/eeVPixMREtWnTRtddd5169+593hsJ5znf681msykhIUHHjx8v9PV2Mc53c9K818/bb7+tt99+2+2y575+cnJy9K9//UtvvPGG88uMghT2Pi9NhfWQvH199NFH9eijj7p9jHP3tbhGjRqlJ598Uu+8845atmyp//73v+rUqZNq1qx53nUnTZqkp556yu3NbAs7psXt1e+9954GDBigyZMna/LkyapQoYKuvPJKde7cWcOHD1dMTMx56wUAAJ5FkA4AgI8JCAjQk08+qTfffFMHDx7Ue++9p7FjxxZ5/aIGUHkefPBBLVy4UPXq1dOzzz6rFi1aKCYmRkFBQZKk1q1b6+uvvy40zAkNDXX7+KNHj9bjjz+u9957T88884wiIiI0bdo0SdK//vWvYtXavHlz7du3T5s2bSrWeiXhfMe1uMe9OM499qX9fBXksssu06+//qoVK1Zo9erVzquWV69erccff1xvv/22hg0bdmE7V4DSPJbFlXelf7du3VS5cmW3y54b5N1yyy1av369rrrqKk2aNEmNGzdW+fLlFRgYKEmqWrWqDh486DYkdaekX4+lXe8/13v22Wc1ZswYffbZZ1q/fr2++uorzZgxQzNmzFCLFi2UnJys8PDwC9qWN8l7/TRp0kSNGzd2u+yVV17p/PeUKVP0+uuvKy4uTpMnT1br1q1VuXJlhYSESJKGDh2q999//4Kfj6LUXJjCekjeem3btnV+WVaYBg0aXFhxOhtoX3PNNUpOTtaDDz4oSbrpppvOu96CBQs0ceJERURE6LXXXlPHjh1VtWpVhYaGymaz6aGHHtIzzzxzUcf03HXbtWunlJQULVmyRGvWrNGGDRu0fPlyLVu2TBMmTNDChQt17bXXXvC2AABAySNIBwDAB9ntdsXHx+vYsWP65ZdfSnVbH330kSTpww8/LHDIkx07dlzU41esWFE33HCD3nrrLb333nuqU6eOcziCjh07FuuxrrvuOn3yySdavny5Dh8+fN5g81zVqlWT9L+rJguSNy9vWU/Ys2dPofNSUlIkSZdccolzWmk/X4UJCAhQjx49nEMenDp1SpMnT9akSZN02223qV+/fgoPD3ceO3f7ZcVxvlDVq1fX9u3bdfPNNxd5WJzTp09r6dKlstvtWrp0qcqVK5dv/qFDh0qh2gtTEvXu2bOnwKC4oNdwnvj4eI0bN07jxo2TJG3atEnDhg3Tpk2b9Nxzz2nSpEnnrb0o7+u816IVr7e8v7hp06aN8y9yiiLvff7GG2+oT58++eZfzPs8MDBQ2dnZSktLK/CvnX7//fcLety8fb3uuut07733XnB9RXHTTTcpOTlZn332mcqXL69+/fqdd528Y/rUU0/p1ltvzTf/fMe0uL1aOvulw4ABA5y94+jRo3rkkUf0n//8RzfddNMFH2sAAFA6vOdyHgAAUGS5ubnOD+Z5QzWUlj///FOSCvyz+OXLl+vYsWMXvY3x48dLkqZOneoMk4pzlX2eG264QfHx8crKytLtt99+3isnv/32W2VkZEiS2rdvL7vdXuhY2AcPHtTnn38uSerQoUOxa7tQK1asKHComqVLlyo1NVWRkZFq3ry5c7onnq+iiIqK0sSJE1WuXDmlp6frt99+kyRdccUVioiI0J9//qlPP/0033oZGRn64IMPJHn2OF+o7t27S/pfCFcUJ0+eVE5OjqKiovKF0pI0e/bsQq96zfvLgrxxmz3hYurNM2vWrAKnv/fee5LODudyPi1atNAdd9wh6eyY9UWR97gffvhhgUP+LFy4UMePH8/3PvKUvNfPp59+Wqwhidy9z3/++edCj09RXj95XygU9CXtli1btG/fviLXea68ff34449L5Ur5c11//fWqWbOmKlasqFGjRjmv1HfH3TE9cuSIvvjiC7frF7dXFyQ2NlbPPfecJGnv3r06fvz4eesGAACeQ5AOAICPOXPmjB555BFnIFrQ1YglKe8mpK+++qrL9F9//VVjxowpkW00atRIHTt21C+//KJPP/1UUVFRuvHGG4v9OIGBgfroo48UEhKihQsXqm/fvgVeJfjnn3/q0UcfVZs2bfT3339LOjtmdFJSkowxuu2225Samupc/vTp07r11luVmZmp1q1b57uxZ2nKyMjQ7bff7gz8pbM3w7vnnnskSWPGjHEJiTzxfJ0rPT1dkydPLnBM43Xr1unEiRNyOBzOKzFDQkKcX5Lcc889LldcZmdn684779ShQ4eUkJBwQTc+9bRbb71VNWvW1Mcff6x///vfSktLy7fMoUOH9Oabbzp/r1y5ssqXL68TJ07kC5g3btzoHI6iIHnHMe/Gh55wMfXmWbhwofMLkjzz5s3T/PnzFRAQ4LzqPG/ZvJv/nis7O9v5ZVZRxruWpKSkJNWoUUMHDhzQ//t//88lQN6zZ4/zfTRu3Lgiha0lrWnTprr++uu1b98+9e/f3/kF6blOnz6tOXPmOG8gKv3vfT516lSX43Tw4EHdeOONhQblRXn9dOrUSdLZ8cLz+qN09qrqESNGXHAIft1116lFixb673//q1GjRhXYM44fP67XX3/9or8oCg0NVUpKio4dO6YXX3yxSOvkHdP//Oc/ysrKck4/efKkRowYoZMnT7pdvzi9+vfff9dbb71V4Hjrn332mSSpfPnyzvs+AAAA78DQLgAAeLG33npLX375pfP31NRU/fjjj84rAh9++OFSD3UnTJigAQMG6NFHH9VHH32kBg0a6MiRI1q3bp3atWunqlWrasOGDRe9nfHjx2v16tWSpBEjRlzwlfYtWrTQ2rVrlZSUpM8++0yLFy9W06ZNVatWLdntdv3+++/avHmzcnJyVKtWLQUHBzvXnTp1qrZv365vvvlGtWvXVocOHRQQEKA1a9bo6NGjSkhI0Jw5cy56X4vjxhtv1OLFi1WrVi21a9dOmZmZWr16tU6fPu0cr/pcnnq+8mRlZemee+7Rfffdp0aNGikxMVGBgYFKSUnRxo0bJZ19ncbGxjrXmTRpkjZv3qxVq1bpsssuU4cOHRQZGamvv/5ae/fuVcWKFfXxxx87r571ZuHh4VqyZIl69eql5557Tv/5z390+eWX65JLLnFeif/LL7+oUqVKGj16tCTJ4XDoscce0913360bb7xRU6dOVa1atbR3715t2LBBw4YN09q1awsc1uH666/XjBkzdP/992vlypWqVKmSbDabbrrpplLrBRdTb54777xTQ4YM0eTJk5WYmKhdu3bpm2++kSS98MILLsMQrVmzRlOmTFFMTIyaNm2qSpUqKS0tTRs3btSRI0dUrVo13X///UWqPTg4WPPmzVO3bt00ffp0LV26VK1atVJaWppWr16tzMxMde3aVRMmTLi4g3QRZsyYoRMnTmjZsmWqW7euGjdurISEBBljlJKSoh9//FFZWVn65ZdfnMNVPfTQQ/r888/15ptvKjk5Wc2aNdOpU6e0Zs0a1apVS/369SvwhsNdu3ZVeHi4PvnkE7Vt21aJiYlyOBxq06aNRo0a5XzsefPmaenSpapTp45atGiho0ePatOmTWrTpo1at259QT3Ebrfrk08+Uc+ePfXuu+9q3rx5aty4sWrUqKGsrCzt3r1bP/30k3JycjRy5MgCb5Zbmu666y699957Wrp0qWrVqqVWrVopOztba9asUVhYmG666Sa98847ha5fnF59/PhxjR49WnfccYeaNGnivFHpjh079P3338tms+n555+Xw+Eo9f0GAABFxxXpAAB4sa+++krvvvuu82fFihWy2+0aNGiQkpOT9eSTT5Z6Df3799eaNWt07bXX6uDBg/r000915MgRTZw4UcuWLXPebPBiXXvttXI4HLLZbBc0rMu5WrRood9++01vvfWWevXqpcOHD+uzzz5z1t6vXz+9//772r59u8uN8SpWrKgNGzbomWeeUUJCglasWKHFixcrJiZGDz30kL799lvFx8df5J4WT0JCgjZv3qwOHTpo7dq1Wr58uapUqaLHHntMK1euzHdjP089X3kiIiL0+uuva9CgQfr777/1xRdf6JNPPtGRI0fUv39/rVq1Kl/YHxwcrM8//1zTpk1T48aNtW7dOi1cuFCBgYEaN26cfvzxR0uG2bhQDRo00JYtW/Tcc8/psssu05YtW/Txxx/rm2++UXh4uO699958oeZdd92lTz75RK1bt9avv/6qzz77TH///bemTp2qd999t9Bt9ezZU2+++aYaNmyo1atX65133tHbb7/tHDqntFxovXnuvPNOffTRRwoICNCnn36qrVu3ql27dvrss8909913uyw7cuRIPfDAA6pXr562bdumjz/+WF9//bWqV6+up59+Wj/++GOB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fFLg8l9//bXLWFX79u3TokWL1KVLlwK/uczTsWNHVahQQdOnT3eZPn36dIWFhalnz55F3DPAP9CjvKtHAXBFj/K+HvX888/rhRde0EMPPaQ777yzWPsD+Bt6lHf1qGPHjuXbL0l66623JKnAoS8Af0aP8q4etXDhwnw/gwYNkiS99957eumll4q1f7h4XJHuhaKiojR9+nQNHz5czZo10+DBgxUbG6u9e/dqyZIlatOmjV577TVFRUWpffv2eu6555Sdna1q1appxYoV2rNnT77HzLupwcMPP6zBgwcrMDBQvXv3Vnh4uG655RY9++yzuuWWW3TFFVdo7dq1+u2334pcb+3atfXkk0/qwQcfVEpKivr27avIyEjt2bNHCxcu1K233qp77723WMdgxIgR512mZ8+emjx5srp166ahQ4fqyJEjmjp1qi699FJt2bIl3/INGzZU165dNX78eAUHBzub86RJk9xuJzQ0VE888YTGjh2rpKQkde3aVevWrdPs2bP11FNPqUKFCsXaN8DX0aO8q0dJ0meffaYff/xRkpSdna0tW7boySeflCT16dNHl19+eXF2D/Bp9Cjv6lELFy7U/fffr8TERF122WWaPXu2y/zOnTs7xyUGygJ6lHf1qNmzZ+v1119X3759VatWLaWlpWn58uX64osv1Lt3b4ahQplDj/KuHtW3b9980/KuQO/evbtiYmLOv0MoWQYeN2PGDCPJbNq0ye1yycnJpmvXriY6OtqEhISY2rVrm5EjR5rNmzc7l9m/f7/p16+fKVeunImOjjZJSUnmwIEDRpKZMGGCy+M98cQTplq1asZutxtJZs+ePcYYY9LT083NN99soqOjTWRkpBk4cKA5cuRIvseYMGGCkWSOHj1aYL3z5883bdu2NeHh4SY8PNzUq1fPjB071vz6668lcjxq1qxpevbs6TLt7bffNomJiSY4ONjUq1fPzJgxw1nnuSSZsWPHmtmzZzuXb9q0qUlOTna7zXP95z//MXXr1jVBQUGmdu3a5qWXXjK5ublFXh/wFfSoCzseVvaoESNGGEkF/syYMaNIjwH4CnrUhR0Pq3pU3uMV9lOcczHAF9CjLux4WNWjNm3aZJKSkkyNGjVMcHCwCQ8PN82aNTOTJ0822dnZ510f8DX0qAs7HlbnUec637FA6bIZU8DfMQF+xmazaezYsXrt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duwYo0ePjiOPPDLtUdqMFStWRJ8+fWLs2LFpjxIR2XkBKKMgm2QUUMiyklFA9lRUVESXLl3ytj9FeispKSmJD3/4w/GNb3wjjj/++PjCF77g/LxQBNpKRrVFn/rUp+L555+PXXbZJe1RMq+uri769OkTDz30UNqjNMjKC0AZBdkko4BClpWMAthemt0W1q1btzj00EPj8ssvj89+9rOx5557pj0SABExffr0+M1vfhM33XSTU7y0ovr6+rjnnnti5MiRaY8CAAAALcYR6S2gtLQ0PvrRj8Zpp50W3//+92OvvfaKbt26pT0WsA2ymFH8fz179oyHH344vvzlL6c9SmZNmjQpjjrqqCgvL097lEayciSVjIJsklFAIctKRgFsL0X6dujWrVuceeaZcc4558TRRx8d3bp1c/FQKHJZyiiad8ghh8TYsWOje/fuaY+SOfPmzYtzzjknJk2alPYoTWTlBaCMgmySUUAhy0pGAWwvRfpWKCkpiS5dukTv3r3jhBNOiOOOOy4+9alPFfXXBDTm57lt+PGPfxx/+MMf/P9uQTU1NfHjH/847rrrrrRHaVZWXgD6noVsklFAIctKRgFsL0X6B+jZs2f07NkzTj311Nhnn33i7LPPjo9+9KOxww47pD0a0AqKLaPYNj179ow///nP0adPH//PW0BNTU1cd911cf3110dtbW3a4zQrKy8Afb9CNskooJBlJaMAtpci/f/stddesdtuuzV8/JWvfCX222+/+OQnPxkHHnhgdOnSxWlboA0o1Iyi5fXs2TMeeeSROOqoo9Iepej1798/fvrTnxZsiR6RnReAMgqySUYBhSwrGQWwvfJepE+YMCEWLlwYDz30UEybNi1mz54dVVVVW/UYHTt2zFlqd+nSJb785S9HaWlpk9t69eoV5513XpPP/9jHPhZ77LFHw8cWgdA2+dlvW4488sgYOnRo7L777mmPUrReffXV6NOnTyxYsCDtUXLKygtAGQXZJKOAQpaVjALYXnkv0t9vzZo1MWPGjLj11lvjhRdeaNh+8MEHxyGHHLLZzzvllFPiIx/5yGZvb9++fXz0ox+1kAO2mtxoe4466qgYPHhwfPjDH057lKLz2muvRZ8+fWL+/Plpj/KBsvICUEZBNskooJBlJaMAtleqRfp7ampqYtOmTQ0fd+zYMTp27JjiREBb5QVg23TU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ZFRjWcion//857FmzZro06dPHHDAATF37ty4/fbb4/HHH4/XX389dt999zxODdtHRjWWhYyaNWtWtGvXLr73ve/F7rvvHmvXro1BgwZF7969Y8SIEXHSSSflcWrYPjKqsSxk1Pu99tpr8fe//z06derUytPxHkV6Hpx88snx2c9+Nu0xtsvGjRuja9euLfJYp5xySgwdOjT++Mc/Rvv2//9bcPDgwXHYYYfFqlWrWmQ/2+L5559v+O1ft27dNnu/YcOGxYQJE2Lo0KFxzjnnRERE375948ADD4yrr746Bg8enK+RYbvJqMaykFGHHXZYrF69OnbeeecYNmxY9OnTJ49TQsuSUY1lIaNuueWWOPLII6Ndu///5tiTTjopjjrqqLj99tvjuuuuy8e40CJkVGNZyKhLLrkkLrnkkkbbfvCDH8S+++4bt956qyKdoiKjGstCRr0nSZL40Y9+FBdddFGMGTMmDxMS4dQuBWHkyJHxpS99Kbp27Rrdu3ePU089Nd56661G95kyZUpcfPHFse+++za8veyb3/xmrF69uuE+v/rVr+JnP/tZRETss88+DW9bmT9/fsyfPz9KSkri73//e5P9l5SUxK9+9atGj1NSUhLTpk2Lfv36xU477dTot3WDBg2Kww47LDp37hw777xznHfeebFo0aIt/nrPP//8WL16dYwaNaphW3V1dQwbNiz69evX7OfcfPPN8YUvfCF22WWX6Ny5cxx22GExbNiwZr+Wyy67LO699974t3/7t+jUqVMcdthhMXbs2C2abe+9946SkpIPvN+wYcPiQx/6UHz1q19t2NarV6/o27dvPPLII1FVVbVF+4NiIKOKL6O6d+8eO++88xY9JhQ7GVV8GdW7d+9GJfp723beeeeYPn36Fu0LioWMKr6Mak6XLl2iV69eBXnKCtgeMqp4M2rgwIExderU+M1vfrPFn8P2U6Tnwfr162PVqlWN/rxn4MCBceqpp0a3bt3ixhtvjP/5n/+JadOmxZFHHhnz589vuN+oUaNi7ty58Y1vfCNuu+22OO+882LIkCFxyimnRJIkERHx1a9+Nc4///yIiPjDH/4QAwcOjIEDB0avXr22ae4+ffpERUVFXH/99fHtb387IiJ+85vfxEUXXRQHHHBA3HLLLXH55ZfHmDFjonfv3lu8qPjYxz4WRxxxRNx3330N20aOHBnr16+P8847r9nP6d+/f3zmM5+Ja6+9Nq6//vpo37599OnTJ0aMGNHkvs8//3xcfvnlccEFF8S1114bq1evjpNOOimmTp269U/CZkyePDkOPfTQJi8CP/e5z0VFRUXMmjWrxfYFrU1GNZaFjIIskVGNZTWjysvLo7y8PHbddddW3Q+0NBnVWJYyasOGDbFq1aqYMWNG/OIXv4ipU6fGscce2+L7gdYkoxrLSkaVlZXFz3/+8/jFL37hlHj5ltBqBgwYkEREs3+SJEnKysqSHXfcMfn2t7/d6POWLVuW9OzZs9H2ioqKJo9/3333JRGRjB07tmHbTTfdlEREMm/evEb3nTdvXhIRyYABA5o8TkQkV199dcPHV199dRIRyfnnn9/ofvPnz09KS0uT3/zmN422v/nmm0n79u2bbN/c8/Hqq68mt99+e9K9e/eGr6tPnz7J0UcfnSRJkuy9997Jqaee2uhz//Xrr66uTg466KDkmGOOafK1RETy2muvNWxbsGBB0qlTp+Sss87KOd+/6tq1a/L1r399s7d985vfbLJ9xIgRSUQkTz755FbtC9Igo5p/PrKQUe83dOjQJCKSZ599dqseH9Imo5p/PrKWUe/59a9/nUREMmbMmK3aD6RFRjX/fGQpo0488cSGfe6www7Jd7/73WTTpk1btR9Ii4xq/vnISkb99Kc/TfbZZ5+ksrJys3PTOhyRngd33HFHjBo1qtGfiHd/q7du3bo4//zzG/12sLS0NA4//PB49tlnGx6jc+fODX+vrKyMVatWxec///mIiJg0aVKrzP29732v0ccPPvhg1NfXR9++fRvNu/vuu8cBBxzQaN4P0rdv39i0aVM8/vjjUVZWFo8//vhm30YT0fjrX7t2baxfvz6+9KUvNfu1H3HEEXHYYYc1fLzXXnvFGWecEU899VTU1dVt8Yy5bNq0qdmLULx3gYdNmza1yH4gH2RUU8WeUZAlMqqprGXU2LFj45prrom+ffvGMccc0yr7gNYio5rKSkbdcMMN8fTTT8df//rX+PznPx/V1dVRW1vbovuA1iajmir2jJo1a1b0798/brrpplQvjtpWudhoHnzuc59r9uIOs2fPjojY7AuGHj16NPx9zZo1cc0118SQIUNixYoVje63fv36Fpz2//vXKzvPnj07kiSJAw44oNn7d+jQYYsfu1evXnHcccfF4MGDo6KiIurq6hou2tmcxx9/PK677rp4/fXXG51/vLnzRzU334EHHhgVFRWxcuXKFnnbS+fOnZs9D3plZWXD7VAsZFRTxZ5RkCUyqqksZdSMGTPirLPOioMOOijuueeeFn1syAcZ1VRWMuqQQw5p+PsFF1wQhx56aFx88cXNnhsZCpWMaqrYM+rHP/5xfOELX4izzz57ux+LradIT1F9fX1EvHtequZ+mN5/BeG+ffvGhAkT4mc/+1kccsgh0a1bt6ivr4+TTjqp4XFy2dwFC3L9Ruxfy+D6+vooKSmJkSNHRmlpaZP7b8lVhd+vX79+8e1vfzuWLVsWJ598cuy4447N3m/cuHFx+umnR+/evePOO++MPfbYIzp06BADBgyIwYMHb9U+W8oee+wRS5cubbL9vW0f/vCH8z0StDgZVbwZBW2BjCr+jFq0aFGccMIJ0bNnz3jiiSeie/fuqc4DLUlGFX9Gvd8OO+wQp59+etxwww2xadMmB05R9GRUcWbUM888E08++WQ8+OCDjc5jX1tbG5s2bYr58+fHzjvv3OgXIbQsRXqK9ttvv4iI2G233eK4447b7P3Wrl0bY8aMiWuuuSb+93//t2H7e79BfL/NBdROO+0UEdHkAgwLFizYqnmTJIl99tknDjzwwC3+vM0566yz4rvf/W689NJLcf/992/2fsOHD49OnTrFU0891ehtKwMGDGj2/s09L7NmzWq40npLOOSQQ2LcuHFRX1/f6IKjL7/8cnTp0qVFnh9Im4wq3oyCtkBGFXdGrV69Ok444YSoqqqKMWPGxB577NFijw2FQEYVd0Y1Z9OmTZEkSZSVlSnSKXoyqjgzauHChRHx7sVd/9U777wT++yzT/zhD3+Iyy+/fLv3RfOcIz1FJ554YvTo0SOuv/76qKmpaXL7ypUrIyIaftuW/N/VkN9z6623Nvmcrl27RkTTgOrRo0fsuuuuMXbs2Ebb77zzzi2e96tf/WqUlpbGNddc02SWJEli9erVW/xYEe/+xvCuu+6KX/3qV3Haaadt9n6lpaVRUlLS6LeV8+fPj4cffrjZ+7/44ouNzlW1aNGieOSRR+KEE05o9jeX2+Kcc86J5cuXx4MPPtiwbdWqVTF06NA47bTTnKeKTJBRxZtR0BbIqOLNqI0bN8Ypp5wS77zzTjzxxBObfZs2FDMZVbwZ9a+nroh49zkfPnx47LnnnrHbbru1yH4gTTKqODPqmGOOiYceeqjJn169esVnP/vZeOihh3J+PWw/R6SnqEePHnHXXXfFhRdeGIceemicd9550atXr1i4cGGMGDEivvjFL8btt98ePXr0iN69e8fvfve7qKmpiY985CPx9NNPx7x585o85nsXNfjlL38Z5513XnTo0CFOO+206Nq1a1xyySVxww03xCWXXBKf/exnY+zYsTFr1qwtnne//faL6667Lq666qqYP39+nHnmmdG9e/eYN29ePPTQQ/Gd73wnfvrTn27Vc/D1r3/9A+9z6qmnxi233BInnXRS9OvXL1asWBF33HFH7L///jFlypQm9z/ooIPixBNPjB/96EfRsWPHhnC+5pprPnBfjz32WLzxxhsREVFTUxNTpkyJ6667LiIiTj/99Pj3f//3iHi3SP/85z8f3/jGN2LatGmx6667xp133hl1dXVbtB8oBjKqeDMqIhq2v/XWWxHx7ts2x48fHxER//3f//2B+4JCJ6OKN6O+9rWvxSuvvBLf/OY3Y/r06TF9+vSGx+jWrVuceeaZH7gvKHQyqngz6uSTT46PfvSjcfjhh8duu+0WCxcujAEDBsSSJUtyHrkKxURGFWdG7bXXXrHXXns1+dzLL788PvShD1lD5UNCqxkwYEASEcmrr76a837PPvtscuKJJyY9e/ZMOnXqlOy3337JxRdfnLz22msN91m8eHFy1llnJTvuuGPSs2fPpE+fPsmSJUuSiEiuvvrqRo/361//OvnIRz6StGvXLomIZN68eUmSJElFRUXyrW99K+nZs2fSvXv3pG/fvsmKFSuaPMbVV1+dRESycuXKZucdPnx4cuSRRyZdu3ZNunbtmnz84x9PLr300mTmzJkt8nzsvffeyamnntpo21//+tfkgAMOSDp27Jh8/OMfTwYMGNAw5/tFRHLppZcmgwYNarj/Zz7zmeTZZ5/Nuc/3fP3rX08iotk/AwYMaHTfNWvWJN/61reSXXbZJenSpUty1FFHfeDXBoVERm3b81EsGbW5+/mnn2Iho7bt+SiGjNp77703e7+99957i/YFaZNR2/Z8FENG3X777cmRRx6Z7Lrrrkn79u2TXr16JaeddloyduzYLdoPFAIZtW3PRzFk1JbOTesoSZJ/eU8EFLGSkpK49NJL4/bbb097FIAmZBRQ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+OCDG51vHNq6rCx3SkpK0h4BaAUyCihkWckooLhVVVXFLbfcEn/84x9j2bJlDdvzmVHt8rYnAPLi2WefzXlqFgAAAIBi0rFjx7jqqqti0KBB8aEPfSiVGRTpABmSJEk88MADqb7VCQAAAKA1HHvssXHZZZel8k44RTpAhkyaNGmLzoMOAAAAUIzOOOOMaNcu/7W2Ih0gQ/785z83ucgoAAAAQFbssccesf/+++d9v4p0gIxYuXJlPPPMM2mPAQAAANBqdt1119hrr73yvl9FOkAG1NbWxq9//euYO3du2qMAAAAAZI4iHSADJk+eHP/4xz9cZBQAAACgFSjSAYpckiTRv3//2LBhQ9qjAAAAAGSSIh2gyA0dOjQefvjhtMcAAAAAaHXr1q2LpUuX5n2/inSAIrZu3br47W9/Gxs3bkx7FAAAAIBWt2jRopg+fXre96tIByhSdXV18Ze//CXefPPNtEcBAAAAyIvRo0enco04RTpAkXrkkUfiv//7v6Ouri7tUQAAAABaXXl5eYwaNSqSJMn7vhXpAEVo6tSp8ctf/jKqq6vTHgUAAAAgL/785z/HU089lcq+S5I06nsAtllVVVWcddZZMXLkyLRHgaKRleVOSUlJ2iMArUBGAYUsKxkFFL8nn3wyLrzwwli1alXDtnxmlCPSAYpITU1NXHXVVan99hUAAAAgn8rKyuLyyy+Pfv36NSrR8619ansGYKuNGzcu/vKXv6RyUQ0AAACAfCgvL4+NGzfGiBEj4o9//GO8+eabqXchinSAIjF27Ni44IILory8PO1RAAAAALbIunXronv37lFaWtrs7QsWLIgNGzbE+vXr4/7774/a2tqYOnVqvPXWW7Fhw4aoq6vL88TNc450gCIwf/78+OIXvxhLlixJexQoSllZ7jj/MGSTjAIKWVYyCkhHfX193HjjjfH9738/dtxxx5g/f36MGzcu7r333oYjzN98881YuXJlRMRWl+b5zChHpAMUuPXr18fPf/5zJToAAABQVN5+++2455574vDDD49dd901rr322hg+fHjaY20TRTpAAduwYUN85zvfiaFDh6Y9CgAAAMBWueuuu2Lu3LlxxhlnRLt27WLDhg1pj7TNnNoFoECVlZXFt771LSU6tICsLHecNgGySUYBhSwrGQXk39tvvx1HHHFErFq1qtX2kc+Mape3PQGw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/nmcGraPjGosCxn1+OOPxxlnnBGHHnpo3HDDDbFhw4bo379/HHnkkTF58uTo1atXHqduexTpeXDyySfHZz/72bTH2C4bN26Mrl27tshjnXLKKTF06ND44x//GO3b//9vwcGDB8dhhx0Wq1atapH9bIvnn3++4bd/3bp1+8D7Z+H/LWTh+1hGNTZ//vy49NJL44c//KEXexQ9GdVYFjLq+OOPb7Jt0KBBERHxta99rdXmg9YgoxrLQkb96U9/ioiIsWPHxs477xwREd/97nfjqKOOir///e/WVhQVGdVYFjLq5z//eey7777xwgsvxA477BAREaeddlpDsf773/8+XyO3SU7tUgBGjhwZX/rSl6Jr167RvXv3OPXUU+Ott95qdJ8pU6bExRdfHPvuu2906tQpdt999/jmN78Zq1evbrjPr371q/jZz34WERH77LNPw9tW5s+fH/Pnz4+SkpL4+9//3mT/JSUl8atf/arR45SUlMS0adOiX79+sdNOOzX6bd2gQYPisMMOi86dO8fOO+8c55133lYd4Xj++efH6tWrY9SoUQ3bqqurY9iwYdGvX79mP+fmm2+OL3zhC7HLLrtE586d47DDDothw4Y1+7Vcdtllce+998a//du/RadOneKwww6LsWPHbtFse++9d5SUlGzx1xIRUVZW5i1+ZJqMKr6Muvvuu6Ouri6uvfbaiIgoLy+PJEm2aB9QbGRU8WVUcwYPHhxdu3aNM844Y5s+HwqVjCq+jNqwYUN06tSpyRG1e+yxR3Tu3HmL9gXFQkYVV0atWbMmpk2bFmeddVZDiR4RcfDBB8cnPvGJGDJkyBbti22nSM+D9evXx6pVqxr9ec/AgQPj1FNPjW7dusWNN94Y//M//xPTpk2LI488stH5jUaNGhVz586Nb3zjG3HbbbfFeeedF0OGDIlTTjmloRz56le/Gueff35ERPzhD3+IgQMHxsCBA7f5bR19+vSJioqKuP766+Pb3/52RET85je/iYsuuigOOOCAuOWWW+Lyyy+PMWPGRO/evbf4PFgf+9jH4ogjjoj77ruvYdvIkSNj/fr1cd555zX7Of3794/PfOYzce2118b1118f7du3jz59+sSIESOa3Pf555+Pyy+/PC644IK49tprY/Xq1XHSSSfF1KlTt/5J+ABHH3109OjRI7p06RKnn356zJ49u8X3Aa1NRjWWhYwaPXp0fPzjH48nnngiPvrRj0b37t1jl112if/5n/+J+vr6FtsP5IOMaiwLGfWvVq5cGaNGjYozzzyzxY44g3yRUY1lIaO+/OUvx4YNG+K73/1uTJ8+PRYsWBB33313PPjgg3HVVVe12H4gH2RUY8WeUVVVVRERzf5Sr0uXLrFkyRLX7WttCa1mwIABSUQ0+ydJkqSsrCzZcccdk29/+9uNPm/ZsmVJz549G22vqKho8vj33XdfEhHJ2LFjG7bddNNNSUQk8+bNa3TfefPmJRGRDBgwoMnjRERy9dVXN3x89dVXJxGRnH/++Y3uN3/+/KS0tDT5zW9+02j7m2++mbRv377J9s09H6+++mpy++23J927d2/4uvr06ZMcffTRSZIkyd57752ceuqpjT73X7/+6urq5KCDDkqOOeaYJl9LRCSvvfZaw7YFCxYknTp1Ss4666yc8/2rrl27Jl//+tebve3+++9PLr744uQf//hH8tBDDyX//d//nXTp0iXZddddk4ULF27VfiAtMqr55yMLGdWjR49kp512Sjp27Jj8z//8TzJs2LCkX79+SUQkV1555VbtB9Iio5p/PrKQUf/qtttuSyIieeKJJ7ZqH5AmGdX885GFjKqtrU0uu+yypEOHDg37LC0tTe66666t2gekSUY1/3wUe0bV1dUlO+64Y3Lsscc22r5q1aqka9euTfZPy3NEeh7ccccdMWrUqEZ/It79rd66devi/PPPb/TbwdLS0jj88MPj2WefbXiM9/+2qbKyMlatWhWf//znIyJi0qRJrTL39773vUYfP/jgg1FfXx99+/ZtNO/uu+8eBxxwQKN5P0jfvn1j06ZN8fjjj0dZWVk8/vjjm30bTUTjr3/t2rWxfv36+NKXvtTs137EEUfEYYcd1vDxXnvtFWeccUY89dRTLXYKlr59+8aAAQPioosuijPPPDN+/etfx1NPPRWrV6+O3/zmNy2yD8gXGdVUsWdUeXl5rF27Nq655pq49tpr4+yzz4577703TjrppOjfv3+UlZW1yH4gH2RUU8WeUf9q8ODB0atXr2bPnQ6FTkY1VewZVVpaGvvtt1+ceOKJ8Y9//CPuv//+OO200+KHP/xhPPzwwy2yD8gXGdVUMWdUu3bt4rvf/W6MGTMmrrrqqpg9e3ZMnDgx+vbtG9XV1RERsWnTpu3eD5vnYqN58LnPfa7Zizu8dxqQY445ptnP69GjR8Pf16xZE9dcc00MGTIkVqxY0eh+69evb8Fp/79/vbLz7NmzI0mSOOCAA5q9f4cOHbb4sXv16hXHHXdcDB48OCoqKqKuri7OOeeczd7/8ccfj+uuuy5ef/31hreyRESz549qbr4DDzwwKioqYuXKlbH77rtv8Zxb48gjj4zDDz88Ro8e3SqPD61FRjVV7BnVuXPn2LhxY8PbK99z/vnnx5NPPhmTJ0+O3r17b/d+IB9kVFPFnlHvN3fu3HjxxRfjsssua3TRLygWMqqpYs+oG264Ifr37x+zZ89uuOBf37594+ijj45LL700vvKVr8grioaMaqrYM+raa6+NVatWxe9+97u44YYbIiLihBNOiG9961tx991357xQKdtP+qfovfPUDhw4sNkfpvf/49y3b9+YMGFC/OxnP4tDDjkkunXrFvX19XHSSSdt0fluN3fBgly/EfvXcy7V19dHSUlJjBw5MkpLS5vcf2t/WPv16xff/va3Y9myZXHyySc3uZjLe8aNGxenn3569O7dO+68887YY489okOHDjFgwIAYPHjwVu2zte25554xc+bMtMeAFiGjijejPvzhD8fs2bPjQx/6UKPtu+22W0S8eyQFFDsZVbwZ9X7vzfC1r30t5UmgZcmo4s2oO++8M4455pgmX/Ppp58eV1xxRcyfPz/233//VGaDliKjijejdthhh7jnnnviN7/5TcyaNSs+9KEPxYEHHhj9+vWLdu3ayadWpkhP0X777RcR7xYbxx133Gbvt3bt2hgzZkxcc8018b//+78N25u7sOXmAmqnnXaKiGhyAYYFCxZs1bxJksQ+++wTBx544BZ/3uacddZZ8d3vfjdeeumluP/++zd7v+HDh0enTp3iqaeeio4dOzZsHzBgQLP3b+55mTVrVnTp0mWbL3SxpebOndvq+4B8kVHFm1GHHXZYzJ49O955553Yd999G7YvWbIkIkJOkQkyqngz6v0GDx4c++23X8NbxCErZFTxZtTy5cubLfhqamoiIqK2trZF9gNpklHFm1Hv+dCHPtRw4FRdXV0899xzcfjhhzsivZU5R3qKTjzxxOjRo0dcf/31Df8ov9/KlSsjIhp+25b839WQ33Prrbc2+ZyuXbtGRNOA6tGjR+y6664xduzYRtvvvPPOLZ73q1/9apSWlsY111zTZJYkSWL16tVb/FgR7/7G8K677opf/epXcdppp232fqWlpVFSUtJoMTN//vzNnp/uxRdfbHSuqkWLFsUjjzwSJ5xwQrO/udwW7/2/eb8nnngiJk6cGCeddFKL7APSJqOKN6POPffciIj461//2rCtvr4+BgwYEDvvvHOj8/ZBsZJRxZtR75k8eXJMnz4953lJoVjJqOLNqAMPPDBGjRrV6Guuq6uLBx54ILp3795QQEIxk1HFm1HNufnmm2Pp0qXxn//5n622D97liPQU9ejRI+6666648MIL49BDD43zzjsvevXqFQsXLowRI0bEF7/4xbj99tujR48e0bt37/jd734XNTU18ZGPfCSefvrpmDdvXpPHfK8c+eUvfxnnnXdedOjQIU477bTo2rVrXHLJJXHDDTfEJZdcEp/97Gdj7NixMWvWrC2ed7/99ovrrrsurrrqqpg/f36ceeaZ0b1795g3b1489NBD8Z3vfCd++tOfbtVz8PWvf/0D73PqqafGLbfcEieddFL069cvVqxYEXfccUfsv//+MWXKlCb3P+igg+LEE0+MH/3oR9GxY8eGcL7mmms+cF+PPfZYvPHGGxHx7hEHU6ZMieuuuy4i3n0r37//+79HRMQXvvCF+MxnPhOf/exno2fPnjFp0qT429/+FnvuuWf84he/2OKvHwqZjCrejDrjjDPi2GOPjd/+9rexatWqOPjgg+Phhx+O8ePHx5/+9KdGR1NAsZJRxZtR77n33nsjwmldyCYZVbwZdeWVV8YFF1wQhx9+eHznO9+Jzp07x3333RcTJ06M6667bqvOxQyFSkYVb0YNGjQohg8fHr17945u3brF6NGj44EHHohLLrkkzj777C3++tlGCa1mwIABSUQkr776as77Pfvss8mJJ56Y9OzZM+nUqVOy3377JRdffHHy2muvNdxn8eLFyVlnnZXsuOOOSc+ePZM+ffokS5YsSSIiufrqqxs93q9//evkIx/5SNKuXbskIpJ58+YlSZIkFRUVybe+9a2kZ8+eSffu3ZO+ffsmK1asaPIYV199dRIRycqVK5udd/jw4cmRRx6ZdO3aNenatWvy8Y9/PLn00kuTmTNntsjzsffeeyennnpqo21//etfkwMOOCDp2LFj8vGPfzwZMGBAw5zvFxHJpZdemgwaNKjh/p/5zGeSZ599Nuc+3/P1r389iYhm/wwYMKDhfr/85S+TQw45JOnZs2fSoUOHZK+99kq+//3vJ8uWLdui/UAhkFHb9nwUQ0YlSZKUlZUlP/7xj5Pdd9892WGHHZJPf/rTyaBBg7ZoP1AIZNS2PR/FklF1dXXJRz7ykeTQQw/doseGQiOjtu35KJaMevLJJ5Ojjjoq2XXXXRvWUXffffcW7QcKgYzatuejGDLq5ZdfTnr37p3stNNOSadOnZKDDz44ufvuu5P6+vot2g/bpyRJ/uU9EVDESkpK4tJLL43bb7897VEAmpBRQCGTUUAhk1FAIZNRbYNzpAMAAAAAQA6KdAAAAAAAyEGRDgAAAAAAOThHOgAAAAAA5OCIdAAAAAAAyEGRDgAAAAAAOSjSAQAAAAAgh/ZpDwAUnwEDBsQ3v/nNRtuycrmFkpKStEcAWoGMAgpZVjKKrXfRRRfFwIED0x4DcpJRNOe2226LH/3oR2mPAXnNKEekA1vt3nvvTXsEAAAoehdccEHaIwBstSRJYvDgwWmPAXmnSAe2Wl1dXdojAABA0Tv88MNj//33T3sMgK1WX1+f9giQd4p0YKssWbIk5s6dm/YYAABQ9Lp16xa777572mMAbJUFCxbEokWL0h4D8k6RDmyVFStWxOLFi9MeAwAAil5paWmce+65aY8BsFWWLFkSS5cuTXsMyDtFOrBV2rVrF+3bu04xAAC0hAMPPDA6deqU9hgAW6y0tDRKS0vTHgPyTpEObJVPfOITcccdd8THPvaxtEcBAICi9x//8R/Rs2fPtMcA2GKf+cxn4o9//GN89KMfTXsUyKuSJEmStIcAis+rr74affr0iQULFkTEu1ftzoKSkpK0RwBagYwCCllWMopts3bt2vjEJz4Ry5cvT3sUaJaMYnPGjx8f5557bixZsiTtUWjD8plRjkgHtsl//Md/xI9//GOlDgAAbIcOHTrEPvvsk/YYAFvtyCOPjO9///tpjwF5o0gHttlxxx0X7dqJEQAA2FbdunWLI488Mu0xALbJiSee6AA72gwNGLDN9txzz/jEJz6R9hgAAABACvbdd9/Yb7/90h4D8kKRDmyzHXfcMfbYY4+0xwAAAABSsMsuu8Ruu+2W9hiQF4p0AAAAAADIQZEOAAAAAAA5KNIBAAAAACAHRTqwzVatWhULFy5MewwAAChqhx56aOy6665pjwGw1ZYtWxZLlixJewzIC0U6sM2WLl0ab7/9dtpjAABAUTv33HPjhRdeiD/+8Y/xsY99LO1xALbYokWLYsGCBWmPAXmhSAe22SOPPBL19fVpjwEAAEWtXbt2ceCBB8YPf/jDePrpp+Piiy+OkpKStMcC+EAPPfRQJEmS9hiQF4p0YJusXbs2nnnmGf9gAgBACzrggAPijjvuiG9+85vRrp2X7EDhWrVqVTz77LNpjwF5419lYKslSRK33357PPfcc2mPAgAAmdOlS5e4+eab4xOf+ETaowA0K0mS+P3vfx8vvfRS2qNA3ijSga1SX18fQ4YMiZtuusnR6AAA0Ep23HHHOPvss9MeA6CJurq6GDBgQNx2221pjwJ51T7tAYDisXz58vjP//zPePjhh2Pjxo1pjwMAAJnm1C5AoVmyZEn8+Mc/jhEjRsSmTZvSHgfySpEO5LRmzZpYvXp1PPjgg3H33XfHggULHIkOAAB58G//9m/Rvn37qK2tTXsUoA1btWpVrFmzJu6///645557YuHChWmPBKlQpEMbsnz58thll12iffv//6NfX1/f8Pdp06bF6tWrY/369TFo0KCoqamJt99+O2bPnh3V1dUKdAAAyKO3335biQ60qGXLlkWvXr2itLS0Ydv7e4E333wz1q1bF2vWrIl777036urqYsaMGTFv3jy9AG2eIh3aiPr6+rj99tvjiiuuiJ122immTZsWI0eOjCFDhjQszufNmxfr169PeVIAACAiGhVdANurtrY2+vfvH7/85S+jW7duMWXKlHjyySfj/vvvbyjT58yZE2VlZSlPCoWpJPGrJGgT3nzzzTjllFOif//+seuuu8Z1110Xo0aNarHHz0qUlJSUpD0C0ApkFFDIspJRtLyZM2fGoYceGhUVFWmPQhsmo7Lj1Vdfja9+9atx1113RefOneO6666L5557Lu2xYLvkM6MckQ5txO233x6LFy+O8847L0pKSqK6ujrtkQAAgBy6dOnigqNAi0iSJPr37x+LFy+Os88+OyJCLwBbSZEObcDUqVPj/vvvj4iImpqalKcBAAAA8mnSpEnxyCOPRIQCHbaVX21DxpWVlcUVV1zh3OcAAADQBq1bty4uv/zyKC8vT3sUKGqKdMi4J554wjnPAAAAoI166KGH4sUXX0x7DCh6inTIsHnz5sV1113ndC4AAFCESkpKorS0NO0xgCI2c+bMuPHGG6Ouri7tUaDoKdIhw+68886YOnVq2mMAAADbYI899ohjjjkm7TGAIvXeBUZnzpyZ9iiQCYp0yKhXXnklBg4cmPYYAADANiotLY2uXbumPQZQpMaPHx8PPPBA2mNAZijSIYOWLVsW5557bixfvjztUQAAgO3g1C7Atli4cGGcf/75sXr16rRHgcxon/YA8EEqKytj/fr1m7193bp1MWLEiKivr4+IiHbt2sU555wTe+21V75GLCg1NTXxi1/8IhYsWJD2KAAAwHb62te+Fv/85z8jSZK0RwGKRFVVVVx55ZWxZMmStEeBTFGk0+rmzp0bGzdu3Ozt48aNizfffHOzt8+fPz9efvnlzd5eV1cXGzZsaLRt6NChcf/997fJMn3kyJExdOhQC20AAMiAHXfcMe0RgCLz8MMPx8MPP6wXgBZWkvipavPq6+tzXr15+fLl8frrr2/29hdeeCEmTpy42dsnTpyY84jy+vr6Vgn3ww8/PIYNGxYf/ehHW/yxC9Vjjz0WF110Uaxbty7v+85KlJSUlKQ9AtAKZBRQyLKSUbSO9evXxxe/+MV466230h6FNkpGFZehQ4fGt771rSgrK0t7FMiLfGaUIj0jysvLo7KystnblixZEs8999xmP/eVV17JWYSXl5fH4sWLt3fEVFx11VVx7bXXRvv22X/zxZw5c+KII46IlStXprL/rESJkgqySUYBhSwrGUXr+eIXvxgTJkxIewzaKBlVPKZNmxZf/OIXUzm4DtKSz4zKfrtYRMrLy2PRokXN3lZVVRVDhgyJTZs2NXv7hAkTYv78+c3eVl1d3eTUJ23FzTffHF26dInvf//7scsuu6Q9TqtZuXJlXHrppamV6AAAAFDI1q5dGzvttFPaY7SapUuXxg9+8AMlOrQiR6RvpyRJGi5y+X719fXx2muvRXl5eZP7DxkyJFasWNHkc5YvXx5vvPHGZvdVU1Oz/QO3Qe3atYvPfe5z8cADD8See+6Z9jgtbtWqVdGvX78YNWpUqnNkJUoc7QnZJKOAQpaVjKL1OCKdNGUlo7785S/HkCFDYvfdd097lBa3bNmyOPfcc2Ps2LFpjwJ559QuKdu0aVOT06TU1tbGk08+2eSimfPmzYsnnnii2cd5++23N3u6FfLvc5/7XAwbNiwzZXqSJPHOO+/Et771rXj66afTHicziyslFWSTjAIKWVYyitaxYsWK+MIXvhBz5sxJexTaqKxkVElJSfTu3TuGDBkSe+yxR9rjtIgkSWLhwoVx0UUXKdFpsxTprSBJkliwYEGTo7pHjBgR77zzTqNtEydOjGnTpjX5/FWrVjV79DnF47DDDosrr7wyzj777KIvIx599NG49NJLC+b89VmJkmL/vgCaJ6OAQpaVjKJ1/OEPf4grrrgi7TFow7KSUe+toz7/+c/HVVddFaeddlpRr62SJImhQ4fG5ZdfHkuXLk17HEiNIj2HJEkaPUFJksSkSZOioqKiYdv69etj0KBBjUrz+vr6GDduXKP7Rbx7uhTleNvSrVu3+O1vfxsXXnhh9OzZM+1xtlp5eXk89NBD8eMf/zjWrl2b9jgNiixKNquYF1LA5skooJBlJaNoeatWrYojjjgi3n777bRHoQ3LSka9fx3Vo0eP+P3vfx/nnntudO/ePcWptk1ZWVk88MADccUVV7TZa+LBe9pskb5p06ZG5ffixYvj5ZdfbnSfZ599Nt58881G22bOnLnZi3DC5px66qnxi1/8Iv7jP/4jOnTokPY4W+T111+PG2+8Me6///6CW8wU2jzbSkkF2SSjgEKWlYyi5c2ZMycOPvjgJqcYhXzKSkY1t44666yz4sorr4xDDz002rdvn8JUW++1116L66+/Ph566KG0R4GCkOkifd68eQ1/f/nll2PKlCkNH48dO7bR7Zs2bSqoI27Jnm7dusXJJ58cv/jFL+KQQw5Je5zNWr16ddx3331x0003xcKFC9Mep1lZXlwBxU9GAYUsKxlFy7vpppvi5z//ue8RUpWV77/NraO6d+8eX/nKV+K///u/45Of/GSep9pyK1eujIEDB8bvf//7WLJkSdrjQMHIdJHepUuXhr/X1NREbW1tPncPzdp7773jBz/4QZxwwglx8MEHF0xRUVdXFy+++GL88Ic/jClTphT0aYiyvrgCipuMAgpZVjKKllVfXx+XXXZZ3HXXXWmPQhuXlYz6oHXUfvvtFz/4wQ/iuOOOi09/+tMFs+6qra2N8ePHx6WXXhozZswo6F4A0pDpIr1Qggia06VLlzj11FOjT58+ceyxx0bPnj2jtLQ073OsWbMmBg8eHAMHDowpU6ZEZWVl3mfYWm1lcQUUJxkFFLKsZBQtq7y8PD71qU8V7DtSaTuyklFbuo7q1q1bnHHGGXHWWWfFscceGz169Ih27dq18nRNrVy5MgYNGhSDBw+ON998M6qqqvI+AxQDRTqkrF27drHHHnvESSedFMcff3x84QtfiF133TU6d+7cKvtLkiSWLl0azzzzTMycOTOGDRsWM2fOLKoFSzHNmouMgmySUUAhy0pG0bJWrlwZhxxyiFM4kLqsZNTWrqNKS0tjjz32iFNPPTWOP/74+NznPhe9evWKTp06tcp8SZLEO++8E6NHj45Zs2bF0KFDY86cOZl5/qG1KNKhgLRv3z46deoUhx9+eHzsYx+Lr33ta9GtW7fYZZddYt99992mxywrK4sZM2bEhg0b4t57743KysoYPXp0rF27tmhPd5SVf9xlFGSTjAIKWVYyipY1ZMiQ6Nevn+8PUpeV78HtWUd16NAhOnbsGF/84hdjr732igsuuCA6d+4cvXr1io997GPb9Jjr1q2L2bNnx5o1a+K+++5r6AXWrVsXdXV12zwrtDWKdChg730P9+rVK/bff/+G7V27do0LL7wwOnbs2ORznnvuuXjjjTcaPt6wYUO89dZbEZGdRUlWvg4ZBdkko4BClpWMomUNGjQoLrzwwrTHgMxkVEuuo957rA996EONDrDr2bNn9OvXL3bYYYcmnzN69OiGHiDi3VO6zpw5MyKy8xxDGhTpQNHJyj/8MgqySUYBhSwrGUXL+tOf/hTf+9730h4DMpNR1lGQTfnMqPxfLQEAAADYrCRJYtCgQWmPAQC8jyIdAAAACkx1dXXaIwAA76NIBwAAgALyzjvvxLJly9IeAwB4H0U6AAAAFJCFCxfGwoUL0x4DAHgfRToAAAAUkJKSkmjXzst1ACgk/mUGAACAAnLwwQfH//7v/8auu+6a9igAwP8pSZIkyesOS0ryuTsgT/IcJa1GRkE2ySigkGUlo2h5TzzxRFx00UWxevXqtEehDctKRllHQTblM6MckQ4AAAAF6JRTTolvf/vbaY8BAIQiHQAAAArWV7/6VUfSAkABUKQDAABAgdpzzz1j7733TnsMAGjzFOkAAABQoHbffff48Ic/nPYYANDmKdIBAAAAACAHRToAAAAAAOSgSAcAAAAAgBwU6QAAAFCgVq9eHatWrUp7DABo8xTpAAAAUKDmzp0bs2fPTnsMAGjzFOkAAABQoJ566qlIkiTtMQCgzVOkAwAAQAEqKyuLZ555Ju0xAIBQpAMAAEDBSZIk+vfvH88991zaowAAoUgHAACAgvPwww/HLbfc4rQuAFAgFOkAAABQINavXx/f//734+KLL461a9emPQ4A8H/apz0AAAAAtGXl5eVRXl4ejzzySNx2220xbdo0R6IDQIFRpAMAAEALWbt2bfTs2TPatWv+DeDz5s2L8vLyWLt2bQwZMiSSJInXX389Zs6cGRs2bIi6uro8TwwAbAlFOgAAALSAurq6uP322+MnP/lJdOvWLebMmRPjxo2L++67r+EI89dffz3WrFnTcH8AoDgo0gEAAKAFvPXWW/H3v/89jj766OjSpUtcffXV8fjjj6c9FgDQAhTpAAAA0AJuv/32mDt3bpx88slRUlISZWVlaY8EALSQkiTPVzApKSnJ5+6APMnKxZBkFGSTjAIKWVYyqq2bOnVqfOlLX4p169alPQq0qKxklHUUZFM+M6r5q58AAAAAW6SsrCyuvPJKJToAZJgiHQAAALbDiBEj4qmnnkp7DACgFSnSAQAAYBstXLgwbrrppqitrU17FACgFSnSAQAAYBvddtttMWnSpLTHAABamSIdAAAAtsHkyZNj4MCBaY8BAORBSZLnyy+7SjJkkyu5A4VMRgGFLCsZ1dYsXbo0evfuHW+//Xbao0CrykpGWUdBNuUzoxyRDgAAAFuhuro6rr322pgzZ07aowAAeaJIBwAAgK3wzDPPxMCBAzNzpC4A8MEU6QAAALCFRo0aFRdddFFs3Lgx7VEAgDxyjnSgRWTlaBwZBdkko4BClpWMagvmzJkTRxxxRKxcuTLtUSBvspJR1lGQTc6RDgAAQFEpLy9Pe4RWtXr16rjiiiuU6ADQRinSAQAA2G4XXnhhrFu3Lu0xWsW6deviW9/6Vjz22GNpjwIApESRDgAAwHZ7+OGH46KLLoq1a9emPUqLWr16dVx00UXxyCOPZOYUFwDA1lOkAwAA0CIee+yx6NevX4wdOzbtUVrEU089FZ///OcdiQ4AuNgo0DKycnSOjIJsklFAIctiRu22225x9913x8knnxydOnVKcaptU1lZGU8++WR897vfjRUrVqQ9DqQqixkFZIeLjQIAAFC0VqxYEX369InLLrssZs2aVVRF3OzZs+OHP/xhnHPOOUp0AKCBI9KBFlFML45ykVGQTTIKKGRZz6hevXrF+eefHz/5yU/iYx/7WH6H2gplZWXx8MMPxzXXXBNz5sxJexwoGFnPKKC45TOjFOlAi7C4AgqZjAIKWVvJqEMOOSSuuOKK+NKXvlRQhXqSJPHGG2/E97///XjttdeitrY27ZGgoLSVjAKKkyIdKDoWV0Ahk1FAIWtLGdWuXbvYeeed44ILLoizzjorDj/88Nhhhx1Sybfy8vJ4+OGH4957740XXnghysrK8j4DFIO2lFFA8VGkA0XH4gooZDIKKGRtNaPat28fBx54YHz1q1+NY489Ng4++ODo3r17tG/fvlXmS5IkNmzYEOPGjYu5c+fGP/7xj5g8eXJmnn9oLVn5GbGOgmxSpANFx+IKKGQyCihkMiqiS5cu0b179zjuuONin332ib59+0anTp2iZ8+esdtuu23TY1ZUVMQ777wT69ati2HDhsWmTZvi0UcfjWXLlkVVVdU2zwptjYwCCpkiHSg6FldAIZNRQCGTUU29d7qXPffcMw466KCG7T179owLLrggOnTo0ORzRo0aFW+99VbDxytXrozXXnstkiSJ6urqFpsN2hoZBRQyRTpQdCyugEImo4BCJqOAQiajgEKWz4xql7c9AQAAAABAEVKkAwAAAABADop0AAAAAADIQZEOAAAAAAA5KNIBAAAAACAHRToAAAAAAOSgSAcAAAAAgBwU6QAAAAAAkIMiHQAAAAAAclCkAwAAAABADop0AAAAAADIQZEOAAAAAAA5KNIBAAAAACAHRToAAAAAAOSgSAcAAAAAgBwU6QAAAAAAkIMiHQAAAAAAclCkAwAAAABADop0AAAAAADIQZEOAAAAAAA5KNIBAAAAACAHRToAAAAAAOSgSAcAAAAAgBwU6QAAAAAAkIMiHQAAAAAAclCkAwAAAABADop0AAAAAADIQZEOAAAAAAA5KNIBAAAAACAHRToAAAAAAOSgSAcAAAAAgBwU6QAAAAAAkIMiHQAAAAAAclCkAwAAAABADop0AAAAAADIQZEOAAAAAAA5KNIBAAAAACCH9mkPAADAlvnGN74RSZLEmDFjYv369VFbWxsVFRVpjwUAAJB5JUmSJHndYUlJPncH5Emeo6TVyCjIpqxk1HtWrFgRtbW1sWzZsnjyyScjIuKZZ56JOXPmxLp162LdunXpDghslaxklHUUZJOMAgpZPjNKkQ60CIsroJBlJaNyqa6ujrq6upg5c2bMmjUrZs2aFSNHjoyNGzfGm2++GfX19WmPCGxGVjLKOgqySUYBhUyRDhQdiyugkGUlo7ZFeXl5TJ8+PSZOnBjjx4+P5cuXx4svvhjV1dVRU1OT9nhAZCejrKMgm2QUUMgU6UDRsbgCCllWMqolVFZWxooVK+Kll16KqVOnxqOPPhorVqyIpUuXpj0atFlZySjrKMgmGQUUMkU6UHQsroBClpWMag0VFRVRVlYWY8aMialTp8aIESNi6tSpTgUDeZSVjLKOgmySUUAhU6QDRcfiCihkWcmofKisrIzXX389pk2bFk899VRMmjQpFi5cGNXV1WmPBpmVlYyyjoJsklFAIVOkA0XH4gooZFnJqDSsXLkypkyZEmPGjIkJEybE7NmzY/ny5VFXV5f2aJAZWcko6yjIJhkFFDJFOlB0LK6AQpaVjErbpk2borKyMkaNGhWPPfZYTJgwIebOnZv2WFD0spJR1lGQTTIKKGSKdKDoWFwBhSwrGVVIkiSJ1atXx9SpU+O5556LMWPGxCuvvOIUMLANspJR1lGQTTIKKGSKdKDoWFwBhSwrGVXIKioqYu7cufHAAw/EyJEjY9asWbFhw4a0x4KikJWMso6CbJJRQCFTpANFx+IKKGRZyahiUV5eHrNmzYoxY8bE4MGDY+bMmbFp06a0x4KClZWMso6CbJJRQCFTpANFx+IKKGRZyahiVFtbGxMnToxRo0bFX/7yl3jnnXdcqBT+RVYyyjoKsklGAYVMkQ4UHYsroJBlJaOK3ZIlS2LSpEnxyCOPxIgRI2LVqlVRU1OT9liQuqxklHUUZJOMAgqZIh0oOhZXQCHLSkZlRX19faxduzaeeuqpuO2222LGjBmxbt26tMeC1GQlo6yjIJtkFFDIFOlA0bG4AgpZVjIqi2pra2PatGnxxz/+MV544YWYOXOm/1+0OVn5nreOgmySUUAhU6QDRcfiCihkWcmorFu9enXcf//9cccdd8T8+fOjoqIi7ZEgL7KSUdZRkE0yCihkinSg6FhcAYUsKxnVVqxbty7efPPN6N+/fzz55JOxcePGtEeCVpWVjLKOgmySUUAhU6QDRcfiCihkWcmotqa2tjZeeeWVuPnmm2PkyJFRWVmZ9kjQKrKSUdZRkE0yCihkinSg6FhcAYUsKxnVVtXX18dLL70UN998czz55JOxadOmtEeCFpWVjLKOgmySUUAhU6QDRcfiCihkWcmotq66ujpefvnl6N+/fzz11FNRXl6e9kjQIrKSUdZRkE0yCihkinSg6FhcAYUsKxnFu2pra+Oll16KW265xSlfyISsZJR1FGSTjAIKmSIdKDoWV0Ahy0pG0Vh9fX0MGDAgbrnllpgxY0bU19enPRJsk6xklHUUZJOMAgqZIh0oOhZXQCHLSkbRvDVr1sRNN90UN998c9TW1qY9Dmy1rGSUdRRkk4wCCpkiHSg6FldAIctKRrF51dXV8cADD8QvfvGLWLRoUdrjwFbJSkZZR0E2ySigkCnSgaJjcQUUsqxkFB/slVdeiXPOOUeZTlHJSkZZR0E2ySigkOUzo9rlbU8AANDKPve5z8XQoUNjr732SnsUAAAgQxTpAABkyuGHHx5DhgyJPffcM+1RAACAjFCkAwCQOUcccURcfvnl3sYNAAC0CEU6AACZdMEFF8R+++2X9hgAAEAGKNIBAMik3XbbLb7//e+nPQYAAJABinQAADLry1/+cnTv3j3tMQAAgCL3/9q5exe7yjWMw8+Ke1AjKiRgIYKQQgaiGFAbwULEoAja+wdoLRbWVnYi2Ns4lY1RDARMqRFlJGFEkoAEooImGBl11EyY7HWqc7pzWzjZ7/q4rnaKdVcPa34stpAOAMBkPfroo/Xggw+2ngEAAIyckA4AwGQdOHCgnnrqqdYzAACAkRPSAQCYrK7r6tixY61nAAAAIyekAwAwacePH6/Dhw+3ngEAAIyYkA4AwKTde++9tVgsWs8AAABGTEgHAGDyuq5rPQEAABgxIR0AgEm755576vnnn289AwAAGDEhHQCASbvtttv8RjoAAPCvCOkAAAAAABAI6QAAAAAAEAjpAAAAAAAQCOkAAAAAABAI6QAATN5isWg9AQAAGDH/UQAAMHmvvvpqXbt2rT755JO6cuVKLZfL1pMAAIAR6fq+71f6wK5b5eOAFVnxKbll3CiYpqncKP6dmzdv1vb2dr355pv1/vvv1/b2dutJUFXTuVHeo2Ca3ChgyFZ5o4R0YF94uQKGbCo3iv3R932dPn26Xn755frll19az4HJ3CjvUTBNbhQwZKu8UX4jHQCAWem6rp599tna2Niou+++u/UcAABgBIR0AABm6ZlnnqkXXnih9QwAAGAEhHQAAGZpsVjU+vp66xkAAMAICOkAAMzWHXfc0XoCAAAwAkI6AACzdf/999disWg9AwAAGDghHQCA2bp06VLt7e21ngEAAAyckA4AwGytr6/7Ih0AAPhHQjoAALP15JNP+p10AADgHwnpAAAAAAAQCOkAAAAAABAI6QAAAAAAEAjpAAAAAAAQCOkAAMzWwYMH64EHHmg9AwAAGDghHQCA2Tp8+HA9/vjjrWcAAAADJ6QDAAAAAEAgpAMAMGsPPfRQ6wkAAMDACekAAMzac889V13XtZ4BAAAMmJAOAMCs3XnnnXXXXXe1ngEAAAyYkA4AwKwdPXq0Hn744dYzAACAARPSAQCYta7r6sABr8UAAMD/5z8GAAAAAAAIhHQAAGat7/taLpetZwAAAAMmpAMAMGubm5u1tbXVegYAADBgQjoAALO1t7dXb7/9dv3111+tpwAAAAPW9X3fr/SBXbfKxwErsuJTcsu4UTBNU7lR7L8ffvihjh49Wn/88UfrKczYVG6U9yiYJjcKGLJV3ihfpAMAMFsXLlyoGzdutJ4BAAAMnJAOAMBsnTlzpnZ3d1vPAAAABk5IBwBglq5fv16nT59uPQMAABgBIR0AgFna29ur77//vvUMAABgBIR0AABm6fz587W9vd16BgAAMAJCOgAAs3Tx4sX6/fffW88AAABGQEgHAAAAAIBASAcAYJa++uqr1hMAAICRENIBAJidvu/ryy+/bD0DAAAYCSEdAIDZWS6XtVwuW88AAABGQkgHAGB2zp07V998803rGQAAwEgI6QAAzM7u7m7t7u62ngEAAIyEkA4AwOwcOnSo7rvvvtYzAACAkRDSAQCYnfX19friiy/qpZdeqq7rWs8BAAAGruv7vl/pA/2jApO04lNyy7hRME1TuVHsv19//bVefPHF+vzzz1tPYcamcqO8R8E0uVHAkK3yRvkiHQCA2Tp06FC99tpr/rkGAAAiIR0AgFk7cuRIra2ttZ4BAAAMmJAOAMCsPfLII3Xs2LHWMwAAgAET0gEAmLXFYlGLxaL1DAAAYMCEdAAAAAAACIR0AAAAAAAIhHQAAGat7/vWEwAAgIET0gEAmLVvv/22tra2Ws8AAAAGTEgHAGDWrly5Un/++WfrGQAAwIAJ6QAAzNrGxoafdwEAACIhHQCA2Tpz5kydOnWq9QwAAGDghHQAAGbpt99+q7feeqt+/vnn1lMAAICBE9IBAJid7777rl555ZU6efJk6ykAAMAILFoPAACAVdnZ2akPP/yw3njjjfrpp59azwEAAEZCSAcAYJL29vbq6tWrVVW1ublZW1tbdeLEiTp37lzdvHmz8ToAAGBMhHQAAEbls88+qyeeeKJuv/32qqr6+++/6+LFi//7+0cffVSXL1+unZ2d+vTTT2u5XNb169frxo0brSYDAAAjJ6QDADAaOzs79c4779R7771Xa2trtbGxUe+++26dPXu2+r6vqqrlctl4JQAAMDVCOgAAo/Hxxx/XyZMn6/XXX6+1tbX64IMP6tq1a61nAQAAE9f1//10Z1UP7LpVPg5YkRWfklvGjYJpmsqNmrudnZ16+umna3Nzs/UU2FdTuVHeo2Ca3ChgyFZ5ow6s7EkAAPAvnDhxor7++uvWMwAAgBnyRTqwL3ylAAzZVG7UnP3444/12GOP1dWrV1tPgX03lRvlPQqmyY0ChmyVN2rlIR0AAAAAAMbET7sAAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAK8oXQAAA7BJREFUAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEAgpAMAAAAAQCCkAwAAAABAIKQDAAAAAEDwH/RD9EldXaM8AAAAAElFTkSuQmCC\n"},"metadata":{}}],"execution_count":41}]}