{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## 07. 检查点与热启动" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 检查点" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "为了防止优化过程异常中断(比如计算机异常断电,用户`KeyBoardInterrupt`等),我们开发了检查点与热启动机制。检查点机制保证每迭代`checkpoint_freq`次后将优化器以`FMinResult`的形式存储在硬盘上(文件路径为`checkpoint_file`)。" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from ultraopt import fmin, FMinResult\n", "from ultraopt.tests.mock import config_space, evaluate\n", "import sys\n", "sys.tracebacklimit = 0 # limit traceback infomation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "我们运行一个样例,并且在运行完之前使用`KeyboardInterrupt`将其中断:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 0%| | 177/100000 [00:13<2:02:44, 13.55trial/s, best loss: 0.437]\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "ERROR:root:Internal Python error in the inspect module.\n", "Below is the traceback from this internal error.\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Traceback (most recent call last):\n", "KeyboardInterrupt\n", "\n", "During handling of the above exception, another exception occurred:\n", "\n", "Traceback (most recent call last):\n", "AttributeError: 'KeyboardInterrupt' object has no attribute '_render_traceback_'\n", "\n", "During handling of the above exception, another exception occurred:\n", "\n", "Traceback (most recent call last):\n", "AssertionError\n" ] }, { "ename": "KeyboardInterrupt", "evalue": "", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m" ] } ], "source": [ "result = fmin(evaluate, config_space, \n", " checkpoint_file=\"checkout.pkl\", # 检查点保存的路径\n", " checkpoint_freq=1, # 保存检查点的频率,默认为 10, 为了更及时地保存优化器状态,这里设置为 1\n", " n_iterations=100000, # 设置一个很大的值,运行到一半 我们中断程序\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "因为如果在保存`checkpoint_file`的时候中断的话会导致检查点文件不完整,UltraOpt的机制是会形成检查点备份文件:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-rw-r--r-- 1 tqc tqc 699K 12月 29 12:15 checkout.pkl\n", "-rw-r--r-- 1 tqc tqc 699K 12月 29 12:15 checkout.pkl.bak\n" ] } ], "source": [ "!ls -lh *.pkl *.bak" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from joblib import load" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "如果加载保存不完整的检查点文件,会报错" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ERROR:root:Internal Python error in the inspect module.\n", "Below is the traceback from this internal error.\n", "\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Traceback (most recent call last):\n", "EOFError\n", "\n", "During handling of the above exception, another exception occurred:\n", "\n", "Traceback (most recent call last):\n", "AttributeError: 'EOFError' object has no attribute '_render_traceback_'\n", "\n", "During handling of the above exception, another exception occurred:\n", "\n", "Traceback (most recent call last):\n", "AssertionError\n" ] }, { "ename": "EOFError", "evalue": "", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m" ] } ], "source": [ "result = load(\"checkout.pkl\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "但我们可以加载检查点备份文件:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "checkout_content = load(\"checkout.pkl.bak\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "检查点保存的内容本质上是**优化器**, UltraOpt的设计哲学是以优化器为中心,优化器承载了优化过程中的全部状态,所以我们只需要在检查点中保存优化器 :" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "ultraopt.optimizer.bo.etpe_opt.ETPEOptimizer" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(checkout_content)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "我们可以用`ultraopt.FMinResult`这个数据结构包装优化器,这个数据结构也是`ultraopt.fmin`的返回值:" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "result = FMinResult(checkout_content)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "对于加载得到的`FMinResult`,我们可以像之前的教程一样对**优化结果**和**优化过程**进行数据分析:" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "+---------------------------------+\n", "| HyperParameters | Optimal Value |\n", "+-----------------+---------------+\n", "| x0 | 0.3409 |\n", "| x1 | 0.1209 |\n", "+-----------------+---------------+\n", "| Optimal Loss | 0.4366 |\n", "+-----------------+---------------+\n", "| Num Configs | 176 |\n", "+-----------------+---------------+" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "result" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "随迭代数的拟合曲线" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "result.plot_convergence(yscale=\"log\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "随时间的拟合曲线" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "result.plot_convergence_over_time(yscale=\"log\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "随时间的运行数" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "result.plot_finished_over_time();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 热启动" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "在优化过程异常中断后,如果我们想重启优化过程,需要指定之前的运行结果:`previous_result`参数" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "100%|██████████| 20/20 [00:03<00:00, 6.20trial/s, best loss: 0.437]\n" ] } ], "source": [ "result = fmin(evaluate, config_space, \n", " checkpoint_file=\"checkout.pkl\",\n", " checkpoint_freq=1, \n", " previous_result=\"checkout.pkl.bak\", # 之前的运行结果\n", " n_iterations=20, # 只运行20次\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "我们看到虽然只运行了20次,但是之前的优化过程都是有记录的:" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "+---------------------------------+\n", "| HyperParameters | Optimal Value |\n", "+-----------------+---------------+\n", "| x0 | 0.3409 |\n", "| x1 | 0.1209 |\n", "+-----------------+---------------+\n", "| Optimal Loss | 0.4366 |\n", "+-----------------+---------------+\n", "| Num Configs | 215 |\n", "+-----------------+---------------+" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "result" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**随时间的运行数**曲线也可以正常绘制,各种图表反映了中断前和恢复后的状态:" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEWCAYAAACJ0YulAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3deXwU9f3H8dcn4QhHINxHEgj3KcgNgohKVRTvE/G2pd7aalvb+hNrtT+t2l+r9cKiogVRCyoCWk8EUeS+D7kCSTgCSYAEyP35/TGTuIQkbI7d2U0+z8djH9mdndl57+xmPjvf+c6MqCrGGGMMQITXAYwxxoQOKwrGGGOKWVEwxhhTzIqCMcaYYlYUjDHGFLOiYIwxppgVBVMuEXlTRJ7waN4iIm+ISIaILK3gtK+IyP9U57gikigiYyuSo5zX8my5hruKfLam4up4HcBUjIgkAg2BTqp61B32c+AGVR3jYbRAGAX8DIgreq++ROQWYCpw3Gfwm6p6j6re4e9MKjJuMJR4X4XATuCPqjrXy1zBICIdgI0+gxoBx4CiA6rGhdrnVdPYlkJ4igTu9zpERYlIZAUn6QgkllYQfHyvqo19bvdUIWIo+V5VGwMxwEvATBGJ8ThTtRORE36Yqupu38/THdzfZ9giD2LWKlYUwtMzwEOlrSREJEFE1PefTUQWuFsTiMgtIrJYRP5PRA6JyA4ROcMdniQiqSJyc4mXbSkin4tIpoh8IyIdfV67p/tcuohsEZFrfJ57U0ReFpH5InIUOLuUvO1FZI47/TYR+YU7/HbgX8AIEckSkT9VZAH5Ns+IyBgRSRaRB933t1dEbi1j3JYiMtddNukiskhEfP9PTheRtSJyWETeFZEon9cZLyKr3Wm/E5F+Ps8NEJGV7jJ8F4jCD6paCLyN84u5m+/7KfF+i5u2ROQxEXlPRN5y57dBRAb7jPs7EUlxn9siIueWsQybuq9xQER2icgjIhIhIvXd99jXZ9xWInJcRFr7sSwS3QxrgaMlC8OplPHZ/tbns71MRC4UkR/dz/APPtNGiMjDIrJdRNLc5dS8IvOv6awohKflwALgoUpOPwxYC7QAZgAzgSFAV+AG4J8i0thn/InAn4GWwGpgOoCINAI+d1+jNXAd8JKI9PaZ9nrgSSAa+LaULDOBZKA9cBXwFxE5R1WnAnfw05bA5Eq+1yJtgaZALHA78KKINCtlvAfdPK2ANsAf+KnpAuAa4AKgE9APuAWclT7wOvBLnOX6KjDHXYHWAz7EWbk3B94HrvQntDhbV7cCecAuv98tXIKzbGOAOcA/3dfrAdwDDFHVaOB8ILGM13gBZ5l1Bs4CbgJuVdUcYDYwwWfca4BvVDW1vGXhM/4E4CIgRlXzK/C+StMWp8jGAo8Cr+F8jwcBZwL/IyKd3HHvBS5z3097IAN4sYrzr1GsKISvR4F7RaRVJabdqapvqGoB8C4QDzyuqjmq+hmQi1MgisxT1YXuyuCPOL/e44HxOM07b6hqvqquAmYBV/tM+5GqLlbVQlXN9g3hvsZI4Heqmq2qq3G2Dm6qwHsZ7v4aLboNL2O8PPc95qnqfCAL6FHGeO2Aju64i/TEE4Q9r6p7VDUd+Bg43R0+CXhVVX9Q1QJVnQbkAMPdW13g7+5r/gdY5s/7ArKBZ3H2GaWeamH4+FZV57uf8dtAf3d4AVAf6C0idVU1UVW3l5zYLUbXAb9X1UxVTQSeA250R5nhPl/kencYlL8sijyvqkmq6rs/qLLygCdVNQ+nELYE/uHm3oCzj6Lo/d+Bs38m2f0+PwZcVdGtlZrMikKYUtX1wFzg4UpMvt/n/nH39UoO891SSPKZbxaQjvMrqyMwzHeljLNV0ba0aUvRHkhX1UyfYbtwfvH5a4mqxvjclpQxXlqJX6THOPE9FnkG2AZ8Jk7TWsnlu6+M1+gIPFhiWcTjvMf2QEqJ4nKqX/1LVDUGaIbzS//MU4xfUsmcUSJSR1W3AQ/grAxTRWSmiLQvZfqWOIXMN6fvZ/M10FBEholIAk5x/MB9rrxlUaS870VFpbnFD37qdFDW97kj8IFPrk04hbJNNeYJa1YUwttk4BecuBIt2inb0GeY70q6MuKL7rjNSs2BPTj/2N+UWCk3VtU7faYt7zS8e4DmIhLtM6wDkFLFvJXm/rp8UFU74zTB/LqsNvcSknB+rfoui4aq+g6wF4gVEfEZv4OfebKAO4Eb3WYZcD7j4s/X/VXv9xajqs5Q1VE4K0gFni5ltIM4v8A7+gwr/mzclfB7OM1AE4C5PsW9vGVRHMPfvNUsCacHk2+2KFX17DsXaqwohDH3V9+7wH0+ww7g/OPeICKRInIb0KWKs7pQREa5beN/xvkVm4SzpdJdRG4UkbrubYiI9PIzfxLwHfC/IhLl7oy8Hfh3FfNWmruDtKu7Aj+M8yuy0I9JXwPucH85i4g0EpGL3IL3PZAP3OcuoyuAof5mcpuq/oXTZAjwI84v/4tEpC7wCE6TkD/vr4eInOO272fzU7fXkvMsWuk/KSLR4nQu+DUnfjYzgGtxtg5n+Awvb1l47RWc99QRineQX+pxppBiRSH8PY7TM8XXL4DfAGlAH5wVb1XMwNkqScfZeXcDOL+qgfNw2pb34DRZPI2fKyjXBCDBnf4DYLKqflHFvFXRDfgCZ5/D98BLqvr1qSZS1eU4y/2fODsvt+HuhFbVXOAK93E6zop0dgVz/R2nOPdT1cPAXTiFIgVnyyG5vIl91AeewtkS2IfTQeD3ZYx7r/vaO3A6CczA2YEMgKr+4D7fHvjEZ3iZyyIE/AOnOe4zEckEluB0vDAuUbvIjjHGGJdtKRhjjClmRcEYY0wxKwrGGGOKWVEwxhhTLKyP4mvZsqUmJCRUatrc3Fzq1atXvYECIBxyhkNGsJzVKRwyQnjk9CLjihUrDqpqqce2hHVRSEhIYPny5ZWaNjExkcoWlGAKh5zhkBEsZ3UKh4wQHjm9yCgiZR5Rb81HxhhjillRMMYYU8yKgjHGmGJhvU+hNHl5eSQnJ5OdnV3uePn5+WzatClIqSov1HNGRUVhR8UbU3PUuKKQnJxMdHQ0CQkJnHhSyhPl5ORQv35FTtHjjVDOqaqkpaWxf//+U49sjAkLNa75KDs7mxYtWpRbEEz1EBFatGhBYaE/JxE1xoSDGlcUACsIQWTL2piapUYWBWOMqan2HDrOq99s57vtBwPy+lYUqlliYiJ9+/at0mskJCRw8GDlPvAPP/yQjRs3Vmn+RW677TZat25d5fdjjKmag1k5vP19Ile/8h1nPPUV//vJZhZtDUxRqHE7mmu7Dz/8kPHjx9O7d+8qv9Ytt9zCPffcw0033VQNyYwxFXEkO4//rt/HnDV7+G57GgWFSvc2jXnovO5c3L89HVuUvLZW9bCiEAD5+flMnDiRlStX0qdPH9566y0aNmxYfFqOli1bsnz5ch566CEWLFhAWloaEyZMICUlhREjRpzQxfMvf/kLM2fOpFWrVsTHxzNo0CAeeughtm/fzt13382BAwdo2LAhr732Gunp6cyZM4dvvvmGJ554glmzZtGlS+WvxDl69GgSExOrYYkYY/yRnVfAl5tSmbMmha+3HCA3v5D45g345ejOXHJ6e3q2bRLwDDW6KPzp4w1s3HOk1OdUCxGpeOtZ7/ZNmHxxn3LH2bJlC1OnTmXkyJHcdtttvPTSSzz00ENl5/zTnxg1ahSPPvoo8+bNY+rUqQAsW7aMDz/8kDVr1pCXl8fAgQMZNGgQAJMmTeKVV16hW7du/PDDD9x111189dVXXHLJJYwfP56rrrrqpPlMnz6dZ5555qThXbt25T//+U9FFoMxpprkFyhfbd7PnNV7+Hzjfo7mFtAquj4Th3Xg4v7tGRAfE9QOHTW6KHglPj6ekSNHAnDDDTfw/PPPl1sUFi5cyOzZziV7L7roIpo1awbA4sWLGT9+PFFRUURFRXHxxRcDkJWVxXfffcfVV19d/Bo5OTmnzDVx4kQmTpxY6fdljKkeBYXK0p3pzFmzh3lrUjiSU0DTBnW5uH97LunfnmGdWxAZ4U3PvhpdFMr7RR/Ig8JKVvWix3Xq1Cnu03+qI67LU1hYSExMDKtXr67QdLalYIx3VJU1yYeZs3oP89btYf+RHBrWi+SMDo257oxujO7einp1vO/7432CGmj37t18//33AMyYMYNRo0YBTq+iFStWADBr1qzi8UePHs2MGTMA+OSTT8jIyABg5MiRzJ8/n+zsbLKyspg7dy4ATZo0oVOnTrz//vuA+2VbswaA6OhoMjMzS801ceJEVq9efdLNCoIxgbNlXybP/ncLY55dwGUvLubfS3bRLy6GFyYMYPkjY3lkbBxje7cJiYIAVhQCokePHrz44ov06tWLjIwM7rzzTgAmT57M/fffz+DBg4mMjCwef/LkySxcuJA+ffowe/ZsOnToAMCQIUO46KKL6NevH+PGjeO0006jadOmgPOrf+rUqfTv358+ffrw0UcfAXDdddfxzDPPMGDAALZv316l9zFhwgRGjBjBli1biIuLK97XYYwpm6qy/UAWL369jfP/byHn/30hLy3YRnyzhvz1yn4se2Qsr900mIv7t6dhvdBrrJFwPpnZ4MGDteRFdjZt2kSvXr1OOW0on1PIV1paGi1atODYsWOMHj2aKVOmMHDgQK9jnWDdunWcdtppXsc4pXC44AqER85wyAjBy7nvcDZfbU5lyY40luxIIzXT2cc3qGMzLunfngtPa0er6NLXNx5dZGeFqg4u7bnQK1PmBHfddRdbtmwhOzubm2++OeQKgjG1VfrRXOav28vHa/awNDEdVWgdXZ/hnVswvHMLzuzWkvjmDb2OWWFWFELcW2+9FRZbNMbUBpnZeXy2YT9z1uzh220HKShUurRqxAPndueifm3p0qpx2J8PLGBFQUTigbeANoACU1T1HyLSHHgXSAASgWtUNUOcJfkP4ELgGHCLqq6szLxVNew/mHARzs2PxvjjeG4BX20+8YCy2JgG/OLMzlzSvz292kXXqPVNILcU8oEHVXWliEQDK0Tkc+AW4EtVfUpEHgYeBn4HjAO6ubdhwMvu3wqJiooqboevSR9UKCq6nkJEhPVXMDVLbn4hC388wMdrnQPKjrkHlF0/1DmgbGCH4B5QFkwBKwqquhfY697PFJFNQCxwKTDGHW0asACnKFwKvKXOT88lIhIjIu3c1/FbXFwcycnJHDhwoNzx8vPzqVMn9FvPQj1nVFQUDRo08DqGMVWmqixLzGD2ymTmr9vLkex8YhrW5dLT23Nx//YM6+TdAWXBFJS1jYgkAAOAH4A2Piv6fTjNS+AUjCSfyZLdYScUBRGZBEwCiI2NLfXcPCJyyhVVWloa0dHRFXsjHgiHnOnp6WFxjqS0tDSvI/glHHKGQ0bwL2fK4Vw++/EQn/14iL2ZeUTVieDMTtGc27Upg+IaUTcyAsgiaXeWZxmDKeBFQUQaA7OAB1T1iO8ml6qqiFSoUVpVpwBTwOmSWpWuXOHQpQ7CI2c4ZATLWZ3CISOcnPNgVg7LE9NZujODZYnprEs5jAic0aUFvxkXx/l92tKofnC3zkNpWQb0nYtIXZyCMF1VZ7uD9xc1C4lIOyDVHZ4CxPtMHucOM8aYavHcZ1t44attANSvE8Hp8TH85vweXD4glvYx1gwKge19JMBUYJOq/s3nqTnAzcBT7t+PfIbfIyIzcXYwH67o/gRjjCnPqt2H6NSyEc9e3Z++sU2oXyfy1BPVMoHcUhgJ3AisE5GiM7f9AacYvCcitwO7gGvc5+bjdEfdhtMl9dYAZjPG1BKqzhlJ31+RzNLEdEZ1bcmgjs28jhWyAtn76FugrF3155YyvgJ3ByqPMaZ2STx4lLdXHODL93eSmHaMRvUiuWJALD8/s7PX0UJa6PZ1NMaYCsgvKGTR1oN8uXk/C388yO70YwAM79yce8/pxrjT2obkCehCjS0hY0xY234gi/eXJzNrZTIHMt1rFHRpwc/P7ES3RrmM6Nfd64hhxYqCMSbsHM3JZ97avby3PInluzKIjBDO7tGaa4fEc5bPxWrC4fiZUGNFwRgTFlSVFbsyeG95EnPX7uVYbgFdWjXi9+N6cvnAWFpHR3kdsUawomCMCWkHs3KYvTKZd5clsf3AURrVi+Tifu25Zkh8jT4HkVesKBhjQk5BobJw6wHeXZrEF5v2k1+oDOrYjL9e2YWL+rUL+hHHtYktWWNMyEhKP8Z7y5P4z4pk9h7OpkWjetw6MoFrh8TTtXVonwOsprCiYIzxTH5BIauTDrFw60EW/niA1UmHiBAY3b0Vj47vzbm9QueC9rWFFQVjTNBtS83knaVJzF6ZTMaxPCIE+sfH8ODPunPloDg7D5GHrCgYY4IiO6+A+ev2MnNpEksT06kTIZzXpw3j+7VnZJeWNG1Y1+uIBisKxpgA27Ivk3eW7mb2ymSOZOeT0KIhD4/ryZUD42gVbdcfDzVWFIwx1e54bgFz1+7hnaW7Wbn7EPUiI7igb1uuGxrPiM52qdxQZkXBGFNtNu45wjtLd/PhqhQyc/Lp0qoRj1zUiysGxtG8UT2v4xk/WFEwxlTZ5xv388+vt7Em6RD16kQw/rR2XDe0A0MSmtlWQZixomCMqbLH524gv0CZfHFvLh8QS0xD2yoIV1YUjDFVsnnfEdKzcrlqUBy3juzkdRxTRVYUjDEVll+gzFu7l2nfJ7J0Zzr160QwrHMLr2OZamBFwRjjl4JCZeXuDD5dv4+PViZx8Fg+cc0a8PtxPblmcDzNbEdyjWBFwRhTrv1Hspm+ZBfvLEviQGYO9SIjGBTXkKfH9GRMj9ZERtiO5JrEioIx5iRF1y5487tEPl2/jwJVzu7RmssGxHJ2j1ak7UshIaGN1zFNAFhRMMYUy84rYM6aPUz7LpENe44QHVWHW85I4MYRHenYolHxeGkeZjSBdcqiICKNgOOqWigi3YGewCeqmhfwdMaYoNh3OJu3lyTyztIk0o/m0r1NY568vC+XD4i1i93XMv582guBM0WkGfAZsAy4FpgYyGDGmMBSdXYcv7H4pyaisb3acOsZCYzoYqeiqK38KQqiqsdE5HbgJVX9q4isDnQwY0xg5OQXMG/tXt78LpG1yYeJjqrDrSMTuGlEAvHNG3odz3jMr6IgIiNwtgxud4dFBi6SMSYQdh48ygerUpjxw24OZuXQpVUj/nxZX64YEGuXtzTF/Pkm3A/8HvhAVTeISGfg68DGMsZUh0PHcnlveRIfrd7Dhj1HADi7RytuHdmJUV1bEmHdSU0JpywKqroQZ79C0eMdwH2BDGWMqZptqVm8sXgns1Ymk51XyOnxMTxyUS8uPK2dXdXMlMuf3kfdgYeABN/xVfWcwMUyxlSUqrJo60FeX7yTBVsOUK9OBJed3p7bRnWiZ9smXsczYcKf5qP3gVeAfwEFgY1jjKmo7LwCPliVwuvf7mRrahYtG9fnV2O7M3F4B1o2tiubmYrxpyjkq+rLAU9ijKmQ/Ueyefv7XUz/YRcZx/Lo3a4Jz13dn/H921G/jvUFMZXjT1H4WETuAj4AcooGqmp6wFIZY8q0Lvkwry/eydy1e8gvVH7Wqw23jerEsE7N7dgCU2X+FIWb3b+/8RmmQOfqj2OMKU1+QSFfbNrP1G93siwxg0b1IrlheEduOSPhhNNPGFNV/vQ+sqtmGOOBwkLlh53pzFu3h0/X7+NgVi5xzRrwyEW9uGZIPE2i6nod0dRA/vQ+uqm04ar6VvXHMcZk5RTw+rc7eXvJLnYePEqDupGc06s1l/Rvz9hebexU1Sag/Gk+GuJzPwo4F1gJWFEwphptP5DFm4sTeX95Etn5hQzsEMP9157OeX3a2EnpTND403x0r+9jEYkBZgYskTG1zMrdGbyyYDufb9pP3YgIzu7ShHvO68tpcU29jmZqocr8/DgK2H4GY6pAVfl6SyqvfLODpTvTadqgLvec3ZWbz0gg6+BeEqwgGI/4s0/hY5zeRgARQG/gPT+mex0YD6Sqal932GPAL4AD7mh/UNX57nO/xznhXgFwn6r+t0LvxJgwkFdQyJzVe5iycAdb9mfSvmkU/zO+N9cNiS8+KV3WQY9DmlrNny2FZ33u5wO7VDXZj+neBP7Jyfse/k9VfV8TEekNXAf0AdoDX4hId1W1I6hNjXA0J5+Zy5KYumgHew5n071NY567uj+XnN6eupERXsczpli5RUFEIoHHVPXsir6wqi4UkQQ/R78UmKmqOcBOEdkGDAW+r+h8jQkVqsr6lCN8uDqF/6xI5vDxPIYmNOeJy/tydo/WdqCZCUnlFgVVLRCRQhFpqqqHq2me97jdXJcDD6pqBhALLPEZJ9kddhIRmQRMAoiNjSUxMbFSIdLSwuMqs+GQMxwyQvBy5hcon289xLtr0kjMyKFOhHBGx8Zc2z+OPm0bAsfZtWuX5zmrIhwyQnjkDLWM/jQfZQHrRORznJ3MAKhqZU6f/TLwZ5x9FH8GngNuq8gLqOoUYArA4MGDNSEhoRIxHFWZNpjCIWc4ZITA5szJL2DWihReWrCN5Izj9GnfhL+M6c6Fp7UlpmG9Cr1WOCzPcMgI4ZEzlDL6UxRmu7cqU9X9RfdF5DVgrvswBYj3GTXOHWZMyMvOK+C95Um8vGA7ew9n0z8+hscv7WNNRCYs+XOcwrTqmpmItFPVve7Dy4H17v05wAwR+RvOjuZuwNLqmq8xgXA8t4AZS3fz6jfbSc3MYXDHZjx9ZT/O7NbSioEJWwE7TFJE3gHGAC1FJBmYDIwRkdNxmo8SgV8CuJf5fA/YiNPD6W7reWRC1dGcfP69ZBevLdrBwaxchnduzt+vO50RnVtYMTBhL2BFQVUnlDJ4ajnjPwk8Gag8xlTV0Zx83l6yiykLd5B+NJczu7Xk3nO6MbRTc6+jGVNt7IQqxpzCsdx83v5+F6+6xWB091Y8MLYbAzs08zqaMdWuzKJQ4kjmk6jqJQFJZEyIOJbrNBO9+s0O0twtgwfGdmdQRysGpuYqb0uh6KjjK4C2wL/dxxOA/aVOYUwNsPfwcWavTOGNxTs5mJXLqK4teWBsNwYnWDORqfnKLAqq+g2AiDynqoN9nvpYRJYHPJkxQaSqLPjxAP9atIPvtqehCiO7tuDlsd0ZYsXA1CL+7FNoJCKdVXUHgIh0Auz6f6bGWLIjjWf/u4XluzKIjWnAved04/IBsXRqaV9zU/v4UxR+BSwQkR2AAB1xu5IaE87WJB3i2c+2sGjrQdo0qc8Tl/XlmsHx1KtjJ6gztZc/B699KiLdgJ7uoM3uieuMCUs7DmTx10+38OmGfTRrWJc/XtiLG0d0JKpupNfRjPGcP9dTaAj8Guioqr8QkW4i0kNV555qWmNCScbxfKZ+uJ4ZS3cTVSeCX43tzu1ndqJxfeuZbUwRf/4b3gBWACPcxynA+/x03iJjQtrx3AKmfruDl77eRk6BMmFoPPef251W0fW9jmZMyPGnKHRR1WtFZAKAqh4TO5bfhIGCQmXWimSe+3wL+4/kMCohmj9dOZAurRp7Hc2YkOVPUcgVkQa4B7KJSBfA9imYkFXUvfSp+ZvZsj+T0+NjeGHCQFrLERKsIBhTLn+KwmTgUyBeRKYDI4FbAhnKmMpan3KY//1kE4u3pdGxRUNevH4gF57WFhEhMfGI1/GMCXn+9D76XERWAsNxuqTer6p2aXETUralZvLi19v5YFUKzRrWZfLFvZk4rKN1LzWmgvztdhEFZLjj9xYRVHVh4GIZc2qqyhebUnlt0Q6W7kynXp0I7jirC3eO6ULTBnW9jmdMWPKnS+rTwLXABqDQHayAFQXjmXXJh3ly/kaW7EgnvnkDHh7Xk6sGxdGysfUoMqYq/NlSuAzoYQesmVCQlH6MZz/bwker99C8UT3+fGkfrhvagbqR1kxkTHXwpyjsAOpiPY6Mh7Jy8nnhy628sTiRiAi45+yu/PKszkRHWTORMdWpvOspvIDTTHQMWC0iX+JTGFT1vsDHM7WdqjJ37V6emLeR/UdyuHpQHA+e14O2TaO8jmZMjVTelkLR6bFXAHOCkMWYE2zdn8nkORv4bnsafWOb8PINg+xqZ8YEWHnXU5hWcpiINAPiVXVtQFOZWq2oqWjqtztpWC+SP1/Wl+uHdiAywg6kNybQ/Ol9tAC4xB13BZAqIotV9dcBzmZqmaKmoifnbWLfkWyuHRzPby/oQQvrUWRM0Pizo7mpqh4RkZ8Db6nqZBGxLQVTrbalZvLoR05TUZ/2TXhx4kC7FrIxHvCnKNQRkXbANcAfA5zH1DJHc/J5/qutTF3kNhVd2ofrh3W0piJjPOJPUXgc+C/wraouE5HOwNbAxjI1naoyb91enpjrNBVdPSiO343raQefGeMxf8599D7O9ROKHu8ArgxkKFOzbUvNYvKc9SzelkbvdtZUZEwoKe84hd+q6l99jlc4gR2nYCoq5dBx3vh2J9O+TySqbiSPX9qHidZUZExIKW9LYZP7d3k54xhzSokHj/LUJ5v5bOM+AK4YGMfD1lRkTEgq7ziFj92/Jx2vYIw/8goKmbJwB89/uZV6kRH88qwuTBzWgbhmDb2OZowpgz/HKXQHHgISfMdX1XMCF8uEu9VJh3h41lo278tkXN+2/OmSPrRuYqemMCbU+dP76H3gFeBfQEFg45hwl5WTz7P/3cK07xNpEx3FlBsHcV6ftl7HMsb4yZ+ikK+qLwc8iQl7/92wj8kfbWB/ZjY3DOvIby/oYWcxNSbM+FMUPhaRu4APOPEsqekBS2XCSsbxfP46fQXz1+2jZ9toXrphoJ24zpgw5U9RuNn9+xufYQp0rv44JtzMW7uXP8zexvE85Tfn92DS6M52wRtjwpg/B691CkYQE17SsnJ4dM4G5q3dS/dWUfzzhqF0bxPtdSxjTBWVd/DaOar6lYhcUdrzqjo7cLFMKPt0/V7++MF6jmTn8Zvze3B+x0i6WkEwpkYob0thNPAVcHEpzylgRaGWOXw8j8fmbOCDVSn0jW3C9KuH0bNtExITE72OZoypJuUVhQz371RV/TYYYUzoWrT1AL95fy0HsnJ4YHrBgioAABWPSURBVGw37j67q+07MKYGKu+/+lb37/OVeWEReV1EUkVkvc+w5iLyuYhsdf82c4eLiDwvIttEZK2IDKzMPE31O5abz6MfrefGqUtpHFWHD+46gwfGdreCYEwNVd5/9iYR2Qr0cFfURbd1fl5k503gghLDHga+VNVuwJfuY4BxQDf3Ngmw4yJCwIpdGVz4j0W8vWQXt4/qxNx7R9EvLsbrWMaYACrv3EcTRKQtzrUULqnoC6vqQhFJKDH4UmCMe38asAD4nTv8LVVVYImIxIhIO1XdW9H5mqpLzjjGlIU7+PeSXbRr2oAZPx/OiC4tvI5ljAmCcrukquo+oH81zq+Nz4p+H9DGvR8LJPmMl+wOO6koiMgknK0JYmNjK72TMy0trVLTBVswc+YVFPLa0lRmrXPmOb5XM345vA2NIjNJTMwsczpbltUrHHKGQ0YIj5yhltGfg9cCQlVVRE66ToMf000BpgAMHjxYExISKp2hKtMGUzBy7ko7yq9nrGJdymEmDI3n3nO60T6mgd/T27KsXuGQMxwyQnjkDKWMwS4K+4uahdzrPqe6w1OAeJ/x4txhJgjmrNnDH2avI0LglRsGcUFfO4GdMbVVmTuaReRt9+/91Ti/Ofx02oybgY98ht/k9kIaDhy2/QmBdzy3gIdnreW+d1bRo2008+8/0wqCMbVceVsKg0SkPXCbiLwFnHDNxFOdEE9E3sHZqdxSRJKBycBTwHsicjuwC7jGHX0+cCGwDTjGT91hTYDsOJDFnf9eyY+pmdw1pgu/+pl1MzXGlF8UXsHpNtoZWMGJReGUJ8RT1QllPHVuKeMqcHe5SU21mbd2L7+btZa6kcKbtw7lrO6tvI5kjAkR5XVJfR54XkReVtU7g5jJBEhufiH/+8km3licyIAOMbx4/cAK7Uw2xtR8/pwl9U4R6Q+c6Q5aqKr+HLxmQsieQ8e5e8ZKVu0+xK0jE/j9uF7Uq2PNRcaYE/lzjeb7cI4LKDoB3nQRmaKqLwQ0mak2C388wAPvriYnr4B/Xj+A8f3aex3JGBOi/OmS+nNgmKoeBRCRp4HvASsKIa6gUHnhq63848utdGvdmJdvGESXVo29jmWMCWH+FAUBCnweF1CiJ5IJPelHc7l/5ioWbT3IFQNieeLyvjSs59mxisaYMOHPWuIN4AcR+cB9fBkwNXCRTFWt3J3B3dNXkpaVy18uP40JQ+MRsTpujDk1f3Y0/01EFgCj3EG3quqqgKYylaKqvPldIk/O20S7mChm3XkGp8U19TqWMSaM+NWeoKorgZUBzmKqIDvPOTr5w9V7GNurNc9dfTpNG9b1OpYxJsxYI3MNkJqZzaS3VrA66RAPndedu8Z0JSLCmouMMRVnRSHMbdxzhJ9PW0bGsTxeuWEgF/Rt53UkY0wYK/foJRGJFJGvgxXGVMxnG/Zx1SvfocD7d4ywgmCMqbJTXWSnQEQKRaSpqh4OVihTvvyCQl5duINnP9tCv7gYXrtxEK2bRHkdyxhTA/jTfJQFrBORz4GjRQNV9b6ApTJlWrAllcfnbmTHgaOM79eOZ6/uT1TdSK9jGWNqCH+Kwmx+OsWF8dCbi3fyp7kb6dyyEa/eOIjzerex4w+MMdXKn+MUpolIA6CDqm4JQiZTQmGh8vSnm3l14Q7O692G5ycMsK0DY0xAnPI0mSJyMbAa+NR9fLqIzAl0MOPILSjkgXdX8+rCHdw4vCMv3zDICoIxJmD8aT56DBgKLABQ1dUiUu4Fdkz1OJKdx+/m7WbVnqP89oIe3HlWF2suMsYElD9FIU9VD5dYGRUGKI9x7TuczS1vLGVr6lH+dk1/rhgY53UkY0wt4E9R2CAi1wORItINuA/4LrCxaredB48y8bUlHMnO5+lxHa0gGGOCxp9Lb90L9AFygHeAI8ADgQxVm/24P5NrXv2e7PxCZk4azuB4u/6BMSZ4/Ol9dAz4o3txHVXVzMDHqp3Wpxzmxqk/UDcygvd+OZyuraNJTMzwOpYxphbxp/fREBFZB6zFOYhtjYgMCny02mXl7gwmvLaEhvXq8N4vR9C1dbTXkYwxtZA/+xSmAnep6iIAERmFc+GdfoEMVpv8sCON295cRsvo+kz/+TDimjX0OpIxppbypygUFBUEAFX9VkTyA5ipVln44wEmvb2cuGYNmf7zYbSxcxgZYzxUZlEQkYHu3W9E5FWcncwKXIt7zIKpmi827ueu6Svp0roxb98+lJaN63sdyRhTy5W3pfBciceTfe5rALLUKvPW7uX+mavo074J024bSkzDel5HMsaYsouCqp4dzCC1yawVyfzmP2sY1LEZr98yhOgou2ymMSY0nHKfgojEADcBCb7j26mzK+e9ZUn8dtZaRnZtwWs3DaZhPbv4nTEmdPizRpoPLAHWYae3qJL56/by8Oy1jO7eiik32ontjDGhx5+iEKWqvw54khpu0dYD3D9zFQM7NONVO9OpMSZE+XOai7dF5Bci0k5EmhfdAp6sBlm5O4Nfvr2CLq0aM/WWITSoZwXBGBOa/NlSyAWeAf7IT72OFLDTZ/thy75Mbn1jGa2i6/PW7UNp2sB2KhtjQpc/ReFBoKuqHgx0mJpm3+Fsbn59KfXrRPDv24fROtoOTDPGhDZ/mo+2AccCHaSmOZqTz+3TlpGZncebtw4lvrmdusIYE/r82VI4CqwWka9xTp8NWJfU8hQUKvfPXMWmvUeYevMQerdv4nUkY4zxiz9F4UP3Zvz0xLyNfLEplccv7cPZPVt7HccYY/zmz/UUpgUjSE3x1veJvLE4kVtHJnDTiASv4xhjTIX4c0TzTko515GqVrr3kYgkAplAAZCvqoPdbq7v4hw5nQhco6phdYWZrzen8ticDYzt1ZpHLurtdRxjjKkwf5qPBvvcjwKuBqrjOIWzS/Roehj4UlWfEpGH3ce/q4b5BMWWfZncM2Mlvdo14R/XDSAyQryOZIwxFXbK3keqmuZzS1HVvwMXBSDLpUBRU9U04LIAzCMgjuXmc/eMlTSoV4epNw+hUX07n5ExJjz503w00OdhBM6WQ1XXegp8JiIKvKqqU4A2qrrXfX4f0KaMPJOASQCxsbEkJiZWKkBaWlqlpivNMwtS2J6axTPjO5KdsY/qvKxydeYMlHDICJazOoVDRgiPnKGW0Z+Vu+91FfJx2/urON9RqpoiIq2Bz0Vks++TqqpuwTiJW0CmAAwePFgTEhIqHaIq0xaZs2YP8zYf4q4xXbhqVM8qv15pqiNnoIVDRrCc1SkcMkJ45AyljP70Pqr26yqoaor7N1VEPgCGAvtFpJ2q7hWRdkBqdc+3uu1KO8ofZq9jUMdm/Opn3b2OY4wxVeZP81F94EpOvp7C45WZoYg0AiJUNdO9fx7wODAHuBl4yv37UWVeP1hy8wu5951VRAj847rTqRvpz8HhxhgT2vxpPvoIOAyswOeI5ipoA3wgIkXzn6Gqn4rIMuA9Ebkd2EXVm6gC6u9f/Mja5MO8csNA4prZKSyMMTWDP0UhTlUvqK4ZquoOoH8pw9OAc6trPoG0JukQr3yznWsGx3FB33ZexzHGmGrjT5vHdyJyWsCThInsvAIefH8NbZpE8ch4O0DNGFOz+LOlMAq4xT2yOQcQnA5C/QKaLASpKk9/upltqVlMu20oTaLs2gjGmJrFn6IwLuApwkB+QSH3zVzF/HX7uHF4R87q3srrSMYYU+386ZK6KxhBQt2073cxf90+fntBD+48q4vXcYwxJiCsH6Uf9h3O5m+fbWFMj1bceVYX3J5TxhhT41hR8MOT8zeRV6j86ZI+VhCMMTWaFYVTWLErnY/X7OGOs7rQsUUjr+MYY0xAWVEoR2Gh8vjHG2nTpD53nFXpy0cYY0zYsKJQjg9Xp7Am+TC/Pb8nDevZ6bCNMTWfFYUyZOXk8/Snm+kX15TLB8R6HccYY4LCfv6W4fkvt7L/SA4v3zCICLuKmjGmlrAthVKkHDrO69/u5NrB8Qzs0MzrOMYYEzRWFErx6jfbEYH7xnbzOooxxgSVFYUSUjOzmbksiSsGxBEb08DrOMYYE1RWFEr416Kd5BcUcucYO5WFMab2saLgI+NoLv9esouL+7cnoaUdqGaMqX2sKPh487tEjuUWcNeYrl5HMcYYT1hRcOXmFzL9h92c07M1PdpGex3HGGM8YUXB9dnGfRzMyuHG4R29jmKMMZ6xouD695JdxDVrwGi7eI4xphazogDsOJDFkh3pXD+sA5F29LIxphazogDMWbMHEbhyYJzXUYwxxlO1viioKnNW72F4pxa0aRLldRxjjPFUrS8Km/dlsuPgUS7u397rKMYY47laXxS+2pwKwNherT1OYowx3rOisDmV02Kb0tqajowxpnYXhfSjuazcncE5PW0rwRhjoJYXhW9+TEUVKwrGGOOq1UVhWWIG0VF1OC22qddRjDEmJNTqorAm6RD942LscpvGGOOqtUUhJ7+Qzfsy6R9vWwnGGFOk1haFbQezKShU+sfFeB3FGGNCRq0tCptSjwNwerwVBWOMKVJri8KPB4/Tpkl9Oz7BGGN81NqisDsjl26t7WI6xhjjq1YWBVUl6XAOnew6zMYYc4JaWRQOZuVyNLeQzq2sKBhjjK+QKwoicoGIbBGRbSLycCDmseNAFgCdWzUOxMsbY0zYCqmiICKRwIvAOKA3MEFEelf3fDKO5QLQOrp+db+0McaEtZAqCsBQYJuq7lDVXGAmcGl1z6RQnb8RYkcyG2OMrzpeByghFkjyeZwMDPMdQUQmAZMAYmNjSUxMrPBM9OgxRsRFcfjgPhKz0yqfNgjS0kI7H4RHRrCc1SkcMkJ45Ay1jKFWFE5JVacAUwAGDx6sCQkJFX6NhATo07YhlZnWC+GQMxwyguWsTuGQEcIjZyhlDLXmoxQg3udxnDvMGGNMEIRaUVgGdBORTiJSD7gOmONxJmOMqTVCqvlIVfNF5B7gv0Ak8LqqbvA4ljHG1BohVRQAVHU+MN/rHMYYUxuFWvORMcYYD1lRMMYYU8yKgjHGmGJWFIwxxhQTVfU6Q6WJyAFgVyUnbwkcrMY4gRIOOcMhI1jO6hQOGSE8cnqRsaOqtirtibAuClUhIstVdbDXOU4lHHKGQ0awnNUpHDJCeOQMtYzWfGSMMaaYFQVjjDHFanNRmOJ1AD+FQ85wyAiWszqFQ0YIj5whlbHW7lMwxhhzstq8pWCMMaYEKwrGGGOK1fiiICIXiMgWEdkmIg+X8nx9EXnXff4HEUnwIGO8iHwtIhtFZIOI3F/KOGNE5LCIrHZvj3qQM1FE1rnzX17K8yIiz7vLcq2IDPQgYw+fZbRaRI6IyAMlxvFkWYrI6yKSKiLrfYY1F5HPRWSr+7dZGdPe7I6zVURuDnLGZ0Rks/uZfiAiMWVMW+73Iwg5HxORFJ/P9cIypi13nRDgjO/65EsUkdVlTBu0ZXkSVa2xN5zTb28HOgP1gDVA7xLj3AW84t6/DnjXg5ztgIHu/Wjgx1JyjgHmerw8E4GW5Tx/IfAJIMBw4IcQ+Pz34Ryo4/myBEYDA4H1PsP+Cjzs3n8YeLqU6ZoDO9y/zdz7zYKY8Tygjnv/6dIy+vP9CELOx4CH/PhOlLtOCGTGEs8/Bzzq9bIseavpWwpDgW2qukNVc4GZwKUlxrkUmObe/w9wrohIEDOiqntVdaV7PxPYhHO96nBzKfCWOpYAMSLSzsM85wLbVbWyR71XK1VdCKSXGOz7/ZsGXFbKpOcDn6tquqpmAJ8DFwQro6p+pqr57sMlOFdE9FQZy9If/qwTqkV5Gd11zDXAO4GYd1XU9KIQCyT5PE7m5JVt8TjuF/8w0CIo6UrhNl8NAH4o5ekRIrJGRD4RkT5BDeZQ4DMRWSEik0p53p/lHUzXUfY/ndfLskgbVd3r3t8HtCllnFBarrfhbA2W5lTfj2C4x23mer2MprhQWZZnAvtVdWsZz3u2LGt6UQgrItIYmAU8oKpHSjy9EqcZpD/wAvBhsPMBo1R1IDAOuFtERnuQwS/u5VwvAd4v5elQWJYnUafdIGT7iIvIH4F8YHoZo3j9/XgZ6AKcDuzFaZ4JVRMofyvBs2VZ04tCChDv8zjOHVbqOCJSB2gKpAUlnQ8RqYtTEKar6uySz6vqEVXNcu/PB+qKSMtgZlTVFPdvKvABzqa4L3+Wd7CMA1aq6v6ST4TCsvSxv6iJzf2bWso4ni9XEbkFGA9MdIvXSfz4fgSUqu5X1QJVLQReK2P+obAs6wBXAO+WNY6Xy7KmF4VlQDcR6eT+crwOmFNinDlAUW+Oq4CvyvrSB4rbvjgV2KSqfytjnLZF+zpEZCjOZxe04iUijUQkuug+zs7H9SVGmwPc5PZCGg4c9mkaCbYyf4l5vSxL8P3+3Qx8VMo4/wXOE5FmbpPIee6woBCRC4DfApeo6rEyxvHn+xFQJfZfXV7G/P1ZJwTaWGCzqiaX9qTny9KLvdvBvOH0iPkRp8fBH91hj+N8wQGicJoYtgFLgc4eZByF02ywFljt3i4E7gDucMe5B9iA01tiCXBGkDN2due9xs1RtCx9Mwrworus1wGDPfrMG+Gs5Jv6DPN8WeIUqb1AHk5b9u04+6++BLYCXwDN3XEHA//ymfY29zu6Dbg1yBm34bTDF303i3rrtQfml/f9CHLOt93v3VqcFX27kjndxyetE4KV0R3+ZtF30Wdcz5ZlyZud5sIYY0yxmt58ZIwxpgKsKBhjjClmRcEYY0wxKwrGGGOKWVEwxhhTzIqCMcaYYlYUjHGJSIyI3OXzuL2I/CcA8yk6xfPj5YzTxT1tclZ1z9+Y8thxCsa43JMRzlXVvgGez2NAlqo+68e4WaraOJB5jPFlWwrG/OQpoOgX+jMiklB0gRQRuUVEPhTnQjiJInKPiPxaRFaJyBIRae6O10VEPnXPbrlIRHqeaqYicpbPhVdWFZ3iwBgv1PE6gDEh5GGgr6qeDsVbDr764pzWPArn1A+/U9UBIvJ/wE3A34EpOKcw2Coiw4CXgHNOMd+HgLtVdbF7ptzsano/xlSYFQVj/Pe1OhdByhSRw8DH7vB1QD93hX4G8L7PdZrq+/G6i4G/ich0YLaWcaI0Y4LBioIx/svxuV/o87gQ538pAjhUtKXhL1V9SkTm4ZyobbGInK+qm6sjsDEVZfsUjPlJJs41sitFnQsj7RSRq8E5JbqI9D/VdCLSRVXXqerTOKd2PuV+CGMCxYqCMS5VTcP5pb5eRJ6p5MtMBG4XkaLTHvtz/d8H3HmuxTnNclmXuzQm4KxLqjFBZl1STSizLQVjgi8LmOTPwWvASZcTNSaQbEvBGGNMMdtSMMYYU8yKgjHGmGJWFIwxxhSzomCMMabY/wNQzkYhyCQZ5AAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "result.plot_finished_over_time();" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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IvT29jZtkamCUBSlLVHl0FrO5v1UBaEoiqLMiSqICum8zcMvHONYusB//MpPueN//pwvPLKPR18dJp23l1s8RVGWmNdff53LL7/8rF+/detWRkdnLtzXGN/5znd4+eWXGz5+bGyMm2++mWQyyZ133nlW55yLFa8gKu2W75mcnDzrMdJ5m3968Tj/9OIJbNdQLLtM5G32DI7z+GtjPPbaiCoJRVGWjGYVRDQa5TOf+Qxf+MIXWirHilcQraikPjSa49BojuPpIj84bEhGwnTGIohlMZIpkc6XOTSaa6HUiqKsBBzH4f3vfz+XXHIJ733ve8nn89Msg1/84hfs2rUL8Gfxv/zLv8xll13G7/7u71ZbAQHwmc98hu3bt7Nz505uv/322o38wIED/Pqv/zrXXXcdb37zm3nllVd44oknePDBB7nrrru4+uqrOXDgwBnlTCQS7Ny5k2g02tLrX/Fprq1gqlAmV3SYyNscHoO39gki4LiGfLlM2fWYKpSXW0xFWZX8+UMv8fKxqbN+veu6BAKBafsuXd/Bp2677Iyv3bdvH/feey833ngjH/rQh/jSl740v5x//ufs3LmTT37yk3z/+9/n3nvvBeCpp57im9/8Js8//zzlcplrr72W6667DoA77riDL3zhC1xzzTX87Gc/4/d///f50Y9+xDvf+U5+7dd+jfe+970AfP7zn+f++++fdc6bbrqJL37xiw2/F82iCgLoiIVIRINQUfiu5/9hEOKhEKGARUes8eISRVHODTZt2sSNN94IwAc+8IHT3owfffRRvvWtbwHwq7/6q3R3dwPw+OOP8653vYtoNEo0GuW2224DIJvN8sQTT/DBD34Qy/KdOaVSac6x77rrLu66666WXVejqIIABvoSDPQlMJUssGzJxvUMsWCANakIXfEQA33t2y5YUc5lGpnpn46FFKLNTA0VEYLBIJ7nASyo0tvzPLq6unj88cfPKN9yWRArPgbRCrriYW69/LyaEoiGAnTHw1y5uYcbt/Wyc9sauuLhZZZSUZSlZnBwkCeffBKAr371q+zcuZOtW7fy9NNPA/DNb36zduxNN93EV7/6VQB+8IMfMDExAcCNN97IQw89RLFYJJvN8r3vfQ+Ajo4OBgYG+Pa3vw341c7PP/88AKlUikwmUxv7rrvu4rnnnpv1WEzlAKoganTFw5y/JokI3Peh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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "result.plot_convergence_over_time(yscale=\"log\");" ] } ], "metadata": { "kernelspec": { "display_name": "auto-sklearn", "language": "python", "name": "auto-sklearn" }, "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.6.10" } }, "nbformat": 4, "nbformat_minor": 4 }