{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Approach 4: Autoencoder - Boxplot\n", "This notebook reads eval results of sets of identical trainings and plots them into a boxplot. The names of the training results can be configured in the cell below." ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The autoreload extension is already loaded. To reload it, use:\n", " %reload_ext autoreload\n", "Found 3 sessions\n", "Session 'Beaver_01' at folder: /home/kleinsteuber/vscode/ResizedSessions256_NoBackup/VIELAAS_Spring_Session01-VIELAAS_Beaver_01\n", "Loaded scans.\n" ] } ], "source": [ "%load_ext autoreload\n", "%autoreload 2\n", "\n", "import numpy as np\n", "from sklearn.neighbors import KernelDensity\n", "from glob import glob\n", "from sklearn.metrics import roc_curve, auc\n", "import matplotlib.pyplot as plt\n", "from tqdm import tqdm\n", "\n", "from py.Dataset import Dataset\n", "from py.FileUtils import load\n", "from py.PlotUtils import get_percentiles\n", "\n", "DIR = '/home/kleinsteuber/vscode/ResizedSessions256_NoBackup' # dataset directory\n", "SESSION = \"beaver_01\"\n", "CONFIGS_BY_LATENT_FEATURES = [\n", " {\n", " \"label\": \"16\",\n", " \"train_names\": [f\"ae2_beaver_01_16f_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"32\",\n", " \"train_names\": [f\"ae2_beaver_01_32f_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"64\",\n", " \"train_names\": [f\"ae2_beaver_01_64f_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"128\",\n", " \"train_names\": [f\"ae2_beaver_01_128f_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"256\",\n", " \"train_names\": [f\"ae2_beaver_01_256f_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"512\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"1024\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_{i}\" for i in range(10)]\n", " },\n", "]\n", "\n", "CONFIGS_DENOISING = [\n", " {\n", " \"label\": \"0\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"0.100\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.01_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"0.150\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.0225_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"0.200\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.04_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"0.300\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.09_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"0.400\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.16_200e_{i}\" for i in range(10)]\n", " },\n", "]\n", "\n", "CONFIGS_SPARSE = [\n", " {\n", " \"label\": \"0\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"1e-5\",\n", " \"train_names\": [f\"ae2_beaver_01_sparse1e-5_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"1e-4\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_sparse_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"1e-3\",\n", " \"train_names\": [f\"ae2_beaver_01_sparse1e-3_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"1e-2\",\n", " \"train_names\": [f\"ae2_beaver_01_sparse1e-2_200e_{i}\" for i in range(10)]\n", " },\n", "]\n", "\n", "CONFIGS_DENOISING_AND_SPARSE = [\n", " {\n", " \"label\": \"Base\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"σ = 0.1\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.01_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"σ = 0.15\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.0225_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"σ = 0.2\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.04_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"σ = 0.3\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.09_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"σ = 0.4\",\n", " \"train_names\": [f\"ae2_beaver_01_noise0.16_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"λ = 1e-5\",\n", " \"train_names\": [f\"ae2_beaver_01_sparse1e-5_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"λ = 1e-4\",\n", " \"train_names\": [f\"ae2_beaver_01_200e_sparse_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"λ = 1e-3\",\n", " \"train_names\": [f\"ae2_beaver_01_sparse1e-3_200e_{i}\" for i in range(10)]\n", " },\n", " {\n", " \"label\": \"λ = 1e-2\",\n", " \"train_names\": [f\"ae2_beaver_01_sparse1e-2_200e_{i}\" for i in range(10)]\n", " },\n", "]\n", "\n", "ds = Dataset(DIR)\n", "session = ds.create_session(SESSION)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calculating the scores" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [], "source": [ "def get_scores(train_names):\n", " kde_scores = {\n", " \"auc\": [],\n", " \"tnr90\": [],\n", " \"tnr95\": [],\n", " \"tnr99\": []\n", " }\n", " loss_scores = {\n", " \"auc\": [],\n", " \"tnr90\": [],\n", " \"tnr95\": [],\n", " \"tnr99\": []\n", " }\n", " for train_name in tqdm(train_names):\n", " try:\n", " lapse_losses, lapse_encodings, lapse_labels, lapse_images = load(f\"./ae_train_NoBackup/{train_name}/eval/{session.name}_lapse.pickle\")\n", " motion_losses, motion_encodings, motion_labels, motion_images = load(f\"./ae_train_NoBackup/{train_name}/eval/{session.name}_motion.pickle\")\n", " except:\n", " print(f\"{train_name} is missing, skipping...\")\n", " continue\n", "\n", " # # # # # # # # # # # # # # # # # #\n", " # 1. KDE AUC & elimination rates\n", " # # # # # # # # # # # # # # # # # #\n", "\n", " kde = KernelDensity(kernel=\"gaussian\", bandwidth=0.01).fit(lapse_encodings)\n", " preds = kde.score_samples(motion_encodings)\n", " y_anom = preds[motion_labels == 1]\n", " y_norm = preds[motion_labels == 0]\n", " # likelihoods need to be inverted (anomalies have lower likelihood)\n", " X = -np.concatenate([y_norm, y_anom]).reshape((-1, 1))\n", " y = np.concatenate([-np.ones_like(y_norm), np.ones_like(y_anom)])\n", "\n", " fpr, tpr, thresholds = roc_curve(y, X[:,0])\n", " kde_scores[\"auc\"].append(auc(fpr, tpr))\n", " kde_scores[\"tnr90\"].append(get_percentiles(fpr, tpr, thresholds, percentiles=[0.9], verbose = False)[0])\n", " kde_scores[\"tnr95\"].append(get_percentiles(fpr, tpr, thresholds, percentiles=[0.95], verbose = False)[0])\n", " kde_scores[\"tnr99\"].append(get_percentiles(fpr, tpr, thresholds, percentiles=[0.99], verbose = False)[0])\n", "\n", " # # # # # # # # # # # # # # # # # # # # # # # # #\n", " # 2. Reconstruction Loss AUC & elimination rates\n", " # # # # # # # # # # # # # # # # # # # # # # # # #\n", "\n", " y_anom = motion_losses[motion_labels == 1]\n", " y_norm = motion_losses[motion_labels == 0]\n", " # likelihoods do not need to be inverted (anomalies have higher reconstruction loss)\n", " X = np.concatenate([y_norm, y_anom]).reshape((-1, 1))\n", " y = np.concatenate([-np.ones_like(y_norm), np.ones_like(y_anom)])\n", "\n", " fpr, tpr, thresholds = roc_curve(y, X[:,0])\n", " loss_scores[\"auc\"].append(auc(fpr, tpr))\n", " loss_scores[\"tnr90\"].append(get_percentiles(fpr, tpr, thresholds, percentiles=[0.9], verbose = False)[0])\n", " loss_scores[\"tnr95\"].append(get_percentiles(fpr, tpr, thresholds, percentiles=[0.95], verbose = False)[0])\n", " loss_scores[\"tnr99\"].append(get_percentiles(fpr, tpr, thresholds, percentiles=[0.99], verbose = False)[0])\n", " return kde_scores, loss_scores" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plotting" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [], "source": [ "def plot_boxes(values, color=\"darkgoldenrod\", label_below=[], colors=None):\n", " bp_dict = plt.boxplot(values, medianprops={\"linewidth\": 1.5, \"color\": color}, widths=0.68)\n", "\n", " # Add labels to medians\n", " for i, line in enumerate(bp_dict['medians']):\n", " # get position data for median line\n", " x, y = line.get_xydata()[1] # top of median line\n", " # custom color\n", " if colors is not None:\n", " color = colors[i]\n", " line.set_color(color)\n", " # overlay median value\n", " if i in label_below:\n", " plt.text(x - 0.34, y - 0.0006, f\"{y:.3f}\", verticalalignment=\"top\", horizontalalignment=\"center\", color=color) # draw below, centered\n", " else:\n", " plt.text(x - 0.34, y + 0.0005, f\"{y:.3f}\", verticalalignment=\"bottom\", horizontalalignment=\"center\", color=color) # draw above, centered\n", "\n", "def plot_scores(configs, scores, metric=\"auc\", savefile=None, figsize=(15, 10), label_below=[], xlabel=None, colors=None):\n", " plt.figure(figsize=figsize)\n", "\n", " plot_boxes([kde_scores[metric] for kde_scores, loss_scores in scores], label_below=label_below, colors=colors)\n", " # plot_boxes([loss_scores[metric] for kde_scores, loss_scores in scores], color=\"blue\")\n", "\n", " # Add labels\n", " plt.xticks(np.arange(1, len(configs) + 1), [config[\"label\"] for config in configs])\n", " if xlabel is not None:\n", " plt.xlabel(xlabel)\n", " plt.grid(True, ls=\"dotted\", lw=0.5)\n", " # plt.ylim((0.7, 0.9))\n", " # plt.legend()\n", " if savefile is not None:\n", " plt.savefig(savefile, bbox_inches=\"tight\")\n", " plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Plot result\n", "## By latent features\n", "Choose a metric (\"auc\", \"tnr90\", \"tnr95\", \"tnr99\") and optionally an output file for plotting." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████| 10/10 [00:00<00:00, 63.63it/s]\n", "100%|██████████| 10/10 [00:00<00:00, 46.40it/s]\n", "100%|██████████| 10/10 [00:00<00:00, 27.69it/s]\n", "100%|██████████| 10/10 [00:00<00:00, 13.60it/s]\n", "100%|██████████| 10/10 [00:01<00:00, 7.06it/s]\n", "100%|██████████| 10/10 [00:03<00:00, 3.30it/s]\n", "100%|██████████| 10/10 [00:02<00:00, 3.53it/s]\n" ] } ], "source": [ "scores = [get_scores(config[\"train_names\"]) for config in CONFIGS_BY_LATENT_FEATURES]" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_scores(CONFIGS_BY_LATENT_FEATURES, scores, metric=\"auc\", savefile=\"plots/approach4/boxplot_kde_latentfeatures.pdf\", figsize=(6, 8), label_below=[0], xlabel=\"Latent features\")" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_scores(CONFIGS_BY_LATENT_FEATURES, scores, metric=\"tnr95\", savefile=\"plots/approach4/boxplot_kde_latentfeatures_tnr95.pdf\", figsize=(6, 8), label_below=[0, 1], xlabel=\"Latent features\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Denoising autoencoders" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100%|██████████| 10/10 [00:02<00:00, 3.55it/s]\n", "100%|██████████| 10/10 [00:02<00:00, 3.69it/s]\n", "100%|██████████| 10/10 [00:02<00:00, 3.56it/s]\n", "100%|██████████| 10/10 [00:02<00:00, 3.81it/s]\n", "100%|██████████| 10/10 [00:02<00:00, 3.50it/s]\n", "100%|██████████| 10/10 [00:02<00:00, 3.44it/s]\n", "100%|██████████| 10/10 [00:03<00:00, 3.29it/s]\n", "100%|██████████| 10/10 [00:03<00:00, 3.19it/s]\n", "100%|██████████| 10/10 [00:03<00:00, 2.56it/s]\n", "100%|██████████| 10/10 [00:05<00:00, 1.80it/s]\n" ] } ], "source": [ "denoising_and_sparse_scores = [get_scores(config[\"train_names\"]) for config in CONFIGS_DENOISING_AND_SPARSE]" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_scores(CONFIGS_DENOISING_AND_SPARSE, denoising_and_sparse_scores, metric=\"auc\", savefile=\"plots/approach4/boxplot_kde_denoising_and_sparse.pdf\", figsize=(9, 8), label_below=[3,5,6], colors = [\"black\"] + [\"darkgoldenrod\"] * 5 + [\"blue\"] * 4)" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhsAAAHSCAYAAABFKAlcAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAABNUElEQVR4nO3de5ycZX3///dndnZmdnaSkAPhkEUJJRyCAsIGjFWEthhAJR6whNp6AEr5in7hp1bx0f5arG1B0a89gKaKSNtvS1QU4acIQhGkEggbCXKGyKE5iGRz2GR3dk471++Pmd3seWZnrnuvz3x4Px+PPJLZnZ25Xnvds7n2vmfuEecciIiIiKISCz0AIiIiso2LDSIiIooUFxtEREQUKS42iIiIKFJcbBAREVGkuNggIiKiSMVD3fGiRYvc4YcfHul9DA0Noa2tLdL7mC1WWtihCzv0sdLCDl1mo2Pjxo29zrkDJ/tcsMXG4Ycfjp6enkjvY2BgAJ2dnZHex2yx0sIOXdihj5UWdugyGx0i8vJUnzN9GCUWs5NnpYUdurBDHyst7NAldIeN7+IUBgYGQg/BGyst7NCFHfpYaWGHLqE7TC82iIiIKDzTi41kMhl6CN5YaWGHLuzQx0oLO3QJ3WF6sRGPB3v+q3dWWtihCzv0sdLCDl1Cd5hebIQ+RuWTlRZ26MIOfay0sEOX0B2mFxtEREQUnunFRiKRCD0Eb6y0sEMXduhjpYUduoTu4GKjRVhpYYcu7NDHSgs7dAndYXqx0d/fH3oI3lhpYYcu7NDHSgs7dAndYXqxQUREROGZXmyE3m3kk5UWdujCDn2stLBDl9AdphcboU9i4pOVFnbowg59rLSwQ5fQHaYXG6GPUflkpYUdurBDHyst7NAldIfpxYZzLvQQvLHSwg5d2KGPlRZ26BK6w/Rio729PfQQvLHSwg5d2KGPlRZ26BK6w/RiI/QxKp+stLBDF3boY6WFHbqE7jC92Mhms6GH4I2VFnbowg59rLSwQ5fQHTbezm4K5XI59BC8sdLCDl3YoU8rtIiIl9sJ/TyCerTCfNQjdIfpxUbot9T1yUoLO3Rhhz6t0FLPIkFEWmIxUUsrzEc9QneYPoySSqVCD8EbKy3s0IUd+lhqscDKfITuML3YCH2MyicrLezQhR36WGqxwMp8hO4wvdgIfYzKJyst7NCFHfpYarHAynyE7jC92IjF7ORZaWGHLuzQx1KLBVbmI3SHje/iFNLpdOgheGOlhR26sEMfSy0WWJmP0B2mFxu5XC70ELyx0sIOXdihj6UWC6zMR+gO04uNUqkUegjeWGlhhy7s0MdSiwVW5iN0h+nFRuhjVD5ZaWGHLuzQx1KLBVbmI3SHje/iFEIfo/LJSgs7dGGHPpZaLLAyH6E7TC828vl86CF4Y6WFHbqwQx9LLRZYmY/QHaYXG8ViMfQQvLHSwg5d2KGPpRYLrMxH6A7Tiw1fbxakgZUWdujCDn0stVhgZT5Cd5hebGQymdBD8MZKCzt0YYc+llossDIfoTtMLzZCH6Oql4jU/JNKpWpepxW0ypzUwg5drHQAtlossDIfoTtsvHfuFAqFQugh1OW19HbNrTIntbBDFysdgK0WC6zMR+gO03s2iIiIKDzTi43Qx6hoIitzwg5drHQAtlossDIfoTtMLzZC7zaiiazMCTt0sdIB2GqxwMp8hO7gYoNmlZU5YYcuVjoAWy0WWJmP0B2mFxtEREQUnunFRmdnZ+gh0DhW5oQduljpAGy1WGBlPkJ3mF5shH5LXZrIypywQxcrHYCtFguszEfoDtOLjdAnMaGJrMwJO3Sx0gHYarHAynyE7jC92CAiIqLwTC82Qh+joomszAk7dLHSAdhqscDKfITuML3YKJfLoYdA41iZE3boYqUDsNVigZX5CN1R12JDRM4SkWdFZLOIXDnJ5/9cRDZV/zwhIkMissD/cGdmcHAw9BBoHCtzwg5drHQAtlossDIfoTtqLjZEpA3A9QDOBrAcwAUisnz0dZxz1zrnTnTOnQjgcwDud87timC8RERE1GLq2bNxCoDNzrkXnHMFAOsArJ7m+hcAuNnH4JqVTqdDD4HGsTIn7NDFSgdgq8UCK/MRuqOexcYSAFtGXd5a/dgEIpIGcBaA7zc/NCIiIrIgXsd1ZJKPuSmu+24Av5jqEIqIXALgEgDo6upCLpdDoVAYOWd7Z2cnSqXSyOuBOzs7US6XR441Da/MstksAKCjowOxWAwDAwMAgGQyiXg8PnI5m81i8eLF6O/vBwAkEgkkk0n09/fDOYf29nYkk0lks1mUy2XE43GkUqmRy7FYDOl0GrlcDqVSaeRyPp9HsViEiCCTySCfz480ZDKZSJoAoLe3F4lEAolEomWb+vr6sHjx4jHz1IpNg4ODEJEpt71Wadq1a1fdjyfNTa+88grmzZs3458RGpvy+Tyccw3/3NPSBFR+ZtXzeNLctGPHDsybN8/7/0+z3dTX14clS5ZE+n/udMS5qdYN1SuIrARwlXNuVfXy5wDAOXf1JNe9FcD3nHP/WeuOu7u7XU9PT80BNqO3txeLFi2K9D5mi4ig1ly1Aitzwg5drHQAdlr4M0uX2egQkY3Oue7JPlfPYZRHACwTkaUikgCwBsDtk9zJPABvB3BbM4P1qaOjI/QQaBwrc8IOXax0ALZaLLAyH6E7ah5Gcc6VROTjAO4C0AbgRufckyJyafXza6tXfS+Anzrnau9PmSWxmOnTiLQkK3PCDl2sdAC2WiywMh+hO+p5zgacc3cAuGPcx9aOu3wTgJt8DcyHgYGB4Ks5GsvKnLBDFysdgK0WC6zMR+gOG0s2IiIiUquuPRutKplMhh4CjWNlTtihS6t0iEz24r6Zs/DEy1bRKttWLaE7TC82hl8ySnpYmRN26NIqHfUsEqy8isOKVtm2agndYfowSj2v/aXZZWVO2KGLlQ7Sx8q2FbrD9GKDiIiIwjO92EgkEqGHQONYmRN26GKlg/Sxsm2F7uBig2aVlTlhhy5WOkgfK9tW6A7Ti43hc86THlbmhB26WOkgfaxsW6E7TC82iIiIKDzTi43Qu41oIitzwg5drHSQPla2rdAdphcboU9iQhNZmRN26GKlg/Sxsm2F7jC92Ah9jIomsjIn7NDFSgfpY2XbCt1herHBs/DpY2VO2KGLlQ7Sx8q2FbrD9GKjvb099BBoHCtzwg5drHSQPla2rdAdphcboY9R0URW5oQduljpIH2sbFuhO0wvNrLZbOgh0DhW5oQduljpIH2sbFuhO0wvNsrlcugh0DhW5oQduljpIH2sbFuhO0wvNkK/pS5NZGVO2KGLlQ7Sx8q2FbrD9GIjlUqFHgKNY2VO2KGLlQ7Sx8q2FbrD9GIj9DEqmsjKnLBDFysdpI+VbSt0h+nFRuhjVDSRlTlhhy5WOkgfK9tW6A7Ti41YzHReS7IyJ+zQxUoH6WNl2wrdYeO7OIV0Oh16CDSOlTlhhy5WOkgfK9tW6A7Ti41cLhd6CDSOlTlhhy5WOkgfK9tW6A4br+mZQqlUCj0EGqcV5kREvN1W6Pcj8NUSuqOWVtiuqDVZ2bZCd5hebIQ+RkUTtcKc1PMfq4io/w8YqN3SKh21tMJ2Ra3JyrYVusPGd3EKoY9R0UScE4oCtyuKipVtK3SH6cVGPp8PPQQah3NCUeB2RVGxsm2F7jC92CgWi6GHQONwTigK3K4oKla2rdAdphcbPp/oR35wTigK3K4oKla2rdAdphcbmUwm9BBoHM4JRYHbFUXFyrYVusP0YiP0MarXGhGp+SeVStW8DtFM8bFOUbGybYXuMP3S10KhEHoIrymWXjJKrYWPdYqKlW0rdIfpPRtEREQUnunFRuhjVEQ0O/hYp6hY2bZCd5hebITebUREs4OPdYqKlW0rdAcXG0TU8vhYp6hY2bZCd5hebBAREVF4phcbnZ2doYdARLOAj3WKipVtK3SH6cVG6LfUJaLZwcc6RcXKthW6w/RiI/RJTIhodvCxTlGxsm2F7jC92CAioplbsGBBXWcErnUm4GZvY8GCBYG/E+SL6TOIhj5GRUSzg491v3bv3t30mX4HBwfR0dHR1G1oePsCK9tW6A7TezbK5XLoIRDRLOBjXR8rc8IOP0wvNgYHB0MPgYhmAR/r+liZE3b4YXqxQUREROGZXmyk0+nQQyCiWcDHuj5W5oQdftS12BCRs0TkWRHZLCJXTnGd00Vkk4g8KSL3+x0mERERtaqaiw0RaQNwPYCzASwHcIGILB93nQMAfA3Auc654wB8wP9QZy6bzYYegpeXkPFlZETT0/BYp7GszAk7/Kjnpa+nANjsnHsBAERkHYDVAJ4adZ0/AvAD59z/AIBz7lXfA21VPl5CBgC9vb1YtGhRU7eh4WVkRET02lPPYZQlALaMury1+rHRjgIwX0TuE5GNIvIhXwNsRrOv8dbEUguRb3x86GNlTtjhRz17Nib7dXj8r+pxACcD+H0AHQDWi8hDzrnnxtyQyCUALgGArq4u5HI5FAqFkbe+7ezsRKlUGjmtamdnJ8rl8shLdoaf4DK8O6ijowOxWAwDAwMAgGQyiXg8PnLZOYe2tjb09/cDABKJBJLJJPr7++GcQ3t7O5LJJLLZLMrlMuLxOFKp1MjlWCyGdDqNXC6HUqk0cjmfz6NYLEJEkMlkkM/nRxoymcyYJgDYt29f00179uzB4OAgEokEEolEQ00AsGvXrqabmp2nffv2jZmnZpp8zdNMm4DKS8mm2vZaqam3t7eux5PmpuHHx0x/RmhsAoCBgYGGf+75aAKAPXv2NNU0ODg40tDoz73h7TPkPO3btw+Dg4Pe/3+a7aZ8Po+2trZI/8+djtTaxS8iKwFc5ZxbVb38OQBwzl096jpXAkg5566qXv4WgDudc9+b6na7u7tdT09PzQE2w8ehh2aJiKrDKD7G0upj8IEdumh4rPuiYU58jMHKzywr29ZsdIjIRudc92Sfq+cwyiMAlonIUhFJAFgD4PZx17kNwNtEJC4iaQCnAni6mUETERGRDTUPozjnSiLycQB3AWgDcKNz7kkRubT6+bXOuadF5E4AvwJQBnCDc+6JKAcO+HvCY+iVcz2SyWToIRCpxceHPlbmhB1+1PVGbM65OwDcMe5ja8ddvhbAtf6GVte4pv28hl1wk9nx67vxzD2fgSsPoevED+OIlZ8a8/ldL/8cj35/DTrmvR4AsPjoc7Hk5CswsPM5PPbDD49cL7vnJRz5tr/E4adcNvKxFx/+Rzx371/gjMtfQiLd+rv+iOoxfHyf9LAyJ+zwdP9B7/01yJWH8PRPP4nuNbcjNXcJ1t90GhYvOweZRceOud78rrfgpD+8ZeRy5XjbUXjLRetHbue+65bhoKPfPXKdwb1bsfPFe5Gae9jsxBApMTAwEPzZ9jSWlTlhhx+mT1euUd/2HqTnH4H0/KWItSVwyLHn4dXnfjzj29n50n1IH3AEOua9buRjz97zWRx1xt8CPJ8GEREpwsXGLMv1b0dqbtfI5dScJcjt2z7henu2bcAvvvVmbPzOe9G/4ykkEokxn3/l6Vtw8PLzRi6/+vyPkZxzKOYe9MboBm+Ej7O6AjyjqybjHx+hcNvaT8ucNIsdfvAwymyb5Dkk45/oOvfgE3HaZU8hnshgx+a78Oj3L8CKjzw88vnyUAGvPv9jLDv9KgDAUDGLF35xLU5ec1ukQ7fCx1ldc7kcUqlUU7fBM7r6E/oH6TBuW/tpmZNmscMP7tmYZak5S5Dbu3Xkcm7fNiQzh4y5Tjw5F/FEBgBw4JGrUC4Xsaf3f0Y+3/vrn2LuQSci2XkQACC7+wUM9r2EB29cifu/thz5vduw/ttvRb7/t7NQ9No0fCIe0sHSfFhpYYcuoTu4Z2OWzT30ZGR3/xrZPS8hNedQ/ObpW3DCuTeOuU6+/7dIdC6GiGDP9h7AldGWnD/y+d889T0cctz+97qbs/gNOOPyl0Yu3/+15Vj5kZ/z1ShERKQCFxuzLBaL49gzv4KN694D54aw5Pg/QebA5djyyxsAAIeddDFeeeZWbHn0BkgsjrZ4B45ffRPaqq+RHipmsfPFn2H5Wf8UMuM1L/QuSRrL0nxYaWGHLqE7ap6uPCqzcbpyDefZ8DWGfD7f9ElZmh3LggULsHv37qbG4MP8+fOxa9euhr/ex5xomA8fNIzBBx/z4YOVbctKhw9atq1mzUbHdKcr556NCD1992fwpYtT2PAfZzV9W8ViCe3tzU3Xn72zuZWtjye/7dy5EwsXLmzqNjQ8+a2/v9/EDyArLM2HlRZ26BK6g08QbRmt/9sn0Bqnhq+HlQ4rLM2HlRZ26BK6g3s2InTsmV/C8ndcC/fNO5u+rb6+PsybN6+p2zj1jwVra18tUu3t7YFH4IeVDisszYeVFnboErqDezZahIXdeAA7KBqW5sNKCzt0Cd3BxUaLyGazoYfgBTsoCpbmw0oLO3QJ3cHDKC2iXC6HHoIX7KBG+HpScOjj1vWwsm2xQ5fQHVxstIjQbw/sCzuoEbUWCRpeIumLlW2LHbqE7uBhlBbR7HslaMEOoulZ2bbYoUvoDi42WkTo422+sINoela2LXboErqDi40WEfp4my/sIJqelW2LHbqE7uBio0XEYjamih1E07OybbFDl9AdNr6LrwHpdDr0ELxgB9H0rGxb7NAldAcXGy0il8uFHoIX7CCanpVtix26hO7gYqNFlEql0EPwgh1E07OybbFDl9AdNl5A/BoQ+nibLxo7dvz6bjxzz2fgykPoOvHDOGLlp8Z8ftfLP8ej31+DjnmvBwAsPvpcLFj+Zxgq5bDh/65CeSgPVy7h4KPfgyNP+8sxX/viw/+I5+79C5xx+UtIpBfNWhO1Lo2PkUawQ5fQHVxstIjQx9t80dbhykN4+qefRPea25GauwTrbzoNi5edg8yiY8dcb37XW3DSH94ycjmXyyHWlsSKP/ox4okMykNFbPj3M7Hod96BA5acAgAY3LsVO1+8F6m5h81qU6tZsGABdu/e3fTtNHuW0fnz52PXrl1Nj6NZ2h4jjWKHLqE7bCzZXgPy+XzoIXihraNvew/S849Aev5SxNoSOOTY8/Dqcz+u+XX5fB4igngiAwBw5SLK5SKA/f/hPXvPZ3HUGX8LeDrVtlW7d++Gc66pP3v27Gn6NnwseHzQ9hhpFDt0Cd2hds8Gf9sZq1gshh6CF9o6cv3bkZrbNXI5NWcJ9mx/ZML19mzbgF98681IZQ7B0b/3dyjKYgCVPSPrv/1WZHe/gMNOvgQHLFkBAHj1+R8jOedQzD3ojZGNnY+R/bRtV82w0sIOXUJ3qF1sDP+204ydO3di4cKFTd2GrzeAapaWcYzWyHMd5h97CQb3bsXj/9+fojDwW0BiOOzEj+L1Ky4DADz2ww9hYOfzAIBivg/tyXl4y0Xro4uYZBsb/72ee/CJOO2ypxBPZLBj81149PsXYPkH7q1cN9aGt1y0HsXcHjz6/Quwb8eTSB+wFC/84lqcvOa26MYNPka0jcEXjS133glcfjkwNARcfDFw5ZVjP3/ffcDq1cDSpZXL73sfcNllgi1bgA99CHjlFSAWAy65pHI7AHD++cCzz1b+vWcPcMABwKZNs9MzExrnoxGhO9QuNnzIZDKhh+CNtpZGn+uQz+eBYhHH/P7VmHvwiSjl92H9t9+GhUt/D5lFx+KE9/zbyHWf+a/PIZ6cG2lHas4S5PZuHbmc27cNycwhY64zegwHHrkKT/30/0GibewuyfbUAVjwureh94V7sGjp72Ow7yU8eONKAEB+7zas//Zb8eYP349k5qAIa2ZO23bVKCsdgL6WoSHgssuAu+8GurqAFSuAc88Fli8fe723vQ340Y/2X87nMygUgK98BTjpJGDfPuDkk4Ezz6x87Xe+s/+6n/oUMG/e7PTMlLb5aFToDtPP2Qh9jMonbS3NPNchmTkYcw8+EQAQT85B56Kjkdv3mzHXc87ht0//AIcs/0AUwx8x99CTkd39a2T3vITyUAG/efoWLF52ztgx9/92ZA/Cnu09gCujLJ0oZHegmNsDABgqDmLnSz9D54KjMGfxG3DG5S/h7R97Cm//2FNIzl2ClR/9b3ULDUDfdtUoKx2AvpYNG4AjjwSOOAJIJIA1a4Db6thpl8/nccghlYUGAMyZAxx7LLBt29jrOQd897vABRf4H7sP2uajUaE7TO/ZKBQKoYfgjbaWRp/rUKg+12HY4J6Xse+3j+GAQ7vHfHz3ll8g0bkYnQuOjCagKhaL49gzv4KN694D54aw5Pg/QebA5djyyxsAAIeddDFeeeZWbHn0BkgsjrZ4B45ffROKxSJi+d/i8R9dAlceAlwZBx37Pixednak4/VN23bVKCsdgL6WbduAw0a9oKqrC3j44YnXW78eOOEE4NBDgS9/GTjooLEdL70EPPoocOqpY7/ugQeAgw4Cli3zP3YftM1Ho0J3mF5sUIQafK7Dsef918jnS4V+bLr1gzjmD7444XDJK099L/K9GsMOPHIVDjxy1ZiPHXbSxSP/fn33pXh996VjPt/b24s5i9+At1z4YM3bf/vHnvIzUKIAJnta0PjD/yedBLz8MpDJAHfcAbznPZXFx7D+fuD97wf+4R+AueOOjN58s969GuSP6cVG6GNUPmlrafS5Dsnqcx3KQ0Vs+sEHcchx5+Ogo1eP+bpyuYTfPns7Vn70v72P++m7P4MvXZzChv84q6nbKZfLeKHJk+T82TsTTX29D9q2q0ZZ6QD0tXR1AVu27L+8dWtl78VooxcQ55wDfOxjQC5X6SgWKwuND36w8sTR0Uol4Ac/ADZujGjwHmibj0aF7jD9nI3Qu4180tbS8HMdYhk45/DkHR9D58Kjcfgpn5hw2ztf/Bk6Fx6F1Nwls9LSCFdu7lUgWmjbrhplpQPQ17JiBfD888CLLwKFArBuXeUJoqO98sr+PSAbNgDlMjBnTgHOARddVHmuxic/OfG277kHOOaYyoJGK23z0ajQHab3bIT+5vqkraWZ5zrs2boe25+4GZkDj8OD36q8YmPZ268aOZTxytO3RHYI5dgzv4Tl77gW7pt3NnU7vb29WLSoudOPn/rHgrVN3ULztG1XjbLSAehriceB664DVq2qvDLlwguB444D1lY33ksvBW65Bfj61yvX7eioLEiKxQJ+8Qvg3/8deOMbgRNPrFz/7/++svcDqFxP+yEUbfPRqNAd0uzr9BvV3d3tenp6pvy8iDR9DgEf/yE0Ow4fHYCdFnb4Gwc79tPQ4es2NLRY6fDBR4cGs9EhIhudc92Tfc70no3Ozs7QQ/AmdIu35zoMlfFCW+s/1yH0fPjCDn1Ct1xxBQD8DKef3tztlMvz0fx7f3212RtoWuj58CV0h+nnbIR+S12frLSE/i3FFyvzwQ59rLTwsa5L6I6WOoxy55134vLLL8fQ0BAuvvhiXDnunLn33XcfVq9ejaXVc+aeddZZuOaaa6b92vPPPx/PVs+Zu2fPHhxwwAHYNOqcuRp2RwI6dkla2bVqtaOR08cfcMyfYtGiRVN+bT2nj+d8+L0NDS1WOnzgYZT6mTiMMjQ0hMsuuwx33303urq6sGLFCpx77rlYPu6cuW9729vwo+o5c3t7e2t+7XdGnTP3U5/6FOZpPWcu0TQaPX18b2/vtF8726ePJyKbWuYwyoYNG3DkkUfiiCOOQCKRwJo1a3BbjXPmDh+jqudrnXP47ne/iwuUPjU69PE2X9gRjUZPH9/Z2VnX187W6eMbpW0+mmGlhR26hO5omcXGtm3bcNioc+Z2dXVh2/iT7ANYv349TjjhBJx99tl44okn6v7aBx54AAcddBCWKT1nbrlcDj0EL9gRjclOH5/bt33C9YZPH7/xO+9F/46nUC6X6/ra2Tp9fKO0zUczrLSwQ5fQHS2z2JjsuN3402OfdNJJePnll/HYY4/hE5/4BM4///y6v/bmm29Wu1cDAAYHB0MPwQt2RGQGp4//3YsewutOvhSPfv+CSkcdXzubp49vhLr5aIKVFnboErqjZRYbXV1d2DLqnLlbt27FoePOmTt37tyRU7Kec845KJVK6O3trfm1pVIJP/jBD0YWJ0Stpt7Tx8cTlcfHgUeuQrlcRCm3q+bXDp8+/uBj3x9xBRFZ1TKLjRUrVuD555/Hiy++iEKhgHXr1uHccefMfeWVV0b2YmzYsAHOOSxcuLDm195zzz045phj0KX4nLnpdDr0ELxgRzQaPX38nPlLan5tK5w+Xtt8NMNKCzt0Cd3RMq9GicfjuO6667Bq1SoMDQ3hwgsvxHHHHYe11XPmXnrppbjlllvw9a9/HfF4HB0dHfjXf/1XiMiUXzts3bp1qg+hENXS6OnjRWTKrx0W5enjiei1oaXOszFTGl7nzfNsjMUOf+Ngx34aOnzdhoYWKx0+8Dwb9Wu582xcUTlfLk5v8ny5xWIR7e3tzQ+ISBlfp48vFot4ocnHiIbTxxORbnU9Z0NEzhKRZ0Vks4hcOcnnTxeRPhHZVP3zV/6HOnOx5k/Mr0ZHR0foIXjBDl1isbbQQ/DCynwAdlrYoUvojpqHUUSkDcBzAM4EsBXAIwAucM49Neo6pwP4tHPuXfXe8WwcRhkcHGz6G6xhdyRgp4Ud/sbBjv00dPi6DQ0tVjp88NGhwWx0THcYpZ5f/U8BsNk594JzrgBgHYDVPgcYlYGBgdBD8MZKi5YOEWnqTzqdbvo25s+fH/rboGY+mmWlA7DTwg5dQnfU85yNJQC2jLq8FcCpk1xvpYg8BmA7Kns5nvQwPiLvfPympOE3LiKiVlHPYkMm+dj4n7K/BPB651y/iJwD4IcAJpz3W0QuAXAJUDlJVy6XQ6FQQKFQAFA5d3upVEI+nwdQ2e1TLpdHznw2/DrhbDYLoHIMKhaLjazYkskk4vH4yOVSqYRcLof+/n4AQCKRQDKZRH9/P5xzaG9vRzKZRDabRblcRjweRyqVGrk8/JyPPXv2oFQqIRaLIZ1OI5/Po1gsQkSQyWSQz+dHGjKZzJgmANi3b99IU2dnZ0NN2WwWvb29SCQSSCQSDTUBwK5du5BOp5HL5WbcBFSe0Tx+nmbSlM1msW/fvjHzNNMmAMjlcmPmqdGmqba9Wk3D2+dU214z81RvEwDs3bu3qaZyuTzyhoW1Hk9TNQ1vF402DX99M/M0/PiY6c+I8U179+5tap6Gt81mtj3nHAYGBhr+uZdIJEa+p41ue0BzP/eGm4bH0OjPveGO2Xg8TdU0vG0183NvJo+nqJqy2WzN/3ObbZpOPc/ZWAngKufcqurlzwGAc+7qab7mJQDdzrneqa7D52zMjJUWDR0+WBmDhvmw0uHrNjS0WOnwgc/ZqF+zz9l4BMAyEVkqIgkAawDcPu4ODpbqr1oickr1dnc2N+zmhT5G5ZOVFisdVliZDysdgJ0WdugSuqPmYRTnXElEPg7gLgBtAG50zj0pIpdWP78WwHkA/peIlAAMAljjQi9HiYiISIW6TurlnLsDwB3jPrZ21L+vA3Cd36E1b/jYpQVWWqx0WGFlPqx0AHZa2KFL6A47Z72aROhvrk9WWqx0WGFlPqx0AHZa2KFL6A7Ti43hZ/laYKXFSocVVubDSgegp6XZ88h0dHSYOBeNlvloVugOle+NQkRE4fBcNOSb6T0boXcb+WSlxUqHFVbmw0oHYKvFAivzEbrD9GJj+IRDFlhpsdJhhZX5sNIB2GqxwMp8hO4wvdgIfYzKJy0tzR6DTaVSJo7jWqFlu2qWlQ7AVosFVuYjdIfp52xYOl6ooYXHce2xMhdWOgBbLRZYmY/QHab3bLS3t4cegjeWWkgPK9uVlQ7AVosFVuYjdIfpxUboY1Q+WWohPaxsV1Y6AFstFliZj9Adphcbo9+hs9VZaiE9rGxXVjoAWy0WWJmP0B2qn7Mx/DbaIWl5MuLwW6tT9Ord7uq5XujjpLVY2a6sdAC2WiywMh+hO9QuNvhkxLHicbVTZU4928yePXtwwAEHRD+YiFnZrqx0ALZaLLAyH6E7TB9GsSSVSoUeAo1iZT7YoY+lFguszEfoDi42WkTo4200lpX5YIc+llossDIfoTu42GgRoY+30VhW5oMd+lhqscDKfITu4GKjRcRinCpNrMwHO/Sx1GKBlfkI3WHju6hcs6fnFhEsXLiQp/lWJJ1Ohx6CF1o7dvz6bjzwL2/Cz79+PF5Y/5Upr9e3fSPuumYuBrbeM+bjrjyEB298C3753fPGfPzlnq/jgX95E/77m9149t6/jGTszdI6J69VVuYjdIeNp9kq5uvVMJZeWWNBLpcL/oQrHzR2uPIQnv7pJ9G95nak5i7B+ptOw+Jl5yCz6NgJ13vuvv8Xi5b+AQrFwpjPvdzzNXQuPBpD+X0jH9v58v149fkf43cvegixeBL5gVdnpWemNM7Ja5mV+QjdwT0bRA0olUqhh+CFxo6+7T1Izz8C6flLEWtL4JBjz8Orz/14wvVe7lmLg45ejUTngSgP7T8endu7DTs234muEz485vpbfnkDjnjzpxCLV86kmOxcHG1IgzTOyWuZlfkI3cHFBlEDQh//9EVjR65/O1Jzu0Yup+YsQW7f9rHX2bcdrz53Ow5708UAAIntP8HaM/d8Bked8bcQGduW3bUZu7f8Ag/ddDo2/N9V6Nu+McKKijvvBI4+GjjySOCaa6a+3iOPAG1twC23VOYklwNOOQU44QTguOOAv/7r/dd97DFg5UrgjW8E3v1uYO/eyDNe0zQ+RhoRusPGd5FoloU+/umLyo5JDheOP1trZUHxBUisDQCQTFT2Vrz6/E+QSB+IeYe8aeLNlkso5vbg1A//DEf93t/hsR9+KNJDk0NDwGWXAT/5CfDUU8DNN1f+nux6n/0ssGpV5XI6nUYyCdx7b2VhsWlTZdHy0EOVz198cWXh8vjjwHvfC1x7bWQJBKWPkQaE7uBzNogakM/nTRzH1diRmrMEub1bRy7n9m1DMnPImOvs/c2jeOy2jwAAitmdeHXznUikOtC3vQevbr4DO772U5RLOZTy+/Cr2y/C8ed+C8k5S3DQ0edCRHDAod2AxFAc7EUifWAkHRs2VPZoHHFE5fKaNcBttwHLl4+93j//M/D+91f2bgD75ySTqVwuFit/htdbzz4LnHZa5d9nnllZpHzhC5EkEHQ+RhoRuoOLDaIGFIvF0EPwQmPH3ENPRnb3r5Hd8xJScw7Fb56+BSece+OY65z2sSdH/v34j/4MqcW/i4OOejcOOurdOOr0zwMAdr38c7z08D/h+HO/BQA46Kh3YefL92PB60/DwM7n4YYKaO9YFFnHtm3AYYftv9zVBTz88MTr3HprZS/G8GJjeE6GhoCTTwY2b67sITn11Mrn3/AG4PbbgdWrge99D9iyJbIEgs7HSCNCd/AwClEDNLxJoA8aO2KxOI498yvYuO49+O9vnIyDj3kfMgcux5Zf3oAtv7xh8i+qI2PJCR/C4J6X8ItvrsBjt30Eb3jXv0TaP9kRmvF3d8UVwBe/WHm+xv7rVK7U1lY5hLJ1a2UvyRNPVD5/443A9ddXFiL79gGJRCTDpyqNj5FGhO6QUC+n7O7udj09PZHeh6WXi1ppsdKRz+eRTCaDjsHH99JHR7PjsNIx/jbWrweuugq4667K566+uvL35z63//pLl+5flPT2Auk0cP31RXzgA+1jbvfznwc6O4FPf3rs/T33HPDHf1xZjPhuaZaGMfig4bHuw2x0iMhG51z3ZJ/jYRSiBvAHkB9P3/0ZfOniFDb8x1lN3c5QaQht8bbaV5zGn73T7y6CFSuA558HXnwRWLIEWLcO+M//HHudF1/c/++PfAR417uAd7xjEDt2tKO9HTjgAGBwELjnnsqTSAHg1VeBxYuBchn4278FLr3U67BpnNCPEV9Cd3CxQdSAQqFQ+0qzIPSuUQBezkx7/333exhJc1KefxDH48B111WewDk0BFx4YeVlrGvXVj4/1SKhUCjgN78BPvzhyteVy8Af/mFlIQJUXtVy/fWVf7/vfcBHP+p12DSOlsd6s0J38DBKi7DSYqWjt7cXixZF9+TC2WJlPrR0+BiHj21Lw/dDwxh8sPJYn40OHkYh8iwz/LpEoqorrgCAn+H005u7nXJ5AZo//9JXm70BqrLyWA/dwVejEDUg9C5Jsss5G29pboWVx3roDh5GaRFWWqx0WNm1amU+tHTwMIquMfhg5bEe+jAK92wQERFRpLjYIGpAZ2dn6CGQUdy2dLEyH6E7uNggakDot2smu7ht6WJlPkJ3cLFB1IB8Ph96CGQUty1drMxH6A4uNoiIiChSXGwQNSD08U+yi9uWLlbmI3QHFxtEDSiXeS4Eiga3LV2szEfoDi42iBowODgYeghkFLctXazMR+gOLjaIiIgoUlxsEDUgnU6HHgIZxW1LFyvzEbqDb8RG3tT7due1rmfhFMdERLQf92yQN865mn927NhR8zqtIJvNhh4CGcVtSxcr8xG6g4sNIiIiihQXGzSrOjo6Qg/BCysdpA+3LV2szEfoDi42aFbFYjY2OSsdpA+3LV2szEfoDhvfRWoZAwMDoYfghZUO0ofbli5W5iN0BxcbREREFKm6FhsicpaIPCsim0Xkymmut0JEhkTkPH9DJEuSyWToIXhhpYP0aYVtS0Rq/qnneq2gFeajHqE7ai42RKQNwPUAzgawHMAFIrJ8iut9EcBdvgdJdsTjNk7tYqWD9GmFbauel7lns1kTL3NvhfmoR+iOevZsnAJgs3PuBedcAcA6AKsnud4nAHwfwKsex0fGhD5u6IuVDtLHyrbFDl1Cd9Sz1FkCYMuoy1sBnDr6CiKyBMB7AfwegBVT3ZCIXALgEgDo6upCLpdDoVBAoVAAUHkL3FKphHw+P3K5XC6PvIHM8OlWh09O0tHRgVgsNvJNTCaTiMfjY76puVwO/f39AIBEIoFkMon+/n4459De3o5kMolsNotyuYx4PI5UKjVyORaLIZ1OI5fLoVQqjVzO5/MoFosQEWQyGeTz+ZGGTCYTSRMA9Pb2IpFIIJFItGxTX1/fhHlqxabBwUEMDg5Oue21UlNvb29djyfNTcMdM/0Z4bsJqPzMaaYpn89jYGCg4Z97iURizLyGmqdsNjsyhmZ/lofc9vr6+mb0eNLa1NfXF9n/T/UsZKTWriwR+QCAVc65i6uX/wTAKc65T4y6zvcAfMU595CI3ATgR865W6a73e7ubtfT01NzgM0QkZbZVVeLlZa9e/di7ty5oYfRNCsdVrYrLR0+xuFj29Lw/bDyGGFH/URko3Oue7LP1bNnYyuAw0Zd7gKwfdx1ugGsqz7hZxGAc0Sk5Jz74cyHS5YN/9bV6qx0kD5Wti126BK6o57nbDwCYJmILBWRBIA1AG4ffQXn3FLn3OHOucMB3ALgY1xo0GSGdxm2OisdpI+VbYsduoTuqLlnwzlXEpGPo/IqkzYANzrnnhSRS6ufXxvxGImIiKiF1fVaGOfcHQDuGPexSRcZzrmPND+s+tTzOu16rhP62OZrSehdeb5Y6SB9rGxb7NAldEdLv4C41iIhn88HP5EJjWVlPqx0kD5Wti126BK6w/TpykMfo6KJrMyJlQ7Sx8q2xQ5dQneYXmzw8Ig+VubESgfpY2XbYocuoTta+jBKLe3t7aGHQONYmRMrHeSfhvf8mD9/fughmHmMsMMP04uN0MeoaCIrc2Klg/zy8dujhhNy+WDlMcIOP0wfRhk+xSrpYWVOrHQQRcXKY4QdfphebAy/ZwLpYWVOrHQQRcXKY4Qdfpg+jBL6LXVpIitzYqWjVfCcOq3HymOEHZ7uP+i9RyyVSoUeAo1jZU6sdLSKWouEXC7HOVHGynywww/Th1FCH6OiiazMiZUOKzgf+liZE3b4YXqxEfoYFU1kZU6sdFjB+dDHypywww/Ti41YzHReS7IyJ1Y6rOB86GNlTtjh6f6D3nvE0ul06CHQOFbmxEqHFZwPfazMCTv8ML3YyOVyoYdA41iZEysdVnA+9LEyJ+zww/SrUUqlUugh0DhW5qRVOl4rLxltlfl4LbEyJ+zww/SejdDHqGgiK3PSKh3OuWn/7Ny5s+Z1tC80gNaZj9cSK3PCDk/3H/TeIxb6GBVNZGVO2KGLlQ5LrMwJO/wwvdjI5/Ohh0DjWJkTduhipcMSK3PCDj9MLzaKxWLoIdA4VuaEHbpY6bDEypywww/Ti416nvhGs8vKnLBDFysdlliZE3b4YXqxkclkQg+BxrEyJ+zQxUqHJVbmhB1+mF5shD5GRRNZmRN26GKlwxIrc8IOP0wvNgqFQugh0DhW5oQduljpsMTKnLDDD9OLDSIiIgrP9GIj9DEqmsjKnLBDFysdlliZE3b4YXqxEXq3EU1kZU7YoYuVDkuszAk7/OBig2aVlTlhhy5WOiyxMifs8MP0YoOIiIjCM73Y6OzsDD0EGsfKnLBDFysdlliZE3b4YXqxEfotdWkiK3PCDl2sdFhiZU7Y4YfpxUbok5jQRFbmhB26WOmwxMqcsMMP04sNIiIiCs/0YiP0MSqayMqcsEMXKx2WWJkTdvhherFRLpdDD4HGsTIn7NDFSoclVuaEHX6YXmwMDg6GHgKNY2VO2KGLlQ5LrMwJO/wwvdggIiKi8EwvNtLpdOgh0DhW5oQduljpsMTKnLDDj3jQeycAgIh4uZ5zzsdwiIiIvDK9ZyObzYYeQl2cczX/7Nixo+Z1WkGrzEkt7NDFSoclVuaEHX6YXmwQERFReKYXGx0dHaGH4I2VFnbowg6KipU5YYcfphcbsZidPCst7NCFHRQVK3PCDk/3H/TeIzYwMBB6CN5YaWGHLuygqFiZE3b4YXqxQUREROGZXmwkk8nQQ/DGSgs7dGEHRcXKnLDDD9OLjXjczmlErLSwQxd2UFSszAk7/DC92Ah9jMonKy3s0IUdFBUrc8IOP+pabIjIWSLyrIhsFpErJ/n8ahH5lYhsEpEeEXmr/6ESERFRK6q5X0VE2gBcD+BMAFsBPCIitzvnnhp1tf8CcLtzzonI8QC+C+CYKAY8E4lEIvQQvLHSwg5d2EFRsTIn7PCjnj0bpwDY7Jx7wTlXALAOwOrRV3DO9bv958vuBKDi3Nmhv7k+WWlhhy7soKhYmRN2+FHPYmMJgC2jLm+tfmwMEXmviDwD4McALvQzvOb09/eHHoI3VlrYoQs7KCpW5oQdftTz9NTJ3mp0wp4L59ytAG4VkdMAfAHAH0y4IZFLAFwCAF1dXcjlcigUCigUCgCAzs5OlEol5PP5kcvlchmDg4MA9r9F7vAbynR0dCAWi4088SWZTCIej49czmazyOVyI9/kRCKBZDKJ/v5+OOfQ3t6OZDKJbDaLcrmMeDyOVCo1cjkWiyGdTiOXy6FUKo1czufzKBaLEBFkMhnk8/mRhkwmE0lTX1/fSEMikWjZpr6+vgnz1IpNg4ODGBwcnHLba5WmXC6H3t7euh5PmpuGHx8z/RmhsQmoPJmv0Z97Wpqy2ezIttXsz/KQTcPblu//n2a7qa+vL7L/n+p58qnUerdQEVkJ4Crn3Krq5c8BgHPu6mm+5kUAK5xzvVNdp7u72/X09NQcYDP27t2LuXPnRnofs8VKCzt0YYc+ItIy7+I8HStzwo76ichG51z3ZJ+r5zDKIwCWichSEUkAWAPg9nF3cKSISPXfJwFIANjZ3LCbF/okJj5ZaWGHLuygqFiZE3b4UXOx4ZwrAfg4gLsAPA3gu865J0XkUhG5tHq19wN4QkQ2ofLKlfOdgqV56GNUPllpYYcu7KCoWJkTdvhR1ynFnHN3ALhj3MfWjvr3FwF80e/QmqdgveONlRZ26MIOioqVOWGHH6bPINre3h56CN5YaWGHLuygqFiZE3b4YXqxEfoYlU9WWtihCzsoKlbmhB1+mF5sDL9cxwIrLezQhR0UFStzwg4/TC82yuVy6CF4Y6WFHbqwg6JiZU7Y4YfpxUbot9T1yUoLO3RhB0XFypywww/Ti41UKhV6CN5YaWGHLuygqFiZE3b4YXqxEfoYlU9WWtihCzsoKlbmhB1+mF5shD5G5ZOVFnbowg6KipU5YYcfphcbsZidPCst7NCFHRQVK3PCDk/3H/TeIzb8jnUWWGlhhy7soKhYmRN2+GF6sZHL5UIPwRsrLezQhR0UFStzwg4/TC82SqVS6CF4Y6WFHbqwg6JiZU7Y4YfpxUboY1Q+WWlhhy7soKhYmRN2eLr/oPcesdDHqHyy0sIOXdhBUbEyJ+zww/RiI5/Phx6CN1Za2KELOygqVuaEHX6YXmwUi8XQQ/DGSgs7dGEHRcXKnLDDD9OLDREJPQRvrLSwQxd2UFSszAk7/DC92MhkMqGH4I2VFnbowg6KipU5YYcfphcboY9R+WSlhR26sIOiYmVO2OGH6cVGoVAIPQRvrLSwQxd2UFSszAk7/DC92CAiIqLwTC82Qh+j8slKCzt0YQdFxcqcsMMP04uN0LuNfLLSwg5d2EFRsTIn7PCDi40WYaWFHbqwg6JiZU7Y4YfpxQYRERGFZ3qx0dnZGXoI3lhpYYcu7KCoWJkTdvhherER+i11fbLSwg5d2EFRsTIn7PDD9GIj9ElMfLLSwg5d2EFRsTIn7PDD9GKDiIiIwjO92Ah9jMonKy3s0IUdFBUrc8IOP0wvNsrlcugheGOlhR26sIOiYmVO2OGH6cXG4OBg6CF4Y6WFHbqwg6JiZU7Y4YfpxQYRERGFZ3qxkU6nQw/BGyst7NCFHRQVK3PCDj9MLzaIiIgoPNOLjWw2G3oI3lhpYYcu7KCoWJkTdvhherFBRERE4ZlebHR0dIQegjdWWtihCzsoKlbmhB1+mF5sxGJ28qy0sEMXdlBUrMwJOzzdf9B7j9jAwEDoIXhjpYUdurCDomJlTtjhh+nFBhEREYVnerGRTCZDD8EbKy3s0IUdFBUrc8IOP0wvNuLxeOgheGOlhR26sIOiYmVO2OGH6cVG6GNUPllpYYcu7KCoWJkTdvhherFBRERE4ZlebCQSidBD8MZKCzt0YQdFxcqcsMMPLjZahJUWdujCDoqKlTlhhx91LTZE5CwReVZENovIlZN8/oMi8qvqnwdF5AT/Q525/v7+0EPwxkoLO3RhB0XFypyww4+aiw0RaQNwPYCzASwHcIGILB93tRcBvN05dzyALwD4hu+BEhERUWuq57UwpwDY7Jx7AQBEZB2A1QCeGr6Cc+7BUdd/CECXz0E2KvRuI5+stLBDF3ZQVFplTkTEy+0457zcTlRCz0c9i40lALaMurwVwKnTXP8iAD9pZlC+hD6JiU9WWtihCzsoKq0yJ7UWCSKifiFRj9DzUc9iY7Jl36TfeRE5A5XFxlun+PwlAC4BgK6uLuRyORQKBRQKBQBAZ2cnSqUS8vn8yOVyuYzBwUEAQDqdBgBks1kAlXexi8ViI68fTiaTiMfjI5cHBwdx4IEHjhyrSiQSSCaT6O/vh3MO7e3tSCaTyGazKJfLiMfjSKVSI5djsRjS6TRyuRxKpdLI5Xw+j2KxCBFBJpNBPp8fachkMpE0bd++HfPmzUMikUAikWjZpr6+PixevHjMPLViUy6Xw8KFC6fc9lqlaffu3SM/hGo9njQ3vfLKK5g3b96Mf0ZobAIq50Ro9Oeelqbe3t6Rdxpt9md5yCYA6O3t9f7/02w39fX1YcmSJZH+nzsdqWNVtxLAVc65VdXLnwMA59zV4653PIBbAZztnHuu1h13d3e7np6emgNsRm9vLxYtWhTpfcwWKy3s0IUd+lj5TdrKnHA+6iciG51z3ZN9rp5XozwCYJmILBWRBIA1AG4fdwevA/ADAH9Sz0JjtrS3t4cegjdWWtihCzsoKpwTXULPR83DKM65koh8HMBdANoA3Oice1JELq1+fi2AvwKwEMDXqk+2KU21uplNoY9R+WSlhR26sIOiwjnRJfR81PXOLM65OwDcMe5ja0f9+2IAF/sdWvOy2SxSqVToYXhhpYUdurCDosI50SX0fJg+g2i5XA49BG+stLBDF3ZQVDgnuoSeD9OLjdBvqeuTlRZ26MIOigrnRJfQ82F6sWFpF56VFnbowg6KCudEl9DzYXqxMfzaYAustLBDF3ZQVDgnuoSeD9OLjdDHqHyy0sIOXdhBUeGc6BJ6PkwvNmIxO3lWWtihCzsoKpwTXULPh+mtYfhUqxZYaWGHLuygqHBOdAk9H6YXG7lcLvQQvLHSwg5d2EFR4ZzoEno+TC82SqVS6CF4Y6WFHbqwg6LCOdEl9HyYXmyEPkblk5UWdujCDooK50SX0PNhemsIfYzKJyst7NCFHRQVzokuoefD9GIjn8+HHoI3VlrYoQs7KCqcE11Cz4fpxUaxWAw9BG+stLBDF3ZQVDgnuoSeD9OLjerb3ZtgpYUdurCDosI50SX0fJhebGQymdBD8MZKCzt0YQdFhXOiS+j5ML3YCH2MyicrLezQhR0UFc6JLqHnw/Rio1AohB6CN1Za2KELOygqnBNdQs+H6cUGERERhWd6sRH6GJVPVlrYoQs7KCqcE11Cz4fpxUbo3UY+WWlhhy7soKhwTnQJPR9cbLQIKy3s0IUdFBUNc7JgwQKISFN/ADR9GwsWLAj8nQg/H/Gg905ERBSR3bt3wznX1G309vZi0aJFTd1G6HNcaGB6z0ZnZ2foIXhjpYUdurCDomJlTtjhh+nFRui31PXJSgs7dGEHRcXKnLDDD9OLjdAnMfHJSgs7dGHH7PL1HIFW0CpzUkurdNTaZubOnVv39hcFPmeDiGiW1PP8AR/PEaDXnlrblog0/fyVZpjesxH6GJVPVlrYoQs79LHSwg4azfRio1wuhx6CN1Za2KELO/Sx0sIOGs30YmNwcDD0ELyx0sIOXdihj5UWdvhj4XwhfM4GERGRYhbOF2J6z0Y6nQ49BG+stLBDF3boY6WFHbqE7jC92CAiIqLwTC82stls6CF4Y6WFHbqwQx8rLezQJXSH6cUGERERhWd6sdHR0RF6CN5YaWGHLuzQx0oLO3QJ3WF6sRGL2cmz0sIOXdihj5UWdugSusPGd3EKAwMDoYfgjZUWdujCDn2stLBDl9AdphcbREREw+68Ezj6aODII4Frrpn4+WeeAVauBJJJ4Mtfru9rN20C3vxm4MQTge5uYMOGKAtqj2eYthbTi41kMhl6CN5YaWGHLuzQx0qLto6hIeCyy4Cf/AR46ing5psrf4+2YAHwT/8EfPrT+z+WTCan/drPfAb467+u/Ef9N39TuayxZXg+QrWYXmzE43ZOkGqlhR26sEMfKy3aOjZsqPwmf8QRQCIBrFkD3Hbb2OssXgysWAG0t+//WDwen/ZrRYC9eyv/7usDDj1UZ8vwfIRq0bU1eDYwMBD8Gbi+WGlhhy7s0MdKi7aObduAww7bf7mrC3j44dpfNzAwgG3bOqb82n/4B2DVqsoehHIZePBBr8OeVCMtw/Mx3ddG2WJ6zwYREREATPbWIvW+1cd0X/v1rwNf/SqwZUvl74suanyM9WrFFtOLjUQiEXoI3lhpYYcu7NDHSou2jq6uyn+iw7Zure8wQSKRmPZr//Vfgfe9r/LvD3xgdp4g2kjL8HyEauFio0VYaWGHLuzQx0qLto4VK4DnnwdefBEoFIB164Bzz639dYlEYtqvPfRQ4P77K/++915g2bLoGoY10jI8H6FaTD9no7+/H6lUKvQwvLDSwg5d2KGPlRZtHfE4cN11leckDA0BF14IHHccsHZt5fOXXgq88krlJZ979wKxWOU5DA88MIClS1OTfi0AfPObwOWXA6USkEoB3/iGzpb/83/a8cwzwNy5k39t1C3iJjuAMwu6u7tdT09PpPfR29uLRYsWRXofs8VKCzt0YYc+Vlo0dIgImv0/zkdHs+NolQ4R2eic657sc6b3bGjbjdcMKy3s0IUd+lhpCd1xxRUA8DOcfnpztzM0dADa2podzVcb/korHXUtNkTkLAD/CKANwA3OuWvGff4YAN8GcBKAv3DOfXnircw+bSeVaYaVFnbowg59rLRY6RDR8dTG+++/L/QQkEw2flis5mEUEWkD8ByAMwFsBfAIgAucc0+Nus5iAK8H8B4Au+tZbMzGYZSdO3di4cKFkd7HbLHSwg5d2KGPlRYNHT4OP/jo8DGOZs3GGKY7jFLPku0UAJudcy845woA1gFYPfoKzrlXnXOPACg2PVqPQk+uT1Za2KELO/Sx0sIOGq2excYSAKNelYut1Y+p1z76nLMtzkoLO3Rhhz5WWthBo9XznI3JzkvW0FJPRC4BcAkAdHV1IZfLoVAooFAoAAA6OztRKpWQz+dHLpfLZQwODgIA0uk0ACCbzQIAOjo6EIvFRt46N5lMIh6Pj3kr3Vwuh/7+fgCVJywlk0n09/fDOYf29nYkk0lks1mUy2XE43GkUqmRy7FYDOl0GrlcDqVSaeRyPp9HsViEiCCTySCfz480ZDKZyJqKxSISiQQSiUTLNhUKBcRisTHz1IpNsVgMg4ODU257rdJULpfR29tb1+NJc9Pw42OmPyM0NrW1tWFgYKDhn3uamoa3rWZ/ljfaBFRehdFM0/C21ezP8n379gWfp9n4P3cq9TxnYyWAq5xzq6qXPwcAzrmrJ7nuVQD6tTxnY9euXViwYEGk9zFbrLSwQxd26GOlRUOHj+cp+OjgczbqO4zyCIBlIrJURBIA1gC43ecAo1Iul0MPwRsrLezQhR36WGlhB41W8zCKc64kIh8HcBcqL3290Tn3pIhcWv38WhE5GEAPgLkAyiJyBYDlzrm90Q29Nm1vcdwMKy3s0IUd+lhp0dIh9b5DWYTmz58f+X3U01nPdaLa+1HX1uCcuwPAHeM+tnbUv18B0OV3aM3TdKrcZllpYYcu7NDHSouGDh//cWo4BFKPWmPM5XJB50TH2UoiMvykFgustLBDF3boY6XFSocVoefD9GLD0rE2Ky3s0IUd+lhpsdJhRej5ML3YiMXs5FlpYYcu7NDHSouVDitCz4fprWH4NcIWWGlhhy7s0MdKi5UOK0LPh+nFRi6XCz0Eb6y0sEMXduhjpcVKhxWh58P0YqNUKoUegjdWWtihCzv0sdJipcOK0PNherER+hiVT1Za2KELO/Sx0mKlw4rQ82F6awh9jMonKy3s0IUd+lhpsdJhRej5ML3YGH5zGQustLBDF3boY6XFSocVoefD9GKjWCyGHoI3VlrYoQs79LHSYqXDitDzYXqxoeGc+L5YaWGHLuzQx0qLlQ4rQs+H6cVGJpMJPQRvrLSwQxd26GOlxUqHFaHnw/RiI/QxKp+stLBDF3boY6XFSocVoefD9GKjUCiEHoI3VlrYoQs79LHSYqXDitDzYXqxQUREROGZXmyEPkblk5UWdujCDn2stFjpsCL0fJhebITebeSTlRZ26MIOfay0WOmwIvR8cLHRIqy0sEMXduhjpcVKhxWh58P0YoOIiIjCM73Y6OzsDD0Eb6y0sEMXduhjpcVKhxWh58P0YiP0W+r6ZKWFHbqwQx8rLVY6rAg9H6YXG6FPYuKTlRZ26MIOfay0tEqHiEz7p57rhD4VeD1Cz4fpxQYREdF0nHPT/tmxY0fN6zjnQmeoZ3qxEfoYlU9WWtihCzv0sdLCDl1Cd5hebJTL5dBD8MZKCzt0YYc+VlrYoUvoDtOLjcHBwdBD8MZKCzt0YYc+VlrYoUvoDtOLDSIiIgrP9GIjnU6HHoI3VlrYoQs79LHSwg5dQneYXmwQERFReKYXG9lsNvQQvLHSwg5d2KGPlRZ26BK6w/Rig4iIiMIzvdjo6OgIPQRvrLSwQxd26GOlhR26hO4wvdiIxezkWWlhhy7s0MdKCzt0Cd1h47s4hYGBgdBD8MZKCzt0YYc+VlrYoUvoDtOLDSIiIgrP9GIjmUyGHoI3VlrYoQs79LHSwg5dQneYXmzE4/HQQ/DGSgs7dGGHPlZa2KFL6A7Ti43Qx6h8stLCDl3YoY+VFnboErrD9GKDiIiIwjO92EgkEqGH4I2VFnbowg59rLSwQ5fQHVxstAgrLezQhR36WGlhhy6hO8Q5F+aORXYAeDniu1kEoDfi+5gtVlrYoQs79LHSwg5dZqPj9c65Ayf7RLDFxmwQkR7nXHfocfhgpYUdurBDHyst7NAldIfpwyhEREQUHhcbREREFCnri41vhB6AR1Za2KELO/Sx0sIOXYJ2mH7OBhEREYVnfc8GERERBdZyiw0RGRKRTSLymIj8UkTeEnpMs01EPiwiz1f/fHiK65xW/f6UROS82R7jVJod+6j53yQit8/OqGurs+uTIvKUiPxKRP5LRF4/2+Ospc6OS0Xk8eoc/LeILJ/tcdZST8eo654nIk5EZvxMfRG5V0TuEJH2xkc75vaaetyKyOki0jfqMfJXdX6dqo5Rt7Oi+piv+za0tYjI6upjfpOI9IjIW+v8Om0dH6x2/EpEHhSRE2Z0A865lvoDoH/Uv1cBuD/0mGa5fwGAF6p/z6/+e/4k1zscwPEA/g3AeaHH7Wvso+dfy58ZdJ0BIF399/8C8J3QY2+wY+6of58L4M7QY2+ko3rdOQB+DuAhAN0N3t+tAN7jaexNPW4BnA7gR63eUb2NNgD3ArhjprehqQVABvufsnA8gGdatOMtw48jAGcDeHgmX99yezbGmQtgNwCISKb62+Ivq791ra5+vFNEflzdE/KEiJxf/fjJInK/iGwUkbtE5JAoBigi14jI0yKyo/rbU67Jm1wF4G7n3C7n3G4AdwM4a/yVnHMvOed+BaDc6B218tinE7DrZ865bPXiQwC6mrnTgB17R13sBNDUE79CdVR9AcCXADRznz8B8MEmvn7EdNu+iPy5iDxS/c3y8z7ubxxtHZ8A8H0ArzYwBDUtzrl+V/0fGjN/vGjqeLD6eAIa+PnViu+d2yEimwCkABwC4PeqH88BeK9zbq+ILALwkFR2s58FYLtz7p0AICLzqrul/hnAaufcjuoC5O8AXOhzoCLyu6isAE+qfughABN26YrIn2PyDernzrn/Pe5jSwBsGXV5a/VjXikee0pEegCUAFzjnPvhTL5YUddFqPwgaUjoDhG5DMAnASSw/zE4YyE7RORNAA5zzv1IRD7dwPCHrQFwsojMHbcQG76fB1DZgzLep51z99RzByLyDgDLAJwCQADcLiKnOed+PsnVV4rIYwC2V+/jyVbrEJElAN6Lyra1os7xj6ampXrd9wK4GsBiAO+sP0NXxygz/vnViouNQefciQAgIisB/JuIvAGVb9Lfi8hpqKzclgA4CMDjAL4sIl9EZffiA9XrvwHA3SICVHbX/SaCsZ4C4IfOucHqeG9DZVf6ptFXcs5dC+DaOm9TJvlYFC8p0jr21znntovIEQDuFZHHnXO/nsHXB+8SkT8G0A3g7XXe/mSCdjjnrgdwvYj8EYC/xCQLhDoF6RCRGICvAvjIzIY77o5E3ghgHoD/BPB+AN+ecMfOva2Z+6h6R/XPo9XLGVT+gxj/H8IvUTlldL+InAPgh9XrTUthxz8A+Kxzbqj6M7puClvgnLsVwK3V/5++AOAPat24xo7quM5AZbFR13NPhrXiYmOEc259dS/GgQDOqf59snOuKCIvAUg5554TkZOrn79aRH6KynGwJ51zKyMeYgljn4Qbq35sjBn+1rYVleOyw7oA3NfUKCencuzOue3Vv18QkfsAvAnATBYbQbtE5A8A/AWAtzvn8nWPeiIt87MOwNdrXGc6oTrmoPILx33V/8wORuU3unOdcz0zGP8VqCxaXgTweUzyH4KP3z5RWUBd7Zz7l3G3fRmAP61ePGf48QEAzrk7RORrIrLIOVfrPTFUdaCyGF9XnZtFAM4RkVKdezKvgKKWcXPycxH5nVack+oveccDuAHA2c65nXXefsVMnuCh4Q/GPkH0GFTeWKYNwOUA/rn68TNQ+U3mcACHorLoAID3oLLSTwDYDGBl9ePtAI6LYKxvRGXPShqVY3VPAji+ydtcgMrGN7/650UAC6a5/k1o7MlA6sZe/Zpk9d+LADwPYHmrdGH/wmhZK29bo8cP4N0AelqxY9zX3IcZPkEUlV9uNgNor15+HsChzc5t9bbGb/vvAPAwgEz18hIAiyf5uoOx/8mIpwD4n+HLrdQx3W20WguAI0fNyUkAtrXinAB4XXVMb2nofn0Mfjb/ABhCZRfrJgCPAXhn9eOLAKwH0IPKyutpVBYbqwD8qnr9R4Z/oAA4EZXdRI+h8gPuTyMa72Wo/DB9AsD/9nSbF1YnfTOAj476+N8AOLf67xWo/IY3AGAnKntyWnrsqDwb+vHqnD0O4KIWm5N7APx21PZ7e4tuW/9YfcxsAvAzNLlQD9Ux7vr3YeaLjb8EcOW42/5kk+Oe8nGLyi9Uj1f/rAfwO5N8/cerc/MYKs9/qfkfg8aOcbd1E+pfbKhrAfDZUY+X9QDe2qIdN6DygoxN1T8z+iWDZxAlIiKiSLX6S1+JiIhIOS42iIiIKFJcbBAREVGkuNggIiKiSHGxQURERJHiYoOIiIgixcUGERERRYqLDSIiIorU/w8xBUsIrFyhXwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_scores(CONFIGS_DENOISING_AND_SPARSE, denoising_and_sparse_scores, metric=\"tnr95\", savefile=\"plots/approach4/boxplot_kde_denoising_and_sparse_tnr95.pdf\", figsize=(9, 8), label_below=[], colors = [\"black\"] + [\"darkgoldenrod\"] * 5 + [\"blue\"] * 4)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3.10.4 ('pytorch-gpu')", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.4" }, "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "17cd5c528a3345b75540c61f907eece919c031d57a2ca1e5653325af249173c9" } } }, "nbformat": 4, "nbformat_minor": 2 }