Skip to content

Instantly share code, notes, and snippets.

@bhtucker
Created June 21, 2016 19:03
Show Gist options
  • Save bhtucker/c8ff3a46a4927c5ea5b4aea563d9fe57 to your computer and use it in GitHub Desktop.
Save bhtucker/c8ff3a46a4927c5ea5b4aea563d9fe57 to your computer and use it in GitHub Desktop.
An intro to some easy, interactive data visualization tools
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import pandas as pd\n",
"import numpy as np\n",
"import seaborn as sns\n",
"\n",
"from matplotlib.pylab import plt"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"x = np.arange(10)\n",
"y = np.array([np.random.randint(x_-5, x_+5) for x_ in x])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 1: The Raw-est\n",
"\n",
"* The underlying library used by our other options provides its own barebones interface to some plots:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x108610490>"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x10869e490>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(x, y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 2: Convenience Mode\n",
"\n",
"* If you're already slicing and dicing the data in Pandas, DataFrame's plot methods may already do what you need\n",
"* Note that here we get axis labels for free, but not much else"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x108b65290>"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x108b48650>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df = pd.DataFrame(dict(x=x, y=y))\n",
"df.plot(kind='scatter', x='x', y='y')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# 3: Automatic Graphic Designer\n",
"\n",
"* Many visually impressive options (and with great information presentation) are available in Seaborn\n",
"* Here we get hists & density estimates for both marginal distributions, as well as their joint scatterplot and linear regression line, with a gray area showing the possible lines inside the regression coefficients' confidence intervals"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<seaborn.axisgrid.JointGrid at 0x108909090>"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAasAAAGoCAYAAAD4hcrDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl4XGd99//3mTmzSqN9H8m7PbYjW5bsxEmceAkJYAgQ\nyvKUPikESqGEH1DWtuzwlMJDW54utLQNkEAJW1kaaAkUEjtekjhxJHmJ7fG+aF9Go9lnzplzfn/I\nlqXE1mKNNDPS93Vdua7ojDS6jzzSZ859vvf3VkzTRAghhMhllmwPQAghhJiMhJUQQoicJ2ElhBAi\n50lYCSGEyHkSVkIIIXKems1vrutpc2gols0hzIrSUjdyXvlhPp4TyHnlm8pKj5LtMeS6rF5Zqao1\nm99+1sh55Y/5eE4g5yXmn6xeWQmRL0zTJBwOZXsYeDxFKIq8CRcLj4SVEFMQDof47YHTuNwFWRtD\nPBblns0rKCoqztoYhMgWCSshpsjlLsBd4Mn2MIRYkKQaUAghRM6TsBJCCJHzJKyEEELkPAkrIYQQ\nOU/CSgghRM6TsBJCCJHzJKyEEELkPAkrIYQQOU/CSgghRM6TsBJCCJHzpN2SyAs30kjWMEzSholh\nmuOOK4qCVVGwWMBuNwiFwpM+VzgcAnPSTxNCzBIJKzElFzu6ePF0kuHheFa+f2BokL6wFVQ3sWSa\nRMogkUqT1A1SmoGmm2hpAz1toqdNDMOcUrZYLQpWi4JqVbBZFVTVgsNmwa5acNotOO1W3A4LWnyY\nspIi3IXSG1CIbJCwElMyHI6SspWRstpn/XvFEhr9wQSBcJKhUILhaIpwTAM0IHHNr1GtCnbVisNu\npcCqXA4hC4oCFkWBMbtqmKaJYTIaaKlUGj1tEE8ZpGL6BCML4nKEKS5wUOpxUFbkoLzYSXGBXbbt\nEGKWSViJrIsndboGovQMxugJxIgmxgeG026ltNBKodNKeWkRBU4Vt1PFZVdx2K04bFYslhsLC0+h\nk3DkagCapklKN0im0sSTOrGkTjShMxgIEkuaxDWFnsDIOK+w2yxUlbqpLXfjrSigqGD2A12IhUbC\nSmRFLKFzvifEhZ4I/cGrU4sOm5X6qkIqS5yUFzkpK3LgtKv093ahqjZKy8tndVyKouCwjQTg2NAZ\nKEhisVgpq6hC0w2C4SSDoQQDwwn6huJ09EXo6IvwPFBcYKehupBltUWUeByzOl4hFgoJKzFnDMPk\nUl+EUx1BugdimIzMzlWVuqivKqSu3E2px5HzU2o21UJlqYvKUtfosUhMo3swSkd/lK6BKEfPBjh6\nNkCpx8HKhmKW1RZht8mW7ELcKAkrMetSWpqTl4KcuBAklhyZ4qsodrKsrojFNR5cjvx/GRa6bax0\nl7CyoQQ9bdDRF+Fsd5jO/gjPHeuj1d/PCm8xa5aU4nHLNKEQ05X/fyVEzkqm0hw7H+DEhSBa2kC1\nKvgWlbCqoYTSeTw9plotLKktYkltEfGkzumOYfyXgpy4GMR/McjSuiLWLy+Xe1tCTIOElcg4PW1w\n/PwQR88F0HQDp93KuuUVrGooWXBTYS6Hyrrl5dy0tIzzPWGOnh3kbFeIc90hlnuL2bCiArdTfg2F\nmIz8loiMMU2T8z1hXvD3E0voOGxWNvoq8S0qQbUu7GYpFovCsroiltZ6uNgbof30AKc7hjnfHaJx\naRk3LS3DusB/RkJMRMJKZMRwJMmBY330BGJYLAqNS8toXFa24K6kJqMoCotrPDRUFXK6c5j2UwO0\nnx7kTFeIW9ZU460syPYQhchJElZiRgzD5Oi5AIdPD2KYJt7KAm5ZUyVFBJOwWBRWNZSwpMbDodOD\nnLg4xBMvdLCsrohNq6tw2iXkhRhLwkrcsKFwkv1HugmEkrgcVjavrWZRtbQjmg67zcrNa6pY7i3i\nmaM9nO0K0TUQ5bbGGhqqCrM9PCFyhoSVmDbTNDl+fojWkwMYpslybxE3r66SKb8ZKCtysvPWxRy7\nMET7qQF2tXaywlvMzWuqsKlyL0sICSsxLfGkzr7D3XQPxnDarXIFkEFX7vV5KwrYf6Sb053D9A7F\n2NpUR3mxM9vDEyKr5C2bmLJLvWF+uf883YMxvJUFvG7LEgmqWVDqcbDz1sXctLSMcEzj8WcvcOx8\nANOUPUrEwiVXVmJShmHy9PFhDpwMYVFg0+pK1iwuzfm2SPnMalHY6KukttzNvsPdHDzRT1e5k42r\nqigqyvbohJh7cmUlJhSKpfjaj9s5cDKEx23n1ZsXsXZJmQTVHKmrKODe25dQXeaiazDB3/7kOBd7\nJ98sUoj5RsJKXNfZrhBfePh5jp0fYlmNk7fevZKKEtfkXygyyu1UuefmBlY3FDIYSvGlf3+BfYe7\nsz0sIeaUTAOKlzFNk6fau/j+706SNkx+b+syFpWk0OwqWmqizQnFbLEoCo1LirhzXTWPPnGBb//q\nOOe6Q7zt7pULvjuIWBjkVS7G0fQ0Dz9+gu/+xo/TrvKRt27g3tuXyLRfjrhpSQmffWAT9ZWF7Grr\n5P8+2spQOJntYQkx6ySsxKjB4QRf/l4r+w53s7jaw2ffsYmblpZle1jiJapK3Xzq7Ru59aZqznSF\n+MIjz3PyUjDbwxJiVklYCQCOnQ/whUee53xPmC3raviL+1vk/lQOc9is/PG9a3nb3SuJxDT++gdt\n/Pb5S1LeLuYtuWe1wJmmyeMHLvLTp85gURT+8JWr2N7slWm/PKAoCvdsamBRVSHfeOxFfvDEKc52\nh3jg1auzPTQhMk7CagGLJTS+9d/HaTs1QKnHwYP3NbLcW5ztYYlp8i0q5XMP3Mw//+cRDhzr5VJf\nhE+/azNOmTcR84i8nBeoCz1hvvjIQdpODbBmcSmffeBmCao8Vupx8Gd/0MLdG+vpGojy0b9/igPH\nerM9LCEyRq6sFhjTNNnV1skPnziFnjZ57W2LeeOdy7BYZNov36lWC39wzyqWe4v57m9O8K+/eBH/\nxSF+/xUrpcmwyHsSVgtIJK7x8K9Gpv0KXTbefe9a1i8vz/awRIZtXltN89oavvTtA+xu7+JU5zDv\nff1N1FdKH0eRv2QacIF48XyAz37rAG2nBli9qITPv/NmCap5zFtZyKf+cCM7Wrx09kf5P985yO8O\nXsKQakGRp+TKap5LptL8x+7TPNnaidWi8KZty9i5ebFM+y0AdpuVP3ylj8alZTz8qxN8/3enaDs1\nwLtes0a2HBF5R8JqHnvxXIDv/PoEA8MJ6ioKePe9a1hSIy27F5rmlZUs+6MiHnn8BIfODPLpbx3g\nzduWs6PFi0WWKIg8IWE1DwUjSf5j12meebEXi6Kw89ZF3HfHUmyq3GRfqIoLHXzwzevZf6SHHz15\nikd/e5Jnj/Vw/z0+Ftd4sj08ISYlYTWPaLrBEy908Iv950ik0iyu8fDAq1fLHyMBjCwivmN9LeuW\nlfH9353i+RN9fPGR59nW7OW+O5ZSVGDP9hCFuC4Jq3nAMEwOHOvl53vPMjCcoMCp8vZX+djaVCf3\npsTLFBc6eN99jWw9H+D7vz3J7rZOnnmxh9dsXsTdmxpwOeTPgsg98qrMY3ra4Pnjffzy6fP0BGKo\nVoVX3tzAvbcvodBly/bwRI67aUkZX3jXLTzV3sUv9p/j53vP8T/PX+JVtyzirpZ63E758yByh7wa\n81AkrrHvcDe/e+ESgVASq0Vha1Mt9962RJrPimlRrRZesbGe2xtr+O3BS/z2+Uv8bM9Z/vvZC9y5\nvpZXbKynutSd7WEKIWGVL/S0wfELQ+w/0k3ryX70tInDZuUVG+t51c0NElJiRlwOlddvWco9mxrY\n3dbJ717o4HcHR/5bvaiELetqaVlVKVOEImvklZfDkqk0x84HaD89QNupASJxDYDacjdbm+q4Y30t\nBU6Z7hOZ43Ko7Lx1Mffc3MBBfx972rs4cTHIiYtBvvsbP41Ly9iwsoL1yysoloIMMYckrHJIOJbi\nXHeI050hTl4c4kxXiLQx0nGgyG3jFS31bL6pmuV1RbKFh5hVqtXCrWtruHVtDb1DMQ4c6+XAsV7a\nTo28cQKoryxg9aJSlnuLWV5XRHmxU16XYtZIWM2xlJZmKJxkIJSgPxinZzBGTyDGpb7IuO3JFQWW\n1HhYu6SMphUVLKstkso+kRXVpW5ev2Upr9+ylJ5AjPZTA7x4bpBTHcN09Ef53QsdABQ4VeorC6mt\nKKCmzE1VqYuKYidlHicuh1WCTMyIhNUMJFI6x84PkdLSaLpBSjdIaWksqpXBYIx4UieW0InENcIx\njVA0RSypX/O5Sj0O1i8vZ0mNh2V1xazwFuGWKT6RY2rK3Lx68yJevXkRmm5wrjvE2a4QZ7tDXOqL\ncPJSEP+l4Mu+zm6zUFxgx+O2U+iyUeBUcTtsOB1WnHYrdpsVh82KzWrBplpYVldEWZG0hBJXSVjN\nwK8PXOQX+89P+nmKAoUuG6UeB0trPZR4HFQUj7zrrClzU13mzvlSc7tqJRztJznm6m8upZMhdM1N\nLBrO6PNaSBGLTn5OiXgUi0XN+PefjngsmrXvfS021cKqhhJWNZSMHktqaXoDI7MFA8MJBoJxAuEk\nw5EUw9EkF3rCo1PbE1m9qIRP/EHLbA5f5BnFlC7MQgghcpxsESKEECLnSVgJIYTIeRJWQgghcp6E\nlRBCiJwnYSWEECLnSVgJIYTIeTe8zsrn81mAhwAfYAB/AiSBRy5/fNTv978/A2MUQgixwM3kyup1\ngOn3++8APgP8FfA14JN+v38bYPH5fG/IwBiFEEIscDccVn6//zHgPZc/XAwMAS1+v3/v5WOPA3fP\nbHhCCCHEDO9Z+f1+w+fzPQL8A/B9YGynyjBQPJPnF0IIISADvQH9fv8DPp+vCngeGLsDoAd4eUfL\nMUzTNKUTsxBCMOU/hLqeNlXVOptjybZr/ixmUmBxP1Dv9/u/AiSANHDQ5/Nt8/v9TwE7gScnHJGi\n0N+fvcags6Wy0iPnlSfm4zmBnFe+qaz0TPlzh4ZisziS7Lvez2ImV1Y/Ax72+XxPXX6eDwIngG/6\nfD4bcBz4yQyeXwghhABmEFZ+vz8G/K9rPLT9hkcjhBBCXIMsChZCCJHzJKyEEELkPAkrIYQQOU/C\nSgghRM6TsBJCCJHzJKyEEELkvBl3sBBCLGwPP/wQTz+9D1VV+eAHP8KaNTeNe/x//udxfvjDR7Fa\nrbz2ta/jvvvejK7rfPnLX6SnpxtN03j729/FHXdsnbUxmqbJ3/7tVzh9+hR2u50/+7NP4/XWj/uc\nX/zi5/ziFz9HVVXe/vZ3cfvtdzA8HOQLX/g0qVSK8vIKPvnJz+FwOPjpT3/Mr3/9XyiKhbe97X52\n7Lib733vEQ4ceAZFUQiHQwQCAR577Nezdk4LjYSVEOKGnTx5gvb2Nh566Dv09vbw6U9/goce+u64\nz/mnf/p7Hn30JzidTu6//y3cffer2bNnFyUlJXzmM18kFBrmne/837MaVnv27CaVSvEv//JtXnzx\nKF//+v/jy1/+29HHA4FBfvrTH/Gtb32PZDLBgw++m1tuuZWHH/4m99zzanbuvJfvfe8RHnvsZ7zq\nVTt57LGf8sgjPyCRSHD//W9hx467uf/+B7j//gcA+MQnPsyDD35o1s5nIZKwEmKOPf74f7F371NE\no1FCoSAPPPButm27i7a2F3jooW9gtVrxeuv5+Mc/STKZ4Ctf+UsikQiDg/288Y1v4b773sQHPvBe\nSkpKiUTCfPjDn+DLX/4iqqpimiaf+9xfUlnp4etf/zsOH25HURTuuedVvPnNv89f/dUXsNlsdHd3\nEwgM8qlPfY6VK3286U33smTJMpYsWcIHPvCR0bF+4hMfJpGIj368ZMlSPvKRPxv9+PDhdm65ZTMA\n1dU1pNMGw8NBiotLRj9nxYpVhMMhrrQBVRS466572LFjZFMG0zRRVXX0ZwOwc+e9o1/f1vYC3/3u\nt1EUC+FwkJ07X8/v/d5bRh+Px+N84hN/ytg+oy0tm3jggXePG+fmzbcDcNNNjZw4cXzcv8mxYy+y\nbt0GVFVFVQupr2/g9OmTHD7czjve8S4Abr11C//2b//MW9/6Nh555AdYLBYGBwdwOBzjnuupp56k\nqKiIm2/ePPELQUyLhJUQWZBIxPn7v/9nhoYCvOc9D7Bly1a++tUv8Y1vfJuSkhK++c1/4Ve/+iWr\nV6/h7rtfxdat2xkYGOADH3gP9933JgBe9aqd3HHHNn72s/9g7dpGHnzwgxw61EYkEmH37t309HTx\nb//2CLqu8/73/zEtLZsAqKmp4+Mf/yS//OV/8thjP+djH/tz+vv7eOSRH+DxjO/L9tWv/r8JzyMa\njY4LJrfbTSQSGXds6dJl/NEf/SEul4tt23ZQUFA4+lgsFuUzn/lz3vOeB4HxITXWwEA/Dz/8fcrK\n3LzmNa/lrrvuoaRk5Hu4XC7+8R//dcJxxmJRCguvfl+r1YphGFgslms+7nYXEIlEiMVio+N1u91E\noxEALBYLP/3pj3n44X/jzW/+/XHf63vfe4TPf/6vJhyPmD4JKyGyYMOGFgBKS8vweDwMDAwwODjI\nZz/75wAkk0luueVWbrvtDn70o+/z1FNP4nYXoOvp0edoaFgMwL33voFHH/0OH/nIB/B4CnnPex7k\nzJkzrF/fDICqqqxd28i5c+cAWLXKB0BVVTVHjhwCoKSk9GVBBSNXVvH41capS5cuG3dlVVBQQCx2\n9fFYLDruec6cOc0zz+zjJz/5JS6Xiy984dPs3v0E27e/gt7eHj71qU/wpje9lVe84pUT/rwaG5tQ\nVRWHw8HSpcvp7OwYDauxV1amaaIoysuurNzuAmKx6OjHY4PqyuPR6NXHo9EoHk/R6PnZ7XZisdi4\nQHvTm97KG97we3z0ox+kqekFmps3cv78OTyeopfdDxMzJ2ElRBb4/SPTUIHAINFolOrqaqqqqvnK\nV/4Wt7uAffv24Ha7+cEP/p3GxvXcd9+baG09yLPP7h99jivTXnv3PkVTUzPvfOcf87vf/YZHH/0u\nb3jDvXz/+z/krW99G7quc/ToIV7zmns5cOBprrUtz/V26pnsymrdug184xv/wNvedj+9vb2YpklR\n0dVt7AoKCnE4nNjtdhRFobS0jHA4zNBQgI9+9AN85CN/NnrFN5FTp/yYpkk8Huf8+bM0NDSMPjaV\nK6v165vYv38vO3bczdGjR1i+fMW4x9euvYmHHvoGmqaRTCa5ePE8y5YtZ926Jp55Zh87d97Ls8/u\np6mpmYsXL/Cv//p1vvSlv8ZqtWK320aD7+DBA9x66+2Tno+YPgkrIbJgcHCQD33oQWKxCB/72J+j\nKAof+tBH+NjHPoRpGhQUFPLpT38RgL/7u7/miSf+h8LCQqxWFU3TxgXO6tVr+NKXPo/NZsMwDD74\nwY9w++2b2LVrL3/yJ+9C13XuuuseVq70TTCiG9tXzudbTVNTM+997zsxTZOPfnTkyvC3v/01iUSC\n173uPl7/+jfyvvf9EXa7Ha+3np077+Wf/unvCYfDPPLIN3n44YdQFIW/+Zt/4Ikn/gd4+XSgrut8\n9KMfJBYL88AD7x4XiFOxdesOnn/+AO9738j9p7/4i88B8KMfPUp9/SK2bLmTt7zlf/Hgg3+EacJ7\n3vN+bDYb73jHu/jLv/w8v/zlf1JcXMLnP/+XOBxOVq708d73vhOLRWHz5ttpahq5ir106aLcq5ol\nimma2fz+5nzdm0bOKz9k45wef/y/uHjxAu997/tn7Xvk67/VmTOn8fuP85rXvG70WFvbCzz22M/4\n/Oe/lLfnNZnKSs+U3y3094ez+kd7tl3vZyGLgoUQOaO4uHhcUAlxhUwDCjHHrlfxJqCiovJlx5qb\nN9LcvDELoxG5RK6shBBC5DwJKyGEEDlPwkoIIUTOk7ASQogsisZi1K/dMb1a/AVICiyEECJLAkPD\nxFIG7qIqe7bHkuskrIQQYo6l02l6B4JgdaDabNkeTl6QsBJCiDkUjcUYCsVR7a5sDyWvSFgJIcQc\nuTLtJ0E1fRJWQggxy2Tab+YkrIQQYhbJtF9mSFgJIcQsCQSHiSVl2i8TJKyEECLDZNov8ySshBAi\ng2LxOIPBKDaHO9tDmVckrIQQIkOuTPtJUGWehJUQQsxQOp2mbzCIaZFpv9kiYSWEEDMwdtpvytv9\nimmTsBJCiBsk035zR8JKCCGm6cq0n6HYZdpvjkhYCSHENMTjCQaCEWwON9ZsD2YBkbASQogpCgSH\niaVMmfbLAgkrIYSYhGEY9A4MjUz7qXI9lQ0SVkIIMQGZ9ssNElZCCHEdweEQEan2ywkSVkII8RLj\np/1kx/lcIGElhBBjJBJJ+oci2BwumfbLIRJWQghx2XAoRDiexuaQLT1yjYSVEGLBM02TvoEhdFNF\ntTmyPRxxDRJWQogFLZVK0R8IY7E5sSrS3S9XSVgJIRascCRKMJLAJjv55jwJKyHEgjQQGCKhKRJU\neULCSgixoIzfct6S7eGIKbqhsPL5fCrwbWAJYAe+BBwDHgEM4Kjf739/ZoYohBCZMbYbhcgvN/q2\n4n5gwO/3bwV2Al8HvgZ80u/3bwMsPp/vDRkaoxBCzNhwKMRAKC5BladuNKx+DHxmzHPoQIvf7997\n+djjwN0zHJsQQsyYaZr09g8SSYBNytLz1g1NA/r9/hiAz+fzAP8BfAr4mzGfEgaKp/JclZWeGxlC\nzpPzyh/z8ZxAzgtGytJ7+ocpqShHmSdl6aWl7gXZ+f2GCyx8Pl8D8DPg636//4c+n++rYx72AMGp\nPE9/f/hGh5CzKis9cl55Yj6eE8h5wUvL0mOzO7A5NDQ0f87lWq73ZuSGpgF9Pl818BvgE36//zuX\nD7f5fL6tl/9/J7D3ml8shBCzbCAwxHBUk7L0eeRGr6z+AigBPuPz+T4LmMCHgH/0+Xw24Djwk8wM\nUQghpiadTtMzEESRsvR550bvWf0p8KfXeGj7jEYjhBA3SMrS5zdZFCyEyHvB4RDhRFqCah6TsBJC\n5K2RbukB0tilLH2ek7ASQuSl5OVu6VabE8s8KUsX1ydhJYTIO+FIlGA4MS82SRyOprI9hLwgYSWE\nyCsDgSESuiWvg8o0Tc50hdjV2sG57vm3Hm42SFgJIfKCrutc6uonZdhQ1fwsSzdNk5OXguxq6+Ri\nbyTbw8krElZCiJwXi8cZDEaprq3EYolmezjTZpgmJy4Msau1k86B8eNfu6QU//4sDSyPSFgJIXJa\nIDhMLGnkZVm6YZgcPRdgd1snPYGrbZIUoHFZGdubvdSWF/DzR7M3xnwhYSWEyEmGYdA7MISh2FFt\ntmwPZ1rShsnhMwPsbuukP5gYPa4o0LS8gm3NdVSX5l/4ZpOElRAi58TjCQaHo6h2F/nUXzxtGLSd\nHGB3eyeBUHL0uEVRaF5VwfYNXsqLnVkcYf6SsBJC5JSh4DCRpJFXTWj1tMEL/n6eau8kGLlaim61\nKGz0VbJtQx2lHgmpmZCwEkLkhLHTfrY8mfbTdIPnT/Sy51A3oTHrpVSrwi1rqrmzqY7iAnsWRzh/\nSFgJIbIu36b9klqa5471svdwN5G4NnrcrlrYvLaaO9bX4nFLSGWShJUQIquGQyFC8XReTPslUjrP\nvtjLvsPdxJL66HGHzcptjTVsWVdDgTM/rgrzjYSVECIrDMOgb3AIIw+a0MaTOvuPdPP00R4SqfTo\ncafdypZ1tdzeWIPLIX9OZ5P8dIUQc27stF8u96KIxDX2H+nm2Rd7SWpXQ8rtVLljXS233lSN0y5/\nRueC/JSFEHMqH6r9QrEU+w51c+B4L5pujB4vdNm4s6mWzWuqsdvy4e7a/CFhJYSYE/lQ7ReMJNlz\nqIuDJ/rQ0+bo8eICO1ub6ti0ugpbnvYlzHcSVkKIWTd2y/lcvB4JhBI81d5F68l+0sbVkCr1ONi2\noY6WVZWoVgmpbJKwEkLMqkBwmFjKzMnefgPDcXa3ddF+qp8xGUV5sZPtG+rYsLICq0VCKhdIWAkh\nZkU6naZvMDjS20/Nreup3qEYu9s6OXxmEHNMSFWVutje7GX9snIsFtl9OJdIWAkhMi5Xp/26B6Ps\nau3kxXMBxmQUteVutjd7uWlpGRZFQioXSVgJITIqF6f9Ovoj7Grt5PiFoXHHvZUF3NXsZfXiUhQJ\nqZwmYSWEyIhcnPa70BNmV1sHJy8Njzu+qLqQu1rqWVlfLCGVJySshBAzlkvTfqZpcrY7xK7WTs52\nhcY9trS2iLtavCyrK5KQyjMSVkKIGQkOhwgn0lmf9jNNk1Mdw+xq7eRCb3jcYyvri9nR4mVJTVGW\nRidmSsJKCHFDTNOkdyCQ9d5+pmly4mKQXa0ddPRHxz22elEpO1q8NFQVZml0IlMkrIQQ05ZMpegP\nhLHanFmrnjNMk2PnAuxq66R7MDbusZuWlrGj2UtdRUFWxiYyT8JKCDEt4UiUYCSRtd5+hmFy5Owg\nu9o66RuKjx5XFFi3rJwdzV6qy3KnElFkhoSVEGJKTNNkIBAkqStZCaq0YfDMkW7+e99ZBoYTo8ct\nCmxYWcH2DV4qSnK3Oa6YGQkrIcSkkqkUA4EwFpsT1Ta303562qDtZD+727sYCidHj1stCi2rKtm2\noY6yIuecjimb/BeH8C0qzfYw5pyElRBiQqFQhFAshTrHV1OabnDQ38ee9i6Go6nR46pVYZOviq0b\n6igpzO1NG2fD1358iH/68NYF11hXwkoIcU1XdvJNmzZU+9xduaT0NM8d62Pv4S7CMW30uE21sK25\nnk2+Corc9jkbz2zTNY1UImxO/pkjNN0gltTn1c9gKiSshBAvk0gk6R+KYHO45myRbzKV5tljPew7\n3E00oY8et9ss3Lq2hjvW17LIW0IgEJ3gWXKfaZpoqQQ2q4LDZqW42MH59l8NTOc5IjFNwkoIsbCF\nQhGGYylsjrmZ9osndZ4+2sPTR7uJJ69uHe+0W7mtsYYtjbW4nfn9p0pPpTBNHYfditNuo7C0FMsM\nth4JRVMLriw/v18BQoiMGggMkdAt2OZg2i+W0Nh3pIdnjvaQ1K6GlMuhsmVdDbc31uC05+efqJde\nPZWUunBAz/mdAAAgAElEQVQ6Mnd/LRBOTP5J80x+vhKEEBllGAY9/UNgdaDO8rbt4ViKfYe7OXCs\nl5RujB4vcNm4c10tm9dW47Bnu8Pg9KV1HSOdunz1pM746mkiY9eXLRQSVkIscIlkkoGhyKxX+w1H\nU+w91MXzx/vQ0ldDqsht486mOm5eU4U9R7q1T5WWSmBVTOw2K0UeB27X3PQefGnHjoVAwkqIBSwU\njhCKzm5Z+lA4yZ5DXRw80Ud6zN7xJYV2tm6oY+OqKmyzfDWXKel0mrSexK5acNisVFQUoapz+2e0\nwKlyoSc8+SfOMxJWQixAo90o0pZZK0sfDCV4qq2T1pMDGGP2ji/zONje7GXDyoq8WCukaUksGDhs\nVjxuO253eVa3F1laW8TRcwGGoymKCxZORaCElRALjKZp9AVCWFQnqpr5P7p9wThPtXVy6PQAYy6k\nqCh2sqPZy/oVFVgtubuXlGmapC4XRzhtVspKC7DbcycUVi8u5ei5AMfOBbitsSbbw5kzElZCLCCh\ncIThaHJWevv1BGLsau3g6NkAY1e4Vpe62NHipXFpOZYcDal0Oo2hp7DbLLjsKlUlJVituXn/bP3y\ncn6y+wytJ/slrIQQ84tpmvQNDKEZ1owHVedAlF2tHRw7PzTueF1FAXe1eFm9uDRr24hMRE+lgDQO\nm5VCt40Cd1le7B7srSigrqKAQ2cGicQ1Cl22bA9pTkhYCTHPXelGodqdqNbM/TG+1BfmydZO/BeD\n4443VBVyV4uXVQ0lOfXH3zRNNC2JagGnzUppqQtHBtc+zRVFUbhzfS0/evI0ew91sfPWxdke0pyQ\nsBJiHgsEh4kmjYx2ozjXHWJXayenO4fHHV9S42FHi5cV3uKcCamXTu8VlhTn7PTedNyxvpbH9p3j\nN89f4q6N9Ths+X9Ok5GwEmIe0nWdrt5BTIsdm23m00SmaXKmM8Sutg7OdY8vm17uLWJHcz3L6uZm\njdFkNC2JYo6t3suP6b3pKHDauHtTPf/19AX+57mLvG7L0mwPadbNKKx8Pt9m4Ct+v3+Hz+dbDjwC\nGMBRv9///gyMTwgxTZFojEgygcU286sp0zQ5eSnIk62dXOqLjHvM11DCjhYvi6o9M/4+M/HS1ka5\nVr03W3ZuXsye9i7++5kLbF5bTVXp/N4d+YYXOfh8vo8DDwFXJn2/BnzS7/dvAyw+n+8NGRifEGKK\nTNOkf3CIYCSFfYbTfoZpcux8gH/++VG+82v/uKBas7iU97+xkXfsXJ21oDIMg1QyhmIkKbAb1FeX\nUltVRllp8YIIKhjpofj7d68kpRt8+7+PkzaMyb8oj83kyuo08Ebg3y9/vNHv9++9/P+PA/cAj83g\n+YUQU6RpGr2DIawz3MnXMEyOnguwu62TnsDVlj4K0LisjO3NXmrLs9PtW9d1Uok4FjOJ22HDU57d\nxbm5YPOaal7w9/OCv5/H9p3j97Yuz/aQZs0Nh5Xf7/+5z+cbW4Yy9lUTBopveFRCiCkLR6IEI4kZ\nlaSnDZPDZwbY3dZJf/BqR29FgablFWxv9lJVOrc7BcNI7z2LYuKwWSkqdLC4oZL+/oXXauh6FEXh\nnTtXc7E3zH89fYH6ykJuWVOd7WHNikwWWIy9BvUAwet94liVldmd754tcl75I1/P6craKavTQXVh\n4cseLyub/ApITxscONrDr585T3/waidvi0Xh1sYaXn3bkjm/F5JKJrFZweVUKfaUv6z3Xr7+e2VK\naakb9SUNfz/3x7fx8X/Yyzf/6ziL6kpYt6IiS6ObPZkMq1afz7fV7/fvAXYCT07li+bju6TKSo+c\nV57I13MaO+03MhWWGvd4WVnBhDvq6mmDg/4+9rR3EYxc/VqrRWGjr5JtG+oo9TjBNGd9Z17DMEhr\nSdTLBRKeQjc21Yahw9BLtsLI13+vyUwngIeGXt5x3W1VePCNjfzdjw/xhW89y0ffuoEV9fk5uXW9\nn0Umw+pjwEM+n88GHAd+ksHnFkJcFo3FCAzHb2jtlKYbPH+ilz3tXYRi2uhx1apwy5pq7myqm5Pm\nqCPrn5I47FbcDhuFZbO399NCcdOSMv7kDTfxjf98ka/9uJ0PvXk9vkWl2R5WxiimaU7+WbPHnK/v\nkuS88kM+nZNpmgSGholrJqpt4s4LL72ySmppnjvWy97D3UTiV0PKrlrYvLaaO9bX4nHPbkjpmgam\njsNmxe20U1Aw/enFfPr3mo7KSs+UK0X6+8MT/tE+eKKPf/3Fi1gsCg/e10hTnk0JXu9nIYuChcgD\niWSSwaEIlmlW+yVSOs8c7WX/kW5iSX30uMNm5bbGGrasq6HAOXu95cZur1Fc7MTlzM+pqXyyaXUV\ndpuFf/75Uf7xp0f4w1etYtsGb7aHNWMSVkLkuNGWSdOo9ovGNX538BJPH+0hkUqPHnfarWxZV8vt\njTW4HLPz639l91ynXV0wC3RzzfrlFXz8bc38/U8O851f++kbivOm7ctzsqHwVElYCZGj0uk0vQNB\nsDqm3DIpEtfYf6SbA8d6x4WU26ly5/paNq+txmnP/K+9lkpgtYyEYXm5JyMtnsTMLPcW86m3b+Tv\n/uMwjx+4SE8gxh+/bu2s/PvPhfwctRDzXDQWYygUn/J286FYin2HujlwvBdNv7qKxOOycWdTHbes\nqcKewWanL+1gLgGVm6pL3XzqDzfyjf88StupAf7q31/gA29aT2XJ3K+ZmykJKyFyzGAgOFJEMYWg\nCkaS7DnUxcETfejpq/fdSz0O7lhXy6bVVdjUzFTZXenB57BZcNmt86aD+XxX6LLx4bc28cMnTvFk\nayf/5zsHefC+RlYvzq9KQQkrIXKEruv0Dg6jWB2otokDJhBK8FR7F60n+0kb40Nq24Y6XrF5CeFQ\nfIJnmJrRJrGqgtuh4imVEvN8pFot3P9KH/WVhTz625P87Y/a+YN7VrGjOX8KLySshMgB4UiUYDgx\n6dqpgWCc3e2dtJ8aYExGUV7sZEezl6YV5VgtlhldTRmGga4lcNisuOwSUPPJSG9HN//086P8+2/8\ndA1E+f1XrMCaB/++ElZCZFE6naZvMIiBbcKg6h2Ksbutk8NnBhm7NLKq1MWOZi/rlpVjsdx4pdfY\nKb5CaRI7r/kWlfKZd2ziH35ymCde6KA/GOdP3nBTzhde5PbohJjHQuEIw5EkNoeL69356RqIsqut\nk2PnAoxdCVpb7mZHs5e1S8tmVI6saykspHE5VKqr5QpqoagscfHJy4UXh88M8tXvt/Gnb22iaJYX\nhs+EhJUQcyydTtMfCJI2r3811dEX4cnWTk5cHBp3vL6ygB0t9axeVHLDVz6GYaCnErgc6uWFus4b\neh6R31wOlQ++eT3f/bWffUe6+b+PtvLxtzVTUjhxd5RskbASYg6FI1GGIwlUuwvFNDl4oo+eQIya\nMjctvkou9UbY1dbByUvD475uUXUhDZWFGKZJNK5hMn5PnsloqSQKBnabRfaCEqNUq4V3vmY1BS6V\n3zx3ia9+v40/+98tc9IfcrokrISYA4Zh0Dc4hG6ooyXprf5+nj3Wi2ma+C8G2Xuoi/7hxLivW1ZX\nxI4WL4HhBAeO9wFwoXdk195Nq6sm/J6alsSKMdJJokw6ScwXodDw5J80Ta/eWImWSvFkey9f+2Er\n/999q3BkcF3etXg8RdN6wyRhJcQsG3s1NXYbou7BKImUTiSmkdLHb0m+sr6Yu1rqWVwzsl3C8fPj\npwPH7uI71sh2Gwlsip1qaXU0L/32wGlc7szv1lxaaGFJtZvzvTH+8ecn2Ly6dNauvuOxKPdsXkFR\n0dR7RUpYCTFLUqkUg8EwBrZxC3xN0+TExSAnLgYZCifHfc3qRaXsaPHSUDV+M8WaMjfne8LjPh7/\nvRLYrFDotOMpL6eqomhedicX4HIX4C6YnQ0o72jyEHv+Eh0DceqHDFY1lMzK97kRElZCZJhpmgwO\nBYmnTGz2q5V+hmly7FyAXW2ddA+OvzKqqyjgvjuXUl/58h1/AVp8lQDj7m+ldR1MDZddpaKi6GU7\n6goxXRaLwtamWh7bd54X/P00VBXOWsPj6cqNUQgxTwyHQoSiKVS7C5t9ZArFMEyOnB1kV1snfWN2\nvlUUWL+8nO0bvFSXTby3k0VRRu9RpZJxrGYKT6ETt7to9k5GLEhup40NKyp4/kQfx88Pjb5RyjYJ\nKyEmYZgm+w9309Efpb6ygC3ra1+2tikSjTIcTmBa7Rw6F6En0EdViQuLVWFPexcDYwonLApsWFnJ\n9g11VEyxoWg6ncZMp3A7VCqrSqQnn5hVKxuKOXJ2kFMdw2xYWTGjBeeZImElxCT2H+7mybZOAE52\nBAG4s6kOgHg8wVA4imGOVPkdPNHHMy/2EEvqHIhp4/r2WS0KLasq2bahjrKiqa1t0rQkNotJsdtB\nYUF5hs9MiGtTrRYWVXs4eSlI/3Cc6tLp7+qc8TFlewBC5LqO/ujLPo4nEgyHY+iGgmpzYQE03aDt\nVD+9Q3GMMSGlWkem8LY21U1pweWVij6XQ6W8rFC23hBZUVXq4uSlIIFQUsJKiHxQX1kwekWlpRIU\nqDqDwwlUmxPVCik9zXPH+th7uItwTBv9OoWRDfDevGP5lNrY6FoSq8UcreiTRbsim9yXCyuSYzbx\nzCYJKyEmccuaCsLhMBf7ItRW1rJp7cg9q2QqzbPHeth3uJtoQh/9fNWqUF3qZsOKCm5bVzNh7z7T\nNC+3PrLKFvAipxiXOybnynsmCSuxIF0pmhiMpigvsF+zaCIUjhBLpEiloWVtAy1rR47HkzrPvNjD\n/iM9xJNXQ8ppt3JbYw1bGmtxOyf+1dK1JFbFxO20UVRWJldRIudELs8SuJ25MQ0tYSUWpCtFEzbV\nMroN/J1NdSSTScLROPGkjkV1YLU6sV8uvIsmNPYf6eGZoz0ktatTIy6Hyh3rarmtsXrCbRbG3ouS\nqyiR6/qCI8ssKopzo7GthJVYkMYWTei6xsnzvSyvcWBgRbXZsTmuBkk4lmLf4W4OHOsd1xapwGXj\nzvW1bF5bPWEfNV1LYVUMCl1yL0rkh3TaoKMvgtup5kwXdgkrsSDVljk5cjqGZlHQ0wrVlaVYLlf1\nXTEcTbH3UBfPH+9DS18NqSK3jTub6rh5TRV29dohNbKZYRyXXaWkxIXTkRu/8EJMxYXeMCndYGVD\ncc68uZKwEguGaZoj96GSGktr3dy+fjHBWIoSt33cKv2hcJI9h7o4eKJv3DqpkkI7WzfUsXFV1XW3\njU/rOhgahW4bRWVyFSXyj2mavHhuCAWkN6AQcykSjRJLpEik0tjsLhSrE4cVNq12UVZWQCAwMiU4\nOJzgqfZOWk8OjFZCAZR5HGxv9rJhZQWq9dohpV1uJFta6JIWSCKvXeyNMBROsrTWgyeHdg6WsBJZ\nMZUWRjORSCaJROMkUmkUqx2r1YH9OjNxfcE4u1s7OXRmgDEZRUWxkx3NXtavqMB6nXYzupbEZjWp\nLiuUggmR9wzDpP3UAIoCTSsqsj2ccSSsRFZM1MLoRl0JqKSWxrxcKKFOkB89gRg/3XOW1hN9jMko\nqktd7Gipp3Fp2XV7oulaEtViUlFSIPejxLxxsiPIcDTFqoZiinJst2AJK5EV12phdCPiiQTRWIJE\nKg1YUe12rJMsC+kciLKrtYNjL9nQsK6igLtavKxeXHrdqzwJKZFtwcAgiXh88k+cgNPpGmmxMkZK\nN2g/OYBqVVhV5yQWnb390OKx6f++S1iJrBjbwujKx1MVi8eJxZMjAaWok15BXXGxN8yutk78F4Pj\njjdUFXJXi5dVDSXXLYjQUgnsKhJSIusMQ8cwbrwFUiIeZfOaCjye8fdWf/FMBynd4LWb67h7Y+1M\nhzmpl37/yUhYiazYsn7kl2HsPauJjLuCmkZAAZzrDrGrtZPTncPjji+p9fCGbSuo8tivG1JyT0rk\nmrKK6hntFByLhvF4isZtKT84nGDP4X7Kihy87o6V2CdYN5gtElYiKyyKMuk9qpkElGmanOkM8WRb\nB+e7x09nrPAWs6PFy9LaonHVgGMZhoGpJykvLsDlmtp2HkLkq1/sP4eeNnjjnctyMqhAwkrkENM0\nicZixC+XmSsW27QC6spznLwU5MnWTi71RcY95msoYUeLl0XVE78r1ZJxClwqZRWyf5SY//qCcfYf\n6aG23M1tN9VkezjXJWElsso0TcKRKPGkRkozsKgjZea2ad4WMkyTExeG2NXaSefA+CultUtK2dHs\nxVtZOOFz6FoKm9WgpqJI9pASC8ZvnruIYZq87vYlObEj8PVIWIk5l06niUSjxJM6Kc1AtTuxWKYf\nUDCyLuTouQC72zrpCcRGjytA47Iytjd7qS2fuHjDMAwMPUlpkYsCd/Y3mRNirsQSGvuPdFNe5ODm\nNVXZHs6EJKzEnEilUkRiI4t0dQNsNgeKVR3taD5dacPk8JkBdrd10h9MjB5XFGhaXsH2Zi9Vpa7J\nx5WI41LTlJTLNh1i4Xn2WC8pzWD77V6slmt3Z8kVElZi1lwpkEhqaQws2GwOLKqNmdTU6WmD9lMD\n7G7vJBBKjh63KAotqyrYtsFLefHkBRG6lsJuNVhUV09gzBWZEAvJM0d7UBTYsm72S9VnSsJKZFQ0\nGiOWSI3s93S5gs9qg5nWF+lpgxf8/TzV3kkwkho9brUobPRVsm1DHaWeyUPqpVV+VmtuVj4JMdsC\noQRnukKsWVyaM9uATETCSszIlQKJREojmUpf3rBwehV8E0npaQ6e6GPPoW5C0ashpVoVbl5Tzdb1\ntRRP8RdNTyUodKmUSJWfEBw+MwhA88rc6gF4PRJWYtoyWSBxPUktzXPHetlzuJtoXBs9blctbF5b\nzR3ra6fcEdo0TdJagqoyjyzsFeKyYxdG2o2tW5Yfb94krMSkTNMknkjQP5imq284IwUS15NI6Txz\ntJf9R7qJJfXR4w6bldsaa9iyroYC59TLynUtidMGNdVSQCHEFVfWI5YU2qdUiJQLJKzEy1xZnJtI\nami6gZY2sFjtqC43FtU5owKJ64kldJ4+2s3TR3suN6Ud4XJYub2xltsba3A5pv5yvXI1JR0ohHi5\nQDhFKJpi0+qqvHkTJ2ElANB1nVAkOlJanjaxqnasVjuKCqrVpNXfT/Bwz+iuupnaeyoSH1nn8eyL\nvSNFGZe5nSp3rq9l89pqnPapv0wN0+S5o530D0XwLammrrosI+MUYj652DeycH5Zbf5sFCphtYDF\n4nHiiSRJzSBtgM3uHCktf8mrotXfz7PHelGtCnp6ZOenTatntoAwFEux71A3B473ounG6HGPy8ad\nTXXcsqbqhnqUPXf4Ii+cHkS1Oehq70KZQg9CIRaajv6R5RqLqyfu6pJLJKwWkJHCiBiJlE5KS2Ox\n2rGqdiwqTLQcsOcl65Be+vF0BCNJ9hzq4uCJvtHgAygusLO1qY5Nq6uwqdNfnJhOp7GYKaKaBXVM\npceN7pMlxHzWMTCyH9aimhvv3j7XJKzmuXQ6zXA4QjKVRrtSGDHNyr2aMjfne8LjPp6uQCjBU+1d\ntJ7sJ21cDalSj4NtG+poWVWJar2xFfSalsTjtFJSXM6i6iSnu0Kjj01nnywhFgLTNOkciFFe5JxW\nsVK2ZTSsfD6fAvwz0AQkgHf7/f6zmfweYnLpdJpQOELickDZ7U6UGXSOaPFVAhCMpUbvWU3VQDDO\n7vZO2k8NMCajKC92sqPZS9OK8hm1edGScSpLC3E6R9J3uvtkCbHQxFMGkbiOr6E020OZlkxfWd0H\nOPx+/+0+n28z8LXLx8QsSyaTo62NMhFQY1kUhU2rq66799O19AZi7Grr5MjZQcwxIVVV6mJHs5d1\ny8pn1OE5reuoioa3uhTLmLCbyj5ZQuSzU6fP43DdeMPlwVASsLKkNn+mACHzYXUH8GsAv99/wOfz\nbcrw84sxItHo1b2fFBXVbs9YQN2oroEou9o6efFcYNzx2nI325u93LS0bMaVhFoyTnGhgyJPfixm\nFCKTliyqwzaDxe1DsT5AZ1ld8aSfm0syHVZFwNi9w3Wfz2fx+/3G9b6gsjK/0n2qZuO8TNMkGo0R\niSWJJ9NYnS6KCwqZy5dcWdm17wGd7w7xq/3nOHx6YNzxxbVFvPb2JaxbUTHj9RxGOo1iatRU1qOq\nmXvpymswv8zX85qqysoyHM4bX8g7fGQA1apwy7o6nNNYu5htmR5pCBj7SpowqAD6+8MTPZyXKis9\nGTuvKwt0Y4nUmN57V0q6ExN+baZdaxrwQk+YJ1s7ONUxPO74oupC7mqpZ2V9MYqiMDQ0s87mWipB\nkVuluKiIoaH4jJ5rrEz+W+USOa/8Mp0AjsY0UvqNvfFLamn6gymW1xcTDsXJxZ/k9X4WmQ6r/cC9\nwE98Pt+twJEMP/+C8NLt3UcCKrO992bCNE3OdofY1drJ2TGVdwDL6orY0eJlWW1RRlbGm6aJoSVG\niigcOfIDECJPdQ9EMYHGJfm3WD7TYfVz4B6fz7f/8sfvzPDzz2tj70HlWkDB1X5iu9o6udAz/j3Z\nyvpidrR4WVKTuRXxupbCoZpUSF8/ITLiUl8EgKYV+dFpfayMhpXf7zeB92XyOecz0zSJRKMkklrO\nBhSMjPPExSB7fnmMC93jr6RWLyplR4uXhqrMroTXknFKPE48hQUYpsm+Q13jytEz1e5JiIVCTxt0\n9EUpdFpYlEedK67In7tr80QymSQSi5PUDPS0iWpzZHx7jUwxTJNj5wLsauuke3D8Paeblpaxo9lL\nXUVmF92apomhJ6ipKMJmG1mwuP9wN0+2dQJwsiMIIOXpQkzTpb4IWtrA53Xl5UyFhNUcuLK9+0g3\ncSuqfaTF0TT6s84pwzA5cnaQXW2d9I0pZlCUkb1vdjR7qb6BLhaT0TUNh2pQUTV+2u+lLZOkhZIQ\n03emc6QIanlNfu5CkKN/LvNfLBYnGk+O2949U7vnzpa0YdB+aoDd7V0MDl+tNLQosGFlJW/YvgIb\n5gTPcOM0LUmxy0ZR0csL8esrC0avqK58LISYunAsRddAjMoSFyUF+flnPz9HnaOi0ZES82gyQTCi\nYVVzP6BgZC679WQ/T7V3MRROjh63WhRaVlWybUMdZUVOysrcU+5gMa3vn4pTMcG+U9JCSYiZOXFh\n5M2eb1EJoE/8yTlKwmoGrl1ibsfmcGFVJ1xelhM03eDgiT72HOpiOJoaPa5aR9orbW2qo6Rw9m6m\npXUdq6JRVzW+ZdJLSQslIW5cSktzqiOIy6GyuMYD2lC2h3RDJKymSdd1YvEEiZRGMmVgUe05WcE3\nkZSW5rnjfew93EU4po0et6kWNq+p5o6mWorcs3tJqKcSFLntFBVJyyQhZtOJi0H0tMn65SVYZ9CP\nM9skrCag6zrRWJykpqPpI9V7isWCqtpztoJvIslUmmeP9bDvcDfRxNWpALvNwm031bBlXS2Frtnd\nMuDKdvNVZR7sM+hvJoSYnKYbHD8/hF21sGpRSbaHMyMSVi8Ri8eJXS6MMEwF1eZAURxYbWDNn61f\nxokndZ4+2sPTR7uJJ69uHe+0W7m9sYbbG2txO2f/pZDWUjhsJjWyyFeIOXHiwhBJLc2GFeXY1env\nvJ1LFnxYvWxh7uXdc602yO9/WoglNPYd6eGZoz0jVYmXuR0qW9bVcltjNc45qp/XknFKi1wUFmS+\n5F0I8XIpLc2L5wLYbRZWL86vvauuZUGGlWEYhCPRy9u75+d9p4mEYyn2He7mwLFeUvrVQo8Cl407\n19eyeW01DtvcRPGV3n5jF/kKIWbf0XMBUrpBy6oK7HP0+z6bFkxYje6eq6XRdBOb3Tnt7d1z3XA0\nxd5DXTx/vA8tfTWkitw27myq4+Y1VbM6FWCYJq3+fnoCMWrK3KxfVozLhvT2E2KOxRIax88P4XKo\n8+KqCuZxWKXTaaKxGMlUGk1Poxtgd7hQrDbs+f8mY5yhcJI9h7o4eKKP9Ji940sK7WzdUMfGVVXY\n1BvfOn6qWv39PHusF4DTl/pwWBdxz+Zls/59hVhItFgAIznxn+4XTkVIGyaNDQ7SsQDpMY+5bLm/\nrOZa5lVYvbTvns3uRFGsWGxkdffc2TI4nGB3eydtJwcwxuwdX1bkYPsGLxtWVqBaZz+krugJxDAN\ng7Qex+5wMRBOT/5FQohpec32jRM+3tEX4cf7n8NbWcB7f+8WLHlcrj5WXodVKpUiGouT0g1S2tWt\n3XO5714m9AXj7G7t5NCZAcZkFJUlTrZv8LJ+RUVW1lNUeKycNVK43CObp0lbJCHm3o93ncYE3rJ9\nxbwJKsjDsBpXWo4Fm80BFubVvafr6QnE2NXawdGzgXEd+mrK3Gxv9tK4tCwrL07TNNFTCV55y2LK\nSzzSFkmILDl6bpCj5wKsXVLKumX5t8HiRHI+rF5aWq5YbKi2+VFaPlWd/RF2tXVy7Pz4Nil1FQXc\n1eJl9eLSrO3vpGsaNkua+pqRIgppiyREdhiGyY+fPIMCvHXHinlX1JSTYTW2tDyppVFtzrzsGDFT\nF3vD7GrtxH8pOO54Q1Uhd7V4WdVQktUXpJaKU1zgoMjz8k7pQoi59cyLPXT0R7i9sYZF1Z5sDyfj\nciasNE0jHL1cvZe+WlpuX2ABBXCuO8Su1k5OX95/5ooltR7uaq5nubcoqyE1unaqXNZOCZELNN3g\nP/eeRbVaeOOd87MCN6thpWkaA4EgKS1N2lRGAkq1zeviiOsxTZMznSGebOvgfHd43GMrvMXsaPGy\ntLYoS6O7StdSOFRT1k4JkUOeau9kMJTklTc3UF6cn5srTiarsTAciqJjx2KDuSuwzi2maXLyUpAn\nWzu51BcZ95ivoYQdLd6cuaTXkgmKC2x4CqXKT4hckdLS/PczF3DYrLzmtsXZHs6syWpYLeR35oZp\ncuLCELtaO+kcGL+h4dolpexoqcdbkRuhcKVTet3SOoaHk5N/gRBizjx1eT+61962eNa39smmBTjh\nlgcXfsYAABHgSURBVF2GYXL03CC727roCcRGjytA47Iytjd7qS3PjZACMNJpLKTwVpdd3tJDwkqI\nXKGnDX594CJ2m4VX3tyQ7eHMKgmrOZI2TA6fHmB3eyf9wcTocUWBpuUVbG/2UlXqyuIIX07Xkrgd\nFspKZINEIXLRc8d7GQonuWdTA555fFUFElazTk8btJ8aCalA6OpViUVRaFlVwbZmL+VFuXdDVEvG\nKSt2UeCWLT2EyEWmafLbgx0oCtyzqT7bw5l1ElazRE8bHPT3sae9i2AkNXrcalHYtLqKrU11lHpy\nry5ftvQQIj+c7wlzoSdM88oKKkpya1ZmNkhYZVhKT/PE8xf5zTPnCcW00eOqVeGWNdXc2VRHcUFu\nXq7ruobDakhZuhB5YO+hLgC2bfBmeSRzQ8IqQ5JamgPHetl7uJto/GpI2VULm9dWc8f62pyeU9ZS\ncUoKnVKWLkQe0HSD5473UVJop3Hp/OoBeD0SVjOUSOn/f3v3HiNXeZ9x/Luzs/ed2d3Z+66B2jT8\nuNj4AuUegwMpSiO1QcofaROpwWnToEppSUPUNEobITWNWgVBiyBSWrdRCapCVSq1UQukmJsBczEG\nO8CLW2OQ7fXdZtfe2Zk5M6d/7Ox6bexde3Z251yej2TtzjsX/c4ezzxz3vOe9+Wl7ft5YdsI2Zw3\n3d7UUM/1ywe4ccUAbc3B7U7zfZ9iPkt/d7o82k9Egu6Xu44wnvO46coLIjWz+mwUVhUan/B4cfsI\nL27fx0T+5LpNLU313HbNRaxalqGlKdh/3qLnkazzGBjoVrefSIhs3XEQgKutr8aVLJ5gf5oG0PFs\ngU3bRnj5l/vJFU6GVFtzkpuuHOS6ywcYHEhz5MiJWV6l9rxCjlRLPR3peHQhiESF7/u89X+HaW9p\nYNlQ7adgWywKq3M0Op7nhTdH2PzOfgreyWWhUy0NfHLlENdc1kdjQzgWLSnksvR2tdPcHLzRiCIy\nu31Hxjl2PM81l/XFpgsQFFZzOnY8x3Nv7uW1dw/gFU8uedjR1sjalUNcfWkfDclwzGxYKhap8/MM\n93eRSISjZhE51XvlJYPswq4aV7K4FFZncWR0gme37mXLewcplk6GVFeqiZtXDbHmkl6S9eH5wPe8\nPO1NCTo7NBuFSJi9PzIKwMUx6gIEhdXHHDqW5Zmte9i64xAzMorujmbWrR5m5a92Ux+yoxIvnyXT\n0UprS/QvHBSJug/2HydZn2AoIBNdLxaFVdn+I+NsfGMP23Yexp8RUn1dLaxbPcyKZd2h6x/2fZ+S\nN8FATwfJpHa1SBSMHD7BUHdrqHp2qiH2n2B7D51g4xt7ePv9I8zIKAa7W1m3epjLl2ZIhHBY9/Rs\nFH2ajUIkSvKFEgPd8ZuzM7ZhtfvAcZ7esod3Pzx6SvuS3jbWrVnCpRd2hvZDXrNRiERbbwzmAjxd\n7MLqg31jPL1lNzt2f3RK+0X9KdatGeYTSzpCG1JTiyQOdGsSWpEoi+rS9bOJRVj5vs/OkVE2btnD\nzr2jp9y3bCjNujXDLBtMhzakALxCnqakz4AmoRWJvM72+F0jGemw8n2fHbs/YuOWPXywf+yU+y65\noIN1q5dw0UCqRtVVj5fP0plqob0tfv3YInGUao1fz0kkw8r3fd798Bgbt+xm98FTpz267KIu1q0e\nZklfe42qq55SqQTFnEb7icRMqkVhFWol3+ft94+w8Y09jBweP+W+K5ZmWLd6ODLXJkwvOd+ji3xF\n4qY1wCs5LJRIhFWp5PPWzsM888YeDhzNTrfX1cGKZd2sWz1MfyY6XWSF3DjdnW26yFckppobwzEP\naTWFOqyKpRJbdxzima17OfzRxHR7og5WfaKHW1YNR2q556luv6G+Lurr4/efVUSgPlEXuwuCIaRh\n5RVLbHnvIM9u3cvRsdx0e32ijjWX9HLzqiEy6WgN7fQKeVoaoFvdfiKx1tgQv6CCkIVVwSvx2rsH\neO7NvXx0Ij/dnqyv4+pL+1i7ciiSQzoL+SxdGu0nIkBDDI+qYJ5hZWZ3AJ93zn2xfPta4AGgADzl\nnLt3/iVCvlDklXcO8PybexnLFqbbG5IJrr2sn5tWDpJujd6S7LrIV0ROF/QVyBdKxVttZvcDvw5s\nndH8I+AO59wuM/u5ma1yzm098yvMLZcv8vLb+3j+rRHGJ7zp9qaGeq67op8bVwzSHtEhnFNz++ki\nXxGZ6au/eUWtS6iJ+UT0JuBx4A8AzCwFNDrndpXvfwK4lVPD7Jxkcx4vbt/Hi9tHyOZOLh3f3FjP\nDcsHuGH5IK3N0f12Uchl6Uxpbj8R+bilg/Fax2rKnJ/4ZrYeuBvwgbryzzudc4+Z2c0zHpoGZs5l\nNAYsPZ9iTkwU2LRtHy9t30eucDKkWpuS3LhikOuX99PcGN2Q8n2fYj5Lf3eaxsbodWuKiFRqzk9+\n59wGYMM5vNYok4E1JQUcm+tJmUwboydyPPXKhzy3Zc8pIZVua+S2ay5k7erh0IVUJnN+R0WF8mi/\nvp7+QHf79faGf3qq00Vxm0DbFVVdXa0kk/G7dKVqCeCcGzOznJktBXYBtwPfm+05R0dzPLbxfV59\n5wCFYmm6Pd3WyNqVg/zapf00JBOMH88xTm6WVwqWTKaNI0dOzP3AskJunExHK4mGVg4dOr6Alc1P\nb2+KgwfH5n5giERxm0DbFTbnE8BHj47P/aAQO9vfotqHK18DHgUSwJPOuVdne/A9D72MVzy55GFn\neyM3rxrmKuuNxUVvpVKJupIu8hURmcu8wso59yzw7IzbrwDXn+vzp4Iqk27illXDrL6kh/pE9EMK\noFjI09JYp7n9RETOQU1PBC1f1sVlF2W48uIe6hPBPU9TbV5+gs5Usy7yFRE5RzUNq2/+9kr2HpyY\n+4ERMT3ar6dDF/mKiJyHcA2xC7FSsUg9eQYGugM92k9EJIgUVovAK+Roa0rQ1anzUyIilVBYLbBC\nLkumo4W2Vp2fEhGplMJqgfi+T6kwwUCPJqEVEZkvhdUCKHoeiVJOk9CKiFSJwqrKvEKOVEsLLclM\nrUsREYmMeFyBu0gKuSw9Ha10dcZzVmQRkYWiI6sqKHoeyboCw/1dJGIyA4eIyGJSWM1TIZelo62J\ndFrD0kVEForCqkJTS873d6e09pSIyAJTWFXAK+RobkCj/UREFonC6jxNrT2li3xFRBaPwuocFT2P\nBAWG+zMaRCEissgUVufAy0+Qak3SoUEUIiI1obCaxdQgit5MiiYNohARqRmF1VkUC3maGnwNohAR\nCQCF1RlopnQRkWBRWM1QKpXwizkGeztIJvWnEREJCn0ilxULeZoboLtHgyhERIJGYQUU8lk625tJ\ntbfVuhQRETmDWIfV1AKJ/RlNmSQiEmSxDatSsUiCPEMa7SciEnixDCuvkKO1KUGmU+enRETCIHZh\nVchn6Uq10N6mYekiImERm7DyfZ9iPstATwcNDQ21LkdERM5DLMKqWCxST57hgW6dnxIRCaHIh5XO\nT4mIhF+kw0rnp0REoiGSYTV1/dRAd1rnp0REIiByYaXrp0REoidSYaXzUyIi0RSZsCrksnSldX5K\nRCSKQh9W0+enenR+SkQkqkIdVp5XoKm+RI/OT4mIRFpow0rLeoiIxEfowkrLeoiIxE+owqroeTQk\nigyo209EJFZCE1ZefoJ0ayPpdLrWpYiIyCILfFj5vk+xMEFvJkWTuv1ERGIp0GFV9DySdQV1+4mI\nxFxgw8or5Ei11NOR1mwUIiJxF8iwKuSy9Ha109zcVOtSREQkAAIVVqVikTo/z3B/F4lEotbliIhI\nQAQmrDwvT1tjHV2ahFZERE4TiLAq5Mbp6WynpaW51qWIiEgAVRRWZpYGHgHSQAPwDefcZjO7Drgf\nKABPOefune11SqUSvpdlqK+L+vr6SkoREZEYqPTE0DeAXzjnbgHuBB4qtz8MfME590ngWjNbNduL\nZLrSDPZ1K6hERGRWlXYD3gfkyr83AFkzSwGNzrld5fYngFuBrWd7EYWUiIiciznDyszWA3cDPlBX\n/nmnc+51MxsA/hn4OpNdgqMznjoGLJ3r9Xt7UxWUHXzarvCI4jaBtiuqurpaSSbj90V/zrByzm0A\nNpzebmYrgEeBP3HOvVA+spo5cV8KODbX6x88OHbu1YZEb29K2xUSUdwm0HaFzfkE8NGj4wtYSe2d\n7W9R0TkrM7sc+BnwO865JwGcc2NAzsyWmlkdcDvwfGXlioiInFTpOavvA03AA+VgOuacuwO4i8mj\nrQTwpHPu1eqUKSIicVZRWDnnPneW9s3A9fOqSERE5DSa00hERAJPYSUiIoGnsBIRkcBTWImISOAp\nrEREJPAUViIiEngKKxERCTyFlYiIBJ7CSkREAk9hJSIigaewEhGRwFNYiYhI4CmsREQk8BRWIiIS\neAorEREJPIWViIgEnsJKREQCT2ElIiKBp7ASEZHAU1iJiEjgKaxERCTwFFYiIhJ4CisREQk8hZWI\niASewkpERAJPYSUiIoGnsBIRkcBTWImISOAprEREJPAUViIiEngKKxERCTyFlYiIBJ7CSkREAk9h\nJSIigaewEhGRwFNYiYhI4CmsREQk8BRWIiISeAorEREJPIWViIgEnsJKREQCT2ElIiKBp7ASEZHA\nU1iJiEjgKaxERCTwFFYiIhJ4yUqeZGatwKNABpgAftc5N2Jm1wH3AwXgKefcvVWrVEREYqvSI6vf\nB15zzq0Ffgp8q9z+MPAF59wngWvNbFUVahQRkZirKKyccw8Af1m+eSFwzMxSQKNzble5/Qng1nlX\nKCIisTdnN6CZrQfuBnygrvzzTufc62b2P8By4NNAGhid8dQxYGnVKxYRkdip831/Xi9gZgb8HFgF\nbHbOXVFu/zqQdM7dN+8qRUQk1irqBjSzPzWzL5VvjgOec+44kDOzpWZWB9wOPF+lOkVEJMYqGg0I\nbAB+YmZfYTLwvlxuv4vJUYIJ4Enn3KvzrlBERGJv3t2AIiIiC00XBYuISOAprEREJPAUViIiEngK\nKxERCbxKRwPOm5ndAXzeOffF8u1rgQeIyLyCZrYbeK988yXn3HdqWU+lypchPASsZHIeyN9zzu2s\nbVXVYWZbgGPlm+87575Sy3rmq/we+oFzbp2ZXQz8E1ACtjvn/rCmxc3Dadu1GvgPTr63HnbOPVa7\n6s6fmSWZHFH9K0Ajk7MBvU1E9tdCqcmRlZndz+QOqpvR/CMiMq9g+YPidefcp8r/QhlUZZ8Dmpxz\nNwDfBiJxkbeZNQH+jH0U9qC6B/gx0FRuug/4M+fczUDCzH6rZsXNwxm2aw3wwxn7LVRBVfYl4FB5\nbtXPAA8Skf21kGrVDbiJyWuyAIjgvIJXAUvM7Gkz+08zu6TWBc3DTcB/AzjnNgNX17acqlkJtJnZ\nE2b2i/K39zD7X+COGbevcs5NXZT/X8Bti19SVXxsu4DPmtmzZvb3ZtZWo7rm42fAd8u/JwAPWBOR\n/bVgFjSszGy9mW0zs7dm/LzqDN+GzjSvYMdC1lYtZ9pGYAT4vnPuU8BfAY/Utsp5SQMfzbjtmVkU\nznWOA3/jnLudyS9OPw3zdjnnHmfyQ2/KzF6L0LyfTneG7doM3FM+AtkJfK8Wdc2Hc27cOXei/CX9\nMeA7RGR/LaQFPWflnNvAZN/sXEaZ/FCckuLkuYRAO9M2mlkL5TeYc26TmQ3VorYqGWVyf0xJOOdK\ntSqmit5j8ls7zrkdZnYYGAT21LSq6pm5j0LzfjoH/+6cm/ry9Djwt7UsplJmdgHwb8CDzrl/MbO/\nnnF3lPZX1QTim6RzboxozSv4F8AfA5jZSuDD2pYzL5uA3wAoL665rbblVM164IcA5S8TKSaPiKNi\ni5mtLf/+GcL9fprpCTOb6oq+FXi9lsVUwsz6mTzV8S3n3E/KzW9EdH9VTc1GA57B14jOvII/AB4x\ns88yObrxy7UtZ14eBz5tZpvKt++sZTFV9A/AP5rZ80wehayPyBHjlG8CPzazBuAd4F9rXE+13AU8\naGY5YB/w1RrXU4lvA53Ad83sz5lcdumPgL+L4P6qGs0NKCIigReIbkAREZHZKKxERCTwFFYiIhJ4\nCisREQk8hZWIiASewkpERAJPYSUiIoH3/0T7DJQFkW0zAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x108909110>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.jointplot(x, y, kind='reg')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 2",
"language": "python",
"name": "python2"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.10"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment