Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save jGaboardi/d7e90e06019cfee5c8585039efaf0cdf to your computer and use it in GitHub Desktop.
Save jGaboardi/d7e90e06019cfee5c8585039efaf0cdf to your computer and use it in GitHub Desktop.
point_line_poly_centered_norm_matplotlib_373
Display the source blob
Display the rendered blob
Raw
{"metadata":{"kernelspec":{"display_name":"Python 3 (ipykernel)","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.11.9"},"gist_info":{"create_date":"","gist_id":"","gist_url":""}},"nbformat_minor":5,"nbformat":4,"cells":[{"id":"ba34be51-2191-48cc-88cb-395b960aa59d","cell_type":"markdown","source":"# matplotlib 3.7.3\n## `matplotlib.colors.CenteredNorm`","metadata":{}},{"id":"a697159b-a0f0-49c1-aa25-ef9a9a48ab25","cell_type":"code","source":"%load_ext watermark\n%watermark","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:54.997836Z","iopub.execute_input":"2024-07-18T13:14:54.998253Z","iopub.status.idle":"2024-07-18T13:14:55.025778Z","shell.execute_reply.started":"2024-07-18T13:14:54.998225Z","shell.execute_reply":"2024-07-18T13:14:55.025462Z"},"trusted":true},"outputs":[{"name":"stdout","text":"Last updated: 2024-07-18T09:14:55.017932-04:00\n\nPython implementation: CPython\nPython version : 3.11.9\nIPython version : 8.26.0\n\nCompiler : Clang 16.0.6 \nOS : Darwin\nRelease : 23.5.0\nMachine : arm64\nProcessor : arm\nCPU cores : 8\nArchitecture: 64bit\n\n","output_type":"stream"}],"execution_count":1},{"id":"65abdf80-3e61-4330-85f9-b20e8f3a5f9f","cell_type":"code","source":"import geopandas\nimport matplotlib\nimport numpy\nimport pandas\nimport shapely\n\n%watermark -iv","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:55.026783Z","iopub.execute_input":"2024-07-18T13:14:55.027069Z","iopub.status.idle":"2024-07-18T13:14:56.038411Z","shell.execute_reply.started":"2024-07-18T13:14:55.027057Z","shell.execute_reply":"2024-07-18T13:14:56.038022Z"},"trusted":true},"outputs":[{"name":"stdout","text":"pandas : 2.2.2\nmatplotlib: 3.7.3\ngeopandas : 1.0.1\nshapely : 2.0.5\nnumpy : 1.26.4\n\n","output_type":"stream"}],"execution_count":2},{"id":"61cc1038-7fd7-4e38-8fae-fb25d38aaf6a","cell_type":"code","source":"values = (\n numpy.random.default_rng(850)\n .uniform(low=.01, high=2.9, size=4)\n)\nvalues","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.039126Z","iopub.execute_input":"2024-07-18T13:14:56.039384Z","iopub.status.idle":"2024-07-18T13:14:56.044102Z","shell.execute_reply.started":"2024-07-18T13:14:56.039369Z","shell.execute_reply":"2024-07-18T13:14:56.043847Z"},"trusted":true},"outputs":[{"execution_count":3,"output_type":"execute_result","data":{"text/plain":"array([0.33735074, 1.08379739, 0.98264763, 1.5703785 ])"},"metadata":{}}],"execution_count":3},{"id":"b02d605e-2520-4780-a91d-866f6351d95c","cell_type":"code","source":"centered_norm = matplotlib.colors.CenteredNorm(vcenter=1)\ncentered_norm_values = centered_norm(values)\ncentered_norm_values","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.044736Z","iopub.execute_input":"2024-07-18T13:14:56.044880Z","iopub.status.idle":"2024-07-18T13:14:56.047673Z","shell.execute_reply.started":"2024-07-18T13:14:56.044865Z","shell.execute_reply":"2024-07-18T13:14:56.047410Z"},"trusted":true},"outputs":[{"execution_count":4,"output_type":"execute_result","data":{"text/plain":"masked_array(data=[0. , 0.56322907, 0.48690682, 0.93037738],\n mask=False,\n fill_value=1e+20)"},"metadata":{}}],"execution_count":4},{"id":"53c16368-f36e-4c0f-ae3b-7713cee3abaa","cell_type":"markdown","source":"---------------------\n\n## Point","metadata":{}},{"id":"b56f7e1f-d848-4915-b6dd-d67f65791354","cell_type":"code","source":"points = shapely.points(numpy.array([[i, i] for i in range(4)]))\npoint_gdf = geopandas.GeoDataFrame({\"values\": values}, geometry=points)\npoint_gdf","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.048247Z","iopub.execute_input":"2024-07-18T13:14:56.048397Z","iopub.status.idle":"2024-07-18T13:14:56.057218Z","shell.execute_reply.started":"2024-07-18T13:14:56.048386Z","shell.execute_reply":"2024-07-18T13:14:56.056942Z"},"trusted":true},"outputs":[{"execution_count":5,"output_type":"execute_result","data":{"text/plain":" values geometry\n0 0.337351 POINT (0 0)\n1 1.083797 POINT (1 1)\n2 0.982648 POINT (2 2)\n3 1.570379 POINT (3 3)","text/html":"<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>values</th>\n <th>geometry</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>0.337351</td>\n <td>POINT (0 0)</td>\n </tr>\n <tr>\n <th>1</th>\n <td>1.083797</td>\n <td>POINT (1 1)</td>\n </tr>\n <tr>\n <th>2</th>\n <td>0.982648</td>\n <td>POINT (2 2)</td>\n </tr>\n <tr>\n <th>3</th>\n <td>1.570379</td>\n <td>POINT (3 3)</td>\n </tr>\n </tbody>\n</table>\n</div>"},"metadata":{}}],"execution_count":5},{"id":"6a7905f5-2cdd-47b9-872d-f1b000e0f48c","cell_type":"code","source":"cmap = matplotlib.cm.coolwarm\nax = point_gdf.plot(\n column=\"values\",\n norm=matplotlib.colors.CenteredNorm(vcenter=1),\n cmap=cmap,\n legend=True,\n)\nax.set_axis_off()","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.059028Z","iopub.execute_input":"2024-07-18T13:14:56.059198Z","iopub.status.idle":"2024-07-18T13:14:56.527814Z","shell.execute_reply.started":"2024-07-18T13:14:56.059186Z","shell.execute_reply":"2024-07-18T13:14:56.527567Z"},"trusted":true},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 640x480 with 2 Axes>","image/png":"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"},"metadata":{}}],"execution_count":6},{"id":"325b3b98-4408-4a6a-922d-5deb7bc70970","cell_type":"markdown","source":"---------------------\n\n## LineString","metadata":{}},{"id":"21938b6b-725c-46e9-8424-955576aa0f41","cell_type":"code","source":"lines = [\n shapely.LineString(i) for i in\n numpy.array([points[:-1], points[1:]]).reshape(3,2)\n] + [shapely.LineString(((3, 3), (4,4)))]\nline_gdf = geopandas.GeoDataFrame({\"values\": values}, geometry=lines)\nline_gdf","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.528413Z","iopub.execute_input":"2024-07-18T13:14:56.528581Z","iopub.status.idle":"2024-07-18T13:14:56.534099Z","shell.execute_reply.started":"2024-07-18T13:14:56.528573Z","shell.execute_reply":"2024-07-18T13:14:56.533852Z"},"trusted":true},"outputs":[{"execution_count":7,"output_type":"execute_result","data":{"text/plain":" values geometry\n0 0.337351 LINESTRING (0 0, 1 1)\n1 1.083797 LINESTRING (2 2, 1 1)\n2 0.982648 LINESTRING (2 2, 3 3)\n3 1.570379 LINESTRING (3 3, 4 4)","text/html":"<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>values</th>\n <th>geometry</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>0.337351</td>\n <td>LINESTRING (0 0, 1 1)</td>\n </tr>\n <tr>\n <th>1</th>\n <td>1.083797</td>\n <td>LINESTRING (2 2, 1 1)</td>\n </tr>\n <tr>\n <th>2</th>\n <td>0.982648</td>\n <td>LINESTRING (2 2, 3 3)</td>\n </tr>\n <tr>\n <th>3</th>\n <td>1.570379</td>\n <td>LINESTRING (3 3, 4 4)</td>\n </tr>\n </tbody>\n</table>\n</div>"},"metadata":{}}],"execution_count":7},{"id":"3fa858a5-9db3-4a5d-91f4-da518ff87228","cell_type":"code","source":"cmap = matplotlib.cm.coolwarm\nax = line_gdf.plot(\n column=\"values\",\n norm=matplotlib.colors.CenteredNorm(vcenter=1),\n cmap=cmap,\n legend=True,\n)\nax.set_axis_off()","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.534515Z","iopub.execute_input":"2024-07-18T13:14:56.534701Z","iopub.status.idle":"2024-07-18T13:14:56.609517Z","shell.execute_reply.started":"2024-07-18T13:14:56.534692Z","shell.execute_reply":"2024-07-18T13:14:56.609244Z"},"trusted":true},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 640x480 with 2 Axes>","image/png":"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"},"metadata":{}}],"execution_count":8},{"id":"d0291180-3f86-41e0-a776-0be4ac75fe3b","cell_type":"markdown","source":"---------------------\n\n## Polygon","metadata":{}},{"id":"424ee884-9444-4706-97d2-cbf05ac30579","cell_type":"code","source":"polygons = [\n shapely.Polygon(\n [(i+0, i+0), (i+1, i+0), (i+1, i+1), (i+0, i+1)]\n )\n for i in range(4)\n]\npolygon_gdf = geopandas.GeoDataFrame({\"values\": values}, geometry=polygons)\npolygon_gdf","metadata":{"editable":true,"execution":{"iopub.status.busy":"2024-07-18T13:14:56.609964Z","iopub.execute_input":"2024-07-18T13:14:56.610036Z","iopub.status.idle":"2024-07-18T13:14:56.615041Z","shell.execute_reply.started":"2024-07-18T13:14:56.610028Z","shell.execute_reply":"2024-07-18T13:14:56.614802Z"},"slideshow":{"slide_type":""},"tags":[],"trusted":true},"outputs":[{"execution_count":9,"output_type":"execute_result","data":{"text/plain":" values geometry\n0 0.337351 POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))\n1 1.083797 POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))\n2 0.982648 POLYGON ((2 2, 3 2, 3 3, 2 3, 2 2))\n3 1.570379 POLYGON ((3 3, 4 3, 4 4, 3 4, 3 3))","text/html":"<div>\n<style scoped>\n .dataframe tbody tr th:only-of-type {\n vertical-align: middle;\n }\n\n .dataframe tbody tr th {\n vertical-align: top;\n }\n\n .dataframe thead th {\n text-align: right;\n }\n</style>\n<table border=\"1\" class=\"dataframe\">\n <thead>\n <tr style=\"text-align: right;\">\n <th></th>\n <th>values</th>\n <th>geometry</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>0.337351</td>\n <td>POLYGON ((0 0, 1 0, 1 1, 0 1, 0 0))</td>\n </tr>\n <tr>\n <th>1</th>\n <td>1.083797</td>\n <td>POLYGON ((1 1, 2 1, 2 2, 1 2, 1 1))</td>\n </tr>\n <tr>\n <th>2</th>\n <td>0.982648</td>\n <td>POLYGON ((2 2, 3 2, 3 3, 2 3, 2 2))</td>\n </tr>\n <tr>\n <th>3</th>\n <td>1.570379</td>\n <td>POLYGON ((3 3, 4 3, 4 4, 3 4, 3 3))</td>\n </tr>\n </tbody>\n</table>\n</div>"},"metadata":{}}],"execution_count":9},{"id":"0357713c-374e-4ce0-bb0b-a2011e6459fc","cell_type":"code","source":"cmap = matplotlib.cm.coolwarm\nax = polygon_gdf.plot(\n column=\"values\",\n norm=matplotlib.colors.CenteredNorm(vcenter=1),\n cmap=cmap,\n legend=True,\n)\nax.set_axis_off()","metadata":{"execution":{"iopub.status.busy":"2024-07-18T13:14:56.615391Z","iopub.execute_input":"2024-07-18T13:14:56.615465Z","iopub.status.idle":"2024-07-18T13:14:56.689178Z","shell.execute_reply.started":"2024-07-18T13:14:56.615458Z","shell.execute_reply":"2024-07-18T13:14:56.688859Z"},"trusted":true},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 640x480 with 2 Axes>","image/png":"iVBORw0KGgoAAAANSUhEUgAAAeIAAAGTCAYAAAD0lxHHAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/OQEPoAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAr5klEQVR4nO3df0xVZ77v8c8CgU1ViIrZwCiIZmKxOo5Cyw8PPTW3gdJq6p12ip4M1YntlHuatJZrckqtU2rnjNFaj3EUHK1cpWeO2NTRthlbxWb8NaAEAs3Y8aiNdrCGfThwO+5BbwFh3T8c9nQXVJb7qRvc71fyJO6HZz3r2f7z3d/vetZalm3btgAAQFCEBXsBAACEMgIxAABBRCAGACCICMQAAAQRgRgAgCAiEAMAEEQEYgAAgohADABAEBGIAQAIIgIxAABBRCAGAAxrR48e1fz585WYmCjLsrRv376bjm9padE//dM/aerUqQoLC9OyZcsGHLdnzx5NmzZNUVFRmjZtmvbu3dtvTFlZmVJSUuRyuZSWlqZjx445Xj+BGAAwrF25ckUzZ87Upk2bBjW+s7NT48eP14oVKzRz5swBx9TW1qqgoECFhYX69NNPVVhYqKeeekonT570jdm9e7eWLVumFStWqLGxUTk5OcrPz1dzc7Oj9Vu89AEAcLewLEt79+7VggULBjX+oYce0g9/+ENt2LDBr7+goEBer1cfffSRr++RRx7RmDFjtGvXLklSRkaGZs+erfLyct+Y1NRULViwQKtXrx70mkcMeiQAADfx9ddfq6ury8hctm3Lsiy/vqioKEVFRRmZ/1Zqa2v10ksv+fXl5eX5AnZXV5caGhr08ssv+43Jzc1VTU2No3MRiAEAAfv666+VGD1KX6nHyHyjRo1SR0eHX99rr72m0tJSI/Pfisfjkdvt9utzu93yeDySpLa2NvX09Nx0zGARiAEAAevq6tJX6tFO12TdE+D2o6vq1eKO87p48aJiYmJ8/XcqG+7z7Yx8oCx9MGNuhUAMADDmHoXpHis8sEn+tnMpJibGLxDfSfHx8f0y29bWVl8GHBcXp/Dw8JuOGSx2TQMAjLFGWAoLsFkjnGWU34WsrCxVV1f79R08eFDZ2dmSpMjISKWlpfUbU11d7RszWGTEAABjrIgwWVZgOZ7l8Gaejo4Off75577PFy5cUFNTk8aOHaukpCSVlJTo0qVLqqys9I1pamryHfvf//3fampqUmRkpKZNmyZJevHFF/Xggw9qzZo1evzxx/X+++/r0KFDOn78uG+O4uJiFRYWKj09XVlZWdq6dauam5tVVFTk9Pty+xIAIDBer1exsbHaM2aqRgZYmr5i9+iJr87o8uXLgypNHz58WHPnzu3Xv3jxYu3YsUNLlizRF198ocOHD/v+NtB13OTkZH3xxRe+z++9955effVVnT9/XlOmTNG//uu/6kc/+pHfMWVlZVq7dq1aWlo0ffp0/du//ZsefPDBwX9ZEYgBAAb0BeK9cfdqZFiAgbi3R/+z7T8HHYiHO0rTAABjrAhLVlhg13it3uBfI76T2KwFAEAQkREDAIwJG2EpLMCMOCzEMmICMQDAGErTzhGIAQDGhIVbCgsPMCPuCa1AzDViAACCiIwYAGCMFW7JCjAjthRaGTGBGABgjJHSdIgFYkrTAAAEERkxAMAYK8zArmk7tDJiAjGA78TvIqYGewl3lce6zwR7CYNihYfJCg/wpQ8KrScvU5oGACCIyIgBAMawWcs5AjEAwBjL4slaTlGaBgAgiMiIAQDGWOEKuDRthdZeLQIxAMAcI0/W4vYlAABujxUWJisswNuXAjx+uAmtbwsAwBBDRgwAMMbIk7UCPH64IRADAIwxch9xiF0jpjQNAEAQkREDAIyhNO0cgRgAYIxlGdg1bYVWsTa0vi0AAEMMGTEAwBhK084RiAEAxhjZNc1LHwAAwJ1CRgwAMIbStHMEYgCAMTxr2jkCMQDAGDJi50LrZwcAAEMMGTEAwBgyYucIxAAAYwjEzlGaBgAgiAjEAABjrmfEYQE2Zxnx0aNHNX/+fCUmJsqyLO3bt++Wxxw5ckRpaWlyuVyaPHmytmzZ4vf3hx56SJZl9WuPPfaYb0xpaWm/v8fHxztau0RpGgBgkBUW+JO1rB5nx1+5ckUzZ87UT3/6Uz3xxBO3HH/hwgU9+uijevbZZ/Xv//7v+sMf/qB//ud/1vjx433H//a3v1VXV5fvmPb2ds2cOVM//vGP/ea67777dOjQId/n8PBwR2uXCMQAgGEuPz9f+fn5gx6/ZcsWJSUlacOGDZKk1NRU1dfXa926db5APHbsWL9jqqqqdM899/QLxCNGjLitLPibKE0DAIzp26wVaJMkr9fr1zo7O42ssba2Vrm5uX59eXl5qq+vV3d394DHbN++XQsXLtTIkSP9+s+dO6fExESlpKRo4cKFOn/+vOP1EIgBAMYEfn3470/mmjhxomJjY31t9erVRtbo8Xjkdrv9+txut65du6a2trZ+4+vq6nTq1Ck988wzfv0ZGRmqrKzUgQMHtG3bNnk8HmVnZ6u9vd3ReihNAwCGpIsXLyomJsb3OSoqytjcluV/Hdq27QH7pevZ8PTp0/XAAw/49X+zHD5jxgxlZWVpypQp2rlzp4qLiwe9FgIxAMAYk/cRx8TE+AViU+Lj4+XxePz6WltbNWLECI0bN86v/+rVq6qqqtKqVatuOe/IkSM1Y8YMnTt3ztF6KE0DAIwxeY34u5KVlaXq6mq/voMHDyo9PV0RERF+/e+++646Ozv1k5/85JbzdnZ26vTp00pISHC0HgIxAMAYk9eIB6ujo0NNTU1qamqSdP32pKamJjU3N0uSSkpK9PTTT/vGFxUV6c9//rOKi4t1+vRpVVRUaPv27Vq+fHm/ubdv364FCxb0y5Qlafny5Tpy5IguXLigkydP6sknn5TX69XixYsdrZ/SNABgWKuvr9fcuXN9n/uuzy5evFg7duxQS0uLLyhLUkpKivbv36+XXnpJmzdvVmJiojZu3NjvHuSzZ8/q+PHjOnjw4IDn/fLLL7Vo0SK1tbVp/PjxyszM1IkTJ5ScnOxo/Zbdd4UaAAz6XcTUYC/hrvJY95lgL+GmvF6vYmNj9dnS+RodGXHrA27ir13dum/7h7p8+fJ3co14qCEjBgAYczul5YHmCCWh9W0BABhiyIgBAOZY1vUW6BwhhEAMADDGsgzcRxxigZjSNAAAQURGDAAwhs1azhGIAQDGmHzEZagIrZ8dAAAMMWTEAABjKE07RyAGABhjhQVeWrZCKw4TiAEA5nCN2LkQ+90BAMDQQkYMADAnLOx6C3SOEEIgBgAYY1lWwE/G4slaAADgjiEjBgAYw+1LzhGIAQDGsGvaudD62QEAwBBDRgwAMMcysGs6xJ7oQSAGAJhjoDQtStMAAOBOISMGABhjWWGyAiwtB3r8cEMgBgCYE2YFXloOsdI0gRgAYAz3ETsXWt8WAIAhhowYAGAMD/RwjkAMADDHsgK/D5iXPgAAgDuFjBgAYAylaecIxAAAc8IMPOKSXdMAAOBOISMGABhjWZasADdbBXr8cEMgBgCYw9uXHAutbwsAwBBDRgwAMIZd086REQMAzLHCzDQHjh49qvnz5ysxMVGWZWnfvn23PObIkSNKS0uTy+XS5MmTtWXLFr+/79ixw3e9+5vt66+/9htXVlamlJQUuVwupaWl6dixY47WLhGIAQAm9b19KdDmwJUrVzRz5kxt2rRpUOMvXLigRx99VDk5OWpsbNQrr7yiF154QXv27PEbFxMTo5aWFr/mcrl8f9+9e7eWLVumFStWqLGxUTk5OcrPz1dzc7Oj9VOaBgAMa/n5+crPzx/0+C1btigpKUkbNmyQJKWmpqq+vl7r1q3TE0884RtnWZbi4+NvOM/69eu1dOlSPfPMM5KkDRs26MCBAyovL9fq1asHvR4yYgCAMZYVZqRJktfr9WudnZ1G1lhbW6vc3Fy/vry8PNXX16u7u9vX19HRoeTkZE2YMEHz5s1TY2Oj729dXV1qaGjoN09ubq5qamocrYdADAAwx2BpeuLEiYqNjfU1J1nmzXg8Hrndbr8+t9uta9euqa2tTZJ07733aseOHfrggw+0a9cuuVwuzZkzR+fOnZMktbW1qaenZ8B5PB6Po/VQmgYADEkXL15UTEyM73NUVJSxub/90BDbtv36MzMzlZmZ6fv7nDlzNHv2bP3qV7/Sxo0bbzqP0weSEIgBAMZYYWGyAnygR9/xMTExfoHYlPj4+H5Za2trq0aMGKFx48YNeExYWJjuv/9+X0YcFxen8PDwAef5dpZ8K5SmAQDmWJaZ9h3KyspSdXW1X9/BgweVnp6uiIiIAY+xbVtNTU1KSEiQJEVGRiotLa3fPNXV1crOzna0HjJiAMCw1tHRoc8//9z3+cKFC2pqatLYsWOVlJSkkpISXbp0SZWVlZKkoqIibdq0ScXFxXr22WdVW1ur7du3a9euXb45Xn/9dWVmZur73/++vF6vNm7cqKamJm3evNk3pri4WIWFhUpPT1dWVpa2bt2q5uZmFRUVOVo/gRgAYE6YZeA1iM4y4vr6es2dO9f3ubi4WJK0ePFi7dixQy0tLX739qakpGj//v166aWXtHnzZiUmJmrjxo1+ty795S9/0c9+9jN5PB7FxsZq1qxZOnr0qB544AHfmIKCArW3t2vVqlVqaWnR9OnTtX//fiUnJztav2X3XaEGAIN+FzE12Eu4qzzWfSbYS7gpr9er2NhYtZSXKCbadesDbjbX//taCf9rtS5fvvydXCMearhGDABAEFGaBgAYY3LXdKggEAN/84c/dQR7CXeVoV5KxXfkNl7aMOAcIYRADAAwx3L+0oYB5wghofWzAwCAIYaMGABgzDdf2hDIHKGEQAwAMOc23ic84BwhJLR+dgAAMMSQEQMAzGHXtGMEYgCAOSZe2sCuaQAAcKeQEQMAzAkLM/DSh9DKEQnEAABzuEbsWGh9WwAAhhgyYgCAOdxH7BiBGABgjmUZKE0TiAEAuD3cvuQY14gBAAgiMmIAgDncvuQYgRgAYA6lacdC62cHAABDDBkxAMAcHujhGIEYAGCOZeAacYgF4tD6tgAADDFkxAAAc9is5RiBGABgDteIHQutbwsAwBBDRgwAMIfStGMEYgCAOTxZyzECMQDAGNuyZAeY0QZ6/HATWj87AAAYYsiIAQDm8D5ixwjEAABzuH3JsdD6tgAADDFkxAAAY9is5RyBGABgDqVpx0Lr2wIA7jpHjx7V/PnzlZiYKMuytG/fvlsec+TIEaWlpcnlcmny5MnasmWL39+3bdumnJwcjRkzRmPGjNHDDz+suro6vzGlpaWyLMuvxcfHO14/gRgAYE7fk7UCbQ5cuXJFM2fO1KZNmwY1/sKFC3r00UeVk5OjxsZGvfLKK3rhhRe0Z88e35jDhw9r0aJF+v3vf6/a2lolJSUpNzdXly5d8pvrvvvuU0tLi6/98Y9/dLR2idI0AMCkIDxZKz8/X/n5+YMev2XLFiUlJWnDhg2SpNTUVNXX12vdunV64oknJEm/+c1v/I7Ztm2b3nvvPX3yySd6+umnff0jRoy4rSz4m8iIAQDG9G3WCrRJktfr9WudnZ1G1lhbW6vc3Fy/vry8PNXX16u7u3vAY65evaru7m6NHTvWr//cuXNKTExUSkqKFi5cqPPnzzteD4EYADAkTZw4UbGxsb62evVqI/N6PB653W6/PrfbrWvXrqmtrW3AY15++WV973vf08MPP+zry8jIUGVlpQ4cOKBt27bJ4/EoOztb7e3tjtZDaRoAYI7BXdMXL15UTEyMrzsqKiqweb95im9dh7Zte8B+SVq7dq127dqlw4cPy+Vy+fq/WQ6fMWOGsrKyNGXKFO3cuVPFxcWDXguBGABgjG2FyQ4wEPcdHxMT4xeITYmPj5fH4/Hra21t1YgRIzRu3Di//nXr1umXv/ylDh06pB/84Ac3nXfkyJGaMWOGzp0752g9lKYBACElKytL1dXVfn0HDx5Uenq6IiIifH1vvvmm3njjDX388cdKT0+/5bydnZ06ffq0EhISHK2HQAwAMCcIty91dHSoqalJTU1Nkq7fntTU1KTm5mZJUklJid9O56KiIv35z39WcXGxTp8+rYqKCm3fvl3Lly/3jVm7dq1effVVVVRUaNKkSfJ4PPJ4POro6PCNWb58uY4cOaILFy7o5MmTevLJJ+X1erV48WJH6ycQAwCMsRXmK0/fdnMYmurr6zVr1izNmjVLklRcXKxZs2bp5z//uSSppaXFF5QlKSUlRfv379fhw4f1wx/+UG+88YY2btzou3VJksrKytTV1aUnn3xSCQkJvrZu3TrfmC+//FKLFi3S1KlT9aMf/UiRkZE6ceKEkpOTHa3fsvuuUAMh7g9/6rj1IAzanGmjgr0E3EFer1exsbH68pN3FTPqnsDm6riqCf/jKV2+fPk7uUY81LBZCwBgzm2UlgecI4QQiAEA5liWgduXQisQc40YAIAgIiMGABjD+4idIxADAMzhfcSOEYgBAMbYsmQrwIw4wOOHm9D62QEAwBBDRgwAMMbks6ZDBYEYAGAO14gdC61vCwDAEENGDAAwhtuXnCMQAwCM4Rqxc6H1bQEAGGLIiAEA5vDSB8cIxAAAcwyUptk1DQAA7hgyYgCAMTzi0jkCMQDAGHZNO0cgBgCYY8nAZi0jKxk2QutnBwAAQwwZMQDAGFthsgPM8QI9frghEAMAjOERl86F1s8OAACGGDJiAIAx7Jp2jkAMADCG+4idC62fHQAADDFkxAAAYyhNO0cgBgAYw65p50LrZwcAAEMMGTEAwBg2azlHIAYAGMM1YucIxAAAY8iInQutnx0AAAwxZMQAAGNsGShNh1iOSCAGABhDadq50PrZAQC46xw9elTz589XYmKiLMvSvn37bnnMkSNHlJaWJpfLpcmTJ2vLli39xuzZs0fTpk1TVFSUpk2bpr179/YbU1ZWppSUFLlcLqWlpenYsWOO108gBgAYc/2BHmEBNmcZ8ZUrVzRz5kxt2rRpUOMvXLigRx99VDk5OWpsbNQrr7yiF154QXv27PGNqa2tVUFBgQoLC/Xpp5+qsLBQTz31lE6ePOkbs3v3bi1btkwrVqxQY2OjcnJylJ+fr+bmZkfrt2zbth0dAdyl/vCnjmAv4a4yZ9qoYC8Bd5DX61VsbKyaGhs1evTogOb661//qh/OmqXLly8rJibG0bGWZWnv3r1asGDBDcf8y7/8iz744AOdPn3a11dUVKRPP/1UtbW1kqSCggJ5vV599NFHvjGPPPKIxowZo127dkmSMjIyNHv2bJWXl/vGpKamasGCBVq9evWg10xGDAAYkrxer1/r7Ow0Mm9tba1yc3P9+vLy8lRfX6/u7u6bjqmpqZEkdXV1qaGhod+Y3Nxc35jBYrPWMPbpIw8Gewl3lTkfHw32EoBhz+SzpidOnOjX/9prr6m0tDSguSXJ4/HI7Xb79bndbl27dk1tbW1KSEi44RiPxyNJamtrU09Pz03HDBaBGABgjG1bsu0AA/Hfjr948aJfaToqKiqgeb/J+taPhb6rtN/sH2jMt/sGM+ZWCMQAgCEpJibG8TXiwYiPj++Xtba2tmrEiBEaN27cTcf0ZcBxcXEKDw+/6ZjB4hoxAMCgsOsP9QigfdehKSsrS9XV1X59Bw8eVHp6uiIiIm46Jjs7W5IUGRmptLS0fmOqq6t9YwaLjBgAYEwwHujR0dGhzz//3Pf5woULampq0tixY5WUlKSSkhJdunRJlZWVkq7vkN60aZOKi4v17LPPqra2Vtu3b/fthpakF198UQ8++KDWrFmjxx9/XO+//74OHTqk48eP+8YUFxersLBQ6enpysrK0tatW9Xc3KyioiJH6ycQAwCMCUYgrq+v19y5c32fi4uLJUmLFy/Wjh071NLS4ndvb0pKivbv36+XXnpJmzdvVmJiojZu3KgnnnjCNyY7O1tVVVV69dVXtXLlSk2ZMkW7d+9WRkaGb0xBQYHa29u1atUqtbS0aPr06dq/f7+Sk5MdrZ/7iIcxdk2bNZNd08Bt67uPuL7xM40K8D7ijr/+Vemz7rut+4iHIzJiAIAxPGvaOQIxAMAYArFz7JoGACCIyIgBAMaYfKBHqCAQAwCMoTTtHKVpAACCiIwYAGAMGbFzBGIAgDEEYucoTQMAEERkxAAAY2wZ2DUdYhkxgRgAYEyvLPUGGEgDPX64IRADAIzhGrFzXCMGACCIyIgBAMbwZC3nCMQAAGNsBV5aDrV381KaBgAgiMiIAQDGUJp2jkAMADCGXdPOUZoGACCIyIgBAMZQmnaOQAwAMMaW1GtgjlBCaRoAgCAiIwYAGENp2jkCMQDAGHZNO0cgBgAYQ0bsHNeIAQAIIjJiAIAxlKadIxADAIzpta+3QOcIJZSmAQAIIjJiAIAxlKadIxADAIxh17RzlKYBAAgiMmIAgDG2fb0FOkcoIRADAIzplaXeAK/xBnr8cENpGgCAICIQAwCM6dusFWhzqqysTCkpKXK5XEpLS9OxY8duOn7z5s1KTU1VdHS0pk6dqsrKSr+/P/TQQ7Isq1977LHHfGNKS0v7/T0+Pt7x2ilNAwCMCcY14t27d2vZsmUqKyvTnDlz9Otf/1r5+fn605/+pKSkpH7jy8vLVVJSom3btun+++9XXV2dnn32WY0ZM0bz58+XJP32t79VV1eX75j29nbNnDlTP/7xj/3muu+++3To0CHf5/DwcGeLF4EYAGBQMO4jXr9+vZYuXapnnnlGkrRhwwYdOHBA5eXlWr16db/x77zzjp577jkVFBRIkiZPnqwTJ05ozZo1vkA8duxYv2Oqqqp0zz339AvEI0aMuK0s+JsoTQMAhiSv1+vXOjs7+43p6upSQ0ODcnNz/fpzc3NVU1Mz4LydnZ1yuVx+fdHR0aqrq1N3d/eAx2zfvl0LFy7UyJEj/frPnTunxMREpaSkaOHChTp//ryTryiJQAwAMKjvWdOBNkmaOHGiYmNjfW2g7LatrU09PT1yu91+/W63Wx6PZ8A15uXl6e2331ZDQ4Ns21Z9fb0qKirU3d2ttra2fuPr6up06tQpX8bdJyMjQ5WVlTpw4IC2bdsmj8ej7Oxstbe3O/o/ozQNADDHwJO19LfjL168qJiYGF93VFTUDQ+xLP9z2rbdr6/PypUr5fF4lJmZKdu25Xa7tWTJEq1du3bAa7zbt2/X9OnT9cADD/j15+fn+/49Y8YMZWVlacqUKdq5c6eKi4tv/T3/howYADAkxcTE+LWBAnFcXJzCw8P7Zb+tra39suQ+0dHRqqio0NWrV/XFF1+oublZkyZN0ujRoxUXF+c39urVq6qqquqXDQ9k5MiRmjFjhs6dO+fgWxKIAQAG9e2aDrQNVmRkpNLS0lRdXe3XX11drezs7JseGxERoQkTJig8PFxVVVWaN2+ewsL8w+K7776rzs5O/eQnP7nlWjo7O3X69GklJCQM/guI0jQAwKBgPFmruLhYhYWFSk9PV1ZWlrZu3arm5mYVFRVJkkpKSnTp0iXfvcJnz55VXV2dMjIy9NVXX2n9+vU6deqUdu7c2W/u7du3a8GCBRo3bly/vy1fvlzz589XUlKSWltb9Ytf/EJer1eLFy92tH4CMQBgWCsoKFB7e7tWrVqllpYWTZ8+Xfv371dycrIkqaWlRc3Nzb7xPT09euutt3TmzBlFRERo7ty5qqmp0aRJk/zmPXv2rI4fP66DBw8OeN4vv/xSixYtUltbm8aPH6/MzEydOHHCd97Bsmw71B6vfff49JEHg72Eu8rMj48GewnAsOX1ehUbG6uqw+26Z1TMrQ+4iasdXi18aJwuX77st1nrbkVGDAAwhvcRO8dmLQAAgoiMGABgzDcfyBHIHKGEQAwAMCYYL30Y7gjEAABjgvHSh+GOa8QAAAQRGTEAwJheGbhGbGQlwweBGABgDNeInaM0DQBAEJERAwCMISN2jkAMADCm17bUG+CTsQI9frihNA0AQBCREQMAjKE07RyBGABgDIHYOUrTAAAEERkxAMAY28BLH0ItIyYQAwCM4X3EzhGIAQDGcI3YOa4RAwAQRGTEAABjeg1cIw70+OGGQAwAMIbStHOUpgEACCIyYgCAMWTEzhGIAQDGcI3YOUrTAAAEERkxAMAYStPOEYgBAMb09l5vgc4RSihNAwAQRGTEAABjKE07RyAGABhDIHaOQAwAMKZXBm5fMrKS4eOOBuJ/mH/kTp7urnf846PBXgIAIEBkxAAAY2zblh1gbTnQ44cbAjEAwBiuETvH7UsAAAQRgRgAYIzd+/eHetxus29jt1ZZWZlSUlLkcrmUlpamY8eO3XT85s2blZqaqujoaE2dOlWVlZV+f9+xY4csy+rXvv7664DOOxACMQDAmL7SdKDNid27d2vZsmVasWKFGhsblZOTo/z8fDU3Nw84vry8XCUlJSotLdVnn32m119/Xc8//7w+/PBDv3ExMTFqaWnxay6X67bPeyMEYgDAsLZ+/XotXbpUzzzzjFJTU7VhwwZNnDhR5eXlA45/55139Nxzz6mgoECTJ0/WwoULtXTpUq1Zs8ZvnGVZio+P92uBnPdGCMQAAGP6XoMYaJMkr9fr1zo7O/udr6urSw0NDcrNzfXrz83NVU1NzYBr7Ozs9MtsJSk6Olp1dXXq7u729XV0dCg5OVkTJkzQvHnz1NjYGNB5b4RADAAwxmRpeuLEiYqNjfW11atX9ztfW1ubenp65Ha7/frdbrc8Hs+Aa8zLy9Pbb7+thoYG2bat+vp6VVRUqLu7W21tbZKke++9Vzt27NAHH3ygXbt2yeVyac6cOTp37txtn/dGuH0JADAkXbx4UTExMb7PUVFRNxxrWZbfZ9u2+/X1WblypTwejzIzM2Xbttxut5YsWaK1a9cqPDxckpSZmanMzEzfMXPmzNHs2bP1q1/9Shs3bryt894IGTEAwBi71zbSpOubpb7ZBgrEcXFxCg8P75eFtra29stW+0RHR6uiokJXr17VF198oebmZk2aNEmjR49WXFzcgMeEhYXp/vvv92XEt3PeGyEQAwCMMXmNeDAiIyOVlpam6upqv/7q6mplZ2ff9NiIiAhNmDBB4eHhqqqq0rx58xQWNnBYtG1bTU1NSkhICPi830ZpGgBgTDCerFVcXKzCwkKlp6crKytLW7duVXNzs4qKiiRJJSUlunTpku9e4bNnz6qurk4ZGRn66quvtH79ep06dUo7d+70zfn6668rMzNT3//+9+X1erVx40Y1NTVp8+bNgz7vYBGIAQDDWkFBgdrb27Vq1Sq1tLRo+vTp2r9/v5KTkyVJLS0tfvf29vT06K233tKZM2cUERGhuXPnqqamRpMmTfKN+ctf/qKf/exn8ng8io2N1axZs3T06FE98MADgz7vYFn2HXy6Nm9fMuv4h/8Y7CUAgKTrtxrFxsbq5//n/8p1T8ytD7iJr696teqnY3X58mW/zVp3KzJiAIAxvPTBOTZrAQAQRGTEAABjyIidIxADAIzptW31BhhJAz1+uKE0DQBAEJERAwCMsW/zfcLfniOUEIgBAMbYshXoXbG2KE0DAIA7hIwYAGCM3Sv1Upp2hEAMADDGtg2UpkNs1zSBGABgjNO3J91ojlDCNWIAAIKIjBgAYIzda8sOMKUN9PjhhkAMADCGR1w6R2kaAIAgIiMGABjT22urN8DScqDHDzcEYgCAMdy+5BylaQAAgoiMGABgDC99cI5ADAAwhvcRO0dpGgCAICIjBgAYw2Yt5wjEAABjuH3JOQIxAMAYnqzlHNeIAQAIIjJiAIAxtm3gpQ8hlhITiAEAxtgGbl8KtUBMaRoAgCAiIwYAGMP7iJ0jEAMAjCEQO0dpGgCAICIjBgAY02tfb4HOEUoIxAAAYyhNO0dpGgCAICIjBgAYw0sfnCMjBgAY09v79xc/3H5zft6ysjKlpKTI5XIpLS1Nx44du+n4zZs3KzU1VdHR0Zo6daoqKyv9/r5t2zbl5ORozJgxGjNmjB5++GHV1dX5jSktLZVlWX4tPj7e8doJxAAAY/oy4kCbE7t379ayZcu0YsUKNTY2KicnR/n5+Wpubh5wfHl5uUpKSlRaWqrPPvtMr7/+up5//nl9+OGHvjGHDx/WokWL9Pvf/161tbVKSkpSbm6uLl265DfXfffdp5aWFl/74x//6Pj/jNI0AGBYW79+vZYuXapnnnlGkrRhwwYdOHBA5eXlWr16db/x77zzjp577jkVFBRIkiZPnqwTJ05ozZo1mj9/viTpN7/5jd8x27Zt03vvvadPPvlETz/9tK9/xIgRt5UFfxMZMQDAmL5d04E2SfJ6vX6ts7Oz3/m6urrU0NCg3Nxcv/7c3FzV1NQMuMbOzk65XC6/vujoaNXV1am7u3vAY65evaru7m6NHTvWr//cuXNKTExUSkqKFi5cqPPnzw/6/6oPgRgAYIzJQDxx4kTFxsb62kDZbVtbm3p6euR2u/363W63PB7PgGvMy8vT22+/rYaGBtm2rfr6elVUVKi7u1ttbW0DHvPyyy/re9/7nh5++GFfX0ZGhiorK3XgwAFt27ZNHo9H2dnZam9vd/R/RmkaADAkXbx4UTExMb7PUVFRNxxrWZbfZ9u2+/X1WblypTwejzIzM2Xbttxut5YsWaK1a9cqPDy83/i1a9dq165dOnz4sF8mnZ+f7/v3jBkzlJWVpSlTpmjnzp0qLi4e9PckIwYAGNOr669BDKjpekYcExPj1wYKxHFxcQoPD++X/ba2tvbLkvtER0eroqJCV69e1RdffKHm5mZNmjRJo0ePVlxcnN/YdevW6Ze//KUOHjyoH/zgBzf97iNHjtSMGTN07tw5J/9lBGIAgDkmS9ODERkZqbS0NFVXV/v1V1dXKzs7+6bHRkREaMKECQoPD1dVVZXmzZunsLC/h8U333xTb7zxhj7++GOlp6ffci2dnZ06ffq0EhISBr1+idI0AGCYKy4uVmFhodLT05WVlaWtW7equblZRUVFkqSSkhJdunTJd6/w2bNnVVdXp4yMDH311Vdav369Tp06pZ07d/rmXLt2rVauXKn/+I//0KRJk3wZ96hRozRq1ChJ0vLlyzV//nwlJSWptbVVv/jFL+T1erV48WJH6ycQAwCMCcaTtQoKCtTe3q5Vq1appaVF06dP1/79+5WcnCxJamlp8bunuKenR2+99ZbOnDmjiIgIzZ07VzU1NZo0aZJvTFlZmbq6uvTkk0/6neu1115TaWmpJOnLL7/UokWL1NbWpvHjxyszM1MnTpzwnXewLPsOPkvsH+YfuVOnCgnHP/zHYC8BACRdv9UoNjZWT/3v/1RE1OiA5uru/KvefeteXb582W+z1t2Ka8QAAAQRpWkAgDG8BtE5AjEAwBjevuQcgRgAYIzd2yv7dl6f9K05QgnXiAEACCIyYgCAMX3vFA50jlBCIAYAGMM1YucoTQMAEERkxAAAY7h9yTkCMQDAGAKxc5SmAQAIIjJiAIAxvepVrx3YfcC9Cq37iAnEAABj7N7AS8sBxvFhh9I0AABBREYMADCGzVrOEYgBAMbwQA/nCMQAAGN6e3vVG+BLGwI9frjhGjEAAEFERgwAMIZrxM4RiAEAxth2r+wA7z8K9PjhhtI0AABBREYMADCG0rRzBGIAgDkGArEIxN+d4x/+4508HQAAQx4ZMQDAmF7bwEsfQmyzFoEYAGAM14idY9c0AABBREYMADDGtntlB/iIylC7j5hADAAwhtK0cwRiAIAxPFnLOa4RAwAQRGTEAABjenul3gBLyyH2FkQCMQDAHLvXwGatEIvElKYBAAgiMmIAgDHsmnaOQAwAMIZd085RmgYADHtlZWVKSUmRy+VSWlqajh07dtPxmzdvVmpqqqKjozV16lRVVlb2G7Nnzx5NmzZNUVFRmjZtmvbu3RvweQdCIAYAGNNXmg60ObF7924tW7ZMK1asUGNjo3JycpSfn6/m5uYBx5eXl6ukpESlpaX67LPP9Prrr+v555/Xhx9+6BtTW1urgoICFRYW6tNPP1VhYaGeeuopnTx58rbPeyOWbduhVYwHABjn9XoVGxurjLzfaUTEyIDmutZ9RScPPKbLly8rJibmluMzMjI0e/ZslZeX+/pSU1O1YMECrV69ut/47OxszZkzR2+++aavb9myZaqvr9fx48clSQUFBfJ6vfroo498Yx555BGNGTNGu3btuq3z3ggZMQDAmJ5rV3StO7DWc+2KpOvB/Zuts7Oz3/m6urrU0NCg3Nxcv/7c3FzV1NQMuMbOzk65XC6/vujoaNXV1am7u1vS9Yz423Pm5eX55ryd894Im7UAAAGLjIxUfHy86j95ysh8o0aN0sSJE/36XnvtNZWWlvr1tbW1qaenR26326/f7XbL4/EMOHdeXp7efvttLViwQLNnz1ZDQ4MqKirU3d2ttrY2JSQkyOPx3HTO2znvjRCIAQABc7lcunDhgrq6uozMZ9u2LMvy64uKirrh+G+PHej4PitXrpTH41FmZqZs25bb7daSJUu0du1ahYeHO5rTyXlvhEAMADDC5XL1K/l+1+Li4hQeHt4vC21tbe2XrfaJjo5WRUWFfv3rX+u//uu/lJCQoK1bt2r06NGKi4uTJMXHx990zts5741wjRgAMGxFRkYqLS1N1dXVfv3V1dXKzs6+6bERERGaMGGCwsPDVVVVpXnz5iks7HpYzMrK6jfnwYMHfXMGct5vIyMGAAxrxcXFKiwsVHp6urKysrR161Y1NzerqKhIklRSUqJLly757hU+e/as6urqlJGRoa+++krr16/XqVOntHPnTt+cL774oh588EGtWbNGjz/+uN5//30dOnTIt6t6MOcdLAIxAGBYKygoUHt7u1atWqWWlhZNnz5d+/fvV3JysiSppaXF797enp4evfXWWzpz5owiIiI0d+5c1dTUaNKkSb4x2dnZqqqq0quvvqqVK1dqypQp2r17tzIyMgZ93sHiPmIAAIKIa8QAAAQRgRgAgCAiEAMAEEQEYgAAgohADABAEBGIAQAIIgIxAABBRCAGACCICMQAAAQRgRgAgCAiEAMAEET/H5i2C9exqPiAAAAAAElFTkSuQmCC"},"metadata":{}}],"execution_count":10}]}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment