Skip to content
Snippets Groups Projects
01-Embedding-Keras.ipynb 159 KiB
Newer Older
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "![Fidle](../fidle/img/00-Fidle-header-01.png)\n",
    "\n",
    "# <!-- TITLE --> Text embedding with IMDB\n",
    "<!-- DESC --> A very classical example of word embedding for text classification (sentiment analysis)\n",
    "<!-- AUTHOR : Jean-Luc Parouty (CNRS/SIMaP) -->\n",
    "\n",
    "## Objectives :\n",
    " - The objective is to guess whether film reviews are **positive or negative** based on the analysis of the text. \n",
    " - Understand the management of **textual data** and **sentiment analysis**\n",
    "\n",
    "Original dataset can be find **[there](http://ai.stanford.edu/~amaas/data/sentiment/)**  \n",
    "Note that [IMDb.com](https://imdb.com) offers several easy-to-use [datasets](https://www.imdb.com/interfaces/)  \n",
    "For simplicity's sake, we'll use the dataset directly [embedded in Keras](https://www.tensorflow.org/api_docs/python/tf/keras/datasets)\n",
    "\n",
    "## What we're going to do :\n",
    "\n",
    " - Retrieve data\n",
    " - Preparing the data\n",
    " - Build a model\n",
    " - Train the model\n",
    " - Evaluate the result\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "## Step 1 - Init python stuff"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style>\n",
       "\n",
       "div.warn {    \n",
       "    background-color: #fcf2f2;\n",
       "    border-color: #dFb5b4;\n",
       "    border-left: 5px solid #dfb5b4;\n",
       "    padding: 0.5em;\n",
       "    font-weight: bold;\n",
       "    font-size: 1.1em;;\n",
       "    }\n",
       "\n",
       "\n",
       "\n",
       "div.nota {    \n",
       "    background-color: #DAFFDE;\n",
       "    border-left: 5px solid #92CC99;\n",
       "    padding: 0.5em;\n",
       "    }\n",
       "\n",
       "\n",
       "\n",
       "</style>\n",
       "\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "FIDLE 2020 - Practical Work Module\n",
      "Version              : 0.2.9\n",
      "Run time             : Wednesday 19 February 2020, 22:04:33\n",
      "TensorFlow version   : 2.0.0\n",
      "Keras version        : 2.2.4-tf\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "\n",
    "import tensorflow as tf\n",
    "import tensorflow.keras as keras\n",
    "import tensorflow.keras.datasets.imdb as imdb\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import matplotlib\n",
    "import seaborn as sns\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "\n",
    "import os,sys,h5py,json\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "from importlib import reload\n",
    "sys.path.append('..')\n",
    "import fidle.pwk as ooo\n",
    "\n",
    "ooo.init()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "## Step 2 - Retrieve data\n",
    "\n",
    "**From Keras :**\n",
    "This IMDb dataset can bet get directly from [Keras datasets](https://www.tensorflow.org/api_docs/python/tf/keras/datasets)  \n",
    "\n",
    "Due to their nature, textual data can be somewhat complex.\n",
    "\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "### 2.1 - Data structure :  \n",
    "The dataset is composed of 2 parts: **reviews** and **opinions** (positive/negative),  with a **dictionary**\n",
    "\n",
    "  - dataset = (reviews, opinions)\n",
    "    - reviews = \\[ review_0, review_1, ...\\]\n",
    "      - review_i = [ int1, int2, ...] where int_i is the index of the word in the dictionary.\n",
    "    - opinions = \\[ int0, int1, ...\\] where int_j == 0 if opinion is negative or 1 if opinion is positive.\n",
    "  - dictionary = \\[ mot1:int1, mot2:int2, ... ]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "### 2.2 - Get dataset\n",
    "For simplicity, we will use a pre-formatted dataset.  \n",
    "See : https://www.tensorflow.org/api_docs/python/tf/keras/datasets/imdb/load_data  \n",
    "\n",
    "However, Keras offers some usefull tools for formatting textual data.  \n",
    "See : https://www.tensorflow.org/api_docs/python/tf/keras/preprocessing/text"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "vocab_size = 10000\n",
    "\n",
    "# ----- Retrieve x,y\n",
    "#\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "(x_train, y_train), (x_test, y_test) = imdb.load_data( num_words  = vocab_size,\n",
    "                                                       skip_top   = 0,\n",
    "                                                       maxlen     = None,\n",
    "                                                       seed       = 42,\n",
    "                                                       start_char = 1,\n",
    "                                                       oov_char   = 2,\n",
    "                                                       index_from = 3, )"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  Max(x_train,x_test)  :  9999\n",
      "  x_train : (25000,)  y_train : (25000,)\n",
      "  x_test  : (25000,)  y_test  : (25000,)\n",
      "\n",
      "Review example (x_train[12]) :\n",
      "\n",
      " [1, 14, 22, 1367, 53, 206, 159, 4, 636, 898, 74, 26, 11, 436, 363, 108, 7, 14, 432, 14, 22, 9, 1055, 34, 8599, 2, 5, 381, 3705, 4509, 14, 768, 47, 839, 25, 111, 1517, 2579, 1991, 438, 2663, 587, 4, 280, 725, 6, 58, 11, 2714, 201, 4, 206, 16, 702, 5, 5176, 19, 480, 5920, 157, 13, 64, 219, 4, 2, 11, 107, 665, 1212, 39, 4, 206, 4, 65, 410, 16, 565, 5, 24, 43, 343, 17, 5602, 8, 169, 101, 85, 206, 108, 8, 3008, 14, 25, 215, 168, 18, 6, 2579, 1991, 438, 2, 11, 129, 1609, 36, 26, 66, 290, 3303, 46, 5, 633, 115, 4363]\n"
     ]
    }
   ],
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "print(\"  Max(x_train,x_test)  : \", ooo.rmax([x_train,x_test]) )\n",
    "print(\"  x_train : {}  y_train : {}\".format(x_train.shape, y_train.shape))\n",
    "print(\"  x_test  : {}  y_test  : {}\".format(x_test.shape,  y_test.shape))\n",
    "\n",
    "print('\\nReview example (x_train[12]) :\\n\\n',x_train[12])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "### 2.3 - Have a look for humans (optional)\n",
    "When we loaded the dataset, we asked for using \\<start\\> as 1, \\<unknown word\\> as 2  \n",
    "So, we shifted the dataset by 3 with the parameter index_from=3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "# ---- Retrieve dictionary {word:index}, and encode it in ascii\n",
    "\n",
    "word_index = imdb.get_word_index()\n",
    "\n",
    "# ---- Shift the dictionary from +3\n",
    "\n",
    "word_index = {w:(i+3) for w,i in word_index.items()}\n",
    "\n",
    "# ---- Add <pad>, <start> and unknown tags\n",
    "\n",
    "word_index.update( {'<pad>':0, '<start>':1, '<unknown>':2} )\n",
    "\n",
    "# ---- Create a reverse dictionary : {index:word}\n",
    "\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "index_word = {index:word for word,index in word_index.items()} \n",
    "\n",
    "# ---- Add a nice function to transpose :\n",
    "#\n",
    "def dataset2text(review):\n",
    "    return ' '.join([index_word.get(i, '?') for i in review])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Dictionary size     :  88587\n",
      "\n",
      "Review example (x_train[12]) :\n",
      "\n",
      " [1, 14, 22, 1367, 53, 206, 159, 4, 636, 898, 74, 26, 11, 436, 363, 108, 7, 14, 432, 14, 22, 9, 1055, 34, 8599, 2, 5, 381, 3705, 4509, 14, 768, 47, 839, 25, 111, 1517, 2579, 1991, 438, 2663, 587, 4, 280, 725, 6, 58, 11, 2714, 201, 4, 206, 16, 702, 5, 5176, 19, 480, 5920, 157, 13, 64, 219, 4, 2, 11, 107, 665, 1212, 39, 4, 206, 4, 65, 410, 16, 565, 5, 24, 43, 343, 17, 5602, 8, 169, 101, 85, 206, 108, 8, 3008, 14, 25, 215, 168, 18, 6, 2579, 1991, 438, 2, 11, 129, 1609, 36, 26, 66, 290, 3303, 46, 5, 633, 115, 4363]\n",
      "\n",
      "In real words :\n",
      "\n",
      " <start> this film contains more action before the opening credits than are in entire hollywood films of this sort this film is produced by tsui <unknown> and stars jet li this team has brought you many worthy hong kong cinema productions including the once upon a time in china series the action was fast and furious with amazing wire work i only saw the <unknown> in two shots aside from the action the story itself was strong and not just used as filler to find any other action films to rival this you must look for a hong kong cinema <unknown> in your area they are really worth checking out and usually never disappoint\n"
     ]
    }
   ],
   "source": [
    "print('\\nDictionary size     : ', len(word_index))\n",
    "print('\\nReview example (x_train[12]) :\\n\\n',x_train[12])\n",
    "print('\\nIn real words :\\n\\n', dataset2text(x_train[12]))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "### 2.4 - Have a look for neurons"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
       "<Figure size 864x432 with 1 Axes>"
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "plt.figure(figsize=(12, 6))\n",
    "ax=sns.distplot([len(i) for i in x_train],bins=60)\n",
    "ax.set_title('Distribution of reviews by size')\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "plt.xlabel(\"Review's sizes\")\n",
    "plt.ylabel('Density')\n",
    "ax.set_xlim(0, 1500)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step 3 - Preprocess the data\n",
    "In order to be processed by an NN, all entries must have the same length.  \n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "We chose a review length of **review_len**  \n",
    "We will therefore complete them with a padding (of \\<pad\\>\\)  "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "Review example (x_train[12]) :\n",
      "\n",
      " [   1   14   22 1367   53  206  159    4  636  898   74   26   11  436\n",
      "  363  108    7   14  432   14   22    9 1055   34 8599    2    5  381\n",
      " 3705 4509   14  768   47  839   25  111 1517 2579 1991  438 2663  587\n",
      "    4  280  725    6   58   11 2714  201    4  206   16  702    5 5176\n",
      "   19  480 5920  157   13   64  219    4    2   11  107  665 1212   39\n",
      "    4  206    4   65  410   16  565    5   24   43  343   17 5602    8\n",
      "  169  101   85  206  108    8 3008   14   25  215  168   18    6 2579\n",
      " 1991  438    2   11  129 1609   36   26   66  290 3303   46    5  633\n",
      "  115 4363    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0    0    0    0    0    0    0    0    0    0    0\n",
      "    0    0    0    0]\n",
      "\n",
      "In real words :\n",
      "\n",
      " <start> this film contains more action before the opening credits than are in entire hollywood films of this sort this film is produced by tsui <unknown> and stars jet li this team has brought you many worthy hong kong cinema productions including the once upon a time in china series the action was fast and furious with amazing wire work i only saw the <unknown> in two shots aside from the action the story itself was strong and not just used as filler to find any other action films to rival this you must look for a hong kong cinema <unknown> in your area they are really worth checking out and usually never disappoint <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad> <pad>\n"
     ]
    }
   ],
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "review_len = 256\n",
    "\n",
    "x_train = keras.preprocessing.sequence.pad_sequences(x_train,\n",
    "                                                     value   = 0,\n",
    "                                                     padding = 'post',\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "                                                     maxlen  = review_len)\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "x_test  = keras.preprocessing.sequence.pad_sequences(x_test,\n",
    "                                                     value   = 0 ,\n",
    "                                                     padding = 'post',\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "                                                     maxlen  = review_len)\n",
    "\n",
    "print('\\nReview example (x_train[12]) :\\n\\n',x_train[12])\n",
    "print('\\nIn real words :\\n\\n', dataset2text(x_train[12]))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "### Save dataset and dictionary (can be usefull)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Saved.\n"
     ]
    }
   ],
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
   "source": [
    "os.makedirs('./data',   mode=0o750, exist_ok=True)\n",
    "\n",
    "with h5py.File('./data/dataset_imdb.h5', 'w') as f:\n",
    "    f.create_dataset(\"x_train\",    data=x_train)\n",
    "    f.create_dataset(\"y_train\",    data=y_train)\n",
    "    f.create_dataset(\"x_test\",     data=x_test)\n",
    "    f.create_dataset(\"y_test\",     data=y_test)\n",
    "\n",
    "with open('./data/word_index.json', 'w') as fp:\n",
    "    json.dump(word_index, fp)\n",
    "\n",
    "with open('./data/index_word.json', 'w') as fp:\n",
    "    json.dump(index_word, fp)\n",
    "\n",
    "print('Saved.')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step 4 - Build the model\n",
    "Few remarks :\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "1. We'll choose a dense vector size for the embedding output with **dense_vector_size**\n",
    "2. **GlobalAveragePooling1D** do a pooling on the last dimension : (None, lx, ly) -> (None, ly)  \n",
    "In other words: we average the set of vectors/words of a sentence\n",
    "3. L'embedding de Keras fonctionne de manière supervisée. Il s'agit d'une couche de *vocab_size* neurones vers *n_neurons* permettant de maintenir une table de vecteurs (les poids constituent les vecteurs). Cette couche ne calcule pas de sortie a la façon des couches normales, mais renvois la valeur des vecteurs. n mots => n vecteurs (ensuite empilés par le pooling)  \n",
    "Voir : https://stats.stackexchange.com/questions/324992/how-the-embedding-layer-is-trained-in-keras-embedding-layer\n",
    "\n",
    "A SUIVRE : https://www.liip.ch/en/blog/sentiment-detection-with-keras-word-embeddings-and-lstm-deep-learning-networks\n",
    "### 4.1 - Build\n",
    "More documentation about :\n",
    " - [Embedding](https://www.tensorflow.org/api_docs/python/tf/keras/layers/Embedding)\n",
    " - [GlobalAveragePooling1D](https://www.tensorflow.org/api_docs/python/tf/keras/layers/GlobalAveragePooling1D)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_model(dense_vector_size=32):\n",
    "    \n",
    "    model = keras.Sequential()\n",
    "    model.add(keras.layers.Embedding(input_dim    = vocab_size, \n",
    "                                     output_dim   = dense_vector_size, \n",
    "                                     input_length = review_len))\n",
    "    model.add(keras.layers.GlobalAveragePooling1D())\n",
    "    model.add(keras.layers.Dense(dense_vector_size, activation='relu'))\n",
    "    model.add(keras.layers.Dense(1,                 activation='sigmoid'))\n",
    "\n",
    "    model.compile(optimizer = 'adam',\n",
    "                  loss      = 'binary_crossentropy',\n",
    "                  metrics   = ['accuracy'])\n",
    "    return model"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Step 5 - Train the model\n",
    "### 5.1 - Get it"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Model: \"sequential\"\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "embedding (Embedding)        (None, 256, 32)           320000    \n",
      "_________________________________________________________________\n",
      "global_average_pooling1d (Gl (None, 32)                0         \n",
      "_________________________________________________________________\n",
      "dense (Dense)                (None, 32)                1056      \n",
      "_________________________________________________________________\n",
      "dense_1 (Dense)              (None, 1)                 33        \n",
      "=================================================================\n",
      "Total params: 321,089\n",
      "Trainable params: 321,089\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "model = get_model(32)\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "model.summary()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "### 5.2 - Add callback"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
   "metadata": {},
   "outputs": [],
   "source": [
    "os.makedirs('./run/models',   mode=0o750, exist_ok=True)\n",
    "save_dir = \"./run/models/best_model.h5\"\n",
    "savemodel_callback = tf.keras.callbacks.ModelCheckpoint(filepath=save_dir, verbose=0, save_best_only=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 5.1 - Train it"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 25000 samples, validate on 25000 samples\n",
      "Epoch 1/30\n",
      "25000/25000 [==============================] - 2s 60us/sample - loss: 0.6883 - accuracy: 0.6220 - val_loss: 0.6783 - val_accuracy: 0.7303\n",
      "25000/25000 [==============================] - 1s 32us/sample - loss: 0.6511 - accuracy: 0.7672 - val_loss: 0.6162 - val_accuracy: 0.7666\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.5571 - accuracy: 0.8088 - val_loss: 0.5094 - val_accuracy: 0.8194\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.4412 - accuracy: 0.8528 - val_loss: 0.4150 - val_accuracy: 0.8494\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.3553 - accuracy: 0.8767 - val_loss: 0.3595 - val_accuracy: 0.8604\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.3036 - accuracy: 0.8907 - val_loss: 0.3316 - val_accuracy: 0.8660\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.2684 - accuracy: 0.9020 - val_loss: 0.3108 - val_accuracy: 0.8733\n",
      "25000/25000 [==============================] - 1s 31us/sample - loss: 0.2427 - accuracy: 0.9120 - val_loss: 0.2999 - val_accuracy: 0.8774\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.2222 - accuracy: 0.9196 - val_loss: 0.2923 - val_accuracy: 0.8798\n",
      "Epoch 10/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.2055 - accuracy: 0.9262 - val_loss: 0.2885 - val_accuracy: 0.8817\n",
      "Epoch 11/30\n",
      "25000/25000 [==============================] - 1s 31us/sample - loss: 0.1915 - accuracy: 0.9321 - val_loss: 0.2871 - val_accuracy: 0.8819\n",
      "Epoch 12/30\n",
      "25000/25000 [==============================] - 1s 32us/sample - loss: 0.1795 - accuracy: 0.9364 - val_loss: 0.2869 - val_accuracy: 0.8825\n",
      "Epoch 13/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.1680 - accuracy: 0.9418 - val_loss: 0.2893 - val_accuracy: 0.8824\n",
      "Epoch 14/30\n",
      "25000/25000 [==============================] - 1s 31us/sample - loss: 0.1581 - accuracy: 0.9454 - val_loss: 0.2915 - val_accuracy: 0.8830\n",
      "Epoch 15/30\n",
      "25000/25000 [==============================] - 1s 31us/sample - loss: 0.1490 - accuracy: 0.9498 - val_loss: 0.2970 - val_accuracy: 0.8810\n",
      "Epoch 16/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.1411 - accuracy: 0.9530 - val_loss: 0.3006 - val_accuracy: 0.8815\n",
      "Epoch 17/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.1341 - accuracy: 0.9556 - val_loss: 0.3075 - val_accuracy: 0.8798\n",
      "Epoch 18/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.1273 - accuracy: 0.9588 - val_loss: 0.3131 - val_accuracy: 0.8793\n",
      "Epoch 19/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.1206 - accuracy: 0.9608 - val_loss: 0.3199 - val_accuracy: 0.8774\n",
      "Epoch 20/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.1151 - accuracy: 0.9630 - val_loss: 0.3319 - val_accuracy: 0.8722\n",
      "Epoch 21/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.1097 - accuracy: 0.9658 - val_loss: 0.3357 - val_accuracy: 0.8744\n",
      "Epoch 22/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.1043 - accuracy: 0.9688 - val_loss: 0.3439 - val_accuracy: 0.8734\n",
      "Epoch 23/30\n",
      "25000/25000 [==============================] - 1s 32us/sample - loss: 0.0986 - accuracy: 0.9708 - val_loss: 0.3530 - val_accuracy: 0.8728\n",
      "Epoch 24/30\n",
      "25000/25000 [==============================] - 1s 31us/sample - loss: 0.0941 - accuracy: 0.9735 - val_loss: 0.3614 - val_accuracy: 0.8696\n",
      "Epoch 25/30\n",
      "25000/25000 [==============================] - 1s 32us/sample - loss: 0.0897 - accuracy: 0.9749 - val_loss: 0.3718 - val_accuracy: 0.8703\n",
      "Epoch 26/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.0854 - accuracy: 0.9768 - val_loss: 0.3822 - val_accuracy: 0.8676\n",
      "Epoch 27/30\n",
      "25000/25000 [==============================] - 1s 29us/sample - loss: 0.0811 - accuracy: 0.9785 - val_loss: 0.3919 - val_accuracy: 0.8668\n",
      "Epoch 28/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.0779 - accuracy: 0.9789 - val_loss: 0.4036 - val_accuracy: 0.8651\n",
      "Epoch 29/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.0747 - accuracy: 0.9803 - val_loss: 0.4138 - val_accuracy: 0.8640\n",
      "Epoch 30/30\n",
      "25000/25000 [==============================] - 1s 30us/sample - loss: 0.0714 - accuracy: 0.9819 - val_loss: 0.4262 - val_accuracy: 0.8629\n",
      "CPU times: user 1min 35s, sys: 4.59 s, total: 1min 40s\n",
      "Wall time: 23.6 s\n"
   "source": [
    "%%time\n",
    "\n",
    "n_epochs   = 30\n",
    "batch_size = 512\n",
    "\n",
    "history = model.fit(x_train,\n",
    "                    y_train,\n",
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "                    epochs          = n_epochs,\n",
    "                    batch_size      = batch_size,\n",
    "                    validation_data = (x_test, y_test),\n",
    "                    verbose         = 1,\n",
    "                    callbacks       = [savemodel_callback])\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "## Step 6 - Evaluate\n",
    "### 6.1 - Training history"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhcAAAGdCAYAAAChGlFrAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nOzdd3hc1Zn48e+ZUe9dsuTee8EGF0psTIxDMyUOBJKAs0BgKMGkkCUssAvJsvxwIEAGMDVOSMAUE0poptjggsG4ghu25a7euzQ6vz/OndFIHpWRRx6V9/M897lz+7kCa16d8h6ltUYIIYQQIlBswS6AEEIIIXoXCS6EEEIIEVASXAghhBAioCS4EEIIIURASXAhhBBCiICS4EIIIYQQASXBhRBCCCECSoILIfoQpdTFSiltLR8EuzxCiN5Jggsh+parvT7PVUr1D1pJhBC9lgQXQvQRSqlk4HygCvgH5t//T4JaKCFEryTBhRB9x5VAKPAv4Clr39Wtny6EEJ0jwYUQfYc7kHgR+Aw4CIxWSp3W1kVKqWil1K+VUmuVUkVKqRql1D6l1JtKqauUUqE+rlFKqcuVUu8opXKUUrVKqSNKqdVKqcVWLYr73MHufiBtlGG2dU62j2PZ1rHZSqkspZTTKl+tUmqz13n9lFI3WmXao5SqUkqVKaU2KaX+WymV0M7PoUPvpJQ6yypPrfd7+rjfUKVUo3XuqLaeLURPExLsAgghup5SahwwFSgEPtBaa6XUP4E7MEHHhlauGwu8Awy2djUAFcAQa7kQWANke10TD7wKnGPt0kApkAFkAmcCxcALAXo9t5HAK0AKpumnvsXxx4DLvLZLgDhgsrVcpZSarbU+3PLG/ryT1nq1Umq3VZ4rref6sghQwBqt9S7/XlWI7k1qLoToG9y1Fsu11u4v3Ret9RVKqbCWFyilkoD3MIHFfuBiIFprnYj5Uj4TeB4TcHh7EfMlXA38EkiyrokEJgD/g/kiDrQlwDHgdK11tNY6Bvih1/E9wF3AOCDSKlMEMBv4EhhGU3NRS/6+07PWepGvmymlbDT9N3mu468oRM+gZMp1IXo3pZQdOAT0A87UWn/udWwr5svxh1rr11pc9yDwG6AAmKy1PtKBZ52HqenQwHla6/c6cM1gTPCC1lq1cs5s4BPggNZ6cItj2cAgTE3EaK11bnvP9HH/JGAnkAoM1Vrv9zrWmXdKAw5j+rhM1lpvaXF8HvA+phaon9a6wt8yC9GdSc2FEL3fPExgcQDThOHNXXvhq2PnT631Qx0JLCw/s9bvd+RLOMCWdSawANBaFwFrrc2ZLQ77/U5a6zzgLWvz5z5OcddovCKBheiNJLgQovdzBw7/1MdXVf4T8xf5D5RSqe6dVm1ChrX5bz+eNaMT1wTKuvZOUEqdppR6Tim1UylV4ZVQTAMLrNMyW1zW2Xd6xlpf5d3sZHUcvdjafPa4q4ToBSS4EKIXszoiur80/9HyuNb6IGbkSAim86Fbutfng3480n2dP9cESn5bB5VSvwbWY2oNRmH6WxQDudZSY50a3eLSzr7T+5jmqGRMx1e3q6xn79Jat6xJEqJXkOBCiN7tcswXGcBW77/Uvf5iP8s67t004rPvQzfnau2ANVrm/zDv9TimU2e41jpJa52htc7AjAaBAL271rqRps6a3h073Z+fD8RzhOiOJLgQonfzJ0nWFKXUBOtzjtf+QX7cw93nwZ9rPKNNlFIRrZwT78f9fLkM8/vufa31LVrrb7XWLYORdB/XQefeye05oBGYb+XZmIAZEuwClnXifkL0CBJcCNFLKaWGA7OszclAYhuLu/Ph1QBa62yaAozz/Hjs+k5cU+L1ubW5Tk71436+uO+7yddBpVQ0TX0rWurMOwGeZqcPATumY6i7c+e7Wutj/t5PiJ5Cggshei93rcUWrfUWrXVJawsm+RSYzod26/PfrPWvlFJZHXym+6/xeUqp+R25wBotkW1tLmh53MpyeW0Hn9+aUms9oZXjvwdiWznm9zu18LS1/jmmvwVIR07Ry0lwIUQvpJRSNA0lfb0Dl7yFyWiZAZxr7fs/4Agm4+VnSqmL3KMelFIxVrrtl1rMrPqutSjgNaXULe602kqpMKXUBKXUEqXUxTS33FrfZT0nxLpmBrASOC7Jl58+tNbnK6XuVEpFWfdPVUr9P+A/MdlLfensO7m9CeRhMnamWp/fOcH3EaJbk+BCiN5pNk19BF5r4zwArNqLj61Nd9NIIfADTDKoIZgJzyqUUsVAOSap1eV4TSNgDXW9ElgFRAGPAoVKqSJMdsutwO1Ay3k8HgD2Wfvdz6nADC9NAm7t8Jv7fr8PaAqy/mDdvwjTn+LXmL4Rb7dybWffyX19Pc37V/zNK0uqEL2SBBdC9E7uJpHdWutvOniNOwhZ4P7LXGu9DTOy4i7gK8yXaQQmEHgD+DEm+PCwApWzrTKsBIqAGExq7lXAbZi/5r2vKcb0D1kKHMX8birEzMtxSstndNLlwO+AHZhaGoVJKna11vo/2rqwM+/UgnftkaT7Fr2epP8WQoguppT6PXA/8IXWurWOo0L0GlJzIYQQXcjqIOvukLo0mGUR4mSR4EIIIbqI1bH2bszMsrmYdOtC9Hoh7Z8ihBDCH9Yol5cwOUTirN13aq2rg1cqIU4eqbkQQojAi8CM1onETOV+vdZaOnKKPkM6dPrJ4XBoAKfT2RPnXhBCCCG6nDSLdJ5EZUIIIfqSDv9RLc0iQgghhAgoCS6EEEIIEVASXAghhBAioCS4EEIIIURASYfOAKmvr+fw4cPU1NQEuygCiIiIoH///oSGhga7KEII0edIcBEghw8fJjY2lsGDB2OS8olg0VpTWFjI4cOHGTJkSLCLI4QQfY40iwRITU0NycnJElh0A0opkpOTpRZJCCGCRIKLAJLAovuQ/xZCCBE8ElwIIYQQIqAkuBB+a2hoCHYRhBBCdGMSXPQyF198MVOnTmXcuHEsXboUgPfee49TTjmFSZMmMXfuXAAqKipYtGgREyZMYOLEibz22msAxMTEeO716quvcs011wBwzTXXcPvttzNnzhzuuOMONmzYwKxZs5gyZQqzZs1i165dALhcLn7961977vvYY4/x0Ucfcckll3ju++GHH3LppZeejB+HEEKIIJDRIl3g3Pve6bJ7v/9f57d5/LnnniMpKYnq6mpOPfVUFixYwHXXXcfq1asZMmQIRUVFANx3333Ex8ezbds2AIqLi9t99u7du1m5ciV2u52ysjJWr15NSEgIK1eu5M477+S1115j6dKl7N+/n02bNhESEkJRURGJiYncdNNN5Ofnk5qayvPPP8+iRYtO/IchhBDiOFprKmsbqGtwkRQTEZQySHDRyzz66KOsWLECgEOHDrF06VLOOussz5DMpKQkAFauXMlLL73kuS4xMbHdey9cuBC73Q5AaWkpV199NXv27EEpRX19vee+N9xwAyEhIc2e99Of/pS///3vLFq0iHXr1rFs2bIAvbEQQvQNdQ0uiitqKa6spaii1nyuqKWo8vjPdQ2NTB2awh+vmh6Uskpw0Yt8+umnrFy5knXr1hEVFcXs2bOZNGmSp8nCm9ba54gK730th3JGR0d7Pv/Xf/0Xc+bMYcWKFWRnZzN79uw277to0SIuvPBCIiIiWLhwoSf4EEKIvsrVqCmvrqO0yloq6yhxf66qpaTSfC6uMMFERU29X/cvqqjtopK3T37Dd4H2mi66SmlpKYmJiURFRbFz507Wr19PbW0tq1atYv/+/Z5mkaSkJObNm8fjjz/OI488AphmkcTERNLT09mxYwejRo1ixYoVxMbGtvqsrKwsAF544QXP/nnz5vHkk08ye/ZsT7NIUlISmZmZZGZmcv/99/Phhx92+c9CCCECqa7BRVFFLaVVddQ3NFLvaqS+oZEGVyN1LrP23uf+XG99rq13UVpV5wkYSqvqKK+uo1F3TXkjw+xEhNq75uYdIMFFLzJ//nyefPJJJk6cyKhRo5gxYwapqaksXbqUSy+9lMbGRtLS0vjwww+56667uOmmmxg/fjx2u5177rmHSy+9lAceeIALLriAAQMGMH78eCoqKnw+67e//S1XX301f/rTnzj77LM9+6+99lp2797NxIkTCQ0N5brrruPmm28G4KqrriI/P5+xY8eelJ+HEEK0p8HVSFFFLUUVNRSW11JYXmOWilqKyq19FTWUV/tXa9AVbEqRGBNGYnQ4SbERJEWHkxhjlmafY8KJDAvu17vSuovCpl7K4XBoAKfT2Wz/jh07GDNmTFDK1FPcfPPNTJkyhf/4j/84Kc+T/yZC9G019S4KyqopKKshv6yG/LJqCsrN58KyGgoraiitrCOY34IxESHER4UTHxVGfFQYCdFmHR8dToK1L8kKGuKiwrAFN0Fghx8uNRfipJg6dSrR0dEsWbIk2EURQvRwDa5GyqrrKKuqp7iy1gQNVgBRUFZt1uWBrW2wKUVSrPnCDwuxExpiI8RuI9SzKB/7bJ594SE24qLCiI8KbwogosIIsffOjBASXIiTYuPGjcEughCim6p3NVJQVkNpVW1T50arg2NZtVmXWh0fy6rqqKgJXCI/m4KEaNOUkBwbYZYY0+yQHBtOcozZFxcVht0m0wp0lAQXQgghTorqugYOFVRw0Frcn48VV+Hqgp6NITZFSlwEKXGRpMRGkBpnlpS4SLM/NoKE6DDstt5ZexBMElwIIYQIqJLKWp9BRH5ZYGYqtimIjWxqWnAHCqnxkaRa65TYCOKjg95Hoc+S4EIIIUSHubM/5pZUk1daTV5pFXllNZ7tY8WVlHWir0NKbASJMU0dG+Ojwqw+Cs23E6LCiI4IlSaKbk6CCyGEEM2UV9dzqLCCvJJqckuryS8z6zwrgKiq61yfB7tNkZkYxcCUGAakxDAwJYaBqbH0T44O+tBJEVjyX1MIIfqougYXhwoqyc4rY39eOfvzysnOK6eg/MSaL8JD7QxIjm4eRKTE0C8pmtBeOjpCNCfBRR8VExPTaoIsIUTvorUmt7SabK8AYl9uGUeKKjvVkTI8xEZafGSzJd29TogiJS5C+jr0cRJciKBqaGiQeUaECBCtNYXltRwoKOdAfgUH8806O6/cr6aMULuNASkxZCQ0DxzcS3xUmM85hIRwk9/qXeHa+V1372fe87n7jjvuYNCgQTgcDgDuvfdelFKsXr2a4uJi6uvruf/++1mwYEG7j6ioqGDBggU+r1u2bBkPPfQQSikmTpzI3/72N3Jzc7nhhhvYt28fAE888QSZmZlccMEFbN++HYCHHnqIiooK7r33XmbPns2sWbNYs2YNF110ESNHjuT++++nrq6O5ORkXnzxRdLT06moqOCWW27hq6++QinFPffcQ0lJCdu3b+fhhx8G4Omnn2bHjh386U9/OuEfrRA9hdaa/LIaDljBw8GCcg7mV3CgoIKqWv/6Q/RLjGJwaixD0mIZnGbWWcnRMjxTnBAJLnqJK664gttuu80TXCxfvpz33nuPxYsXExcXR0FBATNmzOCiiy5q9y+OiIgIVqxYcdx13377LX/4wx9Ys2YNKSkpFBUVAXDrrbfyve99jxUrVuByuaioqKC4uLjNZ5SUlLBq1SrATJq2fv16lFI888wzPPjggyxZsoT77ruP+Ph4tm3b5jkvLCyMiRMn8uCDDxIaGsrzzz/PU089daI/PiG6pcqaenJKqsgpqeZoUSUHCio4kF/OoYIKqutcft0rNjKUIWmxDEmL8wQRg1JjiQqXrwERePJ/VS8xZcoU8vLyOHr0KPn5+SQmJtKvXz8WL17M6tWrsdlsHDlyhNzcXDIyMtq8l9aaO++887jrPv74Y374wx+SkpICQFJSEgAff/wxy5YtA8ButxMfH99ucHH55Zd7Ph8+fJjLL7+cY8eOUVdXx5AhQwBYuXIlL730kue8xMREAM4++2zefvttxowZQ319PRMmTPDzpyVE91DX4CK3pNoTQOSWVJFTUsWxYrPt7xTbANHhIQxKjWVgagyDrNEYQ9JiSYoJl6YMcdJIcNEVWmm66Go//OEPefXVV8nJyeGKK67gxRdfJD8/n40bNxIaGsrgwYOpqWm/F3hr12mtO/zLKSQkhMbGRs92y+dGR0d7Pt9yyy3cfvvtXHTRRXz66afce++9AK0+79prr+WPf/wjo0ePZtGiRR0qjxDBUFPXQF5ZDfml1eSVVXuGduaUVJFbUn1CozJiI0NNEJESw6DUGAamxDIoNUaCCNEtSHDRi1xxxRVcd911FBQUsGrVKpYvX05aWhqhoaF88sknHDhwoEP3KS0t9Xnd3LlzueSSS1i8eDHJyckUFRWRlJTE3LlzeeKJJ7jttttwuVxUVlaSnp5OXl4ehYWFxMTE8PbbbzN/vu++KKWlpWRlZQHw17/+1bN/3rx5PP744zzyyCOAaRZJTExk+vTpHDp0iK+//pqtW7eeyI9MiE5r1JriCjNpVl5pjZVQyixmX3Wnkkl5CwuxkR4fSUZiFBkJUVZeiBgGpcSSEC2dKkX3JcFFLzJu3DjKy8vJysqiX79+XHXVVVx44YVMmzaNyZMnM3r06A7dp7Xrxo0bx+9//3u+973vYbfbmTJlCi+88AJ//vOfuf7663n22Wex2+088cQTzJw5k7vvvpvp06czZMiQNp997733snDhQrKyspgxYwb79+8H4K677uKmm25i/Pjx2O127rnnHi699FIAfvSjH7F582ZPU4kQXam8up59uWXszSllb24Ze3PKOFxYSb2rsf2L22BTkBoXSXpCJBkJUdbSFEwkxoTLkE7RIymtgzmTfc/jcDg0gNPpbLZ/x44djBkzJihl6osuuOACFi9ezNy5c1s9R/6bCH9prckrrWZvbhn7csr4LqeMfbll5JZWd+p+ITZl5ruIizDDOOMiSY2P9AQRafGRvXbKbdErdTjSlZoL0aOUlJRw2mmnMWnSpDYDCyHaU1lbz5HCSg7kV5haCatGwp9OlLGRoaTHR5IaZwKF1PgI0uKa8kFIzYPoq4IeXCilbMAvgV8Ag4F8YDlwt9a6sgPXpwP/DZwPpAM5wArgHq11SYtz7wXuaeVWv9FaP9S5t+iZtm3bxk9/+tNm+8LDw/niiy+CVKL2JSQksHv37mAXQ/QQDa5GckqqOFxYaS0VHCkyn4sqajt8nxCbYnBaLEPT4xieEcfQjHiGpsUSHRHahaUXoucKenABPAzcigkIlgBjrO0pSqlztNatNmoqpdKAL4BM4ClgOzAeuBE4Syl1uta6yseli4GCFvs2nuiL9DQTJkxg8+bNwS6GECesrLqO7LzypgDCCiaOlVT5nd46JiKEoelxDMuIZ1h6HMMy4hiQEiNzYgjhh6AGF0qpccAtwOta68u89u8HHgWuAP7Rxi3uBAYBV2qt/+l1/VrrutuB+31c94bWOvuEX6AFf4Zqiq4lfYl6J3dmyr05pnPldzmmOSOvE30iQmyKzKRo+idHm2AiPY6hGXGkx0fKv2MhTlCway5+jOkg8kiL/U8DDwA/oe3gYg5QDbzUYv/LwHPAInwHFyil4oAqrXXn5g5uISIigsLCQpKTk+UXU5BprSksLCQiIiLYRREnwNWoOVJUaUZoWJ0r9+aU+j28MyU2gv7J0WQlR9M/OYb+VkCRnhApKa6F6CLBDi5OBRqBDd47tdY1SqnN1vG2hAM1usWfqVrrRqVUNTBUKZWitW7ZBLIViAVcSqkNwH1a63dP5EX69+/P4cOHyc/PP5HbiACJiIigf//+wS6G8ENheQ1bsgv55lARe3PK2JdXTm19x1Jch9ptDEo103t7BxBZydFEhgX715wQfU+w/9VlAgVaa189q44As5RSYVrrulau/wYYpZSarLX2dB5QSk0G3AkQBtLUv6IEWAqsBYqBUcBtwDtKqZ9rrV/o7IuEhoZ60lYLIdpXVl3H1uxCNmcXsiW7kIMFFR26Lio8xNMXYnhGPEPT4xiYKn0ihOhOgh1cRAGtddmu8TqnteDiEeBiYLlS6jZMh85x1v56INS6HgCtdcvmF5RSz1nXPayUelVr7fM3nFLqeuD6G2+8sb13EkL4UF3XwPaDRWzOLmTz/gL25pTRXs+YpJhwhmdYnSszTL+IjMQoGd4pRDcX7OCiCkhr5ViE1zk+aa0/U0pdgen8+Y612wU8g6nVuAQoa6sAWutCpdSTwL3ALOCDVs5bCix1J9ESQrStrsHFziMlbN5fyObsAnYeKWlz5Eao3cbYAYlMGpTMqKwEhqXHkRgTfhJLLIQIlGAHF0eBsUqpcB9NI1mYJpPWai0A0Fq/opR6HZiA6UexS2udZ/WlaAC+60A5sq11il+lF0IATaM4dh0pYefREnYdKWH30RJqG1pPj21TilGZ8UwanMzkISmM7Z9IeKj9JJZaCNFVgh1cfAnMA04DPnPvVEpFAJOB1R25idbaBXj3ucgApgCrWslz0dIIa53bsWIL0beVV9ez+5gJInYdKWHX0VKKK9tPSjUkLZYpQ1KYNDiZCQOTJAmVEL1UsIOLlzG5Km7DK7gArsP0lXjRvUMpNQwI1VrvbOuGVsbPRwE78Aev/SFAtNa6tMX5AzBJtwoxHT2FEF7qGlzsyy1n15Fidh0tZdeREg4XtZs8F4CspGgmDU5mypAUJg5KIiFamjmE6AuCGlxorbcppf4C3Gw1bfybpgydq2ie4+IjTMIsT08upVQMZhjrCmA/EI/JnTEV+L3W+hOv62OA/UqpN4AdNI0WudY69mOtdedmJxKil8krrWbd7lzW7srhm4PFHZr9Myo8hJGZ8YzKTGB0ZgKjshJIjpVcI0L0RcGuuQBTa5ENXI+ZH6QAeAwzt0h7v9HqMDkrrgT6YTp/fgnM11q/3+LcauA1YDpmhEmM9ayVwINa6w0I0UdprTmQX8HaXTms3ZXLnmOlbZ5vtymGpscxKjOe0VmJjMqMp39KjIziEEIA3SC4sPpLLLGWts4b7GNfHSZFeEeeU4uppRBCYDJg7jxSzNpdpobiaFHr3ZMyk6IYlZlgaiWyEhiWEUdYiHS+FEL4FvTgQghx8tQ1uNi8v5C1u3JYtzuXkkrfg7HsNsXkwcnMHJXBzJHppMRJ84YQouMkuBCil8stqWJzdiFffpfPV3vzqK7znVI7MszOtGFpzBqVzmkj0oiRkRxCiE6S4EKIXsY9R8eWbJO8Kqek9X7KCdFhzByZzqxRGUwekixNHUKIgJDgQogerqyqji0HrGBifwGHCtseJtovMYrTR2cwa1Q6o7MSsdukE6YQIrAkuBCih6msrWfbgSKrZqKQfbltZrgnPNTO+IFJTBqUzPQRaQxKjUHJqA4hRBeS4EKIHqC8up7Pdx7j0+1H2XqgiEbd9hwdY/onMHlwCpOHJDMyM0FmDBVCnFQSXAjRTdXUNbB+dx6fbD/CV3vzaWhl0i+bUozKijfBxOBkxsgcHUKIIJPgQohupN7VyMa9+Xyy/SjrdudSW3/8yA4FDMuIY/IQE0yMG5BEVLj8UxZCdB/yG0mIIHM1arYdLOTT7Uf5bEcOFTX1Ps8bmRnPnHGZfG9cpqTVFkJ0axJcCBEEWmt2Hyvl0+1H+fSboxRV+J5RdGBKDHPGm4AiKyn6JJdSCCE6R4ILIU6ikspaPtx6mPc3HWp1yGhafCSzx2Uye1wmQ9NjZWSHEKLHkeBCiC7matRs3JvPe5sPsX53Li4fHTPjo8I4a2w/5ozPZEz/RJkATAjRo0lwIUQXySmu4v3Nh/hg62EKymqOOx4ZZueM0f2YPT6TKUOSsdtkuKgQoneQ4EKIAKprcLF2Zy7vbj7I5v2FPs8Z2z+R+VMGcNbYfkSGyT9BIUTvI7/ZhAiAfbllvL/5ECu3HvE52iM+KoxzJmYxf/IABqbGBqGEQghx8khwIUQn1TW4+GT7Ud7eeIDdR0uPO25TMHVYKudOHsCMkemSJVMI0WdIcCGEn0qr6nhn4wHe/PIAxZXHDyFNT4jk3EkD+P6k/qTFRwahhEIIEVwSXAjRQYcKKlixYT8rtxymtqGx2bFQu43TR2dw7uQBTB6SLKM9hBB9mgQXQrRBa822g0W8tm4f6/fkHXc8JTaCBacNZv7kAcRFhQWhhEII0f1IcCGEDw2uRlZ/e4zX1u/ju5zjpzQfnhHHZTOGcubYftKXQgghWpDgQggvFTX1vPv1Qd74MttnborpI9K4bMZQJg5KksyZQgjRCgkuhADySqt5bf0+3t98iOq65jORhoXYOGdify6dPoQBKTFBKqEQQvQcElyIPq223sUr6/axfM13x3XSTIgO46Jpg7lg2iDipT+FEEJ0mAQXok/SWrN2Vy5PffgtuSXVzY4NSo3hshlDmTM+k7AQe5BKKIQQPZcEF6LPOVhQwZPvf8PGfQXN9g9Lj2PR2aOYNixV+lMIIcQJkOBC9BmVtfW8uHoPb2zIbjYzaWxkKIvmjGL+lIHYbRJUCCHEiZLgQvR6jVrz0dYjPPvRzmYZNW0Kzp86iJ/NHklcpPSpEEKIQJHgQvRqe46V8pf3trPjcEmz/eMHJuE4dxzDMuKCVDIhhOi9ukX2H6WUTSm1WCm1UylVo5Q6pJRaopSK7uD16UqpJ63r6pRSB5VSf1ZKJbRy/iil1BtKqWKlVKVS6jOl1NmBfSsRTCWVtTzy9lZueebzZoFFSmwEv7tkMg/9bIYEFkII0UW6S83Fw8CtwApgCTDG2p6ilDpHa93Y2oVKqTTgCyATeArYDowHbgTOUkqdrrWu8jp/GLAWaAAeBEqB64D3lVI/0Fqv7IL3EyeJq7GRt786wLJVu6moafDsD7XbuHTGEH58xnAiw7rL//ZCCNE7Bf23rFJqHHAL8LrW+jKv/fuBR4ErgH+0cYs7gUHAlVrrf3pdv9a67nbgfq/z/xdIAKZqrTdb5y4DvgH+opQarbXWiB5nb04Zf3pry3Hpuk8bkcYN3x9LVnKHKsKEEEKcoO7QLPJjQAGPtNj/NFAF/KSd6+cA1cBLLfa/DNQAi9w7rGaWi4BP3YEFgNa6AngGGAmc6v8riGCqdzXyt1W7ueXZz5sFFplJUfzPFdO474pTJbAQQnyKIlsAACAASURBVIiTKOg1F5gv80Zgg/dOrXWNUmoz7X/ZhwM1LWsbtNaNSqlqYKhSKkVrXQBMtM5f5+M+673Ks8HHcdEN7TlWypI3t7A/r9yzLyzExlVnjuDSGUMkCZYQQgRBd6i5yAQKtNa1Po4dAVKUUm2NE/wGSFRKTfbeaW0nWpsDvZ7lvq+vZwFk+XqIUup6pdRXbZRDnER1DS5e+GQXtz67pllgMW5AIk9cfyZXnDFcAgshhAiS7hBcRAG+AgswzRruc1rzCKbmY7lS6jyl1ECl1A8wzSL1La53r309r81naa2Xaq2ntVEOcZLsOlrCzc98zj8//45Gq8IqPMTGDfPG8v9+NpP+yTK5mBBCBFN3aBapAtJaORbhdY5PWuvPlFJXYDp/vmPtdmH6UHwDXAK4G+Ld9wnvzLNEcNU1uPjbqj28um4vXgk2mTAwicUXTiQrSfpVCCFEd9AdgoujwFilVLiPppEsTJNJXVs30Fq/opR6HZgAxAK7tNZ5SqkNmCGn33k9y33fltz7fDWZiCDbcbiYJW9u4VBhpWdfRKidn88dzYXTBmGTuUCEEKLb6A7BxZfAPOA04DP3TqVUBDAZWN2Rm2itXYBnBIhSKgOYAqzyynOxDdMkMtPHLWZYa+lX0Y3U1rv466e7WPHF/ma1FZMGJ3P7BRPJSGyrxUwIIUQwdIfg4mVMrorb8AouMImtooAX3TusBFihWuudbd1QKWXDNJPYgT+492utK5RSbwGXKqUmaa23WOfHANcCe5CRIt3GN4eK+NObWzlc1FRbERlm59pzxnDeKQOltkIIIbqpoAcXWuttSqm/ADdbTRv/pilD5yqaJ9D6CJMwy/OtYgUGGzDZPfcD8ZjcGVOB32utP2nxyP8E5gIfKKUexvTHuA7TLHK+JNAKPldjI89/vItX1+3D+z/GKUNTuO38CaQnSG2FEEJ0Z0EPLiy3AdnA9cD5QAHwGHB3W6m/LXXAVuBKoB+mQ+aXwHyt9fstT9Zaf6eUOh14APgdEAZ8bZ0vqb+DrKKmnj++vomNe/M9+6LCQ7j++2OYP3kASmorhBCi2+sWwYXVX2KJtbR13mAf++owKcL9ed4OYIE/14iud7iwgnte/orDXp02pw5L5bbzJ5AWHxnEkgkhhPBHtwguhNi4L58/vvZ1s8nGrjxjOD+dPVL6VgghRA8jwYUIKq01//oym6c+2OFJiBUWYuNXF01i9rjMdq4WQgjRHUlwIYKm3tXI4+9u571Nhzz7UmIjuPfyaYzoFx/EkgkhhDgRElyIoCiprOW+V79m+8Eiz77RWQncvXAqybERbVwpOkxraKiHulqz1NeBsoFNWWsbKGWt2/gM0FAHdXVQX9vxdWMjJCRDUiokpZl1mK/kuEKI3kaCC3HS7cst496XvyK3tNqzb+6ELG67YELvnmysphqK8qE436zLSqDRZb6EdSM06qbPupXPjdZSbwUMtbVNn+usL/Y6r33dbWR1bAIku4MNK+BITmsKQOISTGDjTWtwNVhBS51XoGMFMfVWANXYaK5PSIa4RAiRX29CBIv86xMn1ZqdOTz4xmZq6l2ASVjy87mjWThzaM8eZlpXC8UFJmjwDiCKCszn4gKoqgh2KYOvvMQs2Xt8Hw8JhfhEEyi4a1vq6zoXJMXEQ0ISxFtLQnLTtvf+0LYmXRZCdIYEF+Kk0Frzz8+/46+f7vbsiwoL4Y5LJjNjZHoQS9ZBWkNFGeQdbb7kH4O8Y1BRGuwS+hYSapoiQsMgNNTsa3TXhrhMbYn7c8saEq2tmhPMte77tFyHhkNY2PHHUFBiBVyFuSbAamwnbU1DPRTmBebdK0rNcnh/2+dFRkN4hPUu7vcIgxCvz97HQsPNzyM8wgQsiSmm5iUhWQIVISwSXIguV1Pv4k9vbmHVt8c8+/olRnHvj6YxOC02iCVrQWsoL4XcI1bg4B1IHDvxmoeQUPNF5P1lFBLavH/Dcf0h7Gbt/dlmM1/e7iXU63NYGIRFNH22daNmpkYXlBRZNTp5UGiti/JMQFGU3/rP2G5v+lJ3rz3BjbWgoKwYSotMk1O7+fcs1ZVmCYTYeEhMhSTrv3NiatN/c/d+CUBEHyDBhehS+WXV/Pfyjew51vSX/aTBydx12SnERQX5l2xdLezbCbu3we7tcGA3VFe1f50vNhskpJgvj6RU64sktfnn2Pjj+xP0JTZ708+Esb7Pqa40AV5IaPPAwe5nkNToMgFGaZEJaEqtpaTw+H3t1ab4o7zULAe/a/2cuEQYMxkmz4TxU03NiRC9jAQXostU1tbzm2XrOVbc9IV94bRB3DBvLCF228kvUHUl7N1hBRPbYP9u01Gwo8IjIC3TLKmZkNYP0rMgtZ9pw+9OtQQ9VWR0YL5sbXarj0WymY2oNY2NUFVpdQyta1padhht2Xm0vg5qqqC4sKlPTUlhxwKVsmL44hOz2ENg9CQTaEyeYWo4hOgFJLgQXeYv737jCSzsNoVj/jgumNrWb/oAqyiDPdubaiYO7m2/qjwiygQNaVlNgURaJqRnmr84+3LNQ29ks0FMLBCA5rlGF5QWm0DD3bnXe11cYPqgeAcgrgb4ZqNZXnwcBo8wgcakGdB/SOf+f2tsNIFO/jGzlJdCRCRExVhLNETGQLS1Lc00ogtIcCG6xKfbj/LRtiOe7d8smMSc8Vld+1CtYddW2PiZCSaOZLd/Tb+BMHI8jJwAw8eZKnsJIERn2OxN/Sta0+iCw9mweZ1ZDu5tfjx7j1neWAYpGaY2Y/JMGDG+edNQbQ0U5Ji+QO4gIj8HCo5BQa7pGNtRIaFNQUezACTaq09PWOvrludERkFMnF8/OtH7SHAhAi6vtJpH/73Ns33OxKyuDSxqa2D9R/DxW20HFErBgKEmkBgx3ixxCV1XLiFastlh4DCzXPQT05F1y3rYtA52bwWXq+ncghxY+YZZomJMEFxeZgKJsuLAlamh3twvkPeMSzT/1gYMg4HWOj1Tmg77EAkuREC5GjUPvrGZylrTlyEjIRLH/HFd87D8YyagWPOB71EGdjsMGmGCiZETYPhY80taiO4iOQ3OvsgsVRWw7UvYvB62f9m8c3FVhdnfUTHxpnkvJcPk8qirMX1LqsqtdUXT2p9+Rx1VVtzU3OMWFm6aejwBx3DIGmT6MnVWQ4Np6pSmnW5HggsRUK+s3cs2K6W3TcFvL55MdHho4B6gNXy7CT7+F2zdcHxypfAImHkOTD0dho45sV9cQpxMUTEwfY5ZGupNE9/mdSaoKC5ofq7dDsnppjNxaj9IzTCBRFompKR3vFOs1qaDarV3wGEFINWVHUv17skIa+2rKDO1iS25R2ft29m0T9kgo7+p5eg3wAQ6tTVNS12tta4x2WjrvI/VNNX0JKZAxgBzj34Dm9a+Mr6Kk0KCCxEwu4+WsGxVU5KsK88cwbgBSYG5eU0VrF1paipyDh1/PC0T5lwIp88z7cVC9GQhoTBuqlmuvAkOfAfHDprRL2n9zJdpIJoYlDIBuDshWCA0NppaxUN7TZ+Sg/vM59Ki48/Vjea9jh08sWe6O8zu2NR8f1RM82DDvU5OM515RZeR4EIERE1dAw+s2Iyr0dQkjMlK4Mozh5/4jXOPwMdvwtoPfeegGD/NVCmPnya/LETvpJQZRTJ4RLBL0jE2mxminZ4F085q2l9abIKMQ1awcXAf5B4+sflv3P/mWxsCXFUBe781i7ewcFPjExllBVeRXuvwtrcjIk2K+ug4+Z3TBgkuREA8+cG3HCkyWQ4jw+zccckU7J39h1dbY9qeP//AtD23FBEFp3/f1FRk9D+BUgshTpr4RIifZv4QcKutMenZD+0zKeLDwk2G2XAry6y7ViUswvqStz67t0NCTdNIwTE4dsiqBXGvD0Ntte+y1NV2bDRZW+wh1jtZ89bEJ5lt9+eEJIhPNsnz+mAQIsGFOGFrdubw7qampoqb5o+nX2KUfzepqTYBxVerzbqu9vhzMgbA2RfCrHNMgCGE6NnCI2DYGLN0VkiI+d2QMQCmzGrar7VpKmkWcFjr8gDMBeRqaJqosC02mxk9E5cI0bFN+UWiYk0TbrT7c0yLY1E9enSNBBfihBSW1/DI21s922eN7cc5Ezs47LSmCrZ8AV99Btu/MlkPW1IKJpwGcxfA2CnSOUsI0TFKNaWbHze1+bGKMlNT4uk8Wt28I2lb21UVpomno/PRuJOalRT6/w6RVvDhnfTME4TENuUmiY5tfiwyxgRdQSTBhei0Rq156M0tlFWbhD0pcRHcet6EtqdOr6o04/o3fm4CitaS/WQOhFPOMLUUaZldUHohRJ8VE3fiib5qa7zmrPFeF3ptF57YhIeeSfVy/b82PAKyBsOdj3T++SdAggvRaW98sZ+v95khcgr47YLJxEb6GHZaVWGSBG38HL79uvWAImswTDsTpp4BmScxTbgQQvjLe66httTXNc3UW1UBleXNh/1WVljbFeZztXt9gjP1uofyBokEF6JT9uaU8dzHuzzbP5o1jEmDWwxlq6qAV5+FNR+2nqhnwFCYagUU/QZ0YYmFECIIQsNMDpKUDP+ua3RBVZWVd6SieRDi2fZxrLLcBCZaBzVpoAQXwm+19S7+741N1LvM8K8R/eL56eyRzU/atBb+/rjvse0DhzfVUKR38XwjQgjRE9nsZlK9mE5MqtfYaPq0NXRB9tUOkuBC+O3Zj3ZyIN+0I4aH2rnj4smEuqdQLy2GfzpNJ01vg0aYMe/TzjDjy4UQQnQNmy3oUx1IcCH8smFPHv/6MtuzfcO8sQxIiTFVcGtXwstPNe/AFJ8IV90Mp5x+8gsrhBAiKCS4EB1WUlnLkre2eLZnjkznB1MGmNkb//YofPN18wvOOBcWXmuGSQkhhOgzgp42TCllU0otVkrtVErVKKUOKaWWKKU6NEGEUipGKXWnUmqbUqpcKVWglFqrlLpGtRgTqZR6QSmlW1l+2DVv2DtorVny1lZKKk0uiqSYcBafPw718Ztwzw3NA4uUDLj9j3DNYgkshBCiD+pwzYXD4ZjidDo3tX+m3x4GbgVWAEuAMdb2FKXUOVrrVpLGm8AEeBeYBfwVeAyIAn4MPG/d6w4fl/7Ux74NJ/AOvd7bGw+yYU+eZ/uuWSnEP3Yn7N3RdJKywTkL4OKrZTZSIYTow/xpFtnocDi+BJ4CXnI6nT5mkfKPUmoccAvwutb6Mq/9+4FHgSuAf7Rxi+nAGcAjWuvFXtc7gZ3AL/ARXGit/36iZe9LqmobeO4jM01yiHZxT9x+xj3/ZPN8FZmDTE3F0NFBKqUQQojuwp9mkX8DpwBPA0cdDsdjDodjwgk+/8eY/EstU4g9DVQBP2nneneKtaPeO7XWdUAB4DMLiTLirJoP0Y5V3x6lqq6BEbW5PJn3Cqdtf7cpsLCHwEU/gbsfl8BCCCEE4EfNhdPpvMDhcGQB1wE/B24CHA6HYz2mNmO50+ms8fP5pwKNtGiS0FrXKKU2W8fbsgEoAX6rlMoGvgAigWuAqcANrVxXCsQCdUqp1cBdWusv/Cx7n/H+5kP8sPRrfl6yFjte0yMPGWVqK7IGB61sQgghuh+ltW7/rBYcDocNOB/T7HAupgakBFgGLHU6nTvauLzp4UptA9K01uk+ji0HFgLhVk1Ea/c4E3gG8M7iVA78TGv9RotzHwDCgI2YWo1JwG1ANHCe1nplG8+5Hrj+xhtvnArgdDo78oo93sH8cv7vz6/yWM7LTdVcYeGmX8U5C3r0rH1CCCH80uGZIzsVXHizajOuxdQSpFm7PwMedzqdr7b5cKX2AqFa64E+ji3DdLxM1FqXtHGPKcBdwD5gLZCEqVUZDSzQWn/YThlGAJuBo1rrEW2dC+BwODT0neBi6QffMONfS5hYa7U8DR4Jv/hPSYQlhBB9T4eDi0D0ORgHTASSrQcXAmcCLzscjo0Oh2NwG9dWAeGtHIvwOscnpdQETEDxodb6N1rrFVrrZzGdPHOAp5VSbf5prbXeAywHhiulRrZ1bl9T72qkbM0qT2DRaLPDtb+RwEIIIUSbOpVEy+FwpGH6XVwHDLZ2fwQ4gTeBQcBvMM0mTuC8Vm51FBirlArXWrecvi0LKGirSQRYjAlCXvHeqbWuUkq9A9xslW9vO6+Uba1TgN3tnNtnbPj2MFfmftq0Y/YFkCGTiwkhhGibX8GFw+GYiwkYFgChQDFmpMcTTqfzO69T95vTHeHAj9q45ZfAPOA0TFMKAEqpCGAysLqdIrlnvfJVOxHSYt0Wd3NIbgfO7TPK33mVzIYyAGrDogi/qL3BO0IIIYR/SbT2AEMxTR9fYWokXmpnhMgeTGfJ1rwM3InpVOk909V1mGRYL7p3KKWGYfpn7PQ671tMcHIN8KDXuQmYAKgYq9bCyvjp0lo3K6/VZ2MhsENr3V4NR59ReDSXM/d+6tmumX8F4Z2ZnU8IIUSf40/NRRbwAuB0Op0bO3jNi8C61g5qrbcppf4C3KyUeh2TS8OdoXMVzRNofYRpbvHuUPII8DPgAav/xRpMh87rgH7ATVpr95yzI4B3lVJvYIIe92iRnwMu4PoOvlOfUPTiM4ywWqTyI5NJPe/SIJdICCFET+FPcJHpdDpbHbXhi9PpPAQcaue02zB9Hq7HDG8twKTxvrut1N8AWusDSqnTgLuBuZiMntWY0R+/0lq/7nV6DrASmANchcmHcQxTe/K/LWpE+rTGw9kM2/W5Z/voOVeSGiJz3AkhhOiYEx6K2tf0haGoZX/8LXH7tgKwJWoAox96gvAwCS6EEKKP6/BQVH/6XNyAGQFyptPpPOrjeBamA+YfnU7nsx29r+hmtn3pCSxcKL6dtZBJElgIIYTwgz95Lq4EjvkKLACcTucR4DDtzwciuquGBhpfXurZfD9mLNO+Nz2IBRJCCNET+RNcjAK2tHPOVkxmTNETrf43thzTRaZShbJqxDmM6Bcf5EIJIYToafwJLuIx84e0pQxI7HxxRNBUlsObTTPRvxQ/jVmnSpwohBDCf/4EF8cwab7bMhHI73xxRNC8/U+oMAmzcuxxvJ1wCnMmZLVzkRBCCHE8f4KLT4D5DofjDF8HHQ7HmcAPMPkoRE+SewQ+ftOz+WziLE4b25+4yLAgFkoIIURP5c8wgP8DLgdWOhwOJ/AecASTXOsHwI1ArXWe6ElefRZcJtfY9vB+rI4azv9OljlEhBBCdE6Hay6cTucuzDwhtZjEV+9iOnC+C/wSqAEWOp3OHV1QTtFVdm6BTWs9m08lnkl6YhSThyQHsVBCCCF6Mr+mXHc6ne9g5hf5DfAapgnkNeDXwDCn0/nvgJdQdJ1GF3gNPV0ZPYrd4enMmzQAm+pwrhQhhBCiGb+zIzmdzkJgSReURZxsa1fCITNXW40K4YWEmShg3qT+wS2XEEKIHs2vmgvRi9RUwYoXPJuvxU0hPySWU4amkBYfGbxyCSGE6PE6ldfZ4XD0x3TkDPd13Ol0rj6RQomT4N3lUFoMQHFINMvjTgHgXOnIKYQQ4gT5FVw4HI55wMO0n4XT3ukSia5XmAcfNE0Y+2z8TGpsYcRFhjJzVHoQCyaEEKI36HCziMPhmA68DSQAj2NmR1sNPA3stLbfAv4n8MUUAfX681BfB8CxuExWRptY8ewJWYSFSFwohBDixPjT5+JOzHDTU51O5y+tfZ84nc4bgPHAfcA5wKuBLaIIqH074YtPPJuPRM9CWyND5kuTiBBCiADwJ7iYCbzZYlZUG4DT6dROp/MeYAfw3wEsnwi05U1DT48OnszmsH4AjOwXz5D0uGCVSgghRC/i78RlB72264DoFuesAc460UKJLnLsEHz3LQDaHsITcbM8h86dIrUWQgghAsOf4CKP5jOe5gHDWpwTCsg4xu5q0xrPx8qRU9hQavpXhIfYmDMuM1ilEkII0cv4E1zspnkwsR74vsPhGAngcDgygMuAPYErngior5uCi7UxIzyfzxjTj+iI0GCUSAghRC/kT3DxHvA9h8ORZG3/GVNLscnhcHyJGTGSCjwS2CKKgCjMhWwT92l7CMuK4j2H5kuTiBBCiADyJ7h4CtOfoh7A6XSuARYC+zGjRY4BNzqdzmWBLqQIgK+bJicr6j+a/AaT4iQzKYoJA5Nau0oIIYTwW4eTaDmdzjLgixb7VgArAl0o0QW8mkQ+CR9i5rYF5k0agJJJyoQQQgSQP0m0nnM4HIu7sjCii5QWw3ffAKCVjeVVaQDYFHx/okxSJoQQIrD8aRa5EkjrqoKILrR5LWgNQG7qUErtUQBMG55GSlxEMEsmhBCiF/InuMhGgoueyatJ5AP7QM9nycgphBCiK/gTXPwD+IHD4Uhs90zRfVSWw84tns0PbCa4SIgOY/oIiRWFEEIEnj/Bxf8CXwGfOByOCxwOh0yf2RNs/QJcLgAOx2aRHxILwLmTBhBi9+c/vxBCCNEx/ky5XmOtFfAvAIfD4es87XQ6/ZrKXSllA34J/AIYDOQDy4G7tdaVHbg+BrgV+LF1fS0m6ddS4K9aWx0Oms6fDvwBmA5oYC3wO631Zn/K3SNsPL5JRAHnnTKwlQuEEEKIE+NPEPAZ5ou4KzyMCQ5WAEuAMdb2FKXUOVrrxtYutAKTd4FZwF+Bx4AoTKDxvHWvO7zOnwF8ChwB7rZ23wx8ppSapbXeFtA3C6aaavhmo2fz8yiTYHXa8FQyEqOCVSohhBC9nD95LmZ3RQGUUuOAW4DXtdaXee3fDzwKXIHp79Ga6cAZwCNaa89QWaWUE5M19Bd4BRfWPeuAs7TWR6xzl2NmdF0CzAvAa3UP27+C+joADoancCTUdJe5YOqgYJZKCCFEL9cdGt1/jKmpb5k2/GmgCvhJO9e75wn3ngoerXUdUAB4mlWUUsOBU4FX3IGFde4R4BXgHKVURifeoXvyGiWyOmIIAKlxEZw6XDpyCiGE6DrdIbg4FWgENnjv1FrXAJut423ZAJQAv1VKLVRKDVRKjVJK/S8wFbi3xbMA1vm4z3pMkDPV7zfojurrYGvTj3SN1SRy3ikDsdskI6cQQoiu0+FmEYfDcXf7ZwGmQ+d9fpQhEyjQWtf6OHYEmKWUCrNqIo5/mNbFSqmLgGcwnUDdyoHLtNZvtHiW+76+ngWQ5es5SqnrgetvvPHG1t+kO9mxCWqqADgaEs++0BRsSnGu5LYQQgjRxfzp0HlvG8fcHT2V9dmf4CIKz0wXx6nxOsdncGGpALYDb2JGfiQBNwH/UEot0Fp/6HUfWnleTYtzmtFaLwWWOhyOrurUGlheTSKfRw0DpZg1Kp3kWMnIKYQQomv5E1zMaWV/Aqa54VbgHeBJP8tQReuZPyO8zvFJKTUBE1As1lo/6bX/n5iA42ml1DCttcvrPuGdeVaP4XLB5vWeTXeTyAXTpCOnEEKIrufPaJFVbRz+l8PheBnT/+ElP8twFBirlAr30TSShWkyaavWYjEmMHjFe6fWukop9Q5mmOlgYC9NnT59NX249/lqMulZ9myHijIACuzR7ApLJyspmkmDk4NcMCGEEH1BwDp0Op3ObZjkWnf6eemXVjlO896plIoAJmOygrbFHRTYfRwLabH+0lrP9HHuDEyTzkYfx3qWjZ97Pq6NGopWivOnDsQmU6sLIYQ4CQI9WuQgMN7Pa17GfKnf1mL/dZj+Dy+6dyilhimlRrc471trfY33TqVUArAAKMbUWqC1/g4TrCxUSmV6nZsJLAQ+1lrn+Fn+7qWxETat9Wx+HjWcULtNplYXQghx0viVprsDpgPV/lygtd6mlPoLcLNS6nXg3zRl6FxF8wRaHwGDMB1H3R4BfgY8YPW/WIPp0Hkd0A+4SWvd4HX+L4FPMBk5H7P23YIJtH7lT9m7pf27oKQQgFJbBNvCMzl7XD/iosKCXDAhhBB9hT9DUVubjCIEGID5Mj+D5sNBO+o2zJTu1wPnY5JfPYaZW6TV1N8AWusDSqnTMKm852IyelZjcmT8Smv9eovz1yqlZgP3W4t7bpGFWust9HReo0TWRQ6lUdk4XzJyCiGEOIn8qbnIpu25RRSwB/i1v4WwRnIssZa2zhvcyv69wNV+PG8dJhDpXbRuFlysiRrKkLRYxmQlBLFQQggh+hp/gotl+A4uGjH9GjYA/3I6na3lrBBd7fB+yD8GQKUKZVPkQG6YNgglHTmFEEKcRP4MRb2mC8shAsGr1mJD5BBCwsM4e7zPhKNCCCFEl+kOc4uIQGmRlfPsCVlEhQe6z64QQgjRNn86dA4DTgfecTqdhT6OpwDnAZ87nc59gSui6JCcw3AkG4BaZeeryIH86RTpyCmEEOLk86fm4neYDpdlrRwvBR4CfnOihRKd4FVrsTFiIEMGpjEsI66NC4QQQoiu4U9wMRtY6XQ6630dtPZ/CJwdgHIJP+lmTSLDOV9qLYQQQgSJP8FFFmY4alsO0jStuThZCvNQ2bsBaMDG9sQRnDW2X5ALJYQQoq/yJ7ioA9qrZ4+l7VwYoit4pfveHNGf06cOJzzU11QrQgghRNfzJ7jYDpzvcDhCfR10OBxhwAU0zfUhTpK6Das9n9dEDeP8U1pLpiqEEEJ0PX+Ci78DA4HlDocjw/uAtb0ckwZ8WeCKJ9pVWkzovh2AyWZWNuoU+ifHBLdMQggh+jR/kiAsBS7DzDT6fYfDsRU4gumLMREzg+lK4MlAF1K0zrVpHXarJeqb8Exmz/R3UlohhBAisDpcc+F0OhsxeSweAOqBGZhgYwamP8YfgfOt88RJUvb5J57PmxJHMXNUehBLI4QQQvg55bo13PROh8NxFzAaSABKgJ0SVARBVQWxB5q6uERNP4sQuyRdFUIIEVydyg1tBRLScTPIitauJkm7ANgdlsZZZ00OcomEEEIISf/do5V+/glJ1ueDAyYyMj4yqOURQgghQNJ/91h1lZVkHtnh2U6b8/0glkYIIYRoxUZDcQAAHUtJREFUIum/e6hdH3xEuG4A4HB4MuNOmxjkEgkhhBCGpP/uobwTZ5WOOhW7TQWxNEIIIUQTSf/dA9WUlTO6YJdne8C8c4NYGiGEEKI5Sf/dA9WsfJNobVqnjoUnETdqdJBLJIQQQjSR9N89TX0dUavf8mx+PvB0UNIkIoQQovuQ9N89zbqPCKsoAaDQHs2hEdODXCAhhBCiOUn/3ZM0uuD9Vz2br8dOJjkxNogFEkIIIY7nV65op9NZ73Q67wSSgfHAGdY6xel03gW4HA7HgsAXUwDw9VrIPQJAhQrj37HjSZXEWUIIIbqZgKT/djgcgxwOx7XAIqAfYA9M8YSH1vDecs/mW7ETqbKFkSbBhRBCiG6mU8EFgMPhsGP6X1wPnIOpBdGYfhci0HZuhuw9ANSpEN6ImwRAWlxEMEslhBBCHMfv4MLhcAwFrgWuAdzzexcATwHPOp3OAwErnWjy76Zaiw9ix1JijwKQZhEhhBDdToeCC4fDEQJcgqmlmIOppagDXsd06vyX0+m8uzMFUErZgF8CvwAGA/mYYa13a60r27n2XuCeNk5p0Fp78nK0c/5vtNYPdbjgJ1P2btixCQCtbLwSY2Y/jY0MJTKs05VPQgghRJdo85vJ4XCMAK4DrgZSAAV8DbwA/MPpdBY5HI4THR3yMHArsAIzMdoYa3uKUuocrXVb938d+M7H/omYCdTe8nEMYDGmtsXbRn8KfVK921RrUT5+Bjll8QCkxUmthRBCiO6nvT97d2H6UeRhgoDnnU7nN/+/vXuPk6Os8z3++WWSmdxIuCRHSHDxnACBVSGsBBBRQZFN4OVlV0BwwRvC0RI84azLSzm7kj3uosuaDQeWUgGRBcGDsCEri4JcjCAXQ9Qs8SwI7BKEIEwSySQkmcntd/54apLqTnWne6amq3rm+369+lXTTz1V/VSlZvqX55rXh5vZm4GLgEXu/uFU+vPAVcBZwK21jnf3J4EnM877reTHb9c4dLG7rxxgsVvrlZfgl4/sfPvcrD+Gh0JcpCYREREpo0aGojrwQ+COPAOLxNmE2pArq9KvAzYB5zR7QjMbTwhKVgH31Mk3yczK36Zw7x1hpAjAW2azsmvqzl1T1ZlTRERKaE/BxV8BLxCGmD4SRdG/R1F0SRRFB+T0+bOBHcDSdKK79wLLk/3NOpOwwNp33H17jTxPAj1Ar5k9amZzB/A5Q2/dWnjsgV3vTz2T7vW9O99qGKqIiJRR3eAijuO/jeN4BjCX0CdiBmGGzt9GUXR3FEVnDvLzpwFr3L0vY98qYIqZdTZ5zvMItS03ZOxbR5jG/CLCMNovAQcBd5vZJ5r8nKF3352wLSxQxozD4ZC30N2zeedu9bkQEZEyamiGzjiO743j+HTCwmSXEmoz5gLfI3yRz4qi6G0D+PzxQFZgAdCbytMQM5tJmDX0QXd/vnq/u1/p7v/d3f/J3X/g7n9P6Pz5KrDQzCbWOfcFZras0bIM2sYNsOTuXe/nnAlmrE4FF1Mnq1lERETKp9npv7vjOP5aHMcHA+8D7iCsM3I0sDSKol9FUfS5Jk65CeiqsW9sKk+jzku21zd6gLuvJSy2tjdwfJ1817r70U2UZXCW3A19SSBxwB/AkWGBsu71qZoLNYuIiEgJNRVcpMVx/EAcxx8BDgQuAZ4BjiSM8mjUy4Smj6wAYzqhyWRLIydKOmd+DPg9oQmnGSuT7ZQmjxsaW/rg/tQlzDkDRo2ib+t21m0Mt2OUGftOVM2FiIiUz6BHS8RxvAb4OvD1KIpOJMze2agngFOAY4CH+xPNbCwwC3ioiXO9nzBj6P+p0YejnkOS7atNHjc0HvkxbOgJP+87FY49EYA1qc6cUyeNpWOUFVA4ERGR+nIdihnH8RJgSROH3EbowzGPVHBBmLhrPHBLf4KZzQDGuPvTNc7V3ySSObdFUrMxwd17qtLfCHwWWAs82kTZh8b2ymXVOeXDMDpMMppuEtEcFyIiUlaFzvPg7ivM7BrgQjNbRJhPo3+Gzp9SOYHWA4SRHbv9d93MpgFzgKXuvqLGx00EnjezxcBTwGvATEJNy0TgbHffXOPY1ln2EKxJKlAm7AXvnLNzV+VIETWJiIhIOZVhEql5hD4PFwCnEablvpqwtkijU4t/grDMe72OnJuBfwaOBT5ECCjWEFZxvcLdl9Y5tjXcK6b65r0fhK5dQUTlSBHVXIiISDkVHlwkE10tSF718r2pzr7Lgcv3cHwfzfUHab1fL4OXkhG0nV3wng9U7NZIERERaQcDHi0iQyBda/GuuTBxUsXu7p7U7JyaQEtEREpKwUVZPPfv8EzSXaSjA973p7tlSTeLqOZCRETKSsFFWdyTqrU49iTY779U7Hb3qtEi6tApIiLlpOCiDF5+AZY/vuv9nDN2y7J+81a2bAv9Wyd0jWZC15hWlU5ERKQpCi7K4J7bd/086+0w7aDdsnSrSURERNqEgouire2Gn/9k1/u5u9dagIahiohI+1BwUbT7FoVZOQEOfSvM+MPMbBXDUDWBloiIlJiCiyJt6IGHfrTr/dwza2ZVs4iIiLQLBRdFeul56EjmMTvwv8Jbaq/onp7jYqrmuBARkRIrfIbOEe3wWXDFTaH24g3TwWqvcrpas3OKiEibUHBRtHET4I9P32M2NYuIiEi7ULNIG9iybTu/f70PgFEG++3VVXCJREREalNw0QbWbujb+fN+e42lY5T+2UREpLz0LdUG1CQiIiLtRMFFG0gHFxopIiIiZafgog2kR4pM1QRaIiJScgou2oCaRUREpJ0ouGgD3et3TaCl4EJERMpOwUUbWK0+FyIi0kYUXJScu6tZRERE2oqCi5Lb0LuV3q1h1dRxnR1MHKtJVUVEpNwUXJRcdZOI1Vl/REREpAwUXJRcejVUNYmIiEg7UHBRct1aDVVERNqMgouSq2wW0QRaIiJSfgouSk4jRUREpN0ouCg5NYuIiEi7KUVwYWajzOxiM3vazHrN7EUzW2BmExo4dr6ZeZ3X1oxjZprZYjN7zcw2mtnDZvaeobm6wVmd7tCpCbRERKQNlGXShIXA54E7gQXA4cn7o8zsZHffUefYRcBzGelHAH8B3JVONLMZwKPANuAKoAc4H7jXzOa6+/2DvJbcbNu+g7UbQnBhwH7qcyEiIm2g8ODCzN4MXAQscvcPp9KfB64CzgJurXW8uz8JPJlx3m8lP367atdXgb2Bt7n78iTvTcD/A64xs8Pc3Qd+RflZu6GX/oLsu1cXYzpKUdEkIiJSVxm+rc4m/Mf8yqr064BNwDnNntDMxhOCklXAPan0CcAHgCX9gQWAu78OXA8cCsxu9vOGSsWCZWoSERGRNlGG4GI2sANYmk50915gOQP7sj8TmAR8x923p9KPALqAxzKOeTxVnlKoGIaqzpwiItImyhBcTAPWuHtfxr5VwBQz62zynOcBDtyQ8Vn95836LIDpTX7WkNEwVBERaUdlCC7GA1mBBUBvKk9DzGwmcALwoLs/n/FZ1Pi8up9lZheY2bJGy5GHimGo6swpIiJtogzBxSZCU0WWsak8jTov2V5f47Oo8Xl1P8vdr3X3o5sox6CpWURERNpRGYKLlwlNH1lf+NMJTSZbGjmRmY0GPgb8njCsNeuz+s+b9VmQ3WRSiG7NcSEiIm2oDMHFE4RyHJNONLOxwCygmaaI9wNvAG6u0YdjBaFJ5O0Z+45Lti1t+qhHs3OKiEg7KkNwcRuh8+W8qvTzCf0fbulPMLMZZnZYnXP1N4lUz20B7BxyehdwopkdmTrvRODTwLNUjVopysberWzq2wZA15gO9ho3puASiYiINKbwSbTcfYWZXQNcaGaLgB+ya4bOn1I5gdYDwEGEeTEqmNk0YA6w1N1X1PnILwHvBX5sZguB9YRAZjpwWlkm0KoYKTJpLGa7XbKIiEgpFR5cJOYBK4ELgNOANcDVwJf3MPV32ieADrI7cu7k7s+Z2TuArwFfBDqBXwJzyjT1t5pERESkXZUiuEgmulqQvOrle1OdfZcDlzf4eU8BH2yiiC2X7sypkSIiItJOytDnQjJUDEPVSBEREWkjCi5KqrJZRBNoiYhI+1BwUVKVHTpVcyEiIu1DwUVJrV6vPhciItKeFFyU0PYdO1iTDi60roiIiLQRBRcltHZDHzuS6Tb2mdBF5+iOgkskIiLSOAUXJbR6fXrBMtVaiIhIe1FwUULqzCkiIu1MwUUJVayGqs6cIiLSZhRclFBls4iCCxERaS8KLkqoetEyERGRdqLgooQqggvVXIiISJtRcFFCq7UiqoiItDEFFyWzqW8br/duA2BMxygmj+8suEQiIiLNUXBRMtW1FmZWYGlERESap+CiZNL9LTSBloiItCMFFyWTXrBME2iJiEg7UnBRMhopIiIi7U7BRckouBARkXan4KJkKmbnVLOIiIi0IQUXJVNZc6EOnSIi0n4UXJTI9h3OmlSHTtVciIhIO1JwUSLrNvaxbYcDMHl8J11jOgoukYiISPMUXJSIOnOKiMhwoOCiRLQaqoiIDAcKLkqkOz1SRDUXIiLSphRclMjqHnXmFBGR9ld4cGFmo8zsYjN72sx6zexFM1tgZhOaOMe+ZvZ1M3suOcdqM/uJmb2zKt+NZuY1Xqfnf3XNUZ8LEREZDkYXXQBgIfB54E5gAXB48v4oMzvZ3XfUO9jMDgKWABOBbwPPAJOBI4DpNQ47NyNt6UAKn6fKFVHV50JERNpTocGFmb0ZuAhY5O4fTqU/D1wFnAXcuofTfJdwHUe4++8a+Vx3/+7ASjy0KlZEVbOIiIi0qaKbRc4GDLiyKv06YBNwTr2DzexdwAnAFe7+OzMbY2bj9/ShFkwys6Kvf6feLdtYv3krAKNHGftM7Cq4RCIiIgNT9JfrbGAHVU0S7t4LLE/213Nqsv2tmd0FbAY2mtkzZlYvMOlJXpvN7D4zO3ZApc9Rd3pmzsnjGGVWYGlEREQGrujgYhqwxt37MvatAqaYWWed42cm2+uAfYGPA+cBW4CbzeyTVflfIfTx+CzwJ8DlwNHAw2Z28oCvIgerK5pE1N9CRETaV9HBxXggK7AA6E3lqWWvZLsBOMndb3H3G4B3AuuAy9NNH+7+RXf/n0m+xe7+18AxwFbgG/UKamYXmNmyPV/SwHSv10gREREZHooOLjYBtToXjE3lqaX/G/l77r6lP9HdXwN+AOzPrtqNTO7+LPB94GAzO7ROvmvd/eh65xqMytk5FVyIiEj7Kjq4eJnQ9JEVYEwnNJlsydjX76Vk+0rGvv6RI/s0UI6VyXZKA3mHRMUEWqq5EBGRNlZ0cPFEUoZj0olmNhaYBeypGaK/I+iBGfv607obKMchyfbVBvIOCTWLiIjIcFF0cHEb4MC8qvTzCX0tbulPMLMZZnZYVb7FhP4W55jZxFTeA4APAc+6+3NJ2oQkaKlgZkcBZwBPuft/DP6SBkaLlomIyHBR6CRa7r7CzK4BLjSzRcAP2TVD50+pnEDrAeAgwrwY/ce/ZmZfAL4FPG5mNwCdhNEgncCFqeMPAX5kZouBZ4GNwJHAp4DtwAVDcpEN2OHOmvVqFhERkeGhDNN/zyP0ebgAOA1YA1wNfHlPU39D6GhpZmuAS4CvEObNeAz4qLs/ksr6CnA/cBLwZ8A4Qr+M24CvuvvTeV1Qs9Zt7GPr9nCpe40bw7jOMvyziIiIDEzh32Luvp2wpsiCPeR7U519i4BFezj+FbLXFCnc6lSthUaKiIhIuyu6z4VQtaaImkRERKTNKbgogdU9Wg1VRESGDwUXJdCtZhERERlGFFyUgJpFRERkOFFwUQKVzSIKLkREpL0puCiBitk51SwiIiJtTsFFwfq2bmfdxrB8SscoY5+JtdZxExERaQ8KLgqWnplzyqSxdIyyOrlFRETKT8FFwdQkIiIiw42Ci4J1qzOniIgMMwouCpYeKTJFq6GKiMgwoOCiYBXNIqq5EBGRYUDBRcG6ezQ7p4iIDC8KLgqmCbRERGS4UXBRIHevaBaZqkXLRERkGFBwUaCeTVvYsm0HABO6RjOha0zBJRIRERm80UUXYCTrGtPBFz5wJKvXb2b7Di+6OCIiIrlQcFGgcZ2jed+RBxZdDBERkVypWURERERypeBCREREcqXgQkRERHKl4EJERERypeBCREREcqXgQkRERHKl4EJERERypeBCREREcqXgQkRERHKl4EJERERypeBCREREcqW1RQYoiqKiiyAiItJKHsexNZJRNRciIiKSK3PXUt9FM7Nl7n500eUoG92XbLov2XRfsum+ZNN9yZbXfVHNhYiIiORKwYWIiIjkSsFFOVxbdAFKSvclm+5LNt2XbLov2XRfsuVyX9TnQkRERHKlmgsRERHJlYILERERyZWCi4KY2Sgzu9jMnjazXjN70cwWmNmEostWJDPzGq/Xiy5bK5jZl8zsdjP7z+S6V+4h/7Fmdr+ZbTCz9WZ2j5nNalFxW6aZ+2JmN9Z5jk5vYbGHlJkdamb/28weN7PVyTOw3Mz+V9bfETObaWaLzew1M9toZg+b2XuKKPtQaua+mNn8Os/KF4q6hqGQ/PvfYmZPmVmPmW1Kvn/+wcwOqJF/wM+LZugszkLg88CdwALg8OT9UWZ2srvvKLJwBXuY3TsVbS2iIAW4HPg98Etg73oZzew4YAmwCvhyknwh8LCZHe/uK4awnK3W8H1JOTcjbWluJSrep4DPAT8AbiH8jpwE/A1wppkd5+6bAcxsBvAosA24AugBzgfuNbO57n5/AeUfKg3fl5SLgTVVab8Y6oK22IHAAYTvnJcIz8JbgQuAs8xslrt3Q07Pi7vr1eIX8GZgB/DPVekXAQ58tOgyFnhvHLix6HIUeP3/LfXzr4GVdfIuBdYD01Np05O0Hxd9LQXelxvDn7biyz3E9+RoYHJG+t8kv0cXptK+D2wHZqXSJgIvAL8h6dw/HF5N3pf5Sdqbii53gffrjOQeXJLn86JmkWKcDRhwZVX6dcAm4JyWl6hkzKzTzCYWXY5Wc/f/bCSfmR0MzAZud/dVqeNXAbcDJ5vZ/kNTytZr9L6kWTDJzIbl3zl3X+buPRm7bku2bwFImgI+ACxx9+Wp418HrgcOJTxLw0Kj96Va8qyMxNr8F5LtPpDf8zIsf+nawGxCzUVFFa279wLLGUa/6AN0OiHI2mBm3WZ2tZlNLrpQJdP/jDyWse9xQvD6ttYVp5R6ktdmM7vPzI4tukAtcmCyfTXZHgF0UftZgZHxN6f6vqQ9SXhWes3sUTOb27pitZaZjTWzKWZ2oJmdAnwr2fXDZJvL8zISo7QymAascfe+jH2rgOPNrNPdt7S4XGWwlPA/7+eAScCphH4E7076EYyIjp0NmJZsV2Xs60+b3qKylM0rhD5NvwA2AkcC8wh9UU714dW/oIKZdRD632wDbk2SR/yzUuO+AKwj9O96FHgNmEl4Vu42s0+5+40tLmorfBq4OvV+JXCOuz+cvM/leVFwUYzxQFZgAdCbyjPiggt3r/7f5U1m9iTwt8D/SLYSng/Ifo56q/KMKO7+xaqkxWZ2K6FW8BvAIa0vVctcCRwHXOruv0nS9Kxk3xfcvbppGjO7gdCvZ6GZ3TEM/0OzGHia0IfiKEITyNTU/lyeFzWLFGMTodopy9hUHgn+nhBonVZ0QUqk//nIeo70DFVx92cJndQONrNDiy7PUDCzrxBq+a5196+mdo3oZ6XOfcnk7muBbxJGJR0/xMVrOXd/yd3vd/fF7n4Z8HHg78zsS0mWXJ4XBRfFeBmYYmZZ/3jTCU0mI67WohZ330pyz4ouS4m8nGyzqif707KqNUeylcl22D1HZjYf+EvgO8BnqnaP2GdlD/elnpXJdtg9K9Xc/UngV0CUJOXyvCi4KMYThHt/TDrRzMYCs4BlRRSqrJL7ciDZHbFGqieS7dsz9h1HGFo23MbpD1Z/c8iweo7M7DLgMuAm4NOejBtMWUGo4q71rMAw/JvTwH2pZ1g+K3WMA/ZNfs7leVFwUYzbCH/851Wln09oy7ql5SUqATPbr8aurxD6B93VwuKUmrs/R/gFP8PM+jtgkfx8BvCgu79SVPmKYmYTkmC0Ov0own15yt3/o/UlGxpm9mXCXA03A5/0jMn3kj4DdwEnmtmRqWMnEjr3PcvwmlysoftiZqOzRqGZ2RuBzwJrCR09h4VaQ9PN7CTC8NzHIb/nRauiFsTMria0A95JGALUP0PnI8B7sn4ZhjszW0iIjH8C/JbQ4ehUwux6PwdO8t1n1htWzOxc4KDk7UVAJ2EGV4AX3P3mVN7jCffqJXb1/r4IeAPwDnf/t5YUugUavS8Wpj7/EaHT2rPsGi3yKcLw71Pc/WctLPqQMbPPAf9I+F35K8L1pb3q7vcleQ8mfCFsJYykWU/4z8xbgdPc/d5WlXuoNXpfzGxv4HnCs/IUu0aLfJrwt+dsd7+9ZQUfYmZ2J2GGzgcJc1uMJQxXP4vQh+LE/nktcnleip4dbKS+gA7gzwmznfUR2rD+AZhYdNkKvCcfBO5N7kUv4YthOXApMLbo8rXoHiwh1GplvZZk5H878ADwOrAhuX9/VPR1FHVfgP0J/1t9OvmDuJXwJfNPwGFFX0fO9+TGOvdkt+eF8B+YfyEMv9wE/Aw4uejrKOq+EDosXk9oBngteVZ+B9wBHFP0dQzBfTkTuBt4Mfn7ujn5Pbka+IOM/IN6XlRzISIiIrlSnwsRERHJlYILERERyZWCCxEREcmVggsRERHJlYILERERyZWCCxEREcmVggsRERHJlZZcF5ERK4qi+YT1J06K43hJsaURGT4UXIjIgEVR1MgsfPriFhlhFFyISB7+us6+la0qhIiUg4ILERm0OI7nF10GESkPBRci0jLpPg6EVU7nAYcRFl37V+DSOI53Wyo+iqJDCCtcvheYCqwB7ge+Esfxsxn5OwirOJ5LWE66k7Ag3hLg72occzpwSZK/F/gx8OdxHK8azDWLjEQaLSIiRbgY+Cbwb8CVhNWBPwk8GkXR1HTGKIpmA8uAc4AngK8DjwN/BiyLoujoqvydwD3AN4A3ArcCVwG/AP4EeEdGeSLgu4QmnGuAXwMfAe6Poqhr0FcrMsKo5kJEBi2pkcjSG8fx1zLS5wLHxnH8q9Q5FhJqMr4GnJekGXATMAk4J47jW1L5PwL8X+C7URT9YRzHO5Jd84GTgbuAM+I47ksd05Wcq9ocYHYcxytSeW8FzgY+CHy/5sWLyG5UcyEiebisxuuLNfLfnA4sEvOBHuCjqdqC4wnNJo+lAwuAOI5vA34GzAROgJ3NIRGwGfhMOrBIjumL43h1RnmuSgcWieuS7TE1rkFEalDNhYgMWhzH1uQhP804R08URcuBdwOHA8uBP0p2P1jjPA8SAoujgIcIgchk4OdxHL/cRHmWZaS9mGz3aeI8IoJqLkSkGK/WSO/vzDm5avu7Gvn70/eu2jbbCXNdRtq2ZNvR5LlERjwFFyJShDfUSN8/2fZUbffPyAtwQFW+/iBh+sCLJiKDpeBCRIrw7uqEKIomA7MIw0CfSpL7+2WcWOM8/em/TLZPEwKMI6IompZHQUWkeQouRKQI50ZRdFRV2nxCM8j3Uh0xHyEMUz0hmYdip+T9u4BnCB07ieN4OxAD44BvVg8jjaKos3qoq4jkTx06RWTQ6gxFBVgcx/HyqrQfAY9EUfR9Qr+JE5LXSlIjTOI49iiKPg7cB9wWRdG/EGonZgIfIky+9bHUMFQIU5EfC7wfeCaKon9N8r0ROAX4C+DGAV2oiDREwYWI5OGyOvtWEkZ+pC0E7iTMa/ER4HXCF/6lcRx3pzPGcfzzZCKtvyTMX/F+wgyd3yPM0PmbqvxboiiaA3wG+BjwccCAl5PP/FnzlycizTD3RhY1FBEZPC1xLjIyqM+FiIiI5ErBhYiIiORKwYWIiIjkSn0uREREJFequRAREZFcKbgQERGRXCm4EBERkVwpuBAREZFcKbgQERGRXCm4EBERkVz9f5JlPkZsXeHPAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 576x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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jBw5klGjRvHmm28CcPDgQWbMmMHYsWMZOXIkixYtoqioiJtuuqnk2ieeeMLj3ouISKjzepXECuACYBKwqLjRGBMDjAUW1uJZlwJdgT9UkhNRL3N++WFDP7LEf356cbXXvPvuu6xdu5Z169aRnp7OxIkTmTFjBm+88QZz5szhwQcfpKioiJycHNauXUtaWhobNmwA4MSJE43WdxERaR28HmF4E5egeE+59ltxuQuvFzcYYwYYY4ZW8azi6Yh61V5orr744gu++c1vEh4eTteuXZk5cyYrVqxg4sSJ/OUvf+Hhhx8mJSWFhIQE+vfvz65du7jzzjv56KOPSExM9Lr7IiIS4jwNGKy1KcAzwBXGmHeNMbcYY+YCjwMLKFuD4VNgc0XPMcYkAV8Flgee2eJYW/FGmjNmzGDhwoX06NGDG264gVdeeYX27duzbt06Zs2axTPPPMMtt9zSxL0VEZGWxuspCXCjC3uA24CLgXTgaeChaspCB7sJCKeGyY51UZNpA4C8giL2p5/CH/gD3yYmkqT2cfVeejhjxgyeffZZbrzxRo4fP87ChQt57LHH2Lt3Lz169ODWW28lOzub1atXc9FFFxEVFcWVV17JgAEDuOmmm+r1uUVERDwPGALFleYGXlVd17eKc48AjzRsz+omOjKcru1iOZjhFndk5xZw/FQeHRNiqrmzal//+tdZsmQJY8aMwRjD7373O7p168Zf//pXHnvsMSIjI4mPj+eVV14hLS2Nm2++Gb/fxVu/+c1v6v11iYhI62YqG+puTXw+nwVITk4u075582aGDRtW+wfm55Fz/Dip/tiSph4d2tAmpuXutVDn75WIiHilVkPfXic9tizWwpGDcGAvcblZdAgvLDl18EQOBYX1qlQtIiLiGQUMDckYiCid5enoP01EuPsW+/2WAxk5+P0a0RERkdCjgKGhJbZzgQNg8k7To01YScJjXkERR06ernTFg4iISHOlgKGhRURCm4SSw+jsTDonliY8nszJJzOnRsUrRUREmg0FDI0hsX3p+9PZtI2ExLjSTTePnszldH5hBTeKiIg0TwoYGkNUNMSV7jJpMjPokhhLdGQ44IowHczIobCopmUmREREvKWAobG0DRplyM4irKiQpPZxhIW5fIbCIj8HM3KUzyAiIiFBAUNjiY6FmLjAgYWTGURGhNO9XVzJJafzC0nPym2wTxkfH1/puT179jBy5MgG+1wiItK6KGBoTMGjDKcyoaiQNjGRZao+ZpzKI+u0kiBFRKR587w0dMi45asN9qiOgVexHb98k6iI8JIch2IPPPAAffr0wefzAfDwww9jjGHhwoVkZGRQUFDAr371K772ta/V6vPn5uZy++23s3LlSiIiInj88ceZPXs2Gzdu5OabbyY/Px+/38/f//53kpKS+MY3vkFqaipFRUX89Kc/5Zprrqnnd0BEREKNAoZmwB9IguzVKZ7wsNJKnddeey333HNPScDw1ltv8dFHH3HvvfeSmJhIeno6U6ZM4bLLLqvV5lbPPPMMACkpKWzZsoULLriAbdu28ec//5m7776bb33rW+Tn51NUVMS8efNISkriww8/BCAzM7MBv3IREQkVmpJoJvILizh8omwS5Lhx4zhy5AgHDhxg3bp1tG/fnu7du/PjH/+Y0aNHc95555GWlsbhw4dr9bm++OILbrjhBgCGDh1Knz592LZtG1OnTuWRRx7h0UcfZe/evcTGxjJq1Cg++eQTHnjgARYtWkTbtm0b9OsWEZHQoBGGmnrho7rfm5UJxwJ/1MMjoEdfCHOx2smcfDjhdrY8lVtARnYeHeJLcxyuuuoq3nnnHQ4dOsS1117L66+/ztGjR1m1ahWRkZH07duX3NzaJU5WtjLjuuuuY/LkyXz44YfMmTOHF154gXPPPZdVq1Yxb948fvSjH3HBBRfw0EMP1f57ICIiIU0jDE2hTYILFACKCiE7q+RUYlwU7dpElxynlyvqdO211/J///d/vPPOO1x11VVkZmbSpUsXIiMj+fzzz9m7d2+tuzNjxgxef/11ALZt28a+ffsYMmQIu3bton///tx1111cdtllrF+/ngMHDhAXF8f111/Pfffdx+rVq+v4TRARkVCmEYamEBbm9pjISHfHJzMgPrFkz4lOiTHkFRSVBAonc/KJjXL/aUaMGEFWVhY9evSge/fufOtb3+LSSy9lwoQJjB07lqFDh9a6Oz6fj+9///uMGjWKiIgIXn75ZaKjo3nzzTd57bXXiIyMpFu3bjz00EOsWLGC+++/n7CwMCIjI/nTn/7UMN8TEREJKUaFg8Dn81mA5OTkMu2bN29m2LBhDfNJioogbTf4A9UdO3cvs+fE6fxC9qefAiA8LIz+XRNqlcjotQb9XomISFOo1R8ZTUk0lfBwSGhXepyZAUHBWkxkOOGBvIYiv5/cgqKm7qGIiEilNCXRlBLauekIayE/F3JPQ6yr/GiMIT4momQny1O5BSXTErWRkpJSsgKiWHR0NMuWLat//0VEpNVSwNCUIiJc7kJWoJZB5vGSgAGgTUxkScCQnVtI58Taf4pRo0axdu3ahuitiIhICU1JVKPBczwS21MybZSbA3mlSyLjoiJK8hbyC4vIC5FpCeXBiIi0fAoYqhATE8OxY8ca9g9iZBS0CdokKjOj5G1YmKFNdOmgT3ZeQcN93kZireXYsWPExMRUf7GIiIQsTUlUoWfPnqSmpnL06NGGfXBhgZuOAMDAkfSSOg2n8ws5meMChaMRYXSIj67kIc1HTEwMPXv29LobIiLSiBQwVCEyMpJ+/fo1zsOf/AlsWOnez7gQvn034GowXPP4x/itm7h4496vlKn8KCIi4gVNSXjlq1eXvl/8CZw4BrjKjyN7dwDAAku3HfGgcyIiImUpYPDKkNHQP1ClsbAAPnmv5NTUwV1L3i/ZVruNpURERBqDAgavGAMXfqP0eP6HkOMqPU4d0q2kec2u9DJ7S4iIiHhBAYOXxkyBbr3c+9wcmP8vALq3j6NfF1c2uqDIz8qdDZx0KSIiUksKGLwUFgYXBuUyfPwe5OcB5aYltmpaQkREvKWAwWuTZ0P7Tu591gn48mMApg4pDRiW7zhCUfGmVSIiIh5QwOC1iEi44MrS4/+8A0VFDOrelk4Jbjll1ukCNuzLqOQBIiIijU8BQ3Mw/aulW12nH4I1X2KMKTPKoNUSIiLiJQUMzUFMLMy6uPR4zRKgbB7D4q2HtGeDiIh4RgFDczHu7NL3m9aA38/ovh2JC+wtcfjEaXYfyfKocyIi0tp5HjAYY8KMMfcaY7YYY3KNMfuNMXONMW1q8YwOxpjfG2N2BJ5x1BjzuTFmemP2vUH1HuC2vgaX/Ji6m8jwMCYN7FJyiVZLiIiIVzwPGIAngMeBTcCdwNvAXcAHxphq+2eM6QOsAm4E3gF8wCPAHqBH43S5EYSFwbBxpcebVgOq+igiIs2Dp5tPGWNG4IKEd621Vwa17waeAq4F3qjmMa/hvo7R1tqDjdXXJjFiPKxY4N5vXA1fvZqJAzsTEWYo9Fu2H8zkSOZpurSN9bafIiLS6ng9wvBN3KaMT5Zrfx7IAa6v6mZjzAzgHOB31tqDxphIY0xco/S0KQwfX/p++wbIy6VNTCSj+3YsaV6qUQYREfGA1wHDRMAPLA9utNbmAmsD56tyUeDjPmPMB8BpINsYs80YU2Ww0Sx16Azde7v3hQUuaACmaXmliIh4zOuAIQlIt9bmVXAuDehkjImq4v4hgY/PAx1weQzfBfKBV40xNzdkZ5vEiKBRhk1rAJgSlMewfs8xsnMLmrpXIiLSynkdMMQBFQULALlB11QmUO2ILGC2tfZ1a+1LwHTgBPBIVYmTxpjbjDEra9nnxhU8LbFxFQCdE2MZ1L0tAIV+y4od2oxKRESaltcBQw4QXcm5mKBrKnM68PFv1tr84kZrbQbwT6AbpaMQZ7DWPmetnVDz7jaBIaMhPJCLmrYHThwDziziJCIi0pS8DhgO4KYdKgoaeuCmK/IrOFcsNfCxor+gxSsm2tejf00vOgYGDi89DkxLBOcxrNh5lIIibUYlIiJNx+uAYUWgD5OCG40xMcBYoLrpguJkyZ4VnCtuO1KfDnpixJnTEn27JNCtnVtOmZNXyPo9x7zomYiItFJeBwxvAha4p1z7rbjchdeLG4wxA4wxQ8td9x4uf+F6Y0x80LXdgcuB7dbaHY3R8UY1/KzS95vXgt8f2IyqW0mzVkuIiEhT8jRgsNamAM8AVxhj3jXG3GKMmYur/LiAskWbPgU2l7s/A7gPN32x1BjzA2PM/wOWAlHAHU3wZTS84DLRJzNcLgPlqj5uPazNqEREpMl4PcIAbnThPmAELni4FngauMRaW+1EvbX2OeBK4BTwS+BBYCtu1cR/G6vTjap8mejAtMTI3u1JiI0EID0rl+0HM73onYiItEKeBwzW2iJr7Vxr7RBrbbS1toe19gfW2lPlrutrrTWVPONda+0Ua20ba22CtfYCa+2XTfMVNJIyeQxuX4nwsDAmD9JmVCIi0vQ8DxikEuXLROe7chXajEpERLyggKG5qqRM9FkDOhMZ7v6z7T6SxcGMqspUiIiINAwFDM1ZBdMSsVERjO/fqaR5iYo4iYhIE1DA0JwNPzPxEWCqNqMSEZEmpoChORtccZnoKYO6Upz9uWHfcU7mVFUMU0REpP4UMDRnMbFly0RvdmWi28dHM7RnOwD8FpZtD71iliIiEloUMDR3FeQxAEwLrvqoPAYREWlkChiau+Ay0ZvWgN/VsgpeXrlyVzp5BUVN3TMREWlFFDA0d5WUie7VKZ6eHdsAkFdQxJrd6R51UEREWgMFDM1dJWWiQUWcRESk6ShgCAXBeQyb1pS8nTa0NI9h6bbDFPm1GZWIiDQOBQyhILhM9LaUkjLRQ3u0o32baABOZOezJS3Di96JiEgroIAhFFRSJjrMGCYPLt2MasWOo170TkREWgEFDKGiTNXH0uWVE/p3Lnm/fu+xpuyRiIi0IgoYQkWZPIbSgGFUnw4l77emnSA3v7ApeyUiIq2EAoZQEVwmOnV3SZnodm2i6ds5AYBCv2VT6gmveigiIi2YAoZQUUmZaIDRfUtHGdbtUT0GERFpeAoYQkklZaLH9OlY8n793uNN2SMREWklFDCEkuHl6jFYV3dhVFDAsPXACU4rj0FERBqYAoZQUr5MdOpuANrGRdGvi8tjKPJbNu1XPQYREWlYChhCSVh42TLRQaslxvQtHWVYp+WVIiLSwBQwhJpK8hhGB+cx7FHAICIiDUsBQ6ippEz0qN4dMIHmrQcylccgIiINSgFDqDmjTPRGABLjoujX1eU3+K1lo/IYRESkASlgCEXBZaI3lW53PbpPcD0GTUuIiEjDUcAQimpUj0EBg4iINBwFDKGokjLRI/uU5jFsO5BJTp7yGEREpGEoYAhFlZSJToyNon+ZPAZVfRQRkYahgCFUjShX9TFgdHA9BuUxiIhIA1HAEKqGl8tjCJSJDs5jUAEnERFpKAoYQlUlZaJHBtVj2HEwk+y8Am/6JyIiLYoChlBVSZnohNhIBnQrzmOAjftUj0FEROpPAUMoK5PHEFQmWvtKiIhIA1PAEMrKlIneUFImeoz2lRARkQamgCGUdegM3Xq59wX5JWWiR/buQFggkWHHoUyyc5XHICIi9eN5wGCMCTPG3GuM2WKMyTXG7DfGzDXGtKnh/baS16nG7nuzEDwtkbICgPiYSAZ0awu4PIaUfarHICIi9eN5wAA8ATwObALuBN4G7gI+MMbUtH+LgBvKvb7b8F1thkZPKn2/dknJ8srgfSVUJlpEROorwstPbowZgQsS3rXWXhnUvht4CrgWeKMGj9plrX2tcXrZzA0ZDbFxcDoH0g9B2h7o2Y/RfTry96VuqaUKOImISH15PcLwTcAAT5Zrfx7IAa6v6YOMMVHGmPgG7FtoiIiEkRNLj9cuAWBUUB7DzkMnOaU8BhERqQevA4aJgB9YHtxorc0F1gbO18RVuAAjyxhzxBjztDGmbYP2tDkbO6X0fSBgaBMTycBAHoMFNiiPQURE6sHrgCEJSLfW5lVwLg3oZIyJquYZy4GHcUHDjcBnwB3AoupGHIwxtxljVta6183NqIkQHu7e79kOGemA9pUQEZGG43XAEAdUFCwA5AZdUylr7WRr7e+tte9Za1+x1l4LPAiMAu6u5t7nrLUTatvpZicu3m15XWztUqBcPQYlPoqISD14HTDkANGVnIsJuqa2HgPygYvr0qmQNG5q6fvAtMSI3u0JMy6RYeehk2SdVh6DiIjUjdcBwwHctENFQUMP3HRFfm0faq0tKH52PfsXOsYE5TFsWQens2kTHcmg7qV5DCn7NMogIiJ143XAsCLQh0nBjcaYGGAsUKf8gsD9PYHD9e1gyOjYxe1gCVBUCBtWAeXrMSjxUURE6sbrgOFN3D9+7ynXfisud+H14gZjzABjzNDgi4wxHanYL3E1Jj5ouK6GgLFnTkuM6at9JUREpP48LdxkrU0xxjwD3GGMeReYBwzDVXpcQNmiTZ8CfXB1G4r9xBgzBfgc2AfEAxcBs4FlwNON/kU0J2Onwj8D9atSVkBhISN6dSDMGPzWsuvwSU6ezicxtrqFJyIiImV5PcIAbnThPmAE8AyuuuPTwCXWWn81984HTuKWUz4J/BzogFslMctae7qR+tw89ervpiYAck7B9hTioiMYnBRUj0HTEiIiUgeeBwzW2iJr7Vxr7RBrbbS1toe19gfW2lPlrutrrTXl2t631s4J3BNjrW1jrR1rrX0kUPypdTGmbPLjGjctMTpoeeU6La8UEZE68DxgkAZWZnnlUrC2TB6DCjiJiEhdKGBoaQaNcoWcAI4fgf27GNGrtB7D7iNZnMyp9UpVERFp5RQwtDQREa5UdLG1S4iNimBIUunWGqr6KCIitaWAoSWqYHll8L4SqscgIiK1pYChJRp5FoQHVszu2wnHjmhfCRERqRcFDC1RbBsYOqb0eN1ShvdqT3hYaR7DiezK9vwSERE5kwKGlip4WmJNcR5Du5KmlH2alhARkZpTwNBSjQ2qx7BtPeScKrOvhJZXiohIbShgaKnad4K+g9z7oiJIWVEu8VEBg4iI1JwChpZsbNkiTiN6ticikMew9+gp5TGIiEiNKWBoyYIDhg0riAmzDOlRmseg5ZUiIlJTChhash59oVM39/50DmxdX2ZfCU1LiIhITSlgaMmMOaOIk/aVEBGRulDA0NIFr5ZYu5RhPdqV5DHsSz9FxinlMYiISPUUMLR0g0aWbkaVkU7Mgd3l8hg0yiAiItVTwNDShYfD6Emlx+WmJRQwiIhITShgaA2C8xjWLS2zr4TyGEREpCYUMLQGI8+CiEj3fv8uhsXmExnu/tPvP5bN8VO5HnZORERCgQKG1iAmDoaOLTmM3rCcoUF5DBplEBGR6ihgaC3GlV0tMTYoj2HJ1sMedEhEREKJAobWYkzZzaim94kvOVy6/Qi5+YUedEpEREKFAobWol1H6DfEvff76X1wM706tgEgr6CIZduPeNg5ERFp7hQwtCZBqyXMuqXMHJFUcrxw00EveiQiIiFCAUNrElz1MWUlMwd3KjlcvuMIOXmalhARkYopYGhNkvpA5+7ufd5peh/bRb8uCQDkF/pZuk3JjyIizdKJY7D6S0+7oIChNSm/GdWaJcwY3r3kcIGmJUREmg9rYftGePY38MC34bnfQtYJz7qjgKG1GVe26uPMod1KDlftPEp2boEHnRIRkRIF+fDFf+GXd8Cj/wsrFkBRERQWwKKPPOtWhGefWbwxYDjEJ8Kpk3DiGD1OHWBgt0R2HDpJQZGfxVsPc/6Ynl73UkSk9Tl+FOb/Cxb+2/2OLm/wKOg1oOn7FaCAobUp3oxq8SfueO0SZgyfzo5D7odz4aYDChhERJqKtbAtBT77J6xZDH5/2fORUTDlXDj3MujV35s+BihgaI3GTg0KGJYy855v8NJnWwBYtSudrNMFJMRGethBEZEWLi8Xln0On74PaXvOPN+xC8y6FKbPcaPCzUCDBgw+n689kJ+cnJzdkM+VBjbiLBe1FuRD2h66FWYyOKkt2w5kUuS3LN56iDlje3ndSxGRlufoIZj/ASz6D+ScOvP80LHwlctgzGQIC2/6/lWh1gGDz+f7CjAH+E1ycnJGoK0L8DZwDlDo8/meSU5O/kGD9lQaTnQMDBsH65e548WfMHP42Ww7kAnAgo0HFDCIiDSUU1mw+gs3orAtxU1DBIuKhqnnwbmXQo++nnSxJuoywnAnMDI5OfmHQW2/B6YD24EE4G6fz7c0OTn5rQboozSGybNKA4aP/8HMH13A84FTa3Yf40R2Hu3aRHvVOxGR0JaXC+uXuyAhZQUUVVAYr3N3mH0pnHMBxMWfeb6ZqUvAMAZYUHzg8/ligauAj5OTk+f4fL4EIAX4PqCAobmaOAM+/Bsc2Ae5OXRe/E+G9xzBptQM/NayeOthLhrf2+teioiEjqIi2LzGBQmrF0Pe6TOvMWEwfJybdhg5EcJCp7pBXXraBTgQdDwZiAFeBkhOTs4C/gUMqcnDjDFhxph7jTFbjDG5xpj9xpi5xpg2te2YMSbOGLPbGGONMX+s7f2tSlg4XH5j6fFnH3BBn9iSwwUbD1Rwk4iIlGEt7NwEbyTDfdfBkz+BJZ+eGSz0GwLXfh8eexXu/YgPMAUAACAASURBVDWMnhxSwQLUbYQhD4gNOp4OWGBhUNtJoEMNn/cEcBfwD2AuMCxwPM4Yc5611l/VzeX8AuhU7VXijJsGfQfBnu1QkM/s3fP5A4OxwPq9x8g4lUf7eE1LiIic4cBeWPo5LJ8P6YcqvqZrD7ckctIs9z7E1SVg2A2cG3R8JbA9OTk5LaitF5Be3YOMMSNwORHvWmuvDGrfDTwFXAu8UZNOGWPGA/cAP8QFHlIdY+DrN8MTPwYgZvknzBw3mPlHwW9h0eaDXDaxr7d9FBFpLvJyYeVCWDAPdm2p+Jp2HV2AMHkW9B7ofs+2EHUJGP4KPOnz+ZYB+cAo4OflrhkPbK3Bs74JGODJcu3PA78FrqcGAYMxJjxwz0fAuyhgqLnh42DIaNi6HoqKuCFzGfOZDLgtrxUwiEirl7rbBQlLP4PTFVQNiIuHs86BybNh8MhmtxyyodQlYPgTMAW4BvfH/gPg0eKTPp9vEm5a4W81eNZEwA8sD2601uYaY9YGztfEvcBQ3GiH1IYxcMVN8Bu3CrbHjhX07z6AXZGd2LDvOMeycumYEONtH0VEmlpeLqxYCAsrGU0Ij4CxU9yUw8gJrrZNC1frgCE5ObkAuM7n830fsIEkx2C7gHHAnho8LglIt9bmVXAuDZhmjImy1uZX9gBjTD/cCMcvrLV7jDF9a/B5i++9Dbjt9ttvr+ktLdOA4a5IyLplGGu5I281P4i8wCWmbDrI1yf387qHIiJNo7rRhC5JMONCOPt8SGjX9P3zkLHlC0g05Sc3ZicQaa09Y/2eMeYV4AagvbW20v08jTEfAT2BcdbagkDAsBt4xlp7R0364fP5LEBycnKtv4YWY/8u+Lmv5PDublezJbobw3u254mbp3nYMRGRRlaT0YSzzoYZF7kp3JaTl1CrL6QulR7bA92BncnJyXlB7TcDlwPZwJPJycnLK3lEsBzcMs2KxARdUyFjzPXABcAMa632Za6PXv1dos7y+QDcfGIJD3S5nE2pGRzJPE2XtrFV3i4iElL8fti5GZZ/7lY7VDSa0LWHG02Ydl6rG02oSF1yGB7BJSOW/KH3+Xx34hIXi6OVy30+34Tk5ORN1TzrADDcGBNdwbRED9x0RYXTEcaYaOBxYB5wyBgzMOg+gLaBtvSqRigkyNe+7TKA/X7G5qYyLnc/a2J7s3DTQa6a6u0uaSIi9VYcJKxcCKu/hIwKFvO13NGEeqtLwHA28GlycnJwVYr7cDkH1wHdgFeAHwC3VPOsFbgRgknAouJGY0wMMJaytR3KiwU6AxcHXuVdH3jdjytdLdXpmgTnzHF7seNGGdbE9GLBpgMKGEQkNBUHCasWwaovKg4SQKMJNVCXgKEH8Gnxgc/nG46ru/BAcnLyF4G2q4EZNXjWm8CPcfUTFgW13wrEAa8XNxhjBuDyHYonmLKBqyt4ZmcgGbfE8kVgfY2+KnEuuc5tfV1YwJD8I0w9vYslBwZwKCOHbu3jvO6diEj1/H6Xi7ByYdVBQnxbGD/NTcdqNKFadQkYYoHcoOOzcZUePwlq2wlcUt2DrLUpxphngDuMMe/ipheKKz0uoGwNhk+BPgSmPQI5C++Uf2bQKomd1tozzks1OnR2m6F8/C4AN59YyrLYfizYdJBrzh7gcedERCpREiQscqMJlQYJiTD+bJgwHYaMgfCWWTOhMdQlYEjD1TwoNgdXCnpdUFt7oIJdNyp0D24J5m24qYV04GngoVqWhZaGctE1bloi7zR9Co4zO3sbCze1U8AgIs1P6m63BHL5fDh+tOJrFCQ0iLoEDJ8DN/p8vjtwIw2XAX9PTk4O/uM+ENhfk4dZa4twlRmrrM5ore1bw+ftoZZLRaSchLZwwRXwgZsRuiFzGbccHETasWx6dKz1nmAiIg3r+FFYNh+Wfgppeyq+pjhIOGu6m26IqMufOwlWl+/gb3AVFf+A+8N8Cni4+KTP5+sCzMSVapZQdcEV8Nk/ITuL7oUn+eqpjSzYNIzrpg/yumci0hrlZMPqL9xowtb1bpfI8toklB1JUJDQoOpS6XG3z+cbAVwVaPpncnLyvqBL+gDPUMNNo6SZim3jpibefgGA6zJX8HDKJAUMItJ0CgsgZaUbSVi3zB2XFxVdWqJ5+FkKEhqRp5UemwtVeqxEfh72RzdjMo8D8EK7aVzwwL307pzgccdEpMXy+2HnJjeSsHIRZJfffQAwYTBsrAsSxk+DGK3gqqPGrfQYzOfzReISINsBmcDmwF4T0hJERWMu+xa8+jQA15xcxby1u+h9/hiPOyYiLU7aHpeXsPxzSD9c8TW9B8KU2W4ZZLuOTdg5gToGDD6fLxH4HW6vh+CtDHN9Pt+rwP9LTk5WdcWW4Ow5nP7n/xGbeZQEfx5tFryPPW80RuuVRaS+jh91qxuWfe72s6lIxy4w+VwXKCT1adLuSVl12UsiEfgSGAFk4QouHcTtLzEWtzzyHJ/PNy05OflkA/ZVvBARQfgVN8JfXLHMrxxewb5dqfQZ0MvjjolISMrOcsWUln4G2zdUnLwYFw8TZ7hAYeBwCAtr+n7KGeoywvAjXLDwJ+DB4JEEn8/XFvgV8D+B637UEJ0Ub0VNPZcj77xGl6xDxNoCTv3jNbhP/2lFpIby82D9MrfJU8oKKCo885rIKBgz2QUJI89yx9Ks1CVguAJYmpyc/D/lTyQnJ2cCd/p8vvG4pZf6q9IShIVx7CvX0OW9PwAweOsX2PTDmE5dPe6YiDRb/iLYvA6WfQarF0NuBRsPFycvTp7tkhdjVeelOatLwNAb+Hs11ywA7q3Ds6WZGjDnfLZ+9CZDcg8RaYvIfPtl2t7+gNfdEpHmJCcbNq12owgpK+BkRsXX9R3sVjhMmK7kxRBSl4Ahh6CtrSvROXCdtBBRkRGsGXsJQ5a6ugwJq+fD3iugj+oyiLRa1sLBfbB+uQsQdmyEoqKKr+2S5EYSJs+Gbj2btp/SIOoSMKwArvb5fI8mJydvL3/S5/MNAL4BLKlv56R56TtjOqvX/ofxufsJsxY790eYe38N/YZ43TURaSp5ubB1HaxfASnL4diRyq9NbA+TZrogoe9g7QYZ4uoSMDwG/BdY4fP5nsbtLXEQ6AbMAu4E4oHfN1AfpZk4a0Bn7u86i8H73iTe5mNyTsHcH8Hdv4BBI73unog0lqMH3QjC+uWwZV3FFReL9R4IoyfBqInQbzCEaaOnlqJOlR59Pt/3cHtJRJZ/HlAA3JOcnPyn+nevaajSY839/p/r2L18NY8ceZ+2/sAu51HRcMfPYPh4bzsnIg3D74fdW2HNEli7BA5VsZdgbJz7f3/UJLe6QTkJoaRWQz51Lg3t8/l64wo3jQPa4io9rgFeS05O3lunh3pEAUPNbT+YyR0vfEGf/GP89vB7dPAHUlUiIsH3Exg92dsOikjdFOS7TZ3WLHZBQmYlCYsASb3dCMKoSTBwhPZvCF1NEzBUxefzxQBRoVK4SQFD7Tz2/lo+WZ9Gj4IM5qa/T/v8QK338HC49QGYMMPbDopIzeRkuzyEtUvdlENFSx/BjSIOHRMIEiZCp25N209pLE23l0QV/oQbfVDY2QLdNHsIizYdJI323N35Cv6cNY+4k0dddvSzv4X8fJh2ntfdFJGKZKS7AGHtYtiyvuIiSgDxbWHsZBg7DYaPc0GDtGqN+Qdd6bAtVOfEWK6aOoDXF23ncEQi93e/gqdjPyTscCpYP7z0eyjIg5kXe91VEbHW7dOQssJNNezeWvm1nbvD2KkwbhoMHKaERSlDIwBSJ1dP68+/1+zj+Kk8duRG8ffpt3P10hcgdbe74NWnIS8PLrjC246KtEanTroCShtWwsZVVecj9BkE4wJBQlIfLX2USilgkDqJjYrgptlDePyD9QC8uvYo537vF3R88ZewZ5u76K3nXA35S77pYU9FWgF/EezZ7gKEDSvdKEJl+Wnh4TB4lAsQxkxxu0GK1IACBqmz80b35P3le9h5+CR5BUX8ZfkB7vvf38BTD8H2je6i9/4K+bnw9Zv0LxeRhpR5HDasgo0rYeNqtwtkZeITYcRZMHKCq5HQJqHp+ikthgIGqbPwMMNt5w/jgdeWAfDx+lS+Nqkvg+75Nfzx57B5jbtw3puuOty131fQIFJbhQWummL6Ifc6fAC2rIV9Oyu/x4RB/yEuQBgxAfoOVD6C1JsCBqmXsf06MWVwV5ZuOwzAcx9v4nc3TMHc9XP406/dlrYAn77v1nlff4d+cYkEs9aNFhw9VBoUBL/POOaSiavTtr0LDkZOcIWU4jWKIA2rRgGDz+erZDcREbjlK0NZseMIRX7L+r3HWbL1MNOGdnOFnF74Haxc5C5c+G830nDTvdrrXlovf5ErsbzkUziwzwUFBfm1f054OAwY7uoijJwAPftpBE8aVU1HGOryU9jwFaGkWerVKZ5LJ/ThveV7AHj+081MHNSFyIhIuPX/QWQ0LPnEXbzsc/dL8tYHXLU4kdYiMwMWfeQC5+NVbNhUnjGu3HLn7tCpq/vYs58rpBTbpvH6K1JOo1R6DDWq9Fh/J3PyufmZ+ZzKdZvSfO+C4VwxuZ876ffD68/Agg9Lb4iKhm/cBjMv0r+KpOWyFralwPwPYfWXlRdJiot31RM7dwt8DAQHnbq5VQwakZPG0SwqPUorkxgXxbdmDOLZ/24C4PWF2zlvdA8SY6MgLMzlLiT1hrdfcElc+Xnw2tNuCdiN90BCW4+/ApEGlJMNSz+F+f9yI2rlxbeFcy6ACdOhS5ILGESaOQUM0mAundCHD1bu4cDxHE7lFvD6wu3cPmeEO2kMfOVrMGQ0PP8opO1x7WuXwO4t8J37YYR2u5QQt2+nCxKWfe7ydcobMBxmXewCBY0aSIjRlASakmhIi7cc4udvrwLcssvnvj+Dnh3L/espPw/+/pJbORHs/Cvgipv0i1RCS0E+rFzoph12bj7zfHQMTDkXZl0Cvfo3ff9EKqcpCfHO1CFdGd2nA+v3HqfIb3n+ky38/JoJZS+KioZv3u4yu1+aC1knXPvH77r15bc+4ErUijRHBfmuquKOja5A2fYNcDr7zOuS+sDsS1ywoOREaQE0woBGGBra9oOZ3PnCFyXLZB69fjJj+3Wq+OLMDHj5cbcxTrHIKJcQOetiJUSK97KzYOcmFxzs2Ai7t7k8nIqER8BZ57jRhEEj9PMrzZ1GGMRbg7q35bzRPfl4fSoAz328madvOYfwsAp+Ntu2h7t+AZ9/AG89734RF+TD63+EDStczYaEdk38FUirduxwYOQgECAU59tUpWMXt+Ln7DnuZ1qkBVLAII3iptlDWLjpAHmFfnYePskn61OZM7ZXxRcbA+de5hIin/tt6S/odcvg4dvhO/e5OvgiDS0r0yUq7tsJ+3a4kYTjR6u/r2sPGDjCjSIMHOGONZogLZwCBmkUnRJjuHraAF5buB2Alz/fyozh3YmNquJHrkdf+MlT8M6LpQmRmRnwxIMw+1K3VXbn7o3feWl5rHXFkoKDg307ISO9+nvDwqD3ABg00gUHA0doFEFaJQUM0miuntqfeav3cfxUHsdP5fH24l18e9bgqm+KjKo4IfLzD9xr8CiYdj5MOAdi4hr/i5DQ4y+CQ2mwPxAY7N3p3le1m2Ow6BjoP8yNHgwaAf2GQkxs4/ZZJAR4nvRojAkD7ga+B/QFjgJvAQ9ZaytIPS5z7xDgIWA8kAREAvuAecBj1tqDNemDkh4bz3/X7WfuP9cDEB0Rxov/M4vOiTX85XvyBPxlbtmEyGJR0S65bNr5biojLKwBey0hJS8Xdm91qxW2b3RLG/NO1+zeyCg3stV7APQeCH0HQa8Bbp8GkZYv5JIenwDuAv4BzAWGBY7HGWPOs7bKbdp6At0D96YChcAo4DbgWmPMWGttLYq2S0M7b3RP3l++hx2HTpJX6Oflz7dy/9fG1uzmxHYuIXLNYvjiP64qpD/w45Cf5zbvWfIpdOgC086DqedB16TG+2KkeTh1MrCkMRAg7N0ORTXYHy+2TSAwGFAaIHTrpeBApIY8HWEwxowAUoB/WGuvDGq/E3gK+Ja19o06PPdq3CjFA9ba31V3vUYYGtfaPek88OqykuO5N05lZO8OtX/QiWOugt6XH8OBvRVfM2hEYMpiuta+txQlqxY2uFdFpZbLa9sB+gx0gUGvQHDQqasSE0XKCqkRhm/iOvxkufbngd8C1wO1DhiA4r8mykxqBsb27cTUwV1Zsu0wAL96ZzVPffdsurSt5bxwu44w5yq44ErYuwMWf+wCiOC56eLlcH/7E4yb5ormDB7l5qWl+crLdYHBsSOQfti9P3rQTTXUZNVCUm+XlFj86til8fss0sp4HTBMBPzA8uBGa22uMWZt4Hy1jDExQDwQAwwHHg2cmtdwXZX6uH3OcDalZpCZk09Gdh4/f2slc2+cSkxVqyYqY4yba+47CK6+BdYvd8FDyoqyUxbLPnev8AgYMAyGjYVh46DvYIjw+ke/lcnNKRsMHDsceH/Evc/KrPmzwsOhz6BAUmJg5UJ8YuP1XUQA76ckUoAu1tquFZx7C7gaiLbW5lfznDuAp4Oa9gA/sda+Xs19twG33X777WeBpiQaW8reYzzw2jKK/O5n7pyh3XjwqvGENdQwcWZGYMriv1UX24mOhSGjXPAwbKxLetNQdcMIXqGwf1dgpcKu0tUudVG8amFwYPSg3xCNGIk0jFr94vM6YNgJRFpre1dw7hXgBqC9tbbK3zbGmJ7AUNwowzjgMuCv1tryUx0VUg5D05m3eh9/+DCl5Pj6GYO4YWY1Sy1ry1r3h2rJZ7BxVeX5DsUS2gVGHwKvTt0atj8tVV6uC8z27SwNEFJ3u9Gd2gqPgA6doWNX6NQl8LErdO+tVQsijSekchhygMomG2OCrqmStTYVt0oC4D1jzN+BFcaYWGvtb+rfTWkoF43vzd6jWby3fA8Ary3cTp/OCcwY3oAFmYxxSW69B7rjzOOwZR1sWgOb17oCPsGyTsDy+e4FrjhU/6HuY6du7g9Xp67QvnPr+sPl90POKbcqIfukmzY4mAr7d7hRg8NpUOUipiDhES6voDgQKPO+K7TrAGGt6HsrEoK8DhgOAMONMdHW2vL/LOkBpFc3HVERa+16Y8wawAcoYGhmbjt/GPvST7F6l6uy9/v319K9fRyDurdtnE/YtgNMnu1e1sKRg7BljQsgtq53fxCDHT3oXuWFh7ugITiI6NSt9Lhth+Y7teEvcsmhWZnudepkaSBwKqvc8Ul3bXaW+37VVruObhvnXgOgd+Bj524KCERCnNcBwwrgAmASsKi4MZDEOBZYWI9nxwJ1WLsnjS08LIwfXzGee176ktTj2eQV+nn4rZU89Z2z6ZjQyHPTxrhaDV2TYObF7l/RqbvcyMOmNW7ZXmVD6kVFkH7IvSoSGeVqR0THusqAxR9jyh1XdD4i0vXNhLlBQhPmjosLUpkwCAucx7j3GFegqCQIyCx9n3Ui6H1m4I9/DUcDavy9DINuPcsGBz37q2yySAvldcDwJvBj4B6CAgbgViAOKElaNMYMwOU7bAlq62atPeO3tzFmNjASmN843Zb6SoiN5OFrJnD3S1+SnVdI+slcfvH2Kh779hSiIprwX6JhYaXTF3Oucrtl7t4KB/eXZvIXBwmZGVU/qyDfZf23JLFt3AqE+ERok+imEoprG/Too+RDkVakOZSGfhq4A1etcR6llR6/BM4trvRojNkD9LHWmqB7/4Gr9PgZrvZCDHAWcC0u92GWtXZtdX1Q0qN3Vu08yk/+tpzAwgm+MqoH939tDKY5Du3n5wWWBh4Keh2Go4dccFHTvQq8EhcPCW3dK74txCe4j20SA+8DQUFJgJDQunI2RFqfkEp6BDe6sAdXzvliIB23RPKhaspCA/wNuBG3mqIzYHGBw7O4vSRqUBJOvHTWgM7cdv5w/vzfTQB8mpJG3y4JfGPaAI97VoGoaOjey70qcjrb5QPknYbc06UfS97nQG6u+5hX7mNhIWDBb13egPUHPga/yrX5/e5f+MFBQEK5V3zQR9WeEJF68Pw3iLW2CLeHxNxqrutbQdtbuBLQEsIun9SXPUez+GjNfgBe+nQLvTvFM2XwGeU5mrfYNipHLSItlrb4E88ZY7jjwpEl+0tY4Lf/WMOeI818iF9EpBVRwCDNQmR4GD+9ajxdA/tLnM4v4mdvriAzp9arakVEpBEoYJBmo12baH5+zQRio1yi3aETp/nVO6soKGrg5YAiIlJrChikWenXNZEfXj62JHV3/d7jJH+0Ea9X84iItHYKGKTZmTakGzfNHlJyPG/1Pv65spr9IEREpFEpYJBm6ZqzBzB7ZFLJ8Z//s4nPUtI87JGISOumgEGaJWMM914ymsFJbn8Jv7U8+t5a3vxyh6YnREQ8oIBBmq3oyHAe/sYE+nSOL2l76bOt/PHfGyjyK2gQEWlKChikWeuYEMPjN01jdJ/SfcT+tWofv3h7FbkFRR72TESkdVHAIM1efEwkv75uErNGlOY0LN12mAdeXcqJ7Ep2lhQRkQalgEFCQlREOA98fSxXT+1f0rYl7QT3vryYtOPZHvZMRKR1UMAgISPMGG45bxi+r44oqdNw4HgO9/5lMVvSqtl6WkRE6kUBg4Scr03sy0+vPouoCPfjm5mTzw9fWcqSrYc97pmISMulgEFC0tlDu/HoDVNIjI0EIK/Qzy/eXsm/VqnAk4hIY1DAICFreM/2PHHzNLq1cxtW+S08PW8DL322RbUaREQamAIGCWk9O8bz5M1nM7h725K2N7/cyWPvr9OmVSIiDUgBg4S89vHRPPbtKUwa1KWk7dOUNH7yt+Vk5xZ42DMRkZZDAYO0CDFRETz8jbO4cFyvkra1u4/xv39dQuqxUx72TESkZVDAIC1GeFgYd188ihtnDS5p230kC9/zX/Dhqr3KaxARqQcFDNKiGGO4bvog7rtsDBFhrlpDXkERT83bwM/eXEnGKVWGFBGpCwUM0iKdP6YnT333bHp3Kt24atn2I3zv2YUs3aZ6DSIitaWAQVqsAd3a8sdbzuHySX1L2jJz8vnZmyv5w4cp5OYXetc5EZEQo4BBWrToyHBunzOCR741iY4J0SXt81bvw/f8F2xJO+Fh70REQocCBmkVzurfmT/fNoPpw7qVtKUdz+bevyzmtYXbKfKrZoOISFUUMEirkRgXxYNXjue+y8YQFxUBgN9aXl2wjf99eQkHtOuliEilFDBIq2KM4fwxPfnTbdMZ0at9SfvmtBPc/twiPlqzT8svRUQqoIBBWqVu7eN47NtTuXn2EMIDyy9zC4p44l8p/OLtVZzI1vJLEZFgChik1QoPM1x7zkD+8J2z6dWxTUn74q2H+d6zC/nP2v34NdogIgIoYBBhUPe2/PHW6Vw6oU9J24nsfB7/YD13vfglG/Yd97B3IiLNgwIGESAmMpw7LhzJr745kU4JMSXt2w9m8r9/XcIjf1/NkczTHvZQRMRbChhEgkwc2IUXfTO5bvpAoiJK//dYsOkg302ez1/nb1XBJxFplRQwiJQTExXBjbOG8MLtM5k5vHtJe36hnzcW7eC7yQv4dH2q8htEpFVRwCBSia7t4vjxleOZe+NUBnVvW9KenpXL795fx71/WcyWtAwPeygi0nQUMIhUY2TvDjz13bP5waWj6RBfWl56S9oJ7n5pMb97by3pJ3M97KGISOPzPGAwxoQZY+41xmwxxuQaY/YbY+YaY9rU4N7BxphfGGOWGmOOGmOyjDFrjTEP1uR+kZoKM4Y5Y3vxom8W10wbQGR46f86n6ak8Z3k+by+cDt5BUUe9lJEpPF4HjAATwCPA5uAO4G3gbuAD4wx1fXvO8C9wE7gF8D9wFbgV8BiY0xsY3VaWqe46Ai+85WhPH/7TM4eWrovRV5BEa8s2MZ3kufz/oo9ChxEpMUxXpbBNcaMAFKAf1hrrwxqvxN4CviWtfaNKu6fAGy31maWa/8V8CBwp7X2j9X1w+fzWYDk5OQ6fR3Seq3dk86f/7OJ3UeyyrS3bxPNFVP6cclZfYiLjvCodyIiVTK1udjrEYZv4jr8ZLn254Ec4PqqbrbWriwfLAS8Gfg4st49FKnC2L6deObW6dx98SjatYkqac/IzuPFT7dww1Of8eqCbZw8ne9hL0VE6s/rgGEi4AeWBzdaa3OBtYHzddEz8PFw3bsmUjPhYYaLxvfmr3eey+1zhtMpsbTw06ncAl5buJ1vP/UZL3yymeOnlBwpIqHJ64AhCUi31la0008a0MkYE1XBuUoZY8KBh4BCoNLpjMC1txljVtbm+SKViYkM5/JJ/Xj5jtncc8kourePKzl3Or+It5fs4sanP+eP/96gqpEiEnK8DhjigMq2BcwNuqY2ngSmAA9Za7dWdaG19jlr7YRaPl+kSpHhYVw4rjcv+mbywOVj6dM5vuRcfqGfD1bu5aY/fs7cf64j9dgpD3sqIlJzXmdj5QBdKjkXE3RNjRhjfgncATxnrf1NPfsmUi/hYWGcO6oHs0YmsXTrYf72xQ62HXQpN0V+y3/XpfLJ+lSmD+vONWcPZEC3RI97LCJSOa8DhgPAcGNMdAXTEj1w0xU1yhYzxjwM/AT4C/D9Bu2lSD2EGcO0od2YOqQrq3al87cvdpTsgOm3bp+KBZsOMrJ3By49qw9nD+tWps6DiEhz4HXAsAK4AJgELCpuNMbEAGOBhTV5iDHmZ8DPgFeAW6yXa0VFKmGMYcKAzkwY0JmUfcf52xc7WLXzaMn5DfuOs2Hfcdr/N5oLx/XiwvG96dJWpUREpHnw+p8xbwIWuKdc+6243IXXixuMMQOMMUPLP8AY8xDwMPAqcLO11t9ovRVpIKN6d+CR6ybx9HfPZvqw7oSHlS6HzsjO440vdnDj05/x8JsrWbXzqDa6EhHPeVq4CcAY8zQu7+AfbqP14AAAGv9JREFUwDxgGK7S45fAucUBgDFmD9DHWmuC7v0f4I/APuCnuCWawQ5baz+urg8q3CReO5aVy7/X7Gfe6r0cyzozDzipQxyXnNWH88f0JDG2VguHREQqU6vCTc0hYAjHjTDcBvQF0nEjDw9Za08FXbeHMwOGl4Ebq3j8AmvtrOr6oIBBmovCIj9Ltx3mg1V7Wbv72BnnoyLCmDUiicsm9i2zg6aISB2EVsDQHChgkOZoX/opPly1l4/XpZKdV3jG+cFJbbnkrD7MHJFETGS4Bz0UkRCngKG2FDBIc5abX8jnGw/wwYq97Dx88ozzcdERnDsyiYvG92ZAN406iEiNKWCoLQUMEgqstWxJO8EHK/eycNNBCorOzO8d3L0tF47vzawRSdr0SkSqo4ChthQwSKjJzMnnv2v38+81+0k7nn3G+ZjIcGaNTOLCcb0ZktQWY2r1e0FEWgcFDLWlgEFClbWW9XuP8+81+/hi86EKRx36dUngovG9OXdUD+JjIj3opYg0UwoYaksBg7QEJ3Py+SQljX+v3se+9DP3qIiOCGP68O5cNL43w3u216iDiChgqC0FDNKSWGvZ9P/bu/fouM/6zuPvr2TdpdHdkmzJjm3FduwkxHGuThaHkmULnO52z5IC3aScUmBhCi2c7vaULEuyS7dLd5eGQ7ZTFnq2KTRpA2wTlpZLCZCrkzi2MdhxfFVsy7Il62LdL5alZ/94fjMeST9ppFiakaXP65w5P83z+834+T1+NPrOcz1zgR/sa+b5Q2cZuTS11aG+soh7tq5i55Y61lSXZCCXIrIIKGCYKwUMslT1D4/ys4MtfH9fM00hMyzAd1m8fUsdO7euYnVFUZpzKCIZpIBhrhQwyFLnnOPouR5+sO80z75+lqGLY6HXNdZG2Ll1FW/fUkdt2Vx3lheRq4wChrlSwCDLyfDoGLuPnee518+y+/h5LoZ0WQBsXl3Gzi11/LMtdVRHtAmWyBKkgGGuFDDIcjU4colXjrbx3KFz7D3RHjrLAmBrQzk7t9Rx93V1VJbkpzmXIrJAFDDMlQIGERgYHmXXkTaeP3SWvU0djI2HfzZct7qMOzfVcOemWtZUFac5lyIyjxQwzJUCBpGJeocusutwK88dOsf+Nzun3V67vqIoCB5quK6+nCxN1RS5mihgmCsFDCLT6x4Y4cXDrTx/6BwHTnVNGzyUFeVyx8Ya7txYw7Z1VeRpQyyRxU4Bw1wpYBCZnd6hi+w+dp5dR9rYc6KdkdHw2Rb5Odls31DNnRtruP3alUQKc9OcUxGZhTkFDNqdRkRmLVKQy7031nPvjfWMjI7x8zc7ePloG68cbaN74GLiuuHRMV463MpLh1vJMmNrQznbN1SzfX0VjXWl6roQuQopYBCRtyQvJ5s7NtZwx8YaxsYdh1su8PKRNnYdaZuwIda4cxw43cWB01089rMjRApy2Lauiu0bqrl5fZWmbIpcJdQlgbokROaTc47mjn5ePuqDh8Mt3TNev6aqmJvXV7F9fTU3rq0gP1ffY0TSRF0SIpI5Zsaa6hLWVJfw/rsa6eofZl9TB/uaOtjb1D6h6wLgdEc/pzv6eXr3SXKys9jaUM7N6333xfraiLovRBYJtTCgFgaRdBl3jjfb+tjX1M7epg4Onu6adrEogJKCHK5vqOD6NRXcsLaCxtoI2VlZacyxyJKmFgYRWZyyzNhQG2FDbYT7dmxgeHSMg6e72NvUzr4THZxs75twfd/QKC8fbePlo22An32xpaGc6xt8ALFpVZmmb4qkiQIGEcmY/JxsbtlQzS0bquGfQ2ffcKLrYl9TBz2DE7svhkfHEt0bACuyjI2ryrhhjW+F2NpQTlF+TiZuRWTJU5cE6pIQWYzigycPNl/gwKlODpzuor13eMbXGLC+JpIIHq5fU6G9L0Smpy4JEbn6JQ+efM/NawBo6x7kYDBF8+DpLpo7Bya8xgEn2no50dbLd187CUBtWQFbg3EQW+rLWVNdrIGUIm+BAgYRuWrUlBVSU1bIO2+sB/yy1ckBRFNbL5P3zGrtHqK1u4WfHGgBoDg/h60N5UEQUc61daXkrtA4CJFUFDCIyFWrrCiPu6/z224DDIyMcqj5Aq83X+D15i4Ot3Rz8dLEWRj9w6O8euw8rx47D0BOdhYbV5WytcF3Y2ypL9dS1iIhFDCIyJJRlJfDrY0rubVxJQCjY+OcaO3h4GkfQLzefGHKQMrRsfEgwLiQSGuoLGJrQwVbggCivrIIUzeGLHMKGERkycrJzmLz6nI2ry7nfXeuxzlHS9cArzdf4OBpH0AkL2Md19w5QHPnAD/c3wxAaWEu19WXB10Z6saQ5UkBg4gsG2ZGfWUx9ZXF/IubGgC40D/CoTMXONjcxaHmCxw/18OlSQMhegYv8kqwyRb4QKSxLuK7MerL2VxfRkWxZmPI0qaAQUSWtfLiPO7aXMtdm2sBGBkd4+jZbl5vvsChM/7RNzQ64TWjY+O8caabN8508534+xTlJRalaqwtZUNNhLqKQs3IkCVDAYOISJK8nGxuWFvJDWsrAb+c9ZmOfl4/48c5HJqmG+PCwAh7TrSz50R7Iq0wdwXrakp8AFEbYUNNhLUrS8jJ1vLWcvVRwCAiMoOspPUg3r3NrwfRPeC7MQ4FrRDHW3sZGR2b8trBi5emDKhckWWsrS5JtEasr4mwbmWEkgKtUCmLmwIGEZE5KivKY8emWnZs8t0YY+OOs10DnGjt5XhrD01tvRxv7Z0yIwPg0rhLLC7FLy6nrywtYP3KEtbXRBIPdWnIYqKAQUTkCmVnGQ1VxTRUFXPP9asAv7R1Z9/IhADiRGsPrd1Doe9xvmeI8z1DvBKsDwF+r411K0tYlwgiSli3MkJhnj66Jf1U60REFoCZURXJpyqSzx0baxLp/cOjiQCiqa2XptZeTnf0h27zPTw6xhst3bzR0j0hfVVFIetXXu7S2FAboaokX2tFyILKeMBgZlnA7wP/DrgGaAe+BXzeOTd1ZNHU138WuBnYDqwDTjnnrlmo/IqIXIni/BxuXFvJjcGgSoBLY+M0d/T7AOJ8nz+29dI9MLVLA+Bs1yBnuwZ58XBrIi1SkONbIYLBlRtqIjRUFbNCAyxlnmQ8YAAeAX4PeAr4EnBd8Hybmd3rnJsadk/0J0AXsA8oW8iMiogshBXZWayribCuJsI7k9K7+odparscQDS19dLcMcB4yC7DvUOj7D/Zyf6TnYm0nOws1lYXJ1ohNgQBRVGeBljK3GU0YDCzrcCngL93zv2bpPQ3ga8AHwCeSPE2G5xzTcHrDgLFC5RdEZG0qijOp6I4n1s2VCfSLl4a41S7b4040eoHTza19TI4cmnK60fHxjne6rs/kgdYrq4oorE2QmNdKY21pTTWRrR/hqSU6RaGD+L34/7ypPSvA18E7idFwBAPFkREloPcFdlcW1fKtXWliTTnHG3dQ372RVIQcb4nfIBlS9cALV0DPHfoXCKtprQgsehUY50/VpZo9Uq5LNMBw63AOLA7OdE5N2xm+4PzIiIyAzOjtryQ2vLCxIqVAL1DF3mzrS8IJHo40drLqfb+0C6Ntp4h2nqG2HWkLZFWUZxHY61fJ6K+qoiGYFltrRmxPGU6YFgFdDjnRkLOtQA7zCzXORc+8ucKmdnHgI994hOfWIi3FxHJqEhBLm+7ppK3XXN5gOXI6Bgn2/s4fq7Hd1ec6+HN832hszS6+kfYfbyd3cfbJ6SXF+VRX1nkp5JWFlFf6aeUriwtIDtLMzWWqkwHDIVAWLAAMJx0zYIEDM65rwFfi0ajU8NtEZElKC8nm02ryti06vIY8Utj45xq7+d40AoRPw6HrF4JfhnsCwMjHDjdNSE9JzuL1RVFNCRaI4pYHRyL89UqcbXLdMAwCKyc5lx+0jUiIrJAVmRnJZaqjhsb91uBHz/XQ3NHP82dA5zp7OdM50BoawT4QZYn2/s42d435VxpYS71lUU+iKgIgomKIlZVFGqr8KtEpgOGs8AWM8sL6ZZYje+uWJDWBRERmV52lrGmqpg1VRMnno2NO9p7hmju7J8SSHT1T9dg7LcI7xm8OGFfDfCj3mvKCnxLREURqyuLEsfqiLo4FpNMBwyvAe8CbgNeiCeaWT5wE/B8hvIlIiIhsrMuD7C8tXFiA3H/8ChnOvtp7higubOfls4BznT6GRnTtUo4oLV7iNbuIfaemDhWIic7i7rywkRrRKKLo6KIsqJcrWyZZpkOGJ4EHgQ+TVLAAHwUP3bh8XiCmW0Acpxzh9OaQxERmZXi/Bw2ry5n8+ryCenjzrdKnOkaSAQR/ud+2rqHmG4Q2ejYOKc7+jnd0T/lXGHuClYnBxJJrRNFGi+xIDIaMDjnDpjZnwOfNLO/B77P5ZUen2PiGgw/AdbiW7ASzOyBIB2gGsg1s88Fz0855765gLcgIiIpZJlRU1ZITVkh29dXTzh38dIY5y4M+iAi6N6IrxMx3dLY4LcOP3auh2PneqacKy/Km9C1ET/WlWu8xJXIdAsD+NaFk8DHgPcCHcCj+L0kUi0LDfA7wM5JaV8Ijs8BChhERBap3BXZrK0uYW11yZRzA8OjtHRd7taIH1s6Bxi8OHVly7j4LI6Dk2ZxTDdeoraskMpIPvk5CiZmYi5kAY/lJj6tMhaLZTorIiKSgnOO7oGLiW6NRCDRNcDZrsFpx0ukUlKQQ1VJPtWlBf4Y7DZaVVJAVcQ/L8hdDN+z582cBoEsqTsXEZGlz8woL86jvDiPG9ZUTDg3Nu5o7x3yYyXiYyZmMV4CoG9olL6hUd48P3VaaFxx/opEAFEVyac6KcDwQUUBhXlL80/r0rwrERFZlrKzjNqyQmrLCtm+IXy8xORgor1niI6+YcbGU7e49w9fon84fK2JuMK8FUHrRIEPKOItFZGCxM9X446hChhERGRZmGm8xLhzdA+M0N47TEfvMB29Q/7nPv+8vXeIzr6RWXV3DI5c4lR7P6fap87uiIsHFdWRAlaWFiR+jh+rIvnkLbIxFQoYRERk2csyS2wnvmlV+DXjztE7eJH2IIDoiAcXff55PNiYr6CitDD3ciBR6o+3Na7kmpVTA550UMAgIiIyC1lmlBXlUVaUN2F78WTOOXqHRhPdHBOCi3hg0TO7oCK+Oubx1t5EWnlRngIGERGRq52ZUVqYS2lhLo0zBBU9SS0V7T1Dwc8TWyrCtiGvjuSHvGN6KGAQERFJI5tFS8XYuKOrPwgiEgHFEPWVxaHXp4MCBhERkUUmO8uCQZAFUF+e+gVpkJXpDIiIiMjip4BBREREUlLAICIiIikpYBAREZGUFDCIiIhISgoYREREJCUFDCIiIpKSAgYRERFJSQGDiIiIpKSAQURERFJSwCAiIiIpaS+JJNFoNNNZEBERSRcXi8VstherhUFERERSMhey37ZcOTPb45y7JdP5WGxULuFULuFULuFULuFULuHmq1zUwiAiIiIpKWAQERGRlBQwLJyvZToDi5TKJZzKJZzKJZzKJZzKJdy8lIvGMIiIiEhKamEQERGRlBQwiIiISEoKGOaJmWWZ2WfM7LCZDZtZs5l9ycyKMp23TDMzN82jP9N5Swcz+6yZfdvMmoL7Ppni+tvN7Bkz6zOzXjP7oZndlKbspsVcysTMHpuhDr0vjdlecGa20cz+i5m9YmbtQR3Yb2b/MeyzxMw2mdnTZnbBzAbM7AUz+5VM5H0hzaVczOzhGerLv8/UPSyE4P//cTN7w8x6zGww+Bv0Z2ZWN831b7m+aKXH+fMI8HvAU8CXgOuC59vM7F7n3HgmM7cIvMDUgTejmchIBvwJ0AXsA8pmutDM7gCeBVqAzwfJnwReMLMdzrkDC5jPdJp1mSR5ICRt97zlaHH4MPC7wP8DHsf/jrwD+GPgN8zsDufcEICZbQB2AZeA/w70AB8FfmRm73bOPZOB/C+UWZdLks8AHZPS9i50RtOsHqjD/905g68LNwAfAz5gZjc5587DPNUX55weV/gAtgLjwP+dlP4pwAG/mek8Zrh8HPBYpvORwftfn/TzQeDkDNfuBnqB1Ulpq4O0f8r0vWSoTB7zH1WZz3cayuUWoDQk/Y+D36NPJqV9CxgDbkpKKwZOAUcIBrUvhcccy+XhIO2aTOc7g+V1X1AGfzif9UVdEvPjg4ABX56U/nVgELg/7TlahMws18yKM52PdHPONc3mOjNrBG4Fvu2ca0l6fQvwbeBeM6tdmFym12zLJJl5ETNbsp9bzrk9zrmekFNPBsfrAYJm+H8JPOuc25/0+n7gL4GN+Lq0JMy2XCYL6stybEk/FRzLYf7qy5L9xUuzW/EtDBOaR51zw8B+ltAv7hV4Hz546jOz82b2qJmVZjpTi0y8nrwccu4VfFC6PX3ZWXR6gseQmf3YzG7PdIbSqD44tgXHG4E8pq8rsDw+dyaXS7Jf4uvLsJntMrN3py9b6WVm+WZWZWb1ZvYu4H8Hp74fHOelvizHyGshrAI6nHMjIedagB1mluucu5jmfC0Wu/HfkI8DEeA9+H75nUG//LIY/DgLq4JjS8i5eNrqNOVlMWnFjxHaCwwAbwM+jR/X8R63tPrqpzCzbPx4lkvAE0Hysq8r05QLQDd+vNQu4AKwCV9f/tHMPuyceyzNWU2HjwCPJj0/CdzvnHsheD4v9UUBw/woBMKCBYDhpGuWZcDgnJv8TfAbZvZL4L8Cvx8cxdcRCK9Lw5OuWTacc380KelpM3sC33r3F8C16c9VWn0ZuAN40Dl3JEhTXQkvF5xzk7uGMbP/gx8r84iZfWcJfkl5GjiMH5OwDd/9UJ10fl7qi7ok5scgvrknTH7SNXLZ/8AHUO/NdEYWkXgdCatLqkdJnHPH8IO4Gs1sY6bzs1DM7Av41rivOef+W9KpZV1XZiiXUM65TuCr+Bk5OxY4e2nnnDvjnHvGOfe0c+4h4EPAn5rZZ4NL5qW+KGCYH2eBKjML+89Yje+uWJatC9Nxzo0SlFum87KInA2OYU2D8bSwJsXl6mRwXJJ1yMweBj4H/BXw8Umnl21dSVEuMzkZHJdkfUnmnPsl8HMgGiTNS31RwDA/XsOX5W3JiWaWD9wE7MlEphazoGzqCR+stFy9FhzvDDl3B36a1FKbR34l4l0RS64OmdlDwEPAN4CPuGAOXJID+Obl6eoKLMHPnVmUy0yWbH2ZRgFQEfw8L/VFAcP8eBL/Yf7pSekfxfcLPZ72HC0SZlY5zakv4MfQfC+N2VnUnHPH8b+095lZfJASwc/3AT91zrVmKn+ZYGZFQXA5OX0bvkzecM6dSH/OFo6ZfR6/lsA3gd92IYu+BX3w3wPuMbO3Jb22GD8A7hhLbFGr2ZSLma0Im31lZg3AJ4BO/GDIJWG6adZm9g78VNNXYP7qi3arnCdm9ii+T+0p/FSW+EqPLwG/Ela5lwMzewQfwf4MOI0flPMe/CptrwLvcFNXaFtSzOwBYG3w9FNALn41UIBTzrlvJl27A19WZ7g86vlTQA1wl3PuF2nJ9AKbbZmYXxL7B/hBXce4PEviw/ipzO9yzr2YxqwvKDP7XeB/4X9X/hP+HpO1Oed+HFzbiP+QH8XPIunFf0m5AXivc+5H6cr3QpttuZhZGfAmvr68weVZEh/Bf/Z80Dn37bRlfIGZ2VP4lR5/il97IR8/9foD+DEJ98TXXZiX+pLpFamWygPIBv4Av2LWCL4/6M+A4kznLcPl8q+AHwXlMYz/wN8PPAjkZzp/aSqDZ/EtUGGPZ0OuvxP4CdAP9AXld3Om7yMTZQLU4r9RHg4+4EbxfzT+Gtic6ftYgHJ5bIZymVJf8F9MvoufSjgIvAjcm+n7yFS54Af1/SW+Cf5CUF/OAd8Bbsv0fSxAufwG8I9Ac/D5OhT8rjwKrAm5/orqi1oYREREJCWNYRAREZGUFDCIiIhISgoYREREJCUFDCIiIpKSAgYRERFJSQGDiIiIpKSAQURERFLS9tYismREo9GH8XsNvCMWiz2b2dyILC0KGEQkIRqNzmYlN/0xFlmGFDCISJj/PMO5k+nKhIgsHgoYRGSKWCz2cKbzICKLiwIGEXnLkscM4Hef/DSwGb9p1j8AD8ZisSlbckej0Wvxuw6+E6gGOoBngC/EYrFjIddn43fWewC/bW8ufkOzZ4E/neY17wP+MLh+GPgn4A9isVjLldyzyHKlWRIiMh8+A3wV+AXwZfyurb8N7IpGo9XJF0aj0VuBPcD9wGvA/wReAf4tsCcajd4y6fpc4IfAXwANwBPAV4C9wL8G7grJTxT4G3z3yZ8DB4H3A89Eo9G8K75bkWVILQwiMkXQchBmOBaLfTEk/d3A7bFY7OdJ7/EIvsXhi8DvBGkGfAOIAPfHYrHHk65/P/B3wN9Eo9EtsVhsPDj1MHAv8D3gvlgsNpL0mrzgvSb7VeDWWCx2IOnaJ4AP4rdc/9a0Ny8iodTCICJhHprm8UfTXP/N5GAh8DDQA/xm0rf6Hfgui5eTgwWAWCz2JPAisAm4GxJdEVFgCPh4crAQvGYkFou1h+TnK8nBQuDrwfG2ae5BRGagFgYRmSIWi9kcX/JcyHv0RKPR/cBO4DpgP3BzcPqn07zPT/HBwjbgeXxwUQq8GovFzs4hP3tC0pqDY/kc3kdEAmphEJH50DZNenzAY+mk47lpro+nl006znWgYndI2qXgmD3H9xIRFDCIyPyomSa9Njj2TDrWhlwLUDfpuvgf/tVvPWsiMh8UMIjIfNg5OSEajZYCN+GnNL4RJMfHOdwzzfvE0/cFx8P4oOHGaDS6aj4yKiJvjQIGEZkPD0Sj0W2T0h7Gd0H8bdJgxZfwUy7vDtZJSAievx04ih/8SCwWGwNiQAHw1clTIqPRaO7kaZsisjA06FFEpphhWiXA07FYbP+ktB8AL0Wj0W/hxyHcHTxOkjSzIhaLuWg0+iHgx8CT0Wj0u/hWhE3Ar+MXfPqtpCmV4Jepvh34NeBoNBr9h+C6BuBdwH8AHntLNyois6aAQUTCPDTDuZP4GQ/JHgGewq+78H6gH/9H/MFYLHY++cJYLPZqsHjT5/DrK/wafqXHv8Wv9Hhk0vUXo9HorwIfB34L+BBgwNng33xx7rcnInNlzs1mczoRkam0nbTI8qExDCIiIpKSAgYRERFJSQGDiIiIpKQxDCIiIpKSWhhEREQkJQUMIiIikpICBhEREUlJAYOIiIikpIBBREREUlLAICIiIin9fziBvokw+PvwAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 576x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
   "source": [
    "ooo.plot_history(history)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 6.2 - Reload and evaluate best model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "x_test / loss      : 0.2869\n",
      "x_test / accuracy  : 0.8825\n"
     ]
    },
    {
     "data": {
      "text/markdown": [
       "#### Accuracy donut is :"
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x432 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/markdown": [
       "#### Confusion matrix is :"
      ],
      "text/plain": [
       "<IPython.core.display.Markdown object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "    #T_8216dc86_535b_11ea_968f_0df50868c732row0_col0 {\n",
       "            background-color:  #008000;\n",
       "            color:  #f1f1f1;\n",
       "            font-size:  12pt;\n",
       "        }    #T_8216dc86_535b_11ea_968f_0df50868c732row0_col1 {\n",
       "            background-color:  #e5ffe5;\n",
       "            color:  #000000;\n",
       "            font-size:  12pt;\n",
       "        }    #T_8216dc86_535b_11ea_968f_0df50868c732row1_col0 {\n",
       "            background-color:  #e5ffe5;\n",
       "            color:  #000000;\n",
       "            font-size:  12pt;\n",
       "        }    #T_8216dc86_535b_11ea_968f_0df50868c732row1_col1 {\n",
       "            background-color:  #008000;\n",
       "            color:  #f1f1f1;\n",
       "            font-size:  12pt;\n",
       "        }</style><table id=\"T_8216dc86_535b_11ea_968f_0df50868c732\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >0</th>        <th class=\"col_heading level0 col1\" >1</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_8216dc86_535b_11ea_968f_0df50868c732level0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_8216dc86_535b_11ea_968f_0df50868c732row0_col0\" class=\"data row0 col0\" >0.88</td>\n",
       "                        <td id=\"T_8216dc86_535b_11ea_968f_0df50868c732row0_col1\" class=\"data row0 col1\" >0.12</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                        <th id=\"T_8216dc86_535b_11ea_968f_0df50868c732level0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
       "                        <td id=\"T_8216dc86_535b_11ea_968f_0df50868c732row1_col0\" class=\"data row1 col0\" >0.12</td>\n",
       "                        <td id=\"T_8216dc86_535b_11ea_968f_0df50868c732row1_col1\" class=\"data row1 col1\" >0.88</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x7fa14488b110>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
   "source": [
Jean-Luc Parouty's avatar
Jean-Luc Parouty committed
    "model = keras.models.load_model('./run/models/best_model.h5')\n",
    "\n",
    "# ---- Evaluate\n",
    "reload(ooo)\n",
    "score  = model.evaluate(x_test, y_test, verbose=0)\n",
    "\n",
    "print('x_test / loss      : {:5.4f}'.format(score[0]))\n",
    "print('x_test / accuracy  : {:5.4f}'.format(score[1]))\n",
    "\n",
    "values=[score[1], 1-score[1]]\n",
    "ooo.plot_donut(values,[\"Accuracy\",\"Errors\"], title=\"#### Accuracy donut is :\")\n",
    "\n",
    "# ---- Confusion matrix\n",
    "\n",
    "y_pred   = model.predict_classes(x_test)\n",
    "\n",
    "# ooo.display_confusion_matrix(y_test,y_pred,labels=range(2),color='orange',font_size='20pt')\n",
    "ooo.display_confusion_matrix(y_test,y_pred,labels=range(2))\n"
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "---\n",
    "![](../fidle/img/00-Fidle-logo-01_s.png)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}