{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "34ddfdec",
   "metadata": {},
   "source": [
    "# Getting started: validating a drug target with TwinCell\n",
    "\n",
    "### Question: *Is Deucravacitinib an interesting drug for psoriasis?*\n",
    "\n",
    "**Deucravacitinib** is an oral, **selective TYK2 inhibitor** approved for moderate-to-severe\n",
    "plaque psoriasis. TYK2 relays **IL-23, IL-12 and type-I interferon** signalling through the\n",
    "JAK–STAT pathway — a central axis of psoriasis — so it is a strong candidate to investigate.\n",
    "\n",
    "Rather than running a wet-lab experiment, we use **TwinCell** to ask a causal question\n",
    "directly from patient single-cell data:\n",
    "\n",
    "> Given the genes that change in psoriasis, does inhibiting **Deucravacitinib's target (TYK2)**\n",
    "> causally explain that disease signature?\n",
    "\n",
    "A high **target-validation score** means the target sits upstream of many of the\n",
    "disease-associated genes in the interactome — i.e. modulating it is mechanistically\n",
    "plausible for reversing the disease state.\n",
    "\n",
    "**Workflow at a glance**\n",
    "\n",
    "1. Load psoriatic vs. healthy skin single-cell data.\n",
    "2. Aggregate cells into **pseudo-bulk** profiles per sample.\n",
    "3. Compute the **psoriasis signature** (differentially expressed genes) with PyDESeq2.\n",
    "4. Open a **TwinCell** session and **validate** TYK2 against that signature.\n",
    "5. Inspect the **causal graph and paths** that link the disease genes to the targets.\n",
    "\n",
    "> You need a `DEEPLIFE_API_KEY` (from the TwinCell Console). Put it in a local `.env`\n",
    "> file or your environment before running the notebook."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "94ef4e1c",
   "metadata": {},
   "source": [
    "## 1. Setup\n",
    "\n",
    "Import the TwinCell SDK helpers and load your API key."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "814ce6c9",
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import pandas as pd\n",
    "import seaborn as sns\n",
    "from dotenv import find_dotenv, load_dotenv\n",
    "from IPython.display import display\n",
    "\n",
    "from deeplife.twincell import (\n",
    "    TwinCell,\n",
    "    pseudobulk,\n",
    "    pydeseq2,\n",
    "    read_h5ad,\n",
    ")\n",
    "\n",
    "# Load DEEPLIFE_API_KEY from a local .env file (walks up from the notebook's cwd).\n",
    "load_dotenv(find_dotenv(usecwd=True), override=True)\n",
    "DEEPLIFE_API_KEY = os.environ.get(\"DEEPLIFE_API_KEY\", \"dl-xxx\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0c9155fb",
   "metadata": {},
   "source": [
    "## 2. The drug and its targets\n",
    "\n",
    "TwinCell validates **protein targets**, not drug names. Deucravacitinib selectively inhibits\n",
    "**TYK2**, so that is the target we will test against the psoriasis signature."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "60b7581c",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Deucravacitinib's primary protein target (HGNC symbol).\n",
    "deucravacitinib_targets = [\"TYK2\"]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9c317e43",
   "metadata": {},
   "source": [
    "## 3. Load the single-cell data\n",
    "\n",
    "We use a public psoriasis skin atlas ([GSE162183](https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE162183)),\n",
    "which contains both **psoriatic** and **healthy (normal)** skin biopsies annotated by cell\n",
    "type. `read_h5ad` accepts local paths as well as `s3://` / `https://` URIs.\n",
    "\n",
    "TwinCell expects **HGNC gene symbols** as the variable index, so we set them up here."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "9c18c275",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "View of AnnData object with n_obs × n_vars = 24126 × 28080\n",
       "    obs: 'donor_id', 'Species', 'CellTypes', 'sample_id', 'protocol_url', 'institute', 'tissue_ontology_term_id', 'tissue_type', 'assay_ontology_term_id', 'cell_type_ontology_term_id', 'self_reported_ethnicity_ontology_term_id', 'development_stage_ontology_term_id', 'sex_ontology_term_id', 'suspension_type', 'disease_ontology_term_id', 'library_id', 'library_preparation_batch', 'library_sequencing_run', 'alignment_software', 'manner_of_death', 'sample_source', 'sample_collection_method', 'sample_preservation_method', 'sequenced_fragment', 'reference_genome', 'cell_enrichment', 'gene_annotation_version', 'is_primary_data', 'sampled_site_condition', 'cell_type', 'assay', 'disease', 'sex', 'tissue', 'self_reported_ethnicity', 'development_stage', 'observation_joinid'\n",
       "    var: 'GeneSym', 'feature_is_filtered', 'feature_reference', 'feature_biotype', 'feature_length', 'feature_type'\n",
       "    uns: 'batch_condition', 'citation', 'is_pre_analysis', 'organism', 'organism_ontology_term_id', 'schema_reference', 'schema_version', 'study_pi', 'title'\n",
       "    obsm: 'X_umap'"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "adata = read_h5ad(\n",
    "    \"s3://dl-dev-global-personal/jbmorlot/cellxgenes/raw/adata_psoriasis_cxg_GSE162183.h5ad\"\n",
    ")\n",
    "\n",
    "# Use HGNC gene symbols as the variable index, and drop duplicate symbols.\n",
    "adata.var.rename(columns={\"feature_name\": \"gene_name\"}, inplace=True)\n",
    "adata.var.set_index(\"gene_name\", inplace=True)\n",
    "adata = adata[:, ~adata.var.index.duplicated()]\n",
    "adata"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d3f18a86",
   "metadata": {},
   "source": [
    "Three `obs` columns drive the analysis:\n",
    "\n",
    "- **`disease`** — the condition (`psoriasis` vs `normal`); this is the perturbation.\n",
    "- **`cell_type`** — used to analyse a single, homogeneous population.\n",
    "- **`sample_id`** — the biological replicate id used to build pseudo-bulk profiles."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "138f9477",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>disease</th>\n",
       "      <th>cell_type</th>\n",
       "      <th>count</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>38</th>\n",
       "      <td>normal</td>\n",
       "      <td>Langerhans cell</td>\n",
       "      <td>21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>Langerhans cell</td>\n",
       "      <td>22</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>basal cell of epidermis</td>\n",
       "      <td>207</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>33</th>\n",
       "      <td>normal</td>\n",
       "      <td>basal cell of epidermis</td>\n",
       "      <td>50</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>cytotoxic T cell</td>\n",
       "      <td>697</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>normal</td>\n",
       "      <td>cytotoxic T cell</td>\n",
       "      <td>644</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>dendritic cell, human</td>\n",
       "      <td>237</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>normal</td>\n",
       "      <td>dendritic cell, human</td>\n",
       "      <td>238</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>endothelial cell</td>\n",
       "      <td>1923</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>normal</td>\n",
       "      <td>endothelial cell</td>\n",
       "      <td>1315</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>endothelial cell of lymphatic vessel</td>\n",
       "      <td>163</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>normal</td>\n",
       "      <td>endothelial cell of lymphatic vessel</td>\n",
       "      <td>197</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>41</th>\n",
       "      <td>normal</td>\n",
       "      <td>erythrocyte</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>39</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>erythrocyte</td>\n",
       "      <td>19</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>fibroblast</td>\n",
       "      <td>442</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>normal</td>\n",
       "      <td>fibroblast</td>\n",
       "      <td>400</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>normal</td>\n",
       "      <td>fibroblast of papillary layer of dermis</td>\n",
       "      <td>887</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>fibroblast of papillary layer of dermis</td>\n",
       "      <td>917</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>normal</td>\n",
       "      <td>granular cell of epidermis</td>\n",
       "      <td>462</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>granular cell of epidermis</td>\n",
       "      <td>706</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>hair follicular keratinocyte</td>\n",
       "      <td>409</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>31</th>\n",
       "      <td>normal</td>\n",
       "      <td>hair follicular keratinocyte</td>\n",
       "      <td>117</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>helper T cell</td>\n",
       "      <td>163</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>normal</td>\n",
       "      <td>helper T cell</td>\n",
       "      <td>181</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>macrophage</td>\n",
       "      <td>117</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>normal</td>\n",
       "      <td>macrophage</td>\n",
       "      <td>238</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>normal</td>\n",
       "      <td>melanocyte of skin</td>\n",
       "      <td>155</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>34</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>melanocyte of skin</td>\n",
       "      <td>49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>36</th>\n",
       "      <td>normal</td>\n",
       "      <td>monocyte</td>\n",
       "      <td>26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>monocyte</td>\n",
       "      <td>187</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>40</th>\n",
       "      <td>normal</td>\n",
       "      <td>natural killer cell</td>\n",
       "      <td>14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>35</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>natural killer cell</td>\n",
       "      <td>49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>normal</td>\n",
       "      <td>pericyte</td>\n",
       "      <td>1560</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>pericyte</td>\n",
       "      <td>2140</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>regulatory T cell</td>\n",
       "      <td>119</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32</th>\n",
       "      <td>normal</td>\n",
       "      <td>regulatory T cell</td>\n",
       "      <td>63</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>skin fibroblast</td>\n",
       "      <td>495</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>normal</td>\n",
       "      <td>skin fibroblast</td>\n",
       "      <td>858</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>spinous cell of epidermis</td>\n",
       "      <td>1341</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>normal</td>\n",
       "      <td>spinous cell of epidermis</td>\n",
       "      <td>2343</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>normal</td>\n",
       "      <td>suprabasal keratinocyte</td>\n",
       "      <td>1593</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>psoriasis</td>\n",
       "      <td>suprabasal keratinocyte</td>\n",
       "      <td>2355</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      disease                                cell_type  count\n",
       "38     normal                          Langerhans cell     21\n",
       "37  psoriasis                          Langerhans cell     22\n",
       "22  psoriasis                  basal cell of epidermis    207\n",
       "33     normal                  basal cell of epidermis     50\n",
       "12  psoriasis                         cytotoxic T cell    697\n",
       "13     normal                         cytotoxic T cell    644\n",
       "21  psoriasis                    dendritic cell, human    237\n",
       "19     normal                    dendritic cell, human    238\n",
       "3   psoriasis                         endothelial cell   1923\n",
       "7      normal                         endothelial cell   1315\n",
       "26  psoriasis     endothelial cell of lymphatic vessel    163\n",
       "23     normal     endothelial cell of lymphatic vessel    197\n",
       "41     normal                              erythrocyte      7\n",
       "39  psoriasis                              erythrocyte     19\n",
       "16  psoriasis                               fibroblast    442\n",
       "18     normal                               fibroblast    400\n",
       "9      normal  fibroblast of papillary layer of dermis    887\n",
       "8   psoriasis  fibroblast of papillary layer of dermis    917\n",
       "15     normal               granular cell of epidermis    462\n",
       "11  psoriasis               granular cell of epidermis    706\n",
       "17  psoriasis             hair follicular keratinocyte    409\n",
       "31     normal             hair follicular keratinocyte    117\n",
       "27  psoriasis                            helper T cell    163\n",
       "25     normal                            helper T cell    181\n",
       "30  psoriasis                               macrophage    117\n",
       "20     normal                               macrophage    238\n",
       "28     normal                       melanocyte of skin    155\n",
       "34  psoriasis                       melanocyte of skin     49\n",
       "36     normal                                 monocyte     26\n",
       "24  psoriasis                                 monocyte    187\n",
       "40     normal                      natural killer cell     14\n",
       "35  psoriasis                      natural killer cell     49\n",
       "5      normal                                 pericyte   1560\n",
       "2   psoriasis                                 pericyte   2140\n",
       "29  psoriasis                        regulatory T cell    119\n",
       "32     normal                        regulatory T cell     63\n",
       "14  psoriasis                          skin fibroblast    495\n",
       "10     normal                          skin fibroblast    858\n",
       "6   psoriasis                spinous cell of epidermis   1341\n",
       "1      normal                spinous cell of epidermis   2343\n",
       "4      normal                  suprabasal keratinocyte   1593\n",
       "0   psoriasis                  suprabasal keratinocyte   2355"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "perturbation_col = \"disease\"     # \"psoriasis\" vs \"normal\"\n",
    "cell_type_col = \"cell_type\"\n",
    "batch_id_col = \"sample_id\"       # pseudo-bulk replicate id\n",
    "\n",
    "adata.obs[[perturbation_col, cell_type_col]].value_counts().reset_index().sort_values(by=\"cell_type\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9e095e36",
   "metadata": {},
   "source": [
    "## 4. Pseudo-bulk aggregation\n",
    "\n",
    "Single cells are noisy and statistically dependent within a sample. `pseudobulk` sums counts\n",
    "per **`sample_id` × `cell_type` × `disease`** group, producing a handful of robust replicates\n",
    "per condition — the right input for differential expression. Groups with fewer than\n",
    "`n_min_replicates` cells are dropped."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "71c07a7c",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Building pseudo-bulk:   0%|          | 0/125 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Building pseudo-bulk: 100%|██████████| 125/125 [00:04<00:00, 31.13it/s]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "AnnData object with n_obs × n_vars = 95 × 28080\n",
       "    obs: 'donor_id', 'Species', 'CellTypes', 'sample_id', 'protocol_url', 'institute', 'tissue_ontology_term_id', 'tissue_type', 'assay_ontology_term_id', 'cell_type_ontology_term_id', 'self_reported_ethnicity_ontology_term_id', 'development_stage_ontology_term_id', 'sex_ontology_term_id', 'suspension_type', 'disease_ontology_term_id', 'library_id', 'library_preparation_batch', 'library_sequencing_run', 'alignment_software', 'manner_of_death', 'sample_source', 'sample_collection_method', 'sample_preservation_method', 'sequenced_fragment', 'reference_genome', 'cell_enrichment', 'gene_annotation_version', 'is_primary_data', 'sampled_site_condition', 'cell_type', 'assay', 'disease', 'sex', 'tissue', 'self_reported_ethnicity', 'development_stage', 'observation_joinid', 'n_replicates', 'perturbation', 'cell_line', 'batch_id'\n",
       "    var: 'GeneSym', 'feature_is_filtered', 'feature_reference', 'feature_biotype', 'feature_length', 'feature_type'"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pdata = pseudobulk(\n",
    "    adata,\n",
    "    perturbation=perturbation_col,\n",
    "    cell_line=cell_type_col,\n",
    "    batch_id=batch_id_col,\n",
    "    n_min_replicates=20,\n",
    ")\n",
    "pdata"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "21436733",
   "metadata": {},
   "source": [
    "## 5. Pick a cell type and split the arms\n",
    "\n",
    "Deucravacitinib inhibits TYK2, which relays **IL-23 / IL-12 / type-I interferon** signalling.\n",
    "In psoriasis, **dendritic cells** are key drivers — they secrete IL-23 / IL-12 that ignite the\n",
    "IL-23/Th17 axis — so we focus on that population. We split the pseudo-bulk into the\n",
    "**psoriasis** (perturbed) and **normal** (control) arms for this cell type."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "e3e46758",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "control: (3, 28080), perturbed: (3, 28080)\n"
     ]
    }
   ],
   "source": [
    "cell_type = \"dendritic cell, human\"\n",
    "perturbation = \"psoriasis\"\n",
    "control = \"normal\"\n",
    "\n",
    "pdata_pert = pdata[\n",
    "    (pdata.obs[perturbation_col] == perturbation)\n",
    "    & (pdata.obs[cell_type_col] == cell_type)\n",
    "]\n",
    "pdata_control = pdata[\n",
    "    (pdata.obs[perturbation_col] == control)\n",
    "    & (pdata.obs[cell_type_col] == cell_type)\n",
    "]\n",
    "print(f\"control: {pdata_control.shape}, perturbed: {pdata_pert.shape}\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2a84b59d",
   "metadata": {},
   "source": [
    "## 6. The psoriasis signature (differential expression)\n",
    "\n",
    "`pydeseq2` runs PyDESeq2 on the two arms and returns a results table. Genes passing the\n",
    "significance thresholds form the **psoriasis signature** — the set of transcriptional\n",
    "changes TwinCell will try to causally explain.\n",
    "\n",
    "- `log2fc_sig` — minimum absolute log2 fold change.\n",
    "- `mlog10pvalue_sig` — minimum \\(-\\log_{10}(\\text{adjusted } p)\\) (here `1.3` ≈ adjusted *p* < 0.05)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "0383187c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Using None as control genes, passed at DeseqDataSet initialization\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Fitting size factors...\n",
      "... done in 0.01 seconds.\n",
      "\n",
      "Fitting dispersions...\n",
      "... done in 4.70 seconds.\n",
      "\n",
      "Fitting dispersion trend curve...\n",
      "... done in 0.86 seconds.\n",
      "\n",
      "Fitting MAP dispersions...\n",
      "... done in 5.42 seconds.\n",
      "\n",
      "Fitting LFCs...\n",
      "... done in 5.80 seconds.\n",
      "\n",
      "Calculating cook's distance...\n",
      "... done in 0.02 seconds.\n",
      "\n",
      "Replacing 0 outlier genes.\n",
      "\n",
      "Running Wald tests...\n",
      "... done in 2.70 seconds.\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Log2 fold change & Wald test p-value: disease psoriasis vs normal\n",
      "                  baseMean  log2FoldChange     lfcSE      stat    pvalue  \\\n",
      "gene_name                                                                  \n",
      "CDIN1             6.030223        0.632790  0.846685  0.747374  0.454838   \n",
      "ENSG00000259375   0.819097       -0.029555  2.266034 -0.013043  0.989594   \n",
      "RSL1D1           62.537739       -0.479794  0.384382 -1.248223  0.211950   \n",
      "RIF1             24.050466        0.028556  0.534852  0.053390  0.957421   \n",
      "ENSG00000260988   0.000000             NaN       NaN       NaN       NaN   \n",
      "...                    ...             ...       ...       ...       ...   \n",
      "EXTL3             6.867849       -0.351904  0.795013 -0.442639  0.658027   \n",
      "CAV2              2.712048        0.806493  1.306319  0.617378  0.536985   \n",
      "LINC01833         0.000000             NaN       NaN       NaN       NaN   \n",
      "TMEM11-DT         1.209486       -0.886985  1.822794 -0.486607  0.626537   \n",
      "ENSG00000267205   0.147498       -0.972922  4.451244 -0.218573  0.826983   \n",
      "\n",
      "                     padj  \n",
      "gene_name                  \n",
      "CDIN1                 NaN  \n",
      "ENSG00000259375       NaN  \n",
      "RSL1D1           0.744032  \n",
      "RIF1             0.994092  \n",
      "ENSG00000260988       NaN  \n",
      "...                   ...  \n",
      "EXTL3                 NaN  \n",
      "CAV2                  NaN  \n",
      "LINC01833             NaN  \n",
      "TMEM11-DT             NaN  \n",
      "ENSG00000267205       NaN  \n",
      "\n",
      "[28080 rows x 6 columns]\n",
      "131 significant DEGs (psoriasis vs normal)\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAioAAAHHCAYAAACRAnNyAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAA6K9JREFUeJzs3XV4U9cbwPFvkiapKzVKgVLcneHu8kMGjMGAMWPIYIwJU5gxdwEmMMYYGzA22MZwt+EuBYqVQqHulvz+OGtLaFpa2lJ7P8/Th+bem5sToffNOe95j8ZsNpsRQgghhCiBtMXdACGEEEKInEigIoQQQogSSwIVIYQQQpRYEqgIIYQQosSSQEUIIYQQJZYEKkIIIYQosSRQEUIIIUSJJYGKEEIIIUosCVSEEEIIUWJJoCLuiU6dOtGpU6ciOffmzZvRaDRs3ry5SM5/u6pVqzJ27Nh78lil2YULF9BoNCxYsKDIH6s435OxY8dStWrVPB2b39dEo9Ewc+bMu25bUbH2nAvS1qpVq9KvX7+CN0yUSRKolFELFixAo9Fk/tja2lKzZk0mTZrE9evXi7t5opBcvXqVmTNncujQoeJuirhLf//9d4kMRoQoKWyKuwGiaL3++usEBASQlJTE9u3b+frrr/n77785duwY9vb296wda9euLbJzd+jQgcTERAwGQ5E9xq1Onz6NVlsyYvyrV68ya9YsqlatSuPGjYu7ORaqVKlCYmIier2+uJtSYlh7Tf7++2++/PJLq8FKYmIiNjbyZ1qUb/I/oIzr3bs3zZs3B+DRRx/Fw8ODjz76iD/++IMRI0YU+eMnJCRgb29fpEGEVqvF1ta2yM5/O6PReM8eq7gkJSVhMBgKFJBl9OQJSEtLw2QyYTAY8vWayOsnhAz9lDtdunQBIDg4GIBr167x8MMPU6lSJYxGI76+vvzvf//jwoULFvf76quvqFevHkajkYoVKzJx4kSioqIsjunUqRP169dn//79dOjQAXt7e1588cXMfbfmqKSkpPDqq6/SrFkzXFxccHBwoH379mzatClbm5csWUKzZs1wcnLC2dmZBg0a8Omnn2but5ajEhQUxJAhQ/Dx8cHW1pZKlSrxwAMPEB0dnevrk5f7WcuHOHLkCB07dsTOzo5KlSrx5ptvMn/+fDQajcVrmTEWv337dlq2bImtrS3VqlVj4cKFFueLiIhg+vTpNGjQAEdHR5ydnenduzeHDx+2eN4tWrQA4OGHH84c5svIf8gpb+P29yLj9VuyZAkvv/wyfn5+2NvbExMTA8CePXvo1asXLi4u2Nvb07FjR3bs2JHr6wjW8zHGjh2Lo6MjISEhDBw4EEdHRzw9PZk+fTrp6el3PKfZbObNN9+kUqVK2Nvb07lzZ44fP2712KioKKZOnYq/vz9Go5Hq1avz7rvvYjKZsrXxgw8+YN68eQQGBmI0GmnRogV79+7Nds7ff/+d+vXrY2trS/369VmxYkWOz/uDDz7gk08+yTzniRMnsr0mY8eO5csvvwSwGKrNYC3vIyQkhEceeYSKFStiNBoJCAjgySefJCUlJdfXzmQy8emnn9KgQQNsbW3x9PSkV69e7Nu3z+K4RYsW0axZM+zs7HB3d+eBBx7g8uXLuZ67sNzp/8XMmTMtXp8MGUPd1v6vbd68mebNm2NnZ0eDBg0y/0789ttvma9Fs2bNOHjwoMU5jxw5wtixY6lWrRq2trb4+Pgwbtw4wsPDrbbp7NmzjB07FldXV1xcXHj44YdJSEgonBemnJMelXLm3LlzAHh4eAAwZMgQjh8/zuTJk6latSphYWGsW7eOS5cuZSbLzZw5k1mzZtGtWzeefPJJTp8+zddff83evXvZsWOHRTd2eHg4vXv35oEHHmDUqFF4e3tbbUdMTAzffvstI0aM4LHHHiM2NpbvvvuOnj178u+//2YOY6xbt44RI0bQtWtX3n33XQBOnjzJjh07mDJlitVzp6Sk0LNnT5KTk5k8eTI+Pj6EhITw559/EhUVhYuLS6HeLyQkhM6dO6PRaJgxYwYODg58++23Ofa8nD17lvvvv59HHnmEMWPG8P333zN27FiaNWtGvXr1ADh//jy///47Q4cOJSAggOvXrzN37lw6duzIiRMnqFixInXq1OH111/n1Vdf5fHHH6d9+/YAtGnTxurj3skbb7yBwWBg+vTpJCcnYzAY2LhxI71796ZZs2a89tpraLVa5s+fT5cuXdi2bRstW7bM9+Okp6fTs2dPWrVqxQcffMD69ev58MMPCQwM5Mknn8z1vq+++ipvvvkmffr0oU+fPhw4cIAePXpku0gnJCTQsWNHQkJCeOKJJ6hcuTI7d+5kxowZhIaG8sknn1gcv3jxYmJjY3niiSfQaDS89957DB48mPPnz2d+vteuXcuQIUOoW7cus2fPJjw8PDPIt2b+/PkkJSXx+OOPYzQacXd3twiSAJ544gmuXr3KunXr+PHHH+/42l29epWWLVsSFRXF448/Tu3atQkJCWHZsmUkJCTk2nP5yCOPsGDBAnr37s2jjz5KWloa27ZtY/fu3Zm9rm+99RavvPIKw4YN49FHH+XGjRt8/vnndOjQgYMHD+Lq6nrHNt6tvPy/uJtzPvjggzzxxBOMGjWKDz74gP79+zNnzhxefPFFJkyYAMDs2bMZNmyYxbDuunXrOH/+PA8//DA+Pj4cP36cefPmcfz4cXbv3p0tYBo2bBgBAQHMnj2bAwcO8O233+Ll5ZX5d0sUgFmUSfPnzzcD5vXr15tv3Lhhvnz5snnJkiVmDw8Ps52dnfnKlSvmyMhIM2B+//33czxPWFiY2WAwmHv06GFOT0/P3P7FF1+YAfP333+fua1jx45mwDxnzpxs5+nYsaO5Y8eOmbfT0tLMycnJFsdERkaavb29zePGjcvcNmXKFLOzs7M5LS0txzZu2rTJDJg3bdpkNpvN5oMHD5oB89KlS3O8jzV5vV+VKlXMY8aMybw9efJks0ajMR88eDBzW3h4uNnd3d0MmIODgy3uC5i3bt2auS0sLMxsNBrNzzzzTOa2pKQki9fbbDabg4ODzUaj0fz6669nbtu7d68ZMM+fP/+O7cxw+3uR8fpVq1bNnJCQkLndZDKZa9SoYe7Zs6fZZDJlbk9ISDAHBASYu3fvbu3lsWjv7W0bM2aMGbB4Dmaz2dykSRNzs2bNcj1fxmexb9++Fu158cUXzYDFc33jjTfMDg4O5jNnzlic44UXXjDrdDrzpUuXLNro4eFhjoiIyDzujz/+MAPmVatWZW5r3Lix2dfX1xwVFZW5be3atWbAXKVKlWzP29nZ2RwWFnbH12TixInmnP4UA+bXXnst8/bo0aPNWq3WvHfv3mzH3vqa3G7jxo1mwPzUU0/leL8LFy6YdTqd+a233rLYf/ToUbONjY3F9jFjxlg8Z2ttzY+8/r947bXXrL5WGX/vrP1f27lzZ+a2NWvWmAGznZ2d+eLFi5nb586da/E3xGw2W/xfyPDzzz9na2dGm279u2U2m82DBg0ye3h45O0FELmSoZ8yrlu3bnh6euLv788DDzyAo6MjK1aswM/PDzs7OwwGA5s3byYyMtLq/devX09KSgpTp061yFd47LHHcHZ25q+//rI43mg08vDDD9+xXTqdLvPbn8lkIiIigrS0NJo3b86BAwcyj3N1dSU+Pp5169bl+Tln9HysWbMmX12vd3u/f/75h9atW1sks7q7uzNy5Eirx9etWzez9wPA09OTWrVqcf78+cxtRqMx8/VOT08nPDwcR0dHatWqZfH6FKYxY8ZgZ2eXefvQoUMEBQXx4IMPEh4ezs2bN7l58ybx8fF07dqVrVu3ZushyKvx48db3G7fvr3F87cm47M4efJki2+zU6dOzXbs0qVLad++PW5ubpntvnnzJt26dSM9PZ2tW7daHD98+HDc3Nws2gNktik0NJRDhw4xZswYi5617t27U7duXavtHTJkCJ6enrk+p/wwmUz8/vvv9O/fP7MH5FbWhkQyLF++HI1Gw2uvvZbj/X777TdMJhPDhg2zeM18fHyoUaOG1WHZwpSX/xd3c87WrVtn3m7VqhWghsArV66cbfutj3Xr/4WkpCRu3rzJfffdB2D1/6C1z3R4eHjmEKq4ezL0U8Z9+eWX1KxZExsbG7y9valVq1bmBdBoNPLuu+/yzDPP4O3tzX333Ue/fv0YPXo0Pj4+AFy8eBGAWrVqWZzXYDBQrVq1zP0Z/Pz88pw4+8MPP/Dhhx9y6tQpUlNTM7cHBARk/j5hwgR+/fVXevfujZ+fHz169GDYsGH06tUrx/MGBAQwbdo0PvroI3766Sfat2/PgAEDGDVqVI7DNwW538WLFy3+GGaoXr261eNv/QOZwc3NzSJYzMgn+OqrrwgODrbI38gYtitst77uoPJ1QAUwOYmOjra4wOdFRn7ErW5//tZkfNZq1Khhsd3T0zNbG4KCgjhy5EiOgUJYWJjF7dvfk4zzZbQpp8cGcgweb389C+rGjRvExMRQv379fN/33LlzVKxYEXd39xyPCQoKwmw2W32OQJHP3srL/4uCnjPj/7G/v7/V7bc+VkREBLNmzWLJkiXZPi/Wct1y+ww5Ozvf5TMQIIFKmdeyZUur374yTJ06lf79+/P777+zZs0aXnnlFWbPns3GjRtp0qRJvh/v1m8huVm0aBFjx45l4MCBPPvss3h5eaHT6Zg9e3ZmHg2Al5cXhw4dYs2aNaxevZrVq1czf/58Ro8ezQ8//JDj+T/88EPGjh3LH3/8wdq1a3nqqaeYPXs2u3fvzjGnoCD3yw+dTmd1u9lszvz97bff5pVXXmHcuHG88cYbuLu7o9VqmTp1ap57MXL6hp2enm61Dbe/dxmP8/777+c49dnR0TFPbblVTs+/MJlMJrp3785zzz1ndX/NmjXz1KZb35P8yuv/hZLCZDKh0WhYvXq11dfjbt7r/MjLe5DbZzo/58zLYw0bNoydO3fy7LPP0rhxYxwdHTGZTPTq1cvq/8Gi+AwJRQIVQWBgIM888wzPPPMMQUFBNG7cmA8//JBFixZRpUoVQNUOqVatWuZ9UlJSCA4Oplu3bnf1mMuWLaNatWr89ttvFn98rHVNGwwG+vfvT//+/TGZTEyYMIG5c+fyyiuv5NhrAdCgQQMaNGjAyy+/zM6dO2nbti1z5szhzTffzLVt+b1flSpVOHv2bLbt1rbl1bJly+jcuTPfffedxfaoqCgqVKiQeTu37n43N7dsM7NA9Q7c+l7mJDAwEABnZ+e7fp8LU8ZnMSgoyKL9N27cyPatOzAwkLi4uEJr962PfbvTp08X6Ny5vYe38vT0xNnZmWPHjuX7MQIDA1mzZg0RERE59qoEBgZiNpsJCAjIFsiVFBm9FFFRURaJvbf37BZUZGQkGzZsYNasWbz66quZ2629/6LoSY5KOZaQkEBSUpLFtsDAQJycnEhOTgZUjovBYOCzzz6z+Gbw3XffER0dTd++fe/qsTO+fdx6zj179rBr1y6L426fCqjVamnYsCFAZhtvFxMTQ1pamsW2Bg0aoNVqc7xPQe7Xs2dPdu3aZVEdNiIigp9++inH+9yJTqfL9k1s6dKlhISEWGxzcHAAsBqQBAYGsnv3bosZMX/++Weep5o2a9aMwMBAPvjgA+Li4rLtv3HjRp7OU1i6deuGXq/n888/t3htbp/BA+rb8K5du1izZk22fVFRUdne5zvx9fWlcePG/PDDDxbd/uvWrePEiRP5OtftcnsPb6XVahk4cCCrVq3KNqUYcv/mPmTIEMxmM7NmzcrxfoMHD0an0zFr1qxs5zKbzdn+LxaHjOD51hyj+Pj4XHtX74a1v09g/bMmip70qJRjZ86coWvXrgwbNoy6detiY2PDihUruH79Og888ACgvsXNmDGDWbNm0atXLwYMGMDp06f56quvaNGiBaNGjbqrx+7Xrx+//fYbgwYNom/fvgQHBzNnzhzq1q1rcVF89NFHiYiIoEuXLlSqVImLFy/y+eef07hxY+rUqWP13Bs3bmTSpEkMHTqUmjVrkpaWxo8//ohOp2PIkCE5tulu7/fcc8+xaNEiunfvzuTJkzOnJ1euXJmIiIg8f2O+/fV5/fXXefjhh2nTpg1Hjx7lp59+ytYTEhgYiKurK3PmzMHJyQkHBwdatWpFQEAAjz76KMuWLaNXr14MGzaMc+fOsWjRosw/9nei1Wr59ttv6d27N/Xq1ePhhx/Gz8+PkJAQNm3ahLOzM6tWrcr3c7tbGfVWZs+eTb9+/ejTpw8HDx5k9erVFr1MAM8++ywrV66kX79+mVNc4+PjOXr0KMuWLePChQvZ7nMns2fPpm/fvrRr145x48YRERHB559/Tr169awGcnnVrFkzAJ566il69uyJTqfL/P93u7fffpu1a9fSsWNHHn/8cerUqUNoaChLly5l+/btOU4f7ty5Mw899BCfffYZQUFBmcMX27Zto3PnzkyaNInAwEDefPNNZsyYwYULFxg4cCBOTk4EBwezYsUKHn/8caZPn56v56bRaOjYsWOhrcPVo0cPKleuzCOPPMKzzz6LTqfj+++/x9PTk0uXLhXKY4DqRezQoQPvvfceqamp+Pn5sXbt2sz6U+LekkClHPP392fEiBFs2LCBH3/8ERsbG2rXrs2vv/5qcWGeOXMmnp6efPHFFzz99NO4u7vz+OOP8/bbb991gt3YsWO5du0ac+fOZc2aNdStW5dFixaxdOlSiz9qo0aNYt68eXz11VdERUXh4+PD8OHDmTlzZo5VUxs1akTPnj1ZtWoVISEh2Nvb06hRI1avXp2ZtV+Y9/P392fTpk089dRTvP3223h6ejJx4kQcHBx46qmn7qq66Isvvkh8fDyLFy/ml19+oWnTpvz111+88MILFsfp9Xp++OEHZsyYwfjx40lLS2P+/PkEBATQs2dPPvzwQz766COmTp1K8+bN+fPPP3nmmWfy3I5OnTqxa9cu3njjDb744gvi4uLw8fGhVatWPPHEE/l+XgX15ptvYmtry5w5c9i0aROtWrVi7dq12Xr27O3t2bJlC2+//TZLly5l4cKFODs7U7NmTWbNmpVrcnROevXqxdKlS3n55ZeZMWMGgYGBzJ8/nz/++KNAF+LBgwczefJklixZwqJFizCbzTkGKn5+fuzZs4dXXnmFn376iZiYGPz8/Ojdu/cdl8SYP38+DRs25LvvvuPZZ5/FxcWF5s2bW9TdeeGFF6hZsyYff/xxZu+Lv78/PXr0YMCAAfl6XhnBm6+vb77ulxu9Xs+KFSuYMGECr7zyCj4+PkydOhU3N7c8zTbMj8WLFzN58mS+/PJLzGYzPXr0YPXq1VSsWLFQH0fcmcYsmT5CFImpU6cyd+5c4uLi7kkCqRAlyd9//02/fv04fPgwDRo0KO7miFJMclSEKASJiYkWt8PDw/nxxx9p166dBCmiXNq0aRMPPPCABCmiwKRHRYhC0LhxYzp16kSdOnW4fv063333HVevXmXDhg106NChuJsnhBClluSoCFEI+vTpw7Jly5g3bx4ajYamTZvy3XffSZAihBAFJD0qQgghhCixJEdFCCGEECWWBCpCCCGEKLFKdY6KyWTi6tWrODk53VVRLSGEEELce2azmdjYWCpWrJhjTawMpTpQuXr1arZVMIUQQghROly+fPmOC76W6kDFyckJUE9UltEWQgghSoeYmBj8/f0zr+O5KdWBSsZwj7OzswQqQgghRCmTl7QNSaYVQgghRIklgYoQQgghSiwJVIQQQghRYpXqHBUhhBCisKWnp5OamlrczSjV9Hp9oS3IKoGKEEIIgartce3aNaKiooq7KWWCq6srPj4+Ba5zJoGKEEIIAZlBipeXF/b29lJI9C6ZzWYSEhIICwsDwNfXt0Dnk0BFCCFEuZeenp4ZpHh4eBR3c0o9Ozs7AMLCwvDy8irQMJAk0wohhCj3MnJS7O3ti7klZUfGa1nQfB8JVIQQQoj/yHBP4Sms11KGfoQoiMRISEsGgwMY71wKWgghRP5Ij4oQdyMhAs5ugMXD4ZvOsPwRuHoQUuKLu2VCiGIwduxYBg4cWKjnvHDhAhqNhkOHDmVu27FjBw0aNECv1zNw4EA2b96MRqMp0zOVijVQqVq1KhqNJtvPxIkTi7NZQuQuJR72L4BFg+HyHoi5CmfWqIDlwnYwm4u7hUKIe+zTTz9lwYIFhXpOf39/QkNDqV+/fua2adOm0bhxY4KDg1mwYAFt2rQhNDQUFxeXQn3s3CxYsABXV9d79njFGqjs3buX0NDQzJ9169YBMHTo0OJslhC5iwuDTW9m3242w6opEBt679skhChWLi4uhX7x1ul0+Pj4YGOTlaVx7tw5unTpQqVKlXB1dcVgMBRKrZKSrFgDFU9PT3x8fDJ//vzzTwIDA+nYsWNxNkuI3EWcA1O69X2xoWpYSAhRJi1btowGDRpgZ2eHh4cH3bp1Iz4+PtvQT2xsLCNHjsTBwQFfX18+/vhjOnXqxNSpUzOPqVq1Km+//Tbjxo3DycmJypUrM2/evMz9tw79ZPweHh7OuHHj0Gg0LFiwwOrQz44dO+jUqRP29va4ubnRs2dPIiMjAfjnn39o164drq6ueHh40K9fP86dO5ftMX/77Tc6d+6Mvb09jRo1YteuXQBs3ryZhx9+mOjo6MxRkJkzZxbJa52hxOSopKSksGjRosw3wJrk5GRiYmIsfoS453SG3PdrC6dstBCiZAkNDWXEiBGMGzeOkydPsnnzZgYPHozZynDvtGnT2LFjBytXrmTdunVs27aNAwcOZDvuww8/pHnz5hw8eJAJEybw5JNPcvr06WzHZQwDOTs788knnxAaGsrw4cOzHXfo0CG6du1K3bp12bVrF9u3b6d///6kp6svV/Hx8UybNo19+/axYcMGtFotgwYNwmQyWZznpZdeYvr06Rw6dIiaNWsyYsQI0tLSaNOmDZ988gnOzs6ZoyHTp0+/25c0T0rMrJ/ff/+dqKgoxo4dm+Mxs2fPZtasWfeuUUJY41YV9PaQmpB9X4WaYCfFooQoi0JDQ0lLS2Pw4MFUqVIFgAYNGmQ7LjY2lh9++IHFixfTtWtXAObPn0/FihWzHdunTx8mTJgAwPPPP8/HH3/Mpk2bqFWrlsVxGcNAGo0GFxcXfHx8rLbxvffeo3nz5nz11VeZ2+rVq5f5+5AhQyyO//777/H09OTEiRMWuTDTp0+nb9++AMyaNYt69epx9uxZateujYuLCxqNJsc2FLYS06Py3Xff0bt3b6tvZIYZM2YQHR2d+XP58uV72EIh/uPoDQO/htt7/vT2MGguOHkVT7uEEEWqUaNGdO3alQYNGjB06FC++eabzCGVW50/f57U1FRatmyZuc3FxSVb8AHQsGHDzN8zLv4ZpefvRkaPSk6CgoIYMWIE1apVw9nZmapVqwJw6dKlHNuVUQK/IO0qiBLRo3Lx4kXWr1/Pb7/9lutxRqMRo9F4j1olRA5sjFCjOzy5C/Z+B+FB4H8fNBoOLpWLu3VCiCKi0+lYt24dO3fuZO3atXz++ee89NJL7Nmz567PqdfrLW5rNJpswzD5kVG6Pif9+/enSpUqfPPNN1SsWBGTyUT9+vVJSUnJsV0Z6RgFaVdBlIgelfnz5+Pl5ZXZzSREiWdwAK860OsdeGAxdHwe3KuBrkTE/kKIIqLRaGjbti2zZs3i4MGDGAwGVqxYYXFMtWrV0Ov17N27N3NbdHQ0Z86cKfL2NWzYkA0bNljdFx4ezunTp3n55Zfp2rUrderUsdojdCcGgyEz5+VeKPa/qiaTifnz5zNmzBiLKVhClAo6GwlOhCgn9uzZw4YNG+jRowdeXl7s2bOHGzduUKdOHY4cOZJ5nJOTE2PGjOHZZ5/F3d0dLy8vXnvtNbRabZFPI54xYwYNGjRgwoQJjB8/HoPBwKZNmxg6dCju7u54eHgwb948fH19uXTpEi+88EK+H6Nq1arExcWxYcMGGjVqhL29fZGukVTsPSrr16/n0qVLjBs3rribIoQQQuTI2dmZrVu30qdPH2rWrMnLL7/Mhx9+SO/evbMd+9FHH9G6dWv69etHt27daNu2LXXq1MHW1rZI21izZk3Wrl3L4cOHadmyJa1bt+aPP/7AxsYGrVbLkiVL2L9/P/Xr1+fpp5/m/fffz/djtGnThvHjxzN8+HA8PT157733iuCZZNGYrc2rKiViYmJwcXEhOjoaZ2fn4m6OEEKIUiopKYng4GACAgKKJJiIj4/Hz8+PDz/8kEceeaTQz18S5faa5uf6LX3WQgghRCE7ePAgp06domXLlkRHR/P6668D8L///a+YW1b6SKAihBBCFIEPPviA06dPYzAYaNasGdu2baNChQrF3axSRwIVIYQQopA1adKE/fv3F3czyoRiT6YVQgghhMiJBCpCCCGEKLEkUBFCCCFEiSWBihBCCCFKLAlUhBBCCFFiSaAihBBCiBJLAhUhhBCiHFqwYAGurq7F3Yw7kkBFCCGEKMXGjh2LRqPJ9nP27NniblqhkIJvQgghRCGKTkjhZlwKMUmpONvpqeBgwMXeUKSP2atXL+bPn2+xzdPTs0gf816RHhUhhBCikFyNSmTSzwfp+tEWBn21k64fbmHyzwe5GpVYpI9rNBrx8fGx+Pn0009p0KABDg4O+Pv7M2HCBOLi4nI8x+HDh+ncuTNOTk44OzvTrFkz9u3bl7l/+/bttG/fHjs7O/z9/XnqqaeIj48v0ucFEqgIIYQQhSI6IYXnlx9hW9BNi+1bg27ywvIjRCek3NP2aLVaPvvsM44fP84PP/zAxo0bee6553I8fuTIkVSqVIm9e/eyf/9+XnjhBfR6PQDnzp2jV69eDBkyhCNHjvDLL7+wfft2Jk2aVOTPQ4Z+hBBCiEJwMy4lW5CSYWvQTW7GpRTZENCff/6Jo6Nj5u3evXuzdOnSzNtVq1blzTffZPz48Xz11VdWz3Hp0iWeffZZateuDUCNGjUy982ePZuRI0cyderUzH2fffYZHTt25Ouvv8bW1rYInpUigYoQQghRCGKSUnPdH3uH/QXRuXNnvv7668zbDg4OrF+/ntmzZ3Pq1CliYmJIS0sjKSmJhIQE7O3ts51j2rRpPProo/z4449069aNoUOHEhgYCKhhoSNHjvDTTz9lHm82mzGZTAQHB1OnTp0ie24y9COEEEIUAmdbfa77ne6wvyAcHByoXr165k9ycjL9+vWjYcOGLF++nP379/Pll18CkJJifQhq5syZHD9+nL59+7Jx40bq1q3LihUrAIiLi+OJJ57g0KFDmT+HDx8mKCgoM5gpKtKjIoQQQhSCCo4GOtSowFYrwz8dalSggmPRzvy51f79+zGZTHz44YdotapP4tdff73j/WrWrEnNmjV5+umnGTFiBPPnz2fQoEE0bdqUEydOUL169aJuejbSoyKEEEIUAhd7A+8MaUiHGhUstneoUYF3hzQs8inKt6pevTqpqal8/vnnnD9/nh9//JE5c+bkeHxiYiKTJk1i8+bNXLx4kR07drB3797MIZ3nn3+enTt3MmnSJA4dOkRQUBB//PGHJNMKIYQQpUlFVzs+H9GEm3EpxCal4mSrp4Jj0ddRuV2jRo346KOPePfdd5kxYwYdOnRg9uzZjB492urxOp2O8PBwRo8ezfXr16lQoQKDBw9m1qxZADRs2JAtW7bw0ksv0b59e8xmM4GBgQwfPrzIn4vGbDabi/xRikhMTAwuLi5ER0fj7Oxc3M0RQghRSiUlJREcHExAQECRzmApT3J7TfNz/ZahHyGEEEKUWBKoCCGEEKLEkkBFCCGEECWWBCpCCCGEKLEkUBFCCCFEiSWBihBCCCFKLAlUhBBCCFFiSaAihBBCiBJLAhUhhBBClFgSqAghhBCixJJARQghhCilNBpNrj8zZ84s7iYWmCxKKIQQQhSmxEiIvwFJMWDrAg4VwM6tSB4qNDQ08/dffvmFV199ldOnT2duc3R0zPzdbDaTnp6OjU3puvRLj4oQQghRWKJDYOk4+KIFfNsVvmgOyx5R24uAj49P5o+LiwsajSbz9qlTp3BycmL16tU0a9YMo9HI9u3bGTt2LAMHDrQ4z9SpU+nUqVPmbZPJxOzZswkICMDOzo5GjRqxbNmyInkOd1K6wiohhBCipEqMhD8mwfmNltvPbYCVk+H+74qsZyU3L7zwAh988AHVqlXDzS1vjz979mwWLVrEnDlzqFGjBlu3bmXUqFF4enrSsWPHIm6xJQlUhBBCiMIQfyN7kJLh3Aa1vxgClddff53u3bvn+fjk5GTefvtt1q9fT+vWrQGoVq0a27dvZ+7cuRKoCCGEEKVSUkzB9heR5s2b5+v4s2fPkpCQkC24SUlJoUmTJoXZtDwp9kAlJCSE559/ntWrV5OQkED16tWZP39+vl9YIYQQoljZOhdsfxFxcHCwuK3VajGbzRbbUlNTM3+Pi4sD4K+//sLPz8/iOKPRWEStzFmxBiqRkZG0bduWzp07s3r1ajw9PQkKCsrzGJoQQghRYjh4QmBXNcxzu8Cuan8J4OnpybFjxyy2HTp0CL1eD0DdunUxGo1cunTpng/zWFOsgcq7776Lv78/8+fPz9wWEBBQjC0SQggh7pKdGwz4XCXO3hqsBHZV24shP8WaLl268P7777Nw4UJat27NokWLOHbsWOawjpOTE9OnT+fpp5/GZDLRrl07oqOj2bFjB87OzowZM+aetrdYA5WVK1fSs2dPhg4dypYtW/Dz82PChAk89thjVo9PTk4mOTk583ZMTPGM9wkhhBBWufip2T2ZdVScVU9KCQlSAHr27Mkrr7zCc889R1JSEuPGjWP06NEcPXo085g33ngDT09PZs+ezfnz53F1daVp06a8+OKL97y9GvPtA1X3kK2tLQDTpk1j6NCh7N27lylTpjBnzhyrEdvMmTOZNWtWtu3R0dE4OxfP2J8QQojSLykpieDgYAICAjKvTaJgcntNY2JicHFxydP1u1gDFYPBQPPmzdm5c2fmtqeeeoq9e/eya9eubMdb61Hx9/eXQEUIIUSBSKBS+AorUCnWyrS+vr7UrVvXYludOnW4dOmS1eONRiPOzs4WP0IIIYQou4o1UGnbtq3FmgQAZ86coUqVKsXUIiGEEEKUJMUaqDz99NPs3r2bt99+m7Nnz7J48WLmzZvHxIkTi7NZQgghhCghijVQadGiBStWrODnn3+mfv36vPHGG3zyySeMHDmyOJslhBCinCrGtM0yp7Bey2KvTNuvXz/69etX3M0QQghRjmUUO0tISMDOzq6YW1M2JCQkAFmv7d0q9kBFCCGEKG46nQ5XV1fCwsIAsLe3R6PRFHOrSiez2UxCQgJhYWG4urqi0+kKdD4JVIQQQgjAx8cHIDNYEQXj6uqa+ZoWhAQqQgghBKDRaPD19cXLy8tikT6Rf3q9vsA9KRkkUBFCCCFuodPpCu0iKwquWGf9CCGEEELkRgIVIYQQQpRYEqgIIYQQosSSQEUIIYQQJZYEKkLklVSsFEKIe05m/QiRm8QoiL4CBxdB3DWoOwgqNQcXv+JumRBClAsSqAiRk6QYOLAQ1r2Ste34CnCvBqNXgqt/8bVNCCHKCRn6ESInsaGWQUqGiPOw/SNIS7rzOcxmiAuD2Gt5O14IIYQFCVSEyMnJP3Ped2gxxN/M/f6x12Df97CgD3zTGf55SQU5JlPhtlMIIcowGfoRIidJ0TnvS0vKPbk29josfxQubMvatu9bOLYUHtsIHtULr51CCFGGSY+KEDmp1TvnfVXbg9Ep5/03TlkGKRmSomHze5CSUPD2CSFEOSCBihA58QhUAcntdAbo+TbYueZ83yO/5Lzv1EpIjCxw84QQojyQQEWInDh6wZBvofsb4FwR9PZQqy88vgU8a+d+X719zvt0RtBoCretQghRRkmOihC5cfKB1pOg4TAwpYOtc+5DPhkaPwh7v7G+r8kosK9QuO0UQogySnpUhLgTrVYFLC5+eQtSANyqQPNHsm93rwatxoONoXDbKIQQZZT0qAhRFOw9oPOL0OB+2DMPkmNUr0zV9lLVVggh8kECFSGKikMF9ePXHMzpoLcr7hYJIUSpI4GKEEVNhnmEEOKuSY6KEEIIIUosCVSEEEIIUWLJ0I8QBZWWCrFX4fIeiLoM/i2hQnVw8i3ulonyJPoKXDsK14+DV13waQiulYq7VUIUmAQqQhREehpc2QOLhliujlyhJoxaDq6Vi69tovy4cRoW9IX4G1nb7D1g7J8qaBGiFJOhHyEKIvYqLB5mGaQA3DwDa1+F5LjiaZcoP+LC4JdRlkEKQEI4LBmpVvEWohSTQEWIgrh+HFLire87tRISbt7b9ojyJ/6GCoytiTifPYARopSRQEWIgojL5SJgSoe05HvXFlE+pSYVbL8QJZwEKkIURMVGOe9z8s17yX0h7pa9B+j01vdpdarooBClmAQqQhSEsx8EdLK+r8ebMvNHFD1HL7hvovV9LR4HB6972x4hCtldBSppaWmsX7+euXPnEhsbC8DVq1eJi5PEQVHOOFSAQXPUhcLgoLa5VYVhP0L1bqDRFGvzRDlgsFcrfPd6J6v3xN4DerwF7Z8Bo0Pxtk+IAtKYzWZzfu5w8eJFevXqxaVLl0hOTubMmTNUq1aNKVOmkJyczJw5c4qqrdnExMTg4uJCdHQ0zs7O9+xxhcgmLVnNvjClgt5erbYsxL1kMkFcqPos6ozqM6jVFXerhLAqP9fvfPeoTJkyhebNmxMZGYmdXdYia4MGDWLDhg35b60QZYGNEVz9wb2aBCmieGi1aijSvZpaoVuCFFFG5Lvg27Zt29i5cycGg+VCa1WrViUkJKTQGiaEEEIIke8eFZPJRHp6erbtV65cwclJZjgIIYQQovDkO1Dp0aMHn3zySeZtjUZDXFwcr732Gn369MnXuWbOnIlGo7H4qV27dn6bJIQQQogyKt9DPx9++CE9e/akbt26JCUl8eCDDxIUFESFChX4+eef892AevXqsX79+qwG2cjyQ0IIIYRQ8h0VVKpUicOHD7NkyRKOHDlCXFwcjzzyCCNHjrRIrs1zA2xs8PGR5EMhhBBCZHdX3Rc2NjaMGjWqUBoQFBRExYoVsbW1pXXr1syePZvKlWXFWSGEEELcRaCycOHCXPePHj06z+dq1aoVCxYsoFatWoSGhjJr1izat2/PsWPHrCbmJicnk5yctXZKTExM3hsuhBBCiFIn3wXf3NzcLG6npqaSkJCAwWDA3t6eiIiIu25MVFQUVapU4aOPPuKRRx7Jtn/mzJnMmjUr23Yp+CaEEEKUHkVa8C0yMtLiJy4ujtOnT9OuXbu7Sqa9laurKzVr1uTs2bNW98+YMYPo6OjMn8uXLxfo8YQQQghRshXKooQ1atTgnXfeYcqUKQU6T1xcHOfOncPX1/pCbkajEWdnZ4sfIYQQQpRdhbZ6so2NDVevXs3XfaZPn86WLVu4cOECO3fuZNCgQeh0OkaMGFFYzRJCCCFEKZbvZNqVK1da3DabzYSGhvLFF1/Qtm3bfJ3rypUrjBgxgvDwcDw9PWnXrh27d+/G09Mzv80SQgghRBmU72RardayE0aj0eDp6UmXLl348MMPcxy2KQqyerIotUwmMKWBjeHOxwohRBmTn+t3vntUTCbTXTdMiHIvIQIizsO+7yAxEuoPgcpt1Gq3QgghspF69ULcKwmRsP1j2PlZ1rbTq8G9GoxeCa7+xdc2IYQoofIUqEybNi3PJ/zoo4/uujFClGnRlyyDlAwR52H3l9BtFtgY7327hBCiBMtToHLw4ME8nUyj0RSoMUKUaUeW5rzvwI/Q5ilwrnjv2iOEEKVAngKVTZs2FXU7hCj7UuNz3peWBPnLaxdCiHKh0OqoCCHuoN7gnPfV6gO2LveuLUIIUUrcVTLtvn37+PXXX7l06RIpKSkW+3777bdCaZgQZY5nTajSDi5ut9xucIAuL4PRsXjaJYQQJVi+e1SWLFlCmzZtOHnyJCtWrCA1NZXjx4+zceNGXFzkG6EoY1Li1Wyd9LSCn8vRG+7/Dnq9A24BYO8BjR6Ex7eCR/WCn18IIcqgfBd8a9iwIU888QQTJ07EycmJw4cPExAQwBNPPIGvr6/V1Y2LihR8E0UmIQLCTqpZOvFhUK0rNBkJrlVAW8ARU7NZndNkAjsX0NsXTpuFEKKUyM/1O9+BioODA8ePH6dq1ap4eHiwefNmGjRowMmTJ+nSpQuhoaEFanx+SKAiikRiNOz6HLa+b7nd6AyPrAWvOsXTLiGEuFfS0yEuVPUq29iCoxfo7Qrt9Pm5fuf7q6GbmxuxsbEA+Pn5cezYMQCioqJISEi4i+YKUcLEX88epAAkx8Dq5yAx6p43SQgh7pn4m/DvXJjTDr5sCV80h39ehJh71xFxq3wHKh06dGDdunUADB06lClTpvDYY48xYsQIunbtWugNFOKeO78l533BW1XpeyGEKIvSU1VdpzUzsv7WpafA/u/hj4kQH37Pm5TvWT9ffPEFSUlJALz00kvo9Xp27tzJkCFDePnllwu9gULcc2ZZz0oIUU7FXoNtH1jfd24DxF0HB4972qR8Byru7u6Zv2u1Wl544YVCbZAQxS6gY877qrQFW9d71hQhhLinkqIhJS7n/RHnwbvuvWsPdzH0061bNxYsWEBMTExRtEeI4ufkA62ezL5dbw+93wN7t3vfJiGEuBf0dpDbcjgOFe5dW/6T70ClXr16zJgxAx8fH4YOHcoff/xBampqUbRNiOJh5wodpsPI5VC1A3jWhpbjYfx29bsQQpRVDhWgRg/r+xy9weXer/Ke7+nJACaTifXr17N48WJWrFiBTqfj/vvvZ+TIkXTsmEu3eSGT6cmiyCXFqEQyo5OsbCyEKB+iLsHiByDseNY2ew8Y/Qd418+9xyWPirSOyu2SkpJYtWoVb731FkePHiU9Pb0gp8sXCVSEEEKIIhB7XQUsYSfA1R8q1ARnv0IJUiB/1++7Wusnw7Vr11iyZAmLFi3iyJEjtGzZsiCnE0IIIURJ4OStfvxbFHdL8p+jEhMTw/z58+nevTv+/v58/fXXDBgwgKCgIHbv3l0UbRRCCCFEOZXvHhVvb2/c3NwYPnw4s2fPpnnz5kXRLiGEEEKI/AcqK1eupGvXrmgLujCbEKVJ/E1IjABTuqqj4uxb3C0SQohyId/RRvfu3TODlAYNGnD58uVCb5QQJYbJBNeOwY+D4IsW8NV98F03OLNWLdYlhBCiSBWoW+TChQtSQ0WUbdGXYH5vuHbklm1X4OdhcON08bVLCCHKCRm/ESI3J1aqVZNvZzbDhjdUnRUhhBBFpkCBSvv27bGzsyustghRsqQlw4VtOe+/dij3NTGEEEIUWIEClb///htfX0kqFGWUVg8eNXLe71wJdFKtVgghitJdBSqnT59m0qRJdO3ala5duzJp0iROn5bxelHGaLXQdHTOlRg7PnfPlzsXQojyJt+ByvLly6lfvz779++nUaNGNGrUiAMHDlC/fn2WL19eFG0Uovi4+sP9C8DGNmubRgPtnobKbYqtWUIIUV7ke62fwMBARo4cyeuvv26x/bXXXmPRokWcO3euUBuYG1nrR9wTqUkQdx3Cg9TvXnXAwRNs5TMnhBB3o0gXJbS3t+fIkSNUr17dYntQUBCNGjUiISEh/y2+SxKoCCGEEKVPfq7f+R766dSpE9u2ZZ8JsX37dtq3b5/f0wkhhBBC5CjfJfQHDBjA888/z/79+7nvvvsA2L17N0uXLmXWrFmsXLnS4lghhBBCiLuV76GfvK7xo9FoSE9Pv6tG5ZUM/QghhBClT36u3/nuUTGZTHfdMCGEEEKI/JAS+kIIIYQosSRQEUIIIUSJVWIClXfeeQeNRsPUqVOLuylCCCGEKCFKRKCyd+9e5s6dS8OGDYu7KUIIIYQoQYo9UImLi2PkyJF88803uLm5FXdzhBBCCFGC5GnWT0xMTJ5PmN9pwhMnTqRv375069aNN998M1/3FUIIIUTZlqdAxdXVFU1OK8jeJj+1U5YsWcKBAwfYu3dvno5PTk4mOTk583Z+AighhBBClD55ClQ2bdqU+fuFCxd44YUXGDt2LK1btwZg165d/PDDD8yePTvPD3z58mWmTJnCunXrsLW1vfMdgNmzZzNr1qw8P4YQQgghSrd8V6bt2rUrjz76KCNGjLDYvnjxYubNm8fmzZvzdJ7ff/+dQYMGodPpMrelp6ej0WjQarUkJydb7APrPSr+/v5SmVYIIYQoRYp89eTDhw9To0YNi+1nzpyhcePGeV49OTY2losXL1pse/jhh6lduzbPP/889evXv+M5pIS+EEIIUfoUaQl9f39/vvnmG9577z2L7d9++y3+/v55Po+Tk1O2YMTBwQEPD488BSlCCCGEKPvyHah8/PHHDBkyhNWrV9OqVSsA/v33X4KCgli+fHmhN1CIUi/+JkRdgqC1oLeDGj3ByRfsXIq7ZUIIUeLle+gHVCLs119/zalTpwCoU6cO48ePz1ePSmGQoR9R6FISICkatDpw9Mr5uNRESIxSxzl4Qk6z4mKvw1/PwKlVlts7vwwtHwU7qR0khCh/ijRHpSSRQEUUmvQ0iDgP2z6A85tUAHHfJKjZE5y8s44zpUNkMGz/FILWgNERWj0JdfqDk0/28x5cBH9MtP6Yj20GvyZF8nSEEKIky8/1+64q027bto1Ro0bRpk0bQkJCAPjxxx/Zvn373ZxOiOJ38zTMbQ9HfoG4MLhxGlZNhlVTIP5G1nER52BeJzi4EOKuQ/g5+Hs6LH9U3b5V3A3Y+VnOj7n3GxX4CCGEyFG+A5Xly5fTs2dP7OzsOHDgQOZ04ejoaN5+++1Cb6AQRS4xCv55EdKSsu87sxqiLqvfk+Ng41uQHJv9uAvb4GaQ5TZTGiRG5vy4cdchPfWumy2EEOVBvgOVN998kzlz5vDNN9+g1+szt7dt25YDBw4UauOEuCeSYyB4c877T/+t/k2KhtN/5Xzc0WWWt21dIKBTzsfXGQD6vBU7FEKI8irfgcrp06fp0KFDtu0uLi5ERUUVRpuEuMc0oNPnvFtv/99hGtAZcz7OYJ/9dofpYGMlGHGuCIFd8t9UIYQoZ/IdqPj4+HD27Nls27dv3061atUKpVFC3FP2HlBvcM77a/XJOq7xyJyPazgs+za3avDoBqjaXt3W2kD9oTD2b3C9t7PkhBCiNMp3HZXHHnuMKVOm8P3336PRaLh69Sq7du1i+vTpvPLKK0XRRiGKlsEeOr8IF7ZDTIjlvk4vqponADZGaDNZ1UOJDLY8rtWT4FI5+7lt9OBTH4b/CEkxoNGCnTsYHYrmuQghRBmT7+nJZrOZt99+m9mzZ2eWyzcajUyfPp033nijSBqZE5meLApV9GU4uwlOrQR7T1XnxK0a2N9W6yT6ClzYAceWga2rOs6jBti7F0uzhRCitLkndVRSUlI4e/YscXFx1K1bF0dHx7tqbEFIoCKKRGoS6GzUME1u0pJBo1PHCiGEyLMiraMybtw4YmNjMRgM1K1bl5YtW+Lo6Eh8fDzjxo2760YLUWLobe8cpIAaCpIgRQghilS+A5UffviBxMTEbNsTExNZuHBhoTRKCCGEEALykUwbExOD2WzGbDYTGxuLrW3WlMv09HT+/vtvvLxyWRtFCCGEECKf8hyouLq6otFo0Gg01KxZM9t+jUbDrFmzCrVxQgghhCjf8hyobNq0CbPZTJcuXVi+fDnu7lkzHAwGA1WqVKFixYpF0kghhBBClE95DlQ6duwIQHBwMJUrV0aT07L2QgghhBCFJN/JtCdPnmTHjh2Zt7/88ksaN27Mgw8+SGRkLguwCSGEEELkU74DlWeffZaYmBgAjh49yrRp0+jTpw/BwcFMmzat0BsohBBCiPIr30UggoODqVu3LgDLly+nf//+vP322xw4cIA+ffoUegOFsGBKh7gwMKeD3k6tvyOEEKLMynegYjAYMkvnr1+/ntGjRwPg7u6e2dMiRJGIvQ6HFsOuzyEhHCo2hZ5vgU9DMN77yshCCCGKXr4DlXbt2jFt2jTatm3Lv//+yy+//ALAmTNnqFSpUqE3UAgA4m/CqslwZk3WtqsHYH5vGPUbVO9afG0TQghRZPKdo/LFF19gY2PDsmXL+Prrr/Hz8wNg9erV9OrVq9AbKAQAMVctg5RbrX5W9baUFlGX4civsOpp2DMXIoIhPaW4WyWEECXSXS9KWBLIooTlyL/fwN/Tc94/eT94VL937blbN87Agt6qhyiDzqB6hSq3lrWDhBDlQn6u3/n+q3jp0qVc91euXDm/pxTizuxcc96n0eZtEcHiFh8OK56wDFJA9ab8MhLG7wBX/+JpmxBClFD5/utetWrVXIu9paenF6hBQlhVqYUKRkxp2ffV7gf2Fe59m/IrIVzl1ViTFA1RlyRQEUKI2+Q7UDl48KDF7dTUVA4ePMhHH33EW2+9VWgNE8KCow/cPx+WjgGzKWu7axXo8UbpmPWTnpz7/uTYe9MOIYQoRfIdqDRq1CjbtubNm1OxYkXef/99Bg8eXCgNE8KC3hZqdIdJe+HkXxB9CQK7gG9jcPEr7tbljZ072LtDQkT2fRoNVKhx79skhBAlXKEN7NeqVYu9e/cW1umEyE5vpxJm200p7pbcHScf6PE2/D4++77m48ChFAxfCSHEPZbvQOX2om5ms5nQ0FBmzpxJjRryjVCIHGl1UKs3jFwG616FsBPg7AcdpkPt/mDrUtwtFEKIEiffgYqrq2u2ZFqz2Yy/vz9LliwptIYJUSZEX4WYEEiMALeq4OCphrB8G6ucFa0NOHqroR8hhBDZ5DtQ2bRpk8VtrVaLp6cn1atXx8amFEwRFeJeMJvh+nH46X6IDc3aXqsv9PtIDQMJIYS4o3xHFh07diyKdghR8qUl/1cDxQxGZ7DNpUhRzBVY2D974uzpv8C1MnSfBTbGIm2uEEKUBXkKVFauXEnv3r3R6/WsXLky12MdHR2pXbs2FStWLJQGClEiRF2GHZ/CoUUqYKneDbq/Dh41rFeTDTttfXYPwIEF0HqCCliEEELkKk+BysCBA7l27RpeXl4MHDjwjsfrdDree+89nn766YK2T4jiFx0CCwdAxPmsbUFr4cI2eHwreNbMfp+oCzmfLzVRBTtCCCHuKE+LEppMJry8vDJ/z+0nKSmJb775hvfee69IGy7EPXNpl2WQkiE1Eba+Dynx2fd51cv5fHZuaqq1EEKIOyr07FeDwcCQIUM4cuRIYZ9aiHsvPQ2O/5bz/rPrVPl7g4PldvcAVcDtZlD2+3R4Dpx8C7edQghRRuU5RyWvBgwYgJOTEx999NFdN0qIPElJUGXn9bZFV4NEowV7j5z327qARpd9u5MPjFwOKydD8Ba1zeAA7aZBw2GqpooQQog7ynOOyq00Gg1ms9nidgZZlFAUudRENRSz7UMIOQAulVTRNJ9GYO9WuI+l1UKzh+HAQuv7Wz4Bjl7W97lVgWEL1UyhtEQV1Dj6gI2hcNsohBBlWJ5zVDJ+1q5dS+PGjVm9ejVRUVFERUXx999/07RpU/755598PfjXX39Nw4YNcXZ2xtnZmdatW7N69eq7eiKiHLmyD+a2h2PLITJYJbUu/B/snw/JcYX/eG4B0OHZ7Nurtof6g3Iv1mbnChWqg08DNctHghQhhMgXjfnWrpE8qF+/PnPmzKFdu3YW27dt28bjjz/OyZMn83yuVatWodPpqFGjBmazmR9++IH333+fgwcPUq9eLsmI/4mJicHFxYXo6GicnXOpaSHKjthr8H1PiLyQfZ9WB5P2q/yQwpYYpSrMHvtNDTfVGwjugeDkXfiPJYQQZVx+rt/5TqY9d+4crq6u2ba7uLhw4cKFfJ2rf//+Frffeustvv76a3bv3p2nQEWUQ4mR1oMUAFM6hJ0smkDFzlX9eMvnUhST1CSIuw7Xjqiew4pNVKBsV8jDnUKUMPkOVFq0aMG0adP48ccf8fZW3yavX7/Os88+S8uWLe+6Ienp6SxdupT4+Hhat25t9Zjk5GSSk7PqT9y+QKIoBzR3GK2UJFVRFqXEw9n1sPxRSE/J2t54JHSbmXOelBBlQJ5yVG71/fffExoaSuXKlalevTrVq1encuXKhISE8N133+W7AUePHsXR0RGj0cj48eNZsWIFdevWtXrs7NmzcXFxyfzx9/fP9+OJUs7ODTxrW9+nM+S8T4jSLOYqLB1rGaQAHPoJTktenyjb8p2jAmq15HXr1nHq1CkA6tSpQ7du3bKtqpwXKSkpXLp0iejoaJYtW8a3337Lli1brAYr1npU/P39JUelvAk5AAv6qNk/t/rfV1B/sBRTE2XPxrdgaw5FNN2qwri1ki8lSpX85KjcVaBSlLp160ZgYCBz586947GSTFtOpadB1EU4uAgu7VSzcu57Etyqga1TcbdOiMK3bJya5WaNjREmHwQXv3vbJiEKoEiTaQHi4+PZsmULly5dIiXFsivyqaeeuptTZjKZTBa9JkJko7MBj0Do/DKkxoONrUz7FWVb9W45Byp+zcFgf2/bI8Q9lO9A5eDBg/Tp04eEhATi4+Nxd3fn5s2b2Nvb4+Xlla9AZcaMGfTu3ZvKlSsTGxvL4sWL2bx5M2vWrMlvs0RZkhSTFYDkNqNBpwNdCe1JM5sh/gaYTeo52BitH5cY9d8Qlga0GtA7gtHB+rGi/KraXiXMxoVZbtdooNssmfkjyrR8BypPP/00/fv3Z86cObi4uLB79270ej2jRo1iypQp+TpXWFgYo0ePJjQ0FBcXFxo2bMiaNWvo3r17fpslyoLkOLhxGja/DdePqQJpHWeoaZiFXXG2KMWEwslVsHeeKvNfuw/cN1HlEmTkcSVGwbWjsHk2RJyDCjWhxWMQHwZV2qoaLdJLJDK4+sPYv+HPp1WBQ1Cfpz4fgnedYm2aEEUt3zkqrq6u7Nmzh1q1auHq6squXbuoU6cOe/bsYcyYMZkJtveC5KiUISYTnFkNv4xUvRG36v4GtHi0dHRvx16DpWPg0m7L7XZu8NhGcK8Gqclw+Cd10bldr3fgzBro+gr4Nbs3bRalR2IUJISDKU0tyeDkU9wtEuKu5Of6ne/pyXq9Hq1W3c3Ly4tLly4BquDb5cuX76K5QgCxofDn1OxBCsDG19UwSmlw/Xj2IAVUobptH0FKIsRfhzUvWr//5tnQdDT8OQ3iw4u2raL0sXNV+VmetSRIEeVGvgOVJk2asHfvXgA6duzIq6++yk8//cTUqVOpX79+oTdQlBOJkdnH3zOkp0JE8L1tz90wm+HwzznvP/EHJEVC7PXsU6szJEWD1gZCD6nfhRCinMt3oPL222/j6+sLqJL3bm5uPPnkk9y4cYN58+YVegNFOXGnirM6/b1pR0FoNGCTSw2XjJyTO1XP1WjUjzbf/z2FEKLMyXcybfPmzTN/9/LyyveKyUJYZe+h8jcizmffZ3BUibWlQdPRcHCh9X1NRoODZ9ZMoMTI7Mc4V4SkKAjsKjM5hBCCEljwLT8kmbaMubIPfuhnOSyi0cKwH6FmD1Uiv7jFhGZNOzY4gr072LqqHJukSECrgq1/nofoK1n38wiE0SvBpZIqWBe8FRYPVUmRHoHQajw4+YKDF8RdA99GalZHcqx6vJR4FbjojGBOB6MTGGQac5kUew0SItTv9u6SiyLKpCIv+CZEkfBtDE/uhMO/wOU9UKEWNB8LrlWKP0hJTYSLu2DV5KwAxKM6/O9riA2B1c9l5dh411fB1bHlcOMkNBgOVdtlVQ7V2UCVNjBhF5zdpFZ7XvMChJ9T+1381Xm1NrDmJTi5Ejq9AM5+cOAHte5LxabQ8XkV5MiSAWVDWjKE7IffJ0DkfzlZbgEw8Cs1AyynWjxClHHSoyJKHpMJ0pJU74GuhKyGfO0YzG2velIyOPmo6cRLx2Y/3tYFntgKjt65BxI3z8KcNuoidatuMyFoPVzcroaTDI6w+yvLY7Q6eOh3COhwl09KlCg3TsOctip5/FY6PYzfoWb6xF6DlDjQGsCxAuhLwZR9IayQHhVRumm1OddMSU9TQYyN3b0LYpLjYev7lkEKQOORsGeO9fskRcOZf9SQTk7S02D/guxBikarVoFeP1PdrtMfFg/P2u8WANU6qt83v6N6nmRButItLRl2f509SAG17fJeCD+rprVHXlDBS4Ph0HmGGk4UogyTQEWUDqmJEHkR9n4LN06prvAmD4Fb5aIfFkqNU9OFb+deDf7NZabbhe2q2mxOs3xSE+DKv+p3gyM0ekD1jmh0YHAChwrq99jr0O5pNdzjUgkSI9TrkJYMDe6HlFhAApVSLSUOQvZZ3+dZWwXlSx7M2paeCocWqc/lqOWSxyLKtHwFKjdv3uT7779n165dXLt2DQAfHx/atGnD2LFj8fT0LJJGinIuPQ3Ob4ElI7J6NS5sU0Mho/9Q+R6FKTVBVQAFNUvHxlbljUResDwu/oYKHMJOWm73bwn1h6hclZQ4NQxkjY1RBTtxYdD3o6zaKRoNhJ2AQXMgaAN41oTjKyDuOlRuo5Jq209XK+r++bQquT/kO3D2LdzXQdw7NrbgWlUtq3C75g+rHj1rrh9TuU0SqIgyLM+FGvbu3UvNmjX57LPPcHFxoUOHDnTo0AEXFxc+++wzateuzb59OXwjEKIgYkPht8eyD72kp6jtMaGF8zhms/qj/+cz8GVLlS+w4Q0186bzS9mPP/wzNB+XdVunh0Fz1dTinV/AT/erYCL0sPUCbzZGuG8C9P9YBSeRF2DdqyqBNuIcaGzUReqfl6HNJLVu0D/Pw8pJcHgJjPhZzQq5uAMu7Sqc10AUD4MDtJtqfZ+Tb1aitTXWKiELUYbkOZn2vvvuo1GjRsyZMwdNxsJq/zGbzYwfP54jR46wa9e9+4MpybTlxJW98G23nPeP3wE+hVAVOSIY5nVSdUxu5REIo1bAid9hw+tqSjGob8GjflO5KLu+gK6vqp6esxss76/VwcOrwb9V9sdMjofwM/DLKMvpzKB6cx74GTDBT0OzV6qtUAO6vwU/D4PKreHBX3LuvRElQ2qi6kHLqBfkXk2tiqy3U6uGH1uuZpClp6j9OgOM+wcW9M25mvHAr6Hxg9b3CVFCFUky7eHDh1mwYEG2IAVAo9Hw9NNP06RJk/y3Vog7MaXnvt98h/15kZasekFuD1JAfZu9vBtaPga1+8PN02q7axUVGLR7RvWsxF3PSoC9lSkd/n5WBTUOFSz3aTRqds/tQQqooaXwM3Bxt/Vy+jeDIPaqWnnZlKpmS4mSKykGjv+mPgu3BiJ93od6g8HWWeUpBXb5rwfFrKbA27urYoH/zs1+Tp1eBalClGF5DlR8fHz4999/qV27ttX9//77L97ektAnioCTr+q9SEvKvs/eXVW1LaiECDjzd877j/wKdf4HHtXUT7Z2uMLJVTnfP/QwJMdkD1TSkiBoTc73M2ty339mNVRqoZKL7aWSbYl28wysmmK5LT1FbfOuD5Waq54Vtyrq51btpsLVg1nJ16CCnBE/q2rGQpRheQ5Upk+fzuOPP87+/fvp2rVrZlBy/fp1NmzYwDfffMMHH3xQZA0V5ZijN/R8C/56Jvu+fp+oQKagtLrca1IYnO68Ro9tLt2XWp2awXM7nUHN+MmRKfcKtHoH1atTs1fubRPFKyUetn+S8/7tn8LguTlPy3euCA/8BFGXVDFERx+o1AycKmatISVEGZXnQGXixIlUqFCBjz/+mK+++or0dNXdrtPpaNasGQsWLGDYsGFF1lBRjultof794FkHtryjxve96qpqrRVq3TmAyAsHT2j5BKx+1vr+Vo/feWHEqu3VUI61tK/aA1QuQkqCam9GlVGjo6q1cn7Tf7edVPd/1f+KuLlVgVYT4Oo+leOSlgQn/1QJtACNR4B3PVW1VpRcqUlZ1WatiboAaYk5ByqgPj+OXqrnRUB6unrNbIylY9FScdfyNT15+PDhDB8+nNTUVG7evAlAhQoV0OvlQyKKmJ0rVG0L3ov++4PuoC7qhUWjUYXVji/PPoui6RiVB3InTt6qh+f27n3fxirR9uhyOLZMtbvVE6o+hkMF8GsK9QbC1cPQ90OVi7B0jJrl1GC46vYP2Qcb31S9Lw3uh/uehAs7wLcJOEpZgBLP6KDq4Fw/Zn1/xaZ36FkTmdJTVM/SgR/VkgMVakHLR1XOWG6Bnii1pIS+ELeKvaZqmBz6WeULNB2tFge8PbckJ8mxKjH20GL1b+2+KhD5cVD2OizNxkKXV8HBA+JuqEJuP/TLWjNIbw/DF6mgJTnW8r5+zWDogtKzqrSAsFNqynvGrLEMt5bIF3d2aTcsHGBZ0Tlz8dKe0rtSSuTn+p3nOip3cu7cObp06VJYpxOieDj5qFkXg+fBgM9UN7u1ICUhUq3NcnS5mo4cdQnSUlVviVcd6PEG3P891BkA/36TPUgBVT4/6r/tjp4QvC0rSAFVNO7AwuxBCqhvkjfPFMITFveMW1UY/bv65p/BtQo89IfaJ+4so6bS7ctOmE3w+3j1RUOUOYVWQj8uLo4tW7YU1umEKF5WpuFnir2u1lw5tixrm8FRJTtWbpOV3KjRQMJN1bsCanZSk1Hg01BVvz3+OxxaonpHUhOzzzqq0hr+fi7ndhxeoorL5dZWUXLobVUe0yNrISEc0KhZa1JVNu8SItSXAmuSYyEmBFz9722bRJHLc6Dy2Wef5bo/JCSkwI0RosQzpcORXyyDFFCl8n8aChP/BfeArO1msxpTD+yqEnJ3faWKw9m6qrWKavZUx+n0aibHrdJT1cUtJc56WwxOEqSURk4+EpzcrTvVVLp9WE2UCXkOVKZOnYqvry8Gg/WpcCkpKYXWKCFKrLjrsOMT6/vSU+DcRnB/JGubnZvqRanWCZaMVF3ULR+D6t3UekIp8WpYyK2q2n7op6z7nvpLFQLLaeHDpg8VylMShSQtBeKuqeEJNGravKN3yZk+nJ6qhkZir6kiic4VwcFLBcOlhb2HGoqNv5l9n41Rrcklypw8BypVqlTh3XffzXEK8qFDh2jWrFmhNUyIEsmU/l+3fQ5uX5PFYA/3TYQVj6uLw4AvIHgLLB6WNY3ZxR9GLAG3atDtdVj/qtp+dr0q6HV+c/Z8lJaPS15DSZIcC6dXw59TVfAJamZa/89Vr5mxmGf0pMSrIPr3J7NynvR20Os9NeMstxpAJYmTL/T7FH4dlb0MQPc31PRtUebkOZm2WbNm7N+/P8f9Go2GUjyBSIi8sTHmPjvD2krOWq0q0hXYVQUcR361/CMbfRkW9lcXkOYPw6R90Pt96PoaOFeGkctg2EI1g6jhCHhkPXSaofIbRMkQflYleWYEKaB+Xz5OLTBZ3CIvwq8PWSZmpybCqsnZV/8uybRaCOwMj21SRQ5d/FXez9i/oOFwFXyJMifPPSqvv/46CQkJOe6vW7cuwcG5FDQSoixw9ILub8Liodn3OVeEilbWu9Jo1RIADYepdV6sSYiA60ehVm/17bZCDcv9blWgVh9V3VZbaJP1RGFISYDtH+e8f8en8L8vsy6iJpMaHkqJA51RzfjKrfpwQaWlwO6vrRciBNj6PgydX7h1iYqSwUH9PxvyrQoGbezAThbjLMvy/Bevbt26NG+ec0VEvV5PlSpVctwvRJnh3wqGfK/yDzIEdFDf6lysVIh1qACNR6pgxdrighlunM79cXV6CVJKotRE1aOSk5tBapYXqID08GKY1xG+bAlfNIWVk60vSllY0pKyFtK0JuJcziszl2RGJ5WULEFKmVdo05OFKDfsXKDeIDV9OClKfSu291DVc62xsYX20+DK3pwTAQF8GhRVi0VRMtiDdwO4ftz6fp+GqhfAbIYza+CPiVn7TOlwbLkKUkf9pqobFza9neqBuLzH+n7vekXboyNEAeU7UGnSpAkaK1MiNRoNtra2VK9enbFjx9K5c+dCaaAQJZJWq4Z68rpyrUslFdC0exrWvJR9v3NFVVJflD56O2j7FBz9Vc3qupVWB20mqWA15ipsmGX9HNePqdlfRRGo6PTQ4hHY952a+XMrjQbaT5dARZRo+e5H7tWrF+fPn8fBwYHOnTvTuXNnHB0dOXfuHC1atCA0NJRu3brxxx9/FEV7hSi9HD2h4QPQ8Xl14crg2whGr7I+bCRKB/dq8OCvlrNOHL3hwaVZs7NSE/6bupyDqweLrn2uVWDUCsvA2qECDP8JKlQvuscVohDke62fxx57jMqVK/PKK69YbH/zzTe5ePEi33zzDa+99hp//fUX+/btK9TG3k7W+hGlUmqSqseSGKlqWNhXyPtaQqLkMplUHZX4m6BBva9OvllF+aIuwRfNs5d/zzB8MdTpW3TtM5tVoJQQrnp+7CuoHI/CWH1ciHzKz/U734GKi4sL+/fvp3p1yyj87NmzNGvWjOjoaE6dOkWLFi2IjbWyRkkhkkBFCFFqxEfAjZMQc0UV8zv1V1YlVYMjTNgli0yKcqNIFyW0tbVl586d2bbv3LkTW1vVnW0ymTJ/F0KIci09TdUq+f0JtTr2n0+DrYsq5mfvAUbn/xJp85jvJEQ5k+9k2smTJzN+/Hj2799PixYtANi7dy/ffvstL774IgBr1qyhcePGhdpQIYQolSLOwbxOapowqNofBxbCxR0wZpUKVJx8QSeTMIWwJt9DPwA//fQTX3zxBadPq7n5tWrVYvLkyTz44IMAJCYmZs4CKkoy9COEKNFS4uH3CXDid+v7h/0IdQfc0yYJURIUaY5KSSKBihCiRIsJgS/vg+QY6/vr/g/uXyCF/ES5k5/r9133Ne7fv5+TJ9UaEfXq1aNJEyulw4UQhSs9Vc3a0GjBwTNrRokomTQ6VUE1p0DF3qP4gpSkGIgPg6uHQGsDvg3V9GpDMS+gKMRt8h2ohIWF8cADD7B582ZcXV0BiIqKonPnzixZsgRPT8/CbqMQAtTCcnu/gxMr1OKILR6DOgPA2be4WyZy4uAFLZ/IWhH7dk3H3Nv2ZEgIh11fw/YPstYA0urUasoNh5We1ZRFuZDvUH7y5MnExsZy/PhxIiIiiIiI4NixY8TExPDUU0/l61yzZ8+mRYsWODk54eXlxcCBAzPzXoQQt4i8AN92hZ2fqnocN4Ng9XPwyyiIyaWImCheWq268Fe+L/u+js+rxSZzkpKg3vdLe1SvR/TVnBcWzK+rh2Db+5bnM6XD38+UjNWehbhFvntU/vnnH9avX0+dOnUyt9WtW5cvv/ySHj165OtcW7ZsYeLEibRo0YK0tDRefPFFevTowYkTJ3BwkJLOQhB3Xa1+e+246pKPv2G5P2QfhB6SXpWSJDlOvU+pCWD4b+G8oQvh5hmVVGt0gQZDwNkv5/WhEsJV79nW97LK3jv5qOTbik3V7fgwFWgYnfLXA5IYpVZMzsmur+B/X6heuwwmk/osmk1qbSM7t7w/nhAFlO9AxWQyodfrs23X6/WYTCYr98jZP//8Y3F7wYIFeHl5sX//fjp06JDfpglRdsTfhLMbYPtHKh/FuaL6Bp6erC5w9u5qRsn5LXD8N6jeTa3pkiExClLjQau3LOsuilbMVVj3qnpPTOmgt4f7JkCrJyCgvfrJi/ObYdNblttir8GSEfDIBrUC895vITkWqnWGbq+BRw2wMdz53GnJ6lw5ib6sjskIVGKvq4UTd30OcWFq9fDur4NXncJfIyg5Tq0wrtWpYTNJMhbcRaDSpUsXpkyZws8//0zFiqpAUUhICE8//TRdu3YtUGOio6MBcHd3t7o/OTmZ5OSs8tMxMTkkqAlRWphMEH0F0pMgLRUMdmB0Vd9qDfbQ9VUIO6Fqbfg2UsmZMVfgzFo4vAQq1FALHaYnq0AlOU4VF9swC0IPqwCnw7NQrZOU6S9q8eGw4gkI3pq1LTUBtn0A5nTo9ILlGk85iQuDTW9n3a7SBqq2V70Zvo1h2VjLdYGC1sD5TfDYJvCpf+fz2zqpYCMy2Pr+qu1B/18AkhCuCtSd/itr/8Ud8F03tT5VXgOvO0lLVUNOm2er52LrAq3GQ/0hqidJlGv5np58+fJlBgwYwPHjx/H398/cVr9+fVauXEmlSpXuqiEmk4kBAwYQFRXF9u3brR4zc+ZMZs3KvvqoTE8WpVL0FTj2Gxz5RX2DrDMAPALh8r/QcLj6Rh20Vh1bs6dKnj3yqxrqcfWHxqPgyl74dy6M/VvlQZz5BxYPz/5YrZ6Ezi9KkmRRun4Cvm5tfZ+NLUz8N/eclAzRIfBJfRVY9v8UruyHM6vVzJzGo9T2VU+p3pRbVe8G93+vLvJ3EnYK5rbLvpqywRHGbwf3AHU79AjMzSEY8awFY/4snB6768fhmy5ZRfEyVG2vnpP0CpY5RV5HxWw2s379ek6dOgVAnTp16Nat29219j9PPvkkq1evZvv27TkGO9Z6VPz9/SVQEaVP9BVY/QLU6Aa2rmBKheMr1EWqzSS4cVr1iAStBa+60P4ZWPG4Gk64VeeX1B/58CB4YAnM76Vqd9xOo4FJ+1UgJIrG6dXw8wM57x+/I289HnE3VKn97rPUZ+T2ng/fxtB6Avz2uOV2jRamHgWXPHxZTEtWCbWrJqvPGkDFJtD/M/Cul7VQ4Z65Kmk7J5P3g0cBV19OjIalY+H8Ruv7H/4HquQQAIpSq8jrqGg0Grp370737t3vqoG3mzRpEn/++Sdbt27NtUfGaDRiNBpz3C9EoUqKVQmL146q8Xqvuuqbnd6uYOc1meDGGajaBra8pwILgyM0fhDq36+SFs9tUnkNQWtVF/j6mdmDFFDJlsMXqV6UlFjrQQqopMtrxyRQuZP0NHWRvpv6NA65lGbQaNRQXl44ekLfTyDoH+vDM6GH1MrbFWqo2V8ZDA55b7eNESq3Uj0iiVHqfnbu4OBheVxuvTMarerlKaiUWAjelPP+k6skUCnn8vQp++yzz/J8wvxMUTabzUyePJkVK1awefNmAgIC8nxfIYpUfLhKHtzxSdYUTp1BzYao1ReMBSiKlRQJ14/AuteytqXEwb/z1IWpdn+o1CwrmdHOTSU4WpOeqmaY2Lrc+aKR1wtleZMcp5JLQ/bB6b9V0Nh0tEpOvf3CnRtnP3CtAlEXs++r2Rvs85Ej5FrJMi/kdqf+hoCOloFKs4dVAmp+OHrlPqzi30oFbtaC5Fp9VMG6AtOAzph92CeDDFeWe3kKVD7++OM8nUyj0eQrUJk4cSKLFy/mjz/+wMnJiWvXVCa6i4sLdnYF/NYqREFc3g3bb/vcp6eo7vYnd6ru8buVFAPbP7G+L2gdtJ6kApaMP9x3+pas0UJAZxWsVGwKVw9kP8bGFirUuvs2l1UZtUpWPAHXj2VtP/QTtHwMOs7Ie7Di7Asjl8GiwZaBpV9z6PN+/i64Nrbqfc2JRmtZA8Wrrup502WfkVkgTj4wcC6seMzy8VwqQc+31NTognLwUL2J+763vl/WQir38hSoBAfnkB1eQF9//TUAnTp1stg+f/58xo4dWySPKcQdJUTkXmdi73fQ+33Q6e7u/KmJqus+JzFXwaOmSrIFNQvEvRpEnM9+rI1RDTl0e/W/i8pXML+35fk1WhjyDTh53117y7LESDj8s2WQkuHfb6DB8Pz1qnjWhEfWqhykmFCVlOrkq4Zz8sPeQ1WtXfOi9f3NxqrPQ+ORar0gn4ZFU0tHbwe1e8OEf9UU5ahLUKM7+LfMWy5MXtjYQrtpakr27Z/xzi+Bk1/hPI4otQo0wLhjxw6aN29+13kjpXg9RFGWpSWrYCEnkRfAlAy6uxxKsbnD/xcHL/Cury5uEcGw52voNhOWP6p6dSrfp2YA6QyqnopzRXCtqu7rWRue2Apn1qg//B7V1bdVF/87P255FHtNXYBzcuAHqNQ8fzkrzhXVT0FotVB3IBxYCDdOWe6r0lZ9BuoNLNhj5JXBUQVgnWcU3WO4+qt8mct7VA0aB09oNkZ9ru3yMItJlGkFClR69+7NoUOHqFatWmG1R4jiZ3RUQyhnVlvfX7U92BRgaNLeAwK7wrkN2ffZuakkSWcf9eOzWk1D1dmqaaOX9qiL2N/Ts3pNHDxh0DxVb0NvC66V1bfx5uOyZm8I68wm1cOVk+RYNeRRHIs/uvjBqN/g3EY4+KPKQWr5GFRuXTZri7j4gctg1UOk0cqCmyJTgQIV6RERZZLRSX17DFqjLmS376s/qGB/RO1cod/H8ONA1dVtdFI1KdCqcf9bu9SdfCwvSqmJ8E0ny3yB+Buw+H6YuFfdPrpUFQTzawYN7geXyqArhNkZZZGDBwR2Ud/irWk4rHiro7r4QdOH/svT0KpibWWdBNfiNvLXSwhrPGrAqBXw5xQ11AOqfsX/vlAX/oJyq6KKtCWEq0Dj8m41PdTOXQUj1mYVpcTDtg+zghRHL6jRQ82YSIxUa8n8OloND4Eq/rbtQxi9UuUUyDfU7GxdVRLq2XXZC6j5NMxaV6e45aWImxBlVIEClblz5+LtLQl6ogwy2ENgJxi3RtWZ0OrUsExhlqHXaGDty6pk+K3b+n0K9Qdnn1GREq/K6Wu0aq0VhwpwYqUq016nvwpgbF0sFy5MS4JlD8Oj6wueN1EW2bur2jJj/oSdn6n1lfR2Kj+iyUOy2KMQJcBdVaYtKfJT2U6IEsVkgp2fw/pXre+fsAe8altuS46D3x6FSi3h2hFVyfZW7tWg97uqOurtdS/GbwefBoXX/rIoLkzVs9HqVVBX0CGIuBuQcFP1kNm5qx4wqWUjBHAPKtMKIe4gPlwtHnh2vRqaqdEdHH2yZjDEX4fdX+Z8/6NLoesrltuMjtDheVVjZUP2Na+IOK9m+9Toocq53yo9rWDPpzxw9AIKaU2Z8HOqLPy1I+q2Tg8tHlcLSOZ3qrIQ5ZysoS1EYYsLU+ujzO0AG16HtS/Bly1h91eQ8N9MHZNJ5afkJDqHUvietVXwk5PjK6BmL8ttBkdZOfleirkKC/+XFaSAqiC8+0s4uFCCRiHySXpUhChswVvh2LLs27e8oxYhtG+hgocq7SB4c9Z+jQbcA9W379p9rZ9bb5uVLAuqmNh9E1SehSkNNLrs9VJ6vi3F3u6l8HM5L3mw41M1k8jF/962SYhSTAIVUXalJKheC3M6GJ1V4mRRSwhXF6Oc7JkLPo3UEFD3WfBtF5VP0mCouoBdP66+cbtXVRVyb2+zRqMKuB1dqoKTXu+qBQszKqsaHKH9dOjyihoG6vIy+DZSxeHEvXF7gbZbJUXnXrdFCJGNBCqibIq8BJveguPLVbe7X3Po8x541VO9EjmJu6FWc9XoVGG2Oy0+aDZDbKi6+OgMKh8lKdr6sfbuauaOKRUwqNopD/8DwVvU/sXD1PnsPVRPS/PHwPe/BFiDg/o3JR7cAmDwt+DXVJU0bz1RlYEP3qqSQTfMhCHfqnVnpKrnvedRPed9RqeCFQsUohySWT+i7IkOUevd3L6KrdYGHt9sffZLSoIqkvb3dDUFWKtTqxh3f13VPLEmIULVKtnwugpW9PbQ/BGo3UcVc0tLVsc1HqnKnUdfUSvo+jYCR++sgCn0MOz9ViXBOvupIZyLu9QQjns1tYpzbCh0eA6un4D6QyDkXwg9omp9+DWHxAiIugCrpqpzetSAsauBdPVcHMp5AmdKgnoNT6+GmBBV5M27XsGnbMdchWtH1XIFLv4qP8jGqHrKYq9lP77Ds9DxecvFAxOjIO66OgdAtU7q82HnWrC2CVGC5ef6LYGKKHuO/aZqh1hTozsM+T77SrYh++Hbbtkr0fo1hxGL1YXjVunpcPAH+PPp7I9RvTtUbQPrZ0GnGaq3xZQGAe0hNUnV6bBzB6866tv11QMqGDm7UfXmVGoB7afB7jlwaRcMmgMXdqiLW5OH4Id+6pyD5qjelcv/wpW9UG8QYIJdX0GvdyA5RhWCMziAGfCuWzZLr99JaiIErVWzcG59fz0C4aHf1ZIDdyPyEvz4P8uF9LQ6GPYjeNZR1YLDz6ntGi00fgi6vGSZLxQfDjs+VlPVb9XmKWg7NX8LIgpRikigIsovs1kFKbfXGMmgt4dJ+1Rp8gyJkfDLKLiwPWtbhZoqvyMhXA0HVWyivoFn3C/6Csxpl/MqyI9vhl1fqm/uBicID8qqLnpuIyRFQb9PVNBy6i/Va5MYqSqlhp9Vxcf+96XqNaneVQ35XNyphqIqtVTDQ4mR6lu4RqMe5+phFdi0nQIrHlc9NaAung0fUAm6fs3LX2JtRDB80Sx7bRmAhsPV+5BR3yQpRhXMiwlRwzSO3tZ7XZLj4I+JcOL37Pt0evUZs7FT50qJV7OuHDyzB8jnNqtgx5rRK6Fax3w8USFKD6mjIsovjQaccunOt3fPXsgrJQEu7c667VZVrbmz4gk1vJPB0RvG/qUWDczorchJRDD0eANO/qlm8pzfqKYnazRQux80fxg2vqGSXo8tV6vGZvBtDEO+U4mxNbqrIYTICyq3Ze+36mKaHKMCIb29qmLr6KMCqartYMt7llNjTelw6Cd1kXT2K3+ByqWd1oMUUGv8dH4ZDJXVtPINb8ChH7OWKXD2gweXgHcDyyUIEm7CqVXWz5meClf2Q4Mhub/WybGw45Oc9+/4VK3XdKc8KSHKOKmjIsqeJqNy3nffRHC4raiXVmuZw9F2Kvw13TJIAZVHsHSMuqDpbHNfO8feA9CowGHZw7Dve/XtOi5M/b5qCrSZAn8/axmkgBoiSgiHda+qnp5936sel7QUaDVBBS+7v4aAjjD8J5ULs/lt+Oc5uLgDGgyGB39VU5dvdWCh6skpvZ2od+f29/FW6algTlMzrQ78oOqc3Pr6xITADwNUD9qtTGk5Bz+Qe42cDGkplssd3C7+BqQn3/k8QpRxEqiIsselEvR+P/v2wG6q9+H21XAdvKH1pKzbjl7ZE3EzXD+uLkIOFVTyqzV2buBRTQ35nPpbXexuF33FshcnQ93/qZySpWPhwjY1q+fMP6osvkd1OPyTykHp8Qa0fAx+HqamKkddgiv71LCSwVGVgR/2o1ql2b2aOndKvMpVKW+LE1Zpk/M+z1rq9Yq7Bju/sH5MYqQagruVwSnrdbWmcqs7t8vWWQ3Z5SSwi5pWL0Q5J0M/ouyxdVa1RgI7qyquybEQ2FUlTVorX67VQoP7VWBwdl3WbJ2cpCapx+jzvkqWDD+btc/gCCOXquGnpCg4+Uf2+zccrmbuJEVBy8ehxSOqvsqFbdDoAfh1TPb72Niq0vl9P4LIi+BTH66fVEmXl/9V9+36qpoafeuMI7cA6DUbNr6pkj7L27APqPe9age4sDX7vt7vqcA0/Lx6P3Jy8zRwSxE+J29135/uz35sYDc1ZJSbxCg1fFRvIPi3gqO/wolbPitGJ2g21nJ2kBDllAQqomwyOoKxhsonyQsnH5W8GhOiuvQ12uwzgEBNPbV3U7+7VoGxf6pgJeSAym2p2FhdpLQ60NioAONWnV5Qgc6SB9XwAagelJ6z1QUzOday8mzG/iHfqaGbnV9A73fg/BZV/TYlQU1n7fic6gXa8LrlfSOD4bfH1Qyh4K3Zh73KAwdPGPKNGkLbM1cFJL6NVQDn01Ado7dVr39cmPVzZBx3q8r3qff/nxdVTpCdm6oS3HS05ZIFyXEQHwaJ0WB0ULV2/pkBp//677HtVcDa6x345wWo2l4FQXc7G0mIMkZm/Qhxu+Q4WP+aSly9Xfvp0GG6mq2TF8dXqGEcUBeejs/BH5OyH6fRqryS5BhYNs5yX9dXVc/QxZ0qyTfsNCSGq6TajERRJx8YNA/+mKDqeSTchJtBWefo876qC+N8W95KeZKepgIRc7oKDm6d+msywf758Ne07PdzrgiPrLecKXar+P9WSNbq1DCi7pZk7dhrsP51OPJzVuBbpQ20mwa/PWaZkN1tlqpQbHCQGiqizJNZP0IUhNFRFeVyqaxqXCRGqm/lHZ5VOS55DVIAKrdRdVXOrlNDPkeWqoUF42+oXBcnH2jxqNqmM6j6G35NVQ8NqADGu57qKWk1Xg0r+DYGzGr4oP00NaMneJtKAu02C0L2qaGnCjXgyK/q2374+fIdpADobMClourZSAhXPVAxIaoQYIWaKpBLiIDtH2aVua/YRFX5zSlIgZwXfExNgM3vqryiW13cqYLhjs+rHpQM2z9WM4UkSBHCgvSoCJGT9HSVZJmWDHojOPpmT8TNi9jrKj/E4AjhZ1ROi0slVfTN6ARrX1FF30ANH/V6Bw4thpMrVe2VHm+pC2fCTVVfJeMiWrm1mt6cEUiteFxNYwb1zbzRA6pKb1KUGk5wryYXwcRIVVgvPkytkZSWpLZrbVTPVeORkBqvVrnW26pKwne78nTEBfiyuZpZZM0DP6l8pIwhQICJ/6oEXyHKOOlREaIw6HS5f5POKydv9e160WDLKqYOnjBorip/nyHygspfeWSd6tEJO6GSLa8dga3vqposHZ4FV39ISwVbJzUVOu4aDPxaLU4Ye03l0vw01DLPpuXj6lv83V54y4Lw82Cwg1VvQNOH1BRvs0kFf4cWq3wfO3cVIBoc7u61ir/5388NNX386kEVYKbEWx4XF6aSsjOmT9vYZs9pEkJIoCJEkUuIUMXjbg1SQF3I/nwa2j8Dq57K2m42wZZ3YcAXkBiF6fpxSE1C+9DvqpbLyb9UUmbV9mq2iKOXyrvY8p76Nj74WxXs3J4M/O88dWGu06/In3KJkRSdtY5OeqoqoJaSBEN/UMm1v45Wr5NbgNr27zw13TstWQ3H9X7PouhaWrqJyIRUwIyHgxGt9rap3lGXYfkjlrVxAjrA/d/D0odVwJrBwVMlT2doOqZ8zsoS4g4kUBGiqMXfzF7ULYOdG7HezdG2fAqHoJVZQzde9bhxM4yzUWaWnPTHrNEyXGdDzaQIPK/8q/JZ9i9Q05OjL6uFFr3rqx6VJQ9C5xfh9yezP972D1Uyp717UT3bkiMhEvZ+o1bRvlXjUVClLZz+O2tbh+nw+3jVg5XhxilYOEDN7KnanpDIBH7Ze5nfD13FRqthRKvK9G/oi4/LfzlL8TezBymgZlvp9NDqCZWHAiqgjLueNSxUqw+0f1p6VISwQgIVUeZEJ6SQbjbjYmdAd/s33jswm82ERCWy70IkR65EUbeiC/dVc6eii132b8853P96TDKRCSnotBrc7PXEm72JHhuErV6HoykGj/2fYRu0itA+C9h8w4Hf/ozGYNOXMffdTxNdMJ5rJ3GjwaPM+PsikckaRraqjK1eh8bOhviKfQjx7Ypeq0GDGSeDBluDkbSkOBIrDoDYq7iHbsPV1pXojm8Q7tOOpDRw1ibidWQuhmv7s09/LqvCg7IHKQCHFqmEZbcANX3boYKasXNrkHKrf14kZOjf3D/vX0KjVU6Lk9GGiLgUTl+LJSw2GXcHA17mJAw5BaRnN6ihN4AqbYge8APhKVqSHu6Ls70RLwcbDPaSZyeENRKoiDIjLDaJ3ecjWLAjmMTUdPo28GVgEz8qudnn+RynrsUyfN4uYhKzEhydjDb8/Ph91PdzyfW+Cclp7DofzosrjhIWm8w7gxty/Go0v+y9THKaCY0GutT2YnLnV/BsPYPRP57g3M2rmfffcRY6Va/A+0OWsT8kEQ8XJzr5ufDVprOM7xRIZXd7LkYmEJeURnq6mQaVXAhLSCE+KgE3e1uMNhpCNJX4PKw9k+tX55VtruxYEwqAvUHHxNZTeaBRDB5Gp3y+sqVQWrKq4JuTw4tV0b1tH0CFWmr17Byk23ux9EBIZpDiZq/nk+GNmbftPF9vUasj2+l1jO9QhVG9vsLjnwnWT2TrApP+5RIVeX75MXadV7kpDgYdk7vUYFgLW9wdDHf3fIUowyRQEWXCjdgknlt2hM2ns9ZOORkay8JdF1n+ZBv83e8crITFJvHkov0WQQpAbHIajy/cx4oJbfF2yblr/uyNOB5duA+zGQY0qsjRkGgW7c4qxW82w4aTYZhMZqZ2q8Ej7auxcNcFTl1TeQp6nYabiWYu6qux7cJ12levwHtrTvPO4AZ8tO4M+y6qmhueTkZe7luHtSeuM3v1KQDuC3Bn5H2VqVfRhclda/DoD/s5fzMreTMhJZ33t4Ri17cWY2rbc9uyjGVPWjLEX895f3x41krGybFqdk8OIgIHsHLXtczbz/aszZt/nSQoLC5zW2JqOh9vOI9dl7qMC+yJzbk1lifRaMDBk+v6Sjw0dxcXw7NyVeJT0nnnn1M4GHWMbFUlTz13QpQnstaPKBOCrsdZBCkZwmKT+W57MClpuSwg95/wuBQu3HIBudXV6CTC43MurR+XlMYn64My17Pr08CXpfsuWxyj1cCLferQv1FFvtx8jr+PhjKoiR9fj2rKU12qM2dUMzrV8mLH+SiGtfQnLDaZF/vUYcqSQ5lBCsCN2GSmLDmEl7MtDSu58M3o5jSr6s6Xm87x8fozhEQm8ukDjanomr3ey2ebznM9JumOr0WpZ3CEGj1z3u/fEq4dVb9fO6ISZjXW/xxqPQKx0angwcGgw9nWxiJIudUXu8IIazQ++47a/cHBi+Ab8RZByq0+WR/E9dhy8N4IkU/SoyJKPZPJzC+3BQW3+uNQCOM7BuLjkns/QkqalZL5t0hKzXl/fEoax69GZ7XJbCb5tvNN71GLI1ei+PNIaOa27WdvMmtAXWKS0njkh32Z2z9eH8QDLfypW9GJG3HWA6Rvt51n9uAGTFp8kJQ0E6//rx5nw+KYty0YR6MN7wxuwMHLUXy/PZik1HSS00xEJaSSmHrnoK3U02qh3iDY8Yll9VdQCattp8DCgVnb9n0PAz5Xs69uXRXZrwXulWryYKsEZq48jrezLRcjrAcaADGJaSTY3VL6XqNRQUrv98DWmfM3LzKhUyD1/Vwwm2HH2Zv8fiiEhJR0wuNTSEwpB++NEPkkgYoo9TQa0OayIrBGo0EtG5w7dwcDRhtttgAD1LBMBSejxbaw2CQSUtIx6jRoNRreu78hCSnpHLwUhb1Bh1YDJjP0aeDDwCZ+uNjqqeHtSB1fZ+bvCOZmXAqeTkYcbfUs2Hkh22OeuR6LvcGGeQ81Iz4lnVWHr7LpdBj+rvZU93bkvgB3bsYm07OuN93qevPssiMkpKQRl5xGSpoJPzc7etbzIaCCA1og3Wzm++3nMdqUk45U18rceGQv8ZHX0SdH4nH6F/SOHkQ3eRy9owdOj28hJfYmYRp3ItMM2BoMuE/shceVjWomVUA7cAtA4+hF73qJrD4ayunrsfg4Zw3/tQn0YHBTP+z0NiSmprHy0FWM7pVg0j41pGTroqYh2zqTlm6ijq8zfxy6ylebz2Gj1dC1jjdzRjXjxRVHiYhPwWhT5gflhMg3CVREqafRaBje3J8VB0Os7h/UxC9PSYqeTkae6lqd99ecybbviQ7VqOCozhGblMr+i5G8vuoEjrY2TOtekzmbz7E7OAKNBtoGVqBHXW9Gt65CJXd77PU6Vh2+ypEr0VwMT6BRJRc+GtaYF5YfoW9DX3afu0mHmhX4XyM/7Aw6dFoNZjOERCXy2MJ9XI9JxtnWhud61eKVvnWISkglIiGFCo5GbLQazBoTBhstHw5rxKnQWNwc9Pi72fPHoRCGztmV+Rzc7PV8+kATKpSDhM245DQOXIxk1qoTnLsRR21vR2YPeYNNp8JY//N5nO0u8Ui7ANztKzF/RzCJaSb2Bkfg727PZyP6ENhI1U1JTTMRFpnA5YhEHmtfDV8XW9JMZjwdDUzpVpOw2CTe+uskznZ6ans70aOeD0a9HpyzL4Z5ITyBB+btzgyE00xm1hy/xsFLkbw1qD77LkTi6VT23xsh8ksCFVEmVPdypEddb9aesEygrOhiy8Ntq2LIwzdVW72OES0rU9HFjg/XneFKZCIVXWyZ2r0mXWt7YW9Q/132XYjk4QV7sdFq+H5sC8Yv2k/Cf132ZrMazjlyJYo/JrYlIiGVP49cRYOGcW0D8HA08PqqE3y+MYh5o5tzNSqR0Ogk+lWw52ZsCi//foyYxFR61vdhSNNKmUMBbQLdaVHVnUOXozh8JRp3BwMN/Fw4GRrNqFYBPL/8CHuCsyrc+rrYMntwAzaeCsvMu4lMSGX8ov2smdoBf/ey/V//4KVIRn//L6BmPL3Yty7jFuz9r1ib6iHrXtcbsxnsjTbYGeHtQQ24EpnIyG/28NuENng4GNh9PoKJiw8Ql6wSrLUaeKRdAMuebMPcrefZGxzBO0MacjUqkfM34klNN3E5MgEnWx12Bn1mexJS0vhy01mrvXVhsckE34zniQ7V8vQ5FQUXl5xGWEwSm06HEZ2QSsdaXlRxt8/WaypKBlnrR5QZN2KTOHgpivk7LpCQksaAxn70queDn1s+FhH8T1hMEinpJvQ6Ld63dPWHxSbxwNzdnL8ZT+/6PrjY6VmyN3vS7DM9atLE343tZ2+y5vh1zt1QyZeV3Oz4aGgjktJMTF96mLBYlX/iaLThyU6BdK7lycWIBFLSTPx7PoI6FZ15488T/P1Ue8Yv2k9QWBzezkYebRdA48puOBh0ONrakJpuJjk1HZ1WQ3KqifUnr/PX0VAmdq7OtF8PW7Tvo2GNGNy0Ur5fk9LiZmwyI77ZnZnw+mDLyoTHp7DmeNbMndmDG/DPsWtsOXMDTycjPet6Y2+0wdZGg7ujLZXc7Aj0dKD7R1tJM2X/E/nhsEb8eTiUh1pX4elfDhGdmLWej7OdDT890ooGlVwzt12PSaLf59u5EWs936hjTU/mPtQUW33ZDiBLgtikVH4/GMIrfxy32N66mjufPNDE4v+7KDqy1o8olzydbOlRz4c2gRVIM5lwsdP/l5+Sf145/LFKSEnPnPZb29eZVYevWuyv4+vMe0MaEHwznu+2B3MzLpmRrSrjYLThld+PcSUykdjkNF5beTwzSPFwMPDx8MZ8tz2YD9aexmwGFzs9j7WvRt2KzjzRoRpfbjpL8M14Gvu7MK17LebvCGbetmC61/Gmsb8Ln208y5XIRGy0GnrV9+HhtlXpVMsTvU7L3FHNMAPHrkbz855LnLsRf/vTKlMSUtItZuW0qe7B1CWH8HQyUsFR5SElpaazNegGz/eqhZezLasOXSUqMZWWAe60DfQgMiGZ1UevWQ1SAL7ceJZ3hjTg2WVHLIIUUAm1ExcfZNn41pmfI51Wg6udnhuxyTgYdLjaG7gZl5zZw1LByYiNrpzkDhWz0OikbEEKwK7zESzff4UnOgbmu1CkKFoSqIgyx9G26D7Weq0mM+E2LinNIvflyY7V6FLHmwU7LxCTlEab6h74ONsxc9Vxavs48ULv2rz190nSTGauRCZm3u+F3rWZteq4RQARnZjKB2tP87pdPfo19OHcjQS61vHG1V6Pu4OBB1r6Ex6XQsNKrny9+Vzm+dJMZv48EoqDUceARn688NtR0tLNDG/hT4sqbvSp74Mph4tvWaHTabDT6zJnNzkadXw+oglRialcjUqkYSU142Z6j5qERCYSn5LOQ62rYLDR4udiy7XoJIJuxNHI35Wnu9fksw1BpN/2moVEJaLTaHKcanwpIoHw+JTMQKWCo5Gnu9UgMc2EXqshLDYZPzc7wmKS+WjdGUbfVwWbu1mZW+Tb7znksgHM33GBwc0qWSRMi+IngYoQ+eDhaGRos0os2nOJv4+GMrlrdf4NjuDhtlUxmbFIXl134jr+7nZ8cH9DHlu4n/ubVaJbbS+8nY18NbIpOq2G/RcjsdXrcuzlOB4SjaejkWeXHcnMkzDaaJnUpTpRCam8+sdxpnSrgYejgYW7VHE5B4OOXvV8GfP9v4xpU5Wa3k78sDOYFWYzk7vUwGijZc/281T3dKSGt5PVeiulmaejkQda+DN/5wWqVXDAaGPD1F/2E5WQ1fNR2d2eb0c341pMMkv3XSbQ05F0k4k9wRHU8nKifXVPlh+4TPMq7vz6xH3cjEth57lwlu67TEJKOrV9nEi6w3T25NumgQd6OTJ2/t7MCrcALaq48duTrfFykgvjvZJbHaGoxBTMZTyQL40kUBEiH2z1OiZ2rs7hK1EcDYkhJjGN4S38aVu9Ao/eUgclw+WIRFYevkrvBj6kp5tpU70Cj/2wnxtxyWg10K2ON30b+OJqr7e4kAK42+sZ2aoKFyMSeGtQfTaeCmP10Wskp5mYs/kccx9qxvkbcXy6PogvHmzKigMhxCan8b/Gfvz87yW61PaiZ11vHIw6Zg6oR2RCKkYbLYevRPPVf4mdFRwNLH70Pmr6lN6y+jGJqYTHJ3MlMhFnWz1ezkYmdKrGwctRPHRfFab+cjDba3spIoEjIdGsOXqNCV2qM2/LeXaeD+ex9tUw6rWsOBSCg60eVwcD+y5G8sWGIJoHuPPVyKZM+/UwL/Spg5ejEYNOS0q69ensHo5ZiZnXY5J45Id9mUGKh4OeZ3vWxtFow6/7ruDjYkunWl54OxmxN8qf5aLUs54Pyw9Y71W5r5qHvP4lULEm027dupX333+f/fv3ExoayooVKxg4cGCe7y/JtKK4XI9OJDIhldDoRPzc7PjzcCifbTxr9VijjZZ5DzUjJjGVjadvkJZuYvvZm5kzUGp4OTK+UyDbg24SUMGBiPgUTl2LYVr3Wny3/TwbToZR19eZYS38aeLvysnQGKp5OWIymUlNN+FiZ+BKVDxrj4exbP8V3hnUgAb+Lug0GqITU7HV67A1aElKMbHrfDi7zoUzomVlJv98gNR0M/7udiwb36ZUJhHeiE3ivX9Os+zAlcyqwN7ORr4b0wIfFyPnbyQwbG5WL5dWAwMa+dG7gQ9eTkbs9DqCb8Zz8FIkHWt5EZWQwtO/HGZQU5WIvfdCBOlmM62reXD+Rjy/7L3Mh8MaUcXDHhuthi83neOLTdnf90mdA5nYuTp2/80UO30thr0XIqnoaoeLnQ22eh2XIxIw2ujYce4m328Pxgy8O6Qhfev74lCEw5fl3bXoJB6YtytbFWqdVsPKSW2pVzH3Nb1E4Sg1ybTx8fE0atSIcePGMXjw4OJsihB5kpCSxvkb8Xy2IYgToTFUcrPjqS41qOObc4+EwUaLn5s9odERxCenYbDR8lr/eoTFJvPuP6fwcbGlhpcjW07fYOWhq/Rt6Mtr/esRnZDKsOb+PNGhGvsvRrLpdBixSal0rq0uqN9tv8CGk9dxMNgwsXMgT3SoRq963tTycWbrmTBe//MkyWkmHAw6Xupbh/oVXajn64y3k5G1J64xoFFFlh8I4XJEIuFxKaUuUElLN7Hk38ss3X/FYvv1mGQe/GY3f09pT0JK1rpNWg28f38jDlyK5KmfD5KcZkKrge51vRna3J/HFu6jSWVXFj7Skl3nwnl4wV60Gqjv58LBS1E429owqUt1YpNScbJVU4/HtauKn5sdn6w/w/WYZLydjUztWpMe9bwzg5SUtHRuxCYzb+t5Lv1X1baSmx3P96rNkn8v4GynZ/bghjy//AjPLTtC08puVLd1vEevYvnj42LLT4+24rMNQaw4eJWUdBNNKrsys389qnvK614SlZjpyRqNRnpURIlmNpvZeCosc+HBW83oU5sjl6P562hotvsteqQl7685zeEr0Rbbe9X3oVPNCjja6pm65BDpZjNvD2rAmeuxLPn3Momp6eh1Gvo28KV/o4rodRpS0lQvSlRCKjHJqdT2dmLe1vM827MW9gYdN+NTiEpQSaPNqrix/sR1etT1JjHNRHxyGlejEqnp7cjBS1FUreDI+EVq1eBfn7iPlgEeRfbaFYWrUYn0+nRrtkUkM8wZ1ZQ6Ps50/GAzAIOb+mG00fLzv9mXW2gV4E6Hmp68v+Y0r/Srw6rDoVT1cOB/jSuy/1IkcUlpNK3sSgUnI2HRSQy8ZXq32WwmLDaZlDQTehst3k5Gi9lmZ8Pi6P3pVlLTLT80NloN345pzhM/7ufJToHsOHuTvRcimda9Jk91zV4wThSupFS1bIHJZMbR1gY3eym2dy+Vmh6V/EpOTiY5OasOQUxMTDG2RpQ312OSeOG3o5lBioNBx9Dm/rQO9CDdZKZjDU9CoxM5cCkq8z6tq7lzIjQ2W5Ci1cC+CxE80NyfzzYGkWYyM6iJH8dDolm051LmcWkmMzvOhfNI2wCuRifx4+6LnA2Lw6jX8mDLytyMS+GtwQ2ISUxl1ZFQano7YavX0qmWFzotDGyiLs7Hz97k94NX8XGxpYqHA862etztVa+ARkOpTOZMSTflGKQAnAuLp231CvRt6MNfR67Rq54PkxYftHrsnuAInulek3eHNMTNXs+bA+tzIzaZp34+SOx/ScwLdkITf1c+HNbI4r4ajSbH3qiUNBM/7AjOFqSAem9XHAyhV30fftp9iWd61mTvhUjCysOikSWArV6HXxlLJC+rSlWgMnv2bGbNmlXczRDlVGRCambBLg8HAx8Na8TC3RdZuOgCJjN4ORl5tmctOtbyZP6OC3SoXoEp3Wry6MKsJFu9TsP4joE0qezGlcgEktNNPNOjFm/8eYLe9bMupDW9HZnRuza+LnbEp6SBBvzd7ZnQKZB0kxmjXseKg1cye0gO/Le68rL9l5nWvSYxSakYdVpsDTrCYpPxdbHj2Z61sDVoeX3lcSZ1qYG90QaNBoY288fDsfR9m7S10eLlZMysR3O7+n7OONnqmdW/HgMb+eHnZsfswQ3462gom0+Hcevkjofuq8KVqEQ+XneGazFJaDSqCNuXI5vyzNLDme/7wctR/H4whKe61shW9yQpVQ3xXI9JQq/T4ulkxN6g4+CVqByfw6nQWHrV9+GPQ1dxsdX/NwxVifjkNBwkqVMIoJQN/VjrUfH395ehH3FPnL4WS89PtgKqMukXG1URttt9PbIpLaq6YW+wITY5jYFf7iA0OgmtBj59oAm/Hwphw8mwzOPd7PW8O6QhdnodD33/LxM7V6e6lyOfbwji/M14/FztmDWgLhUcjfxx+CrRCSkMalIJd0cDsUlpONvakJpuIj45ndjkNN5YdYIn/1uh92ZcMinpJgw6LYmp6SSnmmhYyYXfD4VQ38+F69FJ9GnoWyp7VMxmM0v2XmbGb0ez7fN1seW3J9vg5mDgzLVY3vr7BHuCI3G2tWFw00q0re7BlCWHSEhJJ9DTkfEdq/HssiPZzuPvbscz3Wsx9ZdDmdtc7PSsmdoBH5es1ywqIUUl2q49Q5PKrgxu6kdld3v8XO1Yf+I6r/910upz6FLbC18XWyLiU5jQqTq/7rvE/otReDoZGN8xkNo+zriVg7WZRPlTZod+jEYjRqOsxSCKh5u9nsru9ipB04zVIAVg9upTLBvfGnujDTY6DX0a+PDd9gt0q+PNvouRFkEKqJ6aab8eZsWENrw9qAGV3e1YeTiUa/8NAdTwcuRaTDI/7LpAnwYVaVjJhS2nb/DNtvO82KcOcclp/H0klJikNMa2rcLyCa3RajQkpqRjr9cSn5pOaFQSTkYbHIxmzobFUr+iCy52errV8UZfSiuiajQaetbzJiohhc83ns1cb6l/I1+e6V4TG52Wa1EJfL31HGY0aDUQk5TGgp0XOHgpkpf61OGl34/xYCt/5mw5n+38bvZ6vJxssdXr8Hezw/O/YO5EaDSm277fHQ+J5vCVKBY92hLMkGoys+9iJEv3X+b+ppX4+bFWfLM1mLjkVLrV9cHBoOPY1Wg61vTivX9O8cHQRgyftyvzORAKW87cZGKn6jzRsRrOdvrbmydEuVGqAhUhipOXsy0fD2/MB2tOcSI05/yoSxEJmVVRDTY6xrQJYMVBNZvnRSvf/gEe71CNczfi+e3AFa7FJNHAz4WvRjZlwY4LTOwciN5GS2q6ifM34nA02lDLx4mfH7uPuOQ0rsUk8VDrKtTycUKv03LgYhSbTt/A2c6Gfg0rEh6bjIu9nqtRiSQkp9G0shsORhs0Gk2pDVIyuDsYeaRdAP0bVSQqIRVHow0HLkXy6srjjL6vKuHxqmR9ZX9XnuwYyLL9V/jraCiHr0Qzrl0AtbwdaV7FnYj4VI5fjWbrmRs42trwUp+6GGy0HAuJ5npMEvNGN2f/hUguRiQwpVsNbq2wfiUigavRSTjb2pCYko7BRstfR66i1WgY2yaAsNhk1h2/ToCnA93qeHE0JJoP1p6mdaAHXk5GPn2gEbNWncwKUm7x5eazDGteidjkVPZfiGT72ZtUq+BIz/o++LqoIEqIsq5YA5W4uDjOns2qQRAcHMyhQ4dwd3encuXKxdgyIaxr6OfCB0MbsfFUWI7HOBptLAKAyu72/D6xDVcjk4i/7WLUupoHEzoHotdpCYlKVDVP9Do61vIkJc3ExC7VsTfo+GjtGTb895gda3oyoVMgcclpxCSlYjZDUpqJs2FxeDoacTTaMLR5JXQaDbGJqXg5G9l+Npx6FV1w8NCx5cwNqlRwwFavIzIhhQAPB1xL8fCCwUZHJTd77PTJvPHnCbydbZnVvx5xyek426k/ca52BpLTTIxuXYX7m1Xiw3WncbbV83yv2rz3zymiElNpUdWdcQ8HYLTR8uofxzl9PTbzMWy0GmYPbsDpazF8s+08I1r680yPWqSkmRgzfy/nbsTx1sD6/Lj7IutPhtEqwJ2X+tYhIj6F6MRUrkYnsm3fTb7bHswDLfwZ26YqH68PYsPJMJY92SZz/ajbudnriUlKY9wPey0WNHx/7Wm+eagZ7WpUkBWXRZlXrDkqmzdvpnPnztm2jxkzhgULFtzx/jI9WRSXS+HxdP94a+aicrea0CmQp7vXQK+zvIBcjUpk0Fc7uB6jLjgzB9QjOiGFhbsuEh6fgqu9ntGtq9Czng+P/7CPkP+qmNobVDXcqIRUHIw6tBoNC3YE06+h7//bO+/wKsq0D98zc3pL76SQECD03gWk6iqCvSCia1nbwlrWsrvWT9e2VuxlsYO94IKIClIEqUFqQg+E9J6cPvN+f5xwJCYgKJiAc18X18V5Z86c5505OfOb530KFw9MxxsIYjYa8PpV6r0BkiKtBDUNVQMZgc1swBPQqPcG8AQ0ou0m5m0s4rmFO8iMtXPzuI4MbB8dXto4Udm8v4aKej+qEKzfV8MHq/dSXu+jX3oU1wzP4otGL4fDbGBEx1jyiut4YO7WJsdwWQ28ell/rnpjFbXephlFRkXixUv7cmVjBeKZl/dnzZ5Knl24g+z4UPDzwrwyhmbFsLOxKWVFg58Iq5HJA9NIi7FxZ2PW2LMX9+Yfn26g1hNkWFYM3dtF8sJ3O5rN6fqRWawtqGLFzspm28wGma9vHkFqtO0YnsW2S0mtF19jr6R4pxnlBPcG/tE5mvt3mwmm/TXoQkWntQgENVbvqeLKN1Y1cdmP7BjHo+f1aLH7shCC7/LL2F3hpl2klfJ6H3d9tpGAKoh1mEhwWSip9TI6J4EYmwmLSSErzkGNx8/Hawu5bmQWxTVeBDCgfRRBVdDgCxLUBHaTwnMLd2A2KkwemMYdH23g3rO6EOMwYTMqIEkYZAlJknhh0XYu6J/Gf5fu5PP1obovr07tx5ichN/r9B0X1hVUsWZPaHlkUV5ZeNxskLl/YlfsZgMfrt6HJgTjuiYwrEMsy7ZX4AmofLOllB/3VZMeY6drsgunxcB/l+1u9hn/PCOHvZUNZMe7SIq0EAiqLNhcwkUD0vlozV4KKj10SXYyPDuO5xft4IddIYHRMcHBxJ7J1HiDvLx4J2f2SEKWJD5v7L79+hX9uXzmqmaf9/KUvlzz1ppDzvm/l/djVOdfd938QQ1Jos0v/1U1+Pkuv4zH5udRWO0hwmrkqlPac1H/NOKcesziicpJG0yro3M0VLv9lNT6WLi1FFWIcIZF5DEo7GQ0yPRLj+Krm4aTX1JHRYOfrskRJLrMRNtb/vEsrvGyrqCKDYU1TOyZwsDMaL65eSQGGRoCKm6fSlDTkJEIaBr/98UWntyfT7zTzMUD0mgfaycpwkqtJ4CmwbLtFfx36S5O6RhL3/Qo7ji9Mw/8bzMPfLGZmVf0o6Qu5JFxBzQMsgSKjF9VmTokA7dfZdrobKrdARZvK+fB/22hR7uIEzL7B0IicNXuStJj7OypcHPPhC7hrJx4p4U3vt/F5+uLkCX4y/BMhnWIwxtQEcD8TcVMG52NUZH5fkc5kVYTgzKjySupY9n2ivBnpEXbGJARjaZqtIuyUlDZQJ03yEUD0thZVs+cH4tw+1WW76zg7RUFPHVRL9Jj7JzeLZHNRbVU1PsY3jGODvEOvttaiqWxTL5JkUmNsmEzKc3iVFyWwwfR1nkPXUfmUBz4Hn64dh8Wo8KUgel0SHAQ62h7N/2gqjFn/X7u/nxTeKzGE+Dxr/LZWVrPvRO7EaEHGp/06B4VnZOSygYfzy/cwatLdzUZv3hAKreO69SkYdzvQVG1h0tf+4FLB6XjMCkkRVr5fkcF6/ZWE+80c0G/VL7eUsLi/DKuOiWTbsku/jM/n8EdYnBZDPgCGtmJTh6fn8e6vdWYDTIPn9uDBJeZdXuq6JIcgd1sICnCjNkg89GavVzQLw1NCAKqwBvUUCQJb1DFpMg0+IMoskxQ1Qhqgo/XFnLlsPZkxNp/1/NyrHD7gzzwv810T4kg0mbitSW76JUWSYLLgjcQpGtyBG8v380t4ztTUuPFHVBJirDgshhRNYEsg1GWMcgSvqBGvU/FZJB4buF2/rehGFkKLfXMWlnA+G5J3PHRj3RNjuDSQWlYTQo2o0KMw8y0WWvZWR4qk39272TGdklk2qx1BA8q2tIxwcETF/Tizo82sGF/Def3bce9Z3WhrM7POz/sYdn2CmKdJq4dnkVqtI0LXlrepOPywXx983A6xB95Q8niGg9/fmM1m/c3DQaf2DOZu87sQuwx9lC4fUFqvAEkIMZharYc+ksUVns4/anFzZbhDvDNLSPI0sven5DoHhWdPzxbi+qaiRSAWSv3MiYngdG/4zKHxx+kosHP3Wd2wWJUcFoMTJ+dy7bS+vA+8zcV89A53UlyWXhsfh4vT+nLmC7xfLRmH3/qkUS35AgUWeLv4zvxXX4ZCS4z+6vdaEJQ6Q7w4Zq9nNs3lYVba0iJsjGycyKl9X4Kq9wkRFiREWhCEOMwU+9VMSoys1buQdUkBraPpsEXQDk4leUEwyDLRFpNdE508b8f93PZ4HRmrdzLvA3FZMc76JTg4u4J3fh6SzEOi5EXF+1gd4WbARlRPHROD2q8AYqq66n3BmkXbUORJN5cUcBlgzNoF2VjW2k9i/LKOL9fKq8s3slt4zsRZTfx4P+2UNHgByArzsH9E7vxyJd5bCis4cweyVz79pomIgUgv6Semct20SnJSaXbz7TR2djNRuxmI7ed1ol6b0gk2c1GhBDcd1bXFpd/zumdclReEE0TfJa7v5lIAfhs/X4uGpB2zISKqgn2VDTw1NfbWLC5BLNR5sJ+qUwdkkHyUVSDrfUEDilSAHaXN+hC5Q+A7lHROaGpbCxoZjcbwo3i3P4gN7yzloUHxSkczID20bx6Wb/jVpuizhugvN5PrSeA1aSwp7yBv3+4nurGcu8dExz880853PXZJgoq3Vw/MoteqZEs3V4OhIqAuf1B7puzmRcv7Uu1O4AnoGI3KaRE2RCaRo03iKYJnFYDBeUe7BYFs0HhQIuZWLuJgCao8QSwmUKZRAKodgcwKhKRVgOVDX7cfg2X1ci+Sjerdlfx99M6nbApr9tL6li8rQy3X+M/X+U12SZJ8PRFvTDIMte/sxYINQZ89uLe+AIqnqDGvio3EhIpUVaqGvykxdi46b313DKuI9lxDhZsKWZEx3jmbyomzmmmd1oUBlnix301zF5VwIbCWuwmhWcv6cN9czYxeVA6Dx6i0JtJkfno+sHE2M2/eOOu9wbYuL+Wf8/dwsbCGuKdFq4bmcWfuicdVYxGWZ2Xc19YHm6M+HP+1C2Rpy7qjcnw22NWdpU3MGHGUup9TUVGZqydd64aSNIRipWdZfWMevy7Q27/4NrB9M+I/k226rQOukdF56Snot7Hip0VPLtwO8U1XnqlRnLz2E5kxdvxBzUqG59yW6KqwU9AbZ6tcyworvFy/xebmLexONwTaHBWDE9c2Jtps9ZR7wuSX1LPrR/+yN1ndmFnWT3l9T6+yy8jI8ZGWZ2PqgY/nROdvH3lABRZxijL1PuCOCwG8oprsZsNtI8JZXpoGvRIdVJQ5aXK7SfeacagyNT7VWQJoh0m5m0ootYT4LJBGSS5zI2ZShJWk4Far48fdoZSl8d3S6CsznfCZpHYLQay4hxc89YaLEaZjglOgqpga3EtRkVmcV4ZU4ek8/KUPpiNClE2E9E2I+X1fqrcAUBiS1EtNZ4AvdMiibYZ+cefOrN0ewXFNV5O7ZzAa0t3cmqnBPJL6rj1/fWc27cdXVNcTB/dkQirgdx9NWzcX0O/jGhq3IFD2upXNRxm4xF5FxwWI4MyY3j9igH4AipyY9bLwY0PjwRNhAJoD4UnoCH47c+t3oDKC4u2NxMpADvLG1hTUMWZRyhUomwm+mVEsXp3VQvbjHqvnj8IulDROeGo9QZ4buH2JlkZC/PK+C6/jDf/PJDBmdGc2jm+WSPAA4zsFIfTcuy/+vXeIA/+bzNzNxQ3GV++o4JAUOO6kVk8Nj/0pF9W5yOgaozoFIfZoLC1uJb91V76pEeR6LLgCaj8kF9JUBWckh1LrMPErooGYuwmkiKtKBKARI3HT7VXkOg0E2MzYTLI1HoCeIIaEVYjHp/K6d2SMCoSlW4/FqNClN1EgzeAQZZIirBgNyn4VA23T0NIJ6yDFZfFgD+oceOoDnRKcLKuoJr2sXb6t48iEBRUefx4g4LMOAf+gEaNN8CivFKsJgP906NYsr2cdxobQpoNMq9O7YfHH+SsXklU1gcorvHyl+FZmBSJWIeJkZ3ikIBqTxBNCPZUuuma5CIl0sI3W0vJSXTx7MLtLdqaEWPDbjoyz9UBD11Vgx+bSSH2V4gUCN3Y/9Q9scVsJoDz+7XDfAxqslS7A4etM/TJukLGdUk8Is9NlN3Ef87rycWvrGgSp2MzKfz38v4kHqIZpM7JhS5UdE44yut8Lf7YagL+8ckGPrx2MOf0acfMZbup8TR9qnWYDVw6KP2oimR5/EHK6v3kl9ShaYJOiU5iHeZmTePK6338b0NRi8dYvaeK60/t0GSsXZQVTcDkV39o4gFKdFl49Lwe/HfZbib1SsYb0Cita6Cw2kOHeAdBTbBuXw15JXX0TYukQ7yDfdVefthVQZTNRK/USFwWA3WeUNyJSZVQZAVvQGXT/lp6p0USUAVmg4xAUOsN4gmoRFiNiOPjaPpdsJuNpMfaeX/NPh7/Kp/z+7ZjWIcYimt8ePxBPAENk0Eiv6SOeIeZT3ILmbuhmJ7tInBaDJzVM5mL+qciyxL+oIosySBACEiKMLOxsAZJArdfZXtZPQMyokmKsLCn0s3jX+Vzdu8UIm0mPlxbiN2kEGk3cfeZOdz/RfPln7sndG0xhf3nlNZ6+ffcLXy2fn/YQ9c50cmLl/Y96sBnk0Hh8qHt+TR3fzOPY06Skz5pkUd1vEMhy2A9jAiLsBg5mozojFg7H18/hK1FteTurSEzzk6ftCiSI63IJ3Bclc6RowsVnROOjS0EAx6goNJNjTdAhzgHH18/hIfmbvmpomt2HP88I4fUqCNf2qjzBvhifRF3fx6qdwKgyBK3ju3IxQPTmqQ613kD4Y68MXYT6TE2Khr87KkIxQTUeAKYDXK4SFyMw8TlM1c1u2kU13p5eN5Wpo/qQP/2Mdz6wXo2FP7kHUqKsPDwOd2Zu6GInu0i+fuHP7Kq0TU+oUcSIzrF4gtomAwykgTzN5fg9quM75pA34woKup8/FhYgyxJ4biXt1fsIb+kjpwkFw9O6kZazImZ/bOuoIoFm0s4o3siV5+SSVGNh+JqN+kxVpAk9ld7qGrwkxFt46phmZzbpx1RNhOVDX5W7q5k9sq9dEtxcVH/NG5+P5cO8Q5uPLUDs1cWMGVQOg2+IOv31pAWY+PRL/PYU9lAdpyTf5/dndJaL1e98VOn7Ie/zOPKYe15dWpfps0KNUDsEO/g7jO70PsIRIE3oPL8oh18mru/yfjW4jou++9KPrh2MAlH6VEIVUkeysxlu5i7oQiTQWbygHQm9k4mMeLYLKPE2s1MHZzBA4eIz5k8KB1FPro4mKQIK0kRVk79lTVjdE5sdKGic8Jh+QWXsdJY2CwrzsGTF/aixh1AEOp6e7QBtLvLG7jzk6b9eVRN8Mj8PHqlRTI4KzY87rAYiHOauOP0HBChG0pihJm0aDsvLNoeSjNuFCntIq3UuIPsrfS0+Lmbi2oZmBnDQ3O3NhEpAEU1Xv756UbundCVxdvKwiLlljHZnN4jiT0VHtbsriTSZqJfehTn9WtHjTuASZGxGhW2u2v5cM0+OiY4uHJYJrvKG+iXEcXZvVMwKDL3ztnMY+f1+N1TuH8r5fU+Xl0SKlF/8YA0Nu2vYVtpPR3iHdhMBt5dsZNlOyrolhJBr7RILCaZJz7LZ1Oj8O2VGsGMi3tRXu9HE4JXLuvHTe/nsqvCzcUD0li8rRybycCozvF8uGZf+LqsKajiitdX8c8zchjaIaZJ7ZXXlu5idOd4vr1lBH5VYDMqR5xZU1bnY9bKgha3FVS62VflOWqhAiGxcufpnbl2RBaSFBIWx9IzIcsSE3okM29jMWv2NI0tmToknfYnaAq8TuuhCxWdE47OSS6MihT2cBxM77RIoqw/eTmcFmM4G+ho8QXVcIqzUQkJH00ItpfWowl4buF2uqVEhI8f6zDz/OS+3PrB+rAXBcBilHnmot5UNXpO0mNsvHZZP4prfc0+02U1kBplw+NXUWSJgio3khRafjApMsOyY4myGdleGmpOGG038f5fBuEwGzAbFardfmLsJkbnJCABLqsRr1/DqEioQlDr9dMxwcUrU/qFM4RsJpmsOAeKLKFqglvHdaSywXfCCZWAqnHXmV2wmRSqPX72Vnl454cCbCaFdlFWrh+ZxfayBr7LL2NrcS3PXNybfulR7K/20D7Wxt/GdGLOj0V8tGYfVqPC38Zk89pl/dlb5ebqN9c0WUa8dkQmV53SnleX/JQC/8zX23jo3O5NhArAK0t28tzkPthMR/dz6/GrLbZoOMC+Kjd906OO6pgHMBkUElzHL7srIcLCC5P7kFdSx6frCrGbDJzXrx2pUTaiTuC+Ujqtg56erHPC4Q2ozN9YzN/ez+Xgb6/LauCDvwyhU+KRF8A6HLWeAFfMXEW/jCgGtI/mx301KLJE95QIFmwuYfnOCt7/y6Bwj5xaT4Dps9e1mBbtNBv4+PohBDRBrN1EvMvC9tI6xj25GE2EvD13nN4Zu0nBbjbgshrJ3VtNkstM5yQXu8oaUBSZrzeXUFLn5dw+KXROdFHl9mNtbGSoCoEiSaiaxoZ9NWQnOvEGNGo9ARJdFhzm0D5GWUZRZPzBUMXagKYhBGwsrGH+pmKmDM4gwWWmfeyJUZ9CCMHeSjdl9T7MBgUhROOyV6htgCJLVNT7MCgyDrOBXeUNxDvNlNX7iLGbsRhlyuv9JEaYUGQFVdWwGBW8QQ0QSEhIwKb9Nfx19k/fuecn9+HvH6xv0mjyhUv7cN3bofRnWYLhHeMY3jGWs3omE+s4Ou/H3ko3Y574Dl9Qo2uyiwv6pRLnNFPt9vPhmn3cdWYXeqf9OqGio9Pa6OnJOic1FqPCmC4JzJ8+nNmrCthd4WZoh1jGdUmgXdSxS1e0mRSmje7AnB+Lwo3oDnDN8Ez+OioLx0HZQ5UNfhblt1y7pc4XpLjWyynZceGxaLuJ8/q2Y876Ip6+qBcPzd3Kn4e1Z+6GvcQ6zfx5SAZ7Kj18mrufjGgbPVMjSI+xcXbvZGIcZjwBlS1FdazaVYlBljitWyJWk4JRlsiKt5MSYaHOq5LgDFWrFQKQJCRCgkbIEtWNAbef5xaybm81fx2dzcylO5kypD0mRSHlGJ7P40G128/CvFIenreVklofF/ZL4bIh7fnP/Dy+21bONae0Z3zXRCJtJgyyREmNh0SXhbUFVXSId/LBmr3sLGvgngld8Pg1yuo8fLWphEi7kUm9Ulizp4q8ojoGZsUQ77Ly1d+G88rinXyau5/iGg8vTelLjSfIur1VfLhmH0qjmyonycmdp+fw7dZSPl5byOL8cq45JZPOSS6ij9CjEO8yM2VwOk6LEZfFwCtLdjYu95i5fEgG8XqfG50/CLpHReeERtMEQU0ccZEqf1DD7Q9iMxmO6D1fbizi2sYn5J/z/jWDGJAZE36dV1zH+KcWH/JYz1zUi7N6pTQZK6rxsH5vNZ/m7mdflZu/jc4m1mHCHdAwKzKxTjNldT5kSSLCZqTeFyr0ZjLIVDb4cJiNfLMlFCx7Yf922EwGVE00LvWAQZJwB4LIkowiS1iNCpoQWAwyhdVuNAGRVhOyFPIdqEKgahpFNV5UVTC8U/wRndfWQAjB5+v3M312LgDRdgNf3TSCggo31W4/mXEOPlm3nw7xdnq2iySgalR7gkRZDRgMMtUNfhRZxmIKnZuVO6pQFImMWBtmg8Iz32xjcFYMtZ5AuMN1hNXIjadmMSw7jv8u3cXn6/fjVzUu6NuOy4dm0OBTqaj3kx5j46XvdvDJzwJhrzklkxtGZRFhPTKxUlbn5d2VBTy5YFuzbdcMz2T66Oxm2Wc6OicCukelDdHgC1JW56POG8BuNhDjMB3xj5TOLyPLEqYjCAT0BFQKKhr477LdbCmqpVOCkyuHtSctxnbI2IEat5+XFzcvw3+AN5bvpmdqJObGSq5Oi4EYuylcUv3ndEps/seYFGHFH9S44d11vHFFf8wGhcXbKvgst5AGn8op2bFM6pXCuysLKKz2MHVIBnN/3I8sS0wbnc2KHRW88f1uXprSlwafxvyNhXRMcOK0GnFaDOE4lOKaBiKtZsxGGZMi41dDRd8cZgM+VUMT4AuE0m43Fdbyp+5JRDhDdUmORaXSY01JrZcGXxAhQk0GT+uWiCRBQYUHASREWAlqcF7fdnyXX8adn2zAaTFyRvckzAY7izeVkBXvYOHWUtx+FafFwAX9Unlu4Tbyiut58qJe3DiqA3XeIKV1PtrH2qlo8FPjCZAcaeMvb60JV3jt2S6C0TkJXPn6avY31vpwmA38fXwneqdHcc/nm8LLRS8v2cn5/dqFfwM0TVBc66W0LpRCnRxpbZL67gtqvLhoZ4vn4LWlu5g8ME0XKjonPfo3/BC4/SGBsXJXJbXeIAPbR5McaTlkZ9yWKKn18p/5eXy8rhC1MW91eMc4Hj6n+1H1u9D5baiaYMWOCq58Y1U4ffjHfTV8tHYfL03px6md4jC0UNjBr2pUNDQPeD1ASW2ofP8BoZLgsnD76Z257cMfm+07unP8IcudB1SNlEgLmbF21u+rQQiBw2ygsNpDt5QI/KrK6Jx4QJAdb+eeCV0oq/dT4w4wslMcp2TH4vGr5O6rwWJScFoNbNlfyyPzt5IZa+eFyX3IjnOCFPosTYNAUMNuUliWX87yXRVsL61jWHboWIOzorl/zib+PKw9MQ4zJkPbEdZVDX6WbC9jTm4RhTUehmRGc+GANFRV0OBXMRsknvp6O9/vqMBhNjChZxLjuyTySpWHWncNXZOcRFqNjOsSjy8oOLd3Ct6gitVkwO0Pcs3wTHxBwV2fbgxnA8XYTUwbnU3nRCfLd1ZSXOtpUoZ++piO3PjuWtyN1YD/OiqbbikRbCisJspm4q0/D+DjdYV8vLYQgCXbyslOcBJUNX7cV8PVb64Oi1tFlrhyWHv+MjyTGIeZOk+ofUJLqJqgpNZL+gmaSq6jc6ToSz8t0OALMn9TMbd+sJ6D+4mN7hzPQ+d0P6JCTW5fkPu/2MzsVXubbeuTFskrl/U74bIqTlSKqj2cMWNpi2X1I6xG5k0/pUXh6A2o3Pf5Jma1cA0Bbh3XketGdmjSzK/a7WfptnIe/nIr+6o8OMwGLhucHoopOMT3Zl+lm71VbpbtqMBhMtC9XQS+oEpatJ391R68QZXUKBuqpuGyGCmt8/HNlmLO7t2OCKsRb0BFkiT8QS30fzlUH0WRJUyKzK6KBpxmQzg+JcJixGhQUORQZonJoGAySri9GqoQBFSVem+QqTNX8dF1Q8hsI03f/EGVNXuqqPYEyC2opluKi5wkF2V1PvxBDZsp1PDRbjYgREiUKZKE2x8k2mEiqEFQFeyuaCDSasRmNrC/2oMiSciyxIodFQzIjGZ3eQP3fL6Jn/US5KkLe/Hjvhr2Vbn5anMJAN1SXIztksiTC/IB+PfZ3ViyrZx5G3+qTixJ8LfR2ZTV+3l7xR7uOiOHK0/JpKDSzbgnv8Mb+CmzR5ElrhuZxejO8eypdGNrFMEzl+1m+c6m2UQAc/46jO4pEcf6VOvoHHf0pZ/fSFGNl1s+WM/PJdw3W0v5fP1+/jy0/S/WHSiv9/Hhmn0tbltbUE1Z3YmX/nmiUtHgP2TvnxpPgPJ6X4tCxWJUuOqUTD5eV9gsTdRlNTCxV0qzjsORNhNn9kymf/tovIFQl+I456Hb2xfXeLlx1jpy91aHx0Z1juOCfqlMem4Z/qDGI+d1Z1dZAy6rkaXby5GQOK1rMpUNfjbvr2VgZjS+oIaiSEQYjQQ1gRCCGk+Qem+Q2asKuHJoJrFOE35Vwx3QcBlkVBG6QXv9Kg0+gaJIKJJErSeIJMEDk7pRfZh+Nb83JbU+nl+0g86JTs7r2w6DHCpolxxpBSGQZYlqd4CiGh8Sgh/31ZAWbaNjorMxzkdG1QRp0Va+31bB/83dwshOcZzeLQmLUWZc1wSWbi9nT0UDt4zrFG53cIDXlu7iz8PaU+P56bvUIc5BgsvM85P7YDEqyBIsa2wueQAh4Mmvt/HylL58uGYvp3QMBVQvyS9rIlIAHjm3Ows2l/Lstz+V3rcYZR6Y1A2zQW4SrB3vNBOn/4bo/AFoe4vPbYDPcwubiZQDvLpkF2X1h14OOECdL9isvfvBlNR6D7lN59jyS07Dw21Oj7Hx8XVD6JMeGR47JTuWj68bctgMowSXhfQYO8mR1kOKFH9Q5ZUlO5uIFFmCywZncO/nm7hlXEfeu2YQyRFWOiY4sJkVUiKt9EmPxGlRWLajnJnf7+ahL7dS0eCnot7P/V9sZkNhDcU1PiKsRtJibNx5eg4p0TYEAptJIcZmIBAUaJpACLCZQynRQhOAINZpwiDLJEaEUprbAkII5m8q5i/DM+mbHsWz327j6W/z2FJUi90kYzUp2E2hPkZmg0Sk3cSYLgl0SnQiE2qvEFA1PAGVQFAwICuaj68bwmWDM9heUodRkVm5uxJVE4ztksjw7FgSI5qKgC1FtRhkiTFdQtVRs+MdXNA/lQWbSrjx3bVc9cYqXv9+NzMu7k3HhOZeqK82l3DvhK7hbJ0tRU0rLPfPiGJvpYf5m5r2ivIGNO74aANTh2SEY47sJoVXp/YjwaULFZ2TH92j0gL7qlquFgpQ0eBDO4LVMrvJgCzRzH18gCOtTnkyUFbnZUdpA/M2FuG0GDizRzJJkZbfLag4xmEmwmps1vcHQvVNDnctDIpM15QIXpvan9rG90fZTEdd4bYlyuv9vPtD08qjgzJjWFtQxYyL+1Dt8bO9rJ5aT4BuKRGYjTLtY+0oUigYdlKvdkzsmYJRkdEQ2EwG7j+rG6oQBFUNTQgMyHgDKm5/EAR4JRVr45N/QBVoCAyNX1JfUMMbBLNBYWdZHSlR9sP2bPk9KanxMjgzhooGP6lRNqaP6YRAY9WuKlbvqaZ7cgS1gSCSLBFtN2NQQNVCRftkIMpqRJYkVAS1niBVdQGibSbsJoVTc+Jp8AX5cM0+imu8/ONPOcQ7LbxxxQAqG/yU1ftYtauSHWUNlNX5qPH4mTaqA/0zovlozV7Gdk1gbNcElm4rZ/6mYtYWVPHsxX24fObKJn//5fU+xndNCLdd6JMexdsHXf+ze7fjya/zW5x/UBNsKarlrjO64LQYGJwZQ1Kk9Vc1J9TROdHQhUoLjM6J5+N1hS1u65sehdX4yz/esU4zp3dLarFJXccEB/HOP0bXz5JaLze8s5bVB5XSfnbhDm4e25GpQzKIOAY3/F8i3mnmkXO7c907a5t5Tx48p/sR1aOIspmIsh1bYaVqolmgZJzTTL/0aHxBlTs/3oCqCf5zfk++3FTMztJ6rhqeyZzc/dR4A5zdKwVNCKoa/JzSMQ63P4gQAoMsE2E14varqFpIwHgCQZAkFCTMRiUUvwEEg6AJgSRJWE0KtR4/DovC0A5xBFSN4joPCREWTIfwCv0eVNT7eG3ZLsrr/FzQvx0FlW7ax9qIdZo5rWsC/qBAIDAoMpoQ1HkCFFS5SY22YVQkTCYDNqMcjltxWgxEWk0YlNDcNSHhs6o8c1EvrEaFh+Zu5bWlO7l5bCcAPsvdj6oKzu/bjq7JETgsBhwWhd3lbgxKaH+AcV0TeG1qf/7xyQa+3VrKiI7xLMz7qYvw6M7xRB0UjD+gfTSRNmN4eS3CaqSs7tDe2v3VHh44u/vxOMU6Om0aXai0QO+0KFIirRRWN/WsyBLceXpOk0Z0h8JhNvCvM3No8AWbrCvnJDl5aUq/Q2aAnEyomuDjtYVNRMoBnliQz+iceCKsxz8Q0KDIDM+OY86Nw3hh0Q7ySuroEOfg+lOzyIpzYDyaVq7HEJtJISfJyZaiuvBYYZWHeKeZq99aTXm9nxkX9+bfc7dSUuvlxcl9KKz2MCgrhoIKNyajTOdEJ0FVgCQwIKEoMg1+FV+9nyi7kXpvEK9HxWKUEYDJIOH2BVEF2E0yXqGhaDKq0LAaZZxmEzXuIHVSEFmWMBsMFFd7W7VJ4bqCarqnRJCT5MIf1EhwmSms9vK/H4tJibLSJy0SRZap9QZ4f1UBOUkRDO8YhywJPH6N8jofi/LKKK/3cWaPJJIjLHiCKi6DglFS8KoqZXU+cvdW07NdJH8b25FN+2t4a8Uelmz7Kd5kUX4ZPdtF8NKUflQ3BLnmzTUUH7SE+8HqfXyXV8aj5/Xg0S/zGJXzk1CJdZg4tXPTmjQpkVbeu2YwN767lm2l9eyuaKBrsiucbfRzBmfFtDiuo3Oyo2f9HIK9lW4emreF+ZtKUDVBpwQn90/qSo+UCKxH0bOjqsFPRYOf8nofkTYjsQ4zsX+QALiSWi9nPbuUkhZ62gBMHZzOfRO7/a42uX1B3AEVm0k56t4rx4MVOyu46OUV4deRViOvTu3HeS8uJyvOzqWD0rlvzmamDErnjB5JPDJvC2f3aUeHOAdOi4E6b4CECCu+gMr+Gjed4iOQJIFJkbFbQsXfajxBLEYZTUBZrYd4lwWrScEgy3j8aih2w6/iDYbEiipCdWeMisQTX22joNLN/RO70qNdBCbD7+tZKax2883mUl5duouCSjcZMTYeObc7sQ4LAVWjosFPcqQFoyJjlGUMcsj2oCYQSASCKkgSDpOCJIMvKGjwBrCbjXj8QZbvqCA1xkZyhBVJAlkKNbS0GhVGP7GoxX5S/zexK3azgZvfX9+izdeOyGxceoOZ3+9mVOd4/nVGziFbEpTX+6hs8COEoLTOx5TXVjbbJ8Fl5pPrh+plDXROGo7m/q0LlcPQ4AtS2eBH1QQOi+EPIzCOFUU1HsY8/l2TXigHc2aPJGZc3PsPvc7e4Auyfm81987ZRH5JPRFWAzMu7sNl/13JeX3bUdng59utpbx15QAW5ZXhshqxGiRGdY7HpCgU1Xopb/CR7LKQGGkhEBAYjTIltV6CQUG0w4TTbEBDYDcaEGhIkkxQE/gDQVSNcByK2RCKfQlooUBbAE9AY/P+Wh7432ZmXjGAjgnHpo/SkeANqLy2dBePzc8jJ8nJTaM70r99FL6ghiRCSz1+VUMCTAYZo0EGIeEJBAlqoWJqFqNMvS9IQUUDSZFWzAalsfmihiLLmAwyuXur+GhNIWf2TMZsUIi2mwhqGpEWIwVVbgJqqBLwip0VvLOigLRoG1MGp/OvTze2aHeXJBcPndOdaLsJAUTZjrwxZp03wPc7Krjns01hb82wDrE8MKkbGXrXYZ2TCD09+RhhNxv0qo+/AafFwCnZcXz5syyGA0zomXzSipQaT4CyOi/Ld1QgSxKDsmKId5hx/iwmx242MKRDLO9eNYgGf7CxHoqKJIXK/R+Ih3KaDczbUMRj5/UgKdJKfkkdecV1ZMTa6ZYcQYM/SFmtD1mWcElG2kVY8AQ16r1Bqt0BjIqEQQmEKs0qMk6LgoBQ4z0p1DW53hdEUSQ8ARVVDd38A6pK12Qnj57bk9krC7h1XCdsv9PfRFmdj5nLdvHRdYNxmkNVduv9KjajTK1XRQRUJAGaFJqHySBTWOUh0mbCqEj41VDsiixLxLmseAMaAgmbUSaohYo6bi6qIb+knmmjs5m7sYjXluwmM87OreM6Mid3P++t3ktAFUgSjOgYx3OT+/D4V3mYDIf+3lpNCgkuM4kRTb0ftZ4AflXDZTEc0jPltBgZ1yWBnu0iqfMGMCoyUXbT7xLLpaPTVtHvwj9DCNFYnlvFZJCJcZjaxBLBiYjDbOTmcR1ZmFfarA5JVpydHu3aTqEqty9Ieb2P8gY/FqNCjN1EwhEU9muJygYfzy3cwWtLm5bfnz46myuGZrQY4xTrNBNLyGNX6wkFyn6bV8p9Z3XlfxuKqPEG6J8RhcmocM4L31PtDvCn7ol0bxeJIoPLYkQTgiibMVzy3mjQiLSFAjR9QQ0hBE6LgXiHEQ0JX0DFaVIwGhVkQsXGZFkioIYETr1fxWIwENQE2Ql2fMFY6nzB302oVDb4ee+aQVgMoe7QIU0rIQM2kwGzDJIsIwmBX4REXaTNhaoKvAENpxSKk5Ial34CqkAAEqCh4vELLAaF0Z3jmb2qgCmDMjijezKltT4UGSb1TqGw2svCvFKEgEV5ZdR6gtx+Wmcshwmov35kFiaDzN5KNwZZwmSQWb+3mhe+20FlQ4CRnWKZMiiD1Ghbszo8AJIkkRhhITHijxFwr6PzS+h34IOodvtZlFfGQ/O2UFLrw6hInNUzmVvGddLXhn8l7WPsfH7jUB6et5Xv8suwGBUu6p/KVadkkhTRNs5pRb2Plxfv5LWlu8K1b9pFWXnlsn50TnQetdfnx301zUQKwNPfbGNohxgGtD98UKTLauTOP3UmMcJCcY2XSb1SWJJfzoX90/jru+uodge4Z0IXjIpERoyVwmovMXYjMXYzbn+QTUVuNu6rYWSnOKxGA2ajgsUYiuFoCKgU1fobmw8KjLKE3WLAIEnYGqvZugNBjIqMSRYoSihrKKBqZMXbMf+OfX8ibQYIOXyodPuRJYiwGvBrArMi49MEqj9AlMOErMr4A0GMioKMoMbrx2ZU0AQYZBl3QCOoCkyKhK+x7YE36MegyETaTIzvmsj9czZjNSlM6JmML6Cyp9LNreM6Euc08f7qUPHGtQVVRNtNJLjMjOuSEK5Qe4C/j+uIzWRgymsr2bS/FqtR4dw+KYzoFM+WojrqfUF2lNUze+VePrl+KB0Tf7+lNB2dExU9RqWRn3diPZhuyS5mXtGfuD9ISvHxoM4boM4bqngaYzf97kGZh0IIESpr/tmmZttcVgNzp51CuyjbER+v1hPgmrdWs2JnZYvbx3ZJ4OmLeh2Rl84fVCmr8xNQNarcflRN46XFu+iTFondbGBYVsjDYTXKFFZ7Ka7xMKRDLBEWBYMiI4SEIofm6PZrWIwSRkVGQmoMHA09vQsBQVUDKdTkUW4co9H/EErhFbh9Kn5VIynyyM/Hb2FvZT2+oKCwyk2f9CgMkhSyXQal0buCFCrYJxGqWSRJAlUNzUOSBAFVQ24MGjYZQinKdb4gu8rqMSoKLy7ewcKtpZzbtx292kXyz8a4kzO6J9EtxcWby/fw+hX9OWPG0lB2FTDz8v6c2jme8jofO8rreX/VXoSAKYPT8QY0Lnl1RbM0+K7JLiYPTOcfn2wIj52SHctzl/Q5JjV5fomgpmGQ9fqeOm0HPUblV1BS6wvXQ/g5G/fXUlDp0YXKb8BpOfKAwt+T0lofzxxUrvxgaj1BcvdWNxEqJTVearwBDLIUqq1ib7qM41c1yupaLtcPobiLljJJWsJkUEhprH4b7TGxrbSeKJuJ3L0hb4loFBtT/ruSER3jmDo4g0V5pYzsFI83EMBqlFFkKfQP2FHuJsllDcWmBIIEVUG0zYTJKCNLEsGgQJFBlkJLJEgSmqriDWj4ghq1Xj+yLKNVuUk5CvH2a6h2h85hhMWIKcaBL6CCQcFoAFUV1PrVsKgyNC6fyBIYlVDWTlDTQjE3koQgtOy4p8JNaZ2XOKeFdlE23AGV60dmgQilFqdEWhnYPpqVuytZmFfK6d0SafAHeXdlAVcMyeCVJbtIjbaGKxLHOs3EOs0MbB+DEILKBj9TXlvZYqXjTftrsZsVomxGqhrrpizZVk6NJ3DchEqdN8C+Kg/vrdobCmzPSWBIVmz4O6Wjc6KgC5VG3P5gk5oIP2fDvmr6pkf9jhbp/B6EhMWhi2xtKarjzB7g8QfZVlLPm8t38/n6IvyqRr+MKB4+pwcd4n9KO3VZjAzpEMOOsvoWjzc8OxbHEVR7VTVBWZ0PVRPIMizaWsqdn/yUZTJ/UzHtoqw8cm4PeqREMLJTPLe+n8tzl/ZlT0UDiRFW6n1BXFYjflXDYpRJj7ZhlJVQKf3GmA9/MLQkomkaJpMU9rYgBAiBT9WwWxTMmozDouDxa8zZsJ8/dU8i5Th4Vmrcfup8QWRJ4DIZCAhBlN2IUZHQNIEvEGo0aDYoyIqEpmoIDWSZcME3pbHqrtkg4w1olNf7qfEESIq0YjMZWLC5hGi7iSFZMVR7/Nw8riPfbC3lix/388i5PahsCFDrCRDrMPPAxO78Z/5WHj63B+O6JOAOaJTVejHKEk6rMdyvS5Ik3H6VzUUt10AByN1bTYd4B6t2VzW+55ifvjAN3iCfrits4imcv6mEBJeZ9/8yWO+4rHNCoQuVRkwGGVNjumNL6IFtJwf13gDl9X52lTdgNSokRlgY3yWe+ZtLW9x/QEYU+yrdzNtYxPKdlSS6LLw4pS+f5RbyWe5+LnhpOZ/fODTsdTEZZP48tD0frt7XrOqs02zgvH6pKL9QYK601suHa/bxypKdVLkDDM+O5ZoRWfzj9M78d9luyupDAubA0/It4zoy6fnvmfvXoSiSRKzDjKaFAmu3l9ajCUHvtKjG5RENkBAIAmooI0ZWwKjIBFWQZIEmgUKo4Z/dEPJQmA0SQVUjaJA4p3cK9T6VoKphOIbF8oqq3QCYFQlZkjEooSUogxwSKUFVYDbKSISEgSYENC4hCk0jqAlUVcUXFKHS9ZJElSeAw2Kg2u2lqMbDtFnrGNslAatR4aM1+xjaIZaqBj/jcuKZPCiduz7d1ERs9E2P4tnJfTAqMt9uLSU73kGlL8iry3YDcGH/VHqnRhLvsqDIEhaj3KzR4AEiG6sFH2BU53gibcfHm1Ja7+Puz5svZx7wHD9+QQ/s5rbn4dTRaQldqDQS6zBzbp8UZq3a22yb1ajQTW+lfsJT0eDjle928vKSneEeLHaTwuMX9CSgwbdbm4qV7Hg78U4Lf5qxhFpPMDw+a1UB90zoSp03yLdbS1m2PRToeoDUKCsfXTeEuz7byJrGqryDM6O5b2I32v1CUHZlg5+7PtsYfvqdcXHvUBl4RaZdtI3bTutEUoSFJdvKeWnxTr7cWMy1I7K476yuVLiDPPftVirqfdw3qRsbC2vo3s6FIstsK60n0mLEaJBRhSDeYQp1S0ZGiNCNPbRsIlBVgSYJFEK9cYwhPwuKLGFWQhVu4xwyJdVuYlzWw2bAHCl1ngB2sxLK0hFgsxhCIgUIBjWQwWRS0LSfPBFCgKapoVTjQBCJ0DKQQYZqj4rbF8RmMbC30k2kzYI3EOSFS/vyyuKdLNlWTkqklY4JTrokRzB9TDZV7gA3juqAUZHZU9HAS4t3srWoFm9A48o3VnPHaZ15dekuVu76Kf7o262lDGwfzTMX9ybWYebCfqm8sXxPs/nJEnRvF8mTX28DQuXy/3F6znFbDl2+o/yQzTa/2lxMlTtHFyo6Jwy6UGnEYlSYPiabvJI61hZUh8dtJoXXrxhA4q9MVdVpO3y/vYIXF+9sMtbgV7nx3XV8cO1glu8ox9P4NJwZa+flKf24+YP1TUQKhG6Q//7fFp6/tA/fbi1lybamQsWgyHRJdvHqZf2o9YbiESJtxiNqwlhW52X+phJcFgOvTulHvT+IIkvUeQOsK6jm3R/20OBXObNHEg+f052/f/gjVqNMuygbF7+8gj6pkTx2fk++yy9jf7UHDeieEkG0zUhZfQAZQazTQkldqFJyUFWxGGQkWUaWQinKBkkOBdZKIISCFopYwSDLGA6aQoTNhKaq8BuFSmmtF5NMsxozQgIEGA5aKhNySLjIkoyQQ8nKnoAaWgqSZIKqRl5pPWaDQoMvyNPfbic92sZZvZKRJYnzXlweFqn7qz10TXbRMzWSoCZhNRmYu6GI91fvo0O8g8fP78nKnRW8umQnLouRWm+giUg5wA+7Klm+o4JJvVO4dmQWq/dUNSmDL0vw+AU92bivml6pkYzqFM/ZfVIO2337t3KoIosQCjpWD9PZXUenraELlYNIjLDy8pR+7K/2sKGwhniXmZwkF4kuyzF1cev8/pTX+Xjmm20tbgtqgkV5pXz391PZX+PF0lg/p84bZN1BovVg/KpGSY2XOIeZrLiWS6NH2ZsH2/4S6/fVIEnwwqV9+SS3kHd+KAhVYpVgRHao4Ni0Wev44sciOsQ7mDIoDUmSeGjeFrqnRHD3WV1YvbuSWm+QBZtLeGP5HlxWAzMvH4DFKLO7vAEBOCxGCqs8uKwmZEkCVQWDjCYk5MYYFbXRQ3EgC8ivahikUK0VTTRWstUEpbUe4l1Hf9NVNUGt14/DLGOQlXCNkwM0rt4gGpsmHvw+vxqk0hMAEbp+TovCtuI6Ktx+3L4gnZNcLMov5ayeydw4ax0zv9/NExf0pFdqJGsLqpEl+OjaIeyuaGDuhiK6JLlQZInLhmRw8YB0znlhGXd89CMvX9aPF55bxhVDM/jix+YNRg/w5vLdnNo5nqQIKzMv78/OsgaWbC8n3mlmRMc4ElxmQGLq0PY4TMovLv/9VoYcpi9Q95QInJbQT39FY/l+b1AjymYk3mluMxl5OjoH0IXKzzgQyd8jNbK1TdE5hgQ0rVmTyYPJK6kn1mEm/iDPWbW77pD7A3iDKmaDxMReycfMzkirkXN6p+D2BRmcFUO/jGhUTfDhmn0syi+jvMHHTWM7ct+czbzzQwHvXjUQX1AlM9bBJQPTePTLPLYW19EuysbN4zqyp8LNjG+3s3p3BQFV0CctitmrCvjL8A4ojV6HlTsrGJodGyo5b5CRZJBlGZMihZdZJAlMB91c5VCgCBZZwqyYaHD7sNuOvMVEea0Xp9mA6zDF48KfJkkIIfAFBf7GwF+fGqqwW+8JoBgUNuyrw2SQKavzEeswY5AlTu+aRK3Hz19HdWDmst3867ONPDipO2sL1vGf83vyWe5+hnWMZdPmEp78eltjp2mFPw/N4N2rBnL+Sysor/fhMBswyjKBQ8SvAfiCWrjtQLzLQrzLwqAWxIKV30cEJEVYOL1rIvN+VhXaIEvcP7Er0XYzO8vqmTZ7HRsLQ94fq1Fh+uhsLujfjmi73i5Ep+2gCxWdPwRWo0JOkiscM/JzhmTFIP+sSqjLaiQ12sreypYFToc4B/dM6ErSMSwG2DXZRVq0jfu+2MzyHRUhOywGrjwlk95pkTz19Tb+OsqKSQndlK0mBSEEQzrEcPErP9XvKK3zsbagiutHZjGxVzJDsmJ5+pttBFTBBf3SMBokZGQMQqNHaiTV7gBmo0JZnQ+XzYjLYqTa7cNilPH4NRwWGbvJEPK+/AxJkrCYDaiqGop1+YUncq8/QJT90PERqgYBVQ2VwBcghEZQQJ03SIMviMNsxGlWqPer1PlVhE8FCe6bs5kdZfW4LAbuO6srRkVm3sYibCYDj57Xg63FtSiyhFGR6JjgpLLBz5rdlRgVmdQoK7sr3Lj9Ks8u3AFInN4tkW2l9YzuHM8PuyoY1TmeH/fV/GzucHbvFKYOzmBvlZvyeh8xDlOr3+ij7Wbun9SVUzrG8fLiHVQ2+BnQPppbxnUiM9bO/moPF728gtKDMt48AZWHv9xKtMPE+X3bnbTtLXROPHShovOHINJm4vbTOnHBSyuabXNZDJzaKb7ZeILLwr/P7s7U/67k50v6UwenkxXvOOauclmSuOatNRRUusNjtd4gTy7I5x9/yqF3aiSFVR6i7Eai7SasRgWPX+Xx+fktBk++vHgnL03pS503yIQeyXiCKt6AykPztuIPaIzvmkhGrI2yOh9mo0L7WBuqFvIwWY0yDrMBgyxR79Pw+P2h5n+SREAIzIrUWGQtVNU2ZD+oaig+QlF+Oi8HxpBCRecANA2CmgpCUO4O1TwJFWUToR5EhMSJ1WTAYZJ5eN4Wvt5Sht2k8NA53Wkfa6e4xofZKLO9pJ5//KkzM77dzg2nduCJBXlsKfrJI/bBmn1c1D+V4dlmMmLs1HoDdG8XwQer9+FXNa4Y2p4om5F752ymssHPa0t38cQFPZFliWFZsUx6fhnXjcwiLdrW5No8MLEbeSV1nPfi9+H6ON1TIphxce9WbyIY57RwycA0xnaJR9UEdrMhHLy7pai2iUg5mCe+ymd4xzg9Lk+nzaALFZ0/DDlJLp67pA/3fL6R8np/45iTJy7odcjAxr7pUXx2wzAe/yqP9fuqSYywcOOpHRiUGROuoXEs2Vne0ORGeDCvLd3J38Z0xGE2UOsJ8vj5PYlxmNlSVEtZfcs3naAmqHL7cUXbaR9n5/mFO8JNIg2yxMTeKSzKK2PWygJqvUGSIyw8cHY3hICK+lD/nDinmbySOpZtL8dlMTKxdzKxdjMNQmA1hsrTl9f7QYLUSAsBVWBUJPZXu/EGNIyKRJLLTL0vQIM/VFSuzqsS1DSsJgNRVgMWg8K/Pt3AVadksaGwhjnr92M2ylzYL5XsBCcyBu4+syvLti/hoXO68/WWUv63oSgcFDo4K4acZCf/PCOHLzcWNxEpB5i9ai9n90nhnD6hOb98UGD1lxuLyYqz8/j5PbnqzdV4AiqyJNEtOYIEl5m5007hrRV7eGBSN5ZtL2fexmIGtI+irN7Hmz/L8tlQWMOlr/3Ah9cObtaYsDVoqVDlhp95hg6muNYbKrCno9NGaBNC5bnnnuOxxx6juLiYnj17MmPGDAYMGNDaZumcZDgtRk7vlkif9MhwR+Eom+mwgsNmMtC9XQQzLulNgy/UA+d4CJQD/Liv+pDbSmp9xDpMuP0qj53fgx7tIgFaXI45GIMsYzPLFNf4mnSyvmZ4Jl9uLGb+QWOJERYKq7yU1HkxyRKjchK49cP1TW78M7/fze2ndWJCjyTeX72PGIeZarefS/qnUu8J0BAUFNf6mPHNNrYW15ESZeXaEZl0TnQSazNw52ebubBfKnd8vIHyOh9Th2QwZVAad0/oykWvrGiy1LZiZyWnZMcybXQ26dFW7pnQhe/yy/h8/f4mc1y+owK3L8gdp3c+ZLE9gC/W7+esXimc/+LyZtt2lDWwYHMJY3LiWbC5hMw4e7iKa1a8g9tP70StJ0j3FBdXntIet1/lrBlLW/ycfVUedpe724RQaYkOCS0HgANNGlvq6LQFWv3b+N5773HzzTdzzz33sHbtWnr27Mn48eMpLW25AJeOzm9BliWSIqzkJLnoEO88YtHhtBhJjLAeV5ECkHGYiqEOs4H2sXYGZ8ZwRvekcOn1KLuR9odYZrCZFDrEO0hwWvh47b7wuCRB/4zoJiIFYPKgdJ5buI1eqZEMaB/NB6v3tuidsJsMfLS2kLySerYW13H54DSqvUEsRgMbCms478XvWZRfRnGtlzV7qrj6zTV8uKaQKq/KJX2S+eusddx3Vlca/CrPL9rBU99sByFajAdasq2cqgY/3oBG12QXn+Xub7YPhDKmhIDYw2RaJbgsfP2zRoIHM2f9fsZ1TWRc14RmTTOtRgMJLgtRdjPxTktj1lLwEEeC/NLDB2O3Jr1SI3EeIpD52hFZxOvtQnTaEK0uVJ544gmuvvpqrrjiCrp06cKLL76IzWbjv//9b2ubpqPzu9O9XQSOQ9xALhucTnqMjXiXpUmgY7zTwpMX9sJibPrnLEvw+Pk96ZjoIMJqwhf8KWsl0mpsMQvKalSwmQxsLarDYTHyybrCFm0ZmBnDS4t38qfuSSzfUU5QE0RbDRTV+bj7s00txss8t3A7br9Gz/Royuv9rNxVyeDMUGbMB6v34g0eurbHx2sLMSoy9b5guMN1S1Q0+EmLOXRp/2HZsdQdRlx4AipRViN3n9kVh+XwDmeLQcF+mHYIhxKPbYHkCCuzrhnUmDYdQpLgkoFpnNu3HYqsB9LqtB1adenH7/ezZs0a7rzzzvCYLMuMGTOG5cubu2Z9Ph8+309r8bW1h+6roaNzIpIUYeWdqwZy+cyV4eZ1AKd1TeDyIRkYlZZvjN2SXcz/23A+WVfImj1VdIh3cMmANNpFWTE1vuf8fql8vSXkqfQEVFwt3IgNsoRf1bCaQo0KD1U4zBtQcftVVE3QPtaOJMtYDDI15e5DBmkGNcGOsnoyokNP69/vqGBA+2iW76xAEz81ImwJTYTiXrwBDVmiWXDzAZIjLURajdhNSjPbuya7SImwckaPJN5dWdDi+0/tFE/XFBcJR1AXJs5p4vKhGTy3cEcL28x0OER9nbaALEsh79QNQymt89HgC5IUYSXGbmpWeE9Hp7VpVaFSXl6OqqokJCQ0GU9ISGDr1uadjB966CHuu+++38s8HZ3fHUWW6J4Swf+mncK+KjfV7gDtY+3EOc1E2g69pGFQZNJj7EwblR2q76LIzYqK9UyNpHuKiw2FteF+NAd38wXYWdZAhNVI+1gHdb4AQ7JiWLKtvNnnyVJjbRWDTHm9H4lQUThFPryTNlSLJfS07rQY8BwkJg5Xiv/8fqls2l/DwrwyxndNZN7G4mb7dExwEOMwE++S+OzGoTy/cAdfbynBalKYPDCd8/u1I85lQUjQLz2K1T9LVbcYZW47rdMRiRQIdbeeOiSD0lofH67dF/YipcfYePWyfsc0bf14IEkSiRHWNhtHo6NzgDYRTHuk3Hnnndx8883h17W1taSmpraiRTo6xx5ZlkiOtJL8K250sixhM7X8Z53osvDKZf2Yu6GYt1fs4cM1+3jm4t785a014WZ5r3+/m0fP68FHa/cyNieBm8d25Iedlc2adW7aX8vYnATWFVRhMcpIkkZZjR+nRSErzs6OsoZmn281KqRF2wg0piqf1TOZ/3yVB0CHeAcuq4GkCAtFNU27mA/KjCYn0UFZvZ9TsmPpEO/EF1D5Nq8svE+XJBcvXtqHtINifB44uxu3ndYJSZKItZvCwi3eaeG5S/rwaW4hby7fQ50vwKmd4vnrqGwyDrNs1BLxTgt3T+jCDad2oLTOi8NiJNZualI4UEdH57chCXGo1lXHH7/fj81m48MPP2TSpEnh8alTp1JdXc1nn3122PfX1tYSERFBTU0NLpfrOFuro3NyIISgvN6PJgQRVgNl9X7WFVSzq6ye7imRZMTaaPAHKarxkh5lw6dqPL4gn2XbyrGbDUwemMYlA9JQNcFtH63n+pEdqG3w06d9FHEOE+sL65jy2g9NughLEjxxQU+GZsXw9/fXEh/hoFOikwf+t4WkCAtv/nkACzYXM7JTPIvyypjz437MBoXLBqcztEMsCT+78Ve7/VTU+ylv8BFpNRLjMBN7lIHOmiYor/ehCYHLYsR2mCq5Ojo6x5ajuX+3qlABGDhwIAMGDGDGjBkAaJpGWloaN954I3fcccdh36sLFR2d48uBPjs1bh/1PhVFlkIl6pVQYbaSWi/l9X5UTSPZaSIgJKwmmfL6AB+vK+THfdWkRdmYPCidGLsRf8BPjTckXNYVVJMZZyczLlQ4T9UEZqOCpgmqPX5kSTrscpeOjs6Jy9Hcv1v9EeLmm29m6tSp9OvXjwEDBvDUU0/R0NDAFVdc0dqm6ej84TmQXRRhMxNha77tUDEOUXYLN43qQLU3iN2sYDcfCND86SDdG+vAHOBAgV9Zllq9BL2Ojk7bodWFyoUXXkhZWRl33303xcXF9OrViy+//LJZgK2Ojs6JhclkIP4Q8TI6Ojo6R0qrL/38FvSlHx0dHR0dnROPo7l/t3rBNx0dHR0dHR2dQ6ELFR0dHR0dHZ02iy5UdHR0dHR0dNosulDR0dHR0dHRabPoQkVHR0dHR0enzaILFR0dHR0dHZ02iy5UdHR0dHR0dNosulDR0dHR0dHRabPoQkVHR0dHR0enzXJC17c+UFS3tra2lS3R0dHR0dHROVIO3LePpDj+CS1U6urqAEhNTW1lS3R0dHR0dHSOlrq6OiIiIg67zwnd60fTNPbv34/T6Qx3ea2trSU1NZW9e/eetP1/9DmeHOhzPPE52ecH+hxPFtraHIUQ1NXVkZycjCwfPgrlhPaoyLJMu3btWtzmcrnaxMU4nuhzPDnQ53jic7LPD/Q5niy0pTn+kiflAHowrY6Ojo6Ojk6bRRcqOjo6Ojo6Om2Wk06omM1m7rnnHsxmc2ubctzQ53hyoM/xxOdknx/oczxZOJHneEIH0+ro6Ojo6Oic3Jx0HhUdHR0dHR2dkwddqOjo6Ojo6Oi0WXShoqOjo6Ojo9Nm0YWKjo6Ojo6OTpvlpBYq+fn5TJw4kdjYWFwuF8OGDWPhwoWtbdYx53//+x8DBw7EarUSFRXFpEmTWtuk44LP56NXr15IkkRubm5rm3PM2L17N1deeSXt27fHarWSlZXFPffcg9/vb23TfhPPPfccGRkZWCwWBg4cyMqVK1vbpGPGQw89RP/+/XE6ncTHxzNp0iTy8vJa26zjysMPP4wkSfztb39rbVOOKYWFhVx66aXExMRgtVrp3r07q1evbm2zjhmqqnLXXXc1+X35v//7vyPqsdNWOKmFyplnnkkwGOTbb79lzZo19OzZkzPPPJPi4uLWNu2Y8dFHHzFlyhSuuOIK1q9fz7Jly7jkkkta26zjwm233UZycnJrm3HM2bp1K5qm8dJLL7Fp0yaefPJJXnzxRf7xj3+0tmm/mvfee4+bb76Ze+65h7Vr19KzZ0/Gjx9PaWlpa5t2TPjuu++44YYbWLFiBQsWLCAQCDBu3DgaGhpa27TjwqpVq3jppZfo0aNHa5tyTKmqqmLo0KEYjUbmzZvH5s2befzxx4mKimpt044ZjzzyCC+88ALPPvssW7Zs4ZFHHuHRRx9lxowZrW3akSNOUsrKygQgFi9eHB6rra0VgFiwYEErWnbsCAQCIiUlRbz66qutbcpxZ+7cuaJz585i06ZNAhDr1q1rbZOOK48++qho3759a5vxqxkwYIC44YYbwq9VVRXJycnioYceakWrjh+lpaUCEN99911rm3LMqaurE9nZ2WLBggVixIgRYvr06a1t0jHj9ttvF8OGDWttM44rZ5xxhvjzn//cZOycc84RkydPbiWLjp6T1qMSExNDp06dePPNN2loaCAYDPLSSy8RHx9P3759W9u8Y8LatWspLCxElmV69+5NUlISp59+Ohs3bmxt044pJSUlXH311bz11lvYbLbWNud3oaamhujo6NY241fh9/tZs2YNY8aMCY/JssyYMWNYvnx5K1p2/KipqQE4Ya/Z4bjhhhs444wzmlzPk4XPP/+cfv36cf755xMfH0/v3r155ZVXWtusY8qQIUP45ptvyM/PB2D9+vUsXbqU008/vZUtO3JO6KaEh0OSJL7++msmTZqE0+lElmXi4+P58ssvTxq33s6dOwG49957eeKJJ8jIyODxxx9n5MiR5OfnnxQ/mkIILr/8cq699lr69evH7t27W9uk4872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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "de_results = pydeseq2(\n",
    "    adata=pdata_control.concatenate(pdata_pert),\n",
    "    design_factor=perturbation_col,\n",
    "    control_group=control,\n",
    "    log2fc_sig=1.0,\n",
    "    mlog10pvalue_sig=1.3,\n",
    ")\n",
    "\n",
    "significant_degs = de_results[de_results[\"significant\"]].index.tolist()\n",
    "print(f\"{len(significant_degs)} significant DEGs (psoriasis vs normal)\")\n",
    "\n",
    "sns.scatterplot(\n",
    "    data=de_results, x=\"log2FoldChange\", y=\"mlog10pvalue_adj\", hue=\"significant\"\n",
    ")\n",
    "plt.xlabel(\"log2 fold change (psoriasis vs normal)\")\n",
    "plt.ylabel(\"-log10 adjusted p-value\")\n",
    "plt.title(f\"Psoriasis signature in {cell_type}\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f2d6600e",
   "metadata": {},
   "source": [
    "## 7. Open a TwinCell session\n",
    "\n",
    "A `TwinCell` session bundles the control arm, the perturbed arm, and the disease signature.\n",
    "On construction the SDK **validates** the inputs (shared genes, counts in `.X`, HGNC-style\n",
    "DEG symbols) and checks **API connectivity** — look for a `TwinCell: OK ...` line in the\n",
    "output."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "56b1b595",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "pdata_control and pdata_pert share identical var_names order.\n",
      "DEG list: 131 submitted, 129 HGNC-style (usable by TwinCell), 2 not HGNC-style (ignored at inference; e.g. Ensembl ids). \n",
      "TwinCell: OK - input data ready for prediction (3 control and 3 perturbed observations, 131 DEGs submitted, 129 HGNC-style usable); API reachable at 'https://open-deeplife-api.deeplife.co'.\n"
     ]
    }
   ],
   "source": [
    "tc = TwinCell(\n",
    "    pdata_control=pdata_control,\n",
    "    pdata_pert=pdata_pert,\n",
    "    degs=significant_degs,\n",
    "    model=\"v1.0\",\n",
    "    api_key=DEEPLIFE_API_KEY,\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7ba1f1b5",
   "metadata": {},
   "source": [
    "## 8. Validate Deucravacitinib's target\n",
    "\n",
    "This is the heart of the analysis. For each target we call `target_validation`, which submits\n",
    "the two arms + signature and runs the causal model server-side. `get_target_score` then\n",
    "returns:\n",
    "\n",
    "- **`score`** — how strongly the target explains the disease signature (higher = stronger).\n",
    "- **`percentage_degs_significant`** — fraction of the disease DEGs with causal support from\n",
    "  this target.\n",
    "\n",
    "We run target validation for **TYK2** (the loop also lets you add more targets to compare in a\n",
    "single table)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5e024340",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "status=pending\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "TwinCellSession prediction_id: f8e709d4-72b8-4c67-81e6-4d0412744625\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "status=processing · step=inference_started · 18%\n",
      "status=completed · step=completed · 100%\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>id</th>\n",
       "      <th>score</th>\n",
       "      <th>rank</th>\n",
       "      <th>rank_percentage</th>\n",
       "      <th>pvalue</th>\n",
       "      <th>z_score</th>\n",
       "      <th>protein_expressed</th>\n",
       "      <th>is_deg</th>\n",
       "      <th>node_type</th>\n",
       "      <th>n_degs_significant</th>\n",
       "      <th>percentage_degs_significant</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>22.708529</td>\n",
       "      <td>575.0</td>\n",
       "      <td>4.264313</td>\n",
       "      <td>None</td>\n",
       "      <td>None</td>\n",
       "      <td>True</td>\n",
       "      <td>False</td>\n",
       "      <td>PROTEIN</td>\n",
       "      <td>2</td>\n",
       "      <td>1.680672</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             id      score   rank  rank_percentage pvalue z_score  \\\n",
       "0  TYK2|PROTEIN  22.708529  575.0         4.264313   None    None   \n",
       "\n",
       "   protein_expressed  is_deg node_type  n_degs_significant  \\\n",
       "0               True   False   PROTEIN                   2   \n",
       "\n",
       "   percentage_degs_significant  \n",
       "0                     1.680672  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prediction_ids = {}\n",
    "score_rows = []\n",
    "\n",
    "# Run target validation for each Deucravacitinib target - ETA 40s\n",
    "for target in deucravacitinib_targets:\n",
    "    prediction_ids[target] = tc.target_validation(\n",
    "        target=target,\n",
    "        label=f\"Deucravacitinib target {target} vs psoriasis signature\",\n",
    "    )\n",
    "    score_rows.append(tc.get_target_score(prediction_id=prediction_ids[target]))\n",
    "\n",
    "target_scores = pd.concat(score_rows, ignore_index=True)\n",
    "target_scores"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9da9b831",
   "metadata": {},
   "source": [
    "## 9. How do the targets connect to the disease genes?\n",
    "\n",
    "A score is more convincing when you can see the mechanism. `plot_causal_graph` draws the\n",
    "interactome subgraph linking the top disease DEGs to the validated target."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "cb08d7e9",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Best target: TYK2|PROTEIN\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/sAAAP7CAYAAAAEeJ46AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAAnidJREFUeJzs/XecnGWh//+/r/uePrN9N71tNiQgISSEEkogIEj50uSgoCiKCoKfo4IHBVSOigKCR+B4+KmgIAKKqFgoSieU0HuABNJIAulty/SZ+/r9MdkhgdTN7k7Z1/Px4EGye8/MNbvZufc97+u+LmOttQIAAAAAAFXDKfUAAAAAAABA7yLsAwAAAABQZQj7AAAAAABUGcI+AAAAAABVhrAPAAAAAECVIewDAAAAAFBlCPsAAAAAAFQZwj4AAAAAAFWGsA8AAAAAQJUh7AMAAAAAUGUI+wAAAAAAVBnCPgAAAAAAVYawDwAAAABAlSHsAwAAAABQZQj7AAAAAABUGcI+AAAAAABVhrAPAAAAAECVIewDAAAAAFBlCPsAAAAAAFQZwj4AAAAAAFWGsA8AAAAAQJUh7AMAAAAAUGUI+wAAAAAAVBnCPgAAAAAAVYawDwAAAABAlSHsAwAAAABQZQj7AAAAAABUGV+pHthaK0nyPK9UQ0CVcZzCe1fGmBKPBAAAAABKqyRh31orz/O0bt06dXZ2Kp/Pl2IYqCKO4ygSiai5uVk+n4/ADwAAAGBAK1mzv27dOq1fv141NTUKBAKlGgaqRD6fV3t7uxzH0aBBg0o9HAAAAAAoqZKEfc/z1NnZqZqaGg0ePFjGGJpY7JLu2SLxeFye58l13VIPCQAAAABKpmQL9OXzeQUCAYI+eo3P52MNCAAAAABQCafxd6uGoJ/NZtXR0aFIJKJQKCRjjHK5nLq6ulRbW1tcOG5H5HI5xeNx1dTU7NDtrLXq7OxUJpP5yOeMMaqrq5PPV/Jvc5/jTSMAAAAA+ABb7/WCF198Ufvss48uu+wy5XI5SdI777yjE088UZ2dnTt1X3PnztVnPvMZxePxHTo+k8no2muv1Ze//GV94Qtf0NSpU3XKKafoy1/+sv7zP/9T77333k4/HwAAAABAZav+yrcfdAf8e+65R6effromTZpUXDBu0y0Gu7q6lM1mFQqFFIlEik10NptVV1eXjDHKZDLq6OjY4u2CwaCi0ehmDXYgENB3vvMd5fN5dXR06KSTTtIFF1ygww8/XIlEorhYnbVWiURCxhgFg0F1dnYqHA4rkUjIcRzFYrHide7WWsXjcaXTaQUCAUWjUTmOU7yPVColx3EUDocVDAZp1AEAAACgzBD2e8mwYcN0yCGH6Ne//rWuu+66zT6Xy+X017/+Vb///e/lOI4CgYD+67/+SwcffLBSqZSuvfZaPfzww2pqatKoUaOKWxFms1n95S9/0R133KFcLqdwOKxvfetbOvjgg4sB2xijcDgsqbAOguM4CoVCWrNmjc477zzdcsstGj58uDKZjL797W9r//3314wZM3TaaadpxowZeuedd9TR0aGzzjpLp59+uhzH0QMPPKAbb7xRqVRKPp9P55xzjo477jjNmTNHP/rRjxSPx+U4jqZPn64LLriA3RQAAAAAoMwQ9nuJ67r64he/qLPPPlsvvviiampqip+bN2+efvrTn+oXv/iF9t57b/3tb3/Td7/7Xf3zn//U008/rfvuu08333yzWlpa9OMf/1jpdFqS9Morr+iGG27Qddddp7Fjx+rxxx/Xj370I911112qra3d5nhGjhyp0aNH695779U555yjBQsW6KWXXtLFF1+sfD6vxYsXq7W1Vd/97nf12muv6Zvf/Kb2228/+Xw+XX755br88ss1ZcoUvf7667rkkks0ZcoU/e1vf1NbW5suuugiGWOUSCQGxHoAAAAAAFBpSGobzZ07V6+++up2j2tra9PUqVO3uHje8OHDdfrpp+uXv/ylvvGNbxQ//vLLL2v06NHad999FYlEdMIJJ+jaa6/Vu+++q2effVbTpk3TuHHj5LquTjrpJD333HOSpCeffFLJZFL33nuvXNdVMpnU0qVLtXLlyu2G/UAgoNNPP13XXnutTjvtNN11112aPn26hg0bpqVLl6q2tlYnn3yy6urqNHXqVI0cOVKvvPKKJKm9vV0zZ87UrFmzlMlk1NnZqQULFmjy5Mm69tprdd1112ny5Mk69NBDPzKFf9myZZo1a1ZxdsLWNDc3a8aMGbxZAAAAAAB9gKS1UXt7uxYvXly8Vn5r6urqtnqM4zg6/fTT9fe//12PP/548bieXtPueZ4aGxs1bty44psLU6ZMUUtLy3Zva4zRAQccINd1dd999+nBBx/UNddcs9395z3PU01Njdra2uT3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dT322GOKRCKqr69XY2Oj2tra1NTUpOXLl+urX/2q3n77bTU2NuqOO+7Qddddp1wup7feekt333238vm85s2bpx/96Ef6+9//roaGBv3973/XNddco3y+ZzMvAAAAAAA7rrybfS8nda7qu+M3sdtuu+n666/X7bffrgsuuECpVEonn3yyLrnkEs2ZM0fPPvusbrnlFrW0tGjGjBk655xz9Morr2jkyA9mEbzwwgt6++23ddNNN6mhoUHTp0/XWWedpbfffluzZs1SQ0ODfvzjHysSiRQuUZA0fPhw1dTU6OSTT1ZTU5M2bNig3/zmN/rRj36kfffdV7lcTkuWLNG9996ro446Ss8995zuvfdejRw5Uocddphmzpy51efU3t5eDNiPPvqozjzzzGKzfsIJJ+jcc89VPp/XN7/5TR111FE6//zzJRXe3Lj99tt1ww03aPfdd5fjODrttNNkrdWvf/1rxWIx/b//9/8UCoW011576dxzz9VXv/rVjzx+XV2dLr74YjU3N2v06NG64oorlEqlFIvFevQ9AgAAAADsmPIO+8aR/CFpRy8DN0byBXv0UK7r6qijjtJhhx2mRCKh5557ThdccIGmTp0qSVq2bJm+/e1vy3VdWWvl8/k+0lIvXrxYixcv1gUXXFA8rqamRul0WkuXLlVbW5sikYiMMVudyt7V1aXFixfruuuuUzBYeC7JZFITJ07UsmXL1NjYqIaGBhlj1NTUpMGDB2/1Ofl8PrW2tqqurk6f+tSntMceeyifz8vv92vcuHFyHEfpdFqrVq3StGnT5LquJGn8+PF64oknlMvlNrs/a63effddvfTSS/ra174mY4w8z9PQoUM/cqwkjRgxQtFoVMYYNTY2Kp1Ob/OyAwAAAABA7yjvsO8LSM1tUseKHTw+WDi+B7LZrPL5vILBoAKBgA4++GC1trZq7dq1mjRpkkaNGqX/+7//U0tLiyQpn88rHA7r/fffL97HiBEjNG7cOP3qV78qXqefz+cViUT00ksv6amnnlIikdis2e8O/t0hOBqNatSoUbrkkkuKbzR4niefz6cFCxZo3bp1Wr9+vWKxmNauXauVK1du9Tl1X7NfX19f/Fj36vrdwd7n82nQoEGaP3++crmcjDF65513NHjwYPl8PjmOI8/zZK2VMUYjR47UgQceqP/5n/8pXp+fz+dVU1Pzkcff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a3XXXXfphRde0Lx582SM0amnnqqnn35ab731lnK5nPbbbz9NmzZNfr9fs2fP1pw5czRo0CC99NJLGjJkiE488UTV1NQoHo/rwQcf1Lx58xQOh3XQQQdpypQpkqS3335bjz32mJLJpHbbbTcde+yxmjt3rubMmaOmpia98cYbOuaYYxQKheT3++V5nh566CE5jqMNGzZo8eLF2nfffXXwwQdrxYoVeuihh7R+/XoFAgFNmTJF+++/vyKRSPFrumbNGv373//WypUrNW7cOB111FGKRqNasmSJZs6cqQkTJujZZ59VTU2NTj75ZDU2Nm6xdW9ra9OnPvUp+f1+SVI6ndb999+vuXPnylqrAw88UPvuu698Pp88z9OCBQv06KOPqrOzU2PHjtURRxyhv/3tb3rttdf0s5/9TCNGjNDnP/95pVIpPfDAA1q8eLGGDx+uY489VvX19dqwYYPuuOMO7b///nrmmWe0995769BDD92p7zUAAAAADATlUVlvRdrm9VDnki02+lvyTmqD3kyu7bXHz2azuv3223XppZcqHo+rsbFR6XRazz33nGKxmEKhkC677DI98MADstbqzTff1A9+8APdf//9amho0B/+8Af96le/Ui6X080336zbb79dgwYNUiAQ0Pz58+V5nmbNmqVzzjlHHR0dam5u1ltvvaVMJqM333xT3//+9/XAAw+opaVFjuPoX//6l1599VVZa/XAAw/owgsv1KJFixQOh/W9731P9913n4LBoBobG1VfX6+2tjYNGjRI7e3t+u1vf6t0Oq2Ojg6dd955evbZZ9Xc3Kzbb79dP/7xj5XNZrVkyRL9+Mc/1h133KH6+no99NBD+slPfqJsNrvFr08qldLatWu1Zs0atbe3q7OzUy+//LLq6urk8/n03e9+V08++aSstXrllVf05S9/WatWrdKgQYM0f/58JZNJDR48WJFIRGPHjtXIkSOVTqd18cUX6+6771Zzc7MefPBBXXDBBUokEtqwYYOuuOIK/epXv1JNTU3xDQwAAAAAwObKutnP2LzmpTfs8PFpm9P89AZNi+3cdePbYozRCSecoHPPPVeO48jzPH3hC1/QG2+8oQ0bNmjEiBG6//77dfTRR0sqXON/0UUXqb6+Xk1NTfrd736nr33ta1q1apVGjhypI488Ug0NDQoGg8rn8/rd736nE088Ud/61reK99992UBLS4suvvhiNTQ0KJfLbTYua6323XdfffOb35Tf75frurr99tt19NFHa88999SqVav0qU99Sq7ratGiRcXbPfvss1qxYoV+/etfq6mpSQcccIBOPfVUnXvuuZKkSCSiiy66SEOHDtXEiRP19a9/XclksriGwaYef/xxnX322XIcR3vssYcuvfRSnXHGGXrzzTcVDoc1ePBgPfDAAzrooIP0+9//XjNmzNDFF19cbPodx9EBBxyghx9+WKeccopisZhmz56tWbNm6e6779bo0aP1iU98QieeeKJmz56twYMHy+fz6fzzz9fEiRO5xh8AAAAAtqKsm33PSikvt/0Du4+XlLI7fvyO8Pv9GjduXDGAz5kzR5///Od13333aeHChcXGufv6+FGjRikcDssYo8bGRqVSKUnSl770Jfn9fp1zzjk688wzdd999ymdTmvFihXafffd5bqujDHF/0tSa2trcZG9DzPGqK2tTYFAQI7jaNy4cVq9evVH3hT4sGXLlmnYsGGKRqMyxmjYsGEKh8Nas2aNJGnIkCGqra3dbPxbWwfhiCOO0G233aY//OEP+sEPfqC33npLZ555ph588MHNvjbpdFrLly/XhAkT5Pf7P/I8N7VixQo1NDSoqalJxhjV1dVp0KBBWr58uSSptrZWI0aMIOgDAAAAwDaUddj3G0dD/NEdPt4nR0N8O378jnJdt/jnJ554Qq2trbrqqqv0ne98R+PHjy8GfUlyHGeLQXTEiBG64oor9Kc//UmnnXaafvzjHyudTmvIkCGaM2eO8vm8rLXF/3c/7tZCrbVWCxYsUCaTked5mj9/vlpaWuTz+YozBLZk2LBhev/99xWPx2Wt1bJly5RMJtXS0lIcf7ftBWq/369oNKpYLKZwOKxHH31UkyZN0lVXXaULL7xQra2tstbK7/dr6NChmjt3rrLZ7GbP88NjHTJkiNavX6+1a9fKWqv29natWrWquMr/tr4mAAAAAICCsp7GH3Jc7RsZrDmpddtdoE+S6t2g9go39+mYxo8fr9///ve6+eablU6n9eijj2rMmDHbvE0ul9Mdd9yhzs5OtbS06Pnnn9eYMWMUiUR01lln6ZJLLlEul9OwYcO0fPlyfeMb39juOIwxevHFF3XdddcpGo3qjjvu0IUXXqhQKKSxY8fqvvvu0x/+8Ad97GMfU0ND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o5vNBggEAvrOd76jfD6vjo4OnXTSSbrgggt0+OGHK5FIaNCgQZIKP+SJRELGGAWDQXV2diocDiuRSMhxHMViMbmuWzw2Ho8rnU4rEAgoGo3KcZzifaRSqeJzCwaDTMEBAAAAykgh4GflbdigzJzZysx+WfkFrynWkpYb9aRAiSKgl5cG715o99EvCPu9xBijaDT6kSa/q6tLP/3pT/X000+rublZQ4YMUT6flySlUin9/Oc/16OPPqrm5maNHTtWr7zyiv76178qFArpL3/5i+644w7lcjmFw2F961vf0sEHH7zZdoPhcFiSlM/n5TiOQqGQ1qxZo/POO0+33HKLhg8frkwmo29/+9vaf//9NWPGDJ122mmaMWOG3nnnHXV0dOiss87S6aefLsdx9MADD+jGG29UKpWSz+fTOeeco+OOO05z5szRj370I8XjcTmOo+nTp+uCCy5QIBDo3y80AAAAgM1sKeBn335LXrxTcly5zc2yDREps0jbm8rfB4OTvJzkD8q0HcICff2IsN9L2tvbdc011ygUKrxTNWbMGJ166qm699579fTTT+umm25STU2NLrnkEqXTaUnSI488ovvvv18333yzmpubdcUVV2j16tWy1uqVV17RDTfcoOuuu05jx47V448/rh/96Ee66667VFtbu82xjBw5UqNHj9a9996rc845RwsWLNBLL72kiy++WPl8XosXL1Zra6u++93v6rXXXtM3v/lN7bfffvL5fLr88st1+eWXa8qUKXr99dd1ySWXaMqUKfrb3/6mtrY2XXTRRTLGKJFIsB4AAAAAUCLbD/gtCu9/sAKT9pF/7G7SmjnS/ZdL+VwhcPfnDN18Vho0XhoxiZnB/Yi0ttHcuXP16quvbve4trY2TZ069SML7/l8PrW2tioSKSxRMXjwYFlr9eyzz+rQQw8tXjt/wgkn6N1335W1Vs8995wOOOAAtbW1yXVdHX/88Xr66aclSU8++aSSyaTuvfdeua6rZDKppUuXauXKldsN+4FAQKeffrquvfZanXbaabrrrrs0ffp0DRs2TEuXLlVtba1OPvlk1dXVaerUqRo5cqReeeUVSYU3LWbOnKlZs2YVLzlYsGCBJk+erGuvvVbXXXedJk+erEMPPfQjP6jLli3TrFmzijMXtqa5uVkzZszgzQIAAABgJ+xswDfhiOQ4MsbI+veU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CgQCSiaTCofDOvXUU4svdMlkUp7nSZLS6XRxHJ7n6bnnntPDDz+sadOmKRaLKRKJ6Morr1RLS4ukQtOfSCSUTqcVCAQUjUblOI7y+bw6OzsViUQUj8dljGE2AAAAAHZJNQf8brT5KFdlEfYXrEvrtRUpedb2yf07xmjykJDGNga3esy8efP0j3/8Q+3t7Vq8eLGOOOIILVq0SMlkUslkUpJ0zTXX6LrrrtObb76pVCqlxsZGXXrppdp999314osv6oc//KH22msvzZs3Tx0dHbrwwgt17LHHasGCBfrBD36gDRs2yHEcTZ06Vd/97neVz+f1y1/+Ug8//LD8fr9qa2t11VVXaenSpfrv//5vfexjH9P777+vM888U2+99ZYcx9F3vvMd3XTTTZo1a5YikYiWLVumWCymyy67TA0NDbrtttu0cOFCffWrX9V+++2nc889V//5n/+p2267TSNGjNBDDz2k66+/vvhmwbnnnqvjjjtO7733nk477TR94hOf0Jtvvqk1a9boy1/+ss444wwCPwAAAHbYQAj4Em0+yl9ZhP3XVqT086dXK+/1zf27jtGFBzVvM+xPmDBB//Ef/6FVq1bpsssuk+M4Ov/887Vs2TLdeOONqq+vVzAY1Je//GVFIhHlcjndfPPN+tWvfqWf//znyuVymjNnji644AJdeuml+uc//6nrr79eM2bM0D333KOmpiZdf/31cl1X8XhcPp9Pf/7zn/Xggw/q+uuv19ChQ9XR0aH6+notWrRIc+bM0fnnn6/p06crFArppZdeKl5akEql9Nprr+lPf/qTRo4cqWuuuUZXXnmlbrjhBn3pS1/SAw88oOuvv17hcFjJZFIdHR3yPE+rVq3SpZdeqosvvlgf//jH9dRTT+nSSy/V3nvvLc/ztGTJEu222276r//6L73wwgu6+OKLdcIJJ6ihoaFvvjEAAACoCgMl4HejzUclKIuwX2Ak9U2zvyNc11UgEChObfc8T67r6qijjtLw4cNljFE6ndYTTzyhhx9+WJ2dnVq9erUikYgymYwkqbW1VQcddJBqa2s1bdo0/e///q+y2az23ntv3X333fr5z3+uyZMn67DDDlM+n9eTTz6pY489Vrvttltx2ny3MWPG6JBDDlFtbe0Wx3vwwQdrjz32kN/v1ymnnKIzzzxTqVRKwWCweDlAMBgsXjogSW+/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",
      "text/plain": [
       "<Figure size 1000x1000 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Pick the highest-scoring validated target.\n",
    "best_target = target_scores.sort_values(\"score\", ascending=False)[\"id\"].iloc[0]\n",
    "best_prediction_id = prediction_ids[best_target.split(\"|\")[0]]\n",
    "print(f\"Best target: {best_target}\")\n",
    "\n",
    "n_sig_degs = target_scores[target_scores['id']==best_target].n_degs_significant\n",
    "\n",
    "tc.plot_causal_graph(prediction_id=best_prediction_id, top_n_degs=n_sig_degs)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f2b4f235",
   "metadata": {},
   "source": [
    "## 10. Inspect the top causal paths\n",
    "\n",
    "`get_causal_paths` returns the ranked routes from each impacted disease gene to the target.\n",
    "For a TYK2 target you should see paths funnelling through **STAT** transcription factors and\n",
    "other IL-23 / type-I-interferon JAK–STAT components — exactly the biology Deucravacitinib is\n",
    "designed to dampen."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "b2910d47",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>deg</th>\n",
       "      <th>target</th>\n",
       "      <th>path</th>\n",
       "      <th>score</th>\n",
       "      <th>coverage</th>\n",
       "      <th>path_fraction</th>\n",
       "      <th>length</th>\n",
       "      <th>nodes</th>\n",
       "      <th>path_probability</th>\n",
       "      <th>score_deg_given_target</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>IL15</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>IL15 → IRF1 → NPM1 → TYK2</td>\n",
       "      <td>0.768584</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.949464</td>\n",
       "      <td>4</td>\n",
       "      <td>[IL15|RNA, IRF1|PROTEIN, NPM1|PROTEIN, TYK2|PR...</td>\n",
       "      <td>0.007545</td>\n",
       "      <td>0.809492</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>IFITM3</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>IFITM3 → STAT2 → TYK2</td>\n",
       "      <td>0.763776</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.859208</td>\n",
       "      <td>3</td>\n",
       "      <td>[IFITM3|RNA, STAT2|PROTEIN, TYK2|PROTEIN]</td>\n",
       "      <td>0.008616</td>\n",
       "      <td>0.888930</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>ZC3H12A</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>ZC3H12A → RELA → HRH1 → GRK2 → GNB2 → PTAFR → ...</td>\n",
       "      <td>0.526158</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.957941</td>\n",
       "      <td>7</td>\n",
       "      <td>[ZC3H12A|RNA, RELA|PROTEIN, HRH1|PROTEIN, GRK2...</td>\n",
       "      <td>0.002227</td>\n",
       "      <td>0.549259</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>ASGR2</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>ASGR2 → IRF1 → NPM1 → TYK2</td>\n",
       "      <td>0.455786</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.722857</td>\n",
       "      <td>4</td>\n",
       "      <td>[ASGR2|RNA, IRF1|PROTEIN, NPM1|PROTEIN, TYK2|P...</td>\n",
       "      <td>0.002566</td>\n",
       "      <td>0.630534</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>RASGEF1B</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>RASGEF1B → STAT1 → TYK2</td>\n",
       "      <td>0.421086</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.950878</td>\n",
       "      <td>3</td>\n",
       "      <td>[RASGEF1B|RNA, STAT1|PROTEIN, TYK2|PROTEIN]</td>\n",
       "      <td>0.001781</td>\n",
       "      <td>0.442840</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>INSIG1</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>INSIG1 → CCNT2 → HEXIM1 → NPM1 → TYK2</td>\n",
       "      <td>0.352654</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.853802</td>\n",
       "      <td>5</td>\n",
       "      <td>[INSIG1|RNA, CCNT2|PROTEIN, HEXIM1|PROTEIN, NP...</td>\n",
       "      <td>0.001408</td>\n",
       "      <td>0.413040</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>KIF2A</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>KIF2A → TCF4 → CSNK2A1 → THAP1 → STRBP → EIF2A...</td>\n",
       "      <td>0.336833</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.695527</td>\n",
       "      <td>7</td>\n",
       "      <td>[KIF2A|RNA, TCF4|PROTEIN, CSNK2A1|PROTEIN, THA...</td>\n",
       "      <td>0.000612</td>\n",
       "      <td>0.484285</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>LAP3</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>LAP3 → STAT1 → TYK2</td>\n",
       "      <td>0.313256</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.500629</td>\n",
       "      <td>3</td>\n",
       "      <td>[LAP3|RNA, STAT1|PROTEIN, TYK2|PROTEIN]</td>\n",
       "      <td>0.001983</td>\n",
       "      <td>0.625725</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>LAP3</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>LAP3 → STAT2 → TYK2</td>\n",
       "      <td>0.296286</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.473508</td>\n",
       "      <td>3</td>\n",
       "      <td>[LAP3|RNA, STAT2|PROTEIN, TYK2|PROTEIN]</td>\n",
       "      <td>0.001876</td>\n",
       "      <td>0.625725</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>IL1R1</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>IL1R1 → TCF4 → CSNK2A1 → THAP1 → STRBP → EIF2A...</td>\n",
       "      <td>0.272955</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.510312</td>\n",
       "      <td>7</td>\n",
       "      <td>[IL1R1|RNA, TCF4|PROTEIN, CSNK2A1|PROTEIN, THA...</td>\n",
       "      <td>0.000580</td>\n",
       "      <td>0.534878</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>HES1</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>HES1 → EGR1 → RELA → HRH1 → GRK2 → GNB2 → PTAFR</td>\n",
       "      <td>0.217661</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.519803</td>\n",
       "      <td>7</td>\n",
       "      <td>[HES1|RNA, EGR1|PROTEIN, RELA|PROTEIN, HRH1|PR...</td>\n",
       "      <td>0.000327</td>\n",
       "      <td>0.418738</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>ASGR2</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>ASGR2 → EGR1 → RELA → HRH1 → GRK2 → GNB2 → PTAFR</td>\n",
       "      <td>0.168113</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.266620</td>\n",
       "      <td>7</td>\n",
       "      <td>[ASGR2|RNA, EGR1|PROTEIN, RELA|PROTEIN, HRH1|P...</td>\n",
       "      <td>0.000947</td>\n",
       "      <td>0.630534</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>HES1</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>HES1 → TCF4 → CSNK2A1 → THAP1 → STRBP → EIF2AK...</td>\n",
       "      <td>0.143988</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.343862</td>\n",
       "      <td>7</td>\n",
       "      <td>[HES1|RNA, TCF4|PROTEIN, CSNK2A1|PROTEIN, THAP...</td>\n",
       "      <td>0.000216</td>\n",
       "      <td>0.418738</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>IFITM3</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>IFITM3 → STAT1 → TYK2</td>\n",
       "      <td>0.119006</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.133876</td>\n",
       "      <td>3</td>\n",
       "      <td>[IFITM3|RNA, STAT1|PROTEIN, TYK2|PROTEIN]</td>\n",
       "      <td>0.001343</td>\n",
       "      <td>0.888930</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>IL1R1</td>\n",
       "      <td>TYK2|PROTEIN</td>\n",
       "      <td>IL1R1 → STAT1 → TYK2</td>\n",
       "      <td>0.113968</td>\n",
       "      <td>1.0</td>\n",
       "      <td>0.213073</td>\n",
       "      <td>3</td>\n",
       "      <td>[IL1R1|RNA, STAT1|PROTEIN, TYK2|PROTEIN]</td>\n",
       "      <td>0.000242</td>\n",
       "      <td>0.534878</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         deg        target                                               path  \\\n",
       "0       IL15  TYK2|PROTEIN                          IL15 → IRF1 → NPM1 → TYK2   \n",
       "1     IFITM3  TYK2|PROTEIN                              IFITM3 → STAT2 → TYK2   \n",
       "2    ZC3H12A  TYK2|PROTEIN  ZC3H12A → RELA → HRH1 → GRK2 → GNB2 → PTAFR → ...   \n",
       "3      ASGR2  TYK2|PROTEIN                         ASGR2 → IRF1 → NPM1 → TYK2   \n",
       "4   RASGEF1B  TYK2|PROTEIN                            RASGEF1B → STAT1 → TYK2   \n",
       "5     INSIG1  TYK2|PROTEIN              INSIG1 → CCNT2 → HEXIM1 → NPM1 → TYK2   \n",
       "6      KIF2A  TYK2|PROTEIN  KIF2A → TCF4 → CSNK2A1 → THAP1 → STRBP → EIF2A...   \n",
       "7       LAP3  TYK2|PROTEIN                                LAP3 → STAT1 → TYK2   \n",
       "8       LAP3  TYK2|PROTEIN                                LAP3 → STAT2 → TYK2   \n",
       "9      IL1R1  TYK2|PROTEIN  IL1R1 → TCF4 → CSNK2A1 → THAP1 → STRBP → EIF2A...   \n",
       "10      HES1  TYK2|PROTEIN    HES1 → EGR1 → RELA → HRH1 → GRK2 → GNB2 → PTAFR   \n",
       "11     ASGR2  TYK2|PROTEIN   ASGR2 → EGR1 → RELA → HRH1 → GRK2 → GNB2 → PTAFR   \n",
       "12      HES1  TYK2|PROTEIN  HES1 → TCF4 → CSNK2A1 → THAP1 → STRBP → EIF2AK...   \n",
       "13    IFITM3  TYK2|PROTEIN                              IFITM3 → STAT1 → TYK2   \n",
       "14     IL1R1  TYK2|PROTEIN                               IL1R1 → STAT1 → TYK2   \n",
       "\n",
       "       score  coverage  path_fraction  length  \\\n",
       "0   0.768584       1.0       0.949464       4   \n",
       "1   0.763776       1.0       0.859208       3   \n",
       "2   0.526158       1.0       0.957941       7   \n",
       "3   0.455786       1.0       0.722857       4   \n",
       "4   0.421086       1.0       0.950878       3   \n",
       "5   0.352654       1.0       0.853802       5   \n",
       "6   0.336833       1.0       0.695527       7   \n",
       "7   0.313256       1.0       0.500629       3   \n",
       "8   0.296286       1.0       0.473508       3   \n",
       "9   0.272955       1.0       0.510312       7   \n",
       "10  0.217661       1.0       0.519803       7   \n",
       "11  0.168113       1.0       0.266620       7   \n",
       "12  0.143988       1.0       0.343862       7   \n",
       "13  0.119006       1.0       0.133876       3   \n",
       "14  0.113968       1.0       0.213073       3   \n",
       "\n",
       "                                                nodes  path_probability  \\\n",
       "0   [IL15|RNA, IRF1|PROTEIN, NPM1|PROTEIN, TYK2|PR...          0.007545   \n",
       "1           [IFITM3|RNA, STAT2|PROTEIN, TYK2|PROTEIN]          0.008616   \n",
       "2   [ZC3H12A|RNA, RELA|PROTEIN, HRH1|PROTEIN, GRK2...          0.002227   \n",
       "3   [ASGR2|RNA, IRF1|PROTEIN, NPM1|PROTEIN, TYK2|P...          0.002566   \n",
       "4         [RASGEF1B|RNA, STAT1|PROTEIN, TYK2|PROTEIN]          0.001781   \n",
       "5   [INSIG1|RNA, CCNT2|PROTEIN, HEXIM1|PROTEIN, NP...          0.001408   \n",
       "6   [KIF2A|RNA, TCF4|PROTEIN, CSNK2A1|PROTEIN, THA...          0.000612   \n",
       "7             [LAP3|RNA, STAT1|PROTEIN, TYK2|PROTEIN]          0.001983   \n",
       "8             [LAP3|RNA, STAT2|PROTEIN, TYK2|PROTEIN]          0.001876   \n",
       "9   [IL1R1|RNA, TCF4|PROTEIN, CSNK2A1|PROTEIN, THA...          0.000580   \n",
       "10  [HES1|RNA, EGR1|PROTEIN, RELA|PROTEIN, HRH1|PR...          0.000327   \n",
       "11  [ASGR2|RNA, EGR1|PROTEIN, RELA|PROTEIN, HRH1|P...          0.000947   \n",
       "12  [HES1|RNA, TCF4|PROTEIN, CSNK2A1|PROTEIN, THAP...          0.000216   \n",
       "13          [IFITM3|RNA, STAT1|PROTEIN, TYK2|PROTEIN]          0.001343   \n",
       "14           [IL1R1|RNA, STAT1|PROTEIN, TYK2|PROTEIN]          0.000242   \n",
       "\n",
       "    score_deg_given_target  \n",
       "0                 0.809492  \n",
       "1                 0.888930  \n",
       "2                 0.549259  \n",
       "3                 0.630534  \n",
       "4                 0.442840  \n",
       "5                 0.413040  \n",
       "6                 0.484285  \n",
       "7                 0.625725  \n",
       "8                 0.625725  \n",
       "9                 0.534878  \n",
       "10                0.418738  \n",
       "11                0.630534  \n",
       "12                0.418738  \n",
       "13                0.888930  \n",
       "14                0.534878  "
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "causal_paths = tc.get_causal_paths(prediction_id=best_prediction_id)\n",
    "causal_paths.sort_values(by=\"score\", ascending=False).head(15)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aa558a8a",
   "metadata": {},
   "source": [
    "How much of the psoriasis signature does the target actually reach? `get_all_degs` lists the\n",
    "DEGs that mapped onto the interactome, and `get_degs_impacted_by_target` lists those with\n",
    "causal support above the model threshold."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "e424ba70",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "119 disease DEGs mapped onto the interactome\n",
      "10 are causally impacted by TYK2|PROTEIN (8% of mapped DEGs)\n",
      "Examples: ['IFITM3', 'IL15', 'ASGR2', 'LAP3', 'ZC3H12A', 'IL1R1', 'KIF2A', 'RASGEF1B', 'HES1', 'INSIG1']\n"
     ]
    }
   ],
   "source": [
    "all_degs = tc.get_all_degs(prediction_id=best_prediction_id)\n",
    "impacted_degs = tc.get_degs_impacted_by_target(prediction_id=best_prediction_id)\n",
    "\n",
    "print(f\"{len(all_degs)} disease DEGs mapped onto the interactome\")\n",
    "print(\n",
    "    f\"{len(impacted_degs)} are causally impacted by {best_target} \"\n",
    "    f\"({len(impacted_degs) / max(len(all_degs), 1):.0%} of mapped DEGs)\"\n",
    ")\n",
    "print(\"Examples:\", impacted_degs[:12])"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3d183c9c",
   "metadata": {},
   "source": [
    "## Conclusion\n",
    "\n",
    "Putting it together to answer the question — *Is Deucravacitinib an interesting drug for psoriasis?*\n",
    "\n",
    "- We derived a **psoriasis signature** from patient **dendritic cells** (psoriasis vs. normal).\n",
    "- We validated Deucravacitinib's target **TYK2** against that signature with TwinCell.\n",
    "- The **target-validation score** and the **fraction of impacted DEGs** quantify how well\n",
    "  inhibiting TYK2 explains the disease state, and the **causal graph / paths** show the\n",
    "  JAK–STAT routes connecting the disease genes to the target.\n",
    "\n",
    "A high score with mechanistically coherent paths (through STAT factors) is supporting evidence\n",
    "that **Deucravacitinib's mechanism is relevant to psoriasis** — consistent with its approval\n",
    "for plaque psoriasis.\n",
    "\n",
    "**Next steps to try:**\n",
    "\n",
    "- Repeat for other cell types (e.g. `helper T cell`, `suprabasal keratinocyte`) to see where the mechanism is strongest.\n",
    "- Compare against a **negative-control target** (an unrelated protein) on the same signature —\n",
    "  it should score near zero, confirming specificity.\n",
    "- Validate other psoriasis drugs by swapping in their targets (e.g. `IL17A`, `IL23A`, `JAK1`)."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "65a97176",
   "metadata": {},
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": ".venv",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
