Skip to content

Instantly share code, notes, and snippets.

@Alaya-in-Matrix
Created March 17, 2019 13:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Alaya-in-Matrix/607e9ca26739c29971234c728c829b96 to your computer and use it in GitHub Desktop.
Save Alaya-in-Matrix/607e9ca26739c29971234c728c829b96 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"w is 1.89571, b is 1.14036, noise_level is 0.1\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import torch\n",
"import pyro\n",
"import pyro.optim\n",
"import matplotlib.pyplot as plt\n",
"from torch.distributions import constraints\n",
"\n",
"# The true model, with randomly generated weights and fixed noise level\n",
"noise_level = 0.1\n",
"w = torch.randn(1)\n",
"b = torch.randn(1)\n",
"xs = torch.randn(2000)\n",
"ys = w * xs + b\n",
"ys += torch.distributions.Normal(0,noise_level).sample(ys.shape)\n",
"plt.plot(xs.numpy(), ys.numpy(),'+')\n",
"print('w is %g, b is %g, noise_level is %g' % (w,b,noise_level))"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Iter 0, loss = 2687.05\n",
"Iter 1, loss = 2640.72\n",
"Iter 2, loss = 2684.39\n",
"Iter 3, loss = 3391.81\n",
"Iter 4, loss = 2224.56\n",
"Iter 5, loss = 1761.55\n",
"Iter 6, loss = 1588.03\n",
"Iter 7, loss = 1098.45\n",
"Iter 8, loss = 898.034\n",
"Iter 9, loss = 862.778\n",
"Iter 10, loss = 179.275\n",
"Iter 11, loss = 408.532\n",
"Iter 12, loss = 277.057\n",
"Iter 13, loss = 162.735\n",
"Iter 14, loss = -554.819\n",
"Iter 15, loss = -382.595\n",
"Iter 16, loss = -629.961\n",
"Iter 17, loss = -631.552\n",
"Iter 18, loss = -950.306\n",
"Iter 19, loss = -775.839\n",
"Iter 20, loss = -1212.27\n",
"Iter 21, loss = -1307.65\n",
"Iter 22, loss = -1205.53\n",
"Iter 23, loss = -1420.77\n",
"Iter 24, loss = -1542.92\n",
"Iter 25, loss = -1389.81\n",
"Iter 26, loss = -1395.66\n",
"Iter 27, loss = -1246.74\n",
"Iter 28, loss = -1582.06\n",
"Iter 29, loss = -1392.02\n",
"Iter 30, loss = -1445.26\n",
"Iter 31, loss = -1435.81\n",
"Iter 32, loss = -1397.74\n",
"Iter 33, loss = -1549.23\n",
"Iter 34, loss = -1473.04\n",
"Iter 35, loss = -1453.12\n",
"Iter 36, loss = -1505.85\n",
"Iter 37, loss = -1492.65\n",
"Iter 38, loss = -1631.17\n",
"Iter 39, loss = -1252.41\n",
"Iter 40, loss = -1611.26\n",
"Iter 41, loss = -1649.33\n",
"Iter 42, loss = -1362.35\n",
"Iter 43, loss = -1560.98\n",
"Iter 44, loss = -1480.59\n",
"Iter 45, loss = -1434.66\n",
"Iter 46, loss = -1543.08\n",
"Iter 47, loss = -1577.27\n",
"Iter 48, loss = -1515.67\n",
"Iter 49, loss = -1608.24\n",
"Iter 50, loss = -1582.67\n",
"Iter 51, loss = -1515.95\n",
"Iter 52, loss = -1476.7\n",
"Iter 53, loss = -1539.06\n",
"Iter 54, loss = -1407.39\n",
"Iter 55, loss = -1446.8\n",
"Iter 56, loss = -1606.7\n",
"Iter 57, loss = -1447.02\n",
"Iter 58, loss = -1601.64\n",
"Iter 59, loss = -1415.43\n",
"Iter 60, loss = -1419.78\n",
"Iter 61, loss = -1601.83\n",
"Iter 62, loss = -1620.17\n",
"Iter 63, loss = -1573.81\n",
"Iter 64, loss = -1365.48\n",
"Iter 65, loss = -1648.46\n",
"Iter 66, loss = -1431.64\n",
"Iter 67, loss = -1501.02\n",
"Iter 68, loss = -1502.12\n",
"Iter 69, loss = -1545.02\n",
"Iter 70, loss = -1433.34\n",
"Iter 71, loss = -1599.14\n",
"Iter 72, loss = -1566.04\n",
"Iter 73, loss = -1444.18\n",
"Iter 74, loss = -1453.78\n",
"Iter 75, loss = -1498.57\n",
"Iter 76, loss = -1394.06\n",
"Iter 77, loss = -1632.02\n",
"Iter 78, loss = -1522.26\n",
"Iter 79, loss = -1526.23\n",
"Iter 80, loss = -1469.23\n",
"Iter 81, loss = -1583.47\n",
"Iter 82, loss = -1636.38\n",
"Iter 83, loss = -1474.78\n",
"Iter 84, loss = -1427.05\n",
"Iter 85, loss = -1506.54\n",
"Iter 86, loss = -1322.13\n",
"Iter 87, loss = -1463.47\n",
"Iter 88, loss = -1464.69\n",
"Iter 89, loss = -1298.07\n",
"Iter 90, loss = -1374.47\n",
"Iter 91, loss = -1531.41\n",
"Iter 92, loss = -1320.89\n",
"Iter 93, loss = -1428.21\n",
"Iter 94, loss = -1530.18\n",
"Iter 95, loss = -1483.42\n",
"Iter 96, loss = -1340.97\n",
"Iter 97, loss = -1536.38\n",
"Iter 98, loss = -1445.88\n",
"Iter 99, loss = -1454.23\n"
]
}
],
"source": [
"# The prior\n",
"def model(x,y):\n",
" prec = pyro.sample(\"precision\", pyro.distributions.Gamma(5,5))\n",
" wb = pyro.sample(\"wb\", pyro.distributions.MultivariateNormal(torch.zeros(2), torch.eye(2)))\n",
" noise_level = 1 / prec.sqrt()\n",
" for i in pyro.plate(\"data_loop\", len(x), subsample_size=256):\n",
" pyro.sample(\"obs_{}\".format(i), pyro.distributions.Normal(wb[0] * x[i] + wb[1], noise_level))\n",
" \n",
"# The variational distribution\n",
"def guide(x,y):\n",
" mu_wb = pyro.param(\"mu_wb\", torch.zeros(2))\n",
" L_wb = pyro.param(\"L_wb\", torch.eye(2), constraint = constraints.lower_cholesky)\n",
" \n",
"\n",
" prec_a = pyro.param(\"prec_a\", torch.tensor(5.), constraint = constraints.positive)\n",
" prec_b = pyro.param(\"prec_b\", torch.tensor(5.), constraint = constraints.positive)\n",
"\n",
" wb = pyro.sample(\"wb\", pyro.distributions.MultivariateNormal(mu_wb, L_wb.mm(L_wb.t())))\n",
" prec = pyro.sample(\"precision\", pyro.distributions.Gamma(prec_a, prec_b))\n",
" return wb, prec\n",
"\n",
"optimizer = pyro.optim.SGD({\"lr\": 1e-4, \"momentum\": 0.1})\n",
"pyro.clear_param_store()\n",
"svi = pyro.infer.SVI(model, guide, optimizer, loss=pyro.infer.Trace_ELBO())\n",
"rec_loss = []\n",
"for i in range(100):\n",
" loss = svi.step(xs,ys)\n",
" rec_loss.append(loss)\n",
" print('Iter %d, loss = %g' % (i,loss))"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([ 15., 75., 202., 308., 221., 119., 46., 9., 3., 2.]),\n",
" array([0.05824235, 0.06130503, 0.0643677 , 0.06743038, 0.07049305,\n",
" 0.07355573, 0.0766184 , 0.07968107, 0.08274375, 0.08580642,\n",
" 0.0888691 ]),\n",
" <a list of 10 Patch objects>)"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 1296x432 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"fig = plt.figure(figsize = (18,6))\n",
"plt.subplot(131)\n",
"plt.plot(rec_loss)\n",
"\n",
"plt.subplot(132)\n",
"plt.plot(xs.numpy(),ys.numpy(),'+')\n",
"for i in range(10):\n",
" wb, prec = guide(xs,ys)\n",
" py = wb[0] * xs + wb[1]\n",
" plt.plot(xs.numpy(), py.detach().numpy(), 'g', alpha = 0.1)\n",
"\n",
"\n",
"plt.subplot(133)\n",
"noise = []\n",
"for i in range(1000):\n",
" wb,prec = guide(xs,ys)\n",
" noise.append(1/torch.sqrt(prec).item())\n",
"plt.hist(noise)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(array([ 10., 48., 164., 284., 275., 152., 52., 10., 3., 2.]),\n",
" array([0.12047411, 0.12198316, 0.12349221, 0.12500127, 0.12651032,\n",
" 0.12801937, 0.12952843, 0.13103748, 0.13254653, 0.13405559,\n",
" 0.13556464]),\n",
" <a list of 10 Patch objects>)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAl8AAAEyCAYAAADEPbUEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3Xl0W+d57/vvSwIECIAASZDgLFEUNVASZVmSZVl2bHkeVdsZmrRphk7patM26Wl763O67u3t6T09ue1pe056ek9vmqRJm/RmaOI4smzZsixZtiRbpmhJpMRZ4kwCJEZiHrjvHyC2KYqUaIua6OezlhZJYGPvDSSL/Pl9n/d5laZpCCGEEEKI6yPvRt+AEEIIIcRHiYQvIYQQQojrSMKXEEIIIcR1JOFLCCGEEOI6kvAlhBBCCHEdSfgSQgghhLiOJHwJIYQQQlxHEr6EEEIIIa4jCV9CCCGEENeR4UbfwOWUlZVp9fX1N/o2hBDXycmTJyc1TSu/0fexFOT3lxAfPYv9HXZTh6/6+npaWlpu9G0IIa4TpdTAjb6HpSK/v4T46Fns7zCZdhRCCCGEuI4kfAkhhBBCXEcSvoQQQgghriMJX0IIIYQQ15GELyGEEEKI60jClxBCCCHEdSThSwghhBDiOlp24csdit/oWxBCCCGEWNCyC1+eUGJRx0lIE0IIIcSNsOzC12ItNqQJIYQQQiylm3p7ocVyh+IXham24SAALruJCrv5Rt2WEEIIIcQllkX4qrCb9ZDVNhykudYx73ES0oQQ4tZR/9y+a3bu/q89ec3OLcSVLIvwtViLDWlCCCGEENfKsqv5ctlNN/oWhBBCCCEWtOzC12KnDyWkCSGEEOJGWHbha7GkxksIIYQQN8JHNnwJIYQQQtwIEr6EEEIIIa4jCV9CCCGEENfRR6rVxFJwh+JSLyaEELc46SEmbiQZ+fqAZFsiIYQQQlyNZRG+prVpprXpG30bQgghhBBXtCymHTsmOjjvP8/Wqq3U2GuW/PyyLZEQQgghlsqyCF8uq4vz/vO0jrUCLHkAk22JhBBCCLFUrnraUSlVqpQ6oJTqmflacplj7UqpEaXU/7za685Wbi3nzto7AWgda2UkNLKUpxdCCCGEWDJLUfP1HHBQ07Q1wMGZnxfyF8AbS3DNS7isLnbU7ACyAWx0avRaXEa2JRJCCCHEVVmK8PU08N2Z778LPDPfQUqpbUAF8OoSXPMio1OjvNL7CqWFpXoAOzl68poEMKnxEkIIIcTVWIrwVaFp2hjAzFfX3AOUUnnA3wB/fKWTKaW+pJRqUUq1TExMLOoGwskwyUyS/b37KTYXX/MAJoQQQgjxYS0qfCmlXlNKtc/z7+lFXud3gJc0TRu60oGapn1D07TtmqZtLy8vX9TJ1zrXUm7NHvtq36s4zA4JYEIIIYS4KS1qtaOmaQ8t9JxSyq2UqtI0bUwpVQV45jnsLuBjSqnfAWxAgVIqrGna5erDPpCdtTv1oHWg7wAPrHqAO2ru4N2Rdzk5ehJVragqqlqqywkhhBBCfChLMe34c+ALM99/AXhh7gGapn1W07QVmqbVA38E/MtSBq+cbdXbWFm8EoDXL7yOxWjhjpo7AGgZbWFsamypLymEEEII8YEsRfj6GvCwUqoHeHjmZ5RS25VS31yC838gmys2s8a5BoA3+t/AlG9aMIC5Q/HrfXtCCCGE+Ii76vClaZpX07QHNU1bM/PVN/N4i6ZpvzHP8d/RNO13r/a6l7O+bD1N5U0AvDX4FoY8w7wBTPZpFEIIIcT1tiz2dpxPY2kjmys2A3B86DjARQFsPDy+4GtlREwIIYQQ18qyDV8AK4tXsrVqKwDvjrxLZjpDvb2Zfm+EH585zGTUTdtwkLbh4EWBS0bEhBBCCHGtLOvwBdl9HnMjXq1jrdgLFZ9svo96p5X2yVbKi2M01zqkeaoQQgghrotlH74AKm2V3FV3F4FokjPuM0RSEbZXbweyI2Lj4XHcobg+CgbMOyImhBBCCHG1lkX4SmVSRJKRyx5TZimjwZ4NXB0THQQTQe6rz27G/e7Iu2h5AZprHTTXOgD072VETAghhBBLaVmEr47JDl6/8DonRk5c9ji7qZj76u8DoMfbg8oPs616G5ANYO6we8HXygiYEEIIIZbCsghfq0tWA+AOu3mp56WLnps7nTgwoeEq2EYgmqQ/0M/Y1JgewE6MnMAdduOymy65hhThC7F8KKXqlFKHlFIdSqmzSqmvzDz+fyqlRpRSp2b+PTHrNf9RKdWrlOpSSj164+5eCHGrWxbhyx/3k9EyJDNJMtMZ9nbtZTSQnYassJsvmU68c1U1n9yU/Z06OjXKYHDwogBGXvDGvBEhxPWSBv5Q07QmYCfwZaXUhpnn/k7TtC0z/14CmHnuM8BG4DHg/1FK5d+IGxdC3PqWRfhKZpLkq3yMeUbCyTAAPzm3l1gqtuBrCo2FPLL6EQAmIhP0+novGQG7GYvwZfpTiKunadqYpmmtM99PAR1AzWVe8jTwA03TEpqmXQB6gR3X/k6FEMvRsghfDSUNrC5djVIKW4ENDQ2A186/hi/m04+bO51oMph4rPExAILxIOcmzl0UwFR+iOZah/66m6EIX6Y/hVhaSql64HbgnZmHflcpdUYp9W2lVMnMYzXA0KyXDTNPWFNKfUkp1aKUapmYmLiGdy2EuJUti/AFsKF8A9XWdfR7Iwx4oxTkFdDvjfD9916lZbgLYN7QZMw38sSa7BRkLBXjvbH39Mas7wy/gyfiuaaBR0ayhLhxlFI24CfAVzVNCwH/C1gNbAHGgL/JHTrPy7VLHtC0b2iatl3TtO3l5eXX6K6FELe6ZRG+RqdG2d+7n02VK/mlLQ9R77SSnE6y1lVCvdPKWKSb0+OnF3x9fl4+T659EoBpbZrWsdaLApg3NjFvEX7O1QSoxQS7+aY/D3d5JLgJcRWUUkaywev7mqb9FEDTNLemaRlN06aBf+L9qcVhoG7Wy2uB0et5v0KI5WNZhK9YKkYqk+LVvlfJU3ncv+p+IFsLplT2P1gHg4McPH9wwXPkqTyeWvuU/vPrfW9j1lbT743QNtFCh3t4wXqvaz0VON+iAafVJD3IhPiQVPYXw7eADk3T/nbW41WzDnsWaJ/5/ufAZ5RSJqXUKmANcPneNkIIsYBlEb5Wl66moaQBgKODR5mITPBMU3YqUdM0UtMpNE0jmoqyt2sv09r0vOfxTCX0AFZsKSCu+nhm490ATE13UFmSXJLAczMW8gvxEXM38DnggTltJf5KKdWmlDoD3A/8AYCmaWeBHwHngP3AlzVNy9ygexdC3OKUpl1StnDT2L59u9bS0nLF46a1aRSK8fA4LaPZ4yttlWyr3sa+7n36MZqmkZ+XXR3+yOpHMBkunkpsGw7qo0t7u/bqjxdM15PM6wdgZ+1Oyq3luEPxeUe8XPYPNiI1+5pX4g7F6RgN4bRdfN8f9JpC3KyUUic1Tdt+o+9jKSz295dYWP1z+270LXwo/V978kbfgrhBFvs7bFmMfHV7u/neqZ8SiAf0Kcfx8Dj7uvfx1NqnMOQZyFN55OflU5BfAMCrfa8SjC/cz2vPuj0Y840AeOLdNFc0A/D28NtMRCbmnQq81ishK+xmdq93yRZIQgghxC1sWYQvl9VFIJai19fLkYEjevsIgBe7X+Shhocos5QB2Tqw0sJSAI4MHOHUaN+CU4CPNT6GtcBKsaWANncbG10bgfcD2JLc+2UK+YUQQgix/CyL8FVsLuau6uyIV2Y6w/7e/TzY8KA+yrW/dz8byjewujS7DZEv5qOqKFtXOzR1DoNpdN7RJHcozgOrHtDD2lnPWZrKm4CLA9jVBKi5o1aLrfuS0CaEEELcmm7p8JUrXN97toXjo4fIJF1MhBSBaJKD5w/SVN7ECscKIDvKZSuwcVvlbQCMTY3pAazX18vRwaOXnD9X03X3irupsFUA0DHRwbqydcDFU5CLudfFWOzKSZlqFEIIIW5Nt3T4ytVdfWx1IwD5BR5qSwu4u/52AE6PnyacDLOlcov+szfq5a66u4BsACu3Zhsh+mI+Tk28xkILEHbU7KDOkW3z0zXZxRrnGiAbwCajk1e8V+lML4QQQgi4xcNXTmlhKbtqHgAgkU5w1nOWXXW7gJlQNX5K/3k4NEzLaItemD8RmaDQWAhk20t879RPaR2cnLcGbEvlFr2lRY+3R//++NDxRQWwnLmjYHNbTxzu8lyX1hPS2kIIIYS4/pZF+AKoLbHz1Nqn9FYSx4aOsbN2p/78saFjbK/Orv5MZVIcunCIBxseBNA34DbkGSi2FDASO84qV/Y8c1cUbnRt1Kcdz/vPs7J4JXBpAHOH4gv28+oYC11073NXTjqtpgVXMS5lYJLROCGEEOL6Wzbhq8JuRinFE2ueoL64HshOCa51rtUDUstoC/XF9XrX+4PnD3Lvynv1c6Sn07isLgAOXTiENzb/isa1zrX6yseBwAC19lrg4gDmCSUuCVUuu0nvTj/bYgJV7hgJTEIIIcStbdmEr9maK5rZUZPdkq3b281kdFIfBesP9KNpml5Af2TgCNuqt+kjZp6Ih9Ul2VWRQ+HT9Pp6571GQ0mDXks2HBqm0lYJZAOYN+q95HhvOMGxXu/F+zN2evRmrblRMm84oT8/e+pxqUKXdNcXQgghbqxlEb7GpsZ4qecloqmo/liFrYKHVz8MQCQZ4e3ht3lw1YP68+6wWw9ZJ0dPUmevw2lxAtDn72ND+QaKLQV0THTw7si78163zlGnT2WOh8fJw06/N8K/nTpAIO67aAPspmo7jS7bxfsz2t7vTJ8bJdu93oU3nNBHyXItL3o94SUJTDeiOawQQggh3ndV4UspVaqUOqCU6pn5WrLAcSuUUq8qpTqUUueUUvVXc925oqko6Uyag+cPcsF/QX/cbDBftFn2wQsHuWfFPRSbi4FsyMq1ougP9BNNRfUi+nMT59hYnp1aHA+P83LPy/Neu6qoilWObPuKaULcXltLvdPKKc87VJemQcuOWuVGrtqGg/R6wrSPBBcMVP5o6qLRME8oQaPLBkCvJ3xRMBNCCCHEreVqR76eAw5qmrYGODjz83z+BfhrTdOagB2A5yqve5H0dBp3xM1QcIh2TzsH+g7oLSOUUuxZt0dvE/HW4FtUFVWxuWIzAIPBQX21YywV47z/PJtcmwA4O3FWbymRnk6zt2svmelL99LV0g7uXpHdgNsf82MryAalY0PHyDdELhppUgpKrEY0jQUDVYk1u63RfKNUjS7bkoUuadQqhBBCXH9XG76eBr478/13gWfmHqCU2gAYNE07AKBpWljTtOjc465GIB5gMDhIWktzYuQE0VSUF7tfJJwM68dsqdzCtuptQLZRan+gnwdWZdtTxFIxNE0jNZ0CoN3TroezHm8PNUU1+nle6nlJXx05W2lhqV68PxzwEU/m0e+NcMrzDm/19WfruSIJNA12r3NdEqgg22Li+dYR/JEUvZ4wz7eO6HVhOYsJTIudjpSRMyGEEOL6u9rwVaFp2hjAzFfXPMesBQJKqZ8qpd5TSv21Uip/oRMqpb6klGpRSrVMTCxu/8SGkgZur7xd3+7njPsM0VSUQxcO0ePt0Y+rLqrW20uEEiFev/A6jzU+hlIKpRTGPCOGPIN+jtyKxpGpEWwFNn2bodfOv0anZ/SSwvXBSdjovItiSwHrqwpZXW4HwJ9uo8aZoanKPu/9u+zZ2q/d61w8u7WGRpeNRpeNZ7fWsHu9iwq7WQ9di9mOKDdlKYQQQoibzxXDl1LqNaVU+zz/nl7kNQzAx4A/Au4AGoAvLnSwpmnf0DRtu6Zp28vLyxd1gXJrOU+sfYIdNTuwFdhIZpK4I25Gp0bpnOzkpZ6X9GlIi9HCk2uf1F+7v3c/H1vxMb3WKz2dRpFtRXHWc5YVxdmasHAyjC/mo7E0202/x38Suy1w0QiWy26ioaxMD3iZ6QzTmkYgmuQfj+2jZ2IceL++a6bjxaJGoBY6ZqFVkNKSQgghhLg5XTF8aZr2kKZpm+b59wLgVkpVAcx8na+Waxh4T9O085qmpYGfAVuX8k1Atrh+z7o97K7fTUNJAxORCaaSU5wcO0k6k+bF7hcJJbLNTfNUHnvW7dH3djwycASL0aJ3wdfQCCVCTGvTDAYG9RouyO4DmWsxccZ9htf7TujP5QKPxWjRV1qWWgooLNAoKjTiT7cRTPj1Oq5NNY5534vLbrpoenGxfcBmj8TlivllBEwIIYS4uVzttOPPgS/MfP8F4IV5jnkXKFFK5YaxHgDOXeV1F3Rn7Z08ufZJtlRuIRgPkpnO0OZpI56O80b/G3ROdurHbq/ezu1V2X0g2z3tdE528ljjYwDYTXbS02liqZheO5Zrznpq/BR31t4JwFn3eboDxy+5D7PBzKONj1JsKcBkMBFJTgHwnvttfDHfZd9Dhd180UjX3FGs9pHgJVOenlBCH0nr9YT1OjKZghRCCCFuLlcbvr4GPKyU6gEenvkZpdR2pdQ3ATRNy5CdcjyolGoDFPBPV3ndy3JZXTy9/ml21OzAbDATT8cZDY0yHh6nx9vD3q69TGvTANTaa/XCe1/Mx/7e/Tyx5gmcFicF+dngNB7OThdqmqaPgr0z/A47a3cyFU8xGgrw98d+wLQ2fdG+jP7INLWFu2gbCWAtKOL06DBT8RT7Og9dMYBdjqYxb6+uTTWOiwr4pYeXEEIIcfO5qvClaZpX07QHNU1bM/PVN/N4i6ZpvzHruAOapm3WNK1Z07QvapqWvNobvxJDnoE96/bw9PqnWVm8ksnYJJ6Ih9PjpwHY172PQDwAgLXAelEd2Es9L9HsamZL5RbyVB6VtkrO+88D2dqv6YyFfm+EH5w+yJ01d+iv29f9Inaz0gNPhd3M7SucPNGYPfdt1bWUO+IUWwo4OngUf8y/4P1fTSd6aSEhhBBC3LyWRYf7y9nk2sSnNnyK2ypvI56Ok8gkaHO3kUgneHPgTdo97cD7dWDl1uzs6OH+w2hoevF8Q0kDw6FhUpkUeflRNldXUe+0cs57isfXb2djlYuiQiNHRw7qtWU5+Xn53Fv3KACVtkrGw+NomsaLna/T5Rmb977n2xcSuKhZ6+yi/bmvlQAmhBBC3JwMN/oGrgeH2cHHmz6OxWChZayFWDrGQHCAEnO2If8F/wWeWPME+Xn57KzdyWBwkNPjpzk9fhqX1cVTa5/i5d6XqbXXZkfLsu3A9P0gjw+cxqTKKVQVxDQ33z35ElWFGyizVOqbaPsjKVZaP8bpyYN6AIvFbbza+wauokcpKZx3cwDd7DqwtuGgHsoud/xScYfiMnUphBBCLJFlP/KVk6fyeGLtE3y2+bPUOeoIxANcCFygzd0GZKcac3VYKxwr2F2/G8hutP1i94s81vgYjaWNFJuLKTQU0ufvIzOdwWzMYC80UFgYZHUlrCvdRL3TiskyQEWpVx+B2r3exea6Yj53+yeA7AjYYGCUYCzJi52vX3YK8kqjWO5Q/JoW1UvbCiGEEGLpfGTCV87q0tX8yuZfobmiGYBYOkabu41kJsnRwaN6TViRqYgn1jyhv25f9z5WOFZwz4p7MBlM1DvqOTFyAleRjYyWIZVJEU6G6fK16y0ren29vNLzxkXXd4fiFHEnb5/3E4rYaB8b5I1uD//r2IuXnYKcLRfGcoFr9t6Rs68jhBBCiJvPRy58QbYP1y9u/EUebniYPJVHLB2jx9eDN+plMDjI3q69pKfT5Ofls2fdHr2z/esXXieaivL4msfJz8tnR80O2j3tpDIp8vPymUpMUVxo5NjQMe6vvx+AYMLPqYnX9CavuU72/+Xxz1PlsNNQWkuNM0lTtY1uf4u+COBy4SkXxi4XuK40WnWlcHY1Bf9CCCGEWNhHMnzl3Ft/L7+1/beoLqomkozQ4+vh7MRZAF7ueVnfrujuFXfrm223jrVyevw0e9btwWV1sbliM5PRScYj4xSZikgSIBBN8s8nX8RlzO4lGYil+K+vf4+RQBh3KM7hLg/fOXqBdGQTg5MaYz4zPz/TyXuDE3yvdT+BeOCK/bncoTgnB/w83zpCrydMryfMD08McbjLs6iAdKVwNt+m3tK2QgghhLh6H+nwBdn9Hn9j62+wybWJPJVHJBnhjPsMqUyKt4ffpmW0BYBVJav0jbNHp0bZ27WXO2ruYGvVVlY4VmDON3Nq/BQui4ukFqDeacWTOsm2yl00ljsoKjTS6j6EzZxh9zoXX7x7FQ9vqOCTzY9wb+NqPr5lE5UlaXzRKHs7DhJKBPSANDtM5UakOsZCbFtZovf0KrEa2VzrAC0brLzhxDUZrZKRLyGEEOLqfOTDF4Ax38inN32ap9dnt6uMp+O0e9rxx/yMTY2xt2svqUwKh9nB42se11+3r3sfJYUlPNTwEKWFpaxzruPEyAmKzcUMBgfRNI3DF97g9qrbKSusALJTl55Idhcmp82EpkGtdTPVRdUU5js5Nz7K6eFJWt3HOT0yogetnNyIVG4VZa7+q38igtNmwh/NLsXs90YuGa36sFOJswv+pfheCCGEuDofqfB1pZCxvXo7f3DXH1BpqyQ1naLL20XHRAeQ3YB7PDyuN291mLPTcQfPHyQQD/DU2qcoLixmW9U2To2fwlZgo883ylgwwo/PHMZuKiYvU0u/N8Ir3W/S5+vDZTdRYjHijyQpmG7Ekl9JpbWS4eAER3tHGAyfJJQI4I+kFrz3CruZXY1O6susADS6bDTXOnAUFsx77IeZSpSpRiGEEGLpfKTC12JGbUoLS/ntO36bDeUbyFN5TCWneG/sPdLTad4deZe3h98G4N6V99JU3gRAy2gLp92neWT1IzSVN7GjZgcDgQE0olSX5lNeBOcDXZgKEnz6tuxWRi91vsuhvrdx2kwEYykOdXkYmSjHkl9DQ2ktk9EAp0fGeaP/CBXFGTyhBIe7PBzu9OgjV7mpxYmpBP5oipP9Pno9YZ5vHSEYS3K4M3v81U4VSvG9EEIIsXQ+Ek1WP6g8lccvNf8SZz1n+UH7D0hNpzg5epJ1znUA7O3ay6ONj9JY2oiz0Mlbg28xFBxiKDjEU2ufQk076PdGGJkawBfvJl81MeDzMxVPkZ8f4+MbH+OnZ/czERvnR+17+cVNe+j1ZDfvtpvWU15aic2cT3zax8ryPE6OH+PzWx+nudYFZMOQJ5SgqdqOJ5RA07IjXt5IAn8kxa5GJ55QguZaB23DwXlHrj5IB/wP2uBVCCGEEAtb9iNf7SPBDz1qs9G1kT+5508ot5SjlKLT28m5iXMAvNL7CiOhEUoKS3is8TH9NS92v8iK0mJ+Z+enuLt+A7VF9UxlLtBUVUIgOUw4Geb1C6/z6eY91DutuOwGDg++zKqyQkosRlCKZNxFg6MJsyqlyzPBaHCSIwNHCMaz7yE3gpfbRigXhpqq7DS6bBfVeC1EphKFEEKIG2PZhy9N46paJtgKbPzenb/H1qqt5Kk8wskwLaMtZKYztI618tbgWxjzjeyoehhrQbbu6kDfASajk+xZt4cK8xqKDKs44+7AmFfAS11H6fdG+GHbXra67mc8mJ3S+1H7z3FPTWVvGI3z4xa+cMcD3FG3GqcNvFEvRwaOcPzCIHDpXo/ecLbRqstuwh2K440kONbrBeBwl2fJpgnnNngVQgghxAez7MPXUlBK8WzTs/zq7b8KwLQ2zbGhYwTjQfwxP3u79jLkC/LAqgdY61wLwImRE7R72nlm07187vbHeXztLiZi41TaC5lInKPInE+r5xD/+8OfYU/zGqqKzXhS77JzrYlnt9YSSWSosddwR80drHOtZDIcpnW4n39+92WmkkE8oWy9lzc80w9MgTeS0KcId69z6W0onFbTZacKFwpS8z2+UINXIYQQQizOsgxfCxWIK3V1520oaeBP7/1TSgtLMRlMdEx20OXtAuD46CGGgkOsK1unby90wX+BVvchKm2VbK24n01lW8loGTRN4+zEWaKpKAf6DnDvqm2ssDcwFUvxLy2v8mpnO1aTIVtMHyhkdfHtrHOtpNJRQL4xwOH+Nwgns+0n/NEkPzwxxJmhIP2TEQ53eXi+dYTDndl2FrkGrLk6sfl80MchO9ImhBBCiA9uWRbcX8sCcbPBzB/c9Qe81PMSr/W+yUTYTbfHzcby2/nZ2aNYDFaeWv8wjzY+yiu9r5CeTvNi94tUm+/k083P0jZZTpu7DV/MR4+3h1p7LUcGjtDgbCadNvNK93EOn28hk3bS67EDoBRMJRoY8HnxRRJ4w32E4xnuWfExOsaSeq3X3tOjbFtZSlNV9nUvnxmjvsyK02bCE0rQ6wnjspsWNeU636hX+0iQmV2S8EdTerhd7DmFEEIIsUxHvq6FuWHkiTVP8Id3/y4VRdmgd9p9gmJrCpcDTowdID2dZs+6PZgM2RqpYyOvk5c/xUMND7Fn3R7qi+tJZBL0+HpoG+/h8IW3KSyY5ovbH6eq2EznRB/TpnZ2NTp55vZaPrdzI889+HG0dAl31Jdhs/roC73LcGASgEOdHiKJNL2eKX3EymEpoKnarq+kbHTZ9OnK3EKE3AhZbnQw93iuXmz2AoWrrZ8TQgghxEcgfH2QlgqXM98UXI29hj/b/Wc4zA4M+Ua6Jrvo9nYTiCY5eP4gJ4Y6qTLdSSaZbRHxg9MHeaH9BEWGWj618VN6LzFvfARfsotM/hDDoX6+tONZ7GYjBYYkP2r/GdPaNO5QHLvJzkrbDiptVcSSis6JbgqsXURTU9SVWqiwm2h0FemBqMRipMJuptFl06dcc4FpU40Dl92E02a65PHmWodeLzY7YM3esgik35e4dSml6pRSh5RSHUqps0qpr8w8XqqUOqCU6pn5WjLzuFJKfV0p1auUOqOU2npj34EQ4lamtNw80k1o+/btWktLy42+DeDK05c/aX+ZU55jAIwEpnh6w/3kqTzMBjMPNTzEkd7zhKazbSpMBhOPrH6EaW2an3X8jPfG3yOZTpIhQ511K7fVVOP1NhDNe5dALIUCkuFmVpUVM+SPYDZO0zL+BoGEG5UXo4BamsvuwmUrBTQchQWUWIx6sPJGEvRPRNhWX6rRlb0FAAAgAElEQVS/h7k1YM21jkse6/WEZ9pfoG9nlNM3EeaZ22uW4qMVQqeUOqlp2vbrcJ0qoErTtFalVBFwEngG+CLg0zTta0qp54ASTdP+RCn1BPB7wBPAncD/0DTtzstd42b6/XWrqn9u342+hQ+l/2tP3uhbEDfIYn+HLcuar6Uyu8YJuGyN0yc2Pc69ke18/Z2vY8g3cnz4OBvLN1JsLubF7hdxFWxjZ90jvNr3Ku7QFHu79rLFdR8f3/Bx6ovreb7zeULxOAfPv4I/8jGS6X4qjLsIaqcwGBKE0++yq+RBwMqzW2t4zFfF9079nIHACJH0EKNRE0XmHdyzeqV+T95wgt3rs6Nuz0dGLmoTcazXSzCWYtvKEryR7IiWy27S31vbcJBdjc6L3qc0WBXLhaZpY8DYzPdTSqkOoAZ4Gtg9c9h3gcPAn8w8/i9a9r9W31ZKFSulqmbOI4QQH8iyn3a8Grkap1xoma/GKTfl5g7FGfcX8Mk1/4GiAge+SIY3L5zm5PBZALoDxxkKZTvgT8WnAfhZx0v4Yj62Vm/ld3f8LrUOF83VtXSGXsNijhHJf4cNzp2sda6iqtjMzzsO8s5AH4e7PJzsD+My3ElhXhn50zYGw+dIG88RTob0EOWPJXm+dYTnW0cAONbr5TtvXWB/+zgAjkIjvZ4wgWhKD13zTa/ON62Y6ycmxK1OKVUP3A68A1TkAtXMV9fMYTXA0KyXDc88JoQQH5iEr0W4XMuF2d3mm2sd3FZXwhebf4/P3/40FfZCMirCkYEj2M0GOiY62N+7n3tqH2ZlcXaE6ujgUbq93TDt4NNNX6LEVI3dWMf+3v0EksO0ul+n3rGGclO2F1htxSiVTh8lViNnR6NsLrsfU145Bhy81nOUf27Zx8mBUTyhBLtWl/Hs1hqe3Zr9G7Gmwsa2+lLsZiONLhtDvigAgUjykpE8l91Ex2joovc4u35uoaAmxK1EKWUDfgJ8VdO00OUOneexS2o2lFJfUkq1KKVaJiYmluo2hRDLjEw7zjG37qltOEivJ8yaCtsHOs89K+5hQ/kG/u7432E2mHntwptUFK4mT7PxZvxnbHTuZDq+mrbhTvq9raTSbTzc8BB/dM+XeaHzBWwFBrp87TjNbo6PminJv42V1tt5/cKbnBl+g3KLE2hkPJDAkrkDS1ErNmsRZ0bPcspjpdR6PxX2i6cINS0boHo9YU72+6grtVBiNdIxml31mKsRy02v9nsjF70+F9DaR4JsqnFIry9xS1NKGckGr+9rmvbTmYfduenEmbowz8zjw0DdrJfXAqNzz6lp2jeAb0C25uua3bwQ4pYmI19z5EawciEFsi0aNA19Zd/c/SLnbt+TGyEqLSzlLx74C8osZRSbC0looxSY3VQVm7EX9xBNh/iDez9JvdOK0ZDi8ODLDPuneHr90zy77tNUWKspMMY56dlPxthOUaHiq/d+guZaB5FUgMnMMcKJFC57IdbpHYQjdpgu5T33SV7oPMC/nejicKcHdyhOqTU7xegJJWh02eiZmOKV9jH6JyI0VTvwR1PZUDboA7L1YqFYmu8c7afXE+Zwl4fDXR7aR4K83pF9v7leX7LiUdxqlFIK+BbQoWna38566ufAF2a+/wLwwqzHPz+z6nEnEJR6LyHEhyXhawG5Fg3z9bSa2+8qt31PbmRo7hTeV3Z+hT1r9wAQjAc5OXaUdCbNuYku/q/Xfkhi6jbGAnHGAnH+84F/48UzPWSS1fzxrj+i3FpOUUERL/X9O++OHSWDj09s2MPqCht1JRYmM29jMcGaCju/tu2T7FzZSKmpgt7AaVLGNurKFB1jIUqtJr19RK8nzNoKO49uquKL96wC0Kcn60uz+1M6bSbshUYchUYgu2m302piU42DulLLDen1JQFPLKG7gc8BDyilTs38ewL4GvCwUqoHeHjmZ4CXgPNAL/BPwO/cgHsWQiwTVz3tqJQqBX4I1AP9wC9qmuaf57i/Ap4kG/gOAF/RbuY+FyxdjzCAHbU7WFu2lv986P8mM21kX9ebFBgr0DQLY8lj7Kq7m2hmDHd0FM3USTRTh920nj+//8/566N/TUF+AUdH9lFkiWPIrKW59AEuTGSXYZ/zHeHZDY9Q4TDTVPwAReY3cUcK6PWfxlFooLJgO821Lg53efSWEXazkWAsO3I15M/WfrlDcZqq7XqQOtTpYdvKEgA6x0KcHgpyqMsNmuLrr/XgDsVRClaX267Y5d4dil91QPOEEtLQVSwJTdPeYv46LoAH5zleA758TW9KCPGRsRQ1X88BB2f1xXmO7NJsnVJqF9n/0tw889BbwH1kl3HftHJ/6HMr+2bXgh3u9OCPpkBpNJYXLWqrnWJzMf/brv+Dr735daKZSfzpMdLhKWA1fe43KLfUUVm0huN9bYCXN8938ctbHuOLm7/C26OvYFDHONx/mOlUF31FHsry78SfPEUaP8+fexV3eCdkHPxi8zO83v8qg4F+jlx4h4LpSTbVfka/P284wZnhIPevd+GNJABNf3+z+32FEyn6JsIEIklC8TSba7PTk0O+KJ/eUUfHWIjd67KLwa40KiXBSQghhMhaivC1UF+c2TTADBSQ/a9NI+BegmtfF3OnE9uGg3r/rNzPi+1/Veko5JnGX8Ud6+DbrT+ipCxBl6+V2ypux2H1E8XPf3zwE3zn5D5A49TEazxge5Sd1Y+iparwRn7AUKyfcyEPD9VDI1uor5zCl7zA1HQHTlMDHaMWqgp28l5wikgywtnAe3zzhBm/bx1oK3HaTNSVWvSathWlVn314uyQuauxjDNDQTbXOUDLTkXmivLnrna8VuFqvgUQIPtJCiGEuHUtRfi6qC+OUso19wBN044rpQ6RbWqogP+paVrHElz7luS0mdi9/j5shlpeOP+POIvMeFNdVBasZjJUyHdO7qNIbWBKO0fH2BQdY//Or93xBM807+D+Nev48s//jJQa4+joz3CqSZ50fZZq5yreGX6Hfu958uMxdjfcidP2FIf738QXTTA4dRZDXpTtDU3YCmycHPDhKCxgyBcBlN4LzBtO4LRl+4RlR8XgzHCAuhIrZ4aD1JVaCMaStA0H9S2L3KE43kjikqlFdyhOx2joklWUHyQ4XctN0oUQQogbYVHhSyn1GlA5z1N/usjXNwJNZJdnAxxQSt2radqReY79EvAlgBUrVizm9Nfd3FqwxdSGzTdtORHM4y7nb3MhvpcOzwViqR4shkJqizejVA9VebWUF6aZiI3T4XuHfMMmVpWs4pnV/4He2L/xzlAr51OHeHVQ4/erv8T9q+7nL8//mD53Dz87fY6GonsYCZQTjNZxwdvBtHqHyIspnlr7BKOBOPVOK2BlyBel0WWjbyLM7vUu/V79kRSbax2cGQ4SjKV4oMmlLzbITTPmWnEEYyn8kRSNrvfrv3KjY821jouCkxTOCyGE+ChbVPjSNO2hhZ5TSi3UF2e2Z4G3NU0Lz7zmZWAncEn4upn65CxUJD73scWM4swdwclNW2aDzhc5V3aadt8BQONA3zFWOzYwGpikzGZiZdF6jvd10jbyFpur+8lXa3junuf4qze+xTn/m5wcO8pX9w3z+ebfpdywA0NFG6gwWsFJ1rjuYC13EUiXcWbiBENTnbwzaqLSthOnzcSxPi/Vjuym2YPeqN7Da2IqWwvmj6aoK7Uw5IuiadmRMXcortd75TbcHvJF2bayZN5Rrblh68NOUS7lAgghhBDiRlmKVhML9cWZbRC4TyllmGlseB9w0087XusO7rkRpl5PmArzeh5f+Zv4I9mthwLpHhoqolQVm0nm9/Ns806KzEYu+Ny8O/4apwZ9rCl6jF/a+CVKzCVcCPbyzdP/lWBiEtv0DqLJDEO+CK8PvMxYKEStbQMBfyPJRBFv9J+kO3SEtlE3kUSaHk94JmQV6ntZTk4luGgxmMo+oVT2c+mfjPD8e8N852g/B865OTcW4lCnh28dOc/P3hvhcKdHn2Y81uvVpyUX+7nMR2q8hBBCLAdLEb7m7YujlNqulPrmzDH/DvQBbcBp4LSmaXuX4Nq3pNwITq6h65oKG/3eKEUmB7+55Y9oLG1gJJDgfGCU90bfIxhLMB7tYefK1RQXGpkMJ3hz+FWqijVMmUYerP1tMskiRqbcHBz9ByYSHWwqfYAd9Ssw5ufjTr5Lh3sUs1pJpflOVMbBWc9ZghzDaHh/FKrRVUSvJ5wNTQpKLEZKrEaGfFHqSqz0TYQ5PRTkZH+2XiwYSeEoNGI1GdhQVURdqYWmagd3rXaye71Lf5+NLhtNVXY8oYQeyOY2Z50duGTbIiGEEMvZVRfca5rmZf6+OC3Ab8x8nwF+62qvdT1cj9V1c8+jadlNrnM1UXnqczQ5T9PmO0AkkabPf44y2wZ9u5+VJS4gwbdbXqTaup7djRv4ZOMf89rQv9AbOsW/nv17GqwP8FD9sziMcYKJIbrcRynU6knEG7Bq2+mdeIvvtxxDZQbYWf0o7lCcV86OYTEa6BgLARrVxZZsk1WlMeTPbTWkcFgK6BgNMuiPsbPBic2Uz7mxKcKJDLtWO+kYDdExFqJ/Ivua+jKr/l5ddpNeBzabtKIQQgjxUSF7O85xrVfXza4jmz3tWGI16r3DgrEk21beRk3RSv617dukp6cYCnfjtDhZU7qGtniAu+qbGAu0k6SfQmshFfZafvDZv+Tpb/8XDJY2xoJHOOqZoNr2GexJB76pVpLaABPxNI0lGzEbCqiuOkunZxhH6Xs8XP80FqOVXk+YZ7fW8PWDPdQ7LThtJpSCc6NBIokMa1w2OsZCRJIZVpQUsm1lCScHfGyoLmJzTbG+stFlN+G0ZnuK+aOpi1pzzDey5Y28PyqW++xz55FQJoQQYjmR8HWd5UZ4Zo+wNbps9HrC2em5ajsAHWMhnNZiHqr7dbqnXqY/2MtEeAxvJIyZOo7395JOF2AwJDnY3c2pwRM4Cj/FWtvTrKpby/fOfJ8u71lOxf6GX1zzVYx5uzjcf4SkyU13cIq1jp0UpospKjjIicFzjAdjfH7LZ/T7dAfjONe9P3X47gUv2+udADgsBYBGx2iI3okpHIUF1JdZ8UdS9HujjAaiNFU5aHTZ9KasuUJ+eH/adfZnkOu8D9mi/tlhTQghhFhOJHxdxtWsrrvSdjpzR9hm7yMJXDQ1t67iM6Ty+/jeqR8TS8XoD3biLKwmT7PSORKivMiEyZjH22MHCCXq2ex8kN/c4uLfu/+JjrCHH/f+N3bXfJ5ay51MJlqwmaKMJd7EbLgXp7oPzXYMd3SAH537/6gwPMTzrdmRqF7PVHbkKpYkV3w/5I8QjmewmfOxmY0c6ZqkvKiAaDLDtpWlgMbEVIJI0kdLv48Ke3aPyNc7PEyGEzRVvb990eyvs0cZZ4+Azf0sl2KbIiGEEOJGko21L+Nq/sjPnlpzh+J6gTlcWmwOFwc9dyiON/z+NFyvJ4wxs5r7ar7AqtJqGlwFFNk8TBuGqHRYaXTZiSVThOMZJlMnefN8F+cGnJRPf55aRzXxaR8vD/wjMdXGJ5p+gZVOK4m0BoWtrHNV8Pktv0K1rZKp1DgHB/6deDqK02piyB/lWJ+XjtEQayqK6BgLsbmmmF/YUs2n71iB3Wzgtrpi/tOTG9i2spQSq5FtK0uJJTN85o4VbK8vJZzIUF9mZYXToremWOhzmu+zmHuMFOMLIYS41cnI13VwpTqyuXVNc4/f1ejUf36y+rf58dkfc27iHPFMlECqn2S6kdoSG6vKDbxzIc2W1QGqiywUTN/NmZEGftL9TYbDnUQyr9MzpfjqPZ/lh6dfxWBIEze0srn2afLUZ2md+DljgS58vEowvpU1FTbqSrJNWB2FRkb9UZw2Ey0DPkLRNO5QHKspn+dbRzjS48FSkM/2lU5QikOdHkCj2z1FU5WdIV/0snVcswOXjGwJIYRYziR8LaEPu1Lycs95wwm8kYR+3o7RCFUFDxI0Oelyv0w8HeeN82dxmIuBamLpKL0TAQa8EUaDZyC6lY9V/Bqvp/6NgXArb468RPKtGPXWewhFJpgMT/Llf/8eNZaNOC13MxUd5pWOTgYmeghEP86O+ipAY8gXxVZowGU3sW1FKQB9E1Psb3ez57YaSixGILt10gun0tSVWmh02Qgn0pRYjLT0x1EKNtVku+M/3zpMo6voos9p9mcx+7PsnZjS96EssRqlGF8IIcQtTcLXh3C5zvdXWin5QevImqrt827R01R1L02u1fyg7Sd0Ji7QNeljKDhCtaWJoz1e4pkQ1Q4XgcgbpLW7eKju8xwYKGBw+gy9oWM4i6ZZVbadjZVrSOUNcLzvPL+wbReR5Kfwaa/Q7emiL/ZTqv2/xJBfw2RUmA35fOvIeSKJNFaTgYlwkngqjTeS4IVTI9xWV4I/mgKgYyxIS7+X85MRbCYj0WSan58apaXfx/b6UkDhspvoGA1dUlyf+3xzn2VuBeblPterIXVkQgghriep+foQrlR3dLlO7h/0j/zljtemi6g2PkaJoZFSSwFOm4HRSD/l9nx2rVpFSZGf6mILxaWd2Kxh1lj38OiqZ2hyraJ98l3avAfp8Z+jwbGFXk+Yn5w5wRvnW9DCD2BSpUwT5sj490hrMX511yoe3VjFf3pqA2sqi2iqdrCqzMrWFSWggaXAwOPNlTMhSbHnthoe3ljJXQ1l3L/eRSyZ7QG2bWWpvurRE8q2oXCH4h+oyepS7w0pdWRCCCGuJxn5ugY8ocRV70M43xSmN5zQWzbkRoaaquy8fKYId6KdlrE3GQ9OMhAYpsszQllhDUOhXppcNXhMrYxErHys/E5+9bat/O1b32IidoHTnjD1TiubXduwmwfJM4QpKu7kMcNnecv9Q8IpLwPaj+kcr8AbVgSPJjnc5WH3Ohd2s4EeT5gzw0EqHdlNtD2hBOaCfH2kTuV2KFKKQCzFC6dGWFVmw15o5FCnh3AihVKwutzGxFRCD2az33+J5f2pxtz2RjJSJYQQ4lYl4WuRPmg919WGg4WmMOe2Yaiwm0HBnbV3sqNuHa/0vcxIeAB3MI4qSLKxYg1rKo1MRkIoY5Tz4TdoKvt17q78HG97vs85dz9/PvINnHn3Uzy2klRmmrOjASamDrKt4uN0hV8gRYAfdf8DTdbPYjOVZS+sQY8nTDSZ5sJkmPIi00yRPRQa8vjO0QuM+mOQl21b4bQWcG4kSHlR9n7fPu9lZ0MpdaUWBr1RBn0RwvG0vrdk7rPOhdjZU41zP4MP43rsZCCEEELMR8LXIl2pnutG/jGvd1pBgw1VK7h79W/ztUPfxxNqIZZK4Q5eYDhgZ3rajD95jsmpRh7/f/87drWFX7/79/BF/hZTQYITA/vZZn0Ss6GQSrsJfzTFYPQE5uT9lDuPM+Af5VTgO5QV/RY1xRa2ryqlxxPmtrpietxhbCYj9693oRR8680wjsICHBYjwWgafyTFmooietwhrCYjn76jjh+eGASN7L6RpRYAWvp9eMPZz3BuR/yl/nyv9U4GQgghxEIkfC2Ra/HHPFcIrhSXbL3jjSRAy64udNpM9HrCdIyGQMFKy/2UrC3n2NA7TOVPcs9aF5aCPN4734zDMcZ9Dbfx43fbqXE28MSK3+flwb/HYayhM/QqJXl34Y/asRgcVNin6Uu0k+ffzrh/P4npAN/0/i3bSn6N//ZKlERqmjUVNgBWOC14wwmcNhOWguz/rYa8MT69ow6AH54YIpqcpsJu0ENUfbmV/skIQ74oANvrS/WO+GVFpos64n/Yz3duMb0U1wshhLjRJHx9CFdbz7VYudqmXAiBi4PH7L0hG102/Zj+iQi7V32MJtdqDl84RGJ6jFQij06vhzU0sfdMJ+OROF9/cz+lplp+qekP+ebJbzIRyyeovYNteit2SxnxpIOpuJ9UQQfri3czFHuLQGKSU8F/5g7Dr5FIGTjc5SGR1vBGkigFTdXZ9hGNLhsdo0GO9U6ilMJuNrCqzEo4kV0NabcYaaqy6/fstJr0VY2X62h/uWL7+YLV3Pqw+erFrtf/nkIIIQRI+PpQrjRycr3+mM8eDYJsXZQ7FCcUT88Esmo2lz3KWOIdBkJt2Ao1UpqX9RUu4qkw+eZ+lKGAeH4rv377b/Cv773Aqpph+rwDTGtR7mjYRn5eGWsrzbzRPcQK21by894jnPIxZfwJ5YZPsXVFKe6pGL//4FqO9XoJxlJgn2myqhSd41N4QgksxjyiqQyx1DQ/ODGIN5rAYTYCCpRGU5WdkwO+SwKUJ5TQC/FzYXOhz/dKhfi54Db3GjISJoQQ4nqS8HUNXM0f8yvVNs0XPFx2E8f6JvVGpHWlFob82ek8u8XAbWUPYS9wEImeoT8wTCJdhD8xyuM1d/GDU28yFlyDP3KeVLSZc302huLjGPLH8cUPkI6vh7wCkukUJrMPp3kVCgUk6Il9j83pL4Nm4HiflxKLkWA0id1syG60HU3R6LLpG2X/5b5zbKh2cNdqJ19/rQdQ+qbiufc8X4DqcYfZVOPAE0rgDSeuOOU49zM83OnBH00RjCXZtrKUY71eGl02Ka4XQghxQ0j4uslcqbZpoZWVu1aX6c893zrC/esq9Oe94QTbq+5hwG3F5upgMNBDMpOmx9fNI2vvoN1zFuIWbPZzPLluNy0DVYxP76O40Ej35El2r/0ELSYvfRN+prUC8rVyvEEfKWL8sOsf2Oz4Ffa3J1lRUkh1cSGjwTg9E1N4p5IMVWdHrM6MBDg54GdiKoGmgdVkoKU/u/l2rm4sd6/tI0F91SNkG7bSCkO+CHWlVr3mLTdt2TEWwmk16Z8ZvB9W24aDevF+7rm5m5gLIYQQ15OEr1vMQvVQFXaz/nMwmqTXE9a3/Dlwzk2F3UyBclE0XURIU6C1EU/HyKgpTMpJPBXCm26j029lKGjlkXW/zqHRb2POc/Kd1hfYXnkvVqOVckeIC24T6ysbCSRsTMTGMZbso9nxK1iNhaDBL2ypZlONg+8c7WfbyhJO9vvYVl8KGvq2Qx2jQT6zYwUnB3ycHgoAilAsjT+a4lifl+piM6F4drNwm8nIkC+KO5TgwmSERpcNfySpv/f5dgDIyW1Q7g0n9GL+ulLLTPsLk4x+CSGEuO4kfN3EclOMs0PW7Gm5uVN0HWMhPKEEDouREotRDxtWUz51zkKCEQOjAfjlzc/yUo+VanuE1pFu8qZLiWS8pBKVtI6dJJOpoX0yymMrfoevn/jvQAGvRd8gOlWHtcCBL9FHLFlPJJlPUjMSjPl4J/M/WGH6FDZjCb0TYbatLKHHE2IqnuL8RISemSlRe2FBdnpUQd9EmMebq3AUFvDs1hqebx3RFw48u7VGD039kxG21ZfqfcS84QRDvpj+uXgj2SnG3NfZmqrtl2xSngtrQgghxI0g4esmtlDIWojTaqK51qGPAu1e7+Jwp4cD59wEIylCiTTdnikiyQzpZDNtgWGGQn5UwSAGCogpP6QrmMqc550hH+cnA6wq+BReXiWS8ZDOH+K+9SV0jK7FZgliN5YRjtv5WJPixfZOkrxIc83naXKVUmI1UmE3Mx6K448muK2uglAsRSiWor7MwoZqO4PeKIFoktFAnKGDEdzBBB2jQWxmI4c7PfRPRhgLxrCasiN49kLDzCgZoODlM2M4LAUEY0narEH6J6O4qy5fTF9hN8t2QkIIIW4oCV+3AG8kodcrecMJnm8dAaDEauRwlwd/JEWJxYjTZtKP6/VMAdDvjRBNpunxhFnjsvH0lhp91Oi5Jx6i37uVFzpeZSTch9kUp8hg4/xkJRkVwl44RP9okk1ljzEaP04m082psQuM+mGHrZlgIsBUIkXbQCUjPsjPj/FS4lt4gr+MwsF4MM6jGyrZvrIUgB73FNtXlbB7nQt3KI7GJGiK00MBdq2u4QwBVpRaGfRG8UdThOJpPFMJbisppHdiirFAnFVlM/VhMzVhjS4bh7rc+kjW7OnXuVx2E+5QXFpLCLGE6p/bd6NvQYhbjoSvm9TsFXu5YvKcXY1OvZh87rY7uZ99/z97bx4l13med/6+qrq13Nq6qrqr0CsaQDc2YiEBcAMkEpQp0ZQtUbQjRbLjsWLHyjnjJclkcuJxZsY+mdjHOePEsRyPE00s05qxRdpj09RCiSFFQBQJbliItRtAA+h9qbXrVt1bdW8td/64VYVuEOAiEBAFfL9zeNB9+6I2QAeP3vf5nkc3OXB2iTPzJaq1BiA4eC6DWW+yJuKjUmvy1BszgE2weTfdPqiLZc5lL9CwEhi2RaHsJWOe4chShfVdOxiJxsjXjxEM1NAb86juXppenXRlkq09m5jRx6k1LJ6f+Qv2pr5A2fQTVb2MLWj0RZ2wWGx44pVLRANeQDCTNxhbLPGYgMFYkPs3JJjO6cSCCjN5WNcdYvdQnCOTeWwg4vewezjON4/PAzCRKXEpY3QEadvb1f6MVnK1z0wikUgkkpuNFF8fAq42qXmnbserrSFXho8uaVXiQR8PbUrx0KYUT74xTSri5zfv2dxJwZ/M6uxe6/io9o32AJ/ktamT2JEAZ/PH8dkqxUadeKCHojmFjoVPrGND6GHSge/j9ugsFBfYkhrgY5tH+e75V1E8W5jTT+FxuVh2P0tWvx/YwN4NCbb0RfjOyQVGkmH+5MXzVBsNciWL/phKsWLxxCuXwIYfnE9TqTU5s6ARUDyoXjdPvj4FAkbXhBmOB5lIl+nr8rO7NVF77tTiKi/XB9H9KJFIJBLJjUKKrw8B79XTBc7q7MrS6fZjtL+/UriNpsJEA44Hqx3L0PaHHZnMM5nViQa8bOreTNSXZLFocTZ7Eb+vTE9gCITB9PIifiWNz7uDZukB5jlIzpgj5Ff4wUSDprmesdxh6mYfFtMsaDq69Qx//BLEvANEAgqjPSGOz1zk8HSeoNdNwOthMlfG53FRqtbpCSuz6sgAACAASURBVPvIGxa7BmOUq3UQkCmZgGBdd5Co38tkVgfhfN8+0RlQPIwtaJyYKXYqjg5NOLljW/oinc+njSzRlkgkEsmPEim+fgxoe5WuJiCAVXETV5LTTfYMxzrfJ4I+hIBsK4Ihqjop8yPJEDndJKamSIY+w9eO/S1+b4109SJrQv3UWMTrgax5lrWpJv/poX/BP/jz/4s1cR3NErhI8sDa+3ll+jD1ShyPaxm30LHVAzy8+Rc4t6Bwcq5IVPWyNh5EtxoEvW56wj4yJZOekPNr2K+wpJnkdItqrU5/lwrC7kRUtFP8MyWTvF6jYNQAm0TQx47BKFt6I4zNa51Tk1d+NnLtKJFIJJIfNVJ8/Yh4tyT7lVxLQCxp1U68xDUfw4aesDMta/88W3KmQ8mI06e4dyQBwDePzwGCkM9Dr+8jLBoTjHQFSZvjqJ4IQcXLXGGOw+WT/PJTs/ia28gtLzGjXSTqL3DPwG6i7hGKzSlw2bgIoJs6L87+DTGxn0w5ykzBQDcbDMRVdKvOctrCqDbwegRWvUmpWuPIdAXF5aJkWuR0C7AxzCYvnUvzwKYe9m7oJls2O3Ea7SJvgLF5jROzRR7anOwk/ssJl0QikUg+TEjx9SPi3ZLs3+tjvFPAKEAi5HvbcyVCvo54az/OqTkn4mHHQJSC7pRfB7Kb+Qd7Yrw0FabSzLGoz3HP0FZOpU/RbJYou37Axzd9mhNzEWbK45xIv0FW78HPGkKBMJPmFJqhMO1aZEE8S0Nsoy+y21kNBhV2rU0S8Sscn1nulINP5w2GEyEypSqbY11s7QtzZr5ET8RLXyTA3g3dAExmDaIBJ4LCsJwuSyEAbCIBz6qy8bY4vVY9k0QikUgkNxPX9fxmIcRnhRCnhRBNIcSed7jvJ4UQZ4UQE0KI37ye55S8e3H3klbl4Hi6M+k6OVvk5GyxI7ba0RVOEbbFwfE0L46lifgV9m9KEgs6omZdj0rU38XG6H78IkFfYBNns+cJinWkSwZWo8qTJ55juVpGaQ5zIVNmwRinYTdYLkXxNAeoNZssaDqnM+dJm4fJNQ5TMCzOLGgcnSpQqtbZOdBFyO9MsXavjfPIthR7huMkgl4GY0ESQS8hrwJCdCZ9u9fGOuJqXXeQvSMJbBvOzJcYTgQpVmodQbZ9IPqOq9n2ZyaRSCQSyc3gusQXcAr4GeCla90ghHADfwI8CmwFviCE2Hqdz3tL8cNMY9qCqv11rmyummS1p1vgiA8hnAlQu1YHoGhYHJ9Z5kRLmGkVi9/79hhPvDLJZE5nqVjlxbE0pUqdfQOPkC9247c34vMX6fIlifnWgCiRNacoWgtsT+2gLxpGa5wjEqgxGtvM5sQ2NiT6Ub0NUBapuU7jDh5lQ0+QgViAxWKVqOolGvBg1pvoZo2xeY2g181oMsRMQe+sHnevjXVee053Jn4jyRA7BrtIRfyMJEOEfB4KhhPkOpIMreqIfCdk8KpEIpFIbhbXtXa0bXsMQDj7nmtxDzBh2/bF1r1PAo8BZ67nuW8l3q8f6f2sLNuVO7btiLxkxDkJOJIMoZk1FjUT1ethNBnitUt5HrljDX1dfqKqwuFLBQbjjuH9+EwRrdRLs+qjYDbwujSqzVnCrm0U6sdIhVI0xBQRzxDeSJ5l8zxWs06vshHF5WKNWmdyeYxi5SyqKBOogLXwIMVKjZxuMpnT2bImAggy5ZVCSDAUV4n4lU5HpBCXs89EKzbjyzPnAWeCdWZBYygeYGtfhC7V+74+W4lEIpFIbjQ3w/PVD8ys+H4WuPdaNwshvgR8CWBoaOjGvrJbjKuZ+CczOku9zkSs7Q8TAo5MFTgzX2J7f5SQz9MKYG1QrFrMFyqcXyqT0y3GFjTOLZWIqQq718ZZLKqUzW7eXHyRj4/eR6Fxjm2+BxnPHyMVCrJQmEL1xIj611MTC9Rx0a+OUijXWBNsYDJFrTlDxoSA18Wn7/xZHtqU5PeePU2l1uCBjclV72kmb7BvJEFer3VOO56cLXamhT1hH49u72VsXuPQhRxzywb9sQC62eD7ZzP0hHxg0zlgsFLovp9DD5JbCyHEV4GfBtK2bW9rXfsd4FeATOu237Jt+9nWz/4X4JeBBvAbtm0/d9NftEQiuWV4V/ElhHgBWHOVH/0b27afeQ/PcbWx2DWXQbZtfwX4CsCePXve49Lo9mXlyvLKiVgy4iOqejvrxoJeI1c2sVsrvGhAYWxBA2BjKkxflx9syJRNHtjYw0yhwlKxSkz1snMwilapA7AhGcUlPsFIIkfVDlMXCwQDW1muVKjYR6nVm/iVHCrraXrmsD0emragV72TfN3FXGkCzR6jYVt89YjJpcynWTZqZEo1tvYagM2ZhRJb+yJEAh7yulMQHm950XLly8XYbUHZft+ZUpXP372285lMpMvs37xa0K1kZXitjKC4rXgC+M/A1664/oe2bf/Bygstm8TngTuAPuAFIcRG27YbN+OFSn78uJGVS5O//1M37LElN493FV+2bT98nc8xCwyu+H4AmL/Ox5S0uNqEZkmrdmIWYkGFiXSZw5N5Pr41RSLk60yBLmTKbOmNMJIMkddNjs8UGYyrrOsOEQt6eelchp6wn49vTXFidhlHR9s8tClFxJ9H00NEgj0k4kFen5xhsTTLIyM/wVOnniZuD1L3nmWd/w5OLJ2jXHezIXQHD/f+PE+d+jsWK6ewXBcIR11Y3m487u2sTagAnFnUuG9dguGeIIcmsmjVGoMJlVcmco4QK+gUDIuRZLizVgU6Mv/IZB6tWmcwrjKTd6qHYkGFLb2RVZ/XynDbiUzpAxFf1+qVlHy4sG37JSHE8Hu8/THgSdu2TeCSEGICx07x6g16eRKJ5BbnZqwd3wRGhRDrgDmc/wf5czfheW9bUhH/qv7H/Ztakx/BKoFh2zCack4MxlseqpFkiMOTOQq6iqq42dIX7givj21Jki05YufR7b0cmsiBCDCg9vPN4jzF4gBFY4ykex8F6yjCCuDiLEF3mIZP43TmGF0BH7t7fppzWpR8/TDT2gTpcp5APcuO/p9hSasymTXY2huhYFj0dQWcHkgbwGY0FeLwZB5swUgyTCLo4y8OTRLxKxQNi50DXQz3BFtvEGJqlP2bk53DCCsPJayk2IrXuF7eT1uB5EPJrwkh/gfgMPAvbdsu4FgnXltxz2zr2tuQtgmJRPJeuN6oiceFELPA/cC3hRDPta73CSGeBbBtuw78GvAcMAb8tW3bp6/vZUvejVTE35mAnZwtElMVTsysjpyIqQo9YR/ZkkmubBLxezgwniYVCYCwGV0TZiZvAIIdA1G29Tt+sQPjaZ56Y4aiYfHMsTn+68EpavpdzOb8XJxPka0sY9fWY1lhpgqzZKs50pVpDKvBS5Ovcq5wgrhnO97avdRrUYx6jnTzO7y59F1SUT9rIk4vJbYgGlCYyRsUDYtMyeTFsTRzywZl01mhXsiUmcsbAERVL1q17uSU2TiTsNY0LK2ZpDXT8YZN5N4Ww/FekZEUtzR/CmwA7gQWgP/Quv6erRO2bX/Ftu09tm3v6enpuTGvUiKR/Nhzvacdnwaevsr1eeCTK75/Fnj2ep5L8v65cgK2YyDa6YZMa07KfVozKRg19o4kSIR8zsnDrO4IH1XhtYt5EDY7Wkb3eNDHzsEoeb3G4ckcG1MRMqUqAcXFpvhdKIrGqexR1na7Wa5dIu79KG8uHsSux2j45mk01jNTPkW6VKHL30Wf63NUfM8wXZzljcxfUTRM7u/7Kf7k4Hkms84JSNXrAeGk8U/nDPRanY2pCM+fWQJhE/QqPL6rvyOiHt/lDCWWtKpTJL4SQce4//SxWbCdf1ejqpenj84BzjRwW//VV5DXKjWXxv0ff2zbXmp/LYT4v4Fvtb6V1gmJRPKBIhPubwNOzhY7ie8rS7mvLONOaybdrdOBJ+eKnJ7XCChuwOb5M0ukon6G4ipdqrPiu5g18HkEZr3JTN7A4xYkgiEU6y5OTL9BJDDIkrhIVNzLousVfO4wlfoFetS1NJtT9MW2YJhVfm7nH/DvXvkt3N5FMvWnOThr8sU7/xEJ1Ydh1XnlQoa7hmIgoCfix1upcWp+mVQ4gOpzE/J5eProHDN5g4i6+q/0ZFbniZcvMV+soJsNcrrFUFzlyGQegEd39JKK+HnilUm+uG/4h/p8P4i2AsmPHiFEr23bC61vH8fJMQT4BvBXQoj/iGO4HwXe+BG8RIlEcosgxdctTlsYtMXW9oEo3z+bJhnxcWQyT1T1MpIMOQItU6Jo1OhSvQzEVBaLVYJeNyfni3xuz1CnAxKcnK1oUGEmV2kZ23XKZoO9IwkOTWTJlFJcKh2j2ghQMGdIuraTq16gToPp4gUEKsuGRcg9xH978zukGv8jivqXFOoTzOa+QaYZpWk/jOpzM5wI8djOfp44NEm1Vseq1wn7FXYOREHA+aUy//CeQTIlx792aq5ItuyEye4ejgOgjS+xd6SbyazBcLfK/k1JTs0VO6JpvmBc8zOUk61bDyHE14H9QHfLOvHbwH4hxJ04K8VJ4J8C2LZ9Wgjx1zjZhHXgV+VJR4lEcj1I8XWb0J5sARyfKfLgpiTD3UESIWfytX0gyvaBKAfPpkkEfRyZyneCV0GAsElrjsfKtqFYsQDB0elCywdlM7dc4Vxaw+9xMxQPonrvpk6WA5dMQm4LX8TAbigsVc/SaBqYVAkoNr1xP9niaf7Jjv+NA/P/D4vL3+Jvxp/CY51hjfg5Qn4vz7w1x6JWYfdgjBNlC4DnxhZ4ZGsvhlVvVSXViAY8HSP+ykywJc2J2pgvGGiVGomgs2LtnE68wv248tTi+5lsye7IHw9s2/7CVS7/2Tvc/7vA7964VySRSG4nrrdeSPJjRFsYlM06J2eLFAznhN+RqQJPH53rCC8ArVoD4aTLr+9WGelxYh26VIVYUGE4ESQaUPji3mFSUT9Bn4dda2P4PR5aDdcEvW7OzHpYG7wbt8vHA0P3o9cMNnXdh+pVUBSLQnWeSe040VCW1+df4r7kz/DRvi9g1mwytSOcNf+Qgu5MpYYTQeaWKyRCXr64dx1Rvw+tUke4HJ/X7rUxiq0ssisJ+jzO5E44hwe2D0TBpmO+D3mVjvn+1Fzxh64bkpMwiUQikbwbcvJ1m/D9s2mOzxQpm3V0s86Tb0wDML6ocf+GRCcDq5Meb4NWqdHX5ef4TJUn35jCsBrsHOgi2qrsmSkYFA2PM/myIeRTSAS9nbNhW/ujvHopy6ZUktDyQyQjZ+lyb6VaX2YguI2lyiUMK818sUBeH+NSrsIbl3Ikg2vptj/LtP0UpcYUY40/YF3lXxNU4lhNm219EZ55a45qrcGlbJnpvMHvfXsMgCNTec4vlQh63Xzz+ByZsomquJlbrvDlF84zvqiRKVU5dCFLyO+h3BJrZfOyaGuvLK+GnGxJJBKJ5HqR4us24cFNSR5s5X19+YXz/MbDox3vUnuNtjIDa8dgF1t6I84EyIZoUGGkJ9x5vO0DUZa0KocmshhWnemcwdxyxSnBFjalSo0j03mypRrZssnJ2SK2vZGAu4HH7aFpN0iqBmFvFxV7DsPKonh9NG2DatNLNBBiHb/IheqTVJuLvJz993xu4z8noQ4xnTeo1pr4FTcg0K0603mdgOKmJ+xjz3CcmbzOx7aksG0nEf/JN2f4/D1DjjhLlwGBQLClz3nvmVKVI9N5on4vxdZa8uB4+m21RFfWE92ISZcMapVIJJJbGym+bjOuzKlaOckZm9dAOL6mgl4jrZkcmcqjVWucT5cZ6Ql3kvOFgPPpEocn86xLhFiXCLGkVSlVa/g8bka6HfN70aiTKZm4BPgVN6I+REwdYN44Qr2xnoJ1FsEQpdokldoFXM0eCv4cSeVezEadQc8XmLGeRq9n+Nvz/4k7uz9Nwr2XgZifCxmdoXgUcOIoLmb1zns5s6hRNhvoZp1UxE+xYnFgPM2lbBnV62ZLb4RYUCERdMTV4UlHeI0kndfdfp9b+iLXFEI3KlBVBrVKJBLJrY30fN1mpDWTnYPOtEeI1ZOcRMjH/k3JziQsGfEx3B1kx0AXqYifI1MFYqrCaCpET9hHUa+RigQYjKuAjWHVyenVTvpkwbDQqhZejxu3WxBQ3PRGVQajCbYnPkY87GVd9A5EoxvFHkbUByjWp8kZGU4ufwutWqVkLdPr+RQqw2i1DC/P/x0X9W+zYzBMVPWimw2m8wajyRBrIj58HkGxYlG1GvR1Bfj8PUMMxlWshs1QQkX1eQh6PYwtFDk0kePIVIGxBY3RVKiT/wVOFthIMiRFkEQikUg+cOTk6zakvX607dUxCjnd7ASNFg2L755apGjUiPidvybnl0pEAwpCOL9Xq9aJ+D08d3qhddLQi0c4uWAFo8auoRiLWpV/81Nb+O1nTvHAxiRjC0X6ulTOL2m4XA9yOvMWfo9JLBAjb01Qq3ppes4iGgFMz6vE3HuoNwUh7iWgdLFYfYt58xX+y5sVRiIPAymKFYtvnpinJ+xjMqfz3GknK/P4bMHxf/nc9IS8dKkKQa8b3awDgqDXzfmlEvPLFfqifibSZY5M5pkvVtjSF2GkJ/y2WIklrcrYgtbxhLV/LgRvC2Z9P+tDGWchkUgktw9SfH0I+aA9P9f6hz1XdnK/VsYotHsg236n9iToyy+c5+N3pOgO+ciWzc5aTqvWGYqphPo87Bjo4sk3ZnjkjjWAU1/0/JklbBs2r4lQrFicnFtGCAFCEA96WW9tI+rt55J2hFRgI6K5SFCNMF0+QcVOE3Afx7IGCbj6CSnrCTTcLGinyLleo2ZX8Xo/isfdQ0/Yxx19UYbiQT61s48D42nOLBRRFQ+6WXe6IvUaulXnYs5gTdjf8oYZRAIKYFM0LB7d0QvQOXxwNT9cO5y2nZu28jNdyftZH8qgVolEIrl9kOLrQ8gH7flZ+Q/708dmO8b5RMi3asICl0VGO/+rPekpVx0T+uHJAtGAEzcBKjN5g7CqcDGtcymjkylV+ZMD54kGFIbiKrhsvnl8HsOqM9wdJBrw0hvxcz5dJuh1s39Tku+fA8vaR7b+Jl6RwC/ihEQToznFUmUaV1OnXF/EZjeCEAn3vRjiOIvGKTx5E59/I/ARFotVUhHHw1Wu1tjaG+Uf3jPo9DleyIGwSYUDzBUqqF4XxUqNSEChVK2xf1OSiXS5M916tz+THzaKQiKRSCQSKb5uN2yxalpz5VprbEGjoNeIqcrl7ke9xr7RbgB2r41dnoZ97xyRgJfda2Ps33j5VOHu4Rghn4eI34vqdfK1nj+9xInZZQKKB63qxDrolvPrXYMx+qIBcvrHODp/hrWxZcLeraSrPkw7xnLtPFbNwPZ66FO2E4+U0Sv7uKC9xoX6WaK+AoZV5x7/R0iX4Kk3pzkynWfzmghPvTEDwJHpPLpZJ1c22TUU4+j0Mk4mhtPAndNNEI5brS20Vh5GyOnmqumWM/mzyenmqhVkrmx2ojYSQd8PtT6UcRYSiURyayPF14eEm+X5cSZWlxmb11bFKKQ1s3MCsL1Wy+km8aCv0w+5UoQ8ut1ZMaY1k/2bkxy6kKMv6uf4TJF13QKjJbDmlg1oWfHLZp255Qr9LZ+V3bQJ+hVSkQCwlZC/xmLpB/SHNlKsdlGuNrGYIm2eRavqKMo2EuE6Wz0fYdp4nZJVxOV7E08wRl94M73BYXavdaqQfuPhUQ6Op1nSKp01I8DGVJitfRGeenOG7X3OShIEB8+mKeg1hICe8GXxlAj6yJWdEvKiYXVqi9p/RitXkMDbYjzeD9LjJZFIJLc2Unx9SLiRnp+Vwm7lNEYIKBi1TheiI0AcvvnWHAixarITUxVyZUdkgTMNanujJtIlJtJlMuUqfV1+pvOO2CoYNbDBr3gI+jyAE/+wayhGuVojHFAYiAcYTYZ5cSzNr31shMOTeeq1jzFvHcLrTuF1RZgsu7DdGYrmHPPVGrnKAEOxOCnvbsaN16AR4Nlzz7FnjUFRP8WDa3+CVy9meeKVSeYLBqlIgGLF4tWLOaKqwtqYynTOcMJVhaBoWMwXq2ztcyIozi85NUpt8Xtytth53ydni+R0s+OPg8trSJnRJZFIJJJ3Q4qv24ArhV17UmO3MiHOLzkTrU6oKk7Uwkrh0RaDB8fTqyZfjvAqM5pyfGRj80Veu5hn85owYHNspsDzZxYd/5ftrOkCihshoC8WQKvUmclViAW8IGyyZZP5QoVkNEDQ3E+2epFIYA6/so/l+lkCnouoaomZ3GkS1i6Eu8Jo124uLp+iWe7i1fnv47I2k9H/Hre1g+MzflSvGwSUqzXWRPwEvS7SpSrrfEFGeoLoZp2o6iWqKnSpCgW9tip24mrZaO0DByuvOaGzuU5WWK4VLitPLEokEolkJVJ8fQj5UXl+MqXLpxhHkiHSmklaMx0fU4t26OiSVuXAeJqHNieJqc6kqGhY9MUCZMomOd0ioTodkEGfwrmlEjFVIaC4AacGyGw0WZ8IkooEODSRRQjB86cXMawGlVqTrb0RjNoQpVIIwXGCYoSeaA+L1hEgw4T2Kt76HXi9WQKufpquPDTCLDdOEmzcwXD3OT6yqY+NPUMcmcw7tUgLRfZu6ObEbJHBuMqSZpKK+BhJhsjrZqeCaeV6NaebbOmNdD4DR0jZrKQtrtqibeWkTCKRSCSSlUjx9SHkRk5JVk5h0prJTN7goc2Xc7/aAaorPUwrJz8r/WGDcfVtQuPkbJE9w3G+cWyOT93Zz5GpAl/cN8yXXzjPYFxl70iCp96cRi16mFs2yLW8VkGvm6m8TrXWcGqDBLx6MYezuvSgKneTq7xCxQrhat6Hm+cJKkEytZN02xupu+bw0IUQFj4RYdmaZiJf4ehimGx1AdNch2bWCPkUZxUqbGJBhaDPTSSgdPxcbQ6Mp9kxGO2IrrbgvOzLE6vWt+0pYq5scnA8TcGorfqs5TpSIpFIJG2k+LrNWCmeUhG/c8qPtxvDr4xSaIuHVQJE2J2140qhsa0/yovjS50J3snZIktahbJZ5/ClnJOzFfETU70slqokggp9sQAhv8JgXOWlc2l6wn76hv3MF6tM53Tu6I+yqH2SU0unKFhzJMxPUKq9jEI3Wes8it2F120zlEixWLQYindRKFeouy+Sq7iZzF0k0NjDbMGkJ+xnbllnSatimA0Mq8FwIthZF7azv5aNWue9tn1e7QLyK99zm6ePzjkr3CtqiWRlkEQikUjaSPF1m7PS57WSlavP9s/bgq0tItoCZKUIEcIRahG/l7Rm0qU6pytHk2GES2DbfnJGzfFhAT63G8NqcGJ2GdsWlM0aBcOiUmuiWzUMs0GxWudipsyiVmV911aSXSM8efx7PNj/aY4svUwdBc0q0WgWaAoVRI16I4BVt9HNBl7POX5qxx5ev3iKu2PbuW/dIE+8MkkqHGDHligFo0ahYlEwahyeyrNnbZxY0PF+JSM+xhY09m9KcnA83VnFAh1/19VEmBRaEolEIrkWUnzd5lxLJLxX8XDlerJ9SnD32hgA0zmD+zckGO4JMtkqvn7kjjWdyAeEzWgywvmlEqmon1cv5CibNbpDgO1lUTPxeQQTmTJetwvV68Kuhwg0dpEpn0apb8ct5hH2Kfwemwu5GUzTjy2q+F1xXrkwT1xVmckewd1McnT5+0wWRilV41zK6gzGVYoVC2zYPRxnJq8zu2zw+K5RTs4WSUX8HJrIAaxK/L+QKbOhx/F3LWnVzqpxtuC8r4l0GSGgK6B0AmtlZZBEIpFIQIovCVcXWktalbF5bZUP6kpBEVOVjkG/LShWGs7b07N2cOt8oULIrzCxVEb1ugkFFPasTTCSDHF8psClTJk1ER/ruhMcnc6TivgYX9Qom01CPmeCZlgN8kaNgViITamHWQyPYxFFUQY5nXsZmxAXcrPYrjpWU+B2lYkGttAQZSYyYNVc5PXTNJsebO7npXOAbbNzqIvtA1EmMiWeOTbXEUoHx9OMLWjEziokgr5ODtjYfJENPZdN+e01Y3vteOUa91rxIdILJpFIJLcfUnxJrsqV8RTAqglXWnMM6iPJELlW12MseFmgnJgpsmMgymA8QCLoo6DX2DvazYmZZXYPx9k7kiBTMjk8WWiZ3S3Muo3P40LVKuT0GjsGuyibdU7OaayJ+Hnsrj5OzBRZKlaoWA2wBR8dvpvz6Tl01zgJ1z7mrIOongTVWpVqLc2aUA8TxTd4IPIJakwx0LWFvrjg6KUahut1tvZ+kkrNhVapt0rFBWa9SU43mczo7B6O86mdfYAjPveOJEhF/MRa69R3y2NbeVjhakJLesEkEonk9kOKL8n7ZqUwA1ZFKhwcT7N/c7JjTH/i5UtcyJRba0aVMwslymaDmKogWjU8kzkdv+Khv0vhxJyG2Wjgdbt45tgcBaNGuVqjElB45tgclVoDgFK1xsVsg5xuIoSfaOAuzPpBHhj4DM+MfYuA14vX5aVUy+JpBPnm+b9nXeDjXFg+Taa0mUI1g8eT4vlLz7Ot505Ms4slrUpOt1gT8XNipsilbJl1PUHircT/XNlc5flqT/3yrQaAXNnsBNG2J39j8xqJ0OXGACm0JBKJRCLFl+RduVbuWFtQrKS9pmyLjKjqZUNPiJFkiPNLZQKKm619ERIhHwfOLgGwVKySKVUpGhYAVt3GqjdQfW5Ur4f+mJ9U2E8k4EybtEqdVys5oq3v/R4XZg1GI/vJLo+T8u5DCZyhUi+imwqmPY9ZVxjTvku3+37yzTEUsZ5a06CvK0ZVXGBe9/DFuz/hmO4n8zy0OUlkSmFz60BCWjPpDvvoCfs668X2FGzlihVWT8MOTeRIhHyd6ia4dpWUEM5JUYlEIpHc2kjxJXlX3o8pPxZUVomLWFDhwPgSICibddZ1B/nuqUXuWx9nKB7kM3f1c3K2yFdfvsgviImCAQAAIABJREFUfWQ9RybzPLqjl99+5jS/+/iOzgpzMB4gpnoBx/h+Zr5IQHGxrjtIuVqnryvQKrTeh3Y0zKM713G2cJgTi2fxeTYyW5yn1miQrrzEoHoX0cgc3coWlitlesIJGu4iJfE696x/iMOTeafTsnx5UtWeYK0UTe2fteM6croJdssv1/K5jS1ozOQNDoynifg9nbqmq7UHrGwOkEgkEsmty3WJLyHEZ4HfAbYA99i2ffgq9wwCXwPWAE3gK7Zt/9H1PK/kw8OV2V+JoCNQ2kKkYNTYMdBFIuSs5V69kCMR9IINy7rFE69MEg0oVGpNcmWTklknFfGTaHmqsCHi94Bw1psHz6Y5cHaJar0JQnApa1AwTPRanblChY3JMD2hFP5GDHetTMRtkzfPk1KHyFYyuF0W2cZRQvYdGGKcfYP7iKlejk07U7cXLz2Hy+0Iwsmc3vKBQdGwmMwZaJUakYCHLtXL00fnOp2QIZ/zPyUhcESg7aTdFys1ogHF8cZd0Qd5ZW2RRCKRSG4PXNf5+08BPwO89A731IF/adv2FuA+4FeFEFuv83klHyJSET/bB6KdCc72gSj7NyXZvznJSDJEwah1SrzLZp3RVBitWuf47DJaxRE9922IA3AxU+bg2TSjvWGePjrHidki0aDCTK7CydkiBd0i4veyMRWiO+RlXXeQ/RuTpMIBNqbCfOrOfvqjKolgkM9s/jQjkXvoDdxJumRh16OonjhWzcWp7DGmihc4uvgqOcPEJTw0mypdqpeNQ3Mo/gWiAS97RxIgbM63/F2DcRWtUmdZtxhNhdg97LzudkvAQExlS2+E/ZuTbB+IMr9c6Zx+bBeUt0lrJkKs7ss8OVtshdJKYSaRSCS3Ktc1+bJtewxAtJ3TV79nAVhofV0SQowB/cCZ63luyYeDd4tKaJdQb+uP0hP2ATZjCyXnBOE4RAIKsaAz5dq/OUnBqLGlN0JBr7VOFKqMzRXRrQYHzi5xKaOzXKnRFVCYzhu8djHHQCyAWbcpm3WOTBXQrQYXs2XWJ4JUjA3s6x0i4gtiioucmLdQlRTVRoG8Oc2hSYNjM4sMBe/lq6+cZG10mKqdYbnyFpcyVWbyewFBKuJzssgifnYMRJnM6RyezAOQKVV58o1pwJl8HZpw1q1ONZHd8YNdzTu3rT/aWT1eK45CIpFIJLcWN9XzJYQYBu4CXn+He74EfAlgaGjoprwuyQ9P+wRfW4QlI77O1GZsQSMR9BELKp3JzmgqzEvnMh0PlFapcWgi2yneLhoWYwsaAN1hnyPG+qJOECqCglGgP6Z2eq0H4yqjyTAhv5tLGb3zuibSeqvGyEfFDNIjfgLTF6DLW6fpziCqXnxKFr2Wp+GuMZavs63nXtYkSqiuUboCy3SHayxWD/HA2v34PWpHECZCPrb0RTo+MGwY7g4CznRv70iCsQWNtGbS1xXoGPbbn82VZvt2U4BEIpFIbg/ede0ohHhBCHHqKv899n6eSAgRAv4W+Oe2bWvXus+27a/Ytr3Htu09PT097+cpJD9CVlYQtQVZIujrrNvaa8lt/VEe3JTkoc1JhnscwdLXpRJTvRSMGufTZSazOrGgQk/YCXKNBxW0Sp3hbpWNqXBHeA0lVGxAN+tEfErndOS67hAhv5vt/VFUr4dP7eyjPx5hvfoo3d5dDEfXY1gN1oR6WRNKolkltMYkZfs4JWuBM+kJFgpe6nUfE0saf/nWt/n+xDjFisWJuWUm0mUyJZNDF7KduInJnE7BqHVObBZ059RnNOAcEmib8tsr2vZEMKebjCRDHZ+cXDdKJBLJrc+7Tr5s2374ep9ECKHgCK+/tG3776738SQ/Wt5pepOK+JnIlN62Pmsn5idCProCCkem8miVOkJANKCgej3sHUkwkzcYTgQ7xvSxBQ0bR2gV9Bq6WSfo8zBdMJhYLBPweejvCnB8dpmxRY0tayKcWdDIlC2mCzpVq8mfHDgPCIYSAaJiD9lcEr8oUq5oZKtVGlYCl6vAufw5cpVlFLuPxeJOAorCUHQTp9JnSATPUStmeHjDRynoFueXyuimkzn22mSOhOpjz3CM4e5g57NJRnwcmSp0VopXrmfbRd7w7mGtEolEIrl1uOFrR+EYwv4MGLNt+z/e6OeT3HjaIatLWrVTLh0LKhyayFGsWByfWQbb8QHmypeFSLsb8eRskS19Eb5zaoGD42lKlRpzywa//cxpiobFpUyZgtHyfAmYzBp0qQrFisWe4QRji0XuW9dNRrPoCXsJej0YLVFWMCxiqpeekDNx8ntdDMWCYNuEvAr9XSp+fR0p9ZfwxL5B3U7y4oUjrOvayvn8WcxmAb1RIO4SeJpbObZwkp0999NkjHPpeZri29zV8xAel4LjX9NIqD5GkyFiQW8n2b89zZovGFedZrXN9rZ90/7YJBKJRPIh4XqjJh4H/hjoAb4thHjLtu1HhBB9wH+zbfuTwD7gF4CTQoi3Wr/1t2zbfvZ6nlvyo+fKLsf2tOrLL5zn8V39bzOQX5mR9ei2XqJ+LyPJEEem8nxx3zoOjqc5NJElpirOGq/iTJkMq05P2M/x2WVnAlapE/Z7mCtUyJScx928JszccpV13SEWtSqPbO0F6AjDwUSAo9OOST7gVbG1z3Oy8FVSvq1MF8fo8Y9giYvUGwqTpRN0+wzc9joyteNsj+zFUF/HsBosWq8xFLwTEOit05vzywa7h+PsGIiyf3OSk7NFhKDj+QI4eDZNIuhDiMvp+O16pnZQq0zAl0gkkluf6z3t+DTw9FWuzwOfbH39Mq34S8mtR9sofiFT7ggKgKePzjGTNzrVO21Ozha5kCm3+hxrnXLu84slDo6nKRg1Qn6l8zdGq9TYMxxv1RNB2B/C7rbBFswVqyRCXvxeNwGPm7nlCn6vmx0DUcpmjZmCQcTnQQiYLhhkSlVy5Rr9MT9prcpQXOUf3fHPOJb5Lpbo4nTuDfpDw4wtTRHxhKiIKZb1IrgKxFSFX9j1Cb51+iRgMKO/Rbmpctea7UQDCtFA1PF1CTg1V+x8Fu0oiiNTeaIBp/vSbmWATaTLq/oir0SWbkskEsmtiUy4l1wXbXFw/4bLAuKJly/x+K7+t4mH9iTsykT3LX0RtGrNOTkooFjxdDKxDk9WWdJMHJe9wLDq7ByMoVUdY3t/LEDQq6CbdQpGzVkxtoJOBXZH/NzRGyHsV1jUqmRKJj1hP+u6Q0R8Hny1fdy7fiOpSICji2+QCMSxbRtX003FXqSCIGv5+PuxOr3qNnYm7+DvTh0gX81RdlWYm99GJOAlpkY7PZc9Yd8q7xcIRpLhTiXTRLrcEWDt052ydFsikUhuD6T4knwgrBQJ0VYN0NWEw6m54iqfU3tCFA0oHVH2tD7H9oEoS1qVyayBVq2xVKyCgHXdIeaXnSlY2axhmApBr5MT1h/zg213csKKFSfctSfsTJuiAYX713fz/JlFHtmWIhbwOgcAgl5GkiNEF7uZX7bIlY6zWNIJe8N4XQqaVeDQ1AnWdi3zkWGdJf1e4u49BBNvYWMzXjzIJ5OfIBHyrXp/ubLJZE5Hq9RZKlUZTqid993ONts7knhbP6ZEIpFIbm2k+JJ84IymQle93p76tEXWwfF0R4TY9uVJWLFicXK2SE43HcEi4PlilY9vSbFcqbGsW8wXK+wajBEKeLiU0VnUqty/vpulUoVDEzlm8joRv8L5pfYq1GYmb7CkVZznMGoUjTrgTO3GFjTMSoIdXZ+jWg0zXziA5SkhCBD1uyjZUG7M8t8nipzLztIwNvELuz7Ns2e/x/xyhQOTLxIP78WoxBlJhlonHfMMJ4JM5gwG4yonZos8tDlJMuLrfBbtaI6VeWlXK92WfjCJRCK5dZDiS/KBs63/6rEJbaHRpn36EZwJWPvrto8sVzY5NJHlU3f2M5oKUzAsDk8WWBP109cVQKvUeWhTknJ1jsfu6gfgmWNlZvIGZbNB2Wxw8Fwav+Lmjr4IAzGVo9MFEiEvIBjuVukOOc9V0GvMFytgh/GYDxATdWzXm+QqabqsOB430HSTrSwR9NosFXL84SsZ1qmfYG0kwbJxkT/8/gsMdXXzf4x8FoD55SrRgBetUkOr1FjSquR0c9X7a4ur9gQwGfGtWsvKCAqJRCK59ZDiS3LDudY0J69fFh8rr7enQomQj5DfWUdOZEo8ftcAWrVOxK8wtqC16nsgU7LoDjmrxQc2JhlNhfj669PkdIvH7hzg8GQe24bDUznMRoP1iRBapcZkVmcyq4PtrEozJZNFzcS2/SQ8H8HrDWPUXqBGCS8RhGgSD0SwhUWVeYJhN329L9EsfYyHh0Y5lT1EyA9/9PKT3JXcz5a+MDFV4fBklaDPw93r4p3i8WTESclf6f+C1WG1EolEIrk1keJLcsNp54LBtac5ubLZ8XmNzWucmC0yGFcpm3WeePkSr03mKBp1tEqNiN8x2M8UDEZTIdZ1q9h2O1PMxrYh6PNgWHVm8gapqJ/BmPNYUb/CxWyZPcPxTlVQTjdJBH3MFgx6wn7AZqlYYXfyYbSpBsI+ybI1ja8eoNYsU2t00WwINCvHa7OHsOsX2Tr4q/z6vs/x/53+Btv7u1g2jlAorGWkZ5Q9w3GKFYvpnMFIMrRqMrhSZF35ucjKoRuHEOKrwE8Dadu2t7WuxYGngGFgEvicbduFVlbhH+Gc4DaAL9q2ffRH8bolEsmtwbvWC0kkN4NEaEXvoXA6G2fyBiGfh+HuIPetS7BnONa5f3RNiKVila+/Pk3E78RVTOYMXjqXYSJdRuAIsDMLGmfmi8zkdfqiAYZiKmtagmdLX4RkxEdBrzGRLjMQU9k7kmDvhm48LsGdQ3F+ec9n+ZW7H2dbcicuV5OeUIRwwMTvtXELD/WGjWHP8uTpPyZXvcj+oUcZ7hqmS/WyWD2FrUwRCyo8ur2XwbgjEq8MXb2WyFopzGTt0AfOE8BPXnHtN4Hv2bY9Cnyv9T3Ao8Bo678vAX96k16jRCK5RZGTL8lNY0mrXlNotA3lKydkMVXhxGwRhNOR2DbPFys1ogEvX7h3iGzJyQt7fJfj+XriFXh8Vz9PH3VOFHaHfHz9tSkG40FGkiG08TQIQbFScyIeWplbOd3kxMwyo6kUPWEfibCv08u4e+gRioaXiumi7prC7XYjhE61odMbSeJCkC4v8uU3vsxA4D7+94d/id5wLydnv8Px+fOMLRwlpj7WyTS7MtsrFfGTKZnvmOslYyc+WGzbfkkIMXzF5ceA/a2v/wI4CPzr1vWv2bZtA68JIbqEEL22bS/cnFcrkUhuNaT4ktwU2lOtaxnIrxQWubLJlj7H07V/U7Kzrjw4nqY77OP8Uhnbhsmcwfl0CWjHN9icnC0yNu/4xz51Zz9Bv4dixWIiXWZJqzorx6ATeNouvN6/KclkVu887uY1jl9rbKHIcMJk78Bemo0AR9LPMafNYtsVikaDYvUSQVc/QW+Yt2bmOFh5krO5c/zP9/8r7un7GGOFHyAEfPvctxgO38v2vhQT6fLbvF22LQXWh4BUW1DZtr0ghEi2rvcDMyvum21dk+JLIpH8UEjxJbkpvO8sK3F103ki5GNbf5SesDMpOzCeZs9wjMfvckJdT8w4omtrf5TpnM5Euky2ZPGpnc5krGhYFA2rEwILdATYcHcQbMd7dWA8wP7NSQoVywl/BQaCG1n02ExU/xa/y0tN5KlYgqrrAs3mEHcNjnJq6Rx11yW+dubfsT3yi/z63s/zyvQrHJud4Y35l5jTNvGTm3d0Oi/h2ub6qx1UaIvS9yrSZEr+B8LVGjqu2sophPgSzmqSoaGhG/maJBLJjzFSfEluKG0B0T7R915zq9oJ9+172uvKZOSyN6wtTGZyBk8fnSOmKkQCHibSZV46l2Fna8oW8Lo5cHaJiE+hK+hlWbd4+uhc68RkmMNTeU7MFCmbNabzFZ55aw6AJ165BDbkVZO8bvHapTxbezfQ1/VP+Ltzf47P5aMnvkytGWCuOMNY1mRb9z1cKp5itnCBQ/V/y5bBf8W+oX3oxim06jEK1Qu8uVDk7t6Pkoz4GFvQODSR67zviXSZmKp0BNaVBxVOzhY7196LsJLTtPfFUnudKIToBdKt67PA4Ir7BoD5qz2AbdtfAb4CsGfPHlmbLpFIrooUX5IbxsrJTbtKpx1Aeq0uw5WTnnYR9cr720GkOd2koNcomzVCPmXV4+wdSXSec/tAlKJhMdwTJBF0MrQOnk07JeBHnXtiQS8CiAd9Tt6WsCnqNb64b92qx40FHQ9YQVf5nxL/gr8Z/1OS0TiLWoawz4PVLPPm0ov81MhnuVR8i4ye5XcO/J/sH3yUu9d8kofXP8wLF19Ar5U5OP0dPrPlk+zflFz1vt9PrtdKYSUnXB8I3wB+Efj91q/PrLj+a0KIJ4F7gaL0e0kkkutBii/JDePKyU1bDL3X+9ti6Z3uo3Xgv71GPDFbbE2SbA6MpzkylQcBk1mDgu7UDRX0GgfH08zkjVYga50jUwUe3NhDJKBwfqnUEXkrBY0AjrfWmjsGY+yK/2NOl76G1x1lfXeM4/OXCHgE/33qr/j1e36F74y/QbaywNPjz/DSxQk2hh4h6NnJ8fIP6I34+A/pv+Yzd+ynUPIzkgyvWkWupC0221PD9q8r779SiMmU/HdGCPF1HHN9txBiFvhtHNH110KIXwamgc+2bn8WJ2ZiAidq4h/f9BcskUhuKaT4ktw0PsjcqrbAKBoWUdXbERiD8UAnsHTvSDdj8xqTWZ2oqnSmb8VKjZiqMBhXiQUVTswU8Xpc7BiIMpnTSUX8RAKet5ni40Efg/EAo6kw2ZLJtr5uPt3zv/Jfjv17Qj6FmG+QbrVM3szy52/9OXtSH2ekp498dY5TC2Oc0dM8tvFn+b2f/VX+/uTrzJQuUWqOcbHoZe/Igx3v2ZWsFJvtaSA4/reD42knq+wKD9m75ard7ti2/YVr/OgnrnKvDfzqjX1FEonkdkKKL8lN4b1OXdqiKld2Eu6vNbVpCwwhHJ9UruxEToBgIl1mbEGjr8sPCKKqtyO8AB7dvoZMyeSZt+ZQvR7mliuUzTr/9aWLWPUGaxNO7VA0UEa0rNZpzeTIVAGtalGs1Dh4NuOk10+5ids/z/fP/ilm3SIVCdHj62aqNMYLk99mfXQrDw7fw2S2QVpf4KkzX6PSzOA278arbObVC2+RLZv80cvz7E49/K7rw5XTwINn0xSMGomQ7x0/K4lEIpF8uJDiS3JTeK9i4P1ObWwbNvSEVvUh5nSTvqifaMBLTHX8YBPpcideot0xeedQjIhfwTiXAWweu3OAYsXi/FKZLb3RzipzbF4jEfIRDSgcnymwc7CLXWu7GIwFGVvQCPk8/Ns7focnTvxnvN4KBb3GAwOfYGz5JcbTp5ksLLAp8hCWx8Nc6SLPTjzDYHCWXuUjfGLLJ3jq5DfJli2O8D383o8yFOu+poBaOT1MBH0dMXatz0qm5EskEsmHD5lwL/mx52oCY/dwnJFkiIJR6+SFYV8us55Il9m9Nsbju/p5YGMPZt1mNBVi99o4Qa8bcITc2ILGZE4HYGxBQ/V60Cr1lvC6vOrc0hvhsQ3/lDv71uFXXFxYvshDg5+hL9JHuabxZvo5It41DIa243NFGM+/zmuZJ3H5z/LoyE9zZ98gvV1+8vW3CKiZjufsSlIRP6fmih2R2X6d7Qyzq90vkUgkkg8XcvIl+dByranNlYbyduyEEHAhU+bM/OXS7cOTeRA2o6kwPWEff/bSRT51Zz+xoML5pbKTmi9sfB7B4ck8w4kgW/oizOR1RpIhJrMGE+ky0YCXkM8Dts1SqUrZrBPye4j4FYqVGocmcswWdPZv+nmms08wV57ixYuvkxAPYYeOka1OcTr/A3ysY3t4iIA7yNncRX73e18n6FrHT4/8DIrQGFs4DRxnanmKpHfPVcWTbbNq0rd9ICpXjRKJRPJjhJx8ST60XEtMpCJ+tg9EOwKk/fW2/iifuau/EzUB8PE7UmALbBsyJROE6Py+vSMJx5xvCx67s59owEsi5GPvSDdHpwsARAMKu9c6ifjlag2EYM/aOFt6I+zo7wJg91pnyjYQU9k+EOX3H/1nbOu5g52DXcTjs/QGdrI2eB9eRWArk1xcPk1JD7M2tBPFl8cXmObFmf+XXWujPL71J+lSvRg1g4PT38Gsm++p11EKL4lEIvnxQU6+JLcEK6dhiaBTlg2ATcf35XRDOvVDJ2aKbOl1irWdE5B1dq91irvHFjQWWwb7aEBhJm8AKn2xwP/f3p3HV1XfCR//fLPvK9kg7EtAAiJEBaoIIlVZtFodddqpduroTBc7nek8jz7aatdpO/P0mVrtTFutbW2rtrVUA26gIqgIkhAgIWSBBLLfEJLcrDfb7/njnns5CVnJcgN8369XXrn33HPP+d6Tm+R7f8v3R3Sou6UrJiyQ0jr3ckTOti4ASk43ExsWxKKpUWycdwcFzh186MriZEcxa+YsYUvYIp498CLT4qC1oxg65nF5wnUcqjlAi6uUH+z+GTPCrmBx/DWUtOwlNNDwi/1bCSeNufHTiAs/2xLoGVwv/dVeV0opNalp8qUmvcFmAHq6JvsO1J+fFOFddDs2LJCsk2e8SRJAVOjZwqyr58XzYXEdxY4mGtu6iA4NZFFyJM62Tpxt7kKuq+fFk1/ptBaaEeYmRHif71mAe3pcGPERwTicLo7XNpGWsIGKSBfFAR9xrLaQObEzWJV8Kw3yAW2d9dR1HqWmGdbNuo6D1QeJDG3F4TrEkgjDIyv/hp0FeUhgNaV1BVS3Obku7Trv69PyEUopdeHSbkc16Q22LuRASVn6tGjWLkxkflIEpXWtONu6iAoN4NSZNt495gBjyK908vqRasCzKDc426wWM2s5v2ZXFy2ubpKiQli7MJG1aYnEhgd6uzpnTQkHoLGtk7L6Fu/5G1rdx7l+1mbSE1YQGuxPVWsF3X6NrEi6iVnRi4kICSSnOo93SnYxI3I+s2MWUe4s53j9cb636z+pqO8kLmApAIcqS/jphy9S2XD2HP0ZThelUkop39KWL3XRsQ/UT58WjbGvsGfgvmtmc6S8ERE4XN6Iw+nyFi71FGCtdrbz99fMZleBAzC9Wt/ibd1/noH9+VVOduQ1eVukih3NttsbCIpIYF/FPoxpwkgTKaHzqQ8Ip9nvIE0dDew59Q4zIxezPHEtDe35RAVHkXNmK11+K0gOXgUxe2lq7+Tlo5nMicwYcIC9ruWolFKTnyZfalIazRI5fZfZ8RRs9RRZza1o9N6eHhdGXbOLw+WNLJ0ezYqZcQAEBwpZJ+sxBhalRHtnVCZGBfdK7jzncjhdtHZ2eeO0xywCGcnrMRjyHHmcaiwlLngGqTFTmB5zI9k1e3Dh5Lgzh4DgBq5MuYa82myCA8HhyqO2rYZNc+/gREMhXZzhRNMBesoa2bJ4xaiucX90jUillBp/mnypSWkslsjpewz7LMjTzS7voPz4iGCmx7mr2hfVuIuxLkiMpKimCXB3PYK7a9KeeNU423n9SBVFjiaSIkNp6+jhxf2nCA8OICLYn3mJEdS1uIgNC8ThdLF5wWYAursLaeuuZErkdE7UNrMkfg0dfiWcaCzgxJky6ttf4ZOzbyEspJVTzlM0d1bz3OEnWT31VqZFLaahLYfSxiLeOl7HhjkbcDS5xmwtR205U0qp8TeqMV8icqeI5IlIj4hkDLGvv4gcFJFtozmnUufL3koVHx7MvMQI8qucAMxPiiB9WjTzEiNYlBLFopRoNlyWRMasOCKCA4gNC2RRSpS3On5uRSNJUSGsmBlHxsx41i1M5LKUKB66YT7/Z9MipseFsyQ1mvjw4F7dnpsXbCYqcBozY2ZS0lhEclQogUFNbFy4mk9MW09ESADhwYbXT7xMaGAosQHz8DPh1LW089zB53nqg0xOn57PcUczuwoq+fd3fkd7V3u/pTc0iVJKqclptAPuc4Hbgd3D2PerQP4oz6cuQWOxRI59VqQ9UZkaE+KtEWbfb15iBGsXJgKwdHo08RG9W5EOlJwBoK7FRdmZVrJOuu+/fqTaO56sxtlOVukZDlstUUfKG9lV4CA9bh1J4UnMjppPS88pEsNjOVxVSGxoPPcu/RyRQZH0GMMrBa9Q1VLB5SmLWJqcRpC/HwnxDvIaXiEj+RMsm57AktQYDtfuocJZ0ev1DmfgvWefGmc7R8obvS1mnts6eF8ppcbHqJIvY0y+MaZgqP1EJBXYBDwzmvOpS9NIW3BqnO3nJA4DHcMzW9G+n2dsF7hrhE2JCKauxeVNSuqaXbx5tIpH/3KED4tOA3CorIGS08042zpIjArGYPiwuA5nu7vLMjOngncLHBwpb6S+tZO600soqTW0tUzl48rDVNQFs68sh9K6JlZPvY15sYtobOti5/F3+V32a/ibSJYnr6DNFURTZx1vlv2ShLAkFk5ZCEB2VTb7K/Z74+47Q7S/RMqzz0BFa7XlTCmlxsdElZr4L+B/AT1D7SgiD4jIARE5UFtbO/6RqYuOZ3A89J90eFp66lrc3Y/9tfR411YUd3HW+PBgimubePeYgw+P17FqToK7SzIkkJaOLtYsSGTNgkSiQoNwOF3EhgZ5y1dMj3MXaJ0eG8YSq2vz5iXJfGX13WxcMovVM1bQFXCST6VncLrjKAH+baSELGfV1LUkREZQ3VrBq4V/xtHUytSw2SxLSQMDP9v3O94s3M01M65xv67mGvZX7aCrp+uc1zzU9VBKKTVxhky+RGSniOT283XrcE4gIpsBhzEmazj7G2N+YYzJMMZkJCQkDOcpSg2ovxphnpaetWnubkXP2oj5Vc5eXW8Op4tFKVHuJYiA1XOnsG5hore8hKdyfnO7e+B+Y2sHRTVNHK9tpr61E4w78cqvbKSyoZ3G1g7vrMsPi+uSLZoHAAAgAElEQVTIOnmGWeFrqHV2kz5lOW8V7yOgew45NVlEhrlYMzedT874WyKDg4kK86O4dTspcd2kxiTypVV/Q2x4IDVtpTyT/QyrUlfR0NpBaV0L//3Rn3G6GvpNKj2v0f46Pyyu8+4zFl28SimlBjfkbEdjzA2jPMcngFtEZCMQAkSJyO+MMZ8d5XGV8qpxtpNf6XQnPZZiRzONrR3DLk+RX+lkSWo0R8obSYwK7tWC5ilN4Sk18dL+VtYuTGTR1Chqm1zexa6f3FnEp66Y5i3ZsPVgubUsURDzEiModjR7W8Q8xVoTo+7mj7l/ZcvCNWw7toeb5q5ia+4eimrmc6K2i+unPsQ7Fc/S2NHGM1m/Z2HM1QDcmXYfb5zYSk2Tg+/v/r985vI7AKhsqiS7Zi9XTF1EdMAs72s4Ut5IfUund+KAfRap5/poV6NSSo2/cS81YYx5BHgEQETWAl/XxEuNNXtZiV0FDupbOr0tVvYaXX2TC3tLjz1x669Mhf250+NDvfsBfFhcB0BUaABHyt11xOYnuRftnhUfTnxEMFkn63G2dRIb7p4FWexo9g7OjzRXU1q3j/SE5ewuOczy5BWcas4lY/ZsurrK+I9P/pDXT/6SgtMFVDdnUeLspruni39bcz87ju+gsK6Qvx77K7NjZnPjvBsprdtDvesUTZ2VXJG4ljdya1gxM5Z5iRE4nC7yq5yUnm71vp7RlKdQSik1MqNKvkTkNuCnQAKwXURyjDE3ishU4BljzMaxCFKpkYgPDyY+PNjbijVUjbC+hVHrml3ebriBWoRWz53S+76VnNW1uLznS58WTUJksLeVacXMWETAGHdLmic5PN3kIjo0kPuW381PP3yR5SnpHHUcZ2bkEvLqDnKmIY5M3uaLq/6NV4p+y+6Tuyk4U8CphnriIntYPX01K6au4IUjL1DSUMKvDv6KLfP+lrLmo3T1dPFx9U5CAhedcz1qUtrPaQFTSik1/kY723GrMSbVGBNsjEkyxtxoba/sL/EyxuwyxmwezTmVGkrfKvQjFR/Re8Zgf8eyJ2OewqQ1znbqWzrPGTfmSeTOtLhIn+aeSehJvJakustYzEuMBGDtjJuJCQti9axFhIe1sjj+CiSwmvioVg46dvHFK7/IPUvuITUylebO02wv3M6rBa/S0tHCw9c8TFxoHB3dHbxc8GviQuMID3LP5jzRvJdyZ/mAr0EppdTE0Qr36qJjTyqGSsLs3Yv29RihdykGGHjpnbrms/t5WsD6a03yjBvzxOUZ/O5pBXPfbmL1vA3sr9pBsMRS21nHtTNXUus6Skl9F9sKt3FL2i3MjZ3Lb3J+Q0lDCW8UvcGZ1jPUNNfwtVVfY2v+VrKrsnk5bxthAVO4KuU6IkNa2Jr7Pn4mksSo9SO6RkoppcaWJl/qojaS1p3Y8MBB15S0L71j36++tbPXfsOJo7bp7Dk8A/HnJUYQGxZEUlQIV7GBn7z/IhHBobi62kkIvoyjNTnUNDUAsHH+Rh659hF+vPfHFNUV8d7J9+jq6aLR1cjd6XdzRcoVPJv9LNDAx45XWJl0Oz0B5UAP+6t2cHPEzQT4BYz4GimllBq9iarzpdSk55kFOJyCo/3tZx+s7knCcisa2ZpdwdZsdwV6z+2imibWpiX2qqjv6YL0HP+epbexJDWGkMBQUmOD2Zj2CYKDYH/FfrYXbicqOIon1j7BkqQlpMWn8UHZB3xc+TFP7X+KpPAkHlvzGAlh7nItrxT/gWD/s4nh60WvU9daN16XUiml1CC05UspS38tQAO1hHkGztu3Fzuaz5kVmT7t7NJFW7MrenVLgrtrs67lbCmIuhaXN1GLDQtkVsQa9h7fSkxoIFGhhmVJy8irzePjyo/pMT3cPP9mvnHdN3g2+1miQ6LJqc6hydXE9/d8n4eufoiHVj7EzhM7ea3gbfac2kN8aDzXzLyGqqYqPiz7kDmxc1icuHhsL6RSSqlBafKl1AA8LVn2khP9lWKwz3C0L97dd7/Gtg4+LK7zDra3l6TwJGhHyhu9xV8948YSo+5mf9UO73HSE9M5dvoYWVVZdJtuNs7fyBeWf4E9J/cQEhBCdlU29W31PLnvSe647A5umHMD6QnpPP3x09S11fHKsVe4fdHtlDvLOVF/gpKGEjbN34SIjMNVVEop1Zd2O6pLwvksodNfS5i9FcyzhmTfGY6eFqy+MmbFERsWSGJUsHfw/bzECIxh0IWsk6JC2JK2xXu/obWDVamriAuNI6c6xzvb8dqZ1/LAigfImJpBcEAw7518jz/m/pGXj75McmQyT6x9guSIZAD+kv8XOrvddc2MMWwr3EZLR8uIr5FSSqmR0+RLXRI8JR+GSsIGe7zvYHpP69bqefEsSY32znoEd62xXdZC2rkV7oTMGPfg/L4lLOzjyuzn6Hs+TwLW0NZJfXs962evJyE8gVxHLi/nv4zT5WRmzEweufYR5sXNY0niEnaf2s2+in18d/d3ERG+dNWX2LRgEwAHqw+S68glJMCdZL5T8g6nGk8Nen2UUkqNniZf6pJhXy5osH368izEbV+mx9665Wkhi48I7jUI31Po1VPbyz44v+/YsP7097i9Bexk40m2LNhCSmQKRXVFvJT7EvVt9YQFhvGd67/D1MiprJ6+mr1le6luqubxdx+nvq2elakr+dfV/wpAa2cru0/uJjLIXWfsUPUh3j/1/qBxKaWUGh1NvtRFy5M0eboEix3NFDuaR9wF6ZnZmBgVfE7rln3x6oHKTNjjaGzrZNcxh7clrr/WtKGOsXbGzZTWtVBa18L7pdncsegOUqNTOdV4iucPPc/p1tMAPLrmUa6adhVrZq7h2OljlDSU8OO9P+Zw9WFiQmL49rpvMzNmJgBvl7ztfV59Wz2ZBZnebkmllFJjS5MvddHydOPVtbh495jDu/3D4jp2HXN4k7C+SZo9obJzOF3ntG7Zuww9Ve49SxR5juVZV9L9HOM9hn0w/3Bei/28X1l9NzGhgcSEBbGvYh/3LL6HmTEzqW2t5ZdZv6S6uRqAT1/2ae5cfCerpq+irbONrMos/nT0T/wx748YDPcvv587F98JwIn6E+yv2E97l/t1v1H8hjchU0opNXZ0tqO6qHkSnPjwsy1MfSvP953RONg6hyOpmN/fsaJDg855zmCFXT0JXX9J2rKEGyht2Q3Aeyff47NLPsvPD/yW021lPL3/aR5c8SCp0aksS15GIHG8ePSXVDZVsvvkbrp7umntbOXTiz7N0qSlzIudx48++BHdppvDNYdZnrKcAL8A9pbtZWbMTJYmLR30dSullBo+bflSl4TzXUKnb6uYw+kaspux7/NrnO3sOuZga3YFjW0dFDua2Zpdwa4ChzexGqywa9+uSPt57WPA/pS7neum3cH8+PkA/Dzr55w4cwKAnq5oHlvzGNOjp3N58uV8VPERh6oP8fzh5ymqKyIsKIwn1j1BemI6ANlV2d7nnmw4SWZBJj2m57yuoVJKqd605UtdEobbvdc3oRpJq1h/x3I4Xb0SKU8SN5Lj2HlayeyD/2eFryGndicNbZ3sKX+LL6/6O17IfYH82nyey3mOu5fcDaQSHBDM49c9ztP7nybIP4iC0wU0uZpocjWxLHkZn5z7Se5Kv4uMMxn8OufXnG47TU15DZcnXU5YYBjbC7ezbvY6IoIizit2pZRSbtrypS4ZwxljNZbrHA50LPugfehd3sKT/A00Dg04p5UsMSqYZQk3UNXQTlNbJ0/tfYn0mI2khF1OTVM7P/nw1+TVZltlL5zcueh+NszZwOLExTS4GthfsZ/3T71PZkEmLR0tzI2byzfWfINA/0D8xZ9cRy41zTUAvFvyLvvLjo3ZNVJKqUuRJl9KDdNwuy7tiVNds+ucGZENbb1nEdq7FT0J23DXmPS0hNU1u7hn6W2U1rUCcOj02/zT1Z/m88tvJykyhHdOvUZd50HvOLIb593IfZffR1p8GgF+AeRU5/BR+Ue8dfwtSupLCAoI4pvXfZOVqSsBd1mLrKosjDHsK8vhvdL3zu8iKqWU0uRLqeE6n5mJ9a2d58yItK8JORqeRMq+IPfN8zYzKz6cmLAgthVuY9X0VdyTfg/gLifx0pGt3ucvTFjIv6z6FxbELyAiKIKjp4/ywakPOFB5gHdK3gFg04JN/GPGPwLQ3dPNB2Uf0OxqwulyklmQSUd3x9i8GKWUuoRo8qXUBOjbjegZgL+rwF0CY6DyFjBwi5snGaxxtntrmMWGBzIrfA2ldS00tHaQWZDJZYmX8WDGAwDkns7m+UPPe48RHxbPY2seY2XqSuJD4ylpKOGdkneoaKogsyCTts42pkVN44srHqGxVahv7aGksYC3i7MorWvhpcOZOFoc/canlFKqf5p8KTXG7IlWbHggR8obya9y9i7QGhFMbFggi1KigIG7FWHgFjd75f15iRHEhgdS39JJYlSwuw5YWBANrR08f/BlgkwiG2Z8HoA9pYd5+M0feRO94IBgHrr6IdbMXENyZDJ1rXXsKN5BVXMVO0/spKyxjJToMJ7c/G3+9vJNIEJkaDfFzr1EhQSwr3wfOdU5Y30ZfUZESkXkiIjkiMgBa1uciOwQkSLre6yv41RKXbh0tqNS48AzVqu/GZLFjmaWpEZzpLyRpKiQIZc8Goh9fNiR8kbWpiV6jwmwecFmntr7ErPiwylt2c2WtC0E+f8z20v+B2jiFwf/g8fWPIaIICLcu+xepkdPZ1vhNiqcFXxU9hGLpiwCoKShhDUz17B21lr8O2fwVtlzRAVFsefUHpYkLQGgrLGMTQs24ScXxWe6dcYYe4XZh4G3jTE/EJGHrfv/2zehqUvZrIe3j9uxS3+wadyOrXq7KP5KKjXRBluiaKhkKjYssNf9861B1t+57McSEa6bfpP3fmZBJuGBEXzzum8C0NHdweO7Hqe7p9u7z/Wzr+fBFQ8yK2YWLZ0tFNQV8EHZBzS2N5JZkMmpM40sSJrKt9d9m4TwBEIDQymsKySrMguA7YXbcbqc5/16JrFbgd9Yt38DfMqHsSilLnCafCl1HobbWtU3sapxtoPQq4SEw+kit6JxVPF4zmNf4uhIeSMiwsywa71jwHJqdxLoH8i31n0LQTDG8MSuJ3B1ubzxpU1J4+urv86VU6+kqaOJSmclbx1/i27TzSvHXqdbziAiPHT1Q9ySdgt+4ke36eYv+X+hq6eL90rf4/iZ46N6PT5mgLdEJEtEHrC2JRljqgCs74n9PVFEHhCRAyJyoLa2doLCVUpdaDT5UmoMDFaXyy4pKoS1aYnnlJAYyQzI/s7lWajbcw57mYql02P48qq7iAkLIiYsiMyCTPzEj2+t+5a3YOp3d3+XxvZGb1KZEJ7Al676EjfNvQlXtwtHi4PdJ3fT2d1BVmUWe8v2AnDltCv5t9X/BkBqVCq7SndR1VzF0dqj3hmTF6BPGGOWAzcDXxKRNcN9ojHmF8aYDGNMRkJCwvhFqJS6oIkZq3nv4yAjI8McOHDA12EoBZy7BqOHp+SDx3Ar4dv3G2n1/OGey/64MYZthdu8j21J24Ixhqf2P+Wdsbgu9bNcvyDNu0+P6eFXB14gs2g77V3tJIalcNmUy4kIiiImNJC7lm4hyN+9XuWzB5+ltL6Uzu5ODIZrZlwDwM3zbybAb3jDS0UkyxiTMbKrMH5E5AmgGfgHYK0xpkpEUoBdxpi0wZ47mf5+jec4IXXx0DFfozfcv2Ha8qXUMA238OlwiTBgMdax4Cnq6jmeiLB5wWbv45kFmYgIf7PoH/A3idQ0tfNi/jNsy8v2xuEnftx/5Wf42uoHmBOXhKO1itr2Y/gF1hETFsSbxW96q99/4YovcFf6XQT6BxLoF8gfjvwBV7eLM21nxuT1TAQRCReRSM9t4JNALvAqcK+1273AK76JUCl1MdDkS6kxNtwB9OnTogcsxjoW53I4XefMpuwvAUuKCuGJ9V/h+rkrANhXs5UOv+JecaydtZavrvwqs6LmUdFUwVHHUSqaKgDYX7Gfjys+dr+mxHQevfZRRIR5cfPIrsom2P/8JxT4QBLwvogcAvYD240xbwA/ADaISBGwwbqvlFLnZVTJl4jcKSJ5ItIjIgM2s4lIjIj8WUSOiUi+iKwazXmV8rXBkp6xXB8SBp9ZeT7n6i8BA7g7/W6WJrgTsL8e+ytvn3i71/MWTlnIV67+EtfOvJbTrafZV76PY7XudR6rm6vJLMikq6eLkMAQvnP9d0hPTMdf/KltuXAGnhtjThhjLre+FhtjvmdtrzPGrDfGzLe+XzjNeUqpSWe0db5ygduBnw+x30+AN4wxd4hIEBA2yvMq5VNjkWDZx5B5irHCuWPIPC1YIzlmXYuL+pZOih3NgHsx7/iIYO+xPQmYZwxYZkEmW9K2cGf6p8irS+TdknfZVbqLhvYGbl90OyJCjbOd9JSZzI7/PLHBsbxa+CoHqg5Q317PldOuJMAvgNeLXmfV9FVMCZvCXel3cRd3jfo6KaXUxWZUyZcxJh/cn6QHIiJRwBrgPus5HYAuCKcueZ61HuH8B9wP55gDHXugBCwp6nrCAsPYXridnOocDIbbFt7mTQLDg8K5e8ndhAaG8lLeSxyvP47BsHH+RhraG9hbtpfp0dNZlrxs1K9HKaUuRhMx5msOUAs8JyIHReQZayBrv7ROjlIDl64YrAvyfAbqD9QFuTJ1pbvFC+FQ9SFezn+Zju6zY8f8/fy5/bLbeWDFA0SHRHOi/gSvFLxCfGg84K52n1mQ2auAq1JKKbchky8R2Skiuf183TrMcwQAy4H/NsZcAbTgXpqjX1onR12K+o4hO5+ZlQNVux9qAsBACdgVKVewftanaGrzZ2fxx7xduo29J8p6JYHr56znoasfYmH8Qsoay3gh94VeLeGvFb3mLeCqlFLKbcjkyxhzgzEmvZ+v4U61LgfKjTH7rPt/xp2MKaUsYz1I337M4Rx7oATsujnL+aer72FJ8gyKG/IpadlDYkx7r2OmJ6bz4JUPcu2Ma3G0ONiav5VyZznJEckANHc0j+XLUkqpC964dzsaY6qBMhHxFCRcDxwd7/Mq5StjVafLY7CWq/PpnhzIQAlY2pQ0Ni3YxNSIGeTX5rPjxA5O1J/o9dypkVO5d9m9bF6wmeaOZt4rfY93St5h/Zz1xIfFjzgWpZS6mI221MRtIlIOrAK2i8ib1vapIvKabdevAL8XkcPAMuD7ozmvUpPZcNd9HC5PK1N/CdXYF37tPwGbEzuHLWk3khafRsHpAvac3MOh6kO9nhsZHMk9S+7hzsV3EhQQRHZVNt/d/V1aOlrOKxallLpYjXa241Zgaz/bK4GNtvs5wKRZMkSpC9FISk6MxkCzIFekLiAlOoJA/0ByHbl0m24aXY2smXl26cMAvwDuuOwOQgNCea3oNY6fOc7xM8dZmrx03ONWSqkLxWjrfCmlOHfdx4Fqdo2n4VbWH46BErCpkVNZN3sdgX6BHKw+SHdPN43tjWxesLnXQPtNCzYxLWoaR2qOkByZPGZxKaXUxUCTL6XGwHjU7IKRJXVjneQNlIAlhieydvZa/P38OVB5gG7TzbbCbWycvxF/P3/v85clL9NaX0op1Q9d21GpSWysx3SN1EBjwOJC41g7ay1XTbuKSmclpxpPaVkJpZQaJk2+lBpjY9n9NxkMlIBFh0SzdtZarpx2Jc0dzZyoP8Fbx9/C6XL6KlSllLogaPKl1Bgbr1YpXyZ1AyVgkcGRrJ+znssSLsNP/CisK+S90veoaa7xVahKKTXpafKl1AVioroaBzJQAhYWGMaGuRuYFTOL6OBojtYeZX/F/nNqgSmllHLT5EspNWwDJWAhASHcOO9GkiKSmBY5jUM1h8hz5HGo+tCYF51VSqkLnSZfSk0CF1KC0jcB88yGDPIP4ub5NxMdEs38uPlkVWVxqvEUhY4qX4WqlFKTkiZfSk0C+ZUX1iB1EWHTgk0AGGO8CViAXwAb528kLDCMpYlLOX7mOKEBYb4MVSmlJh1NvpSaBOpbO30dwoj5iV+vBGx74XYA/P38yUheT0VDB/4mGWdHw6jWnFRKqYuNFllVykcmQ1X80fIkYNsLt9NjetheuJ1NCzaREh3Gl1fdRbmznNONYWNWdFYppS4G2vKllBoVewuYJwEDd9fk9OjpBPjpZzyllLLT5EspH/F19fqx1DcBe63oNW8X48VWdFYppUZLky+lJoHY8EBfhzCg4Y7Tsidg3T3dvJznLkNxISaTSik1njT5UmoSWJQS5esQBmQflzaUXgmY6eb1otfHKyyllLpgafKl1CRwMbQO1TjbqXG2k1fRxIywawAorm3k3cJCneWolFI2OhJWKXWO85mJ6XC6vGPWapztrOFGIsLPMCN6BoH+k7dbVSmlJpomX0qpcyRFhXiTrCPljSMuFeFwuvATP+bGzR2P8JRS6oKmyZdS6rwN1EJW1+xi0dTJO45NKaV8SZMvpdSgBisVYW8h21XgID7cvW98RDAOpwuH03VBFY1VSqmJoMmXUmpQw02c4sODvd2T59NVqZRSlwqd7aiUGhNaTFUppYZHky+l1Jiwt5BpIqaUUgPTbkel1JjTMV4jM+vh7b4OQalxfR+W/mDTuB37QqQtX0oppZRSE2hUyZeI3CkieSLSIyIZg+z3NWu/XBF5QUT0Y7FSSimlLkmjbfnKBW4Hdg+0g4hMAx4CMowx6YA/cPcoz6uUUkopdUEa1ZgvY0w+gIgM5zyhItIJhAGVozmvUkoppdSFatzHfBljKoD/BE4BVUCjMeat8T6vUkqNJRG5SUQKRKRYRB72dTxKqQvXkC1fIrITSO7noUeNMa8M4/mxwK3AbKAB+JOIfNYY87sB9n8AeABgxowZQx1eKaXGnYj4A08DG4By4GMRedUYc9S3kSl1YdCZlL0NmXwZY24Y5TluAEqMMbUAIvIXYDXQb/JljPkF8AuAjIwMM8pzK6XUWLgKKDbGnAAQkRdxf6jU5EspH7sQE7uJKDVxClgpImHiHhy2HsifgPMqpdRYmQaU2e6XW9uUUmrERjXgXkRuA34KJADbRSTHGHOjiEwFnjHGbDTG7BORPwPZQBdwEKtlayhZWVmnReTkaGK0TAFOj8FxxsJkigUmVzyTKRaYXPFMplhg/OKZOQ7HHAv9zSo6p2XePmwCaBaRAtvDk+1n6DFZ44LJG5vGNTIXbFzywxEfc1h/w8SYi79nT0QOGGMGrEM2kSZTLDC54plMscDkimcyxQKTL57xJiKrgCeMMTda9x8BMMb8+wiOMSmv2WSNCyZvbBrXyGhc59IK90opNbSPgfkiMltEgnDXKnzVxzEppS5QurajUkoNwRjTJSJfBt7EXSj6V8aYPB+HpZS6QF0qydewxphNkMkUC0yueCZTLDC54plMscDki2fcGWNeA14bxSEm6zWbrHHB5I1N4xoZjauPS2LMl1JKKaXUZKFjvpRSSimlJpAmX0oppZRSE+iSSL5E5DsiclhEckTkLasOmS/j+Q8ROWbFtFVEYnwYy50ikiciPSLis6nAk2ndPBH5lYg4RCTXl3FYsUwXkXdFJN/6OX3Vx/GEiMh+ETlkxfMtX8YzkYZ6j4rIGhHJFpEuEbnDtn2ZiOy1rtdhEbnL9thsEdknIkUi8pI1kxIRCbbuF1uPz/JBbL+3jplr/U4EWtvXikij9fc0R0S+OcFx/VpESmznX2ZtFxF50jrXYRFZPsFx7bHFVCkif53A6zVTRLKs4+eJyD/aHlshIkesYz4pImJtjxORHdZ7b4e4lwKckLjEXXR9u7j/D+aJyA9sz7lPRGpt1+v+geIax2u2yzqmJ4ZEa/uIfi8HZYy56L+AKNvth4D/8XE8nwQCrNs/BH7ow1gWAWnALiDDRzH4A8eBOUAQcAi4zIfXZA2wHMj15fvEiiUFWG7djgQKfXxtBIiwbgcC+4CVvr5OE/C6h3yPArOApcBvgTts2xcA863bU4EqIMa6/0fgbuv2/wD/ZN3+oufvFO6yFi/5ILaN1s9bgBdssa0Ftvnwmv3avq/tORuB1614VwL7JjKuPs9/GfjcBF6vICDYuh0BlAJTrfv7gVXWdXkduNna/iPgYev2wwzwf2g84gLCgHW2ffbY4roPeGoCfi8Hu2a76Of/ISP4vRzq65Jo+TLGOG13w+mnMvVEMsa8ZYzpsu5+BKT6MJZ8Y0zB0HuOK++6ecaYDsCzbp5PGGN2A2d8dX47Y0yVMSbbut2Ee2kuny1rY9yarbuB1telMGtnyPeoMabUGHMY6OmzvdAYU2TdrgQcQILVAnE98Gdr198An7Ju32rdx3p8vafFYiJis+6/Zv28De5/4CP9OzUucQ3iVuC3VsgfATEikjLRcYlIJO6f61+HiHcs4+owxrisu8FYvVrW648yxuy1fo6/pf/3mP29N+5xGWNajTHvevbBvQLO+fwfHPPYhjCS38tBXRLJF4CIfE9EyoDPAAM2+/rA3+P+NHIp03XzhsFq4r4Cd2uTL+PwF5Ec3P94dhhjfBrPBBmT96iIXIX7E/dxIB5osH0Qsx/Tez7r8UZr/4mKzb49EPg74A3b5lXi7np+XUQW+yCu71ndfv9PRIJHeL5xvV7AbcDbfT70j/v1EvcQhcPWMX5oJYfTrOP0d8wkY0wVuD/kAYkTGJf98RhgC/C2bfOnrZ/vn0Vk+iCHH8/YnrO6HL9hS7BG8ns5qIsm+RKRneIem9D361YAY8yjxpjpwO+BL/s6HmufR3Gvd/l7X8fiY8NaN+9SJiIRuLsy/rnPH/UJZ4zpNsYsw/1J9SoRSfdlPBNk1O9RqxXieeDzxpieIY45kvONR2x2PwN2G2P2WPezgZnGmMtxr+07UAvPeMX1CLAQuBKIA/73CM833tfrHtzdtB4Tcr2MMWXGmKXAPOBeEUka7THHMS73gZcqepUAAANUSURBVEUCcF+rJ40xJ6zNmcAs6zk7OdvSNJGxfcYYswS41vr6u7E4n91FU2TVGHPDMHf9A7AdeHwcwxkyHhG5F9gMrLeag30WyyRQDtg/3aQClQPse8mxWh5eBn5vjPmLr+PxMMY0iMgu4CbA55MTxtmo3qMiEoX7785jVpcYuBf0jRGRAOtTtP2YnvOVW/+gohm4K3w8YvM89jjubrUHPdvsyb8x5jUR+ZmITDHG9F2geFzi8rTWAC4ReQ74+gjPN57XKx53V9httngn5HrZzlEpInm4k4YP6N2dZz9mjYikGGOqrGTSMcAhxyMuT1f7L4AiY8x/2farsz3tl7jHRQ9kXGIzxlRY25tE5A+4f6a/ZWS/l4O6aFq+BiMi8213bwGO+SoWcM/OwP1p7RZjTKsvY5kkdN28AVjN3c8C+caYH0+CeBKsbgJEJBS4AR//Pk2Q836PWvtvxT0e6U+e7daHrncBzwyse4FXrNuvWvexHn9nkA9pYx6b9dj9wI3APfbWHRFJ9nTDWF1vfoD9H+Z4x5VifRfc45Q8if+rwOfEbSXQaEvUxj0uy524B9e3254zEdcr1fp9RNyzFj8BFFivv0lEVloxfI7+32P29964x2Xd/y7u5OWf+zzHPk7vFtzjXAcy5rGJSICITLG2B+JuJLG/x4b7ezk4c54j9S+kL9ytBrnAYdxNmtN8HE8x7n7jHOvLZ7MvcX9CKwdcQA3wpo/i2Ih7Jt9x4FEf/3xewD2LqdO6Nl/wYSzX4G7WPmx7v2z0YTxLgYNWPLnAN335s5rg137OexT4Nu4PUeDuBisHWnD/c82ztn/Wei/l2L6WWY/NwT2YvRj4E2dnX4VY94utx+f4ILYu63ie7d+0tn8ZyMM9s+wjYPUEx/UOcMR6//2Os7NvBXjaOtcRBpm9PR5xWY/vAm7qc66JuF4bcP9OHrK+P2A7ZoZ1rY4DT3F2ZZt43OOsiqzvcRMVF+4WKoM7sfJcx/utx/7ddr3eBRaO03t/oNjCgSxrWx7wE8D/fH4vB/vS5YWUUkoppSbQJdHtqJRSSik1WWjypZRSSik1gTT5UkoppZSaQJp8KaWUUkpNIE2+lFJKKaUmkCZfSimllFITSJMvpZRSSqkJ9P8BN8FOnDoLX/sAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 720x360 with 2 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"v0 = torch.eye(2)\n",
"n = xs.shape[0]\n",
"x_aug = torch.ones(n,2)\n",
"x_aug[:,0] = xs\n",
"\n",
"Vn = torch.inverse(torch.eye(2) + x_aug.t().mm(x_aug))\n",
"wn = Vn.mv(x_aug.t().mv(ys))\n",
"alpha_n = 5 + n / 2\n",
"beta_n = 5 + 0.5 * (ys.dot(ys) - wn.dot(Vn.inverse().mv(wn)))\n",
"\n",
"w_sampler = pyro.distributions.MultivariateNormal(wn,Vn)\n",
"prec_sampler = pyro.distributions.Gamma(alpha_n,beta_n)\n",
"\n",
"plt.figure(figsize=(10,5))\n",
"plt.subplot(121)\n",
"plt.plot(xs.numpy(), ys.numpy(), '+', alpha = 0.2)\n",
"for i in range(10):\n",
" wb = w_sampler.sample()\n",
" py = wb[0] * xs + wb[1]\n",
" plt.plot(xs.numpy(), py.detach().numpy(), 'g', alpha = 0.3)\n",
" \n",
"prec = torch.sqrt(1/prec_sampler.sample((1000,)))\n",
"plt.subplot(122)\n",
"plt.hist(prec.numpy())"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"# The variational distribution\n",
"def new_guide(x,y):\n",
" wb = pyro.sample(\"wb\", pyro.distributions.MultivariateNormal(wn, Vn))\n",
" prec = pyro.sample(\"precision\", pyro.distributions.Gamma(alpha_n, beta_n))\n",
" return wb, prec"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-1100.9434806704521\n"
]
}
],
"source": [
"new_svi = pyro.infer.SVI(model, new_guide, optimizer, pyro.infer.Trace_ELBO())\n",
"print(new_svi.step(xs,ys))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"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.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment