├── Artificial Neural Network (ANN) └── README.md ├── Convolution Neural Network (CNN) ├── README.md └── Cat and Dog Classification │ ├── readme_resources │ ├── architecture.jpg │ ├── model_loss.png │ ├── model_accuracy.png │ ├── model_summary.PNG │ └── data_augmentation.PNG │ ├── README.md │ └── Cat and Dog Classifier.ipynb ├── readme-resources └── deep-learning-banner.png └── README.md /Artificial Neural Network (ANN)/README.md: -------------------------------------------------------------------------------- 1 | # Artificial Neural Network (ANN) 2 | 3 | This repository consists of all my ANN projects. 4 | -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/README.md: -------------------------------------------------------------------------------- 1 | # Convolution Neural Network (CNN) 2 | 3 | This repository consists of all my CNN projects. -------------------------------------------------------------------------------- /readme-resources/deep-learning-banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anujvyas/Deep-Learning-Projects/HEAD/readme-resources/deep-learning-banner.png -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/architecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anujvyas/Deep-Learning-Projects/HEAD/Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/architecture.jpg -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/model_loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anujvyas/Deep-Learning-Projects/HEAD/Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/model_loss.png -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/model_accuracy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anujvyas/Deep-Learning-Projects/HEAD/Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/model_accuracy.png -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/model_summary.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anujvyas/Deep-Learning-Projects/HEAD/Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/model_summary.PNG -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/data_augmentation.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/anujvyas/Deep-Learning-Projects/HEAD/Convolution Neural Network (CNN)/Cat and Dog Classification/readme_resources/data_augmentation.PNG -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Deep Learning Projects 2 | ![Dataset](https://img.shields.io/badge/Dataset-Kaggle-blue.svg) ![Python 3.6](https://img.shields.io/badge/Python-3.6-brightgreen.svg) ![Framework](https://img.shields.io/badge/Framework-Keras/TensorFlow-orange.svg) 3 | 4 | ![DL](readme-resources/deep-learning-banner.png) 5 | 6 | ## Why this repository? 7 | • The main purpose of making this repository is to keep all my Deep Learning projects at one place, hence keeping my GitHub clean!
8 | • It looks good, isn't it? 9 | 10 | ## Overview 11 | • This repository consists of all my Deep Learning projects.
12 | • Link to the datasets are provided in each of the folders above, and as the solution to the problem statements. 13 | 14 | **Do ⭐ this repository, if it helped you in anyway.** 15 | -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/README.md: -------------------------------------------------------------------------------- 1 | # Cat vs Dog Image Classification 2 | [![Kaggle](https://img.shields.io/badge/Dataset-Kaggle-blue.svg)](https://www.kaggle.com/tongpython/cat-and-dog) ![Python 3.6](https://img.shields.io/badge/Python-3.6-brightgreen.svg) ![TensorFlow](https://img.shields.io/badge/Library-TensorFlow-orange.svg) 3 | 4 | ### Problem statement: 5 | Implement an algorithm to classify whether images contain either a dog or a cat. 6 | 7 | ### Dataset: 8 | The total number of images available for training the model is 8,000 and for testing the model is 2,000 images.
9 | _• Dataset Link: https://www.kaggle.com/tongpython/cat-and-dog_ 10 | 11 | ### Dependencies: 12 | * Google Colaboratory 13 | * Keras 14 | * Tensorflow - 2.2.0 15 | * Python - 3.6 16 | * Scikit-Learn 17 | * Pandas 18 | * Numpy 19 | * Matplotlib 20 | * Seaborn 21 | 22 | ### Architecture: 23 | 24 | ![image](readme_resources/architecture.jpg) 25 | 26 | ### Data Augmentation 27 | Using some Data Augmentation techniques for more data and Better results. 28 | * Shearing of images 29 | * Random zoom 30 | * Horizontal flips 31 | 32 | ![image](readme_resources/data_augmentation.PNG) 33 | 34 | ### Network Parameter: 35 | * Rectifier Linear Unit (ReLU) - Hidden Layers 36 | * Sigmoid - Output Layer 37 | * Adam optimizer 38 | * Loss: Binary CrossEntropy 39 | 40 | ![image](readme_resources/model_summary.PNG) 41 | 42 | ### Visualization of Model Accuracy: 43 | * Training Set Accuracy: 91.70% 44 | * Test Set Accuracy: 77.25% 45 | 46 | ![image](readme_resources/model_accuracy.png) 47 | 48 | ### Visualization of Model Loss: 49 | * Training Set Loss: 0.2037 50 | * Test Set Loss: 0.5736 51 | 52 | ![image](readme_resources/model_loss.png) 53 | 54 | ### Future Scope: 55 | Increase the accuracy of the model to more than 95.00% using hyper parameter tuning. 56 | -------------------------------------------------------------------------------- /Convolution Neural Network (CNN)/Cat and Dog Classification/Cat and Dog Classifier.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "nbformat": 4, 3 | "nbformat_minor": 0, 4 | "metadata": { 5 | "colab": { 6 | "name": "Cats vs. Dogs Classifier.ipynb", 7 | "provenance": [], 8 | "collapsed_sections": [] 9 | }, 10 | "kernelspec": { 11 | "name": "python3", 12 | "display_name": "Python 3" 13 | }, 14 | "accelerator": "TPU" 15 | }, 16 | "cells": [ 17 | { 18 | "cell_type": "markdown", 19 | "metadata": { 20 | "id": "FhGO1j6o3NAR", 21 | "colab_type": "text" 22 | }, 23 | "source": [ 24 | "# **Cats and Dogs Classification**\n", 25 | "*Classifying whether a given image is of a cat or a dog using Convolution Neural Network (CNN)*\n", 26 | "\n", 27 | "*Dataset Link: https://www.kaggle.com/tongpython/cat-and-dog*" 28 | ] 29 | }, 30 | { 31 | "cell_type": "code", 32 | "metadata": { 33 | "id": "CWlHepHI0C_v", 34 | "colab_type": "code", 35 | "outputId": "6bfe303f-6363-49f2-c038-663e1faa6784", 36 | "colab": { 37 | "base_uri": "https://localhost:8080/", 38 | "height": 129 39 | } 40 | }, 41 | "source": [ 42 | "# Connecting Google Colab with Google Drive\n", 43 | "from google.colab import drive\n", 44 | "drive.mount('/content/drive/')" 45 | ], 46 | "execution_count": 1, 47 | "outputs": [ 48 | { 49 | "output_type": "stream", 50 | "text": [ 51 | "Go to this URL in a browser: https://accounts.google.com/o/oauth2/auth?client_id=947318989803-6bn6qk8qdgf4n4g3pfee6491hc0brc4i.apps.googleusercontent.com&redirect_uri=urn%3aietf%3awg%3aoauth%3a2.0%3aoob&response_type=code&scope=email%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdocs.test%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdrive%20https%3a%2f%2fwww.googleapis.com%2fauth%2fdrive.photos.readonly%20https%3a%2f%2fwww.googleapis.com%2fauth%2fpeopleapi.readonly\n", 52 | "\n", 53 | "Enter your authorization code:\n", 54 | "··········\n", 55 | "Mounted at /content/drive/\n" 56 | ], 57 | "name": "stdout" 58 | } 59 | ] 60 | }, 61 | { 62 | "cell_type": "markdown", 63 | "metadata": { 64 | "id": "oxQxCBWyoGPE", 65 | "colab_type": "text" 66 | }, 67 | "source": [ 68 | "## Part 1 - Data Preprocessing" 69 | ] 70 | }, 71 | { 72 | "cell_type": "code", 73 | "metadata": { 74 | "id": "cCl2fxSle5bd", 75 | "colab_type": "code", 76 | "outputId": "c9b4e4c7-c926-4d3b-ed3d-e3ce0e92ecc5", 77 | "colab": { 78 | "base_uri": "https://localhost:8080/", 79 | "height": 35 80 | } 81 | }, 82 | "source": [ 83 | "# Importing essential libraries\n", 84 | "from keras.preprocessing.image import ImageDataGenerator" 85 | ], 86 | "execution_count": 2, 87 | "outputs": [ 88 | { 89 | "output_type": "stream", 90 | "text": [ 91 | "Using TensorFlow backend.\n" 92 | ], 93 | "name": "stderr" 94 | } 95 | ] 96 | }, 97 | { 98 | "cell_type": "code", 99 | "metadata": { 100 | "id": "ZJxhZhkNWsqq", 101 | "colab_type": "code", 102 | "outputId": "082c19fb-e4af-4051-f58f-4cd5965c6e80", 103 | "colab": { 104 | "base_uri": "https://localhost:8080/", 105 | "height": 35 106 | } 107 | }, 108 | "source": [ 109 | "# Preprocessing the Training set\n", 110 | "\n", 111 | "# Data Augmentation\n", 112 | "train_datagen = ImageDataGenerator(rescale=1./255,\n", 113 | " shear_range=0.2,\n", 114 | " zoom_range=0.2,\n", 115 | " horizontal_flip=True)\n", 116 | "\n", 117 | "# Importing Training set\n", 118 | "training_set = train_datagen.flow_from_directory('/content/drive/My Drive/Colab Notebooks/Datasets/cats vs dogs - dataset/training_set',\n", 119 | " target_size=(64, 64),\n", 120 | " batch_size=32,\n", 121 | " class_mode='binary')" 122 | ], 123 | "execution_count": 3, 124 | "outputs": [ 125 | { 126 | "output_type": "stream", 127 | "text": [ 128 | "Found 8000 images belonging to 2 classes.\n" 129 | ], 130 | "name": "stdout" 131 | } 132 | ] 133 | }, 134 | { 135 | "cell_type": "code", 136 | "metadata": { 137 | "id": "L2lFLWIrXqQS", 138 | "colab_type": "code", 139 | "outputId": "b6960323-73a5-4308-dc7c-5dcb94812f22", 140 | "colab": { 141 | "base_uri": "https://localhost:8080/", 142 | "height": 35 143 | } 144 | }, 145 | "source": [ 146 | "# Preprocessing the Test set\n", 147 | "\n", 148 | "# Feature Scaling\n", 149 | "test_datagen = ImageDataGenerator(rescale=1./255)\n", 150 | "\n", 151 | "# Importing Test set\n", 152 | "test_set = test_datagen.flow_from_directory('/content/drive/My Drive/Colab Notebooks/Datasets/cats vs dogs - dataset/test_set',\n", 153 | " target_size=(64, 64),\n", 154 | " batch_size=32,\n", 155 | " class_mode='binary')" 156 | ], 157 | "execution_count": 4, 158 | "outputs": [ 159 | { 160 | "output_type": "stream", 161 | "text": [ 162 | "Found 2000 images belonging to 2 classes.\n" 163 | ], 164 | "name": "stdout" 165 | } 166 | ] 167 | }, 168 | { 169 | "cell_type": "markdown", 170 | "metadata": { 171 | "id": "af8O4l90gk7B", 172 | "colab_type": "text" 173 | }, 174 | "source": [ 175 | "## Part 2 - Building the CNN" 176 | ] 177 | }, 178 | { 179 | "cell_type": "code", 180 | "metadata": { 181 | "id": "8OuHRugqY_ZL", 182 | "colab_type": "code", 183 | "colab": {} 184 | }, 185 | "source": [ 186 | "# Importing essential libraries\n", 187 | "from keras.models import Sequential\n", 188 | "from keras.layers import Conv2D, MaxPool2D, Flatten, Dense" 189 | ], 190 | "execution_count": 0, 191 | "outputs": [] 192 | }, 193 | { 194 | "cell_type": "code", 195 | "metadata": { 196 | "id": "YhQVckrfZWFc", 197 | "colab_type": "code", 198 | "colab": {} 199 | }, 200 | "source": [ 201 | "# Initialising the CNN\n", 202 | "cnn = Sequential()" 203 | ], 204 | "execution_count": 0, 205 | "outputs": [] 206 | }, 207 | { 208 | "cell_type": "code", 209 | "metadata": { 210 | "id": "BCvNuryfZhM7", 211 | "colab_type": "code", 212 | "colab": {} 213 | }, 214 | "source": [ 215 | "# Step 1 - Add Convolution Layer\n", 216 | "cnn.add(Conv2D(filters=32, kernel_size=3, activation='relu', input_shape=[64, 64, 3]))" 217 | ], 218 | "execution_count": 0, 219 | "outputs": [] 220 | }, 221 | { 222 | "cell_type": "code", 223 | "metadata": { 224 | "id": "d989lotwb2DF", 225 | "colab_type": "code", 226 | "colab": {} 227 | }, 228 | "source": [ 229 | "# Step 2 - Add Pooling Layer\n", 230 | "cnn.add(MaxPool2D(pool_size=2, strides=2))" 231 | ], 232 | "execution_count": 0, 233 | "outputs": [] 234 | }, 235 | { 236 | "cell_type": "code", 237 | "metadata": { 238 | "id": "qjtkq0jXcMsc", 239 | "colab_type": "code", 240 | "colab": {} 241 | }, 242 | "source": [ 243 | "# Add second onvolutional layer with pooling\n", 244 | "cnn.add(Conv2D(filters=32, kernel_size=3, activation='relu'))\n", 245 | "cnn.add(MaxPool2D(pool_size=2, strides=2))" 246 | ], 247 | "execution_count": 0, 248 | "outputs": [] 249 | }, 250 | { 251 | "cell_type": "code", 252 | "metadata": { 253 | "id": "KZPkJv_scoVE", 254 | "colab_type": "code", 255 | "colab": {} 256 | }, 257 | "source": [ 258 | "# Step 3 - Add Flattening Layer\n", 259 | "cnn.add(Flatten())" 260 | ], 261 | "execution_count": 0, 262 | "outputs": [] 263 | }, 264 | { 265 | "cell_type": "code", 266 | "metadata": { 267 | "id": "qeuHtMxGcxrj", 268 | "colab_type": "code", 269 | "colab": {} 270 | }, 271 | "source": [ 272 | "# Step 4 - Add Full Connected Layer\n", 273 | "cnn.add(Dense(units=128, activation='relu'))" 274 | ], 275 | "execution_count": 0, 276 | "outputs": [] 277 | }, 278 | { 279 | "cell_type": "code", 280 | "metadata": { 281 | "id": "YgF3PhTMdG_k", 282 | "colab_type": "code", 283 | "colab": {} 284 | }, 285 | "source": [ 286 | "# Step 5 - Add Output Layer\n", 287 | "cnn.add(Dense(units=1, activation='sigmoid'))" 288 | ], 289 | "execution_count": 0, 290 | "outputs": [] 291 | }, 292 | { 293 | "cell_type": "code", 294 | "metadata": { 295 | "id": "9muTk0ztobBx", 296 | "colab_type": "code", 297 | "colab": { 298 | "base_uri": "https://localhost:8080/", 299 | "height": 424 300 | }, 301 | "outputId": "6e593107-7052-4a32-feb2-c2f28856f348" 302 | }, 303 | "source": [ 304 | "cnn.summary()" 305 | ], 306 | "execution_count": 15, 307 | "outputs": [ 308 | { 309 | "output_type": "stream", 310 | "text": [ 311 | "Model: \"sequential_1\"\n", 312 | "_________________________________________________________________\n", 313 | "Layer (type) Output Shape Param # \n", 314 | "=================================================================\n", 315 | "conv2d_1 (Conv2D) (None, 62, 62, 32) 896 \n", 316 | "_________________________________________________________________\n", 317 | "max_pooling2d_1 (MaxPooling2 (None, 31, 31, 32) 0 \n", 318 | "_________________________________________________________________\n", 319 | "conv2d_2 (Conv2D) (None, 29, 29, 32) 9248 \n", 320 | "_________________________________________________________________\n", 321 | "max_pooling2d_2 (MaxPooling2 (None, 14, 14, 32) 0 \n", 322 | "_________________________________________________________________\n", 323 | "flatten_1 (Flatten) (None, 6272) 0 \n", 324 | "_________________________________________________________________\n", 325 | "dense_1 (Dense) (None, 128) 802944 \n", 326 | "_________________________________________________________________\n", 327 | "dense_2 (Dense) (None, 1) 129 \n", 328 | "=================================================================\n", 329 | "Total params: 813,217\n", 330 | "Trainable params: 813,217\n", 331 | "Non-trainable params: 0\n", 332 | "_________________________________________________________________\n" 333 | ], 334 | "name": "stdout" 335 | } 336 | ] 337 | }, 338 | { 339 | "cell_type": "markdown", 340 | "metadata": { 341 | "id": "D6XkI90snSDl", 342 | "colab_type": "text" 343 | }, 344 | "source": [ 345 | "## Part 3 - Training the CNN" 346 | ] 347 | }, 348 | { 349 | "cell_type": "code", 350 | "metadata": { 351 | "id": "xUG0Mo7mdwPt", 352 | "colab_type": "code", 353 | "colab": {} 354 | }, 355 | "source": [ 356 | "# Compiling the CNN\n", 357 | "cnn.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])" 358 | ], 359 | "execution_count": 0, 360 | "outputs": [] 361 | }, 362 | { 363 | "cell_type": "code", 364 | "metadata": { 365 | "id": "Emku4-AeeBNU", 366 | "colab_type": "code", 367 | "outputId": "93c4a48b-110d-4c9b-8da8-e1ae7c2675d4", 368 | "colab": { 369 | "base_uri": "https://localhost:8080/", 370 | "height": 941 371 | } 372 | }, 373 | "source": [ 374 | "# Training the CNN on the Training set and evaluating it on the Test set\n", 375 | "model_history = cnn.fit(x=training_set, validation_data=test_set, epochs=25)" 376 | ], 377 | "execution_count": 14, 378 | "outputs": [ 379 | { 380 | "output_type": "stream", 381 | "text": [ 382 | "Epoch 1/25\n", 383 | "250/250 [==============================] - 2159s 9s/step - loss: 0.6866 - accuracy: 0.5598 - val_loss: 0.6859 - val_accuracy: 0.6215\n", 384 | "Epoch 2/25\n", 385 | "250/250 [==============================] - 79s 316ms/step - loss: 0.6399 - accuracy: 0.6390 - val_loss: 0.4633 - val_accuracy: 0.6230\n", 386 | "Epoch 3/25\n", 387 | "250/250 [==============================] - 78s 313ms/step - loss: 0.5991 - accuracy: 0.6833 - val_loss: 0.5523 - val_accuracy: 0.7005\n", 388 | "Epoch 4/25\n", 389 | "250/250 [==============================] - 79s 315ms/step - loss: 0.5652 - accuracy: 0.6970 - val_loss: 0.4884 - val_accuracy: 0.7095\n", 390 | "Epoch 5/25\n", 391 | "250/250 [==============================] - 79s 318ms/step - loss: 0.5432 - accuracy: 0.7212 - val_loss: 0.5697 - val_accuracy: 0.7310\n", 392 | "Epoch 6/25\n", 393 | "250/250 [==============================] - 78s 313ms/step - loss: 0.5202 - accuracy: 0.7411 - val_loss: 0.6756 - val_accuracy: 0.7360\n", 394 | "Epoch 7/25\n", 395 | "250/250 [==============================] - 79s 317ms/step - loss: 0.5066 - accuracy: 0.7501 - val_loss: 0.4075 - val_accuracy: 0.7465\n", 396 | "Epoch 8/25\n", 397 | "250/250 [==============================] - 79s 316ms/step - loss: 0.4869 - accuracy: 0.7663 - val_loss: 0.3054 - val_accuracy: 0.7610\n", 398 | "Epoch 9/25\n", 399 | "250/250 [==============================] - 79s 316ms/step - loss: 0.4730 - accuracy: 0.7682 - val_loss: 0.7393 - val_accuracy: 0.7580\n", 400 | "Epoch 10/25\n", 401 | "250/250 [==============================] - 79s 316ms/step - loss: 0.4432 - accuracy: 0.7909 - val_loss: 0.4779 - val_accuracy: 0.7700\n", 402 | "Epoch 11/25\n", 403 | "250/250 [==============================] - 78s 314ms/step - loss: 0.4302 - accuracy: 0.8008 - val_loss: 0.5321 - val_accuracy: 0.7465\n", 404 | "Epoch 12/25\n", 405 | "250/250 [==============================] - 79s 316ms/step - loss: 0.4175 - accuracy: 0.8070 - val_loss: 0.3906 - val_accuracy: 0.7760\n", 406 | "Epoch 13/25\n", 407 | "250/250 [==============================] - 79s 316ms/step - loss: 0.4000 - accuracy: 0.8215 - val_loss: 0.5041 - val_accuracy: 0.7820\n", 408 | "Epoch 14/25\n", 409 | "250/250 [==============================] - 78s 313ms/step - loss: 0.3789 - accuracy: 0.8269 - val_loss: 0.3408 - val_accuracy: 0.7790\n", 410 | "Epoch 15/25\n", 411 | "250/250 [==============================] - 78s 314ms/step - loss: 0.3557 - accuracy: 0.8410 - val_loss: 0.4667 - val_accuracy: 0.7570\n", 412 | "Epoch 16/25\n", 413 | "250/250 [==============================] - 78s 313ms/step - loss: 0.3419 - accuracy: 0.8497 - val_loss: 0.8049 - val_accuracy: 0.7835\n", 414 | "Epoch 17/25\n", 415 | "250/250 [==============================] - 79s 316ms/step - loss: 0.3277 - accuracy: 0.8585 - val_loss: 0.3984 - val_accuracy: 0.7645\n", 416 | "Epoch 18/25\n", 417 | "250/250 [==============================] - 78s 313ms/step - loss: 0.3095 - accuracy: 0.8694 - val_loss: 0.3740 - val_accuracy: 0.7765\n", 418 | "Epoch 19/25\n", 419 | "250/250 [==============================] - 79s 315ms/step - loss: 0.2916 - accuracy: 0.8771 - val_loss: 0.7631 - val_accuracy: 0.7825\n", 420 | "Epoch 20/25\n", 421 | "250/250 [==============================] - 78s 313ms/step - loss: 0.2700 - accuracy: 0.8874 - val_loss: 0.6514 - val_accuracy: 0.7795\n", 422 | "Epoch 21/25\n", 423 | "250/250 [==============================] - 79s 316ms/step - loss: 0.2617 - accuracy: 0.8905 - val_loss: 0.4014 - val_accuracy: 0.7815\n", 424 | "Epoch 22/25\n", 425 | "250/250 [==============================] - 78s 313ms/step - loss: 0.2453 - accuracy: 0.9004 - val_loss: 0.8772 - val_accuracy: 0.7890\n", 426 | "Epoch 23/25\n", 427 | "250/250 [==============================] - 78s 314ms/step - loss: 0.2347 - accuracy: 0.9032 - val_loss: 0.5657 - val_accuracy: 0.7825\n", 428 | "Epoch 24/25\n", 429 | "250/250 [==============================] - 79s 314ms/step - loss: 0.2237 - accuracy: 0.9076 - val_loss: 0.8878 - val_accuracy: 0.7840\n", 430 | "Epoch 25/25\n", 431 | "250/250 [==============================] - 79s 317ms/step - loss: 0.2037 - accuracy: 0.9170 - val_loss: 0.5736 - val_accuracy: 0.7725\n" 432 | ], 433 | "name": "stdout" 434 | } 435 | ] 436 | }, 437 | { 438 | "cell_type": "markdown", 439 | "metadata": { 440 | "id": "U3PZasO0006Z", 441 | "colab_type": "text" 442 | }, 443 | "source": [ 444 | "## Part 4 - Model Evaluation" 445 | ] 446 | }, 447 | { 448 | "cell_type": "code", 449 | "metadata": { 450 | "id": "re1fN31A_bDy", 451 | "colab_type": "code", 452 | "outputId": "1140d6bb-7787-4857-9754-0cae6a13656a", 453 | "colab": { 454 | "base_uri": "https://localhost:8080/", 455 | "height": 74 456 | } 457 | }, 458 | "source": [ 459 | "# Importing essential libraries\n", 460 | "import matplotlib.pyplot as plt\n", 461 | "import seaborn as sns\n", 462 | "%matplotlib inline" 463 | ], 464 | "execution_count": 16, 465 | "outputs": [ 466 | { 467 | "output_type": "stream", 468 | "text": [ 469 | "/usr/local/lib/python3.6/dist-packages/statsmodels/tools/_testing.py:19: FutureWarning: pandas.util.testing is deprecated. Use the functions in the public API at pandas.testing instead.\n", 470 | " import pandas.util.testing as tm\n" 471 | ], 472 | "name": "stderr" 473 | } 474 | ] 475 | }, 476 | { 477 | "cell_type": "code", 478 | "metadata": { 479 | "id": "41AOhxxF_KB8", 480 | "colab_type": "code", 481 | "outputId": "906192ff-53ef-4415-ae04-760bbd2b8cf1", 482 | "colab": { 483 | "base_uri": "https://localhost:8080/", 484 | "height": 35 485 | } 486 | }, 487 | "source": [ 488 | "# List all data in history\n", 489 | "print(model_history.history.keys())" 490 | ], 491 | "execution_count": 17, 492 | "outputs": [ 493 | { 494 | "output_type": "stream", 495 | "text": [ 496 | "dict_keys(['val_loss', 'val_accuracy', 'loss', 'accuracy'])\n" 497 | ], 498 | "name": "stdout" 499 | } 500 | ] 501 | }, 502 | { 503 | "cell_type": "code", 504 | "metadata": { 505 | "id": "jj_bJ1le_XVJ", 506 | "colab_type": "code", 507 | "outputId": "52c985f8-bc93-4774-9426-0b85665edc64", 508 | "colab": { 509 | "base_uri": "https://localhost:8080/", 510 | "height": 513 511 | } 512 | }, 513 | "source": [ 514 | "# Summarize history for accuracy\n", 515 | "plt.figure(figsize=(8,8))\n", 516 | "plt.plot(model_history.history['accuracy'])\n", 517 | "plt.plot(model_history.history['val_accuracy'])\n", 518 | "plt.title('Model Accuracy')\n", 519 | "plt.xlabel('Epoch')\n", 520 | "plt.ylabel('Accuracy')\n", 521 | "plt.legend(['Train', 'Test'], loc='lower right')\n", 522 | "plt.show()" 523 | ], 524 | "execution_count": 18, 525 | "outputs": [ 526 | { 527 | "output_type": "display_data", 528 | "data": { 529 | "image/png": "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\n", 530 | "text/plain": [ 531 | "
" 532 | ] 533 | }, 534 | "metadata": { 535 | "tags": [], 536 | "needs_background": "light" 537 | } 538 | } 539 | ] 540 | }, 541 | { 542 | "cell_type": "code", 543 | "metadata": { 544 | "id": "682AJ6gaAtmi", 545 | "colab_type": "code", 546 | "outputId": "687719d2-25a9-4f96-efdd-d4b9f646200a", 547 | "colab": { 548 | "base_uri": "https://localhost:8080/", 549 | "height": 513 550 | } 551 | }, 552 | "source": [ 553 | "# Summarize history for loss\n", 554 | "plt.figure(figsize=(8,8))\n", 555 | "plt.plot(model_history.history['loss'])\n", 556 | "plt.plot(model_history.history['val_loss'])\n", 557 | "plt.title('Model Loss')\n", 558 | "plt.xlabel('Epoch')\n", 559 | "plt.ylabel('Loss')\n", 560 | "plt.legend(['Train', 'Test'], loc='upper right')\n", 561 | "plt.show()" 562 | ], 563 | "execution_count": 19, 564 | "outputs": [ 565 | { 566 | "output_type": "display_data", 567 | "data": { 568 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfQAAAHwCAYAAABQR52cAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nOydd3ic1ZX/P1e9F3dLcqe64IKBgAmmpACBQAoENiRhUwhJgCS7WRKS3bRNIZu2kLKETSEJ2QVCAoZfyEJiiulgmo1tijs2tiVLlmyNNKr398edO3o9HklT3mqdz/PoGWn0zvte2dJ833PuOd+jtNYIgiAIghBtCoJegCAIgiAI+SOCLgiCIAiHASLogiAIgnAYIIIuCIIgCIcBIuiCIAiCcBgggi4IgiAIhwEi6IIwhlFKzVRKaaVUUQbHXq6UesyPdQmCkD0i6IIQEZRSW5VSvUqpCSnPv5AQ5ZnBrCy7GwNBELxBBF0QosUW4FL7hVJqAVAR3HIEQQgLIuiCEC1+D3zY8fVHgN85D1BK1SqlfqeUalFKbVNK/atSqiDxvUKl1A+UUnuVUpuBd6V57a+UUruUUjuVUt9SShXms2ClVINS6h6lVJtSaqNS6hOO752olFqtlNqvlNqjlPpR4vkypdStSqlWpVS7UupZpdTkfNYhCIc7IuiCEC2eAmqUUscmhPYS4NaUY34C1AKzgeWYG4B/THzvE8B5wGJgKfD+lNfeAvQDRySOeQfw8TzXfBuwA2hIXO87SqkzE9+7AbhBa10DzAHuSDz/kcTPMA0YD1wJdOe5DkE4rBFBF4ToYaP0twMbgJ32Gw6Rv05rfUBrvRX4IfChxCEXA/+ptX5Da90GfNfx2snAucDntNYxrXUz8OPE+XJCKTUNWAZ8UWsd11q/CPySoSxDH3CEUmqC1rpTa/2U4/nxwBFa6wGt9XNa6/25rkMQxgIi6IIQPX4P/ANwOSnpdmACUAxsczy3DWhMfN4AvJHyPcuMxGt3JdLc7cAvgEl5rLUBaNNaHxhmPR8DjgJeSaTVz0s8/3vgfuA2pdSbSqn/UEoV57EOQTjsEUEXhIihtd6GKY47F/hzyrf3YqLbGY7npjMUxe/CpLGd37O8AfQAE7TWdYmPGq31vDyW+yYwTilVnW49WuvXtdaXYm4avgfcqZSq1Fr3aa2/obWeC5yC2Sb4MIIgDIsIuiBEk48BZ2qtY84ntdYDmH3obyulqpVSM4B/Ymif/Q7gGqVUk1KqHviS47W7gAeAHyqlapRSBUqpOUqp5VmsqzRR0FamlCrDCPcTwHcTzx2XWPutAEqpy5RSE7XWg0B74hyDSqkzlFILElsI+zE3KYNZrEMQxhwi6IIQQbTWm7TWq4f59tVADNgMPAb8D/DrxPf+G5PKfgl4nkMj/A8DJcB6YB9wJzA1i6V1YorX7MeZmDa7mZho/S7ga1rrvyeOPxtYp5TqxBTIXaK17gamJK69H1Mn8AgmDS8IwjAorXXQaxAEQRAEIU8kQhcEQRCEwwARdEEQBEE4DBBBFwRBEITDABF0QRAEQTgMEEEXBEEQhMOAyI06nDBhgp45c2bQyxAEQRAEX3juuef2aq0njnZc5AR95syZrF49XPutIAiCIBxeKKW2jX6UpNwFQRAE4bBABF0QBEEQDgNE0AVBEAThMCBye+iCIAjC2KGvr48dO3YQj8eDXornlJWV0dTURHFxbpOCRdAFQRCE0LJjxw6qq6uZOXMmSqmgl+MZWmtaW1vZsWMHs2bNyukcknIXBEEQQks8Hmf8+PGHtZgDKKUYP358XpkIEXRBEAQh1BzuYm7J9+f0VNCVUmcrpV5VSm1USn0pzfdnKKVWKqXWKKUeVko1ebkeQRAEQciG1tZWFi1axKJFi5gyZQqNjY3Jr3t7e0d87erVq7nmmmt8WqmHe+hKqULgZ8DbgR3As0qpe7TW6x2H/QD4ndb6t0qpM4HvAh/yak2CIAiCkA3jx4/nxRdfBODrX/86VVVVfOELX0h+v7+/n6Ki9FK6dOlSli5d6ss6wdsI/URgo9Z6s9a6F7gNuCDlmLnAg4nPH0rzfUEQBEEIFZdffjlXXnklJ510Etdeey3PPPMMJ598MosXL+aUU07h1VdfBeDhhx/mvPPOA8zNwEc/+lFOP/10Zs+ezY033uj6uryscm8E3nB8vQM4KeWYl4D3AjcA7wGqlVLjtdatHq5LEARBiCDfuHcd69/c7+o55zbU8LXz52X9uh07dvDEE09QWFjI/v37efTRRykqKuLvf/87X/7yl/nTn/50yGteeeUVHnroIQ4cOMDRRx/Npz71qZxb1NIRdNvaF4CfKqUuB1YBO4GB1IOUUlcAVwBMnz7dz/UJgiAIwiFcdNFFFBYWAtDR0cFHPvIRXn/9dZRS9PX1pX3Nu971LkpLSyktLWXSpEns2bOHpib3Sse8FPSdwDTH102J55Jord/EROgopaqA92mt21NPpLW+GbgZYOnSpdqrBQuCIAjhJZdI2isqKyuTn//bv/0bZ5xxBnfddRdbt27l9NNPT/ua0tLS5OeFhYX09/e7uiYv99CfBY5USs1SSpUAlwD3OA9QSk1QStk1XAf82sP1CIIgCILrdHR00NjYCMAtt9wS2Do8E3StdT9wFXA/sAG4Q2u9Tin1TaXUuxOHnQ68qpR6DZgMfNur9QiCIAiCF1x77bVcd911LF682PWoOxuU1tHKYC9dulTLPHRBEISxwYYNGzj22GODXoZvpPt5lVLPaa1H7X8TpzhBEARBOAwQQRcEQRAEgK422LMO9GDQK8kJEXRBEARBAOjrgoFeGAxuHzwfRNAFQRAEAWCg/+DHiCGCLgiCIAgAg30HP0YMEXRBEARBgKFUe0Qj9KCtXwVBEAQhHFhBd0Tora2tnHXWWQDs3r2bwsJCJk6cCMAzzzxDSUnJiKd8+OGHKSkp4ZRTTvFmzQ5E0AVBEIRgadsMd3wELvszVE0MZg160CHoQxH6aONTR+Phhx+mqqrKF0GXlLsgCIIQLG++ALvXmI+gcFa2D4y8h/7cc8+xfPlyjj/+eN75zneya9cuAG688Ubmzp3LcccdxyWXXMLWrVu56aab+PGPf8yiRYt49NFHvfwJJEIXBEEQAibeYR47m0c+7q9fgt1r3b32lAVwzvUH75uPUBSntebqq69mxYoVTJw4kdtvv52vfOUr/PrXv+b6669ny5YtlJaW0t7eTl1dHVdeeWXWUX2uiKALgiAIwZIU9D3BrcFG6AXFIxbF9fT08PLLL/P2t78dgIGBAaZOnQrAcccdxwc/+EEuvPBCLrzwQs+XnIoIuiAIghAs8f3mcbQI/ZzrvVuDjcqLy6E3NuxhWmvmzZvHk08+ecj3/vKXv7Bq1Sruvfdevv3tb7N2rcvZhFGQPXRBEAQhWMIQoduovLgc9AAMDqQ9rLS0lJaWlqSg9/X1sW7dOgYHB3njjTc444wz+N73vkdHRwednZ1UV1dz4MABX34EEXRBEAQhWMIg6IN9oAqgqDTxdfq0e0FBAXfeeSdf/OIXWbhwIYsWLeKJJ55gYGCAyy67jAULFrB48WKuueYa6urqOP/887nrrrukKE4QBEEYA2RaFOclg/1QUGT20O3XlB50yNe//vXk56tWrTrkFI899tghzx111FGsWeNP9b5E6IIgCEKw9Ng99CBT7n1GzAuKhr6OGCLogiAIQrDYCD3eDv09waxhsB8Ki8wHRNLPXQRdEARBCJZ4B6hC83lQafdkyt1G6NHzcxdBFwRBEIIlvh/GzTKfpxF0rbW317e2rwXFpjCuoCiQCD3fn1MEXRAEQQiOgT7oi8GEo8zXKfvoZWVltLa2eivqtqLdptsLinyP0LXWtLa2UlZWlvM5pMpdEARBCA5rKjPhKHj1vkMEvampiR07dtDS0uLdGgZ64UAzVA5C8V6TJdAamv3dzy8rK6OpqSnn14ugC4IgCMERbzeP4+eYx5SUe3FxMbNmzfJ2Da//He68GD56P0w/Fv78n7DtCfi8v05v+SIpd0EQBCE4bMtaxQSoGB9M61oscRNRNSnxONE85/XevcuIoAuCIAjBYVvWymqhanIwgm6vWWkFfTL0x4duNiKCCLogCIIQHAcJ+qRg2tY6W6C4AkqrzNdVkxPPB+hclwMi6IIgCEJwJAW9JrgIPdYMlROHvrap9yCd63JABF0QBEEIDlvl7ozQ/d677mweisrBEaGLoAuCIAhCZsQ7AAUl1Ym9627o8WfcaJLO5qGoHCTlLgiCIAhZE++A0hooKAhOSFNT7mV1xjVOBF0QBEEQMiTeYdLtEMze9UA/dLUdHKEXFBiBF0EXBEEQhAzp2e8Q9AD2rrv2AvpgQYfEfr7soQuCIAhCZhwUoQcg6Kk96JagKu7zQARdEARBCI54h2lZA8fetZ+CnvCITxuhS8pdEARBEDLDGaEXFPgvpNb21VkUByZCj7XA4IB/a8kTEXRBEAQhOOKOPXTwf+/a3jw4+9Dt13rAFMxFBBF0QRAEIRgGBw8uigP/9647mw+2fU2uIxGxx6KTdhdBFwRBEIKhZz+gTR+6JYiUe2q6HSLpFieCLgiCIASDczCLxe+961SXOOc67Pcjggi6IAiCEAw9Dh93S9Vk0IPQ1erPGmIth+6fQyQHtIigC4IgCMGQNkL3WUg796RPuZdUmb11idAFQRAEYRSco1Mtfu5dp7N9tSgVObc4EXRBEAQhGOLDpNzBn8h4ONtXS2W0zGVE0AVBEIRgSEbodUPP+Zlyt2KdavvqXIsIuiAIgiCMghV0Z9taSaWZje6HkCZNZYYT9Gj5uYugC4IgCMEQ74DiSigsOvh5v/auh7N9Ta5jMnS3QX+v92txARF0QRAEIRh6Og7eP7dUTfY5Qk/TtgZDkXusxfu1uIAIuiAIghAM8eEE3acIfTjb1+Q6ouUWJ4IuCIIgBMOwgu7T3vVwtq/OdYBE6IIgCKGkv8d8CMHjnIXupGqS+V5f3NvrD2f7mlxHQuwlQgel1NlKqVeVUhuVUl9K8/3pSqmHlFIvKKXWKKXO9XI9giAI/PkT5kMIntTRqZZkZOzxPvpwtq+WymjZv3om6EqpQuBnwDnAXOBSpdTclMP+FbhDa70YuAT4uVfrEQRBAKDlVWjdFPQqBBg55Q7eF8YNZ/tqKS4z64tIL7qXEfqJwEat9WatdS9wG3BByjEasPmWWuBND9cjCIJgorKutqBXIWg9clEceBsZj2T7etBaotOLXjT6ITnTCLzh+HoHcFLKMV8HHlBKXQ1UAm9LdyKl1BXAFQDTp093faGCIIwR7Jt4UVnQKxF6Y6AHDjaVsfhRXW5tX0eK0O1aJELPiEuBW7TWTcC5wO+VUoesSWt9s9Z6qdZ66cSJo/zjC4IgDEdXK6Chvxv6uoNezdgm3ehUS+UEQHkrpKP1oFsiNKDFS0HfCUxzfN2UeM7Jx4A7ALTWTwJlwAQP1yQIwljG2X7UvS+4dQjpR6daCouhYjwc2O3d9UezfbVUToJOaVt7FjhSKTVLKVWCKXq7J+WY7cBZAEqpYzGCHo1/OUEQoodT0GUfPVhGEnTwPtU9mu1rch2ToPeA2SIIOZ4Juta6H7gKuB/YgKlmX6eU+qZS6t2Jw/4Z+IRS6iXgf4HLtdbaqzUJgjDGie0d+lwi9GAZVdA9TnVnGqH7Oc41T7wsikNrfR9wX8pzX3V8vh5Y5uUaBEEQkkjKPTykm4XupGqyt+2FsRZj+1oyjO2rcx1gBH3cLO/W4wJBF8UJgiD4x0GCLin3QIm3m8fRInSvkra2B12pkY/zcz57noigC4Iwdog1Q2lCQCRCD5Z0s9CdVE2GgZ6h49xmNNtX5zpABF0QBCFUxPZC3XQoLJWiuKCJd5j/h+JhPAG83ruOtQxZu45E5QRQBZEY0CKCLgjC2CHWYgZuVIyTCD1oeobxcbd4nerONEIvKDQtdBKhC4IghIhYi9k3La8XQQ+a4WxfLdVTzKMXQjrQb0yGMhF0iIxbnAi6IAhjh9jehKBLhB44w41OtSQjdA+ENFPbV+daJEIXBEEICb0x6Osye6LldSLoQTNahF5WB4Ul3ghppj3oFonQBUEQQoQtaqqcZPbQpSguWIabhW5RyjshjWXo427xuoXOJUTQBUEYG1g/buceesjfoA9rRovQwbtUd2eGtq/JdUyGgV7vWuhcQgRdEISxQTJCn2AEfaDHpOCFYIh3DN+DbvEqQs825V7p4X6+i4igC4IwNog5I/Rx5nPZRw+Gvri5oQoqQo+1QFH56LavznVA6AvjRNAFQRgbpEboIPvoQTHSLHQnVZNNRfrggLvXtz3oo9m+OtcBIuiCIAihILYXSqqhuNwUxYFE6EGRnLRWN/JxVZNADx48Jc8NOvdknm636wBJuQuCIISCWIuJzmEoQhdBD4akoGewhw7uR8aZ2r5ayuuhoFgidEEQhFAQaxmKtJJ76JJyD4TRZqFbvPJz72w2FsCZ4mULnYuIoAuCMDawtq9gjGUg2hH64AD89ERY88egV5I9GQu6B8VoSdvXDHvQnWuJiaALgiAEjzPlXlxuqpyjXBTX1QZ7X4W1h7GgV3og6NnavloiYP8qgi4IwuHP4ICJypxv4hXjoLs9uDXli90u2PY4DPQFu5ZsGW0WuqWkwhzjZqo72x50S9UkSbkLgiAETvc+Uy3tFPTy+mjvodvsQm8n7Hw+2LVkS89+UIVQUjn6sW5HxjZtnk1RHJgUfazF/RY6FxFBFwTh8MfZg26J+ghV583IlkeCW0cuWNvXTPrA3S5GsxbAWUfok81NYVere2txGRF0QRAOf5yDWSxRF3QrLJUTYXNEBT0TqiZB5273rm2j/VxS7s7XhxARdEEQDn+ctq+WqE9cs2ufewG88bQZDxsVRpuF7sTtCD1b21fnOiDU++gi6IIgHP50phH0qE9c624z88KPPgcG+2D7k0GvKHNGG53qpGqS2XPvdWmQju1Bz9T21WJ/d0TQBUEQAiTWAqpgyCEOzOeDfaaoLIp0tRmDnOknGxezKKXds0q5JyJjt3rAY83Z96A71yEpd0EQhACJtUDFBChwvOVFfeJaVxtUjDeV4tNOjFZhXC6C7lZk3NmcfYU7QGkVFFdKhC4IghAosb2HGolEfeJad9vQkJlZy2HXmuj8LPEOKM1W0F2KjLO1fT1oLeE2lxFBFwTh8MfpEmeJ+sS1rrahm5LZywENWx8NdEkZMdAPfbEcInQXhNTavuYSodu1iKALgiAEiHMwiyXqE9ecEXrj8aZqOwr76JnOQrdUTjD1D26kurtaAZ19y5qlatJQx0QIEUEXhOHYtw0GB4NeheAGaVPuEZ64pvXQHjpAYTHMWBaNffR4wm43U0EvKDT1D25Exrn2oFsk5S4IESS2F35yPKz7c9ArEfKlrxt6Dxyaco/yxLV4B+iBoZsSMGn31o3QsTO4dWVCprPQnbjVi56r7atzHd37oL8n/7V4gAi6IKTjwC7T0rT3taBXIuRLOlMZgKJSU7XcFUFBt1mFCoegz1puHsMepcezTLmDe5FxrravznVAaNPuIuiCkA47hWt/yKMdYXSGE3RITFyLoKDbmxBnhD5prklNh30fPdPRqU7cjtBzFvRw96KLoAtCOuybfNjTl8LoxPaax3SCXl4XzT106+Nu99DB9NjPOs1E6GF2v8t0dKoTG6Hn+3N1Nudm++pchz1PCBFBF4R0xCVCP2xIN2nNUh7RCD1dyh3MPvqBXbD3df/XlCm5RugDvUN/l7mSq+2rcx32PCFEBF0Q0mFT7h07wx3tCKMzUso9qhPXrIGM08oWorGP3rMfUNlH6JC/kMZydImzhNzPXQRdENJhI4G+2FBEIUSTzhZT/FZSeej3ojpxrbvN9GaX1R38/LhZUDcdNj8cyLIyIt5hxLwgC/lxa++6syU3H3dLUan5N5c9dEGIEM6oTdLu0SadS5wlqhPXulrN2tOJ4qzlxjFucMD/dWVCNqNTLW6lujv35G776lyLCLogRIhux17d/jeDW4eQP7GW9Ol2MKKoB4bcy6KCnbSWjtmnG9Hc9aKfK8qcbEanWpIp9zyENF/bV+daJOUuCBEi3g7VU83nHTuCXYuQH+lc4ixRnbjmtH1NZdZp5jGs7WvZTFqzlNVCYWl+gp6v7atFInRBiBjd7TDxGLNPKSn3aDNayh2it4/etW/4CL1qkulJD2thXC6CrlT+vej59qBb3OqJ9wARdEFIR/c+0+NbPVVS7lFmcBC69g7/Jh7ViWtdrQf3oKcyazlsfwr64v6tKVNsUVy25OsWZ1/rRsq9LwY9nfmdxwNE0AUhHfF2YzpS0yAp9ygTb4fB/pH30CF6gt7dBhX1w39/9nLoj8OOZ/xbU6b05BChQ/6Rcb62r8l1WPvX8EXpIuiCkMrgoIkiyuuhplFS7lFmpB50iOYeem+XEevhUu5gJq+pwvDtow8O5lYUB/lH6MnBLPlWuYfXLU4EXRBS6T0AetD0m9Y2mZR71NqaBMNILnEQzYlrw7nEOSmrgcYl4dtH7z0A6Nwj9NheU62eC9b2tbQ6t9c71wGhLIwTQReEVOybu02593VF6w1fGGK0CL2wGEqqo1UUl87HPR2zT4edzw9NNwsDuYxOtVRNAnTuk87ytX1NriO89q8i6IKQiu1BL6szKXeQtHtUGWkwi6UiYvavSdvXESJ0MIVxegC2Pe79mjIll9Gplnwj43xtXy0V4033i0ToghABrO1reb1JuYNUukeVWAugRha/8vpoTVzLJOUOMO1Ek2IO0z56LoNZLPlGxp0t+RfEARQUmhtEidAFIQKkptxBKt2jSqzFRFSFRcMfE7WJa5lG6EWlMP0t4dpHz0fQq/OM0Dv3uCPoEFq3OE8FXSl1tlLqVaXURqXUl9J8/8dKqRcTH68ppfKcjScILuBMuVdNhoIiSblHlZFsXy1Rm7jWlWGEDqZ9rXk9HAhJejiXWeiWyjzsX92yfXWuZSyl3JVShcDPgHOAucClSqm5zmO01p/XWi/SWi8CfgL82av1CELGJFPudSa9JuYy0aVzBJc4S9QmrnW3GUEsLB792OQ41VXerilTrGd+6pS4TCguM5F9LpGxW7avlpC6xXkZoZ8IbNRab9Za9wK3AReMcPylwP96uB5ByIzudigsgeIK87WYy0SXTCP0eLvpkY4CXW2HzkEfjqkLjQhuedjTJWVMPlXukLuPuls96Ml1JCL0kLWzeinojcAbjq93JJ47BKXUDGAW8KCH6xGEzOjeZyII294i5jLRZaTBLJbyeuM70BORufcjDWZJpaAQZr4VNq8Kh/jEO8xs+kyyC+nINTK2NwH5zEJPXcdgX+i2asJSFHcJcKfWOu0AX6XUFUqp1Uqp1S0tOfYgCkKmWNtXS02DmMtEkf4eI9KjCnrE3OJG83FPZfbp0LEd9m3xakWZE2/PPTqH3N3i3LJ9da4Dcu+J9wgvBX0nMM3xdVPiuXRcwgjpdq31zVrrpVrrpRMnupQyEYTh6G4/OKVZ22SsNqO0zyo4etBH2UNPTlyLiqCPMAs9HXYfPQzta7navlpyjdBdT7mH0y3OS0F/FjhSKTVLKVWCEe17Ug9SSh0D1ANPergWQcicePvBRTtJcxnZR48UsQyjsqhNXOvel3nKHWDCkaawMwzta7mMTnVSNcnYx/bGsntdZzMUleVv++pchz1viPBM0LXW/cBVwP3ABuAOrfU6pdQ3lVLvdhx6CXCb1pLPFEJC976UlLsVdKl0jxSZuMRBtCauDfSZSvFsInSlTJS+ZVXwhX95C3qO5jKdzUaE87V9Ta4jjxY6DxnBbSF/tNb3AfelPPfVlK+/7uUaBCFrujsOjtBrE4Iule7RIplmHS3lbiP0CGypZNOD7mT2clhzGzSvgykL3F9XpsQ7YPwRub/eGRmPm5X569yyfbWU1ZlOmJAJeliK4gQhHAwOmEIq5x565SQxl4kiow1msdiIMQoReqa2r6mEZR+9x4U9dMheSN2yfbUoFcpe9DEv6P0DEek9FfzB9sk6U+4FBVDdICn3qBFrMfumJVUjH1dYBKW10Sh6zNT2NZXaRhMZB7mPrrWLKfcsBT3W7K6gQ/7z2T1gTAv6o08+zs+/9y+0H+gMeilCWLBRWqqTVW0jdEiEHilsD3om+6ZRmbiWa4QOJkrf9oTZhw+Cvi4Y7M9P0JOTzrKIjAf6E78Lbgv65KF2uJAwpgV9dnwD1/T+kpvvCYktohA8TttXJ2IuEz0ycYmzRGXiWqaz0NMx+3To7YSdz7m5osxJjk7Now89Oeksi8jYbdtXi0To4aJx1rEArF33Ek9vbg14NUIo6HaMTnUi5jLRIytBj8jEtVxT7gAzTwVUcPvo+Uxac5LtpDO3e9AtlZOga6+puwkJY1rQqZ8BwIKKdr5811p6+sPzHyMERNwxac1JbRMM9Ay1QgnhJxPbV0tUJq51tyXqAiqyf23FOOPtHtQ+umuCnqWfuxV/t2xfk+uYZCyDQ/SeMLYFvXoqFJbwgSMH2NQS4+ZHNge9IiFonLPQnSR70SXtHgm0TkToo7SsWaIyca1rX27RuWX2cnjjmeyNWdwgKeg5TFpzkm11eVLQPdhDh1Cl3ce2oBcUQt10Zqhm3nXcVH7y0Ea27A3gF10ID93DROg1DeZRBD0axDtgoDe7CD3eEar0aVqy9XFPZdZyM1RkWwDGnHZ0ai6z0J1kO+nMq5R7riY3HjK2BR2gbgbs28bXzptLaWEBX7lrLWJalwe7XoJ9W4NeRe7E26Go3MxedlLbZB6l0j0aZOoSZymvB/RQFBlWuttMRX6uTD/ZGKIEMU41uZ3lQso9m0lnbtu+JtdhB7SIoIeH+pmwbyuTasq49pxjeGJTK3e9IG/aOTE4CLe+H/721dGPDSuptq+WignmjVAi9GiQNJXJMOUelYlr2Q5mSaWkAppODKYwzs2iOMg8Mo61uGv7esg6JOUeHupnmjvH7nY+eOJ0Fk2r41t/2cC+WG/QK4seu9eYu9X27UGvJHe629Pv8RUUmJoLEfRokOlgFkty4lrI99GzmYU+HLOXw+61/v+s8Q5zU7+PVqQAACAASURBVJya/cqWZKp7d2bHd+5xvwcdoKTSmBZJyj1EJCrdad9GQYHiu+9dwP7uPr771w3BriuKbFppHqPsqBbvOLRlzVLbJCn3qJCp7aslChPXBgcTk9by2EOHhA2sNsNa/CTf0amWqinmMVMhddv29aC1hKsXXQS9fqZ5TOz7Hju1ho+/dTZ3rN7BU9Kbnh2bHjKPnc3BuVHlS3d7+pQ7JHrRRdAjgd1Dz1T8ojBxLd5u2qTySbkDNC4xkaXf7Wv52r5ask11x5rdL4hLriVcfu4i6CmCDvDZs46kqb6cr0hveub0dML2pxJ/OBoOZJgOCxvd+4Zvq6lpNNmHoEdQCqMTazYiXVic2fFJQQ9xyt3ebOSbci8shhnL/N9Hd0vQS6tN4Womgj44YDoD3O5Bt0iEHjLKas0b+L5tyafKSwr59wvns6klxk0PS296Rmx91FSeLrzUfB3VtHt8hAi9tsn8jLFw+TcLacjGJQ4SQqPCHaHn4xKXyuzl0LbJ35HA8Y78W9YgMeksQ7e42F6T1fAs5S4RevhIVLo7OePoSZx33FR+9tBGNrfI8JZR2bgSiitg/nvN11FMTQ/0Ga/r4fbQpRc9OmTjEgfGk6Is5BPXkoNZ8txDh2DGqeY7OtVJpm5xXvWgJ9cxyQQB/T3enD9LRNDBCHr7tkOe/ur5cyktLuArd70svemjselB4xVdP8t8HcUIfTQnK3GLiw7ZuMRZKkLu554czJJHH7pl0lzTiunnPrpbKXfIPEL3yiXOUpllC53HiKCDqXRv336IS9Sk6jK+dM4xPLm5lT8/L2/iw7Jvq0nfzTnL/MEWV0ZT0IezfbWIuUx0iLVk36oU9olrbqbcCwpg1mkmQvcrWHFV0DON0G37old76OFyixNBBxOhD/TCgV2HfOvSE6azZHod3/rLetqkNz09GxPtakecZfa3oloNPpztq6ViPBSWRvNnG0sMJFzEsk2zhn3iWncbqEL3RHH2ctPLvfc1d843Ev090B/Pb3Sqk6rJJmMxWjeNFX0vU+7O6wSMCDo4Kt0PTbsXFCi+894FHIj38937pDc9LZsehNppMP4I87UdNRo1krPQh0lpRvlmZSyRtH3NMuUe9olrXQlTGbccz2afbh792EdPzkLPczCLJWm7OkqBqle2r8l1hGtAiwg6GD93GNaD/JgpNXzitNn88bkdPLlJetMPYqDPGFTMOXPojca2d0WN5Cz0Ed50xFwm/GRrKmOpGGemmYWVrlZ30u2W+pnmvW/zw+6dczjcsn21ZCqkduvFbdtXi/0dk5R7iKidBqpgxKEi15x5JNPGlfOVu6U3/SB2rDbVq0ecNfRczVSzfRH2yVWp2OhspCgiqtmHsUSugl5eDz0dMNDv/prcoHtf/j3oqcxeDlsf8/5n9kzQRxHSzmbvCuIAikrMTVZIBrSIoIP5T6lpTFvpbikvKeRbFy5gc0uM/3p4k4+LCzmbVpqbIdsGA0b09EBo7lozJp5BhF7TCAfejN7Nylgi20lrFrvVYn8Pwka+g1nSMWu5uYnZ9ZK7503F/pu60YcOme9dey3okHmBng+IoFvS9KKnsvyoibx7YQM/f2gTm6Q33bBxJTQuPVgEk+1dEYtku9uNJeZI7mK1jTDYH72blbFEsrI5h6I4CO8+uhuDWVKZcYp5fPN5d8+bip2F7mbbGmSQcvfQ9jW5lomheT8QQbfUz8hojve/nncsZcUyNx2AWCu8+cLB6XaIrgHLSLavlqjerIwlYi1mqle20WCYJ65pbfbQ3Rb0qinm36rjDXfPm4rbKfeiUvO3OpKQJm1fJUIfe9TNNP8pvV0jHmZ604/lqc1t/Gms96ZveRjQpv/cSVRFbyTbV0vyZ/PRMlPIDusSl20hVEWIB7T0xkxrrdsp94IC8zvttQWs24IOowtpV2vC9tWjHvSD1tHsXz//CIigW2zrWgazvC85YRrHz6jn22O9N33jg+YPtHHJwc9XjDd3/ZGL0NuHb1mziLlM+Ik1Z9+yBuGeuJa0fXVZ0CHRueGDoKtCM0PcLUZzi/O6B925jr4uYxsdMCLoljRT14ajoEDxnfeY3vRv/2WM9qZrbQriZp9ufLCdJPu1IxihjxZBlNebvtao3ayMJbIdzGJJ7qGHMOXe5aKPeyq103wQ9P3GVMbN9rHRInSvbV+d63BeL0BE0C31iV70ESrdnRw9pZpPLp/Nn57fwROb9nq4sJDSvMG0pqWm2y1R7EXv3jd6yl2pxM8mgh5ash3MYimtMR0bYYzQrY+72yl3MBH6gV2ju67lg5u2r5bRJp0l2xe9FvTw+LmLoFsqJ5ppYRlE6JarzzyS6eMq+MpdL9PdO8bamDY9aB5TC+IsUXRU627PzMmqpkFS7mFF69wGs4DZTy6rC2dRnFuz0NNR22T2mtNYX7uGJ4I+yaS5e4ZJdfsVoVeGx/5VBN2iVEata07Kigu5/r0L2LI3xrf+st6zpYWSTSthwtFDe8qp1DSYN4gQFIpkRH8P9HePvocO5meOWvZhrNDbaTzDc43Kwjpxzc3BLKkk60I8TLv37HevB91iU93Dmbp07vHW9jV1HRKhh4y6GWn93EfilCMmcMVps/nD09t5YN1ujxYWMvq6YdsTxu51OGoaTVVuV0SscjOxfbXUNEbTCW8skKtLnCWsE9fsmjK54cyW2mnm0UtB9ypCh+GF1GvbV0vFOFPwJxF6yLARepZR5RfecTTzG2v44p/WsGd/3JOlhYptj5soaLh0O0SvFz0T21dL0gkv+D9gIYVcXeIsYZ241tVqBLGwyP1z1yZaMT0XdJcGs1iqp5jH4f4OO5uzNxfKhYJC8/sWgvcDEXQn9TOhLzb0ppAhJUUF3HDJYuJ9g/zTHS8yOBiRNHOubHrIjBGdsWz4Y5KCHpHUdCa2rxZpXQsvNlrLZQ8dwjtxzQvbV0tJpTl35CL0RKr7wDBCGmvxvgc9uZZJo09+8wERdCdZVro7mTOxiq+dP5fHN7by349udnlhIWPjSphxMpRUDH9M0oAlIqKXTLlnkNIUc5nwkm/KPawT17ywfXXiZS/6QL+pbXBrFrqlfJRUd+ce73vQLSFxixNBd5JFL3o6PnDCNM6ZP4Xv3/8qa3d0uLasUNGxE1o2jLx/DuYPqaAoehF6pil3iM7PNpbIdRa6pbweeg9428KVC11t3vSgW7zsRXfbx91SUJAwl0kjpH7ZvlpGa6HzCRF0J6PMRR8NpRTffe8CJlaXcs1tLxDrCekYxnyw7WrD9Z9bCgqhemp0RM+mWTOJ0MvrTYujpNzDR6wFSmuN13cuhNUtzsuUO3gboXth+2oZzi3O2r563YOeXEdiQMvgoD/XGwYRdCclFeYXIEdBB6irKOFHFy9ia2uMb957GLaybXrQDHSYPG/0Y6PUi25T7pm86STNZSTlHjpiLfkVQoVV0D1PuTeaMapxDzKLngr6MKluv3rQnesY7At89K4IeipZ9qKn4+Q54/nU8jncvvoN7lvroVmD3wwOwOaHTLo9k1aQKNm/xttNZJdqYzscUfrZxhK52r5awjhxrb/X7EF7HaGDN1knm3J3uw8dho/Qrcj7JujhMJcRQU+lfmZORXGpfP7tR7GwqZYv/WkNb7Z357+uMPDmiyZyGW3/3FKdEL0omMt0t0N5FhFEbZOk3MNIbG/u++cwFAWHKUL3cjCLxctedK8j9FiaVLdftq/OdUDg++gi6KnUzzC/1HkWxRQXmla2gUHN529/kYHDoZVt00pAwZwzMju+psFMIQo4DZURmcxCd1LTCJ27TQWvEB5ize5E6GESdGvO5HWVO3gzF91rQR/sP/T/K5ly97HK3XndgBBBT6V+pimmcOEXe+aESr5xwXye3tLGTY9syn9tQbPpQZi6MPMIKErV4PEMRqc6qWkwvyedY8QdMAoM9JtUeV6CHsKJa17avlqqJpuuFE8jdI9S7nBoqjvWnLB99eCa2azDZ0TQU0lWuuefdgd435JGzl/YwI/+9hovbA/RXX+2xDvgjWdGdodLJdmvHQFB727PzFTGIuYy4aO7DdD5CXppteltDlOE7kfKvaAwMXTIC0H3cg/dRsYpQtrZ7I/tq6W0xphtiaCHjDx70VNRSvGtC+czpaaMz972Ip1RbWXbssrYnWa6fw7Rsn/NJeUOUukeJvI1lQEjAOX14SqK83IWuhOvetHjHUbwMi04zYbhUt1+2b5alApFL7oIeio1DVBQ7JqgA9SWF/Oflyxix74uvrriZdfO6ysbV0JJFTSdmPlrqqcAKvwRutaJlHs2gh6h7YSxghuCDuGbuOblLHQnXvWie2H7ahk25d7iX0Gccy0SoYeMgkKom+ZKpbuTE2aO46ozj+TPz+9kxYsRiFidaG0K4madBkUlmb+usNjctYY9Qu/rNpPhstlDL6s1NziScg8P+Q5msYRt4lr3PmNkVFzm7XVqm8zfqttTBG2E7gUlVebfJl3K3a+WNYtE6CHFhV70dFxz5hEsmV7Hv971Mm+0dbl+fs9o2wzt27NLt1ui0K+dje2rRcxlwkcyQs+jbQ3CN3HNa9tXS22T2VY74HKhZ89+7yJ0pQ7tRR8cgK69AQj6pOFns/uECHo6PBL0okQrG8Dnb3+R/oFgbQIzZuNK83i4CnrS9jXL8Y5R+NnGEp3NplI73zGd5fVDzoFhoLvNmznoqXjVix5v907Q4VC3OL9tX53riO0NtJVVBD0ddTPMm7wHNojTxlXwrffMZ/W2ffz0oY2un98TNq00Nznj52T/2ppG2B9yt7zuHCJ0MHaZknIPD7EWqJhghnbkQ8W4kBXFtXpb4W7xqhfdyz10ODRC97sHPbmOiYA22YGA8FTQlVJnK6VeVUptVEp9aZhjLlZKrVdKrVNK/Y+X68mYZKW7u/volgsWNfKexY3cuPJ1Vm8N0RtHOvp7Ycujow9jGY6aBuMR3XPA3XW5SXIWepZRUE2jiQz6e91fk5A9sb3ujMssr4O+GPT35H8uN/B6MIvFdm64HqF3eNODbkmN0JO2rz7NQneuw3n9APBM0JVShcDPgHOAucClSqm5KcccCVwHLNNazwM+59V6ssLl1rV0fPOCeTTWl/PZ215kfzxkoxqdvPG0eXPLpv/cSbK9K8RRenIWerYp90ZAi7lMWMh3MIslbG5x3T7toZfVmEjaTUEfHDQ3816n3Lvbhm6s/bZ9da4DAi2M8zJCPxHYqLXerLXuBW4DLkg55hPAz7TW+wC01sEPlAVj/wquV7o7qS4r5oZLFrN7f5x/vetldFj9zjetNPuSM9+a2+uj0Itu37hzSbmDpN3DQr6DWSzlIfJzHxwwN5x+pNzB/V703k6zn+11yh2GhDywlHvwbnFeCnoj4NyM2ZF4zslRwFFKqceVUk8ppc72cD2ZU15vfgE9jNABlkyv53NnHck9L73JXS+EVBQ2rjS957mmzKLQrx1vB1T2rTXJ7ENI/+/GGq6l3EM0ca27HdD+pNzB/V50L33cLamp7lizcW3zy/bVYjMCh2mEnglFwJHA6cClwH8rpQ4Jk5RSVyilViulVre0tPizsvqZnu2hO/n0GUdw4sxx/OvdL/PyTg9mEedDZwvsXgNH5FDdbqmeah7DLOjW9jXbYioR9PDQGzNbQ/m2rEG4Jq75YfvqpLbJ3aI4K+heimtqqruz2Tznl+2rpaTC/JyHqaDvBKY5vm5KPOdkB3CP1rpPa70FeA0j8Aehtb5Za71Ua7104kSf0ih1MzyP0AEKCxQ//YfF1FeU8NFbng3XqNXND5nHXAviwJhhVEwIt+jF23NrdSqrMX/AknIPHrdc4iBce+hdAQh6vB16Ot05n52F7meE7rft60FrCdYtzktBfxY4Uik1SylVAlwC3JNyzN2Y6Byl1ARMCn6zh2vKHDsXPXXOrgdMqinj15efQHfvAB+95VkOhKVIbuNKk+qbujC/84S9X7t7X/YFcZaahnDfrIwV3HKJg3BNXOv2YdKaE9uL7tbvtB8pd/t/biPjIGxfk2uZdHhG6FrrfuAq4H5gA3CH1nqdUuqbSql3Jw67H2hVSq0HHgL+RWvd6tWasqJ+prED9amC+egp1fz8siVsbO7kM//zAn1Bm84MDppxqXPOyH+oQk1jyAU9xwgdEj+bCHrguOUSB1BSaeY5hCJC92EWuhO3e9H9EPSiEnPDIxG6t3voWuv7tNZHaa3naK2/nXjuq1rrexKfa631P2mt52qtF2itb/NyPVlhK919SLtb3nrkRL79nvmseq2Fr65YF2zl+56XTXFJPul2S9ij2GxnoTsRc5lw4GarUpgmrvkxC91JUtBdKoyL+5Byh0Qv+m6H7avPPegHreMwjNAjT/0s8+ijoAN84ITpfPr0OfzvM9v5xaoAdx82PWgec7F7TaVmqkkd9oWoPsBJXin3RnPjExYTkrGKmxE6hGfiWnebyRaUVvtzvaopZh68a4LuQ1EcDLnFBWX76lxHTwf0xQO5vAj6cNROA5Qvle6pfOEdR3PecVO5/q+v8Jc1ARmybFoJk+YaMc6XZDV4CNPuWuefcgc4EGLjnLFAbC+UVENxuTvnK68Ph6B3tZmbC78qtguLTEbNNUFvN9PQspnSmAvWLS6oHnTnOiCwIS0i6MNRVGLerH2O0AEKChQ/uGghS2fU8/k7XuS5bT6/sfTGYPtT7kTnEO5e9N5OM2Eqn5Q7SNo9aDqb3YvOITwT17pa/Uu3W9zsRffax91iI3S7fx1YhB6sW5wI+kh4NHUtE8qKC7n5w0tpqC3jE79bzbbWmH8X3/qYKQjM1e41lTBH6LnavlrC/LONJdxyibOEJULv3udfQZylptG9orie/f4YvFRNhr4uM+rZfh0ENjMQUGGcCPpI1M/w1P51NMZVlvCbfzyRQa35x1uepb3LpyEgmx6EojKYfoo750uay4Qwis3V9tWSFHSZix4obrnEWSpCVBTnt6DXNpmMkxstu75F6AkB3/Ny4uuAU+4i6CGkfqbZGw2wmGvWhEr++8NL2dHWzRW/f46e/gHvL7pxJcxYZkxh3KC0yvxRhzGKjecZodufTVLuweLWYBZLeT30dwdfyNnt06Q1J7VNMNjnzj6wnyl3gN0vB2P7akntifcZEfSRsFPX2rcHuowTZo7j+xcdxzNb2vjSn9Z6287Wvh1aX3cv3W4Jay96MuWe4x46hPdnGysMDppWJbdT7hBs2l1r/2ahO7HmMm7so/sdoTevN+Lut+2rpbDYTMaTCD2E1Nle9ODS7pYLFjXyhXccxV0v7OTHf3/duwttXGke3eg/dxLWXnQboeeacoeEoEvKPTC69yValdwU9BD4ufccgMH+YCJ0cGcfPb7f21noFivofV1D0XpQBNiLLoI+Ej7MRc+Gz5xxBBcvbeLGla9z53MeCcimB41ATTza3fPWNISztcu+YeeacodEm08Ib1bGCm73oEM4Jq4lB7P4MAvdiVvmMlr7F6GX15sxzxBchbulKjj7VxH0kaiaBEXloRF0pRTffs8Clh0xnuv+vIYnNu119wID/bD5EWP36nbKqqbR/JL3+1TYlynd7cZIo6Qq93PUNpmUb0BmEmMeu9fralFcCCJ0vwezWMpqTU9/voLe12324v0Q9IKCISEPqiDOYnviA0AEfSSUCrzSPZXiwgJ+/sHjmTWhkk/+/jk2Nh9w7+Q7nzMuR26n2yHRi65988bPGGv7ms8NTNJcRvbRA8HNSWuWMOyh+z2YxaKUO73ofvi4O7Gp9qAj9MqJxt8iAETQRyPAXvThqC0v5teXn0BZcSGX/+ZZWg64ZDu6aSWoAph9ujvncxJWcxk7Cz0f7M8mafdgcHPSmiUME9eCitDBnbnodnSqXxXndh89qB50y9u/CdcGY9stgj4a9TNNUVyQg1LS0FRfwa8+spTWzl4+/rvVdPe60M722v9BwxJv3kCS/dohE73uffkVxMHQnmPYblbGCrEWcyPqZiRbXG7an0KRcvd5Dx1cjtDz/PvKlKqQpNzznU6Zz6UDu3JUqJsBvQfCYTKRwnFNddxwySLW7Gjn87e/yOBgHjcdLa/Crpdg/nvdW6CTsEbocRcjdKl0D4ZYC1RMMPuobhGGiWvdbYDyL2XtpLbJtMz1duV+Dt9T7onIPOiUe4CIoI9GyCrdU3nHvCn827vm8n/rdvO1e9bRn+sc9TV3mChn/vvcXaCltMYUnoVN0LvzGJ1qKak0UYik3IPBbZc4S9AT17razM1mEBGf7UXPJ6MWlKAHnXIPkKKgFxB6kuYyW6Hp+CBXMiwfPXUWu/fHuXnVZl7bc4CfXLqYSTVZuLwNDsLaO8zeefUUbxapVDh70d1IuYOJaMJ2szJWiLW427JmCdrPPYjBLBZnL/qEI3M7R1LQfdpDn/9eGOiB8XP8uV4IkQh9NOqmm8eQRuiWL597LD+8aCFrdnRw7o2P8ujrLZm/+I2njUPccR/wboGQEPQQid7goHnTyTflDmIuEySdzd5E6EELendbMPvn4E4vut8ReuUEOOXq4FziQoAI+miUVpk3i5ALOsD7jm/inquWUV9Rwod//Qw/euBVBjLZV19zm5lZfMx53i4wbBapPfsBnX/KHcRcJki8SrkHLehBDGax1DQAKn9BLywxg54EX8hI0JVSlUqpgsTnRyml3q2UKvZ2aSHCVrpHgCMnV7PiqmW8b0kTNz64kct++TTN+0cwPOnvgXV3GTEvzcNcJROqp8KB3cbAJgy4YftqqW00EVXQwzzGGn3dpmjVi5R7xTgjqkF1uHTvCy7lXlhs/l7zFfTSmjEdMftNphH6KqBMKdUIPAB8CLjFq0WFjroZkYjQLRUlRfzgooV8//3H8cIb+zj3xsd4fOMwrnKvP2D+8LxOt4O569cD7kxxcgM3bF8tNdK6Fgi2B90L/+7yerMnG9RNWhCDWZzk24vesz+YCv0xTKaCrrTWXcB7gZ9rrS8C5nm3rJBRP9PcqYYlssyQi5ZO456rTqWuopjLfvU0P/7ba4em4NfcbtKVs0/3fkHJXvSQiF63ixF60lxG9tF9xQuXOEvSLS6A1rW+uBk0Erig51nlLoLuKxkLulLqZOCDwF8SzwXXPe839TNNZOlV0dNAn5lK5AFHTa7mnquW8Z7Fjdyw8nU+9KunaT6QSMF374PX7of574dCHxoekv3aIdlrjrswOtUi5jLB4IVLnCXIiWtB2b46seYyuW45iKD7TqaC/jngOuAurfU6pdRs4CHvlhUy6u0Y1a3enH/lN+CnS6E35snpK0qK+NHFi/iP9x/H89v3ce4Nj/HExr2wfgUM9MJxF3ty3UMIa4TuSspdzGUCwYtJa5YgJ64FaftqqZ1mthxiOQ6B8mt0qpAkI0HXWj+itX631vp7ieK4vVrrazxeW3jw0lxmcNCYunTugRdudf/8Di5eOo0VnzmV2vIiLvvV0+x45LfoCUdBw2JPr5ukYpyx0wxLhG4jLzdS7sXlJpqSSnd/8WLSmiXIiWtdreYx6Agdct9HlwjddzKtcv8fpVSNUqoSeBlYr5T6F2+XFiJqGs2sXS8q3d942oh5SRU8+VPP9+mPnlLNPVedyuVzC2ja/zx/7D2Flk6fRpomzWVCEqHH201bTXG5O+erDVlb3lggtte0XJZUun/uICeuBTUL3Um+vegi6L6Tacp9rtZ6P3Ah8FdgFqbSfWxQUGjST15E6OtXmKj1XT8y5i7r73b/GilUlhbxbzPWAfCLtiWce+OjPLmp1fPrAuHqRbe2r2611dQ0hif7MFaItXgTnUOwRXGhSLnnIej9vdDfLYLuM5kKenGi7/xC4B6tdR8QrvFjXuPFGNXBQSPoR7wNFlwE44+EJ270vu9Va9Sa22H6yfzsqvdQXVbEB3/5FD9Z+Xp+A14yIWwRupuToGoapcrdb7wU9OJyKCofu0Vx5fVQXJnb73RydKoIup9kKui/ALYClcAqpdQMwJuy7LBSPwPaXU6571wNB96EuReYSVGnXG0mnm15xN3rpLLrJdj7Ghx3McdMqeHeq07l3Qsb+OHfXuMjv3mGfTEPU/A1DXBgl7mZCZrufe4UxFlqG81NgkfFjUIavBR0SExcC2IPvc1swxWV+H9ti1K596L7bfsqAJkXxd2otW7UWp+rDduAMzxeW7ion2kKVdxsL1u/wuzhHn22+fq4D5jRf4/f6N410rHmDigohrkXAiYF/+MPLOK7713A05vbOO8nj7F2R4c3165pNJX1XT6l+Eei24MIHcKTgRgLxPZ6U+FuCWriWpC2r05qc8w6JV0YRdD9JNOiuFql1I+UUqsTHz/EROtjh+TUNZeidK2NoM85c+iXvrgMTvokbFoJu1925zqpDPTDy3fCUe886A1DKcWlJ07nj1eejNaa9930BHc8m4dL1HCEqRc97sLoVCdW0CXt7g+Dg/5E6EHsoXe3BZtut9he9GyRCD0QMk25/xo4AFyc+NgP/MarRYWSOtuL7pKgv/m8SWXNveDg50/4mNm3esKjKH3Lw6aqfhir14XT6rj36lM5YWY91/5pDdf9eS09/QPuXT8p6CGIYrtdmrRmqZUI3Vfi7TDY74Ogj+UIfZppDewbYR5EOmwmU/rQfSVTQZ+jtf6a1npz4uMbwGwvFxY63O5FX3e3aYU7+pyDny+vh+M/Ai//yZtIb80d5q75yHcMe8j4qlJ+99GT+NTpc/jfZ7Zz8S+e4s12l/ysk2npgCP0wQHo6XA35V4douzDWMBLlzhLYIIe4Cx0J0kHxCx/pyVCD4RMBb1bKXWq/UIptQwYW2OlyutNxaYbKXebbp99evqU71s+ZY556r/yv5aTnk7YcK/ZOy8eeaRhYYHii2cfw02XHc+m5k7O+0nCXS5fKieaG5mgo1j7huNmyr24DComiKD7hXWJq/JQ0IOauBbkLHQnubauiaAH9S7OQwAAIABJREFUQqaCfiXwM6XUVqXUVuCnwCc9W1UYUQrqp7sToe96ydwYpKbbLXXTYf774LlbhuxJ3eDV+8zAhywmq509fworrlrG+MoSLvvV09z0yCZ0Pm9uBQUmkg1a0N2ctOakttFdt7ieA/DUTZEbDOQLXg5msZTXw2Cfv50LA/1GEEORcs9D0FWBqdQXfCPTKveXtNYLgeOA47TWi4EzPV1ZGHGrF339ClCFZgb5cCy7Bno7YfWv87+eZc3tZk9s+slZvWzOxCru/swyzpk/lev/+gqfuvV5DsT7cl9HTUPwUaybk9acuG0u8/D18H9fhM0Pu3fOwwW/BB38LYxLDg0KgaDnWujZs19moQdAphE6AFrr/QnHOIB/8mA94aZ+pnFzy6eHWmvjBjfrtJHvwKcsgNlnwNM3QX9P7tezdDbDpgeNgU1BVv/tgGlt++k/LOYr5x7L3zbs4cKfPc7G5gO5rSUM5jJxjyJ0NwW9fTs8c7P5/M3n3Tnn4URsL6C8Fb4gJq7Zls4wROhFpVA1OftedLF9DYTs39mHGHu3XnUzoD9uqsRzZc/L0LZ5+HS7k2WfNddac0fu17OsvRP0YFbp9lSUUnzitNnc+rGT6Oju44KfPs59a3dlfyIr6H7vSzpJTlpzcQ8dEuYyHaZeIV8e+g6goHoq7BRBP4RYc2Lgj4ejf4OYuBYG21cnubSuiaAHQj6CPrasXwHqZ5nHfNLu61eYvaWR0u2W2aebSP2JG/N3VltzO0xdCJOOye88wMlzxnPv1ady1JRqPv2H5/nufRvoH8hifTUNxuc5iOphS9zDlDvkH6Xvfhleug3eciXMWm4i9CBvgMKI1z3oEMzEtTDYvjoRQY8MIwq6UuqAUmp/mo8DQINPawwP+ZrLaG3a1WaemlllrlJwymeNTevr9+d2TYCWV2HXi3lF56lMrS3ntivewofeMoNfrNrMh371DHs7M9waCEMvuldFcW4J+spvmB7eUz8PjUtMpibobYqwEdvrvaAHMXEtdBH6NCPo2dxQxveLoAfAiIKuta7WWtek+ajWWnuY5wopddMAlXuE3vIKtL6eWbrdMu9CqJ2enx3smjtMVmD++3I/RxpKiwr59wvn88OLFvL89n2c/5PHeGF7Bm98YbBI7W43gzeKSt09rzWXyafSfcuj8PoD8NZ/NoLSsMQ8L/voB+NHhB5EUVwYZqE7qW0yGbVsth0kQg+EfFLuY4+iUhNd5iro6+4GFBxzfuavKSyGkz8N25+AN57N/pqDg7D2DpO+r56S/esz4H3HN/GnT51CUaHiA794ip8++Dr7R6qCD4P9q9u2r5bqqeYx159Na/j718xNz4lXmOemLDC9+7KPfjB+CHpRqXFudLN9dDS628xIZS9mvOdCsnUti8I4EfRAEEHPlvqZudu/rl8BM06B6snZvW7xh8xe7xM3ZH/NN5421dIuptvTMb+xlnuvOpXTj57IDx54jWXffZDr//oKzfvTWEZWTTYZg6AjdLfT7WAEoHJS7oK+4R7Y+Ryc8WUzvhOMYc2kuRKhO+nvNaLhtaBDYuKaz0VxFePC0/KVbS/64AD0HhBBDwAR9Gypm5FbhN7yKrRsyC7dbimtghM+Dhv+H7Ruyu61a26D4orMivDypK6ihJs/vJT/d/WpnHb0RG5etYlTv/cQ1/15LVv3Oow5CouNqAct6G4XxFlqGnJLuQ/0wcpvwsRjYeGlB3+vcQm8+YIUxlm6rO2rh5PWLBU+27927wtPuh3MHjpkLujJWeji4+43IujZUj/TzDDPdljB+nvM47Hvzu26J33SjFp94ieZv6a/B9bdZcS81D/HpvmNtfzsH5bw4D+fzvuXNvGn53dw5g8f5jN/eH5oLGtNg/l3DIq4RxE6mIgmlwj9hd9D60Z429egoPDg7zUsMRFp22Z31hh1OpvNo18Rut976GEpiANjQVtUBvszFHSxfQ0MEfRsqU9MXcvWaGH93TDtLVAzNbfrVk2ChZfAi/8DnS2Zveb1B8wfl8fp9uGYOaGS77xnAY998Qw+uXwOq15r4fyfPsZlv3yavQUT0EFH6F7soUPCXCbLn603Zlzhpp8MR5196PcbbWHcC/mv73DAj8EslnKfZ6KHZdKaRansWtdE0ANDBD1bcpm6tnejMZTJJd3u5JSrYaB3yD1sNNbcbt7wZp+e33XzZFJ1GV88+xgev+5MvnTOMby65wD3boGuvdu5b+0uBgYDSCPHPU659+wfGiGZCU/93LSmve0b6fdOJx5roiQpjDP4MZjF4vfEtbDMQncigh4JRNCzJRdB37DCPB6bRXV7OiYcCce8C57979GHRXTvg9fuh/nv99ZJKwtqyoq5cvkcHr32DBbNn0el7uLaPzzG2370CP/7zHZ3566PxECf8cn3MuUOmafdY63w2A1ma2T6SemPKSyCKcdJYZzFDx93S0UiQvejfkHr8EXokKWgyyz0oBBBz5aqySZSykbQ16+AxqWJPvY8OeUa8+bywq2jX3OgF467OP9rukxZcSGL580D4GfnT6WqtIjr/ryWU7/3EDc9sim/wS+Z4JXtqyVbc5lHfwB9MTjrqyMf17jETOqTyWtG0IvK/JnmVV4Pg/1m8p3XxDtAD4QwQp8GB3ab7oLRkAg9METQs0Wp7Crd27aYN+F5F7pz/eknmb34J3868hv7mjtg/JHQsNid67pNohd9+ZRe7rlqGX/4+EkcPbma6//6Cqd890FuemSTd6l4r2xfLbbPPpNK931b4Zn/hsWXwcSjRz62YYkZf7v31byXGHmsS5wfrV1+msvYa4RhFrqT2iZAZ1bIKoIeGJ4KulLqbKXUq0qpjUqpL6X5/uVKqRal1IuJj497uR7XqJ+Zuf3reptuz7G6PR3LrjG95evvTv/9fdtg2+Ow8APh6WVNxWH/qpRi2RETuPXjJ3HvVady4qxxXP/XV3j/TU+wqcWFISepeGX7aqlpAFRmEfpD3zEV7adfN/qxtjAuiH30vm5ofsX/6w5HrMWfljXwd+JaV+IaYUy5Q2Zpd2lbCwzPBF0pVQj8DDgHmAtcqpSam+bQ27XWixIfv/RqPa5SP8OIZiZ7autXmCjZVse7wVHnmOj7iRvTr2HtH83jgovcu6bbJB3VDr7jX9BUyy8/spQbLlnE5pYY597wKL98dDODbkbrXs1CtyT77EcR9F1rTCblLZ8ausEZiXFzzJtkEPvoj/0n/OKt/qSdMyHW7M/+Ofg7cS1sg1ks2fSixzugpPrQ1kvBc7yM0E8ENmqtN2ute4HbgDzLvENC/UxzFzraHXv7dvPmm291eyoFBabifddLsGXVwd/T2lS3Tz95qIAvjBSVmjfkNKKnlOKCRY387fOnceoRE/jWXzZwyc1Psa11lELATIl7vIcOmZnLrPyGSUsu+1xm5ywogIZFwUTom1aamozmDf5fOx1+DGax+DlxLUyz0J0kt5EyaNcV29fA8FLQGwHn//6OxHOpvE8ptUYpdadSyoWqMR/ItNLdmsm4LehgessrJ8HjKXawu14y09lCWAx3CHYu+jBMqinjlx9Zyg8uWsiG3fs5+z8f5XdPbs0/Wk8WxXkUoYMZ0jJShL75Edj4dzjtC9mto2EJ7FlnTIP8Ir5/6CZiz8v+XXc4tPbHx93i58S1sE1asxSXQ8WEzCN0EfRACLoo7l5gptb6OOBvwG/THaSUukIptVoptbqlJUNTFS+pS6TPRxX0FabVaNxs99dQXGbc4zatNLOzLWvugIJimOtSEZ6XZGDAopTi/cc38cDnT+OEWeP46op1XParp3mjrSv369o3Zi/fdGqaTISebkskOYClCU74RHbnbVwCg30H/597zfYnTeU1mJuJoOnZb7IFh6Ogd7eZOQelIRTETFvX4h3SshYQXgr6TsAZcTclnkuitW7VWttQ45fA8elOpLW+WWu9VGu9dOJEn/6IR6I+A0Hv2AE7nvEmOrec8DEzCcrawQ70w8t3wlHvDN8dfjqqp2bc2jW1tpzf/uMJXP/eBazZ0cHZ/7mK/3l6OzqX3uB4u2l3KizO/rWZUtNgWtFsxa+T9Xcbx7czv2JuzLIhiFGqW1YZ2+Gpi8Ih6H66xIH5PSmp9i9CL6832ythIytBD+ENyRjAy9+aZ4EjlVKzlFIlwCXAPc4DlFJOH9R3AyHZoBuF0mqTfhqp0n3DvebRy0i5vB6O/4gR8Y4dsOVh4zYWkNVr1tQ0mDfJ3syibaUUl5w4nf/73FtZOK2OL9+1lg//+hnebO/O7rpe2r5aaofpRR/og5X/bqan5fL/VNtkhMxPC9gtj8C0k6BpqRH0oAfEJE1lfKpyB/8mrnW1hq8gzlI7zbzPjPb/L4IeGJ4Juta6H7gKuB8j1Hdordcppb6plLI9XNcopdYppV4CrgEu92o9rlM/Si/6+hUwaR5MOMLbdbzlU+YP7Kn/Mun2slo48h3eXtMtrAHLgV1ZvaypvoJbP3YS/37BPFZv3cc7f7yKP65+I/No3UvbV0uNdYtL2VJ4/nfQtgne9vXcqoCVMlG6X4VxXW2wey3MOg0mzzPp7mznGLiNny5xFr8mrnW3ha8H3VLbZBwWbVHpcIigB4aneR2t9X1a66O01nO01t9OPPdVrfU9ic+v01rP01ov1FqfobUOUaPrKNTPHF7Q9++C7U+5ZyYzEnXTYf774LlbzHjVuRdmn8YNimQvevaTyQoKFB86eSb3f+40jm2o4V/uXMPHf7uaPenmr6fSvc/bgjhwVAU7UpQ9nWYAy4xl+d10NS4x5jI9HvTop7L1UfM46zSYPN98vme999cdCT8nrVn8mrjWtS+822WZ9KJrbW76pAc9EEK4URMR6meaX+x0bm0b7gW0t/vnTpZdY+6c+2LRSbeDwyI196lr08dXcNsn3sJXz5vL45v28o4fr+LuF3aOHK13t3sfQVRPMcVNzpuVp/7L9E8PN4AlUxoWgx40HQ1es2WVqdNoWAKTjjXPBV3pHvNxFrrFr4lrYRzMYsmkF7230/xuSoQeCCLouVI3w/g7p4su16+AiceMbuXpFlMWwBFvh/pZpv88KthRsrnMDndQUKD46KmzuO+atzJnYiWfu/1Frrz1ueH31uM+7KEnzWUSNyuxvabF8NjzYdoJ+Z3bz8K4LatgxslQVGJqR+pnBl8YF2sx/39eFjWm4tfEta5Wk94PI5lE6GL7Gigi6LkyXC96Z7OxXfUrOrdc9Bv4+N/DWR07HCWVZi/bpbnosydW8ccrT+HL5x7DQ6+2sPz7D3HtnS+xOdU+trvd+5Q7mAyEffNb9QPjw37W1/I/b9VEEy15vY++f5fxNJh12tBzk+eHQ9D9TLfD0MS1wUHvrtHbBf3x8O6hV0403Q4j1VCIoAdKhN79Q4YV9NRKd7/T7ZbSan9TkG5R02iEwyUKCxRXnDaHB/95Of9w4nRWvPgmZ/3oET79h+d4eWcH9MWhv9v7ojhImMu8aW76nv0lLPmQGYHrBg2LvY/QnfvnlklzofV18+8YFH66xFnK600q2fqUe0FYbV8tBQUH36SmQ0anBooIeq7UNIIqPDRCX7/C+KxPSmdbLxxCTUPeKfd0NNVX8I0L5vPYF8/kU8vn8OhreznvJ49x9S0PAaC9TrlD4mZlJzz4LSgoguWHzCfKncYl5nfPy1aqLY+YSGvKcUPPTZ5nhK0lwPpVPwezWPyYuBZWlzgno/WiS4QeKCLouVJYZOabOwU9ttdENXMvCO+Us7Axiv1rvkysLuXas4/h8evO5F/eeTS7d5tswI8ea2blhj25GdNkSk2jSbOv/SOc/OmhmgE38GMffcsqmPnWg9vrkpXuAabdg0i5+zFxLewROgz1og9HUtB9yIAJhyCCng91ialrllf+n4le/E63R5maRlP53d/r7WXKivnMGUdw6wdNoeKOrlI+9tvVnHPDo6x4cSf9Ax7sjVpzmfJ6WPZZd8/dsMg87vTIYGbfVjNcyJluBxg3C4rKgxP0gT4jfEGk3GFovKkXJAezhHQPHUyEfmCX+X9Ih0TogSKCng+pvejrV5hK8ykLglpR9LD92lmay+RKaZ/Z4/v+h0/jhxctpH9Q89nbXuTMHz7CH57eRrxvwL2L1c8yj2/9gvtvcGW1ZmvHqwjdTvGbtfzg5wsKTftac0CCbkUviKI48DZCj0rKXQ8O//fakxB06UMPBBH0fKifCV17jcFHV5uZoCXp9uxImst4l3Y/iMSktaLKcbzv+CYe+Nxp/OJDx1NfUcxX7nqZ0/7jIW5etYnOnjT+AtkydSF89AF4y6fzP1c6Gpd4ZwG7ZZWZ5peu9XLyvOAi9CBc4sCfAS323H7Ud+RKsnVtmLqXeIfJ4BSV+LcmIYkIej7YIS3t2+DV+8xEKj/c4Q4naobxPPcKa1uZ2OMrKFC8c94U7v7MMv7w8ZM4cnIV37nvFZZd/yA/euBVunrzEHalYPpJ3rUSNiwxkZKLXQKAcfvassqk29PdnE6eb4TVOrb5SVCCbveEvS6KK63xt78+W0YzlxHb10ARQc8HZy/6uruNDevURUGuKHr4HqGnH52qlGLZERP4w8ffwt2fWcZJs8Zx44Mbufw3z+Yn6l7S6FFh3N7XzJCf1P1zy+REB0cQjnF+T1qzFBaZkaaeptxbw51uh6G6kOF60UXQA0UEPR/sHumul2Dzw5Juz4WyGjOa0s+Ue2ntiINRFk2r4+YPL+Unly5m9dY2PnbLarp7Xdxbd4spC0w7nNsGM8n982EEfdI88xhE2j2ISWuW8jpv2wTDbPtqKak0axw2Qt8vPegBIoKeD+X1RoxW/xoG+7wdlXo441EvelrimbvEnb+wgR9evJCntrRyxe9Xu1sw5wbF5aZAze0IfcsjUDt9KAOVSuV4M8s+CEHvbIaC4mCiwAqP/dy72sIfocPIvegSoQeKCHo+KGXe9GItZlxm4/FBryiaeNyLfhBZ2r6+Z3ET33//Qh7buJdP/v45evpDJuoNi01hnFv99IODsOXR4ffPLZPnBZdyr5wYTCbM64lrUYjQYeRedBH0QBFBzxdbGCfp9tzxVdD3ZW168f7jm7j+vQt45LUWPnXr8/T2e+jnnS0NS8zPtG+LO+fbs9ZkMYZLt1smz4OWV9NPG/SS5vUwbra/17R4PXGtK8Sz0J2MFKH37BdBDxAR9HyxaUkxk8mdmgbo3O2POPz/9u47vsry/v/468oOkISVBBKmJKwgywCyQUXFhYoDW6u1Wqs/3Nu232qtbd2tqyq2ttq6N+7FHpEhyN4jYe+dkHX9/rjPgYABMs6d+4z38/HwcXLu3Oc+F/fjmM+51udTjSH3ii7v1YqHL+zCuCVbGP3GD5S4kYimJvwL4wI1j35o/nzg8c9L7wJlxbB9RWDetyqK9zvrVVr1qbv3rMjNimtlJU4wDJUh94O7DyeR8bPWOaY96J5RQK+tLhdD7+uhRS1LYkay5AwnWcW+ze6/V2HNS6deeWpr/nhBDt8s2swtb84JjqCe1hliEgK3H331JCdhjX/3wbGk+xfG1eGw+/rZztZQr0oE12vsfH7KXZh2CYU96H7H2oteWuR8yVMP3TMK6LWVeQqc83holS0NNof2ors87G6t00OvRZ7pq/u14f/O68wXCzZx+9tz3UkZWx3Rsc5q90D00MtKYO20Ew+3gxP0o2LrdmFcfh5gvPvynNgIsD/tmQZCKGSJ8zvWXnSlffWcopB479BedJdXupcccHoQtayFfu2Atvz2nI58Om8jd777I2XlLhZ4qYqMns5QdG17jhvmQPG+qgX0mDho2r7uA3pa57qpZV8ZN7PFhUIed79j7UU/VDpVAd0rCujivbrqofvSvgZiWPP6Qe24+6wOfDx3A3e/53FQz+wJJfudRWq1sXqi89jmBPPnfnWZAra8DApmeDd/Du5WXAuFSmt+DdKd/AfqoQcdBXTxXmIjZx7Y7R76UWlfa2v00CxuP6M9H/ywnvs/mEe5V0H9UCnVWs6jr54E6Sc7+8yrIj0H9qxzd+W335ZFULzXu/lzqFBxzYWta6E05B4V7YyqKaAHHQV08Z4xzh8ItyuuHeqhB27I9tYzsrnltCzembWO3320wJug3iTLWVlcmwQzJUWQ/33Vhtv9DtVGX1Tz962q/DznsaWHPXQ3K66FUg8dKt+LfugLswK6V2K8boAI4Ay7uz7k7s/jHtg52NuHtaek3PLChJXERBkeGpGDqcucBFFRTmW32iyMWzcDyg5WM6D7VrpvWQRt+tf8vasiPw+SMpx6CV5xew49JhHi6gX+2m5IaQFrpx957KBvDl3b1jyjgC7BITkD8qef+LzaKArcHHpFxhjuOasDZeWWMZNWERNt+MN5nes2qGf2hLwXoLS4ZqUrV08CEw2t+1X9NUnNnB5lXWxdy89z5s+9TN6UkAIYd7LFHdgZGsPtfiktnCmy8rLDdRE05O45DblLcEjOcMqAlru4DcyFIXc/Ywz3D+/INf3b8O+pa/jL54uxgUrHWhUZPZ0V/DUNrqsnOWlkq1NYw5i6WRi3q8CZq/dy/hycwJXgUsW1UEn76pfSwskJsHfT4WNFu52tjLGJ3rUrwimgS3BIznQK3BzY5t57FO4EE+UU1HGBMU7P/Kq+rXl58moe/XJp3QX1jB7OY03m0Q/udZK2VGe43S89x5lDd/OLWMH3zqOX8+d+iY3cWxRXLwSSyvhVthfdn8ddKbA9o4AuwaEu9qIX7XL+4LiYBMgYw4Pn5/CzPq14ceJKnvpmWd0E9YatnD3M62uw0j0/D8pLax7QS/bDrjXVf21V5edBXIPDi/C85FbFtQPbQ2MPut+hbHEV9qKrdKrnFNAlOBwK6C4ujKtF2tfqiIoyPDyiC5fntuTZcSsY8fxUPp673t1UscY4w+416aGvngjRcTXrAafXQW30/DxokQvRQbDkx6187qE25O7PHVFZD108o4AuwaEuksvUMu1rdURFGf568cn8+aIu7Csq5da35jLosfG8OHEluw+UuPOmmT1h6xKniEl1rJ4ELXrXbIV1aifAuBfQi/bAloXQ8lR3rl9diY0DvyiuvNz5khBKi+ISkp3grYAeVBTQJTjUa+osqHFzyL1wZ52mDY2KMvy8T2u+vWMw/7o6l7ZN6/PIF0vo+8h3PDh2IWu3VzPwnkhGT6fIzcYfq/6aAztg47yaDbeD8yWgSTv3Vrqvm+n8m1oFS0B3oYd+cLfzbwylHjr8dC+6ArrngmAMSwRnXju5uftD7g1bu3f9Y4iKMpzeKZ3TO6WzcMNuXpmyhte/X8ur09cwrFM61w08iV5tGtV+m1vFUqpV3X62dipgax7QwRl23+RSQM/PcxYytsh15/rVldjICVxlpYGbAjiUJS6E5tDhp3XRD+7RHnSPqYcuwcPt5DJFdTOHfjw5GSk8eVk3pt57GqOHZDFzzQ4ue2k6FzwXgHn2BmmQ3KJ68+irJ0FsPadqYE2ld4Edq6o/1F8VBXlONbl4d3YmVJt/WDyQFddCKe1rRSktnO2Efuqhe04BXYJHUnP3htyt9S2K86hS11HSkhO466wOTLvvdP58URf2Fzvz7AMfreU8e2aP6uV0Xz3J2d9dk2Q0fuk5gIUtS2p+jcqUlcC6WcEzfw4VssUFcB491NK++qW0cKYfDu5zEhqVHKizNSpSOQV0CR7JGU4P3Y1tXgf3OokwguwPTmJctDPPfvtg/v3LXrRLOzzP/sDHC1izrZq93oyeTm+5KvO8ezc7i+hqM9wOTklTCPw8+qb5TpAIlvlzcKfi2qEeegjtQ4fDe9H3rD+c9lU9dE9pDl2CR3ImlBa5s+LXpbSvgRIVZRjaMY2hHdNYtGEPr0xdzZszCngtby1ndErnV/3bcupJjU88z55ZofJau9OOf+6ayc5jbQN6w9bOPvFAr3T3F2QJqoDuQj73UKqFXlHFvehRvlCifeieUg9dgoebyWVcTPsaaJ0zknni0m5MuW8oNw/NYvbanVzxch7Dn57MOzMLKCopO/aLm3d3HqtSqGX1RIhPcQq71EZUlNNLD3RAL8hzEub4PxfBoJ4LJVQLdzgBMdQWlB0K6OuUxz1IKKBL8HBzL3qAa6HXhbSkBO44swPT7juNx0Z2BeCe9+fR75FxPP7VEjbtLvrpixIbOuVUqzKPvnoStBlwuLhGbaTnOEPugZousdbpoQfT/Dm41EPf4Vw31FKmNmjmFPRRQA8aCugSPFztofv+AIdAD/1oCbHRXNarJV/cOpA3f30qua0b8Y8JKxnw6DhufnMOP+QfFVwyep64h75zLexcU/vhdr/0HOdLU6C+jO1cA/s2B9dwOzgjGiYq8IviQm1BHDjb9pIzFNCDiObQJXg0SHf+WLrRQy8M7jn0qjDG0LddE/q2a0LBjgO8Om0Nb88q4JMfN9CtZUN+1b8Nw7s0Jy6jB8x/x6mEldSs8osFav7cz59nfcsiSMms/fWCcf4cnOmFhIaB76GH2vy5n38vumqhBwX10CV4RMc4w3h7Ngb+2iE45H48LRvX4/fndSbv/tN5aEQOewtLuPWtuQx4dBzvbUx1TjpeL331JCc7X1qnwDQoPcAr3QvynN5waoDaF0iBrrh2YEfo7UH3S2nhLIpTDz0oKKBLcEnOcG9RXFQMxNUP/LU9VD8+hqv6tuHbOwbz72t60bF5Mr+fEU2pjeLbb79g0YY9P32RtU5AbzsocPO2CSnONqZALYzLz4OWvV2tjFdjga64VrgjdEeOUlrA7vUVShM38LpFEU1D7hJckjNg69LAX7dwp9M7D7WFR1UUFWUY2iGNoR3SWLGlE1tfaUv81h8555nJ9GnbmGsHtGVY53Rn29v2FbB3Y+CG2/3ScwIT0A/scPbHn3xp7a/lhsRGsG9LYK5lbej30MtLnM9UfHJwfgGLILr7ElzcSv8aBGlf60p3FR/NAAAgAElEQVRWWhLNO/Wjf2I+vx3egXU7C7n+v7MZNSaPpZv2OtvVwJ2Avm0ZlB6s3XUKZjiPwTZ/7hfIimvF+6HsYOjOoSf7tq5tXqg96EFAAV2CS3IGFO91ymYGUhClfa0TmT2JKtrJ9SdHM/HuIfzlopNZunkv5zwzmUVTP6U8ORManxTY90zPgfJSJ6jXRkGeU3kvo2dg2hVoiY0OL7KsrVBN++rn34u+faXmz4OAAroEl0Nb1wLcS/cPuUeKjMMZ42Kio/hZn1aMv3MIo3IzabZzJp/tzebDueuxgUyz61/pXtth9/w8J9lNTeqz14XERs6q7rIA1LUP1cIsfv6Ajo2s/7+ClAK6BJdDyWUCvDCuKMJ66Ok5EB1/ROW1RvXj+HO/KBqbfaxscAq3v/0jl7+Ux+KNARoNadzOec/aBPTSg87q/GAdbofDwTcQvfRQ76EnpEBc0uGfxVMK6BJcXOuhR84cOgDRsU7Z0fVHZYxb5cyf3/Kra3jk4pNZvmUv5z07hQfHLmR3YS17nNExkNaxdgF9w1xnTjmYA3ogK66Fai10P2MO99K1B91zCugSXJKaO4+BDOjl5b5azRHUQwenUMvGuVBeIff76knQuB1RjVoyqncrxt81hCt6t+TV6Ws4/ckJvDd7HeXltRiGT+9Su4Be4Eso07JPza/htkCmfw31IXc4HNDVQ/ecAroEl5g4SGkFm+cH7poHdwM2sobcwZlHL94H25Y7z8tKYO3UI1a3N6wXx8MXnswnNw2gZeN63PXuj1z60nQWbthds/dM6wz7NsH+bTV7fX6eM3TfIK1mr68LgQzo/l5+KH/ZVEAPGq4GdGPM2caYpcaYFcaY+45z3khjjDXG5LrZHgkR7YbCygmBWXQEYZH2tUYOlVL1zaNvmOsE+Eq2q3XJTOH9G/rx2CVdWb1tP+c/O4UHPl5Q/WH49BznsSa9dH9BlmAebofDvelAZIs7sMMJhNEhnBJEAT1ouBbQjTHRwPPAcKAzcIUxpnMl5yUBtwLfu9UWCTHZw5yta/583rUVZmlfq6xJlpO5y58C1r//vM3ASk+PijJcltuS8XcO4cpTW/PfvLWc9sQE3plZUPVh+NqsdN+23OmxBntAD+iQ+/bQnT/3S2npPGofuufc7KH3BlZYa1dZa4uBt4ARlZz3J+BRoJJakBKR2g520rSu+CYw1wuhWugBFRXt1Ef399BXT4K0HGiQetyXpdSL5aERXRh70wBaN6nHPe/PY+SL01iwvgrD8A1SoX5azQL6ofnzIA/o8clO2dBALIoL1UprFTX0B/QI+/8rCLkZ0DOBggrP1/mOHWKM6Qm0tNZ+5mI7JNQkJEOrvrD828Bcz9+TisQ/OJk9YNN8OLgXCr6vVna4LpkpvHdDPx6/pCv52w8w4vmpPPvdcspO1Fv310avrvw8J7g1za7+a+uSMb7kMgFaFBfKC+LAWcB4zhOQdYbXLYl4ni2KM8ZEAU8Bd1bh3OuNMbOMMbO2bt3qfuPEe9nDYMtCpzRjbRVF6Bw6OAvjyoph9n+gtKja6V6jogyX5rZk3F1DOPfk5jz5zTKueDmPDbsKj/2i9BwnF3vF1fVV4Z8/D4V8+ymZsOQz2DDnxOceTzj00KOiofevITbB65ZEPDcD+nqgZYXnLXzH/JKALsAEY8wa4FRgbGUL46y1Y6y1udba3NTU4w8XSpjIPtN5XBGAXnqkDrnD4YVx0//hVMNq3a9Gl0lJjOXpUd154tJuLFi/m+FPT+bLBccoc5vexfnysGNV1d9g31bYsTL458/9RvzDSU/7ynBY+FHNrxPKtdAl6LgZ0GcC2caYtsaYOGAUMNb/S2vtbmttU2ttG2ttGyAPuMBaO8vFNkmoSO3oFH5YHoB59KJdTgaz2MTaXyvUNGzt9AD3bnDm02vxpcYYwyWntOCzWwbSukk9bvjfD9z/wXwKi4/qidekNnqozJ/7NesCvx7nPL57NUx83FmlXx2lxc6ug3oROHIkrnAtoFtrS4GbgK+AxcA71tqFxpiHjDEXuPW+EiaMgewzYNUE5w9fbRTujMzeOTj30d9LD1B1tbZN6/PeDf34zeCTeHNGPuc/N+XIuutNOziLxqqzMC4/z/nSldE9IG2sE0npcPWn0PVyGP8wvH8dlBxnKuJooZ72VYKOq3Po1trPrbXtrbXtrLV/9h37g7V2bCXnDlHvXI6QfabTgymo5fa1SEv7erSMwAZ0gLiYKO4f3on/XduH3YUlXPj8VP49dbVT7CU2wVnYVt2AntkTYuID1sY6EZsAF70Ep/8BFrwH/zkX9m6q2mvDIUucBBVlipPg1XaQM0+5/OvaXadoV2SucPfrehl0uwJa9w/4pQdkN+XLWwcyMLspf/xkEb/6z0y27TtYvZXuxQdg44+hM39+NGNg4J1w+f9gy2J4+TTn33MiB7Y7j5pDlwBRQJfgFZ8ErQOwfS2Sh9zB6S1f9KJrq5CbNIjnn1fn8scLcpi6cjvDn57M6ug2sCvfyaF/Iht+gPKS0Jk/P5ZO58OvvnR+fuVsWPzJ8c/XkLsEmAK6BLfsM2HrYthVcOJzj6UwAguz1DFjDFf3a8PHo/vTMDGWh2Y6f1pKNlZh2N2fEbBlbxdbWEead4Nfj3dy2r99JUx64tiL5TTkLgGmgC7BLWuY81ibrHFFET6HXoc6NU9m7E0D6NTN6W2Pee9TVm3dd/wX5ec5uxrCJbAlpcMvP4Uul8C4P8EH10NJJYkw1UOXAFNAl+CW2sGpvlbTYfeyUji4J7KH3OtYYlw091x2OiWxyaTuX855z07h3VkFzoK5o5WXQ8GM0J0/P5bYRBj5Tzjt9zD/HXj1PNi35chzDuyA2PpKyCIBo4Auwe2I7WsHq/96/xyuhtzrljHENu/ChRm76Noihbvfm8ctb839afW2rYud8rahPn9eGWNg0N1w2WuwaQGMGeqk4fULh7SvElQU0CX4ZQ2Dkv2QP736r43ktK9eS88hbttiXr+2D3ef1YHP52/k3GcmH1lr3T9/3qqPN22sC51HOIvlbDn86yxY/KlzvHCHPpcSUAroEvzaDoLouJpljYvktK9eS8+B4r1E7ylg9NAs3r2hL6VllpEvTOOjOb4s0Pl50CAdGrX1tq1uy+gO1493ppDevhKm/E09dAk4BXQJfvENnBzkNQnoRRFcac1rR9VG79mqEZ/cPICuLRpy29tzeeiTRdiCPKdaVygUZKmtpGZwzeeQcxF8+yCsm6E96BJQCugSGrLPhG1Lnb3N1aEeunfSOjmPFTLGpSbF8/p1fbimfxs+mzobsyuffc16edRAD8QmwiWvwJDfOs8bpHvbHgkrCugSGvzb16rbS/fXrNZcZd2Lb+AMpR+VMS42OooHzs/h2QHOIsdbpsTxY8EuL1roDWNgyL1w3Xcw4A6vWyNhRAFdQkPTbGjYqvoB3b8oTkPu3kjPgS2LKv1V76hllMcksiLqJC59aTrvzKpF8qBQ1CIXGqgctASOArqEBmOcYffVE6u3fa1wF8TWg5g499omx5aeA9tXVF6FrCCPqBa5fHTLEHq1acQ9783j/z5aQHFped23UyQMKKBL6MgaBiUHYO3Uqr+mMMILs3gtPcfZrrV1yZHHD+519mS36kvj+nG8ek1vfjPoJP6bt5afvZzHlj2VZFYTkeNSQJfQ0XagUzO7OlnjlPbVW0etdD9k3Swn0Pv2n8dER3H/OZ149ooeLNywh/OencLstTvquLEioU0BXUJHXH1o0796ed0Ld2mFu5catXGmPI4O6Pl5YKKgxZEFWc7vlsGHo/uREBvNqDF5/C9vbeUpY0XkJxTQJbRkDYNty2DnmqqdX7hTQ+5eiop2tq8dXRu9IA/SciAh+Scv6dgsmU9uGkD/rKb8/qMF3Pv+PIpKyuqowSKhSwFdQkv2mc5jVVe7F6mH7rn0HKeH7u9pl5VCwczjFmRJqRfLv67uxU1Ds3hn1jouf2k6G3ZVsrBORA5RQJfQ0qSdM4y7oorz6IWaQ/dcehc4sP1wtbHNC5zc/CeosBYdZbjrrA68eOUprNiyj/OfnULequ110GCR0KSALqHFGGfYfdXEymtMV1Ra7AQODbl7Kz3HefQPux8qyFK1Cmtnd2nGxzf1J6VeLD//5/c8P34FB4pLXWioSGhTQJfQk30mlBaeePtakdK+BoW0zs6jf2FcQR4kt4CUFlW+RFZaEh+N7s8ZndJ4/Kul9HtkHH//dhk79xe70GCR0KSALqGnzQDf9rUTzKMXqnRqUKjXGJIyDs+j5+dVuXdeUXJCLC/9Ipf3b+xLbuvG/P3b5fR7ZBwPfbJI8+siKKBLKIqr5+xJP9H2NaV9DR7+hXG78mHvxhoFdL9TWjfmn1fn8vXtgxh+cjNenb6GQY+N5653f2TFlr2Ba7NIiFFAl9CUNcxJKbpj1bHPUaW14JGe42SLWzPFeV6LgO7XPj2Jpy7rzsS7h3Dlqa35dN4Ghv1tEr/57yzmRlKxFxEfBXQJTdn+6mvHWe1eqFroQSO9C5SXwJz/Qnzy4Xn1AGjRqB4PXpDD1HtP4+bTsslbtYMLn5/KFWPymLRsqxLTSMRQQJfQ1KQdND7p+MPuRZpDDxr+le75050qY1HRAX+LJg3iuWNYe6bedxq/P7cTq7bt46pXZnDes1P4dN4GysoV2CW8KaBL6MoaBqsnV17JCw4PuSek1F2bpHJNsyEq1vm5VV9X36pBfAzXDTyJSfcM5bGRXSksLuOmN+Zw+pMTeHNGPgdLlXVOwpMCuoQu//a1NcfYvla0C+KSIDqmbtslPxUdC6kdnJ9b9qmTt4yPieayXi355o7BvHhlT5ITY7n/g/kMfHQ8YyatZP9B7WWX8KKALqGrTX+ISTj2sHvhTi2ICybpOWCinSH3OhQdZTi7S3M+Ht2fN67rQ/v0JP7y+RIGPDqO58YtZ09RSZ22R8QtCugSumIToc1AWP515b9XpbXgMvBOGPlPp2qeB4wx9Mtqyv+u68OH/68fPVs14omvlzHgkXE89c0ydh1QkhoJbQroEtqyz3S2rm1f+dPfFe3SCvdgktoBulzsdSsA6NGqEf/6ZS8+vXkA/do15ZnvltP/kXE8+uUStu076HXzRGpEAV1CW/YZzmNlxVrUQ5cT6JKZwou/OIWvbhvEaZ3SeXHiSgY8Oo4/fbqILXtOUCtAJMgooEtoa3wSNG5X+bC7aqFLFXVolsSzV/Tg2zsGc87JzfnPtDUMeGw8f/h4gdLKSshQQJfQl32mk4Gs+MCRx4tUOlWqp11qA566rDvj7hzMxT0yeXNGPoMfH899788jf/uBE19AxEMK6BL6ss+A0qLDaUXB2ZteWqQhd6mR1k3q88jIrky4eyijerXigznrGfrkBO54Zy4rt+7zunkilVJAl9DXegDEJB65fa1QhVmk9jIbJvKnC7sw+Z6hXN23DZ/P38iwpyZy85tzWLFFgV2CiwK6hL7YBGg7yJlH9+ftVtpXCaD05AT+cH5nptx7GtcPase4xZsZ/vQknvhqKUUlyjwnwUEBXcJD9jDYuebw9jVVWhMXNG0Qz33DOzLxnqGc3zWD58av4My/TWLisq1eN01EAV3CRJZ/+5pv2F210MVFTRvE89Tl3Xnjuj7ERBmufmUGo9/4QVvdxFMK6BIeGreFJtmw3BfQ/aVT1UMXF/XLasoXtw3k9jPa882izZz+5ERenbZGld3EEwroEj4qbl8r1By61I34mGhuPSObr24bRLeWDXlg7EIu+sdUFqzf7XXTJMIooEv4yD4Dyg7Cmsm+IXcD8SqdKnWjbdP6/Pfa3jw9qjsbdhVxwXNT+OMnC9mr4i9SRxTQJXy07g+x9ZzV7oW7ICEZovQRl7pjjGFE90y+u3MwP+vTiv9MW8MZT03ki/kbsVbD8OIu/bWT8BETD20HO/PoSvsqHkpJjOXhC0/mgxv70bh+PDe+/gO/+s9MCnYo25y4RwFdwkv2GbBrLaybqflz8VyPVo345Kb+/P7cTny/egfD/jaRf0xYQUlZuddNkzCkgC7hJWuY87hztVa4S1CIiY7iuoEn8e0dgxmUncpjXy7l3GcmM3PNDq+bJmFGAV3CS6PW0LSD87OG3CWIZDRMZMxVubx8VS77D5Zx6YvTuee9H9mxv9jrpkmYUECX8JPt66Wrhy5BaFjndL65YxC/GXQSH/ywntOfnMDbM/Mp1951qSUFdAk/hwK65tAlONWLi+H+czrx2S0DyUprwL3vz+eyl6azZNMer5smIczVgG6MOdsYs9QYs8IYc18lv7/BGDPfGDPXGDPFGNPZzfZIhGjVF5p3h8xTvG6JyHF1aJbE29f35bFLurJy6z7OfWYKf/l8MfsPlnrdNAlBxq29kcaYaGAZMAxYB8wErrDWLqpwTrK1do/v5wuA/2etPft4183NzbWzZs1ypc0iIl7Zub+YR79cwlszC2ieksAD5+dwVk46xhivmyYeM8bMttbmnug8N3vovYEV1tpV1tpi4C1gRMUT/MHcpz6gSSQRiUiN6sfxyMiuvHdDX1ISY7nhf7O59tVZ2rsuVeZmQM8ECio8X+c7dgRjzGhjzErgMeCWyi5kjLneGDPLGDNr61aVKRSR8JXbpjGf3DyA353TibxV2xn2t4k8P34FxaXauy7H5/miOGvt89badsC9wO+Pcc4Ya22utTY3NTW1bhsoIlLHYqOj+PUgZ+/6kPZpPP7VUoY/PYnpK7d73TQJYm4G9PVAywrPW/iOHctbwIUutkdEJKRkNEzkxV+cwr9/2YvisnKueDmP29+ey9a9B71umgQhNwP6TCDbGNPWGBMHjALGVjzBGJNd4em5wHIX2yMiEpKGdkzj69sGc9PQLD6dt4HTn5zAf/PWqu66HMG1gG6tLQVuAr4CFgPvWGsXGmMe8q1oB7jJGLPQGDMXuAO42q32iIiEssS4aO46qwNf3DqInIwU/u+jBVz8wjSWbtrrddMkSLi2bc0t2rYmIpHOWsvHczfw8GeL2FtUyoMX5DCqV0ttcQtTwbBtTUREXGCM4cIemXxx6yB6t23M/R/M5+Y357C3qMTrpomHFNBFREJUalI8r17Tm7vP6sAXCzZx7jNTmLdul9fNEo8ooIuIhLCoKMPooVm8ff2plJaVM/KFafxz8ipCbTpVak8BXUQkDOS2aczntw5kcPs0Hv5sMb9+bRY7VZo1oiigi4iEiYb14nj5qlN44PzOTFq2jXOemczMNTu8bpbUEQV0EZEwYozhmv5tef/GfsTHRDFqTB7PjVuuPesRQAFdRCQMndwihU9uHsC5Jzfnia+XcdUr37Nlb5HXzRIXKaCLiISppIRYnh7VnUdHnszstTs55+nJTF6uAlfhSgFdRCSMGWO4vFcrxt40gMb147jqlRk89uUSSstUvS3cKKCLiESA9ulJfDx6AKN6teQfE1Zy+Zg81u8q9LpZEkAK6CIiESIxLpq/XtyVZ67owdJNeznn6cl8s2iz182SAInxugEiIlK3LuiWQdfMFG5+cw6/fm0WnZsnM6RDKoPbp9KzdSNio9XXC0UqziIiEqEOlpbx2rS1fLN4Mz+s3UlpuaVBfAz9s5owuH0agzukktkw0etmRryqFmdRQBcREfYUlTBtxXYmLtvKxKVb2LDb2eKWndaAwe1TGdwhlV5tGpMQG+1xSyOPArqIiNSItZYVW/Y5wX3ZVr5ftYPisnISY6Pp266JE+Dbp9KmaX2vmxoRqhrQNYcuIiJHMMaQnZ5EdnoS1w08iQPFpeSt2s7EpU6AH7dkCwCtm9RjcPtU3/x7GtFRqsfuJfXQRUSkWtZs23+o9z595XYKS8ro2CyJ35/bmQHZTb1uXtjRkLuIiLiuqKSMrxdt5rEvl7BuZyGndUzjt+d0JCstyeumhY2qBnTtTRARkRpLiI3mgm4ZfHvHYO4f3pGZq3dw1t8n838fLWD7voNeNy+iKKCLiEitJcRG85vB7Zhw9xB+3qcVb8zIZ8jjE3hx4kqKSsq8bl5EUEAXEZGAadIgnodGdOGr2wbSu21jHvliCac/OZFPftxAqE3xhhoFdBERCbistCT+9ctevH5dH5ITY7n5zTlc/MI0Zq/d6XXTwpYCuoiIuKZ/VlM+vXkAj43syvqdhYx8YRqj3/iBgh0HvG5a2FFAFxERV0VHGS7r1ZLxdw3hltOz+W7xZk5/ciJ//Xwxe4pKvG5e2FBAFxGROlE/PoY7hrVnwl1DOb9bBmMmr2LI4xN4bfoaSlSfvda0D11ERDyxYP1uHv5sEXmrdnBSan1+1rsVF3TPIC0pweumBRUllhERkaBnreXbxVt4dtxy5q3bTZSBgdmpXNQjkzNz0qkXpwzlCugiIhJSVmzZy4dz1vPRnA2s31VI/bhozurSjIt6ZNKvXdOIzRWvgC4iIiGpvNwyY80OPpqzns/mb2RvUSnpyfGM6J7JRT0y6dQ82esm1ikFdBERCXlFJWV8t3gLH85Zx4SlWyktt3RslsRFPTIZ0T2TZinhP9+ugC4iImFlx/5iPp23gQ9+WM/cgl0YA/3bNeXCHpmc3aUZDeLDc75dAV1ERMLWqq37+GjuBj6cs46CHYUkxEZxVk4zLjmlRdjNtyugi4hI2LPWMnvtTj6Ys55Pf9zAnqJSmiUncHHPTEae0oJ2qQ28bmKtKaCLiEhE8c+3vze7gInLtlJuoWerhlxySkvO69ac5IRYr5tYIwroIiISsTbvKeKjOet5d/Y6VmzZR3zM4SH5/lmhNSSvgC4iIhHPWsu8dbt5b/Y6xv64gd2FJSE3JK+ALiIiUsHxhuTP7dqclMTgHJJXQBcRETmGLXuK+Gjuet6dtY7lFYbkR/VuSb92Tb1u3hEU0EVERE7AWsv89c6Q/MdznSH5i3tm8sD5OUHTY1dAFxERqYaikjL+MX4Fz09YSVpSPI9f0o0B2d731qsa0FUPXUREBEiIjeaOMzvw/o39SIyL5sp/fc+DYxdSWFzmddOqRAFdRESkgu4tG/LZzQO5pn8b/jNtDec+M5k5+Tu9btYJKaCLiIgcJTEumgfOz+GN6/pwsLSckS9M44mvllJcWu51045JAV1EROQY+mU15YvbBnJxzxY8N34FFz4/laWb9nrdrEopoIuIiBxHckIsT1zajTG/OIUte4s4/9kpvDRxJWXlwbWoXAFdRESkCs7MacZXtw3itI5p/PWLJYwaM5212/d73axDFNBFRESqqEmDeF64sid/u7wbSzbtZfjTk3n9+7UEwxZwBXQREZFqMMZwUY8WfHXbIHq2asTvPlzAL/89k817ijxtl6sB3RhztjFmqTFmhTHmvkp+f4cxZpExZp4x5jtjTGs32yMiIhIoGQ0Tee1XvXloRA7fr97OmX+bxNgfN3jWHtcCujEmGngeGA50Bq4wxnQ+6rQ5QK61tivwHvCYW+0REREJtKgow1V92/DFrYM4KbU+t7w5h9Fv/MD+g6V13xYXr90bWGGtXWWtLQbeAkZUPMFaO95ae8D3NA9o4WJ7REREXNG2aX3e/U1f7j6rAzv3F5MQG13nbYhx8dqZQEGF5+uAPsc5/1rgCxfbIyIi4pqY6ChGD83ixsHtiIoydf/+df6OlTDGXAnkAoOP8fvrgesBWrVqVYctExERqR4vgjm4O+S+HmhZ4XkL37EjGGPOAH4HXGCtPVjZhay1Y6y1udba3NTUVFcaKyIiEsrcDOgzgWxjTFtjTBwwChhb8QRjTA/gJZxgvsXFtoiIiIQ11wK6tbYUuAn4ClgMvGOtXWiMecgYc4HvtMeBBsC7xpi5xpixx7iciIiIHIerc+jW2s+Bz4869ocKP5/h5vuLiIhECmWKExERCQMK6CIiImFAAV1ERCQMKKCLiIiEAQV0ERGRMKCALiIiEgYU0EVERMKAArqIiEgYUEAXEREJAwroIiIiYUABXUREJAwooIuIiIQBBXQREZEwYKy1XrehWowxW4G1AbxkU2BbAK8nuqeBpvsZeLqngad7GlgV72dra23qiV4QcgE90Iwxs6y1uV63I5zongaW7mfg6Z4Gnu5pYNXkfmrIXUREJAwooIuIiIQBBXQY43UDwpDuaWDpfgae7mng6Z4GVrXvZ8TPoYuIiIQD9dBFRETCQEQHdGPM2caYpcaYFcaY+7xuTzgwxqwxxsw3xsw1xszyuj2hxhjzijFmizFmQYVjjY0x3xhjlvseG3nZxlBzjHv6oDFmve9zOtcYc46XbQwlxpiWxpjxxphFxpiFxphbfcf1Oa2B49zPan9GI3bI3RgTDSwDhgHrgJnAFdbaRZ42LMQZY9YAudZa7UetAWPMIGAf8Jq1tovv2GPADmvtI74vno2stfd62c5Qcox7+iCwz1r7hJdtC0XGmOZAc2vtD8aYJGA2cCHwS/Q5rbbj3M/LqOZnNJJ76L2BFdbaVdbaYuAtYITHbZIIZ62dBOw46vAI4FXfz6/i/M8uVXSMeyo1ZK3daK39wffzXmAxkIk+pzVynPtZbZEc0DOBggrP11HDmyhHsMDXxpjZxpjrvW5MmEi31m70/bwJSPeyMWHkJmPMPN+QvIaHa8AY0wboAXyPPqe1dtT9hGp+RiM5oIs7BlhrewLDgdG+4U4JEOvMkUXmPFlgvQC0A7oDG4EnvW1O6DHGNADeB26z1u6p+Dt9TquvkvtZ7c9oJAf09UDLCs9b+I5JLVhr1/setwAf4kxtSO1s9s2z+efbtnjcnpBnrd1srS2z1pYDL6PPabUYY2Jxgs/r1toPfIf1Oa2hyu5nTT6jkRzQZwLZxpi2xpg4YBQw1uM2hTRjTH3fog6MMfWBM4EFx3+VVMFY4Grfz1cDH3vYlrDgDzw+F6HPaZUZYwzwL2CxtfapCr/S57QGjnU/a/IZjdhV7gC+bQB/B6KBV6y1f/a4SSHNGHMSTq8cIAZ4Q0C0gcEAAAIeSURBVPe0eowxbwJDcCotbQYeAD4C3gFa4VQavMxaq0VeVXSMezoEZyjTAmuA31SY/5XjMMYMACYD84Fy3+Hf4sz76nNaTce5n1dQzc9oRAd0ERGRcBHJQ+4iIiJhQwFdREQkDCigi4iIhAEFdBERkTCggC4iIhIGFNBFIowxpqxCBae5gaw0aIxpU7GqmYjUnRivGyAida7QWtvd60aISGCphy4iwKFa9o/56tnPMMZk+Y63McaM8xWJ+M4Y08p3PN0Y86Ex5kfff/18l4o2xrzsq+38tTEm0bN/lEgEUUAXiTyJRw25X17hd7uttScDz+FkUQR4FnjVWtsVeB14xnf8GWCitbYb0BNY6DueDTxvrc0BdgEjXf73iAjKFCcScYwx+6y1DSo5vgY4zVq7ylcsYpO1tokxZhvQ3Fpb4ju+0Vrb1BizFWhhrT1Y4RptgG+stdm+5/cCsdbah93/l4lENvXQRaQie4yfq+NghZ/L0FodkTqhgC4iFV1e4XG67+dpONUIAX6OU0gC4DvgRgBjTLQxJqWuGikiP6VvziKRJ9EYM7fC8y+ttf6ta42MMfNwetlX+I7dDPzbGHM3sBW4xnf8VmCMMeZanJ74jYAqlol4RHPoIgIcmkPPtdZu87otIlJ9GnIXEREJA+qhi4iIhAH10EVERMKAArqIiEgYUEAXEREJAwroIiIiYUABXUREJAwooIuIiISB/w+6FOrCMcAGzQAAAABJRU5ErkJggg==\n", 569 | "text/plain": [ 570 | "
" 571 | ] 572 | }, 573 | "metadata": { 574 | "tags": [], 575 | "needs_background": "light" 576 | } 577 | } 578 | ] 579 | }, 580 | { 581 | "cell_type": "markdown", 582 | "metadata": { 583 | "colab_type": "text", 584 | "id": "e0wEcJkZ_B66" 585 | }, 586 | "source": [ 587 | "## Part 5 - Making Predictions" 588 | ] 589 | }, 590 | { 591 | "cell_type": "code", 592 | "metadata": { 593 | "id": "mOY7YkGZeiCV", 594 | "colab_type": "code", 595 | "colab": {} 596 | }, 597 | "source": [ 598 | "# Importing essential libraries\n", 599 | "import numpy as np\n", 600 | "from keras.preprocessing import image" 601 | ], 602 | "execution_count": 0, 603 | "outputs": [] 604 | }, 605 | { 606 | "cell_type": "markdown", 607 | "metadata": { 608 | "colab_type": "text", 609 | "id": "X7yFJ_L3dgdm" 610 | }, 611 | "source": [ 612 | "### Prediction 1\n", 613 | "\n", 614 | "*Predicting the following image:*\n", 615 | "\n", 616 | "" 617 | ] 618 | }, 619 | { 620 | "cell_type": "code", 621 | "metadata": { 622 | "colab_type": "code", 623 | "outputId": "72f7f8ed-6ec9-471d-9838-ee91a689cc06", 624 | "id": "tBlqA6N0dlq_", 625 | "colab": { 626 | "base_uri": "https://localhost:8080/", 627 | "height": 35 628 | } 629 | }, 630 | "source": [ 631 | "test_image = image.load_img('/content/drive/My Drive/Colab Notebooks/Datasets/cats vs dogs - dataset/single_prediction/cat_or_dog_1.jpg', target_size = (64, 64))\n", 632 | "test_image = image.img_to_array(test_image)\n", 633 | "test_image = np.expand_dims(test_image, axis = 0)\n", 634 | "result = cnn.predict(test_image)\n", 635 | "\n", 636 | "if result[0][0] == 1:\n", 637 | " print(\"Prediction: It's a Dog's image.\")\n", 638 | "else:\n", 639 | " print(\"Prediction: It's a Cat's image.\")" 640 | ], 641 | "execution_count": 21, 642 | "outputs": [ 643 | { 644 | "output_type": "stream", 645 | "text": [ 646 | "Prediction: It's a Dog's image.\n" 647 | ], 648 | "name": "stdout" 649 | } 650 | ] 651 | }, 652 | { 653 | "cell_type": "markdown", 654 | "metadata": { 655 | "colab_type": "text", 656 | "id": "JR0N0OE7Dxcj" 657 | }, 658 | "source": [ 659 | "### Prediction 2\n", 660 | "\n", 661 | "*Predicting the following image:*\n", 662 | "\n", 663 | "" 664 | ] 665 | }, 666 | { 667 | "cell_type": "code", 668 | "metadata": { 669 | "colab_type": "code", 670 | "outputId": "ae25b9ad-c2d4-4042-9232-f27cc97d7b4d", 671 | "id": "7cK2fwXVdo-h", 672 | "colab": { 673 | "base_uri": "https://localhost:8080/", 674 | "height": 35 675 | } 676 | }, 677 | "source": [ 678 | "test_image = image.load_img('/content/drive/My Drive/Colab Notebooks/Datasets/cats vs dogs - dataset/single_prediction/cat_or_dog_2.jpg', target_size = (64, 64))\n", 679 | "test_image = image.img_to_array(test_image)\n", 680 | "test_image = np.expand_dims(test_image, axis = 0)\n", 681 | "result = cnn.predict(test_image)\n", 682 | "\n", 683 | "if result[0][0] == 1:\n", 684 | " print(\"Prediction: It's a Dog's image.\")\n", 685 | "else:\n", 686 | " print(\"Prediction: It's a Cat's image.\")" 687 | ], 688 | "execution_count": 22, 689 | "outputs": [ 690 | { 691 | "output_type": "stream", 692 | "text": [ 693 | "Prediction: It's a Cat's image.\n" 694 | ], 695 | "name": "stdout" 696 | } 697 | ] 698 | }, 699 | { 700 | "cell_type": "markdown", 701 | "metadata": { 702 | "colab_type": "text", 703 | "id": "m0RB22sJEY7d" 704 | }, 705 | "source": [ 706 | "### Prediction 3\n", 707 | "\n", 708 | "*Predicting the following image:*\n", 709 | "\n", 710 | "" 711 | ] 712 | }, 713 | { 714 | "cell_type": "code", 715 | "metadata": { 716 | "colab_type": "code", 717 | "outputId": "ffa4e251-cae9-4725-d01f-1b8a6b2ae7df", 718 | "id": "ejysEBAddtdu", 719 | "colab": { 720 | "base_uri": "https://localhost:8080/", 721 | "height": 35 722 | } 723 | }, 724 | "source": [ 725 | "test_image = image.load_img('/content/drive/My Drive/Colab Notebooks/Datasets/cats vs dogs - dataset/single_prediction/cat_or_dog_3.jpg', target_size = (64, 64))\n", 726 | "test_image = image.img_to_array(test_image)\n", 727 | "test_image = np.expand_dims(test_image, axis = 0)\n", 728 | "result = cnn.predict(test_image)\n", 729 | "\n", 730 | "if result[0][0] == 1:\n", 731 | " print(\"Prediction: It's a Dog's image.\")\n", 732 | "else:\n", 733 | " print(\"Prediction: It's a Cat's image.\")" 734 | ], 735 | "execution_count": 23, 736 | "outputs": [ 737 | { 738 | "output_type": "stream", 739 | "text": [ 740 | "Prediction: It's a Dog's image.\n" 741 | ], 742 | "name": "stdout" 743 | } 744 | ] 745 | }, 746 | { 747 | "cell_type": "markdown", 748 | "metadata": { 749 | "colab_type": "text", 750 | "id": "FxGbKM6WGFqr" 751 | }, 752 | "source": [ 753 | "### Prediction 4\n", 754 | "\n", 755 | "*Predicting the following image:*\n", 756 | "\n", 757 | "" 758 | ] 759 | }, 760 | { 761 | "cell_type": "code", 762 | "metadata": { 763 | "colab_type": "code", 764 | "outputId": "da6c9137-ffd3-40eb-a89e-afba1237bfc0", 765 | "id": "pVGP7mjXdwr2", 766 | "colab": { 767 | "base_uri": "https://localhost:8080/", 768 | "height": 35 769 | } 770 | }, 771 | "source": [ 772 | "test_image = image.load_img('/content/drive/My Drive/Colab Notebooks/Datasets/cats vs dogs - dataset/single_prediction/cat_or_dog_4.jpg', target_size = (64, 64))\n", 773 | "test_image = image.img_to_array(test_image)\n", 774 | "test_image = np.expand_dims(test_image, axis = 0)\n", 775 | "result = cnn.predict(test_image)\n", 776 | "\n", 777 | "if result[0][0] == 1:\n", 778 | " print(\"Prediction: It's a Dog's image.\")\n", 779 | "else:\n", 780 | " print(\"Prediction: It's a Cat's image.\")" 781 | ], 782 | "execution_count": 28, 783 | "outputs": [ 784 | { 785 | "output_type": "stream", 786 | "text": [ 787 | "Prediction: It's a Dog's image.\n" 788 | ], 789 | "name": "stdout" 790 | } 791 | ] 792 | } 793 | ] 794 | } 795 | --------------------------------------------------------------------------------