Skip to content

Instantly share code, notes, and snippets.

@sordina
Last active August 18, 2016 08:57
Show Gist options
  • Save sordina/0bcf102b8f7def9c88a30642804af9f2 to your computer and use it in GitHub Desktop.
Save sordina/0bcf102b8f7def9c88a30642804af9f2 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import math\n",
"\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x116afbf50>"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nVAKRSCTSx/x/yhewk67O+sYAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x114686390>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"tau = 2 * math.pi\n",
"\n",
"# Circle distribution with uniform angle and uniform radius\n",
"m1 = 400\n",
"t1 = np.random.uniform(0,tau,m1)\n",
"r1 = np.random.uniform(0,1.1 ,m1)\n",
"x1 = np.cos(t1) * r1\n",
"y1 = np.sin(t1) * r1\n",
"\n",
"# Ring distribution with uniform angle and uniform offset\n",
"m2 = 500\n",
"d2 = 0.5\n",
"o2 = 1.5\n",
"t2 = np.random.uniform(0,tau,m2)\n",
"r2 = o2 + np.random.uniform(-d2/2, d2/2, m2)\n",
"x2 = np.cos(t2) * r2\n",
"y2 = np.sin(t2) * r2\n",
"\n",
"plt.scatter(x2,y2,c='orange', linewidths=0.0)\n",
"plt.scatter(x1,y1,c='blue', linewidths=0.0)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"\n",
"X = np.concatenate([ x1, x2 ])\n",
"Y = np.concatenate([ y1, y2 ])\n",
"Z = np.array([X,Y])\n",
"\n",
"X = Z.T\n",
"y = np.concatenate([np.zeros([m1]), np.ones([m2])])"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Training Step: 2700 | total loss: \u001b[1m\u001b[32m0.07067\u001b[0m\u001b[0m\n",
"\u001b[2K\r",
"| Optimizer | epoch: 030 | loss: 0.07067 - acc: 0.9939 -- iter: 900/900\n"
]
}
],
"source": [
"import tensorflow as tf\n",
"import tflearn\n",
"from tflearn.data_utils import to_categorical\n",
"\n",
"with tf.Graph().as_default():\n",
" net = tflearn.input_data([None, 2])\n",
" net = tflearn.fully_connected(net, 4, activation='tanh')\n",
" \n",
" net = tflearn.fully_connected(net, 2, activation='softmax')\n",
" gd = tf.train.GradientDescentOptimizer(learning_rate=0.3)\n",
" net = tflearn.regression(net, optimizer=gd, loss='categorical_crossentropy')\n",
" Y = to_categorical(y, 2)\n",
" \n",
" lm = tflearn.DNN(net)\n",
" lm.fit(X, Y, show_metric=True, batch_size=10, n_epoch=30, snapshot_epoch=False)"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x11a54a990>"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x11f8c3e10>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"xx, yy = np.meshgrid(np.arange(-2, 2, 0.01),\n",
" np.arange(-2, 2, 0.01))\n",
"Z = np.argmax(lm.predict(np.c_[xx.ravel(), yy.ravel()]), axis=1)\n",
"Z = Z.reshape(xx.shape)\n",
"\n",
"plt.contourf(xx, yy, Z)\n",
"plt.scatter(x2,y2,c='orange', linewidths=0.0)\n",
"plt.scatter(x1,y1,c='green', linewidths=0.0)"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Training Step: 1350 | total loss: \u001b[1m\u001b[32m0.24922\u001b[0m\u001b[0m\n",
"\u001b[2K\r",
"| Optimizer | epoch: 030 | loss: 0.24922 -- iter: 900/900\n"
]
}
],
"source": [
"import tensorflow as tf\n",
"import tflearn\n",
"from tflearn.data_utils import to_categorical\n",
"\n",
"with tf.Graph().as_default():\n",
" net = tflearn.input_data([None, 2])\n",
" net = tflearn.fully_connected(net, 4, activation='tanh')\n",
" net = tflearn.fully_connected(net, 2, activation='tanh')\n",
" net = tflearn.fully_connected(net, 1, activation='tanh')\n",
" \n",
" gd = tf.train.GradientDescentOptimizer(learning_rate=0.03)\n",
" net = tflearn.regression(net, optimizer=gd, loss='mean_square') # mean_square, binary_crossentropy\n",
"\n",
" lm = tflearn.DNN(net)\n",
" lm.fit(X, y[:,np.newaxis], show_metric=False, batch_size=20, n_epoch=30, snapshot_epoch=False)"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.collections.PathCollection at 0x12082f1d0>"
]
},
"execution_count": 38,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAW8AAAD7CAYAAAClvBX1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJztvX10FVWe9/vdlRcgkpAQ3iSgBHkxaPOiMy2gYtCWtnsG\nWgeHth+Da/q591lrnrGf7vs883QbUK/0tEToZ82s2zNtz9w1d6bvVWx1ELob7R4bWokIBMcWAcXw\nZgICEUwgIYFAXs7Z9486Vaf2rr2rdtWpc3JOzv6slUWqTlWdSoBv/c53/14IpRQajUajyS2Mob4B\njUaj0QRHi7dGo9HkIFq8NRqNJgfR4q3RaDQ5iBZvjUajyUG0eGs0Gk0OUpipNyKE6JxEjUajCQGl\nlPD7Mhp5U0pDfT3zzDOhz83HL/370r8z/fvKrq9Ufl8ytG2i0Wg0OYgWb41Go8lBckK8a2trh/oW\ncgr9+wqO/p0FQ/++gpGO3xfx8lSULkDIFAAvAJgIIA7gnymlfy84jqb6XhqNRpNvEEJABQuWUYj3\nJACTKKUHCCGjAXwA4BuU0iPccVq8NRqNJiAy8U7ZNqGUnqOUHkh8fxlAM4CqVK+r0Wg0GjmRet6E\nkGkA5gN4L8rrajQajYYlsiKdhGXyGoDvJSJwF+vWrbO/r62tVTbxya7U72+oWLZk21DfQkZ5HM8P\n9S1kjBUHtw/1LWSOvx3qG8gce16M/pp3BrCMGxsb0djY6Htcyp43ABBCCgG8AeDfKaU/kRwT2vPO\nZfEG8kvAtXgPU7R4p0QQ8eZJm+ed4F8BfCITbo1Go8kV7lw91HegRsriTQi5E8CjAO4lhHxICNlP\nCHkg9VsbPmzftWKobyFjPI/Hh/oWMsa2ecuG+hYyx18P9Q1oeKLINtlDKS2glM6nlC6glN5GKX0z\nipvTaDRZRB4JeC5E3zlRYanJLXT0rdGkHy3eGSKfrBPNMEZH31mDFm9NWtDRt0aTXrR4ZxAdfWs0\nuUU2R99avDNMPgm4jr6HKXlknWQzWrw1Go3Gg2yNvrV4a9KKjr6HKTr6HnK0eA8B+WSdpJ04xczD\nLfhy437MPNwC6LbDmSOPBDwbo28t3pq0k87oe2ZzK2oOnsCktg7UHDyBmZ+0pu29NJpsQov3EJHX\n0bdftBwgmq5o7/LczjR5ZZ0AOvoeQrR4DyH5KuB+0bJyNB2nMOJxZlfn+PJ03bYy2+YtAyiAdgCn\nEn9qN0cTMVq8NRnBaZ34Rcu+0XQiMl/6mz2YcO6ivfuLSWNxfE51RHecIh0AvgBwOfFnR8jr6IdA\nVpFN0bcWb01aMOIxPHJ4M37Y+CweObwZhMZtAeej46DbVmRe2tPL7I8bBkBcbY/VbZgIFz/PFY5j\nd/SKj/MlqodAOskj6ySbiGySjiYc23etGJbDGlY1b8W3D24CACxsex8A8Motfw4AdnRc0d6FzvHl\nrmjZ73WZry2zTCyxB4BJbab6Hb9leujjVOgcN8a+BgBglONFClOEewGUABgHQPDMAeAW/bAPAU1k\n3Lk6PQMbgqLFW5MWatqPMtsPHnkdAPCzOf8Vf0X+0VsUCfF8vXN8OSOMPWUlOFM92W2ZxClmNrei\n+sgpZrdM/KNd/JSpMZLRNGBG1AAwXnJsieMYa5snyMMgXfw18mraTjagbZMsYDguXDaPn81sV/Rd\nwrcPbsI3P9mS8rWPz6lG87wZODd5HJrnzcDOP7nTFHvOMrEi6ZF9A8x+WYTuZ9cEoaKDE/6rju+D\nRNPjAEwAMDrx5zjBMby1cgJD44/nkX2SDd63jryzhOFmn7w6ZyUAM+Ku6Ltk76/54gjGoIu1REQ+\ntRc+kbkFHzlfG1GE1ptvlC5q+tk1QeA/HTARs0o0bUEgj8otePHvRzKy9ztXk7No8dakBUoM2+O2\nvG8AKKKDkfnKfvAC2nrzjSnZNUFwPggmDXawEbP1vdPmSAX+YWCh/fG0MtTetxZvTVqxIvCa9qNo\nHj8bNe1HmNfTWVQTZSTtIuGnCz9BDMaxcNd+lHX2oLuiFNvu/QpWfPT75Lkq0XQQLPHvghl1W9DE\nVyb9b+19ZwxCM9QLghBCw74XWQLg2WjvJ1vJJevEiMewqnmrLcyvzlkJSryXUR45vJmJxJvnzUhb\n5J1OZh5usT9BAOzPsfDtP7jyzydUXnRdI3IozHzwK459E5B56yTPxFsl+r4zBZ0lhIBS6noE68hb\nwxBEkL3SAWXwkXjlnPMR3n0a4SJtaWZKnLpeK+vsASpTfH+VjBIi2BfGOkk1e0VH3xkhd8T7KeRF\n9D3UC5eqgmzEY7ivZSezj08PFOH0wgHgcTyfyu2mn4RoT2ltQ2m3qYST2jrwxaSxzGGd48uBOMXC\nxg9QFGNL9gmA5sIZqBk4Ed7CUE0vDLIYmup7aQAMnfetUwWzkKFKHQwiyKuat+KGnrPMPj49cDhg\nV3N2c9WchDDpisfnVGNmcytjl1iM6BtAzcETaC6aEf5G/NILrTL6KwCug3dqYarvpUIepQ0OFbkT\neQN5E32HJYwH7SSIIPOi/llZlW2JBOF5PJ7e6JtbPNxXextgqP9OpNWcEypcXr3f4mtFexdQofzW\nLH4RtTNaBlLzuqOI3vOMoYi+deSdpYSJvi3LY2Hb+54FMaK+I4BbkLtGlKGm/QhzjAUv6m9VLw30\noHDyPB5Pva+I5PyFu/ZjwrmLGNk3gAnnLmJh437xuR+1YOkbu7H09d2Y+fGn9vl8oU5PaYkdafP4\nFfV0ji8P3zLWr1gnyjJ6/r0qIW+O5dU4S0ffaSW3Im9AR98czmh7ck8b85qX5SHytZvHz7a3AaC8\nrxsL2/6AhW1/sI+x4Bcew0TdTlLtKyI7v6yzhzmuor3LFGZHYdDM5lbUfJTMHKk59Kmd8y1MN5QU\nFR2fU43K8xddmSZxw0g9VdEvvTDKaJl/r3bIPXDtj9tkOvrOPfHWAEiK9n0tO11Wh0XzuFnCc6w+\nIxaWyL86ZyXmnv8Yt5874LoW/yDgFx7D3r8l/pe+YKPWoPnfsuyP7opSjHSIaVEsjpmftOJ4TbWd\nPXLdZXeYal8vSOEOIdi39HbM/ESS/51Ooi78ceIV1ftF/DrzJG3kpm3y1FDfQGbwsk6s6Fkm3F7n\nOMvVgaQFQomBAaNIeG5RfMBls6QCb/EU0UHm9aB9RWR9SfbV3oa+YvZnqmjvYgY+8IuRYd7fJiH2\n/1F7m7DfCpCmaTtWtHxj4k8CuaURpEc4FbzOl/rLXstDMtnzREfeOYpKWl5NxzHPc/qNQnw04Vb8\nW81DdiTMWy+flVah/brxdjSums/tRLSQyt/LgFGIn8+rw9fa3wxlMUirKQ0Dl8aWMlaGEY+7IvWe\n0hJb8M5UX2+eL6ui9KqulMGds23u/VhxaEegnzEwMksjiNXRAbbo5zoEL/XX0XdayF3xzhPv28r7\nNuIxfPPwa7j31DsABdpL3P9Lzo6+HlWXP7e3+UVF3tMujg/i9nMHsKr5lwDYHiSflVXhreqleHXO\nSqx7p4G5jsqDw4nIY+fvpSg+iJr2o2lpVsV/TojD3ffkzPTJrvNnftIi9NHD+POicyKBL6ipBHAh\nsd3PHdvL/cnvF8G/xhcCRV3qPwzIlPedu+KdR2zftQL/Wrkaf/HRL+x9N/ScRVdxGcr7u+19p0ur\nsP2m+1yLiMnI9wg+mDQf0ztb2U5/AjFuGz3Zjq55oQ2az81fv6b9KNbds9b+vig+kPTZ24DKcxcx\n6uq1ZBQssR98saJdbtHSgFrfE5mPXvFFJ7v/i07gFu9b4a81paUN50rHJZtWRVW8cxlyMbbK571s\nEB5+IXQUTKslaPWljr4jJ7fFO0+ib0AssN0jSxnxbp5ws9DOcEa+APDBpPnMoqQlxjKBTjWzRCT+\nzgXPHzayf4kTzictDmfmR1Cc0a4Ta1ya3zX56NzywQ0ujZHfVrlWaU8vO8YtbPTKC/VVbrsApuBS\nuO0PAv/FTd4WoVCzXEQl9nlEJqLv3BbvYY5BY3iiZyMW9TehqHzA9fpb02oBQoSi6pVCOEBMf1l0\nnmhfqpklMvG3ffbLbV6nh+48GHRcGo8sOo9zRT78Nvti0uv+YtJYxAnBdVeusoukqeRk85GxASDm\n2C6AuYjJDhMyhftGhevztgh/Hdm9i3x1HX1HSu6L9zCOvuu7n8P6nqfNjXPABxPnYvzVCwAF3qqu\nxau3PCwsjDHiMTzb+DfClD9AHqGrCLTzoXBk3ExQENR0HPOs6JSJP/+JgF8ctQib+eEal1ZaYnrb\nqouhkuhcFpGL4KP/5nkz0IkK9hNBKhkaosi43fH6GMd7yPLArXMuOc6xMlZ4VPPJ9ezNtEffuS/e\nw5i6q5uY7fG9F/Bflv/M97xVzVulwv3BpPkpFdSIFh+d3weJ0HkrqK10MtbdsxbfPPwa7jvZiAra\nmcz8CEGQApuUrytB5Jv/xz0LXOeHzjzhI2OrfzdvV3hlhXSAFfx2wXWta1MAxYntMZDbITKR19F3\nZAwP8R7G0beTK1dHKx3nlQ0yYBSFLmP3u3bQLBSpF37rKrxy66rUe55EOBkn7HWFUXoU92V5ypaP\n7fSvRR60V1aIKCoW7eNFXtSC1ro3VZHXhCY3i3TyhE0lq13bKj1PvLJBUu38d6RyZmTXfnXOSvx8\nXh32Tf5j/HxenesTwfN4PNQ9ZhP8sGRZlB64cMfylK8kvqzhw2GyEEXWh2ifqhViiXx/4osX+Tzq\neZLOop3hEXkDwzL6fq50DSgIFvU3oal4ETaU1gOAK+eb97+ZBcJEibzTlw6LEY/hS+2HmX0fTJqH\nAaM41LVTXQjNCdIV/cuEU7Tfb7jCuMQxTs+bj5T9Ki297iEP/W4n6RLw3BmDpsIwEW9nlokl2k6r\n418rVzMLfQDw83l1kQshXxkJSvHtQy8xx+yb/Md4pja9/QqyfmBDhKw4uF3tQGezKCeiVrD8sWHa\nxfLXuA5mtorINlF9v3zyvl/QY9C8GSbR9xM9G9HQ/SQAYPm1NwAAz5WttV8fd9SdAhfUb1aBX5z8\nrLTKdUwuDmCIxSm27mnF0TNdmD2lHCvvqoaRieZRUeH0lCnM/8Ux7jXnjxNFJOxXaekknU2yNDba\n884wBo1hTXcDtnUsx5ruBqbJk/Xady//hDlnUX8Ts91UvMh1XZmIynp3q+B6IHD/Wc+Ovl7a7ztK\nova+t+5pxaa3T+D9Yx3Y9PYJbNndGun1047TUx6A+b/Y8pfb4fa9o2geFeQaoiZZIvLI+04Hwyvy\nBrI++vaKqp2vOeHF+sejv4/aaztxd2w3+gqL8ctZfyr1m0Wpff9W82dKE3f4bJC3b1yCL7U3Y3pn\nK3qLSlB1+XNUXf5c2O87mzl6pstz20mmo/Rt85b5Wyd8FHzN53VZJBxk0HC6ommdOhiaSMSbEPIv\nAP4UwHlK6dworjlc4aNo5zb/2jljAv5+9PfshUqLH1z+X1jW/3sAwKjYNcAwpOl/or4iq6A2ZJiv\njASldv4431Y2HbYNT1RCOntKOd4/1sFsy7CidAD2OX9+dxoWIB34CjifQz0SbOm7FRXz4nwDWHEO\n0l0wygZU/H1pQhFV5P1zAP8A4IWIrpcaWRx9NxUvsiNuAJgxeBxruhuwobTe9drfj/4e43Vb8CLv\nJZyiXGqRoIvgs0H4HiT8+6ST5/E4Juz560iEdOVdZrqe8yEgI0iUbhGLU7y2uxXvHDLL/mvnXo+H\n754eXcTOR8HOToLOqNhPnIcqK4S/L+uvsBxAF4AW7vjpHq/lMZGIN6V0NyFEpVNC5sgCARdljfx4\n9PdxT18jFvfvRSm9gprBo7ZVYkXYfGogDy/yXsIp6ivyzU+2hOoSyD8IPpg0HwNGUSRj0FR48ww7\nvVdFSEUYhCiLfpAo3WLrnlb8Ymey/P2lnZ+CBHhPwCf6FkXBoqiYF+Mrjv0lMBtWDcWgYf6+bkWy\nfe2ExJ+WSE8HMEvyWp4z/DzvLELkbwPAV/vcpdCL+ptAiSGMtHl4kd8/Z470WFEutUjQVSbPi85L\npVozKOVTZqPjWPLhoSKkqRIkSrcQPVTCPmhSgrdXADbiHQ9TEDOdFSK6Lyflku9F23lMRsV73bp1\n9ve1tbWora3N5NtnHC9/m0eUQSKDF/llZFug+6LEMBctYYr1Nz/ZwuRwy3zwoS6qqb7LfHhUnHlT\nWUhTJUiUbsFH69a+jMPbK6L2sUPxedmvmVYX9/0EyWvDlMbGRjQ2NvoeF1mRTsI2eV22YJmRIh0R\nQ2idrOluYLJH1patBwBmX3PhbLxY8pirECcoy5awAi6KpAml9j5mAALMjn7OeZiZKL4JS7YX7cQp\nxWvvtqIxAs9buWhHhSiKddKBcwFzP0xbxPK5DbCfCI4hN22TLC/S8Urbz0u8PGxZ9WRYrHFpFrLu\nf3xlpg33N5eLxTfZgkEIVi2ZjlVLUs9KUUodVCUTxTNB0g8tnB7+a2B9bh5tm9hElSr4CwC1ACoJ\nIZ8BeIZS+vMorp0yaV649Cpll3nYKr52mPd1oppRYuE12CHbeB6Pu6LvnK+azARB0/3CCHGQ9EMZ\nXgKdB7aJKlFlm/ynKK6Ti/iVssvw618S6n13rbWjb9ncSec+gB00HOXiI43H0LpnK7rOHEX5lNmo\nvmsliM/1g5zDC/hQ5GNnikij7yCEEWKV9EOvh8JfA/glWJ/beT+5aJmkifzINklj9B1kUdJJWNEH\nTOFf3cum1PPvKxs9dl/rTtzQnfS2nYOGo6R1z1aceNu0aKwMkel3e79PmHMsVPKxo4rOMx3lx+IU\nDUeBpovAorFA/SzAELxdjAIbj/kfp0zQPHDVzoN+DwVLoG8EMMKxfySA26DzvRPkh3inET7nWjVr\nJKzoA6bw1wyyNohV7LOfzgElhjQz5K3qpYzvnS5vu+vMUc/tKM5xRt98hsfAYBxxShlRjSo656/z\n8cmLKCo00ibkW/e0YlOz+f0b580/1wr+2jYeA55UOE4Z1ZFnQHIyPT/kWOSr+z0UnCXzTu97dOJL\n53sD0OKdMqqFNTxhRd96Lx6r2Od3W+/HmMquQLna6YDPyS6f4q8iYc6xWHlXNT4+eREHWszJ8wda\nLmLL7lZGnMNUS4rgz7PeM112Df9+TRfFx/H7ZccpE2SB0znVx0KWwqD6ULDEuTxxjHOQlF64zCPx\nTpN1olpYwxNW9AG38Dv5at8OoM30tuee/xhPLn2GEfAoc7W9PGorJ9v5mh9hzrEwCEFRIfug4kUv\nTLWkCFEet+w9nQS1W6zj2y6woemiseLjF41NRtxexykTZIFTZKmMgpmeyHvbKg8FK/oWVVoCeuES\n+STeQFoEPOzCY1jRB1jhL6Z9wopNALj93AF885MtaSus8fKoCTGU/WqLMOd4WSe8OIeplhThvE7/\nQAwHWzvt12ZVjZGdFti2cR4PAFWVJfirCb2oF6TRxSgQp8DsRHS6eiqEx6UNPpq+LvGnyNsO0+TK\nGYXznnee9j7JL/FOA2EWHlPNNHEKP6Fx1PdskAp5Kt3+/LI/wvjaQa6viiXgfuIcplpShPM6/7ar\nhRFvr1y6oLYN//rkyhLcuuouGILMk43HgKePsHeR0mJlUETR9GfcMUEbX/HtYkXCnMe9T/JPvCOO\nvsMsPEadXugU8n/veIAR8FQWJP2yP1LxqFWuH5SoxDkIx852eW47mVnFfjKYVSW2bWR2iZfNE7nf\nrYpX21k/bztMHjlPHvc+0ZN0UoRfaFRZeOQFfnXvC0qTaCzRX37tDTR0P4n6ng3M65QY+Nq4N7G2\nbD1eH/mnwonsQfCLrKctfhBjp89H0XVjMHb6fEy786FIrx+EoZo0zwvqwGAcz768H5vfbUGcawdB\nXHl04pJpyy45mxDvqsoS1N07w9Pm4f1tkd8do0DDUWB5k/lnPIrOGFban2h6/TiY0bCVIcJ7217n\nWvDTdqbDTBe0ntH8szKPvPD8i7wjJszCI7/gWDN4FPU9G3yjb5Uon/HSLwRvWuXEL7I+ufdXuNhi\n9ke52HIAJ/f80o6cVSyRMJF7VFZLVDitmoHBuGfmybGz7AALfttCZJc4ryMq2rH8bWeON0/kqYSA\nd9qfn7cdNI/cyyLRnneeEKF1EmbhcUNpPVb3vsDkaqvYLamkF4bBL/vDK3JWsUTCZJd4Xfen8b/E\nxD0/cGVzpLOoxmnVPPvyfuY1lWwX0b2pZMXwAm4QfyFOi7WSijWieu7DMBtWySySPBJsJ/kp3kMM\nJQZeLHmM6S6oIsTOKH9f0R0goNjWsdxz0ZNvWBUEv+wPr8hZxRIJk13idd2W3a9hx85kNgelFKuW\n3JSx0nmZ6FoCfeR0F+ZPH4vCAoKbp1Zg5V3V2LLbfW9RZcXwFZd3VEScSgj4p/15VVMGOXcW3LaK\nl0WSBxko+SveIaPvVDNFLDaU1oMgjrpeM4o04oNY270eC/v3Sa/rjPKd7WaDltdHhVfknOpipgyv\n635+6B3m2Nf3fYaH756eUnFOUng7MRijKCwwcPNUcfQuE10+5a/u3hn2w0N0b6oLr3z0bYn13otA\nfxw41QscSxTOvHEeeLYGWF/jba0EJqg10oVk9B303JGK95QnGSj5K95AKAHnM0Xu6WvE18a9GVjA\nKTFAYdjWybOXn7FfUxHjIFkuqUTfXnhFzqkU3HgR5LrdVwewZXdrSsU5vPACwB+Oi6N3meh6PTyi\nKhwCWE9bxL6LwOvpddrc8NZIP8wI2inaMmslyMQdr/3DNAMlv8U7BLxIfrVvh9Jio8q1VF8DMu9/\nByWMJZLqdSfPrcWJnS8x+46e6cLaRxbY34tsCC9PXBalB4nevQQ6VYvEGX37ediR2CRBGQcz2u53\n7OMjapm1wtsq4yGfuGMxHW7vfJhmoGjxDoioNN1PaGVWi1eZ+77ihZ7XDJrlkq7oO90EyS6pvvth\nXDx12M6AAUyh9LMhvDxxWSn8zKpybH63RWkR1Eugo8xN58vjLWaPBuqmmAHu8qaIOg6qQmBGvs4J\nPlYTqxIAlXCLqyXuvK1CAeyBvMpyMtj+J5cBtGFYWiaAFu/A1smG0nrc09fIFML4Rb2yohzRtWx8\nRsalUl6fSwQp5CHEwO11z6B19xZ0nTmKB6Z0hhoY7Ny2zuc9b0opNr39KQD/RdBMFQ9ZHrbleRcT\nYHGluX9DOtIEVXFG0BTJBlaXE9/3c8fLGlURAA+BrboE5JN3ejFshRvQ4h0YqxDGKklXiXpl/jQl\nBvrJCNEpWDjwXjQ37CAXo++ghTxOW+XPFWddetkaMuH1SwvMJJZ14pUuOGQVmAAbQZ/iXrvGbRcj\n+Hg2mac9TO0SCy3eQODoWxb1qtojzkhdZp2kxcOmMbS8uzlrClxUCJq14rRZNicib7+cblXf2emN\nDwyyFbF+C41BslbSAW+p9MXNCsuMWCfOBUn+A6UBIObYLod/iTzf84SfMD/M7RILLd4WERTueNkj\nhMZRd9X8+E9AQWgclBhJ77pvL4rRj35SjKbixYFaxCpzaiNOtEbXS8RJ0MpH1eODZq04bZZNx8x9\nfpaFqq3BZ57Mnz6WGcIQ5FxAnrUSBr9RafWzgMYOYEdiwW9Hu2mlZMQ6cS5IAmbHQQLWQgGAIpge\neBCsfO4OAHEM67xuHi3eEeJlj1CSTAtc3/0UKAieK1ubWe+6m70/1V4iKkIbtMmU6vFBs1b4nylK\nO4O/VlGhgae+dVuoc/32h8FLwA0CjOCejRmzTvjsEgJzxBlvoQwAuADv3G9n1eVJsBbLMeSNcAO6\nMVWkeDWpSmXsWWBoDDjZABxabv5pNb0qY+9PtXDGEtqOY+/jxNub0Lp7i+uYoN500ONp3LR89r/8\nLFre3QwqaeTF/0ydUx5ALE6x+d0WYcMo/rWBWFx6LG+NBMnJlh2bSl53UFSaV6UFfgGyRLIf8O9v\n4mxmxXvjYX+VfLOrHEFH3k4UrROZt+2VvpfRvOxTG4HWROn9hcR7TlsL3Ji4n+4mzJhXrlw4oyK0\nQb3poMerRuqMzVI1E5RS1P3sE/ReMIcuv3+sAx+1XsCt0ypx7Ky7mZRzlBqfRZJKTrYsayVs6XsY\nVJpXAWkYZCwrgx8H0zZxWideczKta8gI8yEmh6sxtXiHQOZte1kgqYw9Cwxnj9jbxDBFHMAJCkwn\n2yLr/hfUmw56PP/A6Dx9RLj46rRZWt7djE/f3uS61sHWTm6AQpLW8z3MttPWSCXlT3ZuLE6xebda\nvrgKftaJiscdefdBWRm8ZZ/w1ZVe8FWXqXrdOVyNqcWbRyH65i2P717+CQB49jlR8baj6puCskXJ\niNvalhCm+9+0xQ+6hNMvL50nqJfNP0BobND3vsP0B6+eWGpH3oB4Cj0QfB6ljLBNs9LZKTGjaYVB\nR6LxUfwcAH+XwvvzmSo5lF6Y1+JtkBiemL8RiyY2oen8Imz4sB4Uhq+A8xbIpPgXdiQuE2gVYQ47\nYceFwx5B2aLkNsf2XSsw7iz7g6p0/2t5d7NLOAFEMhVH9kmAf4B0nT7CnNd2cCemLX4QJ/f+yj5m\nTNUs5v5klJUUYfaUMZg9pRwP3TkNP3ppv3AKPZ8qGGZqPC+6R06znwBUFzC9RN8v88SPyAcZR0mY\n+Zde5HA/8LwW7yfmb0TDHQmxnJYQyw/9xdKyPL53+SeYGE/mQC3q3yt/L06Ya/t24p3ie7Bw4D1b\nzCNb1HTYI374WSIiMVXxwNsO7lTOI3e+R3xwwC5vdz4ERA+QjuN/sLd7L5zF/l88y5w7Y+mjmHFv\nHbrOHMWYqllYiPdw7GwX+gfiONiaDCeX33EjVi1JCq9sCr0o3Y8/xg9edOdPZ5VRdQHTr1NiKgLO\ne+Pfn2lO3onMAw9KFOPSnPDtYnNIsJ3ktXgvmtgk3/aIvi0LhC9tHxHvw5ruBmF0zQvxsr7fY1nf\n7wEko+yhaDbl5z2LbBWZ4Dv39V44i9bdW5Sib+d78Misj2mLH8Sppm0YuNpt7+s538qee/YYbvvW\nU/Z2O1bhKTyPOKXYsrtVuvAoq7j0EmivqfGAGXG/trsFW3az91hYYKDu3hmBF0Gj7EbIw3vjDUcj\n9MDDCDEiSN11AAAgAElEQVTfuOoKkl0Hx8FdtONFDi9Q8uS1eDedX2RH3NZ2EPpRzGxPjX0mtT28\nmlABprh/o/LX9vdpX9RMsOPdB7FsiTw6FkXZCx5Za3/vFPy2gzvtrA7RuRZ8NN/JWSBOZFkoJ/f+\nihFuABi8yvYPFZ37PB7H4+R5T4tDllUia1JlklQgkR+9dU8rfrHzU9dZN08tD7UIGtXABhUi9cC9\nhjPI4DNMnL1RrPNVBdxvgTKHhjjktXhv+DCRAeLwvIPQNGIxlvf9JrmDWzByRtueTahgivtQNZvy\n6nkiirJli42T5y1lImiZ8PLR/Njp85nXx06fD6OwyDMLRfRgoHGzzrqksgqT5y2Vnuu32CfLDHEK\nZtuFXntAMMBOjRf50aKovaqyJLToqmS+qFgnKmmBkXrgIiG+ArPHyUiY0+f5WMKrr/eFxJ+q/VC8\nFihzLCrPa/GmMLw9bp+FSz79j4BifXfyY3pT8SJmoXLXiHuwq3gJFg68Z7Z8pZTxvCOFxsx8b+ei\nZYjMlSApfarH8sJrFBTa3rRqzxX+oeKkpHKyp10TNsPDKZib321h/G+nbSHyo0VR+9J5kwNniESd\nZaKSFuj0wO+oSLG1rGg4w0Di+ysAPgMwjTtH1pUQMPuiWJF8EPtERI6lDea1eCuh4H1bEBoHBWFs\nj/qeDYyVsrZsPVaMez399y0r1JEgi76DpPSpHuuK5qferHSe024ZUzULNy39T/jsvTcw0MvaJ+VV\nMz0bcL15poI53m+xUSSYXraFyI9eeVc1KKVoPPQ5AKB27mSsvKs6sBgHffD4Rd8qlojTA0/Z/+ZT\n/S5wr/NdBgE2w8TyzC+AbWjlV5lp4SXQOZY2qMU7IF4pf04xN2gM9T0b7Bxwi7SWxTuRFepkAWFH\npPF2y4x761D7P/8/tLz7Gj4/1AjAnKZDAbs4R5S2yD88RIt9KmmBMtEUCbtBCFYtuQmrltzEHLt5\nd0sgMVadx+m8/48L5BEyP5T4DsdzTWSppOx/86l+fIWl35xK5/nOZld+lZmA/5SdHEsb1OKdQJrz\nDTDRt2outvM4JzMGj2NNd0P4AhxVAhTqWKTS7ztIV0GVCJ3GY2jZ/Zo9VHjy3Fp0ChZPCTFw05JV\nuGnJKnv//pfZj0p8Nea0Ox8CAFSceVO62JdKWmCQSkwVMQ7TipaJ0BP7+Ag5RoF3uMjXGfSLLJXI\nc8BvgGmVOD1vFWQl9zLrhB/YIGsbm+WC7USLdwLVnG/VXGx+fw+5DqX0CmoGj/oW9ESCYqFOVATt\nKuhEJPyte7bi052/sI85sfMl18KmLCe990Ibu19Sjfk4E7qxeAn0wGAcz768PyXP2RLktgvs532R\nGIdpRcvfvyhC3ngM+H07u2+f4zhRlP3rhcnvI5lAb8DtcavgVawjEnD+11okOC+HMk0ALd42njnf\nDlRzsfnjzhRMsVvCAhmwTwIU6jgXN7efXIT7V88J3Is7aJdAJyLhF53vXNgcUzUToBT7X36WEXxn\ntouVdcJXY3YlIvH/7UwnllVdBAHBsbNdmFlVDgKKY2cvuSJcSzDDVlby8IJcVVmCpfMmC8U4TCta\n3ncvv2UGAPaThEjQnZG0KMpW7Y+SMbzyxp1izPvZI5CMxFuQc5kmgBZvG9+c74R1otpgypWJQuNY\n3/N08vpcJkpKvUyCIMpC4RY3W3fXBe7FHbRLoBOR8IuySZwLm6ISff46VtYJX4156cwxe/sXx5LH\n89kgfIRrEBJo/FmQqfSTK0ukDwGvghzZewgXVA+x4s2L8/3j2UhatQvhkCLLG3/MsX8CzF7fx2A2\nwnJOHizn/uT3ZzFavBOIcr5dPvhT9aDPquViCzNRiOGZiQKk2UoBxFko3GLmiYNdmH63/BJBCndU\nGFM1kxHqMVWzUH3XSlBKmYVI65o0HkPbwZ2ue5A9QPgiIr64R0bLuW5UTyzDzoNt2HmwDbVzr8es\nqjHKlY1BptJ7Xccrs0X2HiLfnc88EYmzc1FTNcqOpIWsaFTadfCvwOSzTHol+8sBWM9d50OoC/4L\nmVmKFu8Eopzv+vkNbh8c4cRVVICT0QENFqIslICLm0EKd3iEC5vc/04C2AuR0xN2SNeZo2jdvcW2\nR5yVnNY9yLJYrHvrOnPUdZ4X3b2DTA+Ul3Z+im/V3oT508ei9XwPqieW4qE7p0mjX5Wp9CoVkl4L\noKrZJ+LrRmOBRNJClh+VBiSzULwqMPm88RLJfuvXwmeUAGoLmVmIFm8PeN979awX7Og7ClLuZRKm\nEEck1NZi5qW9AO0Huvdi+wuQet9hU/0Aib999hhzjHNbxQ8vqayys1u8HiBehT0jigw8uHga3jnY\nhnNdomRjk9+89xm6r5pVJQdaLuK7P9uL8WNGCn3wIFPprb7efgOK+QfFrKpgPU5S7TgoIpLyeVme\ntl/+diXYCk1rBqaVffIx3AuQzu/5pYNe5IRwA1q8PeF98JqKo6hfsCFw9B1m8o4SAQtxACSEOg6c\nSyzsWePEpq01R6bZ1/uN1PsO2ovbiYq/7fTL+b4nZw+8DcJldwz09mDP89/B9XNrUX3nQ0xb2Oq7\nVoLGBrH/5fXoOd+KURXXY6DvCga5wp6+gThe29WCmE9bcku47fvhyuSBZPQbJLpWHVDM2ySPLr0J\ndffOwJHTXRiMxXHkdCc2v9uSlqn0MnskkvRBWQk8hTnrUtbE6gKSEfoVJGdgWtkoS+HOPPFayMwB\nu8RCizeH0+fed34hmjtnoaYiGQnKslC8CDN5R4kwhTjEAGAAVxMievLpZGZKQO9bhFe+N43HEB9k\nxc/L7gDMND8nVy8m0wCLSsow0NuNgavm16c7X0LbgbdwtfMcADNSv9D6EQiAi60HAQADVy5hVMX1\nLvEG4CvcqljRbyr53rL9/Paxs5ew5psL8DcvfWBH/384biZvy947bPQts0ciWdjkS+AtRE2onMg8\nbxl8Vom1kJlDKYIWWrw5+Hzv7ae/woj3iIJrIE/FQX5ElTNF0uZt8xZIvM8cOuxnochEX8H79ivG\n8cr3bt2z1e63DZgNqER2h1mgYxbVXO2S52LHBvpd+yzhtuhsPQijiC3bG+zvhVE0EvEBuT0CAGWj\nilBaUuSKrEWMKDRACOyBDkGRdSwUDT3mbZKte1qZ6T9A8Kn0KouOMnskZe9clu7HT5cX/TXIPG8n\nzrxvUVbJfuQkkYg3IeQBAP8XzJT7f6GUboziukMBH1nfMPo0s71s6u9Rv2AD0APlTJF9RXcw3va+\nojuiuVlnIU68D+hMdCz0s1BkIi0o7Nm+y2CqLv2KcbzyvV0NqQqLQIiB+GC/bWuUTqxG+Q1z0NL4\nC/jhJ7423Ii2wuJRiPXLzx1RSFBzQwWefvQ2/HLPSWmlpZO+RF74wdaL+OWek4Fzv1feVc0MPwbM\nVEXeahFZMQ2vfOi6XlDvW2XRMW0TdmTpfrwwjwLQDlbkZZWWTiiSVgkfz+SQTcKTsngTM+z6KYD7\nYK7Tvk8I+TWlVN6kOYvhfW7RJ+lFE5uAQ2Aqwzyjad57jMqLdBbiHFrOvuZlociqLxUKe2TiLKtu\ndPrXMm97/8vr7Yj8YssB9Hwu/+xKjAK79SsAjKqswmBvj2f6X3ywD4UjS0EKDBQUjXJF5zwDMYpY\nnGLLuy04dvYS5k8fi5bPe1x+t4wjp4MrAqVA+yX2gVJUaLh8a5EVw0fjItH3Q2XRMW153zLrgxdm\nCrHI+/UD7wCbUZLq0OIsIYrI+8sAjlNKTwEAIeQVAN8AkJPized7E8Sx/o6nmWNmjDmOzy6zTRi8\nMkV4YV+YjpTAIOl+QaovwfY84QV4TKKDHz+IYVRlFUaNGW9XM1bftVLqbfMTcGKDbjvEwincAFCV\n6NvdunuLOUZtoN/2t50MXuvB9Npv4fR7v3G9xhOnwEcnO/HRyeR8ybnTykGIgaNnunBtIO5xNjAY\n835dxNY9rS57pn8ghr/66bvo6TV9/9GjCrF03mQ8nMjjtpA1wvLDGX37RdWR5HLLkFkffAm8io0i\ngj+uNHGtHBZuIBrxrgLg9BbOwBT0nITP9yYw/yPWzdqEypEXMGFUB2oqjqKm4ii+uDoOF0orsalk\ntWemSBFlxaiYysUpNM5ouvQOAFTN/1bE9rpPH8HY6fNBCgpRMfVmgFLhCDMCJOdJHv8DLp78GLfX\nPSPMUimdWM144eVTZgHEQM/5VoyeMA1jp92CS2ePo/dCG/OAEKUI8k2pnJzcvRXxwb5QP/+hk12o\nu3cG1q2+Hc+88D4OnUxG19cVG7jSnxTswoLgqsZ71GWjinCwlR1O3H11AC/t/BSEi76DLIzyWALu\nF1VHksstQ8X6ANT8bZXz+NL4HCWjC5br1q2zv6+trUVtbW0m3z4UFAYaPnwKDR8+hW0PLGcslQmj\nOjBh0Py46lXWzo9L47dTu0Eu1/tLvwZObWBTCGncFO/uJqDsDvPjZ897gYR9x6ZmoDUp0hXV8wBK\nceo/5KPdnFxsOSCdaXnbo09j/0s/SnreU29GyzuvADAXHCun3YrbvvUUUxIPmJN7+Dx0r1zusMJt\ncfRMFwxCcKGHffgWFBQASIr3zVMrEBTe+igtKZLaNEEXI1XwW3SMdBQaj+pEeFWRl53H9wAvB+uF\nZ4mV0tjYiMbGRt/johDvs2AbOU5J7HPhFO9chPfDLep6X0RDmbv9q30eNy6tacTi6G5Kodwd5zcl\nUwOd1opqbrjgmp2tB9EpsCesZlCUUny68yXmNVmzKsMoxB+t/qG9vfunf8W83naoEdOXrFIqDnIe\nI7NQVCkqIBhw5A/2D8QRp+J8wqpKMwysnXu9y29WGbjAWx+UUrwkmHkJRDtsWJW0LVZ6IcpCGe/Y\n/xnk+d8iCsCKtwHWCweyoikVH9j+8Ic/FB4XhXi/D2AGIeRGAJ8DeATAtyK4btZh+eFrFjSgtPiK\nz9GO81ItxvFCpdzdi3MvqFVo+lzTKBqJ6Xc/bNsYlMbReeowZ4eE+5w90NvDdA/06njotFAojdte\n+KXTR5V7mliMLCrAgCPP/GDrRWzZ3YrauZPx0s5kBkr31QE7SiaEuISZL6z5+ORFFBYQVyWl0/qw\nHhKNh9pcnrfXYqToQUEpPB8eKnnfQ9KkSpaF0p74svZTsIU2XtexzrkGefOpyRjy6FuFlMWbUhoj\nhHwHwHYkUwWbU76zDOA5gEGA5Yfzi5inW6diW+Fyab43X4xj0Bjquxui6SaoUu5+7TP5+VePml9+\nUfiN9UBXYzIdkWNkWSVjiRBi4Pa6Z2zxlEXKTi89HhsEKSjEiLJxjLc9cLUbHcfe9+0TzuegT1v8\noP3a6EnVwk8KMApQWFyC+GBfooAoGVmXXVeMnmtskdC2fSdRPbHMjrS7r/Qzxxw90+USUD77hM/J\nFlVSyibviPCb+gMg1MxOJ0PSClaWhXKJ238JZuQtagsrus5YmLMzZYyGaadkuYBH4nlTSt8EkE1d\nfpVQHcBgYYn9won78LvT96M/Vozign58deoO4Jp6Z0DVaTxK3FhvetrnLS84IT58uTsAjJoNTFpt\n5qX1vAf0Hk/aKYA4Cnd66uX3AGOWYFzxNsQG+hkxvH5urevWZGX0TpGNDw4w0bmFNUGeX6SUWS80\nHsMHL/1NcpH02Pu4ePJjV1HQtUvtzPXGTvuSPal+2p0P4eSeX5oPksEBnD/n/t/LN6vimTF5DB7/\n6W583nkVgCmW86f7ewyp+NhBp/6I9qWj50nKqC5QOocQiyoxvabPy9AtYbMb1QEMFk6xB4C17613\nX0MhDTDSiktimF+WCLc+BYAIy91RMhOY5hBzXtxFUTjvqVevx23feoqxJFJpTiXDKCzCbd96Cp/u\nepWZqDOmSvx5na/eBNwpiEZhEe58/Kf2fQ/2XWPEPh6LYUbtI66FUQAoNAgG497181WVJfjk1EVb\nuO1zCwjq7p3hioydWD42H7U/uHgafrX3pNDysI59/T0+h859XZXmVTIBT2uaoBeyBcoxSNomgPl5\n3+lld8G7kIdy51s2yjjuGllOXou37wAGDpHYu66h0Bkw5W6CPC7fe68pzL3H2f187rczvZCPwq1r\nCkvpb420OZUIyx8XtYtVvaY7BZFtXfv79auY41vf/Td0f37CVWgEABMrRvmWyS+dN1kopLOnlNs2\nRZxSbNndynQPnJVYoHz25f0u28NZdclbHrKIWzYmTaVBloi0pgl6IctCsRpPycS4P/ElK+ShifP5\njoN6DFruYC1ALp60F0VGPxZN3Is1Cxps75v3xPedX+gSe9cQhz9zL0byXQU3jv6BeU5UC5iuHif9\nArvkMfccS2exDh+F9x4395UtdHnqqQwqBtzpfGOnz4dRUGh73hVTb05mjXDtYtsONaL67od9UwRH\nVVwPGAX2tcsd17SIx9hUPBqPSdMM7/nSJBiGgZ0Hz+LshWRkPa96LIqLkkLJl7ibJB85zpxsK3Le\nebBN+mBoPd/DbDstD97+GHNdEZbfcaMwmyVsHjiQ5jRBC69xZjy8qFti3IukcFuIfq2yjoM5INhO\n8lq8rQXINQucQxfMlL6NB57Ab7/+NdPPhumJP/nej2yrxLnAufHAE7bI1/dscC1ARupxi+DL3S/t\nZV8vmanYKham723ZJ61PAtN+BFSvd5XSpyLgopQ/WQYJL8q9F84K88WnLX4QF09+jJ7zrSgsLsHV\nzs9xtfNzAMCMe8WtbUeVT5CWyheNKmOyUwgx8Od3T8fKu6qxZbc8c+PpR2/Dt//2HXT3Jh8Mx86K\nP4N7edUW1RNLmYeB0/Lgc8OX33FjSiINiK2TjKQJyjJLVCAwxb4D7oVI1UKeHCSvxdtCNHRh9awX\nUFPBfhRfOPE9rHjzddf5zMJnt1uc0z4xhy93P9kAXHSUgftMxmGu0d3E2ic97wFzEz8zjZkFQAkh\np3d7DyoG5F0IVS2X6rtW4uyBt5lWsHyPbwA4ufdXtkUycIVNR5DZNIsf/wfsff67uNbdjoKiURi8\nloxyi0pKGfG2BNivmrHQMLBi4Y2MKMs8ZtkipdP2eOjOafjlnpNCyyNIv3A/nF77xwWsr52RNMGg\nrV15+HTAYpgWCF/Iw0f4/wPA3yHnLBNAizcA8dAF2XEiXF74oSbgLsd5UXvcfsgaT6kgajNrVWhy\ni5c7XlyPZY/d6nk5vy6EInjBHzVmPCPefI9vwNtHl+WXFxQU4+7v/pN5TW4Bli8y6pzyANxzulgs\nATxyuhPzp49lcrhF8JGzc4K8M5p32ix81J9qpG3B5KIDaOwA3lxsCnhG0gSDlL6LLBZe7IshjtxF\nEX4OTo4HtHgDYJtRzRhzXCjevzt9v30cj9/CZ1qLdEQEbDzFwOdzd+4wo21R9kpi8dILrxaxMnjB\nL6mczLxuGAZa3t3MRPNCHz2RAqiSCePqKU7jIIRw2TT/6HkN3gapu3eGp7gGaSgVi1Nm4ELYfG0Z\n/KeAHe3AhmMZzO0OUvouEmBV8RdF+JO5fTmQJgho8QbANqNy+t8A0Nw5Gy8eewwbPqwHIRT18xtc\nnrdo8jw+BJDokZTyxJxMQgzAGMHu8xjWwHvffNRcXjVLOuJMBi/w/b3sot3lC23oOGF20Leu7eWj\nO4c7qFRpAuIc9efxOB7H8wDElYxBhwEHaSgVxcAFL0TDINKyMOnEGUGPSmxbC44UyawS/lje1+5F\nskFH0OZWFGZRjpNoRtSmHS3eHCIhtjJP+AVMwCzqEU2edyKbYZm1yKwTBTuGj5pvWvooZtxb58oH\nl3nholFpfFP1vh5WVTpPH8F0Dx89jHUjwxJwvuQdEE+5iQqRUEd5fVGmTF8cWN6UxtxuUQRt0Q42\nq0Q0Xd6iBPK0Qh4+whd1uQje0XdI0OLNIRPiJ+ZvtIXbQnWeZdqzTaLGyzqZtjZZdfnRN8zom9Zj\n2T3mzyWySSqm3mxv03gMrXu3MP2/nYLKF9sUlZS5xJsQwuwSeeD8PXhth4EX021NpzCzqkzJ6w5D\nFAMXAHmTLIMQPFN3u+2pDwzGsSMh5GnJ7abwL4TplXwPmJ52MYJ1FwTEIs8LeA4U6ABavJURCbVf\nUQ+eAvBsBrJN/ODbxvq1gfWyTgBxJ8OE9817zzQ2yES9fMm6hSWovLAOCAYFjyyrZAppjALvf8Ze\n0+nDwotp99UBfHDCHPzr53XL8Oo+GHbgAo/oE4N1r04b59mX2cGOkVsoorQ+nhLue2d0Xg71VEKv\nHPJxidetBKWPkROLlYAWb2X4RUmvBUzA0fSqownFlO0jnfZsEx5ebDt3AhW1QPc+uZh7TeYRLFxu\n37UWy5Zsc3nPXVxaH1+ybhEfHAClcWk/7pLKKpRUThZmgpQ7InsRIj9cZNuAUs/hyhbP43H817t+\nKi2uCeJFezWV+qj1Ijq6zdFotXOvd03QCYOqL88/nCK3UPhfWxHMsnfrWT0GbEQdtpc34J1DTmBm\nmFhZJuFrzzKOFm9FZF44jyXadp54Yizh9hFfwdSYOXCI0DgIjUfre3tF17zYdv3e/ALk3QS9/G0P\nYecX+lre3YyO43+wt/mSdQtrWEP1XStdI9UAc/CCdd14bACdpw7bwxum3fmQ7LcivCcAaNm92eWD\nA1D2xg1CsHTeZGGRTRAv2qtQx9kASzRBJwyqvrwz0i/v7MCORPl5ZBYKH0lXwBTUiZLjVT1tJ1bE\nfYHbHzSHPEvR4g211rB+i5IWfPMqi6mx06gZNC2B9T1PY0n/LvSTEdEtYPLRdVejaX2ULXKXuPOI\nhhV7pRtKhF1UdclHvXbnvjNHhR0DCTEwed5SpjHU2OnzmXQ/Z0HOxZYDOLnnl4EXIFV88LaDO6VR\nuBV9A2D6lAT1uoNE6alml8TiFJRSx+AIeW9wl4XSnhT8SCwUWSQdpEzeD9kip1cO+V+DLZnPYrR4\nI3hrWC9ki5iVcfbx/9W+RNZKVAuYvABbi40X3jBL3Cvul/biVqrAdBIgj1wU9VrbfPc+y4v2K5+P\nYgFS5oPzpfi9F86i49j7uND6Ef5o9TrmPlKZHWnBR8Jlo4pQWlKEcWUjXa1n+ShZZUKPk617Wpnp\nPIRAyYbh7zGS8nhZJJ1KmTwPH2EXAKiEv+WSIwKuxRvBW8MmI/W9KC7oR3+sGE3nF2PDh/XSUWkT\n4h2CKyXeL4oFTK9JNz3vAfPeTJa2l95h/s91et5RQGPY/sLHGFf0K6V8aldUvvhBpvhmwSNrheen\nugBJ4zFQSlFSWQUAmDy3FtMWP4jWPb+09w309jDl8Z2tB109VZ7H4/jL+E8DCSiPFfla/rk1lad2\n7vW4ddpYNB4yF2ZF49W8Fh9FqPjdogeC9b5dh0+kf4qOrEyezwkHgKvwjs55a6YS4R8EWYgWb7gX\nI4sL+kAQl07VEVkjVkMrr2rN5sLZOFE4E8W0z468gYgWMJ1WRryPjbLLFrmjZadHfmqDfwaKSsZK\nwrrpgFo+tcgfV/GcvWZZxgf7sf/l9bYfftujT8Mw2H/mrXu2svM1CcHJvb9i9hWVlLne99R7Zo+X\naYsfxMm9v0LXmaP43wcHcLEl/JQaK3o/eqaLWfw8dvYSnvrWbVi1JDUxdqLid8seCH92ZzWaPz+B\npotm5WXoRUs/W0RWKSnLCb8MM7XP6mPivFYqi5w5EH1r8YYpuPdMbrTzuL86dQfqF2yQWieyyHzR\nxCamy+CMMWw/7RdLHsNzZWtBaBz1PRuiLZd3ijONMw2khJG1KN3PywpROZ6zboLaGS475PQRVxk8\nIYZnY6v9L69n/PA9P/0O7vpvPwtsu4jmDA9cuYQTb2+SpjsC4jFoKtG4n7CKrhm0KEilkZXsgbB1\nTys2RdHT288WkQmu1yJjv+OazmuFWeTMIbR4w1yM7I+xec0igbbsEl6ULay8bz4yd5bY49kMlMur\neNLCPiUpHs9ZN0HtDN4OiXM54oB/ZSSfini183N8sOmHuL3uGVvA3W1m2zByDPu/fPBqN8ZWz8O1\n7g5c6+5AfCCZ7ilLdwRMAQ1qZwD+wiq6ZtCugioeveyBwIt66EVLv+6BMsFVGWXWBe8FzigXQ7MA\nLd4JVKbquEV5Fj67fCPjeQNu4T9xaWboBdC04ZXHDbhtktI75N0GLbgslOq75gS6Jd4O4Vu/qkTy\nolREKw3REn7rfayUROurqKSMKQoyiopx13d+5lpY5d9j7PT5uKnwjC2gDa98yLy/SpaIn7CKIuIo\nFkx5rAeAlUFz5HQXNr/bgllVES1aBuke6GQcTHH2KuzphynOsmg76GJollsnWrwTCJtLcbhFeZaw\nv7fngyBRdTnk+PUpcc2ufJbNWHGWzFtwET8hwSoeRB74BUeOuEokf9ujT2PPT79jD2KwcAq/9T5m\numIyVbFoVCkj3rLsF2e6o2XnfIckOw6mo8dJOvumOLEeCJvfbbEj/T8c78CjS2+y53DOnlKO+lLv\nIRJCaOKrOLHNF+J4QWD62t5dec2omo+wKxPbfM4AP+tSFIVnsYBr8U6gksetOvOSfxD8+MD3sWaB\noxshzYLGVH7Wissm2eddMp8GvBYmZRhGIe76bz/DB5t+6JpfycPbJ9fPrRW0gfVOd7RwdhyMckiC\nRTqu6QUf6VsLqBbGwRDi3QF21iRBMNvCEvorMKPsAcExJXBH2FcgbkAlmnWZQ2jxduBXrKMSnQPu\nBwE7Zu0NYCvw3Moss1EsLLtENryYt1o8slBSnXUZdsgxIQZur3vGd7p9kHFsQUiHnSFaQE0naYn0\nRX53mNmV4x3nXXG8Zp3Pz4C+JrmW83fqtSCapdG3Fm8HfsU6qlWWPEHzyIcUp10CCIYXx4FzCf/X\nymppfcrcVslayRAqwh/24SDDGX1HjcoiaJgsFxl+kb5o1qUUS2h5v7ofptBaAhwkAnYKuR8GgBi3\nj28Hm4OzLrV4OxDNspT1MPHDGcUXF3CNqc4vCuR9Z7QfOG+FuIYXG8kZlyefNsXd4/xUo29Z3+/h\nhI1Uf8kAAB4fSURBVIroquR0q2a5qLxfpJ8e+DL1Aphiyk96B6LpO8I/r6x5llbnQMtrv4BwOeBZ\nghZvB6JZll753l7Uz38O6+942t7+3emvoD820tNukZHRfuB+WSh+Preg1N4ScEuIO08fAY0Nwigo\nRPnUm4WCbB0r6/udrfhF3yLh5EX345MX8Uzd7YygqtgYqkU7YVIZRbiib5kFEkSQg86uVKmsvA5m\nhD7BcY3TieNukFyDJwutEy3eDjZ8WO+aGh/W4qibtYnZvmH0acx5lZt6rhh98+Xzq3tfSF8U7peF\nwov7xDrT41YYduycaGNhdRzkBVl0LOBOFxzqyFzYWtZDDETCyYvsgZaL2LK7lRFUlQVLVZ86aGWm\nMrJUPF5MR4K1LK4D61kHvT6PV2VllL1Thhgt3g4oDLx47DEml9tv4IJKR0IAqBx5wbPk3gt++nzN\n4FHUDB7F8mtvYHXvC3ix5LFoRFylBF4k7orvK8vTFu2XHWtljYSJzNMh9KIRa8/fLY++RcIpmh/J\nH6diY6hmpES5GMlE37ICHF5MK+G2LFSiX78CHwuvykrVa4jIsuhbizeHX0aJU6z3fXEH7rn+HSyb\navbGtiyXjQeewOnLU5kIfsKoDrEFoxB9O6fPzxg8breWBUwhtyyVlK0UlRL4kJPpt+9agRlTNgsH\nLaik8ZVUVmHyvKV2hohqZO5EdZZlEJEP2uFQJJyi+ZFhBFXVp05b2qGsAEckpmGiXdHwYIpg6YZh\ni4QsskjAtXhz+GWUiDJSnCya2IQn5m+0BZ1/LdQ9Ocrp13Q32GLNXDuKzoRBS+YDYgmvyPOWHava\nFtbCq5BHVWj9RN4p7vywZOv9Zd63bJyZc35kuvO405HKCMCMqK/ATM0bmdj2Q8XHdqYFFiGZ330F\n3hWVIlJpVpVlaPEOiJ8AN51fJD1mxpjjWLOgwW2tSKJvPsvkx6O/D0LjaC6cjcr4BabNbCSdCf0W\nK1Nkx7sPYtkSNZvCL43PLzJXOUcm9H4iz0f9Y6fPh1FYxOST03gMm/e0CAf9ioQzbYKaAWzr5AKS\nXvYVmNt+wqriQXtNjhfZHl4PhCiaVWVJ9K3F2wfe0953fqEw4gaAL66Ow4YP61G/YANzzBdXx2HC\nqA7UVBy1o3alqTxclsk9fY1MK9nfjbifmcaTMn6LlREQNnWQtzKs0WdB/GvVik1e5MdUzWS6G/I9\nV4zCItz2raeYfa17tmJHBBkducK2ecuwYhuX963iJ6t40F7XEdkew2hR0gst3j7wNsn2019Bc+ds\nVI68gAmj2EWmnxz6P0BhuHzzRRP32v2+rf0uBNE3b4XMGzjIbPeTEVgxzt1bJTQh/exMoOpXe6Fa\nlMOLPChl3nvs9PnM8aIIno/WI8voyGbC+Mmyc5zRc1xwjgG57ZHKomQOocXbB15oRV42ABzvugl1\ns15A3awXsenYajz34RrbGlmzoIERb2kGCyfgfJbJwaJ5mBT1EIccgZ9Cbw1GCDL1XRVe5Pe/zD5V\njYJCzLi3zjOC56P3dDWSUiHKyksvtt13P1a8tSOYn+zsV0JhNovqgqlMMtG9Dslp7yJSXZRUIQus\nEy3ePsjGmvHMLE/OBlx/x1OgILY1otoThceZZdJUvAgbR/8AT1z+MRb17UUx+rGofy/WdDekt+Iy\nKArphmGsk3hskNm2BiNYhInKVbNKXF751Jt9r++M3h+Y0pn2RlJeRFWU4wshwe0Jpwft9LW9Wr9e\n9bnmMFqU9EKLtw9O4S0u6LOn7fjhjNjD9kQRDW14rmwtk3Gy/Npv7P1ZQdAJPYqQAvE/1SA54jyq\nVkyY7obO6P0LAEaaep6okLainDjFzOZWVLR3oXN8OY7fPM3sGhhm2EHYKkzZ4mQmPO4hjr5zQ7zf\nfQ+4+44heWun8BLEUb9gg5njfX4hAIqFE98TirpfcY8Uhbxv3guPJE0wLHykfWkv+7ok3TBo9F0x\n9Wamt7eFaOq76gQf1dTBqBtYRUEQKyRdvcBnNreiJtEadlJbByrPX2QXCq0cbJGY86I7Cu5JOVbl\npWjgsEWeLE6KyA3xzhJkETRBHGsWNNgl8ZuOrQ7cvyQIvBc+Y/D40NknfKRdcT/7uke6YRABV8kR\nDxIZA6lPoR9Kglgh6SrKqWhnI/iyzh72gEtI2h+8sPKia3UIdDaPGg//yJ2P2P1GoUXNEEbfhGao\nUTAhhIZ9L0KGLvJOByol9caP5J0ErQHGq3tfYKot+dTBjAj5oeVsbnjlnwBli5XL51PpOJgqlMZd\nPb/T2Rclynaxz768n4mm/3jWOGZYQsrEKWYebsWUU20ABc5UX4/jt0w3fe0EMw+32JE3AHwxaSwm\nnHMMtywG612PBnBj4vtTYCNt52sWKgU87XDngE9AZqNvFfF+IbzOEkJAKXU9jnIn8h5C6yRq/PqG\nGySG33Z8zc7pXn7tDRAaByUGI+aL+psY8fY7Pi1izhf2xPsD9TtJtWVsKmTaDomy33e6x6LNbG5F\nzUdJYa459ClAiCngCY7PMSN42/OumYaZzSft7Zq2E+zknFFIeuK8loXN1xbNtsx0auAQRd+5I95A\nTgu4M9rmp89/90s/AQA7Aq+f/xxTjAMAdVc32UJtiXMxZfuEex0PpGlR88Z6oKvRe7alE1E2SkiG\nuqPgUBKpFcIvPM6pdlkiAFDxRSdmooU5zinmAJjtmoETrOdNwUbJft0EVSfv8LMtc3CwQhhSEm9C\nyMMA1gGoAfDHlNL9UdzUcISfPO9kUskXTOUl305WhFOcAeBYwQzMisnnCjoXNSMd7kCMYLMteY+8\nqxF0yV+FEt0oCncyTVTRd5Tl9PzCIwB0ji+3v7ffk1LXcbx4Ox8EGARrdfDjyQYAzIDcnxbla4ui\n8WxIDRyC6DvVyPsjAA8B+L8juBc1cjT65ot9mjtno2JEJyaVJEMGKwLn/y1fRonv+svRotn4f6/7\nti3IBBTru5Ml286CnsiHO/j1RHFG2/xszM4d2PFiLZY9dmvgtw3a0U8jho+yK9q78B/3LAAoMOVk\n0vOu6LjEHDelpY2JwkEI8yCwsawOXoz74d1YSiTKn3HH9CJzqYFZRkriTSk9CgCEpKFca5jBF/u8\neOwxAGCicSsCP9Z1E3PuaPTi5kSU3Vw4Gy+WPOYS52La71rUpCBMdG0ReaqhX08Ufi4mT3cTtu9a\ny3jfKpZIprJFhrs9w0fZnePLTX97TjVAEuJOCDrHsceV9vSitKeXicL5B8G5wnGYhMQ5Qf1pkShn\nonoyLBmOvnPL885hRFWWBonhnsmNuGfyOxhZkPwXPctRrWk1tbI4UTgTz5WtBaFxLOl7x/bGv9q3\nA/U9G+wIWlTgY8GnGjYVL0rNSvHricLbKIXjgEHHR3JBOqGKJRKmeCYMUdsz6RxUHAbXwmNim7dT\nmufehOZ5M1DR3oXrLveitDupvJZoix4Ek6y/a4LU/elssEiyBF/xJoTsADDRuQvmssGTlNIIuyIF\nIAetE1GO+A/mb/Ct2KwY0clsW/YHJQb6Ces1q0bQfNn9htJ61PdsSN+cTN5WmfI94eg0Z+aJiiWS\nqWyRdNgzGRfwwTgW7tqPss4edFeUYl/tbYBhCBcrrXRAl53ScQn/UWumI/Jpgp3jzWwX0YPgOJme\nnLaTqvhmu0WSwejbV7wppff7HaPKunXr7O9ra2tRW1sb/mI5KOA8vA9+rncCDl6Yxwh6kREDYPre\npwungtC4nQYoiqBVEEXlaZ2TGWJ0WjYV0GTTvYRl4a79dg72yHMXsbBxP/bd+0fCxUprEVJopySQ\nRet8OqGLbBffLKCxsRGNjY2+x0VSpEMI2Qngf1JKP/A4JrUiHRFZLt5+xThrFjQwnvfa99bb/cD/\nzz/6IWOlOFlbtt62Tup7NtiNqvpJMZqKF+PHo7+PH1z+X4HEVzahB0j67Jko/LEi70wX0Mig8Rha\nd29B26FGAMD1c2sx/e6HpdPug95v2qPvRGQ966NPURBP/v+7NqII21cuxZcb9zMCfW7yODu6BqWY\n+Yk4Kg8KM2U+H+Cj72wr0iGEPAjgH2B++HmDEHKAUvq1VK4ZiCyPvv2KcUQ+uGWv3DO5UWqpWFGy\nFUHzjaqcQxtULZCMzcn0wbJOsqWfSOuerTix8yV7mxAiFOUhS1v0sD0AiLM/AHRXlALwjq59o+gA\nMIOKNZGQarbJrwD8KqJ7GXbwtsjqWS8IhVrE13/zW/z2T76OeZUHUUgGMW5UsuyYt0f8hjaoeOEZ\nm5OZY6j63WF98dDed0K0p7S0obTHXDgU5V7zvnXMILgwocL0vMHZH5XlAKX4cuP+lCNtEXkl4Bnw\nvodPvlMWwncWrKk4iuXT3kDDHU+ifsEGz3PjKMQDv9mOv//oe4xw/27E/a6RZ7yYHyyax2zvK74D\na7obsK1jOdZ0N4BQfjQJy4bSeqwtW4/mQtbbzdTwh+27VmTkfVTg/W2Z3616XFRYEbUl3Ba8WDOR\nNIALEyoQNwzMPHwSMz/+FF9+50MAMPO6DbMMflJbB2oOnsDMT1rT+jNoUiP3UwWz2Dpx2iIzxhxH\nTUUyGlOdJM8f109GuHxn6dAGq2CHxtHQw87C/Nq4N6X+tRWFW1koolzxdDOUPU+cqKYjppK2GCb6\nFpWvA26xdkbWRjxuL1o6rRLre1GxTtTo6Ds6cl+8sxinLcIvTlpRud+iJl/c0/TOIoDTBdnQBott\nHcuZ1/iccOn9e+SK80Racp9FqHrvmfboea+6p6wEZ6onJ7M+kjdm2yhfbpR3r7A8c6n/HTUqHQM1\nngwP8c7i6NtCNgotzKImL94inGIqamDl51/b53OZLDJRjrzkPs8IGn0LU/V8/GlRvxLna5nyv7fN\nW4YVv9+eH0MU0hh9Dw/xzgFki5O8LcJvC89TmLbjFFPA3bjKz7/mzwe8R66lY7pPtlgnWUmITBBG\nnMeVA6Co6LjEiLN1TbMIx6z0lTahSoU8mfAOwBTwNDB8xDsHom8RLltEcXyan03Bi+fRQrZxlZ9/\nLRNf2f6wBUOaJKEyT3xSBRlUBT9OMaWljdkVuf+dzT1KcoThI95ATgp4mMnyBonht/u+ZueBi2wK\nl5iOWBzIxuDPd+4X/hyCknvfn0PBJ9fRtzdeFZKBcDwEjHjclcUStf+97b77seKtHbpHSQoML/HO\nQcJMln9i/kZXAQ8fEYcRU+H5As9bBCUGNpY+YYtxfc8G30VLVZ9cJOBGPIZVzVtR034UzeNn49U5\nK7NigVT1vqK6/6gyRGTFPIC5GOpaCE0VQrDtK3mUeZIGtHjnIKI0Qz4iDpIpIoI/36Ax1Hc/h8Pn\n5wAANpWsxnOlaxjBCbpoqeKTW9H5isZfMSK3qnkrvn3QrGhc2GZWNL5yy9BUZDqFuCg+gNvPHfC9\nL9n9/2P8L/F3zT9QXoiMKkPES/TPTLvefQ9B7BpNWhh+4p2D1klQeJ9cVLgTNU/0bMT6nqft7fXd\nT4GCMOIcdNFSxSe3HwjdrMjVtLMVjPx2JnEKMU/NF0eAWwT7Jfe/qnkrY4NUnr+IfUtvlwqjtEFU\nQLwyUQDiEmtQoOYQe59xwwgs5HmV9x0xw0+8hzHJnPC9+N3p+9EfK0bT+cXY8Gfpz6kWCTG/L+ii\npYq1w7/Hfa07ExEu27Rrcs9ZPHJ4cyj7IVULw+vBUUQHhfubx8+2H0YAUBQfAKFx17UmnLuImZ+0\nyn3siPqPOB8C7l7dnVjYeJEp8OkpY1cY+eKfSDNTNEKGp3gPw+jbIDH8+9cfwLKpv7f3Pfnes6Zf\nnp4ZBAyiBUxenIP67CrWDv++N3SfxQ3dZ13H3dDTZke/vE3hJ85BLBjRtXghdjJgiP+LvTpnJeae\n/9i2WG4/dwDf/GSL8FqRZnrI7A5XmmDS/zYotcXZxqNJXjoqMzVuhqd4A8NOwJ+Yv5ERbgCom/Ui\nGj58UinvO1U2lNaD0Djqrpoit6lktUucU/HZZZknG0rrmS6JfoiiYD9x9rJgeLEGpfj2oZeYa706\nZ6V9ntPzBoDm8TcL75MSAwNGket9192zFss+fQtVlz933EOiF00EPrNKdgpvxYjE+Ey16YPzZfdA\ncN9dWyfhGL7iPcxQ7YWSLigx0DDmKTSMecr/YB+cQr2v+A6AAnVXN9ltaK1I28pe4bsketE83t0Q\nihfn+1p2ekbOzmvwwt81osx1bUoM+2FAaBzf/GQLc32ve+Xfl1CKGCfI8cR2FGmBStkpnBUz83AL\n44d/MWms+bp1n6K+3wHRAh4cLd45Ar9ICQCbjtUlffDdTWiam1pPkUz1JxFlpfAs6m8SVnnK+Gz0\nZLx1071CseRF8oaes7ih56wwcuYFlxf+8r5u17WdOIXciMdcQu78fYre95ufbMENPWyBTOeECgAp\npgUmovbrLgfP3/YtxY+w77dGneEt3sPIOtnwYT0IKOpmvQjAFO7nPlyL+gUbkr1RulPrKcKLqjVu\nLUoxN2gMq3tf8D2uqXiRa7Gyh1yHUnrF3v5g0nwMGEW+i4xOkZx8uY3xzPnImefIuJkuD/qz0iq0\nlU72jaz5qJ3E46CGwYg1/778w+Kz0ipbPFNJC+TzuHtKS3BmuqCRlYgMibOOvoMxvMV7GEFhoOHD\nJ02P24GrN0oKPUX4c0VWhuzBoBq1P9GzkZnSw9NDrsNzpcl2tM7IfMPoevth0jG7XDkrxCnOjxze\nzKT1iWwW5lxBq7u3pi9VyinnhfjeU+/YDw7Zwij/KeGt6UtRScwOTqmkBfJR+pXSEh0t5zjDX7yH\nUfQtwtUbxSc9jxdZ57xLUfdBJ7y4850LnaPXCOKgcEft/DW+MMZhQjwZTW4oXWM/IPgqz4UD+9BU\nvBjfqPw17r9FbLcA3tklXhaJ6Dr3tTYy+z4rrfI8x4krc4TL0BAtroruj8Iwe56kEAFntN2rJiMM\nf/Ee5gh7o3hknvDWCJ/J8bsR92OAFKOI9uOGwc+Yc/kHg5cnXdcrjtr51L+fXPc9lzVjIZvRCQDP\n7Vor7XnilV3iZZGIrnNDD5uW+Nb0pcrWES/EzkwVQBz1kwgGgts4s1PGjUHz3Bmo6EitmCfdaOtE\nnfwQ72EcfQftjbK4bw+zPZ/L5OgnI9BUvIgRZef0eCdBLBrrWFEuuJ8Yyio3ZU2roqq+dPnPZepR\nN+B+UBAaBwjxjPqjLPvns1Oa581ITobPYrSAqzH0nXw00eORzTdr8BizXcBVAIoWCk8UzsRzZWtd\nIstH4r8bcT9eH/mnWFu2HptG1QmPtaLpFeNeF17TiUFjWNPdgBmDxz3fl4ePaP18beF7x2Moig8w\n+96qVo+6RVhi/sMlawAA695pwCOHNzMzRWUPnufxeOD3q/ii03Nbk9vkR+QNDOvoOwhl8UvM9iA1\nsLZsPRMJ8wuFQdrAWuImylQJCm/LiD4BWNE343OPm4Wfz30UNR3HfH1tGauatzLFNh9Mmh/qOrJr\ny6JrUe639bNNaO/EmPGdysU5BmfB8NvZjI6+/ckf8c43JFWXB4vnY5LD4z44YoErg0S1zN2rotKv\n2lIlO0XWT0XUbpYXxJ/Pq8MzteELivgIeMAoiizn3cvWkeV+2xkybfBtVmURNwzPbU1uk1/iraNv\nfL3yt/jtha9j3sBBHCyah69X/tZ1jIrw1vc8h7reRKn8qDpfC4RHpX0sv7hZM3gUNYNHXccb8Rju\na9nJnJtql0GvqktVjHgM3zz8Gu499Q5Agbeqa/HqLQ+7rj35chvTVMsv99u3WVUCnWEyvMkv8dYg\nbhTigfGpfRx9omcj1nc72sP2PB24rwkfVX/38k8AgImonZ8AZgweZ/LDnecv+G2zKyvE6tIXNloO\nklIoY1XzVvzFR7+wt7996CWAEPta97XsNKs9u89Km2oBgpRDqFVXRtUudqjQ1ok3+Sfe+RR9p6lh\nlV97WBVLhI+qJ8W/sCNx6yHgfCA40wWt873ux+rSF6Q7oPMeg6QUyhBF/86Kzpr2o8xD58Ejr2Pu\n+Y8xQArRPOFm+574DoSAYhQ9DMrWtYDLyT/xzjfSIOB+7WFVLBFZt0BZ+qGXDy+bt+llnYRNyQvS\n+1sUMTvtF/71ir5LySk8n//BvidKDDy59BmmT0rlnPO+96oZ3uSneOdT9J0GNpQm+qz0JvqsjKpj\nxFRlog4lBvrJCNd+UWaLXyRvvffq3hcYa8XLpw6bC86L/n0tO/HW9KVCEX91zkqAUtx3sjHpeTvs\nF+v7B4+8joo+NguIvyfRJ4HAk+ZzFB19i8lP8c43Io6+KTHQUPYkGsrE1ZVeE3X4knonsnFuskie\nF/VbJ3yM/2f8t0O3Y1WBF/kbeuR+NSUGXrl1FV65dZXwWk5BFo1RC7NIqskf8le8dfSdNrwsDj53\n+3cj7rerOmXVlq5Ivm8v1nQ3MJG2Jeqv1Kr51GEXJGVTc2SRu4rN8uqclSA0jntb30FZfw+6i0td\nUbqI5/F43kTfGjf5K96atOGVecILcT8ZgRXjXve8Hh/JF6Nf2FNlUX+TZ88T/h7DLEjamSKtO5nW\nsrIoWcVbp8QAJYa9eFne1w0Qkva5pLmEtk7c5Ld451P0nYFRaSoEHVIMuCP5Rf17pdfm8Yt8i/uv\n4p/e/O8Y39uO9pLx+C9/8veIFRR7nvvKLX9uF8/4Re6q3npYDz6fom8t4Cz5Ld6ajBN0SDHgjuTX\ndDfY3QUtmgtn29dyNqzyi3z/6c3/bs+LrLr8Of75N9/Ff17xT77nqkbuqt56FEVBmvxCi7eOvjNK\nKkOKLURphi+WPCa0Gfwi2vG97dLtKLoTqnrrURQF5QM6+k6ixTvfyAIBTxVKDHxt3Juo79kgjeCt\n6Nsvom0vGc9Mam8vGc8cm2o0rBqhp1IUlE/WiSYJoRnqNEYIoWHfi5D3Ir4bAfkSfQM5L96qLFuy\nTTjN3RmhF8T68c+/+a7Q8/Y7N5vIN/HOueh7XnidJYSAUurqQqbF20KL97BEJfNkuJBPAq7FWw9j\nSPJuBh4Q2UL4TqmaLCbMwAZN7qLF20k+CXiesH3XiqG+BU0a2DZv2VDfwpCjxTtf0dG3RpPTaPHO\nZ/JEwPMp+s4n6yTfo28t3jzaOtFocoZ8FvCUxJsQ8mNCSDMh5AAhZAshpCyqG9NkiDyJvvOJfIq+\n85lUI+/tAG6hlM4HcBzAmtRvKQvQ0fewI5+sE0ALeD6QknhTSn9PKY0nNvcBmJL6LWUJWsCHHfkm\n4PlCvlonUXre/xnAv0d4PU2m0NaJRpNz+Io3IWQHIeSQ4+ujxJ/LHcc8CWCAUvoLj0tpspk8EfB8\nir7zyTrJx+jbtzEVpfR+r9cJIX8B4OsA7vW71rp16+zva2trUVtb63dK4h7yqHRdkwHyR8Dz6med\nN9Q3EA2NjY1obGz0PS6l3iaEkAcA/C2AJZTSCz7Hhu5totFoNPlKWhpTEUKOAygGYAn3PkrpX0mO\n1eKt0Wg0AcnproIajUaTr+iughqNRjOM0OKt0Wg0OUhOiLfKyqsmif59BUf/zoKhf1/BSMfvS4v3\nMET/voKjf2fB0L+vYOSteGs0Go2GRYu3RqPR5CAZTRXMyBtpNBrNMGNI87w1Go1GEx3aNtFoNJoc\nRIu3RqPR5CA5I9565FowCCEPE0I+JoTECCG3DfX9ZCuEkAcIIUcIIccIIU8M9f1kO4SQfyGEnCeE\nHBrqe8kFCCFTCCFvE0IOJ9ppfzeqa+eMeGO4jlxLHx8BeAjAO0N9I9kKIcQA8FMAXwVwC4BvEUJu\nHtq7ynp+DvP3pVFjEMD/oJTeAmARgMej+jeWM+I9rEeupQFK6VFK6XEArlVqjc2XARynlJ6ilA4A\neAXAN4b4nrIaSuluAJ1DfR+5AqX0HKX0QOL7ywCaAVRFce2cEW8OPXJNEwVVAE47ts8gov9YGg0P\nIWQagPkAIhmQ6ztJJ5MQQnYAmOjcBYACeJJS+nriGD1yLYHK70uj0Qw9hJDRAF4D8L1EBJ4yWSXe\nUY5cywf8fl8aX84CuMGxPSWxT6OJDEJIIUzhfpFS+uuorpsztkli5Nr3AayglPYN9f3kGNr3FvM+\ngBmEkBsJIcUAHgGwbYjvKRcg0P+mgvCvAD6hlP4kyovmjHgD+AcAowHsIITsJ4T8bKhvKJshhDxI\nCDkNYCGANwgheo2Ag1IaA/AdmJlMhwG8QiltHtq7ym4IIb8AsBfALELIZ4SQbw/1PWUzhJA7ATwK\n4F5CyIcJ7Xogkmvr8niNRqPJPXIp8tZoNBpNAi3eGo1Gk4No8dZoNJocRIu3RqPR5CBavDUajSYH\n0eKt0Wg0OYgWb41Go8lBtHhrNBpNDvL/A1Ak8LRKvFPqAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x123131610>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"\n",
"xx, yy = np.meshgrid(np.arange(-2, 2, 0.01),\n",
" np.arange(-2, 2, 0.01))\n",
"R = lm.predict(np.c_[xx.ravel(), yy.ravel()])\n",
"R = np.array(R).reshape(xx.shape)\n",
"\n",
"plt.contourf(xx, yy, R)\n",
"plt.scatter(x2,y2,c='orange', linewidths=0.0)\n",
"plt.scatter(x1,y1,c='green', linewidths=0.0)"
]
}
],
"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.12"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment