{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Contingency Tables\n", "\n", "So far, we have introduced basic distributions for discrete random variables — our first _models_! But a model of a single discrete random variable isn't all that interesting... Contingency tables allow us to model and reason about the joint distribution of _two_ categorical random variables. Two might not sound like a lot, but it turns out plenty of important questions boil down to understanding the relationship between two variables.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Demo: College Football Playoffs\n", "Let's start with a little demo. The College Football Playoffs are underway, and the Super Bowl is coming up in a few weeks! If you go to a watch party, you might like to play the following game with your friends. Before the football game starts, create a 10x10 board with the rows and columns numbered 0 through 9. Each cell represents a possible final score of the home and away team, mod 10. You and your friends select cells in round robin order until all 100 cells are taken. Whoever has the cell with the final score (mod 10) wins! \n", "\n", "Let's play together, using the upcoming Cotton Bowl between Ohio State and Texas as our example. Fill out [this poll](https://docs.google.com/forms/d/e/1FAIpQLSec3E2Wi8h5YyxVtnxrbgDH2nnN7XRt5MzJB-xtzUHhvZBChg/viewform?usp=sharing) to enter your guess." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "The final scores (mod 10) are discrete random variables! \n", "\n", "Let's look at some data from this season and see if we can make an informed prediction." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "tags": [ "hide-output" ] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/scott/anaconda3/lib/python3.10/site-packages/tqdm/auto.py:22: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", " from .autonotebook import tqdm as notebook_tqdm\n" ] } ], "source": [ "# Setup\n", "import torch \n", "from torch.distributions import Chi2, Multinomial\n", "import matplotlib.pyplot as plt\n", "import pandas as pd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Poll Results" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
TimestampNameNet IDAre you comfortable programming in Python?Have you used PyTorch before?How many points (mod 10) do you think the Ohio State Buckeyes will score in the Cotton Bowl Friday Night?How many points (mod 10) do you think the Texas Longhorns will score in the Cotton Bowl Friday Night?
01/4/2025 13:40:46Scott Lindermanswl1YesYes47
\n", "
" ], "text/plain": [ " Timestamp Name Net ID \\\n", "0 1/4/2025 13:40:46 Scott Linderman swl1 \n", "\n", " Are you comfortable programming in Python? Have you used PyTorch before? \\\n", "0 Yes Yes \n", "\n", " How many points (mod 10) do you think the Ohio State Buckeyes will score in the Cotton Bowl Friday Night? \\\n", "0 4 \n", "\n", " How many points (mod 10) do you think the Texas Longhorns will score in the Cotton Bowl Friday Night? \n", "0 7 " ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "responses = pd.read_csv(\"https://docs.google.com/spreadsheets/d/1dAOhartEFTZ7fKde8CkRnaWNah1ikFssRpWMyy5FcqA/export?format=csv\")\n", "responses.head(1)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "predicted_scores = torch.tensor(responses[responses.columns[-2:]].values, dtype=torch.float32)\n", "predicted_hist = torch.histogramdd(predicted_scores, bins=10, range=[0, 10, 0, 10], density=True)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot the histogram\n", "plt.imshow(predicted_hist.hist, extent=(0, 10, 10, 0), cmap=\"Greys\")\n", "plt.xticks(torch.arange(10))\n", "plt.yticks(torch.arange(10))\n", "plt.xlabel(\"Predicted Ohio State Score (mod 10)\")\n", "plt.ylabel(\"Predicted Texas Score (mod 10)\")\n", "plt.title(f\"Poll Results (n={len(predicted_scores)})\")\n", "plt.grid(True)\n", "_ = plt.colorbar()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Compare to Actual Scores" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's compare to actual scores from the 2023 season. This data is from [https://collegefootballdata.com/](https://collegefootballdata.com/)." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
IdSeasonWeekSeason TypeStart DateStart Time TbdCompletedNeutral SiteConference GameAttendance...Away ConferenceAway DivisionAway PointsAway Line ScoresAway Post Win ProbAway Pregame EloAway Postgame EloExcitement IndexHighlightsNotes
040155088320231regular2023-08-26T17:00:00.000ZFalseTrueFalseFalseNaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
140152543420231regular2023-08-26T18:30:00.000ZFalseTrueTrueFalse49000.0...American Athleticfbs3.0NaN0.0010421471.01385.01.346908NaNNaN
240154019920231regular2023-08-26T19:30:00.000ZFalseTrueTrueFalseNaN...UACfcs7.0NaN0.025849NaNNaN6.896909NaNNaN
340152014520231regular2023-08-26T21:30:00.000ZFalseTrueFalseTrue17982.0...Conference USAfbs14.0NaN0.5919991369.01370.06.821333NaNNaN
440152545020231regular2023-08-26T23:00:00.000ZFalseTrueFalseFalse15356.0...FBS Independentsfbs41.0NaN0.7607511074.01122.05.311493NaNNaN
540153239220231regular2023-08-26T23:00:00.000ZFalseTrueFalseFalse23867.0...Mid-Americanfbs13.0NaN0.0455311482.01473.06.547378NaNNaN
640154062820231regular2023-08-26T23:00:00.000ZFalseTrueFalseFalseNaN...Patriotfcs13.0NaN0.077483NaNNaN5.608758NaNNaN
740152014720231regular2023-08-26T23:30:00.000ZFalseTrueFalseFalse21407.0...Mountain Westfbs28.0NaN0.8191541246.01241.05.282033NaNNaN
840153999920231regular2023-08-26T23:30:00.000ZFalseTrueTrueFalseNaN...MEACfcs7.0NaN0.001097NaNNaN3.122344NaNNaN
940152398620231regular2023-08-27T00:00:00.000ZFalseTrueFalseFalse63411.0...Mountain Westfbs28.0NaN0.0017691462.01412.01.698730NaNNaN
\n", "

10 rows × 33 columns

\n", "
" ], "text/plain": [ " Id Season Week Season Type Start Date \\\n", "0 401550883 2023 1 regular 2023-08-26T17:00:00.000Z \n", "1 401525434 2023 1 regular 2023-08-26T18:30:00.000Z \n", "2 401540199 2023 1 regular 2023-08-26T19:30:00.000Z \n", "3 401520145 2023 1 regular 2023-08-26T21:30:00.000Z \n", "4 401525450 2023 1 regular 2023-08-26T23:00:00.000Z \n", "5 401532392 2023 1 regular 2023-08-26T23:00:00.000Z \n", "6 401540628 2023 1 regular 2023-08-26T23:00:00.000Z \n", "7 401520147 2023 1 regular 2023-08-26T23:30:00.000Z \n", "8 401539999 2023 1 regular 2023-08-26T23:30:00.000Z \n", "9 401523986 2023 1 regular 2023-08-27T00:00:00.000Z \n", "\n", " Start Time Tbd Completed Neutral Site Conference Game Attendance ... \\\n", "0 False True False False NaN ... \n", "1 False True True False 49000.0 ... \n", "2 False True True False NaN ... \n", "3 False True False True 17982.0 ... \n", "4 False True False False 15356.0 ... \n", "5 False True False False 23867.0 ... \n", "6 False True False False NaN ... \n", "7 False True False False 21407.0 ... \n", "8 False True True False NaN ... \n", "9 False True False False 63411.0 ... \n", "\n", " Away Conference Away Division Away Points Away Line Scores \\\n", "0 NaN NaN NaN NaN \n", "1 American Athletic fbs 3.0 NaN \n", "2 UAC fcs 7.0 NaN \n", "3 Conference USA fbs 14.0 NaN \n", "4 FBS Independents fbs 41.0 NaN \n", "5 Mid-American fbs 13.0 NaN \n", "6 Patriot fcs 13.0 NaN \n", "7 Mountain West fbs 28.0 NaN \n", "8 MEAC fcs 7.0 NaN \n", "9 Mountain West fbs 28.0 NaN \n", "\n", " Away Post Win Prob Away Pregame Elo Away Postgame Elo Excitement Index \\\n", "0 NaN NaN NaN NaN \n", "1 0.001042 1471.0 1385.0 1.346908 \n", "2 0.025849 NaN NaN 6.896909 \n", "3 0.591999 1369.0 1370.0 6.821333 \n", "4 0.760751 1074.0 1122.0 5.311493 \n", "5 0.045531 1482.0 1473.0 6.547378 \n", "6 0.077483 NaN NaN 5.608758 \n", "7 0.819154 1246.0 1241.0 5.282033 \n", "8 0.001097 NaN NaN 3.122344 \n", "9 0.001769 1462.0 1412.0 1.698730 \n", "\n", " Highlights Notes \n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 NaN NaN \n", "4 NaN NaN \n", "5 NaN NaN \n", "6 NaN NaN \n", "7 NaN NaN \n", "8 NaN NaN \n", "9 NaN NaN \n", "\n", "[10 rows x 33 columns]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "allgames = pd.read_csv(\"https://raw.githubusercontent.com/slinderman/stats305b/winter2024/data/01_allgames.csv\")\n", "allgames.head(10)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "past_scores = torch.tensor(allgames[[\"Home Points\", \"Away Points\"]].values, dtype=torch.float32)\n", "past_hist = torch.histogramdd(past_scores % 10, bins=10, range=[0, 10, 0, 10], density=True)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot the histogram\n", "plt.imshow(past_hist.hist, extent=(0, 10, 10, 0), cmap=\"Greys\")\n", "plt.xticks(torch.arange(10))\n", "plt.yticks(torch.arange(10))\n", "plt.xlabel(\"Away Score (mod 10)\")\n", "plt.ylabel(\"Home Score (mod 10)\")\n", "plt.title(f\"All College Football Games from 2023 (n={len(past_scores)})\")\n", "plt.grid(True)\n", "_ = plt.colorbar()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Contingency Tables\n", "\n", "The table above is an example of a **contingency table**. It represents a sample from a **joint distribution** of two random variables, $X, Y \\in \\{0,1,\\ldots, 10\\}$ indicating the two scores, mod 10.\n", "\n", "More generally, let $X \\in \\{1,\\ldots, I\\}$ and $Y \\in \\{1,\\ldots, J\\}$ be categorical random variables. We represent the joint distribution as an $I \\times J$ table,\n", "\\begin{align*}\n", "\\mbPi = \\begin{bmatrix}\n", "\\pi_{11} & \\ldots & \\pi_{1J} \\\\\n", "\\vdots & & \\vdots \\\\\n", "\\pi_{I1} & \\ldots & \\pi_{IJ}\n", "\\end{bmatrix}\n", "\\end{align*}\n", "where\n", "\\begin{align*}\n", "\\pi_{ij} = \\Pr(X = i, Y = j).\n", "\\end{align*}\n", "The probabilities must be normalized,\n", "\\begin{align*}\n", "1 = \\sum_{i=1}^I \\sum_{j=1}^J \\pi_{ij} \\triangleq \\pi_{\\bullet \\bullet}\n", "\\end{align*}\n", "The **marginal probabilities** are given by,\n", "\\begin{align*}\n", "\\Pr(X = i) &= \\sum_{j=1}^J \\pi_{ij} \\triangleq \\pi_{i \\bullet}, \\\\\n", "\\Pr(Y = j) &= \\sum_{i=1}^I \\pi_{ij} \\triangleq \\pi_{\\bullet j}.\n", "\\end{align*}\n", "Finally, the conditional probabilities are given by Bayes' rule,\n", "\\begin{align*}\n", "\\Pr(Y =j \\mid X=i) &= \\frac{\\Pr(X=i, Y=j)}{\\Pr(X=i)} = \\frac{\\pi_{ij}}{\\pi_{i \\bullet}} \\triangleq \\pi_{j | i}\n", "\\end{align*}\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Comparing Two Proportions\n", "\n", "Contingency tables are often used to compare two groups $X \\in \\{0,1\\}$ based on a binary response variables $Y \\in \\{0,1\\}$. The resulting tables are 2x2. The association between $X$ and $Y$ can be summarized with a variety of statistics: the difference of proportions, the relative risk, and the odds ratio. We will focus on the latter.\n", "\n", "For a Bernoulli random variable with probability $p$, the odds are defined as \n", "\\begin{align*}\n", "\\Omega = \\frac{p}{1 - p}. \n", "\\end{align*}\n", "Inversely, $p = \\frac{\\Omega}{\\Omega + 1}$.\n", "\n", "For a 2x2 table, each row defines a Bernoulli conditional,\n", "\\begin{align*}\n", "Y \\mid X=i &\\sim \\mathrm{Bern}(\\pi_{1|i}) & \\text{for } i &\\in \\{0,1\\},\n", "\\end{align*}\n", "where, recall, \n", "\\begin{align*}\n", "\\pi_{1|i} = \\frac{\\pi_{i1}}{\\pi_{i0} + \\pi_{i1}}.\n", "\\end{align*}\n", "The odds for row $i$ are,\n", "\\begin{align*}\n", "\\Omega_i = \\frac{\\pi_i}{1 - \\pi_i} \n", "= \\frac{\\pi_{i1}}{\\pi_{i0}}.\n", "\\end{align*}\n", "\n", "The _odds ratio_ $\\theta$ is exactly what it sounds like, \n", "\\begin{align*}\n", "\\theta \n", "&= \\frac{\\Omega_1}{\\Omega_0} \n", "= \\frac{\\pi_{11} \\pi_{00}}{\\pi_{10} \\pi_{01}}\n", "\\end{align*}\n", "\n", "The odds ratio is non-negative, $\\theta \\in \\reals_+$. When $X$ and $Y$ are independent, the homogeneity of conditionals implies that $\\pi_{1|1} = \\pi_{1|0}$ and $\\pi_{0|1} = \\pi_{0|0}$. In turn, $\\Omega_1 = \\Omega_0$ so that the odds ratio, $\\theta$, is one.\n", "\n", "For inference it is often more convenient to work with the _log odds ratio_,\n", "\\begin{align*}\n", "\\log \\theta &= \\log \\pi_{11} + \\log \\pi_{00} - \\log \\pi_{10} - \\log \\pi_{01}.\n", "\\end{align*}\n", "Under independence, the log odds ratio is 0. The magnitude of the log odds ratio represents the strength of association. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Confidence Intervals for Log Odds Ratio \n", "\n", "Given a sample of counts $\\mbX=\\mbx$ from a contingency table, the MLE estimate of the probabilities is\n", "\\begin{align*}\n", "\\hat{\\pi}_{ij} &= \\frac{x_{ij}}{x_{\\bullet \\bullet}}\n", "\\end{align*}\n", "For a 2x2 table, the sample estimate of log odds ratio is,\n", "\\begin{align*}\n", "\\log \\hat{\\theta} &= \\log \\frac{\\hat{\\pi}_{11} \\hat{\\pi}_{00}}{\\hat{\\pi}_{10} \\hat{\\pi}_{01}} \n", "= \\log \\frac{x_{11} x_{00}}{x_{10} x_{01}}.\n", "\\end{align*}\n", "\n", "We can estimate 95% Wald confidence intervals usign the asymptotic normality of the estimator,\n", "\\begin{align*}\n", "\\log \\hat{\\theta} \\pm 1.96 \\, \\hat{\\sigma}(\\log \\hat{\\theta})\n", "\\end{align*}\n", "where\n", "\\begin{align*}\n", "\\hat{\\sigma}(\\log \\hat{\\theta})\n", "&= \\left(\\frac{1}{x_{11}} + \\frac{1}{x_{00}} + \\frac{1}{x_{10}} + \\frac{1}{x_{01}} \\right)^{\\frac{1}{2}}\n", "\\end{align*}\n", "is an estimate of the standard error using the _delta method_.\n", "\n", "### Delta method\n", "The sample log odds ratio is a nonlinear function of the maximum likelihood estimates of $\\hat{\\pi}_{ij}$,\n", "\\begin{align*}\n", "\\hat{\\pi}_{ij} &= \\frac{x_{ij}}{n}.\n", "\\end{align*}\n", "where $n = x_{\\bullet \\bullet} = \\sum_{ij} x_{ij}$.\n", "\n", "Let $\\hat{\\mbpi} = \\mathrm{vec}(\\hat{\\mbPi}) = (\\hat{\\pi}_{11}, \\hat{\\pi}_{10}, \\hat{\\pi}_{01}, \\hat{\\pi}_{00})$ denote the vector of probability estimates. \n", "\n", "The MLE is asymptotically normal with variance given by the inverse Fisher information,\n", "\\begin{align*}\n", "\\sqrt{n}(\\hat{\\mbpi} - \\mbpi) \\to \\mathrm{N}(0, \\cI(\\mbpi)^{-1}) \n", "\\end{align*}\n", "where\n", "\\begin{align*}\n", "\\cI(\\mbpi)^{-1} \n", "&= \n", "\\begin{bmatrix}\n", "\\pi_{11}(1-\\pi_{11}) & -\\pi_{11} \\pi_{10} & - \\pi_{11} \\pi_{01} & -\\pi_{11} \\pi_{00} \\\\\n", "-\\pi_{10} \\pi_{11} & \\pi_{10} (1 - \\pi_{10}) & - \\pi_{10} \\pi_{01} & -\\pi_{10} \\pi_{00} \\\\\n", "-\\pi_{01} \\pi_{11} & -\\pi_{01} \\pi_{10} & \\pi_{01} (1 - \\pi_{01}) & -\\pi_{01} \\pi_{00} \\\\\n", "-\\pi_{00} \\pi_{11} & -\\pi_{00} \\pi_{10} & -\\pi_{00} \\pi_{01} & \\pi_{00} (1 - \\pi_{00})\n", "\\end{bmatrix}\n", "\\end{align*}\n", "The (multivariate) delta method is a way of estimating the variance of a scalar function of the estimator, $g(\\hat{\\mbpi})$. Using a first order Taylor approximation around the true probabilities,\n", "\\begin{align*}\n", "g(\\hat{\\mbpi}) &\\approx g(\\mbpi) + \\nabla g(\\mbpi)^\\top (\\hat{\\mbpi} - \\mbpi)\n", "\\end{align*}\n", "we can derive the approximate variance as,\n", "\\begin{align*}\n", "\\Var[g(\\hat{\\mbpi})] \n", "&\\approx \n", "\\Var[\\nabla g(\\mbpi)^\\top \\hat{\\mbpi}] \n", "= \\nabla g(\\mbpi)^\\top \\Cov[\\hat{\\mbpi}] \\nabla g(\\mbpi).\n", "\\end{align*}\n", "Then, the estimate of $g(\\mbpi)$ is asymptotically normal as well, and its variance depends on the gradient of $g$,\n", "\\begin{align*}\n", "\\sqrt{n}(g(\\hat{\\mbpi}) - g(\\mbpi)) \\to \\mathrm{N}(0, \\nabla g(\\mbpi)^\\top \\cI(\\mbpi)^{-1} \\nabla g(\\mbpi)) \n", "\\end{align*}\n", "\n", "For the log odds ratio, $g(\\mbpi) = \\log \\pi_{11} + \\log \\pi_{00} - \\log \\pi_{10} - \\log \\pi_{01}$ and \n", "\\begin{align*}\n", "\\nabla g(\\mbpi) &= \\begin{pmatrix}\n", "1 / \\pi_{11} \\\\ -1 / \\pi_{10} \\\\ -1 / \\pi_{01} \\\\ 1 / \\pi_{00} \n", "\\end{pmatrix}.\n", "\\end{align*} \n", "Substituting this into the expression for the asymptotic variance yields,\n", "\\begin{align*}\n", "\\nabla g(\\mbpi)^\\top \\cI(\\mbpi)^{-1} \\nabla g(\\mbpi)\n", "&= \\sum_{ij} [\\cI(\\mbpi)^{-1}]_{ij} \\cdot [\\nabla g(\\mbpi)]_i \\cdot [\\nabla g(\\mbpi)]_j \\\\\n", "&= \\frac{1}{\\pi_{11}} + \\frac{1}{\\pi_{00}} + \\frac{1}{\\pi_{10}} + \\frac{1}{\\pi_{01}}.\n", "\\end{align*}\n", "Of course, we don't know $\\mbpi$. Plugging in the estimates $\\hat{\\pi}_{ij} = x_{ij} / n$ yields the Wald standard error,\n", "\\begin{align*}\n", "\\hat{\\sigma}(\\log \\hat{\\theta}) \n", "&= \\left(\\frac{\\nabla g(\\hat{\\mbpi})^\\top \\cI(\\hat{\\mbpi})^{-1} \\nabla g(\\hat{\\mbpi})}{n} \\right)^{\\frac{1}{2}} \\\\\n", "&= \\left(\\frac{1}{x_{11}} + \\frac{1}{x_{00}} + \\frac{1}{x_{10}} + \\frac{1}{x_{01}} \\right)^{\\frac{1}{2}},\n", "\\end{align*}\n", "as shown above." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Independence\n", "\n", "One of the key questions in the analysis of contingency tables is whether $X$ and $Y$ are independent. In particular, they are independent if the joint distribution factors into a product of marginals,\n", "\\begin{align*}\n", "X \\perp Y \\iff \\pi_{ij} = \\pi_{i \\bullet} \\pi_{\\bullet j} \\; \\forall i,j.\n", "\\end{align*}\n", "\n", "Equivalently, the variables are independent if the conditionals are _homogeneous_,\n", "\\begin{align*}\n", "X \\perp Y \\iff \\pi_{j|i} = \\frac{\\pi_{ij}}{\\pi_{i \\bullet}} = \\frac{\\pi_{i \\bullet} \\pi_{\\bullet j}}{\\pi_{i \\bullet}} = \\pi_{\\bullet j} \\; \\forall i,j.\n", "\\end{align*}\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Independence Testing in Multi-Way Tables\n", "Here, we will derive a likelihood ratio test to test for independence in a contingency table. Let $\\cH_0: \\pi_{ij} = \\pi_{i \\bullet} \\pi_{\\bullet j}$ for all $i,j$ be our null hypothesis of independence. The null hypothesis imposes a constraint on the set of probabilities $\\mbPi$. Rather than taking on any value $\\mbPi \\in \\Delta_{IJ - 1}$, they are constrained to the $\\Delta_{I-1} \\times \\Delta_{J-1}$ subset of probabilities that factor into an outer product of marginal probabilities. \n", "\n", "The likelihood ratio test compares the maximum likelihood under the constrained set to the maximum likelihood under the larger space of all probabilities,\n", "\\begin{align*}\n", "\\lambda &= \n", "-2 \\log \\frac\n", "{\n", " \\sup_{\\mbpi_{i \\bullet}, \\mbpi_{\\bullet j} \\in \\Delta_{I-1} \\times \\Delta_{J-1}} p(\\mbx; \\mbpi_{i \\bullet} \\mbpi_{\\bullet j}^\\top)\n", "}\n", "{\n", " \\sup_{\\mbPi \\in \\Delta_{IJ-1}} p(\\mbx; \\mbPi)\n", "}\n", "\\end{align*}\n", "The maximum likelihoods estimates of the constrained model are $\\hat{\\pi}_{i \\bullet} = x_{i \\bullet} / x_{\\bullet \\bullet}$ and $\\hat{\\pi}_{\\bullet j} = x_{\\bullet j} / x_{\\bullet \\bullet}$; under the unconstrained model they are $\\hat{\\pi}_{ij} = x_{ij} / x_{\\bullet \\bullet}$. Plugging these estimates in yields,\n", "\\begin{align*}\n", "\\lambda &= \n", "-2 \\log \\frac\n", "{\n", " \\prod_{ij} \\left( \\frac{x_{i \\bullet} x_{\\bullet j}}{x_{\\bullet \\bullet}^2} \\right)^{x_{ij}}\n", "}\n", "{\n", " \\prod_{ij} \\left( \\frac{x_{i j}}{x_{\\bullet \\bullet}} \\right)^{x_{ij}}\n", "} \\\\\n", "&= -2 \\sum_{ij} x_{ij} \\log \\frac{\\hat{\\mu}_{ij}}{x_{ij}}\n", "\\end{align*}\n", "where $\\hat{\\mu}_{ij} = x_{\\bullet \\bullet} \\hat{\\pi}_{i \\bullet} \\hat{\\pi}_{\\bullet j} = x_{i \\bullet} x_{\\bullet j} / x_{\\bullet \\bullet}$ is the expected value of $X_{ij}$ under the null hypothesis of independence.\n", "\n", "Under the null hypothesis, $\\lambda$ is asymptotically distributed as chi-squared with $(IJ -1) - (I-1) - (J-1) = (I-1)(J-1)$ degrees of freedom,\n", "\\begin{align*}\n", "\\lambda \\sim \\chi^2_{(I-1)(J-1)},\n", "\\end{align*}\n", "allowing us to construct p-values." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Example: Home and Away Scores\n", "\n", "As an example, let's test for independence of home and away scores (mod 10) using the 2023 data." ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "# Compute the empirical marginals\n", "def compute_lr_stat(X):\n", " pi_i = X.sum(1) / X.sum()\n", " pi_j = X.sum(0) / X.sum()\n", " mu = X.sum() * pi_i[:, None] * pi_j[None, :]\n", " lmbda = -2 * torch.sum(X * (torch.log(mu) - torch.log(X + 1e-8)))\n", " return lmbda, mu\n", "\n", "X = torch.histogramdd(past_scores % 10, bins=10, range=[0, 10, 0, 10], density=False).hist\n", "lmbda, mu = compute_lr_stat(X)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Plot the histogram\n", "plt.imshow(torch.log(mu / X), extent=(0, 10, 10, 0), vmin=-.7, vmax=.7, cmap=\"RdBu\")\n", "plt.xticks(torch.arange(10))\n", "plt.yticks(torch.arange(10))\n", "plt.xlabel(\"Away Score (mod 10)\")\n", "plt.ylabel(\"Home Score (mod 10)\")\n", "plt.title(f\"All College Football Games from 2023 (n={len(past_scores)})\")\n", "plt.grid(True)\n", "_ = plt.colorbar(label=r\"$\\log \\frac{\\hat{\\mu_{ij}}}{x_{ij}}$\")" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "# Compare test statistic to a null in which the scores really are independent\n", "pi_i = X.sum(1) / X.sum()\n", "pi_j = X.sum(0) / X.sum()\n", "Pi = pi_i[:, None] * pi_j[None, :]\n", "assert torch.allclose(Pi.sum(), torch.tensor(1.0))\n", "\n", "n_resamples = 10000\n", "X_null = Multinomial(total_count=int(X.sum()), probs=Pi.view(-1)).sample((n_resamples,))\n", "X_null = X_null.reshape((n_resamples,) + X.shape)\n", "lmbda_null = torch.stack([compute_lr_stat(xx)[0] for xx in X_null])\n" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, '$p(\\\\lambda \\\\mid \\\\mathcal{H}_0)$')" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkwAAAGxCAYAAACQgOmZAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB7hElEQVR4nO3deVzU1f7H8dcMMwyLCwoKSiqmKKiIgIqopSaKZZYtZmZu1yz7Zbl0rWzRbptl6VXTm9ly2zS7lllpkrjmgogo7nsaboCo7AzM9vtjYpRABVm+M8Pn+XicR9N3zsy855vJh/M933NUFovFghBCCCGEuC610gGEEEIIIeydFExCCCGEEDchBZMQQgghxE1IwSSEEEIIcRNSMAkhhBBC3IQUTEIIIYQQNyEFkxBCCCHETWiUDuAszGYz58+fp27duqhUKqXjCCGEEKIcLBYLOTk5NG3aFLX6+uNIUjBVkfPnz9OsWTOlYwghhBDiFpw5c4bbbrvtus9LwVRF6tatC1hPeL169RROI4QQQojyyM7OplmzZraf49cjBVMVKb4MV69ePSmYhBBCCAdzs+k0UjAJIYQQouoVFcG8edbHEyeCq6uyeSpJJZvvVo3s7Gzq169PVlaWjDAJIYQQeXlQp471cW4ueHoqm+c6yvvzW0aYhBBCCFH1NBoYNerqYwfn+N/AwZhMJgwGg9IxRAVptVpcXFyUjiGEEI5Dp4MvvlA6RZWRgqmGWCwWUlNTyczMVDqKuEVeXl74+fnJOltCCFELScFUQ4qLpcaNG+Ph4SE/dB2IxWIhPz+f9PR0AJo0aaJwIiGEEDVNCqYaYDKZbMWSt7e30nHELXB3dwcgPT2dxo0by+U5IYS4mbw88Pe3Pj53zm4nfZeXFEw1oHjOkoeHh8JJRGUU//czGAxSMAkhRHlkZSmdoMpIwVSD5DKcY5P/fkIIUQHu7nDs2NXHDk4KJiGEEEJUPbUaAgOVTlFlpGBSkF6vr9ElBrRaLW5ubjX2eUIIIYSzkIJJIXq9nrjN28jMK6yxz/Ty1NGvV48aK5o2bdpEnz59uHLlCl5eXnzxxRdMmjRJllYQQojawGCAxYutj598ErRaZfNUkhRMCjEYDGTmFZKm9kalrf4CxmLQQ94lDAaDjDIJIYSofkVFMGGC9fHo0VIwicpRad1Qu1b/ZDgzQM0NZgkhhKjtXFzg4YevPnZwaqUDCPvVu3dvnnvuOV544QUaNmyIn58fr7/+OgCnT59GpVKRnJxs65+ZmYlKpWLTpk2K5BVWer2enJycMpter1c6nhCitnBzg+XLrc0JrmzICJO4oS+//JIpU6aQkJBAfHw8o0ePpkePHgQ60Z0PzuRmc+Nqeh6bEEI4CymYxA117NiRGTNmABAYGMiCBQtYv369FEx26kZz42QemxBC3DopmMQNdezYscS/N2nSxLanmrBfZc2Nk3lsQogalZ9/dR2m48fBwXe7kIJJ3JD2b3c1qFQqzGYzarV1+pvFYrE9V5NrSgkhhLBzFgucP3/1sYOTSd/iljRq1AiACxcu2I5dOwFcCCFELefmBnv2WJsTTAOQESaFWQx666WSGvicquTu7k63bt149913admyJenp6bz66qtV+hlCCCEcmIsLdOqkdIoqIwWTQrRaLV6eOsi7VGPzSrw8daUusVXG559/ztixY4mIiKBt27bMmjWL/v37V9n7CyGEEPZCZbE4wYVFO5CdnU39+vXJysqiXr16JZ7T6/WcOnWKli1blrg7SfaScyzX++9oT3JyclgZt4V0nX/pSd9FBTQuPMfgfndQt25dhRIKIWoNgwGWLLE+Hj7cblf6vtHP72vJCJOC3Nzc7PYHrxBCCFEpRUUwZoz18ZAhdlswlZcUTEIIIYSoei4ucM89Vx87OCmYhBBCCFH13Nxg9WqlU1QZWVZACCGEEOImpGASQgghhLgJKZiEEEIIUfWKt0YJDLQ+dnAyh0kIIYQQVc9igRMnrj52cFIwCVFLFOoLOHHsEDvqaomMjESlUpXqI2t1CSGqjJsbbN169bGDk4JJCCd1/tRRDmxbx4VTRzn/x1Eyzv9p2yz59tZtGHDfA3Tp1gOXa2739fLU0a9XDymahBCV5+ICPXoonaLKSMEkhBNKXPcT3y94C5Ox5ErynnXqUlhYyB8njvGfOe/RoHET7rh/OF37PYBO6wJ5lzAYDFIwCSHE30jBJCrlzJkzjBgxgvT0dDQaDa+99hpDhgxROlatZTKZ+PbLT1nz848ABIZFEdT5Dpq2bEtjPz9css5iqN+cxA2r2fbLEq6kX+DnTz5gw/L/8tRbi/Bt4qHwNxBCOA2jEX60/l3EAw+AxrFLDsdOLxSn0WiYO3cunTp1IjU1lYiICO655x48PT2VjlbrZGVlMXToUNauXQtA/8efof/jE1CrrTfDGnOvkJ91ljpeDRkw8lnuGjqOpHU/sXH5Z2Sc/5PFr47n1TdnKvkVhBDOpLAQHnnE+jg31+ELJllWQFRKkyZN6NSpEwB+fn74+Phw+fJlZUPVQidPniQqKoq1a9eidXXl8RfeY8DI52zFUllcdW5EDRzKpA+X498qmJzMS7z3r1dISUmpweRCCKelVkOvXtZ2g7+LHIXjfwNhN5KSkjCZTDRr1kzpKLXKlStX6NWrF4cPH6Zp06a8+tYsOt0ZU+7Xe9Stz5PvfEbj21pyOeMigwYN4sKFC9WYWAhRK7i7w6ZN1uburnSaSpOCSVSJy5cvM3LkSBYvXqx0lFrn2Wef5dy5cwQGBrJp0yZatgqs8HvUbeDNk28twqexL6dOnaJfv35kZGRUQ1ohhHBMUjCJGxoyZAiNGjUqUQglJCTg6upqmytTWFjI4MGDeemll+jevbtSUWulFStWsGTJEtRqNV9//TV+fn63/F5ePr68NONtmjRpwsGDBxkwYAAFBQVVmFYIIRyXFEwKsFgs5OXlKdIsFVxtdf78+Tz00EO88cYbAOTm5vL444/z9NNP079/fywWC6NHj+auu+5ixIgR1XG6xHWkp6czfvx4AF588UUiIyMr/Z6N/Zrw888/4+PjQ1JSEm+//Xal31MIUUsVFECnTtbmBL98OfaUdQeVn59PnTp1FPns3NzcCt3B1qRJEyZNmsTHH3/MpUuXmDp1Kjqdjvfeew+Abdu28d1339GxY0dWrlwJwNdff01ISEh1xBd/sVgsPP3001y8eJGQkBBmzJhRZe/dtm1bPv74Yx566CFmzZrFY489Rrt27ars/YUQtYTZDHv3Xn3s4KRgEjfVpk0bPDw8mD59OkuWLGHnzp22hQ179uyJ2Qn+R3A0S5cuZcWKFWg0Gr766it0Ol2Vvv8DDzzAvffey6pVqxg/fjybNm264R13QghRipsb/DV1Q7ZGEbfEw8OD3NxcxT67otRqNSEhIfznP/9h1qxZhIaG2p7797//zaefforFYiE6Opp58+bZ9ih74IEH2LRpE3379uX777+vsu9Q250/f54JEyYAMGPGDNuyDlVJpVKxYMECNmzYwJYtW/jiiy/4xz/+UeWfI4RwYi4u0K+f0imqjBRMClCpVA61sGPxvKfw8HCef/552/GLFy+yYMECDh48iFar5c4772THjh1ERUUBMHHiRP7xj3/w5ZdfKpLbWT311FNkZmbSpUsXXnrppWr7nBYtWvCvf/2LqVOnMnXqVAYNGkSjRo2q7fOEEMKeyRi7uKm5c+eSkJCA2WwudVnGaDSi1+sxGAwYDAYaN25se653797UrVu3puM6tfj4eFatWoVWq+XLL79EU80r506cOJGOHTty+fJl/vnPf1brZwkhnIzRCKtXW5vRqHSaSpOCSdzQ/v37mTZtGv/3f//HoUOHMF7zh75Ro0b885//pHnz5jRt2pTo6GhatWqlYFrn98477wAwcuRIgoODq/3ztFotH3/8MSqViq+++oqNGzdW+2cKIZxEYSHce6+1FRYqnabS7LJgWrhwIQEBAbi5uREZGcnOnTtv2H/58uUEBQXh5uZGSEgIv/76a4nnX3/9dYKCgvD09KRBgwZER0eTkJBQos/ly5cZPnw49erVw8vLi7Fjxyo2z8he6PV6HnvsMYYOHcpbb71FUVERR44csT1/5coVVq1axenTpzl37hzbt2/n999/VzCxc9u7dy+rVq1CrVbz4osv1tjnduvWzbZ8wfjx4yl0gr/4hBA1QK2Gzp2tzQluGrG7b/Ddd98xZcoUZsyYwe7duwkNDSUmJob09PQy+2/fvp1hw4YxduxY9uzZw+DBgxk8eDAHDhyw9WnTpg0LFixg//79bN26lYCAAPr378/FixdtfYYPH87BgweJi4tj1apV/P777zz55JPV/n3t2UsvvUReXh4LFiygQYMGtGjRgrlz53L+/HkA1q1bR+vWrWnYsCHu7u4MHDiQHTt2KJzaeb377ruAdTHRwMCKr+ZdGe+88w6+vr4cO3aMr776qkY/WwjhoNzdITHR2mRrlKo3Z84cxo0bx5gxY2jXrh2LFi3Cw8ODzz//vMz+8+bNY8CAAUydOpXg4GDefPNNwsPDWbBgga3PY489RnR0NLfffjvt27dnzpw5ZGdns2/fPgAOHz5MbGwsn376KZGRkfTs2ZMPP/yQZcuW2YqDvyssLCQ7O7tEcyZr165l4cKFfPPNN7Z5SK+++iorV67kmWeeAaBZs2Zs374dvV6PyWRi06ZNtG3bVsnYDkOv15OTk3PdptfrS/Q/fvw4//vf/wB4+eWXazyvl5eXbVTrvffeK3FpVgghagO7ukuuqKiIpKQkpk2bZjumVquJjo4mPj6+zNfEx8czZcqUEsdiYmJsiyiW9RmLFy+mfv36ttvj4+Pj8fLyonPnzrZ+0dHRqNVqEhISeOCBB0q9z8yZM/nXv/5V0a/oMPr374/BYChx7IknnuCJJ56w/Xu3bt245557CAsLQ61W07dvX+677z7b89HR0ezdu5e8vDxuu+02li9fbruDrjbT6/XEbd5GZt71L215eero16uHbb2r9957D7PZzL333kubNm3Iyckp83W5ubmYTKZqyT1u3DjefvttTp48yffff8+jjz5aLZ8jhBD2yK4KpoyMDEwmE76+viWO+/r6lpg7c63U1NQy+6emppY4tmrVKh599FHy8/Np0qQJcXFx+Pj42N7j2ru7ADQaDQ0bNiz1PsWmTZtWolDLzs6mWbNm5fuiTuTtt9++7vYZ69atq+E0jsFgMJCZV0ia2huVtvRibhaDHvIuYTAYcHNz48yZM7bLYM8///wNiy2joYjUi5dwadYUtWvV5q5Tpw4TJ05k+vTpzJw5k6FDh9rW3BJCiFIKCiA62vp43TqHvyxnd5fkqkufPn1ITk5m+/btDBgwgEceeeS686LKQ6fTUa9evRJNiIpQad1Qu7qXan8voj744AMMBgN9+vQhIiLCVmyl6/xLtYvqBhQZTZjN1TPKNGHCBOrUqcO+fftK3VwhhBAlmM2wfbu1OcGOEHZVMPn4+ODi4kJaWlqJ42lpadfdhd3Pz69c/T09PWndujXdunXjs88+Q6PR8Nlnn9ne4+/Fk9Fo5PLly5Xa/V2IykpPT+eTTz4BSs5dum6xpane7QcaNGjA008/DVhHFyu6mbMQohbR6eDHH62tirdvUoJdFUyurq5ERESwfv162zGz2cz69euvO/clKiqqRH+AuLi4m86VMZvNttujo6KiyMzMJCkpyfb8hg0bMJvNVbIDvBC3at68eRQUFNClSxf69u2rdBwAJk+ejE6nIz4+XpaREEJcn0YDgwdbWzUvslsT7KpgApgyZQqffPIJX375JYcPH+bpp58mLy+PMWPGANYF+66dFD5x4kRiY2OZPXs2R44c4fXXX2fXrl22vbby8vJ4+eWX2bFjB3/++SdJSUn84x//4Ny5cwwZMgSA4OBgBgwYwLhx49i5cyfbtm1jwoQJPProozRt2rTmT4IQQEFBAQsXLgTglVdesZv5Qk2aNLHtK1e8kKYQQjg7uyuYhg4dygcffMD06dPp1KkTycnJxMbG2iZ2p6SkcOHCBVv/7t27s3TpUhYvXkxoaCjff/89K1eupEOHDgC4uLhw5MgRHnroIdq0acOgQYO4dOkSW7ZsoX379rb3WbJkCUFBQfTt25d77rmHnj17snjx4pr98kJcY9WqVWRlZREQEMCgQYOUjlPC1KlTcXFxYe3atSVGZoUQwsZkgk2brK2a7t6tSXY5RjZhwgTbCNHfbdq0qdSxIUOG2EaL/s7NzY0VK1bc9DMbNmzI0qVLK5RTiOq0ZMkSwDqq+vc9/JTWsmVLhg0bxjfffMPMmTP5/vvvlY4khLA3ej306WN9nJsLDrTpfFns629hIQQAly9l2PZtGzlypMJpyvbSSy8BsGLFCo4fP65wGiGE3VGpoF07a7OTKQWVIQWTEHZo2+YNWCwW7rzzTrvd0Lh9+/bcc889WCwW2518Qghh4+EBBw9am4eH0mkqTQomIeyMxWJh60brnZ+jR49WNsxNFO+3+MUXX1BUVKRwGiGEqD5SMAlhZ1KO7ufC+bN4eHjw8MMPKx3nhgYOHEiTJk24ePEiP//8s9JxhBCi2kjBJG7Zpk2bUKlUZGZmKh2lStjL90lcZy087r//ftvGx/ZKo9HYlvyQy3JCiBIKCqBfP2srKFA6TaVJwSSEHSkq1JO8JRaA4cOHK5ymfMaOHQtYF4w9ffq0smGEEPbDbLbuIbdunWyNIkRNc/Z5MgfjN6DPy8WnUWN69uypdJxyuf3224mOjsZisdi2GxJCCHQ6+OYba5OtUUSl5OVZ27X7cRUVWY8VFpbd99oq3WCwHtPry9f3FhQWFvLcc8/RuHFj3Nzc6NmzJ4mJiSX6bNu2jY4dO+Lm5ka3bt04cOCA7bk///yTQYMG0aBBAzw9PWnfvn2JTVsPHDjA3XffTZ06dfD19WXEiBFkZGTYnu/duzcTJkxg0qRJ+Pj4EBMTw2OPPcbQoUNLZDAYDPj4+PDVV18B1q1vZs6cScuWLXF3d7ctanqtX3/9lTZt2uDu7k6fPn3sYnQkca11zbAeve5SZO0ls8lIbm4uOTk5pZr+73/OrjFu3DgAPv/8c4xGY03FFULYM40Ghg+3NtkaRVRKnTrWdk2BwPvvW4/9feHOxo2tx1NSrh5buNB67K9LIjYBAdbjhw9fPfbFF7cU8YUXXuCHH37gyy+/ZPfu3bRu3ZqYmBguX75s6zN16lRmz55NYmIijRo1YtCgQRj+KtCeeeYZCgsL+f3339m/fz/vvfcederUASAzM5O77rqLsLAwdu3aRWxsLGlpaTzyyCMlMnz55Ze4urqybds2Fi1axPDhw/nll1/Izc219fntt9/Iz8/ngQceAGDmzJl89dVXLFq0iIMHDzJ58mQef/xxNm/eDMCZM2d48MEHGTRoEMnJyTzxxBO2dYWUkpmRxtHd2wDo2Se6xj/fYjSQmpZG7JadrIzbUqrFbd523aLp/vvvx8fHh/Pnz7NmzZoaTi6EENXP8Us+UW3y8vL46KOP+OKLL7j77rsB68TeuLg4PvvsM7p06QLAjBkz6NevH2Atbm677TZ+/PFHHnnkEVJSUnjooYcICQkBrJdvii1YsICwsLAS+5F9/vnnNGvWjGPHjtGmTRsAAgMDmTVrlq1Pq1at8PT05Mcff2TEiBEALF26lPvuu4+6detSWFjIO++8w7p162ybMN9+++1s3bqVjz/+mF69evHRRx/RqlUrZs+eDUDbtm1tBZ1Sktb/hMVspmX7cBo1alSiICyWm5uLqZq2GLCYTeiNFlJV3rjqSk42txj0kHcJg8GAm5tbqdfqdDpGjRrF7Nmz+eSTT+xuKxchhAJMJti92/o4PBxcXJTNU0lSMCmp+AfitQt6TZ0KkyaVHr5MT7f+09396rFnnoFx40r/ISy+tHRt31tYz+fkyZMYDAZ69OhhO6bVaunatSuHDx+2FUzFRQlYt5hp27Yth/8a3Xruued4+umnWbt2LdHR0Tz00EN07NgRgL1797Jx40bbiNPfP7u4YIqIiCjxnEaj4ZFHHmHJkiWMGDGCvLw8fvrpJ5YtWwbAiRMnyM/PtxVxxYqKiggLCwPg8OHDREZGlnj+2u9R0ywWC7viVgLQuc9A20iPRqMt0c9oKCL14iVcmjVF7Vo9WVQaV9Su7iWOmQEKy+xuM2LECGbPns3q1as5evRoiY2rtVptmYWWEMKJ6fXQtav1sRNsjSIFk5LK+sPj6mpt5emr1Vpbefsq4IknniAmJobVq1ezdu1aZs6cyezZs3n22WfJzc1l0KBBZY7qNGnSxPbYs4zvM3z4cHr16kV6ejpxcXG4u7szYMAAANvIzOrVq/H39y/xOp2dTjxMSzlJWspJNFpXQrr1Rn/xRJkjPSZTJkXGdHRm+9rIUq/Xk5KaQdvg9hw9fJBX/vU29z/8qO15L08d/Xr1kKJJiNpEpYIWLa4+dnAyh0lcV6tWrWxzh4oZDAYSExNp166d7diOHTtsj69cucKxY8cIDg62HWvWrBnjx49nxYoVPP/887b1esLDwzl48CABAQG0bt26RCurSLpW9+7dadasGd999x1LlixhyJAhaP8qCtu1a4dOpyMlJaXU+zZr1gyA4OBgdu7cWeI9r/0eNW3/tjgA2oR3x83D+t2LR3qubSqNcgXHjSaEX7lyhUvZ+YT1ty60uWHDelK1TUjX+ZOm9iYzr9A2r00IUUt4eFiveJw+7RRbo8gIk7guT09Pnn76aaZOnUrDhg1p3rw5s2bNIj8/n7Fjx7J3714A3njjDby9vfH19eWVV17Bx8eHwYMHAzBp0iTuvvtu2rRpw5UrV9i4caOtmHrmmWf45JNPGDZsGC+88AINGzbkxIkTLFu2jE8//RSXm1zvfuyxx1i0aBHHjh2zbVQLULduXf75z38yefJkzGYzPXv2JCsri23btlGvXj1GjRrF+PHjmT17NlOnTuWJJ54gKSmJL25xYnxVOLB9HQAdutf8ZO/yuHZC+N8vE8LVS4UduvfD/bN/cyXtPKcO7yMwLKpcl/OEEMLeyQiTuKF3332Xhx56iBEjRhAeHs6JEyf47bffaNCgQYk+EydOJCIigtTUVH755Rdc/7qsaDKZeOaZZwgODmbAgAG0adOG//znPwA0bdqUbdu2YTKZ6N+/PyEhIUyaNAkvL69y3VI/fPhwDh06hL+/f4l5VgBvvvkmr732GjNnzrR99urVq2nZsiUAzZs354cffmDlypWEhoayaNGiEpPPa9KV9AucOXYAlUpF+253KZLhZq6dEJ6u8y/VLqobUGQ04aLVEnqH9dLo7k2rFU4thBBVR0aYxA25ubkxf/585s+fX+q53r17Y/lrDal77723zNd/+OGHN3z/wMBAVqxYcd3nN23adN3ngoODbZ//dyqViokTJzJx4sTrvv7ee+8tlbt4m4+adHDHBgAC2odTt4E3xtwrNZ6hvMqaEA5gLrq63EBYn4HsWPM/9m1dy0MTpstvZULUVno9PPrXXMZly8DB5zDK32VCKKx4/lKInV6Oq6hWIV2o17ARBTlZHE3advMXCCGck8kEP/1kbdW0HEpNkoJJCAXl52Rxcq918rm9zl+qKLWLC6G9rOt27dm4SuE0QgjFuLrC4sXWVtbd3w5GCiYhFHQoYRNms4kmLdvg07S50nGqTFjvgQAciN9Akd7xdykXQtwCrda6VuC4cYotbVOVpGASQkEHtq8HnGd0qViLoFAa+vpTpM/nUOLvSscRQohKk4KpBl1vgrJwDFX9389QqOfIX8WEs8xfKqZSqej01yhT8u+/KZxGCKEIsxkOHrS2azeDd1BSMNWA4gUV8/PzFU4iKqP4v5+2ioaWjyUnUFRYQIPGTfFv3e7mL3Aw4X2sBdORXVvJz8tTOI0QosYVFECHDtZW4PiX5mVZgRrg4uKCl5cX6X/tB+fh4YHKCZaJry0sFgv5+fmkp6fj5eV10wU1y+vgDutimx2693XKPw9NWrbFt3kr0lJOkpSwnccGD1A6khCipvn4KJ2gykjBVEP8/PwAbEWTcDxeXl62/46VZTaZOJiwGXC++UvFVCoVYb0HEvvVfHZsk3lMQtQ6np5w8aLSKaqMFEw1RKVS0aRJExo3bix7ajkgrVZbZSNLAMeOHCYv+wrudetze0jnKntfexPWx1owHdyXzJ9//kmL4o04/0ar1crGvEIIuyYFUw1zcXGp0h+8wjEl7YwHoH1kH1xcnPd/w0b+AdzWKpizJw8za+4C+t1zX5n9vDx19OvVQ4omIYTdkknfQtQwi8XC7r8KppAe/RROU/1Ce1ovOW7ZvqPMfejS1N5k5hXKyKsQzkavh+HDrU2vv3l/OycFkxA17MSJE1xMT8NFo6VNeHel41S70B7Wgun04b1kZ2WhdnUv0VRaGVUSwimZTLB0qbXJ1ihCiIpat24dALe3D0fn7qFwmurn5eNLs5atgKv75gkhagFXV/j3v61NtkYRQlTUhg0bAGgTHqVwkpoTHBIGwIHt6xROIoSoMVotTJpkbbI1ihCiIgoLC9myZQsAbcNqT8EUFNIJgJP7EsnLvqJsGCGEuAVSMAlRg7Zv305+fj71vbxo0rKN0nFqTEOfRvi1aI3ZbOLQjk1KxxFC1ASzGU6ftjbZGkUIURG//WbdV61DaLhTru59I+0iewGwXy7LCVE7FBRAy5bW5gRbo0jBJEQNWrt2LQAhncIVTlLz2kf2BuBo0laK9I7/l6cQohw8PKzNCUjBJEQNSUtLY8+ePQB0CA1TOE3NaxIQSANffwyFeo7s2qp0HCFEdfP0hLw8a/P0VDpNpUnBJEQNKV5OIDQ0lHr1vZQNowCVSkXIX/vmyd1yQghHIwWTEDWkeP7SXXfdpXAS5RSvbH4wYSMmo6zsLYRwHFIwCVEDLBaLbf5S3759FU6jnJbtw/Gs34CCnCxO7t+ldBwhRHUqLIRx46ytsFDpNJUmBZMQNWDfvn2kpaXh4eFBZGSk0nEUo3ZxoX036wibXJYTwskZjfDpp9ZmNCqdptKkYBKiBhSPLvXp0wedTqdwGmUVX5Y7sG0dFotF4TRCiGqj1cJbb1mbE6z0rVE6gBC1QfH8pf79+yucRHltwrvj6uZBZkYqZ48fwD+gtdKRhBDVwdUVXnlF6RRVRkaYhKhm+fn5tu1QYmJiFE6jPK2rjuAudwCwf5tclhNCOAa7LJgWLlxIQEAAbm5uREZGsnPnzhv2X758OUFBQbi5uRESEsKvv/5qe85gMPDiiy8SEhKCp6cnTZs2ZeTIkZw/f77EewQEBKBSqUq0d999t1q+n6hdNm/eTFFREc2bN6dNm9qzHcqNdPjrstz+bXEKJxFCVBuLBS5etDYnuPxudwXTd999x5QpU5gxYwa7d+8mNDSUmJgY0tPTy+y/fft2hg0bxtixY9mzZw+DBw9m8ODBHDhwALD+dr97925ee+01du/ezYoVKzh69Cj33Xdfqfd64403uHDhgq09++yz1fpdRe1QfDkuJiam1m2Hcj3tInvjotGSlnKS9LOnlY4jhKgO+fnQuLG15ecrnabS7K5gmjNnDuPGjWPMmDG0a9eORYsW4eHhweeff15m/3nz5jFgwACmTp1KcHAwb775JuHh4SxYsACA+vXrExcXxyOPPELbtm3p1q0bCxYsICkpiZSUlBLvVbduXfz8/GzN8wYrkxYWFpKdnV2iCVGW4gnfMn/pKnfPurTq2BWAQzt/VziNEELcnF0VTEVFRSQlJREdHW07plariY6OJj4+vszXxMfHl+gP1t/kr9cfICsrC5VKhZeXV4nj7777Lt7e3oSFhfH+++9jvMFtkDNnzqR+/fq21qxZs3J8Q1HbnD9/nsOHD6NSqWr1+ktlaffX3nKHd21RNogQonp4elovxVkssjVKVcvIyMBkMuHr61viuK+vL6mpqWW+JjU1tUL99Xo9L774IsOGDaNevXq248899xzLli1j48aNPPXUU7zzzju88MIL1806bdo0srKybO3MmTPl/ZqiFtm8eTMAYWFhNGjQQOE09qW4YDp1cA95ebnKhhFCiJuoVcsKGAwGHnnkESwWCx999FGJ56ZMmWJ73LFjR1xdXXnqqaeYOXNmmevm6HS6Wr+ejri5jRs3AtC7d29lg9ghn6bN8W3eirSUkxxI3gOD71Y6khBCXJddjTD5+Pjg4uJCWlpaieNpaWn4+fmV+Ro/P79y9S8ulv7880/i4uJKjC6VJTIyEqPRyOnTpyv+RYT4y6ZNmwDrgpWitOCuvQBITrrxnbBCCAdUWAiTJlmbbI1StVxdXYmIiGD9+vW2Y2azmfXr1xMVFVXma6Kiokr0B4iLiyvRv7hYOn78OOvWrcPb2/umWZKTk1Gr1TRu3PgWv42o7c6dO8fx48dRq9X07NlT6Th2qV03ayG5d/cuTCaTwmmEEFXKaIR586zNCbZGsbtLclOmTGHUqFF07tyZrl27MnfuXPLy8hgzZgwAI0eOxN/fn5kzZwIwceJEevXqxezZsxk4cCDLli1j165dLF68GLAWSw8//DC7d+9m1apVmEwm2/ymhg0b4urqSnx8PAkJCfTp04e6desSHx/P5MmTefzxx2Xeibhl185f+vsNBsKqZbsw3D3rkpuTza5du0rdwCGEcGBaLbz88tXHDs7uCqahQ4dy8eJFpk+fTmpqKp06dSI2NtY2sTslJQW1+urAWPfu3Vm6dCmvvvoqL7/8MoGBgaxcuZIOHToA1t/yf/75ZwA6depU4rM2btxI79690el0LFu2jNdff53CwkJatmzJ5MmTS8xrEqKiZP7SzblotLSN6EHy77H89ttvUjAJ4UxcXeHtt5VOUWXsrmACmDBhAhMmTCjzueI5IdcaMmQIQ4YMKbN/QEDATTf4DA8PZ8eOHRXOKcSNyPyl8mnX5Q6Sf48lNjaW999/X+k4QghRJruawySEszh79iwnTpyQ+Uvl0DaiByq1mgMHDpRaTFYI4cAsFsjLszbZGkUIUZbi0aXw8HDq16+vbBg751nPi9ZtggBYvXq1wmmEEFUmPx/q1LE22RpFCFEWuRxXMZ0iugCwatUqhZMIIUTZpGASohoUF0wy4bt8wjpb95XbsGED+U7wm6gQAvDwgNxca/PwUDpNpUnBJEQVO3PmDCdPnsTFxUXmL5WTf7MWNG/eHL1ez4YNG5SOI4SoCiqVdQ85T0/rYwcnBZMQVax4dCkiIuKmK8oLK5VKRUxMDCCX5YQQ9kkKJiGqmFyOuzUDBgwArAXTzZYCEUI4gKIieOUVaysqUjpNpUnBJEQVk4Lp1txxxx14eHhw7tw59u7dq3QcIURlGQzwzjvWZjAonabSpGASogqlpKTwxx9/yPylW+Dm5kbfvn0BWLNmjcJphBCVptHAxInWprHLdbIrRAomIapQ8ehS586dqVu3rrJhHNDdd98NSMEkhFPQ6WDuXGvT6ZROU2lSMAlRheRyXOUUF0zbt28nMzNT2TBCCHENKZiEqELFBVP37t3Jyckps+Xm5mIymZQNaqcCAgIICgrCZDKxbt06peMIIYSN419UFMJOnDlzhlOnTuHi4kKBScXKuC1l9jMaiki9eAmXZk1Ru9ZwSAcwYMAAjhw5wpo1a3j44YeVjiOEuFV5edZtUcC6eKWnp7J5KklGmISoIlu3bgWgY8eOFFlcSFN7k67zL9UuqhtQZDRhNssoUzGzyUhubi45OTn06tULsM5jys7ORq/XK5xOCCFkhEmIKlNcMEVFRQGg0rqhdnUv1c9cJAXAtSxGA6lpacRu2YlGo6WoCFx1Oi5cuMCHn35Fx/bB9OvVAzc3N6WjCiEqwsMD0tOvPnZwMsIkRBXZssV6Ca64YBLlYzGb0BstpKqsI3KZdVvSqqN1b7ltew6TmVeIwQnWcBGi1lGpoFEja5OtUYQQAFeuXOHAgQOAFEy3SqVxRe3qjtrVneDIPgAcTU5QOJUQQlhJwSREFYiPj8disRAYGEjjxo2VjuPwgrvcCcDpw3spyM9XOI0Q4pYUFcHbb1ubbI0ihICrl+Nkde+q4d2kGY1uC8BsMnJg3x6l4wghboXBAK++am1OcFldJn0LUQWKJ3zfcccdCidxHkFd7uTi2dPs25OkdBQhxK3QaOCJJ64+dnAywiREJen1enbu3AnICFNVKr4st2/3LiwWi8JphBAVptPBJ59Ym2yNIoTYtWsXRUVF+Pr60rp1a6XjOI1WHbui1blx5fIlDh06pHQcIUQtJwWTEJVUfDmuZ8+eqJzg1ll7oXXV0SqkMwBxcXEKpxFC1HZSMAlRSTLhu/oERVjPqRRMQjigvDzrdiientbHDk4KJiEqwWw2s23bNkAmfFeHoIjugHXZhuzsbIXTCCEqLD/f2pyAFExC3CK9Xk9CQgJZWVl4enpy++23k5OTQ25uLiaT7BNXFXyaNsfXrylGo5ENGzYoHUcIURHu7nDqlLW5l94mytE4/n1+QihAr9cTt3kb3//wAwABrQJZtTEeAKOhiNSLl3Bp1hS1q5IpnUNIWDhpa87z22+/MXjwYKXjCCHKS62GgAClU1QZGWES4hYYDAYy8wrZd+QkAP4hUaTr/EnX+XNR3YAiowmzWUaZqkLHsAgAYmNjZXkBIYRipGAS4hZZLBZOHd4LQKuOkbZ90FQaN4WTOZfg9h1xdXXl9OnTHDt2TOk4QojyMhhg7lxrc4KVvqVgEuIWXbp4kayMNNQuGpoHhSodx2np3Nzo3t06+fu3335TOI0QotyKimDyZGuTveSEqL2OHj4AwG2t26Fz91A4jXOLjo4GrJflhBAOwsUFHnvM2lxclE5TaVIwCXGLjh2xrj7dskOEwkmcX9++fQHYtGkTer1e4TRCiHJxc4MlS6zNzfGnKkjBJMQtOnbYWjDd3qGzwkmcm9lkpHnz5jRp0oSCggJ+++03cnJybE0KKCFETZBlBYS4BZcvX+bcmT8BaNk+XOE0zstiNJCalsZvWxNpHdyBCxcusOizL8k2aW19vDx19OvVAzcn+A1WCGG/ZIRJiFuQmJgIQCP/FtTxaqhwGudlMZvQGy2kqrxp0cU6j2nP3n22JRzS1N5k5hVicII7cIRwOnl50KiRtcnWKELUTgkJCQC0CJa742qCSuNK2y69UanVpKWcJCsz07qEg1ZGlYSwaxkZ1uYEpGAS4hYUF0wBspxAjfGs50Xzth0BOJq0VeE0QoibcneHAweszQm2RpGCSYgKMhgMJCUlARDQrpOyYWqZoM7WDY6P7tqicBIhxE2p1dC+vbWpHb/ccPxvIEQN27t3L/n5+Xh4etL4tpZKx6lV2nbuCcDR3dsxmYwKpxFC1CZSMAlRQdu3bwcgsG0waif4rcmRNG8Tgnvd+ujzckg5sk/pOEKIGzEY4JNPrM0JbsyQv+2FqKBt27YB1oJJ1Cy1iwttw63bpByRy3JC2LeiInjySWuTrVGEqH2KR5haS8GkiOJ5TFIwCWHnXFzg/vutTbZGqR4LFy4kICAANzc3IiMj2blz5w37L1++nKCgINzc3AgJCeHXX3+1PWcwGHjxxRcJCQnB09OTpk2bMnLkSM6fP1/iPS5fvszw4cOpV68eXl5ejB07ltzc3Gr5fsJxnTlzhrNnz+Li4kKrwLZKx6mV2kRY5zGdPXaAvKwrCqcRQlyXmxusXGltTrCwrN0VTN999x1TpkxhxowZ7N69m9DQUGJiYkhPTy+z//bt2xk2bBhjx45lz549DB48mMGDB3PggHVj1Pz8fHbv3s1rr73G7t27WbFiBUePHuW+++4r8T7Dhw/n4MGDxMXFsWrVKn7//XeefPLJav++wrEUX47r2LEjOif4C8ARefn40qRlGywWC8eSdygdRwhRS1SqYDIYDJw5c4ajR49y+fLlKgk0Z84cxo0bx5gxY2jXrh2LFi3Cw8ODzz//vMz+8+bNY8CAAUydOpXg4GDefPNNwsPDWbBgAQD169cnLi6ORx55hLZt29KtWzcWLFhAUlISKSkpABw+fJjY2Fg+/fRTIiMj6dmzJx9++CHLli0rNRJVrLCwkOzs7BJNOL/iy3GRkZEKJ6ndbMsL7N6ucBIhRG1R4YIpJyeHjz76iF69elGvXj0CAgIIDg6mUaNGtGjRgnHjxtm2jaiooqIikpKSiI6OvhpQrSY6Opr4+PgyXxMfH1+iP0BMTMx1+wNkZWWhUqnw8vKyvYeXlxedO1/dRDU6Ohq1Wm1boPDvZs6cSf369W2tWbNm5f2awoFJwWQf2toKpngsFovCaYQQZcrPh4AAa8vPVzpNpVWoYJozZw4BAQH897//JTo6mpUrV5KcnMyxY8eIj49nxowZGI1G+vfvz4ABAzh+/HiFwmRkZGAymfD19S1x3NfXl9TU1DJfk5qaWqH+er2eF198kWHDhlGvXj3bezRu3LhEP41GQ8OGDa/7PtOmTSMrK8vWzpw5U67vKBxXbm4uycnJgBRMSru9fQSuOndyrmRw5s9TSscRQpTFYoE//7Q2J/jFRlORzomJifz++++0b9++zOe7du3KP/7xDxYtWsR///tftmzZQmBgYJUErQoGg4FHHnkEi8XCRx99VKn30ul06HS6KkomHEFiYiImk4lmzZpx2223seuw/KBWisbVldadIjmUsIl9e5KAUUpHEkL8nZsbFN+05QRzPitUMH377bfl6qfT6Rg/fnyFw/j4+ODi4kJaWlqJ42lpafj5+ZX5Gj8/v3L1Ly6W/vzzTzZs2GAbXSp+j79PKjcajVy+fPm6nytqn+LLcd27d1c4iQDrZblDCZvYn7xb6ShCiLK4uECXLkqnqDJ2dZecq6srERERrF+/3nbMbDazfv16oqKiynxNVFRUif4AcXFxJfoXF0vHjx9n3bp1eHt7l3qPzMxM2/5gABs2bMBsNsulF2FTfIecFEz2oXji97Ejh8jJyVE4jRDC2VVohOl6rly5wtq1azl37hwATZs2JSYmhgYNGlT4vaZMmcKoUaPo3LkzXbt2Ze7cueTl5TFmzBgARo4cib+/PzNnzgRg4sSJ9OrVi9mzZzNw4ECWLVvGrl27WLx4MWAtlh5++GF2797NqlWrMJlMtnlJDRs2xNXVleDgYAYMGMC4ceNYtGgRBoOBCRMm8Oijj9K0adOqOEXCwZnNZtuNBD169FA4jQBo5N8Cb7/buJR6li1btjB06FClIwkhrmU0wnffWR8PHQqaKik5FFPpEabPPvuMqKgoEhISMJvNmM1mEhIS6N69O5999lmF32/o0KF88MEHTJ8+nU6dOpGcnExsbKxtYndKSgoXLlyw9e/evTtLly5l8eLFhIaG8v3337Ny5Uo6dOgAwLlz5/j55585e/YsnTp1okmTJrZWfIkFYMmSJQQFBdG3b1/uueceevbsaSu6hDh8+DCZmZl4eHjQsWNHpeOIv7SNsI72rVu3TuEkQohSCgvh8cetrbBQ6TSVVulyb9asWezevRtPT88Sx4vXQxo7dmyF33PChAlMmDChzOc2bdpU6tiQIUMYMmRImf0DAgLKddtxw4YNWbp0aYVyitrj2uUEtFoter1e4UQCoG14d7av/p8UTELYI7Uaipf9cYKNyitdMKlUKnJyckoVTDk5OahUqsq+vRB2QSZ826dWIV1w0Wg4ffo0J06coHXr1kpHEkIUc3eHuDilU1SZShdMH3zwAb169aJDhw74+/sDcPbsWQ4ePMjs2bMrHVAIeyATvu2Tm4cnbYLacfjAPmJjY687Mi2EEJVV6YLp3nvv5e6772bnzp22bUSaNm1K165dcXGC3YmFyMjIsC3Cer27NYVyQjqFc/jAPn777TcpmIQQ1eaWCqa1a9fSv39/27+7uLjIDxLhtIrvjmvXrt0t3fkpqlfHsAj+980XbNiwgcLCQllQVgh7kZ9/dR2mxETw8FA2TyXd0iysCRMmMGTIEL755ptSm+6aTCY2b95cJeGEsAfF85fklwL75H9bMxo3bkx+fj5xcXHk5OTYmkzOF0JBFgscOmRttW1rlGJvv/0206ZN44cffrCNLt13333cd999tGnTxrY5rxDOQCZ82y+L0UBaejqBwe1JT0/no0+/4ErR1d8DvTx19OvVAzcn2JZBCIfj5gYbN1597OBuaYRpyJAhnDhxgh07dhAWFkZOTg4vvvgiwcHB1K9fn7Vr11Z1TiEUYTAYSExMBKRgskcWswm90cJtoXcCsGfvPtJ1/qTr/ElTe5OZV4jBYFA4pRC1lIsL9O5tbU4wp7lSk767du1KkyZN+Omnn0hLS+O3335j27Zt3HXXXVWVTwhF7d27l4KCAho0aECbNm2UjiOuIzC8OyqVigunj5OTk019b1/MAI6/Vp4Qwk5UeiWp4kUhfX19GTlyJB9//LFsUSCcxrXzl9ROsPCas/Ks50WzNiEAHN21VeE0QgjAujXKypXWZjQqnabSbuknwJEjR9i3b19VZxHCruj1etsNDBERESUmE+fm5mIymRROKK4V1MW6Ge/hxN8VTiKEAKzboTzwgLXV1q1RunTpQn5+Ps2aNUOr1bJx40Z69uyJVqut6nxCKEKv1xO3eRubf98CgMHFnZVxW2zPGw1FpF68hEuzpqhdlUoprhXU5U7WfrOQY7u3YzIZkX0GhFCYWg3Fcz+dYIT+lr5BQEAAK1asYOjQoeh0Ovr27Yu3tzf33XcfX375Zbn2bhPCnhkMBv5IOceljIuo1Grqtu9tm0ycrvPnoroBRUYTZrOMMtmL5m1C8KjrRUFuNilH9iodRwjh7g7btlmbu7vSaSrtlgqmLl26cP/99/Pee+9x4MAB/vjjD95++22Kiop46qmnWLBgQVXnFKLGnTh6GICmtwfhXt8btau7rak0jn+LrLNRu7jQNqIHAId3ymU5IUTVuqWC6R//+Adx12yoFxAQwLPPPktsbCwpKSmlFrMUwhEd/6tgCmgXpnASUV5BXazLCxxJ3HKTnkIIUTG3VDD17NmToKCgMp9r3Lgx06ZNq1QoIezBiaNHAAgI7qRsEFFuQZ17AnD2xEFyrlxSOI0QtVxBgXVrlC5drI8d3C3PwmrWrNl1n3N1lVmwwrEVFBRw+tRJQEaYHEndBj7c1ro9AEd3b1c4jRC1nNkMu3ZZm9msdJpKc/xp60JUg+TkZExGI3Ub+NDQ7zal44gKKF5e4EjSNoWTCFHL6XSwapW1OcGm2FIwCVGGnTt3AtAiqCMqldyg7kiCu1rnMR3bE49Z1soSQjkaDQwcaG2aSm0sYhekYBKiDAkJCQAEBIcqnERUVPOgUNzr1CM/J4s/Th5XOo4QwklIwSTE31gsFimYHJiLi4Y24dbF8vbt3qVwGiFqMZMJ4uKszQlGeytUMHXp0gUXF5dyN7VajYsT7FAsapdTp05x8eJFNBoN/q2ClY4jbkHwX8sL7EtOUjiJELWYXg/9+1ubXq90mkqr0EXF9evXYzAYqiuLEHaheMPdFre3Ruvq+BMVa6O2fy0vcOrEcTIyMqhbt67CiYSohdRqCA29+tjBVahgqlevXnXlEMJuFBdMgW1ldMlR1ff2pWnLNpw/dYz169fzxBNPKB1JiNrH3R2Sk5VOUWUcv+QToopJweQcgiKso0zr1q1TOIkQwhlIwSTENXJycti/fz8ArduWvZq9cAxtI6wTv9evX4/ZCRbNE0IoSwomIa6RkJCA2WymRYsWNGjorXQcUQkBwaG4e3iQkZFBUpJM/haixhUUQO/e1labt0YRwhkVX47r2rWrwklEZblotLQP6QTAr7/+qmwYIWojsxk2b7Y2JxjllYJJiGts22bdTiMyMlLhJKIqhEZ0AWD16tUKJxGiFtLp4H//szYn2BqlStYqN5lMHDlyhAMHDtjajz/+WBVvLUSNMZlM7NixA4Bu3brxR1qWwolEZYWGdwYgMTGRtLQ0fH19FU4kRC2i0cCQIUqnqDIVLpj++OMP9u/fX6I4On78OAaDAVdXV4KDgwkJCamOrEJUq4MHD5KdnU2dOnVo164df6TFKx1JVJJXg4aEhYWxZ88e1qxZw+jRo5WOJIRwUBUqmB5//HG+/fZbVCoVHh4e5OXlMXDgQKZPn05ISAiBgYGysrdwWMXzl7p164bGCTaKFFb9+/dnz549rF69WgomIWqSyQR/jdrTrRs4eH1QoTlM33//PfPnzyc3N5fz588zYcIE1q5dS2JiIi1atJBiSTi04vlL3bt3VziJqEr9+/cHYO3atbJTgRA1Sa+Hnj2tzQm2RqlQwTR58mRGjhyJm5sbderUYd68eWzbto2NGzfSvn17YmNjqyunENWueISpR48eCicRVcVsMtK2bVt8fHzIzs4mLi6OnJwcW9M7wV/iQtgtlQpat7Y2lUrpNJVWoesOM2fOLHUsIiKCnTt3Mn/+fIYOHcrAgQOZN28ejRo1qrKQQlS31NRU/vjjD1Qqldwh5yQsRgOpaWms3baLth1Cydi0ngUff8ala2okL08d/Xr1wM3NTbmgQjgrDw84flzpFFWmSpYVUKlUTJw4kUOHDlFYWEhQkKyQLBxL8ehSSEgI9evXVziNqAoWswm90UKqypuWkdbLckl7kknX+ZOu8ydN7U1mXqFcphNClEuVzmz19/fnhx9+kDVPhMOR+UvOS6VxJTjyLtRqF9LP/MGVSxl4N2mGGaBQ6XRCCEdRoRGmlJSUcvUbOHAgAOfOnat4IiEUIPOXnJt7nXoEtA8H4HDi7wqnEaKW0Oth4EBrc4L5ghUqmLp06cJTTz1FYmLidftkZWXxySef0KFDB3744YdKBxSiuhUUFNj2GpMRJufVLrIXAIcSNikbRIjawmSCX3+1NpNJ6TSVVqFLcocOHeLtt9+mX79+uLm5ERERQdOmTXFzc+PKlSscOnSIgwcPEh4ezqxZs7jnnnuqK7cQVSYpKQmDwYCvry8tW7ZUOo6oJu269mbVpx9wYm8CRfoCNLIxlBDVy9UV/vvfq48dXIX+yvD29mbOnDlcuHCBBQsWEBgYSEZGBsf/mgU/fPhwkpKSiI+Pl2JJOIzi+Us9evRA5QS3voqy+bZoTQNff4xFhRxP3qF0HCGcn1YLo0dbm1ardJpKu6VJ3+7u7jz88MM8/PDDtnlK/v7+VRpMiJpSPH9JLsc5N5VKRbuuvdj2y1IO79xEcHg3zCYjubm5ZfbXarWy3IAQwuaWB6W3bdtGy5Ytad68Oc2bN8fX15cXX3yR7OzsSgVauHAhAQEBuLm5ERkZyc6dO2/Yf/ny5QQFBeHm5kZISAi//vpriedXrFhB//798fb2RqVSkZycXOo9evfujUqlKtHGjx9fqe8hHIPFYpEJ37VIcNfieUybMRuKSE1LI3bLTlbGbSnV4jZvk4UthagMkwmSk63NCeYw3XLB9NRTTxEcHExiYiJHjx7l/fffZ926dYSHh9/y3XHfffcdU6ZMYcaMGezevZvQ0FBiYmJIT08vs//27dsZNmwYY8eOZc+ePQwePJjBgwdz4MABW5+8vDx69uzJe++9d8PPHjduHBcuXLC1WbNm3dJ3EI7l+PHjZGRkoNPpCAsLUzqOqGatQyPRuOrIvHiBC6eP2dZpKl6bSdZoEqIK6fUQFmZtTvDLxy0XTCdPnmTu3LmEh4fTunVrRo4cya5duwgLC2PSpEm39J5z5sxh3LhxjBkzhnbt2rFo0SI8PDz4/PPPy+w/b948BgwYwNSpUwkODubNN98kPDycBQsW2PqMGDGC6dOnEx0dfcPP9vDwwM/Pz9bq1at3S99BOJbi+UtdunRBp9MpnEZUN1c3d9qERQFweJf1v71K44ra1b1EU2nlUpwQlaZSQdOm1uYE80NvuWAKDg4uNfKjUql44403bmlPuaKiIpKSkkoUNmq1mujoaOLj48t8TXx8fKlCKCYm5rr9b2TJkiX4+PjQoUMHpk2bRn5+/g37FxYWkp2dXaIJxyPzl2qf9t3uAuBQ4haFkwjh5Dw84Nw5a/PwUDpNpd1ywTR69GieffZZzpw5U+J4VlbWLY3OZGRkYDKZ8PX1LXHc19eX1NTUMl+Tmppaof7X89hjj/HNN9+wceNGpk2bxtdff83jjz9+w9fMnDmT+vXr21qzZs0q9JnCPlx7h5yoHdp16w3AmeMHycnOUjaMEMJh3PLWKMWX3QIDA3nwwQfp1KkTJpOJb775xuHm/zz55JO2xyEhITRp0oS+ffty8uRJWrVqVeZrpk2bxpQpU2z/np2dLUWTg7l8+TKHDx8GICoqSuE0oqbU9/alWdsQzhzdz/FD+/EJ6aV0JCGEA7jlgunChQskJyezd+9ekpOT+eKLLzh+/DgqlYpZs2axZs0aOnbsSMeOHRkwYMBN38/HxwcXFxfS0tJKHE9LS8PPz6/M1/j5+VWof3kV71Z/4sSJ6xZMOp1O5rw4uOLRpbZt29KoUSOF04ia1KHbXZw5up+jB/chpbIQ1USvhxEjrI+//hocfJmOW74k5+vrS0xMDC+88AJLly7l0KFD5OTksG3bNiZMmICXlxc///wzjz76aLnez9XVlYiICNavX287ZjabWb9+/XV/+4+KiirRHyAuLq7SowXFSw80adKkUu8j7NvWrVsB6Nmzp8JJRE1rH2Wdx3Ty6CGKCh3/7h0h7JLJBN9/b21OsKzALY8wlcXNzY0uXbrQpUuXW3r9lClTGDVqFJ07d6Zr167MnTuXvLw8xowZA8DIkSPx9/dn5syZAEycOJFevXoxe/ZsBg4cyLJly9i1axeLFy+2vefly5dJSUnh/PnzABw9ehTAdjfcyZMnWbp0Kffccw/e3t7s27ePyZMnc+edd9KxY8fKnA5h57ZssU76veOOOxROImpak5ZtadDIjysXUzm5L5FOfQYpHUkI5+PqCsV3rde2rVGq29ChQ/nggw+YPn06nTp1Ijk5mdjYWNvE7pSUFC5cuGDr3717d5YuXcrixYsJDQ3l+++/Z+XKlXTo0MHW5+effyYsLIyBAwcC8OijjxIWFsaiRYsA68jWunXr6N+/P0FBQTz//PM89NBD/PLLLzX4zUVNKygoYNeuXYCMMNVGKpWKdl2shfJhuVtOiOqh1cIzz1hbbd0apTpNmDCBCRMmlPncpk2bSh0bMmQIQ4YMue77jR49mtGjR1/3+WbNmrF58+aKxhQObufOnRgMBvz8/GjUqBE5OTklns/NzcXkBEPI4vradbmDbb8u5/CuLZjNZtRqu/r9UQhhZ+yuYBKiJhTPX2oV2Iaf1m0t9bzRUETqxUu4NGuK2vFHkkUZWrYLQ+fmRm7mZc4c3U+L4FClIwnhXMxmOHnS+rhVK3DwX0ocO70Qt6h4/lLLNsGkqUtvjXFR3YAiowmzWUaZnJVGq6V1sPXy/cEdGxROI4QTKiiANm2sraBA6TSVJgWTqHVMJpNthe82Qe1Rad1Kb42hcezbX0X5tG1vHVU6EC8FkxDVon59a3MCUjCJWmffvn3k5ORQt25dmrcIUDqOUFBgcHvUahdSTx/j0oUzN3+BEKL8PD0hM9PaPD2VTlNpUjCJWqd4/lLXrl1Ru7gonEYoyd3Dk4B2nQA4EL/+xp2FELWaFEyi1imevyTboQiA4L+WFzgol+WEEDcgBZOoVSwWi22EqXv37gqnEfaguGD6Y/8u8nNkM14hqkxhIYwebW2FhUqnqTQpmEStcurUKS5cuIBWqyUiIkLpOMIOePvdhl+LQMxmE4cSNikdRwjnYTTCl19am9GodJpKk4JJ1CrFl+M6d+6Mu7u7wmmEvQjpEQ3A/u3rFE4ihBPRamHWLGtzgpW+pWAStYpsuCvKEtKzPwBHEn+nsCBf4TRCOAlXV5g61dpkLzkh7JterycnJ8fWirfB6dy5s2x/Imz8WwXT0NcfQ6Geo0mlV34XQgjZGkU4Lb1eT9zmbWTmWScbZmdlcfz4cQAyCszE/p4g258IwLoZb8c7Ytj0/efs27qWDl3vUDqSEI7PbIYLF6yPmzSRrVGEsFcGg4HMvELb1ieJJ1IB8G1+OwU+wbL9iSghpEc/AA7t2IjRYFA4jRBOoKAAbrvN2mRrFCHsX/HWJ6eP7gfg9pAusv2JKKVFcCfqNWyEPj+X43sTlI4jhHPQaKzNCUjBJGqNPw7sAqBle1lOQJSmVqtto0wHtsuq30JUmqcnGAzWJlujCOEYCgvyOHf8EAC3h3RWOI2wV8V3yx3YsQmz3BAghLiGFEyiVjh9cA9ms4kGjZvSoHFTpeMIO9UqpDMedb3Iy77CsSOHlI4jhLAjUjCJWuHk/kQAWnXsikqlUjiNsFcuGi3to+4CIHHHNoXTCOHgCgvhmWesTbZGEcIxnPhrEm/r0K4KJxH2ruNfl+V27diO2WxWOI0QDsxohP/8x9qcYGsU55i6LsQNFOoLSPnrDrlWHaVgEjfWJrw7OncPrly+xO7du+nTp4/SkYRwTFotzJhx9bGDkxEm4fT+PJyM2WSkQeOmNPS7Tek4ws5pXXUEd7YuXPnzzz8rnEYIB+bqCq+/bm2yNYoQ9u/kfutyAq06dpH5S6JcQnr0BeCnn34iOzu7xPY6xU2v1yucUghRk+SSnHB6VwsmuRwnyqdtaCQajYZTp07x4adf0zygZak+Xp46+vXqgZubLIAqRJksFsjKsj6uXx8c/BdWGWESTq1Qr+fM8YMAtA6NVDiNcBSuOh2tgtoDsGnnXtJ1/iVamtqbzLxCDLKFihDXl58PDRpYW36+0mkqTQom4dSOHz2MyWjEq1ETmb8kKqRDmHWB0+Qta23b6xQ3lVZGlYSobaRgEk7tyEHr3XGtQ2X9JVExbdp3ROuqI+P8n5z9a5RSCFEBHh5QVGRtHh5Kp6k0KZiEUzt8UJYTELdGp3Mj6K+75fZsWq1wGiEckEplXU5Aq3X4+UsgBZNwYvn5+fxx4hgg85fErQntad2MN3nzGlnEUohaTgom4bR27tyJyWikvo+vzF8St6RNeBQ6D08yL17gz8PJSscRwrEUFcHUqdZWVKR0mkqTgkk4rS1btgDWDVVl/pK4FVpXHSHdowHYs+lXhdMI4WAMBvjgA2tzgjtKpWASTmvr1q2AtWAS4lZ16j0QgL2/r8FsMimcRggHotXCP/9pbU6wNYosXCmcUn5+Prt2/bVgpRRMohLahEXhUdeLnCsZnNy3k8CwKKUjCeEYXF3h/feVTlFlZIRJOKX4+HgMBgMNvX3wlvlLohI0WldC/pr8vWfzGoXTCCGUIgWTcEqbN28GIKh9iMxfEpUW9tdluX1bfsNkdPy5GELUCIvFOnfJYLA+dnBSMAmntGnTJgCC24coG0Q4hdYdu1K3gQ/5OZkc271d6ThCOIb8fOtlOVdX2RpFCHuUn59PQkICAEEdOiqcRjgDtYsLoXcOAORuOSFqKymYhNPZsmULRUVF3HbbbTT29VM6jnASnXrdDcD+7XEYigoVTiOEA/DwgCtXrE22RhHC/sTFxQHQp08fmb8kqkxAu3C8fPwozM/jyK6tSscRwv6pVODlZW1O8HexFEzC6axbtw6wFkxCVBW1Wk3YXfcCsGvDLwqnEULUNCmYhFNJS0tj7969APTq1UvhNMLZdIkeDMDhxK3kZGcpG0YIe1dUBK+/bm2yNYoQ9mX9+vUAdOrUiUaNGimcRjgbv4BAbgtsj9lkJH7rZqXjCGHfDAb417+szQm2RpGVvoVTKZ6/1K9fP4WTCGfVOXowZ48fZNumDUpHEcK+aTTwf/939bGDs7sRpoULFxIQEICbmxuRkZHs3Lnzhv2XL19OUFAQbm5uhISE8OuvJW/5XbFiBf3798fb2xuVSkVycnKp99Dr9TzzzDN4e3tTp04dHnroIdLS0qrya4kaYLFYpGAS1S68z72oXTScOnmcI0eOKB1HCPul08HChdam0ymdptLsqmD67rvvmDJlCjNmzGD37t2EhoYSExNDenp6mf23b9/OsGHDGDt2LHv27GHw4MEMHjyYAwcO2Prk5eXRs2dP3nvvvet+7uTJk/nll19Yvnw5mzdv5vz58zz44INV/v1E9Tp69Cjnzp1Dp9PRs2dPpeMIJ1XHqyHBna1/vpYuXapwGiFETbGrgmnOnDmMGzeOMWPG0K5dOxYtWoSHhweff/55mf3nzZvHgAEDmDp1KsHBwbz55puEh4ezYMECW58RI0Ywffp0oqOjy3yPrKwsPvvsM+bMmcNdd91FREQE//3vf9m+fTs7duyolu8pqkfx6FLPnj1xd3dXOI1wZp37DgKsv+SZTCaF0wghaoLdFExFRUUkJSWVKGzUajXR0dHEx8eX+Zr4+PhShVBMTMx1+5clKSkJg8FQ4n2CgoJo3rz5Dd+nsLCQ7OzsEk0oSy7HiZoS3OUOPOvU4cKFC7YbDYQQf5OXB1qtteXlKZ2m0uymYMrIyMBkMuHr61viuK+vL6mpqWW+JjU1tUL9r/cerq6ueHl5Veh9Zs6cSf369W2tWbNm5f5MUfUMBoNt/zgpmER102hdiex+BwCfffYZOTk5JZper1c4oRB2wmi0Nifg+NPWFTJt2jSmTJli+/fs7GwpmhSUkJBATk4OPj4+dOrUSek4wslZjAaCQkLZsHYNK1f+RN9BQ3C/ZusHL08d/Xr1wM3NTcGUQijM3R3Onr362MHZTcHk4+ODi4tLqbvT0tLS8PMrez8wPz+/CvW/3nsUFRWRmZlZYpTpZu+j0+nQOcGsf2dRvLp33759UavtZuBUOCmL2UQj/wB8mjYn43wK63cdpGu/wdbnDHrIu4TBYJCCSdRuajX4+yudosrYzU8WV1dXIiIiSswHMJvNrF+/nqioqDJfExUVVWr+QFxc3HX7lyUiIgKtVlvifY4ePUpKSkqF3kcoS+YviZqmUqkI7z0QgKSNv6J2dUft6o5KK0WSEM7IbkaYAKZMmcKoUaPo3LkzXbt2Ze7cueTl5TFmzBgARo4cib+/PzNnzgRg4sSJ9OrVi9mzZzNw4ECWLVvGrl27WLx4se09L1++TEpKCufPnwesxRBYR5b8/PyoX78+Y8eOZcqUKTRs2JB69erx7LPPEhUVRbdu3Wr4DIhbkZWVRUJCAsB174YUojqE9RpA3LeLOLlvJ5dTz9LQ7zalIwlhP4qKYN486+OJE8HVVdk8lWQ3I0wAQ4cO5YMPPmD69Ol06tSJ5ORkYmNjbRO7U1JSuHDhgq1/9+7dWbp0KYsXLyY0NJTvv/+elStX0qFDB1ufn3/+mbCwMAYOtP4m+OijjxIWFsaiRYtsff79739z77338tBDD3HnnXfi5+fHihUrauhbi8ratGkTJpOJwMBAWrRooXQcUYt4NfKjdSfrL1YJv/2gcBoh7IzBAC+8YG2yNUrVmzBhAhMmTCjzueK7oK41ZMgQhgwZct33Gz16NKNHj77hZ7q5ubFw4UIWLlxYkajCTqxZswawbrabk5NjO56bmytr5Ihq1+3uRzi+J56E2O/p//gzqJQOJIS90Ghg1Kirjx2c438DUavp9XpWrVoNgGdDP1bGbbE9ZzQUkXrxEi7NmqJ27JFgYcdCukfjWb8B2ZfSOZywiXadeygdSQj7oNPBF18onaLK2NUlOSEq6sSJE5w7dxa12gWfiBjSdf62dlHdgCKjCbNZRplE9dG4utK1v3Urpe2rv1M4jRCiukjBJBzab7/9BkBAu054Nmhsu1NJ7eqOSiN3K4ma0e2eoQAc3bWFy2nnFE4jhKgOUjAJhxYbGwtg2wxVCCU08m9BYFgUFouFnWtXKh1HCPuQlwdeXtYmW6MIoZy8vDy2bLHOWQrueqfCaURtFzXQOsq0M24lRifZCkKISsvKsjYnIAWTcFjr16+nsLCQRo198W12u9JxRC3XIaovdby8yb58keSknUrHEUJ57u5w7Ji1OcHWKFIwCYe1atUqAEIjuqBSyc3cQlkarStdY6yTvzeuXaNwGiHsgFoNgYHW5gRbVjn+NxC1ksViYfVq63ICnSK6KpxGCKtudz8CwIG9ezh9+rSyYYQQVUoKJuGQkpOTOX/+PJ6engS1D1E6jhAA+DRtTpuwblgsFj799FNycnLKbHq9XumoQlQ/gwEWLrQ2WelbCGUUX47r06cPrg6+P5FwLpH9HuDYnh18+dXXdOrRF00ZKxx7eero16sHbm6y9IVwYkVFULxzx+jRoNUqGqeypGASDqm4YIqJiVE4iRAltevcA8+69cjKvMLGPUcJ7dm/xPMWgx7yLmEwGKRgEs7NxQUefvjqYwcnl+SEw0lLSyMxMRGA/v3736S3EDXLRaMhIuoOALb8/G2JxVTVru6otFIkiVrCzQ2WL7c2J/jlQAomYff0en2J+R8//vgjFouFsLAw6tatKxvsCrvTpUcvXDQaTh/aw59H9ikdRwhRBeSSnLBrer2euM3byMwrtB37/MtvAGjROojY3xNkg11hd+rWq0/Hnv3Zs+lXfv/xS0ZMm610JCFEJckIk7BrBoOBzLxC0tTepOv8Oa9uzL69yQA0jxooG+wKu9Vz0DAA9v4eS+bFVIXTCKGA/Hzw97e2/Hyl01SaFEzCIai0bqhd3Tl97CCFBXnUbeBD83YRssGusFtNW7ahVWhXzCYjW3/+Ruk4QtQ8iwXOn7c2i0XpNJUmBZNwKId2bAQguGsv1E6wcqxwbr0eHA1A/K//o7DA8X/DFqJC3Nxgzx5rk0nfQtQci8XCwQRrwdQusreyYYQoh3Zde+PdtDkFOVnsivtR6ThC1CwXF+jUydpkWQEhak5aykkunU/BRaOlTXh3peMIcVNqFxfuHDwSgN9XfoXZbAbAbDKSm5srK4EL4UDkLjnhMPb+HgtA24geuHnUUTiNEOXTNeZB1nw5j4tnT3Mk8XfahoSTmpZG7JadaDRlr3wsK4ELp2AwwJIl1sfDhzv8St8ywiQcRnHBFHrHAIWTCFF+OndPut09BIDNK77AYjahN1pIVVnv/Px7S1N7k5lXiMEJ9t4StVxREYwZY21FRUqnqTQpmIRDSDvzB6l/HsdFo6VD975KxxGiQnre/zgqtZrje+K5cPo4ACqNa6lVwGUlcOFUXFzgnnusTeYwCVEz9m6NA6BNeHfc69RTOI0QFdPQ15/QO6z7Hm5Y8ZXCaYSoIW5usHq1tTnB5WUpmIRD2PdXwRR6p1yOE46p76PjAdi3bR0Z6bKQpRCORgomYffOnz1D6p8nrJfjouRynHBM/q2CaB91FxaLhS1xa5SOI4SoICmYhN3bGb8VgMCwKDzq1lc4jRC3rv/w/wNg3+6dXE49p3AaIapZfj4EBlqbbI0iRPVL3G4tmDrJ5Tjh4Jq1CaFtWDcsZjObVnypdBwhqpfFAidOWJtsjSJE9Tp+/DhnUk6jdtHQXi7HCSfQ9+ExAOzetJor6ecVTiNENXJzg61brU0mfQtRvX780bqdRGCnSDzreSkbRogqEBAcSkDrtpiMRjb871Ol4whRfVxcoEcPa5NlBYSoXitXrgQgtEc/ZYMIUYV69R8IQMKa5WRfSlc4jRCiPKRgEnbr2LFjHDhwABcXFzpE9VE6jhBVJqB1G1oEdcRoKGLj8s+UjiNE9TAaYflyazMalU5TaVIwCbu1fPlyANqFhMrdccKpqFQq7hoyFoDtq5eRc+WSwomEqAaFhfDII9ZWWKh0mkqTgknYreKCqWtUT4WTCFH1AjtF0qxtCIZCPeuWLVI6jhBVT62GXr2sTe345YbjfwPhlA4fPszevXvRaDSER0YpHUeIKqdSqbhn9GQAtv/yLZcunFE4kRBVzN0dNm2yNnd3pdNUmhRMwi7997//BaB///7UrSt7xwnn1DaiB23Ce2AyGvj1i7lKxxFC3IAUTMLuGI1Gvv76awBGjBihcBohqte9T/wTgD0bV3Hm2AGF0wghrkcKJmF3YmNjSU1NpXHjxvTv31/pOEJUq9tatyP8rkEArPrsAyxOsCKyEAAUFECnTtZWUKB0mkqTgknYnc8//xyAxx9/HK1Wq3AaIarfPaMn4aLVcnxPPMd2xysdR4iqYTbD3r3WZjYrnabSpGASduXixYv88ssvAIwZM0bhNELUjIZ+t9HzvscBWP3FXMxO8MNFCNzcYO1aa5OtUYSoWt988w1Go5EuXbrQoUMHpeMIUWOihz2Fm2ddzp86xrbN68nNzSUnJ6dU0+v1SkcVonxcXKBfP2tzgq1RNEoHEKKYxWKx3R0no0uitvGs14C+jz7J6s9ms3zJV3SO7I67h2epfl6eOvr16oGbE/zGLoQjkREmYTd2797N/v37cXNzY9iwYUrHEaLG3TF4JPW9G5N55TLfr44jXedfoqWpvcnMK8RgMCgdVYibMxph9Wprk61RqsfChQsJCAjAzc2NyMhIdu7cecP+y5cvJygoCDc3N0JCQvj1119LPG+xWJg+fTpNmjTB3d2d6Ohojh8/XqJPQEAAKpWqRHv33Xer/LuJ6yue7P3AAw/g5eWlbBghFOCqc+OeEc8AsHHFV1y5lIHa1d3WVFoZVRIOpLAQ7r3X2mRrlKr33XffMWXKFGbMmMHu3bsJDQ0lJiaG9PSyd/Tevn07w4YNY+zYsezZs4fBgwczePBgDhy4up7JrFmzmD9/PosWLSIhIQFPT09iYmJKzQV44403uHDhgq09++yz1fpdxVWZmZksXboUgKFDh9rma+Tm5mIymRROJ0TN6XRHfwJat8VYVMiP/3lLlhkQjkuths6drU22Rql6c+bMYdy4cYwZM4Z27dqxaNEiPDw8bKMPfzdv3jwGDBjA1KlTCQ4O5s033yQ8PJwFCxYA1tGluXPn8uqrr3L//ffTsWNHvvrqK86fP8/KlStLvFfdunXx8/OzNU/P0vMHRNXT6/W8M+sDMjMz8fZpRGaRmpVxW1gZt4XY3xO4kJaOyQmGc4UoD5VKxcCHH8NFo+FQwiYObF+vdCQhbo27OyQmWptsjVK1ioqKSEpKIjo62nZMrVYTHR1NfHzZa5PEx8eX6A8QExNj63/q1ClSU1NL9Klfvz6RkZGl3vPdd9/F29ubsLAw3n//fYw3+CFdWFhIdnZ2iSZujcFgYM2vawAIi36ADI/mtjkbF9UNKDKaMJtllEnUHo18/bjjfusyAz/+5y0KC/IVTiSEsKuCKSMjA5PJhK+vb4njvr6+pKamlvma1NTUG/Yv/ufN3vO5555j2bJlbNy4kaeeeop33nmHF1544bpZZ86cSf369W2tWbNm5f+iooTTp09zcN8eACLvfqTknA2NzNkQtVOfh8fQwNefzIsXWLtkodJxhKj17KpgUtKUKVPo3bs3HTt2ZPz48cyePZsPP/yQwutMVJs2bRpZWVm2duaM7DR+qxYtWoTFYqFNWBTeTaTwFAKsE8Af/L9XAdj8wxeknj5+k1cIYWcKCqBHD2uTrVGqlo+PDy4uLqSlpZU4npaWhp+fX5mv8fPzu2H/4n9W5D0BIiMjMRqNnD59uszndTod9erVK9FExWVlZfHVV18B0GuwbLQrxLXaR91Fh6i+mE1Gvv/wXzIBXDgWsxm2b7c2J1i93q4KJldXVyIiIli//uokR7PZzPr164mKiirzNVFRUSX6A8TFxdn6t2zZEj8/vxJ9srOzSUhIuO57AiQnJ6NWq2ncuHFlvpK4iU8//ZTc3Fz8b2tOm/Dr//cQorYa/H+voNW58cf+RBJ+W6F0HCHKT6eDH3+0Np1O6TSVZncrfU+ZMoVRo0bRuXNnunbtyty5c8nLy7Ot/Dxy5Ej8/f2ZOXMmABMnTqRXr17Mnj2bgQMHsmzZMnbt2sXixYsB6x0nkyZN4q233iIwMJCWLVvy2muv0bRpUwYPHgxYJ44nJCTQp08f6tatS3x8PJMnT+bxxx+nQYMGipyH2sBoNDJv3jwABgwajEqlUjiREPanoa8/A0Y+xy+fzOKXz2bTLXi+0pGEKB+NBv76OesM7K5gGjp0KBcvXmT69OmkpqbSqVMnYmNjbZO2U1JSUF+znkP37t1ZunQpr776Ki+//DKBgYGsXLmyxD5kL7zwAnl5eTz55JNkZmbSs2dPYmNjbVsL6HQ6li1bxuuvv05hYSEtW7Zk8uTJTJkypWa/fC3zww8/cObMGXx8fIi6sw+ZSgcSwk71enA0B+M38MeBXXz84RzGPvaQ0pGEqHXsrmACmDBhAhMmTCjzuU2bNpU6NmTIEIYMGXLd91OpVLzxxhu88cYbZT4fHh7Ojh07bimruDUWi4XZs2cDMG7cOFxdXRVOJIT9Uru4MGzqu3ww/j6OHznE/PnzmT59utKxhLgxkwm2bLE+vuMOh9+A167mMInaY/v27SQmJqLT6XjiiSeUjiOE3fNu0oz7x1mXOnnrrbfYu3evwomEuAm9Hvr0sba/7azhiKRgEor497//DcDjjz9Oo0aNFE4jhGPo0u9+wrpEYjAYGDFixHWXPRHCLqhU0K6dtTnBHFUpmESN++OPP/jxxx8BmDx5ssJphHAcKpWKsU8/h4+PD/v37+e1115TOpIQ1+fhAQcPWpuHh9JpKk0KJlHj5s+fj9lsJiYmhvbt2ysdRwiHUq++Fx9++CEAH3zwARs3blQ4kRC1gxRMokZdvnyZzz77DEDuQhTiFg0cOJCxY8disVgYOnQoZ8+eVTqSEE5PCiZRo959911yc3MJDQ2lX79+SscRwuGYTUZyc3N5++236dixIxcvXmTw4MFkZGSQk5OD3gkm1wonUVAA/fpZm2yNIkT5nT171nYp4Z133pGFKoWoIIvRQGpaGrFbdrJ2WxKjxk/Es04dkpKSeOSxEayM20Lc5m1SNAn7YDbDunXWJlujCFF+b7zxBnq9njvuuIO7775b6ThCOByL2YTeaCFV5U26zh9L8wgemzoLlUrFxrhYfl6/lcy8QgwGg9JRhbBuh/LNN9bmBFujSMEkasTRo0f5/PPPAZg5c6aMLglRCSqNK2pXd9Su7gRH9eXu0ZMA+HHxB5w8flTZcEIU02hg+HBr09jlOtkVIgWTqBGvvfYaJpOJQYMG0aNHD6XjCOFU7hr6JB26R2MyGvjw/Xe4ePGi0pGEcDpSMIlqt2vXLpYvX45KpeLll18mJyenRMvNzcVkMikdUwiHpVareWzqezTyb8HlSxk8/PDD5OTkKB1L1HYmEyQmWpsT/B3v+GNkwu699NJLAHS/sw/Hz1/m+PktJZ43GopIvXgJl2ZNUcuWckLcEjfPOvxj+nz+M3UEe/bs4aGHHmLVqlWyT6NQjl4PXbtaH+fmgqensnkqSUaYRLVav34969evx0Wj4c5hE0jX+ZdqF9UNKDKaMJsd/zcQIZTUyL8FU15+HU9PT+Li4hg9ejRmJ7g7STgolQpatLA2J5i3KiNMotqYzWamTZsGwF3978b7tttRu7qX7lckt0ALUVVaBbbl66+/5pFHHuHbb7/F19eXOXPmoFKp0Ov1N7yDTqvV4ubmVoNphVPz8IDTp5VOUWWkYBLV5tNPPyUxMRFPT0/uf/hRpCwSomZER0fzxRdf8PjjjzN37lyaNGnCc889R9zmbWTmXX/DXi9PHf169ZCiSYgySMEkqsXZs2eZOnUqAK+++ir16ntJwSREDRo+fDhpaWk8//zzvPjii7i4uNC4ZTBpam9U2tIFkcWgh7xLGAwGKZiEKIPMYRJVzmKx8PTTT5OdnU1kZCTjx49XOpIQtdKUKVN44YUXAPjnP//J6pU/oNK62dZwuraVVUQJUSl6PQwebG1OsPq8jDCJKlM8P+L7779n1apVaLVa5s+fT0FBgSwbIIRC3n33XTQaDe+88w7fff05l41aBoyeLIvHiupnMsFPP1197OCkYBJVQq/XE7d5G2cupPPSpEkADHpoKEfPZnDw1HlZNkAIhahUKt5++200Gg1vvPEGcd9+jMFgYNC4F6RoEtXL1RUWL7762MFJwSSqhMFgIDOvkE//+yU52dk0CQik69CJpGu1mEyZFBnT0cmyAUJUO7PJSG5ubqnj48eP53jKeb794lM2ff85Rfp8HpwwA7VaZmaIaqLVwrhxSqeoMlIwiSqTnLSTPb//hkqtZujz7+DqWQ+QZQOEqCkWo4HUtDRit+xEo9GWeM5oKCIkohtFnn6s+M/bbF+1jOzLGQx/cRY6d8deUFCImiC/WogqcenSJb74eCEAvR4cTfO2HRVOJETtYzGb0BstpKq8r7tAbOe+gxj+0ge4aLUc2L6O+ZMe5dKFM0pHF87IbIaDB63NCRZQlYJJVJrRaGT06NFcvpSBT5NmDBj5nNKRhKjVVBrX0nfBaa7eBRfe516e+eAb6jbw4cKpY8x9bggn9+9SMLFwSgUF0KGDtRUUKJ2m0qRgEpU2depUNm/ejM7NjVGv/BtXt9KreQsh7EtAcCcmL/iB2wLbk5d1hY9fHc+G31aTm5tbaoPsnJwc9E5wW7hQgI+PtTkBmcMkKuXLL79k7ty5ADz57BSaBLRWNpAQoty8GvkxYfYSvpvzCns2reaLxf/h6OFDjBr3f3j8baNUWQVcVJinJ1y8qHSKKiMjTOKWJSQk8NRTTwHw4osv0qVbD4UTCSEqytXNncenzWbAY+NRqVTEb9nEtH9OZMfxNNv8pzS1N5l5hTfch04IZycFk7glFy5c4MEHH6SwsJD777/ftsmuEMLxqFQq7np4NGOenUoD36ZcSb/AR9PGsuabjzCrXGQVcCGQgkncgry8PB588EHOnz9Pu3bt+Prrr2UtFyGcQPOWrZg45xu6xjyIxWJh/bKPmT/xUc79cUTpaMIR6fUwfLi1OcEcOPkpJyokOzubmJgYduzYgZeXFz/99BN169ZVOpYQooro3D159PmZjJ7+IR51vTh74iBzJz3GV598xJUrV5SOJxyJyQRLl1qbE2yNIgWTKLcrV67Qr18/tm3bRv369VmzZg2tW8skbyGcUcee/Xlh8S906nUPFrOZdbGrCA8P5/PPP8fsBGvqiBrg6gr//re1OcHWKFIwiXLJyMigT58+7Ny5kwYNGvDLL7/Qvn172y3Hubm5ssGuEE6mnndjRr7yb556ezFNb2vGpUuXGDt2LN27d2fz5s1KxxP2TquFSZOsTau9WW+7J8sKiJtKTU2lb9++HDp0iHr1vfjna29x+mIOp+O22PoYDUWywa4QTiowtCtvzJpLypG9zJkzh4SEBHr37k2vXr14+eWXiYqKQqvVypIDwqnJCJO4oQMHDnDnnXdy6NAhGjT05qm3FqFr0+O62y6YZYNdIZyOxWgg49IlAtqH8/a//8Nd/e/BRaNh8+bNxMTE0P2OXsxd8BEZGRmy6KW4ymyG06etzQku48oIkyiTxWLh008/5bnnnkOv19OsWTOee2kGqhZBqF1Lr+QtG+wK4byu3aPOtUkA9zzXkW6PTmD9d5+SuO5nDuzdw7S9e/jsk8X0H3gfnbv1QKO5+uNFFr2spQoKoGVL6+PcXOtClg5MRphEKdnZ2Tz22GM8+eST6PV6BgwYwKZNm/D1a6J0NCGEgq7do87ntlYMfX4m0z6PpUvfQajVak4cO8J//j2LSU8/wTcrVnEiXyeLXtZ2Hh7W5gRkhEmUkJSUxNChQzl58iQajYZ33nmH559/nry8PEDWYhFClOTdpBlDnnmFO++4g+RDx9i57ieyL19k7ZKPWP/dpwRF9KBXj0j694iQJUhqG09PyMtTOkWVkREmAUBaWhpPP/00kZGRnDx5kubNmxMbG8v48ePJy8uTu+CEEDdUt359oh8dx2tfb+DxabMJaBeGyWjgYMIm/jPnPVq1asVjjz3GypUruXTpksxxEg5HRphquby8PObMmcOsWbPIzc0FoGv3Oxjz1DOczypk5V93wsldcEKI8tBoXQnvcy/hfe4l9fRxdq39gT0bfubK5Ut8++23fPvtt7h7eBASGk5oRBdCwzvTvKmvzHESdk8KploqPz+fb775htdff50LFy4AEB4ezoDBQ2kQ0os8rRvXDqSaTJkUGdPRyV1wQohy8gsIZMBjT3FH90hSc03s27GJ/dvXk5t5mZ3xW9kZvxWVSsXtrdsw+L57iY6Opnv37tSrV0/p6KIqFBbChAnWxwsWgE6nbJ5KkoKpljlw4AAff/wxX3/9NVlZWQC0bNmSd955h7vvvpuf128jXetW6k44uQtOCHGrVCoVAR0607ZbNA899wZnjh3gUMJGDids5uyJg5w8fpTZs48ye/Zs1Go1oaGh9OjRg4iICLp06UK7du1QqVRKfw1RUUYjfPqp9fHcuVIwCfuXmprK6tWr+fzzz9m+fbvteMuWLXnuued4+umn0el05OTkKJhSCFEbqNVqWgR1pEVQR+4eNZHLZ05wZMP/uHD2DMcOH+Riehp79uxhz549ttd4eXkRHh5OREQEISEhtGvXjqCgIDwd/DZ1p6fVwltvXX3s4KRgckJGo5H4+HhiY2NZs2ZNib94NBoNAwcOZPTo0fTp0we1Wk1RURFFRUUysVsIUePqNfCmQ+fuhN/fjgc86pJ5MZU/DiRx6lAyZ48f5MLpY2RmZrJhwwY2bNhQ4rUtWrQgODiYNm3acPvtt9OqVStatWpFQEAA7u6l14sTNczVFV55RekUVcYuC6aFCxfy/vvvk5qaSmhoKB9++CFdu3a9bv/ly5fz2muvcfr0aQIDA3nvvfe45557bM9bLBZmzJjBJ598QmZmJj169OCjjz4iMDDQ1ufy5cs8++yz/PLLL6jVah566CHmzZtHnTp1qvW7VpbBYODw4cPs3r3b1pKTk/9aBuCqzp07M2jQIFq0DkLtVoccM/y8fluJPjKxWwihlOI1nhr6t6Shf0s6xzyMKT+bwlOJGAr1nPnzNKf/OMH5s2c4dyaFnOws/vzzT/78809iY2NLvZ+Pjw9NmzbF39/f9s/GjRvTqFEjGjVqROPGjfH29r7uKJXZbEatvv6N5LIVTO1jdwXTd999x5QpU1i0aBGRkZHMnTuXmJgYjh49SuPGjUv13759O8OGDWPmzJnce++9LF26lMGDB7N79246dOgAwKxZs5g/fz5ffvklLVu25LXXXiMmJoZDhw7Z/sAPHz6cCxcuEBcXh8FgYMyYMTz55JMsXbq0Rr//tQwGAxcvXuTixYukp6eTlpZGSkoKp06d4o8//uDUqVOkpKSUOSrk7e1NTEwMAwYMICYmhsaNG5OTk8PKuC2kqb1RaUv/jy4Tu4UQ9sRiNmHEBd3tXWjX4S7aXfNcbtZlUk8eJPXgDvT5eWSkp5Oenkp66gX0BQVkZGSQkZHBvn37bvgZrq6ueNapS506dfGsWxfPOnVwd3dHrVbj1dAHT09P3D08cXNzQ+fmbvtnowZ16XtnDxo0aIC7uzvu7u621c31ev0NF+qsNcWWxQIZGdbHPj7g4PPQ7K5gmjNnDuPGjWPMmDEALFq0yDb/5qWXXirVf968eQwYMICpU6cC8OabbxIXF8eCBQtYtGgRFouFuXPn8uqrr3L//fcD8NVXX+Hr68vKlSt59NFHOXz4MLGxsSQmJtK5c2cAPvzwQ+655x4++OADmjZtWu78//3vf3F1dcVsNmMymTAajRgMhhKtsLAQvV5vawUFBeTm5pKTk0N2dnaJVh716tWjY8eOdOrUidDQUDp27EibNm1wcXGx9cnJybFdclPpSk/qBpnYLYSwT8WjT9eq18gfD3cP/Oq64urfDlcP66KYFouF/JwsLp89wcVjyeSp3MjLziLrUjo5mZfIzbpMbuZlcq5cwmQ0WKckXL7ElcuXKp1To9Hg5uaGSq1Go9Gi1WrRFDcXDS4ajbWPzhW/xo3Q6XTWPhqN7Z8uLi6l/qlWq3FxcbE1tVp9w6ZSqWz//PvjGzXguv9e/Nj236Qcx1z0eh4ePRqAH778EtPfisSyJvKX91h5lee1+fn55XovuyqYioqKSEpKYtq0abZjarWa6Oho4uPjy3xNfHw8U6ZMKXEsJiaGlStXAnDq1ClSU1OJjo62PV+/fn0iIyOJj4/n0UcfJT4+Hi8vL1uxBBAdHY1arSYhIYEHHnig1OcWFhZSWFho+/fiO84mTZpU4e99QyoV9erVo05da2vQoCF16tTBv0UAjRv74dPYl/peDWxDx0aTkY3bd5F0+FSJggmsl9zSMi6j9nND41Z6qXpTfhZ6fQHm7CuYjIZyPyevrbrX2msueW3NvNZec9n9a/PzMHP1B6OLRkPDxk1wN+Xi2iQIV4/SUyuMeZlknTqAsa4vBqORgpxsCnJzyM/LRp91idyL5zC46DAUFqIvyMegL6BIX0BhoR5DQR4GfT4mk7HEzwGj0Whbz06AO9D/r8cjRo2iQMkw5WCxWG74vF0VTBkZGZhMJnx9fUsc9/X15ciRsrflSE1NLbN/amqq7fniYzfq8/fLfRqNhoYNG9r6/N3MmTP517/+Vc5vVgkWC9lZWWT/VZAJIYQQjqAAqK90iArIycmhfv3rJ7argsmRTJs2rcTIltls5vLly3h7e99wCDA7O5tmzZpx5swZWZytEuQ8Vp6cw6oh57Hy5BxWDTmPt8ZisZCTk3PT6Td2VTD5+Pjg4uJCWlpaieNpaWn4+fmV+Ro/P78b9i/+Z1paGk2aNCnRp1OnTrY+6enpJd7DaDRy+fLl636uTqdD97dFuLy8vG78Ba9Rr149+QNdBeQ8Vp6cw6oh57Hy5BxWDTmPFXejkaVidrX5rqurKxEREaxfv952zGw2s379eqKiosp8TVRUVIn+AHFxcbb+LVu2xM/Pr0Sf7OxsEhISbH2ioqLIzMwkKSnJ1mfDhg2YzWYiIyOr7PsJIYQQwjHZ1QgTwJQpUxg1ahSdO3ema9euzJ07l7y8PNtdcyNHjsTf35+ZM2cCMHHiRHr16sXs2bMZOHAgy5YtY9euXSxevBiwzpCfNGkSb731FoGBgbZlBZo2bcrgwYMBCA4OZsCAAYwbN45FixZhMBiYMGECjz76aIXukBNCCCGEc7K7gmno0KFcvHiR6dOnk5qaSqdOnYiNjbVN2k5JSSmxmFj37t1ZunQpr776Ki+//DKBgYGsXLnStgYTwAsvvEBeXh5PPvkkmZmZ9OzZk9jY2BLrYCxZsoQJEybQt29f28KV8+fPr/Lvp9PpmDFjRqnLeaJi5DxWnpzDqiHnsfLkHFYNOY/VS2W52X10QgghhBC1nF3NYRJCCCGEsEdSMAkhhBBC3IQUTEIIIYQQNyEFkxBCCCHETUjBVAPeffdd2/IGxfR6Pc888wze3t7UqVOHhx56qNQCnALOnTvH448/jre3N+7u7oSEhLBr1y7b8xaLhenTp9OkSRPc3d2Jjo7m+PHjCia2LyaTiddee42WLVvi7u5Oq1atePPNN0vsmSTnsLTff/+dQYMG0bRpU1QqlW1vymLlOWeXL19m+PDh1KtXDy8vL8aOHVvr9hm70Xk0GAy8+OKLhISE4OnpSdOmTRk5ciTnz58v8R61/Tze7M/itcaPH49KpWLu3Lkljtf2c1hVpGCqZomJiXz88cd07NixxPHJkyfzyy+/sHz5cjZv3sz58+d58MEHFUppn65cuUKPHj3QarWsWbOGQ4cOMXv2bBo0aGDrM2vWLObPn8+iRYtISEjA09OTmJgY9Hq9gsntx3vvvcdHH33EggULOHz4MO+99x6zZs3iww8/tPWRc1haXl4eoaGhLFy4sMzny3POhg8fzsGDB4mLi2PVqlX8/vvvPPnkkzX1FezCjc5jfn4+u3fv5rXXXmP37t2sWLGCo0ePct9995XoV9vP483+LBb78ccf2bFjR5lrB9b2c1hlLKLa5OTkWAIDAy1xcXGWXr16WSZOnGixWCyWzMxMi1artSxfvtzW9/DhwxbAEh8fr1Ba+/Piiy9aevbsed3nzWazxc/Pz/L+++/bjmVmZlp0Op3l22+/rYmIdm/gwIGWf/zjHyWOPfjgg5bhw4dbLBY5h+UBWH788Ufbv5fnnB06dMgCWBITE2191qxZY1GpVJZz587VWHZ78vfzWJadO3daAMuff/5psVjkPP7d9c7h2bNnLf7+/pYDBw5YWrRoYfn3v/9te07OYdWREaZq9MwzzzBw4ECio6NLHE9KSsJgMJQ4HhQURPPmzYmPj6/pmHbr559/pnPnzgwZMoTGjRsTFhbGJ598Ynv+1KlTpKamljiP9evXJzIyUs7jX7p378769es5duwYAHv37mXr1q3cfffdgJzDW1GecxYfH4+XlxedO3e29YmOjkatVpOQkFDjmR1FVlYWKpXKti+nnMebM5vNjBgxgqlTp9K+fftSz8s5rDp2t9K3s1i2bBm7d+8mMTGx1HOpqam4urqW2qzX19eX1NTUGkpo//744w8++ugjpkyZwssvv0xiYiLPPfccrq6ujBo1ynauileBLybn8aqXXnqJ7OxsgoKCcHFxwWQy8fbbbzN8+HAAOYe3oDznLDU1lcaNG5d4XqPR0LBhQzmv16HX63nxxRcZNmyYbeNYOY83995776HRaHjuuefKfF7OYdWRgqkanDlzhokTJxIXF1di+xVRMWazmc6dO/POO+8AEBYWxoEDB1i0aBGjRo1SOJ1j+N///seSJUtYunQp7du3Jzk5mUmTJtG0aVM5h8JuGAwGHnnkESwWCx999JHScRxGUlIS8+bNY/fu3ahUKqXjOD25JFcNkpKSSE9PJzw8HI1Gg0ajYfPmzcyfPx+NRoOvry9FRUVkZmaWeF1aWhp+fn7KhLZDTZo0oV27diWOBQcHk5KSAmA7V3+/u1DO41VTp07lpZde4tFHHyUkJIQRI0YwefJk2+bVcg4rrjznzM/Pj/T09BLPG41GLl++LOf1b4qLpT///JO4uDjb6BLIebyZLVu2kJ6eTvPmzW0/a/7880+ef/55AgICADmHVUkKpmrQt29f9u/fT3Jysq117tyZ4cOH2x5rtVrWr19ve83Ro0dJSUkhKipKweT2pUePHhw9erTEsWPHjtGiRQsAWrZsiZ+fX4nzmJ2dTUJCgpzHv+Tn55fYrBrAxcUFs9kMyDm8FeU5Z1FRUWRmZpKUlGTrs2HDBsxmM5GRkTWe2V4VF0vHjx9n3bp1eHt7l3hezuONjRgxgn379pX4WdO0aVOmTp3Kb7/9Bsg5rFJKzzqvLa69S85isVjGjx9vad68uWXDhg2WXbt2WaKioixRUVHKBbRDO3futGg0Gsvbb79tOX78uGXJkiUWDw8PyzfffGPr8+6771q8vLwsP/30k2Xfvn2W+++/39KyZUtLQUGBgsntx6hRoyz+/v6WVatWWU6dOmVZsWKFxcfHx/LCCy/Y+sg5LC0nJ8eyZ88ey549eyyAZc6cOZY9e/bY7t4qzzkbMGCAJSwszJKQkGDZunWrJTAw0DJs2DClvpIibnQei4qKLPfdd5/ltttusyQnJ1suXLhga4WFhbb3qO3n8WZ/Fv/u73fJWSxyDquKFEw15O8FU0FBgeX//u//LA0aNLB4eHhYHnjgAcuFCxeUC2infvnlF0uHDh0sOp3OEhQUZFm8eHGJ581ms+W1116z+Pr6WnQ6naVv376Wo0ePKpTW/mRnZ1smTpxoad68ucXNzc1y++23W1555ZUSP5DkHJa2ceNGC1CqjRo1ymKxlO+cXbp0yTJs2DBLnTp1LPXq1bOMGTPGkpOTo8C3Uc6NzuOpU6fKfA6wbNy40fYetf083uzP4t+VVTDV9nNYVVQWyzVL/gohhBBCiFJkDpMQQgghxE1IwSSEEEIIcRNSMAkhhBBC3IQUTEIIIYQQNyEFkxBCCCHETUjBJIQQQghxE1IwCSGEEELchBRMQgghhBA3IQWTEEIIIcRNSMEkhBA38NJLL6HT6XjssceUjiKEUJBsjSKEEDeQlZXF119/zbPPPsvx48dp3bq10pGEEAqQESYhhLiB+vXrM3bsWNRqNfv371c6jhBCIVIwCSHETRiNRjw8PDhw4IDSUYQQCpGCSQghbuLVV18lNzdXCiYhajGZwySEEDeQlJRE9+7d6devH6dOneLgwYNKRxJCKEAKJiGEuA6z2UzXrl3p1asXkZGRPP744+Tl5aHVapWOJoSoYXJJTgghruPDDz8kIyODN954g5CQEAwGA0eOHFE6lhBCAVIwCSFEGc6dO8drr73GwoUL8fT0JDAwEJ1OJ/OYhKilpGASQogyPPfcc9x9990MHDgQAI1GQ3BwsBRMQtRSGqUDCCGEvVm1ahUbNmzg8OHDJY6HhIRIwSRELSWTvoUQQgghbkIuyQkhhBBC3IQUTEIIIYQQNyEFkxBCCCHETUjBJIQQQghxE1IwCSGEEELchBRMQgghhBA3IQWTEEIIIcRNSMEkhBBCCHETUjAJIYQQQtyEFExCCCGEEDchBZMQQgghxE38P6nBn8L03huaAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.hist(lmbda_null, bins=50, density=True, alpha=0.5, edgecolor='gray', label=\"null\")\n", "xmin, xmax = plt.xlim()\n", "xmax = max(xmax, lmbda+10)\n", "xs = torch.linspace(xmin, xmax, 100)\n", "plt.plot(xs, Chi2(df=81).log_prob(xs).exp(), '-k', label=r\"$\\chi^2_{81}$\")\n", "plt.axvline(lmbda, color='r', linestyle=':', label=\"observed\")\n", "plt.xlim(xmin, xmax)\n", "plt.legend()\n", "plt.xlabel(r'$\\lambda$')\n", "plt.ylabel(r'$p(\\lambda \\mid \\mathcal{H}_0)$')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusion\n", "\n", "There is a lot more to say about contingency tables that we did not have time to cover. For two-way tables, there are other statistics for measuring association, like the _relative risk_. Likewise, in two-way tables, there are several ways to test for independence, including _Fisher's exact test_, which is based on a _hypergeometric sampling_ model. Next, we'll consider models for capturing relationships between a binary response and several covariates using _logistic regression_.\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.9" } }, "nbformat": 4, "nbformat_minor": 2 }