Buckets:
| { | |
| "cells": [ | |
| { | |
| "cell_type": "code", | |
| "execution_count": 71, | |
| "id": "037feef3", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "The autoreload extension is already loaded. To reload it, use:\n", | |
| " %reload_ext autoreload\n", | |
| "/home/skibidi/PreThesis/[2]CLASSIFICATION\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "%load_ext autoreload\n", | |
| "%autoreload 2\n", | |
| "\n", | |
| "import json\n", | |
| "import math\n", | |
| "import os\n", | |
| "import cmd\n", | |
| "import random\n", | |
| "import subprocess\n", | |
| "import sys\n", | |
| "import time\n", | |
| "import warnings\n", | |
| "import numpy as np\n", | |
| "import torch\n", | |
| "import torch.nn as nn\n", | |
| "import torch.nn.functional as F\n", | |
| "import torchvision.models as models\n", | |
| "import albumentations as A\n", | |
| "import cv2\n", | |
| "import nibabel as nib\n", | |
| "from pathlib import Path\n", | |
| "from torch.nn.utils import clip_grad_norm_\n", | |
| "from torch.utils.data import DataLoader, Dataset\n", | |
| "from scipy.stats import bootstrap\n", | |
| "from sklearn.metrics import average_precision_score, roc_auc_score\n", | |
| "from tqdm import tqdm\n", | |
| "warnings.filterwarnings('ignore')\n", | |
| "\n", | |
| "PROJECT_ROOT = Path.cwd()\n", | |
| "if str(PROJECT_ROOT) not in sys.path:\n", | |
| " sys.path.insert(0, str(PROJECT_ROOT))\n", | |
| "print(PROJECT_ROOT)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 72, | |
| "id": "7afd1109", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[cfg] TEACHER resenc | STUDENT resnet50 | USE_DISTILL False\n", | |
| "[KD] grid 128 <- guru resenc 64 kanal | murid e0 64 kanal | bobot 1.00\n", | |
| "[KD] grid 64 <- guru resenc 128 kanal | murid e1 256 kanal | bobot 1.00\n", | |
| "[KD] grid 32 <- guru resenc 256 kanal | murid e2 512 kanal | bobot 1.00\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "CONFIG = {\n", | |
| " 'INIT_SEED': 42,\n", | |
| " 'EPOCHS': 50,\n", | |
| " 'BATCH_SIZE': 8,\n", | |
| " 'WORKERS': 2,\n", | |
| " 'WEIGHT_DECAY': 1e-5,\n", | |
| " 'GRAD_CLIP': 1.0,\n", | |
| " 'SMOOTHING': 0.1,\n", | |
| " 'DROPOUT': 0.4,\n", | |
| " 'SLICE_CONTEXT': 3,\n", | |
| " 'PATIENCE': 15,\n", | |
| " 'LR_ENCODER': 1e-5,\n", | |
| " 'LR_CLS': 1e-4,\n", | |
| " 'LR_KD': 1e-4,\n", | |
| " 'MIN_LR': 1e-7,\n", | |
| " 'EPS': 1e-6,\n", | |
| " 'WARMUP_STEPS': 1500,\n", | |
| " 'BOOTSTRAP_DRAWS': 15000,\n", | |
| " # CLASSIFICATION\n", | |
| " 'ALPHA_CLS': 1.0,\n", | |
| " 'POS_WEIGHT': 1.3666,\n", | |
| " 'STUDENT': 'resnet50', # 'resnet50' | 'efficientnetb3' | 'swinv2tiny'\n", | |
| " # DISTILLATION\n", | |
| " 'TEACHER': 'resenc', # 'resenc' | 'umamba' | 'transunet'\n", | |
| " 'GAMMA_DISTILL': 5.0, \n", | |
| " 'GRID_WEIGHTS': {128: 1.00, 64: 1, 32: 1.0, 16: 1.0},\n", | |
| " 'DISTILL_GRIDS': (128, 64, 32),\n", | |
| " 'USE_DISTILL': False,\n", | |
| " 'GEM_P_INIT': 3.0,\n", | |
| " 'GEM_P_MIN': 1.0,\n", | |
| " 'GEM_P_MAX': 8.0,\n", | |
| " 'KD_STANDARDIZE': True,\n", | |
| " # AUGMENTATION,\n", | |
| " 'AUG': {\n", | |
| " 'hflip_p': 0.5,\n", | |
| " 'affine_p': 0.7,\n", | |
| " 'affine_scale': (0.8, 1.2),\n", | |
| " 'affine_rotate': (-15, 15),\n", | |
| " 'gamma_limit': (80, 120),\n", | |
| " 'gamma_p': 0.3,\n", | |
| " 'brightness_limit': 0.15,\n", | |
| " 'contrast_limit': 0.15,\n", | |
| " 'bc_p': 0.5,\n", | |
| " 'noise_std': (0.01, 0.03),\n", | |
| " 'noise_p': 0.2,\n", | |
| " 'blur_limit': (3, 3),\n", | |
| " 'blur_p': 0.15,\n", | |
| " }\n", | |
| "}\n", | |
| "\n", | |
| "IS_RESUME = True\n", | |
| "if CONFIG['TEACHER'] not in ('resenc', 'umamba', 'transunet'):\n", | |
| " raise ValueError('TEACHER UNKNOWN %r' % (CONFIG['TEACHER'],))\n", | |
| "LOG_NAME = f\"train.log\"\n", | |
| "IS_KAGGLE = Path(\"/kaggle/input\").is_dir()\n", | |
| "IS_VAST = Path.cwd() == Path(\"/workspace\")\n", | |
| "IS_LOCAL = Path.cwd().parent == Path('/home/skibidi/PreThesis')\n", | |
| "DATASET = 'datasets/preprocessed_data_unzipped_he'\n", | |
| "\n", | |
| "if IS_KAGGLE:\n", | |
| " INPUT_ROOT = '/kaggle/input'\n", | |
| " WORKSPACE = os.path.join(INPUT_ROOT, 'phase2')\n", | |
| " OUTPUT_DIR = os.path.join(INPUT_ROOT, 'phase_2_out')\n", | |
| " DATASET_DIR = os.path.join(INPUT_ROOT, DATASET)\n", | |
| "elif not IS_KAGGLE and IS_VAST:\n", | |
| " INPUT_ROOT = '/workspace'\n", | |
| " WORKSPACE = os.path.join(INPUT_ROOT, 'phase_2')\n", | |
| " OUTPUT_DIR = os.path.join(INPUT_ROOT, 'phase_2_out')\n", | |
| " DATASET_DIR = os.path.join(INPUT_ROOT, DATASET)\n", | |
| "else:\n", | |
| " INPUT_ROOT = '/home/skibidi/PreThesis'\n", | |
| " WORKSPACE = os.path.join(INPUT_ROOT, '[2]CLASSIFICATION')\n", | |
| " OUTPUT_DIR = WORKSPACE\n", | |
| " DATASET_DIR = os.path.join('..', DATASET)\n", | |
| "os.makedirs(WORKSPACE, exist_ok=True)\n", | |
| "os.makedirs(OUTPUT_DIR, exist_ok=True)\n", | |
| "\n", | |
| "if IS_KAGGLE or IS_VAST:\n", | |
| " packages = ['scikit-learn', 'opencv-python', 'albumentations', 'matplotlib', 'nibabel', 'numpy', 'torch', 'pytorch-msssim', 'scikit-image', 'tqdm', 'torch-lr-finder', 'packaging', 'ninja']\n", | |
| " if CONFIG['TEACHER'] == 'resenc':\n", | |
| " packages.extend(['dynamic-network-architectures'])\n", | |
| " if CONFIG['TEACHER'] == 'umamba':\n", | |
| " packages.extend(['causal-conv1d --no-build-isolation', 'mamba-ssm --no-build-isolation'])\n", | |
| " if CONFIG['TEACHER'] == 'transunet':\n", | |
| " packages.extend(['ml-collections'])\n", | |
| " subprocess.check_call([sys.executable, \"-m\", \"pip\", \"install\", \"-q\", *packages])\n", | |
| " if CONFIG['TEACHER'] == 'umamba':\n", | |
| " env = os.environ.copy()\n", | |
| " for package in (\"causal-conv1d\", \"mamba-ssm\"):\n", | |
| " subprocess.check_call([sys.executable, \"-m\", \"pip\", \"install\", package, \"--no-build-isolation\"], env=env)\n", | |
| " cmd = subprocess.list2cmdline([\n", | |
| " sys.executable,\n", | |
| " \"-m\", \"pip\", \"install\",\n", | |
| " ]) + ' \"transformers\" \"huggingface-hub<1.0\"'\n", | |
| " subprocess.check_call(cmd, env=env, shell=True)\n", | |
| "\n", | |
| "if not os.path.exists(os.path.join(WORKSPACE, 'TransUNet')):\n", | |
| " subprocess.run(['git', 'clone', '--depth', '1', 'https://github.com/Beckschen/TransUNet.git'], check=True)\n", | |
| " \n", | |
| "TEACHER_CHANNELS = {\n", | |
| " 'resenc': {128: 64, 64: 128, 32: 256, 16: 512},\n", | |
| " 'umamba': {128: 128, 64: 256, 32: 512, 16: 1024},\n", | |
| " 'transunet': {128: 64, 64: 256, 32: 512, 16: 768},\n", | |
| "}\n", | |
| "STUDENT_CHANNELS = {\n", | |
| " 'resnet50': {128: 64, 64: 256, 32: 512, 16: 1024},\n", | |
| " 'efficientnetb3': {128: 40, 64: 32, 32: 48, 16: 136},\n", | |
| " 'swinv2tiny': {128: 0, 64: 96, 32: 192, 16: 384},\n", | |
| "}\n", | |
| "STUDENT_SKIP_ORDER = {\n", | |
| " 'resnet50': (128, 64, 32, 16),\n", | |
| " 'efficientnetb3': (128, 64, 32, 16),\n", | |
| " 'swinv2tiny': (64, 32, 16),\n", | |
| "}\n", | |
| "STUDENT_OUT_CHANNELS = {\n", | |
| " 'resnet50': 2048,\n", | |
| " 'efficientnetb3': 1536,\n", | |
| " 'swinv2tiny': 768,\n", | |
| "}\n", | |
| "TEACHER_WEIGHTS = {\n", | |
| " 'resenc': os.path.join(WORKSPACE, 'phase_1_resenc_m_encoder.pth'),\n", | |
| " 'umamba': os.path.join(WORKSPACE, 'phase_1_umamba_encoder.pth'),\n", | |
| " 'transunet': os.path.join(WORKSPACE, 'phase_1_transunet_encoder.pth')\n", | |
| "}\n", | |
| "STUDENT_WEIGHTS = {\n", | |
| " 'resnet50': os.path.join(WORKSPACE, 'ResNet50.pt'),\n", | |
| " 'efficientnetb3': 'default',\n", | |
| " 'swinv2tiny': 'default'\n", | |
| "}\n", | |
| "\n", | |
| "BEST_CHECKPOINT_NAME = ('p2_%s-%s%s_best.pth'\n", | |
| " % (CONFIG['STUDENT'], CONFIG['TEACHER'],\n", | |
| " '-kd' if CONFIG['USE_DISTILL'] else ''))\n", | |
| "LAST_CHECKPOINT_NAME = ('p2_%s-%s%s_last.pth'\n", | |
| " % (CONFIG['STUDENT'], CONFIG['TEACHER'],\n", | |
| " '-kd' if CONFIG['USE_DISTILL'] else ''))\n", | |
| "CI_KEYS = ('precision', 'recall', 'f1', 'roc_auc', 'pr_auc')\n", | |
| "\n", | |
| "_RADIMAGENET_PREFIX = [\n", | |
| " ('backbone.0', 'conv1'),\n", | |
| " ('backbone.1', 'bn1'),\n", | |
| " ('backbone.4', 'layer1'),\n", | |
| " ('backbone.5', 'layer2'),\n", | |
| " ('backbone.6', 'layer3'),\n", | |
| " ('backbone.7', 'layer4'),\n", | |
| "]\n", | |
| "\n", | |
| "def grid_resolve(teacher, student, grids=(128, 64, 32, 16)):\n", | |
| " tch, sch = TEACHER_CHANNELS[teacher], STUDENT_CHANNELS[student]\n", | |
| " order = STUDENT_SKIP_ORDER[student]\n", | |
| " levels, skipped = {}, []\n", | |
| " for g in sorted(grids, reverse=True):\n", | |
| " if sch.get(g, 0) == 0:\n", | |
| " skipped.append((g, 'siswa %s tidak punya grid %d' % (student, g))); continue\n", | |
| " if tch.get(g, 0) == 0:\n", | |
| " skipped.append((g, 'guru %s tidak punya grid %d' % (teacher, g))); continue\n", | |
| " levels[g] = {'student_index': order.index(g),\n", | |
| " 'student_channels': int(sch[g]),\n", | |
| " 'teacher_channels': int(tch[g])}\n", | |
| " return levels, skipped\n", | |
| "\n", | |
| "DISTILL_LEVELS, SKIPPED_GRIDS = grid_resolve(CONFIG['TEACHER'], CONFIG['STUDENT'], CONFIG['DISTILL_GRIDS'])\n", | |
| "ENABLED_GRIDS = tuple(sorted(DISTILL_LEVELS, reverse=True))\n", | |
| "\n", | |
| "DISTILL_GRID_WEIGHTS = {g: float(CONFIG['GRID_WEIGHTS'].get(g, 1.0))\n", | |
| " for g in ENABLED_GRIDS}\n", | |
| "\n", | |
| "if CONFIG['USE_DISTILL'] and not DISTILL_LEVELS:\n", | |
| " raise ValueError('tidak ada grid yang bisa didistilasi untuk %s / %s'\n", | |
| " % (CONFIG['TEACHER'], CONFIG['STUDENT']))\n", | |
| "if DISTILL_LEVELS and sum(DISTILL_GRID_WEIGHTS.values()) <= 0:\n", | |
| " raise ValueError('DISTILL_GRID_WEIGHTS semua nol: %s' % (DISTILL_GRID_WEIGHTS,))\n", | |
| "\n", | |
| "print('[cfg] TEACHER %s | STUDENT %s | USE_DISTILL %s'\n", | |
| " % (CONFIG['TEACHER'], CONFIG['STUDENT'], CONFIG['USE_DISTILL']))\n", | |
| "for _g, _why in SKIPPED_GRIDS:\n", | |
| " print('[KD] grid %d DILEWATI: %s' % (_g, _why))\n", | |
| "for _g in ENABLED_GRIDS:\n", | |
| " _spec = DISTILL_LEVELS[_g]\n", | |
| " print('[KD] grid %3d <- guru %-9s %4d kanal | murid e%d %4d kanal | bobot %.2f'\n", | |
| " % (_g, CONFIG['TEACHER'], _spec['teacher_channels'],\n", | |
| " _spec['student_index'], _spec['student_channels'],\n", | |
| " DISTILL_GRID_WEIGHTS[_g]))" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 73, | |
| "id": "f6a2fc49", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def seed_everything(seed=CONFIG['INIT_SEED']):\n", | |
| " os.environ['PYTHONHASHSEED'] = str(seed)\n", | |
| " random.seed(seed)\n", | |
| " np.random.seed(seed)\n", | |
| " torch.manual_seed(seed)\n", | |
| " torch.cuda.manual_seed(seed)\n", | |
| " torch.cuda.manual_seed_all(seed)\n", | |
| " torch.backends.cuda.matmul.allow_tf32 = False\n", | |
| " torch.backends.cudnn.allow_tf32 = False\n", | |
| " torch.backends.cudnn.deterministic = True\n", | |
| " torch.backends.cudnn.benchmark = False\n", | |
| " \n", | |
| "def seed_worker(worker_id):\n", | |
| " worker_seed = torch.initial_seed() % 2**32\n", | |
| " np.random.seed(worker_seed)\n", | |
| " random.seed(worker_seed)\n", | |
| " info = torch.utils.data.get_worker_info()\n", | |
| " if info is not None and hasattr(info.dataset, \"reseed_augment\"):\n", | |
| " info.dataset.reseed_augment(worker_seed)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "3614a96c", | |
| "metadata": {}, | |
| "source": [ | |
| "# Student Encoders" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 74, | |
| "id": "b4681535", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def _convert_to_1ch(conv):\n", | |
| " new = nn.Conv2d(1, conv.out_channels, conv.kernel_size, conv.stride,\n", | |
| " conv.padding, bias=conv.bias is not None)\n", | |
| " with torch.no_grad():\n", | |
| " new.weight.copy_(conv.weight.sum(dim=1, keepdim=True))\n", | |
| " if conv.bias is not None:\n", | |
| " new.bias.copy_(conv.bias)\n", | |
| " return new\n", | |
| "\n", | |
| "def _convert_to_nch(conv, n):\n", | |
| " if n == 1:\n", | |
| " return _convert_to_1ch(conv)\n", | |
| " single = _convert_to_1ch(conv)\n", | |
| " new = nn.Conv2d(n, conv.out_channels, conv.kernel_size, conv.stride,\n", | |
| " conv.padding, bias=conv.bias is not None)\n", | |
| " with torch.no_grad():\n", | |
| " new.weight.copy_(single.weight.repeat(1, n, 1, 1) / float(n))\n", | |
| " if conv.bias is not None:\n", | |
| " new.bias.copy_(single.bias)\n", | |
| " return new\n", | |
| "\n", | |
| "def _load_radimagenet(trunk, checkpoint_path=STUDENT_WEIGHTS['resnet50']):\n", | |
| " state = torch.load(checkpoint_path, map_location='cpu', weights_only=True)\n", | |
| " if isinstance(state, dict) and 'state_dict' in state:\n", | |
| " state = state['state_dict']\n", | |
| "\n", | |
| " renamed = {}\n", | |
| " for key in state:\n", | |
| " for src, dst in _RADIMAGENET_PREFIX:\n", | |
| " if key == src or key.startswith(src + '.'):\n", | |
| " renamed[dst + key[len(src):]] = key\n", | |
| " break\n", | |
| " else:\n", | |
| " raise KeyError('RadImageNet key mismatch: %s' % key)\n", | |
| "\n", | |
| " target = trunk.state_dict()\n", | |
| " missing = sorted(set(target) - set(renamed))\n", | |
| " unexpected = sorted(set(renamed) - set(target))\n", | |
| " if missing or unexpected:\n", | |
| " raise RuntimeError(\n", | |
| " 'missing %d %s | unexpected %d %s'\n", | |
| " % (len(missing), missing[:3], len(unexpected), unexpected[:3]))\n", | |
| "\n", | |
| " trunk.load_state_dict({k: state[v] for k, v in renamed.items()}, strict=True)\n", | |
| " print('[RadImageNet] %d/%d tensor loaded | strict=True | 0 missing / 0 unexpected'\n", | |
| " % (len(renamed), len(target)))\n", | |
| "\n", | |
| "\n", | |
| "class ResNet50Encoder(nn.Module):\n", | |
| " def __init__(self, pretrained=True, in_channels=CONFIG['SLICE_CONTEXT']):\n", | |
| " super().__init__()\n", | |
| " trunk = models.resnet50(weights=models.ResNet50_Weights.DEFAULT)\n", | |
| " trunk.fc = nn.Identity()\n", | |
| " if pretrained:\n", | |
| " _load_radimagenet(trunk)\n", | |
| " if in_channels == 1:\n", | |
| " trunk.conv1 = _convert_to_1ch(trunk.conv1)\n", | |
| " elif in_channels > 1:\n", | |
| " trunk.conv1 = _convert_to_nch(trunk.conv1, in_channels)\n", | |
| " else:\n", | |
| " raise ValueError('in_channels harus >= 1, bukan %r' % (in_channels,))\n", | |
| "\n", | |
| " self.pretrained = pretrained\n", | |
| " self.in_channels = in_channels\n", | |
| " self.conv1 = trunk.conv1\n", | |
| " self.bn1 = trunk.bn1\n", | |
| " self.relu = trunk.relu\n", | |
| " self.maxpool = trunk.maxpool\n", | |
| " self.layer1 = trunk.layer1\n", | |
| " self.layer2 = trunk.layer2\n", | |
| " self.layer3 = trunk.layer3\n", | |
| " self.layer4 = trunk.layer4\n", | |
| "\n", | |
| " def forward(self, x):\n", | |
| " x = self.conv1(x)\n", | |
| " x = self.bn1(x)\n", | |
| " x = self.relu(x)\n", | |
| " e0 = x # 64 @ 128\n", | |
| " x = self.maxpool(x)\n", | |
| " e1 = self.layer1(x) # 256 @ 64\n", | |
| " e2 = self.layer2(e1) # 512 @ 32\n", | |
| " e3 = self.layer3(e2) # 1024 @ 16\n", | |
| " e4 = self.layer4(e3) # 2048 @ 8\n", | |
| " return e4, [e0, e1, e2, e3]\n", | |
| "\n", | |
| "\n", | |
| "class EfficientNetB3Encoder(nn.Module):\n", | |
| " def __init__(self, pretrained=True, in_channels=CONFIG['SLICE_CONTEXT']):\n", | |
| " super().__init__()\n", | |
| " weights = (models.EfficientNet_B3_Weights.IMAGENET1K_V1\n", | |
| " if pretrained else None)\n", | |
| " base = models.efficientnet_b3(weights=weights)\n", | |
| " if in_channels == 1:\n", | |
| " base.features[0][0] = _convert_to_1ch(base.features[0][0])\n", | |
| " elif in_channels > 1:\n", | |
| " base.features[0][0] = _convert_to_nch(base.features[0][0], in_channels)\n", | |
| " else:\n", | |
| " raise ValueError('in_channels harus >= 1, bukan %r' % (in_channels,))\n", | |
| "\n", | |
| " self.pretrained = pretrained\n", | |
| " self.in_channels = in_channels\n", | |
| " self.features = base.features\n", | |
| "\n", | |
| " def forward(self, x):\n", | |
| " e0 = e1 = e2 = e3 = e4 = None\n", | |
| " for index, layer in enumerate(self.features):\n", | |
| " x = layer(x)\n", | |
| " if index == 0:\n", | |
| " e0 = x # 40 @ 128\n", | |
| " elif index == 2:\n", | |
| " e1 = x # 32 @ 64\n", | |
| " elif index == 3:\n", | |
| " e2 = x # 48 @ 32\n", | |
| " elif index == 5:\n", | |
| " e3 = x # 136 @ 16\n", | |
| " elif index == 8:\n", | |
| " e4 = x # 1536 @ 8\n", | |
| " return e4, [e0, e1, e2, e3]\n", | |
| "\n", | |
| "\n", | |
| "class SwinV2TinyEncoder(nn.Module):\n", | |
| " def __init__(self, pretrained=True, in_channels=CONFIG['SLICE_CONTEXT']):\n", | |
| " super().__init__()\n", | |
| " weights = (models.Swin_V2_T_Weights.IMAGENET1K_V1\n", | |
| " if pretrained else None)\n", | |
| " base = models.swin_v2_t(weights=weights)\n", | |
| " if in_channels == 1:\n", | |
| " base.features[0][0] = _convert_to_1ch(base.features[0][0])\n", | |
| " elif in_channels > 1:\n", | |
| " base.features[0][0] = _convert_to_nch(base.features[0][0], in_channels)\n", | |
| " else:\n", | |
| " raise ValueError('in_channels harus >= 1, bukan %r' % (in_channels,))\n", | |
| "\n", | |
| " self.pretrained = pretrained\n", | |
| " self.in_channels = in_channels\n", | |
| " self.features = base.features\n", | |
| " self.norm = base.norm\n", | |
| "\n", | |
| " def forward(self, x):\n", | |
| " e0 = e1 = e2 = e4 = None\n", | |
| " for index, layer in enumerate(self.features):\n", | |
| " x = layer(x)\n", | |
| " if index == 1:\n", | |
| " e0 = x # 96 @ 64\n", | |
| " elif index == 3:\n", | |
| " e1 = x # 192 @ 32\n", | |
| " elif index == 5:\n", | |
| " e2 = x # 384 @ 16\n", | |
| " elif index == 7:\n", | |
| " e4 = self.norm(x) # 768 @ 8\n", | |
| " to_nchw = lambda t: t.permute(0, 3, 1, 2).contiguous()\n", | |
| " return to_nchw(e4), [to_nchw(e0), to_nchw(e1), to_nchw(e2)]\n", | |
| "\n", | |
| "\n", | |
| "ENCODER_REGISTRY = {\n", | |
| " 'resnet50': ResNet50Encoder,\n", | |
| " 'efficientnetb3': EfficientNetB3Encoder,\n", | |
| " 'swinv2tiny': SwinV2TinyEncoder,\n", | |
| "}\n", | |
| "\n", | |
| "class EncoderModule(nn.Module):\n", | |
| " def __init__(self, model=CONFIG['STUDENT'], pretrained=True, in_ch=CONFIG['SLICE_CONTEXT']):\n", | |
| " super().__init__()\n", | |
| " if model not in ENCODER_REGISTRY:\n", | |
| " raise ValueError('UNSUPPORTED STUDENT %r | SUPPORTED: %s'\n", | |
| " % (model, tuple(ENCODER_REGISTRY)))\n", | |
| " self.model = model\n", | |
| " self.skip_grids = tuple(STUDENT_SKIP_ORDER[model])\n", | |
| " self.grid_channels = {grid: int(STUDENT_CHANNELS[model][grid])\n", | |
| " for grid in self.skip_grids}\n", | |
| " self.out_channels = int(STUDENT_OUT_CHANNELS[model])\n", | |
| " self.in_channels = int(in_ch)\n", | |
| " self.body = ENCODER_REGISTRY[model](pretrained=pretrained,\n", | |
| " in_channels=self.in_channels)\n", | |
| "\n", | |
| " def forward(self, x, return_skips=True):\n", | |
| " e4, skips = self.body(x)\n", | |
| " if len(skips) != len(self.skip_grids):\n", | |
| " raise RuntimeError('%s keluarkan %d skip, kontrak bilang %d'\n", | |
| " % (self.model, len(skips), len(self.skip_grids)))\n", | |
| " for grid, tensor in zip(self.skip_grids, skips):\n", | |
| " want = self.grid_channels[grid]\n", | |
| " if tuple(tensor.shape[1:]) != (want, grid, grid):\n", | |
| " raise RuntimeError('%s grid %d: tabel %d@%dx%d, model keluarkan %s'\n", | |
| " % (self.model, grid, want, grid, grid,\n", | |
| " tuple(tensor.shape[1:])))\n", | |
| " return (e4, skips) if return_skips else e4" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "b3cffe99", | |
| "metadata": {}, | |
| "source": [ | |
| "# Teacher Encoders" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 75, | |
| "id": "3e452588", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "class TeacherMambaLayer(nn.Module):\n", | |
| " def __init__(self, dim, d_state=16, d_conv=4, expand=2):\n", | |
| " super().__init__()\n", | |
| " from mamba_ssm import Mamba\n", | |
| " self.dim = dim\n", | |
| " self.norm = nn.LayerNorm(dim)\n", | |
| " self.mamba = Mamba(d_model=dim, d_state=d_state, d_conv=d_conv, expand=expand)\n", | |
| " \n", | |
| " def forward(self, x):\n", | |
| " batch, channels = x.shape[:2]\n", | |
| " image_dims = x.shape[2:]\n", | |
| " tokens = x.reshape(batch, channels, -1).transpose(-1, -2)\n", | |
| " out = self.mamba(self.norm(tokens))\n", | |
| " return out.transpose(-1, -2).reshape(batch, channels, *image_dims)\n", | |
| " \n", | |
| "class TeacherConvBlock(nn.Module):\n", | |
| " def __init__(self, in_ch, out_ch, use_residual=False):\n", | |
| " super().__init__()\n", | |
| " self.conv = nn.Sequential(\n", | |
| " nn.Conv2d(in_ch, out_ch, 3, padding=1, bias=False), nn.InstanceNorm2d(out_ch),\n", | |
| " nn.LeakyReLU(0.01, inplace=True),\n", | |
| " nn.Conv2d(out_ch, out_ch, 3, padding=1, bias=False), nn.InstanceNorm2d(out_ch),\n", | |
| " nn.LeakyReLU(0.01, inplace=True),\n", | |
| " )\n", | |
| " self.use_residual = use_residual\n", | |
| " self.residual = nn.Identity() if in_ch == out_ch else nn.Conv2d(in_ch, out_ch, 1)\n", | |
| " \n", | |
| " def forward(self, x):\n", | |
| " if self.use_residual:\n", | |
| " return self.conv(x) + self.residual(x)\n", | |
| " return self.conv(x)\n", | |
| " \n", | |
| "class ResEncMTeacherEncoder(nn.Module):\n", | |
| " def __init__(self, in_ch=1, features_per_stage=(32, 64, 128, 256, 512, 512, 512),\n", | |
| " n_blocks=(1, 3, 4, 6, 6, 6, 6), strides=(1, 2, 2, 2, 2, 2, 2)):\n", | |
| " super().__init__()\n", | |
| " from dynamic_network_architectures.building_blocks.residual_encoders import ResidualEncoder\n", | |
| " self.channels = list(features_per_stage)\n", | |
| " self.encoder = ResidualEncoder(\n", | |
| " input_channels=in_ch,\n", | |
| " n_stages=len(features_per_stage),\n", | |
| " features_per_stage=list(features_per_stage),\n", | |
| " conv_op=nn.Conv2d,\n", | |
| " kernel_sizes=3,\n", | |
| " strides=list(strides),\n", | |
| " n_blocks_per_stage=list(n_blocks),\n", | |
| " conv_bias=True,\n", | |
| " norm_op=nn.InstanceNorm2d,\n", | |
| " norm_op_kwargs={'eps': 1e-5, 'affine': True},\n", | |
| " nonlin=nn.LeakyReLU,\n", | |
| " nonlin_kwargs={'inplace': True},\n", | |
| " return_skips=True,\n", | |
| " )\n", | |
| " \n", | |
| " def forward(self, x, return_skips=True):\n", | |
| " skips = self.encoder(x)\n", | |
| " return (skips[-1], skips) if return_skips else skips[-1]\n", | |
| " \n", | |
| "\n", | |
| "class UMambaTeacherEncoder(nn.Module):\n", | |
| " def __init__(self, in_ch=1, channels=(64, 128, 256, 512, 1024), d_state=16, d_conv=4, expand=2):\n", | |
| " super().__init__()\n", | |
| " self.channels = channels\n", | |
| " self.stages = nn.ModuleList()\n", | |
| " self.mamba_layers = nn.ModuleList()\n", | |
| " self.downsamples = nn.ModuleList()\n", | |
| " in_channels = in_ch\n", | |
| " for i, out_ch in enumerate(self.channels):\n", | |
| " self.stages.append(TeacherConvBlock(in_channels, out_ch))\n", | |
| " self.mamba_layers.append(TeacherMambaLayer(out_ch, d_state, d_conv, expand))\n", | |
| " if i < len(channels) - 1:\n", | |
| " self.downsamples.append(nn.Conv2d(out_ch, out_ch, kernel_size=2, stride=2))\n", | |
| " else:\n", | |
| " self.downsamples.append(nn.Identity())\n", | |
| " in_channels = out_ch\n", | |
| " \n", | |
| " def forward(self, x, return_skips=True):\n", | |
| " skips = []\n", | |
| " for stage, mamba, down in zip(self.stages, self.mamba_layers, self.downsamples):\n", | |
| " x = stage(x)\n", | |
| " x = mamba(x)\n", | |
| " skips.append(x)\n", | |
| " x = down(x)\n", | |
| " return (x, skips) if return_skips else x\n", | |
| " \n", | |
| "class TransUNetTeacherEncoder(nn.Module):\n", | |
| " def __init__(self, in_ch, img_size=256):\n", | |
| " super().__init__()\n", | |
| " from TransUNet.networks.vit_seg_configs import get_r50_b16_config\n", | |
| " from TransUNet.networks.vit_seg_modeling import VisionTransformer\n", | |
| " self.vit = VisionTransformer(get_r50_b16_config(), img_size=img_size, num_classes=2)\n", | |
| " self.in_ch = int(in_ch)\n", | |
| " self.side = img_size // 16\n", | |
| " self.channels = (64, 256, 512, 768)\n", | |
| " \n", | |
| " def forward(self, x, return_skips=True):\n", | |
| " if x.size(1) == 1:\n", | |
| " x = x.repeat(1, 3, 1, 1)\n", | |
| " emb, feats = self.vit.transformer.embeddings(x)\n", | |
| " enc, _ = self.vit.transformer.encoder(emb)\n", | |
| " b, n, c = enc.shape\n", | |
| " assert n == self.side * self.side, 'token %d != %d^2' % (n, self.side)\n", | |
| " vit_grid = enc.transpose(1, 2).reshape(b, c, self.side, self.side).contiguous()\n", | |
| " skips = sorted(feats, key=lambda t: -t.shape[-1]) + [vit_grid]\n", | |
| " return (vit_grid, skips) if return_skips else vit_grid\n", | |
| "\n", | |
| "\n", | |
| "TEACHER_REGISTRY = {\n", | |
| " 'resenc': ResEncMTeacherEncoder,\n", | |
| " 'umamba': UMambaTeacherEncoder,\n", | |
| " 'transunet': TransUNetTeacherEncoder,\n", | |
| "}\n", | |
| "\n", | |
| "class TeacherModule(nn.Module):\n", | |
| " def __init__(self, model=CONFIG['TEACHER'], in_ch=1, verify=True):\n", | |
| " super().__init__()\n", | |
| " if model not in TEACHER_REGISTRY:\n", | |
| " raise ValueError('TEACHER UNKNOWN %r | pilihan: %s'\n", | |
| " % (model, tuple(TEACHER_REGISTRY)))\n", | |
| " if model not in TEACHER_CHANNELS:\n", | |
| " raise ValueError('TEACHER_CHANNELS tidak punya %r' % (model,))\n", | |
| " path = TEACHER_WEIGHTS[model]\n", | |
| " if not os.path.exists(path):\n", | |
| " raise FileNotFoundError('bobot guru tidak ada: %s' % path)\n", | |
| "\n", | |
| " self.model = model\n", | |
| " self.in_ch = int(in_ch)\n", | |
| " self.weights_path = path\n", | |
| " self.skip_grids = tuple(sorted(TEACHER_CHANNELS[model], reverse=True))\n", | |
| " self.grid_channels = {g: int(TEACHER_CHANNELS[model][g]) for g in self.skip_grids}\n", | |
| "\n", | |
| " self.encoder = TEACHER_REGISTRY[model](in_ch=self.in_ch)\n", | |
| " self._load_weights(path)\n", | |
| " self._freeze()\n", | |
| " self.train(False)\n", | |
| " if verify:\n", | |
| " print('[teacher] %-9s kanal %-26s bobot %s'\n", | |
| " % (model, dict(sorted(self.grid_channels.items(), reverse=True)),\n", | |
| " os.path.basename(path)))\n", | |
| "\n", | |
| " def _load_weights(self, path):\n", | |
| " ck = torch.load(path, map_location='cpu', weights_only=False)\n", | |
| " if not isinstance(ck, dict) or 'encoder_state_dict' not in ck:\n", | |
| " raise KeyError('%s tidak punya kunci encoder_state_dict'\n", | |
| " % os.path.basename(path))\n", | |
| " sd = ck['encoder_state_dict']\n", | |
| " if all(k.startswith('module.') for k in sd):\n", | |
| " sd = {k[len('module.'):]: v for k, v in sd.items()}\n", | |
| "\n", | |
| " target = self.encoder.state_dict()\n", | |
| " missing = sorted(set(target) - set(sd))\n", | |
| " unexpected = sorted(set(sd) - set(target))\n", | |
| " if missing or unexpected:\n", | |
| " raise RuntimeError(\n", | |
| " '[teacher] %s: missing %d %s | unexpected %d %s'\n", | |
| " % (self.model, len(missing), missing[:3],\n", | |
| " len(unexpected), unexpected[:3]))\n", | |
| "\n", | |
| " self.encoder.load_state_dict(sd, strict=True)\n", | |
| " self.epoch = int(ck.get('epoch', -1))\n", | |
| " self.best_epoch = int(ck.get('best_epoch', -1))\n", | |
| " self.best_val_loss = float(ck.get('best_val_loss', float('nan')))\n", | |
| "\n", | |
| " def _freeze(self):\n", | |
| " self.encoder.eval()\n", | |
| " for param in self.encoder.parameters():\n", | |
| " param.requires_grad_(False)\n", | |
| "\n", | |
| " @torch.no_grad()\n", | |
| " def forward(self, x, return_skips=True):\n", | |
| " deep, skips = self.encoder(x, return_skips=True)\n", | |
| " by_grid = {int(t.shape[-1]): t for t in skips}\n", | |
| " missing = [g for g in self.skip_grids if g not in by_grid]\n", | |
| " if missing:\n", | |
| " raise RuntimeError('%s tidak punya grid %s; tersedia %s'\n", | |
| " % (self.model, missing, sorted(by_grid, reverse=True)))\n", | |
| " picked = [by_grid[g] for g in self.skip_grids]\n", | |
| " for grid, tensor in zip(self.skip_grids, picked):\n", | |
| " want = self.grid_channels[grid]\n", | |
| " got = (int(tensor.shape[1]), int(tensor.shape[-1]))\n", | |
| " if got != (want, grid):\n", | |
| " raise RuntimeError('%s grid %d: tabel %d@%dx%d, model %d@%dx%d'\n", | |
| " % (self.model, grid, want, grid, grid,\n", | |
| " got[0], got[1], got[1]))\n", | |
| " self.dropped_grids = tuple(sorted(set(by_grid) - set(self.skip_grids),\n", | |
| " reverse=True))\n", | |
| " return (deep, picked) if return_skips else deep\n", | |
| "\n", | |
| " def train(self, mode=True):\n", | |
| " # mode=True intentional\n", | |
| " return super().train(False)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "c1522886", | |
| "metadata": {}, | |
| "source": [ | |
| "# Classification Model" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 76, | |
| "id": "4168e137", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "class GeM(nn.Module):\n", | |
| " \"\"\"Generalized Mean pooling: f = (mean x**p) ** (1/p).\n", | |
| "\n", | |
| " `mode` menentukan jalur, bukan p:\n", | |
| "\n", | |
| " mode='cls' : tanpa mask, p DILATIH. Dipakai kepala klasifikasi pada e4\n", | |
| " (post-ReLU, 0% negatif), jadi clamp(min=eps) tidak\n", | |
| " menyentuh apa pun dan p bebas bergerak 1..8.\n", | |
| " mode='kd' : berbobot brain mask, p DIBEKUKAN di 1. Setara rata-rata\n", | |
| " biasa. Lihat justifikasi di bawah.\n", | |
| "\n", | |
| " p=1 identik rata-rata (max|selisih| 5.662e-07). `clamp(p)` wajib: di p<1\n", | |
| " gradien p membesar ~78x nilai output (terukur 14.87 vs 0.19), jadi p\n", | |
| " dipercepat ke 0 dan p=0 berarti pembagian nol; tanpa batas atas, x**p\n", | |
| " melewati batas fp16 di p=16 (2.1e+06 vs 65504).\n", | |
| "\n", | |
| " JUSTIFIKASI p=1 UNTUK KD (mode='kd'), diukur pada 278 irisan test:\n", | |
| "\n", | |
| " 1. AUC per kanal pooled turun monoton terhadap p:\n", | |
| " p=1 (mean) g32 0.8460 / g16 0.8464\n", | |
| " p=3 g32 0.7738 / g16 0.7970\n", | |
| " p=8 g32 0.6702 / g16 0.7058\n", | |
| " Jadi p>1 bukan sekadar \"bisa dipakai\", ia kalah 7-18 poin AUC.\n", | |
| "\n", | |
| " 2. Penyebabnya bukan tanda negatif. `signed_gem` dan `gem_odd` -- keduanya\n", | |
| " mempertahankan tanda, ganjil, p=1 -> mean -- memberi angka identik dengan\n", | |
| " p=3 biasa (0.7738). Yang merusak adalah pemusatan: corr(max|x|) naik\n", | |
| " 0.6176 (p=1) -> 0.8225 (p=8), sedangkan sel terkuat bukan selalu lesi\n", | |
| " (bisa vaskular/tepi tulang).\n", | |
| "\n", | |
| " 3. Untuk arm non-resnet, clamp(min=eps) juga membuang energi:\n", | |
| " resenc energi negatif 0.000000 (sisa LeakyReLU 0.01)\n", | |
| " efficientnetb3 0.387-0.412\n", | |
| " swinv2tiny 0.500-0.536\n", | |
| " umamba 0.488-0.549\n", | |
| " transunet g16 0.729\n", | |
| " Cls head tidak kena ini karena e4 0% negatif; skip KD tidak.\n", | |
| "\n", | |
| " Kesimpulan: di KD, p=1 dipilih karena pengukuran, bukan karena keterbatasan.\n", | |
| " Keluarga fungsinya tetap GeM -- p=1 adalah titik di ujung bawahnya.\n", | |
| " \"\"\"\n", | |
| "\n", | |
| " def __init__(self, mode='cls', p=3.0, eps=1e-6, p_min=1.0, p_max=8.0):\n", | |
| " super().__init__()\n", | |
| " if mode not in ('cls', 'kd'):\n", | |
| " raise ValueError('mode harus cls|kd, bukan %r' % (mode,))\n", | |
| " self.mode = mode\n", | |
| " self.eps = float(eps)\n", | |
| " self.p_min, self.p_max = float(p_min), float(p_max)\n", | |
| " if mode == 'cls':\n", | |
| " self.p = nn.Parameter(torch.tensor(float(p), dtype=torch.float32))\n", | |
| " else:\n", | |
| " self.register_buffer('p', torch.tensor(1.0))\n", | |
| "\n", | |
| " def forward(self, x, mask=None):\n", | |
| " if self.mode == 'cls':\n", | |
| " exponent = self.p.clamp(self.p_min, self.p_max)\n", | |
| " pooled = F.adaptive_avg_pool2d(x.clamp(min=self.eps).pow(exponent), 1)\n", | |
| " return pooled.pow(1.0 / exponent).flatten(1)\n", | |
| "\n", | |
| " w = F.adaptive_avg_pool2d(mask.float(), x.shape[-2:]).clamp(min=self.eps)\n", | |
| " return (w * x).sum((2, 3)) / w.sum((2, 3))\n", | |
| "\n", | |
| " def extra_repr(self):\n", | |
| " if self.mode == 'cls':\n", | |
| " return 'cls, p=%.4f (learned, clamp %.2f..%.2f)' % (\n", | |
| " float(self.p.detach()), self.p_min, self.p_max)\n", | |
| " return 'kd, p=1 fixed (masked mean)'\n", | |
| "\n", | |
| "\n", | |
| "class ClassificationHead(nn.Module):\n", | |
| " def __init__(self, in_ch, dropout=0.40):\n", | |
| " super().__init__()\n", | |
| " self.gem = GeM(mode='cls', p=CONFIG['GEM_P_INIT'], eps=CONFIG['EPS'],\n", | |
| " p_min=CONFIG['GEM_P_MIN'], p_max=CONFIG['GEM_P_MAX'])\n", | |
| " self.hidden = in_ch // 4\n", | |
| " self.fc = nn.Sequential(\n", | |
| " nn.Linear(in_ch, self.hidden),\n", | |
| " nn.GELU(),\n", | |
| " nn.Dropout(dropout),\n", | |
| " nn.Linear(self.hidden, 1),\n", | |
| " )\n", | |
| "\n", | |
| " def forward(self, x):\n", | |
| " return self.fc(self.gem(x)).squeeze(-1)\n", | |
| "\n", | |
| "\n", | |
| "class ClassificationModel(nn.Module):\n", | |
| " def __init__(self, pretrained=True, in_ch=CONFIG['SLICE_CONTEXT'], dropout=CONFIG['DROPOUT'], encoder=CONFIG['STUDENT']):\n", | |
| " super().__init__()\n", | |
| " self.encoder = EncoderModule(encoder, pretrained, in_ch)\n", | |
| " self.head = ClassificationHead(self.encoder.out_channels, dropout=dropout)\n", | |
| "\n", | |
| " def forward(self, x, return_skips=False):\n", | |
| " c4, skips = self.encoder(x, return_skips=True)\n", | |
| " cls_logits = self.head(c4)\n", | |
| " if return_skips:\n", | |
| " return cls_logits, skips\n", | |
| " return cls_logits\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "8d32e033", | |
| "metadata": {}, | |
| "source": [ | |
| "# Distillation" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 77, | |
| "id": "2de29bfd", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def as_mask_4d(mask):\n", | |
| " if mask.dim() == 3:\n", | |
| " mask = mask.unsqueeze(1)\n", | |
| " return mask.float()\n", | |
| "\n", | |
| "\n", | |
| "def as_slice_4d(x):\n", | |
| " return (x.unsqueeze(1) if x.dim() == 3 else x).float()\n", | |
| "\n", | |
| "\n", | |
| "def valid_batch(mask, min_cells=32):\n", | |
| " return as_mask_4d(mask).flatten(1).sum(1) >= float(min_cells)\n", | |
| "\n", | |
| "\n", | |
| "class GlobalKDHead(nn.Module):\n", | |
| " def __init__(self, student_channels, teacher_channels, grid):\n", | |
| " super().__init__()\n", | |
| " self.grid = int(grid)\n", | |
| " self.pool = GeM(mode='kd', eps=CONFIG['EPS'])\n", | |
| " self.proj = nn.Linear(student_channels, teacher_channels, bias=False)\n", | |
| "\n", | |
| " def forward(self, f_student, mask):\n", | |
| " return self.proj(self.pool(f_student, mask))\n", | |
| "\n", | |
| " @torch.no_grad()\n", | |
| " def pool_target(self, f_teacher, mask):\n", | |
| " return self.pool(f_teacher.detach(), mask)\n", | |
| "\n", | |
| "\n", | |
| "class KDModule(nn.Module):\n", | |
| " def __init__(self, levels, teacher_arm):\n", | |
| " super().__init__()\n", | |
| " self.levels = {int(g): dict(v) for g, v in levels.items()}\n", | |
| " self.grids = tuple(sorted(self.levels, reverse=True))\n", | |
| " self.enabled = bool(self.grids) and bool(CONFIG['USE_DISTILL'])\n", | |
| " self.stats = {}\n", | |
| " self.valid = None\n", | |
| "\n", | |
| " if not self.enabled:\n", | |
| " self.teacher = None\n", | |
| " self.heads = nn.ModuleDict()\n", | |
| " print('[KD] nonaktif (USE_DISTILL=%s, grid=%s)'\n", | |
| " % (CONFIG['USE_DISTILL'], self.grids))\n", | |
| " return\n", | |
| " self.teacher = TeacherModule(teacher_arm, 1)\n", | |
| " for param in self.teacher.parameters():\n", | |
| " param.requires_grad_(False)\n", | |
| "\n", | |
| " self.heads = nn.ModuleDict({\n", | |
| " str(g): GlobalKDHead(self.levels[g]['student_channels'],\n", | |
| " self.levels[g]['teacher_channels'], g)\n", | |
| " for g in self.grids})\n", | |
| " print('[KD] pool gem-p1 | grid %-18s | adaptor %s param | guru %s'\n", | |
| " % (self.grids,\n", | |
| " '{:,}'.format(sum(p.numel() for p in self.heads.parameters())),\n", | |
| " self.teacher.model))\n", | |
| "\n", | |
| " @torch.no_grad()\n", | |
| " def build_stats(self, loader, max_batches=50):\n", | |
| " if not self.enabled:\n", | |
| " return {}\n", | |
| " device = next(self.teacher.parameters()).device\n", | |
| " sums = {g: 0.0 for g in self.grids}\n", | |
| " sumsq = {g: 0.0 for g in self.grids}\n", | |
| " count = {g: 0 for g in self.grids}\n", | |
| "\n", | |
| " for bi, batch in enumerate(loader):\n", | |
| " if bi >= max_batches:\n", | |
| " break\n", | |
| " mask = as_mask_4d(batch[2].to(device))\n", | |
| " dwi = as_slice_4d(batch[1].to(device))\n", | |
| " _, skips = self.teacher(dwi)\n", | |
| " by_grid = {int(t.shape[-1]): t for t in skips}\n", | |
| " for g in self.grids:\n", | |
| " v = self.heads[str(g)].pool_target(by_grid[g], mask)\n", | |
| " sums[g] = sums[g] + v.sum(0).double()\n", | |
| " sumsq[g] = sumsq[g] + v.pow(2).sum(0).double()\n", | |
| " count[g] = count[g] + v.shape[0]\n", | |
| " del skips, by_grid\n", | |
| "\n", | |
| " for g in self.grids:\n", | |
| " n = max(count[g], 1)\n", | |
| " mean = sums[g] / n\n", | |
| " std = (sumsq[g] / n - mean.pow(2)).clamp(min=1e-12).sqrt()\n", | |
| " self.stats[g] = (mean.float(), std.float())\n", | |
| " dead = int((std < 1e-3).sum())\n", | |
| " if dead:\n", | |
| " print('[KD] PERINGATAN grid %d: %d kanal std ~0, targetnya jadi nol'\n", | |
| " % (g, dead))\n", | |
| " return self.stats\n", | |
| "\n", | |
| " def standardize(self, grid, v):\n", | |
| " if grid not in self.stats:\n", | |
| " return v\n", | |
| " mean, std = self.stats[grid]\n", | |
| " return (v - mean.to(v.device)) / std.to(v.device).clamp(min=1e-6)\n", | |
| "\n", | |
| " @torch.no_grad()\n", | |
| " def activation_negative(self, loader, max_batches=5):\n", | |
| " \"\"\"DIAGNOSTIK: pangsa |x|^p yang berada di nilai negatif, per grid.\n", | |
| "\n", | |
| " GeM membuang nilai negatif (clamp min=eps, eps**3 = 1e-18). Terukur:\n", | |
| " resenc 0.000000 (sisa LeakyReLU 0.01), efficientnetb3 0.387-0.412,\n", | |
| " swinv2tiny 0.500-0.536, umamba 0.488-0.549, transunet g16 0.729.\n", | |
| " Dipakai hanya kalau ada yang mencoba mengubah p dari 1.\n", | |
| " \"\"\"\n", | |
| " if not self.enabled:\n", | |
| " return {}\n", | |
| " device = next(self.teacher.parameters()).device\n", | |
| " neg, tot = {}, {}\n", | |
| " for bi, batch in enumerate(loader):\n", | |
| " if bi >= max_batches:\n", | |
| " break\n", | |
| " _, skips = self.teacher(as_slice_4d(batch[1].to(device)))\n", | |
| " for t in skips:\n", | |
| " g = int(t.shape[-1])\n", | |
| " if g not in self.grids:\n", | |
| " continue\n", | |
| " a = t.float().abs().pow(3.0)\n", | |
| " neg[g] = neg.get(g, 0.0) + float(a.masked_fill(t >= 0, 0).sum())\n", | |
| " tot[g] = tot.get(g, 0.0) + float(a.sum())\n", | |
| " return {g: neg[g] / max(tot[g], 1e-12) for g in neg}\n", | |
| "\n", | |
| " @torch.no_grad()\n", | |
| " def teacher_norms(self, dwi, mask):\n", | |
| " if not self.enabled:\n", | |
| " return {}\n", | |
| " mask = as_mask_4d(mask)\n", | |
| " _, skips = self.teacher(dwi.float())\n", | |
| " by_grid = {int(t.shape[-1]): t for t in skips}\n", | |
| " return {g: float(self.heads[str(g)].pool_target(by_grid[g], mask)\n", | |
| " .norm(dim=1).mean()) for g in self.grids}\n", | |
| "\n", | |
| " @torch.no_grad()\n", | |
| " def teacher_targets(self, dwi, mask):\n", | |
| " if not self.enabled:\n", | |
| " return {}\n", | |
| " mask = as_mask_4d(mask)\n", | |
| " _, skips = self.teacher(as_slice_4d(dwi))\n", | |
| " by_grid = {int(t.shape[-1]): t for t in skips}\n", | |
| " out = {}\n", | |
| " for g in self.grids:\n", | |
| " if g not in by_grid:\n", | |
| " raise RuntimeError('guru %s tidak punya grid %d'\n", | |
| " % (self.teacher.model, g))\n", | |
| " v = self.heads[str(g)].pool_target(by_grid[g], mask)\n", | |
| " out[g] = (self.standardize(g, v)\n", | |
| " if CONFIG['KD_STANDARDIZE'] else v).detach()\n", | |
| " return out\n", | |
| "\n", | |
| " def student_vectors(self, student_skips, mask):\n", | |
| " mask = as_mask_4d(mask)\n", | |
| " by_grid = {int(t.shape[-1]): t for t in student_skips}\n", | |
| " missing = [g for g in self.grids if g not in by_grid]\n", | |
| " if missing:\n", | |
| " raise RuntimeError('siswa tidak punya grid %s; tersedia %s'\n", | |
| " % (missing, sorted(by_grid, reverse=True)))\n", | |
| " return {g: self.heads[str(g)](by_grid[g], mask) for g in self.grids}\n", | |
| "\n", | |
| " def forward(self, student_skips, dwi, mask):\n", | |
| " if not self.enabled:\n", | |
| " self.valid = None\n", | |
| " return {}, {}\n", | |
| " self.valid = valid_batch(mask)\n", | |
| " return (self.student_vectors(student_skips, mask),\n", | |
| " self.teacher_targets(dwi, mask))\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "cc49dc62", | |
| "metadata": {}, | |
| "source": [ | |
| "# Loss" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 78, | |
| "id": "f847b34c", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def classification_loss(cls_logits, cls_targets, pos_weight=1.0, smoothing=0.1):\n", | |
| " targets = cls_targets.float()\n", | |
| " targets = targets * (1.0 - smoothing) + 0.5 * smoothing\n", | |
| " pos_weight = torch.as_tensor(\n", | |
| " pos_weight,\n", | |
| " device=cls_logits.device,\n", | |
| " dtype=cls_logits.dtype,\n", | |
| " )\n", | |
| " return F.binary_cross_entropy_with_logits(cls_logits, targets, pos_weight=pos_weight)\n", | |
| "\n", | |
| "\n", | |
| "def distillation_loss(student_vecs, teacher_vecs, weights, valid):\n", | |
| " if not student_vecs:\n", | |
| " return torch.zeros((), requires_grad=True), {}\n", | |
| "\n", | |
| " per_grid = {}\n", | |
| " total, wsum = 0.0, 0.0\n", | |
| " n_valid = valid.sum().clamp(min=1)\n", | |
| " for grid, weight in weights.items():\n", | |
| " cos = F.cosine_similarity(F.normalize(student_vecs[grid], dim=1),\n", | |
| " F.normalize(teacher_vecs[grid], dim=1), dim=1)\n", | |
| " per_grid[grid] = (1.0 - cos) * valid\n", | |
| " total = total + weight * per_grid[grid].sum() / n_valid\n", | |
| " wsum += weight\n", | |
| " return total / max(wsum, CONFIG['EPS']), per_grid\n", | |
| "\n", | |
| "\n", | |
| "def total_loss(cls_logits, cls_targets, student_vecs, teacher_vecs, weights, valid):\n", | |
| " l_cls = classification_loss(cls_logits, cls_targets,\n", | |
| " pos_weight=CONFIG['POS_WEIGHT'],\n", | |
| " smoothing=CONFIG['SMOOTHING'])\n", | |
| " l_kd, per_grid = distillation_loss(student_vecs, teacher_vecs, weights, valid)\n", | |
| " parts = {\n", | |
| " 'cls': float(CONFIG['ALPHA_CLS'] * l_cls),\n", | |
| " 'kd': float(CONFIG['GAMMA_DISTILL'] * l_kd),\n", | |
| " 'kd_raw': float(l_kd),\n", | |
| " 'kd_grid': {g: float(v.mean()) for g, v in per_grid.items()},\n", | |
| " }\n", | |
| " total = CONFIG['ALPHA_CLS'] * l_cls + CONFIG['GAMMA_DISTILL'] * l_kd\n", | |
| " return total, parts\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "bfbe08cb", | |
| "metadata": {}, | |
| "source": [ | |
| "# Dataset" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 79, | |
| "id": "f9d657a8", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "class StrokeDataset(Dataset):\n", | |
| " def __init__(self, label_list, image_path_dict, phase=1, augment=False, jitter_prob=0.0, jitter_std=0.0, slice_context=1):\n", | |
| " if phase not in [1, 2, 3, 4]:\n", | |
| " raise ValueError(\"Phase must be either 1 or 2 or 3.\")\n", | |
| " if slice_context < 1 or slice_context % 2 == 0:\n", | |
| " raise ValueError(f\"Slice Context must be odd and >= 1.\")\n", | |
| " \n", | |
| " self.labels = label_list\n", | |
| " self.image_path = image_path_dict\n", | |
| " self.phase = phase\n", | |
| " self.augment = augment\n", | |
| " self.slice_context = slice_context\n", | |
| " self._cached_pid = None\n", | |
| " self._cached_modalities = None\n", | |
| " self._cached_imgs = None\n", | |
| " self.pid_to_idx = {}\n", | |
| " for pid, _, _ in self.labels:\n", | |
| " if pid not in self.pid_to_idx:\n", | |
| " self.pid_to_idx[pid] = len(self.pid_to_idx)\n", | |
| " self.jitter_prob = jitter_prob\n", | |
| " self.jitter_std = jitter_std\n", | |
| " self.phase2_transform = A.Compose([\n", | |
| " A.RandomGamma(gamma_limit=(80, 120), p=0.3),\n", | |
| " A.GaussNoise(std_range=(0.01, 0.05), p=0.2)\n", | |
| " ])\n", | |
| " self.phase3_transform = A.Compose([\n", | |
| " A.HorizontalFlip(p=0.5),\n", | |
| " A.Rotate(\n", | |
| " limit=15, p=0.5,\n", | |
| " border_mode=cv2.BORDER_CONSTANT,\n", | |
| " fill=0,\n", | |
| " fill_mask=0,\n", | |
| " interpolation=cv2.INTER_LINEAR,\n", | |
| " mask_interpolation=cv2.INTER_NEAREST\n", | |
| " ),\n", | |
| " A.RandomScale(\n", | |
| " scale_limit=0.2, p=0.3,\n", | |
| " interpolation=cv2.INTER_LINEAR,\n", | |
| " mask_interpolation=cv2.INTER_NEAREST\n", | |
| " ), \n", | |
| " A.PadIfNeeded(\n", | |
| " min_height=256, min_width=256,\n", | |
| " border_mode=cv2.BORDER_CONSTANT,\n", | |
| " fill=0,\n", | |
| " fill_mask=0\n", | |
| " ),\n", | |
| " A.CenterCrop(256, 256),\n", | |
| " A.RandomGamma(gamma_limit=(80, 120), p=0.3),\n", | |
| " A.GaussNoise(std_range=(0.01, 0.05), p=0.2)\n", | |
| " ])\n", | |
| " # 2 + 3 di 1 pipeline\n", | |
| " self.spatial_transform = A.Compose([\n", | |
| " A.HorizontalFlip(p=0.5),\n", | |
| " A.Affine(\n", | |
| " scale=(0.8, 1.2),\n", | |
| " rotate=(-15, 15),\n", | |
| " interpolation=cv2.INTER_LINEAR,\n", | |
| " mask_interpolation=cv2.INTER_NEAREST,\n", | |
| " border_mode=cv2.BORDER_CONSTANT,\n", | |
| " fill=0,\n", | |
| " fill_mask=0,\n", | |
| " p=0.7,\n", | |
| " ),], additional_targets={\"dwi\": \"image\", \"brain\": \"image\"},\n", | |
| " )\n", | |
| " self.intensity_transform_ncct = A.Compose([\n", | |
| " A.RandomGamma(\n", | |
| " gamma_limit=(80, 120),\n", | |
| " p=0.3,\n", | |
| " ),\n", | |
| " A.RandomBrightnessContrast(\n", | |
| " brightness_limit=0.15,\n", | |
| " contrast_limit=0.15,\n", | |
| " p=0.5,\n", | |
| " ),\n", | |
| " A.GaussNoise(\n", | |
| " std_range=(0.01, 0.03),\n", | |
| " p=0.2,\n", | |
| " ),\n", | |
| " A.GaussianBlur(\n", | |
| " blur_limit=(3, 3),\n", | |
| " p=0.15,\n", | |
| " ),\n", | |
| " ])\n", | |
| " \n", | |
| " def __len__(self):\n", | |
| " return len(self.labels)\n", | |
| " \n", | |
| " def _load_img(self, pid, modalities=['ncct', 'dwi', 'mask', 'brain']):\n", | |
| " if self._cached_pid == pid and self._cached_modalities == modalities:\n", | |
| " return self._cached_imgs\n", | |
| " \n", | |
| " paths = self.image_path[pid]\n", | |
| " ct_img = nib.load(paths['ncct']) if 'ncct' in modalities else None\n", | |
| " dwi_img = nib.load(paths['dwi']) if 'dwi' in modalities else None\n", | |
| " mask_img = nib.load(paths['mask']) if 'mask' in modalities else None\n", | |
| " brain_img = nib.load(paths['brain']) if 'brain' in modalities else None\n", | |
| " \n", | |
| " self._cached_pid = pid\n", | |
| " self._cached_modalities = modalities\n", | |
| " self._cached_imgs = (ct_img, dwi_img, mask_img, brain_img)\n", | |
| " \n", | |
| " return self._cached_imgs\n", | |
| " \n", | |
| " @staticmethod\n", | |
| " def _read_slice(img, z):\n", | |
| " return np.asarray(img.dataobj[:, :, z], dtype=np.float32)\n", | |
| " \n", | |
| " def _load_phase_1(self, idx):\n", | |
| " pid, z, _ = self.labels[idx]\n", | |
| " _, dwi_img, _, _ = self._load_img(pid, ['dwi'])\n", | |
| " dwi_slices = self._read_slice(dwi_img, z)\n", | |
| " \n", | |
| " if self.augment:\n", | |
| " if np.random.random() > 0.5:\n", | |
| " dwi_slices = np.flip(dwi_slices, axis=1).copy()\n", | |
| " jitter = np.random.uniform(-0.05, 0.05)\n", | |
| " dwi_slices = np.clip(dwi_slices + jitter, 0.0, 1.0)\n", | |
| " \n", | |
| " dwi_t = torch.from_numpy(dwi_slices.copy()).unsqueeze(0).float()\n", | |
| " \n", | |
| " return dwi_t, dwi_t\n", | |
| " \n", | |
| " def _load_phase_2(self, idx):\n", | |
| " pid, z, label = self.labels[idx]\n", | |
| " ct_img, dwi_img, _, _ = self._load_img(pid, ['ncct', 'dwi'])\n", | |
| " ct_slices = self._read_slice(ct_img, z)\n", | |
| " dwi_slices = self._read_slice(dwi_img, z)\n", | |
| " \n", | |
| " if self.augment and np.random.random() > 0.5:\n", | |
| " ct_slices = np.flip(ct_slices, axis=1)\n", | |
| " dwi_slices = np.flip(dwi_slices, axis=1)\n", | |
| " if self.augment and np.random.random() < self.jitter_prob:\n", | |
| " ct_slices = (\n", | |
| " ct_slices + np.random.normal(\n", | |
| " 0, self.jitter_std, ct_slices.shape\n", | |
| " ).astype(np.float32)\n", | |
| " )\n", | |
| " ct_slices = np.clip(ct_slices, 0.0, 1.0)\n", | |
| "\n", | |
| " if self.augment:\n", | |
| " ct_slices = self.phase2_transform(image=ct_slices)['image']\n", | |
| " \n", | |
| " ct_t = torch.from_numpy(ct_slices.copy()).unsqueeze(0).float()\n", | |
| " dwi_t = torch.from_numpy(dwi_slices.copy()).unsqueeze(0).float()\n", | |
| " label_t = torch.tensor(label, dtype=torch.float32)\n", | |
| " \n", | |
| " return ct_t, dwi_t, label_t\n", | |
| "\n", | |
| " def _load_phase_3(self, idx):\n", | |
| " pid, z, _ = self.labels[idx]\n", | |
| " ct_img, _, mask_img, _ = self._load_img(pid, ['ncct', 'mask'])\n", | |
| " depth = ct_img.shape[2]\n", | |
| " \n", | |
| " if self.slice_context == 1:\n", | |
| " ct_slices = self._read_slice(ct_img, z)\n", | |
| " else:\n", | |
| " half = (self.slice_context - 1) // 2\n", | |
| " ct_slices = np.stack(\n", | |
| " [self._read_slice(ct_img, min(max(z + d, 0), depth - 1))\n", | |
| " for d in range(-half, half + 1)],\n", | |
| " axis=-1,\n", | |
| " )\n", | |
| "\n", | |
| " mask_slices = self._read_slice(mask_img, z)\n", | |
| " aug = self.phase3_transform\n", | |
| " \n", | |
| " if self.augment:\n", | |
| " augmented = aug(image=ct_slices, mask=mask_slices)\n", | |
| " ct_slices = augmented['image']\n", | |
| " mask_slices = augmented['mask']\n", | |
| " \n", | |
| " ct_t = torch.from_numpy(np.ascontiguousarray(ct_slices)).float()\n", | |
| " mask_t = torch.from_numpy(np.ascontiguousarray(mask_slices)).float()\n", | |
| " patient_idx = self.pid_to_idx[pid]\n", | |
| " \n", | |
| " if ct_t.ndim == 2:\n", | |
| " ct_t = ct_t.unsqueeze(0)\n", | |
| " else:\n", | |
| " ct_t = ct_t.permute(2, 0, 1).contiguous()\n", | |
| " if mask_t.ndim == 2:\n", | |
| " mask_t = mask_t.unsqueeze(0)\n", | |
| " \n", | |
| " return ct_t, mask_t, patient_idx\n", | |
| "\n", | |
| " def _stack_neighbourhood(self, img, z):\n", | |
| " if self.slice_context == 1:\n", | |
| " return self._read_slice(img, z)\n", | |
| " depth = img.shape[2]\n", | |
| " half = (self.slice_context - 1) // 2\n", | |
| " return np.stack(\n", | |
| " [self._read_slice(img, min(max(z + d, 0), depth - 1))\n", | |
| " for d in range(-half, half + 1)],\n", | |
| " axis=-1,\n", | |
| " )\n", | |
| "\n", | |
| " def _load_phase_2_3(self, idx):\n", | |
| " pid, z, label = self.labels[idx]\n", | |
| " ct_img, dwi_img, mask_img, brain_img = self._load_img(pid, ['ncct', 'dwi', 'mask', 'brain'])\n", | |
| " ct_slices = self._stack_neighbourhood(ct_img, z)\n", | |
| " dwi_slices = self._read_slice(dwi_img, z)\n", | |
| " mask_slices = self._read_slice(mask_img, z)\n", | |
| " brain_slices = self._read_slice(brain_img, z)\n", | |
| " \n", | |
| " if self.augment:\n", | |
| " aug = self.spatial_transform(\n", | |
| " image=ct_slices,\n", | |
| " dwi=dwi_slices,\n", | |
| " mask=mask_slices,\n", | |
| " brain=brain_slices,\n", | |
| " )\n", | |
| " ct_slices = self.intensity_transform_ncct(image=aug['image'])['image']\n", | |
| " mask_slices = aug['mask']\n", | |
| " brain_slices = aug['brain']\n", | |
| " \n", | |
| " ct_t = torch.from_numpy(np.ascontiguousarray(ct_slices)).float()\n", | |
| " if ct_t.ndim == 2:\n", | |
| " ct_t = ct_t.unsqueeze(0)\n", | |
| " else:\n", | |
| " ct_t = ct_t.permute(2, 0, 1).contiguous()\n", | |
| " dwi_t = torch.from_numpy(np.ascontiguousarray(dwi_slices)).float()\n", | |
| " mask_t = torch.from_numpy(np.ascontiguousarray(mask_slices)).float()\n", | |
| " label_t = torch.tensor(label, dtype=torch.float32)\n", | |
| " patient_idx = self.pid_to_idx[pid]\n", | |
| " brain_t = torch.from_numpy(np.ascontiguousarray(brain_slices)).float()\n", | |
| "\n", | |
| " return ct_t, dwi_t, mask_t, label_t, patient_idx, brain_t\n", | |
| " \n", | |
| " def __getitem__(self, idx):\n", | |
| " if self.phase == 1:\n", | |
| " return self._load_phase_1(idx)\n", | |
| " elif self.phase == 2:\n", | |
| " return self._load_phase_2(idx)\n", | |
| " elif self.phase == 3:\n", | |
| " return self._load_phase_3(idx)\n", | |
| " elif self.phase == 4:\n", | |
| " return self._load_phase_2_3(idx)\n", | |
| " \n", | |
| " \n", | |
| "def build_information(dataset_dir, split_name):\n", | |
| " \"\"\"\n", | |
| " Requires split.json file in dataset directory,\n", | |
| " with labels.json file in each patient directory.\n", | |
| " [dataset_dir]/\n", | |
| " split.json\n", | |
| " [split_name]/\n", | |
| " [patient]/\n", | |
| " labels.json\n", | |
| " \"\"\"\n", | |
| " label_list = []\n", | |
| " path_dict = {}\n", | |
| " split_json_path = os.path.join(dataset_dir, 'split.json')\n", | |
| " if not os.path.exists(split_json_path):\n", | |
| " raise FileNotFoundError(f\"Split file not found.\")\n", | |
| " \n", | |
| " with open(split_json_path, 'r') as f:\n", | |
| " splits = json.load(f)\n", | |
| "\n", | |
| " if split_name not in splits:\n", | |
| " raise FileNotFoundError(f\"Split '{split_name}' not found in split file.\")\n", | |
| " \n", | |
| " patients_in_split = splits[split_name]\n", | |
| " for pid in tqdm(patients_in_split, desc=f\"Building {split_name} information\"):\n", | |
| " patient_folder = os.path.join(dataset_dir, split_name, pid)\n", | |
| " label_file = os.path.join(patient_folder, 'labels.json')\n", | |
| " ct_path = os.path.join(patient_folder, 'ncct.nii')\n", | |
| " dwi_path = os.path.join(patient_folder, 'dwi.nii')\n", | |
| " mask_path = os.path.join(patient_folder, 'mask.nii')\n", | |
| " brain_path = os.path.join(patient_folder, 'brain.nii')\n", | |
| " if not os.path.exists(brain_path):\n", | |
| " raise FileNotFoundError('brain.nii tidak ada: %s' % brain_path)\n", | |
| " \n", | |
| " path_dict[pid] = {\n", | |
| " 'ncct': ct_path,\n", | |
| " 'dwi': dwi_path,\n", | |
| " 'mask': mask_path,\n", | |
| " 'brain': brain_path\n", | |
| " }\n", | |
| " \n", | |
| " with open(label_file, 'r') as f:\n", | |
| " data = json.load(f)\n", | |
| " if 'labels' in data:\n", | |
| " for z_str, has_lesion in data['labels'].items():\n", | |
| " z = int(z_str)\n", | |
| " label_value = 1.0 if has_lesion else 0.0\n", | |
| " label_list.append((pid, z, label_value))\n", | |
| " \n", | |
| " return label_list, path_dict" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "8747c8e0", | |
| "metadata": {}, | |
| "source": [ | |
| "# Scheduler & Optimizer" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 80, | |
| "id": "f7ee2ff0", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def warmup_cosine_factor(step, warmup_steps, total_steps, min_ratio):\n", | |
| " if warmup_steps > 0 and step < warmup_steps:\n", | |
| " return float(step + 1) / float(warmup_steps)\n", | |
| " if step >= total_steps:\n", | |
| " return float(min_ratio)\n", | |
| " span = max(total_steps - warmup_steps, 1)\n", | |
| " progress = (step - warmup_steps) / float(span)\n", | |
| " cosine = 0.5 * (1.0 + math.cos(math.pi * progress))\n", | |
| " return float(min_ratio) + (1.0 - float(min_ratio)) * cosine\n", | |
| "\n", | |
| "\n", | |
| "def build_optimizer_and_scheduler(model, kd_module, steps_per_epoch):\n", | |
| " \"\"\"Tiga param group + satu LambdaLR dengan faktor PER GROUP.\n", | |
| "\n", | |
| " Base lr berbeda (encoder 1e-5, kepala & adaptor 1e-4) dan ujungnya harus\n", | |
| " SAMA: semuanya turun ke CONFIG['MIN_LR'] absolut. LambdaLR mengalikan\n", | |
| " FAKTOR terhadap base masing-masing, jadi satu faktor bersama membuat\n", | |
| " encoder berakhir di 1e-8 (rasio 1:10 terjaga). Untuk lantai absolut yang\n", | |
| " sama, tiap group diberi min_ratio = MIN_LR / base:\n", | |
| "\n", | |
| " encoder 1e-5 -> 1e-7 : min_ratio 0.01\n", | |
| " head/kd 1e-4 -> 1e-7 : min_ratio 0.001\n", | |
| "\n", | |
| " Konsekuensinya rasio antar-group menyempit di akhir (1:10 -> 1:1). Itu\n", | |
| " konsekuensi langsung dari \"semua ke 1e-7\"; kalau rasio harus tetap, pakai\n", | |
| " min_ratio bersama dan encoder berhenti di 1e-8.\n", | |
| "\n", | |
| " Parameter dengan requires_grad=False (guru beku, buffer p) tidak masuk\n", | |
| " optimizer: kalau ikut, Adam tetap membuat state untuk mereka.\n", | |
| " \"\"\"\n", | |
| " groups = [{'params': [p for p in model.encoder.parameters() if p.requires_grad],\n", | |
| " 'lr': CONFIG['LR_ENCODER'], 'name': 'encoder'},\n", | |
| " {'params': [p for p in model.head.parameters() if p.requires_grad],\n", | |
| " 'lr': CONFIG['LR_CLS'], 'name': 'head'}]\n", | |
| " if kd_module is not None and kd_module.enabled:\n", | |
| " kd_params = [p for p in kd_module.heads.parameters() if p.requires_grad]\n", | |
| " if kd_params:\n", | |
| " groups.append({'params': kd_params, 'lr': CONFIG['LR_KD'], 'name': 'kd'})\n", | |
| "\n", | |
| " optimizer = torch.optim.AdamW(groups, weight_decay=CONFIG['WEIGHT_DECAY'])\n", | |
| "\n", | |
| " total_steps = int(steps_per_epoch) * int(CONFIG['EPOCHS'])\n", | |
| " warmup = int(CONFIG['WARMUP_STEPS'])\n", | |
| " if warmup >= total_steps:\n", | |
| " print('[sched] PERINGATAN warmup %d >= total %d, cosine dilewati'\n", | |
| " % (warmup, total_steps))\n", | |
| "\n", | |
| " bases = [grp['lr'] for grp in optimizer.param_groups]\n", | |
| " lambdas = [lambda step, base=base: warmup_cosine_factor(\n", | |
| " step, warmup, total_steps, CONFIG['MIN_LR'] / max(base, 1e-12))\n", | |
| " for base in bases]\n", | |
| " scheduler = torch.optim.lr_scheduler.LambdaLR(optimizer, lr_lambda=lambdas,\n", | |
| " last_epoch=-1)\n", | |
| "\n", | |
| " print('[sched] warmup %d step (%.2f epoch) | cosine %d step | total %d step'\n", | |
| " % (warmup, warmup / max(steps_per_epoch, 1),\n", | |
| " max(total_steps - warmup, 0), total_steps))\n", | |
| " for grp, base in zip(optimizer.param_groups, bases):\n", | |
| " print('[sched] %-8s base %.2e -> step0 %.2e -> lantai %.2e | %s param'\n", | |
| " % (grp['name'], base, grp['lr'], CONFIG['MIN_LR'],\n", | |
| " '{:,}'.format(sum(p.numel() for p in grp['params']))))\n", | |
| " return optimizer, scheduler\n", | |
| "\n", | |
| "\n", | |
| "def current_lrs(optimizer):\n", | |
| " \"\"\"lr aktual per group, untuk log per epoch.\"\"\"\n", | |
| " return {grp['name']: grp['lr'] for grp in optimizer.param_groups}" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "4cb0e093", | |
| "metadata": {}, | |
| "source": [ | |
| "# Graph" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 81, | |
| "id": "8180aac7", | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def epoch_axis():\n", | |
| " recorded = np.asarray(history.get('epoch', []), dtype=np.int64)\n", | |
| " if recorded.size == 0:\n", | |
| " return recorded\n", | |
| " return np.arange(recorded[0], int(CONFIG['EPOCHS']) + 1, dtype=np.int64)\n", | |
| "\n", | |
| "def pad_to_axis(values, axis):\n", | |
| " values = np.asarray(values, dtype=float)\n", | |
| " if axis.size == 0:\n", | |
| " return values\n", | |
| " result = np.full(axis.size, np.nan)\n", | |
| " n = min(values.size, axis.size)\n", | |
| " result[:n] = values[:n]\n", | |
| " if 0 < n < axis.size:\n", | |
| " result[n:] = values[n - 1]\n", | |
| " return result\n", | |
| "\n", | |
| "def metric_series(split, metric):\n", | |
| " raw = [float(m.get(metric, float('nan'))) for m in history[split]]\n", | |
| " return pad_to_axis(raw, epoch_axis())\n", | |
| "\n", | |
| "def kd_series(split, grid):\n", | |
| " raw = [float(m.get('kd_grid_cosine', {}).get(grid, float('nan')))\n", | |
| " for m in history[split]]\n", | |
| " return pad_to_axis(raw, epoch_axis())\n", | |
| "\n", | |
| "def style_axis(ax, metric, ylabel=''):\n", | |
| " ax.set_title(metric, fontsize=10)\n", | |
| " ax.set_xlabel('epoch')\n", | |
| " ax.set_ylabel(ylabel)\n", | |
| " ax.grid(alpha=0.3)\n", | |
| " axis = epoch_axis()\n", | |
| " if axis.size:\n", | |
| " ax.set_xlim(axis[0], axis[-1])\n", | |
| " if best_epoch:\n", | |
| " ax.axvline(best_epoch, color='0.35', lw=0.8, ls=':', zorder=0)\n", | |
| " recorded = np.asarray(history.get('epoch', []), dtype=np.int64)\n", | |
| " if recorded.size and recorded[-1] < int(CONFIG['EPOCHS']):\n", | |
| " ax.axvspan(recorded[-1], int(CONFIG['EPOCHS']), color='0.93', zorder=0)\n", | |
| " ax.text(recorded[-1], 0.5, ' early stop', transform=ax.get_xaxis_transform(),\n", | |
| " fontsize=7, color='0.45', va='center')\n", | |
| " \n", | |
| "def plot_train_val(ax, metric, ylabel=''):\n", | |
| " axis = epoch_axis()\n", | |
| " ax.plot(axis, metric_series('train_metrics', metric),\n", | |
| " color='tab:blue', label='train')\n", | |
| " ax.plot(axis, metric_series('val_metrics', metric),\n", | |
| " color='tab:orange', label='val')\n", | |
| " style_axis(ax, metric, ylabel)\n", | |
| " ax.legend(fontsize=8)\n", | |
| " \n", | |
| "def blank_panel(ax, message=None):\n", | |
| "\n", | |
| " if message:\n", | |
| " ax.set_title(message, fontsize=10, color='0.45')\n", | |
| " ax.set_xticks([])\n", | |
| " ax.set_yticks([])\n", | |
| " else:\n", | |
| " ax.axis('off')\n", | |
| " \n", | |
| "def confusion_panel(ax, epoch_index):\n", | |
| " confusion = history['val_metrics'][epoch_index].get('confusion')\n", | |
| " if not confusion:\n", | |
| " blank_panel(ax, 'confusion val: tidak tersedia')\n", | |
| " return\n", | |
| " matrix = np.array([[confusion['tn'], confusion['fp']],\n", | |
| " [confusion['fn'], confusion['tp']]], dtype=np.float64)\n", | |
| " ax.imshow(matrix, cmap='Blues')\n", | |
| " max_count = matrix.max() if matrix.max() > 0 else 1.0\n", | |
| " for (row, col), count in np.ndenumerate(matrix):\n", | |
| " ax.text(col, row, '%d' % count, ha='center', va='center', fontsize=11,\n", | |
| " color='white' if count > 0.6 * max_count else 'black')\n", | |
| " ax.set_xticks([0, 1]); ax.set_yticks([0, 1])\n", | |
| " ax.set_xticklabels(['pred 0', 'pred 1'])\n", | |
| " ax.set_yticklabels(['true 0', 'true 1'])\n", | |
| " ax.set_title('confusion val @ epoch %d (acc %.4f)'\n", | |
| " % (epochs[epoch_index],\n", | |
| " (matrix[0, 0] + matrix[1, 1]) / max(matrix.sum(), 1)), fontsize=10)\n", | |
| " ax.grid(False)\n", | |
| " \n", | |
| "def new_figure(title):\n", | |
| " fig, axes = plt.subplots(2, 2, figsize=(11, 7.5))\n", | |
| " fig.suptitle('%s | %s' % (title, RUN_TAG), fontsize=11)\n", | |
| " return fig, axes\n", | |
| "\n", | |
| "def save_figure(fig, filename):\n", | |
| " fig.tight_layout(rect=(0, 0, 1, 0.96))\n", | |
| " fig.savefig(os.path.join(CHECKPOINT_DIR, filename), dpi=150, bbox_inches='tight')" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "b43eab99", | |
| "metadata": {}, | |
| "source": [ | |
| "# Run" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 82, | |
| "id": "37811437", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "run : p2_resnet50-resenc\n", | |
| "log : /home/skibidi/PreThesis/[2]CLASSIFICATION/p2_resnet50-resenc/train.log\n", | |
| "mulai : 2026-10-24 08:39:58\n", | |
| "cfg : student resnet50 | teacher resenc | USE_DISTILL False | grid (128, 64, 32) | GAMMA 5.00\n" | |
| ] | |
| }, | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "Building train information: 100%|██████████| 104/104 [00:00<00:00, 2241.31it/s]\n", | |
| "Building val information: 100%|██████████| 22/22 [00:00<00:00, 3471.58it/s]\n" | |
| ] | |
| }, | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[RadImageNet] 318/318 tensor loaded | strict=True | 0 missing / 0 unexpected\n", | |
| "[KD] nonaktif (USE_DISTILL=False, grid=(128, 64, 32))\n", | |
| "[run] train 852 batch | val 184 batch | device cuda\n", | |
| "[sched] warmup 1500 step (1.76 epoch) | cosine 41100 step | total 42600 step\n", | |
| "[sched] encoder base 1.00e-05 -> step0 6.67e-09 -> lantai 1.00e-07 | 23,508,032 param\n", | |
| "[sched] head base 1.00e-04 -> step0 6.67e-08 -> lantai 1.00e-07 | 1,049,602 param\n", | |
| "[run] resume dari epoch 51 | best 34 | f1 0.7828\n", | |
| "\n", | |
| "Best Epoch : 34 | F1 (dipilih) 0.7828 | AUC 0.8915\n", | |
| "Epochs : 51 -> 50\n", | |
| "Time Elapsed : 0.0 menit (0.00 jam)\n", | |
| "best checkpoint: /home/skibidi/PreThesis/[2]CLASSIFICATION/p2_resnet50-resenc/p2_resnet50-resenc_best.pth\n", | |
| "last checkpoint: /home/skibidi/PreThesis/[2]CLASSIFICATION/p2_resnet50-resenc/p2_resnet50-resenc_last.pth\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "class _TeeLog:\n", | |
| " def __init__(self, notebook_stream, file_stream):\n", | |
| " self.notebook_stream = notebook_stream\n", | |
| " self.file_stream = file_stream\n", | |
| " def write(self, text):\n", | |
| " self.notebook_stream.write(text)\n", | |
| " self.file_stream.write(text)\n", | |
| " self.file_stream.flush()\n", | |
| " return len(text)\n", | |
| " def flush(self):\n", | |
| " self.notebook_stream.flush()\n", | |
| " self.file_stream.flush()\n", | |
| " def isatty(self):\n", | |
| " return False\n", | |
| " \n", | |
| "def bootstrap_ci(datas, draws=1000, seed=42, method='percentile'):\n", | |
| " finite = np.asarray(datas, dtype=np.float64)\n", | |
| " finite = finite[np.isfinite(finite)]\n", | |
| " if finite.size < 2:\n", | |
| " return float('nan'), float('nan')\n", | |
| " interval = bootstrap((finite,), np.mean, n_resamples=draws, method=method,\n", | |
| " vectorized=False, rng=np.random.default_rng(seed))\n", | |
| " return (float(interval.confidence_interval.low),\n", | |
| " float(interval.confidence_interval.high))\n", | |
| " \n", | |
| "def aggregate_per_patient(values, pids, draws=1000, seed=42):\n", | |
| " values = np.asarray(values, dtype=np.float64)\n", | |
| " pids = np.asarray(pids)\n", | |
| " unique = np.array(sorted(set(pids.tolist())))\n", | |
| " per_patient = np.array([values[pids == pid].mean() for pid in unique])\n", | |
| " low, high = bootstrap_ci(per_patient, draws=draws, seed=seed)\n", | |
| " return dict(mean=float(per_patient.mean()), ci_low=low, ci_high=high)\n", | |
| " \n", | |
| "def ci_per_metric(metrics, pids, draws=1000, seed=42):\n", | |
| " return {k: aggregate_per_patient(v, pids, draws=draws, seed=seed)\n", | |
| " for k, v in metrics.items()}\n", | |
| "\n", | |
| "def _cls_metrics_np(pred, label, prob):\n", | |
| " tp = int(((pred == 1) & (label == 1)).sum())\n", | |
| " tn = int(((pred == 0) & (label == 0)).sum())\n", | |
| " fp = int(((pred == 1) & (label == 0)).sum())\n", | |
| " fn = int(((pred == 0) & (label == 1)).sum())\n", | |
| " acc = (tp + tn) / max(tp + tn + fp + fn, 1)\n", | |
| " prec = tp / max(tp + fp, 1)\n", | |
| " rec = tp / max(tp + fn, 1)\n", | |
| " out = dict(accuracy=acc, precision=prec, recall=rec,\n", | |
| " f1=2 * prec * rec / max(prec + rec, CONFIG['EPS']),\n", | |
| " roc_auc=float('nan'), pr_auc=float('nan'))\n", | |
| " if 0 < label.sum() < label.size:\n", | |
| " out['roc_auc'] = float(roc_auc_score(label, prob))\n", | |
| " out['pr_auc'] = float(average_precision_score(label, prob))\n", | |
| " return out\n", | |
| "\n", | |
| "def calculate_metrics_cls(preds, labels, probs=None):\n", | |
| " preds = preds.float()\n", | |
| " labels = labels.float()\n", | |
| " tp = ((preds == 1) & (labels == 1)).sum().item()\n", | |
| " tn = ((preds == 0) & (labels == 0)).sum().item()\n", | |
| " fp = ((preds == 1) & (labels == 0)).sum().item()\n", | |
| " fn = ((preds == 0) & (labels == 1)).sum().item()\n", | |
| " accuracy = (tp + tn) / max(tp + tn + fp + fn, 1)\n", | |
| " precision = tp / max(tp + fp, 1)\n", | |
| " recall = tp / max(tp + fn, 1)\n", | |
| " f1 = (2 * precision * recall / max(precision + recall, CONFIG['EPS']))\n", | |
| " roc_auc = float('nan')\n", | |
| " pr_auc = float('nan')\n", | |
| " if probs is not None:\n", | |
| " y_true = labels.numpy().astype(np.int64)\n", | |
| " y_score = probs.numpy().astype(np.float64)\n", | |
| " if len(np.unique(y_true)) > 1:\n", | |
| " roc_auc = float(roc_auc_score(y_true, y_score))\n", | |
| " pr_auc = float(average_precision_score(y_true, y_score))\n", | |
| "\n", | |
| " counts = {'tp': int(tp), 'tn': int(tn), 'fp': int(fp), 'fn': int(fn)}\n", | |
| " return accuracy, precision, recall, f1, roc_auc, pr_auc, counts\n", | |
| "\n", | |
| "def cluster_metric_ci(preds, labels, probs, pids, draws=500, seed=42):\n", | |
| " preds = np.asarray(preds, dtype=np.int64)\n", | |
| " labels = np.asarray(labels, dtype=np.int64)\n", | |
| " probs = np.asarray(probs, dtype=np.float64)\n", | |
| " pids = np.asarray(pids)\n", | |
| " uniq = np.unique(pids)\n", | |
| " if uniq.size < 2:\n", | |
| " return {k: (float('nan'), float('nan')) for k in CI_KEYS}, int(uniq.size)\n", | |
| " rows_of = {u: np.where(pids == u)[0] for u in uniq}\n", | |
| " rng = np.random.default_rng(seed)\n", | |
| " buckets = {k: [] for k in CI_KEYS}\n", | |
| " for _ in range(draws):\n", | |
| " pick = rng.choice(uniq, size=uniq.size, replace=True)\n", | |
| " rows = np.concatenate([rows_of[u] for u in pick])\n", | |
| " m = _cls_metrics_np(preds[rows], labels[rows], probs[rows])\n", | |
| " for k in CI_KEYS:\n", | |
| " if np.isfinite(m[k]):\n", | |
| " buckets[k].append(m[k])\n", | |
| " ci = {}\n", | |
| " for k in CI_KEYS:\n", | |
| " v = buckets[k]\n", | |
| " if len(v) < 2:\n", | |
| " ci[k] = (float('nan'), float('nan'))\n", | |
| " else:\n", | |
| " ci[k] = (float(np.percentile(v, 2.5)), float(np.percentile(v, 97.5)))\n", | |
| " return ci, int(uniq.size)\n", | |
| "\n", | |
| "def run_epoch(model, kd, loader, device, epoch, optimizer=None, scheduler=None):\n", | |
| " train = optimizer is not None\n", | |
| " use_kd = kd is not None and kd.enabled\n", | |
| " model.train(train)\n", | |
| "\n", | |
| " sum_loss = sum_cls = sum_kd = 0.0\n", | |
| " kd_grid_totals = {}\n", | |
| " samples = 0\n", | |
| " preds_all, probs_all, labels_all, pids_all = [], [], [], []\n", | |
| "\n", | |
| " pbar = tqdm(loader, desc=f\"Epoch {epoch}/{CONFIG['EPOCHS']}\")\n", | |
| " for batch in pbar:\n", | |
| " ct, dwi, mask, label, patient_idx, brain = batch\n", | |
| " ct = ct.to(device, non_blocking=True).float()\n", | |
| " dwi = dwi.to(device, non_blocking=True).float()\n", | |
| " label = label.to(device, non_blocking=True).float()\n", | |
| " brain = brain.to(device, non_blocking=True).float()\n", | |
| "\n", | |
| " with torch.set_grad_enabled(train):\n", | |
| " if use_kd:\n", | |
| " logits, skips = model(ct, return_skips=True)\n", | |
| " s_vec, t_vec = kd(skips, dwi, brain)\n", | |
| " loss, parts = total_loss(logits, label, s_vec, t_vec,\n", | |
| " DISTILL_GRID_WEIGHTS, kd.valid)\n", | |
| " del s_vec, t_vec, skips\n", | |
| " else:\n", | |
| " logits = model(ct)\n", | |
| " l_cls = classification_loss(\n", | |
| " logits, label,\n", | |
| " pos_weight=CONFIG['POS_WEIGHT'],\n", | |
| " smoothing=CONFIG['SMOOTHING'] if train else 0.0)\n", | |
| " loss = CONFIG['ALPHA_CLS'] * l_cls\n", | |
| " parts = {'cls': float(loss), 'kd': 0.0, 'kd_raw': 0.0, 'kd_grid': {}}\n", | |
| "\n", | |
| " if train:\n", | |
| " optimizer.zero_grad(set_to_none=True)\n", | |
| " loss.backward()\n", | |
| " clip_grad_norm_(model.parameters(), max_norm=CONFIG['GRAD_CLIP'])\n", | |
| " if use_kd:\n", | |
| " clip_grad_norm_(kd.heads.parameters(), max_norm=CONFIG['GRAD_CLIP'])\n", | |
| " optimizer.step()\n", | |
| " if scheduler is not None:\n", | |
| " scheduler.step()\n", | |
| "\n", | |
| " bs = ct.size(0)\n", | |
| " samples += bs\n", | |
| " sum_loss += float(loss) * bs\n", | |
| " sum_cls += parts['cls'] * bs\n", | |
| " sum_kd += parts['kd'] * bs\n", | |
| " for grid, value in parts['kd_grid'].items():\n", | |
| " kd_grid_totals[grid] = kd_grid_totals.get(grid, 0.0) + value * bs\n", | |
| "\n", | |
| " probs = torch.sigmoid(logits.detach())\n", | |
| " preds_all.append((probs >= 0.5).float().cpu())\n", | |
| " probs_all.append(probs.cpu())\n", | |
| " labels_all.append(label.detach().cpu())\n", | |
| " pids_all.append(np.asarray(\n", | |
| " patient_idx.cpu() if torch.is_tensor(patient_idx) else patient_idx\n", | |
| " ).reshape(-1)) \n", | |
| "\n", | |
| " accuracy, precision, recall, f1, roc_auc, pr_auc, confusion = calculate_metrics_cls(\n", | |
| " torch.cat(preds_all), torch.cat(labels_all), torch.cat(probs_all))\n", | |
| " \n", | |
| " ci, n_patient = {}, 0\n", | |
| " if not train:\n", | |
| " ci, n_patient = cluster_metric_ci(\n", | |
| " torch.cat(preds_all).numpy(),\n", | |
| " torch.cat(labels_all).numpy(),\n", | |
| " torch.cat(probs_all).numpy(),\n", | |
| " np.concatenate(pids_all),\n", | |
| " draws=min(CONFIG['BOOTSTRAP_DRAWS'], 500),\n", | |
| " seed=CONFIG['INIT_SEED'])\n", | |
| " del preds_all, probs_all, labels_all, pids_all\n", | |
| "\n", | |
| " result = {\n", | |
| " 'loss': sum_loss / max(samples, 1),\n", | |
| " 'cls_loss': sum_cls / max(samples, 1),\n", | |
| " 'kd_loss': sum_kd / max(samples, 1),\n", | |
| " 'kd_grid_cosine': {g: v / max(samples, 1) for g, v in kd_grid_totals.items()},\n", | |
| " 'accuracy': accuracy,\n", | |
| " 'precision': precision,\n", | |
| " 'recall': recall,\n", | |
| " 'f1': f1,\n", | |
| " 'roc_auc': roc_auc,\n", | |
| " 'pr_auc': pr_auc,\n", | |
| " 'confusion': confusion,\n", | |
| " 'ci': ci,\n", | |
| " 'n_patient': n_patient,\n", | |
| " }\n", | |
| " if optimizer is not None:\n", | |
| " result['lr'] = current_lrs(optimizer)\n", | |
| " return result\n", | |
| "\n", | |
| "\n", | |
| "def checkpoint_payload(epoch, val_metrics):\n", | |
| " return {\n", | |
| " 'epoch': epoch,\n", | |
| " 'model_state_dict': model.state_dict(),\n", | |
| " 'optimizer_state_dict': optimizer.state_dict(),\n", | |
| " 'scheduler_state_dict': scheduler.state_dict(),\n", | |
| " 'kd_head_state_dict': kd.heads.state_dict() if kd.enabled else None,\n", | |
| " 'kd_stats': ({int(g): [m.tolist(), s.tolist()] for g, (m, s) in kd.stats.items()}\n", | |
| " if kd.enabled else None),\n", | |
| " 'kd_levels': {str(g): dict(v) for g, v in DISTILL_LEVELS.items()},\n", | |
| " 'kd_grid_weights': {str(g): float(w) for g, w in DISTILL_GRID_WEIGHTS.items()},\n", | |
| " 'val_f1': val_metrics['f1'],\n", | |
| " 'val_auc': val_metrics['roc_auc'],\n", | |
| " 'val_ci': val_metrics.get('ci'),\n", | |
| " 'best_epoch': best_epoch,\n", | |
| " 'history': history,\n", | |
| " 'run_tag': RUN_TAG,\n", | |
| " 'config': CONFIG,\n", | |
| " 'split': splits,\n", | |
| " }\n", | |
| "\n", | |
| "RUN_TAG = 'p2_%s-%s%s' % (CONFIG['STUDENT'], CONFIG['TEACHER'],\n", | |
| " '-kd' if CONFIG['USE_DISTILL'] else '')\n", | |
| "CHECKPOINT_DIR = os.path.join(OUTPUT_DIR, RUN_TAG)\n", | |
| "os.makedirs(CHECKPOINT_DIR, exist_ok=True)\n", | |
| "\n", | |
| "if isinstance(sys.stdout, _TeeLog):\n", | |
| " LOG_STREAM = sys.stdout.file_stream\n", | |
| "else:\n", | |
| " LOG_STREAM = open(os.path.join(CHECKPOINT_DIR, LOG_NAME), 'a', encoding='utf-8')\n", | |
| " sys.stdout = _TeeLog(sys.stdout, LOG_STREAM)\n", | |
| "\n", | |
| "print('run : %s' % RUN_TAG)\n", | |
| "print('log : %s' % os.path.join(CHECKPOINT_DIR, LOG_NAME))\n", | |
| "print('mulai : %s' % time.strftime('%Y-%m-%d %H:%M:%S'))\n", | |
| "print('cfg : student %s | teacher %s | USE_DISTILL %s | grid %s | GAMMA %.2f'\n", | |
| " % (CONFIG['STUDENT'], CONFIG['TEACHER'], CONFIG['USE_DISTILL'],\n", | |
| " ENABLED_GRIDS, CONFIG['GAMMA_DISTILL']))\n", | |
| "\n", | |
| "train_dict, train_image_path = build_information(dataset_dir=DATASET_DIR, split_name='train')\n", | |
| "val_dict, val_image_path = build_information(dataset_dir=DATASET_DIR, split_name='val')\n", | |
| "\n", | |
| "train_dataset = StrokeDataset(label_list=train_dict, image_path_dict=train_image_path,\n", | |
| " augment=True, phase=4,\n", | |
| " slice_context=CONFIG['SLICE_CONTEXT'])\n", | |
| "val_dataset = StrokeDataset(label_list=val_dict, image_path_dict=val_image_path,\n", | |
| " augment=False, phase=4,\n", | |
| " slice_context=CONFIG['SLICE_CONTEXT'])\n", | |
| "\n", | |
| "g_train = torch.Generator().manual_seed(CONFIG['INIT_SEED'])\n", | |
| "g_val = torch.Generator().manual_seed(CONFIG['INIT_SEED'] + 1)\n", | |
| "\n", | |
| "train_loader = DataLoader(train_dataset, batch_size=CONFIG['BATCH_SIZE'], shuffle=True,\n", | |
| " num_workers=CONFIG['WORKERS'], pin_memory=True,\n", | |
| " worker_init_fn=seed_worker, drop_last=True, generator=g_train)\n", | |
| "val_loader = DataLoader(val_dataset, batch_size=CONFIG['BATCH_SIZE'], shuffle=False,\n", | |
| " num_workers=CONFIG['WORKERS'], pin_memory=True,\n", | |
| " worker_init_fn=seed_worker, generator=g_val)\n", | |
| "\n", | |
| "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", | |
| "seed_everything(CONFIG['INIT_SEED'])\n", | |
| "\n", | |
| "model = ClassificationModel(pretrained=True, dropout=CONFIG['DROPOUT']).to(device)\n", | |
| "kd = KDModule(DISTILL_LEVELS, CONFIG['TEACHER']).to(device)\n", | |
| "if kd.enabled:\n", | |
| " kd.build_stats(train_loader)\n", | |
| "\n", | |
| "print('[run] train %d batch | val %d batch | device %s'\n", | |
| " % (len(train_loader), len(val_loader), device))\n", | |
| "\n", | |
| "optimizer, scheduler = build_optimizer_and_scheduler(model, kd, len(train_loader))\n", | |
| "\n", | |
| "with open(os.path.join(DATASET_DIR, 'split.json')) as fh:\n", | |
| " splits = json.load(fh)\n", | |
| "\n", | |
| "history = {\n", | |
| " 'epoch': [],\n", | |
| " 'lr': [],\n", | |
| " 'best_epoch': 0,\n", | |
| " 'train_metrics': [],\n", | |
| " 'val_metrics': [],\n", | |
| " 'kd_grids': list(ENABLED_GRIDS),\n", | |
| "}\n", | |
| "\n", | |
| "start_epoch = 1\n", | |
| "best_epoch = 0\n", | |
| "best_val_f1 = 0.0\n", | |
| "best_val_auc = 0.0\n", | |
| "patience_counter = 0\n", | |
| "\n", | |
| "if IS_RESUME:\n", | |
| " resume_path = os.path.join(CHECKPOINT_DIR, LAST_CHECKPOINT_NAME)\n", | |
| " if os.path.exists(resume_path):\n", | |
| " ck = torch.load(resume_path, map_location=device, weights_only=False)\n", | |
| " if ck['split'] != splits:\n", | |
| " raise SystemExit('split berbeda: %s vs %s' % (ck['split'], splits))\n", | |
| " model.load_state_dict(ck['model_state_dict'])\n", | |
| " optimizer.load_state_dict(ck['optimizer_state_dict'])\n", | |
| " scheduler.load_state_dict(ck['scheduler_state_dict'])\n", | |
| " if kd.enabled and ck.get('kd_head_state_dict') is not None:\n", | |
| " kd.heads.load_state_dict(ck['kd_head_state_dict'])\n", | |
| " if ck.get('kd_stats'):\n", | |
| " kd.stats = {int(g): (torch.tensor(m), torch.tensor(s))\n", | |
| " for g, (m, s) in ck['kd_stats'].items()}\n", | |
| " start_epoch = int(ck['epoch']) + 1\n", | |
| " best_epoch = int(ck.get('best_epoch', 0))\n", | |
| " best_val_f1 = float(ck.get('val_f1') or 0.0)\n", | |
| " best_val_auc = float(ck.get('val_auc') or 0.0)\n", | |
| " history = ck.get('history') or history\n", | |
| " print('[run] resume dari epoch %d | best %d | f1 %.4f'\n", | |
| " % (start_epoch, best_epoch, best_val_f1))\n", | |
| " else:\n", | |
| " print('[run] tidak ada checkpoint, mulai dari awal')\n", | |
| "\n", | |
| "ROW = '%-7s %10s | %10s %s' \n", | |
| "training_start = time.time()\n", | |
| "for epoch in range(start_epoch, CONFIG['EPOCHS'] + 1):\n", | |
| " if patience_counter >= CONFIG['PATIENCE']:\n", | |
| " print('PATIENCE %d REACHED di epoch %d' % (CONFIG['PATIENCE'], epoch))\n", | |
| " break\n", | |
| "\n", | |
| " epoch_start = time.time()\n", | |
| " if torch.cuda.is_available():\n", | |
| " torch.cuda.reset_peak_memory_stats(device)\n", | |
| "\n", | |
| " train_metrics = run_epoch(model, kd, train_loader, device, epoch, optimizer=optimizer, scheduler=scheduler)\n", | |
| " val_metrics = run_epoch(model, kd, val_loader, device, epoch, optimizer=None)\n", | |
| "\n", | |
| " epoch_time = time.time() - epoch_start\n", | |
| " history['epoch'].append(epoch)\n", | |
| " history['lr'].append(current_lrs(optimizer))\n", | |
| " history['train_metrics'].append(dict(train_metrics))\n", | |
| " history['val_metrics'].append(dict(val_metrics))\n", | |
| "\n", | |
| " improved = val_metrics['f1'] > best_val_f1\n", | |
| " if improved:\n", | |
| " patience_counter = 0\n", | |
| " best_val_f1 = val_metrics['f1']\n", | |
| " best_val_auc = val_metrics['roc_auc']\n", | |
| " best_epoch = epoch\n", | |
| " history['best_epoch'] = epoch\n", | |
| " torch.save(checkpoint_payload(epoch, val_metrics),\n", | |
| " os.path.join(CHECKPOINT_DIR, BEST_CHECKPOINT_NAME))\n", | |
| " else:\n", | |
| " patience_counter += 1\n", | |
| "\n", | |
| " torch.save(checkpoint_payload(epoch, val_metrics),\n", | |
| " os.path.join(CHECKPOINT_DIR, LAST_CHECKPOINT_NAME))\n", | |
| "\n", | |
| " elapsed = time.time() - training_start\n", | |
| " done = epoch - start_epoch + 1\n", | |
| " eta = (elapsed / max(done, 1)) * (CONFIG['EPOCHS'] - epoch)\n", | |
| "\n", | |
| " lr_now = current_lrs(optimizer)\n", | |
| " print()\n", | |
| " print('Epoch %3d/%d | best %d%s | %.1fs | ETA %.1fm'\n", | |
| " % (epoch, CONFIG['EPOCHS'], best_epoch, ' *' if improved else '',\n", | |
| " epoch_time, eta / 60.0))\n", | |
| " print(ROW % ('', '[Train]', '[Val]',\n", | |
| " '95%% CI (%d pasien)' % val_metrics['n_patient']))\n", | |
| " for label, key, fmt in (('Loss', 'loss', '%.4f'), ('Cls', 'cls_loss', '%.4f'),\n", | |
| " ('Acc', 'accuracy', '%.4f'), ('Prec', 'precision', '%.4f'),\n", | |
| " ('Rec', 'recall', '%.4f'), ('F1', 'f1', '%.4f'),\n", | |
| " ('AUC', 'roc_auc', '%.4f'), ('PR-AUC', 'pr_auc', '%.4f')):\n", | |
| " tv, vv = train_metrics[key], val_metrics[key]\n", | |
| " lo, hi = val_metrics['ci'].get(key, (float('nan'), float('nan')))\n", | |
| " print(ROW % (label,\n", | |
| " '-' if tv != tv else fmt % tv,\n", | |
| " '-' if vv != vv else fmt % vv,\n", | |
| " '' if (lo != lo or hi != hi) else '[%.4f, %.4f]' % (lo, hi)))\n", | |
| " if kd.enabled or train_metrics['kd_grid_cosine']:\n", | |
| " print(ROW % ('KD',\n", | |
| " 'cls %.4f, kd %.4f' % (train_metrics['cls_loss'], train_metrics['kd_loss']),\n", | |
| " 'cls %.4f, kd %.4f' % (val_metrics['cls_loss'], val_metrics['kd_loss']),\n", | |
| " ''))\n", | |
| " for grid in sorted(set(train_metrics['kd_grid_cosine'])\n", | |
| " | set(val_metrics['kd_grid_cosine']), reverse=True):\n", | |
| " print(ROW % ('g%d' % grid,\n", | |
| " 'cos %.4f' % train_metrics['kd_grid_cosine'].get(grid, float('nan')),\n", | |
| " 'cos %.4f' % val_metrics['kd_grid_cosine'].get(grid, float('nan')),\n", | |
| " ''))\n", | |
| " print('%-7s %s' % ('LR', ' | '.join('%s %.2e' % (k, v) for k, v in lr_now.items())))\n", | |
| "\n", | |
| "total_time = time.time() - training_start\n", | |
| "print()\n", | |
| "print('Best Epoch : %d | F1 (dipilih) %.4f | AUC %.4f'\n", | |
| " % (best_epoch, best_val_f1, best_val_auc))\n", | |
| "print('Epochs : %d -> %d' % (start_epoch, CONFIG['EPOCHS']))\n", | |
| "print('Time Elapsed : %.1f menit (%.2f jam)' % (total_time / 60.0, total_time / 3600.0))\n", | |
| "print('best checkpoint: %s' % os.path.join(CHECKPOINT_DIR, BEST_CHECKPOINT_NAME))\n", | |
| "print('last checkpoint: %s' % os.path.join(CHECKPOINT_DIR, LAST_CHECKPOINT_NAME))\n", | |
| "LOG_STREAM.flush()\n", | |
| "if isinstance(sys.stdout, _TeeLog):\n", | |
| " sys.stdout = sys.stdout.notebook_stream\n", | |
| " \n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 83, | |
| "id": "69375cf9", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "image/png": "iVBORw0KGgoAAAANSUhEUgAABEEAAALkCAYAAADgYCuzAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA89VJREFUeJzs3Xd4FOXaBvB7+2567w1CCD2hhqo0QeAoiCAiighYEBTFiucIYuN8YkERDyooKKIoNhREiqj03iEhgVTSe91sm++PhdVIgAR2M1vu33XlgszOzj6zb2bz5Jm3SARBEEBERERERERE5OSkYgdARERERERERNQSWAQhIiIiIiIiIpfAIggRERERERERuQQWQYiIiIiIiIjIJbAIQkREREREREQugUUQIiIiIiIiInIJLIIQERERERERkUtgEYSIiIiIiIiIXAKLIERERERERETkElgEISIip/HSSy/Bw8ND7DBsJiMjAxKJBBkZGTd8LKPRiDfeeAM33XQTAgIC4Ofnh0GDBmHHjh03Hqideumll7B79+7Ltg8cOBASieSyr+Tk5Ab7VVRUYNq0afDz84OnpyfGjRuHvLy8lgqfiIiIrIBFECIiIhdUV1eHhQsXonv37li1ahXWrFkDX19fDBo0CL/99pvY4dnEggULGi2CAEC/fv2wZ8+eBl8xMTEN9pkwYQI2b96MZcuW4YsvvkBKSgpGjBgBg8HQAtETERGRNcjFDoCIiIhankajwfnz5+Hr62vZdsstt6BTp0545513MHjw4Os6riAI0Ol0UKlU1gq1Rfj4+KB3795XfHzPnj349ddf8euvv2LYsGEAgPj4eLRv3x7fffcd7rrrrma9Xl1dHTQazQ3FTERERM3HniBERORSTpw4geHDh8Pd3R3e3t4YN24csrKyGuzzySefoGPHjtBoNPD390f//v1x4MCBJj8uCALefPNNtG3bFiqVCq1bt8Y777zT4DVycnJw1113ITg4GGq1Gq1atcKTTz5plXOcMmUKOnXqhF9++QWdOnWCWq1G9+7dsXfvXss+MpmsQQHk0rYuXbogNze32a+1ceNGJCQkQKVS4aeffgJgLhwMHjzY8l7fc889KCwsbPD8//73v2jTpg3UajUCAwMxdOhQpKenA/hr+M/q1asxa9Ys+Pr6IjQ0FE8//fRlvS/OnDmD0aNHw9vbG+7u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iyBERERERERE5BJYBCEiIiIiIiIil8AiCBERERERERG5BBZBiIiIiIiIiMglsAhCRERERERERC6BRRAiIiIiIiIicgksghARERERERGRS2ARhIiIiIiIiIhcAosgREREREREROQSWAQhIiIiIiIiIpfAIggRERERERERuQQWQYiIiIiIiIjIJbAIQkREREREREQugUUQIiIiIiIiInIJLIIQERERERERkUtgEYSIiIiIiIiIXAKLIERERERERETkElgEISIiIiIiIiKXwCIIEREREREREbkEFkGIiIiIiIiIyCWwCEJERERERERELoFFECIiIiIiIiJyCSyCEBEREREREZFLYBGEiIiIiIiIiFwCiyBERERERERE5BJYBCEiIiIiIiIil8AiCBERERERERG5BBZBiIiIiIiIiMglsAhCRERERERERC6BRRAiIiIiIiIicgksghARERERERGRS2ARhIiIiIiIiIhcAosgREREREREROQSWAQhIiIiIiIiIpfAIggRERERERERuQQWQYiIiIiIiIjIJbAIQkREREREREQugUUQIrK6gQMH4oknnhA7DCIiInIiGRkZkEgkOHr0qF0ch4gcE4sgREREREREROQSWAQhIiIiIiIiIpfAIggR2VRZWRkmT54MX19fuLm5YcSIEUhNTbU8npmZidtuuw2+vr5wd3dHx44dsXHjRstzJ02ahMDAQGg0GsTFxeHTTz8V61SIiIioBZhMJrzxxhto06YNVCoVoqKi8Nprr122nzXzhD/++AO9evWCSqVCaGgonn/+eRgMBsvj69atQ+fOnaHRaODv74+hQ4eipqYGAPD777+jV69ecHd3h4+PD/r164fMzMzrO3kisjm52AEQkXObMmUKUlNTsX79enh5eeG5557DyJEjcfr0aSgUCsycORM6nQ5//vkn3N3dcfr0aXh4eAAAXnzxRZw+fRq//PILAgICkJaWhrq6OpHPiIiIiGxp7ty5+Pjjj/HOO++gf//+yMvLQ3Jy8mX7WStPuHDhAkaOHIkpU6bgs88+Q3JyMh588EGo1Wq89NJLyMvLw8SJE/HGG2/gjjvuQFVVFXbs2AFBEGAwGDBmzBg8+OCD+PLLL6HT6bB//35IJBJrvBVEZAMsghCRzVwqfuzatQt9+/YFAHzxxReIjIzEDz/8gPHjxyMrKwt33nknOnfuDABo3bq15flZWVno2rUrevToAQCIiYlp8XMgIiKillNVVYV3330X77//Pu6//34AQGxsLPr374+MjIwG+1orT/jggw8QGRmJ999/HxKJBO3atUNubi6ee+45zJs3D3l5eTAYDBg7diyio6MBwJK3lJaWoqKiAv/6178QGxsLAGjfvv11xUFELYPDYYjIZs6cOQO5XI6kpCTLNn9/f8THx+PMmTMAgMcffxyvvvoq+vXrh/nz5+P48eOWfWfMmIGvvvoKiYmJePbZZ7F79+4WPwciIiJqOWfOnEF9fT2GDBlyzX2tlSecOXMGffr0adB7o1+/fqiurkZOTg4SEhIwZMgQdO7cGePHj8fHH3+MsrIyAICfnx+mTJmC4cOH47bbbsO7776LvLy864qDiFoGiyBEJKrp06fj/PnzuO+++3DixAn06NEDS5YsAQCMGDECmZmZePLJJ5Gbm4shQ4bg6aefFjliIiIishWNRtPkfVsqT5DJZNiyZQt++eUXdOjQAUuWLEF8fDzS09MBAJ9++in27NmDvn37Yu3atWjbti327t1r9TiIyDpYBCEim2nfvj0MBgP27dtn2VZSUoKUlBR06NDBsi0yMhKPPPIIvvvuOzz11FP4+OOPLY8FBgbi/vvvx+rVq7F48WJ89NFHLXoORERE1HLi4uKg0Wiwbdu2Ju1vjTyhffv22LNnDwRBsGzbtWsXPD09ERERAQCQSCTo168fFixYgCNHjkCpVOL777+37N+1a1fMnTsXu3fvRqdOnbBmzZpmx0FELYNzghCRzcTFxWH06NF48MEH8eGHH8LT0xPPP/88wsPDMXr0aADAE088gREjRqBt27YoKyvD9u3bLWNp582bh+7du6Njx46or6/Hzz//zHG2RERETkytVuO5557Ds88+C6VSiX79+qGoqAinTp26bIiMtfKERx99FIsXL8Zjjz2GWbNmISUlBfPnz8ecOXMglUqxb98+bNu2DcOGDUNQUBD27duHoqIitG/fHunp6fjoo49w++23IywsDCkpKUhNTcXkyZOt9ZYQkZWxCEJENvXpp59i9uzZ+Ne//gWdToebbroJGzduhEKhAAAYjUbMnDkTOTk58PLywq233op33nkHAKBUKjF37lxkZGRAo9FgwIAB+Oqrr8Q8HSIiIrKxF198EXK5HPPmzUNubi5CQ0PxyCOPXLaf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P187duxQQkKCKlWqpFq1aql///6Kiopy3de5c+cue9zBgwerT58+V2xbTEyM3n77bdfv/v7+qlq1qho1aqRevXopPDzc9bd169Zp5syZeuuttyRJTqdTS5cu1bp163Tu3Dn5+vqqevXq6tq1q7p06aLnnnvuio/dv39/derUSW+//baefvpp1alTx9WerN8vdWkbiiu3NjZo0ECPP/54idx/QdWsWVP16tXT8uXL1b9//zJ9bAAojqpVq+rVV19V5cqV3d2UfJWntpYX8fHxWrFihZ599lnXZR999JHq1Kmjm266Kcd1Lz2Gp6WlaeHChdq0aZPi4uLk7++viIgIXXPNNWrdurXrvvbv33/Z43bt2lW33XZbvu27+Djv6+urkJAQNWjQQD179lRkZKTrb3v37tUnn3yiN998U4GBgZKk1atXa+XKlTp79qy8vLwUFhamdu3aqW/fvnnWXlk6duyo4cOH67nnntN9993nej6X/n6x3NpQHLm1MSQkRK+88kqx77swKleurI4dO+rnn3/WHXfcUaaPjcIhBAFQYn755Re1bdtW/v7+hb7tV199pczMTA0fPlxhYWE6f/689uzZo6SkpBzXGzhwoLp06ZLjssI83sMPP6yIiAilp6fr+PHjWrFihf7xj39o1KhRatKkSa63+fnnn7V69WrdfPPNioyMVGpqqg4fPuw60/fqq6+6rrtp0ybNnz9ff/rTn3K0LzExscBtLC3Dhg1Ts2bNXL/7+LjnENCpUydNmzZNffr0kbe3t1vaAACFkZGRIR8fHwUHB7u7KQXi5eVVbtpaXqxdu1YNGjRQWFhYoW87ffp0HTp0SEOHDlVERISSkpIUHR19WY3TpUsXDRw4MMdlfn5+BX6crON8RkaGTp8+rdWrV2vs2LG644471LFjxzyf18yZMzV06FA1atRIGRkZOn78uE6cOCFJevLJJ+V0OiVJBw8e1FdffaUXXnjBVXv5+voWuH2l6dL60MvLPQMeOnXqpH/961+64YYbVKlSJbe0AfkjBIFH2r59uyZOnKhbbrlFHTp0kNPp1OzZs7V27Vp5eXmpc+fOsiyryPeflJSkmTNnavv27crIyFDDhg01dOhQV2+AmJgYzZgxQ9HR0crIyFBYWJhuuOEGtWjRQklJSZoxY4Z2796t1NRUVa1aVX369FHnzp2L1Ban06mpU6cqOjpaDz30kEJDQ/Xrr79q2bJlio2NVVhYmPr166err75akmRZln7++WetW7dOCQkJqly5stq2bauhQ4cW6LllnZ24++67NXPmTMXGxioqKkrDhg1zFUyZmZmaNWuWfvvtN9frnZCQoJSUFN1///15Po/NmzdrxIgRhX4NkpOTdeDAAT366KNq1KiRJCksLEz16tW77Lr+/v7FKuwqVarkun21atXUsmVLjRs3TlOmTNGLL76Y60Fz+/bt6t69u9q1a+e6rHbt2q7/X9yegICAyy6T5BEhSGBgYK7tmjFjhvbv36/k5GRVq1ZNffv21VVXXZXn/axcuVIrVqxQbGysAgICFBUVpXvvvVeSeR8sWbJEq1evVkJCgsLDw9WvX78cr13Tpk2VlJSk/fv35xk8AUCWkq4JUlJSNH36dG3dulUBAQG67rrrtHXr1hxn9P/617+qc+fOOnPmjLZu3ao2bdpowIABl/Xg27Fjh+tYWr9+/Ty/aOblwIEDmjt3rg4fPiwfHx/VrVtXd911lypVqqSMjAzNnj1bGzduVGpqqiIjI3XjjTe6jo1Xqkcu7W2Ydeb94Ycf1pw5c3Ty5EnVrl1bw4YNU40aNVzt2bp1qxYsWKCTJ08qODhYHTt2VN++fYsVWM+fP1+rV6/Wgw8+qNq1a2vz5s2aP3++zpw5o+DgYPXo0UPXXnut6/pXOsbk95oU9HkuXLhQK1asUEZGhtq1a6fKlStr165drt6pudm4caO6d+9epNdg27Ztuummm9SiRQtJpsa5uHdGFj8/v2LVOBcf58PCwtSsWTNNmjRJM2bMUMuWLXP9Ur5t2za1a9cuR4BQs2ZN1/+rVKmS4/6zLiuJHhwlKbf60Ol0atq0adqzZ48SEhIUGhqq7t27q1evXnnez6ZNm7RgwQKdOXNGfn5+qlOnju677z5X6LNmzRotW7ZMMTExCg0NVc+ePdWjRw/X7WvWrKng4GBt2bLlspN28ByEIPA4GzZs0PTp0zVy5Ei1bNlSkrRs2TKtW7fOdRBbtmyZtm7dqsaNGxfpMb777judPn1a999/vwICAjRnzhyNHz9ezz//vLy9vTVjxgxlZmbqsccek5+fn06ePOlK4ufNm6eTJ0/qgQceUOXKlXXmzBmlp6e77vujjz5SWFiYhg8fnm87MjIyNGHCBJ07d05jxoxRlSpVtGXLFs2cOVM33nijmjZtqu3bt+u7775TSEiIGjdurM2bN2vFihUaOXKkatasqYSEBB07dqzAz02S0tPTtXTpUt15551yOByaOHGiZs2apZEjR0qSlixZog0bNmjYsGGKiIjQihUrtG3bNldAkZvjx48rJSVFdevWLfT28PPzk7+/v7Zu3ar69euXaQ8FLy8v9erVS19++aWOHDmSa/ASFBSkvXv3qnv37jmKAXdatGhRvnOvPP/88woNDb3idTIyMhQZGanrrrtOAQEB2rFjhyZNmqRq1arl+locPnxYM2fO1J133qn69esrOTk5R/fdxYsXa8OGDbrttttUvXp17d+/X5MmTVKVKlVc7x8fHx/Vrl2bEARAvkqjJpg1a5aio6M1atQoValSRfPnz9fRo0cvG5q4bNky9evXL8+he7Gxsfrqq6/UvXt3de3aVUeOHNGsWbMK/NyOHj2qcePGqVOnTho6dKi8vLy0d+9eV6Aze/Zsbd68WcOHD1doaKiWLl2qTz/9VC+++KIqVaqUbz2Sm7lz52rIkCGqXLmypk+frilTpriGRe7fv1+TJ0/WTTfdpIYNG+rs2bOu+S8GDBggycyfEBMTo8ceeyzf52dZln744Qdt375dY8aMUfXq1XXkyBF98803GjBggNq3b6/o6Gh9//33qly5sjp16pTvMSa/16Qgz3PDhg1auHChbrnlFkVFRWnjxo1avnz5FXt4JCUl6dSpU7kGFwURFBSknTt3qk2bNq6TJWXlmmuu0fr167V79261b98+17bt379fMTExRerlUho2bNigadOmXfE6DzzwgBo2bHjF61iWpZCQEN1zzz2qVKmSDh48qKlTpyooKCjX1yI+Pl7ffvutbrjhBrVu3Vqpqak53n8bNmzQ/PnzdfPNN6t27do6duyYpk6dKj8/P3Xq1Ml1vXr16unAgQOEIB6MEAQeZeXKlZo7d65GjRqV4wv3ihUr1KdPH7Vp00aSdOutt2rXrl1FeozTp09r27Ztevzxx9WgQQNJ0ogRI/TWW29p69atateunWJjY9WmTRvVqlVLkukxkCU2NlZ16tRxfdm/9IARGhpaoBQ/LS1N48ePV0ZGhh555BFXor5s2TJ17NjRlSr37t1bBw8e1NKlS9W4cWPFxsYqKChITZs2lbe3t0JDQ11fVgvy3CTT0+PWW29V9erVJUk9evTQwoUL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+vv7q379+lq+fLlrzG/VqlXVpUsX9e3bN8djzJ8/X/Pnz89xWdeuXXXbbbcV6LmNGzdOklzBUePGjXX77bdf8cxXs2bNtHHjRi1atEgpKSkKCgpS48aNNWDAgGItGyiZuWEu9X//93+STODzz3/+M8ffqlWrphdffLFYj3mxfv366ezZs/r000/l6+urrl27qlWrVnnuW4GBgdqyZYt+/vlnZWRkqHr16q6ViiTp+uuvV5UqVbR48WLFxMQoICBAkZGR6tOnj+s+Nm7cqKZNm3rMLPQAPFdp1ARDhgzR9OnTNX78eNcSubGxsYUenhIaGqp7771XP/74o1auXKm6detq0KBBmjJlSoFuHx4eroceekhz587V2LFj5evrq3r16rl6TQwePFiWZWnSpEmu5WAffPBB1xfi/OqRwmrWrJlGjx6tBQsWaMmSJfL29lZ4eHiOecri4+MLNal1u3btXM/By8tLbdq00d1336358+dr4cKFCgoK0sCBA10heX7HmPxek4Lo0KGDzp49q9mzZ7uWyO3YsWO+vUE6d+6sadOm6Q9/+IOrHqpWrZoee+wxzZs3T+PGjVNmZqZq1Kihe+65R82bN8/x2v7222+aO3eu0tLSFBISohYtWly28tCaNWsumxi1WbNmevDBBwv03L777jtJ5r0REhKiqKgoPfHEE1ec36ZJkyZau3atVq1apcTERFf48cgjj+SYz6Uofvzxx8suGzNmjOv/H330UY6/eXl56b333ivWY16sW7duOnr0qL755hs5HA61b99e3bt3186dO3O9fkBAgPbv36/ly5crNTVVoaGhGjJkiGsi3i5dusjX11dLly7V7Nmz5efnp1q1auXoibRt2zZVrVq1WBP2o/Q5rOJOBACgwnM6nXr//ffVrl07XX/99XleLz09XX/7299011135Ts5G+wpIyND7777rkaOHHnZrPgA4A6pqal68803NWTIEJa0tKlx48YpKChII0aMyPM6lmVp7Nixuuaaa1xBFXCpsWPHqmfPnsVa0Qelj54gAC4TExOj3bt3q1GjRsrIyNDKlSsVExOT70Hf19dXw4cPV2JiYhm1FOVNbGys+vbtSwACwG2OHj2qU6dOqW7dukpJSdGCBQskqVDDRlF+paWladWqVWrWrJm8vLy0ceNG7dmzxzXsOC8Oh0O33XabTpw4UUYtRXmTmJioNm3aEJKVA/QEQbl37tw5vf/++3n+/dIVMpC/2NhYTZgwQSdOnJBlWapZs6YGDx7s0ZM8TZs2TRs2bMj1bx06dCjwcBkAQPlVkJogKSlJU6ZM0enTp+Xt7a3IyEjdeOONOZZVLQmffvqpDhw4kOvf+vbte9lwT5SN9PR0ff755zp69KjS09NVo0YN9evXL9dVcTzFlVaEi4qKKvBwGQAGIQjKvczMzCuOTw0NDS32vA3wfAkJCa4lWi/l7++voKCgMm4RAKCseVJNEBcXp/T09Fz/VlKTW8MekpKSlJSUlOvffH19C7RSCoBshCAAAAAAAMAWrrzUAwAAAAAAQAVBCAIAAAAAAGyhQqwO43Q6dezYMQUFBcnhcLi7OQAAVHiWZSkhIUG1a9eWl5f9zqlQewAAUHZKsu6oECHIsWPHVLduXXc3AwAA2zl8+LAiIyPd3YwyR+0BAEDZK4m6o0KEIFmrPhw+fFjBwcFubg0AABVffHy86tata9uVl6g9AAAoOyVZd1SIECSrG2pwcDCFCAAAZciuQ0GoPQAAKHslUXfYbxAvAAAAAACwJUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFsgBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAWCEEAAAAAAIAtEIIAAAAAAABbIAQBAAAAAAC2QAgCAAAAAABsgRAEAAAAAADYAiEIAAAAAACwBUIQAAAAAABgC4QgAAAAAADAFghBAAAAAACALRCCAAAAAAAAWyAEAQAAAAAAtkAIAgAAAAAAbIEQBAAAAAAA2AIhCAAAAAAAsAVCEAAAAAAAYAuEIAAAAAAAwBYIQQAAAAAAgC0QggAAAAAAAFvwcXcDSoJlWZKk+Ph4N7cEAAB7yDrmZh2D7YbaAwCAslOSdUeFCEESEhIkSXXr1nVzSwAAsJeEhASFhIS4uxlljtoDAICyVxJ1h8OqAKdwnE6njh07pqCgIDkcDnc3BwCACs+yLCUkJKh27dry8rLf6FpqDwAAyk5J1h0VIgQBAAAAAADIj/1O3QAAAAAAAFsiBAEAAAAAALZACAIAAAAAAGyBEAQAAAAAANgCIQgAAAAAALAFQhAAAAAAAGALhCAAAAAAAMAW/h89N+mQT9ymnAAAAABJRU5ErkJggg==", | |
| "text/plain": [ | |
| "<Figure size 1100x750 with 4 Axes>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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devWZd++fRmW7du3j1q1amXbXiFE6SFBECHKOGdnZ1xdXfnhhx8ICAhg+/btTJs2zXT7sGHD8PLyon///uzbt4/Lly/zxx9/cODAAQBmz57NypUrmT17Nr6+vqZkYmm6dOnCt99+y4kTJzh69CiTJk3KU/nbmjVrsmXLFvbv34+vry/PP/88wcHBptutra154403eP311/npp5+4dOkSBw8eNGV9TzN+/Hg++eQTNE3LULVGCCGEEKXH9evXmTZtGn5+fqxcuZJ58+YxZcqUbNd/44032L9/P5MnT+bkyZP4+/vz559/mhKj+vj48Oyzz/Lcc8+xfv16rly5ws6dO/ntt9+y3N4rr7zCf//9x5UrVzh+/Dg7duygbt26Wa47ffp0tm3bxvvvv8/FixdZvnw53377La+++uqDvxBCiCInQRAhyji9Xs+qVas4duwYDRo0YOrUqXz22Wem2y0tLdm8eTMeHh706dOHhg0b8sknn5iOdHTu3Jk1a9bw119/0aRJE7p06ZKhgssXX3yBt7c3HTt2ZPjw4bz66qvY2trm2q63336bZs2a0bNnTzp37mwKxNxr1qxZTJ8+nXfeeYe6desyZMiQTHNthw0bhrm5OcOGDcPa2voBXikhhBBCFJXRo0cTHx9Pq1ateOmll5gyZYqpFG5WGjVqxK5du7h48SIdO3akadOmvPPOO1SoUMG0zvz58xk0aBAvvvgiderUYcKECRlK6N7LYDDw0ksvUbduXXr16kWtWrX4/vvvs1y3WbNm/Pbbb6xatYoGDRrwzjvv8N5770neMSEeEjrt/sn6QgjxCLl69SrVq1fnyJEjNGvWrKSbI4QQQoj7dO7cmSZNmjB37tySbooQogwwL+kGCCFEUUhOTiY8PJy3336bNm3aSABECCGEEEIIIdNhhBCPpn379lG+fHmOHDnCggULSro5QgghhBBCiFJApsMIIYQQQgghhBCiTJCRIEIIIYQQQgghhCgTJAgihBBCCCGEEEKIMkGCIEIIIYQQQgghhCgTJAgihBBCCCGEEEKIMuGRKZFrNBq5desWDg4O6HS6km6OEEII8cjQNI27d+9SoUIF9Ho5fpIV6YcIIYQQRadQ+yJaAXz77bdalSpVNCsrK61Vq1baoUOHclz/q6++0mrVqqVZW1trlSpV0l555RUtPj4+y3U//vhjDdCmTJmS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kSBEVC8eHh548cUXMXv2bAiCgEGDBqGkpAT79u2Dp6cn2rZtCwBYtGgRfH19ERgYiFdffRV+fn4YMWIEAOCf//wn+vXrhzfeeAOjRo1CSkoK3n//fXzwwQcAgPDwcEyaNAlPPfUUli1bhoiICFy4cAF5eXl48sknpbp0IiIisgKMRYjIEpgEIaJ6e+ONN+Dv74/ExEScPXsW3t7e6NOnD1555RXTENC3334bM2fOxJkzZxAZGYkff/wRSqUSANCnTx989dVXmD9/Pt544w0EBwdj0aJFmDx5suk9PvzwQ7zyyit4/vnnUVhYiDZt2uCVV16R4nKJiIjIyjAWIaKmkomiKErdCCKyfbt27cJdd92Fq1evwtvbW+rmEBERkYNhLEJE9cGaIERERERERETkEJgEISIiIiIiIiKHwOkwREREREREROQQOBKEiIiIiIiIiBwCkyBERERERERE5BCYBCEiIiIiIiIih8AkCBERERERERE5BCZBiIiIiIiIiMghMAlCRERERERERA6BSRAiIiIiIiIicghMghARERERERGRQ2AShIiIiIiIiIgcApMgREREREREROQQmAQhIiIiIiIiIofAJAgREREREREROQQmQYiIiIiIiIjIITAJQkREREREREQOgUkQIrIJr7/+OiIjI03PJ0+ejBEjRkjWHiIiIrIdoihi2rRp8PHxgUwmw5EjR6RuEhFJhEkQIiIiIiKya1u3bsWaNWvw008/ITs7G6WlpXj44YcREhICmUyG7777TuomElELYRKEiJpMp9NJ3QQiIiKiOmVmZiI4OBgDBgxAUFAQysvLERERgeXLl0vdNCJqYUyCEFGDDRkyBHFxcZg1axb8/PwwfPhwHD9+HPfffz/c3d0RGBiICRMmoKCgwHSMIAh455130LFjR6hUKrRp0wb/+te/TK/PmTMHnTt3hqurK9q3b4958+ZBr9dLcXlERERkRyZPnowZM2YgKysLMpkM4eHhuP/++/Hmm2/isccek7p5RNTCmAQhokb59NNPoVQqsW/fPrz99tu4++670bt3bxw6dAhbt25Fbm4unnzySdP+CQkJePvttzFv3jycOHEC69atQ2BgoOl1Dw8PrFmzBidOnMC7776LlStX4r///a8Ul0ZERER25N1338WiRYvQunVrZGdn47fffpO6SUQkISepG0BEtqlTp0545513AABvvvkmevfujbfeesv0+qpVqxAWFobTp08jODgY7777Lt5//31MmjQJANChQwcMGjTItP9rr71mehweHo4XX3wR69evx8svv9xCV0RERET2yMvLCx4eHlAoFAgKCpK6OUQkMSZBiKhRoqKiTI//+OMP7Ny5E+7u7jX2y8zMRHFxMbRaLYYOHVrn+TZs2IBly5YhMzMTZWVlqKqqgqenZ7O0nYiIiIiIHBOTIETUKG5ubqbHZWVlePjhh/Hvf/+7xn7BwcE4e/bsTc+VkpKCcePGYeHChRg+fDi8vLywfv16/Oc//7F4u4mIiIiIyHExCUJETdanTx988803CA8Ph5NTzf9WOnXqBBcXFyQnJ+OZZ56p8fr+/fvRtm1bvPrqq6ZtFy5caNY2ExERERGR42FhVCJqstjYWBQVFWHMmDH47bffkJmZiZ9//hlTpkyBwWCAWq3GnDlz8PLLL+Ozzz5DZmYmDhw4gKSkJADGJElWVhbWr1+PzMxMLFu2DN9++63EV0VERET2qqysDEeOHMGRI0cAAOfOncORI0eQlZUlbcOIqNkxCUJETRYSEoJ9+/bBYDDg3nvvRc+ePTFr1ix4e3tDLjf+NzNv3jz885//xPz589GtWzeMGjUKeXl5AIBHHnkEs2fPRlxcHCIjI7F//37MmzdPyksiIiIiO3bo0CH07t0bvXv3BgDEx8ejd+/emD9/vsQtI6LmJhNFUZS6EUREREREREREzY0jQYiIiIiIiIjIITAJQkREREREREQOgUkQIiIiIiIiInIITIIQERERERERkUNoVBJk+fLlCA8Ph1qtRnR0NFJTU+vcV6/XY9GiRejQoQPUajUiIiKwdetWs30SExPRr18/eHh4ICAgACNGjEB6enpjmkZEREREREREVKsGJ0E2bNiA+Ph4LFiwAIcPH0ZERASGDx9uWury71577TV89NFHeO+993DixAk899xzeOyxx/D777+b9tm9ezdiY2Nx4MABbN++HXq9Hvfeey/Ky8sbf2VERERERERERDdo8BK50dHR6NevH95//30AgCAICAsLw4wZMzB37twa+4eEhODVV19FbGysadvIkSPh4uKCtWvX1voe+fn5CAgIwO7duzF48OB6tUsQBFy5cgUeHh6QyWQNuSQiIiK6CVEUce3aNYSEhEAu50za2jAOISIiaj6WjEWc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", | |
| "text/plain": [ | |
| "<Figure size 1100x750 with 4 Axes>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "iVBORw0KGgoAAAANSUhEUgAABEEAAALkCAYAAADgYCuzAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4FNXXwPHv7qZXUoGEEHqvAgkdpIOioCjSQYooWMAGCgg/X0VFEStYKAKi2BAVRRRB6U2Q3juE9J5ssmXePy5ZEtJDGuR8nmefZGdnZ2Znttw5c+65Ok3TNIQQQgghhBBCCCHucPqy3gAhhBBCCCGEEEKI0iBBECGEEEIIIYQQQlQIEgQRQgghhBBCCCFEhSBBECGEEEIIIYQQQlQIEgQRQgghhBBCCCFEhSBBECGEEEIIIYQQQlQIEgQRQgghhBBCCCFEhSBBECGEEEIIIYQQQlQIEgQRQgghhBBCCCFEhSBBECGEqKBmz56NTqez3Xx8fOjYsSO//vpria1z2bJl6HQ6oqKi8twuNze3EtuG3ERERPDII4/g7e2Nj48PvXr14sCBA6W+HQX17rvvUr16dQwGAwMGDCi25Y4ePZomTZoU2/IKQqfTsXnz5mJZ1ieffEKvXr2oUqUKHh4etG3blrVr1xbLssujBQsW5PiZHT16dJbPd8Zt/fr1WeZLT0/n+eefp0qVKri6utKzZ09OnDhRWpsvhBBClDoJggghRAXm7OzMjh072LFjB5999hlGo5H+/fuzffv2MtumcePGsWnTplJf74gRI9i2bRsLFy5kyZIlBAUFcfTo0VLfjoI4deoUzz77LMOGDWPLli289dZbxbbsmTNnsmrVqmJbXml77bXXCA4OZuHChXz//fc0a9aMAQMG8MUXX5T1ppWI3IIgALVq1bJ9vjNu7dq1yzLPU089xWeffcbrr7/ODz/8QFpaGt27dyc+Pr40Nl8IIYQodXZlvQFCCCHKjl6vp23btrb7oaGhBAUF8cUXX9C+ffsy2aZq1apRrVq1Ul1nUlISf/zxBwsXLmTw4MEA3H///aW6DYVx4sQJNE1j/Pjx1KpVq1iXXbt27WJdXmn7999/8fX1td3v2bMn58+f5+2332bUqFFFXm5qairOzs7FsYmlxtnZOcvn+2aXL1/m888/5+OPP+bRRx8FoE2bNlSvXp1PPvmEF154oVDrux33kRBCiIpHMkGEEELYBAYG4ufnx8WLF23TwsLCePTRR6lVqxbOzs7UrVuXl156ibS0tCzP1el0vPXWW8yePZvKlSvj6+vLmDFjSE5OznOdS5cuxcHBgcWLFwPZu8Ns3rwZnU7HH3/8wdChQ3F3dyc4ODjH7IdPPvmE4OBgXFxc6NmzJ/v370en07Fs2bI8t0Gv16PT6Thz5kx+uyhXaWlpzJgxg1q1auHo6Ei1atUYPXp0lnl++OEHWrRogZOTEwEBAUydOhWj0Vio1zp69Gj69+8PqIBFxuvLratRixYtsmzHkSNH6NevHz4+Pri4uFC/fv1sy7+5O8yhQ4fo3bs3rq6ueHp6MmjQoCzvESj68S+ojPfFnj17CAkJwcnJiYYNG/LLL79kmS9zACRDy5YtuXr1aqHXtXv3btq1a4eTkxMfffQRAMeOHeP+++/H09MTV1dX7rnnnmzvmyVLltC4cWOcnZ1t3cz27Nlje7yg++ry5csMHz4cX19fnJ2d6dy5M/v27bM9XqNGDS5cuMBHH31k6+6S33s9sw0bNmC1WnnooYds07y9venVq1e+3eLOnz9vW9/48ePx8fEhJCQEUJ+Fl156ieDgYBwdHWnYsGG27KL83ocAO3bsoFu3brb33dChQ4mIiMi2DStXrmTy5Ml4eXlRtWpVnnvuOcxmc5ZlHTt2jAceeABvb29cXFxo3rw5X331VYH3lRBCiDuHBEGEEELYJCUlERMTQ82aNW3ToqKi8Pb2Zv78+axfv54XXniBL774gokTJ2Z7/ocffsipU6f44osvmDVrFqtWreLVV1/NdX0ffPABEydOZPny5YwdOzbPbZs4cSL16tVjzZo19O/fnxdffDFLfYOffvqJiRMn0qtXL9asWUOPHj14+OGHC/S6XVxceOCBB3j//ffZtm1bgZ5zswcffJD58+fz6KOPsm7dOubNm5flpPann35i0KBBNGrUiB9//JEXXniBRYsWMXz48EK91pkzZ/Lmm28CKqiyY8cO7rnnngJvZ//+/YmNjWXx4sWsW7eO5557Ls9AxaVLl+jcuTPR0dGsXLmSRYsW8e+//9KlSxcSExOzzFvY419YJpOJwYMHM2rUKH744Qfq1KnDwIEDOXToUJ7P27p1Kw0bNizUutLT0xk6dCjDhw/nt99+o1evXpw9e5b27dsTExPDsmXLWLVqFZGRkXTv3t0WFPznn38YO3Ys/fr149dff2X58uV0796duLi4LMvPb1/FxsbSsWNHDhw4wAcffMD333+Pq6sr3bp1swUC1qxZQ5UqVRg0aJCtu0vm98Lp06fx9PTEwcGBVq1a8eOPP2bZhuPHj+Pv74+Xl1eW6Q0bNuT48eMF2k/Tp09H0zS++uor5s2bB8DDDz/MJ598wrPPPssvv/xCnz59bPsxQ37vwx07dtC1a1c8PT1ZvXo1n376KXv27MkxQ+vll19Gr9fzzTffMHHiRN555x0+//xz2+OnTp2iXbt2nDp1ivfff5+ffvqJMWPGZAvkCSGEqCA0IYQQFdIrr7yiubq6aiaTSTOZTNqFCxe0wYMHa15eXtrx48dzfZ7JZNK+/PJLzc7OTktOTrZNB7SQkJAs844aNUqrXbu27f7SpUs1QIuMjNRef/11zdHRUVu7dm2O25Vh06ZNGqA9//zztmlWq1WrUaOGNnbsWNu0Nm3aaN26dcuyrFdffVUDtKVLl+a5L8LCwrS77rpLq127tubt7a0dPXo0z/lvtmHDBg3QVq1ales8LVu21Nq1a5dl2ieffKIB2sGDBzVNK/hrXbNmjQZo586ds03LvG8za968uTZq1ChN0zQtMjJSA7Sffvop1+0cNWqU1rhxY9v9KVOmaK6urlp0dLRt2rFjxzSdTqe9//77tmkFOf65AbRNmzblOc8rr7yiAdrixYtt08xms1azZk3tkUceyfV5X375pQZoa9asyXc7bl7X119/nWX6yJEjtVq1ammpqam2aREREZqbm5v20UcfaZqmafPmzdO8vb3zXH5B9tWsWbM0T09PLTw83DbNaDRq1atXz/L+CA4O1iZNmpRtHQsWLNA+/PBDbdOmTdqaNWu0Xr16aYD27bff2uYZN26cVr9+/WzPnTdvnmZvb5/nazh37pwGaH369Mky/a+//tIA7ffff88yffDgwVqbNm00TSvY+7Bz585a+/btNavVapt25MgRTafTaevWrcuyDQ899FCW53bp0kXr3r277f7QoUM1Pz8/LT4+Ps/XJIQQomKQTBAhhKjAkpOTsbe3x97enuDgYL777jtWrFhB/fr1bfNomsaCBQto1KgRzs7O2NvbM2zYMMxmM2fPns2yvJ49e2a536hRIy5fvpxtvS+//DKvvfYav/zyC/fdd1+BtrVXr162/3U6HQ0bNrQt22KxsH///mzLKmhdjwcffJCGDRty8OBBGjZsSK9evbh06ZLt8bp16zJ79uxcn79x40ZcXFx45JFHcnw8KSmJAwcOMGjQoCzTM+qPbN26Ncv0vF7rrfDx8SE4OJjp06fzxRdfFGiZW7ZsoVu3bnh7e9umNWjQgObNm2fb7oIe/1sxcOBA2/8ZI+Ps2rUrx3kPHjzIxIkTGTNmTJFG0Lk5w2bDhg3cd9992NnZYTabMZvNeHl50bJlS1t3l7vuuouYmBhGjx7NH3/8QUpKSo7Lzm9fbdiwgbvvvhtvb2/bugwGA126dMnStSY3Tz/9NJMmTaJr164MGDCA3377jdDQUGbNmlWofaBpmm39ZrMZi8WS5fGc9pG3tzfdunXL8ryM7mkWiyXf92FKSgrbtm3joYcewmKx2JZRr149goKCsr3+zJ8XyL4vN27cyKBBg/Dw8CjUaxdCCHFnkiCIEEJUYM7OzuzZs4ddu3axcuVKqlatysiRIwkLC7PNs2DBAp599lnuv/9+1q5dy+7du231ETLXswCoVKlSlvsODg7ZaocAfPfddzRt2pSOHTsWeFtzWnbG+iMjIzGbzfj5+WWZx9/fP9/l7tixg+3bt/Pcc8/h4uLCL7/8gpeXF7169SI6OpqrV69y5syZbCetmUVHR1O1alV0Ol2Oj8fFxaFpGpUrV84y3dPTE0dHR2JiYgr8Wm+FTqdjw4YNNGzYkEmTJhEUFETr1q35559/cn1ObGxstu0GqFy5coG2O6fjX1T29vbZum5Urlw5y/s1w4ULF+jbty8hISF88sknhV6Xi4tLtqGao6KiWLBggS1wmHHbsmWLLWjWrVs3VqxYwZEjR+jduze+vr6MHDmy0PsqKiqKH3/8Mdu6VqxYkSVAV1B6vZ4HH3yQY8eOkZqaCoCXl1eOo8DExsbagl5///13lvV37949y7w3vzeioqKIiYnJtt3jxo3DbDYTFhaW7/swNjYWi8XClClTsi3n4sWL2V5/fp+X6OhoAgICCr3PhBBC3JlkdBghhKjA9Ho9rVu3BiAkJIT69esTGhrK//73PxYuXAjAt99+y3333cfcuXNtz7vVoWN/+uknHnjgAR588EHbid6t8PPzw87OjsjIyCzTMxdRzM358+cBcHd3B9QJ1e+//06HDh3o168fjRo1onXr1nTo0CHXZfj4+BAWFoamaTkGQipVqoROp8u2PfHx8aSlpWXJsigqJycnQNWyyCw2NjbL/Xr16vHtt99iMpnYvn07L730Ev379+fKlSvZTvpBFcrMaT+Gh4dTr169W97uwjCZTMTGxmYJhISHh1O1atUs80VFRdG7d2/8/f354YcfivT+yuk4ent7c8899/DEE09keyzj/QMwfPhwhg8fTlRUFGvXrrWdzGcU/y0Ib29v+vTpk2NNFUdHxwIvJy8NGjQgPDw82z49fvw4DRo0AKBVq1ZZMi8yv07Ivp+8vb3x8/PLtbBqRmAyr/dhxuflpZdeyjGDJ6fit3nx8fEpVGFcIYQQdzbJBBFCCGHTunVrhgwZwtKlS7l27Rqghr10cHDIMt+XX355S+upX78+f/75J7t27WLIkCHZUuwLy2Aw0LJlS9auXZtl+s2FIHPSqFEjAL755hvbtKpVq7JhwwZOnz7NsmXLmD9/fp7L6NGjBykpKVmWkZmbmxstWrTgu+++yzI9Y/7CZMTkJmNY4WPHjtmmHTt2LNesAXt7e7p06cK0adNISEjI9SSxY8eObNy4MUsw5cSJExw8eLBYtruw1qxZY/vfYrHw448/EhoaapuWlJRE3759SU9P59dffy3WLhA9evTg8OHDtGzZktatW2e5Ze5ClsHX15exY8fSs2fPLMeloOs6evQoDRs2zLaupk2b2uYraJaQ1Wrl22+/tY1aA6obiV6v5/vvv7fNFxsby4YNG+jXrx+ggh75vc6btzsyMhIHB4ds2926dets3yU5vQ9dXV1p164dx44dy3EZNWrUKOhutG3Td999l62QrxBCiIpJMkGEEEJkMXPmTL7++msWLFjAG2+8Qc+ePXnvvff48MMPqVevHitXruT06dO3vJ6mTZuyYcMGunXrxqhRo1i+fDl6fdFj8zNmzOD+++9n/PjxPPTQQ+zfv58vvvgCIM/lNm/enKFDhzJr1iwiIiLo06cPiYmJfP/996SkpODj48OcOXNYt25dthO4DD169KBfv348+uijnDlzhtDQUGJiYvjuu+9YvXo1oIZdHTBggC1L4MSJE7z00ks8+OCDWU5qiyo0NJSgoCCmTJnC3LlzSUhI4I033sDHx8c2z8GDB3n22WcZPHgwtWvXJj4+nrlz51KjRg1q166d43KnTJnC0qVL6dWrFy+//DJGo5EZM2ZQvXr1bEMAlzQHBwf+7//+D6PRSM2aNfn444+5dOlSlmDXAw88wIEDB1iyZAkXLlzgwoULtsfatm17S+ufM2cObdq0oXfv3kyYMIHKlStz7do1/v77bzp16sSQIUN45ZVXiI6OpmvXrvj7+3Po0CHWr1/P1KlTC7WuqVOn8uWXX9KlSxeefvppqlevTmRkJLt27SIgIIApU6YAaiSXv/76iz/++AMvLy9q1qxJUlISo0aNYsiQIdSpU4fY2FgWLlzI3r17swQ8qlWrxrhx43j++ecxGAwEBgby+uuv4+npyWOPPVakfdSzZ0/69+9Pnz59eOGFF2jWrBnJyckcOXKE06dP8/nnnxfofThv3jy6devG4MGDeeSRR/Dy8uLy5cv88ccfjBkzhq5duxZ4m1555RV++eUXOnbsyAsvvEDVqlU5evQoKSkpvPDCC0V6nUIIIW5jZVuXVQghRFm5eRSWzIYNG6Z5eHhocXFxWmJiojZ69GjNy8tL8/Ly0saPH6/9/PPPGqDt2bPH9hxAmzdvXpblvPvuu1rmn5qcRjDZsWOH5ubmpo0bN06zWq25jg6TeV2apmn333+/1qVLlyzTFi5cqAUFBWlOTk5aly5dbKO2/Pjjj3nuC5PJpL3xxhtavXr1NHt7e83X11d75JFHtMOHD2s7d+7UnJyctCFDhmQZqeJmqamp2rRp07Tq1atr9vb2WrVq1bRHH300yzzfffed1qxZM83BwUGrUqWK9swzz2QZaaSgrzWn0WE0TdP27t2rtWnTRnN2dtaaNm2q/fnnn1lGhwkPD9eGDx+u1apVS3N0dNT8/f21Bx98UDt58qRtGTePDqNpmvbff/9pPXv21FxcXDR3d3ftgQce0M6fP59lnoIc/9xQwNFhXF1dtZ07d2qtWrXSHBwctPr162cbXQjI9VZQeX02Tp48qT388MOaj4+P5ujoqNWoUUMbOXKkdvjwYU3TNO3nn3/Wunfvrvn5+WmOjo5a7dq1tVdeeUUzmUxZtrEg+yosLEwbO3asVrVqVc3BwUGrVq2aNmjQIG3btm22eQ4fPqx16tRJc3d3t42EFB0drd13331atWrVNAcHB83NzU3r2rWrtn79+myvx2g0as8++6zm7++vOTs7az169NCOHTuW7z7KGJkl82gzGdLS0rQ5c+ZodevW1RwcHDQ/Pz/t7rvv1pYvX65pWsHeh5qmaXv27NH69euneXp6as7OzlrdunW1iRMnapcuXcpzG55++mktODg4y7QjR45o9913n+bh4aG5uLhoLVq0yDb6jxBCiIpBp2maVooxFyGEEKLULF68mHHjxnHu3LlCp9CL0qPT6di0aVOeV/dnz57N22+/TVJSUultmBBCCCHuONIdRgghxB0hJiaGOXPm0K1bN9zd3dmzZw+vvfYa999/vwRAhBBCCCEEIEEQIYQQdwh7e3vOnDnDqlWriIuLw8/PjxEjRvDmm2+W9aaJcsRqtWK1WnN93GAw5DrUsRBCCCFuf9IdRgghhBBlqiDdYYrL6NGjbQVzc1Ja2yGEEEKIsiFBECGEEEJUGOfPnycqKirXx+vXr4+7u3spbpEQQgghSpMEQYQQQgghhBBCCFEh6Mt6A4QQQgghhBBCCCFKgwRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBBCCCGEEEIIUSFIEEQIIYQQQgghhBAVggRBhBD5Sk9PL+tNEEIIIYQoEGm3CCHyIkEQIUQ2Xbt2ZfLkyTzzzDP4+vrSu3dv/v77b0JCQnB0dKRq1apMmzYNs9lse47VauWtt96iTp06ODo6Ur16dV577bUCre/FF1+kXr16uLi4UKtWLWbOnInJZLI9Pnr0aAYMGJDlOc888wxdu3YtlvULIYQQovzKaJdMnjwZT09PfH19mTlzJpqmAVCjRg1effVVRo4ciYeHBxMmTMh3mdL2EKLisivrDRBClE9ffPEFjz/+ONu2bePatWv069eP0aNHs3z5co4fP8748eNxcnJi9uzZAEyfPp3PPvuMd999l44dOxIWFsbx48cLtC53d3eWLVtGQEAAhw4dYvz48bi7u/PCCy8UeHtvZf1CCCGEKN+++OILxo4dy+7du9m7dy8TJkygevXqjB8/HoC3336bWbNm8corrxRoedL2EKLi0mkZIVQhhLiua9euJCQk8O+//wLw8ssv8/3333Ps2DF0Oh0AH3/8MS+++CLx8fEkJyfj5+fHhx9+yLhx4255/W+//TZff/01e/fuBdTVmLi4OH788UfbPM888wwHDhxg8+bNJCYmFuv6hRBCCFF+dO3alYiICI4cOWJrh0ybNo2ffvqJo0ePUqNGDVq2bMmaNWuKvA5pewhRcUgmiBAiR61atbL9f+zYMdq1a2dreAB06NCBpKQkLl++zLVr10hLS6N79+5FWtfq1at5//33OXPmDElJSZjNZjw8PAr8/GPHjt3S+oUQQghRvrVt2zZLO6Rdu3a88847WCwWAFq3bl2o5UnbQ4iKS2qCCCFy5OrqWuB5nZ2di7yeHTt2MGzYMPr168cvv/zC/v37efnll7MUNdPr9dyctJa53+6trF8IIYQQt7/CtFuk7SFExSZBECFEvho2bMiOHTuyNAa2bduGu7s71apVo27dujg7O7Nx48ZCL3v79u0EBwfz8ssv07p1a+rWrcuFCxeyzOPn50dYWFiWaQcOHLD9fyvrF0IIIUT5t2vXriz3d+7cSd26dTEYDIVelrQ9hKjYJAgihMjXE088waVLl3jyySc5fvw4a9eu5ZVXXmHq1Kno9XqcnJx48cUXeeGFF1i+fDlnzpxh586dLF68ON9l161bl4sXL/L1119z5swZ3n///Wx9ert168bevXtZvnw5p06d4pVXXuHw4cO2x29l/UIIIYQo/y5evMjUqVM5ceIEX331FR988AFPP/10kZYlbQ8hKjapCSKEyFdgYCC//vorzz//PM2bN8fb25uxY8cyY8YM2zwzZ87Ezs6OWbNmcfXqVapWrcrEiRPzXfZ9993HlClTmDx5Mmlpadxzzz3MnDnTNuoMQO/evZk5cyYvvPACRqORRx99lJEjR3Lo0KFbXr8QQgghyr+RI0eSmppKSEgIBoOBp59+ukBD4eZE2h5CVGwyOowQQgghhBCi3OratSstWrRgwYIFZb0pQog7gHSHEUIIIYQQQgghRIUgQRAhRIl6/fXXcXNzy/HWt2/fst48IYQQQtxhpO0hhMiLdIcRQpSomJgYYmJicnzM2dmZwMDAUt4iIYQQQtzJpO0hhMiLBEGEEEIIIYQQQghRIUh3GCGEEEIIIYQQQlQIEgQRQgghhBBCCCFEhWBX1htQXKxWK1evXsXd3R2dTlfWmyOEEELcMTRNIzExkYCAAPR6uX6SE2mHCCGEECWnWNsiWhF8+OGHWnBwsObo6KiFhIRou3btynXe9PR0bc6cOVqtWrU0R0dHrVmzZtpvv/2WZZ7XX39da926tebm5qb5+flp999/v3b8+PFCbdOlS5c0QG5yk5vc5CY3uZXQ7dKlS0VpNlQI0g6Rm9zkJje5ya3kb8XRFil0Jsjq1auZOnUqixYtIjQ0lAULFtC7d29OnDiBv79/tvlnzJjBypUr+eyzz2jQoAG///47AwcOZPv27bRs2RKAv//+m0mTJtGmTRvMZjMvvfQSvXr14ujRo7i6uhZou9zd3QG4dOkSHh4ehX1ZIg9Wq5XIyEj8/PzkCmAZkP1f9srzMUhPT+eHH37ggQcewMHBoaw3p8SU52NQEcTFxREcHGz7rRXZSTuk5Mjnv+zJMSh75fkYSFtElIbibIsUOggyf/58xo8fz5gxYwBYtGgR69atY8mSJUybNi3b/CtWrODll1+mX79+ADz++OP8+eefvPPOO6xcuRKA9evXZ3nOsmXL8Pf3Z9++fXTu3LlA25WReurh4SGNj2JmtVoxGo14eHjIB74MyP4ve+X5GKSnp+Ps7IyHh8cd3/Aor8egIrBarQDSzSMP0g4pOfL5L3tyDMpeeT4G0hYRpaE42yKFCoKkp6ezb98+pk+fbpum1+vp0aMHO3bsyPE5aWlpODk5ZZnm7OzM1q1bc11PfHw8AN7e3rnOk5aWRlpamu1+QkICoHZOxg4SxcNqtaJpmuzXMiL7v+yV52NgZ2fHsGHDAMrl9hWX8nwMKgLZ70IIIXLj4ODAiBEjynozhCiwQgVBoqKisFgsVK5cOcv0ypUrc/z48Ryf07t3b+bPn0/nzp2pXbs2Gzdu5IcffsBiseQ4v9Vq5ZlnnqFDhw40adIk122ZO3cuc+bMyTY9MjISo9FYiFcl8mO1WomPj0fTNIl6lgHZ/2WvPB8Dk8nExo0b6d69O/b29mW9OSWmPB+DiiDj4oQQQghxs/T0dJYtW8bo0aPv6EwQceco8dFh3nvvPcaPH0+DBg3Q6XTUrl2bMWPGsGTJkhznnzRpEocPH84zUwRg+vTpTJ061XY/ISGBoKAg/Pz8sqWhWiwWTCbTrb+Y25S9vT0Gg6HIz7dareh0Oun/VkZk/5e98nwMTCYTbm5u+Pv73/FBkPJ6DCoCadTeOmmL3FpbRAhRful0Ory9vaXLpLhtFCoI4uvri8FgIDw8PMv08PBwqlSpkuNz/Pz8+PHHHzEajURHRxMQEMC0adOoVatWtnknT57ML7/8wj///EO1atXy3BZHR0ccHR2zTdfr9VkayElJSVy+fBlN0wryEu9IOp2OatWq4ebmdkvLuHnfitIj+7/slddj4OjoyKBBg8p6M0pFeT0GFYHs81sjbZHiaYsIIcone3v7CtMWEXeGQgVBHBwcaNWqFRs3bmTAgAGAujq3ceNGJk+enOdznZycCAwMxGQy8f333/Pwww/bHtM0jSeffJI1a9awefNmatasWfhXkgOLxcLly5dxcXHBz8+vQkYnNU0jMjKSy5cvU7duXbkKI8QdJi0tjYULF/L444/nGBgWQpQtaYtIW0SIO520RcTtptDdYaZOncqoUaNo3bo1ISEhLFiwgOTkZNtoMSNHjiQwMJC5c+cCsGvXLq5cuUKLFi24cuUKs2fPxmq18sILL9iWOWnSJFatWsXatWtxd3fn2rVrAHh6euLs7FzkF2cymdA0DT8/v1tazu3Oz8+P8+fPYzKZpOEhxB1Gr9dTt25duVIvRDklbRFF2iJC3LmkLSJuN4UOggwePJjIyEhmzZrFtWvXaNGiBevXr7cVS7148WKWD4DRaGTGjBmcPXsWNzc3+vXrx4oVK6hUqZJtnoULFwLQtWvXLOtaunQpo0ePLvyruklFvOqSWUV//ULcyezt7bnnnnvKejOEEPmo6L/FFf31C3Enk7aIuN0UKVw3efJkLly4QFpaGrt27SI0NNT22ObNm1m2bJntfpcuXTh69ChGo5GoqCiWL19OQEBAluVpmpbjrTgCIOXR7NmzizSCzdWrV+nUqVMJbJEQ4nZlNBqZO3eujIolhCgUaYsIIYqLtEXE7UZylsrAnDlzcvySMJvNeT4vICCALVu2lNRmCSFuQ3Z2drRt2xY7uxIf7EvcgmNhCXy/7zLbT0dxPioZoynnYeKF8tFHH1GjRg2cnJwIDQ1l9+7dec6/YMEC6tevj7OzM0FBQUyZMiXL72yNGjXQ6XTZbpMmTbLN07Vr12yPT5w4scReY1mTtogQorhIW6TiSDNbOBmeyPrD11ix8wJf7rrAV7sv8s2eS3y37zI//HuZtQeu8PN/V1l3MIz1h8OISCx/wTF5p5ayjAZVp06dMBgMBAQEUKVKFU6fPk1ERATHjx9n2LBhnDhxgvT0dIKCgli8eDFVqlTh/PnztGjRgri4OECllr722mv8+OOPti5KGbVZhBAVg52dHXfffXdZb4bIhcWq8eFfp3lv40msNw0M4uvmQEAlZwI8nalayYnASs4EVHImyMuF6j4ueDrfuUMe52X16tVMnTqVRYsWERoayoIFC+jduzcnTpzA398/2/yrVq1i2rRpLFmyhPbt23Py5ElGjx6NTqdj/vz5AOzZsweL5Ubg6fDhw/Ts2ZOHHnooy7LGjx/P//73P9t9FxeXEnqVZUvaIkKI4iRtkTuL1apxLcHIuahkzkYmcSYyWf0flcSV2NRs7Zn8uDva8dWEtjQJ9CyZDS6CChUE0TSN1BK++uZsb8iz3+uiRYv45JNP2LJlC5UqVWL06NHs27ePrVu34u7uDqgrWn5+fgC88cYbzJ49m0WLFuW4PEdHR3bv3s3x48dp06YNI0aMkCisEBWI0Wjk9ddf56WXXsLJyamsN0dkEpFo5JmvD7D9TDQAzat5kpRm5mqckVSThaikdKKS0jl4OT7H53u52FPdx5UaPi4Ee7sQ7ONKsI/66+vmAIDZqpFmtpJmsqi/ZitpZgtpJvW/h7Md9fzd0etvn3oM8+fPZ/z48bYT6UWLFrFu3TqWLFnCtGnTss2/fft2OnTowNChQwGV9TFkyBB27dplmyfjNzXDG2+8Qe3atenSpUuW6S4uLlSpUqW4X5JNabRDQNoiQojSJW2R25PVqnElLpWT4YmcDE/iVEQip8KTOB2RlOdvlZujHbX8XKnioY61VdOwaurCj/pfu/4/hMWncikmlZFLdvPNY22p4+9eWi8vTxXqFyrVZKHRrN9LdB1H/9cbF4fC7daHHnrI1ugAdVVrxYoVGI1GjEYjvr6+uT532LBhADRo0AA7OzuuXbtGtWrVirbxQojbjp2dHf369ZMTjnJm66konlm9n6ikdFwcDPzfgCY8cJf6btY0jbgUE1fjU7kaZ+RqXKrt/yuxKVyMSSUqKY3YFBOxKXH8dyku2/LtDTpbAyM/3q4OtKvlQ/s6PnSo7Uuwj0u5LVKZnp7Ovn37mD59um2aXq+nR48e7NixI8fntG/fnpUrV7J7925CQkI4e/Ysv/76KyNGjMh1HStXrmTq1KnZ9sOXX37JypUrqVKlCv3792fmzJm5ZoOkpaWRlpZmu5+QkACA1WrFarXaplutVluts5R0M41f2VCwnXELjszpVaC2SMZ2AQwaNAg3Nzfb/Yx9kbktknn+jL8AQ4cORdM06tevj52dHWFhYdnaIhnPvXn/FETGPizs80TxkWNQ9srzMdDr9fTt2xe9Xn/L23csLAFHewO1fF2LaeuKT3k9BiaLlcuxqaSbrZitVswWjXSL+mu2Wkm3aJgtVkwWFfQ4FZ7EqYgkzkQmkZKec7DDTq8jyNuFWr6u1PR1pZafKzV9XKjl54avm0OB2xEJRhPDF+/m8JUEhn2+i28mtCXIu2hZlsW536XVXA64ubnZ/t+6dSvvv/8+O3bswN/fn59++olZs2bl+tzM0VaDwZBvX14hxJ0lox9ucbgWbyQpzVSqUfqIBCPHriWi14FBp0Ov12HQ69Dr1F+DTodOB3odJMUb0ZyMuDja4+JgwN5Q/spamS1WFvx5io82n0bToEEVdz4cehd1/G98z+t0OrxcHfBydaBxQM6poclpZi5Ep3AxJpkL0Smcv/7/+agUwuJTMVmyRz8cDHoc7fQ42utxtDPgYKcnPMFITHI66w6Fse5QGACBlZxpX9uHDnV8aV/HB3/38nPVLioqCovFYhtxLkPlypU5fvx4js8ZOnQoUVFRdOzYEU3TMJvNTJw4kZdeeinH+X/88Ufi4uKyFV8fOnQowcHBBAQEcPDgQV588UVOnDjBDz/8kONy5s6dy5w5c7JNj4yMzFJrw2QyYbVaMZvNWEvpLWs2mzEXYF1ms1ltl9WKi4uLrQ2xbds2PvjgA/755x/8/f35+eefmTNnjm3+jOdmsLOzs903GAwYjcZs7ZGM9URHR2NvX7iuXlarlfj4eDRNkyE4y4gcg7JX3o9BzZo1iYmJuaVlnIpMYfSqY1g06FzLk5FtqtKkavkJhpS3Y3AuJpWfD0fz27FoYlOLdg5ob9BR3cuJWt5O1PRxpqaPE7W8nQn0dMTOcHOgw4KWGk9kauHW8c69NXn8uxOcjTYy5NMdLHq4Pv7XM1oLIz4+58zZoqhQQRBnewNH/9e7xNeRH3d3d+Lj47MME5whNjYWd3d3fHx8SE9P55NPPimBrRRC3CmMRiMzZ87k1VdfvaUU1PNRydz34VYSjGZaVq/EyHbB9GtaFUe7/L/TimrtgStM+/5QIbsHHLH9Z6fX4exgwNnegIuDASd7dctIw8xy0zTMFpWiabZquDvaUdvfjXqV3ajr704dfzfq+LvhVIDv8Nxcizfy1Nf72X1ONQKHhFTnlf6NirRMV0c7GgV40CjAI9tj6WYrkUlp2Bt0ONoZcLTT42DQ59jlJd1s5b/LcWw7HcX209HsvxTLlbhUvt13mW/3XQagrr8bITW9aRFUiZbVvajl63pbdZ/ZvHkzr7/+Oh9//DGhoaGcPn2ap59+mldffZWZM2dmm3/x4sX07ds320h1EyZMsP3ftGlTqlatSvfu3Tlz5gy1a9fOtpzp06czdepU2/2EhASCgoLw8/PDw+PGcTMajSQmJmJnZ4ejoyNH5vQqjpedp/y6w4BqiyQnJ+Pr64ter0ev19syyhISEnB3d6dy5cpYLBYWL16MTqfDzs7ONk/m7LPM03O6nzFNr9fj4+NT6O8qq9WKTqfDz8+vXJx4VERyDMpeeT4GRqORV155hTlz5txSW+SdLYfIiPH/czaef87G066WD493rUWH2j5lnsWYcQx8fX2JN1q4GpfKleu3q3FG2/+aBu1r+9C1nh+tgr1wsCu+45WSbmbdoWt8s+cS+y7G2aY72etxsTdgZ9Bjb9BjZ9Bhr9dhb6fHTq/HwaDDzqDH182Buv5u1K3sTj1/N4J9XLAr4YtK/sCq8d4M/nQXF2JSmLr2LF+ND8XHzbFQy3FwKHzgJDcVKgii0+kK3VWlJDz77LP07NkTFxeXbI2wPn36sHLlSurXr4+Pjw89evTgypUrZbSlQojyzt7enuHDhxf6ympmKelmHluxjwSjuoqw/2Ic+y/G8X+/HOORkCCGhgYTWMm5uDaZdLOV1389xrLt5wGo7u2Ci4MhSx/SjOBFRt9Ss0XDaDJjNKvpoOphJBrNJBoLf/UjMjGNs1HJ/HE03DZNp1PbktE4qOvvRnVvF6pWcqayu2OejYRNJyJ49pv/iElOx9XBwNwHm3Ff84Bc578VDnb6Ah8PBzs9bWp406aGN8/0UMd697kYtp+JZtvpKI6GJXAqQqXFfrnrIgAeTnY0vx4QaRlUiRZBlSitZqevry8Gg4Hw8PAs08PDw3Ot1TFz5kxGjBjBuHHjABXASE5OZsKECbz88stZThYuXLjAn3/+mWt2R2ahoaEAnD59OscgiKOjI46O2RtwGQGFzPczRpvR6/W4OpaPk5dnn32WXr162doiGdsI0LdvX7788ksaNGiQpS2SeZ7MJyOZp+d0P/O0m/dPQd3Kc0XxkGNQ9srrMXB0dGT48OE4OjoWedtiktNZ+99VAN5+qDk7z0bz4/4r7DgbzY6z0TSr5skTXevQq1HlUgvUJxhNqutIeCKnIpI4HZHI+cgkIpJM+V7AOXI1gc+2nMPN0Y6OdXzpWt+PrvX9qeJZ+CCRpmn8dzme1Xsu8fN/V0lKu555p9dxd31/BrcJ4u76fiUezLgVVSq5sHJcKA8t2sHpyGRGL9vLVxPa4uFU8PZrcb7vdVrmTp23sYSEBDw9PYmPj7ddgTEajZw7d46aNWtW6CI9t7ofrFYrERER+Pv7l7sv3YpA9n/Zu5OPgaZpPLP6AGsPXMXP3ZGlo9uw6XgEX+66yLUEldKv10GPhpUZ1b4G7W/xSsy1eCOTVv3LvguxAEy+uw5TetbDkE+DJuMY+Pn5YdF0pKZbSDVZSEk3k2qy2O4bTVYMetDrdNjp9ej1YKfXY9CDQa+/3uUG4lJMnApP5GREEqfDkzgZkUhciinX9et14O/uRNVKTmo0F08nqlZyJsDTiQOX4vjkn7MANA7w4MOhd1GzHPZlzklscjq7zkXz78U49l+M5dCVeIym7H1uq7lqbJvVP8tvbEkJDQ0lJCSEDz74AFDHvnr16kyePDnHwqitWrWiR48evPnmm7ZpX331FWPHjiUxMRGD4UYmzuzZs/nkk0+4dOlSvnV0tm3bRseOHfnvv/9o1qxZvtudUzsEpC2S4Vb2w538HXy7kGNQ9u70Y/Dx5tO8tf4ETQM9+WlyB3Q6HVfiUvnsn7N8veei7bepjr8bj3epzX0tAoqtW2xKupnj1xJVu+B6vYxT4YmExec9tKufuyMBlZypVsmZQC/VJgj0ciHVZOHvE5H8fTKCqKT0LM9pWNWDu+v7cXcDf4K9XWwFzY3XC5qnZxQ4v17s/Fp8Kj/8e4Xj1xJtywj2ceHh1kEMalWNyh631+/K6YgkBn+yg+jkdFoHe7F8bEiBkxTi4uLw8vIqlrZI2adFCCGEKLLU1FSef/555s2bh7Nz4bM1lm0/z9oDV7HT6/ho6F00CfSkSaAnj3etzZ/Hwlm+4wLbz0Sz4Wg4G46GU9vPlRFtgxl4V7VCD+G640w0T371L1FJ6bg72fHuwy3o0ahy/k/MRKfT4WDQ42Cnx5NbG0K2Q50bRac1TSM6OZ2T4Ymcjki6XjQskStxqVyLN2KyqOHiriUY2U9cjssb2S6Yl/o1vKUuNaXNy9WBPk2q0qdJVUAVVztxLZH9F2PZfymOAxfjOBuVzMWYQnYAvgVTp05l1KhRtG7dmpCQEBYsWEBycrJttJiRI0cSGBjI3LlzAejfvz/z58+nZcuWtu4wM2fOpH///lkCIFarlaVLlzJq1KhsAZAzZ86watUq+vXrh4+PDwcPHmTKlCl07ty5QAEQIYSoyG61LWK2WFmx4wIAo9vXsF1sCazkzOz7GjO5Wx2WbjvH8h0XOB2RxLPf/sf8P07yaMeaPNy6Gu6FyCbI7Fq8kc+2nGXVrou5ZnZU9nCkXmX3611nXXHXpdGoRlUCvVzy/L2/r3kAVqvG4avxbDoeyaYTEfx3OY5jYQkcC0vg481nCrWtjnZ6+japwuA21Qmt6X1bdVvNrI6/GyvGhvLIpzvYeyGWx1bs4/NRrUu0+3VOJAgihBC3MQcHB5566qki9ZPccz6G19YdA+Clfg0Jqelte8zOoLedHJ8KT2TFzgt8v+8yZyKTmf3zUV7/7Tg9GvozoEUgXev759nfVdM0PttyljfXn8Bi1WhQxZ1Fw1tRoxxlS+h0OnzdHPF1c6R97awjclmtGlHJaYTFGQmLT+VKnJGwuFTC4o1cjU/FbNF4vGtt+jWtWkZbX3zsDXpbIGxEOzUtLiWdrUcv0n9B6WzD4MGDiYyMZNasWVy7do0WLVqwfv16W7HUixcvZrkKOmPGDHQ6HTNmzODKlSv4+fnRv39/XnvttSzL/fPPP7l48SKPPvpotnU6ODjw559/2gIuQUFBPPjgg8yYMaNkX6wQQtwBbqUtArDhaDhh8UZ8XB24t3n231JfN0ee792Ax7rU5sudF1m89SxX4lJ59ZejvPvHSQa3CWJ0+xoFHnXkfFQyi/4+w/f/XrYVGvdzd6R+ZXfqVnajXmV36lV2o46fO54uNwIstmwcX9cCZePo9TqaVatEs2qVeLpHXaKT0thyKopNJyL452QkcakmnOwM1wuaqws8GbW+HK//7+JgoEt9P+5vHphlW25njQI8WDomhBGLd7HlVBRPrtrPx8PuKtXuPNIdpgKQ7jC3N9n/Ze9OPAYRCUbu+WArkYlp9G8ewPuPtMi3m0tSmpk1/15m5c6LnAi/kZZZycWee5tVZWDLQO6q7pVlOYlGEy98d5DfDl8D4IGWgbw2sCnODoWL+N+Jx+B2UpwpqHcq6Q6TN+kOc3uTY1D27uRj8PAnO9h9LoYnu9Xh2V71853faLLw/b+XWbL1HGcikwHVbbV34yqM7ViTVsFeObZpMjIw1h28ahtiPqSmN5PurkPnur75toOK8xhknIKXdbHXsrTtdBRjlu0h3WxlYMtA/m9AE1wcci/sLd1hhBBCYLVqnLkWw+szX+SjD97HxaVgV0BMFiuTVv1LZGIa9Su78+aDTQv0I+zmaMeIdjUY3jaYY2GJrNl/mbUHrhKRmMbKnRdZufMi1b1dGNAykIEtAzFZrExcuY+zkcnYG3TM6t+Y4aHVK/QPvhBCCHGnSUlJ4cknn+SDDz4ocFskw9GrCew+F4OdXsew0OACPcfJ3sCw0GCGtKnO36ciWbL1HFtORfHb4Wv8dvgazat58mjHmvRrWhV7g559F2L5eNNpNh6PsC2jWwN/nuham9Y1vPNYU8mRtpDqlvzx0LuYuHIfa/ZfYc3+Kxj0Otwc7XB3ssPdyR53Jzs8rv9vbym+rrkSBBFCiFIUn2pi59lofN0cqe3nSiWXgqeOppktHLocz+7zMew9H8ve8zEkGM3413yYX45E8WCroHwLjAK8/usx9pyPxd3RjkUjWhV61CydTnd9+NZGTOvbkB1nolmz/wrrD4dxMSaF9zee4v2Np7A36DBZNKp6OvHxsLtoWd2rUOsRQgghRPnn5ORU5OFxv7g+UlyfJlUKPXKK/vroKHfX9+fEtUSWbD3HmgNX+O9yPE9/fYA3fjtOYCVn9l4vxq7TwT1Nq/J419o0DvAs9LaK4tejUWUWPNKCl9ccJj7VhMWqEZ9qIj7VBGQNeljTUoptvRIEEUKIUnImMolRS3ZzOfbGl7qXiz21/Nyo5euq/vq5UtvPlererqSaLPx7MZY951TQ48DlONLN2UfuiEgy8cL3h1iy7Twv9mlA1/p+uV5hWHvgCku3nQdg/uAWtzyKiUGvo2NdXzrW9eXVAY3542g4P+6/wj+nojBZNDrU8eH9R1oWeix4IYQQQtwe9Ho91apVK/TzYpLT+fHAFUAVRL0V9au48+agZjzfpz5f7rzIip0XCIs3EhZvxN6g44GW1XisSy1q+bnd0npE8bu3WQD3NK1KSrqFpDQziUYTCUYziUb1f8bfiKhYZi4onnVKEEQIIUrB3vMxjFu+l7gUE75ujtgbdITFG4lNMbHvQqxtyNgMBr0Oq6Zxc9UmXzcHWgd706amN21qeFHVVc+gae8TW7UNx68lMmbZHtrW8mZ634Y0D6qU5bnHryUw7ftDgBqatmchR2bJj4uDHfe3COT+FoFEJqZxKjyR0Fo+BcpOEUIIIUT5kmA0YbVquDra5TkcbUpKCuPGjePzzz8vVHeYr/dcJM1spUmgB62Ciydb1NfNkad71GVi11qsOxhGeEIa97cIIKBS4UetEaVHp9Ph6miHq6NdrsP+xsXFMbOY1idBkNvA7NmziYuLY8GCBWW9KUKIIvjtUBhPrz5AutlK86BKLBnVGh83R1LSzZyNTOZsVDJnI5M4F5Ws7kcmkZyuhmqr4eNC6xrehNTwpnUNL2r6umbJ8rBarfzw+uPoHF1Z9M85lm0/z86zMdz/0TbuaVqV53vXp4avK/GpJiau2EeqyUKnur5M6VmvRF+zn7sjfu6S/SHEnULaIkLceeJTTVyOTeFybOr1W9b/E41m27wOdnrcHO1wdTTg5miPm6PBdtLq6+rAtFfnFao7jNliZeX1YXFHtatR7DUyHO0MPHBX4bNTRMUgQRAhhChBS7ed43+/HEXToEdDfz4YcpdtZBQXBzvbcKSZaZpGRGIaep0u30CCTqfD2dkZZ2dHXurXkJHtgpn/x0nW7L/CukNh/H7kGkNDq3M5NpXz0SkEVnLm/UdaSnaGEEIIUQFZrBqvrTvGt/suZQly5CfdbCXGnE5MMtxcqwFgw9FrrHnCmyqeBcu4+ONoOFfjjXi7OtC/eUCBt0OI4lCxgiCaBqbiK6iSI3sXVXUnF6+99hphYWF8+OGHACQlJVG9enXWrl3L9OnTSUlJwWg0MnToUGbMmFGy2yqEyJPVqrH2vyt8sPE0yWnpPBISzPC2NQqU4WC1arz+6zE+33oOgOFtqzPnviYFCj7odLpcUwFvlpqamiUFtZqXC/MfbsH4TrV4c/1xNp+IZPn1Ky0OdnoWDW+Fl2vBi7EKIYpRabRDQNoiQogcWawaL3x3kO//vWyb5uPqQDUvZ6p5uai/3upvkJczAZWcsTfoSU4zk5RmJjlN1WxQ/9/4u2zbOS7EpDJqyS6+fbwDHk72+W7LsusFUYeGVMfJ3lBSL1mIHFWsIIgpBV4v4UjjS1fBIfdCgyNHjqRVq1a88847ODo68u2333L33XfTokULNm7ciKOjI6mpqbRv354ePXrQtm3bkt1eIe4wFqvGqt0XWbT5DPUquzGyfQ261PVDX4jMB03T2Hwykjd/O87xa4m26e9tPM3CzWe5t3lVxrSvSdNqOVcWN5osPPvtf6w7GAbAi30aMLFLrRIZDs3Z2ZnPP/8cZ+esV14aVvVg2ZgQtp+J4o3fjnPkagKvD2ya6zYLIUpBabRDQNoiQohsMgdADHod8wY1o0+TKgUaIa6Si0Oeo9l1b+DPwI+3cyI8mYkr9rFsTAgOdrnXEDl6NYFd52Iw6HUMa1u9SK9HiFtRsYIg5UBQUBAtW7bkp59+4qGHHmLZsmU8//zzpKam8sQTT3DgwAH0ej2XLl3iwIED0vAQohAOXo5jxo+HOXg5HoArcalsOhFJTV9XRrQNZlDravlendh/MZY3fjvOrnMxALg72fFY51p4GkysORLLvxfj+OHfK/zw7xVaB3sxpkNNejeujN31gmFxKelMWL6P3edjsDfomDeoOQNaBpbYa9Y0jdTUVJycnHIMsrSv7cvaSR1ITrfg5ihf+UIIaYsIUdFYrBovfn8jAPLeIy24t1nxBWSreTnz3oP1eezro2w/E83z3/3Huw+3yPUCVOZhcasWsPuMEMWpYrWI7V3U1ZGSXkc+Hn30UZYuXUqrVq04ffo0ffr0YeLEifj6+rJ//37s7Ox44IEHMBqNJbutQtwh4lNMvL3hBCt3XUDTwN3Rjqe61+VqfCrf7b3Muahk/vfLUd7ecIIH76rGyHbB1K3snmUZpyOSePv3E6w/cg1QXUdGt6/B411q4+lsR0REBMM6NeDQlQSWbjvHukNh7L0Qy94LsVT1dGJEu2A61/XjmdUHOB2RhLujHZ+MaEX7Or4l+tqNRiNPPvlknhXZdTqdBECEKA9Kox2SsZ58SFtEiNvHgUtxfPjXKbwcNV68pxK+7gUvQJoRAPluX8kEQEC1RT7+v2ksmP4Wj391kLUHrlLZw4mX+jXMNm9sMQ6LK0RRVaxWsU6XZ3poaRkwYACTJ09m7ty5DB8+HDs7O2JjY2nYsCF2dnacOHGCP/74g86dO5f1pgpRrmmaxg//XmHub8eISkoHYGDLQKb3a4D/9QbCc73q88P+Kyzffp5TEUms2HmBFTsv0KGOD6Pa1aBJoCcf/HWKb/ZexmLV0OvgwbuqMaVnPdtwalar1bbO5kGVWPBIS17q15CVOy/w5a6LhMUbeWv9Cd5afwKAqp5OLB3ThgZVPEp8H7i4uLBq1aoSX48QohiUk3YISFtEiNvB5dgU3lp/gp/+uxE8/f3430zpWY/hbYPzHLYWVH2yaZkCIAsGF38ABLK2Rd4ywdRv/uPTf85S2cOJsR1rZpn36z2XSDNbaRzgQetiGhZXiMKqWEGQcsLR0ZGHH36Yjz/+mGPHjgEwY8YMRowYwRdffEHt2rXp1q1bGW+lEOXbyfBEZvx4mN3Xu63U8Xfj1fub0K62T5b5XB3tGNE2mOGh1dlxJppl28/z57Fwtp2OZtvp6Czz9mxUmed716feTVkiOfH3cGJqr/o8cXcdfv7vKku3nedoWAINqrizdEybUkvvtFqtXL16lYCAAPT6vBtDQgiRQdoiQpRfCUYTH286w5Jt50g3W9Hp4L7mARy9HMupqFTm/HyUVbsuMqt/IzrV9ctxGdbrGSDfZgqAlNQoLJnbIg/cVY1rCeri0P+tO0plD0db4MVssbJy5/VhcdsX/7C4QhSUTtM0raw3ojgkJCTg6elJfHw8Hh7q6qvRaOTcuXPUrFmzUONW32ludT9YrVYiIiLw9/eXk6wyIPs/q+Q0M+9vPMXirecwWzWc7Q081b0uYzvWzLMIV2aXYlJYuesCq/dcIi7FRJsaXrzYpwGta3jnOH9BjoGmaZyJTCLI2wVHu9Krcp6SksKTTz7JBx98kGt3mDuBfA7KVlxcHF5eXll+Y0VWObVDQNoiGW5lP8jnv+zJMchbarqFK3GpXL1+u3L9FpucTv0qHoTW9KZVDa9865KZLVa+2n2Rd/88RUyyynBtV8uHl+9pSKOq7oRdC2fThTTe+eMksSkmAHo0rMyMexpSw/dGllnmAIheB+890rJEh6G9uS2iaRqzfzrCFzsu4GDQs3xsCG1r+bD+cBgTV/6Lt6sD26d1u+1GhZHPQdkqzrZIkTJBPvroI+bNm8e1a9do3rw5H3zwASEhITnOazKZmDt3Ll988QVXrlyhfv36vPnmm/Tp06fIyxRCVDxGk4Wvdl9k4eYzRCSmAdCrUWVm9W9ENa/CnfwHebswvW9DpvSoR1RSGoGVnG/5aoROp6OOf/4ZJMXNxcWFxYsXl/p6hRBCiIrIZLHy2ZazHLgYx9X4VK7GGW0Bi5xsOhHJor/PoNepkdtCanoTWtObNjW88XFzBNSFlE0nInht3THORCYDUMvPlZf6NqR7Q390Oh1WqxWDXsfQ0Or0bx7IextPsXyHym7952Qkj3asyeRudXCxN5RqAASyt0V0Oh2z+jcmPCGN9UeuMX75Xr6d2I6l284DMCQk6LYLgIg7S6GDIKtXr2bq1KksWrSI0NBQFixYQO/evTlx4gT+/v7Z5p8xYwYrV67ks88+o0GDBvz+++8MHDiQ7du307JlyyItUwhRceQU/AjydmZ2/8Z0b1j5lpbtZG8odAClvLFYLJw5c4batWtjMEiDQgghhCgpJouVJ1fttxVRz8zN0Y7ASs4EVHIioJIzgV7OuDvZc+hyHLvPxXA+OoUjVxM4cjXBFgyo4+9GSE1vLkQn27roers68EyPugwJqZ5rzQ9PF3tm9W/E0NAg5vx8lC2nolj09xm+//cyTQI82HQistQCIJBzW8Sg17HgkRaMWLyLPedjGfbZLqKT0zHodQxvG1zi2yREXgodBJk/fz7jx49nzJgxACxatIh169axZMkSpk2blm3+FStW8PLLL9OvXz8AHn/8cf7880/eeecdVq5cWaRlCiHufDkFPwIrOTPp7joMalWtwF1f7nTp6em8//77zJs3D2dnGWZOCCGEKAmZAyAOBj1Tetajrr8bgV7OBFRyxsPJLpesUnXCH55gZPe5GNvtRHgipyOSOB2RBICDQc+YjjWYdHedfLvNZKjj787yR0P463gEr/5ylPPRKbYAyIJSCoBA7m0RJ3sDn41szaBFO2yvs09jGRZXlL1CBUHS09PZt28f06dPt03T6/X06NGDHTt25PictLS0bH0/nZ2d2bp1a5GXmbHctLQ02/2EhARA9dXKGMnBarWiaZrtb0WVeT9kHuWiKM8Xpa+i7X+jycLXey6x6O+ztuBHQCUnJnWtzYN33Qh+lOb+KM/HwNHRkffffx8o3X1S2srzMagIZL/fuorcDgF5/eL2dnMA5JMRrbi7QeGy1St7ONG/eYAtMBGbnM6e8yogoqGGiw3yLnx2qk6no3vDynSs68uybef5+eBVHu9Sh3uaVS30sorK2dmZDz/8MMfHKrk48MWjITzw8TYiEtN49KbRYoQoC4UKgkRFRWGxWKhcOWsKeuXKlTl+/HiOz+nduzfz58+nc+fO1K5dm40bN/LDDz9gsViKvEyAuXPnMmfOnGzTIyMjbWPaZ5z0R0RE4O3tXSErEGuaRkxMDFarlbi4uCIV8bFarcTHx6NpmhQBKgO38/5PTrOw6XQs/5yJw6KBq4MeF3sDro4GXOz1uDgYcHUw4OKgx9XBwIUYIyv3hROVrIp9VXF3YHRIFe5p5IO9QU9cTFSZvI7yfAysVisXLlwgODi43G1bcSrPx6AiiI+PL+tNuG3Z29uj0+mIjIzEz8+vwrZFIiMj0el02NsX7Aq3EOVFcQRAcuLl6kCvxlXo1bhKMWwlONoZeKxLbR7rUrtYllcYFouFw4cP06RJkxy75gZWcubXpzoRFm+kSaBnqW+fEDcr8SFy33vvPcaPH0+DBg3Q6XTUrl2bMWPGsGTJklta7vTp05k6dartfkJCAkFBQfj5+WWpFuvu7s6VK1e4fPnyLa3vdqbX6wkODsbV1TX/mXNgtVrR6XT4+fnJyUcZuN32v9liZcvpKNbsv8qfx8Ixmgp/BVl1e6nNAy0Dy0W3l/J8DIxGI++++y5z5sy5o0eeKM/HoCJwcHAo6024bRkMBqpVq8bly5c5f/58WW9OmdHpdFSrVk1qF4nbSkkFQO40JpOJlStX8uqrr+b6Gfdxc7QVghWirBUqCOLr64vBYCA8PDzL9PDwcKpUyTmK6efnx48//ojRaCQ6OpqAgACmTZtGrVq1irxMUCngjo7ZP0h6vT5LA9nd3Z26detiMpkK/DrvNPb29rfc6NDpdNn2rSg95X3/a5rG4SsJ/LD/Mj//d5WopBtV0mv7uTKwZSB+7o4kpVlIMppJTjeTlGZW/6eZSUxTf+30Oh4JqZ6l20t5UV6PgYuLC/PmzSvrzSgV5fUYVASlvc8LO2LcggULWLhwIRcvXsTX15dBgwYxd+5cW2Bw9uzZ2bJH69evnyXj1Gg08uyzz/L111+TlpZG7969+fjjj7NlqhaFm5ubtEWKoS1yW7u8Dzyrgfutv59E6ZAASME5OTlVmLaIuDMUKgji4OBAq1at2LhxIwMGDADU1bmNGzcyefLkPJ/r5OREYGAgJpOJ77//nocffviWl1lQBoOhYv/wClFCwhOMfLfvMmv2X7EVvALwcXWgf/MAHrgrkKaBnhUy/bu0mM1m9u7dS+vWrbGzK/HkPiFKXGFHjFu1ahXTpk1jyZIltG/fnpMnTzJ69Gh0Oh3z58+3zde4cWP+/PNP2/2bPy9Tpkxh3bp1fPvtt3h6ejJ58mQeeOABtm3bViyvS9oiFdiBr+DHieDkCYO/hJqdynqLRD4kAFI40hYRt5tCv0unTp3KqFGjaN26NSEhISxYsIDk5GTbyC4jR44kMDCQuXPnArBr1y6uXLlCixYtuHLlCrNnz8ZqtfLCCy8UeJlCFJmmwak/IDEMAlqCfyMwyJdzcdh9Loaxy/aQmGYGwMFOT69GlXngrkA61fXLdVg3UbzMZjO//vorLVq0kIaHuCMUdsS47du306FDB4YOHQpAjRo1GDJkCLt27coyn52dXa4ZpvHx8SxevJhVq1bRrVs3AJYuXUrDhg3ZuXMnbdu2Lc6XKCqSqNOw7ln1vzEeVgyE+z6AFkPKdrtEriQAUnjSFhG3m0K/SwcPHkxkZCSzZs3i2rVrtGjRgvXr19vSRS9evJglbdZoNDJjxgzOnj2Lm5sb/fr1Y8WKFVSqVKnAyxSiSJIi4Ken4ORvN6bZOUNACwhspW7VWoNnEFSQTIXDV+JZ+PcZejT0Z2DLakVezqbjEUxcuY80s5VGVT0Y1T6Yvk2rFnhIN1F8nJyc+N///lfWmyFEsSjKiHHt27dn5cqV7N69m5CQEM6ePcuvv/7KiBEjssx36tQpAgICcHJyol27dsydO5fq1asDsG/fPkwmEz169LDN36BBA6pXr86OHTskCCKKxpwG340BUzLU6AQuPnD0R5UVEnseuk6rMO2P24UEQIpG2iLidlOkUN3kyZNz7aqyefPmLPe7dOnC0aNHb2mZQhTa0bXwyxRIiQaDA1QLgWsHIS0BLu5Qtwyu/jeCIlWaQuVGd1xgJN1s5YO/TvHx5jNYrBrrDoax+1wss+9rhKNd4dKzf/7vKlNWH8Bs1ejWwJ+Ph92Fk72keJcVs9nMli1b6NSpk1x9Ebe9oowYN3ToUKKioujYsSOapmE2m5k4cSIvvfSSbZ7Q0FCWLVtG/fr1CQsLY86cOXTq1InDhw/j7u7OtWvXcHBwyHKBJmO9165dy3G9aWlppKWl2e4nJCQAFHk4epG723WIbN0fs9BdO4jm4oM28BNwq4yuUjC67e/B32+gxZ5Du/c9sCv/xSJv12OQF03TCIs3ciI8kePXEjlxLZGDl+M5H52Cg0HHwuEt6VLPt9y85vJ8DMxmM1u3bqVjx453dFukPB+DiqA49/ud+y4VFVNqHPz2Ahxcre5XbgoPfAKVG4PVCtGn4cpeuLwXruyD8MOQHKGyRTJnjDi4g39Ddavc+Pr/jcHVp0xeVr40DWLOqm4/envV5UdvDwZ7TkYaeW39aY5HGqmEgUZBfmy9nM5Xuy9y9Go8Hw9vRWAl5wKt5stdF5jx42E0De5vEcDbDzWXbi9lzGw2s3PnTtq1a3dHNzyEyM3mzZt5/fXX+fjjjwkNDeX06dM8/fTTvPrqq8ycOROAvn372uZv1qwZoaGhBAcH88033zB27NgirXfu3LnZiq0CREZGYjQai/ZiRI5uxyGyHc//hdeuRQDEdXmdtFQDpEZBsydwtvPFY8tsdAdXY4o8R2zvD9CcKpXtBufjdjwGmWmaxtHwFE5GpHAmOpXTUamciUolMc2SbV5Hg46599amsRdERESUwdbmrDwfg/T0dI4cOUKdOnXu6NHEyvMxqAji4+OLbVnSYhZ3jtMbYe1kSLwKOj10nApdXgS761/Gej341VO3FqrvOKZUuHZIBUWu/gvhRyHqJKQnwuXd6paZqz/41FHL1Nupm84AesP1+4Yb01y8wLsWeNcGn9rgHqC2obiY0+DCNji5AU6uh9hzOc5WD/gCIGP01EhIqNqUN2K78u3lNtz7/hY+GHIXHev65rm6jzef5q31JwAY3rY6/7uvCXq0Yns5xSo1Ds79A0Ghd3wlficnpyxdB4S4nRVlxLiZM2cyYsQIxo0bB0DTpk1JTk5mwoQJvPzyyzk2VCtVqkS9evU4ffo0AFWqVCE9PZ24uLgs2SB5rXf69OlMnTrVdj8hIYGgoCD8/Pzw8PAo1OsWebvthshOuILu75cB0EKfwLPNw1kf95+MFtQIvh2NQ9hu/H8ejjZkNXjXLIONLZjb7hhkEpWUxnPfHuSfU1HZHrPT66jl60r9Ku7Ur+JOgyruNK/mWS6Hci3vx2DSpEllvQklrrwfgztdcQbYJAgibn/pyfDHLNjzubrvXRsGfgJBbfJ/rr0zBIWoWwZzOsScgfAjEHEMIo6qW+x5lTWSXMSrAnbOqoHjXUsFRWzBkaqqn7CTZ/5dcBLD4dT1oMfZzZB+Y0QWDA5QKRisZtJN6SQmp4LVhD1mnPRW7HUWdFZVxNQj5hCvc4jnnL1YmtadKUuiGN0rhMe71Eavz7oNmqbx5voTLPr7DABPdq7G1FoX0a15H078pra775vQ8N6i7ZfiYkpV++XQd2ofWdJV0GrI11CtVfGuy2KCmHMqYBZ1EqJOQfQpiL0ALYdDj1eKd315MJlMbNiwgV69emFvLzVZKoSYsyro61dfBfpug1T6girKiHEpKSnZGqMZo7BoWs6B2qSkJM6cOWOrG9KqVSvs7e3ZuHEjDz74IAAnTpzg4sWLtGvXLsdlODo64uiYfd/LMM4lIDkK1yOr0Dfuhb5q07LemrxZLbBmIqTGQNUW6HrORpfT+6FuDxj7O3z5MLroU+iW9FS/V0G5DwVd1m7HYcp3nInm6a/3E5GYhqOdnra1fGhQxZ0GVd2pX9mD2v6uhe4WXJbK6zGoSG2R8noMKoLi3OcSBBG3t4u7VIGxmLPqfsgE6DEbHFyLvkw7hxtdYTJLS4LIExB3XjVyrOZMf82gWW/8bzVDUqQKpkSfgbgLYE69EVDJid4eXH3BxVf9zfjfxQe3hBh0YTvg6v6sz3GrDHV7Qb3eUKsr6QZXPtx0mo83ncZs1fB2deB/9zfm3mYBan5Ng+Qo+PcL2PM53olhPGv/HZO1tazd2J7/nRrGlBEP4OmsfsAsVo2Zaw/z3a4zdNcf5MWgY9T7byvsTrixDemJsHoYNHkQ+s4r3S5DFjOc26wCH8d+UduSwcFNBayW9VNBscYDir6es5txO7wOXcoVFeyIOQda9hRaALbOBzd/aPt40ddXCFarlVOnTmUp6CjuUBYz7PwYNr0G5uvdLeycIbgd1OqqbpWbFj7jzGK6nsFWPuogFXYUuv79+zN//nxatmxp6w4zc+ZM+vfvbwuGPPfcc/Tv35/g4GCuXr3KK6+8gsFgYMgQNUKHp6cnY8eOZerUqXh7e+Ph4cGTTz5Ju3btpChqWbOY0H31CB5X98HW/6lR3poOUr85XjXKeuuy++dtuLBV/QYNWpJ3kLJyYxj3J3w1GML+g2X3wsBF0Hhgufk83q4sVo0P/jrF+xtPYdWgrr8bHw69i/pV3Mt60+5I0hYRtxudlttlkttMQkICnp6exMfHSxpqMbNarURERODv718+op4mI5zZCId/gCM/qOCDRyDc/xHUvrustw6LVeOzLWeJTkqjTQ1vQmp6U8lRrwIhMWdVUCTmrAqQxJxVwZLMJ+/5CbgL6vWBer2gSnPQ67FYNf69GMustUc4FqYCFH2bVOHVAU3wzS2l05wOx35SJ1VX9tkm79c3wa/n0/i3uIclK5bhd+lXeur34aFLvfFc9wAVVGjYX2VdbHtPHQcXX7jnbdWAK6zYC3BptwpC2buoLB1750z/X/9r56y6Lh36Fo6sgeTIG8vwrA5NH4SmD0Gl6vDdWDj1u3qsx2zo8EzhGpbJUfDr8+p9djN7V/CtC771rv+tq7pT/fMWoIPBK9T+KUnGBFX/pmYX1c2rtIQfhUpB4Fh6jcly9z1UEJqmMspO/KaylHQ6CHkMmjygus4VxrXD8NPkG4HQKs0gKVzdMnP2hlpdbgRFPIPUPPGXb9wSrmS9nxKlMtOaPgTNHlYZajeJi4vDy8ur1H5jP/zwQ+bNm2cbMe79998nNDQUgK5du1KjRg2WLVsGqLo4r732GitWrODKlSv4+fnRv39/XnvtNVvXlkceeYR//vmH6Oho/Pz86NixI6+99hq1a994rUajkWeffZavvvqKtLQ0evfuzccff5xrd5ibSTukhGx8Fba8jWbnBJoVnSX9xmPVQtT7tvFAcPMru23McH4bfHGv+j0c+Ck0H1yw56UlwffjMtUm04GdkwqgZP5r73Tjvm89uPtlcPEusZeT2e30HRyRYOTprw+w42w0AA+1qsac+xvj4nB7X/u9nY7BnUqOQdkqzraIBEFEvsrFBz4j8HFkDZxYnzVo0OwR1R3DuVLZbFsmRpOFZ7/5j3WHwmzTdDpoUMWD0JretK3lQ2hNb7xcb+rTZjKqE5Hk6zfb/5FoyVEYUxJxbNATfd1e4F4Zq1XjRHgiO85Es+NsNLvORpNgVF1dvFzseXVAkxvZHwVxaQ9xm97D7ew67FCVly3oMZCpCrN7VWg0QAU/qoVkvdp85V9YO+lGlkvD++Ced1RGRF7SU1QgZv9KOL+l4NubmYuPagA3fSj7dlkt8PtLcL04HS1HwD3zb9SJyY2mqeyS316A1Bg0nYHUevfjVKster/6qvHpXjV7QEXTYN1U2LtEBWtG/6KGYS5uGdu34WVICifN4IZ+wl/YV65f/OvKLCkCfn1Ojb7k6ge9XlMnzaVwxTLP7yFjPMRdhLhL6v+qzcCvYdFr8KQlwaVdcHmPuprr10B1PfGslv9rNaerWj0nflO3+IvZ5/GuDZ2mQrPBYMgnbdicBlveUTerGRw9ofdrqtsVQORx1TXu7GY4vzVrFzlQ9Ylyy1rKTWAraPqwCtZc/wyXdhDkdiTtkBJwfhssuwfQiOvxLh53DUR//BcVBD/3D2TUpdIZVNCv6SBocC84lcH+T4mBRR1VkLH5UBi4sHDPt1pgwwz1e6UVcASEStXhoS8g8K7Cb28hlYu2YAH8czKSKasPEJ2cjouDgdcGNmFgy2plvVnFojwfA5PJxNq1a7n//vvv6O4w5fkYVAQSBMmBND5KiKZhjThOTHQk3lVroHeupE4KSuODbwt8/KhOJjIHPjwC1Ql5kweLv95DESUYTUxYvpedZ2OwN+jo3yyAg1fiOR2RlG3eBlXcCa3pTWgtH6p4OuHiYMDF3g4XRwMuDgac7Ay22hxWq5Xw8HASda7sPBfDjjPR7DoXQ0xyepZlujva0bNxZV7q1zD37I98xIWdY8uquXRK+IVKumQiNC/S6/enWsdh2QMMNzOnqTTgrfPVyZqzN/Sbp45R5hNHTVMnl/tXwOE1mY6rTp18GRzAlKJqfJhSwZR8/W/KjWU4uKmGbtNBquGb34nkrk9h/YuqYVmzMzy8HJy9cp434aoaXvnkenW/chOs/T8gwi6gYD96FjN8PURlyLj4qlTn4ix2F3EM1j2n0q0BTWdAp1nQvGuhG7exZK4Kahoc/Ebtw9TYrI8Fd1QBL/8Gxb/eTKzhx4g/vRNPLQF9wmUV8Ii/pP6m5VAt3NFT9a2vHgrV26n3ln0uoyClJaqudee3qADG1f3qPXwze9frxZWvB0V866u/TpXUd9WJX1WtjrRM3cXsnKDW3VC/j8r62vnRjX3oWR06PgMthqkrvDe7tEdlf0ReHxq2wb3Q723wqJrz67CYVFZXRlDk8h71OnQG8AhQQRyPQPU34+YRqAJa5/6BQ9/AmU03giYZJ5bNBhNXtQNelYPkNzYP0g4pZqlxKqgQfwmt+VDC272S9Ts4IUxdGDn0rcoOzODkqYLdTQeV3rZqGnw9VH0H+NSBCX+Do1vRlpWerG6mVPW7ajZe/5vpfloi/P2mqlVmcFAXglqNKdGAdHk/+TNbrMz/4yQfb1b1yxpUceejYXdR26+Ix6EcKs/HID09nWXLljF69Og7fnSY8noMKgIJguRAGh/FTNPg7CbYNDf7CCnowNFDXWnJ/NfFB3zrqBME3/qqr66hgKmHFrPqLhJ5AqJOQNhBOPVHzoGPxgMgsHXpBGIKKDzByKgluzl+LRE3Rzs+HdGK9nXUaCuRiWnsOhfNrrMx7DwbzakcgiI5cbY34OpowNneQFKaidiUrCdlLg4GWtfwpl0tH9rX9qFxgAd2xTBcrcWqseiPwxw5fpRH7+tO65p5jxqTTdhB+PEJCD+k7te/B+6df/1E+mvY/6Wqq5HBq4Y6CWw+RHWxyI2mqcZfeopqXBa2GOTJDfDdGHWl3KcuDPtGFanNvPx/l6srcWkJqkZLlxegwzNY9XaF+9FLS4KlfeHaQbWusRtuPTiRlgib31BXCa1mlWnS+TmVibH0HpVxUL09jPyxeAtlxl9WQaFTG9T9Kk3h3gXqpPnvt1TDXG8H7Sar/XUr9XhykhoHv78MB1bmPZ+Lj+r64eAKVw+o4Flmenuo2hyqt1VBEYO9ypy4sE3Nf3O2hGd1VWvDbFTfS9Gncw6M5MTVT3VZq99PBREcXG48lpYEexfD9g9udOVyrwrtn4JWo9W86cnw1//BzoWAppbX721odH/hTnLSElWXKbfKBf8uTopQXQ0PfZOlm1y8xYlK/xchv7F5kHZIMdI0+O5R1RXRqybWCX8TEZ+a+3dw9Bk4/D3897XqagrqN6XvW6WTFbLrU/jteRWQGPen+q4paalx8OPjKvACKiv23vnF/x183S2f/FktEH4Yzm8j7tgmzJGnoNf/8G153y1v29W4VJ76aj97L6gA8/C21ZlxTyOc7G+fgqcFYTsG3h7o0xJVW8UYD8a463+v3ywmuGvUHT86Xlm47YMgxgT1PZXThZfbgARBciCNj2KiaXDubxX8uLRTTTI4oNm7oEtPso0uUiAGB3VFxDfjyun1v1bLjVE1Ik+ov9Gn1WgeN/MIVA3/xgPLXeAjw5nIJEYu3s2VuFR83RxZNqYNTQI9c50/KimN3edi2HU2mn0XY4lLMZGabiEl3UKqKfe0dUc7Pa1reNGulg/tavvQrFol7Ish6FEiLCbY+q46SbaaVOaGKeVGiq+9izquLYZBcIfSO67XDsOqwZBwWZ00P7JKnRTHnoefnlLvfVBZA/d/ZCuOW6QfvYQw+LyHWldwBxixpmjBCU1TjfsNMyDxejerBvdCn7lQqTrp6emsX7GA/hHvo0tLVN2CHvjs1q8IWq3w7zLYMEsFIw0OasjpDk/fyLyJvQDrp8OJdeq+RzXo+4bavuK4InnqT/jpSUi8ioYOU+Xm2PvWQucVrAIelapf/xuUteFvMavG9sWd6nvswg5Iupb3uioFQ41OUKODOl5ewVkft5hUDZ/IE9dvx68HR06pQIl/oxuBj8BW+b+nTakq6LZ1gRrWG1Tm0F0j1fGOu6CmNR8CvV8vtX7/WUSfUVfZD35DQthpPN9IlN/YPEg7pBgdWKVO8HUGGLsBa8BdBfsOtpjU786Wt9XvTaVgePDzkh1xJewgfN5dtWH6vAltJ5bcum6maaom18Y56vX6N1KZjr51C/78sP9U7aLa3XLPMqMIv4MWs1r2hW3XbzuyZe2l4UDKkDV41e9YsO3NwZGr8Uz97Fcup9qjd3Rn7oNNC9cd+HZx7RDa2kkQcSxrXZzcBLSEMetL7WQ3PT2d1atXM3jw4NLLBLGY8s8ELma3dRAk4jgs6aXOrcb/lXt2bEFZTCoYW4r1mCQIkoMK0/gwJqg3bUl86M/9o4IfF7er+wZHaP0o1vZPEZGqx9/PD701XW1DWsL1v/E37ieFq6FCI49D5El1hbgw7JxVJklGinmtruU28JFh/8VYHl22h9gUEzV8XFj+aCjVfVzyf2IurFYNo9lCcppFBUZMZpKNJmJj4+jQuDrODrdZP8vwIyorJOyAuh/UFloOU0GtUiyqmUXiNRUICTugTuzvGgUHvlRBGjtn6DZDjeySqXBlkX/0wo/Ckt7q89FkkApOFOb5EcdVDY6MeileNVUXo7o9bbNkNDweCamC/epHVLZC5xeg28sFX8/NYs6qoFDGequFwP0fqs9lTk78puqnxF2vf1G3l7oCW9RuQMZ4Vctl//XsD+9aqkuSc52iNTw0TQUVLu6CiztUvQ9LusoIqdFRBT3yykLKi9Wijm9u3avyY05TJ3xb59/Yf6CCO/cuUMNoljVNI+7Y33g1vvvO/429BRWmHVLSYs7Cok4qa6/bDOj8fOG/gy/sgB8mqAw5nUEFcDs9W/CMqIKKOg0rB6rPbr2+MOSrshnV5fxW+HaMGhHNwV19X+c2IpqmqTpeR39U9Z0yAq52TtBmHHScokanu0mBjkFSpMr4PLNJfc/eVKMoSXNmr7Ueu7SGdLA7TkcOEK/zwG78H7gGFL5L5emIRL5Y+AavWD/GqHfG1O4ZvO5+8tZP7sqbQ9/B2sk3tat1KsvJyVPdHD1v/H/yN9Xt8q5RcN/7pbKJpR4E2faeOmfp+qJ6z5aS2zYIkpYEn92tLjwDdH5efb8WldUCX9ynApzdZqjv11L47pMgSA7u+MaHyQi/T1cFFx091Sgo9XpDnZ63HoE7v1V9kVyvMYDBUaVld5wCHlWL9oG3WlV//YzuLRmBkcgT6kOSUVzS1q++nko/v42+UDYdj+CJL/8l1WShWTVPloxuU+RaHHm5bb9wM1jMaoQW3/oqyFUepCerBvLxX25MC+6oGgs5jIxxS8fgzCb4cpAKTnR6FrrPynt+k1F9Fo/9ouqmWM2qcdrpWdVlIq+rOv8uV5kTAAMWQouhhdtWq0V1wfjr/1Rjy95FbW/IhPxHM0lPUcU7t72nsn/snNR3SIthhQswnN6oXkPCFUAHoROh+yysdk639+cgPxaTaujuXayCv91eLrtAYQ6kMGr+7vh2SGmwmGBJH7iyV3XvG/0L6A1F+w42xqv6SYe+UfeDQuGBT4tvWN2Lu+CrRyA1RgWox20s3SHib5Z4TXUhurBN3W/7BPT8n7poZrWqGkFH16pi5PGXbjzP3kVl1WXUHrJ3Vdks7Z/MEtzN9Rhk1Pna/ZkKrGTKUtCcPLng2pxvo4P5J60+R7VgOtSrwvS+DXDWjCR/2ofGnCHcUBWvJzfjUKlgIzEBXIhOZtVHc5hu/STrA+4BcPdLKouuuINehZUQprqS1usN7gV/bTYWM/z5Cuz4EACtdneiQl7EJ6geeifP3NvMpzfCygcBDe77EO4aUfTXUBAXd8LuT1WmaGl0BdvxsTonyjBktaq7VQpuyza5pqnRpw5/p4Kk6Ymqi/DErUWv57btPfgjU3u2ySAVfC1qAPLk72q0ykYD1DloLgEVCYLk4I5ufESfgW9HwbVDOTyoU1XB6/ZWV4ertsg7kGC1qH7oiWHqysXuz25c7TU4ZAp+3EglvC0/8CXs272XmPbDISxWjc71/Fg47C5cHUvmx1b2fwmxWmHT/6muB+2fUkXlctm/t3wM9n8Ja59Q//d/H1qNyvp44jXVUDr5uwqaZK5nUb+f6vqSS8M9WzGyP+eorAK9PYz4QRWCzY/Vqrq0/P2WqmMC6nn93y98NkfUKVj37I2uRaC6xdXupgqE1uiYcx99Y4Ia7ebf5eq+Vw24/2PVPQX5HJQ1CYLk745uh2R29QDs+VwFOt2rqJo2mf86exX9iuBf/wf/zFMXex7fZgug3tLn/+A36jspLUGdANzzzq2PanXsZ3VSYTaqYeuHflM+hui1mFXXmO3q6n+8711oVZtT6fz6G90pQQU66vdR3VLr9FCBkNMb4a9Xb2RuOnpCu0kqM9LJI/sxSE9R3eX2fH7jdwMgsBXWJoPYnFaXV3bApXgVFGlY1YOX+jWgU90b++noyVO4fXkP1XXhXHCqT9Azf6F3yr+Q6ZW4VL7/cDpPmZcCYLxrHE7VW8Om124EePwaQPdXoH7f0s/OSY5SXYL3fK7eI/YuKijV4emC16hJjlZ1zDJ+SztOxdr1JSKiogv2Ofh7nmrjGBxVXbKAFrf0knJ16DvVdc2SToLBG6ep+3FwrVQy6wLYs1iNwgfg3xgijqj36oRNOV7EKm55fheZ01Vh9Yvb1QWtFkOzd60trIxlBrTMf2TD3Oz5XH0H6gwwep36fjjxq8qGHf1r4S9AR55Q2XqWNDX4wdG16oJdQEvVzTzTOWS+jAkqoJWR+QuqrXjfBzleQJMgSA7u2MbHkTWw9kkVtXPxgYGfqJEITv2uTpgy//CAKoBXp6caljM1RkWhE6/fEsJUl5WbCwAaHFQ/9I5TwTMw2ybIyccNmqax8O8zvLX+BAADWwby5oPNcLAruf0i+7/sFcsx2PS6quavM6gGs4u3+gyfXH+j0ZnBvaq6ctR4oOoWlodsw9JZrfD9WFVQ0MkTxv6RezcWi1l9x2x5ByKPqWmOHtDr/9R3QlEbjpqm1r9zkbqim3m4R50BqrVRQZHad6sTiPP/qO+5hMtqnpDHoMcrWep8yOegbEkQJH93bDsks7CDsOzenEdkymBwVAUZ3auq757mQ1Xtpfy+Ty5sV8PhalYYtEQ1rq+75c9/7AWV/Xe91hlNBqlgiHOlwi9r92fw6/OApuoADVpSYsVIi+zYLxi/ewwny43uKJqDG7r6/VQ3mdrdcr5iq2nq5Oiv19TJJaigVodnsLYeS0RcMv6GRPT7lqpi1cbr7wM7J7VP24xlu7E6r/96jMNX1ChZVT2deLZXfQa2DMSgz/4e2LN3N7V/Hoi3LomTnu2p+9RP6PLo8h2RaOSnD6YyLv1LAJJDnsS176vq/WUyqhO+LW/fGIUrqC30nKPegyUtNRa2f6gyKjMuZrhVVm1vUO34zi9A60fzPqENOwhfD1PduexdYcDH0HhA4T4HVqsaqe7kepXpM+Hv4q0tpWkq0LNxjrp7faQ6S7unMPR+tfjWk1lGrSBQAaW7Z6jvjMu7oXIT1d7JXIi8BGQ5BqYUte4LO1RX28t7s3ZZ0tup4eY7TlEZ74WREqOy/3d/pmqaBYXCkK8Lfwyv/Ku6ZVvSVduu/ZNqVL2PQtV7tP976gJ4QVnMqq7IlX2q6/PQb1SPgm9GqvNOtyoqEFKQkTvPblbdvOIvATpodJ9qF5uNqi3a+3VoOTzLb4cEQXJQrhofVovq0xp+WNUESE9WBzYotOAnFeY0NSLCns/U/ert4MHF2YMUCWFw+g/1pjm7OVv/yxzp9OpL2b2KOhnp8LQaKjG3l1PBTz6S08zsuxDLzrPRbD8TzYFLcQA81rkWL/ZpYBvKtqRU9P1fHhTLMdA0WDNR9ZfOSWAr1aCu1xuqNLu1K1cmIyy/T/XJrhSs0rQzX6U0p6vt2DIfYs+paY4eqttL28dz7A9eZKlxKtvszCY14lTM2ayPZ6RmwvXsj49UtshN5HNQtiQIkr9y0w4xpaqTsSy3OPX5qtmp6MuNOq0a0ylRqk5QzU4qi812C1ON4Jz41FUp+c2HgJt/9sczDYdL86EwcGGWh4vl828xq5O2zXPVxSAnTxVwDZ1YsG4sVitsnK3SwEFlD/Z7u+y7XOTgo02nWb3hH2barSQeV361hHDWPYRXBrbk7gY57P+bWa1wdI3qKn19NDfN1Z/0SrVwvLLzxnxeNaD1WGg5HIuTF29vOMHC60PUujva8fjdtXm0Q818R2n5e+OvhP4zEiediaNVB9JowtIcfwNjk9JY/8ETDEn7DoCEdi/i0Wt69nlT49Rx2rnwxklp/XtU906fOoCmfpMz/mrWrNPsnApXey8tUY3ctv2DG4GhgJaqVkLt7qrr7Z9zboyM51VDbUujgdmvwh/8VnUJNaeqblaPrILKjYAifA5S4+DTrup3vnZ3GPZt/l1bC8Jihl+fhX3L1P22k1TW5tdD1YWOx/5WI8kVp8Pfq+wrzao+t33fVMc94Sp80llluTcbrC4Wl1Tmj9WK9eTvpB79HZeo/9CF/Zf9wrKLjzpnS0vMlBF7/QS/07P5dxeKPqO6hez/MnttRb+GMPz7HC9Y5yglBj7pooJpDe6FwStv7JuMLkVOnjB5b87fyznZ+i78OVtl30zaeSPrI+acOv4RR1Ug/P4PVcZdTtKT1TJ2f6rue9VQXbiD26vfmR8fvzEyaZ2eqqv69fVIECQHZdL40DQ1nGDEERXsiDiqAh+RJ1QU62a+9VREK7dGQIaYc/Dt6BtXhztOUdHO/H5ozWkqEnlygyp84+afKUW1qqr67R6ghlssxI92RTv5SE4zs/dCLLvORrPzbDQHL8djtt74mOh18FK/hozrVCuPpRSfirb/y6NiOwbmdPjyQVWE2MFNXY2r10d1ZSvoD9BN0tLSWLhwIY8//jiOjplq0iRHqdFpYs+pGhOjr9c/+XeFahxmZF04e0O7J6DN+KJdFS2s2AsqGHJmkwrcGuPU9JAJ0GN2rldU5XNQtiQIkr8yaYec/F3VC0iKvBHwsKTlPn/o4+pqYGFP3OMuqVodCZdVI37Uz6rxfDOTUV31TrymRj06/acactmUoh7X26nuCS1HQp3u6oRM01T22uHvVWN44tZs9XCK9fN/ea8q2B2lMjqxd1EBjfaTc0/jNqep5xxWJ990m1lqhQALa8nWc/zvl6MAvNSvAbX93Ji19ghX4tQJ1T3NqvLKvY3w9yjAqCEWs+rysnmurYCqhg5d3V4QMl6dWOv1xKWk89TXB/jnpBr2e1hodab2rIdPIeqkbfhhMd3/exaDTuNw/SdpMuT/sjyekJrG5vfGcZ/xJwBiOr6Cd4+peS804aoaWn7/iqwZifnRGcC7lspk8mtw/VZfjbqTOYPGlKoyT7a+CynRapp/I7j7ZWhwT9b3h8UM+5er7cnIDAloqeq21OysHv9jFuz8SD1Wpyc8+FnB6rLk5doh+LynOqHu8qKql3Ir0hLVOcrpPwGdCkaEPkZaWhoX3u5KPdNRleE57s/iCbgAHF8Hq0eogMNdI+He97IGj85tgeX3q8f7va3em8VN0+CXZ24EfjJ4BqmT9+rt1F/fejeO++V9KtM2YwQ9UMe183NZM5M0TWXC7fhQFZrn+jlHlabQ7kn13vvqERVo9gyC4T/kn1mSORPIq4bKBMrcxrOY4fNuagSnJoNg0OL890HEcfikk8oquf9jNdBBZmmJ8P14VZgX1Plrt1lZj9XFXfDjxBsXxFqPVZ8Bx0zd4KwW2PGR6h5pSVMBl75vQvNHiIuPlyDIzUq18WG1qD5pW+dn7WOZmb2L+tKs3Fj1kzq6NmsjoF4f9UGu3T1rY+TYz/DjJJVq6uwFAz+Fer1K9vXkoyKcfFyKSeHrPRfZfiaaQzcFPQACKznTtpYPbWt5076OL4GVSq/yeEXY/+VdsR4Dc7oKllZuXLQhc29iMpnYsGEDvXr1Ut1hMos6pQIhxjiViRZzTo0eACplsf2T0HpM2aVyWy2qS5+De75Fc+VzULYkCJK/Um2HaBpsW6CuLpNDM05nUG0IZy/V8LV3VsFXUDUgBi3JOYiRk6RIWNpHDWXvWw/G/Fa4bDFjguoe9+8K1T0ug0eg6jPv5KmGAL8+HC7VWmdbRLF//q0WdXV+yzvqJABU1+DmQ1R2bObaAqlxsHq4ymjT26lCky2G3Po2lICvd19k2g+qftwzPeryTA91opScZmbBnydZvPUcVg3cnex4sU8DhoZUL1g2q8WE9b/VJF87g2voCPQ+Ny4CHb+WwITl+7gYk4KTvZ63BjXnvuZFG6J2/dL/o8+FeQAcC3mDhv1U14fk1DS2vz+SnqnrAYjo/Dr+3SYVfMGRJ1W3jczF0ItEp04o/RqoWg9Hfrwx/LpPHeg6HRo/kHeNhbQkdaV/23s3srfr9FCBtowafZ2eU8GKm4IIRf4c/Lca1kxQ/99KEdGEq7DqYRVYsXNWJ84N7gFUW+TvX1bT/fh0dGkJ0OcNlVl6q079qU7mLekq02PAwpyDK9s/UN8jejtV56J66K2vO7OdC2H9NDR0pDZ8CKcG3dEXdGS58KPqnPHw9zeCccEdoNNU9f2y40NV9yNDvT7QbrLKis0IqMRegJUPqO9hZ28Y9l3eXU4yMjYMjjDuj5wzUK7uh8+6qW0a9n3eo9FZzLC4J1z9V9WhHLo65yCw1apqC22df/219FUFqQ0OsPl1dZw0q/r+v+8DFQzPTcRxlRVy9V91v34/4jrNwSuovgRBMiu1xsflvaogT8aPJjoVLa7cWN38G6m/XjWzfgnm1ghwr6oaAc0Gw96lsOt6Cmi1EHhoaZ7dVErLnXzycfByHJ/+c5ZfD4WROe5RzSsj6OFDaE1vgrxLto9hXu7k/X+7uK2Pwflt6gqJ1aTue1aHjs+oUVvyGmmmnLmtj8EdQIIg+Su1dog5DX5+Gv77St1vNUbVecgIejhVUpkUNzdQj/youuSZU9VoXUO/Vu2XvKTGwRf3qpMez+rw6PqCp2LnJPyIagcd/PpGzYYMd8+ALs/n+LQS+/xrGpzZqLoGZoyqotOrE9lOU1WA5suHVKavgzsMXq4y+MqhH/dfYco3B9A0mNC5FtP7NkB303vg8JV4XlpziIOXVZeNVsFevD6wKfWr5D8SVU7H4JeDV3n+24OkmixU83Lm0xGtaRRQ9Pe+1aqx6aNJdI/+EpNm4HzvJQS16su+BYPpkLoJCzqudX2HwK5ji7aCtEQ1ApFOp44zuuufk5v+psapTKGI49dHNzyh6mbd/J4FVW+jyzTVji9MhlVSJPzzlqr7YDWrafauMHCR6jqRg1v6HKx7TnWxd/KECZvz/+zfLPyI+iwkXFEZ5UNXq268N9u7BH6Zol7LpF1FH34eVIbHl4NUdn2j++HBJbnvY01TGSpHf1TnVhP+VrWJisPpP9Vr16xYe75KRO2Hi3YMos+o4NeBVTfaZBnsnFQQtt0klXGUk+QotT+u7lcX2wevUAG0m53fCl/0V8GG/Gp+rJ+ugnKVguGJnbnXVNkyXwUSb+4Gk5uD36h6H5Y01Y0HbtSeaz5UFfwvSPaxxQzbrw+HbDURr/Ok0uxLEgTJrMQbHykx6uDv+wLQ1Jug+0x1IlHYIjzhR1UV3INf30ify6z9U6qvYGH6I5agO+3kQ9M0Np+I5JN/zrDz7I3+y53q+jKgRSChtbyp5lV2QY+b3Wn7/3ZUno+B0Wjk3XffZcqUKTg55RLUOPaLGnq1ySDVR7OcfLcURnk+BhWBBEHyVypBkKRIlZVwaafKnOj7ZuFSv6/uh6+GqCxWZ2/ViM6hBg+g+m2veECty9VfBUCKa/QFc5q6Kv/vctUtrlZXleKdS/p8qXz+L+5UDf1Tv9+Y5uihRpVxr6rqKRR3nYNisv7wNSat+heLVWNE22D+d3/jbAGQDBarxvId53n79xMkp1uw0+sY37kWo9vXoHIeXWQyHwMNHfN+P8Giv1X9j051fXn/kZZ4uRZx9IpMTGYLu+c/RIeUjSTjxBnHxjRL24dJM3D57veo2bWEh3vNjaapk9DI64GR6DNqeNHmQ4s+ageo5WyeC/FX4N754N8w11lv6XNgTodl/dRwxpWbqqyrgp6/nPkLVo9U9bt866nPwk0j1tnaIs88jdNXD6ju+XllDOTn4i5YMVAV76zXBx5ekf9+TkuEz7qrAFZwBxi59tbbO5EnVUZtWjy0GI61//tEREbe2ndR/BWV/bF3qeoGEjJBdQspSG2itCT1G3B2k8p6GbAImj104/HEcNVlJSkcmj2igmp57f+0JFUkNeEydHhGFRG+WcQxVXfFkq4ycVoMLdjrvLxP1QnJyJZy9VNBmevZQ4USfgTWTCThwn94vpEoQZDMSqzxYbXCf6tUP72MgEXzIar/UhH78NuY01UV7n+Xqy8YJ0/1Zq3f99a3uxjdKScf6WYraw9c4bMtZzkZrlIQ7fQ6+jcPYHynWrd09aIk3Sn7/3ZWno+B2Wxmy5YtdOrUCTu78legr7iU52NQEUgQJH8lHgQJPwKrHlFF7hw94eFlRctKSAhT6eVX96uhtO+dr7rnZmZOU33QM9omo3+FKk2K5WVkkxqnaiTlcRW9VD//YQdVKvmRNYCmuj4M++7WrmiXoM0nIhi/fC8mi8aDd1Vj3qBmBeriEhafyitrj7DhaLhtWqOqHtzdwI+76/vTIqgSdoYb+zrjGDi4VeKZbw7a6n881rkWz/eun2XeW5WcksLpd/vQ3KSyrtM1O852W0iDLrkUWqwgbvlzEH9FncymRKlzmQELcz9BTo2DuIuqi84fs1S2SnBHeGRlljolGbK0RWLPwMIOKtth0FJo8kDhtvPqfvjiPhWArHW3GhWloJmrkSdVF4/0RNWlpPdrhVt3Zikx8Hl3Vb+iejsYuRar3r74vous17vGFCWg9eNE1b0GbnQ9sphhxQB1zPwawviNBevufPxX9Zugt4PH/lE9GjJYzLC4hzom9fqoY1GYoFbCVTU8r7MX9Hy1YIGe3FhMxP32Gl7950gQJLMSaXxcO6y6vlzape77NVRDqtXoUDzLzywpQvWXKo3ChIV0u598xKeY+GrPRZZuO0d4gioY5+pgYEhIdR7tWJOAUqzvURS3+/6/E8gxKHtyDMqWBEHyV6JBkBPrVfHQ9CSVxj5kdeGHXMwsPQXWPnH9RB91stDzfyoTw2qB78aoWmb2LupqalBI8byOIiqTz3/UaTV8d+MHSrVtZrVqBR51bseZaEYv3U2a2co9Tavy3iMtCh2M+P3INRZuPsN/l+PIfEbg6WxP53p+dGvgR+e6fni52LPtyHle/u08F2NScbY38NagZvQvYv2P/MRERxLxUV8CLZc5120hzboMLJH13E6K5XNw7p/rRUStKuvcr4EKdsRdVHUnMv6/eRjspg+rET8KWsts01z4+w2VRTZ5d46Bkxwd/kEVIDXGq2yOYd8VPuP+6E/wzfWMoaIEYUB1m1r5gNpfntVh/F/g5ld+2iJWK6yfBrs/Ufc7Xi8SvHW+6oo0YXPhfiNWD1d1Kau1gUc33AjMbHkHNv5PBcOf2KUG2ShDMjpMDoq18WFMUNWbdy1SlYbtXaHrNBVluw3TyG9VufnAF4CmaVyKSWXfxRj2XYhl34U4TlxLsNX78Hd3ZEyHmgwNrY6n8+1xLG+n/X+nKs/HwGg08vrrr/PSSy/l3h3mDlCej0FFIEGQ/JVIEETTVCG5P2YBGtToBA8vBxfv4ln232+qVHyAur3gwc/h95dUl12Dg0plLwc1MCrK5/+jTad5e8MJAjydaVjVnQZVPGhY1YMGVd2p4eOKIVNw5N+LsQz/fBcp6Ra6N/Bn4fBWONgVfd9EJ6Xxz6lINh2P5O+TkcSn3qhZoNNBs0BPTlxLxGi2EuTtzCfDb63+R0GYzWaSU1LwlO8coBg/B9veu/6dkg9XPzUaSeOBqpB6HhkA2doi5jSVDRJ9Cu4apYY5zUtytBp2NyMwGxSqhoN1zL9eTY7+mKVep72ryojIo5tRjn6ZqroR27uqrkPXM+HK1XeRpsGWt9UoKpk9uBiaDircshKuwochKoPmnnegzThVvuHTLqobzMBPoPkjxbftRVScbZE7N3e6sBLDVeGbUxvU0I0ZEdBG90PvubdWCEyUGKPJwuEr8fx7MdYW9IhKyj48YP3K7oztVJP7WwTgaFdMQ3YJUQ7Y2dnRr1+/O7orjBAVkjldFRg8sFLdbzUG+s0rvosxOp26wONbT1XgP7UB3muuij/q9KohXQ4CIBXF8h3nmfe7Grb3SlwqV+JS+fNYhO1xJ3s99SurwEgNX1c+3nyalHQLHer48NGwu24pAALg4+bIwJbVGNiyGmaLlf8ux7HpeCSbTkRw5GoC/10vptqpri8fDGlJJZdbr/+RHzs7OwmAlIT2T6laJCd+UwMwVKqe6RZ8/W9QoUaOy9YWsXNUgY+lfeHfL1Q9stzqDx1fp4o9J0eqWkedn1Mj5NxKrZVus1QXjnP/qLoUfeep77OCBC52f6YCIOhUYLikugLeKp0OOj+vglW/TFHZPW3GFz4AAqrQafdZ8NvzatSxur3V74IlXY3w0mxw8W9/Gau4mSBWixrp5dQGOP1HptFervOupT4weQ0XVEGUq6jndWaLlTd+O87yHRdIt2Qd+93eoKNJoCetqnvRKtiLu4K98iz2Vd6Vx/1f0cgxKHtyDMqWZILkr9gyQUxGNWLJtvdUd1ydXvX5DplQtAKDBXFlH3yVqYDd/R9Dy2Els64iuNM//z/9d5Wnv96PpsHku+vQqa4vx68lcvxaAkfDEjl5LZFUkyXb81oHe7F8bAguDiUbBA9PMLLpeDixcQmM69YIe7mYVCZuy8/Bz0/DvmXgUxcmbs1a2yM1Fn6bpgaKAFV2YOBCCGhZPOtOilSZDAlX1H3v2qqQdMbQ3Dk5swlWPqh6AvSYDR2nZHm43B6Dc1sg7ID6nShol6WbWS1qGNwr+8Ctsiqu6lRJjfLjXqU4t7bIJBMkLzsXgoenih4aHNT4yLb/HVSU8dQfqoFx81BXAS2hTk+VEhp4V65VykXZSjCamLxqv60ol6+bI62CK3HX9aBHk0BPnOzl2ImKwWg0MnPmTF599dU7ujuMEHc0c5oqQnpkjSpSl56opjt6wENLcx4GsTgFtoIJm+Cv19RILZlHGxAl6p+TkTx7fWjbke2CebZXPXQ6HaG1bhQQtFg1LsakcDwsgWNhKjDi4mDg/wY2KfEACEBlDycebh1EREREli45QmTItS3SY47KOIk+pepV3P2Smn7qT/hpshqpSqdX2Sldpxe8AGpBuPnB2D9Ul8IDX0LMGVVHY+Or0Hywypqo3OjG/FGn4dtRKgDS7BE1WsrtomYndbsVegPcuwA+7aoCIAB93yo3AZDiVqRvzo8++oh58+Zx7do1mjdvzgcffEBISO5FsxYsWMDChQu5ePEivr6+DBo0iLlz59o+JBaLhdmzZ7Ny5UquXbtGQEAAo0ePZsaMGbkO8ZWrTa+BYwGf4+QJtbtD3Z6qgXGro72IEncxOoVHv9jD6YgknO0NzH+4OX2aVCn8+0SIO4S9vT3Dhw/H3v72qHEjhLjOnK6GOTyyRqWDpyXceMyjGjQeAG3GqszU0uARAAM+Kp11CQD2X4zlsRX7MFk07m1Wldn9cx7a1qDXUdPXlZq+rvRtWraFCYXISa5tEedKaijvb0erIajr9lLdY/5drh73rq1Gxiyp4suegdD3Deg2Aw6uVl1dIo/B3iXqVqOTyp4I7gBfDVYFWau1UUO5VsRzi6rNoN0k2P4+1L9HdWO6QxU6CLJ69WqmTp3KokWLCA0NZcGCBfTu3ZsTJ07g7589iLBq1SqmTZvGkiVLaN++PSdPnmT06NHodDrmz58PwJtvvsnChQv54osvaNy4MXv37mXMmDF4enry1FNPFW4DmwwCB031YbKkq6srFhNY0lSDw84RanW5nu3ROs8h2UTxuxybgk6nI7AII7LsPhfDYyv2EptiooqHE5+Pak2TwFzS2YSoIAwGA82bNy/rzRBCFNTlvarxfeyXrCMwuAeowEfjgap9Up5SrUWxOx2RyJhle0g1WehU15f5D7co8KgwQpQ3ebZFGg1Qw6ueXK+GnM0Q+riqQ1HY0V+KwtFNBZVbPwrnt8LuT1Xw+fwWdTM4qPNGj2ow+MvizUi53fSYDbXvhurt7+hAUKF/YefPn8/48eMZM2YMjRo1YtGiRbi4uLBkyZIc59++fTsdOnRg6NCh1KhRg169ejFkyBB2796dZZ7777+fe+65hxo1ajBo0CB69eqVZZ4C679ApY4+8iUM+xZG/QSP/qaGNnp8q6oQ3H0WVG8rAZBSpGkaK3ac5+63N9Pxzb944st9/HcprsDP/3bvJYZ9vpPYFBPNqnmydnIHCYAIAaSmpjJ58mRSU1PLelOEKDYfffQRNWrUwMnJidDQ0HzbAwsWLKB+/fo4OzsTFBTElClTMBqNtsfnzp1LmzZtcHd3x9/fnwEDBnDixIksy+jatSs6nS7LbeLEicX7wg59B0t6q9TstHhwqwKhE+HR32HKEegzV10RlQDIHe1KXCojFu8mLsVEi6BKLLrFkV2EKGt5tkV0Ouj3Nji4qfuVgmH0OpWhURoBkJu3pWYnGLwCnjkInZ4FFx8VALF3gSFfgXvl0t2m8kZvUEVk7/BAUKG+cdPT09m3bx89etzom6rX6+nRowc7duzI8Tnt27dn3759tgbM2bNn+fXXX+nXr1+WeTZu3MjJkycB+O+//9i6dSt9+/Yt9AsS5U9Kupkpqw8wc+0RTBYNTYNfD13j/o+28cinO9h0IoLc6vNarRpzfzvG898dxGTR6Ne0CqsntLutC50KUZwcHBx46qmncHAo+Ur9QpSGjIzTV155hX///ZfmzZvTu3dvIiIicpw/I+P0lVde4dixYyxevJjVq1fz0ksv2eb5+++/mTRpEjt37uSPP/7AZDLRq1cvkpOTsyxr/PjxhIWF2W5vvfVW8b2wvUvg+3FgNas04zG/wdRjKlW8elsJfFQQMcnpjFi8i7B4I3X83Vg6ug2ujnJRTtze8m2LVAqCYd9Br/+Dx7flPlJMafKspi6MTzkKg1eqoXCrNivrrRKlpFDfulFRUVgsFipXzhohq1y5MsePH8/xOUOHDiUqKoqOHTuiaRpms5mJEydmaZxMmzaNhIQEGjRogMFgwGKx8NprrzFsWO6VydPS0khLuzEUakKC6ktrtVqxWq25PU0UgdVqRdO0Iu3Xs1HJPLHyX05GJGHQ63ixd3061vXl8y3n+Om/q+w8G8POszHUr+LOhE41ubdZVewNqiGYnGZm6jf/8cf1IeIm312bZ7rXRa/XVahjfCv7XxSP8nwMdDodderUASiX21dcyvMxqAhKc79nzjgFWLRoEevWrWPJkiVMmzYt2/yZM04BatSowZAhQ9i1a5dtnvXr12d5zrJly/D392ffvn107tzZNt3FxYUqVUqgCNzWd+HP2er/1mPVVVEJelQ4SWlmxizdzdnIZAI8nVj+aAherhLAFrc/g8FAvXr18p4puJ26lTf2TtCwf1lvhShlJR563rx5M6+//joff/wxoaGhnD59mqeffppXX32VmTNnAvDNN9/w5ZdfsmrVKho3bsyBAwd45plnCAgIYNSoUTkud+7cucyZMyfb9MjIyCwpsOLWWa1W4uPj0TStUMNB/XUqlv/74zwp6VZ8XOz4v361aFnNFUjlhS5VGHWXN1/vD2ftoShOXEvk2W8P8tb6YzzSsjJta3jwym/nOBmZioNBx0s9g+nToBJRUZEl90LLqaLuf1F8yvMxSEtL45NPPuGxxx7D0bGIw6LdBsrzMagI4uPj85+pGGRknE6fPt02rSAZpytXrmT37t2EhITYMk5HjBiR63oyXo+3t3eW6V9++SUrV66kSpUq9O/fn5kzZ+LiknO6doEuxmgaur/+h27bAnW3wxS0bqrtgwT0CuxOCIKmmS08tmIf/12Ox8vFni/GtKGKh+Nt85ruhGNwuyvPxyAlJYVnnnmGBQsW5PqdeScoz8egIijO/a7TcuuHkIP09HRcXFz47rvvGDBggG36qFGjiIuLY+3atdme06lTJ9q2bcu8efNs01auXMmECRNISkpCr9cTFBTEtGnTmDRpkm2e//u//2PlypW5Zpjk1PgICgoiNjb2lscNFllZrVYiIyPx8/Mr0MmHyWJl3u8n+XzrOQDa1PDig0da4J9LF5b4VBNf7rrIsu3niUpKz/KYj6sDn4y4i7uqe936C7lNFXb/i+JXno+B1WolLCyMqlWrlrttK07l+RhUBHFxcfj4+BAfH1+iv7FXr14lMDCQ7du3067djSuGL7zwAn///XeW7I7M3n//fZ577rksGacLFy7McV6r1cp9991HXFwcW7dutU3/9NNPCQ4OJiAggIMHD/Liiy8SEhLCDz/8kONyZs+enePFmJMnT+Lu7g6aFY8tc3A5+jUACW2fJ6XFuALvC3FDRhDU09Pztvv8a5rG2Wgjn+64yt9n4nC21/PRg/VoVMW1rDetUG7nY3CnKM/HwGq1EhMTg7e3d7nbtuJUno9BRRAfH0+DBg2KpS1SqEwQBwcHWrVqxcaNG21BEKvVysaNG5k8eXKOz0lJScn2JjEYDAC2OhC5zZNXtMfR0THHq556vV7elCVAp9MVaN9GJBiZvGo/u8/HADChcy2e713f1sUlJ16ujkzuVpdxnWqxZv8VPv3nLOeikqlf2Z3Fo1tTzevOjSgXVEH3vyg55fUYZASSK4LyegwqgvK8zwuScZrZpEmTOHz4cJYACMCECRNs/zdt2pSqVavSvXt3zpw5Q+3atbMtZ/r06UydOtV2P+NijJ+fHx6uzujWPo7u6Pdo6NDufRe3u0bhVoyvuyKxWq3odLrbJgiakm5mx5lo/joRyeYTkYTFqwxlB4OOT0a0omMd3zLewsK73Y7Bnai8H4MS6UpYzpT3Y3CnK876d4XuDjN16lRGjRpF69atCQkJYcGCBSQnJ9v67o4cOZLAwEDmzp0LQP/+/Zk/fz4tW7a0NU5mzpxJ//79bcGQ/v3789prr1G9enUaN27M/v37mT9/Po8++mixvVBR8naejWbyqv1EJaXh5mjH2w81o0+Tgo9n72RvYEhIdR5uHcThK/HUr+KOk72hBLdYiNtfSkoK48aN4/PPP7+jU1BFxeDr64vBYCA8PDzL9PDw8Fwb2DNnzmTEiBGMG6eyLJo2bUpycjITJvw/e/cdH1WV/nH8O5MeSAKBVAgmVEGagESEVRQUlUVxLSAgRQVFgkJ2XQUpAiooLrIggmKwAYK4dhTFKNhogqAovYgCCTUJpCdzf39E5ueYBAgk3Jm5n/frlRfMLWeee08CT54559wheuyxx1wS1aSkJH300Uf66quvVLdu3dPGkpiYKEnauXNnmUWQcj+MKc6X/a0h0o5PJbuvbP94Sbbmt57+wnFG7l4E3XskW19uO6Qvtx3W6t1HVVD0/x/kBfjadUWDWrr3b/XV0QMLIKe4ex9Ygbv2gZVyEXftAyuozHte4SJIr169dPjwYY0bN05paWlq3bq1li1b5lwsdd++fS4BjhkzRjabTWPGjNH+/fsVERHhLHqcMnPmTI0dO1YPPPCADh06pNjYWN13330aN25cJVwiqlpOQZHmrNilWSt2qdhhqElUiGb3a6P6Eef2mZeP3aZWcTUqN0jASwUGBmrmzJkKDOSJSfB8VTXi1DAMDR8+XO+++65WrFihhISEM8ayceNGSVJMzNkX8yVJi/tJh9ZKvkElj2FsdG3FzofHMAxDr323V6+v+lW7j7g+aahuzSBdc3Gkrm4SqQ4NavGhDrwauQg8zTktjJqUlFRuMrJixQrXN/D11fjx4zV+/Phy2wsJCdH06dM1ffr0cwkHJnE4DL2/ab+e/mSb0rJKhnrecmkdPXlLcwX787g34EKw2WwKCgqSzWYzOxSgUlTFiNNhw4Zp4cKFev/99xUSEqK0tDRJUlhYmIKCgrRr1y4tXLhQN954o2rVqqUff/xRI0eO1JVXXqmWLSv4yMTf1kihYVKfxdJFV1TejYHbee7zHZqRukOS5Gu3qX1CuK5uEqmrL45Qg4jq/LsMyyAXgafhN1Wck/W/HtPED3/Rpt9LVtivWzNIo25oqhtbRPMPIHAB5ebmWmYIKqyhKkacnloktXPnzi7v9corr2jgwIHy9/fX559/7iy4xMXF6dZbb9WYMWMqfgFB4dKA96TY1hU/Fx5j+ufbnQWQf17bWAM7xisk0M/kqABzkIvA01To6TDuLCsrS2FhYVW+cr0VORwOHTp0SJGRkTqQmaenl23Th5sOSJKq+fto2DUNdXfHBIZ6VpE/33/mH5rDnfvAMAzl5uZ6/Scw7twHVpCRkaGaNWvyf+xpOPOQXesVWr+N2eF4FXf7+f/v5zv03OfbJUmP3dhUg6+sb3JEVc/d+sCK3LkPyEVwIVRmLsJIEJyVnIJi/eezksfe5hc5ZLNJvdrFKfm6xooMYf4fYJZTiUdgYKBXJx6Ax6jd0OwIUIVmpP5/AWTUDRdbogACnAm5CDwNRRC4cDgMnSwo0om8Ip3MK9KJvEJtPZil6Z9v15HsQknS5fXDNfbvzXRJbJjJ0QLIy8vT8OHDGYIKAFVsZuoOTVteUgB59IaLdd9VpZ8aBFgRuQg8DUUQiyoqdmjqZ9u0ds+xP4odRTqZX/JVnovCgzW6e1Nd1yyKKi/gJoKDg7Vw4UKzwwAAr/b8Fzv0nz8KII9cf7HupwACOJGLwNNQBLEgwzA09v3NenPtb+Ue4+9jV0igr6oH+io00E+d61fXA9deoiB/Fv0C3InD4dCBAwcUGxvL/FQAqAKzvtypZz8rKYD8+/omGtqZAgjwZ+Qi8DQUQSxo9spdenPtb7LZpHF/b6YmUSEKCfRT9UDfksJHgK/LIqenFgEK8GXhU8Dd5OXlafz48Zo5cyZDUAGgkr2wYqemfrpNkvRwtyZ6oDNrvgB/RS4CT0MRxGLe37hfzywr+c98/N+baWDHBJMjAnA+goODlZKSYnYYAOB1Zq/Y5cyZ/nVdYw27mgIIUBZyEXgaiiAWsnbPMT285EdJ0t0dEyiAAF6guLhYu3btUoMGDeTjw2gtANaVmVOonYdPqthhqMjh+ONPQ8XFf/z5p+3Z+UXKyitSVm6hMnMLlZVXqKzcoj/+LNl2PKdkQfh/XttYSdc0MvnqAPdFLgJPQxHEInYdPqnBr3+vgmKHul0Spce6NzU7JACVoKCgQDNmzNDUqVMVFBRkdjgAcMEdyMjV3K936821+5RX6Ki0du02KZkCCHBG5CLwNBRBLODIyXwNfGWtMnML1Tquhqb3ulQ+dp7uAniDoKAgPf/882aHAQAX3J4j2ZqzYpfe+eF3FRYbkqTo0EAFB/jI126Tj93+x5///3XqdTV/X4UF+Sk0qGQB+NA//h4W5Od8Xbt6gMKr+Zt8lYD7IxeBp6EI4uVyC4p172vf67djuaoXHqyXB7RTkD/D1ABvUVxcrM2bN6t58+YMQQVgCb8cyNILK3bq458OylFS+9Dl9cM17OqG6tSwtmw2PugBLiRyEXganmHkxYodhkYs/kEbf8tQjWA/vTLoMtWuHmB2WAAqUWFhoebPn6/CwkKzQwGAKrX+1+O6+9V1unHG1/rox5ICSJeLI/W/oR20aEgH/a1RBAUQwATkIvA0jATxEIZhaO/RHG1PP6HIkAA1iQ5RsP/pu+/JpVv06c/p8vex66W72qlBRPULFC2ACyUwMFBTp041OwwAqDI70k/o0be36Yf9JyWVrNXRvWWshl7VQM1iQ02ODgC5CDwNRRA3ZBiGDmbm6cffM7Tp90z9+HuGfvo9U1l5Rc5jbDbpovBgXRwdqibRIWoaE6KLo0NVLzxYdrtNr3y7R/O+3SNJevaOVmqfEG7W5QCoQkVFRfr+++/Vrl07+fryTzoA77Ij/YTunLtGx3IK5edj061t6uq+qxoooXY1s0MD8AdyEXgavkvdxLa0E/pk80H9+Humfvw9U0dO5pc6JsDXroaR1XXoRL4On8jX3qM52ns0R8t+TnMeE+Tno0ZR1fXT/kxJ0r+vb6KbWsVesOsAcGEVFRXp448/VuvWrUk8AHiVXYdPOgsgTSKDlTKwveqGU/wA3A25CDwN36VuYM+RbPV4/hsVFP3/Y9187DY1iQpRq7gwtaxbQy3rhqlxVIj8fEqWcTlyMl/b0k5oy8EsbU07oW1pJ7Qt/YRyC4v14+8lBZA729fT0KsamHJNAC6MwMBATZw40ewwAKBS7T2SrT5zV+vIyXw1jQnR9JvrK7YGj94E3BG5CDwNRRA3MPOLHSoocqhZTKjuaFdXLeNqqFlMqAL9yl9duXb1ANVuGKCODWs7txUVO7T3aI62pmUpt6BYt1xahwXCAC9XVFSkr7/+Wn/729/49AWAV/jtWI76zF2t9Kx8NY6qrtcHXabinEyzwwJQDnIReBq+S02250i23vthvyRpyq0t1LJujXNuy9enZLpMw0gWQAWsoqioSKtXr1aHDh1IPAB4vAMZubpz7modyMxTg4hqWnDv5apVzU+HcsyODEB5yEXgafguNdnM1B3OR7ydTwEEgDUFBgZq1KhRZocBAOctPStPfeau1u/HcxVfK1gLB1+uiJAAORyOM58MwDTkIvA0drMDsLLdh0/qvY0lo0Ae6trI5GgAeKLCwkItXbpUhYWFZocCAOfs8Il83Tl3tfYezVFceJAWDr5cUaGBZocF4CyQi8DTUAQx0fNf7GQUCIDz4nA4tGPHDj4phVeZNWuW4uPjFRgYqMTERK1du/a0x0+fPl1NmjRRUFCQ4uLiNHLkSOXl5VWozby8PA0bNky1atVS9erVdeuttyo9Pb3Srw2lHT2Zr74vr9buw9mKDQvUwnsvZxFUwIOQi8DTUAQxya4/jQIZ0bWxydEA8FQBAQEaMWKEAgICzA4FqBSLFy9WcnKyxo8frw0bNqhVq1bq1q2bDh06VObxCxcu1KOPPqrx48dry5YtSklJ0eLFizV69OgKtTly5Eh9+OGHWrJkiVauXKkDBw7oH//4R5Vfr9Vl5BSoX8pabU8/qajQAL055HLFhQebHRaACiAXgaehCGKSU6NAujaNVIu6YWaHA8BDFRYW6u2332YIKrzGtGnTNHjwYA0aNEjNmjXTnDlzFBwcrHnz5pV5/HfffaeOHTuqT58+io+P13XXXac777zTZaTHmdrMzMxUSkqKpk2bpmuuuUZt27bVK6+8ou+++06rV6++INdtRSfzi3RXylptOZiliJAALRx8uS6qVc3ssABUELkIPM05LYw6a9YsTZ06VWlpaWrVqpVmzpyp9u3bl3v89OnTNXv2bO3bt0+1a9fWbbfdpsmTJysw8P/neu7fv1+PPPKIPvnkE+Xk5Khhw4Z65ZVX1K5du3MJ0a3tOnxS759aC6QLo0AAnDvDMHTs2DEZhmF2KMB5Kygo0Pr1610W2LPb7eratatWrVpV5jlXXHGF5s+fr7Vr16p9+/bavXu3Pv74Y911111n3eb69etVWFiorl27Oo+5+OKLVa9ePa1atUqXX355qffNz89Xfn6+83VWVpakkmHhDAk/M8Mw9K+3Nuqn/ZmqVc1f8+++TAm1gsu8dw6HQ4ZhcF9NRB+Yz537oLi4WMeOHVNxcbF8fHzMDqfKuHMfWEFl3vcKF0FODSmdM2eOEhMTNX36dHXr1k3btm1TZGRkqeNPDVOdN2+errjiCm3fvl0DBw6UzWbTtGnTJEnHjx9Xx44ddfXVV+uTTz5RRESEduzYoZo1a57/FbqhU0+E6do0ilEgAM6Lv7+/hgwZYnYYQKU4cuSIiouLFRUV5bI9KipKW7duLfOcPn366MiRI+rUqZMMw1BRUZHuv/9+53SYs2kzLS1N/v7+qlGjRqlj0tLSynzfyZMna8KECaW2Hz58uNR6JCjtje/TtOzndPn52PT03+srzJarQ4dyyzzW4XAoMzNThmHIbmcQsxnoA/O5ex/cdNNNysjIMDuMKuXufeDtMjMzK62tChdB/jykVJLmzJmjpUuXat68eXr00UdLHf/nYaqSFB8frzvvvFNr1qxxHvP0008rLi5Or7zyinNbQkJChS/GE+w8dFIfbDogSRrBE2EAnKeCggItXrxYvXr1kr+/v9nhABfcihUr9NRTT+mFF15QYmKidu7cqYceekiTJk3S2LFjq+x9R40apeTkZOfrrKwsxcXFKSIiQqGhoVX2vt7g251HNPvbkhGx4//eTNe0qnfa4x0Oh2w2myIiIvjFwyT0gfncuQ8KCgq0ZMkS3X777V6di7hzH1hBZX5vVagIUhXDVCXpgw8+ULdu3XT77bdr5cqVqlOnjh544AENHjz4HC/Lfc384v9HgTSvwygQAABOqV27tnx8fEo9lSU9PV3R0dFlnjN27FjddddduvfeeyVJLVq0UHZ2toYMGaLHHnvsrNqMjo5WQUGBMjIyXEaDnO59AwICylwE0G63kxyfxv6MXD20eJMchnR727rqe/lFstlsZzzPZrNxb01GH5jPXfvgVDzuGFtlc9c+sILKvOcVKoJUxTBVSdq9e7dmz56t5ORkjR49WuvWrdODDz4of39/DRgwoMx2PXEu7q4/jQJ5qEsDt43zr5j/Zi7uv/ncuQ98fX3Vt29fSZU7V9LduHMfWMGFuu/+/v5q27atUlNT1bNnT+d7p6amKikpqcxzcnJySiVGp+akG4ZxVm22bdtWfn5+Sk1N1a233ipJ2rZtm/bt26cOHTpUwZVaU15hsYbOX69j2QVqXidUk3o2P6sCCAD35u/v7/IBN+Duzmlh1Io4m2GqDodD7dq101NPPSVJuvTSS7V582bNmTOn3CKIJ87FnfrJHhmGdGX9MEX45pf7uD93w/w3c3H/zefOfVBYWKjU1FR16dJFfn5+ZodTZdy5D6ygMufhnklycrIGDBigdu3aqX379po+fbqys7Od03D79++vOnXqaPLkyZKkHj16aNq0abr00kudecbYsWPVo0cPZzHkTG2GhYXpnnvuUXJyssLDwxUaGqrhw4erQ4cOZS6KinPz+Ac/68ffM1Uj2E+z+7ZVoJ/3LqAIWElBQYFeffVVDRw40Kunw8B7VKgIUhXDVO12u2JiYtSsWTOX85o2bar//e9/5cbiaXNxdx46qeXbj0mSHr7xEkVGes5UGOa/mYv7bz537oPCwkJVr15dkZGRXl8Ecdc+sIILmdT26tVLhw8f1rhx45SWlqbWrVtr2bJlzlGo+/btc/keGDNmjGw2m8aMGaP9+/crIiJCPXr00JNPPnnWbUrSc889J7vdrltvvVX5+fnq1q2bXnjhhQt23d5u0dp9WrTuN9ls0ozelyouPNjskABUEpvNpvDwcEZ2wWNUqAhSFcNUJaljx47atm2byzHbt2/XRRddVG4snjYX9/kvd8kwpGubRalFXc976g3z38zF/Tefu/ZBQECAbrvtNrPDuCDctQ+s4ELf86SkpHLzihUrVri89vX11fjx4zV+/PhzblOSAgMDNWvWLM2aNavC8eL0Nv2WoXHv/yxJ+td1TXRl4wiTIwJQmfz8/CyTi8A7VDirSU5O1ty5c/Xaa69py5YtGjp0aKlhqn9eOLVHjx6aPXu2Fi1apD179mj58uWlhqmOHDlSq1ev1lNPPaWdO3dq4cKFeumllzRs2LBKukxz7Tx0Qh/+eGotEJ4IA6Dy5Ofna/r06S5rJAGAuzh6Ml9D569XQbFD1zaL0tCrGpgdEoBKRi4CT1PhNUGqYpjqZZddpnfffVejRo3SxIkTlZCQoOnTpzsX+/N0/03dKcOQrmvGE2EAVC673a5GjRoxOgJAlSt2GFq166g2/nZcDSOrq029mooMDSz3+KJihx5c9IMOZOapfu1q+s8drWS3M1we8DbkIvA0NuPUnBQPl5WVpbCwMGVmZrrVmiA70k/ouulfyTCkpQ920iWxnlcEcTgcOnTokCIjI/nHzQTcf/PRB+ajD8yVkZGhmjVrut3/se7EXfOQ82UYhn78PVPvbzygD388oMMnXD/prVMjSJfWq6E29WqqzUU11SwmVP6+JT+jkz/ZohdX7lawv4/eG9ZRjaNCzikGfv7NRx+Yjz4wH31grsrMRar86TBWti3thP65ZKMMQ+p2SZRHFkAAuLe8vDw999xzGjlypAIDy/9EFgAqYs+RbL2/cb8+2HhAu49kO7fXCPbTFQ1qaffhbG1LP6H9Gbnan5Grj348KEny97WrRZ0wJdSuprfX/y5Jmnpbq3MugABwf+Qi8DQUQapAbkGxZnyxQ3O/2q0ih6HqAb7653VNzA4LgBfy9fXV5ZdfLl9f/jkHcH4OncjTR5sO6v2N+7Xp9/9/LHKgn11dm0apZ+s6urJxhHOkx4m8Qv34e6Y2/HpcP/yWoR/2HdfxnEKt//W41v96XJI0+G8J6t4yxpTrAXBhkIvA0/CdWsm+3HZI497frN+O5UoqWQfk8ZsuUWyNIJMjA+CNfH19dfXVV5sdBgAPt+vwSfWc9a1O5BVJknzsNnVqWFs3t47VdZdEq3pA6ZQxJNBPHRvWVseGtSWVTJ3ZezTnj6LIcVUP8NO/rmt8Qa8DwIVHLgJPQxGkkhzKytOEj37R0j+Gg8aGBerxmy7RdZdEmxwZAG+Wl5enp556SqNHj2YIKoBz9saqX3Uir0gJtatp4BXxurFFjCJCAirUhs1mU0LtakqoXU23tq1bRZECcDfkIvA0FEHOU7HD0MI1v+qZZdt0Ir9Idpt0d8cEjby2saqV8akJAFQmX19f3XjjjQxBBXDOCooc+mDTAUnSuL8309UXR5ocEQBPQi4CT8N36nn4+UCmRr+7WZt+y5AktaobpidvacFjcAFcMKfm4QLAuVqx7ZCOZRcoIiRAf2tU2+xwAHgYchF4Gp7tc45W7Tqqm57/Vpt+y1D1AF9NvPkSvfNARwogAC6ovLw8Pfzww8rLyzM7FAAe6tRTXG65tI58fUgNAVQMuQg8DSNBztGLX+1SscPQ3xrV1rO3t1JUKPPfAFx4fn5+6tevn/z8/MwOBYAHOnoyX19sPSRJurUN63gAqDhyEXgaiiDn4EBGrlZuPyxJmnhzcwogAEzj4+OjVq1amR0GAA/1waYDKnIYalEnTE2iQ8wOB4AHIheBp2HM4zl4e/3vMgwpMSFcCbWrmR0OAAvLzc1VUlKScnNzzQ4FgAf634aSqTC38TQXAOeIXASehiJIBTkchhav+02S1Lt9nMnRALA6f39/Pfjgg/L39zc7FAAeZmtaljbvz5Kfj003tYo1OxwAHopcBJ6G6TAV9O2uI9qfkauQQF/d0DzG7HAAWJyPj48aN25sdhgAPND//lgQtcvFUapZjV9eAJwbchF4GkaCVNCpUSA9W9dRoJ+PydEAsLqcnBzdc889ysnJMTsUAB6kqNihd384IEm6lakwAM4DuQg8DUWQCjiWXaDPfk6XJPW6jKkwAMwXGBioCRMmKDCQBZoBnL2vdhzWkZP5qlXNX52bRJgdDgAPRi4CT8N0mAp494f9Kih2qHmdUDWvE2Z2OAAgu92uunX5FBdAxfxv/X5J0s2t68jPh8/EAJw7chF4Gv7XO0uGYeitP6bC9LqsnsnRAECJnJwc9enThyGoAM5aRk6Blv9SMrL11rZ1TI4GgKcjF4GnoQhyljb+lqFt6ScU4GtnBXUAbiMwMFAzZ85kCCq8yqxZsxQfH6/AwEAlJiZq7dq15R7buXNn2Wy2Ul/du3d3HlPWfpvNpqlTpzqPiY+PL7V/ypQpVXqdZvnwx4MqKHaoaUyoLollZCuA80MuAk/DdJizdGpB1O4tYhQW5GdyNABQwmazKSgoSDabzexQgEqxePFiJScna86cOUpMTNT06dPVrVs3bdu2TZGRkaWOf+edd1RQUOB8ffToUbVq1Uq33367c9vBgwddzvnkk090zz336NZbb3XZPnHiRA0ePNj5OiQkpLIuy628/cdTYW5twygQAOePXASehpEgZyE7v0gfbipZQZ0FUQG4k9zcXN17773Kzc01OxSgUkybNk2DBw/WoEGD1KxZM82ZM0fBwcGaN29emceHh4crOjra+bV8+XIFBwe7FEH+vD86Olrvv/++rr76atWvX9+lrZCQEJfjqlWrVqXXaoadh05o028Z8rXb1PNSiiAAzh+5CDwNRZCzsPTHg8ouKFZC7WpqnxBudjgA4BQUFKSXX35ZQUFBZocCnLeCggKtX79eXbt2dW6z2+3q2rWrVq1adVZtpKSkqHfv3uUWMNLT07V06VLdc889pfZNmTJFtWrV0qWXXqqpU6eqqKjo3C7Ejb39x4KonZtEqHb1AJOjAeANyEXgaZgOcxYWrdsnSbqjXRzDvAC4FcMwlJubq8DAQP59gsc7cuSIiouLFRUV5bI9KipKW7duPeP5a9eu1ebNm5WSklLuMa+99ppCQkL0j3/8w2X7gw8+qDZt2ig8PFzfffedRo0apYMHD2ratGlltpOfn6/8/Hzn66ysLEmSw+GQw+E4Y6xmKHYYeveHkqkw/7i0jtvG+VcOh0OGYXhMvN6IPjCfO/eBw+FQTk6O/P39Zbd772fs7twHVlCZ950iyBnsSD+hDfsy5GO3sYI6ALeTl5en4cOH6+WXX1ZwcLDZ4QCmSklJUYsWLdS+fftyj5k3b5769u1bagG/5ORk599btmwpf39/3XfffZo8ebICAkqPmJg8ebImTJhQavvhw4eVl5d3HldRddb8mqX0rHyFBvqoebh06NAhs0M6Kw6HQ5mZmTIMw6t/wXJn9IH53LkP8vPzNXPmTA0fPrzMfy+9hTv3gRVkZmZWWlsUQc7g1IKo11wcqcgQVjwG4F6Cg4O1cOFCs8MAKkXt2rXl4+Oj9PR0l+3p6emKjo4+7bnZ2dlatGiRJk6cWO4xX3/9tbZt26bFixefMZbExEQVFRVp7969atKkSan9o0aNcimcZGVlKS4uThEREQoNDT1j+2b4/IuS9c1ubl1HdWNPfz/dicPhkM1mU0REBL94mIQ+MJ+798EzzzxjdghVzt37wNv5+/tXWlsUQU6joMihd34omTvbmwVRAbghh8OhAwcOKDY2lv+Q4fH8/f3Vtm1bpaamqmfPnpJKvsdTU1OVlJR02nOXLFmi/Px89evXr9xjUlJS1LZtW7Vq1eqMsWzcuFF2u73MJ9JIUkBAQJmfeNrtdrf8WczKK9Rnv5QUl25vF+eWMZ6OzWZz23trFfSB+dy1D6yUi7hrH1hBZd7zc2pp1qxZio+PV2BgoBITE7V27drTHj99+nQ1adJEQUFBiouL08iRI8sdKjplyhTZbDaNGDHiXEKrVJ9vSdex7AJFhQboqsYRZocDAKXk5eVp/Pjxbjv8Hqio5ORkzZ07V6+99pq2bNmioUOHKjs7W4MGDZIk9e/fX6NGjSp1XkpKinr27KlatWqV2W5WVpaWLFmie++9t9S+VatWafr06dq0aZN2796tBQsWaOTIkerXr59q1qxZuRdokqU/HlR+kUONIqurRZ0ws8MB4EXIReBpKjwSZPHixUpOTtacOXOUmJio6dOnq1u3btq2bVuZn5YsXLhQjz76qObNm6crrrhC27dv18CBA2Wz2UotNrZu3Tq9+OKLatmy5blfUSVa9MdUmNvbxsnXh2ofAPcTHBx82kUgAU/Tq1cvHT58WOPGjVNaWppat26tZcuWORdL3bdvX6lPg7Zt26ZvvvlGn332WbntLlq0SIZh6M477yy1LyAgQIsWLdLjjz+u/Px8JSQkaOTIkS7TXTzd/9aXLIh6W9u6LKIMoFKRi8DTVLgIMm3aNA0ePNj5icycOXO0dOlSzZs3T48++mip47/77jt17NhRffr0kSTFx8frzjvv1Jo1a1yOO3nypPr27au5c+fqiSeeOJdrqVS/H8/R1zsOSyp5KgwAuKPi4mLt2rVLDRo0kI+Pj9nhAJUiKSmp3OkvK1asKLWtSZMmMgzjtG0OGTJEQ4YMKXNfmzZttHr16grHabacgiJ9u/Ooagb7qU7NIEWGBMrHXrrAsedItr7/9bjsNumWS1nkHUDlIheBp6lQEaSgoEDr1693GYZqt9vVtWtXrVq1qsxzrrjiCs2fP19r165V+/bttXv3bn388ce66667XI4bNmyYunfvrq5du7pFEeTt9b/LMKQrGtRSvVo8cQGAeyooKNCMGTM0depUBQUFmR0OgAtowge/aPH3vzlf+/nYFBMWpDo1glSnZpDq1iz5+7q9xyRJVzaOUGQoi7wDqFzkIvA0FSqCHDlyRMXFxc4hqadERUVp69atZZ7Tp08fHTlyRJ06dZJhGCoqKtL999+v0aNHO49ZtGiRNmzYoHXr1p11LPn5+crPz3e+zsrKklSyMM/5PkO42GHorT+Sijva1bX8s6B5Jra5uP/mc+c+CAgI0IwZMyRV7vPT3Y0794EVcN/dz/HsAr27sWTx9jo1gpSWlafCYkP7juVo37GcMs+5tU3dCxkiAIsICgrS888/b3YYwFmr8qfDrFixQk899ZReeOEFJSYmaufOnXrooYc0adIkjR07Vr/99pseeughLV++XIGBZ//pxOTJkzVhwoRS2w8fPnzei/Ks3pupAxl5Cg3w0aURdh06dOi82vN0PBPbXNx/87lzHzgcDv3666+66KKL3C62yuTOfWAFmZmZZoeAv3h7/e8qKHLokthQfTS8k4odhtJP5Gv/8Vztz8jR/uO5+v14rvZnlPxZt2aQrm0WdeaGAaCCiouLtXnzZjVv3pzpMPAIFSqC1K5dWz4+PkpPT3fZnp6erujosp83P3bsWN11113O1dhbtGih7OxsDRkyRI899pjWr1+vQ4cOqU2bNs5ziouL9dVXX+n5559Xfn5+mT9Mo0aNclmwLCsrS3FxcYqIiFBoaGhFLquUzz4v+WTlljZ1FRdb9nVZCc/ENhf333zu3Ad5eXl67rnnNGHChAoVkj2NO/eBFfj7+5sdAv7E4TC0YM2vkqR+l18km80mXx9byTSYGkGSws0NEIClFBYWav78+Zo0aRJFEHiEChVB/P391bZtW6Wmpqpnz56SShLT1NTUchcwy8nJKZWwnvrhMAxDXbp00U8//eSyf9CgQbr44ov1yCOPlPuDFBAQoICAgFLbz/e5zcezC7R8S0mRp3f7eiTbf+CZ2Obi/pvPXfsgODhYU6dONTuMC8Jd+8AKuOfu5btdR7X3aI5CAnx1U6tYs8MBYHGBgYGWyUXgHSo8HSY5OVkDBgxQu3bt1L59e02fPl3Z2dnOp8X0799fderU0eTJkyVJPXr00LRp03TppZc6p8OMHTtWPXr0kI+Pj0JCQtS8eXOX96hWrZpq1apVavuF8PHmgyosNtQsJlRNY85vRAkAVLWioiJ9//33ateunXx9q3yGIwA3MH91ySiQW9rUUbUAfu4BmItcBJ6mwt+lvXr10uHDhzVu3DilpaWpdevWWrZsmXOx1H379rl8YjRmzBjZbDaNGTNG+/fvV0REhHr06KEnn3yy8q6iEr2/8YAk6ebWfLICwP0VFRXp448/VuvWrUk8AAtIy8xzjljtd/lFJkcDAOQi8Dw2wzAMs4OoDFlZWQoLC1NmZuY5rwlyMDNXV0z5QoYhfffoNYqtwSOepJIpT4cOHVJkZCRDok3A/TcffWA++sBcGRkZqlmz5nn9H+vtKiMPORvTP9+u6Z/vUPv4cL11f4cqex93ws+/+egD89EH5qMPzFWZuQi99ycfbToow5Dax4dTAAHgEYqKivTll1+qqKjI7FAAVLGiYocWrf1NktT38nomRwMAJchF4GkogvzJ+5tKngrTg6kwADxEUVGRVq9eTeIBWEDq1kNKy8pTrWr+ur45T68D4B7IReBpmLT1h92HT2rz/iz52m3q3iLG7HAA4KwEBgZq1KhRZocB4AI4tSDq7e3iFODLYygBuAdyEXgaRoL84YNNJQuidmpUW+HV/E2OBgDOTmFhoZYuXarCwkKzQwFQhfYeydbXO47IZpP6tGcqDAD3QS4CT0MRRJJhGPqAp8IA8EAOh0M7duyQw+EwOxQAVejNtfskSVc2ilC9WsEmRwMA/49cBJ6G6TCSfj6Qpd1HshXga9e1zZhjC8BzBAQEaMSIEWaHAaAK5RUW663vSxZE5bG4ANwNuQg8DSNB9P9TYbo2jVL1AOpCADxHYWGh3n77bYagAl7sk80HdTynULFhgbrm4kizwwEAF+Qi8DSWL4I4HIY+/KMIchNTYQB4GMMwdOzYMRmGYXYoAKrIgtUlU2F6t68nH7vN5GgAwBW5CDyN5Yc9rNt7TAcz8xQS6KvOTSLMDgcAKsTf319DhgwxOwwAVWRrWpa+//W4fO029b4szuxwAKAUchF4GsuPBHn/j1Eg118SzePmAHicgoICvfHGGyooKDA7FABV4NRjca+7JEqRoYEmRwMApZGLwNNYughSWOzQJz8dlCTd3LqOydEAAAD8v5P5RXp3w35JUt9EFkQFAKAyWHo6zDc7juh4TqFqVw9Qhwa1zA4HACrM399fd911l9lhAKgC72/cr+yCYtWvXU1XkKcAcFPkIvA0lh4J8v7Gkk9X/t4yhoXGAHikgoICvfTSSwxBhVeZNWuW4uPjFRgYqMTERK1du7bcYzt37iybzVbqq3v37s5jBg4cWGr/9ddf79LOsWPH1LdvX4WGhqpGjRq65557dPLkySq7xjMxDEPz/1gQtU9iPdls5CkA3BO5CDyNZYsguQXF+uyXdEk8FQaA57LZbAoPD+cXJHiNxYsXKzk5WePHj9eGDRvUqlUrdevWTYcOHSrz+HfeeUcHDx50fm3evFk+Pj66/fbbXY67/vrrXY578803Xfb37dtXP//8s5YvX66PPvpIX331lakL/W3Yl6EtB7MU4GvXbW3rmhYHAJwJuQg8jWWLIKlb05VTUKy48CBdGlfD7HAA4Jz4+fnptttuk5+fn9mhAJVi2rRpGjx4sAYNGqRmzZppzpw5Cg4O1rx588o8Pjw8XNHR0c6v5cuXKzg4uFQRJCAgwOW4mjVrOvdt2bJFy5Yt08svv6zExER16tRJM2fO1KJFi3TgwIEqvd7yLPhjQdS/t4xVjWB/U2IAgLNBLgJPY9k1Qd7fWJLU9GgZS9USgMfKz8/X7NmzNXToUAUEBJgdDnBeCgoKtH79eo0aNcq5zW63q2vXrlq1atVZtZGSkqLevXurWrVqLttXrFihyMhI1axZU9dcc42eeOIJ1apVss7GqlWrVKNGDbVr1855fNeuXWW327VmzRrdcsstpd4nPz9f+fn5ztdZWVmSJIfDIYfDcfYXXYbjOQX66I+F2/smxp13e57O4XDIMAzL3wcz0Qfmc+c+yM/P14svvqj77rvPq3MRd+4DK6jM+27JIkhmbqFWbjssiafCAPBsdrtdjRo1kt1u2YF98CJHjhxRcXGxoqKiXLZHRUVp69atZzx/7dq12rx5s1JSUly2X3/99frHP/6hhIQE7dq1S6NHj9YNN9ygVatWycfHR2lpaYqMjHQ5x9fXV+Hh4UpLSyvzvSZPnqwJEyaU2n748GHl5eWdMdbTWbQhXQVFDjWOCFKMf365U4GswuFwKDMzU4Zh8G+dSegD87lzHxQVFalBgwY6evSofH2999dLd+4DK8jMzKy0trz3u/Q0Pt2cpoJih5pEhahJdIjZ4QDAOfPz83NZABKwspSUFLVo0ULt27d32d67d2/n31u0aKGWLVuqQYMGWrFihbp06XJO7zVq1CglJyc7X2dlZSkuLk4REREKDQ09twtQyYKoH2/dJknq1yGhVEHIihwOh2w2myIiIvjFwyT0gfncvQ9iY71/jUV37wNv5+9feVNDLVkEeX9TyVNhWBAVgKfLy8vTc889p5EjRyowMNDscIDzUrt2bfn4+Cg9Pd1le3p6uqKjo097bnZ2thYtWqSJEyee8X3q16+v2rVra+fOnerSpYuio6NLjbYoKirSsWPHyn3fgICAMod92+3280qOf9h3XNsPnVSAr103X1qXRPsPNpvtvO8tzg99YD537QMr5SLu2gdWUJn33HK9d+hEnlbtOipJuqkVRRAAns3X11eXX365Vw8/hXX4+/urbdu2Sk1NdW5zOBxKTU1Vhw4dTnvukiVLlJ+fr379+p3xfX7//XcdPXpUMTExkqQOHTooIyND69evdx7zxRdfyOFwKDEx8Ryv5twsXvebJKl7ixiFBbHIIAD3Ry4CT2O5IsjSHw/KYUiX1quhuPBgs8MBgPPi6+urq6++msQDXiM5OVlz587Va6+9pi1btmjo0KHKzs7WoEGDJEn9+/d3WTj1lJSUFPXs2dO52OkpJ0+e1MMPP6zVq1dr7969Sk1N1c0336yGDRuqW7dukqSmTZvq+uuv1+DBg7V27Vp9++23SkpKUu/evS/oEO/s/CJ9uKlk4fY7Lou7YO8LAOeDXASexnJFkFNPhWEUCABvkJeXp3Hjxp33QoyAu+jVq5eeffZZjRs3Tq1bt9bGjRu1bNky59oY+/bt08GDB13O2bZtm7755hvdc889pdrz8fHRjz/+qJtuukmNGzfWPffco7Zt2+rrr792mc6yYMECXXzxxerSpYtuvPFGderUSS+99FLVXuxfLP3xoLILihVfK1iJCeEX9L0B4FyRi8DTWKpct+9ojjb+liG7TereMsbscADgvPn6+urGG2/k0xd4laSkJCUlJZW5b8WKFaW2NWnSRIZhlHl8UFCQPv300zO+Z3h4uBYuXFihOCvb4u9LpsL0uqyebDabqbEAwNkiF4GnsdR36oc/lowCuaJBbUWGePeiPQCs4dQ8XACebUf6Ca3/9bh87Dbd2raO2eEAwFkjF4GnsdR0mC+3lqz8/ndGgQDwEnl5eXr44YcZggp4uFMLol5zcSQf1ADwKOQi8DTnVASZNWuW4uPjFRgYqMTERK1du/a0x0+fPl1NmjRRUFCQ4uLiNHLkSJcfksmTJ+uyyy5TSEiIIiMj1bNnT23btu1cQjutfcdyJEmXxIZVetsAYAY/Pz/169dPfn48RQLwVAVFDr3zw35JUq92LIgKwLOQi8DTVLgIsnjxYiUnJ2v8+PHasGGDWrVqpW7duunQoUNlHr9w4UI9+uijGj9+vLZs2aKUlBQtXrxYo0ePdh6zcuVKDRs2TKtXr9by5ctVWFio6667TtnZ2ed+ZX+RX1SsQyfyJUmxNfiEBYB38PHxUatWreTj42N2KADO0edb0nUsu0CRIQHq3CTC7HAAoELIReBpKlwEmTZtmgYPHqxBgwapWbNmmjNnjoKDgzVv3rwyj//uu+/UsWNH9enTR/Hx8bruuut05513uoweWbZsmQYOHKhLLrlErVq10quvvqp9+/Zp/fr1535lf5GeWVIACfC1K7yaf6W1CwBmys3NVVJSknJzc80OBcA5OjUV5vZ2deXrY6mZygC8ALkIPE2FFkYtKCjQ+vXrNWrUKOc2u92url27atWqVWWec8UVV2j+/Plau3at2rdvr927d+vjjz/WXXfdVe77ZGZmSipZqb08+fn5ys/Pd77OysqSJDkcDjkcjlLH/368ZFRJbI0gGYZR7iryKM3hcMgwjDLvK6oe99987twHvr6+Gj58uHx9fd0yvsrizn1gBdz3qrM/I1df7TgsSbqDqTAAPJC/v78efPBB+fvzQTM8Q4WKIEeOHFFxcbGioqJctkdFRWnr1q1lntOnTx8dOXJEnTp1kmEYKioq0v333+8yHebPHA6HRowYoY4dO6p58+blxjJ58mRNmDCh1PbDhw+XuSjPln1HJUkRwfZyp+6gbA6HQ5mZmTIMQ3Y7n1BdaNx/87l7H4SFheno0aNmh1Gl3L0PvN2pDydQ+ZZ8/5sMQ+pQv5YuqlXN7HAAoMJ8fHzUuHFjs8MAzlqVPyJ3xYoVeuqpp/TCCy8oMTFRO3fu1EMPPaRJkyZp7NixpY4fNmyYNm/erG+++ea07Y4aNUrJycnO11lZWYqLi1NERIRCQ0NLHX9yc8lIkfjIMEVGRp7nVVmLw+GQzWZTREQEv3yYgPtvPnfug5ycHI0YMULTp09XcHCw2eFUGXfuAyvg072qUewwtOT73yVJvS5jFAgAz5STk6Phw4dr5syZXp2LwHtUqAhSu3Zt+fj4KD093WV7enq6oqOjyzxn7Nixuuuuu3TvvfdKklq0aKHs7GwNGTJEjz32mEsym5SUpI8++khfffWV6tate9pYAgICFBAQUGq73W4vM0E+mFkyOqROjWAS6HNgs9nKvbeoetx/87lrHwQHB+vxxx9XcLD3/9vmrn1gBdzzqvHtziPan5Gr0EBfXd+87DwKANxdYGCgJkyYoMBAHj4Bz1ChrMbf319t27ZVamqqc5vD4VBqaqo6dOhQ5jk5OTmlkqdTKwefWpfDMAwlJSXp3Xff1RdffKGEhIQKXcTZ2J9RslBPnZpBld42AJjFbrerbt26/JIKeKDF35csiHrLpXUU6MdTFQB4JnIReJoKf6cmJydr7ty5eu2117RlyxYNHTpU2dnZGjRokCSpf//+Lgun9ujRQ7Nnz9aiRYu0Z88eLV++XGPHjlWPHj2cxZBhw4Zp/vz5WrhwoUJCQpSWlqa0tLRKXWH4VBGEx+MC8CY5OTnq06ePcnJyzA4FQAUcyy7QZz+nSZLuYCoMAA9GLgJPU+E1QXr16qXDhw9r3LhxSktLU+vWrbVs2TLnYqn79u1zqQKOGTNGNptNY8aM0f79+xUREaEePXroySefdB4ze/ZsSVLnzp1d3uuVV17RwIEDz+GyXBmGoQOnRoLUYCQIAO8RGBiomTNnMgQV8DDv/rBfhcWGWtQJ0yWxYWaHAwDnjFwEnuacFkZNSkpSUlJSmftWrFjh+ga+vho/frzGjx9fbntV/bja4zmFyissebxfdBg/nAC8h81mU1BQkGw2m9mhADhLhmFo8bp9khgFAsDzkYvA01hi4tb+4yWjQCJDAhTgy5xbAN4jNzdX9957b6VOHwRQtX74LUPb008q0M+um1rFmh0OAJwXchF4GmsUQZzrgTAVBoB3CQoK0ssvv6ygIP59AzzFW+tKFkS9sUWMwoL8TI4GAM4PuQg8jSWKIKwHAsBbGYah3NzcKp9WCKByZOcX6cNNByRJvdoxFQaA5yMXgaexRBGEx+MC8FZ5eXkaPny48vLyzA4FwFlY+uNBZRcUK6F2NbVPCDc7HAA4b+Qi8DTntDCqpzk1EiSWRVEBeJng4GAtXLjQ7DAAnKXF35dMhbmjXRyLCALwCuQi8DSWGAlygDVBAHgph8Oh33//XQ6Hw+xQAJxBXmGxNuw7Lkm6uTULogLwDuQi8DSWKILszygZmkURBIC3ycvL0/jx4xmCCq8ya9YsxcfHKzAwUImJiVq7dm25x3bu3Fk2m63UV/fu3SVJhYWFeuSRR9SiRQtVq1ZNsbGx6t+/vw4cOODSTnx8fKk2pkyZUqnXte9YjgxDCgn0VQyjUwF4CXIReBqvL4LkFRbryMl8SVJd1gQB4GWCg4OVkpKi4OBgs0MBKsXixYuVnJys8ePHa8OGDWrVqpW6deumQ4cOlXn8O++8o4MHDzq/Nm/eLB8fH91+++2SpJycHG3YsEFjx47Vhg0b9M4772jbtm266aabSrU1ceJEl7aGDx9eqde2+3C2JKl+7WpMhQHgNchF4Gm8fk2Qg5klFclgfx8eQwfA6xQXF2vXrl1q0KCBfHx8zA4HOG/Tpk3T4MGDNWjQIEnSnDlztHTpUs2bN0+PPvpoqePDw10XF120aJGCg4OdRZCwsDAtX77c5Zjnn39e7du31759+1SvXj3n9pCQEEVHR1f2JTntOVJSBEmoXa3K3gMALjRyEXgary+C/Hk9ED51AeBtCgoKNGPGDE2dOlVBQYx2g2crKCjQ+vXrNWrUKOc2u92url27atWqVWfVRkpKinr37q1q1covNGRmZspms6lGjRou26dMmaJJkyapXr166tOnj0aOHClf37JTpfz8fOXn5ztfZ2VlSSqZG1/evPjdh09KkuJrBTN3vgIcDocMw+CemYg+MJ8790FeXp5mzpypKVOmeHUu4s59YAWVed+9vgiy//gfj8dlPRAAXigoKEjPP/+82WEAleLIkSMqLi5WVFSUy/aoqCht3br1jOevXbtWmzdvVkpKSrnH5OXl6ZFHHtGdd96p0NBQ5/YHH3xQbdq0UXh4uL777juNGjVKBw8e1LRp08psZ/LkyZowYUKp7YcPHy53Xvz2gxmSpFr+xeVO70FpDodDmZmZMgxDdrvXz+R2S/SB+dy9Dx577DGdOHFCJ06cMDuUKuPufeDtMjMzK60t7y+C8GQYAF6suLhYmzdvVvPmzRmCCstLSUlRixYt1L59+zL3FxYW6o477pBhGJo9e7bLvuTkZOffW7ZsKX9/f913332aPHmyAgICSrU1atQol3OysrIUFxeniIgIl+LKn/2e+ZMkqVX9GEVGhlX4+qzK4XDIZrMpIiKCXzxMQh+Yz537oLi4WD///LMuueQSr85F3LkPrMDf37/S2vL6Isip6TB1arAKOwDvU1hYqPnz52vSpElenXjAGmrXri0fHx+lp6e7bE9PTz/jWh3Z2dlatGiRJk6cWOb+UwWQX3/9VV988UW5hYpTEhMTVVRUpL1796pJkyal9gcEBJRZHLHb7WUmx5m5hTqaXSBJqh8ZQgJdQTabrdx7iwuDPjCfu/ZBQUGBFixYoEmTJsnPz7vXYHTXPrCCyrznXt97BzIZCQLAewUGBmrq1KkKDKTQC8/n7++vtm3bKjU11bnN4XAoNTVVHTp0OO25S5YsUX5+vvr161dq36kCyI4dO/T555+rVq1aZ4xl48aNstvtioyMrPiFlOHUoqhRoQGqHuD1n0EBsBByEXgar/9fmDVBAHizoqIiff/992rXrl25CzgCniQ5OVkDBgxQu3bt1L59e02fPl3Z2dnOp8X0799fderU0eTJk13OS0lJUc+ePUsVOAoLC3Xbbbdpw4YN+uijj1RcXKy0tDRJJU+W8ff316pVq7RmzRpdffXVCgkJ0apVqzRy5Ej169dPNWvWrJTr2nOkZFFUngwDwNuQi8DTePV3qcNh6MAfj8hlJAgAb1RUVKSPP/5YrVu3JvGAV+jVq5cOHz6scePGKS0tTa1bt9ayZcuci6Xu27ev1JDYbdu26ZtvvtFnn31Wqr39+/frgw8+kCS1bt3aZd+XX36pzp07KyAgQIsWLdLjjz+u/Px8JSQkaOTIkS5rfpyvPYdPPR63eqW1CQDugFwEnsarv0uPZheooMghu02KDmN4FgDvExgYWO4aCICnSkpKUlJSUpn7VqxYUWpbkyZNZBhGmcfHx8eXu++UNm3aaPXq1RWOsyJ2/zEdpj4jQQB4GXIReBqvXhPk1JNhokID5efj1ZcKwKKKior05ZdfqqioyOxQAJzGqTVBmA4DwNuQi8DTeHVl4ACPxwXg5YqKirR69WoSD8CNGYbx/0WQCIogALwLuQg8jVdPh6EIAsDbBQYGatSoUWaHAeA0Dp3IV05BsXzsNsXVDDY7HACoVOQi8DRePRJkv7MIwnogALxTYWGhli5dqsLCQrNDAVCO3X8sihpXM0j+vl6degGwIHIReBqv/p/41ONx6zISBICXcjgc2rFjhxwOh9mhACgH64EA8GbkIvA03j0dJpPpMAC8W0BAgEaMGGF2GABOY8+Rk5J4PC4A70QuAk/j1SNBDmTkSaIIAsB7FRYW6u2332YIKuDGWBQVgDcjF4GnOaciyKxZsxQfH6/AwEAlJiZq7dq1pz1++vTpatKkiYKCghQXF6eRI0cqLy/vvNo8k9yCYh3LLpBEEQSA9zIMQ8eOHZNhGGaHAqAcu/8ogtRnOgwAL0QuAk9T4SLI4sWLlZycrPHjx2vDhg1q1aqVunXrpkOHDpV5/MKFC/Xoo49q/Pjx2rJli1JSUrR48WKNHj36nNs8G6cWRQ0J8FVYkN85twMA7szf319DhgyRv7+/2aEAKENRsUP7juZIYk0QAN6JXASepsJFkGnTpmnw4MEaNGiQmjVrpjlz5ig4OFjz5s0r8/jvvvtOHTt2VJ8+fRQfH6/rrrtOd955p8tIj4q2eTZ4PC4AKygoKNAbb7yhgoICs0MBUIbfj+eqyGEo0M+u6FCeVgfA+5CLwNNUaGHUgoICrV+/3uU50Ha7XV27dtWqVavKPOeKK67Q/PnztXbtWrVv3167d+/Wxx9/rLvuuuuc25Sk/Px85efnO19nZWVJKlmd2OFwaP/xkk9dYmoEslLxeXI4HDIMg/toEu6/+dy5D07FdOrfPm/lzn1gBdz3c3dqPZD4WtVkt9tMjgYAAFSoCHLkyBEVFxcrKirKZXtUVJS2bt1a5jl9+vTRkSNH1KlTJxmGoaKiIt1///3O6TDn0qYkTZ48WRMmTCi1/fDhw8rLy9P2/UckSeEBOq9pNShJfjMzM2UYhux2r15L1y1x/83n7n1w7bXXKiMjw+wwqpS794G3y8zMNDsEj+VcD4RFUQF4KX9/f+cH3IAnqPJH5K5YsUJPPfWUXnjhBSUmJmrnzp166KGHNGnSJI0dO/ac2x01apSSk5Odr7OyshQXF6eIiAiFhoYqszBNktQgpqYiIyPP+zqszOFwyGazKSIigl8+TMD9N58790FBQYFef/119e/f36vn4rpzH1iBN39vVbX/fzwuRRAA3qmgoECvvvqqBg4cyP8X8AgVKoLUrl1bPj4+Sk9Pd9menp6u6OjoMs8ZO3as7rrrLt17772SpBYtWig7O1tDhgzRY489dk5tSiXPow4ICCi13W63y26360BmyZogdWsGkzBXApvN5ry3uPC4/+Zz1z7w8fFReHi4fHx83C62yuaufWAF3PNz53w8bu3qJkcCAFXDZrMpPDxcNhtT/uAZKpTV+Pv7q23btkpNTXVuczgcSk1NVYcOHco8Jycnp1Ty5OPjI6nkcUrn0ubZOJBR8gheFkYF4M38/Px02223yc+Pp2AB7mjP4VNFEEaCAPBO5CLwNBX+aCc5OVlz587Va6+9pi1btmjo0KHKzs7WoEGDJEn9+/d3WeS0R48emj17thYtWqQ9e/Zo+fLlGjt2rHr06OEshpypzYpyOAwd/GMkSB2KIAC8WH5+vqZPn+6yUDQA95BbUKwDmSUfytSnCALAS5GLwNNUeE2QXr166fDhwxo3bpzS0tLUunVrLVu2zLmw6b59+1xGfowZM0Y2m01jxozR/v37FRERoR49eujJJ5886zYr6vDJfBUWG/Kx2xQZUnrKDAB4C7vdrkaNGjFdAXBDe4+WjAKpEeynmtWYJw/AO5GLwNOc08KoSUlJSkpKKnPfihUrXN/A11fjx4/X+PHjz7nNitqfUTIKJDo0UL4+/DAC8F5+fn7q3r272WEAKMP/rwfCKBAA3otcBJ7GKysE+48zFQaANeTl5Wny5MnKy8szOxQAf0ERBIAVkIvA03hlEeTAHyNBYmsEmhwJAFQtX19fXX755fL1rfInngMXzKxZsxQfH6/AwEAlJiZq7dq15R7buXNn2Wy2Ul9//lTSMAyNGzdOMTExCgoKUteuXbVjxw6Xdo4dO6a+ffsqNDRUNWrU0D333KOTJ0+e13Xs/mNRVNYDAeDNyEXgaby8CMJIEADezdfXV1dffTWJB7zG4sWLlZycrPHjx2vDhg1q1aqVunXrpkOHDpV5/DvvvKODBw86vzZv3iwfHx/dfvvtzmOeeeYZzZgxQ3PmzNGaNWtUrVo1devWzeVTy759++rnn3/W8uXL9dFHH+mrr77SkCFDzuta9hwpKaLweFwA3oxcBJ7GK4sg+3k8LgCLyMvL07hx4xiCCq8xbdo0DR48WIMGDVKzZs00Z84cBQcHa968eWUeHx4erujoaOfX8uXLFRwc7CyCGIah6dOna8yYMbr55pvVsmVLvf766zpw4IDee+89SdKWLVu0bNkyvfzyy0pMTFSnTp00c+ZMLVq0SAcOHDjna2E6DAArIBeBp/HSIsgfa4LUpAgCwLv5+vrqxhtv5NMXeIWCggKtX79eXbt2dW6z2+3q2rWrVq1adVZtpKSkqHfv3qpWraTwsGfPHqWlpbm0GRYWpsTERGebq1atUo0aNdSuXTvnMV27dpXdbteaNWvO6VqOZxfoeE6hJCm+dvA5tQEAnoBcBJ7GK79TT02HYWFUAN7u1DxcwBscOXJExcXFioqKctkeFRWlrVu3nvH8tWvXavPmzUpJSXFuS0tLc7bx1zZP7UtLS1NkZKTLfl9fX4WHhzuP+av8/Hzl5+c7X2dlZUmSHA6HHA6Hdh8+IUmKCQtUoK9dDofjjPGjbA6HQ4ZhcA9NRB+Yz537wG63q3379pLklvFVFnfuAyuozPvudUWQk/lFyswt+eSF6TAAvF1eXp7Gjh2rSZMmKTCQxaBhbSkpKWrRooUzGa9KkydP1oQJE0ptP3z4sPLy8rRp91FJUp1Qv3LXM8HZcTgcyszMlGEYstu9chCz26MPzOfOfVBQUKAFCxaob9++8vf3NzucKuPOfWAFmZmZldaW1xVB0jJLRoGEBfmpeoDXXR4AuPDz81O/fv3k5+dndijAeatdu7Z8fHyUnp7usj09PV3R0dGnPTc7O1uLFi3SxIkTXbafOi89PV0xMTEubbZu3dp5zF8LFUVFRTp27Fi57ztq1CglJyc7X2dlZSkuLk4REREKDQ3V0Y0ZkqTGMTVKjTJBxTgcDtlsNkVERPCLh0noA/O5cx8UFxfrhhtuUExMjHx8fMwOp8q4cx9YQWUW2LyuSnAgk0VRAViHj4+PWrVqZXYYQKXw9/dX27ZtlZqaqp49e0oqSTpTU1OVlJR02nOXLFmi/Px89evXz2V7QkKCoqOjlZqa6ix6ZGVlac2aNRo6dKgkqUOHDsrIyND69evVtm1bSdIXX3whh8OhxMTEMt8vICBAAQEBpbbb7XbZ7XbtPZojSaofUZ1kuRLYbDbnvYU56APzuWsf2O1257+v3s5d+8AKKvOee13vHcw8tR4Iw8IBeL/c3FwlJSUpNzfX7FCASpGcnKy5c+fqtdde05YtWzR06FBlZ2dr0KBBkqT+/ftr1KhRpc5LSUlRz549VatWLZftNptNI0aM0BNPPKEPPvhAP/30k/r376/Y2FhnoaVp06a6/vrrNXjwYK1du1bffvutkpKS1Lt3b8XGxp7Tdez+48kw9SN4MgwA70YuAk/jdSNB0ng8LgAL8ff314MPPujVc3BhLb169dLhw4c1btw4paWlqXXr1lq2bJlzYdN9+/aV+jRo27Zt+uabb/TZZ5+V2ea///1vZWdna8iQIcrIyFCnTp20bNkyl3V0FixYoKSkJHXp0kV2u1233nqrZsyYcU7X4HAY2ut8PG71c2oDADwFuQg8jdcVQXgyDAAr8fHxUePGjc0OA6hUSUlJ5U5/WbFiRaltTZo0kWEY5bZns9k0ceLEUuuF/Fl4eLgWLlxY4VjLkn4iT7mFxfK121S3JvkIAO9GLgJP43XTYdIySx5Xx0gQAFaQk5Oje+65Rzk5OWaHAuAPew6XjAKpVytYfj5el2oBgAtyEXgar/uf+cAfa4JQBAFgBYGBgZowYQKPxwXciHM9kNqsBwLA+5GLwNN4XRHk0ImSkSAMPwVgBXa7XXXr1mWVcsCN7HGuB0IRBID3IxeBp/G679RihyE/H5siqpd+bB0AeJucnBz16dOHIaiAG9nDoqgALIRcBJ7G64ogkhQdFii73WZ2GABQ5QIDAzVz5kyGoAJuhJEgAKyEXASexiuLILFhTIUBYA02m01BQUGy2Sj8Au6goMihfcdKPg2tH0ERBID3IxeBp/HKIkgd1gMBYBG5ubm69957lZuba3YoACT9npGjYoehYH8fRYYwNReA9yMXgafxziIIT4YBYBFBQUF6+eWXFRTEv3uAO/j1SMkokITa1fhUFIAlkIvA03hlEYTH4wKwCsMwlJubK8MwzA4FgKRfj7IeCABrIReBp/HKIggjQQBYRV5enoYPH668vDyzQwEgae/RP9YDoQgCwCLIReBpfM0OoCowEgSAVQQHB2vhwoVmhwHgD86RICyKCsAiyEXgabxyJEhsDR7PBMAaHA6Hfv/9dzkcDrNDAaA/T4epbnIkAHBhkIvA05xTEWTWrFmKj49XYGCgEhMTtXbt2nKP7dy5s2w2W6mv7t27O485efKkkpKSVLduXQUFBalZs2aaM2fOuYSmGkG+Cvb3ygEuAFBKXl6exo8fzxBUwE0cOlEgSUqoxUgQANZALgJPU+FqweLFi5WcnKw5c+YoMTFR06dPV7du3bRt2zZFRkaWOv6dd95RQUGB8/XRo0fVqlUr3X777c5tycnJ+uKLLzR//nzFx8frs88+0wMPPKDY2FjddNNNFYovhqkwACwkODhYKSkpZocB4E9qVfNXWLCf2WEAwAVBLgJPU+GRINOmTdPgwYM1aNAg54iN4OBgzZs3r8zjw8PDFR0d7fxavny5goODXYog3333nQYMGKDOnTsrPj5eQ4YMUatWrU47wqQ8MWFMhQFgHcXFxdq+fbuKi4vNDgXAH3gyDAArIReBp6nQSJCCggKtX79eo0aNcm6z2+3q2rWrVq1adVZtpKSkqHfv3qpW7f8ThCuuuEIffPCB7r77bsXGxmrFihXavn27nnvuuXLbyc/PV35+vvN1VlaWJCkmNJD5aJXM4XDIMAzuq0m4/+Zz5z7Iy8vTzJkzNWXKFAUFee9IOHfuAyvgvlcMRRAAVlJQUKAZM2Zo6tSpXp2LwHtUqAhy5MgRFRcXKyoqymV7VFSUtm7desbz165dq82bN5caLjVz5kwNGTJEdevWla+vr+x2u+bOnasrr7yy3LYmT56sCRMmlNoe4lesQ4cOneUV4Ww4HA5lZmbKMAzZ7V65lq5b4/6bz9374LHHHtOJEyd04sQJs0OpMu7eB94uMzPT7BA8Ck+GAWAlQUFBev75580OAzhrF3QF0ZSUFLVo0ULt27d32T5z5kytXr1aH3zwgS666CJ99dVXGjZsmGJjY9W1a9cy2xo1apSSk5Odr7OyshQXF6eGMbXKXJsE587hcMhmsykiIoJfPkzA/TefO/dBcXGxfv75Z11yySXy8fExO5wq4859YAX+/v5mh+BR6jMSBICFFBcXa/PmzWrevLlX5yLwHhUqgtSuXVs+Pj5KT0932Z6enq7o6OjTnpudna1FixZp4sSJLttzc3M1evRovfvuu84nxrRs2VIbN27Us88+W24RJCAgQAEBAaW2x9YMJkGuAjabTXa7nXtrEu6/+dy1DwoKCrRgwQJNmjRJfn7evRCju/aBFXDPK4bH4wKwksLCQs2fP1+TJk2iCAKPUKGsxt/fX23btlVqaqpzm8PhUGpqqjp06HDac5csWaL8/Hz169fPZXthYaEKCwtLJVg+Pj7nNAeZhVEBWElgYKCmTp2qwED+7QPcgc0mXVQr2OwwAOCCIReBp6nwRzvJycmaO3euXnvtNW3ZskVDhw5Vdna2Bg0aJEnq37+/y8Kpp6SkpKhnz56qVauWy/bQ0FBdddVVevjhh7VixQrt2bNHr776ql5//XXdcsstFb6gWtVKjw4BAG9VVFSk1atXq6ioyOxQgEoza9YsxcfHKzAwUImJiWd8WlxGRoaGDRummJgYBQQEqHHjxvr444+d++Pj42Wz2Up9DRs2zHlM586dS+2///77Kxx7dGigAv34JBSAdZCLwNNUeE2QXr166fDhwxo3bpzS0tLUunVrLVu2zLlY6r59+0qN6ti2bZu++eYbffbZZ2W2uWjRIo0aNUp9+/bVsWPHdNFFF+nJJ588p+TDbrdV+BwA8FRFRUX6+OOP1bp1a/n6XtBlnoAqsXjxYiUnJ2vOnDlKTEzU9OnT1a1bN23btq3MNb8KCgp07bXXKjIyUm+//bbq1KmjX3/9VTVq1HAes27dOpdHN27evFnXXnutbr/9dpe2Bg8e7DJtNzi44iM64lkPBIDFkIvA05zTd2lSUpKSkpLK3LdixYpS25o0aSLDMMptLzo6Wq+88sq5hAIAlhYYGFhqrSXAk02bNk2DBw92jjCdM2eOli5dqnnz5unRRx8tdfy8efN07Ngxfffdd851ceLj412OiYiIcHk9ZcoUNWjQQFdddZXL9uDg4DOucXYm8UyFAWAx5CLwNJTqAMCDFRUV6euvv9bf/vY3Pn2BxysoKND69etdptXa7XZ17dpVq1atKvOcDz74QB06dNCwYcP0/vvvKyIiQn369NEjjzxS5gJ9BQUFmj9/vpKTk2WzuY4eXbBggebPn6/o6Gj16NFDY8eOLXc0SH5+vvLz852vs7KyJEn1woPOaU0zlM/hcMgwDO6riegD87lzHxQVFembb75Rp06dvDoXcec+sILKvO/e+10KABZwah5uhw4dvDrxgDUcOXJExcXFzim2p0RFRWnr1q1lnrN792598cUX6tu3rz7++GPt3LlTDzzwgAoLCzV+/PhSx7/33nvKyMjQwIEDXbb36dNHF110kWJjY/Xjjz/qkUce0bZt2/TOO++U+b6TJ0/WhAkTSm1vGm7XoUOHzvKKcTYcDocyMzNlGAZPKjIJfWA+d+6DgoIC/fzzz2rYsKFXP1LdnfvACjIzMyutLTJmAPBggYGBZS5GDViFw+FQZGSkXnrpJfn4+Kht27bav3+/pk6dWmYRJCUlRTfccINiY2Ndtg8ZMsT59xYtWigmJkZdunTRrl271KBBg1LtjBo1SsnJyc7XWVlZiouLU5tGcQoNDa3EK4TD4ZDNZlNERAS/eJiEPjCfu/fBnxea9lbu3gferjILbBRBAMCDFRYW6rPPPtN1113nXA8B8FS1a9eWj4+P0tPTXbanp6eXu1ZHTEyM/Pz8XKa+NG3aVGlpaSooKHBJmn799Vd9/vnn5Y7u+LPExERJ0s6dO8ssggQEBCggoPQT6ex2O8lxFbDZbNxbk9EH5nPXPrBSLuKufWAFlXnP6T0A8GAOh0M7duxgfiq8gr+/v9q2bavU1FTnNofDodTUVHXo0KHMczp27KidO3e6/Axs375dMTExpT41euWVVxQZGanu3bufMZaNGzdKKimyAADKRy4CT0MRBAA8WEBAgEaMGFHmJ9KAJ0pOTtbcuXP12muvacuWLRo6dKiys7OdT4vp37+/yxSwoUOH6tixY3rooYe0fft2LV26VE899VSpodkOh0OvvPKKBgwYUGr9nF27dmnSpElav3699u7dqw8++ED9+/fXlVdeqZYtW1b9RQOAByMXgadhOgwAeLDCwkK9//77uvnmm71+CCqsoVevXjp8+LDGjRuntLQ0tW7dWsuWLXMulrpv3z6XIbFxcXH69NNPNXLkSLVs2VJ16tTRQw89pEceecSl3c8//1z79u3T3XffXeo9/f399fnnn2v69OnKzs5WXFycbr31Vo0ZM6ZqLxYAvAC5CDwNRRAA8GCGYejYsWMyDMPsUIBKk5SUpKSkpDL3rVixotS2Dh06aPXq1adt87rrriv35yQuLk4rV66scJwAAHIReB6KIADgwfz9/V2eagEAAHAhkYvA07AmCAB4sIKCAr3xxhsqKCgwOxQAAGBB5CLwNBRBAAAAAACAJTAdBgA8mL+/v+666y6zwwAAABZFLgJP4zVFkFML8WRlZZkcifdxOBw6ceKEAgMDXVbkx4XB/TefO/dBQUGBFixYoL59+8rf39/scKqMO/eBFZz6v5VF78pHHlJ1+Pk3H31gPnfuA3IRXAiVmYvYDC/JaH7//XfFxcWZHQYAAF5r165dql+/vtlhuCXyEAAAql5l5CJeUwRxOBw6cOCAQkJCZLPZzA7Hq2RlZSkuLk6//fabQkNDzQ7Hcrj/5qMPzEcfmCszM1P16tXT8ePHVaNGDbPDcUvkIVWHn3/z0Qfmow/MRx+YqzJzEa+ZDmO321W3bl2zw/BqoaGh/MCbiPtvPvrAfPSBuRj+Wz7ykKrHz7/56APz0Qfmow/MVRm5CNkMAAAAAACwBIogAAAAAADAEiiC4IwCAgI0fvx4BQQEmB2KJXH/zUcfmI8+MBf3H2bi+8989IH56APz0Qfmqsz77zULowIAAAAAAJwOI0EAAAAAAIAlUAQBAAAAAACWQBEEAAAAAABYAkUQSJK++uor9ejRQ7GxsbLZbHrvvfdc9huGoXHjxikmJkZBQUHq2rWrduzYYU6wXmry5Mm67LLLFBISosjISPXs2VPbtm1zOSYvL0/Dhg1TrVq1VL16dd16661KT083KWLvMnv2bLVs2dL57PcOHTrok08+ce7n3l94U6ZMkc1m04gRI5zb6Ieq9fjjj8tms7l8XXzxxc793H9UJXIRc5GHmI9cxL2Qh5jjQuQiFEEgScrOzlarVq00a9asMvc/88wzmjFjhubMmaM1a9aoWrVq6tatm/Ly8i5wpN5r5cqVGjZsmFavXq3ly5ersLBQ1113nbKzs53HjBw5Uh9++KGWLFmilStX6sCBA/rHP/5hYtTeo27dupoyZYrWr1+v77//Xtdcc41uvvlm/fzzz5K49xfaunXr9OKLL6ply5Yu2+mHqnfJJZfo4MGDzq9vvvnGuY/7j6pELmIu8hDzkYu4D/IQc1V5LmIAfyHJePfdd52vHQ6HER0dbUydOtW5LSMjwwgICDDefPNNEyK0hkOHDhmSjJUrVxqGUXLP/fz8jCVLljiP2bJliyHJWLVqlVlherWaNWsaL7/8Mvf+Ajtx4oTRqFEjY/ny5cZVV11lPPTQQ4Zh8DNwIYwfP95o1apVmfu4/7iQyEXMRx7iHshFLjzyEHNdiFyEkSA4oz179igtLU1du3Z1bgsLC1NiYqJWrVplYmTeLTMzU5IUHh4uSVq/fr0KCwtd+uHiiy9WvXr16IdKVlxcrEWLFik7O1sdOnTg3l9gw4YNU/fu3V3ut8TPwIWyY8cOxcbGqn79+urbt6/27dsnifsPc5GLXHjkIeYiFzEPeYj5qjoX8a30iOF10tLSJElRUVEu26Oiopz7ULkcDodGjBihjh07qnnz5pJK+sHf3181atRwOZZ+qDw//fSTOnTooLy8PFWvXl3vvvuumjVrpo0bN3LvL5BFixZpw4YNWrduXal9/AxUvcTERL366qtq0qSJDh48qAkTJuhvf/ubNm/ezP2HqchFLizyEPOQi5iLPMR8FyIXoQgCuKFhw4Zp8+bNLvPfUPWaNGmijRs3KjMzU2+//bYGDBiglStXmh2WZfz222966KGHtHz5cgUGBpodjiXdcMMNzr+3bNlSiYmJuuiii/TWW28pKCjIxMgAXEjkIeYhFzEPeYh7uBC5CNNhcEbR0dGSVGrV3fT0dOc+VJ6kpCR99NFH+vLLL1W3bl3n9ujoaBUUFCgjI8PlePqh8vj7+6thw4Zq27atJk+erFatWum///0v9/4CWb9+vQ4dOqQ2bdrI19dXvr6+WrlypWbMmCFfX19FRUXRDxdYjRo11LhxY+3cuZOfA5iKXOTCIQ8xF7mIechD3FNV5CIUQXBGCQkJio6OVmpqqnNbVlaW1qxZow4dOpgYmXcxDENJSUl699139cUXXyghIcFlf9u2beXn5+fSD9u2bdO+ffvohyricDiUn5/Pvb9AunTpop9++kkbN250frVr1059+/Z1/p1+uLBOnjypXbt2KSYmhp8DmIpcpOqRh7gncpELhzzEPVVFLsJ0GEgq+ebauXOn8/WePXu0ceNGhYeHq169ehoxYoSeeOIJNWrUSAkJCRo7dqxiY2PVs2dP84L2MsOGDdPChQv1/vvvKyQkxDmvLSwsTEFBQQoLC9M999yj5ORkhYeHKzQ0VMOHD1eHDh10+eWXmxy95xs1apRuuOEG1atXTydOnNDChQu1YsUKffrpp9z7CyQkJMQ59/yUatWqqVatWs7t9EPV+te//qUePXrooosu0oEDBzR+/Hj5+Pjozjvv5OcAVY5cxFzkIeYjFzEXeYh7uCC5yPk9wAbe4ssvvzQklfoaMGCAYRglj6YbO3asERUVZQQEBBhdunQxtm3bZm7QXqas+y/JeOWVV5zH5ObmGg888IBRs2ZNIzg42LjllluMgwcPmhe0F7n77ruNiy66yPD39zciIiKMLl26GJ999plzP/feHH9+NJ1h0A9VrVevXkZMTIzh7+9v1KlTx+jVq5exc+dO537uP6oSuYi5yEPMRy7ifshDLrwLkYvYDMMwKqNiAwAAAAAA4M5YEwQAAAAAAFgCRRAAAAAAAGAJFEEAAAAAAIAlUAQBAAAAAACWQBEEAAAAAABYAkUQAAAAAABgCRRBAAAAAACAJVAEAQAAAAAAlkARBIDHWLFihWw2mzIyMswOBQAAWBC5COD5KIIAAAAAAABLoAgCAAAAAAAsgSIIgLPmcDg0efJkJSQkKCgoSK1atdLbb78t6f+Hhy5dulQtW7ZUYGCgLr/8cm3evNmljf/973+65JJLFBAQoPj4eP3nP/9x2Z+fn69HHnlEcXFxCggIUMOGDZWSkuJyzPr169WuXTsFBwfriiuu0LZt26r2wgEAgFsgFwFwviiCADhrkydP1uuvv645c+bo559/1siRI9WvXz+tXLnSeczDDz+s//znP1q3bp0iIiLUo0cPFRYWSipJGO644w717t1bP/30kx5//HGNHTtWr776qvP8/v37680339SMGTO0ZcsWvfjii6pevbpLHI899pj+85//6Pvvv5evr6/uvvvuC3L9AADAXOQiAM6bAQBnIS8vzwgODja+++47l+333HOPceeddxpffvmlIclYtGiRc9/Ro0eNoKAgY/HixYZhGEafPn2Ma6+91uX8hx9+2GjWrJlhGIaxbds2Q5KxfPnyMmM49R6ff/65c9vSpUsNSUZubm6lXCcAAHBP5CIAKgMjQQCclZ07dyonJ0fXXnutqlev7vx6/fXXtWvXLudxHTp0cP49PDxcTZo00ZYtWyRJW7ZsUceOHV3a7dixo3bs2KHi4mJt3LhRPj4+uuqqq04bS8uWLZ1/j4mJkSQdOnTovK8RAAC4L3IRAJXB1+wAAHiGkydPSpKWLl2qOnXquOwLCAhwST7OVVBQ0Fkd5+fn5/y7zWaTVDJHGAAAeC9yEQCVgZEgAM5Ks2bNFBAQoH379qlhw4YuX3Fxcc7jVq9e7fz78ePHtX37djVt2lSS1LRpU3377bcu7X777bdq3LixfHx81KJFCzkcDpd5vQAAABK5CIDKwUgQAGclJCRE//rXvzRy5Eg5HA516tRJmZmZ+vbbbxUaGqqLLrpIkjRx4kTVqlVLUVFReuyxx1S7dm317NlTkvTPf/5Tl112mSZNmqRevXpp1apVev755/XCCy9IkuLj4zVgwADdfffdmjFjhlq1aqVff/1Vhw4d0h133GHWpQMAADdALgKgMlAEAXDWJk2apIiICE2ePFm7d+9WjRo11KZNG40ePdo5BHTKlCl66KGHtGPHDrVu3Voffvih/P39JUlt2rTRW2+9pXHjxmnSpEmKiYnRxIkTNXDgQOd7zJ49W6NHj9YDDzygo0ePql69eho9erQZlwsAANwMuQiA82UzDMMwOwgAnm/FihW6+uqrdfz4cdWoUcPscAAAgMWQiwA4G6wJAgAAAAAALIEiCAAAAAAAsASmwwAAAAAAAEtgJAgAAAAAALAEiiAAAAAAAMASKIIAAAAAAABLoAgCAAAAAAAsgSIIAAAAAACwBIogAAAAAADAEiiCAAAAAAAAS6AIAgAAAAAALIEiCAAAAAAAsASKIAAAAAAAwBIoggAAAAAAAEugCAIAAAAAACyBIggAAAAAALAEiiAAAAAAAMASKILAK+Tk5OjWW29VaGiobDabMjIyzrtNm82m995777zbqWoDBw5Uz549zQ7jgnG36y0oKFDDhg313XffmR2Kx5ozZ4569OhhdhgAAACwAIog8Aqvvfaavv76a3333Xc6ePCgwsLCzrvNgwcP6oYbbqiE6NzH6tWrNWDAADVs2FC1atVS06ZNNXToUP38889mh1alvvnmG3Xs2FG1atVSUFCQLr74Yj333HPlHj9lyhTZbDaNGDHijG3PmTNHCQkJuuKKKyox4ooxDEPjxo1TTEyMgoKC1LVrV+3YseO05xQXF2vs2LFKSEhQUFCQGjRooEmTJskwjAq1u337dt18882qXbu2QkND1alTJ3355ZdlvufRo0dVt27dUoXKu+++Wxs2bNDXX3997jcBAAAAOAsUQeAVdu3apaZNm6p58+aKjo6WzWY77zajo6MVEBBQCdGZz+FwaPjw4brhhhsUFRWlWbNm6auvvtILL7yg6tWrq1OnTpo1a5bZYVaZatWqKSkpSV999ZW2bNmiMWPGaMyYMXrppZdKHbtu3Tq9+OKLatmy5RnbNQxDzz//vO65556qCPusPfPMM5oxY4bmzJmjNWvWqFq1aurWrZvy8vLKPefpp5/W7Nmz9fzzz2vLli16+umn9cwzz2jmzJkVavfvf/+7ioqK9MUXX2j9+vVq1aqV/v73vystLa3Ue95zzz1l3ld/f3/16dNHM2bMOM87AQAAAJyBAVSx4uJi4+mnnzYaNGhg+Pv7G3FxccYTTzzh3P/jjz8aV199tREYGGiEh4cbgwcPNk6cOOHcP2DAAOPmm282pk6dakRHRxvh4eHGAw88YBQUFBiGYRhXXXWVIcn5ddVVVxmGYRiSjHfffdcllrCwMOOVV14xDMMw8vPzjWHDhhnR0dFGQECAUa9ePeOpp55yHvvX8883zr/atm2bIcnYsmWLy/Zp06YZ9evXNwzDMIqKioy7777biI+PNwIDA43GjRsb06dPdzn+1Puezr/+9S/jsssuMw4ePFjm/p07dxoJCQnGkiVLTtvOvn37jNtvv90ICwszatasadx0003Gnj17SsXy+OOPG7Vr1zZCQkKM++67z8jPz3cek5eXZwwfPtyIiIgwAgICjI4dOxpr1651eZ/Nmzcb3bt3N0JCQozq1asbnTp1Mnbu3OnyHmd7n8tzyy23GP369XPZduLECaNRo0bG8uXLjauuusp46KGHTtvGunXrDLvdbmRlZbls//e//200atTICAoKMhISEowxY8aUiu+DDz4w2rVrZwQEBBi1atUyevbs6XKP/v3vfxt169Y1/P39jQYNGhgvv/xymTE4HA4jOjramDp1qnNbRkaGERAQYLz55pvlxt69e3fj7rvvdtn2j3/8w+jbt+9Zt3v48GFDkvHVV185j8nKyjIkGcuXL3dp+4UXXjCuuuoqIzU11ZBkHD9+3GX/ypUrDX9/fyMnJ6fcmAEAAIDzxUgQVLlRo0ZpypQpGjt2rH755RctXLhQUVFRkqTs7Gx169ZNNWvW1Lp167RkyRJ9/vnnSkpKcmnjyy+/1K5du/Tll1/qtdde06uvvqpXX31VkvTOO+9o8ODB6tChgw4ePKh33nnnrOKaMWOGPvjgA7311lvatm2bFixYoPj4+DKPrYw4/6px48Zq166dFixY4LJ9wYIF6tOnj6SSERx169bVkiVL9Msvv2jcuHEaPXq03nrrrbO6Rkn65Zdf9Oqrr+q9995TdHS0Zs+erUaNGik+Pl4zZ85UkyZN5Ofnp7lz5+rhhx92mQ7xZ4WFherWrZtCQkL09ddf69tvv1X16tV1/fXXq6CgwHlcamqqtmzZohUrVujNN9/UO++8owkTJjj3//vf/9b//vc/vfbaa9qwYYMaNmyobt266dixY5Kk/fv368orr1RAQIBzdMHdd9+toqKic7rPZfnhhx/03Xff6aqrrnLZPmzYMHXv3l1du3Y9q3a+/vprNW7cWCEhIS7bQ0JC9Oqrr+qXX37Rf//7X82dO9dl+s3SpUt1yy236MYbb9QPP/yg1NRUtW/f3rm/f//+evPNNzVjxgxt2bJFL774oqpXr15mDHv27FFaWppLzGFhYUpMTNSqVavKjf2KK65Qamqqtm/fLknatGmTvvnmG+cUsLNpt1atWmrSpIlef/11ZWdnq6ioSC+++KIiIyPVtm1b53m//PKLJk6cqNdff112e9n/7bRr105FRUVas2ZNuTEDAAAA583sKgy8W1ZWlhEQEGDMnTu3zP0vvfSSUbNmTePkyZPObUuXLjXsdruRlpZmGEbJJ/8XXXSRUVRU5Dzm9ttvN3r16uV8/dBDDzlHgJyiM4wEGT58uHHNNdcYDoejzNj+fH5lxflXzz33nNGgQQPn6/JGh/zZsGHDjFtvvdX5+kwjQUaPHm3885//NAzDML766isjODjYWLBggbF+/Xrj73//u+Hj4+MczVG3bt1y3/uNN94wmjRp4nK/8vPzjaCgIOPTTz91xhIeHm5kZ2c7j5k9e7ZRvXp1o7i42Dh58qTh5+dnLFiwwLm/oKDAiI2NNZ555hnDMAxj1KhRRkJCQrkjO87lPp9Sp04dw9/f37Db7cbEiRNd9r355ptG8+bNjdzcXMMwjLMaCfLQQw8Z11xzzRnfd+rUqUbbtm2drzt06OAccfFXp74H/jqSojzffvutIck4cOCAy/bbb7/duOOOO8o9r7i42HjkkUcMm81m+Pr6GjabzWUk1Nm2+9tvvxlt27Y1bDab4ePjY8TExBgbNmxw7s/LyzNatmxpvPHGG4ZhGMaXX35Z5kgQwzCMmjVrGq+++upZXTcAAABwLhgJgiq1ZcsW5efnq0uXLuXub9WqlapVq+bc1rFjRzkcDm3bts257ZJLLpGPj4/zdUxMjA4dOnResQ0cOFAbN25UkyZN9OCDD+qzzz477XVURZy9e/fW3r17tXr1akklo0DatGmjiy++2HnMrFmz1LZtW0VERKh69ep66aWXtG/fvrO+zp9++sm5aOeHH36ovn37qk+fPmrTpo3mzJmj4uJil3iPHz9eZjubNm3Szp07FRISourVq6t69eoKDw9XXl6edu3a5TyuVatWCg4Odr7u0KGDTp48qd9++027du1SYWGhOnbs6Nzv5+en9u3ba8uWLZKkjRs36m9/+5v8/PzKvaZz/X74+uuv9f3332vOnDmaPn263nzzTUnSb7/9poceekgLFixQYGDgGds5JTc3t8zjFy9erI4dOyo6OlrVq1fXmDFjXPps48aN5f5MbNy4UT4+PqVGqVS2t956SwsWLNDChQu1YcMGvfbaa3r22Wf12muvnXUbhmFo2LBhioyM1Ndff621a9eqZ8+e6tGjhw4ePCipZCRY06ZN1a9fvzO2FxQUpJycnHO+JgAAAOBMKIKgSgUFBVVKO3/9hdhms8nhcJz2HJvNVmpqR2FhofPvbdq00Z49ezRp0iTl5ubqjjvu0G233XZB44yOjtY111yjhQsXSpIWLlyovn37OvcvWrRI//rXv3TPPffos88+08aNGzVo0CCX6SdnUlRU5OyHgoICl0LOn6dYZGdna8eOHWrQoEGZ7Zw8eVJt27bVxo0bXb62b9/unL5TGc7me+Zcvh8kKSEhQS1atNDgwYM1cuRIPf7445Kk9evX69ChQ2rTpo18fX3l6+urlStXasaMGfL19XUpFP1Z7dq1SxWNVq1apb59++rGG2/URx99pB9++EGPPfaYS5+d7hor+jMTHR0tSUpPT3fZnp6e7txXlocffliPPvqoevfurRYtWuiuu+7SyJEjNXny5LNu94svvtBHH32kRYsWqWPHjmrTpo1eeOEFBQUFOYspX3zxhZYsWeK8r6eKP7Vr19b48eNd2j527JgiIiIqdP0AAABARVAEQZVq1KiRgoKClJqaWub+pk2batOmTcrOznZu+/bbb2W329WkSZPzeu+IiAjnp9GStGPHjlKfMoeGhqpXr16aO3euFi9erP/973/OtSkuVJx9+/bV4sWLtWrVKu3evVu9e/d2eY8rrrhCDzzwgC699FI1bNjQZdTF2WjYsKF++uknSVKnTp20aNEibd26VYWFhXryySclSYcPH9bdd9+tm2++WZGRkWW206ZNG+3YsUORkZFq2LChy9efH0m8adMm5ebmOl+vXr1a1atXV1xcnBo0aCB/f399++23zv2FhYVat26dmjVrJklq2bKlvv76a5eCVVVwOBzKz8+XJHXp0kU//fSTS3GnXbt26tu3r3NkRlkuvfRSbd261aXY9t133+miiy7SY489pnbt2qlRo0b69ddfXc5r2bJluT8TLVq0kMPh0MqVK8/qOhISEhQdHe3SXlZWltasWaMOHTqUe15OTk6p9Tl8fHycxaSzaffUz9Nf27Hb7c52/ve//2nTpk3O+/ryyy9LKhmVM2zYMOc5u3btUl5eni699NKzum4AAADgXFAEQZUKDAzUI488on//+996/fXXtWvXLq1evVopKSmSSgoAgYGBGjBggDZv3qwvv/xSw4cP11133eVcPPVcXXPNNXr++ef1ww8/6Pvvv9f999/vMoJg2rRpevPNN7V161Zt375dS5YsUXR0tGrUqFGqraqM8x//+IdOnDihoUOH6uqrr1ZsbKxzX6NGjfT999/r008/1fbt2zV27FitW7euQu3fcsstevnll1VYWKhbb71VN910k5o1a6bg4GBlZGQoNjZWXbt2VZ06dTRnzpxy2+nbt69q166tm2++WV9//bX27NmjFStW6MEHH9Tvv//uPK6goED33HOPfvnlF3388ccaP368kpKSZLfbVa1aNQ0dOlQPP/ywli1bpl9++UWDBw9WTk6O8zGzSUlJysrKUu/evfX9999rx44deuONN1ymHVXUrFmz9OGHH2rHjh3asWOHUlJS9OyzzzqnaISEhKh58+YuX9WqVVOtWrXUvHnzctu9+uqrdfLkSf3888/ObY0aNdK+ffu0aNEi7dq1SzNmzNC7777rct748eP15ptvavz48dqyZYt++uknPf3005Kk+Ph4DRgwQHfffbfee+89530ubzFcm82mESNG6IknntAHH3ygn376Sf3791dsbKx69uzpPK5Lly56/vnnna979OihJ598UkuXLtXevXv17rvvatq0abrlllvOut0OHTqoZs2aGjBggDZt2qTt27fr4Ycf1p49e9S9e3dJUoMGDVzua0JCgqSSwuKfC25ff/216tevX+5IJAAAAKAy+JodALzf2LFj5evrq3HjxunAgQOKiYnR/fffL0kKDg7Wp59+qoceekiXXXaZgoODdeutt2ratGnn/b7/+c9/NGjQIP3tb39TbGys/vvf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", | |
| "text/plain": [ | |
| "<Figure size 1100x750 with 4 Axes>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "import matplotlib\n", | |
| "import matplotlib.pyplot as plt\n", | |
| "\n", | |
| "STAT_PANELS_CLS = ('accuracy', 'precision', 'recall', 'f1')\n", | |
| "\n", | |
| "best_epoch = int(history['best_epoch'])\n", | |
| "epochs = np.asarray(history['epoch'])\n", | |
| "GRIDS = sorted({g for m in history['train_metrics'] + history['val_metrics']\n", | |
| " for g in m.get('kd_grid_cosine', {})}, reverse=True)\n", | |
| " \n", | |
| "if not history.get('epoch'):\n", | |
| " print('NO HISTORY')\n", | |
| "else:\n", | |
| " epochs = np.asarray(history['epoch'], dtype=np.int64)\n", | |
| " best_epoch_marker = int(history['best_epoch'])\n", | |
| " use_kd = bool(CONFIG['USE_DISTILL'])\n", | |
| " kd_grids = sorted({grid for split in ('train_metrics', 'val_metrics')\n", | |
| " for metrics in history[split]\n", | |
| " for grid in metrics.get('kd_grid_cosine', {})}, reverse=True)\n", | |
| " best_index = (int(np.flatnonzero(epochs == best_epoch_marker)[0])\n", | |
| " if best_epoch_marker in epochs.tolist() else len(epochs) - 1)\n", | |
| " fig, axes = new_figure('Losses')\n", | |
| " plot_train_val(axes[0, 0], 'loss')\n", | |
| " plot_train_val(axes[0, 1], 'cls_loss')\n", | |
| " if use_kd:\n", | |
| " plot_train_val(axes[1, 0], 'kd_loss')\n", | |
| " else:\n", | |
| " blank_panel(axes[1, 0], 'kd_loss: kosong (USE_DISTILL=False)')\n", | |
| " if use_kd and kd_grids:\n", | |
| " for grid in kd_grids:\n", | |
| " for split, linestyle, prefix in (('train_metrics', '-', 'train'),\n", | |
| " ('val_metrics', '--', 'val')):\n", | |
| " axes[1, 1].plot(epoch_axis(), kd_series(split, grid),\n", | |
| " ls=linestyle, label='%s g%d' % (prefix, grid))\n", | |
| " style_axis(axes[1, 1], 'kd_grid_cosine (cosine per grid)')\n", | |
| " axes[1, 1].legend(fontsize=7, ncol=2)\n", | |
| " else:\n", | |
| " blank_panel(axes[1, 1], 'kd_grid_cosine: kosong (USE_DISTILL=False)')\n", | |
| " save_figure(fig, f'{RUN_TAG}_loss.png')\n", | |
| " fig, axes = new_figure('Classification')\n", | |
| " for ax, metric in zip(axes.ravel(), STAT_PANELS_CLS):\n", | |
| " plot_train_val(ax, metric)\n", | |
| " save_figure(fig, f'{RUN_TAG}_cls.png')\n", | |
| " fig, axes = new_figure('Ranking & confusion')\n", | |
| " plot_train_val(axes[0, 0], 'roc_auc')\n", | |
| " plot_train_val(axes[0, 1], 'pr_auc')\n", | |
| " confusion_panel(axes[1, 0], best_index)\n", | |
| " blank_panel(axes[1, 1])\n", | |
| " save_figure(fig, f'{RUN_TAG}_confusion.png')\n", | |
| " plt.show()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "id": "1537e512", | |
| "metadata": {}, | |
| "source": [ | |
| "# Test" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 84, | |
| "id": "2d7de0b9", | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "[RadImageNet] 318/318 tensor loaded | strict=True | 0 missing / 0 unexpected\n" | |
| ] | |
| }, | |
| { | |
| "name": "stderr", | |
| "output_type": "stream", | |
| "text": [ | |
| "Building test information: 100%|██████████| 22/22 [00:00<00:00, 4757.16it/s]\n", | |
| "Test: 39%|███▉ | 64/165 [00:02<00:04, 22.66it/s]\n", | |
| "Exception in thread Thread-117 (_pin_memory_loop):\n", | |
| "Traceback (most recent call last):\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/threading.py\", line 1016, in _bootstrap_inner\n", | |
| " self.run()\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/threading.py\", line 953, in run\n", | |
| " self._target(*self._args, **self._kwargs)\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/utils/data/_utils/pin_memory.py\", line 59, in _pin_memory_loop\n", | |
| " do_one_step()\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/utils/data/_utils/pin_memory.py\", line 35, in do_one_step\n", | |
| " r = in_queue.get(timeout=MP_STATUS_CHECK_INTERVAL)\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/multiprocessing/queues.py\", line 122, in get\n", | |
| " return _ForkingPickler.loads(res)\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/multiprocessing/reductions.py\", line 541, in rebuild_storage_fd\n", | |
| " fd = df.detach()\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/multiprocessing/resource_sharer.py\", line 58, in detach\n", | |
| " return reduction.recv_handle(conn)\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/multiprocessing/reduction.py\", line 189, in recv_handle\n", | |
| " return recvfds(s, 1)[0]\n", | |
| " File \"/home/skibidi/miniconda3/envs/pre_thesis/lib/python3.10/multiprocessing/reduction.py\", line 157, in recvfds\n", | |
| " msg, ancdata, flags, addr = sock.recvmsg(1, socket.CMSG_SPACE(bytes_size))\n", | |
| "ConnectionResetError: [Errno 104] Connection reset by peer\n" | |
| ] | |
| }, | |
| { | |
| "ename": "KeyboardInterrupt", | |
| "evalue": "", | |
| "output_type": "error", | |
| "traceback": [ | |
| "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", | |
| "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", | |
| "Cell \u001b[0;32mIn[84], line 38\u001b[0m\n\u001b[1;32m 36\u001b[0m probs_test, labels_test, pids_test \u001b[38;5;241m=\u001b[39m [], [], []\n\u001b[1;32m 37\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m torch\u001b[38;5;241m.\u001b[39mno_grad():\n\u001b[0;32m---> 38\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m batch \u001b[38;5;129;01min\u001b[39;00m tqdm(test_loader, desc\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mTest\u001b[39m\u001b[38;5;124m'\u001b[39m):\n\u001b[1;32m 39\u001b[0m ct, _, _, label, patient_idx, _ \u001b[38;5;241m=\u001b[39m batch\n\u001b[1;32m 40\u001b[0m logits \u001b[38;5;241m=\u001b[39m eval_model(ct\u001b[38;5;241m.\u001b[39mto(device, non_blocking\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mTrue\u001b[39;00m)\u001b[38;5;241m.\u001b[39mfloat())\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/tqdm/std.py:1187\u001b[0m, in \u001b[0;36mtqdm.__iter__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 1184\u001b[0m time \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_time\n\u001b[1;32m 1186\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 1187\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m obj \u001b[38;5;129;01min\u001b[39;00m iterable:\n\u001b[1;32m 1188\u001b[0m \u001b[38;5;28;01myield\u001b[39;00m obj\n\u001b[1;32m 1189\u001b[0m \u001b[38;5;66;03m# Update and possibly print the progress bar.\u001b[39;00m\n\u001b[1;32m 1190\u001b[0m \u001b[38;5;66;03m# Note: does not call self.update(1) for speed optimisation.\u001b[39;00m\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/utils/data/dataloader.py:708\u001b[0m, in \u001b[0;36m_BaseDataLoaderIter.__next__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 705\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_sampler_iter \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 706\u001b[0m \u001b[38;5;66;03m# TODO(https://github.com/pytorch/pytorch/issues/76750)\u001b[39;00m\n\u001b[1;32m 707\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_reset() \u001b[38;5;66;03m# type: ignore[call-arg]\u001b[39;00m\n\u001b[0;32m--> 708\u001b[0m data \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_next_data\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 709\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_num_yielded \u001b[38;5;241m+\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;241m1\u001b[39m\n\u001b[1;32m 710\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m (\n\u001b[1;32m 711\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_dataset_kind \u001b[38;5;241m==\u001b[39m _DatasetKind\u001b[38;5;241m.\u001b[39mIterable\n\u001b[1;32m 712\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_IterableDataset_len_called \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m 713\u001b[0m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_num_yielded \u001b[38;5;241m>\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_IterableDataset_len_called\n\u001b[1;32m 714\u001b[0m ):\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/utils/data/dataloader.py:1458\u001b[0m, in \u001b[0;36m_MultiProcessingDataLoaderIter._next_data\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 1455\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_process_data(data)\n\u001b[1;32m 1457\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_shutdown \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_tasks_outstanding \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m0\u001b[39m\n\u001b[0;32m-> 1458\u001b[0m idx, data \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_data\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1459\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_tasks_outstanding \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;241m1\u001b[39m\n\u001b[1;32m 1460\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_dataset_kind \u001b[38;5;241m==\u001b[39m _DatasetKind\u001b[38;5;241m.\u001b[39mIterable:\n\u001b[1;32m 1461\u001b[0m \u001b[38;5;66;03m# Check for _IterableDatasetStopIteration\u001b[39;00m\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/utils/data/dataloader.py:1410\u001b[0m, in \u001b[0;36m_MultiProcessingDataLoaderIter._get_data\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 1408\u001b[0m \u001b[38;5;28;01melif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_pin_memory:\n\u001b[1;32m 1409\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_pin_memory_thread\u001b[38;5;241m.\u001b[39mis_alive():\n\u001b[0;32m-> 1410\u001b[0m success, data \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_try_get_data\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1411\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m success:\n\u001b[1;32m 1412\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m data\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/site-packages/torch/utils/data/dataloader.py:1251\u001b[0m, in \u001b[0;36m_MultiProcessingDataLoaderIter._try_get_data\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m 1238\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;21m_try_get_data\u001b[39m(\u001b[38;5;28mself\u001b[39m, timeout\u001b[38;5;241m=\u001b[39m_utils\u001b[38;5;241m.\u001b[39mMP_STATUS_CHECK_INTERVAL):\n\u001b[1;32m 1239\u001b[0m \u001b[38;5;66;03m# Tries to fetch data from `self._data_queue` once for a given timeout.\u001b[39;00m\n\u001b[1;32m 1240\u001b[0m \u001b[38;5;66;03m# This can also be used as inner loop of fetching without timeout, with\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 1248\u001b[0m \u001b[38;5;66;03m# Returns a 2-tuple:\u001b[39;00m\n\u001b[1;32m 1249\u001b[0m \u001b[38;5;66;03m# (bool: whether successfully get data, any: data if successful else None)\u001b[39;00m\n\u001b[1;32m 1250\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 1251\u001b[0m data \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_data_queue\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 1252\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m (\u001b[38;5;28;01mTrue\u001b[39;00m, data)\n\u001b[1;32m 1253\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mException\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[1;32m 1254\u001b[0m \u001b[38;5;66;03m# At timeout and error, we manually check whether any worker has\u001b[39;00m\n\u001b[1;32m 1255\u001b[0m \u001b[38;5;66;03m# failed. Note that this is the only mechanism for Windows to detect\u001b[39;00m\n\u001b[1;32m 1256\u001b[0m \u001b[38;5;66;03m# worker failures.\u001b[39;00m\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/queue.py:180\u001b[0m, in \u001b[0;36mQueue.get\u001b[0;34m(self, block, timeout)\u001b[0m\n\u001b[1;32m 178\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m remaining \u001b[38;5;241m<\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;241m0.0\u001b[39m:\n\u001b[1;32m 179\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m Empty\n\u001b[0;32m--> 180\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mnot_empty\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mwait\u001b[49m\u001b[43m(\u001b[49m\u001b[43mremaining\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 181\u001b[0m item \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_get()\n\u001b[1;32m 182\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mnot_full\u001b[38;5;241m.\u001b[39mnotify()\n", | |
| "File \u001b[0;32m~/miniconda3/envs/pre_thesis/lib/python3.10/threading.py:324\u001b[0m, in \u001b[0;36mCondition.wait\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m 322\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 323\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m timeout \u001b[38;5;241m>\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[0;32m--> 324\u001b[0m gotit \u001b[38;5;241m=\u001b[39m \u001b[43mwaiter\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43macquire\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m 325\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 326\u001b[0m gotit \u001b[38;5;241m=\u001b[39m waiter\u001b[38;5;241m.\u001b[39macquire(\u001b[38;5;28;01mFalse\u001b[39;00m)\n", | |
| "\u001b[0;31mKeyboardInterrupt\u001b[0m: " | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "from sklearn.metrics import (classification_report, confusion_matrix,\n", | |
| " roc_curve, precision_recall_curve)\n", | |
| "import matplotlib.pyplot as plt\n", | |
| "\n", | |
| "TEST_THRESHOLD = 0.50\n", | |
| "TEST_LOG_NAME = 'test.log'\n", | |
| "\n", | |
| "if 'RUN_TAG' not in globals():\n", | |
| " RUN_TAG = 'p2_%s-%s%s' % (CONFIG['STUDENT'], CONFIG['TEACHER'],\n", | |
| " '-kd' if CONFIG['USE_DISTILL'] else '')\n", | |
| "if 'CHECKPOINT_DIR' not in globals():\n", | |
| " CHECKPOINT_DIR = os.path.join(OUTPUT_DIR, RUN_TAG)\n", | |
| "\n", | |
| "\n", | |
| "device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\n", | |
| "checkpoint_path = os.path.join(CHECKPOINT_DIR, BEST_CHECKPOINT_NAME)\n", | |
| "if not os.path.exists(checkpoint_path):\n", | |
| " raise FileNotFoundError('checkpoint belum ada: %s' % checkpoint_path)\n", | |
| "checkpoint = torch.load(checkpoint_path, map_location=device, weights_only=False)\n", | |
| "if checkpoint.get('run_tag') != RUN_TAG:\n", | |
| " raise SystemExit('checkpoint %r bukan untuk run %r'\n", | |
| " % (checkpoint.get('run_tag'), RUN_TAG))\n", | |
| "\n", | |
| "eval_model = ClassificationModel(pretrained=True, dropout=CONFIG['DROPOUT']).to(device)\n", | |
| "eval_model.load_state_dict(checkpoint['model_state_dict'])\n", | |
| "eval_model.eval()\n", | |
| "\n", | |
| "test_labels, test_paths = build_information(dataset_dir=DATASET_DIR, split_name='test')\n", | |
| "test_dataset = StrokeDataset(label_list=test_labels, image_path_dict=test_paths,\n", | |
| " augment=False, phase=4,\n", | |
| " slice_context=CONFIG['SLICE_CONTEXT'])\n", | |
| "test_loader = DataLoader(test_dataset, batch_size=CONFIG['BATCH_SIZE'], shuffle=False,\n", | |
| " num_workers=CONFIG['WORKERS'], pin_memory=True,\n", | |
| " worker_init_fn=seed_worker, drop_last=False)\n", | |
| "\n", | |
| "probs_test, labels_test, pids_test = [], [], []\n", | |
| "with torch.no_grad():\n", | |
| " for batch in tqdm(test_loader, desc='Test'):\n", | |
| " ct, _, _, label, patient_idx, _ = batch\n", | |
| " logits = eval_model(ct.to(device, non_blocking=True).float())\n", | |
| " probs_test.append(torch.sigmoid(logits.detach()).cpu().reshape(-1))\n", | |
| " labels_test.append(label.detach().cpu().reshape(-1))\n", | |
| " pids_test.append(np.asarray(patient_idx).reshape(-1))\n", | |
| "\n", | |
| "probs_test = torch.cat(probs_test).numpy().astype(np.float64)\n", | |
| "labels_test = torch.cat(labels_test).numpy().astype(np.int64)\n", | |
| "pids_test = np.concatenate(pids_test)\n", | |
| "preds_test = (probs_test >= TEST_THRESHOLD).astype(np.int64)\n", | |
| "\n", | |
| "accuracy, precision, recall, f1, roc_auc, pr_auc, counts = calculate_metrics_cls(\n", | |
| " torch.from_numpy(preds_test), torch.from_numpy(labels_test),\n", | |
| " torch.from_numpy(probs_test))\n", | |
| "test_ci, n_test_patient = cluster_metric_ci(\n", | |
| " preds_test, labels_test, probs_test, pids_test,\n", | |
| " draws=min(CONFIG['BOOTSTRAP_DRAWS'], 1000),\n", | |
| " seed=CONFIG.get('BOOTSTRAP_SEED', 42))\n", | |
| "\n", | |
| "report = classification_report(labels_test, preds_test,\n", | |
| " target_names=['Negative', 'Positive'],\n", | |
| " digits=4, zero_division=0)\n", | |
| "matrix = confusion_matrix(labels_test, preds_test, labels=[0, 1])\n", | |
| "\n", | |
| "poin = (('Acc', 'accuracy', accuracy), ('Prec', 'precision', precision),\n", | |
| " ('Rec', 'recall', recall), ('F1', 'f1', f1),\n", | |
| " ('AUC', 'roc_auc', roc_auc), ('PR-AUC', 'pr_auc', pr_auc))\n", | |
| "\n", | |
| "n_epoch = len(history.get('epoch', [])) if 'history' in globals() else 0\n", | |
| "total_epoch = int(CONFIG['EPOCHS'])\n", | |
| "baris = ['Test - threshold %.2f' % TEST_THRESHOLD,\n", | |
| " 'run : %s' % RUN_TAG,\n", | |
| " 'ckpt : epoch %d | F1 val %.4f | AUC val %.4f'\n", | |
| " % (checkpoint['epoch'], checkpoint['val_f1'], checkpoint['val_auc']),\n", | |
| " 'henti : %s'\n", | |
| " % (('early stop di epoch %d dari %d -- kurva di grafik diulang datar'\n", | |
| " % (n_epoch, total_epoch)) if 0 < n_epoch < total_epoch\n", | |
| " else 'selesai %d/%d epoch' % (n_epoch, total_epoch)),\n", | |
| " 'irisan: %d | pasien: %d' % (labels_test.size, n_test_patient),\n", | |
| " '',\n", | |
| " report.rstrip(),\n", | |
| " '',\n", | |
| " 'confusion (baris=true, kolom=pred)',\n", | |
| " ' pred 0 pred 1',\n", | |
| " 'true 0 %8d %8d' % (matrix[0, 0], matrix[0, 1]),\n", | |
| " 'true 1 %8d %8d' % (matrix[1, 0], matrix[1, 1]),\n", | |
| " '',\n", | |
| " 'metrik nilai 95%% CI (%d pasien)' % n_test_patient]\n", | |
| "for nama, kunci, nilai in poin:\n", | |
| " if kunci in test_ci:\n", | |
| " low, high = test_ci[kunci]\n", | |
| " baris.append('%-9s %.4f [%.4f, %.4f]' % (nama, nilai, low, high))\n", | |
| " else:\n", | |
| " baris.append('%-9s %.4f -' % (nama, nilai))\n", | |
| "\n", | |
| "print('\\n'.join(baris))\n", | |
| "with open(os.path.join(CHECKPOINT_DIR, TEST_LOG_NAME), 'a', encoding='utf-8') as log_file:\n", | |
| " log_file.write('\\n'.join(baris) + '\\n\\n')\n", | |
| "\n", | |
| "fig, axes = new_figure('Test @ threshold %.2f' % TEST_THRESHOLD)\n", | |
| "\n", | |
| "axes[0, 0].imshow(matrix, cmap='Blues')\n", | |
| "for (row, kolom), jumlah in np.ndenumerate(matrix):\n", | |
| " axes[0, 0].text(kolom, row, '%d' % jumlah, ha='center', va='center', fontsize=11,\n", | |
| " color='white' if jumlah > 0.6 * matrix.max() else 'black')\n", | |
| "axes[0, 0].set_xticks([0, 1]); axes[0, 0].set_yticks([0, 1])\n", | |
| "axes[0, 0].set_xticklabels(['pred 0', 'pred 1'])\n", | |
| "axes[0, 0].set_yticklabels(['true 0', 'true 1'])\n", | |
| "axes[0, 0].set_title('confusion (acc %.4f)' % accuracy, fontsize=10)\n", | |
| "axes[0, 0].grid(False)\n", | |
| "\n", | |
| "fpr, tpr, _ = roc_curve(labels_test, probs_test)\n", | |
| "axes[0, 1].plot(fpr, tpr, color='tab:blue')\n", | |
| "axes[0, 1].plot([0, 1], [0, 1], color='0.7', ls='--', lw=0.8)\n", | |
| "axes[0, 1].set_title('ROC (AUC %.4f)' % roc_auc, fontsize=10)\n", | |
| "axes[0, 1].set_xlabel('false positive rate')\n", | |
| "axes[0, 1].set_ylabel('true positive rate')\n", | |
| "axes[0, 1].grid(alpha=0.3)\n", | |
| "\n", | |
| "precision_curve, recall_curve, _ = precision_recall_curve(labels_test, probs_test)\n", | |
| "axes[1, 0].plot(recall_curve, precision_curve, color='tab:orange')\n", | |
| "axes[1, 0].axhline(labels_test.mean(), color='0.7', ls='--', lw=0.8)\n", | |
| "axes[1, 0].set_title('PR (AP %.4f, baseline %.4f)'\n", | |
| " % (pr_auc, labels_test.mean()), fontsize=10)\n", | |
| "axes[1, 0].set_xlabel('recall')\n", | |
| "axes[1, 0].set_ylabel('precision')\n", | |
| "axes[1, 0].grid(alpha=0.3)\n", | |
| "\n", | |
| "punya_ci = [(nama, kunci, nilai) for nama, kunci, nilai in poin if kunci in test_ci]\n", | |
| "nama_metrik = [nama for nama, _, _ in punya_ci]\n", | |
| "nilai_metrik = np.asarray([nilai for _, _, nilai in punya_ci])\n", | |
| "kunci_metrik = [kunci for _, kunci, _ in punya_ci]\n", | |
| "low_metrik = np.asarray([test_ci[kunci][0] for kunci in kunci_metrik])\n", | |
| "high_metrik = np.asarray([test_ci[kunci][1] for kunci in kunci_metrik])\n", | |
| "aksis_y = np.arange(len(nama_metrik))\n", | |
| "axes[1, 1].errorbar(nilai_metrik, aksis_y,\n", | |
| " xerr=[nilai_metrik - low_metrik, high_metrik - nilai_metrik],\n", | |
| " fmt='o', color='tab:blue', ecolor='0.45', capsize=3)\n", | |
| "axes[1, 1].set_yticks(aksis_y)\n", | |
| "axes[1, 1].set_yticklabels(nama_metrik)\n", | |
| "axes[1, 1].set_xlim(0, 1)\n", | |
| "axes[1, 1].set_title('metrik + 95%% CI (%d pasien)' % n_test_patient, fontsize=10)\n", | |
| "axes[1, 1].grid(alpha=0.3)\n", | |
| "\n", | |
| "save_figure(fig, '%s_test.png' % RUN_TAG)\n", | |
| "plt.show()" | |
| ] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "pre_thesis", | |
| "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.20" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 5 | |
| } | |
Xet Storage Details
- Size:
- 484 kB
- Xet hash:
- 8cf3f1d5000c52fcd129e7cb54454ed0ff23b47797695159c7268cf48839896f
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.