{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"id": "7cd0d8fa",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Collecting gradio\n",
" Downloading gradio-3.36.0-py3-none-any.whl (19.8 MB)\n",
" 0.0/19.8 MB ? eta -:--:--\n",
" 0.0/19.8 MB ? eta -:--:--\n",
" 0.0/19.8 MB 325.1 kB/s eta 0:01:01\n",
" 0.1/19.8 MB 744.7 kB/s eta 0:00:27\n",
" 0.3/19.8 MB 1.4 MB/s eta 0:00:14\n",
" 0.5/19.8 MB 2.2 MB/s eta 0:00:09\n",
" - 1.0/19.8 MB 3.7 MB/s eta 0:00:06\n",
" -- 1.0/19.8 MB 3.4 MB/s eta 0:00:06\n",
" ---- 2.0/19.8 MB 5.9 MB/s eta 0:00:04\n",
" ---- 2.1/19.8 MB 5.4 MB/s eta 0:00:04\n",
" ------ 3.0/19.8 MB 6.9 MB/s eta 0:00:03\n",
" ------- 3.6/19.8 MB 7.4 MB/s eta 0:00:03\n",
" -------- 4.1/19.8 MB 7.8 MB/s eta 0:00:03\n",
" --------- 4.7/19.8 MB 8.1 MB/s eta 0:00:02\n",
" ---------- 5.2/19.8 MB 8.3 MB/s eta 0:00:02\n",
" ----------- 5.7/19.8 MB 8.5 MB/s eta 0:00:02\n",
" ------------ 6.3/19.8 MB 8.8 MB/s eta 0:00:02\n",
" ------------- 6.9/19.8 MB 8.9 MB/s eta 0:00:02\n",
" -------------- 7.4/19.8 MB 9.1 MB/s eta 0:00:02\n",
" ---------------- 7.9/19.8 MB 9.2 MB/s eta 0:00:02\n",
" ----------------- 8.5/19.8 MB 9.3 MB/s eta 0:00:02\n",
" ------------------ 9.0/19.8 MB 9.5 MB/s eta 0:00:02\n",
" ------------------- 9.6/19.8 MB 9.6 MB/s eta 0:00:02\n",
" -------------------- 10.1/19.8 MB 9.7 MB/s eta 0:00:02\n",
" -------------------- 10.7/19.8 MB 11.5 MB/s eta 0:00:01\n",
" --------------------- 11.1/19.8 MB 11.7 MB/s eta 0:00:01\n",
" ----------------------- 11.7/19.8 MB 11.9 MB/s eta 0:00:01\n",
" ----------------------- 12.1/19.8 MB 11.5 MB/s eta 0:00:01\n",
" ------------------------ 12.6/19.8 MB 11.7 MB/s eta 0:00:01\n",
" ------------------------- 13.1/19.8 MB 11.3 MB/s eta 0:00:01\n",
" -------------------------- 13.5/19.8 MB 11.5 MB/s eta 0:00:01\n",
" --------------------------- 13.9/19.8 MB 11.3 MB/s eta 0:00:01\n",
" ---------------------------- 14.4/19.8 MB 11.1 MB/s eta 0:00:01\n",
" ----------------------------- 14.9/19.8 MB 10.9 MB/s eta 0:00:01\n",
" ------------------------------ 15.4/19.8 MB 10.9 MB/s eta 0:00:01\n",
" ------------------------------- 15.8/19.8 MB 10.9 MB/s eta 0:00:01\n",
" -------------------------------- 16.3/19.8 MB 10.9 MB/s eta 0:00:01\n",
" --------------------------------- 16.8/19.8 MB 10.7 MB/s eta 0:00:01\n",
" --------------------------------- 17.3/19.8 MB 10.7 MB/s eta 0:00:01\n",
" ---------------------------------- 17.7/19.8 MB 10.7 MB/s eta 0:00:01\n",
" ----------------------------------- 18.2/19.8 MB 10.6 MB/s eta 0:00:01\n",
" ------------------------------------ 18.7/19.8 MB 10.6 MB/s eta 0:00:01\n",
" ------------------------------------- 19.1/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.7/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" -------------------------------------- 19.8/19.8 MB 10.4 MB/s eta 0:00:01\n",
" ---------------------------------------- 19.8/19.8 MB 6.7 MB/s eta 0:00:00\n",
"Collecting aiofiles (from gradio)\n",
" Using cached aiofiles-23.1.0-py3-none-any.whl (14 kB)\n",
"Requirement already satisfied: aiohttp in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (3.8.4)\n",
"Collecting altair>=4.2.0 (from gradio)\n",
" Using cached altair-5.0.1-py3-none-any.whl (471 kB)\n",
"Collecting fastapi (from gradio)\n",
" Downloading fastapi-0.99.1-py3-none-any.whl (58 kB)\n",
" 0.0/58.4 kB ? eta -:--:--\n",
" ---------------------------------------- 58.4/58.4 kB 3.0 MB/s eta 0:00:00\n",
"Collecting ffmpy (from gradio)\n",
" Using cached ffmpy-0.3.0.tar.gz (4.8 kB)\n",
" Preparing metadata (setup.py): started\n",
" Preparing metadata (setup.py): finished with status 'done'\n",
"Collecting gradio-client>=0.2.7 (from gradio)\n",
" Using cached gradio_client-0.2.7-py3-none-any.whl (288 kB)\n",
"Collecting httpx (from gradio)\n",
" Using cached httpx-0.24.1-py3-none-any.whl (75 kB)\n",
"Requirement already satisfied: huggingface-hub>=0.14.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (0.16.2)\n",
"Requirement already satisfied: jinja2 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (3.1.2)\n",
"Requirement already satisfied: markdown-it-py[linkify]>=2.0.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (3.0.0)\n",
"Requirement already satisfied: markupsafe in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (2.1.1)\n",
"Requirement already satisfied: matplotlib in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (3.7.1)\n",
"Collecting mdit-py-plugins<=0.3.3 (from gradio)\n",
" Using cached mdit_py_plugins-0.3.3-py3-none-any.whl (50 kB)\n",
"Requirement already satisfied: numpy in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (1.23.5)\n",
"Requirement already satisfied: orjson in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (3.9.1)\n",
"Requirement already satisfied: pandas in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (2.0.2)\n",
"Requirement already satisfied: pillow in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (9.4.0)\n",
"Requirement already satisfied: pydantic in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (1.10.9)\n",
"Collecting pydub (from gradio)\n",
" Using cached pydub-0.25.1-py2.py3-none-any.whl (32 kB)\n",
"Requirement already satisfied: pygments>=2.12.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (2.15.1)\n",
"Collecting python-multipart (from gradio)\n",
" Using cached python_multipart-0.0.6-py3-none-any.whl (45 kB)\n",
"Requirement already satisfied: pyyaml in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (6.0)\n",
"Requirement already satisfied: requests in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio) (2.29.0)\n",
"Collecting semantic-version (from gradio)\n",
" Using cached semantic_version-2.10.0-py2.py3-none-any.whl (15 kB)\n",
"Collecting uvicorn>=0.14.0 (from gradio)\n",
" Using cached uvicorn-0.22.0-py3-none-any.whl (58 kB)\n",
"Collecting websockets>=10.0 (from gradio)\n",
" Using cached websockets-11.0.3-cp310-cp310-win_amd64.whl (124 kB)\n",
"Requirement already satisfied: jsonschema>=3.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from altair>=4.2.0->gradio) (4.17.3)\n",
"Collecting toolz (from altair>=4.2.0->gradio)\n",
" Downloading toolz-0.12.0-py3-none-any.whl (55 kB)\n",
" 0.0/55.8 kB ? eta -:--:--\n",
" ---------------------------------------- 55.8/55.8 kB ? eta 0:00:00\n",
"Requirement already satisfied: typing-extensions>=4.0.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from altair>=4.2.0->gradio) (4.6.3)\n",
"Requirement already satisfied: fsspec in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio-client>=0.2.7->gradio) (2023.6.0)\n",
"Requirement already satisfied: packaging in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from gradio-client>=0.2.7->gradio) (23.0)\n",
"Requirement already satisfied: filelock in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from huggingface-hub>=0.14.0->gradio) (3.9.0)\n",
"Requirement already satisfied: tqdm>=4.42.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from huggingface-hub>=0.14.0->gradio) (4.65.0)\n",
"Requirement already satisfied: mdurl~=0.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from markdown-it-py[linkify]>=2.0.0->gradio) (0.1.2)\n",
"Collecting linkify-it-py<3,>=1 (from markdown-it-py[linkify]>=2.0.0->gradio)\n",
" Using cached linkify_it_py-2.0.2-py3-none-any.whl (19 kB)\n",
"INFO: pip is looking at multiple versions of mdit-py-plugins to determine which version is compatible with other requirements. This could take a while.\n",
"Collecting mdit-py-plugins<=0.3.3 (from gradio)\n",
" Using cached mdit_py_plugins-0.3.2-py3-none-any.whl (50 kB)\n",
" Using cached mdit_py_plugins-0.3.1-py3-none-any.whl (46 kB)\n",
" Using cached mdit_py_plugins-0.3.0-py3-none-any.whl (43 kB)\n",
" Using cached mdit_py_plugins-0.2.8-py3-none-any.whl (41 kB)\n",
" Using cached mdit_py_plugins-0.2.7-py3-none-any.whl (41 kB)\n",
" Using cached mdit_py_plugins-0.2.6-py3-none-any.whl (39 kB)\n",
" Using cached mdit_py_plugins-0.2.5-py3-none-any.whl (39 kB)\n",
"INFO: pip is looking at multiple versions of mdit-py-plugins to determine which version is compatible with other requirements. This could take a while.\n",
" Using cached mdit_py_plugins-0.2.4-py3-none-any.whl (39 kB)\n",
" Using cached mdit_py_plugins-0.2.3-py3-none-any.whl (39 kB)\n",
" Using cached mdit_py_plugins-0.2.2-py3-none-any.whl (39 kB)\n",
" Using cached mdit_py_plugins-0.2.1-py3-none-any.whl (38 kB)\n",
" Using cached mdit_py_plugins-0.2.0-py3-none-any.whl (38 kB)\n",
"INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.\n",
" Using cached mdit_py_plugins-0.1.0-py3-none-any.whl (37 kB)\n",
"Collecting markdown-it-py[linkify]>=2.0.0 (from gradio)\n",
" Using cached markdown_it_py-3.0.0-py3-none-any.whl (87 kB)\n",
" Using cached markdown_it_py-2.2.0-py3-none-any.whl (84 kB)\n",
"Requirement already satisfied: python-dateutil>=2.8.2 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from pandas->gradio) (2.8.2)\n",
"Requirement already satisfied: pytz>=2020.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from pandas->gradio) (2023.3)\n",
"Requirement already satisfied: tzdata>=2022.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from pandas->gradio) (2023.3)\n",
"Requirement already satisfied: click>=7.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from uvicorn>=0.14.0->gradio) (8.1.3)\n",
"Collecting h11>=0.8 (from uvicorn>=0.14.0->gradio)\n",
" Using cached h11-0.14.0-py3-none-any.whl (58 kB)\n",
"Requirement already satisfied: attrs>=17.3.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (22.1.0)\n",
"Requirement already satisfied: charset-normalizer<4.0,>=2.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (2.0.4)\n",
"Requirement already satisfied: multidict<7.0,>=4.5 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (6.0.4)\n",
"Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (4.0.2)\n",
"Requirement already satisfied: yarl<2.0,>=1.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (1.9.2)\n",
"Requirement already satisfied: frozenlist>=1.1.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (1.3.3)\n",
"Requirement already satisfied: aiosignal>=1.1.2 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from aiohttp->gradio) (1.3.1)\n",
"Collecting starlette<0.28.0,>=0.27.0 (from fastapi->gradio)\n",
" Using cached starlette-0.27.0-py3-none-any.whl (66 kB)\n",
"Requirement already satisfied: certifi in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from httpx->gradio) (2023.5.7)\n",
"Collecting httpcore<0.18.0,>=0.15.0 (from httpx->gradio)\n",
" Downloading httpcore-0.17.3-py3-none-any.whl (74 kB)\n",
" 0.0/74.5 kB ? eta -:--:--\n",
" ---------------------------------------- 74.5/74.5 kB 4.0 MB/s eta 0:00:00\n",
"Requirement already satisfied: idna in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from httpx->gradio) (3.4)\n",
"Requirement already satisfied: sniffio in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from httpx->gradio) (1.2.0)\n",
"Requirement already satisfied: contourpy>=1.0.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from matplotlib->gradio) (1.1.0)\n",
"Requirement already satisfied: cycler>=0.10 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from matplotlib->gradio) (0.11.0)\n",
"Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from matplotlib->gradio) (4.40.0)\n",
"Requirement already satisfied: kiwisolver>=1.0.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from matplotlib->gradio) (1.4.4)\n",
"Requirement already satisfied: pyparsing>=2.3.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from matplotlib->gradio) (3.0.9)\n",
"Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from requests->gradio) (1.26.16)\n",
"Requirement already satisfied: colorama in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from click>=7.0->uvicorn>=0.14.0->gradio) (0.4.6)\n",
"Requirement already satisfied: anyio<5.0,>=3.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from httpcore<0.18.0,>=0.15.0->httpx->gradio) (3.5.0)\n",
"Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from jsonschema>=3.0->altair>=4.2.0->gradio) (0.18.0)\n",
"Collecting uc-micro-py (from linkify-it-py<3,>=1->markdown-it-py[linkify]>=2.0.0->gradio)\n",
" Using cached uc_micro_py-1.0.2-py3-none-any.whl (6.2 kB)\n",
"Requirement already satisfied: six>=1.5 in c:\\users\\hh\\anaconda3\\envs\\cuda118\\lib\\site-packages (from python-dateutil>=2.8.2->pandas->gradio) (1.16.0)\n",
"Building wheels for collected packages: ffmpy\n",
" Building wheel for ffmpy (setup.py): started\n",
" Building wheel for ffmpy (setup.py): finished with status 'done'\n",
" Created wheel for ffmpy: filename=ffmpy-0.3.0-py3-none-any.whl size=4712 sha256=f93e3038acd8c0ff40f475bf536d01d2ac1b3a1fa1cea06bd7b56ff3422b3f16\n",
" Stored in directory: c:\\users\\hh\\appdata\\local\\pip\\cache\\wheels\\0c\\c2\\0e\\3b9c6845c6a4e35beb90910cc70d9ac9ab5d47402bd62af0df\n",
"Successfully built ffmpy\n",
"Installing collected packages: pydub, ffmpy, websockets, uc-micro-py, toolz, semantic-version, python-multipart, markdown-it-py, h11, aiofiles, uvicorn, starlette, mdit-py-plugins, linkify-it-py, httpcore, httpx, fastapi, altair, gradio-client, gradio\n",
" Attempting uninstall: markdown-it-py\n",
" Found existing installation: markdown-it-py 3.0.0\n",
" Uninstalling markdown-it-py-3.0.0:\n",
" Successfully uninstalled markdown-it-py-3.0.0\n",
"Successfully installed aiofiles-23.1.0 altair-5.0.1 fastapi-0.99.1 ffmpy-0.3.0 gradio-3.36.0 gradio-client-0.2.7 h11-0.14.0 httpcore-0.17.3 httpx-0.24.1 linkify-it-py-2.0.2 markdown-it-py-2.2.0 mdit-py-plugins-0.3.3 pydub-0.25.1 python-multipart-0.0.6 semantic-version-2.10.0 starlette-0.27.0 toolz-0.12.0 uc-micro-py-1.0.2 uvicorn-0.22.0 websockets-11.0.3\n"
]
}
],
"source": [
"#|default_exp app\n",
"# !pip install gradio"
]
},
{
"cell_type": "markdown",
"id": "7195af18",
"metadata": {},
"source": [
"## Gradio Pets"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "44eb0ad3",
"metadata": {},
"outputs": [],
"source": [
"#|export\n",
"from fastai.vision.all import *\n",
"import gradio as gr\n",
"import timm"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "3295ef11",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAOAAAADgCAIAAACVT/22AAD380lEQVR4nLz96bMsSXYfBp7F3SMiM+/69lfv1V7V1Xs3Gt2NXoBGg9gJCBBJQJwRZsihZBraLGbzt/DbSGMc2cgoERRFGckRKYIYQgBBNEQABLobqEbvXdurqrfcNTMjfDnnzIfIzJvbvVUgxybs2X2RER4eHn5+fjY/fhx/7Fd/DBEREZYPQjNbv9jfITIzAFg8pYtbFye4dHdWeHbPqL/VVwIAgLMKZo/YopqVw8z6kmutWjRm+efadTNT1XnjZa384pFF4cXFzXctbvUnW7touRmLmvvCsz5RXfreCkARMqAi9m9ENTNQIyMoZoJGCJ4goDBgISIFJwCKYKYAysyoiIZoZCZFJ84LcqdQVBisAqtQnSmZMWgFVgEhgiAKA6MxGSBG4qzYGQY1L8DKBlwUBRHJUIt5ZgJTy4TGjJrVXA0AivPeU2Q0AkTr8WAAIKRAKGaGiub6bye76KxFF80uzDvQzNzibKU31RbUWibeFQjgJVIt6kREA1uQZyvxLiPtZW98T0CsvH3p6/oKL4PU8oObxTZ7aa3MZY1c9M9af8JibFjp7wAoAJoZGJsBEJMaIIAhAiM6UDIkorqIqBVyGAjFiqpqyUROxJg9gjahMs3dpHVEzAyKpmolStGSLSdSCYZU15VayUkqV9ehAsqAsapqACaqyTGQiaUsnZkpgnOB0ESSdyQiuQBxWKEsAKAKABqAgaCRgeJyB86KLrEFwOXeWNQzf8St0XIGJkADWyPYZaTFeY3bSY6rNFvFzXKtM+6kuM5i+5JkCBc0Xjy2RvhNfG9p0ur58odfVngrQC+r/7KRsLV+BEDQmXAwAEBTNCAUMgIkhzMhxL2IEnXI6MAMcimZCBw7VUQCCiilI1EAg5L3fN1NJq08kmwIvg6hYRZS8zUG7CLItO26ZORd4GkqBabsNE2dSGYHVVODN2AKrrG+eQKGolaKogACsigzllnDAYEQeuiAISEaas+eAMEAENAMaUs/bz16irhNSvQ3Nuu4jDfAEka3sL2llwEAotqSEDcQMFwF2QrLWXrXduRtAm6zeVeXX8bTsuBenF+Gzq2D4TJ09mJ9rXw/EHstaUZXREQmJSAGA9OCSLNuMQQAxWxamIsDJQBCh8bZtOTMDN5nwwlpQs3O6KV7N+t9l5JatuDZe24n3TsPnjx69ACzJ6wr4iwhtYIUBCWlgmw5K1CMMSOaC+jrgGTOOSNBD94HsULkDLyoc1DMDA0UDQCJCHqJ31MS0S6+96IzF/L9PcHqtmpL885b7/fNGhfXF3oVABDg5lOXMuA5v9zkmlfX8D4H4ubrtgLL5sda+bXCa2DdbPbWti0LqLU6zaRXusCMDPpOV0QEVLBeSAKYmSAiAFEQLUVVFNAEc8lExt41XnM+NT1/5cWbd65ff/buzY++/PztGzfFH0/OJ6hYVf705Pg73/rOG69Xsa3aWD162L39aPr4SE7OpikVJS8CuZwgYqgqNFdATMmKFDEAGu7U6DU0AIyEGIuGwFAQAaznaQZmAohoIAAEgAaIbGYGSIBmpth34LxntmnzS9rpnINuEgyWON1WGsAGN7pgNttUgqUCMrOEUBG28KfNansJuBWjm7hf5n9bP22TKV7IDVvXmDe/d60r1jC6lXOvyf2Vu2RLGtJiYPds1cwESG1miCoiltw6YiQHQo6dRzTIDJ3m07s3/Gc/84mf+olPHuzaIGTIrcM3wMn+DoKAWTzcp2fuvjyeyvTcHZ/CN/78rT979R124yyaT1OJIOZRWxVr41hVEXEwGAwGI8KggseTs2pIsB+mcTzc322qupt2lScgJDQE016Qw0xHVADClU7YQo5LOmpRfgWg68QQ69+w/Ngyt1v7u1lJbyQtK3kzCoEAXIyUqxVHAwFbsTau5p0LGG1lWlvVystG2madi7/vR8Vcq3Pz2dn1Xr02UCQGAFCb/RUjRTDo+RMiIDAQglcBFGJHap3pmafpJz9+95d/8fPPPD1qQot2QtCxj+wsJyNy6Bh72VpRM/R2WI2OC/JByqenk6PT0zbGysRKsa4kM1QDEQGws7M8PjtXcbu7B3U1GB+Nz45P9q/vxOOuhXYw2s1mzjG43hujBAhIZrLAKOKFQN/SLduuL1s1bsXlMX/sAnB6UcfiSm/3XCGXl9uz4A9XY+tSHWDuhNpE2NXXtxawhRm5MdIue2StW9aKLRfoFRvRdV/YRgOQiBYMW1HZ0Hr7QrEAICpAATIz7WXkXAU3ACarwYgUiIkgIp8///zOpz7xyo985rm7t7yDx2RThMgQAaOpeUeqAOaQCADEihkRt4NddwetS6PR7jOPP+S+/e3J1//00cN3T2NCE8pZVQGZAARACODs7KRUhYhilLFNs6W6DtaZ3x9gUDJC5pl+YqoAvXKNBgBiRotuMOi1lrmVfAlBbY2DXiFne30XzIwAERV6kw4MjIiW6QALlwGB9Sr9qgdgk1P2coSIeuX6ogzq1gc3v+RSzr3tsxHRbB3xy+WX1YM1YG19CwCAWj8IV4blJVrp4otUdd7nKkhkBsg9hgwUUE0VGbBX29ABkImxIxRmZoEOSls15SMfvv2lL3zg+WcH1/aKs8ceM1o0iCoFsBgqWgfIiE6VFAxAkRAoVVWFgC+9tHOwHybj5vrB4OzorTw5jnknK9auThmIQpFOLAOYmExFY8yDuoltIaJp7NqziG27uzdSs4PDHV97RDPNPTAUREwdMjBpLgCwoPLV5Ou7ewbQZfl7KQ36c+sNbNj6yBrP2GoWbAq4y062Sv81fC+sq01AXM3q1tqz1uDlApuPrDNU3Xg7bi9/aVNRZ8K9t5EWzgomM3HO55xNyQSaati2redUSq5DuXd78LM/9cMvPbd/8zrUbuqgdZiZBFABTLSYCagQRxUTcOQ8ARuIqqpk1BxcjRWM7jXnZ0iF8CdeefjhiIOPfvc773796288eGdyOo6qwEypREaHPpRJOh+nRhoCiKn13gOKpDIcDabjWImEJgAhmBkDIffdoVoAFYFtyYODiLANche3EGGZg15hFmxe2S6Otz2IeNGqrW9ZhYUQXTRpmeusoec9G7Bc+drwuIIfbz3fykHNDA02K1rI7uWmrimdW/twdqtXisxADZGmkzhsRiUJE6W2c8aVn+zs+J/5yc9/5OXrzz+9w3bkbBowOVZANcimSXRqEg0KmoIqIxKaZskmvUuLDQmMVCtysT3faQb37zaDMDq5Df/6T/78zTe+FTtwFDyZIKRSPBMRNY1PyU/OJjbVug7kUKxMjtrcNLHrHDFZkFz2r+0WK6oC1GtUpqoEQAwi0k8lLvrqPQnq1rpya6FlA2Wt8HZir7NJWcyDbn1wDiC5rMItr1gttgm79wPEKxjwe47YmW96U4zYXF1cXJw7U8BW1B4ww9V3zNQPBABSKYgUXCVZHRKoOAZGtfLk05/49Kc+dvvmoXh8EHhKmhyZmpgVg2jYARZiAVMyJQmGIGJJck8XU4mprZyhI9VokphsZ7g7HRsdNM88E37wA3vrwRMpAymM4B1CTEm1Ozsbq5gjV6wdty0zEREC5djGdlIRd61HBkcQhoE86UzdRABQADdjNNv78zJW6HotcJMSaySEVd5whbmzrm7OTpZ4hlqv2K5LxqWSqzUuFOGNV5gtPBnvad0vPvt9joEraoB5i5b563uqy8vtXwwAMgLrZ9sWQQIKAMzeBJgciDoWpmzSAeRPffz2T37pY3dvsocjj2eMLbmcckYm0ZIlqUSEzKgeAQBLtpSSmBJ7AdMSAcSzz+3UnIgIeVbjs/FxM7ofqv2PfuL2YPTU3bsPv/Pt6Ve//vq7D0+6dpolETkQIKAuTgA0NMEYJ103aPZTjGby5PFDf8qj3eGDHO/ef6reaRB7F9oyBBWA1xSqvgMJ0PCir2xuKl1MdV5GjPfUNaFnJ0u61yo1+qcMgHCVAa++VJcJvFUKwKq3YXZiS4Nhtekw90AsvK09qDc/c00uwyVo28b1V6T55iObV9ZVcAWY9aJCbyHNyjARScq1R7Q2xeP9Pf7EJ1751b/80cN99HBG0DEVg1gsodecMwJ7JuDGpDLJWQTVrAi7WlI6O5uA0XBUO7aSo6cqdyUVydOkaOjuTCf+0aPujcenJycF6fDDH33lT7722mR66r0HQ1VBJYUCJkAW23MjDCG07bkjMtXSFU3kSCdTY6Zb9++EYUWMYKbIqiWL0ApYN05mlvVS376nDnr10VdEsELL7aqVGeLKW7bqYWtXNs2pzaYuTyFubR6soW2rL2tjEK6M4w2mi7a98qvF0ea3AABYzyMUAJAMwQwVkE0UAavgSjofNmVYw8///I98+cc/cw1eK/msCj5Zyipg2nbjug7OORXSDCkVzYpIwVfOs6/k9OxsMkmEjQ+VJCmaCLgrenQ0ffjkZLhzCGE0mdo/+Ae/8dWvPn50bmp+OrHgh4Nm5Jyr60pyl1MBcMFVihkRjNjQtGQp4OsAVpi9mUzG46qpjh4/bHaaw3DNOW9qC5VP4cKMX+nw1S5ZSBhc9oPCKu0XlvJa/y4DYl4ee93LcE7ajSlE2GbrLEu6Jcm+DvSZCOhdMBtc6oqB8Z7aCGzA5UImIPZf+p4qwdZR9J7HivABAARDNTNEQ1A0BEIwBQBiJcyf//wnf+Ev/zjipIltZhFJVeBpEkMYjPaLdGoYXEUcPGqrKcY2xUycp+eP66qpq50sLAUYPRGDlJykZE+49+hJAYJ/9i9+78+/YTevf/ZDn3rx6fvP3br11K//d//t//pvf/fu3ZuPHj94/vnnJ+fTB289KjkzooqIFXKsZs5Til1wHsCIMIQwGA6rUX1+erZ7uOfAmwHgChXejzK26NVZcN4mY9sk/KaomsEaFlEOCAA21yY3xLTaUjDohrjntcqXkXGZ5QsAunj1wiu5qhSuf/lC1M8GFpqZ9aNuYcQgAADNbm2f7Vgca0OOtsX4rXWpLfUeU4pi5IZZinMAkEjNgTpjhELWNdX4V//qj//cl3+o1lPMU/GPyBxxQPAD3xh5QGMfRES4ToWESXwDNqp8QMRBdbNN7aQ9r2pGK6pm6lX9NMXh7khcphReewt/8FbcufbB6zdfeObpF1955UP7ewd/+Rd/4dvfefX1139w48b1oyenezvXmc5Mi1EpJsRUxJwLwlM2qIk8kBnvDXZuXbtVD6t3j95Jp0dNuOYQ2LwhFYLOpAIABTImIwERlMxiPAuX8eLIgAwExFAN1a1Qa8lNvQkXWGUwmyBYKLawzh23U3S5hr8Q+1lr23KbF8b1puifv2JFN18eCZvcdPMTtrZzK0ffWmaTGxcDJk+AWc0E0XqJBEhZUjcY2s/+7I/93E9/CfIjtQ6w8xj6MUhsjgnYAWhW57gycQy+FGvHk8lk4pzb3RuR0mi03zSNaGeSmRkLpbaMbt7IOVdDGGX/7e+9AZr/3df+oKneOfqn/wjR7Y72nKOHj97pe5KJHj9+DADMXCxVVVU0s3MpZQMIxI4qBzQYDK7tDmout/b3QJtpajVOhjv7XZf6UPFB7ZIVAiKjfgIX0VhBqHfbkZmZcs90AQlN18PtNmX9FcRYRuHaIxfFViiyhcm/TwF6aeEltbp3TF6mnMwbeennrF3fHKibha+GI2x2y0ZJBSAAlcyADh0AgmUAQYzBTb/4uU/94s98bnzy5u5I2WeDCMYIhmgGSVUQgcgReqYmZjUJOeWcrRQVbUv0uzujrBkRnQtcNZI0C4QwQiMiZishhFu3rjk2j+Xdd97sNHdtfvK4IiItmVj39vZOj05SURe4SGJFdBp8fXpyzhxMnWZjYs88DHx7b1Cz7Mjk7rO3vv/uOzFOqtFITcyUPcXcgmMzUXAGRABqQKjWRx/0NERSAABCVUO8CBZZQ97Wft+qPVwKzf6W6WLquaf7WuWbdW7ifhPNF5UsZOg2RXsLm1+cXj4ubGH+I+pWyx0BEXFbDZeBeK2qxXViEsmgSOigGCgQE0JX+/LFL37sl3/+R7A83h+Z55jiKVJBMCRDEiQBKIZg4AlqzUIaAHzl8HBv/9rBkNhCICuCJsQgoswhmU3bbBmDc2YWBs1kEneH9WhQkZ1VHLKUnUEVu1Iy1E0IgdXKzu5o0AwfPHiHHCI6YKjrejJuAYAQoRRSHTXVYR1uNe7aTv3svet37939iR/55LfefvTH3/oekEuI0Yr0q0AIUfqBCWRgggwKc58MABgQzmJkya30cq9+ES6bCDg/thNyU0AjrMFiKzu5THq+T5vD1oyMS8ouQ6pvGyza3HsVbKU2M5ux/EtmO3QRWDXH+qIDbe7J2tKMS64DgIKZKRMzmBVh5sDmPL74/I2f+PLHK3deQR44l3TCrqAXD04kqiXQDCiIDODMRFW8dyLqVE2zajSUti2MDlHYsSECmXNhOBg4HJydngfnTG00aPZ25KUX7r323S63rYLvulwxESqU9KGPfZQdMPN0OvVVvnHjxvn56ZMnT7rppHY+J7WSdhq3W9FhQyNXJk/evM57T+08/cnnn9W6fumFF3cHw3/zJ19/HLMNKiMmQwAC4H6JGfaBJNA7MsxQwQRADABNkZas+AtN1BBpy8q1ZTN8KzRtPlm3/MjKnMo2DxS8DyxuPnsFjrcAnbaMhNlfXGG9vXJwqeDGLSPhYn1M/97F9Ss+aelQTYBGTCQGqJ6ZMO0N4RMfee5wBIGme8NK81SldQMopillJCBGJBKVEouUackJNDsWEUNEtSQ5sQMRSZaZUUwBVJVECJiYvPfVtDuL47Pbd+4cHlS/9Itf0lj//le+883vnmKRLNI04fr1w70dLpYPDnaOTuL5BD792Q/9f/7lv7p+fff8eNq1UrFnlymVhtK9Wzd3a5qcvFtXh9euHY4GgzAanYv+zOd/+PBg97f+3Vffmkw0awGns/g7NgAERVOcgUHMzHCmggKombo1wM17TbcSdZn8m1ScXVz2N80JtjBQlm2ay9B52a3LFInLjtmAwbUrWx5f1hwuY+0211Eua8wVnwMbA+zio8hATVVBgEBEumFjH/nQ/c99+oMejncqsty13XiwGxBVTYIfquVSLOeSsiBwVQ0GTSMFVI1UiMCTA+8AyAxTtEHTGBbRLCJELqk+PnukWYlkZ6cZT58MR9f13Sc/+ZOv7O7S4N+81cWsis1wZ3d/r1hh33TprKrThz709GAAzz5z4+HbR5FBGZsQSk77tb93c//efv3ii/fu3P3MCy+8cPPmLa53LPgRgGj+3AdfPBjU//wrf/jak6NTc4IqyIUW/h9gIwDpp3vMxIAAtJ9acgy9f0cXsnyZwax3NK1EoCyThFaZ7qISWtE73zeqLjGW3w8s+isXVvwckf1cP8C6EIAl/keXOCV6JWFNXFy0DGezFYgoIpd913LzLi5KAXBmaH1AKLZP3d7/yz/1Wcsn5FM7LeZ4uLMrknJJ6EmMDZRxyFVdhT7mkQEISYomdJBSQiDvhipMRmhuOtWUxFWkqkSFXdjZacyspHbaHROXrn105+7OcZU+9alrt+7emk7as9Pu4Nrts/P2tbfebrt06/bh+Xj65MmT6wf1aMDtgPNEB+Sb2ovuHDq4tz94+d61v/T5j915+i6P9pQbCLu5KEPxGXZK+dgzT18f7f3G737ld197S9BFNgDMiILKBjbXm8gAkA0BgPsl64tgETRDAOxXVa717EIT3drpy7CGS1jFmva5fHFxfdnP9Z41LD+1yQ5XodwjdcWjtPxgb0Ku3YVVgF72rvXCG86QK4RA/5PJi6AqescljQlP79y6DeXIsOtih3WoQ1WKKgAhkRoSE5JB7vk5IoOSmfUxtbkkAGD2OasWrqtR5SoiCD5NuzMkjHFKkEKopSg7DL4myu10vLsTblwLhA64a6f5gTs5PXvUtnj31n7M1Te++a2T0/NPfOKHxqcPX3zu7rO3bn/1j/90t9n15K9duxHfffvWjtuDNH7zu3kEbIWGNzNkdA1SsKLOiZZ4a3fnP/rxH4+//7tf/9Z3TBw4SAZmWECBkA1AEY36Xul7T02cLmyaed/Opt14XQ01M7x0WnHlQLswltfguClAr6A3vI9Zh00QrNagtvJzSzG8vJLlY/mjNm/BEka3SqHLvloiogvMoZS2CnDrsPn4R582OSaHwbPjIGao6jwQsllBFAMxExEBtT5SzMycIwNl9oSAUAE5pIrIT6ZjABDTIlI3jghjaqfteeUbpqpkTDGL4jm0msYVu1c+sB9jeeG5w2nLCLvFBm+88ejoyduf/tTHDg+v37h++9Wv/fl3Hn3/pWdu7w33dkejl59/bvzgOrz7YICSjh6/++dx5/rR3t3iR1ZqVe9JDVwIA8qxuCJf/tTHGsJ//aevFgJHDpkVSEsmYzADAwJSRetXuqCtr+oEAABaLDxeY1pbWekGx1ol3qqT6H0a6Vccl6mPsCruzWzGO1dDEC5rwBV6xXLl2wvYxpX3enbx27uBKJiJWQaY/se//LO3r6PnaeU9AhiIgQdEkaSQGU3NwFRVTQsAIDKAgMF0mlR7gDpEjxSKap60QOp95QCcInMJGLwDAJJCJYKpGw2vpdyOT09ijFrEHufBYDQYHQS26eS47c5zd/7TX/6CaxpC/+1vffPh269VXG7cufH03ad+8L3vf+/P/+i6HxyMhqRyejQ5efxo7+2H5w+O9u887w9v886OeVJnPtR14/3w0B3LZz/yShT9/W98W2sfxdRmY2yhbxGoIBiYoro1sgEAUB87v30mBplslWdsHojYL2a6TNxfSumNepZpfJmRtIa5Be+8KLCNoy9uLWqYq6SXq+AGsFHPVm/oZg1zAsx/zk9iLCEEsIiQPvzS/WfuHnp4GFgJxbFnz0haJEuZOizokZwzM1UV6ZmIqqAqpFiYg4nvYondeV0P62anahqDqApdl2KMzgs5AzNVOT46JgvDejietEy2v79/cvxknDoplB2MT8amzmE9atwHP/AscZim/Prrb771+rfb8/Hz9188e3Ke2smdm9dCnkwfT8L+bcx2Nk7H7zw8HB1Nnjw5fvBG2LveXDusD3YH+7vDg31sdkIzvLG7awI/9IGXs/o/+u73AdgFH1PqnSdkplAMwAANxAzcLHdSzzZ7K/tKWTzr901vyzbtzcxgNTfTVqayLBOv0DW3Ur1fbQZb5OxK89BmQXcK24G13v4FF1xt7ewt8zcuNIOrNe8rdBrvPVoROb91jX7qx3+4tMd1nUpJEmjQsHecS8xlSpbZqypbIQAw7W1gBCNTM0EVLoXAkHDgPRH5ri3T7pw4Ba4R2LkguStZ1cRMqqppqsF4PM554hjOzya5RB+QyqBEHe5X4/PJ/t5u2+U65McnR4DEmAYVTAM8evi2TPUPv/+D0aC+Payfe+qlF5//4I3968Pa/uQPfuPBN7/WtsesqRsfnR9XblAP9nZG1w6bg1vNwaHfuXvzxnVf7wAMTk+6b7z1gNGpoQGYgZn0a5dV1VANwa0wj204W+v6i1WgdqnUW9DSVtd/XkbCNY1tUxPYtGA2uanNEbP5IcsHbVuJv/zS2XW8YJVbapvFk8Bm41d6YAOdm+NTQZnSoM6vvHj/5p4jS1ZyvVszk5kWiVIigzEBqCkVLIBI1OcSIwKggqAEOcUYJcXEjlRzLBlAB4NBVQUzldJrBRiqAXFFDKmLde2dH4zP2pLbZkg2AVDoyvTwcH/aHk+7cd34ts05t9/9znerZnR61oHFymNQPG2nL73wnCfaY/mhj3/o1sEdX/kyfXL73rWRf5bG4wfffzDtMp97IauHYXh0bffm0fDsGl1PzdnpaP/ux55/Lvih/ta//vbbb3nHxeHMyQJsoGjUJ1Jxa9BZQgwirrpj1sgJWzC0xvw2NIEtfqLNGMrFmFkeIVvhu/b2JQms72laweUYhUsG5/KtRZa/y45Zhyw9sv1dWAC6wN3zz+x7nAYPiNx1KYRB1sxmTBbYg4FoUTXEjiAAEBibkhmKqYoxs0g8PT9zLviqaoLPkruSuvPU1KOm2QFzk3GKMRGK8+y9N5Bcptdv7MWOp9OuCnXXpcHIJtN3i7SjHX9y+lqM/OTJ905OTtMjSJnZDXdHw4b39uqd6/sHWvJTezwaURw/oEipfTwK0+YgYH3gsHrrwZNJTGfnj5PlaHaeU3rwYHh/srt7s3r3cbN77/61Oz//4z/+P/6r3/z+w0dCgEg9CREdooHRDKAL02crJpYvIq4sFNuUy9sE9HYrfqvIXq5kDZFbWWMv4lfY2Gwd+ZZopk2Qbb2+zKo3B+daM94Do5e/cdEViioab97cff6Z24GLR5tM2+HuoEuxbgZ18FYKIRE6K6yWzTIAEDLOKEIMiKhiOhxVWQZFDSBnLePJ6aS169d21WIu6LhiRmI2MQAopQSmrpuidQbZOUfkvRu28vaQoWtFS87SjSdydHQSqlHV1FV9OAzXHj6Y7lc3D3euWU6jutr149QepfNJ0jQdv23l3GJr0b/76HyS4eDGvYM7t/cOG6pcB/jw9PzB268dH53u7U317VMND+rDpz710Y9P/viPXj8+FlJANgBQNlRDMSBHvT1kBrbI8ojLfbsh3eY/6cJq2TTtL4g9v06wzmI3aWwbgclL5WdLdogQYFYr9gky5xXM2RWYrVnly0v2eofvtgCUpS8DAFSDeX7TC2DBRZm1kTNrHkQwX8CrkUAxSoAZDRiYzaGaSiJQZiZ0OQk6VEmf+OQnd/acliepPR8SD60OMKhgVGKMpWsaCARqGYuGaofJIzOYK4JFOCUomcSoy9EF301OkPRwd+/W7cOcY4qmRidnLVOpfUVIxKiWi7QxRyI4m0zrqiHnn5yeIXJVhWlbJO/EWJSHNNTBtZqsIm0G9WE9uOmG73bQgT+/uxsGOD1/680HsWUTZ0VTtKQapZt04+k0Rz06Ej+qxBVqkBs6OOBAd07Ppt/+7teAdinsT77zzdGN+z/6yU//5lf+10ddF4mENVlERrNsIG6JfpcuV9ikBGzjJe/Hwbkov5UzbfX19CW3zlStmfmXNO+Ci8NcOVmZjL1kdkAvz9kClyw1MTMDUyymMzUVDcAcAYBhEa0cm6J3PucsZnU9SOX47p2Dj33kZZEn3fn5Xo3sMOeOA+fChsWxOWYi9Z5d8FmiSJZIKp1ahVQhVT4gGSD5aVdUdTioT47Hx0dS1d57BhBmPD8/bZGq4DwTsTH7PO26LClZO5nU9cBxE2MkhKbezZa68bmpDerG36gbP5DE7QRN0+7OSKOenZ7rscj4TB8+CB6HVeVQStdKzJIkdpJKiUW7aQFJJ+2EaiJP5EF8p0LXd3efHMdpe1wwfe/ojB+8/czdm2c/+EHspq7pA16FCA2Ww+2wt4e3S8YrrJw1pK7Z3bNzgzVv4YLAmwbQ8rObQLxCB928CECbHodeE9j0uq8HjvSxS5ccm8Os/wpFBdMe3gzY50gEIAIzkpwzO+pScs4x+2mcDsLZT/7Ej+3v10dvHzuV0AxMUjMYNEOPmAQzspipqiEae5JiZgoKREyE7BiB1ABE1XJd4c2b19u2LQo5I2jQuptMzndHO6OdKrUdEuSiUABEAZitrquhmREwEWUkx5CnnWTaGRx0KRZTg1TaiaNh7clQjh4/clhNHp6cv/3ujvPXpa0r302zSVQpJFaKpKipaFSMOUvWqAUrryDoELgTI7CQ1RuPWslPxmn85BE+fsjB1zW1OXqPiFhyIsQlR/1MZtHyhOcVOtYmqi47lql+Aa/5BONlPpg1wC2HSW1F7bbHF5FcF1z2ouTlM0O9sfWeX7eJTrswLhVBwTypA2MzM1YDY88qGZnQQdue1k31kVdu/9DHn43tI8+2t7PbNN4KjPYbs1wsKognZOqXyoChEffGuENwBg7R1AoKVIFMS5HSTrtvvPodpvrg4MZoOHSBd0YHRJDjFLA452PpPPlJ13VdYnZMPufs66qqqtimyo9STsePzoeDJgQvsYWSg68HwX/zjTenrXv4zvmgvvbk4RPoDBxMz7rgEoCalp7V5JxjUgWXlBQ4G3bKFqEYGgI0zrnQdWkwGBnSaRtLVU3VOpmU5CF4C6yqCIjszGRmxdsSTmxmDa9w0zUbaJPhbbXEYcPduPBP2Zo/csly38oO1zwAm21YvYVz19NVJbdct5X/zS7D8OWhVegMDEHJAGQx/hRNBdUMBSwwlxJDbd51P/HFT8bp24HLwf5OxSlLN2qaIl1KLTsLtQueicBMzbCUhKTEDGhgYtIVZTAHSO20I672dgajZjSsR5OpIlRmMG3HiFZXbjKZOobTeNzUVduOq9pXoRaxIjKsajM7PX7cpth2SUqpB6PRzvDs9Oj07Mizc+Zfe/DG8dG4qq+99oO3zievNbwzfnRqHWAG54AdMAMxETmgikLISgWIq1qQgQOQU0IAOgVmZt5zx2ZFTOo6I4Lz5lwSySoMCESqykje1fM1Save0DmF+pC7i2xbmx4fgO063FUq6brvaXZxPiGJm1jsvQFb2CQIXWgpK+nHVhSMy6Zh+5bgpa1dDLtLOPSW8gqMpgAIgmQEZoDFsAAqkqYkIYRSMllmbl984Znn7u13k3FgdsRSzAzQubY7JxLnnHeEBpILABka9g4YE5PeHYMMVkxUoK4qdq6UUrKJZCkRIdfVcNxSU4fHjx8O6so011WtOe/uDXKamlkzDABcchGDHXJ1widn8frNQxQ9PTlJOYWqMbPjs8mks5OzWE6Oq+He6eREmK3yZ+McRg0iAjlyTo0ViKva1zX7JqmR910RIy4GYCRg2e+oZAdOVJDAOZdKVrDYdoPRCEVTKcE5BjBRmUUzEeIG2pY8i70fZyb0l5cpb6qPV5gss0ds3YK+AMeMcW9XHLdgYha6sp4w7S98aJ8o/lKJD9ust8vf1adz5z6XMKIAFsCcraCy9xUqOSBiPRj5X/65L9VwvLM/mk6nBKDAxF4N0TGhIaJmVVB0zIzIQEQzn7tqn9neDEzIFM2gTblrC5EDkOGAmZkoDWVQSrm2f001jUa7JU8HTT2dHLXd6XBUO1cMuUgZn066NiPy/sG1dx+/VZIwkmNqY4mdnh61x0/K628en02etAkBfZQykRwO+DgKKIUQQrOLVAk4cFXLjMwRCiGrC4oAyABkhChEXIkKM6tqlyJ5R2RN06SuU6DgvRUFI88hd9GZGYgBE64ZIj1hFj+REGnZAb4m4zYN6l6UL29Dg3OVc+FztY3oE5ol3KdlBcOWpi5ngMZLteQN5XVF2TDcjrOZ5bQBt8XtrWBcq6fXNQHQjMH6RIrFKBsKAiA6LWSiwdnQwV/7xZ96/qmD0B1Jig7Qs0tSzEpKicjqpkJUKYqIITjnWCwVK4zonAOAUkpKUQW8b5p6qGKI6AYhpVLvNjln7ynnTGypHcfpZNDUx0/OELqcoK7h2uEIMJcyIXIlZ7O8uzcs2dpyNhx4aOqzs+m4S6dnMUWbdPyDN985naqCJ0ZgUrDDOzffffdR9t6MgZ2xM3PGnnxlxEBUAAWEHYkIEYoIGXmNAMBEYEAogcFMUxFDIHImohkRSSQTIAfv+hmRBVAWCTtx+ySnrpFk7WevYs6XPvX1Xmio1mtSG3rCMoxmrHoR9jsP7FeVZdMeoU/eDrY6EbUmrGftufzY6ti6uIUzY25RAlcfXAiQhS9MrAWoiEhEjUWgc67PCBAkgQOuPFg8/9wXPvxjn/lIjo9L7Jh8FZzm0lTeeacwceS8DyWlylfOkaHlHEPNXYmETNinF9Wqcg5ZREo6J6wIFZmqQICFPKqms5MnuVSgcWenqio+P4tNzd4paEopFomqakrjcQdaAWPuEriSUzk5ikhN7OD8XL7z7dfOzu3szAhDVQUCa5qmiE3bMslmdR2qhl1TjM05xCCAiCgmvTxULQCmog4YTY0LACyCuhXMFAH7aSQhmsXSkyNFwUXqm7VIi7V+n1U1J8waDpYJvLB9FoRfJn4P1yt4cP+ihZsd51FRG2V6hrelAbA0VBbfdfWx9UPmr1gvbEtSZZNVm/V50dTYrCgyEmKWgshagIw8F8tnLz1/8Jd+9KMaHwWYCELRKCWS45obH0CNmSDmjGpdyg3XWjIHUitEM2ICKjGQaZHS5zRUy8SVKSNwXe/FKNNxOxiMPHAdCclOjh/VFcfurBTV0tYVI2JVDc6nLUKo6lHXFsd1O35ncp6sBPbh9PjsnbeOYgfjc9vbG7Gvm8qrCiI9OpqMp8UAqN5FXxnXpl4pALL104dLVCMjAEAgMCi0LJvBzAz7WLuFqqagACB99y+5mfRicdmCxjb372ya7Vusoq3OxdViCkaXOJb6HCH92pPFUOlZoM6njjbBvTI8VhFPS72wlEp81X5a/Sjox8dlnqm+hm1OqEWdnut2moIH771ol02JyXHAQqilCuZo+mNf+NQz96tA49xNXO2kS87TYNDUg2CQSlZCY+734DJEYmJE6WWLSO6X3jLMBgOTkgM0SPncu4GKPzt57N3OYLALxgm0NSCUw/2dtj0fDCuC0pYEFlTt3XdOHNemfDodDwd7Mcbp2ZSkGh917zz6Xjux06O2HeveXkUOrl0bDgehHY/H05xjTAkBawoHwF6RFFmRbJFg3gxnAVcERmi9Us2FdHlPQptpgD3f7LtRAYDmyuRqPKjaMsX6rU82ZjovoLNCoSUevELUjVXIsEFdgIsFk2vgnT0LF/rhhup5qYVuKJtFVpq9TbpfuNs2HBcXo2K5/JoiVLxjpwqpX+vONaqkSay8d04cTf/qL33xS1/6oPfnmk7YdS7soEMDcg4NMoCG4INHMDEzMO1SrConObM3RWAiAgYA1L6MgCmCpdwCUEoKWhFWaBrbhOg6TSIll67tJoQWp61Kds6rYuxKFXamk5bIDQajJ0ePzs7OIHUpy/l5rtwwYceA16/tEPuoZdAQYyp5kmPOuYjUod5LGAy99socIAIYGczmpQ0ASAmN+tXGZshiADLbJxEMYJZAdE4Q6CfFpV+TtLZP0kxjI1x2La3c2pybvjzeZ0YwvEh/N2NRc045K4wrNO9HxIWIv6iQl75huQEAWwaM9ibPZa5TnIcaXWX4zyZJxWCxX96SM+6SB0XIu5ByREREhqJEPKyQrBvU5W/82i/86OdeHtWTksU5L0VjzGEQvKtERCUTYyk6jrmug6qUnEWyoplJMERko+Iccm+wqs42UhJFEwQQTT7UMs3n42MtFVFAx6iWUoptIkiqCmaOqZvEwWA0nbaIzMzj8VlKHYDmhGfj6LhOSdtufOfONXbubDIZVTsEOhmfd20bW41JiwU/2Bdgsz7TZe9UAzBFRDMBAwIGUAIAJOi30LNkM4Rhn+fZsM/MP6d137uEBgw9QNdIC7ouqWfrQWc/Loi9BqNLCY0Aq4XNDGldP1zzcMEq7K4Q5YuTeXmFbXx1Uefms2TrPFJx+7OLtuFGJbOqCHLpAMV5L0kQDCUXHe808p/9zf/kJ770cUfnqBjCwFEg1EahZEEzVTRDKQbgvGNTYK5K0ar2YMbEknOf5BsMgQhnWjihgpg58uyq6aSbnJ2nQrEDg8776uQkl1K05CJFSxoNGqLKVIjc2dlZjDFUNTNKJymlUgr6KlR6kspob1gPbzrCrus4FkIVkRQlRZ1OpctQMAAFACWb2YtEpAimhoT9lpa93BMwAAEEpH5ZHCiCAShqv/1OL/R7ttrvuzPbQxHBzbQGBOudv32nz/XRRVTyViBeMKRLsrVfFMOLQP3F3RX2fCFJt3tAl/2UV4yKXi3BK8ssWt7f3hoRgmoIIJf7Rhf5GtauK3aGSkSlKII1wUtphzX+8i9++Uc//6FBJZK0bvbABimNDcX5KGoE3DBk8iICqMyQJbEjb8bMpgUM+s1TfHBkoGpoAmaS1UQI0IVqet6KWClqYlVTiaRHjx90qQohMLPFPGhGZlpSQTKRTKyDYTgfjx89nhowIjuuM3HhNNgbmIr3Oqp9G6eiHUhVCuYEKVGbRakCV0UkRu2B2MeQmRoA6WzBcN8hMBPIZADAVs1/61rfkV1wloV93VvxCqtJaM0M9QI3a44b2ORDGzTe5HwIKxx0cWywwxVOucIgL58TWsBj7fcmTNciQi4rBjMz69JoEdwYcrOnILJn06KGja9jN93b8X/9V37ul3/xC4EmprEKjWRhrkLlRaNo55wzgemkjW3y3jtHpQgglayq1nVTQgC1QdUgIhOZFpXU8xwzQ2TvfNdFRB88m8a6dklKF8fDIQ12h0xe1Q729h6989h5aicTYgAQ56Ftu1xSVVVqlJOJ5ALgq+DDQFUZJMepQRqOGnajxw/H4/NUMoohoAPnwXszmUlXREA0QTME5N75YjMGiTrfLhy0uqDULKrGAJSsj6y5UCGl10GVDQBw7gfdNGgAoE+fbjOy0dpij5lD/rINrPqa51aOLTlcF8UWFwFgFrI6u3VRIXFvO28Y4xt2Pc5/bh1Lm1sma++uW1MqcGYkcdH+mX4hrMzyQBDpbCEimjoCABUpxFBcsAIBvLfS6GQwTH/rb/zSl7/86eALYQ02NKqIBCRbmYLQtNXxRF7/wcOcSFUOroVn7u8atJ4yGmEhsKbkQh6jxlDBeNwSgWMkJucCeZbctd05zmb+cDCsu5Tr4MPhYdd1pqSgUiylk8GOxa7bv7Y7bTvJpW3T+XnyvqpD1bZRUpfaKePo7p3b05QnkykijmPm2hGKYp6KRAyT0iYADOY8qOSMfqHrIyAwgdrC8sGZ9axks442msKq+88AyEAQEEl6KT/zky500K1525dJa7PdMmGrJb66EmgdFttY3mU+ms1bS26B7QbNsi64ZnFvlsd+lG/jl1v1aURcZH3or5DN8iUiIQOKCBGplt6ERERLfa5DI+lGI/9f/K3//Y9+4aNEESwjMRIQiJREpl2bunbStrvf/tZrpyeQcwyV3b5z8OTJk9GOGRVHjMTBs/PADpJIKTYcDkvKBhmRACznZGLOV1ISzvewCyH0W7gKMQafYkkl9SOWiETEVM7OT2OXmqYJIZjYyclRjLmu6+vXDurGHZ0flyIiggYg0FSD0/OiAqqqaghM5BQY53HbFz12CZaWCbpZRuYCdp2oAG5NkVrI9A2TYr7gc/6azZdt11bVcJ5QZnl9OsAGn+6BtdT2pQJiug6pWfnVzcsurBzVhUxY/qjLzPZNdtuX14s2zHICzhx1CFIMAUSsDj7nyMwqGkiDJ+mOn7537T/7G3/t0594pWm05MgMjCBaYu4I+OR4/OjdR9Px5ORR887brhneno6P7n/o1uNHb1bViQEPAg2rmlnIC2hSFRNF5dxP9CKXkg2RySmrFiOu0LT/cCYnJmZGjJPp2Mycc0QOEUUyojDj/v5uKSXGbCpdjIC6v78bQkBKp2et81aKTKbjnCWEMG5lOk2SJeesCs7VBLUi6aw/rbfUAbfOFr+vY4UuywDduN1PysO69mVkBkiXEhgu0eRW1IaFWkyXszqbPXVRQ78Q/5L5pzWdZCsDXvMMLLftakPKzKR35hnhzNZTAEOynGLwtRkAYdu2ROCdV8nexgHgI5989j//m7/y4rO3SnccW2karyYpt4DOgB49Ojs7at9+c/r2248w3iO69cb3H2fJIq8XfPOjH72GViEQU2BSpg4hAyqzR/SETkQIkF0FJlkKGrGvQQqgqZZSxHuRnBGR0XaGdSmKQG3KTEqoVVWF4HLOiM3J0TECA1TPPvsMs8s5d92E2DzTZJIAhQgYPKq20zYlERFAruph1wU1KjbbGd5AwMhm0zprOWlWDINL43+39T9cTHXOYoiWdVDarL2fBroMK5tSdRk3K0jqkUpb2rqoZyt0NkXw+/vYS/2dy8rJ2vU5QIGMFIgB0IBAARVUmbGUAoCqMhzUJXcljUOgoRv/zE9/+a/9lZ893HOSHw5qJjRJCZAJ3XQauym++frj8yN4561EdruL1rXj05Pphz7yUpffmZy/3U3D44fxqdt7yZOUNoSEVDw7MyhFAAFU+mSKollyJoYKHSA5BAU165cYFwdECFx76LTrOlAlsOGoYmIzbGpfitZ3bkhRVRg0o0ePnhBhMwptl9pJx85ASuWaaVvG4wSiqoVAvA8hNBpNzZbDzgwEZ3sgLc8VXZL+40rCLRPFbca2mRlqv+AQcCOqaLnoclqOfnfUTSm/KccvrqgtONj6nsqzdwkimr43EC8D9EqZjWKb6PyLIB6ZOefikHJqwdoqqCP93/7Kl3/xF366qoRhipRVlFyTcw4+lESpDX/2te9999uPctcM3C2EejSyu3f3n372abWUpQnu4JvffPsjH76TMjQmyEKEhAQABEimxYoPHhFzFhMj5wggizKjzNxmaCCoKliIKE2TKaqkQT3IonU96Npohhy8ChC5lJL3VclS1UydnrWROaQ0zjnvH+yeHk2OH49FakZiEucNCNFx0SikQALCF113AY4tC4fowuv0PnvYYIMbz9AJvQ6nPSDJlg5YdRLBEndcPt8suVZmccz2/VVDW8lWbCBrtcE2Rni1ynHxFwDex7zX2usufAi9N0JtPmPiENgMmJnYTKeDkD2c/tr/5mf/yi/9+P6QWKYMEaBjtthNg2tSx6dH+O0/P/7an7zj6E7tb7/7cPInX/1W26Vp2zZNw4xF4PXX3t3duZFyLtIaTo06wCSapfR8MXtnYMkgeU/eUym5jV3KWVWLSMwZAEQEyRANTZ2DUFHd+FBx8Egg7KAZBM8wbLyWjkwdwuT8zEruunHwg5ylqprRaASgbdsOB4PgPJKGCgdDrBtmZ/1QFxCb7/8JALAtuVy/a8fM2fw+s8/NOx/7NUkLrkvzjC8XFxUQ51v19Y/N3TR0icW27DpdVkC3mkSbAn32CKpdwoY3ZcRW9mnLeud7dcQmRhev6Ndp9yE3ikDzUDE1QwOPQBrZ5f1d+tv/+d/6zGc+WuNJ7sZMopI8Yew6g0GM9Nr3T4+P+PioevHZzxMPv/nqt77x59/y3u/uX3v34duPjx8PhqHrulc+8CHm4yKdD8ghI3bGTMiOPJFzpAUTMwNQLtlAq5pNnaoWFVApOZNnhH4hKBOagkoplXNFMzPH1AIAGhfRUtJ4ch58hdlKSbmk4Wig0OSCTeOaUL31xutMRoHGbSYqVVBfOzFsM86cmhfkmM8Grc2rLUMEFbbH3F4QYvPixV6dZv2eYCsImzG5+SZEcMF4tyuXm0rnYp37GrA2T2bfhnMX2qpZvYb1TVStjYTlIbG1S3qnBCwhfrnCxU8yIMQ+B7L33gCkKBERomkxK86XWwf1//X/9J/88CefBT2RrN57leSYs2jKhFAfPS5/+Ac/aKr7MQ72dvffeuOdH7z+5jMv3HvllZf3D/eenDwa7YSc2g9+8OWY3t09GD1130Z7Z2CPiJjRMzkTLXlKhOQyEqjklKNzNQICswpL1qxSNTVYNrWs2jgvkomRHZkqGaiqc2xmMbVd12m/eS/o0dFjERsOa2afpeK284RqOVS+rl1stalI2XsxFwbTzo8ft2aCyKrAcwVvqd8ItzIUo37zzmVxukymC9f4EqOdGUlXLACf3bW5n0cMsV/MsIUjXtB+cYjO80Gs+Bo3T2b16BzouOL535Tym6x0cX0F3JdOil5s5bEovAzW2blZ36k+hFySWZ9kRsxsUJGVeH2/+r/9X37tkx+/A3LkKSIMU9dx8EAWu9S2VBJ/9auvp7jz8J2zN974AcI3Hz95mPL5Cy9/phq48/asHrki8YUX712/1oSayD1iPkYTpECIalSKQMnEQgjkQEsUNR+IqZ+MNR9Ii1VVlVP0jlSRiKaxa4JXFWZOOecs3vssqWR1zpmpqIBiSh2gDQaDfnXXuO1KScQY46SqsRk4x2G0Nzg6G0fllLWpCEG84y6rc83WXl3QaLHNtc1F83bHeG+ELPCwVJsDANT1zQvXCG9mAIZ2lYZLBoorMO0fvJiDmqNhjWNt2v6zkrNP670Y62HzCzwx+fkDF9uSLIP+gjHPquMr1NaVR/r6AQFAEMSKaPauYmYDIRUrE4/TX/mPf/6jH77vYWzYWZkyNwDgnB9P4nTKp2f8ve+883tf+fY3Xn2HYVfNqRYkffkDz7/78Mm0i97nN17/3rBxo5EeHt6Ytg+Ho0k96OcAXR8hRGRcM5MhqZQ0W5KELJr7DLc5J1UFNGYG0lDXkhMxGHE7bUMIwI6R2pgR0UByNhExU3Yu5YKIITgRK1mLpCJt5SqDUjc+No7I1HS0U3FmTlJUR8PgjsWyYnEG+bLew8VE3Rwhprh1yY3hhfsJEXHJm+R6dK7RbINv6eIdmyiEWWpxRL3wpl8Gu037Y42Drl2fj7z1jUfm9SyNGKNlHXz2+KzSS1eqvOdhhqqFgy8q7ByQdXESyCqXPbY/+5c+82Of/7DDseYxgBL4WDrnQ9fZ+Zmq7n/ta9/+f/3X//zsBA4OnnIunJ+fh4p/8id/cn9//7/9e3//gx/8UNNAO9HgsuP8zrvffvHFAfFZbCe7exUCAhCB9svBDFQkikq/+SMxi/SWgxYRNVHR4XBIYGpFAdmHNmcz7KM3EDmlSV3XIpJzV4p67733YNQb4maWcgdgjqFumH1toju7Ay3+fFo60QBoxo510NAg2FmHuRi49+jACwUSAeYQWqaR9hOV84mVtcdXtuPeytJm7HObJO1PForwQrPAJa/4+3HcvB+7Zw3Z77fa5Tr7x+c/+87Yah4t/yR0yYqp9Kt+TbN3WlFBOfvsZz/wa3/9Zw73lHWKqASh67psScSfn+e33ykPHjz4u/+P/ynF6rOf/eJnP/fF3/md337z9R/80i/94osvvvw7v/1vfvhTn3v6/vNt9+j+vds5PTg/f+dg387PH925w4MRaxmTQ0JnIGZFrRgUBQNjEQND552K9cY9ETnnmJmInKPJeUR2RTQXaaoGycXpRES8q0wxp9luNcyMiN57hwQAiKaqJae6cb0ToItRRJwLzEZslfcppzrQmOPubv34vDizfAmlFnJsk5RrGIXVGb41+G3OJG1S60J0bt5doHNZoVyj+tZWbvLsrfhYwHE5S+OKAbQMbqPe/IdlBG+4NtYY9rL2udmGAsAuqOVeYWGCgCD57LMff/5v/dovXN9XsjGxlajTiIQjVXn73fHjR/rqNx4dPYHPf+7nzsf6t/+P/2cAaJq666bDpvn1v//fHz0++tznvvBb/+o3cnl8/bq//zTtHdjB4c17T+16PwbpAKIKGjIYAQAjzdQ584RmSCWbziLOGAAI2btgoF2XyHlEM5CqHqHm6bTtU+/UddPv4dlP2ffKNBixdyKzD6/rMNwZTbuJiPO+AmUVIcaq8grecQbogvchFO8tZ0n9PtcrzpIFsyMAXEuFaduiyNcJugzQrdCZxcCvMim70mWzDIsrzJdLnl5y1Pd/+3rmlxF6//P8x9Kc71q4/sq7+uCBHrrvrxmbRyo5BEfojBTUQIva9AMv3Ptbf/OvPf/0bonvuEo0A0JDWMXIR0fx0WNNcTidnH/g5Y+fnuWDw+tf/7M/fe217//ev/k3CKy5vP3gwWBQ/aP/8ddLSU89jcN9T7598eXnn3l2F23MZiVJqHy/PkoBAUgFFEBUCZzzAQBijEREyABQSjGznDMRlSy+DqrK3onIdDopSYbDoTkzQFX1PqjOfMxmlmL0CoakakRUh5qIAIjQBc+erOsSl1hVVU4QgnMdNI153zlXYYoAYUa+XtW3RfqM3k0ys4reY3HtKmnWjaR1LXBuaV2xr8V7v2PONa9mnLODZrGVm425MIaYN5mcmeFMPG1n0ls1gfcE6HJLvPOiqqSoSgDEsFuP/g//u//0uadvSnnElKCkUlCKj8mlxGo7o8H+g9P4wnMfe+P1I9/sfPOb337tte+/+uqftpNuWO/EGLs2xThtGhRtkcpod/8nfupjL7807OKjQfBozFDnOGUGco7NS0ExBWQmLxmLiZmpGCHGGHucee97gPq6yjkzUymlbVsrpR4OYD7VN8vE5H1KEQAQqZQCQOyDmYUQ2FepRCJCBJFE0CeAIFQjIgIdjqp0XpraoSXAi02h5vzL0GCT7pcdW5nghfBDdIoXHqz55e2hPVupu9xAAAAjRFq0z8zwYkMtBCC4sHWWdMqZO6gPqOZ+UnJWimYiXkQQceZ/XcwsIM3Xt/Q1LvsLdPYOXdmJ3paznyKaCcIsFejFPBbONHoDGEBKIgYETCpTkvHnP/+Jj3/gwKXHLmTVprVh21KXarTht77/xqvfyKmlW4fPfuPPvvfv/uDr7AwwPjx6s8uT27dvP3rntZIkOD/wvFtXL7/0kfvP/dFf+okPHV73Mhk7TzF3J9NJCGEwGBQDEnWkzolKBFEorC6pKaD6igCEgVXIjM1INTnPnkGygKAkgFJhHbHiNooY5myOa8VgZkXEEeacRoNBTmJJkByTY85poiSesVBFbZyklL3zZG6SrQpDV8pZOq7BjerqrGWn2RDAHACZovYLjHrTHOeLaftII2QwFChgM0KtJsbUNVT3SHMXHtBlfrPKaS/wd5kXa7XkTD7PmPtlpd4vw3sfB23uP9YfCLx5cX7oxbTZUirQtTEdSwZiAEDLnvLdG8Nf/ZW/hHhMrss5AzXTc3r8xKbTcnr25J/849/+3d/7ztP3X8LyR9/+1utkbrQzHE+P23h2/db11157s/ZhNBpMz4/qw+Gdp/aeuh9+/EtfJNbz8VkVCrvEpKOdUSml6zrvGZFUBayomJU+CxMhEhICIBETumJYivbWDCJMp9N+WPf5cIIbSCEpQuS9AzQDKAjK3jMBESCic5jVCAGxj1cSYu8IixgmA1AAJYJmEFJpY2zrxjelCoEMklno5Rpc5AyYdW9vLCz77NaLrB4XhvWSEHNrJS7z/lxxcfUFC9fsxeUliQmoZquxdhs1rLDthZpx2XvnTdpYnWGzCMWNB2TN6Tv/4DlEl6tBoIoRuORoMjk8gL/9X/yVa4fZuUkqUUuTOvrmN8e//3vf+t73njx469H3vveD3Wu3jo9OT4/eEi37B4eTyXFM073dg3aagx9UlU9xvHfIWR74Wj71mR/O5XVkahrHjIRI5B4/elLX9WDYIKJaUcmg0t/qg5iYmRARTApIEVUAc0TkHJhJ1yXvgkhOUcHYpBYRlcDkiayPrdaiznlGVTQTBQY0ISYAi3kqQEyMrl/dLAZZldgDipgVg+IDhQqHOx7fzWZ+AdDlzt4UwgBwtScdANZj85b3i18Q7LIKttq52w7dnOxa1up6eWq4AikzA0O8ckZroQxsNmyrDnppPf1Ty99itMVLhwAAESKZNgE95l/6+S9/5uMvaHkbLANWXeu/8nvf+Ye//nuPHlns6O23H4Uw8m5w9OhJ28amaSbd6bidMnObkhQLjk6PH492Jaajj3/8xq/+9S8gvVny6cHBtS6eB7WqdiLK7L33IgJQiJVAEEBEctacih/uqPT5RaBkyVkQ2TtU1RjFTBAcgMuiYlTXTUmAGLxTJlQt5IjMxd6fKQmAxBQJ0QGyAoCl0u/8SY6p3xdGiwj4qsqpIEkzDG0bDWLdNMhjkBpnY1vNyJb40bybYc4RFx1/xUGIKyB+Lzfrf9iBS2nx+mMBI5rlC1n1SelsSdsm1C4D33y/+N5a2hD0m6hd+KpWLirMl8Mu2jmbokBhFID4Y5/76C/99I+2x4+rgJ1U7ZS/9vUH/9V/+Y9OTxtPB2+9+dB7f3hw49E7D1NKRJBSpxpCCArUdZ2ZqchwiMF3n/3My1/84vNHJ9/d3aHhiB8/eevWzcO6rhgNQIfDoYg0dWWQ1JIKSE6giOjqqi4CAFREzcTMuEeWKgDkLIDqXMjSbyLswFgFAJWIgJHIGRQmds4hM6gaoxbtwyUUTFW990yMSEDAjI6ZiHLWfh4/NMEhJSnsgJ0SC2zsnTvrOZqTGwBQwHjeqZdarvPrBEuh8VcB9D9AKVQA3sTlmrOdjK5wSF0MxOV6Vtdkrvm2EPp9TC5PJ7Y62zS7NmvTRTJHs36rvb5yYsg3rw3+01/9y5jb2GYnoycn8Qevnf7dv/s/P3i7HQx23njwhgvVaHd4dPokZ1HVPpCCyGWxrusAwDOInE+7yUsv3/nc5z7cdW/s7ZbURW3q/b2RWkYj50PXJVcCsZtOO3bADhHIgEsRAgVnRdQ5B4g5CwA4RwiQc+5T3oGRGOYkRMHMuijBVSl1gAWQnQORDMzkgokaODNGAjMFRJGsaj54LqxKhuRcqKuBDVyEYspNM0BWzakKTV0jouFmZ14IpXm4Eyw0VOvVvK3mx4pFDr2VimbmYENkr5lSS4+ttuDyp2bKqDHOV0vO0bnBFxUBtI90gW0+ppkauiwXbEW/WRbuK7BeapWZrVlLmw75+aksPrb3PpNwU1W/9qu/sjscfuvrf/DM3Xvf+c7jV19953/4J7/1rW+9de3a3bfeehB87TzmHMfnU89eBBEIUKddstmS11wkOu5u3x789E9+5uTkTc/nJ6V78YWnRjsgmkfeGcjp2fGgGeWcU6uDYW2qfTZaE8A+bThQKbHvOBGbW76qaiklVQUmSAjgAB0xqQKAskMzNMuAJJIBlNnHIioIgCZeNDFxkQzAhITsVYoZgJH3NdQVaBFDMVazNgoAee8r7y+sDdQ+0/ks4AMXoFyW9XMbaCMMco1qugSDLRz0Ci3z/TDUC1V1xtgvraofN/08M80M6pV6LmOisMJ3Z1lLl/kowFLsSA/NC+cvAerGbJsuBtJMz7WeGwMX+4Vf/NlPf+JTr37t98+Ppo3v/qd/9nv/8jf/8PFJ8dXew3eP+10GTeH8rGVflyhqKKgCqqkVEeeoSDuotRnapz/9gcn0Yezefvb+4Z1b1zXD2fFx01Rm9WQyrus6xojoq2Zg6sxEVESAkQ0gxZTSeDgcxhhFMzN7P9u2mmaT6QjIIsAuSAFVAKOYO8dIrKLFksbUMnlmTRnAnBmYYC5QeVb13gEiGpIAStYCJgVN2VRDVT85GReBrss5Z9NQVdVslqi3z7eM+SWzc74U5HLjePtBYFv+meLWfzrLVLUlDl/nx6IFiLiQpz0W+7uqKiIioqvHWivXWGlfYI01LmH0Qkwsl8GLjE7L2CcwonlgYh+6D2jESNwnFRIC9Q6sdD/0kRf/o5/56de+8/q/+Ge/vbf79D//51/5F//y90+nWg/2YzQFV4URWcgd5KRdl0pGopBiybmklMwkl5Yp7+75X/2VnxvUcnz0+rNP3xoOGVQBta4Hw+EOABBB102RrKoqFSoZYoKUKCdKBUs2AGR2qcSYu7brkEhVc86lpBjbnKNaKaWoAiIhchbrciaGSTsRyWbSxWmfDlYUCF1RIxcM2Pkq1IMQ6hBqFTRDQpdzVtVZmhBDYu+rGtl1Mcc0CwAIIazgABcZZLWfTb3ocpwb+YSGoGAKszUUm//6woZqqJdy0K1Iv2B7QMvgu6wSBAYrsysAAOu2Ns6Oi1xnswUnc9eSzaej5uz2QoLM764076LNRlf43BDRjBhnoUEAgISqWkqqfEApCJjbfOP64V/9hZ+g3P7j/+Gf3Lvzgd/+nVf/8f/7K8en4utR26okQGMxUtScs5oCMjnqutY5NpNSCjtjp0/du/6Fz3/40eMf7AzPn332AHBMyF2Ku7u7w539rh2Px12oeDCoiahLSYo6XwM4MCQmKVMlIEP2Lpepc857r6piBqjOERGllEKoTcF7n5OYcdd1AGgamQmRc8mmSOyKqKkA+bbtED1554iJgIOL3RRJQNXAkIwMEZGJiYzIOecgll6laNvYtu18HXbPQ/v5lcVfALhw1Pdmydq+6Ju6GcBC9M3ouO4HXZyvbZy1BX8z/+T2/awQcWGSz94LYNov6r4os8omL9wQa9rJ4vzCTYu9Ln3xbRvWer9ahZa7Y1FMNqSAiIQQVIupghkhhlB9/MMfu3v92j/89X/w2g/eHtS3fv3X/+ezSRkMrxdxJsb9ElcAFREoSECMDIJZ2hSdp1BXpsmTEZY/+qP/5ZOfuHP/3mFddU2DPuDuznDQVLHLMRdHHEKFyLHLCuBdnZMxUzElgCLo+xldQGSfsgAAiHnvSikpKREQURbzjtsuIYRJ2/ZBJKboKg8AORU0SKYpZiQEyoBcRNigDiHnCWGefYr2BhCYqRkhARGoFuc9UAp1JQVTSm03US29vWHGC4DiDGEyI9QKXS7kpNlKNmNbuAMMFpHLcIUVv+yxXztZ/rnMSlfuKs5iBVY5XK/j2WpQ6SbIaGmnZFgdYWuCY7Yt9ZqJdrEFlwDCctKHpc8BgH6TbjJUQu66jpGlaMWOFO4/de8Dz7/8jT/9/j/9x7/5w5/+wm//zh/GXBHVuQTt01xDMbOk2SSrKpBjs5PzR845JFIFMCwlmebxOH/6h+89+9whu0nTgA9Q1TQY1Mx4ftYOBsNQYdEkSbyvWKuYMvuQRX1wk+lkNGhMu1DVObZFoQgQsIgUVS3FrAxHDQAics4igl07ViAirKoKzVQgi6oSiFouhhx8HUW9d/0C5VIg5ciYwURVTWb5E9VAxEBJwErJ5LyZOQ4hAGLuI1TMZKZZ9krnhejbgMRliuYlroAtHHRrdRuKXa/wLe1Ns2SUAABcxLP0r1mvtjfMYRV5yxhdwy7MGeqarQerYmK12WsR9RexiQtHVb816aLNBv3m5OCINJYbt25/8sOf/O//u3+IbXv0RP/dv/vmmw8epgzDncN2mlUBNAsUtahWQA2AUExEXEVmUvlq0k7NLAQbDfj+U9eef+6O40im3lejUb23M8xZT89Od3cOi0bMUNXBzLo2A1LwQxFxznVdNxwOc2oHgybG1oxUHJMvWUtWAAhhaBJN2QBMxQxU2GYJX1S1sCORgqBsrpipGDqv0s+bg5kGxyklRGSk6XSCzmtRQhMTBRSxfr+AUooBppJLUUDH7Blprc8vwxLMQtkXomy27apt44NrV94boFsfg0Wm58WVizXul9ez6usCuGCTi+Nik7slRF726WbbEoqv+kERe1VgHvQEMk8gtvwMmalzwUQll73h/rN3n/t7/83fP370uKbBeJrOu3dT0f39wxTjoK6n41akjyAGAQMkVARVKGDORERszA6IlVCu39y99/SNKjAD37xx72CXENNknKuqcqHOJXrP7LiImgFxhRCKAhEWzaH2ABqa0LYtAiASuSYnSTGaeUIwJbHSJQnBSVFCn7Mws5TinFMQzcIwT8ZqjIi9gE4mVV0jUd9DKimpmqEW7Ff3mCERA4CKEbqSkmgx5SwCSggO+sKr/HLGUNQQLxwpc8D0BTY8++9hxc9LXFHokmOLd/2K0stW9sVwWQ1fXePW/37HOjpnZzpbhUdzq4vQzGYOCjMwSrGYQBUGOcpv/dbvPH73CQqdTSOFJhVQw8lkcvf27dK1lpMVkQKpWC6UC6RiJauqElbeNTHmIhlQmgaeff7ms8/cJqLbN+4yDHOsS6oM6vNJx+wNUURKKYQu+IHjmtkTEXvynp1HZFUtAIDkmDyYQ3TsB8GPVN10mlSRMIigKfdBojnnEIKBIFlMU9GUUkqp9M5UM1S1nBQAEbhkRSTN2rWJzZshYUDwROxcYCBVAnAAVLIRsSrkpDmhFCzZlqnZa1ILn8zasYkHeB/Ac/AfDIi1t17mK13TSy5eahdLk2e/5w/8e7x9npt3XXDM69TZXwObDXJT7J2eFlww0Rjz+Ojk7N3HXEgRgTSrpJybplEzmcs7RFQDNRJEM2MwZvbEqYBY5xz5oDduVHfv7Fy/PlDLu6Odk+Npc3MHDXPMOUdASS5VlUfHznkAKkXBkJyrQpVK9h5LSSlPtUjtAwCIGFJw7MGrZvG+MsWmIdFYci6lMAcRc86pqmMqJTOjc65LLYg5F0qRFAuyGwwGOUsIzgykmIg5ciIFHCESAhIRMytoKQWZvQ9dl4lcyRa73HVJpJr7Ned+0CXTwpb8oDBnZriUpXCrFb8CHtzIUb+d5KvHpva7jsiFfjprGdkFm7QV4/1iD6SLmFSc2/iqS6J/dTJp+dtWXAFzmbLogoW2sDhc8UAmKIYqDGYGCgTsMgYC6eDsyUk8nzpjX/vz83OqUIs5QO3KtWvX3379zbabIFrRHuLoFsoDSSFJpYAmz1YT7NV097A5HOnuMKkeH966AURnk845yKXd3SfHsXFKzpUSAV3wtW8cs7bxaDAYTCYTEalC4+tKspVizN7MiRY1yCa56LDZTUWKEEAlkMwQQAlR1BgcAmGx8bQzRFdV41IMqQRfVQ0AOTXGnjpEWHkfcolsLucJcgQhKZQSdSqE6mkIrccCHqbn2E2xdOpUSDAAAMy2mpHZok0jIob12TsxA5opcj2gV931qwyul2zbfUl4eabCNd/QdhfPSrPWneeXlbzQOK8cM8tvRFsRKIvmrTVys0lrryCDPml37mJKZToee1+dnp4y93axEfqYJHb5/HxM6HIWIgLC2a6EiP2Ks5SSgbDDlODGzb27d28//fS9/d09SXlnNEgpHh2/m+J42p7u7NY7w8p7RsS2jQjsiBFRxCaTltDFGKuq2hntORdyllKKGZZScjY1LoIq3NQ7ojSZREIfo5SsznkRmEw6BFLBybhD9MwVYejaUtcDxJl737l+bRIgYilJJAMAM4qpaE4pdnE6npydn5/nnA1UtBhIzjFLiTG2bSvFRLas95rbElfJ92VCrBVbe2S7kfT+hb5trJKDtXGwwc/X3rIV4tan1lnawoZmC5EMlvKarFXyvhrcr6rri6uBGVqvkIKJTqfTdjJl5ul0SuTMzJTRUMRCqE9Ozryrco6+qlJKhoSIithnT0ATM3EB0fTZpw9u3zq4eeMgp06Lu//MjaMnbxEbWGwGB7u77mCvERsDatsWRSgo3tcA1LWzreRVS04ihMyMQKYGgM65LnMpxWHdNL7rupJjCKMnR092RrUP9dnpaVV5djWAa6c5RYsKyMFMHPvYlSIKAlXtJUUkU1GwIpoATUGw3xiOzIr1XoCcM7CVktRIxHKJIrnrutili2WM29jc5p6um06YlfJLMZPLZd5DxG8h/LYxsanzLeNmE0OzYtuCkZdxvIhuXn4EFpNm2xp5Bavubyn1vuJZym80ZGAykCxnR6dQbDqdNj3+zADYRJ2rUpuqClRBQZA5pX4FsAERIZmJiBAUJCPQg4PRnacOkbKW6WAw2N0N3/rmV69fHxGU3YPqYI/2DyrkTmNiQjUb1ENkh4g5i5YCLpSUFayua2aOMadYCJiQVKxkBPDA4WzcDqrGjI6PnzD78/G0qjlUjVgpWVNspeD16zfHJ6fduEW0alCVLpNDBCg5IxoZmGnlWYCY/CxQFxSBFQzRATmibMApFdSYi6kWVU2piGApwK62vEjotUSXZW/8KuxW6Lt00oNqk9m9RzzoFuBfAsHlFizclpucdb3+jTci0mwW/ZIia3Dfyjs3te/VuwKE/c4UjIgGWuzs+GRyNi7JiCjFbAaAkHMmrMzMOVdKURFmyDmzxzrUMctcezaD3BNoOKxu3zl8/Oit3ZFVzz7tuPvmn//p/XsHo4E4X566czDaAaRJTplAJENd7zrnQt2kqIgwaEZZRRWJUIuImBZ1xEShZIkxkxtMJi0nZQqpQEk2HO2CxaoeGGSDEqPVdT2ZdMPhzvHxGRYTsaapSlEiNlHvWXJih0gOLsQxZEE1MPRgxdSVgimbigOmkjMA9vunlqKxE8k8nWSVsHBwXpDKaCtbm9FrG5muIKXbhNHasbBg1l6wKZS3wpHnZsry3Qt4GSzPfPZXcOk1qGiEy473yxDZ/78sUy5Olhi84mxTBABgQAK2rHHSnhydQrbpuG1CnUpS1aqqUs7VAKWomTgOOXWipRk2e3vD8+mEei5qxUwAzTmoKrp2uH/85OFomD/w0r3dPfv+d//sg69ce+qpQV3b4cHw8JB8kJSSZ5ZMRD4ER4Qg6gNX6IAYi6VSANjMCA0d56RdN0VwdV1PkoikUHnVgsB1HVLOVR0MEoAwAIFJSZUPk/MxAGrJzXBY1b6UDvotvrUQaInKAIiYDWISnOW3dwQopgSazaRQUQNjFeuDeUQhJ0vRUqHJRFI04GXwoa1Sc5NMW9W8K/DnAGCdR64+vw67Syq6QhHuB+kC5pu8bVkQzMosyQvqIxdsptMsF94Q7lt0ia0jEA3IAI1Icdqm06NTTTl1uQ4hxggAIYSU0mx2HrSUAqBV45yvnnrqzunpcUpp3h4B0MpDU7uq4m56MmigDtJ2bx8/SS99YPjM06PRUA8Oqv2DGrFNqZOCjhtVrIP3AZlcKSU4pwAptYCMJoO6McKcc4zZjLz3qpjjNKZ2NGra6blzAc2lXEIwteS81VUYj8/qxsdpil3spsm7OltHGUSx8gSgwbvpNKZSnOuzgBORU+mDTVnNjCx2napXQVXUgll64SHMIcbYxpISSfZSSG1ZRZzlWVtwHNiQomuYnd26ZDLJlmeStpDwL5JcabPY5kEAsjGfiUtT85sK68W7tA/NtU0o/0UPmyshZkSKplDaND4da1bvKi2LuHoichwqg1SmeWdn1LatAf7Yj33p7bff+v7rRyLS76SBat5zU1HlAS0zWvC2twt7u+XZ+8Nnn9k73Ie9Hb+7VwWf1ZJjLAhq2tSNc04lmWYfGtUkYgBoWprad/E85yIihA7R55hFwBQdo0rJaep4p4tZVX1oHCtCGZ+dI2KOUcSkFEeYUyucz8fT/f1dJKcqXZscY79riYqoKBIQeQAn5nLOnvD8XFQSmMuFY6ddykVLKWlQu64tKakUEnWGlaHfsEbWc7PNKL7o/w1+t0nI92UkXXb9L4qMZaAvnu3VhotXLDmYGOfBnfNHlsz8dVySgZLOArARELjPcbrqGbiYckcEg4KIYKTFPHE3mT55eBxc06W28qErnRkOh4O2bQ+uX0spnZ+e3rx5O8Y4pOEXvvh55+jrX/+6q0KfdqbPnhQIULNmGI54d6Q7I7h3r37mfnj62cHhno2GurvDgQtYMc0A4IMHRQTwDhNEREpR+mQeppqTpM6SlN6cNy0i2ZT7IAKzMp1G50JsT6qqcs55JzlOibVIqrw3LV3bIQZHqKCxdMxcNyG1rXMOQNs2MjOAIjKhT6lUIaij3BVE18VEWBlSyuXhO8cH124LuNPH78Y0KQUmbexiSRkNfMqiZjTb6XCmiS7PVPchoavQ1JlvZEHcbZBbvvweqzq3mDVXAndZpdjUHFby3S8/u5HCpBcWqxfX30u9Rb9kGy77EPrZqW0GvnkOlo0IS9LHD49BUUT2RrttGxH52Wfvxxhv3rzp6+r73//+K6+8QuRyKp/97Ge/853vfO3rX/W+MhEGZGImAs1MMghYVTYc8MGePP108+y94b17/vbNsLeDo9qZpiJEpr72ACBFQ4WOXOwm5AoC94k/kpKIiYiaeWawJDmbgYID4z4JhkoLJRsJKGoRQ29SIZScknduOm2tmCdOsaiwmdV1vbe3V2IS0T78yns/nU7NEIEGA9fPGLVdds7nXEQtxgyg7TS5qk5FHIdiUIqOx+NUcNLmopjFioqi9lus6YbahvN/ywgxmycjuFICL0vRdQ76PuX11mOBlX+PWcoeoyt4wtUA0FXhbmaCwBsSYs3G3/RCmGIqxRmD0smTJ9Ozdm9n/8Mf+lCctm+99dYrr7zy3HPPHZ+d/smf/AkifupTn9ISHfsPfvDDAPDqq6+aWQghpQ6g37rPkErlrKlgNIL9PX72abp/v7l3r753t9rfs8oJWCZDBg5VA1aQoBlUUiTFU+9CstxnWBClnMR6P68ZIZRSRPoYWmeKqmQKqgVBwCKCK1nBCoIAaKhCzrnEokIiqkqIoFoczaJXEFkF2naqqqKFiEwl52xA03bcRtnd2c+S2knXdVFLbqedgvOeYyqlFEOetB1hNW2jaJOLZRGljFADzPKjbzWANkHyPoXwTAe9Gr/v/1jmz1dg/IrdL3tXPG7sTdMbIuvNRAVA6UX7auH+ZDkb3vKjnoOZWZbd3cPHbz35/I984daN25//7Odf/cafel/9yOe/OJme/+5Xfu/ll1++ffv2q6+++uILL+Uszrn/6v/+X+7v7wNrznE0bLquRcvOWRNs1MBoCNcO6c6d0YvPu5u36vtPjQ72jGAMBiq2MzokdKpKjMRWShIRJCqaxUzEwEgVtUiv+4KZFFURMEBwprlkK0WlGAAgEBEQq5kxMoESkRVL0wLmSikpCpFTUWauXDUZt4iMiGgwnSYi8t53bQcA7JN31aSbgPG0HY/Pp12X23Zsks2QXfDenU6mKqYKOYtZLtmyUJe0XGhiBrOUAlvWAq3RBS6Zx7kEFJdH1F/6pssLbPpd+7avaoTvcWz1ROiS86Lfm+aywldXBQCShIAOD2/+yA9/7t7NZ8cn59ev3/63//YPv/Jvv/KpT32KiP7pP/2n9+/ff+qpp77xjW987MMfOTk5+uQnf+jv/J2/c+vWrbPzk66bDEdVTGMmIbTaw2gAe7tw7QDu3HL37vlbN8pTdwY3r3mESc4phNrXVVVVKZY+sX3OSTQSEYHlkgGdifTi29TASAFUhJwjMEUCUymak6SsqopKRAQ+IIop9Chh8pOuBSAVi1kNQUsppYxGoxhjKVpKDKHSIqZE7KeTrqgAQMiaYtulHELdtu10Oj0/n04mZ4NhrQI7NU67djKZiEFMORdruyTqc8aUAdAXtJU9i1c0SurzYi9hdLusvhoYV63q3M6x3wtnOA9EvQzuy5roplU+gzUu8z21pUnezQa8J0yX2+HYg+Iz95996bmXZKx446lhM/zK7/3+Cy+8tLu7+3f/6/9n01RVXf/mb/7ml7/85e9973svvPjs3/t7/83e7ujx40dtO65qYlegFOdhUMOogZ0h3DiE27fgzi2+dUtu3gyHew60RSpN8MH54EM3nSig95xzKhLZoUhOWZkZpKCZiaEx9WuvVdAUtFfDVUvJ2UpRLWKGZoCIJqVIAWJUFRGAhOhVrOv6CTAQE1dRl6c5W49gUGu7ROTHk7aUEqrew+jOJ2fMPsZsWtq2PTo6cv3muKpdjMhN16UUNUUowl0napVIlRIgedBV5+A8xfacplc5HxdogVXOuEbKLQBdYGuN8O/p0t/agq23DLariRevWLZ4luXGtuUBF+96H4NSi334lQ+99MJLf/b1V3Mnd27cfvLk+IUXXppOx6+98frHP/7xg4O9r33ta4j4G7/xG3ujndff+C4aHB0dHR09ZmfEIJpCBSHAYAQHu7C3C7du4K3b/sZNPLxmNw6G3gubeKa6GkCftaYk5/102rID5ymlTosw+5wE6MKWcEgAqAjIXEoywyxach8R3y+SRIJeWmORFLwjYmKXBR37cddmKcxcSkE0YBiPxwxVKVoF6rrzIghQui43TXV2Om5GTZdKzoLop5NJ18XxeNx13e7uKCcxMxHJuUiBrs1dlpJRxamEoj4VMfJixhddvbRpqq7I0stosaDg5sUFBd3m1WWutkDPe3oflwH3flB8hfLRz/TMb63uZb/Ba1e+8MpPXRxvvvnmv/qN37q2c31nsPetV7+9u7ubUnrllZdv3r75zrtv/s7v/C+DweDs9DTG+I7B7l6VUzo/P/eed3aHSAWtNAPa2eHdId+4Hm7fcHdu+9s34cY1unlz12kELdXQg6V+MxDVxOxj6pwjtZK7jH0mMIF5b1PfbT3L6RPJ9hZSKZqLmDJRcEh92iREBFQRMeh5KqvadHoek/SbGfdr087OzkpJcToJoS6lTCdxb//6yckZEZ2djY9PT29417YxpdS1ZTKZTiZtzlkNp9MupYhIg+H+8dFp18XptItZRKAUl7JKQRVUYoAtbNLMYIO1bcXAJik3gbcFoLDE1fq/F4uC39+xnt5uM0pgvmq0l9qyxAXn6z4XfrVZMimiPhU5zTjsPDC+n7hENO5XeYLqfOcxJIeEpkrAZADFnHMxTv7s299jad45evet+IZo93D6Lnv3x19/svPm4dHRkWrJGmPXVVSjcrE87caAcLA3cEgV+6bBupke7OmNW/nmre7mDffU3f3rB4OmRsTIoWVmYkJ0JppS7jNto0HqMhEhhD7eud8LhrCYiqnWoRpPIgCHetBOUxcBwcUipSAggZhZ8a7KmAmdZCNXlUIc/Pl575nXPNsyAYgo51gypASWmX1ox7FtZXL+0JSBuGujc4Nu4lJKIswO2qmBhdglhxYLF1cJ+vQ4ieRpagEjAkiCnBiBi2ZF7T3KYrNdVvrUG4uJZCIDA11KLjJTTmiJN+HcXFldRWxzRdHW0i9uHptumv9/HstW16aXfu0QmG0ZA0vsWVWpXzEHyM510/bxO49Kkpw7y6iSEKTP3ZxSevzuw8Fg0LY5ddF7R6DsuZ2cFbEb14dVwEEgwjQY5J09eOpeuH3H3bgZru03B/v1aOiD1+A1UIUEs6wHas65vhmllD5pgqr1s4IxRlUNgVPKRBxjJmIw13WpbVsA7BmwmZkpMyNwSqkeNG3bEjkVyaYuU4wZDMfjqSr0WymYWUqas4qYik6n3WTcxqylQNeWfq3m3t5e7nI3y3OWYpfMTMWmSVwwTxUydF1KqetiWwxUoCiqURLLOlfGNsz2xXGpxaIXad1nyo0BGCxvC48422MNt1rxmxz7Pxyba9i6wkm79urL3BOXldTF7rf9T1XmgKIGZKZnJ6fdWcpR0DTH4gjIgao4Di5UIlZytFJ8E0CyInqmOLXr18L+XlXSZDD0wXXXr+G9p4fXr8Pt2/WNa6PRKOw0oarMu+QYcpf73TOIWKyY9e5MISIAzDmLCDOrQH8iAgguJyVSJN+2saidnY19qFMq6DiEWoqWUvodnmKbcidA4FyQYl1pnQvTmEru8y2YiopIL68BABVzim2bDH3JOh53akBEp6fn42lXSmmaJuUu52xmpWgWKFGKdlXjgUTEUpScIRcoAgouFktZDcPmRq+bFKGNjKCXqXbLSFhG6v8P0i9ereRutuY9nUQ2D/tYuzxfmwkAALpIioyLkKiZNwrnjjkzNAA1AjaR8Xh6fnKmCa0YoLIzQEhFiAGIUtv1UqbyDFLqxiPa0dHxnZvDGzf3Hj98cP+pYR3avV2595S/cxduXudr19zBnquCqwg8AYOC5n7Nmqr2C4NmmcuJwCgnKUXNwBT6tU3OcTuNpWgV6mmbCMEMptPO+yqlYmbeBSZXLMYYEdg5d342LkVHo1HshJCd8yUDCuWkqioFVbOqxk5UAdVENKWckyA7ETCFXpyMz1vgyEzMvhRQIQDQfil8hlwicoNMpqhCuUgWzOqL+pihCCJyvwt1L8QZ3peYfU8/5rK43qKDvh9euWaXXeFHeD+Oz0sEgdlSCrtN021eanN89ioPgc3yJxIwqqFZatPp0UlsO5tyCC6V6CqfSkYmx05VqzqUlMmAAQ3VMZ6en1+7ET79wz/0Z3/2B3s7gDC5cQPu3vH37w/u3Ar7+7gzCoOGPREqMpopihg51/vhRcx7b4CIJGqSSw9KAC59kk+ilErsivfVZBIBOZUsYggeAIiwaRpDijHGmKUYQDGzEOrhoBIRNDSFk/MzMG7bqAJmVqwPvAITU9FSSskmYqpkZiUDIiOAiIlAyVrX3LXZEPrQgpjEkMQMjGJM0qcfLybCqWDWkNTFAkXR2BGY2sI+2T5ptI2428pcfvyFOej7Qefy8ReakTKb5Sdf3j5+5v4EBABe8zMtpfSFZW2EENTU0BGiUkllej6enE9R0dEs3WtKiZy7cePG6ck5mMQYPROaIZIWefLk7ODQ//RPfemNP/9ehflgH55/vrpzm+/dq2/dqHdHurvr6kAhIAOCkCqYkqlLKSJiVVVm6JzvVcjY9Uk4oN9Vo99nA5BSSghVTqZGJUnOwr5KqXjvCVmKdrlr2347DkZEZg/GKSUAyjmbYikldp1zoeRihmbao79/S9vmXugYOi2asyEQIkrRPiFDKZolLhJ9iYA5VlMCTrGkkhWoqMVMsVBSFzNFBUUHNuv897FpwZyyV4r15SvLJbcDdNN99Z5yfLnMsgfgspqvdj1sTs1vHv03oxoiGK+gE/v/zFARzdrJ9Px0bEUIkQN3cUqOiNy9e08T+7PTKaKRI9VCRmCUsw1q/OEf+tj56eMnj75381b17HPNU0/ZM89Ut25Uu7s8GjaOhBgIBYAMxIyQggOPaMwzZq8CfZwvIpmBmeZcSlYzymYFcykixfp1HcyekFOSEKpcVFXbdtLlZGaOQ79Zl6rGNgJASsU5n5PEtgN0KaVSVBVUNaUMAKXMMt2JGgAyoaqpGCITMpGiGoD0G2SrAHtWVXZeuCol9gmFVCGLFOWu06RVNJ4kLRAAvSggAhnI5cbrVvP6Itr+ihXqSzR+Xxx0k2tuqpi2zfX1Pj0AW4dXv9R48/piv1Ccr15FWo8Z6dfbMDCogWGcxnY8ceRNNeYOGQHg4ODgpRc/8Md//FUCzKWoFTKoByPJyuT3dqsXnrv31a//3q0b9sx9f/euvfTS8P69MBxSFZxDZOfRAJnAQEQVgdkzOY+SYklSvA+liJrlLGYzv2bOSkTMrqSUUiQiUzYDwiD9ppqiKrOFl7FkMwMjEXHszGx8PulaBei3A6ce1mogUvr9QEqRlJIKlD6wdeY7nnlyzERBcZ43ABFMkZnF1CGKKDCJUhFkAlQTw5S1GMZCGaiYjwUM2DYm/96nOreVo13+rMJl4Xbrr1+m/ZWMeoHICwCtltnayuWNYq/42l7Wr30VIi5PjCIiGKlpv0qTkSXrydExGpkAAWVWVQOxj3/8kx965ZV/+/u/TwyaRMFCaMbTBEX2d4cf/cgLgbs8fXTvLjz9rPvgh/bv3rXdPQsByGy2zSs6ABBEV1fOhV7gmpARknHOBYHBMEtWBVMUVe9qRFQFMc6CmsW7EGP5/xL3n9+WJdl9GLj3johjrnn+pc/K8tXVrto30OhGNwwBiCAoalGkyJkvs+aPmzWSZjCLo1mjIUcUR5Q0EASwgXbobrQrk5WV7pnrjonYZj7Eve/dZyurAY7iQ+a75x53T+yzY+/fNj/vPRqJKAA1bS8izGKEwkaEQMRJACAlYQZCBMPFvEd0SNS3qW1zNp2LMfa9ZpTGDIgQDJ0jMEJE8i5THnIuTyAUkRye71JSBUmpYUNQkdy4D5HK1AMLdUodi1qQ1QNfZky9wKyd7LMuFSvL7cy841pi0NJJuijF56Tz0qte+u1Fw+DiV+fOvMSGzt7xyQ2crVg6PRutpYoiZm6b9Y6N4JAcupyPfPjsUKJ4F9Agtr0QeB8+9dZb3/nWN/+r/+r/QqR9N/cBxHDeNCBhb2erDOlzn37wve//t3dv+bc/7d58c+uVl0eDUe9cHwgRCcEHXys4VoMELJo0EQGQSsd5kUVwUaTrYt8lIjJDBE++7Pu+6zoTMHVVOUhRVTI6hjFxbjYnIgJmbEQOkBA8IsbIzNp3SCTekQKBZTyVU9SeJcWY68dUQRWIwAECIqAzyMYGIpAiqSbJzQQQwSCJmWZfSpeoAxogsVgXpWcvUKoFMa/mlhps+dRPl64LwnA+JHmy20X08OTvZZOfNdk9X/Jx8Y8XH9er+nMGwNobY+cghnXtaFec9tSBP8+UR2hAAKYqZovp4vhwAgIirEv6m7C3t//P/vP/4v/0X/6fHz/6EDGVFRnhfJEQabw5MG0fvHzj4Pnfln7+4MHwrbeGd+5WGxvee3W0BIwUghjFBCwOIaAnBBbtRGMVAud8IgXJBIZFieAAqOti0y9i0wNACEFUmrYD8CKoJqqcCRiSSH4gqhrKgtlUGNF1XVQlVSeCzKaqKhJFuzYug6IRiMC5oMKr/HwgbznLSURFVIHAgJNoXhkVM/SkAkmXEJjm5pmISbBn6NklcEmDGomRIULuHHQym+fEYE0YsgF+jWO9vmJn3hJYWyrtIpHXVeL1guPjrAqAc6vzha/O/ZiTQsGLd7iCQZdGAiLmFkvZbiOArmmb+cJYHHllZVbnnHPht3/7O3/6p396dHQIwKyxqv103vSdbm6UdaWli4hPJ5P+tdeKz31m/8GDcjAMhILoCAIoRFEwS5yQanIDhAIA1HpEdi6oSJbOGLlPTOQJKYmmyIDkqECvXRubri28L4oiRWUWM01RonB2dGj1c5wQAIgIp9T3mim5RAQAk0BuCdb3ggBiAECAjgXUyLmA5FXVEEWVVUVMFMzMVDi3lgcSMDVUBVZTXUY4RECAAR2rZyUWikJsTo3OgfPnbf/lhJyX0avk4aw9qRe/gv94PEnXyOiJ7oQLAn3yY868Kp8ATz0p1zRTaOdtO29NQGzJf6eqr7x076/+6q+mx0cIUg7Ksa+eHzztGhsPYTxAguPxGLY24s2b8PnP3b13f+SLzhEDeFNSF8zQIaEnIO0TchfBzLuC0BKnrp8HM2YlypoGDEjUUpSiKGPkpmsRXVnWKSUkiqwGZBhEJakJ5146YD43FHF9xwAUo8TEubtY34uZEZkqqCILsGR3B7x3qqYKuW2isBE5RFAxYTQjU2VWNVQByZhU1pdAopl2zgBQAFUpmYlqVB8lREZBMiPIZFR2Mmd00QM5Py/n6nXXcuU+Virw7yWS9GsMW9UM5XENLAUrS/S6F5FOOucjLTvlQde0s8k0dj2BYxEz9aEsiqJvFsfHxxsbG8xSVsXx7Gg6t/EQxqMapNnegju34fU3iq986fbWpu3tFd5LWZWOSFjN0MCJmCmD8yGQd54TgkS2aKIOvUoyMwUiAiQTEWEk71mMJUsP6rI1GiBSYlDNZBoIgAZOTci8KTnvAYCTdD13bSyKCiDAcuacWBJVRAwBDZ2IGaGIIjnyXkTMUhlKYUyZkA5IBFM0BVVFUUsKomAGuQ+aaE60ESIyJFHpEkQBNQ9QmuUmjLqWdnxlqJPWCJQu6tErVs7Tr9Zl938bAT03rvkNS3NkbbeLhy9/lSIgkIEpauL5ZJqjl2hIRDmuU5bl40cfvPzglacHz+vhYDpbHB0vQoCyLJXbrTHcu4tf+MLWF9/Zu33Lb4xdVQJ57zyaKbrsDns1UbEUO1U1dR4LdIQsKkn6SAQCZimlxInVzKmhc77rYt8nMU0dZ3ck9hxC6LpkiiIaU87Ng0yAJMxliS4UBogQnANhMIPcHk5NmJklGRGRzw9J1TLibiAGAgiiKfaQYmZMBGGLLGAZRjBREANZ8R6I5niSqpogiKIYsSAbKjhTB4iw1vFdEchOs8/P+z1XLHuXrpknPZdhbd2Hv69Y/K83Lrpy56TzekN2/cAsxpB7YwBmd2MymQizQ9c00TnMszidTh/cu/v02ZNqMDSzg6Nj56govXNuWJV3blefeXvrq1+5df8ellVbVxAchqIyExFFIlXuu9T1rKh5ThGcgmqy1EflDhFF2MBS4rbtDLz3TlWFmZn7vnfk+xSVzTnX9p2IIJUGqmLLxd1QVVVMRKbTuQHFyGZQhCp3Ooupc84hukxggA7ADADVWBWIKIcDiBwidl2XkhMxFkNTVhMGRGBdERsZAKBZVp/Aah40qTIAozfzasSCiqCWS8Zg6VvlyNMaunLegfm42Tvnb1w63Usn6dx+J271yVhv2nxdBsuFC597UdY/2mrTOcct56SdHE4AYIK2bPhzCniuUkMcBF1mL6GqIBqBTo4PlQXNi6CHgsiT0z7Ob9zcez6dGuKgKA+eHIQei4Hb2SjAz2/dgy98uf7C54a39mhYkHO+KFApmqKwqTlAnwSjmECRlRDHXjmhNgRMYA5MOSWNAD51bFqCOWYPSJxS7FgSs7KKiKCwEtbO1SlJjNL3OVK/rCmMMbJaimKGRA6BAAjR+j46pNSrKscoPhQeq45zXajXZcUwel+rAsckgqQFmKKJqKmZILCaCmR6dwE0QzVTU1UFhJ6NwTGUDHVnRYKQ0CE6cJjN2Gx6goERXCT/PbVOV74t2Qo2MgAApdMermtGZ14/dV1I8riu5OMTjfVTX2pkXPJxTUCvGgrLd/HcGU+SRESSkQshAICxELrEsW3bGGUQyj4l7wMQqXI9rGOM8+nspXv3nj991qUulDgeedP5rT343Oduvfnm3u07W+PNsqqNSJ1jyqXFBKjEYsya0yxUTVlE2aEVhUdDSZGZVZhVVSOzIHkix8m6rl0sFt77qqy7rhMxEUUg52g+n/d9ZjXLa5whoinYqn8vkTMDERHpc6izi4yIABh8oYZd1ymio9x6xFQVIMcLcq0SLfEoNTFlBbElSqqoZpjlJz9Jo5wcT4AEhrrqvZr70FIO7a3NYNYr8EkSJl9knDvk73+Jv8ZMXP9b18Oy151uvfny2brA3CK68rkYt+/7KhSOXDUM3L9fFa5rG2BSQk8FoXfOHR8f7+1sTaeHTdcSwtb2AHExHsHnP3Pni5+//ebrm3s7vi7MByAMDsGQzQpQZbEUVZQQCVHBRE1K78BS281M2JNTjvP5vJPkXQlUOEQRiawAUNe1Cz6lJKbOORVr2w7BmWFOPlrWF2SoAVUNV43Ml2GblJLq0p5xzufcJTUzA+d9iimn0y8lSkU1R5IUbGU+GGSkiRXUwDTLgmYgz4BAwcAUyMAb+CzHtvJQDfRk8US0k04NcG2g5+LG9W/X7dE8txe9kStX7E8q+LBm3p4bl578UnV7Yn2uVKxevjNq5n1CROYIqF3XjOqhiBrr5njr9o3bCM4UvKcQXOr7qipSShsbG87h4eEcEIYblGAxGMHbbw6//M7N1x+M9neprplcj5RyWQ+ZV/MsntUZBueCc8ERAWhwptaJRgNmjk0zz6zG5EtXlFVVBV+IQiYTKqpysVjkprjovAtFXQ0Rg6MCDBGI0AGSgomBiHFSM1S1HFJC79AFBTB0o+GWd5UZii3xdBHpuh4Rl+zZZ5+0GIuqmCWxpUuUKWqW0ThTEAU0JANS8AJBITC4JJj7J2dwwcxWBB3Lfta6NrkXMaP1jeuC8eJSlD/6yzsprJbgF1/rL1/E1650cTVf/+rUHDlZ/HPcZ/3VvMzyVkueqCzLGKOnUPoqRqmqwXAwQEUUUoXhsGbm3PDg6PAAEEIFIVBd6a1b8Btfe/CZt3f292BYCTgGUCAAAWVwVPSMZp4cOiJTyKTCBIqknJJwVI0ASgTki1DVTsEUDemkbWXklITrumbWzCWXJCXRxEKEQG7pq2QD2xABiCCEIomJCKFbddwUAHAuLBatKpDzAhJj6jmvvYroiTDvRkSqKmKKYAYCoEswHwHzYr7UTtlfUnC6fO9LUWQlUQQkBAeIqsvqzYtNiuCUDTGHnU8nC5b5aAbrtumFcVHjruvRj/F5fg09un7s+lj/Si/b7ezl1FDzzOVl4LSnD9l6lnJRhRz2NUUPBYHv5jG28dWXX9saby3LHhDNbHd3N6UUE5CHuq4NeG+PvvLl+1945/bNfT8egCNGYCQxSGam5llKoAJd6V0J6JeAopr3hGBgyYA9YT0oRxubRVWrmBoakikya0pJM5+Ac2bofcFJwRyAF4ayrIMvvffeFY4Coc8RUUOPzvfL3viFo4DonPNVVQ8Gw9l0zkm8CwAosrSJ3cpSO+NxKuael7rsSZ1BIofZ6SHAFdWmWXaVnCgldUkpCShQ5lVazcuKIGV9Htcm4mNFxS4YA1dIxJlDPqYFOFym+S693jl1eOl9X+o8nTNfLvZauv6XMzOqd0YAbjTYkC7+7d/+8q3XXn308OFsNgOA8Xg8mUyGG8PpdHp8PPMO6rr0pBub/tVXNr/1rc/cuIEO5w6RWYA0BwaMHGqlUmAQNGJhjpKhSkfgyEVRJCh9GFZDU2qaGPuUGHxZGYIZxKaPvKz3cC7MZrPhcEzkcx6wcwHBtV0fwjKpWRXYcjYnOeeKolKBzJLU9V2MMbu6HMmFIKYxxpQEAKoA6IiITMEMQghmKGJEQAQ9yDLhZvmoz6I0CGrGqgYoiqzA4MWADQ0IcElaR0s4CtZLaz52vIh2w1X60lUe9pUkCutwz2prXn3Pmxfrxu9luvD8Je0yMb3+PTkxZzEXIa/HQQ2c88AwKAejwfivf/zXb7z6xru//GVsm67td3d3j44muU3h0+dPnSNXOBeIXP/Svc1vf+uzN2/4so5lQHSEgggOTNTAkQdXsDrmBKDCGoUR0XkCRZboHQ4GG0VR9F2czZu+U3RlPRxF5dRz3/eLRWuGRShTSk3TDQaj2LMw9H3fdUkVVSiEAhEgA95gpknEAIzQCRvz0t+JkbMsMltVjgBgsZjLsqweigJwid7nR0QAqJojoh7WmN0QMfO6KDBkzSrACpqhUEA1YguSySrQndR1IZFZxqMAlsvaJ3bPL46smPEyXPJkvEBGveFFK/VSXbj+8US/XlTsl6KkF25hGaI49eaIdNns9gxY65znnqtQjQaj2fGMwE2PZylK18WyrGNkVS0H9WIxzwH5UJVNO7932336UztvvrU1GsTgxHuPaC44VQZFR4RIbBrNkDDGKIkdEDoEBXAQQuldiSjz2WI+77o2hWKEUKhiir2IxcgZ1Oz7PqM5fZdErO9irpvLiZ7e+6TsHM0mE0KnCojOUVDVvk+IpEvqGckGrfeOOdPQ58QlUIWiKBRhBUvlOLuqoQKoLvM6YblY0TIPKcuZrZZtI1FMRqKQDGDJL0mKAIhkZ/TRybnOTdjJV+tbrhbiJef26mSXnDCPK5f4pV5UuNSJgmsV+DUacf2Wz58h97U7xW8dLBGNrNFPxJkAwC0RUkTB4ELpy+CKn/zsh/fv3P/Fz34urES+qqrZbLa9vR1Tms8XRDCoy8Td5hbcf1B+9at3tkZdXWNZFmqJUHOcFADQvDCyiYIoa47ZqDGBOUIkRwhd2zXtvO8SOjcYbpv6mCxFTWptF5NYWZbC2ra9mYZQxj6lJH3PMbIwqIGkDH/qousHgwGh67ooIn2XnAtFUYIRq6kys+QIkHMGS4cHiCAX3SNiTiY0RTOXc+dWjjYoLp2UpR2x6u6EiGaoYGqk4BmciBMjBX9NEGi5gp0ooEv91vXpXkuqXG2RSyXnKgvVXyXmZpc4bOs3ev1tre9zbudLdW0GRU/Mg1PlSgQX6EfJYBmTBoSkoQgbg40njz7aGI6ODg4dwWQ+3d7ZbPt+MB5R8M3sWBUGQ+9QovH+PvzGbzx4/fXB1hYPykCIgKSUTCKAggVVJ2BiyTCmCACABLjsCq2cknISZVVf1TWRNwuzpo1sYKQCiOScjyypS6pK5IUtRuYkKaUUVdWIvPOIACI2rMphPTieznKiXV4bOKmIxBgTKxg6d/KspCgKM3PO5b79OdEz55qIGrNGNuFMe4BCp89ZcjQVCNFlpavmBJyqF3UMTi4TtzWLcy2/5wq9ZVfCnKtF78IVzh1yTjxoXYzOaNqrpfOasa44L74T53gUTvf8mEvR+o2tR9fMDI08OFB99vRpVYbjyfOmmdeDMqM8m5ub0+m072M9cIWnGOO4hnc+e+sL79wZDGbDoRB0xsnMVJktKiYAMCBVUGMD9kgOwJhT7Pq+7WPLzAqoQoPhZlmNY4QuaigHRai6LjIvs25jG9u2zZ5N33aSOHYpdiysCOYcFoUvSiIHy5bHIh4JAIbD4Xg8FpGUErOqCBoSkGWkXTQ7Xt57IodIq+ITnzOtlopcgJVYQRhYgQ0007wuESlSI1YniqIumU9KyVApXOUKXFwS8WO05+mBJ/7Di5it5y60tEH/7gbv+gUuekjnFv2TfXAN+7z2Tsjs/EubW9QSuK3x1sP3Hzqw58+fptixdFvjrcPjoxs3bszm80U7B4DCQ4wRAV5/Gb71W2/t7rq6FsQezBF6VQFkNFEgRBBDUyMzQBM1VTFlM0EzNcmcwWVVdW1quuicN8PE0nY9EPZt6vs+/4plF5o2pSTLCKRBWbqiKPJXzMnMWGLfZ55WKX1RlfWi61SByDu37PJgBojgENERAORGOplFXFhZAQxEMTFwyjyioAAqoAigYBl1yq2sAE2NlViJzbH5pC4qKgTAdXbNdeiH4GwYD2EVmF13WNdw0PWpPFFVRKR2HlG6XvauZPm4ZnxSacZVbPPctS5K50Vtf/Jv9k8drH0EQIDal57c8ydPx8ONplt03WL/xu7x8fFgULPI0eTQDMqSAEwYxhvwzmdu3r89HpbJBycSC+eMU/bIEB0Y8hLYRlRHQInZVNDMEwGoCJoZi7IqUIEIXS85V19Vu9RlJ4aIyADRgeAqSgnOubIsqqpCRObILKpcFGWGnFIS56iqqhRT6pIDTGY5rWlZYOQCERGBI2eoIgYgOZVOwTGLqCS2JKZKuoy5m9LyIZupApmZmoqRKLCSgBN1yZyYEyQAR3DeoIIziiGv8gqrKP7J3pdKxQnCc/rxBQRtXQyuENCr3a+rvjgRpmt2+Phbg2WQ/mT/850a1nqI52ttDDcef/iIAIvgZpo2NgciSYy3N3aeHRwys3PoHDJLWcH9u7c++6kbg4qrgozNAhqIiRB5UzByCsBqJkJKqITJezJW7ZnVGNFyMYYAmljfxaZNuYtiktilLqWUq84AcsNsc+DzPaNhWfi6GhJR0y0S90RUlD6EQYwRyZxzZRmEpe9TXdfNosvNaZftSGBJfqJqOd0upoTgmHN7Soop5dVcFLOtKYanfoSBAiqoWu4BhiImhmyU1Kk5c8HMmeFKQE+fumXfnzCXIS2zk2C5eC9Tea71mE9PdQWgfikmkDeeYZq7Fhf4+PEi3tnJT7vKhQK7fPP5a62WjLIsnz55kpORY9vs7e09evLRxtZGnzqRZAC+CGJJGcZjfPDg/t079dZGbdogupwh6YBAJXMwCSibgCa0AoVAg2JnOSVChYL33mcijhQ1JjDFvu/ZpO9b0ZRSj6LM7FehzpzG5pwvypLQhxAS97n9YlWV3vvUg7LkZ9L3PSdwrogxxhhVV41lbIlMZx4ZIgJQTlltmwr0KcP4YGq2zOzMySK5CHPZSUDNOKtVBTbgVZKyIRF6RVJbAjdXze9q4tZQpwsTeo1g2CrOflEMLo6882nZ8XIxXUVWT488z4lwneCsr+aYazJz4etZyo5cs5pNFjwb5rJgKIiAHugEKDY0IRBQIyJApw5YvYVxOXz+7Nl80t7cu/H4g4/2t25MDiajYjtQdTQ7TKrkCcQDW+3TrV379FvT7b2WXAxUAouhN++YQBKrAiKRgTdFUCBNHthAU5+4Z+Gi8N77GDn2nASEXYwco4ooJ4YEIOS56DmRuZSJNQCMoCgKdEQefen62DXtgrwf1pug2MxaRhT0phrbCOq8D+0itW1vgERkiiAQvCtCAUaaANH6PiUxNJc6S+wimyqxgAqJqbIhiDdDNFUxCDkphA2TUVIULIwCW8FMbF6BDB0AIIgDw5UZeoI0kxqiomLuvXoyMkp6smwuReisSWoA6x2yzcDwykq6U/26xq90CtQvvZYLJBsvOP6O2veKEwIAAOb8bXNIassirCIEVByNRj/55btF6eeLWW593XX93o3to/m0aXojCI7AFEHGY7h3f3T/pVveT8xMRLwHQDthjT7nxqmqJE3JQEwFilCF4GLXJ07eB1Zp2rmIQ/Q5U05EmNlYVFVYTpraZWvZEZlZ0zTCWpZlWdZoPhMqd32nSUWUWUyUk8WYVBWQmNXMiiJ47xGdiAirEahmjjgQBWZNyViEU16LSXIWXe4da5nTxthAIHPFejNQcCqwVjkMZkbLRPnzus1wqaOuj3CeW75x1WDrJO8sS+oZPXUV/ri2/XIcFK9G2j/2Fs9fdY0cdt1YXhvLr5Zqf7V8KMK6S7mcbxEDUzUjK0KxWCyePn06Hm3GPr507/4vf/aL/Zu32z62TQ8GgdBMUuS6gBu36tdevbG9W4QQCECN813kWmyHPidMqhkYKigrp2QcDQ1CqFKKzWKBaL4IzDybzYmCmgmzCKjm7DiILGaSeYmI0JNbSr4CEgIbGYSiRHRd23VNpwLcc0psAiKgLMKaopqhoaUoQFQUDsyJqAioQmZYFkFWYJYULTGoQmQwVMCcGmL5DIhAoGImBqwkGATIrBAgURRDtaUYIajh+eTLdRm9Shqu8Y3gnNq6LGH+ZLdlsWNextfO4M8dYLkW6jSZ4EXFdN2wgAs3QdedaPXqrv28k7QEQ8I1gAMR0TKZS9ocbX7w7gf7N/emR4tbN28fHx9T8M65xbwVEe8donFSRNje8q++sv/qa/uDoXgERCMgREPMzC+mwKIp/2o1FBVOlBKoQSDftbHv++CdKh8+PzKgejDMemuZ0qa69B8MzZDIZ151M8u5IMziHCI6AIuRQaXvOPa594KagDAqGydgFhFAJBEQAYcI5lISZmVVVWAgVRUGEWMGFhDODpABYE51ETCj5aNyrKzG5tVIzRsWSZ2aFwPLs49g6y6RXRcZh7PCd+k+uAbOfNJF9eL+pzjo6fU+sep8sWvnZQLW5Ph0nPmpisuGqAKGqHZi46uaGSE6JOdIBRaLxfZo5EPrAz06Orxz687TJ4fMDECOHHNHADs77pVX919+ZffGrUFdJXLgyRGBQwATAxXmfPJ8dRGLUVIiVQTzTZeIoAghpb5t2+DLsq6aLvWRmY0N2UzEhM3MHAW1rIgzDkaqwCyR+5zTpKqcEiiYkBkaG4gDIxHmpCKogmDLMjdHPoQKwXPqu6ScRETNlSo5lxlEkAVUT5ogUlZ1hqRZ1xiomYBTA4UgWLAVBp6NVu7Bac1Gnng1WnMz8h+n4ntOj5yb4qtW46v2X5eEc8eeiIc/ARrXRWmpRF9YfZ67j4uHnUPmL4wzLJ65cfS5MO9ydcixZMCiKGaTSVWUT58+vX/3pcePnty/fz/1Kfu/vvRgzAk2x/DS/Vuf+tS9e3fr4ch86IIjH5zzCpD1X2JOqupcyCS3nGJKygnBQrbHJKloAoC6HuSm3TEyohNOfc/My5YtBoSohJTz4XMj8KU/DgagwTsAUDVJIClxElQ0A1A0MVVQQVPKEUsRI/LCGCVlr0gVRUAiAKAYqeZaJVM1QxAzdAq5dMQAwVRB0cCcGgkEwcKsNPBszgBzAYeBAuIydePEt71kduCyWT01T8/JANCqyfx1k3561KUymsf5JX55YdCLzvpVl1mHDK55gZYf7RTmvMZeXt3G6VgRJRIakgIhtm1ritvbuyGEEEJRFI8+/KiLLRI5tDamqoB7d29+6o2XX39t/8YNHtZNVTtygGioIiCmMaWYKbiJxMxSSjEmjmbgEDyYae7vakv0seu6PnLusZGSdV00JTLKLWtUBAkzayWhN8O8OiMiIOaKNhNIUVKfjAGRcrKlMKpkeEjBvAiaOk4mbd8nVlXDZdcQjrnp17JKmDUnJxkQCiyXZwMAy1YlMHoFrxTUAoNn8wbOltIpaMv1nQwBwRQzsH/ZTF8QUFpO/Hkr8ZRFSJf3ciHd81xE5pKrrYY/6fBxIsWX7ne9dF6zw8X97bL9L/pPJ2SbJ91AVTWQQ0CHXgU8hqY5/NI7X/zhD75/7969h+9/kHkzBoOq6xuHsL+/8dYbr77y8p3dnaqupsFD6QNAb6JsbJZUUkrJxDJTTO7KmVLK+aAIpiIGrIYhFESubXtOmfNA+tS1TRQGIhJA4SQikAM4RoRoZsJqCqZgYOSJWZhVkoIQkTcyVTAGBTO2XJzOSQFUGMBIFPueY1IiZ4QpakoACmYgpmyaey6AA3IIjhBXXMKKhoZGACAUFLxZKeAFvAEpOcjop6nlUk3LLjYhLpPJrvHa8+uxUi16rihjBQysG7WGiAJn0agLs3+V/3SKg5478pN68eumgp3V7edti9U7tOa4La9FRApqZoIClNNCDAxOpNMEHKJzrgrFs6Z56/U333//4Z07d1PixaJJKVVVEVOrCts75WuvvvTaqy/d2B9vb+HGuCtDcKjGIk5Bpe+b3DInJi5sGW3q+5RviZkduZiYAoNR4lYYhSlFdqHq+9j1QliEgMysSRAJ0ViS5siSmPc+9b2ILV27XIouueQDHWBug6gCAM6UcxNxUVA1ThCCT11SQQIfezFyqshiqAJAosYGhmB+KV2IICBq4JwTMTRnZh690dAM2RyrFzAB1Iz7ZE9YTqAmAiAwvFjqfm5kv+oSA/QUIzpzBqNTr/xSocqyd0mCPABkJ+l6Z+2qHc6Ni/zsV97TmsI/Az0iwIq643yxC6ojz4mDK0AteF+F2qMbDAaPHj65ffPW3/z4h03TeO+ZmRxUNbz15svf+ubXNkbhxv64LGZVUTikvuXKKWDuxghJmBBNUZT6mCQxizjnCL0aMGdPPImYMXIisADg2yZ1rbBACI7QWfZ7AMCUmVVymqZxgq5jgFyDASJKSNnEBEAVNMl9Ptxi0bKAOd/2KfbgQmGmi3mnbCpA5FWQe7ZlLRElFTYzBEEwRPJoDtnECJBcUjAkFARwyYitUEM2UKTcHBkBDBVWYgpGCM4QSXNvsLg2UQBnl/sTKVzpNbo+E+2cEr5GkK5SiB7PeyPXn0tfoLfI6SUvNzRXF1zdkwLgJcsJKhgBYe4EqhyLUGoSQl8X9QcffLC7u/vLn//q5Zdffvjw/b7tAMD7wiAZpPv3bnz1K59/+cHdjaEbDrq69kjCzM459ZlNCzgZi5mac4ETdp2YqQEKM5EhOmHLXAWqYOr7PhI4Feo7FjYCb+oAACSnZSgoqFBmPwK1lFKKVhQBwS9rQUlVAHOFGpsmS1EkClFAsKZJsQcFtGR9z84CGDAnQotJHQUWBXTRogJQLowiBI+KmoSB0AzQQWIj9OC8o0IVknoz09ytHwFQbflsV/8uZ4s0G8QX53ElHxdl8eJijYgAS69LcX3jJ4ac8sga1M710btiXBmlvfRe8yAHy1fRTnNP1660/CXnkYS8G+pJ/lZOF/LkHLlnT546RIe+LApm/uijjzj13hcAICK37ux+81u/+fbbb1S129kdpTgn7Dm2SAlsuSayUttL5kAflGVKqetSCN477GOLqIUnESCEPnEIpTDGZCCcksQeTCkURZ9YJNuuIEmFFQ05mSNwQKakgsJIiCnmzl5mhgQAYhJBxIyBEwBZFDV16MyEmAGhTJEBPGEV++Rd1XXJFSUYoBMEIOfEwExR0AdvaJzdIyFDNFeKuWg+9/c2BAE0BMXcndpOZ2AFKuEynHDZ1KJ+rGScPwKdrPKc/i7SiYj+nHq7Cn299OD1j2e8nDMnXJUWocIq3gUAJyyxZ37D+jt9cYgCudKHj549evP1Tx0+P3rw0it//b3vqiRE9N63TX//7p1vfOOLX/rSl+oBbm7Upil4E+2KoMF75o4ZzLTvE2esO+E09c2iQ8SSJRSo4slBYuCYiKyNCOj7NnFCTtJ3KpwThTCyMLMppMSSFBVFLfbgHSKRik/JRFgEVTNPDZiBGmDu96Rk6sCg61iQDJyomjoxTJGDq2/s7qee63q4v3drY3P7yfNnP/7xT1vJqaLoEAsXmBly4zlCBmMA9EVUVCwUHBRBJNPQmGUnCgAg3wQ6c4aAJz2Wlvj6WiLIJ5SBixvPSee6GvpYGcs7nMTidQV3XXXYderz4oEnd6Znb2jNBsczt0s5NQFza4CLFF3MHMCjwfR4trW1NZvNtra2nj59OptNEMF7bwZ3797/7d/+5le++pnRyKMuQnCiM0exDEZORBIAZNCmaZPzPiVVpelk3re8tbWRuamdM2+YNKYkCJoSEUDbKJg3RcsJP6qLxQIIASgl5ihgHhSzxyMCEjUTWQssW3WpGoCZ5GUWJQGIZd4PMFLFyCoCkY2TlmHwzme/+MXPf/Hw+RGzFaEqqvrV1z+9u3P70fEvDw4OJkfTrm0DBmQxIk+kgN5hQqeuFgGFIplDKADJQBBwFS5aOu7ZeMyBTlvNr62VZFy6pl013ec2KmbdrB+758ee/0V5kl582NkjP/ZW9EII+NzZ8hkKHzQpOXry5MlLt+/3bbe9ufP+uz9iTvWg5KQ3b9785m/97uc/8+m7d2/G9GxQDU1SVXjmRE5SbFKcF55UlCWqAjCmpLNpOzlehFDEBGCQQDxZD5p1DTMb1X2HfQSPYEpEy242KSV0ZIYpMSfzyw4ciBBUKLYds5o6RIy9rjKD1AQQidRLEhBgVhWKIr2AoEMsYux2tm989Su/8YXPfPH4YHL37ksffvDolVdem0wXivDmG2//1ktfmU2nTx89ffThh9LF46Oj6XS66BbRpBWZsbTRDAvBYOiTOodiqwacJ7lGS/xV7dSjQJVVQOrj/Pizc5cRf/wY/XUym+sfz8M7l22/vLsdXCJYeOGPS45av17ecg4+OIdDrQ7W9dOe669yAmANh8PZ0awoiul0uru9/8G7H8zn81A5M9u/sfvVr3z95QevbG3thBBCMQyuNV0AqHPIHM3EB8qB866LPriu62LPz58fxh42N8vJZDaoSudRVEQjAToX+r6vh5spiZkTQRE2wxhjxgpTSimJLRdrRnQmIAbekxmqqtky8wgAciTVBJwDUBUxY2M2VkkJDIFF29gW5eBzn//CH//xn8wO54GKbpF2tvcA6ODgYDjerKoBIb5y/5WX7z54cvsesPRt1/dd23f15vjdjx798Je/+skHH/bRDJB8QFuCSrCSziXko9mgWtMMmFFUy9XGLyKjVyU3rXkUtIRNX0CJnhHWte1+DbRaXdFOVoD18SLO++o1WhmhgJiJqk7sUliGgE/XfYe6jLfR0vszzJjI8qJoREsjH5qDmWcgVFJ++MEvg0cfhma2s3OLPN66sz3eLqraayqQ+hAQKRpoH5VcKRyr0sWGY499B8LlwZMZyqAMDrRUkD5CAGcGYOQRUi9olRg0sVdTFi592fdRDJVD7BwnVeMkvYCSQ2ZScZWzvuM+AVlQScJcuopTckA56cnYoomwRQE1cLk2A0AtGLob99/443/+v9OiKALCELunT+Ps8OGjJ33qSsDDZlbKEHrZHm1t39o4fPKkds5TWYetjeGdjZffGlefcvbdv/7F3yBoUlZDoVU+IZysipRbhRgtKzdyoBZtbZ+Pi7ObrYrn0db9BlwRs6wUE54TuXX8Gy7qNVzeDKzw0SvbL17WJupFx/XL+qW4Vl4DcyTjBMkHUgKHYABY+DA9Po5dT0bbm1tPnz4HgKqqejERYdbXXnvjxo0bt27te8eLaS/icw+Zro1lKEWbqqoRUma8mhxOEV2fkgH5zJ7tgxGIYdd0njCqFEWBgG3bgoCJkVEmGlRBMA8CZBR7XtpuoiYWXOC+r6pKCZRFxDgZcHRIgJQ9M3KoCklAFWKCAgDBxd4SgC/Kr3/96+DgYPr88cMP9je39m/cuL138y//4rvRpNdUDeq6qqqqaLq2KItetZsvKj9o2zngcai23nr9td27+4/+62fvP3/GzEb+eoT83MJ6Tgovjfqcm98Ts/Uapxng8uX7cvE4uwPhhQEAS/P2Wj2/sqtOTnq+V/m5R3P2wnRxI9myBczFH0kADkFSMjNlYebnz58XVYmO+j5tbm5/4xvf/OIXv3xj/9b2xlZZ1JkSScW6LvYdmxKYJyxigphMGKeLZjKb5/ieK0pFSElin2LkJKaASYCTsKgpIjpmA3AAzhRNCcWZYuwY1ZNggGBRN8rhRj0mC2QBxHtXFq6qQqVCIhh7RQjMEHuMyUkKqqUpIQ67Bj0Ox+Xu669+6tOf/uyzw8fvPvzFRwcf/vyDn0eTYjTau3tr59betD26eW93NKq3djbLUWWB/vJH3/8v/+//6rs//OHjw6dH86Od3ZGldP/2nX/xT/+LQVkXrnBnMZH1yb34kGGltC664etfXbNeXyrKVx1y1VHrFzK7DJj9WBlfP9H1+195Z+vPbdmXaCnuJ8y7K/kWB+g9laHomhbVxhvD6XTKKr4o25Tqavitb377j/7wH969c3883jTD2KWujYiOyPdJq2rgQl2V4yTUtQroYwJyhQhSKCIrIsYkTdt3Mc0XDYIXc4ChixCZUtJM+ZqixV7NHDOIUd8zYYHoNZGxK13VzXpMdnPvDkcxw/Fwy/siRTHVFKXrEgCCogp6KFEKTd7ZsG/h9o1XvvrZr7/18qdGYbQxHPkylMOwfWN7Mp+00lPlJ+1sIe3tB/sb+1UofdRenT2dHC6En06nf/697/7q0XsM/dHk4PDo6S9+9vN7t+9+8xvfSjHSBeG4VEZ/jdk/d8ilUniy5Rpo6bwWv6AT/Xkb4YXv6RMecXHQusd/8sYgeTU2zE3ZwdTQWeGdceq7tg6lR3o+WwzHG5FTTPKtb37tH//j/3R//0YIRVVVyl0uS2eWwpNzYWO8gzQTTm0ji4brcpBSV5ZjsE5EFCAmYVYgF1Ps+74usSy8iKBaACddJPIOCxbtu4joEosrAjpdLPpBWSFB4gRGRP7wYDJm3RhvzRfTp0+fkgERxT6RQem9iTpwZIRMBYZxOfC+uPfSq6+99MrOeP+vvvcDGLiDZ8/9fhiMh8NR9dorr27Xmz//5c//9r2fPnj5zu7t4WAMyuArYofFuN7Y3927c+fW7r4oztJ0Ho9/9fDDTtxM5Le+9o0/+w9/MW1n6bIy4v9/jnPWheElXva5JJB1tb1KWD7ZdfWFma73HbmIApxdwRUu2NGrby/37s+QGdsauYmZKRotY0iIiAZoMJ1MAlBdlE3T5TT12bx5+3Of/+f/7F+8/enPeufKsvSEYhpCORiMuq5j1eBLgyTsFgvpOjAok1gSp1A4D203JxcSm3NemVVQGObcEY27JoUQwAAF0RP5YMqx78tBzdr0zJs7+0eTR6HwVGDfiifXNUwYJpPJ8fGxd2hmbdtJYodoakBmCWpXKDhH5YOX3njp/itFGAy2NhYHk/nTZzfHo18+e/jez3/20vgNFhkPBpubm0cHh//Nv/6/ffozb27u19UIFRbRVUWJRM4XYe/G/mtvvfm5tz9dIj5//OSHv/je08eLn/3yo9/f2avn7VuvvPa//tVfQH1+kVwprVPk+yLM8ncfVylUPElnsxe63NVOEmJO5Dv5eM7tWjv1JUw5H3u7AIDr8noC7KsaIaLLJYSEhiap6+fzeQhLQo96MHxycHjrzr1/9i/+5Te+8Q3v/aAaAmrsWgAYjUYIDbNH8uS9MLNoTCBa+OD7bqZacOpitNxQMWeCJTVw3jAocx+1j2oKTFqRokNjFMEuaTCiUEUGl/Tl19547733dne2kYr5dNa13aAed4sGEc0FAAQlB95YCbwTLFyxu7W3u3Xj3t1XXr7/ugg+f3a4s7UpR/Nmcfzkvfc/ePxeHNibX39nb+8WIJtxH2fvfOnt4WY57w8Aa0Av6JP1rhhsbm9sb293t9Prb75mGsOAHj1//PDww+Nm/t6HD0c7+2+88upf/Ye/uGoWTmdzvVbn7J4vGEyyqwPdl87+cq4vbsm7nT3Nx5IofGx2yAshtNeMjDvgGkMUIsKqn6ADVLa+77qmHVcjMucI523vi/J3fvcPvvmtb9d17VxgFTAREUKs6zrF4kQ3K5KIc1SptQTA2iEUoqltxIA0RSKMzN6HogixBxDqWhGmaOoJo9OiLAwcAggDkq8GtbDremtj8+nPfuGjD973RTUek0RNfQwQTFHZqmqA6HMu/dbG5vbG9p3bt+/dfuAxSITHDz+aHs5Ho/HBs4+EF4vJ4bPHH3LXevSatO9jUTgxGYyqey/fLGrsYynAItJZHxc6Hrg+plt3bt69c78e1Wo05tGDt1/+ybsfJqd/+6tffOadL1VVVXif+7CsL5qXouXr2ZIX5fgF5/Fq/2ktfHqqR+2ixYkrkoqT654lk738widGzGnd3YtHPtd//7mPa+aEnV7fOWYOIeCSMxAcYN9xUVTeh9RJFFm0/ee/8rV//i//5c2bt7ouBrAlzSBCn3pHMWkyEO9cCKUCGwaDwvtB27aLGTN7SR6pjF1iMUR1DhHI1JpFYuZAAcALmwUqq0rJC6MS3bh59+h4Uo+Kqh4Nh4PFJB0+O7p7+6Xnjz9c9E1QFNZKSxEpioG3Ym93a3/3xsZ4a3d7e3tzy8z6tkNzs9nx0eHs8NnBfN7e2b01a+bPj543XTdftD0nMSzL0gdLUcHB3q0birHWwTCUzrDwmFqeLabjwf6gqJgNHZjIcHPwyhsPvpP8v/rTfzdbTJPEwXCoq2Kvk/k+cUZz/fvJx0syddZQmmumGC/Q0yAuj73oOSEi0hqAc8VFT3kKcrKInfyGs97WhZ93Elq9HFQ7f+vLf1fnXNPEhmBrlZyIeKI+T0VZDdTIIFCxYK3KWgTaxNOm3dja/uN/+I9u7N86PppXRAAQyAERp9i2LWHPzKEonFeFlHrpo6aEfaKmsxg9i4oWKh2LU3FEYEiipEYpIScAT9mDCz4oQhSo63HTdPVgMwoNBuPJcbu9uTeqzZkroNrf2E8H8z6a9WljtHPz1r2Nja2tzf3NjR1flMGXRKTGAJa4dw4ni+Zgcjzr2w+fP+dtOXz0tOkTlNXWePzl3/gGFmQek/YUDBXL0YhNvPcFumDI6WjWzwisrnoBpFAk6w6Onz19+kiV9m7u/uY3v/5v/l9/9tHzx9vb2xg8AF8jZCfze06IL93n0sPt1Ay8XBiu2p4PvBTKXMfgvV04bKnkEE7iCtf77Be/PeOUne53RuleBVHlHpkgigCkVJCLXfLky6KeTpouStfLH//J73/9N7/RdRGdZ0gYcZFS7BpJSbWtClNlIoo9R25T7BOrJOs66DpAHJqhqiX2bQdoEAovCk4RwPpOmdEMCNAMyoIYC4fVopO63m5a2d255VzpLZmQM7c92pK22S63ytsvTXx968aNOmzeuXPPwBmWRTlAKkJVAkCSGPt2uLf96NGjObfDvY0Pnj3+1cN3yzuVMjxvurnQzXv3b778oBpW6EWsRzSQQKH2zhXOG6c+sgOsitLAgQMijKmbTY8Pj589/PD99997/MXP/9Y7X/jsopGt3c029a0kcBfn7nKb7arV/wUn/ZyGOud4XW82XHUhO6FCzK3isjCuMq/OHPlrOHeX3tZFN39dfQKsug+wlFQQmKewWMwHg1HX8myxaLr01mc++0f/6E8G9YYYoGKUmDClnlPfoln2sgCAmZuujbEFVFHseozJAdboCxQCR4adamFmwJRSn0k1m37ZptAjAWhSX2ARhcbD7Y3NXTIogit9uT0qUat2kioM3o/ao6f7G3uv37hXVyX4oiwKpJJ8ZVQs2n4+633hJrPjpwdPJ7PJfD73PvzsZ79YzNtnzfxX7394a/9uubV34/Vbv/F73xrublkZF93EeTaH5qgXC973SVEsxuQkFc4L+sRdp33T9k07A2evv/76sNx88tEj0+qNT73uwuin3/1eooua73LeoWXbD1g2Avk1xqkavlbQTyyKqzTU8hADBDAEf9J4G9bAyEsOuOINuGhnAOQg/HVv2Pot2kmLm9VuZuYMEIAEwXRQDQn9ZHoUBdFXf/TH//ittz8jDBWFxWIBxMtFyrngSEXMknNOwACQXEAgTsqCaoGcN01GgGjohuQaFmTWPkZWYzYWMnPEBN6DSRIiNzRzg9FuXW3tbG5Np8dlWZV+WPmt6ubIWuFm8azrCo/loBhUZXIOvE+ifddEbXqWo+nk0dMnx7PD4+nRw0eP+r6PkYtQpyTl1uB40iR5Ntrce+vNV+6++fJEJtC1wy3f9QtCj5RbXiigkIdQEUa/6LuYUighJol9j5Ak9Ztbu2+99db3//qnP//5Tz/3hd807xfdInI6pai5ytk1grMTCi+gj65RN9fA8ifieyqddnrgxaugrXW3uwosveSwy8zNiyDF6kNO46FLPcSV+lw7IZkJICKIgqKkuDnafvLssG1T0/Vf+MrXvvXt74SiVolN0xE4deTQi8S+T74uqqoCIE6d5oQdIFE1cOQqQEwpFeUQE4pxSi6KF04GFoUcuJRUrTQzFgAEQOqjOjcsilo5AFQG1Xi0T0TO1UW1sTHaH98et8eHYFISjwpClSa2zXR6dDybd+mDhx+9+/DDjtOinTNIn7rlq1QWbRLngrC98vIb+3fvVttbr7z96lwXoSZXFIvpkfNgIot+UZuZpcJjHztJkaWnIsSuSc1cVdt2UTg/qINzfjTcuP/qywk/itJujLcPnz8lQIX1pI0L4nJZKPHyPa/YjhdwbrtEQi4xcE8tyWvfBZ+b7NsyBQ7oCqPz5CxrxXtXWhXrsrhix12K6dn7hlVjsHM/WxwFZPDOEVDXxePjaWQejDb+4R//yd17L83nC0soiQMFTsoQY9d1XVcGKkKIsW8WM+a+j0mZDSQl4wTCyIoFlkjM6nqxJMgJDEwtmGBKmabS+pRyLoJKXLRcV3VZbyBVPgzBUl0N+57BFfXmTt8ldmG4szc/erKYTA+fPn7/6ODZs+cPP3wybbo+clJzRUjaA5qBmZp3BQtmn2x358Zbb7092tmyUXXjwV5CFkgFQe2rokRz0nUtQESNIhDjXBNLqAK5o+NjR3Rzd2fgh4jYd7pYLELYuH3vbhtNVN597+dd0zpwV7lIJ9J5qf9+fvY/ztJb17vn1mFbrzC5Qkiu0Yb+nGIzQlqV+Z45bO1655Cj/Hfuab263dObXsKReUdDOlvmAZetAmSAhA6w9IUvwvvvPWqaRhS/8+1vf/03f6vnBEB933GXeu2l6Nq27dtWWRxas2DmOWHMDTsJEBD6JPO2E1bvixg5CZghQiAMCiRp2RVW1RQR1BIrOgJVRu4WEbacdxVh6LvoPPmiTIw92/FsFrA8ni3e+8WvDp+8++Thu48+fP+gbVMUQJ/UKFTeuaZboCdARfKqpoBmVBbDFOHTb3/+5v4tGgQZUtsv6q26oIJQPJQcGwrqHHJaAGC/WICKqi5Y97Z2d3d3Kx82BmXsW++9au+SJhUR3rm5+5Mf//Lpk/lXvvKVf/uv/31n/eUzf4XuvGgjnlsbr1n9T+b0Gi/e4Lwuuyz2eTr8WmpqFqXVYeeuQSeY0ekRK5klwFxgjRczq0nO3a4hWkaPc5uRvFdOLAIASkRoDjyRhrI8en50eHwUE7z8+qf+83/6L0ajTVNqFl3XzNvFzCHFhmezSd8u6ioAtZ7MtFPpEqunQrQnKlOMsRfvvcgy9UPYVJxoUK0ESIGFFahQZlYDN2AlM1DRKBsCmy07V5Zeqzjtg3eF32hmi8Xk3aePH//sZz/95S9/PplM+tgCgBZghVPKOcuMqlgVuacIACDmOiRnrDdv3X3wxpt91e/f3KMyjMqBJNAyQPA9iZXFfPbctHPChRGoEiAibft96LAsfDXwh/ND5zG4qrFuwTHYGLgKUHmtRjWUxXB7t5gdtiIGiIpgiMJGRCKC6JbBRneKg2a1umToXkrCSjBW8nRuljEH/vA0f3lJCH8mKkQr8hpY9nxYk1K7UoMinLS+eREnPSOgF+3iZX0wnAeS1o6C84dkwOCyxG3nEdnMrCyrruuePz9sun5jc/9P/uRPXnnltbooZ7PFfDZpF/OjZ8/qspynNsYYu3lKpfMDJeu7uWgMHjhGABFNk+m8CIVzToTqOrRtq5pxNGeGwiaqRKAKoiBsZpJ521RhPutTsvmi77tJW8VAro190zQfvPf+fDb50Y9+8MEHHwyqQo1jbIui4JTbJYMtVycDRcuUnQCq5omYlRy+86Uv7t3cL0N7997tReqcB/ASBuWinyZeFCXWg3J6PDWEqii7GFW1Ksr8AMfjTecFcXx4eKiC3hemqWmajdHYOffGG288+ug5J3j77bfl3Q8fPXqUWRPJu1wcez1ueL0MLG2Ds3MtlyWB/NpXWT/2Y1g+zpq0CpfpfIBsol6CLFzhyyMAZjjp7FAAspS884V3RVG8/+Gz6bwF81/+ytd+59u/O6jqZr6YTY7ns+Oj589+/rOfjgdDK7xzjmPX9YsQtPDYLBaqiVCK0qGJmSH4mKRAPxhuFKTNomvbrlnEPionMyNHpUhS09z0cNm9W9UUH3747N7dV4IfPHzvvbIoBmXFKbXzxQ9/+P35bJJSX49C2y1S6l3lemnNcoQGDHXlApAAKmsIQVSmbTcoBt/81rcevPKSoo43R6EqxjU22hpIaucMnUIDGIoSU0rztoudVKEaDIZVOSjrMUvH0k8PJ0Xp63okbH0XVeHw8BhtUJVU1qPBoDo8mL/22hu//OhAVREJTDkKOYAVF/I5Ro6VDw6XlnyczPupjK5m7Qy118r1WRceWyMd+KR45cfE4tck7EwPvqss6xO5XLNgMm8QLU0TRAC3DratsloE0QFoIHMEwfnJ8ezZs4M+6v2XXv3Hf/KfbW3uNbP5wfHR8+dPnz99/PD99773/b8uHL381qfKsqxCQCqm06mmmLgb1CWhVVXoYkI150oA2NvdK4ri8eN3523X9omTqaJaEBU0NfOqZplIyFQzp5BZZH7y7KCu68lsVobw/vH70+kxoT09eNq0c4lRNKmKISgqEJIVslxn0MAEEBRUATHMZx0I1HX9nd/7vW/99m8Ph0Mi2t5yHTfmTaEPARueCvR9N/Ouds6NBjWB00SbOze3t/eFjXUR29i0s0XXNg0Oh8PYJ09l102n03Y42BoMxgapqkuiJoTi5s1bP/vZz0FtNBjM287MvPdd13l/YeqXHZABsnN9thr+KpTGLq6oAIBXhng+6ZaPTRaBaxKwLz3veRtgRcV3QUWTmRKceavIICAER4h4eHic2Jyvfvvbv/u5z31RVefT2Yfvvfuzn/30o8cPD54++fCDX/V9+3QyefDgwcsv3WPp2gZGo0HwRbPoqrpIyRCCWDKwmzdvbu1sP3r0aHI8b5ueE7ABK5kSWFBTM1HN/WwBDE3BTAEQSZ8++2g8rBaLOY0G0/lR183JwaKdIwGjGSH5EjQwRx8K40A58GEmoGZoBiLIMZo5Y/mjP/zjf/JP/0lRFGVVxNg536lo5Jaxi10U7KIsRNrFvHMulNWAoOw7Lesx+YpFAGYxdiklEGi7tgj1fN6Z0vbW7tam29nem02bxL1zw+2dzWaROKa7d+8eHBwczebgKLdJCyGsh7WzRswx9NOJy2rv6qYNy4m+8P1ad7vV+a8/w7Ubva2a0l8heRfNysvzm0665J25V5NloylcNpheXSUbMcuoRl5QMDPQsG5ujg4OZ7PZIjK8/am3fu8P/jCEcHR09LOf/vjP/5f/6ac//clketD37Xwx7fr+YN5MpkcO5aWXXvI+iBgIg6EpsoCnoAiEvioHz58fPH78pO3aJKIAwiAMYs6A0JnG3szUXM7cNFsWDZulyeTg/Q/s+PiwaQci6aiZmOhwOGyahtWcC12MRVG5ouxjDC67RJpr0dRQFUTAzGm0wWDjc+982RdlNSgBuRoEkW44HEgTnz07osBKPXpxDlNKDr1DiiZVVZaVU2UDaZp5TJ1zpKp938c2VuVwY2OLkypY1zdqDBDIqZk4h6PBcHJ0fHR0FMoaHSUxciiqtLLZzkKkdF4f0fluYucQTbxiRT0rDy/KX3DRwzlDonDhMlelLJ2R0auhrHy45sSZM7xla9dZbxeBgJUv+zY+e/J8Me/G463v/O7v3L1z/9nBwa9+8bO//Is/++u/+suDg2cssU9dbrgcYzedHi8Wi2xCpZRYxQdXFAUz95K6rh0Mqw8+fHh4eJhS3y1aZuakSz50MDM1UQUvlnsVa8YsARgAQwFd1x0ePlflxUJERDiFUMybhZkZOUUfqmBGquBDkGVnIjMThdxwFwEh9j0wfOGdrzjnUxQdmEgMHqlwbNpzbPtuGLyIFZ64l5S4QI3QKdtoPELiLh7Npot2fjSbT+q6Ho0GVVX1nT559nhyvHj69Olrb7w6HA5VqZ92wQ+dQ+aEpmBaFSWRYwUyEzY6E6BXxAx/Z31xXkavr0I+N/t2NohoZi9ILn9xZGk8w5N0VkYvkc41+Cl/S1dI55n2kABidKZ+y2iZJw9IefVHA0RHBgTh/V99MDlqnAuf+cxnvv71rx8eH3zw/rv/8//4//nRD7/39PHDjP1zTJmY23lENCJwDlW167rSu53d7b7vZ/MJgHZdC7jx/PnTlHoRKUvrU+xjWpFymHPeOcfSgLl8TjJDFCBPRGapCpVzmHvmAIAPBUsGrcwAxdA7nzjT2JBAMGDKizsSmBkQsZVF/eZbb/3ud34v97NtmvnmdjWfHxcDZ6BFVb788stKSa0vCkJLz58/Z0mx74uyrAdOrVWLSY4XzZGZdJ207SImSxGeP3nqy+mNGze6dgEoKaoPZdcukAYGjKBk6h1FiWLofCHCV8KZhoCXxOJPZPTKkNIFKVw6mgi5meHFxIz1jfax/UFPxvWu1rphkf9fv965y5/suare0BPXz2xp8jhAM0XAQAGNkPDgyeHxwSyJ7d288Z3vfKfv27/5mx/+6Hvf+9EPvz87eg4mqpKEvfcKJgqIeGN3b2Njw8xSSqrMopPJZDY9RDRVSdzPPjjQTPWrHCOnlHL/BQAoQmUASYzI59VemRWJfEGgquqoMhIA8J5EJLPNuqJkyW+dmUFUQ+fAiFUjogEG9IBEoGJgYmq2MRz91m9848P3P9zYG8ZXbu3tbJgl71DBCNGXBQsXHgEIjUcbQ4d+0cwWi0XwXpUltW23OJ48m82OmTmTdYv66WSBBLdv7NejOve1TZzQyFFlykXAjVG1s73ZP34KPqhhx+yJDOxEiaxQP7wqInoicOdkyMzMbJktdZnA6Fq85lJBunjCizv7c3us/n1BqGypR9e3XJR4l7HbM1s1P5HEqS5KY0MjVJhMjo8eH4rCeLz5O7/zOxsbo3/37/77X/7iZ48fPWwWk5ha4SgiYmBoBoSEe9s7t2/f3tvbq8qyaeZds5il/vBQVZJzhGQiPUtS5cy8kftnZAtJBdQpERGRmEcEJwgelM0RUWYYVhYjNTEIQEiGCiIKklNpM8GVkRmwqoi0pqgmJA7AFYEQhRlA7969++Sjxzdv3XjtlVc3NkZGllIfU2vOmYlo9EED+cQMGjm6EELhfGvQtu1wOEwpLRZN13VdPxe2lFLfMSeKSYuiqurSByrL8uho4qhQg3pQNnMBkNu39r/0hc8+fX74i/cefvDocVXWiZUlc9HqGj5/nXTCatE7P41XO+BGLyRAlwbJ18d5lg8A+ORVHCcm6flmUYh4xn1fobtkYKqlD+DM2OpyQIbPnjx/8tEzUl9Wg9/4+jce3H/pz//sf/6bn/xkNp80s6kxM0c1BcJcLOC8Hw7Hm5ubm5ubCNC2C0kRQAG0axeq4jwSqZqIJFUGAEUBVhEhIjV0zpF3WVi9I1AvLmkCD0CUe/5KipLtGBYBdEhoOfEF0YwEwDQHFkwYVCmiBSRRMDA0MkQxLEI5qAaf/dTbo81hXZfkiUij9E0zF3Zl5REVEYi0KkjExdSRAZEfDEbTyXw6aRDRGBEKIjIyU2qa2HcsCsPhGFEG5ZBNU0q+KtumqUIEs8HA3b/74I03Xvmzv/iuL8rnB0eLvgd0wTld5rOfuDpnxnoQ+3Qq1xM7UE/WSLggqXoBtf+1QfuLMNOvF2Y4m5F0BmJY+ulrxnKWY1BjDx4JPbrnzw5mh1MHDn348pe/+sUvfvGHf/ODv/3bnzbzY44dmCbuWQXVDB0iIVhZllu7W3fv3NnZ3jaTvu2YI3PMZoAaGxugZN0JAIBqCBm6j5wQlqLpnAOA3J1ZIhN5Q3QOCYAZNHNjGioCmyrmJjFODNWABUTMlARWLJIOcsWfqXD25tFtbGw8uHdPhKvCj8Y1gM7b2Wx6tL01ZofDUaUWE89FI2hM3PVttznaUJZhtcGJurZ3RRgNdoMbSVws5l3T9mDh/ksv7e3thRAODp807Xx/7+awGs4WLSeaTCZN07/26hvjcRUj/+bXv/xf/+l/g2TBoaFjkfUQTa7gBQDAK91tRDSQcw7TuZ0RUV64gv0FxWydhkZPQK1rDr6qH87ZdX15EgNAcwDrL5xmQglCNFEjq4vBYtZMDyYclcy/8fanPvfOO3/7s5/86G9+0Pdd7Lu2mXNKpojgFFRUncNQFPWo3twcI1rft5K6JadMagFMjW0ppmIma2VVS9Mp/8/MkZML3jkHhKwiYmrofbGy/AS9UzMBk8x0YChGCpiphVVBlCy3iScEIAM2Q1MgdGaERM7ZxsbG5uamKfdx4T3N2klvi3o4AEcssW1FtEu8MIgEbJpUbT6fx07cuN7Z3EsjDb6k4M2sLO3g+USYymq4tbXDHFn64XD4/PkzETEFjRAoDKrCRIQbtFjXpQF9/Wtf/eW7D9//8IkhEzlTOeNxo60S15cP6YwkoS4z41ZeOdkZIVmZm4Bnge3LZOm6wqGLY70/6N8peHpxnFk8jOiUivQU0hiUFSQ9ePacWVHw9dfe+Ppv/saHHz38y+/+Rey66ew4c7twUgBwziM5E3beD8aj0WjoCz8oK00c0RANLNNZsgkjGZiC5vSETFCkZpkQ2BSMkPLGvF1EUkpJ2DnnXCDn1RBBnC+zW5UYxIIaLC0GMTM0IEBQRFuWKyqRV2aXzQEgdB5BHdHB4TPr68PJ472Xd1MZW5lt7tw2YVQxEe8ogoIyOBMxEFWAuhpmRKEMFWZGB6LNrf2NjTuEJee++JAMIjnd2NgwdYcHz0ejTU6wvb27s2NtuygLcAEPj+ehwNt3br738LGBEaHZ6bK2jHvZBbnJJhni+Tjnmkl6KYp0wZm+/NsXGf4kyH7uyKsjRh9TiHzWBrX1/CpacSnjymVzzh0fTubzpsDixu1bX/3y146nR9/97neZuesbIuK+48i25JxTIl8URT0ajUajog6Aqqpt1xCBI8j2CSosmx+ammVEE8xQM0M1ZohSgCh3YMu7soJEMUN0Tpf8RsJqaq6PEiMkcWbGqmKkqpLdIzAkgpxTupxKh+gQBdGZoiMCNTMbD0fTo4Ot/Q0A7TmWdTVfLCR1yl1R+HrgQTQmJlJhLlzhKBRFBeYXi1alEdO6rgeDQRIP5smXwbtM641kGxsbMUaEcHTYDKpxSpm7G8pqHFPLXY9ow6p8/fXXf/CDv20ii8ha68WzLvzSTzi/lq7jQcvDlpmZl+ePXuqS/xrDX0X/ceXZcSldV+2ztnFNHE+/N0REUDAcD0cpxunxtHB+f+fm597+/HQ6/8G7P2q6hanEGNv5HBHMwDlCV+Q0zXo42trarIdlKJxzmDgGDIUPgMosgJLF1E55z8lWyzqu8lxziJWZDSmEgN6lPoqKR8rbhZejFxGBJCRiMTf0RkRHlpu9IwKY0tIdJiJQc4DOBVJgFAKHDpxzzHE4rG/dvlEPyk6iL6lpGk6dg9j3gjQU5a7rRBKhbe5tVuUIlIowqCo4Ojx+8tHj4Xg0Gg1dWQunImBZDIg8OWvaSdvPY4yO6qoclGVNqCEEwNj3fTUaNbN5UYw3NzeNU9M0VFSimpMkzWQ1OXhmys56utdLxTlo8urAzUoCLpPdi7H7JVBvqHAFbIt2qTt/mlIAcC5fXwHgnAPnRIBQlpwpYICE6K3whE59QUUAXwyKN19/RbH/m5/+iLV1yPO26dqYiVUUFcGRWSj9aDTa3BzXVVmXVVmWCNhzayTESg4yda+CqSoSmppmENIkL+vZnDIgdGSYe29r03devCEWVSlgs76LMbJISqnv+/ykFFYMAy4oECoZSPZrwYiEFAEwO1EUgQSdL4xQwNpBMTBwnavvv3nn1itbvRwHmzeHC0MVsNjG8ajs2plaD9yT4aAecaJWuK7r2WJaFH5rdxR57913P+gTbm5HR2Vk7voZBRqPh+C8D5vBYdu2avPZ4tFwOGTQ2FlRDHprMUBKse/g9v7+V7/wmf/wve97BAEw84AuZ+KSLadPLs2ovELgTtb3T5Sj9ILrft5yHqg/syuep6iHC6/LyTCTi6sAXJErYGYIHgBEtK7r7c0dVX3//fejcMdxsWibphHR9WPJu/F4vLW1MRgMijKEEEQkpV4kxRD6whVF4b3zbqmv10PGmSIm61Fa7QBKAMamxCwKIYR52zRN03VdVpOQa6AR1UDBEEhRLbMJk66wlJwXQmSgQIBATlkV0JByz3AHAH3f37lz586dO+OBa/l5bogGnpzJtJ1z7Dc263rgTV1VVXt7N4Sh67rYg5qIKohVNY03qvn0WVlvFgEM1Luq6zqWbjAYMHNs48HBgZkMBlXTNLU5tXB0dFQPyNEg9j1idffu3W9/+9tPD48ePf5IVdbncOmeX1aBc6n0XPrVGfTmE6bVXTXOwExnlbNmq9mude0NgZbRZzx3kpVHmL0+yLzFmKOaq85hg7oO+95TmMxnk/mMmedts1gsYs+ISOTUFACKohiMhpub49FoFApPRKqrNZhTSslFLIpQFWUoHBEgmprkhT7nza28Msseva5o/5RZFMx6Zu5S5CSwREBBVcwM0YEhggM6+YEGoIBqiAgOVxZ1dmyNkyeHgMzJuC3DIAcCVHkwGKS0CK7kyJPD41v3b/sAP/rRj4OHl1/5YlV770k5IXgA5pTA2CCpIRG54AZDPDo+Op7w1iYgVWZmhPP5XCSVZa2qbdNnUvGyDCKJ1Z49e7y3v727s5F6TamfLxY7u1tf+vIXnv+/D3Ifq7WhKz53gBfWiNc7Q38v4zyZ7Kl4XQihrhTkuRvS9Y7NJ+extT909V4u/wV0gGBmbEY2HA5nk/l0Ojez+Xw+b5oUBXNc21RVi6IYjurNrY3BYOBD9sczQVEiIkfAzBwBzRBU1BMBEWRlaQBqDADgCBDUjJYmqRqQqjBrSimpWGaDBXN4knWF5B3IqRIHI0IxUCQxkIx5wqpVJCIBqiMCAzN2ASkUABCFqfaPnz0m//bGaMyCFMgFv7O5+fTZ462tDe9wb28/pe54chjIjYZFSqIqgNR1C0qKiL4oyUlV03w+RXDD0WaCFMpSNB4czna297uu6/s+9j3Hfmtn0/vCkwe0GONkMhH2BtVkcoTz9p3Pfu79Dz78D9/7/poxpmt/nGbvXLO4X7MdPuGKf/24hO34KqW9urae/bi8oUvT7QAg90i31bqKliUJyKDrutj0G8MNEZnP5/NF0zRNn3ozc85n/9p7PxgMxhsbdV0XZcjRHTPLMqqqpmq2op1VZY6ISJS5bBAA2BRyoQyhqpGBqrKpajJDZhZWMSUidLQU3lyRQtlLNwMDIzAkAFWHpGiU6+6WuDUyosv+n0oGZSCnPbcpbm7vvP7ma3/4R7+/f2NclgIWzFKyGHmxtTm4hzdu3bzZNIvFYnZwcLS/u5uSZGCh79umaZyzxP2gHplC4cNHT549evR4c2t3PNqshgMiaNsewQ2rja6LTx5/dOfOLU9hZ2cnJSm98973KXIUYWnbReR2Z3d/e3v7/Dyhgp33kC464xc9oY+Vxb/jcn85Hfc1HRVxTVOuxe6X/+q1LRvQADVPtkliSVb5Yj6ft4uu6drJZCKrl1ZVxdQ5NxwOx+NxXdfOEyKqMnNUVQNRE2HJr4VzzvksGWom2aFRXVnxhAAZWzJlkxU/3BJbQSAk1ez6IQAQUn6spmbOcmcJMgBzDhTMozEAZfyaMK8SAoCIrnQVECVuATCUtYnMuuaDDz+YNIcbScFZXXnnQwGYpsdA7fb2ULQ7PDxEOA1otW1LRG3Xm5mItU3yTh0VAL5puo8+evLBw49eeuml3Rt7IThmJYNm1k4nR33fLxaL0WjUzBfkQ13XT54+r+uRMDkcNO2CXD2fT6fTKRlpjjmfgTbPAOwX3e3r1dlV4yq/5UXGpRn114H2F/XrUgiWy/fFcYpikAEYOAPKVNQIADCZTI6OJm3bs2UbyJmZoXnn67oej8fVoPLBIVpKvVlu95lWr4kREqJlHjDVHOtRtCX5p6EREZgTyUVwmozNTNVWzyvDXs4HWtZ5nNUTjC7rScupgRn4z8nXAC6TB6MiOTAPUIiIIyIilqRq3vvE/PjgyV//4Ls7O19xjsp6qMkSNz0v+jivRqOu6/u+N8XN0aaj0LZtWfgYU15AmNlTkTozh2RF8ANOdnBwtLe3Vy1meT2hMZqm7e3Nrutu3bpV13UI4WgyHQ6Hiz41Tdu1Atq/996v7r302nw+D86bGYLLc4KIS7xsZYC+oNr7+wI7rxmXxOLzf+fU5FXD6LTU/cz2C0e5pYIih0iGPhTKenw0PT6etm3fpwQnxa6I3oVQuMFgUA2qEEK2jWLsAJWI0EBViMg5Z8IKYAKqnD0zzGUYRApmOUCiKqZZawoufx0uUfp8SQVRACCX0XsUVcjFZeYAFNDQxJbF1ydC7AAVQJEEDQ0cQnBOE/dEuUQu5SToNrbTdiakQsgiwpxSaprGB0QIW5sjMF9VtUfy3hNDik1MXUo9OeyajtBPp3PQvigqYD85btsmgdF8MlWLReH7ot7buVXujvb29vb3d+u6zlLIKYrYbLqo69HzZ0ez2WR/Z/d4Nu/7/LRpPcvnZOLOSed/bBG8fpwkLF+5pp+LZbm1YOv6V+esk5ORPWLUzMRDhOjMeXSmdnh4PDk8ipFzDi8iKWT6Yec8lmVZFEFVU+pFSDVHL0GEYeVKq57EiEUBCAkIkAgQ0BGYgRmrLJcwICRaWVp5NV9V6K/dti6rkfLfilQgCKIYqqERoIGSc5xSKMrEHWJyqCAWHHIE89EhAKGBJJXSBwGLnNquK6qyrAsxJFeQalkN6wGUxUZd14NyDJb1bqRkwRtLy8waNUUBsEE9nk4a5g4scGem9Ojhk/FWublV+lCS06oKwYd7924iYkzdZDIZDDcR3XTWqlHs2Tn35luvP3v2pB5u37hx4+WXXnnvw0cxiXMuZyqIiPf+3Cr49+inr87wyc7jARRXnUTXb+KUS/l83f4LDVqdUFmdc4hoYojgzZlA13WTo+PFdNF1URUyIpcRVzMjB9577x0Q5iROomUmZraAzZYYHhEpCCACIhEt85MIDUAsc7ea2EnXnfM+6RUGluJaHBBZkYxQlx6uc4AuivhiwALOB4fJOw6OUrsY+7IlIKKYRMRKX5oaIanJw4ePUjRHpXA0QF9WO6Mb5HvpYbFoi1BlZRaCU3ECzjkHQMpS18P5rBfCshiEUO5uhSIMzPDVV1+7cXtzZ3cwGg/BUBJVlQ9Efd/P5vMYmWV+dDglDADp6OioLOu6LFjs8PD5z3768ydPjlKXkEhVFdTlC16RwPG/oRK9vC7+qjoSRLziJ5xSHi7TsVZenkNCI1RDhAAeFNv5Yno8WcwaiWJmlr3lFQgQCiqKoqrKUBY5q9jMDCT3BSQEv8axRETLnBwiI3IecxWsgRmYgulKOk9jHnmJt+sd0myFOwCoCycazTL9ISkYEBmSIAmLA9vZHf7B7337lbt3H7979D/8d3/+4Twyu+BLD8TKpuY8cuK+Tymltm1Hgyo4H9OibRdAPbcpRvYuDIdj76ntGnI8n0/62DNr06ahDapyYzza2tjY2traev58SkSLdhG1+dUvfnV0WO/e2L6xt++oYo5dP+8iN81CRMlBXdfTtun75L3P9G5935ZhUJZlu5gjOiQyBGeZXwXP6Z+zuPjfzzjJ1ru+Vum0ge36HVyjIE/v8mxWy7l9aJVykMlYcUm7Z2iUu813s8Xx8XQ+nTGfZuPnIt3lDyAkT1l3MgNSBrBIEXP6noA5xJUqNUAk57L6zAVqJ1HNlXgCrrK7zYzg4p1nlMoydL/2exUAVBoiEU2E3iEImKgggGgqikHh+MH9vd//zte3az/68ufubBb/zz/7yU9+/AtLgp5QtHAUiIoi3L99azwYEphK7PpF2027dOBK5a7tu8SsXb+xtbXF0nl0k8mEiEwdYbmYxzt3bt2/92A83uz7fnNDvv4bX3v27Mn3fvjd4+NpWVHhw9HRsXdVVbIDXHR9jFLWg6ocprggXGZUllXY273RLNL77z+fz45C4Z36ZW0Ckhrn377+3p5JDbkWE/0kY6lfLhJanwyDU1Xu1/VH/vfcYae3mHXP2vacyXKyw3JZX3ZaRDJAQALySGCWujSfzmeTedM0mhR0qTVzgPzknOTdCmkXg5XwkgEY4mmNXlbYzGwlgSN0zhAyKAoAYkZ4pjnLpaAJACwToE5xkPNFLIYaCmeRTA0JCNiBmANldeKUYz89Pnr+4bPm2Wdef+t3fudz7x3O3/v5T8VCSnFQOrNEwDubG3/0D34XJcamJUEDfvr0PcMWfUSLKYr35eHh3Hn13qekIQQz/PTbnzs+Wvzkb35WhGowGPV9G1PH0rTz/tbtvXLwlZ3dYS/zsqyIyFFZhLIeDV1RHsv04OCgLKKYZ5adnZ2yIACbzo7e/tTni3L8P/yPfw7ChqhqkI2n1fTx2UK2XxvCPActrZ3nE9ugZ854MVl/eYFrFn0AWP48WvsbENER1VSqQtc20+Pp9HgS27iMICIgOURcpyJ1znlPIQQiIHJIhgiWT+0A0YgQsnbWnCkqRA4Ic3sIw6y4l+KYSzQB8pJ/5kmthPUMqASncnyyEICSi7mWMxRoCtK6EMESUuVAUe3wyYc//sFf3b4RPvwQv/TO1778hVf+/b+TxWJhQINi8Pl3PveVr3x5e2PzjVdf8o5j7EqP73/wXlGAC6HnOJ0dtk1UIaIwGo3IuxDCxsbG5uZO7HVv78ZvffPm1sZ2KPB4Mun6Kae5KC/mrizCvXv3jo6fhiosFouubcvtYd/3x8fHk8ms72U82kVXwEF05Jj7onAZcLh758ZnP/3m//fPv2+aiLyC5jwKRFr2X78wuS84LkVJz6veNW/HAVzMwD/3+cwSfwLBn3t7PlY6AQCBTjJLsk7yzhGRRWsWi+PD4/l0lrqkK7XmyAOR4dIYWGbBEXm/TIU1EAQ0AkIyEKIAK2HilDQxInpfkHMGoCvFj6scADM76bG/XkyzpkrXNOxa+9MTVwkAAEioSpyCARihxM2B39kLsT/yRNOjRpRiM/v+X/3l8DfefO7xg0e/evnB7mfeuv3jn3z4qU9//utf//o7X/psXZZ924H0zN14UB0cPWqb2dFHzx68fLsqShqPjGdPnh7HKEUYbGxs7O7dGAwGfd+rUF15RGRpuEvke4VZ005VgUMgCFVVeV88f37Q932KEnzVdb1zbmt7uyxZUdv5vK7r0bjcGO+HAqfHR4iwuTV6++23fvSTXx1PGzXLITckUhVEgmuF8hrg85y/f071nn574ajrlbQ/d96LTq6tsiEu3tDaptXiu7oJR+Scc87Nnh0fHR1Nj6cmCoaggEDOO0ceHGUXO0dKnXNFUYRA3nsky7Yl+vxuG+IqCVm17xP3MYRQFNWyPnNpbJx/l1YP63SLgyWbcu5kArCUzpVWz8HNU2+JwRMiERDZje3RP/jdd7797bdiPJIUDp/pfCoffPjTv/7Bv370+KPxsH73/fc++5mNT71978aN2//kP/vfs4h3nGIsQpG6GLxv5tMq+LfffIuKN13Qpp2RH25vdaPh4Z//r399dPjDV199vR6Mtrd3Vc3ImUnTtDisFu1hWSG6mLhVIWtnVT1aJiyrHR4e1tWQiJqmEREk733lEEXk5s2bt27vEnLiRXA0HFRN0927f3d3Z2s671JkCO4kQcR75LPzfBV6eFEYrtrt/Fef0GbwDlcJywZA6IBk2W/5ZI6MDDLygogGrDnkQAaEq5wtUTUPRABBXe2CN9cdLWaT+ZPDOTODeFMWMPLkvQ8hkEdV1cRmQh4w16kFDsEBAgVP3iE6InJIqIIC3LGq9ikezxe+Kqvx2Aa1UFo+ymWV4qWPz07eMb34oHMa6cn7tjIM8gMdSkREAkaa/eF/+vv/x//DPyA9COg8GAqShtjf+dP/6+y//Tf/7tNv3ln0vzz4sH751ujRr37i8Li3RTXYCkXdN30BxqkVmTx4ebuoHbgAbLCz26XHi2K4MbxRF3v/9t/+908+fPq5t79Q4lBNm3YR41HbHBRuLDF1VgXaGQz9weFTcF3fW1VsSlvOj1xNW8OqNNPhcBCK+njaLPp+4BZUpEFlVcCirpIQkkcfOHWVL+JkUqe+Aruxvz9ZLA7nC0KvooV1gMHAGVVJ1DKcbwlQMbcOtZVGwJz+m6VuqVlzKO5SaT5Zzc581PPJmee04ekSv+SSB0HL8Zi1MhRcZVAa5E6XSGhmZuZXSjM3HfQU6qKwqEdHR9PDSdu2Io6ZmSMRlWXpvc8F51kdIprzmDc650IIReHVEIhyH4el3yYmHPvYN03Tx+iqamNjo65rdM7w8ibX51T+SbbKC46T9UQgeSRAfvW1V/74j/6TGHlcViC5IR6LRh+KP/pH/2C4WTw7/HCnGjbtZHNr+9btnaad+DosmknJ0UEpmjbHDjd9Uc05zZWz11eEIhWFcdJXXr73B//g9xftfGOzJGrKKoDZbD5t5zMiY1UXeby1ParrpgjTybTv0+aYzSzF5s7dW6PN4ubNfTGYzJq+ORxUg67pRcQ5QpIYI6ACxLIY7OyM3j/6aGtzODk+fvXV15Jp1ISzYxH2ofSOYmIkirELVS2WQ2XOlD+22ufvPi4u1F5oVaF3mvNhDtyyxSyAnlJsgRA453MOEcAqcU4NFQmxDEVJRWza48PJ9Oi4bzs0iyIKit6FoijLMgSXYaCUEhE4V6Aj732uQ3fOITmP6FxQBBXjxMrc913qo2jq+oQex+PhaGPsg9M1qbtqDTr9zUs+k0v2WWeOgrPWDnoDNER9553P3Lhxw8ERiJCVRJK4C1UwiYOh+4M//J2DZx999PiDycHBjY3tr37987GfTGbtxtbQj0aJbVgW3onY0+nkuO0PVRl9AKPhYAtgZFoCuAf3by4Wg+BalslgMCorCqEwqdq2oaJEktQtHAWH1Cxm81nXztOg3rh35+b9+zd3dsdFXbRtQnWLjb6PfDg5evDgAWHk2BpZPQjeGafm6GB+cPT43v2b4/G4LEtGHW/VDJ25IvhyvDFMUZ8dzJ4fTphjDh0njuGULQQU18X0k3ZR+ATDzLwhCC6zeXFVS5qLPdbn7MQjFtOc/uORQBFYHLrCF8Oi4ijzyezw8LCdN8wsZhwZ/VIuQwi5utdMCJAoEBFRxpVohWwi0RIh1ySx62OMKaUYo5mKKQXa2Nocb226QGx8jUX/SSGSi7VZK5NAEEw0PT94mlIKwQG74CqQhS9cTHPyjgqH6m7d3N/bGi/aw4cPZ4PKzdtk0huDJ4deBlVifta2D80ODVoG9uoBcTGdVNXeoL45mzwP5W5dI+uh6fH0WLY39rZ3b4zqnYcPn8/ahsWbWe2r7c2xpwe/+uV7XdfVW9uf+uxbW9sDchKC29va5P1id2P/P/zVD+YHU/8SCvdHh/3ejd2+WRSORKJ3emNv++jWfts+eucLn9/YGlfj+ngyEXMA2MV+3nT//n/8X45nU8sp06mv64qZ4STKvUJu/u7S+bFAgc+AiuY1MNfpGZzvdI9LlwhXJ/WGJkCqJRaDclAX5WI6Pzo4PDo66vtewUTEzDC4oipCCBk5yj/POY8IWShzDBNW2RuIKIAcU9/Hvu1Sz/k8IuICGeFgOBhsjH3pwQEZiMk1v++ijJ4sFC/yaPLdKpiRefQfPX7aNN1ogzwFk6iQXFBfQC9NoMqZqYonK4qwt7fTd2H25MmiOS7LQeEQrDs6PJZ0CHqMrvVBPQqpd84R9NwfVvUQ1PctEBkVU+FHjcwgPR5Wt6vq1q0bA3gWp4ueDabcu+AHg8HW1s7u7u4rrzzY2BqatejULHGKHIud7Y3PvPV6XYRhWSSUoqgC0LyNMXZFUfVNSxY06XCwMTme7u7veGfBw0ZdsZjz8Itf/KJv2zK4puPgg3mXUjpBIeGktADgooy+ODJ1ztm/SqEsk0UQlsUbS1c8o0VXgAVoIIk9uHExHBYDjWn+/PijDx+3bRs55RMmsRD8YFA7lxVkPtayuYm0ZAVBRAA88eLNrIupmc/bRctRQOAERRfTaliPtjarQZnrfckBae4deF6qzt3zOjjy8ZbA2X2KUHVtWwzLX/z8vR/96MfbX3mzqkj75JyYRqOEaI4AVAkFSJHEE7bSLyZHgP2gLFP/JMXjvjkKFL1jBHPmiJx3Hh1UvlADgnlRDBbtLCXeHuoizUkP2/lBNzsu/OHG9r3b+1vjMT766Hgy46IoqnL06huv3ry5Xw8LTQ1QK9w4h845LDR1trszYLnx/PmhJNrY2VnM5m3TFaVvZu3kaEIwfvDSa3t7enj0fD6ft51s7W4WRdV1/eFkzqn7whc//5Of/PLHP/l5Ug0hMPD6emqZg+pqgqMXX75OxPTi/nmLx7Mgqq7stGW7Pco5crBskWyGIoSuLMqSipJCaruDZweHTw6YWVVBLaEiUV2XLnh05II7Ob9zPviT1dxUDZfeGCCaKqeUZrOmW7SpZ29I6AAAAY288268uTnaGKNHMVY0W4Ywz4S+ToT1kyaM2RXsvLFLwVddb4MQ/qc/+8uvfOE1amaVY7Oo1iNIIGJOyOgJuWsBpY8RdNDMD6uBenLt/CjxYUBBVARy5lFdEQKiEiqpuQDoY1UVsbc2xtSxpai88Ihkrlukpjnc3n95NLyzMcLpQheLRdfFey/fCQUwz9FHh4mcicyZ1dOIrTWrvEuS5js37yHIopkdHRzu7e396pc/F/axbzxtOj8UkaOjowcv36pL13Wzvu1M5Pbt2wBFs1h458iFLkbyiOvR89OOW/9RDNAzXvyJ3QkAepJ7tuJ4RFjpp1Ur6NKFsqiqotBejp4fHD47jIsOFEXEEAwBiVzhQln4IuRMjZVliUSIDhAB1xR7VpxmllLquq5r+5QSGhJ5NEBFdOgKP9gajTbG4IiVKTgyY07g3DmnR8AuZw+5/ongih7lwttf+oITuCL0LP/63/z7t9+4/Sd/8BUxzfzxhiJihKUPZVzMXTDpuK4KD344dFvbBUEjMkWdUSAERShDKJ1zoUDnzVcUoBKL5Hs1LMtB7Dm2XV1UBkPjltOi9NzGxcHTdrzdbG/sM2wjhNHG5s7u2CAiJpHGSEQWBD1iTKlHq1gSYRoO/aKZPHvyeDZrN4bjxex4a2M4HGxNpvz06WzeLAjk9q2bCNy1DQCAMSLubG71kUb1ANQUtSgKFjllpjmpW8qZDpe9+x+rPi9G+c+FAE4QJO9tScctYGiAtOxVbgAElOtsHWJOsyiKYlxUzrn5dPH08ZNm1vR9AoOirHxwuYmM8+iCJ0+Sw9xgROC9z/wSWXdmLZrT8DLCmlLq+9R1MXZ9cM4MzMyRAyIg84UbbQwx61vnWDlbsUv+igsj0+dldCILXB7575No3ilr3hXJEIhI+ZGgMw2s4V/9P/67z3/6lZdv1Yjk0BtH70iZxQC9M1OEAgzqQXjnnbeOj9/tu2c+dISAJo5yRR0TOeexKBFcAunR9UZdKKCqnCQwVlIDJUKPGFnmhacocXYsMphtjb4cisoFQF0o9EDJO+PUoSXTRlOn4kC0W8TSD2PfPD4+OD6alb7c3928d+fu1vZmWVR9xMPD9IufP/zVu+8T9KCUEhDReDzuVebzTlVTz7milQDZcouKdQESAAA8Hxp/wcX9YjzoZJrWN5qZd4hJBBC9d0ogpmZgBs55SewUCJGUggtFxtAjf/T08XQ67doYI4/H48Fg2HUdr4gxlkElR44ACAvncBmJoQyTZ30Kq7ZyqrksUzim1EeibDLmDFBAtKKuRhsjXxboQSGXOwIA5G6dJ0/tog+e3w+39iAQ0ej/19qX/EiSXve9974tIiOzMrPWrq6u6WWmZzgbV41kLZZoQAa9CIIheIFhGIYvvunm/8K+2ICuPulgwHcfJFsQLIkcckyRQ3LI2Xqml+ru2rMyMzKWb3nPh8iurl5BCv4utUREVcaLF9/bfu/34GKW9yUiW34vrJX2baOcZjaff3H4X//kT//4P/zL13Zzo5RSQJAQQFB1vFCIxeq4j0SI9dm0BgiSWCkD3UgGFCJWmglBIJEkwBaw7RrTjcLcqITeooAQJEwgxJExAYNwjI34dFfrnsuGzo5NRgARWJRIW1XWsvjaN+J9wjQ8Ozk5fnhwtmBjzI3rr7z55usuUyl50mARNjeMNVsrA3p4cFwtRBtXNW3THBXj7X6/bzXu7Ozcf3DY+OWcnke1nO6tZhSAJUZWXRTj3xlc8qzku6VFRCF2Y6yZuxw5EZIk1oJGK4PGIDltOMp8Oqsm06ptmqbVWm9eubS2uRFDOjg6hBAYhDlxdwMItKx2ImLnawpil1mCrqdn2VyRvPfRt633MYTUdQcjIRCwsFIqK7Ji1CerEzFAwiX4SZYbqizlch4MPbUXng8jhQuyfK4cn90+AYC5VYjGKhAGsgj9v/3xl//pP/+3//jH//r6rjKGEevM9VIKgFoQnSkwy0EabX1IU6VrkRgjADFIQkKNSVBYDEYBEdQNiBcWYCREa0igQakYa4BEmBAYgZWwSMthFtN9W2woUaFSRjlAFuZFWc4nJ3kuKVS+lapKICp608/7YvTrr9/c3d2xjhI3ioJwi8KK1HjFpc3s9CQRO2N701loWxwQAWCe5zdu3FDkPvzoo7PZlDnhEnrGS+o35K5wc7Ey9MuH8L/8WoIFCTEyA4vWHS0xd9Y301nPOgiymJXltKyqKrUeEYve4PLlneuv3mhD+OL2lyHF5eQWQgReKqICpZAQOphcF4HQowQTAjFzCDGEFH0IIcUYQVABCJFSCICoyPVcNsi1M9yReeAjcuSlG7IccPaUdsKjvOZTbmXqgPXPiPKi3X/qkNYUUlRILCwMPoqhwWdfnvyXP/nTf/9v/sHbb6wUPVeVrc1siJyQTOFAWpCKbKNMQxQUgsSEiIyBJaE44O4l1EogxRowQgJixhQpiYiHVAE3LNQx55GAQgIRhATpGJMxuAKpjS2QRhGpZ1X0Mq+qupkKO052UZdNq5q6vnbj7e2tS87qJK3SXTY5GAMQW3CyNtSv7Gx9eXt68PDkeLJY3dwiIq2t0W5zfXU82rh99+7Z7Cwztk0XK3bn8LynjfJFkT739y9ZT5m1ZalSEHkJTEOjFCEhAycxioq8rwD9om2qdjGbV2UlIopsVvSuXbt27fr1NobPb390eHj4CCvSIeKU7hS0Y9EmICJFeO5VPIrhpfM7UxJmiCFxEkRUHV0CURJWzvSGfdfPRUmS9EgukpYfHxFRXpCHe3Y77C5YYpmfPF+eAM8+ob5BgJmtAhRJkgaDYVMtWm9u3Tn5y7/6yXjlW6sDWRn26jKhc0W/YKpQImKjAVZW++W8kiTaapCAwgIcQovAyKxSBKOYEgESKEgRYsCYOFXCAUQQlgU2ZkFhFCBOpOe+zYLdctk6gg2+lcR15euq1SApWo6adBE9Hx4dF4Pi+is7zoJIrQ0ASogRUh1DqzMNTS3BrWTWIEwnMxHK87z1C2NMjN45o4wej0e37nwpyJ3Ne1arXuIp/X9ZGkgJRwRQHaNsSk4b6ywKGca6rM/OZm3b+sYzc54Xq+PNN978ys7OzsHxwU9+8pO9B/cRxWZOhNUyUqcOaNftlEp1/S7qkcXk85i9a5cTxiWrBwMAaUQiFUGA0ObWFT1tVZQokmCZ6u8qk11uVZ3TDbxERuf7KLzY13zRIp2n2AKgVbryZVPHyOyyfLyxvrZx44MPbl3dLq5srw7XVxzGFHzSlTVaWFDZjY1diWlRzkFQmAkURI6JKUQyoC2QgGiDqFEUJmAfJTbICQSJTGDkZSs2EgEhICa2LDGlxIAWIBOQRTOfzKv55CzPNLIkprRoD07KeVO99Y23M+PJikgdfFKGtGYRkdRAHSAqDT1fLUBCaKuVjU2B1lrDErWy/X4REuzu7nz08UdNbKCjOOqM+6NhGPhLREV/B9N/0e7ptGyABGFRSLm1PeMUUWri7HS6mM07JixEHI/Xdnd3X3397fF4vL+///33P7i7dyfvuTzPJaVHEfZy51RIipRSigyfK2v372OMqXM8Y2IWYIwxpiQAQKSVWnaeG2ezfqEyHTGxJOnAIx1l1PIe6Lzsdo5DfZF0LsrxKR19jIl5nqCrNua2H30D0PZ7zqdGEBKG6aL62w8/vXGpIC+LWdhtwu7NTVLMKiYmYK1pJSt6a2vG4PFidhw8L5MzwhHBSGKKTFEwS2KBASNiiOJFhECUyooQfOQGSEh1VGQCkBgEFTRRbAMGsA58eraYlzVoW/kQmoBoF2V1e+/h9devbVxeJ1UD1CKtIiHKOIQUakxt8GVb+9lU3b1dI2zmGY7GeSNzq0chNFplVV1GRuv0sp/7eWqELzZZT2nbr7QuPjUtHek7AyL08t76YEgC1XRxenScAndZ0syYra3t11577fqNGzYfffLJJz/44P17e3vGOK1sSskYJdJV7pbJI6WU7lozrZxrQBeHhRBCCDHGTh9SSl2SH1EppTQJEyoCl+dFkWutk0QhhNQlNRQBSBcMS0f2CQAdOdLL5PKUc/PLy4604yQWtdMS41x1hjLJommV683L+KA+JRnNy88u7Y5j24pOwbcae0oMhlhkl/UoK8/qqiytYkOkAZGSh6ipRWhRaU4IiVRADkl8SqIAdYZ9TrOUADWT4o5jT0RAWWBsm9Bm0HI4nU4ODg/qqkmhBUkxsNW9k1l5/+Dw9/7R75HTgBW3HrQIUNsGQ8Y44+e+Kid1WZ8epsOHc1OYpp1pmwqjq6o0Om+a6uysMq4/Gq2QAkyPWwwei06ka8N5rob9kuJ97oUXl6YIVrTVZjjorQ2G2ofTg4NqcmZCSMJgrcn6G9u7b7z+7s6lqxr1rU+/9+Mffn9/b08JWzLOaqCuKQ5BMShEQq1UpsgZpRQxschymnxiiAF9KykQBy0pCbMkBmZSQoSILIraFLR1+Sg3PRsgRWbdjbV/PCxFRKJ01c4nJiw+5yafOrQM1p4nymd9AABQak6gLSoX2m9/6xvT06Of3fq81Vmr9McPptSWm5k6W/DulXz/qOxvDlwzRRZKC1K2c2yNIKrs3lHT+PaVV9YlHK4OoiZOXhV4qQGw1jIohsyYzGA9m04mZaXyq0nZ2HpKjdKUIFN51kirW2RkZfy8OmqSW9RxVkLbkIaVw8PDs3Ly6o3RYLXYuTTc7GVZHTyfovImY0BWtkitSsyWkLJ8ejA9OpzXrTtuK9dfbX3MnbWZbeoGLdbxNEizvrG1vr7+8OAEpGNZh87WMyRAIGSBRAAoRB0J+5IIVgAAGTUgXMCPdqX8l2hwF6o+UUnqmRwRV8ejjfGonS0ePHhQTecakEFleZEPR6tbl69ef/3a1RuhSZ/84uff/9739vb2vPeulyuruvBIGx0lgkLUZIzNjLHKaFKIiJREJEUOIbQ+dowuXe/Lkns7xhgjEHSuKkvqCMOccyIiIMuE/GOdek4V+LnG/bmHntLC55aAL16SkncaJdbjTbexDV/76k00pz/99C5RT+Zt8jwt0/0wOzo6+9p7l8/Oih7VWmHhDKSWW59SCikVuR3k2Zef3w/V7M03NiEtWLFy1nNEbmPTEhaYMlAK3CAvZF7P6qrK8vxk3vq23NhcVVaF2AgmRSMR69s0q05Frxwen0wms+RhfnY6W8xG46Fz+Z07d1bXRnVT0cQrmhWFqpopoAc0Nis06g4Ztra6fWdP2hTKttpY344xhoBCBQArZfNscHI829jIhsPhvfsHoE0HF+pQb4SKhLtuWwBaMj0B8BKfyUAgAmnpgpEApa56AvG5z+tFSxumjc31Yb8oJ9OTg/2mWghgG7gohuP1rfHW9pXdq5cub5PwZ198/MMf/vWDgwe1r41x1lrjrFLIAKBIdX0GzjhnnbGGNHVzI0A4gUgKMXZ+Z4wxxo4YVh4pazcTpqPsApuZXj+31nroZieoEOOSFfHJ7iKA5+A7z9MFTynoS37zkmWM5ZQSelB+MvnsW+/++m+/t5vb+pNbDxYNScoQIXL4V//8OztX1pv5PMayl+uMolBM0iBISt4o2VxbuXZ5dXp2enYwWX91tZdH0uhDtDJnb1GMbysmssXAmGGWpVAvekqXR83kLBUZ99eRQBRSiqZpuQlNTGZRT8+m8wd7J8J2elrVTTVevfTFl/d2r1zZWhsB8GRyYl2d5QNJwqlt29P5FDOdK8yUZGVJTWuaEIrhyPWyiIlFFFlryLeslLl8+YrWenV11VgVudPAi64U4SPaXgBFQrzk4uTz+skScy/EiEIoAOp5g0SefYLnR/XWeG3YW2nK+eGDh4t5SQLW9vor/bWNy1uXrqxtbK2vr0pMn3z6i59++MOj/TsxhY5YwVqtNQEhiiCKsdZlxjnnjLHKLPN2LCFwjL5pmqZpQ0gxLV3SDkfHnABEKUWmw1UlIMmyzGQOEIUfsSFdeOEYzsnhX7ZexL3/qy5im3woXD6Z7KNeq+py9/KWgbDap/d/sIeuevudm3/0L76d9+fz6Z61OaWEGbZtlWQm3CJJDNHXvDkudn/rW3VVITWz+b1WC2pEixDEojWUJzKBE0dIqFAp8PVsclpN0+F9GIy86TudG0ziXM8Ww7FZT2b1y3un7V5JyiXOy3KR5ePbXzy8/uolrXVKKUV/fHJ0882rmXPKUj33PswmR0cAGrEX22L/ON3am9ewUiiIIFVda7NCBtq27WXFfL6wRY7CWxurmjBy6rbJR2Khcw08D+q7PXRZmHnMMcAAERCkm6GRHuebL24Zz6arlmim1ZXhoiyPD4/8oiUhIFOsrG3vvLKxeXm4sjYcDpFl797tz37xs8P9+5CaEEKv1+sVuda6q9orrY01LrdZbp1zmpRGUkiSIEqMMVZVNS9LH4IIsiyLnAlAUupyS0ophdDV7lXuXNHrxpp3Cf5lLyw/sf91huZF7aYvue2XG5dnk1AmEbNQQoHs5x/d66n85tXdwXD87tfUpcvDjY2dv/fbv1Y2d05Pbvs6ZrCtNRjiyPPIU5YaklhjckBu5+2iHg9GLhuur6mz8qHOqA1NXSuHjj1zbNvURnSMtvLJad0sQOH65GxxNsNtcU4bTkoc5IWlTOlMsxrd+gL7w345zZinR0flykgpcuW8shDVxjjGGCItKhjaXm42dK4Xqrn/4HAynew9qCdznY2uDLbXVne2tMttlikybTNvm7pdlMa46OvgXK+XKQLsaFOflh4pYRRQQp368aMwYamey2nvjAgIHpEB8guXP85HP6/VQQBA+1BPTo7m05kwZG4w3ti8dOWVlfHG2tqGtZnSePjw/qcff3Tw8EGoa9/UubW5dRqJBBBAO+tym+W5zrRzxhijAIlIg25S42tfzuflogpNyyCAqpsM09X7O2/PGKM1MTOyaK2zft/mmSBEYVQaARIHRUpALow5W94PIr6gj/85CeRfqaTx+Aeuc6tXCvfum+99/MkHf/ZXP/o/3/vRP/z9r3/za1e/9RtvX9q5Mjm6Nz27HdsZeBshuXWrMCRIvUIDZjHGwvYM6ljL/t3j/YeTjUsbxWqx3tuufO1FUabZ9+rgERJppZ1FPU6lv3v/oF2Y41N97yEMrzSvCYJQbgfSB21aNDXq+dpmcePm1l/+78+rcshkXN7b2Fotq2pzc2t759LJ5LSXF8AuRWoiO+hRCmuja/OpXtTVrLw/LdPK7sgWOSPPyvnq8BIH4ngiqVVoN9Y2gxcQaqo2RQTRCApZXaRoBCHNTMIogEKyrE8LkwAqAEJWSwY9icIWML6cTeMp9wwAdOMXta+V0cNiuDJaX7t0eXVzi5wTTSm1p/PZrc9/cf/e7bpa+NAk4cw5QpHERCrL836/n/dzZTSQPCJc0LnLFGpf+8WirhZ1ChEAOg4WEWFmFBYREiCjjDFE5L0nBUWR236BiliWxl0gPRFiP3En8py37sU3/3KNfJE/oIzEMN/auvL6V3Zsvzo8Pri//+CvfvTj3/z2u5s7m2fHe4cHd0LdJC9NFUzyVhciUWttXa50L8ZIoEFA93B9a3T3ywd39+68uf41IE2ke73hvDqOMaUYKNXW2lg3aPVnX5Rf3DpNoVjMs2kNnkFZ0hlleR5tRQbJoagmJdjYHD3Yf5CauPfw9PrVXUTFiVdWRm3rp9Npv1ccn05GWc6aEkloqY2OadQGVnrgekqZbDgezdpG635K0i6akLit4+bapgLro3d5zh4lIokRVI8gI9x9QQCCgEAITEAMXagugsCQFJAgoBgSAOk4NJl1+5Tkn/v9YwUtfaNy5zIzGq2N1zb7K4MALL4OqYHoj+/f//LWJ+Vizhwb3xqbdTnOLMv6/X4x6BdFoawKKQIt4fFKqTwvjLKzWRlCRBEi0mJCijElESRETSSyBN1prQGYFFibjUajmOmQYhJeuqSPkEfdZxc6x88/nZl7rtpd/PFXdUm7f9QmtIoWfj6tJyfzg6tvXPnqb751ebN4453X63Zy7/7nvq7rhpUqBuNeXS4EVhOI0d24bNJ6QAAgCSRmK/3N3S0QFRovSmfFBojS2/3J/kmS2JTzlFD5kCl3eJh+8nGdAhqtVaZsrrVN2iRQHpUhVClEQmOVLgpTFMVR2a6ujxLErOfefPN169RsfoqkF1XjE2NoIXNRowCULSfd99Bmw63kwbjCRwhNMgVJ4uOjAxbROvvgb3701ptf3d29FoP0e4NBMTyb14DLMB2QhbpRuczoSQiZGDV0oGZkRhYEBiZQLICsiHUXYwG058/i5drZtRlrNkr3MhRdRS+z00ldJkTSCkF6mu7duTWvSpHUhNoVPWOMK/rO5efM3NoYZlYIUbgOPqUEC7RZv+ivWJfZXi6hhhSZPceEIJo0AGiluo+oFCqFzOicy/u5zW0tURBRLSmM4ZntbckgAk8DCy7e6lOXXHTGn90sz2GInYzoEfapOzniWuT53v78z/7i+0CLfJBvbBXvffNNR+3ZZD/FmQ+tDxRqIapiqpq0tVr0SCdBISAiCwCgosSIK66A4vj49OxwCmLzrByurNvxyta1QVz0z47U4qxC1CElUL39A2jqanVotEuXd9aKvkadwAigjUlp3QOVIStIFGPqD1YA7PrG2sp4xdl8Oj1JvgIJi9l8OM4yi41IXYfA8umtu1lvo2QSk9989dWFT/W8ca5nlGHf/vCD93vZ2ttvfRWi+uzntwxlq+vrudFvvv7a//3xzwAlSiKVBAIAdKP0IrImZI4ESKhJBMjE1JIlgATCSSIoA2RE6HGN9MWNN10G4Pyh6IYhxphCI6mkxRkQCpAxZtDvBVBVUwGJLXK0pHOT93ou61ubdYuMZuaWU5N80zSRQ4oCAGZ6Zl2WraysX9quSE7OJm3bKqUM6XOQEXLSWiMiIxinbZ65LJMuSMfHzScowC8x5C94/16CYHiJWsOSd+SJVChLzpgiyHRRJ7/4/nc/un5lJYPGT0+P92/5+iREfTxJp6dpfWNFsG3Ze4ZBZhgTQMcXwIACRpK0qgf9cRZTVc2r1Pp6Xpr5Wn/ghsN8/ZUbg8F8cuSnk+NZeWItbG1e8fXZ2hiu7qxoqK3NABILGp0BavDADJJYIQWIxcrglauX+r1ivlicHp4aEzj5pvJF3ybmsqnLanE8qQ7LVB8dtZ5eu37zrXfefnBwcnvvwWg8LIpB8qHn9OToNDRhfjYvevDzn/5kfXNNOfvu2zePJ6ef3LqlrYrcCESlOnS2jtx1iktmTGwjC2hSRFlM7GOrDBlHITRCAcnGkPTzECePn8iFx7isxc8WDXACSSipY1sHAKRMYSEANstGa+tZZgXZ5bY3KNDkIsIJfAihrhrfNr4OITAyg6QkCHA8OzNZtr66sba9lUOaV3VVNdZ2LDaooKuoU1c2IAWu3+sVBRA0wT9rt59HmPjLquBTR+VRZHbuoV6sLZ03ilz8awpqgdBE0eCcGjmd3nn1tR77h/c+j/VEmQis7+2d3vrs9Gvf+ErRp73Dw2K8nS8ZnpOAj8IgkQzE4I3FYmi81+ybUC3aqi6bdn6mziZuNB70e/21LWraRUiT7W3LvtSm/Ma7o57z1kiUSApi8kYniRFQlDJGqcyqNrDLKEpzMqmbeZhNp87GajFDUOvroyao2aI9PFrcuns4KWVRwWg4nNbec7h+Y1dZW7eQGWuz3nBQ/OxHHz24/ODw/sPV1bCzs51pqupFnue/9evvhRD2Tw6qRozVIgKigMnq3KAQ1prn41Exn5cp6ZicMBQ258QhRVSKRVJqlLUQXqad54bxcZopxogEpAEYkFi6spXiop+TUGhXUMTmjsUrg+RUHWOMsekSm22bUmIRQO6m6YkGYWxSOJ1PbZ6NRqt5r6eNoQ5Xj6iUMl30wxxiBAV50cuKAgw1KXhJS1KAJ7fEl+TJnjn36ZOfa03OpfCEduLjQ+eL5NQYFTkR2BTE5frK1trB3q2qPBEIPsYQ2br89FRmk8qRfnBwdu3GTt1wrzAEiB1nHIIkIdLMgYCHg1xFLqNvo3h/5pOqGyrLcn28vjrauHRl/dd+7a3Ufn52uKAcvvn1y/285dSKIJEowwKNJBBSPvi2yUgxizdWFou5RFNVPJv5tp1636xvbJ3NcL6YHx+fPNw/vbs/K1vV6w9dz9gsLxczpaEoshjD0eGhFtxY2yzyL/su31jdGBSj1eHquD/a//zTct5m/XFbthnY9UtX9o/2ECh6tsZBnBvVvPrK8J/9k98dj7Lv/s0P/vq7Hzax59w4JIqASFqWs58xpRcaw8ftN0/2fmijSCQJcALueqaUCDP7EIDRS0optXWK0vIiAEDTwbVSSrEbiSlEyAhJoogopVgEAau2Pj49cXlGpNBqMloBaq0z5xQIpxRCQAXK2XzQJ6er0LYx8PmcQriYUbowE/L8NuSFfsxLlPLcdl/cOF+u0JlKITWRURtlndpYLxS0k+lDSU3jW8/iY9jd3RgM9mZnR+PhRjm3h8e+6PeFRaQBRgKR6IUQRbFEkKQV9rLcW/Cl57gICRNo3/i6rKfT+dba1a+8sfvFx7cXJ+GtN/L1NVGmZYhKqzYGZSilCBJiWy8WKcXxeDQg5ZQy+/uHvjbVlFNKMUG58JP5wf29o7qqqkWbwCENi2LsnA2eF4sFImtNSqdyPvn04y+21jd2dnZi62ez2XAwGhTDydE0d5kvPROOh4WKandrp2xOcoSYGmdzJWFrtfyDf/q73/77byg4RZy/evXd3/mdG//zz3/6k18cKcbaI0cApTESo9LKADQvemrPXVpxEGQWYEJETdgh42UymYhg3TYpJVDAHEUSMIt6xHkLoqibgQksHd5IlkQHWnHw8+m0HAxWyOS9vm8jAhdZ7qwNTd22LXLIXC8vemBVxaGNIWICRc/Q7goAkjwi/Xo0/Pm85vls5uwl/uhLg6Tnq3tMAmjzzImPSZo3Xr95cHgfvPe+QWUEAaM466/dyO/vVYPZQrR8+tne9va7QzAIkEKjCDGiUtr7CiAwtCF5rdygWAl12/DMz6P3XmtmFaYckVXPbLz26po0J9/45o4rYsCGlMJEWjsAzYzI0jZVvfCNz0KT6io2cXFyMuOQT09iipHBt4Hrei7sUxSrMxHdhGZVJ5G637Pe+7OzMyKqGjk+PanrhcsuK5BXrm7PZ6dODxvlzk5ORyv9r7/79c8/vzs9Onnl0qU79z9p0ynx6SDD4Yr5jffe+8M/2O5lYTb9MPAxoqBZ3dy69G//3R8dT/v//X/8r7/98GPtXOQkESypto3K/Er6CZrYs8KOpwtQCYAwR+ZFqgAgcBIAESQgJAUoCHGZYxcBAELsqEioy4MxAKJiTiyAMJ9Os8EoK3oAgMD9XqEAyxSZmRTYLFNW1ym0wUdMjF2r2HJXw8e69YT2nOvfcxXqqYT8uaN5fuFzN1d1ofPuqdMECwYRr5DZab0+HJfTWqvIQCgUfOSUYqyu37j88PDW3YcLZ2vfzra2in5+YzhwkAKkoBCBE6WYYhXiLIaGkoM4yFw+b1dIt7ptJUSAmEKYLqjFdvfaaHfnK+NV7YoWsv68biTZwo184uiRQCErY1xayGxSlXOIxIt51ETB43zeBC4TiA9CpCwZJGeUE2AEX1dltXB1XezvUwjMYkVwPB4fHh4M8mw4zvb3jvO1/snR/tbG5sogj21TFObh/vE7b92Yl5+sbq39/ne+8847N5wzGvXp/T9/eHBgTUkqLZrkWZex+PAXH3z/Rw8fHjVJ6Q6rAChIYrVO8Byyt6fs+8WnqbWSCBC78k5H9Y6ESklikYQKu4Q5pyWq7pyBq/sz3WwrAZbUFbgSkQZmZFCammpRGYeKXC9XIEVRcIhktBVBMqhUEA4drk8TgERO5lHP58WPu0zLv3g91toX+6MXz3nqNEJkfhqZ360gqE0WvO9rB1y+/90fbPzjN/JckChyQqEYolLgnFtd37r3wJeLSd3Cd//m/UubWf+1S12fAiJD8oagDU1VzXxY1DOI7bRw286NY1OhWjCUokR0EvCkg2BZDCTrc1LRJ59QOypCrVPGvmUUTpGST6eHs7t3HtZhlbKs9dGoFKOEwAkwAXMik7mVlaEBrVDJopzPTlwPi16BwE3TNrWfL6rTk/LmzZsP7t5xzly/cbmtfOL6latXRivjplmsrg5v35lc2hq+8+a1G6/94Rtvr25eJud8iPUXn3+5mNxRFFLbtMLzUp1V7c8/u/0X7z+Yh5WAjlF59qQVJooxLicPv/QhPmUS/x/N7GhHcQ0nwQAAAABJRU5ErkJggg==",
"text/plain": [
"PILImage mode=RGB size=224x224"
]
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"im = PILImage.create('Gold fish.jpg')\n",
"im.thumbnail((224,224))\n",
"im"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ae2bc6ac",
"metadata": {},
"outputs": [],
"source": [
"#export\n",
"learn = load_learner('model.pkl')"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6e0bf9da",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"('AMERICAN GOLDFINCH',\n",
" tensor(0),\n",
" tensor([1.0000e+00, 1.3542e-08, 2.0991e-08, 3.5330e-08, 1.6987e-07, 2.3473e-08]))"
]
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"learn.predict(im)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "0419ed3a",
"metadata": {},
"outputs": [],
"source": [
"#export\n",
"categories = learn.dls.vocab\n",
"\n",
"def classify_image(img):\n",
" pred,idx,probs = learn.predict(img)\n",
" return dict(zip(categories, map(float,probs)))"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "762dec00",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"{'AMERICAN GOLDFINCH': 0.9999998807907104,\n",
" 'BARN OWL': 1.3541999521748949e-08,\n",
" 'CARMINE BEE-EATER': 2.09909085668869e-08,\n",
" 'DOWNY WOODPECKER': 3.5330007364109406e-08,\n",
" 'EMPEROR PENGUIN': 1.698742551070609e-07,\n",
" 'FLAMINGO': 2.3473393895301342e-08}"
]
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"classify_image(im)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "930cf172",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"C:\\Users\\hh\\AppData\\Local\\Temp\\ipykernel_19564\\371635615.py:2: GradioDeprecationWarning: Usage of gradio.inputs is deprecated, and will not be supported in the future, please import your component from gradio.components\n",
" image = gr.inputs.Image(shape=(192, 192))\n",
"C:\\Users\\hh\\AppData\\Local\\Temp\\ipykernel_19564\\371635615.py:2: GradioDeprecationWarning: `optional` parameter is deprecated, and it has no effect\n",
" image = gr.inputs.Image(shape=(192, 192))\n",
"C:\\Users\\hh\\AppData\\Local\\Temp\\ipykernel_19564\\371635615.py:3: GradioDeprecationWarning: Usage of gradio.outputs is deprecated, and will not be supported in the future, please import your components from gradio.components\n",
" label = gr.outputs.Label()\n",
"C:\\Users\\hh\\AppData\\Local\\Temp\\ipykernel_19564\\371635615.py:3: GradioUnusedKwargWarning: You have unused kwarg parameters in Label, please remove them: {'type': 'auto'}\n",
" label = gr.outputs.Label()\n"
]
}
],
"source": [
"#export\n",
"image = gr.inputs.Image(shape=(192, 192))\n",
"label = gr.outputs.Label()\n",
"examples = ['Gold fish.jpg']"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "4f463e23",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Running on local URL: http://127.0.0.1:7860\n",
"\n",
"To create a public link, set `share=True` in `launch()`.\n"
]
},
{
"data": {
"text/plain": []
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"#export\n",
"intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)\n",
"intf.launch(inline=False)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "82774c08",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Sequential(\n",
" (0): TimmBody(\n",
" (model): ConvNeXt(\n",
" (stem): Sequential(\n",
" (0): Conv2d(3, 96, kernel_size=(4, 4), stride=(4, 4))\n",
" (1): LayerNorm2d((96,), eps=1e-06, elementwise_affine=True)\n",
" )\n",
" (stages): Sequential(\n",
" (0): ConvNeXtStage(\n",
" (downsample): Identity()\n",
" (blocks): Sequential(\n",
" (0): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(96, 96, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=96)\n",
" (norm): LayerNorm((96,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=96, out_features=384, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=384, out_features=96, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (1): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(96, 96, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=96)\n",
" (norm): LayerNorm((96,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=96, out_features=384, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=384, out_features=96, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (2): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(96, 96, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=96)\n",
" (norm): LayerNorm((96,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=96, out_features=384, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=384, out_features=96, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" )\n",
" )\n",
" (1): ConvNeXtStage(\n",
" (downsample): Sequential(\n",
" (0): LayerNorm2d((96,), eps=1e-06, elementwise_affine=True)\n",
" (1): Conv2d(96, 192, kernel_size=(2, 2), stride=(2, 2))\n",
" )\n",
" (blocks): Sequential(\n",
" (0): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(192, 192, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=192)\n",
" (norm): LayerNorm((192,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=192, out_features=768, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=768, out_features=192, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (1): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(192, 192, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=192)\n",
" (norm): LayerNorm((192,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=192, out_features=768, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=768, out_features=192, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (2): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(192, 192, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=192)\n",
" (norm): LayerNorm((192,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=192, out_features=768, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=768, out_features=192, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" )\n",
" )\n",
" (2): ConvNeXtStage(\n",
" (downsample): Sequential(\n",
" (0): LayerNorm2d((192,), eps=1e-06, elementwise_affine=True)\n",
" (1): Conv2d(192, 384, kernel_size=(2, 2), stride=(2, 2))\n",
" )\n",
" (blocks): Sequential(\n",
" (0): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (1): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (2): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (3): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (4): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (5): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (6): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (7): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (8): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(384, 384, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=384)\n",
" (norm): LayerNorm((384,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=384, out_features=1536, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=1536, out_features=384, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" )\n",
" )\n",
" (3): ConvNeXtStage(\n",
" (downsample): Sequential(\n",
" (0): LayerNorm2d((384,), eps=1e-06, elementwise_affine=True)\n",
" (1): Conv2d(384, 768, kernel_size=(2, 2), stride=(2, 2))\n",
" )\n",
" (blocks): Sequential(\n",
" (0): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(768, 768, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=768)\n",
" (norm): LayerNorm((768,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=768, out_features=3072, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=3072, out_features=768, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (1): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(768, 768, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=768)\n",
" (norm): LayerNorm((768,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=768, out_features=3072, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=3072, out_features=768, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" (2): ConvNeXtBlock(\n",
" (conv_dw): Conv2d(768, 768, kernel_size=(7, 7), stride=(1, 1), padding=(3, 3), groups=768)\n",
" (norm): LayerNorm((768,), eps=1e-06, elementwise_affine=True)\n",
" (mlp): Mlp(\n",
" (fc1): Linear(in_features=768, out_features=3072, bias=True)\n",
" (act): GELU()\n",
" (drop1): Dropout(p=0.0, inplace=False)\n",
" (norm): Identity()\n",
" (fc2): Linear(in_features=3072, out_features=768, bias=True)\n",
" (drop2): Dropout(p=0.0, inplace=False)\n",
" )\n",
" (shortcut): Identity()\n",
" (drop_path): Identity()\n",
" )\n",
" )\n",
" )\n",
" )\n",
" (norm_pre): Identity()\n",
" (head): NormMlpClassifierHead(\n",
" (global_pool): SelectAdaptivePool2d (pool_type=avg, flatten=Identity())\n",
" (norm): LayerNorm2d((768,), eps=1e-06, elementwise_affine=True)\n",
" (flatten): Flatten(start_dim=1, end_dim=-1)\n",
" (pre_logits): Identity()\n",
" (drop): Dropout(p=0.0, inplace=False)\n",
" (fc): Identity()\n",
" )\n",
" )\n",
" )\n",
" (1): Sequential(\n",
" (0): AdaptiveConcatPool2d(\n",
" (ap): AdaptiveAvgPool2d(output_size=1)\n",
" (mp): AdaptiveMaxPool2d(output_size=1)\n",
" )\n",
" (1): fastai.layers.Flatten(full=False)\n",
" (2): BatchNorm1d(1536, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
" (3): Dropout(p=0.25, inplace=False)\n",
" (4): Linear(in_features=1536, out_features=512, bias=False)\n",
" (5): ReLU(inplace=True)\n",
" (6): BatchNorm1d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
" (7): Dropout(p=0.5, inplace=False)\n",
" (8): Linear(in_features=512, out_features=6, bias=False)\n",
" )\n",
")"
]
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"text/html": [
"\n",
"\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"m = learn.model\n",
"m"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "10d7900d",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[Parameter containing:\n",
" tensor([ 1.2545e+00, 1.9196e+00, 1.2201e+00, 1.0390e+00, -1.6480e-03,\n",
" 7.6568e-01, 8.8830e-01, 1.6302e+00, 7.0489e-01, 3.2909e+00,\n",
" 7.8756e-01, -1.2321e-03, 1.0008e+00, -1.1701e-03, 3.2963e+00,\n",
" 7.5332e-04, 1.9848e+00, 1.0214e+00, 4.4530e+00, 2.5485e-01,\n",
" 2.7261e+00, 9.2749e-01, 1.2365e+00, 4.6786e-03, 1.7861e+00,\n",
" 5.4500e-01, 4.6252e+00, 1.1814e-02, -8.0696e-04, 3.4503e+00,\n",
" 1.3520e+00, 4.1267e+00, 2.6889e+00, 4.1214e+00, 3.4020e+00,\n",
" 8.4680e-01, 7.3639e-01, 3.9801e+00, 1.2857e+00, 6.4153e-01,\n",
" 2.6896e+00, 1.1183e+00, 1.1701e+00, 5.5256e-01, 2.3371e+00,\n",
" 2.6110e-04, 9.7016e-01, 2.1527e-03, 1.1990e+00, 1.7883e+00,\n",
" 4.0231e-01, 4.4849e-01, 9.7238e-01, 3.9889e+00, 6.5864e-01,\n",
" 6.8973e-01, 9.8424e-01, 2.7063e+00, 1.2161e+00, 7.5966e-01,\n",
" 3.3019e+00, 1.6209e+00, 9.5479e-01, 2.1214e+00, 6.2982e-01,\n",
" 4.0345e+00, 8.9406e-01, -1.5776e-03, 4.0855e+00, 1.0646e+00,\n",
" 1.3953e+00, 1.6694e+00, 7.7575e-04, 7.6740e-01, 8.8671e-01,\n",
" 6.4291e-01, 1.3444e+00, 7.1629e-01, 5.4538e-01, 2.0897e+00,\n",
" 1.1951e+00, 3.0924e-01, 2.9660e-01, 1.4705e+00, 4.0818e+00,\n",
" -1.9466e-03, 1.1466e+00, 3.8855e+00, 3.6003e+00, 4.8230e-01,\n",
" 2.1677e-01, 1.2715e-03, 6.5100e-01, 3.0062e+00, 3.0463e+00,\n",
" 6.9039e-03], requires_grad=True),\n",
" Parameter containing:\n",
" tensor([-9.7076e-02, -4.1602e-02, 4.1634e+00, -1.0902e-02, 2.5195e-03,\n",
" -2.6698e-02, -3.1112e-02, -8.0897e-02, -1.3977e-01, -6.1426e-02,\n",
" 3.2092e-01, -3.3970e-01, -5.7320e-02, -5.0723e-03, -4.5248e-02,\n",
" -2.6788e-02, -4.0929e-02, -3.8162e-02, 8.6140e-03, -2.3497e-02,\n",
" 9.3659e-03, -1.6219e-01, -4.0165e+00, 5.3178e-01, -5.3446e-01,\n",
" 2.8025e+00, 3.7767e-02, -8.2848e-03, -1.0448e-03, -1.1741e-01,\n",
" -1.3899e-01, 1.9646e-02, -9.6837e-02, -1.3024e-01, -1.9224e-01,\n",
" -6.6514e-02, -3.5839e-02, -1.2878e-01, 1.5046e-01, 7.7289e-04,\n",
" -6.4686e-02, 5.7553e-02, -9.2985e-02, -1.1460e+00, -5.4285e-02,\n",
" -5.4245e-03, -1.8200e-01, 2.2406e-02, 3.9471e-02, -5.9339e-02,\n",
" -4.1768e-02, -5.6190e-02, -4.3428e-02, -1.2965e-02, -1.1264e-01,\n",
" 4.9255e-03, -3.7258e-02, -1.5767e-01, -9.7796e-02, -1.8840e-01,\n",
" -1.1216e-01, -1.8182e-01, -3.2907e-02, -2.8298e-02, 1.4188e+00,\n",
" -3.3801e-02, -4.1863e-02, -2.6832e-01, -4.7449e-02, -4.5676e-05,\n",
" 2.6773e-01, 1.8772e-01, 6.9789e-01, -3.0746e-01, 8.3766e-02,\n",
" -1.0845e+00, 1.5364e-02, -4.4824e-02, -7.7240e-02, -6.7920e-02,\n",
" -1.3150e-01, -1.6358e-02, -1.7351e-02, -3.9939e-02, -7.2383e-02,\n",
" 1.0359e-02, -5.8904e-02, -3.8567e-02, -7.9783e-02, -7.3791e-02,\n",
" -1.0318e-02, -3.7690e-01, -9.9740e-03, -2.7374e-02, -6.3630e-02,\n",
" 1.5712e-03], requires_grad=True)]"
]
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"l = m.get_submodule('0.model.stem.1')\n",
"list(l.parameters())"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "008537b0",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[Parameter containing:\n",
" tensor([[ 2.2773e-02, -1.6051e-03, 4.0450e-02, ..., 1.7370e-03,\n",
" -4.5070e-02, 8.0949e-03],\n",
" [-1.4383e-01, 1.6965e-02, 2.5983e-02, ..., 1.2606e-02,\n",
" -1.0443e-01, 5.6370e-02],\n",
" [-6.5471e-02, -3.2719e-02, 5.6796e-03, ..., -4.1571e-02,\n",
" 6.5921e-02, -4.0347e-02],\n",
" ...,\n",
" [-8.8080e-03, 6.9815e-02, 7.1424e-05, ..., 4.0177e-03,\n",
" 4.1478e-02, -1.9052e-02],\n",
" [ 2.0792e-03, 3.2267e-02, 2.9801e-02, ..., -2.9897e-02,\n",
" -3.0278e-02, 5.5432e-02],\n",
" [ 1.2097e-01, -3.5444e-02, -4.6078e-03, ..., -6.3829e-03,\n",
" 2.3691e-02, -1.1242e-02]], requires_grad=True),\n",
" Parameter containing:\n",
" tensor([-0.4047, -0.7418, -0.4235, -0.1650, -0.3028, -0.1898, -0.5534, -0.6271,\n",
" -0.3008, -0.4254, -0.5997, -0.4107, -0.2172, -1.7935, -0.3170, -0.1163,\n",
" -0.4482, -0.2846, -0.4342, -0.4945, -0.4065, -1.1402, -0.6754, -1.7237,\n",
" -0.2955, -0.2654, -0.2187, -0.3914, -0.4150, -0.4772, 0.2365, -0.7542,\n",
" -0.5852, -0.1820, -1.5272, -0.3626, -2.4689, -2.3461, -0.6109, -0.4115,\n",
" -0.6964, -0.5764, -0.5878, -0.0318, -2.0354, -0.2859, -0.3953, -0.8402,\n",
" -2.2398, -1.0876, -0.2295, -0.9004, -0.7584, -0.8833, -0.3755, -0.4549,\n",
" -0.3835, -0.4047, -2.0231, -1.0263, -0.4106, -1.1564, -0.2224, -0.4250,\n",
" -0.2494, -0.4222, -0.0975, -1.4017, -0.6887, -0.4370, -0.2932, -0.4641,\n",
" -0.4958, -1.2534, -1.0720, -1.2966, -0.6276, -1.4161, -2.3080, -2.4538,\n",
" -0.4259, -0.9987, -0.4638, -0.3147, -0.2416, -0.8744, -0.2829, -1.4208,\n",
" -0.3257, -0.3202, -0.0602, -0.1896, -0.2497, -0.6129, -0.2976, -2.1465,\n",
" -0.4128, -0.3675, -1.9815, -0.3815, -0.3785, -0.2292, -0.3700, -0.3256,\n",
" -0.5584, -2.4192, -0.4590, -1.7748, -0.3996, -0.4092, -0.3518, -0.5332,\n",
" -1.6534, -1.8191, 0.6263, -0.4058, 0.5872, -2.2074, -0.2438, -2.4540,\n",
" -0.2283, -0.6865, 0.6988, 0.6477, -0.6445, -0.3454, -0.3275, -0.5701,\n",
" -0.5173, -0.2774, -0.4090, -0.3018, -0.4874, -0.4954, -0.4073, -0.4356,\n",
" -0.5103, -0.4128, -2.0919, -0.2825, -0.5830, -1.5834, 0.6139, -0.8506,\n",
" -0.4669, -2.1358, -0.3417, -0.3766, -0.3345, -0.3961, -0.3886, -0.5668,\n",
" -0.2224, -1.3059, -0.4601, -0.3928, -0.4665, -0.4214, -0.4755, -0.2865,\n",
" -1.5804, -0.1787, -0.4368, -0.3173, 1.5732, -0.4046, -0.4839, -0.2576,\n",
" -0.5611, -0.4265, -0.2578, -0.3176, -0.4620, -1.9553, -1.9146, -0.3961,\n",
" 0.3988, -2.3520, -0.9689, -0.2831, -1.9000, -0.4180, 0.0160, -1.1111,\n",
" -0.4924, -0.3177, -1.8912, -0.3101, -0.8137, -2.3345, -0.3843, -0.3847,\n",
" -0.1974, -0.4444, -1.6233, -2.5485, -0.3178, -1.2715, -1.1479, 0.6149,\n",
" -0.3749, -0.3952, -2.0747, -0.4657, -0.3782, -0.4958, -0.3281, -1.9219,\n",
" -2.0018, -0.5307, -0.2555, -1.1161, -0.3516, -2.2185, -1.1394, 0.5366,\n",
" -0.3218, -2.0387, -0.4656, 0.1850, -0.5830, -0.3129, 0.6182, -0.2124,\n",
" -2.3538, -0.9700, -0.9784, -0.3668, -0.4503, -1.9564, -0.2662, -1.1754,\n",
" -0.4200, -0.9024, -0.3604, -0.5172, -1.1882, -0.4191, -0.4770, -1.5558,\n",
" -0.4011, -0.6518, -0.4817, -0.2422, 0.6909, -0.5080, -0.4303, -0.6068,\n",
" -0.4001, -0.3329, -0.3596, -1.6108, -0.2371, -0.2467, -0.4545, 0.1808,\n",
" -0.3225, -0.3918, -0.3514, -0.3756, -1.2178, -0.4000, -0.3578, -0.2883,\n",
" -1.7485, -0.2364, -0.1599, -0.2640, -0.9769, -1.3066, -0.4148, -0.2663,\n",
" -0.3933, -0.4628, -0.2174, 0.2141, -0.5733, -0.2766, -0.3658, -0.5171,\n",
" -0.3484, -0.3365, -0.6445, 0.6866, -0.3738, -0.2902, -2.0863, -0.4882,\n",
" -0.2597, -1.0497, -1.6616, -0.3399, -0.5111, -0.5661, -0.3029, -0.5048,\n",
" -0.2877, -0.2841, -0.1981, -0.6910, -0.2872, -2.1120, -0.8928, -0.2299,\n",
" -1.5010, -0.4734, -2.2293, -0.4020, -0.2925, -0.4198, 0.6646, -0.3047,\n",
" -0.1687, -0.3750, -0.6434, -2.3348, -0.3102, -1.2732, -0.8192, -1.0592,\n",
" -0.0931, -1.6385, 0.3426, -0.8484, -0.4910, -0.5002, -1.0631, -0.3532,\n",
" -1.1562, -0.3843, -0.3172, -0.6432, -0.9083, -0.6567, -0.6489, 0.6336,\n",
" -0.2663, -1.3203, -1.1623, -1.2032, -2.0576, -0.3001, -1.3597, -0.4614,\n",
" -0.5024, -0.4949, -0.3158, -0.3273, -0.2668, -0.4280, -0.3296, -0.3011,\n",
" -1.6635, 0.6434, -0.9455, 0.6097, -0.4234, 0.3918, -0.4943, -0.4285,\n",
" -0.2588, -0.4951, -2.1992, -0.2601, -0.3935, -0.4564, -0.5817, -0.3487,\n",
" -0.7372, -0.3589, -0.4894, -2.0108, 0.4556, -0.8057, -1.7749, -0.3511,\n",
" -0.5359, -0.2100, -0.3956, -0.4780, -1.1457, -0.3976, -2.2114, -0.2840],\n",
" requires_grad=True)]"
]
},
"execution_count": null,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"l = m.get_submodule('0.model.stages.0.blocks.1.mlp.fc1')\n",
"list(l.parameters())"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "ff9d5c73",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "python3",
"language": "python",
"name": "python3"
}
},
"nbformat": 4,
"nbformat_minor": 5
}