Skip to content

Instantly share code, notes, and snippets.

@kuanb
Created September 26, 2019 00:04
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kuanb/cad00b4edcb7f925a8960f73ca266d09 to your computer and use it in GitHub Desktop.
Save kuanb/cad00b4edcb7f925a8960f73ca266d09 to your computer and use it in GitHub Desktop.
Riffing off the data summarized here https://sharedstreets.github.io/speed-prediction/
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x7f0c0c2c56a0>"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtQAAADFCAYAAAB0OGXnAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzs3Xd4XOWV+PHvK41GvTdbxZbcu2zjgm26Qws1QEiHkLBsEpawm/ZLNiRkCQkpmw0pGxYSSkIINQGbUI2xjXuXu2yr997rtPf3x9wZzWhmpFGzZDif5/Ej6U7RHWvm3nPPe97zKq01QgghhBBCiJEJmegdEEIIIYQQ4nwmAbUQQgghhBCjIAG1EEIIIYQQoyABtRBCCCGEEKMgAbUQQgghhBCjIAG1EEIIIYQQoyABtRBCCCGEEKMgAbUQQgghhBCjIAG1EEIIIYQQo2Ca6B0YTEpKis7JyZno3RBCCCGEEB9yBw8ebNRap47ksZM6oM7JyeHAgQMTvRtCCCGEEOJDTilVNtLHSsmHEEIIIYQQoyABtRBCCCGEEKMgAbUQQgghhBCjIAG1EEIIIYQQoyABtRBCCCGEGNSWgnp2FjZO9G5MWpO6y4cQQgghhJh4j24+S0x4KOtmpUz0rkxKElALIYQQQohB9VnthKqJ3ovJSwJqIYQQQggxKKvdQY9VIupAJKAWQgghhBCDstgdOPRE78XkJQG1EEIIIYQYlNWmsWKf6N2YtCSgFkIIIYQQg7LYHdglRR2QBNRCCCGEEGJQFpsDi90x0bsxaQ3Zh1opNVcple/xr10p9e9KqSSl1Cal1Fnja6Jxf6WU+q1SqlApdVQptdzjue407n9WKXXneL4wIYQQQggxNix2BxabZKkDGTKg1lqf1lov1VovBS4AuoFXge8Cm7XWs4HNxs8A1wKzjX/3AI8BKKWSgAeB1cAq4EFXEC6EEEIIISYnrTUWmzM73WuVOmp/hrtS4nqgSGtdBtwE/NnY/mfgZuP7m4C/aKc9QIJSaipwNbBJa92stW4BNgHXjPoVCCGEEEKIcWPzyEr3SEDt13AD6k8Dzxvfp2uta4zva4F04/tMoMLjMZXGtkDbvSil7lFKHVBKHWhoaBjm7gkhhBBCiLHkyk4D9FgkoPYn6IBaKWUGbgReHnib1loDY1JUo7V+Qmu9Qmu9IjU1dSyeUgghhBBCjJDVYzKilHz4N5wM9bXAIa11nfFznVHKgfG13theBWR7PC7L2BZouxBCCCGEmKS8MtQSUPs1nID6M/SXewBsBFydOu4ENnhsv8Po9nEh0GaUhrwDXKWUSjQmI15lbBNCCCGEEJOUZ7s8KfnwL6g+1EqpaOBK4F89Nv8MeEkp9WWgDLjd2P4m8HGgEGdHkLsAtNbNSqkfA/uN+z2ktW4e9SsQQgghhBDjRjLUQwsqoNZadwHJA7Y14ez6MfC+Grg3wPM8BTw1/N0UQgghhBATwWrvnyYnNdT+DbfLhxBCCCGE+AiRDPXQJKAWQgghhBABeddQy/Lj/khALYQQQgghApIM9dAkoBZCCCGEEAFJH+qhSUAthBBCCCECkpUShyYBtRBCCCGECMirhloy1H5JQC2EEEIIIQKySkA9JAmohRBCCCFEQH1GyUeIgl4p+fBLAmohhBBCCBGQK0MdFxkmGeoAJKAWQgghhBABuSYlxkVIQB2IBNRCCCGEECIgV4Y6PjJMunwEIAG1EEIIIYQIyJ2hjjRJH+oAJKAWQgghhBABWewagNhwKfkIRAJqIYQQQggRkMXmwBwaQpQ5VALqACSgFkIIIYQQAVntDsymECLMofRYHEM/4CNIAmohhBBCCBGQxeYgLFQRGRYqNdQBBBVQK6USlFKvKKUKlFKnlFJrlFJJSqlNSqmzxtdE475KKfVbpVShUuqoUmq5x/Pcadz/rFLqzvF6UUIIIYQQYmy4MtSRYc6SD631RO/SpBNshvo3wNta63lAHnAK+C6wWWs9G9hs/AxwLTDb+HcP8BiAUioJeBBYDawCHnQF4UIIIYQQYnJyZqhDiDSHYndorHYJqAcaMqBWSsUDlwBPAmitLVrrVuAm4M/G3f4M3Gx8fxPwF+20B0hQSk0FrgY2aa2btdYtwCbgmjF9NUIIIYQQYkz1uWqow0IBZGKiH8FkqHOBBuBppdRhpdSflFLRQLrWusa4Ty2QbnyfCVR4PL7S2BZouxel1D1KqQNKqQMNDQ3DezVCCCGEEGJMWY0uH5FGQC111L6CCahNwHLgMa31MqCL/vIOALSzmGZM8v9a6ye01iu01itSU1PH4imFEEIIIcQIWVw11GZn2CirJfoKJqCuBCq11nuNn1/BGWDXGaUcGF/rjdurgGyPx2cZ2wJtF0IIIYQQk5TV7p2hlpIPX0MG1FrrWqBCKTXX2LQeOAlsBFydOu4ENhjfbwTuMLp9XAi0GaUh7wBXKaUSjcmIVxnbhBBCCCHEJOWalCg11IGZgrzffcBzSikzUAzchTMYf0kp9WWgDLjduO+bwMeBQqDbuC9a62al1I+B/cb9HtJaN4/JqxBCCCGEEOPCYtdEmT1qqKXkw0dQAbXWOh9Y4eem9X7uq4F7AzzPU8BTw9lBIYQQQggxcTzb5oFkqP2RlRKFEEIIIURAVruDcJPUUA9GAmohhBBCCBGQa+lxdw21lHz4kIBaCCGEEEIE5F563Cx9qAORgFoIIYQQQgTkrqGWko+AJKAWQgghhBABWQYuPW5xTPAeTT4SUAshhBBCiIAsxtLjoSEKsylEMtR+SEAthBBCCCH80lq7M9QAkWGhUkPthwTUQgghhBDCL7tDozWYQ/sDauny4UsCaiGEEEII4ZfF7qyXDnNlqM2hUvLhhwTUQgghhBDCL6tNA/0Z6ogwCaj9kYBaCCGEEEL41Wd3Bs/uDHVYiNRQ+yEBtRBCCCGE8Mtqd2aow0M9Sj6khtqHBNRCCCGEEMIvi81VQ60AY1KiZKh9SEAthBBCCCH8shqTEs2hzkVdpIbaPwmohRBCCCGEX+4MdWh/hrpXSj58SEAthBBCCCH8crXNM0vbvEEFFVArpUqVUseUUvlKqQPGtiSl1Cal1Fnja6KxXSmlfquUKlRKHVVKLfd4njuN+59VSt05Pi9JCCGEEEKMBVeG2mthFwmofQwnQ3251nqp1nqF8fN3gc1a69nAZuNngGuB2ca/e4DHwBmAAw8Cq4FVwIOuIFwIIYQQQkw+1gEZ6oiwUHqtDhwOPZG7NemMpuTjJuDPxvd/Bm722P4X7bQHSFBKTQWuBjZprZu11i3AJuCaUfx+IYQQQggxjvprqPtLPgD6jO3CKdiAWgPvKqUOKqXuMbala61rjO9rgXTj+0ygwuOxlca2QNu9KKXuUUodUEodaGhoCHL3hBBCCCHEWHOXfJj6Sz4AKfsYwBTk/S7SWlcppdKATUqpAs8btdZaKTUmuX+t9RPAEwArVqyQ8QQhhBBCiAnimpQYFioB9WCCylBrrauMr/XAqzhroOuMUg6Mr/XG3auAbI+HZxnbAm0XQgghhBCTkCtDHe6qoTZKPmS1RG9DBtRKqWilVKzre+Aq4DiwEXB16rgT2GB8vxG4w+j2cSHQZpSGvANcpZRKNCYjXmVsE0IIIYQQk5Br6fGBJR+9kqH2EkzJRzrwqlLKdf+/aa3fVkrtB15SSn0ZKANuN+7/JvBxoBDoBu4C0Fo3K6V+DOw37veQ1rp5zF6JEEIIIYQYUxabM3CWko/BDRlQa62LgTw/25uA9X62a+DeAM/1FPDU8HdTCCGEEEKcaz4ZarPzq5R8eJOVEoUQQgghhF/9kxKdS49HSIbaLwmohRBCCCGEX/5WSgSpoR5IAmohhBBCCOGXxe4gLFRhzKVzL+wiJR/eJKAWQgghhBB+WW0Od3YaZFJiIBJQCyGEEEIIvyx2B2Gm/nBRaqj9k4BaCCGEEEL4ZbV7Z6jDTSEoBb1S8uFFAmohhBBCCOFXn83h7kENoJQiMixUMtQDSEAthBBCCCH8stq1e9lxFwmofUlALYQQQggh/LLY7F4ZanDWUfdYHBO0R5OTBNRCCCGEEMIvi83hXiXRJdIcKn2oB5CAWgghhBBC+GW1a9+AWko+fEhALYQQQggh/LLYHO5lx10iw0JlYZcBJKAWQgghhBB+WewOzKZQr20RZslQDyQBtRBCCCGE8Mtic2D2yVCHSA31ABJQCyGEEEIIv6x2P5MSpYbahwTUQgghhBi29l4rLV2Wid4NMc4sdodP27xIs9RQDxR0QK2UClVKHVZK/dP4OVcptVcpVaiUelEpZTa2hxs/Fxq353g8x/eM7aeVUleP9YsRQgghxLnxn/84xlf+enCid0OMM6vNe+lxMPpQe2SoK1u6+fvBynO9a5PKcDLU9wOnPH7+OfBrrfUsoAX4srH9y0CLsf3Xxv1QSi0APg0sBK4B/qCU8q5yF0IIIcR5oaKlhzN1HRO9G2KcWewOwvyUfHjWUP/q3TN88+UjVLf2nOvdmzSCCqiVUlnAdcCfjJ8VcAXwinGXPwM3G9/fZPyMcft64/43AS9orfu01iVAIbBqLF6EEEIIIc6ttm4LLd1WOvtsE70rYhxZ/GSoI8NCsdo1VruDbouNd07UArCzsHEidnFSCDZD/SjwHcC1zmQy0Kq1dn2KKoFM4/tMoALAuL3NuL97u5/HCCGEEOI80tJtBZzD/eLDy+JvUqLZWWDQa7Wz6WQd3RY7oSGKXUVNE7GLk8KQAbVS6nqgXmt9TgqllFL3KKUOKKUONDQ0nItfKcSHltZ6ondBCPEhZHdo2nuNgLr5ozvM/1FgtWu/NdQAPVY7G/KryYiP4JpFU9hZ2PiRPe8Ek6FeB9yolCoFXsBZ6vEbIEEpZTLukwVUGd9XAdkAxu3xQJPndj+PcdNaP6G1XqG1XpGamjrsFySEcNpyup4lP3pXZuELIcZcR68VV9wkGeoPL7tDY3do3y4fRkBd1dLDtjMN3LA0g4tnpVDf0UdRQ+dE7OqEGzKg1lp/T2udpbXOwTmp8H2t9eeALcBtxt3uBDYY3280fsa4/X3tvFzZCHza6AKSC8wG9o3ZKxFCeNlaUE9Hn00mDQkhxpyr3AOgskUy1B9WFpuz0jdQyccrByuxOzQ3L81k3awUAHac/WjWUY+mD/X/A76hlCrEWSP9pLH9SSDZ2P4N4LsAWusTwEvASeBt4F6ttTQxFGKc5Fe0AlDWJNkjIcTYau3uH/mqkAz1h5bFHiCgNjLUG/KrmZsey/ypcWQnRZGdFMnOj2gdtWnou/TTWm8FthrfF+OnS4fWuhf4ZIDH/wT4yXB3UggxPH02Oydr2gEobeqa4L0RQnzYtBoZ6oSoMMlQf4i5M9QDlh531VB39tm4aVmGe/u6mSm8cawGm92BKfSjtXbgR+vVCnEeeuVgJYX1w6tJO1XTgdXuLHCcyAz128dr+f6rxybs9wshxkdrjzNDvTgzXgLqDzFroAy1uX8ZkZuW9jdsWzsrhY5eG8er28/NDk4iElALMYm1dlv41stH+L9tRcN6XH55CwDzpsROaIb6n0ereW5vObVtvRO2D0KIsefKUC/MiKetx+ru+CE+XFwZ6kCTElflJpGZEOnevnZmMvDR7EctAfUoaK159L0zFH9EZ7SK8XewzBkYH6tsG9bjjlS2kRYbzurcJMqbuiesjZErc7W7eHwPrmfrOuizyZQMIc6Vlm4rSsHCjDhAWud9WAXKUCfHmDGFKG5fke21PSUmnHlTYtlVJAG1GIbKlh4efe8sL+6vGPrOYtLaerp+0mZX9pU2A3C2voNuS/CrkeVXtLI0O4HpydF09NlonqDWea6Aeleh/0kqNW2jPwk3dvZx7W+289c95aN+LiFEcNq6LcRFhDE9OQqQ1nkjsf1sA99++cik7tvcFyBDnRITzq7vXsGty33X51s7M4UDpS1eS5N/FEhAPQquofRjVcPLHorx19ptwWZ3DHm/uvZevvj0fv74QfE52Kvh21/STFiowqHhRJA1aa3dFkoau8jLTiAnxXmyK52AOupeq53Gzj4AdhU1+Zw03i+oY80j73N8lJ+fg2Ut2Bza3dVECDH+WnusJESFkZXoPMZUSB31sL1ysJKXD1YGfWyfCIEy1ABpcREopXy2r5uVTJ/NwSFjhPWjQgLqUShtdAbUx6vaRn2FWd/RS1vP5MySTkYtXRZ+tPEEHX4yy+29Vi75xRZueWwXVa2DH+RPVDuDuR0TWO9V3drD/S8cdgefLr1WO8eq2rghzzmD+miQZR+u+y0zMtQAZRNQR+3KTl8wPZGq1h7Km72D+lcOVgJwwMjCj5TroO36W4rzT6/Vzpef2T/q94I4d1q6rSREmUmMCiPaHCoZ6hFwBdKbTtZN8J4E1t/lI/hwcfWMZEJD1ISeVyeCBNSjUNLoPIC099pGPcv583/ayzdfyh+L3Zp0HI6xH856Lb+KZ3aV8tKBSp/b3jpWQ3uvjdO1Hdzwux2DTo44aRzQjla2+Q3Ox5vWmv/396NsyK92B5gu+RWtWO2ajy+aytT4CI5WBpeBza9oRSlYlBVPVmIkIWpiMtSuE+ynjBq7nR5lHx29Vt47VQ/A0THIUAOUNHbR1Rd8WYyYPDadrGNzQT3vF9RP9K6IILV1W0iIDEMpRVZilHT6GKZui809/+rdSRxQu7pF+ctQBxITbmJWagxn6j5a88skoB6F0qYu95tsNMPWtW29nKnrZNuZBtq6P1xZ6pq2HvIeepeXD4xtnfl2YyWmlw9U+IwO/P1QFTNSonnz/otJjjbzhSf3BuyScaK6nRDlXF51b/HwsmOF9Z38+J8nef1ItU92OVgvH6hk+9lGIsNCef1ItddtrmzdipxEFmfGBz0x8UhFKzNTY4iLCCPcFEpGQuSEZqgvnpNCely41ySVd0/UYbE5mBofMewJl54sNgdHq9rITYlGayiolVUhz0d/P+S8mJSg7PzhzFCHAZCVGElFs2Soh+NUTQcODStzEjlV0z7k/987J2p55K1T52jv+lnszjrogTXUQ0mOMXst/vNRIAH1KJQ0dnHxrBRMIYrjoxhu3lvizNxZ7Zr3Tk3eK9WR2HSyjo5eG99/7fioa2Vd+mx2dhc1kRITTkFth1cpREVzN/tKmrlleSYzU2N47d51XL1wCj97q8CdjfZ0sqady+emEW4KYecwZyU/t7eMJ3eUcN/zh1nx8Htc8+gHwxq6q23r5cdvnGRVbhLfvGoOJ6rbKfLoGLOvtIU56TEkRJnJy06guLFryLIgrTVHKp0TEl1ykqMnKEPdQ1ioIj02grUzU9hd1OQerdhwpJqsxEhuX5FNYUPniDPLJ6rbsNgcfG71NABOStnHeae+vZcPzjQAsuLe+aS120JilBmA7KQoqlp6Jt3kut+8d5ZP/t+uid4Nv1zHqv/42ByAQc/9fTY7D244wePbikeddDtQ2szqn75HS5AT1S02I0M9zIA6McpMswTUIhg2u4OK5m7mTIlldnosx6tGPqlgT3ETcREmMuIjeOt4jc/tbxyt4d/+dmhcSifG2/sF9WQmRJIcbearzx0ckwz8wdIWeqx2vn/dPCLCQnjRI/v96uEqAG5e5px5HB1u4gfXLwCc/8+eOnqtlDV1s2xaAitzkgJ2ogjkRHU7S7MTeO3edXz76rn02Rw88Nox9ySOwWit+f6rzvv+4tYl3JCXgVK4s9R2h+ZQWQsrc5IA5+IJACeGuCipbOmhsdNCnkdAPT05aoIy1N1kJkQSEqJYOzOZpi4LZ+o7aOzsY2dhIzfmZZCXHY/WIx/hcZV73JCXQXxkmHt1SHH+eC2/yp2pq5DWa0HbkF/FF57cOyHnBbtD095rIz6yP0Pd0WejvWdylVztL23mQNnk7DZxorqdxKgw1sxMZnZaDO+eCBxQv3qoitp2Zy//g+Wjm2ewr7SZuvY+ihuDK8foX3rcd/LhYBKjw4IO2j8sJKAeocqWHmwOTW5yNIsy4kY1MXFPcTOrcpO5dvFUPjjT6FXLa7U7+Ombp/jn0Zrzrr6wx+LMJF+1MJ3//dxyatt6+cZL+aM+AXxwtpGwUMVVC6bw8UVTeT2/mh6LHa01rx6u4sIZSe6Z5wAZCZFkJkSyf8CEJ1d5wIKMONbOSuZ0XQcNHcGVbjgcmlPV7SzOjGdpdgL3Xj6LB66bT11736AHRpeNR6rZXFDPt66aS05KNOlxEazOTWLjkWq01pyqaaezz8aqXGdAvSTLGVAfGaI84ohRZ71sQIa6tdt6zsuJKlt63H+HtbNSAGf7vDeP1WB3aG5amsniTOd+jrRTzuHyVjITIkmPi2BhRtykni0vfGmt+fvBKpZmJ3DpnFQaO/vosUy+4Gey6bPZ+embp9h+ttH9mR9MUUMnrxvHlrHgGinzLPkA7xGGXUWNfOrx3RPWshOgvLkbrfGZED0ZHK9uY2FGPEoprlyQzr7SZr8lEja7g8e2FTF/ahxhoYr9paPrnOG6aK1rD+5c1z8pMXSIe3pLijLT2mPF7ud8v7e4iV+9e9rv46pae/jacwc5fR6W70lAPUIlRsYvJyWaRZnxNHVZ3FeQw1Hb1ktJYxcXzkji44unYLE7vALnDfnVVLX2EBEWwhPbx7e124b8Kgpqxy4g2V3cSJ/NwRXz0lg+LZEHrlvA5oJ6Hhvmqn8DfXCmgeXTEokON3H7ymw6+my8eayGwxWtlDR2ccvyLJ/HrMpNYn9ps9cJxVUCsjAjnnUzjYAvyLKPipZuOvps7kUNAC6bm0ZWYiR/2V066GNdHUqWZidw17pc9/Yb8zIpbujiZE27O/hfYWSoE6LMTEuK4ljV4CfP/PJWzKYQ5k6JdW+bZvSJLWs+t1lqZ0DtPNFmJkSSkxzFrqJGNuZXMzc9lrlTYkmNDScjPiLoDiYDHSxr4YLpiYBzgYmC2o6g2iWKyeFEdTun6zq49YIs98VXVevkC34mm1cOVroDos2nBk+0aK35xov53Pf8YX717pkxCapdgZ+r5MP1t/Ps9PH4tmL2ljTz/VePTUgpiM3ucHd5mmyLr1ntDs7UdrrPH1ctnILdof0mzd44VkNZUzf3r5/Nosz4UXfCcf2N6oKMV1wjrmHDzlCb0Rq/ZYqv5Vfzu/cL/Xbh2lJQz5vHagkNGd7vmwwkoB4hV8u8nJQoFmU6PxQjKftw1U9fOCOZZdmJpMeF8+YxZ9mHw6H5v21FzJsSy7eumsu+kuZx67Xb0NHH/S/kc+Pvd/K3veVjcgB8v6CeKHOoO8t6x5rpXLd4Ko++d2bENbMNHX2crGnnkjmpAKzOTSInOYoXD1Twj0OVhJtCuHbRFJ/HrcxJorHT2Z/Z5UR1G8nRZtJiw1mUGU9chCnoso8THsG4S2iI4vMXTmdvSfOgV9e/eOc07b02fnbrYq+DxjWLpmAKUWw8Us2B0hYyjcy6y+KseI5UDJ2hXpQR5zWBJMdonXcu66hdPahdATXAmpkp7Chs5EBZCzcuzXBvX5wVP6IMdXVrD7XtvSyf5sxyL8iIw2JzUNQwcUutj7e/7injb3s/PAvYvHKwEnNoCDcuySA7ychynodlHy/tr+CX7xSck99ltTt4bGsRS7MTWJWTxOYhRi53FTVxpLKNeVNi+f2WQn7xzulRH99bjSAp3shQZ7sDauffrrq1hw/ONpCbEs1bx2vdpXjnUk1brzs7OtmOCWfrOrHYHSwwAuolmfGkxYb7zMFxODR/2FLErLQYrlqQzsqcJI5UtI2qhMU1+XH4GerhhYtJ0c6LLX8jFE3GJP6tp33fu1tP15OdFMnM1Ohh/b7JQALqESpt7CLaHEpqTDjzp8YRokZWB7qnuInYCJPzOUIU1yycwtbTDXT12Xj3ZB2F9Z189bKZfHrVNGIjTPxxnLLUrgAwKzGS/3z1GP/+Yn7QQW9jZ59PpwatNVsKGlg3K4Vwk3OoSCnFbRdkYbXrEQ/x7yh0Tl66ZHaq+zk/uSKbfSXN/ONQFVcvnEJsRJjP41xBvWfZx8madhZkxKGUIjREceGM5KAnJp6obiM0RDE7PcZr++0rsjGbQnh2T6nfx+VXtPLC/nLuWpvDvClxXrclRZu5aHYK/zxSw77SZlbmJHrdnpcVT1Vrj/tgNJDV7uBYVRtLs70fNy3JyFA3nruTiuvE6ll6s25WMr1W58H5xrz+gHpJVgIlQ0y4PFDazFW/3uY1E95VP33BdOff1nVxc7Lmwzkx8XhVGw9uPMEv3ynwO4x6vrHYHGw8Us2VC9KJjwpzB2Xn48TE5/aW8b9bisZs4vVgNuRXU9nSw31XzGL9/DRO1bQP2m//sa1FpMaG89q96/jc6mk8trWIR94qGFVQPTBDHRdpIjbc5P7c//1gJVrDU19cyaqcJB7ccOKc96ku80ggFE+ygNrVxGCRMTcmJMRZ9rHtTINXsLy5oJ7TdR187bKZhIQoVkxPxGJ3jPh9Zndo93ulfpgZ6uG0zYP+94a/MpYmI8jeerrBa3uv1c7OwiYun5vmd8GYyU4C6hEqaeomJyUapRRRZhMzU2NGtLDEnuJmVucmuTOV1y6eSp/NwZbT9Ty2tZBpSVFct3gqMeEmPrd6Om8dqxmX9kSuUo8X71nDN6+cw+tHqvnEH3YGvBK2OzRbCur5yrMHufCnm7nh9zvY6zHp70xdJ1WtPVwxL83rca7uE4fLR5Zp336mkeRos1epxW0XZBGioNti5xY/y6ACzEyNJjnazL4SZxDmGnJbMLX/edbNSqGypYfyIDK5J6vbmZ0WQ0SYd11ZUrSZG5Zk8I9DVT7LmdsdmgdeO0ZabDj/fuUcv897Y14GVa09NHT0ucs9XIaqNz5c3kqv1cGqXO+AOtIcypS4iDHLUL9zopavPHtw0BOy6+TpmaG+cEYyAMunJZCd1B9ou+rDBztJ/N+2Is7UdfLAa8fdv/dgWQuRYaHMm+osb5mREk24KYQTo5ggPFnZHZr/fPUYDq1p6bYG3ZN8Mtt6up7mLgu3XuD8zKbGhhNuCjnvWufZHZrTdc6ExG83nx333/WHLYXMnxrHFfPSWD8/HYD3A3SIOFrZyo7CRu6+KJeIsFAevnkRd6yZzhMfFI8qOdOZiD3oAAAgAElEQVRqzMdIMCYlKqXISoqiorkbh0Pz8sFK1sxIJjclml/dnodDa7750pFzOoHSVTc9PTmKkiAn4AVDa81Xnj3I2kc2862Xj7Ahv2rYbVNPVrcTZQ4lN7k/C3vlgnS6LXY2nayjvr2XypZufr+lkKzESHcCwlXeNtI66rr2Xndf6bqO4ALqQEuPDyWYDPXOwkb6bP0xxr6SZnqsdi6fm+bzmPOBBNQjVNrYRW5K/4dhUWb8sEs+6tpd9dPJ7m0rc5JIiTHzy3dOc6Syja9cOhOT8Ub+4tocQkMUT+0sGZsX4aGgtoOUmHBSY8O5b/1sHr55MWfqOjnrpzF7r9XOdb/dzl3P7GdfaTNfXJtDdlIk33v1mDsA32IM5Qz8YCRGm8lNieZw+fAPCA6H5oOzjVw0O4UQj1KJ9LgIPjY/nSlxEVxkTH4bSCnFipxEd4a6qMF7yA2cGVQgqCz1iep2r8d6umPNdLotdv4xYKGW5/aWcbyqnQeuW0BMuMnvY69ckE64kQlwZdVdFmXGoVTgFRO3n20gNESxZqbv/8FYdfrQWvPrTWd4+0TtoDP6/WWoU2LC+caVc/jmVXO97uvqYBLodVW19vB+QT0zUqLZdqaBN4ySqMPlLSzJincf6E2hIcybEvuh7PTx512lHK1s46EbFxKiYNuZhqEfNEK9Vjv/t61oyFVGR0NrzZ93l5ISE+412pR5HvYzLmvqotfqYEZqNO+erPPbnnOsvHmshuLGLu67YhZKKWamRpOTHOVeJGmgx7YWERth4rNGW0mlFP9140Iun5vKH7YW0TnC0ruWbu9JieC8eK5s6WFvSTPlzd3cvtI5lyU7KYoHb1zI3pLmcTl3BVLe3I05NIS1M5MpHsPRuZcOVPD2iVoyEiLZdLKO+1/IZ9VP3uP9guBbpp6obnOPSrusmZlMTLiJ+54/zKqfbuain2/hSEWrVwyQHBPOzNRonwn2wXJ9tmLDTUGXfLgz1MNtm2cE1C1+MtSNnRamJ0fRbbFzwOPiYMvpesJNIV4x0flEAuoRsNgcVLZ0ewXUCzPiqG3vDbpLBPS3cfN884SGKK5eOIWypm7SYsPd2RuAKfER3JiXyYv7K8a8Y8Pp2g7meUxkc2UN/Q3TFTd0UVDbwX98bA57vreeB65fwMM3L6a4oYs/bHVOOHy/oJ4FU+OYEh/h8/hl2QkcrmgdcshRa+11n4JaZ8u1i40TsKf/vj2P1+5d5z7w+LMyJ4ny5m7q2nvdJz3PDPXM1BjSYsPdV82bTtbxHy/m+0wybOjoo76jz6t+2lNedgJ5WfE8u6fMXUt8srqdX75zmotmpXD9kqkB9zE2IoyPzU8nJcbMrNQYn9tmpEQHDDw/ONvI0uwEdysrT2PVi/pQeYu7O0rlIJPHXD2o02LDvbZ/ff1s1g246BlqwuXze8vRwDN3rWJRZhz/9fpJ6tt7OVHd7s7YuCzIiOdEdfs5nwRVWN/BVb/e5tVHfKxUt/bwq3dPc+mcVD5/4XTyshN8hkrH0nN7y/nZWwVc8+gHbMgfn9rXvx+qYmdhE/ddMcvrM5udGHXelXy4Pg8/vmkRseGmcctSOxya379fyKy0GK5Z6JwnopRi/fx0dhc1+ZToFTV08vaJWu5YM92rDE4pxf0fm0Nrt5W/7ikb0b60dVtQCuIiBgbU3bx0oILYCBPXLuo/zn3ygixW5STxsp+VbcdLRXM3WYmRzEyNobXbOibdRmraenj4n6dYnZvES/+6hkM/uJIN965janwkT+8sDeo5HA7Nyep2Fg1IyISbQvnjHSv40Q0LePjmRfzi1iX872eX85lV07zutzIniQOlzSPK9lcYiY6l0xKCnpRosTkwhSiv4D8YicbFVnOXd6zSa7XT2WfjhiUZmEND2OIxB2Db6QbWzEwm0jy8jiKTxZABtVIqQim1Tyl1RCl1Qin1X8b2XKXUXqVUoVLqRaWU2dgebvxcaNye4/Fc3zO2n1ZKXT1eL2q8VbR049D9k72gvxZqOAu87CludtdPe7pusfNAdPfFue76Y5e7L86l22Ln+f1jNzHJ7tCcqfMOqF1D8v5Obq6htCvmpbnrqi6dk8rNSzN4bGshB8uaOVjWwuXzfANfgGXTEmjo6BsyA/aDDcdZ+tAmHnnzFFXGJBeAS2b7ZmDjIsL8Bu+eXBnffSXNnKxuJyIshBkeQatSinWzUth8qp6VD7/Hv/zlAK/lV/HLd057lb64SnsWTPWfoQb4wpocihq6mPeDt1nx8Ht8/Lfb6bXa+dGNC4esDfvJJxbx8lfW+j2A5WUl+B3ub+22cLSylYv9/N8ATE+JorGzb8QZKZfn9vS/76pbAx+QPXtQB2NxVrzfCwWLzcEL+8tZPy+NaclRPPKJJTR19vEvfzmAzaFZPm1gQB1HW491XLOr/vzxgxLO1HXypzGe46C15ocbTmDXmodvXoRSikvnpHKksnVc2pHZHZpndpWwKDOOOemx3P9CPl9//nDQF/B2h3ZPYgqkrr2Xh14/waqcJL5w4XSv27KTIs+7SYkFNc7VVi+Ynshd63J4+0Qtp8ZhlORsfSen6zr40rpcr8/V+vlpWOwO9+qxLo9vK8IcGuLVSchlaXYCF89O4U/bi4dsU/jmsRpq27w/6609VuIjw7z2Izsxii6LnX8erebGvAyvcjjXsfVMfYdPKdx4KWvuIjspipnGMX60nT601nzvH8ewOhz84rYlhIQ4597kZSdw6/JMdhY2BhWkljZ10WWx+03IrJmZzBfX5fL5C6dz+8psrlsy1afbxYqcJNp7bZytH/7rqWjuRilYPi2Rjl4b3ZahzwdWu2PY9dMAkWGhhJtCfDLUrvrp7KRIVs9IYqsx2lba2EVxY9d5W+4BwWWo+4ArtNZ5wFLgGqXUhcDPgV9rrWcBLcCXjft/GWgxtv/auB9KqQXAp4GFwDXAH5RS5+VlSH+Hj/6A2jX8P9TCG572FjexKifJ5wOzZmYyf/3yar7k50A4f2ocs9NiOFQ2ul6UnkqbuuizObxarcVHhhEXYfJ7cnNlrad51MECPHD9AqLDTdz19H7sDu1TP+2yzAiCBqujfuVgJX/dU05WYiR/2lHCJb/YwmNbnR1P0uIGD5wDWTA1jmhzKPtLmzlR3c7cKXE+//c35mUQHR7Kx+an8/RdK3nyzhV09Nq8ZiO7OnwEKvkAuGlpBt+9dh7fvnouP75pIb/+VB5vfP1iZqXFBHyMS0KU2Wv0w9PirHjqO/qoHhAw7ixsQmv8Zu+h/+IvmPrwQFq6LPzzWI37gq9qkEyiZw/qYORlxVPZ4jvh8p0TtTR2WvicEXgtzornzrU57n7cywdkqF219eM57D5Qc5eF1/KrMJtC+MehqjFdzOCDs428d6qO//jYHPdF7mVz09DaWeIz1jadrKWiuYd7L5vFi/dcyDevnMMbx2q46X93DLqMcHFDJz97q4ALH9nMNY9+4NVL35NzQaPj9Nkc/NwISjxlJ0bR1mM9Z0HXWDhV28GMVOd8ii9dlEtMuInfvT/2WeqaNudnfs6AidArc5KIjTCx2aOO+lhlG68eruJTK7NJifEeJXK574rZNHZaeGGQ5Mxbx2r42nOHeHpAqUZLt9VdP+3imi9htWtuX5Ht81wXTE9EazgyTp2qBipv6mZaUpT7WDrcso+9xU0cLm9xlzz8/VAVW0838J2r5zE92fv4/InlWTg0QY3oBHP+GMyqHN8J9sGqaOkmPTbCfSypD6Lsw2JzDLt+GpwXUUnRZp8Lf9cxPjk6nEvnpFJY30lFc7f7HPuhDqi1k+tSKMz4p4ErgFeM7X8Gbja+v8n4GeP29cqZkrsJeEFr3ae1LgEKgVVj8irOMVfrNc+gJy4ijJzkqKDrqOvaeykeUD/topTiotkpAcsXpiVFjWmj+oIa55DlwEx5VmKU35KP8uZuYiNM7pZJLikx4Txw3QLae20kRoX5dJtwmTslloiwkIAB9enaDh547RhrZiSz8d8u4oPvXM7dF+cSGqK82q0Nlyk0hOXTE50Z6pp2vxnmy+elceCBK/mfTy3l8rlpXDI7lZSYcF47XO2+z8nqdrKTIv2WVriEhYbwlUtncu/ls/jCmhw+sSyLOemxAe8fLFe7wFcG1GdvP9tAbISJvCz/ZSjuTh+jqKP++6FKLDYH/3bFLMJNIVS3DZah7vGakDiUQBMun91TRnZSJJd6XCh886q5TImLYEZqtHvii8u8KbEoxTld4OWF/eX02Rz8z+159NkcYzp6tDG/mvjIML50Uf/F9ZLMeJKizeNS9vHkjhKykyK5auEUTKEh3Ld+Nn+7ezXVrb3c9/xhn+4ihfUdfOrx3Vzxq238cXsx86fGUdbczQ83nPD7/K8freG9U3V866q5fi8a3f2Mz6MsdUFtu3t0LyHKzBfX5vDmsdoxX5jCFfykD0gohIWGcNncNLacrsfh0LxxtIZPPr6L1JhwvnrZzIDPtyo3iVW5STy+rdhrYphLY2cf33/tOIBPKVNrt4WEKO/PnutvN29KrLtk0FNedjxKwaGy8Q+o27qttPfamJ4cRVZiJGGhalidPtq6rXzmj3v4xB92sfS/3uWOp/bx0OsnWJmTyBfX5vjcPzclmqXZCfzjkG9A/fi2Ih7fVuQu0The3UZYqBrx+SA7KZK02PAR9aOubO4hOymSKcZ7KJiMusWuR5ShBmenj4EJhqZO58/JMWYuM4LnrWca2HK6gRmp0e51E85HQf0vKaVClVL5QD2wCSgCWrXWrvGCSsBV7JsJVAAYt7cByZ7b/TzG83fdo5Q6oJQ60NAwfnWCwdJa+9SmlTZ1ERdhctcIuSzMjA+q5ENrzcZ8Z4A2kuL77KQoKlt6xqxO9HStc8hyYPY0OynSXXPlqby52yc77XLr8kxuyMvgs6unBWzMHhYawpKsBA75mZjY1Wfjq88dJCY8jN98ZimhIYrMhEi+d+18Dv3gSr522awRvMJ+K3OSKKjtoK3HGlSGwBQawg15U3m/oN7d1u1kTTsLp/oPXMfbzNQYLp+byl92l7rLULTWbD/byLqZgS/CphsHqZHWUWuteW5vOSumJzJ/ahyZCZFUBejG4K8H9VBcvdw92y+eqetgX0kzn1s93SuTGRNu4rl/Wc3/fna5z/NEmU3MSIk+ZxMTbXYHz+4uY92sZK5fksG6Wck8u7tsTBaXsTs0W07Xc9ncVK8MUUiI4pLZKXxwpmFMuyYcqWhlf2kLX1yb6/XZXT0jmYduWsj2s438t8fqZgfLmrn1sd0U1nfynWvmsvu7V/CXL63i/vWzefVwFa8e9r7oq2rt4UcbT5CXneB1geDJ3Yv6PKmj7ui1UtHc45WM+PJFuSgFbx2vGdPf5Qp+UmN9M87r56XR2Gnh31/M596/HWJhRjwb/u0ipsYP/hn8+hWzqW3v9blA11rzn/84RmefjQVT43yC0bYeq9eERHAeY2IjTNy5NsdvWVtsRBhz02M5OIIJ6YOpbev1OUe7Ek7ZSVGYQkOYnhw9rJKPwoZOHBruuWQGtyzPoqa1h5AQxc9v9R1VcblleSYFtR1e5T67Cht55K0CHnmrgLue2U9rt4WT1e3MSY8dcZCqlGJlTtKIOn1UtHSTnRhFepzzPVQXxJwvi80x7AmJLknRZpoHjGw1GBnqFGOCZXZSJG8dq2F3cdN5nZ2GIANqrbVda70UyMKZVZ43XjuktX5Ca71Ca70iNdX/8PW50Npt4emdJVz7m+0sfehdr5ZepY3OCYkDDxquYesfbjjuMyTvUtzQyRef3s9P3jxFXlb8iIZ9spOi6OyzuWdaj1ZBbQc5KdE+LeCyjQz1wMC9YpCAWinF7z6zjG9fPfhbZNm0BE5Wt3tlRlw1aqWNXfzuM8tIix1ZacdgVnq0ohusBtrTzUszsdgdvH28hs4+GyWNXV5t+861uy+eQWOnhY1HnBdlxY1dVLX2cPEc//XT4DyZpcSYR5yh3l3UREljF5+70DlBJiMhMmCdsr8OH0OJjQhjRmo0H5xtYHdREwW17Ty1owSzKcTv8PHM1BifERWXhRnxAUs+uvpsXPPoB9z0vzv5f68c5akdJRwsax7y4rSj18pTO0p45K1TXvX0756so6atly+udQaIX1ybS01bL+8Esfz8UPIrWmjusrhbo3m6bG4aTV2WQfu5d/Rah7UAxJM7SogJN3H7Ct+VRj+9ahqfNXoYv3G0hndP1PLZP+4lKdrMq19bx9cum+Uuxbr38lmsyknigVePU9bUZSwvXsk1j35Ar9XOL29bEvBi292L+hx1+ihv6h60//lQzhjt8jznnyRGm0mNCQ94Dhipuo5eEqLCfI7TAJfNTSXUWBTqkxdk8bd/We038B5o3axklmYn8NjWIq866VcPV/HuyTq+ddUcLp+XSnlzt7v0AZydGwaWfESHm9j//Y/5TKLztGxaIofLW8bsQtDu0Nzw+x08/MYpr+2uVWFd56kZKdHDKvkoMuqTP7d6Gj++eRGbvnEp+T+8ymvOzUDXL8nAFKLci9j0Wu3856vHyEmO4kc3LGB3URPX/XYH+RWtoz5/rMhJpKq1Z1jvsT6bndr2XrKSotyf1WB6UY+0hhqcn4XWAXGKZ4ZaKcVlc9LYVdSExeY47wNq/727AtBatyqltgBrgASllMnIQmcBrrGOKiAbqFRKmYB4oMlju4vnYyaNth4rD244zpvHa7HYHCzJiic63MRP3zzFc3evRilFSWMXK3J8yxk+t3o6xQ1d/G1vOc/vK+eTK7K5fG4anX1WOnptFDd08dzeMiJMofzg+gXcsWb6iJbXdB0kypu7fYa8R6KgtsPdusxTVmIkvVYHjZ0W98HZ4dBUtPT4PckPx7LsRB63F3Oiut09sezt47VsPFLNt66aw5qZ49M2Z9m0BMJCFTaH9joJDmZJVjy5KdG8drjafUAdaf3bWFg7M5l5U2J5cnsJn7wgi+1nvBe7CSQ3JZoXD1Sw/WwjWYmR5CRHc//HZpORMHQm+bm95SREhbln7mcmRPK+n1WuoL/G3pVtDNbq3GSe31fOZ/64x73tE8syh/0eX5ARx8Yj1bQZE6c8uTrUzEmP4b1Tdbx4wDloNjM1mi9cOJ1bLshydy6w2R2UNnXx1z3lvHyggi5j8lZ+eStPfGEF8VFhPLOzlOykSPd8gSvmpTEtKYqnd5Zw3SDdXIKx6WQ9phDnJMSBLpmTilLOhRHyjN7urn3+4GwDL+2vZHNBHdcumspvP7NsyN9V09bDm8dquHNtjt+FkQAevGEBBTXtfPPlfCw2B4uzEnjqzhUkD6jRDQ1R/PrTS7n20Q/4+vOHSY0N571T9azMSeSXt+V5zT0ZKCEqjBiPBULG2+2P72b9/DR+8onFI3r8KaNcbt6Ai7upCZGDTtodibr2PtIDJBkSosx8++q5xnoF04JeFEMpxTeunMOdT+9jzc82c2FuMlcvTOdXm86wYnoiX75oBq8drsLm0JQ3d7sn+LV2W31KPgC/wb6n5dMSeH5fOUUNncwegxK4w+UtNHT08cGANpKeGWqA3NRotpyux+7QQZ1zixo6MZtChpUUSIp2ljBsyK/i/10zj99uPktpUzd/u3s1a2elsHRaIl/760E6em0BO0QFy5UYOlDWwo0Djt9aax547TgNHX08cccK9/bq1l60huzESOIiTESEhQRX8mFzEBY6skVWkqLC/NZQR5lDiTI7w8/L56Xy7J4yosyhrMz1XyZ6vhgyoFZKpQJWI5iOBK7EOdFwC3Ab8AJwJ7DBeMhG4+fdxu3va621Umoj8Del1P8AGcBsYN8Yv55Riw03caauk0+tyObTq7JZmBHPMztL+NHrJ9l6poE1M5KpbushJ9k3ixMdbuJnty7h366Yxf9tK+Kl/ZVeywQr5QwQvnvtvFFlX10BdUVzt3uhlJHq6rNR3tzNbRf4vh7PTh+ugLq+ow+LzeG1MMdILJvWv8DL8mmJWGwOfvZ2AXPTY/nqKMs6BhMRFkpeVgIt3RaiA/SCHkgpxU1LM/jN5rNsNvq9jvaAOBpKKe6+eAbfevkIOwob2X62kZzkqCH/Jj+6cSHvnKijsrmb8uZuXjxQwYzUaP710sB1luCcdPfOiVruWpfjPmFmJETS0NFHn83u04lmJBlqgIduWsgda6bT0m2htdtKe491RBdurixnTVuPT0Bda5xAfnlbHnnZzm4z28408Nc9Zfzo9ZP8/O3TZCVG0tRloaXbgtYQFqq4YUkGX1yXQ0ljF996+QiffHwX37l6HvtKm3nguvnuk3RoiOKONdN5+I1THKtsY3GAmvZgbD5Vx6rcJL+1+knRZpZkJbDtTD33f2w2XX02/ry7lGd2llLf0UdStJmsxCh2FDaitQ4YYPVa7VS29PDkjmIcWvutD3UJN4Xy2Ocv4JY/7GL+1Dh++5ml7pPiQJkJkfzs1iV87blDhJtC+MH1C9x99AejlHK3Xxtvrd0Watt7R7xqKzjrp2MjTGQM6DCUmRDhbqc3HHuKm3j7eC0/vH6BT2lBfXsvaXGBs85fGeJzHMglc1J5/5uXsSG/io351fzo9ZNEhoXy35/MIzREMcNYArqkoYuZqTHY7A46em0+JR/BcE0iPlTeMiYBtWu9g6rWHiqau/vPWc3dpMSY3f3+Z6bEYLVrKlu6fSYU+lNY38mMlOhhJ7xuWZ7Je6fqeHpnCU98UMxtF2Sx1mgTujQ7gX9+/WKe21PGzcv8L0AWrHlTYomLMPGn7cWsn5fmdS57bm85z+0tRynvWvcKj4sMpRTpcRFB9aK2jDJD3dZjxWZ3uMsRm7osJMf0X4ytmZGC2RTC2pkpPueS800wEcVU4M9GR44Q4CWt9T+VUieBF5RSDwOHgSeN+z8JPKuUKgSacXb2QGt9Qin1EnASsAH3aq1HviD9OAkJUbzx9Yu8TkCfXT2dZ3aV8rM3C/jNZ5aiNQG7MIAzkHj45sV8ff1satt6iY0IIzbCRGyEaUzeMK7a1LGYmOha4Wuun2yt58HJlUWuCNDhY7jS4yLITIg0FnjJ5S+7Sylr6uaZu1aOKGs/HD+7dcmwhsLBWfbx6HtneWZXCcnRZncN2kS5IW8qP3+7gMe2FpFf0cqty30viAZamBHvdSGQ91/vBlWreqauA5tDe3UQyTTegzWtvT4Zx8qWHsyhIaQG6C4QSFhoSMAyjuGYEu/8vbVtvT7Lu7syMq4Wi6mx4dx2QRa3XZDFsco2/ravnJYuC6tyzaTEhJMWF86VC9LdF8BLshJIjQnnX589yN1/OUBkWCifHFCScvvKbP5n0xme2lnCrz+1dESvobypm7P1nXx6kOHzy+ak8rv3z/L798/y9M5SmrosXDInlYdumsYV89J45WAl//nqMcqMVV09vX28lh9uOE69Rw3lzUszhrwoS4+LYNu3Lxu037vLxxdP5fEvXMCc9NhBj5cDZSVGnZOSD9fk8jN1HTgceth9dsE5oXv+lDifC5ap8ZG8X1A/6MXMQLuLmrjrmX30Wh3866UzfOqf69r7xiQI9Sc3JZp//9gc7l8/m+NV7YSGKPd7ZkaK0XausRNId5fIJPrJUA9lRko0CVFhHCpr5VMr+9/bRQ2d/P1gJVMTIpmeFMX05CiyE6OG/JtsKWhgSlwEte297C5ucr9/yz2Ca8B9UVDc0BVUQF3U0DmipMkV89KIjTDx8BunSIo28/2Pz/e6PSnazH3rZw/7eQcyhYbwq9uX8q/PHuCrzx3iT3eswGwKIb+ilYdeP8mM1GiKG7rYU9zMNYucPcsrWryz9umxEUFlqK32kXX5gP7VElt7rO5uM42dfSRH958bIs2hPHnnCnci5Hw2ZECttT4K+IwZaq2L8dOlQ2vdC3wywHP9BPjJ8Hfz3Bp4ADSbQvjONfP42nOH+O93zgAMOmzpkhYbMS51wNHhJlJizGNy0nHNRJ8/xTeQyTSGkjyHX11t10YbUIOzufzh8lZauy387v1CLp6d4p71O56CaV03UE5KNHnZCRypaGVlju8J9FwLN4Vy55rp/Pe7zvdjoP7Tgwm256/r7+95gspIcL6vq1t7/ATU3WQmBt+Deqy5PnP+Thb17b2EKEj2U0ayOCueR7KGHvpfOyuFl76yhn/5ywFuyMvwySDHRYTx2VXT+NOOEi6ckeQVOATrPaMF2sfmB/48XDY3ld9sPst/v3uGi2en8B9XzvHqy+0eBapo8fkbvXKwAoeGb101h6zEKDITI4Me7QommHa52liAZDiykyLZXTR4Zn0slBrzCXqtDsqbfS86hqK1pqC2g1uW+2YbMxKc5XKt3Vb3inGD2VvcxJee2U9YSAi9OKhs6fEKqO0OTUNn37hfyCulfEZV4qPCSI42uycmtvb4rpI4nOdflu07If2HG46zs7DJa9uK6Yk8/oULfEqKXGrbejlZ0853rpnLn7aXsKe4yT3foqyp22vRJ1epXlFDJ5cHaOfq0mezU97czY1Lh59FjggL5folU3l+XwU/vH5BUH/7kbpyQTo/u2UJ3/n7Ub718hEevGEB9z53iNTYcF68Zw2X/GILu4sa3QG1a7EtV4ePtLjwoLoh9Y1iUqIrO97SZfEIqC3u2MIlULvX882waqg/yq5dNIVl0xLcJ7rcIK5yx1N20tisKHa6toMoc6jfjgzR4SaSo81ew6/lRmN4V0A1GsuyE3jjaA0/3HCCjl4r379u/tAPmkA35WVwpKJ1QuunPX129XR+v6UQq12PqOY8OzHKPUIxmMoW3795VoLR3szPpJjhtswba662YrVtvsOZde19pMSEDyso9Gf+1Di2f+fygLd/55p5nK3v5Hv/OEZcRBjXLh5ePfV7p+qYnRYzaDYtLyuBH16/gEWZ8T7L1APMSY8lJtzEobJWPrGsfwTDZnewt7iZG5Zm8G9XjD5bNtZcC4S0dFvHZI5IIDWRvfAAACAASURBVCUenStO13UMO6CubOmhs8/mMwoCuEtAqlp7hgyqDpQ2c9cz+8lIiOCnn1jMp57YQ2VLt9cE6qauPuwO7dMy71xxZTwBdz/ywdqGDmb5tES2nG5wz3HYX9rMzsImvv/x+dyQl0FZUxfHqtr45Tun+cQfdvH0XSvdtduetp1xlntcMS+N41Vt7ClqQmuNzaGpbu3hEx5lFYlRYcRHhgU1MbG00blw28zUkZ3j718/h6XZCdw0ihavwbp9ZTZNXRZ+/nYBu4oaae+x8fevriU1NpyVuUnsLu6/SKlo7iYjIdI9ApweFxHUKIrV7nCXzgxXkhFQe9ZRN3X2BWzver6TpceDpJRyD98kRZt9ejCfa9mJY9OL+lRNO3OnxAbMJmYlRXllMStaupkaFzEmpSuuerqNR6q5fUW23xPTZHLj0gxykqMmzUzkpGgz9142i9tXZAecSDYYV/vFoWbcV7b0kB7r/TefEh+BUvidZT7RAbXZFEJytNldL+2prqN3zIISpVTAE5HZFMJjn1/OsmmJ3P9CPjsGrGI3mPZeK/tKmoesHw8JUXzpoly/wTRgrOIW75MNPF7dTkefjbXjNPF3tFzvnfEu+yhpcs4NUYoR9Yx21UjPm+pbhuGa6FszSK92cPY7vuvp/UyJi+D5f7nQPcF0YB9uVw/q8RjxDMaMlBij5AN314aRlHxA/3E/31jg5TfvnSUlJpzPXzidKfERrJ6RzN0Xz+D5ey6kq8/GLX/YxZ7iJp/n2VLQwNT4COamxxpzm3qpaHZ2vnBo71FUpZy14CVB9KJ29dweyUgmOI+Nn1oZ/MTQ0frKpTO4+6JcGjst/OjGhe4RhjUzkjlT10mDUdZV0dLjVVaRHhdOt8U+5Oq5o2mblxjtPC+5Vkt0ODTNA2qoP0wkoB6GFTlJ3Lo8a1KciKYlRVHd2juqfrdaa04PWHJ8oKzESK9MeMWA2rTRWJgRhzk0hChzKN+4cs6YPOd4SokJZ+u3Lx9R7/Dxct/62Txyy8g6FGQnRmKxOdx9QQOpbOn2CZDNphDSYsN9elH396Ce2Ho454Qb32Cmtq33nNW/R5lNPHXnSmakRnPPswe8Wm8OZtvpBmwOPWi5R7CWZSdSUNvhtcTwriJncD+Z3seePCdDj6eSxk7mT41jWlLUyAJqo9/wXD91za6Aeqi2ZjsKG+nos/Hz25aQFhdBRFgoqbHhPl1O6juc7+WJmrsxIzWaxk4LbT1Wd0A9kpIPgLzsBEIUHCxrYX9pMzsKG/nKpTOINHsnaZZPS+TVr60jJcbMF57cy+6i/qDaYnOwo7CRy+amoZRyv5d3Fze6E00DyxI9LwoGU2i0zHPVjk92Sim+f918tn/ncj67ur+8zBWnuC5GKpu7vTovpbsXdxn8+D+atnmuEabmLud7pr3Xis2hvWqoP0wkoB6mX92ex+/9LChxrmUnRWJ36CEzIIOp7+ijtdvq94Tg/j2JUVS39rhXSBs42WM0wk2h3H1xLj+6YeGIlxMXI5dl/B2H6qhQ0ew/4+yvF3V/h4+Jy1CDM0tU6+ezUd/Rd06HzeOjwvjLl1YRqhTP7fW/guIfthZyzaMf8Mibp9hT3MQ7J2pJijazbNroW0gtn56A3aE56rFgzu6iJuZNiQ24JPVEy3a/L8evdZ7W2rmeQHIUc9Jjgyp9GqigtoPpyVF+uwUlR5sxh4ZQ3Tb4a9h+toHYcBPLPOrXM/18ruoCrJJ4rriX727odGcbEyJHlmWMCTcxd0och8tbjOy0mc+tnu73vtOSo/jHV9eRlRjFN1/Kdy9Jf6Csmc4+G5fPddbezkqLISXGzJ7iZspc83wGrLg3IzWauvY+d0a2s8/GjrONPj3oixo6yUyI9AnwJzOllM95eWFGHLHhJnYVNdHVZ6Opy+KV6HCNdgzVi3qkS49D/yiG6z3T6Fp2XDLUYjLxnM08Uq4VnQb2UPX+PZFY7Zq69l56rXbq2vvGZEKiy3eumcftK30X7hDjr38RjcAnfZvd4VwMwE/GOTMh0icDd8JYKdRfzeO55C9D3Wez09xlOedBSVpcBHOnxLoXixjozWM1VLX08NTOEj79xB7+ebTGvVDHaC3L7m9TBs7/g/2lzZM2Ow3OgCsxKizokg/9/9u78+g46ivR49/b3ZJa+75Ziy3vK+AN22whLGYJAYYzSYCwhElOMjOQl5w3SV6SNy8hCWeGyUJe4E0ywwAJk0NCZobkQFjHQAgkAbzheLdl2QbL1r7vW//eH1XVakndUkttdbfa93OOj6SylnK5VH3r1v3dawx9g9Pr2tPcPUj3wDALCtJZXpLJieaeoOO3J3MoYOT4eC6XUJrjnbQXtTPh9KLF+WNq+oO1DZxsSmI0OIv6TjT30NE3hEsg0zvzJVjrKnN4u6bFzk4vmjR4zU5L4qGPn09D1wD3P2eNtH/jSBNJbuFiuyWdiLBpYT5v17TwQWsvyR7XhJ7dCwtG2//9/mgT1/zwTe54/F3ePTF2hPexxu4Zl3vEE4/bxaaFebxzvCXowvLRaYmTB9RDEYwe9ya5SUt2+8ePN9tDXeL1Zj5SGlDPUYG9qGfKecw5ecnH6M9xfinPZkCtYiecWtW6jn5GfCbokJYye3hFYA32jpOtZKR4wh6aM1tKsry09AyOCZKcWsJYPDZfUpxBdePELKjPZzjW2M3HN1bw3je28i93rONTFy3gc5fNrKfweLnpyVQVpLP7fatedc8H7fQP+eKibG0y5blpnArIUI/4TMjytoe2HWXLg69NqxWm0zKvqiCdZSWZjPgMNY3hT9LrGxzhZHPPpOs+SrO91E1S8nHCnnB6ybgOB+W5aZxuH7u2wVpMmzzjTGGkKvPScLuE4009tPUOkp2aFFEXn3WVuQz7zKTZ6UBrK3O59/JF/Hr3aV7eX8frhxvZVJU/5unAloX51Hf28+bRJiqCdBlybgq++uu93P3EdrxJLpI9LrYdHJ1q6vMZjtv9thPB5oX5nGjuYftJ66ahIuDJYVGYJR8DEWSowcpSO+PHWzSgVvGoNDsVj0siylAfru+iOCsl6MQrh/MLWNvWF9AYPraP89XZ4dRrTlarOtmQlrLcVAZHfDT3jF6Qd55sY21lTsRdNCLlBM1NAX2WnSxfLMqLFhdl0tY7RMu4evVTbb30D/lYWpxBRoqHa1eXcv+Nq4L2hZ+ptZU5vPdBG8YY/lTTgktgUxxnqMG6xtS29tLZP8SP3zjGpn94ldsfe3fM+GuAY41d/OSNGtp7h6Y1oOVkYEBtl7wdaZi6hZijurELn4EVQRYkOuYFeYIT6A/HrFr2y8a1vCzPtZ4KBvYIb+zsj9mCRLDWTFTmpXG8udtqBTjDBYmOC6vycAlTZqcDff7KJawpy+bL/7WXY43dXL5s7I2I0+nocH1X0KTP/HzrpuBwfRf3fngRL/yPS9myMJ/XDjX4yz7qOvvpGxpJiAw1jB6T/7QnwgZmqDNSPGSkeKbsRT004iNlhhlqsOqonQx1S4+WfKg45HYJZbmpEQXUB890snKKQRrOAI9Tbb0Txrmqua8id/Je1E6wHbSG2u6T6yxM7Ogd4khDFxcuCN51IpqKsyf2onYyMSUxCaitF+jqcWUfRxusj2drYAdY2cCWnkFOtfbxdk0Lq8uyZ9zyLFoqctN4v7WXix98ne++fISynFS2n2jlR69W+z/HGMM3nj1Aqj29c+fJtlDfboLjzT0kuYWynFQWFKST7HZNa7LhdrtMYHVZ6PZf87JTaegaCJlZf/NoMxV5qRNaI5b7kxij13arO01ss3oLC6zWeR19QxF3uarIS+P3X/4wn76kKuyvSXK7+OEnLmBw2Dqe4/tJLyxI95fEBAuovUluHr1zPc/ddzFfvmY53iQ3V60s5mRLLzV29w9nQeJMW+bFmxUlWeSkJbG3toPUJPeE/vtFWSn+DjKhRDJ6HKzFq632QtbmrgFEZt4hJt5pQD2HVeaNfSw6Hf1DIxwLYxpUisdNcVYKp1qtDLU3afoT8FT8mqqfeW1bHyJMmNoGozdbTp3org9aMcbqhhNrJUF6UTvBdSwWdi0JGVBbQdxsZsScYS9/rGnmvVNtM+pZHm2ry7LxGcOlSwr47X2X8Ox9l/Cx9eX88xvH+JOd2f3t3jr+VNPCV65bzsKCdHa9H35AfbK5h4q8NDxuF0luFwsL0zk6jYB628EGlhVnTtrNZl6OtXA8MNPsGBrx8c7xlqADLZzvGbgos6Ezuotpg6kqSOdEcw8t3YPknIUbMmcE9nQsLsrgH29Zw80XzPPXRDtEhC32k5dQSZ8rVxSPec270g7KX7PnSzjrHBIlQ+1yCZurnGOSOuF4hzMtMZIuHzA2Q93cM0heWvKsT0OOFQ2o57BIRvQeqe9ixGdYFcaQkorcNGrtDHXlDC6CKn5V5KZR1xG6/WJtWy8lWd6gF1SnNdjpdusc3H6ijSS3hD1xbzb5A+pxGeokt5Abgx7ypdle0pPdExYmVjd0UZrtJWsGfcTDtbQ4g7RkN4+9dZyhEcNFi6Y/VTPabjivlP33X8OPP7ne31f3WzetskZk/2oPp1p7eeD5g6wpy+b2CytZNz+X3XZZSzhONPeMCciWl2SG3TqvrWeQHSdbuXrl5H3CnUFIdUE6few51U73wDCXLp74f1Hm/72yvm54xEdz90DMOyEtLMxgYNjHsabumGYYb1lXzv+9dW3Q1yFnsW0448XBuoatLM3yD2w71tRNTlrSrA4UiraLFtsBdZCbv+KslEkXJfp81qCcSGuo/SUf3QMJW+4BGlDPaZV5abT2DE7ZmD0YZ+ToVBlqGB0A8kFrb9BfSjV3TdV+sXbcMIBA2alJZKZ4/BnqHSdbWV2WHRftpnLSkkj2uMZkX5w61FjcEIoIi4smLkysbuye1XIPsFb7n1+eQ01TDx6XsHFB5O34ZpuITGhHl5bs4ZHb1tLeO8T1D79FU/cA37l5NW6XsGF+Lq09g/7FhpPx+QwnW3pYEBB0LS3J5ExHv78t22ReP9yIzxBGQO0ExhN/t96qbsYlBL25SU12U5AxOqG2uXsQY2LXg9qx0C6DGBz2xXywWSgfWVPKHZsr2bww/KdkV60oYtf7bbT1DFLT2M2iwoyEShpNlrW3uiENhLwRHbQTLZFmqLsGhhka8dHSPZiwCxJBA+o5zVkcOJMs9YEzHWR6PWEtMCzPTaWuo++s9qBW8cHfOi9E2Udt68ShLoHm5aRS29ZH/9AIe2vb46J+GqyArCRrbC/q+s5+SrJjl+VbXJRJdcNohnrE7vCxNAqPl9fNt54arK3MIS155u3OYm3VvGy+dv1yuvqHuXVjpf9pyHp7+t7OMMo+6jr7GRj2UVU4NkMNhFX2se1gA8VZKayZpH4arKcSQNBOH29VN3F+RU7IwLQsN81f8uEvVYrhokQYDahh5j2oZ1t2WhIP3LxmWpNjr1pZjM/A7440UtPUzeIE6fDhWFyUwd1b5vPR80sn/F1RlpfBYR8dfcFvJP0BdSQZ6vTRXtQtPYPka0Ct4lFlBL2oD9gLEsO5E6/ITcNnoHdwRFvmJRj/EI0gCxMHh50e1KED6rJcq5PBn0+1MzRi4qJ+2lGS5R1X8hHbhV1LijNo7Brwv3idau1lYNjH0lnOUMNoP+otc6DcYyqfumgBP7tnI9+4YaV/26LCDLJTk9gdRkDt7/ARmKG2/w+mWpjYPzTCm9VNXLWieMq2cZneJDK9ngmdPjr6hvjzqfag5R4Oqxf12IC6KMYZ6sKMFDLtpwbOSOlEsHpeNkWZKTyzu5bm7kEWFSXGgkSHiPCtm1azfv7Ea7O/F3WIhYnOAtCIMtTOcJeeIZq7BiYsjEwkGlDPYTPtRT3iMxyu7wyr3AOgPCCLrRnqxFKa7cXtkqAZ6vqOfnwmeMs8hzPVzckMbpgfP+UERVkp40o+BmLaeszJfDmdBJwFiUuKZz8jtmVRPtevKeGWtWWz/rNmm4hw+bKiMaVFLpewrjInrAy1vwd1QMa1LCeVjBSP//8E4JUD9Tz21vExX/unmmZ6B0emLPcI/L7jSz7ermnGZ+DSpRMXJDrKc1M53Wb1om7oiu2URIeI+I9ZvHeJmQ6XS7hyRRF/PGaN6E6UBYnhGB0/Hrzkz2lTGVENtX3zVdfRR9fAMAVaQ63ikVPDOt2A+nhTN/1DvrAWJMLYxQyaoU4sHreL0mxv0HPIqeEsn6QsaF5OKh19Q7xxpJElRRn+x3vxoMSelmiMoWdgmK6B4ZgGJU7g7CxMdDp+zHYNNUB6iocff3I9CwoSK/sWaMOCPI41dtNuD5EAK3j+6CN/GNMB5ERzD96ksZP0RISlxRn+DPVjbx3ncz/fxQMvHOKZXbX+z9t2sIGMFE/YnVJKs70TFiW+Vd1MRopn0sW75blpDI74aOoeoLGzH5cQF5k9ZyHnZLML5qIrl4/eICXKUJdwOL8DoQJqf4Y6goDaWeDpJBK05EPFJRGhIi9t2iUfzoLElWEG1E4WE3SoSyIqz00N2n7RP652sgy1XQ6y42QbG6vip9wDoCTbS/+Qj86+Yf8LRkl27C7m5blppHhc/oWJRxu6mJftJSNl7tY0xxOnPaAzZh3ge68cZt/pDu5/7oB/8uDJZmtB4viSjWUlWRyp7+IfXjzEAy8c4vo1JWyqyuP/PLufmqZufD7Dq4ca+dDSQlI84S28HT/cxfoeDVy8OH/SrF9gL+qGzn4KMlJiPiwJRqcNxqJTzmy6eHGBf3LiZE/kEo1TRhSstSOMZqgjKflwOsI4AfU5vShRRCpE5HciclBEDojIF+zteSKyTUSq7be59nYRkYdF5JiI7BWRdQHf627786tF5O7Z+2edOyryggdDkzlwpoNkjyvsR1tOFrMgI3lOL2hSwVWEaL94qq0XlzDpQr6ynNG/i7fuEcUBrfOcGsFYLuxyu4SFhRn+zPTRhtnv8HEuuaAiB7dL/NnoPafaeXFfPedX5LDvdAfP/fkMYGWoq4Jk6peXZNLRN8Sjbx7nri3zeeS2dfzo1rV4k9zc94v32H6ylaaugbDLPcAKqNt6h+gbtMai7zjZSkPnAB85b96kX1eeMzqhNh56UDs2L8ynICM54bo9pSa7uXJFMWvKshO2R3Iw3iQ32alJITPUA8ORl3zk2Ddf1f4MdWI93QgUzlEaBv7OGLMS2AzcKyIrga8CrxljlgCv2R8DXAcssf98FvgJWAE48E1gE3Ah8E0nCFczV5lnBUNO9iUcB850sqw4c1q/JEuLM6OyeEpFX0VeGo1dA/QPjYzZXtvWR2l26qTnSVnO6AvrxjhakAijNwL1nf00dsVu7HigJUUZHGvsZsRnqGnqZmkU6qfPFanJblbNy2LX+1Y/6gdfOkR+ejI///SFrC7L4nuvHKFnYJgPWnuDlr5sXJBHstvFl7Yu5Vs3rsLtEkqyvXz/Y+dxqK6Te5/ajdslfHhZUZCfHpzTi/qMXfbx/N46vEku/0CRUMpyAwPq2E9JdFxYlcfOv786rkq7zpbv/+X5PPlXF8Z6N6KueNxak0BDI1ZcEcno8RSPm4wUD9X2+oSC9Pg4l2fDlEfJGFNnjNltv98FHALKgJuAJ+1PexK42X7/JuDfjeUdIEdESoFrgG3GmFZjTBuwDbj2rP5rzkGVeWkMDFu1duEwxnDgTGfY9dOO73/sfB6+be1MdlHFOaeMp3bck47atl7/C3sohZkpeFxCabbXP5AiXjjDXRo6+gOmJMb2Yr6kKIPatj4O13cyOOzTDPVZtn5+LntOtfP64UbeOd7K569YTJY3ia9fv4LT7X185/mDDPtM0Az1ynlZ7P/WNdx3xZIx3Y+uWF7MZy6poqVnkE1VedPqwTzPnjBa124NT3ppfx1XLi+e0GN7vLRkD/npydS29dHYFfuhLueC1GT3OVl+VZaTyq732yd0o4HRGupIMtRgLUzs7LfmZZzrGWo/EVkArAXeBYqNMXX2X9UDznOwMuBUwJfV2ttCbR//Mz4rIjtFZGdTU9N0du+c5HTdmKrdk+N0ex8dfUPTDqjz0pMTuvbpXFbhH3U8tuxjsqEuDrfLGlhy2ZLCuBuG4NQH1nf2U98xQFocvGA6CxNf2V8PoE99zrL183PpH/Lx5f/aS0VeKrdvmg9YA1SuWlHE0zusl6BgATWErhX9yrXLuWVtGZ+5tGpa++MMdznT3se7J1pp7h7khvMm9gMOpjw3leNN3bT2DMa8B7VKXH+3dRkDQyPc8di7NI9LzJ2NGmoYbZ3nTXKRFgeDv2ZL2EdJRDKAZ4AvGmM6A//OWGN2wq85mIQx5lFjzAZjzIbCwtBthZRlU1U++enJ/PSPJ8L6/NEFieG1zFOJz7kpC6zFHxgembIHtePpz27m/htXzdr+zVSKx01eerJVQ93VT0lWbKYkBnLWLbywr27Mx+rscAa8tPYM8qWty8YEAl+9boW/PjZUQB1KssfFQ5+4gCuWh18/DVYdv4hV8vH83jOkJ7v58BTlHo7y3DT21nbY30eTGWp2rC7L5ol7NnKmo4+7Ht8+ZsjLaIY6suumUyKUn54S82vwbAoroBaRJKxg+iljzK/tzQ12KQf220Z7+2mgIuDLy+1tobarCKQmu7nn4gW8caSJA2c6pvz8A2c6EYEVpZoZU5bCjBSSPS5qAxYm1rX3YwxhBdQ5aclxMW48mKLMFBo6+q2x43EQlMzPT8fjEmqaevy9j9XZU5qdSmVeGitLs/jouIV/i4sy+NRFCyjLSY1aC7pkj4vCjBQ+aOnlpf31XLWyGG9SeL8r5bmp9NnrGuJlUaJKTBsX5PGvd26gurGLe366nZ4BqzzjbIweh9EMdUFm7K/BsymcLh8CPA4cMsY8FPBXzwFOp467gWcDtt9ld/vYDHTYpSGvAFtFJNdejLjV3qYidOeWBWSkePjJGzVTfu7BMx0sLEjXbh3Kz+USu3XeaEDt1FPP9RZSJdleGrr646ZTQpLb5c+ORmOgy7noZ/ds5Gf3bAw6yfDvP7KC17/0oahmyeblpPLKgXrae4e4YYruHoECb2bj4WZQJbYPLS3k4VvXsudUO3c9sZ2O3qGz0ocaRjPUBQm4mDVQOEfpYuBO4AoR2WP/uR54ELhaRKqBq+yPAV4EjgPHgH8D/hbAGNMKfAfYYf/5tr1NRSg7NYlPbq7kxX11/rG6oVgLErXcQ41ltc4bLflw6qnnet/xkiwv9R0DdqeE2AfUMFrmofXTs2NhYUbIRXwiEnYP6bNlXo6XnsERMr0eLlsa/uj3wAXB8XLuqsR23ZpS/vn2deyr7eATj77NaXuhYsQZaqfkI4EXJAJMmaY0xvwBCHU7f2WQzzfAvSG+1xPAE9PZQRWeT19SxU//eJJ/fbOGf7zlvKCf09ozSF1H/7QXJKrEV5GXyp9r2zHGIGKNIne7xN8pY64qzvL6F9rES1CypCiDl+y3KvE5nT62riyZVjDvPB3yuMT/yFyp2XbdmlIyvUl89uc7+e7Lh4HIu3w4vagTeUoi6KTEhFGU6eVj68t5ZtfpoD0ljTH8yl7hrhlqNd6C/HTae4e4+odv8shr1eyt7aA02xsX09kiETiUJl4Wdq0otW5ow51UquY2p9PHDeeH193D4bShLMpMCVq+otRsuWRJAU99ZhOZXisQjqQPNYzWUEdr7UKsaCFtAvncZYt4escpHn6tmvtvXOW/q+wZGObrv9nHs3vOcPmyQjYtjK8BHCr27tg8n5QkN7/dc4YfbDsKwOYEOE8CM+zxkqG+ZlUJz/zNRXpje474yHmldPUPc+ni8Ms9ANJTPOSlJ2sPahUTaytzeeZvtvD64UZ/ycZMOTXUhQm+KFED6gRSmZ/GLWvLeOrdD3hhXx1bVxZz8eICHnn9GMebuvnS1qX87eWLNduhJvAmublz83zu3Dyf0+19vLy/nvPL537AFxhEx0svX5dL/O3dVOIrzvLyhauWzOhr11bk+DPcSkXb4qJMFhdFvtZj1bwsrl5ZzIVVcz9JMxmxSp7j04YNG8zOnTtjvRtzyuCwj98daeSlfXW8eqiR7oFhCjKSefjWtVw0zQyJUnNdS/cA6x94FYDD37k27JZlSimlzj0isssYs2EmX6sZ6gST7HFxzaoSrllVwsDwCLvfb2dpcUbCLwZQKpi89GSS3S7SUtwaTCullJo1GlAnsBSPmy2L8mO9G0rFjIhQlJVCuvZdV0opNYv0VUYpldBWlmbF7SRHpZRSiUEDaqVUQvt/t68jioPxlFJKnYM0oFZKJbRIp3wppZRSU9FXGqWUUkoppSKgAbVSSimllFIR0IBaKaWUUkqpCGhArZRSSimlVAQ0oFZKKaWUUioCcT16XESagPdj9OMLgOYY/exzjR7r6NFjHT16rKNHj3X06LGOLj3e0VMApBtjCmfyxXEdUMeSiOyc6Tx3NT16rKNHj3X06LGOHj3W0aPHOrr0eEdPpMdaSz6UUkoppZSKgAbUSimllFJKRUAD6tAejfUOnEP0WEePHuvo0WMdPXqso0ePdXTp8Y6eiI611lArpZRSSikVAc1QK6WUUkopFQENqJVSSimllIqABtTjiMi1InJERI6JyFdjvT+JREQqROR3InJQRA6IyBfs7feLyGkR2WP/uT7W+5ooROSkiOyzj+tOe1ueiGwTkWr7bW6s93OuE5FlAefvHhHpFJEv6rl9dojIEyLSKCL7A7YFPY/F8rB9Dd8rIutit+dzT4hj/T0ROWwfz9+ISI69fYGI9AWc3/8Suz2fe0Ic65DXDBH5mn1eHxGRa2Kz13NTiGP9q4DjfFJE9tjbZ3Reaw11ABFxA0eBq4FaYAdwmzHmYEx3LEGISClQaozZLSKZwC7gZuDjQLcx5vsx3cEEJCIngQ3GmOaAbd8FWo0xD9o3jbnGmP8Vq31MNPZ15DSwCbgHPbcjJiKXUo/YdgAAA9dJREFUAd3AvxtjVtvbgp7HdgDyeeB6rP+DHxljNsVq3+eaEMd6K/C6MWZYRP4JwD7WC4Dnnc9T0xPiWN9PkGuGiKwEfglcCMwDXgWWGmNGorrTc1SwYz3u738AdBhjvj3T81oz1GNdCBwzxhw3xgwCTwM3xXifEoYxps4Ys9t+vws4BJTFdq/OSTcBT9rvP4l1U6POniuBGmNMrKa8JhxjzJtA67jNoc7jm7BeNI0x5h0gx76ZV2EIdqyNMf9tjBm2P3wHKI/6jiWgEOd1KDcBTxtjBowxJ4BjWDGLCsNkx1pEBCux98tIfoYG1GOVAacCPq5FA75ZYd8BrgXetTfdZz9OfEJLEM4qA/y3iOwSkc/a24qNMXX2+/VAcWx2LWHdytgLs57bsyPUeazX8dn1V8BLAR9Xich7IvJ7Ebk0VjuVYIJdM/S8nj2XAg3GmOqAbdM+rzWgVlEnIhnAM8AXjTGdwE+ARcAFQB3wgxjuXqK5xBizDrgOuNd+7OVnrJovrfs6S0QkGbgR+E97k57bUaDncXSIyP8GhoGn7E11QKUxZi3wP4FfiEhWrPYvQeg1I/puY2wSZEbntQbUY50GKgI+Lre3qbNERJKwgumnjDG/BjDGNBhjRowxPuDf0MdYZ40x5rT9thH4DdaxbXAegdtvG2O3hwnnOmC3MaYB9NyeZaHOY72OzwIR+RRwA/BJ+wYGu/ygxX5/F1ADLI3ZTiaASa4Zel7PAhHxALcAv3K2zfS81oB6rB3AEhGpsjNNtwLPxXifEoZdp/Q4cMgY81DA9sD6xr8A9o//WjV9IpJuL/5ERNKBrVjH9jngbvvT7gaejc0eJqQxmQ49t2dVqPP4OeAuu9vHZqyFRnXBvoEKj4hcC3wFuNEY0xuwvdBehIuILASWAMdjs5eJYZJrxnPArSKSIiJVWMd6e7T3LwFdBRw2xtQ6G2Z6XntmbRfnIHsF833AK4AbeMIYcyDGu5VILgbuBPY57WmArwO3icgFWI9sTwKfi83uJZxi4DfWfQwe4BfGmJdFZAfwHyLyaeB9rMUYKkL2TcvVjD1/v6vnduRE5JfA5UCBiNQC3wQeJPh5/CJWh49jQC9WpxUVphDH+mtACrDNvp68Y4z5a+Ay4NsiMgT4gL82xoS7yO6cF+JYXx7smmGMOSAi/wEcxCq7uVc7fIQv2LE2xjzOxDUvMMPzWtvmKaWUUkopFQEt+VBKKaWUUioCGlArpZRSSikVAQ2olVJKKaWUioAG1EoppZRSSkVAA2qllFJKKaUioAG1UkoppZRSEdCAWimllFJKqQj8f6ljQoLCd0dlAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 864x216 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"\n",
"from bs4 import BeautifulSoup\n",
"import json\n",
"import pandas as pd\n",
"import re\n",
"import requests\n",
"\n",
"r = requests.get('https://sharedstreets.github.io/speed-prediction/')\n",
"soup = BeautifulSoup(r.text, 'html.parser')\n",
"scripts = soup.find_all('script')\n",
"\n",
"s = scripts[1].string\n",
"st_str = 'var trips = '\n",
"start_i = s.index(st_str) + len(st_str)\n",
"end_str = ']}]'\n",
"end_i = s.index(end_str) + len(end_str)\n",
"\n",
"oak_sf_times = json.loads(s[start_i:end_i])[0]['data']\n",
"\n",
"# # Visually inspect\n",
"pd.Series(oak_sf_times).plot(figsize=(12,3))"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import math\n",
"\n",
"l_hrs = []\n",
"l_wkdys = []\n",
"l_wknds = []\n",
"days = ['Su','M','Tu','W','Th','F','Sa']\n",
"weekdays = days[1:-2]\n",
"weekends = [days[0], days[-1]]\n",
"\n",
"for i in range(len(oak_sf_times)):\n",
" l_hrs.append((i % 24) + 1)\n",
"\n",
" d = days[math.floor(i / 24)]\n",
" if d in weekdays:\n",
" l_wkdys.append(1)\n",
" l_wknds.append(0)\n",
" elif d in weekends:\n",
" l_wkdys.append(0)\n",
" l_wknds.append(1)\n",
" else:\n",
" l_wkdys.append(0)\n",
" l_wknds.append(0)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"def get_minmax(sub):\n",
" return pd.Series({\n",
" 'fastest': sub['speed'].min(),\n",
" 'slowest': sub['speed'].max(),\n",
" })\n",
"\n",
"\n",
"def make_human_times(tods):\n",
" human_times = tods.copy()\n",
" htm = human_times > 12\n",
" htm_2 = human_times >= 12\n",
"\n",
" human_times[htm] = human_times - 12\n",
" human_times = human_times.astype(str)\n",
" human_times[~htm_2] = human_times + ' am'\n",
" human_times[htm_2] = human_times + ' pm'\n",
" return human_times"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"df = pd.DataFrame({\n",
" 'speed': oak_sf_times,\n",
" 'tod': l_hrs,\n",
" 'is_wkend': l_wknds,\n",
" 'is_wkday': l_wkdys})"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"weekend variability (mon-thurs):\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"weekend_df = df[df['is_wkend'] == 1]\n",
"weekend_summary = weekend_df.groupby('tod').apply(get_minmax).reset_index(drop=False)\n",
"\n",
"ax = weekend_summary['fastest'].plot.bar(figsize=(12,6), color='darkblue', alpha=0.25)\n",
"weekend_summary['slowest'].plot.bar(ax=ax, color='lightblue', alpha=0.5)\n",
"ax.set_xticks([i for i in range(len(weekend_summary['tod']))], False)\n",
"ax.set_xticklabels(make_human_times(weekend_summary['tod']), rotation=60)\n",
"ax.set_ylim(0,7500)\n",
"print('weekend variability (mon-thurs):')"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"weekday variability (mon-thurs):\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 864x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"weekday_df = df[df['is_wkday'] == 1]\n",
"weekday_summary = weekday_df.groupby('tod').apply(get_minmax).reset_index(drop=False)\n",
"\n",
"ax = weekday_summary['fastest'].plot.bar(figsize=(12,6), color='darkblue', alpha=0.25)\n",
"weekday_summary['slowest'].plot.bar(ax=ax, color='lightblue', alpha=0.5)\n",
"ax.set_xticks([i for i in range(len(weekday_summary['tod']))], False)\n",
"ax.set_xticklabels(make_human_times(weekday_summary['tod']), rotation=60)\n",
"ax.set_ylim(0,7500)\n",
"print('weekday variability (mon-thurs):')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment