Skip to content

Instantly share code, notes, and snippets.

@mcelrath
Created August 24, 2012 21:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mcelrath/3455828 to your computer and use it in GitHub Desktop.
Save mcelrath/3455828 to your computer and use it in GitHub Desktop.
{
"metadata": {
"name": "Bouncing Output Test"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This document is intended to demonstrate circumstances in which:\n",
"\n",
"1. the document \"jumps\" or scrolls in an undesirable manner\n",
"2. the input cell is moved without user interaction, causing the user to visually hunt for the focused cell"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import sys\n",
"import time\n",
"%pylab inline"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].\n",
"For more information, type 'help(pylab)'.\n"
]
}
],
"prompt_number": 1
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Text output that appears within 500ms has the excecuted cell remaining at a fixed position."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print \"foo\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"foo\n"
]
}
],
"prompt_number": 2
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Plot output should behave similarly, but does not. The following cell has a semicolon, which suppresses printing the scalar result of the plot call (as text). Three distinct things happen in quick succession:\n",
"\n",
"1. Existing output is removed, which scrolls the rest of the document up.\n",
"2. New plot output is added, scrolling the remaining output down.\n",
"3. The remaining document jumps up by 1px or 2px.\n",
"\n",
"Desired behavior:\n",
"\n",
"As the output is generated in less than 500ms, the output should be replaced without causing any scrolling of the document above or below."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"plot(rand(100));"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x2e52e10>"
]
}
],
"prompt_number": 3
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The following case has no semicolon, so generates both text output (scalar result of plot()) and a figure. The behavior of the previous cell occurs, but in addition the scalar text output appears immediately and causes no scrolling.\n",
"\n",
"Desired behavior:\n",
"\n",
"As above, both text and plot output should be replaced without causing any scrolling or jumping of the document (because it is generated quickly <500ms)"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"plot(rand(100))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "pyout",
"prompt_number": 4,
"text": [
"[<matplotlib.lines.Line2D at 0x326e250>]"
]
},
{
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAXgAAAD9CAYAAAC2l2x5AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJztfXuUVcWd7nf6AXQ30EAjoN2NoN3SIAo4GDS5mvZBEBNJ\nomYF1yx1jGNYJiRmxmQyN3OdwKwbIslaSbzBm4vGaJxMlGRNJpiMNopKNMojikAiRBukpRsFeXTT\n9Ps89v2jLE6dOlW1a+9d+3HO2d9arKZP77N3nTpV3/729/vVrxKWZVmIESNGjBhFh7KwGxAjRowY\nMfxBTPAxYsSIUaSICT5GjBgxihQxwceIESNGkSIm+BgxYsQoUsQEHyNGjBhFCiXBf+ELX8DUqVNx\n0UUXSY/56le/iubmZsybNw9vvPGG8QbGiBEjRgx3UBL8HXfcgba2Nunfn376aezfvx/t7e146KGH\ncPfddxtvYIwYMWLEcAclwV9xxRWYOHGi9O9PPfUUbr/9dgDAokWL0NPTg6NHj5ptYYwYMWLEcIUK\nL28+fPgwGhsbz/ze0NCArq4uTJ06Nee4RCLh5TIxYsSIUbLwUmzAc5CVv7iMzC3Liv9ZFr797W87\nfs/x4xZ+8IPw2x6Fvgjr3/79Fqqr474I4l/cF9l/XuGJ4Ovr69HZ2Xnm966uLtTX13tuVIxctLcD\njz8editKG4ODwMAA+RkjRqHAE8EvW7YMj3/IPNu2bcOECRPy7JkY3pFMAqlU2K0obQwNkZ8nToTb\njhgxnEDpwd9yyy34wx/+gOPHj6OxsRGrV69GMpkEAKxYsQLXX389nn76aTQ1NaGmpgaPPvpoII0u\nZLS2tjp+TzJJ/hUb3PRFWKDK/fhxoKHB/PkLqS/8RtwX5pCwTBg9dhdJJIz4SaWKTZuAL38Z2L8/\n7JaULp57DvjEJ4DNm4Frrgm7NTFKBV65M17JWgAYGSlOi+allwAmhBNpsAo+RoxCQUzwBYBi9OCT\nSeBv/5Yo4kJATPAxZKDxmSgiJvgCQDES/G9+A3R1Fc7nioOsMUTYtw+4+uqwWyFHTPAFgGIk+B/9\nCKivL5zPFSv4GCIcPw709obdCjligi8AFJsHv20bcOQIcMMNhfO5hoaAyZNjgo+Ri4GBaI/hmOAL\nAMWm4B94APjqV4ExY8JP/zx1CvjhD+2PGxwk6ZExwcdg0d8f7bkZE3wBoJgIvquLpH1+4QtARUX4\nn6utjdxw7DA0RAi+ED344WHg9dfDbkVxIlbwMTyjmAj+wQeB224DamujQfCbN+uVHyhkBb99O3li\nimEeUVfwnqpJxggGIyNAOg1YFhDVwpydnQBTWFSKn/4U2LqV/D9sgrcssoBJl+AbGwuT4JNJMoZi\nmEes4GN4BvWp0+lw2yHD0BDQ3KxHIidOAOedR/4fNsG/845+ATEaZE2nC6/gWCoVbRIqZPT3hx9H\nUiGyBH/kCPDZz4bdimiADqCoDqS+PuLzdnWpj8tkyBNI2YejrrIy3M+0eTOwZAkhbTsCHBwEqqqA\nurrC8+FTqeiOnUJHrOBd4tgx4Pnnw25FNEAnZ1QH0sAA+dnRoT4ulSKqnSJsBb95M7B4MSFuO1U+\nNESOK8RUyWItVhcFRN2DjyzBJ5PA6dPRXkQQFKj14XQgPfEEUdd+Q5fgk8noEHw6DbzwAikcpkPw\ng4MkrXPy5MJU8FEmoUJGrOBdgioOu8f+YoFlAR/9KNDTk/83twr+u98F/vIX722zQ38/+VlICn7X\nLmDqVLKa1omCr6srPAUfWzT+IVbwLqEi+P/3/4DvfS/Y9viNAwdIdolJgh8ZyaprP0Gv8e676uN4\ngq+sDG9ybN4MXHst+b9TBV9oBB9bNP5hYIDEljKZsFsiRmQJnk78w4fz/7ZrF/D++8G2x2+89BL5\nKcpEcWvRJJNZde0nBgaA0aPdKfiwiMcNwVMPvhAtmpjg/QGdX1HNcAuM4J991tnxKgXf0VF8eb0v\nv0x+ij6XFwUfFMG3tBSORTM4SOrhfPzj5PdSsGiibCPw2Ly5cG6i9Ok1qv0bGMHv3u3seDuCLzZF\n8tJLQE2NeYIPwqLp7wcuuICktqq+l6gQ/KuvAhddRFbTAsVv0RSSgu/pAW66CXjllbBbogcqoEqe\n4J0OMJpxwRO8ZRGvt5gU/OHDpOjVhReaJfggLZraWmDaNHVQPJUivjtFWAS/dStwxRXZ352mSRaK\nuqQoJA/+xz8mmXNR3kSDRazgP4TTDkilyNJwnjCOHiVffqEMWB28/DIhnNGjzXrwQQZZq6uBGTPU\nNk1UgqwnTwJnnZX93YmCL1SLJpkk4ijKOH2aEPxllxXOauFYwX8INwp+5sx8gqcEUkwK/qWXgCuv\nBEaNKkwPvr8/S/CqTJqoBFn7+oBx47K/Ow2yFiLBA9HN9KD4yU9I4PviiwuH4GmCQckTvBt74eyz\nCXmwKrSjgxBhMSp4kwRvWeR9QSn4mhp7Be/HQqePfcy5ZXL6tDOCp6UMRo0qXIuG/RlFDAwAP/gB\n8K1vkSelQrFo+vuB8eNjgndF8JWVZCEKmyrZ0QE0NRWPgj9xAjh0CJg/357gnUxQ2t9BefBuLBoT\nBP/XvwLd3c7e45Tgh4YI6SQS5EaWTBaOwgSyfRxlgn/4YXKznjtX74kqCkgmyc2/piYmeMeDiwbk\nGhpybZqODlK5MMqD1Qn++EfiOVZUyAl+ZIQU6HIyiOh5giT4c88NnuCHh52TAU/w1dX2BF9VRf6f\nSBSeio86wadSwPe/D/zLv5DfC0XB03Ef5oI9O0RewYsI/oILikfBv/wy8d8BufWUTBKCcdKH9DxB\npUmGFWQdGvJO8HaKkQZYKQqN4KNerO7UKTJOL7mE/F4oCp5ak2EXzVOhIAiet2iKScHTACtAPq/M\nonFK8EEr+Joa8l29/768naaDrKkUeUR2qvZOnwbGjs3+rmPRUAUPFF4mTZAKfnCQ9K8TjIyQQCVF\noSh4KmzCXJFth8haNDQgxyp4mgOvu7lE1NHXB+zdC1x6Kfld5cFXV7sj+CDTJEeNIgW8ROUlAPMW\nDSWBMBR8TPBiPPQQ8L//t7P3UDFHESt4c4isghd58EePkok5YUJ075hOsHs3WdxEyUPlwbu1aIL0\n4AG1TWN6oRMleKdqz2maJE2RpCg0iyZIgu/rc6fgR43K/l6ICj4meA9ZNJTgOzoIgciIsNDQ2wtM\nnJj9XaXg3Vo0QXnwNTXk/6pAq2kFPzxMfjpRe5kMOZ62Fyh+iyZID35kJPu9OHkPS/CxgjeHSFs0\nvIKnBB/2Vm+mwCtD0wQ/dmy0FDyfB+81yOpGwff1kbaWMSM/tmjMYWTEufoeGcl9sosVvDlEWsFX\nVBBP9+RJMgiKTcEPDmaJEVBbNG48+AkTgvXgAfVqVtNBVjcePO+/A84VfGzRyOFGwSeTsYL3C5El\neOrXlpeTIlbvvVd8Cn5gwD8Fn0wSgg+qVAG1POw8+LCDrG4InlfwhWrRRFnBxx68P4i8RQNkbZpi\nVPB+WjS1tWSi+F2DxEmQ1Q+Cd0IGfIok4E7BFxLB0z6OsgfvNYvmlVeAb3zD2Xu8IlbwDNwGWYF8\ngi8WBa9r0bhNkxwzhvzz83E3k8klwMZGkiYpamuxKPjYopHDjYLnLRo3Cv7gQVK2IkjECp6BWw8e\nIATf2Um83XPPLS0FT4uGVVU5m6D0Blld7a9NQ+u00KDlqFGkFO977+Ufa3olK1WKToOsbgi+GLJo\nourBm8ii6e8PXvQVhYJva2tDS0sLmpubsXbt2ry/Hz9+HNdddx3mz5+PuXPn4rHHHhOex20tGoAQ\n/M6dZGLW1BSPghd58PznSqVIHGLUKOcKftQo0l9+BlqpimEhC7QWS5B17NjCKjgWdQVvwoMfGAie\nE+jYL9haNOl0GitXrkRbWxv27t2LJ554Avv27cs5Zt26dViwYAF27dqFLVu24N5770VK8Gm9WjQv\nv0yIAyCEZ1nR3ehWF7wyFJUqoP3gVCWwBO+ngmf9d4pp08iiNB5RWOhkwqIptIJjqRRpf1Q9eBMr\nWWMFL4aS4Hfs2IGmpibMmDEDlZWVWL58OTZu3JhzzNlnn43e3l4AQG9vL+rq6lDByrQP4ZXgDx/O\nEnwiURwqXseDd0vwrEXjp4IXEbzsuzFdD35oiFwraAUPEJumUAiexnCKWcH39wdPsn548N3dwF13\nmTkXAOQzMYPDhw+jsbHxzO8NDQ3Yvn17zjF33XUXrr76apxzzjk4ffo0fvWrXwnP1dW1CqtWkf+3\ntraitbVV2TDegweyBA9kyZBVVoUGnTRJOvijquDZFEkKGcGb9uCHhkgqqFeCHzOGqE7LIuKBB6/g\nAWDRIrJBxWOPid8TJaRSzmM4bmHCg6ffRyaTuyBNhTAsGj8U/LPPbsGvfrUF9fVmzqck+ITGyF2z\nZg3mz5+PLVu24MCBA1i8eDF2796NcdwsqqvLErwO2Mf5s88mk4gl+GJR8HYE79Wi8TvI6kTB8wRf\nXk5sNhmx2mFoiJR6cGrRUMFAUVZG+kqk1IH87wkAHngA+PjHgTVrsnXMo4qgCd5NFg1r0SQSpLrk\n8LD4+xAhDIvGDwX/N3/TismTW89w5erVqz2dT3l/rK+vR2dn55nfOzs70cDNjldffRWf+9znAADn\nn38+Zs6cibfeeivvXF4smspKsqJVpOALGX4SPH2f30FWEcHL2soTfCJBSN7t5Bgedq7gRVk0gNqm\noZlCLKqrgaeeItUTN2zQv34YoAQfVQ+eV/CAcx8+DIuGVfCmbi6ivvACJcEvXLgQ7e3t6OjowMjI\nCDZs2IBly5blHNPS0oLNmzcDAI4ePYq33noL5513Xt65vCx0AoDbbwcWLMj+XiwKXseD92LRBKHg\n3Vo0gDf141bBOyV4kYIHyJPl734HfOUrwLZt+m0IGm7SbN2CKnjLcvYentSc+vBhZdGYtmgCJfiK\nigqsW7cOS5YswZw5c/D5z38es2fPxvr167F+/XoAwLe+9S289tprmDdvHq699lp873vfw6RJk/LO\n5SUPHgDuv59MKIpiUPC6HrzXLBpTCv6ZZ4Bjx3JfE6VJBknwMgX/1luAKMzjhuBl1g0AXHwx8E//\nBDz6qHazA0fQFg3gbs0GCzcKPgwP3rRFY5rglR48ACxduhRLly7NeW3FihVn/j958mT87ne/s72Q\nlzx4EYpFwQdh0ZhS8KtXEzK78cbsa148eHqsV4IXKb0jR4ADB/Jfd6vgVcH8ujrgzTf12hwGwiD4\noSF9ojKh4MPy4KOu4G0J3hS8ePAiFIOC9zNNkg6UsjJzCr6ri6RxsRBZNLoePD3W7cSkFo2ImAcG\nyGpTPoBrWsED0R+LbmoZuQXtByc+PK2WysKpgh8YCMeD90PBs9sXekWkSxUUu4LXsWi8evCmFHwq\nRfZb5QneqUXDf6cmPHgREfT3k7/zNzdRsTHAm4KPOsEHreDLypwRvGiuxwreDCJdTVKwXuoMoj6p\ndKBj0bAevNtaNCYU/JEjJC9ZpODdLnQCvE2O4WF5kJXe1PiaMSaDrBRRH4upVLALncaNc0bOprJo\ngiR4tsheTPBwXw9ehmJQ8KJSBfxnokTt1Ks2reDprlonT+a+7tWD15kcu3YBhw7lv64KssoI3m2a\nZCETfNBZNOPHO7doCi2Lhj7VlZXFBA8g9uB5pNPkM7J+W5QXOnV1kcFs2oPXuXE9+CDwX/+V//rQ\nECHrTCb/HCKCT6fJe/j2AsVv0QRZi8aNgveSRWNZwefBs8ImJnhkVyzqotg9eKre2QCgyVIFphc6\ndXUBTU3ePXg3QdaBAfFnoAuQRGpPRPB9faQ/RKtmvSp4p4t7gkRQHrxlZQneqQfvRcGzqZlOOMYL\n2BIdMcHD+YrFYvfgRb5ulBV8Zydw0UXhWDR2BF9VlU8G9Hg2b1/mvwPFreCDKjZGv1/R96GCVw9+\nYIB8r4lEcBVmYwXPwamHXOwefFAEb1LBX3yxnkXjB8GLblLDw/Jdq/r7ycYjrIJ3Q/CpFLGACtku\nDKpUAR1ztFiYk/d5yaKhajrIuuyxgufgNgtEhqhPKjvwOfBAdqCwe6h6SZM0udCpq4soeB2Lxmke\nvAkFLyL4c8/NJ3hRiiQgJ3h6DVUxtNGjozsW6b4JY8b4L4goOY0e7UzBiywaJwqe3XgjKNHHKniT\nN5aCJXinnRB1D76vD1i40P0jIZ8DDxAS4Xd1cluqgE4aU2mSXV3A3LlAT0/uDcipRcN/pzrjwo1F\n099PitN5VfB2KZJAtMVGOk3s0SDmixcFL/LgnVg0pot+2SFW8BzcEFSUPfjf/AZ4/XX3wTUZcfCf\nKwo7OqXTZJHT9OlEAX+4vwsAZxaNLA9eJ8gq+gxDQ0QtyiwaXsHLUiQBtYIvZIJn02yjquBlWTRu\nLJowFHxM8HB+d426B//44+Sn2zaILBrAPMGbCLJ+8AFZUDR6NPnJ2jQyBR+0RSNS8NOnm1HwdpvK\nRJngaZ8H4U+7VfCyLBonCj7ovVF5BV+Q5YJNwknnp9PErlDt5hLmpOrszG4C7rYNIosGEBO8lzRJ\natF4SR/r6spuksETvMyDDzKLRkQGAwNiD77UFDzt8yDsCy8KXuTBxwreOyJp0dj570C4Cv4XvwA+\n9zkyqLwoeB2C91oumKo3p7vssGAJftKk3FTJoNIk+acQyyIqcfRotYI/cSJ7c/NTwUc1Dz4Mi8ZU\nFo3TIGvswecjkhaNnf8OhKeaLIvYM7ffLp80lHxUkBF8ZaXconEyeNmB4jVVsrNTrOAzGfG2aibL\nBVuWWMHTMVJeLvfgJ04kE//UKfJaKQZZWYsmqgpelkWjew4aB4oVfD4iadHY+e/0fGEo+NdeI9e9\n/HL5xP7DH4BbblGfR+XBs5/LbS0a9inIa6C1qwuge6+zBE9tJj6F0KkHr/oe6STnCZ4GWAF5mmRN\nDTB5ctam8ZImqQL9vGx2UVRQCB681yyaOA9ejoK1aMJSTY8/Dtx2GyE12U2mpye/yBUPvz14dqB4\nTZXkPXhq0YjsGcCsB0/bLSJ4Srwyi0ZE8H4oeNVYCBtunwDdIMwsmjDz4KNM8IFt+OHUoomigh8Z\nAZ58EtixQ92GZNJefQTlwQNmFDzrwbMKXlS4y6QHPzBAKkby7WcJnld76XTWOmIJ3q80SSC72Mnk\nZg0mEIZFE0YWzdixsQcvQiQtmqh68M8/D8yaBcycqW7DyIi9YvY7D569SZpW8CzBixS86sbndKHT\n4CDZEm9wMDcTSKXg2UJuJhS8nUUDRNeHLwQPPs6iyaJgCd5JJ0TVg9+/H5g3z74NOgQvI0fTefCA\nNwWfyQCHDwP19eR31qIRpUgCZvPgqTobNSp3wtM6NEC+2mPVlVeC11XwUSV4KpaK3YMPOw8+JnjD\nFk0YE4olOkCtVE0peLflgnkP3i3BHz9OSJG2VceicerBq8YFvRHyNymVgjdJ8MWg4KPuwYvme5xF\nYwaRtWjcKvg9e/ybaDzBqywaUx68CYvGS5oka88A3iwatwq+ujrfZmKzaJwoeKdZNDpBViDaBB91\nD95ruWB2b9TYg89FZBW8Ww9+xQrg5Zedt08HThW8avWon6UK6MYLJtIkVQSvsmiCIHhWwftp0egq\n+Cgudoq6B5/JkH/l5bmvOy0XHLRFEyt4DkF58IOD+ZtSmIIuwY+MZLfkk8HPNEk6qWmpBy9BVnaR\nE5C7klWVJmlqyz4di4YnAzcET8cb/50VuoJ3u47CDdwoeNo+fi2F0w0/grZoYgXPwbRFI5tQQ0P5\nNctNwLL0LRo6yFSk6meaJN9/JhX8+PHkXOl0cGmSbhQ8vfFQgk+lSF+KbkgUIlIp9CBrWLVodAle\nRmj0HDo1lOIsGjkia9G4VfBDQ/4o+N5eojLGj7dvA53oKgXiplSB7iDiB4kXBc8TfFkZ6YOeHnMe\nvE6Qlf8MbBYNH5Bjbzx0V6e+PuK/qzbuEBG8bpA1qpt+hOXBO9lPVURoZWX6Vk/YtWjiDT/gXIG6\n9eD9smh49U7bIPPgATWpqtIkRaUKnAxefpB4VfC0TAEFTZV06sHL6sGbsGhkHvzEiaQWzalTcnuG\nQkbwhazgw6oH70TBy8Sc7o2CtWiC8OBpfSRWwcflggOqReOXghcRPK+2KehrJiwa6sGXlZGBpVPv\nhJ80JhU8kE2VVKVJyjx4/ns1kUWjSpMsLwdqa4F333VH8E6CrE4I3rKA//5v/ePdIqxaNLoKXrSK\nlULXhw/aohkZIfORjuXYokFwefBBE7xbBe/Ug6f1TnQGEj9p3Cp4yyIEz39umkljZ9Gw/im9MfE1\n/nWDrCoPXqXgAeLDHzwoT5Gk8EPB//jHwIED+a8PDAA33OCtTr8OCtWDB/RuFJYVfC0aftzHBI9g\n6sFnMqSDwrZovHjwsjRJQL8PTVk0PT3kPDwx2lk0iQRRzux+tSL/HTBj0ajSJIEswbtV8F4I/re/\nBf785/zXaRqt36qat2j8vKG4SZNUWTQ6Cj6ZzKrpoDx4fnzFBI9gatHQQVUIFo3TUgWAM4I3YdH0\n9JBCXzzsLBog/wasInivQVZRmiTbt14I3slKVpFqHRoS31zpZzGZO//GG/mvsSmzZWXuN4nXgds0\nSS8K3q9gpwqxghfAyd3VrQcfBsG7sWgsy7kHD+gPJFMWTW8v8a952Fk0orZ6VfBO0iT5G8/kyUBH\nRzgKfmhIPA5ME3wyCSxaRHawYsH2u98E6FbBe/Hg2Zt5UBZNrOAFCKIe/NAQmcRRsGgqKuQETx8r\nRYQn8+AB9xaNWwV/6lRuWiiFDsE7UfB21SSrqtzXogGCU/AyghfdXOlrpgh+/37S3zyxsv3ut4XB\n1k1KJNw9bbLQUfDszTwoi8YvBZ9Oi1f1ekFkLRq3Cr6ujlxHdxWcLpxYNMkksTZkbZCtYgX8sWhM\nK3i6mlXmwQP6BO8lyKpTiwYgBN/VFU6aZFAK/s03yU++Dez48VvhDg9nhYWuiveaRROGRcOPr7Ky\nbMkFL6B9oVqr4RSRtGi8ePBVVbkVD00gmSSPvlOn5r6uWuhUWytXzbI6NIA/Fo1bBd/ba6/gTXjw\nXi0aSmD0PCKCtyx/0yRlC52Gh9UEbyp3fu/e7PVY8BZNEAoe0PfhvWbRhGHR8Ao+kSB97DW+Ydqe\nASJq0bj14KnaMk3wR46QFZE8QakWOtkRvN8K3oQH78Wi4dsqu2k7KRcsI3ggV8WLCB4IJ00yqCCr\nTMHzFk0QHjygr+C9ZtGwIiMsDx4w07ehEHxbWxtaWlrQ3NyMtWvXCo/ZsmULFixYgLlz56K1tVV4\nTBC1aOikZwtimYDIngHUWTRuCZ4/p1sPns+i6e93niKnCrK6sWhE36kTBc8SJZtFA+SSgSiLBohW\nkNW0B793rzj/PEiLxo2CN5FF48eKUhVEwiaqBK80QtLpNFauXInNmzejvr4el156KZYtW4bZs2ef\nOaanpwdf/vKXsWnTJjQ0NOC4ZLfpIGrRUIKvqQmO4GUKfsoUtQfvxKJxSvD8pKG+nmoyiSBT8KbT\nJL1aNEAuGYiyaADnBE/bb2cXAqRfe3vzXw/Cg08mSZB1zhy1gg+S4J0o+EL34IHoErxSwe/YsQNN\nTU2YMWMGKisrsXz5cmzcuDHnmF/+8pe46aab0PDhevbJdDZxMJ0HL1q4EbSCV2XReLFo+Fo0rAev\nM0FFA8WNTeMlTdJ0kFVk0bAbXPMK3gTB66p3QKzgUyniy/pt0ezfT8pJ1NYWpgdvKosmLA8eiC7B\nK2n08OHDaGQqTTU0NGD79u05x7S3tyOZTOKqq67C6dOncc899+DWW2/NO9ezz67C8ePAqlVAa2ur\n1MoBSEfZfdCyMpJOxD7605S2sC0a6sHL2qDrwWcyhCBo2pRbDx7IKuCJE+3fTyELso4dSyZvJpNL\nsiz8yIOXpUkCuamSPMHX1pI+dErwuimSgHihE/tEwcMkwe/dS9T70JDYoqGxhyh68CayaMLOgwfM\nEXwyuQWrVm3xdiIGSoJPaOTrJJNJ7Ny5E88//zwGBgZw+eWX47LLLkNzc3POccuWrcIbbxCCtz+n\n/NGfBSVDSvBsFo1pgr/wwvzXVVk0EyaQ1DwRdAme3wzBSS0aXhW5UfAyiyaRIDeKwUF5SpeJlayZ\nTNZr17FoZAo+kSAq3g3Be1HwlGz99uDffJOMz7/8JToWjaksmlOn1O/nN94IguBPncrPqDNF8BMn\ntmLVqtYzr61evdrTOZUWTX19PTo7O8/83tnZecaKoWhsbMQnPvEJVFVVoa6uDldeeSV2796ddy7T\nQVZ6TvYLjZpF49WD5/vBhIJ3AplFAxCCV22eYcKDpwSbSNhn0VAFT/uO//xf/jIwc6a8vfQcvEXj\nRMHLSmf4bdFQBS8KshaCB28yiyYID/748aztRxFVi0ZJ8AsXLkR7ezs6OjowMjKCDRs2YNmyZTnH\nfPrTn8Yf//hHpNNpDAwMYPv27ZgzZ07euUzXgwfyJ1VUsmhMpUnyj69eCN6kggfMEbxqUrI3Qrss\nGqrgRY/PAHDfffKbFYVpBR+URUMVvKgNpZRFE5RFc+JEPsGbuHbgHnxFRQXWrVuHJUuWIJ1O4847\n78Ts2bOxfv16AMCKFSvQ0tKC6667DhdffDHKyspw1113SQneZC0aIL9T/fDgRVv1ya5P4TXISicp\nr26cZNHw/edWwcsIftIkssepDE7y4HUInhJGJkPiLyIFPziofjqyg5cgq2ih09BQ/o2JYmCAtN/r\nQqdUigRZZ82yV/BR9OBNZ9EEQfCFpOBtdfLSpUuxdOnSnNdWrFiR8/vXv/51fP3rX1eexw+LRqTg\nq6qyedomcOqUPECnWug0YYKcUHVLFZi0aExm0QCkjyUZsQDMWDQsWZeVZSd8TU1+Fg1VezIFrwOv\nQVYRwU+aJPfgJ070ruD37yfio7panskTdQ9elUXjxKIJyoM/fpyURGERVYKP5ErWKHnwMvVOr69a\n6CQbnLqlCsImeNMWjWyhk2xS8jdCVg3LFLxpgvdq0dTVyS0aEwRP/Xcgeh681yArX0ROBN6iCcKD\nF1k0McGb6mH3AAAgAElEQVQbrkUDBOPB2xG8GwXvtwdvwqKhO9rLFOykSf4HWXm7hX4GurELnwdv\nWsF7DbIOD5NxMDSUX4jKFMFT/13WBt6DD8qi0d22z86Dj1qpAjr+CiUPPpLVJN168HRC1taSiW5i\nMKsI3o+FTuxTgVsP3oSCp+pdlgY5caKaSHXz4FXjgn/SoZk0w8OE3Nm22QVZdeBVwYvy4KurxUQV\nhoIPqlywrC127+Ghq+CDJHiq3vl5UfIEb7pUAZCvWKhnWlZGCLanx11bWTi1aOjipHHj1B581NMk\nVQFWgKQc8ptxs/BLwff352fQANFU8GzpDL7vTXnwvIIPy6JJp8k/ei1dBe/Vg+dr0fht0YgCrKau\nXfAEH4QHTxWXKZvGqUVD2z56NBnwos8cRJqk14VOqgArAHzmM8APfyj/u4mFTjKLRkS8rII3lUVj\nwoMfPVqcSTMwQMaoF4JPpYD2dqClhfwuyuQJKk2Sr2Wuq+DtVrJGrVSBKMAKxARvvBYNIPfgAXME\nf+QIMG2a/PoigqcDvbparEB0a9GIFLzOABZNGqcKXhVg1QH/fZtQ8FQJ8xk0QG6apCkF39lpnztP\noVLwor43YdEcOACcc062j3SCrH4pXJ6cnCh4Lx58WBYNj6gSvAaNGrpQAHnwfhB8b69442l6fX5S\ns19SVRWZyHyKpSpNkp7Tssx68LoTjsJOwduB/7695sEDWSUsU/BeLRqal57JEHvvkUcArvSSFCL1\nTK0klUXDLBR3jP/zf4Arrsj+bpcm6acHzwe9nXjwqpWsUVvoVGgKPlCC9zsPns1bNknwshomogHF\nDliZalalSdK9WlMpbx483386i0ZY2HnwdjC9khVQWzQm0iQTiewCne9/H7jpJuD88/Xea6fgWYuG\n1tgRVX/UxU9+Arz4IrB1a/a1MOvBu1XwJrNoYg8+H4ERfFC1aEx78KdPy4lOZdEA7iwael5SWS73\nC3dSbMyrgjdh0ZgOsrJZNKogq5cnj6oqoKMDeOghYNcu/fc5CbJSIaK7GIjH5s3A6tXAK6/kftYw\nFzrx5BREFs3ICLkpB1WKASAWDVdHEYAZgmf3tDWFyGbRRMWDt1PwIotGR8HrELxJi8aNgvdClCIP\n3s1CJzdBVrcKHiD99K//Ctx6K8BUyraFEwVPVacuCbJ4+23gb/8WePLJ/KeLKHnwJoqNUVEi24mM\nD6jHFk0+ImnRmPLgDxxw3k4ep087s2hY9Uw9eB4qDx7IVfCmLBo3Cl4We9ABT9wm0yRlQVaq4N1m\n0dDzPPOM87EjI3i64pcdB7SNbgh+zRrgnnsA0XYKdgud/PbgeYvGaxZNWVk29VOUrsoH1IMoVVBo\nQdbIZtFEwYPPZMggkm3WLNpVyqsHD3gneNGkCUPB6xB8eTnpZ36lJ6DOopEpeC9ZNADpp698RZ45\nJYNsoZPIoqGfyw3BHz0KzJ8v/luYpQp0FPy3vw288476fTxUPjz/tBZEqYJC8+AL2qJRKXgTBcf6\n+shELJP0ErurFIWfHnzQWTRBePCJBHk9nc7/W9BBVoBsSPPP/+z8ffQzsJ+D3azElEVz4oTYIgCi\n5cGLFPx//iexmPj3qcScyoePmkUTxXLBBb3QiQ9ymg6yqgKsFPyg0lHwdhYN9fa9ePBes2iCyoMH\n5J8r6DRJgGTOuLGmEgnxeBTlwXtR8CqCj7oHf+wYEU0sVBYNoFbw/NNanAefj0haNE48eFWQtbvb\neTtZqAKsFPyktvPgaaEs1RJ4vyyaKObBi46l4G+Edlk0JhS8F8iC/rxFw3rwTuvB2yl4VZpkmB58\nJkPUL7+i147U7BQ878H7adEMDpLzi8aXiZtnQRO8X7Vo6DnpwiAafAtSwbOT1E7B0wChzPYB/LNo\nglbwOhYN4EzBqzx4EwreC3jClpUqcKvgUymigGU3XtENIyoe/MmThOR5BW9n0dh58Oz4oJvTi+w+\np9i/H7j77tzXZIXGgFjB+7JlH0uuQ0O5tTAmTiQKXhS804WOgucnjZ0Hr1PfhN64TC90ClLB+0Xw\nqiyaqCp4kUXjxoPv7ib2kUwcRCnIyiv4Y8fIT17B21k0qnErCqib+ozvvAP89re5r8kCrEBM8L5l\n0dAvk99erbKSTCzVtnJ2UKVIitoA2Ct4O/+dnlPmwbutReNUwZsIsup68LKxISsXLAuyDg1527LP\nK3iCZ0sViBS8yFJRQWXPiK4PBFcP3k7BU4IXKXgvWTT8d22K4Pv7SR0qlj9kAVYgJnjfatGwCp6f\n9F5tGh2SE1k0Kg/eLkUSMJMHLyN42aIRFpbl3aIR5cHLvlNTFk2hKHi3efB2BO+1HvzgIPDf/63f\nHhZ2Cv6DD8hPpxaNEw8eMOfD03bu3599TRZgNXXdgiZ4Vb4zD7cK3jTB6yh4O4tGRPC6Ct6kB19R\nQb4DnZvs4CD5XF4Gm1OLRhZk1c2iqagg1oXXhU5e4MSi8YPgvaZJ7tkD/OM/6reHhY6CLy93btE4\nyaIBzCp4IDetM1bwCqjynVlYljsPXrRBsgmCt1Oxflo0XrJoRDdI3VRJr+od8MeDV2XRANn6LjTY\nFjR4y4XNojGRB3/iBBnTMngtNjYwQK7hBjoKvrHRuUXjJA8eME/w7e3Z12IFbwMdmyadJkpMlWVC\n4beC1w2ysqrJVJBV5MHreqiygaK72MlrgBXQ37IPEH+uVIr8Yz+HyqIBSL+GZc8AYgVPs2hECp72\nhy4xnDzpXcGrrjUwQK7hJguFH3P8wq9jx8guYKI0SS9ZNH4q+HPOySX4OMhqAx2C0vXf6flYD54n\nziAUvGqhUxgevKiOPIWugvcaYAW8K3jaT2xKmiqLBsiq5bDgNA8ecKbidS0aNs7ixIMfGCDvdbPV\nJU9OiUSuij92DJgxI1fB0+0tVU/rTrNoTHrw8+fnE3xs0Sig0wm6/jsQDQXPT+qwPfhUilgUoicg\nXQXvh0Vjt9CJ/1yibJjRo7O54DIFH5b/DsizaGSlCgBni53sCJ7uJUDPl04ToqVjQceioddxChE5\nsTevDz4Azjsvtx/o+JZt7A6oFTwtJcLCpIJfsCB4i0YkXLwgchaNrv8O+J9F40epAh0Pnn4uNwpe\nFbRyouC9WjReg6wigqfbIHZ3R9OiES10UgVZ6XtMKXi+DXyfB03wrKCgFg2r4O3sGUCu4Ds6gOee\nAxYtyn3dJMGffz65Nl0RH1s0NjBt0bAKXhRkHTfOWx6811IFMg9e16JxU4vGywYKFCYsGicevK6C\nB8hrJ0/Kg6xRsWgsK2slyapJ0veYJnh6PhHB23nw9DpOYafgZQRvR2giBW9ZwBe/CHz960BTU+7f\nTOX69/eTKrLNzVkVr+r/mOChr+BNefBON5rmoZsmKStVIPPg/cyisdtAQTeLxg8FL2uXaFLKCL6m\nRk7wYSt4luDpk2h5OXmdBo0Bbx68KouGbwNP8DoePECUqlOoFHwmQ9p+7rlii0YFkSh57DHSxnvv\nzT/eVL2dvj4ylliCjxW8DYL24GXlenWhu9ApSnnwdhZNUArea5BVZmVVVxOyiHqQlQ0EU2uJjgXe\ng9cleLssGv58/Fyysy8o+ZpW8CdPkvE0YYI7i4adw++/D3zzm8DPfiZ+r0mLhiX4oSHSXtneEFEt\nFxzYjk6A3uOTSQ9etqOSLsIsVZBMmrdonCj4KVPsj1PBBMHLLBpZNc4oKHhKrnyuPs2FHz/eXw9e\npeB1PPizzjLvwR87RsYTFRjpNHmy0SG0mhqgrY0U/poxA3j+eeCuu+Sbnpgm+AsuADZtUhcaA2IF\nD0DvLmfSgzdh0XgpVeDVgxdZNHb9p1JFQQZZnXrwOkFWIEvgMg8+Klk0vOBgx6Ibi4a+1+7zefXg\nGxvNK/gPPiA3jrKy3H7QsWhuvhn4v/8XmDuX3ChmzQLuu09+vCkPvq8v14NX2TOAd4JXpTd7QaAK\n3rRFY6fgvRB8JpMNtNi1QWbR0DzgTCabquZ0JaudRfPYY+Tn3/1d/vV5OFnoFAWLRqbggegqeB2C\nd6PgddQ73wanAoESvGkPvreXEDxA5lN/P3ky1lGsVVXAJz+p3w5THjxV8JMnk3IFqhx4el0vBE/n\nh84CTyeIXBaNFw9eFGR168FTlWXX4SqLhi724D3EqVPtz6kbZN27F3jjjdzre02TDDoP3kmQtVAJ\nni1X4CYPXpfg7RS8HcFPn+6PgqeWX01N1of3Q7Gatmjq6sg8/utf1Qre65ODH/YMEEGLJioevE6K\nJN8GIF9B808R775LvEQVnKRJDgzkKi67LJqgShWYWsnKQ0Xw555L/oUFlqz51bZ0HGQyuf68EwVv\nl0ED5MYBwiZ41oPnFTygZ9E4hWmCTySID79tm78K3i+Cj5xFExUPXsd/B9QLnWgbWNX87rv2JCRT\n8DKly05IEwudTCh4v/LgWeXL4xvfcNdWU9CxaKhFR4N1ugSvk0FDzyezaMLy4Kl3DuQreONZI4aC\nnZaVbVtzM7B1K7B8uX/XLQoFb9qi8dOD11XwqoVOQO5TRF8fIViqZlTn1PXgeYI3tdApiitZgWx9\nGtOP9ibAErwsi4avn6K70MmERePEg9fZN4CFSsHTICtAFHzULRpWvQOE4A8c8DfIWhQEb3qhk50H\nr6tYRdBJkQTUC52A3JvMu++SR2BV7Q32nDoevFOLJsxiY042/FAR/Jgx9n0YBnQVPPu5/AyyurFo\nJk0ix/FlfVmkUsCWLbmv2Sl4SvBsLCKqFg1fpbK5mfx0atG8/HJ+P8kQGsG3tbWhpaUFzc3NWLt2\nrfS4P/3pT6ioqMBvfvMb6TG6WTSmPPjKymx9eafQJTlVFg2QS/AdHXoesRMPfnDQmUVjp+AzGf2b\nmwpOFLzTlawi/z0KsAuyBkHwXhc6VVcTpaqyaf74R+DWW3NfkxE8mwcP5Cv4KBI8TZGkuOAC8tOp\ngt+0SX+HrFAIPp1OY+XKlWhra8PevXvxxBNPYN++fcLjvvnNb+K6666DpXi287MWjYjg+RWETqBL\ncqosGiDXg9cJsNJzOlHwp09nicXrQqf+fnIj0L3JykDbSoeDyTTJKBM8JVeRgu/vz9+kImgFb+fB\nV1eT66gIftu2/L/LLBo2Dx7IDbL6kvdtwIOXKXinBD8wQOJZOgiF4Hfs2IGmpibMmDEDlZWVWL58\nOTZu3Jh33I9//GPcfPPNOMvGXPazFo0oyAq4T5V0EmRVZdGwHrxOgBVw7sED2Qlnt9DJTsGbCLAC\n5OZaXp7d8KFUCN4ui4b34EUE//zz2XUNFCdP6mXR6HjwMg3GErwqF377djKnWOEkU/B0ExF6c2KD\nrIVi0dTWAvX1wLRp8vfIxnBvr941Q8miOXz4MBobG8/83tDQgO3bt+cds3HjRrzwwgv405/+hITE\nHF21ahXeegt48klg8uRWtLa2Co8zWYsGcJ8q6SRN0k7BswR/ww3253Sq4CsryYQ8+2z7hU52NzsT\nAVYK2jeUWEytZDVdM9sU7IKsx46JLRo+D76zE3jxxdzXTCh4ulOaaJMNNn1TpeAtiyj40aPJmJs+\nnbwuU/CHDpHxRMcxr+ALgeAB4C9/IbV0ZJDZp04V/JYtW7BF17jXgJLgZWTN4mtf+xruv/9+JBIJ\nWJYltWhWrVqF/fuB664DJNwOwJkHTxViJiMOsgLeLBodJSuyaGQevBMFr1uLZmAAaGjIVfBePHgT\nAVYKOtmqqswWGysUBa8bZOUDmn19hBhZUjfhwQNZm4b/LugTcFmZ2oM/dIj8bGkhx6gIfvRocrNi\nH+xraoCjR7Pv8SOLxqtFw3vwgJrcAXMKvrU1V/yuXr1a7wSydqn+WF9fj87OzjO/d3Z2oqGhIeeY\n119/Hcs/TBA9fvw4nnnmGVRWVmLZsmX5FzNciyaRyJKhTMG7JfjeXqKI7SCyaGQefEeHcw+et2hE\nSnfuXD2LRkfBm7JogNxBbyrIGmWC5xc6iQhe5MHzZEoJ/403gGuvJf93ouBlFg2QvenyfchaRyoF\nv20b2WSjry8/e0uk4Ds7cwvXjR1LUg5l7/EKE6UKRApe57pRtGiUHvzChQvR3t6Ojo4OjIyMYMOG\nDXnE/c477+DgwYM4ePAgbr75ZvzkJz8RkjtgvhYNkCVDPzx4txaNyIMfGiJepM5Ng05SXYtm+vTs\nZPO60MkPiwYw58EvXBj+giYZdEoV6OTBnz5NlDQtQZHJkH1SJ060b4NqRydAToBsf6s8+O3bgcsu\ny1f5ThR8oaVJ6kDUr24sGtNQEnxFRQXWrVuHJUuWYM6cOfj85z+P2bNnY/369Vi/fr3ji5le6ETP\nqVLwXjx4NxaNLE2ys5MEasrL9c45OJi7nyaQT4TUN62v17NodEoV+GHRAOYIfsIE4MYbzbTPNEzl\nwff1AfPmATt3kt97eojy1bEu2RuGzKLRIXiVgr/ssvybgEzB9/fnEnwhLHSim304QVQVvO2QWbp0\nKZYuXZrz2ooVK4THPvroo+qLGa5FA2QnlR8evKmFTidO6PvvAPlM/f35g59NPUwkspuHTJ4MvPee\n+PosdBS8id2cKHiCVy100g2yRhm6WTR2BH/6NHDllaQOOqBfpoCeT6XgZSKLbZfMgx8eBnbvJk9R\nL76op+CBfIvG7yCriTRJuyqyPFQET+erCkWzktVkHjxgr+C9ePCmFjoNDurnwANZgue/8LIyMlAy\nGfI7nZTshPQaZO3psQ8o6YJ+35lMbslkHk48+CiDVc+yUgX8479MwV96KXnq6+vT99/586k8eB5s\nbECm4HfvJnugjh2bq+Bltczp5+ctGj/TJKPkwQ8Okr5RrQqmKAqC98OioZOKV0wUbssVmFroRC0i\n3VWsAHk/TX8U/Y32oShv2WuaZE+PeQVP0/J0d8OxLHcqKmyYtGgmTgQuvJCQqhOCV9WDB7x58NR/\nB4iooMek0+TmzduPdD7yFo2fC53C9OBFIiWR0LNpioLgTS90ArJ1M0aNEitEv9MkdcsFO7VoLEvc\nD+xA8kPBnzplTsHTyaby34H8yTE4SMhBJ14RJdgRPA2y6lg0Y8cCCxaQQGsQCl7HoqH+O5Cr8mVj\njn5+1qLxu5pkWB687Cl0ypQSInhdBe/Ug+/tlafOebFoTC50ckrw9Nw8RATPTza7NElVpUCTFg39\nvu2+U57gKcEVGtzWouEXOtE8bDcEr1roBOh58GPHknPwNx6aIgnkKngZOckUvN8rWaPiwQ8OktWv\nOpk0RUHwpvPgAXLs6dPybfDcpEnqbtcH5Fo0lpXfftaDd0rwoi9cpuB1LJrycvvvwKRFQ6+lo+DZ\nNokWmhQCdCwaXQ9+3DhC8Dt36pcp4M8nmks6Cj6RyPfhjx0jv7e0kN91nhplCt7vWjRRsGjSadKO\ns84qIQXvVx68SsG7SZOkBbd0LALWoqFKlfWaq6pI+95/n9Ta1kF5ObGbdBX8hAnkJpdK2Q8UOx8+\nDIuGV12FSvB2OzrpFhujTzAXXwy89RYZO249eCd58Cyp8T789u3ARz6StUHZv9speLbt7M5WUbVo\nTBA8zXCrrS0hgvcrD960ReOkXC47oETqubqa7Mp+1lnOvsBRo/QJvqyMkPLJk/aqyM6HN23RuPHg\nC5XgVbVoKivJjbunJ5fgRQudqIKvqgLOOw946aVgPXgg34d/5ZWs/w4QAkynCZHJyKmqirSbbUN5\neTbxIaoWjZvxV1aWzRYDsltOjh8fWzQ5iIIH72SxD2vRiMi1upoQr9O9QnUJnlpTdELaTRo7BW86\niyaVckfwXuvRhwGVRQOQsXD8uFrBZzK5ZLtgAfD2284UvB3B23nwQL5Fs2kTsHhx9nfWxpGRU329\neMMLGmgtpiyaRIL0Na2eSufm+PElpOD9yoM37cE7VfCqWux00rgheJkHTwcwuzE1fWS2GyiqtFG6\n2YfJWjRUwau+02JU8CKCpxUlVR48tXCoFXLJJeSnm4VObley0utRgj96FHjnnVwFD2RjP7Ixl0iQ\nOkk8aKpkMdWiodfmn65ra0tIwfuVB2/ag3ei4HmLhm87vfHoLnKicGLRAFkFb6eKVOUKTp8mA9vr\nZh8UTiwadlIWahZNeTm5SabTcgVv58HzTy8LFpCfpiwaGQHy7WI99ueeA666Kn9c2Sl4GaiCj2ot\nGjdpkoB4bsoU/M9/Tp6WKYqC4P3Kgw/Tg+ctGpMK3gnB08lmN2lUCt6kPQOUXpCVVjelpTP4hXf0\nu1IRPH9zmz+f/NTNotFJk3TqwT/7LLBkSf577BS8DKyCj1q5YMvKDzjrgp2bNMgqI/g1a4DXX8/+\nXjQEXwh58E5sCj6Lhv+SqII3adHICF7XopEpeJMZNID7PPhCJXggS7B8kBXIkgZv0bB58LyCnzAB\n2LpVfzzq1oPnIbNoMhnzBM968FFT8END5BxunmKdWDTHjmXr4gNFQvA6d1e3HrzKonHqwesucqLX\nVwVZy8vJpHNK8JWV/lk0KgVvkuCd5MEXG8HLLJpEIlfZ2yl4IN/71rk+4L5cMJAl+D17yM1l5sz8\n97i1aOhipzBq0Zw6RbKSZHDrv9Nr61g0ySTQ3Q0cOZJ9rSgI3g+Lhip4VZDVTwXPWjSyAXvnneIJ\nYnde3Vo0QFbB61g0KgUfhkVTLAudgCxhj4yILRpK8hQ084Km13n97F7SJEV58Js2idU7YMaiCVrB\n//a3wP/6X/K/u/XfgfwECJlFwwavKYqG4AshD96NgpdV1AOABx90vguRlyCr2zRJ0wreSx58IaZJ\nAqTvT58mP/niajU1+RUyqW9PSdnrZ7crNubUg1cRvNcgaxge/K5d6qwWL0XudC2aDz4gP4NQ8Iby\nJfQQVi0aN2mSqh3UWSQSxIahXrOpL8mLB+92oZMfBK+TB18sQVZAPR6rq8XqkKruqirvGUQ6Cl7X\ng3//fUJCsj2UvSr4MCwaHYL326I5dozwRtERvJ+1aMJKkwSyNo1JReI2iyaVcq/gTVs0bj34Qk2T\nBLIELypdTS0aHiwpm1LwtC6SWw9+wgTyWmur/LsotCCrZRGCV8GrRcNn0YhKFRw7Bpx/fmzRaIE+\nEssIfswY0nl0hZkOnKRJAtlMGtMK3g+LJmgFX0oLnQC1ghdZNEAuwXu9uZWVqReY6Vo05eWkJr3M\nngG8BVn9TJOUEXxnZ/b7oTEPHqYtGvpZWf45dgy46KIiDLL6VYsmk5EHWRMJ55k0ThU8HVRhKvhJ\nk0hknqZ5yRBVD75Ygqx2Fo2Ogvf62en5RHanLsEDQHMz8KlPya8TVQUv45hdu4C/+RvCB7Jdlkxb\nNGVluTXwAULwc+aQmyMl/qIgeL9q0QDqIKZTH96pgmctmrA8+IoK0uYTJ6KTRUPbWmp58G48eBoY\nNRFgpjaNrgdPF/fwImnrVrKrlAy0bnxvb2GkSe7aRRaOTZgg9+G9EDzbt2wZEd6mOXYMOPts0g67\nipxeETmLxo0HD6gJ3s6H//WvgS98Ids2p/VYWIsmCAVPB7AoMJbJFF4WjSjIWshZNGFaNOz5dD34\n4WHyOn+s3UbRiUR2w/dCsGgowdfW5pYJYGHKg2dvmHxFyWPHSHXZadOyPnxRELxftWgAewUvI/je\nXuCee4C//IWQfCbjLE0SyLVowvLggWy9ErssmqgRfKko+OnTSflfHiaDrLQNMsEhIkAvG5zX1Tkn\n+DAtGkrwKgVv0oMH8jNpKMFPnZr14YuC4P2qRQPIPXhATfDf+Q4JJG3ZAhw8CKxc6ZzgqUVjWsE7\nsWgAoqYA92mSYS50op+J7kLvVkWFjdGjiQoXZdF88pPA974nfk9QCl5G8G77e/Jkkk7pVMGfPp3d\njN0kZAq+p4fkn59/vn8WDZ9Fw1o0YSn4wNMk/ciDB+wtGpFqbW8HHnkE+POfyZfx+98D11zjPovG\n5JfktFQBQNRUebl6J6qgSxXo1oNnVwCOGmV+4gcFu3UZsveYDLI69eC9KPjJk4HXXnOu4Lu7SVvs\nbCCnkInIPXtI5kp5udqi6e/PCiU315ZZNGEp+MgtdPLDg5cp+HvvBf7pn0jAAyBf/KZNZOWpznZ9\nFKyCN/Ul1deTAcCDDVxmMrl9NXmyfd/JFLxlRaOaZCHbMwD5/k+edEaYpi0aNouGHw8iAvRq0bhR\n8N3d/hAanbfpdO4c3r07W5lTZdGY9OBFFk06TT57XV2RKng/atEAzgl+0yZg3z4SYGVRVwf867/q\nXx/wJ03yn/9Z/DodRHQhBauA6ursB4lMwQ8NkZQupyUVVHBj0RQDwff26pf3BcxbNPSJwIlF40XB\nDw+7U/B+2XBUMLAEv2sX2VMWsLdoTHvw7A3l5Enye0UFIfjdu8nrRePB+5EHDzhPk3zgAWD1arFX\n6hR+LHRSXYsSPD8pdQhepuBN2zOAu4VOhZxBA5D+P3XK2Y3SDwWvsmhMK3jAuYL3I4OGQvQZaYAV\nsLdoTK5kBXIVPLVngFyLxulNUheBZ9H4lQevCrKK0iTfew+YPVv/OnZtMK3gZaCDSDQpJ092r+BN\n2zOAfh48u2FxsSh4J8LBryCrbj14rwoecK7gnb7HCXinIJkkT+sXXUR+D9OiOXYMmDKF/J9aNOm0\nPwFnIIIKPigPnr2TegW9cQWh4FUEX1fn3oM3vdkHoG/R0A2LU6nCrkMD2JfOEIEqblpSw+tTpSrI\nKrJJ+e36nMCNgi8vJ/3j11zhheRf/0pSVGVZLSy8KnjRGhX2eiIFT3nDdMAZiBjBW1YwHrxlkRVk\nbqPlPNgsmjAV/NSp6icZQK3gwyJ4emwqVTwK3o1F099P7BmvE91NmmSQCh4g37GfFg3LM6w9A5Bx\nrrJoTHjwMovmgw+yBD95MmlHf79/N7tIWTQ08u1kgLvx4Gm9blMBRT9KFcigIvjZs8kGySqoFLxp\ni8YJwdPPVQwEn0y6I3hTTy+sgvd7oZNbgq+pCU7B8wTvp4JPpfJLP7ClClgFX15OnoAOHy4SgrdT\n8E4NROgAABRwSURBVE79d8CdB3/8uDl7Bsi1aMJU8IkE0NCgfn+QCl43D549ttAJntorbvLgTQWY\n7YqNiTx4t6TmxqIByHcclAff2QnMmJH93W8PngZMaRYPW6qAt4anTctWufQDkSpV4NR/p+cE1L4l\nb9EcO2bOnqFtML3QSQY6eN2qLtmir7AtmmIheB3LkIefCl7Hg/ei4MePJ+eMskVz8mT2RgT4b9Gw\n9gwgz6IBiK166FCREDybLSGCGwVMa7aoFibxBG9awftRqkAGlYLXwZgxxKKxrNzXo2DRJJPFkSYJ\nuMuiMXVzC9KDTyT00nN5BGnRdHeT2vYUMgWfTpO5YRfHkkE2N2UWDVBkCp7NlhDBDUFWVtqrJV61\n+qHgo+DB66C8nJyDlqelCFvBU9VVDFk0gDsFb+rmRi2fINIkAUJYTjN//LRoeII/eTJ34dnYsYQP\nRP1QVUWEqBvI5qbKogldwbe1taGlpQXNzc1Yu3Zt3t//4z/+A/PmzcPFF1+Mj33sY9izZ4/yfCqb\nxq0HbzeZRBaNaQ8+qIVOXgkeEAda/fbg7W7csUVj7uYW5EInAPjlL4FLLnH2npoa/552eRuKJ/iy\nsvwSvoC3ACu9rmgRYk0NmW+pVMQUfDqdxsqVK9HW1oa9e/fiiSeewL59+3KOOe+88/DSSy9hz549\nuO+++/DFL35ReUFVuQI3HvxZZwHLlqmPEVk0JhV8VBY66UIUaPXTotG5cZc6wY+MmFfwQXjwQLaI\nlxP4reCpiEylCHHz+zuIbBov/jt7XX7zlEQie0M5cSKXe0JV8Dt27EBTUxNmzJiByspKLF++HBs3\nbsw55vLLL0fth8ywaNEidHV1KS9o2qIZNw746U/Vx/Bpkn4o+CgsdNJFUAo+DrLqwQ8FPzycX3AL\nECt4Lwud3CIoD56u0OZtFxnBm1Dwork5fjzw7rv5n3vaNKCry8eMItUfDx8+jMbGxjO/NzQ0YPv2\n7dLjH3nkEVx//fXCv61atQoAUSovvdSKz362Ne8Yv4KUojRJv7JoglTwbj+DSMFHgeBpkLVUCd5k\nkLW/n/Qpv6bEDw/eDfzMomGfUk6ezA2wUogyabzuQ0BjW6I6UePHAwcO5AvLqVPJ90HHzZYtW7Bl\nyxb3jeDbpPpjwsGKoxdffBE/+9nP8Morrwj/Tgn+4YeBSy8Vn8ONB68Dvz34UaPI+YMsNmZawfth\n0TjJg2dXshZyFg0NNrrNojnnHO9toONR1Od+ePBuEFSQtbtbXNnTLwU/MCDe37a2lhA8rUNDMW0a\n+Un7orW1Fa2trWf+vnr1avcNgg3B19fXo7Oz88zvnZ2daBCspNmzZw/uuusutLW1YaLodsleUGHR\nuPHgdeB3mqQf5YJl8MuDj4KCL1WLhnrmJi2a/n77PX0pvCx0covaWvfpiHZgn1L4ACt7fdMevJ1F\ns39/Pu9MmkRstFAsmoULF6K9vR0dHR0455xzsGHDBjzxxBM5xxw6dAg33ngjfvGLX6Cpqcn2gnZZ\nNH5ZNH6nSQa50ImuljOl4JNJ8rtpYnVD8HGapJk2UIuGR1QU/G23ybfR9ApewetaNH5l0QBZBc9T\nZFkZsWlCIfiKigqsW7cOS5YsQTqdxp133onZs2dj/fr1AIAVK1bg3/7t39Dd3Y27774bAFBZWYkd\nO3Yozpk7wPbtA1paiFfoF8GzCj6ZJF+kSbUaxkIn0SDSBX/D6+0lCsN0NTt6M48VvBp+BFlVBB8F\nD7662r9r8h68roI34cGLsmgAMr9eeQW4/PL894VG8ACwdOlSLF26NOe1FStWnPn/T3/6U/zULo2F\nvSBn0Vx3Hcmj/djH/PPgKaHRKpJ1dWbJrJAWOgH5Fo0f9gyQnWi6efA0yFqoG24D0QiyFoIH7yfY\nz6gieLrZBoUJi0ZWRmT8eJItI7KGp00rkpWsQK6CsCzSyS+9RH73y4OnHtfwsPkAK5C70CkIBZ9M\n5te7cALeovGjFjzgLA++spIoWNlm44WCKOTBu/Hgi43gKceoLJog0yRrawnfibjHTwUfOMGzA6yn\nhwzsl18mv/tJkDRV0nSKJBCdcsG6ECl40xk0gHMPvqensDNoAG+1aEwWG+vr01Pwos3bCx26Ct6P\nNElRsTEgu9AqaAXvgyFic0HGojlyhJDtq6+SRRl+Ejz14f1S8IVSbAzIV/B+WjQ6W/bRY3t6Ctt/\nB7I78zgZB5TgR0bMKfiBATGx8R48HUd+7CYUFtx68KdP25fbtruuKosGEHPP//gfZIWrHwic4NkB\ndvQo2aTi+HFgzx7/PHggS/B+KPgwsmhMKng/cuABQhrl5YS8dAi+u7s4CH7MGGeEydZvNxlknTo1\n/2+U/CyLtLHY7BnAvUXzzjsAF250BDuLBhAT/Cc/6f6atm3y79SSCzJ316NHySCcPZv48FOm+Kvg\nBwf9UfBsFk0hEHxQCh4g3+fgoJ4HXwwEX1sL3HKLs/fQ+NDAgDmLRtbnZWXkH93kOYwceL/h1qJ5\n+21g1iz312UX9jmxaPxEKB48q+CnTgWuvJL48IXqwQe90IlG6t0GWYPKogH0Cb5YLJrRo4FHHnH+\nnr4+QswmnmCp/y87F0uAxargnVo0w8PAe+8BM2e6v66dRTN2rLltQnURahbNkSOE4K+4gih4PwnS\nbw8+yCyawUGiwtxeS5RF44dFA5A2Dg2VDsG7AX3qM/XZ6flk44Odg8VI8KwNpWvR7N8PnHuut/mr\nIvhp04DzznN/brcINYvm6FHywadPJ6Szd6//HrzpVaxANu+4vNz9ZgG6qKwkC5O8TMogFTy9IcUE\nL0ciQcaQqQyiWMFniba8XKyax4wh2UNU6Lz9NnDBBd6uq8qiaWwEdu70dn43iIRFAxCb5oUX/LVo\nBgfN16EBSJv7+/333wHSf14JPgwPXmehUzGkSbrF6NHmFbyM4FmRVawEn0zKK0kC5KbK2jQmCV7W\np05r5ptAKBYNH2QFiE2ze3fhWjSyhSWmUVFB0rm8Ejyr4D/4wF+Cl62q5I8rhiCrW5gkeKrgZeNx\nzBgyD4DiJnhZJUkK1qZ56y1vAVZ6Xa8JEKYRqoKnHjxAFDzgL8H395N8U3aHdROgFk1QCt6yvFs0\nVMHv3Al0dACXXWakeXmorCSPwqWSJukWo0ebe3qxU/ArVwJf+xoZR1EiI1OgTyiyACsFm0lj2qKJ\nSp+GRvCWRZQjJfhZs4iy9tODP3KEqFenGwTbIWgFD5hT8N/+NvA//6d/pVtpe3UIfnCwtAnetIKX\n9fk//iN5Cnz44eIkeKqkZQFWCt6i8argVcXGwkIoC52SSXLnHDMm2xGJBFnR5acHf+iQ+QArkLUh\ngshxNUHwNMi6fTuxxX79azNtE4F+nzoED5Q2wZtS8GVlpD9VHvyjjwIf/zjJ2S9GgtdR8NSi6e4m\nT7R08w23MLFGxTRCU/Cs/07xla8Aixf7c93qarInoh8kbJeWZhKmFPzQEFHv//Iv/ubmxgSvh1Gj\nzH72UaPU43HOHKLkH3yweBc66Vo01J7xWq6hooLMqyjV9gmtFo2I4K+6yr/rVlcTBT9njvlz0y8z\nKA8e8K7g33yT9P8dd5hplwy6BE+Pi7NozJ3Prs+/8Q3gP/8zu8qyWEA5Rteieest7/47vW5vLxFQ\nUantE5pFc+SI90ciJ6iuBjo7yWOpaVByKiQFPzgI3HdfMKUV2J92x5Wqgjdp0QB6q2IrKkhqchjp\ne36CVfCNjfLjWIvGJMFHxZ4BImbR+ImqKnJdPzx4SpKFouCnTAFuuAG49VYzbVIhtmj04IeC1xEc\n48fHFo2JACtgJoXZNEKrJhk0wdNO98ODLzSLZvx44KmnzLTHDrpPNzHBB6/gixU0TbK3N3iLJpOJ\nTgYNEGKpgrAI3q8sGvann6CP01FSCSpQkrGzAUqd4Gtrza7P0PHgixVUROpk0XR3A+3t5ggeiNbc\nDCXIOjwcvAdP76p+KPhEgnyuIBQ8LfcaJZWgQmUlIXe7oBO9OZYqwa9fb/Y7tcuiKWbolCoAyE31\nzTcJ0Zt4eooiwYdWTbKYFDwQ7F6ilZXRGkQqVFbqKclSV/Bjx5oNdpa6gtcpVVBbSzb5MKHegWx/\nR0l8lZxF49dipMrKYBQ8QPqwGAleNzAYwx6l7sEPDZEa+6oy2LT+kokAK70uEK25GRO8IQT5SFxI\nBK9aUckfV6rq3Q+U8s2yspJUjR0/Xl2+m5K/aQUfpbkZikVz/HhumYIgUFVFru3Xoo5YwYvhRMHH\nBG8OpW7RHD2qtmeALMGbVvAlb9EcPhysegeIcv/BD/xbYRYreDF0Cb6yMiZ4kyhli6ayktgzdgRP\nY1mxgjeIigqgqyt4gq+oIGVS/UKs4MWIFXw4KGUFTz+3KoOG4te/BpqazFw3iinMoVg0YSh4vxFk\nFk0hEXxFhV6/jB5dfDVRwkSpp0kC9goeAK6/3tw2mzRdOkoWTWh58MVG8KNGBafgR40qnOXlugq+\ntdXco3KM0lbwTgjeNKImvkIheCDYRU5BIEgF/1//ZS4w5Dd0CX70aGDmTP/bUyr4+78Ph+CiADoP\ndSwa0yh5gqedX2wKPkgP/sILg7mOCegSfAyzuPTSsFsQHuh4ixV8SEFWoPgIPkiLppCgmwcfI4Yp\nhK3go+TBxwRvCEFaNIWEWMHHCBqxB59FKFk0QHF68LGCz0dM8DGCRkzwWcQK3hBKOS1NhZjgYwQN\nJ3nwfly75C2aceOi1QkmECt4MWIPPkbQoOWpYwUfkkVTbOod0Pfgt2zZ4ntbogRVv5RaX6gQ90UW\nJvpi+vRwCP6qq4CGhuCvK4Mtwbe1taGlpQXNzc1Yu3at8JivfvWraG5uxrx58/DGG28oz9fSQjZ7\nLjasWAFcfbX9caU2kVUWTan1hQpxX2Rhoi8OHiQFDYPGQw/5V7HWDZQEn06nsXLlSrS1tWHv3r14\n4oknsG/fvpxjnn76aezfvx/t7e146KGHcPfddysvWFsL3Hab94ZHDR//OHDuuWG3InqIPfgYYcCv\nooKFBiXB79ixA01NTZgxYwYqKyuxfPlybNy4MeeYp556CrfffjsAYNGiRejp6cHRo0f9a3GMgkIp\nVzWMESNsKKfe4cOH0djYeOb3hoYGbN++3faYrq4uTOWM9kR8Sz2D1atXh92EwCH7+kuxL2SI+yKL\nuC/MQEnwuqRsWZbyffzfY8SIESOG/1BaNPX19ejs7Dzze2dnJxq4EDF/TFdXF+rr6w03M0aMGDFi\nOIWS4BcuXIj29nZ0dHRgZGQEGzZswLJly3KOWbZsGR5//HEAwLZt2zBhwoQ8eyZGjBgxYgQPpUVT\nUVGBdevWYcmSJUin07jzzjsxe/ZsrF+/HgCwYsUKXH/99Xj66afR1NSEmpoaPProo4E0PEaMGDFi\n2MDyGc8884w1a9Ysq6mpybr//vv9vlykcOjQIau1tdWaM2eOdeGFF1oPPPCAZVmWdeLECevaa6+1\nmpubrcWLF1vd3d0htzQ4pFIpa/78+danPvUpy7JKty+6u7utm266yWppabFmz55tbdu2rWT7Ys2a\nNdacOXOsuXPnWrfccos1NDRUMn1xxx13WFOmTLHmzp175jXVZ1+zZo3V1NRkzZo1y9q0aZPt+X1d\nyaqTR1/MqKysxA9/+EO8+eab2LZtGx588EHs27cP999/PxYvXoy3334b11xzDe6///6wmxoYHnjg\nAcyZM+dMIL5U++Kee+7B9ddfj3379mHPnj1oaWkpyb7o6OjAww8/jJ07d+LPf/4z0uk0nnzyyZLp\nizvuuANtbW05r8k++969e7Fhwwbs3bsXbW1t+NKXvoRMJqO+gC+3pQ/x6quvWkuWLDnz+3e/+13r\nu9/9rp+XjDQ+/elPW88995w1a9Ys68iRI5ZlWdb7779vzZo1K+SWBYPOzk7rmmuusV544YUzCr4U\n+6Knp8eaOXNm3uul2BcnTpywLrjgAuvkyZNWMpm0PvWpT1nPPvtsSfXFwYMHcxS87LOvWbMmxwVZ\nsmSJtXXrVuW5fVXwohz5w4cP+3nJyKKjowNvvPEGFi1ahKNHj54JRE+dOrVkFob9wz/8A77//e+j\njNnluBT74uDBgzjrrLNwxx134JJLLsFdd92F/v7+kuyLSZMm4d5778X06dNxzjnnYMKECVi8eHFJ\n9gWF7LO/9957OVmMOnzqK8HHi5sI+vr6cNNNN+GBBx7AuHHjcv6WSCRKop9+//vfY8qUKViwYIF0\nXUSp9EUqlcLOnTvxpS99CTt37kRNTU2eBVEqfXHgwAH86Ec/QkdHB9577z309fXhF7/4Rc4xpdIX\nIth9drt+8ZXgdfLoix3JZBI33XQTbr31VnzmM58BQO7KR44cAQC8//77mDJlSphNDASvvvoqnnrq\nKcycORO33HILXnjhBdx6660l2RcNDQ1oaGjApR9unHrzzTdj586dmDZtWsn1xWuvvYaPfvSjqKur\nQ0VFBW688UZs3bq1JPuCQjYn3Kw58pXgdfLoixmWZeHOO+/EnDlz8LWvfe3M68uWLcPPf/5zAMDP\nf/7zM8RfzFizZg06Oztx8OBBPPnkk7j66qvx7//+7yXZF9OmTUNjYyPefvttAMDmzZtx4YUX4oYb\nbii5vmhpacG2bdswODgIy7KwefNmzJkzpyT7gkI2J5YtW4Ynn3wSIyMjOHjwINrb2/GRj3xEfTLT\nAQMeTz/9tHXBBRdY559/vrVmzRq/LxcpvPzyy1YikbDmzZtnzZ8/35o/f771zDPPWCdOnLCuueaa\nok8Bk2HLli3WDTfcYFmWVbJ9sWvXLmvhwoXWxRdfbH32s5+1enp6SrYv1q5deyZN8rbbbrNGRkZK\npi+WL19unX322VZlZaXV0NBg/exnP1N+9u985zvW+eefb82aNctqa2uzPX/CsuJCMTFixIhRjAh8\nR6cYMWLEiBEMYoKPESNGjCJFTPAxYsSIUaSICT5GjBgxihQxwceIESNGkSIm+BgxYsQoUvx/Gnom\ncLELubUAAAAASUVORK5CYII=\n",
"text": [
"<matplotlib.figure.Figure at 0x2e746d0>"
]
}
],
"prompt_number": 4
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When image output takes longer than 500ms:\n",
"\n",
"1. old output is removed after 500ms, causing the document below (including the new focused cell) to scroll up.\n",
"2. when new output appears after 500ms, the executed cell remains at a fixed position, scrolling the focused input cell down.\n",
"3. The document below the output shifts by 1px or 2px.\n",
"\n",
"Desired behavior:\n",
"\n",
"1. The focused input cell should remain at a **fixed** position on the screen, after executing the following cell. (e.g. the document **above** should scroll **down** instead)\n",
"2. An animation should be used to remove (and possibly add) the figure, to make it more obvious where everything on the screen has moved to.\n",
"3. 1-2px jump after output should not be there."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"plot(rand(200000));"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"png": "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\nP9usAAAAAElFTkSuQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0x3006b10>"
]
}
],
"prompt_number": 5
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When long output appears quickly, scroll to put the next cell in view, leaving as much output visible as possible.\n",
"\n",
"Currently the successive cell is not entriely on screen. (the CodeMirror box is on screen, but the frame around the input cell is partially off screen)\n",
"\n",
"Desired behavior: place output in a scrolled output box, so that both the preceeding excecuted cell, and following input cell are on the screen at the same time."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"for x in range(100):\n",
" print x"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"0\n",
"1\n",
"2\n",
"3\n",
"4\n",
"5\n",
"6\n",
"7\n",
"8\n",
"9\n",
"10\n",
"11\n",
"12\n",
"13\n",
"14\n",
"15\n",
"16\n",
"17\n",
"18\n",
"19\n",
"20\n",
"21\n",
"22\n",
"23\n",
"24\n",
"25\n",
"26\n",
"27\n",
"28\n",
"29\n",
"30\n",
"31\n",
"32\n",
"33\n",
"34\n",
"35\n",
"36\n",
"37\n",
"38\n",
"39\n",
"40\n",
"41\n",
"42\n",
"43\n",
"44\n",
"45\n",
"46\n",
"47\n",
"48\n",
"49\n",
"50\n",
"51\n",
"52\n",
"53\n",
"54\n",
"55\n",
"56\n",
"57\n",
"58\n",
"59\n",
"60\n",
"61\n",
"62\n",
"63\n",
"64\n",
"65\n",
"66\n",
"67\n",
"68\n",
"69\n",
"70\n",
"71\n",
"72\n",
"73\n",
"74\n",
"75\n",
"76\n",
"77\n",
"78\n",
"79\n",
"80\n",
"81\n",
"82\n",
"83\n",
"84\n",
"85\n",
"86\n",
"87\n",
"88\n",
"89\n",
"90\n",
"91\n",
"92\n",
"93\n",
"94\n",
"95\n",
"96\n",
"97\n",
"98\n",
"99\n"
]
}
],
"prompt_number": 6
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"When long output takes longer than 500ms, so it is cleared first, the following happens:\n",
"\n",
"1. Document is scrolled so the next input cell is at the bottom of the screen. (jump)\n",
"2. Old output is removed, placing both the executing cell and following input cell next to each other, in the middle of the screen. (jump)\n",
"3. Output is added, scrolling the following focused input cell off the bottom of the screen.\n",
"4. Depending on where your document has scrolled to in the meantime, after output you may have the output of the following cell visible, and no input cells visible.\n",
"\n",
"Desired behavior:\n",
"\n",
"1. New focused input cell should be on screen at a fixed position at all times.\n",
"2. Input above the next focused input cell should be scrolled down instead of scrolling focused input cell up.\n",
"3. Place new output in a scrolled box."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"time.sleep(5)\n",
"for x in range(100):\n",
" print x"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"0\n",
"1\n",
"2\n",
"3\n",
"4\n",
"5\n",
"6\n",
"7\n",
"8\n",
"9\n",
"10\n",
"11\n",
"12\n",
"13\n",
"14\n",
"15\n",
"16\n",
"17\n",
"18\n",
"19\n",
"20\n",
"21\n",
"22\n",
"23\n",
"24\n",
"25\n",
"26\n",
"27\n",
"28\n",
"29\n",
"30\n",
"31\n",
"32\n",
"33\n",
"34\n",
"35\n",
"36\n",
"37\n",
"38\n",
"39\n",
"40\n",
"41\n",
"42\n",
"43\n",
"44\n",
"45\n",
"46\n",
"47\n",
"48\n",
"49\n",
"50\n",
"51\n",
"52\n",
"53\n",
"54\n",
"55\n",
"56\n",
"57\n",
"58\n",
"59\n",
"60\n",
"61\n",
"62\n",
"63\n",
"64\n",
"65\n",
"66\n",
"67\n",
"68\n",
"69\n",
"70\n",
"71\n",
"72\n",
"73\n",
"74\n",
"75\n",
"76\n",
"77\n",
"78\n",
"79\n",
"80\n",
"81\n",
"82\n",
"83\n",
"84\n",
"85\n",
"86\n",
"87\n",
"88\n",
"89\n",
"90\n",
"91\n",
"92\n",
"93\n",
"94\n",
"95\n",
"96\n",
"97\n",
"98\n",
"99\n"
]
}
],
"prompt_number": 9
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Click on the above output cell.\n",
"\n",
"Behavior: document scrolls to the corresponding input cell.\n",
"\n",
"Desired behavior: \n",
"\n",
"1. Focus should be changed with **no** scrolling."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print \"foo\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"foo\n"
]
}
],
"prompt_number": 66
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Terminal mode: press ctrl-enter on the following cell.\n",
"\n",
"Behavior: entire cell is selected as if the user typed ctrl-A\n",
"\n",
"Desired behavior: Don't select output on ctrl-enter. It requires the user to click or play with the arrow keys to continue working."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print \"bar\"\n",
"print \"baz\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"bar\n",
"baz\n"
]
}
],
"prompt_number": 73
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double click on the plot in the following cell.\n",
"\n",
"Desired behavior: plot should be maximized to the width of the browser such that the entire plot is still on screen.\n",
"\n",
"There's no reason to make the user grab the tiny resize handle, when 99% of the time the user just wants to make it bigger."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"plot(rand(100));"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x2e7a2d0>"
]
}
],
"prompt_number": 11
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Long executing cells: imagine you execute something that will take several minutes, and in the meantime may have scrolled to a different position in the document. Go back and execute cell #7 for example, then scroll back down here. On output, the document scrolls to the middle of the output.\n",
"\n",
"Desired behavior: the focused input cell should not move on output.\n",
"\n",
"1. If the running output is **above** the focused cell, the document above should scroll keeping the focused cell fixed.\n",
"2. If the running output is **below** the focused cell, the document below should scroll keeping the focused cell fixed.\n",
"3. the user knows the computation has completed because of the \"Kernel Busy\" button in the upper right.\n",
"\n",
"Perhaps a more obvious indicator of completion is desirable, if there is no scrolling."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"print \"dummy cell\""
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"dummy cell\n"
]
}
],
"prompt_number": 10
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Adding cells:\n",
"\n",
"Type (ctrl-m a) and (ctrl-m b) to add a cell above or below the current one.\n",
"\n",
"Desired behavior: the input cursor should remain fixed (i.e. where the user is looking)\n",
"\n",
"1. When a cell is added above, the document below should shift **down** keeping the cursor fixed.\n",
"2. When a cell is added below, the document above should shift **up** keeping the cursor fixed."
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment