Skip to content

Instantly share code, notes, and snippets.

@suzusuzu
Last active November 14, 2019 21:56
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 suzusuzu/ba877d68ca3488f062e00d1f684d8b66 to your computer and use it in GitHub Desktop.
Save suzusuzu/ba877d68ca3488f062e00d1f684d8b66 to your computer and use it in GitHub Desktop.
Horseshoe distribution sampling
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "horseshoe_distribution.ipynb",
"provenance": [],
"collapsed_sections": [],
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/suzusuzu/ba877d68ca3488f062e00d1f684d8b66/horseshoe_distribution.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "code",
"metadata": {
"id": "LNUKG91BuWpR",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 281
},
"outputId": "177f2246-cd13-48ad-d798-130aa2e0eda9"
},
"source": [
"from scipy.stats import cauchy, norm\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"from sklearn.neighbors.kde import KernelDensity\n",
"\n",
"N = 10000\n",
"c = np.abs(cauchy.rvs(size=N))\n",
"n = np.zeros(N)\n",
"for i in range(N):\n",
" n[i] = norm.rvs(loc=0.0, scale=c[i], size=1)\n",
"n = n.reshape(-1, 2)\n",
"plt.scatter(n[:,0], n[:, 1])\n",
"lim = 50\n",
"plt.ylim(-lim, lim)\n",
"plt.xlim(-lim, lim)\n",
"plt.title('Horseshoe distribution sampling')\n",
"plt.show()"
],
"execution_count": 1,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXkAAAEICAYAAAC6fYRZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0\ndHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3df5xddX3n8ddnJpdkgsoEiUomwaTK\nxiVGiKRIm+5jNbWN8nMeoPxY6q/asm7drVA2miitwcaSPtIW7Lq6q7UWFyphgQ4gdoOa0FZ8BA1M\nYhpNLD8DlyBRMohkgMnks3+ccyZn7pxzf55777l33s/HI4/MvffMOWfO3Pmc7/2cz/dzzN0REZHu\n1NPuHRARkeZRkBcR6WIK8iIiXUxBXkSkiynIi4h0MQV5EZEupiAvmTGzdWZ2Yxu2u9DM3MxmhI//\n0cw+kNG6/4OZ7Y09fszM3pnFusP17Tazt2e1vjyJvx/M7CQz+6WZ9bZ7v6YbBfkOkRRczOyDZvbd\ndu1TXrn7u939hkrLhSeGN1ZY17+4++Is9svM/s7M1pesf4m735vF+vPM3fe5+yvcfbzd+zLdKMhP\nUxpRVRZ9MhDpZAryXcTM/r2Z3WtmI2Ea4LzYa39nZl80s2+a2QvAO8zsLDP7kZk9b2ZFM/vvseXP\nMbMd4bq+Z2Zvib32iXD5581sr5n9Zmw3jjGzr4Wv7Taz5VXu30wz+wsz22dmPzWz/2VmfSk/Z2+4\n7M/M7BHg7JLX7zWz3wu/fqOZ/ZOZPRcuvyl8/p/DxXeGaYSLzeztZvZk+PM9DXw1eq5kF341PG4H\nzeyrZjYrXOeUT1bRpwUzuxy4DPh4uL27wtcnPqGFx+B6M3sq/He9mc0MX4v27Soze8bM9pvZh5KO\nT2xfHgl/D4+a2WXh828wsy1m9vPweNxkZv2x73vMzFab2Q/N7AUz+4qZvTZMgT1vZt82sznhslGa\n7PJwf/fH30Ml+1OaUrvXzP7UzO4L13uPmZ0QW/79ZvZ4uJ9/bBmnyaYVd9e/DvgHPAa8s+S5DwLf\nDb8uAA8BnwSOAVYCzwOLw9f/DngOWEFwcp8F7Af+Q/j6HOCt4dfLgGeAtwG9wAfC7c8EFgNPAPPC\nZRcCbwi/Xge8CJwVft+1wLYq9+864E7geOCVwF3AtSnH4iPAHmBBuPxWwIEZ4ev3Ar8Xfv114FOx\nn/k3Yutx4I2xx28HDgN/Hv6sfeFzT5b8Hv41tu37gPWlv4+kbYS/g/Vpv1fgM8A24DXAXOB7wJ+W\n7NtnwmN5FnAImJNwfI4FfhE7ticCS8Kv3wj8VvjzzQX+Gbi+ZH+2Aa8FBsL3wYME74lZwBbg07Hf\nvYfH+FhgKXAg9vOsA24sWTb+O3oY+Hfhcb4X2BC+dgrwS+A3CN4rfwGMUfL+17/q/mkk31mGwlHw\niJmNAF+IvXYm8AqCP5SX3X0L8A3g0tgyd7j7fe5+xN1fJPjDOcXMXuXuB939wXC5y4H/7e73u/u4\nB/ntl8JtjBMEiFPMrODuj7n7w7FtfNfdv+lB7vX/AKdW2j8zs3CbV7r7s+7+PPBnwCUpx+EigsD0\nhLs/S3AySTMGvJ7gpPSiu1e6hnGEIIi95O6jKct8PrbtzzL5GDfiMuAz7v6Mux8ArgHeF3t9LHx9\nzN2/SRAI064XHAHebGZ97r7f3XcDuPtD7v6t8Oc7APwV8B9Lvvd/uPtP3b0I/Atwv7sPh++ZfyAI\n+HHXuPsL7r4L+CrVH4+vuvtPwuN8C3Ba+Px7gLvc/bvu/jLwJwQnCKmDgnxnGXT3/ugf8Aex1+YB\nT7j7kdhzjxOMxiJPlKzvQoIR4eNhSuPXwudfD1xVckJZQBAoHwKuIBilPWNmN5vZvNg6n459fQiY\nFX5EL7d/c4HZwAOx7f2/8Pkk80p+lsdTlgP4OGDA98MU0e+WWRbgQBjMyind9ry0BWs0j8k/S+m6\nf+7uh2OPDxGcOCdx9xeAiwk+8ew3s7vN7E0AYerlZgvSbb8AbgROKFnFT2NfjyY8Lt1mvcej9L0S\nrXfS79fdDwE/r3KdUkJBvns8BSwws/jv9CSgGHs8aTTk7j9w9/MJ0gNDBKMpCP7APhs/obj7bHf/\nevh9f+/uv0FwMnCC9EYj+/czguCxJLa949x9SgAL7Sc46cTXk8jdn3b333f3ecB/Br5g5Stqqhkx\nlm77qfDrFwhOVgCY2etqXPdTBMc0ad01cffN7v5bBKmaPcCXw5f+LNyPpe7+KuB3CE6CjUg7HvXa\nD8yPHoTXZl7d4DqnLQX57nE/wWjo42ZWsKD2+lzg5qSFzewYM7vMzI5z9zGCHG40yv4y8BEze5sF\njjWzs83slWa22MxWhhcEXyQIzkeStlHt/oWj+y8D15nZa8L9GzCzVSnrugX4QzObH14EXJO2UTN7\nr5lFAeMgQYCL9venwK9Use+lPhpu+3iCfP+m8PmdwBIzOy28GLuu5Psqbe/rwNVmNje8CPknBCPt\nmoSj9fPN7FiCNNsvOfozvzJ8/JyZDQCra11/gj82s9lmtgT4EEePR71uBc41s183s2MIjmOjJ6Jp\nS0G+S4S5y3OBdxOMjL8AvN/d95T5tvcBj4Uf2z9CkBPG3bcDvw98niAwPkRwURGCfPyGcBtPE3wK\nWJvB/n0i3M62cH++TXq++cvAZoKg+iBwe5lN/ypwv5n9kuDC7sfc/ZHwtXXADWGK6KJKP0PM3wP3\nAI8QXDxcH/6MPyG4MPpt4N+A0vz/VwiuZYyY2VDCetcD24EfArvCn219wnKV9AB/RDCifpYg5/5f\nwteuAd5KcBH+bsofu2r9E8Hv7jvAX7j7PY2sLLx+8N8IBij7CU5KzxCcsKRG5q7rGSJSOzNbCDwK\nFEquFWS9nVcAI8DJ7v5os7bTrTSSF5HcMbNzwxTQsQQllLsIyjulRgryIpJH5xOkm54CTgYucaUd\n6qJ0jYhIF9NIXkSki+WqAdMJJ5zgCxcubPduiEwycmiMp3/xImPjRyj09vC6V82if3YBgF3F51K/\nb+nAca3aRZnmHnjggZ+5e+LkwVwF+YULF7J9+/Z274bIhKHhImtv38UJY0c75BYKvVx9wVIGlw2w\ncM3dqd+7fcPZqa+JZMnMUmd9K10jUsbGzXsZHZvcAn10bJyNm4P7iAz0JzbKTH1epNUU5EXKeGok\nuUdZ9PzqVYvpK0xuzd9X6GX1qkzuMyLSMAV5kTLmpYzIe8wYGi4yuGyAay9YykB/H0Ywgr82TOWI\n5EGucvIiebN61WLW3r5rSspm3J21t+8CYHDZgIK65JZG8iJlRCP1XpvaHyuemxfJKwV5kSqMp0wa\nTMvZi+SF0jUiZVw9tIubtu1LfT0tZy+SFxrJi6QYGi5y07Z9qXf6UBWNdAIFeZEUGzfvLXsrJ1XR\nSCdQkBdJUS7fPtDfpwAvHUFBXiRFWr7dQGka6RgK8iIpkmazGnDZmSdpFC8dQ9U1IimiQL5x816e\nGhllXn8fq1ctLhvgh4aLNS0v0mwK8iJl1DKbNepYGc2OLY6MTpoVK9IOSteIZKRSx0qRdlCQF8lI\npY6VIu2gdI1IDcrl3Of191FMCOiaFSvtlNlI3sx6zWzYzL4RPl5kZveb2UNmtsnMjslqWyLtEOXc\niyOjOEdz7kPDRUC95SWfskzXfAz4cezxnwPXufsbgYPAhzPclkjLDA0XWbFhC1ds2lE2567e8pJH\nmaRrzGw+cDbwWeCPzMyAlcB/Che5AVgHfDGL7Ym0SmnFTJJ4zl295SVvshrJXw98HDgSPn41MOLu\nh8PHTwKJ73wzu9zMtpvZ9gMHDmS0OyLZSKqYKaWcu+RZw0HezM4BnnH3B+r5fnf/krsvd/flc+fO\nbXR3RDJVqTJGOXfJuyzSNSuA88zsLGAW8Crgc0C/mc0IR/PzgWIG2xJpqbSKGQhy7prRKnnX8Eje\n3de6+3x3XwhcAmxx98uArcB7wsU+ANzR6LZEWu0db5pL6Y3/+gq9XH/xady3ZqUCvOReM+vkPwHc\nbGbrgWHgK03clkwTrewNMzRc5LYHipN6yhtw4em6uCqdI9Mg7+73AveGXz8CnJHl+mV6a3VvmHV3\n7p5y0dWBrXtUICCdQzNepWOU6w2TdZAfGi4yMjqW+Fqe2hSo66VUoiAvHaOVvWHKNRXLS8mkul5K\nNdSgTDpGWnBtRtAtd+KopmQymiW7aM3drNiwZaL1QZbU9VKqoSAvHaOVvWHKnTjW3bmbZZ+5JzWA\nV+pxkxV1vZRqKMhLx2hlb5ikE0pkZHSMg4fGUgN4q0bYrfxkI51LOXnpKK3qDRO/9V/aZKhI6cXf\nVo2wV69aPKWvjmbgSimN5EVSDC4b4L41K6dMhkoSD+CtGmGr66VUQyN5kQrKtTaILxNp5QhbXS+l\nEgV5kTKGhou88NLhsssUem1SAI+nelS/Lu2mIC+Soppe8gCT+h6ENMKWvFBOXiRFNb3kAcaOuGrT\nJbcU5EVS1FINo9p0ySsFeZEUtVTDqDZd8kpBXiTF6lWLqyqfVG265JmCvEiKwWUDXHbmSVMCfaHX\n6O8rqDZdOoKqa0TKWD+4lOWvPz61HDJq9Xvlph0qlZRcUpAXqSCtHFKtfqUTKF0jUie1+pVOoCAv\nUie1+pVOoCAvUie1+pVOoCAvUqdW3sREpF668CpSJzUik06gIC/SADUik7xTukZEpItpJC9So2gC\nlFI00gkU5EVqoAlQ0mmUrhGpwTV37dYEKOkoGslL18g6jVK6vne8aS4HD40lLtvoBCilgKRZFOSl\nK2SdRhkaLrL61p2MjfvE+m7cti91+UYmQCkFJM2kdI10haz7yFxz1+6JAF+NRiZAqQeONJOCvHSF\nrPvIpKVlkvT3FRoacasHjjSTgrx0hXb1kekr9LLuvCUNrUM9cKSZFOSlK7Syj0x0p6is7gqlHjjS\nTLrwKl2hXB+ZeipX5swupKZsnCDA37dmZdP3XaRR5l79xaXEFZgtAL4GvJbg/f8ld/+cmR0PbAIW\nAo8BF7n7wXLrWr58uW/fvr2h/RGJK61cgWCUXGkEPjRc5I9u2cGRlD8PAx7dcHbGeytSHzN7wN2X\nJ72WRbrmMHCVu58CnAl81MxOAdYA33H3k4HvhI9FWqreypXBZQMc11dIfb3HjKHhYib7KNJMDQd5\nd9/v7g+GXz8P/BgYAM4HbggXuwEYbHRbIrVqpHKlXIXNuDtrb9+lQC+5l+mFVzNbCCwD7gde6+77\nw5eeJkjniLRUvZUrQ8PFiQusaUbHxrli0w5WbNiiYC+5lVmQN7NXALcBV7j7L+KveZD4T8xumtnl\nZrbdzLYfOHAgq90RAeqvXNm4eW/yGzZBNENVgV7yqOELrwBmVgC+AWx2978Kn9sLvN3d95vZicC9\n7l72L0sXXqUZ6qmuWbjm7pq302vGEXdVx9RJ/XvqV+7Ca8MllGZmwFeAH0cBPnQn8AFgQ/j/HY1u\nS6Qe9dy9qcdIraxJM+5H+9yo90xt1L+nebKok18BvA/YZWY7wuc+SRDcbzGzDwOPAxdlsC2RpoiP\nIvtnF2oO8KVGx8a55q7dClBVKlcFpWPYmIaDvLt/F1KvUf1mo+sXadTQcJFr7to9US3T31dg3XlL\nJoJH6Siylr415Rw8NMbQcFFBqgrq39M8amsgXS1qGRwP3COjY6z+vzsnLpQmjSJrYWXKcNRJsjrq\n39M8CvLS1TZu3pvYMnjsiE8E4EZHi8fNSp80pZFoddS/p3nUu0a6Wrkg+9TIKEPDRXrMJi6a1uO5\n0TH6+wqMjE5N8/TPTj8ByFHq39M8CvLS1eb191FMCfT9swusvX1XQwE+2sbqVYsn3Ukq8ssXDysv\nX6VKVVAqsayP0jXS1VavWkyhd2rSvNBjuNNQLh6OphQGlw1w7DFTx0zxtJDUL7o4XhwZxdEEtFoo\nyEtXG1w2wMb3nMqcWNqkv6/AxveeynMJ6ZVaGEzqZpm2PuXlG6dbJNZP6RrpatFH/JFDYwyUfMTf\nuHlvaiqnGs7kiTppqaF2VIh0W2pDJZb100heulalj/hJFR2VmpIlbSNSrkJkaLjIig1bWLTm7qY3\nNOvG1IZKLOunIC9dq9JH/MFlA1x7wVIGwkBhpHTRK+OKTTt4w9pvcvXQrknrM47eHhBoadDtxtSG\nSizrp3SNdK1qPuJHFR0rNmypO3Uz7s6N2/YBsH5w6h2nVmzY0tIp+92Y2lCJZf0U5KVr1ZIjzyIA\n3nT/PtYPLq163c0Kunm6NpClehrNidI10sVq+YifRQBMK7dPmxDVrIlSSm1InIK8dK20HHnSaLCZ\nATAt+GdwK4dEtfzc0v2UrpGuU0/54OCygUmdKhvZdum20urnG63TL0epDYloJC9dpZHywU+fu4Te\nnlqLKCdL2pbK/6SdFOSlqzRSPrj98WcZb/BuIUnbeseb5iYum/a8SJaUrpGuUk0lS1I6B+CmsAwy\n633Yuif5BvVpz4tkSUFeukql8sG0e4nOnNFT80SoNMf1FVixYcvESSSt/r6T69alcyhdI12lUvlg\nWjonqRd8vUZGxyZdE0jL8ndbTr6VrRukehrJS0epVDlTaWZkIw3J6uVMbZnQbXXrSZ+Qrty0g+2P\nP5s4QUxaR0FeOkZaqgWYEuiTygfbObJ0gnr1bp2Sn/QJyQmucyx//fFd9bN2GgV56RjlKmdKg0jS\niL+dDboG+vu4b83Ktm2/2dKuLzg0rUePVEc5eekY1faASauVb0eqBqDQa7zw0uGuzlWXu76gC8zt\npSAvHaPaSUVpI/5eS5/oZDDp7lFZmTO7AB5cjO2W3u5JVq9aPG0uMHcaBXlJlbdqiWpvypE2Yh93\np5AyozW6KNrYfNepZh8zg7GSCVad3ts9yeCyAS4786Qpx6/bLjB3IgV5SZTHuwsNLhvgwtMHJkbk\nvWZceHqQ643va5qB/j42vvdU+vuSR+wHD41lVisPwQkj7YRTHBnN1Qk0C+sHl3LdxaepMVrOmDer\nFV4dli9f7tu3b2/3bgik3kSj14wj7plXiFTTVKy0ugaCkeKsQk/FxmJ9hd6JuzRF2+kxY7xN7/+k\nkkoFxM6Rt3vomtkD7r486TVV10iitItlUVBMK1+sR7WlkWm59tLn4owgJ/yON82d0mUyLwEeqr9T\nVN6Cy3RU7fs1L5SukUTVXCyrJrdcTV6/2qZitVZpDPT38eiGs1m9ajG3PVBsuI1wFubMLqSmhIoj\noxPHJ+m45TGFNh112j10NZLvIK0cxa1etXhKaiRJUuCN9jOa0h8FtbQRT1rwLk0XlesDU6rQY2Vb\nGbRLpRPNFZt28Mnbf8jYEWds/OinptW37uTwEZ9yo5Fm3itWknXaPXQV5DvE1UO7uGnbvooBMyul\n7QHS8telzbje8aa53PZAcSKoVpOWSAvexuSbcFR74om+efvjz06cbDrJobEjU56LAn6SvAaXbtVp\n99BVuqYDDA0XJwX4SLM/Ig4uG+C+NSt5dMPZ/OVFp04pXyz0GC+8fHhS+uCmbfsqBuHStMQLLx1O\nXM6BK2/ZMbFsdFu7aoyNOzdt29dxAb4ezbpX7HRWLs3YaffQ1Ui+A2zcvDc1j1tpFDc0XJx0wbG/\nr8C685akjv7TUkJJjb8OvXx4Svqh2kuZa2/fxfbHn5006k/iDqtv3TnxuJaTWn7qxprr4KExrh7a\nlXkjsOl6kbfShdVKTfDyRiWUHWDRmrtTA1a5nihDw0VW37oz9aP+QOyGGUk59Mic2QU+fW5wYoj/\n4Tf6zumtoYQxab/kKAOuu/i0mk/e8dfX3bl7ouXy7ELPpOsC0J4yz3acaNLKh/Pcf6hcCaWCfAdI\ne9OV+8MeGi5y1S07KwbRHqC318rmfCH4A7/w9IGKI29pn3InzaS6/AtPH2DrngM1pbT6+wocO3NG\nTUE3LVBXc+JJmhdR6UTT6IkhbVBlwKMbzq56Pa3U1iBvZu8CPgf0An/j7hvSli0X5FtxRm/nx9O0\nW9KljbAN+PU3HM/up56fGH1FI26g+guUNahl5C3TQ/Q+/NH+5xNTgmmButyAIXofp100r/TptXR7\n0d9Oj0HUYaJc2rKdI/l6Y1DbgryZ9QI/AX4LeBL4AXCpu/8oafm0IF/vGb0Wzd5GuV9e0rYLPQaW\nXFXR31fgnFNPZNP3n5jSF6W3x3jVrBm5qAmX6avQY2x876mpgbrSgKFQ4dPlYykj6rQAXW4f43+H\naYOqZsSbpEFdvTGonUH+14B17r4qfLwWwN2vTVo+Lci34szazGn8lU4gtbwxo++tZiq/SDtFN0nJ\nOsL0mvHwtWclvlbu+lWSKIaU+wQwkPGn+rR4MHNGT+JtKKuJc+WCfLNLKAeAJ2KPnwyfm2Bml5vZ\ndjPbfuBA8t3rWzH5oNw0/kZnF1aaIVfrzzE6Nq4AL7kXjVKTlGv7XEm5TwC11qpHf3tpd7aKAmyW\nadta7zPcaJxre528u3/J3Ze7+/K5c+cmLlNtH/FGZDWNP0mlk1QzJlGU1vGKtFr06TeppvzMX5lT\n93oHyvy9JG2v0j5Ca2ex1rrORuNDs4N8EVgQezw/fK4mrZh8UO2bo55feqWTVNK2Cz1GoTd9tJPW\nLjd67doLljY0WhJpVJTiuPaCpZPaD194+gAP7nuurnVW+ruPb6+SeOuLVgwkK61zzuxCU+Jcs4P8\nD4CTzWyRmR0DXALcWetKkt4oWdfrRtuoFBjn9felNo+qd4Zc0s+38b2nsvE9pyberaiv0Mu685bw\nO2eeNOW1Qo9NVA0kzVKF4Jd+fdj3O0lfoe0f8KQLRH+f8ZnT961ZydY9B+qq/Kr27z7aXrlA399X\nmHTRtZWzWNO29elzlzQlzrWihPIs4HqCEsq/dffPpi2bhzr5chduaqkVL70q3kh5ZqXKnEq1xrVU\n9dRyUXd2oYc5x86kODI6US1Rz6SlQo9x8RkLuHHbvhq/U+pVWk54zqknTnlfF3qNY4+ZwXOjtd9M\npdzFwlovjtZb2VJrxVwrS6iz3pYmQ9WgXJXNX16UXhKWJM8z5CJJb7YrN+2o+EdY6DU2vufUKW/M\n0kZqpUpPAlG9crnjqtmu9Uk7bkk3UImay23dcyAx8KT9XcyZXeDFsSM1lf2VqyYr9BoX/+qC1P2o\n1XRpzaCbhtQgqdNh/E175aYdVa+rE7oDxntxRKo6kaVE3a17DpT9JJT2x1/uuF538WlTbvjR7XrN\neOWsGakVF0ksjOpJk+miT1rxVhal/Vlue6CY+vtJ+7uIJt/VEkjTuonG22dkJen9Pd0oyJeo1Hyo\nlp7mrWw92kjaplQ1LX3HjnhiH/NyJ7Zyo7vj+gqpNcIAL5a0343XMI8cepkXXp66r538CWDcnXXn\nLal65nLpxJ5I2vE+7Zp7Ust6k76n0t9FLYG00xp8dToF+QTlzv7V9jRvZevRSl3zar1dWekfYS0d\nMNNOggP9fWWbZ73w8tR2w1H1Q6Ua5kVr7k5cb6cG+LhrL1hasQdRNDrf/vizE8v2mnHp2xYkdqYc\nGi7WVZOd5ahYI+zWURlFjUpLtJJqcaISxla9iStNtqrndmXxioi0KoWkTyr1VCls3Lw3cQr7K2bN\nYHDZQFvmGeTBNXftZnDZAEfKBPjrLz6N+9asZPvjz3Ljtn0TJ4Nxd27cto+rh3ZN+Z5yv/duPZbT\nmYJ8HaIA+NiGs7kuLEWMSp6uv/g0dnz6t1s6SqkUBBud6FFL4K6n3DVtP0bCHHw98wy6wcFDYwwN\nF8vWVUfH9ev3P5G4TPz5qMy3XLoxi0+f1dzXV1pH6ZoG5eFjZ6XbkTV6u7Jac6i1HpNK+5d20S8+\nzyDav267E9Ta23cllu3GL3pC+lT/6PmkcsJS8ZNGvWpNDUrzaSTfBSqNtLOY6FE6oSXLP9hq9m9W\nbIJWUjqsmgkweVVu+t3o2Dhb9xyo+OkobRJf9Hylm5mXnjTqVU9qUJpLI/kuUG3lQ16rGcrtX9II\n9KXDU290HanpZt85EE2wS2obHXlqZLTip6NL35Y8mezSty2YWEeaLLsstrIHjFRHQb5LVAoCeUgr\nlZO2f+VGhpUqg/KeuokH1+WvPz61iqaatFpURfP1+59IrK4pV/WU5YS9RlODkj0Fecm1ekaG0Qkj\n7SLj7EIPh8bSPw20QmlwjU5O5a49VLJ+cGnqzbwrXdfISqu2I9VTTl5yrZHugGm5/j+74C38zpkn\n0dOmJp1ZViZVqxVN/lq5HameetdIrjVyW8ah4SLr7tw95R64abn+ZlnxhuN57OejPDUyynF9BcyC\n8tC8XRuRzqXeNVKzvDR2qveicVIQj7dGqFRtkqWbfv/XEvdJ5YXSCgryMkXeglE9F40rXbBtVbVH\nvLSx1ovIIllQTl6m6IZa57y0QohKGKvZJ+kueZn5qyAvU3RDMMpDK4QVbzh+UrVLK28xJ+0VfRou\nhg3+ok/D7Qj0CvIyRTcEo1puuQjlZ53Wo9BrvHf55NsztvIWc5G8jCanm3o/DTfj96XqGpmikYqW\nPKnl4vHVQ7syv/1gf1+BY2fOmLR9aN3M4275PXaitFscGvDohrMTv6eR35eqa6QmeW+DUK1aLth+\nY+f+zLc/Mjo2Ub5ZHBll9a07J+6Z2opjqgu97VPPzN9m/b4U5CVR3tsgZKncTTSyNDbuk4J+syuW\nuuHaSqeqZ+Zvs35fCvLSVapN0cSX60np4FjJzBk99JjVXW/f7FG1+si0Tz2fhpv1+1KQl65RbX1/\n6XLlbq1XzpEjzvJF/Wx75OCkdQz093Ho5cNV3Xi8maNq9ZFpr1o/DTfr96UgL12j2pxmVrNdx444\n33v42UkX2OJ/lNW0TWjGqDr+KaV/doGZM3padh1A6tesa2EK8tI1qs1pZjl6Lv0MEJ1UVq9azKxC\nz0SQn13oYWzcJ/WMb8aouvRTysFDY/QVernu4tMU3DtAM66FqU5euka19f3NzklHaaJ4usYxLj5j\nQdO7M3bDbGXJlkby0jWqzWlmdfcoY+pIPpIUaLfuOZDpDTqSqKJGSmkkL10jrZc5MGkWITBptms9\nZhd6uOzMk2pqjdCKQNsNs5UlWwry0nZZTuUuveE4kNhDBOC+NSuZM7tQ13ZGDx9h/eDSSSeVtJtp\nR1oRaNvROkHyTekaaatmtzTFtn8AAAr5SURBVDWuVHFTTZljkqhiMn6hbOGau1OXb1Wg7ZbZypId\nBXlpq2ZPvS+Xo866WVevWWrNfSv7xUyn2cpSmdI10lbNvlBYLkfdaMVJ6Umi3KQqBV1pFwV5aatm\nXygsl6Nu9ERSepJIu5DbyAVekUYpyEtbNftCYVrFzeCygYZPJKUnCV30lDxSTl7aqhUXCtNy1Gl1\n9YZzKHbT7zSlJwld9JQ8auimIWa2ETgXeBl4GPiQu4+Er60FPgyMA3/o7psrrU83DZFWiPd2Oa6v\ngBmMHDra2+XKTTtSJznFXa9WAZIT5W4a0mi65lvAm939LcBPgLXhBk8BLgGWAO8CvmBmzb2hpkgV\nSu+9OTI6xotjR7ju4tO4b83KTNI4InnSUJB393vc/XD4cBswP/z6fOBmd3/J3R8FHgLOaGRbIlmo\n1NtlaLjICy8dTvrWxHWJ5F2WOfnfBTaFXw8QBP3Ik+FzIm2VVlFTHBll4Zq7y/ajSfqeRWvuVu5d\ncq1ikDezbwOvS3jpU+5+R7jMp4DDwE217oCZXQ5cDnDSSSdVWFqkMWl334nUeoWqtFWCAr3kTcV0\njbu/093fnPAvCvAfBM4BLvOjV3GLwILYauaHzyWt/0vuvtzdl8+dO7ehH0akkqQyxyyona/kVUM5\neTN7F/Bx4Dx3PxR76U7gEjObaWaLgJOB7zeyLZEslNbNZ0ntfCWPGs3Jfx6YCXzLgg5829z9I+6+\n28xuAX5EkMb5qLs3fr81kQzE6+ZXbNhSNn1Ti3n9fVXfSFykVRqqk8+a6uSl1Uq7YFar9AJtX6GX\nC08f4LYHilMmV7WyOZlMT82skxfpaFH6plIv+FIOU1olbN1zQLfek9xRWwOZ9gaXDXDlph01fc9A\nf9+UW/mlrUO5emknjeRFqL3r5cJXT11et96TPFKQF6H20sptjxysah3qQintpnSNCMkdJF946TAj\no8m3B0y6QUitXSg7oRKnE/ZRylN1jUiKq4d2ceO2fYmv9Zrx8LVn1b3upKqevFXidMI+SkDVNSJ1\n2LrnQOprl75tQepr1ajUKC0POmEfpTIFeZEU5api1g8ubcq681SJ0wn7KJUpJy+SIq2ZWdI9W2vN\nXaetO0+VOJ2wj1KZRvIiKaqtlim9EUnUlXJoOLEnX03rbqdO2EepTCN5kZjSEfmFpw+wdc+BsiP0\ncrnrtNF8J9wPthP2USpTdY1IqN5qkkVr7k7sQ2/AoxvOzn5HRUqoukakCvVWk2imq+SZgrxIqN5q\nEuWuJc8U5EVC9Y7IS29EEnWlVO5a8kAXXkVCq1ctTszJVzMij9+IRCRPFORFQmnVJBDcQUoVJtKJ\nFORFYkpH5KUVN1ENfLSsSN4pJy9Shvq3SKdTkBcpQ/1bpNMpyIuUoRp46XTKyYskiNobFEdGMZg0\no1U18NJJFORFSpRebHWYCPQDqq6RDqMgP43p1m7Jki62RgH+vjUr27NTInVSkJ+mVBqYThdbpZvo\nwus0pdLAdLrYKt1EQX6a0mg1nRqOSTdRkJ+mNFpNp4Zj0k2Uk5+mGmnGNR2o4Zh0CwX5aUq3dhOZ\nHhTkpzGNVkW6n4K8SAWaTyCdTEFepAzNJ5BOp+oakTI0n0A6nYK8SBmaTyCdLpMgb2ZXmZmb2Qnh\nYzOzvzazh8zsh2b21iy2I9Jqmk8gna7hIG9mC4DfBvbFnn43cHL473Lgi41uR6QdVq9aTKHXJj1X\n6DXNJ5COkcWF1+uAjwN3xJ47H/iauzuwzcz6zexEd9+fwfZEqpJZVYxXeCySYw2N5M3sfKDo7jtL\nXhoAnog9fjJ8Lmkdl5vZdjPbfuDAgUZ2R2RCVBVTHBnFOVoVMzRcrGk9GzfvZezI5Kg+dsR14VU6\nRsUgb2bfNrN/Tfh3PvBJ4E8a2QF3/5K7L3f35XPnzm1kVSITsqqKSbvAWhwZZcWGLTWfNERarWK6\nxt3fmfS8mS0FFgE7zQxgPvCgmZ0BFIEFscXnh8+JtERWVTHz+vsolgn0qpmXvKs7XePuu9z9Ne6+\n0N0XEqRk3uruTwN3Au8Pq2zOBJ5TPl5aKauqmIWvLr+8auYl75pVJ/9N4BHgIeDLwB80aTsiibLo\nCT80XOR7Dz9bcTnVzEueZdbWIBzNR1878NGs1i1Sqyy6bG7cvLeqQhrVzEueqXeNdK1Gu2xWM0JX\nD37JOwV5kQRDw0V6zBj39LH8gDpSSgdQkBcpEdXYJwV4Ay478yTWDy5t/Y6J1EFBXqREUo09QK8Z\nf3nRqRq5S0dRF0qREmm5+CPuCvDScRTkRWKiXHwSVdFIJ1KQFwmVy8WrikY6lYK8SKhcLv7aC5Yq\nVSMdSUFeJKRcvHQjBXmRkO4CJd1IQV4klEW/G5G8UZ28SCiLfjcieaMgLxLTaL8bkbxRukZEpIsp\nyIuIdDEFeRGRLmZeppVqq5nZAeDxdu8HcALws3bvRE7oWBylY3GUjsVReTgWr3f3uUkv5CrI54WZ\nbXf35e3ejzzQsThKx+IoHYuj8n4slK4REeliCvIiIl1MQT7Zl9q9AzmiY3GUjsVROhZH5fpYKCcv\nItLFNJIXEeliCvIiIl1MQb6EmV1lZm5mJ4SPzcz+2sweMrMfmtlb272PzWZmG81sT/jz/oOZ9cde\nWxsei71mtqqd+9kqZvau8Od9yMzWtHt/WsnMFpjZVjP7kZntNrOPhc8fb2bfMrN/C/+f0+59bRUz\n6zWzYTP7Rvh4kZndH74/NpnZMe3exzgF+RgzWwD8NrAv9vS7gZPDf5cDX2zDrrXat4A3u/tbgJ8A\nawHM7BTgEmAJ8C7gC2bWm7qWLhD+fP+T4H1wCnBpeBymi8PAVe5+CnAm8NHw518DfMfdTwa+Ez6e\nLj4G/Dj2+M+B69z9jcBB4MNt2asUCvKTXQd8HIhfjT4f+JoHtgH9ZnZiW/auRdz9Hnc/HD7cBswP\nvz4fuNndX3L3R4GHgDPasY8tdAbwkLs/4u4vAzcTHIdpwd33u/uD4dfPEwS3AYJjcEO42A3AYHv2\nsLXMbD5wNvA34WMDVgK3hovk7lgoyIfM7Hyg6O47S14aAJ6IPX4yfG66+F3gH8Ovp+OxmI4/cyIz\nWwgsA+4HXuvu+8OXngZe26bdarXrCQaCR8LHrwZGYoOi3L0/plU/eTP7NvC6hJc+BXySIFUzLZQ7\nFu5+R7jMpwg+rt/Uyn2T/DGzVwC3AVe4+y+CAWzA3d3Mur4W28zOAZ5x9wfM7O3t3p9qTasg7+7v\nTHrezJYCi4Cd4Zt3PvCgmZ0BFIEFscXnh891tLRjETGzDwLnAL/pRydTdOWxqGA6/syTmFmBIMDf\n5O63h0//1MxOdPf9YfrymfbtYcusAM4zs7OAWcCrgM8RpHBnhKP53L0/lK4B3H2Xu7/G3Re6+0KC\nj1xvdfengTuB94dVNmcCz8U+pnYlM3sXwUfS89z9UOylO4FLzGymmS0iuBj9/XbsYwv9ADg5rKA4\nhuDC851t3qeWCXPOXwF+7O5/FXvpTuAD4dcfAO5o9b61mruvdff5YYy4BNji7pcBW4H3hIvl7lhM\nq5F8nb4JnEVwkfEQ8KH27k5LfB6YCXwr/GSzzd0/4u67zewW4EcEaZyPuvt4G/ez6dz9sJn9V2Az\n0Av8rbvvbvNutdIK4H3ALjPbET73SWADcIuZfZigPfhFbdq/PPgEcLOZrQeGCU6KuaG2BiIiXUzp\nGhGRLqYgLyLSxRTkRUS6mIK8iEgXU5AXEeliCvIiIl1MQV5EpIv9f55r0bi6/8EjAAAAAElFTkSu\nQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"tags": []
}
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment