{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "You can order print and ebook versions of *Think Bayes 2e* from\n", "[Bookshop.org](https://bookshop.org/a/98697/9781492089469) and\n", "[Amazon](https://amzn.to/334eqGo)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Decision Analysis" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:41.807708Z", "iopub.status.busy": "2021-04-16T19:35:41.807149Z", "iopub.status.idle": "2021-04-16T19:35:41.810352Z", "shell.execute_reply": "2021-04-16T19:35:41.809718Z" }, "tags": [ "remove-cell" ] }, "outputs": [], "source": [ "# install empiricaldist if necessary\n", "\n", "try:\n", " import empiricaldist\n", "except ImportError:\n", " !pip install empiricaldist\n", " import empiricaldist" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:41.814888Z", "iopub.status.busy": "2021-04-16T19:35:41.814343Z", "iopub.status.idle": "2021-04-16T19:35:41.816295Z", "shell.execute_reply": "2021-04-16T19:35:41.816736Z" }, "tags": [ "remove-cell" ] }, "outputs": [], "source": [ "# Get utils.py\n", "\n", "from os.path import basename, exists\n", "\n", "def download(url):\n", " filename = basename(url)\n", " if not exists(filename):\n", " from urllib.request import urlretrieve\n", " local, _ = urlretrieve(url, filename)\n", " print('Downloaded ' + local)\n", " \n", "download('https://github.com/AllenDowney/ThinkBayes2/raw/master/soln/utils.py')" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:41.820085Z", "iopub.status.busy": "2021-04-16T19:35:41.819538Z", "iopub.status.idle": "2021-04-16T19:35:42.501987Z", "shell.execute_reply": "2021-04-16T19:35:42.501513Z" }, "tags": [ "remove-cell" ] }, "outputs": [], "source": [ "from utils import set_pyplot_params\n", "set_pyplot_params()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This chapter presents a problem inspired by the game show *The Price is Right*.\n", "It is a silly example, but it demonstrates a useful process called Bayesian [decision analysis](https://en.wikipedia.org/wiki/Decision_analysis).\n", "\n", "As in previous examples, we'll use data and prior distribution to compute a posterior distribution; then we'll use the posterior distribution to choose an optimal strategy in a game that involves bidding.\n", "\n", "As part of the solution, we will use kernel density estimation (KDE) to estimate the prior distribution, and a normal distribution to compute the likelihood of the data.\n", "\n", "And at the end of the chapter, I pose a related problem you can solve as an exercise." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The Price Is Right Problem\n", "\n", "On November 1, 2007, contestants named Letia and Nathaniel appeared on *The Price is Right*, an American television game show. They competed in a game called \"The Showcase\", where the objective is to guess the price of a collection of prizes. The contestant who comes closest to the actual price, without going over, wins the prizes.\n", "\n", "Nathaniel went first. His showcase included a dishwasher, a wine cabinet, a laptop computer, and a car. He bid \\\\$26,000.\n", "\n", "Letia's showcase included a pinball machine, a video arcade game, a pool table, and a cruise of the Bahamas. She bid \\\\$21,500.\n", "\n", "The actual price of Nathaniel's showcase was \\\\$25,347. His bid was too high, so he lost.\n", "\n", "The actual price of Letia's showcase was \\\\$21,578. \n", "\n", "She was only off by \\\\$78, so she won her showcase and, because her bid was off by less than 250, she also won Nathaniel's showcase." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For a Bayesian thinker, this scenario suggests several questions:\n", "\n", "1. Before seeing the prizes, what prior beliefs should the contestants have about the price of the showcase?\n", "\n", "2. After seeing the prizes, how should the contestants update those beliefs?\n", "\n", "3. Based on the posterior distribution, what should the contestants bid?\n", "\n", "The third question demonstrates a common use of Bayesian methods: decision analysis.\n", "\n", "This problem is inspired by [an example](https://nbviewer.jupyter.org/github/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers/blob/master/Chapter5_LossFunctions/Ch5_LossFunctions_PyMC3.ipynb) in Cameron Davidson-Pilon's book, [*Probablistic Programming and Bayesian Methods for Hackers*](http://camdavidsonpilon.github.io/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The Prior\n", "\n", "To choose a prior distribution of prices, we can take advantage of data from previous episodes. Fortunately, [fans of the show keep detailed records](https://web.archive.org/web/20121107204942/http://www.tpirsummaries.8m.com/). \n", "\n", "For this example, I downloaded files containing the price of each showcase from the 2011 and 2012 seasons and the bids offered by the contestants." ] }, { "cell_type": "markdown", "metadata": { "tags": [ "remove-cell" ] }, "source": [ "The following cells load the data files." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.507523Z", "iopub.status.busy": "2021-04-16T19:35:42.506995Z", "iopub.status.idle": "2021-04-16T19:35:42.508609Z", "shell.execute_reply": "2021-04-16T19:35:42.509016Z" }, "tags": [ "remove-cell" ] }, "outputs": [], "source": [ "# Load the data files\n", "\n", "download('https://raw.githubusercontent.com/AllenDowney/ThinkBayes2/master/data/showcases.2011.csv')\n", "download('https://raw.githubusercontent.com/AllenDowney/ThinkBayes2/master/data/showcases.2012.csv')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The following function reads the data and cleans it up a little." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.513237Z", "iopub.status.busy": "2021-04-16T19:35:42.512673Z", "iopub.status.idle": "2021-04-16T19:35:42.515256Z", "shell.execute_reply": "2021-04-16T19:35:42.514810Z" } }, "outputs": [], "source": [ "import pandas as pd\n", "\n", "def read_data(filename):\n", " \"\"\"Read the showcase price data.\"\"\"\n", " df = pd.read_csv(filename, index_col=0, skiprows=[1])\n", " return df.dropna().transpose()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I'll read both files and concatenate them." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.519025Z", "iopub.status.busy": "2021-04-16T19:35:42.518583Z", "iopub.status.idle": "2021-04-16T19:35:42.547366Z", "shell.execute_reply": "2021-04-16T19:35:42.546804Z" } }, "outputs": [], "source": [ "df2011 = read_data('showcases.2011.csv')\n", "df2012 = read_data('showcases.2012.csv')\n", "\n", "df = pd.concat([df2011, df2012], ignore_index=True)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.550926Z", "iopub.status.busy": "2021-04-16T19:35:42.550422Z", "iopub.status.idle": "2021-04-16T19:35:42.553032Z", "shell.execute_reply": "2021-04-16T19:35:42.552623Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(191, 6) (122, 6) (313, 6)\n" ] } ], "source": [ "print(df2011.shape, df2012.shape, df.shape)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what the dataset looks like:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.558946Z", "iopub.status.busy": "2021-04-16T19:35:42.557889Z", "iopub.status.idle": "2021-04-16T19:35:42.570199Z", "shell.execute_reply": "2021-04-16T19:35:42.570579Z" } }, "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", "
Showcase 1Showcase 2Bid 1Bid 2Difference 1Difference 2
050969.045429.042000.034000.08969.011429.0
121901.034061.014000.059900.07901.0-25839.0
232815.053186.032000.045000.0815.08186.0
\n", "
" ], "text/plain": [ " Showcase 1 Showcase 2 Bid 1 Bid 2 Difference 1 Difference 2\n", "0 50969.0 45429.0 42000.0 34000.0 8969.0 11429.0\n", "1 21901.0 34061.0 14000.0 59900.0 7901.0 -25839.0\n", "2 32815.0 53186.0 32000.0 45000.0 815.0 8186.0" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head(3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first two columns, `Showcase 1` and `Showcase 2`, are the values of the showcases in dollars.\n", "The next two columns are the bids the contestants made.\n", "The last two columns are the differences between the actual values and the bids." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Kernel Density Estimation\n", "\n", "This dataset contains the prices for 313 previous showcases, which we can think of as a sample from the population of possible prices.\n", "\n", "We can use this sample to estimate the prior distribution of showcase prices. One way to do that is kernel density estimation (KDE), which uses the sample to estimate a smooth distribution. If you are not familiar with KDE, you can [read about it here](https://mathisonian.github.io/kde).\n", "\n", "SciPy provides `gaussian_kde`, which takes a sample and returns an object that represents the estimated distribution.\n", "\n", "The following function takes `sample`, makes a KDE, evaluates it at a given sequence of quantities, `qs`, and returns the result as a normalized PMF." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.574533Z", "iopub.status.busy": "2021-04-16T19:35:42.574043Z", "iopub.status.idle": "2021-04-16T19:35:42.576062Z", "shell.execute_reply": "2021-04-16T19:35:42.575582Z" } }, "outputs": [], "source": [ "from scipy.stats import gaussian_kde\n", "from empiricaldist import Pmf\n", "\n", "def kde_from_sample(sample, qs):\n", " \"\"\"Make a kernel density estimate from a sample.\"\"\"\n", " kde = gaussian_kde(sample)\n", " ps = kde(qs)\n", " pmf = Pmf(ps, qs)\n", " pmf.normalize()\n", " return pmf" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can use it to estimate the distribution of values for Showcase 1:" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.584733Z", "iopub.status.busy": "2021-04-16T19:35:42.580411Z", "iopub.status.idle": "2021-04-16T19:35:42.587005Z", "shell.execute_reply": "2021-04-16T19:35:42.586599Z" } }, "outputs": [], "source": [ "import numpy as np\n", "\n", "qs = np.linspace(0, 80000, 81)\n", "prior1 = kde_from_sample(df['Showcase 1'], qs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what it looks like:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.590496Z", "iopub.status.busy": "2021-04-16T19:35:42.590066Z", "iopub.status.idle": "2021-04-16T19:35:42.592375Z", "shell.execute_reply": "2021-04-16T19:35:42.591868Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "from utils import decorate\n", "\n", "def decorate_value(title=''):\n", " decorate(xlabel='Showcase value ($)',\n", " ylabel='PMF',\n", " title=title)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.596416Z", "iopub.status.busy": "2021-04-16T19:35:42.595823Z", "iopub.status.idle": "2021-04-16T19:35:42.800967Z", "shell.execute_reply": "2021-04-16T19:35:42.801311Z" }, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "prior1.plot(label='Prior 1')\n", "decorate_value('Prior distribution of showcase value')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** Use this function to make a `Pmf` that represents the prior distribution for Showcase 2, and plot it." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.807216Z", "iopub.status.busy": "2021-04-16T19:35:42.806692Z", "iopub.status.idle": "2021-04-16T19:35:42.809224Z", "shell.execute_reply": "2021-04-16T19:35:42.808685Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "qs = np.linspace(0, 80000, 81)\n", "prior2 = kde_from_sample(df['Showcase 2'], qs)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:42.856760Z", "iopub.status.busy": "2021-04-16T19:35:42.856256Z", "iopub.status.idle": "2021-04-16T19:35:43.013351Z", "shell.execute_reply": "2021-04-16T19:35:43.013757Z" }, "scrolled": true, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "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3nuvKiwsPGtbTxlff/11NWbMmC7t7733XnXvvfcqpZR65pln1M0336yUUmr8+PHqtddeU5dddplSSqlFixap559/Ximl1G9+8xs1d+7cHt9jp5qaGgUos9ncY/adO3ee9f9/3bp1asSIEefcb3FxsfLw8LDv97nnnlPz5s3rNsf111+vnnrqKaXU2f/fz/y8v/76a9X5I1vXdeXn56eysrLs21taWpTBYFAFBQW9+gyE48kZrOgTTz/9NLW1tZSWlvKf//yH8ePH27fFx8d3+zqz2Ux0dDSenp7250aMGNFlEFFMTAwGQ/ffqsXFxQwbNqzLc2c+7uTn58dHH33Ehx9+SFxcHDNmzLCfDXXnfMc/83geHh4MHTqUoqKiHl/TW2azmYSEBPvj6OhovLy8unxGp5+V+vn50dDQAHScUd11113cf//9DBkyhLvuuovKysqLPk5PVq1aRWtrK5MmTWLMmDFndX92l/HM40LX74G5c+eyceNGKioqqKio4PbbbycvL4+amhq++uor5s2bB0B+fj4jR448Z7aWlhYeeOABEhISCAwMtB+v87PoLnteXh61tbWEhoYSHBxMcHAwixcvpqys7JzHGTp0KPPmzWPNmjUAvPbaa9xxxx327WvWrGHixImEhIQQHBzMxx9/3O3/j55UVlbS1NTErFmz7LmioqLw9PSksLDwgvcnHEMKrHC4nopTbGwsxcXFWCwW+3O5ubldboM5X3GLjo4mPz+/y3MFBQXdtp8/f779B9vNN9/MDTfcgK7r3R7nfMcHuhzfYrFQUlJCTEwM0FFMmpub7dtLSkq6vPb062rnEhsbS15env1xaWkpbW1tvbr1yGQy8eijj7Jv3z4OHz5MQUEBv/rVr/r8OACJiYm89tprlJaW8sorr/CTn/yEPXv2nPd1Zx4Xun4PTJgwgfb2dl588UVmz56N0WhkxowZPP/883h4eJCamgp0/JKTk5NzzmM8++yz7Nmzh82bN1NfX28/njrVRdxd9ri4OCIiIqitrbV/1dXV0djY2O376ewmPnjwIMeOHeOmm24COr4n77zzTp555hkqKiqora1l4cKF9gxn8vf37/b7JiwsDF9fX3bs2NElW0tLC9OnT+/h0xb9SQqscKrJkycTGRnJL3/5S9ra2jh48CAvvvgid955Z6/3ccstt/DFF1/w73//G6vVyssv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VEtLi1JKqcbGRhUcHKyUUurNN99US5cutb/mpZdeUg8++KBSSqmrrrpKffHFF/ZtU6dOVbt37+7z9/Dggw+q//u//3O7/DabTX3ve99TK1ascJvsra2tavr06aq8vNz+veMu2c9VYN0he319vRo6dKiyWCxul/10RUVFKigoSDU1NblF9vj4eLV9+3allFLPPPOM+sEPfuByuaWL+Axms5m4uDj74/j4eMxmsxMTfaO7bFVVVfj5+eHt7Q2An58fnp6e1NXV9fh++uO9VlVV8cEHH3DFFVe4Vf5FixYRGRnJ4cOH+fGPf+w22Z944gkyMzMJDw+3P+cu2QGuu+460tLSeOyxx7BarW6R/eTJk0RGRvLggw8yceJErr/+evLy8twi++nWrFnDt7/9bXx9fd0i++rVq7nmmmuIi4vjr3/9K48//rjL5ZYCew6aptn/rlzsLqbusp3+fE/bznw/jnyvbW1tLF68mIcffpixY8f2eDxXy//Pf/6T0tJSpk6dyh//+Mcej+Uq2ffv38+OHTu4++67z9rm6tkBNm/ezNdff83mzZs5cOAAzz77rFtkt1gsZGVlcf3117N3716uu+46li1b5hbZT/f666/z3e9+97zHcoXsNpuNp59+mg0bNlBYWMhPf/pT7rjjDpfLLQX2DHFxcRQUFNgfm83mPls84FJ1ly0sLIzGxkZaW1sBaG5uxmKxEBQU1OP7ceR7tdlsLFmyhIyMDB566CG3yw9gNBpZtmwZr732mltk37JlC9nZ2QwfPpyEhARsNhsJCQlukR2w7yMgIIB7772X7du3u0X2uLg4QkNDWbBgAQC33347e/fudYvsnQ4cOEBlZSXz5s3r8Viukv3rr7+mvr6ecePGAfDd736XjRs3ul7uXncmDxJWq1WNGDFCHTp0SCml1K233uqUQU6dTr8Gu27dOjVr1ixltVpVUVGRiouLs1/Av/3229Vf/vIXpZRSf/zjH+0X8Gtra1VcXJwqKSlRFotFXX755fYL+H/5y1/UkiVLlFJKHThwQCUlJfXZoIlly5apu+++W+m67lb56+rqVHFxsf3x//zP/6hbb73VLbKfqfN7xx2yNzY2qrq6OqWUUhaLRd11113ql7/8pVtkV0qpWbNm2Qf2ffDBB2r69Oluk10ppR555BH1yCOP2B+7evbi4mIVFhamzGazUkqpDz/8UE2aNMnlckuBPYcvvvhCjR07ViUmJqq77777rMEL/eG+++5TMTExClAxMTHqvvvuU0p1/ENITExUSUlJ6p133rG3LygoUDNmzFAjR45UM2fOtH/jKdVxET8pKUmNGDFC/fznP7c/397eru644w6VmJioxo4dqzZu3Ngn2Tdv3qwAlZqaqtLS0lRaWpp64YUX3CJ/QUGBysjIUKmpqWrcuHHq5ptvVqWlpW6R/Uyn/3Lm6tlPnDih0tLS1Lhx41RycrK69957VXNzs1tkV0qpQ4cOqalTp6px48apmTNn2ke3ukN2m82mYmNj1b59+7o87+rZV61apZKTk9X48ePV9OnTVVZWlsvllqkShRBCCAeQa7BCCCGEA0iBFUIIIRxACqwQQgjhAFJghRBCCAeQAiuEEEI4gBRYIS7Rs88+y7hx40hLSyM1NZU33ngDgFdffZV77rnHyen6V15eHklJSX26zyuvvJKioqIuz61YsaLL423btpGZmdmnxxXiUkmBFeIS7NixgzfeeINdu3axb98+duzYweTJk50da8BYv3490dHRxMTEAPDxxx8zadIkXnrpJSZPnszGjRsBmDZtGkePHiU3N9eJaYXoSgqsEJegqKiIoKAgPD09gY5JxE8/g6uoqGDRokWMGjXKPlcqwKFDh5g5cybjx49n1qxZHD16FIC0tDTy8/MBukwz+frrr/ODH/wAgKysLGbNmkVaWhoTJkzg0KFDtLS0cOWVVzJp0iRSU1P53e9+Zz/W448/TkpKCuPHj+fKK6+0P/+HP/yByZMnk5aWxj333IPFYuny3k6cOGGfQxo65tyNjo6mqqqKTz75hKlTpzJx4kSmTJnC3r17z/psNm7cyBVXXGF//NRTT9nPPFtaWrj//vuZPHky48aN48UXXzzn5/vqq69yyy232B9nZmby8ssvc//997Nu3ToSExPt22644QZWr159zv0I4QxSYIW4BN/61reora1l+PDh3HHHHbzzzjtdJgTfs2cPf/vb38jOzmb//v1s2bIFgKVLl/LII4+wf/9+fvSjH3HnnXcCMGfOHDZu3Eh9fT1KKbZv3w7Al19+yezZs7FYLNx00008+eST9jPmYcOG4enpybvvvsuePXvYu3cv77zzDkeOHKGmpoY333yTAwcOsH//ft555x2g48xwx44dbN++nX379uHp6ckrr7zS5b0lJiYSHBzMnj17APj000/JyMggLCyMqVOnsnXrVvbu3cuf/vQnli9ffkGf29NPP82ECRPYuXMnu3btsn9GZ9q0aRMZGRn2xx4eHtTV1QEQHBzcZaWTyZMns2nTpgvKIYQjSYEV4hL4+/uza9cu1qxZw8iRI/npT3/KfffdZ98+d+5cwsLCMJlMTJgwgdzcXOrr6yksLGTRokUA3HTTTRw7dozm5mZmz57Nxo0b2bx5M1deeSVeXl7U1NTw1Vdf2c90g4ODmT17NgCenp74+/ujlOKJJ54gLS2NjIwMTpw4wcGDBwkMDCQwMJDMzEzeeustjEYj0NHVumnTJiZOnEh6ejrr16/n5MmTZ72/JUuWsGbNGqBjObMlS5YAUFpaynXXXUdqairLli3jwIEDF/S5ffzxx/zf//0f6enpTJ06lZqaGvtZ/OlKSkq6LL33zjvv8D//8z/84Q9/4PbbbycvL8++LSoqiuLi4gvKIYQjmZwdQAh3ZzQamTFjBjNmzOCqq65i/vz5vPzyywB4eXl1aWe1Ws+55FXnc7NmzeInP/kJERERzJ07Fw8PD95++21MJhMRERGUlZWdM8OaNWs4ceIEO3fuxMvLi5tuuonW1laMRiPbtm3jq6++4pNPPuEXv/gFWVlZKKV46KGH+K//+q8e39utt95KRkYGK1asYOPGjaxatQqABx54gPvuu4/bbruNhoYGQkJCznqtyWRC13X747a2NnuBV0qxZs0a0tPTezy+t7c37e3t9nU8p06dyueff86jjz5KaGgomZmZfPHFF0BHt7OPj0+P+xOiP8kZrBCX4OjRoxw5csT+OCsri+HDh/f4ms4lsj788EMA3n//fUaPHo2vry9DhgzBz8+P9957jxkzZjBnzhyefvpp+xnrmDFjqK2t5csvvwSgvb2dxsZG6uvrGTJkCF5eXuTm5vLZZ58B0NDQQFVVFfPnz+eZZ57B29sbs9nMggUL+Nvf/kZNTQ0AtbW15xwgFB4eTmpqKj/84Q+56qqr7AWsvr7evmzXX/7yl3O+z4SEBI4cOUJLSwstLS188skn9m0LFizghRdewGazAZCTk0NDQ8NZ+0hJSeH48eP2x4cOHQI6ztwvu+wy6uvr7duOHj1Kampqj5+9EP1JzmCFuASNjY386Ec/orq6GpPJRHBwMK+99tp5X7d69Wruv/9+/t//+38EBwfz97//3b5t9uzZ7N69G39/f6ZNm0Zpaam9wHp4ePD+++/z4IMPUl9fj8lksi+U/e6775Kens6IESOYM2cOAHV1ddx00020tLSg6zrXX389KSkppKSkcP/999v3azKZeOGFF875y8GSJUtYsmQJ69atsz/35JNPcvfddxMVFcW11157zvcYGxvLXXfdxfjx4xk5ciQpKSn2bY899hiPPPIIaWlpaJpGWFgY7733HgEBAV32sWjRIj7//HP7up+PPvooVVVVFBYW8o9//IMXXnjB3vbzzz/nuuuuO+9nL0R/kdV0hBAuq3MU9tatW9E0zf78ihUrutwL29jYyOzZs9m+fTseHh5OSCrE2aSLWAjhssLDw/n5z39OSUlJl+c7z9A75eXl8fzzz0txFS5FzmCFEEIIB5AzWCGEEMIBpMAKIYQQDiAFVgghhHAAKbBCCCGEA0iBFUIIIRxACqwQQgjhAP8ftNWUGUTVAOUAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "prior1.plot(label='Prior 1')\n", "prior2.plot(label='Prior 2')\n", "\n", "decorate_value('Prior distributions of showcase value')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Distribution of Error\n", "\n", "To update these priors, we have to answer these questions:\n", "\n", "* What data should we consider and how should we quantify it?\n", "\n", "* Can we compute a likelihood function; that is, for each hypothetical price, can we compute the conditional likelihood of the data?\n", "\n", "To answer these questions, I will model each contestant as a price-guessing instrument with known error characteristics. \n", "In this model, when the contestant sees the prizes, they guess the price of each prize and add up the prices.\n", "Let's call this total `guess`.\n", "\n", "Now the question we have to answer is, \"If the actual price is `price`, what is the likelihood that the contestant's guess would be `guess`?\"\n", "\n", "Equivalently, if we define `error = guess - price`, we can ask, \"What is the likelihood that the contestant's guess is off by `error`?\"\n", "\n", "To answer this question, I'll use the historical data again. \n", "For each showcase in the dataset, let's look at the difference between the contestant's bid and the actual price:" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.018111Z", "iopub.status.busy": "2021-04-16T19:35:43.017611Z", "iopub.status.idle": "2021-04-16T19:35:43.019631Z", "shell.execute_reply": "2021-04-16T19:35:43.019982Z" } }, "outputs": [], "source": [ "sample_diff1 = df['Bid 1'] - df['Showcase 1']\n", "sample_diff2 = df['Bid 2'] - df['Showcase 2']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To visualize the distribution of these differences, we can use KDE again." ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.027071Z", "iopub.status.busy": "2021-04-16T19:35:43.026529Z", "iopub.status.idle": "2021-04-16T19:35:43.028680Z", "shell.execute_reply": "2021-04-16T19:35:43.029157Z" } }, "outputs": [], "source": [ "qs = np.linspace(-40000, 20000, 61)\n", "kde_diff1 = kde_from_sample(sample_diff1, qs)\n", "kde_diff2 = kde_from_sample(sample_diff2, qs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what these distributions look like:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.075959Z", "iopub.status.busy": "2021-04-16T19:35:43.048711Z", "iopub.status.idle": "2021-04-16T19:35:43.205035Z", "shell.execute_reply": "2021-04-16T19:35:43.205620Z" }, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAABqjElEQVR4nO3dd1zV1/0/8Nfd3MvlclmXdS/zgrIEFRfukcSRaU2aUU2iaWNrmm+bNG2a0aRpfh1pmzT5xjSJ36qt2cNmaaJRMXEHVBRFQZB12ePC5e51fn9cufHKBQG5XMb7mQeR+/mcz73vwwXenPnhMMYYCCGEEDKkuP4OgBBCCBmLKMESQgghPkAJlhBCCPEBSrCEEEKID1CCJYQQQnyAEiwhhBDiA5RgCSGEEB+gBEsG7MCBA1Aqle7HZrMZt912G+RyOaZPnw4A+Pzzz5GQkACpVIpPPvnET5EOjQULFuAf//iHv8Pwufvuuw+/+MUvej2/bNkyvPbaa72ev/XWW/Hss88OfWBedHR0gMPhoKqqalhe71ps3boVOTk5Pnnu8fK9OVpRgiUeFixYAJFIhKCgIAQHByMzMxOPPvooWlpa3GXmzp0LjUbjfvzxxx+jtLQUTU1N+O677wAAjzzyCJ577jno9Xrceuutw12NEaOqqgocDgcdHR3+DuWaffnll/jZz37m7zB8LiEhYdT/UUhGBkqwpIe//OUv6OrqQkdHBz744APU1dVh6tSpaGpq8lq+srISqampEIlEHscmTZo0qNd3OBygDcYIIaMdJVjSKw6Hg/T0dLz11lsIDg7Giy++CADYv38/5HI5AODRRx/Fc889hy+++AJSqRQ///nPIZVK4XA4kJeXB6lUCovFApvNht/97ndITk5GWFgYbr75ZtTX13u81quvvorMzExIJBLo9XpUVFTgpptuQkREBOLj4/H888/D6XQC+L7b7Q9/+AMUCgUiIyN7dJW9++67yM7OhkwmQ3x8PLZu3eo+995772HSpEmQy+WYNm0aDh8+3OfXoq6uDgsWLEBQUBBmzZqFc+fOuc/p9Xo89NBDiIuLg0KhwJo1a9DZ2QkA7i5zpVIJqVSKt99+G0uXLsXrr78OAOjs7ASPx8Pjjz8OAGCMISIiAidOnAAANDc345577kFMTAxiYmLwi1/8AhaLxf3aJ06cwMKFCxEaGgq1Wo1Nmza5zz377LO46aab8NBDD0EulyMuLg7vv/9+n/XU6XS47bbbIJVKMWnSJBw8eNB97sruyI8//hhqtRrBwcH48Y9/DLvd3uvz6vV63HLLLVAoFAgODsa8efNw6tSpfsdqsVjw05/+FKGhoUhMTMRHH33UZz12796N3NxcBAcHIzo6Gj/72c9gMpk86tn9nslkMkybNg21tbW4/fbbUVNTg7vuugtSqRTr16/32gvxi1/8Avfdd5/78Y9+9CPExMRAJpNh6tSpyM/P7zO+bi+++CIWLVrkcez999/HxIkTAQAnT57EnDlzEBoaioiICNx1111oa2vz+lzeuqJzcnI8vu/37NmD6dOnQy6XIyMjA5999lm/4iSDxAi5zPz589lLL73U4/iTTz7Jpk+fzhhjLD8/nwUHB7vPPfPMM+yWW27xKA+AnTx50v34scceY4sWLWL19fXMYrGwRx99lM2dO9ej/KxZs1hdXR0zm81Mr9ez+Ph49uKLLzKLxcKqq6tZRkYG+7//+z/GGGNbtmxhfD6fvfDCC8xqtbL8/HzG4/FYeXk5Y4yxzz77jIWGhrK9e/cyh8PBmpqa2IkTJxhjjO3YsYPFxsay48ePM4fDwT7++GMWGhrKWltbe/2ahISEsMOHDzOLxcKeeOIJlpKSwmw2G2OMsdtvv53dddddTKvVMr1ez+688072ox/9iDHGWGVlJQPAtFqt+/n+8pe/sDvuuIMxxtgnn3zCkpOT3V/boqIiFhISwhwOB3M6nWzGjBnskUceYQaDgbW2trIFCxawp556ijHGWENDAwsNDWXvv/8+s9vtrLi4mEVHR7M9e/a43xeBQMDeeecdZrfb2b///W8mlUqZTqfzWs97772XCYVC9tlnnzGbzcb++c9/spCQEHfsl39vlJWV9SjL4/HYM8884/W5Ozs72Xvvvcf0ej0zmUzs4YcfZqmpqczpdPYr1qeffpplZ2ezuro6ptVq2bJlyxgAVllZ6fX1vv32W3bixAlmt9tZRUUFmzhxInv++efd52+77TZ2ww03sLq6OuZwONiJEydYS0sLY4yx+Ph49t///tdd1tt7+D//8z/s3nvvdT/evHkz6+joYFarlb3wwgssNDTUHfuWLVtYdna21zgbGxuZQCBgNTU17mMrVqxwx1pUVMQOHDjArFYra2xsZHPnzmUPPPCAu+zl74m318nOzmZbtmxhjDF26tQpJpfL3T8TBw4cYDKZjJ0/f95rbOTaUYIlHnpLsK+99hpTq9WMsYEnWKfTyQIDA1lRUZH7vMlkYlwu1/2LBYDHL7UPPviA5eTkeDznm2++yRYtWsQYc/0yiYyM9DivVqvZRx99xBhjbOnSpez3v/+91zouX76c/eMf//A4lpeXx/7zn/94LT9//nz205/+1P3YarUymUzGDhw4wJqbmxmXy2VtbW3u82VlZUwgEDC73e71l/N3333HFAoFY4yxhx9+mL3yyissLCyMdXZ2shdffJHdeuut7nKhoaHM4XC4r929ezdLSkpijDH2wgsvuMt2e+KJJ9jatWsZY673ZcaMGe5zTqeTCYVCVlhY6LWe9957L1u2bJnHsYkTJ7Jt27a5vw7d3xvPPfec17K9JdgrabVaBoBpNJp+xZqUlMTef/999/mjR4/2mWCv9NJLL7ElS5YwxlxJDQCrrq72WnYwCfZKcrmcHTx4kDHWd4JljLFly5axP/3pT4wxxpqbm5lQKGRVVVVey/73v/91/xwyNrAE+7Of/Yz94he/8Dh/9913s+eee67X2Mi14fun3UxGm7q6OoSGhg7q2tbWVhgMBsybNw8cDsd9XCgUora2FiqVCgAQFxfnPldVVYUzZ864u6IBwOl0ussCQFRUlMfrBAYGoqurCwBQXV2NNWvWeI2nqqoKTzzxBJ555hn3MZvNhrq6ul7rEB8f7/5cIBAgOjoadXV1EIlEcDqdSEpK8ijP5XLR2Njo9bmmTJkCi8WCs2fPYt++fVi/fj327t2LAwcOYN++fbj++uvdcXZ0dHh83RljcDgc7vM7d+70+Bo5HA7MnTvX69eIw+FALBa7v0ZXq2f3Y29fl/r6eq9le2MymfDoo49i586daG9vB5frGp1qbW1FbGzsVWO98vX6ei0AKCgowG9/+1sUFxfDZDLBbrdjwoQJAFzfGyKRyOP77Vo4nU48/fTT+OCDD9DU1AQulwudTofW1tZ+Xb9mzRr84Q9/wOOPP4533nkHeXl57vqVl5fj0UcfRUFBAfR6PZxOJwQCwaDirKqqwr59+7Blyxb3MbvdDplMNqjnI1dHY7Dkqux2Oz799FMsWLBgUNeHhYVBIpHg2LFj6OjocH+YTCbk5eW5y3X/0gUAlUqFqVOnepTX6XQ4e/Zsv14zPj4e5eXlXs+pVCr8/e9/93hug8HgHgf1prq62v25zWZDQ0MDYmNjoVKpwOVyUV9f7/F8ZrMZsbGxHnXqxuPxMHfuXLz//vtoa2tDWloaFi1ahK+//hrffvstFi5c6I5ToVB4PG9nZyf0er37/G233eZxvqurCzt37uzX1+hq9QSAmpoadwK8XExMjNeyvfn73/+O48eP4+DBg9DpdO7lNayfk9mufL2+XgsA7rrrLixcuBAXL16ETqfDH//4R/drxcfHw2KxoLa21uu1V75nUqkUAGA0Gt3HGhoa3J+/8847eOedd7Bjxw50dnaio6MDwcHB/a7bLbfcAo1Gg+PHj2Pbtm1YvXq1+9z69esRGxuLkpIS6HQ6vPXWW70+r1Qq9YgRgMcfeSqVCv/zP//j8f2i1+vxz3/+s19xkoGjBEv6dP78edx7773o7OzEI488Mqjn4HK5WL9+PR599FH3L7W2trY+J9zceOONaGpqwmuvvQaz2QyHw4HS0lLs37+/X6/54IMP4uWXX8Y333wDp9OJ5uZmnDx5EgDw0EMP4a9//SuOHz8OxhiMRiP27NnjsfToSu+//z6OHTsGq9WK5557DhEREZg5cyaioqJw66234qGHHnK3WBobG/Hf//4XABAREQEul4uKigqP51u4cCFefvll9x8tixYtwpYtWxAQEIDMzEwAwLRp0xAXF4ennnoKXV1dYIyhuroaX375JQBg9erV2LdvHz7++GPYbDbYbDYUFRWhoKCgX18jb/bt24cdO3bAbrdj06ZNaGhowIoVK3qUu+OOO7B3716PsmVlZb0+r06nQ0BAAEJCQqDX6/HEE08MKK677roLf/7zn91/yDz33HN9ltfpdJDL5QgMDMS5c+c8kkhkZCRuueUWrF+/Hg0NDXA6nTh58qR78lBkZKTH+xUeHo64uDj8+9//htPpRH5+vscfMTqdDkKhEOHh4e7vD51O1++6icVirFq1Ck8++SRKSkqwatUqj+cOCgqCTCZDbW0t/vrXv/b6PDk5Obh48SIOHDgAu92OF154wWNC1IMPPogtW7YgPz8fDocDFosFR44c8ZiwR4YWJVjSw29+8xv3OtiVK1ciKioKhYWFiIyMHPRz/ulPf8KsWbOwaNEiBAUFYerUqdi9e3ev5aVSKfbs2YO9e/ciISEBYWFhuPvuu3vtdr3SrbfeihdffBEbNmxAcHAwpk2bhuLiYgCu5P3nP/8ZP/7xjxESEoLExES8/PLL7hnK3qxduxa/+c1vEBoaiq+//hqffPIJ+HzXCMvWrVvds5FlMhnmzp2L48ePA3D98nzmmWewbNkyyOVyvPPOOwBcCVan07lnkGZmZkIsFrtbr4Crpfv555+jrq4OaWlpCA4OxooVK9wt89jYWOzatQtvvPEGoqOjERkZiQ0bNgzol/uV7r77bmzatAlyuRyvvPIKPv30U4SEhPQoN2HCBGzbtg0PP/wwwsLCcOzYMSxdurTX533kkUfA4/EQGRmJzMxMzJo1a0BxPfXUU8jNzUVmZiZycnKuurb6jTfewN/+9jf3TOA777zT4/y///1vqFQq5ObmQi6XY/369e5Zxk888QReffVVhISEuNf9bt68GVu2bEFwcDDeeOMNj+e79957kZGRgfj4eCQlJUEsFnsMZfTHmjVrsGvXLtx6660eXbYvvvgivvjiC8hkMtxyyy34wQ9+0OtzqNVqvPDCC1i1ahWio6NhsViQkZHhPj958mS8++67eOqppxAREYHY2Fg8/fTTHrPSydDisP72YxBCCCGk36gFSwghhPgAJVhCCCHEByjBEkIIIT7g0wSbn5+P9PR0qNVqrF271utWar2Vef3115GTk+P+EAqF+PTTT30ZLiGEEDJkfDbJyeFwICUlBZ9//jkyMjJwxx13YNmyZbj//vsHVAYAamtrMWnSJDQ0NCAgIKDP15XJZB63UiOEEEJ8RaPR9Dpz32c7ORUUFECpVLqnia9btw6vvvqqR/LsTxkAePvtt7Fy5cqrJlfAtal6SUnJENaEEEII8S49Pb3Xcz5LsBqNxmMtWFxcXI+F/P0pAwBvvfUWXn31Va+vs3HjRmzcuNH9WKvVXmvohBBCyDXz6Rjs5fvO9tYTfbUyJ0+ehE6nw/z5871ev2HDBpSUlLg/vC2KJ4QQQoabz1qwKpXKY79QjUbTY2y0P2Xeeust3HPPPR6JmBBCyPAbz/sSDSYH+SzB5ubmoq6uDiUlJUhPT8fmzZuxcuXKAZVxOBx49913sWfPHl+FSQgh5CqcTidqa2t73ExgPJFIJO6be/SXzxIsj8fDpk2bsGrVKlitVsybNw+rV69GYWEhfve732Hnzp29lum2d+9eREVF9TmITAghxLdaWlrA4XCQmpo6oAQzVjidTtTV1aGlpWVAe7KPub2I09PTaRYxIYQMobKyMsTHx0MkEvk7FL+xWCyorq5Gamqqx/G+cs74+1OEEEJIvzHG4HA4Bn2j97FCIBDA4XAMaByaEiwhhJCrGu8TTQdTf0qwhBBCRgUOh4OcnBxkZmYiLS0Nv/rVr9DV1eU+n5ub6/781VdfRVpaGpYsWQIAWL16NbKysvD44497PKder8d1110HuVzuLjtUfDbJiRBCCBlKPB4PRUVFAACdTocf//jHuO2229wrTQoLC91lN27ciO3btyMtLQ1NTU34+uuv0djY2OM5BQIBnnjiCRgMBvzjH/8Y0nipBUsIGfEYYzDaTGgxtaJKV4MqXc24XpNJXPvOv/nmmzhy5AhOnz4NAODzXW3G+++/HxUVFVi1ahUee+wxLFy4EFqtFjk5Ofjoo488nkckEmHhwoWQSqVDHiO1YAkhI1J5RyUKmk7CaDfCYDPCeUVCXRq/CBNDU/wU3fj1dc1+tJmHfkvasIAQXBe3YEDXBAcHQ61W49y5c5g0aZL7+JYtW5Cfn49du3ZBqVRiw4YNWLJkibv1O1wowRJCRhyrw4o9td+Ax+EhSqJAoEyCQIHrQ8KX4EDdEXxTdxgJsjgE8Mfv0hHiMlInYFGCJYSMOKdaz8Jst2ClegXignreflLA5ePj8i9wuOE7LFLN9UOE49dAW5m+pNPpUFFRMWI3I6IxWELIiGJ1WHG8+RRiAiOhksZ6LaMKikVaaAqKW0vQYGga5gjJSNDV1YX169cjLy8PmZmZ/g7HK0qwhJARpbv1OjM6t8+uv7kxsyDkCbGv9gCczDmMERJ/cTgc7mU606dPR2xsLLZv337Nzztp0iTcfvvtOHjwIJRKJbZu3XrtwYK6iAkhI0h/Wq/dJAIx5sTMwN7aAyhqOYMpikl9liej39VmjtvtdvfnVVVV7s8TEhJQXl7e63Xds5CHGrVgCSEjRn9br90yw9IQHRiJIw0F6LLqhyFCQvqPEiwhZETobr1G96P12o3D4WCxai7szIFv6g77OEJCBoYSLCFkRHC3XqOmDmjZRbg4DJMjslDeUYmLndU+jJCQgaEESwjxu8tbr96W5VzNrKhcBAkDsV9zEDanzQcREjJwlGAJIX432NZrNwFPgAXKOdBZ9ShuPeeDCAkZOEqwhBC/utbWa7ckWTyCRUEo0/Y+W5SQ4UQJlhDiV9faeu3G4XCQIk9Go7EFOmvX1S8go44vblf39ddfIzc3F5mZmV5vBnAtaB0sIcRvGGM42VKMqEDFNbVeu6XKk1HYVIQybQVyI3OuPUAyovjidnXh4eH45JNPoFQq0dDQgClTpmD+/PmIiIi45nipBUsI8ZsmYwuMNhMmhqRc84btXVoTKr9ph9gixYWOiiGKkIxUQ3W7usmTJ0OpdP1xFx0djfDwcK+JeDCoBUsI8ZuaLg0AID5INajrGWO4WNyEY19ewNkjtXA6nLAHmxF+fyc6EjohFwUPZbgEwMevHEVTTceQP29knBw/eHjmgK4Z6tvVHTx4EAaDARMnThxMFXqgBEsI8ZuqrloEi4IgF8kGdJ3JYMWJvRdx7MsLaNF0QiDkY/LCRKgmhGP764dx9uVWFIadxZKcPB9FTkaSobhdXXV1NdasWYO33noLAoFgCKKiBEsI8ROLw4IGQxOywtIG9Auy7EQ93vrjt7BZ7AiPlWHFA1MxZXESJFLXfWEjYoPw3GNv4b3fHUXGK2mITgjxVRXGpYG2Mn1pqG5X19zcjOXLl+Oll15CXt7Q/VFGY7CEEL+o7aoHYwzxsv53D5uNVnz8ylFIgwPwwP9bgkf+eRPm3JLmTq4AkJQVhR88nQuT1YKNv96J2rJWX4RP/GyoblfX2dmJpUuX4rHHHsMtt9wyhBFSgiWE+El1Vy24HA5U0ph+X7N72yno2oy4dcN0JE+K6rXlmzc1G+k/l8HgNOD/ntyLi2fonrFjgS9uV/fqq6/i3Llz+Mc//oGcnBzk5OTg8OGh2deauogJIcOOMYZqXS1iAqMg5An7dU1NaSuO7ihDzoJEpE7pOymHBYQgLjkCYQ/b0LFFiK3P5GP10/ORkhM9FOETP/HF7eqefPJJPPnkk0MS35WoBUsIGXZaSwd0Vn2/u4ftdge2/+9RiKVCrHhgar+uSZUnwxykxx3PTYdEJsJn/yy46i9oQoYSJVhCyLCr1g1sec6B7efQVN2B5eumQBoc0K9rUuXJAIAmfgMW3J6B1nodSgvrBxcwIYNACZYQMuyqu2ohEYgRIQ67atmWOh32vVeM5OwoTFmU1O/XCAmQI0IchgsdFZi8MAEBgUIc+uz8tYRNyIBQgiWEDCu70w6Nvh7xQcqrLs9hjOGTjcfA4XBw24YZA17vmCJPQru5A13owvQb1CgvavDJJgnjwXjvXh9M/X2aYPPz85Geng61Wo21a9d6DED3p8zRo0cxffp0ZGRkICMjA/X11L1DyGhXb2iE3enoV/fw8b0XcbG4CYvuykJYdNCAXys1xNVNXNZxEbNunAAul4tDn5UO+HnGMw6HA5FIhLa2NjidTjDGxt2H0+lEW1sbRCLRgP7I89ksYofDgXXr1uHzzz9HRkYG7rjjDmzbtg33339/v8p0dXVhzZo1+PTTT5GWlobOzk4Ihf2bbUgIGbmqdLXgAFfd3L+rw4Sd/zqBqIQQzLl1cFvXyUXBUEjCcUFbgVlpuUifpURRfiVuWJONQFn/xnIJoFKpUFtbi9bW8bumWCQSQaUa2JaePkuwBQUFUCqVyMjIAACsW7cOr776qkeC7avM22+/jRUrViAtLQ2Aa89JQsjoV62rhUISAYlA3Ge53f85BbPBivt/vxB8Pm/Qr5cqT8bB+mNoMbVhzi1pOHOoBgW7yrHg9sFvTjDeCAQCJCUljetu4sFsx+izLmKNRuOR7ePi4qDRaPpdprS0FBaLBYsXL8bkyZPx1FNPjes3l5CxoMuqR5tZi/irtF71nWYU7a/EpLnxUKWGX9NrpshdE6PKOioQNzEcypQwHPmiDHa745qedzzicDjj9mMwfDoGe3lQvSXH3srYbDbs378fH3zwAQ4fPoxjx45h27ZtPa7fuHEj0tPT3R9arXYIa0AIGUruu+dcZf1rwa5y2G0OzLppwjW/ZrBIhghxGKp1teBwOMi7aQJ07UacPVx7zc9NSF98lmBVKhVqamrcjzUajfuee/0pExcXh2XLliEsLAxisRi33XYbTpw40eN1NmzYgJKSEvdHSAht7E3ISFWlq4GQJ0CURNFrGbvdgWNfXkCsOgxxE66t9dpNKY1Bq6kNZrsFWXPjERQipiU7xOd8lmBzc3NRV1eHkpISAMDmzZuxcuXKfpdZuXIlDh48CLPZDKfTiX379rnHagkho4+TOVHTVYe4oFjwuL2PqZYc1aCz1YC8myYMyW3IAEAZFAMGoN7QAD6fh5krUlFb2oqa0vE7aYf4ns8SLI/Hw6ZNm7Bq1Sqo1WpIJBKsXr0ahYWFWL58eZ9lAECtVmPNmjWYMmUKJk2aBIVCgbVr1/oqXEKIjzUZm2FxWK+6POfIF6UIDA7ApLnxQ/baMYFR4ADQ6BsAANOXpoAv4OEwtWKJD/l0s/9Fixa5W6fdcnNzsXPnzj7LdNuwYQM2bNjgyxAJIcOkSuca8+xr/LX+YjuqzjZj4R2Z4AsGP3P4SmJ+AMLFYdDoXWvppcEByFmQiBN7L2Lp/QbIwwOH7LUI6UY7ORFChkV1lwahAXLIhL1vGHHkizJwuVzMWJ465K+vlEajxdgKi8MCAMi7eQKcTieO7igb8tciBKAESwgZBia7GU2G5j6X5xi7LDj1TRUy8lQIDpMMeQxKqWsctk7fCACITghBUlYkCndXwOl0DvnrEUIJlhDicw2GRjAAyqDYXst8t6scNqsdeUOwNMebGGn0pXHY77dcnTQvAQadGbWlbT55TTK+UYIlhPhcvaEJABATGOn1vMPh6qqNSQpFfFqET2LoHoetuyzBTsh13bi9tLDOJ69JxjdKsIQQn2swNCFEFAwx3/v2iOeOuZbmzBrCpTnexEqj0XzZOKw8PBBRCSE4X0AJlgw9SrCEEJ9yOB1oMjYjupfWK+BamiMJEiF73tAtzfHmynFYwNWKbajUorPN6NPXJuMPJVhCiE+1mNpgdzoQHRjl9XxDlRYXi5swfWkKBEKfrhxErDQagOc47MRprnFh6iYmQ40SLCHEpxqNrvHX3lqw3y/NSfF5LK5x2FDUXdpwAgBUE8IhlopQWkj3myZDixIsIcSn6g1NEPIECAvouU+4xWRD0f5KpM9UDttmD0ppDJqNLe5xWB6Pi9Qp0SgvaoTdRnfYIUOHEiwhxKcaDI2IDoz0Onmp+GA1bBY7cq9XD1s8sdJo177E+ib3sQm5MbCabag82zxscZCxjxIsIcRnuqx6dFkNiOll/LXw6wrIQiVImez9vC8ovYzDpkyJAYfDoW5iMqQowRJCfKbB0Pv4a0udDtXnWjB5USK43OH7VSTmixEuDvVIsNLgAChTw1BKy3XIEKIESwjxmQZDIzgAIr3c//XE3osAgKlLkoc5qu71sC2wOKzuYxNyY9Far0NrvW7Y4yFjEyVYQojP1BuaEC4Og4gn9DjudDpxYt9FxKdFICJWNuxxda+HbTB8vx72++U61E1MhgYlWEKIT9iddrSYWr12D1842Qhdm9EvrVcAiA3sOQ4bkxSCoBAxrYclQ4YSLCHEJ5qMLXAy5jXBHt9TAYGQj6w5cX6IDJAIxAgLCIGm6/sEy+FwMCE3FheLm2Ex2/wSFxlbKMESQnyi/lL365UJ1thlQclRDTJnqxAgEXq7dFgopTFoMrXC6jEOGwOH3YGKU419XElI/1CCJYT4RIOhCWJ+AIKFnmOsp76tgsPu8Fv3cDdlUAwYY+4/BABAnRMFLo9L47BkSFCCJYQMOcYYGgxNiAmM6rHBxPE9FxGikCIpq/fN/4fD9+Ow32+bGCARIjFDgdLCejDG/BUaGSMowRJChlyHRQeT3dyje7ihSou68jZMWZzk09vS9YdEIEZogNxjohPg6ibubDWgsbrDP4GRMYMSLCFkyHUvf7lyB6fje1xrX6csThr2mLxRXloPa3fa3ccm5F5arkObTpBrRAmWEDLkGoxN4HG4UEjC3cfsdgeK9lcieVIUQiOlfozue5ESBZyMocXU5j4WoZQhJFJK47DkmlGCJYQMuXpDIyIk4eBzv7+/a2lhPQydZkxdMjJarwAQdWmHqSbj95v8dy/XqT7XAmOXxV+hkTGAEiwhZEhZHBa0m7ReuocrIBILkJHnn7Wv3oQEyCHg8tFo8LyLTuqUaDDG6O465JpQgiWEDKlGQzMYPNe/dnWYUFpYj0lz4yEU8Xu/eJhxOVwoJBFoMrZ4HI9PjwCHw0EVJVhyDSjBEkKGVL2XO+gU5VfC6XD6fe2rN5GSCGgtne4bsAOARCpCZLycEiy5JpRgCSFDqsHQCJlQCqkgEIBrTezxPRcRHitD3MTwq1w9/L4fh/VsxSakR6C+QkvbJpJBowRLCBkyTuZEo7HZo/VaV96OppoOTF2S7Pe1r95EBboS7JXjsAkZCjidTtScb/VHWGQMoARLCBky7WYtrA4boi+b4HR8TwU4HA6mLEr0Y2S9CxJIIeYH9GzBZrgSL3UTk8GiBEsIGTJXbvBvs9pR9E0VUqZEQxYq8WdoveJwOIiSKNBo9EykwWEShERKUV3S0suVhPTNpwk2Pz8f6enpUKvVWLt2Lex2e7/L7N+/H0FBQcjJyUFOTg5WrVrly1AJIUOgwdAEPpeHCHEYAKDkqAZmg3VETm66XKQkAgabEXqrweN4YoYCNedbYbc7/BQZGc18lmAdDgfWrVuHDz/8EOXl5dDr9di2bduAysyYMQNFRUUoKirCRx995KtQCSFDpNHQjEiJAlyO61fL8T0VkASJkD5D6efI+tY9Dttk7DkOa7PaUVfe7o+wyCjnswRbUFAApVKJjIwMAMC6deuwffv2AZchhIwOJrsZWkunu3u4o9WA8qJGZM9PAF/A83N0fYuURABAj25iGocl18JnCVaj0UClUrkfx8XFQaPRDKjM8ePHkZOTg3nz5mHXrl2+CpUQMgQarlj/enJfJRhjI757GADEfDFkwqAeE53CY4IQGBxACZYMik+3VLl8Sn5v91bsrcyUKVNQXV0NmUyGoqIiLF++HEeOHEF8fLzH9Rs3bsTGjRvdj7Va7VCFTwgZgO7WX7REcWntawWiEkIQkxTi58j6JypQgWpdLRhj7t9LHA4HiRkKVJxu8jhOSH/4rAWrUqlQU1PjfqzRaKBUKvtdRiaTQSaTAQBycnKQl5eHoqKiHq+zYcMGlJSUuD9CQkbHDzMhY02DoQkyYRAkAgmqSlrQ1tCFqUv8f9/X/oqURMDisKLD0ulxPCFDAZPeQveHJQPmswSbm5uLuro6lJSUAAA2b96MlStX9rtMQ0ODu0Wr0Whw7NgxpKen+ypcQsg1cDInGg1N7u7h43sqwOVxkbNgZK599aZ7R6fexmFpuQ4ZKJ8lWB6Ph02bNmHVqlVQq9WQSCRYvXo1CgsLsXz58j7LAMDHH3+MzMxM5OTk4MYbb8Rf/vIXpKSk+CpcQsg1aDdrYXPaER2ogMVsQ/HBGqTPUEIaHODv0PpNIQ4HBz23TIxOlEMkFtA4LBkwn47BLlq0yN067Zabm4udO3f2WQYAHnroITz00EO+DI8QMkS6JzhFSSJx5lANrGbbqJjcdDkBT4AwcWiPFiyXy0V8WgQqzzbTOCwZENrJiRByzS7fYOL4nosIChEjZUq0v8MasEhJBFpMrXA4PTeWSMhQQNdmhLbZ0MuVhPRECZYQcs0aDE1QSCLQ0WRE5ZkmTF6YCB5v9P16iZIo4HA60Wb23FgiPt21Tpa6iclAjL6fAELIiOLeYEISieN7KgBg1HUPd4vsZaKTKjUMPD4PlWcowZL+owRLCLkm3dsLRooVOLGvEqoJ4VCogv0c1eCEBYSAz+X1mOgkEPKhTAlFVQklWNJ/lGAJIdeke4KTsZyhs9WA3OtGZ+sVAHhcHiLE4T1asIBrHLa1ToeuDpMfIiOjESVYQsg1cW0wIUVJfj0EQj4mzY2/+kUjWKQkAu0mLWwOm8dxWg9LBooSLCFk0JzMiUZjM0JZGEqOapA5W4UAidDfYV2TKIkCDECTyTORxqdFgMPh0EQn0m+UYAkhg9Zu7oDVYYPhFAcOuwO516n9HdI1676zzpXjsOJAIaITQ1BJCZb0EyVYQsigdY+/1h7qQmhUEBIzFX6O6NrJRcEQ8YRoNHgfh224qIXZaPVDZGS0oQRLCBm0RmMTzPUMHTXmUbWxf184HA4iJRE9br4OuNbDMsZQc77VD5GR0YYSLCFk0BoMTTCd4IPL5WDK4iR/hzNkoiQK6Kx6GG2eM4YTujecoIlOpB8owRJCBsVst6C1S4v24zaoc6IgDw/0d0hDpnsctvmKiU6yUAlCFFLUnKcES66OEiwhZFAajU3QnrGCY+aN6rWv3ii6E6yxZ1dwXFo4akvb4HQ6hzssMspQgiWEDEqDoRnNxyyQBwchbYbS3+EMKakgEGJ+QI8WLADETYyA1WxDU3WnlysJ+R4lWELIoFTWamAocyJ3kRoCoU/vfDnsOBwOFJJwry3Y+DRX65a6icnVUIIlhAwYYwzF39RCxBWNue7hbpHiCOisepjsZo/jUQlyCER8VJ+jBEv6RgmWEDJgbWYt6o8YEJ0YipikUH+H4xMRknAAQPMVG07weFyoUsNoqQ65KkqwhJABO3m8DOZWJ2bekOrvUHzm+5nEXiY6TYxAW0MX9J3mHucI6UYJlhAyYN99fQE8Pgfzrp/k71B8JkggRQBf1KMFC9A4LOkfSrCEkAGxWuy4cLQRqskhkAVL/B2Oz3A4HCjE4WjyMtFJNSEMAKibmPSJEiwhZEBOHiyHyWRDzoIEf4ficwpJBHTWrh4TnQJlAQiPlVGCJX2iBEsIGZCDX58FX8LBtLyJ/g7F5xRi10SnFq/jsOHQlLXBbncMd1hklKAESwjpt64OE8pO1CN8shAqebS/w/E5hXsmsfeJTjarHY2VHcMcFRktKMESQvrt9LfVMNnMSJkTCRFP5O9wfC5YKIOIJ+xxb1jA1YIFaKIT6R0lWEJIvxXuLQdH7kDGpAR/hzIsund08tZFHBkXjACJkMZhSa8owRJC+qW5thMXyxoQniuCMijG3+EMG4U4Ah0WHSwOi8dxLpcLZWoY7ehEekUJlhDSL0X7K2G2WxCeK0JsYJS/wxk2fY3DxqdFoKPFgM4243CHRUYBSrCEkKtijKFofxUCVECMKhQSwdhd/3olhbivHZ1oHJb0jhIsIeSqKs82o72pC4E5TsRKx/7s4cvJRTIIeQKvOzqpJoSDw+HQOCzxihIsIeSqivZXwQYbQnIE4y7BcjgcRIi937pOHCiEQhVM47DEK0qwhJA+2ax2FB+sRmh6AARB3HGXYAHXxv9aSycsDmuPc3FpEaiv0MJmtfshMjKS+TTB5ufnIz09HWq1GmvXroXd3vMb8GplOjo6EBMTgwceeMCXoRJCelFaWA+zwQrZZA6ChIEIEkj9HdKwu9qOTg67A/UV2uEOi4xwPkuwDocD69atw4cffojy8nLo9Xps27ZtwGV+/etfY/Hixb4KkxByFSf2XYRQzAdSDIgJjAaHw/F3SMPuajOJAZroRHryWYItKCiAUqlERkYGAGDdunXYvn37gMrk5+fDYrFQgiXET4xdFpQdb0B8bhgcPAdipeNnec7lQkRyCLh8rxOdwmOCIAkS0UQn0oPPEqxGo4FKpXI/jouLg0aj6XcZk8mExx9/HH/729/6fJ2NGzciPT3d/aHVUjcNIUPl9IFqOOwOKKa5tkWMlY6fDSYu172jk7elOhwOB3ETw1F9rgWMMT9ER0Yqn47BXt6V1Ns3Xm9lnn32WTz44IOIiIjo8zU2bNiAkpIS90dISMg1Rk0I6Va0vxLB4YFwxBkQwBchVCT3d0h+oxCHQ2vugM1h63EubmIEurQmdLQY/BAZGan4vnpilUqFmpoa92ONRgOlUtnvMocPH8b777+P5557Dnq9HhaLBYwx/Otf//JVyISQy3S0GFB9rgVzb0tHjfE0Ysfp+Gs3hSQCDK4NJ66cSf39hhOtCFGMv0lgxDuftWBzc3NRV1eHkpISAMDmzZuxcuXKfpc5cOAAqqqqUFVVhb/97W/44Q9/SMmVkGFUfMj1x69qWjDMdsu4HX/tppC4etO8zSRWpoaBw+HQeljiwWcJlsfjYdOmTVi1ahXUajUkEglWr16NwsJCLF++vM8yhBD/Kz5YjRCFFM4oEwAgJnD8rX+9XIgoGAIu3+ut60QBAkQnhlCCJR581kUMAIsWLXK3Trvl5uZi586dfZa50n333Yf77rvPFyESQrzoaDWgtrQV81amo97QCAGX716qMl5xOVxEiMO8LtUBgPj0CBzdUQaLyQaRWDDM0ZGRiHZyIoT0cOZS93Dm7DjU6RsQExgFLod+XSgkEWg3a2Fz9pzolJAeAcYYakppuQ5xoZ8YQkgPxQdrEKKQIihOAL3NiJhxPv7aTSEOBwPQamrrcS6ue8MJ6iYml1CCJYR46Gg1oOZ8CzJnx6He2AgA43L/YW+6u8m9jcPKwwMRopCiqoQSLHGhBEsI8dDdPZw1x9U9zONwESVR+DmqkSE0IKTXiU4AEJcWjprzrXA4nMMcGRmJKMESQjycOeTqHlamhKFe34jIQAX4XJ/Ohxw1uBwuFJIINBqavZ5PSFfAarahsapjeAMjIxIlWEKIW0era3OJzNlx6LLpobV0QjlOt0fsTZREAa2lE2a7pce5+HTXOGx1ifcETMYXSrCEELfLZw/XdtUBAOKDlH1dMu5EBbq6y5uMPZNoZFwwAiRCWg9LAFCCJYRc5syhGsgjAqFKDUOVrhZCnoDGX6/Q/fVo9JJguVwu4iaGo6qENv4nlGAJIZd0dw9nzYkHA0NtlwZKaQx4XJ6/QxtRpIJABArEvY7DxqdHQNdmpI3/CSVYQojL2cO1AFzdw83GVpgdVsQHqa5y1fjD4XAQKVGg0djstZXafQN2Wq5DKMESQgC49h7u7h6u7nIl23gZjb96EyVRwGQ3o8um73FOmRoGLo9LG06QvhPsCy+84P78xIkTPg+GEOIfnW1G9+xhDoeDmi4NgkVBkIuC/R3aiNQ90clbN7EoQICYpBBqwZK+E+x7773n/vyBBx7weTCEEP84e7h7c4l4WBxWNBiaaPZwHyIlEeDA+0QnAIhPV6CpugMmg3V4AyMjSp8J9vLxBZoRR8jYVXywBsHhru5hjb4eTsYQR+OvvRLxRAgJkPeaYN0b/5+njf/Hsz63ZzEYDDhy5AicTieMRiOOHDnikWjz8vJ8HiAhxLd07a7u4bybJ7puGq6rBYfDgSqINpjoS5REgbKOCjicjh4zrbsnOlWXNGPCVPo6jld9JtiYmBg88cQTPT4HXDPp9u3b59voCCE+d/ZILRhjyJodBwCo6dIgWqKAiCfyc2QjW6REgZL2MrSZtT3ulRsUIkZYdBBtODHO9Zlg9+/fP0xhEEL85ezhWshCJYibGI5Oiw4dFh3SQlP9HdaIF33Zjk7ebkYfnxaB4oM1sNsd4PNpLfF41GeCPXz4cJ8XUxcxIaObQWdG5ZlmTF+qds8eBoA4muB0VWEBoeBzeWgwNiML6T3Ox6VF4MS+i2i4qIUqtWcCJmNfnwl2zpw5yMzMRHh4eI9JTtRFTMjod+6YBk6nE5mXuoeru2oh4gkRKYnwc2QjH4/Lg0IcjqZednRKzHC1cKvPtVCCHaf6TLB/+tOf8MEHH0Amk2H16tW46aabIBQKhys2QoiPnT1SC0mQCAkZCjiZEzVddYgPUoLLoT1o+iNSokBRSzEsDitEPM/fjRFKGcRSEapLWjDnljQ/RUj8qc+fot/85jc4fvw4nnnmGRw6dAjZ2dlYv349ysrKhis+QoiPmI1WXDjZiPSZKvB4XDQammF12Gh5zgBEBSrAADR7uQE7h8NBfBpt/D+e9esuypMnT0ZycjJSU1Px1FNPYfr06UhNpUkQhIxmpYX1cNgdyJjlSqjVl8ZfaXvE/rv8zjqqoNge5+PTFThfUIf2Rj3CooOGOzziZ30mWLvdjh07dmDbtm0oLy/H7bffjsLCQiQkJAxTeIQQXzlzuAYisQDqnCgAruU5IaJgyISUCPpLJgyCmB/g9d6wwOUb/zdTgh2H+kywUVFRiI+Px+rVq/HLX/4SHA4H9fX1qK+vB0CziAkZrawWO0oL65E+Qwm+gAez3YJGQxOyIzL9Hdqo4rqzTgQaepnopEwJBY/PQ/W5VkxdnDzM0RF/6zPBZmZmgsPh4NNPP8Wnn37qcY5mERMyel042QCbxY6MPFf3cK2+Dgy0PGcwogMjUaWrhd5qgFQY6HFOIOQjVh2K6hLvCZiMbbTRBCHj0NnDNRAI+Ui9tI1fTZcGPA4XKilt6zdQ3UuaGoxNSBEm9TifkKHAtx+fhb7TDGlwwHCHR/yoz1nElZWVWLlyJbKysnDPPfegoaFhuOIihPiI3e7Aue/qkDIlGqIAARhjqNbVIiowEgKewN/hjTqRku4dnbxvi5iUFQkAuFjcNGwxkZGhzwS7du1apKam4q9//SuCg4Pxy1/+crjiIoT4yMXTTTAbrMi81D3cYemEzqqn29MNkpgfALkoGI0G7wk0IT0CXC4XlZRgx50+u4hbW1vx5z//GQBwww03YPLkycMSFCHEd84crgWXx8XE6a6EWt5ZCQBICo73Z1ijWpQkAhWdVXAyZ49NOkRiAWJTQqkFOw712YIVCL7vLuJwOOByaXcXQkYzp9OJkqO1UGdHQRzo2nmovOMiQkTBCAsI9XN0o1dUoAI2px3t5g6v55OyItFc24kurWl4AyN+1WfGLCoqglAodH90PxYIBP3aMjE/Px/p6elQq9VYu3Yt7HZ7v8scOXIEOTk5yMnJQWZmJl577bVBVpEQ0q2qpAWGTrN79rDO2oUmYyvU8kRwOBw/Rzd6fT8O6322cPIk11rjyjPUih1P+kywTqcTVqvV/dH92GazwWq19vnEDocD69atw4cffojy8nLo9Xps27at32Wys7NRWFiIoqIiHD16FH/5y19QVVV1bbUlZJw7e9h1M/X0ma4EW95xEQCglvec/Ur6L0IcDh6Hi8ZeEmxcWji4PC4qTlOCHU981udbUFAApVKJjIwMAMC6deuwffv2fpeRSCTg811DxCaTCQ6Hg/bzJOQaMMZw9kgtEjIU7uUi5R2VkAmlUIjpbi/Xgs/lQSGJQJ3e+0oLUYAAqtQwGocdZ3yWYDUaDVSq7zcNj4uLg0ajGVCZoqIiZGVlIS4uDr/61a+QmJjY43U2btyI9PR094dWq/VBbQgZ/erK29HZanDPHtZbDag3NEEtT6Lu4SGgksag3dwBvc3g9XxSViRa63TQtRuHOTLiLz6dtXT5D21vrc++yuTk5KC4uBiVlZX46KOPUFpa2uP6DRs2oKSkxP0REhIyRNETMrYUH6wGAKRf2ty/e/awOrjnH65k4Lo3+9d01Xs9n0jrYccdnyVYlUqFmpoa92ONRgOlUjngMoBrT+S5c+fi888/91W4hIxpjDEUH6xB3MQIyMNd2/mVd1xEoECC6MBIP0c3NkQHRoLH5aJWX+f1fHxaBHh8Hi4W07aJ44XPEmxubi7q6upQUlICANi8eTNWrlzZ7zIVFRWw2WwAgK6uLuzevRuZmbQROSGDUVvWBm2zHpPmuta6Gm0m1OkboA6m2cNDhc/lIyYwCrW9tGCFIr5rHPZ04zBHRvzFZwmWx+Nh06ZNWLVqFdRqNSQSCVavXo3CwkIsX768zzKAax/knJwcZGdnY/bs2bjrrruwdOlSX4VLyJh2+kA1OBwOsubEAQAqOqvAAKjl1D08lJTSGOisXei06LyeT5oUibaGLnS0eh+nJWNLv264PliLFi1yt0675ebmYufOnX2WAVwzitetW+fL8AgZF1zdw9VIyFBAFioBAJR3XoSYH4BYabSfoxtbVNJYHEEhNPp6BItkPc4nZUVi33vFqCxuwuSFtDRqrKOtmQgZ46rPtUDXZnS3Xs12C2q76pAcnNBjWz9ybSIlERBw+ajt8j4OGzcxnMZhxxH66SJkjOvuHs6c7UqwF3VVcDJGm0v4AI/LQ6w0GrX6eq8rJwRCPuImhtNM4nGCEiwhY5jT6cSZQzVIyopEkFwMwLW5hIgnpHu/+ohSGgODzQitpcPr+aSsSLQ3dqGjhcZhxzpKsISMYZVnmtGlNSHr0uxhq8OK6q5aJAXHg8fl+Tm6sal7PWxvs4mTJrmWRVXQbOIxjxIsIWNY8cEacLlc9+5NlboaOJxO6h72oQhxGEQ8Ya/rYVWpYRAI+dRNPA5QgiVkjHI4nDhzuAbJ2ZEIlHXvPXwRAi6fbq7uQ1wOF0ppDDRXGYetpIlOYx4lWELGqIvFTTB0mt2bS9icNlTpapEYHA8+16cr9MY9VVAMzHYLWkxtXs8nZkVC26xHe5N+mCMjw4kSLCFj1Olvq8Hj89x7D1fpamFz2mnv4WGgkl7al7iXbuIk2pd4XKAES8gYZLc7cPZILVImR0EiFQEAzrWXQcgTIFEW5+foxr7QgBCI+QG9TnRyj8PSRKcxjRIsIWNQeVEjTHoLsua4uoe7rHpUdlZjYogaAp7Az9GNfRwOB3FBsdDo6+FwOnqc5wt4iE+PwMXiZrrP9RhGCZaQMaj4oKt7OG2GazJTSXspGIDMsDT/BjaOKKWxsDntaDa1ej2flBWJzlYD2htpHHasogRLyBhjtzlQclSD1KnREAcK4WROnGk7j0hJOBSSCH+HN26oglwbeWj03ruJk7OjAAAXTjYMW0xkeFGCJWSMKTtRD7PBiux5CQCAmi4Nuqx6ar0Os2ChDEFCaa/7EitTQiEJEqHsuPcETEY/SrCEjDGnv62GQMjHxGmumaxn2s5BwOVjQojaz5GNLxwOByppDOoNjbB7GYflcrlImRyNitNNsNt6niejHyVYQsYQk8GKkqMapM9UQiQWQG8zoKKzGhNC1BDyhP4Ob9xRBcXC7nSg0eh9OU7q1BhYzTZUlbQMc2RkOFCCJWQMOX2gGjarHVOXJAMAStpKwRij7mE/UV66oUJv3cQpU1z346Vu4rGJEiwhY8jxPRUIDg9EcnYkGGM403YeEeIwRNLkJr8IEkoRIgpGbS8TnYLkYsQkh6LsBCXYsYgSLCFjRHNtJ2pLWzFlUSK4XC5q9XXQWbuQGZYGDofj7/DGLVVQLBoMTTDZzV7PT5gag6bqDnS00u3rxhpKsISMESf2XQQATFnsulNOcWsJ+FweJobS5CZ/SpEngTGG8o5K7+enuLqRL5yg5TpjDSVYQsYAh8OJk/sqEZ8WgfAYGYw2Iyo6q5AaooaIJ/J3eONarDQaEoEYZR0VXs/HTQxHQKCQxmHHIEqwhIwBF042QNduRO51lyY3tZfByRiywib6OTLC5XCREpwETVcdjDZTj/M8Hhfq7CiUFzXCbqflOmMJJVhCxoATey9CIOIja078pclN5xAmDkGUJNLfoREAKSFJYAAudFz0ej51agzMRitqS73f3o6MTpRgCRnljF0WlBzVIDNPBZFYAI2+Hh0WHbJoctOIERsYjUCBpNdu4u7lOhdoNvGYQgmWkFGu6JsqOOwO99rX061nXZObQlL9HBnpxuFwkCpPQr2+AXpbz9nC8vBARMbLUUrjsGMKJVhCRrkTey8iRCFFUlYk2sxalHdUIj00FQF8mtw0kqTIk8EAlPfWTTwlBvUV7ejq6DlOS0YnSrCEjGINVVrUlbdhyuIkcDgcfNd4HFwOF7mRk/0dGrlCdGAkgoSBKNN67yZOnUrLdcYaSrCEjGLH93y/9rXdrEWZtgJpoamQCYP8HBm5EofDQYo8GfWGJnRZe94DNiE9AsIAAS3XGUMowRIyStntDhTtr0TypCiERkpR0HQSHA4H06j1OmKlyl3j5N5mE/MFPCRPisSFkw1wOp3DHRrxAUqwhIxSZcfrYeg0Y8riJGjNHTjffgFpoakIFsn8HRrpRaQkAjJhUK+ziVOnxsDYZYHmQvswR0Z8gRIsIaNU4dcVEIkFyMhToaDpJECt1xGPw+EgNSQZjYZm6KxdPc7Tcp2xxacJNj8/H+np6VCr1Vi7di3sdnu/y7z99tvIzs7GpEmTMG3aNOzfv9+XoRIyqnS2GVFaWI+sOfEwcYw4p72AtJAUyEXB/g6NXEWq3LVXtLfJTmFRQQiPldFynTHCZwnW4XBg3bp1+PDDD1FeXg69Xo9t27b1u0xiYiLy8/Nx+vRpbN26FXfeeSeNSxByyXdfXYDT4cTMFamu1itjmBY5xd9hkX6IEIdDLpLhQm/dxFNioClrg7HLMsyRkaHmswRbUFAApVKJjIwMAMC6deuwffv2fpfJy8tDaGgoACA9PR1msxl6fc+Zd4SMN3a7AwW7yhE3MQJSJR/n2sswMTQFIQHUeh0NXJtOJKPJ2IoOS2eP86lTY8AYw4WTtFxntPNZgtVoNFCpVO7HcXFx0Gg0Ay4DAO+88w4yMjIgk/WcvLFx40akp6e7P7Ra7RDWgpCR5+zhWnRpTe7WK2OMxl5HmdSQ3mcTJ2UpIAwQoORo7XCHRYaYT8dgL98HlTE2qDInTpzAU089ha1bt3q9fsOGDSgpKXF/hISEXFvQhIxwR3eUITA4APHTQlDSXorUkGSEBtD3/WgSFhCK0AC513FYgZCPCbkxOF9QD5u157wVMnr4LMGqVCrU1NS4H2s0GiiVygGVKSsrw+2334733nsPKSkpvgqVkFGjoVKLqpJmTL9BjZPtp8EYw/Soqf4OiwyQa9OJJLSY2tBm6rkkJ3N2HKxmG8poV6dRzWcJNjc3F3V1dSgpKQEAbN68GStXrux3GY1GgxUrVuD111/HjBkzfBUmIaPKkR1lrl/OCxU423YeankSwqj1OiplhE0EB8CJltM9zk3IjYFAyMfZwzU9LySjhs8SLI/Hw6ZNm7Bq1Sqo1WpIJBKsXr0ahYWFWL58eZ9lAOD3v/89mpub8dhjjyEnJwc5OTmoqqryVbiEjHhGvQVF+yuRPlOJQlMhuBwu5sbO9HdYZJBkwiCkhCTjfPuFHnfYEQUIkDo1GueO1cFuo5uwj1Yc1tvg6CiVnp7ubhETMpYc/PQcdvzfcSz6dQrOSoswO2Y6TW4a5ZqMLXi3dDumReZgdoxnT93J/ZX44O+HcO/vFmLitFg/RUiupq+cQzs5ETIKMMZwdEcZwmKlqAg+h9AAOaZETPJ3WOQaRUoioAqKwenWElgdVo9zE6fFgsfnofhQtZ+iI9eKEiwho0DZiQa0NXRBOtMJs8OChco54HF5/g6LDIGpimxYHFacaTvvcVwcKETK5ChXN7GduolHI0qwhIwCR3eUggmcME5oxsQQNVRB1GU4VsQHqRAmDsHJlmI4medudZmz42DSW1BZ3Oyn6Mi1oARLyAjX3qTH+cI6CLLNEAeKMDd2lr9DIkOIw+FgakQ2uqz6HhtPpM1QgsvjovgQzSYejSjBEjLCHdtZBp1FD/F0G/KipyFQIPF3SGSITQhRI1AgQWFTkceGOxKpCOrsKJQcrYXDQXuxjzaUYAkZwWxWO47uKoMzzoCEpChkhaf7OyTiAzwuD5MjstBiakOtvs7jXObsOBg6zag6S93Eow0lWEJGsBP7KlHX2oSI2QIsUs4Fl0M/smNVVngahDwBjjef8jiePlMJLpeLM9RNPOrQTyshI5TT6cSX7xfAJjNh/sJsRAUq/B0S8SERT4TMsDRU6zRoNbW5jwfKApCYqcDZI7W97ulORiZKsISMUMcPlaPsYg3U14dgjpJ2bBoPJkdkgcvh9GjFZs6OQ5fWhOpzLX6KjAwGJVhCRiAnc+Ld/+wBTwrc98ObIOKJ/B0SGQZBQikmhKhRqi1Hl/X7+19nzFKBw+FQN/EoQwmWkBFox4EDqCvtwLybM6AKifF3OGQYTVVkw8kYjjUedx8LChEjIUOBM4epm3g0oQRLyAhTr2/Elx8UQCoW4647l/g7HDLMwsVhSAtNwdm282g0fD9zODNPhc5WA2rL2vq4mowklGAJGUHMdgs+/u4rdJ61Y+nN0yENFvs7JOIHc2NmQsATYL/moLvFmj5LBQDUTTyKUIIlZIRgjGFP7Te4sLsNCnE4Fv2ANvMfryQCCWZFTUOjsQVn2117FMvDA5GQrkDR/kram3iUoARLyAhR3FaCktoK2E8HYNr8CQiLCvJ3SMSPsiMyECYOwcH6YzDZzQCAaTeo0aU1obSg7ipXk5GAEiwhI0CrqQ3f1B2G+ZgQMm4w5q2kHZvGOy6Hi4XKOTDbLTjSUAAAyJoTh4BAIb77qtzP0ZH+oARLiJ8ZbUZ8dvErcKxc2AvFSMqKhDIlzN9hkRFAKY3BhBA1iltL0GxsgUDIx5RFSbhwsgHtTfqrPwHxK0qwhPiR3WnHZ5W7oLcZoKqcCJvRSa1X4mFu7EzwuXzkaw6BMYbpS9VgjKFwN7ViRzpKsIT4CWMMu2v2o9HQjAUxs1G6qwUKVTAm5NK6V/I9qSAQM6Nz0WBowrn2MkTGyRGfFoHCrytostMIRwmWED852liIMm0FpigmgZ0PhLZZj7kr08HhcPwdGhlhcsIzERogx4H6o7A4LJi+NAVdWhPOf0eTnUYySrCE+MH59gs41ngCScHxyIuahn3vFSM4PBA58xP8HRoZgXhcHhYq58BkN+NQ/TH3ZKeCXdRNPJJRgiVkmNXrG/F1zX5EiMOwLH4xzh7SoLm2Ewt/mAm+gOfv8MgIpQqKRVpoCk63nkONsZYmO40ClGAJGUadFh0+r9yFAH4Abk5aCh6Hhz3vnEaIQoqpS5L8HR4Z4RYq50AuCsbXNfuRviiaJjuNcJRgCRkmRpsJn1TshM1pw02JNyBIKMWpb6rQWqfDgjsywOdT65X0TcgTYnnCEticdhx3FkA1MZwmO41glGAJGQYWhwX/rdiBDqsOyxOWICpQAYfDiX3vnUFIpBRTFlPrlfSPQhKOubGzUG9oQuA0B012GsEowRLiY3anHZ9d/AotpjbcELcQScEJAOBqvdbrsOiHmdR6JQOSHZ4BtTwBbQm1cAjtNNlphKIES4gPOZwO7Kj8GnX6RixUzsbE0BTXcYcT+94rRmhUEHIWJvo5SjLacDgcLFEtgDwwCCyzC+eOa2iy0whECZYQH3EyJ3bX5KNSV4NZ0bnIjsh0nzuZX4m2hi4supNar2RwAvgiLEtYjNCZPDQbW/Ddrgv+DolcgRIsIT7AGMN+zSGUXtpIYnrkFPc5u92Bfe8VIyw6CDkLqPVKBi86MArXTckDX+XArs8KYLPa/R0SuQwlWEJ84EhDAU63liA9bALmxsz02J3p5L5KaJv0WHxXFng8+hEk12aqIhtTb4pHQ3Mrtn9wwN/hkMv49Kc7Pz8f6enpUKvVWLt2Lez2nn9d9VamqqoK8+bNQ2BgIB544AFfhknIkDraUIjvmk5CLU/EEtU8j+RqtzuQ//4ZhMfKMGlegv+CJGMGh8PBfbfcgrCkQHzx9jFcbK7xd0jkEp8lWIfDgXXr1uHDDz9EeXk59Ho9tm3b1u8yMpkMf/7zn/H3v//dVyESMuSONR7H0cbjSAqOx7L4xeByPH/Eju+5CG0ztV7J0BILAvCTDTfCaeJg05ZP0WbW+jskAh8m2IKCAiiVSmRkZAAA1q1bh+3bt/e7TGhoKPLy8hAQEOCrEAkZUgVNJ3GkoRCJsjgsT7gOPK7n5CWz0Yo9b5+GQhWMSXPj/RQlGasm5SZh+rQ01O4z4KPTX0BvM/g7pHHPZwlWo9FApVK5H8fFxUGj0Qy4DCGjQWFTEQ7Vf4cEmQorEq8Hn9tzZvDed4uh7zDhxh/ngsul1isZWhwOB7eunYVwbjjKvmzFpxVfwuKw+juscc2nP+WXjz0xxgZdpi8bN25Eenq6+0Orpa4RMryON5/CwfpjiJcpcWMvybWppgOHPytFZl4cUiZH+yFKMh7Ep0Vg8qxkOAuDUNfYgh2Vu+Fw0jaK/uKzBKtSqVBT8/1gu0ajgVKpHHCZq9mwYQNKSkrcHyEhIdcWOCEDcKL5NA7UHUVcUCxuSrwBfC6/RxnGGD5/oxA8PhfL103x8iyEDJ3rfpSNAAQg4FgkarrqsKf2m0E1Xsi181mCzc3NRV1dHUpKSgAAmzdvxsqVKwdchpCR6njzKXxbdwSqoFjcnLTUa3IFgOJDNag43Yj5t2cgRCEd5ijJeBOTFIpJc+PRdMSMZJaCc+0XsLf2WziZ09+hjTs+S7A8Hg+bNm3CqlWroFarIZFIsHr1ahQWFmL58uV9lgEAo9EIpVKJRx55BO+++y6USiX27t3rq3AJGZDvGk+4W643J3lvuQKAxWzDzn+dQGhUEOatTBvmKMl4teSebDAng2m/CFnhaTjTdh67qvMpyQ4zDhtjfQfp6enuFjEhQ40xhiONhfiu8QQSZKpLY67ekysA7N5WhPwPzmDN0wuQNn1gwx+EXIuPXzmK43sq8D+vrsB5bglOthRDLU/A0vglXucJkMHpK+fQVEZC+okxhoP1x/Bd4wmo5Qm9jrl2a2vowrfbz2FCbiwmTosdxkgJARbdmQkuj4s9b5/GvNhZmB41BeUdVfiichfsTtpScThQgiWkHxhj+KbuMI43n0JqSDKWxS/psc71Sl9sKgQA3PjjqR6z5QkZDiEKKWYsS8GZwzWoPNuMvOhpmB0zHVW6WnxSsRNWWsLjc5RgCbkKxhj21n6LopYzSAtNwdL4RVdNrucL6nC+oA7zVqYhPEY2TJES4mnRnZmQhUrwwd8Pw6i3YFrkZCxQ5kGjb8D2ih0w2y3+DnFMowRLSB8cTgd21+TjTNt5ZIZNxPVxC3tsf3glk8GKz94oQHB4IObfnjFMkRLSU6AsAKt+OQudrQb899VjYIwhJyIL18XNR5OhGR9c+AQdlk5/hzlmUYIlpBd2px07qr7GufYLmByRicVXbNzvDWMM2185Cm2THrf+bDpEAYJhipYQ71JyojFvZTrOHKrB8T0VAICMsIm4MfF6dFn1eK/sv9Do6/0c5dhECZYQL6wOKz6p2ImLndWYGTUV82Lz+jWOevCTczhzuAYLbs+kiU1kxLhudTZikkPx2RuFaKnTAQCS5Ym4PeUW8Dk8/Ld8B0raSv0c5dhDCZaQK5jsJnxc/gU0+gbMj83DzOjcfiXXyrPN+GprEZInRWHJPZOGIVJC+ofP5+HOx+YAAN7760HY7a7tExWScNw5YSXCxWHYXbMfB+uP0a5PQ4gSLCGX0VsN+PDCZ2g2tuD6uAWYrMjq13VdHSa898JBSOUB+OFjs+lWdGTEiYiV4eYHc1Ff0Y6vt51yH5cKArEq5SakyBNR2FSEHVW7YXPY/Bjp2EG/BQi5pMPSiQ8ufIJOiw7LE69DetiEfl3ncDjx/l8PQd9hxp2/noMgudjHkRIyOFOXJCNzdhy+3V6CC0UN7uMCrgDLE67D9MjJKO+owgcXPqXJT0OAEiwhAJqNrfjgwqcw2c24JXkZUuRJ/b52z9unUXG6EUvvy0FihsKHURJybTgcDm57aAaCwwPx0UtHoO80e5zLi5mOpfGLoLV04N3S7bjYWe3HaEc/SrBk3Kvp0uCj8s/gZE6sVN+IuKD+b2l4vqAO+z88g4xZKsy5lfYaJiOfRCrCHY/moUtrwtZn82HUe66FnRiagjtTb4OYH4DPLn6FIw0FtIfxIFGCJeNaqbYcn1Z8iQCeCD9MuRXRgZH9vrahUov3/34IYdFB+MH/zKLdmsiokZQZiVW/mIX6inZsfnpfjyQbLg7DXRNWIlEWh2ONJ/DZxa9gspt7eTbSG0qwZNw62VyML6v2IiRAjjtSb0VIgLzf15afasQbv9kNLpeDe56YB3Gg0HeBEuIDUxYl4fZfupLsv57aC2OXZ5IV8US4OWkpZkXnolpXi3dLP0azscVP0Y5OlGDJuNO9af83dYehlEbj9pSbIRUE9vv6om8qsfXZfEiCRHjwhesRnRDiw2gJ8Z3JC11JtuGi1muS5XA4mBE1FbckL4fVacP7Fz7BqZaztJSnnyjBknHF4XTg65r9KGwqQoo8Cbcmr4CIJ+rXtYwxfLu9BO//7RAi44Kx/q/XQ6EM9nHEhPjW5IVJuP2RPDRUek+yAJAgU+HuCT9AhDgc+ZqD2Fn1NSwO2sf4aijBknHDZDfjvxU7UNJehuyIDCxLWNzv+2IyxrDj/47jyy0noM6Jxo//tASyUImPIyZkeExekIg7Hu07ycqEQbhdfTOmKrJxoaMSb5//GI2GZj9EO3pQgiXjgtbciffLPkHdpd2ZFsTOvuqm/d1sVjvefeEgDn12HpMXJuLeZxYgQEJjrmRsyZn/fZL952O7UH+xvUcZHpeHubEzcWvyMticNnx44VOcaD5FXca94LAx9pXp6+7yZHzS6OvxReVuOJwOLEtYgqTg+H5d53Q6cTK/El+/dRqdrQbMX5WBG9bk0GxhMqaVHKvFhy8dgd3qwIoHpmLGshSv3/N6qwFfVu9Fnb4BibI4XBe3ABLB+Ntkpa+cQwmWjGklbaXYW/stJAIxbk5aighx+FWvYYyhtLAeX/37JJqqOxAeI8MN9+YgMy9uGCImxP+0zXq8+8JB1Ja2IjMvDisfnul1pryTOXGs8Ti+azyBAH4AlqjmIVme6IeI/YcSLBl3GGM43PAdCpqKECmJwE1JN/RrpnBNaSu+2noSlWeaIJWLseTuLEy9Lhl8fv/GagkZK+x2B/a8fRrffHQWIQop7vz1HMRN8P4Har2+Ebtr8tFh0SE9NBXzlXn9njw42lGCJeOK0WbCV9V7UdNVB7U8ETfEL4SA2/t9Wbs6TCg5UovigzWoON0IkViA+asykHfzBLqfKxn3So/X48OXDsOkt+L61dmYc2ua15tZ2Bw2HKg/itOtJQgSBuL6uIVQBY39WzZSgiXjRm1XPb6q3gujzYhZ0dMwLXKy1/GjjlaDK6keqkF1SQsYYwgMDsDkhYmYvyoD0uAAP0RPyMikazfig78fRsXpRkTGy3Hz+mlIyvS+61mVrhZf1+yHwWZETkQmZsdM7/MP3NGOEiwZ85zMiYKmkzjaUAiJQIJlCYuhlMa4z9usdtScb0XFqUZcONkAzYU2AEBweCAyZqmQkadCQnoEuFyaWE+IN4wxHN9Tga+2FsGgMyN7XgKWrZ2C4LCey9XMdgvyNQdRqi2HTCjF/Ng8JAUnjMkJgpRgyZhmtBnxVfU+1HTVIUGmwvVxCyHmB6Cuoh3lRY2oONWI6pIW2Kx2AIBCFYwJubHInB0HVWrYmPyhJ8RXjHoL9rx9Gkd3lEEg4mPRnZmYfctEr/MUKjqr8I3mEHRWPRJkKsyPnY2QgLG1OQslWDImMcZwUVeNfbXfwmg3Y3JgDoI04bhwsgFlJxpguHQrLlmYBOqcKKizo5CcHUUbRBAyBOovtuOz1wtQfa4F4bEyXPejbGTNjuvxB6vNaUNhUxEKm4oAAFMjczAtMmfMdBtTgiVjjtbcgfyaQzhbXAlzOQ+y2gh01ljAGINAyEfSpEikTolGypQYhMcEUSuVEB9gjKFofyW++ncRdG1GKFTBWHRnFrLmxPUYbumwdGK/5hCqdLWQCaWYEzMDanlSvzd8GakowZIxo6W5A5/vPYDjR0vRWWqD1CGDXCRDZJwcKVNiMCE3BgnpERAI+f4OlZBxw25zoPDrCuz/8Cw6Ww1QqIKx8IeZmDQ33iPRdvc6dXcbh4iCMS1qMibI1eD1c9vSkYYSLBmVGGPobDWi5nwLqs+1oLCgFBcuaOBwOhEcFIjpM9KQNT0RqVOiEaKQ+jtcQsY9u82B43tcibajxYDwWBnm3DIRk+YleGxUYXc6cK69FAVNJ6Gz6iETBmFaZA7SQif0e3/wkYIS7Dhmc9hgsBthddhgdVphdVhhddhgcVjB4ISYL4aEL3b/G8AX+aXLhjEGg86C5tpO1F1oQ835VtScb4W2TQ+91QC9XQ9+lBOxk+RYumAmZuRm0uYPhIxQdrsDJ/ZexP4Pz0LbpIdAyEfW3DhMu16N+LQI95CNw+lAqbYcBU0nobV0QiqQYLJiEiaEqAd0C0l/ogQ7DtgcNrSZtWg3a9Fm1qLN3I52sxY6q35Az8MBIBaIESqSI1wchnBxKMIDwhAWEAIB79omJXQn0Y4WAzqaDWjR6NBap0NLnQ4tGh3MBuv3ZUUO8JQ22KIMkCRwoUwJRW7cJGSFpY/ariRCxhvGGMpPNaJgVzlKjmrgsDsQHivD9BvUmDQvwb3Ex8mcKO+oxHdNJ9BqagcHgDIoBqlyNdTyRIj5I3ddut8SbH5+PjZs2ACr1Yp58+bhzTffBJ/P73eZX//619i+fTu4XC7++Mc/YtWqVVd9zfGQYC0OC5qNrWg2taLZ2IoWUyu05g5c/kYGCQMRFhCK0IAQBAmkEPGEEPAEEPGEEHKFEPIE4IALs8MEo80Eo931YbKbobcZ0GZqR4el0/2cHADBIhnCxaEICwh1Jd+AUASLZO4Wr93uQFe7CdpmAzpbDNA2G9DRYkRHs/7SMaN7qUw3YYAAYdFSBMeIIQhnYKFWtAc3wx5igoDHR4o8CRlhExEbGE0TlQgZxfSdZpzMr0Th7nI013YCcC2ZU+dEI2VyNBIzFRAG8NFobEKptgJlHRUw2kzgcjiID1IhNSQZsdJoBAmkI+p3gV8SrMPhQEpKCj7//HNkZGTgjjvuwLJly3D//ff3q8zu3bvx/PPPY9++fWhqasLMmTNRUlKCoKCgPl93LCVYk92EdnMHtJYO17/mDrRbtOi0dLnLCHkCRIjDoRCHu5NfSIAcIt61307N7rSjzaxFq6kNLcY2NLS2or6xBbpWEyxaJyxaB+wdALdLAEcnF7YOJ7gcHvhcHngc14dQyEdQuBhBYQGQhosQFCGCJFSIgFAeHHIL9AGdaDG3wWgzuV83QhyGzLA0TAxVj5v9TAkZLxhjqCltxfnv6lBe1IC68nYwxsDlcRE3IRyJmQpEqIIRFiOFVW5ApbkK5R2VsDhcPVwSgRhREgUiJRGX/lUggO+/3xN95RyfTbUsKCiAUqlERkYGAGDdunV49dVXPRJsX2W2b9+O++67D3w+H7GxsZgzZw52796NH/zgB74K2cOxry7ApLciQCKASCKASMxHgEQIkUQAYQAffAEXPD4XfAEPvEuf83hcj7+sGGNwMieccMLudMDmtMHmtMPmsMHO7LA77TDbLTDajTDYTDDaja6WpM2ELpseZrvnTY+DhIEIEcmRIk+CQhyOCHEE5CJZn3/NMcbgdDLYbQ44bE7Xv3Yn7DYnbBY7zEYbLEabx79mgxX6DjO6tCboO8zQa83Qd5rhdDgBBMDhFF4az7WBI3aCBTvAibJBPMEJYYgDolAuRCFcCEN5EEg54HCMcADovPThZgOCOIHuH5YIcTgUkvBRM/ZCCBk4DoeD+IkRiJ8YgRvW5MDYZcHF4iZcONmAilONyP/gjEd5WagEoTGxCApzwioyQy8w4BS/CjbhBfADOeCLOZBIAhAkCkSQOBAyiRRBAVIES6SQCMQQcAWuD54AAi7/0mM+eByez1vCPkuwGo0GKpXK/TguLg4ajabfZTQajUcy9Xa9L7319i601Vxt/JJd9v9LuACHA4DDXP2qHIDDvfQmdv/T/Z5e8d5yOVzwuXx3C1DIFXp06eo5XNQzE86iFkAtuvseujshmNOVTMEAp5PB6XAO+kbIwgABgkICIJUHIG5iOKRy1+fB4RIERwRCHhGI4HAJhKLvv4UcTgeMdhMMNuOlPxqMsDisl+rjqhf/0je2gMtHWEDouLx/JCHke5IgETLz4ty3gzTozGit60JL3aU5GpfmarSd18Nhd1y6Sgq70wGLwwKLwwq7swt2poXD6YCdOdy/G/vKn//++jGIhL7d7MKniwWvbM0NtEx/rt+4cSM2btzofqzVagcV65VW/n4KtLpO2ExO2E0O2MwMdrMDNpMTDosTTjsDczA47QxOO1z/OhjgBMA44DAOGAM4ToAxgAsueFwuuOCBy+Gi+z8+15VIBTwBeFfO3u3lm6P763L5Nw+HwwE4AJfLBZfHAYfDAYfLAZfLAZfHAV/Ac7W6L/3b/Tgg0NUq726pu1vsg7iLDI/LQ5BQiiAhLZkhhAxOoCwAgbIAxKdFeBxnjMFqtsPYZYFJb4Wxy+r+3Gaxw2F3unvnzBYz9BYTbHYbHE4HHOzSh9MBB3PCwZzge7kj0FDzWYJVqVSoqalxP9ZoNFAqlf0u4+3cjBkzerzOhg0bsGHDBvfj9PT0IYl/YVLekDwPIYSQa8fhcCASCyASCxCi8Hc0/eOzFJ6bm4u6ujr34O/mzZuxcuXKfpdZuXIl/v3vf8PhcKC+vh4HDx7E9ddf76twCSGEkCHlswTL4/GwadMmrFq1Cmq1GhKJBKtXr0ZhYSGWL1/eZxkAuO666zBjxgxMmDAB8+fPx9///verziAmhBBCRgraaIIQQggZpL5yzui+jQEhhBAyQlGCJYQQQnyAEiwhhBDiA5RgCSGEEB+gBEsIIYT4ACVYQgghxAcowRJCCCE+QAmWEEII8YExt9GETCbrsefxYGm1WoSEhAzJc40247Xu47XewPit+3itNzB+6z6U9dZoNNDpdF7PjbkEO5TG865Q47Xu47XewPit+3itNzB+6z5c9aYuYkIIIcQHKMESQgghPkAJtg+X32d2vBmvdR+v9QbGb93Ha72B8Vv34ao3jcESQgghPkAtWEIIIcQHKMESQgghPjDuEqzNZkN2djaWLFniPtbZ2Ykbb7wRKSkpmDp1Ks6ePes+l5+fj/T0dKjVaqxduxZ2u9197te//jXUajVSU1Px0UcfuY/X1tZi7ty5SE1Nxfz581FfXz88letFZWUlpkyZgpycHGRkZODpp592nxvLdf/666+Rm5uLzMxM5OTkeMQ5lusNAHq9Htdddx3kcrnH9zow9uveX33VdbT4+c9/DqVSCT6f73F8MO/Ve++9h9TUVCQnJ+OJJ55wH7fZbLjvvvugVquRkZGBb7/91vcVu4ra2losXrwYaWlpyMzMxFNPPeU+N6LqzsaZ559/nv3oRz9iixcvdh/77W9/y377298yxhjbsWMHmzdvHmOMMbvdzhITE9mZM2cYY4zdfvvtbPPmzYwxxnbt2sXmzp3LbDYb02g0TKlUMp1Oxxhj7K677mJvvPEGY4yxjRs3sjVr1gxb/bwxm83MZDIxxhizWq1s+vTpbP/+/YyxsV33EydOsNraWsYYY/X19SwqKoo1NzczxsZ2vRlzvef79u1jn3/+ucf3OmNjv+790VddR5MDBw6wxsZGxuPx3McG815ptVqmVCpZfX09s9lsbNasWWzfvn2MMcbeeOMNdtdddzHGGDt16hRLTk5mDodjOKvZQ319PSsoKGCMMWaxWNi8efPYp59+OuLqPq4S7Pnz59n111/P9u3b5/FLZ8KECayiosL9OCYmhrW0tLAjR46wuXPnuo9/9dVX7MYbb2SMMfbggw+yf/3rX+5zd955J/voo4+Y0+lkwcHB7oSm1+uZXC73ddX6rauri+Xk5LgT7Hiqe2ZmJjt9+jRjbPzUOz8/v0eCHS9170tfdR2NLk+wg3mv3n33XbZ69Wr3Na+//jp76KGHGGOM3XDDDWzv3r3uczNnzmSFhYU+rc9APfTQQ+yVV14ZcXUfN13EjDH87Gc/w8svvwwOh+Nxrq6uDiqVyv1YqVSirq4OGo3G43hcXBw0Gg0A9Hqura0NgYGBCAgIAAAEBgZCKBSis7PTl9W7qubmZmRnZ0OhUGDRokWYP38+gPFRdwA4ePAgDAYDJk6cCGD81Nub8Vz3bn3VdbQbzHs1mPd+pGhra8Mnn3yCJUuWjLi6869eZPSYNWsWGhoaehxftWoVkpOTMXv2bEycOBGNjY19Pg+7bOXS5cmYXbGiqbdzVybwK6/zhb7q/re//Q0KhQKnTp1CZ2cn7rrrLnz77beYN29ej/Kjre5XqzcAVFdXY82aNXjrrbcgEAi8Ps9oqzfQv7r3x2is+1Doq66j3WDeq8G89/5msViwatUqPPLII0hLSwMwsuo+phLskSNHej13zz334MCBA/jPf/4Ds9mMzs5O3HDDDdi1axeUSiVqa2uRlJQEwPUXfmxsLMxmM2pqatzPodFo3DcSUKlUPc7NmDEDYWFh0Ov1MJvNCAgIgNFohM1mQ3BwsI9q7dJX3S8XHByMW265BR988AHmzZs36ut+tXo3Nzdj+fLleOmll5CXl+c+PtrrDfT/Pb/SWKj7tfJWn6G6SYi/Dea9UqlUOH36tMc1V773arW6xzl/cjgcuOeee5Cbm4tf/vKXAEZg3fvdmTyGXDku9cQTT7AnnniCMcbYzp07PSZ9JCUlsbNnzzLGGPvhD3/ongixe/duNm/ePGa321ldXR1TqVTuwfS7776bvfnmm4wxxl577TW/T/qorq5mBoOBMeaa/HLjjTeyf/7zn4yxsV33jo4ONnnyZLZly5Ye58ZyvS/nbQx2vNS9L33VdTS6fAx2MO9VR0cHU6lUrKGhgdlsNjZ79mz3RJ8333yT3XPPPYwxxoqLi5larfb7JCfGGFu7di27//77mdPpdB8baXWnBMtcX+AVK1YwtVrNJk+e7J5ZyBhje/fuZWlpaSw5OZndf//9zGazuc899thjLDk5manVavbBBx+4j9fU1LA5c+awlJQUNnfuXKbRaIanYr344osvWGZmJps0aRLLyMhgv/71r93fJGO57s8//zwLCAhg2dnZ7o9Dhw4xxsZ2vbtlZWWx8PBwJhKJWGxsrPsPjfFQ9/7oq66jxU9+8hMWGxvLALDY2Fj2k5/8hDE2uPfq3XffZWq1miUlJbHHH3/cfdxqtbI1a9aw5ORklpaW5p4g6U8HDx5kAFhmZqb7Z/vll19mjI2sutNWiYQQQogPjJtZxIQQQshwogRLCCGE+AAlWEIIIcQHKMESQgghPkAJlhBCCPEBSrCEXAWHw0FOTg4yMzORlpaGX/3qV+jq6nKfz83NdX/+6quvIi0tzX0Hm9WrVyMrKwuPP/74sMc9EL/73e+wc+dOn77G/v37e9zZ51rYbDbk5eXBaDR6HH/22Wc9Hr/zzjv4wx/+MGSvS0h/0TIdQq6Cz+e7b2Wm0+nw4x//GG1tbdizZ0+Psmlpadi+fTvS0tLQ1NSE7Ozsq27NeSWHwwEejzcksY8k+/fvx/PPP+/16zYYmzdvRnV1NX7/+98DALZu3YqXXnoJjY2NUKvV2LRpE9LT0+F0OpGZmYnvvvsOUql0SF6bkP6gFiwhAyCTyfDmm2/iyJEj7u3Vuu/Fef/996OiogKrVq3CY489hoULF0Kr1brvRWsymbB+/XpMnz4dWVlZePXVVwEAVVVVSEpKwiOPPIIZM2bg0KFD2L9/P+bMmYOpU6fiuuuuQ21tLQDgvvvuw89//nPMmzcPiYmJ2Lhxozu2ffv2Yfr06cjOzsa0adPQ0tICAPjf//1f9/EHHngANputR73uu+8+vPXWW1d9jW579+7F0qVL3Y9bWloQGxsLu92OLVu2YPr06Zg8eTIWLFiAysrKHtdv3boVDzzwgPvxAw88gK1btwIA2tvbceedd7pjvvyenlc+xx133AHAdf/bRx55BJ999hl++tOfYvv27YiIiAAAcLlcLF68GNu3b/f6PIT4zDVspkHIuHD5NnTdJk2axN57770e5+Pj4933oK2srGTJycnuc08//TR7/fXXGWOMmUwmNmXKFHb27FlWWVnJALA9e/Ywxhhra2tjM2fOZB0dHYwxxt577z12xx13MMYYu/fee9mKFSuY3W5nGo2GBQcHM6vVylpaWlhMTAwrKSlhjLluS2g2m9nevXvZPffc496566c//Sl77bXXetTn3nvvZdu2bevzNS7ncDhYXFwca2xsZIwx9r//+7/s5z//OWOMsdbWVne5jz/+mN15552MMc8d1LZs2cLWrVvnLrdu3Tr3TlOrV69mX331FWOMsfb2dpacnMza2to8Xt9qtTK5XO7eJs9gMLDQ0FBWXFzMnnnmmR71+89//sMeeOCBHscJ8aUxtdk/IcPpyrtzXM3OnTthMpnwz3/+E4Cru7m0tBSTJ09GZGQkFi9eDAA4fPgwysrK3LcUdDqdCAoKcj/PbbfdBh6Ph9jYWISEhKCpqQlFRUWYOXOm+44i3V2hO3fuxIEDBzBlyhQAgNlsRmBg4FVj9fYal29yzuVycfvtt+P999/Hww8/jLfffhv/+Mc/AAClpaV48skn0draCofDAS53YB1lX375JU6fPo3f/OY3AFxjrRcvXkRoaKi7TGtrK2Qymfs9kEgk+M9//oMHH3wQFy5cQENDA/7f//t/CA8PBwBERUWhvr5+QHEQcq0owRIyQDqdDhUVFUhPTx/QdYwxvP3228jJyfE4XlVV5TE2yBjD3Llz8cknn3h9HpFI5P6cx+PBbrf3ehstxhh++ctf4he/+MWAYvX2Gle655578NOf/hQ33ngj2traMGPGDPfxd955B7NmzUJxcTFuu+22Htfy+Xw4nU73Y4vF4v7c6XRi//79kMvlvcYnFos9rgGAFStWYMWKFXjsscdgt9vxm9/8Bv/6178AACaTCWKxuH+VJ2SI0BgsIQPQ1dWF9evXIy8vD5mZmQO6dtmyZXj55ZfhcDgAAOXl5R6zkbvNmjUL3333Hc6cOQMAsNvtKC4u7vO5Z82ahaNHj+LcuXMAXGOSFosFy5Ytw5YtW6DVagEAHR0dXsdEB2Py5MnQ6/V47rnncPfdd7uP63Q6xMbGAgDefPNNr9cmJibi1KlTcDgcaG9vx/79+93nli1bhhdffNH9uKioqMcfEHK5HAKBwH1jd71ej+rqagCum2nn5ORAp9O5y5eWlg74/SLkWlELlpCrcDgcyMnJgd1uh8PhwI033thr4ujLU089hcceewzZ2dngcDgICwvzOoEnPDwc7777Lh544AGYTCbY7Xb87Gc/Q1ZWVq/PHR4ejm3btmH16tWw2WwQiUTYuXMnlixZgvXr17u7m/l8Pl5++WUkJiYOOH5v7r77bjz55JMoKytzH/vrX/+K+fPnQ6VSYdGiRV6vmz17NjIzM91Ln7q7sAHglVdewcMPP4ysrCw4nU6oVCrs3LmzR5f8jTfeiH379uG2226DzWbDT37yE5hMJlRWViI6OhqbN292l92zZw/++Mc/DkmdCekvWqZDCBmVzp49i8cffxyff/65x/Fnn33WYy1sdXU17rvvPuTn5w9zhGS8oy5iQsiolJGRgVWrVvXYaGLBggUej2tra/HKK68MY2SEuFALlhBCCPEBasESQgghPkAJlhBCCPEBSrCEEEKID1CCJYQQQnyAEiwhhBDiA5RgCSGEEB/4/6clmQCWTCU3AAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "kde_diff1.plot(label='Diff 1', color='C8')\n", "kde_diff2.plot(label='Diff 2', color='C4')\n", "\n", "decorate(xlabel='Difference in value ($)',\n", " ylabel='PMF',\n", " title='Difference between bid and actual value')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It looks like the bids are too low more often than too high, which makes sense. Remember that under the rules of the game, you lose if you overbid, so contestants probably underbid to some degree deliberately.\n", "\n", "For example, if they guess that the value of the showcase is \\\\$40,000, they might bid \\\\$36,000 to avoid going over." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It looks like these distributions are well modeled by a normal distribution, so we can summarize them with their mean and standard deviation.\n", "\n", "For example, here is the mean and standard deviation of `Diff` for Player 1." ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.209840Z", "iopub.status.busy": "2021-04-16T19:35:43.209325Z", "iopub.status.idle": "2021-04-16T19:35:43.211530Z", "shell.execute_reply": "2021-04-16T19:35:43.211881Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-4116.3961661341855 6899.909806377117\n" ] } ], "source": [ "mean_diff1 = sample_diff1.mean()\n", "std_diff1 = sample_diff1.std()\n", "\n", "print(mean_diff1, std_diff1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can use these differences to model the contestant's distribution of errors.\n", "This step is a little tricky because we don't actually know the contestant's guesses; we only know what they bid.\n", "\n", "So we have to make some assumptions:\n", "\n", "* I'll assume that contestants underbid because they are being strategic, and that on average their guesses are accurate. In other words, the mean of their errors is 0.\n", "\n", "* But I'll assume that the spread of the differences reflects the actual spread of their errors. So, I'll use the standard deviation of the differences as the standard deviation of their errors.\n", "\n", "Based on these assumptions, I'll make a normal distribution with parameters 0 and `std_diff1`.\n", "\n", "SciPy provides an object called `norm` that represents a normal distribution with the given mean and standard deviation." ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.215986Z", "iopub.status.busy": "2021-04-16T19:35:43.215405Z", "iopub.status.idle": "2021-04-16T19:35:43.217589Z", "shell.execute_reply": "2021-04-16T19:35:43.217195Z" } }, "outputs": [], "source": [ "from scipy.stats import norm\n", "\n", "error_dist1 = norm(0, std_diff1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The result is an object that provides `pdf`, which evaluates the probability density function of the normal distribution.\n", "\n", "For example, here is the probability density of `error=-100`, based on the distribution of errors for Player 1." ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.221442Z", "iopub.status.busy": "2021-04-16T19:35:43.220947Z", "iopub.status.idle": "2021-04-16T19:35:43.223380Z", "shell.execute_reply": "2021-04-16T19:35:43.223743Z" } }, "outputs": [ { "data": { "text/plain": [ "5.781240564008691e-05" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "error = -100\n", "error_dist1.pdf(error)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "By itself, this number doesn't mean very much, because probability densities are not probabilities. But they are proportional to probabilities, so we can use them as likelihoods in a Bayesian update, as we'll see in the next section." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Update\n", "\n", "Suppose you are Player 1. You see the prizes in your showcase and your guess for the total price is \\\\$23,000.\n", "\n", "From your guess I will subtract away each hypothetical price in the prior distribution; the result is your error under each hypothesis." ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.226913Z", "iopub.status.busy": "2021-04-16T19:35:43.226469Z", "iopub.status.idle": "2021-04-16T19:35:43.228074Z", "shell.execute_reply": "2021-04-16T19:35:43.228429Z" } }, "outputs": [], "source": [ "guess1 = 23000\n", "error1 = guess1 - prior1.qs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now suppose we know, based on past performance, that your estimation error is well modeled by `error_dist1`.\n", "Under that assumption we can compute the likelihood of your error under each hypothesis." ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.231953Z", "iopub.status.busy": "2021-04-16T19:35:43.231397Z", "iopub.status.idle": "2021-04-16T19:35:43.233519Z", "shell.execute_reply": "2021-04-16T19:35:43.233990Z" } }, "outputs": [], "source": [ "likelihood1 = error_dist1.pdf(error1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The result is an array of likelihoods, which we can use to update the prior." ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.239353Z", "iopub.status.busy": "2021-04-16T19:35:43.238671Z", "iopub.status.idle": "2021-04-16T19:35:43.241477Z", "shell.execute_reply": "2021-04-16T19:35:43.241931Z" }, "tags": [ "hide-output" ] }, "outputs": [ { "data": { "text/plain": [ "3.3889812097254624e-05" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "posterior1 = prior1 * likelihood1\n", "posterior1.normalize()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what the posterior distribution looks like:" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.288160Z", "iopub.status.busy": "2021-04-16T19:35:43.287654Z", "iopub.status.idle": "2021-04-16T19:35:43.431834Z", "shell.execute_reply": "2021-04-16T19:35:43.432442Z" }, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAABa+UlEQVR4nO3deXhU1fkH8O+dNZnMPtn3kBAhCSRgZBNZpRapqIhaZREBFYvWqj9tq1ao1traat1wo0UUccPi0tatFhBRQRZZwyKQkH2bzJrZZ87vjziXhCwkkDtL8n6eJw/MzJ173xmG+eace+45HGOMgRBCCCH9ShTuAgghhJCBiAKWEEIIEQAFLCGEECIAClhCCCFEABSwhBBCiAAoYAkhhBABUMAOMH/84x9xww03hLuMbpnNZnAch4qKinCXck4KCwvx73//W7D9n/n+LFu2DL/+9a/7bf/t91dRUQGO42A2m/tt/+H8/DU1NWHatGlQq9W49tpr+/Tc7OxsfPDBB8IUNoBwHIe9e/eGu4yoIQl3AaRnU6ZMwbfffgupVAqpVIqRI0fir3/9Ky666KIut3/ggQdCXGF0WLRoEbRaLZ5++unz2s+hQ4f6p6Beeumll3q1XW9fX2/31xtr167F008/3eELN5yfv1deeQVisRhmsxkiEbUdSPjRpzAK/PnPf4bdbkddXR1Gjx6Nq666qsvtfD7feR3nfJ8/kPn9fpzvnCzhfn/DfXyhlZeXo7CwkMKVRAz6JEaRmJgYLFmyBLW1tTAajVi0aBGWLFmC6667Dmq1Gi+++CJWrlzZIYCPHz+Oyy67DHq9Hrm5uR1aOGvXrkVJSQlWrFiB5ORkXH/99Z2OabfbceWVVyIxMREajQaTJk3Cvn37+MdXrlyJK664AnfccQe0Wi0yMzPxzjvv8I+73W7cfvvt0Ov1yMnJwXvvvdfja1y0aBEWL16Mq6++GkqlEiNHjsS2bdv4x202G2699VakpKQgJSUFy5YtQ2trK3+sxYsXIz4+HhqNBkVFRdi5cyeeffZZrF+/Hi+88AKUSiUKCwsBAF6vFw8//DByc3NhMBgwe/Zs1NbW8sfiOA7PP/88ioqKoFAoYLfbO3UlvvHGGxg+fDi0Wi0mTpyI77//nn9sypQpuP/++/GTn/wEcXFx+OSTTzq93rO9P4sWLcKvfvWrc3p9XR2//f6CNmzYgOzsbBgMBvziF7+Ax+MBcPrz0V5JSQnWrl2L77//HsuWLcOBAwegVCqhVCpRWVl5Tp+/Rx99FImJiUhKSuqxBc4Yw5NPPonc3Fzo9Xr89Kc/xcmTJwEA1157LV577TX+PfjHP/7R6fnl5eW49NJLodFooNfrcfHFF8PhcPCPHzt2DOPGjYNKpcLkyZNRVVXVq9cxbNgwfPrppwCAAwcOgOM4vqfAYrFAKpWiubkZAPDDDz9g9uzZSEhIgF6vx5w5c/j9zJ8/H6mpqVCr1bjwwguxefPmXtVut9txxx13IDMzE4mJiVi4cCEsFkuX7+Hs2bPxyCOPdLjv9ttvx7JlywAA69evR1FREVQqFTIzM/G73/2u218sz/wsnXl6gzGGZ599FsOGDYNWq8WUKVNw+PDhLvc1YDES0SZPnsz+9re/McYYa21tZXfddRfLyspijDF20003sdjYWPbpp58yv9/PWltb2YoVK9iVV17JGGPM6/WyCy64gN13333M6XSyffv2sZSUFLZ+/XrGGGOvvvoqE4vF7JFHHmFut5u1trZ2Or7FYmFvv/02s9vtzOl0sl/+8pcsPz+fBQIBxhhjK1asYFKplL355pvM5/Ox1157jSmVSma1WhljjP3ud79jxcXFrKamhplMJjZz5kwGgJWXl3f5em+66SYmk8nYRx99xLxeL3vxxReZTqdjJpOJMcbYzTffzKZOncqam5tZU1MTmzx5MrvlllsYY4y9/PLLbPTo0cxkMrFAIMCOHj3KKisr+f3eddddHY513333sWnTprHa2lrmdrvZvffeyy655BL+cQBs/PjxrKamhrlcLub3+1lWVhZ7//33GWOMbd26lSmVSvbll18yj8fD/va3v7GEhARmNpv5f7uEhAS2Y8cOFggEmMPh6PR6z/b+tK+7r6+vq+O33668vJwBYDNnzmQmk4nV1NSw4uJitnLlSv7zUVxc3GGfxcXF7NVXX+328b5+/iQSCXviiSeYx+NhmzdvZmKxmB0/frzT+8QYY6+99hpLTU1l+/fvZ06nk91zzz1s+PDhzOv1dvsetHfDDTew2267jXk8HubxeNjXX3/N3G43Y4yxrKwsVlhYyE6cOMGcTiebOXMmu+mmm3r1Om6//XZ2//33M8YYe/rpp1lubi677rrrGGOMffDBB2zkyJGMMcbsdjvLzMxkv/3tb5ndbmdut5tt2rSJr2/NmjXMbDYzj8fDnnjiCabX6/n/Rz3Vfu2117IbbriBmUwmZrfb2c9//nM2f/78Lt+DDRs2sLy8PP622+1mer2ebdu2jTHG2Mcff8yOHj3KAoEA+/7771liYiJ74403+O0BsO+//77L99tkMnX47K5atYqNHDmSHTt2jHm9XvbMM8+w3Nxcvu7BgAI2wk2ePJnFxMQwjUbDkpKS2GWXXcb27dvHGGv7gAe/zILaf8Ft27aNqdXqDh/oxx57jM2YMYMx1vYFp9frmd/v73U9wf9E1dXV/PHGjh3LPx4IBJhMJmO7du1ijDE2ZMgQ9s477/CPb9++/awBO3PmzA73DRs2jK1bt475/X4ml8vZ9u3b+ce+/vprJpfLmd/vZ2vWrGFDhw5l33zzTafXdOaXQSAQYHFxcWzv3r38fU6nk4lEIj60APBhGtQ+YJcuXcqWLVvW4fH8/Hz+i3fy5Mk9fuEzdvb3p33dfXl93R2/q4DdsWMH//jbb7/NcnNzGWPnH7C9+fwlJSV1eH5eXh577733WFcuvfRS9qc//Ym/7XK5mEqlYl9//XW370F7CxcuZLNnz2bHjh3r9FhWVhZ78cUX+dtvvPEGKyoq6tXrePfdd9lFF13EGGNs9uzZ7LXXXuNf1y9/+Uv2q1/9ijF2+r0N/nJ6Nlqtlg++7mpvbGxkIpGIGY1G/r5jx44xqVTKfD5fp326XC6m0+nYt99+yxhjbOPGjfy/d1fuuusutnTpUv52XwK2oKCAffDBBx32l5qayrZu3Xr2Fz9AUBdxFHj88cdhNptRX1+PTz/9FCNHjuQfy8zM7PZ51dXVSE1NhUwm4+8bMmQIqqur+dtpaWk9nrNyOp34xS9+gezsbKjVamRnZwMA3+UFAMnJyfzfOY5DbGwsbDYbAKC2thZZWVn84+3/3p0zt8nKykJNTQ2amprgdrv5GoKvx+12o7m5GQsWLMCiRYuwbNkyxMfHY9GiRR3qbK+5uRmtra2YNGkStFottFotkpOTIZPJOnQNnu39bV8LAOTk5HR4f3t6PtC396cvr6+3xz/zmMH3uj/05vPX/rMDAHFxcfxnp6v9tX+/5XI5UlNTO+yvJ3/5y1+QlpaGSy+9FNnZ2Vi5ciUCgUCXtbSv42yvY8qUKfj+++9hMpnwzTff4Oqrr0ZycjIOHTqETZs2Ydq0aQCAU6dOITc3FxzHdaotEAjgwQcfxNChQ6FWq6HVamGxWPh/3+5qr6ioQCAQwJAhQ/jP8UUXXQSRSIT6+vpOx5HL5bjuuuvw+uuvAwBef/11LFiwgH/8s88+w4QJE/jTEC+99NJZP2PdqaiowPz58/m6tFotTCZTr/+9BgIK2CjXUzimp6ejtrYWXq+Xv6+8vBzp6em9ej4APPnkk9i9eze2bdsGq9Xa4fxKb6SmpuLUqVP87crKyrM+p/32weekpaUhISEBMpmswyU+5eXlkMvliI+Ph0QiwQMPPIB9+/bh8OHDqKysxO9///suX6fBYIBCocCOHTtgNpv5H6fTiQkTJvDbne39PfNyo4qKij69v315f/ry+np7fACdjp+WlgYAUCqVHc5RAujwpX22fffm89cXZ77fHo8HtbW1vd5fYmIiXnjhBZw6dQr//ve/8dJLL+H999/v1XF7eh0JCQkYNmwYnn76aeTl5UGlUmHatGl45513cOTIEUyaNAlA2y8vJ06c6PL/zptvvok333wT//nPf2CxWGA2m6HRaPhtu6s9IyMDIpEItbW1HT7HLpeL/3c804IFC/DOO++gvr4en3zyCebPn8+/n3PmzMFtt92GmpoaWCwWLFu2rNv/62d+Purq6jo8npGRgQ0bNnSoy+FwRPRlhP2NAnYAGzNmDJKSkvDwww/D7Xbj4MGDeP7553HTTTf1eh9WqxUxMTHQ6XSw2+19vgzjhhtuwJ/+9Cf+C+DMARZd2bRpE/7zn//A5/Nh9erVqKurw6xZsyASiXDjjTfiwQcfREtLC4xGIx588EEsWLAAIpEImzZtwt69e+Hz+RAXF4eYmBhIJG1XoiUlJfEDYoC2cFi2bBnuvfdevsVqNBo7DNA6m/nz52P9+vX4+uuv4fP58Nxzz8FoNOLyyy8X5P3py+vri0ceeQRmsxm1tbV4/PHHMW/ePABtA5pOnjyJr776Cj6fD0888QSMRiP/vKSkJNTV1cHpdHa53/74/LU3f/58PP/88ygrK4Pb7cZDDz2EtLQ0jBkzplfPf/fdd1FZWQnGGDQaDcRiMf/+9aQ3r2Pq1Kl4+umnMXXqVADAtGnT8Mwzz2DUqFHQaDQAgFmzZsHtduPhhx9Ga2srPB4PP5DJarVCJpMhPj4eHo8HjzzyCKxW61lrT05OxlVXXYU77riDb2nW19f3+IvDxRdfDJ1Oh0WLFqG0tBS5ubkA2gbRuVwuGAwGyOVy7NixA2+++Wa3+xk9ejQ+++wz1NXVwWaz8b/sBS1fvhwPP/wwjh49yr/GDz/8sNseioGIAnYAk0ql+Pe//43du3cjOTkZs2fPxj333IMbb7yx1/u45557IBaLkZSUhKKiIowfP75PNTz00EMoLS1FUVERSkpKur3EqL0bb7wRq1evhlarxbPPPosPP/wQOp0OAPDMM88gOzsbBQUFKCwsRF5eHp566ikAQENDA2644QZotVrk5ORAo9FgxYoVAIClS5eipqYGOp2O72J//PHHMX78eEybNg0qlQoXXnghPv/8816/tsmTJ+O5557DkiVLYDAY8Pbbb+OTTz6BVqsV5P3p6+vrrSuvvBIlJSUoKirC2LFj+V+i8vLy8MQTT2Du3LlISUmB2+3mRygDbSEybtw4pKWlQavVdmp998fnr72FCxfizjvvxM9+9jMkJydj3759+Ne//tWrkASA3bt3Y8KECVAqlRg/fjyWLFmC2bNnn/V5vXkdU6dOhdVq5buDJ0+eDIfDwd8G2lp8X3zxBXbv3o3MzEykpKRg1apVAICbbroJhYWFyMrKwpAhQxAbG4uMjIxe1b527Vq+a1itVuOSSy7B7t27e3xNCxYswGeffYaFCxfy96lUKqxatQq33nor1Go1HnvssS6vLAiaP38+Jk+ejGHDhqGkpASzZs3q8Pgdd9yBRYsWYc6cOVCr1Rg+fHiPgT0Qcay3fX2EhEB/TQhBCCHhRi1YQgghRAAUsIQQQogAqIuYEEIIEQC1YAkhhBABUMASQgghAhhwy9Wp1epzvpCdEEII6Yvq6uoO1yy3N+ACNj09HWVlZeEugxBCyCBQUFDQ7WPURUwIIYQIgAKWEEIIEcCA6yImhJDBgq6yDJ2uVkE6GwpYQgiJMoFAAFVVVZ1WOyLCUSgU/OpFvUUBSwghUaapqQkcxyE/P79PX/jk3AQCAX5N6qSkpF4/jwKWEEKijMViQVZWFsRicbhLGRSCK4qdOnWqTwFLv/oQQkgUYYzB7/dDKpWGu5RBRSqVwu/39+m8NwUsIYREoXMZdEPO3bm83xSwhBBCzgnHcSgpKUFRUREmT56MEydOdLndSy+9hL///e/ndazvvvsOY8eOhVwuxx/+8Ifz2leo0DlYQggh50QsFmPv3r0AgF//+te499578cEHH3TYxu/3Y9myZX3et9/v73COOTU1FS+88AI2btx4PiWHFLVgyaDhbPXg1OGmcJdByIA0ZcoU/PDDDwCA7OxsPProo5g8eTKeeuoprFy5km91WiwWXH/99RgxYgSKi4vxr3/9CwBQUVGBIUOG4J577sHYsWPx9ddfd9h/eno6Lrzwwqg690wtWDIo+Hx+rF25GZVHmlA6Iw9X3FYKmZw+/iT6HTlyRJDrYRUKBYYNG9arbRlj+OijjzBixAj+Po/Hgy+//BIAsHLlSv7+3//+90hNTcU777yDiooKTJgwAePHjwcAlJeXY9asWXjqqaf674WEEbVgyaCw6a0DqDzShOyCROz673G8cM+naKyyhLssQqKa3+9HSUkJiouLYTQa8eSTT/KPzZs3r8vnbNmyBUuXLgXQ1tIdM2YMvvvuOwBAUlISpk+fLnzhIUK/wpMB7/i+emzZcAgF4zIw/4FJ2P/VKWx8bgeev/sTXPWLMRg9bUi4SyTknPW2lSmE9udgz6RUKru8v6vLXIIjdLt7TrSiFiwZ0OwWF9598muoDQpc88tx4DgOxZOyceczMxGfqsKGv32D/721P9xlEjJoTJ06lR9RXFFRge+++w4XXXRRmKsSBgUsGbAYY9jwt29gN7vw8/suhkIl5x+LT1Xj9r9ehtyRydi68TDcTm8YKyVk8FixYgVqa2sxYsQIXHnllXj55ZcRHx9/1ucdPXoU6enpeOqpp/CXv/wF6enpOHr0aAgqPnfURUwGrG0fHMax3bW4dF4xsgsSOz0ulUkw8erheO33m7FvawXGXDY0DFUSEr18Pl+X91dUVHS43X6Qk0ajwTvvvNPpOdnZ2Th+/Hi3x7rgggtQXV19TnWGC7VgyYBkrLPh09f2YsiIJEy9rrDb7fJHp0ATH4edn3X/H5sQQs4FBSwZkI7tqUXAH8DMxaN7XG1EJBLhosvyUP2DEbUnW0JYISFkoKOAJQNSxaFGxChkSB2iO+u2F146BBzHUSuWENKvKGDJgMMYQ8WhJmQOj+/VWpna+DhcUJqK7zeXw+2iwU6EkP5BAUsGnJYGO6wtDuQUdh7Y1J0xPx0Kt9OLA9sqBayMEDKYUMCSAafiUCMAILsPAZt/YSrUBgW++/QHocoihAwyFLBkwKk41ASJVIz0oYZeP0csFqF0Ri6qjjajrsIkYHWEDBy9Xa6uJxUVFXj99dfP6fgfffQRHnnkkXN6bvvjT5o0CXFxcfwUjv2FApYMOBWHGpFxQTwkUvHZN26ndEYuOI7Drs/7/iVByGAUnCrx4MGDGDduHO69994+7+NcA9bv92P27Nl4+OGH+/y89tRqNf70pz91mEe5v1DAkgHFZnKiudaK7IKEPj9Xl6jE0NEp2LPpJDzuri+gJ4R0rf1ydS+++CKKioowYsQI3HnnnfyEFCtWrEBhYSFGjhyJGTNmAADuvvtu7NixAyUlJfjNb34DANiwYQPGjh2LUaNG4ZprroHFYuGP8eCDD2LKlCn4v//7P6xdu5ZvdXo8Htx+++0oKipCUVFRhwXeJRIJHn/8cVx88cWdJrnQ6/WYMGECYmJi+v09oZmcyIBS/uP515yipHN6/pifDsWx3bUo216Fksk5/VkaIYL457Pb0VBp7vf9JmVqcc0vx/Vq2/bL1e3btw9PPvkkdu7cCY1Ggzlz5uDvf/87rr/+erz11ls4cuQIRCIRTKa2UzF/+9vf8Ic//AFffPEFgLYpEV955RVs3boVcrkcf/7zn/HHP/4Rf/7znwEA1dXV2Lx5MziOw9q1a/kaXnrpJTQ1NWH//v0wm80oLS3F+PHjUVhYCL/fj8TExE5rzAqNWrBkQDlV1gSO45A57Oxzm3Ylf3QKxBIxTh5o7OfKCBl4ulqu7ssvv8TVV18NnU4HkUiERYsWYdOmTVCr1VCr1ViyZAnefvttiMVdn8L573//i4MHD2Ls2LEoKSnB66+/jlOnTvGP33DDDfzqO+1t2bIFN998M0QiEfR6PWbPns2vRwt0v3yekKgFSwaU8oMNSM3VQx4rPafnS2USpObqcKqMApZEh962MoXQ1XJ13S1HJxaL8e2332Lr1q345JNP8Nvf/rbLpe4YY7j++uvx9NNPd3nMc1kGTywWC9IFfDbUgiUDhrPVg/oKc58uz+lKdkEiGqsscNjd/VQZIYPHlClT8P7778NsNiMQCGDt2rWYOnUqbDYbjEYjpk+fjieeeAIxMTGorq6GWq2GzWbjn3/ppZfi/fff5yf2dzgcOHLkyFmPO3XqVLz66qsIBAJoaWnBRx99hEmTJgn2OnuDWrBkwDh1uAmMMeQU9n2AU3vB7uXKI80YVprWH6URMmgUFxfj3nvvxcSJEwG0Be7SpUtRX1+Pa665Bk6nE4FAAFdeeSUKCwvh8/mg0+kwevRozJw5E4899hieeuopzJ49G36/H4wxrFix4qwLyy9btgyHDx/GyJEjAQAPPPAACgu7X+gjyOFwID8/Hw6HA263G59++ilee+01TJ8+/bzfC4511a6OYgUFBSgrKwt3GSQMPn3te3z53iE8+MZcKDXn3h1kMzvxxwX/xNTrivCTBSX9VyAh/YAxhiNHjmDYsGFdnoskwujufe8pc6iLmAwYFYcakZCuOa9wBQCVNhaGFBVOHW7qp8oIIYMRBSwZELweH6p/aEFO0fmdfw3KHBaPqqNG+Hz+s29MCCFdoIAlA0LVMSP8Pv85TTDRlayCRHg9PtSXm/tlf4SQwYcClgwI5Qf7PsF/T7KGtwU1dROTSDXAhs9EvHN5v2kUMRkQKg41QpsQB11i19fI9VVSpgYxcTKcOtyEi2f3PHqRkFDiOA5yuRxGoxEGg4EGOoUAYwxGoxFyubxP7zcFLIl6jDFU/2DEBRem9ts+g7NBnSpru/SHvsRIJMnIyEBVVRWam5vDXcqgIZfLkZGR0afnUMCSqNdqdcPV6kF8mrpf95s1PAHHdtfC3NTaby1jQvqDVCrFkCFDqJs4hM7ll2wKWBL1WurtAABDSv+GYPvzsBSwJBJRz0pkE3SQ0+bNm1FQUIC8vDwsXryYX7KoN9swxvCrX/0KhYWFKCgowO23395pHT9CAKClvm2aNX2yql/3m55vgEgkwqkyGuhECOk7wQLW7/djyZIl2LBhA44fPw673Y5169b1epvNmzdj586d2L9/Pw4cOICDBw/i008/FapcEsWMdW0tWH0/t2DlMVKkDNGh8gid5yKE9J1gAbtz506kp6fzc0EuWbIEGzdu7PU2HMfB5XLB4/HA4/HA7XYjKenc1vgkA1tLvQ2yGOl5z+DUlazhCagrN8Ht9Pb7vgkhA5tgAVtdXd1hxFVmZia/OkJvtpk6dSqmTp2KlJQUpKSk4JJLLkFpaalQ5ZIo1lJnhz5ZKcj5qKzh8WCMofIotWIJIX0j6DnY9l943Y12626bXbt2obKyEnV1dairq8OhQ4ewYcOGTs9ftWoVCgoK+B+TydSPr4BEg5b6toAVQuaPA50qacIJQkgfCRawGRkZqKys5G9XV1cjPT2919usXbsWM2bMQGxsLGJjYzFnzhxs3ry503GWL1+OsrIy/ken0wn0ikgk8rh9sLY4YEjp3wFOQdr4OGgT4lBBA50IIX0kWMCWlpaipqaGX8ZnzZo1mDNnTq+3ycrKwhdffIFAIAC/34///ve/KCgoEKpcEqVMDT8OcBKoBQu0nYetOtqMQCAg2DEIIQOPYAErFouxevVqzJ07F3l5eVAoFFiwYAF27dqFyy+/vMdtgLaWqUQiQVFREUaOHAmNRoPbbrtNqHJJlDLWtV2iI1QLFmi7XMft9KK51ibYMQghA4+gE01Mmzat00K0paWl+Pjjj3vcBgAUCgXWr18vZHlkAAhOMiFkCzYpUwsAaKqyIDFdI9hxCCEDC62mQ6Kasc4OkUgETYJCsGMkZLRNwdhYZRXsGISQgYcClkS1lnobNAkKSCRiwY6hMSggj5Wiqdoi2DEIIQMPBSyJai31dkHPvwJtl5IlpKupBUsI6RMKWBK1AoEATA2tgp5/DUrM0KCxykKrlxBCeo0ClkQtS7MDfp9f8BYsACRkaOB1+2BuahX8WISQgYEClkStUIwgDkqkgU6EkD6igCVRK3gNbKi6iAHQQCdCSK9RwJKodXqhdeG7iHVJSoglYmrBEkJ6jQKWRK2WejviNDGQx0oFP5ZYLEJ8mgqNlWbBj0UIGRgoYEnUMtbZQtI9HJSYoUFTtZVGEhNCeoUClkQlxlhIroFtLzFDA4fNjVarO2THJIRELwpYEpWcdg9crZ4Qt2CDI4lpoBMh5OwoYElUCuUI4qCE4EhiClhCSC9QwJKoFMoRxEHxqSpwHEcjiQkhvUIBS6JSKCeZCJLKJNAnK6mLmBDSKxSwJCoZ62yQyiVQ6WJDetzgnMSEEHI2FLAkKrXU26FPVoLjuJAeNyFDA6vRAZfDE9LjEkKiDwUsiUqhvgY2iOYkJoT0FgUsiTpejw9WowP65NANcAqiOYkJIb1FAUuijqmhbck4Q0roW7AJ6dSCJYT0DgUsiTqnRxCHvgUbo5BBbVDQtbCEkLOigCVRJzjJRDhasACNJCaE9A4FLIk6LfV2cBwHbWJcWI6fmKFBS70dXo8vLMcnhEQHClgSdSzNrVDpYyGRiMNy/MQMNRhjaK61heX4hJDoQAFLoo61xQm1PrQTTLRHcxITQnqDApZEHavRCVUYAzZ4qQ6NJCaE9IQClkQVxhhsJic0BkXYaohTy6FQyWmgEyGkRxSwJKq0Wt0I+ANhbcFyHIeEdDWaqqkFSwjpHgUsiSpWowMAwnoOFmhbJq+l3g7GWFjrIIRELgpYElWsLU4AgEofvi5ioG2ZPI/Li1arO6x1EEIiFwUsiSq2HwNWbQhvCza40EBwVilCCDkTBSyJKsEWbLi7iIPTNJoaKGAJIV2jgCVRxWp0QCwRQ6GSh7UOasESQs6GApZEFduPk0yEeqH1Mym1MZDKJPy8yIQQciYKWBJVLEZHWC/RCeI4DvpkJbVgCSHdooAlUcUW5mkS26OAJYT0hAKWRA2/PwC72QV1GGdxak+frITV6IDP6w93KYSQCEQBS6KG3ewCYywiuoiBtoBljMHU2BruUgghEYgClkQNW4RcohMUvFSHuokJIV2hgCVRw9rSNk1iJLVgAaClnkYSE0I6o4AlUcNqbGvBhnMlnfZ0SXEAqAVLCOkaBSyJGqfnIY6MFqxUJoHaoKCAJYR0iQKWRA1bixNSmQQxCmm4S+HRpTqEkO5QwJKoYW1xQG0I/yxO7QUDlpatI4SciQKWRA2r0Rkx18AG6ZNVtGwdIaRLFLAkakTSLE5BehroRAjpBgUsiQo+rx+tVlfEDHAK0qcEr4WlS3UIIR1RwJKoYDNF1iQTQbRsHSGkOxSwJCrwC61H2DlYpSYGUjktW0cI6UzQgN28eTMKCgqQl5eHxYsXw+fz9Wmb7du3Y8yYMSgsLERhYSFqa2uFLJdEMFuEXQMbFFy2ztRA8xETQjoSLGD9fj+WLFmCDRs24Pjx47Db7Vi3bl2vt7HZbFi4cCFee+01HDp0CN988w10Op1Q5ZIIZzW2TZMYaV3EAF0LSwjpmmABu3PnTqSnp6OwsBAAsGTJEmzcuLHX26xfvx6zZs3C8OHDAQAajQaxsZH35UpCI1yzODHGYLVa0dzc3O21rvpkFaxGB7yezj00hJDBSyLUjqurq5GRkcHfzszMRHV1da+3OXr0KNxuN6ZPn46WlhbMmjULjz76aERNMkBCx9biRIxCBnmM8LM4BQIBmM1mNDc3o7m5GR6PBwBgMBgwbNgwSKUdawguW2duciAhTS14fYSQ6CBYwALoEIbd/fbf3TZerxdbtmzBV199BYVCgdmzZ2PdunVYuHBhh+evWrUKq1at4m+bTKb+Kp9EEGuLMyStV4vFgoMHD8Lr9YLjOGg0GmRmZsLr9eLUqVPYvXs3ioqKoFQq+ee0H0lMAUsICRIsYDMyMlBZWcnfrq6uRnp6eq+3yczMxMyZM2EwGAAAV199Nfbs2dMpYJcvX47ly5fztwsKCvr9tZDwsxodgp9/NZvNOHDgACQSCYYNGwaDwdChtapWq3H48GHs2bMH+fn5SE5OBnA6YGkkMSGkPcHOwZaWlqKmpgZlZWUAgDVr1mDOnDm93mbOnDnYtm0bXC4XAoEANm3axJ+rJYOPtcUJtUG4gDWZTNi/fz8kEglKSkqQnJzcqSvYYDDgwgsvhEKhwJEjR1BeXg4A0CXGgeM4GuhECOlAsIAVi8VYvXo15s6di7y8PCgUCixYsAC7du3C5Zdf3uM2AJCXl4eFCxdi9OjRGDlyJBITE7F48WKhyiURzOP2wdXqgUovzDWwLS0tOHDgAGQyGUpKSnocTBcbG4tRo0ZBr9ejsrISTqez3bJ11IIlhJzGsQG2DEhBQQHfIiYDg7HOhr/e+iF+dkspLp49rH/3bTTi4MGDkMvlKCkpQUxMTK+e53A48N133yElJQUXXHABXvntf+G0e3DXc7P6tT5CSGTrKXNoJicS8YS6RMfhcODQoUOIiYnpU7gCgEKhQGJiIurr6+FyuaBLiqNl6wghHVDAkohna2mbZELTj9Mk+v1+lJWVgeM4jBgxok/hGpSZmQnGGCorK/ll6+wWV7/VSAiJbhSwJOIJ0YI9efIk7HY7hg4dCoXi3IJbqVQiPj4e9fX1UBvkAGjSf0LIaRSwJOJZjT8GrK7vrcyuNDc3o6amBklJSUhKSjqvfWVlZSEQCMDN2gY4UcASQoIoYEnEsxodUKjkkMrO/7Jtl8uFI0eOIDY2FkOHDj3vmcFUKhUMBgMcPgsCAUYBSwjhUcCSiNdfszgxxnD48GH4/X4MHz4cEkn/zLOSlZUFaSwHn99Dl+oQQngUsCTi2Vqc/TKLU3V1NSwWC4YMGQK1uv+mNFSr1TAYDBDH+mGstfbbfgkh0Y0ClkQ0xli/tGCDcwmr1epOU3b2h6ysLMTppKipaOr3fRNCohMFLIlobqcXHpf3vC/RqayshM/nQ25uriArMmk0GuiSlDDWW+Hz+ft9/4SQ6EMBSyJaf1yi43K5UFNTA4PBAI1G01+ldZKWkwCfz4f6U0bBjkEIiR4UsCSi2X4M2PM5B3vq1CkEAgHk5OT0V1ldys5PAwCcPFp9li0JIYMBBSyJaMEWrFJ3bgHrcDhQV1eHpKSkDmu4CiE1Ox5isRiVx+sFPQ4hJDpQwJKIZjedXwv25MmT4DhO8NYr0LYurEwmR3OtBQ6HQ/DjEUIiGwUsiWg2U9vcvkpt32dxslqtaG5uRlpa2jnNNdxX8hgptPFK2E0eNDXRaGJCBjsKWBLR7GYnYuJkfZ7FiTGGkydPQiwWIzMzU6DqOktI1cJtC1DAEkIoYElks7Y4oTqH869WqxVmsxkZGRmQyWQCVNY1Q4oS3lYOdrsdTqczZMclhEQeClgS0ewm1zlN8l9fXw+O45CamipAVd3TJSnh93Dwuv1obGwM6bEJIZGFApZENJup7y3YQKCti1av14e09Qq0BaxEIobPIaJuYkIGOQpYErF8Pj8cNnefL9ExGo3w+XxITEwUqLLu6ZPbLgWSIo66iQkZ5ChgScSym9tGEPe1i7ihoQFisRjx8fFClNUjfdKP19q6pQBA3cSEDGIUsCRi2U3BgO19C9br9cJoNCIhIQFisVio0rqlSVCA4zg4LD7ExsZSNzEhgxgFLIlYth8nmehLwDY1NYExFpbuYQCQSMTQxCtgarAjISGBuokJGcQoYEnECgassg9dxA0NDZDJZNDpdEKVdVa6JCVMDa18F7XRSJP/EzIYUcCSiGXrYxexy+WCxWJBUlKSIEvS9ZYuKQ4tDXYolUrIZDIKWEIGKQpYErHsJidEIhHi1PJebR8cUBSu7uEgfbIKXrcPDpsHBoMBZrMZPp8vrDURQkKPApZELLvZBaU2pletUcYY6uvroVAoBF8152z0SXEAgJZ6OwwGAxhjaGlpCWtNhJDQo4AlEcva4uz1+Ve73Q6HwxH27mGgrQULAKYGO3Q6HUQiEXUTEzIIUcCSiNWXWZyC3cNJSUlCltQrunYtWLFYDK1Wi5aWFjDGwlwZISSUegzYJ554gv/7nj17BC+GkCDG2I/zEJ89YBljaGxshEajCcmydGej0sVCKpPA1GAHABgMBni9Xlit1jBXRggJpR4D9u233+b/vnTpUsGLISTI7fTC6/H1ahYnp9MJt9sNg8EQgsrOjuM4aBPj0FJ/OmABulyHkMGmx4Bt36VF3VsklPiF1nvRgjWbzQAArVYrYEV9E7xUBwBiYmKgVCopYAkZZHpcxbq1tRXffvstAoEAHA4Hvv322w5BO2HCBMELJIPT6Vmczt6CNZvNEIvFYR893J4+SYnj39fD7w9ALBbBYDDg1KlTcLlcEdGNTQgRXo8Bm5qaigceeKDT34G2brBNmzYJWx0ZtOy9nCaRMQaz2QyNRgORKHLG7OmTlQgEArA0O6BPUvIB29zcjPT09HCXRwgJgR4DdsuWLSEqg5COejuLk8vlgsfjgUajCUVZvab7cVUdU4Md+iQlVCoVpFIpWlpaKGAJGSR6DNhvvvmmxydTFzERSm/nIY7E86/A6XVhgyOJOY6DwWBAQ0MDfD4fJJIe/+sRQgaAHv+XT5w4EUVFRYiPj+80yIm6iImQbCYnZDFSyGOkPW5nNpshEomgUqlCVFnvBFuwwZHEQNto4vr6ephMJiQkJISrNEJIiPQYsI8//jjeffddqNVqLFiwAFdccQVkMlmoaiODWNs1sD23XiP1/CsAxMbJEKuUdwhYvV4PjuP49WoJIQNbj99Kv/71r7F7926sWLECX3/9NYqLi7Fs2TIcO3YsVPWRQao3szi5XC643e6I6x4Oan+pDgCIxWLodDoYjUa67I2QQaBXJ4JGjRqF3Nxc5Ofn46GHHsKYMWOQn58vdG1kELOZXIhPU/e4TaSefw3SJylRUdbU4b74+Hi0tLTAYrFEbN2EkP7RYwvW5/Phww8/xNy5czFp0iQYjUbs2rULixcvDlV9ZBAKBAJotZx9mkSLxRKR51+DdElK2M1OeNynl6oLLsLe1NTU3dMIIQNEjy3Y5ORkZGVlYcGCBbj77rvBcRxqa2tRW1sLgEYRE2G0WtxgjEGpPfsIYrVaHXHnX4OCI4lb6u1IztICAGQyGTQaDZqampCXlxf2lX8IIcLpMWCLiorAcRw+/PBDfPjhhx0eo1HERCi9mcXJ5XLB5XIhOTk5VGX1mSG1rWVtrLPxAQsACQkJOH78OKxWa8Rdv0sI6T800QSJOL2ZhzjSz78CQHwwYGttHe4PBmxzczMFLCEDWI99a+Xl5ZgzZw5GjBiBefPmoa6uLlR1kUEs2IJV63sO2Eg+/woAmngFJFIxms8IWLlcDrVajaamJhpNTMgA1mPALl68GPn5+fjLX/4CjUaDu+++O1R1kUEsOA9xT+dgzWYzVCoVxGJxqMrqM5FIBH2yEs01ndeBTUhIgMvlgt1u7+KZhJCBoMcu4ubmZvzpT38CAFx22WUYNWpUSIoig5vN5ALHcYjTdB2wwfOvSUlJIa6s7wypKtT80NLp/oSEBJw4cQJNTU0R3QonhJy7HluwUunpaeo4jovY0ZpkYLGZnFCo5RCLu/68RcP516D4VDWsLQ64Xd4O98fExEClUlE3MSEDWI+JuXfvXshkMv4neFsqldKUiUQwZ5vFyWKxgOM4qNU9T0QRCYIjiVvqOncFx8fHw+l0orW1NdRlEUJCoMeADQQC8Hg8/E/wttfrhcfjCVWNZJCxm1w9DnCy2+1QKpURff41KOHH2aiaujkPC9CkE4QMVIL2+W7evBkFBQXIy8vD4sWL4fP5+ryN2WxGamoqli5dKmSpJILYTM5ul6kLBAJ8wEYDQzeX6gCAQqFAXFwcmpubQ10WISQEBAtYv9+PJUuWYMOGDTh+/DjsdjvWrVvX523uv/9+TJ8+XagySYRxu7xwO73ddhE7HI62WZ6iJGDV+lhI5RI013ZuwQJtrdjW1lY4HI4QV0YIEZpgAbtz506kp6ejsLAQALBkyRJs3LixT9ts3rwZbrebAnYQsZt/nGSim0t0gpe1RMvIW47jYEhRddmCBWhuYkIGMsECtrq6GhkZGfztzMxMVFdX93obp9OJ3/zmN/jrX//a43FWrVqFgoIC/sdkMvXjqyChZv9xFqfuzsHabG1BFRcXF7Kazld8qqrTZBNBcXFxiIuLQ11dHY0mJmSAEfQcbPuJzLv78uhum5UrV+K2224768LUy5cvR1lZGf+j0+nOs2oSTsFZnLqbJtFut0OhUETFAKeg+DQ1Wi0uOFs7DwzkOA6pqalwuVz0yyEhA0yv1oM9FxkZGaisrORvV1dXIz09vdfbfPPNN3jnnXfwyCOPwG63w+1uW2HlH//4h1AlkwhweqL/zgHLGIPdbue7VaNF+4FO6UMNnR5PSkrCiRMnUFdXB71eH+ryCCECEawFW1paipqaGpSVlQEA1qxZgzlz5vR6m6+++goVFRWoqKjAX//6V1x//fUUroMAP9F/F+dgnU4n/H5/1AxwCopvt6pOVyQSCRITE9Hc3Ay32x3K0gghAhIsYMViMVavXo25c+ciLy8PCoUCCxYswK5du3D55Zf3uA0ZvOwmJ6QyCWIU0s6P/TjAKdoCNtiC7e48LACkpqaCMYaGhoZQlUUIEZhgXcQAMG3aNL51GlRaWoqPP/64x23OtGjRIixatEiIEkmECV4D29VC5NEasEpNDOSxUhi7uVQHaBsVrVQqUVtbi4yMDFqInZABgCYXJhHFZnJ1ew2szWZDTExMhzmyowHHcYhPU6O5pvsWLMdxSElJocFOhAwgFLAkorTNQ9z5/GtwgFO0tV6DerpUJygpKQkikQi1tbUhqooQIiQKWBIxGGOwm7tuwQbnwI7WgDWkquC0u+GwdT+IKTjYyWg00mAnQgYAClgSMexmFwL+ANQGRafHghNMRMsMTmeK78VAJ+D0YKf6+vpQlEUIERAFLIkYFmPbfLxqQ+cWbLQOcAoypLatqtPcxao67QUHO9HMToREPwpYEjGsfMB2bsHa7faoXoe4ty3Y9oOdjEZjKEojhAiEApZEDEtzW8Bq4rvuIlapVFF7+YpCJYdCJe/xUp2g5ORkSKVSVFRUUCuWkChGAUsihtXYNk2i5owWrNfrhdvtjtru4SBDL0YSA20TsGRmZsJut9NasYREMQpYEjEsza2IUcggj+14nWu0n38Nik9tW7auN63S1NRUyGQyasUSEsUoYEnEsBqdPQ5witYRxEGGVDXcTi+/5m1Pgq3Y1tZWWiuWkChFAUsihsXo6PYSHbFYjJiYrhdhjxa9HegUlJqaCrlcTq1YQqIUBSyJCIwxWJodXQ5wCs7gFK0DnIJOL1t39oFOACASiZCVlQWHw4HGxkYhSyOECIAClkQEl8MLr9vXKWD9fj8cDkfUdw8DfW/BAm0jimNiYlBRUYFAICBUaYQQAVDAkogQvETnzC7igTLACQBiFDLEaWJg7EPABluxTqeTWrGERBkKWBIR+GtgB3DAAkBCmhpNZ5nN6UxJSUmIjY1FRUUF/H6/QJURQvobBSyJCLaWrqdJbG1tBcdxUCg6n5uNRomZGjTX2ODz9T4oRSIRcnJy4HK5UFVVJWB1hJD+RAFLIkJ3szi1trYiNjYWItHA+Kim5Ojg9/nRVN23VmxCQgJ0Oh0qKyvhdDoFqo4Q0p8GxrcWiXoWoxMSqRgKlZy/jzGG1tZWxMXFhbGy/pWcrQUA1FeY+/Q8juMwdOhQMMZw/Pjx/i+MENLvKGBJRLA0t0JtUHS4FMfj8cDn8w2Y868AkJSlBQDUl5v6/FyFQoGMjAwYjUaaQpGQKEABSyKC1ejs1D0cHOA0kFqwsXEy6BKVfW7BBmVlZUEul+P48eM04ImQCEcBSyKC1eiAWt95gBMwsAIWAJJztKg7hxYs0DaFYl5eHlwuFyorK/u5MkJIf6KAJWHn9fjgsLm7HOA0EKZIPFNKjg42kxN2y9nnJO5KfHw8dDodqqqqaMATIRGMApaEHb9MXRcBGxcXF/VTJJ4pJUcHAOfcim0/4OmHH36geYoJiVAUsCTsuprFKRAIwOFwDLjuYaDdSOJzDFigbcBTZmYmWlpaaLUdQiIUBSwJO0tz27nW9gHrcrkQCAQGZMAaUlSQxUjPeaBTUGZmJmJjY3H8+HH4fL7+KY4Q0m8oYEnYWbroIh6II4iDOI5DUpbmnLuIg8RiMYYOHQqPx4OTJ0/2U3WEkP5CAUvCzmp0gOM4KLWnBzMN1BHEQSk5OjRWWfs0ZWJX9Ho9kpKSUFtbC6u1b7NDEUKERQFLws7S7IBKHwux+PTHsbW1FVKpFDKZLIyVCedcp0zsSm5uLiQSCY4ePUpL2hESQShgSdhZjY5Oq+i0trYOqBmcznSuUyZ2RSaTITc3F62traipqTnv/RFC+gcFLAm7M2dx8vv9cDqdA7Z7GDi/KRO7kpycDI1Gg/Lycrhc53Z9LSGkf1HAkrDy+fywmZwdRhAP9POvwPlPmXgmjuOQn59PiwEQEkEoYElY2c0uMMY6rAM7GAIWOL8pE7sSFxeHtLQ0NDc3o6Wlpd/2Swg5NxSwJKy6Wgd2sATs+U6Z2JXs7GxIpVIcP36cBjwREmYUsCSsrMbOszjZ7XbExsZCLBaHq6yQON8pE7sikUiQm5sLh8NBA54ICTMKWBJWfAv2jHOwA731CpwO2P46DxuUlJQEtVqNiooKuN3uft03IaT3KGBJWAUn+g+eg/V4PPB6vYMiYPXJyrYpE/uxBQucXgzA7/ejvLy8X/dNCOk9ClgSVlajAwqVHFKZBMDgOf8KnJ4ysb9bsACgUqmQkpKC+vp6WCyWft8/IeTsKGBJWFmaHV0OcBrIk0y0l5KjQ0Ol5bynTOzKkCFDIJFIcPz4cVrSjpAwoIAlYWUxOjpN8i8SiQbcIuvd6c8pE88klUqRnZ0Nm82GxsbGft8/IaRnFLAkbBhjsBo7TzKhUCggEg2Oj2Z/TpnYldTUVMTExKC8vJwu2yEkxAbHtxiJSK1WN/w+Px+wjLEBu8h6d4IBW3eyfwc6BYlEIuTk5MDlcqG2tlaQYxBCukYBS8ImeA2s5scRxE6nE36/f9CcfwWAGIUMSVlaVJQJ14WbmJgIpVKJU6dO0cLshIQQBSwJm9OzOLW1WIOLrA+mgAWAnMJE1BxvgdvlFWT/HMdhyJAh8Hq9qKqqEuQYhJDOKGBJ2PAt2B8HOQ3agC1KRMAfQOWRZsGOodPpoNVqUV1dDY/HI9hxCCGnUcCSsAm2YFX6ti5iu90OuVwOqVQazrJCLrswEQBQflC4buJgK9bv9+PUqVOCHYcQchoFLAkbi9EBWYwUMYq2QLXb7YOu9QoAar0C8alqVBwS9lIatVqNhIQE1NbWwul0CnosQggFLAkjU0MrtAkKcBwHj8cDj8czKAMWaGvFVh1thtcj7CCknJwcAEBFRYWgxyGEUMCSMGqusSIhXQ3g9PlXlUoVzpLCJqcoET6vH9U/CLuOq0KhQFJSEhoaGuBwOAQ9FiGDHQUsCQuXwwObyYn4tI4BO1hbsDlFwfOwDYIfKysrCxzHobKyUvBjETKYCRqwmzdvRkFBAfLy8rB48eIur8Hrbpv169ejuLgYI0eOxEUXXYQtW7YIWSoJseZaGwAgPrWtxWq32yGRSCCXy8NZVthoE+KgiY8TdKBTUGxsLBITE9HQ0EDnYgkRkGAB6/f7sWTJEmzYsAHHjx+H3W7HunXrer1NTk4ONm/ejP3792Pt2rX4+c9/TlO9DSDNNW1z7yakawC0BWxcXBw4jgtnWWHDcRxyihJReaRZkIn/z5SVlQXGGLViCRGQYAG7c+dOpKeno7CwEACwZMkSbNy4sdfbTJgwAXq9HgBQUFAAl8vFdyOS6Ndc09aCNaSq4Pf74XA4Bu3516CcokR4XF7Bpk1sT6FQIDExEfX19XC5XIIfj5DBSLCAra6uRkZGBn87MzMT1dXVfd4GAN58800UFhZCrVZ3emzVqlUoKCjgf0wm4b+cyPlrrrEiVilHnFo+6Jao605OURIACH65ThC1YgkRlqDnYNt393W3HuXZttmzZw8eeughrF27tsvnL1++HGVlZfyPTqc7v6JJSDTVWBGfpgLHcbDZ2lqzgz1g41NViNPE4OQB4Qc6AW2L2ickJKCurg5utzskxyRkMBEsYDMyMjr8ZlxdXY309PQ+bXPs2DFce+21ePvttzF06FChSiUhxhhDc42twwAnjuOgUCjO8syBLXgetqKsKWTjDagVS4hwBAvY0tJS1NTUoKysDACwZs0azJkzp9fbVFdXY9asWXjppZcwduxYocokYWAzOeFxefkBTq2trYiLixs0a8D2JKcwEa5WDxpOWUJyPKVSCYPBQK1YQgQg2DeaWCzG6tWrMXfuXOTl5UGhUGDBggXYtWsXLr/88h63AYDf//73aGxsxH333YeSkhKUlJTQ7DMDRPsBToyxQTtFYleC52FDcT1sUHZ2NgKBQJfjHwgh504i5M6nTZvGt06DSktL8fHHH/e4DQCsXr0aq1evFrI8EiZNwUt00tRwOBwIBAIUsD9KztYiJk6G8kONmHDFsJAcU6VSQafToba2FpmZmYNusQVChEJ9ciTkgtfAGlJVg34GpzNxHIecwkSUH2zsdmCgEDIzM+H3+1FTUxOyYxIy0FHAkpBrrrFCEx8HmVxCAduFnKJEtFpcaKq2huyYWq0WarUaNTU18PuFn+iCkMGAApaEXHONrcMk/zExMZBIBD1bEVXyRqUAAMp2hO6cKMdxyMzMhNfrRV1dXciOS8hARgFLQsrn86Ol3o54GuDUreQsLeJT1Tj4dWgvnTEYDFAoFKiqqqJpSQnpBxSwJKRMDa0IBAKIT1PD4/HA6/VSwJ6B4ziMmJiJmuNGGOttIT1uZmYm3G43GhtDM5sUIQMZBSwJqeAAp/g0NZ1/7UHRxZkAEPJWbGJiImJiYlBZWRnSQVaEDEQUsCSkTgcsjSDuSUqODoYUVcgDViQSISMjAw6HA83NzSE9NiEDDQUsCanmWhvEEjF0iXGw2WyDeg3YnnAch6KLM1H9gxGmxtCuIpWcnAypVEqtWELOEwUsCammaisMKUpwHAeLxQKNRjNo14A9mxETswCEvptYLBYjIyMDNpsNLS0tIT02IQMJBSwJKWOtDfFpajidTni9Xmg0mnCXFLFSh+igT1bhwLbQT8SflpYGqVSKiooKasUSco4oYEnIuBweWFscSEhXw2Jpm8xeq9WGt6gIFhxNXHWsOeTdxNSKJeT8UcCSkGmubbvkJD5VBbPZDJFIRAOczqJowo+jib+pCvmxqRVLyPmhgCUhYwwGbFpbC1atVtMSdWeRlqeHLlGJA9tOhfzYYrEYmZmZsNlsMBqNIT8+IdGOvt1IyATn1lUZZHC5XNQ93At8N/HRZpibW0N+/NTUVGrFEnKOKGBJyDTXWBETJ4OXuQCABjj1UrhGEwNtrdisrCzY7Xa6LpaQPqKAJSHTXGvjBzhxHAe1Wh3ukqLC6W7i0AcsAKSkpEAmk1ErlpA+ooAlIcEYQ1O1FfGpKlgsFqhUKojF4nCXFRU4jsPISVmoPNKEugpTyI8fPBfb2tqKpqamkB+fkGhFAUtCwmZywuPyQpukgMPhoPOvfTRuVj5EYhG2fXA4LMdPSUmBXC5HeXk5rRdLSC9RwJKQaK5pG0Eco277yNH5177RxsdhxMRM7PvyFKwtjpAfXywWY8iQIXA6naisDE9XNSHRhgKWhET9j12bMlXbOTwK2L6beNVw+H1+bP/PsbAcPzExEXq9HpWVlWhtDf2IZkKiDQUsCYmTBxoQq5RDHNe2/qtEIgl3SVEnPc+AnKIk7PjkB3jcvpAfn+M4DB06FBzH4dixYzTgiZCzoIAlgmOMofxgI7IK4tHa2kqt1/Mw8aphcNjc+H7TybAcPzY2FtnZ2bBYLKirqwtLDYRECwpYIri6chMcNjeShrRNi0gDnM7d8DHpiE9VY9uHR8LWgkxPT4dSqcTJkyfh8XjCUgMh0YAClgju5IEGAIA+s23dV2rBnjuO43DxlcPQXGPFkZ01YalBJBIhPz8fPp8Px48fD0sNhEQDClgiuJP7GxCniYFY4YVCoYBMJgt3SVFt1LQcKFTysF2yAwBqtRppaWlobGykGZ4I6QYFLBGU3x9A+cFGZBcmwG63U+u1H8hjpBg7cyhOHmhAzYnwLSWXk5OD2NhYlJWV8csPEkJOo4Algqo7aYLL4UFyrgqMMQrYfjJuVj7EEjE2vX0gbDVIJBIUFxdDKpXiwIEDsNtDu2YtIZGOApYI6sT+egCAOqVtWkSdThfOcgYMtV6BcbPyUba9Cj98H77RvDExMRg5ciQAYN++fXA6nWGrhZBIQwFLBHXyQAOU2hh4OBu0Wi3kcnm4SxowLr1xBFS6WHz08k74fOGbvjAuLg4jR45EIBDAvn374Ha7w1YLIZGEApYIxufzo+JQE5JzVfD5fEhOTg53SQNKjEKGmTePQnONFV9/eCSstajVahQWFsLtdmPfvn1wOEI/nSMhkYYClgim5ngLPC4v1KliiEQiJCQkhLukAadkSg6yCxKx6e2DYVmQvT29Xo+CggK4XC7s2rULlZWVCAQCYa2JkHCigCWCObm/ASzAEBsfQEJCAi1PJwCO4zB72UXwun34ZM2ecJeDhIQEXHTRRVCr1Th58iT27NkDm80W7rIICQsKWCKYkwcaIFOKEKeTIikpKdzlDFgpOTqM/9kF2P/VKX5QWTjFxsaiuLgY+fn5cDqd2LNnD3744QfqNiaDDgUsEYTP68epsibo0qWIiYmh0cMCu3TeSMRpYvDRS+Ed8BTEcRxSU1MxZswYGAwG1NTU4LvvvsPevXvR0NBAXcdkUKCAJYKoOmaEy+mBJlWCpKQkcBwX7pIGtNg4GX66aBQaqyz477p94S6HJ5fLUVRUhDFjxiAjIwOtra04fPgwvv32Wxw7dgwtLS0UtmTAojXDiCBO7q+H2+1G4pBk6h4OkQunD8Gx3bXYurEMqbl6FE/KDndJPIVCgdzcXOTk5KC5uRm1tbWoq6tDbW0txGIxDAYDDAYD9Ho9pFJpuMslpF9QwBJBnNhXD2kcQ0qmAXFxceEuZ1DgOA7X3DUOTdVW/POZ7UjM0CAlJ7K65kUiERITE5GYmAiv1wuj0Yjm5mY0NzejsbERAKBUKqHT6aDT6aDRaGhwHIlaFLCk3zlbPTh5qB7x2bHUeg0xeYwU8x+chFV3f4p1f/gSy//2U8SpY8JdVpekUimSk5ORnJwMv98Ps9kMk8kEk8mEqqoqVFVVgeM4xMXFQaVS8T9xcXEQiejsFol8FLCk32374DBa7Q6MGpWOxMTEcJcz6BiSVbjh1xPx6sOb8Naft+HmR6ZBLI7sQGrfTQwAbrcbZrMZFosFNpsN9fX1/ALvHMchNjYWCoUCcXFxUCgUUKlUiI2NpXP9JKJQwJJ+Zbe4sHVjGfQZchRclEVL04XJ0JIUzLx5FD5eswefrNmDWUsvjKrwkcvlSEpK4ntAAoEA7HY7bDYbWltb4XA4YLFYOiyVJxaLO7R29Xo9ff5IWFHAkn61ZcMhmFssmHxlBjIyMsJdzqA28arhqDnRgq8/OgLGgJ/dEl0h255IJIJarYZare5wv8fjQWtrK+x2Ox/ANTWnF6JXqVT84CmVShW1r59EJwpY0m/MTa3Y+v4BJOTGoHh8PrRabbhLGtQ4jsPcX42HSMThm38dgc3kxHX3TIBEOnAGDclkMshksg7XWfv9flgsFrS0tMBoNKKiogIVFRWIiYnhz/nGxETmeWkysFDAkn7z+Rt7YbXYMO2WIgwZMiTc5RAAEokY1949ASq9Alv/eQitFhfmPzgZsXEDt+tULBZDr9dDr9cjLy8PTqcTzc3NaGho4MNWr9cjOTkZ8fHxNGCKCIYClvSLphortv3rIDJHajBuyii6tCKCcByHmYtGQaWLwX/+vhuv/Oa/uPn3U6HWK8JdWkjExsYiI6PtlEVwwFRDQwNaWloglUqRkpKC1NRUatWSfkcBS/rFBy99A7fHjcsWTKCu4Qg18crhUOliseFv3+KZO/6DmYtH48LpQwbVecngAKghQ4bwE15UVlaisrISBoMBqamp0Ol01Kol/YIClpy3yqON2LXpBwy/OBklYwrCXQ7pQfGkbOiSlNj43Hb885lvsed/J3HVL8YgMUMT7tJCSiwW86OU7XY7amtr0dDQAKPRCJlMhsTERCQlJUGpVA6qX0BI/+IYYyzcRfSngoIClJWVhbuMQaOhugWr7v8XmqqtePD1a5GeTYuqRwOfz49tHxzBprcOIBBgmDy3AJPmFEAeO3inKfT5fGhqakJDQwPMZjOAtu7lhIQEaLVamlWKdKmnzKGAJefsm88O4O2/fgWPy4+rll+En/58XLhLIn1krLfho5d24tjuWshipCiZko1xl+dH3BSLoeZyudDY2IjGxkbY7XYAbeey1Wo1tFotVCoVFAoFYmJiqDt5kAtbwG7evBnLly+Hx+PBpEmT8Morr0AikfR6m/vvvx8bN26ESCTCH//4R8ydO/esx6SAFZ7L6cb6p/6LHf85AU2CAkt/fxkuKMkMd1nkHDHG8MP3ddj+8TEc+a4GjDFkXBCPMZflIa8kBdqEwT2XdHBWqeCP0+nkH+M4DjExMVAoFJDL5ZDL5ZDJZB3+lEgk1M08gIUlYP1+P4YOHYp//etfKCwsxHXXXYeZM2fi5ptv7tU2n3/+Of7whz9g06ZNaGhowLhx41BWVgaVStXjcSlghREIBGBsMqFsVwX+99Z+1J+0omhCJhY//FMo1bHhLo/0E3NzK3Z+dhy7Pj8Ba0vbAum6RCVyRiQipygJ6UMN0CcrIZMP3uEbbrebn00q+ON0OuHxeNDV1ynHcfz1usHQ7eqHup+jU0+ZI9j/kp07dyI9PR2FhYUAgCVLluD555/vELA9bbNx40YsWrQIEokEaWlpmDhxIj7//HNcc801QpU8aDHG+B+nww2bqRU2iwM2swPmZjtOHqpHxcFGNFe1gjEGqUyCuXdejBk/j96ZgUjXtPFxmDGvGFOvL0Ll4WaUH2xA+cFGHPiqEnv+d5LfTqWLhT5ZCX2yEkptLGKVMihUMsQqZYiJk0Eql0AqE0MqF0MiE0MiFUMsEUEk5iAWt/3Jidr+Hm2foWAg6vX6DvczxuDxeODxeOB2u/m/t79tt9vR0tLSZRCLxWK+5Rv8kUqlkEqlkEgk/I9YLIZYLIZIJIJI1Pb+Bf8kkUWwgK2uru4wVV5mZiaqq6t7vU11dXWHMO3q+UJ6bOl6NFZZQ3Y8ofH/odv9wQIMLMAQ8LeFayAAoMvfwEVIzFBjws+Go+CiLAwrzYBKS63WgUwiEWPIiCQMGdE2F7DP60f1D0Y0nDLDWGeHqcEOY50NZdur4XZ6z/t4HMdBJBaB49r+juCfQIf7gtuefl7P++x4x3mX2W8C/gD8Af/pPwMBBPx++AOBH/8eQID1bSF6jn+Duriv44YEwF//tRRSmbCD+gTt52n/Ae+uJ7qnbXrz/FWrVmHVqlX8bZPJdE61ninzggQotQPrwvMOX1iitr+LxG2/BQdbF/IYKZSaWChUMVBpFVBpFcgalkSBOshJpGJkFyQiu6Dz6kg+nx9OuwdOm6ftT7sHXo8PPo8fHrcfPo8fPq8fAT9rCxRfAH7/j7/cBTr+2daTAuDHP4M9KwAA1vX3QFdfDZ22i8KhnAHG2kLX/2MABxgCAT8CjIEFAh16nvif4JN/fP2d35sofCOEEoIWv2ABm5GRgcrKSv52dXU10tPTe71NV4+NHTu203GWL1+O5cuX87cLCvrnOswF9/2kX/ZDyEAnkYih0sbSL2GEnEGw8eWlpaWoqanhT/6uWbMGc+bM6fU2c+bMwWuvvQa/34/a2lps27YNP/kJhR4hhJDoIFjAisVirF69GnPnzkVeXh4UCgUWLFiAXbt24fLLL+9xGwCYMWMGxo4diwsuuACTJ0/Gk08+edYRxIQQQkikoIkmCCGEkHPUU+bQFCSEEEKIAChgCSGEEAFQwBJCCCECoIAlhBBCBEABSwghhAiAApYQQggRAAUsIYQQIgAKWEIIIUQAA26iCbVa3WnO43NlMpmg0+n6ZV+hRrWHB9UeHtFae7TWDVDtQdXV1bBau155bcAFbH+K5lmhqPbwoNrDI1prj9a6Aaq9N6iLmBBCCBEABSwhhBAiAArYHrRfZzbaUO3hQbWHR7TWHq11A1R7b9A5WEIIIUQA1IIlhBBCBEABSwghhAiAArYLmzdvRkFBAfLy8rB48WL4fL6Q13DnnXciPT0dEomkw/33338/8vLykJ+fj/fee4+/v6qqCpdccgny8/MxefJk1NbW8o+9/fbbyM/PR25uLh544AH+fq/Xi0WLFiEvLw+FhYXYunVrv9ReVVWF6dOnY/jw4SgqKsJDDz0UVfXPmDEDxcXFGDlyJObOnctf4xYNtQf94he/6PDZiYbas7OzUVhYiJKSEpSUlPCXUURD7Xa7HQsXLkR+fj6GDRuGl19+OSpqr62t5d/vkpISJCcn4+qrr46K2j/99FO+7gkTJuDw4cORVzcjHfh8PpaTk8MOHjzIGGPs2muvZWvWrAl5HV999RWrr69nYrGYv++zzz5jl1xyCfN6vay6upqlp6czq9XKGGPshhtuYC+//DJjjLFVq1axhQsXMsYYM5lMLD09ndXW1jKv18vGjx/PNm3axBhj7OWXX2Y33HADY4yxffv2sdzcXOb3+8+79traWrZz507GGGNut5tNmjSJffjhh1FTv9ls5v9+9913s5UrV0ZN7YwxtnXrVrZw4UL+sxMttWdlZbGqqqoO90VL7bfccgv785//zBhjLBAIsIaGhqipvb3p06ez9evXR0XtGRkZrKysjN//3LlzI65uCtgzfPvtt+ySSy7hb3/66afsZz/7WdjqaR+wt912G/vHP/7B3/75z3/O3nvvPRYIBJhGo2FOp5MxxpjdbmdarZYxxthbb73FFixYwD/npZdeYnfccQdjjLHLLruM/e9//+MfGzduHNu1a1e/v4Y77riDPfvss1FXv9/vZ7fddhtbuXJl1NTucrnYhAkTWGNjI//ZiZbauwrYaKjdarWylJQU5vV6o6729mpqaphGo2Gtra1RUXtmZibbvn07Y4yxJ554gt15550RVzd1EZ+huroaGRkZ/O3MzExUV1eHsaLTuqvNaDQiLi4OMTExAIC4uDjIZDJYLJYeX08oXqvRaMQHH3yASy+9NKrqnz17NpKSknD48GHce++9UVP7I488giVLliAhIYG/L1pqB4ArrrgCxcXFeOihh+Dz+aKi9pMnTyIpKQl33HEHRo8ejSuvvBIVFRVRUXt769evx1VXXQWFQhEVta9btw6zZs1CRkYG/vGPf2DFihURVzcFbBc4juP/ziLsKqbuamt/f0+Pnfl6hHytbrcbc+fOxT333IPhw4f3eLxIq/+jjz5CfX09xo0bhxdeeKHHY0VK7fv378eOHTtw8803d3os0msHgG3btuH777/Htm3bcODAATz55JNRUbvX68XevXtx5ZVXYs+ePbjiiiuwePHiqKi9vTfeeAPz588/67EioXa/34/HH38cmzdvRlVVFe6//34sXLgw4uqmgD1DRkYGKisr+dvV1dX9tnjA+equNoPBALvdDpfLBQBwOBzwer3QaDQ9vh4hX6vf78e8efNQWlqKu+++O+rqBwCxWIzFixfj9ddfj4rav/76a5SVlSEnJwfZ2dnw+/3Izs6OitoB8PtQqVS45ZZbsH379qioPSMjA3q9HjNnzgQA3HjjjdizZ09U1B504MABNDc3Y9q0aT0eK1Jq//7772G1WjFixAgAwPz587Fly5bIq7vXncmDhM/nY0OGDGGHDh1ijDF2/fXXh2WQU1D7c7Cff/45mzRpEvP5fKympoZlZGTwJ/BvvPFG9sorrzDGGHvhhRf4E/hms5llZGSwuro65vV62cUXX8yfwH/llVfYvHnzGGOMHThwgOXl5fXboInFixezm2++mQUCgaiq32KxsNraWv72Y489xq6//vqoqP1Mwc9ONNRut9uZxWJhjDHm9XrZokWL2MMPPxwVtTPG2KRJk/iBfR988AGbMGFC1NTOGGP33Xcfu++++/jbkV57bW0tMxgMrLq6mjHG2IcffsguvPDCiKubArYL//vf/9jw4cNZbm4uu/nmmzsNXgiFW2+9laWlpTEALC0tjd16662Msbb/CLm5uSwvL4+9++67/PaVlZVs4sSJbOjQoeySSy7hP3iMtZ3Ez8vLY0OGDGG/+c1v+Ps9Hg9buHAhy83NZcOHD2dbtmzpl9q3bdvGALCioiJWXFzMiouL2TPPPBMV9VdWVrLS0lJWVFTERowYwa699lpWX18fFbWfqf0vZ5Fe+4kTJ1hxcTEbMWIEKygoYLfccgtzOBxRUTtjjB06dIiNGzeOjRgxgl1yySX86NZoqN3v97P09HS2b9++DvdHeu1r1qxhBQUFbOTIkWzChAls7969EVc3TZVICCGECIDOwRJCCCECoIAlhBBCBEABSwghhAiAApYQQggRAAUsIYQQIgAKWELO05NPPokRI0aguLgYRUVFePPNNwEAa9euxdKlS8NcXWhVVFQgLy+vX/c5Y8YM1NTU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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "prior1.plot(color='C5', label='Prior 1')\n", "posterior1.plot(color='C4', label='Posterior 1')\n", "\n", "decorate_value('Prior and posterior distribution of showcase value')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Because your initial guess is in the lower end of the range, the posterior distribution has shifted to the left. We can compute the posterior mean to see by how much." ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.436831Z", "iopub.status.busy": "2021-04-16T19:35:43.436115Z", "iopub.status.idle": "2021-04-16T19:35:43.440717Z", "shell.execute_reply": "2021-04-16T19:35:43.441327Z" } }, "outputs": [ { "data": { "text/plain": [ "(30299.488817891375, 26192.024002392536)" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prior1.mean(), posterior1.mean()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Before you saw the prizes, you expected to see a showcase with a value close to \\\\$30,000.\n", "After making a guess of \\\\$23,000, you updated the prior distribution.\n", "Based on the combination of the prior and your guess, you now expect the actual price to be about \\\\$26,000." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** Now suppose you are Player 2. When you see your showcase, you guess that the total price is \\\\$38,000.\n", "\n", "Use `diff2` to construct a normal distribution that represents the distribution of your estimation errors.\n", "\n", "Compute the likelihood of your guess for each actual price and use it to update `prior2`.\n", "\n", "Plot the posterior distribution and compute the posterior mean. Based on the prior and your guess, what do you expect the actual price of the showcase to be?" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.446313Z", "iopub.status.busy": "2021-04-16T19:35:43.445597Z", "iopub.status.idle": "2021-04-16T19:35:43.448186Z", "shell.execute_reply": "2021-04-16T19:35:43.448776Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-3675.891373801917 6886.260711323408\n" ] } ], "source": [ "# Solution\n", "\n", "mean_diff2 = sample_diff2.mean()\n", "std_diff2 = sample_diff2.std()\n", "\n", "print(mean_diff2, std_diff2)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.453527Z", "iopub.status.busy": "2021-04-16T19:35:43.452814Z", "iopub.status.idle": "2021-04-16T19:35:43.454765Z", "shell.execute_reply": "2021-04-16T19:35:43.455306Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "error_dist2 = norm(0, std_diff2)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.459870Z", "iopub.status.busy": "2021-04-16T19:35:43.459110Z", "iopub.status.idle": "2021-04-16T19:35:43.461269Z", "shell.execute_reply": "2021-04-16T19:35:43.461881Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "guess2 = 38000\n", "error2 = guess2 - prior2.qs\n", "\n", "likelihood2 = error_dist2.pdf(error2)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.468130Z", "iopub.status.busy": "2021-04-16T19:35:43.467318Z", "iopub.status.idle": "2021-04-16T19:35:43.472187Z", "shell.execute_reply": "2021-04-16T19:35:43.471584Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "2.697812321910702e-05" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "posterior2 = prior2 * likelihood2\n", "posterior2.normalize()" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.549426Z", "iopub.status.busy": "2021-04-16T19:35:43.506440Z", "iopub.status.idle": "2021-04-16T19:35:43.768369Z", "shell.execute_reply": "2021-04-16T19:35:43.769420Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "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bOLEiYwxxjweD8vLy2M/+clPmMfjYX6/n23ZsoWv37p165jD4WCBQIA98cQTTK/X839HPdX9pptuYrfccguz2+3M4/Gwb37zm+y2227r8j3YtGkTKyws5O/7/X6m1+vZ9u3bGWOMvfXWW+zo0aMsEomw/fv3M6PRyF544QX+eABs//79Xb7fdru902d39erVbOLEiezYsWMsGAyyp59+mhUUFPD1Hg4owCa52bNnM7lcztLS0pjJZGJXX301O3DgAGOs/QMe/TKL6vgFt337dqbRaDp9oH/961+zq666ijHW/gWn1+tZOBzudX2if0QWi4Uvb8qUKfzzkUiEpaSksD179jDGGBs1ahR7+eWX+ed37tx50QA7f/78To+NGzeObdiwgYXDYSaTydjOnTv55z755BMmk8lYOBxm69atY6NHj2Y7duy44JrO/zKIRCIsNTWVVVZW8o95vV4mEon4oAWAD6ZRHQPsnXfeyVasWNHp+TFjxvBfvLNnz+7xC5+xi78/Hevdl+vrrvyuAuyuXbv451966SVWUFDAGBt4gO3N589kMnV6fWFhIXv11VdZV6688kr229/+lr/v8/mYWq1mn3zySbfvQUdLly5lCxYsYMeOHbvguREjRrC//vWv/P0XXniBlZSU9Oo6XnnlFXbZZZcxxhhbsGABe+655/jr+t73vsd+8IMfMMa+fG+jP04vRqvV8oGvu7o3NTUxkUjErFYr/9ixY8eYVCploVDognP6fD6m0+nYp59+yhhjbPPmzfz/7658//vfZ3feeSd/vy8BtqioiL3++uudzpednc0++uiji1/8EEFdxIPAY489BofDgYaGBrzzzjuYOHEi/1xeXl63r7NYLMjOzkZKSgr/2KhRo2CxWPj7OTk5PY5Zeb1efPe730V+fj40Gg3y8/MBgO/yAoDMzEz+3xzHQaFQwO12AwDq6uowYsQI/vmO/+7O+ceMGDECtbW1aG5uht/v5+sQvR6/34+WlhYsWbIEy5Ytw4oVK5Ceno5ly5Z1qmdHLS0taG1txaxZs6DVaqHVapGZmYmUlJROXYMXe3871gUARo4c2en97en1QN/en75cX2/LP7/M6HsdC735/HX87ABAamoq/9np6nwd32+ZTIbs7OxO5+vJ7373O+Tk5ODKK69Efn4+Vq1ahUgk0mVdOtbjYtcxZ84c7N+/H3a7HTt27MANN9yAzMxMHD58GFu2bMG8efMAAGfOnEFBQQE4jrugbpFIBD/96U8xevRoaDQaaLVaOJ1O/v9vd3Wvrq5GJBLBqFGj+M/xZZddBpFIhIaGhgvKkclk+MY3voHnn38eAPD8889jyZIl/PPvvvsupk+fzg9DrFmz5qKfse5UV1fjtttu4+ul1Wpht9t7/f9rKKAAO8j1FBzNZjPq6uoQDAb5x06fPg2z2dyr1wPAk08+ib1792L79u1wuVydxld6Izs7G2fOnOHv19TUXPQ1HY+PviYnJwcZGRlISUnpNMXn9OnTkMlkSE9Ph0QiwUMPPYQDBw7giy++QE1NDX7xi190eZ0GgwFKpRK7du2Cw+Hgb16vF9OnT+ePu9j7e/50o+rq6j69v315f/pyfb0tH8AF5efk5AAAVCpVpzFKAJ2+tC927t58/vri/Pc7EAigrq6u1+czGo34y1/+gjNnzuC///0v1qxZg9dee61X5fZ0HRkZGRg3bhyeeuopFBYWQq1WY968eXj55Zdx5MgRzJo1C0D7j5eTJ092+bfz4osv4sUXX8T//vc/OJ1OOBwOpKWl8cd2V/fc3FyIRCLU1dV1+hz7fD7+/+P5lixZgpdffhkNDQ14++23cdttt/Hv58KFC/Htb38btbW1cDqdWLFiRbd/6+d/Purr6zs9n5ubi02bNnWqV1tbW1JPI4w1CrBD2OTJk2EymfDzn/8cfr8fn3/+Of785z/j9ttv7/U5XC4X5HI5dDodPB5Pn6dh3HLLLfjtb3/LfwGcn2DRlS1btuB///sfQqEQ1q5di/r6elx77bUQiUS49dZb8dOf/hQ2mw1WqxU//elPsWTJEohEImzZsgWVlZUIhUJITU2FXC6HRNI+E81kMvEJMUB7cFixYgXuv/9+vsVqtVo7JWhdzG233YaNGzfik08+QSgUwp/+9CdYrVZcc801grw/fbm+vnj00UfhcDhQV1eHxx57DIsXLwbQntB06tQpfPzxxwiFQnjiiSdgtVr515lMJtTX18Pr9XZ53lh8/jq67bbb8Oc//xlVVVXw+/14+OGHkZOTg8mTJ/fq9a+88gpqamrAGENaWhrEYjH//vWkN9cxd+5cPPXUU5g7dy4AYN68eXj66adxySWXIC0tDQBw7bXXwu/34+c//zlaW1sRCAT4RCaXy4WUlBSkp6cjEAjg0UcfhcvlumjdMzMz8fWvfx13330339JsaGjo8YfD5ZdfDp1Oh2XLlqG8vBwFBQUA2pPofD4fDAYDZDIZdu3ahRdffLHb80yaNAnvvvsu6uvr4Xa7+R97UStXrsTPf/5zHD16lL/GN954o9seiqGIAuwQJpVK8d///hd79+5FZmYmFixYgPvuuw+33nprr89x3333QSwWw2QyoaSkBNOmTetTHR5++GGUl5ejpKQEZWVl3U4x6ujWW2/F2rVrodVq8cwzz+CNN96ATqcDADz99NPIz89HUVERiouLUVhYiD/84Q8AgMbGRtxyyy3QarUYOXIk0tLS8MgjjwAA7rzzTtTW1kKn0/Fd7I899himTZuGefPmQa1W49JLL8V7773X62ubPXs2/vSnP6GiogIGgwEvvfQS3n77bWi1WkHen75eX29df/31KCsrQ0lJCaZMmcL/iCosLMQTTzyBRYsWISsrC36/n89QBtqDyNSpU5GTkwOtVntB6zsWn7+Oli5dinvuuQdf+9rXkJmZiQMHDuDNN9/sVZAEgL1792L69OlQqVSYNm0aKioqsGDBgou+rjfXMXfuXLhcLr47ePbs2Whra+PvA+0tvvfffx979+5FXl4esrKysHr1agDA7bffjuLiYowYMQKjRo2CQqFAbm5ur+q+fv16vmtYo9Fg5syZ2Lt3b4/XtGTJErz77rtYunQp/5harcbq1atx1113QaPR4Ne//nWXMwuibrvtNsyePRvjxo1DWVkZrr322k7P33333Vi2bBkWLlwIjUaD8ePH9xiwhyKO9bavj5A4iNWCEIQQkmjUgiWEEEIEQAGWEEIIEQB1ERNCCCECoBYsIYQQIgAKsIQQQogAhtx2dRqNpt8T2QkhhJC+sFgsneYsdzTkAqzZbEZVVVWiq0EIIWQYKCoq6vY56iImhBBCBEABlhBCCBHAkOsiJoSQ4YJmWcZPV7sgXQwFWEIIGWQikQjOnj17wW5HRDhKpZLfvai3KMASQsgg09zcDI7jMGbMmD594ZP+iUQi/J7UJpOp16+jAEsIIYOM0+nEiBEjIBaLE12VYSG6o9iZM2f6FGDppw8hhAwijDGEw2FIpdJEV2VYkUqlCIfDfRr3pgBLCCGDUH+Sbkj/9ef9pgBLCCGkXziOQ1lZGUpKSjB79mycPHmyy+PWrFmDv//97wMq6w9/+AOKi4tRWlqKmTNn4tChQwM6XzzQGCwhhJB+EYvFqKysBAD86Ec/wv3334/XX3+90zHhcBgrVqzo87nD4XCnMeaysjJ89tlnSE1Nxbvvvovbb78d+/btG0j1BUctWEKSTDgcQZ3FiUiE5jiSwWPOnDk4fvw4ACA/Px+//OUvMXv2bPzhD3/AqlWr8Ktf/QpAe4LWzTffjAkTJqC0tBRvvvkmAKC6uhqjRo3CfffdhylTpuCTTz7pdP558+YhNTUVAFBeXo4zZ87E8er6h1qwhCQRrzeILW8fRVODG6PHGXH53FE01kZ6dOTIEUHmwyqVSowbN65XxzLG8J///AcTJkzgHwsEAvjwww8BAKtWreIf/8UvfoHs7Gy8/PLLqK6uxvTp0zFt2jQAwOnTp3HttdfiD3/4Q4/lrVmzBl/96lf7eEXxRwGWkCRht7Xh/f8dQasngKycNBw/0gSxWISps/IpyJKkFA6HUVZWhkgkgnHjxuGPf/wj/9zixYu7fM22bduwYcMGAO0t3cmTJ+Ozzz5DUVERTCYTrrjiih7LfOutt7BhwwZ8/PHHsbsQgVCAJSQJWM44sO29Y+A4Dl/52jhkmdPwydZTOHK4ASIxh8mXj6AgS7rU21amEDqOwZ5PpVJ1+XhX01yin+3uXhO1Y8cO3HPPPXjvvfeQkZHRt8omAI3BEpJgX3zegP/73xHIlVJce2MJsnO14DgO0+eMwqjR6ag6WI99u87SurNkSJg7dy6fUVxdXY3PPvsMl1122UVfd/DgQSxevBibN29GQUGB0NWMCWrBEpJAbpcPOz+qhjFThSvmj4Vc8eXiASIRh5lXFCIcZji4rxYSqRill+YksLaEDNwjjzyCu+66CxMmTIBIJMLf/vY3pKenw+Px9Pi6+++/Hx6PB7fffjv/2GeffYaUlBShq9xvHBPwZ/HWrVuxcuVKBAIBzJo1C88++ywkEkmvjlmzZg3WrFnDH1dVVYVNmzbh+uuv77HMoqIi2nCdDBr7dp3Fgb0WfP2bpdDplV0eEw5H8P7/jqChzoWbb7+0UxAmww9jDEeOHMG4ceNo2CCOunvfe4o5gnURh8NhVFRUYNOmTThx4gQ8Hg8/sN2bY1asWIHKykpUVlbizTffRGpqKq6++mqhqktI3EUiDMe/aEKGSd1tcAUAsViEiZNyEIkwnDlli2MNCSEDIViA3b17N8xmM4qLiwEAFRUV2Lx5c5+PAYCNGzdi4cKFkMvlQlWXkLirrXGgrS2AsUXGix5rytZAqUzBqePWONSMEBILggVYi8WC3Nxc/n5eXh4sFkufjwGAF154AUuWLOmynNWrV6OoqIi/2e32GF0BIcI6VtUEqVSM/ELDRY8ViTjkFxrQUOdCW2sgDrUjhAyUoFnEHfupuxvqvdgx+/fvh8vlwuzZs7t8/cqVK1FVVcXfdDrdAGtNiPDaWgM4e8aOUaPTIZX2bsuxkYUGAAynT1ArlpDBQLAAm5ubi5qaGv6+xWKB2Wzu8zEvvPACFi9eTIP5ZEg5caQZjDGM7kX3cFSGSQWVWkYBlpBBQrAAW15ejtraWj67at26dVi4cGGfjgmHw/jXv/7VbfcwIYMRYwzHjjRBb0hFekZqr1/HcRxGFqajudENt9MnYA0JIbEgWIAVi8VYu3YtFi1ahMLCQiiVSixZsgR79uzBNddc0+MxUR988AEyMzNRVFQkVDUJibuGWhfcTh9GFxn73DMzakz7eC21Ykky6O12dT2prq7G888/36/y//Of/+DRRx/t12ujNm7ciNLSUkycOBGXXXYZtm3bNqDzdSToPNhEoHmwJNlte+84ak7bcPPtl0Im79taL4wxvP7SQXAi4Os3lwpUQ5LMkmkerEQiQSgUAtC+Xd3Ro0cv2K7uYrZt24Zf/epXeP/99/v0uvO3s+vv63bs2IFx48ZBr9fj8OHDuOKKK1BXVweRqHP7M6nmwRJCLuTzBXHmlA35BYY+B1cg2k1sgN3aBrst9juoENJfHber++tf/4qSkhJMmDAB99xzDx+EH3nkERQXF2PixIm46qqrAAD33nsvdu3ahbKyMvz4xz8GAGzatAlTpkzBJZdcghtvvBFOp5Mv46c//SnmzJmDH/7wh1i/fj3uvPNOAO2793znO99BSUkJSkpKOm3wLpFI8Nhjj+Hyyy/Hyy+/3Kne06dPh16vB9AeLH0+30VXleotWiqRkDg6ebQFkUgEY8b3PrnpfCNHG7B/91mcPm6Fbkr3C1SQ4WH7lpNw2L0xP69Wp8CMeb1b87fjdnUHDhzAk08+id27dyMtLQ0LFy7E3//+d9x8883417/+hSNHjkAkEvFTKv/4xz92asEePXoUzz77LD766CPIZDI8/vjj+M1vfoPHH38cQHsy7NatW8FxHNavX8/XYc2aNWhubsbBgwfhcDhQXl6OadOmobi4GOFwGEaj8YI9Zs/34osvori4GBqNph/v2IWoBUtIHFWftEKllsOUre73OdK0ChgyVDh1ooU2ACAJFd2urrS0FFarFU8++SQ+/PBD3HDDDdDpdBCJRFi2bBm2bNkCjUYDjUaDiooKvPTSS9127/7f//0fPv/8c0yZMgVlZWV4/vnnO22ufsstt3TZNb5t2zbccccdEIlE0Ov1WLBgAb8fLdD99nlR+/btw8MPP9wpaA8UtWAJiZNgMIyWplaMHpcx4LGzUaMN2L3jDFqaW5Fh7HmLLzK09baVKYSutqvrbjs6sViMTz/9FB999BHefvtt/OQnP+lyqzvGGG6++WY89dRTXZbZn23wxGJxjysBHjt2DDfddBNeeukljB49utvj+opasITESXODG5FIBJk5A+9+Gnlu9adqyiYmSWbOnDl47bXX4HA4EIlEsH79esydOxdutxtWqxVXXHEFnnjiCcjlclgsFmg0Grjdbv71V155JV577TV+Vb+2tjYcOXLkouXOnTsX//znPxGJRGCz2fCf//wHs2bNuujrLBYLrr32WqxZswZTpkzp/4V3gVqwhMRJQ137l0hm9sADbKpKBr0hFQ11rgGfi5BYKi0txf33348ZM2YAaA+4d955JxoaGnDjjTfC6/UiEong+uuvR3FxMUKhEHQ6HSZNmoT58+fj17/+Nf7whz9gwYIFCIfDYIzhkUceuejG8itWrMAXX3yBiRMnAgAeeughfp37nvziF79AU1MTHnjgAf6x119/Hfn5+f1/E86haTqExMlbrx2G1xvEjbeWxeR8Oz48heNfNGHxnZMhkVBn1HCRTNN0hhOapkNIkgoFw2hu9MSk9RplNKkRiTBYm2MzpYAQElsUYAmJg+ZGT/v4awwDbEZme7JHUwMFWEKSEQVYQuKg/txYaSwDrCZNDplciqYG98UPJoTEHQVYQuKgsc4FdZocqaqUmJ2T4zgYM1VobnDTfNhhiP6fx1d/3m/KIiZEYKFQBE0NHhSOTY/5uY0mNc5W2+Fx+6HWdD/PjwwdHMdBJpPBarXCYDBQolMcMMZgtVohk8n69H5TgCVEYLGc/3q+L8dh3RRgh5Hc3FycPXsWLS0tia7KsCGTyZCbm9un11CAJURgDQKMv0alG1XgOA5NDR4UjMmI+flJcpJKpRg1ahR1E8dRf3oKKMASIrAGfvxVFvNzS6Vi6A1KNFOi07BE3cPJjZKcCBFQKBRpn/+aFfvWa1RGpho2axuCwbBgZRBC+o4CLCECamn0IBwWZvw1ypipBmMMLU00H5aQZEIBlhABCTH/9XzGc4lOzbTgBCFJhQIsIQJqrHNBrZFDpY79+GuUSi2DQiFFUyONwxKSTCjAEiKQ9vmvbkFbr0B7oktGphpNDR7KKiUkiVCAJUQg/PirwAEWaB+H9fuCcDl9gpdFCOkdCrCECCTaZWvKUgteFo3DEpJ8KMASIhBbSxtSZBKoNMKNv0YZMlQQiTgahyUkiVCAJUQg1pZWGNJT47IYgEQigj49lXbWISSJUIAlRADBQBguhw/6dGXcyjRmqmG3ehEM0IIThCQDCrCECMBmbQXAoE9PjVuZRpMKAEMzLThBSFKgAEuIAKzNrQAAQ0b8AqzB2J7oZGtpjVuZhJDuCRpgt27diqKiIhQWFmL58uUIhUJ9Ombnzp2YPHkyiouLUVxcjLq6OiGrS0jM2FraIBaLkKZVxK1MtUYGiVQMm7UtbmUSQronWIANh8OoqKjApk2bcOLECXg8HmzYsKHXx7jdbixduhTPPfccDh8+jB07dkCn0wlVXUJiytrSCp1BCZEofrudcBwHnV4JOwVYQpKCYAF29+7dMJvNKC4uBgBUVFRg8+bNvT5m48aNuPbaazF+/HgAQFpaGhSK+LUGCOmvcDgCh80LQxzHX6P0BiUcNi/C4UjcyyaEdCZYgLVYLJ12f8/Ly4PFYun1MUePHoXf78cVV1yBSy65BA8//DAtA0cGBYfNi0gkEtfx1yidQYlIJAKXg1Z0IiTRBB2D7Tj/r7vg2N0xwWAQ27ZtwyuvvIIdO3Zg165dF3QxA8Dq1atRVFTE3+x2ewyvgJC+s55LMopnBnFUdFoQjcMSkniCBdjc3FzU1NTw9y0WC8xmc6+PycvLw/z582EwGKBQKHDDDTdg3759F5SzcuVKVFVV8TcapyWJZmtpbR8PNcRvDmyUTt9eJo3DEpJ4ggXY8vJy1NbWoqqqCgCwbt06LFy4sNfHLFy4ENu3b4fP50MkEsGWLVv4sVpCkpm1uRVanQISSfxnwaXIJFCpZefm4RJCEkmwbwCxWIy1a9di0aJFKCwshFKpxJIlS7Bnzx5cc801PR4DAIWFhVi6dCkmTZqEiRMnwmg0Yvny5UJVl5CYiEQYbNa2hHQPR+kMSthbqAVLSKJxbIhlDhUVFfEtYkLizenwYvOLlZh8eT6KS7MSUoe9u2pwcG8tbrmjHHKFNCF1IGS46Cnm0EpOhMRQdAWneK5BfD69ob31TOOwhCQWBVhCYii6TGEi5sBGUSYxIcmBAiwhMWRtboVKLUeKTJKwOqg1cojFImrBEpJgFGAJiRHGGKwtbQlZYKIjkah9ihC1YAlJLAqwhMRIW2sAfl8woeOvUTq9Eg5bGyKRIZXDSMigQgGWkBjht6hL4PhrlD5diXA4ApeTlkwkJFEowBISI9Zzc08T3UUMgF9Fyk57wxKSMBRgCYkRW3MrFAopFMrEzz2NBlibjcZhCUkUCrCExIi1pRX6jNROG1gkilwuhTI1BTZa0YmQhKEAS0gM+HxBtHr8/CIPyUBvSKWpOoQkEAVYQmLAYfMCQEJ20OmOzqBEq8ePgD+U6KoQMixRgCUkBpz2cwFWr0hwTb7Er+hE3cSEJAQFWEJiwG7zAuCg0SZPgKVEJ0ISiwIsITHgsLVBkyZPyB6w3dGkySES0ZKJhCRK8nwbEDKIOexeaJOoexgAxGIRtHoFBVhCEoQCLCED5PMF4W0LJF2ABQC9QQm7tQ1DbNtnQgYFCrCEDFA0wUmrS54M4iidQYlQKAyPy5/oqhAy7CRuTy1CkpTH40EgEABjjL9JJBJotdouF5GITtHR6pKvBRsN+na7F+o0eYJrQ8jwQgGWkHPC4TCOHz+OhoaGLp/XarUYM2YMlMrOLdVoBnFaUgbY9jo5bG3Iy9cluDaEDC8UYAkB4Ha7UVVVBa/Xi6ysLBgMBnAcB5FIBI7j4HA4UFNTgz179iAvLw95eXkQidpHWJz2NqjTZEmVQRyVqk6BRCrmW9mEkPihAEuGNcYYLBYLTp06BbFYjOLiYmRkZFxwnFarhclkwrFjx1BdXY2mpiaMHTsWaWlpcNi8SDeqElD7i+M4DlqdAg6aC0tI3CXfT25C4oQxhqqqKpw8eRIajQbl5eVdBtcohUKBiRMnYvz48QgGgzh48CBsVgfakjSDOEqrU8Bh91ImMSFxRgGWDFuNjY1obm5GTk4OysrKIJdfPAmI4ziYTCZccskl4DgOe3Z/jkiEJXWA1RnaN1+nTGJC4osCLBmWAoEATpw4AaVSiYKCgj5vMadUKjF+/Hg47V54PG5otMmbodsxk5gQEj8UYMmwdOLECYRCIYwdO5ZPVuorg8EAVaoBwWAQNnt9jGsYOx0ziQkh8UMBlgw7VqsVTU1NyMnJQVpa2oDOxUEOrS4V9fV13U7vSTTKJCYkMSjAkmElFArh2LFjkMlkGDVq1IDP57R5MWJkJlQqFY4dOwa32x2DWsYWZRITkhgUYMmwcurUKfj9fowZMwZisXhA5wr4Q2hrC0CnT0VJSQlEIhGOHTuWlNm6lElMSPwJGmC3bt2KoqIiFBYWYvny5QiFQr0+Ztu2bVCr1SgrK0NZWRkWLVokZFXJMOB0OlFXVweTyQSDwTDg89mjSyTqFZDL5cjPz4fb7UZjY+OAzx1rlElMSPwJFmDD4TAqKiqwadMmnDhxAh6PBxs2bOjTMVOmTEFlZSUqKyvx6quvClVVMkycOXMGYrEYhYWFMTmfw97e5arTt2fpZmdnQ6FQ4NSpUwiHwzEpI1Yok5iQ+BMswO7evRtmsxnFxcUAgIqKCmzevLnPxxASCz6fDzabDSaTCVKpNCbndETXID43RUckEqGwsBCBQAA1NTUxKSNWovN0aRyWkPgRLMBaLBbk5uby9/Py8mCxWPp0zN69e1FWVoZZs2bh3Xff7bKc1atXo6ioiL/Z7fYYXwkZCurr26fRZGdnx+ycDtu5NYilX47l6vV66HQ6nD17Fj6fL2ZlDVSqijKJCYk3QcdgO07e7y65ortjJk2ahDNnzqCyshLPPPMM7rjjDpw5c+aC169cuRJVVVX8TaejHUNIZ5FIBA0NDVCr1VCpYrdmsMPuvWCLOo7jUFhYiEgkglOnTsWsrIGiTGJC4k+wAJubm9upm8xiscBsNvf6GI1GA41GAwAoKyvD9OnTUVlZKVR1yRBmt9vh9/tj2noN+ENoaw10ucl6amoqsrOz0dTUBKfTGbMyB0qnV1ImMSFxJFiALS8vR21tLaqqqgAA69atw8KFC3t9TH19Pf9FYLFYsGvXLhQVFQlVXTKE1dXVQSwWw2g0xuycDvuXGcRdGTlyJCQSCU6cOJE0AU2rV1AmMSFxJFiAFYvFWLt2LRYtWoTCwkIolUosWbIEe/bswTXXXNPjMQDw73//GyUlJSgrK8PXvvY1PP744xg9erRQ1SVDlN/vh9VqhdFoHPC8146iY5nRDOLzSaVSjBgxAm63G1arNWblDgRlEhMSXxxLlp/XMVJUVMS3iAmprq5GdXU1Lr30UqjV6pidd9f2alQdbMCSb13WKcmpo3A4jJ07d0KhUPC77ySSx+3Hpg37cOnUPEyclJPQuhAyVPQUc2glJzJkMcbQ0NAAlUoV0+AKtHcRqzWyboMr0N5DYzab4XK5kmIsljKJCYkvCrBkyLLb7fD5fMjKyor5uZ12L9J0F98DNjs7G2KxOCnmxVImMSHxRQGWDFl1dXUQiUQwmUwxPW8wGEarx3/BFJ2uSKVSZGdnw2azJcVGAJRJTEj8UIAlQ1IgEOCTmyQSSUzP7XK0LyDRmxYsAJjNZnAch7Nnz8a0Hv1BmcSExA8FWDIkWa1WMMaQmZkZ83NH1yBO0/YuwMpkMphMJjQ1NcHrTez4J2USExI/FGDJkGSz2SAWi/nFSmLJaY+2YOW9fk1eXh4AJLwVS2sSExI/FGDJkBOJRGC326HT6SASxf4j7rB7IVdIIZf3ftMApVKJ9PR0NDQ0IBAIxLxOvUWZxITEDwVYMuS43W6EQqGY7PnaFWcXaxD3Rl5eHiKRyAWbXsQTx3HQ6ZWwUwuWEMFRgCVDTnTlJCE2fohEGFxOX6/HXzvSaDTQarWoq6tL6H6xWp0CTrsXkQhlEhMiJAqwZMix2WxITU2FXN77MdLecrt8iEQivc4gPp/ZbEYoFEJTU1OMa9Z7OoMS4XAEblfybKdHyFBEAZYMKYFAAB6PB3q9XpDzO6NTdPrRggUAg8EAuVyO2trahM1F1fGJTjQOS4iQKMCSIcVmswGAcAE2uotOP1uwHMchOzsbHo8HLpcrllXrNe25DQpoHJYQYVGAJUNKdHpOWlqaIOd32r0Qi0VIVaf0+xyZmZngOA61tbUxrFnvKZRSpMgk1IIlRGAUYMmQwRiDzWaDVqsVZHoO0D5FJ02nGNDOOCkpKTAajWhubk7IlJ1oJjHNhSVEWBRgyZARnZ4jVPcwYwxOh7ff468d5eTkgDGGurq6GNSs77R6BZwOH8LhSELKJ2Q4oABLhgyhx1993iAC/lC/M4g70mg0UKvVqK+vRyQS/yCn1SsRiUTgdlImMSFCoQBLhgybzQaFQgGFYuABsCvRJRL7m+B0vpycHPj9fn7ebjxFM4ntNA5LiGAowJIhIRgMwuVyCbZ6E9A+/gr0bQ3inmRkZEAikSQk2YkyiQkRHgVYMiREu4eFWL0pyunwAuCgSYtNC1YsFiMrKwsOhwOtra0xOWdvKRRSyBVSyiQmREAUYMmQYLPZIBKJoNVqBSvDafdCrZFBIondn01OTg4AJCTZidYkJkRYFGDJoMcYg91uh1arhVgsFqwchz02GcQdyeVy6PV6NDY2xn19Yq1eCZfDh1CIMokJEQIFWDLo+Xw+BAIBwRaXAIBgMIxWj5/fTzWWMjMzEQqF0NLSEvNz96Q90Ynxq1MRQmKLAiwZ9JxOJwAIGmBdA1yDuCfp6emQSqWor6+P+bl7Ek10ctipm5gQIVCAJYOey+UCx3FQq9WClRHrDOKORCIRTCYTHA4HvN74tSb5qTpWasESIgQKsGTQc7lcUKlUgo6/tmcQIyaLTHQlKysLAOLaik2RSaBMTaFEJ0IEQgGWDGrhcBgejwcajUbQcpx2L2RyKeRyqSDnT01NhUajQUNDQ1xXdmpfk5hasIQIgQIsGdSiW77FI8DGagWn7mRlZSEQCMButwtaTkc6gxIetw/BYHwzmAkZDgQNsFu3bkVRUREKCwuxfPlyhEKhPh/jcDiQnZ2NO++8U8iqkkEqHglOkQiD0+ETrHs4ymg0QiwWx3VObPRHg4MyiQmJOcECbDgcRkVFBTZt2oQTJ07A4/Fgw4YNfT7mwQcfxBVXXCFUNckg53K5kJKSAplMJlgZHrcfkUgEadrYJzh1JBaLYTQaYbPZ4Pf7BS0rSms4l0lspXFYQmJNsAC7e/dumM1mFBcXAwAqKiqwefPmPh2zdetW+P1+CrCkS4wxuFwuaDSaAe3PejHReaJanVKwMqKysrLAGENjY6PgZQHUgiVESIIFWIvFgtzcXP5+Xl4eLBZLr4/xer348Y9/jN///vdCVZEMcl6vF6FQSNDuYaDDFB2BW7AAoFaroVQqUV9fD8aY4OVJpWKo1HLYqQVLSMwJOgbbsVXR3ZdFd8esWrUK3/72t5GRkdFjGatXr0ZRURF/i2eCCEms6PhrPBKcxGIRVBrhuqGjOI5DVlYWvF4vf31C0+oVNFWHEAFIhDpxbm4uampq+PsWiwVms7nXx+zYsQMvv/wyHn30UXg8Hvj9fjDG8I9//KPTOVauXImVK1fy94uKioS4HJKE4rHABHBuDWKdQtBu6I5MJhNOnTqFxsZGQTcviNLplbCcsSPgDyFFJthXAiHDjmAt2PLyctTW1qKqqgoAsG7dOixcuLDXx3z88ceorq5GdXU1fv/73+Pmm2++ILiS4c3pdEKtVkMkEq4jhrH2tXqFWCKxOykpKdDr9Whubo7LBgBa2nydEEEI9s0kFouxdu1aLFq0CIWFhVAqlViyZAn27NmDa665psdjCLmYUCiEtrY2wcdfvW1BBAIhQRb574nJZEIoFILVahW8LF1083UahyUkpgTtD5o3bx7fOo0qLy/HW2+91eMx51u2bBmWLVsmRBXJIBWv8VcHn0Ec3wBrMBggkUjQ2NgIo9EoaFlavQIikQg2a3w3fSdkqKOVnMigFK8VnBIVYMViMTIyMmCz2RAIBAQuS4Q0nRy2FmrBEhJLPQbYJ554gv/3vn37BK8MIb3lcrkgl8sFXWACAJw2b3siVZrwU3TOl5mZCcYYmpqaBC9Ln54Ku7UNkYjwU4MIGS56DLAvvfQS/29aqpAki44LTAjNYfdCkyaHWBz/zh6NRgO5XI6GhgbByzKkpyIUCsPt8gleFiHDRY/fGh3npcZj0jshvdHa2opwOByXAOu0t8W9eziK4ziYTCZ4PB60tgo7Pqo/t2QidRMTEjs9Jjm1trbi008/RSQSQVtbGz799NNOgXb69OmCV5CQ88VjgX8A8PmC8HqDSItzBnFHmZmZOHPmDBobGzFq1CjBytGlRwNsK0YWGgQrh5DhpMcAm52djYceeuiCfwPtv663bNkibO0I6YLb7YZIJEJqaqqg5Tjt7d2l8ZwDez6FQgGNRoPGxkaMHDlSsMUu5HIpUlUyWFsok5iQWOkxwG7bti1O1SCk99xuN1QqlaALTABfLvIfnSeaKJmZmTh27Bjsdjv0er1g5RjSU9HS5BHs/IQMNz0G2B07dvT4YuoiJvEWDofR2tqKnJwcwcty2NvHIzVxWOS/JxkZGTh+/DgaGxsFDbC6dCVqqm3wtgWgUKYIVg4hw0WPAXbGjBkoKSlBenr6BUlO1EVMEiGa7CP0+sNAewaxSi2DVCoWvKyeSKVSGAwGtLS0IBwOQywWpj58opO1DTkUYAkZsB4D7GOPPYZXXnkFGo0GS5YswXXXXYeUFPrDI4njdrsBACqVSvCynOcW+U8GJpMJLS0taGlpgclkEqQMQ3r7mLatuRU5uVpByiBkOOlxEOtHP/oR9u7di0ceeQSffPIJSktLsWLFChw7dixe9SOkk2iCk1Ip7LhoMBiGx+1P2BSd8+n1ekgkEkEXnVBpZJCmSGClqTqExESv1iK+5JJLUFBQgDFjxuDhhx/G5MmTMWbMGKHrRsgFPB4PUlNTBU9wcjnaM4i1usQmOEWJxWKkp6ejsbERwWAQUqk05mVwHAe9QUmL/hMSIz1+S4VCIbzxxhtYtGgRZs2aBavVij179mD58uXxqh8hvEgkgtbW1riMv0Y3IE+WLmIAMBqNYIyhublZsDL06alw2L0IhSKClUHIcNFjCzYzMxMjRozAkiVLcO+994LjONTV1aGurg4AZRGT+PJ4PGCMxSXAOh3tU3TSdInNIO5Ip9NBKpWiqakJ2dnZgpShT1cCYLDb2pBhFH6cm5ChrMcAW1JSAo7j8MYbb+CNN97o9BxlEZN483ja52jGJcHJ5oVCIYVcHvuu2P7iOA5GoxG1tbXw+/2CbHTAJzq1tFKAJWSAaKEJMmi43W5wHCf4Ck5A+xSdtCQZf+3IZDKhtrYWTU1NyM3Njfn503QKcBwHWzONwxIyUD2OwZ4+fRoLFy7EhAkTsHjxYtTX18erXoRcIF4JTuFwBC6nL2kyiDtSq9WQy+WCZRNLJCJodQrafJ2QGOjxm2r58uUYM2YMfve73yEtLQ333ntvvOpFSCeRSAQejycu469upw+MsYQu8t+daDex2+1GW5swrUx9eips1jbaQYuQAeoxwLa0tOC3v/0tvvrVr2L16tU4cuRIvOpFSCetra1gjMVl/NVxbg3iZGzBAuAXmhCqFatPVyIUDMPlpL1hCRmIHgNsx7l2HMcJ3jVHSHeiCU5xWSLRltwBNjU1FSqVCo2NjYK0MvV8ohONwxIyED1GzMrKSqSkpPC36H2pVEpLJpK4ineCU0qKBApl8mQQn89oNMLr9fI/PGLpyzWJaRyWkIHoMcBGIhEEAgH+Fr0fDAYRCATiVUdC4PF4oFQqBVvoviOnw8tn0yYro9EIQJhuYrmifW9YasESMjDU50uSXjwTnCIRBqfdm7Tdw1FyuRwajQZNTU2CdBPrDErYaPN1QgaEAixJem1tbYhEInFJcGp1+xEOR5JqicTumEwm+P1+uFyumJ9bn65EW2sAXm8w5ucmZLigAEuSXjwTnKJrEOv0ybfIxPkyMjIAAI2NjbE/97lVnFoaYz/GS8hwQQGWJL147gFrP5dBrDMkfws2JSUFOp0Ozc3NiERiuzh/+rkA20wBlpB+owBLkl48E5zs1jakpEigTB0cWfJGoxHBYBAOhyOm51WmpkCllqG50R3T8xIynFCAJUmNMRa3BCegPcDqDMqkziDuKCMjAxzHCZJNnG5UoaWplVZ0IqSfBA2wW7duRVFREQoLC7F8+XKEQqFeH/Ppp5+irKwMZWVlKCkpwV/+8hchq0qSlNfrRTgcjkv3cPsaxN5BMf4aJZFIoNfr0dLSEvNu4gyTCoFACE4HrehESH8IFmDD4TAqKiqwadMmnDhxAh6PBxs2bOj1MaWlpdizZw8qKyuxc+dOPP7446iurhaquiRJRcdf47UHbCTCoB0E468dGY1GhEIh2Gy2mJ43w9T+ntM4LCH9I1iA3b17N8xmM4qLiwEAFRUV2Lx5c6+PUSqVkEjad9OLtmKoq2r4iecesHZrewZxdCWjwSI9PR0ikSjm2cSGjFSIRBxlEhPST4IFWIvF0mm/yry8PFgslj4dU1lZiQkTJiAvLw8//OEPMXLkyAvKWb16NYqKivib3W4X4GpIong8Hsjlcv7HlpDs1ugaxIMrwIrFYhgMBlitVoTD4ZidVyIRQadXUqITIf0k6Bhsx0SR7lqfPR1TVlaGQ4cO4fTp03j11Vdx9OjRC16/cuVKVFVV8TedThej2pNEiyY4xaP1CrTPgU1VySCTCx/MY81kMiESiaClpSWm580wqWG3tSEUiu34LiHDgWABNjc3FzU1Nfx9i8UCs9nc52MAIDMzEzNnzsSbb74pVHVJEoquex23AGttgzYJ94DtDb1eD4lEEvNs4nSTCpEIg7WZlk0kpK8EC7Dl5eWora1FVVUVAGDdunVYuHBhr485efIkgsH2Zdrcbjfee+89lJSUCFVdkoTiOf4a8IfQ6vEPuvHXKJFIhPT0dNhsNv7vJhYyTNEFJ6ibmJC+EizAisVirF27FosWLUJhYSGUSiWWLFmCPXv24JprrunxGADYtm0bysrKUFpaissvvxy33HILvvrVrwpVXZKE4prgFN0DdhBN0Tmf0WgEYyym3cRpWjlSUiSUSUxIPwg62DRv3jy+dRpVXl6Ot956q8djgPaM4oqKCiGrR5Kcx+OBRCKBTCYTvCzHIFqDuDtarRZSqRSNjY3IysqKyTk5jkO6MRUtTRRgCekrWsmJJK1oglM8VlWyWdvAcdygHYMF2ruJTSYTHA4HfL7YLQ6RYVLD4/bD20Z7QBPSFxRgSVIKhULwer1xS3By2NqQplVALB7cfxLRjdibm5tjds4vx2GpFUtIXwzubxMyZLW2tmetxiPAMsZgG8QZxB2p1WooFIqYLjqRHg2w1E1MSJ9QgCVJKZ4JTt62IAL+EHSDNIO4I47jYDQa4fF4+B8pA6VQSKFSy9HcQAGWkL6gAEuSksfjgUgkglIpfNCzWQd/glNHJpMJQGw3Ys8wqdDSTDvrENIXFGBJUvJ4PEhNTYVIJPxHlM8gHgItWKB9HW+1Wo2mpqaYBcQMkwrBQAhOuzcm5yNkOKAAS5JOJBJBa2srUlNT41KezdoGiVQMtUb46UDxYjKZ4PP54HK5YnI+SnQipO8owJKk4/V6EYlE4pdBbG2DVqcYNJus90ZGRgaA2HUT69PbexMowBLSexRgSdKJ5x6wkQiDwz64NlnvDZlMBp1Oh6ampphsxC6RiKBPV6KJlkwkpNcowJKkE81+jUcXsdvlQzgcGTLjrx2ZTCaEQqGYbeGYma2B3doGny92ax0TMpRRgCVJx+12Q6FQxGkP2KGV4NRRrDdiz8zWAAAa66gVS0hvUIAlSSXue8AO4QArkUhgMBjQ0tKCUCg04POZstQAODTUxSZxipChjgIsSSp+vx+hUCiOm6x7IVdIoVBI41JevGVmZiISicRkn9gUmQSGjFQ01FKAJaQ3KMCSpBLPJRIBwGZtHXIJTh3p9XrIZDI0NDTE5HxZORrYaByWkF6hAEuSSjSDOF6brLudPhgy4jPfNhE4joPJZILL5YrJ0ommbA0AhqZ6Gocl5GIowJKk4vF4IJVKkZKSInhZ1pb2gDOUAywAfm/YWLRiM8+Nw9ZTNzEhF0UBliSVeO4Ba20eHgFWoVAgLS0NDQ0NA54TmyKTwJCupEQnQnqBAixJGqFQCD6fL27jry1NrZCmSKBJk8elvETKyspCMBiEzWYb8LkyczSwtbTB7xt4ZjIhQxkFWJI04jn+CrR3ERvSU4fUEondycjIgFgsRn19/YDPlXluHLaxnlqxhPSEAixJGtE9YOOxRGIgEILL4UW6cWh3D0eJxWIYjUbYbDb4/f4BncuUpQGNwxJycRRgSdLweDwQi8VQKBSCl2Vrbl9gYqiPv3aUmZkJxtiA58TK5BLoaRyWkIuiAEuShtvtjluCU0tze2t5OAVYjUYDpVKJ+vr6Ae8Tm5ndPg4b8NM4LCHdoQBLkkI4HEZbW1tcuoeB9gxiqVQ8LBKcojiOQ2ZmJtra2vjx7v7Kymkfh22g+bCEdIsCLEkK0fHXuGUQN7fCkDE8Epw6yszMBMdxA052MkbXJa51xqZihAxBFGBJUojnHrDBQBgux9Bewak7KSkpMBgMaGxsRDDY/+UO5XIp9AYlGmhnHUK6RQGWJAWPxwORSBSXBKf2BSYYDBnxaS0nG7PZjEgkMuBWbGaOBtbmVhqHJaQbFGBJUogmOIlEwn8ko0skDpcpOudLS0uDSqVCbW3tgFZ2+nI+LLViCemKoN9mW7duRVFREQoLC7F8+fIu96Ts7piNGzeitLQUEydOxGWXXYZt27YJWVWSQNEEp/iNv3qGXYJTRxzHwWw2w+/3o6Wlpd/nMWW3j8PWWWgclpCuCBZgw+EwKioqsGnTJpw4cQIejwcbNmzo9TEjR47E1q1bcfDgQaxfvx7f/OY3B7yOKklOra2tYIzFL4O4aXgmOHWUkZEBqVSK2trafp9DLpciw6SCpcYRu4oRMoQIFmB3794Ns9mM4uJiAEBFRQU2b97c62OmT58OvV4PACgqKoLP5+MzTcnQEs8lEoOBMJwOH/Tpw7N7OEosFiM7OxtOp3NAU3bMeVq4HF64nb4Y1o6QoUGwAGuxWJCbm8vfz8vLg8Vi6fMxAPDiiy+iuLgYGo1GqOqSBPJ4POA4Dqmpwge99vFXNiwziM+XnZ0NjuO6/JvrrZwRWgCgViwhXRB0DLZjF1x3K8dc7Jh9+/bh4Ycfxvr167t8/erVq1FUVMTf7Hb7wCpN4i66RV1cEpzObVGXTgEWMpkMRqMRTU1NCAQC/TpHekYq5AopBVhCuiDYN1pubi5qamr4+xaLBWazuU/HHDt2DDfddBNeeukljB49ustyVq5ciaqqKv6m0+lifCVESJFIhA+w8WBtboVEKoZGK/x0oMEgJycHjDHU1dX16/UcxyEnV4t6ixOhEOVIENKRYAG2vLwctbW1qKqqAgCsW7cOCxcu7PUxFosF1157LdasWYMpU6YIVU2SYNEEp3gGWEN6KkSi4Zvg1JFGo4FGoxnQlJ2cPC3C4QhtX0fIeQQLsGKxGGvXrsWiRYtQWFgIpVKJJUuWYM+ePbjmmmt6PAYAfvGLX6CpqQkPPPAAysrKUFZWhurqaqGqSxIknlvUBYNhOOxeGn89j9lsRjAYRGNjY79en5ObBoCD5YwjpvUiZLDj2EC31UgyRUVFfIuYJL9jx46hvr4eM2bMgFgsFrSsxno33nrtc8y8ohCFYzMELWswiUQi2L17NxhjmDx5cr/Gwv/778/h94dw461lsa8gIUmsp5hDKzmRhPJ4PFAqlYIHVwCwntuijhKcOhOJRMjPz4fP5+v38ok50ek6LpquQ0gUBViSMNEEp3gtMNHUcG4FJ0pwuoDRaIRSqcSZM2cQDof7/HpznhYATdchpCMKsCRhvF4vIpFIXBKcGGNoanDDmKmmBKcucByHkSNHIhAI9CujON2YCplcSuOwhHRAAZYkTDy3qGt1B9Dq8cOUTYuVdCc9PR0qlQo1NTV9bsVyHIecvDQ01Lpoug4h51CAJQkTz03WG85NITFlxqc7ejCKtmKDwWC/1ig252kRCoXRRNN1CAFAAZYkkMvliluCU2O9GyKRCOmm4bkHbG/p9XpoNBrU1NR0uftVT3JytQA4nKVuYkIAUIAlCRKJROB2u+O2vnRTvRvpxlRIJPSR70m0FRsKhXD27Nk+vVaukCLdmIpaSnQiBAAFWJIgbrcbjDGkpaUJXpbPG4TD3gZTFo2/9oZOp4NWq4XFYoHf7+/Ta815Wjhpdx1CAFCAJQnicrWP08WjBdtY355MZcqi8dfeKigoQDgcxokTJ/r0uryR7VtMnjltE6JahAwqFGBJQjidTkgkEiiVSsHLal8jl4OREpx6Ta1Ww2w2o7m5GVartdev06croVLLUX2SAiwhFGBJ3DHG4HK5oNFoOm1XKJTGejd0BgVkcongZQ0lI0eOhEwmw/Hjx3s9bYfjOOQX6NHc6Earp2/dy4QMNRRgSdz5/X4EAoG4dA8Hg2FYm1thyqTx174Si8UYM2YMfD4fTp8+3evXjRh1rpv4FLViyfBGAZbEndPpBIC4JDg1N3rAGIMpm7qH+8NgMCAjIwMWi4VfGORiMkwqpKpkFGDJsEcBlsRdXBOc6s4tMEEZxP1WWFgIiUSCo0eP9mrPWI7jkDdSj4Y6N7xtgTjUkJDkRAGWxJ3L5YJKpYrbAhMqtRypqhTByxqqZDIZRo0aBY/H0+sVnvJH6QEw1Jy2C1s5QpIYBVgSV+FwGB6PJy6t13A4guZGD03PiYGsrCykpaXh1KlTveoqNmapIVdIUX2y9xnIhAw1FGBJXEUXmIhHgLU2tyIUCtP4awxwHIfx48dDLBbj8OHDF11GUSTiMGKkHvW1Lvh8wTjVkpDkQgGWxFU8E5yaGqILTND4ayzI5XKMHz8ePp8PR44cAWOsx+PzC/RgjOEsdROTYYoCLIkrl8sFqVQKuVwueFmNdW7IFVKkaYUva7gwGAzIy8tDS0sLLBZLj8easjWQyaS06AQZtijAkriJLjCRlpYm+AITjDE01rthylTHZTGL4SQ/P58fj432SHRFLBYhb6QOdRYnAv6+7cxDyFBAAZbEjdfrRTAYjMv4q9Puhd8fhJESnGJOJBKhqKgIEokEVVVVCAa7H2MdMUqPSCSCs2eom5gMPxRgSdxE57/GY/zVcm7LtGyz8GUNRzKZDEVFRfD7/fj888+7nR+bnZsGaYqEuonJsEQBlsSN0+kEx3FQqYTf9PxstR2pKhl0BuE3ExiudDodCgsL4XQ6cfTo0S6TnqLdxJYzDsomJsMOBVgSNy6XC2q1WvAFJvy+EBrr3cgdoaPxV4Hl5OQgOzsbjY2NqKmp6fKY0WMzEIlEcOo4zYklwwsFWBIXoVAIra2tcRl/rT3rAGMMufk6wcsa7jiOQ2FhIfR6PU6fPo2mpqYLjsnM0UClluHEFxc+R8hQRgGWxEU81x8+W22HRCJGZg7Nf42HaNJTamoqjhw5ckFmMcdxKBxnhLWlFTZra4JqSUj8UYAlcWG3t2eRCp3gFIkwWGocyDanQSKhj3e8SCQSTJgwARKJBJ9//jm8Xm+n50ePzQAAHP+iORHVIyQh6BuIxIXNZoNKpYJMJhO0nKZ6NwL+EHJHUvdwvMnlckyYMAGRSAQHDx5EIPDlTjoqjQxZOWk4eawF4fDFd+QhZCgQNMBu3boVRUVFKCwsxPLly7tcv7S7Y6qrqzFr1iykpqbizjvvFLKaRGA+nw+tra3Q6/WClxWdb2nO0wpeFrmQWq1GcXExfD4fDh06hHA4zD83enwG/L4gzlbTnFgyPAgWYMPhMCoqKrBp0yacOHECHo8HGzZs6PUxGo0Gv/3tb/Hkk08KVUUSJzZb+xxIg8EgeFlnq+1IN6qgTKXt6RJFr9dj7NixcLvdOHz4MD9HdsRIPaQpEhw/Qt3EZHgQLMDu3r0bZrMZxcXFAICKigps3ry518fo9XpMnz49LmvWEmHZbDZIJBKo1cKuquRy+uB0eJE7grqHEy0zMxOjRo2CzWbj58hKpGKMKjSgtsaBtlbaiJ0MfYIFWIvFgtzcXP5+Xl7eBYuD9+aYi1m9ejWKior4WzSZhiSHSCQCu90OnU4HkUjYIf9o1yNNz0kOubm5yMnJQWNjI06fPg0AKByXAcYYTh5rSXDtCBGeoN94HSf5d7e1VW+O6cnKlStRVVXF33Q6+nJNJk6nE+FwOG7dw0plCvTptHpTMojOkc3IyEBNTQ0sFgsyTCqkaRU4caS5X3/vhAwmggXY3NzcTiu7WCwWmM3mPh9DBrfo+KvQCU4BfwiN9S7k5tPqTcmE4ziMGzcOaWlpOHHiBJqamjB6XAYc9jY0N3oSXT1CBCVYgC0vL0dtbS2qqqoAAOvWrcPChQv7fAwZ3KxWK9RqNVJShE06qj3rRCRCqzclI7FYjAkTJkClUuHIkSPQGyXgOA5HDjcmumqECEqwACsWi7F27VosWrQIhYWFUCqVWLJkCfbs2YNrrrmmx2MAoK2tDWazGffddx/+9a9/wWw244MPPhCqukQAPp8PbW1t8ZmeU22HWCxCFq3elJSiC1HIZDKcOn0M2bkqnD7eglaPP9FVI0QwHBtiAyFFRUV8i5gkVl1dHY4dO4ZLLrlE0BWcQqEIXn5uL4yZalx17TjByiED19bWhv3796PNE8aZYyJMuMSMKTPyE10tQvqtp5hDKzkRwVitVkgkEsHXHz5zyoaAP4TCc8vxkeSlVCoxYcIEyJUcRFIvjnzeQNvYkSGLAiwRRCQSgcPhgF6vFzzp6FhVI+QKKfJoecRBQaPRoKSkBMYsMWw2O6oO1CW6SoQIggIsEYTD4UA4HBZ8/NXp8KKhzoXR4zIgFtPHebDQ6XSYPK0EciXw6cdH4fdTK5YMPfSNRAQRr+k5x6ra9xgdU2QStBwSe0ajEZOnF8DrDeD9d3fzSyoSMlRQgCWCsNlsgk/PCYUiOP5FM7Jy0qBJoyU1B6NJl42G0aTFqaMOfP75YQqyZEihAEtirrW1FW1tbYKv3lRz2ga/P4ixxdR6Haw4jsPUmWMg4mQ4cbQRR44coSBLhgwKsCTmamtrAbQv+C6ko4ebKLlpCCgYkw5DuhYeuwyNjY385gCEDHYUYElMhcNhNDY2wmAwCLoTUntyk5OSm4YAsViE4tIshIMSpIgNaGxsb8lSkCWDHX0zkZhqbGxEOBxGdna2oOVEk5tGjzcKWg6Jj/ElJqSqZaitDiHTlEVBlgwJFGBJzDDGUFdXB7lcLmj2cDj8ZXJTmlYhWDkkfiRSMabMyEerx49Wp4Lf5o7GZMlgRgGWxIzb7YbH40FWVpagi0ucOUXJTUNR3kgdzHk6fF5Zj4z0HD7IHj58GOFwONHVI6TPKMCSmKmtrQXHccjKyhKsjEiE4eDeWigouWnI4TgOU2bmg+OAXR9Xo6CgAPn5+bBaraisrEQgEEh0FQnpEwqwJCaCwSCam5uRkZEh6NzXo1WNsNvaMGlKHiU3DUGaNDkmXJKNOosTZ07ZkZ+fj7Fjx8Lj8WD//v3wer2JriIhvUbfUCQmGhoaEIlEBE1u8vtC2L/LAr0hFYXjaGH/oWrCpByoNXJ89kk1goEwsrKyUFJSAr/fj3379sHlciW6ioT0CgVYMmDR5CalUinotnSVeyzw+4OYMiMfIpGwGwiQxJFIRJgyIx9trQFU7rEAAAwGA8rKygAA+/fvh8VioQxjkvQowJIBs9vt8Hq9yM7OFiy5yWFv39psxCgDMmlT9SEvN1+HESP1+LyyHjXVdgDtu/BceumlUKvVOHHiBA4fPoxQKJTgmhLSPQqwZEAYY7BYLBCJRIKu3LT7kzPgOA6XTc8TrAySXC6fWwCNVo4P/+84bNZWAIBcLkdZWRny8vLQ0tKCPXv2UJcxSVoUYMmANDc3w2azwWw2QyKRCFKG5YwDlho7ikuzoNbQov7DhUwuwZXXjIWI4/D+/47C29aeRSwSiTBq1ChMmDABoVAI+/fvx6lTp2gqD0k6FGBJvwUCARw7dgxKpRIjRowQpIxwOILPPqmGQpmCiZNyBCmDJK80rQJzvzoGba0BfPD2MYRCXy46YTAYUF5eDp1Oh5qaGnz22WdoamqisVmSNCjAkn47fvw4QqEQxo4dC7FYHPPzM8bw2Sdn4HR4cenUPEhTYl8GSX7Z5jRMmzUSzY1u7Nh2qlMAlcvlmDhxIiZMmACO41BVVYUDBw7A4/EksMaEtBOmT48MeU1NTWhubkZubq5gmcOH9tfhyOcNKBibgcKx6YKUQQaHscUm2G1efHGoHgqlFJdOzeuUSW4wGKDVanH27FnU1NRgz549MBgMyMvLg0ajEXRlMUK6QwGW9FkwGMTx48ehUCiQn58vSBknjjZj784a5ORqcfmcUfQFSTD58hHwtgXweWUdHDYvZl9ViBTZl19hYrEY+fn5yMzMxNmzZ1FfXw+r1QqNRgOz2Yz09HSIRNRpR+KHPm2kz44fP45gMIhx48YJ0jVcd9aBT7aehCE9FXOvHkMrNhEAgEjEYc5XRuOSy3JhqbHjzX9/Doet7YLj5HI5Ro8ejWnTpiE/Px9erxdVVVXYuXMnjh8/DpfLReO0JC6oBUv6pLa2Fk1NTTCbzYJ0DVubW/HBO8egTJXhymvH0bgr6YTjOJRdZoY+XYmP3j+B//77c8y6ajTy8i9cl1oqlSI/Px+5ubloampCY2MjamtrUVtbC7lcDqPRCIPBALVaTS1bIgiODbGfckVFRaiqqkp0NYacSCSCU6dOwWKxQK1Wo6ysLOat1+qTVuz48DTAgGtvLKat6EiPHLY2fPD2MbicXowsTMclk80X/cz4/X40NTWhqakJbrcbQHvXsk6n428KhYKGJEiv9RRzKMCSiwqFQjh8+DDsdjuMRmPMs4a93iB2fVyN0ydaoE6TY+5XxsCQkRqz85OhK+APYc+nNTh+pAmMAYVjM1BWboZKI7voa30+H+x2O2w2G+x2O78qlEQigUajgVqt5v8rlUqHXdCNRCKdbgD490AkEoHjOIjF4mH3vpyPAizpt7a2Nhw6dAherxejRo1Cbm5uTP+gqk9a8elHp+HzhlA0MROXTsmFRErdwqRvXE4fKndbcPJYC0QiDqPHZWBkoQGmbE2v1q1mjMHtdsPhcMDlcsHtdsPv9/PPSyQSKJVKKJVKKBQKyGQyyGQypKSkICUlBRKJJGkDTTgcRigU4m/BYLDTLRAIXPB4OBzu1Tg1x3GQSqX8TSaTQS6XQ6FQQC6XQy6XQyaTJe17EwsJC7Bbt27FypUrEQgEMGvWLDz77LMXrPbT0zEPPvggNm/eDJFIhN/85jdYtGjRRcukABsbHo8HdXV1aGxsBACMHz8e6emxmSoT8IdQfcqGk0eb0VDngkarwIy5BTBlqWNyfjJ8OWxt2L/bguqTNgAMMln7vsF5o/TIytFA2ocfb36/Hy6XC62trWhra+Nv0dZcRxzHQSQSQSwW87fouC7HcfytK70JPl0dwxi74BaJRBAOh/lWZ/TfPRGLxXyAlEgk/H+j1yMSifhrOb+s7oL1+eeP/jhJTU3t9ENlKATehATYcDiM0aNH480330RxcTG+8Y1vYP78+bjjjjt6dcx7772HX/3qV9iyZQsaGxsxdepUVFVVQa3u+UuYAmz/hUIhNDc3o66ujh+f0uv1GDVqFFQqVb/PyxiDty2IpgY3Th23wnLGjnA4AoVCitFFRpReaoZEQkkmJHa83iDOVttx5pQNdWed54IMB61OAX2GEob0VBjSU6HWyKFIlfY6U50xBr/fj0AgcMEtEokgFAp1CmzRr9doUOrqfP3BGOsUtKMBvuMtGuijQbPjv1NSUvigGusEr2AwCJ/PB6/XC5/Ph7a2Nv5HSsflLEUiERQKRaeAG70Npi75nmKOYFnEu3fvhtlsRnFxMQCgoqICf/7znzsF2J6O2bx5M5YtWwaJRIKcnBzMmDED7733Hm688UahqjwkdfzF2bGbKBQKIRAI8B/+1tZWvktMJpNhxIgRyMrKglze9dq/jDGEwwyRcAThCEMoEIbPH4LfF70F4bT74LC3wW71wu8PAgAkUjHyCw0oGJOOrJw02naOCEKhkGLMeCPGjDciEAih9owDTY0eWJtbcfa0HaeOtXQ4mkOqKgWpqhQoU1Mgk0vabzIJUmQSpKSIIZaIIJWIIZaKIBGLIBJLIU+RQangIBK139oDHsB1/PcgCRKxFA3c5zeGoj9OOvYItLa2wm63o7m5udOxYrG4Uxd89N8SiQQSiYT/sRBtaUdv0R8ayfK+CxZgLRYLcnNz+ft5eXmwWCy9PsZisXQKpl29XkjPPbsVTrsvbuX1Vfe/exn/H3aRI6PEYjEkYgnEEjFSpClISZHgdJUVgBXs3IkYY2AAWISBMVy02wlo/3JJ0yqQZdZAp1dCn65EtjmNxlhJXKWkSDBydDpGjm4f4mCMweX0wW5tg8fth8cdQKvHj1a3H411Lvj9F+9W7RsO7Y3E9qDLP8pxABc9AgDH4YKwwD/fy4Bx3mFJEmd6xuSIsPZWfzgURigcRjgcQCTsa+8NiETAWH/+f5x717jOj0V9976rIJUKO1NV0LN3/BXRXVdIT8f05vWrV6/G6tWr+ft2u71fdT2fMVMNhVIak3MJ58K/ni/fsugf85e/pkUi8blf2yKIRO3dRykpUnCc6MLXd/zD5gBRtCtK1H4usVgEsZiDSCyCSMRBKhV3+uUvk0ugUstokQiSdKI//Lqb0tPe2xNBwB+CzxtCKBRGMBhBOBRBKBRGKNjea8MiDOFwBJEIQyRyrqco0rHXCGj/2vry8fZ7AM4937FM/t8X/KOLOnb15HkPDaX0VcYi597rMB90I+H2wMsYQ4Sxcz/+GQD25ft+7r9fnufLc8Zj7rNgATY3Nxc1NTX8fYvFArPZ3OtjunpuypQpF5SzcuVKrFy5kr9fVFQUk/rPX1Aek/MQQgaX9sxYMaRSMVJVF5/uQ0h3BAvh5eXlqK2t5Qd/161bh4ULF/b6mIULF+K5555DOBxGXV0dtm/fjq985StCVZcQQgiJKcECrFgsxtq1a7Fo0SIUFhZCqVRiyZIl2LNnD6655poejwGAq666ClOmTMHYsWMxe/ZsPPnkkxfNICaEEEKSBS00QQghhPRTTzGHMlAIIYQQAVCAJYQQQgRAAZYQQggRAAVYQgghRAAUYAkhhBABUIAlhBBCBEABlhBCCBEABVhCCCFEAENuoQmNRnPBmsf9ZbfbodPpYnKueKO6JwbVPTEGa90Ha70BqnuUxWKBy+Xq8rkhF2BjaTCvCkV1Twyqe2IM1roP1noDVPfeoC5iQgghRAAUYAkhhBABUIDtQcd9ZgcbqntiUN0TY7DWfbDWG6C69waNwRJCCCECoBYsIYQQIgAKsIQQQogAKMB2YevWrSgqKkJhYSGWL1+OUCgU9zrcc889MJvNkEgknR5/8MEHUVhYiDFjxuDVV1/lHz979ixmzpyJMWPGYPbs2airq+Ofe+mllzBmzBgUFBTgoYce4h8PBoNYtmwZCgsLUVxcjI8++igmdT979iyuuOIKjB8/HiUlJXj44YcHVf2vuuoqlJaWYuLEiVi0aBE/x20w1D3qu9/9bqfPzmCoe35+PoqLi1FWVoaysjJ+GsVgqLvH48HSpUsxZswYjBs3Dn/7298GRd3r6ur497usrAyZmZm44YYbBkXd33nnHb7e06dPxxdffJF89Wakk1AoxEaOHMk+//xzxhhjN910E1u3bl3c6/Hxxx+zhoYGJhaL+cfeffddNnPmTBYMBpnFYmFms5m5XC7GGGO33HIL+9vf/sYYY2z16tVs6dKljDHG7HY7M5vNrK6ujgWDQTZt2jS2ZcsWxhhjf/vb39gtt9zCGGPswIEDrKCggIXD4QHXva6uju3evZsxxpjf72ezZs1ib7zxxqCpv8Ph4P997733slWrVg2aujPG2EcffcSWLl3Kf3YGS91HjBjBzp492+mxwVL3b33rW+zxxx9njDEWiURYY2PjoKl7R1dccQXbuHHjoKh7bm4uq6qq4s+/aNGipKs3BdjzfPrpp2zmzJn8/XfeeYd97WtfS1h9OgbYb3/72+wf//gHf/+b3/wme/XVV1kkEmFpaWnM6/UyxhjzeDxMq9Uyxhj717/+xZYsWcK/Zs2aNezuu+9mjDF29dVXsw8++IB/burUqWzPnj0xv4a7776bPfPMM4Ou/uFwmH37299mq1atGjR19/l8bPr06aypqYn/7AyWuncVYAdD3V0uF8vKymLBYHDQ1b2j2tpalpaWxlpbWwdF3fPy8tjOnTsZY4w98cQT7J577km6elMX8XksFgtyc3P5+3l5ebBYLAms0Ze6q5vVakVqairkcjkAIDU1FSkpKXA6nT1eTzyu1Wq14vXXX8eVV145qOq/YMECmEwmfPHFF7j//vsHTd0fffRRVFRUICMjg39ssNQdAK677jqUlpbi4YcfRigUGhR1P3XqFEwmE+6++25MmjQJ119/PaqrqwdF3TvauHEjvv71r0OpVA6Kum/YsAHXXnstcnNz8Y9//AOPPPJI0tWbAmwXOI7j/82SbBZTd3Xr+HhPz51/PUJeq9/vx6JFi3Dfffdh/PjxPZaXbPX/z3/+g4aGBkydOhV/+ctfeiwrWep+8OBB7Nq1C3fccccFzyV73QFg+/bt2L9/P7Zv345Dhw7hySefHBR1DwaDqKysxPXXX499+/bhuuuuw/LlywdF3Tt64YUXcNttt120rGSoezgcxmOPPYatW7fi7NmzePDBB7F06dKkqzcF2PPk5uaipqaGv2+xWGK2ecBAdVc3g8EAj8cDn88HAGhra0MwGERaWlqP1yPktYbDYSxevBjl5eW49957B139AUAsFmP58uV4/vnnB0XdP/nkE1RVVWHkyJHIz89HOBxGfn7+oKg7AP4carUa3/rWt7Bz585BUffc3Fzo9XrMnz8fAHDrrbdi3759g6LuUYcOHUJLSwvmzZvXY1nJUvf9+/fD5XJhwoQJAIDbbrsN27ZtS75697ozeZgIhUJs1KhR7PDhw4wxxm6++eaEJDlFdRyDfe+999isWbNYKBRitbW1LDc3lx/Av/XWW9mzzz7LGGPsL3/5Cz+A73A4WG5uLquvr2fBYJBdfvnl/AD+s88+yxYvXswYY+zQoUOssLAwZkkTy5cvZ3fccQeLRCKDqv5Op5PV1dXx93/961+zm2++eVDU/XzRz85gqLvH42FOp5MxxlgwGGTLli1jP//5zwdF3RljbNasWXxi3+uvv86mT58+aOrOGGMPPPAAe+CBB/j7yV73uro6ZjAYmMViYYwx9sYbb7BLL7006epNAbYLH3zwARs/fjwrKChgd9xxxwXJC/Fw1113sZycHAaA5eTksLvuuosx1v6HUFBQwAoLC9krr7zCH19TU8NmzJjBRo8ezWbOnMl/8BhrH8QvLCxko0aNYj/+8Y/5xwOBAFu6dCkrKChg48ePZ9u2bYtJ3bdv384AsJKSElZaWspKS0vZ008/PSjqX1NTw8rLy1lJSQmbMGECu+mmm1hDQ8OgqPv5Ov44S/a6nzx5kpWWlrIJEyawoqIi9q1vfYu1tbUNirozxtjhw4fZ1KlT2YQJE9jMmTP57NbBUPdwOMzMZjM7cOBAp8eTve7r1q1jRUVFbOLEiWz69OmssrIy6epNSyUSQgghAqAxWEIIIUQAFGAJIYQQAVCAJYQQQgRAAZYQQggRAAVYQgghRAAUYAkZoCeffBITJkxAaWkpSkpK8OKLLwIA1q9fjzvvvDPBtYuv6upqFBYWxvScV111FWprazs9tmrVqk73P/30U1RUVMS0XEIGigIsIQOwa9cuvPjii9i9ezcOHDiAXbt2YfLkyYmu1pCxZcsWZGdnIycnBwDw1ltv4dJLL8WaNWswefJkbNu2DQAwbdo0HD16FKdPn05gbQnpjAIsIQNQW1uLtLQ0pKSkAGhfRLxjC665uRkLFizAmDFj+LVSAeDw4cOYOXMmJk6ciFmzZuHo0aMAgNLSUpw5cwYAOi0z+cILL+Cee+4BAFRWVmLWrFkoLS3FJZdcgsOHD8Pr9eKqq67CpZdeipKSEvzud7/jy3rkkUdQXFyMiRMn4qqrruIf/9Of/oTJkyejtLQUd955J4LBYKdrO3nyJL+GNNC+5m52djasVivefvttTJ06FZMmTcKUKVOwb9++C96bbdu24corr+Tv/+pXv+Jbnl6vFytWrMDkyZMxYcIE/PnPf+7y/V2/fj2+8Y1v8PcrKiqwdu1arFixAu+99x4KCgr452644QZs2LChy/MQkggUYAkZgK985StwOBwYOXIkli5dildeeaXTguB79+7FP//5T1RVVeHgwYP45JNPAABLlizBAw88gIMHD+L73/8+br/9dgDAnDlzsG3bNrhcLjDGsHPnTgDAhx9+iNmzZyMYDOLGG2/EL3/5S77FPGLECKSkpGDTpk3Yu3cv9u3bh1deeQVHjhyB3W7Hv/71Lxw6dAgHDx7EK6+8AqC9Zbhr1y7s3LkTBw4cQEpKCv7+9793uraCggJotVrs3bsXAPDuu++ivLwcBoMBU6dOxY4dO7Bv3z789a9/xcqVK/v0vj322GO45JJL8Nlnn2H37t38e3S+jz/+GOXl5fx9qVQKp9MJANBqtZ12Opk8eTI+/vjjPtWDECFRgCVkAFQqFXbv3o2NGzdi9OjRePDBB3HXXXfxz8+dOxcGgwESiQSXXHIJTp8+DZfLhbNnz2LBggUAgBtvvBHHjh1DW1sbZs+ejW3btmH79u246qqrIJPJYLfb8dFHH/EtXa1Wi9mzZwMAUlJSoFKpwBjDo48+itLSUpSXl+PkyZP4/PPPodFooNFoUFFRgZdeeglisRhAe1frxx9/jEmTJqGsrAxbtmzBqVOnLri+xYsXY+PGjQDatzNbvHgxAKChoQHXXXcdSkpKsHz5chw6dKhP79tbb72FZ555BmVlZZg6dSrsdjvfiu+ovr6+09Z7r7zyCn7961/jT3/6E2699VZUV1fzz2VmZqKurq5P9SBESJJEV4CQwU4sFmPGjBmYMWMGrr76alxxxRVYu3YtAEAmk3U6LhQKdbnlVfSxWbNm4Yc//CGMRiPmzp0LqVSKl19+GRKJBEajEY2NjV3WYePGjTh58iQ+++wzyGQy3HjjjfD5fBCLxfj000/x0Ucf4e2338ZPfvITVFZWgjGGe++9Fz/4wQ96vLabb74Z5eXlWLVqFbZt24Z169YBAL773e/irrvuwi233AK32w2dTnfBayUSCSKRCH/f7/fzAZ4xho0bN6KsrKzH8uVyOQKBAL+P59SpU/H+++/joYcegl6vR0VFBT744AMA7d3OCoWix/MREk/UgiVkAI4ePYojR47w9ysrKzFy5MgeXxPdIuuNN94AAPz73//G2LFjoVQqkZ6ejtTUVLz66quYMWMG5syZg8cee4xvsY4bNw4OhwMffvghACAQCMDj8cDlciE9PR0ymQynT5/G//3f/wEA3G43rFYrrrjiCjzxxBOQy+WwWCyYP38+/vnPf8JutwMAHA5HlwlCGRkZKCkpwfe+9z1cffXVfABzuVz8tl3PPvtsl9eZn5+PI0eOwOv1wuv14u233+afmz9/Pp5++mmEw2EAwIkTJ+B2uy84R3FxMY4fP87fP3z4MID2lvtll10Gl8vFP3f06FGUlJT0+N4TEk/UgiVkADweD77//e/DZrNBIpFAq9Xi+eefv+jrNmzYgBUrVuBnP/sZtFotnnvuOf652bNnY8+ePVCpVJg2bRoaGhr4ACuVSvHvf/8bd999N1wuFyQSCb9R9qZNm1BWVoZRo0Zhzpw5AACn04kbb7wRXq8XkUgE119/PYqLi1FcXIwVK1bw55VIJHj66ae7/HGwePFiLF68GO+99x7/2C9/+UvccccdyMzMxNe+9rUur9FsNmPZsmWYOHEiRo8ejeLiYv65hx9+GA888ABKS0vBcRwMBgNeffVVqNXqTudYsGAB3n//fX7fz4ceeghWqxVnz57Fa6+9hqeffpo/9v3338d111130feekHih3XQIIUkrmoW9Y8cOcBzHP75q1apOc2E9Hg9mz56NnTt3QiqVJqCmhFyIuogJIUkrIyMDP/7xj1FfX9/p8WgLPaq6uhpPPfUUBVeSVKgFSwghhAiAWrCEEEKIACjAEkIIIQKgAEsIIYQIgAIsIYQQIgAKsIQQQogAKMASQgghAvh/xfC6Ac4VLUIAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "prior2.plot(color='C5', label='Prior 2')\n", "posterior2.plot(color='C15', label='Posterior 2')\n", "\n", "decorate_value('Prior and posterior distribution of showcase value')" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.773670Z", "iopub.status.busy": "2021-04-16T19:35:43.772931Z", "iopub.status.idle": "2021-04-16T19:35:43.776721Z", "shell.execute_reply": "2021-04-16T19:35:43.777489Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "31047.62371912251 34305.20161642469\n" ] } ], "source": [ "# Solution\n", "\n", "print(prior2.mean(), posterior2.mean())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Probability of Winning\n", "\n", "Now that we have a posterior distribution for each player, let's think about strategy.\n", "\n", "First, from the point of view of Player 1, let's compute the probability that Player 2 overbids. To keep it simple, I'll use only the performance of past players, ignoring the value of the showcase. \n", "\n", "The following function takes a sequence of past bids and returns the fraction that overbid." ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.782090Z", "iopub.status.busy": "2021-04-16T19:35:43.781438Z", "iopub.status.idle": "2021-04-16T19:35:43.785129Z", "shell.execute_reply": "2021-04-16T19:35:43.785964Z" } }, "outputs": [], "source": [ "def prob_overbid(sample_diff):\n", " \"\"\"Compute the probability of an overbid.\"\"\"\n", " return np.mean(sample_diff > 0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's an estimate for the probability that Player 2 overbids." ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.791906Z", "iopub.status.busy": "2021-04-16T19:35:43.791267Z", "iopub.status.idle": "2021-04-16T19:35:43.798095Z", "shell.execute_reply": "2021-04-16T19:35:43.797335Z" } }, "outputs": [ { "data": { "text/plain": [ "0.29073482428115016" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prob_overbid(sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now suppose Player 1 underbids by \\\\$5000.\n", "What is the probability that Player 2 underbids by more?\n", "\n", "The following function uses past performance to estimate the probability that a player underbids by more than a given amount, `diff`:" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.803290Z", "iopub.status.busy": "2021-04-16T19:35:43.802451Z", "iopub.status.idle": "2021-04-16T19:35:43.807092Z", "shell.execute_reply": "2021-04-16T19:35:43.806213Z" } }, "outputs": [], "source": [ "def prob_worse_than(diff, sample_diff):\n", " \"\"\"Probability opponent diff is worse than given diff.\"\"\"\n", " return np.mean(sample_diff < diff)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's the probability that Player 2 underbids by more than \\\\$5000." ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.812801Z", "iopub.status.busy": "2021-04-16T19:35:43.812084Z", "iopub.status.idle": "2021-04-16T19:35:43.820076Z", "shell.execute_reply": "2021-04-16T19:35:43.819320Z" } }, "outputs": [ { "data": { "text/plain": [ "0.38338658146964855" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prob_worse_than(-5000, sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And here's the probability they underbid by more than \\\\$10,000." ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.826928Z", "iopub.status.busy": "2021-04-16T19:35:43.826246Z", "iopub.status.idle": "2021-04-16T19:35:43.830095Z", "shell.execute_reply": "2021-04-16T19:35:43.830762Z" } }, "outputs": [ { "data": { "text/plain": [ "0.14376996805111822" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prob_worse_than(-10000, sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can combine these functions to compute the probability that Player 1 wins, given the difference between their bid and the actual price:" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.837850Z", "iopub.status.busy": "2021-04-16T19:35:43.837006Z", "iopub.status.idle": "2021-04-16T19:35:43.840521Z", "shell.execute_reply": "2021-04-16T19:35:43.839477Z" } }, "outputs": [], "source": [ "def compute_prob_win(diff, sample_diff):\n", " \"\"\"Probability of winning for a given diff.\"\"\"\n", " # if you overbid you lose\n", " if diff > 0:\n", " return 0\n", " \n", " # if the opponent overbids, you win\n", " p1 = prob_overbid(sample_diff)\n", " \n", " # or of their bid is worse than yours, you win\n", " p2 = prob_worse_than(diff, sample_diff)\n", " \n", " # p1 and p2 are mutually exclusive, so we can add them\n", " return p1 + p2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's the probability that you win, given that you underbid by \\\\$5000." ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.846964Z", "iopub.status.busy": "2021-04-16T19:35:43.846152Z", "iopub.status.idle": "2021-04-16T19:35:43.848940Z", "shell.execute_reply": "2021-04-16T19:35:43.849568Z" } }, "outputs": [ { "data": { "text/plain": [ "0.6741214057507987" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_prob_win(-5000, sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's look at the probability of winning for a range of possible differences." ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.900383Z", "iopub.status.busy": "2021-04-16T19:35:43.880078Z", "iopub.status.idle": "2021-04-16T19:35:43.945743Z", "shell.execute_reply": "2021-04-16T19:35:43.945174Z" } }, "outputs": [], "source": [ "xs = np.linspace(-30000, 5000, 121)\n", "ys = [compute_prob_win(x, sample_diff2) \n", " for x in xs]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's what it looks like:" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:43.983597Z", "iopub.status.busy": "2021-04-16T19:35:43.976147Z", "iopub.status.idle": "2021-04-16T19:35:44.200342Z", "shell.execute_reply": "2021-04-16T19:35:44.199432Z" }, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "\n", "plt.plot(xs, ys)\n", "\n", "decorate(xlabel='Difference between bid and actual price ($)',\n", " ylabel='Probability of winning',\n", " title='Player 1')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you underbid by \\\\$30,000, the chance of winning is about 30%, which is mostly the chance your opponent overbids.\n", "\n", "As your bids gets closer to the actual price, your chance of winning approaches 1.\n", "\n", "And, of course, if you overbid, you lose (even if your opponent also overbids)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** Run the same analysis from the point of view of Player 2. Using the sample of differences from Player 1, compute:\n", "\n", "1. The probability that Player 1 overbids.\n", "\n", "2. The probability that Player 1 underbids by more than \\\\$5000.\n", "\n", "3. The probability that Player 2 wins, given that they underbid by \\\\$5000.\n", "\n", "Then plot the probability that Player 2 wins for a range of possible differences between their bid and the actual price." ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.207596Z", "iopub.status.busy": "2021-04-16T19:35:44.206660Z", "iopub.status.idle": "2021-04-16T19:35:44.210043Z", "shell.execute_reply": "2021-04-16T19:35:44.210868Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "0.24600638977635783" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "prob_overbid(sample_diff1)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.218842Z", "iopub.status.busy": "2021-04-16T19:35:44.217621Z", "iopub.status.idle": "2021-04-16T19:35:44.221106Z", "shell.execute_reply": "2021-04-16T19:35:44.222054Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "0.3993610223642173" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "prob_worse_than(-5000, sample_diff1)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.230669Z", "iopub.status.busy": "2021-04-16T19:35:44.229367Z", "iopub.status.idle": "2021-04-16T19:35:44.233645Z", "shell.execute_reply": "2021-04-16T19:35:44.234317Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "0.6453674121405751" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "compute_prob_win(-5000, sample_diff1)" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.252935Z", "iopub.status.busy": "2021-04-16T19:35:44.252459Z", "iopub.status.idle": "2021-04-16T19:35:44.313662Z", "shell.execute_reply": "2021-04-16T19:35:44.314024Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "xs = np.linspace(-30000, 5000, 121)\n", "ys = [compute_prob_win(x, sample_diff1) for x in xs]" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.357956Z", "iopub.status.busy": "2021-04-16T19:35:44.339391Z", "iopub.status.idle": "2021-04-16T19:35:44.564128Z", "shell.execute_reply": "2021-04-16T19:35:44.563691Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAABDPklEQVR4nO3deVyU5f4//tfMsImCkoqiM7iwKDvouCsuae7mQmkqbmhZ1udXWudYmZV5TvXt5KmTtGipJ7TFyizLNBdwQXPHDVcEYUBFEVlElhmu3x/EfZxAHOS+GQZez8ejx8OZueee9+WQL67rvu7rUgkhBIiIiEhWamsXQEREVB8xYImIiBTAgCUiIlIAA5aIiEgBDFgiIiIFMGCJiIgUwIAlskFr1qxBaGiotcsgoiowYInqqAEDBsDR0RFNmjSBm5sb+vfvj0OHDlm7rAqKioowZ84cdOjQAS4uLujcuTNWrVpl7bKIrI4BS1SHvfvuu8jPz8eVK1fQpUsXjB071qr1mEwm/HVtGqPRCA8PD2zfvh25ublYs2YNFixYgN9//91KVRLVDQxYIhvg5OSEqKgoZGRkICsrq8Lry5Ytg4+PD1xcXODl5YXly5dLr40bNw5vvvmm2fFPPfUUnnnmGQBASUkJFi9eDC8vLzRv3hxjxoxBRkaGdKxKpcLy5csRGBgIZ2dn5Ofnm52rcePGWLJkCby8vKBSqdCzZ08MHDgQe/fulfOvgMjmMGCJbEBBQQE+//xztGvXDs2bN6/wert27bBz507k5ubi888/x0svvYT4+HgAQFRUFP773/9KPc/CwkKsX78eM2fOBAC8+uqriI+Px969e3HlyhX4+vpi0qRJZuf/6quv8PvvvyM3NxeNGzeustbCwkIcPHgQwcHBcjSdyGYxYInqsJdffhnNmjVDx44dcfbsWfz888+VHjdhwgTodDqoVCoMHDgQQ4cORVxcHABg+PDhKCoqwq5duwAAP/74I9q2bYtu3bpBCIGPP/4Yy5Ytg4eHBxwcHLB06VLEx8cjLS1NOv/f/vY3tGnTBo6OjlCr7/3PhhACs2fPho+PD8aPHy/fXwSRDbKzdgFEdG9vv/02nn/++fset27dOrz//vtITk6GEAIFBQXo0KEDAECj0WDatGlYs2YNBgwYgDVr1ki91xs3buD27dsIDw+HSqWSzufg4IC0tDTodDoAgKen531rEELg6aefxrlz57B9+/Yqg5ioIWDAEtm41NRUTJ8+HVu2bMGAAQNgZ2eHsWPHmk1GmjVrFrp06YKXX34Zu3btQkxMDACgefPmcHZ2xoEDB9C5c+d7fsb9wlIIgXnz5uHgwYPYsWMHmjZtKk/jiGwYf8UksnH5+fkQQsDd3R1qtRqbN2+uMIPXx8cHXbp0wcSJEzFs2DC4u7sDKAvOuXPnYsGCBdKQcFZWFr799ttq1fDss88iPj4e27Ztg5ubmzwNI7JxDFgiG+fv749XX30VgwYNQvPmzfHtt99izJgxFY6LiorC8ePHpeHhcm+//TZ69eqFQYMGwcXFBV27dq3WLTaXL1/Gxx9/jHPnzqFdu3Zo0qQJmjRpgrlz59a4bUS2TMUN14kaht27d+Oxxx6DwWCAvb29tcshqvfYgyVqAIqLi/H+++9jzpw5DFeiWsKAJarndu3aBTc3N9y4cQMvvfSStcshajA4RExERKQA9mCJiIgUwIAlIiJSgM0uNOHq6gqtVmvtMoiIqAEzGAzIzc2t9DWbDVitVovExERrl0FERA2Yv7//PV/jEDEREZECGLBEREQKYMASEREpgAFLRESkAAYsERGRAhQN2Oeeew5arRZ2dveerBwbGwt/f394e3tj1qxZMBqNSpZERERUKxQN2IkTJ+LIkSP3fN1kMiEqKgrfffcdLl68iPz8fGkjaCIiIlumaMD27dsXrVq1uufrhw4dglarRUBAAICy/So3bNigZElERES1wqrXYA0GA3Q6nfTY09MTBoPBihURERHJw+orOalUKunPVW3sEx0djejoaOlxdna2onURERHVhFV7sDqdDqmpqdJjg8Fwz/WF582bh8TEROk/Nze32iqTiKhBSErPxu07xdYuo96wasDq9Xqkp6dLawqvWrUK48ePt2ZJREQN0rXs2/j7pzux+UCStUupNxQN2KeeegparRYmkwlarRZPPfUUDh8+jBEjRgAANBoNVq5ciYiICHh7e8PZ2RmRkZFKlkRERJWIO3YZAgKFRbxVUi6KXoP97LPPKn1+8+bN0p8HDRrEXXGIiKxICIG4Y5cBAKVVzIWh6uFKTkREDVxiyg1k3roNACgtZcDKhQFLRNTAxR67DI2mLA5MDFjZMGCJiBqwwmIj9p0yoFsnD6jVag4Ry4gBS0TUgP1xOh1FJUb0D20HtUrFIWIZMWCJiBqw2GOX4drYEV18W0OtBkylpdYuqd5gwBIRNVBXsvJxKjkT4cGesNOoy3qwHCKWDQOWiKiBWh+bCBVUeKR7RwCAWs0hYjkxYImIGqDLV3Ow53gaBnVtj7YtXACAPViZMWCJiBqgddtOwc5OjccH+knPlfVgrVhUPcOAJSJqYBJTruPI+SsY0cMLLZo6S89reJuOrBiwREQNiBACa7edgrOTPcaFdzJ7Ta0CBK/ByoYBS0TUQAgh8HP8BZxLzcLYvp3g4uxo9rpazWuwcrL6hutERKS84hITPtt0FHHHLsOvXQuM6uVd4RiNWs37YGXEgCUiqudu5t7BO1/tQ1J6NoZ298KsESGw01QcwORKTvJiwBIR1XPLNxxGytUcPDO2Kx7u2uGex3GIWF68BktEVI+dvJSJ40nXMLaPb5XhCgAqFW/TkRMDloionhJCIOb3k2jSyAGP9vW97/HswcqLAUtEVE/9kZiOpPRsjA/vjMaNHO57vFrFxf7lxIAlIqqHTKZSfLXtNJq7NsLwHl4WvYdrEcuLAUtEVA/tOJqCjKw8TBzkDwd7jUXv4VrE8mLAEhHVI0IIbD2YhJW/JEDX0hUDQttZ/F72YOXF23SIiOqJEqMJK39JwI4jyfDVNcdLk3pCU8n9rvdSthaxScEKGxYGLBFRPVBYbMRb/92Ls6k3METfEVEjQ2BvZ9nQcDkuNCEvBiwRkY0rLjHhnXX7cDb1BqJGhmJEz4rLIFpCrS4bYiZ58BosEZENM5lK8e/1B3DyUiZmDA954HAFuBax3BiwREQ2SgiBj386goNnMxAxwA+je/vU6HwcIpYXA5aIyEYdT8pE3LHLGNrdC5MG+df4fFzJSV4MWCIiG/Xj7nNwdrLH1CGBUKlUNT4fe7DyYsASEdmgC4abOJWcieHdveDsZC/LOVVqFZiv8mHAEhHZoI17zsHeToORNbzueje1SsVJTjJiwBIR2Zj0G3k4kJiBQV3ao2ljR9nOq1aDQ8QyYsASEdmYjXvOAQDG9JGv9wpwLWK5MWCJiGzIzdw72HU8Fb2DtGj9UBNZz821iOXFgCUisiFbD12CyVSKcf06yX5u9mDlxYAlIrIRRlMpth9ORifP5ujg0Uz282vUanCOk3wYsERENuKPxHTcyi/EsO6WbaBeXWVDxExYuTBgiYhsxNaDl+Da2BG9Atoqcn4NV3KSFQOWiMgGXL6Wg8SU6xjctUO1t6GzlPrP1aC4o448GLBERDZg68FLUEGFIfoOin2GWl0WsCbOJJYFA5aIqI4rKCxB3LHL0Hf2gLtbY8U+p7wHy1t15MGAJSKq4+ISLqOoxIih3Tsq+jnlPVheh5UHA5aIqA4zmUrxc/x5aFu6ItS7laKfxR6svBiwRER12L5TBly/VYCxfX1l2ZKuKir2YGXFgCUiqqOEENiw5xyauzZCvxBPxT/vz3xlD1YmDFgiojrq2IVrSL2Wg9F9fGGnUf6fa16DlZei31hsbCz8/f3h7e2NWbNmwWg0Vjhmy5YtCA0NRWhoKHr37o0zZ84oWRIRkc34cc85NHZyUPTWnLvxGqy8FAtYk8mEqKgofPfdd7h48SLy8/MRExNT4bgnn3wSX3/9NRISEjBjxgwsXrxYqZKIiGxGYsp1JKZcx/CeXnBysKuVz9SoyyKB98HKQ7Fv7dChQ9BqtQgICAAAREVFYfny5Zg5c6bZcSqVCrm5uQCAnJwceHh4KFUSEVGdZrieix1HUnAiKRMpV2/BwV6DET29a+3zOUQsL8UC1mAwQKfTSY89PT1hMBgqHBcTE4ORI0eiUaNGaNy4MeLj4ys9X3R0NKKjo6XH2dnZ8hdNRGQlRlMp3li9B9l5d9C+dTOM6eOL8BBPNG3sWGs1cIhYXoqOO9w9pbyytS1NJhPefvttxMbGIigoCKtWrcK0adPw66+/Vjh23rx5mDdvnvTY399fmaKJiKzgwJkMZOfdwbPj9BjYpb1VatCwBysrxa7B6nQ6pKamSo8NBgO0Wq3ZMceOHUNubi6CgoIAAFOnTkVcXJxSJRER1VlbDyTBxdkRfYJ09z9YIdIQMXuwslAsYPV6PdLT05GYmAgAWLVqFcaPH292TNu2bXHu3Dmkp6cDKJtR7Ofnp1RJRER1UmpmLk6nXMfgru3hYK/MTjmW4BCxvBQbItZoNFi5ciUiIiJQXFyM8PBwREZG4vDhw1i8eDE2b94MDw8PvPfee3jkkUdgZ2eHJk2a4IsvvlCqJCKiOmnrgSSooMIj3ZRda/h+OMlJXopegx00aJDUgy2n1+uxefNm6fHMmTMrzCwmImoo7hSVIC7hMrr4tlZ0pxxLsAcrL67kRERkRbuPp6Kw2IhhPbysXQp7sDKrnbuXiYhIIoTA1Zu3cSLpGn7ccw6t3BojzEfZnXIswR6svBiwRES1KP9OMV5ftRspV28BAJyd7PH0o10V3ynHEtxNR14MWCKiWnToTAZSrt7CqF4+6BOkhVcbN2hqYSF/S3A3HXkxYImIatGR81fhaG+HyKFBtbJDTnVwLWJ51a1vl4ioHjOZSnE86RpCvVvVuXAFOMlJbnXvGyYiqqfOG26ioLCkTkxoqgwnOcmLAUtEVEuOnr8KAAjzbW3lSirHtYjlxYAlIqolR89fhWerpmjR1NnapVSKaxHLiwFLRFQLsnLvIOXqLXSto71X4H9DxKbSUitXUj8wYImIakHChT+Hh33qcMBKQ8RWLqSeYMASEdWCo+evopGjPTp5Nrd2KfdU3oMVTFhZMGCJiBRmNJUi4eI1hNTR23PK8TYdedXdb5qIqJ5ITLmBwmJjnb7+CvA2HbkxYImIFCSEwA+7zsLR3g76Th7WLqdK7MHKiwFLRKSghIvXcCo5E2P6+sK1saO1y6lSecCaTJxFLAcGLBGRQoQQWPv7Kbg2dsSjfXysXc59SUPE7MHKggFLRKSQ+JMGpFy9hYj+fmjkaG/tcu6Lt+nIiwFLRKQAo6kUX+84jZbNnPFItw7WLscinOQkLwYsEZECYo+m4OrNfDzxcADs7TTWLsciXItYXhbtB7tv374Kz7m6usLb2xtOTk6yF0VEZOtiEy6jRVNnhId4WrsUi3EtYnlZFLDz58/H0aNHERQUBCEETp06hZCQEFy7dg0rVqzAsGHDlK6TiMhm3MgpwLnULIzp4wvVn8OutoBrEcvLoiFiT09PHD58GEeOHMHRo0dx6NAhBAYGYufOnVi4cKHSNRIR2ZT4kwYAQJ9ArZUrqR7eBysviwL2zJkzCA4Olh6HhIQgISEB3t7eEPwiiIjMxJ9KQyu3xvBq62btUqqFk5zkZdEQsU6nw2uvvYYpU6ZApVIhJiYGrVu3htFotKnhDyIipV29mY+k9GyMD+9sc/8+8jYdeVnUg127di1yc3PxxBNPYNKkScjNzcXatWshhMDPP/+sdI1ERDZj3ynbHB4GuJuO3CzqwT700EP48MMPK33N09N2ZsgRESkt/qQBbZq7oF3rptYupdp4DVZeFgXsjRs3sHLlSiQnJ8NoNErPr1q1SrHCiIhsTfqNvLKVmwb42dzwMPC/+2C5FrE8LArYsWPHIjQ0FH379oVGYxs3TBMR1bb4k2kAgL5BOitX8mC4FrG8LArYvLw8LF++XOlaiIhs1pWsfPy09zy82rpB5+5q7XIeCIeI5WXRJKcBAwbg4MGDStdCRGSTSowmvP/tHzCVCjw7vpu1y3lgKpUKKqjAdSbkYVEP9pdffkF0dDTatm0LR0dHCCGgUqlw/vx5pesjIqrz/rvlJJKv3MK8cXp42mjvtZxKrWIPViYWBezOnTuVroOIyCbtO2XAbwcuon9oOwwMa2ftcmpMrVJxoQmZWBSw7drZ/g8NEZHcbuUX4tOfjqJtCxc8OTrMJmcO/5VazbWI5VJlwI4dOxYbN26Ej4+P2Q8Oh4iJiIA1v51AQWEJFk3rAycHi/ordZ5axSFiuVT5E/HJJ58AALZv314rxRAR2YrjF69hz4lUDO3uBV9dc2uXIxu1mkPEcqkyYD08PABwiJiI6G7FJSas2HQMzZo4YcrgAGuXIyv2YOVj0W06P/30E3x9feHk5AQHBwfY29vDwcFB6dqIiOqkH3afxdWb+Zg1MhSNG9WvfwvLerDWrqJ+sChg58+fj6+++gqFhYUoLi5GSUkJiouLla6NiKjOuZFTgB/3nEOYT2v0Dmhr7XJkp1GrUcqElYVFAduqVSvo9XqlayEiqvM2xV+AyVSKyEeC6sWs4b9Sq7gfrFwsmvYWHh6OefPmISIiAo6OjtLzvXv3VqwwIqK6Jq+gCNsOJ6Orr4dN7pZjCTUXmpCNRQF74MABAMCSJUuk51QqFRegIKIG5bcDSSgqMWJceCdrl6IYjVrNgJWJRQEbGxurdB1ERHVaYbERv+6/iE6ezeHXroW1y1EMV3KSj8V3Ru/fv7/CfrDTpk1TpCgiorpmx5EU5N8pxrh+9bf3CnCIWE4WTXKaMWMGnnnmGWzfvh179uzBnj17sHfv3vu+LzY2Fv7+/vD29sasWbPMwrlcfn4+pk2bBl9fX3Tu3BmfffZZ9VtBRKQgo6kUP8efh66lK/SdPKxdjqJUKt6mIxeLerD79+9HYmJitTZbN5lMiIqKwqZNmxAQEIDHH38cMTExmDlzptlx8+fPR2BgIL788ksIIXD9+vXqtYCISGFxxy7jRk4B/m9Ct3o5c/hu7MHKx6IebOfOnZGXl1etEx86dAharRYBAWWrnERFRWHDhg1mx+Tl5eGXX37B/PnzAZT95uTu7l6tzyEiUlJxiQnf7kyEtqUr+gbprF2O4tQqLvYvF4t6sCqVCsHBwRg4cKDZbTorVqy453sMBgN0uv/9MHp6esJgMJgdc+nSJbRq1QrPPvssDh48CJ1Ohw8//BDt27evcL7o6GhER0dLj7Ozsy0pnYioRn794yJu5t1B1KhQaDQW9UlsGtcilo9FATtu3DiMGzeu2if/6w48f1VSUoKEhAT885//xKefforPP/8cs2bNqvT2n3nz5mHevHnSY39//2rXQ0RUHfl3irFh91n4aB9CD7821i6nVnAtYvlYFLDTp0+v9ol1Oh1SU1OlxwaDAVqttsIxDz30EIYPHw4AmDx5Ml588cVqfxYRkRI27jmHgsKSertqU2XUahWMJRwilkOVAbt06VIsWrQIc+bMqfSHq6ohYr1ej/T0dCQmJsLf3x+rVq3C+PHjzY5p1aoVAgMDcfjwYej1emzbtk26ZktEZE1ZuXfwy/6LCPNpjYAOLa1dTq3RqNUwlVa844Oqr8qADQkJAQD07du32ifWaDRYuXIlIiIiUFxcjPDwcERGRuLw4cNYvHgxNm/eDKBsz9moqCjcvn0bzZo1w+eff/4AzSAikk9BYQne/WofTKZSTBkSaO1yapVapYLgNVhZqERlF0f/IisrC82b160Nhf39/ZGYmGjtMoionikuMWHpl3txOuU6nhvfDQPCGtZ+2G+u2Y2snDv4z/831Nql2ISqssiia7C9evWCk5MT+vfvjwEDBiA8PBwtWzacIRMiahiMplK8/+0fOJ1yHbNGhDa4cAW4FrGcLJpzfv78eWzZsgW9e/fG9u3bodfrea2UiOqdL35NwOFzV/D4QH+M7OVt7XKsgmsRy8eiHmxOTg6OHDmCQ4cOISEhAR06dEC/fv2Uro2IqNbsPZGG3w9dwsCw9nh8oJ+1y7EaruQkH4sCtnnz5ujWrRteeeUVvP3222aLTRAR2br0G3n4eOMR6NybYs6o0AZzS05l2IOVj0VDxBs3bkS/fv3wzjvvYMiQIXj11Vexbds2pWsjIlJccYkJ7397AAICCyb2gKODxZuM1UsqtQrMV3lY9JM0atQojBo1Cqmpqdi0aRPee+89vPvuu5XujkNEZCuEEFj5yzFcvnoLz43vBp27q7VLsjq1SsW1iGViUQ921qxZ8PHxwZgxY3D+/HksW7YMV69eVbo2IiJFfbX9NHYeTcEQfccGOWO4Mmo1OEQsE4t6sGPGjMH7778PNzc3peshIqoVP+45hw27z6JngBZPjg6zdjl1Btcilo9FATt27FiFyyAiqh1CCPx2IAlrfz+JEK9WeD6iG9Tqhjup6a/UahVMJgasHBr21XwialBOJ1/H2m2ncD4tC7665vjb5F6wt9NYu6w6hQtNyKfKgDUajbCzYwYTkW27fDUH67adwpHzV+DsZI8pQwIxqpcPHOwZrn/FIWL5VJme3bt3x9GjRzFjxgysWbOmlkoiIpJHZvZtfL3jNPYcT4OdnRpj+3bCuPBOaNLIwdql1VlqNRf7l0uVAVtYWIitW7di//792L9/f4VN03v37q1ocURED+p08nW8+d89EKUCD3dtj8cG+qFFU2drl1XnabiSk2zuux/shx9+iIyMDLzyyitmr6lUKuzcuVPR4oiIHkRxiQmf/HQETZwcsCQqHNqWvL/VUuo/V7ESQjToFa3kUGXAjh8/HuPHj8eiRYuwdOnS2qqJiKhGNuw5hytZ+XjhsR4M12oqn1FtKhWw0zBga8KiGUxLly7F77//jp07d0KlUmHQoEEYMmSI0rUREVVb+o08bNh9FiFerdAnSGvtcmxOeQ+2tFQAnANWIxat5LR06VK89tpr8PDwQOvWrbFo0SL84x//ULo2IqJqEULgs5+OQq1SYc7oMA5xPoDyHiyvw9acRT3Y9evX49ChQ9IuOk899RS6deuGV199VdHiiIiqY+fRFJxOuY4nBgfAo3kTa5djk8x6sFQjFvVghRBQq/936N1/JiKqC1Izc7HylwS0b90MY/t2snY5NkvFHqxsLOrBjhs3DgMHDsSUKVMAAGvXrsWECRMULYyIyFKFxUa8/80f0KhVeHFST9hp2Al4UOWrRprYg60xiwJ2yZIl6NatG+Li4iCEwMKFCzF69GilayMissjnvyTAcD0XLzzeg0PDNSRdg2XA1pjF6yCOHj2aoUpEdc6uhMuIPZaCR7p1RN8gnbXLsXmaPy8Bcoi45jiOQkQ2K+d2Eb749Tg8WzXFzOEh1i6nXuAkJ/kwYInIZq357TgKCkvw9KNduHC/THibjnwsCticnByl6yAiqpbjF69h9/FUPNK9I3x1za1dTr3BHqx8LApYf39/TJs2DXv27FG6HiKi+youMWHFpmNo1sQJUwYHWLucekXDHqxsLArYS5cuYdiwYVi8eDH8/f2xbNky3LhxQ+naiIgq9X3cGVy9mY9ZI0PRmFvPyYqziOVjUcA6Ojpi8uTJiI2NxerVq/HBBx9Aq9ViypQpSEpKUrpGIiJJ7NEU/LD7LLr6eqB3QFtrl1PvcIhYPhZPcoqLi8PkyZMRGRmJqKgonD17FqNGjcLIkSOVrI+ISHIgMR0fbzwCr7ZueP6x7lxrWAGc5CQfi+6D7dy5M3x8fPDkk09i7dq10lKJ7du3x6+//qpogUREAHAiKRPvrz+ANi1csCiyL5yd7K1dUr3EHqx8LArYFStWIDw83Oy5tLQ06HQ6rF27VpHCiIjK7T2ZhuUbDuMhFye8Nr0vXBs7Wrukeos9WPlYNET8/PPPV3iOaxETkdJKSwVitp7Ev9cfQOuHmuDNWf3Roqmztcuq18p7sCZTqZUrsX1V9mANBgMuX76M27dvY9++fdLzubm5uH37tuLFEVHDlVdQhA++O4iEi9fQM0CL58br4eRg8equ9IDYg5VPlT+tO3bswJo1a5CRkWG296urqyveeecdxYsjoobp8tUcvPvVPmRmF2Dy4ECMD+/ECU215H8Ba+VC6oEqA3b69OmYPn06vvrqK0yePLm2aiKiBmzfKQOWbzgMjUaFVyL7oItva2uX1KBwkpN8qgzYEydOIDg4GO3btzcbIi7Xu3dvxQojooblSlY+vt5xGvEn06Br6Yq/T+nNreesgEPE8qkyYD/66COsXLnSbHi4nEqlws6dOxUrjIgahtzbRfhmZyK2HU4GAAzt7oXIRwLRyJG34VgDe7DyqTJgV65cCQCIjY2tlWKIqGFJSs/Gu1/tQ1buHfQO1GHy4AD2Wq2MaxHLp8qArWxY+G4cIiaiB7Ur4TI++ekoHO01eGNmOII6ulu7JALXIpZTlQFb2dBwOQ4RE9GDMJlK8eXWk/hl/wW0b90Mf5/cC+5uja1dFv1Jug+2lPfB1lSVAcuhYSKSU87tIiz79gBOJWeib7AOzzzaFY68t7VO4W068rFoFvG9hoo5RExElkq+cgvvfrUPN27dwfRhwRjd24f3ttZB5T1YwYStMc4iJiLFXcu+jcWrdkGtUuG16X0R4t3K2iXRPZT3YDlEXHOcRUxEijKaSvH+t3+gxFiKd54ciPYezaxdElWBt+nIx6LF/o1GIz7++GNMnDgRkyZNwieffIKSkpL7vi82Nhb+/v7w9vbGrFmzYDQa73nsM888Azs7Xoshqm9itp5EUno2Zo0IYbjaAN6mIx+LAnbOnDmIi4vDlClTMHnyZMTGxmLOnDlVvsdkMiEqKgrfffcdLl68iPz8fMTExFR67J49e7h5AFE9dPBMBn7ZfwF9gnQYou9g7XLIAirepiMbi7qMf/zxB86cOSM9Hj16NAIDA6t8z6FDh6DVahEQEAAAiIqKwvLlyzFz5kyz44qKirBw4UJs3LgR69atq279RFQHFZeY8NuBJKyPTYRH8yZ4+tEunNBkI6QhYvZga8yigG3Xrh0yMzPh7l52I3hmZiZ8fX2rfI/BYIBOp5Mee3p6wmAwVDhuyZIliIqKQsuWLas8X3R0NKKjo6XH2dnZlpRORLXo9p1i7D+djvWxicjKvQPvtg/h2fF6LntoQ3ibjnyqDNg5c+ZApVLBwcEB/v7+GDx4MABg+/btGDhw4H1PfvdvrKKS34ZOnDiBAwcOYOnSpfc917x58zBv3jzpsb+//33fQ0TKMppKcS41CyeSMnE86RouGrIhINCmuQtenNQTPf3bsudqYzjJST5VBmzfvn2lP0+YMEH68/Dhw+97Yp1Oh9TUVOmxwWCAVqs1OyY+Ph6JiYno0KHs2ozJZEL79u1x7NgxuLm5WdYCIqpVQgjsO52O2KMpOJ1yHcUlJgBA2xYuGNbDC8Fe7ujq2xoajUVTPKiO4SQn+dx3P9gHpdfrkZ6ejsTERPj7+2PVqlUYP3682TFPP/00nn766f8VY2eHlJSUB/5MIlLW8YvXEPP7SSRfuQUXZ0d092uDUK9WCPJyR4umztYuj2TAtYjlY9E12OzsbPzrX//CyZMnUVhYKD3/+++/3/M9Go0GK1euREREBIqLixEeHo7IyEgcPnwYixcvxubNm2tePRHVCqOpFB9+fwj7TqWhSSMHzBgegmHdO8LeTmPt0khmXItYPhYF7PTp0zFw4ECcPXsWy5YtwxdffAE/P7/7vm/QoEFITEw0e06v198zXKu6T5aIrEMIgegfD2PfqTQM7+GNJx72R+NGDtYuixTCDdflY9FFEoPBgBdeeAFOTk4YNWoUvv/+e/zxxx9K10ZEViaEwOe/JGD38VSM6OmNqJEhDNd6jpOc5GNRwNrbl02xd3FxQUpKCgoLC3H58mVFCyMi6yoxmvDl1pPYcjAJA8LaYdaIEM4IbgD+txYxA7amLBoiHjt2LLKzs7Fw4ULo9XoIITB//nylayMiKxBCYPfxVHy94zSu3ypAT/+2eObRrgzXBoK76cjHooB9+eWXAZSt4JSRkYHCwkK4uroqWhgRKc9kKkVcwmXsOJoCo6lsUkve7WJk3rqN1g81wQuP9UCfIC3DtQHhbTrysShgjUYjVqxYgV27dkGlUqF///6YPXu2NHRMRLZFCIGDZzLw1fbTMFzPRctmznjItREAoEUzZ4zp64sh+g6w472sDQ5v05GPRQE7Z84c3L59G1OnTgUArF27FgcOHMCaNWuUrI2IFHCnqATLNxzGH4npeMilEZ5+tCsGhrXjwhAEgGsRy0mxxf6JqO65kpWPd9btg+F6Lsb27YSJg/zhYM97Wel/eJuOfBRb7J+I6gYhBK7evI2j56/im52nYTIJLJjYE70Dtfd/MzU4KpUKKqjAdSZqTtHF/omodhWXmLBu2ylcvZkPABACSM3MwfVbBQCA1g81wd+e6IV2rZtas0yq41RqFXuwMlBssX8iql0mUyn+vf4ADp7NQMtmzlChbKjPvVljDNZ3QIhXK3i1cZOGAInuRa1ScZKTDKq12H/5OsROTk7KVURE1SaEQPTGIzh4NgMRA/zwxMMB1i6JbJhazbWI5WDRtMELFy6gV69e0Gq1aNu2LXr37o0LFy4oXRsRWUAIgVWbj2NXwmWM6OmNSYO4VzLVjFrFIWI5WBSwc+bMwUsvvYQbN24gKysLCxYswJw5c5SujYiqIITAkXNXMD96Ozb/cRH9Q7mcIclDreYQsRwsmkV869Yts71cJ0yYgLfeekuxoojIXPnCEAkXr6G8Y5GamYNzqVlo2tgJc0aFYYi+A8OVZKFWqbgWsQwsClhXV1f8+uuvGDlyJABg06ZNXCqRqJacTr6OmN9P4oLhJtQqFdTqsoGnRo52mPRwAEb39oGTg0X/KxNZRKNWswcrA4v+r/z0008RGRmJWbNmAQB0Oh1iYmIULYyooUu5cgtrt53CsQtX4exkj6mPBGFkT28uDEGKU6tVELwGW2P3DdjS0lL89ttvOHLkCPLy8iCEYO+VSEZCCGRk5aOo2Aig7F7WLQcvYe+JNNjZqTG2byeMC++EJtyHlWqJWsW1iOVw34BVq9XYtGkTFixYABcXl9qoiaheyisowolL16VtwO4UlSDx8g2cSMrErfxCs2PVKhUe7toejw30Q4umztYolxowNReakIVFQ8SDBw/G66+/jilTpqBJkybS823atFGsMKL6oqjYiF/2X8TGvedQUFhi9pqDvQYB7VsiqKM7mjZ2lJ731T2ENi34Cy1Zh0atZsDKwKKA/eKLLwAAX375pfScSqXCpUuXlKmKqB4wmkqx82gK1seeQXbeHXTybI7x4Z3h6lw21KtRq+HZyhX2drymSnULV3KSh0UBm5ycrHQdRPWGEAL7T6fj6+2nkZGVB21LVzw5OgzdOnvwNhqyCRwilkeVAZucnIz58+fj4sWLCA4Oxr/+9S94eHjUVm1ENqOgsAQnL2XiRFImEi5ew9Wb+Wju2gjPjtOjf2g7rv9LNkWl4m46cqgyYGfNmoUePXrgqaeews8//4wXXngB33zzTW3VRlTnFRSW4Kf489gUfwFFJUaoVSp4ax/CsB5eGNqtI2+pIZvEHqw8qgzYGzdu4J133gEADB06FGFhYbVSFFFdI4RAamYuLhpuSivc3MovxOY/kpBXUITADu4Y0dMLgR1aojFvpyEbp1ZxsX85VBmw9vb20p9Vd60gQ1RfCSHwR2I6zqfdlJ7LzivEyUsVb6UBgA4ezfDCY90R7OXO66tUb3AtYnlUGbAJCQlwcPjfb+NGoxEODg4QQkClUqG4uFjxAolqy/GL17B22ylcysg2e778VppgL3f4t2sBxz+XJVSrVWjTvAmDleod7qYjjyoDtpRDBFSPGU2luGi4ieNJmTh24SouGG6iSSMHzBgegkf0HWCnKRuxUatVDFFqUDRqNUr+XFmMHhxXCKd6p8RoQuatAunx7TvFOHnpOk4kZeJsahaMJlOF93g0b4KIAX4Y09uH11CpweMkJ3kwYMkmGU2lSErPRt6dsssUQghk3MjHiaRrOJ1yAyXGiiHaoqkz+gRp0dipbG6BSgV4ujdFsJc73N0a12r9RHWZWqWSlvSkB8eAJZsghIDheh5OJGXiRNI1nEq+jsJKhrDcXBqhd6AWXm3coPnz3lMHew382rVA64cac6iXyAJqNdiDlQEDluoMIQSu3ryNE0nXkHI1R9pYvKCoBIkpN5CddwcA4OLsiC6+HgjxckfLZv9bCP8h10bQtnRhiBLVENcilgcDlmrd9VsFOJF0DceTMpGdV3jX87dx/c9rp2q1WuqBatQqdNI1x6he3gjxboX2rZsyRIkUxLWI5dGgA1YIgaKSitfq6MHczL2DE0mZOHkpExcMN1HZ/5+m0lLk3i4CADja26HVXcO2rdyaYLC+A0K8WsGrjRuXFySyEk5ykkeDDthr2bcx799brF1GvePsZA8/zxb3XCZQ6+6KEC93+Ggfkm6FIaK6gz1YeTTogG3sZI8J4Z2tXUa90cjJHkEdWqIje59ENk2lVlU6AkXV06AD1sXZEZOHBFq7DCKiOkWtUnEtYhlwfI6IiMyo1eAQsQwYsEREZIZrEcuDAUtERGY0ajVMJgZsTTFgiYjIDG/TkQcDloiIzHCIWB4MWCIiMqNWc7F/OTBgiYjIjIZDxLJgwBIRkRn1n8uXCoZsjSgasLGxsfD394e3tzdmzZoFo9F8e7G0tDQ8/PDD8PPzQ2BgIBYtWqRkOUREZIHyldhMHCauEcUC1mQyISoqCt999x0uXryI/Px8xMTEmB1jZ2eHd999F2fOnMHRo0exZ88e/Pzzz0qVREREFijvwXKxiZpRLGAPHToErVaLgIAAAEBUVBQ2bNhgdoyHhwf0ej0AwMHBAcHBwbh8+bJSJRERkQXKe7C8DlszigWswWCATqeTHnt6esJgMNzz+KysLGzcuBGDBw9WqiQiIrJAeQ/WZOJ6xDWh6GL/d2+KXdXF8qKiIkRERGD+/Pnw8/Or9Jjo6GhER0dLj7Ozs+UrlIiIJCr2YGWhWA9Wp9MhNTVVemwwGKDVaiscZzKZMGXKFOj1erzwwgv3PN+8efOQmJgo/efm5qZI3UREDZ1GClgrF2LjFAtYvV6P9PR0JCYmAgBWrVqF8ePHVzjuySefhKurK/7f//t/SpVCRETVwElO8lAsYDUaDVauXImIiAh4e3vD2dkZkZGROHz4MEaMGAEAiI+Px6pVq3Do0CGEhYUhNDQU//nPf5QqiYiILMBJTvJQ9BrsoEGDpB5sOb1ej82bNwMA+vTpwxuZiYjqGPZg5cGVnIiIyAx7sPJgwBIRkRn2YOXBgCUiIjMa9mBlwYAlIiIz0hAxe7A1woAlIiIzHCKWBwOWiIjMcJKTPBiwRERkhmsRy4MBS0REZtiDlQcDloiIzHCSkzwYsEREZEaa5MQebI0wYImIyIyau+nIggFLRERmeJuOPBiwRERkhpOc5MGAJSIiM+zByoMBS0REZrgWsTwYsEREZIa36ciDAUtERGaklZxKuZJTTTBgiYjIDG/TkQcDloiIzJT3YAUTtkYYsEREZKa8B8sh4pphwBIRkRkNJznJggFLRERmuBaxPBiwRERkRsUerCwYsEREZIY9WHkwYImIyAxv05EHA5aIiMxwLWJ5MGCJiMgM1yKWBwOWiIjMcC1ieTBgiYjIDNcilgcDloiIzHDDdXkwYImIyAwnOcmDAUtERGY00lrEDNiaYMASEZGZ8iFi7qZTMwxYIiIyw5Wc5MGAJSIiM7xNRx4MWCIiMsMerDwYsEREZIa36ciDAUtERGZUKhVUUIHrTNQMA5aIiCpQqVXswdYQA5aIiCpQq1QwmdiFrQkGLBERVaBW8xpsTTFgiYioArWKQ8Q1xYAlIqIK1GoV74OtIQYsERFVoFGruRZxDSkasLGxsfD394e3tzdmzZoFo9H4QMcQEVHtUqvYg60pxQLWZDIhKioK3333HS5evIj8/HzExMRU+xgiIqp9arUKgtdga0SxgD106BC0Wi0CAgIAAFFRUdiwYUO1jyEiotqnVnEt4pqyU+rEBoMBOp1Oeuzp6QmDwVDtY4iIqPZp1GocuXAVM9/ZZO1SZBfYwR0LJvZQ/HMUC1igbLmtcvcaarDkGACIjo5GdHS09Dg7O1uGComIqDIT+nfGiUuZ1i5DEe1aNa2Vz1EsYHU6HVJTU6XHBoMBWq222seUmzdvHubNmyc99vf3l7liIiIqN1jfAYP1Haxdhk1T7BqsXq9Heno6EhMTAQCrVq3C+PHjq30MERGRLVIsYDUaDVauXImIiAh4e3vD2dkZkZGROHz4MEaMGFHlMURERLZOJWx0Hra/v7/U8yUiIrKGqrKIKzkREREpgAFLRESkAAYsERGRAhiwRERECmDAEhERKYABS0REpAAGLBERkQIYsERERAqw2YUmXF1d77lucXVlZ2fDzc1NlnPVJfW1XUD9bVt9bRdQf9vGdtkeOdtmMBiQm5tb6Ws2G7Byqq+rQtXXdgH1t231tV1A/W0b22V7aqttHCImIiJSAAOWiIhIAQxYwGyf2fqkvrYLqL9tq6/tAupv29gu21NbbeM1WCIiIgWwB0tERKQABiwREZEC6l3AJicno0uXLggNDUVAQABee+016bWcnByMGjUKPj4+6Nq1K06fPi29FhsbC39/f3h7e2PWrFkwGo3Sa3/729/g7e0NX19ffP/999LzaWlp6NevH3x9fdG/f39kZGQo1q5t27ZBr9cjMDAQoaGhZnW88cYb8PDwQGhoKEJDQ/HOO+/YTLvu1zZb/s7y8/MxZMgQNGvWDIMHDzZ7zda/s6raZsvf2d1SUlLg6OgofUe9e/dWrI11TVVtqIvat2+PgIAA6bsqvwXnQX6mvvnmG/j6+sLLywuvvPJKzQoT9UxhYaG4c+eOEEKI4uJi0b17dxEXFyeEEOLll18WL7/8shBCiF9//VWEh4cLIYQwGo2iQ4cO4tSpU0IIIR577DGxatUqIYQQW7duFf369RMlJSXCYDAIrVYrcnNzhRBCPPHEE+Kzzz4TQggRHR0tpk2bpli7jh49KtLS0oQQQmRkZIjWrVuLzMxMIYQQr7/+unjrrbcqvMcW2nW/ttnyd1ZYWCh27twpNm3aJB5++GGz12z9O6uqbbb8nd0tOTlZeHl5Vfqa3G2sS6pqQ13Vrl076d+Qcg/yM5WdnS20Wq3IyMgQJSUlolevXmLnzp0PXFe9C9i75eXlidDQUClgO3XqJJKSkqTX27RpI65fvy72798v+vXrJz2/ZcsWMWrUKCGEEE899ZT44osvpNcmTZokvv/+e1FaWiqaNm0qhXl+fr5o1qxZbTRLCCFEYGCgOHHihBDi3v9Y22K7hDBvW334zmJjYy0OWFtqlxCVt60+fGdCVB2wcraxrqmqDXVVZQH7ID9TX3/9tYiMjJTe8+mnn4pnn332geuqd0PEAJCZmYmQkBC4u7tj0KBB6N+/PwAgPT0dOp1OOk6r1SI9PR0Gg8HseU9PTxgMBgC452tZWVlo3LgxnJycAACNGzeGg4MDcnJyFG/f3r17cfv2bXTu3Fl6bsWKFQgODsa4ceNw4cKFKmuvq+0CKratvnxnlakv39lf1afvLD09HV26dEGPHj2wbt06s+flamNdYyt1/tXo0aMREhKCRYsWwWg0PtDPlNxtt3vw5lhPr169cOXKlQrPR0RE4F//+hfc3d1x/Phx5OTk4IknnsDu3bsRHh5e4Xhx1x1KKpWq0uereu3u5yt7X3Xdr10AcPnyZUybNg1r166Fvb09AGDu3LlYtGgR7Ozs8OWXX2LMmDE4c+ZMnWkX8OBt+ytb/M4qU1++M0vUte/sblW18R//+AfS0tLQokULpKSkYPDgwfDy8kLPnj0rHF/TNtY1tlJnub1790Kr1SIvLw9Tp07F+++/D+DBfqbkbLtNBuz+/fstOq5p06Z49NFHsX79eoSHh0Or1SItLQ0dO3YEUPZbaNu2bVFYWIjU1FTpfQaDQdpIQKfTVXitR48eaN68OfLz81FYWAgnJycUFBSgpKQETZs2VaxdmZmZGDFiBP7973+bTbho3bq19Odp06Zh/vz5yMnJqbR2a7SrJm2z9e/sXurDd3Yvdf07u9v92ujo6AigbBLN2LFjceDAAfTs2VPWNtY1Vf0M1lXl9bm4uGDOnDn44osvHuhnSqfT4cSJE2bvqVHbH3hwuY66fPmyuH37thCibCLGqFGjxCeffCKEEOKVV14Rr7zyihBCiM2bN5tNTOjYsaM4ffq0EEKIiRMnShf1f//9dxEeHi6MRqNIT08XOp1OulA+efJksWLFCiGEEB9//LGiky9u3bolwsLCxOrVqyu8lp6eLv1527Ztol27djbTLiGqbpstf2flKrtOaevfWbnK2lYfvjMhhLh27ZooKSkRQghx8+ZNERQUJHbs2KFIG+uSqtpQF+Xn54ucnBwhhBAlJSVixowZYvHixQ/0M3Xr1i2h0+nElStXRElJiejTpw8nOd3tl19+EYGBgSI4OFgEBASIv/3tb8JkMgkhyv7yRo4cKby9vUVYWJg0S04IIXbs2CH8/PyEl5eXmDlzpvQ/lhBCvPTSS8LLy0t4e3uL9evXS8+npqaKvn37Ch8fH9GvXz9hMBgUa9fSpUuFk5OTCAkJkf6Lj48XQggRGRkpAgICRHBwsOjXr584fPiwzbTrfm2z5e9MCCGCgoJEixYthKOjo2jbtq30S4Stf2dVtc3Wv7NyP/zwg/QdBQQEiH//+9/Sa3K3sa6pqg11TVJSkggJCRFBQUHC399fzJkzRxQUFAghHuxn6uuvvxbe3t6iY8eOYuHChTWqjUslEhERKaBeziImIiKyNgYsERGRAhiwRERECmDAEhERKYABS0REpAAGLD0wlUqF0NBQBAYGws/PDy+++CLy8vKk1/V6vfTn5cuXw8/PT9p5JTIyEkFBQVi4cGGt110dM2bMwNq1a6v1no0bN5rdrG5Na9aswezZsyt9bfbs2UhISKj0NTs7ZdagSUlJgbe3tyzn+uCDD5Cbm1ujcwwYMAB79+6t0Tk+/fRTfP755zU6R7mbN28iPDzcbAWhlJQUrFmzxuy4f/7zn4iJiZHlM0k5NrmSE9UNGo1G+gc6NzcXc+bMwbhx47B9+3YAwOHDh6Vjo6OjsWHDBvj5+eHatWvYtm0brl69Wq3PM5lM0Gg0stWvlI0bN2Lw4MEIDg62dilVkisUrOWDDz5AREQEXF1drVaDyWTC3LlzZTvfBx98gJkzZ0rL9b3zzjtYvXo1CgoKsGbNGqxfvx7u7u6YN28e+vTpg6lTp1ZY9o/qDvZgSRaurq5YsWIF9u/fL/XeyntBM2fORFJSEiIiIvDSSy9h4MCByM7OlvZ+vXPnDubOnYvu3bsjKCgIy5cvB1D2m3vHjh0xf/589OjRA/Hx8YiLi0Pfvn3RtWtXDBkyBGlpaQDKeprPPfccwsPD0aFDB0RHR0u17dy5E927d0dISAi6deuG69evAwA++ugj6fnZs2ejpKSk0rbFx8ejZ8+e8PHxwbJly6TnK6slNjYWP//8M1599VWEhoZi3759aNOmDYqKiiCEgLu7Oz788EMAwNKlS6U1U+/Vrps3b2LSpElSneV7WsbFxUn/wPr5+WHEiBEoLCystP5r165h6NCh6Ny5M6ZPn47i4mIA5r23hIQEhIWFISQkBEuWLLnn9/zcc8+hW7duCAoKwtSpU1FUVASgbH/bGTNmSOv13r2P5vbt2+Hn54cuXbpgxYoV9zx3RESEtC/wCy+8ID1/48YNTJw4EUFBQQgODsbatWvx3nvvISMjA0OHDkVoaCiKi4vRvn17s4X127dvDwC4c+cOhgwZgq5duyIwMBDvvffePWso98YbbyAyMhLh4eHw9fXFiy++KL3Wvn17vPXWW+jfvz+WLVuGN954A0uXLpU+a+7cuQgMDERISAjeffddAGXrbI8aNQp6vR56vR67du2q9HNjYmIwYcIEAMDZs2exYsUKfPXVV3jrrbewevVqODs7AyhbBrZDhw7Ys2fPfdtCVlSjZSqoQdNoNBWeCw4OFt98802F1+/eTuqv24C99tpr4tNPPxVCCHHnzh3RpUsXcfr0aZGcnCwAiO3btwshhMjKyhI9e/YUt27dEkII8c0334jHH39cCCHE9OnTxciRI4XRaBQGg0E0bdpUFBcXi+vXr4s2bdqIxMREIUTZFoaFhYVix44dYsqUKdIqX08//bT4+OOPK7Rn+vTpol+/fqK4uFjcunVLeHl5iRMnTty3lpiYGOkcY8aMEXFxceLUqVOie/fuYuzYsUIIIQYPHiwOHTpU5bkiIyPFli1bhBBly/V5eXmJrKwsERsbK5ydnaUt00aOHCnWrl1bof7Vq1cLNzc3kZGRIUpLS0VERIT46KOPhBBC9O/fX+zZs0cIIURISIj47bffhBBCfPTRR5V+t0IIcePGDenPzz33nPS9vf766yIsLEwUFBSI/Px80apVK5GWliYKCwtF27ZtxcmTJ4UQQixYsOCeW8CVn9tkMolHH31UavfkyZPFkiVLKhz31y3K7n6clpZmtvxkdna2EEKIoqIiodfrxZkzZyr8Hdzt9ddfFz4+PiInJ0cUFRWJXr16iU2bNkmfs2jRIrNjy7cefOWVV8Ts2bOln6vyWgcNGiT9HSQnJ4v27duL0tJSs89MSUkRnTt3lh5fuHBBeHp6il27dlW6jOiSJUvE0qVLK/27pLqBQ8Qku+oOWW3evBl37tzBJ598AqBsuPncuXMICwtDq1at8PDDDwMA9u3bh/Pnz0vbD5aWlsLFxUU6z7hx46DRaNC2bVu4ubnh2rVrSEhIQM+ePeHn5wcAaNKkifSZe/bsQZcuXQAAhYWFaNy4caX1TZo0Cfb29mjatClGjx6N3bt3o127dlXWcrf+/fsjLi4OLVu2xMyZM/HZZ5+hqKgIp0+fRlhYGH777bd7nuu3337DiRMn8Pe//x0AUFJSgkuXLgEAunTpIi02361bNyQnJ1f6+YMHD4aHhwcAYOrUqVi7di2effZZ6fWcnBxkZGRg2LBhAMqujz///POVnuunn37CJ598gsLCQuTk5KC0tFR6beTIkWjUqBEAwM/PDykpKcjKykKbNm0QGBgonXvjxo2VnnvFihVYv349TCYTMjMz0bdvXwwdOhRbt26VfjYAoHnz5pW+/16EEFiyZAl27NgBIQQMBgNOnTpltt1jZcaOHSsNP0+cOBG7du3CqFGjAABTpkyp9D1bt27F6tWroVarpVrz8/MRHx+PqVOnSseVlJQgMzMTrVq1kp7LyMiAu7u79Njb2xtvvvkm/u///g83b97E6dOn8eabb0q92NatW9/zGjrVDQxYkk1ubi6SkpLg7+9frfcJIbBu3TqEhoaaPZ+SkiIFYvlx/fr1u+c/0OU7nwBl14eNRuM9t5sSQuCFF164Z5BURaVS3beWu/Xv3x8vvvgi3N3d8eabbyI+Ph6rV69GWFgYNBpNlecqLS1FXFwcmjVrZvZ8XFxcpe21tP4HeT0lJQVvvPEGjhw5gpYtW+Kjjz7C8ePHpder8/f/V7t27cIPP/yA3bt3w8XFBQsWLDAb8rbklzY7Ozsp8MuHrgFg3bp1SEpKwsGDB+Ho6IgJEybcczi9KnfXcPfP5d0qa68QAo0aNbpvGDZq1MisbqDs0seAAQOwceNG7N+/H++//z5ee+01AGXD0eW/0FDdxGuwJIu8vDzMnTsXvXv3lnorlho+fDg+/PBDmEwmAMDFixfNZiOX69WrFw4ePIhTp04BAIxGI06ePFnluXv16oU//vhD2ms1Pz8fRUVFGD58OFavXo3s7GwAwK1bt+7ZA/zmm29QUlKCnJwcbNq0Cf369auyFldXV7P6w8LCcObMGZw9exadO3fGgAED8Pbbb0s91qrONXz4cLPrvgkJCdXeo3L79u24cuUKhBBYu3Zthb2RmzZtijZt2mDLli0AgC+//LLS8+Tl5aFRo0Zwc3NDQUGBRbOr/fz8kJGRIbXtXjNfc3Nz0axZM7i4uCArKws//PCD9NrQoUPxwQcfSI9v3rwJoOLfc4cOHXDkyBEAMHt/bm4uWrRoAUdHRyQnJ2Pbtm33rRsom6yWm5uL4uJifPvtt5XuKf1Xw4YNw3/+8x8p6LOysuDi4oKAgACsWrVKOu7YsWMV3uvr64vLly9LjzMzM6X5As2aNYO/v7/ZrOlz585V+/81ql0MWHpgJpNJuk2ne/fuaNu2LTZs2FDt8yxatAhNmjRBSEgIgoKCMHv27Aq/yQNAixYt8PXXX2P27NkICQlBSEgIdu/eXeW5W7RogZiYGERGRiIkJASDBg1CXl4eBg8ejLlz56J///4IDg7GoEGDpAkyf1U+8Uiv1+OZZ55BUFBQlbVMmTIFH3/8Mbp164b9+/dDrVZDr9dLw9T9+/dHamqqFLBVnes///kPLl26hKCgIAQEBGDhwoXVDtiBAwdi7ty5CAgIQKNGjTBnzpwKx6xZswYLFy5Ejx49cOfOnUrPExQUhAEDBsDf3x9jxoxB9+7d7/vZjo6OWL16NR577DH07t37nvu4Dhs2DE2aNEFAQACmTp0q/d0AwIcffoiTJ09KE4d+++03AMAzzzyD8ePHQ6/Xo7i4GG+++SYWLlyIfv36IT8/X3r/1KlTceHCBYSGhmLBggUYMGDAfesGgPDwcEyYMAFBQUHo3bu3NDxclVdffRVqtRqBgYEIDQ2VQnXdunX48ccfERwcDH9/f3z00UcV3uvs7IzQ0FApfHNzc/H4449j4sSJWLJkCXbu3Gk24rJ7925pWJ/qJu6mQ0T0F2+88Qbs7OywaNGiWv3cLVu2YNOmTWaz4FNSUhAXF4cZM2ZIz8XHx+PTTz/lvbB1HK/BEhHVEcOGDUNKSgqEENI132bNmlWYn5CdnY1//vOfVqiQqoM9WCIiIgXwGiwREZECGLBEREQKYMASEREpgAFLRESkAAYsERGRAhiwRERECvj/Ac+bfk9BII9tAAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "plt.plot(xs, ys)\n", "\n", "decorate(xlabel='Difference between bid and actual price ($)',\n", " ylabel='Probability of winning',\n", " title='Player 2')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Decision Analysis\n", "\n", "In the previous section we computed the probability of winning, given that we have underbid by a particular amount.\n", "\n", "In reality the contestants don't know how much they have underbid by, because they don't know the actual price.\n", "\n", "But they do have a posterior distribution that represents their beliefs about the actual price, and they can use that to estimate their probability of winning with a given bid.\n", "\n", "The following function takes a possible bid, a posterior distribution of actual prices, and a sample of differences for the opponent.\n", "\n", "It loops through the hypothetical prices in the posterior distribution and, for each price,\n", "\n", "1. Computes the difference between the bid and the hypothetical price,\n", "\n", "2. Computes the probability that the player wins, given that difference, and\n", "\n", "3. Adds up the weighted sum of the probabilities, where the weights are the probabilities in the posterior distribution. " ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.570768Z", "iopub.status.busy": "2021-04-16T19:35:44.570139Z", "iopub.status.idle": "2021-04-16T19:35:44.574093Z", "shell.execute_reply": "2021-04-16T19:35:44.573672Z" } }, "outputs": [], "source": [ "def total_prob_win(bid, posterior, sample_diff):\n", " \"\"\"Computes the total probability of winning with a given bid.\n", "\n", " bid: your bid\n", " posterior: Pmf of showcase value\n", " sample_diff: sequence of differences for the opponent\n", " \n", " returns: probability of winning\n", " \"\"\"\n", " total = 0\n", " for price, prob in posterior.items():\n", " diff = bid - price\n", " total += prob * compute_prob_win(diff, sample_diff)\n", " return total" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This loop implements the law of total probability:\n", "\n", "$$P(win) = \\sum_{price} P(price) ~ P(win ~|~ price)$$\n", "\n", "Here's the probability that Player 1 wins, based on a bid of \\\\$25,000 and the posterior distribution `posterior1`." ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.628806Z", "iopub.status.busy": "2021-04-16T19:35:44.612939Z", "iopub.status.idle": "2021-04-16T19:35:44.632948Z", "shell.execute_reply": "2021-04-16T19:35:44.633353Z" } }, "outputs": [ { "data": { "text/plain": [ "0.4842210945439812" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "total_prob_win(25000, posterior1, sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can loop through a series of possible bids and compute the probability of winning for each one." ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:44.708685Z", "iopub.status.busy": "2021-04-16T19:35:44.672661Z", "iopub.status.idle": "2021-04-16T19:35:46.270662Z", "shell.execute_reply": "2021-04-16T19:35:46.270147Z" } }, "outputs": [], "source": [ "bids = posterior1.qs\n", "\n", "probs = [total_prob_win(bid, posterior1, sample_diff2) \n", " for bid in bids]\n", "\n", "prob_win_series = pd.Series(probs, index=bids)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here are the results." ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:46.306239Z", "iopub.status.busy": "2021-04-16T19:35:46.291839Z", "iopub.status.idle": "2021-04-16T19:35:46.422364Z", "shell.execute_reply": "2021-04-16T19:35:46.421956Z" }, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAABG7UlEQVR4nO3deXxTVd4/8M+5SRdK9wKFNikFSoG0UMTqgwilbOOgoGxuIIutiIrOKPOo/BgeZdRxX8YZcYEBGUCcGZRBcZehyCIgWxEoiCBd0rKWLhRom+Se3x+VSG0paZubm7Sf9+vVl73Jyb2f1NBv77nnniOklBJERETkVoreAYiIiFoiFlgiIiINsMASERFpgAWWiIhIAyywREREGmCBJSIi0gALLPmEjRs3wmQyabb/+Ph4rF69ut7nlixZgr59+172tc8++yzuvPPOyz7/l7/8Benp6c0L2AxXyn8l6enp+Mtf/nLZ55OSkvDJJ5/Ue6xLn/OEP/3pT+jQoQOCg4NRXFzc5P2MHDkSb775plsyXenzQS2XUe8A1PKsXbsWf/rTn7B7924YDAYMGDAAf/7zn9GvXz+XXp+bm4suXbqgpKQE4eHhAIBBgwbBarVqmLrp5syZo3cEXe3fv9+l55YsWYK//OUvyM7O1iSH1WrF008/jSNHjqBz587N2tfnn3/uplT8fLRmPIMlt/r4448xduxYTJs2DcePH0dubi7S09MxePBg7NixQ+94LY6UEg6HQ+8YXiE3NxfBwcHNLq5E7sICS24jpcTvf/97zJ49G5mZmQgODkZERAQef/xx3H777fjf//1fZ1shBF5//XX06NED4eHhuP3221FWVgYAuPbaawEAJpMJwcHBeO+997B+/Xrn2SxQ0235+OOPY9iwYWjbti369++PwsJCzJs3D+3bt4fJZMJ//vMfZ/uvvvoKqampCAsLQ6dOnfDAAw/gwoULjXp/c+bMQVRUFOLi4mp1H86bNw9jxoxxbu/fvx/9+/dHSEgIhgwZgqKiokYdJz09HY8++ijS09MREhKC6667DgcOHHA+Hx8fj+eeew79+/dHUFAQcnJycPjwYdxwww2IjIxEt27d6u3SvVz+3bt3Y+DAgYiMjET79u1x55131uleLSwsbDDP5brXLz63e/du3Hfffdi7dy+Cg4MRHByMvLw8BAYG4ujRo872lZWViIiIwHfffVfv/nbs2IHrr78e4eHhsFgseP/99wEAq1evxogRI1BWVobg4GAMHTq0zmuff/553HHHHc7tq6++Gv3793dujx8/Hq+++iqA2t3iFz97f//732E2mxEVFYXHHnvM+bqL3eJPP/00OnTogOjo6Fo//19/PoQQePvtt5GcnIzQ0FDcfPPNzs8+AGzYsAG9e/dGSEgIxo0bh8zMTEybNq3enwd5OUnkJgcPHpQA5JEjR+o8t3btWmkwGOT58+ellFICkFdffbUsLCyUJSUlcsSIEXLatGlSSimPHj0qAciSkhLn67OysmRYWJhze/DgwTI2Nlbu3btXXrhwQQ4dOlR26dJFvvrqq9Jms8kFCxbIqKgoWV1dLaWUcsOGDXLXrl3SbrfLI0eOyJ49e8pnnnnGub/OnTvL//znP/W+r3fffVcaDAY5Z84cWVVVJb/99lsZEhIiv/nmGymllE8++aS85ZZbpJRS2mw22bVr11ptIyIi5ODBg537u//+++X9999/2Z/j4MGDZUREhPz2229lVVWVnDNnjuzevbu02WzOrImJifLgwYPSbrfLqqoq2aNHD/noo4/KCxcuyD179shOnTrJ9957z6X82dnZcuPGjbK6uloeP35cDho0SN5zzz2NynPxZ/fuu+/KlJSUen+uv35OSinHjx8vn3zySef2ihUrpMViqffnUlJSIqOiouRf//pXWV1dLdevXy/btm0rN23aJKWs+xn5tW3btsno6GgppZRnzpyR0dHRMjIyUpaXl0tVVWVUVJTctWuX8z2/9tprzv0qiiJ/97vfyQsXLsicnBwZFBQks7KynO/LaDTKF198UVZXV8usrCxpMBjk4cOHpZS1Px9S1nz209PT5fHjx2VJSYm86qqrnD+DM2fOyLCwMLlo0SJps9nkp59+KgMCAuTUqVMv+77Ie/EMltzm9OnTAICYmJg6z8XExMDhcODMmTPOxx577DHExMQgPDwcTz/9NFasWAFVVV0+3l133YXk5GQEBgZi/PjxuHDhAh555BEYjUZMmjQJxcXFyMvLA1BzDfeqq66CwWBA165dMWPGDKxfv97lY7Vt2xbz5s2Dv78/rrvuOkyaNAlLly6t027Lli04ffp0rba33357rTZvvvnmFQfQ3HHHHbjuuuvg7++PefPm4cSJE9i6davz+fvvvx89evSAwWDA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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "prob_win_series.plot(label='Player 1', color='C1')\n", "\n", "decorate(xlabel='Bid ($)',\n", " ylabel='Probability of winning',\n", " title='Optimal bid: probability of winning')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And here's the bid that maximizes Player 1's chance of winning." ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:46.425882Z", "iopub.status.busy": "2021-04-16T19:35:46.425408Z", "iopub.status.idle": "2021-04-16T19:35:46.430103Z", "shell.execute_reply": "2021-04-16T19:35:46.429712Z" } }, "outputs": [ { "data": { "text/plain": [ "21000.0" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prob_win_series.idxmax()" ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:46.433880Z", "iopub.status.busy": "2021-04-16T19:35:46.433042Z", "iopub.status.idle": "2021-04-16T19:35:46.437889Z", "shell.execute_reply": "2021-04-16T19:35:46.437462Z" } }, "outputs": [ { "data": { "text/plain": [ "0.6136807192359474" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prob_win_series.max()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Recall that your guess was \\\\$23,000.\n", "Using your guess to compute the posterior distribution, the posterior mean is about \\\\$26,000.\n", "But the bid that maximizes your chance of winning is \\\\$21,000." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** Do the same analysis for Player 2." ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:46.495866Z", "iopub.status.busy": "2021-04-16T19:35:46.460137Z", "iopub.status.idle": "2021-04-16T19:35:47.898014Z", "shell.execute_reply": "2021-04-16T19:35:47.897569Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "bids = posterior2.qs\n", "\n", "probs = [total_prob_win(bid, posterior2, sample_diff1) \n", " for bid in bids]\n", "\n", "prob_win_series = pd.Series(probs, index=bids)" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:47.916760Z", "iopub.status.busy": "2021-04-16T19:35:47.915987Z", "iopub.status.idle": "2021-04-16T19:35:48.073976Z", "shell.execute_reply": "2021-04-16T19:35:48.073607Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAABIFElEQVR4nO3de1xUZeI/8M9zZgYRuQoKKDcFUS4KGrlIXvDSttrNW2WZN8isrN3NfpUv1+/mVttt28o2201Xc8us3co1re1m4i3v11Q084IwoCKIIMpl5pzn9wc6SSIOyOEww+f9es1LZubMnM8Q8eE855znCCmlBBERETUpxegARERE7ogFS0REpAMWLBERkQ5YsERERDpgwRIREemABUtERKQDFiy5hPXr1yMsLEy394+KisLy5cvrfG7x4sVITk6+6mtfeOEF3HvvvVd9/o033kB6evr1BbwO18p/Lenp6XjjjTeu+nxCQgI+//zzOtd1+XPN4U9/+hM6duwIb29vFBcXN/p9hg8fjrfffrtJMl3r54Pcl9noAOR+Vq1ahT/96U/YtWsXTCYT0tLS8Oc//xl9+vRx6vU5OTno0qULSkpK4O/vDwAYMGAArFarjqkbb9asWUZHMNT+/fudem7x4sV44403sHv3bl1yWK1WPPfcczhy5AgiIyOv672+/PLLJkrFn4/WjFuw1KRWrFiBUaNGYfLkyTh58iRycnKQnp6OQYMGYfv27UbHcztSSqiqanSMFiEnJwfe3t7XXa5ETYUFS01GSonf/e53mDlzJjIzM+Ht7Y2AgAA8/fTTuOeee/D//t//cywrhMDcuXPRvXt3+Pv745577kFpaSkAoG/fvgCAsLAweHt744MPPsCaNWscW7NAzbDl008/jaFDh6Jdu3ZITU1Ffn4+5syZgw4dOiAsLAz//e9/Hct/8803SElJgZ+fH0JDQ/HII4+goqKiQZ9v1qxZCAwMRERERK3hwzlz5mDkyJGO+/v370dqaip8fHwwePBgFBQUNGg96enpePLJJ5Geng4fHx/069cPBw4ccDwfFRWFF198EampqfDy8kJ2djYOHz6MW265Be3bt0d0dHSdQ7pXy79r1y70798f7du3R4cOHXDvvfdeMbyan59fb56rDa9fem7Xrl146KGHsHfvXnh7e8Pb2xvHjx+Hp6cnjh075li+srISAQEB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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "prob_win_series.plot(label='Player 2', color='C1')\n", "\n", "decorate(xlabel='Bid ($)',\n", " ylabel='Probability of winning',\n", " title='Optimal bid: probability of winning')" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.077656Z", "iopub.status.busy": "2021-04-16T19:35:48.077009Z", "iopub.status.idle": "2021-04-16T19:35:48.079401Z", "shell.execute_reply": "2021-04-16T19:35:48.079754Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "29000.0" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "prob_win_series.idxmax()" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.083673Z", "iopub.status.busy": "2021-04-16T19:35:48.082935Z", "iopub.status.idle": "2021-04-16T19:35:48.086036Z", "shell.execute_reply": "2021-04-16T19:35:48.085566Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "0.5171370053364229" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "prob_win_series.max()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Maximizing Expected Gain\n", "\n", "In the previous section we computed the bid that maximizes your chance of winning.\n", "And if that's your goal, the bid we computed is optimal.\n", "\n", "But winning isn't everything.\n", "Remember that if your bid is off by \\\\$250 or less, you win both showcases.\n", "So it might be a good idea to increase your bid a little: it increases the chance you overbid and lose, but it also increases the chance of winning both showcases.\n", "\n", "Let's see how that works out.\n", "The following function computes how much you will win, on average, given your bid, the actual price, and a sample of errors for your opponent." ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.089830Z", "iopub.status.busy": "2021-04-16T19:35:48.089389Z", "iopub.status.idle": "2021-04-16T19:35:48.091415Z", "shell.execute_reply": "2021-04-16T19:35:48.091026Z" } }, "outputs": [], "source": [ "def compute_gain(bid, price, sample_diff):\n", " \"\"\"Compute expected gain given a bid and actual price.\"\"\"\n", " diff = bid - price\n", " prob = compute_prob_win(diff, sample_diff)\n", "\n", " # if you are within 250 dollars, you win both showcases\n", " if -250 <= diff <= 0:\n", " return 2 * price * prob\n", " else:\n", " return price * prob" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For example, if the actual price is \\\\$35000 \n", "and you bid \\\\$30000, \n", "you will win about \\\\$23,600 worth of prizes on average, taking into account your probability of losing, winning one showcase, or winning both." ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.095957Z", "iopub.status.busy": "2021-04-16T19:35:48.095151Z", "iopub.status.idle": "2021-04-16T19:35:48.098364Z", "shell.execute_reply": "2021-04-16T19:35:48.097922Z" } }, "outputs": [ { "data": { "text/plain": [ "23594.249201277955" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_gain(30000, 35000, sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In reality we don't know the actual price, but we have a posterior distribution that represents what we know about it.\n", "By averaging over the prices and probabilities in the posterior distribution, we can compute the expected gain for a particular bid.\n", "\n", "In this context, \"expected\" means the average over the possible showcase values, weighted by their probabilities." ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.102421Z", "iopub.status.busy": "2021-04-16T19:35:48.101903Z", "iopub.status.idle": "2021-04-16T19:35:48.104181Z", "shell.execute_reply": "2021-04-16T19:35:48.103665Z" } }, "outputs": [], "source": [ "def expected_gain(bid, posterior, sample_diff):\n", " \"\"\"Compute the expected gain of a given bid.\"\"\"\n", " total = 0\n", " for price, prob in posterior.items():\n", " total += prob * compute_gain(bid, price, sample_diff)\n", " return total" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the posterior we computed earlier, based on a guess of \\\\$23,000, the expected gain for a bid of \\\\$21,000 is about \\\\$16,900." ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.137026Z", "iopub.status.busy": "2021-04-16T19:35:48.136553Z", "iopub.status.idle": "2021-04-16T19:35:48.139335Z", "shell.execute_reply": "2021-04-16T19:35:48.138880Z" } }, "outputs": [ { "data": { "text/plain": [ "16923.59933856512" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "expected_gain(21000, posterior1, sample_diff2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "But can we do any better? \n", "\n", "To find out, we can loop through a range of bids and find the one that maximizes expected gain." ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:48.212459Z", "iopub.status.busy": "2021-04-16T19:35:48.176771Z", "iopub.status.idle": "2021-04-16T19:35:49.578032Z", "shell.execute_reply": "2021-04-16T19:35:49.577538Z" } }, "outputs": [], "source": [ "bids = posterior1.qs\n", "\n", "gains = [expected_gain(bid, posterior1, sample_diff2) for bid in bids]\n", "\n", "expected_gain_series = pd.Series(gains, index=bids)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here are the results." ] }, { "cell_type": "code", "execution_count": 61, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:49.595312Z", "iopub.status.busy": "2021-04-16T19:35:49.594806Z", "iopub.status.idle": "2021-04-16T19:35:49.758820Z", "shell.execute_reply": "2021-04-16T19:35:49.759161Z" }, "tags": [ "hide-input" ] }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "expected_gain_series.plot(label='Player 1', color='C2')\n", "\n", "decorate(xlabel='Bid ($)',\n", " ylabel='Expected gain ($)',\n", " title='Optimal bid: expected gain')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here is the optimal bid." ] }, { "cell_type": "code", "execution_count": 62, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:49.763145Z", "iopub.status.busy": "2021-04-16T19:35:49.762475Z", "iopub.status.idle": "2021-04-16T19:35:49.764913Z", "shell.execute_reply": "2021-04-16T19:35:49.765309Z" } }, "outputs": [ { "data": { "text/plain": [ "22000.0" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "expected_gain_series.idxmax()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With that bid, the expected gain is about \\\\$17,400." ] }, { "cell_type": "code", "execution_count": 63, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:49.768943Z", "iopub.status.busy": "2021-04-16T19:35:49.768405Z", "iopub.status.idle": "2021-04-16T19:35:49.771158Z", "shell.execute_reply": "2021-04-16T19:35:49.770667Z" } }, "outputs": [ { "data": { "text/plain": [ "17384.899584430797" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "expected_gain_series.max()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Recall that your initial guess was \\\\$23,000.\n", "The bid that maximizes the chance of winning is \\\\$21,000.\n", "And the bid that maximizes your expected gain is \\\\$22,000." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** Do the same analysis for Player 2." ] }, { "cell_type": "code", "execution_count": 64, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:49.833753Z", "iopub.status.busy": "2021-04-16T19:35:49.808430Z", "iopub.status.idle": "2021-04-16T19:35:51.251753Z", "shell.execute_reply": "2021-04-16T19:35:51.252169Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "bids = posterior2.qs\n", "\n", "gains = [expected_gain(bid, posterior2, sample_diff1) for bid in bids]\n", "\n", "expected_gain_series = pd.Series(gains, index=bids)" ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.336820Z", "iopub.status.busy": "2021-04-16T19:35:51.336306Z", "iopub.status.idle": "2021-04-16T19:35:51.527770Z", "shell.execute_reply": "2021-04-16T19:35:51.528265Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAABU4klEQVR4nO3deVyVZf7/8deBwyL7IrIvCqICAi6pqajYpllWZFqaSqZZOTXV/Mzy4czUtNu0zYztaWql851yysZGzQK3UkvFVFRyYTkiCsgi+1mu3x/mGXFBVA73AT7Px+OU93Lu+32zfc5939d9XTqllEIIIYQQLcpB6wBCCCFEeyQFVgghhLABKbBCCCGEDUiBFUIIIWxACqwQQghhA1JghRBCCBuQAivEJWzcuJGwsDCbbT8qKoovv/zygss+/vhjkpOTL/reF198kXvuueeiy998801GjBhxdQHbgfLycnQ6Hbm5uTbZfnx8PP/5z39ssm3RdkmBFe3KunXrSElJwcPDA29vb0aPHs2OHTua/f7c3Fx0Oh3l5eXWeSkpKRgMBhukvXpz585l2bJlWsewqczMTHx8fLSO0aS9e/dyyy23aB1D2BkpsKLdWLlyJXfccQfp6ekUFRWRm5vLiBEjGD58OD///LPW8YQQHYwUWNEuKKX4/e9/z1NPPcX999+Ph4cHvr6+zJkzhwkTJvD//t//s66r0+l466236NGjBz4+PkyYMIGKigoABgwYAEBYWBgeHh58+umn551BjRgxgjlz5nDdddfh7u7OoEGDOHr0KM888wwBAQGEhYXx73//27r+2rVr6d+/P97e3gQHB/Pwww9TW1t7Wcc3d+5c/P39iYiI4O2337bOf+aZZ7j99tut03v37mXQoEF4enqSmppKYWHhZe3HaDTypz/9iejoaPz9/Rk7dqx1G//4xz/o2bMn1dXVAPz44494e3uzb98+4PSl7hdeeIG+ffvi5eXFTTfd1Gj/J06cYNKkSYSEhBASEsJjjz1GfX29dfn27dsZOXIkfn5+BAQE8Mgjj1BaWsro0aOpqKjAw8MDDw8PNm7cCJy+WjFgwAB8fHyIj49n5cqV1m3V19fz0EMP4efnR9euXfn888+bPO76+noefPBB6/offfRRo0vKl/oenn2Z/8xl/eeee44uXboQGBjIm2++eVnfB9FOKCHagf379ytA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v/DCC2rChAl2n/tcZ35W7D13VVWVqqioUEopZTQaVXp6uvrTn/5k97mHDRtmbcT35ZdfqsGDB9t95jNmz56tZs+ebZ2299yFhYXK399fGQwGpZRSX331lerXr59d5ZYCexW+++471atXLxUdHa3uu+++8xo32NoDDzygQkNDFaBCQ0PVAw88oJQ6/YsSHR2tYmJi1P/93/9Z18/Pz1dDhw5V3bt3VykpKdYfTKVO3+SPiYlR3bp1U0899ZR1fkNDg5oyZYqKjo5WvXr1UpmZmVeVedOmTQpQCQkJKikpSSUlJam33nrL7nPn5+er/v37q4SEBNW7d2911113qaKiIrvPfa6zP4zZc+5Dhw6ppKQk1bt3bxUXF6dmzJihampq7D733r171aBBg1Tv3r1VSkqKtYWrPWdW6nTDvbCwMLVr165G8+0998KFC1VcXJxKTExUgwcPVllZWXaVW7pKFEIIIWxA7sEKIYQQNiAFVgghhLABKbBCCCGEDUiBFUIIIWxACqwQQghhA1JghWindDqddaSRhIQEVqxYYV128803c+LEifPek5ubS0xMzAW3ZzQaGTx4MDU1NY3mP/PMM42mP/vsM5577rmrPwAh2jh5TEeIdkqv11uHUNy/fz/Dhw/n+PHjTb4nNzeX66+/noMHD563bOHCheTl5fHss88C8PHHH/PGG29QVFRETEwMH3zwAXFxcVgsFhISEti2bRseHh4tf2BCtBFyBitEB1BRUYGvr691Oioqytph+bp16+jVqxd9+/bl/fffv+g2Pv74Y8aPHw+cHvf0iSeeYOXKlTz00EOsWLHCOpiAg4MD1113XaMzZiE6IimwQrRTZrOZ5ORk4uPjGTFiBC+++OJ569TX15Oens6//vUvduzYQUNDwwW3ZTQa2b17N3FxccDpIqrT6Th16hQAgYGBjUbrGTBgABs3brTBUQnRdkiBFaKdcnR0JCsri71797Jr1y4eeuih84bZ2r9/PyEhISQkJAAwefLkC26rpKQELy8v66gibm5uLFmyhJkzZ/L2228zc+ZMSkpKrOsHBQVRWFhooyMTom2QAitEBxAbG0tUVBQ//vhjo/nNbYLRqVMn6uvrG80bM2YMmzdvZurUqbi5uTFnzhzrstraWjp16nT1wYVow6TACtEBFBUVkZOTQ3R0dKP5vXr1orCwkD179gCnB7C+EB8fH5ycnKioqABO34PNy8sDTg9cnZycTGVlpXX9AwcOWM+Kheio9FoHEELYxpl7sEop6uvrmTdvHn379m20jouLC4sWLeKuu+7C19fXOpbphdxyyy18//333HHHHRiNRh544AFqa2s5cuQIwcHBLFy40LruunXrLnjPV4iORB7TEUI0y969e3nqqaf4+uuvG81/5plnGj0Lm5eXR3p6OhkZGa2cUAj7IpeIhRDNEh8fz7hx487raGLEiBGNpgsKCvjb3/7WismEsE9yBiuEEELYgJzBCiGEEDYgBVYIIYSwASmwQgghhA1IgRVCCCFsQAqsEEIIYQNSYIUQQggb+P9ysz4hvCXk9wAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "expected_gain_series.plot(label='Player 2', color='C2')\n", "\n", "decorate(xlabel='Bid ($)',\n", " ylabel='Expected gain ($)',\n", " title='Optimal bid: expected gain')" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.532762Z", "iopub.status.busy": "2021-04-16T19:35:51.532102Z", "iopub.status.idle": "2021-04-16T19:35:51.535667Z", "shell.execute_reply": "2021-04-16T19:35:51.535248Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "30000.0" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "expected_gain_series.idxmax()" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.555414Z", "iopub.status.busy": "2021-04-16T19:35:51.554109Z", "iopub.status.idle": "2021-04-16T19:35:51.557359Z", "shell.execute_reply": "2021-04-16T19:35:51.554778Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "19404.164188501607" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "expected_gain_series.max()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Summary\n", "\n", "There's a lot going on this this chapter, so let's review the steps:\n", "\n", "1. First we used KDE and data from past shows to estimate prior distributions for the values of the showcases.\n", "\n", "2. Then we used bids from past shows to model the distribution of errors as a normal distribution.\n", "\n", "3. We did a Bayesian update using the distribution of errors to compute the likelihood of the data.\n", "\n", "4. We used the posterior distribution for the value of the showcase to compute the probability of winning for each possible bid, and identified the bid that maximizes the chance of winning.\n", "\n", "5. Finally, we used probability of winning to compute the expected gain for each possible bid, and identified the bid that maximizes expected gain.\n", "\n", "Incidentally, this example demonstrates the hazard of using the word \"optimal\" without specifying what you are optimizing.\n", "The bid that maximizes the chance of winning is not generally the same as the bid that maximizes expected gain." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Discussion\n", "\n", "When people discuss the pros and cons of Bayesian estimation, as contrasted with classical methods sometimes called \"frequentist\", they often claim that in many cases Bayesian methods and frequentist methods produce the same results.\n", "\n", "In my opinion, this claim is mistaken because Bayesian and frequentist method produce different *kinds* of results:\n", "\n", "* The result of frequentist methods is usually a single value that is considered to be the best estimate (by one of several criteria) or an interval that quantifies the precision of the estimate.\n", "\n", "* The result of Bayesian methods is a posterior distribution that represents all possible outcomes and their probabilities." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Granted, you can use the posterior distribution to choose a \"best\" estimate or compute an interval.\n", "And in that case the result might be the same as the frequentist estimate.\n", "\n", "But doing so discards useful information and, in my opinion, eliminates the primary benefit of Bayesian methods: the posterior distribution is more useful than a single estimate, or even an interval." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The example in this chapter demonstrates the point.\n", "Using the entire posterior distribution, we can compute the bid that maximizes the probability of winning, or the bid that maximizes expected gain, even if the rules for computing the gain are complicated (and nonlinear).\n", "\n", "With a single estimate or an interval, we can't do that, even if they are \"optimal\" in some sense.\n", "In general, frequentist estimation provides little guidance for decision-making.\n", "\n", "If you hear someone say that Bayesian and frequentist methods produce the same results, you can be confident that they don't understand Bayesian methods." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercises" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** When I worked in Cambridge, Massachusetts, I usually took the subway to South Station and then a commuter train home to Needham. Because the subway was unpredictable, I left the office early enough that I could wait up to 15 minutes and still catch the commuter train.\n", "\n", "When I got to the subway stop, there were usually about 10 people waiting on the platform. If there were fewer than that, I figured I just missed a train, so I expected to wait a little longer than usual. And if there there more than that, I expected another train soon.\n", "\n", "But if there were a *lot* more than 10 passengers waiting, I inferred that something was wrong, and I expected a long wait. In that case, I might leave and take a taxi.\n", "\n", "We can use Bayesian decision analysis to quantify the analysis I did intuitively. Given the number of passengers on the platform, how long should we expect to wait? And when should we give up and take a taxi?\n", "\n", "My analysis of this problem is in `redline.ipynb`, which is in the repository for this book. [Click here to run this notebook on Colab](https://colab.research.google.com/github/AllenDowney/ThinkBayes2/blob/master/notebooks/redline.ipynb)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise:** This exercise is inspired by a true story. In 2001 I created [Green Tea Press](https://greenteapress.com) to publish my books, starting with *Think Python*. I ordered 100 copies from a short run printer and made the book available for sale through a distributor. \n", "\n", "After the first week, the distributor reported that 12 copies were sold. Based that report, I thought I would run out of copies in about 8 weeks, so I got ready to order more. My printer offered me a discount if I ordered more than 1000 copies, so I went a little crazy and ordered 2000. \n", "\n", "A few days later, my mother called to tell me that her *copies* of the book had arrived. Surprised, I asked how many. She said ten.\n", "\n", "It turned out I had sold only two books to non-relatives. And it took a lot longer than I expected to sell 2000 copies." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The details of this story are unique, but the general problem is something almost every retailer has to figure out. Based on past sales, how do you predict future sales? And based on those predictions, how do you decide how much to order and when?\n", "\n", "Often the cost of a bad decision is complicated. If you place a lot of small orders rather than one big one, your costs are likely to be higher. If you run out of inventory, you might lose customers. And if you order too much, you have to pay the various costs of holding inventory.\n", "\n", "So, let's solve a version of the problem I faced. It will take some work to set up the problem; the details are in the notebook for this chapter." ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Suppose you start selling books online. During the first week you sell 10 copies (and let's assume that none of the customers are your mother). During the second week you sell 9 copies.\n", "\n", "Assuming that the arrival of orders is a Poisson process, we can think of the weekly orders as samples from a Poisson distribution with an unknown rate.\n", "We can use orders from past weeks to estimate the parameter of this distribution, generate a predictive distribution for future weeks, and compute the order size that maximized expected profit.\n", "\n", "* Suppose the cost of printing the book is \\\\$5 per copy, \n", "\n", "* But if you order 100 or more, it's \\\\$4.50 per copy.\n", "\n", "* For every book you sell, you get \\\\$10.\n", "\n", "* But if you run out of books before the end of 8 weeks, you lose \\\\$50 in future sales for every week you are out of stock.\n", "\n", "* If you have books left over at the end of 8 weeks, you lose \\\\$2 in inventory costs per extra book.\n", "\n", "For example, suppose you get orders for 10 books per week, every week. If you order 60 books, \n", "\n", "* The total cost is \\\\$300. \n", "\n", "* You sell all 60 books, so you make \\\\$600. \n", "\n", "* But the book is out of stock for two weeks, so you lose \\\\$100 in future sales.\n", "\n", "In total, your profit is \\\\$200.\n", "\n", "If you order 100 books,\n", "\n", "* The total cost is \\\\$450.\n", "\n", "* You sell 80 books, so you make \\\\$800.\n", "\n", "* But you have 20 books left over at the end, so you lose \\\\$40.\n", "\n", "In total, your profit is \\\\$310.\n", "\n", "Combining these costs with your predictive distribution, how many books should you order to maximize your expected profit?" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "To get you started, the following functions compute profits and costs according to the specification of the problem:" ] }, { "cell_type": "code", "execution_count": 68, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.562554Z", "iopub.status.busy": "2021-04-16T19:35:51.561855Z", "iopub.status.idle": "2021-04-16T19:35:51.565805Z", "shell.execute_reply": "2021-04-16T19:35:51.566720Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "def print_cost(printed):\n", " \"\"\"Compute print costs.\n", " \n", " printed: integer number printed\n", " \"\"\"\n", " if printed < 100:\n", " return printed * 5\n", " else:\n", " return printed * 4.5" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.572879Z", "iopub.status.busy": "2021-04-16T19:35:51.572142Z", "iopub.status.idle": "2021-04-16T19:35:51.582185Z", "shell.execute_reply": "2021-04-16T19:35:51.582596Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "def total_income(printed, orders):\n", " \"\"\"Compute income.\n", " \n", " printed: integer number printed\n", " orders: sequence of integer number of books ordered\n", " \"\"\"\n", " sold = min(printed, np.sum(orders))\n", " return sold * 10" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.587177Z", "iopub.status.busy": "2021-04-16T19:35:51.586735Z", "iopub.status.idle": "2021-04-16T19:35:51.588667Z", "shell.execute_reply": "2021-04-16T19:35:51.589058Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "def inventory_cost(printed, orders):\n", " \"\"\"Compute inventory costs.\n", " \n", " printed: integer number printed\n", " orders: sequence of integer number of books ordered\n", " \"\"\"\n", " excess = printed - np.sum(orders)\n", " if excess > 0:\n", " return excess * 2\n", " else:\n", " return 0" ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.594274Z", "iopub.status.busy": "2021-04-16T19:35:51.593740Z", "iopub.status.idle": "2021-04-16T19:35:51.597400Z", "shell.execute_reply": "2021-04-16T19:35:51.596976Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "def out_of_stock_cost(printed, orders):\n", " \"\"\"Compute out of stock costs.\n", " \n", " printed: integer number printed\n", " orders: sequence of integer number of books ordered\n", " \"\"\"\n", " weeks = len(orders)\n", " total_orders = np.cumsum(orders)\n", " for i, total in enumerate(total_orders):\n", " if total > printed:\n", " return (weeks-i) * 50\n", " return 0" ] }, { "cell_type": "code", "execution_count": 72, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.601347Z", "iopub.status.busy": "2021-04-16T19:35:51.600787Z", "iopub.status.idle": "2021-04-16T19:35:51.604170Z", "shell.execute_reply": "2021-04-16T19:35:51.604606Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "def compute_profit(printed, orders):\n", " \"\"\"Compute profit.\n", " \n", " printed: integer number printed\n", " orders: sequence of integer number of books ordered\n", " \"\"\"\n", " return (total_income(printed, orders) -\n", " print_cost(printed)-\n", " out_of_stock_cost(printed, orders) -\n", " inventory_cost(printed, orders))" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "To test these functions, suppose we get exactly 10 orders per week for eight weeks:" ] }, { "cell_type": "code", "execution_count": 73, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.611079Z", "iopub.status.busy": "2021-04-16T19:35:51.610241Z", "iopub.status.idle": "2021-04-16T19:35:51.616176Z", "shell.execute_reply": "2021-04-16T19:35:51.616554Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "[10, 10, 10, 10, 10, 10, 10, 10]" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "always_10 = [10] * 8\n", "always_10" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "If you print 60 books, your net profit is \\\\$200, as in the example." ] }, { "cell_type": "code", "execution_count": 74, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.620756Z", "iopub.status.busy": "2021-04-16T19:35:51.620229Z", "iopub.status.idle": "2021-04-16T19:35:51.622764Z", "shell.execute_reply": "2021-04-16T19:35:51.623275Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "200" ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_profit(60, always_10)" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "If you print 100 books, your net profit is \\\\$310." ] }, { "cell_type": "code", "execution_count": 75, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.628975Z", "iopub.status.busy": "2021-04-16T19:35:51.628140Z", "iopub.status.idle": "2021-04-16T19:35:51.631017Z", "shell.execute_reply": "2021-04-16T19:35:51.631678Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "310.0" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_profit(100, always_10)" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Of course, in the context of the problem you don't know how many books will be ordered in any given week. You don't even know the average rate of orders. However, given the data and some assumptions about the prior, you can compute the distribution of the rate of orders.\n", "\n", "You'll have a chance to do that, but to demonstrate the decision analysis part of the problem, I'll start with the arbitrary assumption that order rates come from a gamma distribution with mean 9.\n", "\n", "Here's a `Pmf` that represents this distribution." ] }, { "cell_type": "code", "execution_count": 76, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.638252Z", "iopub.status.busy": "2021-04-16T19:35:51.637600Z", "iopub.status.idle": "2021-04-16T19:35:51.640800Z", "shell.execute_reply": "2021-04-16T19:35:51.641451Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "8.998788382371902" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from scipy.stats import gamma\n", "\n", "alpha = 9\n", "qs = np.linspace(0, 25, 101)\n", "ps = gamma.pdf(qs, alpha)\n", "pmf = Pmf(ps, qs)\n", "pmf.normalize()\n", "pmf.mean()" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "And here's what it looks like:" ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.658650Z", "iopub.status.busy": "2021-04-16T19:35:51.658221Z", "iopub.status.idle": "2021-04-16T19:35:51.986329Z", "shell.execute_reply": "2021-04-16T19:35:51.985935Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "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yWs9vsvs2bOxY8eOwFqXv/nNbwL33XLLLfjoo4+wb98+AP61ens6cuyLmTNn4v3330djYyOklPjtb3/bp8edPn0aI0eORFxcHJqbm7Fly5bL7o+JiQmMBO5r5pEjR8Jut+PUqVMAgJ/+9KdYvHgxcnNzkZube9ljTpw4gfj4eIwYMWJA+03UVyxYogHoGoiTm5uLW2+9Fc899xxuuukmpKSkYM2aNfjKV76CadOmobm5GT/+8Y97/HkXIQReeuklCCHwxBNPXFWy13r8pdu9+OKLWLhwIRYsWICsrKzAfaNGjcLGjRvx+OOPB4rnvffeG/B7kJaWhhUrVmD+/PlYsGABnE4n4uPjr/m4u+++GyNGjEB2djYeeeQRLFy48LL7v/vd72LmzJm4++67+5X5K1/5Ct59913s378fr732Gv7t3/4NAOByuVBdXY3Ozk4AwN/+9jfce++9A95vor7ierBENGBtbW0YMWIEpJR48sknMW7cODz77LNKsnz++ef40Y9+dNXI6Svdc889+PnPf47JkycPUTKKVDyCJaIBW7lyJXJycuByudDW1obvfOc7yrJkZ2ejoKAgcHq5O21tbXjooYdYrjQkeARLRERkAR7BEhERWYAFS0REZAEWLBERkQVYsERERBZgwRIREVmABUtERGQBFiwREZEFWLBEREQW+P8BO3jLI9/WcKgAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "pmf.plot(color='C1')\n", "decorate(xlabel=r'Book ordering rate ($\\lambda$)',\n", " ylabel='PMF')" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Now, we *could* generate a predictive distribution for the number of books ordered in a given week, but in this example we have to deal with a complicated cost function. In particular, `out_of_stock_cost` depends on the sequence of orders.\n", "\n", "So, rather than generate a predictive distribution, I suggest we run simulations. I'll demonstrate the steps.\n", "\n", "First, from our hypothetical distribution of rates, we can draw a random sample of 1000 values. " ] }, { "cell_type": "code", "execution_count": 78, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.990537Z", "iopub.status.busy": "2021-04-16T19:35:51.989846Z", "iopub.status.idle": "2021-04-16T19:35:51.993533Z", "shell.execute_reply": "2021-04-16T19:35:51.993896Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "9.0135" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rates = pmf.choice(1000)\n", "np.mean(rates)" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "For each possible rate, we can generate a sequence of 8 orders." ] }, { "cell_type": "code", "execution_count": 79, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:51.998261Z", "iopub.status.busy": "2021-04-16T19:35:51.997702Z", "iopub.status.idle": "2021-04-16T19:35:52.002977Z", "shell.execute_reply": "2021-04-16T19:35:52.003508Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "array([[10, 18, 14, 12, 15, 11, 21, 9],\n", " [ 6, 7, 5, 12, 15, 3, 3, 8],\n", " [ 6, 11, 11, 6, 6, 3, 7, 11],\n", " [12, 10, 9, 12, 16, 7, 11, 8],\n", " [11, 11, 8, 11, 10, 19, 24, 15]])" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.random.seed(17)\n", "order_array = np.random.poisson(rates, size=(8, 1000)).transpose()\n", "order_array[:5, :]" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Each row of this array is a hypothetical sequence of orders based on a different hypothetical order rate.\n", "\n", "Now, if you tell me how many books you printed, I can compute your expected profits, averaged over these 1000 possible sequences." ] }, { "cell_type": "code", "execution_count": 80, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:52.007370Z", "iopub.status.busy": "2021-04-16T19:35:52.006916Z", "iopub.status.idle": "2021-04-16T19:35:52.008586Z", "shell.execute_reply": "2021-04-16T19:35:52.008935Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "def compute_expected_profits(printed, order_array):\n", " \"\"\"Compute profits averaged over a sample of orders.\n", " \n", " printed: number printed\n", " order_array: one row per sample, one column per week\n", " \"\"\"\n", " profits = [compute_profit(printed, orders)\n", " for orders in order_array]\n", " return np.mean(profits)" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "For example, here are the expected profits if you order 70, 80, or 90 books." ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:52.016373Z", "iopub.status.busy": "2021-04-16T19:35:52.015963Z", "iopub.status.idle": "2021-04-16T19:35:52.035494Z", "shell.execute_reply": "2021-04-16T19:35:52.035057Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "190.474" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_expected_profits(70, order_array)" ] }, { "cell_type": "code", "execution_count": 82, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:52.073335Z", "iopub.status.busy": "2021-04-16T19:35:52.072683Z", "iopub.status.idle": "2021-04-16T19:35:52.076415Z", "shell.execute_reply": "2021-04-16T19:35:52.076779Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "190.774" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_expected_profits(80, order_array)" ] }, { "cell_type": "code", "execution_count": 83, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:52.098735Z", "iopub.status.busy": "2021-04-16T19:35:52.098012Z", "iopub.status.idle": "2021-04-16T19:35:52.100689Z", "shell.execute_reply": "2021-04-16T19:35:52.100277Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "164.484" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "compute_expected_profits(90, order_array)" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Now, let's sweep through a range of values and compute expected profits as a function of the number of books you print." ] }, { "cell_type": "code", "execution_count": 84, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:52.151466Z", "iopub.status.busy": "2021-04-16T19:35:52.110313Z", "iopub.status.idle": "2021-04-16T19:35:53.044324Z", "shell.execute_reply": "2021-04-16T19:35:53.043782Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "printed_array = np.arange(70, 110)\n", "t = [compute_expected_profits(printed, order_array)\n", " for printed in printed_array]\n", "expected_profits = pd.Series(t, printed_array)" ] }, { "cell_type": "code", "execution_count": 85, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.067959Z", "iopub.status.busy": "2021-04-16T19:35:53.061574Z", "iopub.status.idle": "2021-04-16T19:35:53.181791Z", "shell.execute_reply": "2021-04-16T19:35:53.181406Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "expected_profits.plot(label='')\n", "\n", "decorate(xlabel='Number of books printed',\n", " ylabel='Expected profit ($)')" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Here is the optimal order and the expected profit." ] }, { "cell_type": "code", "execution_count": 86, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.185628Z", "iopub.status.busy": "2021-04-16T19:35:53.185129Z", "iopub.status.idle": "2021-04-16T19:35:53.189282Z", "shell.execute_reply": "2021-04-16T19:35:53.189626Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "(75, 194.444)" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "expected_profits.idxmax(), expected_profits.max()" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide-cell" ] }, "source": [ "Now it's your turn. Choose a prior that you think is reasonable, update it with the data you are given, and then use the posterior distribution to do the analysis I just demonstrated." ] }, { "cell_type": "code", "execution_count": 87, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.194510Z", "iopub.status.busy": "2021-04-16T19:35:53.194020Z", "iopub.status.idle": "2021-04-16T19:35:53.198181Z", "shell.execute_reply": "2021-04-16T19:35:53.198701Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "101" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "# For a prior I chose a log-uniform distribution; \n", "# that is, a distribution that is uniform in log-space\n", "# from 1 to 100 books per week.\n", "\n", "qs = np.logspace(0, 2, 101)\n", "prior = Pmf(1, qs)\n", "prior.normalize()" ] }, { "cell_type": "code", "execution_count": 88, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.216932Z", "iopub.status.busy": "2021-04-16T19:35:53.213964Z", "iopub.status.idle": "2021-04-16T19:35:53.323589Z", "shell.execute_reply": "2021-04-16T19:35:53.324119Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdgAAAFgCAYAAAAYQGiBAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/GU6VOAAAACXBIWXMAAAuJAAALiQE3ycutAAAwFklEQVR4nO3de3hU9Z0/8Pf3zCQkIVduIWQmBAgIk3ARIlrk4gXr/ceWRm1RWCXqqui20t3WfdZ193G36+q2z7Zds1ZQbBcvtVSqrbLeseAFDXdNUIiQyySESxKSDCHJzDmf3x8njAkkIQlzcmYy79fz5Elm5mTm7fGBN99zvud7lIgIiIiIKKQ0uwMQERENRSxYIiIiC7BgiYiILMCCJSIisgALloiIyAIsWCIiIgs47Q4wUMnJyXC5XHbHICKiKOb1etHU1NTtaxFbsC6XC6WlpXbHICKiKObxeHp8jYeIiYiILMCCJSIisgALloiIyAIsWCIiIguwYImIiCzAgiUiIrIAC5aIiMgCLFgiIiILWFqwDzzwAFwuF5zOntez2Lx5MzweD3JycrBy5UoEAgErIxEREQ0KSwv2lltuwY4dO3p8Xdd1FBYWYsOGDSgrK4PP58P69eutjERERDQoLC3Y+fPnIz09vcfXi4uL4XK5kJubCwAoLCzExo0brYxERERRTPQApM03KJ9l61rEXq8Xbrc7+DgrKwter9fGRERENBSIvxXSWGt+NdVCGg9DGo9Amo9CG5eHmCvuszyD7Yv9K6WCP4tIj9sVFRWhqKgo+LihocHSXEREFN5EBDjV2KlEO321dO0IFZcElZIBLX0y1JicQclna8G63W5UVlYGH3u93h5vQbdq1SqsWrUq+Li3OxgQEdHQIYYB+I53jEJrO32vhfhPddpSQSWNghrhhjbhIqiUsVDJY83vw4YPem5bCzY/Px/V1dUoLS2Fx+PBunXrsHTpUjsjERGRTcwiPQZprIXRUG0W6YnDkKZaQPd/s6EjxizOzDxoKR0FmpIBlTwGyhFj33/AGSwt2L/5m7/BG2+8AV3X4XK5cP311+Ouu+7CI488gk2bNsHhcGDt2rUoKChAe3s7Fi5ciOXLl1sZiYiIbCaGATQfNYv0RE1HkdZAGmsB45tLNZUzDio1A9qEuWaJpo6DSskAho/ocnoxXCnp7cRnGPN4PLzhOhFRGBMR89DuiRpzRHqixvxqOtK1SGPizBFo6jio1AyoFPM7EtLCvkh76yLbJzkREVFkExGgtRnS4P2mRE9UwzhxGAi0BbdTMfHmiHTixR1lOg4qZWxEFOlAsGCJiKjPxN8KCY5GO743VHe9tlRzQqVkwJF1oVmiaZlQqeOGbJH2hAVLRERnOX2e1GjwmgV6+vvJuk5bKXNiUfpkaGkuqNRx0FLHAUljoDQudc+CJSKKctLe8k2J1leZh3cbagC9PbiNik+BSnNBy54DlZoJlTbOnMnrjLUxeXhjwRIRRYk+jUo1J1TqODiy50Club75iku0L3iEYsESEQ1BEmjvOD/qhdRVQhqqYDRUd510dHpUOiEfKs1tnitNTofSHDYmHzpYsEREEU7aW8xDu/VVMOorIfVeSONhQAxzA6V9M+lohJuj0kHCgiUiiiDScgJSXwmjY1QqdVVdD/E6YqGNcEGbvABqZJZZqCkZPFdqAxYsEVGYkpYTkLoKs0zrKiD1lZBTjcHX1bBEc93d7Hzz+wg3Z/CGERYsEZHNzLvCnIDUVcKoqzDPmdZXQE41BbdR8SlQI7KgjRwPbWQW1MgsID41qq4rjTQsWCKiQSatzZDjh2AcLzdHpnUVkNbm4OsqPgVqZPY3ZToiCyoh1b7ANCAsWCIiC4m/1SzQ4+Uw6sohxyu6nDNVCalQoyZCG5nVMTIdDxWfYmNiChUWLBFRiIge6Lgsptws1OPl5h1iYN5TRcUmmCPTiRdDG5VtlilHpkMWC5aIaADMO8XUwTh+CHLsa/OQb30VYOjmBo4YaCOyoE27AmrUBGgjxwNJo3nONIqwYImI+kD8rZDj5WaRHjsEOX6w03lTZa5+NOlbUCOzoUZlm4vcc8GGqMaCJSI6g4hAGmvNEj12CMaxg5ATNQge6o1Lgho1EY7RE6FGTzBLNWaYvaEp7LBgiSjqib8NUlcO4+jX5uHeYwch7S3mi5qj41Dv5eZkpNETgeEjeKiXzokFS0RRR1oagmVqHP0aUl8VXFZQxadAZUyFY/QkqNETzSUFuQoSDQALloiGNDEM88bgR8u+GaGerO94VUGlZcIxeQHUmEnQxuRwdEohw4IloiFF9IB5mcyRMhhHyyBHyyD+UwAA5YyDGj0B2qR50MZMgho1ASo23ubENFSxYIkooom/reNQbxnkyAEYxw8Buh9Ax2SkcR44xuRApedApbq4Ti8NGhYsEUUUaW8xD/fW7occPQCjrvKb86eJo+DIzocaMxlaeo658D0P95JNWLBEFNak/ZRZqEf2w6j9ClJXieDlMqkd50/TzUJVCWn2hiXqhAVLRGFF/K3BEapR++XZhTr1MqixF0BLnww1jDcMp/DFgiUiW0mgHXLsoFmmh7+EUVfxzSHf1HFwXHAZ1Ngp0NKnQMWxUClysGCJaFCJYZg3Dj/8JYzaL2EcLftmUlJKhnnIN+OCjkJNsjkt0cCxYInIUiICNB0xy/TwPsjhr765bCYhzZyUNHYqtIwLeA6VhhQWLBGFnLSdNA/5VpeYpdqxsIOKiTdXScqYCm3sVCA5nbN8achiwRLReRNDN+8yU1MKqSmFcbwcgJjr+I7JgWPKIqiMqVAjsngdKkUNFiwRDYj46mDUlMCoKYEc/hLibwUAqOR0OKZeBm2cByr9At5lhqIWC5aI+kT0gHn5TPUXMKq/gDQeBtBx2HecB45xudAypkEljrQ5KVF4YMESUY+kpQFGdSmM6s8hNfsggY5R6sjxcMy4Htq4XHM9Xx72JToLC5aIgkTEPJfq3QvD+zmkwQugY5SamQtHZh60zFyo+BSbkxKFPxYsUZQTfxvk8D4YVXvMkWprM4COVZPyroaWOd28L6rmsDkpUWRhwRJFITlZD8P7uVmqtV8BRsCc8Tv2AjjcM6FlzoBKHGF3TKKIxoIligIiAjlRA6NyF4yqPZD6SgCAGpYIx4SLoFwzzFm/MXE2JyUaOliwREOUiJhr/FbthlG5C9J8DACgkseah35dM6BGTeQEJSKLsGCJhhDRA5Dar8yRqncP5FQTAEAblQ1HznxoWbOgUsbanJIoOrBgiSKc6AHI4VIYFTthVO421/lVGrT0KXBMvw6aeybUcJ5PJRpsLFiiCCS6H1JTCr1iB6Rqr1mqmgPauFw4xs+G5prOe6US2YwFSxQhupbqHnNpQs1plmr2HLNUYxPsjklEHViwRGFMDANS+yWM8u0wKnaaI1VHDLTMXDjG50PLzIOKjbc7JhF1gwVLFGbM2b9fm6Vavt1c+EFzQMvwwDFhLjT3DF5OQxQBWLBEYcI4UQPj4DYYh7ZDTtYBUNDGTjFLNWsWz6kSRRgWLJGN5FQjjEPF0L/eBmmoAgBooybA4VkMbfxsqIRUewMS0YCxYIkGmQTaYVTuNkerNaUABCppNBwzb4Rjwlyo5DF2RySiEGDBEg0CETHvpVr2MfSKHUCgDSp2OBxTFkKbeLG5mL5SdsckohCytGA3b96MVatWob29HQsXLsSaNWvgdHb9yDfffBMPPfQQACAhIQHPPvsspk2bZmUsokEjJ+uhf70NxtefQJqPmgtAuGfAMfFbUJl5UA7+G5doqFIiIla8sa7rmDx5Mv785z8jNzcXN998M6699lrccccdXbbLysrCW2+9hWnTpmHNmjV45513sGHDhnO+v8fjQWlpqRXRic6L6H7zLjVlH39zCDg1E46ceeZoNS7J7ohEFCK9dZFl/3wuLi6Gy+VCbm4uAKCwsBBPPvnkWQWrlEJTk7leamNjIzIyMqyKRGQpaayFfmArjLJPIO0noWIT4LhgEbSceVAjsngImCjKWFawXq8Xbrc7+DgrKwter/es7davX4/rr78e8fHxGD58OD766KNu36+oqAhFRUXBxw0NDaEPTdRPEmg31wA+sBXG0TIAgDZ2KhyT55trADtjbU5IRHax9ARQ53+xd3ckWtd1PPbYY9i8eTOmT5+OdevWYcWKFXjjjTfO2nbVqlVYtWpV8LHH47EmNFEfGCcOwziwBcbX2yDtLVBxSXDkXQ1HznzOAiYiABYWrNvtRmVlZfCx1+uFy+Xqss2uXbvQ1NSE6dOnAwBuu+02PPDAA1ZFIjovogdgePfC+OoDGLVfAYC5utKUBea9VTlhiYg6sexvhPz8fFRXV6O0tBQejwfr1q3D0qVLu2yTmZmJr776CtXV1cjMzMSbb77JGcQUdqTlBPQDH8LYvwVyqtG8vCb323BMWQiVNNrueEQUpiwrWIfDgbVr16KgoCB4mc7y5cuxfft2PPLII9i0aRMyMjLwn//5n/j2t78Np9OJxMREPPvss1ZFIuqz0+sB619uhlGxExADauR4OC/8K2jZ+Ty3SkTnZNllOlbjZTpkBdEDMCp2Qt/3LqSuAtCccEy4CNoFl0EblW13PCIKM7ZcpkMUSaTVB33/FhhffWAeBo5PgWPWEjimLOB1q0Q0ICxYimrSWAu99F3oB7cBut88DDynwFxon5OWiOg88G8QikrG0TLoJe/AqNoDANCyZsHhWQw1ehIXhCCikGDBUtQQEUjVHuglb8M49jXgiIFjykKzWHntKhGFGAuWhjzRAzDKi6F/8Rak8TDUsETz1nAXXAYVx5uYE5E1WLA0ZEmgHcbXH0P/4m3IyTqo4SPhvPj70CbN42U2RGQ5FiwNOeJvg7H/L9BL34GcaoJKHgvnpbdDy76IE5eIaNDwbxsaMsTfBuOrD8xibW2GSnPDOff70LIu5MQlIhp0LFiKeMERa8nbZrGOHI+YeSugMqezWInINixYilgSaDeL9Yu3WKxEFHZYsBRxRA+Yk5f2vgFpOQE1IovFSkRhhwVLEUNEYJRvh777NUjzMaiUDDgX3cJzrEQUlliwFBGMmlIEdrwCafCal9tceju0CRdDaZrd0YiIusWCpbBm1FdB3/EKjMP7oOKS4Jz7PWiTF/ByGyIKe/xbisKSnKyHvus16Ac/NZc0nHE9HLnfhoqJszsaEVGfsGAprIi/DXrJW9BL3gb0ABw58+CY9f+gElLtjkZE1C8sWAoLIgLj0GfQd26EtJyAljENjvyboKVl2h2NiGhAWLBkO+N4OfTil2EcOwiVNBoxl98H5ZrBmcFEFNFYsGQbafNB3/kq9AMfQsUMg3POd6FNvYITmIhoSODfZDToRARG2UfQd2yEtJ+EY+IlcMxZChWfYnc0IqKQYcHSoDLqK6FvexHG8UNQqZmIufxeaOmT7Y5FRBRyLFgaFBJoh77nz9BL34VyxMKZfxO0qZdDaQ67oxERWYIFS5YzqksQ+PQFiK8OWtYsOC+6BWr4CLtjERFZigVLlpE2HwLFv4dx8FOo+BQ4L7sHjqwL7Y5FRDQoWLBkCb1yF/RtL0Bam+GYsgiO2d+Bio23OxYR0aBhwVJISWszAp/9Dkb5dvOa1oV3Qxs7xe5YRESDjgVLIWNU7UHgk/WQVh8c066E48K/gnLG2h2LiMgWLFg6b+JvhV78e+hlH0EljkLM1fdAS8+xOxYRka1YsHRejCNlCHy0DuKrg2PyfDjyb4aKGWZ3LCIi27FgaUDE0KHv3QR97xtQcYmIuWIVNNcMu2MREYUNFiz1m/jqENj6LIxjX0PLzIPz0tuh4pLsjkVEFFZYsNQvesVO6B//L0Rvh/Oim83F+XnXGyKis7BgqU9ED0Df+Qr0fe9DJacjZuGd0EZk2R2LiChssWDpnMRXj8CWNTCOH4I2YS6cl9zGiUxEROfAgqVeGTWlCGx5BhJog/OSW6FNXsBDwkREfcCCpW6JCIwv3kJg16tQw0cg5qofQhvJQ8JERH3FgqWziL8VgY9/C6NiJ7SMaXAuvBNqWKLdsYiIIgoLlroQXx387z8JOVEDR97VcMz6KyhNszsWEVHEYcFSkHGkDIEPnjLPty64E44JF9kdiYgoYrFgCQCgl32MwLbnoYYlIubqv4M2KtvuSEREEY0FG+VEBPru16B//n9QI8cj5vL7oBJS7Y5FRBTxWLBRTHQ/Ah//L4xDn0Fzz4JzQSFvL0dEFCIs2Cgl7S0IbH4KxpH9cEy7Ao45N3EyExFRCLFgo5C0nID/vf+GNFTDedHNcEy70u5IRERDDgs2ykjTUfjf/QWk5QScCwo5U5iIyCIs2ChiNHgReOcXkEA7Yq64H9o4j92RiIiGLEtPum3evBkejwc5OTlYuXIlAoHAWdv4fD6sWLECU6ZMwdSpU/H0009bGSlqGccPIfDWzwHDQMy3V7NciYgsZlnB6rqOwsJCbNiwAWVlZfD5fFi/fv1Z261evRp5eXnYv38/9u3bh+985ztWRYpaRu1+BN7+BaA54Lx6Na9xJSIaBJYVbHFxMVwuF3JzcwEAhYWF2LhxY5dtmpub8frrr2P16tUAAKUUxowZY1WkqGTUfgX/e78CYuPNBSTSXHZHIiKKCpYVrNfrhdvtDj7OysqC1+vtss3BgweRnp6O+++/H7Nnz8aSJUtQXl5uVaSoY5brf0PFJSHm6r+DShlrdyQioqhh6TnYzvcNFZGzXvf7/di9ezeWLFmCnTt34sYbb8TKlSu7fa+ioiJ4PJ7gV0NDg2W5h4Iu5frtH0EljbI7EhFRVLGsYN1uNyorK4OPvV4vXC7XWduMGDEC1157LQBg2bJl2LlzZ7fvt2rVKpSWlga/0tLSrIoe8YyjZfC/X8RyJSKykWUFm5+fj+rqapSWlgIA1q1bh6VLl3bZJj09HXl5edi+fTsA4J133gmes6WBMeoqEXjvv6Fi4hBz1YMsVyIim1hWsA6HA2vXrkVBQQFycnKQkJCA5cuXY/v27bjuuuuC2z311FN44IEHMGPGDPz85z/HM888Y1WkIc84cRiBd34BOGLgvOpBqGROGCMisouS7k6ORgCPxxMcHRMgvnr433wc8LeZl+KMyLI7EhHRkNdbF3F19yFAWn3wv/tLSNtJOK9YxXIlIgoDLNgIJ4F2BN5/EtJ8FDEL74KWPtnuSEREBBZsRBPDQODDZ2EcPwTnJbdCc8+0OxIREXVgwUYwfccfYFTuhmP6tXBMnm93HCIi6oQFG6H0rz6Avu89aBPmwjFrid1xiIjoDCzYCGTUlCLw2cvQRk+Cc96KLitmERFReGDBRhhprEXgL2ugEtLgvPxeKEeM3ZGIiKgbLNgIIv5W+D/4NUQMOK+4Dyouye5IRETUAxZshBARBD76DaTxMJyX3s7bzhERhTkWbIQwvngLRuUuOPKugWP8bLvjEBHRObBgI4BR+xUCu16FljGNM4aJiCIECzbMyalGBLY+A5WQAueCQiiN/8uIiCIB/7YOY2IYCGxdB2n1wbnwLk5qIiKKIL0W7A9/+MPgz6+//rrVWegMRsnbMGq/hHPWEmhjcuyOQ0RE/dBrwW7ZsiX48yOPPGJ5GPqGcewgArtfg5YxDVre1XbHISKifuIh4jAk/jYEtj4LFZsA56W3c6UmIqII5Oztxfr6erz00kswDAP19fV48cUXu7y+bNkyS8NFK3377yG+44i5/D6ohFS74xAR0QD0WrCXX3453n777eDP77zzTvA1pRQL1gKGdy/0Ax/CkXMpbz9HRBTBei3Y5557brByEABpO4nAJ89DDR8JR/5NdschIqLz0GvBAsCBAwfw9NNPY9++fVBKwePx4J577sHEiRMHI19U0bdvgJxqRMxVD0LFxtsdh4iIzkOvk5x27NiB/Px8HDlyBFdddRUWL16MI0eOYM6cOdizZ89gZYwKRvUX0L/+BI4pC6FlTLU7DhERnadeR7D/+q//iqeeeuqsc60vv/wy/uVf/gV//OMfLQ0XLcTfhsC2F6AS0uCY81274xARUQj0OoItLS3tdiLTLbfcgpKSEstCRRt9z58gJ+vhvPj7UDFxdschIqIQ6LVgExMTB/Qa9Z1RXwm99D1o42dz1jAR0RByzutgz7z2FTDvTdrQ0GBZqGghItC3vQjlHAbnRbfYHYeIiELonNfBvvvuuxCRbl+j82OUfQzj+CE482/ighJERENMrwW7ePFiNDc345577uny/Jo1a5CcnGxpsKFO2lug7/ojVOo4aBdcZnccIiIKsV7Pwf7Xf/0Xvve97531/Pe+9z38/Oc/tyxUNND3vgFpbYbzolugHOe8HJmIiCJMrwXr9/uRmpp61vPJyclob2+3KtOQJ4210Pe9Dy3rQl7zSkQ0RPVasM3Nzd0WaVtbG5qbmy0LNdQFdmwElIKT17wSEQ1ZvRbsDTfcgMLCQvh8vuBzPp8Pd999N2644QbLww1FxpEDMLx74Jh6BVTSaLvjEBGRRXot2P/4j/+AYRgYN24cZs+ejTlz5iAzMxOGYeDxxx8frIxDhohA3/EKVEw8HNOvsTsOERFZqNfZNQkJCXjhhRdw6NAhlJSUQESQl5eHCRMmDFa+IUWq9piX5cxeCjWMC3UQEQ1lfZq+OmHCBJbqeRLDQGDXq1DxKdCm8hpiIqKhrtdDxBQ6xqHPII2H4Zh5A5Qz1u44RERkMRbsIBBDh773DajhI6FNmmd3HCIiGgQs2EFgHCqGNB+FY8b1XFSCiChKsGAtJoYB/fNNUIkjoU282O44REQ0SFiwFjMqdkCajsCRdw1Hr0REUYQFayERgf75/5kzhyd9y+44REQ0iFiwFpKaEsiJajhyr4JyxNgdh4iIBhEL1kJ6ydtQMfHQJi+wOwoREQ0yFqxFjLoKGLVfQbtgEVRMnN1xiIhokLFgLaKXvgtoDji4ahMRUVRiwVpAWk7AqNgBLTsfKiHV7jhERGQDFqwF9P1bAEOHY9qVdkchIiKbsGBDTPQAjP1boI2eBG3keLvjEBGRTSwt2M2bN8Pj8SAnJwcrV65EIBDocdv77rsPTmfkL8RgVO6CtDZDu+Ayu6MQEZGNLCtYXddRWFiIDRs2oKysDD6fD+vXr+92261bt+LkyZNWRRlUxv6/QMUlQRt/od1RiIjIRpYVbHFxMVwuF3JzcwEAhYWF2Lhx41nbtbW14aGHHsLPfvYzq6IMGmmshXHkALSceVxYgogoyll2TNbr9cLtdgcfZ2Vlwev1nrXdo48+isLCQowePbrX9ysqKkJRUVHwcUNDQ+jChoh+YCsAwJEz3+YkRERkN0vPwSqlgj+LyFmv7927F59++inuuOOOc77XqlWrUFpaGvxKS0sLadbzJXoAxtfboI29ACp5jN1xiIjIZpYVrNvtRmVlZfCx1+uFy+Xqss1HH32E0tJSTJgwAdnZ2dB1HdnZ2WE5Oj0Xw7sX0uaDxtErERHBwoLNz89HdXU1SktLAQDr1q3D0qVLu2xz7733oqamBuXl5SgvL4fD4UB5eXnYjU77wij72Fx3OGuW3VGIiCgMWFawDocDa9euRUFBAXJycpCQkIDly5dj+/btuO6666z6WFtIazOMmhJz5SZnrN1xiIgoDFh64ekVV1wRHMGelp+fj02bNnW7fW/XyYYz41AxIAa0iZfYHYWIiMIEV3IKAf3gNqjEkVBjJtkdhYiIwgQL9jxJ0xFIXQW0CXO7zJomIqLoxoI9T/qhYgCAln2RzUmIiCicsGDPk1G+HSp1HLS0TLujEBFRGGHBngfjxGFI42Fo4+fYHYWIiMIMC/Y8GBU7AACO7HybkxARUbhhwZ4Ho2InVEoGVMpYu6MQEVGYYcEOkDQfg5yohpbF29IREdHZWLADZFTuAgDe95WIiLrFgh0gw7sXavgIqDT3uTcmIqKow4IdAGnzwTj6NTTXDC4uQURE3WLBDoBRXWKuPeyaYXcUIiIKUyzYATCqvwAcsVBjp9gdhYiIwhQLtp/EMCDVJdAypkE5YuyOQ0REYYoF209SVw5pPwktM9fuKEREFMZYsP1k1Jj3t9XGsWCJiKhnLNh+kppSqKQxUEmj7I5CRERhjAXbD9LeAuP4IWjjPHZHISKiMMeC7Qc5cgAQAypjqt1RiIgozLFg+8E4vA+AgpbOy3OIiKh3LNh+MGr3Q43Mgho23O4oREQU5liwfSStzebdczh6JSKiPmDB9pFx5AAAQOPqTURE1Acs2D6SowcAKKgxOXZHISKiCMCC7SOj9gBUmgsqNsHuKEREFAFYsH0g7acgDV5o6Ry9EhFR37Bg+0COHwIgPDxMRER9xoLtA+Po1wAAbfREm5MQEVGkYMH2gRw7CJWQBjV8hN1RiIgoQrBgz0FEIMcPQXH0SkRE/cCCPQdprIX4T/HwMBER9QsL9hzMCU6AGpVtbxAiIoooLNhzkOPlgNKgRmTZHYWIiCIIC/YcjLpyqNRMKGes3VGIiCiCsGB7IXrAXGBiJEevRETUPyzYXkhjDWDoUCPH2x2FiIgiDAu2F1JXBQBQHMESEVE/sWB7IfWV5gSn1Ey7oxARUYRhwfZC6qugUsZyghMREfUbC7YHIgKjwQs1wm13FCIiikAs2J40HwMCbdDSXHYnISKiCMSC7YFxohoAoFiwREQ0ACzYHkjD6YLlBCciIuo/FmwP5EQ11LBEIC7Z7ihERBSBWLA9kIZqqNRxUErZHYWIiCIQC7Ybovshzcd4/SsREQ2YpQW7efNmeDwe5OTkYOXKlQgEAl1er6qqwpVXXolp06YhLy8PDz/8sJVx+kyajgBiQKWOtTsKERFFKMsKVtd1FBYWYsOGDSgrK4PP58P69eu7bON0OvH4449j37592LlzJ7Zu3Yo//elPVkXqMzlxGACgUsbZnISIiCKVZQVbXFwMl8uF3NxcAEBhYSE2btzYZZuMjAzk5+cDAGJjYzFjxgxUVFRYFanPpLEWAKBSM2xOQkREkcqygvV6vXC7v1kFKSsrC16vt8ft6+rq8Oqrr2Lx4sVWReozaTwMFZsADEu0OwoREUUop5Vv3nkGroj0uF1bWxsKCgqwevVqTJs2rdttioqKUFRUFHzc0NAQuqBnkKYj5hrEnEFMREQDZNkI1u12o7KyMvjY6/XC5Tp7VSRd13HrrbciPz8fDz74YI/vt2rVKpSWlga/0tLSLMktImbBJqdb8v5ERBQdLCvY/Px8VFdXo7S0FACwbt06LF269Kzt7r77biQnJ+OJJ56wKkr/tDQAuh8qmTOIiYho4CwrWIfDgbVr16KgoAA5OTlISEjA8uXLsX37dlx33XUAgI8++gjr1q1DcXExLrzwQsyaNQu/+tWvrIrUJ9J0xPwheYytOYiIKLJZeg72iiuuCI5gT8vPz8emTZsAAJdeemmv52btIE1HAQCKBUtEROeBKzmdQZo7CjaJBUtERAPHgj2DNB2DSkiFcsbaHYWIiCIYC/YM0nwUKmm03TGIiCjCsWA7ERGI7zhUIguWiIjODwu2s9YmQPcDHMESEdF5YsF2Is3HAICHiImI6LyxYDsRXx0AQA0fYXMSIiKKdCzYToIFmzTK5iRERBTpWLCd+Y4DjhggLtnuJEREFOFYsJ3IyXqo4SN4Fx0iIjpvLNhOxFfH869ERBQSLNgOIhIcwRIREZ0vFuxpbT7ACAAsWCIiCgEWbAc5WQ+Al+gQEVFosGBPO9kAAFDD02wOQkREQwELtoO0dBRsAguWiIjOHwu2g3SMYMGCJSKiEGDBdpCWBqiYeKiYYXZHISKiIYAFe1rLCSAh1e4UREQ0RLBgO8ipRp5/JSKikGHBdpCWE1AcwRIRUYiwYAGIvxUItAEJKXZHISKiIYIFC5jnXwGoeBYsERGFBgsWgJxqMn9gwRIRUYiwYGFOcAIAFc/7wBIRUWiwYAHgdMHyRutERBQiLFgA0spDxEREFFosWAA41QQ4h3EVJyIiChkWLMxJTiouye4YREQ0hLBgAUibjxOciIgopFiwgHmIeBhHsEREFDpRX7AiAmlthopnwRIRUehEfcEi0AYYAYDnYImIKIRYsK3NAMBJTkREFFJRX7DSUbA8B0tERKEU9QWLNh8AQMUl2hyEiIiGkqgvWGk1CxbDhtsbhIiIhpSoL9jgCHYYR7BERBQ6UV+w0nZ6BMuCJSKi0In6gkXbSUBzAs5Yu5MQEdEQEvUFK20noYYNh1LK7ihERDSERH3Bou0kJzgREVHIRX3Bnh7BEhERhVLUFyzaW4BYFiwREYVW1BestLdAxSbYHYOIiIaYqC5Y0QPmYv/DWLBERBRaUV2w8J8yv3MES0REIWZpwW7evBkejwc5OTlYuXIlAoHAgLaxTNtJAOAhYiIiCjnLClbXdRQWFmLDhg0oKyuDz+fD+vXr+72NpZLGIPbmn0Gb9K3B+0wiIooKlhVscXExXC4XcnNzAQCFhYXYuHFjv7exktI0qLgkqJi4QftMIiKKDk6r3tjr9cLtdgcfZ2Vlwev19nub04qKilBUVBR83NDQEOLEREREoWPpOdjOyw+KyIC3AYBVq1ahtLQ0+JWWlha6oERERCFmWcG63W5UVlYGH3u9Xrhcrn5vQ0REFIksK9j8/HxUV1ejtLQUALBu3TosXbq039sQERFFIssK1uFwYO3atSgoKEBOTg4SEhKwfPlybN++Hdddd12v2xAREUU6Jb2d+AxjHo8nOPIlIiKyQ29dFN0rOREREVmEBUtERGQBFiwREZEFWLBEREQWYMESERFZIGJnEScnJw94UYqGhgauBNVP3Gf9x33Wf9xn/cd91n+h3GderxdNTU3dvhaxBXs+eIlP/3Gf9R/3Wf9xn/Uf91n/DdY+4yFiIiIiC7BgiYiILBCVBbtq1Sq7I0Qc7rP+4z7rP+6z/uM+67/B2mdReQ6WiIjIalE5giUiIrIaC5aIiMgCUVWwmzdvhsfjQU5ODlauXIlAIGB3pLBTVVWFK6+8EtOmTUNeXh4efvjh4Gs//vGPkZOTgylTpuAPf/iDjSnD13333Qen0xl8zH3WM5/PhxUrVmDKlCmYOnUqnn76aQDcZ7158803MWvWLMyaNQvz5s3Dvn37AHCfdfbAAw/A5XJ1+XMI9LyPqqqqsGDBAkyZMgWLFi1CTU1N6MJIlAgEAjJhwgT54osvRETkpptuknXr1tmcKvzU1NRIcXGxiIi0tbXJwoUL5bXXXpO33npLFixYIH6/X7xer7hcLmlqarI5bXjZsmWLrFixQhwOh4gI99k53HXXXfL444+LiIhhGHLkyBHus3Nwu91SWloqIiJPP/20FBQUcJ+dYevWrVJbWxv8cyjS+5/F73//+/L000+LiEhRUZGsWLEiZFmiZgRbXFwMl8uF3NxcAEBhYSE2btxoc6rwk5GRgfz8fABAbGwsZsyYgYqKCmzcuBG33347nE4nMjMzMX/+fLz99ts2pw0fbW1teOihh/Czn/0s+Bz3Wc+am5vx+uuvY/Xq1QAApRTGjBnDfXYOSqngqkGNjY3IyMjgPjvD/PnzkZ6e3uW5nvaRiGDTpk1YsWIFAOCv//qv8ac//SlkWaKmYL1eL9xud/BxVlYWvF6vjYnCX11dHV599VUsXryY++8cHn30URQWFmL06NHB57jPenbw4EGkp6fj/vvvx+zZs7FkyRKUl5dzn53D+vXrcf3118PtduPZZ5/FP//zP3Of9UFP+6iurg7Dhw9HXFwcAGD48OGIjY1FY2NjSD43agoWMP/1d5rw6qRetbW1oaCgAKtXr8a0adMAcP/1ZO/evfj0009xxx13nPUa91n3/H4/du/ejSVLlmDnzp248cYbsXLlSgDcZz3RdR2PPfYYNm/ejKqqKvz4xz8Ojry4z86tp33U+fkzXztfUVOwbrcblZWVwcder3fANwsY6nRdx6233or8/Hw8+OCDALj/evPRRx+htLQUEyZMQHZ2NnRdR3Z2NvdZL9xuN0aMGIFrr70WALBs2TLs3LmT+6wXu3btQlNTE6ZPnw4AuO222/DBBx9wn/VBT/to5MiR8Pl8aG1tBQC0tLTA7/cjJSUlNB8csrO5YS4QCMjEiROlpKRERERuueUWTnLqwcqVK+WOO+4QwzCCz7399tuycOFCCQQCUl1dLW63O6onUvTm9OQK7rPeLVy4MDih7tVXX5V58+Zxn/WipqZGRo4cKV6vV0REXnvtNZkzZw73WQ86T3LqbR8tW7ZM1qxZIyIi//M//xPSSU5RU7AiIu+9955MmzZNJk2aJHfccYf4/X67I4WdDz/8UABIXl6ezJw5U2bOnCm//OUvRUTk7//+72XSpEmSk5Mjv//9721OGr46/8HmPutZSUmJXHLJJTJ9+nRZsGBBcHYs91nP1q1bJx6PR2bMmCHz5s2T3bt3iwj3WWd33323ZGZmCgDJzMyUu+++W0R63keVlZUyf/58mTx5sixYsCD4D5hQ4FKJREREFoiac7BERESDiQVLRERkARYsERGRBViwREREFmDBEhERWYAFS0REZAEWLBERkQVYsEQ9UEoF772Zl5d3XndfOvPelKH0wQcfYPHixQP63dN3Thpsjz766IB+z+/3Y968eWhpaQEAVFRUIDs7Gz/5yU+C2/h8PsybN4/3eybbsWCJeuBwOLB7927s3r0bf/jDH3DvvffaHQmAuVZ0qN5j+/bt5/1evb1/TwZasOvXr8dVV12FhIQEAMD48ePxySefYM2aNcFtEhMTsWjRIrz44osD+gyiUGHBEvVBY2Mj0tLSgo//+Mc/YubMmZg+fTqWLVuG5ubmXp8/raWlBddddx1++ctfdvs5Pf2+0+nEY489hksvvRQvv/wynn/+eUyePBkXXXQR/vznP3d5jw8++ADz58/HnDlzcNVVV6Gqqqrb9zj93GlOpxP/9m//hgsvvBAzZszA/v37AQC//e1vg5/14IMP9jhaPvP9CwoKkJ+fj7y8vOBNIwDgwQcfhK7rmDVrVvC9esp8pt/85je4+eabuzyXlJSE1tbWLr9TUFCA3/zmN92+B9GgCdmii0RDDACZOXOmeDweiYuLk1deeUVERGpra2Xs2LFSUVEhIiL333+//OQnP+nxeRFzfeKGhgZZsGCBPPfcc91+Xm+/D0CeeeYZERE5fPiwZGRkSE1NjRiGIQUFBXLllVeKiEhdXZ1ccsklcuLECRER+d3vfic333zzWe9xWud1kwHISy+9JCIiTzzxhNx5551SU1MjGRkZcvjw4bM+q7v91fn9jx8/LiIiuq7LkiVL5M033+z2c3vL3Fl7e7ukpqZ2uQmFiMgDDzwgsbGx8vrrrwef8/v9kpKSIoFAoNusRIOBI1iiHpw+RFxSUoI9e/bg3nvvhdfrxaeffor58+cjKysLAFBYWIj333+/x+cB8x6TixYtwg9+8APcfvvt3X5eb78PALfeemuX7TIyMqCUwm233Rbc5uOPP8b+/fuxaNEizJo1Cz/96U+73Hz79Ht0RymF7373uwCAuXPn4tChQ8HPGjt27Fmf1Z3O779mzRpceOGFmDVrFrZt24bPP/+82985V+bTjh8/juTk5C7379y2bRs++eQT3HPPPV3e3+l0Yvjw4aivr+81L5GVrJt5QTSETJkyBdnZ2fjkk08QGxt71utKqW5v1Hy6DJRSmD9/Pl5//XV85zvfgaad/W/b3n7f4XAgLi6ux+06v8eCBQvw6quvnvVa5/fojqZpiImJCW57epLQmTek7knn9//LX/6CV155BVu2bEFSUhJ+9KMfBe+52Z/MncXHx6OtrS342O/347777sNzzz2HPXv24M033+yy/alTpxAfH9+n7ERW4AiWqA9qa2uxf/9+TJo0CRdffDE+/PDD4A2cn332WVx++eU9Pn/ak08+idjYWNx1113dluS5fv+0Sy65BB9++CEOHz4MEcHzzz8ffO1b3/oWPvvsM3zxxRcAgEAg0OPIsS/mzp2LrVu3ora2FiKCF154oU+/19TUhNTUVCQlJaGurg6vvPJKl9cTEhKCM4H7mjk1NRUxMTFobGwEADz22GO4/vrrMXPmTMycObPL7xw7dgzJyclITEwc0H83USiwYIl6cHoizsyZM3HZZZfh4YcfxuzZszF27FgUFRXhhhtuwPTp01FXV4d//Md/7PH505RS+PWvfw2lFO6+++6zSvZcv995uyeeeAKLFi3CwoULMWXKlOBro0aNwksvvYQ777wzWDxbtmwZ8D4YN24cfvrTn2LBggVYuHAh3G43kpOTz/l711xzDRITE5Gbm4vbbrsNixYt6vL6D37wA8ydOxfXXHNNvzLfcMMNeP/99/Hll1/itddewz/90z8BADweDw4dOoT29nYAwLvvvosbb7xxwP/dRKHA+8ESUa98Ph8SExMhIrjnnnuQnZ2Nf/iHf7AlS0lJCR566KGzZk6f6dprr8UvfvELXHDBBYOUjOhsHMESUa/+/d//HTNmzIDH44HP58Pf/u3f2pYlNzcXBQUFwcPL3fH5fFi2bBnLlWzHESwREZEFOIIlIiKyAAuWiIjIAixYIiIiC7BgiYiILMCCJSIisgALloiIyAIsWCIiIguwYImIiCzw/wE1gT8DkxLxwQAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "# Here's the CDF of the prior\n", "\n", "prior.make_cdf().plot(color='C1')\n", "decorate(xlabel=r'Book ordering rate ($\\lambda$)',\n", " ylabel='CDF')" ] }, { "cell_type": "code", "execution_count": 89, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.327897Z", "iopub.status.busy": "2021-04-16T19:35:53.327424Z", "iopub.status.idle": "2021-04-16T19:35:53.330290Z", "shell.execute_reply": "2021-04-16T19:35:53.330803Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "# Here's a function that updates the distribution of lambda\n", "# based on one week of orders\n", "\n", "from scipy.stats import poisson\n", "\n", "def update_book(pmf, data):\n", " \"\"\"Update book ordering rate.\n", " \n", " pmf: Pmf of book ordering rates\n", " data: observed number of orders in one week\n", " \"\"\"\n", " k = data\n", " lams = pmf.index\n", " likelihood = poisson.pmf(k, lams)\n", " pmf *= likelihood\n", " pmf.normalize()" ] }, { "cell_type": "code", "execution_count": 90, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.335171Z", "iopub.status.busy": "2021-04-16T19:35:53.334695Z", "iopub.status.idle": "2021-04-16T19:35:53.338131Z", "shell.execute_reply": "2021-04-16T19:35:53.337723Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "# Here's the update after week 1.\n", "\n", "posterior1 = prior.copy()\n", "update_book(posterior1, 10)" ] }, { "cell_type": "code", "execution_count": 91, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.342520Z", "iopub.status.busy": "2021-04-16T19:35:53.342028Z", "iopub.status.idle": "2021-04-16T19:35:53.344891Z", "shell.execute_reply": "2021-04-16T19:35:53.345436Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "# And the update after week 2.\n", "\n", "posterior2 = posterior1.copy()\n", "update_book(posterior2, 9)" ] }, { "cell_type": "code", "execution_count": 92, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.348958Z", "iopub.status.busy": "2021-04-16T19:35:53.348514Z", "iopub.status.idle": "2021-04-16T19:35:53.352690Z", "shell.execute_reply": "2021-04-16T19:35:53.353204Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "(21.78849107458653, 10.000000817984526, 9.500000000003652)" ] }, "execution_count": 92, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "prior.mean(), posterior1.mean(), posterior2.mean()" ] }, { "cell_type": "code", "execution_count": 93, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.356962Z", "iopub.status.busy": "2021-04-16T19:35:53.356103Z", "iopub.status.idle": "2021-04-16T19:35:53.359918Z", "shell.execute_reply": "2021-04-16T19:35:53.359487Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "9.568378334655758" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "# Now we can generate a sample of 1000 values from the posterior\n", "\n", "rates = posterior2.choice(1000)\n", "np.mean(rates)" ] }, { "cell_type": "code", "execution_count": 94, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.363099Z", "iopub.status.busy": "2021-04-16T19:35:53.362692Z", "iopub.status.idle": "2021-04-16T19:35:53.368315Z", "shell.execute_reply": "2021-04-16T19:35:53.367822Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "array([[ 9, 6, 6, 6, 9, 8, 11, 9],\n", " [ 4, 5, 3, 1, 6, 3, 4, 4],\n", " [ 5, 7, 7, 10, 4, 7, 12, 10],\n", " [ 4, 4, 10, 6, 10, 19, 9, 10],\n", " [ 9, 11, 13, 8, 8, 13, 18, 3]])" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "# And we can generate a sequence of 8 weeks for each value\n", "\n", "order_array = np.random.poisson(rates, size=(8, 1000)).transpose()\n", "order_array[:5, :]" ] }, { "cell_type": "code", "execution_count": 95, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:53.428215Z", "iopub.status.busy": "2021-04-16T19:35:53.402097Z", "iopub.status.idle": "2021-04-16T19:35:54.443135Z", "shell.execute_reply": "2021-04-16T19:35:54.444074Z" }, "tags": [ "hide-cell" ] }, "outputs": [], "source": [ "# Solution\n", "\n", "# Here are the expected profits for each possible order\n", "\n", "printed_array = np.arange(70, 110)\n", "t = [compute_expected_profits(printed, order_array)\n", " for printed in printed_array]\n", "expected_profits = pd.Series(t, printed_array)" ] }, { "cell_type": "code", "execution_count": 96, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:54.467573Z", "iopub.status.busy": "2021-04-16T19:35:54.463557Z", "iopub.status.idle": "2021-04-16T19:35:54.727439Z", "shell.execute_reply": "2021-04-16T19:35:54.728002Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "image/png": "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DW2+liAIEEURgYGByMjI0H/dfqpInz59Wn2s2MpupXceiWWo5hxtPV97P+vTpw9GjBjR4qzUwMBApKenIyYmBh9++KHBG5zfnr+t9w38dr0BQCaTtXmNRVHE559/rr+uly5dwuzZs832qDbqnVhciQDY2triv/7rv/Daa6/pbwsICMCpU6eg0+lw/fp1pKamdum5t27diqqqKmg0Gnz11VdISEjA8OHDUV1djd27dwNoKgiGHIs2fPhwlJWVIT09HQDw0UcfYcKECd3K0dbzTZgwAR9++CGAphnCR48exahRowA0/eHx9ddfIz09Xd/iLyoqgq2tLR588EH885//1Ldy73Ty5EmcOXMGQNOpTgkJCQblb4tSqUR1dbX++6lTp+Kf//ynfjLYhQsXUF1djcTERHz//feorq6GRqPB119/3a3XJWqPXOoAROZi0aJFeP311/Xfx8XFISQkBCEhIQgODtZ3nXZWQkICHnjgARQUFGD69Om47777ADQVu2effRbPP/88tFot7r//fkRERLT7XHZ2dvjiiy+wdOlSaDQaeHt7Y/369d3K0dbzvfLKK1i6dClCQ0NhY2OD999/HwMGDEBNTQ2Apu70zZs3Y/bs2fif//kfREdH489//rO+Rfz222+3miM2NhZr1qxBZmYmfHx88NlnnxmUvy3z5s3DkiVLsH79erz11ltYtWoVXnjhBYSHh0MQBLi6umLz5s2IjIzE4sWLMXLkSHh5eSEmJqZFUSYyJp6KQ0Q9JjU1FatXr9a32Il6K3YLExERGRlbrkREREbGlisREZGRsbgSEREZGYsrERGRkbG4EhERGRmLKxERkZGxuBIRERnZ/wf5VSOVDvDhowAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Solution\n", "\n", "# And here's what they look like.\n", "\n", "expected_profits.plot(label='')\n", "\n", "decorate(xlabel='Number of books printed',\n", " ylabel='Expected profit ($)')" ] }, { "cell_type": "code", "execution_count": 97, "metadata": { "execution": { "iopub.execute_input": "2021-04-16T19:35:54.734792Z", "iopub.status.busy": "2021-04-16T19:35:54.733641Z", "iopub.status.idle": "2021-04-16T19:35:54.738456Z", "shell.execute_reply": "2021-04-16T19:35:54.739144Z" }, "tags": [ "hide-cell" ] }, "outputs": [ { "data": { "text/plain": [ "79" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Solution\n", "\n", "# Here's the optimal order.\n", "\n", "expected_profits.idxmax()" ] }, { "cell_type": "markdown", "metadata": { "tags": [ "remove-print" ] }, "source": [ "*Think Bayes*, Second Edition\n", "\n", "Copyright 2020 Allen B. Downey\n", "\n", "License: [Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)](https://creativecommons.org/licenses/by-nc-sa/4.0/)" ] } ], "metadata": { "celltoolbar": "Tags", "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.11.11" } }, "nbformat": 4, "nbformat_minor": 4 }