From 57734ae3f3f4a66a3d9982f1ba8764cb6ef73c7e Mon Sep 17 00:00:00 2001 From: Troyanov Daniil Date: Sat, 11 Oct 2025 19:48:52 +0300 Subject: [PATCH] =?UTF-8?q?=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=20=D0=BE=D1=82=D1=87=D0=B5=D1=82=D0=B0=20=D0=B8=20=D0=B2?= =?UTF-8?q?=D1=8B=D0=BF=D0=BE=D0=BB=D0=BD=D0=B5=D0=BD=D0=BD=D0=B0=D1=8F=20?= =?UTF-8?q?=D0=BB=D0=B0=D0=B1=D0=BE=D1=80=D0=B0=D1=82=D0=BE=D1=80=D0=BD?= =?UTF-8?q?=D0=B0=D1=8F=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .DS_Store | Bin 0 -> 6148 bytes labworks/.DS_Store | Bin 0 -> 6148 bytes labworks/LW1/.DS_Store | Bin 0 -> 6148 bytes .../Lab1_Troyanov&Chernov-checkpoint.ipynb | 1 + .../my_document-checkpoint.md | 533 +++++ labworks/LW1/2.png | Bin 0 -> 315 bytes labworks/LW1/2_90.png | Bin 0 -> 948 bytes labworks/LW1/7.png | Bin 0 -> 273 bytes labworks/LW1/7_90.png | Bin 0 -> 920 bytes labworks/LW1/Lab1_Troyanov&Chernov.ipynb | 1956 +++++++++++++++++ labworks/LW1/architecture_of_1_layer_NN.png | Bin 0 -> 25092 bytes labworks/LW1/best_mnist_model.keras | Bin 0 -> 46150 bytes labworks/LW1/my_document.md | 533 +++++ labworks/LW1/paragraph_10.png | Bin 0 -> 43059 bytes labworks/LW1/paragraph_12_1.png | Bin 0 -> 81927 bytes labworks/LW1/paragraph_12_3.png | Bin 0 -> 87119 bytes labworks/LW1/paragraph_4.png | Bin 0 -> 8366 bytes labworks/LW1/paragraph_6.png | Bin 0 -> 38918 bytes labworks/LW1/paragraph_8.png | Bin 0 -> 59680 bytes labworks/LW2/LW1 | 1 + labworks/LW3/LW1 | 1 + 21 files changed, 3025 insertions(+) create mode 100644 .DS_Store create mode 100644 labworks/.DS_Store create mode 100644 labworks/LW1/.DS_Store create mode 100644 labworks/LW1/.ipynb_checkpoints/Lab1_Troyanov&Chernov-checkpoint.ipynb create mode 100644 labworks/LW1/.ipynb_checkpoints/my_document-checkpoint.md create mode 100644 labworks/LW1/2.png create mode 100644 labworks/LW1/2_90.png create mode 100644 labworks/LW1/7.png create mode 100644 labworks/LW1/7_90.png create mode 100644 labworks/LW1/Lab1_Troyanov&Chernov.ipynb create mode 100644 labworks/LW1/architecture_of_1_layer_NN.png create mode 100644 labworks/LW1/best_mnist_model.keras create mode 100644 labworks/LW1/my_document.md create mode 100644 labworks/LW1/paragraph_10.png create mode 100644 labworks/LW1/paragraph_12_1.png create mode 100644 labworks/LW1/paragraph_12_3.png create mode 100644 labworks/LW1/paragraph_4.png create mode 100644 labworks/LW1/paragraph_6.png create mode 100644 labworks/LW1/paragraph_8.png create mode 160000 labworks/LW2/LW1 create mode 160000 labworks/LW3/LW1 diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..2b224ebf45925b0cd697a4882e9055bde0e83d57 GIT binary patch literal 6148 zcmeHKJ5Iwu5S*8;t>Dz!+FCz~2WCWy}>@!SLz85Ly6W0&@_|xtHJ^ub3;gg783`qyiEyKeaJsY84#kDtvAz%CnfA9a}B)c*OjDfXc zz$L}F7~z(*w)Sq0YpsV)pe!8M3NBJG38fgZT#C1$L16bh0p^OWAS@935ePKcU<~{z F1K+T3P zvG6_oW_P%~PJ@qjGlsO?Gus z-t`(~!q<=Z=J&55Q|4jVg8~Cc(h_B=Lm{Uy^Pz6+hpD2Ky&DQF8)KL{s1yq4T z0X`oroG}s1J-VXybgDUxaA2j5zIXz0@EJ>CxZ^Ez^^Ls0cGxRp#T5? literal 0 HcmV?d00001 diff --git a/labworks/LW1/.DS_Store b/labworks/LW1/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..900421e53c9ff1c6a8b9341f6f6409956e89bc06 GIT binary patch literal 6148 zcmeHKOG*SW5Pi`W8r%%7T;>GA+#n9E7nr3BrF+DY`E-N2aMy?M9A3jCcpYD*N}0x9 z3@${Z3X)f;Pm+GnNeV!iJuRld1VG6q7(^KnF^{?qEVv+sJjWI_uF+tL+mVU>qDl6C zf-~Hs!!vgG-(W>sOV1XMcv#;}=S{om@<$vM@B8L$+N!G8ZO!=d>IKE?<=grGxr-m? zcFW!UMlR{%3^)VMfHU9>WCnO=i@lkBKQ9Vf0@xDf0*JUXTTZwXAFd*npZP^l-;f0K2Pr2$acdfB5}Pa6zYRV00(l8 foMxx`qv(uFhP|T9BKDk4^oKwu#5-r;7Z~^eFONM@ literal 0 HcmV?d00001 diff --git a/labworks/LW1/.ipynb_checkpoints/Lab1_Troyanov&Chernov-checkpoint.ipynb b/labworks/LW1/.ipynb_checkpoints/Lab1_Troyanov&Chernov-checkpoint.ipynb new file mode 100644 index 0000000..db52219 --- /dev/null +++ b/labworks/LW1/.ipynb_checkpoints/Lab1_Troyanov&Chernov-checkpoint.ipynb @@ -0,0 +1 @@ +{"cells":[{"cell_type":"code","execution_count":null,"metadata":{"executionInfo":{"elapsed":5220,"status":"ok","timestamp":1759129041522,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"lon2W0bNVyH8","colab":{"base_uri":"https://localhost:8080/"},"outputId":"7fe39a23-47a7-49cd-ca17-3703e109583a"},"outputs":[{"output_type":"stream","name":"stdout","text":["Cloning into 'is_dnn'...\n","remote: Enumerating objects: 188, done.\u001b[K\n","remote: Counting objects: 100% (188/188), done.\u001b[K\n","remote: Compressing objects: 100% (186/186), done.\u001b[K\n","remote: Total 188 (delta 47), reused 0 (delta 0), pack-reused 0\u001b[K\n","Receiving objects: 100% (188/188), 8.53 MiB | 4.57 MiB/s, done.\n","Resolving deltas: 100% (47/47), done.\n"]}],"source":["!git clone http://uit.mpei.ru/git/TroyanovDS/is_dnn.git"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"d5jFanC8NPTN"},"outputs":[],"source":["import os\n","os.chdir('/content/drive/MyDrive/Colab Notebooks/is_dnn/labworks/LW1')"]},{"cell_type":"code","execution_count":1,"metadata":{"executionInfo":{"elapsed":26468,"status":"ok","timestamp":1759209430625,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"qlvyHRzuJPfI","colab":{"base_uri":"https://localhost:8080/"},"outputId":"597ba917-88e2-4f26-cc45-80cdb1dc5e55"},"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}],"source":["from google.colab import drive\n","drive.mount('/content/drive')"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"H39A4nsqNuxn"},"outputs":[],"source":["# импорт модулей\n","import tensorflow as tf\n","from tensorflow import keras\n","from keras.datasets import mnist\n","from keras.models import Sequential\n","from keras.layers import Dense\n","from keras.utils import to_categorical\n","from sklearn.model_selection import train_test_split\n","import matplotlib.pyplot as plt\n","import numpy as np\n","from PIL import Image\n","import os"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":462,"status":"ok","timestamp":1759127274975,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"iNenKkcoRXrs","outputId":"041dc403-e177-4f0d-edbb-40902c8954fd"},"outputs":[{"output_type":"stream","name":"stdout","text":["Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz\n","\u001b[1m11490434/11490434\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 0us/step\n"]}],"source":["# Загрузка датасета\n","(X_train_orig, y_train_orig), (X_test_orig, y_test_orig) = mnist.load_data()\n","\n","# разбиваем выборку на обучающую и тестовую выборку\n","X = np.concatenate((X_train_orig, X_test_orig))\n","y = np.concatenate((y_train_orig, y_test_orig))\n","\n","\n","X_train, X_test, y_train, y_test = train_test_split(\n"," X, y,\n"," test_size=10000,\n"," train_size=60000,\n"," random_state=3,\n",")"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":224},"executionInfo":{"elapsed":243,"status":"ok","timestamp":1759127328545,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"bt-EmlYARsCL","outputId":"611d9110-39a2-46dd-94ce-b0fea7005b87"},"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAABJIAAAEwCAYAAADsAVtdAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIBpJREFUeJzt3WuQ1uV5BvDn1QVBlyZIYF2qBY9RoCiQRg2ioIQRUVuNyAbpNDoxoMaO0JzGhBCDTULCeOJgLNOySQqiKK0WhEQt9YDFWNAqakQNamhWUQcRBTks/35wQkLAPDfsuyf295vhy7vXPs8N7N6ze81/oVQURZEAAAAAIOOA5h4AAAAAgNZBkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABAiCKphautrU2lUimVSqX06KOP7vb2oijSEUcckUqlUjr33HObYcLG98orr+z8M9jTr8svv7y5R4Q2yX760I4dO9KPf/zjdNJJJ6XKyspUVVWVhg8fnh577LHmHg3aLPsppU2bNqUZM2akYcOGperq6tSpU6fUr1+/dOutt6b6+vrmHg/aNDvKjmrtFEmtRIcOHdLcuXN3e/2hhx5Ka9euTQcddFAzTNU0unbtmn72s5/t9uuSSy5JKaU0bNiwZp4Q2ra2vJ9SSumrX/1quuKKK9Jf/uVfphtuuCH9wz/8Q1q9enU644wz0i9/+cvmHg/atLa8n37961+nq6++OhVFkSZMmJCmTp2ajjzyyHTllVemyy67rLnHA5IdZUe1XhXNPQAx55xzTpo/f3665ZZbUkXF7//a5s6dmwYMGJDeeuutZpyucR1yyCFpzJgxu71eW1ub/uzP/iydd955zTAV8DtteT9t37493Xrrremiiy5KP/vZz3a+PnLkyHTUUUelOXPmpE9/+tPNOCG0bW15Px122GHpmWeeSb1799752tixY9Nll12WZs+enSZOnJiOOeaYZpwQsKPsqNbKE0mtxOc///n09ttvp/vvv3/na1u3bk133XVXGj169B7fZ8eOHemmm25KvXv3Th06dEhVVVVp7Nixaf369TszPXv2/JM/NtazZ8+U0u9/vKy2tnbn+27cuDENGDAgHXnkkamurm7n61OnTk2f+cxnUpcuXVLHjh3TgAED0l133bXbfG+99Vb61a9+lTZt2rTXfx51dXVp6dKl6cILL0wdOnTY6/cHyqct76dt27alzZs3p6qqql1e79atWzrggANSx44d/+T7A42rLe+nT3ziE7t8g/Y7F1xwQUoppeeff/5Pvj/Q+OwoO6q18kRSK9GzZ8906qmnpttvvz0NHz48pZTS4sWL04YNG1JNTU265ZZbdnufsWPHptra2nTppZemv//7v09r1qxJ06dPT08++WRatmxZateuXbrpppvSe++9l1L68JP1e9/7Xrr22mvTCSeckFJKqbKyco/zbNu2LX3uc59Lr732Wlq2bFmqrq7e+babb745nX/++emSSy5JW7duTfPmzUsjR45MCxcuTCNGjNiZmz59erruuuvS0qVL0+DBg/fqz2PevHlpx44dO3+8DWg+bXk/dezYMZ188smptrY2nXrqqWnQoEHpnXfeSZMnT06dO3dOX/rSl/b6zxMon7a8nz7K66+/nlL68Js4oHnZUbuzo1qJghZt9uzZRUqpeOKJJ4rp06cXnTp1KjZt2lQURVGMHDmyGDJkSFEURdGjR49ixIgRO9/vkUceKVJKxZw5c3Y5b8mSJXt8vSiKYunSpUVKqVi6dOlub1uzZk2RUipmz55d7Nixo7jkkkuKgw8+uHj88cd3y/5uvt/ZunVr0adPn+LMM8/c5fVJkyZ95H05AwYMKKqrq4v6+vq9fl+gPOynD7344otF//79i5TSzl9HHXVU8atf/Sr7vkDjsJ/2bMuWLUWvXr2KI488sti2bdtevz9QHnbUntlRrYcfbWtFLr744rR58+a0cOHCtHHjxrRw4cKPfORx/vz56WMf+1j67Gc/m956662dvwYMGJAqKyvT0qVL93mOr371q2nOnDnpzjvv3OO//fGHP8qxfv36tGHDhjRo0KC0cuXKXXLf+c53UlEUe91Ur169Oq1YsSLV1NSkAw7wIQwtQVveT506dUq9e/dOV111VVqwYEGaOXNm2r59e/qbv/mb/frfNoDWoi3vpz/25S9/OT333HNp+vTpu/x7LEDzsaN+z45qPfzttCJdu3ZNQ4cOTXPnzk2bNm1K9fX16aKLLtpj9sUXX0wbNmxI3bp12+Pb161bt08z3HbbbWn58uUppbTLz+H+oYULF6brr78+PfXUU2nLli07Xy+VSvt05x+bM2dOSin5sTZoQdrqftq+fXsaOnRoGjx4cJo2bdrO14cOHZp69+6dfvSjH6UpU6bs09lAebTV/fTHfvSjH6VZs2alyZMnp3POOacsZwINZ0d9yI5qXRRJrczo0aPT5Zdfnl5//fU0fPjw9PGPf3yPuR07dqRu3brtLF3+WNeuXffp/uXLl6d//Md/TE888UQaP358Ovvss3f5+dVHHnkknX/++en0009PM2fOTNXV1aldu3Zp9uzZe/yvLffF3Llz0yc/+ck0YMCAspwHlEdb3E8PP/xwWrVqVbrhhht2ef3YY49NJ5xwQlq2bNk+nQuUV1vcT3+otrY2ff3rX0/jxo1L3/rWtxp8HlBedpQd1dooklqZCy64II0dOzYtX7483XHHHR+ZO/roo9MDDzyQBg4cWNb/Neiyyy5L1157bfrtb3+bevXqlcaPH7/Lf3l99913pw4dOqSf//zn6aCDDtr5+uzZs8ty/+OPP55eeuml9N3vfrcs5wHl0xb30xtvvJFSSqm+vn63t23bti1t3759n88Gyqct7qffueeee9IXv/jFdOGFF6YZM2Y0+Dyg/OwoO6q18Q/MtDKVlZXp1ltvTd/5znfSeeed95G5iy++ONXX16fJkyfv9rbt27end955Z5/uHzRoUEoppe7du6cpU6akf/3Xf02/+MUvdr79wAMPTKVSaZdvql555ZX07//+77udFf2vIf/Q7xrvj/q5YaD5tMX9dNxxx6WUPvyfJP/QypUr0wsvvJD69eu3T78XoLza4n5K6cOnJmtqatLpp5+e5syZ49+WhBbKjrKjWhtPJLVCf/d3f5fNnHHGGWns2LHp+9//fnrqqafSsGHDUrt27dKLL76Y5s+fn26++eaP/NnbqC996Utp7ty5ady4cWnVqlXp4IMPTiNGjEg33HBDOvvss9Po0aPTunXr0owZM9IxxxyTnn766V3ef2//a8j6+vp0xx13pFNOOSUdffTRDZodaBxtbT8NGDAgffazn00/+clP0rvvvpuGDRuW6urq0rRp01LHjh3TNddc06DfB1A+bW0/vfrqq+n8889PpVIpXXTRRWn+/Pm7vL1v376pb9++Dfq9AOVjR9lRrYkiaT/24x//OA0YMCDddttt6dprr00VFRWpZ8+eacyYMWngwIENPr9UKqVZs2alE088MX3rW99KN9xwQzrzzDPTP//zP6cf/OAH6Zpr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IUOGNHQcGoEnkgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIRUNPcATaGysjKb6dWrV+isE044IZs599xzQ2f99V//dTZz4IEHhs5qSs8880wo98EHH5Ttzh49emQz3bp1K9t9Effcc0+T3gdNqaamJps55phjspmiKMoxTkoppe9+97vZzOTJk8t2XznNmjWrbGd17949m/n2t78dOivy9/O1r30tm9m4cWPoPiBm+/bt2cybb74ZOmvBggXZTN++fUNnAZTT+++/n8107tw5m2nfvn3ovq1bt4Zy5HkiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQEhFcw/QUF/5yleymVGjRmUz/fv3L8c4Zbd169ZsZunSpaGz1q5dm83cfvvt2cwvf/nL0H3vv/9+KBcxbdq0bObKK68s230/+clPspn/+q//Ktt90FSOO+64UG7ixIlluW/16tWh3B133JHNTJ48uaHjtGhnnXVWKHfjjTdmM7179w6ddffdd2czzz77bOgsoGX64IMPmnsEgD2qqqrKZt55551sJvI9M+XliSQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQiqae4CGOu6447KZ/v37N8Ekv/fiiy+GctOmTctmli5dms0899xzoftaooMPPjiUGzVqVFnue+KJJ0K5L3/5y9nM5s2bGzoONLmJEyeGcocddlg280//9E/ZzDe+8Y3Qfe+9914o1xJ17949m/nv//7vbKZr166h+9q3b5/NTJ48OXTWlClTshm7Dlq3Pn36NPcIAHtUWVmZzRRF0QSTsLc8kQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACCkorkHaKgf/OAH2cyWLVuymZNOOil039y5c7OZefPmhc5av359KLc/+9SnPhXKdenSpSz3Pfzww6Hcpk2bynIftFalUimbiXz+fvDBB6H76uvrQ7lyqaqqymauuOKK0FnnnntuNnP44YdnM8uWLQvdN3HixGzmoYceCp0FtF7t27cP5fr165fNbNy4MZt57bXXQvcBHHLIIaHc8OHDs5lXXnmlgdPQGDyRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIKSiuQdoqF//+tfZzNVXX53NtGvXLnTftm3bQjlivv3tb5ftrKIospn777+/bPdBa7Ry5cpQbvTo0dlMv379spmFCxeG7qupqclmOnXqVJaZUkrptttuy2YOPfTQ0FmvvfZaNrNgwYJsZty4caH73n777VAO2L9dfvnloVzv3r2zmQceeCCbiew6IKa6ujqbqaura4JJGkfHjh1DuT//8z/PZpYvX97QcWgEnkgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIKSiuQdoKbZt29bcI7RJgwYNKttZTz/9dDZz//33l+0+aI3mzZsXyr388svZzIIFC7KZIUOGhO5bsmRJNtO9e/dspqqqKnRfxKJFi0K5cePGZTN1dXUNHQfYS127ds1mxowZEzqrQ4cODR0npZTSs88+G8qVaydGrVq1qmxnwf7qiiuuCOUmTpyYzRx22GHZzOzZs0P3denSJZupra3NZv7jP/4jdF99fX02M2HChNBZpVIpm5k1a1boLJqWJ5IAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQIgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACElIqiKELBUqmxZ2E/06VLl2zmt7/9beisioqKbObBBx/MZoYNGxa6j7jgCmlU9lP5HXHEEdnMmjVrmmCS34v8PUc/HlevXp3NnHrqqaGzNmzYEMrR9FrCfkrJjmoMxx9/fDbzi1/8Ips5/PDDyzFO2c2fPz+bOe2000JnVVdXZzMjRozIZhYvXhy6j7iWsKPspw916tQpm4l+3dO5c+eGjrNXyvX10ZNPPhm6b/PmzdnMwIEDQ2dt2bIlm4nsuhUrVoTuIy73MeOJJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqfqqqqUO7ee+/NZioqYh+CW7ZsyWZ++MMfhs4C8q655ppsplQqNf4gjXTftGnTspkNGzaU7T6gvGbOnJnNHH744dnMQw89FLov8jXNOeeck82cfPLJoftGjhwZypVLz549s5mDDjoodFbkazZoaSLf3xx66KGhs4qiaOg4zaJfv35NfueiRYuymRUrVjTBJOwtTyQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIqWjuAWh9zj777FDuU5/6VNnufOyxx7KZBx54oGz3QWvUpUuXbKampiZ01ogRI7KZoiiymQULFoTuu/POO7OZG2+8MZuprq4O3ff666+HckDT+vznPx/KDRo0KJtZs2ZNNvPFL34xdN/LL7+czUR2VPRrqPvuuy+UK5cZM2ZkM1/4whdCZ/3Lv/xLNnP77beHznr33XdDOWiol156KZtZvHhx6Kzo5zkpVVZWZjMnnXRSNvPUU081fBj2iieSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCFEkAAAAAhFQ09wC0Pn369GnyO+++++4mvxNaiujn3Pz587OZY489NnTWm2++mc2cdtpp2cyzzz4bum/jxo3ZzCc+8YlsZvr06aH7JkyYkM38/Oc/D521adOmUA7IO+uss0K5Aw88MJu58cYbs5mXX345dF+5DB48uGxn1dbWhnJ1dXXZzCmnnJLNnHTSSaH7vve972UznTp1Cp01derUUA6awpVXXhnK3XLLLdnMeeed19BxdiqVSmU7q1yiMw0bNiybeeSRR7KZp556KnQf5eOJJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqfc845p7lHgP3GGWeckc1Mnjw5dNaxxx6bzaxcuTJ01nXXXZfNLF++PHRWuSxatCibmT59euisU089NZsZOnRo6Kx77703lAP2b8OHD89mrrrqqtBZb7/9djYzadKk0Fm/+c1vQjngT3v11VdDuZqammymX79+ZcmkFNsrL730Ujbz3HPPhe5bsmRJNhP5OiullK6//vps5rLLLstmHnzwwdB9Tf216/7ME0kAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqWc889N5s5/vjjy3bf+++/H8rddtttZbsTWpI33ngjmxk4cGDorHXr1mUz1113XeisRYsWhXJNaePGjdnM4sWLQ2cNHjw4mznxxBNDZ917772hHJBXX19ftrM+/elPZzOHHnpo6Kzx48dnMxMmTMhmOnToELrv6quvzmZ+85vfhM4CmtbmzZuzmccee6wsmZRSmjFjRijXlB5//PFQ7nOf+1w2069fv2xmypQpofvOOOOMUI48TyQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEFLR3APQshxwQNN2i0VRhHI7duxo5EmgeVRXV2cz0c+TWbNmZTOLFi0KndXUunfvns1MnTo1mxk+fHjovv/93//NZm666abQWUD5TJw4MZT7zGc+k82MGTOmLJmUUiqVStnM22+/nc187WtfC91XW1sbygG0RJs3bw7lIl+3LVmyJJuprKwM3Uf5eCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABASEVzD0DL0q1btya9b926dU16H7Q0Tz/9dDazdu3a0Fnjxo3LZjp37hw66+GHHw7lckaNGhXK9e/fP5vp0aNHNvPWW2+F7hs/fnw2s3HjxtBZQPlEvy4488wzs5mpU6dmMyNHjgzdd+edd2Yz3//+97OZF154IXQfQFvw5ptvZjMDBgxogknYW55IAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEFIqiqIIBUulxp6FFmDOnDnZTE1NTdnumzRpUih3/fXXl+1Oyiu4QhrV/r6f+vTpE8otXrw4m6murg6dFfkzLeff/cqVK7OZ++67L5uZOXNm6L5169aFcrRuLWE/pbT/7yhg37SEHWU/AXuS20+eSAIAAAAgRJEEAAAAQIgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgpKK5B6BlufHGG7OZESNGhM7q1KlTQ8cBUkqrVq0K5Y444ohGngQAAGjrPJEEAAAAQIgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgpKK5B6Bl+Z//+Z9s5r777gudNWrUqGymb9++obMAAACA5ueJJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqfSy+9NJR7/vnns5mBAwc2dBwAAACgiXgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQEipKIqiuYcAAAAAoOXzRBIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQIgiCQAAAIAQRRIAAAAAIf8PnYaHeLqsxsQAAAAASUVORK5CYII=\n"},"metadata":{}}],"source":["# Вывод первых 4 изображений\n","fig, axes = plt.subplots(1, 4, figsize=(12, 3))\n","for i in range(4):\n"," axes[i].imshow(X_train[i], cmap='gray')\n"," axes[i].set_title(f'Метка: {y_train[i]}')\n"," axes[i].axis('off')\n","plt.tight_layout()\n","plt.show()"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":134,"status":"ok","timestamp":1759127329383,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"5WUu3_97TjSa","outputId":"7a75ca25-58fe-447d-8bef-547159e6479d"},"outputs":[{"output_type":"stream","name":"stdout","text":["Shape of transformed X train: (60000, 784)\n"]}],"source":["# развернем каждое изображение 28*28 в вектор 784\n","num_pixels = X_train.shape[1] * X_train.shape[2]\n","X_train = X_train.reshape(X_train.shape[0], num_pixels) / 255\n","X_test = X_test.reshape(X_test.shape[0], num_pixels) / 255\n","print('Shape of transformed X train:', X_train.shape)"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":7,"status":"ok","timestamp":1759127330016,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"sUJfDepgUauM","outputId":"2a9bc3d0-8bdb-4971-f3d4-ca21cb14fca6"},"outputs":[{"output_type":"stream","name":"stdout","text":["Shape of transformed y train: (60000, 10)\n"]}],"source":["# переведем метки в one-hot\n","y_train = to_categorical(y_train)\n","y_test = to_categorical(y_test)\n","print('Shape of transformed y train:', y_train.shape)\n","num_classes = y_train.shape[1]"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"executionInfo":{"elapsed":207500,"status":"ok","timestamp":1759127540337,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"f3UzOyf_V2HQ","outputId":"9ffc63df-23bf-4947-f3c0-2a3e507034f1"},"outputs":[{"output_type":"stream","name":"stderr","text":["/usr/local/lib/python3.12/dist-packages/keras/src/layers/core/dense.py:93: UserWarning: Do not pass an `input_shape`/`input_dim` argument to a layer. When using Sequential models, prefer using an `Input(shape)` object as the first layer in the model instead.\n"," super().__init__(activity_regularizer=activity_regularizer, **kwargs)\n"]},{"output_type":"stream","name":"stdout","text":["Архитектура однослойной сети:\n"]},{"output_type":"display_data","data":{"text/plain":["\u001b[1mModel: \"sequential\"\u001b[0m\n"],"text/html":["
Model: \"sequential\"\n","
\n"]},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n","┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n","┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n","│ dense (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m) │ \u001b[38;5;34m7,850\u001b[0m │\n","└─────────────────────────────────┴────────────────────────┴───────────────┘\n"],"text/html":["
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n","┃ Layer (type)                     Output Shape                  Param # ┃\n","┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n","│ dense (Dense)                   │ (None, 10)             │         7,850 │\n","└─────────────────────────────────┴────────────────────────┴───────────────┘\n","
\n"]},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["\u001b[1m Total params: \u001b[0m\u001b[38;5;34m7,850\u001b[0m (30.66 KB)\n"],"text/html":["
 Total params: 7,850 (30.66 KB)\n","
\n"]},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m7,850\u001b[0m (30.66 KB)\n"],"text/html":["
 Trainable params: 7,850 (30.66 KB)\n","
\n"]},"metadata":{}},{"output_type":"display_data","data":{"text/plain":["\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"],"text/html":["
 Non-trainable params: 0 (0.00 B)\n","
\n"]},"metadata":{}},{"output_type":"stream","name":"stdout","text":["Epoch 1/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.7145 - loss: 1.1468 - val_accuracy: 0.8708 - val_loss: 0.5242\n","Epoch 2/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8769 - loss: 0.4791 - val_accuracy: 0.8838 - val_loss: 0.4376\n","Epoch 3/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8871 - loss: 0.4188 - val_accuracy: 0.8917 - val_loss: 0.4007\n","Epoch 4/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8939 - loss: 0.3855 - val_accuracy: 0.8957 - val_loss: 0.3796\n","Epoch 5/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8987 - loss: 0.3692 - val_accuracy: 0.8993 - val_loss: 0.3665\n","Epoch 6/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9035 - loss: 0.3523 - val_accuracy: 0.9008 - val_loss: 0.3555\n","Epoch 7/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9059 - loss: 0.3402 - val_accuracy: 0.9040 - val_loss: 0.3469\n","Epoch 8/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9053 - loss: 0.3389 - val_accuracy: 0.9060 - val_loss: 0.3405\n","Epoch 9/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9072 - loss: 0.3306 - val_accuracy: 0.9053 - val_loss: 0.3358\n","Epoch 10/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9115 - loss: 0.3209 - val_accuracy: 0.9067 - val_loss: 0.3310\n","Epoch 11/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9125 - loss: 0.3194 - val_accuracy: 0.9088 - val_loss: 0.3267\n","Epoch 12/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9110 - loss: 0.3165 - val_accuracy: 0.9093 - val_loss: 0.3236\n","Epoch 13/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9133 - loss: 0.3094 - val_accuracy: 0.9110 - val_loss: 0.3212\n","Epoch 14/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9155 - loss: 0.3031 - val_accuracy: 0.9123 - val_loss: 0.3176\n","Epoch 15/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9134 - loss: 0.3048 - val_accuracy: 0.9115 - val_loss: 0.3160\n","Epoch 16/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9129 - loss: 0.3096 - val_accuracy: 0.9120 - val_loss: 0.3141\n","Epoch 17/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9126 - loss: 0.3066 - val_accuracy: 0.9123 - val_loss: 0.3121\n","Epoch 18/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9157 - loss: 0.2999 - val_accuracy: 0.9117 - val_loss: 0.3099\n","Epoch 19/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9162 - loss: 0.2979 - val_accuracy: 0.9117 - val_loss: 0.3098\n","Epoch 20/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9166 - loss: 0.2941 - val_accuracy: 0.9133 - val_loss: 0.3072\n","Epoch 21/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9152 - loss: 0.2975 - val_accuracy: 0.9125 - val_loss: 0.3065\n","Epoch 22/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9173 - loss: 0.2926 - val_accuracy: 0.9137 - val_loss: 0.3049\n","Epoch 23/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9211 - loss: 0.2842 - val_accuracy: 0.9137 - val_loss: 0.3030\n","Epoch 24/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9185 - loss: 0.2929 - val_accuracy: 0.9138 - val_loss: 0.3024\n","Epoch 25/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9189 - loss: 0.2880 - val_accuracy: 0.9147 - val_loss: 0.3025\n","Epoch 26/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9179 - loss: 0.2926 - val_accuracy: 0.9150 - val_loss: 0.3007\n","Epoch 27/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9182 - loss: 0.2913 - val_accuracy: 0.9138 - val_loss: 0.3000\n","Epoch 28/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9197 - loss: 0.2881 - val_accuracy: 0.9133 - val_loss: 0.2993\n","Epoch 29/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9190 - loss: 0.2829 - val_accuracy: 0.9145 - val_loss: 0.2978\n","Epoch 30/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9190 - loss: 0.2878 - val_accuracy: 0.9157 - val_loss: 0.2977\n","Epoch 31/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9183 - loss: 0.2859 - val_accuracy: 0.9155 - val_loss: 0.2969\n","Epoch 32/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9207 - loss: 0.2849 - val_accuracy: 0.9158 - val_loss: 0.2962\n","Epoch 33/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9196 - loss: 0.2861 - val_accuracy: 0.9158 - val_loss: 0.2956\n","Epoch 34/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9205 - loss: 0.2784 - val_accuracy: 0.9155 - val_loss: 0.2952\n","Epoch 35/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9239 - loss: 0.2740 - val_accuracy: 0.9167 - val_loss: 0.2952\n","Epoch 36/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9227 - loss: 0.2727 - val_accuracy: 0.9165 - val_loss: 0.2945\n","Epoch 37/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9225 - loss: 0.2757 - val_accuracy: 0.9168 - val_loss: 0.2937\n","Epoch 38/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9227 - loss: 0.2748 - val_accuracy: 0.9165 - val_loss: 0.2935\n","Epoch 39/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9201 - loss: 0.2814 - val_accuracy: 0.9177 - val_loss: 0.2922\n","Epoch 40/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9239 - loss: 0.2749 - val_accuracy: 0.9170 - val_loss: 0.2915\n","Epoch 41/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9219 - loss: 0.2745 - val_accuracy: 0.9170 - val_loss: 0.2917\n","Epoch 42/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9214 - loss: 0.2766 - val_accuracy: 0.9178 - val_loss: 0.2917\n","Epoch 43/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9244 - loss: 0.2762 - val_accuracy: 0.9168 - val_loss: 0.2920\n","Epoch 44/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9264 - loss: 0.2676 - val_accuracy: 0.9183 - val_loss: 0.2905\n","Epoch 45/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9237 - loss: 0.2727 - val_accuracy: 0.9177 - val_loss: 0.2904\n","Epoch 46/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9243 - loss: 0.2697 - val_accuracy: 0.9167 - val_loss: 0.2903\n","Epoch 47/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9225 - loss: 0.2780 - val_accuracy: 0.9180 - val_loss: 0.2894\n","Epoch 48/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9230 - loss: 0.2719 - val_accuracy: 0.9172 - val_loss: 0.2893\n","Epoch 49/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9234 - loss: 0.2662 - val_accuracy: 0.9175 - val_loss: 0.2887\n","Epoch 50/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9249 - loss: 0.2689 - val_accuracy: 0.9185 - val_loss: 0.2882\n"]}],"source":["model_0 = Sequential()\n","model_0.add(Dense(units=num_classes, input_dim=num_pixels, activation='softmax'))\n","\n","# Компиляция модели\n","model_0.compile(loss='categorical_crossentropy',\n"," optimizer='sgd',\n"," metrics=['accuracy'])\n","\n","# Вывод информации об архитектуре\n","print(\"Архитектура однослойной сети:\")\n","model_0.summary()\n","\n","# Обучение модели\n","history_0 = model_0.fit(X_train, y_train,\n"," validation_split=0.1,\n"," epochs=50)\n"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":533},"executionInfo":{"elapsed":260,"status":"ok","timestamp":1759127542723,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"5yjxVnmFmpbV","outputId":"b182a139-da24-491e-9ebd-7ba1e39eec84"},"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAA04AAAIjCAYAAAA0vUuxAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAl3JJREFUeJzs3Xd4U2X/BvA7O917UUrLLHsLshRkVECGPwcKyhIcgC9YRECZoqKggChDfUFAQHCCDFFAeEG2YNl7rw66m7ZJ2pzfH6c5bZqWTnrScn+u61xJzjk5eZKeltw8z/M9CkEQBBAREREREVGhlHI3gIiIiIiIyNExOBERERERERWBwYmIiIiIiKgIDE5ERERERERFYHAiIiIiIiIqAoMTERERERFRERiciIiIiIiIisDgREREREREVAQGJyIiB2axWHDv3j1cuXJF7qYQERE91BiciIgcTHR0NMaNG4fQ0FBotVr4+fmhYcOGSElJkbtpVMHmzJmD+vXrw2KxyN2USuvUqVPYsGGD9DgqKgpbtmyRr0FVwKOPPop33nlH7mYQVTgGJ6IqYujQoXB1dZW7GVRGly5dwiOPPIJ169bhtddew+bNm7F9+3bs3LkTLi4ucjePKlBKSgo++eQTTJw4EUql7T/XBoMBs2bNQtOmTeHs7AwPDw906tQJq1atgiAIMrXYMaWmpuK1117DwYMHcfHiRYwdOxYnT56Uu1mV2sSJE7Fo0SJER0fL3RSiCqUQ+BeWqNKKj4/HmjVrsHfvXuzZswf37t1D9+7d0aJFCzz//PNo0aKF3E2kEuratSuuXbuGPXv2IDg4WO7mkIwWLFiA6dOnIyYmBnq9XlofExODrl274uzZs3jhhRfw+OOPIzMzEz///DP27NmDAQMGYM2aNVCpVDK23rH0798fGzduBADUq1cP+/fvh4+Pj8ytqrwsFguCg4MxcuRIvP/++3I3h6jCMDgRVVLr1q3DyJEjkZaWhrCwMJjNZkRHR6NFixY4fvw4zGYzhgwZgq+//hparVbu5lIxHD16FK1bt8aff/6J7t27y90cklmzZs3QtGlTfPfddzbrn3zySWzfvh2//vor+vbta7NtwoQJ+PTTT/Hxxx9j4sSJFdlch3fmzBlkZGSgSZMm/JtYDt58801s2rQJV69ehUKhkLs5RBWCQ/WIKqF9+/bhpZdeQmBgIPbt24erV6+iW7du0Ov1OHLkCO7cuYMXX3wRK1euxFtvvQUAEAQBYWFh6Nevn93xMjMz4eHhgddeew0AsHv3bigUCvz00092+7q6umLo0KHS4xUrVkChUODatWvSutOnT8PLywtPPfUUsrKybPb7559/bI537949KBQKzJgxw2Z9Qevmzp0LhUKBzp0726y/cuUKnnvuOVSrVg1KpRIKhQIKhQKNGze+38cIAMjKysKsWbNQu3Zt6HQ6hIWF4d1334XRaLTZLywsDE899ZTNujFjxth9YdixYwcUCgU2b94srevcubNdm48cOSK10+rgwYPQ6/W4fPkyGjVqBJ1Oh8DAQLz22mtISEiweX5Bx/zwww+hVCqxdu3aEr92YTp37iztW9CS9+cOAIsXL5baXq1aNYwePRpJSUn3fY3U1FSMGDECoaGh0Ol0qF69Ol5//XXExMTY7Gc9hwpb8p8v//77L3r27Al3d3e4urqia9euOHjwoLRdEAR06dIFfn5+iI2NldabTCY0adIEtWvXhsFgAABcv34do0aNQnh4OJycnODj44PnnnvO7v1b26jVahEXF2ez7cCBA1Jb8/8e5Hf16lWcOHEC3bp1s1l/8OBB/PHHHxg6dKhdaAKA2bNno27duvjkk0+QkZFRrM8vLCzMZr/Chv3+9NNPUCgU2L17t836H3/8Ea1atYKTkxN8fX3x0ksv4fbt23bPP3fuHJ5//nn4+fnByckJ4eHheO+99+z2CwsLK7Cd+V+3OOda3vO/YcOGaNWqFY4fP17g+a9QKDBmzBi79jz11FN2n9Gnn36K9u3bw8fHB05OTmjVqlWBfy/T0tIwfvx41KpVCxqNxub93Lt3z27//A4dOoRevXrBy8sLLi4uaNq0KT7//HObfc6dO4dnn30W3t7e0Ov1aN26NX777Tdpe1G/NwqFAitWrABQsiHf3bt3x/Xr1xEVFVWs/YmqArXcDSCikvv4449hsViwbt06tGrVym67r68vVq1ahTNnzuCrr77C9OnT4e/vj5deeglz5sxBQkICvL29pf03bdqElJQUvPTSS2Vu282bN/Hkk0+ifv36+OGHH6BWl8+fmaSkJMyePdtufXZ2Nvr27Yvr169j3LhxqFevHhQKBT788MNiHXfEiBFYuXIlnn32WYwfPx6HDh3C7NmzcfbsWfz666/l0vaCFNQb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jh3DoEGD0Lx5czzxxBPSfoIgIDMzE5mZmdJ1PU0mk7QuOzsbFotFCih169bFL7/8gqioKBw/fhwDBw60u17QwYMH8e677+Knn35Co0aNEBwcXKzPOz4+HtHR0Thx4gS+//571K9f32a72WxGZmYmoqOjsXr1atSrV8+ucEF4eDh69uyJESNGYO/evTh58iQGDx4MV1dXDBw4EAAwfvx47Ny5E7NmzcKFCxewcuVKfPnll3Y9XPv27cOcOXNw4cIFLFq0CD/++CPGjh1rs491KOIzzzyDXr16SQXaivtZVTUMTjJyy+lxMjI4ERERUQWrW7cu/vnnH9SqVQvPP/88ateujVdffRVdunTBgQMHbObvfPrpp+jfvz+GDBmC5s2b4/jx4/jjjz8QFBRkc8xXXnkFJpNJmq9eXEqlEuvWrcPRo0fRuHFjvPXWW3bFDPL7+eefERISgq5du+Lxxx+Hr68vNmzYYDNk7cSJE3BycoKTk5NU2CAiIkJat3r1amzatAkjR44EIBZW8PLyQvv27dGnTx9ERESgZcuW0vHi4uLw3HPPYd68eTbri6Nbt24ICgrC448/Dm9vb7uequeffx5OTk6oV68e7t69i/Xr1xd4nFWrVqFFixbo06cP2rZti7S0NPzxxx9SAY6WLVvihx9+wLp169C4cWNMmzYN77//vk1FPUAMWP/88w9atGiBDz74APPmzUNEROFz87788kscP34cX3/9dbE+q6pItgvgyiUlJQUeHh7FusjVg7blxF2MXnsMddwF/D4hgiVdqUTMZjO2bt2KXr168dyhEuP5Q2XB88dWZmYmrl69ipo1a9pdI+Zhs3fvXnTt2hU3b96U5qznZ7FYkJKSAnd39xKVlH5QNmzYgA0bNthMD6nqwsLCMG7cuEILdTiq0p479/sdLUk2qFQXwK1qOMeJiIiIqgKj0Yi4uDjMmDEDzz33XKGhyRGpVCr+BwAVi/wx/yHmqhMn6GVmydwQIiIiojL4/vvvERoaiqSkJMyZM0fu5pRInz598M0338jdDKoE2OMkI1ed+L8b7HEiIiKiymzo0KF2c2jIcVX16ncPCnucZMShekRERERElQODk4ys5cizBAWMWVW7fCMRERERUWXG4CQja3ACAIORE52IiIiIiBwVg5OMVEoFnLVigYg0BiciIiIiIofF4CQza68TgxMRERER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fPgwTp06hWXLlhW6z+TJkxEZGSk9TklJQUhICHr06FHkh1MRzGYztm/fju7duyP+6F1suXkOXn5B6NWrmdxNIweX99zRaDRyN4cqGZ4/VBY8f6gseP5QaT2Ic8c6Gq04ZB+qVxbLli1DkyZN0KZNm0L30el00Ol0dus1Go1D/bJqNBp4OIvtNJgtDtU2cmyOdi5T5cLzh8qC5w+VBc8fKq3yPHdKchxZi0P4+vpCpVIhJibGZn1MTAwCAwPv+1yDwYB169bhlVdeeZBNrFDSBXAzOeaXiIiIiMiRyBqctFotWrVqhZ07d0rrLBYLdu7ciXbt2t33uT/++COMRiNeeumlB93MCuPGcuRERERERA5J9qF6kZGRGDJkCFq3bo02bdpgwYIFMBgMUpW9wYMHIzg4GLNnz7Z53rJly9C/f3/4+PjI0ewHwtrjZDBmy9wSIiIiIiLKS/bgNGDAAMTFxWHatGmIjo5G8+bNsW3bNqlgxI0bN6BU2naMnT9/Hn///Tf+/PNPOZr8wLjorNdx4lA9IiIiIiJHIntwAoAxY8ZgzJgxBW7bvXu33brw8HDIWEX9gck7VE8QBCgUCplbREREREREgMxznMiWdaieRQAyzByuR0RERETkKBicHIiTRgVlTidTWiYLRBAREREROQoGJweiUCjgap3nxMp6REREREQOg8HJwbjpxYtwsceJiIiIiMhxMDg5GFdey4mIiIiIyOEwODkYa4GIVPY4ERERERE5DAYnB8MeJyIiIiIix8Pg5GCsPU5pvAguEREREZHDYHByMK5aMTgZTLyOExERERGRo2BwcjCc40RERERE5HgYnBxM7hwnDtUjIiIiInIUDE4Oxk2a48QeJyIiIiIiR8Hg5GBYVY+IiIiIyPEwODkYznEiIiIiInI8DE4Ohj1ORERERESOh8HJwUhznBiciIiIiIgcBoOTg3HVaQCwOAQRERERkSNhcHIw0hwn9jgRERERETkMBicHY53jZMqywJRlkbk1REREREQEMDg5HBetSrpvYK8TEREREZFDYHByMGqVEk4aMTyxQAQRERERkWNgcHJAvJYTEREREZFjYXByQG68lhMRERERkUNhcHJArtK1nMwyt4SIiIiIiAAGJ4dkrazHoXpERERERI6BwckBuXKoHhERERGRQ2FwckDSUD32OBEREREROQQGJwfE4hBERERERI6FwckBsRw5EREREZFjYXByQK46DQD2OBEREREROQoGJwfkqlMBAAwMTkREREREDoHByQHlXseJwYmIiIiIyBEwODkg61A9znEiIiIiInIMDE4OiNdxIiIiIiJyLAxODsiN13EiIiIiInIoDE4OiD1ORERERESOhcHJAeUtDmGxCDK3hoiIiIiIGJwckLXHCQAMJvY6ERERERHJjcHJAenUSmhUCgAcrkdERERE5AgYnByQQqHInefEAhFERERERLJjcHJQLjnBKZU9TkREREREsmNwclDWHicDgxMRERERkewYnBwUr+VEREREROQ4GJwclCuH6hEREREROQwGJwflqtcAYI8TEREREZEjYHByUFJVPfY4ERERERHJjsHJQUlznBiciIiIiIhkx+DkoKQ5ThyqR0REREQkOwYnB8WhekREREREjoPByUG5SuXIzTK3hIiIiIiIGJwclBt7nIiIiIiIHAaDk4Ny4RwnIiIiIiKHweDkoKxD9QwmBiciIiIiIrkxODkoaagee5yIiIiIiGTH4OSgXPNcx0kQBJlbQ0RERET0cGNwclDWcuTmbAHGLIvMrSEiIiIiergxODkoF61aus/KekRERERE8mJwclBKpSL3Iric50REREREJCsGJwfmyms5ERERERE5BAYnB2YtEMFrORERERERyYvByYGxx4mIiIiIyDEwODkwN6kkuVnmlhARERERPdwYnByYtbIei0MQEREREcmLwcmBSXOcOFSPiIiIiEhWDE4OzDrHycDgREREREQkKwYnBybNceJQPSIiIiIiWTE4OTBrjxOH6hERERERyYvByYG5sseJiIiIiMghMDg5MF7HiYiIiIjIMcgenBYtWoSwsDDo9Xq0bdsWhw8fvu/+SUlJGD16NIKCgqDT6VCvXj1s3bq1glpbsXKv48TgREREREQkJ7WcL75+/XpERkZi6dKlaNu2LRYsWICIiAicP38e/v7+dvubTCZ0794d/v7++OmnnxAcHIzr16/D09Oz4htfAVx1GgAcqkdEREREJDdZg9O8efMwcuRIDBs2DACwdOlSbNmyBcuXL8ekSZPs9l++fDkSEhKwf/9+aDRiqAgLC6vIJlcoFocgIiIiInIMsgUnk8mEo0ePYvLkydI6pVKJbt264cCBAwU+57fffkO7du0wevRobNy4EX5+fhg4cCAm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jhODExERERFRhStWcFKr1UhLS0NqaioAYOzYsWjdujVu3LiBXbt2YdeuXbh+/Tpatmxpc2FcKj/SHCcO1SMiIiIiqnDFHqrn6+uL9PR0AMD+/ftx+PBhuLq6Stvd3Nzw/vvvo127duXfSuJ1nIiIiIiIZFTs6zi1aNECv//+OwDA09MTSUlJdvskJydDq9WWW+MoF6vqERERERHJp9jBafTo0fjggw/w119/oX///njttddw6NAhCIIAQRBw8OBBvP766+jdu/eDbO9Dy1UnXiOL13EiIiIiIqp4xR6q17lzZyxevBjPPvssnJyccPfuXbRv3x5qtXiIrKwsPPnkk/j8888fWGMfZq4cqkdEREREJJsSlSMfNGgQ+vfvj7179yIuLg4WiwUA4OXlhfr166NevXoPpJGUJzixx4mIiIiIqMKV+DpOLi4uePLJJx9EW+g+OMeJiIiIiEg+pboA7sKFC++7/T//+U+pGkOFyztUz2IRoFQqZG4REREREdHDo1TBady4cXB2doa/vz8EQbDZplAoGJweADd97o/KYMqCm14jY2uIiIiIiB4uxa6ql9d7770HpVKJbt264eDBg7h69aq0XLlypbzbSAB0aiXUOb1MBmO2zK0hIiIiInq4lCo4zZo1C2fPnoXJZEJ4eDg+/PBDGI3G8m4b5aFQKPLMczLL3BoiIiIioodLqYITAAQHB2PFihX466+/sHPnTtSpUwerVq0qz7ZVfTePQPn3Z/BJO1es3a3znHgtJyIiIiKiilWqOU4nTpzIPYBajQULFmDjxo0YM2YMPv/8cxw9erTcGlilnVgH1ZH/ItAvoli781pORERERETyKFVwat68ORQKhVQYIu/9qKiocmtclVetJQDAK/1qsXa3FojgtZyIiIiIiCpWqYLT1avF+6JPRQgWg5NHxjUIlmwA96+UJw3VY48TEREREVGFKlVwCg0NLe92PJx860HQuEBtNsB87wIQ3PS+u7vo2ONERERERCSHUgWn33777b7b+/btW6rGPHSUKghBTaG4cQCKu/8WGZykoXrscSIiIiIiqlClCk79+/cvdJtSqURWFr/YF5cQ1AK4cQCKO/8CGHLffVkcgoiIiIhIHqUKThaLpcD1mZmZcHZ2LlODHjZCtRYAIPY4FcFVJ86BYjlyIiIiIqKKVerrOBVEoVBAoVCU5yGrPCEo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nUH9oDOoH3QG9YNjdTxqJ5MJMhmhIyddcGpqapIkDRw40OeeAAAAAMgHTU1NKi0t7fAeyxxJvPoXSaVS2rVrl0pKSmRZlt/d0f79+zVw4ED98ssv6tmzp9/dQTdC7aAzqB90BvWDzqB+cKyOR+0YY9TU1KSKigoFAh0/xXTSjTgFAgENGDDA724cpmfPnnx54JhQO+gM6gedQf2gM6gfHKuurh2vkaYMFocAAAAAAA8EJwAAAADwQHDyWTQaVW1traLRqN9dQTdD7aAzqB90BvWDzqB+cKz8rp2TbnEIAAAAADhajDgBAAAAgAeCEwAAAAB4IDgBAAAAgAeCEwAAAAB4IDj56Nlnn9Xpp5+ugoICVVVV6YsvvvC7S8hD69ev17Rp01RRUSHLsrRy5cqc68YYPfjggyovL1dhYaEmT56sHTt2+NNZ5JUFCxbovPPOU0lJiU499VRdccUVamhoyLmntbVVNTU16tu3r3r06KGrr75av//+u089Rj557rnnVFlZ6f7QZHV1td577z33OrWDo/HYY4/JsizNmTPHbaOG8E8eeughWZaVs5155pnudb9qh+Dkk9dff11z585VbW2ttmzZojFjxmjKlCnas2eP311DnmlubtaYMWP07LPPtnt94cKFWrx4sZ5//nlt3LhRxcXFmjJlilpbW09wT5Fv6urqVFNTo88//1xr1qxRIpHQJZdcoubmZveeu+++W++8847efPNN1dXVadeuXbrqqqt87DXyxYABA/TYY49p8+bN2rRpky6++GJNnz5d33zzjSRqB0fuyy+/1AsvvKDKysqcdmoIHRk1apR2797tbp9++ql7zbfaMfDF+PHjTU1NjXtu27apqKgwCxYs8LFXyHeSzIoVK9zzVCplysrKzBNPPOG27d2710SjUfPqq6/60EPksz179hhJpq6uzhjj1Eo4HDZvvvmme8/27duNJLNhwwa/uok81rt3b/Piiy9SOzhiTU1NZtiwYWbNmjXmoosuMrNnzzbG8P2DjtXW1poxY8a0e83P2mHEyQfxeFybN2/W5MmT3bZAIKDJkydrw4YNPvYM3c2PP/6o3377LaeWSktLVVVVRS3hMPv27ZMk9enTR5K0efNmJRKJnPo588wzNWjQIOoHOWzb1muvvabm5mZVV1dTOzhiNTU1uuyyy3JqReL7B9527NihiooKnXHGGbr++uu1c+dOSf7WTui4vjva9ccff8i2bfXv3z+nvX///vr222996hW6o99++02S2q2lzDVAklKplObMmaOJEydq9OjRkpz6iUQi6tWrV8691A8ytm7dqurqarW2tqpHjx5asWKFRo4cqfr6emoHnl577TVt2bJFX3755WHX+P5BR6qqqrR06VKNGDFCu3fv1sMPP6wLL7xQ27Zt87V2CE4AcBKoqanRtm3bcuaIA15GjBih+vp67du3T2+99ZZmzpypuro6v7uFbuCXX37R7NmztWbNGhUUFPjdHXQzU6dOdY8rKytVVVWlwYMH64033lBhYaFv/WKqng9OOeUUBYPBw1b/+P3331VWVuZTr9AdZeqFWkJHZs2apXfffVfr1q3TgAED3PaysjLF43Ht3bs3537qBxmRSERDhw7V2LFjtWDBAo0ZM0ZPPfUUtQNPmzdv1p49e3TuuecqFAopFAqprq5OixcvVigUUv/+/akhHLFevXpp+PDhamxs9PX7h+Dkg0gkorFjx2rt2rVuWyqV0tq1a1VdXe1jz9DdDBkyRGVlZTm1tH//fm3cuJFagowxmjVrllasWKGPP/5YQ4YMybk+duxYhcPhnPppaGjQzp07qR+0K5VKKRaLUTvwNGnSJG3dulX19fXuNm7cOF1//fXuMTWEI3XgwAF9//33Ki8v9/X7h6l6Ppk7d65mzpypcePGafz48Vq0aJGam5t1yy23+N015JkDBw6osbHRPf/xxx9VX1+vPn36aNCgQZozZ44effRRDRs2TEOGDNH8+fNVUVGhK664wr9OIy/U1NTolVde0dtvv62SkhJ37ndpaakKCwtVWlqq2267TXPnzlWfPn3Us2dP3XXXXaqurtaECRN87j38dv/992vq1KkaNGiQmpqa9Morr+iTTz7RBx98QO3AU0lJifs8ZUZxcbH69u3rtlND+Cfz5s3TtGnTNHjwYO3atUu1tbUKBoO69tpr/f3+Oa5r9qFDTz/9tBk0aJCJRCJm/Pjx5vPPP/e7S8hD69atM5IO22bOnGmMcZYknz9/vunfv7+JRqNm0qRJpqGhwd9OIy+0VzeSzJIlS9x7Dh48aO68807Tu3dvU1RUZK688kqze/du/zqNvHHrrbeawYMHm0gkYvr162cmTZpkPvzwQ/c6tYOjlb0cuTHUEP7ZjBkzTHl5uYlEIua0004zM2bMMI2Nje51v2rHMsaY4xvNAAAAAKB74xknAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIA5L1EIqGlS5fqggsuUL9+/VRYWKjKyko9/vjjisfjfncPAHASsIwxxu9OAADQkfr6et1zzz268847dc4556i1tVVbt27VQw89pPLycn3wwQcKh8N+dxMA8C/GiBMAIO+NHj1aa9eu1dVXX60zzjhDI0eO1IwZM7R+/Xpt27ZNixYtkiRZltXuNmfOHPe9/v77b910003q3bu3ioqKNHXqVO3YscO9fuutt6qyslKxWEySFI/Hdc455+imm26SJP3000+yLEv19fXua+bPny/Lstx+AAD+fQhOAIC8FwqF2m3v16+frrrqKi1fvtxtW7JkiXbv3u1u1dXVOa+5+eabtWnTJq1atUobNmyQMUaXXnqpEomEJGnx4sVqbm7WfffdJ0l64IEHtHfvXj3zzDPt9uHXX3/VokWLVFhY2BUfFQCQp9r/LxEAAHlo1KhR+vnnn3PaEomEgsGge96rVy+VlZW555FIxD3esWOHVq1apc8++0znn3++JGn58uUaOHCgVq5cqWuuuUY9evTQsmXLdNFFF6mkpESLFi3SunXr1LNnz3b79MADD2jGjBn66KOPuvKjAgDyDMEJANBtrF692h0Zyli4cKGWLVt2RK/fvn27QqGQqqqq3La+fftqxIgR2r59u9tWXV2tefPm6ZFHHtG9996rCy64oN3327Jli1asWKGGhgaCEwD8yxGcAADdxuDBgw9r+/777zV8+PAu/TupVEqfffaZgsGgGhsb//G+e+65R/PmzVN5eXmX/n0AQP7hGScAQN7766+/1NTUdFj7pk2btG7dOl133XVH9D5nnXWWksmkNm7c6Lb9+eefamho0MiRI922J554Qt9++63q6ur0/vvva8mSJYe916pVq/Tdd99p3rx5x/CJAADdDcEJAJD3du7cqbPPPlsvvfSSGhsb9cMPP+jll1/W9OnTdeGFF+asmteRYcOGafr06br99tv16aef6uuvv9YNN9yg0047TdOnT5ckffXVV3rwwQf14osvauLEiXryySc1e/Zs/fDDDznvtXDhQj366KMqKirq6o8LAMhDBCcAQN4bPXq0amtrtXTpUk2YMEGjRo3SwoULNWvWLH344Yc5C0B4WbJkicaOHavLL79c1dXVMsZo9erVCofDam1t1Q033KCbb75Z06ZNkyTdcccd+s9//qMbb7xRtm277zN06FDNnDmzyz8rACA/8QO4AAAAAOCBEScAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8PD/tokPZuIkV/oAAAAASUVORK5CYII=\n"},"metadata":{}}],"source":["# График функции ошибки по эпохам\n","plt.figure(figsize=(10, 6))\n","plt.plot(history_0.history['loss'], label='Обучающая выборка')\n","plt.plot(history_0.history['val_loss'], label='Валидационная выборка')\n","plt.title('Функция ошибки по эпохам (Однослойная сеть)')\n","plt.xlabel('Эпохи')\n","plt.ylabel('Ошибка')\n","plt.legend()\n","plt.grid(True)\n","plt.show()"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":1058,"status":"ok","timestamp":1759127544719,"user":{"displayName":"Legal People","userId":"00818738730090246603"},"user_tz":-180},"id":"NF_SsO8wiEUT","outputId":"ffe554c2-1c94-42b7-cc63-8f407418c4ce"},"outputs":[{"output_type":"stream","name":"stdout","text":["Результаты однослойной сети:\n","Ошибка на тестовых данных: 0.28625616431236267\n","Точность на тестовых данных: 0.92330002784729\n"]}],"source":["# Оценка на тестовых данных\n","scores_0 = model_0.evaluate(X_test, y_test, verbose=0)\n","print(\"Результаты однослойной сети:\")\n","print(f\"Ошибка на тестовых данных: {scores_0[0]}\")\n","print(f\"Точность на тестовых данных: {scores_0[1]}\")"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"fFcoQGdPnDFx"},"outputs":[],"source":["# Функция для создания и обучения модели\n","def create_and_train_model(hidden_units, model_name):\n"," model = Sequential()\n"," model.add(Dense(units=hidden_units, input_dim=num_pixels, activation='sigmoid'))\n"," model.add(Dense(units=num_classes, activation='softmax'))\n","\n"," model.compile(loss='categorical_crossentropy',\n"," optimizer='sgd',\n"," metrics=['accuracy'])\n","\n"," history = model.fit(X_train, y_train,\n"," validation_split=0.1,\n"," epochs=50)\n","\n"," scores = model.evaluate(X_test, y_test, verbose=0)\n","\n"," return model, history, scores"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"XPlFkV40joAT"},"outputs":[],"source":["# Эксперименты с разным количеством нейронов\n","hidden_units_list = [100, 300, 500]\n","models_1 = {}\n","histories_1 = {}\n","scores_1 = {}"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"je0i_8HxjvpB","executionInfo":{"status":"ok","timestamp":1759128186868,"user_tz":-180,"elapsed":638747,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"5cb19edc-9162-4c23-92d8-1671e62b2bb3"},"outputs":[{"output_type":"stream","name":"stdout","text":["\n","Обучение модели с 100 нейронами...\n","Epoch 1/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.5548 - loss: 1.8518 - val_accuracy: 0.8210 - val_loss: 0.9619\n","Epoch 2/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8339 - loss: 0.8359 - val_accuracy: 0.8597 - val_loss: 0.6320\n","Epoch 3/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8640 - loss: 0.5853 - val_accuracy: 0.8770 - val_loss: 0.5137\n","Epoch 4/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8797 - loss: 0.4859 - val_accuracy: 0.8847 - val_loss: 0.4522\n","Epoch 5/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8879 - loss: 0.4295 - val_accuracy: 0.8892 - val_loss: 0.4153\n","Epoch 6/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8947 - loss: 0.3969 - val_accuracy: 0.8947 - val_loss: 0.3899\n","Epoch 7/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8974 - loss: 0.3775 - val_accuracy: 0.8967 - val_loss: 0.3729\n","Epoch 8/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9000 - loss: 0.3589 - val_accuracy: 0.8993 - val_loss: 0.3565\n","Epoch 9/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9052 - loss: 0.3424 - val_accuracy: 0.9033 - val_loss: 0.3450\n","Epoch 10/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9056 - loss: 0.3339 - val_accuracy: 0.9042 - val_loss: 0.3352\n","Epoch 11/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9065 - loss: 0.3293 - val_accuracy: 0.9073 - val_loss: 0.3271\n","Epoch 12/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9094 - loss: 0.3213 - val_accuracy: 0.9093 - val_loss: 0.3197\n","Epoch 13/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9097 - loss: 0.3159 - val_accuracy: 0.9088 - val_loss: 0.3139\n","Epoch 14/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9162 - loss: 0.2962 - val_accuracy: 0.9100 - val_loss: 0.3073\n","Epoch 15/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9162 - loss: 0.3001 - val_accuracy: 0.9127 - val_loss: 0.3019\n","Epoch 16/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9178 - loss: 0.2928 - val_accuracy: 0.9137 - val_loss: 0.2972\n","Epoch 17/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9196 - loss: 0.2789 - val_accuracy: 0.9158 - val_loss: 0.2921\n","Epoch 18/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9194 - loss: 0.2849 - val_accuracy: 0.9163 - val_loss: 0.2875\n","Epoch 19/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9206 - loss: 0.2744 - val_accuracy: 0.9178 - val_loss: 0.2832\n","Epoch 20/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9219 - loss: 0.2756 - val_accuracy: 0.9187 - val_loss: 0.2795\n","Epoch 21/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9240 - loss: 0.2678 - val_accuracy: 0.9195 - val_loss: 0.2759\n","Epoch 22/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9236 - loss: 0.2689 - val_accuracy: 0.9202 - val_loss: 0.2722\n","Epoch 23/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9241 - loss: 0.2631 - val_accuracy: 0.9217 - val_loss: 0.2686\n","Epoch 24/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9265 - loss: 0.2556 - val_accuracy: 0.9218 - val_loss: 0.2649\n","Epoch 25/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9243 - loss: 0.2639 - val_accuracy: 0.9230 - val_loss: 0.2618\n","Epoch 26/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9259 - loss: 0.2545 - val_accuracy: 0.9247 - val_loss: 0.2586\n","Epoch 27/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9291 - loss: 0.2475 - val_accuracy: 0.9255 - val_loss: 0.2557\n","Epoch 28/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9289 - loss: 0.2465 - val_accuracy: 0.9275 - val_loss: 0.2531\n","Epoch 29/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9310 - loss: 0.2416 - val_accuracy: 0.9280 - val_loss: 0.2496\n","Epoch 30/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9314 - loss: 0.2364 - val_accuracy: 0.9292 - val_loss: 0.2473\n","Epoch 31/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9331 - loss: 0.2351 - val_accuracy: 0.9295 - val_loss: 0.2439\n","Epoch 32/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9328 - loss: 0.2307 - val_accuracy: 0.9303 - val_loss: 0.2415\n","Epoch 33/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9346 - loss: 0.2246 - val_accuracy: 0.9308 - val_loss: 0.2391\n","Epoch 34/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9341 - loss: 0.2286 - val_accuracy: 0.9317 - val_loss: 0.2362\n","Epoch 35/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9355 - loss: 0.2295 - val_accuracy: 0.9325 - val_loss: 0.2334\n","Epoch 36/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9384 - loss: 0.2155 - val_accuracy: 0.9330 - val_loss: 0.2312\n","Epoch 37/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9366 - loss: 0.2197 - val_accuracy: 0.9340 - val_loss: 0.2288\n","Epoch 38/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9385 - loss: 0.2142 - val_accuracy: 0.9342 - val_loss: 0.2265\n","Epoch 39/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9396 - loss: 0.2104 - val_accuracy: 0.9348 - val_loss: 0.2244\n","Epoch 40/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9399 - loss: 0.2110 - val_accuracy: 0.9362 - val_loss: 0.2231\n","Epoch 41/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9391 - loss: 0.2092 - val_accuracy: 0.9367 - val_loss: 0.2201\n","Epoch 42/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9401 - loss: 0.2075 - val_accuracy: 0.9370 - val_loss: 0.2178\n","Epoch 43/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9404 - loss: 0.2018 - val_accuracy: 0.9387 - val_loss: 0.2164\n","Epoch 44/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9411 - loss: 0.2044 - val_accuracy: 0.9383 - val_loss: 0.2141\n","Epoch 45/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9434 - loss: 0.1981 - val_accuracy: 0.9393 - val_loss: 0.2119\n","Epoch 46/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9445 - loss: 0.1931 - val_accuracy: 0.9392 - val_loss: 0.2094\n","Epoch 47/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9442 - loss: 0.1913 - val_accuracy: 0.9400 - val_loss: 0.2075\n","Epoch 48/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9428 - loss: 0.1961 - val_accuracy: 0.9412 - val_loss: 0.2056\n","Epoch 49/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9447 - loss: 0.1919 - val_accuracy: 0.9407 - val_loss: 0.2033\n","Epoch 50/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9439 - loss: 0.1936 - val_accuracy: 0.9425 - val_loss: 0.2020\n","Точность: 0.9422000050544739\n","\n","Обучение модели с 300 нейронами...\n","Epoch 1/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.5667 - loss: 1.8010 - val_accuracy: 0.8303 - val_loss: 0.8696\n","Epoch 2/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8399 - loss: 0.7595 - val_accuracy: 0.8657 - val_loss: 0.5806\n","Epoch 3/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8705 - loss: 0.5350 - val_accuracy: 0.8803 - val_loss: 0.4834\n","Epoch 4/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8785 - loss: 0.4604 - val_accuracy: 0.8867 - val_loss: 0.4317\n","Epoch 5/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8887 - loss: 0.4130 - val_accuracy: 0.8895 - val_loss: 0.4013\n","Epoch 6/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.8937 - loss: 0.3841 - val_accuracy: 0.8950 - val_loss: 0.3820\n","Epoch 7/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8983 - loss: 0.3652 - val_accuracy: 0.8960 - val_loss: 0.3662\n","Epoch 8/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9026 - loss: 0.3493 - val_accuracy: 0.8990 - val_loss: 0.3557\n","Epoch 9/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9035 - loss: 0.3417 - val_accuracy: 0.9008 - val_loss: 0.3452\n","Epoch 10/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9043 - loss: 0.3351 - val_accuracy: 0.9023 - val_loss: 0.3373\n","Epoch 11/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9060 - loss: 0.3240 - val_accuracy: 0.9030 - val_loss: 0.3303\n","Epoch 12/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9070 - loss: 0.3170 - val_accuracy: 0.9052 - val_loss: 0.3255\n","Epoch 13/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9087 - loss: 0.3202 - val_accuracy: 0.9062 - val_loss: 0.3209\n","Epoch 14/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9129 - loss: 0.3063 - val_accuracy: 0.9067 - val_loss: 0.3161\n","Epoch 15/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9135 - loss: 0.3046 - val_accuracy: 0.9092 - val_loss: 0.3119\n","Epoch 16/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9130 - loss: 0.2993 - val_accuracy: 0.9108 - val_loss: 0.3064\n","Epoch 17/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9149 - loss: 0.2964 - val_accuracy: 0.9113 - val_loss: 0.3043\n","Epoch 18/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9152 - loss: 0.2935 - val_accuracy: 0.9128 - val_loss: 0.3011\n","Epoch 19/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9170 - loss: 0.2863 - val_accuracy: 0.9123 - val_loss: 0.2989\n","Epoch 20/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9190 - loss: 0.2821 - val_accuracy: 0.9138 - val_loss: 0.2945\n","Epoch 21/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9203 - loss: 0.2799 - val_accuracy: 0.9140 - val_loss: 0.2926\n","Epoch 22/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9187 - loss: 0.2851 - val_accuracy: 0.9145 - val_loss: 0.2894\n","Epoch 23/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9181 - loss: 0.2789 - val_accuracy: 0.9155 - val_loss: 0.2871\n","Epoch 24/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 4ms/step - accuracy: 0.9215 - loss: 0.2705 - val_accuracy: 0.9158 - val_loss: 0.2848\n","Epoch 25/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m8s\u001b[0m 5ms/step - accuracy: 0.9217 - loss: 0.2715 - val_accuracy: 0.9172 - val_loss: 0.2829\n","Epoch 26/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 4ms/step - accuracy: 0.9225 - loss: 0.2666 - val_accuracy: 0.9177 - val_loss: 0.2804\n","Epoch 27/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9248 - loss: 0.2643 - val_accuracy: 0.9187 - val_loss: 0.2783\n","Epoch 28/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9235 - loss: 0.2603 - val_accuracy: 0.9197 - val_loss: 0.2768\n","Epoch 29/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9240 - loss: 0.2628 - val_accuracy: 0.9210 - val_loss: 0.2741\n","Epoch 30/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9246 - loss: 0.2618 - val_accuracy: 0.9207 - val_loss: 0.2720\n","Epoch 31/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9270 - loss: 0.2541 - val_accuracy: 0.9202 - val_loss: 0.2686\n","Epoch 32/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9261 - loss: 0.2552 - val_accuracy: 0.9227 - val_loss: 0.2675\n","Epoch 33/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9270 - loss: 0.2577 - val_accuracy: 0.9243 - val_loss: 0.2639\n","Epoch 34/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9277 - loss: 0.2478 - val_accuracy: 0.9252 - val_loss: 0.2622\n","Epoch 35/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9288 - loss: 0.2471 - val_accuracy: 0.9263 - val_loss: 0.2611\n","Epoch 36/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 4ms/step - accuracy: 0.9299 - loss: 0.2398 - val_accuracy: 0.9248 - val_loss: 0.2588\n","Epoch 37/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 2ms/step - accuracy: 0.9288 - loss: 0.2457 - val_accuracy: 0.9262 - val_loss: 0.2562\n","Epoch 38/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9315 - loss: 0.2363 - val_accuracy: 0.9262 - val_loss: 0.2534\n","Epoch 39/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9296 - loss: 0.2424 - val_accuracy: 0.9283 - val_loss: 0.2512\n","Epoch 40/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9305 - loss: 0.2383 - val_accuracy: 0.9280 - val_loss: 0.2501\n","Epoch 41/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9331 - loss: 0.2313 - val_accuracy: 0.9285 - val_loss: 0.2469\n","Epoch 42/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9334 - loss: 0.2310 - val_accuracy: 0.9285 - val_loss: 0.2450\n","Epoch 43/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9350 - loss: 0.2267 - val_accuracy: 0.9290 - val_loss: 0.2436\n","Epoch 44/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9354 - loss: 0.2228 - val_accuracy: 0.9300 - val_loss: 0.2410\n","Epoch 45/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9350 - loss: 0.2224 - val_accuracy: 0.9300 - val_loss: 0.2386\n","Epoch 46/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9363 - loss: 0.2207 - val_accuracy: 0.9303 - val_loss: 0.2374\n","Epoch 47/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9367 - loss: 0.2204 - val_accuracy: 0.9317 - val_loss: 0.2343\n","Epoch 48/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9352 - loss: 0.2196 - val_accuracy: 0.9322 - val_loss: 0.2318\n","Epoch 49/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9387 - loss: 0.2133 - val_accuracy: 0.9347 - val_loss: 0.2312\n","Epoch 50/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9369 - loss: 0.2181 - val_accuracy: 0.9345 - val_loss: 0.2288\n","Точность: 0.9376999735832214\n","\n","Обучение модели с 500 нейронами...\n","Epoch 1/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 3ms/step - accuracy: 0.5450 - loss: 1.7741 - val_accuracy: 0.8278 - val_loss: 0.8334\n","Epoch 2/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8439 - loss: 0.7246 - val_accuracy: 0.8673 - val_loss: 0.5635\n","Epoch 3/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8689 - loss: 0.5286 - val_accuracy: 0.8787 - val_loss: 0.4724\n","Epoch 4/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.8843 - loss: 0.4409 - val_accuracy: 0.8863 - val_loss: 0.4282\n","Epoch 5/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8919 - loss: 0.4027 - val_accuracy: 0.8898 - val_loss: 0.3971\n","Epoch 6/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8951 - loss: 0.3794 - val_accuracy: 0.8938 - val_loss: 0.3770\n","Epoch 7/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8977 - loss: 0.3647 - val_accuracy: 0.8973 - val_loss: 0.3638\n","Epoch 8/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9008 - loss: 0.3517 - val_accuracy: 0.9008 - val_loss: 0.3532\n","Epoch 9/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9045 - loss: 0.3383 - val_accuracy: 0.9023 - val_loss: 0.3457\n","Epoch 10/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9078 - loss: 0.3278 - val_accuracy: 0.9032 - val_loss: 0.3371\n","Epoch 11/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9070 - loss: 0.3236 - val_accuracy: 0.9047 - val_loss: 0.3317\n","Epoch 12/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9074 - loss: 0.3238 - val_accuracy: 0.9050 - val_loss: 0.3270\n","Epoch 13/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9109 - loss: 0.3110 - val_accuracy: 0.9065 - val_loss: 0.3210\n","Epoch 14/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9109 - loss: 0.3092 - val_accuracy: 0.9068 - val_loss: 0.3176\n","Epoch 15/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9116 - loss: 0.3076 - val_accuracy: 0.9082 - val_loss: 0.3153\n","Epoch 16/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9118 - loss: 0.3079 - val_accuracy: 0.9095 - val_loss: 0.3138\n","Epoch 17/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9165 - loss: 0.2949 - val_accuracy: 0.9107 - val_loss: 0.3078\n","Epoch 18/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9141 - loss: 0.3022 - val_accuracy: 0.9103 - val_loss: 0.3072\n","Epoch 19/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9148 - loss: 0.2973 - val_accuracy: 0.9118 - val_loss: 0.3024\n","Epoch 20/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9168 - loss: 0.2933 - val_accuracy: 0.9123 - val_loss: 0.3004\n","Epoch 21/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9176 - loss: 0.2889 - val_accuracy: 0.9128 - val_loss: 0.2994\n","Epoch 22/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9177 - loss: 0.2870 - val_accuracy: 0.9122 - val_loss: 0.2968\n","Epoch 23/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9193 - loss: 0.2818 - val_accuracy: 0.9140 - val_loss: 0.2949\n","Epoch 24/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9178 - loss: 0.2903 - val_accuracy: 0.9147 - val_loss: 0.2939\n","Epoch 25/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9178 - loss: 0.2875 - val_accuracy: 0.9137 - val_loss: 0.2914\n","Epoch 26/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9208 - loss: 0.2832 - val_accuracy: 0.9150 - val_loss: 0.2889\n","Epoch 27/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9221 - loss: 0.2765 - val_accuracy: 0.9142 - val_loss: 0.2883\n","Epoch 28/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9220 - loss: 0.2752 - val_accuracy: 0.9167 - val_loss: 0.2868\n","Epoch 29/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9220 - loss: 0.2754 - val_accuracy: 0.9183 - val_loss: 0.2854\n","Epoch 30/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9239 - loss: 0.2700 - val_accuracy: 0.9173 - val_loss: 0.2820\n","Epoch 31/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9234 - loss: 0.2669 - val_accuracy: 0.9190 - val_loss: 0.2804\n","Epoch 32/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9228 - loss: 0.2678 - val_accuracy: 0.9193 - val_loss: 0.2797\n","Epoch 33/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9239 - loss: 0.2677 - val_accuracy: 0.9192 - val_loss: 0.2794\n","Epoch 34/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9240 - loss: 0.2631 - val_accuracy: 0.9208 - val_loss: 0.2765\n","Epoch 35/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9253 - loss: 0.2605 - val_accuracy: 0.9202 - val_loss: 0.2750\n","Epoch 36/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9254 - loss: 0.2570 - val_accuracy: 0.9205 - val_loss: 0.2734\n","Epoch 37/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9267 - loss: 0.2601 - val_accuracy: 0.9215 - val_loss: 0.2711\n","Epoch 38/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9279 - loss: 0.2569 - val_accuracy: 0.9212 - val_loss: 0.2715\n","Epoch 39/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9260 - loss: 0.2589 - val_accuracy: 0.9223 - val_loss: 0.2680\n","Epoch 40/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9284 - loss: 0.2550 - val_accuracy: 0.9218 - val_loss: 0.2671\n","Epoch 41/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9286 - loss: 0.2491 - val_accuracy: 0.9227 - val_loss: 0.2660\n","Epoch 42/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9316 - loss: 0.2432 - val_accuracy: 0.9237 - val_loss: 0.2625\n","Epoch 43/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9274 - loss: 0.2508 - val_accuracy: 0.9252 - val_loss: 0.2635\n","Epoch 44/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9290 - loss: 0.2472 - val_accuracy: 0.9255 - val_loss: 0.2595\n","Epoch 45/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9302 - loss: 0.2449 - val_accuracy: 0.9252 - val_loss: 0.2601\n","Epoch 46/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9322 - loss: 0.2399 - val_accuracy: 0.9270 - val_loss: 0.2568\n","Epoch 47/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9323 - loss: 0.2422 - val_accuracy: 0.9278 - val_loss: 0.2550\n","Epoch 48/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9321 - loss: 0.2399 - val_accuracy: 0.9282 - val_loss: 0.2527\n","Epoch 49/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9330 - loss: 0.2372 - val_accuracy: 0.9282 - val_loss: 0.2514\n","Epoch 50/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9347 - loss: 0.2327 - val_accuracy: 0.9277 - val_loss: 0.2495\n","Точность: 0.9312000274658203\n"]}],"source":["# Обучение сетей с одним скрытым слоем\n","for units in hidden_units_list:\n"," print(f\"\\nОбучение модели с {units} нейронами...\")\n"," model, history, scores = create_and_train_model(units, f\"model_{units}\")\n","\n"," models_1[units] = model\n"," histories_1[units] = history\n"," scores_1[units] = scores\n","\n"," print(f\"Точность: {scores[1]}\")"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"TbbBBxeMmy6c","executionInfo":{"status":"ok","timestamp":1759128269112,"user_tz":-180,"elapsed":20,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"08b5a164-1e62-456c-80b9-bc7247be3fd3"},"outputs":[{"output_type":"stream","name":"stdout","text":["\n","Наилучшее количество нейронов: 100\n","Точность: 0.9422000050544739\n"]}],"source":["# Выбор наилучшей модели\n","best_units_1 = max(scores_1.items(), key=lambda x: x[1][1])[0]\n","print(f\"\\nНаилучшее количество нейронов: {best_units_1}\")\n","print(f\"Точность: {scores_1[best_units_1][1]}\")"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":279},"id":"EFEBxB2qm1fF","executionInfo":{"status":"ok","timestamp":1759128272502,"user_tz":-180,"elapsed":620,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"d436ac7a-e33b-4cc2-e324-5decfc29de94"},"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAABdIAAAHqCAYAAAAAkLx0AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA6IxJREFUeJzs3Xl8VNX5x/HvTGYymSQECFsAQ0AWNxRwgYJWQFkEirWty69YBa1aqlaQagWVzY22oGIrikuFuqHVKtSKSopQVFAESV0QZQkEkCUBQvbJZOb+/pjMJUNCSGYmmZnk8369eCVz586dM4fAk/Pcc55jMQzDEAAAAAAAAAAAqJE10g0AAAAAAAAAACCakUgHAAAAAAAAAKAWJNIBAAAAAAAAAKgFiXQAAAAAAAAAAGpBIh0AAAAAAAAAgFqQSAcAAAAAAAAAoBYk0gEAAAAAAAAAqAWJdAAAAAAAAAAAakEiHQAAAAAAAACAWpBIBxA2RUVFmj9/vvk4Pz9fCxYsiFyDAABArYjdAADElj179mjx4sXm4507d+qVV16JXIOAZoREOtDAioqKNHPmTF122WVKTU2VxWIJCHrH+/bbb3XZZZcpOTlZqampuu6665Sbm1vtPK/Xqz//+c/q1q2bEhISdM4552jJkiUN+ElOzul06v7779crr7yi3bt3a9asWXrnnXci2iYAAOrrm2++0VVXXaVTTz1ViYmJatu2rS6++OITxjRiNwAAkbV69WpZLJYa/3z66afVzl+7dq0uuugiJSYmKi0tTXfccYeKioqqnedyuXTPPfeoU6dOcjqdGjBggDIzMxvjI52QxWLRbbfdpg8++EA7d+7UH/7wB3300UcRbRPQXNgi3QCgqcvLy9MDDzygLl26qE+fPlq9evUJz92zZ48uvvhitWzZUo888oiKioo0b948ffXVV1q/fr3i4+PNc++77z798Y9/1M0336wLLrhAy5Yt07hx42SxWPR///d/jfDJqouLi9Ps2bN1/fXXy+v1KiUlRe+++25E2gIAQLB27dqlwsJCjR8/Xp06dVJJSYn++c9/6vLLL9czzzyjW265xTyX2A0AQPS44447dMEFFwQc69GjR8DjrKwsXXrppTrjjDP02GOPac+ePZo3b562bt2q9957L+DcCRMm6M0339TkyZPVs2dPLV68WKNHj9aqVat00UUXNfjnqUnnzp11880367LLLpMkdezYsdY8A4DwsRiGYUS6EUBT5nK5dOTIEaWlpWnDhg264IILtGjRIk2YMKHaubfeeqsWL16sLVu2qEuXLpKk//znPxo+fHjAwH3v3r3q1q2bbrnlFj355JOSJMMwNHjwYGVnZ2vnzp2Ki4trtM94vD179mj37t0644wz1KpVq4i1AwCAcPF4PDrvvPNUVlamLVu2mMeJ3QAARN7q1as1dOhQvfHGG7ryyitrPXf06NHKysrSli1blJKSIkl6/vnndfPNN+uDDz7QiBEjJEnr16/XgAEDNHfuXN11112SpLKyMvXu3Vvt27fX2rVrG/ZDncT27duVl5en3r17KykpKaJtAZoLSrsADczhcCgtLa1O5/7zn//UT37yE3MgLknDhg1Tr1699I9//MM8tmzZMrndbt16663mMYvFot/+9rfas2eP1q1bV+v7TJgwQcnJydWOv/nmm7JYLNXuZn/22We67LLL1LJlSyUmJmrw4MH65JNPAs6ZNWuWLBaLJOmUU07RwIEDZbPZlJaWVu2aQ4YMUe/evbVx40YNGjRITqdT3bp108KFC6u16eDBg/r1r3+tDh06KCEhQX369NHf//73gHN27twpi8WiefPmVXt97969NWTIkKCv6f9jt9vVtWtX3X333SovL6/2PgCApi0uLk7p6enKz88POE7sJnYDAKJLYWGhKioqanyuoKBAmZmZ+tWvfmUm0SXp+uuvV3JyckDsfvPNNxUXFxewEi0hIUG//vWvtW7dOu3evbvWdvhj5/HmzZsni8WinTt3Bhx/77339OMf/1hJSUlq0aKFxowZo2+++SbgnAkTJqhr166SpO7du2vAgAE6fPiwnE5ntWt27dpVP/nJT7RixQr17dtXCQkJOvPMM/XWW29Va9OOHTt01VVXKTU1VYmJifrRj35UbYWav3zOm2++We31ycnJ1SYL1uea/j8Oh0O9evXSnDlzxLxfRCMS6UCU2Lt3rw4ePKjzzz+/2nP9+/fXpk2bzMebNm1SUlKSzjjjjGrn+Z8Plw8//FAXX3yxCgoKNHPmTD3yyCPKz8/XJZdcovXr19f62kcffVQHDhyo8bkjR45o9OjROu+88/TnP/9Zp5xyin7729/qhRdeMM8pLS3VkCFD9NJLL+naa6/V3Llz1bJlS02YMEFPPPFEUJ+nvte85ZZb9NJLL2nhwoXq37+/5s2bpwcffDCo9wYAxJbi4mLl5eVp+/btevzxx/Xee+/p0ksvNZ8ndhO7AQDR5YYbblBKSooSEhI0dOhQbdiwIeD5r776ShUVFdVid3x8vPr27Vstdvfq1Ssg4S4di91ZWVlha/dLL72kMWPGKDk5WX/60580ffp0bd68WRdddFG1hPvxZsyYobKyshqf27p1q6655hqNGjVKc+bMkc1m01VXXRVQ5/3AgQMaNGiQPvjgA9166616+OGHVVZWpssvv1xvv/12UJ+nvte899579dJLL+nJJ59Uly5ddO+99wb8fgFEDQNAo/n8888NScaiRYtO+NyLL75Y7bm7777bkGSUlZUZhmEYY8aMMU499dRq5xUXFxuSjKlTp9bajvHjxxtJSUnVjr/xxhuGJGPVqlWGYRiG1+s1evbsaYwcOdLwer3meSUlJUa3bt2M4cOHm8dmzpxpVP0v5eDBg0aLFi2MUaNGBVzTMAxj8ODBhiTj0UcfNY+5XC6jb9++Rvv27Y3y8nLDMAxj/vz5hiTj5ZdfNs8rLy83Bg4caCQnJxsFBQWGYRhGdna2IcmYO3dutc901llnGYMHDzYf1/eax/9dderUyRg9enS19wEAND2/+c1vDEmGJMNqtRpXXnmlcfjwYfN5YjexGwAQHT755BPjF7/4hfG3v/3NWLZsmTFnzhyjTZs2RkJCgvHFF1+Y5/nj5po1a6pd46qrrjLS0tLMx2eddZZxySWXVDvvm2++MSQZCxcurLVNgwcPNs4666xqx+fOnWtIMrKzsw3DMIzCwkKjVatWxs033xxw3v79+42WLVsGHB8/fryRkZFhPv76668Nq9Vqxm7/NQ3DMDIyMgxJxj//+U/z2NGjR42OHTsa/fr1M49NnjzZkGR89NFH5rHCwkKjW7duRteuXQ2Px2MYhmGsWrXKkGS88cYb1T5TUlKSMX78+KCvWfV3jrKyMsNqtRq33nprtfcBIo0Z6UCUKC0tleQrBXO8hISEgHNKS0vrdN7J5OXlBfwpLCwMeD4rK0tbt27VuHHjdOjQIfO84uJiXXrppVqzZo28Xm+N137wwQfVsmVL3XHHHTU+b7PZ9Jvf/MZ8HB8fr9/85jc6ePCgNm7cKElavny50tLS9Mtf/tI8z263mzuq//e//w24ZklJSbXP5PF4As6p7zWLioqUl5envXv36tlnn9X+/fsDZiMCAJquyZMnKzMzU3//+981atQoeTyegBIhxG5iNwAgOgwaNEhvvvmmbrzxRl1++eWaOnWqPv30U1ksFk2bNs0872Sxu2o8Dkfs9ng81eJcSUlJwDmZmZnKz8/XL3/5y4Dz4uLiNGDAAK1ateqE1582bZrOPfdcXXXVVTU+36lTJ/3sZz8zH6ekpOj666/Xpk2btH//fkm+ONu/f/+AzVOTk5N1yy23aOfOndq8eXPANQsLC6t9puPV95pHjx5VXl6ecnJy9Oc//1ler1eXXHLJCT83ECm2SDcAgI/T6ZTk25z0eP5lWv5znE5nnc6rTXFxsdq1a1frOVu3bpUkjR8//oTnHD16VK1btw44lp2drWeeeUZPP/20+UvG8Tp16lRtQ5RevXpJ8tU4/dGPfqRdu3apZ8+esloD7/n5l8Xv2rUr4PjMmTM1c+bMau/VoUMH8/v6XvN3v/udfve735mPb7jhBt155501fiYAQNNy+umn6/TTT5fkq506YsQIjR07Vp999pksFguxW8RuAED06tGjh37605/qrbfeksfjUVxc3Eljd9V4HI7YvWXLljrH7hMljo8vLeP38ccf65133tHKlSuVk5NT4zk9evQw90Pxqxq709LStGvXLg0YMKDaa6vG2aq13m+88cZaP4//NfW55hVXXGF+b7Vadf/99+sXv/jFSd8HaGwk0oEo0bFjR0nSvn37qj23b98+paammnfDO3bsqFWrVskwjICg6H9tp06dTvp+CQkJeueddwKOffTRR3rggQfMx/4Za3PnzlXfvn1rvE5NG5/dd9996tmzp8aPH6+PPvropG0Jl1tuuaXanfibb745pGvefffdGjFihDwej7755hs98MADMgxDixYtCum6AIDYc+WVV+o3v/mNvv/+e5122mnE7jAgdgMAGlJ6errKy8tVXFyslJSUk8buqvG4Y8eO2rt3b43nSXWL3V27dtVzzz0XcOyNN97Qs88+az72x+6XXnpJaWlp1a5hs9Wcurvnnns0cuRIXXLJJVq8ePFJ2xIuM2bM0I9//OOAY2PHjg3pmvPmzVOfPn3kdrv1+eef66GHHpLNZqvxZjsQSSTSgSjRuXNntWvXrtpmKJK0fv36gMFw37599fzzz+vbb7/VmWeeaR7/7LPPzOdPJi4uTsOG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PaTrNTdut1uZmZn0XZDov/opKyvT7t27lZycLIfDocLCQqWkpKhlCIPCxpCSkqJhw4Zp0aJFmjp1arXY/cYbb+i6665Tnz59ZLPZ9OWXX5qzy7xerzZs2KCrr77a/P/uyiuv1F133aVXX31VK1eu1OrVqwP+L/z973+vW2+91YzdU6dOlcfjUUpKig4dOqStW7fq2WefVd++fdWiRQt98sknknxLy1NSUpScnCxJOu2005Senq5Zs2Zpz549AbF779696tevn1JSUuRwOBQXF2e2wT9LLjEx0Txmt9tls9nMxxs2bNANN9ygcePGSfLF7t27dys+Pt4859xzz9WNN96oxx57TMuWLVNWVpauv/56tWjRIuT/+0NhGIYKCwvVokULMyFRVlYmp9Opiy++WAkJCQHnH38TAqFz2HzjbhLpQGxi3M24uykhkR4C/50td9O/4QIggp588kkNGjRII0eO1EMPPaRu3brpm2++0d13363OnTvr4YcfVnJysm6++WbdfffdatWqlbp166YnnnhCP/zwg2699VbzWnFxcZowYYKmTZumnj17auDAgdXez+l0qnv37pKkFi1amDtut27dWm3atNFzzz2nKVOm6PDhw7r33ntP2O5BgwZpwIABuv766/XUU0/JZrNp8uTJ6tu3ry655BLzPMMwVFZWJklmOY/y8nLzmH9pvNvtlt1uV8+ePfXWW29p7Nixslgsmj59erUl359++qnuvfderVq1SmeddZZyc3OD6HmEqrCwUBs2bNCmTZvMOnr+5fA2m00rVqwI+Fnwczgccjgc1Y7b7faQk4/JTt913d7wXK+5ou9CQ//VjcfjkcVikdVqNROY/sfRbsGCBRo0aJBGjRpVY+x+5JFHlJKSoptvvln33HOPUlNTA2L3bbfdZn5Oq9WqCRMm6N5771XPnj0DlpP7JSUlqWfPnpJ8ifz8/HxZrVa1adNGbdq00fPPP18tdlutVvOP//FFF12kAQMGaMKECdVi97Bhw2SxWGSxWGQYhjkjzV/KpKKiwjzm/7/e4/GYsfvtt9/W5ZdfHhC7q/59fvrpp7rvvvu0atUqnX322Tp06FBAOyPF/ztG1bb6fyZr+rfMv+3wY0Y6gMbAuJtxd11E/2+hUcxZpUZ6JOs1AmjaevbsqQ0bNujUU0/V1Vdfre7du+uWW27R0KFDtW7dOrMW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lpZW4+uP/0XhhRdeULt27bR582b17t27jp860KpVq7R27VrddNNNWrVqlXl83rx5uueee/R///d/kqQ//elPWrVqlebPn68FCxYE9V4ncuONN5rfn3rqqfrLX/6iCy64QEVFRUpOTtb333+vkpIS3XPPPerUqZMkyel0MhiPMuaMdOqsAmhAxG5iN8KH/U0ANAZiN7H7ZCKaSC8uLlafPn1044036uc//3mdX5efn6/rr79el156aa13bRqDv85qKYl0IPbYE313qCP13vUwdOhQPf3005KkI0eO6KmnntKoUaO0fv16ZWRk6PXXX9df/vIXbd++XUVFRaqoqFBKSkrANQoKCiRJSUknvyP/wAMPaOjQobroootqfP7IkSNq0aLFCV+/detWzZgxQ5999pny8vLk9foGPTk5OUEFdMMw9Pvf/14zZ87UoUOHzOMFBQX64YcfdOGFFwacf+GFF+p///tfwLFBgwYF3JUvKSmp9j6//OUvFRcXZz4uLS0NWM62ceNGzZo1S//73/905MiRgM915plnKj09XTabTUuWLNGdd94Z0iwANJxjNdIZjAMxh9h9QsRuH2J300RJVSCGEbtPiNjtE0uxO6KJ9FGjRmnUqFH1ft3EiRM1btw4xcXFVaur09ic1GoDYpfFEvQyr8aWlJSkHj16mI+ff/55tWzZUs8995zGjBmja6+9VrNnz9bIkSPVsmVLvfbaa3r00UcDrvHDDz/IarWe8G6239atW/X8888rKytLe/bsqfb8nj17VF5erm7dup3wGmPHjlVGRoaee+45derUSV6vV71791Z5eXk9P7nPiy++qOLiYk2cOFEPP/xwUNd4/fXXdcYZZ5iPhwwZUu2cxx9/XMOGDTMfX3vtteb3xcXFGjlypEaOHKlXXnlF7dq1U05OjkaOHGl+ro4dO+rpp5/WPffco2nTpik+Pl4ul0tjxowJqs1oGOasNhLpQOwhdteI2E3sburMGunMSAdiD7G7RsTu2IzdMVcjfdGiRdqxY4defvllPfTQQyc93+VyBUzt998Zcrvd1TYECIbN4vtaWu4Jy/WaE39/0W/Bof/qx+12yzAMeb1es2aZ/3G0MwyjWlsNw5DValVJSYk++eQTZWRkaNq0aebzO3fulKSA16xfv16nn3664uPj5fV6zef83/v75Q9/+IN+/etf69RTT1VOTk7AOZL03//+V06nU+edd17A9f3nHDp0SN99952eeeYZ/fjHP5YkffzxxwHnHP/ex3/eqseKi4t133336S9/+Yvi4uLMdnq9XiUnJ6tTp076+OOPzfeSfOW/LrjggoDrd+7cWaeeeqp5js1mq/Ze7du3DzjH6XSa52zevFmHDh3SI488ovT0dLNPj/8c1113nRYtWqS+fftq0qRJmjp1qjwezwl/9vzH3W53wF15iX/fDcWckU5pFwCNyGKxyGq1qrS0VGvXrlVGRobuu+8+8/ldu3ZVe83nn3+u008/vVqd0uPdc889uummm9SjR48aB+P+2H3++efX+Hp/7H7uueeqxe5glJSU6L777tOTTz4pu90e8FxKSoo6depklur0++STT9S/f/+Ac9PT0wMSGjZb9eFrWlpawDlOp9P8fsuWLTp06JD++Mc/mrF7w4YN1a4xfvx4LVq0SP369dPkyZN1zz33yOMhRkQTh81/E5y/FwCNh9jtQ+w+JqYS6Vu3btXUqVP10Ucf1fgXUZM5c+Zo9uzZ1Y6vWLFCiYn1W+JRky1HLJLidCDviFn0HvWTmZkZ6SbENPqvbmw2m9LS0lRUVGTexSwsLIxwq+rG7XaruLhYW7duleQrb/Xcc8+pqKhIl1xyiQoKCpSTk6NFixbp3HPP1YoVK/T222/LMAwVFBSovLxcb731lh5//HFNnTrVvKHoX2JVWFgoq9Uql8ulbdu2adeuXfriiy9UUFBQ7Zzs7GzNmTNHo0aNqhbs9+/fr7y8PNlsNqWmpuqpp55SixYttGfPHvP/4dLSUhUUFKioqEiSb6la1d23PR6PioqKdOTIEcXFxamiokJLlixRnz59zM/qcrnk8XjMz3H77bdrzpw56tixo84++2y98sorysrK0tNPPx3wXsXFxeZrJF8Cu6ysLOCYv31+FRUVKi8vV0FBgVq3bq34+Hg9+uijuvHGG7V582Y9+OCD1a7tD+CzZs2S3W5XQkKCjh49GnDdqj975eXlKi0t1Zo1a1RRURHQpzUtg0PozBrpzEgH0IBcLpf2798vyRfvnnzySRUVFWns2LFm7H7ttdd0wQUX6N1339Xbb79tvra8vFyvv/66HnvssRrHMlVt27ZNOTk52rZtW43Pb9++XX/+8581atQo5efnB8Sj/Px8lZeXq3Xr1mrTpo2effZZdezYUTk5OZo6dWqN1ysvL1dZWZn52DAMVVRUyOPxmDeEX331VZ133nkn3P/q7rvv1syZM9W9e3f17dtXixYtUlZWll555ZVaP2t9denSRfHx8frrX/+qiRMn6uuvvzZjd1W///3vZbFY9Pjjj8tut6tFixbKz88Pa1sQGsqyAWgMxG5i98nETCLd4/Fo3Lhxmj17tnr16lXn102bNk1TpkwxHxcUFCg9PV0jRoyoVscoGC2+P6jntmQpPjFZo0dfePIXwOR2u5WZmanhw4dXu9uFk6P/6qesrEy7d+9WcnKyHA6HCgsL1aJFC1kslkg37aTsdrtWrlyp008/XZJvp/DTTz9dr7/+ukaPHi1J2rRpk+655x65XC6NHj1a06dP1+zZs5WSkqKNGzdq7ty5uv/++3X33Xeb9cP8NxNbtGihlJQUORwOFRcXa+7cucrIyKjxnJ/97GfatWuXvv32W7311lsB7bztttt0+umna8iQIVqyZIkmT56sQYMG6bTTTtP8+fN1ySWXyOl0KiUlxdzApepyLr8ZM2aoc+fOmjBhgmw2m0pKSvT444+b/2c7HA7FxcWZj++++265XC7NmDFDBw8e1JlnnqmlS5eqX79+kmS+V1JSUsD/+1arVQkJCQHH/O3zs9lsio+PV0pKilJSUvTCCy/o/vvv17PPPqtzzz1X8+bN0xVXXGFee8mSJVq2bJk2bNhg7uxut9tls9mUkpIiwzCq/eyVlZXJ6XTq4osvrjZroeovTAgfR+Vg3MWMdAAN6P3331fHjh0lHYvdb7zxhrnE+c4779Ttt99uLkWePn26Zs2aJUn66quvNGvWLE2fPj1gLFOT4uJizZ49+4SbmV166aXatWuXvv7662qx+4YbblDXrl01ZMgQvfbaa7rjjjvUu3dvnXbaafrLX/5S43LsAQMGVDt29913q23btpowYYIk343g45e6V3XHHXfo6NGj+v3vf2/G7n/961/q2bNnrZ+1vtq1a6fFixfr3nvv1V/+8hczdl9++eXmOUuWLNE//vEPffHFF/xOHcX8N8HZbBRAQyJ2E7tPxmL415lHmMVi0dtvv33COx/5+flq3bp1wLJ3/3L4uLg4rVixQpdccslJ36egoEAtW7bU0aNHw5JIX78jV1c/u16ntHbq43tO/v44xu12a/ny5Ro9ejS/tAaB/qufsrIyZWdnq1u3boqPj1dBQYFSUlLYUKqeunbtqg8//FCpqanV+u+KK67Q5MmTawzc9TF58mT17dvXDOhNidfrrfazV/Vns6ZEejhjVqwKdz9kfvODbn5pk87q1ELv3nFxGFrYfBB7QkP/1Q+xOzyI3aEhdgcn3P3wTtYe/e61/+n8jFZ687dMYKsPYk9o6L/6IXaHB7E7NA0Zu2NmRnpKSoq++uqrgGNPPfWUPvzwQ7355pu1Ft9vSP7dw6nVBqA5aNeuXbU63n7+0iehstvtJ3wPIBz8sZvl4QCaA2I3mgL/RuHEbgDNAbE7ekU0kV5UVBRQDyg7O1tZWVlKTU1Vly5dNG3aNO3du1cvvviirFarevfuHfD69u3bKyEhodrxxuSM9wX0UgI6gGbg888/N+/uHm/RokVheY+5c+eG5TrAiTjsbFgGoPkgdqMpOHYTnNgNoOkjdkeviCbSN2zYoKFDh5qP/TWExo8fr8WLF2vfvn3KycmJVPPq5NimJwR0AABigTkYp84qAAAxweHfKJzYDQCIoIgm0ocMGaLaSrQvXry41tfPmjXLLOofKc7KRHqF15Db45U9jrpPAABEM/9qMpaHAwAQG1hNBgCIBmR9Q+TfPVxiVjoQC7xeEmeILvxMNj6Hf3+TCuI2EAv4fxLRhp/JxmfuTcaMdCAm8P8kok24fiZjZrPRaBVvs8oiQ4YsKnV71CKBXZyBaBQfHy+r1aoffvhBbdu2VXl5ucrKytg9PAher5f+C1LVvrNYLCovL1dubq6sVmtYNoxB3fg3LHN7DHm8huKslgi3CEBNiN3hQ+wOHrE7OpibjZJIB6IasTt8iN3Ba8jYTSI9RBaLRXarVO6VysoJ6kC0slqt6tatm/bt26cffvhBpaWlcjqdslhIoNWXYRj0X5Bq6rvExER16dKFX44akX9Wm+RbTZbk4NchIBoRu8OH2B08Ynd0cFSWVC2v8MrrNWTlJjgQlYjd4UPsDl5Dxm5GjmEQX5lIL6W0CxDV4uPj1aVLF5WVlenDDz/UxRdfLLudVST15Xa7tWbNGvovCMf3XVxcnGw2G78YNTJHlbJspSTSgahG7A4PYnfwiN3RoWrsdlV45YyPq+VsAJFE7A4PYnfwGjJ2M3IMg/g4SRXUSAdigcVikc1mU0VFhRISEghIQYiLi6P/gkTfRQer1SKbxVCFYSF2AzGA2B064k/w6LvocPzeZCTSgehG7A4d8Sd4Ddl3rEULg8pybcxIBwAgRvhjd5mbsmwAAEQ7W5xVVoshiQ1HAQCRQyI9DEikAwAQW+LNRDqxGwCAWGAndgMAIoxEehiYg/FyAjoAALHAPxh3VRC7AQCIBWYindgNAIgQEulhEG/1LTFjRjoAALGB0i4AAMSWeGI3ACDCSKSHAYNxAABiC8vDAQCILTaL7yuxGwAQKSTSw4Aa6QAAxBZiNwAAsYWb4ACASCORHgbxcb6vBHQAAGKDvbIsG6vJAACIDcf2NyF2AwAig0R6GPhrtZWy2SgAADGBWW0AAMSWYzfBid0AgMggkR4GDMYBAIgtxG4AAGKLOSOd1WQAgAghkR4G/jvj1FkFACA2+MuysTwcAIDYYN4Er2DcDQCIDBLpYRDPhmUAAMQUZqQDABBbiN0AgEgjkR4GbDYKAEBsYTAOAEBsobQLACDSSKSHwbHBOAEdAIBYQOwGADQXa9as0dixY9WpUydZLBYtXbq01vPfeustDR8+XO3atVNKSooGDhyoDz74oHEaWwtKuwAAIo1EehiYpV3KCegAAMQC9jcBADQXxcXF6tOnjxYsWFCn89esWaPhw4dr+fLl2rhxo4YOHaqxY8dq06ZNDdzS2nETHAAQabZIN6ApsFMjHQCAmEJpFwBAczFq1CiNGjWqzufPnz8/4PEjjzyiZcuW6Z133lG/fv3C3Lq6I3YDACKNRHoYxBPQAQCIKfHMagMAoE68Xq8KCwuVmpp6wnNcLpdcLpf5uKCgQJLkdrvldrtDboPb7TZXk5WUV4Tlms2Fv6/os+DQf8Gj70JD/wWvvn1Xnz4mkR4G8XEsDwcAIJaYG5ZRZxUAgFrNmzdPRUVFuvrqq094zpw5czR79uxqx1esWKHExMSwtMNutUiSdubs0fLlOWG5ZnOSmZkZ6SbENPovePRdaOi/4NW170pKSup8TRLpYcASMwAAYguxGwCAk3v11Vc1e/ZsLVu2TO3btz/hedOmTdOUKVPMxwUFBUpPT9eIESOUkpIScjvcbrfWvvwfSVJquw4aPTpyJWZijdvtVmZmpoYPHy673R7p5sQc+i949F1o6L/g1bfv/Kuo6oJEehjY2WwUAICYwoZlAADU7rXXXtNNN92kN954Q8OGDav1XIfDIYfDUe243W4PWwLIH7vLPQZJpSCE8++iOaL/gkffhYb+C15d+64+/WsNpUHwoc4qAACxhf1NAAA4sSVLluiGG27QkiVLNGbMmEg3RxKryQAAkceM9DCIN++Me+XxGoqrrN0GAACik3/DMvY3AQA0dUVFRdq2bZv5ODs7W1lZWUpNTVWXLl00bdo07d27Vy+++KIkXzmX8ePH64knntCAAQO0f/9+SZLT6VTLli0j8hkkVpMBACKPGelhYK/Si9wdBwA0ZWvWrNHYsWPVqVMnWSwWLV26tNbz33rrLQ0fPlzt2rVTSkqKBg4cqA8++KBxGlsLBuMAgOZiw4YN6tevn/r189UVnzJlivr166cZM2ZIkvbt26ecnGObdz777LOqqKjQbbfdpo4dO5p/Jk2aFJH2+zEjHQAQacxIDwNblUR6qdujJAfdCgBomoqLi9WnTx/deOON+vnPf37S89esWaPhw4frkUceUatWrbRo0SKNHTtWn332mTmgjwT/YNzFYBwA0MQNGTJEhmGc8PnFixcHPF69enXDNihI/tVkrgpuggMAIoOMbxhYLVKC3aoyt5cNRwEATdqoUaM0atSoOp8/f/78gMePPPKIli1bpnfeeScqEullFcRtAABiATPSAQCRRmmXMHHa4yQR1AEAqI3X61VhYaFSU1Mj2g7//iZujyGP98Sz9AAAQHQgkQ4AiDRmpIdJgj1OkptaqwAA1GLevHkqKirS1VdffcJzXC6XXC6X+bigoECS5Ha75Xa7Q26D2+0O2N+ksKSMsmx15O//cPw9NEf0X/Dou9DQf8Grb9/Rxw3n2GoyxtwAgMhg1BgmCZWF0ku5Ow4AQI1effVVzZ49W8uWLVP79u1PeN6cOXM0e/bsasdXrFihxMTEsLSl6v4m776/Qsn2sFy22cjMzIx0E2Ia/Rc8+i409F/w6tp3JSUlDdyS5sufSC+v8MrrNWS1WiLbIABAs0MiPUwSKku7kEgHAKC61157TTfddJPeeOMNDRs2rNZzp02bpilTppiPCwoKlJ6erhEjRiglJSXktrjdbmVmZio+zqpyj1cXDR6qTq2cIV+3OfD33fDhw2W3c/ehvui/4NF3oaH/glffvvOvokL4VV1NVu7xKsEaF7nGAACaJRLpYeKMr0yks9koAAABlixZohtvvFGvvfaaxowZc9LzHQ6HHA5HteN2uz2sCaAEuy+R7jasJJbqKdx/F80N/Rc8+i409F/w6tp39G/DqZpIL3N7zMlsAAA0FhLpYZJQGdXZ+AQA0JQVFRVp27Zt5uPs7GxlZWUpNTVVXbp00bRp07R37169+OKLknzlXMaPH68nnnhCAwYM0P79+yVJTqdTLVu2jMhn8Euwx6mgrILYDQBADIizSDarRRVeg73JAAARYT35KaiLBJvvbjiDcQBAU7Zhwwb169dP/fr1kyRNmTJF/fr104wZMyRJ+/btU05Ojnn+s88+q4qKCt12223q2LGj+WfSpEkRaX9VjspC6a4KYjcAALHAwQQ2AEAEMSM9TJzUSAcANANDhgyRYRgnfH7x4sUBj1evXt2wDQqBP3Yzqw0AgNjgsFlV7PKojJvgAIAIYEZ6mCTE+7qSRDoAALGBsmwAAMSWYyvBuQkOAGh8JNLDxJzVxmajAADEBAcz0gEAiCn+m+AuboIDACKARHqY+OusllUwGAcAIBYk2JiRDgBALHH4Z6Qz7gYARACJ9DAxa6QzIx0AgJiQwP4mAADEFMqyAQAiiUR6mDAYBwAgtjiYkQ4AQEwhdgMAIolEepg440mkAwAQS/w3wV0sDwcAICb49zdxsb8JACACSKSHiZNNTwAAiClOlocDABBT/PubuCqI3QCAxkciPUz8m54wIx0AgNjgn9VGIh0AgNiQYMZuZqQDABpfRBPpa9as0dixY9WpUydZLBYtXbq01vPfeustDR8+XO3atVNKSooGDhyoDz74oHEaexJsNgoAQGxJMOusMhgHACAWsNkoACCSIppILy4uVp8+fbRgwYI6nb9mzRoNHz5cy5cv18aNGzV06FCNHTtWmzZtauCWnlxCvK8rSxmMAwAQExKYkQ4AQEzxrwQvo7QLACACbJF881GjRmnUqFF1Pn/+/PkBjx955BEtW7ZM77zzjvr16xfm1tWPk8E4AAAxxeGf1cZmowAAxAQHq8kAABEU0zXSvV6vCgsLlZqaGummKMFGIh0AgFjij92UZQMAIDb4S7uw2SgAIBIiOiM9VPPmzVNRUZGuvvrqE57jcrnkcrnMxwUFBZIkt9stt9sdchv817BZfHfES8s9Ybluc+DvJ/orOPRf8Oi70NB/watv39HHDYvBOAAAscUs7cKMdABABMRsIv3VV1/V7NmztWzZMrVv3/6E582ZM0ezZ8+udnzFihVKTEwMW3s2fLZWkk3FZeVavnx52K7bHGRmZka6CTGN/gsefRca+i94de27kpKSBm5J83ZseTiJdAAAYgGbjQIAIikmE+mvvfaabrrpJr3xxhsaNmxYredOmzZNU6ZMMR8XFBQoPT1dI0aMUEpKSshtcbvdyszM1PChgzX7i0/kNiy67LJRslotIV+7qTP7bvhw2e32SDcn5tB/waPvQkP/Ba++fedfRYWG4YxnVhsAALHk2EbhxG4AQOOLuUT6kiVLdOONN+q1117TmDFjTnq+w+GQw+Godtxut4c1AdQi8dh7eC1xclQGeJxcuP8umhv6L3j0XWjov+DVte/o34bF/iYAAMQW/2oyyrIBACIhoon0oqIibdu2zXycnZ2trKwspaamqkuXLpo2bZr27t2rF198UZKvnMv48eP1xBNPaMCAAdq/f78kyel0qmXLlhH5DH7+wbgklbo95iw3AAAQnRz+5eEMxgEAiAmUZQMARJI1km++YcMG9evXT/369ZMkTZkyRf369dOMGTMkSfv27VNOTo55/rPPPquKigrddttt6tixo/ln0qRJEWl/VVarRfGVQb2UoA4AQNRLYMMyAABiir+0i6uC2A0AaHwRnZE+ZMgQGYZxwucXL14c8Hj16tUN26AQOe1xKq/wqrScRDoAANGODcsAAIgtxG4AQCRFdEZ6U+O0U2sVAIBYkUDcBgAgprCaDAAQSSTSw4i74wAAxA5/nVW3x5DHe+IVcgAAIDo4GHMDACKIRHoY+We2USMdAIDo519JJjEgBwAgFjhsrCYDAEQOifQwcsZXJtKpkQ4AQNTzz0iXGJADABAL/KvA2WwUABAJJNLDyKyRTlAHACDqWa0WxVcm04ndAABEvwTbsUS6YVCWDQDQuEikh5G5aRkz0gEAiAn+ATkz0gEAiH6OKmXZmJUOAGhsJNLDyEmNdAAAYop5E5zYDQBA1EugLBsAIIJIpIcRm40CABBbSKQDABA7bHFWxVktkqQyNzPSAQCNi0R6GDnjfd3JZqMAAMQG/6ZlDMYBAIgNx+qkM+4GADQuEulhdGyzUQI6AACxgBnpAADElmOxm5vgAIDGRSI9jNhsFACA2MJgHACA2MJNcABApJBIDyNqpAMAEFsYjAMAEFscZlk2YjcAoHGRSA8jp5lIZ1YbAACxwF9nlbJsAADEBofNX1KVcTcAoHGRSA8jZzyz2gAAiCWUdgEAILYkMCMdABAhJNLDiIAOAEBsIXYDABBbEipnpLuYkQ4AaGQk0sPILO3CZqMAAMQEaqQDABBbuAkOAIgUEulhxGajAADEFhLpAADEFn/sdhG7AQCNjER6GDkZjAMAEFOokQ4AQGwhdgMAIoVEehgR0AEAiC0sDwcAILY4bMRuAEBkkEgPI2c8pV0AAIgl/g3LytiwDACAmGCWdiF2AwAaGYn0MGKzUQAAYgs10gEAiC0OVpMBACKERHoYVd1s1DCMCLcGAACcDKVdAACILcdWkxG7AQCNi0R6GPlLu0gsMwMAIBYwIx0AgNjC3mQAgEghkR5GCbZj3cmAHACA6HdsRjqDcQAAYgGbjQIAIoVEehjZ4qyyx1kkseEoAACxwFweTtwGACAmMCMdABApJNLDLIENRwEAiBkJ8dRZBQAglvhXk7mI3QCARkYiPcyc3B0HACBmHJuRTtwGADRNa9as0dixY9WpUydZLBYtXbr0pK9ZvXq1zj33XDkcDvXo0UOLFy9u8HbWlX/ymovYDQBoZCTSw8yckc4ScQAAot6xGunEbQBA01RcXKw+ffpowYIFdTo/OztbY8aM0dChQ5WVlaXJkyfrpptu0gcffNDALa0bM3YzIx0A0MhskW5AU3NsRjpBHQCAaMesNgBAUzdq1CiNGjWqzucvXLhQ3bp106OPPipJOuOMM/Txxx/r8ccf18iRIxuqmXXG/iYAgEghkR5m/lqr1EgHACD6+RPp5R6vPF5DcVZLhFsEAEBkrVu3TsOGDQs4NnLkSE2ePPmEr3G5XHK5XObjgoICSZLb7Zbb7Q65Tf5ruN1uxVkMSb4xdziu3dRV7TvUH/0XPPouNPRf8Orbd/XpYxLpYeZkmRkAADHDvzxc8s1sS3LwqxEAoHnbv3+/OnToEHCsQ4cOKigoUGlpqZxOZ7XXzJkzR7Nnz652fMWKFUpMTAxb2zIzM7WnWJJsKigq0fLly8N27aYuMzMz0k2IafRf8Oi70NB/watr35WUlNT5mowWw8yskc6MdAAAop5/ebhEIh0AgGBNmzZNU6ZMMR8XFBQoPT1dI0aMUEpKSsjXd7vdyszM1PDhw5WTX665X34i2ewaPTrypWaiXdW+s9vtkW5OzKH/gkffhYb+C159+86/iqouGC2GGTXSAQBN2Zo1azR37lxt3LhR+/bt09tvv60rrrii1tesXr1aU6ZM0TfffKP09HTdf//9mjBhQqO092SsVovibVaVV3hVVkGddAAA0tLSdODAgYBjBw4cUEpKSo2z0SXJ4XDI4XBUO26328OaALLb7UqubEKZ20tyqR7C/XfR3NB/waPvQkP/Ba+ufVef/rWe/BTUhz+RXkoiHQDQBBUXF6tPnz5asGBBnc7Pzs7WmDFjNHToUGVlZWny5Mm66aab9MEHHzRwS+suwVZZlo3YDQCABg4cqJUrVwYcy8zM1MCBAyPUokDmRuEVXhmGEeHWAACaE2akh9mxzUaZ1QYAaHpGjRqlUaNG1fn8hQsXqlu3bnr00UclSWeccYY+/vhjPf744xo5MjqWYyfY41RQVkEiHQDQJBUVFWnbtm3m4+zsbGVlZSk1NVVdunTRtGnTtHfvXr344ouSpIkTJ+rJJ5/UH/7wB91444368MMP9Y9//EPvvvtupD5CAIft2HxAV4XXTKwDANDQmJEeZmZpFzYbBQBA69at07BhwwKOjRw5UuvWrYtQi6pLMMuycRMcAND0bNiwQf369VO/fv0kSVOmTFG/fv00Y8YMSdK+ffuUk5Njnt+tWze9++67yszMVJ8+ffToo4/q+eefj6ob4H4uYjcAoBExIz3MEuy+exNsNgoAgLR//3516NAh4FiHDh1UUFCg0tLSGmutulwuuVwu87F/8xe32y232x1ym/zX8H912CySpOIyV1iu35Qd33eoH/ovePRdaOi/4NW376Kxj4cMGVJrCZTFixfX+JpNmzY1YKuCZ4+zKs5qkcdrqKzCo5aidjAAoHGQSA8zNhsFACA0c+bM0ezZs6sdX7FihRITE8P2PpmZmZKksuI4SRZ9tG69jmyh1mpd+PsOwaH/gkffhYb+C15d+66kpKSBWwLJt79JcbmHcTcAoFGRSA+zBDYbBQDAlJaWpgMHDgQcO3DggFJSUmqcjS5J06ZN05QpU8zHBQUFSk9P14gRI5SSkhJym9xutzIzMzV8+HDZ7Xa99MN67S7O19l9+mlU77SQr9+UHd93qB/6L3j0XWjov+DVt+/8q6jQsBLscZWJdEq7AAAaD4n0MHPGMyMdAAC/gQMHavny5QHHMjMzNXDgwBO+xuFwyOFwVDtut9vDmgDyXy/R4bum22shwVRH4f67aG7ov+DRd6Gh/4JX176jfxtHAivBAQARwGajYZZg889I5844AKDpKSoqUlZWlrKysiRJ2dnZysrKMjcpmzZtmq6//nrz/IkTJ2rHjh36wx/+oC1btuipp57SP/7xD915552RaH6NEmy+X4fYKBwAgNjg8MduEukAgEZEIj3MzBnpbDYKAGiCNmzYoH79+qlfv36SpClTpqhfv36aMWOGJGnfvn1mUl2SunXrpnfffVeZmZnq06ePHn30UT3//PMaOXJkRNpfk2Oz2rgJDgBALHBUxm5XBbEbANB4KO0SZk5qpAMAmrAhQ4bIME68IefixYtrfM2mTZsasFWhSbAzqw0AgFhC7AYARAIz0sOMWm0AAMQWf+x2EbsBAIgJ/pKqZcxIBwA0IhLpYea/M86MdAAAYoN5E5zBOAAAMYEZ6QCASCCRHmZmjXQCOgAAMcG/2Wgp+5sAABATHDZWkwEAGl9EE+lr1qzR2LFj1alTJ1ksFi1duvSkr1m9erXOPfdcORwO9ejRo8ZarJFk1khnMA4AQExwUJYNAICY4p+RzmajAIDGFNFEenFxsfr06aMFCxbU6fzs7GyNGTNGQ4cOVVZWliZPnqybbrpJH3zwQQO3tO6qbjZa22ZsAAAgOjgp7QIAQExhbzIAQCTYIvnmo0aN0qhRo+p8/sKFC9WtWzc9+uijkqQzzjhDH3/8sR5//HGNHDmyoZpZLwmVpV28huT2GIq3WSLcIgAAUBsG4wAAxJZjsZub4ACAxhPRRHp9rVu3TsOGDQs4NnLkSE2ePPmEr3G5XHK5XObjgoICSZLb7Zbb7Q65Tf5r+L/GGccCeWFJmVKc9pDfo6k6vu9QP/Rf8Oi70NB/watv39HHjYMNywAAiC0OYjcAIAJiKpG+f/9+dejQIeBYhw4dVFBQoNLSUjmdzmqvmTNnjmbPnl3t+IoVK5SYmBi2tmVmZkqSDEOyKk5eWfTuB5lqGR+2t2iy/H2H4NB/waPvQkP/Ba+ufVdSUtLALYF0bFabi1ltAADEBP9mo2UVJNIBAI0nphLpwZg2bZqmTJliPi4oKFB6erpGjBihlJSUkK/vdruVmZmp4cOHy273zT6/b9NKFbs8GvTjIcpoE75kfVNTU9+h7ui/4NF3oaH/glffvvOvokLDMmekMxgHACAmHFtNxk1wAEDjialEelpamg4cOBBw7MCBA0pJSalxNrokORwOORyOasftdntYE0BVr+e021Ts8qhCFpJMdRDuv4vmhv4LHn0XGvoveHXtO/q3cSRUzmorLSeRDgBALPDHbhcbhQMAGpE10g2oj4EDB2rlypUBxzIzMzVw4MAItahm/rvjDMgBAIh+DjvLwwEAiCVsFA4AiISIJtKLioqUlZWlrKwsSVJ2draysrKUk5MjyVeW5frrrzfPnzhxonbs2KE//OEP2rJli5566in94x//0J133hmJ5p+QszKolxLUAQCIek5zMM6sNgAAYgEbhQMAIiGiifQNGzaoX79+6tevnyRpypQp6tevn2bMmCFJ2rdvn5lUl6Ru3brp3XffVWZmpvr06aNHH31Uzz//vEaOHBmR9p+IM5674wAAxAoG4wAAxBY2CgcAREJEa6QPGTJEhmGc8PnFixfX+JpNmzY1YKtCl8DMNgAAYgaDcQAAYovDxkbhAIDGF1M10mOFf0BOjXQAAKKfP26Xe7zyeE98gx8AAEQHboIDACKBRHoDcPo3G2WJOAAAUc9f2kWSXMxsAwAg6pll2YjbAIBGRCI9FF6PVJwrZ3lewGEnO4gDABAzEmxx5veUZQMAIPo5bIy5AQCNj0R6KL5bLvv8M3T+zqcCDrPZKAAAscNqtSg+jtVkAADECvYlAwBEAon0UCS2lSTFVxQGHDZrpDMYBwAgJjj8S8SJ3QAARD1zs1HiNgCgEZFID0VSO0mSw10QcPjYZqPcHQcAIBZQlg0AgNhhbjZa4ZVhsFE4AKBxkEgPRZJvRrrdWypVlJmHncxIBwAgprBEHACA2BG4UTixGwDQOEikhyKhpQyr3fd9ySHzMLPaAACILf4BuYvYDQBA1PPfAJckFzfBAQCNhER6KCwWc1a6inPNwwlsNgoAQEwxZ6RXELsBAIh29jir4qwWScRuAEDjIZEeqsoNRy3FeeahhMqNTyjtAgBAbEiwUdoFAIBYksCGowCARkYiPUSGf0Z61dIu8f7NRgnoAADEAkdlaRdiNwAAscHB/iYAgEZGIj1U/hnpJcdKu1AjHQCA2EJpFwAAYot/RrqL2A0AaCS2UF5cUlKinJwclZeXBxw/55xzQmpULDFnpFcp7eLkzjgAIEoRu2tG7AYARCtid80SiN0AgEYWVCI9NzdXN9xwg957770an/d4mtEd4cR2kiRLybFEun+JGTXSAQDRgthduwQ7dVYBANGF2F07ByvBAQCNLKjSLpMnT1Z+fr4+++wzOZ1Ovf/++/r73/+unj176l//+le42xjVapuRTiIdABAtiN21889qcxG7AQBRgthdO26CAwAaW1Az0j/88EMtW7ZM559/vqxWqzIyMjR8+HClpKRozpw5GjNmTLjbGb0S/Yn0KjXSKzcbLWPDMgBAlCB21+5YjXSWhwMAogOxu3aOyhrpxG4AQGMJakZ6cXGx2rdvL0lq3bq1cnN9SeSzzz5bX3zxRfhaFwvMzUZrqJHOpicAgChB7K6df8MyZrUBAKIFsbt2rCYDADS2oBLpp512mr777jtJUp8+ffTMM89o7969WrhwoTp27BjWBkY7s7RLySHJMCQdS6S7PYbcHu6OAwAij9hdO+qsAgCiDbG7dgk2VpMBABpXUKVdJk2apH379kmSZs6cqcsuu0yvvPKK4uPjtXjx4nC2L/oltpEkWSrKpPIiydFCDvux+xNlbo/scUHdrwAAIGyI3ZXKi6XcbUopyQk4nGDub8JgHAAQHYjdtfPXSGdGOgCgsQSVSP/Vr35lfn/eeedp165d2rJli7p06aK2bduGrXExIT5JFVaHbF6Xr066o4UcNqssFt8E9VK3Ry0S7JFuJQCgmSN2V9q+SvbXr1WfxO6SJpqHncxIBwBEGWJ37RKI3QCARhaWqdKJiYk699xz1bZtWx08eDAcl4wpLluK75tiX510i8VybEBezsw2AED0abaxO9lXa9ZRcTTgsH9WG4NxAEC0arax+wSOJdIZcwMAGkdQifQZM2bUePyVV17RWWedFVKDYtGxRHqueYwNRwEA0YTYXalybxNHRUHA4WMbljEYBwBEB2J37RyVG4W7GHMDABpJUKVdFi9erKNHj+qJJ56QJB08eFC33HKLPv74Y82fPz+c7YsJ5bYWvm+qJNLNWqvlBHUAQOQRuysl+Wak27zlcpcXSfbWkqrMSGcwDgCIEsTu2jmYkQ4AaGRBJdI/+ugjDR8+XPn5+Ro+fLgmTZqkiy66SF9//bXS0tLC3caod3xpF+nYgLyUJeIAgChA7K7kSJZhT5TFXeK7AZ5UmUi3UWcVABBdiN21oywbAKCxBVXaJSMjQ2vWrNGmTZs0fvx4/elPf9KyZcuabTB32asn0p3xlTPSCeoAgChA7K4iqZ0kyVJlJRmz2gAA0YbYXTvzJngFsRsA0DiC3mw0LS1Na9as0YABA/T666+rtLQ0nO2KKbXVSHeRSAcARAlit49RmUhXUdWSbKwkAwBEH2L3iR3bbJTYDQBoHEGVdmndurUsFoskye12q7i4WO3bt5fdbpckHT58OHwtjAHlNSTSzRrpBHUAQBQgdldhzkg/aB5iMA4AiDbE7kpHdsm65X2dcni7pNHmYf9mo8RuAEBjCSqRzsYmgWquke7fbJRlZgCAyCN2V5HY1ve1pEpJNnMlGXEbABAdiN2VDn6ruA/+oO7OrpIeNg/7x9wuSrsAABpJUIn08ePHh7sdMc1la+H7pobSLsxIBwBEA2L3MUZSe983NawkK/d45fEairNaItE0AABMxO5Kyb647ag4GnDYX5aNcqoAgMYSVCJdklwul1555RVt3rxZFotFZ511ln75y1/K4XCEs30xody/2WjJIcnrlaxWM5HOMjMAQLQgdleqYbNR/2BcklwVHiXGB/0rEgAAYUPsVpVEeoE8hmEeTmCjcABAI6vTZqMVFRU65ZRTlJvrG3Bu3rxZPXv21F133aWNGzdqw4YNmjJlinr16qUtW7Y0aIOjkSuucka64ZHK8iVJzngS6QCAyCF2n5iRXLnZaNVEui3O/J4BOQAgEojdJ1B5A9xaZbwtHbsJXlbBmBsA0DjqlEi32WwqKipSYWGhJGnSpEk6//zzlZOTo1WrVmnVqlXatWuXzj33XE2aNKlBGxyNDKtNRkIr34PKQbmjMqiXlhPUAQCNj9hdixo2G7VaLYqPY9MyAEDkELtPwOaQkdDS932Vm+AOG5PXAACNq87rltu2bauSkhJJ0tq1a7V+/XolJyebz7do0UIPPPCABg4cGP5WxoKktr6748W5UrvTqJEOAIg4YnfNjMTqM9Il303wco+XATkAIGKI3SeQ1F4qOypL0QFJZ0mqUiOdzUYBAI2kTjPSJalfv3567733JEmtWrVSfn5+tXOOHj2q+Pj4sDUulhiJbX3fVA7KSaQDACKN2H0C/hnprkLJXWYeTiB2AwAijNhdMyOp+k1wZqQDABpbnRPpt912mx566CF9+OGHuuKKK/Sb3/xGn332mQzDkGEY+vTTTzVx4kSNGTOmIdsbvcxEep6kYzXSXdRZBQBECLH7BBJaymOpXJRXZUDuZNMyAECENVTsXrBggbp27aqEhAQNGDBA69evr/X8+fPn67TTTpPT6VR6erruvPNOlZWV1fqaBlXjRuHH4rZRZRNSAAAaSp1LuwwZMkRPPfWUrrzySjmdTu3bt0+DBg2Szea7REVFhS677DI98cQTDdbYaGYkBSbS/ZuWMasNABApxO4TsFhUbkuR031YKj4otUqXVGWJOLEbABAhDRG7X3/9dU2ZMkULFy7UgAEDNH/+fI0cOVLfffed2rdvX+38V199VVOnTtULL7ygQYMG6fvvv9eECRNksVj02GOPhe2z1oeRVNnOgET6sXmBrgqvmVgHAKCh1DmRLknXXnutrrjiCn300UfKzc2V1+ubsdW6dWudfvrp6tWrV4M0MiYcV9oloXJGOpuNAgAiidhdM5c/kV5Uw8y2CmI3ACBywh27H3vsMd1888264YYbJEkLFy7Uu+++qxdeeEFTp06tdv7atWt14YUXaty4cZKkrl276pe//KU+++yzED9ZCPwz0ouObRReNXHucpNIBwA0vHol0iUpKSlJl112WUO0JbYdV7ONGukAgGgR7ti9YMECzZ07V/v371efPn3017/+Vf379z/h+fPnz9fTTz+tnJwctW3bVldeeaXmzJmjhISEsLWpvsrsLaVS+WakV0qwUdoFABAdwhW7y8vLtXHjRk2bNs08ZrVaNWzYMK1bt67G1wwaNEgvv/yy1q9fr/79+2vHjh1avny5rrvuuhO+j8vlksvlMh8XFBRIktxut9xud8ifw+tsozhJRtEB83qGYchqkbyGVFhapkR7yG/TJPn7Kxx/D80R/Rc8+i409F/w6tt39enjeifSJekvf/lLrc/fcccdwVw2ph1f2uVYnVUS6QCAyAtX7G4Ky8MlqdyW4vumysw2R+UScWI3ACAahCN25+XlyePxqEOHDgHHO3TooC1bttT4mnHjxikvL08XXXSRDMNQRUWFJk6cqHvvvfeE7zNnzhzNnj272vEVK1YoMTHxpO08mQ5H9+hHkgr3bdd/ly83j9sscSo3LPrgPx+qbeTuz8eEzMzMSDchptF/waPvQkP/Ba+ufVdSUlLnawaVSJ88ebISExPVvn37apt6WCyWZplIP760izOewTgAIHqEK3Y3ieXh8pV2kXRcrVVmpAMAokekxt2rV6/WI488oqeeekoDBgzQtm3bNGnSJD344IOaPn16ja+ZNm2apkyZYj4uKChQenq6RowYoZSUlJDb5MlpJ+14XCm2co0ePdo8Put/q1Re4tbACy9Wzw7J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nnoKF154IbKyspCVlYU5c+Z0+X4iIqLBgIl0IiIi6pZFixbhqaeewp///Gfs2bMHP/rRj+D1erFgwQIAwK233tpuMdKHHnoIv/rVr/DMM8+goqICtbW1qK2thcfjydRHICIiGlRefPFFLFq0CEuWLMHWrVsxefJkzJ07F/X19Z2+f8OGDbjxxhvx3nvvYdOmTfESaydPnjzLLSciIuo7mEgnIiKibpk/fz4effRRLF68GFOmTMH27duxdu3a+AKkVVVVqKmpib//ySefRDAYxPXXX4+ioqL49uijj2bqIxAREQ0qjz32GG6//XYsWLAA48aNw8qVK2EymfDMM890+v4XXngBd9xxB6ZMmYIxY8bg6aefjs9AIyIiGqxYI52IiIi6beHChVi4cGGnP9uwYUO710ePHv3qG0RERESdCgaD2LJlS7vZYiqVCnPmzMGmTZtSuobP50MoFEJ2dnanPw8EAggEAvHXsUVXQ6EQQqFQD1qP+HWS95Q69l3PsP/Sx77rGfZf+rrbd93pYybSiYiIiIiIiAaoxsZGRCKR+MyxmIKCAuzduzela9xzzz0oLi7GnDlzOv350qVL8cADD3Q4//bbb8NkMnW/0aexbt26XrvWYMO+6xn2X/rYdz3D/ktfqn3n8/lSviYT6URERERERETUqWXLlmH16tXYsGEDDAZDp++57777sGjRovhrl8sVr6tus9l63IZQKIR169bhsssug1ar7fH1BhP2Xc+w/9LHvusZ9l/6utt3sVlUqWAinYiIiIiIiGiAys3NhVqtRl1dXbvzdXV1KCws7PJ3H330USxbtgzvvPMOJk2adNr36fV66PX6Due1Wm2vJoB6+3qDCfuuZ9h/6WPf9Qz7L32p9l13+peLjRIRERERERENUDqdDtOmTWu3UGhs4dBZs2ad9vcefvhhPPjgg1i7di2mT59+NppKRETUp3FEOhEREREREdEAtmjRItx2222YPn06ZsyYgeXLl8Pr9WLBggUAgFtvvRUlJSVYunQpAOChhx7C4sWL8de//hUVFRWora0FAFgsFlgslox9DiIiokxiIp2IiIiIiIhoAJs/fz4aGhqwePFi1NbWYsqUKVi7dm18AdKqqiqoVIkJ608++SSCwSCuv/76dtdZsmQJ7r///rPZdCIioj6DiXQiIiIiIiKiAW7hwoVYuHBhpz/bsGFD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Th9jd3oYu3vX2YjdTKSnQafTYdq0aVi/fn38XDQaxfr16zFr1qwMtqz/GTp0KAoLC9v1pcvlwqeffsq+BCDLMhYuXIhXX30V7777LoYOHdru59OmTYNWq23Xf/v27UNVVRX77zSi0SgCgQD77gwuvfRS7Ny5E9u3b49v06dPx8033xw/Zv+lzuPx4NChQygqKuK/vQxh7O49jN1dY+zufYzdqWHs7l2M3ZnH2N17GLu7xtjd+xi7U8PY3bvOSuxOe5nSQW716tWyXq+XV61aJX/55ZfyD37wA9nhcMi1tbWZblqf43a75W3btsnbtm2TAciPPfaYvG3bNvnYsWOyLMvysmXLZIfDIf/973+Xv/jiC3nevHny0KFD5ba2tgy3PPN+9KMfyXa7Xd6wYYNcU1MT33w+X/w9P/zhD+Xy8nL53XfflTdv3izPmjVLnjVrVgZb3Xfce++98saNG+UjR47IX3zxhXzvvffKkiTJb7/9tizL7LvuSl49XJbZf1352c9+Jm/YsEE+cuSI/NFHH8lz5syRc3Nz5fr6elmW2XeZwtidOsbu9DF29wxjd+9i7E4dY3ffxNidOsbu9DF29wxjd+9i7E5dJmI3E+k98MQTT8jl5eWyTqeTZ8yYIX/yySeZblKf9N5778kAOmy33XabLMuyHI1G5V/96ldyQUGBrNfr5UsvvVTet29fZhvdR3TWbwDkZ599Nv6etrY2+Y477pCzsrJkk8kkf+tb35Jramoy1+g+5Hvf+548ZMgQWafTyXl5efKll14aD+ayzL7rrlMDOvvv9ObPny8XFRXJOp1OLikpkefPny8fPHgw/nP2XeYwdqeGsTt9jN09w9jduxi7U8fY3XcxdqeGsTt9jN09w9jduxi7U5eJ2C3JsiynP56diIiIiIiIiIiIiGhgY410IiIiIiIiIiIiIqIuMJFORERERERERERERNQFJtKJiIiIiIiIiIiIiLrARDoRERERERERERERUReYSCciIiIiIiIiIiIi6gIT6UREREREREREREREXWAinYiIiIiIiIiIiIioC0ykExERERERERERERF1gYl0IiIiIiIiIiIiIqIuMJFONAiFQiGsWrUKF1xwAfLy8mA0GjFp0iQ89NBDCAaDmW4eERERnYKxm4iIqH9h7CYaeCRZluVMN4KIzq7t27fjZz/7Ge644w5MnToVfr8fO3fuxP3334+ioiK89dZb0Gq1mW4mERERKRi7iYiI+hfGbqKBhyPSiQahCRMmYP369bjuuuswbNgwjBs3DvPnz8f777+PXbt2Yfny5QAASZI63X7605/Gr9XS0oJbb70VWVlZMJlMuOKKK3DgwIH4z7/3ve9h0qRJCAQCAIBgMIipU6fi1ltvBQAcPXoUkiRh+/bt8d/51a9+BUmS4u0gIiIa7Bi7iYiI+hfGbqKBh4l0okFIo9F0ej4vLw/XXnstXnjhhfi5Z599FjU1NfFt1qxZ7X7nu9/9LjZv3ozXX38dmzZtgizLuPLKKxEKhQAAjz/+OLxeL+69914AwC9+8Qs4nU784Q9/6LQNJ06cwPLly2E0GnvjoxIREQ0IjN1ERET9C2M30cDT+f/VRDQojB8/HseOHWt3LhQKQa1Wx187HA4UFhbGX+t0uvjxgQMH8Prrr+Ojjz7CeeedBwB44YUXUFZWhtdeew3f/va3YbFY8Pzzz+Oiiy6C1WrF8uXL8d5778Fms3Xapl/84heYP38+3nnnnd78qERERAMCYzcREVH/wthNNHAwkU40iK1Zsyb+BDvm4YcfxvPPP5/S7+/ZswcajQaVlZXxczk5ORg9ejT27NkTPzdr1izcfffdePDBB3HPPffgggsu6PR6W7duxauvvop9+/YxoBMREXWCsZuIiKh/YewmGjiYSCcaxIYMGdLh3KFDhzBq1Khe/TvRaBQfffQR1Go1Dh48eNr3/exnP8Pdd9+NoqKiXv37REREAwVjNxERUf/C2E00cLBGOtEg1NzcDLfb3eH85s2b8d577+Gmm25K6Tpjx45FOBzGp59+Gj/X1NSEffv2Ydy4cfFzjzzyCPbu3YuNGzdi7dq1ePbZZztc6/XXX8f+/ftx9913p/GJiIiIBjbGbiIiov6FsZto4GEinWgQqqqqwpQpU/CnP/0JBw8exOHDh/GXv/wF8+bNw4UXXthudfCujBw5EvPmzcPtt9+ODz/8EDt27MB3vvMdlJSUYN68eQCAbdu2YfHixXj66adx/vnn47HHHsNPfvITHD58uN21Hn74YfzXf/0XTCZTb39cIiKifo+xm4iIqH9h7CYaeJhIJxqEJkyYgCVLlmDVqlWYOXMmxo8fj4cffhgLFy7E22+/3W5hkzN59tlnMW3aNHzzm9/ErFmzIMsy1qxZA61WC7/fj+985zv47ne/i6uuugoA8IMf/ACzZ8/GLbfcgkgkEr/OiBEjcNttt/X6ZyUiIhoIGLuJiIj6F8ZuooFHkmVZznQjiIiIiIiIiIiIiIj6Ko5IJyIiIiIiIiIiIiLqAhPpRERERERERERERERdYCKdiIiIiIiIiIiIiKgLTKQTEREREREREREREXWBiXQiIiIiIiIiIiIioi4wkU5ERERERERERERE1AUm0omIiIiIiIiIiIiIusBEOhERERERERERERFRF5hIJyIiIiIiIiIiIiLqAhPpRERERERERERERERdYCKdiIiIiIiIiIiIiKgLTKQTEREREREREREREXXh/wPIlp49u/s6gAAAAABJRU5ErkJggg==\n"},"metadata":{}}],"source":["# Графики ошибок для всех моделей\n","plt.figure(figsize=(15, 5))\n","for i, units in enumerate(hidden_units_list, 1):\n"," plt.subplot(1, 3, i)\n"," plt.plot(histories_1[units].history['loss'], label='Обучающая')\n"," plt.plot(histories_1[units].history['val_loss'], label='Валидационная')\n"," plt.title(f'{units} нейронов')\n"," plt.xlabel('Эпохи')\n"," plt.ylabel('Ошибка')\n"," plt.legend()\n"," plt.grid(True)\n","plt.tight_layout()\n","plt.show()"]},{"cell_type":"code","execution_count":null,"metadata":{"id":"EJBwT5vhnnSG"},"outputs":[],"source":["# Добавление второго скрытого слоя\n","second_layer_units = [50, 100]\n","models_2 = {}\n","histories_2 = {}\n","scores_2 = {}"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"K5vweMySno3t","executionInfo":{"status":"ok","timestamp":1759128698216,"user_tz":-180,"elapsed":420194,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"b67b155c-89ea-46e0-a590-a588433e0a38"},"outputs":[{"output_type":"stream","name":"stdout","text":["\n","Обучение модели со вторым слоем 50 нейронов\n","Epoch 1/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.2096 - loss: 2.2675 - val_accuracy: 0.5588 - val_loss: 2.0950\n","Epoch 2/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.5971 - loss: 1.9743 - val_accuracy: 0.6620 - val_loss: 1.5239\n","Epoch 3/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.6823 - loss: 1.3658 - val_accuracy: 0.7380 - val_loss: 1.0431\n","Epoch 4/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.7627 - loss: 0.9560 - val_accuracy: 0.7980 - val_loss: 0.8069\n","Epoch 5/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8084 - loss: 0.7568 - val_accuracy: 0.8352 - val_loss: 0.6673\n","Epoch 6/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8369 - loss: 0.6330 - val_accuracy: 0.8543 - val_loss: 0.5793\n","Epoch 7/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8554 - loss: 0.5512 - val_accuracy: 0.8660 - val_loss: 0.5197\n","Epoch 8/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8667 - loss: 0.5051 - val_accuracy: 0.8757 - val_loss: 0.4769\n","Epoch 9/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8770 - loss: 0.4593 - val_accuracy: 0.8798 - val_loss: 0.4444\n","Epoch 10/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8850 - loss: 0.4256 - val_accuracy: 0.8877 - val_loss: 0.4190\n","Epoch 11/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8889 - loss: 0.4076 - val_accuracy: 0.8910 - val_loss: 0.3995\n","Epoch 12/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8948 - loss: 0.3829 - val_accuracy: 0.8947 - val_loss: 0.3835\n","Epoch 13/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8982 - loss: 0.3699 - val_accuracy: 0.8997 - val_loss: 0.3689\n","Epoch 14/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9008 - loss: 0.3560 - val_accuracy: 0.9017 - val_loss: 0.3582\n","Epoch 15/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9046 - loss: 0.3446 - val_accuracy: 0.9028 - val_loss: 0.3471\n","Epoch 16/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9051 - loss: 0.3367 - val_accuracy: 0.9055 - val_loss: 0.3375\n","Epoch 17/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9087 - loss: 0.3266 - val_accuracy: 0.9072 - val_loss: 0.3295\n","Epoch 18/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9089 - loss: 0.3192 - val_accuracy: 0.9093 - val_loss: 0.3214\n","Epoch 19/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9116 - loss: 0.3087 - val_accuracy: 0.9127 - val_loss: 0.3142\n","Epoch 20/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9110 - loss: 0.3098 - val_accuracy: 0.9148 - val_loss: 0.3084\n","Epoch 21/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9144 - loss: 0.2970 - val_accuracy: 0.9158 - val_loss: 0.3017\n","Epoch 22/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9155 - loss: 0.2888 - val_accuracy: 0.9172 - val_loss: 0.2970\n","Epoch 23/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9168 - loss: 0.2848 - val_accuracy: 0.9192 - val_loss: 0.2909\n","Epoch 24/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9174 - loss: 0.2841 - val_accuracy: 0.9205 - val_loss: 0.2863\n","Epoch 25/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9202 - loss: 0.2728 - val_accuracy: 0.9213 - val_loss: 0.2814\n","Epoch 26/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9214 - loss: 0.2714 - val_accuracy: 0.9222 - val_loss: 0.2768\n","Epoch 27/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9221 - loss: 0.2645 - val_accuracy: 0.9240 - val_loss: 0.2717\n","Epoch 28/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9224 - loss: 0.2637 - val_accuracy: 0.9250 - val_loss: 0.2669\n","Epoch 29/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9261 - loss: 0.2522 - val_accuracy: 0.9262 - val_loss: 0.2628\n","Epoch 30/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9250 - loss: 0.2523 - val_accuracy: 0.9258 - val_loss: 0.2587\n","Epoch 31/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9282 - loss: 0.2438 - val_accuracy: 0.9272 - val_loss: 0.2544\n","Epoch 32/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9298 - loss: 0.2417 - val_accuracy: 0.9288 - val_loss: 0.2506\n","Epoch 33/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9288 - loss: 0.2397 - val_accuracy: 0.9292 - val_loss: 0.2471\n","Epoch 34/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9311 - loss: 0.2364 - val_accuracy: 0.9297 - val_loss: 0.2433\n","Epoch 35/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9313 - loss: 0.2328 - val_accuracy: 0.9310 - val_loss: 0.2394\n","Epoch 36/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9318 - loss: 0.2303 - val_accuracy: 0.9320 - val_loss: 0.2362\n","Epoch 37/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9335 - loss: 0.2261 - val_accuracy: 0.9333 - val_loss: 0.2325\n","Epoch 38/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9336 - loss: 0.2229 - val_accuracy: 0.9355 - val_loss: 0.2299\n","Epoch 39/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9370 - loss: 0.2145 - val_accuracy: 0.9347 - val_loss: 0.2263\n","Epoch 40/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9379 - loss: 0.2130 - val_accuracy: 0.9362 - val_loss: 0.2239\n","Epoch 41/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9386 - loss: 0.2097 - val_accuracy: 0.9375 - val_loss: 0.2209\n","Epoch 42/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9380 - loss: 0.2116 - val_accuracy: 0.9378 - val_loss: 0.2170\n","Epoch 43/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9406 - loss: 0.2028 - val_accuracy: 0.9388 - val_loss: 0.2144\n","Epoch 44/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9391 - loss: 0.2074 - val_accuracy: 0.9402 - val_loss: 0.2115\n","Epoch 45/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9421 - loss: 0.1970 - val_accuracy: 0.9400 - val_loss: 0.2085\n","Epoch 46/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9435 - loss: 0.1979 - val_accuracy: 0.9410 - val_loss: 0.2063\n","Epoch 47/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9450 - loss: 0.1922 - val_accuracy: 0.9415 - val_loss: 0.2036\n","Epoch 48/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9427 - loss: 0.1911 - val_accuracy: 0.9405 - val_loss: 0.2024\n","Epoch 49/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9467 - loss: 0.1825 - val_accuracy: 0.9418 - val_loss: 0.1990\n","Epoch 50/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9470 - loss: 0.1861 - val_accuracy: 0.9438 - val_loss: 0.1962\n","\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 3ms/step - accuracy: 0.9385 - loss: 0.2108\n","Точность: 0.9417999982833862\n","\n","Обучение модели со вторым слоем 100 нейронов\n","Epoch 1/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.1980 - loss: 2.2876 - val_accuracy: 0.4552 - val_loss: 2.0895\n","Epoch 2/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.5365 - loss: 1.9630 - val_accuracy: 0.6475 - val_loss: 1.4925\n","Epoch 3/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.6977 - loss: 1.3304 - val_accuracy: 0.7748 - val_loss: 1.0001\n","Epoch 4/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.7854 - loss: 0.9139 - val_accuracy: 0.8165 - val_loss: 0.7597\n","Epoch 5/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8193 - loss: 0.7167 - val_accuracy: 0.8407 - val_loss: 0.6288\n","Epoch 6/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8450 - loss: 0.5949 - val_accuracy: 0.8585 - val_loss: 0.5491\n","Epoch 7/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8610 - loss: 0.5259 - val_accuracy: 0.8677 - val_loss: 0.4961\n","Epoch 8/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8754 - loss: 0.4709 - val_accuracy: 0.8793 - val_loss: 0.4570\n","Epoch 9/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8834 - loss: 0.4375 - val_accuracy: 0.8878 - val_loss: 0.4271\n","Epoch 10/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8868 - loss: 0.4188 - val_accuracy: 0.8923 - val_loss: 0.4044\n","Epoch 11/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8942 - loss: 0.3833 - val_accuracy: 0.8953 - val_loss: 0.3853\n","Epoch 12/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8955 - loss: 0.3731 - val_accuracy: 0.8993 - val_loss: 0.3711\n","Epoch 13/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9010 - loss: 0.3543 - val_accuracy: 0.9022 - val_loss: 0.3570\n","Epoch 14/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9045 - loss: 0.3409 - val_accuracy: 0.9043 - val_loss: 0.3464\n","Epoch 15/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9065 - loss: 0.3318 - val_accuracy: 0.9063 - val_loss: 0.3364\n","Epoch 16/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9074 - loss: 0.3262 - val_accuracy: 0.9093 - val_loss: 0.3285\n","Epoch 17/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9096 - loss: 0.3151 - val_accuracy: 0.9103 - val_loss: 0.3205\n","Epoch 18/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9126 - loss: 0.3063 - val_accuracy: 0.9125 - val_loss: 0.3138\n","Epoch 19/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9145 - loss: 0.2975 - val_accuracy: 0.9118 - val_loss: 0.3085\n","Epoch 20/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9173 - loss: 0.2899 - val_accuracy: 0.9138 - val_loss: 0.3025\n","Epoch 21/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9158 - loss: 0.2888 - val_accuracy: 0.9172 - val_loss: 0.2962\n","Epoch 22/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9170 - loss: 0.2860 - val_accuracy: 0.9178 - val_loss: 0.2914\n","Epoch 23/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9205 - loss: 0.2788 - val_accuracy: 0.9188 - val_loss: 0.2854\n","Epoch 24/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9182 - loss: 0.2785 - val_accuracy: 0.9195 - val_loss: 0.2813\n","Epoch 25/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9230 - loss: 0.2696 - val_accuracy: 0.9207 - val_loss: 0.2772\n","Epoch 26/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9247 - loss: 0.2647 - val_accuracy: 0.9208 - val_loss: 0.2726\n","Epoch 27/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9218 - loss: 0.2645 - val_accuracy: 0.9218 - val_loss: 0.2679\n","Epoch 28/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9235 - loss: 0.2625 - val_accuracy: 0.9238 - val_loss: 0.2643\n","Epoch 29/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9279 - loss: 0.2493 - val_accuracy: 0.9250 - val_loss: 0.2606\n","Epoch 30/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9279 - loss: 0.2476 - val_accuracy: 0.9248 - val_loss: 0.2560\n","Epoch 31/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9286 - loss: 0.2439 - val_accuracy: 0.9277 - val_loss: 0.2529\n","Epoch 32/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9285 - loss: 0.2440 - val_accuracy: 0.9263 - val_loss: 0.2487\n","Epoch 33/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9295 - loss: 0.2395 - val_accuracy: 0.9288 - val_loss: 0.2456\n","Epoch 34/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9328 - loss: 0.2292 - val_accuracy: 0.9300 - val_loss: 0.2422\n","Epoch 35/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9316 - loss: 0.2318 - val_accuracy: 0.9322 - val_loss: 0.2389\n","Epoch 36/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9345 - loss: 0.2233 - val_accuracy: 0.9325 - val_loss: 0.2347\n","Epoch 37/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9354 - loss: 0.2206 - val_accuracy: 0.9330 - val_loss: 0.2321\n","Epoch 38/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9374 - loss: 0.2146 - val_accuracy: 0.9335 - val_loss: 0.2294\n","Epoch 39/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9370 - loss: 0.2149 - val_accuracy: 0.9330 - val_loss: 0.2264\n","Epoch 40/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9374 - loss: 0.2136 - val_accuracy: 0.9372 - val_loss: 0.2238\n","Epoch 41/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9387 - loss: 0.2118 - val_accuracy: 0.9360 - val_loss: 0.2209\n","Epoch 42/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9384 - loss: 0.2104 - val_accuracy: 0.9370 - val_loss: 0.2177\n","Epoch 43/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9410 - loss: 0.2020 - val_accuracy: 0.9382 - val_loss: 0.2147\n","Epoch 44/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9431 - loss: 0.1985 - val_accuracy: 0.9387 - val_loss: 0.2121\n","Epoch 45/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9440 - loss: 0.1946 - val_accuracy: 0.9398 - val_loss: 0.2096\n","Epoch 46/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9431 - loss: 0.1964 - val_accuracy: 0.9408 - val_loss: 0.2077\n","Epoch 47/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9458 - loss: 0.1880 - val_accuracy: 0.9402 - val_loss: 0.2057\n","Epoch 48/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9442 - loss: 0.1929 - val_accuracy: 0.9403 - val_loss: 0.2023\n","Epoch 49/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9451 - loss: 0.1885 - val_accuracy: 0.9415 - val_loss: 0.2002\n","Epoch 50/50\n","\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9456 - loss: 0.1835 - val_accuracy: 0.9432 - val_loss: 0.1982\n","\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 2ms/step - accuracy: 0.9368 - loss: 0.2101\n","Точность: 0.942300021648407\n"]}],"source":["for units_2 in second_layer_units:\n"," print(f\"\\nОбучение модели со вторым слоем {units_2} нейронов\")\n","\n"," model = Sequential()\n"," model.add(Dense(units=best_units_1, input_dim=num_pixels, activation='sigmoid'))\n"," model.add(Dense(units=units_2, activation='sigmoid'))\n"," model.add(Dense(units=num_classes, activation='softmax'))\n","\n"," model.compile(loss='categorical_crossentropy',\n"," optimizer='sgd',\n"," metrics=['accuracy'])\n","\n"," history = model.fit(X_train, y_train,\n"," validation_split=0.1,\n"," epochs=50)\n","\n"," scores = model.evaluate(X_test, y_test)\n","\n"," models_2[units_2] = model\n"," histories_2[units_2] = history\n"," scores_2[units_2] = scores\n","\n"," print(f\"Точность: {scores[1]}\")"]},{"cell_type":"code","source":["# Выбор наилучшей двухслойной модели\n","best_units_2 = max(scores_2.items(), key=lambda x: x[1][1])[0]\n","print(f\"\\nНаилучшее количество нейронов во втором слое: {best_units_2}\")\n","print(f\"Точность: {scores_2[best_units_2][1]:.4f}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"9lJtmn_oSVkB","executionInfo":{"status":"ok","timestamp":1759129484222,"user_tz":-180,"elapsed":14,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"b49d6a95-574a-4ce5-e23f-eea49ba83603"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","Наилучшее количество нейронов во втором слое: 100\n","Точность: 0.9423\n"]}]},{"cell_type":"code","source":["# Сбор результатов\n","results = {\n"," '0 слоев': {'нейроны_1': '-', 'нейроны_2': '-', 'точность': scores_0[1]},\n"," '1 слой_100': {'нейроны_1': 100, 'нейроны_2': '-', 'точность': scores_1[100][1]},\n"," '1 слой_300': {'нейроны_1': 300, 'нейроны_2': '-', 'точность': scores_1[300][1]},\n"," '1 слой_500': {'нейроны_1': 500, 'нейроны_2': '-', 'точность': scores_1[500][1]},\n"," '2 слоя_50': {'нейроны_1': best_units_1, 'нейроны_2': 50, 'точность': scores_2[50][1]},\n"," '2 слоя_100': {'нейроны_1': best_units_1, 'нейроны_2': 100, 'точность': scores_2[100][1]}\n","}"],"metadata":{"id":"p0aeriYzShJk"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Создаем DataFrame из результатов\n","df_results = pd.DataFrame([\n"," {'Кол-во скрытых слоев': 0, 'Нейроны_1_слоя': '-', 'Нейроны_2_слоя': '-', 'Точность': results['0 слоев']['точность']},\n"," {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 100, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_100']['точность']},\n"," {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 300, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_300']['точность']},\n"," {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 500, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_500']['точность']},\n"," {'Кол-во скрытых слоев': 2, 'Нейроны_1_слоя': best_units_1, 'Нейроны_2_слоя': 50, 'Точность': results['2 слоя_50']['точность']},\n"," {'Кол-во скрытых слоев': 2, 'Нейроны_1_слоя': best_units_1, 'Нейроны_2_слоя': 100, 'Точность': results['2 слоя_100']['точность']}\n","])\n","\n","print(\" \" * 20 + \"ТАБЛИЦА РЕЗУЛЬТАТОВ\")\n","print(\"=\" * 70)\n","# print(df_results.to_string(index=False, formatters={\n","# 'Точность': '{:.4f}'.format\n","# }))\n","print(df_results.reset_index(drop=True))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"SHr6z7jbSmOG","executionInfo":{"status":"ok","timestamp":1759130442386,"user_tz":-180,"elapsed":33,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"2d40f526-7756-4554-f110-2242e34e58a0"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":[" ТАБЛИЦА РЕЗУЛЬТАТОВ\n","======================================================================\n"," Кол-во скрытых слоев Нейроны_1_слоя Нейроны_2_слоя Точность\n","0 0 - - 0.9233\n","1 1 100 - 0.9422\n","2 1 300 - 0.9377\n","3 1 500 - 0.9312\n","4 2 100 50 0.9418\n","5 2 100 100 0.9423\n"]}]},{"cell_type":"code","source":["# Выбор наилучшей модели\n","best_model_type = max(results.items(), key=lambda x: x[1]['точность'])[0]\n","best_accuracy = results[best_model_type]['точность']\n","print(f\"\\nНаилучшая архитектура: {best_model_type}\")\n","print(f\"Точность: {best_accuracy:.4f}\")"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"PTC5CUJeWQ_V","executionInfo":{"status":"ok","timestamp":1759130490602,"user_tz":-180,"elapsed":41,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"e8009546-5876-4427-9815-9aac53db8593"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","Наилучшая архитектура: 2 слоя_100\n","Точность: 0.9423\n"]}]},{"cell_type":"code","source":["# Определение наилучшей модели\n","if '0' in best_model_type:\n"," best_model = model_0\n","elif '1' in best_model_type:\n"," best_neurons = int(best_model_type.split('_')[1])\n"," best_model = models_1[best_neurons]\n","else:\n"," best_neurons_2 = int(best_model_type.split('_')[1])\n"," best_model = models_2[best_neurons_2]\n"],"metadata":{"id":"JRPRpppHWV8-"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# Сохранение модели\n","best_model.save('best_mnist_model.keras')"],"metadata":{"id":"wIlYoP_HSFph"},"execution_count":null,"outputs":[]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":517},"id":"Kh6-u-8OoHny","executionInfo":{"status":"ok","timestamp":1759132236751,"user_tz":-180,"elapsed":178,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"7c89ce31-3967-41bb-ff79-6e77e7f5d19b"},"outputs":[{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 29ms/step\n","NN output: [[5.8587279e-06 9.7018647e-01 6.0002012e-03 5.5828933e-03 7.1756593e-05\n"," 7.2469590e-03 3.2864737e-03 3.9730189e-04 6.0582636e-03 1.1638567e-03]]\n"]},{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGW9JREFUeJzt3X9MVff9x/HXBfVqK1yGCJdbkaK2ulRlqVNG2jIbicA2468l2vUPXYxOh83UtV1YVrXbEjaXdE0XZ/eXrlnVzmxqao2LxYLZhjZajTG2RAgbGH7YmnCvYkEDn+8ffnvXW0G9cK9vLj4fySeRe87hvnt65enhXi4e55wTAAD3WZL1AACABxMBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJkZYD/BVvb29amlpUUpKijwej/U4AIAoOed09epVBQIBJSX1f50z5ALU0tKinJwc6zEAAIPU3NysCRMm9Lt9yH0LLiUlxXoEAEAM3O3redwCtH37dj366KMaPXq0CgoK9OGHH97TcXzbDQCGh7t9PY9LgN555x1t2rRJW7Zs0UcffaT8/HyVlJTo8uXL8bg7AEAicnEwZ84cV15eHv64p6fHBQIBV1lZeddjg8Ggk8RisVisBF/BYPCOX+9jfgV048YNnT59WsXFxeHbkpKSVFxcrNra2tv27+7uVigUilgAgOEv5gH67LPP1NPTo6ysrIjbs7Ky1NbWdtv+lZWV8vl84cUr4ADgwWD+KriKigoFg8Hwam5uth4JAHAfxPzngDIyMpScnKz29vaI29vb2+X3+2/b3+v1yuv1xnoMAMAQF/MroFGjRmnWrFmqqqoK39bb26uqqioVFhbG+u4AAAkqLu+EsGnTJq1YsULf/OY3NWfOHL3++uvq7OzUD3/4w3jcHQAgAcUlQMuWLdOnn36qzZs3q62tTd/4xjd05MiR216YAAB4cHmcc856iC8LhULy+XzWYwAABikYDCo1NbXf7eavggMAPJgIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACAiRHWAwAPoq1bt0Z9zNq1a6M+xu/3R30McL9wBQQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmODNSAEDP/rRj6I+5r333ovDJIAdroAAACYIEADARMwDtHXrVnk8nog1bdq0WN8NACDBxeU5oCeeeELvv//+/+5kBE81AQAixaUMI0aM4DcxAgDuKC7PAV28eFGBQECTJk3S888/r6ampn737e7uVigUilgAgOEv5gEqKCjQrl27dOTIEe3YsUONjY165plndPXq1T73r6yslM/nC6+cnJxYjwQAGII8zjkXzzvo6OhQbm6uXnvtNa1ateq27d3d3eru7g5/HAqFiBCGvdbW1qiPOXz4cNTH9PV3DrhfgsGgUlNT+90e91cHpKWl6fHHH1d9fX2f271er7xeb7zHAAAMMXH/OaBr166poaFB2dnZ8b4rAEACiXmAXnzxRdXU1Og///mP/v3vf2vx4sVKTk7Wc889F+u7AgAksJh/C+7SpUt67rnndOXKFY0fP15PP/20Tpw4ofHjx8f6rgAACSzmAdq7d2+sPyUASR9//LH1CEBM8V5wAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAICJuP9COmC4W7BgQdTHpKenx2ESILFwBQQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATvBs2MEhpaWlRHzNiRPR/9Xbs2BH1McBQxhUQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCNyMFBsnj8UR9TFJS9P/26+zsjPoYYCjjCggAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMMGbkQKD5JyL+pje3t44TAIkFq6AAAAmCBAAwETUATp+/LgWLFigQCAgj8ejAwcORGx3zmnz5s3Kzs7WmDFjVFxcrIsXL8ZqXgDAMBF1gDo7O5Wfn6/t27f3uX3btm1644039Oabb+rkyZN6+OGHVVJSoq6u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\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["Real mark: 1\n","NN answer: 1\n"]}],"source":["# вывод тестового изображения и результата распознавания (1)\n","n = 123\n","result = best_model.predict(X_test[n:n+1])\n","print('NN output:', result)\n","plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))\n","plt.show()\n","print('Real mark: ', str(np.argmax(y_test[n])))\n","print('NN answer: ', str(np.argmax(result)))"]},{"cell_type":"code","source":["# вывод тестового изображения и результата распознавания (1)\n","n = 353\n","result = best_model.predict(X_test[n:n+1])\n","print('NN output:', result)\n","plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))\n","plt.show()\n","print('Real mark: ', str(np.argmax(y_test[n])))\n","print('NN answer: ', str(np.argmax(result)))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":517},"id":"WVGJRtVZc8V-","executionInfo":{"status":"ok","timestamp":1759132262259,"user_tz":-180,"elapsed":284,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"5d4ed790-d7ce-4569-d667-49733f75e3cb"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n","NN output: [[5.6045882e-02 2.3120556e-06 3.2519495e-01 6.1816531e-01 2.2406326e-08\n"," 2.7827255e-04 7.9103382e-05 1.1205349e-06 2.1714537e-04 1.5997215e-05]]\n"]},{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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AgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkmI+0lw4cP91yzePFizzUffvih55rKykrPNZJ05MiRuOr6sv/85z+ea9avX++5ZtKkSZ5rGhsbPdesXr3ac40k7dq1K646rxoaGjzXxDMZ6bBhwzzXSFJ6errnGiYw/fq4AgIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGDC55xz1k2cLBKJKBAIWLdxRiNGjPBcM3XqVM81f/rTnzzX5OTkeK4JhUKeayTp/vvv91zzwgsvxLWvgSYlJcVzzRdffOG5pru723NNvK688krPNe+++67nmiFDvM+h/Mknn3iukaT8/HzPNfH+exqIwuGw0tLSTrueKyAAgAkCCABgwnMAbdu2TfPmzVNubq58Pp82bdoUs/6WW26Rz+eLGaWlpYnqFwAwQHgOoPb2duXn52vNmjWn3aa0tFQHDx6Mjg0bNpxTkwCAgcfz3byysjKVlZWdcRu/369gMBh3UwCAgS8p94CqqqqUlZWlSZMmacmSJTp8+PBpt+3s7FQkEokZAICBL+EBVFpaqueff16VlZX61a9+perqapWVlen48eM9bl9RUaFAIBAdY8aMSXRLAIA+yPsD9WexcOHC6J+nTp2qadOmacKECaqqqtKcOXNO2X7FihVavnx59HUkEiGEAOA8kPTHsMePH6/MzEw1NDT0uN7v9ystLS1mAAAGvqQH0P79+3X48OG4vqEPABi4PH8Ed+TIkZirmaamJu3atUsZGRnKyMjQI488ogULFigYDKqxsVH33XefJk6cqJKSkoQ2DgDo3zwH0I4dO3TttddGX395/2bRokV66qmntHv3bv3hD39Qa2urcnNzNXfuXP3iF7+Q3+9PXNcAgH7PcwDNnj1bZ5q/9K9//es5NdQffPOb3/RcU11d7bnG5/N5rolHvN/Zevzxxz3XxDOh5ssvv+y5pjcn4YxHV1eXdQtn1NMDQ2fz+9//3nNNPBOLxuO9996Lq46JRZOLueAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACZ6ZyraAWbUqFGea44ePeq5ZsSIEZ5retOFF17ouebFF1/0XLN7927PNf/4xz88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1dWpuLg4umzQoEEqLi5WTU2NYWc29u7dq9zcXI0fP14333yz9u3bZ92SqaamJoVCoZjzIxAIqKCg4Lw8P6qqqpSVlaVJkyZpyZIlOnz4sHVLSRUOhyVJGRkZkqS6ujodO3Ys5nyYPHmyxo4dO6DPh68ehy+9+OKLyszM1JQpU7RixQodPXrUor3T6nOTkX7Vp59+quPHjys7OztmeXZ2tv71r38ZdWWjoKBA69at06RJk3Tw4EE98sgjuuaaa7Rnzx6lpqZat2ciFApJUo/nx5frzhelpaW64YYblJeXp8bGRj344IMqKytTTU2NBg8ebN1ewnV3d2vZsmWaNWuWpkyZIunE+ZCSkqL09PSYbQfy+dDTcZCkH/zgBxo3bpxyc3O1e/du3X///aqvr9ef//xnw25j9fkAwv+UlZVF/zxt2jQVFBRo3LhxeuWVV3Trrbcadoa+YOHChdE/T506VdOmTdOECRNUVVWlOXPmGHaWHOXl5dqzZ895cR/0TE53HO64447on6dOnaqcnBzNmTNHjY2NmjBhQm+32aM+/xFcZmamBg8efMpTLC0tLQoGg0Zd9Q3p6em67LLL1NDQYN2KmS/PAc6PU40fP16ZmZkD8vxYunSptmzZorfeeivm17cEg0F1dXWptbU1ZvuBej6c7jj0pKCgQJL61PnQ5wMoJSVF06dPV2VlZXRZd3e3KisrVVhYaNiZvSNHjqixsVE5OTnWrZjJy8tTMBiMOT8ikYi2b99+3p8f+/fv1+HDhwfU+eGc09KlS7Vx40a9+eabysvLi1k/ffp0DR06NOZ8qK+v1759+wbU+XC249CTXbt2SVLfOh+sn4L4Ol566SXn9/vdunXr3AcffODuuOMOl56e7kKhkHVrveqnP/2pq6qqck1NTe6dd95xxcXFLjMz0x06dMi6taRqa2tzO3fudDt37nSS3GOPPeZ27tzpPv74Y+ecc7/85S9denq627x5s9u9e7e77rrrXF5envv888+NO0+sMx2HtrY2d88997iamhrX1NTk3njjDfetb33LXXrppa6jo8O69YRZsmSJCwQCrqqqyh08eDA6jh49Gt1m8eLFbuzYse7NN990O3bscIWFha6wsNCw68Q723FoaGhwP//5z92OHTtcU1OT27x5sxs/frwrKioy7jxWvwgg55x78skn3dixY11KSoqbOXOmq62ttW6p1914440uJyfHpaSkuIsvvtjdeOONrqGhwbqtpHvrrbecpFPGokWLnHMnHsV+6KGHXHZ2tvP7/W7OnDmuvr7etukkONNxOHr0qJs7d6676KKL3NChQ924cePc7bffPuD+J62nv78kt3bt2ug2n3/+ufvxj3/sLrzwQnfBBRe466+/3h08eNCu6SQ423HYt2+fKyoqchkZGc7v97uJEye6e++914XDYdvGv4JfxwAAMNHn7wEBAAYmAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJv4PRZUo/Q3ITS8AAAAASUVORK5CYII=\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["Real mark: 3\n","NN answer: 3\n"]}]},{"cell_type":"code","execution_count":null,"metadata":{"id":"z5-YYw4uosUB"},"outputs":[],"source":["# загрузка собственного изображения (Цифры 2 и 7)\n","from PIL import Image\n","file_data_2 = Image.open('2.png')\n","file_data_7 = Image.open('7.png')\n","file_data_2 = file_data_2.convert('L') # перевод в градации серого\n","file_data_7 = file_data_7.convert('L') # перевод в градации серого\n","test_img_2 = np.array(file_data_2)\n","test_img_7 = np.array(file_data_7)"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":465},"id":"dv17bJVVuslg","executionInfo":{"status":"ok","timestamp":1759130765327,"user_tz":-180,"elapsed":156,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"d9b5b55c-75d9-4180-f93c-22befad0633c"},"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGmJJREFUeJzt3X9MVff9x/HX9QdX2nIvQ4TLnahoW12qsswpI21dO4nAkkarWbTtH7o0NThsZlnXlqUtdVtyO5esTReH/yyyJlXbJlVTs5i0WDDdwEZbY8w2IgQnjYCrifcqChr5fP8wvV9vBe3Fe3lfLs9HchK55xzuu2c3PHfg8sHjnHMCAGCUTbAeAAAwPhEgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgYpL1AN80ODioM2fOKCsrSx6Px3ocAECcnHO6cOGCgsGgJkwY/j4n5QJ05swZFRYWWo8BALhDXV1dmj59+rD7U+5bcFlZWdYjAAAS4HZfz5MWoG3btmnWrFmaMmWKSkpK9Nlnn32r8/i2GwCkh9t9PU9KgN59913V1NSorq5On3/+uYqLi1VeXq6zZ88m4+kAAGORS4IlS5a46urq6MfXrl1zwWDQhUKh254bDoedJDY2Nja2Mb6Fw+Fbfr1P+B3QlStXdPToUZWVlUUfmzBhgsrKytTS0nLT8QMDA4pEIjEbACD9JTxAX331la5du6b8/PyYx/Pz89XT03PT8aFQSH6/P7rxDjgAGB/M3wVXW1urcDgc3bq6uqxHAgCMgoT/HlBubq4mTpyo3t7emMd7e3sVCARuOt7r9crr9SZ6DABAikv4HVBGRoYWLVqkxsbG6GODg4NqbGxUaWlpop8OADBGJWUlhJqaGq1bt04//OEPtWTJEr355pvq6+vTz3/+82Q8HQBgDEpKgNasWaP//e9/evXVV9XT06Pvf//7OnDgwE1vTAAAjF8e55yzHuJGkUhEfr/fegwAwB0Kh8Py+XzD7jd/FxwAYHwiQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJiZZD4Cxq6KiIu5z6uvr4z5n1qxZcZ+DO3Pq1Km4z9myZUvc5zQ0NMR9DtIHd0AAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkWI8WIFhWVpF27dsV9TnZ29oieC6NrJAvAjmSh2ZFgAdP0wR0QAMAEAQIAmEh4gF577TV5PJ6Ybd68eYl+GgDAGJeUnwE98MAD+vjjj///SSbxoyYAQKyklGHSpEkKBALJ+NQAgDSRlJ8BnTx5UsFgULNnz9ZTTz2l06dPD3vswMCAIpFIzAYASH8JD1BJSYkaGhp04MAB1dfXq7OzUw8//LAuXLgw5PGhUEh+vz+6FRYWJnokAEAKSniAKisr9bOf/UwLFy5UeXm5/v73v+v8+fN67733hjy+trZW4XA4unV1dSV6JABACkr6uwOys7N1//33q729fcj9Xq9XXq832WMAAFJM0n8P6OLFi+ro6FBBQUGynwoAMIYkPEDPP/+8mpubderUKf3zn//U448/rokTJ+qJJ55I9FMBAMawhH8L7ssvv9QTTzyhc+fOadq0aXrooYfU2tqqadOmJfqpAABjmMc556yHuFEkEpHf77ceY1zp7u4e0Xn8rhfuVH9/f9znZGZmJmESJEM4HJbP5xt2P2vBAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmkv4H6TC6Kioq4j4n1RcV3b59e9znbNy4MQmTjD0vvfTSiM4LhUIJnmRoU6ZMGZXnQWriDggAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmPM45Zz3EjSKRiPx+v/UYY1Z3d3fc56T6atgej8d6hHHn8uXLcZ8zWitb19bWxn3O66+/noRJcDvhcFg+n2/Y/dwBAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmWIw0zaTyIpKStH379rjP2bhxYxImwa288cYbcZ+zefPmxA8yhP7+/rjPyczMTMIkuB0WIwUApCQCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwASLkaaZl156Ke5zQqHQiJ6LhUXT10gWqB3JQrijxePxWI8wLrEYKQAgJREgAICJuAN06NAhPfbYYwoGg/J4PNq7d2/MfuecXn31VRUUFCgzM1NlZWU6efJkouYFAKSJuAPU19en4uJibdu2bcj9W7du1VtvvaXt27fr8OHDuvvuu1VeXj6iPyIFAEhfk+I9obKyUpWVlUPuc87pzTff1Msvv6wVK1ZIkt5++23l5+dr7969Wrt27Z1NCwBIGwn9GVBnZ6d6enpUVlYWfczv96ukpEQtLS1DnjMwMKBIJBKzAQDSX0ID1NPTI0nKz8+PeTw/Pz+675tCoZD8fn90KywsTORIAIAUZf4uuNraWoXD4ejW1dVlPRIAYBQkNECBQECS1NvbG/N4b29vdN83eb1e+Xy+mA0AkP4SGqCioiIFAgE1NjZGH4tEIjp8+LBKS0sT+VQAgDEu7nfBXbx4Ue3t7dGPOzs7dezYMeXk5GjGjBnavHmzfv/73+u+++5TUVGRXnnlFQWDQa1cuTKRcwMAxri4A3TkyBE9+uij0Y9ramokSevWrVNDQ4NeeOEF9fX1acOGDTp//rweeughHThwYERrSwEA0heLkQK4SVVVVdzn1NfXJ2GSxGAxUhssRgoASEkECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwEfefYwCQ/urq6qxHGNbu3butR0CCcAcEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJjwOOec9RA3ikQi8vv91mMA41qKfVmIkZmZGfc5/f39SZgEtxMOh+Xz+Ybdzx0QAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGBikvUAAJKnqqrKeoSEY2HR9MEdEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABggsVIgTRWV1dnPcIt7d6923oEGOIOCABgggABAEzEHaBDhw7pscceUzAYlMfj0d69e2P2r1+/Xh6PJ2arqKhI1LwAgDQRd4D6+vpUXFysbdu2DXtMRUWFuru7o9uuXbvuaEgAQPqJ+00IlZWVqqysvOUxXq9XgUBgxEMBANJfUn4G1NTUpLy8PM2dO1cbN27UuXPnhj12YGBAkUgkZgMApL+EB6iiokJvv/22Ghsb9Yc//EHNzc2qrKzUtWvXhjw+FArJ7/dHt8LCwkSPBABIQQn/PaC1a9dG/71gwQItXLhQc+bMUVNTk5YtW3bT8bW1taqpqYl+HIlEiBAAjANJfxv27NmzlZubq/b29iH3e71e+Xy+mA0AkP6SHqAvv/xS586dU0FBQbKfCgAwhsT9LbiLFy/G3M10dnbq2LFjysnJUU5OjrZs2aLVq1crEAioo6NDL7zwgu69916Vl5cndHAAwNgWd4COHDmiRx99NPrx1z+/Wbdunerr63X8+HH97W9/0/nz5xUMBrV8+XL97ne/k9frTdzUAIAxz+Occ9ZD3CgSicjv91uPAaScqqqquM+pr69PwiSJk5mZGfc5/f39SZgEyRAOh2/5c33WggMAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAICJhP9JbgC3V1FREfc5oVAoCZMkzu7du+M+h5WtxzfugAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEx7nnLMe4kaRSER+v996DOBbG8nCort27Yr7nOzs7LjPGU2ZmZlxn8NipOktHA7L5/MNu587IACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADAxCTrAYBUwsKi123fvj3uc1hYFPHiDggAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMMFipEhLI1lUVEq/hUVHsqioJG3cuDHBkwA34w4IAGCCAAEATMQVoFAopMWLFysrK0t5eXlauXKl2traYo7p7+9XdXW1pk6dqnvuuUerV69Wb29vQocGAIx9cQWoublZ1dXVam1t1UcffaSrV69q+fLl6uvrix7z3HPP6cMPP9T777+v5uZmnTlzRqtWrUr44ACAsS2uNyEcOHAg5uOGhgbl5eXp6NGjWrp0qcLhsP76179q586d+slPfiJJ2rFjh773ve+ptbVVP/rRjxI3OQBgTLujnwGFw2FJUk5OjiTp6NGjunr1qsrKyqLHzJs3TzNmzFBLS8uQn2NgYECRSCRmAwCkvxEHaHBwUJs3b9aDDz6o+fPnS5J6enqUkZFx09tS8/Pz1dPTM+TnCYVC8vv90a2wsHCkIwEAxpARB6i6ulonTpzQ7t2772iA2tpahcPh6NbV1XVHnw8AMDaM6BdRN23apP379+vQoUOaPn169PFAIKArV67o/PnzMXdBvb29CgQCQ34ur9crr9c7kjEAAGNYXHdAzjlt2rRJe/bs0cGDB1VUVBSzf9GiRZo8ebIaGxujj7W1ten06dMqLS1NzMQAgLQQ1x1QdXW1du7cqX379ikrKyv6cx2/36/MzEz5/X49/fTTqqmpUU5Ojnw+n5599lmVlpbyDjgAQIy4AlRfXy9JeuSRR2Ie37Fjh9avXy9JeuONNzRhwgStXr1aAwMDKi8v11/+8peEDAsASB8e55yzHuJGkUhEfr/fegykkJEsLDqSRUWl9FtYlEVFYSkcDsvn8w27n7XgAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYGJEfxEVGKnRWtk6lVe1lljZGpC4AwIAGCFAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATHicc856iBtFIhH5/X7rMZAk3d3dcZ8TCASSMAmQHKdOnYr7nC1btsR9TkNDQ9znjLZwOCyfzzfsfu6AAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATLEaKUXX58uW4z5kyZUoSJgFSR39/f9znZGZmJmGSxGIxUgBASiJAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATEyyHgDjy5YtW+I+JxQKJWESIHU0NDRYj2CCOyAAgAkCBAAwEVeAQqGQFi9erKysLOXl5WnlypVqa2uLOeaRRx6Rx+OJ2aqqqhI6NABg7IsrQM3NzaqurlZra6s++ugjXb16VcuXL1dfX1/Mcc8884y6u7uj29atWxM6NABg7IvrTQgHDhyI+bihoUF5eXk6evSoli5dGn38rrvuUiAQSMyEAIC0dEc/AwqHw5KknJycmMffeecd5ebmav78+aqtrdWlS5eG/RwDAwOKRCIxGwAg/Y34bdiDg4PavHmzHnzwQc2fPz/6+JNPPqmZM2cqGAzq+PHjevHFF9XW1qYPPvhgyM8TCoVG9NZcAMDYNuIAVVdX68SJE/r0009jHt+wYUP03wsWLFBBQYGWLVumjo4OzZkz56bPU1tbq5qamujHkUhEhYWFIx0LADBGjChAmzZt0v79+3Xo0CFNnz79lseWlJRIktrb24cMkNfrldfrHckYAIAxLK4AOef07LPPas+ePWpqalJRUdFtzzl27JgkqaCgYEQDAgDSU1wBqq6u1s6dO7Vv3z5lZWWpp6dHkuT3+5WZmamOjg7t3LlTP/3pTzV16lQdP35czz33nJYuXaqFCxcm5T8AADA2xRWg+vp6Sdd/2fRGO3bs0Pr165WRkaGPP/5Yb775pvr6+lRYWKjVq1fr5ZdfTtjAAID0EPe34G6lsLBQzc3NdzQQAGB88LjbVWWURSIR+f1+6zEAAHcoHA7L5/MNu5/FSAEAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADCRcgFyzlmPAABIgNt9PU+5AF24cMF6BABAAtzu67nHpdgtx+DgoM6cOaOsrCx5PJ6YfZFIRIWFherq6pLP5zOa0B7X4Tquw3Vch+u4DtelwnVwzunChQsKBoOaMGH4+5xJozjTtzJhwgRNnz79lsf4fL5x/QL7GtfhOq7DdVyH67gO11lfB7/ff9tjUu5bcACA8YEAAQBMjKkAeb1e1dXVyev1Wo9iiutwHdfhOq7DdVyH68bSdUi5NyEAAMaHMXUHBABIHwQIAGCCAAEATBAgAICJMROgbdu2adasWZoyZYpKSkr02WefWY806l577TV5PJ6Ybd68edZjJd2hQ4f02GOPKRgMyuPxaO/evTH7nXN69dVXVVBQoMzMTJWVlenkyZM2wybR7a7D+vXrb3p9VFRU2AybJKFQSIsXL1ZWVpby8vK0cuVKtbW1xRzT39+v6upqTZ06Vffcc49Wr16t3t5eo4mT49tch0ceeeSm10NVVZXRxEMbEwF69913VVNTo7q6On3++ecqLi5WeXm5zp49az3aqHvggQfU3d0d3T799FPrkZKur69PxcXF2rZt25D7t27dqrfeekvbt2/X4cOHdffdd6u8vFz9/f2jPGly3e46SFJFRUXM62PXrl2jOGHyNTc3q7q6Wq2trfroo4909epVLV++XH19fdFjnnvuOX344Yd6//331dzcrDNnzmjVqlWGUyfet7kOkvTMM8/EvB62bt1qNPEw3BiwZMkSV11dHf342rVrLhgMulAoZDjV6Kurq3PFxcXWY5iS5Pbs2RP9eHBw0AUCAffHP/4x+tj58+ed1+t1u3btMphwdHzzOjjn3Lp169yKFStM5rFy9uxZJ8k1Nzc7567/bz958mT3/vvvR4/597//7SS5lpYWqzGT7pvXwTnnfvzjH7tf/vKXdkN9Cyl/B3TlyhUdPXpUZWVl0ccmTJigsrIytbS0GE5m4+TJkwoGg5o9e7aeeuopnT592nokU52dnerp6Yl5ffj9fpWUlIzL10dTU5Py8vI0d+5cbdy4UefOnbMeKanC4bAkKScnR5J09OhRXb16Neb1MG/ePM2YMSOtXw/fvA5fe+edd5Sbm6v58+ertrZWly5dshhvWCm3GOk3ffXVV7p27Zry8/NjHs/Pz9d//vMfo6lslJSUqKGhQXPnzlV3d7e2bNmihx9+WCdOnFBWVpb1eCZ6enokacjXx9f7xouKigqtWrVKRUVF6ujo0G9+8xtVVlaqpaVFEydOtB4v4QYHB7V582Y9+OCDmj9/vqTrr4eMjAxlZ2fHHJvOr4ehroMkPfnkk5o5c6aCwaCOHz+uF198UW1tbfrggw8Mp42V8gHC/6usrIz+e+HChSopKdHMmTP13nvv6emnnzacDKlg7dq10X8vWLBACxcu1Jw5c9TU1KRly5YZTpYc1dXVOnHixLj4OeitDHcdNmzYEP33ggULVFBQoGXLlqmjo0Nz5swZ7TGHlPLfgsvNzdXEiRNvehdLb2+vAoGA0VSpITs7W/fff7/a29utRzHz9WuA18fNZs+erdzc3LR8fWzatEn79+/XJ598EvPnWwKBgK5cuaLz58/HHJ+ur4fhrsNQSkpKJCmlXg8pH6CMjAwtWrRIjY2N0ccGBwfV2Nio0tJSw8nsXbx4UR0dHSooKLAexUxRUZECgUDM6yMSiejw4cPj/vXx5Zdf6ty5c2n1+nDOadOmTdqzZ48OHjyooqKimP2LFi3S5MmTY14PbW1tOn36dFq9Hm53HYZy7NgxSUqt14P1uyC+jd27dzuv1+saGhrcv/71L7dhwwaXnZ3tenp6rEcbVb/61a9cU1OT6+zsdP/4xz9cWVmZy83NdWfPnrUeLakuXLjgvvjiC/fFF184Se5Pf/qT++KLL9x///tf55xzr7/+usvOznb79u1zx48fdytWrHBFRUXu8uXLxpMn1q2uw4ULF9zzzz/vWlpaXGdnp/v444/dD37wA3ffffe5/v5+69ETZuPGjc7v97umpibX3d0d3S5duhQ9pqqqys2YMcMdPHjQHTlyxJWWlrrS0lLDqRPvdtehvb3d/fa3v3VHjhxxnZ2dbt++fW727Nlu6dKlxpPHGhMBcs65P//5z27GjBkuIyPDLVmyxLW2tlqPNOrWrFnjCgoKXEZGhvvud7/r1qxZ49rb263HSrpPPvnESbppW7dunXPu+luxX3nlFZefn++8Xq9btmyZa2trsx06CW51HS5duuSWL1/upk2b5iZPnuxmzpzpnnnmmbT7P2lD/fdLcjt27Igec/nyZfeLX/zCfec733F33XWXe/zxx113d7fd0Elwu+tw+vRpt3TpUpeTk+O8Xq+799573a9//WsXDodtB/8G/hwDAMBEyv8MCACQnggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAE/8Hyf2noiyd3fIAAAAASUVORK5CYII=\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 31ms/step\n","I think it's 3\n"]}],"source":["# вывод собственного изображения (цифра 2)\n","plt.imshow(test_img_2, cmap=plt.get_cmap('gray'))\n","plt.show()\n","# предобработка\n","test_img_2 = test_img_2 / 255\n","test_img_2 = test_img_2.reshape(1, num_pixels)\n","# распознавание\n","result = best_model.predict(test_img_2)\n","print('I think it\\'s ', np.argmax(result))"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":465},"id":"rhNzATtGuxbD","executionInfo":{"status":"ok","timestamp":1759130799101,"user_tz":-180,"elapsed":651,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"11cd1569-d370-4070-c8de-02035699d8bb"},"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n","I think it's 7\n"]}],"source":["# вывод собственного изображения (цифра 7)\n","plt.imshow(test_img_7, cmap=plt.get_cmap('gray'))\n","plt.show()\n","# предобработка\n","test_img_7 = test_img_7 / 255\n","test_img_7 = test_img_7.reshape(1, num_pixels)\n","# распознавание\n","result = best_model.predict(test_img_7)\n","print('I think it\\'s ', np.argmax(result))"]},{"cell_type":"code","source":["# Тестирование на собственных повернутых изображениях\n","from PIL import Image\n","file_data_2_90 = Image.open('2_90.png')\n","file_data_7_90 = Image.open('7_90.png')\n","file_data_2_90 = file_data_2_90.convert('L') # перевод в градации серого\n","file_data_7_90 = file_data_7_90.convert('L') # перевод в градации серого\n","test_img_2_90 = np.array(file_data_2_90)\n","test_img_7_90= np.array(file_data_7_90)"],"metadata":{"id":"4rIUmwfYXcgh"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# вывод собственного изображения (цифра 2)\n","plt.imshow(test_img_2_90, cmap=plt.get_cmap('gray'))\n","plt.show()\n","# предобработка\n","test_img_2_90 = test_img_2_90 / 255\n","test_img_2_90 = test_img_2_90.reshape(1, num_pixels)\n","# распознавание\n","result = best_model.predict(test_img_2_90)\n","print('I think it\\'s ', np.argmax(result))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":465},"id":"xeYNkU0OZqg2","executionInfo":{"status":"ok","timestamp":1759131775554,"user_tz":-180,"elapsed":445,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"b17a7b99-ce57-45fa-c069-74ea8374c3d3"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGfdJREFUeJzt3V9M1ff9x/HX8Q9H28JhiHCgoqK2utQ/y5wyYsvsJAJbjP8utOuFNkajw2bK2m4sq9RtCc4lXdPF6S4WWbOqncnU1AsSiwWzDW2kGmO2ETF0YhRcTTgHsaKBz+/CX896qmjP8Rze5xyej+STyDnfr+fd7448dzjHjx7nnBMAAENshPUAAIDhiQABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATo6wH+LKBgQFduXJF6enp8ng81uMAACLknFNPT4/y8/M1YsTgr3MSLkBXrlxRQUGB9RgAgEfU0dGhCRMmDHp/wv0ILj093XoEAEAMPOz7edwCtGvXLk2ePFljxoxRUVGRPvroo690Hj92A4DU8LDv53EJ0HvvvaeqqirV1NTo448/1pw5c1RWVqZr167F4+EAAMnIxcH8+fNdZWVl6Ov+/n6Xn5/vamtrH3puIBBwklgsFouV5CsQCDzw+33MXwHdvn1bLS0tKi0tDd02YsQIlZaWqrm5+Z7j+/r6FAwGwxYAIPXFPECffvqp+vv7lZubG3Z7bm6uOjs77zm+trZWPp8vtPgEHAAMD+afgquurlYgEAitjo4O65EAAEMg5n8PKDs7WyNHjlRXV1fY7V1dXfL7/fcc7/V65fV6Yz0GACDBxfwVUFpamubOnauGhobQbQMDA2poaFBxcXGsHw4AkKTishNCVVWV1qxZo29961uaP3++3nrrLfX29uqll16Kx8MBAJJQXAK0atUq/fe//9W2bdvU2dmpb3zjG6qvr7/ngwkAgOHL45xz1kN8UTAYlM/nsx4DAPCIAoGAMjIyBr3f/FNwAIDhiQABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEyMsh4AAFLJ2rVrIz5n9+7dEZ9TV1cX8TmStGnTpqjOiwdeAQEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJjzOOWc9xBcFg0H5fD7rMQAgKu3t7RGfM3ny5NgPMgiPxzNkjxUIBJSRkTHo/bwCAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMjLIeAABSyVBuLJrseAUEADBBgAAAJmIeoDfeeEMejydszZgxI9YPAwBIcnF5D+iZZ57RBx988L8HGcVbTQCAcHEpw6hRo+T3++PxWwMAUkRc3gO6cOGC8vPzNWXKFL344ou6dOnSoMf29fUpGAyGLQBA6ot5gIqKilRXV6f6+nrt3r1b7e3teu6559TT03Pf42tra+Xz+UKroKAg1iMBABKQxznn4vkA3d3dmjRpkt58802tW7funvv7+vrU19cX+joYDBIhAEkrzt9SH5nH4xmyxwoEAsrIyBj0/rh/OiAzM1NPP/202tra7nu/1+uV1+uN9xgAgAQT978HdOPGDV28eFF5eXnxfigAQBKJeYBeeeUVNTU16ZNPPtE//vEPLV++XCNHjtQLL7wQ64cCACSxmP8I7vLly3rhhRd0/fp1jR8/Xs8++6xOnjyp8ePHx/qhAABJLO4fQohUMBiUz+ezHgMAopJg31LvkUgfQmAvOACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADARNz/QTqkrp/+9KcRn1NTUxPxOWPGjIn4nGgdOHAg4nNeeumliM+5detWxOcAqYZXQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADDhcc456yG+KBgMyufzWY+RENauXRvxObt37474nKHcbRrRG6qduiV2634UCfYt9R4ej2fIHisQCCgjI2PQ+3kFBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYYDPSIcLGokgmQ7XxaSpueppg31LvwWakAIBhjwABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwwWakQ6S9vT3i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\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 91ms/step\n","I think it's 7\n"]}]},{"cell_type":"code","source":["# вывод собственного изображения (цифра 7)\n","plt.imshow(test_img_7_90, cmap=plt.get_cmap('gray'))\n","plt.show()\n","# предобработка\n","test_img_7_90 = test_img_7_90 / 255\n","test_img_7_90 = test_img_7_90.reshape(1, num_pixels)\n","# распознавание\n","result = best_model.predict(test_img_7_90)\n","print('I think it\\'s ', np.argmax(result))"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":465},"id":"8JZajicXbNSA","executionInfo":{"status":"ok","timestamp":1759131800104,"user_tz":-180,"elapsed":238,"user":{"displayName":"Legal People","userId":"00818738730090246603"}},"outputId":"016e8c12-472d-4a15-c420-cd955edef901"},"execution_count":null,"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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AIDxKawAlZSU6NChQzpx4oTi4+PV0dEhSfL5fJo6dapaWlp06NAh/eAHP9C0adN08eJF7d69W7m5uVqyZElU/gMAAGNUOD/30RCv81VWVjrnnLty5YrLzc11SUlJzuv1uvnz57uXX3552NcBv8zv95u/bslisVisB1/Dfe/3/H9YYkYgEJDP57MeAwDwgPx+vxISEobczrXgAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmYi5AzjnrEQAAETDc9/OYC1B3d7f1CACACBju+7nHxdhTjv7+fl27dk3x8fHyeDwh2wKBgGbOnKm2tjYlJCQYTWiP83AP5+EezsM9nId7YuE8OOfU3d2tjIwMTZgw9POcSaM409cyYcIEzZgx4777JCQkPNQPsC9wHu7hPNzDebiH83CP9Xnw+XzD7hNzL8EBAB4OBAgAYGJMBcjr9aq8vFxer9d6FFOch3s4D/dwHu7hPNwzls5DzL0JAQDwcBhTz4AAAOMHAQIAmCBAAAATBAgAYGLMBGj//v2aM2eOpkyZouzsbH388cfWI426119/XR6PJ2QtXLjQeqyoO3PmjNasWaOMjAx5PB4dP348ZLtzTnv27FF6erqmTp2qvLw8Xb582WbYKBruPGzdunXA46OgoMBm2CipqKjQsmXLFB8fr5SUFK1bt05NTU0h+/T29qqkpETTpk3TY489po0bN6qzs9No4uj4Oudh5cqVAx4PRUVFRhMPbkwE6P3331dpaanKy8v1ySefKCsrS/n5+bp+/br1aKPuqaeeUnt7e3D97W9/sx4p6np6epSVlaX9+/cPun3fvn16++23dfDgQZ09e1aPPvqo8vPz1dvbO8qTRtdw50GSCgoKQh4fhw8fHsUJo6+urk4lJSVqaGjQqVOndOfOHa1evVo9PT3BfXbv3q0PPvhAR48eVV1dna5du6YNGzYYTh15X+c8SNL27dtDHg/79u0zmngIbgxYvny5KykpCX589+5dl5GR4SoqKgynGn3l5eUuKyvLegxTktyxY8eCH/f397u0tDT329/+NnhbV1eX83q97vDhwwYTjo6vngfnnNuyZYtbu3atyTxWrl+/7iS5uro659y9r/3kyZPd0aNHg/v861//cpJcfX291ZhR99Xz4Jxz3/ve99xPfvITu6G+hph/BnT79m01NjYqLy8veNuECROUl5en+vp6w8lsXL58WRkZGZo7d66ef/55XblyxXokU62trero6Ah5fPh8PmVnZz+Uj4/a2lqlpKRowYIFKi4u1o0bN6xHiiq/3y9JSkpKkiQ1Njbqzp07IY+HhQsXatasWeP68fDV8/CF9957T8nJyVq0aJHKysp069Yti/GGFHMXI/2qzz77THfv3lVqamrI7ampqfr3v/9tNJWN7OxsVVVVacGCBWpvb9fevXv1zDPP6NKlS4qPj7cez0RHR4ckDfr4+GLbw6KgoEAbNmxQZmamWlpa9POf/1yFhYWqr6/XxIkTrceLuP7+fu3atUsrVqzQokWLJN17PMTFxSkxMTFk3/H8eBjsPEjSj370I82ePVsZGRm6ePGiXn31VTU1Nemvf/2r4bShYj5A+J/CwsLgv5csWaLs7GzNnj1bf/nLX7Rt2zbDyRALNm/eHPz34sWLtWTJEs2bN0+1tbVatWqV4WTRUVJSokuXLj0UPwe9n6HOw44dO4L/Xrx4sdLT07Vq1Sq1tLRo3rx5oz3moGL+Jbjk5GRNnDhxwLtYOjs7lZaWZjRVbEhMTNSTTz6p5uZm61HMfPEY4PEx0Ny5c5WcnDwuHx87d+7UyZMn9dFHH4X8+Za0tDTdvn1bXV1dIfuP18fDUOdhMNnZ2ZIUU4+HmA9QXFycli5dqpqamuBt/f39qqmpUU5OjuFk9m7evKmWlhalp6dbj2ImMzNTaWlpIY+PQCCgs2fPPvSPj6tXr+rGjRvj6vHhnNPOnTt17NgxnT59WpmZmSHbly5dqsmTJ4c8HpqamnTlypVx9XgY7jwM5sKFC5IUW48H63dBfB1HjhxxXq/XVVVVuX/+859ux44dLjEx0XV0dFiPNqp++tOfutraWtfa2ur+/ve/u7y8PJecnOyuX79uPVpUdXd3u/Pnz7vz5887Se7NN99058+fd//5z3+cc8698cYbLjEx0Z04ccJdvHjRrV271mVmZrrPP//cePLIut956O7udi+99JKrr693ra2t7sMPP3Tf/va33RNPPOF6e3utR4+Y4uJi5/P5XG1trWtvbw+uW7duBfcpKipys2bNcqdPn3bnzp1zOTk5Licnx3DqyBvuPDQ3N7tf/vKX7ty5c661tdWdOHHCzZ071+Xm5hpPHmpMBMg5537/+9+7WbNmubi4OLd8+XLX0NBgPdKo27Rpk0tPT3dxcXHu8ccfd5s2bXLNzc3WY0XdRx995CQNWFu2bHHO3Xsr9muvveZSU1Od1+t1q1atck1NTbZDR8H9zsOtW7fc6tWr3fTp093kyZPd7Nmz3fbt28fd/0kb7L9fkqusrAzu8/nnn7sf//jH7hvf+IZ75JFH3Pr16117e7vd0FEw3Hm4cuWKy83NdUlJSc7r9br58+e7l19+2fn9ftvBv4I/xwAAMBHzPwMCAIxPBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAICJ/wMdQ2nIWitXPQAAAABJRU5ErkJggg==\n"},"metadata":{}},{"output_type":"stream","name":"stdout","text":["\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n","I think it's 7\n"]}]},{"cell_type":"markdown","source":[],"metadata":{"id":"DQJNpFTOZ7Z6"}}],"metadata":{"accelerator":"GPU","colab":{"gpuType":"T4","provenance":[{"file_id":"1HorM0jtoJfNfcuh_uXJu8ODaEJ6xOUu-","timestamp":1759209370437}]},"kernelspec":{"display_name":"Python 3","name":"python3"},"language_info":{"name":"python"}},"nbformat":4,"nbformat_minor":0} \ No newline at end of file diff --git a/labworks/LW1/.ipynb_checkpoints/my_document-checkpoint.md b/labworks/LW1/.ipynb_checkpoints/my_document-checkpoint.md new file mode 100644 index 0000000..a8ee40a --- /dev/null +++ b/labworks/LW1/.ipynb_checkpoints/my_document-checkpoint.md @@ -0,0 +1,533 @@ + +## Отчёт по лабораторной работе №1 + +**Троянов Д.С., Чернов Д.Е. — А-01-22** + +--- + +## 1) В среде Google Colab создали блокнот. Импортировали необходимые библиотеки и модули. + +```python +# импорт модулей +import tensorflow as tf +from tensorflow import keras +from keras.datasets import mnist +from keras.models import Sequential +from keras.layers import Dense +from keras.utils import to_categorical +from sklearn.model_selection import train_test_split +import matplotlib.pyplot as plt +import numpy as np +from PIL import Image +import os + +# Укажем текущую директорию +os.chdir('/content/drive/MyDrive/Colab Notebooks/is_dnn/labworks/LW1') +``` + +--- + +## 2) Загрузили набор данных MNIST, содержащий размеченные изображения рукописных цифр. + +```python +# Загрузка датасета +(X_train_orig, y_train_orig), (X_test_orig, y_test_orig) = mnist.load_data() + +``` + +--- + +## 3) Разбили набор данных на обучающие и тестовые данные в соотношении 60 000:10 000 элементов. +При разбиении параметр `random_state` выбрали равным (4k – 1), где k - номер бригады, k = 6 ⇒ `random_state = 23`. + +```python +# разбиваем выборку на обучающую и тестовую выборку +X = np.concatenate((X_train_orig, X_test_orig)) +y = np.concatenate((y_train_orig, y_test_orig)) + + +X_train, X_test, y_train, y_test = train_test_split( + X, y, + test_size=10000, + train_size=60000, + random_state=3, +) + +# вывод размерности массивов данных +print('Shape of X train:', X_train.shape) +print('Shape of y train:', y_train.shape) +print('Shape of X test:', X_test.shape) +print('Shape of y test:', y_test.shape) +``` + +``` +Shape of X train: (60000, 28, 28) +Shape of y train: (60000,) +Shape of X test: (10000, 28, 28) +Shape of y test: (10000,) +``` + +--- + +## 4) Вывели первые 4 элемента обучающих данных (изображения и метки цифр). + +```python +# Вывод первых 4 изображений +fig, axes = plt.subplots(1, 4, figsize=(12, 3)) +for i in range(4): + axes[i].imshow(X_train[i], cmap='gray') + axes[i].set_title(f'Метка: {y_train[i]}') + axes[i].axis('off') +plt.tight_layout() +plt.show() +``` + +![4 цифры](paragraph_4.png) + + +# Были выведены цифры 7, 8, 2, 2 +--- + +## 5) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения нейронной сети. Входные данные должны принимать значения от 0 до 1, метки цифр должны быть закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных. + +```python +# развернем каждое изображение 28*28 в вектор 784 +num_pixels = X_train.shape[1] * X_train.shape[2] +X_train = X_train.reshape(X_train.shape[0], num_pixels) / 255 +X_test = X_test.reshape(X_test.shape[0], num_pixels) / 255 +print('Shape of transformed X train:', X_train.shape) +``` + +``` +Shape of transformed X train: (60000, 784) +``` + +```python +# переведем метки в one-hot +from keras.utils import to_categorical +y_train = to_categorical(y_train) +y_test = to_categorical(y_test) +print('Shape of transformed y train:', y_train.shape) +num_classes = y_train.shape[1] +``` + +``` +Shape of transformed y train: (60000, 10) +``` + +--- + +## 6) Реализовали модель однослойной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети. Вывели график функции ошибки на обучающих и валидационных данных по эпохам. + + +```python +model_0 = Sequential() +model_0.add(Dense(units=num_classes, input_dim=num_pixels, activation='softmax')) + +# Компиляция модели +model_0.compile(loss='categorical_crossentropy', + optimizer='sgd', + metrics=['accuracy']) + +# Вывод информации об архитектуре +print("Архитектура однослойной сети:") +model_0.summary() +``` + +![архитектура модели](architecture_of_1_layer_NN.png) + +``` +# Обучение модели +history_0 = model_0.fit(X_train, y_train, + validation_split=0.1, + epochs=50) +``` + +```python +# График функции ошибки по эпохам +plt.figure(figsize=(10, 6)) +plt.plot(history_0.history['loss'], label='Обучающая выборка') +plt.plot(history_0.history['val_loss'], label='Валидационная выборка') +plt.title('Функция ошибки по эпохам (Однослойная сеть)') +plt.xlabel('Эпохи') +plt.ylabel('Ошибка') +plt.legend() +plt.grid(True) +plt.show() +``` + +![график обучения](paragraph_6.png) + +--- + +## 7) Применили обученную модель к тестовым данным. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных. + +```python +# Оценка на тестовых данных +scores_0 = model_0.evaluate(X_test, y_test, verbose=0) +print("Результаты однослойной сети:") +print(f"Ошибка на тестовых данных: {scores_0[0]}") +print(f"Точность на тестовых данных: {scores_0[1]}") +``` + +``` +Результаты однослойной сети: + Ошибка на тестовых данных: 0.28625616431236267 + Точность на тестовых данных: 0.92330002784729 +``` + +--- + +## 8) Добавили в модель один скрытый и провели обучение и тестирование (повторить п. 6–7) при 100, 300, 500 нейронах в скрытом слое. По метрике качества классификации на тестовых данных выбрали наилучшее количество нейронов в скрытом слое. В качестве функции активации нейронов в скрытом слое использовали функцию `sigmoid`. + +```python +# Функция для создания и обучения модели +def create_and_train_model(hidden_units, model_name): + model = Sequential() + model.add(Dense(units=hidden_units, input_dim=num_pixels, activation='sigmoid')) + model.add(Dense(units=num_classes, activation='softmax')) + + model.compile(loss='categorical_crossentropy', + optimizer='sgd', + metrics=['accuracy']) + + history = model.fit(X_train, y_train, + validation_split=0.1, + epochs=50) + + scores = model.evaluate(X_test, y_test, verbose=0) + + return model, history, scores + +# Эксперименты с разным количеством нейронов +hidden_units_list = [100, 300, 500] +models_1 = {} +histories_1 = {} +scores_1 = {} + +# Обучение сетей с одним скрытым слоем +for units in hidden_units_list: + print(f" +Обучение модели с {units} нейронами...") + model, history, scores = create_and_train_model(units, f"model_{units}") + + models_1[units] = model + histories_1[units] = history + scores_1[units] = scores + + print(f"Точность: {scores[1]}") +``` + +# Определим лучшую модель по итогвой точности +```python +# Выбор наилучшей модели +best_units_1 = max(scores_1.items(), key=lambda x: x[1][1])[0] +print(f" +Наилучшее количество нейронов: {best_units_1}") +print(f"Точность: {scores_1[best_units_1][1]}") +``` + +``` + Наилучшее количество нейронов: 100 + Точность: 0.9422000050544739 +``` + +# Отобразим графики ошибок для каждой из архитектур нейросети + +```python +# Графики ошибок для всех моделей +plt.figure(figsize=(15, 5)) +for i, units in enumerate(hidden_units_list, 1): + plt.subplot(1, 3, i) + plt.plot(histories_1[units].history['loss'], label='Обучающая') + plt.plot(histories_1[units].history['val_loss'], label='Валидационная') + plt.title(f'{units} нейронов') + plt.xlabel('Эпохи') + plt.ylabel('Ошибка') + plt.legend() + plt.grid(True) +plt.tight_layout() +plt.show() +``` + +![график обучения для каждой эпохи](paragraph_8.png) + + +**По результатам проведнного эксперимента наилучший показатель точности продемонстрировала нейронная сеть со 100 нейронами в скрытом слое - примерно 0.9422.** + +--- + +## 9) Добавили в архитектуру с лучшим показателем из п. 8, второй скрытый слой и провели обучение и тестирование при 50 и 100 нейронах во втором скрытом слое. В качестве функции активации нейронов в скрытом слое использовали функцию `sigmoid`. + +```python +# Добавление второго скрытого слоя +second_layer_units = [50, 100] +models_2 = {} +histories_2 = {} +scores_2 = {} + + +for units_2 in second_layer_units: + print(f" +Обучение модели со вторым слоем {units_2} нейронов") + + model = Sequential() + model.add(Dense(units=best_units_1, input_dim=num_pixels, activation='sigmoid')) + model.add(Dense(units=units_2, activation='sigmoid')) + model.add(Dense(units=num_classes, activation='softmax')) + + model.compile(loss='categorical_crossentropy', + optimizer='sgd', + metrics=['accuracy']) + + history = model.fit(X_train, y_train, + validation_split=0.1, + epochs=50) + + scores = model.evaluate(X_test, y_test) + + models_2[units_2] = model + histories_2[units_2] = history + scores_2[units_2] = scores + + print(f"Точность: {scores[1]}") + +``` + +# Результаты обучения моделей: + +``` +Обучение модели со вторым слоем 50 нейронов: +Точность: 0.9417999982833862 + +Обучение модели со вторым слоем 100 нейронов +Точность: 0.942300021648407 +``` + +# Выбор наилучшей двухслойной модели +```python +best_units_2 = max(scores_2.items(), key=lambda x: x[1][1])[0] +print(f" +Наилучшее количество нейронов во втором слое: {best_units_2}") +print(f"Точность: {scores_2[best_units_2][1]}") +``` + +``` + Наилучшее количество нейронов во втором слое: 100 + Точность: 0.9423 +``` + + +## 10) Результаты исследования архитектуры нейронной сети занесли в таблицу: + +```python +# Сбор результатов +results = { + '0 слоев': {'нейроны_1': '-', 'нейроны_2': '-', 'точность': scores_0[1]}, + '1 слой_100': {'нейроны_1': 100, 'нейроны_2': '-', 'точность': scores_1[100][1]}, + '1 слой_300': {'нейроны_1': 300, 'нейроны_2': '-', 'точность': scores_1[300][1]}, + '1 слой_500': {'нейроны_1': 500, 'нейроны_2': '-', 'точность': scores_1[500][1]}, + '2 слоя_50': {'нейроны_1': best_units_1, 'нейроны_2': 50, 'точность': scores_2[50][1]}, + '2 слоя_100': {'нейроны_1': best_units_1, 'нейроны_2': 100, 'точность': scores_2[100][1]} +} + +# Создаем DataFrame из результатов +df_results = pd.DataFrame([ + {'Кол-во скрытых слоев': 0, 'Нейроны_1_слоя': '-', 'Нейроны_2_слоя': '-', 'Точность': results['0 слоев']['точность']}, + {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 100, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_100']['точность']}, + {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 300, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_300']['точность']}, + {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 500, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_500']['точность']}, + {'Кол-во скрытых слоев': 2, 'Нейроны_1_слоя': best_units_1, 'Нейроны_2_слоя': 50, 'Точность': results['2 слоя_50']['точность']}, + {'Кол-во скрытых слоев': 2, 'Нейроны_1_слоя': best_units_1, 'Нейроны_2_слоя': 100, 'Точность': results['2 слоя_100']['точность']} +]) + +print(" " * 20 + "ТАБЛИЦА РЕЗУЛЬТАТОВ") +print("=" * 70) +# print(df_results.to_string(index=False, formatters={ +# 'Точность': '{:.4f}'.format +# })) +print(df_results.reset_index(drop=True)) + + + +``` + +``` + ТАБЛИЦА РЕЗУЛЬТАТОВ + ====================================================================== + Кол-во скрытых слоев Нейроны_1_слоя Нейроны_2_слоя Точность + 0 0 - - 0.9233 + 1 1 100 - 0.9422 + 2 1 300 - 0.9377 + 3 1 500 - 0.9312 + 4 2 100 50 0.9418 + 5 2 100 100 0.9423 + +``` + +```python +# Выбор наилучшей модели +best_model_type = max(results.items(), key=lambda x: x[1]['точность'])[0] +best_accuracy = results[best_model_type]['точность'] +print(f" +Наилучшая архитектура: {best_model_type}") +print(f"Точность: {best_accuracy}") +``` + +``` + Наилучшая архитектура: 2 слоя_100 + Точность: 0.9423 +``` +### По результатам исследования сделали выводы и выбрали наилучшую архитектуру нейронной сети с точки зрения качества классификации. + +**Из таблицы следует, что лучшей архитектурой является НС с двумя скрытыми слоями по 100 и 50 нейронов, второе место занимает НС с одним скрытым слоем и 100 нейронами, на основе которой мы и строили НС с двумя скрытыми слоями. При увеличении количества нейронов в архитектуре НС с 1-м скрытым слоем в результате тестирования было вявлено, что метрики качества падают. Это связано с переобучение нашей НС с 1-м скрытым слоем (когда построенная модель хорошо объясняет примеры из обучающей выборки, но относительно плохо работает на примерах, не участвовавших в обучении) Такая тенденция вероятно возникает из-за простоты датасета MNIST, при усложнении архитектуры НС начинает переобучаться, а оценка качества на тестовых данных падает. Но также стоит отметить, что при усложнении структуры НС точнсть модели также и растет.** + +--- + +## 11) Сохранили наилучшую нейронную сеть на диск. + +```python +# Сохранение модели +best_model.save('best_mnist_model.keras') +``` + +--- + +## 12) Для нейронной сети наилучшей архитектуры вывели два тестовых изображения, истинные метки и результат распознавания изображений. + +```python +# вывод тестового изображения и результата распознавания (1) +n = 123 +result = best_model.predict(X_test[n:n+1]) +print('NN output:', result) +plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray')) +plt.show() +print('Real mark: ', str(np.argmax(y_test[n]))) +print('NN answer: ', str(np.argmax(result))) +``` + +![результат 1](paragraph_12_1.png) + +```python +# вывод тестового изображения и результата распознавания (3) +n = 353 +result = best_model.predict(X_test[n:n+1]) +print('NN output:', result) +plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray')) +plt.show() +print('Real mark: ', str(np.argmax(y_test[n]))) +print('NN answer: ', str(np.argmax(result))) +``` +![результат 2](paragraph_12_3.png) + +--- + +## 13) Создали собственные изображения рукописных цифр, подобное представленным в наборе MNIST. Цифру выбрали как остаток от деления на 10 числа своего дня рождения (12 марта → 2, 17 сентября → 7 ). Сохранили изображения. Загрузили, предобработали и подали на вход обученной нейронной сети собственные изображения. Вывели изображения и результаты распознавания. + +```python +# загрузка собственного изображения +file_data_2 = Image.open('2.png') +file_data_7 = Image.open('7.png') +file_data_2 = file_data_2.convert('L') # перевод в градации серого +file_data_7 = file_data_7.convert('L') # перевод в градации серого +test_img_2 = np.array(file_data_2) +test_img_7 = np.array(file_data_7) + + +# вывод собственного изображения (цифра 2) +plt.imshow(test_img_2, cmap=plt.get_cmap('gray')) +plt.show() +# предобработка +test_img_2 = test_img_2 / 255 +test_img_2 = test_img_2.reshape(1, num_pixels) +# распознавание +result = best_model.predict(test_img_2) +print('I think it\'s ', np.argmax(result)) +``` + +![собственные изображения](2.png) + +``` +1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 31ms/step +``` + +```python +# вывод собственного изображения (цифра 7) +plt.imshow(test_img_7, cmap=plt.get_cmap('gray')) +plt.show() +# предобработка +test_img_7 = test_img_7 / 255 +test_img_7 = test_img_7.reshape(1, num_pixels) +# распознавание +result = best_model.predict(test_img_7) +print('I think it\'s ', np.argmax(result)) +``` + +``` +![собственные изображения](7.png) +``` + +``` +1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 48ms/step +I think it's 7 +``` +**Как видим в результате эксперимента наша НС недостаточно точно определила изображение цифры 2. Возможно это связано с малом размером используемой выборки. Для улучшения качества решения задачи классификации можно либо увеличить размерность выборки для обучения НС, либо изменить структуру НС для более точной ее работы** + +--- + +## 14) Создать копию собственного изображения, отличающуюся от оригинала поворотом на 90 градусов в любую сторону. Сохранили изображения. Загрузили, предобработали и подали на вход обученной нейронной сети измененные изображения. Вывели изображения и результаты распознавания. Сделали выводы по результатам эксперимента. + +```python +# загрузка собственного изображения +file_data_2_90 = Image.open('2_90.png') +file_data_7_90 = Image.open('7_90.png') +file_data_2_90 = file_data_2_90.convert('L') # перевод в градации серого +file_data_7_90 = file_data_7_90.convert('L') # перевод в градации серого +test_img_2_90 = np.array(file_data_2_90) +test_img_7_90= np.array(file_data_7_90) + +# вывод собственного изображения (цифра 2) +plt.imshow(test_img_2_90, cmap=plt.get_cmap('gray')) +plt.show() +# предобработка +test_img_2_90 = test_img_2_90 / 255 +test_img_2_90 = test_img_2_90.reshape(1, num_pixels) +# распознавание +result = best_model.predict(test_img_2_90) +print('I think it\'s ', np.argmax(result)) +``` + +![собственные изображения повернутые на 90 градусов](2_90.png) + +``` +1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 91ms/step +I think it's 7 +``` + +```python +# вывод собственного изображения (цифра 7) +plt.imshow(test_img_7_90, cmap=plt.get_cmap('gray')) +plt.show() +# предобработка +test_img_7_90 = test_img_7_90 / 255 +test_img_7_90 = test_img_7_90.reshape(1, num_pixels) +# распознавание +result = best_model.predict(test_img_7_90) +print('I think it\'s ', np.argmax(result)) +``` + +![собственные изображения повернутые на 90 градусов](2_90.png) + +``` +1/1 ━━━━━━━━━━━━━━━━━━━━ 0s 48ms/step +I think it's 7 +``` + + +**При повороте рисунков цифр НС не смогла распознать одну из цифр. Так получилось, во-первых, по той же причине, почему НС не распознала одну из цифр в пункте 13, во-вторых - наша НС не обучалась на перевернутых цифрах** + +--- + + + + \ No newline at end of file diff --git a/labworks/LW1/2.png b/labworks/LW1/2.png new file mode 100644 index 0000000000000000000000000000000000000000..f7058b72f832b4ee68433f795121500968664a99 GIT binary patch literal 315 zcmeAS@N?(olHy`uVBq!ia0vp^G9b*s1SJ3FdmIK*jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sD03i%E*9?xHq0u;R9>EamT;r({1A>UyI9@oWwGQG(uX9PDD zF}a0plhIB-*3)xkQoW$BXEw_!k*)chzi!yeFR?g0|NX+Pao0_!Db&iiUpc9Gy!QUX zK&6&|x4Uztcb!*^5Aj|w<3;yHOZKk^ZO-557M#>#qqZbnL;3wBZiQNvuX~QAtl1h9 zP{>?!z}VeM^XM{`C1uMpn^N5`m%Kc^$swyw$9_ygYaLdPW5uvEO?xQp*_0lV^!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBDAAG{;hE;^%b*2hb1<+n z3NbJPS&Tr)z$nE4G7ZRL@M4sPvx68lplX;H7}_%#SfFa6fHVjs05M1pgl1mAh%j*h z6I`{-0%imosG6bTR%sfL;wb|fu==fhD4M^`1)8S=jZArrsOB3 z>Q&?xfOIj~R9FF-xv3?I3Kh9IdBs*0wn|_XRzNmLSYJs2tfVB{Rw=?aK*2e`C{@8s z&p^*W$&O1wLBXadCCw_x#SN+*$g@?-C@Cqh($_C9FV`zK*2^zS*Eh7ZwA42+(l;{F z1**_3uFNY*tkBIXR)!b?Gsh*hIJqdZpd>RtPXT0ZVp4u-iLH_n$Rap^xU(cP4PjGW zG1OZ?59)(t^bPe4^x=6U%CmA)ADAiUEj7=OXa)4$v406ofdH0rW3*v zzE>b;>M0{P%kO*Su9ez;Z(RKJX6fA1pKE&moKSipZ+bg;^U^=hCO??>pwXVy@cqKY zZwebuCF=7W)iJom;LiLpWg~O?Et9izJVQh4B-pM5W?TK!s`!(^bg|>ta+U)pqYGLV ziT!xR!@IcuL7~jWv)m%)`plaG0!8fDeA%`v@NB%lVEQzXBa5Cs^*MOV&g4>!ft!1= z>}$=8j0fN3ib~uM@I19X{k@`iuZe-!-9U|$)~gpB%qG2%XgMt4u+jFlfW{%FzA35w x1y|Hw^3P!6KlZuqfMbWc`9H~dItefSv1!*tKMsC0QxKFEJzf1=);T3K0RUkADxm-X literal 0 HcmV?d00001 diff --git a/labworks/LW1/7.png b/labworks/LW1/7.png new file mode 100644 index 0000000000000000000000000000000000000000..f284c95caa36533c87b548bb42100fe6b0681b81 GIT binary patch literal 273 zcmeAS@N?(olHy`uVBq!ia0vp^G9b*s1SJ3FdmIK*jKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85sD03i%E*9?xHq0u)^4>EamT;r(`sHP;aZ5m(*VSxZkBaK1aD z8nH{o8wj2Y3=#dO|wg1_(u^%-glf!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$XBDAAG{;hE;^%b*2hb1<+n z3NbJPS&Tr)z$nE4G7ZRL@M4sPvx68lplX;H7}_%#SfFa6fHVjs05M1pgl1mAh%j*h z6I`{-0%imosG6bTR%sfL;wb|fu==fhD4M^`1)8S=jZArrsOB3 z>Q&?xfOIj~R9FF-xv3?I3Kh9IdBs*0wn|_XRzNmLSYJs2tfVB{Rw=?aK*2e`C{@8s z&p^*W$&O1wLBXadCCw_x#SN+*$g@?-C@Cqh($_C9FV`zK*2^zS*Eh7ZwA42+(l;{F z1**_3uFNY*tkBIXR)!b?Gsh*hIJqdZpd>RtPXT0ZVp4u-iLH_n$Rap^xU(cP4PjGW zG1OZ?59)(t^bPe4^x0D)F+FP+}o%6jU z-^(5EZ_N{!U#WlSpt(zBpNVhcy!7+sPgHkgzS?Cc6n|IwiB?zB)i1|ZtvV9bv*WtD z`HrujJAMc;YBlPqoG-TSTl~7}tbfDxMwQ5EsajKZiPz8kJZaa(wnENpUXO@geCyGxf%@s literal 0 HcmV?d00001 diff --git a/labworks/LW1/Lab1_Troyanov&Chernov.ipynb b/labworks/LW1/Lab1_Troyanov&Chernov.ipynb new file mode 100644 index 0000000..2598c41 --- /dev/null +++ b/labworks/LW1/Lab1_Troyanov&Chernov.ipynb @@ -0,0 +1,1956 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 5220, + "status": "ok", + "timestamp": 1759129041522, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "lon2W0bNVyH8", + "outputId": "7fe39a23-47a7-49cd-ca17-3703e109583a" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cloning into 'is_dnn'...\n", + "remote: Enumerating objects: 188, done.\u001b[K\n", + "remote: Counting objects: 100% (188/188), done.\u001b[K\n", + "remote: Compressing objects: 100% (186/186), done.\u001b[K\n", + "remote: Total 188 (delta 47), reused 0 (delta 0), pack-reused 0\u001b[K\n", + "Receiving objects: 100% (188/188), 8.53 MiB | 4.57 MiB/s, done.\n", + "Resolving deltas: 100% (47/47), done.\n" + ] + } + ], + "source": [ + "!git clone http://uit.mpei.ru/git/TroyanovDS/is_dnn.git" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "d5jFanC8NPTN" + }, + "outputs": [], + "source": [ + "import os\n", + "os.chdir('/content/drive/MyDrive/Colab Notebooks/is_dnn/labworks/LW1')" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 26468, + "status": "ok", + "timestamp": 1759209430625, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "qlvyHRzuJPfI", + "outputId": "597ba917-88e2-4f26-cc45-80cdb1dc5e55" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Mounted at /content/drive\n" + ] + } + ], + "source": [ + "from google.colab import drive\n", + "drive.mount('/content/drive')" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "id": "H39A4nsqNuxn" + }, + "outputs": [ + { + "ename": "ModuleNotFoundError", + "evalue": "No module named 'tensorflow'", + "output_type": "error", + "traceback": [ + "\u001b[31m---------------------------------------------------------------------------\u001b[39m", + "\u001b[31mModuleNotFoundError\u001b[39m Traceback (most recent call last)", + "\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[1]\u001b[39m\u001b[32m, line 2\u001b[39m\n\u001b[32m 1\u001b[39m \u001b[38;5;66;03m# импорт модулей\u001b[39;00m\n\u001b[32m----> \u001b[39m\u001b[32m2\u001b[39m \u001b[38;5;28;01mimport\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtensorflow\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mas\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtf\u001b[39;00m\n\u001b[32m 3\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mtensorflow\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m keras\n\u001b[32m 4\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mkeras\u001b[39;00m\u001b[34;01m.\u001b[39;00m\u001b[34;01mdatasets\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m mnist\n", + "\u001b[31mModuleNotFoundError\u001b[39m: No module named 'tensorflow'" + ] + } + ], + "source": [ + "# импорт модулей\n", + "import tensorflow as tf\n", + "from tensorflow import keras\n", + "from keras.datasets import mnist\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense\n", + "from keras.utils import to_categorical\n", + "from sklearn.model_selection import train_test_split\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "from PIL import Image\n", + "import os" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 462, + "status": "ok", + "timestamp": 1759127274975, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "iNenKkcoRXrs", + "outputId": "041dc403-e177-4f0d-edbb-40902c8954fd" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz\n", + "\u001b[1m11490434/11490434\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 0us/step\n" + ] + } + ], + "source": [ + "# Загрузка датасета\n", + "(X_train_orig, y_train_orig), (X_test_orig, y_test_orig) = mnist.load_data()\n", + "\n", + "# разбиваем выборку на обучающую и тестовую выборку\n", + "X = np.concatenate((X_train_orig, X_test_orig))\n", + "y = np.concatenate((y_train_orig, y_test_orig))\n", + "\n", + "\n", + "X_train, X_test, y_train, y_test = train_test_split(\n", + " X, y,\n", + " test_size=10000,\n", + " train_size=60000,\n", + " random_state=3,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 224 + }, + "executionInfo": { + "elapsed": 243, + "status": "ok", + "timestamp": 1759127328545, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "bt-EmlYARsCL", + "outputId": "611d9110-39a2-46dd-94ce-b0fea7005b87" + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABJIAAAEwCAYAAADsAVtdAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAIBpJREFUeJzt3WuQ1uV5BvDn1QVBlyZIYF2qBY9RoCiQRg2ioIQRUVuNyAbpNDoxoMaO0JzGhBCDTULCeOJgLNOySQqiKK0WhEQt9YDFWNAqakQNamhWUQcRBTks/35wQkLAPDfsuyf295vhy7vXPs8N7N6ze81/oVQURZEAAAAAIOOA5h4AAAAAgNZBkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABAiCKphautrU2lUimVSqX06KOP7vb2oijSEUcckUqlUjr33HObYcLG98orr+z8M9jTr8svv7y5R4Q2yX760I4dO9KPf/zjdNJJJ6XKyspUVVWVhg8fnh577LHmHg3aLPsppU2bNqUZM2akYcOGperq6tSpU6fUr1+/dOutt6b6+vrmHg/aNDvKjmrtFEmtRIcOHdLcuXN3e/2hhx5Ka9euTQcddFAzTNU0unbtmn72s5/t9uuSSy5JKaU0bNiwZp4Q2ra2vJ9SSumrX/1quuKKK9Jf/uVfphtuuCH9wz/8Q1q9enU644wz0i9/+cvmHg/atLa8n37961+nq6++OhVFkSZMmJCmTp2ajjzyyHTllVemyy67rLnHA5IdZUe1XhXNPQAx55xzTpo/f3665ZZbUkXF7//a5s6dmwYMGJDeeuutZpyucR1yyCFpzJgxu71eW1ub/uzP/iydd955zTAV8DtteT9t37493Xrrremiiy5KP/vZz3a+PnLkyHTUUUelOXPmpE9/+tPNOCG0bW15Px122GHpmWeeSb1799752tixY9Nll12WZs+enSZOnJiOOeaYZpwQsKPsqNbKE0mtxOc///n09ttvp/vvv3/na1u3bk133XVXGj169B7fZ8eOHemmm25KvXv3Th06dEhVVVVp7Nixaf369TszPXv2/JM/NtazZ8+U0u9/vKy2tnbn+27cuDENGDAgHXnkkamurm7n61OnTk2f+cxnUpcuXVLHjh3TgAED0l133bXbfG+99Vb61a9+lTZt2rTXfx51dXVp6dKl6cILL0wdOnTY6/cHyqct76dt27alzZs3p6qqql1e79atWzrggANSx44d/+T7A42rLe+nT3ziE7t8g/Y7F1xwQUoppeeff/5Pvj/Q+OwoO6q18kRSK9GzZ8906qmnpttvvz0NHz48pZTS4sWL04YNG1JNTU265ZZbdnufsWPHptra2nTppZemv//7v09r1qxJ06dPT08++WRatmxZateuXbrpppvSe++9l1L68JP1e9/7Xrr22mvTCSeckFJKqbKyco/zbNu2LX3uc59Lr732Wlq2bFmqrq7e+babb745nX/++emSSy5JW7duTfPmzUsjR45MCxcuTCNGjNiZmz59erruuuvS0qVL0+DBg/fqz2PevHlpx44dO3+8DWg+bXk/dezYMZ188smptrY2nXrqqWnQoEHpnXfeSZMnT06dO3dOX/rSl/b6zxMon7a8nz7K66+/nlL68Js4oHnZUbuzo1qJghZt9uzZRUqpeOKJJ4rp06cXnTp1KjZt2lQURVGMHDmyGDJkSFEURdGjR49ixIgRO9/vkUceKVJKxZw5c3Y5b8mSJXt8vSiKYunSpUVKqVi6dOlub1uzZk2RUipmz55d7Nixo7jkkkuKgw8+uHj88cd3y/5uvt/ZunVr0adPn+LMM8/c5fVJkyZ95H05AwYMKKqrq4v6+vq9fl+gPOynD7344otF//79i5TSzl9HHXVU8atf/Sr7vkDjsJ/2bMuWLUWvXr2KI488sti2bdtevz9QHnbUntlRrYcfbWtFLr744rR58+a0cOHCtHHjxrRw4cKPfORx/vz56WMf+1j67Gc/m956662dvwYMGJAqKyvT0qVL93mOr371q2nOnDnpzjvv3OO//fGHP8qxfv36tGHDhjRo0KC0cuXKXXLf+c53UlEUe91Ur169Oq1YsSLV1NSkAw7wIQwtQVveT506dUq9e/dOV111VVqwYEGaOXNm2r59e/qbv/mb/frfNoDWoi3vpz/25S9/OT333HNp+vTpu/x7LEDzsaN+z45qPfzttCJdu3ZNQ4cOTXPnzk2bNm1K9fX16aKLLtpj9sUXX0wbNmxI3bp12+Pb161bt08z3HbbbWn58uUppbTLz+H+oYULF6brr78+PfXUU2nLli07Xy+VSvt05x+bM2dOSin5sTZoQdrqftq+fXsaOnRoGjx4cJo2bdrO14cOHZp69+6dfvSjH6UpU6bs09lAebTV/fTHfvSjH6VZs2alyZMnp3POOacsZwINZ0d9yI5qXRRJrczo0aPT5Zdfnl5//fU0fPjw9PGPf3yPuR07dqRu3brtLF3+WNeuXffp/uXLl6d//Md/TE888UQaP358Ovvss3f5+dVHHnkknX/++en0009PM2fOTNXV1aldu3Zp9uzZe/yvLffF3Llz0yc/+ck0YMCAspwHlEdb3E8PP/xwWrVqVbrhhht2ef3YY49NJ5xwQlq2bNk+nQuUV1vcT3+otrY2ff3rX0/jxo1L3/rWtxp8HlBedpQd1dooklqZCy64II0dOzYtX7483XHHHR+ZO/roo9MDDzyQBg4cWNb/Neiyyy5L1157bfrtb3+bevXqlcaPH7/Lf3l99913pw4dOqSf//zn6aCDDtr5+uzZs8ty/+OPP55eeuml9N3vfrcs5wHl0xb30xtvvJFSSqm+vn63t23bti1t3759n88Gyqct7qffueeee9IXv/jFdOGFF6YZM2Y0+Dyg/OwoO6q18Q/MtDKVlZXp1ltvTd/5znfSeeed95G5iy++ONXX16fJkyfv9rbt27end955Z5/uHzRoUEoppe7du6cpU6akf/3Xf02/+MUvdr79wAMPTKVSaZdvql555ZX07//+77udFf2vIf/Q7xrvj/q5YaD5tMX9dNxxx6WUPvyfJP/QypUr0wsvvJD69eu3T78XoLza4n5K6cOnJmtqatLpp5+e5syZ49+WhBbKjrKjWhtPJLVCf/d3f5fNnHHGGWns2LHp+9//fnrqqafSsGHDUrt27dKLL76Y5s+fn26++eaP/NnbqC996Utp7ty5ady4cWnVqlXp4IMPTiNGjEg33HBDOvvss9Po0aPTunXr0owZM9IxxxyTnn766V3ef2//a8j6+vp0xx13pFNOOSUdffTRDZodaBxtbT8NGDAgffazn00/+clP0rvvvpuGDRuW6urq0rRp01LHjh3TNddc06DfB1A+bW0/vfrqq+n8889PpVIpXXTRRWn+/Pm7vL1v376pb9++Dfq9AOVjR9lRrYkiaT/24x//OA0YMCDddttt6dprr00VFRWpZ8+eacyYMWngwIENPr9UKqVZs2alE088MX3rW99KN9xwQzrzzDPTP//zP6cf/OAH6Zpr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IUOGNHQcGoEnkgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIRUNPcATaGysjKb6dWrV+isE044IZs599xzQ2f99V//dTZz4IEHhs5qSs8880wo98EHH5Ttzh49emQz3bp1K9t9Effcc0+T3gdNqaamJps55phjspmiKMoxTkoppe9+97vZzOTJk8t2XznNmjWrbGd17949m/n2t78dOivy9/O1r30tm9m4cWPoPiBm+/bt2cybb74ZOmvBggXZTN++fUNnAZTT+++/n8107tw5m2nfvn3ovq1bt4Zy5HkiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQEhFcw/QUF/5yleymVGjRmUz/fv3L8c4Zbd169ZsZunSpaGz1q5dm83cfvvt2cwvf/nL0H3vv/9+KBcxbdq0bObKK68s230/+clPspn/+q//Ktt90FSOO+64UG7ixIlluW/16tWh3B133JHNTJ48uaHjtGhnnXVWKHfjjTdmM7179w6ddffdd2czzz77bOgsoGX64IMPmnsEgD2qqqrKZt55551sJvI9M+XliSQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQiqae4CGOu6447KZ/v37N8Ekv/fiiy+GctOmTctmli5dms0899xzoftaooMPPjiUGzVqVFnue+KJJ0K5L3/5y9nM5s2bGzoONLmJEyeGcocddlg280//9E/ZzDe+8Y3Qfe+9914o1xJ17949m/nv//7vbKZr166h+9q3b5/NTJ48OXTWlClTshm7Dlq3Pn36NPcIAHtUWVmZzRRF0QSTsLc8kQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACCkorkHaKgf/OAH2cyWLVuymZNOOil039y5c7OZefPmhc5av359KLc/+9SnPhXKdenSpSz3Pfzww6Hcpk2bynIftFalUimbiXz+fvDBB6H76uvrQ7lyqaqqymauuOKK0FnnnntuNnP44YdnM8uWLQvdN3HixGzmoYceCp0FtF7t27cP5fr165fNbNy4MZt57bXXQvcBHHLIIaHc8OHDs5lXXnmlgdPQGDyRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIKSiuQdoqF//+tfZzNVXX53NtGvXLnTftm3bQjlivv3tb5ftrKIospn777+/bPdBa7Ry5cpQbvTo0dlMv379spmFCxeG7qupqclmOnXqVJaZUkrptttuy2YOPfTQ0FmvvfZaNrNgwYJsZty4caH73n777VAO2L9dfvnloVzv3r2zmQceeCCbiew6IKa6ujqbqaura4JJGkfHjh1DuT//8z/PZpYvX97QcWgEnkgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIKSiuQdoKbZt29bcI7RJgwYNKttZTz/9dDZz//33l+0+aI3mzZsXyr388svZzIIFC7KZIUOGhO5bsmRJNtO9e/dspqqqKnRfxKJFi0K5cePGZTN1dXUNHQfYS127ds1mxowZEzqrQ4cODR0npZTSs88+G8qVaydGrVq1qmxnwf7qiiuuCOUmTpyYzRx22GHZzOzZs0P3denSJZupra3NZv7jP/4jdF99fX02M2HChNBZpVIpm5k1a1boLJqWJ5IAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQIgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACElIqiKELBUqmxZ2E/06VLl2zmt7/9beisioqKbObBBx/MZoYNGxa6j7jgCmlU9lP5HXHEEdnMmjVrmmCS34v8PUc/HlevXp3NnHrqqaGzNmzYEMrR9FrCfkrJjmoMxx9/fDbzi1/8Ips5/PDDyzFO2c2fPz+bOe2000JnVVdXZzMjRozIZhYvXhy6j7iWsKPspw916tQpm4l+3dO5c+eGjrNXyvX10ZNPPhm6b/PmzdnMwIEDQ2dt2bIlm4nsuhUrVoTuIy73MeOJJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqfqqqqUO7ee+/NZioqYh+CW7ZsyWZ++MMfhs4C8q655ppsplQqNf4gjXTftGnTspkNGzaU7T6gvGbOnJnNHH744dnMQw89FLov8jXNOeeck82cfPLJoftGjhwZypVLz549s5mDDjoodFbkazZoaSLf3xx66KGhs4qiaOg4zaJfv35NfueiRYuymRUrVjTBJOwtTyQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIqWjuAWh9zj777FDuU5/6VNnufOyxx7KZBx54oGz3QWvUpUuXbKampiZ01ogRI7KZoiiymQULFoTuu/POO7OZG2+8MZuprq4O3ff666+HckDT+vznPx/KDRo0KJtZs2ZNNvPFL34xdN/LL7+czUR2VPRrqPvuuy+UK5cZM2ZkM1/4whdCZ/3Lv/xLNnP77beHznr33XdDOWiol156KZtZvHhx6Kzo5zkpVVZWZjMnnXRSNvPUU081fBj2iieSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCFEkAAAAAhFQ09wC0Pn369GnyO+++++4mvxNaiujn3Pz587OZY489NnTWm2++mc2cdtpp2cyzzz4bum/jxo3ZzCc+8YlsZvr06aH7JkyYkM38/Oc/D521adOmUA7IO+uss0K5Aw88MJu58cYbs5mXX345dF+5DB48uGxn1dbWhnJ1dXXZzCmnnJLNnHTSSaH7vve972UznTp1Cp01derUUA6awpVXXhnK3XLLLdnMeeed19BxdiqVSmU7q1yiMw0bNiybeeSRR7KZp556KnQf5eOJJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqfc845p7lHgP3GGWeckc1Mnjw5dNaxxx6bzaxcuTJ01nXXXZfNLF++PHRWuSxatCibmT59euisU089NZsZOnRo6Kx77703lAP2b8OHD89mrrrqqtBZb7/9djYzadKk0Fm/+c1vQjngT3v11VdDuZqammymX79+ZcmkFNsrL730Ujbz3HPPhe5bsmRJNhP5OiullK6//vps5rLLLstmHnzwwdB9Tf216/7ME0kAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqWc889N5s5/vjjy3bf+++/H8rddtttZbsTWpI33ngjmxk4cGDorHXr1mUz1113XeisRYsWhXJNaePGjdnM4sWLQ2cNHjw4mznxxBNDZ917772hHJBXX19ftrM+/elPZzOHHnpo6Kzx48dnMxMmTMhmOnToELrv6quvzmZ+85vfhM4CmtbmzZuzmccee6wsmZRSmjFjRijXlB5//PFQ7nOf+1w2069fv2xmypQpofvOOOOMUI48TyQBAAAAEKJIAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEFLR3APQshxwQNN2i0VRhHI7duxo5EmgeVRXV2cz0c+TWbNmZTOLFi0KndXUunfvns1MnTo1mxk+fHjovv/93//NZm666abQWUD5TJw4MZT7zGc+k82MGTOmLJmUUiqVStnM22+/nc187WtfC91XW1sbygG0RJs3bw7lIl+3LVmyJJuprKwM3Uf5eCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEKJIAgAAACBEkQQAAABASEVzD0DL0q1btya9b926dU16H7Q0Tz/9dDazdu3a0Fnjxo3LZjp37hw66+GHHw7lckaNGhXK9e/fP5vp0aNHNvPWW2+F7hs/fnw2s3HjxtBZQPlEvy4488wzs5mpU6dmMyNHjgzdd+edd2Yz3//+97OZF154IXQfQFvw5ptvZjMDBgxogknYW55IAgAAACBEkQQAAABAiCIJAAAAgBBFEgAAAAAhiiQAAAAAQhRJAAAAAIQokgAAAAAIUSQBAAAAEFIqiqIIBUulxp6FFmDOnDnZTE1NTdnumzRpUih3/fXXl+1Oyiu4QhrV/r6f+vTpE8otXrw4m6murg6dFfkzLeff/cqVK7OZ++67L5uZOXNm6L5169aFcrRuLWE/pbT/7yhg37SEHWU/AXuS20+eSAIAAAAgRJEEAAAAQIgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgpKK5B6BlufHGG7OZESNGhM7q1KlTQ8cBUkqrVq0K5Y444ohGngQAAGjrPJEEAAAAQIgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgpKK5B6Bl+Z//+Z9s5r777gudNWrUqGymb9++obMAAACA5ueJJAAAAABCFEkAAAAAhCiSAAAAAAhRJAEAAAAQokgCAAAAIESRBAAAAECIIgkAAACAEEUSAAAAACGKJAAAAABCKpp7AFqfSy+9NJR7/vnns5mBAwc2dBwAAACgiXgiCQAAAIAQRRIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQEipKIqiuYcAAAAAoOXzRBIAAAAAIYokAAAAAEIUSQAAAACEKJIAAAAACFEkAQAAABCiSAIAAAAgRJEEAAAAQIgiCQAAAIAQRRIAAAAAIf8PnYaHeLqsxsQAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Вывод первых 4 изображений\n", + "fig, axes = plt.subplots(1, 4, figsize=(12, 3))\n", + "for i in range(4):\n", + " axes[i].imshow(X_train[i], cmap='gray')\n", + " axes[i].set_title(f'Метка: {y_train[i]}')\n", + " axes[i].axis('off')\n", + "plt.tight_layout()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 134, + "status": "ok", + "timestamp": 1759127329383, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "5WUu3_97TjSa", + "outputId": "7a75ca25-58fe-447d-8bef-547159e6479d" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Shape of transformed X train: (60000, 784)\n" + ] + } + ], + "source": [ + "# развернем каждое изображение 28*28 в вектор 784\n", + "num_pixels = X_train.shape[1] * X_train.shape[2]\n", + "X_train = X_train.reshape(X_train.shape[0], num_pixels) / 255\n", + "X_test = X_test.reshape(X_test.shape[0], num_pixels) / 255\n", + "print('Shape of transformed X train:', X_train.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 7, + "status": "ok", + "timestamp": 1759127330016, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "sUJfDepgUauM", + "outputId": "2a9bc3d0-8bdb-4971-f3d4-ca21cb14fca6" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Shape of transformed y train: (60000, 10)\n" + ] + } + ], + "source": [ + "# переведем метки в one-hot\n", + "y_train = to_categorical(y_train)\n", + "y_test = to_categorical(y_test)\n", + "print('Shape of transformed y train:', y_train.shape)\n", + "num_classes = y_train.shape[1]" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 1000 + }, + "executionInfo": { + "elapsed": 207500, + "status": "ok", + "timestamp": 1759127540337, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "f3UzOyf_V2HQ", + "outputId": "9ffc63df-23bf-4947-f3c0-2a3e507034f1" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.12/dist-packages/keras/src/layers/core/dense.py:93: UserWarning: Do not pass an `input_shape`/`input_dim` argument to a layer. When using Sequential models, prefer using an `Input(shape)` object as the first layer in the model instead.\n", + " super().__init__(activity_regularizer=activity_regularizer, **kwargs)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Архитектура однослойной сети:\n" + ] + }, + { + "data": { + "text/html": [ + "
Model: \"sequential\"\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[1mModel: \"sequential\"\u001b[0m\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+       "┃ Layer (type)                     Output Shape                  Param # ┃\n",
+       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+       "│ dense (Dense)                   │ (None, 10)             │         7,850 │\n",
+       "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
+       "
\n" + ], + "text/plain": [ + "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n", + "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n", + "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n", + "│ dense (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m) │ \u001b[38;5;34m7,850\u001b[0m │\n", + "└─────────────────────────────────┴────────────────────────┴───────────────┘\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
 Total params: 7,850 (30.66 KB)\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m7,850\u001b[0m (30.66 KB)\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
 Trainable params: 7,850 (30.66 KB)\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m7,850\u001b[0m (30.66 KB)\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
 Non-trainable params: 0 (0.00 B)\n",
+       "
\n" + ], + "text/plain": [ + "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 1/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.7145 - loss: 1.1468 - val_accuracy: 0.8708 - val_loss: 0.5242\n", + "Epoch 2/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8769 - loss: 0.4791 - val_accuracy: 0.8838 - val_loss: 0.4376\n", + "Epoch 3/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8871 - loss: 0.4188 - val_accuracy: 0.8917 - val_loss: 0.4007\n", + "Epoch 4/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8939 - loss: 0.3855 - val_accuracy: 0.8957 - val_loss: 0.3796\n", + "Epoch 5/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8987 - loss: 0.3692 - val_accuracy: 0.8993 - val_loss: 0.3665\n", + "Epoch 6/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9035 - loss: 0.3523 - val_accuracy: 0.9008 - val_loss: 0.3555\n", + "Epoch 7/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9059 - loss: 0.3402 - val_accuracy: 0.9040 - val_loss: 0.3469\n", + "Epoch 8/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9053 - loss: 0.3389 - val_accuracy: 0.9060 - val_loss: 0.3405\n", + "Epoch 9/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9072 - loss: 0.3306 - val_accuracy: 0.9053 - val_loss: 0.3358\n", + "Epoch 10/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9115 - loss: 0.3209 - val_accuracy: 0.9067 - val_loss: 0.3310\n", + "Epoch 11/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9125 - loss: 0.3194 - val_accuracy: 0.9088 - val_loss: 0.3267\n", + "Epoch 12/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9110 - loss: 0.3165 - val_accuracy: 0.9093 - val_loss: 0.3236\n", + "Epoch 13/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9133 - loss: 0.3094 - val_accuracy: 0.9110 - val_loss: 0.3212\n", + "Epoch 14/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9155 - loss: 0.3031 - val_accuracy: 0.9123 - val_loss: 0.3176\n", + "Epoch 15/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9134 - loss: 0.3048 - val_accuracy: 0.9115 - val_loss: 0.3160\n", + "Epoch 16/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9129 - loss: 0.3096 - val_accuracy: 0.9120 - val_loss: 0.3141\n", + "Epoch 17/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9126 - loss: 0.3066 - val_accuracy: 0.9123 - val_loss: 0.3121\n", + "Epoch 18/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9157 - loss: 0.2999 - val_accuracy: 0.9117 - val_loss: 0.3099\n", + "Epoch 19/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9162 - loss: 0.2979 - val_accuracy: 0.9117 - val_loss: 0.3098\n", + "Epoch 20/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9166 - loss: 0.2941 - val_accuracy: 0.9133 - val_loss: 0.3072\n", + "Epoch 21/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9152 - loss: 0.2975 - val_accuracy: 0.9125 - val_loss: 0.3065\n", + "Epoch 22/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9173 - loss: 0.2926 - val_accuracy: 0.9137 - val_loss: 0.3049\n", + "Epoch 23/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9211 - loss: 0.2842 - val_accuracy: 0.9137 - val_loss: 0.3030\n", + "Epoch 24/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9185 - loss: 0.2929 - val_accuracy: 0.9138 - val_loss: 0.3024\n", + "Epoch 25/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9189 - loss: 0.2880 - val_accuracy: 0.9147 - val_loss: 0.3025\n", + "Epoch 26/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9179 - loss: 0.2926 - val_accuracy: 0.9150 - val_loss: 0.3007\n", + "Epoch 27/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9182 - loss: 0.2913 - val_accuracy: 0.9138 - val_loss: 0.3000\n", + "Epoch 28/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9197 - loss: 0.2881 - val_accuracy: 0.9133 - val_loss: 0.2993\n", + "Epoch 29/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9190 - loss: 0.2829 - val_accuracy: 0.9145 - val_loss: 0.2978\n", + "Epoch 30/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9190 - loss: 0.2878 - val_accuracy: 0.9157 - val_loss: 0.2977\n", + "Epoch 31/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9183 - loss: 0.2859 - val_accuracy: 0.9155 - val_loss: 0.2969\n", + "Epoch 32/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9207 - loss: 0.2849 - val_accuracy: 0.9158 - val_loss: 0.2962\n", + "Epoch 33/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9196 - loss: 0.2861 - val_accuracy: 0.9158 - val_loss: 0.2956\n", + "Epoch 34/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9205 - loss: 0.2784 - val_accuracy: 0.9155 - val_loss: 0.2952\n", + "Epoch 35/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9239 - loss: 0.2740 - val_accuracy: 0.9167 - val_loss: 0.2952\n", + "Epoch 36/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9227 - loss: 0.2727 - val_accuracy: 0.9165 - val_loss: 0.2945\n", + "Epoch 37/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9225 - loss: 0.2757 - val_accuracy: 0.9168 - val_loss: 0.2937\n", + "Epoch 38/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9227 - loss: 0.2748 - val_accuracy: 0.9165 - val_loss: 0.2935\n", + "Epoch 39/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9201 - loss: 0.2814 - val_accuracy: 0.9177 - val_loss: 0.2922\n", + "Epoch 40/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9239 - loss: 0.2749 - val_accuracy: 0.9170 - val_loss: 0.2915\n", + "Epoch 41/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9219 - loss: 0.2745 - val_accuracy: 0.9170 - val_loss: 0.2917\n", + "Epoch 42/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9214 - loss: 0.2766 - val_accuracy: 0.9178 - val_loss: 0.2917\n", + "Epoch 43/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9244 - loss: 0.2762 - val_accuracy: 0.9168 - val_loss: 0.2920\n", + "Epoch 44/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9264 - loss: 0.2676 - val_accuracy: 0.9183 - val_loss: 0.2905\n", + "Epoch 45/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9237 - loss: 0.2727 - val_accuracy: 0.9177 - val_loss: 0.2904\n", + "Epoch 46/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9243 - loss: 0.2697 - val_accuracy: 0.9167 - val_loss: 0.2903\n", + "Epoch 47/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9225 - loss: 0.2780 - val_accuracy: 0.9180 - val_loss: 0.2894\n", + "Epoch 48/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9230 - loss: 0.2719 - val_accuracy: 0.9172 - val_loss: 0.2893\n", + "Epoch 49/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9234 - loss: 0.2662 - val_accuracy: 0.9175 - val_loss: 0.2887\n", + "Epoch 50/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9249 - loss: 0.2689 - val_accuracy: 0.9185 - val_loss: 0.2882\n" + ] + } + ], + "source": [ + "model_0 = Sequential()\n", + "model_0.add(Dense(units=num_classes, input_dim=num_pixels, activation='softmax'))\n", + "\n", + "# Компиляция модели\n", + "model_0.compile(loss='categorical_crossentropy',\n", + " optimizer='sgd',\n", + " metrics=['accuracy'])\n", + "\n", + "# Вывод информации об архитектуре\n", + "print(\"Архитектура однослойной сети:\")\n", + "model_0.summary()\n", + "\n", + "# Обучение модели\n", + "history_0 = model_0.fit(X_train, y_train,\n", + " validation_split=0.1,\n", + " epochs=50)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 533 + }, + "executionInfo": { + "elapsed": 260, + "status": "ok", + "timestamp": 1759127542723, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "5yjxVnmFmpbV", + "outputId": "b182a139-da24-491e-9ebd-7ba1e39eec84" + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA04AAAIjCAYAAAA0vUuxAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAl3JJREFUeJzs3Xd4U2X/BvA7O917UUrLLHsLshRkVECGPwcKyhIcgC9YRECZoqKggChDfUFAQHCCDFFAeEG2YNl7rw66m7ZJ2pzfH6c5bZqWTnrScn+u61xJzjk5eZKeltw8z/M9CkEQBBAREREREVGhlHI3gIiIiIiIyNExOBERERERERWBwYmIiIiIiKgIDE5ERERERERFYHAiIiIiIiIqAoMTERERERFRERiciIiIiIiIisDgREREREREVAQGJyIiB2axWHDv3j1cuXJF7qYQERE91BiciIgcTHR0NMaNG4fQ0FBotVr4+fmhYcOGSElJkbtpVMHmzJmD+vXrw2KxyN2USuvUqVPYsGGD9DgqKgpbtmyRr0FVwKOPPop33nlH7mYQVTgGJ6IqYujQoXB1dZW7GVRGly5dwiOPPIJ169bhtddew+bNm7F9+3bs3LkTLi4ucjePKlBKSgo++eQTTJw4EUql7T/XBoMBs2bNQtOmTeHs7AwPDw906tQJq1atgiAIMrXYMaWmpuK1117DwYMHcfHiRYwdOxYnT56Uu1mV2sSJE7Fo0SJER0fL3RSiCqUQ+BeWqNKKj4/HmjVrsHfvXuzZswf37t1D9+7d0aJFCzz//PNo0aKF3E2kEuratSuuXbuGPXv2IDg4WO7mkIwWLFiA6dOnIyYmBnq9XlofExODrl274uzZs3jhhRfw+OOPIzMzEz///DP27NmDAQMGYM2aNVCpVDK23rH0798fGzduBADUq1cP+/fvh4+Pj8ytqrwsFguCg4MxcuRIvP/++3I3h6jCMDgRVVLr1q3DyJEjkZaWhrCwMJjNZkRHR6NFixY4fvw4zGYzhgwZgq+//hparVbu5lIxHD16FK1bt8aff/6J7t27y90cklmzZs3QtGlTfPfddzbrn3zySWzfvh2//vor+vbta7NtwoQJ+PTTT/Hxxx9j4sSJFdlch3fmzBlkZGSgSZMm/JtYDt58801s2rQJV69ehUKhkLs5RBWCQ/WIKqF9+/bhpZdeQmBgIPbt24erV6+iW7du0Ov1OHLkCO7cuYMXX3wRK1euxFtvvQUAEAQBYWFh6Nevn93xMjMz4eHhgddeew0AsHv3bigUCvz00092+7q6umLo0KHS4xUrVkChUODatWvSutOnT8PLywtPPfUUsrKybPb7559/bI537949KBQKzJgxw2Z9Qevmzp0LhUKBzp0726y/cuUKnnvuOVSrVg1KpRIKhQIKhQKNGze+38cIAMjKysKsWbNQu3Zt6HQ6hIWF4d1334XRaLTZLywsDE899ZTNujFjxth9YdixYwcUCgU2b94srevcubNdm48cOSK10+rgwYPQ6/W4fPkyGjVqBJ1Oh8DAQLz22mtISEiweX5Bx/zwww+hVCqxdu3aEr92YTp37iztW9CS9+cOAIsXL5baXq1aNYwePRpJSUn3fY3U1FSMGDECoaGh0Ol0qF69Ol5//XXExMTY7Gc9hwpb8p8v//77L3r27Al3d3e4urqia9euOHjwoLRdEAR06dIFfn5+iI2NldabTCY0adIEtWvXhsFgAABcv34do0aNQnh4OJycnODj44PnnnvO7v1b26jVahEXF2ez7cCBA1Jb8/8e5Hf16lWcOHEC3bp1s1l/8OBB/PHHHxg6dKhdaAKA2bNno27duvjkk0+QkZFRrM8vLCzMZr/Chv3+9NNPUCgU2L17t836H3/8Ea1atYKTkxN8fX3x0ksv4fbt23bPP3fuHJ5//nn4+fnByckJ4eHheO+99+z2CwsLK7Cd+V+3OOda3vO/YcOGaNWqFY4fP17g+a9QKDBmzBi79jz11FN2n9Gnn36K9u3bw8fHB05OTmjVqlWBfy/T0tIwfvx41KpVCxqNxub93Lt3z27//A4dOoRevXrBy8sLLi4uaNq0KT7//HObfc6dO4dnn30W3t7e0Ov1aN26NX777Tdpe1G/NwqFAitWrABQsiHf3bt3x/Xr1xEVFVWs/YmqArXcDSCikvv4449hsViwbt06tGrVym67r68vVq1ahTNnzuCrr77C9OnT4e/vj5deeglz5sxBQkICvL29pf03bdqElJQUvPTSS2Vu282bN/Hkk0+ifv36+OGHH6BWl8+fmaSkJMyePdtufXZ2Nvr27Yvr169j3LhxqFevHhQKBT788MNiHXfEiBFYuXIlnn32WYwfPx6HDh3C7NmzcfbsWfz666/l0vaCFNQbEB8fj8zMTLzxxht44okn8Prrr+Py5ctYtGgRDh06hEOHDkGn0xV4vG+//RZTpkzBZ599hoEDB5b4te+nevXqdp/91q1b8f3339usmzFjBmbOnIlu3brhjTfewPnz57FkyRIcOXIE+/btg0ajKfD4CQkJOHHiBEaMGIHAwEBcunQJS5cuxbZt23D48GH4+/vb7P/++++jZs2a0uO0tDS88cYbNvucPn0anTp1gru7O9555x1oNBp89dVX6Ny5M/73v/+hbdu2UCgUWL58OZo2bYrXX38dv/zyCwBg+vTpOH36NHbv3i3NKzty5Aj279+PF154AdWrV8e1a9ewZMkSdO7cGWfOnIGzs7PN66tUKqxevVr6jwtA/Bnp9XpkZmYW+Znv378fANCyZUub9Zs2bQIADB48uMDnqdVqDBw4EDNnzsS+ffvsglf+z++zzz5DYmJike0pzIoVKzBs2DA88sgjmD17NmJiYvD5559j3759+Pfff+Hp6QkAOHHiBDp16gSNRoNXX30VYWFhuHz5MjZt2lTg72qnTp3w6quvAgDOnj2Ljz76yGZ7ac81oOTnf0E+//xz9O3bF4MGDYLJZMK6devw3HPPYfPmzejdu7e034QJE7B06VK88sor6NChAzQaDX755Zdi/W3Zvn07nnrqKQQFBWHs2LEIDAzE2bNnsXnzZowdOxaAeJ536NABwcHBmDRpElxcXPDDDz+gf//++Pnnn/H000/jscces+m1tH7eeUNr+/btS/wZWP/t2bdvH4eF08NDIKJKx9vbWwgNDbVZN2TIEMHFxcVm3dSpUwUAwqZNmwRBEITz588LAIQlS5bY7Ne3b18hLCxMsFgsgiAIwq5duwQAwo8//mj32i4uLsKQIUOkx99++60AQLh69aqQkJAgNGzYUAgPDxfu3btn8zzrfkeOHLFZHxcXJwAQpk+fbrM+/7p33nlH8Pf3F1q1aiU8/vjj0nrre5o9e7bN8x9//HGhUaNGdu3PKyoqSgAgjBgxwmb922+/LQAQ/vrrL2ldaGio0Lt3b5v9Ro8eLeT/M7p9+3abz9zalrxt3rp1qwBAePLJJ22eP336dAGA0LVrVyErK0tab/3svvjiiwKPuWXLFkGtVgvjx4+3e4/Ffe3CFPY5zp07V/q5C4IgxMbGClqtVujRo4eQnZ0t7ffll18KAITly5cX+Vp5nTp1StDpdMLw4cOldSU5h/r37y9otVrh8uXL0ro7d+4Ibm5uwmOPPWbz/K+++koAIKxevVo4ePCgoFKphHHjxtnsk56ebtfGAwcOCACEVatW2bXxxRdfFJo0aSKtNxgMgru7uzBw4MAC30N+U6ZMEQAIqampNuv79+8vABASExMLfe4vv/wiABAWLlxos/7rr78WAAj//POPtK53797F+lsiCILw448/CgCEXbt2CYIgCCaTSfD39xcaN24sZGRkSPtt3rxZACBMmzZNWvfYY48Jbm5uwvXr122Oaf2bk1dwcLAwbNgw6bH175H1dUtyrpXk/AcgjB492q49BX1G+c8Hk8kkNG7cWHjiiSds1gcFBQkRERE266y/53FxcXavZZWVlSXUrFlTCA0NtftZ5/3MunbtKjRp0kTIzMy02d6+fXuhbt26BR47/2eSV2E/+8JotVrhjTfeKPb+RJUdh+oRVUKpqal2/wtfkICAAACQyljXq1cPbdu2xZo1a6R9EhIS8Pvvv2PQoEF2Q1dSU1Nx7949m6UwmZmZ6Nu3L+Li4rBt27ZynXh9+/ZtfPHFF5g6dardMJLU1FQAKNXrbd26FQAQGRlps378+PEA8EBKFguCgMmTJ+OZZ55B27ZtC9wnMjLSZmL/yy+/jICAgALbc/jwYTz//PN45plnMHfu3DK/dmnt2LEDJpMJ48aNs6kAN3LkSLi7uxf5WVqvV2VdAgIC0KtXL/z8888lLsWdnZ2NP//8E/3790etWrWk9UFBQRg4cCD+/vtvm9Lur776KiIiIvDmm2/i5ZdfRu3ate16OJycnKT7ZrMZ8fHxqFOnDjw9PXHs2DG7Nrz88ss4d+6cNCTv559/hoeHB7p27Vqs9xAfHw+1Wl3o+e7m5lboc63b8pevt/Z05S00cT/5f/etr231zz//IDY2FqNGjbI5Zu/evVG/fn3pZx4XF4c9e/Zg+PDhqFGjhs0xChouajKZCu1ZBUp/rhXn/M/MzLR732az2W6/vOdDYmIikpOT0alTJ7tzITU1tVR/m/79919cvXoV48aNk3rtrKyfWUJCAv766y88//zzNn+r4+PjERERgYsXLxY4ZLI4rMcqqnfUy8urWEMOiaoKBieiSqhatWq4fPlykftdunQJAGyqsw0ePBj79u3D9evXAYjzE8xmM15++WW75w8fPhx+fn42i3XOR37Dhg3D33//jdTUVGleU3mZPn06qlWrJs3Byis8PBxeXl747LPPsG/fPsTFxRX6ZSe/69evQ6lUok6dOjbrAwMD4enpKX1G5WnNmjU4ffq03RdzIPcLUf369W3Wq1Qq1K1b124+ze3bt9G7d28YDAbEx8cXOWfpfq9dVtbPKjw83Ga9VqtFrVq1ivwsb9y4YXeu/frrr0hOTi7xF7O4uDikp6fbtQUAGjRoAIvFgps3b9qsX7ZsGdLT03Hx4kWsWLHC5osxAGRkZGDatGkICQmBTqeDr68v/Pz8kJSUhOTkZLvX8fPzQ+/evbF8+XIAwPLlyzFkyBC7suIlZQ1F+UNMXoWFK+vn6OHhUeTrGAwGu5/H8OHDbfYp7GcOiOewdbv14s3FmXMIAMnJyfedZ1Pac6045/+yZcvs3veff/5pt9/mzZvx6KOPQq/Xw9vbG35+fliyZIndudCuXTv8+uuv+Omnn3D37l3cu3cP6enphb6+lfXv+/0+s0uXLkEQBEydOtWuzdOnTwcAm7l7xZX3Z+/k5IQaNWrYzauyEgSBhSHoocLgRFQJPfXUU0hISMCyZcsK3ScmJgYrV66En58fHn30UWn9Cy+8AI1GI/U6rV69Gq1bty7wy8+0adOwfft2m6Ww/60+duwYNm7cCD8/P2luQnk4e/YsVqxYgQ8++KDAeQuurq5Yv349DAYDOnbsCH9/f/j5+UlzRIqjov7hN5lMmDp1Kl555RXUq1fPbnv+L+tFuXTpEmrUqIHvvvsOO3bswMqVK0v92nILDAy0O9defPHFCnv93bt3SwVBCrrGz5tvvokPP/wQzz//PH744Qf8+eef2L59O3x8fArtERs+fDi+//57nD17Fnv27LEpqlIUHx8fZGVl2QWkBg0aABDnDBXGuq1hw4Y2669duwaNRoNq1aoV+fp6vd7u5zFt2rRit7+0EhISYDKZEBgYWK7HLe75369fP7v3nb93au/evejbty/0ej0WL16MrVu3Yvv27Rg4cKDdNbS+/vprNGvWTCpe4+fnV2TPcHFZz7u3337brs3WJf9/ChVH3p/9L7/8gmbNmmHcuHH44Ycf7PZNSkqCr69vmd8LUWXB4hBEldCUKVOwYcMGvPHGGzh37hwGDhyI7OxsAOL/3O/cuRPTpk1DYmIi1q5dazPsxdvbG71798aaNWswaNAg7Nu3DwsWLCjwdZo0aWI3ubywa8P897//Rd++faFSqfDUU09h2bJleOWVV8r8XidPnozmzZtjwIABhe7TvXt3zJkzB4MGDcLSpUtRq1YtjB8/XvpMChMaGgqLxYKLFy9KX0gBMXQmJSUhNDS0zO3Pa/HixYiNjbWr/mZlnbB//vx5myFm1jbmn4AdFBSErVu3IiAgABs3bsT48ePRq1cv+Pn5lfi1y8r6WeVvu8lkkqo+3o9er7fbZ+HChXB3dy/xFzM/Pz84Ozvj/PnzdtvOnTsHpVKJkJAQad3du3fx5ptvokePHtBqtXj77bcRERFh8/P/6aefMGTIEHz22WfSuszMzPtWDOzZsyf0ej1eeOEFdOzYEbVr18bevXuL9R6svY5Xr15F06ZNpfVPPfUUZs+ejVWrVuGxxx6ze152djbWrl0LLy8vdOjQwWbbP//8g5YtWxar10ulUtn9PPK/17w/8yeeeMJm2/nz56Xt1vPh1KlTRb7umTNnAMDm9zG/0pxrxT3/q1evbvf8BQsW2Fzo9eeff4Zer8cff/xh87f122+/tTteWFgYVq9ejSZNmmD48OHo378/Vq1aZVdiPr/atWsDED+zwn53rO9do9EU+ftVEvl/9r1794a3tze2bduG559/Xlp/+/ZtmEym+/6siKoa9jgRVUKBgYE4cOAAevbsic8++wwtW7bE6tWrYTAYEBoaiuHDh8PJyQmbNm0q8H/tX375ZZw5cwYTJkyASqXCCy+8UOY2derUCYD4j+wLL7yACRMm2JWTLqkDBw5g48aN+Pjjj+/bK3Tz5k2MGjUK//nPf/Dqq6+iW7du8PLyKvL4vXr1AgC74Dhv3jwAsKmOVVapqan48MMP8dZbbxX6v+ldu3aFTqfDwoULbXox1qxZg5iYGLty6PXq1ZPmsX3xxRewWCxSta2SvnZZdevWDVqtFgsXLrT5X/dly5YhOTn5vp9lQT02//77L37//Xf079+/xMPbVCoVevTogY0bN9oMb4yJicHatWvRsWNHuLu7S+tHjhwJi8WCZcuW4euvv4ZarcYrr7xi8z5UKpVdb8IXX3xx33CuVqsxePBgnDhxwm6YW1HatWsHAHZly9u3b49u3brh22+/tSl5b/Xee+/hwoULeOedd2x6MM+cOYMzZ84UeDmC0mrdujX8/f2xdOlSm/L9v//+O86ePSv9zP38/PDYY49h+fLluHHjhs0x8n+m69atg1arRceOHQt93ZKea+V9/qtUKigUCpuf/bVr17Bhwwa7fbOysjBo0CA0atQI8+fPR7du3WzCXmFatmyJmjVrYsGCBXaB1fqe/f390blzZ3z11Ve4e/eu3THyl8MvLevr5f9Ps6NHjwIoXUU+osqKPU5ElVRISAg2btyIu3fvYt++fZg7dy6ioqKwdOlSNG/eHM2bNy80bPTu3Rs+Pj748ccf0bNnz2IVmiiJzz//HA0aNMCbb75pN7zjwIEDNnNWrBPYL126hMOHD6NNmzbSNuuFYO/3v6kWiwUvv/wyqlevjo8//rhE7WzWrJl0keCkpCQ8/vjjOHz4MFauXIn+/fujS5cuNvtbC19YWb8E5l1X2DVNjh07Bl9fX7zzzjuFtsfb2xtTpkzB1KlTERERgX79+uHKlSv48ssv0axZM4wYMaLQ5wYGBmLu3LkYMWIEXnrpJSkUFve1y8rPzw+TJ0/GzJkz8eSTT6Jv3744f/48Fi9ejEceeeS+pe5v3LiB3r1747nnnkNwcDBOnTqFb775Br6+vqWej/XBBx9g+/bt6NixI0aNGgW1Wo2vvvoKRqMRc+bMkfb79ttvsWXLFqxYsQLVq1cHIAail156CUuWLMGoUaMAiD093333HTw8PNCwYUMcOHAAO3bsKHLi/6xZszBhwoRiBfm8atWqhcaNG2PHjh12oWvVqlXo2rUr+vXrh4EDB6JTp04wGo345ZdfsHv3bgwYMAATJkyQ9v/jjz/w9ttvAxCHg65evVradvv2bRgMBqxevbrElyPQaDT45JNPMGzYMDz++ON48cUXpXLkYWFhNqXYFy5ciI4dO6Jly5Z49dVXUbNmTVy7dg1btmxBVFQULl68iOnTp+P777/HpEmTbIJtfiU918r7/O/duzfmzZuHJ598EgMHDkRsbCwWLVqEOnXq2A2hnDlzJk6ePIl///33viXS81MqlViyZAn69OmD5s2bY9iwYQgKCsK5c+dw+vRp/PHHHwCARYsWoWPHjmjSpAlGjhyJWrVqISYmBgcOHMCtW7dw/PjxEr+/7Oxs6W9aamoqvv32WxgMBvTv399mv+3bt6NGjRosRU4PF1lq+RFRuStpGdlRo0YJAIS1a9fabSttOfK8Vq5cKQAQfvvtN5v97rfkLZELQFAoFMLRo0dtjpu/lO5HH30k6HQ64fjx43b7FVWOXBAEwWw2CzNnzhRq1qwpaDQaISQkRJg8ebJNeV9BEMuRF9X+vEv+cuQAhPnz59sc01qWOL9FixYJ9evXFzQajRAQECC89tprQnx8/H0/B6snnnhCqFGjhlTGuqSvnV9xy5FbffnllzZtf+ONN+5bOlsQBCE1NVUYOXKkEBoaKmi1WsHPz094+eWX7UpXl7Sk/bFjx4SIiAjB1dVVcHZ2Frp06SLs379f2n7z5k3Bw8ND6NOnj12bnn76acHFxUW4cuWKIAiCkJiYKAwbNkzw9fUVXF1dhYiICOHcuXNCaGhogb8PhZUbL2p7XvPmzRNcXV0LLIWempoqzJgxQ2jUqJHg5OQkuLm5CR06dBBWrFhhV+Lbeg4UtVgVtxy51fr164UWLVoIOp1O8Pb2FgYNGiTcunXL7vmnTp0Snn76acHT01PQ6/VCeHi4MHXqVEEQBOH7778XGjduLHz++ed27c9fjtyqOOdaSc5/lKAc+bJly4S6desKOp1OqF+/vvDtt9/aHXPv3r2CSqUSvvrqqwJf+37lyK3+/vtvoXv37oKbm5vg4uIiNG3a1OayBIIgCJcvXxYGDx4sBAYGChqNRggODhaeeuop4aeffirwmEWVI897Tri6ugotW7YUvvvuO5v9srOzhaCgIGHKlClFvgeiqkQhCPn6yYnoofDWW29h2bJliI6Otrt4pxxmzJiB3bt3Y/fu3XI3hcghJCcno1atWpgzZ06Z5gt27twZnTt3LnR+z7Vr11CzZk27YXNEhdmwYQMGDhyIy5cvIygoSO7mEFUYznEieghlZmZi9erVeOaZZxwiNBGRPQ8PD7zzzjuYO3duia9lRfQgffLJJxgzZgxDEz10OMeJ6CESGxuLHTt24KeffkJ8fHyBhQTkUqdOnWJd34ToYTJx4kRMnDixTMfo3r37fSufubq6YtCgQWV6DXq4HDhwQO4mEMmCQ/WIHiK7d+9Gly5d4O/vj6lTp2LMmDFyN4mIiIioUmBwIiIiIiIiKgLnOBERERERERWBwYmIiIiIiKgID11xCIvFgjt37sDNza3Qi4MSEREREVHVJwgCUlNTUa1aNSiV9+9TeuiC0507dxASEiJ3M4iIiIiIyEHcvHkT1atXv+8+D11wcnNzAyB+OO7u7jK3BjCbzfjzzz/Ro0cPaDQauZtDlQjPHSoLnj9UFjx/qCx4/lBpPYhzJyUlBSEhIVJGuJ+HLjhZh+e5u7s7THBydnaGu7s7/3hQifDcobLg+UNlwfOHyoLnD5XWgzx3ijOFh8UhiIiIiIiIisDgREREREREVAQGJyIiIiIioiI8dHOciIiIiB4EQRCQlZWF7OxsuZvi0MxmM9RqNTIzM/lZUYmU9tzRaDRQqVRlfn0GJyIiIqIyMplMuHv3LtLT0+VuisMTBAGBgYG4efMmr6lJJVLac0ehUKB69epwdXUt0+szOBERERGVgcViwdWrV6FSqVCtWjVotVoGgvuwWCxIS0uDq6trkRccJcqrNOeOIAiIi4vDrVu3ULdu3TL1PDE4EREREZWByWSCxWJBSEgInJ2d5W6Ow7NYLDCZTNDr9QxOVCKlPXf8/Pxw7do1mM3mMgUnnq1ERERE5YAhgMgxlVcPsOy/4YsWLUJYWBj0ej3atm2Lw4cP33f/BQsWIDw8HE5OTggJCcFbb72FzMzMCmotERERERE9jGQNTuvXr0dkZCSmT5+OY8eOoVmzZoiIiEBsbGyB+69duxaTJk3C9OnTcfbsWSxbtgzr16/Hu+++W8EtJyIiInq4mc1muZtAOfizqBiyBqd58+Zh5MiRGDZsGBo2bIilS5fC2dkZy5cvL3D//fv3o0OHDhg4cCDCwsLQo0cPvPjii0X2UhERERFR2URFRWHIkCGoV68evLy84O7ujuTkZLmb9VDavXs3nn32WdSuXRseHh4IDQ2FIAhyN6vKk604hMlkwtGjRzF58mRpnVKpRLdu3XDgwIECn9O+fXusXr0ahw8fRps2bXDlyhVs3boVL7/8cqGvYzQaYTQapccpKSkAxGTuCOnc2gZHaAtVLjx3qCx4/lBZ8PyxZTabIQgCLBYLLBaL3M0pkZs3b2LGjBn4448/cO/ePQQFBaFfv36YOnUqfHx8pP12796Nvn37YtSoUVi7di3c3d3h5OQENze3Er9n6xd862dGJbNmzRqMGjUK7777LqZMmQJnZ2e4ublBEIQqH55Ke+5YLBYIglBgcYiS/B1TCDJ9wnfu3EFwcDD279+Pdu3aSevfeecd/O9//8OhQ4cKfN7ChQvx9ttvSxeZe/3117FkyZJCX2fGjBmYOXOm3fq1a9ey8g0RERGVmVqtRmBgIEJCQqDVauVuTrFdu3YNPXr0QO3atTFlyhTUqFED586dw7Rp02A2m7F9+3Z4eXlBEAS0bt0aY8eOxeDBg+Vu9kMtLS0NjRs3xrfffosuXbrI3ZxKw2Qy4ebNm4iOjkZWVpbNtvT0dAwcOBDJyclwd3e/73EqVTny3bt346OPPsLixYvRtm1bXLp0CWPHjsWsWbMwderUAp8zefJkREZGSo9TUlIQEhKCHj16FPnhVATrH6bu3btDo9HI3RyqRHjuUFnw/KGy4PljKzMzEzdv3oSrqyv0ej0EQUCGOVuWtjhpVMWuIDZp0iTodDrs2LEDTk5OAIBGjRqhQ4cOqFu3Lj755BMsXrwYZ8+exc2bN3H79m00a9YMMTExaN68OebMmYOOHTtCEASEh4fjtddew/jx46XjR0VFoVWrVjh//jxu3bqFrl27Ij4+Hh4eHkhNTcXYsWORlJSEX3/9FQCwbds2fPTRRzh16hRUKhUeffRRLFiwALVr1wYgBr3atWvj6NGjaN68OW7fvo233noLe/bsQUZGBrp27YqFCxeievXqAICZM2di48aNOHbsGAAgKSkJPj4+2LlzJzp37gwAGDZsmE0bLl++jPHjx+PQoUMwGAxo0KABPvzwQ3Tr1k16X3fv3sWYMWOwZ88eJCQkSOvj4+Ph6elp9zlb223l5eWFxx9/HF9//bXUq6dSqfDzzz+jf//+ds9v2bIl+vXrh+nTp2Pfvn1wdnbGn3/+idGjRyMpKQnt27fH/Pnz0ahRI+k5P//8M2bMmIFLly4hKCgIY8aMsfk+XKtWLQwfPhxnzpzBpk2b4OnpicmTJ2PUqFHSPnnbJAgChg4diuPHj2PXrl3w8vIq1mdV3gRBQGpqKtzc3EpUKS8zMxNOTk547LHHoNfrbbZZR6MVh2zBydfXFyqVCjExMTbrY2JiEBgYWOBzpk6dipdffhkjRowAADRp0gQGgwGvvvoq3nvvvQLLgOp0Ouh0Orv1Go3Gof7YO1p7qPLguUNlwfOHyoLnjyg7OxsKhQJKpRJKpRLppiw0nrFdlraceT8Cztqir1OTkJCAP//8Ex9++CFcXFxstlWrVg2DBg3CDz/8gCVLliA+Ph5msxmrV6/GN998g5o1a+Lzzz9Hr169cPHiRQQFBWH48OFYsWIFJkyYIB1n5cqVeOyxx1CvXj3cuXMHgDgtI+8XXuvnBgAZGRmIjIxE06ZNkZaWhmnTpuGZZ55BVFSU9Nlaj5GdnY2nnnoKGo0GmzZtgkajwdixY/F///d/OHLkCBQKhfQ6eZ9nvbXet+5nfZyeno7evXvjo48+gk6nw6pVq9CvXz+cP38eNWrUAABMmDABFy9exLZt2xASEoL9+/fjmWeesTluXtZ1O3bsQKNGjXD16lU899xz+PTTT/HJJ5/Y7FdYSXtrG+Pj43H37l3873//w7p16+Dl5YVp06ahV69euHDhApycnHD06FG88MILmDFjBgYMGID9+/dj1KhR8PX1xdChQ6Vjfvrpp3j33Xfx/vvv448//sC4ceMQHh6O7t2727XpzTffxIEDB/D3339LYa84n1V5sw7Py/szKw7reVfQ36yS/A2TrTiEVqtFq1atsHPnTmmdxWLBzp07bYbu5ZWenm73IVnHKVb1MZ1ERERE5eXixYsQBAENGjQocHuDBg2QmJiIuLg46cvq3Llz0atXLzRo0ACLFy9GtWrVsGjRIgDA0KFDcf78ealgl9lsxtq1azF8+HAAkHq0MjIyCm3TM888g//7v/9DnTp10Lx5cyxfvhwnT57EmTNn7PbdsWMHTpw4gVWrVqFt27Zo2bIl1qxZg6ioKJvvliXVrFkzvPbaa2jcuDHq1q2LWbNmoXbt2vjtt9+kfaKiojBw4EA88sgjCAwMhLe3d7GO7ePjg8DAQNSsWRNOTk7w8PAocfusP4v//ve/eOyxx9CkSROsWrUKaWlpWLNmDQCx+FrXrl0xdepU1KtXD0OHDsWYMWMwd+5cm2N16NABkyZNQr169fDmm2/i2Wefxfz58+1ec8qUKfj111+xY8cOm86N4nxWVY2sQ/UiIyMxZMgQtG7dGm3atMGCBQtgMBgwbNgwAMDgwYMRHByM2bNnAwD69OmDefPmoUWLFtJQvalTp6JPnz5lugqwXC7GpOLc3WTcNsjdEiIiIiovThoVzrwfIdtrl0RJ/uO5Q4cO0n2lUon27dtLoaZatWro3bs3li9fjjZt2mDTpk0wGo147rnnAAB169aFVqvF999/j3HjxhV4/IsXL2LatGk4dOgQ7t27J4WEGzduoHHjxtJ+7du3R3Z2Njw9PdGwYUNpfY0aNRASEoIzZ86UerhYWloaZsyYgS1btuDu3bvIyspCRkYGbty4Ie1Ts2ZNbN26Fa+//nqxQ5O13UqlEgaDAV26dLEZ1ggAL774IlQqFdzc3NCyZUvMnTvX5v1ZqdVqtG3bVnrs5uaGZs2aST+Ls2fPol+/fjbP6dChAxYsWIDs7GzpO3P+jop27dphwYIFNuu+/PJL7Ny5E0888QTCwsJsthXns6pqZC1HPmDAAHz66aeYNm0amjdvjqioKGzbtg0BAQEAxF+Uu3fvSvtPmTIF48ePx5QpU9CwYUO88soriIiIwFdffSXXWyiT9Udu4s11x3H0nuzXISYiIqJyolAo4KxVy7IUd95HnTp1oFAocPbs2QK3nz17Fl5eXvDz84OXl9d936vViBEjsG7dOmRkZODbb7/FgAEDpEJc3t7emDdvHiZNmgQXFxdUr14da9eutTlWnz59kJCQgG+++QaHDh2SCoWZTCab/davX49Zs2YVq00l9fbbb+PXX3/FRx99hL179yIqKgpNmjSxacP8+fNhNBrh6+sLV1dX9OzZs1jHXr9+PaKiorB3714kJyfj7bffttk+f/58REVFYdOmTTCbzXj++eftjlHcn0V5OXz4MLZu3YpTp07Zfd8uzmdV1cj+jX3MmDG4fv06jEYjDh06ZJOgd+/ejRUrVkiP1Wo1pk+fjkuXLkmJdtGiRQVOxKsMXPVih1+mPPNHiYiI6CHl4+OD7t27Y/HixXbD56Kjo7FmzRoMGDAACoUCtWvXhlqtxr59+6R9LBYL9u/fb9Mj0qtXL7i4uGDJkiXYtm2bNEzPavTo0UhOTsaJEyewZ88e9OnTR9oWHx+P8+fPY8qUKejatas0VLAgISEh6NixI5KSkmyG8d28eRM3b94ssJemuPbt24ehQ4fi6aefRpMmTRAYGIhr167Z7GMd/hYWFoZDhw7hv//9b7GOHRISgjp16qBjx44YNmyYVJDCKjAwEHXq1JEqGJ45c8auVHb9+vWRlZVlU306NTUVx48fl953gwYNbH5W1vdVr149mxFaBw8etNnn4MGDdkM3FyxYgJ49e2Lx4sWYMGGCTW9ScT6rqkb24PQwc9UxOBEREZE8vvzySxiNRkRERGDPnj24efMmtm3bhu7duyM4OBgffvghAMDV1RUjR47EhAkTsHXrVpw9exajRo3CnTt37KqwDR06FJMnT0bdunULnLPu5OSE2rVro1atWnBzc5PWe3l5wcfHB19//TUuXbqEv/76y6YKXH7t27dH27ZtMXjwYBw+fBjHjh3DoEGD0Lx5czzxxBPSfoIgIDMzE5mZmdJ1PU0mk7QuOzsbFotFCih169bFL7/8gqioKBw/fhwDBw60u17QwYMH8e677+Knn35Co0aNEBwcXKzPOz4+HtHR0Thx4gS+//571K9f32a72WxGZmYmoqOjsXr1atSrV8+ucEF4eDh69uyJESNGYO/evTh58iQGDx4MV1dXDBw4EAAwfvx47Ny5E7NmzcKFCxewcuVKfPnll3Y9XPv27cOcOXNw4cIFLFq0CD/++CPGjh1rs491KOIzzzyDXr16SQXaivtZVTUMTjJyy+lxMjI4ERERUQWrW7cu/vnnH9SqVQvPP/88ateujVdffRVdunTBgQMHbObvfPrpp+jfvz+GDBmC5s2b4/jx4/jjjz8QFBRkc8xXXnkFJpNJmq9eXEqlEuvWrcPRo0fRuHFjvPXWW3bFDPL7+eefERISgq5du+Lxxx+Hr68vNmzYYDNk7cSJE3BycoKTk5NU2CAiIkJat3r1amzatAkjR44EIBZW8PLyQvv27dGnTx9ERESgZcuW0vHi4uLw3HPPYd68eTbri6Nbt24ICgrC448/Dm9vb7uequeffx5OTk6oV68e7t69i/Xr1xd4nFWrVqFFixbo06cP2rZti7S0NPzxxx9SAY6WLVvihx9+wLp169C4cWNMmzYN77//vk1FPUAMWP/88w9atGiBDz74APPmzUNEROFz87788kscP34cX3/9dbE+q6pItgvgyiUlJQUeHh7FusjVg7blxF2MXnsMddwF/D4hgiVdqUTMZjO2bt2KXr168dyhEuP5Q2XB88dWZmYmrl69ipo1a9pdI+Zhs3fvXnTt2hU3b96U5qznZ7FYkJKSAnd39xKVlH5QNmzYgA0bNthMD6nqwsLCMG7cuEILdTiq0p479/sdLUk2qFQXwK1qOMeJiIiIqgKj0Yi4uDjMmDEDzz33XKGhyRGpVCr+BwAVi/wx/yHmqhMn6GVmydwQIiIiojL4/vvvERoaiqSkJMyZM0fu5pRInz598M0338jdDKoE2OMkI1ed+L8b7HEiIiKiymzo0KF2c2jIcVX16ncPCnucZMShekRERERElQODk4ys5cizBAWMWVW7fCMRERERUWXG4CQja3ACAIORE52IiIiIiBwVg5OMVEoFnLVigYg0BiciIiIiIofF4CQza68TgxMRERER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fPgwTp06hWXLlhW6z+TJkxEZGSk9TklJQUhICHr06FHkh1MRzGYztm/fju7duyP+6F1suXkOXn5B6NWrmdxNIweX99zRaDRyN4cqGZ4/VBY8f6gseP5QaT2Ic8c6Gq04ZB+qVxbLli1DkyZN0KZNm0L30el00Ol0dus1Go1D/bJqNBp4OIvtNJgtDtU2cmyOdi5T5cLzh8qC5w+VBc8fKq3yPHdKchxZi0P4+vpCpVIhJibGZn1MTAwCAwPv+1yDwYB169bhlVdeeZBNrFDSBXAzOeaXiIiIiMiRyBqctFotWrVqhZ07d0rrLBYLdu7ciXbt2t33uT/++COMRiNeeumlB93MCuPGcuRERERERA5J9qF6kZGRGDJkCFq3bo02bdpgwYIFMBgMUpW9wYMHIzg4GLNnz7Z53rJly9C/f3/4+PjI0ewHwtrjZDBmy9wSIiIiIiLKS/bgNGDAAMTFxWHatGmIjo5G8+bNsW3bNqlgxI0bN6BU2naMnT9/Hn///Tf+/PNPOZr8wLjorNdx4lA9IiIiIiJHIntwAoAxY8ZgzJgxBW7bvXu33brw8HDIWEX9gck7VE8QBCgUCplbREREREREgMxznMiWdaieRQAyzByuR0RERETkKBicHIiTRgVlTidTWiYLRBAREREROQoGJweiUCjgap3nxMp6REREREQOg8HJwbjpxYtwsceJiIiIiMhxMDg5GFdey4mIiIiIyOEwODkYa4GIVPY4ERERERE5DAYnB8MeJyIiIiIix8Pg5GCsPU5pvAguEREREZHDYHByMK5aMTgZTLyOExERERGRo2BwcjCc40RERERE5HgYnBxM7hwnDtUjIiIiInIUDE4Oxk2a48QeJyIiIiIiR8Hg5GBYVY+IiIiIyPEwODkYznEiIiIiInI8DE4Ohj1ORERERESOh8HJwUhznBiciIiIiIgcBoOTg3HVaQCwOAQRERERkSNhcHIw0hwn9jgRERERETkMBicHY53jZMqywJRlkbk1REREREQEMDg5HBetSrpvYK8TEREREZFDYHByMGqVEk4aMTyxQAQRERERkWNgcHJAvJYTEREREZFjYXByQG68lhMRERERkUNhcHJArtK1nMwyt4SIiIiIiAAGJ4dkrazHoXpERERERI6BwckBuXKoHhERERGRQ2FwckDSUD32OBEREREROQQGJwfE4hBERERERI6FwckBsRw5EREREZFjYXByQK46DQD2OBEREREROQoGJwfkqlMBAAwMTkREREREDoHByQHlXseJwYmIiIiIyBEwODkg61A9znEiIiIiInIMDE4OiNdxIiIiIiJyLAxODsiN13EiIiIiInIoDE4OiD1ORERERESOhcHJAeUtDmGxCDK3hoiIiIiIGJwckLXHCQAMJvY6ERERERHJjcHJAenUSmhUCgAcrkdERERE5AgYnByQQqHInefEAhFERERERLJjcHJQLjnBKZU9TkREREREsmNwclDWHicDgxMRERERkewYnBwUr+VEREREROQ4GJwclCuH6hEREREROQwGJwflqtcAYI8TEREREZEjYHByUFJVPfY4ERERERHJjsHJQUlznBiciIiIiIhkx+DkoKQ5ThyqR0REREQkOwYnB8WhekREREREjoPByUG5SuXIzTK3hIiIiIiIGJwclBt7nIiIiIiIHAaDk4Ny4RwnIiIiIiKHweDkoKxD9QwmBiciIiIiIrkxODkoaagee5yIiIiIiGTH4OSgXPNcx0kQBJlbQ0RERET0cGNwclDWcuTmbAHGLIvMrSEiIiIiergxODkoF61aus/KekRERERE8mJwclBKpSL3Iric50REREREJCsGJwfmyms5ERERERE5BAYnB2YtEMFrORERERERyYvByYGxx4mIiIiIyDEwODkwN6kkuVnmlhARERERPdwYnByYtbIei0MQEREREcmLwcmBSXOcOFSPiIiIiEhWDE4OzDrHycDgREREREQkKwYnBybNceJQPSIiIiIiWTE4OTBrjxOH6hERERERyYvByYG5sseJiIiIiMghMDg5MF7HiYiIiIjIMcgenBYtWoSwsDDo9Xq0bdsWhw8fvu/+SUlJGD16NIKCgqDT6VCvXj1s3bq1glpbsXKv48TgREREREQkJ7WcL75+/XpERkZi6dKlaNu2LRYsWICIiAicP38e/v7+dvubTCZ0794d/v7++OmnnxAcHIzr16/D09Oz4htfAVx1GgAcqkdEREREJDdZg9O8efMwcuRIDBs2DACwdOlSbNmyBcuXL8ekSZPs9l++fDkSEhKwf/9+aDRiqAgLC6vIJlcoFocgIiIiInIMsgUnk8mEo0ePYvLkydI6pVKJbt264cCBAwU+57fffkO7du0wevRobNy4EX5+fhg4cCAm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jhODExERERFRhStWcFKr1UhLS0NqaioAYOzYsWjdujVu3LiBXbt2YdeuXbh+/Tpatmxpc2FcKj/SHCcO1SMiIiIiqnDFHqrn6+uL9PR0AMD+/ftx+PBhuLq6Stvd3Nzw/vvvo127duXfSuJ1nIiIiIiIZFTs6zi1aNECv//+OwDA09MTSUlJdvskJydDq9WWW+MoF6vqERERERHJp9jBafTo0fjggw/w119/oX///njttddw6NAhCIIAQRBw8OBBvP766+jdu/eDbO9Dy1UnXiOL13EiIiIiIqp4xR6q17lzZyxevBjPPvssnJyccPfuXbRv3x5qtXiIrKwsPPnkk/j8888fWGMfZq4cqkdEREREJJsSlSMfNGgQ+vfvj7179yIuLg4WiwUA4OXlhfr166NevXoPpJGUJzixx4mIiIiIqMKV+DpOLi4uePLJJx9EW+g+OMeJiIiIiEg+pboA7sKFC++7/T//+U+pGkOFyztUz2IRoFQqZG4REREREdHDo1TBady4cXB2doa/vz8EQbDZplAoGJweADd97o/KYMqCm14jY2uIiIiIiB4uxa6ql9d7770HpVKJbt264eDBg7h69aq0XLlypbzbSAB0aiXUOb1MBmO2zK0hIiIiInq4lCo4zZo1C2fPnoXJZEJ4eDg+/PBDGI3G8m4b5aFQKPLMczLL3BoiIiIioodLqYITAAQHB2PFihX466+/sHPnTtSpUwerVq0qz7ZVfTePQPn3Z/BJO1es3a3znHgtJyIiIiKiilWqOU4nTpzIPYBajQULFmDjxo0YM2YMPv/8cxw9erTcGlilnVgH1ZH/ItAvoli781pORERERETyKFVwat68ORQKhVQYIu/9qKiocmtclVetJQDAK/1qsXa3FojgtZyIiIiIiCpWqYLT1avF+6JPRQgWg5NHxjUIlmwA96+UJw3VY48TEREREVGFKlVwCg0NLe92PJx860HQuEBtNsB87wIQ3PS+u7vo2ONERERERCSHUgWn33777b7b+/btW6rGPHSUKghBTaG4cQCKu/8WGZykoXrscSIiIiIiqlClCk79+/cvdJtSqURWFr/YF5cQ1AK4cQCKO/8CGHLffVkcgoiIiIhIHqUKThaLpcD1mZmZcHZ2LlODHjZCtRYAIPY4FcFVJ86BYjlyIiIiIqKKVerrOBVEoVBAoVCU5yGrPCEo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nUH9oDOoH3QG9YNjdTxqJ5MJMhmhIyddcGpqapIkDRw40OeeAAAAAMgHTU1NKi0t7fAeyxxJvPoXSaVS2rVrl0pKSmRZlt/d0f79+zVw4ED98ssv6tmzp9/dQTdC7aAzqB90BvWDzqB+cKyOR+0YY9TU1KSKigoFAh0/xXTSjTgFAgENGDDA724cpmfPnnx54JhQO+gM6gedQf2gM6gfHKuurh2vkaYMFocAAAAAAA8EJwAAAADwQHDyWTQaVW1traLRqN9dQTdD7aAzqB90BvWDzqB+cKz8rp2TbnEIAAAAADhajDgBAAAAgAeCEwAAAAB4IDgBAAAAgAeCEwAAAAB4IDj56Nlnn9Xpp5+ugoICVVVV6YsvvvC7S8hD69ev17Rp01RRUSHLsrRy5cqc68YYPfjggyovL1dhYaEmT56sHTt2+NNZ5JUFCxbovPPOU0lJiU499VRdccUVamhoyLmntbVVNTU16tu3r3r06KGrr75av//+u089Rj557rnnVFlZ6f7QZHV1td577z33OrWDo/HYY4/JsizNmTPHbaOG8E8eeughWZaVs5155pnudb9qh+Dkk9dff11z585VbW2ttmzZojFjxmjKlCnas2eP311DnmlubtaYMWP07LPPtnt94cKFWrx4sZ5//nlt3LhRxcXFmjJlilpbW09wT5Fv6urqVFNTo88//1xr1qxRIpHQJZdcoubmZveeu+++W++8847efPNN1dXVadeuXbrqqqt87DXyxYABA/TYY49p8+bN2rRpky6++GJNnz5d33zzjSRqB0fuyy+/1AsvvKDKysqcdmoIHRk1apR2797tbp9++ql7zbfaMfDF+PHjTU1NjXtu27apqKgwCxYs8LFXyHeSzIoVK9zzVCplysrKzBNPPOG27d2710SjUfPqq6/60EPksz179hhJpq6uzhjj1Eo4HDZvvvmme8/27duNJLNhwwa/uok81rt3b/Piiy9SOzhiTU1NZtiwYWbNmjXmoosuMrNnzzbG8P2DjtXW1poxY8a0e83P2mHEyQfxeFybN2/W5MmT3bZAIKDJkydrw4YNPvYM3c2PP/6o3377LaeWSktLVVVVRS3hMPv27ZMk9enTR5K0efNmJRKJnPo588wzNWjQIOoHOWzb1muvvabm5mZVV1dTOzhiNTU1uuyyy3JqReL7B9527NihiooKnXHGGbr++uu1c+dOSf7WTui4vjva9ccff8i2bfXv3z+nvX///vr222996hW6o99++02S2q2lzDVAklKplObMmaOJEydq9OjRkpz6iUQi6tWrV8691A8ytm7dqurqarW2tqpHjx5asWKFRo4cqfr6emoHnl577TVt2bJFX3755WHX+P5BR6qqqrR06VKNGDFCu3fv1sMPP6wLL7xQ27Zt87V2CE4AcBKoqanRtm3bcuaIA15GjBih+vp67du3T2+99ZZmzpypuro6v7uFbuCXX37R7NmztWbNGhUUFPjdHXQzU6dOdY8rKytVVVWlwYMH64033lBhYaFv/WKqng9OOeUUBYPBw1b/+P3331VWVuZTr9AdZeqFWkJHZs2apXfffVfr1q3TgAED3PaysjLF43Ht3bs3537qBxmRSERDhw7V2LFjtWDBAo0ZM0ZPPfUUtQNPmzdv1p49e3TuuecqFAopFAqprq5OixcvVigUUv/+/akhHLFevXpp+PDhamxs9PX7h+Dkg0gkorFjx2rt2rVuWyqV0tq1a1VdXe1jz9DdDBkyRGVlZTm1tH//fm3cuJFagowxmjVrllasWKGPP/5YQ4YMybk+duxYhcPhnPppaGjQzp07qR+0K5VKKRaLUTvwNGnSJG3dulX19fXuNm7cOF1//fXuMTWEI3XgwAF9//33Ki8v9/X7h6l6Ppk7d65mzpypcePGafz48Vq0aJGam5t1yy23+N015JkDBw6osbHRPf/xxx9VX1+vPn36aNCgQZozZ44effRRDRs2TEOGDNH8+fNVUVGhK664wr9OIy/U1NTolVde0dtvv62SkhJ37ndpaakKCwtVWlqq2267TXPnzlWfPn3Us2dP3XXXXaqurtaECRN87j38dv/992vq1KkaNGiQmpqa9Morr+iTTz7RBx98QO3AU0lJifs8ZUZxcbH69u3rtlND+Cfz5s3TtGnTNHjwYO3atUu1tbUKBoO69tpr/f3+Oa5r9qFDTz/9tBk0aJCJRCJm/Pjx5vPPP/e7S8hD69atM5IO22bOnGmMcZYknz9/vunfv7+JRqNm0qRJpqGhwd9OIy+0VzeSzJIlS9x7Dh48aO68807Tu3dvU1RUZK688kqze/du/zqNvHHrrbeawYMHm0gkYvr162cmTZpkPvzwQ/c6tYOjlb0cuTHUEP7ZjBkzTHl5uYlEIua0004zM2bMMI2Nje51v2rHMsaY4xvNAAAAAKB74xknAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIAAAAADwQnAAAAAPBAcAIA5L1EIqGlS5fqggsuUL9+/VRYWKjKyko9/vjjisfjfncPAHASsIwxxu9OAADQkfr6et1zzz268847dc4556i1tVVbt27VQw89pPLycn3wwQcKh8N+dxMA8C/GiBMAIO+NHj1aa9eu1dVXX60zzjhDI0eO1IwZM7R+/Xpt27ZNixYtkiRZltXuNmfOHPe9/v77b910003q3bu3ioqKNHXqVO3YscO9fuutt6qyslKxWEySFI/Hdc455+imm26SJP3000+yLEv19fXua+bPny/Lstx+AAD+fQhOAIC8FwqF2m3v16+frrrqKi1fvtxtW7JkiXbv3u1u1dXVOa+5+eabtWnTJq1atUobNmyQMUaXXnqpEomEJGnx4sVqbm7WfffdJ0l64IEHtHfvXj3zzDPt9uHXX3/VokWLVFhY2BUfFQCQp9r/LxEAAHlo1KhR+vnnn3PaEomEgsGge96rVy+VlZW555FIxD3esWOHVq1apc8++0znn3++JGn58uUaOHCgVq5cqWuuuUY9evTQsmXLdNFFF6mkpESLFi3SunXr1LNnz3b79MADD2jGjBn66KOPuvKjAgDyDMEJANBtrF692h0Zyli4cKGWLVt2RK/fvn27QqGQqqqq3La+fftqxIgR2r59u9tWXV2tefPm6ZFHHtG9996rCy64oN3327Jli1asWKGGhgaCEwD8yxGcAADdxuDBgw9r+/777zV8+PAu/TupVEqfffaZgsGgGhsb//G+e+65R/PmzVN5eXmX/n0AQP7hGScAQN7766+/1NTUdFj7pk2btG7dOl133XVH9D5nnXWWksmkNm7c6Lb9+eefamho0MiRI922J554Qt9++63q6ur0/vvva8mSJYe916pVq/Tdd99p3rx5x/CJAADdDcEJAJD3du7cqbPPPlsvvfSSGhsb9cMPP+jll1/W9OnTdeGFF+asmteRYcOGafr06br99tv16aef6uuvv9YNN9yg0047TdOnT5ckffXVV3rwwQf14osvauLEiXryySc1e/Zs/fDDDznvtXDhQj366KMqKirq6o8LAMhDBCcAQN4bPXq0amtrtXTpUk2YMEGjRo3SwoULNWvWLH344Yc5C0B4WbJkicaOHavLL79c1dXVMsZo9erVCofDam1t1Q033KCbb75Z06ZNkyTdcccd+s9//qMbb7xRtm277zN06FDNnDmzyz8rACA/8QO4AAAAAOCBEScAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8EBwAgAAAAAPBCcAAAAA8PD/tokPZuIkV/oAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# График функции ошибки по эпохам\n", + "plt.figure(figsize=(10, 6))\n", + "plt.plot(history_0.history['loss'], label='Обучающая выборка')\n", + "plt.plot(history_0.history['val_loss'], label='Валидационная выборка')\n", + "plt.title('Функция ошибки по эпохам (Однослойная сеть)')\n", + "plt.xlabel('Эпохи')\n", + "plt.ylabel('Ошибка')\n", + "plt.legend()\n", + "plt.grid(True)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 1058, + "status": "ok", + "timestamp": 1759127544719, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "NF_SsO8wiEUT", + "outputId": "ffe554c2-1c94-42b7-cc63-8f407418c4ce" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Результаты однослойной сети:\n", + "Ошибка на тестовых данных: 0.28625616431236267\n", + "Точность на тестовых данных: 0.92330002784729\n" + ] + } + ], + "source": [ + "# Оценка на тестовых данных\n", + "scores_0 = model_0.evaluate(X_test, y_test, verbose=0)\n", + "print(\"Результаты однослойной сети:\")\n", + "print(f\"Ошибка на тестовых данных: {scores_0[0]}\")\n", + "print(f\"Точность на тестовых данных: {scores_0[1]}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "fFcoQGdPnDFx" + }, + "outputs": [], + "source": [ + "# Функция для создания и обучения модели\n", + "def create_and_train_model(hidden_units, model_name):\n", + " model = Sequential()\n", + " model.add(Dense(units=hidden_units, input_dim=num_pixels, activation='sigmoid'))\n", + " model.add(Dense(units=num_classes, activation='softmax'))\n", + "\n", + " model.compile(loss='categorical_crossentropy',\n", + " optimizer='sgd',\n", + " metrics=['accuracy'])\n", + "\n", + " history = model.fit(X_train, y_train,\n", + " validation_split=0.1,\n", + " epochs=50)\n", + "\n", + " scores = model.evaluate(X_test, y_test, verbose=0)\n", + "\n", + " return model, history, scores" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "XPlFkV40joAT" + }, + "outputs": [], + "source": [ + "# Эксперименты с разным количеством нейронов\n", + "hidden_units_list = [100, 300, 500]\n", + "models_1 = {}\n", + "histories_1 = {}\n", + "scores_1 = {}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 638747, + "status": "ok", + "timestamp": 1759128186868, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "je0i_8HxjvpB", + "outputId": "5cb19edc-9162-4c23-92d8-1671e62b2bb3" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Обучение модели с 100 нейронами...\n", + "Epoch 1/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.5548 - loss: 1.8518 - val_accuracy: 0.8210 - val_loss: 0.9619\n", + "Epoch 2/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8339 - loss: 0.8359 - val_accuracy: 0.8597 - val_loss: 0.6320\n", + "Epoch 3/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8640 - loss: 0.5853 - val_accuracy: 0.8770 - val_loss: 0.5137\n", + "Epoch 4/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8797 - loss: 0.4859 - val_accuracy: 0.8847 - val_loss: 0.4522\n", + "Epoch 5/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8879 - loss: 0.4295 - val_accuracy: 0.8892 - val_loss: 0.4153\n", + "Epoch 6/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8947 - loss: 0.3969 - val_accuracy: 0.8947 - val_loss: 0.3899\n", + "Epoch 7/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8974 - loss: 0.3775 - val_accuracy: 0.8967 - val_loss: 0.3729\n", + "Epoch 8/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9000 - loss: 0.3589 - val_accuracy: 0.8993 - val_loss: 0.3565\n", + "Epoch 9/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9052 - loss: 0.3424 - val_accuracy: 0.9033 - val_loss: 0.3450\n", + "Epoch 10/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9056 - loss: 0.3339 - val_accuracy: 0.9042 - val_loss: 0.3352\n", + "Epoch 11/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9065 - loss: 0.3293 - val_accuracy: 0.9073 - val_loss: 0.3271\n", + "Epoch 12/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9094 - loss: 0.3213 - val_accuracy: 0.9093 - val_loss: 0.3197\n", + "Epoch 13/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9097 - loss: 0.3159 - val_accuracy: 0.9088 - val_loss: 0.3139\n", + "Epoch 14/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9162 - loss: 0.2962 - val_accuracy: 0.9100 - val_loss: 0.3073\n", + "Epoch 15/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9162 - loss: 0.3001 - val_accuracy: 0.9127 - val_loss: 0.3019\n", + "Epoch 16/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9178 - loss: 0.2928 - val_accuracy: 0.9137 - val_loss: 0.2972\n", + "Epoch 17/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9196 - loss: 0.2789 - val_accuracy: 0.9158 - val_loss: 0.2921\n", + "Epoch 18/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9194 - loss: 0.2849 - val_accuracy: 0.9163 - val_loss: 0.2875\n", + "Epoch 19/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9206 - loss: 0.2744 - val_accuracy: 0.9178 - val_loss: 0.2832\n", + "Epoch 20/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9219 - loss: 0.2756 - val_accuracy: 0.9187 - val_loss: 0.2795\n", + "Epoch 21/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9240 - loss: 0.2678 - val_accuracy: 0.9195 - val_loss: 0.2759\n", + "Epoch 22/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9236 - loss: 0.2689 - val_accuracy: 0.9202 - val_loss: 0.2722\n", + "Epoch 23/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9241 - loss: 0.2631 - val_accuracy: 0.9217 - val_loss: 0.2686\n", + "Epoch 24/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9265 - loss: 0.2556 - val_accuracy: 0.9218 - val_loss: 0.2649\n", + "Epoch 25/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9243 - loss: 0.2639 - val_accuracy: 0.9230 - val_loss: 0.2618\n", + "Epoch 26/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9259 - loss: 0.2545 - val_accuracy: 0.9247 - val_loss: 0.2586\n", + "Epoch 27/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9291 - loss: 0.2475 - val_accuracy: 0.9255 - val_loss: 0.2557\n", + "Epoch 28/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9289 - loss: 0.2465 - val_accuracy: 0.9275 - val_loss: 0.2531\n", + "Epoch 29/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9310 - loss: 0.2416 - val_accuracy: 0.9280 - val_loss: 0.2496\n", + "Epoch 30/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9314 - loss: 0.2364 - val_accuracy: 0.9292 - val_loss: 0.2473\n", + "Epoch 31/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9331 - loss: 0.2351 - val_accuracy: 0.9295 - val_loss: 0.2439\n", + "Epoch 32/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9328 - loss: 0.2307 - val_accuracy: 0.9303 - val_loss: 0.2415\n", + "Epoch 33/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9346 - loss: 0.2246 - val_accuracy: 0.9308 - val_loss: 0.2391\n", + "Epoch 34/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9341 - loss: 0.2286 - val_accuracy: 0.9317 - val_loss: 0.2362\n", + "Epoch 35/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9355 - loss: 0.2295 - val_accuracy: 0.9325 - val_loss: 0.2334\n", + "Epoch 36/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9384 - loss: 0.2155 - val_accuracy: 0.9330 - val_loss: 0.2312\n", + "Epoch 37/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9366 - loss: 0.2197 - val_accuracy: 0.9340 - val_loss: 0.2288\n", + "Epoch 38/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9385 - loss: 0.2142 - val_accuracy: 0.9342 - val_loss: 0.2265\n", + "Epoch 39/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9396 - loss: 0.2104 - val_accuracy: 0.9348 - val_loss: 0.2244\n", + "Epoch 40/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9399 - loss: 0.2110 - val_accuracy: 0.9362 - val_loss: 0.2231\n", + "Epoch 41/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9391 - loss: 0.2092 - val_accuracy: 0.9367 - val_loss: 0.2201\n", + "Epoch 42/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9401 - loss: 0.2075 - val_accuracy: 0.9370 - val_loss: 0.2178\n", + "Epoch 43/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9404 - loss: 0.2018 - val_accuracy: 0.9387 - val_loss: 0.2164\n", + "Epoch 44/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9411 - loss: 0.2044 - val_accuracy: 0.9383 - val_loss: 0.2141\n", + "Epoch 45/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9434 - loss: 0.1981 - val_accuracy: 0.9393 - val_loss: 0.2119\n", + "Epoch 46/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9445 - loss: 0.1931 - val_accuracy: 0.9392 - val_loss: 0.2094\n", + "Epoch 47/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9442 - loss: 0.1913 - val_accuracy: 0.9400 - val_loss: 0.2075\n", + "Epoch 48/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9428 - loss: 0.1961 - val_accuracy: 0.9412 - val_loss: 0.2056\n", + "Epoch 49/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9447 - loss: 0.1919 - val_accuracy: 0.9407 - val_loss: 0.2033\n", + "Epoch 50/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9439 - loss: 0.1936 - val_accuracy: 0.9425 - val_loss: 0.2020\n", + "Точность: 0.9422000050544739\n", + "\n", + "Обучение модели с 300 нейронами...\n", + "Epoch 1/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.5667 - loss: 1.8010 - val_accuracy: 0.8303 - val_loss: 0.8696\n", + "Epoch 2/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8399 - loss: 0.7595 - val_accuracy: 0.8657 - val_loss: 0.5806\n", + "Epoch 3/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8705 - loss: 0.5350 - val_accuracy: 0.8803 - val_loss: 0.4834\n", + "Epoch 4/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8785 - loss: 0.4604 - val_accuracy: 0.8867 - val_loss: 0.4317\n", + "Epoch 5/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8887 - loss: 0.4130 - val_accuracy: 0.8895 - val_loss: 0.4013\n", + "Epoch 6/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.8937 - loss: 0.3841 - val_accuracy: 0.8950 - val_loss: 0.3820\n", + "Epoch 7/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8983 - loss: 0.3652 - val_accuracy: 0.8960 - val_loss: 0.3662\n", + "Epoch 8/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9026 - loss: 0.3493 - val_accuracy: 0.8990 - val_loss: 0.3557\n", + "Epoch 9/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9035 - loss: 0.3417 - val_accuracy: 0.9008 - val_loss: 0.3452\n", + "Epoch 10/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9043 - loss: 0.3351 - val_accuracy: 0.9023 - val_loss: 0.3373\n", + "Epoch 11/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9060 - loss: 0.3240 - val_accuracy: 0.9030 - val_loss: 0.3303\n", + "Epoch 12/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9070 - loss: 0.3170 - val_accuracy: 0.9052 - val_loss: 0.3255\n", + "Epoch 13/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9087 - loss: 0.3202 - val_accuracy: 0.9062 - val_loss: 0.3209\n", + "Epoch 14/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9129 - loss: 0.3063 - val_accuracy: 0.9067 - val_loss: 0.3161\n", + "Epoch 15/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9135 - loss: 0.3046 - val_accuracy: 0.9092 - val_loss: 0.3119\n", + "Epoch 16/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9130 - loss: 0.2993 - val_accuracy: 0.9108 - val_loss: 0.3064\n", + "Epoch 17/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9149 - loss: 0.2964 - val_accuracy: 0.9113 - val_loss: 0.3043\n", + "Epoch 18/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9152 - loss: 0.2935 - val_accuracy: 0.9128 - val_loss: 0.3011\n", + "Epoch 19/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9170 - loss: 0.2863 - val_accuracy: 0.9123 - val_loss: 0.2989\n", + "Epoch 20/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9190 - loss: 0.2821 - val_accuracy: 0.9138 - val_loss: 0.2945\n", + "Epoch 21/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9203 - loss: 0.2799 - val_accuracy: 0.9140 - val_loss: 0.2926\n", + "Epoch 22/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9187 - loss: 0.2851 - val_accuracy: 0.9145 - val_loss: 0.2894\n", + "Epoch 23/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9181 - loss: 0.2789 - val_accuracy: 0.9155 - val_loss: 0.2871\n", + "Epoch 24/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 4ms/step - accuracy: 0.9215 - loss: 0.2705 - val_accuracy: 0.9158 - val_loss: 0.2848\n", + "Epoch 25/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m8s\u001b[0m 5ms/step - accuracy: 0.9217 - loss: 0.2715 - val_accuracy: 0.9172 - val_loss: 0.2829\n", + "Epoch 26/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 4ms/step - accuracy: 0.9225 - loss: 0.2666 - val_accuracy: 0.9177 - val_loss: 0.2804\n", + "Epoch 27/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9248 - loss: 0.2643 - val_accuracy: 0.9187 - val_loss: 0.2783\n", + "Epoch 28/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9235 - loss: 0.2603 - val_accuracy: 0.9197 - val_loss: 0.2768\n", + "Epoch 29/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9240 - loss: 0.2628 - val_accuracy: 0.9210 - val_loss: 0.2741\n", + "Epoch 30/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9246 - loss: 0.2618 - val_accuracy: 0.9207 - val_loss: 0.2720\n", + "Epoch 31/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9270 - loss: 0.2541 - val_accuracy: 0.9202 - val_loss: 0.2686\n", + "Epoch 32/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9261 - loss: 0.2552 - val_accuracy: 0.9227 - val_loss: 0.2675\n", + "Epoch 33/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9270 - loss: 0.2577 - val_accuracy: 0.9243 - val_loss: 0.2639\n", + "Epoch 34/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9277 - loss: 0.2478 - val_accuracy: 0.9252 - val_loss: 0.2622\n", + "Epoch 35/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9288 - loss: 0.2471 - val_accuracy: 0.9263 - val_loss: 0.2611\n", + "Epoch 36/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 4ms/step - accuracy: 0.9299 - loss: 0.2398 - val_accuracy: 0.9248 - val_loss: 0.2588\n", + "Epoch 37/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 2ms/step - accuracy: 0.9288 - loss: 0.2457 - val_accuracy: 0.9262 - val_loss: 0.2562\n", + "Epoch 38/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9315 - loss: 0.2363 - val_accuracy: 0.9262 - val_loss: 0.2534\n", + "Epoch 39/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9296 - loss: 0.2424 - val_accuracy: 0.9283 - val_loss: 0.2512\n", + "Epoch 40/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9305 - loss: 0.2383 - val_accuracy: 0.9280 - val_loss: 0.2501\n", + "Epoch 41/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9331 - loss: 0.2313 - val_accuracy: 0.9285 - val_loss: 0.2469\n", + "Epoch 42/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9334 - loss: 0.2310 - val_accuracy: 0.9285 - val_loss: 0.2450\n", + "Epoch 43/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9350 - loss: 0.2267 - val_accuracy: 0.9290 - val_loss: 0.2436\n", + "Epoch 44/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9354 - loss: 0.2228 - val_accuracy: 0.9300 - val_loss: 0.2410\n", + "Epoch 45/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9350 - loss: 0.2224 - val_accuracy: 0.9300 - val_loss: 0.2386\n", + "Epoch 46/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9363 - loss: 0.2207 - val_accuracy: 0.9303 - val_loss: 0.2374\n", + "Epoch 47/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9367 - loss: 0.2204 - val_accuracy: 0.9317 - val_loss: 0.2343\n", + "Epoch 48/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9352 - loss: 0.2196 - val_accuracy: 0.9322 - val_loss: 0.2318\n", + "Epoch 49/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9387 - loss: 0.2133 - val_accuracy: 0.9347 - val_loss: 0.2312\n", + "Epoch 50/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9369 - loss: 0.2181 - val_accuracy: 0.9345 - val_loss: 0.2288\n", + "Точность: 0.9376999735832214\n", + "\n", + "Обучение модели с 500 нейронами...\n", + "Epoch 1/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 3ms/step - accuracy: 0.5450 - loss: 1.7741 - val_accuracy: 0.8278 - val_loss: 0.8334\n", + "Epoch 2/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8439 - loss: 0.7246 - val_accuracy: 0.8673 - val_loss: 0.5635\n", + "Epoch 3/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8689 - loss: 0.5286 - val_accuracy: 0.8787 - val_loss: 0.4724\n", + "Epoch 4/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.8843 - loss: 0.4409 - val_accuracy: 0.8863 - val_loss: 0.4282\n", + "Epoch 5/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8919 - loss: 0.4027 - val_accuracy: 0.8898 - val_loss: 0.3971\n", + "Epoch 6/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8951 - loss: 0.3794 - val_accuracy: 0.8938 - val_loss: 0.3770\n", + "Epoch 7/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8977 - loss: 0.3647 - val_accuracy: 0.8973 - val_loss: 0.3638\n", + "Epoch 8/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9008 - loss: 0.3517 - val_accuracy: 0.9008 - val_loss: 0.3532\n", + "Epoch 9/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9045 - loss: 0.3383 - val_accuracy: 0.9023 - val_loss: 0.3457\n", + "Epoch 10/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9078 - loss: 0.3278 - val_accuracy: 0.9032 - val_loss: 0.3371\n", + "Epoch 11/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9070 - loss: 0.3236 - val_accuracy: 0.9047 - val_loss: 0.3317\n", + "Epoch 12/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9074 - loss: 0.3238 - val_accuracy: 0.9050 - val_loss: 0.3270\n", + "Epoch 13/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9109 - loss: 0.3110 - val_accuracy: 0.9065 - val_loss: 0.3210\n", + "Epoch 14/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9109 - loss: 0.3092 - val_accuracy: 0.9068 - val_loss: 0.3176\n", + "Epoch 15/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9116 - loss: 0.3076 - val_accuracy: 0.9082 - val_loss: 0.3153\n", + "Epoch 16/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9118 - loss: 0.3079 - val_accuracy: 0.9095 - val_loss: 0.3138\n", + "Epoch 17/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9165 - loss: 0.2949 - val_accuracy: 0.9107 - val_loss: 0.3078\n", + "Epoch 18/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9141 - loss: 0.3022 - val_accuracy: 0.9103 - val_loss: 0.3072\n", + "Epoch 19/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9148 - loss: 0.2973 - val_accuracy: 0.9118 - val_loss: 0.3024\n", + "Epoch 20/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9168 - loss: 0.2933 - val_accuracy: 0.9123 - val_loss: 0.3004\n", + "Epoch 21/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9176 - loss: 0.2889 - val_accuracy: 0.9128 - val_loss: 0.2994\n", + "Epoch 22/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9177 - loss: 0.2870 - val_accuracy: 0.9122 - val_loss: 0.2968\n", + "Epoch 23/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9193 - loss: 0.2818 - val_accuracy: 0.9140 - val_loss: 0.2949\n", + "Epoch 24/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9178 - loss: 0.2903 - val_accuracy: 0.9147 - val_loss: 0.2939\n", + "Epoch 25/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9178 - loss: 0.2875 - val_accuracy: 0.9137 - val_loss: 0.2914\n", + "Epoch 26/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9208 - loss: 0.2832 - val_accuracy: 0.9150 - val_loss: 0.2889\n", + "Epoch 27/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9221 - loss: 0.2765 - val_accuracy: 0.9142 - val_loss: 0.2883\n", + "Epoch 28/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9220 - loss: 0.2752 - val_accuracy: 0.9167 - val_loss: 0.2868\n", + "Epoch 29/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9220 - loss: 0.2754 - val_accuracy: 0.9183 - val_loss: 0.2854\n", + "Epoch 30/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9239 - loss: 0.2700 - val_accuracy: 0.9173 - val_loss: 0.2820\n", + "Epoch 31/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9234 - loss: 0.2669 - val_accuracy: 0.9190 - val_loss: 0.2804\n", + "Epoch 32/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9228 - loss: 0.2678 - val_accuracy: 0.9193 - val_loss: 0.2797\n", + "Epoch 33/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9239 - loss: 0.2677 - val_accuracy: 0.9192 - val_loss: 0.2794\n", + "Epoch 34/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9240 - loss: 0.2631 - val_accuracy: 0.9208 - val_loss: 0.2765\n", + "Epoch 35/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9253 - loss: 0.2605 - val_accuracy: 0.9202 - val_loss: 0.2750\n", + "Epoch 36/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9254 - loss: 0.2570 - val_accuracy: 0.9205 - val_loss: 0.2734\n", + "Epoch 37/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9267 - loss: 0.2601 - val_accuracy: 0.9215 - val_loss: 0.2711\n", + "Epoch 38/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9279 - loss: 0.2569 - val_accuracy: 0.9212 - val_loss: 0.2715\n", + "Epoch 39/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9260 - loss: 0.2589 - val_accuracy: 0.9223 - val_loss: 0.2680\n", + "Epoch 40/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9284 - loss: 0.2550 - val_accuracy: 0.9218 - val_loss: 0.2671\n", + "Epoch 41/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9286 - loss: 0.2491 - val_accuracy: 0.9227 - val_loss: 0.2660\n", + "Epoch 42/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9316 - loss: 0.2432 - val_accuracy: 0.9237 - val_loss: 0.2625\n", + "Epoch 43/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9274 - loss: 0.2508 - val_accuracy: 0.9252 - val_loss: 0.2635\n", + "Epoch 44/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9290 - loss: 0.2472 - val_accuracy: 0.9255 - val_loss: 0.2595\n", + "Epoch 45/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9302 - loss: 0.2449 - val_accuracy: 0.9252 - val_loss: 0.2601\n", + "Epoch 46/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9322 - loss: 0.2399 - val_accuracy: 0.9270 - val_loss: 0.2568\n", + "Epoch 47/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9323 - loss: 0.2422 - val_accuracy: 0.9278 - val_loss: 0.2550\n", + "Epoch 48/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9321 - loss: 0.2399 - val_accuracy: 0.9282 - val_loss: 0.2527\n", + "Epoch 49/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9330 - loss: 0.2372 - val_accuracy: 0.9282 - val_loss: 0.2514\n", + "Epoch 50/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9347 - loss: 0.2327 - val_accuracy: 0.9277 - val_loss: 0.2495\n", + "Точность: 0.9312000274658203\n" + ] + } + ], + "source": [ + "# Обучение сетей с одним скрытым слоем\n", + "for units in hidden_units_list:\n", + " print(f\"\\nОбучение модели с {units} нейронами...\")\n", + " model, history, scores = create_and_train_model(units, f\"model_{units}\")\n", + "\n", + " models_1[units] = model\n", + " histories_1[units] = history\n", + " scores_1[units] = scores\n", + "\n", + " print(f\"Точность: {scores[1]}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 20, + "status": "ok", + "timestamp": 1759128269112, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "TbbBBxeMmy6c", + "outputId": "08b5a164-1e62-456c-80b9-bc7247be3fd3" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Наилучшее количество нейронов: 100\n", + "Точность: 0.9422000050544739\n" + ] + } + ], + "source": [ + "# Выбор наилучшей модели\n", + "best_units_1 = max(scores_1.items(), key=lambda x: x[1][1])[0]\n", + "print(f\"\\nНаилучшее количество нейронов: {best_units_1}\")\n", + "print(f\"Точность: {scores_1[best_units_1][1]}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 279 + }, + "executionInfo": { + "elapsed": 620, + "status": "ok", + "timestamp": 1759128272502, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "EFEBxB2qm1fF", + "outputId": "d436ac7a-e33b-4cc2-e324-5decfc29de94" + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABdIAAAHqCAYAAAAAkLx0AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAA6IxJREFUeJzs3Xl8VNX5x/HvTGYymSQECFsAQ0AWNxRwgYJWQFkEirWty69YBa1aqlaQagWVzY22oGIrikuFuqHVKtSKSopQVFAESV0QZQkEkCUBQvbJZOb+/pjMJUNCSGYmmZnk8369eCVz586dM4fAk/Pcc55jMQzDEAAAAAAAAAAAqJE10g0AAAAAAAAAACCakUgHAAAAAAAAAKAWJNIBAAAAAAAAAKgFiXQAAAAAAAAAAGpBIh0AAAAAAAAAgFqQSAcAAAAAAAAAoBYk0gEAAAAAAAAAqAWJdAAAAAAAAAAAakEiHQAAAAAAAACAWpBIBxA2RUVFmj9/vvk4Pz9fCxYsiFyDAABArYjdAADElj179mjx4sXm4507d+qVV16JXIOAZoREOtDAioqKNHPmTF122WVKTU2VxWIJCHrH+/bbb3XZZZcpOTlZqampuu6665Sbm1vtPK/Xqz//+c/q1q2bEhISdM4552jJkiUN+ElOzul06v7779crr7yi3bt3a9asWXrnnXci2iYAAOrrm2++0VVXXaVTTz1ViYmJatu2rS6++OITxjRiNwAAkbV69WpZLJYa/3z66afVzl+7dq0uuugiJSYmKi0tTXfccYeKioqqnedyuXTPPfeoU6dOcjqdGjBggDIzMxvjI52QxWLRbbfdpg8++EA7d+7UH/7wB3300UcRbRPQXNgi3QCgqcvLy9MDDzygLl26qE+fPlq9evUJz92zZ48uvvhitWzZUo888oiKioo0b948ffXVV1q/fr3i4+PNc++77z798Y9/1M0336wLLrhAy5Yt07hx42SxWPR///d/jfDJqouLi9Ps2bN1/fXXy+v1KiUlRe+++25E2gIAQLB27dqlwsJCjR8/Xp06dVJJSYn++c9/6vLLL9czzzyjW265xTyX2A0AQPS44447dMEFFwQc69GjR8DjrKwsXXrppTrjjDP02GOPac+ePZo3b562bt2q9957L+DcCRMm6M0339TkyZPVs2dPLV68WKNHj9aqVat00UUXNfjnqUnnzp11880367LLLpMkdezYsdY8A4DwsRiGYUS6EUBT5nK5dOTIEaWlpWnDhg264IILtGjRIk2YMKHaubfeeqsWL16sLVu2qEuXLpKk//znPxo+fHjAwH3v3r3q1q2bbrnlFj355JOSJMMwNHjwYGVnZ2vnzp2Ki4trtM94vD179mj37t0644wz1KpVq4i1AwCAcPF4PDrvvPNUVlamLVu2mMeJ3QAARN7q1as1dOhQvfHGG7ryyitrPXf06NHKysrSli1blJKSIkl6/vnndfPNN+uDDz7QiBEjJEnr16/XgAEDNHfuXN11112SpLKyMvXu3Vvt27fX2rVrG/ZDncT27duVl5en3r17KykpKaJtAZoLSrsADczhcCgtLa1O5/7zn//UT37yE3MgLknDhg1Tr1699I9//MM8tmzZMrndbt16663mMYvFot/+9rfas2eP1q1bV+v7TJgwQcnJydWOv/nmm7JYLNXuZn/22We67LLL1LJlSyUmJmrw4MH65JNPAs6ZNWuWLBaLJOmUU07RwIEDZbPZlJaWVu2aQ4YMUe/evbVx40YNGjRITqdT3bp108KFC6u16eDBg/r1r3+tDh06KCEhQX369NHf//73gHN27twpi8WiefPmVXt97969NWTIkKCv6f9jt9vVtWtX3X333SovL6/2PgCApi0uLk7p6enKz88POE7sJnYDAKJLYWGhKioqanyuoKBAmZmZ+tWvfmUm0SXp+uuvV3JyckDsfvPNNxUXFxewEi0hIUG//vWvtW7dOu3evbvWdvhj5/HmzZsni8WinTt3Bhx/77339OMf/1hJSUlq0aKFxowZo2+++SbgnAkTJqhr166SpO7du2vAgAE6fPiwnE5ntWt27dpVP/nJT7RixQr17dtXCQkJOvPMM/XWW29Va9OOHTt01VVXKTU1VYmJifrRj35UbYWav3zOm2++We31ycnJ1SYL1uea/j8Oh0O9evXSnDlzxLxfRCMS6UCU2Lt3rw4ePKjzzz+/2nP9+/fXpk2bzMebNm1SUlKSzjjjjGrn+Z8Plw8//FAXX3yxCgoKNHPmTD3yyCPKz8/XJZdcovXr19f62kcffVQHDhyo8bkjR45o9OjROu+88/TnP/9Zp5xyin7729/qhRdeMM8pLS3VkCFD9NJLL+naa6/V3Llz1bJlS02YMEFPPPFEUJ+nvte85ZZb9NJLL2nhwoXq37+/5s2bpwcffDCo9wYAxJbi4mLl5eVp+/btevzxx/Xee+/p0ksvNZ8ndhO7AQDR5YYbblBKSooSEhI0dOhQbdiwIeD5r776ShUVFdVid3x8vPr27Vstdvfq1Ssg4S4di91ZWVlha/dLL72kMWPGKDk5WX/60580ffp0bd68WRdddFG1hPvxZsyYobKyshqf27p1q6655hqNGjVKc+bMkc1m01VXXRVQ5/3AgQMaNGiQPvjgA9166616+OGHVVZWpssvv1xvv/12UJ+nvte899579dJLL+nJJ59Uly5ddO+99wb8fgFEDQNAo/n8888NScaiRYtO+NyLL75Y7bm7777bkGSUlZUZhmEYY8aMMU499dRq5xUXFxuSjKlTp9bajvHjxxtJSUnVjr/xxhuGJGPVqlWGYRiG1+s1evbsaYwcOdLwer3meSUlJUa3bt2M4cOHm8dmzpxpVP0v5eDBg0aLFi2MUaNGBVzTMAxj8ODBhiTj0UcfNY+5XC6jb9++Rvv27Y3y8nLDMAxj/vz5hiTj5ZdfNs8rLy83Bg4caCQnJxsFBQWGYRhGdna2IcmYO3dutc901llnGYMHDzYf1/eax/9dderUyRg9enS19wEAND2/+c1vDEmGJMNqtRpXXnmlcfjwYfN5YjexGwAQHT755BPjF7/4hfG3v/3NWLZsmTFnzhyjTZs2RkJCgvHFF1+Y5/nj5po1a6pd46qrrjLS0tLMx2eddZZxySWXVDvvm2++MSQZCxcurLVNgwcPNs4666xqx+fOnWtIMrKzsw3DMIzCwkKjVatWxs033xxw3v79+42WLVsGHB8/fryRkZFhPv76668Nq9Vqxm7/NQ3DMDIyMgxJxj//+U/z2NGjR42OHTsa/fr1M49NnjzZkGR89NFH5rHCwkKjW7duRteuXQ2Px2MYhmGsWrXKkGS88cYb1T5TUlKSMX78+KCvWfV3jrKyMsNqtRq33nprtfcBIo0Z6UCUKC0tleQrBXO8hISEgHNKS0vrdN7J5OXlBfwpLCwMeD4rK0tbt27VuHHjdOjQIfO84uJiXXrppVqzZo28Xm+N137wwQfVsmVL3XHHHTU+b7PZ9Jvf/MZ8HB8fr9/85jc6ePCgNm7cKElavny50tLS9Mtf/tI8z263mzuq//e//w24ZklJSbXP5PF4As6p7zWLioqUl5envXv36tlnn9X+/fsDZiMCAJquyZMnKzMzU3//+981atQoeTyegBIhxG5iNwAgOgwaNEhvvvmmbrzxRl1++eWaOnWqPv30U1ksFk2bNs0872Sxu2o8Dkfs9ng81eJcSUlJwDmZmZnKz8/XL3/5y4Dz4uLiNGDAAK1ateqE1582bZrOPfdcXXXVVTU+36lTJ/3sZz8zH6ekpOj666/Xpk2btH//fkm+ONu/f/+AzVOTk5N1yy23aOfOndq8eXPANQsLC6t9puPV95pHjx5VXl6ecnJy9Oc//1ler1eXXHLJCT83ECm2SDcAgI/T6ZTk25z0eP5lWv5znE5nnc6rTXFxsdq1a1frOVu3bpUkjR8//oTnHD16VK1btw44lp2drWeeeUZPP/20+UvG8Tp16lRtQ5RevXpJ8tU4/dGPfqRdu3apZ8+esloD7/n5l8Xv2rUr4PjMmTM1c+bMau/VoUMH8/v6XvN3v/udfve735mPb7jhBt155501fiYAQNNy+umn6/TTT5fkq506YsQIjR07Vp999pksFguxW8RuAED06tGjh37605/qrbfeksfjUVxc3Eljd9V4HI7YvWXLljrH7hMljo8vLeP38ccf65133tHKlSuVk5NT4zk9evQw90Pxqxq709LStGvXLg0YMKDaa6vG2aq13m+88cZaP4//NfW55hVXXGF+b7Vadf/99+sXv/jFSd8HaGwk0oEo0bFjR0nSvn37qj23b98+paammnfDO3bsqFWrVskwjICg6H9tp06dTvp+CQkJeueddwKOffTRR3rggQfMx/4Za3PnzlXfvn1rvE5NG5/dd9996tmzp8aPH6+PPvropG0Jl1tuuaXanfibb745pGvefffdGjFihDwej7755hs98MADMgxDixYtCum6AIDYc+WVV+o3v/mNvv/+e5122mnE7jAgdgMAGlJ6errKy8tVXFyslJSUk8buqvG4Y8eO2rt3b43nSXWL3V27dtVzzz0XcOyNN97Qs88+az72x+6XXnpJaWlp1a5hs9Wcurvnnns0cuRIXXLJJVq8ePFJ2xIuM2bM0I9//OOAY2PHjg3pmvPmzVOfPn3kdrv1+eef66GHHpLNZqvxZjsQSSTSgSjRuXNntWvXrtpmKJK0fv36gMFw37599fzzz+vbb7/VmWeeaR7/7LPPzOdPJi4uTsOG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PaTrNTdut1uZmZn0XZDov/opKyvT7t27lZycLIfDocLCQqWkpKhlCIPCxpCSkqJhw4Zp0aJFmjp1arXY/cYbb+i6665Tnz59ZLPZ9OWXX5qzy7xerzZs2KCrr77a/P/uyiuv1F133aVXX31VK1eu1OrVqwP+L/z973+vW2+91YzdU6dOlcfjUUpKig4dOqStW7fq2WefVd++fdWiRQt98sknknxLy1NSUpScnCxJOu2005Senq5Zs2Zpz549AbF779696tevn1JSUuRwOBQXF2e2wT9LLjEx0Txmt9tls9nMxxs2bNANN9ygcePGSfLF7t27dys+Pt4859xzz9WNN96oxx57TMuWLVNWVpauv/56tWjRIuT/+0NhGIYKCwvVokULMyFRVlYmp9Opiy++WAkJCQHnH38TAqFz2HzjbhLpQGxi3M24uykhkR4C/50td9O/4QIggp588kkNGjRII0eO1EMPPaRu3brpm2++0d13363OnTvr4YcfVnJysm6++WbdfffdatWqlbp166YnnnhCP/zwg2699VbzWnFxcZowYYKmTZumnj17auDAgdXez+l0qnv37pKkFi1amDtut27dWm3atNFzzz2nKVOm6PDhw7r33ntP2O5BgwZpwIABuv766/XUU0/JZrNp8uTJ6tu3ry655BLzPMMwVFZWJklmOY/y8nLzmH9pvNvtlt1uV8+ePfXWW29p7Nixslgsmj59erUl359++qnuvfderVq1SmeddZZyc3OD6HmEqrCwUBs2bNCmTZvMOnr+5fA2m00rVqwI+Fnwczgccjgc1Y7b7faQk4/JTt913d7wXK+5ou9CQ//VjcfjkcVikdVqNROY/sfRbsGCBRo0aJBGjRpVY+x+5JFHlJKSoptvvln33HOPUlNTA2L3bbfdZn5Oq9WqCRMm6N5771XPnj0DlpP7JSUlqWfPnpJ8ifz8/HxZrVa1adNGbdq00fPPP18tdlutVvOP//FFF12kAQMGaMKECdVi97Bhw2SxWGSxWGQYhjkjzV/KpKKiwjzm/7/e4/GYsfvtt9/W5ZdfHhC7q/59fvrpp7rvvvu0atUqnX322Tp06FBAOyPF/ztG1bb6fyZr+rfMv+3wY0Y6gMbAuJtxd11E/2+hUcxZpUZ6JOs1AmjaevbsqQ0bNujUU0/V1Vdfre7du+uWW27R0KFDtW7dOrMW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lpZW4+uP/0XhhRdeULt27bR582b17t27jp860KpVq7R27VrddNNNWrVqlXl83rx5uueee/R///d/kqQ//elPWrVqlebPn68FCxYE9V4ncuONN5rfn3rqqfrLX/6iCy64QEVFRUpOTtb333+vkpIS3XPPPerUqZMkyel0MhiPMuaMdOqsAmhAxG5iN8KH/U0ANAZiN7H7ZCKaSC8uLlafPn1044036uc//3mdX5efn6/rr79el156aa13bRqDv85qKYl0IPbYE313qCP13vUwdOhQPf3005KkI0eO6KmnntKoUaO0fv16ZWRk6PXXX9df/vIXbd++XUVFRaqoqFBKSkrANQoKCiRJSUknvyP/wAMPaOjQobroootqfP7IkSNq0aLFCV+/detWzZgxQ5999pny8vLk9foGPTk5OUEFdMMw9Pvf/14zZ87UoUOHzOMFBQX64YcfdOGFFwacf+GFF+p///tfwLFBgwYF3JUvKSmp9j6//OUvFRcXZz4uLS0NWM62ceNGzZo1S//73/905MiRgM915plnKj09XTabTUuWLNGdd94Z0iwANJxjNdIZjAMxh9h9QsRuH2J300RJVSCGEbtPiNjtE0uxO6KJ9FGjRmnUqFH1ft3EiRM1btw4xcXFVaur09ic1GoDYpfFEvQyr8aWlJSkHj16mI+ff/55tWzZUs8995zGjBmja6+9VrNnz9bIkSPVsmVLvfbaa3r00UcDrvHDDz/IarWe8G6239atW/X8888rKytLe/bsqfb8nj17VF5erm7dup3wGmPHjlVGRoaee+45derUSV6vV71791Z5eXk9P7nPiy++qOLiYk2cOFEPP/xwUNd4/fXXdcYZZ5iPhwwZUu2cxx9/XMOGDTMfX3vtteb3xcXFGjlypEaOHKlXXnlF7dq1U05OjkaOHGl+ro4dO+rpp5/WPffco2nTpik+Pl4ul0tjxowJqs1oGOasNhLpQOwhdteI2E3sburMGunMSAdiD7G7RsTu2IzdMVcjfdGiRdqxY4defvllPfTQQyc93+VyBUzt998Zcrvd1TYECIbN4vtaWu4Jy/WaE39/0W/Bof/qx+12yzAMeb1es2aZ/3G0MwyjWlsNw5DValVJSYk++eQTZWRkaNq0aebzO3fulKSA16xfv16nn3664uPj5fV6zef83/v75Q9/+IN+/etf69RTT1VOTk7AOZL03//+V06nU+edd17A9f3nHDp0SN99952eeeYZ/fjHP5YkffzxxwHnHP/ex3/eqseKi4t133336S9/+Yvi4uLMdnq9XiUnJ6tTp076+OOPzfeSfOW/LrjggoDrd+7cWaeeeqp5js1mq/Ze7du3DzjH6XSa52zevFmHDh3SI488ovT0dLNPj/8c1113nRYtWqS+fftq0qRJmjp1qjwezwl/9vzH3W53wF15iX/fDcWckU5pFwCNyGKxyGq1qrS0VGvXrlVGRobuu+8+8/ldu3ZVe83nn3+u008/vVqd0uPdc889uummm9SjR48aB+P+2H3++efX+Hp/7H7uueeqxe5glJSU6L777tOTTz4pu90e8FxKSoo6depklur0++STT9S/f/+Ac9PT0wMSGjZb9eFrWlpawDlOp9P8fsuWLTp06JD++Mc/mrF7w4YN1a4xfvx4LVq0SP369dPkyZN1zz33yOMhRkQTh81/E5y/FwCNh9jtQ+w+JqYS6Vu3btXUqVP10Ucf1fgXUZM5c+Zo9uzZ1Y6vWLFCiYn1W+JRky1HLJLidCDviFn0HvWTmZkZ6SbENPqvbmw2m9LS0lRUVGTexSwsLIxwq+rG7XaruLhYW7duleQrb/Xcc8+pqKhIl1xyiQoKCpSTk6NFixbp3HPP1YoVK/T222/LMAwVFBSovLxcb731lh5//HFNnTrVvKHoX2JVWFgoq9Uql8ulbdu2adeuXfriiy9UUFBQ7Zzs7GzNmTNHo0aNqhbs9+/fr7y8PNlsNqWmpuqpp55SixYttGfPHvP/4dLSUhUUFKioqEiSb6la1d23PR6PioqKdOTIEcXFxamiokJLlixRnz59zM/qcrnk8XjMz3H77bdrzpw56tixo84++2y98sorysrK0tNPPx3wXsXFxeZrJF8Cu6ysLOCYv31+FRUVKi8vV0FBgVq3bq34+Hg9+uijuvHGG7V582Y9+OCD1a7tD+CzZs2S3W5XQkKCjh49GnDdqj975eXlKi0t1Zo1a1RRURHQpzUtg0PozBrpzEgH0IBcLpf2798vyRfvnnzySRUVFWns2LFm7H7ttdd0wQUX6N1339Xbb79tvra8vFyvv/66HnvssRrHMlVt27ZNOTk52rZtW43Pb9++XX/+8581atQo5efnB8Sj/Px8lZeXq3Xr1mrTpo2effZZdezYUTk5OZo6dWqN1ysvL1dZWZn52DAMVVRUyOPxmDeEX331VZ133nkn3P/q7rvv1syZM9W9e3f17dtXixYtUlZWll555ZVaP2t9denSRfHx8frrX/+qiRMn6uuvvzZjd1W///3vZbFY9Pjjj8tut6tFixbKz88Pa1sQGsqyAWgMxG5i98nETCLd4/Fo3Lhxmj17tnr16lXn102bNk1TpkwxHxcUFCg9PV0jRoyoVscoGC2+P6jntmQpPjFZo0dfePIXwOR2u5WZmanhw4dXu9uFk6P/6qesrEy7d+9WcnKyHA6HCgsL1aJFC1kslkg37aTsdrtWrlyp008/XZJvp/DTTz9dr7/+ukaPHi1J2rRpk+655x65XC6NHj1a06dP1+zZs5WSkqKNGzdq7ty5uv/++3X33Xeb9cP8NxNbtGihlJQUORwOFRcXa+7cucrIyKjxnJ/97GfatWuXvv32W7311lsB7bztttt0+umna8iQIVqyZIkmT56sQYMG6bTTTtP8+fN1ySWXyOl0KiUlxdzApepyLr8ZM2aoc+fOmjBhgmw2m0pKSvT444+b/2c7HA7FxcWZj++++265XC7NmDFDBw8e1JlnnqmlS5eqX79+kmS+V1JSUsD/+1arVQkJCQHH/O3zs9lsio+PV0pKilJSUvTCCy/o/vvv17PPPqtzzz1X8+bN0xVXXGFee8mSJVq2bJk2bNhg7uxut9tls9mUkpIiwzCq/eyVlZXJ6XTq4osvrjZroeovTAgfR+Vg3MWMdAAN6P3331fHjh0lHYvdb7zxhrnE+c4779Ttt99uLkWePn26Zs2aJUn66quvNGvWLE2fPj1gLFOT4uJizZ49+4SbmV166aXatWuXvv7662qx+4YbblDXrl01ZMgQvfbaa7rjjjvUu3dvnXbaafrLX/5S43LsAQMGVDt29913q23btpowYYIk343g45e6V3XHHXfo6NGj+v3vf2/G7n/961/q2bNnrZ+1vtq1a6fFixfr3nvv1V/+8hczdl9++eXmOUuWLNE//vEPffHFF/xOHcX8N8HZbBRAQyJ2E7tPxmL415lHmMVi0dtvv33COx/5+flq3bp1wLJ3/3L4uLg4rVixQpdccslJ36egoEAtW7bU0aNHw5JIX78jV1c/u16ntHbq43tO/v44xu12a/ny5Ro9ejS/tAaB/qufsrIyZWdnq1u3boqPj1dBQYFSUlLYUKqeunbtqg8//FCpqanV+u+KK67Q5MmTawzc9TF58mT17dvXDOhNidfrrfazV/Vns6ZEejhjVqwKdz9kfvODbn5pk87q1ELv3nFxGFrYfBB7QkP/1Q+xOzyI3aEhdgcn3P3wTtYe/e61/+n8jFZ687dMYKsPYk9o6L/6IXaHB7E7NA0Zu2NmRnpKSoq++uqrgGNPPfWUPvzwQ7355pu1Ft9vSP7dw6nVBqA5aNeuXbU63n7+0iehstvtJ3wPIBz8sZvl4QCaA2I3mgL/RuHEbgDNAbE7ekU0kV5UVBRQDyg7O1tZWVlKTU1Vly5dNG3aNO3du1cvvviirFarevfuHfD69u3bKyEhodrxxuSM9wX0UgI6gGbg888/N+/uHm/RokVheY+5c+eG5TrAiTjsbFgGoPkgdqMpOHYTnNgNoOkjdkeviCbSN2zYoKFDh5qP/TWExo8fr8WLF2vfvn3KycmJVPPq5NimJwR0AABigTkYp84qAAAxweHfKJzYDQCIoIgm0ocMGaLaSrQvXry41tfPmjXLLOofKc7KRHqF15Db45U9jrpPAABEM/9qMpaHAwAQG1hNBgCIBmR9Q+TfPVxiVjoQC7xeEmeILvxMNj6Hf3+TCuI2EAv4fxLRhp/JxmfuTcaMdCAm8P8kok24fiZjZrPRaBVvs8oiQ4YsKnV71CKBXZyBaBQfHy+r1aoffvhBbdu2VXl5ucrKytg9PAher5f+C1LVvrNYLCovL1dubq6sVmtYNoxB3fg3LHN7DHm8huKslgi3CEBNiN3hQ+wOHrE7OpibjZJIB6IasTt8iN3Ba8jYTSI9RBaLRXarVO6VysoJ6kC0slqt6tatm/bt26cffvhBpaWlcjqdslhIoNWXYRj0X5Bq6rvExER16dKFX44akX9Wm+RbTZbk4NchIBoRu8OH2B08Ynd0cFSWVC2v8MrrNWTlJjgQlYjd4UPsDl5Dxm5GjmEQX5lIL6W0CxDV4uPj1aVLF5WVlenDDz/UxRdfLLudVST15Xa7tWbNGvovCMf3XVxcnGw2G78YNTJHlbJspSTSgahG7A4PYnfwiN3RoWrsdlV45YyPq+VsAJFE7A4PYnfwGjJ2M3IMg/g4SRXUSAdigcVikc1mU0VFhRISEghIQYiLi6P/gkTfRQer1SKbxVCFYSF2AzGA2B064k/w6LvocPzeZCTSgehG7A4d8Sd4Ddl3rEULg8pybcxIBwAgRvhjd5mbsmwAAEQ7W5xVVoshiQ1HAQCRQyI9DEikAwAQW+LNRDqxGwCAWGAndgMAIoxEehiYg/FyAjoAALHAPxh3VRC7AQCIBWYindgNAIgQEulhEG/1LTFjRjoAALGB0i4AAMSWeGI3ACDCSKSHAYNxAABiC8vDAQCILTaL7yuxGwAQKSTSw4Aa6QAAxBZiNwAAsYWb4ACASCORHgbxcb6vBHQAAGKDvbIsG6vJAACIDcf2NyF2AwAig0R6GPhrtZWy2SgAADGBWW0AAMSWYzfBid0AgMggkR4GDMYBAIgtxG4AAGKLOSOd1WQAgAghkR4G/jvj1FkFACA2+MuysTwcAIDYYN4Er2DcDQCIDBLpYRDPhmUAAMQUZqQDABBbiN0AgEgjkR4GbDYKAEBsYTAOAEBsobQLACDSSKSHwbHBOAEdAIBYQOwGADQXa9as0dixY9WpUydZLBYtXbq01vPfeustDR8+XO3atVNKSooGDhyoDz74oHEaWwtKuwAAIo1EehiYpV3KCegAAMQC9jcBADQXxcXF6tOnjxYsWFCn89esWaPhw4dr+fLl2rhxo4YOHaqxY8dq06ZNDdzS2nETHAAQabZIN6ApsFMjHQCAmEJpFwBAczFq1CiNGjWqzufPnz8/4PEjjzyiZcuW6Z133lG/fv3C3Lq6I3YDACKNRHoYxBPQAQCIKfHMagMAoE68Xq8KCwuVmpp6wnNcLpdcLpf5uKCgQJLkdrvldrtDboPb7TZXk5WUV4Tlms2Fv6/os+DQf8Gj70JD/wWvvn1Xnz4mkR4G8XEsDwcAIJaYG5ZRZxUAgFrNmzdPRUVFuvrqq094zpw5czR79uxqx1esWKHExMSwtMNutUiSdubs0fLlOWG5ZnOSmZkZ6SbENPovePRdaOi/4NW170pKSup8TRLpYcASMwAAYguxGwCAk3v11Vc1e/ZsLVu2TO3btz/hedOmTdOUKVPMxwUFBUpPT9eIESOUkpIScjvcbrfWvvwfSVJquw4aPTpyJWZijdvtVmZmpoYPHy673R7p5sQc+i949F1o6L/g1bfv/Kuo6oJEehjY2WwUAICYwoZlAADU7rXXXtNNN92kN954Q8OGDav1XIfDIYfDUe243W4PWwLIH7vLPQZJpSCE8++iOaL/gkffhYb+C15d+64+/WsNpUHwoc4qAACxhf1NAAA4sSVLluiGG27QkiVLNGbMmEg3RxKryQAAkceM9DCIN++Me+XxGoqrrN0GAACik3/DMvY3AQA0dUVFRdq2bZv5ODs7W1lZWUpNTVWXLl00bdo07d27Vy+++KIkXzmX8ePH64knntCAAQO0f/9+SZLT6VTLli0j8hkkVpMBACKPGelhYK/Si9wdBwA0ZWvWrNHYsWPVqVMnWSwWLV26tNbz33rrLQ0fPlzt2rVTSkqKBg4cqA8++KBxGlsLBuMAgOZiw4YN6tevn/r189UVnzJlivr166cZM2ZIkvbt26ecnGObdz777LOqqKjQbbfdpo4dO5p/Jk2aFJH2+zEjHQAQacxIDwNblUR6qdujJAfdCgBomoqLi9WnTx/deOON+vnPf37S89esWaPhw4frkUceUatWrbRo0SKNHTtWn332mTmgjwT/YNzFYBwA0MQNGTJEhmGc8PnFixcHPF69enXDNihI/tVkrgpuggMAIoOMbxhYLVKC3aoyt5cNRwEATdqoUaM0atSoOp8/f/78gMePPPKIli1bpnfeeScqEullFcRtAABiATPSAQCRRmmXMHHa4yQR1AEAqI3X61VhYaFSU1Mj2g7//iZujyGP98Sz9AAAQHQgkQ4AiDRmpIdJgj1OkptaqwAA1GLevHkqKirS1VdffcJzXC6XXC6X+bigoECS5Ha75Xa7Q26D2+0O2N+ksKSMsmx15O//cPw9NEf0X/Dou9DQf8Grb9/Rxw3n2GoyxtwAgMhg1BgmCZWF0ku5Ow4AQI1effVVzZ49W8uWLVP79u1PeN6cOXM0e/bsasdXrFihxMTEsLSl6v4m776/Qsn2sFy22cjMzIx0E2Ia/Rc8+i409F/w6tp3JSUlDdyS5sufSC+v8MrrNWS1WiLbIABAs0MiPUwSKku7kEgHAKC61157TTfddJPeeOMNDRs2rNZzp02bpilTppiPCwoKlJ6erhEjRiglJSXktrjdbmVmZio+zqpyj1cXDR6qTq2cIV+3OfD33fDhw2W3c/ehvui/4NF3oaH/glffvvOvokL4VV1NVu7xKsEaF7nGAACaJRLpYeKMr0yks9koAAABlixZohtvvFGvvfaaxowZc9LzHQ6HHA5HteN2uz2sCaAEuy+R7jasJJbqKdx/F80N/Rc8+i409F/w6tp39G/DqZpIL3N7zMlsAAA0FhLpYZJQGdXZ+AQA0JQVFRVp27Zt5uPs7GxlZWUpNTVVXbp00bRp07R37169+OKLknzlXMaPH68nnnhCAwYM0P79+yVJTqdTLVu2jMhn8Euwx6mgrILYDQBADIizSDarRRVeg73JAAARYT35KaiLBJvvbjiDcQBAU7Zhwwb169dP/fr1kyRNmTJF/fr104wZMyRJ+/btU05Ojnn+s88+q4qKCt12223q2LGj+WfSpEkRaX9VjspC6a4KYjcAALHAwQQ2AEAEMSM9TJzUSAcANANDhgyRYRgnfH7x4sUBj1evXt2wDQqBP3Yzqw0AgNjgsFlV7PKojJvgAIAIYEZ6mCTE+7qSRDoAALGBsmwAAMSWYyvBuQkOAGh8JNLDxJzVxmajAADEBAcz0gEAiCn+m+AuboIDACKARHqY+OusllUwGAcAIBYk2JiRDgBALHH4Z6Qz7gYARACJ9DAxa6QzIx0AgJiQwP4mAADEFMqyAQAiiUR6mDAYBwAgtjiYkQ4AQEwhdgMAIolEepg440mkAwAQS/w3wV0sDwcAICb49zdxsb8JACACSKSHiZNNTwAAiClOlocDABBT/PubuCqI3QCAxkciPUz8m54wIx0AgNjgn9VGIh0AgNiQYMZuZqQDABpfRBPpa9as0dixY9WpUydZLBYtXbq01vPfeustDR8+XO3atVNKSooGDhyoDz74oHEaexJsNgoAQGxJMOusMhgHACAWsNkoACCSIppILy4uVp8+fbRgwYI6nb9mzRoNHz5cy5cv18aNGzV06FCNHTtWmzZtauCWnlxCvK8rSxmMAwAQExKYkQ4AQEzxrwQvo7QLACACbJF881GjRmnUqFF1Pn/+/PkBjx955BEtW7ZM77zzjvr16xfm1tWPk8E4AAAxxeGf1cZmowAAxAQHq8kAABEU0zXSvV6vCgsLlZqaGummKMFGIh0AgFjij92UZQMAIDb4S7uw2SgAIBIiOiM9VPPmzVNRUZGuvvrqE57jcrnkcrnMxwUFBZIkt9stt9sdchv817BZfHfES8s9Ybluc+DvJ/orOPRf8Oi70NB/watv39HHDYvBOAAAscUs7cKMdABABMRsIv3VV1/V7NmztWzZMrVv3/6E582ZM0ezZ8+udnzFihVKTEwMW3s2fLZWkk3FZeVavnx52K7bHGRmZka6CTGN/gsefRca+i94de27kpKSBm5J83ZseTiJdAAAYgGbjQIAIikmE+mvvfaabrrpJr3xxhsaNmxYredOmzZNU6ZMMR8XFBQoPT1dI0aMUEpKSshtcbvdyszM1PChgzX7i0/kNiy67LJRslotIV+7qTP7bvhw2e32SDcn5tB/waPvQkP/Ba++fedfRYWG4YxnVhsAALHk2EbhxG4AQOOLuUT6kiVLdOONN+q1117TmDFjTnq+w+GQw+Godtxut4c1AdQi8dh7eC1xclQGeJxcuP8umhv6L3j0XWjov+DVte/o34bF/iYAAMQW/2oyyrIBACIhoon0oqIibdu2zXycnZ2trKwspaamqkuXLpo2bZr27t2rF198UZKvnMv48eP1xBNPaMCAAdq/f78kyel0qmXLlhH5DH7+wbgklbo95iw3AAAQnRz+5eEMxgEAiAmUZQMARJI1km++YcMG9evXT/369ZMkTZkyRf369dOMGTMkSfv27VNOTo55/rPPPquKigrddttt6tixo/ln0qRJEWl/VVarRfGVQb2UoA4AQNRLYMMyAABiir+0i6uC2A0AaHwRnZE+ZMgQGYZxwucXL14c8Hj16tUN26AQOe1xKq/wqrScRDoAANGODcsAAIgtxG4AQCRFdEZ6U+O0U2sVAIBYkUDcBgAgprCaDAAQSSTSw4i74wAAxA5/nVW3x5DHe+IVcgAAIDo4GHMDACKIRHoY+We2USMdAIDo519JJjEgBwAgFjhsrCYDAEQOifQwcsZXJtKpkQ4AQNTzz0iXGJADABAL/KvA2WwUABAJJNLDyKyRTlAHACDqWa0WxVcm04ndAABEvwTbsUS6YVCWDQDQuEikh5G5aRkz0gEAiAn+ATkz0gEAiH6OKmXZmJUOAGhsJNLDyEmNdAAAYop5E5zYDQBA1EugLBsAIIJIpIcRm40CABBbSKQDABA7bHFWxVktkqQyNzPSAQCNi0R6GDnjfd3JZqMAAMQG/6ZlDMYBAIgNx+qkM+4GADQuEulhdGyzUQI6AACxgBnpAADElmOxm5vgAIDGRSI9jNhsFACA2MJgHACA2MJNcABApJBIDyNqpAMAEFsYjAMAEFscZlk2YjcAoHGRSA8jp5lIZ1YbAACxwF9nlbJsAADEBofNX1KVcTcAoHGRSA8jZzyz2gAAiCWUdgEAILYkMCMdABAhJNLDiIAOAEBsIXYDABBbEipnpLuYkQ4AaGQk0sPILO3CZqMAAMQEaqQDABBbuAkOAIgUEulhxGajAADEFhLpAADEFn/sdhG7AQCNjER6GDkZjAMAEFOokQ4AQGwhdgMAIoVEehgR0AEAiC0sDwcAILY4bMRuAEBkkEgPI2c8pV0AAIgl/g3LytiwDACAmGCWdiF2AwAaGYn0MGKzUQAAYgs10gEAiC0OVpMBACKERHoYVd1s1DCMCLcGAACcDKVdAACILcdWkxG7AQCNi0R6GPlLu0gsMwMAIBYwIx0AgNjC3mQAgEghkR5GCbZj3cmAHACA6HdsRjqDcQAAYgGbjQIAIoVEehjZ4qyyx1kkseEoAACxwFweTtwGACAmMCMdABApJNLDLIENRwEAiBkJ8dRZBQAglvhXk7mI3QCARkYiPcyc3B0HACBmHJuRTtwGADRNa9as0dixY9WpUydZLBYtXbr0pK9ZvXq1zj33XDkcDvXo0UOLFy9u8HbWlX/ymovYDQBoZCTSw8yckc4ScQAAot6xGunEbQBA01RcXKw+ffpowYIFdTo/OztbY8aM0dChQ5WVlaXJkyfrpptu0gcffNDALa0bM3YzIx0A0MhskW5AU3NsRjpBHQCAaMesNgBAUzdq1CiNGjWqzucvXLhQ3bp106OPPipJOuOMM/Txxx/r8ccf18iRIxuqmXXG/iYAgEghkR5m/lqr1EgHACD6+RPp5R6vPF5DcVZLhFsEAEBkrVu3TsOGDQs4NnLkSE2ePPmEr3G5XHK5XObjgoICSZLb7Zbb7Q65Tf5ruN1uxVkMSb4xdziu3dRV7TvUH/0XPPouNPRf8Orbd/XpYxLpYeZkmRkAADHDvzxc8s1sS3LwqxEAoHnbv3+/OnToEHCsQ4cOKigoUGlpqZxOZ7XXzJkzR7Nnz652fMWKFUpMTAxb2zIzM7WnWJJsKigq0fLly8N27aYuMzMz0k2IafRf8Oi70NB/watr35WUlNT5mowWw8yskc6MdAAAop5/ebhEIh0AgGBNmzZNU6ZMMR8XFBQoPT1dI0aMUEpKSsjXd7vdyszM1PDhw5WTX665X34i2ewaPTrypWaiXdW+s9vtkW5OzKH/gkffhYb+C159+86/iqouGC2GGTXSAQBN2Zo1azR37lxt3LhR+/bt09tvv60rrrii1tesXr1aU6ZM0TfffKP09HTdf//9mjBhQqO092SsVovibVaVV3hVVkGddAAA0tLSdODAgYBjBw4cUEpKSo2z0SXJ4XDI4XBUO26328OaALLb7UqubEKZ20tyqR7C/XfR3NB/waPvQkP/Ba+ufVef/rWe/BTUhz+RXkoiHQDQBBUXF6tPnz5asGBBnc7Pzs7WmDFjNHToUGVlZWny5Mm66aab9MEHHzRwS+suwVZZlo3YDQCABg4cqJUrVwYcy8zM1MCBAyPUokDmRuEVXhmGEeHWAACaE2akh9mxzUaZ1QYAaHpGjRqlUaNG1fn8hQsXqlu3bnr00UclSWeccYY+/vhjPf744xo5MjqWYyfY41RQVkEiHQDQJBUVFWnbtm3m4+zsbGVlZSk1NVVdunTRtGnTtHfvXr344ouSpIkTJ+rJJ5/UH/7wB91444368MMP9Y9//EPvvvtupD5CAIft2HxAV4XXTKwDANDQmJEeZmZpFzYbBQBA69at07BhwwKOjRw5UuvWrYtQi6pLMMuycRMcAND0bNiwQf369VO/fv0kSVOmTFG/fv00Y8YMSdK+ffuUk5Njnt+tWze9++67yszMVJ8+ffToo4/q+eefj6ob4H4uYjcAoBExIz3MEuy+exNsNgoAgLR//3516NAh4FiHDh1UUFCg0tLSGmutulwuuVwu87F/8xe32y232x1ym/zX8H912CySpOIyV1iu35Qd33eoH/ovePRdaOi/4NW376Kxj4cMGVJrCZTFixfX+JpNmzY1YKuCZ4+zKs5qkcdrqKzCo5aidjAAoHGQSA8zNhsFACA0c+bM0ezZs6sdX7FihRITE8P2PpmZmZKksuI4SRZ9tG69jmyh1mpd+PsOwaH/gkffhYb+C15d+66kpKSBWwLJt79JcbmHcTcAoFGRSA+zBDYbBQDAlJaWpgMHDgQcO3DggFJSUmqcjS5J06ZN05QpU8zHBQUFSk9P14gRI5SSkhJym9xutzIzMzV8+HDZ7Xa99MN67S7O19l9+mlU77SQr9+UHd93qB/6L3j0XWjov+DVt+/8q6jQsBLscZWJdEq7AAAaD4n0MHPGMyMdAAC/gQMHavny5QHHMjMzNXDgwBO+xuFwyOFwVDtut9vDmgDyXy/R4bum22shwVRH4f67aG7ov+DRd6Gh/4JX176jfxtHAivBAQARwGajYZZg889I5844AKDpKSoqUlZWlrKysiRJ2dnZysrKMjcpmzZtmq6//nrz/IkTJ2rHjh36wx/+oC1btuipp57SP/7xD915552RaH6NEmy+X4fYKBwAgNjg8MduEukAgEZEIj3MzBnpbDYKAGiCNmzYoH79+qlfv36SpClTpqhfv36aMWOGJGnfvn1mUl2SunXrpnfffVeZmZnq06ePHn30UT3//PMaOXJkRNpfk2Oz2rgJDgBALHBUxm5XBbEbANB4KO0SZk5qpAMAmrAhQ4bIME68IefixYtrfM2mTZsasFWhSbAzqw0AgFhC7AYARAIz0sOMWm0AAMQWf+x2EbsBAIgJ/pKqZcxIBwA0IhLpYea/M86MdAAAYoN5E5zBOAAAMYEZ6QCASCCRHmZmjXQCOgAAMcG/2Wgp+5sAABATHDZWkwEAGl9EE+lr1qzR2LFj1alTJ1ksFi1duvSkr1m9erXOPfdcORwO9ejRo8ZarJFk1khnMA4AQExwUJYNAICY4p+RzmajAIDGFNFEenFxsfr06aMFCxbU6fzs7GyNGTNGQ4cOVVZWliZPnqybbrpJH3zwQQO3tO6qbjZa22ZsAAAgOjgp7QIAQExhbzIAQCTYIvnmo0aN0qhRo+p8/sKFC9WtWzc9+uijkqQzzjhDH3/8sR5//HGNHDmyoZpZLwmVpV28huT2GIq3WSLcIgAAUBsG4wAAxJZjsZub4ACAxhPRRHp9rVu3TsOGDQs4NnLkSE2ePPmEr3G5XHK5XObjgoICSZLb7Zbb7Q65Tf5r+L/GGccCeWFJmVKc9pDfo6k6vu9QP/Rf8Oi70NB/watv39HHjYMNywAAiC0OYjcAIAJiKpG+f/9+dejQIeBYhw4dVFBQoNLSUjmdzmqvmTNnjmbPnl3t+IoVK5SYmBi2tmVmZkqSDEOyKk5eWfTuB5lqGR+2t2iy/H2H4NB/waPvQkP/Ba+ufVdSUtLALYF0bFabi1ltAADEBP9mo2UVJNIBAI0nphLpwZg2bZqmTJliPi4oKFB6erpGjBihlJSUkK/vdruVmZmp4cOHy273zT6/b9NKFbs8GvTjIcpoE75kfVNTU9+h7ui/4NF3oaH/glffvvOvokLDMmekMxgHACAmHFtNxk1wAEDjialEelpamg4cOBBw7MCBA0pJSalxNrokORwOORyOasftdntYE0BVr+e021Ts8qhCFpJMdRDuv4vmhv4LHn0XGvoveHXtO/q3cSRUzmorLSeRDgBALPDHbhcbhQMAGpE10g2oj4EDB2rlypUBxzIzMzVw4MAItahm/rvjDMgBAIh+DjvLwwEAiCVsFA4AiISIJtKLioqUlZWlrKwsSVJ2draysrKUk5MjyVeW5frrrzfPnzhxonbs2KE//OEP2rJli5566in94x//0J133hmJ5p+QszKolxLUAQCIek5zMM6sNgAAYgEbhQMAIiGiifQNGzaoX79+6tevnyRpypQp6tevn2bMmCFJ2rdvn5lUl6Ru3brp3XffVWZmpvr06aNHH31Uzz//vEaOHBmR9p+IM5674wAAxAoG4wAAxBY2CgcAREJEa6QPGTJEhmGc8PnFixfX+JpNmzY1YKtCl8DMNgAAYgaDcQAAYovDxkbhAIDGF1M10mOFf0BOjXQAAKKfP26Xe7zyeE98gx8AAEQHboIDACKBRHoDcPo3G2WJOAAAUc9f2kWSXMxsAwAg6pll2YjbAIBGRCI9FF6PVJwrZ3lewGEnO4gDABAzEmxx5veUZQMAIPo5bIy5AQCNj0R6KL5bLvv8M3T+zqcCDrPZKAAAscNqtSg+jtVkAADECvYlAwBEAon0UCS2lSTFVxQGHDZrpDMYBwAgJjj8S8SJ3QAARD1zs1HiNgCgEZFID0VSO0mSw10QcPjYZqPcHQcAIBZQlg0AgNhhbjZa4ZVhsFE4AKBxkEgPRZJvRrrdWypVlJmHncxIBwAgprBEHACA2BG4UTixGwDQOEikhyKhpQyr3fd9ySHzMLPaAACILf4BuYvYDQBA1PPfAJckFzfBAQCNhER6KCwWc1a6inPNwwlsNgoAQEwxZ6RXELsBAIh29jir4qwWScRuAEDjIZEeqsoNRy3FeeahhMqNTyjtAgBAbEiwUdoFAIBYksCGowCARkYiPUSGf0Z61dIu8f7NRgnoAADEAkdlaRdiNwAAscHB/iYAgEZGIj1U/hnpJcdKu1AjHQCA2EJpFwAAYot/RrqL2A0AaCS2UF5cUlKinJwclZeXBxw/55xzQmpULDFnpFcp7eLkzjgAIEoRu2tG7AYARCtid80SiN0AgEYWVCI9NzdXN9xwg957770an/d4mtEd4cR2kiRLybFEun+JGTXSAQDRgthduwQ7dVYBANGF2F07ByvBAQCNLKjSLpMnT1Z+fr4+++wzOZ1Ovf/++/r73/+unj176l//+le42xjVapuRTiIdABAtiN21889qcxG7AQBRgthdO26CAwAaW1Az0j/88EMtW7ZM559/vqxWqzIyMjR8+HClpKRozpw5GjNmTLjbGb0S/Yn0KjXSKzcbLWPDMgBAlCB21+5YjXSWhwMAogOxu3aOyhrpxG4AQGMJakZ6cXGx2rdvL0lq3bq1cnN9SeSzzz5bX3zxRfhaFwvMzUZrqJHOpicAgChB7K6df8MyZrUBAKIFsbt2rCYDADS2oBLpp512mr777jtJUp8+ffTMM89o7969WrhwoTp27BjWBkY7s7RLySHJMCQdS6S7PYbcHu6OAwAij9hdO+qsAgCiDbG7dgk2VpMBABpXUKVdJk2apH379kmSZs6cqcsuu0yvvPKK4uPjtXjx4nC2L/oltpEkWSrKpPIiydFCDvux+xNlbo/scUHdrwAAIGyI3ZXKi6XcbUopyQk4nGDub8JgHAAQHYjdtfPXSGdGOgCgsQSVSP/Vr35lfn/eeedp165d2rJli7p06aK2bduGrXExIT5JFVaHbF6Xr066o4UcNqssFt8E9VK3Ry0S7JFuJQCgmSN2V9q+SvbXr1WfxO6SJpqHncxIBwBEGWJ37RKI3QCARhaWqdKJiYk699xz1bZtWx08eDAcl4wpLluK75tiX510i8VybEBezsw2AED0abaxO9lXa9ZRcTTgsH9WG4NxAEC0arax+wSOJdIZcwMAGkdQifQZM2bUePyVV17RWWedFVKDYtGxRHqueYwNRwEA0YTYXalybxNHRUHA4WMbljEYBwBEB2J37RyVG4W7GHMDABpJUKVdFi9erKNHj+qJJ56QJB08eFC33HKLPv74Y82fPz+c7YsJ5bYWvm+qJNLNWqvlBHUAQOQRuysl+Wak27zlcpcXSfbWkqrMSGcwDgCIEsTu2jmYkQ4AaGRBJdI/+ugjDR8+XPn5+Ro+fLgmTZqkiy66SF9//bXS0tLC3caod3xpF+nYgLyUJeIAgChA7K7kSJZhT5TFXeK7AZ5UmUi3UWcVABBdiN21oywbAKCxBVXaJSMjQ2vWrNGmTZs0fvx4/elPf9KyZcuabTB32asn0p3xlTPSCeoAgChA7K4iqZ0kyVJlJRmz2gAA0YbYXTvzJngFsRsA0DiC3mw0LS1Na9as0YABA/T666+rtLQ0nO2KKbXVSHeRSAcARAlit49RmUhXUdWSbKwkAwBEH2L3iR3bbJTYDQBoHEGVdmndurUsFoskye12q7i4WO3bt5fdbpckHT58OHwtjAHlNSTSzRrpBHUAQBQgdldhzkg/aB5iMA4AiDbE7kpHdsm65X2dcni7pNHmYf9mo8RuAEBjCSqRzsYmgWquke7fbJRlZgCAyCN2V5HY1ve1pEpJNnMlGXEbABAdiN2VDn6ruA/+oO7OrpIeNg/7x9wuSrsAABpJUIn08ePHh7sdMc1la+H7pobSLsxIBwBEA2L3MUZSe983NawkK/d45fEairNaItE0AABMxO5Kyb647ag4GnDYX5aNcqoAgMYSVCJdklwul1555RVt3rxZFotFZ511ln75y1/K4XCEs30xody/2WjJIcnrlaxWM5HOMjMAQLQgdleqYbNR/2BcklwVHiXGB/0rEgAAYUPsVpVEeoE8hmEeTmCjcABAI6vTZqMVFRU65ZRTlJvrG3Bu3rxZPXv21F133aWNGzdqw4YNmjJlinr16qUtW7Y0aIOjkSuucka64ZHK8iVJzngS6QCAyCF2n5iRXLnZaNVEui3O/J4BOQAgEojdJ1B5A9xaZbwtHbsJXlbBmBsA0DjqlEi32WwqKipSYWGhJGnSpEk6//zzlZOTo1WrVmnVqlXatWuXzj33XE2aNKlBGxyNDKtNRkIr34PKQbmjMqiXlhPUAQCNj9hdixo2G7VaLYqPY9MyAEDkELtPwOaQkdDS932Vm+AOG5PXAACNq87rltu2bauSkhJJ0tq1a7V+/XolJyebz7do0UIPPPCABg4cGP5WxoKktr6748W5UrvTqJEOAIg4YnfNjMTqM9Il303wco+XATkAIGKI3SeQ1F4qOypL0QFJZ0mqUiOdzUYBAI2kTjPSJalfv3567733JEmtWrVSfn5+tXOOHj2q+Pj4sDUulhiJbX3fVA7KSaQDACKN2H0C/hnprkLJXWYeTiB2AwAijNhdMyOp+k1wZqQDABpbnRPpt912mx566CF9+OGHuuKKK/Sb3/xGn332mQzDkGEY+vTTTzVx4kSNGTOmIdsbvcxEep6kYzXSXdRZBQBECLH7BBJaymOpXJRXZUDuZNMyAECENVTsXrBggbp27aqEhAQNGDBA69evr/X8+fPn67TTTpPT6VR6erruvPNOlZWV1fqaBlXjRuHH4rZRZRNSAAAaSp1LuwwZMkRPPfWUrrzySjmdTu3bt0+DBg2Szea7REVFhS677DI98cQTDdbYaGYkBSbS/ZuWMasNABApxO4TsFhUbkuR031YKj4otUqXVGWJOLEbABAhDRG7X3/9dU2ZMkULFy7UgAEDNH/+fI0cOVLfffed2rdvX+38V199VVOnTtULL7ygQYMG6fvvv9eECRNksVj02GOPhe2z1oeRVNnOgET6sXmBrgqvmVgHAKCh1DmRLknXXnutrrjiCn300UfKzc2V1+ubsdW6dWudfvrp6tWrV4M0MiYcV9oloXJGOpuNAgAiidhdM5c/kV5Uw8y2CmI3ACBywh27H3vsMd1888264YYbJEkLFy7Uu+++qxdeeEFTp06tdv7atWt14YUXaty4cZKkrl276pe//KU+++yzED9ZCPwz0ouObRReNXHucpNIBwA0vHol0iUpKSlJl112WUO0JbYdV7ONGukAgGgR7ti9YMECzZ07V/v371efPn3017/+Vf379z/h+fPnz9fTTz+tnJwctW3bVldeeaXmzJmjhISEsLWpvsrsLaVS+WakV0qwUdoFABAdwhW7y8vLtXHjRk2bNs08ZrVaNWzYMK1bt67G1wwaNEgvv/yy1q9fr/79+2vHjh1avny5rrvuuhO+j8vlksvlMh8XFBRIktxut9xud8ifw+tsozhJRtEB83qGYchqkbyGVFhapkR7yG/TJPn7Kxx/D80R/Rc8+i409F/w6tt39enjeifSJekvf/lLrc/fcccdwVw2ph1f2uVYnVUS6QCAyAtX7G4Ky8MlqdyW4vumysw2R+UScWI3ACAahCN25+XlyePxqEOHDgHHO3TooC1bttT4mnHjxikvL08XXXSRDMNQRUWFJk6cqHvvvfeE7zNnzhzNnj272vEVK1YoMTHxpO08mQ5H9+hHkgr3bdd/ly83j9sscSo3LPrgPx+qbeTuz8eEzMzMSDchptF/waPvQkP/Ba+ufVdSUlLnawaVSJ88ebISExPVvn37apt6WCyWZplIP760izOewTgAIHqEK3Y3ieXh8pV2kXRcrVVmpAMAokekxt2rV6/WI488oqeeekoDBgzQtm3bNGnSJD344IOaPn16ja+ZNm2apkyZYj4uKChQenq6RowYoZSUlJDb5MlpJ+14XCm2co0ePdo8Put/q1Re4tbACy9Wzw7J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nnoKF154IbKyspCVlYU5c+Z0+X4iIqLBgIl0IiIi6pZFixbhqaeewp///Gfs2bMHP/rRj+D1erFgwQIAwK233tpuMdKHHnoIv/rVr/DMM8+goqICtbW1qK2thcfjydRHICIiGlRefPFFLFq0CEuWLMHWrVsxefJkzJ07F/X19Z2+f8OGDbjxxhvx3nvvYdOmTfESaydPnjzLLSciIuo7mEgnIiKibpk/fz4effRRLF68GFOmTMH27duxdu3a+AKkVVVVqKmpib//ySefRDAYxPXXX4+ioqL49uijj2bqIxAREQ0qjz32GG6//XYsWLAA48aNw8qVK2EymfDMM890+v4XXngBd9xxB6ZMmYIxY8bg6aefjs9AIyIiGqxYI52IiIi6beHChVi4cGGnP9uwYUO710ePHv3qG0RERESdCgaD2LJlS7vZYiqVCnPmzMGmTZtSuobP50MoFEJ2dnanPw8EAggEAvHXsUVXQ6EQQqFQD1qP+HWS95Q69l3PsP/Sx77rGfZf+rrbd93pYybSiYiIiIiIiAaoxsZGRCKR+MyxmIKCAuzduzela9xzzz0oLi7GnDlzOv350qVL8cADD3Q4//bbb8NkMnW/0aexbt26XrvWYMO+6xn2X/rYdz3D/ktfqn3n8/lSviYT6URERERERETUqWXLlmH16tXYsGEDDAZDp++57777sGjRovhrl8sVr6tus9l63IZQKIR169bhsssug1ar7fH1BhP2Xc+w/9LHvusZ9l/6utt3sVlUqWAinYiIiIiIiGiAys3NhVqtRl1dXbvzdXV1KCws7PJ3H330USxbtgzvvPMOJk2adNr36fV66PX6Due1Wm2vJoB6+3qDCfuuZ9h/6WPf9Qz7L32p9l13+peLjRIRERERERENUDqdDtOmTWu3UGhs4dBZs2ad9vcefvhhPPjgg1i7di2mT59+NppKRETUp3FEOhEREREREdEAtmjRItx2222YPn06ZsyYgeXLl8Pr9WLBggUAgFtvvRUlJSVYunQpAOChhx7C4sWL8de//hUVFRWora0FAFgsFlgslox9DiIiokxiIp2IiIiIiIhoAJs/fz4aGhqwePFi1NbWYsqUKVi7dm18AdKqqiqoVIkJ608++SSCwSCuv/76dtdZsmQJ7r///rPZdCIioj6DiXQiIiIiIiKiAW7hwoVYuHBhpz/bsGFD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Th9jd3oYu3vX2YjdTKSnQafTYdq0aVi/fn38XDQaxfr16zFr1qwMtqz/GTp0KAoLC9v1pcvlwqeffsq+BCDLMhYuXIhXX30V7777LoYOHdru59OmTYNWq23Xf/v27UNVVRX77zSi0SgCgQD77gwuvfRS7Ny5E9u3b49v06dPx8033xw/Zv+lzuPx4NChQygqKuK/vQxh7O49jN1dY+zufYzdqWHs7l2M3ZnH2N17GLu7xtjd+xi7U8PY3bvOSuxOe5nSQW716tWyXq+XV61aJX/55ZfyD37wA9nhcMi1tbWZblqf43a75W3btsnbtm2TAciPPfaYvG3bNvnYsWOyLMvysmXLZIfDIf/973+Xv/jiC3nevHny0KFD5ba2tgy3PPN+9KMfyXa7Xd6wYYNcU1MT33w+X/w9P/zhD+Xy8nL53XfflTdv3izPmjVLnjVrVgZb3Xfce++98saNG+UjR47IX3zxhXzvvffKkiTJb7/9tizL7LvuSl49XJbZf1352c9+Jm/YsEE+cuSI/NFHH8lz5syRc3Nz5fr6elmW2XeZwtidOsbu9DF29wxjd+9i7E4dY3ffxNidOsbu9DF29wxjd+9i7E5dJmI3E+k98MQTT8jl5eWyTqeTZ8yYIX/yySeZblKf9N5778kAOmy33XabLMuyHI1G5V/96ldyQUGBrNfr5UsvvVTet29fZhvdR3TWbwDkZ599Nv6etrY2+Y477pCzsrJkk8kkf+tb35Jramoy1+g+5Hvf+548ZMgQWafTyXl5efKll14aD+ayzL7rrlMDOvvv9ObPny8XFRXJOp1OLikpkefPny8fPHgw/nP2XeYwdqeGsTt9jN09w9jduxi7U8fY3XcxdqeGsTt9jN09w9jduxi7U5eJ2C3JsiynP56diIiIiIiIiIiIiGhgY410IiIiIiIiIiIiIqIuMJFORERERERERERERNQFJtKJiIiIiIiIiIiIiLrARDoRERERERERERERUReYSCciIiIiIiIiIiIi6gIT6UREREREREREREREXWAinYiIiIiIiIiIiIioC0ykExERERERERERERF1gYl0IiIiIiIiIiIiIqIuMJFONAiFQiGsWrUKF1xwAfLy8mA0GjFp0iQ89NBDCAaDmW4eERERnYKxm4iIqH9h7CYaeCRZluVMN4KIzq7t27fjZz/7Ge644w5MnToVfr8fO3fuxP3334+ioiK89dZb0Gq1mW4mERERKRi7iYiI+hfGbqKBhyPSiQahCRMmYP369bjuuuswbNgwjBs3DvPnz8f777+PXbt2Yfny5QAASZI63X7605/Gr9XS0oJbb70VWVlZMJlMuOKKK3DgwIH4z7/3ve9h0qRJCAQCAIBgMIipU6fi1ltvBQAcPXoUkiRh+/bt8d/51a9+BUmS4u0gIiIa7Bi7iYiI+hfGbqKBh4l0okFIo9F0ej4vLw/XXnstXnjhhfi5Z599FjU1NfFt1qxZ7X7nu9/9LjZv3ozXX38dmzZtgizLuPLKKxEKhQAAjz/+OLxeL+69914AwC9+8Qs4nU784Q9/6LQNJ06cwPLly2E0GnvjoxIREQ0IjN1ERET9C2M30cDT+f/VRDQojB8/HseOHWt3LhQKQa1Wx187HA4UFhbGX+t0uvjxgQMH8Prrr+Ojjz7CeeedBwB44YUXUFZWhtdeew3f/va3YbFY8Pzzz+Oiiy6C1WrF8uXL8d5778Fms3Xapl/84heYP38+3nnnnd78qERERAMCYzcREVH/wthNNHAwkU40iK1Zsyb+BDvm4YcfxvPPP5/S7+/ZswcajQaVlZXxczk5ORg9ejT27NkTPzdr1izcfffdePDBB3HPPffgggsu6PR6W7duxauvvop9+/YxoBMREXWCsZuIiKh/YewmGjiYSCcaxIYMGdLh3KFDhzBq1Khe/TvRaBQfffQR1Go1Dh48eNr3/exnP8Pdd9+NoqKiXv37REREAwVjNxERUf/C2E00cLBGOtEg1NzcDLfb3eH85s2b8d577+Gmm25K6Tpjx45FOBzGp59+Gj/X1NSEffv2Ydy4cfFzjzzyCPbu3YuNGzdi7dq1ePbZZztc6/XXX8f+/ftx9913p/GJiIiIBjbGbiIiov6FsZto4GEinWgQqqqqwpQpU/CnP/0JBw8exOHDh/GXv/wF8+bNw4UXXthudfCujBw5EvPmzcPtt9+ODz/8EDt27MB3vvMdlJSUYN68eQCAbdu2YfHixXj66adx/vnn47HHHsNPfvITHD58uN21Hn74YfzXf/0XTCZTb39cIiKifo+xm4iIqH9h7CYaeJhIJxqEJkyYgCVLlmDVqlWYOXMmxo8fj4cffhgLFy7E22+/3W5hkzN59tlnMW3aNHzzm9/ErFmzIMsy1qxZA61WC7/fj+985zv47ne/i6uuugoA8IMf/ACzZ8/GLbfcgkgkEr/OiBEjcNttt/X6ZyUiIhoIGLuJiIj6F8ZuooFHkmVZznQjiIiIiIiIiIiIiIj6Ko5IJyIiIiIiIiIiIiLqAhPpRERERERERERERERdYCKdiIiIiIiIiIiIiKgLTKQTEREREREREREREXWBiXQiIiIiIiIiIiIioi4wkU5ERERERERERERE1AUm0omIiIiIiIiIiIiIusBEOhERERERERERERFRF5hIJyIiIiIiIiIiIiLqAhPpRERERERERERERERdYCKdiIiIiIiIiIiIiKgLTKQTEREREREREREREXXh/wPIlp49u/s6gAAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Графики ошибок для всех моделей\n", + "plt.figure(figsize=(15, 5))\n", + "for i, units in enumerate(hidden_units_list, 1):\n", + " plt.subplot(1, 3, i)\n", + " plt.plot(histories_1[units].history['loss'], label='Обучающая')\n", + " plt.plot(histories_1[units].history['val_loss'], label='Валидационная')\n", + " plt.title(f'{units} нейронов')\n", + " plt.xlabel('Эпохи')\n", + " plt.ylabel('Ошибка')\n", + " plt.legend()\n", + " plt.grid(True)\n", + "plt.tight_layout()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "EJBwT5vhnnSG" + }, + "outputs": [], + "source": [ + "# Добавление второго скрытого слоя\n", + "second_layer_units = [50, 100]\n", + "models_2 = {}\n", + "histories_2 = {}\n", + "scores_2 = {}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 420194, + "status": "ok", + "timestamp": 1759128698216, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "K5vweMySno3t", + "outputId": "b67b155c-89ea-46e0-a590-a588433e0a38" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Обучение модели со вторым слоем 50 нейронов\n", + "Epoch 1/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.2096 - loss: 2.2675 - val_accuracy: 0.5588 - val_loss: 2.0950\n", + "Epoch 2/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.5971 - loss: 1.9743 - val_accuracy: 0.6620 - val_loss: 1.5239\n", + "Epoch 3/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.6823 - loss: 1.3658 - val_accuracy: 0.7380 - val_loss: 1.0431\n", + "Epoch 4/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.7627 - loss: 0.9560 - val_accuracy: 0.7980 - val_loss: 0.8069\n", + "Epoch 5/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8084 - loss: 0.7568 - val_accuracy: 0.8352 - val_loss: 0.6673\n", + "Epoch 6/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8369 - loss: 0.6330 - val_accuracy: 0.8543 - val_loss: 0.5793\n", + "Epoch 7/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8554 - loss: 0.5512 - val_accuracy: 0.8660 - val_loss: 0.5197\n", + "Epoch 8/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8667 - loss: 0.5051 - val_accuracy: 0.8757 - val_loss: 0.4769\n", + "Epoch 9/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8770 - loss: 0.4593 - val_accuracy: 0.8798 - val_loss: 0.4444\n", + "Epoch 10/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8850 - loss: 0.4256 - val_accuracy: 0.8877 - val_loss: 0.4190\n", + "Epoch 11/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8889 - loss: 0.4076 - val_accuracy: 0.8910 - val_loss: 0.3995\n", + "Epoch 12/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8948 - loss: 0.3829 - val_accuracy: 0.8947 - val_loss: 0.3835\n", + "Epoch 13/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8982 - loss: 0.3699 - val_accuracy: 0.8997 - val_loss: 0.3689\n", + "Epoch 14/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9008 - loss: 0.3560 - val_accuracy: 0.9017 - val_loss: 0.3582\n", + "Epoch 15/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9046 - loss: 0.3446 - val_accuracy: 0.9028 - val_loss: 0.3471\n", + "Epoch 16/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9051 - loss: 0.3367 - val_accuracy: 0.9055 - val_loss: 0.3375\n", + "Epoch 17/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9087 - loss: 0.3266 - val_accuracy: 0.9072 - val_loss: 0.3295\n", + "Epoch 18/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9089 - loss: 0.3192 - val_accuracy: 0.9093 - val_loss: 0.3214\n", + "Epoch 19/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9116 - loss: 0.3087 - val_accuracy: 0.9127 - val_loss: 0.3142\n", + "Epoch 20/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9110 - loss: 0.3098 - val_accuracy: 0.9148 - val_loss: 0.3084\n", + "Epoch 21/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9144 - loss: 0.2970 - val_accuracy: 0.9158 - val_loss: 0.3017\n", + "Epoch 22/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9155 - loss: 0.2888 - val_accuracy: 0.9172 - val_loss: 0.2970\n", + "Epoch 23/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9168 - loss: 0.2848 - val_accuracy: 0.9192 - val_loss: 0.2909\n", + "Epoch 24/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9174 - loss: 0.2841 - val_accuracy: 0.9205 - val_loss: 0.2863\n", + "Epoch 25/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9202 - loss: 0.2728 - val_accuracy: 0.9213 - val_loss: 0.2814\n", + "Epoch 26/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9214 - loss: 0.2714 - val_accuracy: 0.9222 - val_loss: 0.2768\n", + "Epoch 27/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9221 - loss: 0.2645 - val_accuracy: 0.9240 - val_loss: 0.2717\n", + "Epoch 28/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9224 - loss: 0.2637 - val_accuracy: 0.9250 - val_loss: 0.2669\n", + "Epoch 29/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9261 - loss: 0.2522 - val_accuracy: 0.9262 - val_loss: 0.2628\n", + "Epoch 30/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9250 - loss: 0.2523 - val_accuracy: 0.9258 - val_loss: 0.2587\n", + "Epoch 31/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9282 - loss: 0.2438 - val_accuracy: 0.9272 - val_loss: 0.2544\n", + "Epoch 32/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9298 - loss: 0.2417 - val_accuracy: 0.9288 - val_loss: 0.2506\n", + "Epoch 33/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9288 - loss: 0.2397 - val_accuracy: 0.9292 - val_loss: 0.2471\n", + "Epoch 34/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9311 - loss: 0.2364 - val_accuracy: 0.9297 - val_loss: 0.2433\n", + "Epoch 35/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9313 - loss: 0.2328 - val_accuracy: 0.9310 - val_loss: 0.2394\n", + "Epoch 36/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9318 - loss: 0.2303 - val_accuracy: 0.9320 - val_loss: 0.2362\n", + "Epoch 37/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9335 - loss: 0.2261 - val_accuracy: 0.9333 - val_loss: 0.2325\n", + "Epoch 38/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9336 - loss: 0.2229 - val_accuracy: 0.9355 - val_loss: 0.2299\n", + "Epoch 39/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9370 - loss: 0.2145 - val_accuracy: 0.9347 - val_loss: 0.2263\n", + "Epoch 40/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9379 - loss: 0.2130 - val_accuracy: 0.9362 - val_loss: 0.2239\n", + "Epoch 41/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9386 - loss: 0.2097 - val_accuracy: 0.9375 - val_loss: 0.2209\n", + "Epoch 42/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9380 - loss: 0.2116 - val_accuracy: 0.9378 - val_loss: 0.2170\n", + "Epoch 43/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9406 - loss: 0.2028 - val_accuracy: 0.9388 - val_loss: 0.2144\n", + "Epoch 44/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9391 - loss: 0.2074 - val_accuracy: 0.9402 - val_loss: 0.2115\n", + "Epoch 45/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9421 - loss: 0.1970 - val_accuracy: 0.9400 - val_loss: 0.2085\n", + "Epoch 46/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9435 - loss: 0.1979 - val_accuracy: 0.9410 - val_loss: 0.2063\n", + "Epoch 47/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9450 - loss: 0.1922 - val_accuracy: 0.9415 - val_loss: 0.2036\n", + "Epoch 48/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9427 - loss: 0.1911 - val_accuracy: 0.9405 - val_loss: 0.2024\n", + "Epoch 49/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9467 - loss: 0.1825 - val_accuracy: 0.9418 - val_loss: 0.1990\n", + "Epoch 50/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9470 - loss: 0.1861 - val_accuracy: 0.9438 - val_loss: 0.1962\n", + "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 3ms/step - accuracy: 0.9385 - loss: 0.2108\n", + "Точность: 0.9417999982833862\n", + "\n", + "Обучение модели со вторым слоем 100 нейронов\n", + "Epoch 1/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 3ms/step - accuracy: 0.1980 - loss: 2.2876 - val_accuracy: 0.4552 - val_loss: 2.0895\n", + "Epoch 2/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.5365 - loss: 1.9630 - val_accuracy: 0.6475 - val_loss: 1.4925\n", + "Epoch 3/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.6977 - loss: 1.3304 - val_accuracy: 0.7748 - val_loss: 1.0001\n", + "Epoch 4/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.7854 - loss: 0.9139 - val_accuracy: 0.8165 - val_loss: 0.7597\n", + "Epoch 5/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8193 - loss: 0.7167 - val_accuracy: 0.8407 - val_loss: 0.6288\n", + "Epoch 6/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8450 - loss: 0.5949 - val_accuracy: 0.8585 - val_loss: 0.5491\n", + "Epoch 7/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8610 - loss: 0.5259 - val_accuracy: 0.8677 - val_loss: 0.4961\n", + "Epoch 8/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8754 - loss: 0.4709 - val_accuracy: 0.8793 - val_loss: 0.4570\n", + "Epoch 9/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.8834 - loss: 0.4375 - val_accuracy: 0.8878 - val_loss: 0.4271\n", + "Epoch 10/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8868 - loss: 0.4188 - val_accuracy: 0.8923 - val_loss: 0.4044\n", + "Epoch 11/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8942 - loss: 0.3833 - val_accuracy: 0.8953 - val_loss: 0.3853\n", + "Epoch 12/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.8955 - loss: 0.3731 - val_accuracy: 0.8993 - val_loss: 0.3711\n", + "Epoch 13/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9010 - loss: 0.3543 - val_accuracy: 0.9022 - val_loss: 0.3570\n", + "Epoch 14/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9045 - loss: 0.3409 - val_accuracy: 0.9043 - val_loss: 0.3464\n", + "Epoch 15/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9065 - loss: 0.3318 - val_accuracy: 0.9063 - val_loss: 0.3364\n", + "Epoch 16/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9074 - loss: 0.3262 - val_accuracy: 0.9093 - val_loss: 0.3285\n", + "Epoch 17/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9096 - loss: 0.3151 - val_accuracy: 0.9103 - val_loss: 0.3205\n", + "Epoch 18/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9126 - loss: 0.3063 - val_accuracy: 0.9125 - val_loss: 0.3138\n", + "Epoch 19/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9145 - loss: 0.2975 - val_accuracy: 0.9118 - val_loss: 0.3085\n", + "Epoch 20/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9173 - loss: 0.2899 - val_accuracy: 0.9138 - val_loss: 0.3025\n", + "Epoch 21/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9158 - loss: 0.2888 - val_accuracy: 0.9172 - val_loss: 0.2962\n", + "Epoch 22/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9170 - loss: 0.2860 - val_accuracy: 0.9178 - val_loss: 0.2914\n", + "Epoch 23/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9205 - loss: 0.2788 - val_accuracy: 0.9188 - val_loss: 0.2854\n", + "Epoch 24/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9182 - loss: 0.2785 - val_accuracy: 0.9195 - val_loss: 0.2813\n", + "Epoch 25/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9230 - loss: 0.2696 - val_accuracy: 0.9207 - val_loss: 0.2772\n", + "Epoch 26/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9247 - loss: 0.2647 - val_accuracy: 0.9208 - val_loss: 0.2726\n", + "Epoch 27/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9218 - loss: 0.2645 - val_accuracy: 0.9218 - val_loss: 0.2679\n", + "Epoch 28/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9235 - loss: 0.2625 - val_accuracy: 0.9238 - val_loss: 0.2643\n", + "Epoch 29/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9279 - loss: 0.2493 - val_accuracy: 0.9250 - val_loss: 0.2606\n", + "Epoch 30/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9279 - loss: 0.2476 - val_accuracy: 0.9248 - val_loss: 0.2560\n", + "Epoch 31/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9286 - loss: 0.2439 - val_accuracy: 0.9277 - val_loss: 0.2529\n", + "Epoch 32/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9285 - loss: 0.2440 - val_accuracy: 0.9263 - val_loss: 0.2487\n", + "Epoch 33/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9295 - loss: 0.2395 - val_accuracy: 0.9288 - val_loss: 0.2456\n", + "Epoch 34/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9328 - loss: 0.2292 - val_accuracy: 0.9300 - val_loss: 0.2422\n", + "Epoch 35/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9316 - loss: 0.2318 - val_accuracy: 0.9322 - val_loss: 0.2389\n", + "Epoch 36/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9345 - loss: 0.2233 - val_accuracy: 0.9325 - val_loss: 0.2347\n", + "Epoch 37/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9354 - loss: 0.2206 - val_accuracy: 0.9330 - val_loss: 0.2321\n", + "Epoch 38/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9374 - loss: 0.2146 - val_accuracy: 0.9335 - val_loss: 0.2294\n", + "Epoch 39/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9370 - loss: 0.2149 - val_accuracy: 0.9330 - val_loss: 0.2264\n", + "Epoch 40/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9374 - loss: 0.2136 - val_accuracy: 0.9372 - val_loss: 0.2238\n", + "Epoch 41/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9387 - loss: 0.2118 - val_accuracy: 0.9360 - val_loss: 0.2209\n", + "Epoch 42/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9384 - loss: 0.2104 - val_accuracy: 0.9370 - val_loss: 0.2177\n", + "Epoch 43/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9410 - loss: 0.2020 - val_accuracy: 0.9382 - val_loss: 0.2147\n", + "Epoch 44/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9431 - loss: 0.1985 - val_accuracy: 0.9387 - val_loss: 0.2121\n", + "Epoch 45/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 3ms/step - accuracy: 0.9440 - loss: 0.1946 - val_accuracy: 0.9398 - val_loss: 0.2096\n", + "Epoch 46/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9431 - loss: 0.1964 - val_accuracy: 0.9408 - val_loss: 0.2077\n", + "Epoch 47/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9458 - loss: 0.1880 - val_accuracy: 0.9402 - val_loss: 0.2057\n", + "Epoch 48/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m5s\u001b[0m 3ms/step - accuracy: 0.9442 - loss: 0.1929 - val_accuracy: 0.9403 - val_loss: 0.2023\n", + "Epoch 49/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9451 - loss: 0.1885 - val_accuracy: 0.9415 - val_loss: 0.2002\n", + "Epoch 50/50\n", + "\u001b[1m1688/1688\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m4s\u001b[0m 2ms/step - accuracy: 0.9456 - loss: 0.1835 - val_accuracy: 0.9432 - val_loss: 0.1982\n", + "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 2ms/step - accuracy: 0.9368 - loss: 0.2101\n", + "Точность: 0.942300021648407\n" + ] + } + ], + "source": [ + "for units_2 in second_layer_units:\n", + " print(f\"\\nОбучение модели со вторым слоем {units_2} нейронов\")\n", + "\n", + " model = Sequential()\n", + " model.add(Dense(units=best_units_1, input_dim=num_pixels, activation='sigmoid'))\n", + " model.add(Dense(units=units_2, activation='sigmoid'))\n", + " model.add(Dense(units=num_classes, activation='softmax'))\n", + "\n", + " model.compile(loss='categorical_crossentropy',\n", + " optimizer='sgd',\n", + " metrics=['accuracy'])\n", + "\n", + " history = model.fit(X_train, y_train,\n", + " validation_split=0.1,\n", + " epochs=50)\n", + "\n", + " scores = model.evaluate(X_test, y_test)\n", + "\n", + " models_2[units_2] = model\n", + " histories_2[units_2] = history\n", + " scores_2[units_2] = scores\n", + "\n", + " print(f\"Точность: {scores[1]}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 14, + "status": "ok", + "timestamp": 1759129484222, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "9lJtmn_oSVkB", + "outputId": "b49d6a95-574a-4ce5-e23f-eea49ba83603" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Наилучшее количество нейронов во втором слое: 100\n", + "Точность: 0.9423\n" + ] + } + ], + "source": [ + "# Выбор наилучшей двухслойной модели\n", + "best_units_2 = max(scores_2.items(), key=lambda x: x[1][1])[0]\n", + "print(f\"\\nНаилучшее количество нейронов во втором слое: {best_units_2}\")\n", + "print(f\"Точность: {scores_2[best_units_2][1]:.4f}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "p0aeriYzShJk" + }, + "outputs": [], + "source": [ + "# Сбор результатов\n", + "results = {\n", + " '0 слоев': {'нейроны_1': '-', 'нейроны_2': '-', 'точность': scores_0[1]},\n", + " '1 слой_100': {'нейроны_1': 100, 'нейроны_2': '-', 'точность': scores_1[100][1]},\n", + " '1 слой_300': {'нейроны_1': 300, 'нейроны_2': '-', 'точность': scores_1[300][1]},\n", + " '1 слой_500': {'нейроны_1': 500, 'нейроны_2': '-', 'точность': scores_1[500][1]},\n", + " '2 слоя_50': {'нейроны_1': best_units_1, 'нейроны_2': 50, 'точность': scores_2[50][1]},\n", + " '2 слоя_100': {'нейроны_1': best_units_1, 'нейроны_2': 100, 'точность': scores_2[100][1]}\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 33, + "status": "ok", + "timestamp": 1759130442386, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "SHr6z7jbSmOG", + "outputId": "2d40f526-7756-4554-f110-2242e34e58a0" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " ТАБЛИЦА РЕЗУЛЬТАТОВ\n", + "======================================================================\n", + " Кол-во скрытых слоев Нейроны_1_слоя Нейроны_2_слоя Точность\n", + "0 0 - - 0.9233\n", + "1 1 100 - 0.9422\n", + "2 1 300 - 0.9377\n", + "3 1 500 - 0.9312\n", + "4 2 100 50 0.9418\n", + "5 2 100 100 0.9423\n" + ] + } + ], + "source": [ + "# Создаем DataFrame из результатов\n", + "df_results = pd.DataFrame([\n", + " {'Кол-во скрытых слоев': 0, 'Нейроны_1_слоя': '-', 'Нейроны_2_слоя': '-', 'Точность': results['0 слоев']['точность']},\n", + " {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 100, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_100']['точность']},\n", + " {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 300, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_300']['точность']},\n", + " {'Кол-во скрытых слоев': 1, 'Нейроны_1_слоя': 500, 'Нейроны_2_слоя': '-', 'Точность': results['1 слой_500']['точность']},\n", + " {'Кол-во скрытых слоев': 2, 'Нейроны_1_слоя': best_units_1, 'Нейроны_2_слоя': 50, 'Точность': results['2 слоя_50']['точность']},\n", + " {'Кол-во скрытых слоев': 2, 'Нейроны_1_слоя': best_units_1, 'Нейроны_2_слоя': 100, 'Точность': results['2 слоя_100']['точность']}\n", + "])\n", + "\n", + "print(\" \" * 20 + \"ТАБЛИЦА РЕЗУЛЬТАТОВ\")\n", + "print(\"=\" * 70)\n", + "# print(df_results.to_string(index=False, formatters={\n", + "# 'Точность': '{:.4f}'.format\n", + "# }))\n", + "print(df_results.reset_index(drop=True))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "executionInfo": { + "elapsed": 41, + "status": "ok", + "timestamp": 1759130490602, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "PTC5CUJeWQ_V", + "outputId": "e8009546-5876-4427-9815-9aac53db8593" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Наилучшая архитектура: 2 слоя_100\n", + "Точность: 0.9423\n" + ] + } + ], + "source": [ + "# Выбор наилучшей модели\n", + "best_model_type = max(results.items(), key=lambda x: x[1]['точность'])[0]\n", + "best_accuracy = results[best_model_type]['точность']\n", + "print(f\"\\nНаилучшая архитектура: {best_model_type}\")\n", + "print(f\"Точность: {best_accuracy:.4f}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "JRPRpppHWV8-" + }, + "outputs": [], + "source": [ + "# Определение наилучшей модели\n", + "if '0' in best_model_type:\n", + " best_model = model_0\n", + "elif '1' in best_model_type:\n", + " best_neurons = int(best_model_type.split('_')[1])\n", + " best_model = models_1[best_neurons]\n", + "else:\n", + " best_neurons_2 = int(best_model_type.split('_')[1])\n", + " best_model = models_2[best_neurons_2]\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "wIlYoP_HSFph" + }, + "outputs": [], + "source": [ + "# Сохранение модели\n", + "best_model.save('best_mnist_model.keras')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 517 + }, + "executionInfo": { + "elapsed": 178, + "status": "ok", + "timestamp": 1759132236751, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "Kh6-u-8OoHny", + "outputId": "7c89ce31-3967-41bb-ff79-6e77e7f5d19b" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 29ms/step\n", + "NN output: [[5.8587279e-06 9.7018647e-01 6.0002012e-03 5.5828933e-03 7.1756593e-05\n", + " 7.2469590e-03 3.2864737e-03 3.9730189e-04 6.0582636e-03 1.1638567e-03]]\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGW9JREFUeJzt3X9MVff9x/HXBfVqK1yGCJdbkaK2ulRlqVNG2jIbicA2468l2vUPXYxOh83UtV1YVrXbEjaXdE0XZ/eXrlnVzmxqao2LxYLZhjZajTG2RAgbGH7YmnCvYkEDn+8ffnvXW0G9cK9vLj4fySeRe87hvnt65enhXi4e55wTAAD3WZL1AACABxMBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJkZYD/BVvb29amlpUUpKijwej/U4AIAoOed09epVBQIBJSX1f50z5ALU0tKinJwc6zEAAIPU3NysCRMm9Lt9yH0LLiUlxXoEAEAM3O3redwCtH37dj366KMaPXq0CgoK9OGHH97TcXzbDQCGh7t9PY9LgN555x1t2rRJW7Zs0UcffaT8/HyVlJTo8uXL8bg7AEAicnEwZ84cV15eHv64p6fHBQIBV1lZeddjg8Ggk8RisVisBF/BYPCOX+9jfgV048YNnT59WsXFxeHbkpKSVFxcrNra2tv27+7uVigUilgAgOEv5gH67LPP1NPTo6ysrIjbs7Ky1NbWdtv+lZWV8vl84cUr4ADgwWD+KriKigoFg8Hwam5uth4JAHAfxPzngDIyMpScnKz29vaI29vb2+X3+2/b3+v1yuv1xnoMAMAQF/MroFGjRmnWrFmqqqoK39bb26uqqioVFhbG+u4AAAkqLu+EsGnTJq1YsULf/OY3NWfOHL3++uvq7OzUD3/4w3jcHQAgAcUlQMuWLdOnn36qzZs3q62tTd/4xjd05MiR216YAAB4cHmcc856iC8LhULy+XzWYwAABikYDCo1NbXf7eavggMAPJgIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACAiRHWAwAPoq1bt0Z9zNq1a6M+xu/3R30McL9wBQQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmODNSAEDP/rRj6I+5r333ovDJIAdroAAACYIEADARMwDtHXrVnk8nog1bdq0WN8NACDBxeU5oCeeeELvv//+/+5kBE81AQAixaUMI0aM4DcxAgDuKC7PAV28eFGBQECTJk3S888/r6ampn737e7uVigUilgAgOEv5gEqKCjQrl27dOTIEe3YsUONjY165plndPXq1T73r6yslM/nC6+cnJxYjwQAGII8zjkXzzvo6OhQbm6uXnvtNa1ateq27d3d3eru7g5/HAqFiBCGvdbW1qiPOXz4cNTH9PV3DrhfgsGgUlNT+90e91cHpKWl6fHHH1d9fX2f271er7xeb7zHAAAMMXH/OaBr166poaFB2dnZ8b4rAEACiXmAXnzxRdXU1Og///mP/v3vf2vx4sVKTk7Wc889F+u7AgAksJh/C+7SpUt67rnndOXKFY0fP15PP/20Tpw4ofHjx8f6rgAACSzmAdq7d2+sPyUASR9//LH1CEBM8V5wAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAICJuP9COmC4W7BgQdTHpKenx2ESILFwBQQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATvBs2MEhpaWlRHzNiRPR/9Xbs2BH1McBQxhUQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCNyMFBsnj8UR9TFJS9P/26+zsjPoYYCjjCggAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMMGbkQKD5JyL+pje3t44TAIkFq6AAAAmCBAAwETUATp+/LgWLFigQCAgj8ejAwcORGx3zmnz5s3Kzs7WmDFjVFxcrIsXL8ZqXgDAMBF1gDo7O5Wfn6/t27f3uX3btm1644039Oabb+rkyZN6+OGHVVJSoq6urkEPCwAYPqJ+EUJZWZnKysr63Oac0+uvv65f/OIXWrhwoSTprbfeUlZWlg4cOKDly5cPbloAwLAR0+eAGhsb1dbWpuLi4vBtPp9PBQUFqq2t7fOY7u5uhUKhiAUAGP5iGqC2tjZJUlZWVsTtWVlZ4W1fVVlZKZ/PF145OTmxHAkAMESZvwquoqJCwWAwvJqbm61HAgDcBzENkN/vlyS1t7dH3N7e3h7e9lVer1epqakRCwAw/MU0QHl5efL7/aqqqgrfFgqFdPLkSRUWFsbyrgAACS7qV8Fdu3ZN9fX14Y8bGxt19uxZpaena+LEidqwYYN+/etf67HHHlNeXp5eeeUVBQIBLVq0KJZzAwASXNQBOnXqlJ599tnwx5s2bZIkrVixQrt27dLLL7+szs5OrVmzRh0dHXr66ad15MgRjR49OnZTAwASnscN5J0U4ygUCsnn81mPAdyzgwcPRn3M9773vaiPSU5OjvoYwFIwGLzj8/rmr4IDADyYCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYCLqX8cAIFJubm7Ux1y4cCEOkwCJhSsgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEb0YKGDh8+LD1CIA5roAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABO8GSkwSB6PJ+pjxo4dG4dJgMTCFRAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYII3IwUGyTkX9TFr166N+pjDhw9Hfcx7770X9THA/cIVEADABAECAJiIOkDHjx/XggULFAgE5PF4dODAgYjtK1eulMfjiVilpaWxmhcAMExEHaDOzk7l5+dr+/bt/e5TWlqq1tbW8NqzZ8+ghgQADD9RvwihrKxMZWVld9zH6/XK7/cPeCgAwPAXl+eAqqurlZmZqalTp2rdunW6cuVKv/t2d3crFApFLADA8BfzAJWWluqtt95SVVWVfvvb36qmpkZlZWXq6enpc//Kykr5fL7wysnJifVIAIAhKOY/B7R8+fLwn2fMmKGZM2dq8uTJqq6u1rx5827bv6KiQps2bQp/HAqFiBAAPADi/jLsSZMmKSMjQ/X19X1u93q9Sk1NjVgAgOEv7gG6dOmSrly5ouzs7HjfFQAggUT9Lbhr165FXM00Njbq7NmzSk9PV3p6ul599VUtXbpUfr9fDQ0NevnllzVlyhSVlJTEdHAAQGKLOkCnTp3Ss88+G/74i+dvVqxYoR07dujcuXP685//rI6ODgUCAc2fP1+/+tWv5PV6Yzc1ACDhRR2guXPn3vHNF//xj38MaiAAfUtLS4v6mEAgMKD7amlpGdBxQDR4LzgAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYiPmv5AYQH08++WTUxxw+fDgOkwCxwRUQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGDC45xz1kN8WSgUks/nsx4DuGdnz56N+pgZM2ZEfczly5ejPiY7OzvqY4BYCQaDSk1N7Xc7V0AAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgIkR1gMAic7j8UR9TFJS9P/2441FMdxwBQQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmODNSIFBcs5FfUxvb28cJgESC1dAAAATBAgAYCKqAFVWVmr27NlKSUlRZmamFi1apLq6uoh9urq6VF5ernHjxmns2LFaunSp2tvbYzo0ACDxRRWgmpoalZeX68SJEzp69Khu3ryp+fPnq7OzM7zPxo0b9e6772rfvn2qqalRS0uLlixZEvPBAQCJzeMG8gzq//v000+VmZmpmpoaFRUVKRgMavz48dq9e7e+//3vS5I++eQTff3rX1dtba2+9a1v3fVzhkIh+Xy+gY4E3Hdnz56N+pgZM2ZEfUxycnLUxwCWgsGgUlNT+90+qOeAgsGgJCk9PV2SdPr0ad28eVPFxcXhfaZNm6aJEyeqtra2z8/R3d2tUCgUsQAAw9+AA9Tb26sNGzboqaee0vTp0yVJbW1tGjVqlNLS0iL2zcrKUltbW5+fp7KyUj6fL7xycnIGOhIAIIEMOEDl5eU6f/689u7dO6gBKioqFAwGw6u5uXlQnw8AkBgG9IOo69ev16FDh3T8+HFNmDAhfLvf79eNGzfU0dERcRXU3t4uv9/f5+fyer3yer0DGQMAkMCiugJyzmn9+vXav3+/jh07pry8vIjts2bN0siRI1VVVRW+ra6uTk1NTSosLIzNxACAYSGqK6Dy8nLt3r1bBw8eVEpKSvh5HZ/PpzFjxsjn82nVqlXatGmT0tPTlZqaqhdeeEGFhYX39Ao4AMCDI6oA7dixQ5I0d+7ciNt37typlStXSpJ+//vfKykpSUuXLlV3d7dKSkr0xz/+MSbDAgCGj0H9HFA88HNASDQHDhyI+pgFCxZEfQw/B4REE9efAwIAYKAIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgYkC/ERXA//ztb3+L+pjJkyfHYRIgsXAFBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCY4M1IgUG6cOFC1McM5A1MgeGGKyAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwITHOeesh/iyUCgkn89nPQYAYJCCwaBSU1P73c4VEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADARVYAqKys1e/ZspaSkKDMzU4sWLVJdXV3EPnPnzpXH44lYa9eujenQAIDEF1WAampqVF5erhMnTujo0aO6efOm5s+fr87Ozoj9Vq9erdbW1vDatm1bTIcGACS+EdHsfOTIkYiPd+3apczMTJ0+fVpFRUXh2x966CH5/f7YTAgAGJYG9RxQMBiUJKWnp0fc/vbbbysjI0PTp09XRUWFrl+/3u/n6O7uVigUilgAgAeAG6Cenh733e9+1z311FMRt//pT39yR44ccefOnXN/+ctf3COPPOIWL17c7+fZsmWLk8RisVisYbaCweAdOzLgAK1du9bl5ua65ubmO+5XVVXlJLn6+vo+t3d1dblgMBhezc3N5ieNxWKxWINfdwtQVM8BfWH9+vU6dOiQjh8/rgkTJtxx34KCAklSfX29Jk+efNt2r9crr9c7kDEAAAksqgA55/TCCy9o//79qq6uVl5e3l2POXv2rCQpOzt7QAMCAIanqAJUXl6u3bt36+DBg0pJSVFbW5skyefzacyYMWpoaNDu3bv1ne98R+PGjdO5c+e0ceNGFRUVaebMmXH5DwAAJKhonvdRP9/n27lzp3POuaamJldUVOTS09Od1+t1U6ZMcS+99NJdvw/4ZcFg0Pz7liwWi8Ua/Lrb137P/4dlyAiFQvL5fNZjAAAGKRgMKjU1td/tvBccAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMDEkAuQc856BABADNzt6/mQC9DVq1etRwAAxMDdvp573BC75Ojt7VVLS4tSUlLk8XgitoVCIeXk5Ki5uVmpqalGE9rjPNzCebiF83AL5+GWoXAenHO6evWqAoGAkpL6v84ZcR9nuidJSUmaMGHCHfdJTU19oB9gX+A83MJ5uIXzcAvn4Rbr8+Dz+e66z5D7FhwA4MFAgAAAJhIqQF6vV1u2bJHX67UexRTn4RbOwy2ch1s4D7ck0nkYci9CAAA8GBLqCggAMHwQIACACQIEADBBgAAAJhImQNu3b9ejjz6q0aNHq6CgQB9++KH1SPfd1q1b5fF4Ita0adOsx4q748ePa8GCBQoEAvJ4PDpw4EDEduecNm/erOzsbI0ZM0bFxcW6ePGizbBxdLfzsHLlytseH6WlpTbDxkllZaVmz56tlJQUZWZmatGiRaqrq4vYp6urS+Xl5Ro3bpzGjh2rpUuXqr293Wji+LiX8zB37tzbHg9r1641mrhvCRGgd955R5s2bdKWLVv00UcfKT8/XyUlJbp8+bL1aPfdE088odbW1vD65z//aT1S3HV2dio/P1/bt2/vc/u2bdv0xhtv6M0339TJkyf18MMPq6SkRF1dXfd50vi623mQpNLS0ojHx549e+7jhPFXU1Oj8vJynThxQkePHtXNmzc1f/58dXZ2hvfZuHGj3n33Xe3bt081NTVqaWnRkiVLDKeOvXs5D5K0evXqiMfDtm3bjCbuh0sAc+bMceXl5eGPe3p6XCAQcJWVlYZT3X9btmxx+fn51mOYkuT2798f/ri3t9f5/X73u9/9LnxbR0eH83q9bs+ePQYT3h9fPQ/OObdixQq3cOFCk3msXL582UlyNTU1zrlb/+9Hjhzp9u3bF97n448/dpJcbW2t1Zhx99Xz4Jxz3/72t91PfvITu6HuwZC/Arpx44ZOnz6t4uLi8G1JSUkqLi5WbW2t4WQ2Ll68qEAgoEmTJun5559XU1OT9UimGhsb1dbWFvH48Pl8KigoeCAfH9XV1crMzNTUqVO1bt06XblyxXqkuAoGg5Kk9PR0SdLp06d18+bNiMfDtGnTNHHixGH9ePjqefjC22+/rYyMDE2fPl0VFRW6fv26xXj9GnJvRvpVn332mXp6epSVlRVxe1ZWlj755BOjqWwUFBRo165dmjp1qlpbW/Xqq6/qmWee0fnz55WSkmI9nom2tjZJ6vPx8cW2B0VpaamWLFmivLw8NTQ06Oc//7nKyspUW1ur5ORk6/Firre3Vxs2bNBTTz2l6dOnS7r1eBg1apTS0tIi9h3Oj4e+zoMk/eAHP1Bubq4CgYDOnTunn/3sZ6qrq9Pf//53w2kjDfkA4X/KysrCf545c6YKCgqUm5urv/71r1q1apXhZBgKli9fHv7zjBkzNHPmTE2ePFnV1dWaN2+e4WTxUV5ervPnzz8Qz4PeSX/nYc2aNeE/z5gxQ9nZ2Zo3b54aGho0efLk+z1mn4b8t+AyMjKUnJx826tY2tvb5ff7jaYaGtLS0vT444+rvr7eehQzXzwGeHzcbtKkScrIyBiWj4/169fr0KFD+uCDDyJ+fYvf79eNGzfU0dERsf9wfTz0dx76UlBQIElD6vEw5AM0atQozZo1S1VVVeHbent7VVVVpcLCQsPJ7F27dk0NDQ3Kzs62HsVMXl6e/H5/xOMjFArp5MmTD/zj49KlS7py5cqwenw457R+/Xrt379fx44dU15eXsT2WbNmaeTIkRGPh7q6OjU1NQ2rx8PdzkNfzp49K0lD6/Fg/SqIe7F3717n9Xrdrl273IULF9yaNWtcWlqaa2trsx7tvvrpT3/qqqurXWNjo/vXv/7liouLXUZGhrt8+bL1aHF19epVd+bMGXfmzBknyb322mvuzJkz7r///a9zzrnf/OY3Li0tzR08eNCdO3fOLVy40OXl5bnPP//cePLYutN5uHr1qnvxxRddbW2ta2xsdO+//7578skn3WOPPea6urqsR4+ZdevWOZ/P56qrq11ra2t4Xb9+PbzP2rVr3cSJE92xY8fcqVOnXGFhoSssLDScOvbudh7q6+vdL3/5S3fq1CnX2NjoDh486CZNmuSKioqMJ4+UEAFyzrk//OEPbuLEiW7UqFFuzpw57sSJE9Yj3XfLli1z2dnZbtSoUe6RRx5xy5Ytc/X19dZjxd0HH3zgJN22VqxY4Zy79VLsV155xWVlZTmv1+vmzZvn6urqbIeOgzudh+vXr7v58+e78ePHu5EjR7rc3Fy3evXqYfePtL7++yW5nTt3hvf5/PPP3Y9//GP3ta99zT300ENu8eLFrrW11W7oOLjbeWhqanJFRUUuPT3deb1eN2XKFPfSSy+5YDBoO/hX8OsYAAAmhvxzQACA4YkAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMPF/Jb8cekMVZVgAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Real mark: 1\n", + "NN answer: 1\n" + ] + } + ], + "source": [ + "# вывод тестового изображения и результата распознавания (1)\n", + "n = 123\n", + "result = best_model.predict(X_test[n:n+1])\n", + "print('NN output:', result)\n", + "plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))\n", + "plt.show()\n", + "print('Real mark: ', str(np.argmax(y_test[n])))\n", + "print('NN answer: ', str(np.argmax(result)))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 517 + }, + "executionInfo": { + "elapsed": 284, + "status": "ok", + "timestamp": 1759132262259, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "WVGJRtVZc8V-", + "outputId": "5d4ed790-d7ce-4569-d667-49733f75e3cb" + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 45ms/step\n", + "NN output: [[5.6045882e-02 2.3120556e-06 3.2519495e-01 6.1816531e-01 2.2406326e-08\n", + " 2.7827255e-04 7.9103382e-05 1.1205349e-06 2.1714537e-04 1.5997215e-05]]\n" + ] + }, + { + "data": { + "image/png": "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AgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkmI+0lw4cP91yzePFizzUffvih55rKykrPNZJ05MiRuOr6sv/85z+ea9avX++5ZtKkSZ5rGhsbPdesXr3ac40k7dq1K646rxoaGjzXxDMZ6bBhwzzXSFJ6errnGiYw/fq4AgIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGDC55xz1k2cLBKJKBAIWLdxRiNGjPBcM3XqVM81f/rTnzzX5OTkeK4JhUKeayTp/vvv91zzwgsvxLWvgSYlJcVzzRdffOG5pru723NNvK688krPNe+++67nmiFDvM+h/Mknn3iukaT8/HzPNfH+exqIwuGw0tLSTrueKyAAgAkCCABgwnMAbdu2TfPmzVNubq58Pp82bdoUs/6WW26Rz+eLGaWlpYnqFwAwQHgOoPb2duXn52vNmjWn3aa0tFQHDx6Mjg0bNpxTkwCAgcfz3byysjKVlZWdcRu/369gMBh3UwCAgS8p94CqqqqUlZWlSZMmacmSJTp8+PBpt+3s7FQkEokZAICBL+EBVFpaqueff16VlZX61a9+perqapWVlen48eM9bl9RUaFAIBAdY8aMSXRLAIA+yPsD9WexcOHC6J+nTp2qadOmacKECaqqqtKcOXNO2X7FihVavnx59HUkEiGEAOA8kPTHsMePH6/MzEw1NDT0uN7v9ystLS1mAAAGvqQH0P79+3X48OG4vqEPABi4PH8Ed+TIkZirmaamJu3atUsZGRnKyMjQI488ogULFigYDKqxsVH33XefJk6cqJKSkoQ2DgDo3zwH0I4dO3TttddGX395/2bRokV66qmntHv3bv3hD39Qa2urcnNzNXfuXP3iF7+Q3+9PXNcAgH7PcwDNnj1bZ5q/9K9//es5NdQffPOb3/RcU11d7bnG5/N5rolHvN/Zevzxxz3XxDOh5ssvv+y5pjcn4YxHV1eXdQtn1NMDQ2fz+9//3nNNPBOLxuO9996Lq46JRZOLueAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACZ6ZyraAWbUqFGea44ePeq5ZsSIEZ5retOFF17ouebFF1/0XLN7927PNf/4xz88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1dWpuLg4umzQoEEqLi5WTU2NYWc29u7dq9zcXI0fP14333yz9u3bZ92SqaamJoVCoZjzIxAIqKCg4Lw8P6qqqpSVlaVJkyZpyZIlOnz4sHVLSRUOhyVJGRkZkqS6ujodO3Ys5nyYPHmyxo4dO6DPh68ehy+9+OKLyszM1JQpU7RixQodPXrUor3T6nOTkX7Vp59+quPHjys7OztmeXZ2tv71r38ZdWWjoKBA69at06RJk3Tw4EE98sgjuuaaa7Rnzx6lpqZat2ciFApJUo/nx5frzhelpaW64YYblJeXp8bGRj344IMqKytTTU2NBg8ebN1ewnV3d2vZsmWaNWuWpkyZIunE+ZCSkqL09PSYbQfy+dDTcZCkH/zgBxo3bpxyc3O1e/du3X///aqvr9ef//xnw25j9fkAwv+UlZVF/zxt2jQVFBRo3LhxeuWVV3Trrbcadoa+YOHChdE/T506VdOmTdOECRNUVVWlOXPmGHaWHOXl5dqzZ895cR/0TE53HO64447on6dOnaqcnBzNmTNHjY2NmjBhQm+32aM+/xFcZmamBg8efMpTLC0tLQoGg0Zd9Q3p6em67LLL1NDQYN2KmS/PAc6PU40fP16ZmZkD8vxYunSptmzZorfeeivm17cEg0F1dXWptbU1ZvuBej6c7jj0pKCgQJL61PnQ5wMoJSVF06dPV2VlZXRZd3e3KisrVVhYaNiZvSNHjqixsVE5OTnWrZjJy8tTMBiMOT8ikYi2b99+3p8f+/fv1+HDhwfU+eGc09KlS7Vx40a9+eabysvLi1k/ffp0DR06NOZ8qK+v1759+wbU+XC249CTXbt2SVLfOh+sn4L4Ol566SXn9/vdunXr3AcffODuuOMOl56e7kKhkHVrveqnP/2pq6qqck1NTe6dd95xxcXFLjMz0x06dMi6taRqa2tzO3fudDt37nSS3GOPPeZ27tzpPv74Y+ecc7/85S9denq627x5s9u9e7e77rrrXF5envv888+NO0+sMx2HtrY2d88997iamhrX1NTk3njjDfetb33LXXrppa6jo8O69YRZsmSJCwQCrqqqyh08eDA6jh49Gt1m8eLFbuzYse7NN990O3bscIWFha6wsNCw68Q723FoaGhwP//5z92OHTtcU1OT27x5sxs/frwrKioy7jxWvwgg55x78skn3dixY11KSoqbOXOmq62ttW6p1914440uJyfHpaSkuIsvvtjdeOONrqGhwbqtpHvrrbecpFPGokWLnHMnHsV+6KGHXHZ2tvP7/W7OnDmuvr7etukkONNxOHr0qJs7d6676KKL3NChQ924cePc7bffPuD+J62nv78kt3bt2ug2n3/+ufvxj3/sLrzwQnfBBRe466+/3h08eNCu6SQ423HYt2+fKyoqchkZGc7v97uJEye6e++914XDYdvGv4JfxwAAMNHn7wEBAAYmAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJv4PRZUo/Q3ITS8AAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Real mark: 3\n", + "NN answer: 3\n" + ] + } + ], + "source": [ + "# вывод тестового изображения и результата распознавания (3)\n", + "n = 353\n", + "result = best_model.predict(X_test[n:n+1])\n", + "print('NN output:', result)\n", + "plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))\n", + "plt.show()\n", + "print('Real mark: ', str(np.argmax(y_test[n])))\n", + "print('NN answer: ', str(np.argmax(result)))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "z5-YYw4uosUB" + }, + "outputs": [], + "source": [ + "# загрузка собственного изображения (Цифры 2 и 7)\n", + "from PIL import Image\n", + "file_data_2 = Image.open('2.png')\n", + "file_data_7 = Image.open('7.png')\n", + "file_data_2 = file_data_2.convert('L') # перевод в градации серого\n", + "file_data_7 = file_data_7.convert('L') # перевод в градации серого\n", + "test_img_2 = np.array(file_data_2)\n", + "test_img_7 = np.array(file_data_7)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 465 + }, + "executionInfo": { + "elapsed": 156, + "status": "ok", + "timestamp": 1759130765327, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "dv17bJVVuslg", + "outputId": "d9b5b55c-75d9-4180-f93c-22befad0633c" + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGmJJREFUeJzt3X9MVff9x/HX9QdX2nIvQ4TLnahoW12qsswpI21dO4nAkkarWbTtH7o0NThsZlnXlqUtdVtyO5esTReH/yyyJlXbJlVTs5i0WDDdwEZbY8w2IgQnjYCrifcqChr5fP8wvV9vBe3Fe3lfLs9HchK55xzuu2c3PHfg8sHjnHMCAGCUTbAeAAAwPhEgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgYpL1AN80ODioM2fOKCsrSx6Px3ocAECcnHO6cOGCgsGgJkwY/j4n5QJ05swZFRYWWo8BALhDXV1dmj59+rD7U+5bcFlZWdYjAAAS4HZfz5MWoG3btmnWrFmaMmWKSkpK9Nlnn32r8/i2GwCkh9t9PU9KgN59913V1NSorq5On3/+uYqLi1VeXq6zZ88m4+kAAGORS4IlS5a46urq6MfXrl1zwWDQhUKh254bDoedJDY2Nja2Mb6Fw+Fbfr1P+B3QlStXdPToUZWVlUUfmzBhgsrKytTS0nLT8QMDA4pEIjEbACD9JTxAX331la5du6b8/PyYx/Pz89XT03PT8aFQSH6/P7rxDjgAGB/M3wVXW1urcDgc3bq6uqxHAgCMgoT/HlBubq4mTpyo3t7emMd7e3sVCARuOt7r9crr9SZ6DABAikv4HVBGRoYWLVqkxsbG6GODg4NqbGxUaWlpop8OADBGJWUlhJqaGq1bt04//OEPtWTJEr355pvq6+vTz3/+82Q8HQBgDEpKgNasWaP//e9/evXVV9XT06Pvf//7OnDgwE1vTAAAjF8e55yzHuJGkUhEfr/fegwAwB0Kh8Py+XzD7jd/FxwAYHwiQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJiZZD4Cxq6KiIu5z6uvr4z5n1qxZcZ+DO3Pq1Km4z9myZUvc5zQ0NMR9DtIHd0AAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkWI8WIFhWVpF27dsV9TnZ29oieC6NrJAvAjmSh2ZFgAdP0wR0QAMAEAQIAmEh4gF577TV5PJ6Ybd68eYl+GgDAGJeUnwE98MAD+vjjj///SSbxoyYAQKyklGHSpEkKBALJ+NQAgDSRlJ8BnTx5UsFgULNnz9ZTTz2l06dPD3vswMCAIpFIzAYASH8JD1BJSYkaGhp04MAB1dfXq7OzUw8//LAuXLgw5PGhUEh+vz+6FRYWJnokAEAKSniAKisr9bOf/UwLFy5UeXm5/v73v+v8+fN67733hjy+trZW4XA4unV1dSV6JABACkr6uwOys7N1//33q729fcj9Xq9XXq832WMAAFJM0n8P6OLFi+ro6FBBQUGynwoAMIYkPEDPP/+8mpubderUKf3zn//U448/rokTJ+qJJ55I9FMBAMawhH8L7ssvv9QTTzyhc+fOadq0aXrooYfU2tqqadOmJfqpAABjmMc556yHuFEkEpHf77ceY1zp7u4e0Xn8rhfuVH9/f9znZGZmJmESJEM4HJbP5xt2P2vBAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmkv4H6TC6Kioq4j4n1RcV3b59e9znbNy4MQmTjD0vvfTSiM4LhUIJnmRoU6ZMGZXnQWriDggAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmPM45Zz3EjSKRiPx+v/UYY1Z3d3fc56T6atgej8d6hHHn8uXLcZ8zWitb19bWxn3O66+/noRJcDvhcFg+n2/Y/dwBAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmWIw0zaTyIpKStH379rjP2bhxYxImwa288cYbcZ+zefPmxA8yhP7+/rjPyczMTMIkuB0WIwUApCQCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwASLkaaZl156Ke5zQqHQiJ6LhUXT10gWqB3JQrijxePxWI8wLrEYKQAgJREgAICJuAN06NAhPfbYYwoGg/J4PNq7d2/MfuecXn31VRUUFCgzM1NlZWU6efJkouYFAKSJuAPU19en4uJibdu2bcj9W7du1VtvvaXt27fr8OHDuvvuu1VeXj6iPyIFAEhfk+I9obKyUpWVlUPuc87pzTff1Msvv6wVK1ZIkt5++23l5+dr7969Wrt27Z1NCwBIGwn9GVBnZ6d6enpUVlYWfczv96ukpEQtLS1DnjMwMKBIJBKzAQDSX0ID1NPTI0nKz8+PeTw/Pz+675tCoZD8fn90KywsTORIAIAUZf4uuNraWoXD4ejW1dVlPRIAYBQkNECBQECS1NvbG/N4b29vdN83eb1e+Xy+mA0AkP4SGqCioiIFAgE1NjZGH4tEIjp8+LBKS0sT+VQAgDEu7nfBXbx4Ue3t7dGPOzs7dezYMeXk5GjGjBnavHmzfv/73+u+++5TUVGRXnnlFQWDQa1cuTKRcwMAxri4A3TkyBE9+uij0Y9ramokSevWrVNDQ4NeeOEF9fX1acOGDTp//rweeughHThwYERrSwEA0heLkQK4SVVVVdzn1NfXJ2GSxGAxUhssRgoASEkECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwEfefYwCQ/urq6qxHGNbu3butR0CCcAcEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJjwOOec9RA3ikQi8vv91mMA41qKfVmIkZmZGfc5/f39SZgEtxMOh+Xz+Ybdzx0QAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGBikvUAAJKnqqrKeoSEY2HR9MEdEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABggsVIgTRWV1dnPcIt7d6923oEGOIOCABgggABAEzEHaBDhw7pscceUzAYlMfj0d69e2P2r1+/Xh6PJ2arqKhI1LwAgDQRd4D6+vpUXFysbdu2DXtMRUWFuru7o9uuXbvuaEgAQPqJ+00IlZWVqqysvOUxXq9XgUBgxEMBANJfUn4G1NTUpLy8PM2dO1cbN27UuXPnhj12YGBAkUgkZgMApL+EB6iiokJvv/22Ghsb9Yc//EHNzc2qrKzUtWvXhjw+FArJ7/dHt8LCwkSPBABIQQn/PaC1a9dG/71gwQItXLhQc+bMUVNTk5YtW3bT8bW1taqpqYl+HIlEiBAAjANJfxv27NmzlZubq/b29iH3e71e+Xy+mA0AkP6SHqAvv/xS586dU0FBQbKfCgAwhsT9LbiLFy/G3M10dnbq2LFjysnJUU5OjrZs2aLVq1crEAioo6NDL7zwgu69916Vl5cndHAAwNgWd4COHDmiRx99NPrx1z+/Wbdunerr63X8+HH97W9/0/nz5xUMBrV8+XL97ne/k9frTdzUAIAxz+Occ9ZD3CgSicjv91uPAaScqqqquM+pr69PwiSJk5mZGfc5/f39SZgEyRAOh2/5c33WggMAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAICJhP9JbgC3V1FREfc5oVAoCZMkzu7du+M+h5WtxzfugAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEx7nnLMe4kaRSER+v996DOBbG8nCort27Yr7nOzs7LjPGU2ZmZlxn8NipOktHA7L5/MNu587IACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADAxCTrAYBUwsKi123fvj3uc1hYFPHiDggAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMMFipEhLI1lUVEq/hUVHsqioJG3cuDHBkwA34w4IAGCCAAEATMQVoFAopMWLFysrK0t5eXlauXKl2traYo7p7+9XdXW1pk6dqnvuuUerV69Wb29vQocGAIx9cQWoublZ1dXVam1t1UcffaSrV69q+fLl6uvrix7z3HPP6cMPP9T777+v5uZmnTlzRqtWrUr44ACAsS2uNyEcOHAg5uOGhgbl5eXp6NGjWrp0qcLhsP76179q586d+slPfiJJ2rFjh773ve+ptbVVP/rRjxI3OQBgTLujnwGFw2FJUk5OjiTp6NGjunr1qsrKyqLHzJs3TzNmzFBLS8uQn2NgYECRSCRmAwCkvxEHaHBwUJs3b9aDDz6o+fPnS5J6enqUkZFx09tS8/Pz1dPTM+TnCYVC8vv90a2wsHCkIwEAxpARB6i6ulonTpzQ7t2772iA2tpahcPh6NbV1XVHnw8AMDaM6BdRN23apP379+vQoUOaPn169PFAIKArV67o/PnzMXdBvb29CgQCQ34ur9crr9c7kjEAAGNYXHdAzjlt2rRJe/bs0cGDB1VUVBSzf9GiRZo8ebIaGxujj7W1ten06dMqLS1NzMQAgLQQ1x1QdXW1du7cqX379ikrKyv6cx2/36/MzEz5/X49/fTTqqmpUU5Ojnw+n5599lmVlpbyDjgAQIy4AlRfXy9JeuSRR2Ie37Fjh9avXy9JeuONNzRhwgStXr1aAwMDKi8v11/+8peEDAsASB8e55yzHuJGkUhEfr/fegykkJEsLDqSRUWl9FtYlEVFYSkcDsvn8w27n7XgAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYGJEfxEVGKnRWtk6lVe1lljZGpC4AwIAGCFAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATHicc856iBtFIhH5/X7rMZAk3d3dcZ8TCASSMAmQHKdOnYr7nC1btsR9TkNDQ9znjLZwOCyfzzfsfu6AAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATLEaKUXX58uW4z5kyZUoSJgFSR39/f9znZGZmJmGSxGIxUgBASiJAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATEyyHgDjy5YtW+I+JxQKJWESIHU0NDRYj2CCOyAAgAkCBAAwEVeAQqGQFi9erKysLOXl5WnlypVqa2uLOeaRRx6Rx+OJ2aqqqhI6NABg7IsrQM3NzaqurlZra6s++ugjXb16VcuXL1dfX1/Mcc8884y6u7uj29atWxM6NABg7IvrTQgHDhyI+bihoUF5eXk6evSoli5dGn38rrvuUiAQSMyEAIC0dEc/AwqHw5KknJycmMffeecd5ebmav78+aqtrdWlS5eG/RwDAwOKRCIxGwAg/Y34bdiDg4PavHmzHnzwQc2fPz/6+JNPPqmZM2cqGAzq+PHjevHFF9XW1qYPPvhgyM8TCoVG9NZcAMDYNuIAVVdX68SJE/r0009jHt+wYUP03wsWLFBBQYGWLVumjo4OzZkz56bPU1tbq5qamujHkUhEhYWFIx0LADBGjChAmzZt0v79+3Xo0CFNnz79lseWlJRIktrb24cMkNfrldfrHckYAIAxLK4AOef07LPPas+ePWpqalJRUdFtzzl27JgkqaCgYEQDAgDSU1wBqq6u1s6dO7Vv3z5lZWWpp6dHkuT3+5WZmamOjg7t3LlTP/3pTzV16lQdP35czz33nJYuXaqFCxcm5T8AADA2xRWg+vp6Sdd/2fRGO3bs0Pr165WRkaGPP/5Yb775pvr6+lRYWKjVq1fr5ZdfTtjAAID0EPe34G6lsLBQzc3NdzQQAGB88LjbVWWURSIR+f1+6zEAAHcoHA7L5/MNu5/FSAEAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADCRcgFyzlmPAABIgNt9PU+5AF24cMF6BABAAtzu67nHpdgtx+DgoM6cOaOsrCx5PJ6YfZFIRIWFherq6pLP5zOa0B7X4Tquw3Vch+u4DtelwnVwzunChQsKBoOaMGH4+5xJozjTtzJhwgRNnz79lsf4fL5x/QL7GtfhOq7DdVyH67gO11lfB7/ff9tjUu5bcACA8YEAAQBMjKkAeb1e1dXVyev1Wo9iiutwHdfhOq7DdVyH68bSdUi5NyEAAMaHMXUHBABIHwQIAGCCAAEATBAgAICJMROgbdu2adasWZoyZYpKSkr02WefWY806l577TV5PJ6Ybd68edZjJd2hQ4f02GOPKRgMyuPxaO/evTH7nXN69dVXVVBQoMzMTJWVlenkyZM2wybR7a7D+vXrb3p9VFRU2AybJKFQSIsXL1ZWVpby8vK0cuVKtbW1xRzT39+v6upqTZ06Vffcc49Wr16t3t5eo4mT49tch0ceeeSm10NVVZXRxEMbEwF69913VVNTo7q6On3++ecqLi5WeXm5zp49az3aqHvggQfU3d0d3T799FPrkZKur69PxcXF2rZt25D7t27dqrfeekvbt2/X4cOHdffdd6u8vFz9/f2jPGly3e46SFJFRUXM62PXrl2jOGHyNTc3q7q6Wq2trfroo4909epVLV++XH19fdFjnnvuOX344Yd6//331dzcrDNnzmjVqlWGUyfet7kOkvTMM8/EvB62bt1qNPEw3BiwZMkSV11dHf342rVrLhgMulAoZDjV6Kurq3PFxcXWY5iS5Pbs2RP9eHBw0AUCAffHP/4x+tj58+ed1+t1u3btMphwdHzzOjjn3Lp169yKFStM5rFy9uxZJ8k1Nzc7567/bz958mT3/vvvR4/597//7SS5lpYWqzGT7pvXwTnnfvzjH7tf/vKXdkN9Cyl/B3TlyhUdPXpUZWVl0ccmTJigsrIytbS0GE5m4+TJkwoGg5o9e7aeeuopnT592nokU52dnerp6Yl5ffj9fpWUlIzL10dTU5Py8vI0d+5cbdy4UefOnbMeKanC4bAkKScnR5J09OhRXb16Neb1MG/ePM2YMSOtXw/fvA5fe+edd5Sbm6v58+ertrZWly5dshhvWCm3GOk3ffXVV7p27Zry8/NjHs/Pz9d//vMfo6lslJSUqKGhQXPnzlV3d7e2bNmihx9+WCdOnFBWVpb1eCZ6enokacjXx9f7xouKigqtWrVKRUVF6ujo0G9+8xtVVlaqpaVFEydOtB4v4QYHB7V582Y9+OCDmj9/vqTrr4eMjAxlZ2fHHJvOr4ehroMkPfnkk5o5c6aCwaCOHz+uF198UW1tbfrggw8Mp42V8gHC/6usrIz+e+HChSopKdHMmTP13nvv6emnnzacDKlg7dq10X8vWLBACxcu1Jw5c9TU1KRly5YZTpYc1dXVOnHixLj4OeitDHcdNmzYEP33ggULVFBQoGXLlqmjo0Nz5swZ7TGHlPLfgsvNzdXEiRNvehdLb2+vAoGA0VSpITs7W/fff7/a29utRzHz9WuA18fNZs+erdzc3LR8fWzatEn79+/XJ598EvPnWwKBgK5cuaLz58/HHJ+ur4fhrsNQSkpKJCmlXg8pH6CMjAwtWrRIjY2N0ccGBwfV2Nio0tJSw8nsXbx4UR0dHSooKLAexUxRUZECgUDM6yMSiejw4cPj/vXx5Zdf6ty5c2n1+nDOadOmTdqzZ48OHjyooqKimP2LFi3S5MmTY14PbW1tOn36dFq9Hm53HYZy7NgxSUqt14P1uyC+jd27dzuv1+saGhrcv/71L7dhwwaXnZ3tenp6rEcbVb/61a9cU1OT6+zsdP/4xz9cWVmZy83NdWfPnrUeLakuXLjgvvjiC/fFF184Se5Pf/qT++KLL9x///tf55xzr7/+usvOznb79u1zx48fdytWrHBFRUXu8uXLxpMn1q2uw4ULF9zzzz/vWlpaXGdnp/v444/dD37wA3ffffe5/v5+69ETZuPGjc7v97umpibX3d0d3S5duhQ9pqqqys2YMcMdPHjQHTlyxJWWlrrS0lLDqRPvdtehvb3d/fa3v3VHjhxxnZ2dbt++fW727Nlu6dKlxpPHGhMBcs65P//5z27GjBkuIyPDLVmyxLW2tlqPNOrWrFnjCgoKXEZGhvvud7/r1qxZ49rb263HSrpPPvnESbppW7dunXPu+luxX3nlFZefn++8Xq9btmyZa2trsx06CW51HS5duuSWL1/upk2b5iZPnuxmzpzpnnnmmbT7P2lD/fdLcjt27Igec/nyZfeLX/zCfec733F33XWXe/zxx113d7fd0Elwu+tw+vRpt3TpUpeTk+O8Xq+799573a9//WsXDodtB/8G/hwDAMBEyv8MCACQnggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAE/8Hyf2noiyd3fIAAAAASUVORK5CYII=\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 31ms/step\n", + "I think it's 3\n" + ] + } + ], + "source": [ + "# вывод собственного изображения (цифра 2)\n", + "plt.imshow(test_img_2, cmap=plt.get_cmap('gray'))\n", + "plt.show()\n", + "# предобработка\n", + "test_img_2 = test_img_2 / 255\n", + "test_img_2 = test_img_2.reshape(1, num_pixels)\n", + "# распознавание\n", + "result = best_model.predict(test_img_2)\n", + "print('I think it\\'s ', np.argmax(result))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 465 + }, + "executionInfo": { + "elapsed": 651, + "status": "ok", + "timestamp": 1759130799101, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "rhNzATtGuxbD", + "outputId": "11cd1569-d370-4070-c8de-02035699d8bb" + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n", + "I think it's 7\n" + ] + } + ], + "source": [ + "# вывод собственного изображения (цифра 7)\n", + "plt.imshow(test_img_7, cmap=plt.get_cmap('gray'))\n", + "plt.show()\n", + "# предобработка\n", + "test_img_7 = test_img_7 / 255\n", + "test_img_7 = test_img_7.reshape(1, num_pixels)\n", + "# распознавание\n", + "result = best_model.predict(test_img_7)\n", + "print('I think it\\'s ', np.argmax(result))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "id": "4rIUmwfYXcgh" + }, + "outputs": [], + "source": [ + "# Тестирование на собственных повернутых изображениях\n", + "from PIL import Image\n", + "file_data_2_90 = Image.open('2_90.png')\n", + "file_data_7_90 = Image.open('7_90.png')\n", + "file_data_2_90 = file_data_2_90.convert('L') # перевод в градации серого\n", + "file_data_7_90 = file_data_7_90.convert('L') # перевод в градации серого\n", + "test_img_2_90 = np.array(file_data_2_90)\n", + "test_img_7_90= np.array(file_data_7_90)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 465 + }, + "executionInfo": { + "elapsed": 445, + "status": "ok", + "timestamp": 1759131775554, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "xeYNkU0OZqg2", + "outputId": "b17a7b99-ce57-45fa-c069-74ea8374c3d3" + }, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGfdJREFUeJzt3V9M1ff9x/HX8Q9H28JhiHCgoqK2utQ/y5wyYsvsJAJbjP8utOuFNkajw2bK2m4sq9RtCc4lXdPF6S4WWbOqncnU1AsSiwWzDW2kGmO2ETF0YhRcTTgHsaKBz+/CX896qmjP8Rze5xyej+STyDnfr+fd7448dzjHjx7nnBMAAENshPUAAIDhiQABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATo6wH+LKBgQFduXJF6enp8ng81uMAACLknFNPT4/y8/M1YsTgr3MSLkBXrlxRQUGB9RgAgEfU0dGhCRMmDHp/wv0ILj093XoEAEAMPOz7edwCtGvXLk2ePFljxoxRUVGRPvroo690Hj92A4DU8LDv53EJ0HvvvaeqqirV1NTo448/1pw5c1RWVqZr167F4+EAAMnIxcH8+fNdZWVl6Ov+/n6Xn5/vamtrH3puIBBwklgsFouV5CsQCDzw+33MXwHdvn1bLS0tKi0tDd02YsQIlZaWqrm5+Z7j+/r6FAwGwxYAIPXFPECffvqp+vv7lZubG3Z7bm6uOjs77zm+trZWPp8vtPgEHAAMD+afgquurlYgEAitjo4O65EAAEMg5n8PKDs7WyNHjlRXV1fY7V1dXfL7/fcc7/V65fV6Yz0GACDBxfwVUFpamubOnauGhobQbQMDA2poaFBxcXGsHw4AkKTishNCVVWV1qxZo29961uaP3++3nrrLfX29uqll16Kx8MBAJJQXAK0atUq/fe//9W2bdvU2dmpb3zjG6qvr7/ngwkAgOHL45xz1kN8UTAYlM/nsx4DAPCIAoGAMjIyBr3f/FNwAIDhiQABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEyMsh4AAFLJ2rVrIz5n9+7dEZ9TV1cX8TmStGnTpqjOiwdeAQEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJjzOOWc9xBcFg0H5fD7rMQAgKu3t7RGfM3ny5NgPMgiPxzNkjxUIBJSRkTHo/bwCAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMjLIeAABSyVBuLJrseAUEADBBgAAAJmIeoDfeeEMejydszZgxI9YPAwBIcnF5D+iZZ57RBx988L8HGcVbTQCAcHEpw6hRo+T3++PxWwMAUkRc3gO6cOGC8vPzNWXKFL344ou6dOnSoMf29fUpGAyGLQBA6ot5gIqKilRXV6f6+nrt3r1b7e3teu6559TT03Pf42tra+Xz+UKroKAg1iMBABKQxznn4vkA3d3dmjRpkt58802tW7funvv7+vrU19cX+joYDBIhAEkrzt9SH5nH4xmyxwoEAsrIyBj0/rh/OiAzM1NPP/202tra7nu/1+uV1+uN9xgAgAQT978HdOPGDV28eFF5eXnxfigAQBKJeYBeeeUVNTU16ZNPPtE//vEPLV++XCNHjtQLL7wQ64cCACSxmP8I7vLly3rhhRd0/fp1jR8/Xs8++6xOnjyp8ePHx/qhAABJLO4fQohUMBiUz+ezHgMAopJg31LvkUgfQmAvOACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADARNz/QTqkrp/+9KcRn1NTUxPxOWPGjIn4nGgdOHAg4nNeeumliM+5detWxOcAqYZXQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADDhcc456yG+KBgMyufzWY+RENauXRvxObt37474nKHcbRrRG6qduiV2634UCfYt9R4ej2fIHisQCCgjI2PQ+3kFBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmCBAAwAQBAgCYYDPSIcLGokgmQ7XxaSpueppg31LvwWakAIBhjwABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwwWakQ6S9vT3i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\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 91ms/step\n", + "I think it's 7\n" + ] + } + ], + "source": [ + "# вывод собственного изображения (цифра 2)\n", + "plt.imshow(test_img_2_90, cmap=plt.get_cmap('gray'))\n", + "plt.show()\n", + "# предобработка\n", + "test_img_2_90 = test_img_2_90 / 255\n", + "test_img_2_90 = test_img_2_90.reshape(1, num_pixels)\n", + "# распознавание\n", + "result = best_model.predict(test_img_2_90)\n", + "print('I think it\\'s ', np.argmax(result))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 465 + }, + "executionInfo": { + "elapsed": 238, + "status": "ok", + "timestamp": 1759131800104, + "user": { + "displayName": "Legal People", + "userId": "00818738730090246603" + }, + "user_tz": -180 + }, + "id": "8JZajicXbNSA", + "outputId": "016e8c12-472d-4a15-c420-cd955edef901" + }, + "outputs": [ + { + "data": { + "image/png": "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AIDxKawAlZSU6NChQzpx4oTi4+PV0dEhSfL5fJo6dapaWlp06NAh/eAHP9C0adN08eJF7d69W7m5uVqyZElU/gMAAGNUOD/30RCv81VWVjrnnLty5YrLzc11SUlJzuv1uvnz57uXX3552NcBv8zv95u/bslisVisB1/Dfe/3/H9YYkYgEJDP57MeAwDwgPx+vxISEobczrXgAAAmCBAAwAQBAgCYIEAAABMECABgggABAEwQIACACQIEADBBgAAAJggQAMAEAQIAmCBAAAATBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAIAJAgQAMEGAAAAmYi5AzjnrEQAAETDc9/OYC1B3d7f1CACACBju+7nHxdhTjv7+fl27dk3x8fHyeDwh2wKBgGbOnKm2tjYlJCQYTWiP83AP5+EezsM9nId7YuE8OOfU3d2tjIwMTZgw9POcSaM409cyYcIEzZgx4777JCQkPNQPsC9wHu7hPNzDebiH83CP9Xnw+XzD7hNzL8EBAB4OBAgAYGJMBcjr9aq8vFxer9d6FFOch3s4D/dwHu7hPNwzls5DzL0JAQDwcBhTz4AAAOMHAQIAmCBAAAATBAgAYGLMBGj//v2aM2eOpkyZouzsbH388cfWI426119/XR6PJ2QtXLjQeqyoO3PmjNasWaOMjAx5PB4dP348ZLtzTnv27FF6erqmTp2qvLw8Xb582WbYKBruPGzdunXA46OgoMBm2CipqKjQsmXLFB8fr5SUFK1bt05NTU0h+/T29qqkpETTpk3TY489po0bN6qzs9No4uj4Oudh5cqVAx4PRUVFRhMPbkwE6P3331dpaanKy8v1ySefKCsrS/n5+bp+/br1aKPuqaeeUnt7e3D97W9/sx4p6np6epSVlaX9+/cPun3fvn16++23dfDgQZ09e1aPPvqo8vPz1dvbO8qTRtdw50GSCgoKQh4fhw8fHsUJo6+urk4lJSVqaGjQqVOndOfOHa1evVo9PT3BfXbv3q0PPvhAR48eVV1dna5du6YNGzYYTh15X+c8SNL27dtDHg/79u0zmngIbgxYvny5KykpCX589+5dl5GR4SoqKgynGn3l5eUuKyvLegxTktyxY8eCH/f397u0tDT329/+NnhbV1eX83q97vDhwwYTjo6vngfnnNuyZYtbu3atyTxWrl+/7iS5uro659y9r/3kyZPd0aNHg/v861//cpJcfX291ZhR99Xz4Jxz3/ve99xPfvITu6G+hph/BnT79m01NjYqLy8veNuECROUl5en+vp6w8lsXL58WRkZGZo7d66ef/55XblyxXokU62trero6Ah5fPh8PmVnZz+Uj4/a2lqlpKRowYIFKi4u1o0bN6xHiiq/3y9JSkpKkiQ1Njbqzp07IY+HhQsXatasWeP68fDV8/CF9957T8nJyVq0aJHKysp069Yti/GGFHMXI/2qzz77THfv3lVqamrI7ampqfr3v/9tNJWN7OxsVVVVacGCBWpvb9fevXv1zDPP6NKlS4qPj7cez0RHR4ckDfr4+GLbw6KgoEAbNmxQZmamWlpa9POf/1yFhYWqr6/XxIkTrceLuP7+fu3atUsrVqzQokWLJN17PMTFxSkxMTFk3/H8eBjsPEjSj370I82ePVsZGRm6ePGiXn31VTU1Nemvf/2r4bShYj5A+J/CwsLgv5csWaLs7GzNnj1bf/nLX7Rt2zbDyRALNm/eHPz34sWLtWTJEs2bN0+1tbVatWqV4WTRUVJSokuXLj0UPwe9n6HOw44dO4L/Xrx4sdLT07Vq1Sq1tLRo3rx5oz3moGL+Jbjk5GRNnDhxwLtYOjs7lZaWZjRVbEhMTNSTTz6p5uZm61HMfPEY4PEx0Ny5c5WcnDwuHx87d+7UyZMn9dFHH4X8+Za0tDTdvn1bXV1dIfuP18fDUOdhMNnZ2ZIUU4+HmA9QXFycli5dqpqamuBt/f39qqmpUU5OjuFk9m7evKmWlhalp6dbj2ImMzNTaWlpIY+PQCCgs2fPPvSPj6tXr+rGjRvj6vHhnNPOnTt17NgxnT59WpmZmSHbly5dqsmTJ4c8HpqamnTlypVx9XgY7jwM5sKFC5IUW48H63dBfB1HjhxxXq/XVVVVuX/+859ux44dLjEx0XV0dFiPNqp++tOfutraWtfa2ur+/ve/u7y8PJecnOyuX79uPVpUdXd3u/Pnz7vz5887Se7NN99058+fd//5z3+cc8698cYbLjEx0Z04ccJdvHjRrV271mVmZrrPP//cePLIut956O7udi+99JKrr693ra2t7sMPP3Tf/va33RNPPOF6e3utR4+Y4uJi5/P5XG1trWtvbw+uW7duBfcpKipys2bNcqdPn3bnzp1zOTk5Licnx3DqyBvuPDQ3N7tf/vKX7ty5c661tdWdOHHCzZ071+Xm5hpPHmpMBMg5537/+9+7WbNmubi4OLd8+XLX0NBgPdKo27Rpk0tPT3dxcXHu8ccfd5s2bXLNzc3WY0XdRx995CQNWFu2bHHO3Xsr9muvveZSU1Od1+t1q1atck1NTbZDR8H9zsOtW7fc6tWr3fTp093kyZPd7Nmz3fbt28fd/0kb7L9fkqusrAzu8/nnn7sf//jH7hvf+IZ75JFH3Pr16117e7vd0FEw3Hm4cuWKy83NdUlJSc7r9br58+e7l19+2fn9ftvBv4I/xwAAMBHzPwMCAIxPBAgAYIIAAQBMECAAgAkCBAAwQYAAACYIEADABAECAJggQAAAEwQIAGCCAAEATBAgAICJ/wMdQ2nIWitXPQAAAABJRU5ErkJggg==\n", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 48ms/step\n", + "I think it's 7\n" + ] + } + ], + "source": [ + "# вывод собственного изображения (цифра 7)\n", + "plt.imshow(test_img_7_90, cmap=plt.get_cmap('gray'))\n", + "plt.show()\n", + "# предобработка\n", + "test_img_7_90 = test_img_7_90 / 255\n", + "test_img_7_90 = test_img_7_90.reshape(1, num_pixels)\n", + "# распознавание\n", + "result = best_model.predict(test_img_7_90)\n", + "print('I think it\\'s ', np.argmax(result))" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "id": "DQJNpFTOZ7Z6" + }, + "source": [] + } + ], + "metadata": { + "accelerator": "GPU", + "colab": { + "gpuType": "T4", + "provenance": [ + { + "file_id": "1HorM0jtoJfNfcuh_uXJu8ODaEJ6xOUu-", + "timestamp": 1759209370437 + } + ] + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "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.13.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/labworks/LW1/architecture_of_1_layer_NN.png b/labworks/LW1/architecture_of_1_layer_NN.png new file mode 100644 index 0000000000000000000000000000000000000000..f9bf82c8ca5b4d071a34eed342c27f2aa9b611da GIT binary patch literal 25092 zcmZ^~13;bc`#+v-*V1Zfxz@6cWiH#cwQSdNt+s62wy}(5TmPr+{n78gZ$0On`#kq^ z`||ZVA+pkt*S79m7yLR9X$?)8ja?LF7%C*>hZ?*_V2K7-n>yFg`31(WcFe+6I)P-C`!y)dLG+_JWTV%i{?0Yk0sh7Ke zQU{VHux&?X3i6|dKO?12(jU*v6NNMMRsa=bUn8nv5Ki7VNx=<_>mQ)>L5TKHI4GRw4WPOxZ}{-v4Ti#~oKqEa5+iln z1Z3THYDm*`H=@v^Zb9@?TGoo?i&A@LUlpKzlpM(1mDut!Y$cRn-c*%%n%e`5lqXW4 z7K{4ilMGhjn!&&WrpFRYV8^828UJw;ZgK(D|09}dHI0{ja4uwyj&}f0V$yrqQ02uW zgI$DC?4?+`Eg{M?-{s4B6k)G&EJ77R-Zc1Ga+Hb_dAh}@ItnX z66wer8ZRb2s%a#nq4JBH`F_PZxYlqL_R?D6b~J>U@Yvr3h-5H#MS9+Ebi*^%XUm1U zoF)+Cm-B<@fKe4w>2UOebk42>YPo#>1q-G@3~I^;a+ol@77XDU1*4_U2YQQ60@{y@ zw@ZJ5>BH6UjjM;L;vW6}WF#)CA7YGn6iSyEenoOSS4ePWqeGz|=4Cw{o*KC~6|$)K zW%a`U&^Zt?#fFTO;IdzlsQMig8hG&AZsHuo(x`_uEf==t`;PrDO`C-N7q?b2E+Qrr zT;$8d4k*V`=vWeg!t8_&d{4xNbn;%qkXEoPnl|3cZwdts(|ixW-IsCib=Omk_*M@FX}ZNpZ=dh#z7~f}#|wlaJP?liA5VlfxZu{$oh0(kSS$T zb$5RAR&64Qx~WgNgE@xj1}R|8(df8 zaddI0Qv~E8k227Dmq`3x&VF>$n0a*lz4vBIs3y{=~kLBoxpwN8aY;e-P zRcmM_;H>T3^==#;@Z-=czMv5NVlar=q;A2CdcN~-rGq&){2@rz#XiIazaupbhKV7u zj}{iAk`J`tt0k%FFY8C$!mtB16+I@7iYDA*Ifw0$eP0-Xmy`I*WSYP*Ti1k!1M-ug zaTcTrY9oFLU(v)*6K*%SmM<%Ooa5Lgyig2E;l3$4*U6l{y(AUyXfWe+F3Qo0@r!z| z^*)`lYj<&!YaNnGcki*G*9B3tK}2=A-XeGqwj!+hoOBLMOTH&Bp*SK>C)Ol$jOF?9qY$TvtpK9nT|uxSoYJ6@Qvtq8L*Zl| z6W=VcdNlVyi~)};mMf$yXG4fbz_K`DmWg~ZoEXn!F zUF;!CM8#fq^T*lDPLWdKOp&INdx5laovd+zj1s*py$bISFX0vy|6<*Oj@dP{;i(_f zY&o`)x!Q51>>|wa%a)x*oS)&N`4_*!el6`8 z|4LsJvZS_*bP9ATxF$SOKH?#uB`{8RN%u&XNZ02eKnT|zSYxQfp~iv6Va3f9!HLv~ zKnYjn&^rk(B3(I%oW7dE{FV6Yc&a7)K|HDe`$tkiokSV`i7!v7brCPWcm6Z^6Z3rw zX^p5`#8w0iuB*3DH`r`Hs|D>6* zh)}Ci%WSB)bGcyOaolmH?Z-OC+QT}a8C7eptFDwP*RWX7S+LAA@2PlSURc#={i*7@ zCPP=#((`Aa$);7DY1Ksj2v&__#izQG>K47A#fC-LqmPR3I|{>atJ{?GNUOY!T4 zjj46>jiIZOYtKXDoxYo;^|_u(UBhyxDy@6Yd&x)Shc;vP%H2vCC>_uaP%_XG-_O3b zzHh*Ypi-dnAZH-2Ae$h@ka%zfU|`|ZFzv$h``2yF*gdnYvh4-cJAddh>b~hD3|b15 z>`d*=-4yIABlPC&BoV-vK!GJ;k0~N05>gW$3BI=kvlW>BG6*}C(Ku+9^eY>uv|5i0V#(PHHCeE6dgVhbz-%Q|LI@0oZ}2SYCV5hMDDO3~31^38JVG z^*;BGo6WNI8<=KDL%&kRlj+Lo;}0j*Gp5{ot$W*hEdsSR{-;VJV!b=zHz_eGEGes% zXqDH7MFtecM5v}AOv1EN5&63^*4RrSVLb%QT*k%e6BMv~(4Tuj&f%m3&prN7mXrk1WQ;5->@XMj#g?v#|DORSTYOR?!KieU@ zMO%-Z&C^dR)xNL!qHR|(T~Xb9dBL<&8O9rR*RZi`J*1FSS8AhKVM=D3XRr#eg)T-Ap_Kmig^RE-i zpJ#a@ic=NLZpM-&>Xt`z{+iVL;~b`%W5)wcOV<#GrpxAS&Idfbt&>kWZ4NIN+Hu}3 zuEd9Y7yLK=?#OERg&b168uC%oV}&Q?V%EP*q%16W(cHc@3>591S|hd1;IpuQc9q(l z58aI46z*$Fr(~P(miMT6)$ah6%vcr+7{!~GurU^(PsWj9Le zwAp4W=bB_>>#^`;Mqv)DG`(fC!D~;X zJK{RkmeqRot4Go1#}}uY^kUAku4J>s|xk5zyPnh=j^7x)*(|NOO_;QDB6c zUicTcE9fh6*fRDRUdJ?UBJRp7hRaGzN7J6w6hFQn-F@3lr|+hRatnKzeyrNhyBZSo zzI$?Pu-4Pwr5-41RWL7V-Pdy~amoDx>a#dR5{7&WCfT%0*U-K1$j;F=syeflms2Sk3;fdL`qjXF- z${5C@L>q)FU@3*nI4jTa7T?{%?vHlg0RBXxp{lsir%xd7fiesTBq$mPI8Xuw{y{+T zKp=mYK|mxx-~78Q4@&vZGhiSfL8c%O|2*><_STBnqel;a3n87Y9BS^z94{t?W Rh2kP=Fh-Hezb_ARt&|uP;z>`FE!v zAYeaD6;&NnKS^=uTU*lU8d&QY(z#gLy!Hda<-!3JEe#!XiCru$tn4{lxJiCL!2y(C zZ_|?y|9-^5oSQ`TlPs~IwVfgHM>+;N1`-}PVq#)0I|CyQc_ER1ngidsNlY9ZY&huY zot>TOoSEsY?TqOe+1c6Y8JOsqm}r3~Xzg9C9CTf1t?Wtvbn>r$gbeNV?M!VPOs%bm zU;EY7vvzdgCLwtp=-+>T=4t3+`k#@k?EhI7ut56P8hS=L2Kv7>b1*gfKbpPP{Au=k zU4Mq-dhLuu$==XT(Av_{(8_`5KReF#d!+xV{Lei9G?X=UF|<$>G6h=N18d@8Vq;_Y zr`i8o_1C6q|7ps|#_&H)|Euc1n!YZAL*CHd+QRX56P2t?9e9|y=>K;6|81rEpJqIa zA3o4C{?qKg@BhDT)c%h)|9$`eZ6jl63hblq>-2d3HO7D6`{#Ks`d0$@FM{|(ZNKjV zK%G)A?@f?(7EBkteVmD>Ewm-e|o#%{sDtH+r$Wcf2q0 z0MoTgX3Es#YcP(Q*-k`K~wOO`dYeXU5Ij^yNm! zqAvn(3qG?n><4t|s?}MgPZz0-(Jv+I@*jjUb-e9&+{uwzuDicF=rdS%X8Og=uf<=+ zjBRK&U(R2sQbzb|p-60u|NYIkA3rFI#@y*L{Id+t3AS#oZGz4SwszLJ3u#V>d7xJ~ zPk2gc#z2=yZai-YD`?NrY>B>4Lho|+k4(CEJ4Yu4Kj6Hi9wIlT%!}U56P3#6g?=!d z>~57>eTr_pEk8+N^96@SiZ`9g?+Fixnx<8+?GEpXyOSZt9^o)-xie->~E(B0xLwpw=LoDkxTIJBx4IJ+kl3RO8S?R2hN+%0c^lE zJR&1%+3Vq`a!Q)BL9bY~LI97|>JUzH3q(48?L)pu1YU@c^9BYs_E0RD{pW6{*eiR~!`5JeV#( z|8p|q#>iu!kCc#}D^+(qV%zL6_stgs5c?GYCt33zlTS!)=K~bmc}ZG!aNHNe%z54~ z&!db^eyzyzrZ2bn^;Z1d{EeCZ!C)R>c4znyv~iX(V~Ev$^H^#OIfsc!&M1#6k@)PB z1%_i8+}nX~tZX7H(5q$qs&9$lCvP@5VJ>svSNSIv)}(lv{mW$ssJ^G6JqUP?=6`CK zZ1r^Cn=XixL0v%HpUjhVf-ly|O9*mT?1-*td>4%Y+Ul>jxxq>KG1DQ_a;3R}S`t4g z$X%9je+{e)9Ic-j%py#0b^QDs>2s|`N>PsLS#|UDh!P`VG+!*l`+H8xmBRiB8=KFv zAD9p*{>r1i5U(r@@=oOMg2mSa;L{M1!1e!wr9eR6tDyOGQ~tdgB?4gNiGGH(zcI28 z1R60wL}1Z40e`Q~K?TGT9&TXVUqu8T7z7x#3KqTA;owS>bko5*N&>$%+yXY%l+oK6wW0|lfw1S$k9q*M@x0i33C6U+j* z!50pxSffC#D!-^b3)9B16Bz!_f%;aX{!sWHNnN&BW8M_`uU!tIym#49UCq&j|Vl8xz-FMFNBtDo~BH=jeTW7QC z*6a^noNrjIFqUF$r}97LNhG}YlB2f3X|7#$-A!+N&h$7B;X3O^M^lVb(|udM@w&s& z#GsVlw7s7kQGI{JeVJZ4sAC6OX=mvy~Oe|5;;IOf=55l@B9sQvY zW1H6A=~*vUi)VOVtGRAQux{0@dfCehs7)5B(EDx}l(k&Pn#~ll@1mRleb`4fIUPxC zhYI?0zK$p>0y6k3)vB?8Cd;8rE>~nSM;P98wm1dfrX93$Gm=xJTbIucV#VX)lUlt^ zwzR|j-gkH!du{h47RJc?F}6(vD&*OQZLJ2ss3q&Rr`hZ_uO~O-OwK(rn}?%1PTb?R zmuK4q)iK_e=3E!P&Jc78iPn)_-koIqt({csS&dVCfprJqh&a>g{|H`LfwcjO%=jg% zrjY<}I4p$NwIHNl;uPsy9GQ{+p|e;7E^EG{hC~kI{O99>$n1T4%W8m}$f{zuUTF@t zKn+}_E^E$NVxw&Phk*xBeFE~I()W|_{HufT?Sda~+FlX>rS~ALtBMb%isic1AES2( zA{c~}kds5wuwPh|7H^#Hm{^rLl`UbRD7WHyqxoF`P*o1s)E7uve&5rb zzWRd@A@L{e*fFgmz3P-LT;H1&cY1+}jh60%vNkQAheKv-hA3vCwf&;9Yo%g?A8baF zzj+ZQ03`qOy;{9c$fypouUeH6dnl$Vm{Q4SC8N=_z3%qs(Jm zn;p`Q8&VM9?P=?z+6*iQEgH`jH$O3Q<8tch90s~yW zd6G$R9zSq>?>-bWFb0E}W2zQjA1+L#?IixDW@1DLooqknBS1~yO+0t_O)0~C%dVG* z>zOW4NH_0MR1PLk&S+I1da5Q4GVn>?9!eTY()OaNG9JS^?BW$`al5+2ujjs5Rv2Tg z_5320`f-G1(Eo0I$+9lJ$YA*39$0r;xzo|&KxxzQKEA&3Ora775`Ne7)tvTZrJ>~B zc((uL@lVctK}9Kc-wp3dx-MOIxC)TH=_u6shN$2%VkXSz(0hE*!--A>i;Gl2XV3S_EgQUfJH0Ft?ltV z?D6^GgahgMu%eI9kF53O`N4XQcYMYDgw|#lnuzkYZxPViEJ>}N4l6DfoeqId zd}@3RY+|ZH>Ctk7{Z*PRCyGLVJPX0g-uKKy8c6c#>uDmkqP}Vs4H*){krZZ8YI7T2 zn-iPNW=|pook~yoZ-U;PY*C^_>pyZMCy!V#gib;I?{j2~lD}3ST8_6Sr9U0-pLf5UB(vt;)p>9R|%`N=Zsvo4S2jheQYn_3;FwwU? zR(iZV-T0kspv!Q{InC=rD~zxZtvV$ zG%t(L36p+1@5Y%*PN3yiZ(PBVyk@x{c)v!p;&A?nXZh7l;4^&Z6PZSPYZ9af>E{dL za0{p@ehRq7kHA2&-A);=48$>r=`elh%)5wlv4XgWm5t`SY#YQJ?I%sQ&+K%l`rQl1 zqWN}#CwUA9CM-aG|hYn4~U0uptSU4&=@ zV3>$~BJzaRBn6n?f`@nng5eb2oS*cToDr<2LasZR!9DCFj6`A|q5H6@%;CkUJru>c zNR}$jM~h^3hgzIpeSQql#D)T(jp`M2Q?Hg_b&gWvEo3(OMO*U-LqoGo{ZdUervvr{lB&Jztxa z6f+FMr}+rOR_A(w*>gS+Ep_wvAq-Nep9-{_!AxLK2ZtpQKFhVF%W-DbS}rXHF?rrQ z{A2HARigP+E?|W(FZfNcsxxq?XhDR6HxcRV2YlQaW*);({iY~%7Kx{~PoD;w6PI4h z7qd-Kx8hc0u~6CL_+D&vD1m>^w?wsKOy8!b)}gb(;kxCpvR>v@LlmIRm+Sgd!@KYJ z-aPGvs=9&nJVmgs;9R`v`F5dDoNRBDYL>DB?4Pk~8>yV}($|@IO|@EA^9DUD;(Y6N zG;jjMWV~Eb$nW3k&!QRidts_Ijo5{f8Qws`i4=?n>jRC_=YE=a^rWUy;)T0A_%2c4NIQ*R7Qke#?-rITFYS1d0f9)osz5x zy*#EM!#&dgW&IsRAwnl7(%eVBXIVxAzPkA3wvSf|wX~!z7tWqj8qx0U#;ch}M&>h` zK$~o)A9lk=Fqn{K8KX(>?%f~#7BJp4lL8PIEvn(myTygaOFPkKgDnfd;R%yvm;9V~ zl{%_bs^f6-KKOycJnG27i5`{HMa-((pL0HJ3YR;{&a<)!FVUau-#+z$avKk-rR1NBN|1x*boyERnsUMj-!j@S@%n| z-D6?aF2^5hsI!wb7sr>Oi3tu_NHB;d(I+YfFbNytsbzzO)I)Iz*owuiq`D?d15WVt zV-dWWYrEw&)_On{*ePq*h@jGiC`X8Ice{98x>Uj}J-=W_966v4miZ&|%u`_*Sxm%J z*G|H~4&#eb{IN)~V$m4V3GMGz?$%fItv%xCQY^=7`^&<;UmjNdOu0~Q=PN%&PB4B_ zYVeE9`nj?+h*{lm&E9qo2`iWy_T1I>d_`}J(y`?q`QD3RyLU2cg{qM}V_}19gFg$Q z@4R(l{Bw1-TJH99Bq z(kfi>#u*RuY6>}FtN7WI8THCp1g=bjpEF0k1)ebYxxc>V5|I(dV7D{&zHvPDZL0uh z$ccEa2BX)=Fbi2zPtz(6Z97co<(t#vzIM?3!ms5ArA^X7Wa=XM8!97;y$z$-$mGM? zCk?xVzTgTT2&vNTJ0q!@GhHK$g9%zKZhNEta`9`~qN4B-x8`LnJKy{Uw&5P;&*Z(>UXToZW|L>*_J6*`lOBa~O_%Whp&up3>H!P~h^(3y~`&rlwRJ z_XYFbbb(#}C5Fq(#&!)yqY&PMg27du%xDjbihYAOh*@^W{Cs!h?pI&Sg6MH9gud+E zTpgYlRuUbW_{aH`#f5cAPjHVKTC%&Y&3nhQapd$irna$pMW1a(mfUd)X5N#aI=9y40fqlT%PC{NPbb{fYCN-32L>uHyxo=d5#Au@#Bgx! zw|yB)=5r!?fw=bxJ`A~eEPPEJYBksey6Y!Mt2P#mYL<+9n-V(ibWdG$i7LNHa*eJ! zcK&DbMN!p+_SlKw3hA0Id8N|i<_h8vxec8xC~!0w=Fx4`z}iwS@s;-~S&AJPF+$zP z_*sm+cUy5a%$(nPL_ehMulrWKsEy-xLD!*POjt&)tCJGyovPE+gX z+tPjJAGYPFyAA3qL@>fbqxo`5(mse-JCDWhRKIZZb=sBF-RPNDS+^XLRHIfw^8x?b zwv4fDr52-dGmF&txGH7CFmspZ)#z6g0aK-F$7&{;0A=3r)HdoYOQND)pxrmEb2pir zkYl#*AK~O(@EDTxka7*gq%GDT-{};Xa{qMN0|tHWl-XO_#$CAYC>x9nuI>lOf39+C zsAj49xk9X?=AY!LE(O;uQvcWrjWBDRkcn7Ys~O3ty6O_W?~&oQUG&s@gu+rwnX+{l z^%jwGQAF!+9wxg#8H81fq!@V9cj-Z{I@QV(=;A>5rowJg^2RVR;Zo2iP>&nkQ7Mmy z2vDGCU04o*OGQ*b=6?bf0yFH_k}evaGq3j;J+E7F&B#KPIG^64dM3|pOv5L|lPnP@ z?khh?sUkc2J=1IdD{`>AK~(JBOpm#q)njdPy@)!Vr6UCTm~~i`kI5kB5*oSsOa)jk(YHSgM=scfh#ZniQ9AD*w7*Rr7sR{-GaO1)Wh!=#X`z!QK1I%1* zRr_Ta<;t_j9G%9IiD`tcCmmY$UPDY7E;c5b@7b86fT8-f<@|gnxdE3 zT8&8^oEp5zr`p<{5{tSi+Jm2plrrZnmC57j@O`rT!b(3vdV|b3jMe%9|FFeuaqH~()@iBOgt9x2)Mn(CSgp7i$IK*Xh{2-$FFIrSnxy{sR& zMf<8k6nVgUaf=%45a?2!V03G1nnU9DKVlm~6)@-Dv}ckplDVUR=&HU&Drym6Aht4! z?XFscm5<6Yh4UjHR^o7}7bQKoVGac?8(@4i!Qt=QYuL?T4w9=oMbr}!X^weRt^_;~ zO^u1Qk@*Ld&9}ZY2+Hhyec8>y+=$SQwXQvdxqHjWY&N&4Vxo*+WiWZeh~w&7o_^&< zLGZ#P4id6jrFkx<6dl#bHvnOWZQuYMdU`-J3gGGL`9z`!32a9pToR~lJf!}_K~atn zW-<;CiexCqC)hoHWe4HEkm*1g@+8WC*r?I#_@LpCv8K?KAz-%gVCi2gOioYpHpB@T z&dFVZVRXs=-3kwAyjZy^|I#zy2BaKrSXnB|`ebQVmgsC4Me{*OC3Q>_IdFAM-;#8( zbPisp7-!gS$07y!?EP|2kqRj{c2hzMEN*F`5(1o zotU1~ed2)G&KV}Y3OvEN-Rjn92JEKOz;$&3-CIq-2PQWgt-~C(+XjLOp>QL`c>bf& zM@oc4r~;-SZB(bpnZW^&BAq$}zLD9qK}25lClVjaL)+hj@8o*-hU4DjNaExOLK)XP z?GpbaplXU7IMz2UJKOBz955QoAaE2nq=;Rt;0%TdB1h$&0)>nMVqpv7mpu5KzG2)E za1@U;ek5o~P<*(4cFjhc$-DDF+>-$Qf?&OWjAlFFA<`IP40<2Q-iA$>Y0Up;$aUfY zi+LR{QnRhA)T=?C5CW3_HLFEP-5f#!t}F*^mw~JY>jch4wRf_5b?2uA0IES=#7b$- zTH{MKkWpjVU0YiTRtfPhU;%u)GHZ2%$y>|y_@7SEQBJUise66s0y-&>}}%_}HBtyMq8=dI`}i``yt} zbCISX=MNb0vcYe@@0W^E5dtX|#X>H}eMJiPl`9lZn%Vcx(w+E+ifls(LO9vX20W*z zLR)H+7r;U zKrdEx^v?@f^^cH7^{O4HW+iIsG8?^9gGjNzo}Hd4Qsu`l4%UI^I3KrI^mF%h2ZKzm zi!<$Gei$cS%Jp!8%3*I|F|B`1$oUQmfsjg_?F8k1y82AldEQ<$-|LRcdr=zI$CywH zOih&g;LQl@*u_bxA2d!%sn@k|GV~5&KO#A4*=+^k-z;O&=mB1*GUU{6f4WD4T&13X4RS1zf;eUiCbm5B% zT_>7VHd)swHg7k{q@AGgJ7hB=B40L&OotU*kl}r*Hm7w?^H*3GCGu2^?p5cF!%Ek? zb@QDG%hZAU`m^IAviUww7w5N?LJlU&wn<808KN@bvw1Pbt8LY=oe1+nbo)b;qp1Xv zwR&bw%e@3%xA-HOiTW2g0fbhU0|YXT{8+c`=8MrOL(jb^>CaUHXhXryU|M`#*o(A3y zZWj&KgH29QFRxsOhpqd-cOWpZb*n3FSBRXZ?OG71>*ciC z>X~lw8s=i(3};T;bU4ZKH*ikN23Y_?K%QZ~u4#~>yIIY%&iq+ z&KdstdYqnUxUsktI(t)jF#0qo4id(M@aE%igA2lC&pGHXp)KhZ6rViaMM;m` z_Lqb?ZzXcN57>rA8yrk26do0>&_oObY#EAdnbc=={XEvrB!{O$*ArR#crmnn1kP!m zIQB$_o0+6ii@aVajLUoKgKQ1Maib8 z2EmTX%_$q{LaW0iM}jn=+xJT)2keEpRt;}Bit5$r<^!96&3f{u$1LMb_(dgAj4)9k z6{J6-x-G;RRErdvCO+SYQA^Y5oeekd3D z%4VCR<7z;el%-g%f+mp{4y4-l3RtyD`_XqcymqV#;*(0N*K{GUXta!Fckq7)34Txc z&%|FPeiD!=%y360^HBlyks~VRh&z!l`OM;ayO}#?aB;VjgqqMgj`lw^YqSNl9 zSUGC)IoS-4h`P5!O9b9v=ifd3yMP(Vr?U;WbG!(aNpMG;{82A0Nv~1jWTj<$BaA-r zsBV>qh>rf4MW+zaYY(f;5N_CGy&OfET6Vu1&3e&6Mk!RuiNwBHKW~@)mH+z5KvhW= z!G?wh>6}v0%AN`iiz^+UY+Kc_Dp!Jn7B*(Kf zA^6Qhhi*}E{e>FB0T+rA_pp5I3Bl;ZZL#Yf3?`r39&to|E4=^^{IJCh?%FY>M9z4_!#<@ARy6f|fNj#x4LaNiL$d8fwL^^E^WopC{hvZKEtqct^@Z3tvO_e`=%6!G1P5J1cd#A94)*Ng(wiGo-5^y&D&K^d;0b?xe^Q`;5BDts1ix}gzRAh*A^PD@$L#N9iJoMJv(90Mfeno7B2{IhN# zT%lV=HR2m|yPyhyph=c-83{LZ!E#(qPEIk;2>|WzOB`^PeXN6B<*&fadmyNGyE0Sp zUCS)3ctSqb~DCp zkU9<}(lTzI8a$)-_t-~=F=5sJM&nLyp#<4 z<{cnV{Rl3kBKQC>4S-g`%X^eb4|9(NIysXbO=D+1HnjaLt05Hrzhv`oKA3ogprj*? z{q>ll`80rI>=y2Z`S;06|@WD74OG$vfx4V?HnJ%bL9>R z>}tN#S=NFl#RWQoko)s%c9k8-g&Ur(b)aIx-1CU#J#E^f*uK#KO>sfefV{;Aa6d4g z$(Kkn-Eahqk?w&6umk3s4<@o!D-&MBfIJ*P=?`*7L7)%kyGscM@GB(oIRAze{I3|vc?GY* z;XwT#C=rrZoY@z&&HsZ8FaRY4xk_V(e?hJI=wOG_IaRQ=RaKLR%*rkP zj7|gw(BoWo7&iSi`w%f;-fN)F*W2bQTmqSvv?oQS=r`Typ?vWQcK`wqN`MTc01ygdcg63_g#jqY4FnLZDk-awPUlc- zQ683Q1rR5O0BD8DW{rzuImMi94rEPXny+Tn&o8HB4h~uXl*IcH#|wdgBO)TO*Ny78 z2U8CVGuW&}lyCd|#ML&rMOP+3tpYIAyPKcRnXMZH&dV`_30udWLWfN!t?EIJdy~R$ zSNoW@grNH01GYoocS(hbX|F$qbg1XGN0VoxRaUf<$5tJ)4MNf)k4xL8=}#Gsynp)6j#4 z6n0rm5WA!<)LSvM-OB5`otgwd=ED=MlRizL-q-PHjqWo{^V*r3sCJ%@pX6>IL7w!> z6nV{NH+@`GiZpi&M>w%j9Mj~TXA9;MMXcytRY#B6KXsXyZ zOm*e{5#FEV*0e5?vlf~~af*ma38Pn>LynxgGLzUyL%3vI!EpA2L3H&p{#LDVmWtyS%#0{A=4u+E`VwYo_1R zv1})b60{5>w_RSI4RvvsDc`YhH^xO2no=o-;)uaOE3TSjg*>a(+h#9c96X&%tyh)4 zOW$|4BXCC!?dq|6j)&jAYFl+kzqjgf_FJ_!_e$b)ZX0nN< zQsd+#fIC|%&qT|X-ET`WvU*x~$a}}P&}>;nZ6sGOW>lI%_1%+EmTuoJTVvtKZtjjn zU8S#t9^->oteN^&l5u|5W7)f@Jf;^r(X}3I?PY6$`3RTkqhMLGIY^TOKxrhu-jj?W2CvS6iZY)lv?g~Qa>-mYOC}Y{f>jN`j#^> zyY8eII}ks9sal)lVB^5A+*MUB)mJUP1Wk0uz4zjj<4C<1=GQsK>$J;r^ye~Bb2vBY6XIyzIdf5P#Wz*0^~7Z(W-zFj`l0@um4V4}4ssw(gH5%1EpASWBA zQF6s11XiwuE0%9qM6iVEyxUY;@d%%Yv_%Ucygyf)ycH#M{q_o31B3Q1H^_cf9eh0K z$sCS_7+6^Ql3z%dgbdRv!<);+#T@a_KXtfN!0^H9ZJj0t4M3)k#p&~~uRsX@?1XSX zJhZ*{crv@%N_f(a51f%ymYO$jYB9KRmdHosfH;1NGvc?I^dN@`PwJVcI&- z9W4Mgl`n1oyd9*(yYFGHSn!tq@TM5YJTCo>Q&J(M5@aZ5KXe#xc%cS+QDH)CrSFvjph-JOH<4`&Jj?2vE1PMYWIDOV(gf z%bHD2Gezr%n1r*w`0&PVM)C6OTp|s#^z~gH zE>sx;X3S#6o5Ye8$2rX!eT6DJL80~cI%gX_=YVIme@|lB7fEmh2k-fCo#5veuRMB9 zEgj@r6w`9EvUEsZQ&L#ywEYYzUtg%I^~6HsU4r5I$ueqbpe^a~r(d}TqskV5I9te) z>Tc_j#x-UbXkI__6VDh3Os9BW_|8eAoGdUCgnW@Tr2^mv5rXFV*$Y zdU+T8Ev;X%l^tmss<9k}-98`>$fXNZ3O@Y;*srF4Ye83Y&edF~vEbazl4x>H8Kp&x zLa?~`%dYN9vn!MHvBtW*I}+Y8aOzuceE}%mazi2a^*o@bY83=qL|KcRFGcdc5tU)k zba{A`2}y>XX0nDfSA3-5Ei@H8P$EoM3~WgtyYzv2=4pSH#Tv0Lx^?l)%#CNSnyJpM zoBOgogs96+TTpj?bS{Ib#nSsg(5j=QY?@CUHlkK|zC`_^-&7cY4o$Vnh&VJ*FW_&6 zxCODTzFk@R660j{&Bk-$UKJQ0$46jR8hw%mXi>LJ0a(!tMw&SM>RbT9WKL!lfmqOE!!tcas{dDlUzEyHYp^Ae&hgZ3rFSzB z->W|vtH;X=$4Y4&Cs3;no&m9AJ7vhus}>-vde1~(zvh>m)MT;1)BsqKTX8ZxXA#iQ zrK0$@Uk;W5@M%x68H3%H7%sC>_%mfKX#^3kR+-P*_p}rq&&F^ZMgeNQ!w*J81S8)w z+y?O*Ym-0P-EAMcnvr*cLgN$HE!%~CFpKvxCI|F=Iu-fb3rmX1vC#ncfNC`G?-_S* zG3FLm1RX-teNK&bgtZqFQyvW>{-SH;$CZX`xhdYHNK3qep}#|i z{an7gaN0I-9o6X$;ul}d9GVodEHreS(n~C<7MhLhDYz2S9cqOOrb!p7Gi2rs;*5EC zl+_rAXuHfHs7n!ucr@1DY-I-#hJFTBjY7a-XqPM2S-DA2(V~*=|6r|UH}!In`C>vH zW0JCL(}noC!VbXFAK1BH9~R_xHX1C~+oBGHhK6oszC3=xTd{F29{ZfKlbG2a=J$y~HX zqjd^>3Q>G!%JZ1D0@QRxo>Gyr^cNzp+m40ZKM2-0zOObS5L*654_|ak_Wng~bo{OP z%z<}~yu~|`v7(Q?l*;3WmnG=2`ujoO)C!m&k?du@qPKAK&ty1_}=V3-p@a z5Fya?S7`m|ysEj&Y%$N!fjs4uh0t)lXikRl{wSmX=ho(95$WT@>dUMIaeDdX7?9f| zXEq+K_P=}{OrYKdtpAAz*)=YJTIAbWC%GtnqmZP08=vnF92?@uKiO%9MaFMrl1V21 z!Ur6VoyLr;g^zM|Fv=uak}=|DW+SYH3UI!VgW#fAY@x|T*D7=OdKDS_;6>3@@r2Zi zp@Oo#8cTJG{<-Ik5^9ND*)&pXvd*FM&4+m+h!Gab1O^J^7}P{*YKcfi(#xL7m0#{j z@pWq|g=UC&42WePn;k_kO*PJc6+}mKagoumdTJD_NV_RheHoR-Vx2Gm0IBxUw3?06 z{~;8mB8gqiLU>7$2D@hY(B)zbf@CZEGP`iE%CD2?lH;+SPapY z`vjhWpIcqOnxX3;UPOKcbNC{kb_*L%by7_q{c%QOlr(6~B;+d*;AiN8HCASrei#(Vcuh&-5!76B8Dz zawyY_gZ4;Y${%SAtv+waZ%Z5%l6@r|UVj<8jHMb9-bVQxx^*ib;3ifsV}{9j{X0- zIS*&J+P{qp5g~~dB@(@NqDI}QiQX2gm#9H>qJ$s_LPW4u@1m@31yN)5^5`K6Nm#5B zQ9|_h-sJZ_^UVC7f8c#*&YU?jXO8>quKRn=eSJUIB|4WSc)qrygIzefSZdJFUDcJ2 zbg};nuGH;9>^ukesaMhCO9{J^2OfM!W__Crczh6g-l`dQ0Qldg z;sum<8{9tFK{9u*l$p>2W**@T>ACXGwqeT*IyAI>yn zuPG~q?G-q-wOO>y_KHdLO(RoLy_rkD5v(21WJ}OMX-QdVRfUNUT>9D8resp3TqkjX z_fDR;NJp;~6BVbHA(>-o;Jx=b8e&rSr6dm2`Rqq_-WON9@)}lW>_WJEn^fEMCn7?O z6FjwK9Oi^El`2<~&hkh6%Wd?bnVZYDhMpXTlich}>2x#edi{Q2VRM)@GG${(Qg(j~ z#X4(BPf(e_6R0lcx9M20MuC{es-6p#@>9*e(^3)pC}((V0;Hrha?zy4U(;!G|wLS=Z`qK3;0_7-(Pm9Jz(v zgX^^Gb8ehIGjM4B$jY^Nbt~BgGZ0RAWe>CXo~nHRFZA6|g)dAz+6m*zbpb&u;KaOq$Go1Y5od;(p(gcPoW2v~?6IV}mz zokOi|HRf+ztktm!Z4THWxk2j$-i{5pSm*?eLo>zjXd^MLHwA-=Sy?K zCuHn~F{{M&df*g?H+>gxig8c)d>~+tF~7dIyu$5>I^ZR|LdE*SeSB=Rpd$7FUS#h4 zfWGK4iF1X>GcOeZTUtZY<3gl`^xZF7`(`mC3M=Aj@MLD$NNsf;CN??}7$fQl4Z3T40>!ER}!1>I&{Oo3y z<=oali3X%mM+5v$#>;fF+%p3yzUz~;O-W7#R%5ARK>2ToxH=Kz>i%K*dTRbYN8t#qXoFfDwkNA?RA!-cg>Y6AT_)25yE zDy)gL%WPBSyTJaYxSzb=L8Vpgbnp zblYEZFh3W%)*7`)*KZ`%^fs07AbA<`TupS67tIH$dP{`)d+A-&9AIj63wNQFzwqqH z!DD8g-04Ggp0@zd)I9gEf2ONU=7Zh7oM7XwXB4(*dfZ6Ohvbp*EqIr|o*Z>7#V`4@ z^m|UL)aG1ey+{}3$hO@|`u1Y?ARFyU#>~UYn`+|B`Kqj=r~APckv0rb>IauT|CE=W zRo$Rw*Gy}*|66Xci|R<5UG(Wms|^78662PAe7lyu{6?z#Z#(rWa+$fcRksckeL`J~ z8CK3iLi>u$V+`pEKR06K0}q|JH;vs)IIfk$_t?f~Y0za#&7&Mua`*kO*)B!D40-NJ zxgP&;bQ3i?tHFMNow)a7F!k>C1wQH%YYKvuMxoZdr1@_I$Hf_sl5kSt@r&EOUCHd4 z2VpvNch-hcK3nq^GIJ`Yxqp?J&Gc$Zcd83OkAxq{jhjkwi;YivX@Afm8l=PKKME51R8MuE{3AOBE)cVPGq_JI_BAW}GUXLm2d^B#mJ31VznG{wS zpmwpt72Jj$ld<{1HM<&i?OEg9Czp^flXg=mxh)Pk_5CCk>#I}8x-$<{r*8E(e6I2< z(|sF~P`8k8qy`x#{;^Sgx{LRf1t<0tB07Z1LtjB=PD{PzypG>LK`QGDcrB+}W%2JD z43JlKkk~gywLEmWcSl-?l(wb#Qo!QJUac~?77Gj&&{SZq=4fUIhhtC0e5FJThEoO1 zr0I^eKF3J#IvmT_lw6iV*gF$33_VDYQU#8qDtMR#I^CXk_;%*5;$IZ#=#g+*aciRprFJXnSc}x1a7$i0`3%V~ma!?Wt{xO}Y+Za~hAl zJ@N1;rg2#S^#*RSuX0jCsUV%|3gnt(>d`)^lah`cb=||ml^hJPSb2viND&G^ESnjx z`TMB^_>4vqI($*(ET3X{@j*j8LpW$~f3&#s39hEyhlJg(%kdDA6OG|fSP;x%l|0?E zS~>VxyZT5>f+od;pQf}3e%ejiyE7Cs;O?Ss&cz%8bg?Wu@CufxSyyea?~91+N)qVG zt|WkPT88Z!L&DH;detu&WQ<~C)q`O2uj-11I`qd?tGnw3s_nu$6j!qR=WBFSHXQTY zP+n;F($(kc%EZ5ZR8`BKS*UT*#!^+GdqdnbsA#I`4;y@lwc0CQxYM+IW3PTR5g5MO zE=(R|$VSifsjaZGx+`EU=sZE@o5Hs#S_WsfeNnfrKbTT5tF=rnnMlWl94@XDQyEon z)s_r#j6>Hzpa0&Hugxs1Y+VPw@H(W3@9S5~&&`Fd%$-~F)G9{(F%l1Yt~LRiW~LP< z!<0-UXN|XO`Gf9?OVD;xx!Ir=k##Gdv>d)*g_TQ@gLwj^@d(k6?P-r6C*ish`mEJO zkK;gj&L1H#irPPxw(J3-ioQU^N!sr5(Bf{l_Dg$s{JTbvq*-5-3##%J9iQXs15H|_ zk*;)prJ^ueEM3!LJ4@3{$^tCuTN>1j9iq}lP~4`6h|5AV1JvB?L-)^t7AA<(GaPiy z&G`X^miSWss1Ht@*=qU3H-?x`RZH;g7yKFlk;F6L6#U&=z@$DAB_{s`u)%)tL@imj zmuay8R#MrWJ~r(HxxhV-{TlCXihGwc=M_~G=y|H%?Zgg-6Kcq^Z4|!NP69L9qE};u z33eIrs>d-qfb(lbNf|Y0A+qrwgfgT~Sn*Fo3Y^}4e~Rx|YWw=D01;g75tpnLKND?p zP!3FMRka~jH~P2{4Q)$1p`0Bt{O<4focP!EX%;-V3j-A3>EM-pSD$Y7&9`dOe;#f{baQny~bd1bCc_5NSkui9b-z5 zNd3YRrDi^&O`>F8n8O>9s8Jy^(wm1$2vJX880lFZOgsCQ*th;4fRbwj@D?3a4;<`PYN7)3zstS5d*mO#F{EhXxz0l9HML}mT)pFKTZ5u^&M#i$ zHy$7@NQ*Ias9iyo@d_F}={e_B83=_4Akv}6z5^5vg>AKdjQPnts1EigLp6k8VT<1x zh`Cg>*Q9{mL6r;C8u>28ThYnHFPs6l^QLS$!KLKZyC>g7Ui|I~hT$1ay|>1@q+t2@ zE1}$~b!vgm-qFoBrLwTtLuA8P%8aDAP~ze;l?(ddN_m%v-szXRqDg^R!L`SjV^9;5 zoDRpneFjQ!G#}rvq5A9HQq$o#jXSgUG#6_JHD4ez%f7B{^*K z5gQx1QjV9kkG{*b8c$$pNJP2e=xY2`}_$i zl;Zx4-|bvy4q=CV7*~7Prndk7^;rN83b4e?)A&}*C#7fi21=fqITvjJBs|kN6)V#{dMYi!F zi#}*Uxpr_nyH|hcc%$xROc`84B9_{RU+CQr#U{|~%iP^3rO(P|vz4h=v52=N#O8sJ z8m!Gq#;Sa>p6(?DoEf_H=kel!J5iBZ`#wvP^=P6dq%pS27QH0ybC9ShUw2npjF&h} zkua9D0M<#_uLR9ZEi-V7Lxj4c_N9UrS{~}KiH~0{rxHCS8oc{4mU=R1{0pzCv+YX6 z>1RW(z&R_^y6$T9wG-Xt^mT1df{yPx>dqn1d2G9JV- z*luM!<{UC(9C;r)2xpkY3r|PcjTC4a2!5+KCOKgl;Bgl_{2I+zOgE~p3X^&tY zvt4B|yQMc~(oetLzsM}&5e0FO#GD0Zxp#cIWWpUs{10bzlz+TY4wpMTH*gJ3#A55G zS|dc&xU%}QQEIb<*{@E=!nWs0S!YFX?H(V!%lw9}=z*saTmxLu!8g9@N=`#LDrkHb z7!UeBv@*tVlU*o9sk9*+?g$s&>{xxT=t%+rg}nj)LWtIe)U;<3p?rL)oW~IfM-S-D z;-LKI|C7c_NYL*+<{lSHUJ$* zR#G4Orj~}AsKF(LO)Fzjc;7AiXfZa2Gc?!859qP*m;-P){ zT5(f86I0`whxS-#Re@3Vhi%(UBIh_;47^V&c<=zg4)@SQ3Ce94oXP*VtERiQb*T1< z;JiE)56WQn@wR~!*^gg|q(`@}aj0iVxa|q01hQxBcMy}(j z_r0ITl)#XfMo6Yq>O{tkmb=L)-$xJI!v5+EG@z#=Z30dIa%6$IA!2dG(o4s>`#Htj z4pqdpABgD||E(8>Boog`>*+@vDwz2maJyGOq)2trhB^$VW56U^&h#Ep6LTKG%#G&tve(p*Q7K#FJrz z5^Y~n5OeY3h1qlINc({3O{>(fx;ww$UBf%>X~_H8J}_j2W$TVB0di)~!%pyzxPjY~ zzs4)(dLL~Xe^Y#Eqi!^T4$g&JuHbC-*Dr=x>}Eg>4dlwHps!q7tg>QQdEK%B@M472 zcUj>zsdv&VBJ8{JpM;yR9ZkHm7Usyv$iP8J6PvXW!H~r@mBBL}TUZYQ)?v`X3##Mt*Uhg_ZW6&>UeVFG9C5gKHc;DETzwZ+Bv;(9O z`3MZ5=%F!&pjd&8o1;3o$y7k0e{JevBoPT11|-YaM3{1-pr}WN8Y7&{;6^F?a`bSY z<-a%PDq_F^by9XF0+wb)oZXWCKNt`ciVyge3B#>CM z9u-)G>?q~hypPhh|H3Cg0jM4Q)@IWPT{Wa>10_$K=ikHCYUYAqiDu0U$wLD73HuicB~E*#$y# ztlBNtrjfU*o+U@U_aRMk+^Iu@N!Um)^4g^d*U19c%>HN3` z1=r3I0*rHu`(ys9>ktB696IQq2%(h`OYs-jQA3es3vK0s z7?imi*XPJeGrA7~e_ppSr>R6M<~^%d@>>R`;93yc zhyP~F{y8Y_I57ZJ3A^mu8vimb kc*lDH&My5Q{KzMel8dcP?xv@BVW7uSZ_iLy-)^8rk1;VCXKG?L)@ZDW z*|>4t)&1O83Go%uod2C>hCMVP*Pqdt5)c#?YS&%yFZy}7hkE+B3I+e{s`D>J#*Q;t zC~V?40Ghv*?^ZF$JvgKrmBsFUA>AkiyDwStb4Y&|{KnU}Tcqnxh5i@47Ix^r-V1B* z0HN&e&i(u0^!iQvzdw@QgA^9v8`?caqm6_ach6AYaQD!jDG?I5IMm;LWp_WqLcCo) zeBHYldyGzK%>mwiuD-(RLeuqKEgZ1_zyb~bi5~J3kU!b}WWT`Rz)+_E-^GE!{(r$M z#QW!Hbq{p6p8v5ec2m0b`rp)Jfp>7=FZKR0UjJ*EJ-rty73Sw2+|&D>$?;R4|B%vC zOK21!KLr_!ei`zAFh$m_Tlf$Df6eqSLHp{A}Vy_ zM&`e+v183l#u=NAGZref!rOO=PpGSxx2OB6f5Y9=&o?Nb+xY%55=;C7J>30V|2?6* zB;4IEtXoFUsC7>ZZ+~}T!EdJ`%(?mp`U@R;Sa+L7hUVr%+1;gq!o_Aqu&;1!SseV+ zqYGW|KN|826s`y%p6)`>77Hg~VE1I|k+CG$-OE?lo~yg3XPCdx+`6ZytI#b6b{*&ux?&sH!o~yfl_w_sfE63xx_1uW`qzOG~ zx#+JO5nlHnk2kQVT)wCMzw$ZGwz1&}Ie)kRJMF2)YnS+SC-uAF@AQ8Z0=702W_EXY zUQe%ed(smSg$o~Ty6=BIMDck4aGyO4zwOlMcZL5X72%2f$$sT}>{nO#K-+z} z{ru+fe%bH8&5ys@Zx7qw$^TFU{%XI!{a8YeU;7QqZ~Odd?7s{DH&O@t8P?r4-0l0j zuLR{^>2EnTJ^2eNzsi66=@W&2=6lnVmn;5N{#$=_u|MtBfd#=U#NP3Z9<-DQ)lX4w6t^$gTM z^9jkke|yvI&hdD^-QI7Qf4({i%X{GeM=E>}{K^0Ot5Ej$-QVfo2>gw}-w6DTz~2b` zjlkas{Efih2>gw}-w6DTz~2b`jllnD1pZZ={IBtu|13@}HRPA(zvDCir~C1@y#Koh z{58(_JMQuXg-fkH6DDBk-^G%jRkR;&ba^ z|Ihq@ZNV?b-~Owo+TY3l5Cs0}2Y&BM9Z>%>07gC8(LL$!`8xj3Z2#rlU;V&LwO>_# zx4W_@pQHX?Zt{O50*1h-Dz2Ek8OnL@Jgs1xxXA#j~1#&$b zVZRQx2+zL!B`+pCk(bpyDG_M>La zR=Byqm&&B*WBRD|n4(eugW{%QUylm9Aw3JOi8avmVKp!_I+@#Rk_;O?_h8s!M?BrK z2i`0R=hUPw2-WH|h3J4!s-j1?C$K>Aw&hPJC<9w>mSLyU+Ei*z7z z`ol(^mjw-ew-yh>F6ew4#2KrH!^)CAbihGVkl~%8%}qgq=Jx{b^RhDZ>N?9E*(wE# zLbsq&aV2femxG|mIcPY-9?~04K;m;IG~1rCcunHrO#+cdS(kd-SS|0!6s0> zz6;DO2f*S6ZRqN?5w|*3gO2e$xOG7aMhuX{oHLZRe;p;jK}Dc4(-q5i@VKCllWAdu zDu3zhJ|M2VixzG*<&OJQ!W@q!aG~irmm-*hx*dZcbMsy5_Rx>MTVo8|)pOJ;H41`e zeB&(4p3-ret5Ht7U69!hIF2}T?LNx{M^_ESoOe^W$b09xGa5U%@jBBv$NG&pyJ{WU z)Pp;bmJep(fcKebbrfe~>0rSSfkj`A>=^x@dU(16dHFez8 z^NA2$lmL7ET~K;a0vs#R0__J|aQ5icu(tPSZc?w$)Md~UZjrAg7Vb8t2{G?E-sr_x z-|H&ZUgykZ>;$A&Yq4gI7?>&EqUuhkseWbxY~B<@JEuOQMv+svJ=5kv;-zxnK1soN zBQ~xE1XO9@pCi<_!jP(g=HO-usT5czg@i&)&l+u8$DT5j$AT;!(SF1<0Fk zM9~{+NE23@`{owH{E^BQK_7Ck@^dU*`7Hy)?v`P0eJNeP*QfDWM+NQ`+XeS8EWmN{ z8k}?W2L7k3PUtU!{NaYvxJ^atVUQ7fGxB5887ZNWXn1Y3Uv+=@)Xxi>x zkDvY5@#B`;;-mI#ba)y8vtQ@Ju^G|ewxJi=oK0>NXwHM=<_K=DWi|wTUr%GGDefGx z73kRyT<)f&?RSXteU*VEn`Zv|ZBy~bn*uNuv!MHDZUpliX%JHDLznl7<>#n3!mf;B%$A&F z@y>KUx{fix=&Ih>?iNbB7U*C^Ock7ds)X8xQ^Cs|AS7cq_Koqv{fe>}HbM+HN^9Y= z&pQwvq;tg&9Z}9~Gl)(zfmQ2=LELmntS^hBErOXCxHyM9?v;+`rlmvw1rhjd%|3k0 zW(fVA0V>|v$91`cz=gw=up)U6n!G5&t#<&DhD+h7H)HYE^fE3_ULPC|_|TX^8)0D9 zdT3A&f}4HR`KRkjxLJF)E^P z^`-jrGX?U~iqU>zB`oIqas`SS@OEB4tZQ<>7AG;-@oEPO_Qjyv`lD1_W&@IHMdX>~ znzxHc^F>v*;gsqud_6M?np0Y6^Y~P{ad9lHT~kHhC>V1S;`2eX@j7k3UnJNQ)C-qb zZG;n2dAMED9Jd_&PNl3KQOAQzk*BW9xA?LKB0Q~Op3y}5UT!0}ed72&4;{I_j}jo1N4qYK=tDXc)Z7T4bK|V}QIY>(m zo;>(%)*H^{krUMkp2ux)S_Thp0hB})aZ&rM@p*AH=D(ef)=Bm#d-jUpT+1b{O=}la z_1XcFifcH5Nf}CQTnNRjdUT@PX8QcxK3b%hgFBmx@T`pt-nAaXWwx)vOQ+nq*j^6! z$9F!wtjY&PyL@{7jut3Q-3EF=(r}^07J47pfKlStxN?3xcN8-rOZEl*lpTfZ-oK?K zbqc6FCl~jYWa0PW;2;2L*zf?roFSGFV(whvzo2Akw)-w_+YVNZr2Icf_Ytt-L3 zdn54Ts7`LEKcesY&$KLX6m}{K(9UE4elHr1rFjRajugS9tq1V=tEG_tb`$>(l~{N! zTYv`2IymT<50r{ELqeJ+-FmGbJNh*V-A2g zCb+!69S@0oC^EtH z=}>Py67ENpauz9jxr_x#+@tFpr*FXr-qLjbbC)oD@TnOKrzkZ>-{eT!$Y|=ZPM?a# zC%{bW6I9eh8^>Lc!@L1JtkYKlnU*ArWD^~d5|s-)9anDaf;z6jU>@)vc2W5t0mg`J zz-_%7Xh?%JUhV_r#*(M}q<&I3UN;#6^iT6o9oq>vYhQA!>|^mr*#J=8V+Si|c5(iv zbJ1NfQZTx!0&Vjv@#s4VRB{`R9o{=Ze3K5{>z2(;ez6?XKIC#|WK`h1ts|-xPlQWK zA2?~LEnLeJGjuCdg5fq6bkggya9BhOFYC&~@E!Z;yP1VhueyzYJl`1(ELsf8)#W&) zxQ+XITU@Yv$VG16oC<-bf(kW$;{(Hzr@&GJXIP|S20sSa!fXCA-23o86}g!P%ZJZG zz5L~vyjvV2h0g(wVaEJ|atH3q`k`PMlLD7U*;u@6P6dmimEe+Bj9G89p>n`}x_N{R zx6mpArKaj*$>fdH{)Z#D@2Nrc#5(SQQUVP8VT9`s6@#1EbivZWj<{#YeX8tT20La2 zg7tGnbi5RgUoCQwDNcnEpL*k@XAwZzEF5&_3f&xhjJk=;#n}csFvDOw*ohtIo~OFQ zr<5J=yvzf1e=sh5nht0$-U2f72n^i)f%6ZlfWmWA`QxIrky|?n@}sJ`3@cN#yI=u# z4!vw#F}Vf~tqA4wRxZVRMs~2H*c~&F(Z$AvsCdAZu9#;jFnTx|`$7R;y5I+@3bkMz zR0jD@iYVT<1U~$c0b2ZOa8%kZe4i^om0|H%J=6-8HHM3-g8|e zH_|@iYVgy3XPg06pm};28V`4e-OA@7QdI{7qaSgLbawHp-pU{`ui~`I4{%}PCa5yE zKPHg{(06biH#qbi4i5gaI4TJIgjH$6)di^49aB!XA{oMYXR(d`tq>qJ3DOp%1 zor#}chQgA*OknUpYXmA8s0IqG23nr!;y@opUb-~{f6dMcahOYZVQ z$t~q1mMnUOiuX%}3v=Qcwe|Pmz;eX@GlB$J z^VkU$ioFuc1q~X<1sl>@X)SXnw{sVe7tdnYi0Ljk{+bqGleP+(i z*&YIK2VWwaXHHQ&1qbxgXV2BQ;f&Fzu`X{a99o+Mva}QDOyUuV(t$+HZW^7l_ACyH zT!rQSu6RamGnJU6g9?xPk@(ONY_0!WNDR0Nk7BQ2-@B%GuWt^G%I(keZa=}`ed^o` z-Eo*Jaroin#_$TmFRd=*z4B%xcg47;CGfuX~b(Qd{Uh{;(cd}8gOp^QSMWRJdqe%0v?O!aI*_1;)>5|f`qRe21Oo130W<^e^)I{ zymnGxQKCSGMDFL}WuH*C<{B4&xR_oTs)U@6siA*ez;&7eXPVgRWjYqY2VDp`a{A)LcQuTetg7F=a z^ibpweAzz;Z{{R`gkvPa+6uTu(y>o^1uA_H$IaWi1aHo2(*bK;K)s}yA9>?6UoGnr zH~)}3{zyuq{eDEE!{$V!+4HgV+YVZ*840OFrsBw|eOy#k4JzB)Vg3HYT&|leo`$c2 zF1<`tDqIAtWhF}M-{#&+EQCoFxw!IsKIls1V8P%z=zBU6tIY!FmNH=s<4O~^q_`N* zX7oYjL>=5UU-&LBWyx3e2*S(j{LpH87B}CrhErHv0g_AtF6tC>&2HoItxPHOix@=1 zW}Xo=#%zG$pC>@mwkWRcC84YA4q@1#2%NaA5x>`(!MnOzE^wY0c`tWdpkMotuDzv* zHH(`$t3nYNbS~69GS3$8Y7EB3Dzw^_RVr;emaN;7OltmE ziyMoK*~~S&;KrahfyEZag7We^}5OApji}YuGM2thZ{FF(4%DmvCckA>>eaBt|AF5mkmKB@iDA$;cGf!nISvCJ3!xPS#bR- ze2LPW8qyU$hF!j#k92t~vhvHQVm5(zN=mTSl^T%e76*eP6Nq)~ezLo60~`CI8r!<= z;++@3zSQgl(F|FZGP@G@StyZ5aR#JLZUb@OTF9hdtH6;!H~P_UHan0LLRLLYW_#P8 zav{Z6Vbxwyvea+^k$&yM;15OE;d%x=bO^&WQRMKsO^iz~lGdQ1xVc==4Nj58XVB=&y*&g5k_9GWp}aO}kcOxt==5WPGJ+H8hk zny(R8RicLX`p7_Q;sSDh<6D#s+ebaOE3n22HKt1jl6b{iXn#0?v+Ktb1Z_VD61p3R zoTDv&m(L#V{>)))zlkyKy(LN>_cvnuTism(mgkJIdospi43yKFh7dVmmRgds_mfDwXK7 zw-i^$+~VRM_5!;ZGJ=lE?_Bk|6p--vL2I^;!-Dz!@Tur2?yL4TL9dyqC}&rKOSEIa z{Id?28Kj_Lw&cMB?p4q{6Zqxrekf;XL|xm8;8OHX2un(Zb6Os-&3++vl>6huvtw}9 z>?$s|W*b;q%;GL9)zAqbilIh!6lU*%&D4%7`Lu`AysW|TWTUa#l2CSM2d!BjgTWK@ z;N$fOv{>i|Q-m=_fz2SC+}D;SEhgLx*P*c8v=VaV%{i5ws~~q@e|%Rp9!xHqaa*i- z=)I@_k3Y(Wb4tr_W8bucjrR_5n=5DF3av)!X|xq}=WXYF`H3(zI~rVrl5tnK1-GPm zEUw_$kl@)(Fu?d860gJD)JrQkiDWITaXe=+63sw0d<>4584stb;z)dwEGRj=#Q0ne zpPySvkG?I#g=La#c6u`UUO11_EP9bTqbWo&+!Dsh_h$=SWHEmIM!M$3HGC*K7B@Tb zQMy{1%{&rC62X?dH@JW`E96*uL@&~6Wk98eIikCmDckM56>IldF{?9iB=^xU;`MbG z>L%$?U6p8hMm7feH6DkWFAs3hm?+#d=Rc;$To zeKzzu9#RU1@@a-_x_bt(x!whb?Ox%ct1&PnDU!|i|A;QnBjKogEG>BUlH2g)Jv|?w zN}LU4$l=FRShDyFw4i-iu9i4^lW#$ z4O{$2CM#GqihSyK2Wt20k!+7H?%Bg3WMNbT6kYv-rm;n+AdG#-%?W1JGm7Di@>3M? zGbG0+>k;{CO)~lq84_O}jdO166w!OW$UiS%)%yLT3_{-McS*pW!s zIdV46zi^-1748m|0kgsUXal4)rm|D*`C!@Z!JZ7-$?+AHz`I2ScNN^jF_x7eTc}So z0>+X@LlW4LD@r6&DTq~VyTHBb`~-9D;&An}acn`D7Q7Al4x3-iCy!T_qTVb$w5f1o z-})Nk@+roo?Z6ne@orx>x4!{tGWH`kLSMr~4PE@AI+!^fp2;%4?MIzVC3NVo%$^+{ z#2RLrlFiu;B+jdoyExv1N)W@8-;|{@+OgStD0ZrfVke@XufQ}V}qkX|ye&ys;v>uks*Bvkh4Az`z z?7GxNore?vTK_=}PsTO|ovNebFY0jP?M86JUL4{+Pr5}TL^SZy>smC=-i48kLHvi( zHz*ocq3?q@&NqH1w{zkmXnp)xuyw8r#v0||m)SlZ`WJX$CZHAlbG5LU`LJ-5MWCsoMY*W0PrMtc?_$P##WZUgJ@>oH){APkR8 zK?em{Nb_ljeGPsjC=cgrrNGiD8Dy)TX-;sz6m!^Lm>U6yV4gib(jlhe(#d$jShbsdwQj_I<$kT+*#(FKnk^@T6Xiy@X z@luw=MB0%^S#hXZe}Y<^y^pgkt>MgS8|bIiiuEp6z(IL1`}nmC@=j_K$^3gLVwM6g z%QRW0l^D6{vkooqnPACyKCUfzhWnpYb7IM($+!C6tZiZ|?6R7{iZ#A~iunm3L%d;M z>2tmZwPD4X4`B|w4Z9xk+1jOw_~TR`_HFA{=zm>~JRGVc^gByHU6748K7Iqu-Jf84 zPA)TA^O+m|$e#_aJ;2FNxCA@SIFNCg8l?7R8;z__SvhXSu(ak}l?P}z1!vj3u+J`kQY=e6?_XLN`mH6?}n;_tl8jhX% zgNE@aX#8jfy)W|Yi{ClSzpw^Q=(XbVeVK6Q>MeNIlz>*FTrm5z0eQMQ2bz7;aJjtz z1K#b%u(g^41Axem0&(*O;=>f^}qY?L-o|Es)CyiKgNr#&A0;k4?98!v2S^ zVu14%e4C}lX4yrNK{k6x>2o=(`!;~RUd4mFTs?Nj?hKZEmSt-mjYdabe~j~c4$D5C zCUzDdF|1^ZAWkusdph?TO4Tc{cfO+d{!Ao26CA-+_Y=m47pswCNWcpQ-zf8`hv`?x z(?6Qc_@Aqjaq~<~{vw+g6uS}4xtN@QLJ==8Y)FCH$(C^2rUC0Go~DVPvY>R>d3qEI zxCsM7@lE_{u-y7ykoVS$mY-u>)z0VKf;Knc31f~AzDwbBT@~zfh@z94H)5x>7w2|| za^Yo;uzBN7RBw{u?6*CkD>Bt-^OsUs+$R||Kf2+x&N#q_f7f*)%>j5MQ=@1o>9NmAqUA!-VlBkE{m* zeo`dK4~^oAqF1mpPaol?!M3a+R*q~+c+IVTn1j*l77*W8b*S8DIdQwENOW&rLYb)e z#-`3J_SAa{p7NgtZp9Dj{x{NK`XK`|L|lp3M=LZ}Q4`oLaR8TQ8zxbHk*nEx83e1A zF_pM#ICL+JeNx{+bare3EIq_+IQRqJ4_?aF_A`dHmwmY*ug0>%5#PX5!-HA8n?#=6 z6J_#td*SZV5p;}BB2IYkf}YdF2|2Z&#YSaA?O8Ear#ptM53az>t%=0HfI1gDymjno^ z6xiGfz(2;v;)d)yWM705@xSiR_}6v$BR7f>ea9N6H)#l4x|OgOQ)S>tUK+R@=^(jF z29m^WCMi z5zm6u`jesMW0=8`Eo9xCiCCLeOT6=CN#BFQ^`g&LES}U3Y0QdAM^r<7rhsKirIM^S zp9P-^hZCibL&&C;^|Vtj1*b_&18?sVoO&e%)=k>Uu9dYwV?aE1=x0K%k2Bq}sZIq|a6N+MVGOH}o1?p{fE&Cj zla)=a;_MPqxN*~sFgURfX)E%kuC@d4;Lguj*}ejXuf7M%){bRQZn?}VQ+V4kkGs<#PzWwdmxP4H$K@wG8d$>ruQAx$><7>eJ9RZ!e_Jj ztJDcTP_#@j_P{f*vT@Gf{$$L0!tPoaFm2uGoWtWJ&eA~#SLi7gFgBcX~bKuVbD!M zuL~T8iCv}cQVJj@enBvF_(ojUWsB1a1GudX5s-f_5*#cqQ-Sn$l%4Shm(qU_jMBS9 zR|)rK&bKAt`(ekq>n$n#uwX#V(nM@M^pvK1Zl(J-i(}9vy@TVYz2_RN+Ub+639znN z6Q(KawQrN+t_jK=R09)~FkewUZvg z>E=&V#oG(7$bY249!2~_H9m>G=|y;pW~0??Q+9g(b82cakW>#2hotvrEYa5&AI;f| zN(rhY@JlbElctRQ3eRK9^&j}6(2c0I?E;DTBE<*uBq3qqKCa(WC zd8#-vi8CKj4nyDXW)4pyapjtcZ0Iv7vhs--G3)ykUVc_3rw8cMDfy~IzSEFwiao(T zIK9GEXU4N5ipk`eUW>ARpD z(|CC#(5Z;b+BJlQ2Ij(q*E5KmVJ$Q6n~$I`t9xKxH z0M{IP9`p(ju5~=5SmlaEZ4ynn3*5;=?YU&fYjOOT?+6;H zrg&6hF(%IZ1lE_Aqk+S4qBy0Nshag6Ro)}Htpi4*XxUf3?d=cfcWEyQ0_DjE&C6KV zbO%Ncn$EsY&*QeKM*`g9|DyQ`SR%k6-{+498t zuoAN@8BE>^-_Kmbj-$3-D!buwfs?3^w6r2YY?^EYmD%P)Mjo2X9=?(XqxXxMl9U-s zTe60oP!_;iO%ux*xOTW9s;8*S0{HVV6nc2lJ{ zCQ$sMgL^Vrj(#+X!zu+e&LF&!<82S4?_1MAM63wEN8N|C=qz}&wFKXGDWbJk9k=V@ zdYZJY18y#Si_c1rp~7cf+&?dsIN3|#j{DBI(kdBq;u1KmkA?7If<4LY7eo)-9>Oj- zRb%Ia738?TD&0`x#j1)-vBT^Lo#VEOXspbIyJHDA=duOsJLxFOtn?zo=Cp&z!$&wF zCYpZm9>_B8UEx<8RK?L>tEptkLdB!HhAD+y5Yenc)EWo)`-s`r#`oGrzFZz zAa@wb#>|7Xp#`{uII|+rVI*{H9j=Ix6uukohSjv?B28I_sxijM;lDo z*@lxIR)XW56)a(?JUreTPhK|qAZV(?W~oao=F}iEZ0&ov!AqxZeX3~rq9V3;?PlDz z;sfxU?@)GBkEF`2XVLTCgZPx!;5x$_mtIsRo=)XV#%3orE_)3I@eHNHSCNhnYniQR zAxzj|Pr@DyVO8Z7MDN*XwrAor)<>@wn{`BtX%1Jlyx%;6J-hXR+V$H&jJG+ksHB77 z79!3rM5(j+H^#DA=1W+|>u}4%5lfjlFA={SG$U<4^w{%tudwmE9e#J;NBu+d=$4sR zamg4B%jBbL&>&s7u5~4IHU^Q{`wvm3ACt+?T~$k!GAi+wS**p^%R|U##q*T!VE_q5 zN8on)O+1m9&RMA0px9D7I8d_(28Dm26L;3YCE=dU(oxmm5g`s=s`b$PVK(j@y-DED ztYGNdIJoAjA-F3%KryPWo{Qg*2BI~5*mf_T+DtJ-Esr2den?vXs;jD0kR7sHsW zRH}3#5hT5*LwVtGd~YgBwHvE(j_(+-X$wL@^Bw%$_b@l*S_!PUphDR212`gZI|j}S zq65agZj6k)Ca^zY8@K5RziSxo5Q>|$V(5r4KFqZ| zj~CtYadO=c{NdtBTyOLuoofp5+=zqtDk2?sNF=~m(O$F}#F&w~Gb1^OvmZDS^XV#N z`<+z0+nR{uOe9g%el`wYQ`YELr^bpSLg21-J$4^DY}HgD;|5%UQ-ki{8RwnY=f?uJ zRr@$5xq0EbhxOpX7?seRn8vvK6}GgaUWP4SAdDXVuc#EE-XGUp6aOwYC?4?NbP z&blm)H-90Sp>GCHM;UON_9(Guv#K$PGn z=;>vw!Rr*psB|%9Uo}V)#1NS*Ex2BKhjyfzkU+2LBz@)sjyGL}otRUMLnI}d4xYIN z@l(Ue5YXb%D=M(V+L_!coJ>AjU!ke*dqYCCCYyWv6uU=S;CxCm5gjv*#lLyM-`mH7 zcvmEYE87ZAkxR*pb#s`CQ57xv_zrS)@xQE3)>e<9==Hflcg#!cI$OcOf!>7 zbA4!`j5@j1wG|7NtK#l?fh=IjMzVeEeK_JDjBovhk_VILvw%A;*t%dP&5?`1{%_?- zspoiR<9P|PAF7hUSz&zXtu&tw&?0wQx^9NRlkowXPZC;eKY zu)p3dpc*!;@ymUT6TOPrHY-_0=@`rQP2-rs-SdLoDmmQMGg5373B{+veV-EpOgIs< zg%H{G71w?rW|?XHDHWD<{P61pKkEO+Z9OPnL${0 zb0CJ~8sOQRN6;y70^F243!iJYcz&mx`+*sLHK&OP_USAE^xLlPx6EqcX z#vHcrQWL|e&(#G{%kgVQzWR&hT+P^uHO_6=V3i>uOm#tm! z!f_l)OW6uJm(1{w>apZR_zDto@)9~8c4r6jZn2R$cbIqF8glzZCn&7qkp&9F$nUkAO4R+3F$IkR>N{Yy1Qfs%69bO!f3wUAvdD;l#t+Jk&KXxJKhD!0TifJ(C zXVOiP8q*lFPas3Ds*}$XJ&_sf3apl0fH&=WehB39q4S^mP8WYxf65Oq8PGQBg&q$vYH zBQJ(snXPX5X|8CK$>lg=9P^y*c_U6H_9kra;$>vS;}&vzXd~6+-DMw(R4gwShB8iK z0{Q5Bn^P@pK=}*ETv;n|)H}(Q&$t8l>^bwWQX&e{er)a74mh$tiv;WrWXsCySXb^P za$t|}UGZuNsj6R#v#o5Ywc0o~sjn7UQa)7pEHaM`=VDm;jv7+(y%klAL&($PXXr}P zUTkkb83rhbkXz#O1uw1)V*6e!V}ploB;KaEIACTG`Iz(;as#}v+2Vx7m}C0H$5Ikj z_1(inmb$S~{lZAgwphrKb|k&G9EXbZQyAl^fmebgu*(>OhH+DS2 zKi){1Y7>cQFH`0#Y*XQr2Ef2Nnl`hQ5sM_4NT-vmmXT!O0)3)#%a(j{FlBx2jKy@L zO!_6lo~ahRW4+J%aM}~3$rGgvGFo_?J?P0g(m0W$FU7CY$}>7Fc2EYhUObR}c2pzc zQN2%@O z2UO;*7(UM7;QWF&7PoTjK>n#cj<+nu;$dg0pduRPcuj?dw#69KYX(;7r(#WQG*>&q z6^34k0?AVoaZ2zZj4i2vX`iEn{z(d*9j4-dbXm44Ku=&j(gNO1OD9unLQpoM2@4W* z@M2;VJ{akTB@+Uny<{prT0RPIi+#ifqnYIT*hH9fbtG{Lo6NPC#Bmc);)F<(#l#wx5=&u6M?Z4rd;zSDuLGIv zCva|T38_84QFyNV0ZP`7Y?^-I4AZIb62=<)5w!!}cR^&GGZt zzw9L&HL94E?I|GBl8%FJ*%dJBI0cq(lu4VcFX0?!;oa-0>|6gfw)*h|7S<3;x@@m- zK|l0JxKshSejY%UCafZZ9aA~E<@W5!7Kx@^wlZj#(m?v!P9}6pUZZWm3(jcp0Cau1 zh%9<~hFU5j+xqGe%l?>&erx+%j(bo<^!m;q$K5ZZxVebn=!imqlbKL~LB zM4G1Qo+Cpr$dS+udX2E>=tX*>LKIT055ei+GBo*A07~C=F|7W*a6fE1oQurFA%>4& zB^6OHa|>J`0wE1W<)OtYO~@xF3+Tq zS;sh|AFcdaQ_7z?Qi>aNdCk?rOR&sN59No5pslVNZ9Zp1x8xY$rxbU( z<8TJ&pk0R-GW*kgo$0_&NENh;`k{5@W|%lN6%#rtaYfM|^tnI+gBLA;WpdisE;66y z@TP$1Wa0UsC$r(o=f1FX-U?jZCI)4lZ5FAIoZ#6NEfjix7CPAi*6~`ny=R?B%jDhA zd_9xPKHM8781i8BPI-3qlmx3R+lIHpDq+>F>Ga^@1thLj3D(Mmk@j6J;QeR{jvxJo zE!Wjy>XynxrC=Ep`5c39F;`(|r8eEvl1#qIOeF0lV>ywR%1vuxx3Q+vo5=A8i}{9X zeaK3$<&avT3?ff@lR*m~!Ig~+U5_a>jg(7bQ4w3n-LY#x?ywU~2|Lb79*^SIcl09n z#&^NMiL$u+RI*OjQ$*M8G>B(rk{FfeIHAm) zRNVPM7xLybtsGH7RFmIwj}8oJ8mlnEa?){G*7k80;rIsZw!$YmPF|a>^2lSm5+A|) zC9Y(3x)oV(y|PqJ@~CLRyfn%Z<)VX}lR z6HDDlCCfs|Gq0n}s{eJ`XSY5{lae7)>5U{n=wEb$c7qN(jq~T9g%u*v1PtZbKm!<%xLDbUUp(eGnE#ZiUmhg=E}B&U&^g8-FJSwF@&?IW8eO zy4&$-+g`bD%BKkB$3u3*-HcGwDyO$it)+Y}yoQl5iEs+dT?& zx#=WQt7c8O8X0zI=t(?cwTa1}`2X5_@2D!8W?h_MAW9IBAWBdH5hW-hyQ@J|6a)oD z!9-B90tQ4yRC3ND0uoh_pd=&gsYWnk4wwaVLQzo6;WzK+`~J?l-(Bb4yY63St#fCu zneLhCnLSghrl+T>o~OFujo2mjAt{N@;GV(jNK44Il!MXN57Fkr=UnmKC|oy4oCS#Y zaawBpr)2j4s{xPlpmlBvl&6ki>l{M(vEM?>NGJw5x`#AQH^k3D4JNq&V4sm2U)l`dlYF{B2Q^zI|N+4$9*b@2EoFk7%rtx8E?-xIeaP@Ov+~W z9D>-BC9~-UpAM1|qzaL!O{eUYXSor^bn@pZ)aT4G{N-27HVO8y_>ZUPS#02B50!&@ zpo8E`!z}OW=T|GQ4Cb4e1}^fexZG-KTCU&1E%>KXlh9?+gzxQded^q^UNeF zVc|3s-%p+eh-jci#~8%Ue)<>H$QyP4ai3cAkLi7u;8fozauaO8>S51xza6Z#nM&_tBT-v`E4>59xz#i(YUi4%)Cq(gH00smWa83}{H*0M1Zb z1qF`N>2J|-OykBu7`NgeZzDHj51l`u=(-cQfsP_+9n+a;m^=;50V;1F#k>USRQ*gC z{a{~$$$3BV$i>SjAvTR{I3Ui7x0O<%qAYETQD;8}Fob|3G<)6=L`4tc`cn(Ncwcjd z{7;%xyFw#OC(J>Z#mOF!3wG|F@cnhPo z)Y0zsWgKmrN`8!~ME?UrVIFZq`A^$%T=#yQ$YTdT3zvYhW*X=JLK8J?thw4ddm*F6 z33Y$0=Z4qRLWXn|o*r3+Qqs%e;=wg|>F8!`6Q6@H{u${gp3j}%Pw?c_@4|AMd`?49 z2(I#3Lc^#CB=t{-xz-@u{P8LI`KBJ{xa~z}trW=nv=qX2+F{UR3$i--8n?8^4;l&^ zxH(eW;kb_}**AqQXP@I>%{+BM!tr#$HQBS^T$+tpKcqmtJ+fI@wi;Kh zt|B{BV_|~t-ezDb^xO9fn4zQv$A1ooEbpmo;uv2Zf7r!|jU6L2SulidR@pVBOydpI z-#>-9(IaU~Du=due0IwEgtNN0EtMX4zc@MVq{3+nQtd6%XzoE|}6 zPF#x%Z^yE%v2pNt)F67yNtvbC@Hl9VW+pN3IHgTrQRLSm8hzV_jR?1A6Q3tTqCpD1 z;;hGv)-^!nk7CvkUP^DS9K+cZyVADkG*+S+%^uu63Z3D0bm|f})@hyuFWC}S;}}I} z_^Q*HLx4J(rLbp17vWWn!@|-WE7~^xGE>hJgPA2gJSJ%^b#)m}D+{V<`@%Ff=9L%= z`WXV+x_U6T(~muGOcNxPtFy-!mQbbeMxo#FD(VybkU?~=P-mMWH^*i#YU+eT;Er9O z`}!H^4N;^gwuCOwCMC4ravxg^4}uH)cjls$A9|?@2eJp zDLcnb1s$M+W0aWsDbk`6GsNoqlmLOZ`(D_&b0E%dpiJ_hKD~1;gbDjs(8kJ<%)L^h zMc5cm)9z_v%X-)5e%BJZgv(-1j>=H|u!AdAZiRz`>%pz@HM?!u z8JDcer^zl7O!fRBHqt_gB`KtH%L9i{+q`m86CuIGW_8e-xMKYMZ5fC?D@T!}cy`Bo zA_@Y}f|80WogwuI9Ya^Z%r8f&%{faZ)s{=fEl{8>U`Xe;_ckk5TOB*%2; z?*hAJWwgn$maWT?p%>N}@MEHQ{K4C+y=tJU z(UMLLt3W?z%F44xP!pqNT&{c^E-u>(I3b9>dGG<}xB9a8FYM|2;=_Ux|0uk+<0!nJ zrh^9`+2dGE13J>92%Mcg*j%STrW`Fo7goO}S^{h8ShN6-RUO7>AInhd%zl_@VSo~c z2eCLGX%;51#@zSQP-Al?Ju=e{`xBCI*Ao}~wpRn+{L02+u>oNGeIPr2DH2;1=fU>q zW*FyopL>_%oc11+m_G7TyzImxylL^ zU)aGV4IQkbCrQSMT` zM~y=5A2nDQF$mL+sA7+5A?K*Q2q&j4#g?3I&i%(RVTblDVP1_mm#(rMa=hPjDQ%@7 zwLKLcs@9S5$76_z;V+I`GaKKZC=qO&I0IuAr||c?0$jsy!KKBmWa-8nu(xeN{R~qW z_1z6~6Sm;@bJdXV7mtr4?WltNT>4jkR~)qn?uhEKmg;P5b}hl-CKtG8!ce;Nwmd$V zWCSm7x* z32hfwW8%-2GADiuHtr(lOarE+d|qkp_2XZ+C<~tTI19!`|G){GJ2>bP?OKP%z7s8Cx5nq<=-s=TKo`Qvs-ANa0eT` zSr2p+R&t$bpJDB*r#Qs<5-6PChgY_uKqXCxx658rm;F*Lz7`_X%(e-(w^TA0|4Hz0 zVkKR1LIq!M83#|*2Qf#U%i_hL^~_sqEB&3)g6T_4S`2PA(EeG8)KDuOYBzV0gKswUrRS!&0uPp=Yjoxi=GR&!dR1P zd~bA>T^}X^_g#|7i9?=D;@MAn21Glw8s57mo}{qwwuY*qo1>wujpIy(DfxO zU0=#(Ms`42{xoV@BuyRdI(hDfXcE_$NwJDC^RIKT-8dBHp6kmP0hA9Pu zpMpuRqy<-ZrBOeZZA`vu94q+R2o9c4&{@9-91rWz@Duj1@+Boo5gOnzC6qQ5EoB$p zFJwnvkEWv)Oj#Bm<9Fw0Fpc>69Me{~!O#t&LZ3AwxkK(TY`sqm8~T1QZOZ&a1&(;?Q3r0&e0Ssac9Xz6QiD;xr~Eh2j>QDsa@y0>j&;+^nVt#Nx*? z+*B?hC>zm5WF~c!eXGjRYpx|X%BB=cqz`}yq&9C(*avG~m0|AOkzn^~5+3@!8@1G3 z1*I!_9F@x$!78iM+#s*L@N0n|wzThpFE|#%-<86F(udsgm78GV_yL^3eRp`Y{2{qJ ztz8(cd67GRq?QW{a>T^DJB4zaZj+a_Q_++=k4o2Hp!xLzfqv~6kUv)ogUjUD;Mw;{ z-;NS|{nQL<`X6yiPCe&Vv`fK;ksC3v-G-$?ObGHs2|q zyAv>*8YB&3b*}leZ{T^@w6GB0>?;IK^)g(YHk8%>&}ZSdOquyDD|-7$D*L=6nqCih zg5MezLbG=~v{#;o?5~u$+|Xdd<9+aerwiR(zJ{F`qfF1m4q=ix)OKAV%^TS+;cd^VJMm7j+llPj4QkC)o{LWkv#$fvt~GzDLlNVXI|@1O@a&Zc*) zZ({sc3wlPRo~>DHM@P?jPfi&wr@gWV@s;PG7Qu&hs`Bm;RPM-TkCyh++s-T5Xr6bW zcK&DB=NSdluE-LzRAgVeqcOXx7dGG1W5(OrGhclTVR=aulNNbebd=m#-5m41V{E`|AHH6>JftKdvwIk(Nv8Mm?RENM*_jF}_H za>_NSPyALYe?tii69>bb+)_B7a0K_C*~}g93uVvj_XsXme&aF=F4M3=En;$N3kF&Y zq)+8WpyU&O95OK*C3+XL^KlpOvCCwLUL<1m-s1}z?Cr;mTgKp<13JPXmzH9rYz=qZ zrHbs*-;Nt>4wKC8F7Qum#CYWr40Vgdbp?Zo%!o-?^W+Anrz?isHq1M6k+{~#@xi36FS&~{b zABPhL`r;!6v7uF5`K03{S9}(CHrxXa7U;vl&0#3{b`rQOC<5E#eS+v(6s(-10wG#M z@yYcf?#EJ|$ELY~)8p##QK)(I_zoZJOVZNv#!l>-QnF-du(c>yJ^N#AqsWR+;Taci8k*i~X*!!e_xf z`10aMywWI1=M^ik*WG#4?@A<<`8|vo>Bi8n4^!AU-B9e;)5S5tmoa;g2z^uE%Eryx zNZ(H|he_^T_+nrgwSBFFK}Vd}j05w@EM*%!zF(R~>a1p;#WvE?suT)PGUy$c2(m7GZ}F2HpI=Y??9t@C2P|Xr~XA-utaq+ zZ4o5m@e9_l@JlMAOY#J3!hjtx^rMgN#;~amV(GaBZ@48%<+P8fF+uZ0YFvMp$+|Zq z8${U8pb~mjzk&@8@}ZwR24Qh!9GRgokd$Z4rIU(wvv*c9tm6Iz_EGL6m6x+&N3Uqm zGYK|at49t?8Py4m);p-+<_$JwPzkI`QDz%1AEvDl_b~CBHFY^Mhy7^bn8o!1dYZ1L z5lb#G7l~3zAK%A;62s|=mi_QcXCIk2Xdt`wx|(fmpH3@4`Gh{8C@vVg~ zyjO7{@0WC;l$9zBH76`3wHHHVQn3EhS>YbR0@~iS1Kve&L_*CH#YTU|e7*ZHGu;nk zBv!Iz^4~#vnl&9cZwT!ePSHccnflv}!-#f8w(`3>J}z2>K6B&Q$N67j#peVXe{KMq zsV7H;u{u=tLo*(`pvp9Ai*d+iMeNHrW2wvT!EYaZ>h$(LM*6IV>`FOm`rHA7X6m4` z^Hn@_ebp3jSc(%bPldI{X0+4J17#++!h0hn8gl;!3XcMm{i zBIA4(`^;D z>aF&${AMQ_O&`zREVk!40~Og}p7+Y*;Ys0qn?@?vegyR&e?kM<`N9pHC>ANK=e$m* zqV}uTq%vqFh`$WM+NGzsF3B4tV-U}UXuA{MA6x}5OtYc>eG~+ZkcHTyvEbV8hKdW5 zxsu_Au-3o=wcm*fu8T=Pw@MoHI$C0_e1B7j_a`zkp67yjdYZH6c?fSlQs4p`55Vc~ z7fAC;4OB=7gZ{t-d_5@6iOu~Bq&7yoVJR)`CuO{s$^VV0YsG3sOw zW<1Tox333N=YtV!{B1S5!TKbfYIhRT<B`pZ~6>qa%B2p)2b8j6Rp`!lWSrU~h+ZbArEU-J&{VJRK@bPg*Vp30iFlVE|`6&h5tfgRnc zfNxsk*_p>bNJWGMR;bI<&u^31sVBwE?o%4f`goV-OGKi&Q6#9njc2QuNU>9LigZWv zUh0@@z{YEz!0TsaX-sqq{hT$qzKx%PG9w_gw`{_xpxx+_n*2KX=^x zUV%Oq?iTE8oy&f7in67lmE63kKZWvqjH+GFAo^r*D@-~W2ck}%^h&8bYY?90^lQ|Z z)~iuC^RN{TSlS4)A`Izwt*hkZrDB}E*p%Ml@t`K&8G=0BpBV8j7;Qa!$<*KXV9#z_ zsxV~`yS#BbH*}K*4NW+}62;G;?w#kj{r-5gjb6n`KUL+i3yO4HurpI!Jy)3GVMT{H ztYFDGdBDBDh%oykzEM|1)cZs%gyZOhix8*kD_3yi-v%*}xstRsdMvw_)QV~w*C2}uq-`BT zF-Kd1&2Ah;m)|mjj;=P+&{oVf`Ssz%ozAE@AcMPEmqd>g5bTu75suvRf#jU>Bzu0= zVzSO?oZ&wmRFB`_e(9)i>rKxIXY-t0ALi;crx9Ip!DcraiN}C<2BK=i67=uqIkP$$ zahB^5W{VHOaT~NiWMiyg-`g5Iw=_w(nYZ$p_d9UGam zHB`Kafc#adJZC`$z8{vv3DcCDMe6TzQCr5sw6BUdOMNY*78iqW-WWW(Pf=i5sSSqF z2hjddw;+4V3C?sP;4&3aEXn#VA%kj`>7aLVbZh0m5CAUwwapiE@T;fJkzVH~-R2{nEt~N9J zwv+ekmf*PLUQD(32eAiJnW^zmT6T9W4YiVGUXM4^aZ^K>yAXc83(1*AcX~VVoSMAnK?Pb@->(fZ-F?8pGOvWIxX+`O2*7K^6INCT;5sV>do1fz6w0HVpRC2RUs}8M=^a$xxOqpTxc!cYxpa7HW8L z63g?RkB>$_W~WT~am&$+qZjj>=q1xoR$;b^nRG{xq9c_ws418{@G(OD(=DtcWB^_9 z%m9~bah6Zl7GY1$23Bug0{FCo4$gSOY36#s@iA<)Lg%Ri6kYH>pDTqUA(pe%nWED` zE#Mq-TM&Ns0KDtG53{vOS(%zKen?-)MkKl6iOU;lsM=*P7skD)2R&-fs2AUl)#1}@*)Oy6`!)BI3drX5lZDdLx5>(+91X8$*#+~poz*(HiM zuZ<&xU3016#a7xdl!uBigy& zhRccL^iEviu1Bta%Hm^l4}p8*CGh6C&rZ%*g*)a{fx+*O#Hd{odPM3;>qP#WX+Sm! z-I5JTLTB(BH3Dswb8x%{U?-1n+L;FeE@rL+5K%bt6?u(PFrD8GqD`SzUYwjVQzLO|76m zZwvi2eIJgVcbNOuJrxajF2eX{iDa6gF}K*$9gA{3Ff^qDj3<=Roo^CxjqxD567OJ9 zfjm>#8Hkf=bMa331^8T&3Yy0qXcMoeX3F(gTO|({r_5q+>Td8nC!52P1wXnsf7V;G-I*~GwE5$HSlo!eR$N@ zf;T(M*{$s=bZAsEJ(jwh-4t*bIdeR#maL>i5MOOwn3a(WqN6U2>Nk-XZkdc8i*7=Ea0?BXIfOm!-2xxL zhBXcQzmW2;-|bl{Bt14zpP<;``&UEXV2_RIt<>$jtKGp=)zi;W=f z0go*(xX67q$Y)dcjG-bONf?k|3N|;jneXuox-s@4S3f%$4_{89EwxDkf74m4`}{Ey zwWElPH@bkOBYjXapn$%6r_9>26EQM#CqVoy@=|*=)Ap2siC#}hVuY^X%d)+9=r`grsA0UUd$nrH{S1f_%fFf}*J@|^K*vT{isPTpbz2ipR08OCC_ zdp=5iYeX+EWB9#%9!^@b8V?L~ho@H(vCm5phg%ceS&{(0E(6G()!m%R`Wc|_Jd8X@ zU4;#4v!K1N6z7zdgR}fg?orq@cw4_1N_)41)rTTZ*~OaN{a}M%?Lxub%?zVwRAAMx zbQl_w0^QeN6F294lG&<)y7Ix`yE&3P5Y54|C8=b3{8$W`XTraiTyeCz39-(b!gE?V zpwZN++=($flwJtt6n3u{Y>Pj@-8@k)@SS0c-;WPOb-_VYy>}3NYahbx z;Wt2IYX%wgZ5|hMW*qdazRsO&ED=07TnKt9hq-O*hJu>mD|lgTMAr^@#rY@8(cLw> zaD*|3q47Sfc&8pbIABhqA)aze^P%wEP}&vz5*0J9a_^&WW95`8G+J{4hhE=+`8!TS zc-Kh!GDM1=dbE%p>yTgtW|KIl=S!LD_+dD7^dy+9ZG#41GU3v67dqT*8EyNaOm9z` z&oscD%bm86ZAeOln*&{d+o;1Xz3PWmW6k06?5R|A&t=ZDS(EAIKLOvBQOw-D1P?Da zgD(F=c&EP;<~u%tUgIV7W79`sQ1}gXGc$OOc3n1Od>STfk>w&rNV6L47a%*C;|{JK zK&Ss22xZINFx^>JwQdNbYQo+15vMHxt2wB;C|#2 zX+7VK2VW(?0>5;8b$l5;(#F^$oilg73Q#xOs9DSG(Se$4Z8 zrFM%8*b|9Qq%2&Q-G#Rp{85e0c*|qKbT+a}8?9;g#*^sczLbtR-G{=wZ^)CcbGdSt zxYfVKsZYBv>{d`?+ccHwg84kJ(BffqugnPOFlfh`STmx&^9a#XiHF^@AH(4_Lvi_t zE@-_njnye?!u@M@^rf?p;I1>z<>juAV3H%}$&%$ZC*oz@F#2ls zR7kEX=5gYip!VAsxW+jPz0BwFv3Vi5>RLE!9PWo--IeGiZy)MXavUZ#NP~)uDqO#l z3kFH6*xj-HLOXX;ru>3&23^{8xcf_ROFIKar$p%1%)_v7$^(oW!t-C9kb@7>6>QYT z6UhDY1@o448tQ%)%&My`SB;-R#g0wIte8V==c+W!j_Jeg*W{VaJY&#bmPySG9Z~Aj z5%?Na4cd>~nn$-6uwU=%1bm(V}q{?ovix>l~0D!5zf1b&~GAJ=Q9Kgr9VNFlPO3(X%S4a zlA>a(%rLWD1of;^c>C%loUF$C_#GS|OT7htd^|)7O+~o2wnT2@@?-c??i@ae)5P5+ z54mF_XW$Om>tx!dBtcY+3R!bIh%>$FkFNfEQKo$k_I~Ri&qYnSi^p2Xll#lCCV2|f zz4=6R)x02Ma5jz)kwSx$_lWka60YP+0E|Xi?!w7(PVSSC$j*p@wG(V%dQ2(F>Zpeh zVLj~lvJW20DiX2z3t+-_H#9961<{Ky2ps(lP(*4mT95bOMB~~y{ph_gKcxx{9Ty8X z+;u?R9Y=_Zk_kd)Ek=BN#|>Cm0`iilIU|cac-wM^fJ-Jcd|n9OzSIgmwlrg0U4UR< znKUl4x({R7cKGBMh(Ye1oYA!VBr71f+4BDL<{FVr+);}i&|N+l*QE@h%E|)F9MdLv zI3xj2Ysf*NXe(yQ7~!sardVaNiDq@=k&0}8dhe+!T>VNw=B6PoFuFyS%N}MaA!^Va z^pV@$l|43pJ8Ij)AEY;LwjaOmmz~dy?leu5AHM?3u`2m757O?DvpaYlc#D zJ6U#iQv)WNo3hETMo`}sC75*LGipy#pod-_hf6hgAR_j3(~8r#Ih&psxUkZMx0|dX zicmBzoW|5>MNti!k`vH`o-@#OeM@Lg$IQVYX~Ci@&GDWUeftKNE*A zF~ex;ym=8@)|AHcm@5nKG?}xR-Co4l(~kLC+{5;598Fy+$@X?7QzP%$xY7F+iJzW~ zDK}oCf!tFVGAt{TN$K0n4!ds?}gKL2LF>jIWLF%wg*N@!T~aHh-i4NXlm zps)5{!yjG|XcKAub)q(_4>6S;o6N?#1^xxbf9YswNDlenwmEp|G z5FsT_hn^`Nj}zwXK=U0BAz<@KG`}f_)8;FJu*4e_JF9SbvKmepZA_Ii3dq);y|6J? znMM~C!oKXiTP4G_dB(xc$r;e_}um4c5i zmhoedy*MoN7;386V@t_syl)_i=UZKI<}GDG^W`b{>Ff_q`)LMxJbuZ|dQnOIMH|S3 zTU9*ITsj_GoJ#su&Vt&ZBS2o<8ekpt*dd^+RSvL;l zdghu#I-eJ1ZX@7sKSNxumyQK9x8n1pi`)>N7tc2)1Vu80+_yX@U~xw9c-&-A=efe; zbKPOKRTN};u7|vZ<2mC^+d-p=0Z(s2dSZ5S!Pm+$qH8dyh}w}E)9!FR`MmFOY!CVT zwT>JJ$%AY8xmXsl9Y6FJ;s?n>{242UWtw$7_j(WKImeBAp%6n}Fc;Y2aDqehBWF*< zp-Y_;oUjPQyUFtKlOL~acyb;dhfQVecY!|QxdQv%4##6_ByiK>4`Ak~&bGbT19P$} zar(Xc@a@B3wnR0L{(NnS@m`lnk-dvx(fwUCxv8ARO&tIqvf{b;3N5&;J%U}kRzWqZ zZ*%gxWjLmk&$n~hh9-Pk%&c0+gI)PkTsZ13_KJ$JF<*1yvysMmxRdL6Hihi3n9bhx ztz^F!=1>|b2`8s{(e|bRtoxfjEw*Vty11{0xD`7P%OdY-C5|^Voo>km{QH%LYO$thnMLZ}AK5S3xW z%0wu!-OlDnY7>jwx%6~XJWjNoO*_{{G4eqTQuSo$&tYrX$+6$K6O+o=p0TNr!^avP zU;Y(89Z;tZI;PAjT%I2GB~&#!kv(pD!l_S5Voiye!W+t?=*)A4*s*asy)eR)=i%!C z#}-2>Gj%mLf1463_V8irp7b~8&c6!9TyXOTpGu(P-I;~(1t*>9L)*{^)0iyF`f7~l zw>*L@?J?wD=X0*f_9%#mF2Mx)jHsCmrq4$7gQTi5JJ`DyF9gbfq?i=mEyqTme&`&snH(AQ0;38i!MSxG1j9C+M~%JxaIJh598JB2pN0=)wINICu z)4*WM34FgjJ=T^GotY<`tLds)CIwQjlEa zOtN!}@nYU9;bWb2fws{~F59V&JO05OZhSn)RiDkq0)^4&b4UcT=VgHRJ`sq1v;+00 zttFES4#4X0;hgO~z+D0HAQDS0zsHt?+r`cJY0ED3Kf&i2k{gajZ}}MB`6(#=YXF~1 zX%^})HzTDXrv(uqmpF~Xa(sRm5o905FngX0bevbl6MK1_(t~{A5updTJC5Y-e%%5k zi`yi9W*{_{^EsXlHo&JrrQG>O$BRvPF8v00M5#kxcPotK zG4Z4I6N%U&3uy6L0$M2paaLyy8uf!9?bIEZ+qFxOGQ9@n+;ecU$$V;baX7A9lEWR_ z`da85Zjb9-Z(!>?eK5ArLBT6EP~KDwPx;>_i-W@8t_RIa((;Mif&nb-zyLPFb3N6) zq0C;*utxjy6+~-{AALD!B=gZ5OV_NJ*?drcI?8{b?B0W=^hQJwi*R|({j$7=UOetn z$n&jbTr;G$g}_3RU76_YAxyrnj!r$t^E|KV<`Ula3fdf(QKu3oR(C%JxFS9FP%Vbp zuD*gh0uIuzGJX&QZa_dA}Q z6^AKTmf{7O4Y2;)P8MLF4_x>F?5q!^?b9AZ*O-~KY{d?IUuq0r-L9jaB=FnW<{?&E}jLmz>y))d1fZ=Y3JXOPaAm7 z{X_Jz_iwKEX&J6Nox>Gwb3>PRjNAN67K0DuAl08&qc@mtSEe6KXd@TQ<5=@-uglD$a!ELqC z!s+QFczlEy}=SCGnH)LQ`Rpim_o%aOJTLyqbTN32Xer(ygMw<99m;)a~ z`S{gcQ?T2u2Hrf170R^gz-3=PHhtkNa(S#h5K%pd&5j0jk2u`AYX!Vo?TA;m%fj_} z4>%DXKY#Q}n;<$y6OQehqEzV<1Fk9YDhwLB(> z?;Bbh${|v(g&R^Liwowg!qsK_k$XP?MR~vW?d92Ad0ZYoe!CJxWU~ai7t3MspfG%J zMNw$GxL$a#!UpGF^&n7VfUakE(Mdbx$yk$OtN+O%;sAUy@gASFOd1uc9N6{ z>q+sM_r%jNh}-Za8{TW4;IxXD!IWcKpcecEhjUZVuP>Opd|8QXNjOR%RGWrb@VIf+ zY&<;0Sm>pdipy@=;EL!q5SFzXC)*iAd09Rw?dj+9+{}VEm6OqAwGDn79EK`zYu*nIqmuW+0^ANzXGA2*K(PlDv$-c9m(jy+n^5dxrtp$h z7|{#Z3T5^tY}b!b_(t;xUPyMO)p?G>&d)hCz<2=XJ!Kxb@_at@ycWS-%VOC!J5LR>EnH~Bt~gN`EKw$y;5?kZZ>h&t9+%_T zy^F`fx?QEwesF9X{4^Rc~FvacmY=wB?aQ zUbbw;uo;l$7>}3C66i)LX&m{^lCE-7ZQkg29or5Uq4$St+_255tmf2gyl9gS$Bu+i zuH`hIJUE_?s2_%=mum%+_P*xMo=AX-i~!bGtcsgjrBS~uh8izuAQl9nV`UHF8NN7o znbl;Bng^#b!;6^|AI6`Gb1?q=Y`W4c5=CX*s7~NcbZFOxkvT0mK{6I|GFq{H)+OS0 zD2asEE7J*9RX8Wo2=-S-!^4v;oa5R6;gQ^QQ0n7z_bpyaI$p%_oF^sls`MZ?>beie zQ)9T)x}IBRlf>!1<#YeV9z!epgIr+j1~9li7Osv8Lzl8V@X^l!zwm6Z{GE+58S-40 zR~lkiPxFtXwJ=`%G;H@yM~7#L(BTjS>Ua5A%A88b`oak&9xB02tbp4!e;`CFZNRTr zUy-lB*TM;x^`QIA4sJ{=<*ayp{vjUjLeH^3a>Kv13J zhnq}uP|J6)pm$F_bYHT;Mq3^H@=%(rQf?uU9mj<@S4u;z#8)KKHAyi2el=HRZiM&KM8R}|JXrb9#;-pz zp~GGavy5XgC_W3m7Z<_#C_9u=kHZi9#voW|<0;cBsJk5vCqJFylIt`<<)Q;vA2=eo z=Xn6s`-Y>P{SFk_CCgbki=qf`vvk=0nY(Kwi-yO;(YdAw&G|85I@!eMU7IL4DVzu# z=rzAweV0_q*y4j>^`OF!4G%rqDfE9b1JxHDZzjf?c*iXV2APbWnsZCRqpV`gFIe|=MU)}E__wA8#hYL z#(>5EL5Sic+5^Y_|h;;7NzJsdKttSi=)4q64sD1Y#1ww)&&#c`n`?tc#A!# z`OBj7&@gO0{gOnC@x{`eEnLdu<>d8?qg+<+NBHFv1_v&tVyL+}^jJR-G~DSU*Z6#f zYhHXLud@rtSYZJ^=kov^=WSR`T_w2xz%ah2%GB;HL?>uux?^oQ})IYq`c;hpGaE-S+}(E?yv?UJfP)*J8+y66pQ#y=lpc z$DCQ{ZayY09xA$(@s9O=IJvX{XWg*oQpa5;jRxCsE6?q-QNEjq7`a)FT6~chUzC9C zi)ygPy#Q9nc9Us8P0^-JA0*yIa%Urkle5mFxcyI*;T!j!TRY4Ra9tkn=U5C6>@FD?Be+dp~J z|3l7+|55!fQ1flP&92O>q48qVD3{a9w62#3h|+1RQNJRwZR0|#hZpX(*j=k;qI|aY zza;cWT6|u2kv|&tzVy#c$nW`6y3Cs~hy%KYIMn_WxJ@_mIG> z8B?A9x>L8mZ}*>m%J^^n`9}(2UTfF=RsZu;@_O^nj{nP2R7CuL&|mq#^*3|hpA&li zecu0_{z_E+Y531||9#m1EB>2E;NSK4pZ@TD`Tr;Y-azZga0NC|9NlyyS!vXtp6o}zs3hjyp)5zf_(nkpvI32 z{(9E`n*Yf9&ztKXxr_7L69@APe)_BaKaVf|y}kUu&Lhun{jUI~IlMU|vQMah-yZA`(ICQwjPp$Qr(zHx7$PjKG z6Q8_W_9KtHZ}CSSao?*UE2G>w^m?eTB3t&+0d7<-%U5j8q?aPID zRaFPfe%I?rE- z!7#r-RwT#7A;_&cgI7>4s0jTkOoft?V#e>~?z|esTZm=a6a$_5F8=<7F791{OR7OCoQ^z0gI>7~ z?*z+>)%9|x6Au>l&32R%vX~vKOa|Jz&XakMW;*3)n9BS{fnSLMfelingMwa!Jp*YL zGG3ktnIg`PM9-V`Ze+HGY~?W5lLT_&ig!>3Fmxq!27LWcoiocpdai}Lh%h?j(BQXF zhY7>0A+T=I2zthEp|7zhq5BC4cbFkKp9T7T2#jzvJYwEJM&hFTVaLcv;SI@=mu0td z#YC6aJ5>7-p4Kvu>Ct-A;EGG0R?htoU4r0JY^h(9{O(sHtD%C&d=Wy?O`d~N7Jav> z=gQM^+p!JjDq&75K(k2hh<+@Gg)0*z&P(d}_JQ1lNyU2@&Ki+Z*Vbo| z=)0&%y6?dYk41u8!?m{YYUGb|gAFEHhNx4I3$MIg31#@JUK3D9liz(Q4USf;R(Bv! z`LcD}cMmd>Cm7`R_-5ANbBQ*$)5T@kKwSsRACl3fV2D?dtNFsfh_*uFkj+^xDER%X z>dijkZ(PP`TC9DbM>Zz|gKQ}qnmfNXuC*qT==+nra-lt%Toc8T6ElZCb_n}@9>6#y zmSD{w&d`C1dCT*U*u+fD=&KqcByC{#9|+0N7CdCMt4J-M$q-<($uYbA#8_}7vQTFmVTWNIeuyZ& zlIf7Cz_o-*>)@)uI)r}t_5}};f^YRIruhr*AA$|;d>zQ+FPD9xVc$t1pk%*x4`DU( z{Y9Y=!oThhOSvY+5gS7F8XSV~h0-BLT#8O5$ntF+Wo>_XKgK4uJv3PIm^?a$bd&Q8 zu}A66_ejE=#9i~BBqrI0<_vsr@}g#6;mk3bh)drVPb`@Wx+Ap)EWhO+$1@j(XHk#v zO)eq)q^lj%9QK7DNk`ld3OTAg3{%W7#H|35fUW@c6Wx8Pme-h}uX1oE zP};&nyI-wauCuL6tP8D68}XkaR%VG&?tM9wTF#TgOp2F%LsLq7M3X_TOYIaZ^zGYs z{9>LW*dnT;5H%$AL3QUMVvWY{llg3KXUMf<1P8u+6mr9LgLC6=4D}3LlqUUZu2KS8 zj@OidH=)S)t4gvDvd=n`P*y2V`zdhWd;0u)w3@I=?YBBLE+;m18C`|a z?99C7?6&L)^F$8e515Qeb?NVA`Q<&N?!HQBI4Es=JDuJxR{uU-tgG%(r0~98$*f3G zomq)lL-?Dwc&mngiD6O4%<8A%sc%1da_nSt_2bHTCD>KiwH;EnnMROPmp)K2%9g%m zYCyWmAreLsvkcb^&kUIi zV?L5s5rzY+ELHgQ_%HFf39=;cqYNU^BQ*JpAR)!Cmk*+TUQFTaChi_jwPxQ*M;GCJ zODd|DDSrp?6)LkS7Jlbb@JRE(e%t!GR?Kr|kzNsjy%rIQ_`+uUELy`1rf}7Pb7n>cm`0SG zbDt(Zu^D_aAvF77-Zb{xm!M~OiDB9@Qma}ktFiLN^_+LxY1@UdANLq{5BGp!RI8=F zrb@0t$8yeK&MM!cr}9n3_v$7a`RdEsOha8OucaXK4eK~?^+dr4ZmmRK*L-a>WyBdiHKDrTexl%Xrb(8WzS&d1?;85C((d@`iG9t@Zr(((L>AG*^h6Kq zkX`deE9(bikv{AwFyZ<9z)a|l+Mc5qgO%m@uNz~czBc?Mi;9q(3Q#YjvxZ*Bk8$dl)L9|$BW?$fz_L&q*jfBS*G%1 zyZ0Ng8+Fkh>sI?C7t8xgYhAykFXz^$)-2YCE=n)G4$Zdvt`^p2d#VggDx9nJZuxIz z@6qns%{;1hsubZ3pgW+cp-X)~_}cjr!H~hHz~{qF!(G5N!;YZ}5r`llB5UE;ha2~= z*?r>m%C^pS5Y_JdX2@zt)JYn=5G31~)| ztrd)&$j^X5#Ic+{v9VAgJkjVB+-mx5-4dU}uwNc_Gj@{=+pZVa1E;m85G)wXK}8w=Fi(ecU;6?Du zIK%k8AT`rq!M(P< zt-V%}I$Qq}bqT57?TD+CFDaZUD^-|PmnOv@Y0bzmz@cp7j8l;XJBl`V3!&jXBpM0>s!8=_wz`#IYP)>%tr7LMV&_C~B2K)ZmY}!O1L1aRET_$^g0@HYVx#9d-yq*! zQ&iYVSntL5fkxR=3x!u#q|DQxmpZ(U3$;|Di zq5U(fZY#HiOsnV>?_<0x{ZB5t5YWi(e82})Y~@sV9@UPbgm!g)9OZk`1btWmA?m?7V&pJIbj`@=$~WXAr?|LyXJD1 zmcp3sd5r_bdnY!i?bF1ZydT`;c7BCz#BYfAwP%2MCVW&ptFF}Mi)crtQXv_cuD9+( z0f{s0hGwH#D108b#0QI^=gT|MdM7Qmn>lwqL9%5@`^?QcLif!>kYH_H?St|LU9jc3 zxy2{4S?~MrkZILfn6ix4(MIn*iSEeDG&^pal~m8-4X!8WtBex<^5g9#l7{+Kp*8P; z7m+Ww&`?ON8ArpA>UtBOUoT@V$KfeDWO^SnxJ!7vUp84(UpV^dRYUu& z@aQIQCxf}08Qwko>F0g*e*VRfsL#!VQ=^TM{to>>u}yhW>x75u`OJ-#gOA!%m&+Uk zemTi={I23W_pZ+&3scAmW%yq1R_C;5TXt%;qWr4e#OID?Tc+Wx6bha`H5KW{0U?xm zs4WC)%q(6y>^!T5JdC}V*!L*_$4t!44(@9&+UEv1sDLiPK^jd)@`BFyb%D_rFLr-b ziaMQ?&zaP;k(gP%nTpXy6|dG$9n+U*}LzGSEc-bFKmn`uiFfD5zjC6zt#Ed;q?m z|6+g-VEy;^i`XEjm%uMf;1lo_=3iI8i2M5DU+2)cKpoUORZ(ea;9J$$-o(V(!Q95N zMy}x}P=IJFrR4wxg-iYXftFUGI)Q?MSputRI%>+x@fq7#F&TceF*0FtwX%I~2TH(| z4>+|laWo`%wX(E!;BytE{Obxn;QYCmnUegkOB^i(DK+Jl$VF}JO~|>JSeRHSg^{XR@(3V`k;$CoaISl5f3+iK;$UnKwsi#CSd%}uYiMNSmL7E_V@Jy%+C(+9}e-y+x{vA+)W5cfcbx1R|qM*7a9x&^%hE6?46n`^kK%!bZqg< zK4fJUf5d7KOqgpj`Y>;Hh|ybCvv=6yW9dH*GfuI2*-h0>ewX93h!N$LBB% zR>S2dPh@@VsRi~0Ea$n5o7OS2`sU(dQLpC0CcRdT^3>^%-O^%jVgGr2g@SRwiP6v! z|L>|FSTSrxc<=t(!~jNx23exu#XsA63!5jmPl67O@s9(P{5gKW@5>(4KP%9o>Ehg9 z{&zD-G~^~#1|RwU`{c0WeLFn+BU7ztxu14p?96#f|tL#oOZ`4 zWN!Bgvlhkibg`{=J`ix2$7mb)!Yy8{_&|mv+FGxc7fNd;Wwe4L2-tgDPdbr>td^W+ zoffQ{OYeaDFO6`o98RI~?UL6IvkiSD>FT}N$%1%4J-F20Y^OD&a4%NOcw;_ZwLdjB zA2$s_Hi*-U)7k7drLHa)Y|Jw3j~jQKfgY6XESG9?_c?>Iye?CkFXt_~^13fBj~1E* zuNK+ouhzqvn?kW@n`ZSqMDM!fEh>a82M5*sxuU)SEm733bu?NYWfFNqbxekGd+&&m|K6xrg4B{4;CA% zwLOk%Nv?i=S1&F(c(^?%f8_4GBN+5NAK96&vpRUZtZ#2rf3HQonD6wLL-@X-h*^5` zEmovBnUWmlLKZ5JKGF|k84hK-fsNN;Th3*acSme)JIlx0<*>3(VqtA?$z|n8&+B5E zh0e}vBa(Ymg$4{tgNb$hkrgUQY!{$G<8y!72YO1>wob{Hdjv-Gc$j_6G0Xe5NEpe4 z(Bv$fxh*7W4qTXlnJ`dX-ZoEG-Hj=`sYU|gLxCgtf>nq@8HusTw zFzgg5r7O40YMEt##&)uNGMyABqJ9m&*S1Q?mm_uC{DMI{#OJiHb_Lw2;h?;IIm51( zKx^8`{iI(%Xj^ z`lE2!E;YN1HDz(mXuh^ci!{sf;-Wu#yn~Dt$$gNBhc2OSq_UQNbv|LMZ&6yClQ*mH zBUo;aV{-4X1x${zeDa?2_^O9-Q8W`0)T{=W%!KUzNSybY9Y@WOwnuY@AS@a=+cCkb zbPXZkB?xmnA8OWLuZPd_@xNc8DyApcSlmf5Bkl9}Or3a8DQLaO6FeE*={loj<`#}O zqYE1j!tDfJ)vwn3vmxujcsiyUy|c1x1PV~#no!pDj_|SZPKHZVY}@0lh0ByYxA;O& z*~zkDD=J*z?@@lpZ)s`E*pfp#lgHCOvhsYMBzH!hR7$sbaG~3%V|TjCvfDA>M@}!v zJS#L9x~hKh$!w%rlmw%u$K*#!1=3b_9^=Z3VL-|iT@)nfmJI^R42=%arkC=Q?; zUxl^xA>y$$C_PAJYuqbHYXVTGW#-YPaib`j zAjdq@$9%J~OjHfYxTm}JCwi%r?&-QV*sTFTO}Ih?)6u}Xk^FmXrza>h7vb? z#|;~waB#S1lnBZbD5P9Bzeo~8q(R!2m4ORhS4+8U*#c>7(n5TQN;DYpqvJ9UgY@OD zE=HGu$2FG0e)KyNl4K;**(V92DPpXz#)jaO#^qAvy0)W*A8pZuuD`Z(d-S&WYl71_ zEpV3{=w|)m8rh6Z>aH?INfxyg1y03mI(i-&WRsXCIIRLv@iLV`n!Yz)QG}d>9+=%( z7Ree1z?=n+1aX71!8cJduVE;a=wNMyP3|e|SAAbfB$gItx(^m|*7=Zm{r=*y9!h&} z#n}3L(xknWHp_D|EABKiVp>e8&bHJFVb162AtT|Sw0`-`O>84JYKgUJK39GpQ_wV4 zAXej1-9pu1ls(wb!cG-?(YA7s5@`9me$_~Fue~%+8CKGPl1Mn?2Hlj5D=D8K)t|?j z7JWPT@j}2NK@Bz)8(N3H(vLz@9zQFDrK~(1)1`;;auFBbEJ@edPL{D&t+H^yExoaU z?b7z)V)p80RTL^A2%W(gR{NdM^{T&nGnKKKU8y*}Dn4HCEd@xcVVM%Pl$9D$JngM? zBUR1G)*yS~WGOq0N$O`F&`d~v(nec_9A%4S18(qSm5FTd7Dh(`PpLtI*lOlxQ`)7# zAno(OQI7vckV>(1ACq%ofKh+V+G$|dX*R!&QB_SD^@8bLh_BgN2I>@P0x~T z7m84`7RnT98Vy+(*2ZLvJl9+|W7BTVmy5FWFo`yg4wYeim2QUk)B6a5o(rzMF$U{X zW6Lyh=8e8+mp(Ed&&|=akA@#3wv56Vx6!&vF*`n4kf7P&$z@TTk1;gZ!3|#SXxo=O z1VUunjKk*o8brHG%ImtR8+431vP06-s1g+n@~J3tSd6s^%7^f`;}nJFfNA6W#`4AYc2%OX+>NKTTgLz|nGqA3wg8q`xd_ zL+vAg@QT(TJyn`D48CtYDxA$9`4j%$&r$7tOzM#URv&~gc;mBG$4P10xnp;&94XB7 z9&E1ah+bw>W222d%j$9$$a1YS>jV5$L2|4pJcCZeQWqZ{9=3OUA~5?pC0$6^K8BDL zOA2K&cNm^Yvy#Bu!Ql*17!wj`gc<3h8s6gjt&rmuC8EX`mo*JW8-BDjD_fNSmq$;} z#=CnHNsIi{3E1g?uviaJ%Q&dynPzIVdq2b~6mk4nz5XIAeq?1~G%)fBKlmXnSaf(? zJCv%Z1_`2-B5p(ZayciOUkL|orUJhXqi4s1vJGGGs?mfib2J2vPz?MUy+tSD53`^w z3qe47X(EEy@uB-ZVhd9zqLPOKw{j{Ty(IP&%zfC@V6vV1ohoVa0vK-bvH4L^rEJ^# z%>0Gew*sKJeqb%Zhm)>Cs7YkjnI{hIamEkWSfJtH8P0`sSFY6rKeJ+-8n-c+W@asDoQh{?4p7) z+eX~HcINq*u&@({27eG3q=f4B9$1<)o6iR6Tk|ot_5hrguKA5QGMkeTG&9bE9+9z< z*f2o}+z0mVU8N|+!}Uh=QV7QD7EEMX%0bL~+QY9E7PwWOzb7QUoR{r9(A?Vh-u|#k zMh#R+7#N4+^n`TXz2eu1)nr}yWL{+AdC<6%d5}BPxo+cgr#&N3w$@n7^w(Tfasw#t z`(<|ZP_eHASQV^BASt4`SPe9+ONa4i=|csUzTyqu;&{sOj|g&ELW1`4 z)HxrSEMCo|Qkk$7eFed2mNGRTR)Jz7w~&dZr4to~l4`nBgVLytlqKTM5@Jn#LwF?1 zB>2)1lKt$pP$@oHFdc94__R5kl%Vo%qF(`Ic!@q9^g%jNiNU!5->z-^1Fo=e2Ksh^ z_AYx=)=-_t?_CUF#yH~V124Lo)v#<*=R6@c`XG^V2KozqNJ2iI3TY+*2{h;mVz%v@ z@IP2Y7dL%gqOO8rjtN`wBl#BxT-``)5dQ{jC{<`6sMI4{D^clCtsc)@msL-mT^c|{H4u9c6ft`Q=~nj1A;oaUTu5mghj@%5P# zgXhgwk~1G!4Bb3v3JIc0XJl-o9M$z!)mb5pCKxqdB|#cS#W0(D*0MQ>G4xw__X_7i zmPIHW5o^AnhERU^AKb(R0-}Tq0d+zQ^E22I!$?0a&+C&9TZRH#?_QE@5|zqrlSUPl zB=AZZ@Vy9t_uz3Jj%U5Z`7SrF+52$05ZyJzB-djYdG0XE+o#2nb0Q+>art{f$PT3p z+XPeNBbHwi72=F$n%UX6+^E5W9LurH^RMwqqP7Pddq0cfN^x7LRG4Ha{VYyd`-oK! zi1Bo6eeZy`a-{2x=%^aOUzg$7N8<9E1l_TJoOP;9mw#caujGT8?qbjsQduRaMJl^J zyJl8N=nri4N*k2*x@kAjW1#zfqWY0ckKATF<gTz_z5QEH1 zXg4`<%^qEWeA;%d-G{FPIZC)wQj)w&rfF7(XHHCwg=0c@B{NwhAqR&51wGpcjPg}K_*i*{KekEhN6!(cm>d)8@hK< zLbv8w!#o2z7-GuZ%0EYi?kuzLkhk}X%dHD#TQ^fqgidvqJu5%Z6e~Bxxse0J z%vE?v+|_%OKv>aLr_HG(HankPU++@OAWi2c`D{Ii$ofP^mM7G!%t8sZ*N?IR^c?av zD(FJ?Kp~Alw%Q0mS-EmQ)dVjv<^e=YW62&V3j)o)fPaM$M~u6mV|lskVIzDziE1zm zPW{T3xRTgdK)go!bW!f3RhN@!7%WxB%hnYI%ctFmnjpd~69dXA$6O3qeTVBcU2whX z`E=bU{7D|sXqI;)f}Pk$T0~8cVe8*Z#n9h$i%<}{nsicXY^Uwhds#|vOjnw$)tQjM za0%f-{|P#>@~9e82YAtg&)C`eiOjLa*soai;Ym z>u!u1M1CR?p9=(_2*`m5xLS9u-gBN-y%dGG5XXl;+cE#B^dYc)VivLgeW{n<8To1 zg^C<4gXtvc4^D-=rGVYs{(!)^h4UBQf{36gKO12vR3RlDQSvG4!GK~^D9aF z0a&Cf#X$$QBh3GjL%yNHRLQ;Xb9he&h&riIzB8rTca^SdzkblzE;Nb%We(W*zM=lg z8mE4{s&4tOqJOmn3jDmNBb!}l{7+Hns|=!4O3CEQa-%%sk3^M9*DzA6CkWeCiS`qSTkYevA60fa+_tR;-`uhIQ0zW77u z^U;CEkOWES|5>3f1MvI=Ay*vjf67%d&+G-;o$viWE564Ak?|X^lQ(tGl=VN4coCp6 zy5Ei^|EmP;}`X%Ru#ti5Afstg^*VA@Z z^EGy_C8HdhW-N8&1J`(W(l-EcCT^b~4%{7raSTXHE*_9pmwn^96>kq0fba6^T5z$k z-XBa)G@s%j&&arOtLgI>LXF!3C@*m(lP_o59y|YkOe1F)q#vqBHlGKX|LJYw=u(`fXDMcxcHB#js{2!9wm+b) zb0fLz0imem4v;!jNrGiN0qJnlv2?B>6{*XjymdzK>HfSZlQjj9CIo~{&uXR=WW9#r zi7Z#2RYIW85;Q?Rt$gm>k47CI=paG+2Xke1x2O*n3Y-a$n0b`yEP}COue(cy6^)(W zR@VnE!yo8Y;A>k=t1ZogfSqD*nl#>+*aO1mab+LrkT?6e<;Ctq7X(lOE%%`W!Wrw5 zg(YTFQR<3VJ{}rVKzafF<~U(MBq}=>dZN~}oydqM?ZwlD^?i?Dt;#aW^z7&!fBb{c zzwS*mW-(`y#JHPQ!pCu!!JLn(PGrI*3ygfmo2{$q`2AWnW11D8C$B3&?t2n1jH-Qx zS?VO6Nx`%J*T;Y_7QMbYTzW;g;y5LrQO21jscHzUqRh8Hc)+CgKmf8>w_ttX&n9@Y z83#r^b(^oX*y+kR_%Ir3cxjRAvcXK6-$wMkJOfQH2Qsb?QB%D^Em~r^OF3=9)ii)E zgcLj6a@}9>GhHlvt(#2;dw2o*-=BB;cp>vi{-0AHkjBzgp-5Zd{-DZ#{tpL;-dZed zB>w?A|Ee}of&6crc*cyk9RTp*M##PVPXPIIE|v0=|G%42VgWD&?)4P(zncBGbE(i= zp#FC=*m3|Gb@V&__q{*IOSiuG?`Ho0(S^wLA9s*;NZqo##Z}hRJ#EvJR<&s(0B<8G zqyjuLQ(*{d?7pd~sog8xMTMFB?pMc0-arKOsW-Rkd8v5Yik{r8H_G=?;dVybrcpUp z;)WiLkfWcm;s;Fa@j75)|IF|dS1hYX7A1(R)aauzpY=;}GG9ph)3UDj&DJPk84#X- zDm~<0wDrH+j8k0vU{Si|{L3)-!yU4``9fW(4MG+`e2)QY*iU`NH@!LTf~qgR-P8vuRiGtLUGXdx=1*fuPp}D`=d{~`=PX%woeZb zpQW5|rVoib<0V?`vyBdB+@9CA^+5d80Enest$_O;15WGktRJR%9EX9=ei~^-!Nwl} z;_z}LkQ9(lVe5Go08>A!AL=u%?75>X7Uc`AT26b9=Pk;e&PVxe z-jiDW<%qhlLJz-H>mP3q?kqL*y=oVn7pyEus-DvgMXH5OfL1u0;dMDzdx;nKSv@wY zN=fM>nd>SvXRIiQcgD?nR@Wt?88EK4H@HaniRSw(EIqFp$6x(X?ak8dBuc~6-L_MX z3(~CZ=}Rj7Jb?6w#St^j+OvoXz<70Thn2_iR)p3`< zjL}>=;P80jod?oipUjzMH6AZD<2k-~N$UD_S=;r|$f1fe-ISWx= zP}+Jqzi%sjy4(J6shx$KV@CYk_#q z0CHP0{?Wym8#~~MeyVU)PRfdXZ9`CNVH=PPT;}+AF|Fa!kVW12V+PM4L*p4!2E{)& z6-!2wZt>|(r|$sCgL4yI_r3fjAbi>=P|P|mSySgk|NiZ3L$y&O-A{K_@es`L`Fb1u zU`js`>#81H?FQc$FK^vn+92zMOz zZgO^1zv2vJR+572CuQgx(`?%2CUWDbBC-In!ebHmxwkacKlUpeNN{l$o(;IhcMAL_F}KrRKQ-xmfG{A%ScA>A? z@5=A$HTH%KAtc)g2%4WYq*JY;E+e1b%UYn_Yx;>)lD-7J{T85 zkgIby+?BG9tv0|;`tp0SXssg}h>eaaB;GIuKTFzx;-kIJ+ZZ&B*6{Z7aE{%3&abY> z1K+sY?HjY5qBX)A(Qg2(_;i>nY0mF@L_QPIY`}`HWqkD>qNV6!(We-r7l?8RZ@L9u zAYztN%I}Rysy}G|#Po(s=XrVW3_EkWer_vnGl?WeNnR~|$@@ONJ;FC(`38m8Ht_TafRz;lb= zY(xutYDaS6Lr6`sGk4PDGKi88v1qPON1ij4X!bbAX2imx2nPPLcR1XId+|M= z6?^YW(Ah8J=*DMAU7pt+b$&6sdM7^j&EIS^eQzN}bK&$DJXdAnNYqnv&cmbMm=mWl zC9}Pz5pciq^q?;wkd8M7HrHO z>y?IWc}`J`!RbyjTAb25w2^lOCDJOEjj^K%G>o}o62o!FSI;>&zL6e0{llRI@S$nG z8Q~Y942Rzbv*p_Wa7SJ01FY10kUjR!e;LR%CR@hJHsH`2{-mI9BGp;B3T;S#)M133G8jd5#isR zY;VpkY%UDXZ z;mpmiehxW{$J1yZs_mU$a$_zdz%rWYq_gc$vbCcdh1`x2H4&#kP5El!@18Lg=HMfz=Mb zK$~t0Gbe+4SB6T!Ms=$56Hh1F)248?>u#V(IQifxetc?56 zHhjGeLc2MPwn1-MR~f#VF8hMGiX*H$0xTm(fcirag7#zIl9lU}YP_3Bw zU#|2iF=ROF>O}D$^Z4jA&ZDFYPq8Y;A%4eQiq>68O!@4jRj(|^AC2|vCU!8v$@k6N zH>n}27mw_bYAYTRv{1Nhd1!gTvEA3X+}#x30T z_IMw$;qFvJ5m?3Lm+pXu`5|gqi-9_&H);sf|JZ064{`z4G9@ z1i)XtW7yQ3uUPLCPEzujw^=?rVMKZ{sOergcA)=stMS`oYuObIy|>#CgQ?!&o#LBw zfNsUO(jEKWqOL95&TVK%6G)5Sq)hCA4I80CEyGUW zM8V(DOzeSuD3?s!i!aKeIQT+F17$(8ujsGsTHJ zFGIg~-A&>p7`L_>=Yo;p#tGL!S%$AsQ5%{kceifXm)_o!tbJHJUjs66uWm{mqU;fo z>^{)d>Z~~_F@SssvoRF9`uKzl(8#=B!@ho9#p$;YXJ@vE9adhs<+aHj%1@1gvESK{ zW|-+@1CL*$hcy8V0QuODNBn^?-^63<%j&wN*N`W{kF zh`91QCI>6?);>kfHjVbxTb`_T2oa&U?!WXvo7HiU*AE`|4ZGv8PB~q}Iz7+zEWqK* zeBOICo6t}MuKT3MZdifsKuXvj@ru9COBWx!LSeXEXdCX1-JvSqC0jxEj+yLz7q- z)wyqm$8n?b3(8s62smW8{ON*#%Cq1*qB}kmTGezVN_HmlOnMn88I5}aJnc+-f%2N! zI`~as#|{Bqtn=Zr2gIs)dEJ1B<0tx{*KT(32m2b1A?u5zm*Q8yjl-;u_5naPrvW^V(9|i)8tQ9!-mJzcg(|`~_*O zL|;tnm}bZs;sqMSl`y*!9G16LxGb`2a@AeurBAqiH+Zp~XP~~#OYS(j@lF*L3{2iZ zDKi+q9W70=+isd$=KGOfEfjgr9n4uQ0$e@RpLG+i#2tyGI7=E>MOut)cbUZDK-;fOzbM0PQwx1p-4gEZJlOWZGaba$KFRET)hbu5~S2{Q%&j zB~$ypv5K}?O0KA&(%*81aA89Lk3VLl=P&@a3vKEqt-B4@>K@jbd$Ns_kiuHLtsrHr z{i(9m#Hn$3j$Uq3au17V^9j~-06X!tkr947~^gA@p-;N@0){c0w8zU z?sYkVFfyBM*oRj|EZ}Op>_*e&knn+t9}gONm@-UOuO+j>v#y(wld0v2=A@5MBDz+3 zlGTvVZKDI52lx2Y<#pEN-A`3Tw{VcPlxA{8YHxJC$EP>4gewT|r5Xxw9NJ~HA5}8( zu7V_yNjY2z#_3eD`~tZKVxuI(wWJSkd!wxc(9Wd4t@fN_I0moKiV%IyM!Q+=aeYf1 z)kV|~yNsJ&`V&H*sbEOtXVL9{IOk*~{Swm(Q^yvZR8eBnaq;B_5o3QY&rI`BkmC}9 zzO{ZQY6g3OZNL+QjOOP0vtR9 zaT20}Oz*STC{w5|UsQP}_PLk*LS1^W^zoE_(c!MTaTi+$@WRIr1Myvp5g{uwI@NEawp}dI>nCr%6dE2 zsM&jceiu<@V8#i}&wPEIV?v0mA@B*bRkwn8pxL10Zac<-c%}Wpl{ANt2Jym@!f%1W zho%MX{xXj6GO@6d`G_|-vXtY>vb{X7NqFyCC36LeUl8i|7?+|I4Z;a&6mYZkB<9tb(#g0K zyD5i2L5$O21UC!>A;Y`DDUqGh+4u>y14%q}jnOmLRxtPlM6^vIR0Mx4v}Fb{p*WZR zUVb9QpdFcSU!KK4bJJ}!n8;Dr?_F?vQ{FG<7dy41`AtD;(@toChh~d>K6V`rQ4O$Q z{+Anl+_gtxYBVFM@1p5_!4<0${d4w1j20IRT3b@grm@N4I*UlAWZqHIxpI@aDPv1q zd-JCpgqjhIqSsO?T;2l7M|+&e2{}eXIPIpXR>&_#`hxZHjTYbGU!zF&!ku+}jJ4}6 z-p1@5p$^p=izWOBTl<4g9)d3zsrh6(B%aMskL|(8M`wG=xu&;AFv6)fdxlfRaOpN@ zLzM)B*B*RAu<5SX!XC1Ob#STOb(Cbl+7klzg@THw-DlC%{bGNMNDPc!VN|9y%en=^ zvlf_X4i}%yly0-2-9nryc|_{tRc-Ida&VQqw(PRlh$4A!Sge3m~KqnqsxUu^q8_yy0B62 zxhhbziE}Nr`;5yr!lZX}hs7!{keDx^uGEj=o2G99>xd%UTD%9m6BEo)kfx>T)3+!!W}CO0KNP9#n(g!T+NmsA}Ux27w<-nt97D zrEm(^FJzYV?TQ)#zm=1V=a06rhWNYBRhti+&V^G-JSycC8L=<29KI!Sxm=0l%;I~7 za>kKPlN$y>PpvMp^rP}<>hs}KjCC}6JfsDM>TVG! zMZ8F_bBDrg%T_t*oqlyDS;gBE47C6>DkP*=7(&?FdWnu1MpI#}xE(C!Af>g1MRzrc znQ-mHhk!nuyOt6=%Rx!k(LAR?1G2ITjg_;>Q-iWBu_g}I*{VEa2E{h&*_stZW04cJ z3OAWJcl7g&;`BQiM!ZOThlP!+FEbas17Y}41HJbC0XwpM@W=(BB*qJMdA^p1Rw)oK zLk3J>FIjYt30`(OM{3&lUk(L^UwR*g2Eh)3L6LL|Ni_@?Zfmh7D8_yT7)KRC*l~Ft zV@VRL{8+|D3*aQvN@HTL`KX4xTX^w4zLrkD?*OtwS|5Zg!Av!cgHl3#rmpWfQoq=G zT9<7g$rp;w#M4IgP=YVavUdiP+ADp650{nQOLcwOdLUE-=RIfKm-)4k<_nnJ^h}rh zt0dv|R$v#*rR0#CZuTGH5eO@qHV2pj0#oy?qQ2?{XB2gtPS5 zua;qfids~}!de8P80S|Rh)$8OzdKD5BbwIw9M#U+Z+?5)R2d4i@AMc8elxqdE}d_H z^rhjKWYp~t_G3k5dY)r2_>w3xt3LjyqJ!{FbAGym0>45tDzqr>KPoI zG~x_s@3IxXAR@Jw(-7McIBws1B-JGOAl2;aQS<8+s9u^R$B=j5B7-l!C;+_;dYTfa zT<(m#(w+746~!wdXa%{>uRI{OZJL3}5~xj-^NIdiD6+hNi^6e~D-*rd7 zv&-`}u#Wj1K^=(}PNp&JOfgHj3(HiG5C+q_r-^z1=hnkLZ|z1Frd0d$#;|=^MFW{3pq#Tb;Da3pHRF})P7^z{ zJNaM6X+C5*KDknAb@76I1R{Gm zk?OSK+{g|yJ}$cd%3h3FnLQCwCM}Y*YZRMw76{nsuOH>c9-{5!lVOiMyUwbOJIg38 z^LiHC9*mV(jA56_4PSceZdsJvfsxa;B5W$$Xl>gyvx^SCi10ByK%3la$Tj;8v15I9 zibBO_`I^Wk+1lYy!rb8z>^{BirHJ%dOMf=p!J~twS1RU>hYdzaESte$ zIg!Y)8~hdhr|;?{!1IHlnM&C7LYtmE1S@gfDH4P-9AOBpx4i)p0qP(_H-=58I2T+x?xOqp%U~iX0uGJZhOrGTYy^Z2lz)cL6hjJJP#5l(dU>)=#?&hPRAMc zV{|~Qxyb#V>HwcUk62D_#Nn%dXYV(Igoxmv!m=(xSkY=tI}+6p19OxIk+Lj$=17<7 z7%fsh^v{G_JM)>;=P0gYc@-i_lf*Q*4$q(m{nu$(+9m_%iVm@_nxP zYtL%i(tL)WMKz*D(RNxWbe*2m5gOih!G)~txvwUv3GgtcF_*B6u4 zcxNpY#M!O}TDe&8fmBSrRHM<3G%)qN)Hj;h$!Ck^Clkn-YK`a3>n`SG9M`MvCSg=$ zA+9@O*Fu5qSS4c|yLKy;tDw_6=8ya(7VBG)fL{NOp+IMiclR42HG@Mk^RPco=2gr} z4qfa?*9U@~cdt_vDDHGm-f@XzQYQx0IhD+D9?mT|mzfB?PmfbzEf8ignI5$m(%F$u zBYo1PCebLfQ07);)}qCS2u zlWCH`y>7#r;l;@;OokK-_MHgSS+{R_j(v6sb_us3c4Ga))ny-i;JkdRnRvhlxK4Mn z2=b`p!i0D6NsXC0nI+MB`Y=uyJ?Mg|op#wpm8vLsx0|^x;%0fpb?%Vx)Y!E>49soo z&3F2ZzoeQ#wzzhWj@fF0L#3Y|RrC>^57n@rb7*2Mc3Y1~G}DwIDXN`D&hnKD$4iJW zsWwaox>!&&$CqRzx9siJ(w$aE(WLNYqxgX<_Odjw){QPQo0{#`H35D*4-q#B=xjWK zV$yS)Nu^Cm;_~>jbeZNyDy6J3`hel;9OaO3iq^wMk+|T#3Wd*9%hWoh=8LTFOLQQr z_aFX0-rhT$%l_{lk5r`Wt&qL5m7Tq3*&{?oHW}F=dlN!Nr0l&%i0tg_WJX3xw!Y6( z*LB_ZeSLoS_xI25_;olsIu7COeV*s*^?c0N)mnp>OC|-S5&5mzDEYJzG_3W<%B|a5 zwcX)@oQXVW`O#8Fy$MENyU^VF?HNigXeiBlBukeniRf*P0PQ)V@@o_CU1EzwZEjGv z62o5lY~zzB<08{@szdfR?T1}1Zkm~RG0urWr%m)T5_GS4e{HGKaVRsNpSy=TcE53< zKDD@w=Ij2UGE3D=i&y4nHNG|J$*T!Nxy5$N?^BJsA8?L1_g9iP9w+=`-nvZXtH-#Ie>uS2&h@-kc0 zPMDYo>Xjdi%dU8ot)y`^Cc92Y#c?iKHl-(7>O?U zwmd&sv+QrxdTG!}Y`^Bwz)Z;Yyy{-)I9=SYMutM2$$deZ4z1_DqOHVW9W`ZWVpmlaD#}-!3a2U2qzcZ)6Wfg#63%Ahv)w!@i4< z&m{kU^+gv{uI@lws}6+d7Nyi%gGwnpU4>PXRz=q1MYiB}bq>frGw8LX(r$y`SqJ>{ zM~5`FccoOdF!^r>DG z$iB2($KT2au5~v298%ak*_(3}{e4_+J=fHzXBxpf-E_41;?^Z3Yd5q1ec^-?EL)i` zM7-*(hjSy~Ri#ZqaP4^a3$X;Y$8z$+X_n%KFSBk7SN9-7Rs$ZKnZlYcp+%6`L6lXe zLfy(xO3lHk3rbg8pOSLi_k98xI;%SqU=Ele)Y6{^)0LX_%QLe@#tn4UH(Q`4M@EV3 zBla~{Fju^ftNi=dqE@}+7j)Q!$Fo?}2X61tRU18MlRq zBE4$c#Jk^nmY;IRR>gzsAP9nFN1nfEB5$>deuL23q#hHbQ z^Nay#>J&_K+fD<*hcK;7)e7PoY=KM=!3S4KG)vOyuWr=u zj_J+7?YaB|iDzOJ_gO`cptvdOpmjs0kg_zH&qnu^Z0tT{DrJr;s1fJWRjK8s;DVgd{44ec-qgIOViI0Pq|YtO zM${E1tSa=ul9at$(M_f)9fzbUHP`iryv4@AlO)OVU`g*e zPgQ>8(gh`o`+Ij>sJAMB+jDLA-%FF(~N`fq+N3;hP;+yU12qmsNY$sy$I zt@fhR5Avnd2bPTGO~9!jOwRLbSVeTE*a(a{n@C7A9(5)7R^= znH!(3o6MtXPF+ReBgTz0)*=5kb1a^sdGj6`^HZ@;5+Ph&`xnK%X^=>Q-h&vaX|QIk z6~=?lxr1Aa=`w?Fz1FS%ydv)HMkA9Dy0z}y6KYilG!i`(v|*mseSwZOt+()c2@|z{ zs%{3acDu>sKTVR^8B(|z!Qu0xkAKjkC;5Ax94ti9Ki&<*~6Bx|g%7}tLt zrOnE}+EguI1)7%K2fg7+$&5jq`>`9ZGKgwzqYd}=lNR*d6WCD`#Lv;ia^hoB{@n#2 zn`LP>dQU6j3Ny?H@&{yxN8OKbYZ9|wL5lrx5o|43TF5QU-(#gc-iup3?HIOzeH*f> z`bWPuoJ_XB%VwGqjU)zfwc~3UNIPW6{olwr_8GgwJ$Cp;O10*VQK_s62Aw}^y4tGT zDAk(;xr?ns*|)t8f6DqT&R1BCc008ikzhbk8`=p>COCc`^uD8m0aW)PYX~4eR=$BkBj53cK6>!tGA_EBP&`TKex2D|thf|-Zzst#^81_(c|H0Z zl1=fMOBUpM*~IDbbJc=zR!s&>390>io^G>5c76ve$^5bNobYSDFyeZcqa)k)BLKy3 zduZA!zpw%Iu!G#L24r{oo#@L^Z`yZ9x)&h;{k6x=sgT1}{+3TSSWUm~F-RG`m9%G$ zgN3o5&ECYV;8)n<3rr!Kl4xsD=hQHgF?HcNi+&;YW4Uiv z5M#SHWQ(PH8aChS8tyoimEhv@mc2gb{v+{2jvcbxUnSvad7c6N0h{1!xhfy$y$eh7 zZa1wA&V||KqJGyP@W9oA4{MY&p}WRmVaKd6&+AP>7sTS&nQvkLC@Aj_t#a_HEO}?# z#Q0S6Y#m6)_}tps{vQ45H;HP3X%)pp9dlB>Q5eepbRcA4q2_oSg&5#OveAC(3uP%v z+Iy?*S?{{F`J0ud=rz6E!d(XC)YV^eK0YszeDSQ{8`zQ`%iihv$lZ3u+)}yZvp?qH zBV+gBYvb`hUZsqU=>d-8N`IPH z-RaquE`e7fCaC|TZoTNo`L8-JIgI_u`5uwv+k&$0Q1eapuQx^vZ3x%m!xoD?jRSV; z8_|!q4|mszNsBqG0=Z!CAAhYvDViEsdNxYXFk*EE`WT~Wvp#ElviIwqqd3H7=qWu` zZ-{CR72WZrz|WPS{eZPV-4@*39)BBh*Vh(q7-kR4ZnZqt;L5Y@WlUh0pH*;E*;f%(Z7(? za8~s$h_7AtOy#vsq(R3r8B}d!YCPQA+B)wSw3*-b414c#x+vp-XahrW)1lSN^Jb3V zFp6^QoVrqV-kK5iQ&x^Bo8c-ddI`6v_^WAoW<80Cg;~$vu*IpK6R>CXk7bJWeNe&_ z6MnXba=b?0j>+tdjzUeSXNnzB8d1x9a++EvV{m3+gqN2>=BM6NjK+JJ?&T4aJE!Ii zMvL56nNRc`yXZFC@l~8NspXpX59AbLx9h@f+PUPOpkPd0d1M;#Y6b@c>TFEh-rj&@ z_HPt&Z36D#`PGV`mP^JgQ*`vjFkk43V>oixTRl0Op~XyZ_`bLtN=qnIwD+sjf_3lp z(cf8+T-l7wrs7r7-UC^lUy;`Z>+C~g9UZfUw3#e#e%|bML8rIUpj@sSL+Ur8+R})O z_319#<&`W8R1FPU3C@7nY&y_3h>zZ9^e1`DKLaEpgIvd&8DP~?E!wMdv55_McD+mR88fWZhn%+ zR}$n47zO=6u$&OyZaHr|Sz&oP4WR)SFhnyQxj2jCGV=SGG!;W$qv{EaC^G>V_{SU0 z>tlU3m7|)7ulBax7EC_7%`r%?h+G_fE#j4R*_a&Ns9A`#-K-6>B3o=od<^Ts-HU!V zn~#TtAsW946OcXPM$~(l<}wXq|0*D&>@s5epR0qL085-l?0)oeMSc=EVVWqRShxL*J5Q%u{LULd1_EzSkGk79 z&uxeuaM$%m)kePnRj_pEguLs3A2ZKh^Vz?^dMV%OwlkQ)oe&$m7VA@udq1t#HaiiQ z{GPUQnm}ciU!FbOg-UTP2rwicWsJwewU9>(J!u-Eu??k7qvL6@xQ`g>&)P3|0@B@= zNvok?TdXwY1 z!X}*y4)g&wNc~pESDLIwkZ@9~(<1#QJ_h|x(71E3j`*Q%0|_B2ydpo+>Z_P0nXHqpI4W2w}JOa<&d^>eS@IkjRiAfT={&FxDFGGK|EfYW`a znNCnz0lA#?9Nx$KAE-lCTHyvh| zD!{wXjFu1itwtF4rkw_A0T|uXB6``6L-Lb!5|c4po9hjJsYnr22#E}A&$pHLzl%=x zfua~J`o)}CsnQ&*rq!%4&shW*U|;GLDDmf4XNe2X{Jcae__&}RhMopdhYL<>gUI?# zau)Hs$Vn(<%K?2UZul&Iw$-{A1V6lT7>)r3?tXYY>;4caB9h!!)S>m0Cf2+V_l&~h zgJ!wM6sgg*%{E^BKUY}nwnPbfP*HYG_X~cUZt_{YoDaRp+}Ssn0fs**)ZnDRHSRT! zt!FzT83#t=VcD9p=!tW4?=JR**zYk8$9UZ~Jj6vf5KLZYtbtte~ss?!QH&`|$ma8J(2`fGB2+3`S}&P`lstZny?7 zpu*xs0<2=f*7YB+c9^AnmL`Ax(d;)+6JcAwrT{EgX`Lzy?~W7*uyZ=4O9oLURXmy) z0x*T~$Xs2?CT67j)w{ueMz8z*cpOr(^&GCO1qlpk&aus$9c0O#up?KkfmaK&nL^rw zPJqVL>(&4g=GuF9*}}O5nd#m}o?F2F8ZWMC=)RP9Ol;&?y7h4q#`mm>62nkDOzmU@ z<4>bq4(lnW_%Y?NLhxYYdTD<#D7j$;X;;u z=heNxLZG2HaQG&PbS-We6_MLD3_cs20}f>-^BDzM0%7${d=0$PAZl&mUczurIrG8_ z&&R2WuriFweTJ(UcG=dYujgj-Hxj)*Hyc)8wCp?bh5YDWptPFG!5w7LEYMWS(e%|Y zt_0jqdms>F64)ZhXDu~3!HnL^?Y4d2M^4}PAfHI?dS9ikZ{FWK?8i?S0gXGD>@^uj ztJzW4)Uo9KzV^@~YK?()8bN`_f5hmR!aoc*Ysrdlbx3oqb`&_y{h# zF>aUHbAx5JJjLH?-3`x$p8VKuS?f-1v|K#?F%Z?^pkAC?X`XxA)pUTytgKY@#>~sV zHr#gffX(}oPkGm==eM==9o~Oni)d?Y(8jaab_mxYE@8$=z~LO{LRFQO%pk+aki?VY zDdb>_a%p`foXfO?xsJW|4C#4#B8C&(iQ2E-$O${wbA29y+y0@0-zx#XA21Hrq`{ui zsN-j!*P}?1Z;3m-uyBh_C1nXp!>0W%QLL7K`9(>okiLFRvaHggN;1P{uF0#YfH0Ze ztc;p6|1#a#)B-a^Z(%qWvZTi+O8=Uy;z=zq!1QZ>lIwf z%htbTD7;bm!b5~9PU!?=?eq`f{5Dc7kBV!Y+`lKeR&%h;7H`=A21&27KEl2R8$MTZ z!AG8E>aC2HpiN&LvrbHW z8CH?tll6DB)%=vC+di$^I~ohf9!>Bp*;GoPtt|FP!<&e+IV%N#BlpjEZ4T z&4wO)X%DGdQ}m-X2B$*UkYy4wIt=m^6@y=-m)PuMD1gg*cr7;gQkXYNu9y}mB}IOq zP2CzB(jFQ#Td15cXSbOC{sTkv9R!_@M0;dLEaUVS?kbg5dd|msg&$lA+<@#)9YoPO z7))c@U254gBhAv~Um@5{eF|2DI;{K;Cr~!EQ~Fl*uNS9yuKF&j1c&77 zEsaMQri%XnBs3I{>xJwlmaT4B3fK(PRVTWkEvfXXy?ZWuGp}Lc=$FilcAb?G z*q1eioUcif=HR+cZj&nu2a>;aaT~-Xy1ZE_=aU&Gy1sZ8Ghtj1K{(B7ore@kMTEaG z3zIc+6&*(MEBHxX%0*K+zuf2iZc#oc#bTeMv%J84v>umbPa_>3+`6>f-7nMKVY1kr z?ToyJJZw}MO0SBSCAa2kA=v!cqQtYwbCLn|s$53W7RzPE%|i3ESEVCaQehv`uB?B7 zCIRc+q$ozeUjn~SjvKklJTChV#+|jTV7SuyytAX`Ca#ADavXNzU zsh!j{^#7)PX$ppm>;qaGpP|^pJ&1fOPu_E|yr4tBl9IpqE$Iava%*ugpuc+K^LB#J zOj!uufcrXv5YRd@{5th5(66$SKbPbPrj?5Igw?J|!nh*uS+495)iqwLcmg>pq*AgB zJ)<2`pr2S`wU-oQXgRQUrEl>GuDA3`A5W!j2`UM^htlqjLd@k$@TU~%m_>@# z_2qi=WABBjdH2>`wg#Be1HQNy_( z4ndG%(ZBv(#^8%Sg1iJGJUWE7`JW#nQujCOxB`vVRgyCaCdUKeSRgiAfDKVD=o1JRwNJ>A;=*YL#obu%CmoQLq|{{?P(|8H)?D2Ek z%xn$;k?B6C2d^IKSOQPnEC_+t@*!rIY@LfHGX&f@%>bZ;f9g|d8hN?60`3|0(5~HK zIg=H-mClmBFdDxm7jVu)Y8SGGK>}*CMfhC=hDL<6z-YQ2d3!l2wK_oE9ahA8pjI0+ z)Bh6G>NN#0j*04Aw+yW*)7YTM#Xd^-mv*5SQZ`!uC6q-!jEK!@L&G0-q+L9*J5zw! zW*}XxjoHfdI`s<{1fX@lzNb9~-LA>o1JUiUDWT33x(hR`VJ)fnjo8OS&Es+OGMzR7 zB|AG;BxhWCHkFuOfmGeh0M)hTn)X-rSH3$j0YUJ!Fwkwr={M{*)cclg^9}7So^+Ycqu{ z#T7W+-0H01``MR{ku*50Z!SC;h)J-(Wd6nj1h+B<^OUR}LyXyV27$v*)`99hC|C%( zLW;)}i`0JFsSXZ{z#b@beiIOv%VG?2>z_j_*-54jF?kGa67@NWy4|kYYAR`PHEcn< z*gd@Srd>LmWPbfde>s$>9;}x|z6-_TDhNRm&g(Pv{9T5<+-0yQ+d@_5_FmA^cSN4^ zxV+(idUAB+VFx4X_fFP|kK(hANjNf1;N|xrLOiBsIs6~1h^Ab*gTgkVC2>Wl44F{|?wBS<0L(K1ofVA;Dq^^xA z3hcG7%wfA%Ym9g3E8gk>NnMr44>;b@2V~YEoe$$1SB3j)lFXLoh3#G({MzY%=&_vb z1&V;Ov!Zlq_>fNWZ71`JEf|RhCIL)0Tg(BK_Oeoi9G1gT1>avjQ=(G`q|Xo0+mRi0 zo${BNKylVjbxp3#f>T|1R(uMF9~8Xwo&#pn(AubDv{I7{BU$;D&y~HT@9Ofsaq+V5 zw}Py56CjJsUZ>gdA@NrU{mYxXRGmn0`$+PcxtT^eJQ@6YF3C~a6-9)|jbOou3IXNE z0PwTOMZFuUztGmA@r^XD3Q((}`+;7{|FG9j#OqMS> zLSJ9S9eaFAI)I7jaz||h!(*mlGLPe84su>N3?(p zo)L*mR}<}7|D^Fvx9kAK(>6+i?wtT=Q7X?4LHkSg|var?#C(9}E0P;xzO#Yuh=veh5vQ zs+DNsTj=@Lh9GPf+h=B^d91zhzKp&0N`3vR|9+C{bDfpM9B^n@SCP4dOF>a|Mpy$l z3}R3fxeQ6r=zEqflczuZD%RmHggVmf*2)!6Q)5-o2iLHId18qyk?3SA63n!Ox1ZHt3zpT2PM z%PR@!sxFPq;k$ey^-~2cg%O3C4*wlb#Qj%sp2&_q<$CxG79GLJfi0jozmM*}@dj84Y z;!cw(si7E}&8uk6#Do5c_+NyDiaRtC?ypwP85_R+C^QpKwQBg+ymMa}|1)_?Nc<{! zDNm}s@cYT&{88xm`=WZxif*{ycmgCG^*Z&BMou-?Pf3@5n8;*O>yxUY+s`%ApH zGCV^J4>wO5wZe{n>QVWKl+1jIa?;2p-pp|0lRGC!%j!{;sGr+o@P-)S5T?W=?4VXS@&AbW4qy8`StKr?!UAw2ec%X2u`{1hwb+g zx=O$1NhJ-FE)CH>!kIUeIv>2Xjr8r62NYQv8)91BLGX1l4Kg8|-s&K|;h>PGG9rqb zhlk3@Z27yl+vtsj_;V#xC$n6F9jW){TiaP#d;Z@8B}eU9*S0V#JK&m!Yh&GJMxjp4epRt~pBgo3qaq4wi;A&+AsrTIg^=tb}HF>Rjz(B7CD2I zVlH?sLkONZY~@aj<{YE1iA@RkF{4YSAW$bhest&QMR(U@4i(QdkK!kLo2LW60%u7B z!!^wGZ{y8AO&d;ROfffRdoZ2dw^t9I4Ku0w${(6-WmNoHt?{NN(vi@?2iwchz4J5) zYJb1a=zdWmhaZ&E1V)VnQ%$c{kAO{#x$ZU4_*}XVJqMFGO^^9BW#XmrJ1CQJb~)}M z7~IFAu;N%3grvI+euj-6QWsvI*iqonru+lJodMHH`7A5HjOW)POO$ZZcu!LX+-Pl? zc@F+{#9#2sk}pDCGf0#lz%F}p5Q9t#ljH}*X%dYxP(F@UlHc0J=q4{pl^hh=*Bcv> zqN26`?j14kV!UU9%}^Yu4fOSv+5qd-$gUpq07VJ7xvV#hg*my50UEdacjtg9Ar$8gn8 z@T^oakN6C6Zyofy?jY8TP|xI>FMoxIN#K5Z5T`T^GcSojH}$(i@1EFq~)*9kW}CsDc>fvC^ML=!1I%XPG}Q5bs? zC!`deyLnT(RgWwuvglBJ9$C@(C*$JQv(JmvKi*g?Zc9?kveC+aRi&7Fp}ocIY&Gh| zK($gcUcw?D|TX zJ23ii4g3<{4P!H@yAIwAlayPCucTg=Asdrhj#31(l%11;dLmCKZ70|q_};!Q#G-E` z0~1;q*?eB_Ut97=RWy6v_myGNI9K_y=HY$Cv8=kvJeG>VJxcKz9-B!XnVAk}xp@M*+M-SlB7u=4 zQ@k5gIPw-EOT6Q?@#*P+n12?;Yy9;T{#o;ozdx&>nz=d=>ij1x?q&e+yYsSCp7GzJ zuNm^0Z?Z1p|Nf%?*6aQcB>(dd)yH5)?TNh0@TUO&zc4tU(f^-*42SC^b$=3Pn=ojo zo8W0eOu`cdVgu(GfcG<2OQig^sfYv1Iw!8h?#9=K|0V}_+SG4UZGuM! zIU*ykQU&7-Vx7BS1BOy(F!LI-p(C{(NH3XH4sqNz=%ELPUt?q_r{NTl&xAeumCP>nR2tO2NNZ#@6ssN@dK=~e zGdThhmxk@y$eYMZo=~`WmzgC2e4rV)_!%;>(!7)x&*T@RfXjNO&ZTflW$j9)%rt@A zuWYKJmO3CbWtM_gXbv&dl-n%c$} z#_L_}VjFvT$G@pP0gcv~{85Qtb2U<5Dg3=1|BO%gZ@{~>t%0umBP55VK8EC(3c|9i z>I*Wsw~w$u+0pL$N>2&cv}MNMt`f4wSv~-wgE#p(6Q}jE>D}Qf8@=DpIsF)x)w0fj zHpBlT(EbV1>F7$1i!Cl=NXyT!!`ZI9!<;V;^&3`fxaSOK4-^MHou`q$_q3bY+R|SO zdQ)$6PrAbW{&1s*$2ZFh=|db7LCV?g-t-H{w7kpzK!1$}2j0uDVxLL#wajo6!kp)2 zu?`P+$0uQzvreNoJ^6Wb=5RgYDk`cRlKntZoAqSCjmc~Y3MQhz))dvQ7u8#FQBdft zn9wX_k{YlqT-3An$)SIR)xr(8u)y%~!lVoI)n>h7(#Vxu*G0O!{eq}{c~=l851aw8 zXNc!mYsa`#*Pluyrm~M9>YI&lh3d@`b?ECN;9eBgZHA_)Ut)pS^ejer1Y2i$XCHI{$t^i0-VwNEi@?a0YQiEYZD>r)}+3gdYhse zHlPwi`+tB8CbeEbFl_smDD2C*LZ7VsNUw0;%*u?5G6Y~a`()Z;DE`I>2rIyS;Gco& z`3`knTe{tLwbyAs(9r4q^mIhJw7IjTiBUKd?e{1|JZo&~5Q+R!cL^G*G*$a;ZLk}# zO{BruD}w?oi8oo)5PsvH+&L-S2~e4`cYJ_r+JxaWtV+in;755C=FENlTnyU^2MmK> z3!%nB#WpYWn5P*1Gvn)L#Aa*|IXE_6&V!5ea}@76n$8%t%cQNS6fC00rmlL9A|qoSs)7>P7Z|SZhQ{`vClhkx$p6#LjNAy+ z=t(^!&+xvai)OvS_oV)ofK6^Q7NSrg-nzc^DcQ8#`fwfszbZY}ofpuQxJ%PNW zBQG!mc8_?iL-qnkovO~SKk(AK%#G5Q<&Zj(zx$>}x0bA@?7kTuK2IFY51NH{U&z`n zMcpX{n@rgG`?vNKOqudF!MAXR-^gfC$V|X@Z!lKKX_yE34iPal%`SNBCmRpf^408I zSFsSww$zx^@)Ogn%@R(+Whu3sGnh@)euBY}`nlMy$P8^JE?A5gFT<;T!u&-JyTEm^ zF^ssw4ElJ^0?|CmqUKYNEtES{6qvV6cRPRsG;-{+A7#iRarp!}kQK1u&T~AN&&2hx zRees^1xo7I8p`ycgf%JuOkEC>M^FZz{WO;=6a9A1C7^VPanMzZ4LnL)(KZl~(($R9?4}SS|mnszi*? zN~+WGC)=VI`H?2K&UIf)CrW-Jd3+qT`0zsu$eL|dIv2KZ$(ij()MO57IeR?(=et#?aONjK)wPuj|jEz1^=Gu=G&YGmjwKA4FbXV+Xb<(V@jk(*wOmG z(Yew`S6SpVR_O!nWxs|!IU6sk=}lEwE+j~7wo!k`EzCwrZy(RNXo)soY9HE{%b>HikyzvF z%PF-U*s?{?T{p;FKLKM}gP?a3LsO*TVB-_l-w%((w>rf;-f$IN!`OP)uk$TdU~GAf zZig>%((3xMR>=!%Jm-t2DgckSE@$`AE!|7`3*85c37~>|eLHaYLlZKh1^;DIOlUbkq!(SL3sWfMhnVK({$U2nPR0iY9 z1H&6qsYP9su>h5`pR)8Jv7>tytv~Vnr(Z?i>3JNE_+qG4u~2I!ak~0WzoohHgvJEM;pl+P=y>HBDfi5wH%ueHb6Avk$DLi`P zKNKv;Hunf0D9MvUsdW5R+Dwi@+_nu8Vp8dOvq$^Ct6eEn)d?)G6-!;fzesTYB0<8X zFzgGr3C}MXojQf0;90t)IpUq)tBY7_6(ko&EvG|a8D z$7{!jqy7Eg`ujKg`+uG`?>(-suY+UV#)oHiN5T6j5p*Twieb$Fy~4ezt3A(ex;ALt zjxDuafhHBVZjsN0olmf&T@}<9!N2(ry~3x@5(4p@}G!G8^O;kvx}!n{!pp zTV-(Kp1Qhv$M6l>!~%)?If|Rt%8yyJikv}S`1OL1ZyNPD`hy^V^-Kk(>yBt&Ip;k- zs{e;b7$eC| z3A6i@LQ-lDfvb*IjSOxNl~7smV^|Z9VK-oJxi=Uljb=xHvkTM z#L8`59cZ{$s1vBcFL7P)P&(nl9;Z~SozR$S7S-8FZB(?rc+YmDT<`6tfAM}J z*@b6lM}KfzM2P;t(_yOr6PG1nC*j3mZvGHTg2B|_S%P0U+Jsbc4diu*nO%*on5D_-6stGaNBXRi&}A*qN#|6cYl>;5n3{bw%lO9BO+w4D6y+CS>XU;hwe z2VuPTf?2|!(;5ET&*G$^GUGDmzdQQpOq>7umVWwhvOqFsH}l`y@;^j_i8L6+du{XH z{)fN3mI}TZar`~dZT_dm-X0F5MbeDwJ(+*A7LIrBZ>$lh>*}sS@&5t>!F^JItE}ya zAlF)n|8qt`8TB@Z?R9~e#C1r=_EOLDdO{Y>8aNxJ4sk&v`+zOzzaQ2b1Z2@1<$Sl+ z;J~KOU@{~$LOiqjz%(&81c1WXDSYyC*mf{WN@NbC*soY3`}fDo%z7$1ArsoI1ZLT@ zbM?An>56J1GD<@5#kfsJ&xFBp5Eq1Phza33uYY>f~yb=0jAmU0LF zhyB+&PY|Oxl2y8Hb{+DRq|bSQ2tvB!kB&R9IfWxU#iS`fBG=!_uQq&tfB(}&&ErOel;C3(;obPH3@_NAv(`yCO#%d=jy`*1 zF#)owwfHJRoVO?JM1Oviu!VV$xjIUE*cave^tXxfo((}{!UbMnnT+p|wk^bIGjK36 z;i-4CgCO&F1~7$vgHxBf&4GdC2x!U z0t!IT6IDBZRhPMRS(7k5P&Ejfl7cB#`$5TrAyOglW4AfqdKhG{gH0QUA2kz&wqOeA zs%y4~yU3}U>a^H`-#EZ5-C29HX}=Y*3PwI8>>;E;xk}dV(@v6RkSl9j^6ug$e8%LY<1Jx3%srlHkm0Vq&7o(FL zjXb}tkgSNk~lEiTbaSC(Up(Eak)4i?>^RW=E z6rH>E<{RpFEOCqJ6R2!_+?T@pW2&b5bb<2s_WI&HDM#jT;6-dl5QJ*LDBDu(x;Z_; zAB053U4bFmckXAw^{c^YVN00TPQJ_@j&8dQ9-VyG$_M1{tv;0)pC-Sr6iV2A>FE%A z0h36QNKS~j_siMgSsM_{GNcsqlQ%oaXTAicbXPq2w{kEU%^3?uhg8dcZY?O6BuC%(+;Fd%LSXX7fO#ND{ck$5gV>LdgYV4P${!R^ zUuNI@FfUl7nA^-(qW=Y>Y*3m!XEKe8?Mkrp=QLH4DBJN$@Nqq>H)%99GsDvmZA7Vw zHy%1Wfl5pS|Gwu_FZ7V`H?j!_p4HAa$%v`_m@x=lGY&cLub6x6LjcJodgLSoqpLKH zcxm4O(0yNdckkK_^=wJBFOt3wgDld+Z<=?Jh-Ee8hDwl%7!eKPuM4M%pyLY0IFE5Q zbJPF+Eb*G43``4Bl~B|F!t+^T>3x|GY~9*{2}u5-JHjN9m83$kbuT4nUKcqn_cyyB zkOyqF($Dp?-38|-tx<+c-p;}T8Ix1hR8xamE#FN$7)Fv2W%nKYAX?e{G7M*7)JZBa z-*ZnUvnp?&F#X z5Cw-+V*H=1gEga(TA?HZ2?jlgarY_;Pv|P?jC)}wn%Yp5#;y!}tRepW;~*WYRbjJD z;Slt8Ke10N%}A>R!v5ltU}t9H*VzQR_qEZ@z{NiFG8nU^?fL(t(@x`u;|dOQ~L zsF!2`9@SZyTTQU1Wm!_nwq+57GBN)W;%G!4d(yFl-!&Z19C-lmO{;`yHARzX9{-^) zlZ|3^C0rzFC+8HrbT%{sF^!R0hR2k*C}W)2ZedTMEnt`dQ9tW1kCQQ(w8zD24Sbm^ zSk7$X3C50)ysMLmwBY(X`Hn$-cl7T!I)%@TpF2~u7P(PGwtrruu0hc)b`&uxFH%C| zqQj|s%6YN3AS|HmVUv&s*=?gFVg=Nzl#!h4sA+9Pqoevg==yZHez$O1)L#mDN0hq0 z%5>w1z|wRtIN-a|nx1Urb22*LWHE=moGLkwG|^M@IQVFWUm#pQ@uiL&jTRFE7_ocp zTccm>J%h~iNf{;$ZK}P&9g+DPVBRCEjaI+7#f9HtrTa{5=azDhhK52>phKc!i2pGh z&ioTaE~L-b6`dj#q?KQ|Rcs_GN(pJjD_tMBHE>QQ{rmL!WGwkFq!Sro?VUd6gEzwepcQ*)iX+6=_BEN0xKbvWc> zcgjsHDaowAM#qCs;Y(=-2@oH1cGJ=aMcn429l=wAmzVl;SE#u1a~^6urtgHj4ud+a zT7eqA9e(&(o3DvqdbJKr8zU>~ z&uA_migbd8sD1Rn1&+)4e093GvPx8UaggvE_q?NdT4UzALDKV&yTQ9}@oA~A5Ew78 zD1ALMnVZO;V`;)D`cgGhVX5&_k^DIoi;x7s$WA!;q~(OHrJf4LcaA7X zp>^V?fkCC!y$75;wxd!XL2ec`xKyee94U`O3+8^Ta-m5O|xhg8VPCt8ttEJZKE!GR$_9rwUC zQCUW7)ngzvGPg!AeUWZflH^V68y%8rtJp{{DUZuXu}|414!8_-g~h{c+zQ;?qdPu1 zF~#`|zFTat7|e>kSJ6+~(;N^leC{0aft=)>yF?Q%kmHO@_b(yl>CQWI&gDs={#51~ zGl5c!CIb3IzUQxWSv6l1`3b;byBEfp>95N4L-KG{VD)1fWQ^xJ)`EvDTK8!>eo{dg zlr7sr_k6NfW@W4mtT!<&@k|<7R=E0|$hn0vyvR{C-kup7G}}GL2R}~eiz0UKL<+3s z!9mqIJQW=&{+&Y(Kh zk}!5i00 z!mKZ_kMA4a;i-8vw3{ycMA}^&F;qs$b_patNr(P)urOHs*go@uT~PFO$57K(HE+Fr zxm0x?uPZeGeXxm~*NR{?-i5k_TKj;QRr~Y!fp-#0AR4CFf@{aVk@f&wY3|En0hwI_ zuiuqcG)mdd#rXe&P|pmA3fbFkxGr;VWV4^1K`8j~X9%Ovz$ zupogz?TdRi8KdS?Z6&E6c*aViT~0eEFSdHx$L)WCts)k;#0=1<8V++l_Wbxm6U8s??lthuaAB+-0 ze2%8(jtMx&LS*1g9PT;(B^#E1cPb#*eS-Gjso7V=D-$f%go8e(bKs~{hlTs0J)7a6 zI&2*0s!#zlq!B<}B+_7tU2F@)4jjy)fDZDf(G~&fw3)Oa=TRnejKyTraW$~sP|Bl9 z(1_m@%;z7tbQ#aK2t5=(l(zf)?9E-dm{+Ha4!z&RPUi22(r#hSlFxs7wDTD+qiY5nJHdduh~G1o>IW+1QNCr%^w^rc0i z_FEDo6d?3FP918a!3mttH&}ISnwksuJ1s z>YP#Rtg^o;4s=y|fus4f7(7>z2MTRs%E{@kKmL$QX8kFchpgxSMQtF$j{udb4ga`6 zjX5FHzquD`)lMW}@cpXl_kXc6)T+Vo8KN%+!@U1a7>Hd*qVS#kV(Yo8g9Lyi4r#?!=HNF>DpE`q|-VP>%BuWme6)f zxC;M&Fe=HW<(B;0n~VJ4VXCM_avxq$$YHy?Hfjr0iaprQT##t@6l6$y;_>$)fK6d( zd`vQO3YlVi(DSsS)xBL7Kg1M)qi)HS@r+ZkN*03_D=(TG2AoJ{1UW>Eg_&9Yxztx` z)rV*n;X;T70c`6{ekR0RChh2Rw@Nn_mm1uEOoNd=DfL@5)Nf?Q&ut*RWk{<^U%GHT zB&VSx2s{*1`pB4s1REC5qr^XjTiso1sAvU3^iH5;SNAz8kR1b+-+)9-yEp2QtO95p z_t?|Wx@%#A?%wzhswJAO?d^`(yM+@;nLEs+LT)7xg1DbE=O~aM@!sj%r&6qJEyjro zawH&9JQB2mG0y+#{&`nmumlBm*TNo*p14g~zOIEh)~jpTz_TPMAfXFbs{LDFT3-$O zI+PQ(WjPC{$Tf@xUfczj@Pf99*KMFt935^0wa7)k4Yr9V`P~43Uw-F&@E4D=b@N|5 zitwrsX66-25g~QjBd7%-7uMdj3?Kf7M~SvWyLgpsF;_WF7uc)p4gxu{L&TY)g?d2$ z(GOCc<2B&A&rQwx4)ruruNLY!pCz6@jO5Q@rLb`e=3Lqu;x_AO;SC32jO_j-EI+wVR3{?4c8)BT(0 zexB#Puls-fmqd>m;@ZT71gy_rlK6TkF6qDg%Q;KNJex~472~RZnHVKUB%0g+_`Id9GfLna2#1;l2uWl|G}8oYp2Wk%u~|~bF_$?YYG(D z3F#h=CQh8W#);Ewpuwr0!zos|WwNA2YL$50TKpnU3~Gy5 z-tyg*OHEDXxSg~!`e#K*I$=qXXjHor661WM17etH{UFe~h7V<=TO`Jb-DBWmvJDL0}TzzhM#?fkwn# z&zb^2)ybv$85bL+tFZE4u8B|2RqmW_#-6}X?{Tv~=S9`aTR?AQ7YVlOE5&j ztY^pcAB4eECYjQx8<0;X2#gd{#FKgH`PBSC@6>>04elH!uk*wTIMNp?iD9q>b>nK| zAjx02k${U}*mUXTZN-{FZwxAJ{5Dk*Q2D&7*LY~ z0lj* zvfsxpsnT}R-pb<>$C)cMtsAuT;Uvglr7~pe*j6}H5uM@`L+B0?>1*c`jr7dmV8{5Q zns(n?>3ddXk3sHfv#K<+0Kd)|h$FH0o@Q+iw!FuBp{uYeaobFJJ43$RySQZ{c*!st z&SF0sI7)<8{M?Kf`z1Y?cMSaS;NCgE^bDKJ>gTPW-I@iAY12(vjR@dSxnBb*SkIPv zw}HV5-!=mylqE6|5Trfd?_~gN&mCzr`aD6FVv);~n|eZklZ->RVdoILK3fTTH5>%U z?q|)%n$66Nt3`uxp1s`50K+E*f0X~m_kdj%!9pH;hgcw3NCw~5qUXBnlS)~gw#g=K z=X|%G(k%!MbmBJ@^X5E7dgdtw+mfg#TdJ`qZEdysL{Pi!okV5RDIGQkbgO2!zxaqr z(Ml8|9|TlUvotxzw=qnBBTTg^Zs|-{KqpmFopiN?sjMf|c4Gq($ysm61$zWxzR6UR z73psV;wb{bsaK=7gT$RLRs(pL;cMnk+3B5|w@6X%4GALE+XHP; z0si7;H}$TwGllP9$hbB0>GQ>yg3D_7!H!`nmyud;gik-+m4g?abjh(Uk!6eKz5-5y z>#(ha&z{YnrD|~;7SDleQx4ccsnn8gq$^w!b}V?q(}&aqDLsR+B!Xuu7xw? z-YEXdH6;?j0bp6?u045liY79{@5!`eYHRK zQC^#k3m)Eb0(w1>1eCO|$%LD9Jkf9)o7&ZOF4v3#FPxI1 zl9^RKe??!l8Mq{n)N5V7s+AC>-FW?SUj>b|yhtSSl)9OJ5>-LJ7;$Cl|AM7HaZ%=+~7QQm=0IqE58)qsMnb zBfz?VmP4sTBE!P!L5IIaGY>qpUhxK?+}Nj91#Bh=9UCM*WqVx%fRBzPf|vyP6MB*7 zB_9P{`Ej|Zq2Hfv3EtqI4CpK!*?iz1aKrIK(a{Q z7kW*fhFf1|!(OLtPtQPf=%jSVUUFAYJC1NQ4S%iy2|dVt(`lYWss&z8Vi(CL2%RkB zDJRG2B{D_sp8>8$=!5!|5sjRepA~u=!Q}0aCbOYLwzXe%IR%~ZCie=xWKkp|8aeSv zS}q2lgdmD+ACxNRLstA~^#kXqrDfAz;YBT}Xize))V+)J=*eyH^g!+iC(I0t0^gr_ z4igZ^CW%XO`pJa$cTU;!0~6Mu-HZ`mR#_GFayf(;yRPXifs2Z(c3So&^=i+7HmL=f z0JB0BpNXc2H*poiH&ysIUrvQ9d}9PY7JV9&iTDq6(DyV41s|~oD26wqK*cc67LAKE zmb(iC{s|TQTeVXM-xldrHbX5|xo*(z4eZU@_m0l;AAK_wsd?P&7(Em&(Yu&6%0*e{ z4gD~dOeh~B|@XW!)9V$C&<^H82Oo{CvG-40Ye5efTTCo_*c^BhQHAQ=VED|kmGAI zp^{cijVXK~C2KdF=Z6)wqbHb3<#BOVNK6wr$C?qI{;Nlt1xK=#{z9n!VPvDo`~p17 z#lWZ`6D?a)b_^C}Ch0?!TusiG8c5^JO|im@8OY!>fq0pe5f_gaT^?%FBU~uNc+X+Nu!k*qnKVXE%nNt z+^CytnRDvSZeq+arLUCwwNW^QcBQ}X#=E3K(xmeyR5R_B+g2Nx6gUQZ9p8eiQEIyh zba$>{O@lG`# zQrAMu+d6JVsh-fzSb7c390uDk2L<+K5i^zx9Jy}?XX=@kvSi!6k3HqfxVU-`y(Sw~ zfs5u9cFCVA`0azD|L-0-$H(l+-lHt_gB%y5eNz_orQ=U@acARLZpuEY)$Qvk=(w@H zTVW|xvkdvD8@>f~jJ$$$?$H)mDuxuA8~F&6&;rfYs=_JO(I`O8N#?bfBHy* z`D4E<%F|BG)O`$GTeejegE*w?HRnVMNO|96V9MMzpahm0>LpHA2iuR0OM@G5m&^z- zhD4p24%^rE3Ii&b?sT9vu{cC{M za1F9reaeaAyXL)#jzK9~7UnRqTtTbgD{IsAJ< z>CDWG-_Ub^yNDgWp@S%I$$g)ViSdJmc~6$ZP)?C|V6NAYin1S&eCtoU}vv%-4@LvWo1zWUfbZiO1a zb>WY0ys!BkX8G@6iD)3sC=<9rFZ(~N8MyXExGo2X)&c*(l@Mr22#}yG*QrC$%KFaP z`F1g*2XiU3TJYhYBf((*uLtvV6dc)J_@?arZvZZ%xzeTYzLd+~1D3&CB~RPXut2FZ z*)wxEWai@D-Z$AZbH5-nC-0Lk{o~9%LS~Mq&N_Y1%#8t3mSsP2XpaNs1^uaTR04^? T&l*dnfuFIV1-9Jae8j&2!c1>K literal 0 HcmV?d00001 diff --git a/labworks/LW1/paragraph_12_1.png b/labworks/LW1/paragraph_12_1.png new file mode 100644 index 0000000000000000000000000000000000000000..3576138e3c7b23f7de13ea89a25c275cc692a8dd GIT binary patch literal 81927 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 lVOI<@sI=hK( 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 SKYxl$XlJu~dx6!#)BgcSrKzL< literal 0 HcmV?d00001 diff --git a/labworks/LW1/paragraph_6.png b/labworks/LW1/paragraph_6.png new file mode 100644 index 0000000000000000000000000000000000000000..34d20e26e30d42eb32126600e28a9cfab3ebcf4e GIT binary patch literal 38918 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 Tv)n&G?w}y6B2yw|?En7(JNyTP literal 0 HcmV?d00001 diff --git a/labworks/LW1/paragraph_8.png b/labworks/LW1/paragraph_8.png new file mode 100644 index 0000000000000000000000000000000000000000..cb031ff257655e79a5afb0c4742810d1603ef4d5 GIT binary patch literal 59680 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

r^^<4JU-TIA+`I>LW+{S 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

    FWw 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