diff --git a/.gitignore b/.gitignore deleted file mode 100644 index e69de29..0000000 diff --git a/chapters/Chapter 2 - Generative Models.ipynb b/chapters/Chapter 2 - Generative Models.ipynb index 4406ac0..49cd023 100644 --- a/chapters/Chapter 2 - Generative Models.ipynb +++ b/chapters/Chapter 2 - Generative Models.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 1, + "execution_count": 112, "metadata": { "ExecuteTime": { "end_time": "2019-09-11T05:34:01.171283Z", @@ -15,6 +15,7 @@ "\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", + "from matplotlib.patches import Rectangle\n", "import numpy as np\n", "\n", "import pyro\n", @@ -22,7 +23,21 @@ "import torch\n", "\n", "import sys; sys.path.append('..')\n", - "from pyro_webppl import viz" + "from pyro_webppl import viz\n", + "\n", + "# imports for physics example:\n", + "from pyro_webppl.physics_example import Block, Simulate, Animate, infer_physics, draw_world, run_simulation\n", + "\n", + "import pyglet\n", + "from pyglet.gl import *\n", + "from pyglet.window import key, mouse\n", + "\n", + "import pymunk\n", + "import pymunk.pyglet_util\n", + "from pymunk import Vec2d\n", + "\n", + "from copy import deepcopy\n", + "from pyro.infer import Importance, EmpiricalMarginal" ] }, { @@ -233,15 +248,15 @@ "output_type": "stream", "text": [ "tensor(0.)\n", - "tensor(0.)\n", - "tensor(1.)\n", - "tensor(1.)\n", "tensor(1.)\n", "tensor(1.)\n", + "tensor(0.)\n", "tensor(1.)\n", "tensor(0.)\n", + "tensor(1.)\n", "tensor(0.)\n", - "tensor(0.)\n" + "tensor(1.)\n", + "tensor(1.)\n" ] } ], @@ -272,14 +287,12 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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cm4kEtGXX36prKys0RvU5ezuWTr945W1tbXasGGDli5dqvvuu2+0x3Q9u3vetm2b3n77bU2bNk3Tpk1TTU2NJGn27NnasGHD6A/sUufz743k5ORBb9v4/X5dfvnl/Gj2N7C767179yo/P1/p6enxY9/61reUn5+vgwcPju6wF5FEPRdeFGFSVFSk9PR07d69O34sHA5r3759Z72WobS0VKFQaNAD/J133pEkXXPNNaM/sEvZ3bMkLVmyRK+88orWrFmjO+64w6FJ3c3unltaWvTyyy/rxRdf1IsvvqjVq1dLOn09D6+inNv5/Hvj1KlT+te//hU/1tfXp7a2Nl1xxRWOzOxWdnednZ2tgwcPDno7oaenR4cOHeLtyhGUqOfCi+LiV5/Pp6qqKtXX1yszM1O5ubmqq6tTdna2Zs2apWg0qs7OTo0fP15+v19Tp07V1VdfrUWLFmnFihXq6enR8uXLNWfOnHP+lz/s73n79u3atWuXlixZorKyMn322Wfx+xo4B0PZ3fOZT4oDFxNedtllysjISMBX4A5293zttdfq+9//vh544AGtXLlSGRkZWrdunbxer3784x8n+ssxmt1dz5kzR5s2bdJ9992ne++9V5L0+OOPKzU1VXPnzk3wV+NexjwXjtoPIhvm1KlT1mOPPWbNmDHDKikpsWpqauK/x6Gtrc0qKCiwtm3bFj//888/t37xi19YJSUl1vTp062HHnrI6uvrS9T4rmFnzwsWLLAKCgrO+s9XvxcYyu7j+av+/ve/83tMhsnuno8fP2499NBD1vTp062pU6daCxYssA4cOJCo8V3F7q4/+ugja+HChVZZWZk1Y8YM6+c//zmPaZseeOCBQb/HxJTnwiTLsqzRyx4AAIDhuyiuMQEAAO5AmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAY/w8nKVShw8TA+gAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -315,14 +328,14 @@ "text": [ "tensor(2.)\n", "tensor(2.)\n", + "tensor(0.)\n", "tensor(1.)\n", "tensor(1.)\n", - "tensor(0.)\n", "tensor(2.)\n", "tensor(2.)\n", - "tensor(2.)\n", - "tensor(2.)\n", - "tensor(1.)\n" + "tensor(3.)\n", + "tensor(0.)\n", + "tensor(2.)\n" ] } ], @@ -353,14 +366,12 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEBCAYAAAB13qL/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAFodJREFUeJzt3X+M3PV95/HnrsNv25Quw8U2oWml441oVRyw4aQClzv7KtW5liJ+3RmdlXIJF9HkrpdEJJJNAtFRHfRS63oYdA09geRs0ggdRAmGi6it1hGKgLY4UkHvO11aEq330GqNBPYlYLy+P+a73HRYe7+zM7Mzs5/nQ7K838+P3c/n+5mZ18x35vudsZMnTyJJKtf4oAcgSRosg0CSCmcQSFLhDAJJKpxBIEmFMwgkqXAGgSQVziCQpMIZBJJUOINAkgpnEEhS4T4w6AGcwlnAZmAaODHgsUjSqFgFrANeBN6u26lWEETEdmAXcCawOzP3nKLdx4CHMvMXq+2fA74O/BIwA9yamf+nxp/cDBysMzZJ0vtcB3y/buNFgyAiNgD3A1fRTJjnI+JAZr7S1u4fAP8JGGsp/g/Awcz8WET8K+A/A7fVGNc0wBtvHGNubmlXR52YWM3s7NEl9R0mK2Ue4FyG0UqZBzgXgPHxMS644DyoHkPrqvOKYCuwPzOPAETEE8DNwFfa2j0K3Af8x5ayjwHXVz9/A9gTEWdk5vFF/uYJgLm5k0sOgvn+K8FKmQc4l2G0UuYBzqVFR4fU6wTBev5+ukwDV7c2iIh/C/wV8INT9c3MdyPiTaABHK4zuImJ1XWanVKjsaar/sNipcwDnMswWinzAOeyVHWCYGyBsrn5HyLiV4CbgC3AxZ30Xczs7NElp2KjsYaZmbeW1HeYrJR5gHMZRitlHuBcoHloaClPoOt8fHQK+GDL9jr+/jP6W6qyl4B9wPqIONjeNyI+AKwFZjsepSSpb+oEwXPAlohoRMS5NJ/9PztfmZlfzsxLM3MjsA04nJnXVdX7gB3Vz7fRfON4sfcHJEnLaNEgyMwpYCdwAHgZmMzMFyJiX0RsWqT7PcA/ioi/Ae4CfrfbAUuSeqvWeQSZOQlMtpVtW6Dd3wEfbtk+AvxWVyOUJPWVl5iQpMIN6yUmJC1gzdpzOPus3t5t635M8Wdvv8tbb/60p39bw8EgkEbI2Wd9gN/83LcH8re/89UbWBkfzlQ7Dw1JUuEMAkkqnEEgSYUzCCSpcAaBJBXOIJCkwhkEklQ4g0CSCmcQSFLhPLNYXevksge9/NYlL3kg9YZBoK4N6rIHXvJA6g0PDUlS4QwCSSqcQSBJhav1HkFEbAd2AWcCuzNzT1v9jcB9wCrgReDOzHwnInYADwCvV02fzsydvRq8JKl7iwZBRGwA7geuAt4Gno+IA5n5SlV/HvAQcGVmvh4R3wQ+DvwxsBn4bGZ+o0/jlyR1qc6hoa3A/sw8kpnHgCeAm+crq7IPVyFwHnAR8EZVvRnYERGHImJvRFzQ4/FLkrpUJwjWA9Mt29PAxa0NMvN4RPwG8GPgQuB7LW3vBTYCP6H5ykGSNETqvEcwtkDZXHtBZj4DTETE7wOPANsz88b5+oh4EPhRJ4ObmFjdSfP36eXJS4O0UubRD4PcNyWuy7DPedjH14nlnEudIJgCrmvZXgccnt+IiJ8HNmXm/KuArwN/GhHnA3dk5u6qfAw43sngZmePMjd3spMu72k01jAzM/qnG43CPAZ55xvUvhnUugz6gW6Yb4ujcF+pa6lzGR8fW9IT6DqHhp4DtkREIyLOBW4Cnm2pHwP2RsQl1fatwPeBo8DdEXFNVf5p4MmORyhJ6qtFgyAzp4CdwAHgZWAyM1+IiH0RsSkzZ4E7ge9GxCHgUuALmXmCZig8EhGv0vzU0d39mogkaWlqnUeQmZPAZFvZtpafnwKeWqDfQeDKLscoSeojzyyWpMIZBJJUOINAkgpnEEhS4QwCSSqcQSBJhTMIJKlwBoEkFc4gkKTCGQSSVDiDQJIKZxBIUuEMAkkqnEEgSYUzCCSpcAaBJBXOIJCkwhkEklS4Wl9VGRHbgV3AmcDuzNzTVn8jcB+wCngRuDMz36m+0H4vcBGQwO2ZebSH45ckdWnRVwQRsQG4H7gWuAK4MyIub6k/D3gI+GeZ+cvA2cDHq+qHgYcz8zLgJeCeno5ektS1OoeGtgL7M/NIZh4DngBunq+syj6cma9XoXAR8EZEnAFcX7UHeAy4pZeDlyR1r04QrAemW7angYtbG2Tm8Yj4DeDHwIXA96r/38zMd0/VT5I0eHXeIxhboGyuvSAznwEmIuL3gUeAz9fpdzoTE6s7af4+jcaarvoPi5Uyj34Y5L4pcV2Gfc7DPr5OLOdc6gTBFHBdy/Y64PD8RkT8PLApM79XFX0d+FNgBlgbEasy80R7vzpmZ48yN3eyky7vaTTWMDPz1pL6DpNRmMcg73yD2jeDWpdBP9AN821xFO4rdS11LuPjY0t6Al3n0NBzwJaIaETEucBNwLMt9WPA3uoTQgC3At/PzOPAQeC2qnwH8EzHI5Qk9dWiQZCZU8BO4ADwMjCZmS9ExL6I2JSZs8CdwHcj4hBwKfCFqvtdND9l9ArNVxW7+jEJSdLS1TqPIDMngcm2sm0tPz8FPLVAv9eAj3Y3RElSP3lmsSQVziCQpMIZBJJUOINAkgpnEEhS4QwCSSqcQSBJhTMIJKlwBoEkFc4gkKTCGQSSVDiDQJIKZxBIUuEMAkkqnEEgSYUzCCSpcAaBJBXOIJCkwtX6qsqI2E7z+4bPBHZn5p62+huA+2h+kf3fAr+TmW9ExA7gAeD1qunTmbmzV4OXJHVv0SCIiA3A/cBVwNvA8xFxIDNfqerXAo8AmzNzKiK+AtwL/DtgM/DZzPxGn8YvSepSnUNDW4H9mXkkM48BTwA3t9SfAdyVmVPV9g+BS6qfNwM7IuJQROyNiAt6NXBJUm/UCYL1wHTL9jRw8fxGZs5m5lMAEXEO8EXgqZa29wIbgZ8AD3U/ZElSL9V5j2BsgbK59oKIOJ9mABzKzMcBMvPGlvoHgR91MriJidWdNH+fRmNNV/2HxUqZRz8Mct+UuC7DPudhH18nlnMudYJgCriuZXsdcLi1QUSsA/4HsB/491XZ+cAdmbm7ajYGHO9kcLOzR5mbO9lJl/c0GmuYmXlrSX2HySjMY5B3vkHtm0Gty6Af6Ib5tjgK95W6ljqX8fGxJT2BrnNo6DlgS0Q0IuJc4Cbg2fnKiFgFfBf4Vmb+XmbOP3IfBe6OiGuq7U8DT3Y8QklSXy36iqD6JNBO4ADNj48+mpkvRMQ+4EvAh4CPAKsiYv5N5Jcy8xMRcSvwSPXewf8EdvRlFpKkJat1HkFmTgKTbWXbqh9f4hSvLDLzIHBlNwOUJPWXZxZLUuEMAkkqnEEgSYUzCCSpcAaBJBXOIJCkwhkEklQ4g0CSCmcQSFLhDAJJKpxBIEmFMwgkqXAGgSQVziCQpMIZBJJUOINAkgpnEEhS4QwCSSpcra+qjIjtwC6a31m8OzP3tNXfANwHjAF/C/xOZr4REZcAe4GLgARuz8yjPRy/JKlLi74iiIgNwP3AtcAVwJ0RcXlL/VrgEeBjmXkF8EPg3qr6YeDhzLyM5ncb39PT0UuSulbn0NBWYH9mHsnMY8ATwM0t9WcAd2XmVLX9Q+CSiDgDuL5qD/AYcEtPRi1J6pk6h4bWA9Mt29PA1fMbmTkLPAUQEecAXwT+C3Ah8GZmvtvS7+JOBjcxsbqT5u/TaKzpqv+wWCnz6IdB7psS12XY5zzs4+vEcs6lThCMLVA2114QEefTDIRDmfl4RKyv0+90ZmePMjd3spMu72k01jAz89aS+g6TUZjHIO98g9o3g1qXQT/QDfNtcRTuK3UtdS7j42NLegJd59DQFPDBlu11wOHWBhGxDjgIHAI+URXPAGsjYtWp+kmSBq9OEDwHbImIRkScC9wEPDtfWT3Qfxf4Vmb+XmaeBMjM4zTD4baq6Q7gmV4OXpLUvUUPDWXmVETsBA7Q/Pjoo5n5QkTsA74EfAj4CLAqIubfRH4pMz8B3AU8HhG7gB8D/7Ifk5AkLV2t8wgycxKYbCvbVv34Eqd4ZZGZrwEf7WJ8kqQ+88xiSSqcQSBJhTMIJKlwBoEkFc4gkKTCGQSSVDiDQJIKZxBIUuEMAkkqnEEgSYUzCCSpcAaBJBXOIJCkwhkEklQ4g0CSCmcQSFLhDAJJKlytbyiLiO3ALppfVbk7M/ecot3jwIHMfKza3gE8ALxeNXk6M3d2O2hJUu8sGgQRsQG4H7gKeBt4PiIOZOYrLW3WA/8V2ELzu43nbQY+m5nf6OmoJUk9U+fQ0FZgf2YeycxjwBPAzW1tbge+DXyrrXwzsCMiDkXE3oi4oOsRS5J6qk4QrAemW7angYtbG2TmH2Tmowv0nQbuBTYCPwEeWtowJUn9Uuc9grEFyubq/PLMvHH+54h4EPhRzXEBMDGxupPm79NorOmq/7BYKfPoh0HumxLXZdjnPOzj68RyzqVOEEwB17VsrwMOL9YpIs4H7sjM3VXRGHC8k8HNzh5lbu5kJ13e02isYWbmrSX1HSajMI9B3vkGtW8GtS6DfqAb5tviKNxX6lrqXMbHx5b0BLrOoaHngC0R0YiIc4GbgGdr9DsK3B0R11Tbnwae7HiEkqS+WjQIMnMK2Enz00AvA5OZ+UJE7IuITafpdwK4FXgkIl6l+amju3szbElSr9Q6jyAzJ4HJtrJtC7T7eNv2QeDKLsYnSeozzyyWpMIZBJJUOINAkgpnEEhS4QwCSSqcQSBJhTMIJKlwBoEkFc4gkKTC1TqzeBS9c/zEQC7Q9bO33+WtN3+67H9XUm+tWXsOZ581mIfId46fWNa/t2KD4MwzVvGbn/v2sv/d73z1BlbG9Q+lsp191gcG8hgCzceR5eShIUkqnEEgSYUzCCSpcAaBJBXOIJCkwhkEklQ4g0CSClfrPIKI2A7sAs4EdmfmnlO0exw4kJmPVduXAHuBi4AEbs/Moz0YtySpRxZ9RRARG4D7gWuBK4A7I+LytjbrI+I7wC1t3R8GHs7My4CXgHt6MmpJUs/UOTS0FdifmUcy8xjwBHBzW5vbgW8D35oviIgzgOur9gCP8f6gkCQNWJ1DQ+uB6ZbtaeDq1gaZ+QcAEXFtS/GFwJuZ+W5Lv4uXPlRJUj/UCYKxBcrm+tjvPRMTqztpPjR6fbG7QVw8b1QMct+UuC7DPudhH18nlnMudYJgCriuZXsdcLhGvxlgbUSsyswTHfR7z+zsUebmTnbS5T2DvEHMzPTusnONxpqe/r5+WCn7uhODWpdBP9AN822x12syivt6fHxsSU+g67xH8BywJSIaEXEucBPw7GKdMvM4cBC4rSraATzT8QglSX21aBBk5hSwEzgAvAxMZuYLEbEvIjYt0v0ump8yeoXmq4pd3Q5YktRbtc4jyMxJYLKtbNsC7T7etv0a8NGlD0+S1G+eWSxJhTMIJKlwBoEkFc4gkKTCGQSSVDiDQJIKZxBIUuEMAkkqnEEgSYUzCCSpcAaBJBXOIJCkwhkEklQ4g0CSCmcQSFLhDAJJKpxBIEmFMwgkqXC1vqoyIrbT/L7hM4HdmbmnrX4j8DXgfOAvgE9l5rsRsQN4AHi9avp0Zu7s1eAlSd1b9BVBRGwA7geuBa6g+WX0l7c12wt8JjMvBcaAT1blm4HPZubG6p8hIElDps6hoa3A/sw8kpnHgCeAm+crI+IXgHMy8wdV0WPALdXPm4EdEXEoIvZGxAW9G7okqRfqBMF6YLplexq4uGb9NHAvsBH4CfDQUgcqSeqPOu8RjC1QNlenPjNvnC+IiAeBH3UyuImJ1Z00HxqNxpqh/n0rySD3TYnrMuxzHvbxdWI551InCKaA61q21wGH2+o/2F4fEecDd2Tm7qp8DDjeyeBmZ48yN3eyky7vGeQNYmbmrZ79rkZjTU9/Xz+slH3diUGty6Af6Ib5ttjrNRnFfT0+PrakJ9B1Dg09B2yJiEZEnAvcBDw7X5mZrwE/i4hfq4p2AM8AR4G7I+KaqvzTwJMdj1CS1FeLBkFmTgE7gQPAy8BkZr4QEfsiYlPV7HZgd0S8CpwH/FFmngBuBR6pyq8C7u7HJCRJS1frPILMnAQm28q2tfx8CLh6gX4HgSu7HKMkqY88s1iSCmcQSFLhDAJJKpxBIEmFMwgkqXAGgSQVziCQpMIZBJJUOINAkgpnEEhS4QwCSSqcQSBJhTMIJKlwBoEkFc4gkKTCGQSSVDiDQJIKZxBIUuFqfVVlRGwHdgFnArszc09b/Ubga8D5wF8An8rMdyPiEmAvcBGQwO2ZebSH45ckdWnRVwQRsQG4H7gWuAK4MyIub2u2F/hMZl4KjAGfrMofBh7OzMuAl4B7ejVwSVJv1HlFsBXYn5lHACLiCeBm4CvV9i8A52TmD6r2jwH3RcSjwPXAb7eU/znwhRp/cxXA+PhYrUmcykUXnNNV/6Xqdtz9/n39sFL29Sj87UHtaxj+22Kvxzdq+7qlz6pO+tUJgvXAdMv2NHD1IvUXAxcCb2bmu23ldawDuOCC82o2X9if7Pr1rvov1cTE6qH+ff2wUvb1KPztQe1rGP7bYq/HN8L7eh3wv+s2rhMEC8XSXI36xfqdzovAdTTD40TNPpJUulU0Q+DFTjrVCYIpmg/K89YBh9vqP7hA/QywNiJWZeaJBfqdztvA92u2lST9f7VfCcyr8/HR54AtEdGIiHOBm4Bn5ysz8zXgZxHxa1XRDuCZzDwOHARuay3vdICSpP5aNAgycwrYCRwAXgYmM/OFiNgXEZuqZrcDuyPiVeA84I+q8rtofsroFZqvKnb1egKSpO6MnTx5ctBjkCQNkGcWS1LhDAJJKpxBIEmFMwgkqXC1Ljo3rJZ6MbxlH2gNNebyJeBfA29URV9rbzMsImIt8DzwzzPz79rqRmZNYNG5jNKafBm4tdp8OjPvbqsfmXWpMZdRWpev0Lxkz0ngTzLzD9vql2VdRvYVQZcXwxsqNeeyGfgXmbmx+jesN+xraJ4MeOkpmozEmkCtuYzKmmwFfh34CLARuCoibmxrNhLrUnMuo7Iu/xj4p8CvApuAz0REtDVblnUZ2SCg5WJ4mXkMmL8YHnDKi+HdsuyjrOe0c6lsAr4QET+MiIci4uxlH2U9nwR+lwXOIh+xNYHTzKUyKmsyDXwuM9+pTvR8FbhkvnLE1uW0c6mMxLpk5p8D/6R6hn8RzSM0x+brl3NdRjkITnWxu7r1w+S0Y42I1cBfA58HrgR+jiG9pHdmfiIzD56iepTW5LRzGbE1+Zv5B5OI+Ic0z/bf19JkZNZlsbmM0roAZObxiLgPeAX4M5qX7Jm3bOsyyu8RLPVieMPotGOtvsxn2/x2RHwV+G80z/geJaO0Jqc1imsSEb8MPA18PjP/V0vVyK3LqeYyiuuSmV+OiAeA79B8FfrHVdWyrcsovyI41cXu6tYPk9OONSIuiYg7WurHgOPLNLZeGqU1Oa1RW5PqWmB/BnwxMx9vqx6pdTndXEZpXSLisurNYDLz/wL/neb7BfOWbV1GOQiWdDG85R9mLaedC/BT4MGI+MWIGKN53PrJAYyzKyO2JosZmTWJiA8BTwHbM/Ob7fWjtC6LzYURWhfgl4CvRcRZEXEmcAMtV11eznUZ2SDo8mJ4Q2WxuWTmDPBvaL50TJrPcr46sAF3aBTX5FRGdE0+D5wN/GFEvFz9+9SIrstp5zJK65KZ+2i+v/HXwF8Cz2fmNwexLl50TpIKN7KvCCRJvWEQSFLhDAJJKpxBIEmFMwgkqXAGgSQVziCQpMIZBJJUuP8HcuNlE6NVvj4AAAAASUVORK5CYII=\n", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -397,12 +408,12 @@ "3\n", "3\n", "6\n", - "3\n", - "3\n", - "3\n", + "6\n", + "6\n", "3\n", "6\n", - "3\n" + "6\n", + "6\n" ] } ], @@ -449,14 +460,12 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiYAAAGgCAYAAACez6weAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy89olMNAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAgC0lEQVR4nO3de3BU5eH/8c/u5rIxyRpSgcSkKKU1EQVBGjRDoilUipeOSKk1GhWdBFHbbWlZFct4gc54SQS5TESFVEUzOGOpYEwBq/3hjUHQVq1pAkOVexI0kAUSsrAnvz/4ZmuMYA7ZkGeX92uGMTz7nHOeTWZy3jnnRBzt7e3tAgAAMICzrxcAAADQgTABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYIyYvl6AXe3t7bKs3vl/wjmdjl7bNwAAkaA3zoVOp0MOh6NbcyMuTCyrXU1Nh8K+35gYp/r1S5Tf36KjR62w7x8AANP11rkwNTVRLlf3woRbOQAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjBHT1wsAACBaOZ0OOZ2Ovl5Gt7lcfX+9gjABAKAXOJ0OpaScYcTJ3g7LapfD0XcxRZgAANALnE6HXC6nyl76UDsbDvT1crolc2CyZtw0qk+v8hAmAAD0op0NB7R1V3NfLyNiRNb1JQAAENUIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMawHSaWZWnBggXKz8/XiBEjVFJSoh07dhx3/qpVq5SVldXlz86dO3u0cAAAEH1i7G5QXl6uyspKPfroo0pLS1NpaamKi4v12muvKS4ursv8uro6jR49WnPnzu00npqaevKrBgAAUcnWFZNAIKCKigp5vV4VFBQoOztb8+bNU319vdauXfut22zevFlZWVnq379/pz8ulyssbwAAAEQPW2FSW1urQ4cOKTc3NzTm8Xg0dOhQbdy48Vu3qaur05AhQ3q2SgAAcFqwdSunvr5ekpSent5pfMCAAaHXvq65uVkNDQ3atGmTKisrtW/fPg0fPlw+n0+DBw8++UXHhP+ZXZfL2em/AAD0RCSfT5xOR6+ca7vDVpi0trZKUpdnSeLj49Xc3Nxl/pYtWyRJ7e3teuSRR3T48GE99dRTuvHGG/Xaa6/prLPOsr1gp9Ohfv0SbW/XXR5PQq/tGwCASJCU5O6zY9sKE7f72EIDgUDoY0lqa2tTQkLXE/qPf/xjrV+/Xv369ZPD4ZAkLVq0SAUFBVqxYoWmTp1qe8GW1S6/v8X2dt/F5XLK40mQ39+qYNAK+/4BAKeXjvNKJDp48LCOHAmGbX8eT0K3ryDZCpOOWziNjY0aNGhQaLyxsVFZWVnfus03f/smISFBmZmZamhosHPoTo4e7b1wCAatXt0/AACms6z2PjsX2rqBlJ2draSkJG3YsCE05vf7VVNTo5ycnC7zX375ZV1yySVqafnfFY6DBw/qiy++0A9/+MMeLBsAAEQjW2ESFxenoqIilZWV6c0331Rtba2mT5+utLQ0jR8/XsFgUHv37tXhw4clSZdddpksy9I999yjLVu26NNPP9VvfvMbpaamatKkSb3yhgAAQOSy/cit1+vV5MmTNWvWLBUWFsrlcmnp0qWKjY3Vnj17lJeXp+rqaknHbv0899xzamlpUWFhoaZMmaLk5GS98MILio+PD/ubAQAAkc3R3t7e3teLsCMYtNTUdCjs+42Jcapfv0Tt23eIZ0wAAD3WcV753dz/p627uv7mqomGZJypJ39fIL+/VW1tR8O239TUxG4//Bq5v2QNAACiDmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGDF9vQDTuFyR1WqW1S7Lau/rZQAAEBaEyf9xOByyrHZ5PAl9vRRbgkFL+/e3ECcAgKhAmPwfp9Mhp9Ohspc+1M6GA329nG7JHJisGTeNktPpIEwAAFGBMPmGnQ0HtHVXc18vAwCA01JkPVABAACiGmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGLbDxLIsLViwQPn5+RoxYoRKSkq0Y8eObm27atUqZWVlaefOnbYXCgAAop/tMCkvL1dlZaXmzJmj5cuXy7IsFRcXKxAInHC7Xbt2afbs2Se9UAAAEP1shUkgEFBFRYW8Xq8KCgqUnZ2tefPmqb6+XmvXrj3udpZlyefz6YILLujxggEAQPSyFSa1tbU6dOiQcnNzQ2Mej0dDhw7Vxo0bj7vd4sWLdeTIEd1xxx0nv1IAABD1YuxMrq+vlySlp6d3Gh8wYEDotW/65JNPVFFRoVdeeUUNDQ0nuczOYmLC/8yu0+kI+z5PFZeLZ5gBwDSR/L3Z6XT0yrm2O2yFSWtrqyQpLi6u03h8fLyam5u7zG9padGMGTM0Y8YMnXvuuWEJE6fToX79Enu8n2ji8ST09RIAAFEkKcndZ8e2FSZu97GFBgKB0MeS1NbWpoSErifHP/3pTxo8eLBuuOGGHi7zfyyrXX5/S9j21yE21tWnX4ie8PtbFQxafb0MAMDXuFzOiP3B8eDBwzpyJBi2/Xk8Cd2+gmQrTDpu4TQ2NmrQoEGh8cbGRmVlZXWZ/5e//EVxcXEaOXKkJCkYPPYmr7nmGk2bNk3Tpk2zc/iQo0fDfxKO5EtuwaDVK58TAMDpybLa++y8YitMsrOzlZSUpA0bNoTCxO/3q6amRkVFRV3mf/M3dT7++GP5fD4988wzOu+883qwbAAAEI1shUlcXJyKiopUVlam1NRUZWRkqLS0VGlpaRo/fryCwaCampqUnJwst9utc845p9P2HQ/Inn322UpJSQnbmwAAANHB9v0Lr9eryZMna9asWSosLJTL5dLSpUsVGxurPXv2KC8vT9XV1b2xVgAAEOVsXTGRJJfLJZ/PJ5/P1+W1zMxM1dXVHXfbSy655ISvAwCA01vkPvEJAACiDmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYtsPEsiwtWLBA+fn5GjFihEpKSrRjx47jzv/ss8906623auTIkbr00kv1wAMP6MCBAz1aNAAAiE62w6S8vFyVlZWaM2eOli9fLsuyVFxcrEAg0GXul19+qdtuu00ZGRlasWKFysvL9eGHH+q+++4Ly+IBAEB0sRUmgUBAFRUV8nq9KigoUHZ2tubNm6f6+nqtXbu2y/xdu3YpLy9Ps2fP1uDBg3XxxRfr+uuv13vvvRe2NwAAAKKHrTCpra3VoUOHlJubGxrzeDwaOnSoNm7c2GX+RRddpLlz5yomJkaStHXrVq1cuVJjxozp4bIBAEA0irEzub6+XpKUnp7eaXzAgAGh147nZz/7mb744gtlZGRo0aJFNpfZWUxM+J/ZdTodYd/nqeJy8QwzAJgmkr83O52OXjnXdoetMGltbZUkxcXFdRqPj49Xc3PzCbctKytTa2urSktLdcstt2jlypVKTEy0udxjn6x+/exvF808noS+XgIAIIokJbn77Ni2wsTtPrbQQCAQ+liS2tralJBw4pPjsGHDJEmLFi3S5ZdfrjfeeEMTJ060uVzJstrl97fY3u67xMa6+vQL0RN+f6uCQauvlwEA+BqXyxmxPzgePHhYR44Ew7Y/jyeh21eQbIVJxy2cxsZGDRo0KDTe2NiorKysLvP/+9//avv27SooKAiNDRw4UCkpKWpoaLBz6E6OHg3/STiSL7kFg1avfE4AAKcny2rvs/OKrbNxdna2kpKStGHDhtCY3+9XTU2NcnJyusx///335fV65ff7Q2Pbt2/Xvn37NGTIkB4sGwAARCNbYRIXF6eioiKVlZXpzTffVG1traZPn660tDSNHz9ewWBQe/fu1eHDhyVJ11xzjVJSUuTz+bRlyxZt2rRJXq9Xw4cP109+8pNeeUMAACBy2b5/4fV6NXnyZM2aNUuFhYVyuVxaunSpYmNjtWfPHuXl5am6ulqSlJKSoueff16SVFhYqLvvvltDhw7V0qVL5XK5wvtOAABAxLP1jIkkuVwu+Xw++Xy+Lq9lZmaqrq6u09jgwYP19NNPn/wKAQDAaSNyn/gEAABRhzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAM22FiWZYWLFig/Px8jRgxQiUlJdqxY8dx52/ZskVTp07VJZdcotzcXHm9Xu3evbtHiwYAANHJdpiUl5ersrJSc+bM0fLly2VZloqLixUIBLrM3bdvn2677Ta53W4tW7ZMzz77rJqamlRcXKy2trawvAEAABA9bIVJIBBQRUWFvF6vCgoKlJ2drXnz5qm+vl5r167tMv/vf/+7Wlpa9Pjjj+u8887ThRdeqNLSUm3dulUfffRR2N4EAACIDrbCpLa2VocOHVJubm5ozOPxaOjQodq4cWOX+bm5uSovL5fb7f7fAZ3HDun3+092zQAAIErF2JlcX18vSUpPT+80PmDAgNBrX5eZmanMzMxOY88884zcbrdycnLsrjUkJib8z+w6nY6w7/NUcbl4hhkATBPJ35udTkevnGu7w1aYtLa2SpLi4uI6jcfHx6u5ufk7t1+2bJlefPFFzZo1S6mpqXYOHeJ0OtSvX+JJbRutPJ6Evl4CACCKJCW5v3tSL7EVJh23ZAKBQKfbM21tbUpIOP7Jsb29XfPnz9dTTz2lO++8UzfffPNJLleyrHb5/S0nvf3xxMa6+vQL0RN+f6uCQauvlwEA+BqXyxmxPzgePHhYR44Ew7Y/jyeh21eQbIVJxy2cxsZGDRo0KDTe2NiorKysb93myJEjmjlzpqqqqjRz5kxNmTLFziG/1dGj4T8JR/Ilt2DQ6pXPCQDg9GRZ7X12XrF1Ns7OzlZSUpI2bNgQGvP7/aqpqTnuMyP33HOPVq9erSeeeCIsUQIAAKKXrSsmcXFxKioqUllZmVJTU5WRkaHS0lKlpaVp/PjxCgaDampqUnJystxut1asWKHq6mrdc889Gj16tPbu3RvaV8ccAACADrbvX3i9Xk2ePFmzZs1SYWGhXC6Xli5dqtjYWO3Zs0d5eXmqrq6WJFVVVUmSHn/8ceXl5XX60zEHAACgg60rJpLkcrnk8/nk8/m6vJaZmam6urrQ3ysqKnq2OgAAcFqJ3Cc+AQBA1CFMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYw3aYWJalBQsWKD8/XyNGjFBJSYl27NjRre2Ki4u1cOHCk1ooAACIfrbDpLy8XJWVlZozZ46WL18eCo5AIHDcbQKBgO6//3698847PVosAACIbrbCJBAIqKKiQl6vVwUFBcrOzta8efNUX1+vtWvXfus2H330kSZNmqRNmzbJ4/GEZdEAACA62QqT2tpaHTp0SLm5uaExj8ejoUOHauPGjd+6zbp165Sfn69XX31VycnJPVstAACIajF2JtfX10uS0tPTO40PGDAg9No3TZ8+/SSXdnwxMeF/ZtfpdIR9n6eKy8UzzABgmkj+3ux0OnrlXNsdtsKktbVVkhQXF9dpPD4+Xs3NzeFb1Qk4nQ7165d4So4VKTyehL5eAgAgiiQlufvs2LbCxO0+ttBAIBD6WJLa2tqUkHBqTo6W1S6/vyXs+42NdfXpF6In/P5WBYNWXy8DAPA1LpczYn9wPHjwsI4cCYZtfx5PQrevINkKk45bOI2NjRo0aFBovLGxUVlZWXZ21SNHj4b/JBzJl9yCQatXPicAgNOTZbX32XnF1tk4OztbSUlJ2rBhQ2jM7/erpqZGOTk5YV8cAAA4vdi6YhIXF6eioiKVlZUpNTVVGRkZKi0tVVpamsaPH69gMKimpiYlJyd3utUDAADQHbbvX3i9Xk2ePFmzZs1SYWGhXC6Xli5dqtjYWO3Zs0d5eXmqrq7ujbUCAIAoZ+uKiSS5XC75fD75fL4ur2VmZqquru6427711lt2DwcAAE4jkfvEJwAAiDqECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAY9gOE8uytGDBAuXn52vEiBEqKSnRjh07jjt/3759+sMf/qCcnByNHj1aDz/8sFpbW3u0aAAAEJ1sh0l5ebkqKys1Z84cLV++XJZlqbi4WIFA4Fvne71ebdu2Tc8995zmz5+vdevW6aGHHurpugEAQBSyFSaBQEAVFRXyer0qKChQdna25s2bp/r6eq1du7bL/H/+85/64IMP9Nhjj+mCCy5Qbm6uZs+erZUrV6qhoSFsbwIAAEQHW2FSW1urQ4cOKTc3NzTm8Xg0dOhQbdy4scv8TZs2qX///hoyZEhobPTo0XI4HPrwww97sGwAABCNYuxMrq+vlySlp6d3Gh8wYEDota9raGjoMjcuLk4pKSnas2eP3bVKkpxOh1JTE09q2xNxOI7996GSXB0NWmHff2+IcR3ryjPPTOjjlQAAjicSzytJSfFKTIwP236dTkf312Bnxx0PrcbFxXUaj4+PV3Nz87fO/+bcjvltbW12Dh3icDjkcnX/DdqVkhy+L8Sp4nTyy1UAYCrOKzaPbWey2+2WpC4Pura1tSkhoetP7W63+1sfim1ra9MZZ5xh59AAAOA0YCtMOm7LNDY2dhpvbGzUwIEDu8xPS0vrMjcQCGj//v0aMGCA3bUCAIAoZytMsrOzlZSUpA0bNoTG/H6/ampqlJOT02V+Tk6O6uvrtW3bttDYBx98IEkaNWrUya4ZAABEKVvPmMTFxamoqEhlZWVKTU1VRkaGSktLlZaWpvHjxysYDKqpqUnJyclyu9266KKLdPHFF2v69Ol66KGH1NLSogceeEATJ0781issAADg9OZob29vt7NBMBjU3LlztWLFCh0+fFg5OTl64IEHlJmZqZ07d2rcuHF65JFHNGnSJEnSV199pYcffljvvPOO4uPjNWHCBM2cOVPx8ZH3MBAAAOhdtsMEAACgt/B7pgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMEdFhkpWVpRUrVpzy4y5cuFBjx4495ccFAMCu3bt36/XXX+/W3BUrVigrKyv09744z0Z0mAAAgBO799579c4773Rr7lVXXaV33323l1d0Yrb+rRwAABC93G633G53n64h4q+YfP7555oyZYqGDRum/Px8Pf30051e/8c//qFJkyZp+PDhuuKKK/Tkk08qEAiEXt+8ebPuuOMO5eTk6MILL9S4ceNUUVHRaR8vv/yyrrjiCg0fPlzTpk1Tc3Nzp9fXrVunSZMm6aKLLlJubq7uu+++LnMAADjVbr75Zn3wwQf661//qrFjx2r37t2aPn26cnNzdcEFF+iyyy5TaWmpLMuS1PVWzte1trbqj3/8o8aMGaNhw4Zp4sSJWrt2bdjXHPFh8uKLL2rixImqrq5WYWGh5s6dq/Xr10uS3n77bf3ud7/T9ddfr6qqKj344IP629/+Jp/PJ+nYJ/n2229XSkqKli9frqqqKk2YMEGPPfaY/vOf/0iSqqqqNHv2bE2ZMkUrV67UxRdfrJdeeil0/KamJv3617/WL37xC1VXV2vRokXauHGjHn/88VP/yQAA4GsWLlyokSNH6sorr9Qrr7yiO++8UwcOHNCf//xnrV69WrfffruWLFmit9566zv3NX/+fNXV1emZZ55RdXW1LrvsMk2fPl07d+4M65oj/lbOjTfeqIkTJ0qS7rrrLlVUVOjf//63cnNztXjxYl1//fW64YYbJEmDBg3Sww8/rFtvvVU7d+7UGWecoVtuuUU33XSTEhMTJUler1dLlixRXV2dzj//fC1btkxXXXWVbrrpJknS1KlT9a9//Uu1tbWSpIaGBgUCAZ199tnKyMhQRkaGFi9erGAweOo/GQAAfE1KSopiY2Pldrt1xhln6Nprr9WVV16p9PR0SdKUKVP07LPPqq6uTj/96U9PuK/t27crMTFR3//+9+XxePTb3/5WOTk5OvPMM8O65ogPk3PPPbfT3z0ej9ra2iRJNTU1+uSTT/TKK6+EXu/4x5S3bt2qyy+/XDfeeKOqqqpUU1Oj7du3h4Kj47LW5s2bdfXVV3c6xsiRI0Pzzj//fF1zzTWaNm2a+vfvrzFjxqigoEBXXHFFr7xfAABOhtvtVlFRkVavXq1PPvlE27ZtU11dnb788svQOe9ESkpKNG3aNOXm5mr48OEaM2aMfv7znys5OTms64z4MHG5XF3GOuLDsiwVFxfruuuu6zKnf//+2rt3r371q18pNTVVY8eOVV5enoYNG6bLL7+809xvfsFiY2M7/f2JJ57Q3Xffrbffflvvv/++fD6fRo0apeeff76nbw8AgLBoaWlRUVGRDh8+rAkTJui6667T8OHDQ3cEvsvIkSO1bt06vffee1q/fr1effVVPfXUU1qyZIlyc3PDts6ID5MT+dGPfqTPP/9c55xzTmhsw4YNeuGFF/TQQw+pqqpK+/fv15o1a0KxUVdXJ+l/cXP++efro48+0pQpU0L7+PTTT0Mff/zxx3r99dd1//336wc/+IGmTJmiVatWyefz6auvvtL3vve9U/BOAQA4sXfffVefffaZ3nvvPZ111lmSpP379+urr74KnfNOZMGCBRo1apTGjRuncePGaebMmbr66qu1Zs2asIZJxD/8eiIlJSVas2aNFi1apM8//1zr16/XzJkzdeDAAfXv319paWlqbW3V6tWrtXv3br377rv6/e9/L0mh39yZOnWq3njjDS1ZskRffPGFli1bpjVr1oSOkZSUpMrKSpWWlmrbtm3avHmzqqurde6556pfv3598r4BAOiQmJioXbt2hc5Jq1at0q5du7Rp0ybdddddOnLkSKffVj2eHTt26MEHH9T69eu1a9curVmzRrt379bIkSPDut6ovmIyYcIEzZs3T08//bQWL16slJQUjR07VjNmzAi9/tlnn+nRRx/VwYMHlZGRoV/+8pd688039emnn6qwsFAFBQV64okntHDhQs2fP18jRozQ7bffrqqqKknSkCFDtHDhQi1atEiVlZVyOp269NJL9eyzz8rpjOruAwBEgBtuuEH33nuv7r77bt1777164YUX9OSTT2rgwIG66qqrlJ6e3ulOwPE8+OCDeuyxx+Tz+bR//35lZGRoxowZuvbaa8O6Xkd7d67fAAAAnAL8SA8AAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABjECYAAMAY/x93ZOPPuHKMSAAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -484,14 +493,12 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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M2eO3nnnnZMae9VVV+ndd9/t5hl9u5D+rRwAABC53G633G53j86h118x2bVrl6ZNm6bzzz9f2dnZevrpp9u9/uabb2ry5MkaPny4rrjiCj3xxBPyer3B1z///HPddtttyszM1Hnnnadx48aptLS03T7+8pe/6IorrtDw4cM1Y8YMHTx4sN3rb731liZPnqwLLrhAWVlZuv/++zuMAQDgVLvpppu0ZcsWvfjiixo7dqz27NmjmTNnKisrS+eee64uu+wyFRYWyu/3S+p4K+erWlpa9Nvf/laXXnqpzj//fE2aNEkbN24M+5x7fZisXr1akyZNUkVFhaZOnarHH39cmzZtkiS9/fbbuvvuu3XdddepvLxcDz74oF577TXNnj1b0vEP+dZbb1VSUpLWrFmj8vJyTZgwQY8++qg+++wzSVJ5ebkWLFigadOm6eWXX9aFF16o559/Pnj8hoYG3XXXXfr5z3+uiooKPfnkk9q6dasee+yxU/9hAADwFUuXLtXIkSN15ZVXau3atbr99tt16NAhPfvss1q/fr1uvfVWrVixQm+88cZ37mvJkiXasWOHli9froqKCl122WWaOXOmampqwjrnXn8r54YbbtCkSZMkSXfccYdKS0v1ySefKCsrS8uWLdN1112n66+/XpJ01lln6aGHHtLNN9+smpoanXbaafrVr36lG2+8UfHx8ZKkgoICrVixQjt27NCwYcO0atUqXXXVVbrxxhslSdOnT9e//vUvVVZWSpLq6urk9Xp1xhlnKC0tTWlpaVq2bJl8Pt+p/zAAAPiKpKQkRUdHy+1267TTTtM111yjK6+8UgMGDJAkTZs2Tc8884x27Nihn/70p9+6ry+++ELx8fE688wz5fF49Otf/1qZmZnq06dPWOfc68Nk0KBB7X7t8XjU2toqSdq+fbs+/vhjrV27Nvh62z+mvHPnTl1++eW64YYbVF5eru3bt+uLL74IBkfbZa3PP/9cV199dbtjjBw5Mjhu2LBhmjhxombMmKG+ffvq0ksvVU5Ojq644opuOV8AADrD7XYrNzdX69ev18cff6yqqirt2LFD//3vf4Nr3rfJz8/XjBkzlJWVpeHDh+vSSy/Vz372MyUmJoZ1nr0+TFwuV4dtbfHh9/uVl5ena6+9tsOYvn376ssvv9Qvf/lLpaSkaOzYsRozZozOP/98XX755e3Gfv03LDo6ut2vFy9erDvvvFNvv/22/vGPf2j27NkaNWqU/vSnP3X19AAACIvm5mbl5ubqyJEjmjBhgq699loNHz48eEfgu4wcOVJvvfWW3nvvPW3atEkvvfSSnnrqKa1YsUJZWVlhm2evD5Nv86Mf/Ui7du3S2WefHdy2efNmPffcc5o/f77Ky8t14MABbdiwIRgbO3bskPT/cTNs2DB9+OGHmjZtWnAf27ZtC/780Ucf6dVXX9VvfvMb/fCHP9S0adP0yiuvaPbs2dq3b59OP/30U3CmAAB8u3fffVeffvqp3nvvPf3gBz+QJB04cED79u0Lrnnfpri4WKNGjdK4ceM0btw4zZ07V1dffbU2bNgQ1jDp9Q+/fpv8/Hxt2LBBTz75pHbt2qVNmzZp7ty5OnTokPr27avU1FS1tLRo/fr12rNnj959913dc889khT85s706dP117/+VStWrNB//vMfrVq1Shs2bAgeIyEhQWVlZSosLFRVVZU+//xzVVRUaNCgQUpOTu6R8wYAoE18fLx2794dXJNeeeUV7d69W++//77uuOMOHT16tN23VU+kurpaDz74oDZt2qTdu3drw4YN2rNnj0aOHBnW+Ub0FZMJEyaoqKhITz/9tJYtW6akpCSNHTtWs2bNCr7+6aef6pFHHtHhw4eVlpamX/ziF3r99de1bds2TZ06VTk5OVq8eLGWLl2qJUuWaMSIEbr11ltVXl4uSRoyZIiWLl2qJ598UmVlZXI6nbrkkkv0zDPPyOmM6O4DAPQC119/vebMmaM777xTc+bM0XPPPacnnnhC/fv311VXXaUBAwa0uxNwIg8++KAeffRRzZ49WwcOHFBaWppmzZqla665JqzzdQRO5voNAADAKcAf6QEAgBmECQAAMIMwAQAAZhAmAADADMIEAACYQZgAAAAzCBMAAGAGYQIAAMwgTAAAgBmECQAAMIMwAQAAZvwfEgeMJEaaM0cAAAAASUVORK5CYII=", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -519,38 +526,32 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiYAAAG1CAYAAADN1D82AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy89olMNAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAy4ElEQVR4nO3df1zV5f3/8SfnwOEgcARKwzDLuQVaOqx04yMU1UdracvMbWFk1sBZbpgpmfu4Sm0/CpVCh80Et2rkPjNXzShp/f7hSGsrN0KbmeEPxEI98vPIOef7h1/Op9PxBweOeYGP++3GjeP1vq7r/XrT7db19H293xjm9Xq9AgAAMIDlVBcAAADQjmACAACMQTABAADGIJgAAABjEEwAAIAxCCYAAMAYBBMAAGAMggkAADAGwQQAABiDYAJ0E/fcc4+Sk5OP+fXiiy92eK6lS5cqOTm507U4nU4tW7ZM1157rYYPH660tDTdcssteuWVV4Keq7KyUsnJyaqsrOx0PV/24Ycf6qqrrpLL5ZIkvfPOO0f9ef3kJz/xG7du3TqNHTtWw4YN0/e+9z395S9/8Tve0NCgvLw8XXzxxbr++uv14Ycf+h2vq6vTyJEjVVNT49fucrl09dVX65///GdIrg/o6cJPdQEAOq5Pnz5atmzZUY+dd955HZ7nBz/4gTIyMjpVw7Zt25SbmyuPx6PJkycrJSVFTU1N+utf/6rbb79dM2bM0B133NHh+S644AL96U9/0je/+c1O1fNlra2tmjNnjvLz82Wz2SRJH330kWJiYlRSUuLX1+Fw+D6vX79es2fP1uTJk5WRkaG//e1vuueee2Sz2TR27FhJ0m9/+1tt2bJFS5Ys0UsvvaQZM2Zo/fr1vvMsW7ZM3//+93XOOef4ncdms2n27NmaM2eOnn32Wdnt9i5fJ9CjeQF0C3PmzPFefvnlp7QGl8vlHTdunHfMmDHezz//POD4vHnzvOeff773o48+OgXVeb2lpaXecePG+bXNmjXLm5WVddxxY8aM8c6YMcOvbcaMGd7Ro0f7/nzdddd5S0pKvF6v13vgwAHv+eef7926davX6/V6//Of/3hHjBjh/eKLL455jrFjx3pLS0uDuRzgtMRWDtDDuN1urVixQuPGjdOwYcOUmpqqG2+8UX//+999fb66lXPzzTdr9uzZysvLU2pqqm699dajzv36669r69atmjFjhs4444yA43l5ecrOzlZbW5uvbfPmzfrxj3+s73znO7rooos0bdo0ffzxx77jX93KWbp0qUaPHq3XXntN1157rS688EJdddVVeuaZZ4573S6XS6tWrdK4ceP82qurqzV48OBjjtu5c6c+/fRTjR492q/9qquu0o4dO/Tpp59KksLCwhQZGSlJioiIkHTkZy1Jixcv1uTJk5WQkHDM81x77bVatWqVb4sJwNERTIBupq2tLeDL+6V/JHzRokUqLi7Wj370I61cuVILFy7UgQMHNGPGDDU3Nx9z3hdeeEHR0dFavny5cnJyjtrnjTfekNVq1WWXXXbU43369NEvfvELXXjhhZKkv//978rKypIk/epXv9IDDzygPXv26MYbb9S2bduOWcu+ffu0YMECTZ48WStWrFD//v01Z86c446prKzU3r17NWbMGF9ba2urtm/frl27dum6667ThRdeqMsvv1wlJSW+n1n7nF/dCjv33HMlSdu3b5ckpaam6sUXX1R9fb2efvppnXHGGRo4cKDee+89ffDBB8cMc+2uvvpq7d27V+++++5x+wGnO54xAbqRXbt26YILLghonzVrlqZOnSrpyEOYM2fO1M033+w7HhkZqZ/97GfasmWLUlNTjzp3RESE5s+f73tm4mhqa2sVHx+v6OjoDtW7ePFinXvuuVqxYoWsVqskKT09XaNHj1ZRUZEeeeSRo45rbm7WL3/5S6WlpUk6Ehouv/xyvf766xo0aNBRx/z973+Xw+HQwIEDfW1bt25VW1ubtm/frpkzZ6p37956+eWXVVBQIKfTqZkzZ6qhoUGSFBMT4zdf+zW2H//Zz36mGTNmKC0tTX369FFBQYEiIyNVUFCg22+/Xa2trbr77rv1ySefaPTo0ZoxY4bvmqUjQad3797asGGD0tPTO/TzA05HBBOgG+nTp4+WL18e0J6YmOj7vHjxYklSfX29PvnkE+3YsUOvvvqqJB13G+Eb3/jGcUOJJFmtVt/2xYk0NTVp8+bN+ulPf+q3QDscDl/IOJ4vB6j262tqajpm/5qaGiUlJfm1nXfeeVqxYoWGDh3q22ZJS0tTS0uLSkpKlJOTI4/Hc9w6LJYjN5YTEhL0xBNPqKmpSb169ZIkVVRU6PPPP9ePfvQjzZw5U9HR0SoqKtKdd96pvn37Kjs722+us88+Wzt37jzu+YDTHcEE6EZsNpuGDh163D6bN2/W/PnztXnzZkVFRemb3/ymzj77bEny2/L5qo7cBUlKStJrr72mxsbGY/avra1VYmKiDh06JK/XqzPPPDOgz5lnnqlDhw4d91xRUVG+z+3h4Hj1NzQ0+I2RpNjY2KNuO2VmZurPf/6ztm3bptjYWElSY2NjwHxS4J2U9lDS1tamxYsX684775QkvfLKK1q9erW+9a1vafz48Vq/fn1AMImKivLNC+DoeMYE6EEaGhqUk5OjXr166fnnn9f777+vNWvW6IYbbgjJ/Onp6fJ4PHrzzTePery+vl5XXnmlfvnLXyo2NlZhYWH6/PPPA/rt27dPcXFxIampXXx8fEDYqaqqUllZWcBdkZaWFklH7oK0b/3s2LHDr0/7n4+1dfTnP/9ZUVFRGjt2rA4cOCC3263evXtLknr37n3U63Y6nSG/bqCnIZgAPcgnn3yiAwcOaPLkyfrmN7/pu9PwxhtvSNIJty1OJD09Xeeff74KCwu1f//+gOOLFy9WW1ubrr32WvXq1UsXXnihXnjhBb/tn0OHDum1117TxRdf3KVavurss89WbW2t312VrVu3av78+dqwYYNf3/LyciUlJal///4699xz1b9/f61fv96vT0VFhc477zz1798/4FyNjY367W9/q1mzZiksLEzx8fGyWCzat2+fpCPP+Xz1rSWv16u9e/cGbDcB8MdWDtCDDBw4UDExMXr00UcVHh6u8PBwrV+/XmvWrJGk476V0xHh4eF66KGHdNttt+mGG27w/YK1+vp6rV27Vm+++aZmzZqlYcOGSTryUO6Pf/xjTZ06VZMmTdLhw4e1YsUKuVwuTZ8+vcvX+2WjRo3SihUrtHXrVt+r0FdddZVWrlypOXPm+J77WLdunV555RUVFRX5gtv06dM1d+5cxcXF6YorrtDLL7+sF154QYWFhUc916pVqzRo0CDfL6kLDw9Xenq6li9frptvvllPP/20Jk+e7Ddm69atOnToUKd/sR1wuuCOCdCDxMbGqri4WF6vVzNmzNDdd9+t3bt368knn1R0dLQ2bdrU5XMMHjxYa9as0RVXXKGnnnpK06ZN0wMPPCC3262VK1f63g6SjjxoumrVKrW0tOiuu+7SL37xC5111ln63//9X51//vldruXLLrnkEp1xxhl+D9VGRUVp1apV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+IamTJmi5557Tvn5+friiy90xhlnfA1XCgDA8b311lv697//rbfffltnnnmmJOnAgQP64osvfGve8RQVFeniiy/WlVdeqSuvvFJz587V2LFjtX79+pAGk27/8Ovx5Obmav369Vq2bJm2b9+uDRs2aO7cuTp06JD69OmjxMRENTc368UXX9Tu3bv11ltv6a677pIk35s7U6dO1UsvvaSVK1fq008/1RNPPKH169f7zhETE6OysjIVFBRox44d2rp1q8rLy3XeeecpPj7+lFw3AADtoqOjtWvXLt+a9Nxzz2nXrl3atGmT7rjjDh0+fNjvbdVjqamp0X333acNGzZo165dWr9+vXbv3q3hw4eHtN4efcfk6quvVmFhoX73u9/p0UcfVVxcnK644grNnj3bd/zf//63fvOb36ihoUFJSUn6wQ9+oJdfflmbN29WVlaWMjMztXjxYi1dulSPPPKIUlNTddttt2ndunWSpEGDBmnp0qVatmyZysrKZLFY9N3vflePPfaYLJYenfsAAN3AjTfeqDlz5mj69OmaM2eOHn/8cT388MM666yzdM0116hfv35+OwHHct999+nBBx9Ufn6+Dhw4oKSkJM2ePVvXXXddSOsN83bk/g0AAMDXgL/SAwAAYxBMAACAMQgmAADAGAQTAABgDIIJAAAwBsEEAAAYg2ACAACMQTABAADGIJgAAABjEEwAAIAxCCYAAMAYBBMAAGCM/weA/+rg3cZTcQAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAEJCAYAAACXCJy4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAEeJJREFUeJzt3X2YXGV5gPF7NyERSIC4XWuCIKj1sUgNKKAoIJWUS1E+lFg1agXFWBW/ACs2qQQlaq2UqkWlYAU/VotUUTRAmwbqVzEEBCLgo7FgbQhtDKEkafjc7R/nLA7TTXZ2d7Kz63v//smec94z551cV+45OXNmtmtgYABJ0m+/7k5PQJI0Pgy+JBXC4EtSIQy+JBXC4EtSIQy+JBViaqcnoHJExCeBI+rF/YA7gK318qGZubVp/E3AkZl57zYe7yRgfma+rIVjvww4A9gdmAb8BDgjM381zH4XAV/NzOXDHaNpv7cCj2Tm30XEHwNnAQ8D/wm8LTN/WY+7AdgZeLDe9cuZ+VcR8VzgwnrdmZm5rB6/GLg7My9qONaXgHMy86cjmaPK0+V9+OqEiLiTKtarxvAYJ9FC8CNiAbAYOC4z10REF3Am8CbgmZn5wGjnsI3jPRm4FHge8DRgJXBEZq6OiCOAczPz4IjYFVgL9GbmQ02P8XXgY8CdwLcz86CI2Bv4AvCHmTnQMPYpQB/Vi6b/oLVNnuFrwoiIB4BvAnOB1wLXU8Xw1xHxfuANVGfJPwdOatp3PvCXwDGZmU0PvRRYmJlrADJzICI+CvwSmA48EBF/AbymfvyfAadm5t0RcS3wt8Aq4F+AZcBzgccDizLzH4Z4Ku8HvlgfZy5wc2auro/93YjYJyL2AfYFNgPfiYjZwHLgz+v/6TwA7ALsym/O/j8O/Flz1DPz3yPiXuC4+u9PGpLX8DWRTAOuyMxoPPOPiOOoAn9oZu5PdSno1IbtC4AlVJd/HhP7iOgB9gF+0Lg+Mwcysy8z74uIk4GXAAdn5rOoLvdcPMT8ngJcnZmHAO+jOgN/jPp/DycC365X/RjYPyIOqLcfC/QAs4GZwDXAfOBgYG/gI/V+HwLOBr4MnBER84BNmblyqL844ArgFdvYJgGe4Wvi+d4Q6+YBX8vMjQCZeRo8eknnYODFwLu3cT2+v/5zeyc3LwE+n5lb6uVPAIsiYlrTuIeozvABbqQ6y2/WA+yRmXfWc/1FRLwR+GxETKc6A78ZeDAzvwV8a3DHiPgw8PX6udwGHF6v3wn4V+CEiHgTcALVpaB3NVyO+gXw+u08R8kzfE04m4dY9zDQeM16j/qSCMC9wNHAkoZ1j6pfJH5GdT39MSLi0vqSS/O/g26qk6GupvUPZubgC8jAENuheoHpioju+hjTgTWZ+bzMPBA4h+pSzh0RcWx9TX9QF9WLSrN3AV8F/hc4DTge+BXwuoYxU4BHhthXepTB12SwHHhFROxWLy+hCh/AzzNzBfAp4AuDoW1yNvCJiHgaQERMqe92OQD4KXA1cHL9JirAO4HvjubN3My8B9gIPLleNR34QUTsVS+/B/h+Pe5JwMcjYueImFI/p8e8J1Bf23858Gmqf69dVC82/VTX+Ac9pX4u0jYZfE149S2Jn6cK52rgicCipmFLqd7gfO8Q+/cBHwa+Ut/qeSvVbaEvqqP+OaoXlZURcTvwbKo3jUfrH6kuM5GZ9wFvBq6sH/tQfvOG8wVUl2pupIr1ZuCDTY/1Mao3hx+uH+tyYDXwR8CXGsa9GPjaGOasAnhbptRmEbEvcBlw0HjcJhkRT6V6c9fbMrVdnuFLbZaZdwCXAG8Zp0OeA5xi7DUcz/AlqRCe4UtSIQy+JBWi0x+8mk71wZl1eA+xJLVqCtWnta+n+hqOlnQ6+Acz9CcrJUnDOxz4fquDOx38dQAbN26hv3/kbx739Mxgw4ahPpgpSRPfaBvW3d3FrFm7Qt3QVnU6+I8A9PcPjCr4g/tK0mQ1xoaN6FK4b9pKUiEMviQVwuBLUiEMviQVwuBLUiEMviQVwuBLUiE6fR/+mDz40CP09s7syLHvf+BhNt23tSPHlqTRmNTBn7bTFI49/ZsdOfYV5x7Ppo4cWZJGx0s6klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klQIgy9JhTD4klSIqa0MiogFwGJgGnBeZp7ftP3ZwAX19l8Br8vMe9s8V0nSGAx7hh8RewJLgcOAucDCiNivadgngA9k5lwggTPaPVFJ0ti0cklnHrAiM+/JzC3AZcD8pjFTgN3qn3cBtrZvipKkdmjlks4cYF3D8jrgkKYxpwH/HBF/A2wBntue6UmS2qWV4HcNsa5/8IeI2Bn4HHBUZq6MiNOALwAvbXUSPT0zWh06ofT2zuz0FCRNcuPZkVaCvxY4vGF5NnBXw/L+wNbMXFkvXwB8aCST2LBhM/39AyPZBeh8cNev39TR40ua3Hp7Z46qI93dXaM6UW7lGv5y4KiI6I2IXYATgasatq8B9oqIqJePB64f8UwkSTvUsMHPzLXAIuAa4Cagr750sywiDsrMjcBJwKURcQvwRuDkHThnSdIotHQffmb2AX1N645p+PlK4Mr2Tk2S1E5+0laSCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCjG1lUERsQBYDEwDzsvM85u2B3ABMAu4G3h1Zm5s81wlSWMw7Bl+ROwJLAUOA+YCCyNiv4btXcC3gI9m5lzgx8CZO2a6kqTRauWSzjxgRWbek5lbgMuA+Q3bnw1sycyr6uUPA+cjSZpQWrmkMwdY17C8DjikYflpwN0RcQlwILAaeEfbZihJaotWgt81xLr+psc4EjgiM1dFxIeAvwZOanUSPT0zWh06ofT2zuz0FCRNcuPZkVaCvxY4vGF5NnBXw/LdwM8zc1W9/BWqyz4t27BhM/39AyPZBeh8cNev39TR40ua3Hp7Z46qI93dXaM6UW7lGv5y4KiI6I2IXYATgasatv8Q6I2IufXyscANI56JJGmHGjb4mbkWWARcA9wE9GXmyohYFhEHZeZW4OXAhRFxK/Ai4PQdOWlJ0si1dB9+ZvYBfU3rjmn4+Uc89o1cSdIE4ydtJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCmHwJakQBl+SCtFS8CNiQUTcFhFrIuLt2xn30oi4o33TkyS1y7DBj4g9gaXAYcBcYGFE7DfEuN8FPg50tXuSkqSxa+UMfx6wIjPvycwtwGXA/CHGXQSc3c7JSZLap5XgzwHWNSyvA57UOCAi3gncCFzXvqlJktppagtjhrpE0z/4Q0TsD5wIHEXTC0GrenpmjGa3juvtndnpKUia5MazI60Efy1weMPybOCuhuVX1utWAdOAORHxvcxs3Ge7NmzYTH//QKvDH9Xp4K5fv6mjx5c0ufX2zhxVR7q7u0Z1otxK8JcDSyKiF9hCdTa/cHBjZp4FnAUQEfsA144k9pKk8THsNfzMXAssAq4BbgL6MnNlRCyLiIN29AQlSe3Ryhk+mdkH9DWtO2aIcXcC+7RjYpKk9vKTtpJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUCIMvSYUw+JJUiKmtDIqIBcBiYBpwXmae37T9eOBsoAu4Azg5Mze2ea6SpDEY9gw/IvYElgKHAXOBhRGxX8P23YDPAC/NzLnALcCSHTJbSdKotXJJZx6wIjPvycwtwGXA/IbtOwFvy8y19fItwN7tnaYkaaxauaQzB1jXsLwOOGRwITM3AJcDRMTOwJnAp9o4R0lSG7QS/K4h1vU3r4iI3anCf3NmXjKSSfT0zBjJ8Amjt3dmp6cgaZIbz460Evy1wOENy7OBuxoHRMRs4GpgBfCekU5iw4bN9PcPjHS3jgd3/fpNHT2+pMmtt3fmqDrS3d01qhPlVoK/HFgSEb3AFuBEYOHgxoiYAnwbuDQzzxnxDCRJ42LY4Gfm2ohYBFxDdVvmRZm5MiKWAR8A9gIOBKZExOCbuasy85QdNWlJ0si1dB9+ZvYBfU3rjql/XIUf4JKkCc9QS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhDL4kFcLgS1IhpnZ6ApLUSTN325nHTe9MCh986JFxPZ7Bl1S0x02fyrGnf7Mjx77i3OPH9Xhe0pGkQhh8SSqEwZekQhh8SSqEwZekQhh8SSpES7dlRsQCYDEwDTgvM89v2n4AcCGwO/Bd4E8z8+E2z1WSNAbDnuFHxJ7AUuAwYC6wMCL2axr2JeAdmfl0oAt4c7snKkkam1bO8OcBKzLzHoCIuAyYD3ywXn4ysHNmXlePvxg4G/hMC489BaC7u2tks27whFk7j3rfsRrLvCVNHJOtIw37TBnJfq0Efw6wrmF5HXDIMNuf1OLxZwPMmrVri8P/v88tPnrU+45VT8+Mjh1bUvtM4o7MBn7R6uBWgj/Uy0//CLZvz/XA4VQvEuP7pRKSNHlNoYr99SPZqZXgr6WK8qDZwF1N25+4ne3b8wDw/RbHSpJ+o+Uz+0Gt3Ja5HDgqInojYhfgROCqwY2Z+Uvg/oh4Qb3qT4ArRzoRSdKONWzwM3MtsAi4BrgJ6MvMlRGxLCIOqoe9FjgvIm4HdgU+uaMmLEkana6BgYFOz0GSNA78pK0kFcLgS1IhDL4kFcLgS1IhJkTwI+LIiLh2oj+mJLUiInaPiMuHGXNT/eeSiFgyHvOaEMGXpN8ys4ADtjcgM7e7fUdo6euRx0lvRCwDngok8ErgVcC7qV6YbgDenpn3R8SpwOup7vnvB16VmbdHxNHAecD9wE8HHzgiTgPeUI9dmZlvGb+nJalAnwTmRMQ3gNuAo4DHA78GXpGZd0fEQGY++tU0EbET8PfA/vWqT2fmhe2c1EQ6w98beDvw+1Rf1XAK1dcsP79+Jfxv4IyI2A04ATgyM/cHLgfeFhHTgUuA+Zn5HGArQERMBd4PHAQ8B+ivv/JZknaUd1J9xcx7gWdQdezpwBqqD6oO5fnA4zPzQKpvKX7BNsaN2kQK/s2ZeUdm9gO3A78D/B5wXX2t63jgGZl5H7AAeHVEfAQ4FpgB/AFwV2beXj/eJQD1L2L5IdWXDJ0FnF9/eliSdqjMXAOcDpwSEecCh1L1aig/ASIirgZeB7yv3fOZSMFv/A1ZA8C9wKWZeUB9hn8IcGpE7AX8G7AH1Xf2XEz1jZ0DPPb5ND7eCcBb63FXRcQLd9STkKRBEfEc4J+o2nQZ8A2G/oZhMnMD8EzgU0AAN0bEHu2cz0QK/lBeHhFPiIguql+o8m7gYGBNZp4H/Ah4CdVXhd4CPCEi5tb7vgYgInqp/sewOjM/QPWX/6zxfRqSCvMw1XukLwSuzczPUl3LP5pt/NKSiDiO6rcHfofqktBmYK92TmoiB/9/qH5z1grgVqq5fpT61TIibgOuA+4E9s3Mh6gi/8WIuBHYBSAz1wMXANdHxA1U755fPK7PRFJp/gv4D6pLznMj4haqlt0C7LuNfa6keu/xVmAl8PXMXN3OSfnlaZJUiIl8hi9JaiODL0mFMPiSVAiDL0mFMPiSVAiDL0mFMPiSVAiDL0mF+D91rn2QirIn8gAAAABJRU5ErkJggg==\n", + "image/png": "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o0aNlJWVpV69eulPf/qTBg4cKEk6c+aMXnnlFe3cuVN+fn7q27evpk6dKj+/mnfPDQAA3FoehwkAAMCtwtc5AACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABijRodJq1attGXLll/9fZcsWaIHH3zwV39fAAA8dfLkSX388cc3NHfLli1q1aqV++fqOM/W6DABAADXN3nyZO3cufOG5j766KP66quvbvGKrs+jvysHAADUXjabTTabrVrXUOOvmBw9elQjRoxQu3bt1K1bN61cubLM61988YUGDhyo9u3bq3fv3lq4cKFKSkrcrx8+fFijR49WRESE2rZtq169eikxMbHMPt5//3317t1b7du315gxY3T+/Pkyr2/fvl0DBw7U/fffr8jISE2ZMqXcHAAAfm3Dhw/X3r179cEHH+jBBx/UyZMnNX78eEVGRuq+++5T9+7dFR8fL6fTKan8rZyfKioq0rRp0xQVFaV27dqpf//+SktLq/I11/gw2bBhg/r376+UlBQNGTJECxYs0O7duyVJO3bs0IsvvqinnnpKycnJmjlzpj755BNNmjRJ0tUP+dlnn1VQUJA2btyo5ORk9e3bV2+88YYOHjwoSUpOTtbs2bM1YsQIffTRR+rUqZPee+899/vn5eVp3LhxeuKJJ5SSkqKlS5dq3759evPNN3/9DwMAgJ9YsmSJOnbsqEceeUSbNm3SH/7wB124cEFr167Vtm3b9Oyzz2r16tX6/PPPf3FfixYt0qFDh7Rq1SqlpKSoe/fuGj9+vLKysqp0zTX+Vs7QoUPVv39/SdJzzz2nxMREffvtt4qMjNSKFSv01FNPafDgwZKkxo0b65VXXtHTTz+trKws3XHHHfrXf/1XDRs2THXq1JEkxcXFafXq1Tp06JBat26t9evX69FHH9WwYcMkSaNGjdJf//pXZWRkSJJycnJUUlKihg0bKiwsTGFhYVqxYoUcDsev/2EAAPATQUFB8vHxkc1m0x133KF+/frpkUceUYMGDSRJI0aM0Ntvv61Dhw7poYceuu6+jh8/rjp16uiee+6R3W7XCy+8oIiICNWtW7dK11zjw6Rp06Zlfrbb7SouLpYkpaena//+/dq0aZP79dK/TPnIkSPq0aOHhg4dquTkZKWnp+v48ePu4Ci9rHX48GE99thjZd6jY8eO7nmtW7fW448/rjFjxqhevXqKiopSdHS0evfufUuOFwCAm2Gz2RQTE6Nt27Zp//79OnbsmA4dOqQff/zRfc67ntjYWI0ZM0aRkZFq3769oqKi9Pvf/16BgYFVus4aHyZWq7XcWGl8OJ1OjRw5UgMGDCg3p169ejp9+rT+5V/+RSEhIXrwwQfVtWtXtWvXTj169Cgz9+f/wXx8fMr8PH/+fI0dO1Y7duzQf/3Xf2nSpEnq3Lmz3n333coeHgAAVaKwsFAxMTG6dOmS+vbtqwEDBqh9+/buOwK/pGPHjtq+fbt27dql3bt368MPP9Ty5cu1evVqRUZGVtk6a3yYXM+9996ro0ePqkmTJu6xPXv2aN26dZo1a5aSk5N17tw5paamumPj0KFDkv4vblq3bq2//OUvGjFihHsfBw4ccP/5b3/7mz7++GP98Y9/1D/90z9pxIgR2rp1qyZNmqQzZ87ozjvv/BWOFACA6/vqq6/03XffadeuXbrrrrskSefOndOZM2fc57zrWbx4sTp37qxevXqpV69emjp1qh577DGlpqZWaZjU+Idfryc2NlapqalaunSpjh49qt27d2vq1Km6cOGC6tWrp9DQUBUVFWnbtm06efKkvvrqK02YMEGS3N/cGTVqlD799FOtXr1aP/zwg9avX6/U1FT3ewQEBCgpKUnx8fE6duyYDh8+rJSUFDVt2lTBwcHVctwAAJSqU6eOTpw44T4nbd26VSdOnNDXX3+t5557TpcvXy7zbdWKZGZmaubMmdq9e7dOnDih1NRUnTx5Uh07dqzS9dbqKyZ9+/ZVQkKCVq5cqRUrVigoKEgPPvigJk6c6H79u+++0+uvv66CggKFhYXpySef1GeffaYDBw5oyJAhio6O1vz587VkyRItWrRIHTp00LPPPqvk5GRJUvPmzbVkyRItXbpUSUlJslgs+u1vf6u3335bFkut7j4AQA0wePBgTZ48WWPHjtXkyZO1bt06LVy4UHfffbceffRRNWjQoMydgIrMnDlTb7zxhiZNmqRz584pLCxMEydOVL9+/ap0vV6uG7l+AwAA8Cvgf+kBAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDEIEwAAYAzCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADG+P91TpIcpi9c7QAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" }, { "data": { - "image/png": "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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiYAAAG1CAYAAADN1D82AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy89olMNAAAACXBIWXMAAA9hAAAPYQGoP6dpAAArrElEQVR4nO3de1hVdaL/8Q97c5VLQIkg5Fg2Qpr30OEohlpqlzkZYxcLzUrUMikrbCzH8tJYgeJtyCtdNI+eUafMYcyuZuZRs1N2YsDGLC8JWCgoIFv33r8//LFHQoytW/mC79fz9ATf/V1rfff2eVxv11qol9PpdAoAAMAAloZeAAAAQDXCBAAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAdeLvXwRwsREmgOGGDh2q2NjYGv9df/31GjZsmLZt23ZBjmmz2fTnP/9Z77zzTr3mb9myRY8++qgSExPVqVMnDRgwQC+99JJ+/vlnt489dOhQDR061O3t6jJ69Gj99a9/rbHWlJQUxcfHq2fPnho7dqz27t1bY5usrKxan3lsbKyWLFnimvPee++pX79+6tGjh1544QXZ7fYa+5g+fbomTpxYaz2rVq3SyJEjPfb+gKbGi7+SHjDb0KFDdezYMT333HOSJLvdrsOHD+u//uu/tG3bNq1Zs0a//e1vPXrM/fv3q1+/fpo+fbqSk5PPOjczM1OLFy/WwIEDNXDgQIWGhqqgoECLFi2Sn5+fli1bpqioqHof+1//+pck6Zprrjmv9yBJa9as0dKlS7V69WpZLBbt2LFDQ4cOVb9+/TR48GBVVFQoOztbJSUleueddxQeHi5JGjVqlCoqKvTkk0/W2F/Lli0VERGhkpIS9e3bV/fff786dOigP/3pT3rsscd0zz33SDr1+d1xxx1at26dWrRoUWMfTqdTycnJuu+++zR48ODzfo9Ak+MEYLSUlBRnSkpKrfHy8nJnx44dnS+++KLHj7lv3z5n27ZtnatXrz7rvHXr1jnbtm3rfPXVV2u9tmfPHmfnzp2dY8aM8fj66qOystKZkJDgXL9+vWts1KhRzttuu81pt9tdY4WFhc64uDjn4sWLXWOJiYnOrKysOvf93nvvObt27ep0OBxOp9PpnDp1qnPs2LGu15988klnRkZGndv/4x//cCYkJDgrKyvP5a0BTRq3coBGKiAgQH5+fvLy8qox/v777ys5OVkdOnRQz549NW3aNFVUVLhenzt3rm666SZ9/PHH+v3vf6/rrrtOAwYM0FtvvSXp31dLJGnChAnq27dvnWtYuHChrrnmGt1///21XmvdurXS09PVpUsX17MqVVVV+stf/qKBAweqQ4cO6t+/vxYuXCiHw+Ha7pe3cmJjY/Xmm2/q2WefVffu3dWlSxc99thj+umnn876+axevVpVVVXq06ePa6xTp066//77ZbH8+7e+Fi1aKDg42HU7p6SkREVFRbr22mvr3LeXl5d8fX1dn72Pj4/rPeTl5WnTpk1nvV3Tp08fVVVVafXq1Wd9D8CliDABGgGn06mTJ0/q5MmTOnHihA4dOqQZM2bIZrPpD3/4g2veO++8ozFjxujqq6/WX/7yFz366KNau3atHnnkkRoPsh46dEhTpkzRsGHDtHDhQsXExOjpp5/W7t27FRERoXnz5kmSHn74YdfXv3To0CHl5+crKSmpVhxVu/fee/XQQw/Jy8tLTqdTo0eP1uLFi3XnnXdq/vz5GjhwoGbNmuW6TVWXrKwsORwOzZw5U+PHj9dHH32kP//5z2fdZu3atUpKSpKvr69r7OGHH651+2Tbtm0qLS113Q7Lz8+XJH388cfq06eP2rdvr0GDBmnjxo2uba677jodPXpU77//voqKivTxxx+rW7dukqSMjAylpqYqJCSkzrX5+fmpT58+9X6GB7iUeDf0AgD8uu3bt6t9+/a1xp944gm1adNG0ql4yczMVGJiojIzM11zWrdureHDh2vjxo1KSkqSJFVWVuqFF15QQkKCa06fPn20ceNGPfjgg66rBa1atVK7du3OuKaDBw9KkmJiYur1Hj755BN99tlnmjlzpm699VZJUs+ePeXv76/Zs2dr2LBhdT4r07ZtW02fPt31/c6dO7V+/fo6j3Xs2DF9/fXXuvnmm8+6ppKSEv3pT39SRESEBg0aJEn65z//KelUeE2bNk02m03Lli3T6NGjtXDhQiUmJqpFixZ6/vnnNX78eB0/flwDBgzQfffdp08//VTfffed5s+fr1WrVun1119XaGioJkyYUOtz7NChg3Jzc3Xs2DEFBQX96ucHXCoIE6ARaN++vSZPnizpVICUlZXpk08+UVZWlioqKjRu3Dh99913Kiws1KhRo3Ty5EnXtvHx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QdqwYYPH19zow2TZsmUaNGiQcnNzNWTIEM2cOVNbtmyRJH3yySd6/PHHddddd2ndunV67rnn9I9//EPp6emSTn3IDz74oEJDQ7VixQqtW7dOAwcO1EsvvaR//vOfkqR169ZpypQpGj58uN5++2117dpVb775puv4JSUlevTRR/WHP/xBubm5mjdvnrZv366XX3754n8YAACcZu7cuerSpYtuvvlmrVq1Sg8//LCOHj2qV199VevXr9eDDz6oxYsX68MPP/zVfc2ePVsFBQVauHChcnNz1bt3b40bN0779+/36Job/a2ce++9V4MGDZIkPfLII8rJydH//d//KSEhQfPnz9ddd92le+65R5LUqlUrTZ48Wffff7/279+vZs2aadiwYbrvvvsUGBgoSUpLS9PixYtVUFCga6+9VkuXLtUtt9yi++67T5I0cuRIffnll8rPz5ckFRUVyWazqWXLloqOjlZ0dLTmz58vu91+8T8MAABOExoaKh8fH/n7+6tZs2a6/fbbdfPNNysqKkqSNHz4cC1atEgFBQW68cYbz7qvvXv3KjAwUFdeeaVCQkL02GOPKT4+XpdddplH19zow6R169Y1vg8JCVFVVZUkKS8vTzt37tSqVatcr1f/m4W7d+/WDTfcoHvvvVfr1q1TXl6e9u7d6wqO6stau3bt0q233lrjGF26dHHNu/baa3Xbbbdp9OjRat68uXr27KmkpCTddNNNF+T9AgBwLvz9/ZWSkqL169dr586d+uGHH1RQUKCffvrJdc47m9TUVI0ePVoJCQnq2LGjevbsqd///vcKDg726DobfZhYrdZaY9Xx4XA4NGLECN1xxx215jRv3lyHDh3S3XffrfDwcPXt21e9evVShw4ddMMNN9SY+8tfMB8fnxrfz5gxQ2PGjNEnn3yizz77TOnp6erWrZtef/318317AAB4REVFhVJSUnT8+HENHDhQd9xxhzp27Oi6I/BrunTpoo0bN2rz5s3asmWL3nrrLb3yyitavHixEhISPLbORh8mZ/Pb3/5We/bs0W9+8xvX2NatW/XGG2/o+eef17p163TkyBG9++67rtgoKCiQ9O+4ufbaa/XFF19o+PDhrn18/fXXrq+/+uor/f3vf9czzzyjq6++WsOHD9fatWuVnp6un3/+WZdffvlFeKcAAJzdp59+qm+++UabN2/WFVdcIUk6cuSIfv75Z9c572zmzJmjbt26qV+/furXr58mTJigW2+9Ve+++65Hw6TRP/x6NqmpqXr33Xc1b9487dmzR1u2bNGECRN09OhRNW/eXJGRkaqsrNT69ev1448/6tNPP9UTTzwhSa6f3Bk5cqTee+89LV68WN9//72WLl2qd99913WMoKAgLV++XBkZGfrhhx+0a9cu5ebmqnXr1goLC2uQ9w0AQLXAwEAdOHDAdU5au3atDhw4oM8//1yPPPKITpw4UeOnVeuyb98+Pffcc9qyZYsOHDigd999Vz/++KO6dOni0fU26SsmAwcOVFZWlhYsWKD58+crNDRUffv21VNPPeV6/ZtvvtGLL76oY8eOKTo6Wnfeeac++OADff311xoyZIiSkpI0Y8YMzZ07V7Nnz1bnzp314IMPat26dZKkNm3aaO7cuZo3b56WL18ui8Wi3/3ud1q0aJEslibdfQCARuCee+7R008/rTFjxujpp5/WG2+8oVmzZqlFixa65ZZbFBUVVeNOQF2ee+45vfTSS0pPT9eRI0cUHR2tp556SrfffrtH1+vlrM/1GwAAgIuAP9IDAABjECYAAMAYhAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACM8f8Aq7oWylzIbesAAAAASUVORK5CYII=", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -586,14 +587,12 @@ "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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JjTm9/tVX1+vnJycAfNzcnLU3NysDRs2hMbefPNNSdJxxx23t2sGAABRytYzJm63W0VFRSovL1dqaqoyMjJUVlamtLQ0TZ06VcFgUG1tbUpKSpLH49ExxxyjY489VnPmzNGCBQvU1dWlG2+8UdOnT//GKywAAGDf5ujt7e21s0EwGNTixYu1YsUK7dixQzk5Obrxxhs1duxYbdy4UaeeeqpuvfVWzZgxQ5L05Zdf6uabb9arr76quLg4nX766Zo3b57i4iLvYSAAADC8bIcJAADAcOFzpgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMEdFhkpmZqRUrVnzvx12yZIlOOeWU7/24AADYtXnzZj333HODmrtixQplZmaG/jwS59mIDhMAAPDtrrvuOr366quDmnvmmWfqtddeG+YVfTtb/68cAAAQvTwejzwez4iuIeKvmHzyySeaNWuWjj76aOXn5+u+++7r9/o//vEPzZgxQxMmTNBpp52mu+66S4FAIPT6Rx99pN/85jfKycnRUUcdpVNPPVXV1dX99vH444/rtNNO04QJEzR79my1t7f3e/3ll1/WjBkzdMwxxyg3N1fXX3/9gDkAAHzfLrzwQr355pt66qmndMopp2jz5s2aM2eOcnNzdeSRR+rkk09WWVmZLMuSNPBWzld1d3frD3/4g0466SQdffTRmj59uurq6sK+5ogPk8cee0zTp09XbW2tCgsLtXjxYq1evVqS9Morr+jqq6/Wueeeq5UrV+qmm27S3/72N5WWlkra/U2+9NJLlZycrOXLl2vlypU6/fTTdfvtt+vDDz+UJK1cuVILFy7UrFmz9PTTT+vYY4/VX/7yl9Dx29radNVVV+mXv/ylamtrtXTpUq1du1Z33HHH9//NAADgK5YsWaJJkybpjDPO0BNPPKHLL79c27dv15///Gc9//zzuvTSS/Xggw/qpZde+s593X333WpsbNT999+v2tpanXzyyZozZ442btwY1jVH/K2c888/X9OnT5ckXXHFFaqurtb777+v3Nxc3XvvvTr33HN13nnnSZLGjRunm2++WRdffLE2btyo/fbbTxdddJEuuOACJSQkSJJ8Pp8efPBBNTY26ogjjtCjjz6qM888UxdccIEk6bLLLtN//vMfNTQ0SJJaWloUCAR00EEHKSMjQxkZGbr33nsVDAa//28GAABfkZycrNjYWHk8Hu233346++yzdcYZZyg9PV2SNGvWLD3wwANqbGzUT3/602/d12effaaEhAQdfPDB8nq9+t3vfqecnBztv//+YV1zxIfJoYce2u/PXq9XPT09kqT6+nq9++67euKJJ0Kv9/3PlNevX68pU6bo/PPP18qVK1VfX6/PPvssFBx9l7U++ugjnXXWWf2OMWnSpNC8I444QtOmTdPs2bM1atQonXTSSSooKNBpp502LO8XAIC94fF4VFRUpOeff17vvvuuNmzYoMbGRn3xxRehc963KSkp0ezZs5Wbm6sJEybopJNO0s9//nMlJSWFdZ0RHyYul2vAWF98WJal4uJinXPOOQPmjBo1Sp9//rl+/etfKzU1Vaeccory8vJ09NFHa8qUKf3mfv0vLDY2tt+f77zzTl155ZV65ZVX9MYbb6i0tFTHHXecHn744aG+PQAAwqKrq0tFRUXasWOHTj/9dJ1zzjmaMGFC6I7Ad5k0aZJefvllvf7661q9erX++te/6p577tGDDz6o3NzcsK0z4sPk2/zoRz/SJ598okMOOSQ0tmbNGj3yyCNasGCBVq5cqW3btmnVqlWh2GhsbJT0/3FzxBFH6O2339asWbNC+3jvvfdCX7/zzjt67rnndMMNN+gHP/iBZs2apWeeeUalpaX68ssvdcABB3wP7xQAgG/32muv6YMPPtDrr7+uAw88UJK0bds2ffnll6Fz3reprKzUcccdp1NPPVWnnnqq5s2bp7POOkurVq0Ka5hE/MOv36akpESrVq3S0qVL9cknn2j16tWaN2+etm/frlGjRiktLU3d3d16/vnntXnzZr322mu65pprJCn0yZ3LLrtML7zwgh588EF9+umnevTRR7Vq1arQMRITE1VTU6OysjJt2LBBH330kWpra3XooYcqJSVlRN43AAB9EhIStGnTptA56ZlnntGmTZu0bt06XXHFFdq5c2e/T6vuSVNTk2666SatXr1amzZt0qpVq7R582ZNmjQprOuN6ismp59+uioqKnTffffp3nvvVXJysk455RTNnTs39PoHH3yg2267TR0dHcrIyNCvfvUrvfjii3rvvfdUWFiogoIC3XnnnVqyZInuvvtuTZw4UZdeeqlWrlwpSRo/fryWLFmipUuXqqamRk6nUyeeeKIeeOABOZ1R3X0AgAhw3nnn6brrrtOVV16p6667To888ojuuusujRkzRmeeeabS09P73QnYk5tuukm33367SktLtW3bNmVkZGju3Lk6++yzw7peR+9grt8AAAB8D/iRHgAAGIMwAQAAxiBMAACAMQgTAABgDMIEAAAYgzABAADGIEwAAIAxCBMAAGAMwgQAABiDMAEAAMYgTAAAgDH+DzVaDKYGIZi4AAAAAElFTkSuQmCC", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -633,14 +632,12 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAEBCAYAAAB13qL/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAFOBJREFUeJzt3X+MXeV95/H3+LcBmxJn2NgQ0kZVvlEqERIwabcmYWWatuxSgiBBxZVLssSNKKs2oSLp2nQBlaghoq7SAIqadM2u10lTNoEFDIkcuykpTRx2F/OH029Xm5SmZsp6B1bYTjDG4/3jnCGXYcZz7sxcn3v9vF8S0pznnMfzucOd+7nn3HPODB07dgxJUrnmtR1AktQui0CSCmcRSFLhLAJJKpxFIEmFswgkqXAWgSQVziKQpMJZBJJUOItAkgpnEUhS4Ra0HWAKi4HVwAhwtOUskjQo5gMrge8Ch5tO6tciWA081nYISRpQFwHfarpxvxbBCMDzzx9ibKz7u6OuWHEao6MH5zxUrwxS3kHKCoOVd5CywmDlHaSsMPO88+YNccYZp0L9GtpUvxbBUYCxsWMzKoLxuYNkkPIOUlYYrLyDlBUGK+8gZYVZ5+3qkLofFktS4SwCSSqcRSBJhbMIJKlwFoEkFc4ikKTCWQSSVLh+vY5A0gwsW76UJYtP3K/18PCyRtu9ePhlDrzw4x6n0UxZBNJJZMniBVx24wNtx3iNB++8nANth9CUPDQkSYWzCCSpcBaBJBXOIpCkwlkEklQ4i0CSCmcRSFLhLAJJKpxFIEmFswgkqXAWgSQVziKQpMJZBJJUOItAkgpnEUhS4Rr9PYKIuAbYBCwCNmfmXRPWXwHcCswHvgtsyMyXIuIcYCtwJpDAusw8OIf5JUmzNO0eQUScBdwOrAHeDmyIiLd1rD8V+CzwS5n5c8AS4Np69d3A3Zn5VuAJ4OY5TS9JmrUmh4YuAXZm5nOZeQi4D7hqfGU99tOZ+WxdCmcCz0fEQuDd9fYAW4D3z2V4SdLsNTk0tAoY6VgeAS7s3CAzj0TEr1IdBtoHfB14PfBCZr7cMe/sbsKtWHFaN5u/StO/pdovBinvIGWFwco7SFm71fZja/v7d+tE5m1SBEOTjI1NHMjMR4AVEfFJ4B7g95rMO57R0YOMjR3rZgpQ/QD37x+cv5A6SHkHKSsMVt65yNrPL3Zt/n8YpOcBzDzvvHlDM3oD3eTQ0D7gDR3LK4Fnxhci4nUR8d6O9f8FOBfYDyyPiPmTzZMk9YcmRbADWBsRwxFxCnAl8GjH+iFga32GEMAHgG9l5hHgMeDqenw98MjcxJYkzZVpiyAz9wEbgV3Ak8C2zNwdEdsj4oLMHAU2AA9FxB7gLcDH6+nXU51ltBe4iOoUVElSH2l0HUFmbgO2TRi7tOPr+4H7J5n3NHDx7CJKknrJK4slqXAWgSQVziKQpMJZBJJUOItAkgpnEUhS4SwCSSqcRSBJhbMIJKlwFoEkFc4ikKTCWQSSVDiLQJIKZxFIUuEsAkkqnEUgSYWzCCSpcBaBJBXOIpCkwlkEklQ4i0CSCmcRSFLhFjTZKCKuATYBi4DNmXnXhPWXA7cCQ8APgA9m5vMRsR74FPBsvenDmblxrsJLkmZv2iKIiLOA24HzgcPA4xGxKzP31uuXA/cAqzNzX0TcBtwC/A6wGvhYZn6xR/klSbPU5NDQJcDOzHwuMw8B9wFXdaxfCFyfmfvq5aeAc+qvVwPrI2JPRGyNiDPmKrgkaW40OTS0ChjpWB4BLhxfyMxR4H6AiFgKfAL4045t/wjYDXwS+Cywrmm4FStOa7rpawwPL5vx3DYMUt5BygqDlXeQsnar7cfW9vfv1onM26QIhiYZG5s4EBGnUxXCnsy8FyAzr+hYfwfw/W7CjY4eZGzsWDdTgOoHuH//ga7ntWWQ8g5SVhisvHORtZ9f7Nr8/zBIzwOYed5584Zm9Aa6SRHsAy7qWF4JPNO5QUSsBL4G7AQ+Wo+dDnwoMzfXmw0BR7pOKGngvXTkaOslNdn3f/Hwyxx44cctpOkvTYpgB3BLRAwDh4ArgQ3jKyNiPvAQ8OXM/MOOeQeBmyLi8cz8DnAD8NU5Sy5pYCxaOJ/Lbnyg7Riv8eCdlzM4+wm9M20R1GcCbQR2UZ0++vnM3B0R24E/AN4IvAOYHxHjHyI/kZnXRcQHgHvqzw7+Hljfk0chSZqxRtcRZOY2YNuEsUvrL59girOPMvMx4J2zCShJ6i2vLJakwlkEklQ4i0CSCmcRSFLhLAJJKpxFIEmFswgkqXAWgSQVziKQpMJZBJJUOItAkgpnEUhS4SwCSSqcRSBJhbMIJKlwFoEkFc4ikKTCWQSSVDiLQJIKZxFIUuEsAkkqnEUgSYVb0GSjiLgG2AQsAjZn5l0T1l8O3AoMAT8APpiZz0fEOcBW4EwggXWZeXAO80uSZmnaPYKIOAu4HVgDvB3YEBFv61i/HLgH+NeZ+XbgKeCWevXdwN2Z+VbgCeDmOU0vSZq1JnsElwA7M/M5gIi4D7gKuK1evxC4PjP31ctPAesiYiHwbuB99fgW4JvAx+cmutSeZcuXsmRxox3qrgwPL5vzf1OaTpNn8ipgpGN5BLhwfCEzR4H7ASJiKfAJ4E+B1wMvZObLHfPOnoPMUuuWLF7AZTc+0HaM13jwzsvbjqAB1KQIhiYZG5s4EBGnUxXCnsy8NyJWNZl3PCtWnNbN5q8yaO+sBinvIGWFwcurE6tfnx8nMleTItgHXNSxvBJ4pnODiFgJfA3YCXy0Ht4PLI+I+Zl5dLJ50xkdPcjY2LFupgDVD3D//gNdz2vLIOUdpKzQu7z9+uKh7vXj83mmz9t584Zm9Aa6yemjO4C1ETEcEacAVwKPjq+MiPnAQ8CXM/N3M/MYQGYeAR4Drq43XQ880nVCSVJPTbtHkJn7ImIjsIvq9NHPZ+buiNgO/AHwRuAdwPyIuKqe9kRmXgdcD9wbEZuAfwR+vRcPQpI0c41Oe8jMbcC2CWOX1l8+wRR7Fpn5NHDxLPJJknrMK4slqXAWgSQVziKQpMJZBJJUOItAkgpnEUhS4SwCSSqcRSBJhbMIJKlwFoEkFc4ikKTCWQSSVDiLQJIKZxFIUuEsAkkqnEUgSYWzCCSpcBaBJBXOIpCkwlkEklQ4i0CSCmcRSFLhFjTZKCKuATYBi4DNmXnXFNvdC+zKzC318nrgU8Cz9SYPZ+bG2YaWJM2daYsgIs4CbgfOBw4Dj0fErszc27HNKuBzwFpgV8f01cDHMvOLc5pakjRnmhwaugTYmZnPZeYh4D7gqgnbrAMeAL48YXw1sD4i9kTE1og4Y9aJJUlzqkkRrAJGOpZHgLM7N8jMT2fm5yeZOwLcApwH/BD47MxiSpJ6pclnBEOTjI01+ccz84rxryPiDuD7DXMBsGLFad1s/irDw8tmPLcNg5R3kLLC4OXVidWvz48TmatJEewDLupYXgk8M92kiDgd+FBmbq6HhoAj3YQbHT3I2NixbqYA1Q9w//4DXc9ryyDlHaSs0Lu8/frioe714/N5ps/befOGZvQGusmhoR3A2ogYjohTgCuBRxvMOwjcFBHvqpdvAL7adUJJUk9NWwSZuQ/YSHU20JPAtszcHRHbI+KC48w7CnwAuCcivkd11tFNcxNbkjRXGl1HkJnbgG0Txi6dZLtrJyw/BrxzFvkkST3mlcWSVDiLQJIKZxFIUuEsAkkqnEUgSYWzCCSpcBaBJBXOIpCkwlkEklQ4i0CSCmcRSFLhLAJJKpxFIEmFswgkqXAWgSQVziKQpMJZBJJUOItAkgpnEUhS4SwCSSqcRSBJhbMIJKlwC5psFBHXAJuARcDmzLxriu3uBXZl5pZ6+RxgK3AmkMC6zDw4B7klSXNk2iKIiLOA24HzgcPA4xGxKzP3dmyzCvgcsBbY1TH9buDuzPxSRNwM3Ax8fA7zS9KMvXTkKMPDy9qO8RovHTl6Qr9fkz2CS4CdmfkcQETcB1wF3NaxzTrgAWB0fCAiFgLvBt5XD20BvolFIKlPLFo4n8tufKDtGK/x4J2Xn9Dv16QIVgEjHcsjwIWdG2TmpwEiYk3H8OuBFzLz5Y55Z888qiSpF5oUwdAkY2M9nPeKFStO62bzV+nH3b3jGaS8g5QVBi+vBCf2edukCPYBF3UsrwSeaTBvP7A8IuZn5tEu5r1idPQgY2PHupkCVD/A/fsPdD2vLYOUd5CyQu/yWi7qtZk8b+fNG5rRG+gmp4/uANZGxHBEnAJcCTw63aTMPAI8BlxdD60HHuk6oSSpp6YtgszcB2ykOhvoSWBbZu6OiO0RccE0068HNkTEXqq9ik2zDSxJmluNriPIzG3Atgljl06y3bUTlp8GLp55PElSr3llsSQVziKQpMJZBJJUOItAkgpnEUhS4SwCSSqcRSBJhbMIJKlwFoEkFa7RlcVSW5YtX8qSxbN7mnqDOOn4LAL1tSWLF/iHQ6Qe89CQJBXOIpCkwlkEklQ4i0CSCmcRSFLhLAJJKpxFIEmFswgkqXAWgSQVziKQpMJZBJJUuEb3GoqIa4BNwCJgc2beNWH9ecCfAacDfw18JDNfjoj1wKeAZ+tNH87MjXMVXpI0e9PuEUTEWcDtwBrg7cCGiHjbhM22Av8uM98CDAEfrsdXAx/LzPPq/ywBSeozTQ4NXQLszMznMvMQcB9w1fjKiHgTsDQzv10PbQHeX3+9GlgfEXsiYmtEnDF30SVJc6FJEawCRjqWR4CzG64fAW4BzgN+CHx2pkElSb3R5DOCoUnGxpqsz8wrxgci4g7g+92EW7HitG42f5VB+2Mkg5R3kLJKg+pE/p41KYJ9wEUdyyuBZyasf8PE9RFxOvChzNxcjw8BR7oJNzp6kLGxY91MAaof4P79B7qe15ZBynuis1o6KtVMfs/mzRua0RvoJoeGdgBrI2I4Ik4BrgQeHV+ZmU8DL0bEL9ZD64FHgIPATRHxrnr8BuCrXSeUJPXUtEWQmfuAjcAu4ElgW2bujojtEXFBvdk6YHNEfA84FfhMZh4FPgDcU4+fD9zUiwchSZq5RtcRZOY2YNuEsUs7vt4DXDjJvMeAd84yoySph7yyWJIKZxFIUuEsAkkqnEUgSYWzCCSpcBaBJBXOIpCkwlkEklS4RheU6eS3bPlSlixu9nTw/j/SycUiEABLFi/gshsfaDvGazx45+VtR5BOeh4akqTCWQSSVDiLQJIKZxFIUuEsAkkqnEUgSYWzCCSpcBaBJBXOIpCkwlkEklQ4i0CSCmcRSFLhLAJJKlyju49GxDXAJmARsDkz75qw/jzgz4DTgb8GPpKZL0fEOcBW4EwggXWZeXAO80uSZmnaIoiIs4DbgfOBw8DjEbErM/d2bLYVuC4zvx0RXwA+DNwD3A3cnZlfioibgZuBj8/1gxgUx7vnv/f4l9SWJnsElwA7M/M5gIi4D7gKuK1efhOwNDO/XW+/Bbg1Ij4PvBt4X8f4N2lWBPMB5s0bavQgJjObub2yZPEC/u0ffr3tGJP6wqb3cuYZS9uOMSlzdcdc3enXXDN5DeuYM7+beUPHjh077gYR8fvAqZm5qV6+DrgwMzfUy78AfDoz19TLPwtsB94DfDczz67HFwA/ysxFDXKtAR7r5oFIkl5xEfCtphs32SOYrJbGGqyfbt7xfJfqgYwARxvOkaTSzQdWUr2GNtakCPZRvSiPWwk8M2H9GyZZvx9YHhHzM/PoJPOO5zBdtJkk6RX/u9sJTU4f3QGsjYjhiDgFuBJ4dHxlZj4NvBgRv1gPrQceycwjVId3ru4c7zagJKm3pi2CzNwHbAR2AU8C2zJzd0Rsj4gL6s3WAZsj4nvAqcBn6vHrgQ0RsZdqr2LTXD8ASdLsTPthsSTp5OaVxZJUOItAkgpnEUhS4SwCSSpco5vODZKIuI3qFhjHgC9k5h+3HGlaEfFpYDgzr207y/FExE7gXwBH6qHfyszvtBhpShFxGXAL1VlsX8vM32k30dTqq/Vv6Bj6GeA/Z+YNU0xpVUT8BvD79eIjmfl7beaZTkR8Avgg1fVJf5GZt7cc6TUiYjnwOPBvMvMfIuIS4I+BpVSZe3rG5Ul11lBEvIfqBnkXAwuBvcCvZGa2met4ImIt8CXg4X4ugogYorp48JzMfLntPMcTEW+muoblXcCzwE7gk5nZ99exRMTPAfcDv5CZ/7ftPBPV1xL9E/AW4P8BfwNszMwdrQabQscL6hrgEPBVYEtmfqXVYB0i4l1Ud29+K9XP9VmquzW/B/gh8DDwJ718/p5Uh4Yy85vAv6pfqM6k2uM51G6qqUXE66iK65NtZ2kgqPayHomIPRHRl+9Wa1dQvYv6p/rCxquBvtxzmcQ9wL/vxxKozad63TiV6s3WQuDHrSY6vndQ7RG+UN/h4FF+ciPMfvFh4Lf5yZ0XLgT+V2b+oH4t2wq8v5cBTqoiAMjMIxFxK9XewDeo3sX2q89RXaz3fNtBGjiD6uf5PmAt8JGI+KV2I03pZ4H5EfG1iNhDdWFj3/+M63evSzPzL9vOMpXMPEB1O/m/o/rd+geqQxr96n8AvxwRr4uIJcCv8epb4rQuM6/LzM6bbK6ius/auBHg7F5mOOmKACAz/wMwDLyRqm37Tn1c+IeZ+Y22szSRmX+bmesz81D9bvULwKVt55rCAqrbp/8G8PNU77B+s9VEzfwW1WGMvhUR5wIfAt5Edf+wo0DffkZQ/35tAf6Kam/gW8BLLUZqYjY37JyRk6oIIuKt9V9LIzN/BHwFOLfdVFO6GnhvRDxJ9bcdfi0iNrecaUoRsab+PGPcED/50Ljf/DOwIzP3Z+aPqY65X9hypuOKiEVUx4T/W9tZpvHLwDcy8/9k5mGqF9mLW010HBGxDPhKZp6bmRcDP2IGN2U7waa6kWfPnGxnDb2Z6o/irKE6nn058OftRppcZr5yWCUirgUuzsyPtpdoWj8F3BYR/5LquPBvAh9pN9KUHgLujYifAg4Av0pVBv3sXODvM7NvP9Oq7QHuiIhTqV5UL6PLWx6fYD8D/Kf6vminAtfRp0cJOnwHiPpvu/wAuIYev46dVHsEmbmd6o/i/E/gvwOPZ+aX2k11csjMh6jOXhj/2f55Zv5tu6kmV5/SegfVYYC9wNPAf2w11PTeTHU2Tl/LzK8DX6R6DjxF9abgj1oNdRyZ+RTwX6my7gY+k5l/026q48vMF4FrqXLvpfo85r5efs+T6vRRSVL3Tqo9AklS9ywCSSqcRSBJhbMIJKlwFoEkFc4ikKTCWQSSVDiLQJIK9/8Bv/y0U25ih60AAAAASUVORK5CYII=\n", + "image/png": "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MO3Zs0cLFy5UYWGhJkyYEO1yIurmm2/Wiy++qClTpmjOnDl67733ol1SRNx///0aOXJkt+/YraKzs1MffvihmpqadMcdd+ixxx7TiBEjNHv2bL399tvRLu+0NTc3S5Lmz5+vKVOmaNOmTbrsssv04x//2BL9fdXmzZuVnJys73//+9EuJaL27dun5ORk/fznP9fzzz+vadOm6d5779X7778f7dJO29ChQ3XBBRfovvvuU319vdra2rRy5UodOXJEHR0d0S6vT7S1tYV8Qy9J8fHxkqT29vY+/dgxp56CLq+//rruvfdejRo1SmVlZdEuJ+K6bg0tW7ZM77zzjp555hktX748ylWdnq1bt6qqqkovv/xytEvpMzExMaqsrJTD4VBCQoIk6eKLL9bevXtVUVGhgoKCKFd4emJjYyVJt956q6677jpJ0r/8y7+ourpaTzzxhPH9fdXWrVs1derU4L+lFRw6dEj33HOPnnzyyeDtlKFDh2rfvn1au3atysvLo1zh6YmLi9O6des0b948XX755YqNjdW1116riRMnym635vWBhIQEeb3ekLGuwNLXV+ut+TfaB5555hndcccdmjhxojZs2BBMlqZrbGzUb37zG3V2dgbH7Ha7LrzwQjU0NESxssh48cUX9fnnn2vChAkaOXKkRo4cKUm67777VFxcHOXqIqd///7dnui+9a1vqb6+PkoVRU56erokBfdhdbnwwgtVV1cXjZL6TE1NjQ4ePGi5q4PvvPOOOjo6QvYKStLw4cP18ccfR6mqyMrKytKLL76oyspK7dixQ8uXL5fb7bbErbATycjI6PYc0fXnrs/ZvkJw6YHNmzdr6dKluummm7Rq1apul8dM9tlnn+nuu+8OueTe0dGh6upqS2z2LCsr07Zt27R169bgQ5JcLpeWLVsW3eIiZO/evRo1apQqKytDxv/3f//XEhusL7roIvXv31/vvPNOyPgHH3xguSeFqqoqDRw40BIbVr+say9EbW1tyPgHH3ygf/7nf45CRZHV3NysoqIi1dTUKCUlRUlJSaqrq1N1dbUuu+yyaJfXJ/Lz87V79275fL7g2I4dO3T++edr4MCBffqxCS6n8NFHH+mhhx7SlVdeqdtuu02fffaZDh8+rMOHD+vo0aPRLu+0ZWdn6/LLL9dPfvIT7dq1Sx988IEWLFggj8ejH/3oR9Eu77Slp6frvPPOC3lIx1/h0NffFfyjZGVl6YILLtCDDz6oqqoq7d+/X8uXL9ff/vY33X777dEu77QlJCSouLhYP//5z/XKK6/ok08+0fr16/XnP/9ZM2fOjHZ5EVVdXa2cnJxolxFxw4YN0yWXXKL58+drx44dOnDggB555BG9/fbbmj17drTLO21JSUkKBAJatmyZ9u7dq3fffVe33367Lr30Usvdyuxy/fXXq7m5WYsWLdK+ffu0ZcsWPfnkk/+QV/qxx+UUfve736mjo0OvvfaaXnvttZBj1113nSVeXrtq1SqtXLlSc+fO1dGjRzV69Gg9++yz+qd/+qdol4YesNvt2rBhg1auXKm77rpLHo9HeXl5euKJJ7rdXjHVj3/8YyUmJmr16tWqr69XVlaW1q5dq7Fjx0a7tIg6fPiwpV5J1MVut2v9+vV65JFHtHDhQjU1NSk7O1tPPvlkt5fZmmrVqlVaunSppk+frri4OBUWFqqkpCTaZfWZgQMH6vHHH9eyZct03XXXadCgQZo3b15wH1pfsgUCgUCffxQAAIAI4FYRAAAwBsEFAAAYg+ACAACMQXABAADGILgAAABjEFwAAIAxCC4AAMAYBBcAAGAMggsAADAGwQUAABiD4AIAAIzxfwFVUfW8e+aNuAAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -721,7 +718,7 @@ { "data": { "text/plain": [ - "{'cough': True,\n", + "{'cough': False,\n", " 'fever': False,\n", " 'chest_pain': False,\n", " 'shortness_of_breath': False}" @@ -816,7 +813,7 @@ { "data": { "text/plain": [ - "[tensor(1.), tensor(0.)]" + "[tensor(0.), tensor(1.)]" ] }, "execution_count": 16, @@ -852,14 +849,12 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAEBCAYAAABmCeILAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAEzpJREFUeJzt3X2QXXV9x/H37kJ4SsjEsIwJiG2n+mXoA4+BqmCxoVbpA6WgVFIzYpWhFK1gpY6JNNDi8FCbjhLQSmfCNBNHmg5Q5KnNJNQ4FiJagiPMt/UBakO0MVAhVDBkt3/cs3hz2fz27O59WvJ+zTDs+Z3fuee7v1/O/ew9955zB0ZHR5EkaW8Ge12AJKm/GRSSpCKDQpJUZFBIkooMCklSkUEhSSoyKCRJRQaFJKnIoJAkFRkUkqQig0KSVLRfrwvYiwOARcA2YHePa5GkmWIIWAB8FXihXQ/ar0GxCNjU6yIkaYY6Dfhyux6sX4NiG8DTTz/HyMjk7247f/5sduzY2faiND3OS/9xTvrTVOdlcHCAefMOgeo5tF36NSh2A4yMjE4pKMa2Vf9xXvqPc9KfpjkvbT1l75vZkqQig0KSVGRQSJKKDApJUpFBIUkqMigkSUUGhSSpqF+vo5Cknppz6EEceEBvniJ/squ/7lxkUEjSOA48YD9++8N39GTfd37yrJ7sd2889SRJKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUVOvjsRFxPrAcmAWszMxVLevPAq4EBoDvAhdk5tMRsRS4FvhB1fWuzFzWruIlSZ03YVBExBHA1cCJNL6D9SsRsTEzH63WHwrcBCzKzK0RcRWwAvgTGl9pellmfr5D9UuSOqzOqaczgA2Z+VRmPgesA85tWr8/cHFmbq2WHwGOqn5eBCyNiC0RsSYi5rWrcElSd9QJioXs+f2r24AjxxYyc0dm3g4QEQcBHwVub+q7AjgO+B5ww/RLliR1U533KAbGaRtpbYiIuTQCYktm3gKQmWc3rb8O+M5kips/f/Zkuu9heHjOlLdV5zgv/cc56U/9NC91gmIrcFrT8gLgyeYOEbEAuA/YAFxatc0F3puZK6tuA8CuyRS3Y8fOKX3B+PDwHLZvf3bS26mznJfp69WN6p5/4UWefebHXd9vL/X6iXoqx8rg4MC0/sDemzr/4tYDKyJiGHgOOAe4cGxlRAwBXwRuzcy/bNpuJ3B5RHwlMx8ELgFua1vl0j6oVzequ/OTZ2HE77smDIrqk0zLgI00Ph57c2Zujoi7gSuA1wDHA0MRMfYm90OZ+b6IeCdwU/XexX8ASzvyW0iSOqbWa9jMXAusbWk7s/rxIfbypnhmbgJOmE6BkqTeekV+H8VPdu3u2fnFffFcrqRXtldkUMzaf6inXziyr53LncwbrO0McENZ6o5XZFCou3yDVXpl86aAkqQig0KSVGRQSJKKDApJUpFBIUkqMigkSUUGhSSpyKCQJBUZFJKkIoNCklRkUEiSigwKSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUZFBIkooMCklSkUEhSSoyKCRJRQaFJKnIoJAkFRkUkqQig0KSVGRQSJKK9qvTKSLOB5YDs4CVmbmqZf1ZwJXAAPBd4ILMfDoijgLWAIcDCSzJzJ1trF+S1GETvqKIiCOAq4FTgWOBCyPimKb1hwI3Ab+ZmccCjwArqtU3Ajdm5tHAQ8DH21q9JKnj6px6OgPYkJlPZeZzwDrg3Kb1+wMXZ+bWavkR4KiI2B94c9UfYDXwjrZULUnqmjqnnhYC25qWtwEnjy1k5g7gdoCIOAj4KPBp4DDgmcx8sWm7I9tQsySpi+oExcA4bSOtDRExl0ZgbMnMWyJiYZ3tSubPnz2Z7n1jeHhOr0vYZzjW3eNYd1c/jXedoNgKnNa0vAB4srlDRCwA7gM2AJdWzduBQyNiKDN3j7fdRHbs2MnIyOhkNgF6P8Dbtz/b0/13Wy/H27HuHse6u6Yy3oODAx35A7vOexTrgcURMRwRBwPnAPeOrYyIIeCLwK2Z+aHMHAXIzF3AJuC8qutS4J52Fi9J6rwJX1Fk5taIWAZspPHx2Jszc3NE3A1cAbwGOB4YioixN7kfysz3ARcDt0TEcuC/gHd14peQJHVOresoMnMtsLal7czqx4fYyyuTzHwCOH0a9UmSeswrsyVJRQaFJKnIoJAkFRkUkqQig0KSVGRQSJKKDApJUpFBIUkqMigkSUUGhSSpyKCQJBUZFJKkIoNCklRkUEiSigwKSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUZFBIkooMCklSkUEhSSoyKCRJRQaFJKnIoJAkFRkUkqQig0KSVGRQSJKK9qvTKSLOB5YDs4CVmblqL/1uATZm5upqeSlwLfCDqstdmblsukVLkrpnwqCIiCOAq4ETgReAr0TExsx8tKnPQuCzwGJgY9Pmi4DLMvPzba1aktQ1dU49nQFsyMynMvM5YB1wbkufJcAdwK0t7YuApRGxJSLWRMS8aVcsSeqqOkGxENjWtLwNOLK5Q2Zen5k3j7PtNmAFcBzwPeCGqZUpSeqVOu9RDIzTNlLnwTPz7LGfI+I64Ds16wJg/vzZk+neN4aH5/S6hH2GY909jnV39dN41wmKrcBpTcsLgCcn2igi5gLvzcyVVdMAsGsyxe3YsZORkdHJbAL0foC3b3+2p/vvtl6Ot2PdPY51d01lvAcHBzryB3adU0/rgcURMRwRBwPnAPfW2G4ncHlEnFItXwLcNrUyJUm9MmFQZOZWYBmNTzM9DKzNzM0RcXdEnFTYbjfwTuCmiHiMxqemLm9P2ZKkbql1HUVmrgXWtrSdOU6/97QsbwJOmEZ9kqQe88psSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUZFBIkooMCklSkUEhSSoyKCRJRQaFJKnIoJAkFRkUkqQig0KSVGRQSJKKDApJUpFBIUkqMigkSUUGhSSpyKCQJBUZFJKkIoNCklRkUEiSigwKSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpKL96nSKiPOB5cAsYGVmrtpLv1uAjZm5ulo+ClgDHA4ksCQzd7ahbklSl0z4iiIijgCuBk4FjgUujIhjWvosjIg7gXe0bH4jcGNmHg08BHy8LVVLkrqmzqmnM4ANmflUZj4HrAPObemzBLgDuHWsISL2B95c9QdYzcuDRJLU5+qceloIbGta3gac3NwhM68HiIhTm5oPA57JzBebtjty6qVKknqhTlAMjNM20sHtXjJ//uzJdO8bw8Nzel3CPsOx7h7Hurv6abzrBMVW4LSm5QXAkzW22w4cGhFDmbl7Etu9ZMeOnYyMjE5mE6D3A7x9+7M93X+39XK8Hevucay7ayrjPTg40JE/sOu8R7EeWBwRwxFxMHAOcO9EG2XmLmATcF7VtBS4Z6qFSpJ6Y8KgyMytwDJgI/AwsDYzN0fE3RFx0gSbX0zjU1KP0nhVsny6BUuSuqvWdRSZuRZY29J25jj93tOy/ARw+tTLkyT1mldmS5KKDApJUpFBIUkqMigkSUUGhSSpyKCQJBUZFJKkIoNCklRkUEiSigwKSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUZFBIkooMCklSkUEhSSoyKCRJRQaFJKnIoJAkFRkUkqQig0KSVGRQSJKKDApJUpFBIUkqMigkSUUGhSSpyKCQJBUZFJKkov3qdIqI84HlwCxgZWauall/HPA5YC7wJeCizHwxIpYC1wI/qLrelZnL2lW8JKnzJnxFERFHAFcDpwLHAhdGxDEt3dYAH8jM1wMDwPur9kXAZZl5XPWfISFJM0ydU09nABsy86nMfA5YB5w7tjIiXgsclJkPVE2rgXdUPy8ClkbElohYExHz2le6JKkb6px6Wghsa1reBpw8wfojm36+BtgMfAK4AVhSt7j582fX7dpXhofn9LqEfYZj3T2OdXf103jXCYqBcdpG6qzPzLPHGiLiOuA7kylux46djIyMTmYToPcDvH37sz3df7f1crwd6+5xrLtrKuM9ODjQkT+w65x62gq8uml5AfDkROsjYm5EXNrUPgDsmmqhkqTeqBMU64HFETEcEQcD5wD3jq3MzCeA5yPiTVXTUuAeYCdweUScUrVfAtzWtsolSV0xYVBk5lZgGbAReBhYm5mbI+LuiDip6rYEWBkRjwGHAJ/KzN3AO4GbqvYTgcs78UtIkjqn1nUUmbkWWNvSdmbTz1vY8w3usfZNwAnTrFGS1ENemS1JKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUZFBIkooMCklSkUEhSSoyKCRJRQaFJKnIoJAkFRkUkqQig0KSVGRQSJKKDApJUpFBIUkqMigkSUUGhSSpyKCQJBUZFJKkIoNCklRkUEiSigwKSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpCKDQpJUtF+dThFxPrAcmAWszMxVLeuPAz4HzAW+BFyUmS9GxFHAGuBwIIElmbmzjfVLkjpswlcUEXEEcDVwKnAscGFEHNPSbQ3wgcx8PTAAvL9qvxG4MTOPBh4CPt6uwiVJ3VHnFcUZwIbMfAogItYB5wJXVcuvBQ7KzAeq/quBKyPiZuDNwO82tf8r8Gc19jkEMDg4UOuXGM/h8w6a8rbTNZ26Z6pejbdj3T2OdXdNZbybthlqZy11gmIhsK1peRtw8gTrjwQOA57JzBdb2utYADBv3iE1u7/c3y1/65S3na7582f3bN+90qvxdqy7x7HurmmO9wLg220qpVZQjBdrIzXWT7RdyVeB02iEy+6a20jSvm6IRkh8tZ0PWicottJ40h6zAHiyZf2rx1m/HTg0IoYyc/c425W8AHy5Zl9J0k+17ZXEmDofj10PLI6I4Yg4GDgHuHdsZWY+ATwfEW+qmpYC92TmLmATcF5ze9sqlyR1xYRBkZlbgWXARuBhYG1mbo6IuyPipKrbEmBlRDwGHAJ8qmq/mManpB6l8apkebt/AUlSZw2Mjo72ugZJUh/zymxJUpFBIUkqMigkSUUGhSSpqNZNAScrIoaAfwD+ALgcuAj4flOXf8/MCwrbPw6cnpmPt6me1cCvAU81Nd+VmcsK24xm5qSuoY+IQeAfgXf3680P+2luIuKXgL+vFo8CdtKYoxcy85RpPnbfz0Wzpnn5AHBX1Tx2fdLY/CzOzB0d2v9qPEbG1cu56ZdjpCNBAfwRcF9m/l9EAHwmM1d0aF91XZGZqzu5g8wciYjPAVfQeBLuR30zN5n5DeA4eOmJ6v52zdEMmYtmY/OylZ+OyQqALs6Px8j4ejY3/XKMtD0oImKARvKeXKPvJcC7aVx7MQKcl5mPNa3/ZeBvqzqfBy7IzP+MiLfRuCnh/sB3gfdPNc0j4mpgMfAq4IfA72Xm95vWLwauA0aBp4F3ZeYPI2Ip8CEap+++BvxxZj4P3Ad8KiL+MjOfmUpNnTID52Y7jbF9NfARYFlmnl6tW0110MzEuWg2yXl5HHiQxpPHu4FbM/NnqnUroPHk5THSHjNgbrpyjHTiPYpjgR9l5o+a2i6KiIeb/ouIOJTGnWVPz8xfBG6ncYFes0uBT2bmScCngV+JiGHgGuA3MvN4Gr/otTXquqqlhjkR8fPA0cAbq1ukf4vGxYPNltP4fo2TgDuBEyLiF2jcSv2NmXkc8D/AnwJUtyt5BHhLjZq6rV/nZm8OA66pxnjXeB1m8Fw0G29eSu7JzKDxu76Mx0hb9cvc7E1XjpFOnHp6HfDfLW3jnt6ovhDp9yPi9cDbaFz53ewuYFWVwF8E1gFvp3GubmN16mSIPc+r7s14L6ufjYgPA++LxoO9gZffJ+WfgNsi4nbgjsz8l+qv7dcBD1Q1zAK+3rTNE9X6ftOvc1Py4ATr38LMnItm481LyURjcgoeI+3SL3MznX1O+xjpRFCMAC9O1CkiXgPcD9xA4x5Q3weOb+6Tmesi4t+A36LxsulMGk9KX87M36ke50BgzlQKjYgTgc8Df03jiW43LXe9zcyVEXFnVcN10fg+jp00XlZ+sHqc2ew5lruof6fcbpoxc9O0nx9XP46y59zsX/1/iJk5F81qzUuT0pjsojEmHiPt0bdzM6Ybx0gnTj19G3htjX6LgG9l5koaifh2Wr5sIyK+AJycmZ+l8e14J1R931D9pUvVfv0Ua/1VGufwPgM8Crx1nBoeBOZk5t8AK6sa7gfOjojDq3OYN9F4shzzszReovebmTQ3rX4I/FxEHBgRr+KndzS+n5k5F83qzkur/wXmReOGnQfQeOUHHiPt1M9z06pjx0gngmILcFhEzJ2g3z8Dg9G4YeADwOM0Cm72CeBjEfF14K+Ay6o30d4L3BoR36Dxj/LDABFxVURcNIlavwAcGxGPABtonKtrreFjwOqI+BpwIfDnmbkFuLLa5ps0xvGaqoahqqb1k6ijW2bS3OwhM79J43TXN2l8VHFT1T5T56JZ3XnZQ3Xe/Hoa3z2wHthctXuMtE8/z03rPjt2jHTkpoAR8UFgJDNvaPuDl/d7PI03bFZ1c78tNZwFnJqZH+lVDSX70tz0+1w069a8eIxM3it5burORaeuzL4J+PVofH9FNy0E1nZ5ny+JxgUsfwj8Ra9qqGGfmJsZMhfNujUvHiOT94qcm8nMhbcZlyQVea8nSVKRQSFJKjIoJElFBoUkqcigkCQVGRSSpKL/B6I2JtdNiwK1AAAAAElFTkSuQmCC\n", + "image/png": "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maLbb79dP/7xjzV06NCA/mhM3e3atVNmZqbefPPNkB9PS9DS+qwpawuml8IWgDZu3Kh//ud/trzf5MmTVVRUpIULF2r9+vXKy8vTmjVr9Ic//KHe+f/+7/+u5ORkffDBB3rvvfdkt9v11FNPSTr/pI4ZM0YlJSVasmSJ/vjHP6pnz5762c9+pqKioh90fM2h7ujoaN1+++36y1/+EtJjiSSm9dn69ev1k5/8RB988IGGDBly2fn0UnCC7avDhw+rrKxMa9as0cSJExu1z9y5c/X73/9ezz//vNauXauRI0fqxRdf1Lvvvmv58S/l7bffVmFhoSZPnqz169frtdde06FDh/TKK6/UO3/evHkqLi7W0qVLtW7dOt15552aOHGi/6TV2Lr79eunTZs2hfRYWoqW2GdNWZvVXgrLW2Ber1d79+7VI488Umfb2rVrtX79+oCxPn366I033pAk3X777crIyPDfUJWamqp33nlHX3/9db2PdfjwYf3kJz9R586dFR0drRkzZuibb76R1+vVtm3b9N///d/aunWr2rVrJ+n8iWz37t16++23G/zBr09zrfvGG28M2U2LkaYl9tnltG3bVtnZ2Y2ev3XrVnrJokv1VWM8+eSTuuaaaySd/5vupVRWVurNN9/Uq6++qn79+kmSrr32Wn333XcqLCzUo48+2ujH/f7779WrV68643v27PGvO2vWLP3Lv/yLJKlz586655579Omnn9a73uHDh9WmTRtdc801SkxM1IQJE5SRkaG2bdtaqvvGG29UaWmpjh496r+nDZHbZ+GszWovhSUAnTp1SjU1NbrqqqvqbOvfv7+eeeaZgLG4uDj/9z//+c+1adMmffjhhzp06JAOHDigI0eO6Prrr6/3sSZOnKgZM2Zo5cqV6tu3r7KysjRkyBDZ7XZ9+eWX8vl8/h/4Wm63Wy6Xy9IxNde6k5KS9L//+7+WjqWlaIl9djlW76Ogl6y7VF81xj/8wz80eu6BAwfkcrk0adIk2e3/d8G+pqZGbrdb1dXVAX17KR07dtSKFSsa3N6/f3998cUXmjdvnv7+97/r73//uw4cOKDk5OR6548ZM0b/9m//pszMTN100026/fbb9dOf/lQJCQn629/+1ui6a+9vO378OAHoApHaZ+GszWovhSUA2Ww2SecT7sXatGnT4B/iXq9X//qv/6r9+/dryJAhGjx4sLp3767nn3++wcd69NFHdc8992jz5s3asmWL5s+fr8WLF2vNmjXyer2Kj4+v92+1MTExlo6pudbt8Xj8z7dpWmKfXU5j/pCqqanxf08vWXepvmqMy71Gtb/tJ51/i1KSfvvb39Ybvq30T1RU1CUD8tKlS/Xaa6/pwQcfVGZmph5//HH95S9/0Z///Od65/fq1UubN2/W559/ri1btmjNmjVavHix3njjDbVu3brRddc+jxee3BC5fRbO2qz2UlgCUPv27RUdHa3y8nJL+3311Vf661//qj/+8Y+6+eabJUnnzp3T4cOH/ZfTLnTixAm99tprGjt2rIYNG6Zhw4bp2LFjuvPOO7V9+3Z17dpVZ86c0blz53TDDTf498vPz1d6erpGjBjxww60GdRdXl6ujh07huQ4Io1pfVaf6OhonT17NmDs22+/9X9PL1kXbF/Vp/bjCy78/JJDhw75v7/++usVFRWl77//PuAq3dtvv60DBw7opZde+sE11Hr99dc1btw4jR071j9WWFjoPwFdbP78+erTp48GDBigAQMGKC8vT/fdd5/Wr1+vSZMmNbruEydOSBK9dZGW2mdNWZvVXgpb5L7pppv05ZdfWtrn6quvVlRUlD755BOVlJRo7969evrpp3X8+HG53e4689u2bav/+I//UH5+vr766iuVlJRo1apVio6OVo8ePZSVlaV/+qd/0sSJE7V161Z9++23mjlzplavXq0uXbpIOp9Ejx8/rurq6qCPNRx11/ryyy/9J3ETmdRn9enZs6dOnTqlwsJCHTlyRKtWrdJf//pX/3Z6KTjB9FV9unbtqtatW2vp0qU6fPiwPvvsM/3ud7/zb09ISNAjjzyiefPm6aOPPlJJSYnef/99FRQUBPwhX15ertOnT/+gWjp16qTPP/9cBw4c0DfffKO5c+dqw4YN9fa8JJWUlOiFF17Qli1b9N1332n9+vX++4waW7ckFRUV6Uc/+hEBqB4tsc+aqjbJei+FLQANHDjwsjc/XSw5OVmvvPKKNm3apMGDB2vChAlKTk7W448/7v+U3wtFRUVp2bJlstvtevzxx3Xffffpv/7rv7R06VJde+21cjgcWr58uXr06KGnn35a999/v3bs2KGFCxcqMzNTknT06FHdcccdWrduXdDHGo66pfNXLfbs2aMBAwYEXXukM6nP6nPbbbdp/PjxWr58ue677z59/vnnysnJ8W+nl4ITTF/VJz4+XgUFBSoqKtLgwYM1b948PffccwFz8vLyNHLkSM2bN0/33nuvlixZopycHI0bN84/Z/jw4Xr55Zd/UC2zZ89WdXW1HnroIY0YMUJff/21pk2bphMnTuj777+vM/+FF15QZmamcnNzdffdd2vevHl65pln9MADDzS6bun8TbAXf1QDzmuJfdZUtUlB9JIvTE6ePOnr1auX729/+1u4Smi0ZcuW+f785z+HuwzLPvnkE1///v19brc73KWEDX0WGvRSoObWV1988YVv6tSp4S7DsrKyMl+PHj18Bw8eDHcpzRJ91njB9FLYrgC1a9dOo0aNavYfgHXmzBmtW7cu4G/DkeKtt97SU0891aT/TEJzR5+FBr0UqLn11eLFixv1uU/NzTvvvKMhQ4Y0+NuVpqPPGi+oXmrCQHZZLpfL9+CDD/q++OKLcJZxWS6XK9wlWLZhwwbf2LFjw11Gs0Cf/TD0Uv2aU1811965lNLSUt+gQYN8FRUV4S6lWaPPLi/YXrL5fA3c4g8AANBC8cELAADAOAQgAABgHAIQAAAwDgEIAAAYhwAEAACMQwACAADGIQABAADjEIAAAIBx/h+xmph7ioKNkgAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -914,20 +909,18 @@ "output_type": "stream", "text": [ "type \n", - "sample tensor(0.)\n", + "sample tensor(1.)\n", "log prob tensor(-0.6931)\n" ] }, { "data": { - "image/png": "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\n", + "image/png": "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ODo/+t22bZuuvfbaLq8xfvz44LyLLrpI06dP15w5czR8+HBNmjRJ2dnZuuqqq87I+QI4PofDodzcXG3cuFEffvihdu7cqfr6en322WfB/XwyBQUFmjNnjlwul8aNG6dJkybpRz/6kYYOHdoPq0coESboUzabrdtYZ3wEAgHl5+fr+uuv7zZn+PDh2r9/v372s58pLi5OkydPVmZmpsaOHasrr7yyy9yvv6lFRkZ2+f3jjz+uuXPn6o033tA777wjj8ejCRMm6Lnnnuvt6QHoodbWVuXm5uro0aOaNm2arr/+eo0bNy74aeepjB8/Xps3b9bbb7+tLVu26M9//rOefPJJrVq1Si6X6wyvHqFEmKDffPe739Unn3yi888/PzhWXV2t559/XosWLVJFRYUOHTqkTZs2BWOjvr5e0n/j5qKLLtL777+vvLy84HN89NFHwZ8/+OADvfLKK7r//vv17W9/W3l5edqwYYM8Ho8+//xzffOb3+yHMwXw1ltv6eOPP9bbb7+tc889V5J06NAhff7558H9fDIlJSWaMGGCpkyZoilTpmjBggW69tprtWnTJsJkkOPmV/SbgoICbdq0SStWrNAnn3yiLVu2aMGCBTp8+LCGDx+uhIQEtbW1aePGjdq7d6/eeust/frXv5ak4Dd3Zs+erVdffVWrVq3Sp59+qjVr1mjTpk3B14iJiVF5ebkKCwu1c+dObdu2TZWVlbrgggs0bNiwkJw3cDYZMmSI9uzZE9xvGzZs0J49e7R161bddddd+vLLL7t8E+9EGhoa9OCDD2rLli3as2ePNm3apL1792r8+PFn+hQQYnxign4zbdo0FRcX66mnntLKlSsVGxuryZMna/78+cHHP/74Yz3yyCP64osvlJSUpJ/+9Kd67bXX9NFHHyknJ0fZ2dl6/PHHtXz5ci1btkzp6em64447VFFRIUkaPXq0li9frhUrVqi8vFzh4eG6/PLL9cwzzyg8nA4HzrQbb7xR9957r+bOnat7771Xzz//vJ544gmNGDFC11xzjRITE7t8ynkiDz74oB599FF5PB4dOnRISUlJmj9/vq677rp+OAuEUlhHTz5TAwAA6Af8JyQAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACMQZgAAABj/B+Fn9bbk6Nf/AAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -940,7 +933,7 @@ "print('sample ', d.sample())\n", "\n", "# compute the log-probability of sampling true:\n", - "print('log prob ', d.log_prob(False))\n", + "print('log prob ', d.log_prob(torch.tensor(1.0)))\n", "\n", "# visualize the distribution:\n", "plt.xticks([0, 1], labels=['heads', 'tails'])\n", @@ -975,8 +968,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "sample tensor(-0.2089)\n", - "foo tensor(0.7000)\n" + "sample tensor(0.5483)\n", + "foo tensor(-0.2826)\n" ] } ], @@ -1045,19 +1038,17 @@ "name": "stdout", "output_type": "stream", "text": [ - "[0.0893535315990448, 0.006774185691028833, 0.4481070935726166, -0.027167800813913345, -2.064568042755127]\n" + "[-0.6225902438163757, 0.005093753803521395, 2.4754393100738525, -0.2677018642425537, -0.009533843025565147]\n" ] }, { "data": { - "image/png": "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\n", + "image/png": "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EBB5X331le68806df/75Ki4u1s0336wDBw4M9LDiit/v16pVqzR16lRNmDBBc+bM0aFDhwZ6WHHt6NGjWrp0qS688EJNnDhR1157rXbt2jXQwxoyPv30U5177rnavHnzQA8l7m3ZskWXX365zj77bP3iF7/Qa6+9ZrkPgksEHDt2TAsWLJDf7x/oocQ1r9eruXPn6uuvv9YTTzyhjRs3asSIEbrhhhvU3Nw80MOLGzU1Ndq4caOWLVumTZs2ye/3q6Ki4rjf9I7IuPPOO7V3716tWLFCL730ks4880zdfPPN+uSTTwZ6aHHvu+++0/z589XW1jbQQ4l7W7du1eLFi3Xdddfp1Vdf1RVXXBE8960guETAPffco5NPPnmghxH3du3apY8//ljV1dU6++yzdcYZZ6iqqkptbW166623Bnp4ccHr9Wr9+vVyuVwqLS1VYWGhVq5cqaamJtXV1Q308OLS559/rnfffVf33HOPJk2apFNPPVX/9m//pqysLL3yyisDPby4t3r1aqWmpg70MOJeIBDQY489plmzZum6667TmDFjdMstt+gf/uEfenzR8okQXPpp69at2rt3r373u98N9FDi3hlnnKG1a9cGv6BTkuz2709hj8czUMOKKw0NDWptbQ35rjCn06mioiLt3LlzAEcWvzIyMrR27VqdffbZwTabzSabzcZ5HWU7d+7Uf/zHf+jhhx8e6KHEvU8//VRffPGFfvnLX4a019bW6je/+Y2lvggu/dDY2KgHHnhAy5cv14gRIwZ6OHFv1KhRuuiii0LaNmzYoI6ODp1//vkDNKr40tTUJEkaPXp0SHtWVlZwGSLL6XTqoosuUmJiYrDt9ddf1+eff66pU6cO4Mjim8fj0YIFC7RkyZIe5zsi79NPP5UktbW16eabb1ZJSYl+9atfhXW1PCHSg4sX3d903Zt3331XlZWV+ud//mdNmjRJjY2NMRxdfDpRzd977z1lZmYG//uNN97Qo48+qhtvvFEFBQWxGGLca29vl6SQP6KSlJSUpJaWloEY0pCzZ88eLVq0SGVlZSotLR3o4cSte+65R+eee26PKwCIjm+//VaStHDhQt16662aP3++Xn/9df32t7/V008/HXKV90QILr3Izs7W9u3be12+adMmtbe367bbbovhqOLbiWp+0kknBf/9wgsvaNmyZbryyiu1YMGCWAxvSEhOTpb0/VyX7n9LUmdnp1JSUgZqWEPGm2++qfnz52vixImqrq4e6OHErS1btmjXrl3MIYqhYcOGSZJuvvlmzZgxQ5J05plnat++fQSXSBk2bJjy8/N7Xb5582a53W5NmTJF0vcTjyRpzpw5mj59uu67776YjDOenKjm3aqqqvTUU09p9uzZWrhwoWw2WwxGNzR0XzJ3u90aM2ZMsN3tdnNVK8qee+45PfDAA7rsssv0yCOP9Ljqhch56aWX9M033/S4ovX73/9e27dv11NPPTUwA4tj3XMTx44dG9J++umn6y9/+YulvgguYdqwYYO6urqC/3348GFdf/31uv/++5lvEUXdoWXhwoW66aabBno4caewsFCpqamqr68PBhePx6N9+/apvLx8gEcXv7ofP7/++uu1ePFiwniUVVdXq6OjI6StrKxMLpdLV1555QCNKr6NGzdOI0aM0AcffKBJkyYF2z/++OOQN0l9QXAJU25ubsh/OxwOSd+nypEjRw7EkOJefX29nnrqKV1//fX65S9/qa+//jq4bPjw4UyQjoDExESVl5erurpamZmZys3NVVVVlXJyclRWVjbQw4tLn376qR588EFdcskl+s1vfqO///3vwWXJyclKS0sbwNHFpx8+mfhDI0eO7HUZ+ic5OVkVFRX693//d2VnZ2v8+PF69dVX9e677+qZZ56x1BfBBcbYtm2bpO+vdm3YsCFk2a233sp8owhxuVzq6urSkiVL1NHRoeLiYtXW1gbvUSOyXn/9dX333Xd644039MYbb4QsmzFjBo/qIm789re/VUpKilauXKnDhw8rPz9fq1evDk656CtboHtyBgAAwCDH57gAAABjEFwAAIAxCC4AAMAYBBcAAGAMggsAADAGwQUAABiD4AIAAIxBcAEAAMYguAAAAGMQXAAAgDEILgAAwBj/DxMPuoDPNfT2AAAAAElFTkSuQmCC", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -1135,7 +1126,7 @@ { "data": { "text/plain": [ - "[tensor(0.), tensor(0.)]" + "[tensor(0.), tensor(1.)]" ] }, "execution_count": 22, @@ -1175,7 +1166,7 @@ { "data": { "text/plain": [ - "[tensor(1.), tensor(0.)]" + "[tensor(0.), tensor(1.)]" ] }, "execution_count": 23, @@ -1233,7 +1224,7 @@ { "data": { "text/plain": [ - "tensor(0.)" + "tensor(1.)" ] }, "execution_count": 24, @@ -1268,7 +1259,7 @@ { "data": { "text/plain": [ - "0.754" + "0.747" ] }, "execution_count": 25, @@ -1335,7 +1326,7 @@ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 26, @@ -1344,14 +1335,12 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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f6rt27dr3759+vCHP6xbbrlFb731VrJHi6u77rpLR48e1e7du/WDH/xAHo9HN998s8bGxpI9WtydOXNGGzZs0OjoaLJHSZienh5lZmbqpZde0n//939Hftx0003JHi1unnnmGT3wwANau3atnn/+edXU1ER+v9rJrl279P3vf19btmzRgQMHtGDBAtXV1cX8Y7mpjjBJoGAwqNbWVvl8PlVVVam0tFRNTU0aGBhQR0dHsseLm8HBQd1+++1qbGzU5ZdfnuxxEuLo0aN6+eWXtWnTJi1fvlwLFizQl7/8ZRUUFOi5555L9nhxMzIyoqKiIm3dulWLFy9WSUmJ7rzzTg0NDenQoUPJHi/udu7cqezs7GSPkVBvvvmmLr/8chUUFOiSSy6J/PB4PMkeLS4mJyf16KOP6nOf+5zWrl2r+fPn64477tDHPvaxyD8aaxcvvviiampqtGLFCl122WW67777dOLECds9akKYJFBPT49OnTqlioqKyDGv16uysjJ1dXUlcbL4euONNzRr1iw9++yzuvrqq5M9TkLk5eVp9+7duuqqqyLHHA6HHA6HAoFAEieLr4suukjbtm3TwoULJUnDw8Pas2ePCgsLdcUVVyR5uvjq6urS008/rUceeSTZoyRUb2+vSkpKkj1Gwhw5ckRvv/22/uqv/irqeEtLi2677bYkTZUYF198sf7jP/5D/f39CoVCevrpp+V2u1VaWprs0eLK0r8uDGsGBgYkSfPmzYs6XlBQELnNDj7xiU/oE5/4RLLHSCiv16vrr78+6tgPf/hDHT16VF/60peSNFViffnLX9b3vvc9ud1u7dq1S7Nnz072SHETCAS0ceNG1dfXx/z+tJs333xTeXl5Wrt2rY4cOaLLLrtMd9xxh1auXJns0eLiyJEjkqTR0VHdcsst6u7uVnFxse644w7b/bn0wAMP6O///u914403yuVyyel0aufOnZo/f36yR4srHjFJoKnn5N1ud9TxzMxMjY+PJ2MkxMlrr72m+++/X9XV1aqqqkr2OAnx+c9/Xvv27VNNTY3uuusuvfHGG8keKW42bdqkpUuXxvy/bLuZmJjQW2+9pZGREd19993avXu3lixZoltvvVWvvPJKsseLi5MnT0qS7r33XtXU1Ki1tVUf//jHdeedd9pmxym/+tWvlJOTo29961t6+umntWrVKm3YsEG//OUvkz1aXPGISQJNPYcbDAajns8dHx9XVlZWssbCDL344ovasGGDli1bpsbGxmSPkzBTT9089NBDev311/Xkk0/q4YcfTvJUM3fgwAEdPHjQVtcGnUtGRoY6OzvlcrkifwZ95CMf0aFDh9TS0hL1NHOqmjVrliTplltu0ac//WlJ0oc//GF1d3fr29/+ti12lKRjx47pH/7hH7Rnzx4tX75cknTVVVfpV7/6lXbu3Knm5uYkTxg/PGKSQFMPEf/+FdNDQ0OaO3duMkbCDD355JO6++67dcMNN+jxxx9XZmZmskeKq+HhYT3//POamJiIHHM6nbriiitsc+X/vn379N5776mqqkpLly7V0qVLJUlf+cpXVFdXl+Tp4m/OnDkxF7r+2Z/9mQYHB5M0UXxN/Vk6dV3UlCuuuEL9/f3JGCkhXn/9dZ05cybqOjdJuvrqq3X06NEkTZUYhEkClZaWKjs7W52dnZFjgUBA3d3dKi8vT+JkmI6pl32vXbtW27dvj3mKzg7effdd3XPPPVEPgZ85c0bd3d22uYCysbFR7e3tOnDgQOSHJPl8Pj300EPJHS7ODh06pGXLlkX9GSRJv/jFL2xzMfOVV16pOXPm6PXXX486/uabb9rq2ovCwkJJH1zM/LumXnVlJzyVk0But1u1tbVqbGxUfn6+ioqK1NDQoMLCQlVXVyd7PFhw5MgRfe1rX9Of//mf67bbbtO7774buc3j8SgnJyeJ08XPwoULtXLlSm3dulVbt27VRRddpCeeeEKBQEA333xzsseLi3M9WnnxxRfb7pHMkpIS/emf/qk2b96sr371q8rLy9P3vvc9/exnP9O+ffuSPV5ceDwe1dXV6Vvf+pbmzp2rxYsX6/nnn9fLL7+sPXv2JHu8uFm8eLGuueYa3XvvvfrKV76iwsJCHThwQK+88or++Z//OdnjxRVhkmA+n08TExOqr6/X6dOnVV5erpaWlsjzokgNP/zhD3XmzBm98MILeuGFF6Ju+/SnP22rl5xu375d27Zt0/r163XixAktX75cTz31lD70oQ8lezRY5HQ69fjjj2vbtm364he/qEAgoLKyMn3729+Oeeojld15553KyspSU1OTBgcHVVJSop07d+q6665L9mhx43Q6tWvXLn3zm9/U/fffr5GRES1cuFB79uyx3ds0OCYnJyeTPQQAAIDENSYAAMAghAkAADAGYQIAAIxBmAAAAGMQJgAAwBiECQAAMAZhAgAAjEGYAAAAYxAmAADAGIQJAAAwBmECAACM8f8AeYbcLF23FNcAAAAASUVORK5CYII=", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], @@ -1422,9 +1411,9 @@ "name": "stdout", "output_type": "stream", "text": [ - "bob green\n", - "alice blue\n", - "bob brown\n" + "bob blue\n", + "alice brown\n", + "bob green\n" ] } ], @@ -1470,16 +1459,16 @@ { "data": { "text/plain": [ - "[tensor(8),\n", - " tensor(7),\n", - " tensor(9),\n", - " tensor(9),\n", + "[tensor(2),\n", + " tensor(1),\n", + " tensor(8),\n", " tensor(5),\n", + " tensor(9),\n", + " tensor(6),\n", " tensor(0),\n", - " tensor(1),\n", " tensor(8),\n", " tensor(1),\n", - " tensor(4)]" + " tensor(2)]" ] }, "execution_count": 29, @@ -1514,16 +1503,16 @@ { "data": { "text/plain": [ - "[tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3),\n", - " tensor(3)]" + "[tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8),\n", + " tensor(8)]" ] }, "execution_count": 30, @@ -1561,7 +1550,7 @@ "output_type": "stream", "text": [ "bob blue\n", - "alice green\n", + "alice brown\n", "bob blue\n" ] } @@ -1602,8 +1591,8 @@ { "data": { "text/plain": [ - "[[tensor(1.), tensor(1.), tensor(0.), tensor(0.)],\n", - " [tensor(1.), tensor(1.), tensor(0.), tensor(0.)]]" + "[[tensor(0.), tensor(1.), tensor(1.), tensor(1.)],\n", + " [tensor(0.), tensor(1.), tensor(1.), tensor(1.)]]" ] }, "execution_count": 32, @@ -1635,104 +1624,238 @@ "heading_collapsed": true }, "source": [ - "# Intuitive Physics Example - TODO" + "# Intuitive Physics Example\n", + "Humans have a deep intuitive understanding of everyday physics — this allows us to make furniture, appreciate sculpture, and play baseball. How can we describe this intuitive physics? One approach is to posit that humans have a generative model that captures key aspects of real physics, though perhaps with approximations and noise. This mental physics simulator could for instance approximate Newtonian mechanics, allowing us to imagine the future state of a collection of (rigid) bodies. We have included such a 2-dimensional physics simulator using Python's `Pymunk` and `Pyglet` modules.\n", + "\n", + "Pymunk is a 2D physics library, which we use to simulate the setup and progression of our 'world' - in this case, a series of stacked blocks. We use Pyglet to handle the animation of the simulation. Here we define a class `Simulate` that takes a collection of physical objects and runs physics 'forward' by some amount of time. We also have the class `Animate`, which does the same, but gives us an animation to see what is happening). We can use these to imagine the outcome of various initial states, as in the Plinko machine example above.\n", + "\n", + "There are many judgements that you could make with such a physics simulator. [Hamrick et al. (2011)](https://cseweb.ucsd.edu/~gary/cs200/s11/hamrick-etal-cogsci2011.pdf) have explored human intuitions about the stability of block towers. \n", + "\n", + "Run the cell below to look at several different random block towers; try to judge first whether you think the tower is stable. You can press `R` on your keyboard to load a new tower, and `Esc` to exit the animation window. " + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "metadata": {}, + "outputs": [], + "source": [ + "DIMS = {\n", + " \"WORLD_WIDTH\": 400,\n", + " \"WORLD_HEIGHT\": 600,\n", + " \"FLOOR_HEIGHT\": 50,\n", + "}\n", + "\n", + "animation = Animate(dims=DIMS)\n", + "pyglet.app.run()" ] }, { + "attachments": {}, "cell_type": "markdown", - "metadata": { - "hidden": true - }, + "metadata": {}, "source": [ - "```javascript\n", - "var listMin = function(xs) {\n", - " if (xs.length == 1) {\n", - " return xs[0]\n", - " } else {\n", - " return Math.min(xs[0], listMin(rest(xs)))\n", - " }\n", - "}\n", + "You can also see a recording of what this looks like here:\n", "\n", - "var ground = {shape: 'rect', static: true, dims: [worldWidth, 10],\n", - " x: worldWidth/2, y: worldHeight+6};\n", + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Were you often right? Were there some cases of ‘surprisingly stable’ towers? [Hamrick et al. (2011)](https://cseweb.ucsd.edu/~gary/cs200/s11/hamrick-etal-cogsci2011.pdf) account for these cases by positing that people are not entirely sure where the blocks are initially (perhaps due to noise in visual perception). Thus our intuitions of stability are really stability given noise (or the expected stability marginalizing over slightly different initial configurations). \n", "\n", - "var stableWorld = [\n", - " ground,\n", - " {shape: 'rect', static: false, dims: [60, 22], x: 175, y: 473},\n", - " {shape: 'rect', static: false, dims: [50, 38], x: 159.97995044874122, y: 413},\n", - " {shape: 'rect', static: false, dims: [40, 35], x: 166.91912737427202, y: 340},\n", - " {shape: 'rect', static: false, dims: [30, 29], x: 177.26195677111082, y: 276},\n", - " {shape: 'rect', static: false, dims: [11, 17], x: 168.51354470809122, y: 230}\n", + "Let us now define some sample worlds - a *stable world* that always remains standing, an *unstable world* that almost always falls over, and an *almost unstable world*, that is precariously balanced, so sometimes falls and sometimes stands." + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "stable_world = [\n", + " Block(90, 50, 200, 75),\n", + " Block(70, 80, 200, 140),\n", + " Block(100, 30, 200, 195),\n", + " Block(60, 45, 200, 232.5),\n", + " Block(40, 20, 200, 265),\n", "]\n", "\n", - "var almostUnstableWorld = [\n", - " ground,\n", - " {shape: 'rect', static: false, dims: [24, 22], x: 175, y: 473},\n", - " {shape: 'rect', static: false, dims: [15, 38], x: 159.97995044874122, y: 413},\n", - " {shape: 'rect', static: false, dims: [11, 35], x: 166.91912737427202, y: 340},\n", - " {shape: 'rect', static: false, dims: [11, 29], x: 177.26195677111082, y: 276},\n", - " {shape: 'rect', static: false, dims: [11, 17], x: 168.51354470809122, y: 230}\n", + "almost_unstable_world = [\n", + " Block(90, 50, 200, 75),\n", + " Block(50, 70, 210, 135),\n", + " Block(40, 40, 190, 190),\n", + " Block(20, 80, 185, 250),\n", + " Block(80, 20, 195, 300),\n", "]\n", "\n", - "var unstableWorld = [\n", - " ground,\n", - " {shape: 'rect', static: false, dims: [60, 22], x: 175, y: 473},\n", - " {shape: 'rect', static: false, dims: [50, 38], x: 90, y: 413},\n", - " {shape: 'rect', static: false, dims: [40, 35], x: 140, y: 340},\n", - " {shape: 'rect', static: false, dims: [10, 29], x: 177.26195677111082, y: 276},\n", - " {shape: 'rect', static: false, dims: [50, 17], x: 140, y: 230}\n", + "unstable_world = [\n", + " Block(90, 50, 200, 75),\n", + " Block(50, 70, 210, 135),\n", + " Block(40, 40, 220, 190),\n", + " Block(20, 80, 230, 250),\n", + " Block(80, 20, 245, 300),\n", "]\n", "\n", - "var doesTowerFall = function (initialW, finalW) {\n", - " var highestY = function (w) { listMin(map(function(obj) { return obj.y }, w)) }\n", - " var approxEqual = function (a, b) { Math.abs(a - b) < 1.0 }\n", - " !approxEqual(highestY(initialW), highestY(finalW))\n", - "}\n", + "# Uncomment any worlds you would like to see plotted\n", + "# draw_world(stable_world, DIMS)\n", + "draw_world(almost_unstable_world, DIMS)\n", + "# draw_world(unstable_world, DIMS)\n" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can then use Pyro to realize our measure of stability:" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Variables sampled by Pyro in our model: \n", + "['_INPUT', 'noise_width', 'Block_0_x', 'Block_1_x', 'Block_2_x', 'Block_3_x', 'Block_4_x', 'Stability', '_RETURN']\n" + ] + } + ], + "source": [ + "def model(world, dims):\n", + " s = run_simulation(world, dims)\n", + " Stability = pyro.sample(\"Stability\", dist.Delta(torch.tensor(s, dtype=torch.float)))\n", + " return Stability\n", "\n", - "var noisify = function (world) {\n", - " var perturbX = function (obj) {\n", - " var noiseWidth = 10\n", - " obj.static ? obj : _.extend({}, obj, {x: uniform(obj.x - noiseWidth, obj.x + noiseWidth) })\n", - " }\n", - " map(perturbX, world)\n", - "}\n", + "# Uncomment whichever of the models you would like to test:\n", + "# our_model = lambda: model(stable_world, DIMS)\n", + "our_model = lambda: model(almost_unstable_world, DIMS)\n", + "# our_model = lambda: model(unstable_world, DIMS)\n", "\n", - "var run = function(world) {\n", - " var initialWorld = noisify(world)\n", - " var finalWorld = physics.run(1000, initialWorld)\n", - " doesTowerFall(initialWorld, finalWorld)\n", - "}\n", + "sampled_vars = list(pyro.poutine.trace(our_model).get_trace().nodes.keys())\n", + "print(f\"Variables sampled by Pyro in our model: \", sampled_vars, sep='\\n')" + ] + }, + { + "cell_type": "code", + "execution_count": 94, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "P(Stable = True | noise_width = 5.0) = 0.5839999914169312\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiYAAAG1CAYAAADN1D82AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy89olMNAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA8+UlEQVR4nO3deVxU9eL/8TfDIiggYCoEmVtB4poBQaDk9Vp5vVnkt6umZYltFt9ccCk0t1wuqImEqblWRptFC6al37RriluLuZXmgiaioeKCIAy/P/wx13FAHcQ44Ov5ePAAPvP5nPmcOWc+855zPmfGoaSkpEQAAAAGYKrqDgAAAJQimAAAAMMgmAAAAMMgmAAAAMMgmAAAAMMgmAAAAMMgmAAAAMMgmAAAAMMgmMAQKutz/q7n5wXyWYSVi8cTVYV9z9gIJlWsb9++CgwMtPpp2bKloqOjNXbsWJ08ebJS7qdTp04aMWLENS9n6dKlCgwM1MGDB8utc/DgQQUGBmrp0qWSpJkzZyowMNBye9++fdW3b1/L/x9++KGmTJlyTf3Ky8vTsGHDtGnTpnLvp6IKCws1ceJEff7559e8rMqUmZmpwMBAZWZmVmqbytpXLqci2/zS/ao8gYGBmjlz5rV0r1L7U91czXPcKK5mXx0xYoQ6depk+X/z5s16+umnLf9X9nb88MMPbcb0wMBAjRs37rLtjh07piFDhigsLEzt27fX4MGDlZOTUyl9qm6cqroDkFq0aKFXX33V8v/58+e1bds2TZs2TTt27NB7770nBweHKuyhfRo0aKD3339fjRo1KvP2i9dVkmbNmqXQ0NBrus8dO3YoPT1djzzyyDUtpyw5OTlatGiRJk2aVOnLNqKUlBS5u7tf1/uojG1e1a60n1dX0dHRev/999WgQYOq7soVVWRf/fDDD7Vnz57r1KMLY1GTJk00efJkq/Kbbrqp3DZFRUUaMGCATp8+rTFjxqioqEhTp05V//79tXTpUjk7O1+3/hoRwcQA3N3d1bZtW6uykJAQnTlzRsnJyfrpp59sbjcyFxeXy/a3efPmf11nYLcWLVpUdReqhSvt59WVj4+PfHx8qrobV8WI++qOHTvUqlUru/aNr776Stu3b9eXX35pGR/vuOMOdevWTcuWLdODDz54nXprTJzKMbCWLVtKkv744w9JF05NDB06VHFxcWrbtq2efPJJSdKpU6c0adIkde7cWa1atVK3bt300Ucf2Szv/PnzmjBhgkJCQnTXXXdp+PDhys3Ntarz4YcfKiYmRm3btlXr1q3VvXt3LVu2zGZZW7Zs0UMPPaSWLVuqW7duysjIsNx2pUOjF59i6dSpkw4dOqRPPvlEgYGB2rZtm1q1aqVp06ZZtcnPz1f79u01a9Ysm+VlZmbq8ccflyQ9/vjjVqdvSkpKNHfuXEVHR6t169b617/+pZ9//tmq/TfffKPevXurXbt2atmype6//369++67lnX529/+JkkaOXKk1SHhSwUGBuq9997TiBEj1L59e4WGhmrChAk6d+6cpkyZorvvvlthYWF65ZVXVFBQYGlXUFCgN954Q/fff79atWqlLl26aM6cOTKbzVbLT0tL03333afWrVurT58+lv3iYn/88YcGDx6s0NBQtWnTRk888YS2b99ebp/Lcunh8S+++EIPPvigWrdurbvvvltDhw7VkSNHLruMRYsWWdYnKipKY8aM0enTpy3Lv3ibl54y2Lhxo/r376+QkBC1bNlSnTp10syZM20ehyNHjuiZZ55R69at1bFjRyUnJ6u4uLjcvpw4cUKjR49WRESEWrVqpUcffVTr1q274uPwww8/6LHHHlPbtm0VHR2tRYsWqV+/fpbH5uL9PDs7W3fccYfeeecdq2Xk5uYqODhYCxculCSZzWbNmTNHf//739WyZUvdd999evvtt63a9O3bV6+88ormzJmj6OhotWrVSj179rTZby/VqVMnJScna8qUKYqIiFDr1q3Vv39/7du3z6re2rVr1bt3b7Vv315hYWEaMmSIDh8+bLn90lM5ubm5GjJkiO655x61atVK3bt316effmq1zMrY7x5++GE999xzVmWdO3dWdHS0Vdnzzz+v/v37W9b54n315MmTGjlypEJDQxUSEqLExESr/WfEiBH65JNPdOjQIZsx6ujRo4qLi1O7du0UGhqqUaNG6cyZM5L+u63L+ykdc0pKSrRr1y7dcccddq37f/7zHzVp0sTqTVvz5s3VrFkzrV692q5l1QQEEwPbu3evJOmWW26xlC1btkx16tTRrFmzFBsbq3Pnzql37976/PPPFRsbq9TUVLVv316vvPKK3nzzTavlLVu2TNu2bdPkyZM1fPhwffvttxowYIBlUH/33Xc1evRode7cWbNnz1ZSUpJcXFw0dOhQZWdnWy1r9OjReuCBB5SamqrbbrtNgwYN0jfffGP3OqakpKh+/frq2LGj3n//fd12223q3LmzPv/8c6sJal9//bXOnj2rhx56yGYZwcHBGj16tKVfF58q2rx5s77++muNGjVKiYmJysnJ0XPPPaeioiJJ0rfffquBAwcqODhYqampmjlzpm655RaNGzdOP/30kxo0aKCUlBRJ0nPPPWf5uzyJiYlycXFRSkqKHnroIb399tt66KGHdPjwYSUlJalv37766KOPLC9GJSUlevbZZ/XWW2/pf/7nf/Tmm2/q/vvv1+uvv261Hu+8845effVVdezYUampqWrTpo1GjRpldd+5ubnq2bOntm3bplGjRmnq1Kkym8167LHHKnzoevPmzRo2bJi6dOmiuXPnauTIkVq/fr2GDBlSbpsvvvhCiYmJeuyxxzRv3jwNHDhQ6enpGj9+vCTbbd6gQQPt3LlT/fr1k5eXl6ZPn65Zs2bprrvuUkpKik0wnjlzpurVq6c33nhDjzzyiN58881y56sUFBToiSee0MqVKzVo0CClpKTI19dXsbGxlw0ne/bsUb9+/SRJ06ZN04svvqg5c+Zo8+bNZdb39fVVaGiovvzyS6vyr776SiUlJfrHP/4hSRozZoySk5P14IMPWrb1xIkT9cYbb1i1W758uVauXKmEhARNmzZNx44d04svvnjZACZJixcv1u+//65JkyZpwoQJ+uWXXzR8+HDL7Z9++qmeeuop+fn5adq0aRo5cqR++OEH/etf/9Kff/5Z5jLj4+O1Z88ejR07VnPnzlWLFi00fPhwrV+/XlLl7XcdO3bUhg0bLOt48OBBZWVl6fDhw8rKypJ04c3VunXrbMKKdCH0xcbGavXq1Ro+fLgmT56sLVu2WL1pev7559WxY0fVr19f77//vtVyZsyYIT8/P6WmpuqJJ57QBx98YHm+l562K++n9Ll64MABnTlzRlu3btV9992n4OBg3XfffTZB7lJ79uxR48aNbcobNWpkeR24kXAqxwBKSkosL5TShdS/YcMGzZo1y/IuvpSzs7PGjh0rFxcXSdKSJUv066+/Ki0tTe3atZMkRUVFqaioSKmpqerZs6e8vLwkSd7e3po3b55q165t+X/gwIFas2aN7r33XmVlZal///56/vnnLffn7++vmJgYbd682TK4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nRMyffp0vfnmm1q2bJmWL18uk8mkiIgIjRs3Tv7+/le1313ar7KUhpl169Zp4MCBWr9+vV5++WXdfPPN+vDDDyVJ3333XZlHS6QL29/Ly8vmhbys8bEsZT12pfvexXPNyhIaGqq3335b9erVK7N/HTt21Pfff69jx46V2R93d/cy39SdPn1aHh4eV9X/moRgYgB16tRRq1atKtS2bt262r9/v0350aNHJVm/mJUOTKWKi4t1/Phx1atXT2azWU8//bScnZ310Ucf6Y477pCTk5N2795tOXJxsZMnT1oNcMeOHZOjo6Pq1q2rY8eOVWhdLhYTE6M33nhDa9as0bJly9S1a1fVqlXrmpd7qaFDh+r333/XwoUL1a5dO7m4uCg/P18ffPBBpd9XWerWravjx4+ruLjYKpyUfn6Bt7e3ZRteOgfg0u3p4eGh0NDQMg/HS7I60maPqKgoRUVFKT8/X+vXr9fixYs1YcIEtWnTRq1bty6zTbdu3dStWzedOnVK//nPfzR37lzFx8erffv2lnf/F3vttde0fPlyvf7664qIiLCEufDwcJu6lwaQ0v2trCDh4eGhxo0bKykpqcx+lvXOW7pwpKGs/fjPP/9U06ZNy2wjXTjS9fTTT2v//v368ssvdd9991le8Dw9PSVdOPVx6RsMSZbTP9dL6ZHDstbr6NGjNsG3lIeHh+Lj4xUfH6/ff/9dK1euVGpqqsaOHas5c+ZU6n4XHR2tYcOG6eeff9axY8cUGhqqm2++WdOnT9cPP/ygX3/9VWPGjCmzrbe3d5nPpUufJxXRoEGDMi8oKFW6PTdt2qSsrCybo7sFBQWW8bEsTZo0sZwGutiBAwfKfY7VZJzKqeZCQkJ06NAh/fDDD1bln332mZydna126rVr11rNZVm+fLmKiooUFham48ePa+/everRo4datWplOfWwZs0aSbbv1L799lvL32azWV999ZXatGkjV1dXu9eh9F3dxfz9/RUeHq7Fixdrx44diomJuewyLj3icLU2b96sLl26KCwszDKAXrrOFV321QgNDVVRUZG++uorq/LPPvtMktS+fXs1btxYfn5+NnX+7//+z2ZZe/fuVZMmTdSqVSvLT3p6uj766KMKrceUKVP0yCOPqKSkRG5ubrr33nstkynLuipIkl566SUNHDhQ0oUXtQceeEDPP/+8ioqKLIHr0m2+efNmhYWFqXPnzpZQ8ssvvyg3N/ey+550YR6Hm5ubZQ7JpY/J4cOHVa9ePavHZO3atXrrrbfKfUxCQkL03XffWV09tX379it+6FhkZKRuuukmLV68WNu2bbOcxpH+e6rg+PHjVn3Jzc3VjBkzKuUF9HKaNGmi+vXr64svvrAqz8rK0o8//mg5NXOxQ4cOqWPHjpZ9r2nTphowYIAiIiIs278y97vIyEiVlJRo9uzZlv62atVKtWvXVmJiory9vW1OW5cKDw9XUVGR1ST8wsJCrV271qpeWePNlbi4uFit26U/pWF1/fr1GjFihNWEVbPZrOXLl1ve+JS33nv27NHu3bstZbt379aePXt0zz332N3f6o4jJtVcTEyMlixZooEDByouLk4BAQFatWqVPv74Y73wwguWd2nShXdFL774ovr27at9+/Zp2rRpuueeexQeHi4HBwf5+/vr3Xffla+vrzw9PfXdd99p8eLFkmxPA7z++usqLi6Wn5+f3nvvPe3du1cLFiyo0Dp4enpq+/bt2rBhg1q3bm0JNz169NDgwYPVrFmzMl90LlZ6uPPbb79V3bp1LaegrqR169b6/PPPFRwcLF9fX23ZskVz5syRg4ODZZ1Ll71u3bqr6os9OnTooLCwMCUkJOjIkSMKCgrShg0bNHfuXD388MOWibxDhw7VkCFDlJCQoPvvv18//vij3nvvPatl9evXT+np6erXr5+eeuopeXt7KyMjQx988IFlUp+97r77bi1YsEAjRozQgw8+qPPnz+utt96Sl5eXZWJyWW1effVVTZkyRR06dFBeXp5SUlLUuHFjy3a5dJu3bt1ay5Yt03vvvadmzZpp586dmjVrltV2KLVixQo1bNhQERER+s9//qP3339f//u//1vmabSYmBi98847evLJJ/Xss8/Kz89P33//vebOnas+ffqU+8FVzz77rDIyMhQbG6unnnpKeXl5mjFjhkwm02XP+Ts6Ouof//iH3nnnHTVs2FBhYWGW2wIDA/Xggw9q1KhROnTokFq2bKm9e/dq+vTpCggIKPOqjMpkMpk0ePBgjRw5UkOGDNGDDz6o48ePKyUlRXXr1rV8/MDF/P395evrqwkTJuj06dNq1KiRfvnlF61evVrPPPOMpMrd7zw9PdWuXTt98803+te//iVJcnJy0l133aU1a9aoe/fu5QaL8PBwRUZGKiEhQX/++af8/f21ePFim9Nynp6eOnbsmFavXm33Zb1X0rNnT6WlpenZZ5/V//7v/8rNzc1ygULpfD3pQugoLCy0TKbv2rWr3nzzTQ0YMMByxdvUqVN1++2328ypuhEQTKo5Nzc3vf3225o6dapmzJih06dPq2nTpnrttdfUo0cPq7q9e/fWqVOnNHDgQLm4uOif//yn4uPjLQNtamqqXnvtNY0YMUIuLi5q3ry5Zs2apYkTJ2rTpk1WcwomTZqkyZMna//+/br99ts1d+7cCn+S51NPPaWJEyeqf//+WrBggeWdZceOHeXg4HDFoyWSdNttt6lbt25699139d1339m8KyzP5MmTNX78eMulrI0bN9bYsWP12WefWT7e3t3dXU8++aTef/99rV69WmvXrq20T2IsvSIjOTlZCxcuVG5urgICAjR48GCrF4pu3brJZDIpNTVV6enpuv322zVu3DgNHjzYUqdhw4ZKS0vT1KlTNWbMGBUUFKhx48Zl7gtXq2PHjkpKStL8+fMtE17bt2+vxYsX21wBU6pnz546f/680tLStGTJErm6uio8PFzx8fGWx+3SbT5ixAidP39er7/+ugoLCxUQEKDnnntOu3fv1qpVq6wuk33llVf05ZdfauHChapfv75efvlly+fYXKp27dp69913NXXqVCUmJurUqVPy9/fXkCFD9NRTT5W73rfeeqvmzZunf//734qLi1O9evX0zDPPaNasWWWehrlY9+7dtWjRIss2u9ikSZM0e/ZspaWlKTs7W/Xq1VPXrl310ksvXdcjc6ViYmJUp04dzZ49WwMHDpS7u7uioqI0ePDgcudipKSkaNq0aZoxY4aOHz8uPz8/vfDCC5Yriyp7v+vYsaM2btxoFerCwsK0Zs2aMi8TvrSvSUlJSk5OVkFBgbp27apHH31UK1eutHoMVq9ebXkzV968p4q46aabLPvbhAkTdObMGbVq1UoLFy60ekMzduxYHTp0SKtWrZJ04YjMggUL9Nprr2nUqFFydnbWPffco5EjR1pNnL9ROJTwbUYwqIyMDA0bNkyrV68uc/4AcL2UTgC/+EqNvLw8RUREaNiwYeUGIQDX7saLYjC8b775Rlu3blVaWppiYmIIJfjLbdu2TcnJyRo8eLCCg4N14sQJLViwQB4eHjaX2+LyzGbzFa8mknRDHhlA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cqUCAgKuRxcB1BAjRozQJ598ctk6u3bt+ot6g6pGMEG5HnjgAb3yyis25WV9YSMAVNQrr7yiIUOGWP6PjIzUyy+/rK5du1Zhr1BVCCYol6urq+rXr1/V3QBQw3l4eMjDw8OmjPHnxsQcE1TIyZMnlZCQoKioKAUHBys8PFwJCQnKz88vs/6+ffvUv39/tW/fXu3atVP//v2tDs2eOnVKo0aN0t1336327dvr8ccf19atW/+q1QFgYEuXLtXf//53TZgwQe3bt9fzzz+vzMxMBQYG6uDBg5Z6l5aVlJRo7ty5+tvf/qY2bdqoe/fu+uyzz6pqNXCVOGKCChkxYoSOHDmilJQU1atXT1u2bNHLL7+s5s2bq1+/fjb1Bw8erKCgIH388ccqKirSlClT9MILL+jrr79WSUmJBgwYIFdXV82ePVvu7u5KT09Xr1699MEHH6hFixZ//QoCMJQDBw4oJydHn376qc6dO6fc3Nwrtpk+fbq++OILjR49Wk2bNtXGjRs1ZswYnTp1So899thf0GtUBMEE5fr888+1fPlyq7L27dvrrbfe0j333KOQkBAFBgZKkgICAvTOO+/o119/LXNZBw4cUEREhPz9/eXs7KyJEyfq999/l9lsVmZmpn788UetX79eXl5eki4EmS1btmjx4sWaPHnydV1PANXD888/r1tuuUXShaMjl3P27FktXLhQ06ZNU3R0tCSpUaNGOnTokObNm0cwMTCCCcrVqVMnDR061KrM1dVVktS7d2+tWrVKn3zyifbt26fdu3fr4MGDatq0aZnLGjRokCZOnKglS5YoNDRUUVFR6tatm0wmk7Zt26aSkhLde++9Vm0KCwtVUFBwfVYOQLXTuHHjq667e/duFRQUaMiQITKZ/jtroaioSIWFhTp37pxlPIOxEExQrjp16ujWW2+1KTebzXrmmWf022+/qVu3buratauCg4M1atSocpf12GOP6f7779fq1au1bt06JScna9asWfr0009lNpvl7u6upUuX2rRzcXGp1HUCUH1dKUgUFxdb/i4pKZEkvf7662W+YWJsMS6CCey2Y8cOrVmzRh988IHatGkjSTp//rwOHDhgOcx6sT///FNvvPGGnn76acXExCgmJkZHjhxRhw4dtGHDBt1+++06ffq0zp8/r+bNm1vaJSQkKCgoSH369PnL1g1A9eDs7CxJOn36tKVs3759lr+bNm0qJycn/fHHH1ZHYxcvXqzdu3dr3Lhxf1lfYR+uyoHdbrrpJjk5OWnZsmXKysrS1q1b9dJLL+no0aMqLCy0qV+3bl19++23SkhI0I4dO5SVlaW0tDQ5OzurZcuWioqK0h133KFBgwZp/fr12r9/vyZNmqSlS5eqWbNmVbCGAIzu9ttvV+3atTVnzhwdOHBA3333nRYsWGC53cPDQz179tSMGTOUnp6urKwsffTRR0pMTFSDBg2qsOe4Eo6YwG4NGzbU5MmTNXPmTL377ruqX7++oqOj1a9fP61atcqmvpOTk+bOnaspU6aoX79+ys/P1x133KE5c+aoUaNGkqT58+crMTFRL730kvLz89WsWTOlpKQoPDz8r149ANWAu7u7EhMTlZSUpK5duyooKEjDhw/XwIEDLXVGjhwpb29vzZgxQzk5OfLz81NcXJxiY2OrsOe4EoeS0hNxAAAAVYxTOQAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDAIJgAAwDD+H9oEfFC7CAVkAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# See how the results vary with nw = 1.0, 5.0 and 10.0\n", + "nw = 5.0\n", + "emp_marginal = infer_physics(\n", + " our_model, \n", + " conditions={\"noise_width\": torch.tensor(nw)},\n", + " sites = [\"Stability\"],\n", + " num_samples=500\n", + ")\n", + "\n", + "outcome = torch.tensor([True], dtype=torch.float)\n", "\n", - "viz(\n", - " Infer({method: 'forward', samples: 100},\n", - " function() { run(stableWorld) }))\n", - "viz(\n", - " Infer({method: 'forward', samples: 100},\n", - " function() { run(almostUnstableWorld) }))\n", - "viz(\n", - " Infer({method: 'forward', samples: 100},\n", - " function() { run(unstableWorld) }))\n", + "log_prob = emp_marginal.log_prob(outcome)\n", + "p = np.exp(log_prob)\n", + "print(f\"P(Stable = True | noise_width = 5.0) = {p}\")\n", "\n", - "// uncomment any of these that you'd like to see for yourself\n", - "// physics.animate(1000, stableWorld)\n", - "// physics.animate(1000, almostUnstableWorld)\n", - "// physics.animate(1000, unstableWorld)\n", - "```" + "if p != 1.0:\n", + " viz(emp_marginal, plot_args={\"tick_label\":[\"False\", \"True\"], \"width\":0.6}, title=f\"Probability that model is stable given noise_width={nw}\")\n", + "else:\n", + " print(\"No plot as we have a single bar!\")" ] }, { "cell_type": "code", - "execution_count": null, - "metadata": { - "hidden": true - }, - "outputs": [], - "source": [] + "execution_count": 119, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "P(noise_width=1.0 | stable = True) = 0.24354243278503418\n", + "P(noise_width=5.0 | stable = True) = 0.5867159366607666\n", + "P(noise_width=10.0 | stable = True) = 0.1697417050600052\n" + ] + }, + { + "data": { + "image/png": "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1vrrX/+qt99+29RxvVilhaZDhw5Jkm644QZj2rp16+Tj46OUlBTFx8fr3LlzevTRR/Xhhx8qPj5eycnJuv322/X8889r/vz5Tutbt26d9uzZoxkzZmjs2LH68ssvNWjQIOMktWTJEk2YMEF33XWXXn/9dc2aNUseHh4aNWqUMjIynNY1YcIE/e1vf1NycrJatmypESNG6LPPPrvifZw3b54aNGig2NjYS96S27Ztm/r37y8vLy/NmTNH//jHP7R161b17dtX586dkyQtXLhQy5Yt07Bhw5SamqpevXpp0aJFSklJKXe7cXFxGjJkiFGGoUOHGq+lpaVp//79mjFjhiZOnKjdu3drxIgRxusVHadWrVppwoQJxnEqfTuytIkTJyooKEjJyckaOHCgVq5c6VTuCRMmGKE4JSVFvXv31jvvvKOhQ4eWO+Dv9OnTio+Pl7+/v5KSkpSYmKj8/HwNHDhQp06dMn1MK+Ln56fw8HB98803xrRNmzZJktNYrl27diknJ0dxcXFl1pGZmak+ffro1KlTmjlzpp5++mnNmjXLuJBLl68jkyZN0r333qsFCxYoIiJCM2fOLHNBuhSHw6EnnnhC+fn5euWVV5ScnCw/Pz8NGTKkTEi+2JgxY7Rq1SoNHjxYqampGjdunPbv369nn322wgGYr732mv79739rzpw5io+P14oVK5zGIc2aNUvJycn6+9//rjfeeENTp05VTk6Onn76aeXn5xvz/f777/rqq6+UmJiocePG6dVXX1VoaKhCQ0O1YsUKtWrVqsy29+7dqz59+hgXv8mTJ2v37t0aOHCgioqKTB2z0tLT09W/f3/5+fkpMTFRKSkpateunebNm1fmw1ZSUpIGDRpkfCAp7f7779eJEyecgozD4dC6det07733yt3dXV9++aWGDRumVq1aKTk5WUlJSbrhhhs0ZcoU7dq1y6V9kKTs7Gw98sgj2rNnj1544QXNnj1bDodDvXv3vuytjs2bN2vo0KFq3LixkpKS1Lt3b02cOFHHjh0rd/62bduqadOmWrt2rdP0jz76SH5+foqNjVVxcbGGDRum5cuXa8CAAUpJSVFERIRGjBih999/32m5t956SwcPHtT06dP14osvavfu3U71qTRX29KVlKk8I0eOVJcuXfT666+refPmmjhxovr27auWLVsqOTlZYWFhmj59ur7//ntJ0okTJ9SzZ09t375dI0aMUFJSkoKCgjRs2DCnD1WjR4/Wu+++qyeeeEJz5sxRbm5umfB1tec6V85z+fn56tu3rw4cOKCJEydq0aJF6tu3r9auXavExERJ5s7TpR0+fFhDhw5V69atlZKSomnTpunQoUMaPHiwHA6Hhg4dqtjYWDVo0EArVqwwXZYSFWWE0iZNmqS5c+eqe/fumj9/vu6++2699NJL+t///d8Kj+vFrvj2XHFxsdNJKzc3V1u3bjUqZkmPkyS5u7tr8uTJ8vDwkCQtXbpUP/30k5YvX66IiAhJUufOnVVUVKTk5GQ98sgj8vPzkyT5+/tr0aJFuu6664zfhw0bpq+//lp33nmnDh8+rIEDBzoFiKCgIPXo0UM7duzQvffea0wfPny4Bg4cKEm644479Msvvyg5OVl33XXXFe17aGioPDw8FBAQcMku7NmzZ6t58+Z6/fXXZbPZJElt2rTRvffeq1WrVql3797aunWrWrdubYwhioqKkre3t+rWrVvuOgMCAoxbWrfeequaNGlivNaoUSMlJyfL3d1dkvTrr78qJSVFp0+fVp06dUwdp5JbkDfffHOFtyNjY2ONE110dLQ2btyoL7/8Us8++6x+/vlnrVy5Us8++6wxuK9Tp05q2LChxowZo6+//lqxsbFO6/v555918uRJ9e3bV23btpUk3XTTTVqxYoXOnDmjunXrmjqmZsTFxSklJUXnz5+Xu7u7Nm3apFatWmnPnj06cuSImjRpog0bNigoKKjcXow333zT6F0puSXbvHlzPfzww8Y8l6sjI0eOVK9evSRJ4eHh+vTTT7V582bdeeedFZb93//+tw4ePGicaCQpLCxM8+bNU2FhYbnLFBYW6syZMxo/frzuueceSRfq2unTpzVjxgydOHFCDRo0uOQ2AwICNH/+fLm5uSk2NlZWq1XTp0/X8OHD1aJFC2VlZWnEiBFOPSOenp4aPny4fvzxR2P/i4qKNHbsWLVr186Yr06dOsZxKM/8+fPl5+en1NRUeXp6SrowxuzZZ5/V/v37Kzxe5UlPT1fHjh01c+ZMWa0XPi926tRJX3zxhbZs2eJ0zvjb3/522TF+t99+u4KCgvTRRx+pY8eOki70VBw/flz333+/pAt1+8EHH9Tzzz9vLBcREaH27dtry5YtatOmjUv78c9//lM5OTlatmyZgoKCJF04r91zzz167bXXNHfu3HKXS0pKUsuWLTVv3jxj3Gm9evU0cuTIS26re/fuSk1N1blz5+Tl5aXi4mKlpaXp7rvvloeHhzZu3KgNGzYoMTHRqGOdO3dWfn6+Zs2apW7dusnN7cJlxtfXV8nJyUYb/u2335SUlKSTJ0/K39+/zLZdbUvffPON6TKV56GHHjLujFx33XV6+OGHFRYWpqefflqSFBISovXr1+vbb79VWFiYFi9erOzsbH3yySfG+xEbG6v+/fvrlVdeUbdu3XTgwAF98sknmjRpklHuzp0767777tPPP/9sbLsyznVXep7bt2+fAgMD9fLLLxudHh06dNCuXbu0detWSebO06V9//33OnfunJ544gk1atRI0oUhB59//rnOnj2rpk2bKiAgwGkYhJmylKgoI1zs0KFDevfddzVy5Ejj2hQTEyOLxaLXX39djz76aLl1sDxX3NO0bds2tWrVyvjp2LGjRo4cqdatW2v27NlOg8BvuukmIzBJ0tatWxUUFGQEphLdu3dXQUGB06ev2NhY42BIF7pq3dzctG3bNkkXuvZGjRqlvLw8fffdd1qzZo3R7V36IlLScErcdddd2rt3r86cOXOlu39Z+fn52rVrl/EJrKioSEVFRbrhhhvUokULbdy4UZLUvn17bdy4UY8++qjeeOMN/fzzz+rTp49xsr0SYWFhRmCSZASqvLw8SVd2nMwoffIKDAw0bs+VVOqLLz4lv9tstnKfyGnZsqUCAgL05JNPasKECfr0009Vv359jR49WoGBgaaPqRmxsbE6e/asUc82b96sfv36ydvb26hXX3/9dbm9TNKFJz3Cw8OdxrC1adNGf/rTn0xt/+LQ4O3trfr16xvvU0Xq16+vm2++WS+88ILGjh2rDz/8UA6HQ+PGjVPLli3LXcbDw0OLFi3SPffco8zMTG3evFnLly83PpFX9P7fd999TheXv/71r5JkHKvZs2erX79+ys7O1vbt27Vq1Srjk3Xpdd96662m9rPEjh07dMcddxiBSboQOL744osrXleJBx54QAsXLtT58+eVnp6uTz75RHPnzpXdbi9za7yibVgsFnXv3l2fffaZsa9r167VjTfeaISh+Ph4zZgxQ2fOnNHu3buVlpZm3A5xpe2V2LRpk2699VY1atTIaA9Wq1V33HGHUw/DxQoLC7Vz5051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/vlnHT582Gk+V96riuzcuVMdO3bU999/L4vFoltvvVUjRozQLbfcYjyxWtru3btVUFCgwYMHq2nTpkbQKAlMFfV2fPHFF06/f/LJJ7JYLOrQoYMOHjyonJwc9e3bVzfffLOxz5dqg6VVdIzatWunjRs3OnXJ7927V4MHD9aePXuM3oCLH/o4cODAZQPAjh071L59e911111GYNq9e7eys7Nd6u2QLvQ2bdiwQWvXrlXbtm2dehx27Nihrl27qn379kadquj41KlTp8yDLKVvHURFRenQoUNq3ry5U5tYs2aNVq5cWW57ttlsatu2bZknur744osKB9bfc889Ki4uNh4MuDgYRkVF6ezZsyouLnYqy08//aT//d//dXnQfglX2lJVl6m0yMhI7dy50+mLh6UL17UGDRqoWbNmxh2Ejz/+2Gmeix8Eqcxz3ZWc53bs2CFfX1/Fx8cbIeXMmTPasWOHUU8rOk+X580339Sdd96pwsJCeXh4KDo6WlOnTpX0n6fsS7+/ZspS4nIZobSSHt6TJ086Hdvs7Gy99tprV/TB94p7mq5Gjx49tHTpUg0bNkwJCQlq0qSJvvjiC61atUpPPfWUkQalCyl9+PDheuyxx/TLL7/o1VdfVadOnRQdHS2LxaKgoCAtWbJEgYGB8vX11YYNG4xPFqXvkc+ZM0d2u12NGzfWsmXLdOjQIS1evNilffD19dXevXu1detWp5BXomSg2bPPPqvu3bvLbrcrNTVVu3btMgZjR0ZGKjU1VfXr11dERIQyMzO1ePFiRUVFXfI7n0qOzaeffqo77rhDLVq0qLCs9erVM3WcSgbxffnll7r++uuN23dX6uabb9aDDz6ouXPnKj8/X5GRkdq3b5/mzZun9u3bl/tFjW3btpXD4dCwYcM0ePBg+fj4aN26dTp16pS6du0qydwxNatDhw6yWq368ssv9eqrr0q6cMvZx8dHO3bs0LRp0y65bL9+/bRy5UoNHDhQw4cPl91uV2JiotOYMqniOuKK0NBQeXl5acyYMRo+fLjq16+vb775Rvv27bvkF4W2atVKbm5umjlzph5//HEVFhZq9erVxoeI0j0YpX333XcaNWqU7r//fqWnpyspKUkPP/ywbrjhBvn5+alOnTrGQHE3Nzd98sknxteHVDROxdfXVzt37tSmTZsUGhpa5vWhQ4fq73//u5544gnjyaE5c+YoLCxMnTp1MgYmz5gxQ08//bTxPXGXu9VU0iu0bNkytWjRQunp6UpJSZHFYnFpXI10IVDMmDFDaWlpZXr7wsLC9OGHH6pVq1YKDAzUt99+qwULFlx2e3feeae++OILTZ8+XV26dNH27dvLPPHVv39/rVmzRv3799fjjz8uf39/paWl6d133zW+mqQ8CQkJeuyxx5SQkKCePXvq999/12uvvSZJl/1C4pIn5ZYuXaqIiAinnprY2FhFRkZq6NChGjp0qFq0aKHvv/9ec+fOVefOna/6O+xcaUtVXabSBgwYoA8++ED9+/fXU089JT8/P73//vvavHmzXnrpJVmtVjVr1kx///vflZiYqKKiIt16661as2aNfvzxR6d1Vda57krOc2FhYVq2bJlmzJihO++8U1lZWVq0aJFOnDhh3D0wc54urwyzZs3SsGHD1KdPH9lsNi1fvlweHh7GQG1fX1+dOHHC6EE2U5YSl8sIpQUHB6t79+564YUXdPToUbVu3VqHDh1SYmKimjRpohtvvNH0sa3WniZvb2+9/fbbuvPOO/Xaa69pyJAhxhs4fPhwp3kfffRR1atXT8OGDdNrr72m++67z+mpj+TkZDVq1EjPPfecnnnmGe3atUspKSm66aabyvw5kOnTp+utt97S0KFDlZmZqYULF7r8LbOPP/64Tpw4oYEDB2r37t1lXo+JidGiRYuUkZGhhIQEjRkzRjabTYsXLzYGUT/99NN68skntWrVKmOwaExMzCWfepEuDB7v2LGjZs+e7fRnBSpi5ji1bNlS3bp105IlSzRq1KgrOyClTJs2TcOGDdOHH36owYMHa8mSJerbt68WLlxY7qfGhg0b6o033lDdunX1/PPP64knntCePXuUlJRkfDozc0zN8vb2Nj6JlNQBNzc3tWvXThaL5ZKDwKUL3ezLli1TkyZN9Nxzz+mll15S7969y4TMiuqIKzw9PZWamqqWLVtq2rRpGjhwoD7//HNNmTJFPXr0KHeZZs2aafbs2crMzNSQIUOMr5Z4++23ZbFYKvyzOf369VNRUZGeeuopLVmyRE8++aQRDOrWravk5GQVFxfr6aef1pgxY/T777/rnXfekY+PT4Xr7t27t9zd3TVo0CCj9+VioaGhevvtt1VUVKRnnnlGL774om6//Xa9/vrr8vDwkK+vr5KSkmS3241zxLBhw5ye3i3tueee01133aU5c+boiSee0HvvvachQ4bo4Ycf1s6dOy/5qPLlBAQEKCYmRjabTXfffbfTazNmzFCbNm00depUDRs2TJ9//rkmT56smJiYSx6fhx56SIMGDdJHH32kwYMHa+fOnWXOC40aNdLy5csVFBSkSZMm6cknn9T333+vadOmqX///pcsa7t27ZSUlKRDhw5p6NChWrx4sV544QVJFY85u//++2W323Xfffc5TbdarVqwYIHuvfdevf766xo4cKDxqH/pR8Rd4UpbquoyldagQQMtW7ZMrVq10osvvqinn35ax44dU3JystMTmBMnTtSgQYP0zjvv6KmnntK5c+f05JNPOq2rss51V3Kee/DBBzVs2DCtW7dOgwYN0ty5c9WuXTtNmTJFOTk5OnDggKnzdGkhISGaP3++Tp8+rZEjR+qpp55STk6OUlNTddNNN0m60JFS8vUM77//vqmylKgoI5Q2ffp0DRgwQMuXL1d8fLzmz5+ve+65R6mpqVd0t8VSXNv+Wh6AKhccHKynnnqqzIcZ1F6ff/65AgMDnQaQ79+/X926dVNycrL+/Oc/12DpgNqhWm/PAVXBbrdXOD7HYrFU2tgtoDb6v//7P6WlpWnUqFFq3ry5MjMzjV7nmJiYmi4eUCsQmlDr9e/fv8wXn5UWFBRUZmAz8N9k7Nix8vLyUkpKirKysuTn56fOnTvr2WefvaKv7gD+m3F7DrXewYMHK/yiUg8PD6e/4wYAwJUiNAEAAJhQrU/PAQAA1FaEJgAAABMITQAAACbU6qfniouL5XDUriFZVqul1pUZuBTqM1CzamMbtFotl/0W+mtZrQ5NDkexsrMv/9TUtcTNzSp/fx/l5Z1VUZFrf+sKuFZQn4GaVVvbYECAj2y22hmauD0HAABgAqEJAADABEITAACACS6HJofDoblz56pz584KDw/XoEGDdPjw4UvOf/78ec2ePduYv0+fPtq3b5+rmwcAAKhWLoem5ORkLV26VFOnTtXy5cvlcDgUHx+vwsLCcuefNGmSVq9erZdeekmrVq1SQECABg0apFOnTrlceAAAgOriUmgqLCxUamqqEhISFBcXp5CQECUmJiojI0Pr168vM//hw4e1atUqTZs2TZ07d1aLFi304osvysPDQ7t3777qnQAAAKhqLoWm9PR0nTlzRtHR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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "emp_marginal = infer_physics(\n", + " our_model,\n", + " conditions = {\"Stability\": torch.tensor(1.0)},\n", + " sites = [\"noise_width\"],\n", + " num_samples=500\n", + ")\n", + "\n", + "noise_widths = [1.0, 5.0, 10.0]\n", + "for nw in noise_widths:\n", + " outcome = torch.tensor([nw])\n", + "\n", + " log_prob = emp_marginal.log_prob(outcome)\n", + " p = np.exp(log_prob)\n", + " print(f\"P(noise_width={nw} | stable = True) = {p}\")\n", + " \n", + "tick_labels = [str(item) for item in noise_widths]\n", + "# tick_labels = None\n", + "viz(emp_marginal, plot_args={\"tick_label\":tick_labels, \"width\": 1}, title=\"Probabilities that noise_width is a particular value given the model was stable\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Within the Simulate class, a noise_width value is picked from the options [1.0, 5.0, 10.0] with respective probabilities of being chosen of [0.2, 0.6, 0.2]. The plot above shows given the model is stable, we have a stronger belief that the noise_width value selected is 1.0 or 5.0, rather than the larger noise value of 10.0." + ] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3.10.4 ('causal-ml')", "language": "python", "name": "python3" }, @@ -1746,7 +1869,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.1" + "version": "3.10.4" }, "toc": { "base_numbering": 1, @@ -1789,6 +1912,11 @@ "_Feature" ], "window_display": false + }, + "vscode": { + "interpreter": { + "hash": "0e642de13ed24eb1e8129cfad9323b43f1e482b6af82b8c19b9795c172c70e2a" + } } }, "nbformat": 4, diff --git a/img/tower_animations.gif b/img/tower_animations.gif new file mode 100644 index 0000000..f5e5b2a Binary files /dev/null and b/img/tower_animations.gif differ diff --git a/pyro_webppl/physics_example.py b/pyro_webppl/physics_example.py new file mode 100644 index 0000000..0da757d --- /dev/null +++ b/pyro_webppl/physics_example.py @@ -0,0 +1,228 @@ +import matplotlib.pyplot as plt +from matplotlib.patches import Rectangle +import numpy as np + +import pyro +import pyro.distributions as dist +import torch + +import sys; sys.path.append('..') +from pyro_webppl import viz + +# imports for physics example: +import pyglet +from pyglet.gl import * +from pyglet.window import key, mouse + +import pymunk +import pymunk.pyglet_util +from pymunk import Vec2d + +from copy import deepcopy +from pyro.infer import Importance, EmpiricalMarginal + + +class Block: + def __init__(self, width=None, height=None, x=0, y=0, is_first=False, is_static=False): + self.w = width + self.h = height + self.x = x + self.y = y + self.is_first = is_first + self.is_static = is_static + + if not self.w: + self.w = np.random.randint(50, 100) + if not self.h: + self.h = np.random.randint(50, 100) + +class Simulate: + def __init__(self, world=None, num_blocks=5, dims={}): + self.world = world + self.num_blocks = num_blocks + self.dims = dims + + vals = torch.tensor([1.0, 5.0, 10.0], dtype=torch.float) + log_probs = torch.log(torch.tensor([0.2, 0.6, 0.2], dtype=torch.float)) + noise_width = pyro.sample("noise_width", dist.Empirical(samples=vals, log_weights=log_probs)) + self.noise_width = float(noise_width.item()) + + # create the simulation world + self.create_world() + + def create_world(self): + # Create the simulation world + + self.space = pymunk.Space() + self.space.gravity = Vec2d(0.0, -200.0) + self.space.sleep_time_threshold = 1 + + # add the floor - other walls/bounds could be added here + static_lines = [ + pymunk.Segment(self.space.static_body, Vec2d(-self.dims["WORLD_WIDTH"], self.dims["FLOOR_HEIGHT"]), Vec2d(self.dims["WORLD_WIDTH"]*2, self.dims["FLOOR_HEIGHT"]), 1), + ] + + for l in static_lines: + l.friction = 0.3 + self.space.add(*static_lines) + + # create the blocks + if not self.world: + prev_block = self.add_block(None) + for idx in range(1, self.num_blocks): + next_block = self.add_block(idx, prev_block=prev_block) + prev_block = next_block + + else: + for idx, item in enumerate(self.world): + self.add_block(idx, new_block=item) + + return 1 + + def add_block(self, idx, prev_block=None, new_block=None): + # function for creating and positioning blocks + + if new_block == None: + block = Block() + if prev_block == None: + block.is_first = True + block.x = int(self.dims["WORLD_WIDTH"]/2) + block.y = self.dims["FLOOR_HEIGHT"] + block.h/2 + + else: + block.x = np.random.randint(prev_block.x - prev_block.w/2, prev_block.x + prev_block.w/2) + block.y = prev_block.y + prev_block.h/2 + block.h/2 + + else: + block = deepcopy(new_block) + vals = torch.tensor(list(range(int(np.floor(block.x-self.noise_width/2)), int(np.ceil(block.x+self.noise_width/2))+1)), dtype=torch.float) + log_probs = torch.log(torch.ones(vals.size(), dtype=torch.float)) + Block_x = pyro.sample("Block_{}_x".format(idx), dist.Empirical(samples=vals, log_weights=log_probs)) + block.x = int(Block_x.item()) + + + # pymunk box coords are at Centre of Mass ! + mass = block.w*block.h/100 + moment = pymunk.moment_for_box(mass, (block.w, block.h)) + body = pymunk.Body(mass, moment) + body.position = Vec2d(block.x, block.y) + shape = pymunk.Poly.create_box(body, (block.w, block.h)) + shape.friction = 0.3 + shape.color = (np.random.randint(50,150), np.random.randint(50,150), np.random.randint(100,255), 255) + self.space.add(body, shape) + return block + + def update(self, dt): + # Here we use a very basic way to keep a set space.step dt. + # For a real game its probably best to do something more complicated. + step_dt = 1 / 250.0 + x = 0 + while x < dt: + x += step_dt + self.space.step(step_dt) + +class Animate(pyglet.window.Window): + # main class for animation + + def __init__(self, world=None, num_blocks=5, dims={}): + + self.world=world + self.num_blocks=num_blocks + self.dims=dims + + #set the window size + self.window = pyglet.window.Window.__init__(self, width=self.dims["WORLD_WIDTH"], height= self.dims["WORLD_HEIGHT"], vsync=False) + self.set_caption("2D Boxes") + + # sets how frequently self.update gets called once sim starts + pyglet.clock.schedule_interval(self.update, 1 / 60.0) + # display FPS + self.fps_display = pyglet.window.FPSDisplay(self) + + # create the simulation world + self.simulation = Simulate(self.world, self.num_blocks, self.dims) + self.simulation.create_world() + + # add draw options + self.draw_options = pymunk.pyglet_util.DrawOptions() + self.draw_options.flags = self.draw_options.DRAW_SHAPES + + # add some text + self.label = pyglet.text.Label('Hit R to reset', font_name='Times New Roman', font_size=16, x=10, y=self.dims["WORLD_HEIGHT"]-25) + + def update(self, dt): + self.simulation.update(dt) + + def on_key_press(self, symbol, modifiers): + + if symbol == key.R: + self.clear() + self.simulation = Simulate(self.world, self.num_blocks, dims=self.dims) + self.simulation.create_world() + + elif symbol == key.ESCAPE: + self.close() + pyglet.app.exit() + + elif symbol == pyglet.window.key.P: + pyglet.image.get_buffer_manager().get_color_buffer().save( + "box2d_vertical_stack.png" + ) + + def on_draw(self): + self.clear() + # self.fps_display.draw() + self.simulation.space.debug_draw(self.draw_options) + self.label.draw() + +def does_tower_fall(initial_w, final_w): + """ + Compare the final state of a tower to its initial state and determine whether or not it stayed standing. + """ + # here we compare the intial and final world states and see whether the highest block is roughly in the same place + def highest_y(w): + return max([b.y for b in w]) + + def approx_equal(a, b): + return (abs(a - b) < 1) + + return not approx_equal(highest_y(initial_w), highest_y(final_w)) + + +def run_simulation(world, dims): + """ + Run one iteration of a physics simulation for a given world. Returns the outcome of whether or not the tower was stable. + """ + initial_world = deepcopy(world) + simulation = Simulate(initial_world, dims=dims) + # probs want to make this a while loop that stops when everything stops moving + for i in range(1000): + simulation.update(1/60.0) + + final_world = [] + for body in simulation.space._bodies: + final_world.append(Block(x=body.position.x, y=body.position.y)) + + S = not does_tower_fall(initial_world, final_world) + return S + +def infer_physics(model, conditions: dict, sites: list, num_samples: int): + """ + Function to perform importance sampling on our physics model. Returns EmpiricalMarginal distribution. + """ + conditioned_model = pyro.condition(model, conditions) + importance = Importance(conditioned_model, guide=None, num_samples=num_samples) + trace_posterior_conditioned = importance.run() + emp_marginal = EmpiricalMarginal(trace_posterior=trace_posterior_conditioned, sites=sites) + return emp_marginal + +def draw_world(world: list, dims: dict, figsize=(4,6)): + fig, ax = plt.subplots(1, figsize=figsize) + for block in world: + # Rectangle((bottomleftx, bottomlefty), width, height) + ax.add_patch(Rectangle((block.x-block.w/2, block.y-block.h/2), block.w, block.h, linewidth=1, edgecolor='k')) + + ax.set_xlim(0, dims["WORLD_WIDTH"]) + ax.set_ylim(0, dims["WORLD_HEIGHT"]) + ax.axhline(dims["FLOOR_HEIGHT"], color='k') + plt.show() \ No newline at end of file