{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Monte Carlo Integration: standard sampling, importance sampling, rejection sampling"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Florent Leclercq,
\n",
"Imperial Centre for Inference and Cosmology, Imperial College London,
\n",
"florent.leclercq@polytechnique.org"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"from scipy.integrate import quad\n",
"from scipy.stats import norm\n",
"from matplotlib import pyplot as plt\n",
"from math import sin, pi\n",
"np.random.seed(123456)\n",
"%matplotlib inline\n",
"plt.rcParams.update({'lines.linewidth': 2})"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"Nsamp=200"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## The target pdf"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"def target_pdf(x):\n",
" return sin(x)*sin(x)\n",
"target_pdf=np.vectorize(target_pdf)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"a=0.\n",
"b=pi\n",
"x_arr=np.linspace(a,b,100)\n",
"f_arr=target_pdf(x_arr)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAlMAAAF1CAYAAADMXG9eAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAABHrUlEQVR4nO3dd3yV9f3+8dfnZIcsSAIEwoawQSBMt6ICiuLe21r9OuqqWgcOcNvWvWqpoypo3SwVFyoygswQRggjjEBCSMhOTs7n98dJ+aXICGTcJ+dcz8cjj5Kcm5Ord++SK/d4f4y1FhERERE5Mi6nA4iIiIg0ZypTIiIiIvWgMiUiIiJSDypTIiIiIvWgMiUiIiJSDypTIiIiIvWgMiUichiMMT8YY66r9flkY0yeMSbHyVwi4hyVKRFpFMaY4lofHmNMWa3PL22iDCcYY7Y04vt3AO4E+lhr2zbW9xER3xbsdAAR8U/W2qj//tkYsxG4zlo753DewxgTbK11N3S2BtQJ2GWt3el0EBFxjs5MiUiTMsYMM8b8aowpMMZsN8a8ZIwJrfW6NcbcZIxZB6yr+drdNdtuM8ZcV7NN95rXwowxzxpjNhtjdhhjXjPGRBhjWgCzgHa1zoi120+et2r+zjfGmCJjzI/GmE61Xj/FGLPaGFNojHkJMDVfHw18U+v932rE3SYiPkxlSkSaWjVwO5AAjAROBv5vn20mAMOBPsaYMcAdwGigO3D8Pts+BaQAR9W83h6YaK0tAcYC26y1UTUf2w6Q6VJgUk2mpcB7AMaYBOBj4IGa19YDRwPUnGWr/f5XHd5uEBF/oTIlIk3KWrvYWjvfWuu21m4EXuf3BekJa22+tbYMuAD4l7U23VpbCjzy342MMQb4A3B7zfZFwOPARYcZa4a1dq61tgK4HxhZcz/UOGCVtfY/1toq4DlAN5qLyP/QPVMi0qSMMSnA34BUIBLvv0OL99ksu9af2wFpB3gtseY9Fnt7lfdbAEGHGWvve1pri40x+TXft90+r1ljTPZ+/r6IBDCdmRKRpvYqsBroYa2NAe6j5j6kWmytP28Hkmt93qHWn/OAMqCvtTau5iO21s3vtd/nYPa+pzEmCmgFbKv53rVfM/t8fxERlSkRaXLRwB6g2BjTC7jxENt/CFxtjOltjIkEJv73BWutB/gH8HdjTGsAY0x7Y8xpNZvsAOKNMbGH+B7jjDHH1NwIPwlYYK3NBmYAfY0x5xhjgoFbAY1AEJH/oTIlIk3tLuASoAhvEZp2sI2ttbOAF4DvgUzg15qXKmr+856ar883xuwB5gA9a/7uauADIKvm6cHfPc1X433gISAfGIL3hnSstXnA+cCTwC6gB/DL4f3XFRF/Z6yt61lwERHnGWN6AyuBsIaYQVUz0mCLtfaB+r6XiAQmnZkSEZ9njDnbGBNqjGmJdxTClz4+zFNEAojKlIg0B38EcvHOearm0PdZiYg0GV3mExEREakHnZkSERERqQeVKREREZF6cGwCekJCgu3cubNT315ERESkzhYvXpxnrU3c32uOlanOnTuTlpZ26A1FREREHGaM2XSg13SZT0RERKQeVKZERERE6kFlSkRERKQeVKZERERE6kFlSkRERKQeVKZERERE6kFlSkRERKQeVKZERERE6kFlSkRERKQeVKZERERE6uGQZcoYM8UYs9MYs/IArxtjzAvGmExjzHJjzOCGjykiIiLim+pyZuotYMxBXh8L9Kj5uB54tf6xRERERJqHQy50bK2da4zpfJBNzgLesdZaYL4xJs4Yk2St3d5QIUVEAHKLKsjeXcr2gnK2F5aRU1jO9sJydpVUYO3vt48MDaJtbATtYsNpGxtOUmwESXHhdGoVSXCQ7nIQkYZxyDJVB+2B7Fqfb6n52u/KlDHmerxnr+jYsWMDfGsR8VeVbg/p2wpZsrmA3zbvZsnmArYWlDXIe0eGBjEwOY5BHeMY3LElgzrGER8V1iDvLSKBpyHKlNnP1/bzOyJYa98A3gBITU3d7zYiErjyiiv4Kj2HWStyWLgxn0q3539ejwoLpktCC9rGhtecbYqgXVw4CVFhuMzv/ykqKq8iZ0852wrKySksY1thOVt3l7G1oIxfs3bxa9auvdt2TWjBKX3bcHr/JPq3j8Xs5/1ERPanIcrUFqBDrc+TgW0N8L4iEgByiyqYnZ7DrBXbmZ+1C0+tX7O6t45icMc4BnVsyeCOLeneOoogV/1LTm5RBUuzvWe8ftu0m+VbCsnKK+H1H7N4/ccsOrSKYFy/JMb2T2JgsoqViBycsfu70WDfjbz3TE231vbbz2unAzcD44DhwAvW2mGHes/U1FSblpZ22IFFpPmz1rJwQz7//HkDczJ27C1QIUGGY7onMK5/EqN7t6Fli9AmyeOu9pC2aTezVmxn1socdhZV7H2ta0ILrjq6M+cOTqZFWEP8/ikizZExZrG1NnW/rx2qTBljPgBOABKAHcBDQAiAtfY14/2V7SW8T/yVAldbaw/ZklSmRAJPhbua6cu2M+WXDaRv2wN4C9RxPRK9BapPG2IjQhzN6PFY0jbtZuaK7cxcsX1vsYoJD+biYR25YlRn2sdFOJpRRJpevcpUY1GZEgkcJRVu/vXLBt7+dRO5NeUkvkUol47oxGUjOtI6OtzhhPvnrvbwVfoOpvyygcWbdgMQ5DKM6deWm0/sTu+kGIcTikhTUZkSEUdUVXuYtiib5+asI6/YW6J6tY3mmqO7cOZR7QgPCXI4Yd0tzS5gys8bmLliO26PxRg4d3Ayd5ySQjudqRLxeypTItKkrLV8vWoHT81eTVZuCQBHdYjjrlN7cnT3+GZ9Q/f2wjJe/zGL9xZsoqraEhbs4ppjunDD8d0cv0QpIo1HZUpEmsyy7AImTV9FWs1lsc7xkdw9phdj+7Vt1iVqX5t2lfDMV2uYvtw7Ui8uMoRbT+rBFSM7aSCoiB9SmRKRRlda6eavX69lyi8bsNZ7T9SfRvfg4mEdCfHjcrE0u4AnZmawYEM+AP3bx/LUuQPo0073U4n4E5UpEWlU8zLzuPeTFWzOLyXIZbjumC7cfFJ3osMD47KXtZZvM3by0BfpbC0oI9hluPGEbtx8UnfCgpvPfWEicmAqUyLSKArLqnhiZgZTF3lXlOqdFMPT5w6gf3Ksw8mcUVzh5pnZq3n7102Ad+joU+cOYEinlg4nE5H6UpkSkQb3S2Yed3y4lB17KggNcnHryd354/Hd/PqSXl0t2pjPPR8vJyu3BGPgD8d25a5TexIarH0j0lypTIlIg6n2WJ7/dh0vfrcOa2FwxziePm8A3VtHOx3Np5RXVfPCt+t4fW4W1R7LUR3ieOmSQSS3jHQ6mogcgYOVKf2aJCJ1trOonMveXMAL364D4LbRPfjohlEqUvsRHhLE3WN68eEfR9IuNpyl2QWc/sLPzFm1w+loItLAVKZEpE5+ycxj3PM/82vWLhKiwvj3tcO5bXRKgyw87M+GdGrJjFuP5aRerSksq+K6d9J4fGYGVdUep6OJSANRmRKRg/J4LM/PWcdl/1xAXnEFI7vGM/NPx3B09wSnozUbLVuE8uYVqfxlbC+CXIY35mZxweu/sr2wzOloItIAVKZE5IDKq6q55YMl/H3OWgBuPbkH/75uuM+upefLXC7DH4/vxod/HEFSbDhLNhcw4eVfWLGl0OloIlJPKlMisl+5RRVc9MZ8ZqzYTnRYMP+6aih3nKLLevU1pFMrZtx6LMO6tGLHngoueP1XvkrPcTqWiNSDypSI/M6anCImvPwLS7MLaB8Xwcf/N4oTerZ2OpbfaNUilH9fO5xzBydTVlXNDf9ezD/mZuHU09UiUj8qUyLyP35Ys5NzX53H1oIyBnWM47ObjialjZ7Wa2ihwS6ePX8Afz6tJ9bCYzMzuO/TFboxXaQZUpkSkb3eX7CZa95aRHGFmzMGJPHBH0aQGB3mdCy/ZYzhphO78/IlgwkLdvHBwmyu+tdCiivcTkcTkcOgMiUiALz+43ru+3QFHgu3ntSdFy4aRHiI1pVrCqcPSGLaH0eSEBXGL5m7uPTNBRSUVjodS0TqSGVKJMBZa/nr12t4YtZqjIHJE/pxx6k9celG8yZ1VIc4PrlxFMktI1iWXcBFb8xnZ1G507FEpA5UpkQCmMdjeeTLVbz4XSZBLsPfLhjIZSM6OR0rYHWMj+Q/N4yiW2ILVucUceHr89laoFlUIr5OZUokQFV7LPd8vJy35m0kNMjFK5cO5uxByU7HCnhtY8OZ9seR9EmKYUNeCee/Oo8NeSVOxxKRg1CZEglAlW4Pt36whI8WbyEiJIh/XpXKaX3bOh1LaiREhfHB9SMY0qkl2wrLOf+1X1mds8fpWCJyACpTIgHGXe3hT1OX7B3G+c61wzi2R6LTsWQfsREhvHvtMI7pnkBecQWX/GMB63YUOR1LRPZDZUokgFR7LHd9tIxZK3OIDgvmvT8MZ2jnVk7HkgOIDA3mzStTOaFnIvkllVzy5gJd8hPxQSpTIgHC47Hc98kKPlu6jcjQIN66ZhgDkuOcjiWHEB4SxGuXDWFUt3hyiyq45B/zyc4vdTqWiNSiMiUSAKy1PPxlOtPSsgkPcTHlqqEM6dTS6VhSR+EhQbx5ZSqpnVqyvbCcS96cz/ZCPeUn4itUpkT8nLWWJ2at5p1fNxEa5OKNy1MZ0TXe6VhymCJDg/nX1UMZmBxLdn4Zl/5jgeZQifgIlSkRP/f3Oet4Y24WwS7DK5cO5rgU3WzeXEWHh/D2NcPonRRDVl4Jl/5jAfklmpQu4jSVKRE/9u6vG3nh23W4DLxw8SBG92njdCSpp7jIUP597TC6t45i3c5irn17EWWV1U7HEgloKlMifmr2yhwmfpEOwJPnDmBc/ySHE0lDiY8K473rhtM+LoIlmwu45YMluKs9TscSCVgqUyJ+KG1jPn+augRr4Y5TUrggtYPTkaSBtYkJ562rhxITHsycjB1M/CIda63TsUQCksqUiJ/J3FnMtW+nUeH2cPGwjtxyUnenI0kj6dEmmjevHEposIv3F2zm5e8znY4kEpBUpkT8yM495Vw5ZSGFZVWM7t2aSWf1xRjjdCxpRMO6tOL5C4/CGHj267V8lJbtdCSRgKMyJeInisqruOpfi9haUMZRHeJ48eLBBAfp/+KBYGz/JB4e3xeAez9ZwQ9rdjqcSCSw6F9aET9Q7bHc/P4SVm3fQ5eEFky5aigRoUFOx5ImdOWozvzx+K5Ueyw3vfebFkYWaUIqUyJ+4PGZGfy4NpdWLUJ5++phtGoR6nQkccA9p/Vi/MB2lFRWc93baewqrnA6kkhAUJkSaeamLdrMP3/eQEiQ4dVLB9MxPtLpSOIQl8vwzHkDGJgcy5bdZdz479+odGtkgkhjU5kSacYWbsjngc9WAjB5Qj+Ga5mYgBceEsQbV6TSJiaMhRvzefCzlRqZINLIVKZEmqns/FJu+Pdiqqot1xzdhQuHdnQ6kviINjHh/OOKVMKCXUxLy+Zfv2x0OpKIX1OZEmmGiivc/OGdNPJLKjkuJZH7xvVyOpL4mAHJcTx7/kAAJs9YxY9rcx1OJOK/VKZEmhmPx3Lb1KWszimia2ILXrx4kEYgyH6NH9iOW0/qjsfCze//RubOYqcjifgl/Qss0sy88N065mTsIDYihH9eOZTYiBCnI4kPu210CmP7taWo3M3176ZRVF7ldCQRv6MyJdKMfL9mJ89/uw5j4MWLB9EloYXTkcTHuVyGv14wkJ5tosnKLeHu/yzXDekiDUxlSqSZyM4v5bapS72LF49O4biURKcjSTMRGRrMq5cNJjosmFkrc3jzpw1ORxLxKypTIs1AeVU1N763mMKyKk7u1ZqbTtTixXJ4uiZG8UzNDelPzl7N/KxdDicS8R8qUyLNwEOfp7Ny6x46torkbxcehculxYvl8I3p15Ybju+2d/mhHXvKnY4k4hdUpkR83NSFm5mWlk1YsItXLxusG86lXu46NYWRXePJK67g/97ThHSRhqAyJeLDVmwpZOIX6QA8fnZ/+raLdTiRNHfBQS5evGQQbWPCWbxpN4/PzHA6kkizpzIl4qMKy6q48b3FVLo9XDq8I+cOSXY6kviJhKgwXrlsMCFBhrfmbWTG8u1ORxJp1lSmRHyQtZZ7P17Olt1lDEiOZeL4Pk5HEj8zuGNL7h/XG4B7P15Odn6pw4lEmi+VKREf9N6CzcxamUNUWDAvXjyIsOAgpyOJH7pyVGdO7dOGogo3N3+wRPdPiRwhlSkRH5OxfQ+PTl8FwOPn9KdTvAZzSuMwxvD0eQNoHxfBsuwC/vr1GqcjiTRLKlMiPqS00s3N73ufsLpoaAfOHNjO6Uji5+IiQ3nh4qMIchlen5vF92t2Oh1JpNlRmRLxIQ99ns763BJ6tI7iofF9nY4jAWJIp1bccUoKAHd+uEzzp0QOU53KlDFmjDFmjTEm0xhz735ejzXGfGmMWWaMSTfGXN3wUUX822dLtvLR4i2EBbt46ZLBRITqPilpOjce341juieQX1LJ7dOWUu3R+n0idXXIMmWMCQJeBsYCfYCLjTH7Plp0E7DKWjsQOAH4qzEmtIGzivitDXkl3P/pCgAeGt+Xnm2jHU4kgcblMvztwoEkRIUyb/0uXvk+0+lIIs1GXc5MDQMyrbVZ1tpKYCpw1j7bWCDaGGOAKCAfcDdoUhE/VVXt4bapSyiprOb0AUlcPKyD05EkQLWODufvFx4FwHPfrmPJ5t3OBhJpJupSptoD2bU+31LztdpeAnoD24AVwJ+stb97xtYYc70xJs0Yk5abm3uEkUX8y4vfZbJsSyHtYsN5/Oz+eH8nEXHGsT0Suf64rlR7LLdPW0pJhX4vFjmUupSp/f3Lvu/F9NOApUA74CjgJWNMzO/+krVvWGtTrbWpiYmJhxlVxP8s3rSbl75bhzHw1wuO0rp74hPuPDWFXm2j2birlMkzVjkdR8Tn1aVMbQFqX3dIxnsGqrargU+sVyawAejVMBFF/FNxhZvbpy3FY+H647oyslu805FEAAgLDuL5iwYRGuzig4XZfJ2e43QkEZ9WlzK1COhhjOlSc1P5RcAX+2yzGTgZwBjTBugJZDVkUBF/8+iX6WzOL6VPUszex9JFfEXPttHcM8b7O/G9n6xgZ5HGJYgcyCHLlLXWDdwMfAVkAB9aa9ONMTcYY26o2WwSMMoYswL4FrjHWpvXWKFFmrvZK7fzYZp3DMLzFx2l5WLEJ109qvPecQl3/2c51mpcgsj+GKf+z5GammrT0tIc+d4iTtq5p5zTnpvL7tIqHhrfh6uP7uJ0JJEDyin0Hq+FZVVMmtCPy0d0cjqSiCOMMYuttan7e00T0EWakLWWP/9nObtLqzi2RwJXjuzsdCSRg2pb85QpwGMzVpG5s9jhRCK+R2VKpAm9v3AzP67NJS4yhGfPH4jLpTEI4vtOH5DEOYPbU17l4c6PluGu/t3kG5GApjIl0kSy80t5bEYGAJPO6kebmHCHE4nU3cNn9qVdbDjLsgt4fa6eLxKpTWVKpAl4PJY//2cZpZXVnN4/ifED2zkdSeSwxISH8NR5AwB4bs5aVufscTiRiO9QmRJpAu/O38T8rHwSokKZNKGf03FEjsixPRK5ZHhHqqotd320jCpd7hMBVKZEGt3GvBKenLUagMkT+tOqhdYAl+brvnG9SW4Zwcqte3jl+/VOxxHxCSpTIo3ov5f3yqqqOeuodozp19bpSCL1EhUWzNM1l/te/G4d6dsKHU4k4jyVKZFGNOWXDSzauJvE6DAeObOv03FEGsSobglcObITbo/lzg+XUenW5T4JbCpTIo1kfW4xz3y1BoAnzu5PXKQu74n/uGdsLzrFR7I6p4gXv1vndBwRR6lMiTSCao/lzx8to8Lt4dzByYzu08bpSCINKjI0mGfOG4gx8MoP61mxRZf7JHCpTIk0gnd+3chvmwtoExPGxPF9nI4j0iiGdWnF1aO6UO2x3P3xcj3dJwFLZUqkgWXnl/L0bO/lvckT+hMbEeJwIpHGc9dpKXRoFUHG9j28oWGeEqBUpkQakLWW+z5dQVlVNWcMSOIUXd4TPxcZGsyT53if7nt+zjqt3ScBSWVKpAH9Z/EWflqXR1xkCA/r6T0JEEd3T+DC1A5UVnu45+PleDzW6UgiTUplSqSB7CwqZ9L0VQA8NL4PCVFhDicSaTr3nd6b1tFhLN60m3fnb3I6jkiTUpkSaSAPfZ7OnnI3J/RMZMJR7Z2OI9KkYiNCePQs71JJT81ezZbdpQ4nEmk6KlMiDWDWiu3MWplDi9AgHju7P8YYpyOJNLkx/doyrn9bSiurue/TlViry30SGFSmROqpsLSKBz9PB+Desb1oHxfhcCIR5zx8Zl9iI0KYuzaXj3/b6nQckSahMiVST4/PzCCvuIKhnVty6fBOTscRcVTr6HAePMM7W23yjFXsKq5wOJFI41OZEqmHBVm7mJaWTWiQiyfOGYDLpct7IucObs+xPRIoKK1i8owMp+OINDqVKZEjVOGu5i+frgDg/07sRvfWUQ4nEvENxhgmT+hHWLCLT5ds5ad1uU5HEmlUKlMiR+jVH9aTlVtCt8QW3HhCN6fjiPiUTvEtuPXkHgA88NlKyquqHU4k0nhUpkSOQObOYl75fj0Aj5/dn7DgIIcTifie64/rSs820WzaVcoL365zOo5Io1GZEjlM1lru/3QFldUeLkhNZnjXeKcjifikkCAXj5/jnT31xtwsVufscTiRSONQmRI5TB+lbWHBhnziW4Ry37jeTscR8WlDOrXi0uEdcXss932yQkvNiF9SmRI5DHnFFTw20/t00oNn9CEuMtThRCK+7+4xvUiMDuO3zQW8t3Cz03FEGpzKlMhhmDx9FYVlVRzbI4GzjmrndByRZiE2IoSHx3sX/n561mp27Cl3OJFIw1KZEqmjn9fl8dnSbYQFu5g8oZ+WjBE5DOP6t+WkXq0pqnDzaM2C4CL+QmVKpA4q3NVM/HwlALee3INO8S0cTiTSvBhjePSsvoSHuJixfDtz12r2lPgPlSmROnjjxyyy8rwzpf5wbFen44g0S8ktI/fOnpr4uWZPif9QmRI5hM27Snnp+0wAJk3oR2iw/m8jcqSuO6YrPVpHsXFXKa/9uN7pOCINQj8VRA7CWsvEL1ZS4fZw9qD2jOqW4HQkkWYtNNjFpAne2VOv/LCejXklDicSqT+VKZGDmL0yhx/W5BIdHqyZUiINZETXeM4Z1J5Kt4eJX6RjrWZPSfOmMiVyAMUVbh750vvU0d2n9SQxOszhRCL+477TexMTHszctbnMXJHjdByRelGZEjmA5+esJWdPOQOSY7lkeCen44j4lYSoMO4e0wuAR6enU1zhdjiRyJFTmRLZj4zte5jyy0aMgccm9CfIpZlSIg3t4mEdGdghjh17Kvj7N2udjiNyxFSmRPZhreXBz1ZS7bFcPqIT/ZNjnY4k4peCXIbHJvTDZeCteRvJ2K6FkKV5UpkS2ccnv20lbdNuEqJCufPUnk7HEfFr/drHcvmITlR7LBM/X6mb0aVZUpkSqaWwrIonZnkXMr53bG9iI0IcTiTi/+44tSfxLUJZtHE3ny3d6nQckcOmMiVSy9+/WUtecSWpnVpyzqD2TscRCQixESHcO9Z7M/pjM1azp7zK4UQih0dlSqRGxvY9vPPrRlwGHj2rHy7ddC7SZM4dnMzgjnHkFVfw3DfrnI4jclhUpkSomXT++Uo8Fi4f0Yk+7WKcjiQSUFwu4/0lxsDbv25kdY5uRpfmQ2VKBPhs6VYWbdxNfItQ7tBN5yKO6Nc+lsv23oyuyejSfKhMScDbU17FYzNWA3Dv2F666VzEQXee4r0ZfeGGfD5fus3pOCJ1ojIlAe+5b9aRV1zB4I5xnDs42ek4IgEtNjKEe/57M/rMDIp0M7o0AypTEtDW5BTxtm46F/Ep5w1OZlDHOHKLKnh+jm5GF9+nMiUBy1rLQ194J51fOrwT/dpr0rmIL3C5DJPO6oepmYyeubPI6UgiB6UyJQFr5ooc5mfl0zIyhDtPTXE6jojU0q99LBcP64jbY3n4i1W6GV18msqUBKTSSjePzVgFwF2n9SQuMtThRCKyrz+f2pPYiBB+zszjq/QdTscROSCVKQlIr/6wnm2F5fRtF8NFQzs6HUdE9qNli1DuqjlrPHnGKsqrqh1OJLJ/KlMScDbvKuX1uVkAPHJmX4J007mIz7p4WEd6tY1my+4yXvtxvdNxRPZLZUoCzqQZq6h0ezh7UHtSO7dyOo6IHERwkItHzuwLeM8oZ+eXOpxI5PdUpiSg/Lg2l29W7aBFaNDehVVFxLcN7xrPmQPbUeH28PjMDKfjiPxOncqUMWaMMWaNMSbTGHPvAbY5wRiz1BiTboz5sWFjitRfpdvDI1+mA3DLyT1oExPucCIRqau/jOtFREgQs1bm8EtmntNxRP7HIcuUMSYIeBkYC/QBLjbG9NlnmzjgFeBMa21f4PyGjypSP2/N20BWbgldE1pwzdFdnI4jIochKTaCm0/qDsBDX6RTVe1xOJHI/1eXM1PDgExrbZa1thKYCpy1zzaXAJ9YazcDWGt3NmxMkfrZWVTOC99mAjBxfB9Cg3WFW6S5ue7YLnSKjyRzZzHv/LrJ6Tgie9XlJ0p7ILvW51tqvlZbCtDSGPODMWaxMeaK/b2RMeZ6Y0yaMSYtNzf3yBKLHIFnZq+huMLNyb1ac0LP1k7HEZEjEBYcxMQzvBdGnpuzll3FFQ4nEvGqS5na33Pj+46iDQaGAKcDpwEPGmN+N1LaWvuGtTbVWpuamJh42GFFjsSy7AI+WryFkCDDA2f0OfRfEBGfdVKv1hyXkkhRuZtnv17rdBwRoG5lagvQodbnycC2/Wwz21pbYq3NA+YCAxsmosiR83gsD9fcdH7NMV3oktDC4UQiUh/GGCae0Ydgl2Hqos2kbyt0OpJIncrUIqCHMaaLMSYUuAj4Yp9tPgeONcYEG2MigeGAnl8Vx32+bCtLNheQGB3GLSf1cDqOiDSA7q2juHJUZ6yFR7Run/iAQ5Ypa60buBn4Cm9B+tBam26MucEYc0PNNhnAbGA5sBB401q7svFiixxaSYWbJ2etBuCeMb2ICgt2OJGINJRbT+5BfItQFm7MZ/ry7U7HkQBXp0earLUzrbUp1tpu1trHar72mrX2tVrbPGOt7WOt7Wetfa6R8orU2cvfZ7JjTwUDO8RxzqB9n5kQkeYsNiKEu07rCcATMzMoq9S6feIcPR8ufmnTrhLe/GkDAA+P74NL6++J+J0LUjvQt10M2wrLtW6fOEplSvzSYzMyqKz2cM7g9gzq2NLpOCLSCIJchofGe9fte+3H9WwtKHM4kQQqlSnxOz+vy+PrVTuIDA3injFaf0/Enw3r0orxWrdPHKYyJX7FXe3h0eneUQg3n9Rd6++JBIC/jO1FeIiLGcu3syBrl9NxJACpTIlfeX/hZtbuKKZjq0iuPUbr74kEgnZxEdxwfDcAHp2+imqPRiVI01KZEr9RUFrJ377xTkS+b1xvwoKDHE4kIk3lj8d1o11sOOnb9vBRWvah/4JIA1KZEr/x3Jx1FJRWMapbPKf1beN0HBFpQhGhQdw7rjcAz369hqLyKocTSSBRmRK/sG5HEe/O34TLwMTxfTBGoxBEAs34AUmkdmpJXnElL32X6XQcCSAqU9LsWWv33idx8bCO9Gob43QkEXGAMd5RCcbAlF82sCGvxOlIEiBUpqTZ+271Tn5al0d0eDB3nJLidBwRcVD/5FjOG5xMVbXlsRkalSBNQ2VKmrVKt4fJNf9g/unkHsRHhTmcSESc9ucxPWkRGsScjB38tC7X6TgSAFSmpFl759eNbMgroWtiC64Y2dnpOCLiA1pHh3PzST0AmDR9Fe5qj8OJxN+pTEmztau4gue/XQfAg6f3ITRYh7OIeF1zTGc6topk7Y5i3luw2ek44uf000earb9+s5aicjfHpyRyYq/WTscRER8SFhzEfTWjEv4+Zy0FpZUOJxJ/pjIlzVLG9j1MXbiZIJfhwTN6Ox1HRHzQaX3bMLJrPAWlVTw3Z53TccSPqUxJs2Ot5dEvV+GxcPmITnRvHe10JBHxQcYYHjyjDy4D787fRObOIqcjiZ9SmZJm5+tVO/g1axdxkSHcNrqH03FExIf1aRfDhUM7Uu2xe5/8FWloKlPSrFS4q3l8pvcfxNtHpxAXGepwIhHxdXeemkJ0WDA/rMnl+zU7nY4jfkhlSpqVt37ZyKZdpXRvHcUlwzs6HUdEmoGEqDBuObk7AJOnr6JKoxKkgalMSbORW1TBizXrbT14Rh9CgnT4ikjdXDmqM53iI1mfW8K/529yOo74Gf00kmbjb9+sobjCzUm9WnN8SqLTcUSkGQkLDuL+mlEJz81Zx+4SjUqQhqMyJc1C+rZCpi7KJthluP90jUIQkcN3Sp82jOoWT2FZFc/NWet0HPEjKlPi86y1TJq+CmvhipGd6ZYY5XQkEWmGao9K+PeCzazboVEJ0jBUpsTnfZWew/ysfFpGhvCnkzUKQUSOXO+kGC4a5h2VMGlGBtZapyOJH1CZEp9W4a7msZpRCHeckkJsZIjDiUSkubvzFO+ohLlrc/lhTa7TccQPqEyJT5vy80ay88tIaRPFxcM0CkFE6i8+Koxba85yT5qhUQlSfypT4rN2FpXz8vf/fxRCsEYhiEgDuXJUZzrHR5KVW8K7v2pUgtSPfjqJz/rb12sprnBzcq/WHNtDoxBEpOGEBru4//Q+ADw3Z61GJUi9qEyJT1q5tZBpaRqFICKNZ3Tv1hzTPYE95W7+rlEJUg8qU+Jzao9CuHJUZ7pqFIKINAJjDA+c0RuXgfcWbGatRiXIEVKZEp8ze2UOCzZ4RyHcqlEIItKIerWN4ZLhNaMSpq/SqAQ5IipT4lPKq6p5fFbNKIRTexIboVEIItK4bh+dQnR4MD+ty+P7NTudjiPNkMqU+JQpv2wgO7+Mnm2iuXhoB6fjiEgAiI8K2zsQePL0DCrdGpUgh0dlSnzGzj3lvPydRiGISNO7YmRnuia0ICuvhHfna1SCHB79tBKf8ezXayiprGZ07zYc0yPB6TgiEkC8oxK8Tw4/P2ct+RqVIIdBZUp8wsqthXy0eAshQRqFICLOOKlXa47t4R2V8Ldv1jgdR5oRlSlxnLWWR75Mx1q4alRnuiS0cDqSiAQgYwwPntGHIJfh/QWbWZ2zx+lI0kyoTInjZqzYzqKNu4lvEcotGoUgIg5KaRPNpcM74rFoVILUmcqUOKq8qponZq4G4M5TexITrlEIIuKs20enEBsRwi+Zu5iToVEJcmgqU+Kof8zNYmtBGb2TYrhQoxBExAe0bBHKbaO9Z8kfm7GKCne1w4nE16lMiWNyCst55Yf1AEysuU9BRMQXXDaiE91bR7FxVylvz9vodBzxcSpT4pinZ6+mrKqaMX3bMrJbvNNxRET2Cgly8UDNk8UvfptJXnGFw4nEl6lMiSOWZhfwyZKthAa5uG+cRiGIiO85oWdrTuiZSFGFm79+rVEJcmAqU9LkPB7Lw1+kA3DNMV3oGB/pcCIRkf174PQ+BLsMUxdlk76t0Ok44qNUpqTJfb5sK0uzC0iMDuPmk7o7HUdE5IC6t47iylGdsRYe+VKjEmT/VKakSZVUuHlylncUwj1jehEVFuxwIhGRg7v15B60ahHKwg35zFyR43Qc8UEqU9KkXv1hPTv2VDAwOZZzBrV3Oo6IyCHFRoRw16k9AXh8ZgblVRqVIP9LZUqaTHZ+KW/8lAXAxPF9cWkUgog0ExcO7UDvpBi2FpTxxtwsp+OIj1GZkibz+MwMKt0eJhzVjiGdWjodR0SkzoJchofG9wHglR8y2VZQ5nAi8SUqU9Ik5q3PY9bKHCJCgrhnbC+n44iIHLYRXeM5vX8S5VUenpq92uk44kNUpqTRuas9PPrlKgD+74RuJMVGOJxIROTI3Du2F2HBLj5fuo20jflOxxEfoTIljW7qomxW5xTRPi6CPxzX1ek4IiJHrEOrSP5Y8+/YI1+uwuPRqARRmZJGVlhatXdy8H3jehMeEuRwIhGR+rnhhG60jQlnxdZCPlqc7XQc8QF1KlPGmDHGmDXGmExjzL0H2W6oMabaGHNew0WU5uzvc9ayu7SKEV1bMa5/W6fjiIjUW2RoMH8Z57338+nZaygsq3I4kTjtkGXKGBMEvAyMBfoAFxtj+hxgu6eArxo6pDRPa3KKeHf+JlwGHhrfF2M0CkFE/MOZA9sxtHNLdpVU8sK365yOIw6ry5mpYUCmtTbLWlsJTAXO2s92twAfAzsbMJ80U9ZaHvkynWqP5bIRneidFON0JBGRBmOMqfklEd6et5HMnUVORxIH1aVMtQdqXxTeUvO1vYwx7YGzgdcaLpo0Z7NX5jBv/S7iIkO445QUp+OIiDS4fu1juWhoR9weq3X7AlxdytT+rs3se8Q8B9xjrT3ojH1jzPXGmDRjTFpubm4dI0pzU15VzeQZGQDceWpP4iJDHU4kItI47jo1hZjwYH5al8ecDF2YCVR1KVNbgA61Pk8Gtu2zTSow1RizETgPeMUYM2HfN7LWvmGtTbXWpiYmJh5ZYvF5r/+YxdaCMnonxXDJsI5OxxERaTTxUWF7z75Pmr5K6/YFqLqUqUVAD2NMF2NMKHAR8EXtDay1Xay1na21nYH/AP9nrf2socOK79taUMarP2YC8PD4PgRp/T0R8XOXjehESpsoNueX8s+fNzgdRxxwyDJlrXUDN+N9Si8D+NBam26MucEYc0NjB5TmxbuiuoczBiQxvGu803FERBpdcJCLh8b3BeCl7zLZXqh1+wJNneZMWWtnWmtTrLXdrLWP1XztNWvt7244t9ZeZa39T0MHFd/36/pdzFi+nfAQF/eN6+10HBGRJnN09wTG9G1LWVU1T87Sun2BRhPQpUG4qz08/EU6ADce3512cVp/T0QCy/2n9967bt+CrF1Ox5EmpDIlDeLd+ZtYs6OIjq0i+ePxWn9PRAJPh1aR3HhCNwAe+iIdd7XH4UTSVFSmpN5yiyr429drAZh4Rh+tvyciAeuG47uR3DKC1TlFvLdgs9NxpImoTEm9PT17NUUVbk7omcjJvVs7HUdExDHhIUE8eIZ3xbW/fr2GvOIKhxNJU1CZknr5bfNuPlq8hdCap1m0/p6IBLpT+7ThuJRE9pS7eWb2GqfjSBNQmZIjVu2xPPS596bz647tQpeEFg4nEhFxnnfdvj6EBBmmpWWzNLvA6UjSyFSm5IhNW5TNiq2FJMWGc/NJ3Z2OIyLiM7olRnHNMV0AmPj5Sjwerdvnz1Sm5IjsLqnk6a+8s1TuP703kaHBDicSEfEtt5zUgzYxYSzfUsiHadlOx5FGpDIlR+Sv36yhoLSKkV3jOb1/ktNxRER8TlRY8N4Bxk9/tYbC0iqHE0ljUZmSw7ZyayHvL9hMkMvwyFm66VxE5EDOHNiOYV1akV9SybNf62Z0f6UyJYfF47E88NlKPBauGtWZlDbRTkcSEfFZxhgePasvQS7DvxdsYsWWQqcjSSNQmZLD8t8nU1pHh3Hb6B5OxxER8Xm92sZw1ajOWAsP6GZ0v6QyJXWWX1LJU7O9N50/cEYfosNDHE4kItI83Da6B62jw1iWXcA03Yzud1SmpM6enr2agtIqRnWLZ/wA3XQuIlJX0eEhPFAzGf2p2avJL6l0OJE0JJUpqZPfNu9m6qJsQoIMj57VTzedi4gcpvEDkji6ezwFpVU8XXOWX/yDypQcUrXH8uBnKwG47tiudG8d5XAiEZHmx3szej9CggxTF2Xz2+bdTkeSBqIyJYf03oJNpG/bQ/u4CG7RpHMRkSPWLTGKPxzbFYAHP1tJtW5G9wsqU3JQuUUVPPOVdzbKg2f00aRzEZF6uvmk7rSPiyB92x7eW7DJ6TjSAFSm5KCemJlBUbmbE3omclrfNk7HERFp9iJDg5k43nsz+jNfrWFnUbnDiaS+VKbkgOatz+OTJVsJDXbx8HhNOhcRaSin9mnDSb1aU1TuZvL0DKfjSD2pTMl+VbireeBT703nt5zYnc4JLRxOJCLiP4wxPHJmX8JDXHyxbBs/rct1OpLUg8qU7NdrP2SRlVdCt8QWXH98V6fjiIj4nQ6tIrn1ZO9KEg9+tpLyqmqHE8mRUpmS39mQV8LLP2QCMHlCf8KCgxxOJCLin/5wbFdS2kSxcVcpr3yf6XQcOUIqU/I/rPXOlKp0ezh3cDIju8U7HUlExG+FBLl47Oz+ALz643oydxY7nEiOhMqU/I8vlm3j58w84iJDuP/03k7HERHxe0M7t+LC1A5UVVvu/3QF1mr2VHOjMiV7FZZWMWn6KgDuG9ubVi1CHU4kIhIY7h3bi1YtQlmwIZ+Pf9vqdBw5TCpTstfTX60mr7iSoZ1bct6QZKfjiIgEjJYtQrl/nPdqwOMzM9ithZCbFZUpAWDxpt28v3AzwS7DY2f3x+XSTCkRkaZ0zuD2jOjaivySSp6YpdlTzYnKlFDp9vCXT5ZjLVx/XFdS2kQ7HUlEJOAYY5g8oT+hQS4+TNvCvPV5TkeSOlKZEl77cT1rdxTTOf7/zzwREZGm1711FDed6F1Q/r5PVmj2VDOhMhXgMncW89J33tkmj5/Tn/AQzZQSEXHSjSd02zt76oVv1zkdR+pAZSqAeTyWv3yynMpqDxemdmBUtwSnI4mIBLzQYBdPnDMAY+CNuVms2rbH6UhyCCpTAeyDRZtZtHE3CVFh3DdOM6VERHzFkE4tuWJEJ9w1v/RWezR7ypepTAWonMJynpy5GoBHzuxLbGSIw4lERKS2P4/pRVJsOMu2FPLWvI1Ox5GDUJkKUA99sZKiCjeje7dhXP+2TscREZF9RIUFM3lCPwD++vUatuwudTiRHIjKVACavXI7X6XvICosmEkT+mKMZkqJiPiik3u34fQBSZRWVvPAZyu11IyPUpkKMIWlVUz8PB2Ae8b0JCk2wuFEIiJyMA+P70tsRAg/rMnls6VaasYXqUwFmEkzVrGzqIIhnVpy6fBOTscREZFDSIwO27vw/CNfrmJnUbnDiWRfKlMB5Ps1O/nP4i2EBbt4+rwBWjJGRKSZOH9IMselJFJQWsXEz9J1uc/HqEwFiD3lVdz3yQoA7jglhW6JUQ4nEhGRujLG8MQ5/YkKC2Z2eg4zVmx3OpLUojIVIB6fkcH2wnIGdojjumO7Oh1HREQOU/u4CP4yrhcAEz9PZ1dxhcOJ5L9UpgLAT+tymboom9AgF8+eN4AgXd4TEWmWLhnWkVHd4skvqWTiF+lOx5EaKlN+rrjCzb0fey/v/Wl0D3q0iXY4kYiIHCljDE+dO4DI0CBmLN/O7JW63OcLVKb83JOzMthaUEa/9jFcf5wu74mINHcdWkVyzxjv5b4HPlvJ7pJKhxOJypQf+3X9Lv49fzMhQYZnzhtISJD+5xYR8QeXj+jEsC6tyCuu5JEvdbnPafrp6qeKyqv483+WAXDTid3pnRTjcCIREWkoLpfh6XMHEB7i4rOl23S5z2EqU35q8vQMtuz2Xt676cTuTscREZEG1jmhBX8Z6x3med+nK8kt0tN9TlGZ8kNzVu1gWlo2ocEu/n7BUbq8JyLipy4f0YljuieQX1LJXz5ZrmGeDtFPWT+zq7iCez9ZDsDdp/XU03siIn7M5TI8fd4AosODmZOxk48Wb3E6UkBSmfIj1lru/3QlecWVDO/SimuO7uJ0JBERaWTt4iJ45My+ADz65Sqy80sdThR4VKb8yGdLtzI7PYcWoUE8e/5Arb0nIhIgzh7UnjF921Jc4eauj5bh8ehyX1NSmfIT2wrKmPi59/HYh8b3pUOrSIcTiYhIUzHG8NjZ/UiICmXBhnym/LLB6UgBRWXKD3g8lrv/s5yicjeje7fm/NRkpyOJiEgTi48K44lzBgDw9FdrWLejyOFEgaNOZcoYM8YYs8YYk2mMuXc/r19qjFle8zHPGDOw4aPKgbw1byM/Z+bRqkUoT5wzAGN0eU9EJBCd0qcNF6QmU+n28KepS6lwVzsdKSAcskwZY4KAl4GxQB/gYmNMn3022wAcb60dAEwC3mjooLJ/q7bt4clZqwF4/Oz+JEaHOZxIRESc9OAZfejYKpJV2/fwzOw1TscJCHU5MzUMyLTWZllrK4GpwFm1N7DWzrPW7q75dD6g60xNoKyymlunLqGy2sMlwzsypl9bpyOJiIjDosNDeO6iowhyGd78eQM/rs11OpLfq0uZag9k1/p8S83XDuRaYFZ9QkndTJ6xisydxXRLbMGDp+97slBERALV4I4tuX10DwDu/HAZecWajt6Y6lKm9ncDzn6fuTTGnIi3TN1zgNevN8akGWPScnPVlOvjq/Qc3luwmdAgFy9cPIiI0CCnI4mIiA+58YTuNYshV/Dnj5ZpOnojqkuZ2gJ0qPV5MrBt342MMQOAN4GzrLW79vdG1to3rLWp1trUxMTEI8krQE5hOfd87J1yfs/YXvRtF+twIhER8TVBLsNzFx5FTHgw36/J5e15G52O5LfqUqYWAT2MMV2MMaHARcAXtTcwxnQEPgEut9aubfiY8l/VHsvt05ZSUFrF8SmJXD2qs9ORRETER7WLi+DJc73jEh6ftZqM7XscTuSfDlmmrLVu4GbgKyAD+NBam26MucEYc0PNZhOBeOAVY8xSY0xaoyUOcG/MzeLXrF0kRIVqyrmIiBzSuP5JXDS0A5VuD7d+sISySo1LaGjGqWuoqampNi1NnetwpG3M58I35lPtsfzrqqGc2Ku105FERKQZKK10c8YLP5OVV8KFqR146rwBTkdqdowxi621qft7TRPQm4ldxRXc/P4Sqj2WPxzbRUVKRETqLDI0mJcuGUxYsItpadl8vHiL05H8ispUM+DxWG7/cBk5e8oZ0qkld4/p5XQkERFpZvq0i+GRM/sC8MBnK7XcTANSmWoGXvkhk7lrc2kZGcJLlwwiJEj/s4mIyOG7cGgHzh7UnrKqam587zdKK91OR/IL+qns435dv4u/feN9QPLvFx5FUmyEw4lERKS5MsYweUI/ureOInNnMQ98ulLzpxqAypQP21lUzq1Tl+CxcNOJ3Tihp+6TEhGR+mkRFswrlw4mIiSIT5Zs5cO07EP/JTkolSkfVe2x/OmDpeQWVTC8SytuH53idCQREfETKW2imTShHwATP0/X/Kl6UpnyUX/7Zs3eeVIvXjyIYN0nJSIiDei8IclcmNqBCreHG/+9mMKyKqcjNVv6Ce2DZq3Yzsvfr8dl4IWLBtE6JtzpSCIi4oceOasvvZNi2LirlNumesfvyOFTmfIxa3KKuPOjZQDcN643o7onOJxIRET8VXhIEG9cPoS4yBC+X5PL37/RinBHQmXKhxSWVnH9u2mUVlYz4ah2XHtMF6cjiYiIn+vQKpKXLh6My8BL32cya8V2pyM1OypTPqLaY7ll6hI27Sqlb7sYnjhnAMZo3T0REWl8x/RI4L5xvQG486NlrMnRQM/DoTLlI579eg1z1+bSqkUor18+hIjQIKcjiYhIALn2mC5MOKodpZXVXP9uGoWluiG9rlSmfMD05dt49Yf1BLkML10yiOSWkU5HEhGRAGOM4YlzBtC3XQybdpVyi25IrzOVKYet3FrInz9aDsD943ozqptuOBcREWdEhAbx+uVDaNUilLlrc3lyVobTkZoFlSkHbSso45q3FlFWVc25g5O5+ujOTkcSEZEAl9wykpcvGUywy/CPnzbw3oJNTkfyeSpTDimucHPNW4vYWTPh/PFz+umGcxER8Qkju8Xz+Nn9Ae+E9B/X5jqcyLepTDnAXe3h5vd/Y3VOEV0TWvD65UMIC9YN5yIi4jsuGNqBm07sRrXHctN7v7E6R0vOHIjKVBOz1vLIl6v4YU0uLSND+NfVQ4mLDHU6loiIyO/ceUpPzhiQRHGFm2vfSmPnnnKnI/kklakmNuWXjbw7fxOhQS7+cUUqneJbOB1JRERkv1wuw7PnD2Rwxzi2FpRx3TtplFa6nY7lc1SmmtDX6TlMnrEKgGfOH0Bq51YOJxIRETm48JAg/nFFKh1bRbJ8SyG3TV2qkQn7UJlqIgs35HPLB0uwFu48JYWzjmrvdCQREZE6iY8KY8pVQ4kJD+brVTt48POVWKtC9V8qU00gfVsh1761iAq3h4uHdeDmk7o7HUlEROSwdG8dxT+uSCUs2MX7Czbz7NdrnI7kM1SmGtmGvBKunLKQogo3p/dPYvKE/hqBICIizdLwrvG8fMlgglyGl79fz5s/ZTkdySeoTDWinMJyLntzAXnFlRzbI4G/XTiQIJeKlIiINF+j+7Th2fMHADB5RgYfpmU7nMh5KlONZHdJJZf/cwFbC8oY1DGO1y7TLCkREfEPZw9K5qHxfQC49+PlfJWe43AiZ6lMNYKSCjdXv7WIdTuLSWkTxb+uGkqLsGCnY4mIiDSYq4/uwq0n98Bj4Zb3lzAvM8/pSI5RmWpgxRVurvrXQpZmF5DcMoJ3rhmuoZwiIuKXbh/dgytGdqKy2sO1b6cxP2uX05EcoTLVgIor3Fw1ZSGLNu6mbUw4/752OG1jw52OJSIi0iiMMTw8vi/nDk6mrKqaq/+1iHnrA+8MlcpUAykqr+LKKQtJ27SbdrHhTPvjCDonaLq5iIj4N5fL8PR5Azh/iLdQXfPWooC75Kcy1QD2lFdxxZSFLN60m/ZxEUy9fqSWiRERkYAR5DI8de4ALkztQHmVh6vfWsTP6wKnUKlM1dOe8iqu+OdClmwuqClSI+gYH+l0LBERkSblchmeOKc/Fw/rQIXbw7VvL2Lu2lynYzUJlal6yC+p5PI3F+y92Xzq9SPo0EpFSkREApPLZXhsQn8uGd6RCreH695J49uMHU7HanQqU0coO7+U816bx7IthXRopSIlIiIC3kI1+ax+XDaiI5VuD9e/u5gPF/n3YE+VqSOwatsezn11Hlm5JfROiuE/N4wiuaWKlIiICHgL1aSz+nHzid2p9lju/ng5L323zm8XR1aZOkzz1udx4eu/srOogpFd45n2xxG0idH4AxERkdqMMdx1Wk8mndUXY+DZr9cy8fN0qj3+V6hUpg7D9OXbuGrKIu+ixQOSeOuaocSEhzgdS0RExGddPrIzr1wymNBgF+/O38RN7/1GeVW107EalMpUHVhr+cfcLG75YAmV1R6uGtWZFy8apLX2RERE6mBs/yTevWYY0eHBzE7P4fJ/LmBXcYXTsRqMytQhlFVWc/u0pTw2MwNr4d6xvXhofB9cLuN0NBERkWZjeNd4PrphJG1jwlm0cTdnvvQLK7cWOh2rQahMHcSW3d4n9j5buo3I0CBevXQwNxzfDWNUpERERA5Xr7YxfH7z0QzqGMfWgjLOfXUeny7Z4nSselOZOoB5mXmMf/Fn0rftoVN8JJ/+39GM7Z/kdCwREZFmrU1MOFOvH8FFQ73DPW+ftoxHv1yFu9rjdLQjpjK1D2st//x5A5dPWcju0iqOT0nki5uOoWfbaKejiYiI+IWw4CCeOKc/kyf0IyTIMOWXDVzWjO+jUpmqJa+4gj+8s5hJ01dR7bH83wndmHLVUGIj9cSeiIhIQzLGcNmITnzwhxEkRIUxPyufsc//xI/NcAkalaka363ewZjn5jInYwfR4cG8culg7h7TiyDdaC4iItJoUju3YvotxzC0c0t2FlVw5ZSFPPxFerManxDwZaq00s39n67gmrfSyCuuZETXVsy+7TjG6f4oERGRJtE2Npyp14/kz6f1JNhleGveRs548edm87SfcWq0e2pqqk1LS3Pke//X0uwC7pi2lKy8EkKCDH8+rSfXHdNVYw9EREQcsmJLIX+atoSsXO/P5jtO6ckfju1CcJCz53+MMYuttan7fS0Qy1RBaSXPfr2G9xZsxlpIaRPFcxcOok+7GEfyiIiIyP9XVlnNE7MyeOfXTQD0Toph0ll9Se3cyrFMKlM1PB7Lh2nZPDV7NbtLqwhyGa49pgt3nJJCeIimmYuIiPiS79fs5IFPV7K1oAyAcwa35y9je5MYHdbkWVSmgOVbCnjw83SWZRcAMKJrKx49qx8pbTTyQERExFeVVVbzyg+ZvP5jFpXVHqLDgrnj1BQuH9GpSS/9BXSZytxZzMvfZ/LZ0q1YC21iwrj/9D6MH5CkSeYiIiLNxMa8Eh75Mp3v13hHJ/RoHcWtJ/dgXP+kJnnyPiDL1NodRbz4XSbTl2/DWgh2Ga45pgu3ntyDqLDgRvu+IiIi0jistczJ2Mmj09PJzvde+uuW2IJbTurBGQOSGvVMVUCVqYzte3jxu3XMXJEDQEiQ4fzUDtx4fDc6tIps8O8nIiIiTavCXc3Hi7fy8veZe++n6pLQgptP7M6ZR7UjpBFKld+XqeIKNzOWb2Paomx+21wAQGiQi4uGdeCG47vRLi6iQb6PiIiI+I6qag+f/raVl77PZHN+KQAJUWGcO7g956d2oHvrqAb7Xn5Zpqy1LN60m2mLspmxYjulld5JqVFhwZw3JJkbju9G29jwhoorIiIiPspd7eHzpdt47cf1rNtZvPfrQzq15ILUZE4f0K7et/jUu0wZY8YAzwNBwJvW2if3ed3UvD4OKAWustb+drD3PJIyVVhaxbz1ecxdl8vctXl7T+0BDOvciguGdmBc/7ZEhuqeKBERkUBjrWVJdgEfpWXzxdJtlNScaAkPcTG8SzzHpSRyfEoC3RKjDvshtHqVKWNMELAWOAXYAiwCLrbWrqq1zTjgFrxlajjwvLV2+MHe91Blqtpj2bK7lLU7ilm5tZCf1uWyNLsAT624raPDOHdIMucPSaZrYsOdyhMREZHmrbTSzYzl2/kwLZtFG3f/z2vtYsM5LiWR1M6tSGkTRffWUYc8EXOwMlWXUzjDgExrbVbNm00FzgJW1drmLOAd621m840xccaYJGvt9gP/l6zmx7W5FJe7Ka6ooqjczZ5yN5t3lbBuZzHrc4spr/L8b1iXYWjnlhyXkshxPRLp2y5GS7+IiIjI70SGBnN+agfOT+3AzqJyflqbx0/rcvlpXR7bCsuZuiibqYuy926f3DKCHq29xapVizCiwoOJCQ8mKiz4kJcI61Km2gPZtT7fgvfs06G2aQ8csEytzy3myikLD/qN28aE06NNFCltohnRNZ6R3eI11kBEREQOS+vocM4dksy5Q5LxeCyrtu9h7rpcVm3bw7odxWTlFbNldxlbdpftnWN1OOrSTPZ36mffa4N12QZjzPXA9TWfVmx66oyVB/vGm4AFdQgoB5QA5Dkdws9pHzc+7ePGpf3b+LSPG19T7ONOB3qhLmVqC9Ch1ufJwLYj2AZr7RvAGwDGmLQDXXuUhqF93Pi0jxuf9nHj0v5tfNrHjc/pfVyXqVaLgB7GmC7GmFDgIuCLfbb5ArjCeI0ACg92v5SIiIiIvzjkmSlrrdsYczPwFd7RCFOstenGmBtqXn8NmIn3Sb5MvKMRrm68yCIiIiK+o053c1trZ+ItTLW/9lqtP1vgpsP83m8c5vZy+LSPG5/2cePTPm5c2r+NT/u48Tm6jx2bgC4iIiLiDxpveWURERGRANDoZcoYM8YYs8YYk2mMuXc/rxtjzAs1ry83xgxu7Ez+pg77+ARjTKExZmnNx0QncjZXxpgpxpidxpj9jvLQMVx/ddjHOobrwRjTwRjzvTEmwxiTboz503620XFcD3XcxzqO68EYE26MWWiMWVazjx/ZzzbOHMfW2kb7wHvD+nqgKxAKLAP67LPNOGAW3llVI4AFjZnJ3z7quI9PAKY7nbW5fgDHAYOBlQd4Xcdw4+9jHcP1279JwOCaP0fjXSJM/xY3/T7WcVy/fWyAqJo/h+AdRTlin20cOY4b+8zU3qVorLWVwH+Xoqlt71I01tr5QJwxJqmRc/mTuuxjqQdr7Vwg/yCb6BiupzrsY6kHa+12W7P4vLW2CMjAu0pFbTqO66GO+1jqoebYLK75NKTmY98bvx05jhu7TB1omZnD3UYOrK77b2TNqdFZxpi+TRMtYOgYbho6hhuAMaYzMIjfLzCh47iBHGQfg47jejHGBBljlgI7gW+stT5xHDf2QncNthSNHFBd9t9vQCdrbbExZhzwGdCjsYMFEB3DjU/HcAMwxkQBHwO3WWv37Pvyfv6KjuPDdIh9rOO4nqy11cBRxpg44FNjTD9rbe17LR05jhv7zFSDLUUjB3TI/Wet3fPfU6PWOzMsxBiT0HQR/Z6O4UamY7j+jDEheH/Iv2et/WQ/m+g4rqdD7WMdxw3HWlsA/ACM2eclR47jxi5TWoqm8R1yHxtj2hpjTM2fh+H9331Xkyf1XzqGG5mO4fqp2Xf/BDKstX87wGY6juuhLvtYx3H9GGMSa85IYYyJAEYDq/fZzJHjuFEv81ktRdPo6riPzwNuNMa4gTLgIlvz2IMcmjHmA7xP4SQYY7YAD+G98VHHcAOpwz7WMVw/RwOXAytq7jcBuA/oCDqOG0hd9rGO4/pJAt42xgThLaIfWmun+0Kn0AR0ERERkXrQBHQRERGRelCZEhEREakHlSkRERGRelCZEhEREakHlSkRERGRelCZEhEREakHlSkRERGRelCZEhEREamH/wfzy7qXLkQCWAAAAABJRU5ErkJggg==\n",
"text/plain": [
"