├── image ├── fft1.png ├── conf1.png ├── conf2.png ├── conf3.png ├── conf4.png ├── model.png ├── motor.jpg ├── results1.png ├── results2.png ├── framework1.JPG └── framework2.JPG ├── README.md └── main └── induction_motor.ipynb /image/fft1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/fft1.png -------------------------------------------------------------------------------- /image/conf1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/conf1.png -------------------------------------------------------------------------------- /image/conf2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/conf2.png -------------------------------------------------------------------------------- /image/conf3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/conf3.png -------------------------------------------------------------------------------- /image/conf4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/conf4.png -------------------------------------------------------------------------------- /image/model.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/model.png -------------------------------------------------------------------------------- /image/motor.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/motor.jpg -------------------------------------------------------------------------------- /image/results1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/results1.png -------------------------------------------------------------------------------- /image/results2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/results2.png -------------------------------------------------------------------------------- /image/framework1.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/framework1.JPG -------------------------------------------------------------------------------- /image/framework2.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mo26-web/Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning/HEAD/image/framework2.JPG -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Induction-Motor-Faults-Detection-with-Stacking-Ensemble-Method-and-Deep-Learning 2 | This is a induction motor faults detection project implemented with Tensorflow. We use Stacking Ensembles method (with Random Forest, Support Vector Machine, Deep Neural Network and Logistic Regression) and Machinery Fault Dataset dataset available on kaggle. 3 | 4 | ## Machinery Fault Dataset 5 | This database is composed of 1951 multivariate time-series acquired by sensors on a SpectraQuest's Machinery Fault Simulator (MFS) Alignment-Balance-Vibration (ABVT). The 1951 comprises six different simulated states: normal function, imbalance fault, horizontal and vertical misalignment faults and, inner and outer bearing faults. This section describes the database. For more info please check : http://www02.smt.ufrj.br/~offshore/mfs/page_01.html 6 |

7 | 8 |

9 | 10 | ## Visualization of Some Features 11 |

12 | 13 |

14 | 15 |

16 | 17 |

18 | 19 | ## Data Pre-Process 20 | ### FFT Transform (convolution) 21 | FFT convolution uses the principle that multiplication in the frequency domain corresponds to convolution in the time domain. The input signal is transformed into the frequency domain using the DFT, multiplied by the frequency response of the filter, and then transformed back into the time domain using the Inverse DFT. 22 |

23 | 24 |

25 | 26 |

27 | 28 |

29 | 30 | ## Stacking Ensemble Method 31 | Stacking or Stacked Generalization is an ensemble machine learning algorithm. It uses a meta-learning algorithm to learn how to best combine the predictions from two or more base machine learning algorithms.The benefit of stacking is that it can harness the capabilities of a range of well-performing models on a classification or regression task and make predictions that have better performance than any single model in the ensemble. 32 | The architecture of a stacking model involves two or more base models, often referred to as level-0 models, and a meta-model that combines the predictions of the base models, referred to as a level-1 model. 33 | 34 | * Level-0 Models (Base-Models): Models fit on the training data and whose predictions are compiled. 35 | * Level-1 Model (Meta-Model): Model that learns how to best combine the predictions of the base models. 36 | 37 | The meta-model is trained on the predictions made by base models on out-of-sample data. That is, data not used to train the base models is fed to the base models, predictions are made, and these predictions, along with the expected outputs, provide the input and output pairs of the training dataset used to fit the meta-model. 38 | 39 | The outputs from the base models used as input to the meta-model may be real value in the case of regression, and probability values, probability like values, or class labels in the case of classification. 40 | 41 |

42 | 43 |

44 | 45 | ### Our Proposed Frameworks 46 | #### Framework 1 47 | 48 |

49 | 50 |

51 | 52 | #### Framework 2 53 | 54 |

55 | 56 |

57 | 58 | ##### Deep Neural Network Architecture: 59 |

60 | 61 |

62 | 63 | ## Results 64 | ### Framework 1 (On Test Data) 65 | 66 |

67 | 68 |

69 | 70 | ```bash 71 | 72 | precision recall f1-score support 73 | 74 | normal 0.99 0.99 0.99 24692 75 | imbalance 6g 1.00 1.00 1.00 24369 76 | imbalance 10g 1.00 1.00 1.00 24107 77 | imbalance 15g 0.95 0.95 0.95 23728 78 | imbalance 20g 0.96 0.95 0.95 24588 79 | imbalance 25g 0.95 0.95 0.95 23588 80 | imbalance 30g 0.98 0.97 0.97 23381 81 | imbalance 35g 0.98 0.98 0.98 22544 82 | 83 | accuracy 0.97 190997 84 | macro avg 0.97 0.97 0.97 190997 85 | weighted avg 0.97 0.97 0.97 190997 86 | ``` 87 | 88 | ### Framework 2 (On Test Data) 89 | 90 | 91 |

92 | 93 |

94 | 95 | ```bash 96 | 97 | precision recall f1-score support 98 | 99 | normal 0.99 1.00 0.99 24725 100 | imbalance 6g 1.00 1.00 1.00 24553 101 | imbalance 10g 1.00 1.00 1.00 23819 102 | imbalance 15g 0.96 0.96 0.96 24007 103 | imbalance 20g 0.96 0.96 0.96 24472 104 | imbalance 25g 0.96 0.96 0.96 23308 105 | imbalance 30g 0.98 0.98 0.98 23576 106 | imbalance 35g 0.98 0.98 0.98 22537 107 | 108 | accuracy 0.98 190997 109 | macro avg 0.98 0.98 0.98 190997 110 | weighted avg 0.98 0.98 0.98 190997 111 | ``` 112 | -------------------------------------------------------------------------------- /main/induction_motor.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 1, 6 | "metadata": { 7 | "colab": { 8 | "base_uri": "https://localhost:8080/" 9 | }, 10 | "id": "TT6TOX4AHDx0", 11 | "outputId": "ae12fe31-655c-401d-d49f-5cefcc87206b" 12 | }, 13 | "outputs": [ 14 | { 15 | "name": "stdout", 16 | "output_type": "stream", 17 | "text": [ 18 | "Mounted at /content/gdrive\n" 19 | ] 20 | } 21 | ], 22 | "source": [ 23 | "from google.colab import drive\n", 24 | "drive.mount(\"/content/gdrive\", force_remount=True)" 25 | ] 26 | }, 27 | { 28 | "cell_type": "code", 29 | "execution_count": null, 30 | "metadata": { 31 | "colab": { 32 | "base_uri": "https://localhost:8080/" 33 | }, 34 | "id": "raY5cdtqHM23", 35 | "outputId": "140e2dfb-8281-48bc-9c0b-0747d2f3fb52" 36 | }, 37 | "outputs": [ 38 | { 39 | "name": "stdout", 40 | "output_type": "stream", 41 | "text": [ 42 | "/content/gdrive/MyDrive/Induction\n" 43 | ] 44 | } 45 | ], 46 | "source": [ 47 | "%cd /content/gdrive/MyDrive/Induction\n" 48 | ] 49 | }, 50 | { 51 | "cell_type": "code", 52 | "execution_count": null, 53 | "metadata": { 54 | "id": "YkdR3BxxHksD" 55 | }, 56 | "outputs": [], 57 | "source": [ 58 | "import os\n", 59 | "os.environ['KAGGLE_CONFIG_DIR'] = \"/content/gdrive/MyDrive/Induction\"" 60 | ] 61 | }, 62 | { 63 | "cell_type": "code", 64 | "execution_count": null, 65 | "metadata": { 66 | "id": "0fH-S-7OH5jb" 67 | }, 68 | "outputs": [], 69 | "source": [ 70 | "!kaggle datasets download -d uysalserkan/fault-induction-motor-dataset" 71 | ] 72 | }, 73 | { 74 | "cell_type": "code", 75 | "execution_count": null, 76 | "metadata": { 77 | "id": "S3rAUDPbISGr" 78 | }, 79 | "outputs": [], 80 | "source": [ 81 | "!unzip /content/gdrive/MyDrive/Induction/fault-induction-motor-dataset.zip" 82 | ] 83 | }, 84 | { 85 | "cell_type": "code", 86 | "execution_count": 2, 87 | "metadata": { 88 | "id": "ASmJ6ntTII40" 89 | }, 90 | "outputs": [], 91 | "source": [ 92 | "import numpy as np # linear algebra\n", 93 | "import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n", 94 | "import os\n", 95 | "import glob\n", 96 | "from scipy import stats\n", 97 | "from tensorflow.keras.losses import binary_crossentropy, mean_squared_error\n", 98 | "import tensorflow.keras.backend as K\n", 99 | "from keras.models import Sequential\n", 100 | "from tensorflow.keras.models import Model\n", 101 | "from tensorflow.keras.layers import Input, concatenate, Dense, BatchNormalization, add, concatenate, Lambda, Flatten\n", 102 | "from tensorflow.keras.optimizers import RMSprop,Adam\n", 103 | "from tensorflow.python.keras import regularizers\n", 104 | "import tensorflow.keras as keras \n", 105 | "import tensorflow as tf\n", 106 | "import numpy as np \n", 107 | "import cv2 \n", 108 | "import os \n", 109 | "from scipy import stats\n", 110 | "from sklearn.preprocessing import LabelEncoder\n", 111 | "import matplotlib.pyplot as plt\n", 112 | "from sklearn.semi_supervised import SelfTrainingClassifier\n", 113 | "from sklearn.svm import SVC\n", 114 | "svc = SVC(probability=True, gamma=\"auto\")\n", 115 | "from keras.wrappers.scikit_learn import KerasClassifier\n" 116 | ] 117 | }, 118 | { 119 | "cell_type": "code", 120 | "execution_count": 3, 121 | "metadata": { 122 | "id": "yu6EtSPqWFuE" 123 | }, 124 | "outputs": [], 125 | "source": [ 126 | "normal_file_names = glob.glob(\"/content/gdrive/MyDrive/Induction/normal/normal/*.csv\")\n", 127 | "imnormal_file_names_6g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/6g/*.csv\")\n", 128 | "imnormal_file_names_10g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/10g/*.csv\")\n", 129 | "imnormal_file_names_15g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/15g/*.csv\")\n", 130 | "imnormal_file_names_20g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/20g/*.csv\")\n", 131 | "imnormal_file_names_25g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/25g/*.csv\")\n", 132 | "imnormal_file_names_30g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/30g/*.csv\")\n", 133 | "imnormal_file_names_35g = glob.glob(\"/content/gdrive/MyDrive/Induction/imbalance/imbalance/35g/*.csv\")" 134 | ] 135 | }, 136 | { 137 | "cell_type": "code", 138 | "execution_count": 4, 139 | "metadata": { 140 | "id": "HoY61ZGZWeLE" 141 | }, 142 | "outputs": [], 143 | "source": [ 144 | "def dataReader(path_names):\n", 145 | " data_n = pd.DataFrame()\n", 146 | " for i in path_names:\n", 147 | " low_data = pd.read_csv(i,header=None)\n", 148 | " data_n = pd.concat([data_n,low_data],ignore_index=True)\n", 149 | " return data_n" 150 | ] 151 | }, 152 | { 153 | "cell_type": "code", 154 | "execution_count": 5, 155 | "metadata": { 156 | "id": "MLEMydFoWgLi" 157 | }, 158 | "outputs": [], 159 | "source": [ 160 | "data_n = dataReader(normal_file_names)\n", 161 | "data_6g = dataReader(imnormal_file_names_6g)\n", 162 | "data_10g = dataReader(imnormal_file_names_10g)\n", 163 | "data_15g = dataReader(imnormal_file_names_15g)\n", 164 | "data_20g = dataReader(imnormal_file_names_20g)\n", 165 | "data_25g = dataReader(imnormal_file_names_25g)\n", 166 | "data_30g = dataReader(imnormal_file_names_30g)\n", 167 | "data_35g = dataReader(imnormal_file_names_35g)" 168 | ] 169 | }, 170 | { 171 | "cell_type": "code", 172 | "execution_count": null, 173 | "metadata": { 174 | "colab": { 175 | "base_uri": "https://localhost:8080/" 176 | }, 177 | "id": "rr3P5etmWpTR", 178 | "outputId": "7f6e7fce-a09a-491c-9d87-8193f57a793e" 179 | }, 180 | "outputs": [ 181 | { 182 | "name": "stdout", 183 | "output_type": "stream", 184 | "text": [ 185 | "\n", 186 | "RangeIndex: 12250000 entries, 0 to 12249999\n", 187 | "Data columns (total 8 columns):\n", 188 | " # Column Dtype \n", 189 | "--- ------ ----- \n", 190 | " 0 0 float64\n", 191 | " 1 1 float64\n", 192 | " 2 2 float64\n", 193 | " 3 3 float64\n", 194 | " 4 4 float64\n", 195 | " 5 5 float64\n", 196 | " 6 6 float64\n", 197 | " 7 7 float64\n", 198 | "dtypes: float64(8)\n", 199 | "memory usage: 747.7 MB\n" 200 | ] 201 | } 202 | ], 203 | "source": [ 204 | "data_n.info()\n" 205 | ] 206 | }, 207 | { 208 | "cell_type": "code", 209 | "execution_count": null, 210 | "metadata": { 211 | "colab": { 212 | "base_uri": "https://localhost:8080/" 213 | }, 214 | "id": "lyk8PEqPnVjP", 215 | "outputId": "63e2f527-791b-4d0d-86d0-14623f5f2141" 216 | }, 217 | "outputs": [ 218 | { 219 | "name": "stdout", 220 | "output_type": "stream", 221 | "text": [ 222 | "(12250000, 8)\n", 223 | "(12250000, 8)\n" 224 | ] 225 | } 226 | ], 227 | "source": [ 228 | "print(data_n.shape)\n", 229 | "print(data_6g.shape)" 230 | ] 231 | }, 232 | { 233 | "cell_type": "code", 234 | "execution_count": 6, 235 | "metadata": { 236 | "id": "3xm9rBKGWrpK" 237 | }, 238 | "outputs": [], 239 | "source": [ 240 | "def downSampler(data,a,b):\n", 241 | " \"\"\"\n", 242 | " data = data\n", 243 | " a = start index\n", 244 | " b = sampling rate\n", 245 | " \"\"\"\n", 246 | " data_decreased = pd.DataFrame()\n", 247 | " x = b\n", 248 | " for i in range(int(len(data)/x)):\n", 249 | " data_decreased = data_decreased.append(data.iloc[a:b,:].sum()/x,ignore_index=True)\n", 250 | " a += x\n", 251 | " b += x\n", 252 | " return data_decreased" 253 | ] 254 | }, 255 | { 256 | "cell_type": "code", 257 | "execution_count": 7, 258 | "metadata": { 259 | "id": "UYyh0orZWwzg" 260 | }, 261 | "outputs": [], 262 | "source": [ 263 | "data_n = downSampler(data_n, 0, 300)\n", 264 | "data_6g = downSampler(data_6g, 0, 300)\n", 265 | "data_10g = downSampler(data_10g, 0, 300)\n", 266 | "data_15g = downSampler(data_15g, 0, 300)\n", 267 | "data_20g = downSampler(data_20g, 0, 300)\n", 268 | "data_25g = downSampler(data_25g, 0, 300)\n", 269 | "data_30g = downSampler(data_30g, 0, 300)\n", 270 | "data_35g = downSampler(data_35g, 0, 300)" 271 | ] 272 | }, 273 | { 274 | "cell_type": "code", 275 | "execution_count": null, 276 | "metadata": { 277 | "colab": { 278 | "base_uri": "https://localhost:8080/" 279 | }, 280 | "id": "QRSBL3IxmbmN", 281 | "outputId": "bb53417b-c5b9-4d53-dd11-0cf3632c8001" 282 | }, 283 | "outputs": [ 284 | { 285 | "data": { 286 | "text/plain": [ 287 | "(40833, 8)" 288 | ] 289 | }, 290 | "execution_count": 12, 291 | "metadata": {}, 292 | "output_type": "execute_result" 293 | } 294 | ], 295 | "source": [ 296 | "data_n.shape" 297 | ] 298 | }, 299 | { 300 | "cell_type": "code", 301 | "execution_count": null, 302 | "metadata": { 303 | "id": "GKvlf5CcW0F5" 304 | }, 305 | "outputs": [], 306 | "source": [ 307 | "import matplotlib.pyplot as plt\n", 308 | "fig, axs = plt.subplots(8, sharex=False, sharey=False,figsize=(15,15))\n", 309 | "fig.suptitle('All Features of Normal State')\n", 310 | "for i in data_n.columns:\n", 311 | " axs[i].plot(data_n[i])\n", 312 | " axs[i].set_title('{} Column of Dataset'.format(i))" 313 | ] 314 | }, 315 | { 316 | "cell_type": "code", 317 | "execution_count": null, 318 | "metadata": { 319 | "id": "960TEa0QW62H" 320 | }, 321 | "outputs": [], 322 | "source": [ 323 | "import matplotlib.pyplot as plt\n", 324 | "fig, axs = plt.subplots(8, sharex=False, sharey=False,figsize=(15,15))\n", 325 | "fig.suptitle('All Features of Normal State')\n", 326 | "for i in data_6g.columns:\n", 327 | " axs[i].plot(data_n[i])\n", 328 | " axs[i].set_title('{} Column of Anormal State'.format(i))" 329 | ] 330 | }, 331 | { 332 | "cell_type": "code", 333 | "execution_count": 8, 334 | "metadata": { 335 | "id": "ps9COfQPZak2" 336 | }, 337 | "outputs": [], 338 | "source": [ 339 | "from scipy import signal\n", 340 | "def FFT(data):\n", 341 | " autocorr = signal.fftconvolve(data,data[::-1],mode='full')\n", 342 | " return pd.DataFrame(autocorr)" 343 | ] 344 | }, 345 | { 346 | "cell_type": "code", 347 | "execution_count": 9, 348 | "metadata": { 349 | "id": "5N8UxgYGZdVo" 350 | }, 351 | "outputs": [], 352 | "source": [ 353 | "data_n = FFT(data_n)\n", 354 | "data_6g = FFT(data_6g)\n", 355 | "data_10g = FFT(data_10g)\n", 356 | "data_15g = FFT(data_15g)\n", 357 | "data_20g = FFT(data_20g)\n", 358 | "data_25g = FFT(data_25g)\n", 359 | "data_30g = FFT(data_30g)\n", 360 | "data_35g = FFT(data_35g)" 361 | ] 362 | }, 363 | { 364 | "cell_type": "code", 365 | "execution_count": null, 366 | "metadata": { 367 | "id": "c8RO6UPfZoLV" 368 | }, 369 | "outputs": [], 370 | "source": [ 371 | "y_1 = pd.DataFrame(np.ones(int(len(data_n)),dtype=int))\n", 372 | "y_2 = pd.DataFrame(np.zeros(int(len(data_6g)),dtype=int))\n", 373 | "y_3 = pd.DataFrame(np.full((int(len(data_10g)),1),2))\n", 374 | "y_4 = pd.DataFrame(np.full((int(len(data_15g)),1),3))\n", 375 | "y_5 = pd.DataFrame(np.full((int(len(data_20g)),1),4))\n", 376 | "y_6 = pd.DataFrame(np.full((int(len(data_25g)),1),5))\n", 377 | "y_7 = pd.DataFrame(np.full((int(len(data_30g)),1),6))\n", 378 | "y_8 = pd.DataFrame(np.full((int(len(data_35g)),1),7))\n", 379 | "\n", 380 | "y = pd.concat([y_1,y_2,y_3,y_4,y_5,y_6,y_7,y_8], ignore_index=True)\n", 381 | "from sklearn.preprocessing import LabelEncoder\n", 382 | "y = LabelEncoder().fit_transform(y)\n" 383 | ] 384 | }, 385 | { 386 | "cell_type": "code", 387 | "execution_count": null, 388 | "metadata": { 389 | "id": "8FRd8ddUZrcd" 390 | }, 391 | "outputs": [], 392 | "source": [ 393 | "data = pd.concat([data_n,data_6g,data_10g,data_15g,data_20g,data_25g,data_30g,data_35g],ignore_index=True)\n", 394 | "data" 395 | ] 396 | }, 397 | { 398 | "cell_type": "code", 399 | "execution_count": 12, 400 | "metadata": { 401 | "id": "lqFFCwJ-dZjG" 402 | }, 403 | "outputs": [], 404 | "source": [ 405 | "from sklearn.model_selection import train_test_split\n", 406 | "X_train, X_test, y_train, y_test = train_test_split(data,y, test_size=0.3, shuffle=True)" 407 | ] 408 | }, 409 | { 410 | "cell_type": "code", 411 | "execution_count": 25, 412 | "metadata": { 413 | "id": "LeJJhcxAhRSb" 414 | }, 415 | "outputs": [], 416 | "source": [ 417 | "checkpoint=keras.callbacks.ModelCheckpoint(\n", 418 | " filepath='best_model.{epoch:02d}-{val_loss:.2f}.h5',\n", 419 | " monitor='val_loss', save_best_only=True),\n", 420 | "early_stopping=keras.callbacks.EarlyStopping(monitor='val_loss', min_delta=0.01, patience=1, verbose=1, mode='auto', baseline=None, restore_best_weights=True)\n", 421 | "\n", 422 | "reduce_LOP=tf.keras.callbacks.ReduceLROnPlateau(monitor='val_loss', factor=0.1, patience=2, verbose=1, mode='auto', min_delta=0.01, cooldown=0, min_lr=0.001)\n", 423 | "Callbacks=[checkpoint,reduce_LOP]" 424 | ] 425 | }, 426 | { 427 | "cell_type": "code", 428 | "execution_count": 26, 429 | "metadata": { 430 | "id": "LtIhMjLtmfe1" 431 | }, 432 | "outputs": [], 433 | "source": [ 434 | "def create_model():\n", 435 | " model = Sequential()\n", 436 | " model.add(Dense(32, activation='LeakyReLU', input_shape=(15,),kernel_initializer='random_uniform'))\n", 437 | " model.add(Dense(64, activation='LeakyReLU',kernel_initializer='random_uniform'))\n", 438 | " model.add(Dense(128, activation='LeakyReLU',kernel_initializer='random_uniform'))\n", 439 | " model.add(Dense(64, activation='LeakyReLU',kernel_initializer='random_uniform'))\n", 440 | " model.add(Dense(32, activation='LeakyReLU',kernel_initializer='random_uniform'))\n", 441 | " model.add(Dense(8, activation='softmax',kernel_initializer='random_uniform'))\n", 442 | "\n", 443 | " model.compile(loss='sparse_categorical_crossentropy',optimizer=tf.keras.optimizers.Adam(), metrics=['accuracy'])\n", 444 | " return model" 445 | ] 446 | }, 447 | { 448 | "cell_type": "code", 449 | "execution_count": 27, 450 | "metadata": { 451 | "colab": { 452 | "base_uri": "https://localhost:8080/" 453 | }, 454 | "id": "7bXCYcDEv0Qi", 455 | "outputId": "aad119a9-c039-40c0-8d88-d7fdda9dd61f" 456 | }, 457 | "outputs": [ 458 | { 459 | "name": "stdout", 460 | "output_type": "stream", 461 | "text": [ 462 | "Model: \"sequential_8\"\n", 463 | "_________________________________________________________________\n", 464 | " Layer (type) Output Shape Param # \n", 465 | "=================================================================\n", 466 | " dense_48 (Dense) (None, 32) 512 \n", 467 | " \n", 468 | " dense_49 (Dense) (None, 64) 2112 \n", 469 | " \n", 470 | " dense_50 (Dense) (None, 128) 8320 \n", 471 | " \n", 472 | " dense_51 (Dense) (None, 64) 8256 \n", 473 | " \n", 474 | " dense_52 (Dense) (None, 32) 2080 \n", 475 | " \n", 476 | " dense_53 (Dense) (None, 8) 264 \n", 477 | " \n", 478 | "=================================================================\n", 479 | "Total params: 21,544\n", 480 | "Trainable params: 21,544\n", 481 | "Non-trainable params: 0\n", 482 | "_________________________________________________________________\n" 483 | ] 484 | } 485 | ], 486 | "source": [ 487 | "model=create_model()\n", 488 | "model.summary()" 489 | ] 490 | }, 491 | { 492 | "cell_type": "code", 493 | "execution_count": 28, 494 | "metadata": { 495 | "id": "JV5uKyE4mxYJ" 496 | }, 497 | "outputs": [], 498 | "source": [ 499 | "#initialize random seeds so results are repeatable\n", 500 | "import random\n", 501 | "import tensorflow as tf\n", 502 | "\n", 503 | "random.seed(1)\n", 504 | "np.random.seed(1)\n", 505 | "tf.random.set_seed(1)" 506 | ] 507 | }, 508 | { 509 | "cell_type": "code", 510 | "execution_count": null, 511 | "metadata": { 512 | "id": "aH4hg2C6KBMi" 513 | }, 514 | "outputs": [], 515 | "source": [ 516 | "!pip install scikeras\n", 517 | "from scikeras.wrappers import KerasClassifier" 518 | ] 519 | }, 520 | { 521 | "cell_type": "code", 522 | "execution_count": null, 523 | "metadata": { 524 | "id": "Uiox7G5LlFoI" 525 | }, 526 | "outputs": [], 527 | "source": [ 528 | "model = KerasClassifier(build_fn=create_model, epochs=40, batch_size=128, verbose=1)\n", 529 | "model._estimator_type = \"classifier\"\n", 530 | "\n", 531 | "#self_training_model = SelfTrainingClassifier(model)\n", 532 | "#history=model.fit(X_train, y_train, epochs=40, batch_size=128, verbose=1,validation_data=(X_test, y_test),callbacks=Callbacks)" 533 | ] 534 | }, 535 | { 536 | "cell_type": "code", 537 | "execution_count": null, 538 | "metadata": { 539 | "id": "okZPEHInEnfo" 540 | }, 541 | "outputs": [], 542 | "source": [ 543 | "results1=model.predict(X_train)\n", 544 | "results2=model.predict(X_test)" 545 | ] 546 | }, 547 | { 548 | "cell_type": "code", 549 | "execution_count": null, 550 | "metadata": { 551 | "id": "gnj2fiSXmc3Y" 552 | }, 553 | "outputs": [], 554 | "source": [ 555 | "from sklearn.ensemble import RandomForestClassifier\n", 556 | "from sklearn.svm import LinearSVC\n", 557 | "from sklearn.linear_model import LogisticRegression\n", 558 | "from sklearn.pipeline import make_pipeline\n", 559 | "from sklearn.ensemble import StackingClassifier\n", 560 | "estimators = [\n", 561 | " ('rf', RandomForestClassifier(n_estimators=10, random_state=42)),\n", 562 | " ('svr', make_pipeline(\n", 563 | " LinearSVC(random_state=42)))]\n", 564 | "\n", 565 | "clf = StackingClassifier(estimators=estimators, final_estimator=LogisticRegression())\n", 566 | "clf.fit(X_train, y_train)" 567 | ] 568 | }, 569 | { 570 | "cell_type": "code", 571 | "execution_count": null, 572 | "metadata": { 573 | "id": "pMHxffRfSlNU" 574 | }, 575 | "outputs": [], 576 | "source": [ 577 | "from sklearn.ensemble import RandomForestClassifier\n", 578 | "from sklearn.svm import LinearSVC\n", 579 | "from sklearn.linear_model import LogisticRegression\n", 580 | "from sklearn.pipeline import make_pipeline\n", 581 | "from sklearn.ensemble import StackingClassifier\n", 582 | "estimators = [\n", 583 | " ('rf', RandomForestClassifier(n_estimators=10, random_state=42)),\n", 584 | " ('dl', make_pipeline(\n", 585 | " model))]\n", 586 | "\n", 587 | "clf = StackingClassifier(estimators=estimators, final_estimator=LogisticRegression())\n", 588 | "clf.fit(X_train, y_train)" 589 | ] 590 | }, 591 | { 592 | "cell_type": "code", 593 | "execution_count": 32, 594 | "metadata": { 595 | "id": "sUnApiHUuMj5" 596 | }, 597 | "outputs": [], 598 | "source": [ 599 | "results1=clf.predict(X_train)\n", 600 | "results2=clf.predict(X_test)" 601 | ] 602 | }, 603 | { 604 | "cell_type": "code", 605 | "execution_count": 33, 606 | "metadata": { 607 | "colab": { 608 | "base_uri": "https://localhost:8080/" 609 | }, 610 | "id": "QmDOQSiutSAP", 611 | "outputId": "f0c6dfa1-9f00-4fcd-bf67-3585799d6a06" 612 | }, 613 | "outputs": [ 614 | { 615 | "name": "stdout", 616 | "output_type": "stream", 617 | "text": [ 618 | " precision recall f1-score support\n", 619 | "\n", 620 | " normal 1.00 1.00 1.00 56940\n", 621 | " imbalance 6g 1.00 1.00 1.00 57112\n", 622 | "imbalance 10g 1.00 1.00 1.00 56180\n", 623 | "imbalance 15g 1.00 1.00 1.00 55992\n", 624 | "imbalance 20g 1.00 1.00 1.00 57193\n", 625 | "imbalance 25g 1.00 1.00 1.00 55023\n", 626 | "imbalance 30g 1.00 1.00 1.00 54755\n", 627 | "imbalance 35g 1.00 1.00 1.00 52462\n", 628 | "\n", 629 | " accuracy 1.00 445657\n", 630 | " macro avg 1.00 1.00 1.00 445657\n", 631 | " weighted avg 1.00 1.00 1.00 445657\n", 632 | "\n", 633 | " precision recall f1-score support\n", 634 | "\n", 635 | " normal 0.99 1.00 0.99 24725\n", 636 | " imbalance 6g 1.00 1.00 1.00 24553\n", 637 | "imbalance 10g 1.00 1.00 1.00 23819\n", 638 | "imbalance 15g 0.96 0.96 0.96 24007\n", 639 | "imbalance 20g 0.96 0.96 0.96 24472\n", 640 | "imbalance 25g 0.96 0.96 0.96 23308\n", 641 | "imbalance 30g 0.98 0.98 0.98 23576\n", 642 | "imbalance 35g 0.98 0.98 0.98 22537\n", 643 | "\n", 644 | " accuracy 0.98 190997\n", 645 | " macro avg 0.98 0.98 0.98 190997\n", 646 | " weighted avg 0.98 0.98 0.98 190997\n", 647 | "\n" 648 | ] 649 | } 650 | ], 651 | "source": [ 652 | "from sklearn.metrics import classification_report\n", 653 | "LABELS = [\n", 654 | " 'normal',\n", 655 | " 'imbalance 6g',\n", 656 | " 'imbalance 10g',\n", 657 | " 'imbalance 15g',\n", 658 | " 'imbalance 20g',\n", 659 | " 'imbalance 25g',\n", 660 | " 'imbalance 30g',\n", 661 | " 'imbalance 35g',\n", 662 | "\n", 663 | "]\n", 664 | "\n", 665 | "print(classification_report(y_true = y_train, y_pred = results1,target_names=LABELS))\n", 666 | "print(classification_report(y_true = y_test, y_pred = results2,target_names=LABELS))" 667 | ] 668 | }, 669 | { 670 | "cell_type": "code", 671 | "execution_count": 34, 672 | "metadata": { 673 | "colab": { 674 | "base_uri": "https://localhost:8080/", 675 | "height": 580 676 | }, 677 | "id": "_wcxEYnst7Oi", 678 | "outputId": "073bfec0-1655-484a-ef06-64548d2891fd" 679 | }, 680 | "outputs": [ 681 | { 682 | "data": { 683 | "image/png": "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\n", 684 | "text/plain": [ 685 | "
" 686 | ] 687 | }, 688 | "metadata": { 689 | "needs_background": "light" 690 | }, 691 | "output_type": "display_data" 692 | } 693 | ], 694 | "source": [ 695 | "from sklearn.metrics import confusion_matrix\n", 696 | "from mlxtend.plotting import plot_confusion_matrix\n", 697 | "import matplotlib.pyplot as plt\n", 698 | "import numpy as np\n", 699 | "\n", 700 | "class_names = [\n", 701 | " 'normal',\n", 702 | " 'imbalance 6g',\n", 703 | " 'imbalance 10g',\n", 704 | " 'imbalance 15g',\n", 705 | " 'imbalance 20g',\n", 706 | " 'imbalance 25g',\n", 707 | " 'imbalance 30g',\n", 708 | " 'imbalance 35g',\n", 709 | "\n", 710 | "]\n", 711 | "\n", 712 | "conf_matrix = confusion_matrix(y_true = y_train, y_pred = results1)\n", 713 | "binary1 = conf_matrix \n", 714 | "\n", 715 | "fig, ax = plot_confusion_matrix(conf_mat=binary1, figsize=(10, 10),\n", 716 | " show_absolute=True,\n", 717 | " show_normed=True,\n", 718 | " colorbar=True,\n", 719 | " )\n", 720 | "plt.title('Confusion Matrix(Train Data)')\n", 721 | "\n", 722 | "plt.show()\n", 723 | "\n" 724 | ] 725 | }, 726 | { 727 | "cell_type": "code", 728 | "execution_count": 37, 729 | "metadata": { 730 | "colab": { 731 | "base_uri": "https://localhost:8080/", 732 | "height": 580 733 | }, 734 | "id": "k_SSVcM-yJt-", 735 | "outputId": "78bd53a4-b48c-4025-c87f-5cc27847c421" 736 | }, 737 | "outputs": [ 738 | { 739 | "data": { 740 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkUAAAIzCAYAAAAOBW0dAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+WH4yJAAAgAElEQVR4nOzdd3gUVdvH8e9JQpWWAKEkFOkhSAmhKUhv0uyiIIi9ItYHe0V9EQuK+liRJqCPJYBSlSIgHVSQFhQ1BQgQQjdhOe8fu8SAaSZbspvf57r2Ynf2zMx97ySbwz1n5hhrLSIiIiLFXZCvAxAREREpCtQpEhEREUGdIhERERFAnSIRERERQJ0iEREREQBCfB2AiIiIeEdwhTrWnjrhlX3ZEynzrbV9vLIzN1GnSEREpJiwp05QqvHVXtnXyU1vVfHKjtxIp89EREREUKVIRESkGDFgVA/JiT4ZEREREVQpEhERKT4MYIyvoyiyVCkSERERQZUiERGR4kVjinKkT0ZEREQEVYpERESKF40pypEqRSIiIiKoUySSLWNMGWPMbGNMmjHms0JsZ4gxZoE7Y/MFY8xcY8zwfLYtZYz5xRhTw9NxFRXGmDXGmGhfxyGSN9d9irzx8EP+GbWIizHmOmPMOmPMUWNMsuuPd0c3bPpKoBpQ2Vp7VUE3Yq2dZq3t5YZ4zmKM6WKMscaYL89Z3sK1fEk+t/O0MWZqXu2stX2ttZPyGd6twDJr7ZnjcdT1yDDGpGd5/d98bu9fxWuM2W2MOWGMOWKMOWSMWWmMud2Y/H1LG2Pquj7DfzO8YBzw7L9oLyJFkMYUid8yxtwPjAZuB+YD6UAfYBCwvJCbrwPssNaeKuR2PCkF6GCMqWytPeBaNhzY4a4dGGMMYKy1p//Farfj7Bhhre2bZVsfAwnW2sfdFV8uBlhrFxljKgKdgfFAO2CEh/Y3C/ivMaa6tXaPh/Yh4h4aU5QjVYrEL7n+2D0L3GWt/cJae8xam2GtnW2tfcjVppQx5nVjTJLr8boxppTrvS7GmARjzAPGmH2uKtMI13vPAE8C17gqGjedW6E4t5pgjLnBGPOrqzrxmzFmSJbly7Osd6ExZq3rtNxaY8yFWd5bYox5zhizwrWdBcaY3CZUTAe+Aga71g8GrgGmnfNZjTfG/GmMOWyMWW+M6eRa3gd4NEueP2aJY4wxZgVwHKjnWnaz6/13jDGfZ9n+/xljvjVOtYF6wOp8HMP+xphNWao5zbO89x9jTKLrc9hujOmeU7y5sdamWWtnuT6X4caYZq7t9zPGbHR9Jn8aY57Ostoy17+HXPvpYIypb4z5zhhzwBiz3xgzzRhTKct+TgLrgd55xSQiRZc6ReKvOgClgS9zafMY0B5oCbQA2gJZqxTVgYpABHAT8JYxJtRa+xTwAjDTWlvOWvthboEYY84D3gD6WmvLAxcCm7JpFwZ87WpbGXgV+NoYUzlLs+twVjPCgZLAg7ntG5gMDHM97w1sBpLOabMW52cQBnwCfGaMKW2tnXdOni2yrHM9zmpPeeD3c7b3AHCBq8PXCednN9xaa4ELgF/zqrAZY1oBHwG34fws3gVmuTqyjYG7gTauz7M3sDuPeHNlrV0DJACdXIuO4fzcKgH9gDuMMZe63rvY9W8l135+wHkf4BeBmkAUUAt4+pzdbMX5cyYifkqdIvFXlYH9efzxHQI8a63dZ61NAZ7B+cf+jAzX+xnW2m+Ao0DjAsZzGmhmjCljrU221m7Jpk0/YKe1doq19pS1djqwDRiQpc1Ea+0Oa+0J4FOcnZkcWWtXAmGujsQwnJ2kc9tMtdYecO3zFaAUeef5sbV2i2udjHO2dxzn5/gqMBW4x1qb4Hq7EnAkj22Ds8P1rrV2tbXW4Rqv9BfOTqzDFWNTY0wJa+1ua+2ufGwzL0k4O4ZYa5dYa3+21p621v4ETMd5mi1b1tp4a+1Ca+1frp+lV7NpfwRn/iJFl0EDrXPhn1GLwAGgSh6DYWtydpXjd9eyzG2c06k6DpT7t4FYa4/hPD1zO5BsjPnaGNMkH/GciSkiy+us41HyG88UnJWVrmRTOTPGPGiM2eo6ZXcIZ3Ust9NyAH/m9qa1djXwK86v2E+zvJWKs7qUlzrAA65TZ4dccdUCalpr44FROCsx+4wxM4wxNXPZVn5FAAcBjDHtjDGLjTEpxpg0nMcux8/EGFPNFUeiMeYwzs7gue3LA4fcEKeI+Ig6ReKvfsBZWbg0lzZJOP/4nlGbf55ayq9jQNksr6tnfdNaO99a2xOogbP6834+4jkTU2IBYzpjCnAn8I2ripPJdXrrYeBqINRaWwlIw9mZAbA5bDOn5We2exfOak6Sa/tn/AScn0dnFZydrjHW2kpZHmVd1TOstZ9Yazvi/Lws8H/5iSuXeNvg7BSdGd/1Cc7B0bWstRWB/5L7Z/KCa/kF1toKwNAs7c+IAvIc5yTiW8Y50NobDz+kTpH4JWttGs7B0G8ZYy41xpQ1xpQwxvQ1xox1NZsOPG6MqeoasPwkzv/hF8Qm4GJjTG3jHOT9yJk3XFWEQa6xRX/hPA2X3dVa3wCNjPM2AiHGmGuApsCcAsYEgLX2N5ynch7L5u3ywCmcV6qFGGOeBCpkeX8vUNfk83J1AGNMI+B5nB2D64GHjTEtXbEkAPE4x2/l5n3gdlfFxhhjznMNfi5vjGlsjOlmnIPiTwIn+Pvz/FfxGmMqGGP6AzOAqdban11vlQcOWmtPGmPa4hzLdUaKa3/1siwrj/O4phljIoCHztlPaaA1sDA/cYlI0aROkfgt1/iY+3EOnk7BWX24G+cVWeD8w70OZ/XiZ2CDa1lB9rUQmOna1nrO7sgEueJIwnl6pjNwRzbbOAD0xzlQ+QDOCkt/a+3+gsR0zraXW2uzq4LNB+bhvEz/d5ydjKynxs7cmPKAMWZDXvtxVYCmAv9nrf3RWrsT5xVhU1ydGHAOmr4+p2244l0H3AJMwHnKLR64wfV2KeAlYD/O04nh/N0JzW+8s40xR3Dm+hjOMUBZL8e/E3jW1eZJspwCdFXbxgArXKf22uMcjxaDs8r2NfDFOfsbACzJ4RiIFC0aU5Qj47xgRETEPVydo41Ad2ttsq/j8QZjzGrgJmvtZl/HIpKboHI1bKnmnrpd19lO/vDiemttrFd25ia6eaOIuJW19i+cpwWLDWttO1/HIJJvfjrexxv8s74lIiIi4maqFImIiBQbxm/H+3iDPhkRERERVCkSEREpPgwaU5QLVYpEREREUKVIRESkeNGYohzpkxERERFBlSIREZFiRFef5UafjIiIiAjqFImIiIgAOn0mIiJSvATpkvycqFIkIiIigipFIiIixYdBA61zoU9GREREBFWKREREihdN85EjVYpEREREUKVIRESkGNHNG3OjT0ZEREQEVYpERESKF40pypEqRSIiIiKoUiQiIlK8aExRjvTJiIiIiKBKkYiISPFhjMYU5UKVIhERERFUKRIRESleNKYoR/pkRERERChilSITUsaakuV9HYbHtIqq7esQRESkCPn9993s379fg3yKiKLVKSpZnlKNr/Z1GB6zYvUEX4cgIiJFyEXtYr2/Uw20zpFOn4mIiIhQxCpFIiIi4kmaEDY3+mREREREUKVIRESkeNGYohypUiQiIiKCKkUiIiLFh0FjinKhT0ZEREQEVYpERESKEV19lht9MiIiIiKoUiQiIlK86OqzHKlSJCIiIoIqRSIiIsWLxhTlSJ+MiIiICKoUiYiIFC8aU5QjVYpEREREUKdIREREBPDzTlFktUrMe28kGz5/jPX/e4y7ru1y1vv3Xt+NExsnULnSeZnLOrVuyKoZo1n/v8dY8MG9mcu3ff0Maz99lFUzRrN82sNnbeeOwZ3Z9MXjrP/fY4y5d5BHc3KHBfPn0Ty6MdFNGvDy2Jd8HU6h3XbzjdSuGU7rls0yl33+v8+IaRFN2ZJBrF+3zofRFV52+R08eJB+fXrSLKoh/fr0JDU11YcRupfD4aB9bCsuH9Tf16G4TU453T9qJFUqlfNRVO4XaN8t5wr0/ADnqTMT5J2HH/LPqF1OOU4z+tUviLliDJ2HjeO2ay6mSb3qgLPD1L19FH8kH8xsX7FcGcY/ejVXjXqX1leOYchDH561vT63jqf94JfoOGRs5rKLYxvSv8sFtL3mJVpfOYbXJ3/rneQKyOFwMGrkXcTNnsvGn37hsxnT2frLL74Oq1CuH34DcXPmnbUsOroZMz79go6dLvZRVO6TXX7jxr5El27d2bx1J126dWdcAH1BT3hjPI2jonwdhltll9P6des4FGCd2UD7bskq0POT/PHrTtGe/YfZtC0BgKPH/2Lbb3uoWbUSAGMfvILHxn+FtTaz/TV9Y4n79kf+3OP8okpJPZrnPm69qhPjJi4kPeNUvtfxpbVr1lC/fgPOr1ePkiVLctU1g5kzO87XYRVKx04XExYWdtayJlFRNGrc2EcRuVd2+c2ZHcfQ64cDMPT64cye9ZUvQnO7hIQE5s39mhE33uzrUNwmu5wcDgePjn6IMS+NzWVN/xKI3y1ZBXp+ZzHGOw8/5Nedoqxq1wijZeNI1m7eTf8uF5C07xA/70g8q03DOuFUqlCW+e/fy4ppD3Nd/7aZ71lrmf323ayY9jA3Xn5R5vIGdcK5qFV9lk1+kAUf3EvrprW9llNBJCUlEhlZK/N1REQkiYmJuawhRdG+vXupUaMGANWrV2ff3r0+jsg9HnpgFGNeHEtQUMB89WSb0ztvTaBf/4GZxzAQBPp3S6DnJ/kTEJfkn1emJNPH3cxD4z7nlMPBwzf2pv+dE/7RLiQ4iJioWvS97U3KlC7BkkkPsOan3cT/sY/uI14jKSWNqqHlmPPfu9m+ew8rNuwiJDiIsIrncfGwccRG12Hq2BuJ6v+095OUYssYg/HT/3Vl9c3XcwivGk5M69YsW7rE1+G4RXY5JSUl8cXnn7Hg2yU+jU0kJ4HwfeIpft8pCgkJYvq4W5g5dx1x3/1IdIOa1ImozJqZjwAQEV6JHz75D52uf5nEfYc4kHaM4yfTOX4yneUb4mneKIL4P/aRlJIGOE+PzfruJ9pE12XFhl0k7j3EV99uAmDdlt85fdpSJbQc+4voabSaNSNISPgz83ViYgIRERE+jEgKIrxaNZKTk6lRowbJyclUDQ/3dUiF9sPKFcyZM4t5877hr5MnOXz4MCOGDWXi5Km+Dq3AssupdYtoSpUqRXSTBgAcP36c6CYN2LIt3sfRFk6gf7cEen6SP35fw/7vU0PY/tse3pj6HQBb4pOo0/0RmvR7iib9niJx3yE6XPd/7D1whNlLfuLClvUJDg6iTOkStGlWl22/7aFs6ZKUK1sKgLKlS9KjQxO27EoCYPaSn+jcphEADWqHU7JESJHtEAHEtmlDfPxOdv/2G+np6Xw2cwb9+g/0dVjyL/XrP5CpUyYBMHXKJPoPKPpXPebluTEvsmt3AtvjdzN52gy6dO3m1x0iyD6n5JRUdifsYXv8brbH76Zs2bJ+3yGCwP9uCfT8zjD8XX329MMfebRSZIzpA4wHgoEPrLVuvYTmwpb1GNK/HT/vSGTVjNEAPDVhFvOXZ3/FwPbf9rJw5S+s/fQRTp+2fPzlSn7ZlUzdiMrMfPUWAEKCg5k5dx0LV24FYNJXP/Du00NY99mjpGc4uPnJKe5Mwe1CQkJ4bfwEBvTrjcPhYPgNN9I0OtrXYRXKsKHX8v3SJezfv5/6dSN54slnCA0L4/5R97A/JYXLB/WjeYuWzP5mvq9DLZDs8nvw4dEMvfZqJk38kNq16zB1+qe+DlOKuUD8bskq0POT/DFZr85y64aNCQZ2AD2BBGAtcK21NsdrHIPKhttSja/2SDxFQeraf45zEhGR4uuidrGsX7/Oa2WV4LC6tnT3p7yyr+P/u3G9tTbWKztzE0+ePmsLxFtrf7XWpgMzAP8/ByAiIiIByZOnzyKAP7O8TgDandvIGHMrcCsAJQLnzq8iIiJFj/+O9/EGnw+0tta+Z62NtdbGmpAyvg5HREREiilPdooSgVpZXke6lrld6VIlWPDBvQQFGeIm3EnysrF8Pv72HNuXLBHClJdGsDnuKZZNfpDaNf6+m/CDN/Zic9xT/PjlE/To4Lxtf4mQYBZ+OIrgYN/0IU+cOEHPbp1xOBxMnTyJZlENaRbVkKmTJ2XbPqd5s6y13D9qJNFNGtCmVXM2btgAQEpKCgP79fFaPudSfmdTfkUnv0DODZTfufwtv4LS1Wc58+Rf+bVAQ2PM+caYksBgYJYndjR8UAfivv2R06ctr01exE2PT861/Q2XdiD1yAmaDXqGN6ctzpzktUm96lzVO4aYK8cw8K63Gf/I1QQFGTJOOVi8ejtX9YrxRPh5mjTxIwZdejlpaWmMef4Zlq1Yzfcr1zDm+WeynSg0p3mz5s+by674nWzeupMJ77zHyLvvAKBq1apUr16DlStWeDWvM5Tf2ZRf0ckvkHMD5Xcuf8tP3M9jnSJr7SngbmA+sBX41Fq7xRP7GnxJLLOX/ATAkjU7OHLsr1zb9+/SnGmzVwPwxaKNdGnbOHP5Z/M3kJ5xit+TDrDrz/20aVYXcN6v6JpL2ngi/DzNmD6NAQMHsXDBfLp370lYWBihoaF0796TBfPn/aN9TvNmzZkVx3VDh2GMoV379qSlHSI5ORmAAYMuZeb0ad5LKgvldzblV3TyC+TcQPmdy9/yKyhVinLm0fNB1tpvrLWNrLX1rbVjPLGPEiHB1I2owh/JB/O9Ts3wiiS4JoV1OE5z+OgJKlc6j4iqfy8HSNyXSs3wioDzppCto70/71l6ejq7f/uVOnXrOufmqZVlbp7ISJKS/nlGMqd5s7Kb2yfJNbdPTOtYViz/3pOpZEv5Kb+iml8g5wbKz9/zE8/w+UDrwqoSWo60I8c9vp/Tpy0ZGY7MO197y/79+6lYqVKB189vjz08PJzk5KQC76eglF/ulJ+TL/IL5NxA+eWlqOcnnuH3naITJ9MpXarEv1onaV8akdVDAQgODqJCuTIcOHSMxJS/lwNEhIeStC8t83XJEiGcTM9wT+D5VKZMGU6ePAm45ub5M8vcPAkJ1Kz5z7l5zsybBZw1b1Z2c/vUdM3tc/LkSUqX8f7Vf8pP+RXV/AI5N1B+/p5fYej0Wc78vlN06MgJgoOCKFUy/7dc+nrpzwwZ4Lxl0uU9WrF07Q7n8iU/cVXvGEqWCKFOzco0qF2VtZt3AxBW8TwOHDrKqVOn3Z5DbkJDQ3E4HJw8eZKevXqzaNECUlNTSU1NZdGiBfTs1fsf6+Q0b1a/AQP5ZOpkrLWsXrWKChUqZpaKd+7YQXR0M+8l5qL8lF9RzS+QcwPl5+/5iWf4facIYNGqrVzYqr7z+YejmPbyjXRt24j4ec9lXlb/xB396Nf5AgA+/mollSuWZXPcU4wc2pXH34gDYOuve/h8wUY2fv4Ys966k1Evfcrp085pUDq3aci85R4ZJ56nHj16sXLFcsLCwnjk0Sfo2KENHTu04dHHniQszHk7gTtuvZn169YB8ODDo/lu0UKaRTVk8beLePBh57xwffpewvnn1yO6SQPuuv0Wxr/5duY+li5dTJ++/byfHMoPlB8UzfwCOTdQfuDf+RWI8eLDD3ls7rOCKOjcZy2bRHLPkG7c9ETul+IXxoxxN/P4G7OI/2NfgbdR0LnPNm7YwJvjX+OjSZ6bjLZH14v57Is4QkND827sZsqv8JSfZwRybqD83KGw+Xl97rPK59tyvZ/1yr4OTx/md3OfeXKaD6/ZtC2Bpet2EBRkMis77lQiJJhZS34qVIeoMFrFxNC5S1ccDgfBwcFu335KSgojR93vky8tUH6Fpfw8J5BzA+VXWL7OryCMpvnIVUBUivxFQStFIiISmLxdKQqpXM+W6+OdSlHaJ9erUiQiIiJFlypFOQuIgdYiIiIihaVKkYiISDGiSlHOVCkSERERQZUiERGRYkWVopypUiQiIiKCKkUiIiLFhx/fbdobVCkSERERQZUiERGRYkVjinKmSpGIiIgI6hSJiIgUG2fmPvPGI89YjKlljFlsjPnFGLPFGHOva3mYMWahMWan699Q13JjjHnDGBNvjPnJGBOTZVvDXe13GmOGZ1ne2hjzs2udN0wegalTJCIiIr5wCnjAWtsUaA/cZYxpCowGvrXWNgS+db0G6As0dD1uBd4BZycKeApoB7QFnjrTkXK1uSXLen1yC0idIhEREfE6a22ytXaD6/kRYCsQAQwCJrmaTQIudT0fBEy2TquASsaYGkBvYKG19qC1NhVYCPRxvVfBWrvKWmuByVm2lS0NtBYRESlGvDjQuooxZl2W1+9Za9/LrqExpi7QClgNVLPWJrve2gNUcz2PAP7MslqCa1luyxOyWZ6jItUpahVVmxWrJ/g6DI8JbXuPr0PwqNQ1b/o6BBERKTr2W2tj82pkjCkHfA6MstYeztpps9ZaY4z1YIxn0ekzERGR4sR46ZGfUIwpgbNDNM1a+4Vr8V7XqS9c/+5zLU8EamVZPdK1LLflkdksz5E6RSIiIuJ1rivBPgS2WmtfzfLWLODMFWTDgbgsy4e5rkJrD6S5TrPNB3oZY0JdA6x7AfNd7x02xrR37WtYlm1lq0idPhMREREPMkXq5o0XAdcDPxtjNrmWPQq8BHxqjLkJ+B242vXeN8AlQDxwHBgBYK09aIx5Dljravestfag6/mdwMdAGWCu65EjdYpERETE66y1y8n5RFv3bNpb4K4ctvUR8FE2y9cBzfIbkzpFIiIixUgRqhQVORpTJCIiIoIqRSIiIsWKKkU5U6VIREREBFWKREREio0zE8JK9lQpEhEREUGVIhERkeJFhaIcqVIkIiIigipFIiIixUfRuqN1kaNKkYiIiAjqFImIiIgAOn0mIiJSrOj0Wc5UKRIRERFBlSIREZFiRZWinBXbSpHD4aB9bCsuH9Tf16HkKLJaJea9ew8b/vco6z97lLuu7XzW+/cO7caJDW9SudJ5AHRq3YA9S8eyavp/WDX9PzxySx8ASpUM4fvJD7J6xmjWf/Yoj99+yVnbefqu/vz05RNs/Pwx7hx89j6Kmj///JPePbrSqnlTYlpEM+GN8b4OyW0CObczGjeoS2zLC2jXuiUXtYv1dThuVRyO34L582ge3ZjoJg14eexLvg7HrYrD8ZO8FdtK0YQ3xtM4Koojhw/7OpQcnXKcZvRrX7JpWwLlypZi5bSH+XbVdrb9tofIapXo3qEJfyQfPGudFZt2ccW975617K/0U/S57Q2OnUgnJCSI7z68jwUrfmHNz7u5fmA7IquF0uLy57HWUjW0nDdT/NdCQkJ4aewrtIqJ4ciRI1zYrjXde/QkqmlTX4dWaIGcW1bzFi2mSpUqvg7D7QL9+DkcDkaNvIuv5y4kIjKSju3b0L//wIDJL9CP31lUKMpRsawUJSQkMG/u14y48WZfh5KrPfsPs2lbAgBHj//Ftt/2UDO8IgBjH7icx16Pw1qbr20dO5EOQImQYEJCgjPXu/XKTrzw/tzM1ympR92dhlvVqFGDVjExAJQvX54mTaJISkr0cVTuEci5FQeBfvzWrllD/foNOL9ePUqWLMlV1wxmzuw4X4flNoF+/CR/imWn6KEHRjHmxbEEBflP+rVrhNGycSRrN/9O/84XkLQvjZ93/vMXtt0F57N6xmi+evMOoupVz1weFGRYNf0//LHoRb5bvY21m38H4PzIKlzZK4blUx/iqzfvoH6tql7LqbB+372bTZs20qZtO1+H4naBmpsxhgF9e3Fh29Z8+P57vg7HYwLx+CUlJRIZWSvzdUREJImJgdlpCMTjl5UxxisPf+Q/vQI3+ebrOYRXDSemdWtfh5Jv55UpyfRxN/HQK19wyuHg4Rt78ex/v/5Hu03bEmjc70naDX6Jd2Ys5dNXb8l87/RpS/tr/48GfZ4gNroOTevXAJzjjf766xQdh77MxC9X8u7TQ7yWV2EcPXqUa6++gpdfeZ0KFSr4Ohy3CuTcvl2ynB/WbuCrOXN59523WP79Ml+H5HaBfPyKAx2/4q3YdYp+WLmCOXNm0bhBXYYNGcySxd8xYthQX4eVo5CQIKaPu5mZ36wj7rsfqRdZhToRlVkzYzTb5jxNRHglfpj2MNUql+fIsZOZp8nmr/iFEiHBmYOwz0g7eoKl63bS68IoABL3HuKr734EIO67H2nWoKZ3EyyAjIwMrr36Cq65dgiXXna5r8Nxq0DODSAiIgKA8PBwBl56GWvXrvFxRO4VyMevZs0IEhL+zHydmJiQeTwDRSAfvzO8VSVSpegcxpiPjDH7jDGbPbWPgnhuzIvs2p3A9vjdTJ42gy5duzFx8lRfh5Wj/z45hO2/7eGNaYsB2BKfTJ0ej9Kk/9M06f80ifsO0WHIWPYeOEK1yuUz14uNrkOQMRw4dIwqlcpRsVwZAEqXKkH39k3YvnsvALOX/ETnNg0B59Vr8X/s83KG/461lttvuYnGTaK49777fR2OWwVybgDHjh3jyJEjmc8XLVxAdHQzH0flPoF+/GLbtCE+fie7f/uN9PR0Pps5g379B/o6LLcJ9OMn+ePJq88+BiYAkz24j4B2Yct6DOnflp93JrJq+n8AeGrCbOav+CXb9pf1aMUtV3bklOM0J/9KZ9gjHwNQvWoF3n9mKMHBQQQZw+cLNzL3+y0AjJu4kIljhnPPdV05duIv7nh2uldyK6iVK1bwybQpNGvmvKwb4JnnX6BP30vyWLPoC+TcAPbt3cs1V14GwCnHKa4ZfB29evfxcVTuE+jHLyQkhNfGT2BAv944HA6G33AjTaOjfR2W2wT68cvKX6s43mDye/VSgTZuTF1gjrU2X/8dbN061q5Yvc5j8fhaaNt7fB2CR6WuedPXIYiI+JWL2sWyfv06r/VSSlVraGsMfs0r+/r9jQHrrbV+dUOyYnufIhERkeJIlaKc+XygtTHmVmPMOmPMupT9Kb4OR0RERIopn3eKrLXvWWtjrbWxVav4zz1yRERE/JLx0sMP+bxT5A4nTpygZ7fOOBwOpk6eRLOohjSLasjUyZOybX/w4EH69S0QonMAACAASURBVOlJs6iG9OvTk9TUVMB59cH9o0YS3aQBbVo1Z+OGDQCkpKQwsJ/vBoSWLlWCBe+PJCjIEDfhDpKX/h+fj78tx/YlS4Qw5aURbI57kmWTHqB2jbDM9x4c0ZPNcU/y4xeP06NDE8B5l+uFH9xLcLBvfhwC/fgpv7P5U36BnBsov3P5W37ifp68JH868APQ2BiTYIy5yVP7mjTxIwZdejlpaWmMef4Zlq1Yzfcr1zDm+Wcyf6izGjf2Jbp0687mrTvp0q0741wTG86fN5dd8TvZvHUnE955j5F33wFA1apVqV69BitXrPBUCrkaPqg9cd/9yOnTltcmf8tNT0zJtf0Nl3Yg9fBxmg16ljenLWbMvYMAaHJ+da7q3ZqYK19g4N3vMH701QQFGTJOOVi8ZgdX9YrxRjr/EOjHT/mdzZ/yC+TcQPmdy9/yE/fzWKfIWnuttbaGtbaEtTbSWvuhp/Y1Y/o0BgwcxMIF8+nevSdhYWGEhobSvXtPFsyf94/2c2bHMfT64QAMvX44s2d95Vw+K47rhg7DGEO79u1JSztEcnIyAAMGXcrM6dM8lUKuBveNZfaSnwFYsmYHR46dzLV9/y4XMG3OagC++HYTXdo0ylz+2fz1pGec4vekA+xK2E+bZnUAmL34J67p65uLBAL9+Cm/s/lTfoGcGyi/c/lbfgWlmzfmzO9Pn6Wnp7P7t1+pU7euc26eWlnm5omMzHZCv31791KjhnOai+rVq7Nvr/NGhtnN7ZPkmtsnpnUsK5Z/78lUslUiJJi6EVX4I/lgvtepWbUiCXsOAeBwnObw0RNUrnQeEeGVSNj79/+OEvceombVSgBs2ZVE6+ja7g0+HwL9+Ck//80vkHMD5efv+Yln+P0l+fv376dipUoFXj+/Pdrw8HCSk5MKvJ+CqlLpPNKOnPD4fk6ftmRkOChXthRHj//l8f2dEejHT/nlrijnF8i5gfLLS1HPr8CMLsnPjd9XisqUKcPJk87TSTVrRpDwZ5a5eRISqFnzn3PzhFerlln6TE5Opmp4+N/rnzO3T03X3D4nT56kdJkyHssjJyf+yqB0qX/Xd01KSSOyuvPLIDg4iArlynDg0DES9x0islpoZruIapVISjmU+bpkiRBOpme4J/B8CvTjp/z8N79Azg2Un7/nJ57h952i0NBQHA4HJ0+epGev3ixatIDU1FRSU1NZtGgBPXv1/sc6/foPZOoU59UHU6dMov8A50DkfgMG8snUyVhrWb1qFRUqVMwspe7cscMn8zQdOnKC4KAgSpXMf8fo66U/M6R/OwAu796SpWt3ZC6/qndrSpYIoU7NyjSoVZW1m38HIKxiWQ4cOsapU6fdn0QuAv34KT//zS+QcwPl5+/5FZQBjPHOwx/5facIoEePXqxcsZywsDAeefQJOnZoQ8cObXj0sScJC3Nejn7HrTezfp1zCpEHHx7Nd4sW0iyqIYu/XcSDD48GoE/fSzj//HpEN2nAXbffwvg3387cx9Kli+nTt5/3kwMWrdrGhS3rO59/OIppY2+ka5tGxM99NvOy+iduv4R+Fzt/MT/+6gcqVzyPzXFPMnJoNx5/cxYAW3/dw+cLN7Dxf48ya8IdjHrpM06fdk7z0jm2EfOWb/FBdoF//JSf/+YXyLmB8gP/zk/cz6Nzn/1bBZ37bOOGDbw5/jU+mpT7peqF0aPrxXz2RRyhoaF5N85BQec+a9kkknuGdM3zUvzCmDHuZh5/I474Pwp+V/GCzn3mL8evoJRf4fkqv0DODZSfOxQ2P2/PfVa6eiNb6/o3vLKv+HF9/W7us4CoFLWKiaFzl644HA6PbD8lJYWRo+73yS81wKZtCSxdt5OgIM/83pQICWbW4p8K1SEqjEA/fsqvcHyZXyDnBsqvsHydn7hfQFSK/EVBK0X+oqCVIhGR4soXlaLaw7xTKdr5sipFIiIiIn7J7+9TJCIiIvmn+xTlTJUiEREREVQpEhERKT78+B5C3qBKkYiIiAiqFImIiBQbBjx2e5dAoEqRiIiICOoUiYiIiAA6fSYiIlKsaKB1zlQpEhEREUGVIhERkWJFN2/MmSpFIiIiIqhSJCIiUnzo5o25UqVIREREBFWKvCp1zZu+DsGjQi9+xNcheFTqshd9HYKISKEYNKYoN6oUiYiIiKBKkYiISDFiVCnKhSpFIiIiIqhSJCIiUqyoUJQzVYpEREREUKVIRESkWNGYopypUiQiIiKCKkUiIiLFh+5onStVikRERERQp0hEREQE0OkzERGRYkPTfOROlSIRERERVCkSEREpVlQoypkqRSIiIiKoUiQiIlKsaExRzlQpEhEREUGVIhERkWJFhaKcFbtK0Y7t22nXumXmIzysAm+Of93XYbnVgvnzaB7dmOgmDXh57Eu+DidHkeEVmffmzWyYNor1U0dx19UXAvDkLT1ZM3kkqz6+h9mv30iNKuUBuO+6Tqz6+B5WfXwP66bey9HvxxBavgwNa1fJXL7q43vYu/Ap7r76orP2de+1HTmx8kUqVyzr9Txzc/LkSTp2aEvbmBbEtIjmuWeeAuCG64fQPLoxrVs247abbyQjI8PHkRben3/+Se8eXWnVvCkxLaKZ8MZ4X4fkEQ6Hg/axrbh8UH9fh+J2/vLdUlCBnp/kzVhrfR1DptatY+2K1eu8tj+Hw0H9OhEsXbGaOnXqeG2/nuRwOLigaSO+nruQiMhIOrZvw6Sp04lq2tTj+w69+JF/1b565fJUr1yeTTuSKFe2JCs/uoerR08hcV8aR47/BcCdV11Ik7rhjHz5q7PWveSiJtwzuCN97/ngrOVBQYZdcY/Q+Za3+WPPIcDZ+Xr7kctpXKcqF46YwIG04wXKL3XZiwVaLzfWWo4dO0a5cuXIyMigW+eOjHt1PKmpB+ndpy8Aw6+/jo4dL+bW2+9w+/69KTk5mT3JybSKieHIkSNc2K41n/7vK6/8bHrT+NdeZcOGdRw5fJgv4ub4Ohy38eV3izf4Kr+L2sWyfv06r9VuzotsbJvd9Z5X9rXm0S7rrbWxXtmZmxS7SlFWi7/7lvPr1Q+YDhHA2jVrqF+/AefXq0fJkiW56prBzJkd5+uwsrXnwBE27UgC4OjxdLb9vo+aVStkdogAypYuQXYd96t7tuDThT/+Y3nX2Ab8lnggs0MEMPbefjz21lyKUP8/kzGGcuXKAZCRkcGpjAyMMfTpewnGGIwxxMa2JTExwceRFl6NGjVoFRMDQPny5WnSJIqkpEQfR+VeCQkJzJv7NSNuvNnXobidP323FESg5yf5U6w7RZ/NnMHV11zr6zDcKikpkcjIWpmvIyIiSUws+n94alevRMuGNVm75U8Anr6tFzu//A+De7fkuQ8WndW2TKkS9GzfiK8Wb/7Hdq7q0ZxPF/6U+bp/pyiSUg7zc/wezyZQCA6Hg3atW1K7ZjjdevSkbbt2me9lZGQwfdoUevbu48MI3e/33bvZtGkjbdq2y7uxH3nogVGMeXEsQUGB99Xqr98t+RXo+Z3hvKO1dx7+KPB+c/MpPT2dr+fM4vIrr/J1KMXeeWVKMv2FoTw0fk5mlejpdxfQ8LL/Y8b8Tdx+RYez2vfr2IQffvqd1CMnzlpeIiSYfh2j+OK7nwFn5+nhYV159v2F3kmkgIKDg1m9fhPxuxNYt3YNWzb/3dm79+47uajTxXTs2MmHEbrX0aNHufbqK3j5ldepUKGCr8Nxm2++nkN41XBiWrf2dSgiUkDFtlM0f95cWraKoVq1ar4Oxa1q1owgIeHPzNeJiQlERET4MKLchQQHMf2FIcxcsIm4pVv+8f7MBZu4tGv0Wcuu6tGCz7I5dda7QyM27UhiX+pRAOpFhFGnZihrJt/Lts8fJqJqBX6YeA/Vwsp5JplCqlSpEp27dGXBgnkAjHnuGVL2pzB23Ks+jsx9MjIyuPbqK7jm2iFcetnlvg7HrX5YuYI5c2bRuEFdhg0ZzJLF3zFi2FBfh+U2/vbd8m8Fen5/M5mn5j398EfFtlP06czpAXfqDCC2TRvi43ey+7ffSE9P57OZM+jXf6Cvw8rRfx+9gu27U3hjxvLMZfUjK2c+79+pKTt+T8l8XeG8UnRsdT6zv//lH9s6d5zRll/3UqffGJpcMZYmV4wlMeUwHUa8yd6DRz2Uzb+XkpLCoUPO8U8nTpzg20ULady4CRM//ICFC+Yzeer0gDkVY63l9ltuonGTKO69735fh+N2z415kV27E9gev5vJ02bQpWs3Jk6e6uuw3Mbfvlv+rUDPT/LHY/cpMsbUAiYD1QALvGetLRLX4B47dozvFi1kwtvv+joUtwsJCeG18RMY0K83DoeD4TfcSNPo6LxX9IELm9dhSN8Yfo5PZtXH9wDw1LsLuKF/LA3rVOH0acsfew4xcuzfV54N7BzNt2t2cvzk2Zeoly1dgm5tGnL3/33p1RwKa09yMrfcOByHw8Fpe5orrryaS/r1p1zpEGrXqUOXjs5Th4Muu5xHH3/Sx9EWzsoVK/hk2hSaNbuAdq1bAvDM8y/Qp+8lPo5M8sOfvlsKItDzy8pPizhe4bFL8o0xNYAa1toNxpjywHrgUmvtP/+L7+LtS/LFvf7tJfn+xhOX5ItI8ebtS/LLRTaxzUd655L8H/7TWZfkn2GtTbbWbnA9PwJsBQLxBK2IiIgEAK9M82GMqQu0AlZn896twK0AtWrX9kY4IiIixZa/DoL2Bo+P4DTGlAM+B0ZZaw+f+7619j1rbay1NrZqlaqeDkdEREQkWx6tFBljSuDsEE2z1n7hyX2JiIhIHvz4xore4LFKkXHW5z4EtlprPXqjlRMnTtCzW2ccDgdTJ0+iWVRDmkU1ZOrkSdm2P3jwIP369KRZVEP69elJamoq4Lxk+P5RI4lu0oA2rZqzccMGwHnZ9MB+vrujcKDnV7pkCAveuoWgIEPcqyNInv8kn788PMf2JUsEM+XZa9n86YMse/9OalevlPneg9d3ZvOnD/Lj9Pvp0a4h4Lyp48K3byU42DeXtgf68Qvk/AI5N1B+5/K3/MT9PPlX4iLgeqCbMWaT6+GRa28nTfyIQZdeTlpaGmOef4ZlK1bz/co1jHn+mcwf6qzGjX2JLt26s3nrTrp0684412zI8+fNZVf8TjZv3cmEd95j5N3OCTirVq1K9eo1WLlihSfCz1Og5ze8fyxxS7dw+rTltWnLuOnZT3Ntf8OANqQeOUGzq8fx5szljLnTOXFqk7rhXNWjBTFDXmPg/RMZ/+AggoIMGaccLF63i6u6N/dGOv8Q6McvkPML5NxA+Z3L3/IrCOc0H7p5Y048efXZcmutsdY2t9a2dD2+8cS+ZkyfxoCBg1i4YD7du/ckLCyM0NBQunfvyYL58/7Rfs7sOIZe76xEDL1+OLNnOe+DM2dWHNcNHYYxhnbt25OWdojk5GQABgy6lJnTp3ki/DwFen6De7dk9jLnnRqWrN911oSw2enfKYppc53/U/ti8Wa6xNbPXP7Zoh9Jz3Dwe3IquxIO0Kapcy6j2cu2cE2vlh7MImeBfvwCOb9Azg2U37n8LT9xP7+/VW56ejq7f/uVOnXrOif0q5VlQr/IyGxn4d63dy81atQAoHr16uzbuxfIfkLAJNeEgDGtY1mx/HtPppKtQM+vREgwdWuGnTWrfV5qVq1Awl5ne4fjNIePnaRyxbJEVK1Iwr60zHaJ+9KoWdU5t9aWX/fSOsr7d4QI9OMXyPkFcm6g/Pw9v8JQpShnft8p2r9/PxUrVcq7YQ7ye/DCw8NJTk4q8H4KKtDzq1KpLGlHT+TdsJBOn7ZknHJQrmxJj+8rq0A/foGcXyDnBsovL0U9P/EMv+8UlSlThpMnTwKuCf3+zDKhX0ICNWv+szoQXq1aZukzOTmZquHhf69/zoSANV0TAp48eZLSZcp4LI+cBHp+J/7KoHTJEv9qnaSUw0RWc37ZBQcHUeG80hxIO05iShqR4RUz20WEVyQp5e+7QJQsEcLJv065J/B8CvTjF8j5BXJuoPz8Pb/CMMY7D3/k952i0NBQHA4HJ0+epGev3ixatIDU1FRSU1NZtGgBPXv1/sc6/foPZOoU59UHU6dMov+AQc7lAwbyydTJWGtZvWoVFSpUzCyl7tyxg+joZt5LzCXQ8zt05CTBQYZSJfN/d4ivv9/KkL4xAFzetRlL1+9yLl++lat6tKBkiWDq1AilQWQV1v7i/CILq1CWA2nHOOU47f4kchHoxy+Q8wvk3ED5+Xt+4hl+3ykC6NGjFytXLCcsLIxHHn2Cjh3a0LFDGx597EnCwsIAuOPWm1m/zjmv2oMPj+a7RQtpFtWQxd8u4sGHRwPQp+8lnH9+PaKbNOCu229h/JtvZ+5j6dLF9Onbz/vJEfj5LVqzkwub13E+f/tWpj1/HV1j6xP/1ejMy+qfuLkH/TpGAfDxnHVUrliWzZ8+yMjBHXn8HeeAya2/7ePz735i4yf3MevVEYx6JY7Tp51z+3VuXY95K7f7ILvAP36BnF8g5wbKD/w7v4LSmKKceWxC2IIo6ISwGzds4M3xr/HRpCkeiMqpR9eL+eyLOEJDQz22j5z4S34FnRC2ZaOa3DO4Y56X4hfGjBeG8Pg784n/c3+Bt1HQCWH95fgVVCDnF8i5gfJzh8Lm5+0JYcvXamJbP/CRV/a19L6LNCGsL7SKiaFzl644HA6PbD8lJYWRo+73yS81BH5+m3YksXT9LoKCPPO9UCIkmFnLfilUh6gwAv34BXJ+gZwbKL/C8nV+BeKl8UR+WigKjEqRFA0FrRT5i4JWikREcuL1SlHtJjbWS5WiJaP8r1Lk0bnPREREpOgw+O94H28IiNNnIiIiIoWlTpGIiIgIOn0mIiJSrOjsWc5UKRIRERFBlSIREZFiJUilohypUiQiIiKCKkUiIiLFigpFOVOlSERERLzOGPORMWafMWZzlmVPG2MSjTGbXI9Lsrz3iDEm3hiz3RjTO8vyPq5l8caY0VmWn2+MWe1aPtMYUzKvmNQpEhERKSacU3AUmQlhPwb6ZLP8NWttS9fjG2fcpikwGIh2rfO2MSbYGBMMvAX0BZoC17raAvyfa1sNgFTgprwCUqdIREREvM5auww4mM/mg4AZ1tq/rLW/AfFAW9cj3lr7q7U2HZgBDDLOXlk34H+u9ScBl+a1E3WKREREipEg450HUMUYsy7L49Z8hni3MeYn1+m1M7PtRgB/ZmmT4FqW0/LKwCFr7alzluf+2eQzQBEREZF/Y7+1NjbL4718rPMOUB9oCSQDr3g0wnPo6jMREZFipChPCGut3XvmuTHmfWCO62UiUCtL00jXMnJYfgCoZIwJcVWLsrbPUZHqFFnAWuvrMDymKP8gukPqshd9HYJHhfZ83tcheEzKvEd9HYIUQkiwiv4SGIwxNay1ya6XlwFnrkybBXxijHkVqAk0BNYABmhojDkfZ6dnMHCdtdYaYxYDV+IcZzQciMtr/0WqUyQiIiKeVVT+f26MmQ50wTn2KAF4CuhijGmJs06yG7gNwFq7xRjzKfALcAq4y1rrcG3nbmA+EAx8ZK3d4trFf4AZxpjngY3Ah3nFpE6RiIiIeJ219tpsFufYcbHWjgHGZLP8G+CbbJb/ivPqtHxTp0hERKSYMIChiJSKiiCdiBYRERFBnSIRERERQKfPREREipUgnT3LkSpFIiIiIqhSJCIiUnzkf7LWYkmVIhERERFUKRIRESlWVCjKmSpFIiIiIqhSJCIiUmwYIEilohypUiQiIiKCKkUiIiLFigpFOVOlSERERARVikRERIoV3acoZ6oUiYiIiBDAnaLbbrmROhHViG15QeayZ556grYxLWgX24oBl/QmKSkJgLS0NK64dCDtWrekdYtmTJ400Vdhu8WEN8bTumUzYlpE8+b4130djts5HA7ax7bi8kH9fR1KriKrVmDeq0PZMPE21k+8jbuuaAPAkyM6s+aDW1j1/s3MHnsdNSqXy1znlXt6sXnqnaz54BZaNqyeuTzu/64lefaDfP7CNWfto3Oruqx89ybWfXQr748eSHARmtTI4XBwUbvWXHnZAADefectWjRtRPnSwezfv/8f7devW0ul80ry1Rf/83ao/9q5ud00fCitLoiibUxz7rj1JjIyMgCYMzuO9rEtubBtDBdf2JaVK5b7MuxCWzB/Hs2jGxPdpAEvj33J1+G4XaDnB87xRN56+KOA7RRdP+wGvpoz96xl9z3wEGs2/MjqdRvpe0k/XhzzLOD8so6KimL1+k3MW7SYRx5+kPT0dF+EXWhbNm9m4kfv8/3KNaxZ/yNzv5nDrvh4X4flVhPeGE/jqChfh5GnU47TjH5nETEj3qXznRO5bVAsTepU4bWZP9D25vdpf8sHzF21k0eGdQKgd7v61I8Io9nQt7n7lW94476+mdt6beYP3PRC3FnbNwY+GD2QYc99SeyN7/HH3jSG9mnh1Rxz8/aEN2jcuEnm6/YdLmTWNwuoXbvOP9o6HA6efOwRuvfo6c0QC+zc3K6+9jo2/PQLq9f/yMkTJ5g08QMAunTtzg9rN7JyzQbefvcD7r7jVl+FXGgOh4NRI+8ibvZcNv70C5/NmM7WX37xdVhuE+j5Sf4EbKeoY6eLCQsNO2tZhQoVMp8fO3Ys87yqMYYjR49greXY0aOEhoUREuKfw622bdtKmzbtKFu2LCEhIXS6uDNfffWFr8Nym4SEBObN/ZoRN97s61DytOfgUTbt3APA0RPpbPtjPzWrlOfI8b873GVLl8Ba5/P+FzXmkwU/A7BmayIVzytN9TBnFWnJht1nrQdQuUJZ0jMcxCccBOC7db9yaacmFAWJCQnMn/sNw0fclLmsRctW1KlbN9v2/317AoMuu5wqVcO9FGHBZZdb7z6XYFxzSrVu05bEhEQAypUrl/k9k/U7xx+tXbOG+vUbcH69epQsWZKrrhnMnNlxea/oJwI9v6yCjPHKwx8FbKcoJ0898RgN69Vm5vRPeOIpZ6Xo9jvvZvu2bdSrE0GbmOa8/MrrBAX550cTHd2MFSu+58CBAxw/fpx5c78h4c8/fR2W2zz0wCjGvDjW745P7WoVadmgOmu3Ov9YPn1TF3bOHMngHs14buJSAGpWKU/CvsOZ6yTuP0zNKuVz3Ob+tOOEBAcR06gGAJd1jiIyvEKO7b3pPw/dx3MvvJSv45SUmMjsuK+4+dbbvRBZ4eWWW0ZGBjM+mUqPXr0zl82K+5KY5k256rIBvP3uB94M1a2SkhKJjKyV+ToiIpLExEQfRuRegZ6f5I9//WVxg2eeG8POX//gmmuv479vTwBg0YL5NG/Rgl9/T2TV2o3cP+oeDh8+nMeWiqYmUVE88OB/GNC3FwP79aFFi5YEBwf7Oiy3+ObrOYRXDSemdWtfh/KvnFe6BNOfvZKH3lqQWe15+sMlNLzmDWYs2sztl8UWeNvDnvuCsXf15Pu3R3DkeDqO06fdFXaBzf1mDlWrhtMqJn/H6T8P3cezY170i45uXrndN/IuLurYiYs6dspcNnDQZWz46Rc++fQLnn/mKW+FKiIFUPS/hTxk8LVDiPvSeVpp8uSPGXTp5RhjqN+gAXXrns/27dt8HGHB3XDjTaxcs55Fi5dRKTSUhg0b+Tokt/hh5QrmzJlF4wZ1GTZkMEsWf8eIYUN9HVauQoKDmP7slcxctJm477f/4/2ZizZz6cXOU15J+4+cVemJqFKBpP1Hct3+6l8S6XHvZDrdOZHlP/2ReSrNl1atXMk3X88mulE9bhh2HcuWLObmG67Psf3G9esZcf11RDeqR9yXn3PfvXcze9ZXXow4/3LL7cXnn2X//hReHPtKtut27HQxu3/7NdtB5v6gZs0IEhL+rjonJiYQERHhw4jcK9Dzy8p46eGPilWnKH7nzsznc2bH0cg1ULJWrVos/u5bAPbu3cuOHds5//x6PonRHfbt2wfAH3/8QdxXX3DNtdf5OCL3eG7Mi+zancD2+N1MnjaDLl27MXHyVF+Hlav/Ptyf7b/v543PVmcuqx8Rmvm8/0WN2PHHAQC+XrmD63o5r5ZsGxXB4WMn2XPwaK7br1qpLAAlSwTzwLUdeH/WBnen8K898/wLbN/1B1t2/MrHkz/h4i5d+eDjKTm237x9F1t2/MqWHb8y6LIreG38BAYMvNSLEedfTrl9/NEHLFq0gImTPzmr4rVrVzzWNWhs08YN/JX+F5UrV/ZV+IUS26YN8fE72f3bb6Snp/PZzBn06z/Q12G5TaDnJ/njsdHExpjSwDKglGs//7PWeq12PHzodSxbtoQD+/fT4PxaPP7k08yfO5edO7YTFBRErdp1eOOtdwAY/egT3HbzCNq0ao61lufHvESVKlW8FarbXXv1FRw8eIASISV4/Y23qFSpkq9DKpYubFaLIb2a8/Ouvax63zkw/KkPFnPDJS1pWKsyp09b/tibxsjXnFdJzlsVT+92Ddgy9S6O/5XBbf83O3Nbi8YPo1HtypQrU5L4T0dy+8tzWLT2V+67pgN9OzQkyBjen7WepRt3+yLVfHnnrTd5/dWX2btnDx3atKRX77689d/3fR2WW4y6505q165D984XAc5TZqMfe4K4L79g+rQplChRgtJlyvDxlOl+O9g6JCTE2WHt1xuHw8HwG26kaXS0r8Nym0DPLyt//Rn0BnPmfzFu37DzUz/PWnvUGFMCWA7ca61dldM6Ma1j7YpVaz0ST1GgH0T/FtrzeV+H4DEp8x71dQhSCCHBxaroH1AuahfL+vXrvPbHIez8prb3M594ZV8zhrdab60t+KBJH/BYpcg6e1tnav8lXA/P9MBEREQkTwYoQvd4LXI8+t8LY0ywMWYTsA9YaK1dnU2bW40x64wx6/bvT/FkOCIiIiI58minyFrrsNa2BCKBtsaYZtm0ec9aG2utja1SpaonwxERESneXDcZ9cbDKnVNRAAAIABJREFUH3nlRLS19hCwGOjjie2fOHGCXt274HA4mDp5Ehc0bcQFTRsxdfKkbNsfPHiQ/n17cUHTRvTv24vU1FQAtm/bRpdOF1KpXGlef3VcZvv09HR6duvMqVOnPBF+nk6cOEHPbp0z82sW1ZBmUQ1zza9fn540i2pIvz49M/Oz1nL/qJFEN2lAm1bN2bjBeaVSSkoKA/t55NDkS6DnV7pkCAtev56gIMOQ3s35ecqd/DzlTob0bp5t+wvqh7Nkwg2s/fBW/jfmasqXLZn5XrN6zvfWT7yNtR/eSqkSzntQfT1uCJXKlfZKPuc6ceIEfXp0xeFwMG3KJFpGN6ZldGOmTcn5+A28pBctoxsz8JK/f/9mTp9G+9iWtGvdgu5dOvLzTz8Czt+/3t27+OT3L5Bzg8D/3Qv0/MT9PNYpMsZUNcZUcj0vA/QEPHLzn0kff8SgSy8jLS2NF8Y8y9Llq1i2YjUvjHk284c6q1fGvkSXrt34+ZcddOnajVdcE/+FhoUx7rXx3HvfA2e1L1myJF26duN/n870RPh5mjTxIwZdejlpaWmMef4Zlq1Yzfcr1zDm+WeyzW/c2Jfo0q07m7fupEu37oxz5Td/3lx2xe9k89adTHjnPUbefQcAVatWpXr1GqxcscKreZ0R6PkNv6QFcd9vo+J5pXhsWCcuvvMjOt3xEY8N65RtR+adB/vz+Pvf0eam95i1fDv3XdMBgOAgw0ePDuKe176h9Yh36X3fFDIczps1frLwZ24d5JubWv4/e/cdV1X9P3D8dViCuUBBBdxbcDDdiTJcgFqmuS1zl5lfM8vGr2GaWTnTtNyz7crBcKHiwJXmHimICoqICgLX8/vjXq8ooITce+Xyfva4j+Dce7jvt4cDH97ncz7vJYsWEKo7/yZN+JzIHbvZEhXNpAmf53j8vp3yFa3b+HPo2Elat/Hn2ylfAVClajU2hG1hT8xh3nt/PCNHaFe4fnD+/faL8c8/c84NzP/cM/f88ksawubOkJWiisAWRVGOAPvQzilaZ4g3WrViOcEhnQnfvIm2/gE4ODhgb29PW/8AwjZtzPb6dWvX0LtvfwB69+3P2jXa/jZOTk54e/tgbW2dbZ+Q0C6sXGmcGfuPW7liGSGhnQnbvAl//0B9fv7+gWzOMb/V9NHl16dvf/1CeOvWrKZXn34oikKTpk1JTr5JfHw8ACGdu7BqxTLjJZWFuef3qr87a6NOEehTg4iY8ySlpHHzdhoRMecJ8q2R7fU1XR2IOnwRgMj95/WLOwb4VOfouWv8fVa7DtWNW6ncv6+9d2H9zlN09zfN7cOrVi6nU3AoEWGbaJPl/GvjH0D45uzHb/3aNfTu0w+A3n36sU53/jVt1hx7e+0aTj6+TYmLi9XvExzamZ9NcP6Zc25g/ueeuecnCp7BBkWqqh5RVdVDVdWGqqq6q6r6mSHeJz09nfPnz1GlatUce9dcvpy9d821a1epWFHbL6pChQpcu3b1qe/j5u7Ogf3GXy4gPT2dC1nzq5QlP9dc8rv6WH5Xtfnl+O+j6+3j6eXNzqgdhkwlR+aen7WVBVWd7bl4NTl7b7OEnHubHb+QQEgL7SrkL/k97GdWy7UsqgprJvdk1w8DGf1qM/0+N2+nUczaCodSdgbO6FGPHr/LOZx/l7Ptk3DtKhV0x698hQok5HD+LV44n8Cgh5cl6ru5ExOz3wAZ5M6ccwPzP/fMPb9nIXOKclc4W8FnkZiYSJnS+V+cMK8Hz9LSEmsbG1JSUihZMvcmnQUtMTGR0s+w+GJe83NyciI+PvsPeUMz9/zKlS5O8u20/7TPkMnr+Oatdozr14r1O0+RnqEBtGvRNG9QiZZDf+LuvQw2fNOHA6fi2XrgAgAJN+9QsWwJbtxKLeg0cnU9MZHSBXz+bd+6hcUL57M5crt+m6WlJTZGPv/MOTcw/3PP3PMThpFrpUhRlBRFUW7pHilZPk9RFOW56ZZqZ2dH2j3tL52cetc4O2fvXePkVF5f+oyPj8fR0SlP75V+7x62tsadzGpnZ0daWpb8snS8j4vNJb/yj+Xn5PRw/8f/fXS9fdLS0rC1M26VAcw/v9R7mdjaaP/2yNbbzDHn3manLl0nZOxyWgz5iZ8jj3H+snbuQ1zCLaKOXOT6rVRS72Wycc8ZPGpV0O9XzMaK1HvGnbBra2fHPf3xc87h/HPOto+jU3mu6I7flfh4ymU5/47+fYQ3hw1m5a9/ZGuHcc/I55855wbmf+6Ze3759WCdImM8CqNcB0WqqpZUVbWU7lEyy+clVVUtldt+xmZvb49GoyEtLY2AoHZEhIeRlJREUlISEeFhBAS1y7ZPp5AQ/d0jy5YsIjjk6f1trl+/Ttmy5XKcb2RIWfMLDGpHePhmfX7h4ZsJzCm/4FCW6vJbumQRwSGdtdtDQlm+dDGqqrInOppSpUrrS8WnT53CzS3bigkGZ+753bydhqWFBcWsLQnbd5YA7+qUKWFLmRK2BHhXJ2zf2Wz7POhnpigwrm9L5q3V3ukStu8cbtUcsStmhaWFQqtGVTj+78PmohXsX+DfKzeNk5hO1uPnH9iOyCznX2R4GP6B2Y9fx+AQli1dDMCypYvppDv/Ll28SO8e3Zg7f1G2JsamOP/MOTcw/3PP3PMThpGnOUWKorRUFOU13cflFEWpZtiw/hv/gEB27YzCwcGBcR98SKvmvrRq7sv74z/CwcEBgGFD3tBft//fu+OIjAinQf3abImM4H9jxwFw5coValarxIxp3/HVxAnUrFaJW7e0RbHtW7fQvmNHk+QXEBCkz+/9Dz6iZTMfWjbz4YPxHz/Mb/AbxOzX5jdm7Dgiw8Nwr1eLLRHhjNHl175DR6pVq45b3ZqMGDqIaTO+17/Htm1baN+hk/GTw/zzC99/juYNKpOUksbEJTuImvM6UXNe58vFO0hK0f4l+/2YTnjW1v6Q7e7vxpHFwzi8aBjxiSks3qC9ffvm7TSm/7KHqDkD2fPjIA6djmdj9BkAPGtXZO/xODT3jb9ofNuAQHbrjt/Y98fj16IJfi2a8N4HH+qP34ihgzigO/9Gj3mPLRHhNHarw9bICEaPeQ+ASV9+zo0b1xn99ps09/Xkxea++vfYsW0L7ToY//wz59zA/M89c88vv2ROUe6e2vtMUZRPAG+gjqqqtRVFcQZ+UVW1RUEHk9/eZwcPHmDmtKn8tHBxQYek9+orL/P5hInUql376S/ORX6/SQ4eOMCMad8xf1HuncafVUCbF/nl99X6O2SMqbDkl9/eZ41rVeCtbk0YOHF1vt/7aaa8GcS6Xaf084v+q2fpfXbo4AFmTZ/KvAWGO/969XiZT7+YmK3KYmiFJbf89j4rLOdefhWG/Izd+6xcdTc15MuVRnmvhT0bFrreZ3k5k7oCocAdAFVVLwPGmw2YBx4enrzop1280RDS09MJCe38TAOiZ+Hh6UlrvzYGyy8hIYGRo0ab5IcWmH9+h05fYduhC1gY8CL7sfMJ+R4QPavGHp60am3Y8y84pLPRB0Rg3rmB+Z975p6fKHh5qRTtVVXVV1GUA6qqeiqK8gKwW1XVnJfjfQb5rRQVFoW1nCi08lspKgyepVIkTC+/lSJheqaoFIUaqVK0wEwrRT8rivIDUEZRlEFAODDPsGEJIYQQQhjXU9cpUlV1iqIogcAtoDbwsaqqYQaPTAghhBAFSlHAQq5a5Cqvizf+DdgBqu5jIYQQQgiz8tTLZ4qivAHsBV4CugHRiqK8bujAhBBCCFHwpCFs7vJSKXoX8FBV9TqAoihlgV3AfEMGJoQQQghhTHkZFF0HsvYiSNFtE0IIIUQhI3dC5y7XQZGiKKN1H54B9iiKshrtnKLOwBEjxCaEEEIIYTRPqhQ9WKDxrO7xgOGW5RVCCCGEQUmhKHe5DopUVf3UmIEIIYQQQpjSU+cUKYriCIwF3ADbB9tVVW1rwLiEEEIIUcAUFFmn6AnysqL1MuAEUA34FLgAmG8vDiGEEEIUSXkZFJVVVfUnIENV1W2qqr4OSJVICCGEKGyMtEZRYS1G5eWW/Azd/+MVRekEXAYcDBeSEEIIIYTx5WVQ9IWiKKWB/wEzgFLAOwaNSgghhBAGIesU5S4vDWHX6T5MBtoYMhgFOVji+ZWw8QNTh2Awjv4fmzoEg0qI+MzUIQghCoEnLd44A+1ijTlSVXWkQSISQgghhMHkZTJxUfWkStF+o0UhhBBCCGFiT1q8cZExAxFCCCGEMKW8TLQWQgghhBmQubtPJpcWhRBCCCGQSpEQQghRpFhIoShXT60UKYpSW1GUCEVRjuo+b6goyoeGD00IIYQQwnjycvlsHvA+upWtVVU9ArxqyKCEEEIIYRgWinEehVFeBkXFVVXd+9i2TEMEI4QQQghhKnmZU5SoKEoNdAs5KorSDYg3aFRCCCGEKHDaZq2FtIxjBHkZFI0A5gJ1FUWJA84DfQwalRBCCCGEkeWl99k5IEBRlBcAC1VVUwwflhBCCCEMobDO9zGGpw6KFEX5+LHPAVBVVTosCiGEEMJs5OXy2Z0sH9sCwcBxw4QjhBBCCEOSKUW5y8vls2+yfq4oyhRgk8EiEkIIIYQwgfysaF0ccC3oQIQQQghhWApgIaWiXOVlTtHf6G7HBywBR0DmEwkhhBDCrOSlUhSc5eNM4KqqqrJ4oxBCCFEISSf43D3x30ZRFEtgk6qq/+oeceYwILp58yY9e3SjkXtdGjeoR/Tu3aYOqcBpNBqaenvwUufgp7+4kNm8aSMN3ergVrcmX0+eZOpw8k2j0dCiiRfduoYAMHzIGzTz8aCpd2P69HyF27dvA7B08UKqupanua8nzX09WTj/R1OGrefqVJqN01/nwJKRxCx5ixGvNAPg4zf82bvwTaIXjGDttwOoWLYkAK08qnFl44dELxhB9IIRvD+gjf5rvdW9OTFL3mL/4rdY9H/dKWaj/XutSkV7ts8dwtGV77Dk0x5YW1kaP9EcPH7sBvbvg0eDevh6NmTY4IFkZGQAcPLkCdq2bkHZUnZM++6bJ33J59KlS5doF9AGj4b18Wzkxszp0x55fup332BnrZCYmGiiCAvO03IVRcMTB0WqqmqAk4qiVDZSPEYx5p23CQpqz+GjJ9gbc5i69eqZOqQCN3P6NOqYYV4ajYZRI0eweu0GDh75h19WruD4P/+YOqx8+X7mdOrUqav/fNLX37J730Gi9x/CtVJlfpg9S//cy926s2vvAXbtPcCA198wRbjZZGo0jJu5Ac++02k9+AeGvNSEulUd+W55FL4DZtL0tVls2HWC9197OPjZefgCTV+bRdPXZjFx4RYAnMuVZHi3ZrQYOBvvfjOwtFB4xb8BABOGBTFj1S7cX/2OpJRUBgR7mSTXxz1+7Lr37MWBI/+wJ+YwaampLFqgHbg62Dvw9TdTGTnqf6YK9ZlYWVkxafI3HDzyD9uiovlhziz9+Xbp0iUiwjZTqbJ5/Hp4Uq6i6MhLFc0eOKYoSoSiKGsePAwdmKEkJycTFbWdAa8PBMDGxoYyZcqYOKqCFRsby8YN63ntOfnlWZD27d1LjRo1qVa9OjY2NrzS41XWrV1t6rD+s7jYWDZt+Iv+rw3UbytVqhQAqqqSlpr63C/Ff+X6bQ6d0nb8uZ2azokLCTiXK0XK3Xv61xS3tUFV1dy+hJ6VpQV2xayx1P0/PlG7Rmxrz+r8vvUYAMs2HCSklekH+jkdu3btO6IoCoqi4OXjS1xsHACOTk54eftgbW1tqnCfScWKFfHw9ASgZMmS1K1bj8uXtbmNHfMOEyZOfu6/T/PqSbmaG22rD8M/CqO8DIo+Qjuv6DPgmyyPQunC+fOUK+fI4IGv0dTbg2GD3+DOnTtP37EQefd/o5gwcTIWFuZ35fjy5ThcXSvpP3dxcSUurvD94Hrv3Xf4/MtJ2Y7R0EGvU6OKM6dOnmTo8Df121f/+bv+slrspUvGDvepKlcoQ+PaFdn3TywA/zc4gNO/vcurQY34/KcI/euauFdmz8IR/DmlH/WqOQFwOTGFqSujOPXbGM7/+R637twjYt8ZypYuTvLtNDSa+wDEJdzC2bGU8ZN7TG7HDiAjI4OVy5cSENTOBJEZ1r8XLnDo0EF8fJuwds1qnJ1daNiokanDMoisuYqiJS+/NTuqqrot6wPoaOjADCUzM5NDBw8waMgwovcfpPgLLzClEM9Ledxf69fh5OiEp9fzcZlBZLfhr3U4Ojrh4Zn9GM2ZN5/T52OpU7cuv/2yCoAOnUI4dvIc0fsP0bZtAEPeeM3YIT/RC3Y2rJjQk3en/aWvEv3f3HBqvfw1KzcfZuhLTQE4dPIydbpNocmAWcz+NZqfv+wFQJmStgS3rEe97t9QvctXvGBrzatBz+cv2ycdO4B3Ro6gRctWtGjZysiRGdbt27fp2f1lvv5mKlZWVkye9CUf/5953oScNdcH1VtzoigKFkZ6FEZ5GRQF5rCtQ0EHYiwurq64uLri20T7F0DXl7tx6OABE0dVcHbv2sm6dWuoU7Mq/Xq/ytYtkbzWz3z69zo7uxAb+7BSEhcXi4uLiwkj+u+id+3ir/VrcatdnQH9erF96xbeGNBX/7ylpSUvv9KD1X/+DkDZsmUpVqwYAP1ff4NDB2NMEndOrCwtWPFFT1ZtPszq7dnnX6wKO0wXPzcAUu7e405qOgCbok9hbWVJ2dLFaetdgwvxSSTevEum5j5/bv+Hpg0qcz35LqVL2GJpqf0x5eJYissJt4yXXA6edOwmfvEZiYkJTJxcaAvpOcrIyKBn95fp0bM3Xbq+xLmzZ/n3wnl8vRpRp2ZV4mJjaebryZUrV0wd6jN7PFdR9OQ6KFIUZZhujaI6iqIcyfI4DxwxXogFq0KFCri6VuLUyZMAbI2MoG69+iaOquB8PmEiZy/EcvLMBRYvW4lfm7YsWLzU1GEVGG8fH86cOc2F8+dJT0/nl1Ur6RQcauqw/pNPv/iSk2cvcuzUORYuXs6Lfm2Yt2AxZ8+eAbRziv5av5bauom8V+Lj9fuuX7eG2nVNP6/mgTnvd+XkvwlMX7VLv62Ga1n9x8Et63Hq3wQAyjuU0G/3rueChYXC9eS7XLqajK+bK3bFtPNu2njV4OQF7T7bD57nJd2gqncHD9ZFmbbDUE7H7seFS1g4/0fCwzezYPFys7psraoqQwcNpE7derz9zmgA3Bs04OLla5w8c4GTZy7g4urK7r0HqFChgomjfTY55WquZE5R7p60TtFyYAMwERiXZXuKqqo38voGutv69wNxqqo+F/eHfzt1Bq/16016ejpVq1dn7o8LTB2SyCMrKyu+mzaTkE7t0Gg09B/wOvXd3Ewd1jNTVZUhA18jJeUWqqrSoEFDvpvxPQCzZ83gr/VrsbKywt7egTnz5ps4Wq3mDavQu70Hf5+5QvSCEQB88kMYA4K9qFW5HPfvq1y8epORX2snwnf1c2NQV18yNfdJu5dJv0+0lwf3/RPLH1uOsXv+cDI19zl8Kp6f1uwDYPzsTSz5vx58MiiAw6fjWbju+amSZTXqreFUrlwF/9YtAAjt3JVx4z/i6pUrvNjCl5Rbt7CwsOD7mdPYd/Boobkss2vnTpYvW4K7ewOaeDUGtAPD9h0K7QyKXBWlXEXulLzcGfJMb6AoowFvoNTTBkVeXt7qzj37DRqPEPmVqZvwa44c/T82dQgGlRBhnvNfHrCyNJ/qVFHTook3MTH7jVZXca7dQB0883ejvNen7WrHqKrqbZQ3KyAGPZMURXEFOgHPx2pzQgghhBC5yE9D2P9iKjAWKJnbCxRFGQwMBsxmETAhhBDieSQNYZ/MYJUiRVGCgWuqqj5xEoCqqnNVVfVWVdXbsZyjocIRQgghhHgiQ14+awGEKopyAVgJtFUUxSC3QaWmphLYtjUajYalixfhXq8W7vVqsXTxohxff+PGDTq1D8S9Xi06tQ8kKSkJ0E52HT1qJG51a+Lj0ZCDB7S36ickJBDaqb0hQs8Tye9RhTG/9gFt0Gg0LFuyiMZudWjsVodlS3LPL7RjEI3d6hDaMUif36oVy2jq3ZgmXo3w92vJ30cOA5Cenk47fz8yM03TltDWxorNMwZiYaFoJ16vGMXfK0bRu71Hjq9vULMCW+cMZt+iN/n1qz6ULF5M/5x7jfJsnTOYmCVvsW/Rm/oeaOunvkaZkrZGyScrcz92ReHcM+f88kvuPsudwQZFqqq+r6qqq6qqVYFXgUhVVQ2yYM6iBfPp3OUlkpOTmfDFp2zfuYcdu/Yy4YtP9d/UWU2ZPAm/tv4cPX4av7b++sUbN23cwNkzpzl6/DQzZ89l5JvDAHB0dKRChYrs2rnTEOE/leT3qMKW35JFCwjt0pXk5GQmTficyB272RIVzaQJn+eY37dTvqJ1G38OHTtJ6zb+fDvlKwCqVK3GhrAt7Ik5zHvvj2fkiKGAtlWNX5u2+sUeja1/sBert/9D6RdsGf96G14c/AOtBs9h/OttchzIzH6vCx/O2YxP/5ms2f4P7/RqCYClpQXzP3qFt6aswavvDNq99RMZmRoAlm88xOCuxl9d2NyPnbmfe+aenyh4ZnHLwsoVywgJ7UzY5k34+wfi4OCAvb09/v6BbN60Mdvr161dTZ++/QHo07c/a9f8qd2+ZjW9+vRDURSaNG1KcvJN4nVrxIR07sKqFcuMl1QWkt+jClt+q1Yup1NwKBFhm2jjH6DPr41/AOGbs+e3fu0aevfpB0DvPv1Yt0Z7S3vTZs2xt7cHwMe3KXFxsfp9gkM78/PK5UbIJrtXAxuxdsdxApvUImLfWZJSUrmZkkbEvrMENamd7fU1K5Uj6tAFACL3naVLa+2SCgE+NTl69gp/n9EuAnjjVir372vvjl2/8zjdAxoaJ6EszP3Ymfu5Z+755YsCFkZ6FEZGGRSpqrrVUGsUpaenc+H8OapUrarti1UpS18sV9ccG/pdu3qVihUrAtrFHK9dvQrk3Ffrsq6vlqeXNzujdhgihSeS/Mwpv8vZ47t8Ods+CdeuUkGXX/kKFUi4djXbaxYvnE9g0MOyfX03d2JijL+chbWVJVWd7bl45SbOjiWJvZasfy7uWjLOjtnvsTh+/pq+setLbdxwLV8agFqVyqKqsOab/uz6aTijdRUkgJspaRSztsShlJ2BM3rI3I9d0Tr3zC8/YRiGvvvM4BITEyn9DF3uH3S2fhonJyfi47P/EDQ0ye/Jnvf8ricmUrp0wea3fesWFi+cz+bI7fptlpaW2NjYkJKSQsmSud7sWeDK6Zq2/hdDJv7ON6OCGTfAj/VRJ0jP0F4is7KyoHnDKrQcNJu7aRlsmPYaB05eZmvMOQASku5QsVwpbtxKLfA8cmLux87czz1zz+9ZKBTSMo4RFPrLZ3Z2dqSlaX8oOzu7PNJBPC42Fmfn7H2xnMqX15c+4+PjcXRyerj/Y321nHV9tdLS0rC1M95fqQ9IfoU7P1s7O+7p83POHp+zc7Z9HJ3K61t7XImPp5yjk/65o38f4c1hg1n56x+ULVv2kf3u3buHra1xJyOnpmdgq5sMfTkhBVen0vrnXJxKczkhJds+py4mEjJ6IS0Gzubn8COcj9MukB937RZRhy9wPfkuqfcy2Lj7FB61H/77FCtmReq9DANn9JC5HztzP/fMPT9hGIV+UGRvb49GoyEtLY3AoHaEh28mKSmJpKQkwsM3ExjULts+nYJDWaq7e2TpkkUEh3TWbg8JZfnSxaiqyp7oaEqVKq0vpZ4+dQo3N3fjJaYj+ZlPfv6B7YgMD9PnFxkehn9g9vw6BoewbOliAJYtXUynEG1vt0sXL9K7Rzfmzl9ErVqPztW5fv06ZcuWw9ra2vBJZXEzJQ1LCwuK2VgRtuc0AT41KVPSljIlbQnwqUnYntPZ9nEs8wKg/Ut8XH8/5q3eC0DY3tO4VS+PXTFrLC0taOVRjeMXrun3q+BQkn+v3DROYpj/sStK55455icMo9APigACAoLYtTMKBwcH3v/gI1o286FlMx8+GP8xDg4OAAwb/AYx+7XX7ceMHUdkeBju9WqxJSKcMWO1rd3ad+hItWrVcatbkxFDBzFN13sKYNu2LbTv0Mn4ySH5QeHOr21AILt1+Y19fzx+LZrg16IJ733woT6/EUMHcUA3r2T0mPfYEhFOY7c6bI2MYPSY9wCY9OXn3LhxndFvv0lzX09ebO6rf48d27bQzkQ9msL3naF5wyokpaQycdEWouYNI2reML5cuIWkFO2lru/f64JnHW1lpXtgQ46sGMXh5W8Tn5jC4vXa25tvpqQxfdVOon4cyp4FIzh08jIbd58CwLOOM3uPXUJj5FYr5n7szP3cM/f88kO7eKNMtM6NwXuf/Rf57X128MABZkz7jvmLlhggKq2ANi/yy++r9XeQGJPk9+wKIr/89j47dPAAs6ZPZd6Cxfl+76fp1eNlPv1iYrYqRF49S++zxrUr8lb3Fgz84td8f42nmfJ2R9ZFndDPL/qv8tv7rDAcO8h/77PCcu7lV2HIz9i9z1zrNFDfnP2nUd7rff+aha73WaGfaA3g4elJaz/tAmuWlpYF/vUTEhIYOWq0SU5qkPyelanza+zhSavWfgbLLz09neCQzs/0S/VZHDoVz7aD57CwUPS30Be0Y+eu5XtA9CzM/diZ+7ln7vnlV2Gt4hiDWVSKhDCG/FaKCoNnqRQVBvmtFBUW+a0UCdMzRaVo5BzjVIreayuVIiGEEEI8x/Ky1EBRJX9eCCGEEEIglSIhhBCiyHhw95nImVSKhBBCCCGQSpEQQghRdCggU4pyJ5UiIYQQQgikUiSEEEIUKRZSKsqVVIqEEEIIYXSKosxXFOWaoihHs2xzUBQlTFGU07r/2+u2K4qiTFcU5YyiKEcURfHMsk9/3etPK4rSP8t2L0VR/tbtM13Jw1oEMigSQgghiojnrPd0B5yBAAAgAElEQVTZQqD9Y9vGARGqqtYCInSfA3QAaukeg4HZoB1EAZ8ATQBf4JMHAyndawZl2e/x98pGBkVCCCGEMDpVVbcDNx7b3BlYpPt4EdAly/bFqlY0UEZRlIpAOyBMVdUbqqomAWFAe91zpVRVjVa1rTsWZ/lauZI5RUIIIUQRYsQpReUURcnau2uuqqpzn7JPeVVV43UfXwHK6z52AS5leV2sbtuTtsfmsP2JZFAkhBBCCENIfJbeZ6qqqoqiGLVBq1w+E0IIIcTz4qru0he6/1/TbY8DKmV5natu25O2u+aw/YlkUCSEEEIUGQoWRnrk0xrgwR1k/YHVWbb3092F1hRI1l1m2wQEKYpir5tgHQRs0j13S1GUprq7zvpl+Vq5kstnQggSIj4zdQgG5dhluqlDMKiktaNMHYIQ/5miKCsAP7Rzj2LR3kU2CfhZUZSBwL9Ad93L/wI6AmeAu8BrAKqq3lAU5XNgn+51n6mq+mDy9nC0d7jZARt0jyeSQZEQQghRRCg8P20+VFXtmctT/jm8VgVG5PJ15gPzc9i+H3D/LzHJ5TMhhBBCCKRSJIQQQhQdeV9YsUiSSpEQQgghBFIpEkIIIYoUaQibO6kUCSGEEEIglSIhhBCiyHie7j57HkmlSAghhBACqRQJIYQQRYrMKcqdVIqEEEIIIZBKkRBCCFGkSKEod1IpEkIIIYRAKkVCCCFEkaEg1ZAnkX8bIYQQQghkUCSEEEIIAcjlMyGEEKLoUECRmda5kkqREEIIIQRSKRJCCCGKFKkT5a5IVIpOnTxJE6/G+oeTQylmTJvKb7/+gmcjN4rbWBCzf7+pwywQly5dol1AGzwa1sezkRszp08zdUgFrk7Nqng3bkATr8a0aOJt6nDyTaPR0KKJF926hgDww+xZNKpfm5K2liQmJupft2PbVlyc7Gnu60lzX08mTfjcVCH/J4/nN3zIGzTz8aCpd2P69HyF27dv61/7+68/493YHR+PBrzer7epQtZzLVeCjZNe5sAPfYmZ05cRnRsD8OXAlhya24+93/dm1UfBlH6hGADetcsTPbM30TN7s2dWb0Kb1wCgmLUlO6a+yp5ZvYmZ05cP+zTVv4df40rsmtGL6Jm9iZjyCtUrljZ+ok+RlpZGy2a++Ho2wrORG59/+gkAs2fNxK1uTeyslUe+VwubIW+8TmVnJ7wau+u33bhxg07tA3GvV4tO7QNJSkoyYYTC2IpEpah2nTrsiTkEaH9Q16jiQmiXrqTevcvKn3/nzeFDTBxhwbGysmLS5G/w8PQkJSWF5k288A8IpF79+qYOrUBtDN9CuXLlTB3GM/l+5nTq1KnLrZRbADRt1pz2HTrRMahtttc2a9GSX/9Ya+wQn8nj+U36+ltKlSoFwLix/+OH2bP437vvcebMab75+ivCtuzA3t6ehGvXTBk2AJma+4ybt51DZxMoYWfNrum9iDh4kYiDF/lowU4091W+eL0l7/bw4cP5URz79zotRi5Hc1+lgn1x9nzfh/XR57iXoaH9uN+4k5aBlaUFkVO6s3n/BfaeuML0EW155bM1nLyUxOBODRnXswmDv91s6tQfUaxYMTaGRVKiRAkyMjJo27olQe060Kx5Czp2CiYowM/UIT6Tvv0HMHT4m7zxej/9timTJ+HX1p93x47j68mTmDJ5EhMmfmXCKAuWgrT5eJIiUSnKaktkBNWq16BKlSrUrVeP2nXqmDqkAlWxYkU8PD0BKFmyJHXr1uPy5TgTRyUeFxcby6YNf9H/tYH6bY0ae1ClalXTBVWAcsrvwYBIVVXSUlP1kz0Xzv+RQUOGYW9vD4Cjk5PxA37MlaS7HDqbAMDt1AxOXLqBc9kSRBy4iOa+CsDeE/G4lCsBQOq9TP32YjZWqKqq/1p30jIAsLaywMrKggdPqaiUKq6tNJV6oRjx1x9Wzp4XiqJQooQ2x4yMDDIzMlAUhcYe5vG92rLVizg4ODyybd3a1fTp2x+APn37s3bNn6YITZhIkRsU/bJqJd179DR1GEbx74ULHDp0EB/fJqYOpUApikJIhyCa+3rx07y5pg4nX9579x0+/3ISFhZ5OwX37ommmY8HL4V25Pg/xwwc3bPLLb+hg16nRhVnTp08ydDhbwJw5vQpzpw5TYBfK9q82JywzRtNEXKuKjuVonENR/advPLI9n5Bbmzad0H/uU+dCsTM6cv+2X0YOTNSP0iysFCIntmbiysGE3nwov7rDJ8azh+fdebMkoH08q/LlF+ez0v4Go2GJl6NqezsRNuAQHybmNfPk8ddu3qVihUrAlChQgWuXb1q4ogKnmKkR2FUpAZF6enprF+3hpe6vWLqUAzu9u3b9Oz+Ml9/M1X/F7q5iNgaxe59B/hz3QZ+mD2LqB3bTR3Sf7Lhr3U4Ojrh4emVp9c38vDkn1Pn2b3vIEOGv0nPV14ycITP5kn5zZk3n9PnY6lTty6//bIKgMzMTM6eOc2GsEgWLFrGW8OGcPPmTWOHnaMXbK1Z8WEn3v1hGyl30/Xbx77qg0Zzn5VbTui37Tt5Ba+hS2j59gre7e5DMWtLAO7fV2n65jJq9v0J79rlqV+lLABvdfWk68erqdn3J5Zs/oevBr1o3OTyyNLSkj0xhzhzIZb9+/Zy7OhRU4dkNIqiyO3rRUyRGhRt2riBxh6elC9f3tShGFRGRgY9u79Mj5696dL1+f4Fmh8uLi4AODk5EdqlK/v27TVxRP9N9K5d/LV+LW61qzOgXy+2b93CGwP65vr6UqVK6S9htGvfkYyMjOd6cuvT8rO0tOTlV3qw+s/fAXBxcaVjpxCsra2pWq0aNWvV5uyZ06YKX8/K0oIVHwazassJVu86q9/eJ6A+HX2rM2ByzhWtk5eSuJ2agVvVso9sT75zj21HYgnyrkK50nY0qF5OXzX6dfspmtavaLhkCkCZMmVo7deGzc9ZJa+gOZUvT3x8PADx8fHPxeXcgqYoxnkURkVqUPTzqhVmf+lMVVWGDhpInbr1ePud0aYOp8DduXOHlJQU/cfhYZtxc3N/yl7Pl0+/+JKTZy9y7NQ5Fi5ezot+bfhx4ZJcX3/1yhX9HJX9+/Zy//59ypYtm+vrTS2n/OYtWMzZs2cA7ffoX+vXUrtOXQCCQzuzY/s2ABITEzlz+hRVq1U3WfwPzBkVwMlLN5j+x0H9tkCvKox+xYtun64h9V6mfnuV8qWwtND+FqjsVJI6lez59+otypW209+hZmtjib9HZU5eSiIpJY1SxYtR06UMAG09KnPy4g0jZpc3CQkJ+qpdamoqEeFh1NEdN3PVKTiUpUsWAbB0ySKCQzqbOCJhTAa9+0xRlAtACqABMlVVNdn903fu3CEyPIyZ3/+g37b6zz8YPeotEhMSeKlzJxo2aszavzaZKsQCsWvnTpYvW4K7u/aWddD+kmrfoaOJIysY165epUe3rgBkajLp8Wovgtq1N3FUBWP2rBlM/fZrrl65QjOfxgS168CsOfP484/f+HHuHKysrLC1s2PBkuWFrqSvqipDBr5GSsotVFWlQYOGfDfjewACAtsRER6Gd2N3LC0t+WLiVyYf9DV3c6Z3QH3+Pp9A9EztEgGfLNrJN0P9KGZtyboJ2grs3hPxjJwZSXM3Z8Z09yEj8z73VZW3Z23h+q003KuWY96YICwtFCwUhd92nGbD3vMAjJgezorxwdxXVW7evseQ756vO88ArsTHM+j1/mg0Gu6r93m5W3c6dgpm1ozpfPvNZK5euYKPZ0Pat+/I7Lk/mjrc/6xfn57s2LaVxMREalR15aOPP2XM2HH06dmdRQt+onLlKixd8bOpwyxgcknwSZSsd0kU+BfXDoq8VVXNU63fy8tb3bnn+ZxsKESm5r6pQxD55NhluqlDMKiktaNMHYLIpxZNvImJ2W+0UUr1+o3UCcv+Msp79fJ0jTFlMSQ/isQ6RUIIIYTQrVNk6iCeY4b+t1GBzYqixCiKMjinFyiKMlhRlP2KouxPSEwwcDhCCCGEEDkzdKWopaqqcYqiOAFhiqKcUFX1kfunVVWdC8wF7eUzA8cjhBBCFGkypyh3Bq0Uqaoap/v/NeAPwNcQ75Oamkpg29ZoNBqWLl6Ee71auNerxdLFi3J8fW69bVRVZfSokbjVrYmPR0MOHjgAaO/ACO1kusm8kt+jCmN+7QPaoNFoWLZkEY3d6tDYrQ7LluSeX2jHIBq71SG0Y5A+v1UrltHUuzFNvBrh79eSv48cBrTrb7Xz9yMzMzPHr2do5pyfrY0lmyd3w8JCoXdAPf7+sT9//9if3gH1cnx9g2rl2PptD/Z934df/y+UksVt9M+5V9U+FzOnL/u+76Nfx2j9ly9RpkQxo+TzuKJw7plzfqLgGWxQpCjKC4qilHzwMRAEGGTVr0UL5tO5y0skJycz4YtP2b5zDzt27WXCF5/m2MzvQW+bo8dP49fWnymTJwHadYzOnjnN0eOnmTl7LiPfHAaAo6MjFSpUZNfOnYYI/6kkv0cVtvyWLFpAaJeuJCcnM2nC50Tu2M2WqGgmTfg8x/y+nfIVrdv4c+jYSVq38efbKdq+S1WqVmND2Bb2xBzmvffHM3LEUABsbGzwa9NWvxiisZlzfv2D3Fi98wyli9swvldTXhy1klajVjK+V9McBzKzRwXw4YIofIYvZc2uM7zzsnYBS0sLhflj2/HWjAi8hi6h3Xu/kqGbuL888jiDgxsaNa8HzP3cM/f8RMEzZKWoPBClKMphYC+wXlVVg6z6tXLFMkJCOxO2eRP+/oE4ODhgb2+Pv38gmzdlf8vcetusW7OaXn36oSgKTZo2JTn5pn4Rr5DOXVi1Ypkhwn8qye9RhS2/VSuX0yk4lIiwTbTxD9Dn18Y/gPAcFsJbv3YNvftoG1T27tOPdWtWA9qGsQ/6g/n4NiUuLla/T3BoZ35eudwI2WRnzvm92qYua3efI9CrKhEHL5J0+x43b98j4uBFgryqZnt9TRd7ov7W9hqMPHCRLi1rAhDgVYWj5xP5+7z2RtwbKWnc17UBWR99ju6tTdOD0dzPPXPPL7+kzUfuDDYoUlX1nKqqjXQPN1VVJxjifdLT07lw/hxVqlbl8uU4XCtV0j/n4uqaYzPU3HrbXL4ch6trlv1dXLkcp93f08ubnVE7DJHCE0l+5pTf5ezxXb6cbZ+Ea1epoMuvfIUKJFzL3ntp8cL5BAY9LNvXd3MnJsb4y1mYc37WVhZUrVCai9du4VzuBWITUvTPxSWm4FzuhWz7HP/3OiHNagDwUqtauJYrCUAtF3tUFdZ80ZVdM3oxutvDFig3b9+jmLUlDiVtDZzRo4rWuWd++QnDKPS35CcmJlK6TJl875/X3jZOTk7Ex2f/AW9okt+TPe/5XU9MpHTpgs1v+9YtLF44n82RD+9ZsLS0xMbGhpSUFEqWLJnv9/uvzDm/cqXsSL5z7z/tM+S7ML4Z5se4nr6sjz5HeqYGACtLheZuzrR8ewV372WyYeLLHDhzja2HLgGQcDOVimVf4EZKWoHnkRtzP/fMPb98U2Si9ZMU+uUK7OzsSEvT/iBxdnYh9tIl/XNxsbE4O7tk2ye33jbOzi7ExmbZPy4WZ12frbS0NGzt7AyWR24kv8Kdn62dHff0+Tlnj8/ZOds+jk7luaLL70p8POUcH/ZeOvr3Ed4cNpiVv/6RbdXne/fuYWtr3GqDOeeXmp6JrY3278bLiXdwdXw4GHMpV5LLiXey7XMqNomQ8X/QYuQKft52kvPxyQDEJd4m6mgc12+lkXovk437zuNR42HexWwsH2kbYgzmfu6Ze37CMAr9oMje3h6NRkNaWhqBQe0ID99MUlISSUlJhIdvJjCoXbZ9cutt0ykklOVLF6OqKnuioylVqrS+lHr61CmT9NiS/MwnP//AdkSGh+nziwwPwz8we34dg0NYtnQxAMuWLqZTSCgAly5epHePbsydv4hatWo/ss/169cpW7Yc1tbWhk8qC3PO7+bte1haKBSztiQs5gIBnpUpU6IYZUoUI8CzMmExF7Lt41ha+8tRUWDcq77M++sIAGEx/+JWtRx2xaywtFBo1cCV4xev6/erYP8C/169ZZS8HihK55455pdfDxZvNMajMCqscT8iICCIXTujcHBw4P0PPqJlMx9aNvPhg/Ef4+DgAMCwwW8Qs187J2HM2HFEhofhXq8WWyLCGTN2HADtO3SkWrXquNWtyYihg5im680EsG3bFtp36GT85JD8oHDn1zYgkN26/Ma+Px6/Fk3wa9GE9z74UJ/fiKGDOKCbMzN6zHtsiQinsVsdtkZGMHrMewBM+vJzbty4zui336S5rycvNn+4wsWObVtoZ6L+duacX/iBf2nu5kzS7XtMXLGHqGk9iZrWky+X7yHptvbS2vdvB+BZS1tR6O5XhyPz+nN4bn/ib9xh8eZ/AO0Aa/rvB4ia1pM9s3pz6Mw1Nu67AIBnLSf2nohHc9/4y7SZ+7ln7vmJgmfQ3mf/VX57nx08cIAZ075j/qLcO40/q4A2L/LL76v1d8cYk+T37Aoiv/z2Pjt08ACzpk9l3oLF+X7vp+nV42U+/WJitgqLMRSG/PLb+6xxDUfe6urJwCmGaxQ9ZUhr1u05p59flB/57X1WWM69/CoM+Rm791lNt0bq1yuM0/j8pUYVC13vM7OoFHl4etLaT7t4nCEkJCQwctRok5zUIPk9K1Pn19jDk1at/QyWX3p6OsEhnU0yIALzzu/Q2QS2HbmEhYXhfmcd+/f6Mw2InoW5n3vmnp8oeGZRKRLCGPJbKRKml99KUWGR30qRMD1TVIqmGKlS1FUqRUIIIYQQhVOhX6dICCGEEHknyxTlTipFQgghhBBIpUgIIYQoMrTrFEmpKDdSKRJCCCGEQCpFQgghRJEic4pyJ5UiIYQQQghkUCSEEEIIAcjlMyGEEKIIUVBkonWupFIkhBBCCIFUioQQQogiRSZa504qRUIIIYQQSKVICCGEKDJk8cYnk0qREEIIIQRSKRIiz6ws5W+IwurGmrdNHYJB2Qd+YeoQDCpx03hTh2AwqrHfUJE5RU8iP+WFEEIIIZBKkRBCCFGkSKUod1IpEkIIIYRAKkVCCCFEkSIrWudOKkVCCCGEEEilSAghhCgyFMBCCkW5kkqREEIIIQRSKRJCCCGKFJlTlDupFAkhhBBCIIMiIYQQQghALp8JIYQQRYos3pg7qRQJIYQQQiCVIiGEEKJIkYnWuZNKkRBCCCEEUikSQgghigxZvPHJpFIkhBBCCIFUioQQQogiRJE5RU8glSIhhBBCCIrooGjzpo00dKuDW92afD15kqnDKXCSX+FWp2ZVvBs3oIlXY1o08TZ1OM8kLS2Nls188fVshGcjNz7/9JNHnh89aiTlypQwUXQFY9aMaXg3boBXI3dmTp8KwOFDh2jdshlNvD1o0dSHffv2mjjKR7k6lmLjt304sGAIMQuGMOJlHwA+fq01e38cRPS8N1g7uRcVy2qPTe1KZdk6cwA3N41jVPemj3ytQJ/qHF40jKNLhzOmZ3P99ioVyrD9+9c4unQ4Sz7uirWV6X/dpKWl0bpFE5p6N8a7sTtffKb9fhw+ZCBNvRvTxKsRvV99hdu3bwNw8d9/6dQugCZejWgf2Ia42FhThl8wFO06RcZ4FEam/y41Mo1Gw6iRI1i9dgMHj/zDLytXcPyff0wdVoGR/MzDxvAt7Ik5xM49+00dyjMpVqwYG8Mi2XvgMHv2H2Lzpo3siY4GIGb/fm4mJZk4wmdz7OhRFvz0I9t37WFPzCE2/LWes2fO8OEH7/HBhx+zZ/9BPvrkUz58/z1Th/qITM19xs0Ox/O1H2g9fAFDOntTt0o5vlu1G9835tF00I9siD7N+/1aAZCUksr/Zmxi6s/Rj3wdCwuFqW93oPO4FXgMmMMr/m7UrVIOgAlD2jLjlz249/mepJQ0BnRsbPQ8H1esWDHWb4ogev8hdu87SPjmTezdE82kr78jev8h9sQcplKlSvwweyYAH4x7l159+rIn5jDjPviITz76wMQZCEMrcoOifXv3UqNGTapVr46NjQ2v9HiVdWtXmzqsAiP5ieeJoiiUKKGtNmRkZJCZkYGiKGg0Gj4Y9y4TJk02cYTP5uSJ43j7+lK8eHGsrKxo2epFVv/5O4qikHLrFgC3kpOpWNHZxJE+6sqN2xw6fQWA26npnLiYiHO5kqTcTde/pritNaqq/Tjh5l1iTsaTkXn/ka/jU9eZs5dvcCH+JhmZ9/kl8hjBLWoD0NqjKr9vOw7Ask1HCGlZxwiZPdnj348Zuu/HUqVKAaCqKqmpqSi6MseJ4//Q2q8tAK392rDeTH7WKEZ6FEZFblB0+XIcrq6V9J+7uLgSFxdnwogKluRX+CmKQkiHIJr7evHTvLmmDueZaTQamng1prKzE20DAvFt0oTZs2bSKTiUihUrmjq8Z1LfzZ1dUVFcv36du3fvsmnjBmJjLzF5ynd88P5YalWvzPvj3uWzL740dai5qly+NI1rVmDfce159H8D/Ti9aiSvBrjz+YJtT9zXuVxJYq/d0n8el5CCS7mSlC1lR/LtNDT3Vf1253IlDZfEf6DRaGjm40E11/K09Q/Ax7cJAEMHvU71yhU5deokQ4e/BUCDho1Y/efvAKxZ/QcpKSlcv37dZLELwytygyIhnncRW6PYve8Af67bwA+zZxG1Y7upQ3omlpaW7Ik5xJkLsezft5eoHdv5/bdfGP7mW6YO7ZnVrVeP0e+OJaRjOzoHd6Bho0ZYWloyb+5sJn/9LafPXWTy198ybMgbpg41Ry/YWrPis268O2uzvkr0fz9tpVaP6awMP8rQroV7TltOLC0t2b3vICfPXWL//n0cO3YUgDnz5nPmQhx16tTlt19WAfDlpK+J2rGd5r6eRG3fhrOLC5aWlqYM/5lp1ylSjPIojIrcoMjZ2YXY2Ev6z+PiYnFxcTFhRAVL8iv8HuTj5OREaJeuz90k3fwqU6YMrf3asG3rFs6dPYNb3ZrUqVmVu3fv4la3pqnDy7cBrw1k1579hEVuo0wZe2rWqs2yJYvp3PUlAF7q9gr7n8NjaGVpwYrPurEq/Cird5zM9vyq8KN0ebHuE7/G5cQUXJ1K6T93cSxJXGIK12+lUrqELZa6VQJdHEtyOTGlYBN4RmXKlOHF1n6Eb9qo32ZpaUm37q+y+g9tdaiiszMrfv6NXXsP8MlnE/T7CfNl0EGRoihlFEX5VVGUE4qiHFcUpZkh3y8vvH18OHPmNBfOnyc9PZ1fVq2kU3CoqcMqMJJf4Xbnzh1SUlL0H4eHbcbNzd3EUeVfQkICN2/eBCA1NZWI8DA8PL24EHuFk2cucPLMBYoXL86xE2dMHGn+Xbt2DYBLFy+y5s8/6PFqLypWdGbHdu2lp61bIqlRs5YpQ8zRnLHBnPw3kem/7NFvq+Fir/84uEVtTl188qWi/ScuU9PFgSoVymBtZcErbd1Yv+sUANsPXuCl1vUA6N2uIet2njJAFv/N49+PkRHh1Kpdh7NntN9/qqry17o11K6jnf+UmJjI/fvaeVRTJk+kb//XTBN4AZM5Rbkz9OKN04CNqqp2UxTFBihu4Pd7KisrK76bNpOQTu3QaDT0H/A69d3cTB1WgZH8CrdrV6/So1tXADI1mfR4tRdB7dqbOKr8uxIfz6DX+6PRaLiv3uflbt3p2CnY1GEVqF49unHj+nWsra35bvpMypQpw6w5cxkzehSazEyK2doyc/YPpg7zEc3dK9E7qCF/n71K9Dztpb1PftzCgI6NqVWpLPfvq1y8mszI7zYAUN7+BXb+MJCSxYtxX1V5s5svHgPmkHI3nXemb2Tt5J5YWliwaMMhjl9IBGD83EiWfNSVTwb6cfj0FRb+dchk+T5w9Uo8gwcO0H4/3r/PS91eoX3HTgS1fZFbt26hqioNGjZi6ozvAdixfSv/9+EHKIpCi1at+HbaLNMmIAxOUR/cXlDQX1hRSgOHgOpqHt/Ey8tbLey3IAshnj+G+jn3vHAImmDqEAwqcdN4U4dgMK2a+XAgZr/RCiv1GnioC/7YYpT3albLPkZV1UI1Mc2Ql8+qAQnAAkVRDiqK8qOiKC8Y8P2EEEII8TRy/SxXhhwUWQGewGxVVT2AO8C4x1+kKMpgRVH2K4qyPyExwYDhCCGEEELkzpCDolggVlXVB7P4fkU7SHqEqqpzVVX1VlXV27GcowHDEUIIIYRipP8KI4MNilRVvQJcUhTlwTKm/oBB+jGkpqYS2LY1Go2GpYsX4V6vFu71arF08aIcX3/jxg06tQ/EvV4tOrUPJEnXakBVVUaPGolb3Zr4eDTk4IEDgPaOhdBOppvsKvk9SvKT/IwlNTWVIH8/fW4N6temQf3aT8wtuEMQDerXJrhD0CO5/e+dkbjXq4WvZyMOHsySW3AHo+XzOFsbKzZP7YuFhULvdg35e8lw/l4ynN7tGub4+gY1nNg6cwD7fhrMrxO6U7K4DaC9vX/euFD2/TSYgwuHMqaXtgeatZUFYVP76W/NN7bU1FTaBWiP37Ili2hUvzaN6tdm2ZLcj19IhyAa1a9NSJbjd/LECdq+2ByHkrZM+3aK/vXp6ekE+bcmMzPTKPkIwzP0OkVvAcsURTkCNAYMsqzrogXz6dzlJZKTk5nwxads37mHHbv2MuGLT/Xf1FlNmTwJv7b+HD1+Gr+2/kzRNRXdtHEDZ8+c5ujx08ycPZeRbw4DwNHRkQoVKrJr505DhP9Ukt+jJD/Jz1gWLZxP5y5dSU5O5ssJn7EtKprtO/fw5YTPcsztm8mT8GvTlr//OYVfm7Z8kyW3M2fO8Pc/p5g5+wfefnM48DC33btMc+z6d2zE6h0nKP1CMcb3a8WLw+fTath8xvdrRZkSttleP3tMMB/Oi8Rn4FzWRJ3knR7aVVZe9qtHMWtLfAbOpZWSgL0AACAASURBVPmQH3kjxJPK5UuTkXmfLQfO80pb09whunjhfEI7a4/fxC8+Y0tUNFt37mHiFzkfv2+/noRf27Yc/ucUfm3b8u3X2uNn7+DA199OY+Q7/3vk9TY2Nvi1aatf7LGwkIawuTPooEhV1UO6S2MNVVXtoqqqQbo/rlyxjJDQzoRt3oS/fyAODg7Y29vj7x/I5iwLcz2wbu1q+vTtD0Cfvv1Zu+ZP7fY1q+nVpx+KotCkaVOSk28SHx8PQEjnLqxascwQ4T+V5PcoyU/yM5ZVK5YTHNKZ8M2baOsfoM+trX8AYTnmtobeutx69+3P2jWrddtX07t3XxRFwbdJU5JvZskttDMrTXTsXvV3Z23UKQJ9ahARc56klDRu3k4jIuY8Qb41sr2+pqsDUYcvAhC5/7x+cUdV1fZKs7RQsCtmTXqGhpS79wBYu/MkPfxNs9bWzyt1xy9sE22yHL82/gGEbc5+/NavXUPvPrrj16c/63THz8nJCS9vH6ytrbPtExLahVUrlhs2EWE0hX5F6/T0dC6cP0eVqlW1fbEqZemL5erK5cvZ+2Jdu3pV33OpQoUKXLt6Fci5r9ZlXV8tTy9vdkbtMGQqOZL8JD/JzzT5paencz5rbo/HllNu1x7L7dqD3C7n+m/j6eXNrqgoQ6aSI2srC6o623PxanIOPcxu5dir7PiFBEJ0DV9f8qunX836923HuZuWwfnfRnFq5VtM/TmapJQ0AI6dT8CrrvF73GU9fvFx2b8343PomXjt2lUq6I5f+SzH70nqu7kTE7Ov4AI3Arn5LHeFflCUmJhI6WdYdl1RFH1H5CdxcnIiPv5yvt8nvyS/J5P8tCS/gpeYmEiZ0uaZG0C50sVJvp32n/YZMnkdgzt7s/OHgZSwsyE9QwOATz1nNPdVqnebRr1eM3n7laZUraj9t7t/XyUjQ0MJO5sCz+FJricmUtoIx8/S0hIbGxv9SvSicCv0gyI7OzvS0rQntrOzC7GXsvTFio3F2Tl7Xyyn8uX1pev4+HgcnZwe7v9YXy1nXR+qtLQ0bO3sDJZHbiQ/yU/yM01+dnZ2pN3LktvjseWUm9NjuTk+yM05138bUx271HuZ2Npomxpk72FWKsdeZacuXSdk7HJaDPmJnyOPcf6ydkZEd393Nu89S6bmPgk377L72CW86jysDtnYWJGWbtzJyLZ2dtzTHb+KLtm/Nyvm0DPRyak8V3TH70qW4/c09+7dw9Y2+xys55aUinJV6AdF9vb2aDQa0tLSCAxqR3j4ZpKSkkhKSiI8fDOBQe2y7dMpOJSlursPli5ZRHBIZ+32kFCWL12MqqrsiY6mVKnS+lL46VOnTNKDSvKT/CQ/0+SXNbeAoHZEhIfpc4sIDyMgp9xCQvR3Ni1bsojgEG1fvk7BoSxbtgRVVdm7J5pSpbPkdvoU9U1w7G7eTsPSwoJi1paE7TtLgHd1ypSwpUwJWwK8qxO272y2fRzLaDs1KQqM69uSeWu1d9HFXk3Gz6MqoJ1b5FvPhZO6vmkOpey4nnyXTM194ySm88jxC2xHZJbjFxkeRkBg9uPXMTiEZUt1x2/pIjqFPL2v4vXr1ylbtlyO841E4VPoB0UAAQFB7NoZhYODA+9/8BEtm/nQspkPH4z/GAcHBwCGDX6DmP3aFiJjxo4jMjwM93q12BIRzpix2jUl23foSLVq1XGrW5MRQwcxTdf/BmDbti2079DJ+Mkh+YHkB5KfKfLzDwjU5zbugw9p1dyXVs19eX/8Rw9zG/IGMTHa3P737jgiI8JpUL82WyIj+N8juVXDvV4tRgwdzNQZD3tobd+6hQ4dOho9N4Dw/edo3qAySSlpTFyyg6g5rxM153W+XLxDPyfo+zGd8KytHcB193fjyOJhHF40jPjEFBZv+P/27js+qir94/jnIQUQkN6DAtJBSkJALLQAglQRUQQL9o76U5ef4vqTtbCWFZVdXXVBQETsortLFXFpUgIoSi9SpIQqSAmE8/tjLtlQQgkzc5mZ75vXvDJz5849z/OaCXPy3HPPWQjAW1/MpXDBBOYNu4tpb97KyHELWbQqsFBui4YXMm6WPwv+prVpy0zv/fvDEwNocWkTWlzahP453r/77r6ddO/9e+Sx/nwzaRIN6tRgyuTJPPJY4P3bvGkTNapWYshrr/LioOeoUbUSv/0WGIP13dQptPfp/cuLQBFH8xTlJmRrn+VFXtc+m5+ezhuvvcrQ4SNDEFVAm1bN+fizLylevPipdw4y5Xf2lF/oREJ+ef1/bv78dIa8Nph/vDciT68/HW1bt+CjT784q/cur2ufNaxejgd6NOW2F77Mc9un8uEzPRjwzjesWL89z8fI69pnC+anM+T1wbw7LHTvX6+e1zDw2ReoXqNGnl4f7rXP6lzcyI0YOzUsbaVWLaq1z/zQKDmZFi1bkZWVFZLjZ2Rk8OBDj/jyhQPK72wpv9CK5vwaNUqmecuWIc3tgX4P+/beLVi+iakL1pAvRJMrJsTnY+z0pWfVITobDRsl07xF6N6/zMxMOnfpmucOkS/CNEdRpM5TFBWVIhGRkzmX/p8LhbxWiiJFXitFkSDslaL6jdzIMFWKGleJvEpRvN8BiIiISPhEaBEnLKLi9JmIiIjI2VKnSERERASdPhMREYktOn+WK1WKRERERFClSEREJIZE7sSK4aBKkYiIiPjCzNaY2Y9mtsDM5nrbSpjZRDNb7v0s7m03M3vdzFaY2Q9mlpzjODd7+y83s5vzGo86RSIiIjHkHJy8sZVzrmGOOY36A5Odc9WByd5jgA5Ade92J/BmIB8rATwNNAWaAE8f6UidKXWKRERE5FzSFRju3R8OdMuxfYQLmAUUM7PywJXAROfcdufcDmAi0D4vDatTJCIiEiMsjDeglJnNzXG78wQhOWCCmc3L8XxZ59xG7/4moKx3vyKwLsdr13vbctt+xjTQWkREREJh62ks83G5c26DmZUBJprZkpxPOuecmYVtnR5VikRERGJJGEtFp+Kc2+D93AJ8TmBM0GbvtBjezy3e7huASjlenuRty237GVOnSERERMLOzAqZWZEj94F2wCJgLHDkCrKbgS+9+2OBm7yr0C4Bdnmn2cYD7cysuDfAup237Yzp9JmIiEgMOYfmKSoLfG6BS9XigQ+cc+PMbA7wkZndBvwC9PT2/xdwFbAC2Av0BXDObTezPwFzvP0GOue25yUgdYpEJOrZGV4fHGm2jn/S7xBCqlS3N/wOIWQOrNhy6p2ilHNuFdDgBNu3AWkn2O6A+3I51lBg6NnGpE6RiIhIDInyvxHOisYUiYiIiKBKkYiISExRoSh3qhSJiIiIoEqRiIhI7DiDOYRikSpFIiIiIqhTJCIiIgLo9JmIiEhMOYcmbzznqFIkIiIigipFIiIiMcPQ5I0no0qRiIiICKoUiYiIxBQVinKnSpGIiIgIqhSJiIjEFpWKcqVKkYiIiAiqFImIiMQUzVOUO1WKRERERIjRTtGE8eOoX7cmdWtV46UXB/kdTtDt3LmTXtf1oEG9WjS8uDazZs70O6SgWbduHVe2aUWj+nVIblCXIa+/5ndIQRXtn81oy++u22/lggplSGlY77jnBr/6CgUTjK1bt/oQWd7t37+fFpc15ZLGDWncsB7PDnwagLtu70vdGlVpltqIZqmN+GHhAgB27drFtVd3yd5/5PBhfoYPQFKpwox7oTvpb/Vh3pu9ua9rAwCev/UyFvy9D7P/egNjBnSkaKFEAEoUKcC4F7qT8endvHpPi6OONX5Qdxa+fSOz3ujFrDd6UbpoQQBevOOK7G0/vHMjGz+6K7xJngWz8NwiUcydPsvKyuKhB+/jn/+eSMWkJC6/JJVOnbpQu04dv0MLmkcf7ke7du0ZPeYTMjMz2bt3r98hBU18fDyDXnyFRsnJ7N69m0ubppDWpm1UvH/R/tmMxvxuvPkW7r73fm6/9aajtq9bt47JEydQ6YILfIos7/Lnz88/x0+mcOHCHDx4kLatrqDdlR0AeHbQi1zdvcdR+7/91l+pVbs2H38+loyMDJIvrsV1vXqTmJjoR/gAHMo6TP93/8OClRkULpjAjNevZ3L6OibPX8dT780g67Dj2b6X8ljPxgwYNoP9mYcYOHImdSqXpO6FJY87Xt+XxpO+fMtR2x5/5z/Z9+/pXJ8GF5UOeV4SejFXKZozezYXXVSNKlWrkpiYyLXXXc/XX33pd1hBs2vXLqZN+45bbr0NgMTERIoVK+ZzVMFTvnx5GiUnA1CkSBFq1arNr79u8Dmq4Ij2z2Y05nf5Fc0pUaLEcdsff/RhnnvhRSwC/1w2MwoXLgzAwYMHOXjw4EnzMDN2796Nc47f9+yhePESxMf7+/f2ph17WbAyA4A9+w6yZO0OKpQqxOT5a8k67ACYvWQTFUsF8tx74BAzft7I/sysPLXXs0VNPpq6LDjBh4GF6RaJYq5T9OuvG0hKqpT9uGLFJDZsiI4vVYA1q1dTqlRp7rytL5c0bsQ9d97O77//7ndYIfHLmjUsWDCf1CZN/Q4lKKL9sxnt+R3x1dgvqVChIvUbNPA7lDzLysqiWWojqiSVpXVam+zfsYF/HEDTlAb84dGHOXDgAAB33XM/S5cuoVrlijRNqc+LrwwmX75z56vlgjJFaHhRaeYs2XzU9pva1WX83F9O6xh/f7gNs97oRf9eqSc8/oXlzufbheuDEq/469z55EpQHDp0iAXz07njrnuYNXc+5xUqxMtRMHbjWHv27KFXz2t46ZXBnH/++X6HIwLA3r17eXHQ8/zx/wb6HcpZiYuLY+ac+SxdtY65c+fw00+LeOZPz5P+42K+mzGbHTt28JeX/wzApInjqV+/ASvWbGDG7Pn8z0MP8Ntvv/mcQUChAgmMfrIjj739Hbv3ZWZvf/y6xmRlHebDKUtPeYy+L40n9d4PaPP4J1xWtyI3tK511PPXNq/BF9NWcNirQEUElYpyFXOdogoVKrJ+/brsxxs2rKdixYo+RhRcFZOSqJiURJOmgb/srr6mBwvmp/scVXAdPHiQXj2v4bpevel2dXe/wwmaaP9sRnt+AKtWruSXNatpktKAmtUqs2H9epo1SWbTpk1+h5YnxYoVo3mLlkwaP45y5ctjZuTPn58+N93CvDlzAHh/+Ht06dYdM+OiatW4sEoVli1d4nPkEB+Xj9FPXsWYb5fy5YyV2dv7tKnNVU2qcMtL40/rOL9uC1Ta9+w7yJhvl5Jas+xRz/doUYOPpp66cyWRIeY6RY1TU1mxYjlrVq8mMzOTj8d8SMdOXfwOK2jKlStHUlIlli0N/JJ++81katWO3IGsx3LOcfcdt1GzVm36PfyI3+EEVbR/NqM9P4B6F1/M2l+3sHTFGpauWEPFpCRmzk6nXLlyfod22jIyMti5cycA+/bt45vJk6hRsxabNm4EAr+DX4/9gjp16wKQVKkS306ZDMDmzZtZvmwplatU9Sf4HN56KI2l67bz+ufzs7e1TbmQR3qk0OOZr9l34NApjxGXzyh5fgEg0Mm6qkkVfvplW/bzNZKKU7xwfmYtjsxOrxwvZKPhzKwmMCbHpqrAH51zg0PV5umIj4/n1deG0LnjlWRlZXHzLbdm/3JHi78MfoO+N/UmMzOTylWr8va7/l8iGywzpk/ng1EjqVfvYpqmNATgmWefp32Hq3yO7OxF+2czGvO7qU8v/jP1W7Zu3cpFlZN46o/PZF/kEKk2b9rInbfdQlZWFocPH6Z7j2vp0LETV12ZxtaMDJxz1G/QkNeGvAlA/yee4q7b+9IkuT7OOf703CBKlSrlaw6X1ilP77Ta/Lh6K7Pe6AXA08Nn8MrdLcifEMfXz3UDYPbSTTw4ZAoAS4bdQpHzEkmMz0fnZhfR6ckvWLvlN8b+qRsJ8fmIy2dMWbCOoeN+ym7n2hY1+DiCBljDkTNbEXpuKwzMudCfBzWzOGAD0NQ5l+vItpSUxm7693NDHo+ISDTJiqTxLHlQqtsbfocQMgemv8zhXWvD1ku5uEGy+2zC9LC0VaPcefOcc43D0liQhOu6yTRg5ck6RCIiIhJiETyxYjiEa0zR9cDoEz1hZnea2Vwzm5uxNSNM4YiIiIgcLeSdIjNLBLoAH5/oeefc2865xs65xqVLaUZQERGRUNIV+bkLR6WoA5DunNt8yj1FREREfBKOTlEvcjl1Fiz79u2jbesWZGVl8f6I4dSrXZ16tavz/ojhJ9x/+/btdGzflnq1q9OxfVt27NgBBC41feShB6lbqxqpjeozPz0wv09GRgZdOrYPZQonpfyOpvyUX7hEc24QyO/KNi3Jyspi1MjhNKhTgwZ1ajBqZO75de7QjgZ1atC5Q7vs/MaMHkXTlAY0Sa5PWovL+PGHhQBkZmbSLq0Fhw6d+vL3UCiQGMeEP19DvnxG77Ra/PjOTfz4zk30Tqt1wv0vrlKKb1+5ljl/u4FPnu5MkYKB9dvi4/LxziNtmfO3G5j/Vh8e7RkYO5wQn4+JL15DXL4Iq4uoVJSrkHaKzKwQ0Bb4LJTtDB82lK7durNr1y6ee/YZvpv+Pf+ZMZvnnn0m+5c2p5dfHETL1mksWryclq3Tsmd8Hj/u36xcsZxFi5cz5M23efD+ewAoXbo05cqVZ8b08IzYP5byO5ryU37hEs25AYx4byhdul7Nrl27eOHZgUyZNotvp3/PC88OPGF+f3lpEC1bt2bhz8to2bo1f3kpkN+FlaswbtK3zE7/gT/87wAeuDewYnxiYiItW7Xm04/HHHescLi5XV2+nLGCoucl8uQNTWn+8BiueHgMT97QlGKF8x+3/5v90hgwbAap937A2BkrebhHYJ3Fa66oRv6EOFLv/YBL+33I7R3qcUGZIhw8dJgpC9ZxbfMa4U5NQiSknSLn3O/OuZLOuV2hbOfD0aPo3KUrEyeMJy2tLSVKlKB48eKkpbVlwvhxx+3/9Vdf0ufGmwHoc+PNfDX2i8D2sV9yQ5+bMDOaXnIJu3btZKM3YVnnrt0YM3pUKNPIlfI7mvJTfuESzbkBfPThB3Tq3JVJE8fTKq1Ndn6t0towccLx+f3zq7H07hPIr3efm/l6bGBB30uaXUrx4sUBSG16CRs2/HcdsM5dujFm9AdhyOZ417esyVczV9E25UImz1/Ljj0H2LnnAJPnr6VdyoXH7V+tYjGmLQqsx/fN/LV0u6waAM7BeQUSiMtnFEyMJ/NQFrv3BpYN+WrmKq5rVTN8SZ01C9u/SBTxM1pnZmayZvUqLqxcObDgZKUcC04mJZ1wBfUtmzdTvnx5IDAD9JbNgeFOJ1qw8ldvwcrklMZMn/afUKZyQspP+Sk/f/KL5twgkN9qL7+NG47Pb+MJFuvdsmUz5bz8ypYrx5Ytxw8VHTHsH7S78r+nBOvUrce8eXNCkMHJJcTno3K581m7ZTcVShZi/dY92c9t2LaHCiULHfeaxb9sp3OzwGzc3a+oTlKpwgB8Nm0Fe/cfZPWo21k2vC+DP01nx57Agrg//bKNlBpljzuWRKaI7xRt3bqVosWK5fn1ZoadxqQNZcqUYePGX/PcTl4pv5NTfgHKL/iiOTeAbVu3UrRocPOb+u0Uhr83lIHP/Tl7W1xcHImJiezevTvPbeVFqfMLsuv3A2f0mrsGT+LOjvWZ/tr1FC6YQOahLABSa5Yl6/Bhqvb5B7X7vke/7slULhdYiPrwYcfBg1kULpgQ9BxCxSw8t0gU8Z2iggULsn//fsBbcHJdjgUn16+nQoXjF5wsU7Zsdul648aNlC5T5r+vP2bBygregpX79++nQMGCIcsjN8pP+Sk/f/KL5twAChQsyIEDgfzKVzw+v/InWKy3TJmy2Wugbdq4kdKly2Q/t+jHH7j/7jsY88kXlCxZ8qjXHThwgAIFCoQijVztyzxEgcTA/MS/bvs9u+oDULFk4eyFXnNatn4HnQd8wWX9PuSjqctYvTEw8qNny5pMmLeWQ1mHydi1j5k//0pK9f9WhxIT4tifmRXijCQcIr5TVLx4cbKysti/fz9t213JpEkT2LFjBzt27GDSpAm0bXflca/p2KkL73tXV7w/cjidOncNbO/chQ/eH4Fzju9nzeL884tml8KXL1tG3br1wpeYR/kpP+XnT37RnBscnV+btlfyzaSJ2fl9M2kibdoen99VnToz6v1AfqPeH07HzoEFfdetXcsNPa/hnWEjqF7j6EHH27Zto2TJUiQkhLeSsnPPAeLyGfkT4pg47xfaJF9AscL5KVY4P22SL2DivOMXWChdNNA5NYP+16fyzr8WAbB+y25aNkgC4Lz88TSpVZ6l67YDUKJIAbb9to9DWYfDlNnZCdeFZxFaKIr8ThFAmzbtmDF9GiVKlOB/n3iKy5ulcnmzVJ548o+UKFECgHvuvJ15cwPrqj36eH++mTSRerWrM2XyJB59vD8A7TtcRZUqValbqxr33X0Hr73xt+w2pk6dQvsOHcOfHMoPlB8oPz/yi+bcANLatGWml98fnhhAi0ub0OLSJvR/8qns/O67+3bS5wXye+Sx/nwzaRIN6tRgyuTJPPJYIL9Bzw9k+/ZtPPzgfTRLbcQVzVKz2/hu6hTfFmyelL6WS+tWYMeeA7wweg7TBl/HtMHX8fzo2dljgv7WL43k6oGKV8+WNfjhnRtZ+PaNbNz2OyMm/gzAW1//QOECCcx7szfTXruekRN/ZtGabQC0qJ/EuDlrfMlPgi8sC8KerrwuCDs/PZ03XnuVocNHhiCqgDatmvPxZ19mX2ERTsrv7Cm/0Inm/CIlt7wuCLtgfjpDXh/Mu8NG5LntU+nV8xoGPvvCcRWkM5HXBWEbXlSaB65uxG0vT8hz26fy4ZNXMeC9GazYsDNPrw/3grD1G6a4sZPDMwVElVIFI25B2KioFDVKTqZFy1ZkZYXmnG5GRgYPPvSIL184oPzOlvILrWjOL5pzA2jYKJnmLVqGLL/MzEw6d+l6Vh2is7FgZQZTF64nX4gmV0yIz8fYmavy3CGSc09UVIpERGJZXitFkSKvlaJIoErRuSXe7wBEREQkfCJ1YsVwiIrTZyIiIiJnS5UiERGRGBKpEyuGgypFIiIiIqhSJCIiElNUKMqdKkUiIiIiqFIkIiISOyJ4sdZwUKVIREREBFWKREREYoxKRblRpUhEREQEVYpERERihqExRSejSpGIiIgIqhSJiIjEFBWKcqdKkYiIiAjnWKUoPX3e1oIJ9kuYmisFbA1TW35QfpFN+UWuaM4NlF+wXRjGtgCNKTqZc6pT5JwrHa62zGyuc65xuNoLN+UX2ZRf5Irm3ED5SXTT6TMRERERzrFKkYiIiISWaah1rmK5UvS23wGEmPKLbMovckVzbqD8JIqZc87vGERERCQMGjRKceOnzgpLW+WLJs6LtPFZsVwpEhEREcmmMUUiIiIxRCOKcheTlSIza29mS81shZn19zueYDKzoWa2xcwW+R1LKJhZJTObYmY/m9lPZtbP75iCxcwKmNlsM1vo5faM3zGFgpnFmdl8M/va71iCzczWmNmPZrbAzOb6HU+wmVkxM/vEzJaY2WIza+Z3TMFiZjW99+3I7Tcze8jvuCS8Yq5SZGZxwF+BtsB6YI6ZjXXO/exvZEHzHjAEGOFzHKFyCPgf51y6mRUB5pnZxCh5/w4ArZ1ze8wsAZhmZv92zoVnAED49AMWA+f7HUiItHLORevkhq8B45xzPcwsETjP74CCxTm3FGgI2d8TG4DPfQ0qBMw0eePJxGKlqAmwwjm3yjmXCXwIdPU5pqBxzn0HbPc7jlBxzm10zqV793cT+HKt6G9UweEC9ngPE7xbVF0JYWZJQEfgXb9jkTNjZkWB5sA/AJxzmc65nf5GFTJpwErnXLhWWJBzRCx2iioC63I8Xk+UfKnGGjOrDDQCvvc3kuDxTi0tALYAE51zUZObZzDwOHDY70BCxAETzGyemd3pdzBBVgXIAIZ5pz/fNbNCfgcVItcDo/0OIlQsTP8iUSx2iiQKmFlh4FPgIefcb37HEyzOuSznXEMgCWhiZvX8jilYzKwTsMU5N8/vWELocudcMtABuM/MmvsdUBDFA8nAm865RsDvQFSNyQTwTgt2AT72OxYJv1jsFG0AKuV4nORtkwjhjbf5FBjlnPvM73hCwTstMQVo73csQXQZ0MXM1hA4bd3azN73N6Tgcs5t8H5uITAepYm/EQXVemB9jurlJwQ6SdGmA5DunNvsdyAhY2G6RaBY7BTNAaqbWRXvL4LrgbE+xySnycyMwJiGxc65v/gdTzCZWWkzK+bdL0jgYoAl/kYVPM65/3XOJTnnKhP4vfvGOdfH57CCxswKeYP/8U4rtQOi5ipQ59wmYJ2Z1fQ2pQHRcIHDsXoRxafO5ORi7uoz59whM7sfGA/EAUOdcz/5HFbQmNlooCVQyszWA0875/7hb1RBdRlwI/CjN/YG4Ann3L98jClYygPDvStf8gEfOeei7rL1KFYW+DzQbyce+MA5N87fkILuAWCU9wflKqCvz/EEldeZbQvc5XcsoRShRZyw0DIfIiIiMaJhcoqb9F14rt8oXSQh4pb5iLlKkYiISCzTPEW5i8UxRSIiIiLHUadIREREBJ0+ExERiSGRO7FiOKhSJCIiIoI6RSIRzcxaHllt3sy6mFmuMwx7K5zfm4c2/s/MHj3d7cfs856Z9TiDtiqbWdTM7SNyrjH+uyhsqG+RSJ0ikXOQN1fRGXHOjXXODTrJLsWAM+4UiYjECnWKRMLIq4QsMbNRZrbYzD4xs/O859aY2Z/NLB241szamdlMM0s3s4+99d4ws/beMdKB7jmOfYuZDfHulzWzz81soXe7FBgEXGRmC8zsJW+/x8xsjpn9YGbP5DjWk2a2zMymATU5BTO7wzvOQjP79EhOnjZmNtc7Xidv/zgzeylH21E9WZ6IRAZ1ikTCrybwzTt8tgAAA+NJREFUN+dcbeA3jq7ebPMWFJ0EDADaeI/nAo+YWQHgHaAzkAKUy6WN14GpzrkGBNan+onA4p0rnXMNnXOPmVk7oDqB9bkaAilm1tzMUggsw9EQuApIPY2cPnPOpXrtLQZuy/FcZa+NjsBbXg63Abucc6ne8e8wsyqn0Y6ISMjo6jOR8FvnnJvu3X8feBB42Xs8xvt5CVAHmO4tG5EIzARqAaudc8sBvAVV7zxBG62BmwCcc1nALjMrfsw+7bzbfO9xYQKdpCLA5865vV4bp7M2YD0ze5bAKbrCBJbROeIj59xhYLmZrfJyaAfUzzHeqKjX9rLTaEtEzkKkjvcJB3WKRMLv2LV1cj7+3ftpwETnXK+cO5pZwyDGYcALzrm/H9PGQ3k41ntAN+fcQjO7hcD6e0ecKF8DHnDO5ew8YWaV89C2iEhQ6PSZSPhdYGbNvPs3ANNOsM8s4DIzqwbZK7DXAJYAlc3sIm+/Xid4LcBk4B7vtXFmVhTYTaAKdMR44NYcY5UqmlkZ4Dugm5kV9FZ973waORUBNppZAtD7mOeuNbN8XsxVgaVe2/d4+2NmNbzFOEUkxCxM/yKROkUi4bcUuM/MFgPFgTeP3cE5lwHcAow2sx/wTp055/YTOF32T2+g9ZZc2ugHtDKzH4F5QB3n3DYCp+MWmdlLzrkJwAfATG+/T4Aizrl0AqfxFgL/BuacRk5PAd8D0wl03HJaC8z2jnW3l8O7wM9AuncJ/t9R5VpEfGbOHVvZFpFQ8U4Pfe2cq+dzKCISgxqlNHZTp88OS1tFC8bNc841DktjQaJKkYiIiAgqV4uElXNuDaAqkYj4wrybnJgqRSIiIiKoUiQiIhJbVCrKlSpFIiIiIqhTJCIiIgLo9JmIiEhMidSJFcNBlSIRERERVCkSERGJKVoQNneqFImIiIigSpGIiEhMUaEod6oUiYiIiKBKkYiISGxRqShXqhSJiIiIoEqRiIhITNE8RblTpUhERER8YWbtzWypma0ws/5+x6NKkYiISIwwzp15iswsDvgr0BZYD8wxs7HOuZ/9ikmVIhEREfFDE2CFc26Vcy4T+BDo6mdAqhSJiIjEiPT0eeMLJlipMDVXwMzm5nj8tnPu7RyPKwLrcjxeDzQNS2S5UKdIREQkRjjn2vsdw7lMp89ERETEDxuASjkeJ3nbfKNOkYiIiPhhDlDdzKqYWSJwPTDWz4B0+kxERETCzjl3yMzuB8YDccBQ59xPfsZkzjk/2xcRERE5J+j0mYiIiAjqFImIiIgA6hSJiIiIAOoUiYiIiADqFImIiIgA6hSJiIiIAOoUiYiIiADw/5wNraDx02T7AAAAAElFTkSuQmCC\n", 741 | "text/plain": [ 742 | "
" 743 | ] 744 | }, 745 | "metadata": { 746 | "needs_background": "light" 747 | }, 748 | "output_type": "display_data" 749 | } 750 | ], 751 | "source": [ 752 | "conf_matrix = confusion_matrix(y_true = y_test, y_pred = results2)\n", 753 | "binary1 = conf_matrix \n", 754 | "\n", 755 | "fig, ax = plot_confusion_matrix(conf_mat=binary1,figsize=(10, 10),\n", 756 | " show_absolute=True,\n", 757 | " show_normed=True,\n", 758 | " colorbar=True,\n", 759 | " )\n", 760 | "plt.title('Confusion Matrix(Test Data)')\n", 761 | "plt.show()" 762 | ] 763 | } 764 | ], 765 | "metadata": { 766 | "colab": { 767 | "collapsed_sections": [], 768 | "name": "induction-motor.ipynb", 769 | "provenance": [] 770 | }, 771 | "kernelspec": { 772 | "display_name": "Python 3", 773 | "language": "python", 774 | "name": "python3" 775 | }, 776 | "language_info": { 777 | "codemirror_mode": { 778 | "name": "ipython", 779 | "version": 3 780 | }, 781 | "file_extension": ".py", 782 | "mimetype": "text/x-python", 783 | "name": "python", 784 | "nbconvert_exporter": "python", 785 | "pygments_lexer": "ipython3", 786 | "version": "3.8.5" 787 | } 788 | }, 789 | "nbformat": 4, 790 | "nbformat_minor": 1 791 | } 792 | --------------------------------------------------------------------------------