From 975c27d5c32091116e4d86f62ea1f1b070c126f5 Mon Sep 17 00:00:00 2001 From: wassname Date: Sun, 18 Oct 2020 13:33:24 +0800 Subject: [PATCH] working --- notebooks/RNN_Timeseries_Seq2Seq.ipynb | 1008 ++++++++++++++++++++---- notebooks/RNN_Timeseries_Seq2Seq.py | 22 +- seq2seq_time/data/dataset.py | 47 +- seq2seq_time/predict.py | 4 +- 4 files changed, 898 insertions(+), 183 deletions(-) diff --git a/notebooks/RNN_Timeseries_Seq2Seq.ipynb b/notebooks/RNN_Timeseries_Seq2Seq.ipynb index 32754b1..e593842 100644 --- a/notebooks/RNN_Timeseries_Seq2Seq.ipynb +++ b/notebooks/RNN_Timeseries_Seq2Seq.ipynb @@ -1763,15 +1763,17 @@ }, { "cell_type": "code", - "execution_count": 167, + "execution_count": 208, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T05:10:11.164373Z", - "start_time": "2020-10-18T05:10:11.118220Z" + "end_time": "2020-10-18T05:25:49.686198Z", + "start_time": "2020-10-18T05:25:49.636704Z" } }, "outputs": [], "source": [ + "# These are the columns that we wont know in the future\n", + "# We need to blank them out in x_future\n", "columns_blank=['visibility',\n", " 'windBearing', 'temperature', 'dewPoint', 'pressure',\n", " 'apparentTemperature', 'windSpeed', 'humidity']" @@ -1779,11 +1781,11 @@ }, { "cell_type": "code", - "execution_count": 168, + "execution_count": 209, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T05:10:11.231829Z", - "start_time": "2020-10-18T05:10:11.166878Z" + "end_time": "2020-10-18T05:25:50.121493Z", + "start_time": "2020-10-18T05:25:50.044408Z" } }, "outputs": [ @@ -1791,8 +1793,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", - "\n" + "\n", + "\n" ] } ], @@ -1811,35 +1813,11 @@ }, { "cell_type": "code", - "execution_count": 172, + "execution_count": 211, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T05:10:48.082215Z", - "start_time": "2020-10-18T05:10:33.412624Z" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "180 ms ± 5.28 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)\n" - ] - } - ], - "source": [ - "%%timeit\n", - "for i in range(100):\n", - " ds_train[i]" - ] - }, - { - "cell_type": "code", - "execution_count": 169, - "metadata": { - "ExecuteTime": { - "end_time": "2020-10-18T05:10:11.286456Z", - "start_time": "2020-10-18T05:10:11.233988Z" + "end_time": "2020-10-18T05:26:12.804521Z", + "start_time": "2020-10-18T05:26:12.262822Z" } }, "outputs": [ @@ -1853,7 +1831,7 @@ " dtype=float32)" ] }, - "execution_count": 169, + "execution_count": 211, "metadata": {}, "output_type": "execute_result" } @@ -1867,11 +1845,11 @@ }, { "cell_type": "code", - "execution_count": 170, + "execution_count": 217, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T05:10:11.668935Z", - "start_time": "2020-10-18T05:10:11.288600Z" + "end_time": "2020-10-18T05:28:32.819018Z", + "start_time": "2020-10-18T05:28:32.444504Z" } }, "outputs": [ @@ -2075,7 +2053,7 @@ "2012-10-16 16:00:00 1.0 " ] }, - "execution_count": 170, + "execution_count": 217, "metadata": {}, "output_type": "execute_result" }, @@ -2108,11 +2086,11 @@ }, { "cell_type": "code", - "execution_count": 171, + "execution_count": 218, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T05:10:11.730692Z", - "start_time": "2020-10-18T05:10:11.670641Z" + "end_time": "2020-10-18T05:28:32.877098Z", + "start_time": "2020-10-18T05:28:32.821098Z" } }, "outputs": [ @@ -2316,7 +2294,7 @@ "2012-10-20 16:00:00 0.0 " ] }, - "execution_count": 171, + "execution_count": 218, "metadata": {}, "output_type": "execute_result" } @@ -2335,11 +2313,11 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 219, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:13:19.024883Z", - "start_time": "2020-10-18T03:13:18.985567Z" + "end_time": "2020-10-18T05:28:35.303700Z", + "start_time": "2020-10-18T05:28:35.252988Z" }, "lines_to_end_of_cell_marker": 2, "lines_to_next_cell": 0 @@ -2405,11 +2383,11 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 220, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:13:22.376133Z", - "start_time": "2020-10-18T03:13:19.027681Z" + "end_time": "2020-10-18T05:28:36.458991Z", + "start_time": "2020-10-18T05:28:36.411733Z" }, "lines_to_next_cell": 0 }, @@ -2425,7 +2403,7 @@ ")" ] }, - "execution_count": 21, + "execution_count": 220, "metadata": {}, "output_type": "execute_result" } @@ -2443,11 +2421,11 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 221, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:13:22.410148Z", - "start_time": "2020-10-18T03:13:22.378324Z" + "end_time": "2020-10-18T05:28:36.639236Z", + "start_time": "2020-10-18T05:28:36.588568Z" } }, "outputs": [], @@ -2458,11 +2436,11 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 222, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:13:22.551272Z", - "start_time": "2020-10-18T03:13:22.412202Z" + "end_time": "2020-10-18T05:28:36.882259Z", + "start_time": "2020-10-18T05:28:36.760903Z" } }, "outputs": [ @@ -2493,7 +2471,7 @@ "1" ] }, - "execution_count": 23, + "execution_count": 222, "metadata": {}, "output_type": "execute_result" } @@ -2545,11 +2523,11 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 223, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:13:46.876098Z", - "start_time": "2020-10-18T03:13:46.830008Z" + "end_time": "2020-10-18T05:28:38.519148Z", + "start_time": "2020-10-18T05:28:38.459802Z" } }, "outputs": [], @@ -2644,11 +2622,11 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 224, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:15:16.972584Z", - "start_time": "2020-10-18T03:13:46.913019Z" + "end_time": "2020-10-18T05:29:27.996030Z", + "start_time": "2020-10-18T05:28:38.727640Z" } }, "outputs": [ @@ -2666,25 +2644,17 @@ "metadata": {}, "output_type": "display_data" }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "/media/wassname/Storage5/projects2/3ST/seq2seq-time/seq2seq_time/data/dataset.py:55: FutureWarning: Support for multi-dimensional indexing (e.g. `obj[:, None]`) is deprecated and will be removed in a future version. Convert to a numpy array before indexing instead.\n", - " tstp = (t - now)[:, None]\n" - ] - }, { "name": "stdout", "output_type": "stream", "text": [ - "Start: Test Loss = 1.09\n" + "Start: Test Loss = 1.57\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "d56643c9fb0045cca2e911ee83573c80", + "model_id": "acb491baed204124834667fa91f94cc9", "version_major": 2, "version_minor": 0 }, @@ -2713,7 +2683,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Epoch 1/8: Training Loss = 1.30\n" + "Epoch 1/8: Training Loss = 0.96\n" ] }, { @@ -2734,14 +2704,57 @@ "name": "stdout", "output_type": "stream", "text": [ - "Epoch 1/8: Test Loss = 1.07\n", + "Epoch 1/8: Test Loss = 1.02\n", "--------------------------------------------------\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "3a2766c65aea418bb80d4548778a8618", + "model_id": "", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "HBox(children=(HTML(value='train'), FloatProgress(value=0.0, max=297.0), HTML(value='')))" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 2/8: Training Loss = 0.71\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "HBox(children=(HTML(value='test'), FloatProgress(value=0.0, max=9.0), HTML(value='')))" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 2/8: Test Loss = 1.21\n", + "--------------------------------------------------\n" + ] + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "7f6b5952ff18439c8cb41a80a15e45c2", "version_major": 2, "version_minor": 0 }, @@ -2765,13 +2778,13 @@ "1" ] }, - "execution_count": 27, + "execution_count": 224, "metadata": {}, "output_type": "execute_result" }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -2797,23 +2810,23 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 232, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:20:30.913161Z", - "start_time": "2020-10-18T03:20:22.210516Z" + "end_time": "2020-10-18T05:30:29.297091Z", + "start_time": "2020-10-18T05:30:26.459739Z" } }, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { - "model_id": "820cbbfac250476597dafb2e6b43fc9f", + "model_id": "0592c5262ef84caea4e412fff1bc878b", "version_major": 2, "version_minor": 0 }, "text/plain": [ - "HBox(children=(HTML(value='predict'), FloatProgress(value=0.0, max=12.0), HTML(value='')))" + "HBox(children=(HTML(value='predict'), FloatProgress(value=0.0, max=70.0), HTML(value='')))" ] }, "metadata": {}, @@ -2827,52 +2840,632 @@ ] }, { - "ename": "AttributeError", - "evalue": "'StandardScaler' object has no attribute 'scale_'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0moutput_scaler\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtransformers\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m4\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mds_preds\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mpredict\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmodel\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mds_test\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbatch_size\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0;36m6\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdevice\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mdevice\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0moutput_scaler\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;32m/media/wassname/Storage5/projects2/3ST/seq2seq-time/seq2seq_time/predict.py\u001b[0m in \u001b[0;36mpredict\u001b[0;34m(model, ds_test, batch_size, device, scaler)\u001b[0m\n\u001b[1;32m 57\u001b[0m \u001b[0;31m# undo scaling on y\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 58\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 59\u001b[0;31m \u001b[0mds_preds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'y_pred_std'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mds_preds\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0my_pred_std\u001b[0m \u001b[0;34m*\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscale_\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 60\u001b[0m \u001b[0mds_preds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'y_past'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minverse_transform\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mds_preds\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0my_past\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 61\u001b[0m \u001b[0mds_preds\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'y_pred'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0minverse_transform\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mds_preds\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0my_pred\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mAttributeError\u001b[0m: 'StandardScaler' object has no attribute 'scale_'" - ] + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.Dataset>\n",
+       "Dimensions:        (t_ahead: 192, t_behind: 192, t_source: 4439)\n",
+       "Coordinates:\n",
+       "  * t_source       (t_source) datetime64[ns] 2013-11-19T13:00:00 ... 2013-11-...\n",
+       "  * t_ahead        (t_ahead) timedelta64[ns] 00:00:00 ... 3 days 23:30:00\n",
+       "  * t_behind       (t_behind) timedelta64[ns] -4 days +00:00:00 ... -1 days +...\n",
+       "    t_target       (t_source, t_ahead) datetime64[ns] 2013-11-19T13:00:00 ......\n",
+       "    t_past         (t_source, t_behind) datetime64[ns] 2013-11-15T13:00:00 .....\n",
+       "    t_ahead_hours  (t_ahead) float64 0.0 0.0 1.0 1.0 2.0 ... 94.0 94.0 95.0 95.0\n",
+       "Data variables:\n",
+       "    y_past         (t_source, t_behind) float32 0.44799998 0.318 ... 0.454 0.505\n",
+       "    nll            (t_source, t_ahead) float32 1.6867466 1.3765243 ... 3.984994\n",
+       "    y_pred         (t_source, t_ahead) float32 0.36737543 ... 0.47121257\n",
+       "    y_pred_std     (t_source, t_ahead) float64 0.2215 0.2334 ... 0.3653 0.3141\n",
+       "    y_true         (t_source, t_ahead) float32 0.074000016 0.118 ... 1.2180002
" + ], + "text/plain": [ + "\n", + "Dimensions: (t_ahead: 192, t_behind: 192, t_source: 4439)\n", + "Coordinates:\n", + " * t_source (t_source) datetime64[ns] 2013-11-19T13:00:00 ... 2013-11-...\n", + " * t_ahead (t_ahead) timedelta64[ns] 00:00:00 ... 3 days 23:30:00\n", + " * t_behind (t_behind) timedelta64[ns] -4 days +00:00:00 ... -1 days +...\n", + " t_target (t_source, t_ahead) datetime64[ns] 2013-11-19T13:00:00 ......\n", + " t_past (t_source, t_behind) datetime64[ns] 2013-11-15T13:00:00 .....\n", + " t_ahead_hours (t_ahead) float64 0.0 0.0 1.0 1.0 2.0 ... 94.0 94.0 95.0 95.0\n", + "Data variables:\n", + " y_past (t_source, t_behind) float32 0.44799998 0.318 ... 0.454 0.505\n", + " nll (t_source, t_ahead) float32 1.6867466 1.3765243 ... 3.984994\n", + " y_pred (t_source, t_ahead) float32 0.36737543 ... 0.47121257\n", + " y_pred_std (t_source, t_ahead) float64 0.2215 0.2334 ... 0.3653 0.3141\n", + " y_true (t_source, t_ahead) float32 0.074000016 0.118 ... 1.2180002" + ] + }, + "execution_count": 232, + "metadata": {}, + "output_type": "execute_result" } ], "source": [ - "# TODO get working\n", - "output_scaler = scaler.transformers[-4][1]\n", - "ds_preds = predict(model, ds_test, batch_size*6, device=device, scaler=output_scaler)" + "ds_preds = predict(model, ds_test, batch_size, device=device, scaler=output_scaler)\n", + "ds_preds" ] }, { "cell_type": "code", - "execution_count": 64, + "execution_count": 234, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:22:35.990991Z", - "start_time": "2020-10-18T03:22:35.937050Z" + "end_time": "2020-10-18T05:30:31.698081Z", + "start_time": "2020-10-18T05:30:31.648810Z" } }, - "outputs": [ - { - "ename": "AttributeError", - "evalue": "'StandardScaler' object has no attribute 'mean_'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0moutput_scaler\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mscaler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtransformers\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m4\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;31m# output_scaler.scale_\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 3\u001b[0;31m \u001b[0moutput_scaler\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmean_\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m: 'StandardScaler' object has no attribute 'mean_'" - ] - } - ], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, "outputs": [], "source": [ "# TODO Metrics... smape etc" @@ -2880,14 +3473,39 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 237, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:12:49.084984Z", - "start_time": "2020-10-18T03:12:40.700Z" + "end_time": "2020-10-18T05:30:53.518005Z", + "start_time": "2020-10-18T05:30:52.725027Z" } }, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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Fu0okkhZWRlDhw6lf//+DB06lLKysnRL0mg0aWDz5s2UlZVx4YUXcvDBB3PWWWfh8XgYPXo0t912G7NmzeL555/n7bff5sgjj2TatGmcffbZNDU1AfDmm29SVlbGrFmzePHFkBs7JhXtKJKI2+1m1apVLFq0iFWrVuF2u9MtSaPRpIn169dz+eWX8/nnnzNo0CAeeughwJjO+uGHH3Lsscdy++23884777B8+XKmT5/OPffcg9fr5bLLLuNf//oXixcvprKyMuXa9fTYJON2u5k2bVq6ZWg0GuC662DlysSec8oUuO++6MeNHDmSmTNnAjB37lz++Mc/AvDd7xrbuX/88cesXbvWf0xLSwtHHnkk5eXljBkzhrFjx/pfO3/+/MR+iChoR6HRaDQpIHg2knm/f//+gLEG4rjjjuPZZ58NOG7lypVpn7WlHYVGo+kz2Bn5J4uKigo++ugjjjzySJ599llmzZrFihUr/M8fccQRXHXVVWzcuJEDDzwQj8fDtm3bKCsr46uvvmLTpk0ccMABXRxJKtA1Co1Go0kB48eP54knnuDggw+mvr6eH/zgBwHPFxcX89e//pXvfe97HHzwwRxxxBGUl5fjcrmYP38+J598MrNmzWLUqFEp164jCo1Go0kBGRkZPPzwwwGPbd68OeD+17/+dT755JMurz3xxBPTOr1eRxQajUajiYh2FBqNRpNkRo8ezerVq9MtI260o9BoNBpNRLSj0Gg0Gk1EtKPQaDQaTUS0o9BoNBpNRLSj0Gg0miSydetWjjnmGMaPH8/EiRO5//77bb925cqVvP7662GfHz16NLW1tYmQGRG9jkKj0fQp3n8/sec7+ujIz2dlZXH33Xczbdo09uzZw6GHHspxxx3HhAkTop575cqVLFu2jJNOOikxYuNERxQajUaTRIYNG+ZvDDpw4EDGjx/P9u3buxz3/PPPM2nSJA455BDmzJlDS0sLt9xyC3//+9+ZMmUKf//736mrq+P4449n6tSpfP/730cplZLPoCMKjUajSRGbN29mxYoVzJgxo8tzt912G2+99RbDhw+nsbGRnJwcbrvtNpYtW8aDDz4IwDXXXMOsWbO45ZZb+Pe//52yLrI6otBoNJoU0NTUxJlnnsl9993HoEGDujw/c+ZMLrroIh599NGwu90tWrSIuXPnAnDyySeTn5+fVM0m2lFo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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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pNokg8HQx9m0aRMVFRVccMEFHHzwwZx11lm4XC7Gjh3LTTfdxKxZs3j++ed58803OfLII5k2bRpnn302e/fuBeDf//43FRUVzJo1i7//3e/CfDFhhMAHp9PJ6tWrWbRoEatXr8bpdKbaJIPB0A/44osvuOSSS/jss88YOnQoDzzwAKDTPZcsWcJxxx3HzTffzNtvv82KFSuYPn06d911F263m4svvpiXX36ZxYsXU11dHXfbTPqoH5xOJ9OmTUu1GQaDIc78/OewalV8zzllCtx9d+j9Ro8ezVFHHQXAvHnzuPfeewH47nf1ctofffQRn3/+uXeftrY2jjzySCorKxk3bhz777+/99gFCxbE9T0YITAYDIYk4JvNYz0fNGgQoOcAHH/88TzzzDM99lu1alXCs56MEBgMhgFDOC33RFFVVcWHH37IkUceyTPPPMOsWbNYuXKl9/UjjjiCyy+/nI0bNzJ+/HhcLhdbt26loqKCr7/+mi+//JL99tuvl1DEAzNGYDAYDEngwAMP5IknnuDggw+moaGBH//4xz1eLykp4fHHH+d73/seBx98MEcccQSVlZU4HA4WLFjASSedxKxZsxgzZkzcbTM9AoPBYEgCGRkZPPjggz22bdq0qcfzb3zjG3z88ce9jv3Wt76V0FR20yMwGAyGAY4RAoPBYEgwY8eOZc2aNak2IyBGCAwGg2GAY4TAYDAYBjhGCAwGg2GAY4TAYDAYBjhGCAwGgyGBbNmyhWOPPZYDDzyQiRMncs8994R97KpVq3jttdcCvj527Fjq6upittHMIzAYDAOK99+P7/mOOSb461lZWdx5551MmzaNPXv2cOihh3L88cdz0EEHhTz3qlWrWL58OSeeeGJ8jA2A6REYDAZDAhkxYoS3iOWQIUM48MAD2bZtW6/9nn/+eSZNmsQhhxzCnDlzaGtr44YbbuC5555jypQpPPfcc9TX1zN37lymTp3Kj370I5RScbHR9AgMBoMhSWzatImVK1cyY8aMXq/ddNNNvPHGG4wcOZKmpiZycnK46aabWL58Offffz8AV1xxBbNmzeKGG27g1VdfjVsVUtMjMBgMhiSwd+9ezjzzTO6++26GDh3a6/WjjjqKCy+8kIceeijgamWLFi1i3rx5AJx00kkUFBTExTYjBAaDwZBg2tvbOfPMM/n+97/PGWec4XefBx98kJtvvpktW7YwZcoU6uvr/e6XiJLUCRMCEXlURHaKiN951SJyjIjsEpFVnscNibLFYDAYUoVSih/84AcceOCB/PKXvwy435dffsmMGTO46aabKC4uZsuWLQwZMoQ9e/Z495kzZw5PP/00AK+//jqNjY1xsTGRPYLHgW+F2GexUmqK53FTAm0xGAyGlLB06VKeeuop3n33XaZMmcKUKVP8poReddVVTJ48mUmTJjFnzhwOOeQQjj32WD7//HPvYPGNN97IokWLmDZtGm+++Sbl5eVxsVHiNers9+QiY4FXlFKT/Lx2DHClUurkSM45ffp0tXz58rjYZzAY+j/r1q3jwAMPTLUZScXfexaRT5RS0/3tn+oxgiNF5FMReV1EJqbYFoPBYBiQpDJ9dAUwRim1V0ROBP4J7O9vRxG5BLgEiFtXyGAwGAyalPUIlFK7lVJ7Pf+/BmSLSHGAfRcopaYrpaaXlJQk1U6DwWDo76RMCESkTDx5UCJyuMcW//lSBoPBYEgYCQsNicgzwDFAsYhsBW4EsgGUUg8CZwE/FpEOoAU4RyVy5NpgMBgMfkmYECilvhfi9fuB+xN1fYPBYDCER6qzhgwGg6Ff09TUxAMPPJBqM4JihMBgMBgSSCAhCFRPKBUYITAYDIYEcu211/Lll18yZcoUDjvsMI499ljOPfdcJk+ezKZNm5g0qXu+7Z/+9Cd+97vfAbrkxLe+9S0OPfRQZs+eTWVlZcJsNGWoDQaDwQeXy0VlZSUVFRU4nc6YzvXHP/6RNWvWsGrVKt5//31OOukk1qxZw7hx49i0aVPA4y655BIefPBB9t9/f5YtW8Zll13Gu+++G5MtgTBCYDAYDDZcLheTJ0+mpqaG0tJSVq9eHbMY2Dn88MMZN25c0H327t3LBx98wNlnn+3d1traGjcbfDFCYDAYDDYqKyupqamhubmZmpoaKisrvSuMxYNBgwZ5/8/KyqKrq8v73O12A9DV1UV+fj6rVq2K23WDYcYIDAaDwUZFRQWlpaUMGjSI0tJSKioqYjqfbylpO6WlpezcuZP6+npaW1t55ZVXABg6dCjjxo3j+eefB3Qp608//TQmO4JhegQGg8Fgw+l0snr16riNERQVFXHUUUcxadIk8vLyKC0t9b6WnZ3NDTfcwIwZMxg3blwP0Xn66af58Y9/zM0330x7ezvnnHMOhxxySEy2BCKhZagTgSlDbTAYIsGUodakcxlqg8FgMKQYIwQGg8EwwDFCYDAYDAMcIwQGg8EwwDFCYDAYDAMcIwQGg8EwwDFCYDAYDAMcIwQGg8EwwDFCYDAYDAlm06ZNHHjggVx88cVMnDiRuXPn0tLSwqpVqzjiiCM4+OCDOf3002lsbGTnzp0ceuihAHz66aeICFVVVQDst99+uFyuuNtnhMBgMBiSwIYNG7j88stZu3Yt+fn5vPjii5x//vncdtttfPbZZ0yePJnf//73DB8+HLfbze7du1m8eDHTp09n8eLFbN68meHDh8e1EqqFqTVkMBgGFsccE9/zvf9+WLuNGzeOKVOmAHDooYfy5Zdf0tTUxNFHHw3ABRdc4C07PXPmTJYuXcqiRYu4/vrr+fe//41SitmzZ8fXdg+mR2AwGAxJIDc31/t/ZmYmTU1NAfedPXu2txdw6qmn8umnn7JkyRLmzJmTENtMj8BgMAwswmzBJ5phw4ZRUFDA4sWLmT17Nk899ZS3dzBnzhx+85vfMGfOHDIyMigsLOS1117jD3/4Q0JsMUJgMBgMKeKJJ57g0ksvxeVyse+++/LYY48BMHbsWABvD2DWrFls3bqVgoKChNhhylAbDCmktRVsEQNDAjBlqDWmDLUh4bhcLlasWJGQ1LZYSFe7LBoaUm1B3yDdP8e+jgkNGWIm0Yt99ze77DQ3m15BKPrC59jXMT0CQ8z4W+w7HUhXu6C7hdvU5KK5OdXWpDfp/DkC2Nae77MYITDETLwX+44X6WqX1cKdM2cOp502mS1bXKRTxCPdhg2tz9HpjP5zTORYaGdnwk4dFdG8VxMaMsRMvBf7jhfpape9hdvZWcOyZZUMHz6NdDCvpUWHq4qLU21JN06nk+XLV7NkSSXf/Gbkn6PD4aC+vp6ioiJEJO72dXRAdnbcTxsVSinq6+txOBwRHWeEwBAXnE4n06ZNS7UZvUhHu6wWbk1NDUOHllJeXkFbW6qtgpoa+PprKC9PtSW9qatzMmFCdGI5atQotm7dSm1tbfwNA9zuLjIyOsjKyiIjI/VBFofDwahRoyI6xgiBwZBkrJ7KihWV7N1bgcPhTAshaG8Ht1v/TSeam2Hbtuh7KdnZ2YwbNy6+Rnmor9dhvt27+/ZAdurly2AYgDidTsaOnYbDoZ1GOghBR4f+m25CYNmTDvfIl08/raSxMX0HssMlpBCIyJEi8mcR+UxEakWkSkReE5HLRWRYMozsb5icaAOAvdRMOji5dBWCdLULYOTICgoKYhvITgeChoZE5HVgO/Av4BZgJ+AAJgDHAv8SkbuUUi8l2tD+Qqw50S6XK+0GPw3RsWdP9//pIASWo003h5vOQtDZ6eTRR1eTnV3JkUf23d9kqDGC85RSdT7b9gIrPI87RSSN8gvSH3850eEOZpqJNf0Ly8FBeghBujpcy66ODp2znwbjsV6am8HhcDJmTHpkfUVL0FvqRwSi2sfQTSy57ek+scYQPkr1zD/v7Ex9Pnq6CwGkl21K6XRb6Bnm64uEpa0icoaIbBCRXSKyW0T2iMjuRBvXH7EyRhYtWhRxiz5dJ0gZIsfu3Czq65Nvh510Dw1Betlm9VAAdu9OvZDHQrjpo7cDpyil1iXSmIFCtLnt6TpByhA5/oRgyxYYPjz5tlhYNnV2plcIxn6vWlpg8ODU2WLH7viV0qm3gwalzp5YCPejrolUBETkURHZKSJrArwuInKviGz0ZCSl16yfNMUSESMC6Us4yWD+hCDVNYfsNrndqbPDF18hSBd8ewD+PtO+QlAh8ISEzgCWi8hzIvI9a5tnezAeB74V5PX/Afb3PC4B/i8Cuw2GtGXz5u7/A6UK+3MaXV2pC31YvQC328X69Suoq0uf1Gb7vUqnjOv+JAShQkOn2P53AXNtzxXw90AHKqUWicjYIOc+FXhS6QpJH4lIvoiMUErtCGGTwZC2tLRAnSd9IliWVyCn0daWmro1HR1aBObPn0xjYw3Dh5eybl1istJaWiAvL/z97Q43kUIQaThswAiBUuqiBF57JLDF9nyrZ5sRAkOfZe9e7SDc7uCpwsGEIBVx5vZ2qKrSs2Td7mZqayNLbQ6Xzk7YuhX23z/8Y5LVI9i2DUaPDn//ASMEFiJSAlwMjLUfo5SaH8O1/ZUB9Fs/VUQuQYePKE/HilgGA8AxxzDEDfzxfZqbexaX883yCuQ0WluTY6ovbW1QXq5nyTY21lBYmJistJYW2LkzeiFI5FyCLVtgxAjICjOFxvcz7PdCgJ5ZvBh4G4hXktRWwK6/o9CzmHuhlFoALAC9ZnGcru8XM3PXEAudnnTC5mYoKgqc5RWsR5AK2tv1xKhHH11NVVUlEyYk5vtvFbVzuyHcSsn+HG5OTnzt6urS937vXsjPD++YAdcjAJxKqWvifO2XgJ+IyLPADGBXqscHzMxdQ6x02YQAAqcKp6MQgBaDCROmhd0qjhQrG2nv3vCEoKOj90I5icjXt+77QBWCcDtYr4jIiZGcWESeAT4EDhCRrSLyAxG5VEQu9ezyGvAVsBF4CLgskvMnAjNz1xArXR7nsHdv8P3STQh8r5uoyVF2IQgHf/cpEQ7XLgTh0p+EIFTRuT3ouL0A14tIK9Duea6UUkMDHauU+l6wc3uyhS6P2OIE4hvTLS8vZ8WKFd5YaTxDRiYE1T+xWq8uV/BYdiCHn6r0Ud/rWiUwMjPjex1LCMKdM+Hvfgw0IWhsBKcTcnMTc34IHRoqVEql0aTuxGKfuVteXs6MGTOoqamhpKQEgNra2riEjEwIqv9j1aEJlAEUaMJWuggBaMcWbyGwnGW4PZ9k9wgi6ZElSwi2b9fhqpEjE3N+CB0a+lBE/ukJ6YxNnBnpgxXT/eKLL9ixYwfNzc1UV1fHNWRkQlADg2BOJVB2UKrCC/5sTYQtkRa287dfIsJW1ucRiRAnSwja2mDXrsSc2yJU9dHpwM88T+8WkY9F5H9FZK6IJLCjklpcLhfz5s3D7XYjIgwfPjyuxd5M8bj+jTU7t6nJf9J7a2v3oLIvqRKCZDlc65zp1iOwzqlU+OdPVvpoe3viq5uGzA1QSm0GHgQeFJFsYDa6dMTNIlKrlDopsSYmn8rKSmpra1FKkZuby4033si3v/1tqqqq4hLTN8Xj+i9dXV0hZ+cGq+NjZcmIv1k2CSRZsXj72gLhvM9k2WUXvfb28OYS+Aple3ti5ji0t+tHIsZsLCIyWSnVrpR6Vyl1tVLqcDyTvPobVovd6XTS2dnJT3/6U2bMmBFXp22Kx/VP3K2uXrNze+0ToqBbKnoF/lr/yXC4oUhWT8XeQws3POTPjnhnfdl7KIkcPwp3PYKjROQtEVkvIl9ZD6XUtsSZljqsFvuCBQvIycnB5XKxfft2Vq5cmWrTDGmOI9dJQUEpDscgior8h/1CzR5OthB0dvbO1U+EHV1dkTvcZIWGIhWoQHbEu2qrfR5FyoUAeAS4C5gFHGZ79FucTienn346w4cPR0RobW1l3rx5ZsF5Q1AyMjJ49NHV3HPPIl580X82WKgfdCqEIJLt8bpOtD2CdBaCeJcIsduSyDkm4QrBLqXU60qpnUqpeuuROLPSA6fTycKFC3E4HCilqK2tNRk+hpB0z871H/YL5Wji2fLb7rdoS08COdZ4O1zf80XbI0jkIDbEFhpKpBAkskcQakKZNTf+PRG5A1122vtWlVIrEmdaejB16lRGjBjht3CYwRCMaCeNxcsBNzTAl19CWVnwAcxkCUE0PYJ0HbvwV/oC+m6PINTY+J0+z6fb/lfAN+JrTvphMnwM0ZJqIaiv1w6usRGKigLvF6iFna49gkQ4RPvYRTjvO1nVY9OiR6CUOjZxl+47RLvGsGFg09WlHYNvaYBQjixeP/iGBv139+7gQpCsukfx6hEkQgii6RH4I5H3LGWDxSJSLyKvisivReQYEenXzeFAywoaDNHir6ZOqB90PGLgbW3d6/uGqp8T6Hrxbt1G0yPwZ1silvSMlxAkIpxmTVDctStxfilUaGgccAQwE7geOFREvgI+AJYqpf6WMMuSjG/9n2XLlsVtAplh4NLcDIWF3c+7ukI7+ngIgT2NMdpKqPEWgkh7BL7ppnZaW+O3pKdS8UlrDbY9Wvbu7V4+tKiolPXrE1OXLFSJid1KqTeVUr9TSs0FyoEngJOAZ+JuTQqx1/+prq5mypQpzJkzh8mTJ5segiFqfHsE0baCI8XqDYB2msGuGyx9NJ6OLVIhCHYf4hmCiSZklSwh2Lixe/nQhobE1SULFRraR0TOEpG7RGQx8G9gPPAbYN+EWJQi7PV/CgoKaGxsNEXhDDHj24aIxclEgu/EJrswRHK9ePYKInW46WoXBLYtWC8mGsaMqfBOUEzU8qEQOjS0FVgB/C9wrVIqRctmJJ5AJahNyqghFnwdcjgt2Xj3CCC44wzmcN3uwKW0I8XXQcbSI4inEPjaZZV1CFZvKNg9i+dSmjk53cuHTpyYuDB1KCE4CjgSOB34pYhsQq869iGwXCmVoqW2E4M9O8ikjBriQVtbz0Jk4VSRjPcYAQR3nKlyuJ2dwYu0pSo0BKELzyVLCLq6uico5uXF55z+CJU+ajn9uwA8axKcgh4nGAWEufx038OkjBrihdutV5gCndsfikQIQTDHGcypxdPh+guZtLcHXnkrmF3xzBoKJATBHG8oIYgXiVoy1JeQxVZFpAKdNTQT3UMoQIvDg4k1zWDoH1hC0NYW3hKN8XAkvo4yWMs+mLOPp8ONVAiCOcFEO9tYwlb9TghEpA7YgU4XXQz8USm1MRmGGQz9hUgXbI/1x9/Z2fscwYQgmNNLRss7kv3DOS5SohGCgdYj2E8ptUtECpVSDfYXRGScUurrBNpmMPQL9uzRf8NdsD3WH7+/Fn469wgCkazQUKR2QfJ6BPHMQApGqHkE1kqZL4vIUGu7iBwEvJxIwwyG/sKOHfDVV+ELgVKxiUEkQtDe7r94mv31eOHPqQVzmql0tqHO3996BOGWob4VLQaDReRQ4HlgXuLMMhj6F9u365o/4RJvIbDqHvmSzJLYkba8g90DK+MoHkQjBANqjMBCKfWqZ73iN4EhwGlKqQ0Jtcxg6Ed0dETmIOItBKDHKlJVAA8iF4JwRCrQQHMk+OsRxTJGEGzyXqQkKzQUarD4PnS5aYuhwFfAT0UEpdQViTTOYBioxCIEgZyY2w3DhvXcFkoIrNpI8Vg0PdKWdzjOOB5CEO8eQbghwFB0dQUP28WTUD2C5T7PP0mUIQMFl8tlJqrFkf56P2MJLwRy7v5aquEuF5koIYi1RxAPIhWCUJ9NS0vwiXLhkqywEISeUPZEsgwZCPhWOF29OjGVBBNBOjrcvnw/Q5GoHoEv4UwYa2sDRxymjsa7R5BIIYh27AJ0K97lgsGD429XoghVdO5lETnFMz7g+9q+InKTiMxPnHn9C3uF075UzM5yuOlWjbWv3s9wiMXJxVsIGhujt8VOvHsE8Sp/Ec9sJot4jBMks0cQqvNyMTAbqBSRj0XkNRF5V0S+Bv4CfKKUejThVvYT7BVO+1Ixu3R1uH31foZDLEIQyIlFKwQ7dkRvi51IhMAq/BaMRApUrOmh/u51pKRTaKgauBq42lNnaATQAqxXSqVHs7CP8eSTTwIwderUPhPGsBxuulVj7c/rSccyRhBsoRmlQKR7WzhC4HbrUEestzcShxuOEDY1xScW72uX2+2iqqqSqVMrGDq095sOx0HHo7eSzNBQWOmjIvITYKFSalNizem/+Itn9xXS2eGmc3FAy6GUl1fgcER2zxIRGlJKO357pk24ReX27IlNCJTynwETqORzuAv47NnTOxMqUuwO1+3uXhHsD38oZe3a3uNOyeoRpM0YgY0yYLmI/E1EviVib1MYwiFdwyvhYjncdBKBdMZyKD/72Rzmz5+M2x1ZBzraHkGoWcnRrI8AkU2G80dXV/fau773wp8N4QphPFI17QJVVdW9ItjOnf5/p/2xRxCWECilfgPsDzwCXAhsEJFbRWS/BNrWr+jP8WxDb+wOpbGxhqqqyIQ/2h5BKAGxC0Go8hJ2rHpJ0WKtvetPGKOZ8dx93tjsgp4Ot7y8e0WwkhL/v9NwRLqvCUFYoSEApZQSkWqgGuhAl6N+QUTeUkpdnSgD+wvpHF4xxB/LoTQ21lBQUEp5eWTCH22PIJJMm0jWGog1C2bdut7COGHCtF42WSSzR2B3uA5H94pg3/ym/99puCm3sY5fpJ0QiMgVwAVAHfAwcJVSql1EMoAN6AFlQwjSOZ5tiC92h5LMMYJQAmJv2UciBO3tsc0w3n//wMKYTkIA3SuCBXqv4d631tbgi9tEalciCbdHUAycoZTabN+olOoSkZPjb5bB0HewJtsd0tUFZOB2u9i4cSUA48dPjVgEIHohCHXcrl3d/0ca7mlpiX6SVDBh9CcE4Trbjg79nrN7zXQKn0AON1B4J1zb2tr6nxDcDSAihbZte5RS7UqpdXG3KgWk48zZdMHcm8DYs8He7uxk/H7TuOiiidTU6DZTaekYHntsbcRi0NnZO9UzHEL1CNraulNBw1k/2Y7bHb0Q2Nfe7T6fzqpyOiuAnvcnEiFsbU2MEARy+OEKQawzn9NRCFYAo4FGQIB8YIeI7AQuVkr16RpE/blUQayYexMcezZYe0YGe/Y00NBQjfKMwjY09IyHR0J7e+SLoIczttDYqFuq9t5BOMSSEukvV99K0ywqKmX9+p7fK7uzDZWGG4tA+bPNIh49glhIp5nFFv8GTlRKFSulioD/Af4GXAY8EOggT6rpFyKyUUSu9fP6MSKyS0RWeR43RPMmYiXZqZ0ul4sVK1akTamGYPT1tNdEY88Gy87JYciQQgoLyxARRITCwsgHii2icSThCEFdnX5E6mjiKQT2rKr6+t7fK6s1HU4abqwZOpEIgVLht/RjFYJ07BFMV0pdaj1RSr0pIrcqpX4pIn4LwYpIJvBn4HhgK/CxiLyklPrcZ9fFSqmUjjMkc+ZsX2thp+us4nTBng12yM9/zp7dGTz22NqYxwggOkcS7ozcaMIWsQiBr+j4ZlXtv3/P75X13v2l4fr2rmKdvBUohba9vXfmTyQpt/1RCBpE5BrgWc/z7wKNHmcfyNzDgY1Kqa8ARORZ4FTAVwhSTjJTO/21sNM5k8ikvYbGmw3m8RgOh5NJk46K+byJ6hEoFV3+fTx7BL6DxxkZ3d8re52hcNJwYxWCYA7XN/Mnks+kPwrBucCNwD89z5d4tmUC3wlwzEhgi+35VmCGn/2OFJFPge3AlUqptWHaFFeSldrZF1vYoe6NGUxODIkSgmiJJQTjz6nZB4/dbhg0SG+3t7rDScNNVGjIOrddCCK5Vr8SAk+r/26lVKA1ijcGOtTPNt9O1QpgjFJqr4iciBaa/f3YcAlwCUB5eXkok9Oa/tbC7muhrr5EuglBLHMJQjk1e6ve19n6ZhsFOzYagtnme+5IhKAvZQ2FHCxWSnUCJSISYf4CW9GZRhaj0K1++7l3K6X2ev5/DcgWkWI/NixQSk1XSk0vKSmJ0Iz0oz/V7TGDyaEJVGMnFPEQgmivHYhoW9+hBqbtDjfSsJU1izcaQh3n+34jef+J7KnEm3BDQ5uApSLyEuCdy6eUuivIMR8D+4vIOGAbcA46nORFRMqAGk/5isPRwlQfvvmGVFNeXk5+fj5KqT4T6kom9jTJ/PwSrrrqYXJyHGENIscqBPZrFxSU8uijq6MeuO4+Z3RVSEM5NXsJi2jGL6KdxetbedQ3BBVLj6CrK7bJbukoBNs9jwxgSDgHKKU6POWr30CPJTyqlForIpd6Xn8QOAv4sYh0oNc5OEepZC3XbIgVl8vFjBkzaGxspKCggPfee6/fhLzihT3rpbq6mV/96nhEuieaLV7s5L33YMsWuPdeKCjoPjZWIQgn4yZSog3DhHJqTU3dE+iiKXDndkcvBNZM8FtumUdTU20P0YylRwD6M+w3QqCU+j2AiAxSSoVd3cMT7nnNZ9uDtv/vB+4P93yG9MIKC1nzIWbOnElTU5MZK7BhZb3U12+nrc0NKJTSE80WLariD3/o7kHddRdcc0335KhInY7vql6xFr7zR7S1fUI5tY4OLQbDhvW8RrhrOkQbhrGqotbXb6e9vRWlVA/R9J3qE+l1Wlu7B8EjJa3GCABE5EgR+RxY53l+iIgEnEhmGBjYJ1MVFBTQ2Nhoxgp8sLJe7rzzbUpLy3tMNPvkk/E4HPDyy3DJJbB0Kdx6a/exnZ2R9Qo6O3uOCVjXvueeRXEJC0H0QhDO5LXqamho6N43kjUdou2pWFVRtUhDTk5eD9F0u3uGraIRgmhJm6UqbdwNnAC8BKCU+lRE5iTKKEPfwJ4BVV5ezowZM9ImLTZVKa3r3eV89BEcdlh3do01r+Dxx9d5J5qVlk7lvPOymDtX9wC+9z39w3/kEdi4EcaP18e63eGXmdi92/+YQDjhoHBb3tHW/w+ndbtzZ0/H6Rva2rSpkooK/+8l2jLZVlXUhoZqBg8exq9+9RBDhuT32KehAUaO1CErX+cc6r7FO+U2UYRdLVsptcVnUxL1ypBO2EtkWBlQxcXFrF69mkWLFqU8LFRXV8eECROYPXs2kydPTkopD6XgvHXXM+OLJ7nuOnjxxd77WIIwfvxUnn++ntZW+Pa3u18/7TQ9J+0//+neFklL9/PPo1sMx97y/u537+BXv+oM2BPp6IjOuYXj1JTqWQjPvkhMTs5VXHPNVL7+2v+x0S6ck5vr5IEHljFkSAF79zbx29+exlVXze3RA6n3pK/U1PQ81u12cd55p3PppQ7OPfenfnssscwlSEch2CIiMwElIjkiciWeMJGhfxBO/SOXy8XSpUuZOHEic+bM6eVk0yEt1uVyMWXKFLZt24bL5WLHjh1JCVOJwH5527mm9HFGjoQXXuidwbN+/QqamuqYP38yL7ywhaysNYwa1X3/Bg+GsWNh/fru4yJp6Y4b1+04IxkT6G55n8Lu3TeyYkUmL78ceP9owkOBnFqw9FYrtHXFFZ+we/eN7N4tPPKI//O0tEQXSunshJ07q9i7t4nW1hY6Oztwu109hLSxUVdsra7ueezmzZXU19+IUgfR2HgX//1vb5WKdTZ2vNN/AxFuaOhS4B70bOGtwJvA5YkyypBcwpkUZu2zfft2Wlv1oFoyS2SEG+qprKykoaHB+7y1tZXi4l5TUxLC78Y+TlMT5J9zIdddB+++C3Pn9kzjHDw4nz17OlHqcJS6i6qq43qEbiZMgA8/7M6gicSRZGdHtxhOeXkFw4aNxe3+M1lZyxk//hD++tdsTj6550L3Fs3NUFjYe3sw/DnpcNJbHQ4nL710ACUlcPzx8Ne/wuefw0EH9TyXUtquoUMjs6urq7vn0dBQTUdHG9nZOT2EVCn49NPeczTq6vZFqXwyM+9Aqfk89dSBzPEJmMeylKbL1fP+PP/8anzLdceLcNcsrlNKfV8pVaqUGq6UmqeUMvn+SSZRVUvDmRRm7eP2eKa8vLykjQVYIuSvF2LfZ8WKFZSXl1No81JdXV3MnDkzqZVeDz8cxoyB55/Xz+2x7j17GsnJOQnIYtiwFb1a7QccoMtDW2GISISgo6N7Fm4kA8MOh5PLLlsKFAI3sXPneTQ0wCuv+N8/mlvpr0cQzrrOjY1QWQknn9zGjBmryM9XPP20/2tE43Q7O7t7Hr/73Ufcd18N99yzuJco+YbD3G4XN9+8FGggP/8vnH9+Lhs3ZrBzZ8/92tqiHyfYtKn3GEmiCDdrqERErheRBSLyqPVImFWGXoTjDKPFnv0TyLnb9xkzZgxvvfVW0sYCQgmV/d7MmDGDDz74APsM9MbGxqRmMWVkwIkn6kHfnTt7xroLC8uYOfM+cnM7eeKJR3s57P320383e9YCTFZJg48+2gV00tHxPo2Nf2OffZr56CP/+8YSGtq1C26/Hf71r573JVAoa50nAP3SS+dxzTWzaG19js8+U34rgMYiUJs2Ofn1ryfzy18WMnhwaCGtqqrE7T4UeJnm5mpGjdJDqCtX9t43GoHq6oLRo/X9yc2dgNN5FmPHJq7RFe4Ywb+AYcDbwKu2R78h3dcISGQpByv7J9hAr32ftWvXctRRRyVtLCCUUPnem7q6Oj7//HNGjhyJ0+mkrKws6VlMhx2m/y5fTq80ztWr8zj00EwGD+59/8rK9F8rHh1JjyAWIfjqq6HAZ4AedR07dg9ffOG/5HIsDvfuu+H11/XfzZtDp7d+/jlkZCj27n0Xt7uZ9val7N0rbN/ea9eoBMoKWf3971ZMHp56KvRxQ4dWAGVkZX1OQUEpRx45hqFD4RM/S3RFM5Bt9VTuu281gwZ9RkPD4zzzTOJ+b+EKgVMpdY1S6m9KqRetR8KsSjKRhB5SJRThtNpjIZyBXqfTSUVFBZWVlUm9D6GEyt+9KS4uZv369SxevDjhPRfru9He3o6rZS9ut4uxY3Uc/b//1ftYIZv6eifbt0N5eZXfAcCiIj0TdccO/byrK/FLI3Z2wubNw3A6V5OTk0dp6RimTy9gzx78OtyOjsidbmenHtD98EM47jhwOOCNN4KHstxuF598spuxYzspLByKwzGI/PxNAHzxRe9rRCtQXV1asL/5TZg9Gz77LPRxW7dqe3/ykx/y6KP6+zVjBixb1ns+RzR2WQK1ZImThoZcsrLgb38Lfy2ESAl3sPgVETnRM1O43xFqjYBEVdiMNNf9ySefBGDq1KkpyczxvQ/Lli2jqqoqKbn6wUphB6romozS4tY9qa6u5jWXC5EM5s+fzKOPruboo528/LLOQ7eGLT78sA3I4e9/P5n//Ke5V0s4I0P3CuwZKuHOJYhWCDZuBLdbuOaa77LvvpMoL69g61Y9Srxunc6h96WxMbIZs11dWhRbW+Gkk3Sa6KpV+jX/NX5cXHTRZKqr/0te3ov89a/L2Lmzin32qeDMM3VP4Rvf6HmN1tbIq6N2dsJXX+n3M326DuMsXgy1tRCsvuVXX+m/xxyzPw6H/n/2bHjrLfj4Yzf33ts9yPvcc5EP8lpC8NlnUFwM550H//u/OqPsgAMiOlVYhNsj+Bnwsoi0iMhuEdkjIrvjb05qiDT0EI+wTCQxf2vfE044gfPPPz/ma0eL/T5UV1czZcqUhIxZREoq10Owl9lQQJfq8g58nnaabj2/Zms+LVniQuRr2tpWBxwgLS3tKQThjhNEKwSrV+u/hx6a622djxunHb3lrH1pbIzsGl1dsGaNFrTJk2HKFPj6a6iu9j97WA8kZwJFtLdrEZgwYRqDBzuZPBlWrPB/nUjDMF1dsGGD/n/SJG0bhO4VbNyoHfSwYd3bDjtM9+bee29Xj0HeL76ojLglb2UorVmj7Tr0UP383XcjO0+4hCsEw4ALgT8opYYCE9FLUPYLogk9xEok4pIupZ4jLSmRjHBaIgfRw8G6J3l5eQiQIRnegc/ycjjkEHjzTd2l37MH1q8fRl7eh0EHSEeM6CkE4c4l8BWCTz6BP/+5e+A5EGvXavGxt4AzM2HqVB0y8efEonG4X34J++6rz33IIXr7okU7/GYOlZdX4HTqXMxhw7b0uE+HHqpFpK6u93XsE9LCobNTF/zLytL3fb/9tDO3z+Xwx5dfdg/sWzgcekb4jh3FPQbBR42qiHg+QWen7pXs3KmFYJ99YOLE2Be7CUS4QvBn4Ajge57ne+hnxeKCxcjDGUyNlEjEJdHjA5Hw5JNP8sYbb7Bq1SrKysr82hRq4lk8sYvk9u3bWekvbYPeohQvkXI6nSxbtozCwkIkI4PMzCweeGCZN8Qxd652NP/+NzzwALS2CrfffnqvAVJ7THnECJ1dY2WbhOt07ULw1Vdw9dV6YtsVVwRvwW/YoOcv+HLooTqNddu23q+1tYXfA1FKO7aNGxXFxXW43S7Gj9dhsKamcr+ZQw6Hk1NOeQARxYIFT/QIn02frv/66xVEKwQjR2qBysqCsWM7+fTT3QEncbW3Q1WVIj+/utc+FRWwYUMmDz20mjvueIPrr9fh3Egzhzo7oapK/7/vvnpOyZNPws9+Ftl5wiVcIZihlLoccAMopRqBSBeq6dPEe9ZspOJiOWDffZM1iO0bnrIc4F/+8heWLVvmtckq73DcccexefPmhPdiKioqKCkpQURobW1l3rx5ve6FvdcwceJE3nnnnbiKVFVVFU1NTXR1ddHZ2cHy5W94HcSxx+oW3e23azE491yYODGvxwCpb3G1ESNaPefV59+1K7QNXV09J209/LBeN+Duu2H3bp2u6Y/mZu3o9/dZF9DtdlFUpFeNXb488LHh0NUFW7e2sGeP8NFHtzJ//mRAD6h/9VV2wMyhTZtyGDlSKCzs+dvYZx8XDkcHixZV09RU12Pm7e7dkQ2odnVpIRg9uvt9b936PF980clFF/kvdLdxYwsdHcK7717nDWdZQj5+fCtuN1RVCbfeej5XXXUC8+dPpro6su9YZ2e3AO+zT0SHRkW4QtDuWbJSgZ5XQOBF6/st8Xa64YhLoPGBZLa6oXd46sMPP2TKlClccsklzJgxA5fLRV1dHQcddBDbtm3zTjxzOBzk5+cnbIlRp9PJwoULcTgcKKWora3tJTorV65kx44dNDc3s3nzZk466aS4ipTVY8vIyECpLu688xKvg8jL04N8550HJ5wAF17Y+/iNG1dSX78Dt7uZhoZqamreALqFoK0tdBqp/fVt23R2zpln6hDMzJnw0kv+Z/d++aX+axW50+fSwnTzzYeTkbGFd97Z2cvhQvhC0NkJK1ZsBaCjY4WtzLMOweTm+s8c2rixd/ilqamOCy4Yj9v9NkuX1nLWWSP42c9me+93V1dkZTlaW/X9soSgqqqS9vYPgQIaGnL9juF8+KGeM9DevozGxho2blzpFfLHHz+GjIwuHn98A42N1d6Q16pVkX3HOjt1xlZ2dvBB63gRrhDcC/wDGC4it6AXr781+CH9C8shz549mwkTJlDnL0CZAPyND1i22FvdwcIi8cAeniopKeG8887z1vOprq5m5cqVTJkyhdraWu8xhYWF3rGEww47jHfeeYelS5dGJVjBRHjq1KmMGDEiYJhq3rx5XmECXXYC4jc72urdHTBhAiIZvWrVZGXB/Plw7bW9M1rcbhe33DKP9nZtX0dHG489Ng9o5ZNPtnodb6jwkF0IXntNX+fkk/XzE07QoSF/A79WLNzeI6iqqqShoZq2NhddXf9mzRoHZ555SA+HG45NFjqEpBsCOTm13hDQhAnaLn8/peZm7Qh9Berii6dQX78DWApMpLOzCLfbRW3tVp555jaamuoiSm2trtYDs1ZmlC63oR39oEFH9xrDcbtdvPjif9DBkQ3k52svbY1z1NZ+RFfX3/jvf8tpa8vB4XBSUFBKSUlFRIP5lhCUlXWxcWPiaw2FW2LiaeBq4A/ADuA0pdTziTQs3aisrKS6uhqXy8W2bds46KCDkiIG/sYH7OUelFJBwyKxYjlgwBvKWrhwIbts8YoCz7JajbZAdEZGhje7yOVysWnTJo4//nhmz57NxIkTI7Iz1ICwPcy2bNmyHvMcKisrqa2tRSlFdna2d1xj9OjR3HnnnSxYsKDH+4z2/jmdTopLSsjKzomo6JvuDVSjlCIrK4fMzCxaW/cAG3jnnU+9jjdUjNkuBB9+qHsCVomlGTP06l3vv9/7uM8+0+mq9nJM5eUVDBliLZV2N5BDV9cTuN0d1Ndv95bSbmgILwyjF53JRUTxv/+70BsCstIg/c0JsNIz7UJQVVXJnj3Wd+xvQAe6jaoF9Mknb+Kss0awZUv4v0trvobV6nY4nDzyyEIyMhTf+ta9vXopekbxvsBacnKy+PWvFzJ+/FQKCkrJzvbkkXIXkA/8gF/9aoH3/UYyTtDRAVu3drFz5/vekGFLS+LEIJIy1JVKqT8rpe5XSg24yqMVFRVehwdQW1vLwQcfnPDYvO9YAkBLSwslJSUMGjSIsrIysrOzUUqxc+dO/vGPf8TNJl8HDDBt2jSmTp1KWVkZTqeTkSNHsmrVqh7bSkpKcDgc3lZ4jicJXinVo1hduISTNeV0OikvL2fKlCk9yk/bxxDa29tRSvHEE0/Q1tbG5ZdfzvHHH88BBxzA/vvvH3PZ6syMDCoOOCzshWB0vZpzvb2Bzs4OBg3KJysrB1iDUpO8PYtQTsQKh9TW6oyaww/vfi03V4eHFi3qWTitqwtWrVLsu29djxanw+Hk/vs/QCQD+Bz4EXAccDvt7a3ccss83G4XbW3h9Qra23X2S0GBcNBB3Ws177efHjD2l6GzVg9P9MiZLy+voLCwjJycPEQ2kpHx/4DvIPJz7z6dnR289dYboY3yYNV0sgvhsGFOysuFr7/uvcakFvdDyMxcS1HRPowfPxWAK69cYFvH4GNgMfAzpk49gY0bV7JmzVJqa8P/XnV0wPbtio6OL9Kn1pBBO5pVq1b1qGRphUSScW1rYpQ1XgDw3HPPAdDu6XO2tbVx8cUXxy10FcgBW+K0ePFi1q9fT3FxcY9tn3/+uVcUSktLexSBE5GIwzGBsqbsrXjf8tPV1dVUVlZ6xxByPWU0q6ur+c53vkN1dbVXmLZu3cr27dt7HBctGRkZYRd9072B7iL3yjMHoaOjDZH/AmMYOvRgyssrwg4NWTOZrRIX+jUXEyZ8ye7dPTNtPv9cD+B+/PG1PUI+breL1asXk5NjlR59EngQuAylxtLUVOsNe9kKvQbEEoLhw3tuz83VZbe/+KJ3ueXVq3Xc3r6GM8D11z/Jz39+Pzk5uXR13QK8jFK3AGMAyMzMYtKkE8IeMLaEYNeuT3uI4f77a4HyPY/L5aSrq5gzzzyWRx/VDbP58ydz3XUn09jY/VlmZt5LV9dofvCD33LFFbO54orZfOMb4feEd+2C1tZMnM5d3h5mOtQaMgDFxcU8++yziEhKrm93zDt27ODCCy/0OrTs7GxEhJaWFrZt28aUKVNi7hkES1v1N9BtX6Rm2bJlFBQU0NTURI3n15abm8vDDz/M2rVrI8q+8pdh5dtbWblyZY/QVEFBgdfeqVOnUlRU5H2tK8iKH/bj4oW/mvLW2EBHh+9sMe15lFoCwAUX/BuHw0lbW/AURKtH8PHHunU7blz3dfRM58MR2cWrr3Z3CV57bRfQQXv7y96eh7X/n/50CR0d7eTm5pGZmUVOzh2AIjPzFz3CXrvDmFba3g41NV04nY29Yt2TJsFnnykuumi6NwTicrm8E6ns92v+/MlcddUJPPnk/2Pw4HzPvdLV8CdOfJ2rr36EF17YwaBBxWFlWgFs394OtHDddUf1EMNDDtEit3Fjz/0tIT366NE4HE5vBVVrqcusrFxEhM7OvwNfsWvX+d4GR11d+D1hK2T14x//wtvDzMtLfa0hg4cjjzySMWPGkJeXx5gxY5g6dWpM54skNu2bKmlv9Xd2dnp7BhCfipuxzJ+wUirtZatHjhzJOeecE1UKrq/w+PZWgF7hKnupiVWrVjFy5Ejy8vLIysoiLy+P4uJib08BoKSkpMdx8SDQurtVVZU0NemB9ezsXH7xiwcoLbVnVq0CWnj//e3eYzZt8n+Nzk49uNrZqSeRTZ+u886t6zQ21tDa2kBGxhMsWZJJTY2VyTOc3NwPcDiavc69e38XWVk5XHnlQ7zwwg7uu+95jjiinZyci7n77u55EuGEhnbvdrF1awuffvp0r7WH58zR5S3q66d4QyBLllSxezeUlm7ymWmsB2Sbmmq5/vqnKC4eicNRj9P5d9avr+CII+aTn6977OF0iJWCTZv2ILKN1taeE9pmzdJhK99xlWXL9GxiK2Rlr6BaWjqG2257ldLSMTgceQwZshA4EtC9+fz8krBb9ZYQ7LNPrne9inXrEpcmboQgQpxOJ2vXrmXJkiURt2x9iXRWrD1VEnSYxeFweGPy9m3xqrgZ7fyJRJet9u2tTJ06tVe4yo5VhG7JkiXs2LGDJUuWsG7dOm+F0hEjRvDMM8/EvURFoJr7dgdSXDySuXMv4PHH13HnnW9TVLQPublZwCKWL8/wOs/6ev8zS3ft0k5twwbda7CHhXqWwH6B7Gy49Va9NnJNTQZXXTWjx5iGb8nsWbNOJz+/mPLyCtavv4SWFgcXX3y/10G3t4cu9rZixQaUGkRn51e9ympMmQLDhikyMi7yhkAqK8uBdp55pjtLybdk9UEHHclTT63nnnsWc889Z9LZKTz+ePc1w5lY1tYGLS3DyM6u6zXAP2yYnlD31lvd4yptbTr0dvjhPdejtuZBPPbYWqZN+yaPPbbW8/xKBg3qIjPzEbKzhyCS0WuVs0BYQlBc3N2YuPjixKWJGyGIgnhNLgu3dIS912BPlRwzZgxvv/22NyZv35bqdYP9la0Gwu79hOop+euthPpc7KEr+zrLb775Jrm5uZx66qlx/6EFqrnvW5ra4XDicDiZNu2bLFy4gSuvfIisrNdRagL19cOoqtL1anwXPoHuCWeff67/2kMq9ussWPB3zj13M2vWKJ55Bo45Br7xjVxvT8Dtdvm1C7SgNTf/C3if3bsv5csvu1N9rPkOgcjM1NOWs7Nre2VTZWbCt78ttLUdxzXX/JcHHljN++9nkZHxPq2tW73CEeh+TZgwjfHj8zjjDHj5ZdiqpyvQ3Nx7RTFf3G5oaMhk5szpfgf4Tz9dD76/845+/u67OhR2zDHuHqE+3wqq1vOiIiff//4mOjun0N5+Kk1NtXz8cWShoeLi7sZES0viJmeGW33UkACsVq1VzdNfC95f5VN/lTb9bUs19kHuSCq4hrtvPKqLOp1O8vLyqK2tDVh9NhYsB+Zv+UjLYfg7Ztas03nooQfYuROyss5k+HAdNrIWbx81Sv/du7fb+a1bp8tY+05Aslr61rKHRUVHcOWVrzB9uoPWVv/LRfrapTN2Sqmru4v29pfYvLmAiRP1azU1etDXqsLpS319HgC//OWvOeaY8l4D6WecAf/4h/CXvxzEuHF6bkFh4aO4XL3F09/9AjjnHL2mwKuvwo9+pHtIDQ29B6jtuN06hHT00Vl+zztjhi69ceedekD7/fehvLyL++6bSFNT4OU17Zx2WhmPPLIZpeZTUPABpaUVuFx61ncgOjv1/IahQ/WAutWYaGoK7CdiZcD0CFK9noA/wonB++s1BBuojUYEknFv0rnIXqJrOUW7fORf/vIvMjM/o6XlWC67bAZut4vOTj0beN06/fezz7pnDFtr+frLZei5XOZH5Od/TkZGeMtFWvY8+uhq7r33d4wa1cWzz+Z6Q0JK9V7Y3Y5VKmH6dP/rKOfnw5/+pGPy//0vXHwxPP30I2Gn4YIWwKOO0kJgZTJt2BC8SNvXX7tob4f8fP87ZWTo0iCTJsE//qEd80UXVdLUFPp+WeTlOTn33BEodQy/+c0aHA6nN1MpEC6XFigrumnd+4ceil+tM18GhBCkukJlMEI58EQ7qWTdm2iK7DmdzoSWp7CIdlA80QK6c2cVIi+h1BE0NOB1OkrpVviWLd2OrrZWz0S1Wum+BApRhbNcpIXD4aSiYhq/+lUG27bBQw91v7Z1q7bBl44OLQSZmb1TQe0ccIAuqvbyy7oeUzTi+cMf6pIRDzygn+vicP73dblcnHbadwB49tmf98pmsjK9cnNd/OlP8Mwz8NhjcMQRY8O+XxZnn53D4MHwwANtuN0uNm/uDv34t00La2lp9zaHw8mBB8av1pkvA0IIwq1QmY4kovKpnXDWA45Xlc5w34dV0M4qT2HVMkokka6+lgwB1U76XaCDjIw/BXU61hKJVt16XwLF/gNtD4Tb7cLpXMHcuR28+mp3dk5Hh+6R1Nb2rGm0ZYuLDRsaKCrqCrlgTGamngEdLcOHu5gzp4b331fU1+tt27frsI5vxnBlZSWNjTpjzOVa16Nl75vp1dbmoqysu6d1/fVPcscdb4TdW8nOdqHU3axdO4zzz/8f3G4XX30VOLPJKq+RjGJzFgNCCMKpUJnOxLvyqZ1gLfV4O7tI3oeVfmqV9Hj22WfTal2DZISvHA4nTz75Ct/6VgMtLaezbVvg+7Z8OeTnKzo6AtelscYKrIFh+/ZwWt92B/nJJ8cDit/+trtXopSeEfzJJ3oNhKoqF7NnT+bjjz+nsfGThNbLsWxbtOg4OjuFBQv0xIquLt36XrlS9w4skRo5soK8PP1dz89v7yGygcJl9rkMt94a/gJRupDdX4AuGhpO8TzXi86sW4dXtPQ19D10u0HkK9asWeq9by0tieuBDggh8K1QuXPnTp599lmWLl1KXV1d1DfXai3X1dWxdOlS7/ns/1uvB7tGsFZ3NC1yf3aFk33jr05PIlZmC+eeWOINukjcD3/4QyZOnBj2PY0U39XXrO+H7/oF1j1tbGz0lvlI5BoRDoeTyy4rIy9Pcdtte9i8ub5HxoqeBbyKpUu7aG19gV/8Yg4XXTSxhwOx9luzZikXXTSRK66YzXnnTaCmpqrXRLdg9Bxn+Jjzz6+kshKefrq5x3lcLj2o/dJLK9m5cwdK7U9n5xdB4+n+Jt1FQnehvDXAbbz5Zh5PP73OWzV1y5Y6XnppKf/3f0v5z39cfPGFk5NO+h0iikceebOHCPqGy4YPL2fNmqW8996zPSqKhhofsJ+vsLCdjIwX6ez8OatXd3k/n5oa+PhjF48/voJ33qlj4cIVrF3bBMALL/yUK66YzUUXTaSpqY7vfjdxPVBRiVoNOUFMnz5dLQ9UID0I9rVlW1tb6erq8hT6yiI7O5vCwsJeJSSiOV9mZmavc7e3twe8hj1DpqSkhIULF3rXJI5mreS6ujqmTJlCQ0MDbW1t3lm0o0eP5q9//WuPc1dWVlJeXk5VVRXl5eXMmDGD6upqCgoK+OCDD9iyZQvz5s2jtrY2Lms12+9ZW1tbr3via1NjYyMnnXSSt1qow+GgqKiIxsZG2trayMnJoaysLC4hM3+fJ8CYMWP4+OOPvffG/prvPeWYY/RavHe/H5MtvrjdLs455yZ27fo98CXZ2VdTWLiWq69+mDvu+CF1dSfT0XEf2dnH0d7+DiJCdraDoqIRPPDAMrZu/YJbbpnncZTd1ekyMjLJycmloKAs7LDQ/PmTaWioZvDgYWRl5VBb+wBdXceTlXUjxcXP8OtfL2TUqAPYuvULbr75XM/A6GaGDLmBv/3t2h5rMFiZVID3vEOGFHD//R+wa1ddryyrULadd94E6uq2AZnAZ0A2GRnfJjt7M+3tbSilP7fhw0fzm9/8lVdemcHy5Vm88IL/823cuJK2Nje33z6fnTu3eH7fWWRn54R9z+znW736M669dhRdXbXAbMrKSrj77v/wk5/MZM+eBjo62snOziEraz57994HHACsJycnj6uueoi77voRLS3NDBo0iEWLFkWc2SYinyilpvt9baAIAegf+z/+8Q9++MMf9ihLbDFy5EjWr18fllNZunQpxx9/PC2RFD/3c40VK1YwZ84cmpube0wQu/HGGyktLeXss8+mpaUlrA/f5XIxYcIEtvlZUsp+7muvvZbbbruN2tpar0MtKCigoaHB+34yMzPJzc1l+PDhPcQpFuzv1c6IESN46KGHuOSSS2hsbKS9vZ2cnByGDx9OV1cXW7bossBlZWXs2rWrR2so2h+FP/x9PxwOB1dffTW33357r+9MXl4eb731Fnl5eTpt98QT4y4EbreL9957lrvvvpy2tqOBl4FsYIvn0QLMBj5BZBZZWTl0dLSilCInJw+nczAu1x7a2/U2fzgcg7jnnkUBUzPtNDXVcfHFU9i1q4729jZ0lc0FwFnAMkSeAjaSmfk5HR1bgTOAFzjvvJc499zjAF1j6ZZb5tHUpOcVXH/9k1x55VxaW/XnGqlA+dq2e3c9bW2zgH+iy1D8GXgdaADWA21kZeWg1FoOOmg0P/nJml6iY4leff32HuKZne3g6qsfZtas0yMayAZYv34Fl112F52dC4E6RO7C4fiYlpYqYCPdS7zcBlwJ5CHSTmnpGP7v/z7mJz+Z4U0hjabxY4TAhsvlYuLEiWzevNnbgu/0BA6dTieLFy8O6VT8nSNYj6CtrS3gNayW6Pbt22lt7f1jteoajRkzJuRM5hUrVjB79myvo9QLpShvqepgn7XT6WTQoEE91hMA7Qjffvtt74SwWPBtdXf6WynFxqBBg3jjje5KkgcccECPlrlVVjrWGd6+Nto/24yMjB61iazPF3SPICMjw9tjWj9yJHt2Z8RNCNxuFxddNJHq6k22rSOAk9BLho9FO49VwHVAE8OGFeNwDKKxcafH+WtbrV5CQUEJHR0d7N3bSHt7G1lZ2RQWlvHYY2vDcmzr16/giitme522PncuIjfR1XUycJBt77WI7EKp6eTmllJQkA9AfX017e2tgMLhGMQdd7zB73//XU9rvptIBMp+z1ateo/rr/82So1AC6dvGZitwEfAWTidV9LV9WCvOQHr16/gZz+bg9ttNVoEUBQVjeDhhz/zlrKIhO7PcyTwEHCg7dUuoBH4L3AU8B7Z2d/lF794gGOPPQeHw0l2tou8vOjnCgUTggE5oWzhwoW43W4cDgejR49m5syZNDY2hl2WwV7jPjc3l9tuu42cnBzKy8u9pR4cDgcHHHAAX3zxBdXV1fz4xz+mubm51zWsDJnnn3+em266iWqfhGylFA6Hg4ULF4b88CsqKigrK6O6upphw4bx0EMPectB//CHP+x1buhu+ZeVlfHee+8xc+ZM6uvraWtrQynlHVyPh7O1xiNWrlxJU1NTQJusfa3SEdZ1XS4XTz75JG63mx/84Afs9DfNNg48/PDDrFmzhptvvrlXFde77rqLiZ4czc2bN/PTn/4Ul8tFTU0NroICYHDc7LDi3haZmTkMGtTO7t0PAw8DMGRIIV1dXTQ3NwHgdjczf/5NPProDbS1dfdWCwvL+N3vnveWTd64cSU33/x9Ghsju4fWWgV2IRgyZDDnnCMsWDAZmIAWqAPJzDwXmAHcTmtrEw0NbpTCW3YbYNiwIsaPn8pDD63ytuZ1iCQ37PRMX+6880ceAdwGTCMjo4S5cx+joyOLRYuW09Y2Hi2kjbhcjwDdMX9LdKxxAisM9tOf3sd9911Bc3MTl102I6Keip2rrnqYTz55m+eem05nZxkwE8glN3ciEyeezooVo4B24FqGDi3yigDoOQnxmujoy4DqEfjG4x9++GGvw66qqgpbaYONN1ghjYcf1j/U+fPns2WLji+OGDGCzz77rNcYgb0F6o9IQlYul4uVK1d6Y/tFRUV0dHRQX1/vjbVb6FZiNsOGDWP58uXe2Pz06dPZvXu3VwziHX6x7p3b7fZbCTQnJ4e7776bgw8+2O94ydChQ2lsbMTtdsfdtlCfhcPhYPjw4XR0dPQIY5WVlSWsR1BTsxmAgoJS9uxp9LSm8fTyABQZGZlkZeXQ2dlOZmZWj3BGfn4Jjz32Ofn5xd7Y/J49jVx//Sm0tbVE3PJuaqrjoosO8hbN07ZkeHsfgNeewYPzyc7OYdeuOvLzS2hvb/WsMKYpKtqHhQs34HA4vaGdPXsaGDw4n+uue4qJE4+MyOH667FkZGSiVJfPZ5qBDr24vOMpvs7dbk9e3mBaWpppbXVF3VOxPkvd08ykq8vqEQvDh4/i+9+/jrvvvtxr5513vs20ad/0nmPoUIjlax6sRzAgsoYs7Jkh9hWzDjvssIi6W1bLdsGCBd5FYQA6Ojp6rMZ13HHHUVVV5X29qamJKp8ZLtbKZ9Y+IkJOTg4ZGRk4HI5elTTDsc1eMqGqqsobdrKfOzc3F6UUbW1t1NbWMnPmTOrq6pg5cya1tbVxX87R/n5rampwuVw9RKCoqIiysjJEhLa2Nq644grmzp3rzZDwLcFtvZ+SkpK42ub7WeTm5pKZmUlOTg4igtvt9t7TlpYWsrOzWbBgAatXryYzI74/J4fDyWOPreXeexfzpz+9RXZ2Dh0dOldz2LBisrJyscpWZ2ZmM2/e9WRn59DW5vaGgoqLR/YQgfnzJ3PFFbO5+uoTaG/X++Xnl0TU8s7PL/acs7uWhSUC2dm5nH/+DR47Wmho2EFHRxt33PEGjz221hNW6T6uubnJm32zc2cVe/c20draQkNDNddff0qvaqWhsBavyc11UlQ0gp///P/Iysq2iYCQlZVLRoaQm6soLR3DnXe+5beFv3NnFXv2NNLa2kJTUy3t7a3epScj7alYvTvLjszMbM4//wZychyAorZ2K/ff/0tEMsjJcVBWNpaDDjoyomvEwoASAitn3grfRLtiFmiHe/rpp3udF0BWVlaPc1uISMAFWaxwjrXP6NGjeffdd6mpqWHp0qV+K2lG+j4tysrKvOd+5513GDFihPe1xsZG3njjjR41/cvKyhJWNdTpdHrLQY8cOZLKykpeeOEFr82WqFqfjf09WeMdubm5YYXMIrHN97N45513qK6u5t1332XMmDG97mlhYSGnn356wmZ8OhxOJk06isGDC9i1q94zCOzghhuepaio29aiojJOOeVSCgrKvCWR77rrbZ56ar03nm0vMd3V1elZxyKXX/96YcRhDksMiotHetcscDicFBeP5JxzfsqQId2LETU37yInJw+Hw9njOO1Uy3rNctbOEdraWiJK07Tuly6FsZiFCzdywgnnU1jYfZ/22Wc0Tz75Di++WM299y7mscfWMmnSUX7ff88lOyE7O6fH0pORYAmU/fM644yfUlKyD7m5+v22t7vJzs7lqqseDnvMJl4MqNAQdIdOzj33XG82SjgDsaHOB3jHBOznHj16NI8++igOhyNg5o39HPHIzrGfc968eezcuZOCgoJeqatWqqk1PrJs2bIeKaSRpNNGaps9TdTqjfmml/qmh/qGveKR0urPtkCfRch7mqD0UejOYrEXhwO86wePH6+XgLSnZfo6Env6Z0dHW1RpkP7sqqqq5IADymltrWL69AoKC53U1dVx8MH6u+XvGoHstNI27VlF0diXk6Nr9QwZAllZLtav7/mZbtmiazWFwgoP7d3r/32EQ0aGLsqXl+di7dqVtLZqOwoLnbS19fxOl5SU8uCDq8nN7X2NRIaGBpwQWCTC+Sbj3NHYEqwqqe/rofZPlr2+IhHM5lTZ2Ov6CRQC0E6yrq6SKVMqyM930tKiZ80GWXDN7zmqqioZPrycnTurIsrV90d2ti7KNmxY79dcLhdvv11JTk7k1wgmaKEoLdW1i4JF6rq69CIzPsNmcbcFoKICysqC72P/TlVVOf0W8euzQiAi3wLuQc/weFgp9Uef18Xz+omAC7hQKbWi14lsxEsIDIa4k0AhyMzUzs23rPLevboCabAqm4kiK0svLDM4SKJUayt89FHvtX8TRWmpdrzhrCb71Veh11KIlZwcOOKI4KLkS1MTrFrVe3ufHCwWkUz0TI7/QScXf09EDvLZ7X+A/T2PS4D/S5Q9BkNf5sAD/dfWHzwYxo9Pvj2ghSmYCICup5+fnxRzKCwMXwRAl65ONEVFkYkA6N5VTk5i7AlEIgeLDwc2KqW+Ukq1Ac8Cp/rscyrwpNJ8BOSLyAjfExkMA5kxY7pr0/ujpCTwojCJorS09wI4gUiGEGRkRCYCoFvYWQmeSTVkSOTHiPgPtSWSRArBSPQceIutnm2R7mMwDFjy8rQQBEMERiSx+TR4cPfi7eEQbB2CeDFiROStaJHgK4XFg6FDoztu0KD42hGKRAqBP232jRSGsw8icomILBeR5b4lEAyGtOH99+M6PiCiW7nhhBZCDUbGCxEdpook3BEqfBQPog3zxLL+QSgyMqJ36Mm4Z3YSKQRbgdG256OA7VHsg1JqgVJqulJqekm4/VGDoY+zzz7hhwhyc5MTHtpnn8idW0aGzi5KFLGEUhIpBIMGRRaq8j02mSRSCD4G9heRcSKSA5wDvOSzz0vA+aI5AtillAqyiJvBMDDIygodEvIlGc4j2p5HIgc/hwwh5OpngQhXCKIZ54gl7JSXF/kgcywk7FJKqQ7gJ8AbwDrgb0qptSJyqYhc6tntNeArdA3Wh4DLEmWPwdCX2G+/yJ1nosMJubnRDX5axyaKaG2C8HpRxcU6TXZkhKOXsY4/JLIX5UtCx8yVUq+hnb1924O2/xVweSJtMBj6GiLhZ+TYSXSPoLAw9D6B6KtCkJHRnZ47fjzs3Ant7eGdO1YhyMkJb8JbPBhQtYYMhr7A4MHRpTUmWghiSQMNp3czdGjk4TCIrScU6j4XFnaLhUhkWUB9qUdghMBgSDOidbh5edEPToZDLEIQqkeQnQ0TJ0J5eWQhsczM2AQwMzN4LN73PYc7KJ2VFZ8eQbIwQmAwpBnR5p5nZCQuBJOXF9u5Qx07YoTeJzMTRo0K/7wFBbGLX7Bega/jD/ezGTo0drtMj8BgGMDEEvNO1AQpf+UtIiGcEIxFJJlJ8cgmD+Rws7N7h52GDg0vmydaMbdjegQGwwAlOzu2+QCJEIL8/NgnrAVr3WZm9nScOTnhtYZHjYqPEAQSKX+9jYyM0OGhaAf7fTE9AoOhHzFmjHYq4TjpWHoDEN41RCIL80yaFPvEq2A9gvz83q3scOL+ZWXxybUP5HADlcYINVZSVhafgXsjBAZDPyEzUw+AHnKILtQWilgdSDi9iZIS7dzDmYTldManMFuwc/grqBfqPsRSvsGXYD0Cf4S6bjzCQmBCQwZDn8W3pT1uXLfDLSkJ7VRjdW6hWu6ZmdqmIUPCKxwXL6eWkRFYePzVCQp1H2Ip3+CLv5Z3sJIdocQ2XuG5RM698MUIgcEQR+wOLC+vZwaM0wlTp4Z/fDQ4HMEdZHl5t1iEUxU0lklkvvgTQafTf8s3lADFS6DAv13Bzh9KbOMlBNnZiU0HtmOEwGCII/YsE3+Dik5n8Lh2rE4kVPzf3voONTDtdMZn0NPCn8MNNPA6aFDw3lM8y2776xEEGwfIzAwctsnOjl9sP9KxnFgwQmAwxBF7i96fMwlWA7+gIPriaXYCtVhzcnqnQwYbnC4sjG+LNBIhCDaLd/Dg+NZV8rUrIyN0umwgAY131pZdcBK5doIRAoMhjljOKysrcFglkBM7yHch1ygJFF7y59yChUDiXdbat6WckRF8HYFA9yneDtG31V1UFLpVH0hs4738pd22RK70ZoTAYIgjeXnd6wgHCh/4+0HHM6Tg7/wZGXp8wJdgjivetfp9W97FxcHfc6Drx9su388pnDIS/kRKJP4LBNmFIJHLVxohMBjizIQJwR1CaWnvVns8nVt+fu+QTmGhf2FyOgNfO949Al8hCDUQHW3WTqT49gjCGYj2F1JzOOKf8mnZNmhQgldTS9ypDYaBSShHItK71R5P55aV1dtR+cvVtwhkb7wdj2/rP9R9SpYQ2FdQy8gIb/zB3z6JGNi1rrPPPvE/tx0jBAZDCvB1ZvF2uvbJa/n5wbN//DnWnJz4r5Blv0441TkDpcImomVsteTDrSWUldXbjkQsFTpsmL5WOJMRY8EIgcGQAhItBMOH69IWgweHnkXs79rxnD9gYX/P4cS7/aVPZmYmpuVtnTMSh+v7GSbCrowMvVpdPGZ3ByPBpzcYDP6wO9/hw+Obrw861DFunH6Ewl9LNp55+hb29xyuw83LA7e7+/nw4YmZZJWbG3mxON/xgET0CCAxn4UvpkdgMKQAu9MoLo7P/IFo8e0RRLoSV7jk5Oj3mZ0dvsP17TnEWg47EIMH6/ccScvbtweQKCFIBkYIDIYUkJXV7QwTvcRkKHJze8bFc3ISV9rA4fCf1RQIXyFI1L0qKQmv5IYduxAEmyjYFzBCYDCkiIkTdXZPItMCw8XeA0j0QvORTIyyr/SVkZG4ipw5OTByZGTH2O/TyJHJLRIXb4wQGAwpZOTI+GfnRIM9vTSRIY5x4yIbiLYPDifa0UY6oc9uT7D03L5AGnwFDYaBS6Ji3pFin2GcSIebmxt5D8jaP91a3HZ70qFXFwtGCAyGFJIOvQHQjswasE43h2s52XQbjM3J0WMLGRnpd88iJU2+hgaDIdXk5Wmnlm4O17IrHZ3t/vv3/d4AmHkEBoPBg9MJY8emX7w7L08PrCcipTVWcnISP+s3GRghMBgMgM6ljzSFMhkMG5bchdwjJdF1gJKBCQ0ZDAZAV0xN5cS2QKSzCEDiyz8kAyMEBoMBSFyOviH9MUJgMBgMAxwjBAaDwTDAMUJgMBgMAxwjBAaDwTDAMUJgMBgMAxwjBAaDwTDAMUJgMBgMAxwjBAaDwTDAMUJgMBgMAxxRSqXahogQkVpgc4rNKAbqUmyDP4xdkWHsipx0tc3YFZoxSim/q0X3OSFIB0RkuVJqeqrt8MXYFRnGrshJV9uMXbFhQkMGg8EwwDFCYDAYDAMcIwTRsSDVBgTA2BUZxq7ISVfbjF0xYMYIDAaDYYBjegQGg8EwwDFCkGREpFRE0nzNpfRDRCTVNgQinW1LR8z9ioxk3C8jBElERP4HeAkY6nmeFj8IEZkuIt8TkQNEJG2+EyKyr4hMAlBpFsMUkf1EZBqkl20iMjjVNvhDRMaKyGRIu/t1gIgcKSKOVNtiR0RmisiZoO9Xon1F2vzo+zsiMhf4f0AJcCukxw9CRE4BngJOBf6CngCTckTk28ArwI0i8qSInCUiQ1JtF4CInA68CfxBRF4Ske+KSGEa2HUS8E8ROTrVttjx2PUKcJeIvCMipZ7tKW0IeRpm/wCuA5ZYIppKu0TjBP4K/ERELgKvGCTMXxshSAIicizwZ+Bi4GBgkNXSTfGXbgTwC+AcpdQ5wBbgCBHJF5HcFNt1BfBdpdTZwKfAjcB5IpKfKrs8tuUB5wDfV0qdgHZwRwDfT6UYiMghwKPARuAX6SIGIjITuBP4gVLqePR37B5IbUNIROZ47PihUurbwHZgSqrt8lzfBfwNeA84SEQu8WzvStQ1jRAkGBHJAoYB5ymlVgJOIA/4JqT8S7cL2AtUeBzs8cCFwBPAJSkMM+wCWvH0TpRSdwJbgQnANEipgHYA+XQ7jQXAYmAccHQKbfsauAb4LfA6cFWqxcBzH3KA3yullnk2XwekvCcM7EaL0wciMhI4Ct0Cf1ZETkxViNTmDzahv2cr0GJws4j82tNjiLttRggSjFKqA3hFKfWRiGQqpXaiWyI/s2LMKaQVeA7dU/k3cJ9S6gxgITAbHcZKBZ3A+8CJInKeiPw/oBrYAVwGqRNQpVQ7cBdwiKe1i1Lq78BXwA9TYZuIiFJqN/CUUqoW3Zp8CbhaRI7x7DPS0yhJGkrzPvC2bXMGcKCIFHjsyk+mTRZKqVVKqcWee3IucJenV7wM3RsdlAq7bHwCNCilnkE3jK4ECjz3NO49AzOPIEGIyMFAl1Jqjc928cT7/gCsV0o95hGIziTa1amUWut5no3upfwOWKSU+odn+7+AvyilXkuRXRPRIZeZQItS6iee7c8CFyilWpNhl+eaxwGnAU3Aq+hW2tWAA3hVKfWBZ783gJ8ppSpTYNfrSqmltteKgTOAbwANQBm6V9qcZLteUUp95NmejU6UeF0pdbiInAfMAq5IxufpY9drts8tRynVZtvvVeAa399uMu3yCOQtwAfoscW/A0OApUqpJ+Ntg+kRJADPINQq4FLfVr+ttVgJXCMiuUkUAcuuH4vIoR572pVSu4B3gBkiMldETkWHOpL1Q/Bn11ql1CNKqR/YROAiYDSQtJatZ6DzLvTntQs90J8PvAi4gPkicoWIfB99z+pTZNfNIrKf9bpSqs4TthK0INyUJBHwtesPll2e71o9sFZErgN+Cvw5SSLga9ctNrvsIvAdYASwM9E2BbHrAPR3S9BicLlS6krgLc8j7iS1qzgQ8AwmHgZcjx4b+I6IoJRa4Xk9QynVpZR6QkSOQn/pNqXArrM9nZMVnl2+Rse9fwlkA/OUUlUpsgul1Cc++81HDxiflAyH5rnmcPSYyRVKqfdFZy3tD4xUSq0QkV3AvsDPgD3owe3aFNk1Hn3/7PvNRfeojktG6zaUXbbY9lz0GNlxSqn1qbbLs48TOBvd0/uOJ4SbKrsGKaXaROQZ4Anb+Mo/EtVoNKGhBCAiY5VSmzwf9A1oJ/GiUmq5z36SzHhyOHaJyCAgRynVmGZ2jQLylFIbkmhXBnoAfYklPiLyEPCVUuoPtv2ywTt+kEq7vlRK/dG2XwE6rvxVmtl1BfBmEkNoIe0SnSV3CrBaKfVFiu36Wil1q22/THSYOWG+woSGEoBSapPn7050fG8IcJaIjPAMfh7meT2pKhzErn08ds1QSjUnUwRC2DXCZtfWJIuAeHpubyilmkW8mUCbgXbPPt8WkUmekEeyRCCYXR02uw5WSjUmUQTCtWu8UureJIpAWHYBY5VSLyRRBILZ1WbZJSIHKaU6E+0rjBAkENGDwDVo59aBniRyFzr+l052Pe2xa2+a2WXdr6Tb5eeHZ/1WtgA1InIyeoDdnaZ2JfU7FqZdv0+mTRCRXUkZp4vQrt/hEYVEY8YIEoBtHKATQClVIyIuYCJwtFLqc2NX+tvlzzYgEz05cB06C2ejsStsu+YZuyKyK2mfo+kRxICIVIjIOJ9topTqEpFjReR2z7YhwGDghGQ4NWNXQmy7w7O5Hj257VzlSXU1dhm7+qpdXpRS5hHFAzgZ6EKnd1X4vDYR+C9wlm1blrEr/eyK1DZ0L3qUscvY1dftsj9M1lAUiC698Ht0fHgQUAc8rzwDTSIyG2hTSi2zun7GrvSzKwrbslXyBoWNXcaupGGEIApEp33tp5TaICIV6NzjL9F5vp/b9stSusSEsSsN7Upn24xdxq5kYsYIokOhqzyidBrcHcB+wBkiMlREzhSR8hR8sMau/mObscvYlTSMEISJiJwmIi+AN/Ur07NdlFLr0B9wEbqI2wJ0/R5jV5rZlc62GbuMXSkj2YMSffGBLn28Ad2l+49te5bnrxVi+wO6SuZEY1f62ZXOthm7jF2pfJgeQXjkANcrpfYD9orIEtAlpj2xPSUiQ9Flm/9HJS/ty9jVf2wzdhm7UoYZLA4TESlQntILIvIKkK+UmuV5PloptSUVo/7Grv5jm7HL2JUqjBBEgNhSGz0fcDa6DMIxwE9UkqpiGrv6r23GLmNXKjBCEADPwE6vm2PfLiKb0TNgj1VKfWbsSj+70tk2Y5exK10wYwQ+iMg40as72WuVZ3j+jgWsJfaORi/1OCcZH6yxq//YZuwydqUbRghsiF4t6BngQeDnIlLsUfUu0Wu/Pohe8g90VcATkjHYY+zqP7YZu4xdaYlKg9SldHigV01aiV4t6xDgn8A+nteygA+x1cIxdqWnXelsm7HL2JWuDzNG4EFEfgpsVEq9LiIlwBLgY/QH/g565aJOEb2AhErSjTN29R/bjF3GrnTFCIEPIuJAz/j7AHgXOBI4EL2m7i6VxIJoxq7+aZuxy9iVbgzohWlEZH9gt9ILoYjSuEXkR0qpas8+LuAbQEeyPlhjV/+xzdhl7OoLDNjBYhE5Fd2Nu0F00SdljfgDNbZdDwCGovOAjV1pZlc622bsMnb1FQZkaEhEhqHX6a0EdgKlwD1KqSpL7T3xvZ8D84ALlFJrjF3pZVc622bsMnb1JQakEIDOAUYvC1cBnArkAfcqpTZ5Xh8EXAW8kMwP1tjVf2wzdhm7+goDSghEpBzdlctStineIjID/QE7gCvRFQQ3KqWajF3pZ1c622bsMnb1RQbMGIHoCSCvAfcBj4nIAdZrSqllwL+AHehUsHfQsT5jV5rZlc62GbuMXX0WlQaTGRL5AAQYDaxGF3wqBX4FbMenFjhwN/A1MMnYlV52pbNtxi5jV19/pNyApLxJvULQAmAk3eGwK4BtwATP8wLgU2CqsSs97Upn24xdxq6+/Ei5AQn+UMejp4Fby8Jd7fP61cDjgNPz3GHsSj+70tk2Y5exqz88Um5AAj/Yk4HPgP8A9wPfBjYB19n2GQv8xab8YuxKL7vS2TZjl7Grvzz65cxiEZkJ/An4nlJqpYgsAA4HZgIfiUgm8CwwCzgUyAcalecTNnalh13pbJuxy9iVSLuSTqqVKBEP9Id4oe15CfCq5/99gUeBB4DlwGRjV3ralc62GbuMXf3pkXIDEvThZgJDbf+PQlcGHOHZNgZdZ2mYsSt97Upn24xdxq7+9OiX8wiUUp1Kqd2epwI0AQ1KqR0iMg9dHTBbKbXL2JW+dqWzbcYuY1d/YsDMLBaRx9GTQOaiu4KrU2uRxtgVOelqm7ErMoxd6UO/FwJPQahsYJ3n7zeVUhtSa5WxKxrS1TZjV2QYu9KPfi8EFiJyIfCxSrN1Q41dkZOuthm7IsPYlT4MJCEQlYZv1tgVOelqm7ErMoxd6cOAEQKDwWAw+KdfZg0ZDAaDIXyMEBgMBsMAxwiBwWAwDHCMEBgMBsMAxwiBod8iIqNF5D0RWScia0XkZ57thSLylohs8Pwt8Gwv8uy/V0Tu9znXv0XkU895HvQUI/N3zVtEZIuI7PXZPkdEVohIh4icFcTmX4rI5yLymYi8IyJjbK9d4LF5g4hcEMu9MRjsGCEw9Gc6gF8ppQ4EjgAuF5GDgGuBd5RS+6OXGrzWs78b+C16LVpfvqOUOgSYhC5MdnaAa76Mrl7pSxVwIfDXEDavBKYrpQ4GXgBuBy1ewI3ADM/5b7QEzGCIFSMEhn6LUmqHUmqF5/896BmjI9GLjz/h2e0J4DTPPs1KqSVoQfA9l1WPJgvIAfzmXSulPlJK7fCzfZNS6jOgK4TN7ymlXJ6nH6GLoAGcALyllGpQSjUCbwHfCnYugyFcjBAYBgQiMhaYCiwDSi1n7fk7PMxzvAHsBPagW+uJ5gfA657/RwJbbK9t9WwzGGLGCIGh3yMig4EXgZ/bWvYRo5Q6ARgB5ALfiJN5fvFUvpwO3GFt8mdSIm0wDByMEBj6NSKSjRaBp5VSf/dsrhGREZ7XR6Bb+WGhlHIDLwGnikimiKzyPG6K0r5brHPYth0H/Br4tlKq1bN5KzDadugoYHs01zQYfDFCYOi3eKpJPgKsU0rdZXvpJcDKurkA+FeI8wy2CUcWcCJQ6allP8XzuCEaG5VSv7bO4Tn/VPTauN9WStkF6g1grogUeAaJ53q2GQwxY2oNGfotIjILWAyspnuQ9nr0OMHfgHJ0Ns/ZSqkGzzGbgKHoAeEmtMOtB15Bh4QygXeBXyilOvxc83bgXGAfdIv9YaXU70TkMOAfQAF6MLpaKTXRz/FvA5PR9fABqpRS3/a8Nt9jP8AtSqnHorkvBoMvRggMBoNhgGNCQwaDwTDAMUJgMBgMAxwjBAaDwTDAMUJgMBgMAxwjBAaDwTDAMUJgMBgMAxwjBAaDwTDAMUJgMBgMA5z/D6oBwdqfc6XOAAAAAElFTkSuQmCC\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "def plot_prediction(ds_preds, i):\n", " \"\"\"Plot a prediction into the future, at a single point in time.\"\"\"\n", @@ -2959,14 +3577,37 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 238, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:12:49.086270Z", - "start_time": "2020-10-18T03:12:40.700Z" + "end_time": "2020-10-18T05:30:54.054423Z", + "start_time": "2020-10-18T05:30:53.794806Z" } }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'NLL vs time (no. samples=4439)')" + ] + }, + "execution_count": 238, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "d = ds_preds.mean('t_source') # Mean over all predictions\n", "\n", @@ -2982,14 +3623,37 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 239, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:12:49.088308Z", - "start_time": "2020-10-18T03:12:40.700Z" + "end_time": "2020-10-18T05:30:54.354762Z", + "start_time": "2020-10-18T05:30:54.057241Z" } }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 239, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "d = ds_preds.mean('t_source') # Mean over all predictions\n", "d['likelihood'] = np.exp(-d.nll) # get likelihood, after taking mean in log domain\n", @@ -3010,21 +3674,40 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 243, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:12:49.089886Z", - "start_time": "2020-10-18T03:12:40.700Z" + "end_time": "2020-10-18T05:31:59.446646Z", + "start_time": "2020-10-18T05:31:58.636726Z" } }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "1" + ] + }, + "execution_count": 243, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "# Make a plot of the NLL over time. Does this solution get worse with time?\n", - "# this is hard because we need to take the mean over t_ahead\n", - "# then group by t_source\n", - "d = ds_preds.mean('t_ahead').groupby('t_source').mean()\n", - "# And even then it's clearer with smoothing\n", - "d.plot.scatter('t_source', 'nll')\n", + "d = ds_preds.mean('t_ahead').groupby('t_source').mean().plot.scatter('t_source', 'nll')\n", "plt.xticks(rotation=45)\n", "plt.title('NLL over time (lower is better)')\n", "1" @@ -3032,19 +3715,56 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 241, "metadata": { "ExecuteTime": { - "end_time": "2020-10-18T03:12:49.091195Z", - "start_time": "2020-10-18T03:12:40.700Z" + "end_time": "2020-10-18T05:30:55.880569Z", + "start_time": "2020-10-18T05:30:55.213935Z" } }, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 241, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "# A scatter plot is easy with xarray\n", "ds_preds.plot.scatter('y_true', 'y_pred', s=.01)" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": null, diff --git a/notebooks/RNN_Timeseries_Seq2Seq.py b/notebooks/RNN_Timeseries_Seq2Seq.py index f34d039..dd30d03 100644 --- a/notebooks/RNN_Timeseries_Seq2Seq.py +++ b/notebooks/RNN_Timeseries_Seq2Seq.py @@ -202,6 +202,8 @@ plt.legend() df_norm +# These are the columns that we wont know in the future +# We need to blank them out in x_future columns_blank=['visibility', 'windBearing', 'temperature', 'dewPoint', 'pressure', 'apparentTemperature', 'windSpeed', 'humidity'] @@ -217,10 +219,6 @@ ds_test = Seq2SeqDataSet(df_test, print(ds_train) print(ds_test) -# %%timeit -for i in range(100): - ds_train[i] - # we can treat it like an array ds_train[0] len(ds_train) @@ -426,10 +424,8 @@ training_loop(ds_train, ds_test, model, epochs=8, bs=batch_size) # ## Predict # -# TODO get working -output_scaler = scaler.transformers[-4][1] -ds_preds = predict(model, ds_test, batch_size*6, device=device, scaler=output_scaler) - +ds_preds = predict(model, ds_test, batch_size, device=device, scaler=output_scaler) +ds_preds # + @@ -504,11 +500,7 @@ d.plot.scatter('t_ahead_hours', 'likelihood') # Make a plot of the NLL over time. Does this solution get worse with time? -# this is hard because we need to take the mean over t_ahead -# then group by t_source -d = ds_preds.mean('t_ahead').groupby('t_source').mean() -# And even then it's clearer with smoothing -d.plot.scatter('t_source', 'nll') +d = ds_preds.mean('t_ahead').groupby('t_source').mean().plot.scatter('t_source', 'nll') plt.xticks(rotation=45) plt.title('NLL over time (lower is better)') 1 @@ -517,3 +509,7 @@ plt.title('NLL over time (lower is better)') ds_preds.plot.scatter('y_true', 'y_pred', s=.01) + + + + diff --git a/seq2seq_time/data/dataset.py b/seq2seq_time/data/dataset.py index 88b7a3d..1c969c7 100644 --- a/seq2seq_time/data/dataset.py +++ b/seq2seq_time/data/dataset.py @@ -12,6 +12,7 @@ def assert_no_objects(df): assert dtype.name!='object', f'all objects should be pd.categories. {name} is not' + class Seq2SeqDataSet(torch.utils.data.Dataset): """ Takes in dataframe and returns sequences through time. @@ -26,37 +27,34 @@ class Seq2SeqDataSet(torch.utils.data.Dataset): - columns_blank: The columns we will blank, in the future """ super().__init__() - # TODO auto categorical columns - # TODO specify blank future columns assert isinstance(df.index, pd.DatetimeIndex), 'should have a datetime index' assert df.index.freq is not None, 'should have freq' - # assert_normalized(df) assert_no_objects(df) - # Use numpy instead of pandas, for speed - self.x = df.drop(columns=columns_target).copy().values - self.y = df[columns_target].copy().values - self.t = df.index.copy() - self.columns = list(df.columns) - self.icol_blank = [df.drop(columns=columns_target).columns.tolist().index(n) for n in columns_blank] + self.df = df self.window_past = window_past self.window_future = window_future self.columns_target = columns_target + # For speed + self._icol_blank = [df.drop(columns = columns_target).columns.tolist().index(n) for n in columns_blank] + self._x = self.df.drop(columns = self.columns_target).values + self._y = self.df[columns_target].values + def get_components(self, i): """Get past and future rows.""" - x = self.x[i : i + (self.window_past + self.window_future)].copy() - y = self.y[i:i + (self.window_past + self.window_future)].copy() - t = self.t[i:i + (self.window_past + self.window_future)].copy() - t = t.astype(int) * 1e-9 / 60 / 60 / 24 # days - t = t.values - now = t[self.window_past] + x = self._x[i : i + (self.window_past + self.window_future)].copy() + y = self._y[i:i + (self.window_past + self.window_future)].copy() + time = self.df.index.values[i:i + (self.window_past + self.window_future)].copy() + + days = time.astype(int) * 1e-9 / 60 / 60 / 24 # days + now = days[self.window_past] # Add a features: relative hours since present time, is future - tstp = (t - now)[:, None] - is_past = tstp < 0 - x = np.concatenate([x, tstp, is_past], -1) + days_since_present = (days - now)[:, None] + is_past = days_since_present < 0 + x = np.concatenate([x, days_since_present, is_past], -1) # Split into future and past x_past = x[:self.window_past] @@ -65,7 +63,7 @@ class Seq2SeqDataSet(torch.utils.data.Dataset): y_future = y[self.window_past:] # Stop it cheating by using future weather measurements - x_future[:, self.icol_blank] = 0 + x_future[:, self._icol_blank] = 0 return x_past, y_past, x_future, y_future @@ -83,10 +81,10 @@ class Seq2SeqDataSet(torch.utils.data.Dataset): """ Output pandas dataframes for display purposes. """ - x_cols = list(self.columns)[1:] + ['tsp_days', 'is_past'] + x_cols = list(self.df.drop(columns=self.columns_target).columns) + ['tsp_days', 'is_past'] x_past, y_past, x_future, y_future = self.get_components(i) - t_past = self.t[i:i+self.window_past] - t_future = self.t[i+self.window_past:i+self.window_past + self.window_future] + t_past = self.df.index[i:i+self.window_past] + t_future = self.df.index[i+self.window_past:i+self.window_past + self.window_future] x_past = pd.DataFrame(x_past, columns=x_cols, index=t_past) x_future = pd.DataFrame(x_future, columns=x_cols, index=t_future) y_past = pd.DataFrame(y_past, columns=self.columns_target, index=t_past) @@ -94,7 +92,8 @@ class Seq2SeqDataSet(torch.utils.data.Dataset): return x_past, y_past, x_future, y_future def __len__(self): - return len(self.x) - (self.window_past + self.window_future) + return len(self._x) - (self.window_past + self.window_future) def __repr__(self): - return f'<{type(self).__name__}(shape={self.x.shape}, times={self.t[0]} to {self.t[1]} at {self.t.freq.freqstr})>' + t = self.df.index + return f'<{type(self).__name__}(shape={self.df.shape}, times={t[0]} to {t[1]} at {t.freq.freqstr})>' diff --git a/seq2seq_time/predict.py b/seq2seq_time/predict.py index a3acad5..8f0d2c9 100644 --- a/seq2seq_time/predict.py +++ b/seq2seq_time/predict.py @@ -17,7 +17,7 @@ def predict(model, ds_test, batch_size, device='cpu', scaler=None): It's hard to use pandas for data with virtual dimensions so we will use xarray. Xarray has an interface similar to pandas but also allows coordinates which are virtual dimensions. """ load_test = torch.utils.data.dataloader.DataLoader(ds_test, batch_size=batch_size) - freq = ds_test.t.freq + freq = ds_test.df.index.freq xrs = [] for i, batch in enumerate(tqdm(load_test, desc='predict')): model.eval() @@ -35,7 +35,7 @@ def predict(model, ds_test, batch_size, device='cpu', scaler=None): # Make an xarray.Dataset for the data bs = y_future.shape[0] - t_source = ds_test.t[i:i+bs].values + t_source = ds_test.df.index[i:i+bs].values t_ahead = pd.timedelta_range(0, periods=ds_test.window_future, freq=freq).values t_behind = pd.timedelta_range(end=-pd.Timedelta(freq), periods=ds_test.window_past, freq=freq) xr_out = xr.Dataset(