{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "87082723",
   "metadata": {
    "id": "p6yklm2xWn9f"
   },
   "source": [
    "## Part I: Data Pre-processing"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "16ef62cd",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:24.926221Z",
     "iopub.status.busy": "2026-10-04T07:36:24.926221Z",
     "iopub.status.idle": "2026-10-04T07:36:25.290370Z",
     "shell.execute_reply": "2026-10-04T07:36:25.290370Z"
    },
    "id": "YycoIJomXwqH"
   },
   "outputs": [],
   "source": [
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "f372efbc",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.326886Z",
     "iopub.status.busy": "2026-10-04T07:36:25.326886Z",
     "iopub.status.idle": "2026-10-04T07:36:25.557837Z",
     "shell.execute_reply": "2026-10-04T07:36:25.557837Z"
    },
    "id": "KKAXuhZIUxD8"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "downloaded questions-words.txt\n"
     ]
    }
   ],
   "source": [
    "# [Data loading changed] 規定允許修改資料載入部分。\n",
    "# 原本是 `!wget ...`。Windows 沒有 wget，改用 Python 內建的 urllib 下載同一個網址。\n",
    "import urllib.request\n",
    "urllib.request.urlretrieve(\"http://download.tensorflow.org/data/questions-words.txt\", \"questions-words.txt\")\n",
    "print(\"downloaded questions-words.txt\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "4d4e2ac0",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.592410Z",
     "iopub.status.busy": "2026-10-04T07:36:25.592410Z",
     "iopub.status.idle": "2026-10-04T07:36:25.603494Z",
     "shell.execute_reply": "2026-10-04T07:36:25.603494Z"
    },
    "id": "xue5pVFLVNQQ"
   },
   "outputs": [],
   "source": [
    "# Preprocess the dataset\n",
    "file_name = \"questions-words\"\n",
    "with open(f\"{file_name}.txt\", \"r\") as f:\n",
    "    data = f.read().splitlines()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "3906a5c7",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.639566Z",
     "iopub.status.busy": "2026-10-04T07:36:25.638595Z",
     "iopub.status.idle": "2026-10-04T07:36:25.642041Z",
     "shell.execute_reply": "2026-10-04T07:36:25.642041Z"
    },
    "id": "h7dOdJOsZzAF"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      ": capital-common-countries\n",
      "Athens Greece Baghdad Iraq\n",
      "Athens Greece Bangkok Thailand\n",
      "Athens Greece Beijing China\n",
      "Athens Greece Berlin Germany\n",
      "Athens Greece Bern Switzerland\n",
      "Athens Greece Cairo Egypt\n",
      "Athens Greece Canberra Australia\n",
      "Athens Greece Hanoi Vietnam\n",
      "Athens Greece Havana Cuba\n"
     ]
    }
   ],
   "source": [
    "# check data from the first 10 entries\n",
    "for entry in data[:10]:\n",
    "    print(entry)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "d19a9e22",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.677573Z",
     "iopub.status.busy": "2026-10-04T07:36:25.676574Z",
     "iopub.status.idle": "2026-10-04T07:36:25.684588Z",
     "shell.execute_reply": "2026-10-04T07:36:25.684588Z"
    },
    "id": "wmYQ0IWZZxf3"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "19544 questions\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# TODO1: Write your code here for processing data to pd.DataFrame\n",
    "# Please note that the first five mentions of \": \" indicate `semantic`,\n",
    "# and the remaining nine belong to the `syntatic` category.\n",
    "questions, categories, sub_categories = [], [], []\n",
    "n_headers = 0          # 目前讀到第幾個 \": \" 標題\n",
    "current_sub = None     # 目前所在的小類，例如 \": capital-common-countries\"\n",
    "for line in data:\n",
    "    if line.startswith(\": \"):          # 這一行是小類標題，不是題目\n",
    "        n_headers += 1\n",
    "        current_sub = line\n",
    "        continue\n",
    "    questions.append(line)\n",
    "    categories.append(\"Semantic\" if n_headers <= 5 else \"Syntactic\")\n",
    "    sub_categories.append(current_sub)\n",
    "print(len(questions), \"questions\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "4d425185",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.719371Z",
     "iopub.status.busy": "2026-10-04T07:36:25.719371Z",
     "iopub.status.idle": "2026-10-04T07:36:25.723449Z",
     "shell.execute_reply": "2026-10-04T07:36:25.723449Z"
    },
    "id": "_bKA05rVZb_i"
   },
   "outputs": [],
   "source": [
    "# Create the dataframe\n",
    "df = pd.DataFrame(\n",
    "    {\n",
    "        \"Question\": questions,\n",
    "        \"Category\": categories,\n",
    "        \"SubCategory\": sub_categories,\n",
    "    }\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "a45324e5",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.761643Z",
     "iopub.status.busy": "2026-10-04T07:36:25.761643Z",
     "iopub.status.idle": "2026-10-04T07:36:25.770630Z",
     "shell.execute_reply": "2026-10-04T07:36:25.770630Z"
    },
    "id": "UN2FBcicZmpV"
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Question</th>\n",
       "      <th>Category</th>\n",
       "      <th>SubCategory</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>Athens Greece Baghdad Iraq</td>\n",
       "      <td>Semantic</td>\n",
       "      <td>: capital-common-countries</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>Athens Greece Bangkok Thailand</td>\n",
       "      <td>Semantic</td>\n",
       "      <td>: capital-common-countries</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>Athens Greece Beijing China</td>\n",
       "      <td>Semantic</td>\n",
       "      <td>: capital-common-countries</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>Athens Greece Berlin Germany</td>\n",
       "      <td>Semantic</td>\n",
       "      <td>: capital-common-countries</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>Athens Greece Bern Switzerland</td>\n",
       "      <td>Semantic</td>\n",
       "      <td>: capital-common-countries</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                         Question  Category                 SubCategory\n",
       "0      Athens Greece Baghdad Iraq  Semantic  : capital-common-countries\n",
       "1  Athens Greece Bangkok Thailand  Semantic  : capital-common-countries\n",
       "2     Athens Greece Beijing China  Semantic  : capital-common-countries\n",
       "3    Athens Greece Berlin Germany  Semantic  : capital-common-countries\n",
       "4  Athens Greece Bern Switzerland  Semantic  : capital-common-countries"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "723910df",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.805638Z",
     "iopub.status.busy": "2026-10-04T07:36:25.805638Z",
     "iopub.status.idle": "2026-10-04T07:36:25.828608Z",
     "shell.execute_reply": "2026-10-04T07:36:25.828608Z"
    },
    "id": "nMGvoDeiZhbp"
   },
   "outputs": [],
   "source": [
    "df.to_csv(f\"{file_name}.csv\", index=False)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "816d08e7",
   "metadata": {
    "id": "Zi2SNNuHWiZO"
   },
   "source": [
    "## Part II: Use pre-trained word embeddings\n",
    "- After finish Part I, you can run Part II code blocks only."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "32c38f9a",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:25.863300Z",
     "iopub.status.busy": "2026-10-04T07:36:25.863300Z",
     "iopub.status.idle": "2026-10-04T07:36:27.580215Z",
     "shell.execute_reply": "2026-10-04T07:36:27.579713Z"
    },
    "id": "yB4rpJymXiSN"
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import gensim.downloader\n",
    "from tqdm import tqdm\n",
    "import matplotlib.pyplot as plt\n",
    "from sklearn.manifold import TSNE"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "922e2a97",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:27.615217Z",
     "iopub.status.busy": "2026-10-04T07:36:27.615217Z",
     "iopub.status.idle": "2026-10-04T07:36:27.637226Z",
     "shell.execute_reply": "2026-10-04T07:36:27.636724Z"
    },
    "id": "-pGLoyKSHXuQ"
   },
   "outputs": [],
   "source": [
    "data = pd.read_csv(\"questions-words.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "0cdb4dbb",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:27.673735Z",
     "iopub.status.busy": "2026-10-04T07:36:27.673735Z",
     "iopub.status.idle": "2026-10-04T07:36:58.862689Z",
     "shell.execute_reply": "2026-10-04T07:36:58.862689Z"
    },
    "id": "YWa_1hF3aZHO"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The Gensim model loaded successfully!\n"
     ]
    }
   ],
   "source": [
    "MODEL_NAME = \"glove-wiki-gigaword-100\"\n",
    "# You can try other models.\n",
    "# https://radimrehurek.com/gensim/models/word2vec.html#pretrained-models\n",
    "\n",
    "# Load the pre-trained model (using GloVe vectors here)\n",
    "model = gensim.downloader.load(MODEL_NAME)\n",
    "print(\"The Gensim model loaded successfully!\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "77a32f7a",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:36:58.897636Z",
     "iopub.status.busy": "2026-10-04T07:36:58.897636Z",
     "iopub.status.idle": "2026-10-04T07:39:12.660682Z",
     "shell.execute_reply": "2026-10-04T07:39:12.660682Z"
    },
    "id": "YTsqJcP1WSTH"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 0/19544 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 7/19544 [00:00<04:39, 69.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 24/19544 [00:00<02:37, 124.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 41/19544 [00:00<02:18, 140.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 57/19544 [00:00<02:12, 147.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 73/19544 [00:00<02:08, 151.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 90/19544 [00:00<02:05, 155.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 107/19544 [00:00<02:03, 157.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 124/19544 [00:00<02:01, 159.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 141/19544 [00:00<02:01, 160.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 158/19544 [00:01<02:00, 160.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 175/19544 [00:01<02:01, 159.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 192/19544 [00:01<02:00, 160.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 209/19544 [00:01<02:00, 159.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 226/19544 [00:01<02:00, 160.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 243/19544 [00:01<02:00, 160.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|▏         | 260/19544 [00:01<02:05, 153.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|▏         | 276/19544 [00:01<02:05, 154.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|▏         | 293/19544 [00:01<02:02, 156.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 310/19544 [00:02<02:01, 158.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 327/19544 [00:02<02:00, 159.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 343/19544 [00:02<02:00, 159.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 360/19544 [00:02<01:59, 160.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 377/19544 [00:02<01:59, 159.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 394/19544 [00:02<01:59, 160.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 411/19544 [00:02<01:58, 160.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 428/19544 [00:02<01:58, 161.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 445/19544 [00:02<01:57, 162.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 462/19544 [00:02<01:57, 162.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 479/19544 [00:03<01:57, 161.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 496/19544 [00:03<01:58, 161.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 513/19544 [00:03<01:57, 162.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 530/19544 [00:03<01:57, 162.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 547/19544 [00:03<01:56, 162.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 564/19544 [00:03<01:57, 162.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 581/19544 [00:03<01:57, 162.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 598/19544 [00:03<01:58, 160.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 615/19544 [00:03<01:59, 158.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 632/19544 [00:04<01:58, 159.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 649/19544 [00:04<01:58, 159.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 666/19544 [00:04<01:57, 160.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 683/19544 [00:04<01:57, 160.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▎         | 700/19544 [00:04<01:57, 160.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▎         | 717/19544 [00:04<01:59, 157.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 733/19544 [00:04<02:04, 151.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 750/19544 [00:04<02:01, 154.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 767/19544 [00:04<01:59, 157.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 784/19544 [00:04<01:58, 158.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 801/19544 [00:05<01:57, 158.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 818/19544 [00:05<01:57, 159.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 835/19544 [00:05<01:56, 160.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 852/19544 [00:05<01:55, 161.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 869/19544 [00:05<01:56, 160.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 886/19544 [00:05<01:56, 160.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 903/19544 [00:05<01:55, 161.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 920/19544 [00:05<01:55, 160.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 937/19544 [00:05<01:55, 160.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 954/19544 [00:06<01:55, 161.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 971/19544 [00:06<01:54, 162.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 988/19544 [00:06<01:54, 161.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1005/19544 [00:06<01:54, 161.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1022/19544 [00:06<01:54, 161.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1039/19544 [00:06<01:55, 160.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1056/19544 [00:06<01:55, 159.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1072/19544 [00:06<01:56, 158.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1088/19544 [00:06<01:57, 156.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1104/19544 [00:06<01:57, 157.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1121/19544 [00:07<01:56, 158.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1137/19544 [00:07<01:55, 158.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1154/19544 [00:07<01:55, 159.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1170/19544 [00:07<01:55, 159.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1187/19544 [00:07<01:54, 160.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1204/19544 [00:07<01:54, 159.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1221/19544 [00:07<01:53, 161.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▋         | 1238/19544 [00:07<01:54, 160.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▋         | 1255/19544 [00:07<01:56, 156.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1271/19544 [00:08<01:57, 155.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1287/19544 [00:08<02:00, 151.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1303/19544 [00:08<01:59, 153.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1320/19544 [00:08<01:57, 155.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1337/19544 [00:08<01:54, 159.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1353/19544 [00:08<01:54, 159.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1369/19544 [00:08<01:54, 159.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1386/19544 [00:08<01:53, 160.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1403/19544 [00:08<01:53, 160.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1420/19544 [00:08<01:57, 154.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1437/19544 [00:09<01:55, 156.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1454/19544 [00:09<01:53, 158.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1471/19544 [00:09<01:53, 159.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1488/19544 [00:09<01:52, 161.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1505/19544 [00:09<01:51, 161.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1522/19544 [00:09<01:51, 161.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1539/19544 [00:09<01:53, 157.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1555/19544 [00:09<01:56, 154.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1572/19544 [00:09<01:54, 156.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1589/19544 [00:10<01:53, 158.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1606/19544 [00:10<01:51, 160.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1623/19544 [00:10<01:51, 160.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1640/19544 [00:10<01:50, 162.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1657/19544 [00:10<01:49, 163.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▊         | 1674/19544 [00:10<01:48, 163.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▊         | 1691/19544 [00:10<01:49, 163.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▊         | 1708/19544 [00:10<01:49, 162.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1725/19544 [00:10<01:50, 161.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1742/19544 [00:10<01:49, 161.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1759/19544 [00:11<01:49, 162.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1776/19544 [00:11<01:49, 162.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1793/19544 [00:11<01:48, 163.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1810/19544 [00:11<01:48, 162.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1827/19544 [00:11<01:48, 163.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1844/19544 [00:11<01:48, 163.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1861/19544 [00:11<01:49, 161.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1878/19544 [00:11<01:48, 162.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1895/19544 [00:11<01:51, 158.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1911/19544 [00:12<01:52, 156.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1928/19544 [00:12<01:51, 158.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1945/19544 [00:12<01:50, 159.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 1962/19544 [00:12<01:49, 160.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 1979/19544 [00:12<01:49, 160.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 1996/19544 [00:12<01:48, 161.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 2013/19544 [00:12<01:48, 160.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 2030/19544 [00:12<01:48, 161.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 2047/19544 [00:12<01:48, 161.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2064/19544 [00:12<01:48, 161.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2081/19544 [00:13<01:48, 161.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2098/19544 [00:13<01:48, 160.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2115/19544 [00:13<01:48, 161.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2132/19544 [00:13<01:48, 161.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2149/19544 [00:13<01:47, 161.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2166/19544 [00:13<01:46, 162.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2183/19544 [00:13<01:47, 161.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█▏        | 2200/19544 [00:13<01:47, 161.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█▏        | 2217/19544 [00:13<01:46, 162.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█▏        | 2234/19544 [00:14<01:47, 161.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2251/19544 [00:14<01:49, 157.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2268/19544 [00:14<01:48, 159.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2285/19544 [00:14<01:46, 161.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2302/19544 [00:14<01:46, 162.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2319/19544 [00:14<01:46, 162.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2336/19544 [00:14<01:45, 163.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2353/19544 [00:14<01:45, 162.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2370/19544 [00:14<01:49, 156.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2386/19544 [00:14<01:49, 156.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2403/19544 [00:15<01:47, 159.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2420/19544 [00:15<01:46, 161.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2437/19544 [00:15<01:45, 162.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2454/19544 [00:15<01:44, 163.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2471/19544 [00:15<01:44, 163.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2488/19544 [00:15<01:44, 163.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2505/19544 [00:15<01:45, 161.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2522/19544 [00:15<01:45, 161.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2539/19544 [00:15<01:45, 161.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2556/19544 [00:16<01:46, 160.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2573/19544 [00:16<01:48, 155.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2589/19544 [00:16<01:50, 153.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2606/19544 [00:16<01:48, 156.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2622/19544 [00:16<01:48, 156.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2638/19544 [00:16<01:48, 156.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▎        | 2654/19544 [00:16<01:48, 155.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▎        | 2670/19544 [00:16<01:48, 155.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▎        | 2686/19544 [00:16<01:47, 156.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2703/19544 [00:16<01:46, 158.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2719/19544 [00:17<01:50, 152.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2735/19544 [00:17<01:50, 152.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2752/19544 [00:17<01:48, 155.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2769/19544 [00:17<01:46, 157.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2786/19544 [00:17<01:45, 158.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2803/19544 [00:17<01:44, 160.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2820/19544 [00:17<01:44, 159.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2836/19544 [00:17<01:44, 159.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2852/19544 [00:17<01:46, 157.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2868/19544 [00:18<01:47, 154.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2885/19544 [00:18<01:45, 157.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2901/19544 [00:18<01:48, 153.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2917/19544 [00:18<01:48, 152.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2933/19544 [00:18<01:49, 151.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2949/19544 [00:18<01:50, 149.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2965/19544 [00:18<01:52, 147.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2981/19544 [00:18<01:50, 149.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2997/19544 [00:18<01:48, 151.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 3013/19544 [00:18<01:47, 153.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3030/19544 [00:19<01:46, 155.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3046/19544 [00:19<01:46, 155.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3062/19544 [00:19<01:46, 154.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3079/19544 [00:19<01:44, 157.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3096/19544 [00:19<01:43, 159.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3113/19544 [00:19<01:42, 160.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3130/19544 [00:19<01:42, 160.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3147/19544 [00:19<01:43, 159.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3164/19544 [00:19<01:42, 159.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▋        | 3180/19544 [00:20<01:46, 153.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▋        | 3197/19544 [00:20<01:45, 155.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▋        | 3214/19544 [00:20<01:43, 158.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3230/19544 [00:20<01:42, 158.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3247/19544 [00:20<01:41, 159.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3264/19544 [00:20<01:41, 160.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3281/19544 [00:20<01:41, 160.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3298/19544 [00:20<01:41, 160.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3315/19544 [00:20<01:41, 160.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3332/19544 [00:20<01:40, 161.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3349/19544 [00:21<01:40, 161.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3366/19544 [00:21<01:39, 162.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3383/19544 [00:21<01:39, 162.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3400/19544 [00:21<01:39, 161.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3417/19544 [00:21<01:40, 161.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3434/19544 [00:21<01:39, 161.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3451/19544 [00:21<01:39, 161.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3468/19544 [00:21<01:39, 161.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3485/19544 [00:21<01:39, 161.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3502/19544 [00:22<01:38, 162.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3519/19544 [00:22<01:39, 161.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3536/19544 [00:22<01:43, 154.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3553/19544 [00:22<01:42, 156.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3570/19544 [00:22<01:41, 157.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3587/19544 [00:22<01:40, 158.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3603/19544 [00:22<01:40, 158.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▊        | 3620/19544 [00:22<01:39, 159.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▊        | 3636/19544 [00:22<01:39, 159.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▊        | 3652/19544 [00:22<01:40, 158.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3669/19544 [00:23<01:39, 159.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3686/19544 [00:23<01:38, 160.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3703/19544 [00:23<01:37, 161.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3720/19544 [00:23<01:37, 162.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3737/19544 [00:23<01:37, 162.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3754/19544 [00:23<01:37, 162.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3771/19544 [00:23<01:37, 162.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3788/19544 [00:23<01:37, 162.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3805/19544 [00:23<01:37, 161.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3822/19544 [00:24<01:37, 161.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3839/19544 [00:24<01:37, 161.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3856/19544 [00:24<01:36, 162.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3873/19544 [00:24<01:39, 157.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3889/19544 [00:24<01:39, 157.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3906/19544 [00:24<01:38, 158.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3923/19544 [00:24<01:37, 159.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3940/19544 [00:24<01:37, 160.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3957/19544 [00:24<01:36, 161.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3974/19544 [00:24<01:36, 161.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3991/19544 [00:25<01:37, 159.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4007/19544 [00:25<01:40, 154.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4024/19544 [00:25<01:38, 157.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4041/19544 [00:25<01:37, 158.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4058/19544 [00:25<01:37, 158.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4075/19544 [00:25<01:36, 159.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4091/19544 [00:25<01:36, 159.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4108/19544 [00:25<01:36, 160.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4125/19544 [00:25<01:35, 161.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4142/19544 [00:26<01:35, 161.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██▏       | 4159/19544 [00:26<01:35, 160.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██▏       | 4176/19544 [00:26<01:35, 160.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██▏       | 4193/19544 [00:26<01:34, 161.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4210/19544 [00:26<01:34, 162.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4227/19544 [00:26<01:34, 162.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4244/19544 [00:26<01:34, 162.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4261/19544 [00:26<01:34, 161.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4278/19544 [00:26<01:35, 160.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4295/19544 [00:26<01:34, 160.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4312/19544 [00:27<01:34, 160.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4329/19544 [00:27<01:34, 160.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4346/19544 [00:27<01:35, 158.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4362/19544 [00:27<01:36, 156.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4379/19544 [00:27<01:35, 158.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4396/19544 [00:27<01:34, 159.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4413/19544 [00:27<01:34, 160.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4430/19544 [00:27<01:33, 160.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4447/19544 [00:27<01:33, 161.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4464/19544 [00:28<01:37, 155.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4480/19544 [00:28<01:38, 152.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4496/19544 [00:28<01:37, 154.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4512/19544 [00:28<01:36, 155.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4529/19544 [00:28<01:35, 157.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4546/19544 [00:28<01:34, 158.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4563/19544 [00:28<01:33, 159.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4579/19544 [00:28<01:34, 159.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▎       | 4596/19544 [00:28<01:33, 160.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▎       | 4613/19544 [00:28<01:32, 161.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▎       | 4630/19544 [00:29<01:33, 158.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4647/19544 [00:29<01:32, 160.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4664/19544 [00:29<01:32, 161.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4681/19544 [00:29<01:33, 159.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4697/19544 [00:29<01:35, 155.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4713/19544 [00:29<01:35, 155.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4729/19544 [00:29<01:35, 155.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4745/19544 [00:29<01:36, 153.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4762/19544 [00:29<01:34, 155.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4778/19544 [00:30<01:34, 156.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4794/19544 [00:30<01:33, 156.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4810/19544 [00:30<01:35, 154.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4826/19544 [00:30<01:37, 150.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4842/19544 [00:30<01:36, 152.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4858/19544 [00:30<01:35, 154.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4875/19544 [00:30<01:34, 155.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4891/19544 [00:30<01:34, 155.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4907/19544 [00:30<01:34, 154.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4923/19544 [00:30<01:34, 154.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4939/19544 [00:31<01:33, 155.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4955/19544 [00:31<01:33, 155.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4971/19544 [00:31<01:33, 155.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 4987/19544 [00:31<01:33, 155.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5003/19544 [00:31<01:33, 155.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5019/19544 [00:31<01:33, 155.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5035/19544 [00:31<01:32, 156.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5051/19544 [00:31<01:33, 154.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5067/19544 [00:31<01:33, 154.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5083/19544 [00:32<01:34, 153.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5099/19544 [00:32<01:35, 151.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5115/19544 [00:32<01:35, 151.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5131/19544 [00:32<01:35, 150.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5147/19544 [00:32<01:38, 146.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5162/19544 [00:32<01:38, 145.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5177/19544 [00:32<01:38, 146.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5192/19544 [00:32<01:37, 147.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5208/19544 [00:32<01:36, 148.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5224/19544 [00:32<01:35, 150.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5240/19544 [00:33<01:34, 151.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5256/19544 [00:33<01:34, 151.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5272/19544 [00:33<01:34, 151.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5288/19544 [00:33<01:33, 151.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5304/19544 [00:33<01:33, 152.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5320/19544 [00:33<01:33, 151.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5336/19544 [00:33<01:32, 153.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5352/19544 [00:33<01:32, 152.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5368/19544 [00:33<01:32, 152.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5384/19544 [00:34<01:33, 152.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5400/19544 [00:34<01:32, 152.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5416/19544 [00:34<01:32, 153.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5432/19544 [00:34<01:31, 154.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5448/19544 [00:34<01:31, 153.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5464/19544 [00:34<01:32, 152.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5480/19544 [00:34<01:36, 145.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5495/19544 [00:34<01:40, 139.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5510/19544 [00:34<01:40, 139.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5524/19544 [00:34<01:40, 139.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5538/19544 [00:35<01:44, 134.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5552/19544 [00:35<01:46, 130.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5566/19544 [00:35<01:48, 128.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▊       | 5579/19544 [00:35<01:49, 127.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▊       | 5592/19544 [00:35<01:52, 124.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▊       | 5605/19544 [00:35<01:51, 124.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5619/19544 [00:35<01:49, 127.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5634/19544 [00:35<01:45, 131.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5648/19544 [00:35<01:44, 133.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5662/19544 [00:36<01:42, 134.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5676/19544 [00:36<01:46, 130.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5690/19544 [00:36<01:49, 126.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5704/19544 [00:36<01:46, 129.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5718/19544 [00:36<01:47, 128.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5732/19544 [00:36<01:46, 129.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5746/19544 [00:36<01:44, 131.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5761/19544 [00:36<01:41, 136.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5775/19544 [00:36<01:41, 136.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5789/19544 [00:37<01:40, 136.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5803/19544 [00:37<01:40, 137.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5819/19544 [00:37<01:35, 143.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5835/19544 [00:37<01:33, 146.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5851/19544 [00:37<01:33, 147.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5866/19544 [00:37<01:33, 145.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5881/19544 [00:37<01:37, 139.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5896/19544 [00:37<01:36, 141.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5911/19544 [00:37<01:36, 141.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5926/19544 [00:37<01:36, 141.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5941/19544 [00:38<01:37, 139.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5955/19544 [00:38<01:40, 135.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 5969/19544 [00:38<01:40, 135.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 5984/19544 [00:38<01:37, 139.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 5999/19544 [00:38<01:37, 139.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6015/19544 [00:38<01:34, 143.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6031/19544 [00:38<01:32, 146.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6047/19544 [00:38<01:31, 148.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6063/19544 [00:38<01:29, 150.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6079/19544 [00:39<01:28, 152.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6095/19544 [00:39<01:28, 152.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███▏      | 6111/19544 [00:39<01:28, 151.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███▏      | 6127/19544 [00:39<01:29, 150.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███▏      | 6143/19544 [00:39<01:29, 149.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6159/19544 [00:39<01:29, 149.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6174/19544 [00:39<01:29, 148.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6189/19544 [00:39<01:31, 145.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6204/19544 [00:39<01:32, 143.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6219/19544 [00:39<01:32, 144.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6234/19544 [00:40<01:33, 142.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6249/19544 [00:40<01:33, 142.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6264/19544 [00:40<01:33, 141.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6279/19544 [00:40<01:33, 141.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6294/19544 [00:40<01:34, 139.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6308/19544 [00:40<01:39, 132.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6324/19544 [00:40<01:34, 139.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6340/19544 [00:40<01:32, 142.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6356/19544 [00:40<01:30, 145.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6371/19544 [00:41<01:30, 146.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6387/19544 [00:41<01:29, 146.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6402/19544 [00:41<01:29, 146.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6417/19544 [00:41<01:28, 147.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6432/19544 [00:41<01:28, 147.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6447/19544 [00:41<01:28, 148.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6463/19544 [00:41<01:27, 149.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6478/19544 [00:41<01:28, 147.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6493/19544 [00:41<01:28, 146.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6508/19544 [00:41<01:29, 145.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6523/19544 [00:42<01:29, 145.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6538/19544 [00:42<01:28, 146.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▎      | 6553/19544 [00:42<01:29, 145.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▎      | 6568/19544 [00:42<01:28, 146.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▎      | 6583/19544 [00:42<01:33, 138.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6597/19544 [00:42<01:34, 136.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6611/19544 [00:42<01:36, 133.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6625/19544 [00:42<01:37, 132.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6640/19544 [00:42<01:35, 134.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6654/19544 [00:43<01:35, 135.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6668/19544 [00:43<01:38, 131.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6682/19544 [00:43<01:36, 132.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6696/19544 [00:43<01:35, 134.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6710/19544 [00:43<01:34, 135.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6724/19544 [00:43<01:35, 134.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6738/19544 [00:43<01:35, 133.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6752/19544 [00:43<01:38, 130.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6766/19544 [00:43<01:37, 131.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6780/19544 [00:44<01:36, 132.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6794/19544 [00:44<01:34, 134.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6808/19544 [00:44<01:34, 135.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6822/19544 [00:44<01:33, 136.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6836/19544 [00:44<01:32, 136.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6850/19544 [00:44<01:32, 137.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6864/19544 [00:44<01:32, 136.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6878/19544 [00:44<01:32, 137.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6892/19544 [00:44<01:33, 135.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6906/19544 [00:44<01:40, 125.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6919/19544 [00:45<01:41, 124.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6932/19544 [00:45<01:42, 123.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6946/19544 [00:45<01:39, 126.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6960/19544 [00:45<01:37, 128.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6973/19544 [00:45<01:37, 128.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6986/19544 [00:45<01:37, 128.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6999/19544 [00:45<01:38, 127.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7012/19544 [00:45<01:41, 123.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7026/19544 [00:45<01:39, 126.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7039/19544 [00:46<01:39, 126.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7052/19544 [00:46<01:38, 126.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7066/19544 [00:46<01:37, 128.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7080/19544 [00:46<01:36, 128.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 7093/19544 [00:46<01:37, 127.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 7107/19544 [00:46<01:35, 129.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 7122/19544 [00:46<01:33, 133.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7136/19544 [00:46<01:32, 134.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7150/19544 [00:46<01:33, 133.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7164/19544 [00:46<01:33, 131.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7178/19544 [00:47<01:32, 133.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7192/19544 [00:47<01:32, 133.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7206/19544 [00:47<01:31, 135.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7220/19544 [00:47<01:31, 134.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7234/19544 [00:47<01:33, 131.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7248/19544 [00:47<01:34, 129.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7262/19544 [00:47<01:33, 131.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7276/19544 [00:47<01:31, 133.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7290/19544 [00:47<01:33, 130.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7304/19544 [00:48<01:33, 131.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7318/19544 [00:48<01:31, 133.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7332/19544 [00:48<01:31, 132.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7346/19544 [00:48<01:33, 130.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7360/19544 [00:48<01:32, 131.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7374/19544 [00:48<01:31, 132.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7388/19544 [00:48<01:30, 133.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7402/19544 [00:48<01:32, 131.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7416/19544 [00:48<01:34, 128.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7429/19544 [00:48<01:36, 125.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7442/19544 [00:49<01:36, 126.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7457/19544 [00:49<01:31, 131.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7472/19544 [00:49<01:29, 134.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7486/19544 [00:49<01:28, 135.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7500/19544 [00:49<01:29, 134.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7515/19544 [00:49<01:27, 136.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▊      | 7529/19544 [00:49<01:27, 137.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▊      | 7544/19544 [00:49<01:26, 139.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▊      | 7559/19544 [00:49<01:24, 141.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7574/19544 [00:50<01:24, 141.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7589/19544 [00:50<01:33, 127.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7603/19544 [00:50<01:36, 123.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7616/19544 [00:50<01:37, 122.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7629/19544 [00:50<01:36, 123.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7642/19544 [00:50<01:35, 125.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7656/19544 [00:50<01:33, 127.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7670/19544 [00:50<01:30, 130.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7684/19544 [00:50<01:32, 128.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7697/19544 [00:51<01:32, 128.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7711/19544 [00:51<01:31, 129.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7726/19544 [00:51<01:27, 135.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7740/19544 [00:51<01:29, 131.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7754/19544 [00:51<01:32, 127.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7767/19544 [00:51<01:32, 127.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7780/19544 [00:51<01:32, 126.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7793/19544 [00:51<01:33, 126.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7806/19544 [00:51<01:34, 124.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7819/19544 [00:51<01:34, 123.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7832/19544 [00:52<01:34, 123.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7846/19544 [00:52<01:31, 127.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7860/19544 [00:52<01:30, 129.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7874/19544 [00:52<01:29, 130.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7888/19544 [00:52<01:30, 129.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7901/19544 [00:52<01:30, 128.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7915/19544 [00:52<01:29, 130.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7929/19544 [00:52<01:28, 131.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7944/19544 [00:52<01:26, 134.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7958/19544 [00:53<01:27, 133.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7972/19544 [00:53<01:26, 133.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7986/19544 [00:53<01:25, 134.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8000/19544 [00:53<01:25, 135.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8014/19544 [00:53<01:25, 135.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8028/19544 [00:53<01:25, 134.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8042/19544 [00:53<01:24, 135.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8056/19544 [00:53<01:28, 130.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████▏     | 8070/19544 [00:53<01:28, 129.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████▏     | 8084/19544 [00:53<01:27, 130.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████▏     | 8098/19544 [00:54<01:26, 131.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8112/19544 [00:54<01:29, 128.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8125/19544 [00:54<01:30, 126.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8139/19544 [00:54<01:29, 127.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8152/19544 [00:54<01:33, 121.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8165/19544 [00:54<01:34, 120.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8178/19544 [00:54<01:32, 122.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8192/19544 [00:54<01:30, 125.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8206/19544 [00:54<01:28, 127.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8220/19544 [00:55<01:28, 128.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8234/19544 [00:55<01:25, 131.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8248/19544 [00:55<01:26, 130.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8262/19544 [00:55<01:26, 131.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8276/19544 [00:55<01:27, 129.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8289/19544 [00:55<01:29, 125.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8302/19544 [00:55<01:29, 125.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8315/19544 [00:55<01:29, 125.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8329/19544 [00:55<01:28, 126.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8343/19544 [00:56<01:27, 128.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8356/19544 [00:56<01:28, 126.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8369/19544 [00:56<01:29, 124.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8383/19544 [00:56<01:28, 126.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8397/19544 [00:56<01:25, 130.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8411/19544 [00:56<01:23, 132.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8425/19544 [00:56<01:22, 134.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8439/19544 [00:56<01:22, 134.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8453/19544 [00:56<01:22, 135.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8467/19544 [00:56<01:21, 135.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8481/19544 [00:57<01:22, 134.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8495/19544 [00:57<01:21, 135.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▎     | 8510/19544 [00:57<01:20, 137.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▎     | 8525/19544 [00:57<01:18, 140.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▎     | 8541/19544 [00:57<01:16, 144.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8556/19544 [00:57<01:15, 145.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8572/19544 [00:57<01:14, 147.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8587/19544 [00:57<01:14, 147.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8603/19544 [00:57<01:13, 148.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8619/19544 [00:57<01:13, 149.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8635/19544 [00:58<01:12, 150.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8651/19544 [00:58<01:13, 147.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8666/19544 [00:58<01:14, 145.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8681/19544 [00:58<01:19, 137.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8695/19544 [00:58<01:19, 135.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8710/19544 [00:58<01:18, 138.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8726/19544 [00:58<01:15, 143.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8741/19544 [00:58<01:14, 144.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8756/19544 [00:58<01:18, 136.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8770/19544 [00:59<01:21, 131.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8784/19544 [00:59<01:25, 125.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8797/19544 [00:59<01:31, 117.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8809/19544 [00:59<01:45, 101.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8820/19544 [00:59<01:50, 97.28it/s] "
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8832/19544 [00:59<01:46, 100.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8844/19544 [00:59<01:43, 103.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8857/19544 [00:59<01:37, 109.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8869/19544 [01:00<01:36, 110.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8882/19544 [01:00<01:33, 113.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8895/19544 [01:00<01:30, 117.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8907/19544 [01:00<01:30, 116.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8919/19544 [01:00<01:32, 114.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8931/19544 [01:00<01:33, 113.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8943/19544 [01:00<01:32, 114.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8955/19544 [01:00<01:37, 108.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8966/19544 [01:00<01:41, 104.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8977/19544 [01:01<01:45, 100.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8988/19544 [01:01<01:46, 98.89it/s] "
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8999/19544 [01:01<01:45, 99.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 9011/19544 [01:01<01:39, 105.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 9024/19544 [01:01<01:35, 110.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 9038/19544 [01:01<01:29, 116.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▋     | 9052/19544 [01:01<01:25, 122.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▋     | 9066/19544 [01:01<01:23, 125.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▋     | 9080/19544 [01:01<01:22, 127.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9094/19544 [01:02<01:21, 128.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9108/19544 [01:02<01:20, 129.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9121/19544 [01:02<01:21, 127.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9134/19544 [01:02<01:21, 127.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9148/19544 [01:02<01:20, 129.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9162/19544 [01:02<01:18, 131.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9176/19544 [01:02<01:18, 132.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9190/19544 [01:02<01:17, 133.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9204/19544 [01:02<01:17, 133.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9218/19544 [01:02<01:17, 132.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9232/19544 [01:03<01:17, 132.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9246/19544 [01:03<01:17, 133.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9260/19544 [01:03<01:18, 131.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9274/19544 [01:03<01:19, 128.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9287/19544 [01:03<01:21, 126.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9301/19544 [01:03<01:20, 127.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9315/19544 [01:03<01:18, 129.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9329/19544 [01:03<01:18, 130.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9343/19544 [01:03<01:17, 131.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9357/19544 [01:04<01:17, 131.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9371/19544 [01:04<01:17, 131.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9385/19544 [01:04<01:16, 132.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9399/19544 [01:04<01:17, 131.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9413/19544 [01:04<01:18, 129.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9426/19544 [01:04<01:18, 128.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9440/19544 [01:04<01:17, 130.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9454/19544 [01:04<01:16, 131.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9468/19544 [01:04<01:16, 132.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9482/19544 [01:04<01:15, 132.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9496/19544 [01:05<01:16, 132.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9510/19544 [01:05<01:15, 132.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9524/19544 [01:05<01:14, 133.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9538/19544 [01:05<01:14, 133.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9552/19544 [01:05<01:14, 134.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9566/19544 [01:05<01:18, 127.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9579/19544 [01:05<01:18, 127.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9592/19544 [01:05<01:18, 127.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9605/19544 [01:05<01:18, 126.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9618/19544 [01:06<01:19, 125.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9631/19544 [01:06<01:19, 125.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9645/19544 [01:06<01:17, 128.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9658/19544 [01:06<01:17, 126.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9671/19544 [01:06<01:18, 125.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9684/19544 [01:06<01:18, 125.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9698/19544 [01:06<01:16, 129.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9712/19544 [01:06<01:14, 131.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9726/19544 [01:06<01:13, 132.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9740/19544 [01:06<01:13, 133.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9754/19544 [01:07<01:14, 132.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9769/19544 [01:07<01:12, 135.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9784/19544 [01:07<01:10, 139.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9800/19544 [01:07<01:08, 143.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9815/19544 [01:07<01:07, 144.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9830/19544 [01:07<01:06, 145.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9845/19544 [01:07<01:07, 143.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9860/19544 [01:07<01:08, 141.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9875/19544 [01:07<01:09, 139.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9889/19544 [01:08<01:10, 136.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9903/19544 [01:08<01:11, 134.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9917/19544 [01:08<01:13, 131.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9932/19544 [01:08<01:11, 135.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9946/19544 [01:08<01:13, 130.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9960/19544 [01:08<01:15, 127.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9975/19544 [01:08<01:12, 131.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9991/19544 [01:08<01:09, 137.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 10006/19544 [01:08<01:07, 140.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████▏    | 10021/19544 [01:08<01:07, 141.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████▏    | 10036/19544 [01:09<01:07, 140.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████▏    | 10051/19544 [01:09<01:07, 141.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10066/19544 [01:09<01:06, 143.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10082/19544 [01:09<01:05, 144.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10097/19544 [01:09<01:05, 144.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10112/19544 [01:09<01:06, 141.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10127/19544 [01:09<01:06, 142.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10143/19544 [01:09<01:04, 145.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10158/19544 [01:09<01:04, 146.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10173/19544 [01:10<01:04, 146.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10188/19544 [01:10<01:04, 144.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10203/19544 [01:10<01:04, 145.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10218/19544 [01:10<01:03, 146.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10233/19544 [01:10<01:03, 147.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10249/19544 [01:10<01:02, 148.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10264/19544 [01:10<01:03, 146.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10279/19544 [01:10<01:04, 144.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10294/19544 [01:10<01:05, 142.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10309/19544 [01:10<01:05, 141.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10324/19544 [01:11<01:04, 142.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10340/19544 [01:11<01:03, 145.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10356/19544 [01:11<01:02, 147.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10371/19544 [01:11<01:02, 147.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10386/19544 [01:11<01:04, 142.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10401/19544 [01:11<01:04, 141.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10416/19544 [01:11<01:03, 143.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10431/19544 [01:11<01:03, 143.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10446/19544 [01:11<01:04, 141.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▎    | 10461/19544 [01:12<01:04, 140.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▎    | 10476/19544 [01:12<01:03, 142.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▎    | 10492/19544 [01:12<01:02, 144.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10508/19544 [01:12<01:01, 146.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10523/19544 [01:12<01:01, 147.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10538/19544 [01:12<01:01, 146.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10553/19544 [01:12<01:01, 147.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10568/19544 [01:12<01:01, 147.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10583/19544 [01:12<01:02, 142.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10598/19544 [01:12<01:02, 142.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10613/19544 [01:13<01:02, 143.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10628/19544 [01:13<01:01, 144.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10644/19544 [01:13<01:00, 146.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10659/19544 [01:13<01:00, 146.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10674/19544 [01:13<01:00, 146.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10689/19544 [01:13<01:01, 143.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10704/19544 [01:13<01:01, 143.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10719/19544 [01:13<01:01, 144.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10734/19544 [01:13<01:00, 144.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10749/19544 [01:14<01:00, 144.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10764/19544 [01:14<01:00, 144.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10779/19544 [01:14<01:00, 144.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10794/19544 [01:14<00:59, 145.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10809/19544 [01:14<00:59, 146.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10824/19544 [01:14<00:59, 146.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10839/19544 [01:14<00:59, 146.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10854/19544 [01:14<00:59, 146.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10869/19544 [01:14<00:59, 145.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10884/19544 [01:14<00:59, 145.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10899/19544 [01:15<01:01, 141.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10914/19544 [01:15<01:02, 137.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10929/19544 [01:15<01:01, 139.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10944/19544 [01:15<01:01, 140.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10959/19544 [01:15<01:00, 142.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10974/19544 [01:15<00:59, 143.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10989/19544 [01:15<00:59, 144.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▋    | 11004/19544 [01:15<00:59, 144.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▋    | 11019/19544 [01:15<01:00, 141.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▋    | 11034/19544 [01:16<00:59, 142.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11049/19544 [01:16<00:58, 144.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11064/19544 [01:16<00:58, 144.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11079/19544 [01:16<00:59, 142.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11094/19544 [01:16<01:01, 137.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11108/19544 [01:16<01:01, 137.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11122/19544 [01:16<01:01, 137.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11136/19544 [01:16<01:01, 135.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11151/19544 [01:16<01:00, 138.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11166/19544 [01:16<00:59, 140.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11181/19544 [01:17<00:59, 141.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11196/19544 [01:17<00:58, 143.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11211/19544 [01:17<00:58, 143.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11226/19544 [01:17<00:57, 143.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11241/19544 [01:17<00:59, 140.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11256/19544 [01:17<00:58, 142.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11271/19544 [01:17<00:57, 143.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11286/19544 [01:17<00:56, 145.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11302/19544 [01:17<00:56, 146.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11317/19544 [01:18<00:55, 147.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11332/19544 [01:18<00:55, 147.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11347/19544 [01:18<00:56, 146.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11362/19544 [01:18<00:56, 144.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11377/19544 [01:18<00:56, 144.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11392/19544 [01:18<00:56, 144.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11407/19544 [01:18<00:57, 141.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11422/19544 [01:18<00:59, 137.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11436/19544 [01:18<00:59, 137.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11451/19544 [01:18<00:58, 138.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11466/19544 [01:19<00:57, 139.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11481/19544 [01:19<00:56, 142.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11496/19544 [01:19<00:56, 142.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11511/19544 [01:19<00:55, 144.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11526/19544 [01:19<00:55, 145.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11541/19544 [01:19<00:54, 145.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11557/19544 [01:19<00:54, 147.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11572/19544 [01:19<00:54, 147.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11587/19544 [01:19<00:53, 148.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11602/19544 [01:19<00:53, 148.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11617/19544 [01:20<00:53, 147.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11632/19544 [01:20<00:53, 147.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11647/19544 [01:20<00:53, 147.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11662/19544 [01:20<00:53, 147.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11677/19544 [01:20<00:53, 146.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11692/19544 [01:20<00:53, 146.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11707/19544 [01:20<00:53, 146.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11722/19544 [01:20<00:53, 147.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11737/19544 [01:20<00:53, 147.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11752/19544 [01:21<00:54, 143.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11767/19544 [01:21<00:53, 144.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11782/19544 [01:21<00:54, 142.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11797/19544 [01:21<00:53, 143.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11812/19544 [01:21<00:54, 142.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11827/19544 [01:21<00:53, 144.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11842/19544 [01:21<00:53, 144.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11857/19544 [01:21<00:52, 145.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11872/19544 [01:21<00:54, 139.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11887/19544 [01:21<00:56, 136.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11902/19544 [01:22<00:54, 139.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11917/19544 [01:22<00:54, 140.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11932/19544 [01:22<00:53, 141.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11947/19544 [01:22<00:53, 142.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11962/19544 [01:22<00:52, 144.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████▏   | 11978/19544 [01:22<00:51, 146.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████▏   | 11993/19544 [01:22<00:51, 146.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████▏   | 12008/19544 [01:22<00:51, 146.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12023/19544 [01:22<00:51, 146.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12038/19544 [01:23<00:52, 144.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12053/19544 [01:23<00:53, 141.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12068/19544 [01:23<00:53, 138.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12082/19544 [01:23<00:54, 137.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12097/19544 [01:23<00:53, 138.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12113/19544 [01:23<00:52, 142.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12128/19544 [01:23<00:51, 143.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12144/19544 [01:23<00:50, 146.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12159/19544 [01:23<00:50, 145.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12174/19544 [01:23<00:51, 142.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12189/19544 [01:24<00:51, 143.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12205/19544 [01:24<00:50, 146.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12221/19544 [01:24<00:49, 148.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12237/19544 [01:24<00:48, 150.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12253/19544 [01:24<00:48, 151.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12269/19544 [01:24<00:47, 153.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12285/19544 [01:24<00:47, 153.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12301/19544 [01:24<00:46, 154.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12317/19544 [01:24<00:47, 153.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12333/19544 [01:25<00:47, 150.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12349/19544 [01:25<00:47, 150.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12365/19544 [01:25<00:47, 151.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12381/19544 [01:25<00:47, 151.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12397/19544 [01:25<00:47, 151.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▎   | 12413/19544 [01:25<00:47, 150.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▎   | 12429/19544 [01:25<00:47, 150.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▎   | 12445/19544 [01:25<00:46, 152.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12461/19544 [01:25<00:46, 152.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12477/19544 [01:25<00:46, 150.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12493/19544 [01:26<00:47, 148.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12508/19544 [01:26<00:48, 144.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12524/19544 [01:26<00:47, 147.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12540/19544 [01:26<00:46, 149.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12556/19544 [01:26<00:46, 151.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12572/19544 [01:26<00:45, 153.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12588/19544 [01:26<00:45, 154.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12604/19544 [01:26<00:45, 154.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12620/19544 [01:26<00:45, 152.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12636/19544 [01:27<00:46, 149.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12652/19544 [01:27<00:45, 151.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12668/19544 [01:27<00:45, 152.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12684/19544 [01:27<00:44, 153.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12700/19544 [01:27<00:44, 154.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12716/19544 [01:27<00:44, 153.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12732/19544 [01:27<00:44, 154.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12748/19544 [01:27<00:44, 154.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12764/19544 [01:27<00:44, 153.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12780/19544 [01:27<00:43, 154.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12796/19544 [01:28<00:43, 154.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12812/19544 [01:28<00:43, 154.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12828/19544 [01:28<00:43, 153.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12844/19544 [01:28<00:43, 154.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12860/19544 [01:28<00:43, 155.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12876/19544 [01:28<00:43, 153.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12892/19544 [01:28<00:44, 149.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12907/19544 [01:28<00:44, 147.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12923/19544 [01:28<00:44, 148.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12939/19544 [01:29<00:44, 149.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▋   | 12954/19544 [01:29<00:44, 146.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▋   | 12969/19544 [01:29<00:44, 146.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▋   | 12984/19544 [01:29<00:44, 147.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 12999/19544 [01:29<00:44, 146.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13014/19544 [01:29<00:44, 147.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13029/19544 [01:29<00:44, 147.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13044/19544 [01:29<00:45, 144.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13059/19544 [01:29<00:46, 139.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13075/19544 [01:29<00:44, 143.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13091/19544 [01:30<00:44, 146.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13107/19544 [01:30<00:43, 148.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13123/19544 [01:30<00:42, 149.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13138/19544 [01:30<00:43, 145.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13153/19544 [01:30<00:44, 143.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13169/19544 [01:30<00:43, 145.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13185/19544 [01:30<00:43, 146.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13200/19544 [01:30<00:43, 147.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13215/19544 [01:30<00:42, 147.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13231/19544 [01:31<00:42, 148.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13247/19544 [01:31<00:41, 150.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13263/19544 [01:31<00:41, 150.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13279/19544 [01:31<00:42, 146.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13294/19544 [01:31<00:42, 147.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13310/19544 [01:31<00:41, 148.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13325/19544 [01:31<00:42, 146.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13340/19544 [01:31<00:42, 146.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13355/19544 [01:31<00:42, 146.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13371/19544 [01:31<00:41, 147.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13386/19544 [01:32<00:41, 147.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▊   | 13401/19544 [01:32<00:42, 144.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▊   | 13417/19544 [01:32<00:41, 147.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▊   | 13433/19544 [01:32<00:41, 148.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13448/19544 [01:32<00:41, 147.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13464/19544 [01:32<00:40, 148.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13480/19544 [01:32<00:40, 149.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13496/19544 [01:32<00:40, 150.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13512/19544 [01:32<00:39, 152.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13528/19544 [01:33<00:39, 153.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13544/19544 [01:33<00:39, 153.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13560/19544 [01:33<00:39, 150.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13576/19544 [01:33<00:39, 151.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13592/19544 [01:33<00:39, 152.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13608/19544 [01:33<00:38, 153.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13624/19544 [01:33<00:39, 151.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13640/19544 [01:33<00:38, 151.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13656/19544 [01:33<00:38, 151.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13672/19544 [01:33<00:38, 152.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13688/19544 [01:34<00:38, 151.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13704/19544 [01:34<00:39, 147.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13719/19544 [01:34<00:39, 146.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13735/19544 [01:34<00:39, 147.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13751/19544 [01:34<00:38, 149.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13767/19544 [01:34<00:38, 151.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13783/19544 [01:34<00:38, 150.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13799/19544 [01:34<00:37, 151.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13815/19544 [01:34<00:37, 151.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13831/19544 [01:35<00:37, 151.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13847/19544 [01:35<00:37, 152.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13863/19544 [01:35<00:37, 151.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13879/19544 [01:35<00:37, 150.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13895/19544 [01:35<00:37, 149.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13910/19544 [01:35<00:37, 149.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13925/19544 [01:35<00:38, 146.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████▏  | 13941/19544 [01:35<00:37, 148.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████▏  | 13957/19544 [01:35<00:37, 150.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████▏  | 13973/19544 [01:35<00:36, 151.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 13989/19544 [01:36<00:37, 146.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14004/19544 [01:36<00:39, 138.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14018/19544 [01:36<00:39, 139.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14032/19544 [01:36<00:41, 134.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14046/19544 [01:36<00:41, 133.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14062/19544 [01:36<00:39, 139.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14077/19544 [01:36<00:39, 139.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14093/19544 [01:36<00:38, 143.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14109/19544 [01:36<00:37, 146.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14125/19544 [01:37<00:36, 148.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14141/19544 [01:37<00:36, 149.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14156/19544 [01:37<00:37, 145.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14171/19544 [01:37<00:36, 146.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14187/19544 [01:37<00:36, 147.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14203/19544 [01:37<00:35, 149.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14218/19544 [01:37<00:35, 148.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14233/19544 [01:37<00:35, 148.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14248/19544 [01:37<00:36, 144.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14263/19544 [01:37<00:37, 140.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14278/19544 [01:38<00:37, 140.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14293/19544 [01:38<00:37, 139.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14308/19544 [01:38<00:36, 142.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14323/19544 [01:38<00:36, 142.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14338/19544 [01:38<00:36, 144.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14354/19544 [01:38<00:35, 147.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▎  | 14370/19544 [01:38<00:34, 149.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▎  | 14385/19544 [01:38<00:35, 146.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▎  | 14400/19544 [01:38<00:36, 141.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14415/19544 [01:39<00:36, 141.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14430/19544 [01:39<00:36, 139.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14444/19544 [01:39<00:36, 138.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14459/19544 [01:39<00:36, 139.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14474/19544 [01:39<00:35, 142.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14490/19544 [01:39<00:34, 144.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14506/19544 [01:39<00:34, 147.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14521/19544 [01:39<00:34, 147.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14537/19544 [01:39<00:33, 148.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14552/19544 [01:39<00:33, 148.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14567/19544 [01:40<00:33, 148.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14582/19544 [01:40<00:33, 147.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14597/19544 [01:40<00:33, 147.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14612/19544 [01:40<00:33, 147.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14627/19544 [01:40<00:33, 146.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14642/19544 [01:40<00:33, 145.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14658/19544 [01:40<00:33, 147.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14673/19544 [01:40<00:33, 146.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14689/19544 [01:40<00:32, 148.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14705/19544 [01:41<00:32, 148.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14721/19544 [01:41<00:32, 149.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14736/19544 [01:41<00:32, 147.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14751/19544 [01:41<00:32, 145.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14766/19544 [01:41<00:32, 145.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14781/19544 [01:41<00:33, 142.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14796/19544 [01:41<00:33, 140.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14811/19544 [01:41<00:33, 142.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14826/19544 [01:41<00:32, 143.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14842/19544 [01:41<00:32, 145.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14858/19544 [01:42<00:31, 146.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14873/19544 [01:42<00:31, 146.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14888/19544 [01:42<00:31, 146.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▋  | 14903/19544 [01:42<00:33, 139.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▋  | 14918/19544 [01:42<00:33, 139.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▋  | 14933/19544 [01:42<00:32, 141.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▋  | 14948/19544 [01:42<00:32, 142.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 14963/19544 [01:42<00:31, 144.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 14978/19544 [01:42<00:31, 145.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 14993/19544 [01:43<00:31, 146.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15008/19544 [01:43<00:30, 146.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15023/19544 [01:43<00:31, 144.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15038/19544 [01:43<00:31, 143.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15053/19544 [01:43<00:31, 142.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15069/19544 [01:43<00:30, 145.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15085/19544 [01:43<00:30, 147.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15101/19544 [01:43<00:29, 149.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15117/19544 [01:43<00:29, 150.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15133/19544 [01:43<00:29, 149.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15149/19544 [01:44<00:29, 149.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15165/19544 [01:44<00:29, 150.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15181/19544 [01:44<00:28, 150.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15197/19544 [01:44<00:29, 149.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15212/19544 [01:44<00:29, 146.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15228/19544 [01:44<00:29, 148.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15244/19544 [01:44<00:28, 149.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15260/19544 [01:44<00:28, 151.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15276/19544 [01:44<00:28, 150.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15292/19544 [01:45<00:28, 151.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15308/19544 [01:45<00:27, 152.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15324/19544 [01:45<00:27, 151.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15340/19544 [01:45<00:27, 152.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▊  | 15356/19544 [01:45<00:27, 150.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▊  | 15372/19544 [01:45<00:27, 149.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▊  | 15388/19544 [01:45<00:27, 150.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15404/19544 [01:45<00:27, 150.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15420/19544 [01:45<00:27, 151.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15436/19544 [01:45<00:27, 150.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15452/19544 [01:46<00:27, 150.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15468/19544 [01:46<00:27, 150.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15484/19544 [01:46<00:27, 150.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15500/19544 [01:46<00:26, 150.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15516/19544 [01:46<00:26, 150.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15532/19544 [01:46<00:26, 151.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15548/19544 [01:46<00:27, 147.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15563/19544 [01:46<00:27, 147.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15579/19544 [01:46<00:26, 150.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15595/19544 [01:47<00:26, 150.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15611/19544 [01:47<00:26, 151.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15627/19544 [01:47<00:25, 151.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15643/19544 [01:47<00:25, 151.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15659/19544 [01:47<00:25, 150.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15675/19544 [01:47<00:26, 144.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15691/19544 [01:47<00:26, 146.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15707/19544 [01:47<00:25, 148.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15723/19544 [01:47<00:25, 149.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15738/19544 [01:48<00:25, 149.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15754/19544 [01:48<00:25, 150.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15770/19544 [01:48<00:24, 150.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15786/19544 [01:48<00:24, 151.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15802/19544 [01:48<00:24, 152.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15818/19544 [01:48<00:24, 152.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15834/19544 [01:48<00:24, 153.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15850/19544 [01:48<00:24, 152.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15866/19544 [01:48<00:24, 151.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████▏ | 15882/19544 [01:48<00:25, 144.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████▏ | 15897/19544 [01:49<00:26, 139.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████▏ | 15912/19544 [01:49<00:26, 137.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████▏ | 15926/19544 [01:49<00:26, 137.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15940/19544 [01:49<00:26, 136.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15954/19544 [01:49<00:27, 132.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15968/19544 [01:49<00:29, 120.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15981/19544 [01:49<00:29, 122.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15994/19544 [01:49<00:29, 122.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16007/19544 [01:49<00:29, 121.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16020/19544 [01:50<00:28, 121.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16034/19544 [01:50<00:28, 124.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16050/19544 [01:50<00:26, 132.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16066/19544 [01:50<00:25, 138.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16081/19544 [01:50<00:24, 141.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16097/19544 [01:50<00:23, 143.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16113/19544 [01:50<00:23, 146.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16129/19544 [01:50<00:23, 148.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16145/19544 [01:50<00:22, 149.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16161/19544 [01:51<00:22, 151.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16177/19544 [01:51<00:22, 149.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16192/19544 [01:51<00:22, 149.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16207/19544 [01:51<00:22, 149.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16223/19544 [01:51<00:22, 149.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16238/19544 [01:51<00:22, 147.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16253/19544 [01:51<00:22, 146.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16269/19544 [01:51<00:22, 148.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16284/19544 [01:51<00:22, 145.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16299/19544 [01:51<00:22, 145.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16315/19544 [01:52<00:21, 148.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▎ | 16331/19544 [01:52<00:21, 149.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▎ | 16346/19544 [01:52<00:21, 148.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▎ | 16362/19544 [01:52<00:21, 149.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16377/19544 [01:52<00:21, 149.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16392/19544 [01:52<00:21, 149.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16407/19544 [01:52<00:21, 144.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16422/19544 [01:52<00:21, 144.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16438/19544 [01:52<00:21, 147.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16453/19544 [01:53<00:20, 147.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16468/19544 [01:53<00:20, 146.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16484/19544 [01:53<00:20, 148.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16499/19544 [01:53<00:20, 146.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16514/19544 [01:53<00:20, 144.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16529/19544 [01:53<00:21, 140.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16544/19544 [01:53<00:22, 135.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16558/19544 [01:53<00:22, 130.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16573/19544 [01:53<00:22, 134.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16587/19544 [01:53<00:22, 132.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16601/19544 [01:54<00:22, 133.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16615/19544 [01:54<00:21, 135.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16630/19544 [01:54<00:21, 138.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16646/19544 [01:54<00:20, 142.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16662/19544 [01:54<00:19, 144.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16677/19544 [01:54<00:19, 145.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16693/19544 [01:54<00:19, 148.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16708/19544 [01:54<00:19, 145.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16724/19544 [01:54<00:19, 147.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16740/19544 [01:55<00:18, 149.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16756/19544 [01:55<00:18, 151.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16772/19544 [01:55<00:18, 151.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16788/19544 [01:55<00:18, 151.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16804/19544 [01:55<00:17, 152.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16820/19544 [01:55<00:17, 153.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16836/19544 [01:55<00:17, 153.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16852/19544 [01:55<00:17, 153.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▋ | 16868/19544 [01:55<00:17, 153.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▋ | 16884/19544 [01:55<00:17, 152.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▋ | 16900/19544 [01:56<00:17, 152.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16916/19544 [01:56<00:17, 152.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16932/19544 [01:56<00:17, 152.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16948/19544 [01:56<00:17, 151.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16964/19544 [01:56<00:16, 152.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16980/19544 [01:56<00:16, 152.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16996/19544 [01:56<00:16, 152.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17012/19544 [01:56<00:17, 148.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17028/19544 [01:56<00:16, 149.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17043/19544 [01:57<00:17, 144.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17059/19544 [01:57<00:16, 146.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17074/19544 [01:57<00:16, 146.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17090/19544 [01:57<00:16, 148.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17106/19544 [01:57<00:16, 150.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17122/19544 [01:57<00:16, 151.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17138/19544 [01:57<00:15, 151.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17154/19544 [01:57<00:15, 150.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17170/19544 [01:57<00:16, 144.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17185/19544 [01:58<00:16, 141.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17200/19544 [01:58<00:16, 138.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17214/19544 [01:58<00:16, 138.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17228/19544 [01:58<00:16, 137.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17242/19544 [01:58<00:16, 136.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17256/19544 [01:58<00:16, 137.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17272/19544 [01:58<00:16, 141.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17288/19544 [01:58<00:15, 145.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▊ | 17304/19544 [01:58<00:15, 148.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▊ | 17319/19544 [01:58<00:14, 148.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▊ | 17334/19544 [01:59<00:15, 145.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17349/19544 [01:59<00:15, 143.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17365/19544 [01:59<00:14, 146.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17381/19544 [01:59<00:14, 148.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17397/19544 [01:59<00:14, 150.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17413/19544 [01:59<00:14, 148.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17428/19544 [01:59<00:14, 144.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17443/19544 [01:59<00:14, 145.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17458/19544 [01:59<00:14, 146.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17473/19544 [02:00<00:14, 143.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17489/19544 [02:00<00:14, 145.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17504/19544 [02:00<00:14, 145.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17519/19544 [02:00<00:13, 145.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17535/19544 [02:00<00:13, 148.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17551/19544 [02:00<00:13, 150.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17567/19544 [02:00<00:13, 151.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17583/19544 [02:00<00:13, 148.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17598/19544 [02:00<00:13, 148.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17614/19544 [02:00<00:12, 149.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17630/19544 [02:01<00:12, 151.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17646/19544 [02:01<00:12, 148.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17662/19544 [02:01<00:12, 150.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17678/19544 [02:01<00:12, 150.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17694/19544 [02:01<00:12, 151.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17710/19544 [02:01<00:12, 151.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17726/19544 [02:01<00:11, 151.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17742/19544 [02:01<00:11, 150.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17758/19544 [02:01<00:11, 151.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17774/19544 [02:02<00:11, 152.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17790/19544 [02:02<00:11, 150.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17806/19544 [02:02<00:11, 147.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17822/19544 [02:02<00:11, 149.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████▏| 17838/19544 [02:02<00:11, 149.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████▏| 17854/19544 [02:02<00:11, 151.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████▏| 17870/19544 [02:02<00:11, 149.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17886/19544 [02:02<00:10, 151.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17902/19544 [02:02<00:10, 152.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17918/19544 [02:02<00:10, 151.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17934/19544 [02:03<00:11, 146.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17950/19544 [02:03<00:10, 147.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17966/19544 [02:03<00:10, 149.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17982/19544 [02:03<00:10, 150.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17998/19544 [02:03<00:10, 151.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18014/19544 [02:03<00:10, 152.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18030/19544 [02:03<00:09, 153.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18046/19544 [02:03<00:09, 151.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18062/19544 [02:03<00:09, 151.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18078/19544 [02:04<00:09, 152.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18094/19544 [02:04<00:09, 152.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18110/19544 [02:04<00:09, 152.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18126/19544 [02:04<00:09, 152.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18142/19544 [02:04<00:09, 152.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18158/19544 [02:04<00:09, 153.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18174/19544 [02:04<00:08, 154.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18190/19544 [02:04<00:08, 154.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18206/19544 [02:04<00:08, 154.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18222/19544 [02:04<00:08, 152.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18238/19544 [02:05<00:08, 150.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18254/19544 [02:05<00:08, 148.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18270/19544 [02:05<00:08, 150.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▎| 18286/19544 [02:05<00:08, 151.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▎| 18302/19544 [02:05<00:08, 152.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▎| 18318/19544 [02:05<00:08, 152.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18334/19544 [02:05<00:07, 154.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18350/19544 [02:05<00:07, 154.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18366/19544 [02:05<00:07, 153.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18382/19544 [02:06<00:07, 153.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18398/19544 [02:06<00:07, 152.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18414/19544 [02:06<00:07, 153.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18430/19544 [02:06<00:07, 153.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18446/19544 [02:06<00:07, 154.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18462/19544 [02:06<00:07, 152.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18478/19544 [02:06<00:06, 152.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18494/19544 [02:06<00:06, 153.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18510/19544 [02:06<00:06, 154.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18526/19544 [02:06<00:06, 155.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18542/19544 [02:07<00:06, 154.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18558/19544 [02:07<00:06, 154.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18574/19544 [02:07<00:06, 151.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18590/19544 [02:07<00:06, 148.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18605/19544 [02:07<00:06, 148.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18621/19544 [02:07<00:06, 150.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18637/19544 [02:07<00:06, 148.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18653/19544 [02:07<00:05, 150.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18669/19544 [02:07<00:05, 150.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18685/19544 [02:08<00:05, 151.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18701/19544 [02:08<00:05, 148.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18716/19544 [02:08<00:05, 144.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18732/19544 [02:08<00:05, 146.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18748/19544 [02:08<00:05, 149.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18763/19544 [02:08<00:05, 149.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18779/19544 [02:08<00:05, 150.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18795/19544 [02:08<00:04, 150.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18811/19544 [02:08<00:04, 152.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▋| 18827/19544 [02:08<00:04, 151.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▋| 18843/19544 [02:09<00:04, 150.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▋| 18859/19544 [02:09<00:04, 146.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18874/19544 [02:09<00:04, 143.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18890/19544 [02:09<00:04, 146.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18905/19544 [02:09<00:04, 147.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18921/19544 [02:09<00:04, 148.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18936/19544 [02:09<00:04, 146.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18951/19544 [02:09<00:04, 147.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18966/19544 [02:09<00:03, 147.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18982/19544 [02:10<00:03, 148.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18998/19544 [02:10<00:03, 150.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 19014/19544 [02:10<00:03, 147.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 19029/19544 [02:10<00:03, 146.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 19045/19544 [02:10<00:03, 147.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19060/19544 [02:10<00:03, 148.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19076/19544 [02:10<00:03, 149.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19092/19544 [02:10<00:03, 149.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19108/19544 [02:10<00:02, 150.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19124/19544 [02:10<00:02, 151.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19140/19544 [02:11<00:02, 152.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19156/19544 [02:11<00:02, 151.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19172/19544 [02:11<00:02, 151.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19188/19544 [02:11<00:02, 153.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19204/19544 [02:11<00:02, 153.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19220/19544 [02:11<00:02, 152.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19236/19544 [02:11<00:02, 153.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▊| 19253/19544 [02:11<00:01, 155.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▊| 19269/19544 [02:11<00:01, 156.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▊| 19285/19544 [02:12<00:01, 156.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19301/19544 [02:12<00:01, 154.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19317/19544 [02:12<00:01, 152.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19333/19544 [02:12<00:01, 152.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19349/19544 [02:12<00:01, 149.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19364/19544 [02:12<00:01, 148.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19379/19544 [02:12<00:01, 147.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19394/19544 [02:12<00:01, 148.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19410/19544 [02:12<00:00, 149.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19426/19544 [02:12<00:00, 151.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19442/19544 [02:13<00:00, 149.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19458/19544 [02:13<00:00, 150.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19474/19544 [02:13<00:00, 146.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19489/19544 [02:13<00:00, 143.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19505/19544 [02:13<00:00, 146.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19520/19544 [02:13<00:00, 147.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19536/19544 [02:13<00:00, 149.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|██████████| 19544/19544 [02:13<00:00, 146.12it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OOV questions: 0\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# Do predictions and preserve the gold answers (word_D)\n",
    "preds = []\n",
    "golds = []\n",
    "\n",
    "for analogy in tqdm(data[\"Question\"]):\n",
    "      # TODO2: Write your code here to use pre-trained word embeddings for getting predictions of the analogy task.\n",
    "      # You should also preserve the gold answers during iterations for evaluations later.\n",
    "      # GloVe 的字全部是小寫，所以題目也先轉小寫，否則 \"Athens\" 會查不到。\n",
    "      word_a, word_b, word_c, word_d = analogy.lower().split()\n",
    "      golds.append(word_d)\n",
    "      if all(w in model.key_to_index for w in (word_a, word_b, word_c)):\n",
    "          # b - a + c：most_similar 會自動排除 a、b、c 這三個字本身\n",
    "          preds.append(model.most_similar(positive=[word_b, word_c], negative=[word_a], topn=1)[0][0])\n",
    "      else:\n",
    "          preds.append(None)   # 題目裡有字典沒有的字（OOV），直接算答錯\n",
    "print(\"OOV questions:\", sum(p is None for p in preds))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "74fcc96d",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:12.699320Z",
     "iopub.status.busy": "2026-10-04T07:39:12.698284Z",
     "iopub.status.idle": "2026-10-04T07:39:12.735440Z",
     "shell.execute_reply": "2026-10-04T07:39:12.735440Z"
    },
    "id": "xG7vcPXAW6uT"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Category: Semantic, Accuracy: 65.3399481339497%\n",
      "Category: Syntactic, Accuracy: 61.255269320843084%\n",
      "Sub-Category: capital-common-countries, Accuracy: 93.87351778656127%\n",
      "Sub-Category: capital-world, Accuracy: 88.94783377541998%\n",
      "Sub-Category: currency, Accuracy: 14.203233256351039%\n",
      "Sub-Category: city-in-state, Accuracy: 30.806647750304013%\n",
      "Sub-Category: family, Accuracy: 81.62055335968378%\n",
      "Sub-Category: gram1-adjective-to-adverb, Accuracy: 24.39516129032258%\n",
      "Sub-Category: gram2-opposite, Accuracy: 20.073891625615765%\n",
      "Sub-Category: gram3-comparative, Accuracy: 79.12912912912913%\n",
      "Sub-Category: gram4-superlative, Accuracy: 54.278074866310156%\n",
      "Sub-Category: gram5-present-participle, Accuracy: 69.50757575757575%\n",
      "Sub-Category: gram6-nationality-adjective, Accuracy: 87.86741713570981%\n",
      "Sub-Category: gram7-past-tense, Accuracy: 55.44871794871795%\n",
      "Sub-Category: gram8-plural, Accuracy: 71.996996996997%\n",
      "Sub-Category: gram9-plural-verbs, Accuracy: 58.39080459770115%\n"
     ]
    }
   ],
   "source": [
    "# Perform evaluations. You do not need to modify this block!!\n",
    "\n",
    "def calculate_accuracy(gold: np.ndarray, pred: np.ndarray) -> float:\n",
    "    return np.mean(gold == pred)\n",
    "\n",
    "golds_np, preds_np = np.array(golds), np.array(preds)\n",
    "data = pd.read_csv(\"questions-words.csv\")\n",
    "\n",
    "# Evaluation: categories\n",
    "for category in data[\"Category\"].unique():\n",
    "    mask = data[\"Category\"] == category\n",
    "    golds_cat, preds_cat = golds_np[mask], preds_np[mask]\n",
    "    acc_cat = calculate_accuracy(golds_cat, preds_cat)\n",
    "    print(f\"Category: {category}, Accuracy: {acc_cat * 100}%\")\n",
    "\n",
    "# Evaluation: sub-categories\n",
    "for sub_category in data[\"SubCategory\"].unique():\n",
    "    mask = data[\"SubCategory\"] == sub_category\n",
    "    golds_subcat, preds_subcat = golds_np[mask], preds_np[mask]\n",
    "    acc_subcat = calculate_accuracy(golds_subcat, preds_subcat)\n",
    "    print(f\"Sub-Category{sub_category}, Accuracy: {acc_subcat * 100}%\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "dabc9ffc",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:12.769998Z",
     "iopub.status.busy": "2026-10-04T07:39:12.769998Z",
     "iopub.status.idle": "2026-10-04T07:39:13.153326Z",
     "shell.execute_reply": "2026-10-04T07:39:13.153326Z"
    },
    "id": "7_z6CybBXKZu"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA98AAAL1CAYAAADes1dUAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjIsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvgI3uAAAAAAlwSFlzAAAPYQAAD2EBqD+naQAA1fRJREFUeJzs3QWYlOX3//GzS9fSndIhSHeHhI0gioEiggHYLepXFGxRBBUERRQBRQywKFGkpAxKuruWzvlfn9v/M7+ZYYuYzffruubanXlyZmd35zzn3OeO8Pl8PgMAAAAAAGETGb5dAwAAAAAAgm8AAAAAABIBmW8AAAAAAMKM4BsAAAAAgDAj+AYAAAAAIMwIvgEAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BoAkMnPmTMuVK5f7mtg2btzojj169OgUsd/z8ffff7tz+eqrr5L1eR8+fNjuv/9+q1ChguXOndsee+yxRD+H1Oz11193P9vjx49bapEan9P5mjx5snstFixYkNSnAgDxIvgGkGodPXrUChQoYLfeeutZy7744gv3ga1Dhw5nLZs+fbpbNnz48LCe38mTJ+3AgQPua0I+XHq3vHnzWrly5ey2226zZcuWndexz5w54459Ph/eV61a5c5jzJgxF3W/F9vp06fduZw4cSLedZPyvF944QUX9H/22We2bt06+9///mcpwZYtW+ypp56y+vXrW9GiRa148eLWoEED69Gjh82YMcN8Pp8lB8eOHXM/23Ccz4cffuh+F2rXrm2p5TldKL2HA/9exXVLyIWxhP4dPXXq1EU5fwAIp/Rh3TsAJKEsWbK4IPWHH35wH1IjIiL8y37++WcXaCnQVpCudT1Tp051H+YUSCQH3ofLDz74wG644QZ3/6+//rJ7773XnePixYutdOnSySKoLVGihO3bt8+yZs1qKUlSnrfeb40aNUr0AO5CTJw40V3UqlOnjgvAa9SoYenSpXMXgxSQtmzZ0l1M6Nq1q6Vm7733nmXMmNEWLlxos2bNssaNG1taV7JkSVu/fn3QY1deeaWrRNmwYUPQ49myZUvkswOApEXmG0CqpiBgz549LlgNpKD7rrvucgHk77//ftYyZcwvvfRSS04UGCpblD9/fmvVqpW98847Fh0d7YLy5CIyMtKdowKSlCQpz3vnzp0pKghZsmSJ3XTTTS6gmjZtml199dUu612kSBFr3bq1jR071r7++mvLnDmzpWa66LVo0SIbMmSICzjDXSmT0n6XAm/p06d3Fz9DH8+QIUNSny4AJCqCbwCpmoJUURls4PjetWvXWqdOnaxq1aou2PYcPHjQZbEUtHuOHDlizz33nFWrVs0F5dqmX79+bqxuaKmlyodVJq5MpoLkn376yS3/888/7YorrrDChQu77UeMGHHBz61y5crua2iWSZnpt99+25UDFyxY0MqWLWt9+vRxFyHiokqAwA/Geq7Kxr722mv+0ngFW3Xr1nXfK/PureuVSsc2dlqv65NPPmlVqlRx+73ssstcubXKZ2Mao/3dd9+54xQqVMj9LP7444+zznfYsGHWsGFDV/KsCyW6mBL6Wnji219M5x14PuPGjbOaNWu67du0aWPz5s27oPMR7Vf7V/m2971uy5cvDzq2bvXq1bN8+fK57KoXAHfu3Nll7L2g9/vvvw/av96j2kY/1wcffNBKlSrlxpUrWBRVfOhxVU1ccskl9uyzzyaojFk/a5Xp6z2mQCsm11xzjXXs2DHosYSc87ms98svv1jz5s3dz0TvU2XjNRRCr5uGRsRn06ZN7j2s10TvSb0/9DNMKAXb+llfd9111rNnTzeURRUhobyfg36H9Dug11vPrVevXnbo0KGgdfX+894HGv+vixr6uxH4NyouF/O1+/jjj939mH73JkyY4JYF/l09n6Er3k3noaoBVU0EUin5K6+84s5RfztVYfHQQw/Zrl274ty//jZff/317qJI6MVVAEhSPgBIxY4dO+bLkiWL76qrrvI/NnLkSF/mzJndsr59+/rq1avnXzZp0iRFH75hw4a5+ydOnPA1btzYlydPHt+4ceN8GzZs8H355Ze+fPny+Ro0aOA7fvy4W2/VqlVuu65du/puueUW359//un75ZdffL/++qtv2bJlvuzZs/tatmzpW7Bgge/ff//1PfDAA76bb77ZbTNlypQ4n8PEiRPdeqNHjw56XPvX49qX5/Tp0+656nz1PHW+c+bM8dWtW9dXsWJF38GDB91669atc9sOHz48aJ/79u3z39avX+/7+OOPfVFRUb5HH33ULT958qRv/vz5btshQ4b41z169Gis+9WyWrVq+QoWLOiei85pzJgxvly5crnX5NSpU269xYsXu21vv/1239133+1bunSp7++///Y1atTIlzdvXv+5i46dMWNG30cffeTbtGmTe031fG+44Qb/Oueyv5jO29v+pptu8vXo0cP9HJcsWeK7+uqr3ftHr8O5nE8ovbf02hUpUsTXsWNH/2upn6F3bL1H7rzzTt8///zj++mnn3zz5s3zzZ492x2/Xbt2vkWLFvlWrlzpu//++936H3zwgX//Dz/8sC9dunTuuX/22WfudR86dKgvIiLCN3bsWLfvTz75xD2u7fR44PYx0c8/a9asvvr16/vORULPOaHrzZgxw5c+fXrfjTfe6H6m+tl2797d/ay07vLly/3r9u/f3z3mvUdFPx/9Duu9oN9R/cxGjRrly5Ejh++JJ56I9/kcPnzYlzNnTt/zzz/v7u/YscP9/PU+COX9HHr37u3eH3q9v/rqK3cs/WwD6e+J9z7Ys2ePe276+WXIkMH97YjrOV3s1y46Otqdo35/QjVr1sxXrFgx915NCK2v18uj7QL/1qxZs8b31ltvuecZ+Brq707u3Ll9X3/9tW/r1q3u9+Dtt9/23XfffWf9fdTfOdm8ebOvZs2avlKlSrn1ASA5IfgGkOq1atXKffDzgjwFxwr6RB+C9cH4wIED/g/K+iC3evVqd1/Bp+6PHz8+aJ/6MBgYpHvBd4UKFXxnzpwJWleBlQLNwGBPWrdufd7Bt45Xu3ZtFwgFfsD89NNP3bp6XoH0gVQfzF999dU4g++YvPjii+4ChvdBWx/Ota0CiVAx7ffdd991j33//fdB63rnqkBcvICzYcOGQet5j48YMcL/mC4w6IJCXM5lf3EF33qdQwOkokWL+po3b35O5xMb7atLly4xnqOCiFAKfBWw6+JRIAVdulDivc+893JoQN2kSRMX0OjnEqhFixa+GjVqxHmuCoC0z9DzjU9Czzmh69WpU8dXrly5s4K/atWqJSj41v4KFSrk/733KLDT34ONGzfG+Xz03lcAu2XLFv9jCl6rV69+1rrez+G9994763Ht49ChQ7746MJZYKAe03MKx2unIFe/+7oQ4FGwrvX69evnS6jQ4Ds2usilv6GeqlWrxnkBKzT41kUH/T7ptdAFEQBIbig7B5AmSs9VDqrxmaJSyRYtWrjvmzVr5kpof/vtN3df5Z0qVSxTpoy7r7JxjUsMLaHVOFeNwfbKyj1aL7Cxm0yZMsXatm1r2bNnD3pczdPOhcpUVaKp8cFqJKey2V9//dWVcntUPqrlOr9AKo9Vubuae8VF057pOagMOU+ePO54L730kitRVnn0+dBrFBUVZe3btz/r+atJV+hrqDLeQCr313qrV6/2P6ZSYQ0PGDhw4FlNnEIlZH9xUflqII0LV1m13jN6Xc71fM5F6LH1PlbJ+7XXXmuZMmUKWqZx2OoBMHfu3KDHQ98LKolXczk9h9DH43tN9LsiMZWbaxhHYCnxzTfffE7nfC7raVopnX/oeYT+rGOiUm/9TmrMut6Xgdq1a+eGbagsOy4qj9Z5qrTboxJ2lX3rfRATrR9IJdQqqw58v+i+yvk1bEVl1io990rB4yqlD9drp+ek97hK0AObzOlv3B133GEXQn0BNNuESuS956my+zVr1vjfZ/q9Utm8jrljx4449/ftt99akyZN3Gunv/EaSgAAyQ3BN4BUzxu/rQ9k//77rwsiveBbAaY37lsBicZmB4731thCjZtWsBZIHz714VjNsgIVK1Ys6L7G22q8s9YNFdNjcXnrrbfcGGIFSJ9++qkb16hx094HVdm6dav7sKxz1jhTTUum56gPt2oQFddYSb0+ulChgOTLL7+0FStWuOPpGN5zOR86ZmCQ4tFFDZ1j6GsYuq6CBF240M/HozH4uhjx6quvurHMut19991u7H2ohOwvLrH97BSk7d2795zP51yEvp92797txmXH9Hp6jwW+nnquei8E8gLO0H3ocb1X9bxioz4GuvgQ04WYUaNGufeLbhrL7/VESOg5n+t6Gid8Pr9T2oeeo8Y4e78j3u+J188grt8TjcnXOOJJkyYFXWxQMC8xNV6L6eeQM2dO9zXwfXjffffZE088Ybfffru7uKNAVK+n+g3E9fsXrtdOfSU0Nvz999932+ln+sknn7i/kbpAd74UZCvY199e9cjQhQU9T42d1wUI72/au+++6y4ePfLII+6cK1as6L4P/Zsh6mWg7Z5//vlU3+wPQMrFVGMAUj0161FgoQBbX5Wx9j5kiz5capka/ujDW2DwrQ/V3gfW0Iy2PqAHZp0ltFu2slCaxiymD/PxNQ2Krdu5l1VUANGtWzcbPHiw3X///f7zVcZHAUJMQi8iBBo5cqTbXl8Ds2Lnep6hYmuApddawasuDASKrYlXYDMwBc/6sK0soS6Y6Oc3aNAg15xs5cqVQftMyP7iEtvPTu8HL4A6l/M5F6HvJ72WsZ2TF5AEHkvnGPq+vZDXRefTtGlTF3wqi+o9f4mtY3tCzzmh63nH1O9lqIS8V73jaD7y2OZUD5x6MJSCa1VPqEoklC5aqSHYG2+8EfR6xPVz8F5vNWRThlkBqJr1BdLFDjVfi+85heO1U/ZbVSqqmtHFJGXR77zzTrsQamxXvXp110wtUGh2WxcsNGWdLjyocklTROoipC58LF26NOjvmQJ6Bd56f6qaRhcsACC5IfMNINXTBzSVl6tTtD6UKcgOnOJGwbcCJn1wlsDgW9spixfabVjl3voQquXxUSmkssqh82Jr/vELoXmWa9Wq5QIIr8uySru3b99+Vjdh75YjR45Y96cP/woiA4MyZaG818XjzYXtdUCPj14jdVoP7RD+448/un0k5DWMjaYw0mvw6KOPuq7sCiBU+nsxhZbF66KBHtNxQ4cShPt8lKHVBR+9dwIrHkQBiS72qDN6OGleb/1OeBURF+ucE7qestWVKlVygViomB4L5WW41blfAXJMvyehpdse/Q4ryNPvWUzbqZxb2eHx48fbudJz1gW1wAsa3t8aVbTEJZyvnTLUyp4PHTrUlX8riE9IeX9c9Hsf+jz379/v/ibEROffoEEDV2Hy2GOPuQtamqEgkC466u+snp8qm/S6AUByQ/ANIE1QQK0PxRoX6JWce7zgT/MTq6wxsHRT4xrLly/vSoo1VlIfbFW+rayZxoWHZqhioimclNHRugpCVRauckoF7xdCmbQXX3zRla0q0BMdQx+yu3Tp4j6IK0jSB3qVqitYimuKM4131fhTfcjWNjpnZdY17jKQXh8F8SqLDf2gHxOVX2scvV5LzbeubRSIK6OmgEEXEc6VXn/9vLxsnTLoGkOqYNibgu1i0eussdx6/+gih6oMNHwhMPhMzPMZMGCAu7ii108/e72fNOe7pkN7/PHHXXAZTvr9UfZRmX39TP/55x9/9lbPW+XnumhzPuec0PX02isTqqm7VCqvcdz9+/dPcLmx9qksrsZD63g6f+1DF+huvPFG27ZtW4zbqaeCssb6XYmtLF8XX85nzm8FmLoQ+NFHH7msrn5PNE5bz1FT88UnXK+dLijp78o333zjLiSp6uZCy7r1+um11j712qvkXH+zQi8cqeeBLh54pfm6CKEAXcMx1McilAJ67wKrjqGSdgBITgi+AaQJXjZbH2j1ATeQN+47tORclBlTeanmzFbQoQ/IymSrlF3BZ1yZZI8aAGmeac2Xq8yTgleVkao89ULpA6Y+aCoQUrCsD8XK0iuouOeee9z5q9Re41H1ITe0yVYgjTNV2aYuFqjsVs9Rzzm02Zw+jCsDpjJUHS9wnu+YaLleK73Gyl7pNdRc2fo5qLFVXCW+sVGAoQ/WahKm7RXcKzhWNjN0bO2F6t69u/uqYyjrp4saymwGNpBLzPPRGFhdRPLeT3oPqtxd74G4fg4Xky5AKDDUxR31CVA5uioivHnEFcxpOMS5nnNC11NzN409/vzzz937SxfCtK7muI6pXD+Ugrz58+e73wkFy3ofK6B75pln3Ps9tp+ZgmodR7/TsdH7Ys6cOS6APlcqO1cjNp2Tfnc1vlnH9MrK4xLO106l8F6J94WWnIsCf/19uu2229zfAzWk1Hj3wOFA0qdPH9fcTueo95cuZOnvp36vYvsZ6/dPF77UfE43PU8ASC4i1PI8qU8CABKDyhq97Ejo+MsjR464klJ9cIut5FQUUOlDYOj2CtyVydayuD74K1jxskbKDirrpOyoAtq4SjR1XH0YDyyX92g8pLJcMS3Xc9KH5tCx3vGdr/bpvQ7ah14fBfGh44S9103PSbf49qt/OdompvHByrYrExfT81DGWfuLKVAPfE3Pd38xnbeyfAqE9OFd2dC4jpWQ84mNjqufv1fOH9+5B9J7SOvG9J7VeejnGFreq8d1Cw3oYns8IfQe0O9EXOeakHM+n/X03vd+jipLVuCvn693Ycz7/Yjreek9Gfj6x0b71e9AfMM3vL8Tei/F9nPwfv+1r5h+P3Xz/i5oPfGGOcT3nC7Waxe4ni5IaJaF2Lq5x0XnH1NJvfdcvPOM6z0YuF5Mr3fo66i/Nd7PK7SrPQAkFYJvAABiEFPwjeRNGWNvaAgu3munxoEqAdeQFGWsAQDnh7JzAACQoigLqiBQY++V4VRH7969e7uxzE8//XRSn16qeu2UVX799dfdVGTqAQEAOH8E3wAAIEVR+bGqEtR1W6X5KolWbwY1vdOYZlyc1069ItTnQA3oVAGSkNJ8AEDsKDsHACAGCR13jaTlTXnHz+jiv3Yaq62x/LHN4Q4AODcE3wAAAAAAhBll5wAAAAAAhFnsc9skE+q8uXXrVjeFROjUPgAAAAAAXGxqSqnhZ0WKFDlrqtVUG3wr8C5evHhSnwYAAAAAII3ZtGmTFStWLG0E38p4e086KioqqU8HAAAAAJDKRUdHuySwF4+mieDbKzVX4E3wDQAAAABILBdz6DMN1wAAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BgAAAAAgzAi+AQAAAAAIM4JvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAAAgzgm8AAAAAAMKM4BsAAAAAgDAj+AYAAAAAIMwIvgEAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BgAAAAAgzAi+AQAAAAAIM4JvAACA87Bjxw47evQorx0AIEEIvgEAAM5Ds2bNbPLkybx2AIAEIfgGAAAAACDMCL4BAAAAAAgzgm8AAIALdODAAfP5fDEuO3XqlB06dIjXGADSOIJvAACA8/Trr79auXLl7JJLLrHcuXPbl19+6V+2detWu+aaayxXrlxWtGhRq127ti1btozXGgDSKIJvAACACwi+ddu7d68NGDDA7rnnHve4suA33HCDFShQwHbt2uUy4x07drTOnTvb6dOneb0BIA0i+AYAADhPvXv3tsKFC7vvO3XqZLt373bB9ooVK2z27Nn20EMP2Z49e2zz5s12yy232Nq1a23lypW83gCQBqVP6hMAAABIqVRS7smYMaP7evz4cRdsR0REWJs2bYLWz5s3rwvQAQBpD8E3AABAAi1Yv9cGT19tK7ZH27YDx2zNzpgbqWkcuCxevNjy58/vf/zMmTMWGUnhIQCkRfz1BwAASGDg3WXYXJu1apftiD5uR0+ctjen/useD1WqVCm76aab7Prrr7dffvnF/v33X5swYYLVq1eP1xoA0iiCbwAAgARQxtt8Pjv9/2cUi8yWyyLSZ/zvcd2PjHRdzdOn/6+w8KOPPnLdzp999lm7+uqrbfz48TZ8+HBeawBIoyJ8sU1KmUxER0dbzpw5XZfQqKiopD4dAACQRtUbMNVlvEMVjMpk855qnSTnBABIOXEomW8AAIAEqFgoyiIjQj5IRfz3OAAA8SH4BgAASIA+Lcu6DuZeAK6vut+3VVlePwBAvAi+AQAAEqB2qTw2rmd9a1Iuvys119fxvepbrZJ5eP0AAPFiqjEAAIBzCMBHda/L6wUAOGdkvgEAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BgAAAAAgzAi+AQAAAAAIM4JvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAAAgzgm8AAAAAAMKM4BsAACCVW7BggWXOnDmpTwMA0rT0F7qD6dOn26JFi+yKK66wSpUqnbX85MmT9sMPP9iGDRusXLlydvnll1tkJDE/AAAAACDtOO/ge8aMGXbvvfdawYIFbebMmVaoUKGzgu+DBw9ay5Yt7cCBA9akSRN77bXXrGLFijZp0iTLmDHjxTh/AAAAAABSb/CdLVs2mzhxogumIyIiYlxn4MCBtmPHDvvrr78sV65ctmXLFqtcubINGzbMevfufSHnDQAAAABAinHe9d9169Z1gXdcvvjiC+vSpYsLvKVo0aJ25ZVX2vjx48/3sAAAAIjB3r177frrr7c8efK4ysT77rvPDh8+HLTOBx98YOXLl7ccOXLY1Vdf7bbxaBhhq1at3Oe2UqVKWf/+/e306dO81gBwkYRt8PWJEydszZo1VqFChaDHFbAvX7481u2OHz9u0dHRQTcAAADE7eWXX7Z9+/bZsmXL3GetatWq2ZQpU4I+Y82ZM8d+//13W7lypW3dutVef/11t2zTpk3WvHlz69Spk/v+xx9/tHHjxtnQoUN52QEguQffutLq8/n8WW+P7msseGxUqp4zZ07/rXjx4uE6RQAAgFRD3cyzZMli2bNnd9nvXr162bXXXhu0zttvv2358+e3IkWKuOrExYsXu8dHjBhhjRs3tnvuucdlxZUseeaZZ+zTTz9NomcDAKlP2ILvrFmzuq+hmWs1X9N48dg8+eSTbh3vpquvAAAAiNsTTzxhtWrVcqXjTZs2tZdeeimo7DxTpkwuseFRoH706FH3/bp169zsNOrj491uuukmW79+PS87ACT34Ft/4EuWLOlKzwPpvqYci2u7qKiooBsAAABitmD9Xus2cr61GDTbNpS60oaM+8G+/fZbmzdvnj3yyCMJetn0ma1jx46uajHwpsa5AICLI6wTbl9zzTWu6dqxY8fcfTX1+O677+y6664L52EBAMAFUsZUJct79uzhtUzmgXeXYXNt1qpdtuKb9+zH7yZap7en2IK1u+zMmTN26NChBO2ne/fuNm3aNDfGW+PGd+/ebZ9//rkrPQcAJHHwvXHjRtekw2vU8f3337vvf/75Z/86+oOtP/zNmjWzp59+2n3VlVWmGQMAIHk7efKkffPNN/6y5JiWKzjfvn17op8b/s/g6avNfD477TPLXr29HVrxu216v4dd0aS2qyZ89dVXE/Ryqbv59OnTXcZcFYqXXnqp+2zXs2dPXm4AuEgifKopOg+rVq1y01WEqlevnnXu3Nl/X83VxowZ44J1/TG/8cYbXUOQhNKYcY1P0vhvStABAEgc+/fvt9y5c7veK8WKFTtruS6uK1Br06ZNnL1cEF71Bky1HdHHz3q8YFQmm/dUa15+ADhP4YhD05/vhgqkvax3XNQxU902AQBA6hEZGXlWJ20kvoqFomzXwV12JiCVEhnx3+MAgDQ05hsAAKRsO3futH79+tktt9xib775pis3j63s3CtTvuOOO2zs2LFJeNZpR5+WZV1ncgXcoq+637dV2aQ+NQBACIJvAAAQKwXd+fLlc9NXDRkyxAXicvr0aTcm3GvopZ4vXbt2tUqVKlnLli1t8uTJNnjwYF7ZMKtdKo+N61nfmpTL70rN9XV8r/pWq2QeXnsASGbOu+wcAACkfq+99ppdccUV/lJzZb9ffvnls9ZbunSp1a9f3x588EF3/9Zbb3Vds5E4Afio7nV5qQEgmSPzDQAAYlWtWjX/9wULFnTThsaWIVdn9ObNm9sLL7xgc+bMcQ3bAADAf8h8AwCAoHmjNX3VP+u2uvt/bd5vxYsX9y+PbZKU/Pnz28yZM90Y8N9//90eeOABa9SokcuUAwAAgm8AABAQeHcZNtfNG33y6H/TV9372WKbULioK22Oyw8//GBVq1Z105Jdf/31rlGbxogDAID/kPkGAACOMt4KvE8HJLeV6dbj8Y0pzpw5s2u0ljdvXsuSJYstXLjQBg0axCsLAMD/R/ANAACcFduj/YF3RIbMlv+6py0iS5R7XGrWrGkjRoxw32fMmNEmTpxohQsXdvdbtGhh//zzjy1atMiN/dZYcQXiAADgPwTfAADAqVgoynYd3GVnfGYR6dJb1vIN3LzRelwKFChgbdu29Xc+1zzfgRSQq+M5AAA4G93OAQCA06dlWYuIiHABt/uQEGHuft9WZXmFAAC4QATfAADAUVO1cT3rW5Ny+a1gVCb3dXyv+larZNzN1gAAQPwoOwcAAEEBeHzN1QAAwLkj8w0AAAAAQJgRfAMAAAAAEGYE3wAAAAAAhBnBNwAAAAAAYUbwDQAAAABAmBF8AwAAAAAQZgTfAAAAAACEGcE3AAAAAABhRvANAAAAAECYEXwDAAAAABBmBN8AAAAAAIQZwTcAAAAAAGFG8A0AAAAAQJgRfAMAgFRr48aNVrFiRTtx4kRSnwoAII0j+AYAAKmWgu6VK1famTNnkvpUAABpHME3AAAAAABhRvANAAAAAECYEXwDAIBUb+7cuXbddddZnTp17P7777dDhw75l+3Zs8ceeOABa9CggbVp08ZGjRp11pjx6dOnW8eOHa1q1ap2+vTpJHoWAICULH1SnwAAAEC49evXz1544QVLnz693X333ZY1a1YbOHCgHT161OrVq2fNmjWzQYMGuUC8d+/ebqz4XXfd5R8z/sQTT9iAAQOsWLFili5dOn5gAIBzRvANAABSveHDh7sMttx33302duxY9/3o0aMtS5Ys9uGHH1pERIR77NVXX3WBuoJvz3vvvWe1atVKorMHAKQGBN8AACDVK1WqlP/7qKgoi46Odt8vX77cNmzYYJUqVfIvP3bsmO3cuTNo+8DlAACcD4JvAACQ6ixYv9cGT19tS5Yud/cXbthrjSoUOWu9/PnzW/Xq1W3YsGFBj3tZcE9kJG1yAAAXhv8kAAAg1QXeXYbNtVmrdtnuQyfcY7eMmO8eD9WpUyf7888/bdWqVa4sXTc1VJs8eXISnDkAIDUj+AYAAKmKMt7m89lp3/895vP5/ns8RPny5W38+PH28MMPW758+axAgQJ20003WY0aNRL3pAEAqR5l5wAAIFVZsT3aH3injypgRXq8Z77IDO5xufrqq61x48b+9du2bWv//vuv7du3z86cOWN58+b1LytZsqQbF54pU6bEfyIAgFSF4BsAAKQqFQtF2a6Du+yMzywiXXrLkLe4RUb897jXcE23ULlz5z7rsQwZMvi7pAMAcCEoOwcAAKlKn5ZlXcM0Bdyir7rft1XZpD41AEAaRvANAABSldql8ti4nvWtSbn8VjAqk/s6vld9q1UyT1KfGgAgDaPsHAAApMoAfFT3ukl9GgAA+JH5BgAAAAAgzAi+AQAAAAAIM4JvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAAAgzgm8AAAAAAMKM4BsAAAAAgDAj+AYAAAAAIMwIvgEAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BgAAAAAgzAi+AQAAAAAIM4JvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAAAgzgm8AAAAAAMKM4BsAAAAAgDAj+AYAAAAAIMwIvgEAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BgAAAAAgzAi+AQAAAAAg+AYAAAAAIGUj8w0AAAAAQJgRfAMAAAAAEGYE3wAAAAAAhBnBNwAAAAAAYUbwDQAAAABAmKUP9wGWL19uEydOtJ07d1qRIkWsc+fOdskll4T7sAAAAAAApI3M94QJE6xq1aq2bt06K1WqlC1atMgqVqxoM2fODOdhAQAAAABIViJ8Pp8vXDtv1aqV5c2b18aPH+9/rEmTJlaiRAn77LPPErSP6Ohoy5kzpx04cMCioqLCdaoAAAAAAIQtDg1r5ltl5nv37vXfP336tDv5YsWKhfOwAAAAAACkncz37t27rXfv3rZ+/XqrVKmSLV682OrXr29vvPGGZcuWLcZtjh8/7m6BVxyKFy9O5hsAAAAAkChSXOZ7xYoV9vvvv7vAW2O/y5cvb1OnTnVjwGMzcOBA9yS9mwJvAAAAAABSsrBmvsuWLWvt27e3wYMH+x/r1KmT63z+66+/xrgNmW8AAAAAQFJKUZlvje9WhrtGjRpBj+v+v//+G+t2mTJlck8u8AYAAAAAQEoWtuA7Xbp0VqVKFfv++++DAvKffvrJqlWrFq7DAgAAAACQ7KQP587fe+89u+6666xmzZpuzPcff/xhhw4dsh9++CGchwUAAAAAIO2M+RYF27NmzbIdO3ZY0aJF3TzfKi1PKOb5BgAAAAAkpnDEoWHNfEv27NmtXbt24T4MAAAAAADJVlinGgMAAAAAAATfAAAAAACEHZlvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAAAgzgm8AAAAAuEAvvfSSTZkyJayv48mTJ+2WW26xHTt2hPU4CA+CbwAAAAC4QAq8V65cGdbX8fTp0/bZZ5/ZwYMHw3ochAfBNwAAAAAkM2fOnHFZ7m3btiX1qeAiIfgGAAAAgGQYfCvLfeDAgaQ+FVwk6S/WjgAAAAAgLfP5fPbRRx/ZH3/8YSVLlrR7773XcuTI4R8TXqdOHdu+fbvNnz/fOnbsaM2aNbNPPvnEFixYYHny5LEuXbrYpZde6tZ/5JFH3NfHHnvMoqKirF27dtapUyf3WHR0tL3++uu2evVqu+yyy+yuu+6y9On/L7T7+uuv7ddff7XIyEi75pprrEmTJv4x43fccYf169fPvv32W1uxYoW98sorrlz+q6++suPHj1ubNm3cNrj4yHwDAAAAwEXwwgsv2NSpU61q1ar2448/WsOGDe3EiRP+MeEqI//ll1+sdu3aVrx4cbvyyivtrbfeskqVKtnhw4etXr16Nm3aNLe+FzDrqwJvrePp2rWrHT161B3n1Vdftaeeesq/TMG17pcoUcIKFixonTt3ttGjRweNGe/QoYM7XosWLezPP/+0tm3bugBfgb/WHTRoEO+HMIjw6fJMMqarOjlz5nTlFnpDAAAAAEBy07x5c8ucObMLukVBd9myZV1Afvvtt7vl+fPnty+++MItV5CuDPO6deusQIEC7rEnn3zSBd/KjJ86dcoyZMhgy5cvt4oVK7rlx44dsyxZstjnn39uN954o3tszJgx7hjKYs+ZM8cuv/xyt898+fK55ZMmTbL77rvPNmzY4N/+ww8/tDvvvNMtHzp0qE2YMMEf9MvOnTv955RWRYchDqXsHAAAAAAuAgXYnowZM7rM999//+1/rEGDBv7v9bgy14FBbsuWLV3WOb78aM2aNf3fFylSxPbs2eO+V7m7jvvAAw/4lx85csQ2btzoOqQrmA89D5Wyjxo1ymXXVXLeqlUrq169+gW8CogNwTcAAAAAnIcF6/fa4OmrbcX2aNuw/aCV374vaLlKw5Vp9igw9uhxLQ9dX9nziIiIOI+rsdyBvGA9U6ZM/vHhgTS+3Au8Q89Dwf+8efNs7dq1Nnv2bJcRVzm6xpTj4mLMNwAAAACcR+DdZdhcm7Vql+2IPm4Hjpywjz8dY7OWb3bLlW1WKbeaqsVEY7mXLVvmAl+vu/mIESP82XM1UFOAfi5zeitzvnv3bjc+XOPLdVMTt6xZs7qgPiYag75jxw4rXbq0W//++++3iRMn8n4IAzLfAAAAAHCOlPE2n89O//8KcX2JzBJlHZo3sJYNatmsWbPcuGyVcsekSpUqbqy2xmg3bdrU1q9f77qRf//99/512rdvb7fddpsrM9f3Xrfz2JQrV86GDBniGqipC3q2bNnsr7/+ct3QY6MmbI0bN3YN2rJnz24zZ8605557jvdDGNBwDQAAAADOUb0BU13G23N03WJLn7OA5c+V3V5onN0Fs4Fjp9XtXNOPlS9fPmg/ypAvWbLETTWmqchUOh4YGGvKsG3btlmFChWsRo0arsHatdde6wJlUdb6t99+CwrM9+3bZ4sXL3Zl7Oqsrq7nXnY9dHtvXPjcuXPt0KFD7hjqxJ7WRYeh4RrBNwAAAACco24j59tvq3bZmYDeaJERZk3K5bdR3evyeqZw0WEIvhnzDQAAAADnqE/Lsq4xmgJuF1hFmLvft1VZXkvEiOAbAAAAAM5R7VJ5bFzP+i7TXTAqk/s6vld9q1UyD68lYkTDNQAAAAA4zwCcEnMkFJlvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAAAgzgm8AAAAAAMKM4BsAAAAAgDAj+AYAAAAAIMwIvgEAAAAACDOCbwAAAAAAwozgGwAAAACAMCP4BgAAAAAgzAi+AQAAAAAIM4JvAAAAAADCjOAbAAAAAIAwI/gGAAAAACDMCL4BAAAAJJpTp07Z6tWrbevWrTEuP3r0qK1YscIOHz4c9PjBgwftzz//dN/v3bvXVq1a5fZ1LvsGkhLBNwAAAIBEsXDhQitVqpS1bt3aGjZsaM2bN7cdO3b4lz/77LOWN29eu+aaayx//vz2yCOPmM/nc8vmzZtnLVu2tK5du1rt2rWtadOmVqVKFduyZUuC9g0kNYJvAAAAAIli0KBBLrBev369u7344ou2adMmt2zixIn21ltv2YIFC2zlypX2119/2UcffWSjR4/2b6+MtwLwtWvXuu0KFy5s7777brz7BpIDgm8AAAAAiaJChQqudFxZ6tOnT1vjxo1dFlu+++4769y5s1WuXNndL1u2rN188832zTff+LfPli2b9ejRw32fPn16l91WmXl8+waSA4JvIICusoaOLwIAAMDF8fTTT9v9999vgwcPtpo1a1qXLl1s27ZtbtmePXtcqXmgfPnyucc92bNnD1quAPzkyZPx7htIDgi+gQDNmjWzOXPmxPqa/Pvvv67ZBwAAABJuwfq91m3kfKv7wg826WBJ6/38my5LnS5dOnv++efdOuXLl3dZ66DtFixwjyfE8ePHXeb8448/PmvfQHKQPqlPAEhJ+vTp466qqsEHAAAAEhZ4dxk218zns+0TX7bVeYvZlKlV7dFWl9iiRYtcAzW57777XAO1xx57zDp06GBTp061n3/+2RYvXpygl/m2226zihUrumSKOqYH7htIDsh8A+fgp59+IvAGAAA4B4Onr3aB92mfWd4O95uly2D7Zo+31we9Yz179rSnnnrKradO5cp8796925577jnXLG3+/PlWqVIltzwqKsqqV68etO8iRYq4seEycuRIy5Qpkw0cONA1YQvcN5AcRPi83v3JVHR0tOXMmdMOHDjgfuGAcCpUqJB9+umnbooK0ftOf/jVwCNDhgyu7FxdNXPkyOEfI16sWDHLkiWLbdy40W2fOXPmoH2eOXPG7aNo0aJu7sk1a9a4q7oAAABpQb0BU21H9PGzHi8YlcnmPfXfZy4gLcShZL6BWKxYscJq1aplkyZNcoG3XH755TZz5kz/Oiprevjhh6148eLWokUL1xRkwoQJ/uXTp093AbnmmtTXBx54wC677DJecwAAkGZULBRlkRHBj+m+HgfSEoJvIAYKsBVMa37IJ554Is7XSNNbKAO+bt06GzBggD300EPucXVNv+mmm6xfv362ZcsW27Bhgy1fvpzXGwAApCl9Wpa1iIgIfwCur7rft9V/5eJAWkHwDYQYO3as3XjjjTZ+/Hj3NT5qDuJNe9G+fXtXfq5um3PnzrUTJ0645d68lMqSAwAApCW1S+WxcT3rW5Ny+V2pub6O71XfapXMk9SnBiQqup0DITSlRcGCBf3NPeLjjf8Wrzxd801qTsq8efNaZOT/XeMKnbsSAAAgrQTgo7rXTerTAJIUmW+ked68k2oGcuDoSbvr4X7WpEkTN55727Zt5/36lClTxjZv3mz79u3zP6Y5JwEAydf9999vy5YtS3H7jokqse68885EOx4AIG4E30jTvHknZ63a5bpwnjx9xl78foV1e/h/ds0117ggfP369ee1bzVr0+3mm2+23377zcaNG+fGkGuMEwAgedLf6q1bt6a4fcdk7969NmrUqEQ7HgAgbgTfSNMC552U9HmKWUSGzO5xNU+766677J577nEfYERTjgVONVCxYkX/eG/JmDGjm0YsXbp07r46pWvOyscee8y+/fZb69+//1lTkQEAAABI/RjzjTRtxfZof+Athbq+7H9cHn/8cXfz/PTTT0Hb//LLL0H3ixQpYv/880/QePChQ4f677/55psugAcAAACQthB8I03T/JK7Du6yM77wzDs5aNAg97Vx48b2999/2wsvvGCvv/76Rdk3ACA81DTzgw8+cH+31b9DFVBe1ZLGUOtvedGiRd19DU166aWXbPjw4e6+xnSPGTPGDhw4YA0aNHBT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16lTx43/HD16tD333HPWpk2bi/o8gaSgrK2CzFdeeSXVXrRbvu2Alcx8wh6/voENbNvWBgwYYOXKlbOJEyfaLbfcErSNLq7p91wZ67YxrJspUyZ/FY2ndu3ariRdfxc8Gt+t8nMAqRfdzgEgET+wVqhQwXXeVgOdggUL2p133hlUKq7MkcoVCxQo4Mb/KUgM3f7VV191X4sXL24PP/yw+8AW6Hz3X69ePX8JpPapMuk77rjDv1zjmFPKh219ePYCb8lUsrrl69DXxn3zoyuPffzxx+22226zwoULu+Ua662mR4Fq1qxpJUqUcN/rQ7LKyBWwf/zxx5Y5c2YXZMsll1xil112mX87NUVSt+Njx47ZyJEj3Ry/b7zxBoE3Ug01E/z9998ttV60m7Vql+2IPmbfDLjbWnW63Z55+W1XyaLpAwN/1wODbzVU7Nu3r3344YdnratqmF9//dU1U/O6nb/55pv27rvvutkV1KhNjRo128KqVauS4JkDSCxkvgEgEcdk//vvv67xjprsaByxOmnrw9p9993nShA1xZU+kKnrrda94YYb3BzR1157rX97deSePn267dy5001/pUDwpZde8n8oPt/9K6OrskntU1Pc5MqVy9+dV8eeMmWKC/ZTApWae4G3J2ulZlaw3uU28qnW7n5g5/Hbb7/9rH3oIkcgXdB4++23z1rv5ptvPusxze392muvXchTAC7qWGxdFJo0aZKbz17T7KkDvyo3dHFI720FjFmyZPFvt2LFCndxTt24Nee9Aks1CNP6mrZPHf29YRiB0/jpb4/mtdZx9LfEqxgRBaRaV397NL65T58+VqxYsaDzVBCrpoX58uWz/v37J9lFu4iISCvUbZAd+WeKjf9hhnVuXMXmzp3rLlp6AbXXx0EN2PR3WVMWzp8/3/1NDVz36quvdr0g1NFcFTHqcq7AXH+TR40a5SppVKauxo762yH6+eg1ApC6EHwDQCLS+D8FcGrmpayrPoTpQ5soKFZ22cs268Pngw8+6DKtCo5F233wwQcuMNaHNX047d27tz/4vpD9KzBXFkY0r+ytt97qMuF///23+8AoKqNOCSoWirJdB3fZmYAAPDLiv8eBtDYW+5133nHTYulCkYJC/a7rd/nyyy+366+/3l1oUmCsvy2iYFDVHgrSFThqPLPKpBV46++Olqns/O6773bre80I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ChYsaLfeeqt99NFHljlzZndTLxJlnLdv3+7fp7a54oorrEePHm6/efLksSeffNK/XMHxo48+6j/mAw884M5DtO/27dvbjh073P5r1arlfzy2Y37xxRf2v//9z7777jv/OtpeDh8+HOt5yIcffmiVKlVy21x66aU2adKkoOcR+twBAEDSIPgGAKRob7zxhgs4Z86caatXr7YsWbLYokWLgtb56aefrEGDBrZhwwb77LPPrHv37v4Ms7bJli2b9e7d+6xtmjZtaps3b3bfv/322zZr1iy37K233rIJEybYjBkzXIl5+vTp/cfUvrW+gl3tf8mSJf7HYzummqop+L766qv962j7+M7j448/tueff95daNA489dff926du1qy5cvj/W5AwCApEHwDQAIooDyXMYqJzVNY/n4449blSpVLHv27G7sdN68eYPWqVOnjvXs2dNlh0Plzp3bBb6TJ0/2l6pLkyZN7LbbbnPbaHtl0//880+3bNSoUS4DXbVqVcuRI4e9/PLLZx0zLrEdMyZxncfgwYPdeegxTWfWunVru+qqq1wmPSHPHQAAJB6CbwBAkOPHj9vOnTtTzKuyZcsWK1WqlP++stDFihULWqd48eJB95ctW2Zt27Z15d8ZMmSw8uXL27Fjx2zPnj3+dfLnzx+0jYLXo0eP+o9ZunTpOI8ZKiHHjElc57F+/XpXZu+Vqus2btw4lyWP7bkDAICkQfANAEhxFqzfa91Gzrd6A6aaZctr0+f/7V+msdebNm0KWj8iIiLovsZQa5y05t9WQzSVjktCG50poFXpeFzHDBXfMSMjI+PNgofSRYfhw4f7S9W9m+YYj+25AwCApJE+iY4LAMB5B95dhs1Vi3A77TOLKN/UXn31FatU9TJr36Cavfjii67beFyUOVa2WhnodevW2f33339O53D77be7UnM1U1MAfDGOWbhwYReQaz9RUVFu3fio0ZvKznUxoF69erZt2zZXhq/zuvbaa8/pOQEAgPAi8w0AyYiyotdcc42VK1fONd9SBjNw/LU6a48ZM8Z101bQp+yrlutxBWAtWrSwKVOmBO1Ty8aOHeu6XpctW9YFZRs3bvQvVyCox3RMHTswoyuvvPKKVa9e3SpUqGD33HOP7d+/379M5dfqoK1lCv7eeeedoOxtfMc+H4Onr/YH3pKj9rWWrWJj63lrF6tRo4YL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okVWs2ZNF/zKH3/84YJnBf06poLkdevWBW3/2GOP2cMPP2w+n88F4A0bNnQXBnS+mTJlsrvvvtveffdd/zY6hoLgOXPmWLp06dz2119/vVuWLVs2y5Url/vqnbfWkd9++y3W81yzZo1VqVLFBe5Zs2a10aNHW5MmTezkyZOxvjYAkByR+QYAAEhi/fr1c4Hsq6++6u7feuutVrFixaB1FAD/8ssvliVLFv9jVatW9X/funVr69mzp3Xv3t3/mAJkBc1ellhZ459//tlljp955hnr0aOH63AuN998s1WuXDnomAqUZ8yY4bLx999/vwue77rrLnv66afd8jx58tjnn39uvXv3dvcVBN9www32wQcfuPu9evWyMmXK2E8//WRt27a1+vXr2z///OPPfCfkPB999FEX8A8dOtQte+KJJ6xWrVquOVy3bt1ifW0AILkh+AYAAEhiixcvdlliT9myZV1ZeSCVnwcGlwo4VWatqcGUJT58+LBt2LDBjh07ZpkzZ3brKEj1AlopWbKk7dy5032vMnBltT3ly5c/65jKQCvwluzZs7vgWwG0p3jx4v79ibLW9913n/9+oUKF3D4WLFjggu/YxHWeymyrKiAwYD916pQrU/eC79DXBgCSI4JvAACAJLBg/V4bPH21rdgebYdP+mzZln3WJmC5AsxAXkDtefDBB9248E6dOlmxYsVc8K2A/NChQ/51vbLuQFpHNM479Bih92PaPvQxb39x7dML4GMT13lGRka6ID5wDPidd97pyttje20AIDki+AYAAEiCwLvLsLmKMO20zyyyYHnr99aH1qh5a6tdKo8bj63mYnH59ttv7fXXX/c3PNNY6HOh8dtqYtahQwd3X8cMHPN9PrTPsWPH+s9J48mVYX/ttdf82fOjR4+e0z5btWplx48fD8p8b9q0yY4cOXJB5woAiY3gGwAAIJEp4+0F3pKzya22Y+zTdlX7tta2XhWbN2+eFShQwGV9Y6OgWWOtNZ5aJdpr1649p3MYMGCAtWjRwnVJL1GihDumMswX4uWXX3Zjz9WlXeO2v/vuOzfuW/dFjdKeffZZl7lWw7jAbuex0QUGPVd1Tlf5+bZt21wTNq/TOwCkFATfAAAAiUyl5l7gLRnzl7Qidw6xjDv+sSuuqOECTgWbuXPndsuvuOIK279/f9A+Bg8e7DqUr1q1yk2v1bx5c9ftXNnl2La599577ZJLLnHfq6Hb33//7caNq1xcx9T3l112WazbK1jWePTAhm9q3OZRwK2GamrSpqnGdHFA47k99erVc53SFeirTF7l5vGdZ8GCBV1WXh3R9VyLFCniLhp4Y7xj2h4AkqMIX+BAnWRIU2fkzJnTDhw4YFFRUUl9OgAAABes28j59tuqXXbm/38KO3PskNmJI9aidhUb1b2u6/zdrl0727x5sws+AQApPw4l8w0AAJDI+rQsa7NW77ZI87kAPDIiwrZN6G/bNlW3Lj9lsEmTJrmycAJvAEg9yHwDAAAkcbfzioWirEf9QrZrxQLXrVxjmytVqsTPBQBSUeab4BsAAAAAgDAH37G30AQAAAAAABcFwTcAAAAAAGFG8A0AAAAAQJgRfAMAAAAAEGYE3wAAAAAAhBnBNwAAAAAAYUbwDQAAAABAmBF8AwAAAAAQZgTfAAAAAACEGcE3AAAAYvXXX3/Z6NGjeYUA4AIRfAMAACBW8+fPtyFDhvAKAcAFSn+hOwAAAEDSWbNmjX3xxRfu+1y5clmDBg3ssssu8y+fPXu27dy506699lr/Y19++aUVK1bM6tevb0uWLLGlS5da69atbcqUKXb06FFr3769W75x40b74YcfbOvWrfbyyy+7bbt3724FChRIgmcKACkbmW8AAIAU7OTJk7Z//353W7hwobVs2dKGDh3qXz59+nT79NNPg7b5+OOP7ZdffnHfz5071x577DFr166dC9S//vpru/TSS23z5s126tQpF4yfPn3afwx9DwA4d2S+AQAAUrCKFSv6s9LSq1cvl8XW13Tp0iVoHwcOHLAFCxZY4cKF3X1lz8ePH28PPfSQdezY0fbu3Rt0DADAuSP4BgAASOFWrVplv/32m+3evdvOnDljBw8edJnrkiVLJmj7KlWq+ANvKV++vG3fvj2MZwwAaQ9l5wAApFEfffSRjRkz5ryXX0zKuj755JOJcqzU5sMPP7S6devajBkz3NhulYbLvn373NeIiIiztlE5eaAMGTIE3dc2CuIBABcPwTcAAGnU77//7jpZn+/yi2n9+vU2ceLERDlWarBg/V7rNnK+1Rsw1Z55bajd2fcxNx3Y66+/bp06dQoKnNUcbe3atf77hw4dck3WEipLlix24sSJi/4cACCtoewcAAAke4sWLbJx48bZK6+8YmmdAu8u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hbVr186tr0Bct+effz5ov99++63NmTPHtmzZ4jrF33LLLfEeT8fp0KGDW3f//v329ddf29ChQ23IkCFB+54xY4bNmzfPlcMrgH/22WcT6dUCAAC4+Ai+ASANyJEjh5uW7cyZMy6T3LFjR7v11ltjXX/cuHFWvHhx69Onj9tOGfGnn37axowZE7TeK6+8YoUKFbI8efLYoEGDXMCs4Dqu402YMMFltB944AG3TBlwff/xxx+ftW9l3LWvrl272l9//RWmVwcAACD86HYOAGlAjx49XFa7S5curnS8SZMm9vjjj1v+/PljXF8l3n/++acLugNFRka6gNpTqlQp//clSpRwAbdKz+M6nrLkKlUPVLp0aRe0B1Lg7VGQ7pW8AwAApERkvgEglc+L3m3kfGv4ygxblKOBvf7xV268teauvPPOO/0BdWhjMwXVderUcQF04O3IkSP+9UWl5Z41a9a4fShjni5dOrv//vvtl19+Oet4Wr5q1aqg81y5cqWVLFky7K8HAABAUiH4BoBUHHh3GTbXZq3aZSsnj7TJ4z+x61//zmb8tdY1RFN3c8mbN68brz137lyXXVbjM43R3rRpk/Xr18991XRkKkW/++67g47xyCOPuMB5/fr1rkRdY8QLFy5szz33nH3wwQdu23379gUdT83XlOVWkzWNB582bZorWb/rrruS5HUCAABINcH33r177e+//3aZDwBA4hg8fbXS2XbaZ5aj1pV2fOd62zL6UbuudWMXZCs4FmWp1bVcwbMCcXU7z507t/32228us924cWOrVauWa6722GOPBR1D5eUKpuvWreuaoo0ePdo9rs7oGqOtLuXVq1cPOl7BggVdwD19+nSrXLmy9e3b15555hl/8K3SdV0M0FePzlGPAQAApFQRvjBOoKpdq4mOut5qKhmN81PDHmVSEkoBuz7QHThwwE13AwBImHoDptqO6P+yzYEKRmWyeU+1vqCXUZlrlY8rqx06LhwAACCliw5DHBrWzPfw4cPto48+sgULFrixgD/99JO98MILLnsCAAivioWiLPL/kseO7utxAAAAJK6wB9+dOnWyqlWruvvNmjWzli1b2ocffhjOwwIAzKxPy7KudNsLwPVV9/u2KnvBr09MpeEAAABIguBbDXs0TY265QaqV6+eLVq0KFyHBQD8f7VL5bFxPetbk3L5Xam5vo7vVd9qlcxzwa9R0aJFXfdzlWMBAAAgCef5PnjwoJ08edI17wmdt3XPnj2xbqduuF5HXKFJGwBcWAA+qntdXkIAAIDUmvnOkCGD+xoYSIs63nrLYjJw4ECXSfFuaugDAAAAAEBKFrbgO1u2bJYnTx7bunVr0OO6X6JEiVi3e/LJJ11HOe+mOWIBAAAAAEjJwtpwrVWrVjZ58mT//TNnztj333/vHo+NGviolXvgDQCAc3Hq1Ck3zaWGQCWGb775xpYtW5YoxwIAAClTWIPvZ555xk0z1rdvX5syZYp169bN9u7daw8//HA4DwsASOPUDO6ee+6Js8fIxfTaa6/Zr7/+mijHAgAAKVNYg+9q1arZb7/9Zrt27bLnn3/e0qVLZ7Nnz46z7BwAkLp9++23tnTpUktL0uJzBgAAidTt3FOrVi37/PPPw30YAEAK8eabb1qnTp2sSpUqllakxecMAAASOfgGAKQ9p0+fthkzZti2bdusatWqVr16dff4zJkzXePNWbNmWfr06V1jzhtuuMEt0/hsVUdpeFKdOnWsbNmyQWOqy5UrZxEREbZkyRIrWbKkNWzYMOiYGzZscNsXLlzYfzzP1KlTbfXq1RYZGelm0WjSpIllz57dv3zcuHFWr149K1WqlLt/4sQJGzlypN16662ugaisX7/e5syZ4/avdUeNGmU333yz5ciRw7+fVatWueFW+fPnd/1NdL4X+py1zcKFC61GjRpWsWLFi/pzAgAAiYfgGwBw0ZudNWrUyI4cOeKqn95++21r0aKFGxetGSwOHTpkW7ZscUF00aJF3TZz5851meEKFSpYoUKFXK+Q5557znr37u2Wa1sFxIcPH3aB9bRp06xt27YuAPbKurt27eoCXq2n2TJCA3MdT40/P/nkE3d8jdH2prPUsV5++WV/8K1z15jxK6+80gXfEydOdIF4mzZt3BSa+/btc+fcrl07f/Ctcxk+fLjLbk+fPt2aN29un3766QU955MnT7rx6wrMGbIFAEAK50vmDhw44NNp6isAIPlbsWKFL3369L5jx475H5s5c6b/+2bNmvkGDx7sv3/69GlfuXLlfIMGDfI/tnTpUl+2bNl827Ztc/cbNWrku+yyy/z73LRpk1v+888/+06ePOkrUqSI7/333/dv379/f/e/Y926dTGeY8+ePX19+vTx369QoYJv4sSJ/vv79u1z2+s4J06c8BUuXNg3YsQI//KXXnopaP86v8svv9x35swZd3/ZsmVu+e7duy/oOTdu3Nh36tSpBL/2AAAg+cahZL4BABeVsseVKlWy++67zzp37mwNGjSwpk2bxrq+stIq11bGWtODebJkyWKLFy+29u3bu/val6ajlGLFirlsukq5lRFWWfctt9zi31ZZ6n79+gUdZ9GiRbZixQpX6q3svL5PiLVr17ry+S5duvgfU7n5008/HbTeFVdc4crMRc9fJe7KdufNm/e8n/M111zjmpUCAICUj+AbAHBRKUDWuOeffvrJjft+6KGHXDn4O++8E+P6KvGWf//9NyjQvP7664MC14wZMwZtp/sqAVdptoLeDBkyxLrutdde64JajROPioqyjRs3unHWHi9oDhyz7lGAHN/+Y3pM26jM/UKec+C4dAAAkLIRfAMALooF6/fa4Omr7e81G61CkTz28BWN7OWrrnLBd8GCBe3BBx+0Sy65xDJnzuwCZk/58uUtV65cdt1111mHDh38j2/evNk1Lgtsmvboo4+6748ePeoalSkbXqZMGTcuW+PAvYyx1g3cj5qX7dy507+/J554wiZNmuRfRwGvxmZ75s2b5/9eTdCyZs1qv/zyi11++eXuMR3rXJzvcwYAAKkHwTcA4KIE3l2GzVUjETu6a5f98/6D9sOo2nZn+7q2cuHvLkBWqbioa/fHH3/sungrKFfn7w8++MC6devmmqapbF0l4WqI9scff/hLzf/++2+XGa5fv759+eWXrlmagm9ljp9//nlXdt6nTx+XqZ4wYYL/3AoUKOCanPXq1cuaNWvm9vP999+7ruMeNT7r37+/K0lXVvq7774LKgV/9tln3blp/8q26/gxZcxjc77PGQAApB6RSX0CAJBWqNR55cqVlhop463A+7TPLGO+Elaw68uWLiq//TDnb5eNVkDplW0rkO3Zs6cb8+y9HgpG1f1b47eV/a1bt66bXiuw7Frbab1du3bZbbfd5qbw8kq2H374Yfvss89cRlyZY3UbV7CtTuQqB9cUYQqANX5bY9C/+uqroDHcDzzwgA0dOtSVoitY//HHH9323vEfe+wx1yVd3da1/zFjxrjHVcLulbWHzuGt7fPly3fezzmmfQIAgJQrQl3XLBmLjo62nDlzumljvA85AJASPfPMM26u6bFjx1pqU2/AVNsR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fXt58803L3vu9Jz63OkYdfz6HAAAUo/rynzXrVvXfpKiePHi8sYbb8Tbpt8q64++OTnfFiek87+YAwYAgP+JioqSn376SSpUqGDXn3/+eQuWZ82aJe+++67kypXLglUNRjWo1azy559/bsddi94+JibGgnn9sl9t3brVfr///vu2Tc/tfH7QzPeHH34oAwcOtAy3ZtFfeeUV+/3YY4/Z6io6jW3nzp1y/Phxy4Q793OtcWpmXLPc+fPnt0q+okWL2raZM2fafv0spNV9Q4YMseuacdfEguPZZ5+VcuXKyWuvvebNzmvQrrcvWLCgXdcxTZw40e4fAJA6uDbnW9/I4r4RqeXLl1vgnXA7AADwfxpkOoG30hJ0LfdWq1atsjJ0pwIuU6ZM0qRJEyvTTkrw/csvv0irVq28gbdyyrIXL14sadOmjfel/qlTp7xZdw2+33rrLSuF1+C7e/fuFrjrOTdu3Girreh4kjpOLXnXwFvpcUWKFPEG70qDcc2gaym8U66ulX2agddSdi191x/NnJcvX972a6m6E3g796FZcgBA6uFqwzUAAJByrf4tSobN3yFbD0dL+t075fzF2Hj7NcC8UiWb0qzx1fYnpOe70natitMv8B2afdagWGkJt+5ftGiRrFixwvatXr3astcaFDtzv5M6Tg30E0psmzPecePGWdZd54EvW7ZMcuTIYdt1+pyWtp87d+6qtwcApA7Jss63Q0u0dB4UAADw/8C77WfLZUlEpByJPi/bDp+SQwf2y5ffL/Aeo03LqlWrZpe1yZhe12ywU2atDctq1KiRpPvTeddahh13xROdK+3s0+1a4u70kdFgV+duO9npe++91+ZZ33nnnZItWzYLuP/zn/9YQB43+L7ZcSZm0qRJNgd85MiRdv+a5XYeh8711i8BAABI1sx327ZtecYBAEgBNOMtHo/E/pWcvaRBbqZs8nzXJ2T5I82tvFo7eM+fP9/2axMyndOsJd7aOE3ngWsQqqugJIU2RdNmrRq8ahm4dhDPmzevjBo1Sv7+979bEK0l7/Xr17eMsmaYdc61Hq80wH7mmWe8c6g1mNayby0Lr1Klivd+bnacidEx6Wothw4dssy7ZrudMndt0vbll19654cDAFIvys4BAMBltNTcCbwdabLdJsU7D5Iqpc9Z0Kvdyp15zLfddpt18daltDQw/+CDD6Rp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",
      "text/plain": [
       "<Figure size 1200x900 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# Collect words from Google Analogy dataset\n",
    "SUB_CATEGORY = \": family\"\n",
    "\n",
    "# TODO3: Plot t-SNE for the words in the SUB_CATEGORY `: family`\n",
    "family_words = sorted({w for q in data[data[\"SubCategory\"] == SUB_CATEGORY][\"Question\"]\n",
    "                       for w in q.lower().split()})\n",
    "family_words = [w for w in family_words if w in model.key_to_index]\n",
    "vectors = np.array([model[w] for w in family_words])\n",
    "# t-SNE：把 100 維壓成 2 維。字只有幾十個，所以 perplexity 要調小（必須小於樣本數）。\n",
    "points = TSNE(n_components=2, perplexity=15, random_state=42, init=\"pca\").fit_transform(vectors)\n",
    "plt.figure(figsize=(12, 9))\n",
    "plt.scatter(points[:, 0], points[:, 1], s=15)\n",
    "for (x, y), w in zip(points, family_words):\n",
    "    plt.annotate(w, (x, y), fontsize=9)\n",
    "\n",
    "\n",
    "plt.title(\"Word Relationships from Google Analogy Task\")\n",
    "plt.show()\n",
    "plt.savefig(\"word_relationships.png\", bbox_inches=\"tight\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6319fe46",
   "metadata": {
    "id": "DKRPJxgKXH4j"
   },
   "source": [
    "### Part III: Train your own word embeddings"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c5e66556",
   "metadata": {
    "id": "VC_0fE1UzL8T"
   },
   "source": [
    "### Get the latest English Wikipedia articles and do sampling.\n",
    "- Usually, we start from Wikipedia dump (https://dumps.wikimedia.org/enwiki/latest/enwiki-latest-pages-articles.xml.bz2). However, the downloading step will take very long. Also, the cleaning step for the Wikipedia corpus ([`gensim.corpora.wikicorpus.WikiCorpus`](https://radimrehurek.com/gensim/corpora/wikicorpus.html#gensim.corpora.wikicorpus.WikiCorpus)) will take much time. Therefore, we provide cleaned files for you."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "c6100ec9",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:13.189745Z",
     "iopub.status.busy": "2026-10-04T07:39:13.189745Z",
     "iopub.status.idle": "2026-10-04T07:39:13.263643Z",
     "shell.execute_reply": "2026-10-04T07:39:13.263643Z"
    },
    "id": "FkubArwCCYxR"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "data\\wiki_texts_part_0.txt.gz 1.51 GB\n",
      "data\\wiki_texts_part_1.txt.gz 0.84 GB\n",
      "data\\wiki_texts_part_2.txt.gz 0.67 GB\n",
      "data\\wiki_texts_part_3.txt.gz 0.60 GB\n",
      "data\\wiki_texts_part_4.txt.gz 0.57 GB\n",
      "data\\wiki_texts_part_5.txt.gz 0.58 GB\n",
      "data\\wiki_texts_part_6.txt.gz 0.56 GB\n",
      "data\\wiki_texts_part_7.txt.gz 0.53 GB\n",
      "data\\wiki_texts_part_8.txt.gz 0.55 GB\n",
      "data\\wiki_texts_part_9.txt.gz 0.55 GB\n",
      "data\\wiki_texts_part_10.txt.gz 0.00 GB\n"
     ]
    }
   ],
   "source": [
    "# [Data loading changed] 規定允許修改資料載入部分。\n",
    "# 原本是 11 行 `!gdown --id ...`。改成 Python 迴圈：檔案已經存在就跳過，斷線後可以重跑。\n",
    "# Each file contain 562365 lines (articles), except the last file.\n",
    "import os, gdown\n",
    "DATA_DIR = \"data\"\n",
    "os.makedirs(DATA_DIR, exist_ok=True)\n",
    "WIKI_IDS = [\n",
    "    \"1jiu9E1NalT2Y8EIuWNa1xf2Tw1f1XuGd\", \"1ABblLRd9HXdXvaNv8H9fFq984bhnowoG\",\n",
    "    \"1z2VFNhpPvCejTP5zyejzKj5YjI_Bn42M\", \"1VKjded9BxADRhIoCzXy_W8uzVOTWIf0g\",\n",
    "    \"16mBeG26m9LzHXdPe8UrijUIc6sHxhknz\", \"17JFvxOH-kc-VmvGkhG7p3iSZSpsWdgJI\",\n",
    "    \"19IvB2vOJRGlrYulnTXlZECR8zT5v550P\", \"1sjwO8A2SDOKruv6-8NEq7pEIuQ50ygVV\",\n",
    "    \"1s7xKWJmyk98Jbq6Fi1scrHy7fr_ellUX\", \"17eQXcrvY1cfpKelLbP2BhQKrljnFNykr\",\n",
    "    \"1J5TAN6bNBiSgTIYiPwzmABvGhAF58h62\",\n",
    "]\n",
    "for i, fid in enumerate(WIKI_IDS):\n",
    "    path = os.path.join(DATA_DIR, f\"wiki_texts_part_{i}.txt.gz\")\n",
    "    if not os.path.exists(path):\n",
    "        gdown.download(id=fid, output=path, quiet=True)\n",
    "    print(path, f\"{os.path.getsize(path)/1e9:.2f} GB\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "7f45cce8",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:13.326732Z",
     "iopub.status.busy": "2026-10-04T07:39:13.326732Z",
     "iopub.status.idle": "2026-10-04T07:39:13.329568Z",
     "shell.execute_reply": "2026-10-04T07:39:13.329568Z"
    },
    "id": "8S3ibNT3C8Xk"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "all parts downloaded\n"
     ]
    }
   ],
   "source": [
    "# [Data loading changed] 規定允許修改資料載入部分。\n",
    "# 上一格已經把 11 個檔都下載完（模板原本把下載拆成兩格）。\n",
    "print(\"all parts downloaded\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "5ebb816e",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:13.388893Z",
     "iopub.status.busy": "2026-10-04T07:39:13.388893Z",
     "iopub.status.idle": "2026-10-04T07:39:13.393896Z",
     "shell.execute_reply": "2026-10-04T07:39:13.393896Z"
    },
    "id": "DUg_c79BC7OL"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "11 parts: ['wiki_texts_part_0.txt.gz', 'wiki_texts_part_1.txt.gz', 'wiki_texts_part_2.txt.gz', 'wiki_texts_part_3.txt.gz', 'wiki_texts_part_4.txt.gz', 'wiki_texts_part_5.txt.gz', 'wiki_texts_part_6.txt.gz', 'wiki_texts_part_7.txt.gz', 'wiki_texts_part_8.txt.gz', 'wiki_texts_part_9.txt.gz', 'wiki_texts_part_10.txt.gz']\n"
     ]
    }
   ],
   "source": [
    "# [Data loading changed] 規定允許修改資料載入部分。\n",
    "# 原本是 `!gunzip -k`（解壓縮並保留壓縮檔）＋ 下一格 `!cat`（合併成一個大檔）。\n",
    "# 這樣同一份資料會在硬碟上存三份（壓縮檔＋解壓檔＋合併檔），本機硬碟吃不消。\n",
    "# 改成：不解壓、不合併，下一步直接用 gzip 一行一行讀壓縮檔。結果完全一樣。\n",
    "import glob, gzip, re\n",
    "wiki_parts = sorted(glob.glob(os.path.join(DATA_DIR, \"wiki_texts_part_*.txt.gz\")),\n",
    "                    key=lambda p: int(re.search(r\"part_(\\d+)\", p).group(1)))\n",
    "print(len(wiki_parts), \"parts:\", [os.path.basename(p) for p in wiki_parts])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "d57639d8",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:13.447833Z",
     "iopub.status.busy": "2026-10-04T07:39:13.447833Z",
     "iopub.status.idle": "2026-10-04T07:39:13.451827Z",
     "shell.execute_reply": "2026-10-04T07:39:13.451827Z"
    },
    "id": "7duk2RbYDB02"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "total compressed size: 6.93 GB\n"
     ]
    }
   ],
   "source": [
    "# [Data loading changed] 規定允許修改資料載入部分。\n",
    "# 不需要合併：wiki_parts 這個清單按 0 到 10 的順序排好，依序讀就等於讀合併檔。\n",
    "print(\"total compressed size:\", round(sum(os.path.getsize(p) for p in wiki_parts) / 1e9, 2), \"GB\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "cbc79ab7",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:13.495890Z",
     "iopub.status.busy": "2026-10-04T07:39:13.495890Z",
     "iopub.status.idle": "2026-10-04T07:39:13.503264Z",
     "shell.execute_reply": "2026-10-04T07:39:13.503264Z"
    },
    "id": "givLH7NrDs6X"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0 anarchism is political philosophy and movement that is against all forms of authority and seeks to abolish the institutions it claims maintain unnecessary coercion and hierarchy typically including th ...\n",
      "1 albedo change in greenland the map shows the difference between the amount of sunlight greenland reflected in the summer of versus the average percent it reflected between and some areas reflect close ...\n",
      "2 or is the first letter and the first vowel letter of the latin alphabet used in the modern english alphabet and others worldwide its name in english is pronounced plural aes it is similar in shape to ...\n",
      "3 alabama is state in the southeastern region of the united states it borders tennessee to the north georgia to the east florida and the gulf of mexico to the south and mississippi to the west alabama i ...\n",
      "4 in greek mythology achilles or achilleus was hero of the trojan war who was known as being the greatest of all the greek warriors the central character in homer iliad he was the son of the nereid thet ...\n",
      "5 abraham lincoln february april was an american lawyer politician and statesman who served as the th president of the united states from until his assassination in he led the united states through the ...\n",
      "6 aristotle aristotélēs bc was an ancient greek philosopher and polymath his writings cover broad range of subjects spanning the natural sciences philosophy linguistics economics politics psychology and ...\n",
      "7 an american in paris is jazz influenced symphonic poem or tone poem for orchestra by american composer george gershwin first performed in it was inspired by the time that gershwin had spent in paris a ...\n",
      "8 the academy award for best production design recognizes achievement for art direction in film the category original name was best art direction but was changed to its current name in for the th academ ...\n",
      "9 the academy awards of merit commonly known as the oscars or academy awards are awards for artistic and technical merit given for excellence within the american and international film industry they are ...\n"
     ]
    }
   ],
   "source": [
    "# [Data loading changed] 規定允許修改資料載入部分。\n",
    "# 原本是 `!head -n 10`。每一行是一整篇文章，很長，所以每行只印前 200 個字元。\n",
    "with gzip.open(wiki_parts[0], \"rt\", encoding=\"utf-8\") as f:\n",
    "    for i, line in enumerate(f):\n",
    "        print(i, line[:200].strip(), \"...\")\n",
    "        if i == 9:\n",
    "            break\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9aa171fa",
   "metadata": {
    "id": "Hfwx92QCEhrq"
   },
   "source": [
    "Please note that we used the default parameters of [`gensim.corpora.wikicorpus.WikiCorpus`](https://radimrehurek.com/gensim/corpora/wikicorpus.html#gensim.corpora.wikicorpus.WikiCorpus) for cleaning the Wiki raw file. Thus, words with one character were discarded."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "5e594fbf",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:39:13.538270Z",
     "iopub.status.busy": "2026-10-04T07:39:13.538270Z",
     "iopub.status.idle": "2026-10-04T07:41:07.217591Z",
     "shell.execute_reply": "2026-10-04T07:41:07.217591Z"
    },
    "id": "vUAzButoP03w"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 0/11 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1/11 [00:22<03:48, 22.80s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 2/11 [00:36<02:39, 17.68s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 3/11 [00:48<01:57, 14.74s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 4/11 [00:57<01:28, 12.69s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 5/11 [01:06<01:08, 11.35s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 6/11 [01:15<00:53, 10.61s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▎   | 7/11 [01:26<00:42, 10.54s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 8/11 [01:35<00:30, 10.16s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 9/11 [01:44<00:19,  9.81s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 10/11 [01:53<00:09,  9.57s/it]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|██████████| 11/11 [01:53<00:00, 10.33s/it]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "articles: total 5,623,655, sampled 1,124,733 (20.00%)\n",
      "wiki_sampled_5.txt 1.04 GB\n",
      "wiki_sampled_10.txt 2.08 GB\n",
      "wiki_sampled_20.txt 4.16 GB\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# Now you need to do sampling because the corpus is too big.\n",
    "# You can further perform analysis with a greater sampling ratio.\n",
    "\n",
    "import random\n",
    "\n",
    "wiki_txt_path = \"wiki_texts_combined.txt\"\n",
    "# wiki_texts_combined.txt is a text file separated by linebreaks (\\n).\n",
    "# Each row in wiki_texts_combined.txt indicates a Wikipedia article.\n",
    "# [Data loading changed] 實際讀的是上面的 wiki_parts（11 個壓縮檔依序讀），內容等同 wiki_texts_combined.txt。\n",
    "\n",
    "SAMPLE_RATIO = 0.20\n",
    "output_path = \"wiki_sampled_20.txt\"\n",
    "random.seed(42)   # 固定亂數種子，重跑會抽到同一批文章\n",
    "\n",
    "# 順便在同一趟裡做出報告第 2 題要的 5%、10%：同一個亂數 r < 0.05 的文章，一定也 < 0.10、< 0.20，\n",
    "# 所以 5% ⊂ 10% ⊂ 20%，只是資料量不同，比較才公平。讀一趟壓縮檔要十幾分鐘，這樣省掉兩趟。\n",
    "extra_outputs = {0.05: open(\"wiki_sampled_5.txt\", \"w\", encoding=\"utf-8\", newline=\"\\n\"),\n",
    "                 0.10: open(\"wiki_sampled_10.txt\", \"w\", encoding=\"utf-8\", newline=\"\\n\")}\n",
    "n_total = n_kept = 0\n",
    "with open(output_path, \"w\", encoding=\"utf-8\", newline=\"\\n\") as output_file:\n",
    "    # TODO4: Sample `20%` Wikipedia articles\n",
    "    # Write your code here\n",
    "    for part in tqdm(wiki_parts):\n",
    "        with gzip.open(part, \"rt\", encoding=\"utf-8\") as f:\n",
    "            for line in f:                      # 一次只讀一行（一篇文章），記憶體不會爆\n",
    "                n_total += 1\n",
    "                r = random.random()\n",
    "                if r < SAMPLE_RATIO:\n",
    "                    output_file.write(line)\n",
    "                    n_kept += 1\n",
    "                for ratio, fh in extra_outputs.items():\n",
    "                    if r < ratio:\n",
    "                        fh.write(line)\n",
    "for fh in extra_outputs.values():\n",
    "    fh.close()\n",
    "print(f\"articles: total {n_total:,}, sampled {n_kept:,} ({n_kept / n_total:.2%})\")\n",
    "for p in [\"wiki_sampled_5.txt\", \"wiki_sampled_10.txt\", output_path]:\n",
    "    print(p, round(os.path.getsize(p) / 1e9, 2), \"GB\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "ee239630",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T07:41:07.251723Z",
     "iopub.status.busy": "2026-10-04T07:41:07.251723Z",
     "iopub.status.idle": "2026-10-04T08:20:39.824062Z",
     "shell.execute_reply": "2026-10-04T08:20:39.823048Z"
    },
    "id": "G7q1Xzunxkdc"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "20% wiki tokens after preprocessing: 666,053,126\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "trained on wiki_sampled_20_clean.txt: 36.0 min, vocab 299,405\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# TODO5: Train your own word embeddings with the sampled articles\n",
    "# https://radimrehurek.com/gensim/models/word2vec.html#gensim.models.word2vec.Word2Vec\n",
    "# Hint: You should perform some pre-processing before training.\n",
    "import time\n",
    "from gensim.models import Word2Vec\n",
    "\n",
    "# 前處理：助教給的資料已經是小寫、去標點、斷好字（gensim WikiCorpus 預設）。\n",
    "# 這裡只做「只留純英文字母的字」。刻意「不」做的兩件事（理由寫在報告第 1 題）：\n",
    "#   - 不移除停用詞：he / she / his / her 是 family 類的考題答案\n",
    "#   - 不做詞形還原：biggest -> big 會讓比較級、最高級、複數、過去式的答案消失\n",
    "TOKEN_RE = re.compile(r\"^[a-z]+$\")\n",
    "\n",
    "def preprocess_file(src, dst):\n",
    "    n_tokens = 0\n",
    "    with open(src, encoding=\"utf-8\") as fin, open(dst, \"w\", encoding=\"utf-8\", newline=\"\\n\") as fout:\n",
    "        for line in fin:\n",
    "            tokens = [w for w in line.split() if TOKEN_RE.match(w)]\n",
    "            n_tokens += len(tokens)\n",
    "            fout.write(\" \".join(tokens) + \"\\n\")\n",
    "    return n_tokens\n",
    "\n",
    "# 超參數：向量長度跟 GloVe 一樣是 100，比較才公平；skip-gram 是老師投影片的重點。\n",
    "# max_final_vocab：只留最常見的 30 萬個字（老師建議的「只保留高頻字」）。\n",
    "W2V_PARAMS = dict(vector_size=100, window=5, sg=1, negative=5, sample=1e-3,\n",
    "                  min_count=5, max_final_vocab=300_000, epochs=5, workers=15, seed=42)\n",
    "\n",
    "def train_w2v(clean_path):\n",
    "    t = time.time()\n",
    "    m = Word2Vec(corpus_file=clean_path, **W2V_PARAMS)\n",
    "    print(f\"trained on {clean_path}: {(time.time() - t) / 60:.1f} min, vocab {len(m.wv.key_to_index):,}\")\n",
    "    return m\n",
    "\n",
    "clean_path = \"wiki_sampled_20_clean.txt\"\n",
    "n_tokens = preprocess_file(output_path, clean_path)\n",
    "print(f\"20% wiki tokens after preprocessing: {n_tokens:,}\")\n",
    "my_model = train_w2v(clean_path)\n",
    "my_model.save(\"w2v_wiki20.model\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "9d75dfdf",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:20:39.878053Z",
     "iopub.status.busy": "2026-10-04T08:20:39.878053Z",
     "iopub.status.idle": "2026-10-04T08:20:39.903527Z",
     "shell.execute_reply": "2026-10-04T08:20:39.903527Z"
    },
    "id": "qWiQF70izxP7"
   },
   "outputs": [],
   "source": [
    "data = pd.read_csv(\"questions-words.csv\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "52ef1ae9",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:20:39.941151Z",
     "iopub.status.busy": "2026-10-04T08:20:39.941151Z",
     "iopub.status.idle": "2026-10-04T08:22:23.671423Z",
     "shell.execute_reply": "2026-10-04T08:22:23.671423Z"
    },
    "id": "q6xpqgdIy5x1"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 0/19544 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 10/19544 [00:00<03:22, 96.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 27/19544 [00:00<02:20, 138.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 46/19544 [00:00<02:02, 159.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 65/19544 [00:00<01:55, 169.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  0%|          | 83/19544 [00:00<01:52, 172.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 101/19544 [00:00<01:57, 165.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 118/19544 [00:00<01:57, 165.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 136/19544 [00:00<01:55, 168.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 154/19544 [00:00<01:53, 170.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 172/19544 [00:01<01:54, 169.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 191/19544 [00:01<01:51, 172.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 209/19544 [00:01<01:50, 174.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|          | 227/19544 [00:01<01:49, 176.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|▏         | 246/19544 [00:01<01:48, 177.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|▏         | 265/19544 [00:01<01:48, 178.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  1%|▏         | 284/19544 [00:01<01:46, 180.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 303/19544 [00:01<01:46, 180.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 322/19544 [00:01<01:46, 180.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 341/19544 [00:01<01:45, 181.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 360/19544 [00:02<01:45, 181.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 379/19544 [00:02<01:45, 182.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 398/19544 [00:02<01:46, 180.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 417/19544 [00:02<01:46, 180.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 436/19544 [00:02<01:45, 180.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 455/19544 [00:02<01:46, 180.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  2%|▏         | 474/19544 [00:02<01:46, 179.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 492/19544 [00:02<01:47, 177.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 510/19544 [00:02<01:47, 177.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 528/19544 [00:03<01:48, 175.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 547/19544 [00:03<01:46, 178.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 565/19544 [00:03<01:46, 177.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 583/19544 [00:03<01:46, 177.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 601/19544 [00:03<01:47, 176.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 619/19544 [00:03<01:48, 174.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 638/19544 [00:03<01:47, 176.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 656/19544 [00:03<01:46, 176.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  3%|▎         | 675/19544 [00:03<01:45, 178.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▎         | 694/19544 [00:03<01:45, 179.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▎         | 712/19544 [00:04<01:45, 178.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▎         | 730/19544 [00:04<01:47, 174.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 748/19544 [00:04<01:49, 171.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 766/19544 [00:04<01:50, 169.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 783/19544 [00:04<01:50, 169.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 801/19544 [00:04<01:49, 170.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 819/19544 [00:04<01:49, 171.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 837/19544 [00:04<01:48, 172.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 855/19544 [00:04<01:47, 173.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  4%|▍         | 873/19544 [00:05<01:49, 171.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 891/19544 [00:05<01:52, 166.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 909/19544 [00:05<01:51, 167.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 926/19544 [00:05<01:57, 158.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 943/19544 [00:05<01:55, 160.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▍         | 960/19544 [00:05<01:55, 160.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 978/19544 [00:05<01:52, 164.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 996/19544 [00:05<01:50, 167.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1014/19544 [00:05<01:49, 169.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1032/19544 [00:05<01:48, 170.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1050/19544 [00:06<01:48, 170.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  5%|▌         | 1068/19544 [00:06<01:49, 168.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1085/19544 [00:06<01:50, 166.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1102/19544 [00:06<01:50, 166.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1119/19544 [00:06<01:50, 166.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1136/19544 [00:06<01:50, 167.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1153/19544 [00:06<01:51, 164.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1170/19544 [00:06<01:51, 165.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1189/19544 [00:06<01:48, 169.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▌         | 1207/19544 [00:07<01:46, 172.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▋         | 1225/19544 [00:07<01:45, 174.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▋         | 1243/19544 [00:07<01:44, 174.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  6%|▋         | 1262/19544 [00:07<01:42, 177.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1280/19544 [00:07<01:42, 178.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1299/19544 [00:07<01:41, 179.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1318/19544 [00:07<01:41, 179.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1337/19544 [00:07<01:40, 181.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1356/19544 [00:07<01:39, 183.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1375/19544 [00:07<01:39, 183.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1394/19544 [00:08<01:38, 183.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1413/19544 [00:08<01:39, 182.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1432/19544 [00:08<01:39, 182.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  7%|▋         | 1451/19544 [00:08<01:40, 180.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1470/19544 [00:08<01:44, 173.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1488/19544 [00:08<01:46, 168.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1505/19544 [00:08<01:47, 168.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1523/19544 [00:08<01:45, 171.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1541/19544 [00:08<01:46, 168.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1558/19544 [00:09<01:46, 168.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1576/19544 [00:09<01:45, 170.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1594/19544 [00:09<01:44, 172.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1612/19544 [00:09<01:42, 174.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1630/19544 [00:09<01:42, 174.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  8%|▊         | 1649/19544 [00:09<01:41, 176.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▊         | 1667/19544 [00:09<01:43, 172.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▊         | 1685/19544 [00:09<01:51, 160.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▊         | 1703/19544 [00:09<01:48, 165.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1722/19544 [00:09<01:44, 170.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1741/19544 [00:10<01:42, 173.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1759/19544 [00:10<01:43, 171.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1777/19544 [00:10<01:44, 169.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1795/19544 [00:10<01:43, 171.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1813/19544 [00:10<01:45, 168.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1831/19544 [00:10<01:43, 171.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "  9%|▉         | 1850/19544 [00:10<01:41, 174.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1868/19544 [00:10<01:40, 175.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1886/19544 [00:10<01:43, 170.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1904/19544 [00:11<01:43, 170.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1922/19544 [00:11<01:41, 173.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|▉         | 1941/19544 [00:11<01:39, 176.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 1960/19544 [00:11<01:38, 178.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 1978/19544 [00:11<01:38, 178.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 1996/19544 [00:11<01:38, 178.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 2015/19544 [00:11<01:37, 180.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 2034/19544 [00:11<01:40, 173.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 10%|█         | 2052/19544 [00:11<01:41, 172.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2070/19544 [00:11<01:41, 172.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2089/19544 [00:12<01:39, 175.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2108/19544 [00:12<01:38, 177.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2126/19544 [00:12<01:39, 175.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2144/19544 [00:12<01:47, 162.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2161/19544 [00:12<01:50, 157.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2177/19544 [00:12<01:54, 151.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█         | 2193/19544 [00:12<01:56, 149.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█▏        | 2209/19544 [00:12<01:55, 150.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█▏        | 2227/19544 [00:12<01:50, 156.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 11%|█▏        | 2245/19544 [00:13<01:46, 161.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2262/19544 [00:13<01:45, 163.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2279/19544 [00:13<01:45, 163.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2296/19544 [00:13<01:46, 161.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2313/19544 [00:13<01:47, 160.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2330/19544 [00:13<01:47, 160.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2347/19544 [00:13<01:46, 161.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2364/19544 [00:13<01:48, 158.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2382/19544 [00:13<01:45, 163.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2401/19544 [00:14<01:41, 169.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2420/19544 [00:14<01:38, 173.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 12%|█▏        | 2439/19544 [00:14<01:37, 175.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2458/19544 [00:14<01:36, 177.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2476/19544 [00:14<01:37, 175.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2494/19544 [00:14<01:37, 174.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2512/19544 [00:14<01:40, 170.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2530/19544 [00:14<01:39, 171.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2549/19544 [00:14<01:37, 173.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2567/19544 [00:14<01:39, 170.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2585/19544 [00:15<01:39, 170.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2603/19544 [00:15<01:41, 166.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2620/19544 [00:15<01:47, 157.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 13%|█▎        | 2636/19544 [00:15<01:53, 148.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▎        | 2652/19544 [00:15<01:51, 151.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▎        | 2668/19544 [00:15<01:52, 150.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▎        | 2685/19544 [00:15<01:49, 154.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2704/19544 [00:15<01:43, 162.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2723/19544 [00:15<01:39, 168.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2742/19544 [00:16<01:37, 172.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2761/19544 [00:16<01:35, 175.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2780/19544 [00:16<01:33, 178.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2799/19544 [00:16<01:32, 180.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 14%|█▍        | 2818/19544 [00:16<01:32, 180.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2837/19544 [00:16<01:33, 179.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2856/19544 [00:16<01:32, 180.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2875/19544 [00:16<01:34, 177.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2894/19544 [00:16<01:32, 179.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2912/19544 [00:16<01:32, 179.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▍        | 2931/19544 [00:17<01:32, 179.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2950/19544 [00:17<01:32, 179.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2968/19544 [00:17<01:32, 179.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 2986/19544 [00:17<01:33, 176.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 3004/19544 [00:17<01:33, 176.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 15%|█▌        | 3022/19544 [00:17<01:33, 176.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3041/19544 [00:17<01:32, 178.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3059/19544 [00:17<01:32, 178.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3078/19544 [00:17<01:31, 180.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3097/19544 [00:18<01:30, 181.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3116/19544 [00:18<01:30, 182.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3135/19544 [00:18<01:29, 184.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3154/19544 [00:18<01:28, 184.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▌        | 3173/19544 [00:18<01:28, 184.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▋        | 3192/19544 [00:18<01:31, 178.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 16%|█▋        | 3211/19544 [00:18<01:31, 179.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3230/19544 [00:18<01:30, 181.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3249/19544 [00:18<01:30, 179.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3267/19544 [00:18<01:31, 176.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3286/19544 [00:19<01:30, 179.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3304/19544 [00:19<01:30, 179.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3323/19544 [00:19<01:30, 179.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3342/19544 [00:19<01:29, 181.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3361/19544 [00:19<01:29, 181.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3380/19544 [00:19<01:30, 179.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3398/19544 [00:19<01:31, 177.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 17%|█▋        | 3417/19544 [00:19<01:29, 179.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3436/19544 [00:19<01:29, 180.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3455/19544 [00:20<01:29, 180.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3474/19544 [00:20<01:29, 179.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3493/19544 [00:20<01:28, 180.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3512/19544 [00:20<01:27, 182.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3531/19544 [00:20<01:27, 183.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3550/19544 [00:20<01:31, 174.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3568/19544 [00:20<01:31, 174.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3586/19544 [00:20<01:35, 167.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 18%|█▊        | 3603/19544 [00:20<01:37, 164.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▊        | 3620/19544 [00:20<01:38, 160.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▊        | 3637/19544 [00:21<01:37, 162.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▊        | 3654/19544 [00:21<01:37, 163.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3671/19544 [00:21<01:37, 163.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3690/19544 [00:21<01:33, 169.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3708/19544 [00:21<01:32, 170.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3726/19544 [00:21<01:31, 172.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3744/19544 [00:21<01:31, 173.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3763/19544 [00:21<01:29, 176.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3782/19544 [00:21<01:28, 178.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 19%|█▉        | 3800/19544 [00:22<01:28, 178.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3818/19544 [00:22<01:28, 178.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3837/19544 [00:22<01:27, 180.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3856/19544 [00:22<01:26, 180.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3875/19544 [00:22<01:29, 174.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|█▉        | 3893/19544 [00:22<01:31, 171.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3912/19544 [00:22<01:29, 174.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3931/19544 [00:22<01:28, 176.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3950/19544 [00:22<01:27, 178.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3969/19544 [00:22<01:26, 179.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 3987/19544 [00:23<01:27, 177.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 20%|██        | 4006/19544 [00:23<01:26, 179.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4024/19544 [00:23<01:26, 179.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4043/19544 [00:23<01:25, 181.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4062/19544 [00:23<01:25, 180.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4081/19544 [00:23<01:26, 179.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4100/19544 [00:23<01:25, 181.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4119/19544 [00:23<01:24, 181.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██        | 4138/19544 [00:23<01:24, 182.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██▏       | 4157/19544 [00:24<01:26, 178.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██▏       | 4175/19544 [00:24<01:27, 175.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 21%|██▏       | 4194/19544 [00:24<01:26, 177.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4213/19544 [00:24<01:25, 178.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4232/19544 [00:24<01:24, 181.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4251/19544 [00:24<01:23, 182.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4270/19544 [00:24<01:25, 178.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4288/19544 [00:24<01:26, 176.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4307/19544 [00:24<01:25, 177.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4326/19544 [00:24<01:25, 178.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4345/19544 [00:25<01:24, 179.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4364/19544 [00:25<01:24, 180.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 22%|██▏       | 4383/19544 [00:25<01:23, 181.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4402/19544 [00:25<01:23, 182.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4421/19544 [00:25<01:23, 182.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4440/19544 [00:25<01:22, 182.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4459/19544 [00:25<01:26, 175.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4477/19544 [00:25<01:26, 173.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4495/19544 [00:25<01:27, 172.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4513/19544 [00:26<01:27, 172.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4532/19544 [00:26<01:25, 175.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4550/19544 [00:26<01:25, 175.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4569/19544 [00:26<01:24, 177.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 23%|██▎       | 4588/19544 [00:26<01:23, 179.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▎       | 4607/19544 [00:26<01:22, 180.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▎       | 4626/19544 [00:26<01:21, 182.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4645/19544 [00:26<01:21, 182.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4664/19544 [00:26<01:21, 182.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4683/19544 [00:26<01:21, 183.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4702/19544 [00:27<01:21, 182.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4721/19544 [00:27<01:20, 183.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4740/19544 [00:27<01:20, 183.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4759/19544 [00:27<01:20, 183.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 24%|██▍       | 4778/19544 [00:27<01:20, 182.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4797/19544 [00:27<01:20, 182.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4816/19544 [00:27<01:20, 182.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4835/19544 [00:27<01:19, 184.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4854/19544 [00:27<01:21, 179.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▍       | 4873/19544 [00:27<01:21, 179.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4892/19544 [00:28<01:21, 180.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4911/19544 [00:28<01:20, 181.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4930/19544 [00:28<01:20, 181.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4949/19544 [00:28<01:19, 182.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 25%|██▌       | 4968/19544 [00:28<01:20, 182.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 4987/19544 [00:28<01:22, 176.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5005/19544 [00:28<01:22, 176.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5024/19544 [00:28<01:21, 178.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5042/19544 [00:28<01:21, 177.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5060/19544 [00:29<01:21, 177.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5079/19544 [00:29<01:21, 178.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5097/19544 [00:29<01:22, 174.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▌       | 5116/19544 [00:29<01:21, 177.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5135/19544 [00:29<01:20, 180.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5154/19544 [00:29<01:19, 180.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 26%|██▋       | 5173/19544 [00:29<01:19, 181.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5192/19544 [00:29<01:18, 182.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5211/19544 [00:29<01:18, 182.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5230/19544 [00:29<01:19, 179.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5249/19544 [00:30<01:19, 180.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5268/19544 [00:30<01:18, 181.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5287/19544 [00:30<01:18, 181.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5306/19544 [00:30<01:18, 182.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5325/19544 [00:30<01:18, 182.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5344/19544 [00:30<01:17, 182.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 27%|██▋       | 5363/19544 [00:30<01:17, 183.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5382/19544 [00:30<01:18, 179.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5400/19544 [00:30<01:19, 177.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5418/19544 [00:31<01:23, 170.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5436/19544 [00:31<01:22, 171.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5455/19544 [00:31<01:20, 174.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5474/19544 [00:31<01:19, 177.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5493/19544 [00:31<01:18, 178.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5512/19544 [00:31<01:17, 180.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5531/19544 [00:31<01:16, 182.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5550/19544 [00:31<01:15, 184.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 28%|██▊       | 5569/19544 [00:31<01:15, 183.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▊       | 5588/19544 [00:31<01:16, 182.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▊       | 5607/19544 [00:32<01:16, 182.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5626/19544 [00:32<01:15, 183.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5645/19544 [00:32<01:16, 180.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5664/19544 [00:32<01:18, 177.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5682/19544 [00:32<01:17, 178.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5701/19544 [00:32<01:17, 179.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5720/19544 [00:32<01:15, 182.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5739/19544 [00:32<01:15, 182.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 29%|██▉       | 5758/19544 [00:32<01:15, 183.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5777/19544 [00:33<01:15, 181.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5796/19544 [00:33<01:15, 181.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5815/19544 [00:33<01:15, 182.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5834/19544 [00:33<01:14, 183.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|██▉       | 5853/19544 [00:33<01:13, 185.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5872/19544 [00:33<01:13, 185.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5891/19544 [00:33<01:14, 183.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5910/19544 [00:33<01:14, 184.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5929/19544 [00:33<01:13, 184.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 30%|███       | 5948/19544 [00:33<01:13, 184.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 5967/19544 [00:34<01:14, 182.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 5986/19544 [00:34<01:13, 183.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6005/19544 [00:34<01:13, 183.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6024/19544 [00:34<01:14, 180.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6043/19544 [00:34<01:14, 181.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6062/19544 [00:34<01:13, 183.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6081/19544 [00:34<01:14, 180.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███       | 6100/19544 [00:34<01:14, 180.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███▏      | 6119/19544 [00:34<01:14, 180.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 31%|███▏      | 6138/19544 [00:34<01:13, 181.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6157/19544 [00:35<01:14, 180.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6177/19544 [00:35<01:12, 183.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6196/19544 [00:35<01:12, 184.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6215/19544 [00:35<01:12, 184.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6234/19544 [00:35<01:12, 184.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6253/19544 [00:35<01:11, 184.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6272/19544 [00:35<01:11, 184.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6291/19544 [00:35<01:12, 183.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6310/19544 [00:35<01:12, 182.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6329/19544 [00:36<01:16, 173.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 32%|███▏      | 6347/19544 [00:36<01:15, 174.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6365/19544 [00:36<01:15, 175.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6384/19544 [00:36<01:14, 177.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6403/19544 [00:36<01:13, 179.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6421/19544 [00:36<01:13, 179.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6440/19544 [00:36<01:12, 181.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6459/19544 [00:36<01:11, 182.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6478/19544 [00:36<01:11, 182.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6497/19544 [00:36<01:11, 181.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6516/19544 [00:37<01:11, 181.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 33%|███▎      | 6535/19544 [00:37<01:10, 183.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▎      | 6554/19544 [00:37<01:10, 183.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▎      | 6573/19544 [00:37<01:10, 184.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▎      | 6592/19544 [00:37<01:10, 184.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6611/19544 [00:37<01:09, 184.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6630/19544 [00:37<01:10, 183.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6649/19544 [00:37<01:10, 183.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6668/19544 [00:37<01:10, 183.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6687/19544 [00:38<01:10, 181.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6706/19544 [00:38<01:10, 182.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 34%|███▍      | 6725/19544 [00:38<01:10, 182.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6744/19544 [00:38<01:10, 182.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6763/19544 [00:38<01:09, 182.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6782/19544 [00:38<01:09, 182.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6801/19544 [00:38<01:09, 182.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6820/19544 [00:38<01:12, 175.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▍      | 6839/19544 [00:38<01:11, 178.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6857/19544 [00:38<01:11, 178.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6876/19544 [00:39<01:10, 178.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6895/19544 [00:39<01:10, 179.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6914/19544 [00:39<01:09, 181.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 35%|███▌      | 6933/19544 [00:39<01:08, 183.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6952/19544 [00:39<01:09, 180.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6971/19544 [00:39<01:10, 178.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 6990/19544 [00:39<01:09, 180.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7009/19544 [00:39<01:09, 181.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7028/19544 [00:39<01:08, 181.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7047/19544 [00:40<01:09, 180.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▌      | 7066/19544 [00:40<01:08, 181.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 7085/19544 [00:40<01:08, 181.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 7104/19544 [00:40<01:08, 182.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 36%|███▋      | 7123/19544 [00:40<01:07, 183.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7142/19544 [00:40<01:07, 184.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7161/19544 [00:40<01:07, 183.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7180/19544 [00:40<01:07, 183.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7199/19544 [00:40<01:07, 183.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7218/19544 [00:40<01:07, 183.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7237/19544 [00:41<01:07, 182.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7256/19544 [00:41<01:08, 179.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7275/19544 [00:41<01:08, 177.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7293/19544 [00:41<01:10, 174.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 37%|███▋      | 7312/19544 [00:41<01:08, 178.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7331/19544 [00:41<01:07, 180.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7350/19544 [00:41<01:07, 181.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7369/19544 [00:41<01:06, 182.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7388/19544 [00:41<01:06, 184.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7407/19544 [00:41<01:06, 183.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7426/19544 [00:42<01:05, 183.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7445/19544 [00:42<01:06, 183.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7464/19544 [00:42<01:05, 184.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7483/19544 [00:42<01:05, 184.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7502/19544 [00:42<01:05, 184.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 38%|███▊      | 7521/19544 [00:42<01:05, 184.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▊      | 7540/19544 [00:42<01:04, 185.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▊      | 7559/19544 [00:42<01:04, 185.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7578/19544 [00:42<01:04, 185.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7597/19544 [00:43<01:04, 185.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7617/19544 [00:43<01:03, 188.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7638/19544 [00:43<01:01, 193.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7659/19544 [00:43<01:00, 197.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7681/19544 [00:43<00:58, 202.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 39%|███▉      | 7702/19544 [00:43<00:58, 202.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7723/19544 [00:43<00:58, 203.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7744/19544 [00:43<00:57, 203.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7765/19544 [00:43<00:57, 204.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7786/19544 [00:43<00:57, 203.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|███▉      | 7807/19544 [00:44<00:57, 205.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7829/19544 [00:44<00:56, 208.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7850/19544 [00:44<00:56, 207.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7871/19544 [00:44<00:56, 205.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7892/19544 [00:44<00:56, 205.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 40%|████      | 7913/19544 [00:44<00:56, 204.56it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7934/19544 [00:44<00:59, 196.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7955/19544 [00:44<00:58, 197.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7976/19544 [00:44<00:57, 199.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 7997/19544 [00:44<00:57, 201.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8018/19544 [00:45<00:56, 203.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8039/19544 [00:45<00:56, 204.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████      | 8060/19544 [00:45<00:56, 203.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████▏     | 8081/19544 [00:45<00:56, 203.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 41%|████▏     | 8102/19544 [00:45<00:56, 202.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8123/19544 [00:45<00:56, 202.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8144/19544 [00:45<00:55, 204.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8165/19544 [00:45<00:55, 204.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8186/19544 [00:45<00:55, 204.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8207/19544 [00:45<00:55, 205.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8228/19544 [00:46<00:55, 205.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8249/19544 [00:46<00:54, 205.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8270/19544 [00:46<00:57, 195.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 42%|████▏     | 8290/19544 [00:46<00:58, 192.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8310/19544 [00:46<00:58, 191.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8331/19544 [00:46<00:57, 195.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8352/19544 [00:46<00:56, 198.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8373/19544 [00:46<00:55, 201.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8394/19544 [00:46<00:55, 200.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8415/19544 [00:47<00:55, 202.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8436/19544 [00:47<00:54, 203.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8457/19544 [00:47<00:54, 203.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8478/19544 [00:47<00:54, 202.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 43%|████▎     | 8499/19544 [00:47<00:54, 202.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▎     | 8520/19544 [00:47<00:54, 201.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▎     | 8541/19544 [00:47<00:55, 199.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8561/19544 [00:47<00:55, 198.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8582/19544 [00:47<00:54, 201.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8603/19544 [00:47<00:54, 202.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8624/19544 [00:48<00:54, 201.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8645/19544 [00:48<00:53, 201.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8666/19544 [00:48<00:53, 202.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 44%|████▍     | 8687/19544 [00:48<00:54, 200.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8708/19544 [00:48<00:53, 201.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8729/19544 [00:48<00:53, 201.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8750/19544 [00:48<00:53, 202.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8771/19544 [00:48<00:54, 196.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▍     | 8791/19544 [00:48<00:55, 195.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8811/19544 [00:49<00:54, 195.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8831/19544 [00:49<00:54, 195.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8852/19544 [00:49<00:54, 197.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 45%|████▌     | 8873/19544 [00:49<00:53, 199.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8893/19544 [00:49<00:54, 193.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8913/19544 [00:49<00:55, 193.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8933/19544 [00:49<00:54, 193.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8953/19544 [00:49<00:55, 192.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8973/19544 [00:49<00:54, 192.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 8993/19544 [00:49<00:55, 190.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 9013/19544 [00:50<00:58, 179.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▌     | 9033/19544 [00:50<00:56, 184.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▋     | 9052/19544 [00:50<00:58, 178.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 46%|████▋     | 9070/19544 [00:50<00:59, 175.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9088/19544 [00:50<00:59, 175.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9107/19544 [00:50<00:58, 179.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9127/19544 [00:50<00:56, 183.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9146/19544 [00:50<00:56, 184.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9165/19544 [00:50<00:55, 185.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9184/19544 [00:51<00:56, 183.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9203/19544 [00:51<00:56, 182.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9222/19544 [00:51<00:56, 182.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9243/19544 [00:51<00:54, 188.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9262/19544 [00:51<00:55, 184.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 47%|████▋     | 9282/19544 [00:51<00:55, 186.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9301/19544 [00:51<00:55, 184.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9322/19544 [00:51<00:53, 189.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9342/19544 [00:51<00:53, 192.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9363/19544 [00:51<00:52, 194.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9384/19544 [00:52<00:51, 197.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9405/19544 [00:52<00:51, 198.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9426/19544 [00:52<00:50, 199.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9446/19544 [00:52<00:50, 198.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 48%|████▊     | 9466/19544 [00:52<00:52, 192.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9486/19544 [00:52<00:52, 192.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9506/19544 [00:52<00:52, 191.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▊     | 9526/19544 [00:52<00:52, 189.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9545/19544 [00:52<00:52, 189.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9564/19544 [00:53<00:53, 185.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9583/19544 [00:53<00:56, 177.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9601/19544 [00:53<00:56, 176.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9620/19544 [00:53<00:55, 177.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9638/19544 [00:53<00:56, 176.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 49%|████▉     | 9657/19544 [00:53<00:55, 178.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9678/19544 [00:53<00:53, 185.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9698/19544 [00:53<00:51, 189.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9718/19544 [00:53<00:51, 190.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9738/19544 [00:53<00:51, 191.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|████▉     | 9759/19544 [00:54<00:50, 194.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9781/19544 [00:54<00:48, 200.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9803/19544 [00:54<00:47, 203.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9824/19544 [00:54<00:47, 203.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9846/19544 [00:54<00:47, 205.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 50%|█████     | 9868/19544 [00:54<00:46, 206.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9890/19544 [00:54<00:46, 208.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9911/19544 [00:54<00:46, 207.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9932/19544 [00:54<00:48, 199.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9953/19544 [00:55<00:48, 198.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9975/19544 [00:55<00:47, 202.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████     | 9997/19544 [00:55<00:46, 206.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████▏    | 10018/19544 [00:55<00:46, 206.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████▏    | 10039/19544 [00:55<00:46, 206.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 51%|█████▏    | 10060/19544 [00:55<00:46, 204.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10081/19544 [00:55<00:45, 206.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10102/19544 [00:55<00:45, 206.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10123/19544 [00:55<00:45, 206.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10144/19544 [00:55<00:45, 207.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10165/19544 [00:56<00:45, 207.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10186/19544 [00:56<00:44, 208.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10207/19544 [00:56<00:44, 208.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10229/19544 [00:56<00:44, 209.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 52%|█████▏    | 10251/19544 [00:56<00:44, 210.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10273/19544 [00:56<00:44, 207.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10294/19544 [00:56<00:45, 203.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10315/19544 [00:56<00:46, 199.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10336/19544 [00:56<00:45, 202.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10357/19544 [00:56<00:45, 203.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10378/19544 [00:57<00:45, 203.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10399/19544 [00:57<00:44, 204.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10420/19544 [00:57<00:44, 204.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 53%|█████▎    | 10442/19544 [00:57<00:43, 207.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▎    | 10463/19544 [00:57<00:43, 207.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▎    | 10484/19544 [00:57<00:44, 205.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10505/19544 [00:57<00:43, 205.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10526/19544 [00:57<00:43, 205.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10547/19544 [00:57<00:44, 200.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10569/19544 [00:58<00:44, 203.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10590/19544 [00:58<00:44, 203.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10612/19544 [00:58<00:43, 205.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 54%|█████▍    | 10634/19544 [00:58<00:42, 207.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10656/19544 [00:58<00:42, 208.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10677/19544 [00:58<00:42, 208.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10698/19544 [00:58<00:42, 208.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10719/19544 [00:58<00:42, 207.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▍    | 10740/19544 [00:58<00:42, 207.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10761/19544 [00:58<00:45, 195.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10781/19544 [00:59<00:46, 187.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10800/19544 [00:59<00:46, 187.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10819/19544 [00:59<00:46, 187.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 55%|█████▌    | 10839/19544 [00:59<00:46, 189.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10860/19544 [00:59<00:44, 194.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10881/19544 [00:59<00:43, 199.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10901/19544 [00:59<00:43, 199.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10922/19544 [00:59<00:43, 200.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10943/19544 [00:59<00:42, 202.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10964/19544 [00:59<00:42, 204.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▌    | 10985/19544 [01:00<00:43, 199.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▋    | 11006/19544 [01:00<00:42, 199.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 56%|█████▋    | 11028/19544 [01:00<00:41, 204.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11049/19544 [01:00<00:42, 202.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11070/19544 [01:00<00:42, 197.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11090/19544 [01:00<00:43, 195.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11111/19544 [01:00<00:42, 198.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11132/19544 [01:00<00:42, 200.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11153/19544 [01:00<00:41, 201.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11174/19544 [01:01<00:41, 202.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11195/19544 [01:01<00:41, 199.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11215/19544 [01:01<00:43, 191.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 57%|█████▋    | 11235/19544 [01:01<00:43, 191.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11256/19544 [01:01<00:42, 195.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11276/19544 [01:01<00:42, 196.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11296/19544 [01:01<00:41, 196.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11316/19544 [01:01<00:43, 190.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11336/19544 [01:01<00:43, 188.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11356/19544 [01:01<00:43, 190.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11376/19544 [01:02<00:42, 190.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11397/19544 [01:02<00:41, 195.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 58%|█████▊    | 11417/19544 [01:02<00:41, 194.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11437/19544 [01:02<00:42, 190.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11458/19544 [01:02<00:41, 195.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▊    | 11479/19544 [01:02<00:40, 197.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11500/19544 [01:02<00:40, 200.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11521/19544 [01:02<00:39, 201.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11542/19544 [01:02<00:39, 202.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11563/19544 [01:03<00:39, 200.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11584/19544 [01:03<00:39, 202.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11605/19544 [01:03<00:39, 202.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 59%|█████▉    | 11626/19544 [01:03<00:38, 204.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11647/19544 [01:03<00:38, 204.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11668/19544 [01:03<00:38, 204.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11689/19544 [01:03<00:38, 204.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|█████▉    | 11710/19544 [01:03<00:38, 204.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11731/19544 [01:03<00:38, 205.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11752/19544 [01:03<00:38, 204.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11773/19544 [01:04<00:38, 204.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11794/19544 [01:04<00:37, 204.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 60%|██████    | 11815/19544 [01:04<00:37, 204.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11836/19544 [01:04<00:37, 205.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11857/19544 [01:04<00:37, 205.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11878/19544 [01:04<00:37, 206.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11899/19544 [01:04<00:37, 206.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11920/19544 [01:04<00:37, 205.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11941/19544 [01:04<00:36, 206.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████    | 11962/19544 [01:04<00:37, 204.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████▏   | 11983/19544 [01:05<00:37, 204.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 61%|██████▏   | 12004/19544 [01:05<00:37, 202.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12025/19544 [01:05<00:37, 201.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12046/19544 [01:05<00:36, 203.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12067/19544 [01:05<00:36, 204.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12088/19544 [01:05<00:36, 205.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12109/19544 [01:05<00:36, 205.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12130/19544 [01:05<00:36, 203.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12151/19544 [01:05<00:36, 204.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12172/19544 [01:06<00:35, 205.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12193/19544 [01:06<00:36, 203.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 62%|██████▏   | 12214/19544 [01:06<00:35, 204.90it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12235/19544 [01:06<00:35, 206.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12256/19544 [01:06<00:35, 206.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12277/19544 [01:06<00:35, 206.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12298/19544 [01:06<00:35, 205.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12320/19544 [01:06<00:34, 207.02it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12341/19544 [01:06<00:35, 205.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12362/19544 [01:06<00:36, 197.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12382/19544 [01:07<00:37, 191.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 63%|██████▎   | 12402/19544 [01:07<00:37, 191.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▎   | 12423/19544 [01:07<00:36, 195.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▎   | 12444/19544 [01:07<00:35, 198.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12465/19544 [01:07<00:35, 200.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12486/19544 [01:07<00:34, 202.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12507/19544 [01:07<00:34, 202.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12528/19544 [01:07<00:34, 204.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12549/19544 [01:07<00:34, 205.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12570/19544 [01:07<00:33, 206.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 64%|██████▍   | 12591/19544 [01:08<00:33, 205.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12612/19544 [01:08<00:33, 203.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12633/19544 [01:08<00:33, 204.91it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12655/19544 [01:08<00:33, 206.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12676/19544 [01:08<00:33, 207.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▍   | 12697/19544 [01:08<00:33, 206.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12718/19544 [01:08<00:33, 206.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12739/19544 [01:08<00:32, 206.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12760/19544 [01:08<00:32, 206.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 65%|██████▌   | 12781/19544 [01:09<00:33, 204.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12802/19544 [01:09<00:34, 197.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12823/19544 [01:09<00:33, 199.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12844/19544 [01:09<00:33, 201.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12865/19544 [01:09<00:33, 202.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12886/19544 [01:09<00:32, 204.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12907/19544 [01:09<00:32, 204.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▌   | 12928/19544 [01:09<00:32, 204.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▋   | 12949/19544 [01:09<00:32, 205.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▋   | 12970/19544 [01:09<00:32, 202.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 66%|██████▋   | 12991/19544 [01:10<00:32, 201.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13012/19544 [01:10<00:32, 198.79it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13032/19544 [01:10<00:32, 197.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13052/19544 [01:10<00:33, 193.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13072/19544 [01:10<00:33, 193.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13093/19544 [01:10<00:32, 196.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13115/19544 [01:10<00:31, 200.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13136/19544 [01:10<00:31, 202.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13157/19544 [01:10<00:31, 203.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 67%|██████▋   | 13178/19544 [01:10<00:31, 204.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13199/19544 [01:11<00:30, 205.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13220/19544 [01:11<00:30, 206.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13241/19544 [01:11<00:30, 204.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13262/19544 [01:11<00:30, 203.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13283/19544 [01:11<00:30, 203.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13304/19544 [01:11<00:30, 205.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13325/19544 [01:11<00:30, 206.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13346/19544 [01:11<00:30, 206.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 68%|██████▊   | 13367/19544 [01:11<00:30, 204.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▊   | 13388/19544 [01:12<00:30, 200.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▊   | 13409/19544 [01:12<00:31, 195.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▊   | 13429/19544 [01:12<00:31, 192.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13450/19544 [01:12<00:31, 196.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13471/19544 [01:12<00:30, 199.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13491/19544 [01:12<00:30, 198.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13512/19544 [01:12<00:29, 201.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13533/19544 [01:12<00:29, 202.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13554/19544 [01:12<00:29, 203.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 69%|██████▉   | 13575/19544 [01:12<00:29, 201.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13597/19544 [01:13<00:29, 204.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13618/19544 [01:13<00:28, 205.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13639/19544 [01:13<00:28, 204.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|██████▉   | 13660/19544 [01:13<00:28, 204.08it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13681/19544 [01:13<00:28, 204.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13702/19544 [01:13<00:28, 204.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13723/19544 [01:13<00:28, 205.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13744/19544 [01:13<00:28, 205.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 70%|███████   | 13765/19544 [01:13<00:28, 206.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13786/19544 [01:13<00:28, 204.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13807/19544 [01:14<00:28, 204.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13828/19544 [01:14<00:27, 205.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13849/19544 [01:14<00:27, 205.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13871/19544 [01:14<00:27, 206.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13892/19544 [01:14<00:27, 206.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████   | 13913/19544 [01:14<00:27, 207.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████▏  | 13934/19544 [01:14<00:27, 207.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 71%|███████▏  | 13955/19544 [01:14<00:26, 207.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 13977/19544 [01:14<00:26, 208.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 13998/19544 [01:14<00:26, 207.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14020/19544 [01:15<00:26, 208.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14041/19544 [01:15<00:26, 208.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14062/19544 [01:15<00:26, 207.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14084/19544 [01:15<00:26, 208.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14105/19544 [01:15<00:27, 198.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14125/19544 [01:15<00:27, 198.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14146/19544 [01:15<00:26, 201.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 72%|███████▏  | 14167/19544 [01:15<00:26, 203.12it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14189/19544 [01:15<00:26, 205.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14210/19544 [01:16<00:26, 204.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14231/19544 [01:16<00:25, 206.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14252/19544 [01:16<00:25, 206.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14273/19544 [01:16<00:25, 206.50it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14294/19544 [01:16<00:25, 206.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14315/19544 [01:16<00:25, 206.14it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14336/19544 [01:16<00:25, 204.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 73%|███████▎  | 14357/19544 [01:16<00:25, 205.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▎  | 14378/19544 [01:16<00:24, 206.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▎  | 14399/19544 [01:16<00:24, 207.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14420/19544 [01:17<00:24, 206.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14441/19544 [01:17<00:25, 199.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14462/19544 [01:17<00:25, 195.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14482/19544 [01:17<00:26, 192.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14503/19544 [01:17<00:25, 196.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14524/19544 [01:17<00:25, 198.84it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 74%|███████▍  | 14545/19544 [01:17<00:24, 200.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14566/19544 [01:17<00:24, 200.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14587/19544 [01:17<00:24, 202.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14608/19544 [01:18<00:24, 203.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14629/19544 [01:18<00:24, 202.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▍  | 14650/19544 [01:18<00:24, 203.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14671/19544 [01:18<00:23, 203.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14692/19544 [01:18<00:23, 205.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14713/19544 [01:18<00:23, 205.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14734/19544 [01:18<00:23, 206.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 75%|███████▌  | 14755/19544 [01:18<00:23, 206.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14776/19544 [01:18<00:23, 206.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14797/19544 [01:18<00:23, 205.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14818/19544 [01:19<00:23, 205.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14839/19544 [01:19<00:23, 197.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14860/19544 [01:19<00:23, 199.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14881/19544 [01:19<00:23, 201.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▌  | 14902/19544 [01:19<00:22, 203.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▋  | 14923/19544 [01:19<00:22, 203.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 76%|███████▋  | 14945/19544 [01:19<00:22, 205.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 14966/19544 [01:19<00:22, 206.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 14987/19544 [01:19<00:22, 205.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15008/19544 [01:19<00:22, 204.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15029/19544 [01:20<00:21, 205.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15050/19544 [01:20<00:22, 203.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15071/19544 [01:20<00:21, 204.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15092/19544 [01:20<00:21, 204.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15113/19544 [01:20<00:21, 204.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 77%|███████▋  | 15134/19544 [01:20<00:21, 204.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15155/19544 [01:20<00:22, 196.03it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15176/19544 [01:20<00:22, 197.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15197/19544 [01:20<00:21, 199.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15218/19544 [01:21<00:21, 202.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15239/19544 [01:21<00:21, 202.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15260/19544 [01:21<00:21, 202.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15281/19544 [01:21<00:20, 203.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15302/19544 [01:21<00:20, 204.06it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 78%|███████▊  | 15323/19544 [01:21<00:20, 204.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▊  | 15344/19544 [01:21<00:20, 204.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▊  | 15365/19544 [01:21<00:20, 204.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▊  | 15386/19544 [01:21<00:20, 205.30it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15407/19544 [01:21<00:20, 205.45it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15428/19544 [01:22<00:19, 206.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15449/19544 [01:22<00:19, 206.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15470/19544 [01:22<00:19, 206.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15491/19544 [01:22<00:20, 195.92it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15511/19544 [01:22<00:21, 190.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 79%|███████▉  | 15531/19544 [01:22<00:20, 191.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15552/19544 [01:22<00:20, 195.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15573/19544 [01:22<00:20, 197.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15594/19544 [01:22<00:19, 200.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|███████▉  | 15615/19544 [01:22<00:19, 202.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15636/19544 [01:23<00:19, 202.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15657/19544 [01:23<00:19, 203.31it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15678/19544 [01:23<00:18, 204.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15699/19544 [01:23<00:18, 204.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 80%|████████  | 15720/19544 [01:23<00:18, 204.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15741/19544 [01:23<00:18, 203.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15762/19544 [01:23<00:18, 205.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15783/19544 [01:23<00:18, 205.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15804/19544 [01:23<00:18, 206.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15825/19544 [01:23<00:18, 206.17it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15846/19544 [01:24<00:17, 206.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████  | 15867/19544 [01:24<00:17, 205.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████▏ | 15888/19544 [01:24<00:17, 205.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 81%|████████▏ | 15909/19544 [01:24<00:17, 206.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15930/19544 [01:24<00:17, 205.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15951/19544 [01:24<00:17, 204.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15972/19544 [01:24<00:17, 204.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 15993/19544 [01:24<00:17, 205.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16014/19544 [01:24<00:17, 206.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16035/19544 [01:25<00:17, 206.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16056/19544 [01:25<00:16, 205.86it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16077/19544 [01:25<00:16, 206.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16098/19544 [01:25<00:16, 206.70it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 82%|████████▏ | 16119/19544 [01:25<00:16, 206.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16140/19544 [01:25<00:16, 205.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16161/19544 [01:25<00:16, 204.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16182/19544 [01:25<00:16, 203.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16203/19544 [01:25<00:16, 196.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16224/19544 [01:25<00:16, 200.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16245/19544 [01:26<00:16, 202.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16266/19544 [01:26<00:16, 203.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16287/19544 [01:26<00:16, 203.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 83%|████████▎ | 16308/19544 [01:26<00:15, 203.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▎ | 16329/19544 [01:26<00:15, 205.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▎ | 16350/19544 [01:26<00:15, 206.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16371/19544 [01:26<00:15, 205.46it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16392/19544 [01:26<00:15, 205.65it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16413/19544 [01:26<00:15, 206.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16435/19544 [01:26<00:14, 208.43it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16456/19544 [01:27<00:14, 208.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16477/19544 [01:27<00:14, 206.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 84%|████████▍ | 16498/19544 [01:27<00:14, 206.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16519/19544 [01:27<00:14, 207.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16540/19544 [01:27<00:14, 200.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16561/19544 [01:27<00:15, 197.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16581/19544 [01:27<00:15, 196.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▍ | 16602/19544 [01:27<00:14, 200.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16623/19544 [01:27<00:14, 200.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16644/19544 [01:28<00:14, 203.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16665/19544 [01:28<00:14, 204.28it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16686/19544 [01:28<00:14, 203.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 85%|████████▌ | 16707/19544 [01:28<00:13, 203.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16729/19544 [01:28<00:13, 206.42it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16750/19544 [01:28<00:13, 207.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16771/19544 [01:28<00:13, 207.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16792/19544 [01:28<00:13, 206.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16813/19544 [01:28<00:13, 204.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16834/19544 [01:28<00:13, 205.22it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▌ | 16855/19544 [01:29<00:13, 203.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▋ | 16876/19544 [01:29<00:13, 202.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 86%|████████▋ | 16897/19544 [01:29<00:13, 192.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16917/19544 [01:29<00:14, 186.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16936/19544 [01:29<00:14, 185.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16955/19544 [01:29<00:13, 186.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16975/19544 [01:29<00:13, 188.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 16994/19544 [01:29<00:13, 183.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17013/19544 [01:29<00:14, 170.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17031/19544 [01:30<00:14, 169.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17049/19544 [01:30<00:15, 163.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17066/19544 [01:30<00:14, 165.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 87%|████████▋ | 17085/19544 [01:30<00:14, 170.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17105/19544 [01:30<00:13, 178.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17125/19544 [01:30<00:13, 184.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17146/19544 [01:30<00:12, 190.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17167/19544 [01:30<00:12, 194.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17188/19544 [01:30<00:11, 196.81it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17208/19544 [01:30<00:12, 192.36it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17229/19544 [01:31<00:11, 195.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17250/19544 [01:31<00:11, 198.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17271/19544 [01:31<00:11, 199.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 88%|████████▊ | 17291/19544 [01:31<00:11, 195.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▊ | 17311/19544 [01:31<00:11, 195.10it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▊ | 17331/19544 [01:31<00:11, 194.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17352/19544 [01:31<00:11, 198.27it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17372/19544 [01:31<00:10, 198.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17393/19544 [01:31<00:10, 199.98it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17414/19544 [01:32<00:10, 201.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17435/19544 [01:32<00:10, 199.35it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17456/19544 [01:32<00:10, 200.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 89%|████████▉ | 17477/19544 [01:32<00:10, 201.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17498/19544 [01:32<00:10, 200.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17519/19544 [01:32<00:10, 198.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17539/19544 [01:32<00:10, 192.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17559/19544 [01:32<00:10, 191.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|████████▉ | 17579/19544 [01:32<00:10, 188.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17599/19544 [01:32<00:10, 190.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17619/19544 [01:33<00:09, 192.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17639/19544 [01:33<00:09, 192.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17659/19544 [01:33<00:09, 188.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 90%|█████████ | 17678/19544 [01:33<00:10, 185.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17697/19544 [01:33<00:10, 175.63it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17715/19544 [01:33<00:10, 169.73it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17736/19544 [01:33<00:10, 178.82it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17754/19544 [01:33<00:10, 175.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17772/19544 [01:33<00:10, 176.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17792/19544 [01:34<00:09, 181.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████ | 17813/19544 [01:34<00:09, 188.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████▏| 17834/19544 [01:34<00:08, 193.29it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████▏| 17855/19544 [01:34<00:08, 197.05it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 91%|█████████▏| 17875/19544 [01:34<00:08, 197.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17896/19544 [01:34<00:08, 200.89it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17917/19544 [01:34<00:08, 202.74it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17938/19544 [01:34<00:07, 203.23it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17959/19544 [01:34<00:07, 204.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 17980/19544 [01:34<00:07, 201.39it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18001/19544 [01:35<00:07, 195.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18021/19544 [01:35<00:08, 185.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18040/19544 [01:35<00:08, 185.01it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18059/19544 [01:35<00:08, 184.66it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 92%|█████████▏| 18078/19544 [01:35<00:08, 182.69it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18097/19544 [01:35<00:07, 182.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18116/19544 [01:35<00:07, 183.64it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18135/19544 [01:35<00:07, 184.33it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18154/19544 [01:35<00:07, 185.13it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18173/19544 [01:36<00:07, 182.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18192/19544 [01:36<00:07, 178.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18211/19544 [01:36<00:07, 179.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18230/19544 [01:36<00:07, 180.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18249/19544 [01:36<00:07, 181.94it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 93%|█████████▎| 18268/19544 [01:36<00:07, 180.58it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▎| 18287/19544 [01:36<00:06, 181.60it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▎| 18306/19544 [01:36<00:06, 180.11it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18325/19544 [01:36<00:06, 180.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18344/19544 [01:36<00:06, 182.19it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18363/19544 [01:37<00:06, 184.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18382/19544 [01:37<00:06, 177.88it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18400/19544 [01:37<00:06, 173.53it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18418/19544 [01:37<00:06, 171.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18436/19544 [01:37<00:06, 171.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 94%|█████████▍| 18455/19544 [01:37<00:06, 175.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18473/19544 [01:37<00:06, 173.83it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18491/19544 [01:37<00:06, 168.75it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18508/19544 [01:37<00:06, 164.41it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18525/19544 [01:38<00:06, 161.97it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18542/19544 [01:38<00:06, 163.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▍| 18559/19544 [01:38<00:06, 164.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18576/19544 [01:38<00:05, 164.07it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18594/19544 [01:38<00:05, 167.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18613/19544 [01:38<00:05, 172.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18632/19544 [01:38<00:05, 176.16it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 95%|█████████▌| 18651/19544 [01:38<00:04, 178.62it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18670/19544 [01:38<00:04, 180.15it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18689/19544 [01:38<00:04, 181.00it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18708/19544 [01:39<00:04, 181.48it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18727/19544 [01:39<00:04, 182.34it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18746/19544 [01:39<00:04, 183.49it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18765/19544 [01:39<00:04, 178.20it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18783/19544 [01:39<00:04, 175.52it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▌| 18801/19544 [01:39<00:04, 172.09it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▋| 18819/19544 [01:39<00:04, 171.57it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▋| 18838/19544 [01:39<00:04, 176.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 96%|█████████▋| 18857/19544 [01:39<00:03, 178.55it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18876/19544 [01:40<00:03, 179.67it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18895/19544 [01:40<00:03, 180.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18914/19544 [01:40<00:03, 180.61it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18933/19544 [01:40<00:03, 179.26it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18952/19544 [01:40<00:03, 180.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18971/19544 [01:40<00:03, 181.47it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 18990/19544 [01:40<00:03, 179.76it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 19009/19544 [01:40<00:02, 181.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 19028/19544 [01:40<00:02, 182.80it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 97%|█████████▋| 19047/19544 [01:40<00:02, 181.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19066/19544 [01:41<00:02, 180.93it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19085/19544 [01:41<00:02, 177.32it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19103/19544 [01:41<00:02, 175.77it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19122/19544 [01:41<00:02, 179.78it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19141/19544 [01:41<00:02, 182.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19160/19544 [01:41<00:02, 183.96it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19179/19544 [01:41<00:01, 183.85it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19198/19544 [01:41<00:01, 185.38it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19217/19544 [01:41<00:01, 186.24it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 98%|█████████▊| 19236/19544 [01:42<00:01, 185.21it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▊| 19255/19544 [01:42<00:01, 186.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▊| 19274/19544 [01:42<00:01, 185.51it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▊| 19293/19544 [01:42<00:01, 183.99it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19312/19544 [01:42<00:01, 183.18it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19331/19544 [01:42<00:01, 184.68it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19350/19544 [01:42<00:01, 184.87it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19369/19544 [01:42<00:00, 184.72it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19389/19544 [01:42<00:00, 186.44it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19408/19544 [01:42<00:00, 180.59it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19427/19544 [01:43<00:00, 178.40it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      " 99%|█████████▉| 19445/19544 [01:43<00:00, 177.71it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19464/19544 [01:43<00:00, 180.54it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19483/19544 [01:43<00:00, 181.25it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19502/19544 [01:43<00:00, 183.04it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19521/19544 [01:43<00:00, 182.37it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|█████████▉| 19540/19544 [01:43<00:00, 182.95it/s]"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\r",
      "100%|██████████| 19544/19544 [01:43<00:00, 188.47it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "OOV questions: 0\n",
      "Category: Semantic, Accuracy: 56.0942609087834%\n",
      "Category: Syntactic, Accuracy: 41.658079625292736%\n",
      "Sub-Category: capital-common-countries, Accuracy: 77.4703557312253%\n",
      "Sub-Category: capital-world, Accuracy: 72.56852343059239%\n",
      "Sub-Category: currency, Accuracy: 9.237875288683602%\n",
      "Sub-Category: city-in-state, Accuracy: 34.252128090798536%\n",
      "Sub-Category: family, Accuracy: 74.1106719367589%\n",
      "Sub-Category: gram1-adjective-to-adverb, Accuracy: 16.028225806451612%\n",
      "Sub-Category: gram2-opposite, Accuracy: 16.871921182266007%\n",
      "Sub-Category: gram3-comparative, Accuracy: 45.94594594594595%\n",
      "Sub-Category: gram4-superlative, Accuracy: 26.203208556149733%\n",
      "Sub-Category: gram5-present-participle, Accuracy: 32.38636363636363%\n",
      "Sub-Category: gram6-nationality-adjective, Accuracy: 80.61288305190745%\n",
      "Sub-Category: gram7-past-tense, Accuracy: 43.84615384615385%\n",
      "Sub-Category: gram8-plural, Accuracy: 42.492492492492495%\n",
      "Sub-Category: gram9-plural-verbs, Accuracy: 41.839080459770116%\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# Do predictions and preserve the gold answers (word_D)\n",
    "preds = []\n",
    "golds = []\n",
    "my_wv = my_model.wv\n",
    "\n",
    "for analogy in tqdm(data[\"Question\"]):\n",
    "      # TODO6: Write your code here to use your trained word embeddings for getting predictions of the analogy task.\n",
    "      # You should also preserve the gold answers during iterations for evaluations later.\n",
    "      word_a, word_b, word_c, word_d = analogy.lower().split()\n",
    "      golds.append(word_d)\n",
    "      if all(w in my_wv.key_to_index for w in (word_a, word_b, word_c)):\n",
    "          preds.append(my_wv.most_similar(positive=[word_b, word_c], negative=[word_a], topn=1)[0][0])\n",
    "      else:\n",
    "          preds.append(None)\n",
    "print(\"OOV questions:\", sum(p is None for p in preds))\n",
    "\n",
    "# 模板在 TODO6 後面沒有評分格，所以這裡用 Part II 的 calculate_accuracy 印出成績。\n",
    "golds_np, preds_np = np.array(golds), np.array(preds)\n",
    "for category in data[\"Category\"].unique():\n",
    "    mask = data[\"Category\"] == category\n",
    "    print(f\"Category: {category}, Accuracy: {calculate_accuracy(golds_np[mask], preds_np[mask]) * 100}%\")\n",
    "for sub_category in data[\"SubCategory\"].unique():\n",
    "    mask = data[\"SubCategory\"] == sub_category\n",
    "    print(f\"Sub-Category{sub_category}, Accuracy: {calculate_accuracy(golds_np[mask], preds_np[mask]) * 100}%\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "48d9e9d3",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:22:23.730726Z",
     "iopub.status.busy": "2026-10-04T08:22:23.730726Z",
     "iopub.status.idle": "2026-10-04T08:22:24.108256Z",
     "shell.execute_reply": "2026-10-04T08:22:24.108256Z"
    },
    "id": "AjZ14dQL0mhf"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABAsAAAL1CAYAAAChcm3kAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjExLjIsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvgI3uAAAAAAlwSFlzAAAPYQAAD2EBqD+naQAA0bBJREFUeJzs3QmczdX/x/HP2Nex74SyC8kesiehHZFSFG1UKkqLUmnRSikqIgopCiV7USFLkez7nn3sy7j/x/v0+97/vdfMGNssd17Ph/uYud/9LnPd8zmf8zkRPp/PZwAAAAAAAP+TyvsFAAAAAACAYAEAAAAAADgDmQUAAAAAACAIwQIAAAAAABCEYAEAAAAAAAhCsAAAAAAAAAQhWAAAAAAAAIIQLAAAAAAAAEEIFgBAEvbzzz9b9uzZ3c+EtmnTJnfuL774Ilkc93wsXbrUXcu3336bpK/78OHD9uijj1rp0qUtR44c1qNHjwS/hnD21ltvudf2+PHjFi7C8TGdr0mTJrnnYsGCBYl9KQCQrBAsAJCiHT161PLmzWt33XXXGeu+/vpr9wXzhhtuOGPdjBkz3LpPPvnkkl7fyZMn7cCBA+5nfL4Me7dcuXJZyZIl7e6777Z//vnnvM59+vRpd+7zaWysXr3aXceXX355UY97sUVHR7trOXHixFm3Tczr7tOnjwtSjBw50tavX28vvfSSJQdbt261Xr16Wc2aNa1QoUJWpEgRq1Wrlt133302c+ZM8/l8lhQcO3bMvbaX4no+/fRT97dQtWpVC5fHdKH0Hg78vIrrFp9AXnw/R0+dOnVRrh8AUoo0iX0BAJCYMmbM6BrVP/74o/tSHRER4V83ZcoU1zBUYEBBBW3rmTZtmvvyqYZPUuB9GR40aJC1bt3a3V+yZIk99NBD7hoXL15sl19+eZJohF922WW2b98+y5QpkyUniXnder/Vrl07wRucF2LcuHEuCFetWjUXMKhcubKlTp3aBa/UgG7YsKELfrRr187C2UcffWTp0qWzhQsX2pw5c6xOnTqW0hUtWtQ2bNgQtKxFixYu02fjxo1ByzNnzpzAVwcA8JBZACDFU6Nlz549rnEdSEGC+++/3zV4f/311zPWKSPhyiuvTFLPnxqy6o3LkyePNWrUyPr3729RUVEuiJBUpEqVyl2jGlDJSWJe97///pusGk1//vmntW3b1jUAp0+fbjfeeKPLKihYsKA1btzYRo0aZePHj7cMGTJYOFOQbtGiRfbhhx+6BvKlzkRKbn9Lgbc0adK4YG3o8rRp0yb25QJAikWwAECKp0a1KC06cHz6unXr7Pbbb7cKFSq44IDn4MGDrpdQQQbPkSNHrHfv3laxYkUXRNA+zz//vBtrHpp6q3RyDRtQT7Ea9T/99JNb/9dff1nz5s2tQIECbv/PPvvsgl+bcuXKuZ+hvXjq+X///fddeni+fPmsRIkS1rVrVxc0iYsyLQK/yOuxqre7X79+/qESahxWr17d/a7MBm9bL3U+trH/el6feeYZK1++vDtupUqVXPq90qljqjEwYcIEd578+fO71+KPP/4443oHDx5s11xzjUuBV2BHwZ/Q58JztuPFdN2B1zN69Gi7+uqr3f5NmjSxefPmXdD1iI6r4yud3/tdt+XLlwedW7caNWpY7ty5Xe+112Bv1aqVy4jwGuk//PBD0PH1HtU+el0ff/xxK1asmKuLoMatKKNGy5WVUrx4cXvhhRfildau11rDNvQeU8MwJjfddJPdeuutQcvic83nst2sWbOsfv367jXR+1TZDhoao+dNQ2XOZvPmze49rOdE70m9P/QaxpeCA3qtb7nlFuvcubMb2qSMm1De66C/If0N6PnWY+vSpYsdOnQoaFu9/7z3gepXKAijz43Az6i4XMzn7vPPP3f3Y/rb++abb9y6wM/V8xnK5N10HcrKUFZKIA0teOONN9w16rNTGSzdu3e3Xbt2xXl8fTbfdtttLogTGgwGAPyPDwBSuGPHjvkyZszoa9mypX/ZkCFDfBkyZHDrunXr5qtRo4Z/3cSJE9Va8g0ePNjdP3HihK9OnTq+nDlz+kaPHu3buHGjb+zYsb7cuXP7atWq5Tt+/LjbbvXq1W6/du3a+dq3b+/766+/fLNmzfL98ssvvn/++ceXJUsWX8OGDX0LFizwrVq1yvfYY4/57rzzTrfP1KlT43wM48aNc9t98cUXQct1fC3XsTzR0dHusep69Th1vb///ruvevXqvjJlyvgOHjzotlu/fr3b95NPPgk65r59+/y3DRs2+D7//HNfZGSk76mnnnLrT5486Zs/f77b98MPP/Rve/To0ViPq3VVqlTx5cuXzz0WXdOXX37py549u3tOTp065bZbvHix2/eee+7xPfDAA75ly5b5li5d6qtdu7YvV65c/msXnTtdunS+oUOH+jZv3uyeUz3e1q1b+7c5l+PFdN3e/m3btvXdd9997nX8888/fTfeeKN7/+h5OJfrCaX3lp67ggUL+m699Vb/c6nX0Du33iOdOnXy/f33376ffvrJN2/ePN9vv/3mzn/99df7Fi1a5Fu5cqXv0UcfddsPGjTIf/wnnnjClzp1avfYR44c6Z73gQMH+iIiInyjRo1yxx4+fLhbrv20PHD/mOj1z5Qpk69mzZq+cxHfa47vdjNnzvSlSZPGd8cdd7jXVK9tx44d3WulbZcvX+7f9uWXX3bLvPeo6PXR37DeC/ob1Ws2bNgwX9asWX1PP/30WR/P4cOHfdmyZfO9+OKL7v7OnTvd66/3QSjvdXjkkUfc+0PP97fffuvOpdc2kD5PvPfBnj173GPT65c2bVr32RHXY7rYz11UVJS7Rv39hKpXr56vcOHC7r0aH9pez5dH+wV+1qxdu9b37rvvuscZ+BzqcydHjhy+8ePH+7Zt2+b+Dt5//33fww8/fMbnoz7nZMuWLb6rr77aV6xYMbc9ACBmBAsAwOfzNWrUyH1R9RqlasyrkSr60q4v8gcOHPB/sdcXzzVr1rj7aizr/pgxY4KeS315DQwqeMGC0qVL+06fPh20rRqCahgHNk6lcePG5x0s0PmqVq3qGm6BX4hHjBjhttXjCqQv0GpIvPnmm3EGC2LyyiuvuICL1zBQY0L7quETKqbjfvDBB27ZDz/8ELStd60KHIjXQL7mmmuCtvOWf/bZZ/5lCogoABKXczleXMECPc+hDbpChQr56tevf07XExsdq02bNjFeoxo9odRQV4BBwa5AaiQqsOO9z7z3cmgAoG7duq4BptclUIMGDXyVK1eO81rVYNMxQ6/3bOJ7zfHdrlq1ar6SJUue0VitWLFivIIFOl7+/Pn9f/ceNUT1ebBp06Y4H4/e+2pwb9261b9Mje2rrrrqjG291+Gjjz46Y7mOcejQId/ZKNAXGFiI6TFdiudOjXL97Stw4VFwQds9//zzvvgKDRbERkE5fYZ6KlSoEGfALTRYoCCJ/p70XCiAAwCIHcMQAMDMDUVQerDGF4tSZxs0aOB+r1evnkupnj17truvdF+lrl5xxRXuvoYRaFxtaEq1xmmrhoA3zMCj7QILKcrUqVOtadOmliVLlqDlKlZ4LpS2rJRdjW9X4UalUf/yyy8utd+jdGKt1/UFUrq0hj+omF5cNI2jHoPS0nPmzOnO9+qrr7qUdaXLnw89R5GRkdasWbMzHr+K4oU+h0rrDqThH9puzZo1/mVKHddwkddee+2Mommh4nO8uCidOZDqGijNXu8ZPS/nej3nIvTceh9rCMTNN99s6dOnD1qnOgKqYTF37tyg5aHvBQ2RUDFHPYbQ5Wd7TvS3IjENP9CwnsDU8jvvvPOcrvlcttM0ebr+0OsIfa1jotR//U2q5oLel4Guv/56N4xHafpxUbq8rlOp/h4NadAwAL0PYqLtAymlXmn2ge8X3dfwDg1jUtq9hiJ4QwPiGlpxqZ47PSa9xzUkIbCooz7j7r33XrsQqmuh2Wg0ZMJ7nBqGsXbtWv/7TH9XGkahc+7cuTPO433//fdWt25d99zpM15DSwAAsSNYAABm/voD+gK5atUq1+j1ggVqEHt1C9SAUm2BwHoFGhurcf9qXAbSl2V9mVdxukCFCxcOuq/x4hqvr21DxbQsLu+++64bA68G3YgRI9y4XI37975Yy7Zt29yXe12zxklrmkU9Rn0ZV0G2uMb66vlRYEUNqLFjx9qKFSvc+XQO77GcD50zsFHlURBG1xj6HIZuq0aNAi16fTyqIaHgyZtvvunG4uv2wAMPuNoRoeJzvLjE9tqpUbl3795zvp5zEfp+2r17t6srENPz6S0LfD71WPVeCOQ1kEOPoeV6r+pxxUZ1OBQsiSlwNGzYMPd+0U21KLyaHvG95nPdTuPcz+dvSsfQY9QYfe9vxPs78epxxPV3opoSGgc/ceLEoOCIgg8SU6HDmF6HbNmyuZ+B78OHH37Ynn76abvnnntcMEoNZz2fqpcR19/fpXruVBdFtQ0+/vhjt59e0+HDh7vPSAUUz5eCAgpO6LNXNV4UCNHjVO0HBUy8z7QPPvjABbuefPJJd81lypRxv4d+ZohqcWi/F198MeyLawLAxcDUiQBg5opjqSGkgIB+KiPAaxSIvgxrnQps6ctmYLBAjQDvC3ZoxoAaFIG9+hJaTV+9fJqWMabGx9mKdMU2G4LXa6sGT4cOHWzAgAH26KOP+q9XPWpq0MQkNOgRaMiQIW5//QzsdTzX6wwVW8E5PddqbCuQESi2onmBxffU2FfjQL2wCvDo9XvvvfdcMcCVK1cGHTM+x4tLbK+d3g9eg+9crudchL6f9FzGdk1eAyrwXLrG0PfthTwvup5rr73WNZbVS+09foltRof4XnN8t/POqb/LUPF5r3rnue+++/yFOUMFTqUaSsEAZacoCyeUgmwqwPf2228HPR9xvQ7e860CiOrBV4NZxTEDKTijYodne0yX4rlTdoGygJSVpOCXshQ6depkF0KFJK+66ipXvDBQaPaAAiyaglOBEmWGacpbBU0VqFm2bFnQ55kCEAoU6P2pbCUFWAAAsSOzAAD+10DWcANVkteXSAUFAqfsUrBADTx90ZfAYIH2Uy9paDVypf/rS7PWn41SY9Vrr2kaA/34448X9PponvsqVaq4Bo9XhV2p/jt27Dij2rh3y5o1a6zHU2NFjd7ARqR6+bznJTBo4W0fH3qONBND6AwCkydPdseIz3MYG03JpufgqaeecrM2qMGjVPCLKXSYhIIcWqbzhg4tudTXox5wBaj03gnMKBE1oBSc0swJl1KvXr3c34SXcXKxrjm+2ykboGzZsq7hGCqmZaG8DALN7KEGfUx/J6Gp/B79DatRqr+zmPZTer9638eMGWPnSo9ZAcDAAIz3WaOMobhcyudOGQDKThg4cKAbDqCgQ3yGe8RFf/ehj3P//v3uMyEmuv5atWq5DJ4ePXq4AJxmMAmkIKk+Z/X4lDmm5w0AEDuCBQDwPwoA6Eu8xrV6QxA8XmNV88MrzTUwlVfjckuVKuVSzDXWV1/Elc6vXknVNQjtAYyJpqRTj5m2VaNZwwSUXqtgw4VQT+Urr7zi0pjVMBWdQ42CNm3auIaDGnVqgGjoghp3cU3ZqPHaGj+tRoH20TUrc0HjhgPp+VHQQWnSoQ2TmCgdX3Ug9FwuWbLE7aPAgXos1cBR0ONc6fnX6+X1hipDQWOg1Xj3ppS8WPQ8qxaB3j8KyiiLQ8NZAhvLCXk9ffv2dcEgPX967fV+6t+/v5vesWfPnq4xfCnp70e9u8qc0Gv6999/+3vH9bg1HEFBpvO55vhup+dePc2ailBDJ1SH4OWXX453+rmOqV5yjefX+XT9OoYCinfccYdt3749xv1UE0S98vpbiW2YhoJFMQ1FOBs1iBW4HDp0qOs119+J6gzoMWqq0bO5VM+dAmD6XPnuu+9c4EtZTRea5q/nT8+1jqnnXkMQ9JkVGuhSzQ4FO7yhGgqaKKCg4TmqwxJKAQgvIKxzaIgDACBmBAsA4H+8bAF9AdcX8kBe3YLQIQiinkelG9esWdM1kvSFXpkCGtqgxnJcPfUeFdyaMGGCm69cPXtqbCutWOnKF0pfiPXFWA03Ne71JV5ZEGoEPfjgg+76NfRC46n1pTy0qF0gjZNWGq+CG0rD1mPUYw4t7qjGg3oYlZas86lHNbZ0btF6PVd6jtU7qOewSZMm7nVQIbm4Ur5jowaRGgIqyqf9FYxQY169xaFjwy9Ux44d3U+dQ72qCsKo5ziwYGNCXo/GcCvo5b2f9B7U8Ae9B+J6HS4mBUzUkFUwSnUuNDxBGScKLGk4hhqfGh5zrtcc3+1UTFFj57/66iv3/lLgTtu2atUqxuEbodQonT9/vvubUONe72M1QJ977jn3fo/tNVMQQOfR33Rs9L74/fffXYP/XGkYggof6pr0t6vx+TqnN8wgLpfyudPQCC/l/0KHIIgCFfp8uvvuu93ngQrAql5D4PAw6dq1qysmqWvU+0uBN31+6u8qttdYf38K1KnYo256nACAM0VoSoQYlgNAiqQ0V6/3KXT88JEjR1yKsb5oxpaCLGoA6ktr6P4KNChTQOviaqioceX1yqn3Vb166n1WAzyulF2dV42HwOETHo3nVS9iTOv1mPQlP7RWwdmuV8f0ngcdQ8+Pgg6h49y9502PSbezHVf/LWmfmMa3K5tBPZ0xPQ716Ot4MQUWAp/T8z1eTNetXlQ13NTYUG9zXOeKz/XERufV6+8N7zjbtQfSe0jbxvSe1XXodQxN99Zy3UIboLEtjw+9B/Q3Ede1xueaz2c7vfe911Fp6gpU6PX1Anne30dcj0vvycDnPzY6rv4Gzjacx/uc0HspttfB+/vXsWL6+9TN+1zQduINeznbY7pYz13gdgqgaBaW2GZ7iIuuP6YhFt5j8a4zrvdg4HYxPd+hz6M+a7zXK3TWCwAAwQIAAM5bTMECJG3qkfeGCuHiPXcq1KkhARqipIwAAEDyxzAEAAAQdtTLrEarakeoB1kV/x955BE3Fv/ZZ59N7MsLq+dOvfZvvfWWm1pRNUwAAOGBYAEAAAg7SkdX1oeq8muohlLkVVtERSY1Jh8X57lTrRPV6VDBR2XYxGeoBgAgeaBmAQAA5ym+dQOQuLwpPHmNLv5zp1oDqkURU40RAEDyRrAAAAAAAAAEYRgCAAAAAAAIEvs8XMmIKvNu27bNTYkTOlUZAAAAAAAXm8/nc8MRCxYseMbU0eEgLIIFChQUKVIksS8DAAAAAJDCbN682QoXLmzhJiyCBcoo8F6kyMjIxL4cAAAAAECYi4qKcp3WXns03IRFsMAbeqBAAcECAAAAAEBCiQjTofDhN7ACAAAAAABcEIIFAAAAAAAgCMECAAAAAAAQhGABAAAAAAAIQrAAAAAAAAAEIVgAAAAAAACCECwAAAAAAABBCBYAAAAAAIAgBAsAAAAAAEAQggUAAAAAACAIwQIAAAAAABCEYAEAAAAAAAhCsAAAAAAAAAQhWAAAAAAAAIIQLAAAAAAAAEEIFgAAAAAAgKQbLDh9+rRt2bLF9u7dm9iXAgAAAABAipWkggW9e/e2IkWKWOfOnRP7UhAP+/btswMHDvBcAQAAAECYSTLBglmzZtmoUaPs2muvTexLQTw99dRTLsDjGTdunOXNm5fnDwAAxOmvv/5y2aQAgKQrSQQLdu/ebR06dLBhw4ZZ1qxZE/tycJ4U7Dly5Ij//rRp0yx//vw8nwAAIMgTTzxhY8eO5VkBgCQs0YMFPp/P7rnnHrv33nvtmmuuSezLwQW4//77LUuWLP77jRs3th07dvCcAgAAAEAyk+jBgvfee8/27Nljzz33XLz3OX78uEVFRQXdcH41B7zn7tChQ67AZExOnjzp1p/NwYMHYzyGAkKx1TaIaZ1e3+3bt/vvnzhxwqUq6jo8Wq/t4nOdoY8zcL9Tp0659aG0vc65detWd/6zHTPw2gAAAAAguUvUYME///xjL7zwgr3++uuuB1qNs2PHjtnRo0fd79HR0THu99prr1m2bNn8NxVFxLnr2rWrderUyapUqWKFCxd2WQE5cuSwPn36WNGiRS1XrlxWokQJ9xwXKFDAKlWq5F6rihUrum2//fZbW716tf94gwcPtsOHD/vvT5gwwTJlymSRkZHueDqPhprUrl3bLdPxdZxixYq59W+++aZbp+UFCxa0N954wz+8Qa+xruGZZ55xv2v9fffdZ2vXrrUGDRpY6tSpLX369K5mgq5zwYIF9ueff1pERITlzJnT3TTERY9Tj/GDDz6wLl26uH00VEI/tf7OO+90778PP/zQatasadWrV3ePv2XLli6oFfjc6fy1atVy16/HoecNAADEn773LV682DZt2hTj+s2bN9uiRYuChjkCAFJAsED/AaghpgaaGma6/frrrzZz5kz3e2DvciA1GNUb7d10HJyf77//3t59913bv3+/a+zq5+zZs91/zBoWotdAjWI9zwoS6Lnv0aOHW165cmWbPHmy/fbbbzEe+5NPPnE97suWLXPH1fhEBSdUn6Jt27ZWvHhxa926teul79mzp7vpvaDAkQICb731ln399deu9sHll1/uGuvKXHj55ZfdvuPHj7dGjRpZmjRprEaNGu74CgY0b97cbrrpJhfoUOaCjqnghIa7KJigQMFjjz1mK1ascMd78MEH3fvtjjvusHnz5rnr1uP0MgtUUyNdunT24osvBj0+XdegQYPc+p9//tk9f+vXr+etCABAPMyYMcPKly/vgvdly5Z13wM8GzdudB0ICsprmKO+F3zzzTc8rwCQUoIFTZs2dQ2ywJsafzfccIP7XQ2/mKgXWI2/wBvOjxrV3gwUZcqUcT3xl112met9nzp1qj355JOuZz9VqlSu914Nc/X8qxdeDfYrrrjCPvvsszOOq0a69lePu47nzXhx++23u//0R44c6YIOavjrtVbAIXfu3G573dTgL126tI0YMcKmT59ud999t7s2ZZVo2xYtWrgAwa233uqCG2qoP/zwwy7TQcfVEAEt97Rp08YGDBjgghY6rrJWdC061zvvvOPOt23bNvd8qIfDo0wJ7aNAgh5PIAU6FEARBRuU7aAABAAAOLsNGza4zon58+e77wjqJFAAXtSxoExBBQ0WLlzoshnVeeGtBwBcemkS4BxIwtTADZQxY0bX068Gssb2X3XVVbZr1y73u3rZFSQILFqYPXv2GDM7tL9SCzNnzhz0pUA9BFqnRvijjz7qAhCi//x1Dn050M1TqlQpN5RBQxgUsFDPvXr0Veti3bp1rrGv/RRYypAhg78OgTIItF7ZBOqJ0DYff/yxW//vv/+6nzquAh86rjIHtI0ev4YhKGtBmQp6rMp+UXBBjyeQHnsg7xgAAODsFMjX/7FSrVo19/+oviuoc0AZe+pcCAz86zuIMgAV4AcApMBggXqXlTmAS2PBhr02YMYaW7Ejynat3WN5N271L/t91p9uTGDarLncGH/9B65e/Dx58vjrAWg4gjIKPGr4V6hQ4YzzKDNBGR+Bhf80tl8971qnRvrnn3/uskukc+fOljZtWtf7r8a7AhZ6L9x4443+ooUKBijtX8GJ+vXruxoJ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gCQfKGgzeK7NWb3LdkYdt4lffWat+k+3jYdTW+vWra1MmTIuIBATBQYOHDhgefLkOWPb7Nmz2969e83n8/m3v/32211QQdkDXuHDzJkz24YNGxLs8QJAUkBYFAAAIAlRY3bcuHFWtmzZxL6UJEMZBebzWbTXpk+d1jYP7mzXjc1jWSOOW5YsWaxz584x7ps+fXpXm0BFDfft2xe0be3atV3NAq3PmzevffTRR26mAwUGlF2ggIEXaPjss88S8BEDQOKL8AWGUpOpqKgolxqmD/PIyMjEvhwAAIDzphR39XxfddVVPIv/U6PvNJdREMgXfdIij+20cY82shIlSviX79mzx81ocPXVV/uXnThxwpYvX+4yBAK39dZptgR9n6xQoYL/u+TRo0dtzZo17jvmZZdd5t9ewxk0tSKvD4CoMG+HklkAAADCjnqFR48ebVdeeaUlZcnlOhObahTsOrjLTgd0caVOk9aurlz5jMZ/rly53C1QunTpYi1qqHUKEoTKmDFjjMuVZaAbAIQ7ahYAAICws3btWjt27JgldcnlOhNb14YlXDHCVP+rR6ifut+tUXCgAABw8RAsAAAAyZLGl9etW9eqVKliTzzxhB06dMgtv+GGG1xquabIU69zr1693PIjR47Y888/7wrWXXPNNW5KvVOnTgXVCvjmm2/stttus8qVK7tx7RrjHrh+xIgRrgBexYoVXbV8rR8wYIDVqFHDatWq5bIEAikl/uGHH3YV+Rs1amSffvqpf11s1ymrVq2yNm3auFT3du3aubR3T3weh2oeqJifMhZWr15tyV3VYjltdOeaVrdkHssXmd79HNOlplUpmjOxLw0AwhY1CwAAQLIzdepUu+OOO2z48OFWuHBh+/nnn2337t3Wp08f27x5s2t8e+n9Gk+aO3dua9iwoRuz7jXKFWBQI/+9997z1wrIly+fffjhh1awYEHr3bu3G4/666+/+teXKlXKba9jdurUyQUomjVr5gILf/31l3Xp0sWNf1dhvOjoaBd0uPzyy9051eB/8MEH7amnnnLnjuk6ld6u85QsWdLeeecdV5SvZ8+ergjf+PHjXdX++DyOokWLuvsKHOh3pdoDAC6uqDCvWaD/dJK9AwcOaASb+wkAAMLfmDFjfOXKlfMdO3bMv+zUqVP+39OnT+/7448//PdnzZrli4yM9B05csS/7O+//3bbefulTp3aN2jQIP/63bt3+9KmTetbsGCBf/348eP96999911fwYIFfdHR0f5l5cuX940aNcr9PnnyZF+WLFl8UVFR/vWffPKJr0CBArFep3eecePG+e/PmDHDlzt37nN6HCNHjjyn5xMAcO4OhHk7lAKHAAAg2VHq/vz5890QBPX2q7ddU96pxz0mqoSv2gCBBevUS3/8+HHX4+9Vu9fwAo+K5CnDYN26de48ol56j6bgK1KkiKVKlSpo2cGDB93v2u+KK66wrFmz+teryN727dtdpX0V0IuNMhM82t87ZnwfhzIKAAC4EAQLAABAsrFgw14bMGONrdgRZWXKtrLPH37GcvkOuOEHqjcwc+ZMt52K3wXS8AKl+E+ePPmMYxYoUMD/+44dO/y/qw6Ahjacb+V77bdz507XmPeuR4ECNf69QEHodZ5NfB9HYAADAIDzwf8kAAAg2QQK2gyea3NW77J186bZT5N/sNaDfrM9EdlcAcE1a9b4t1WNgsCigCouqIb5hAkTrHjx4q5WQNq0ae3zzz93Pz39+vVzY1Dl9ddfd2NRVQ/gfDRo0MD1+L///vvuvsa0vvbaa66AYmzXeTbxfRwAAFwoggUAACBZUEaB+XwW7TNLV6CkRS3+0Ta828auvaqUa4R/8MEH/m27devmZhHwiguq8NTEiRNt7NixliNHDtdDr6ELGhYQSMMNtI+GIAwaNMgVH4xruEBcdIyvv/7a+vfv735Xz78KFr799tuxXufZxPdxAABwoZgNAQAAJAs1+k6znVHHg5adPnHMcmc4bQtfvf2MlH5NMahhAKojEDiUQPUCDh8+7Hr1A2kWgQULFri6Bbt27XIN8UBr1651NQq8mQWUgaCbZmPwbNmyxTXoQ6ti63gafpAhQ4YzHlfodYaex6tHoIBCoNgeR+j+AIBLIyrMZ0OgZgEAAEgWyuSPtF0Hd9lp1Z7+nzTpM1iFEnliHPuv6QaVqh9KmQJxZQtovH9ooEBUrDBQTEGBwMBBoLjqHoReZ+h50qdPf0agIK7HEbo/AADng2EIAAAgWejasIQLCqT6X1xAP3W/W6MSiX1pAACEHYIFAAAgWahaLKeN7lzT6pbMY/ki07ufY7rUtCpFc16U469cudLKlSt3UY4FAEByR80CAAAAAADOUVSY1ywgswAAAAAAAAQhWAAAAAAAAIIQLAAAAAAAAEEIFgAAAAAAgCAECwAAAAAAQBCCBQAAAAAAIAjBAgAAAAAAEIRgAQAAAACcg4ceesi+++67BHnOhg8fbr169UqQcwGBCBYAAAAAwDlYsmSJbd++PUGes02bNtk///yTIOcCAhEsAAAAABAWRo4caT179rSUJCU+ZiQMggUAAAAAwsLmzZtt2bJllpKkxMeMhJEmgc4DAAAAABds586d1q9fP1u6dKkVLFjQunbtaldffbXNmjXLPv74Y4uKirI6deq4bceNG2d58uSx5cuX24ABA2zdunV2xRVXWI8ePaxo0aL+mgArVqywUqVK2ffff28ZMmSwBx54wK699lr/OX/44QcbOnSopUqVylq3bh10PT/++KO9+uqr7vdcuXJZgwYN3DWlTp3aLevfv7+dOHHCnnzySf8+Xbp0sZYtW1qLFi3c/QkTJtiwYcPcPrfffrvNnDnTmjZtajfddJN/ny+//NI9nujoaLv33nvd/hf6mMuWLWsTJ050j/3ll1/m3YkgBAsAAAAAJBt33nmnZcmSxbp37267du1yDXM15itUqGDNmjVz9QRef/11t222bNls/vz51qRJE3vqqafs5ptvtp9//tmqVq3qGtO5c+d2NQHeffddu/766+2+++6zP//80/0+ffp0q1Wrlk2aNMnuuOMOe+WVV1yj+7333rOFCxda+/bt3TmqVKniP58CGX379nXHfOedd9wyNdaPHTsW9Bj++usvq1atmvtdAQodS/sVK1bMNfB/+eUXq1ixon/7KVOmWI4cOaxTp04ui+DWW291j/NCH/Mtt9ziAg86LxCKYAEAACmQvoyqB0sVvQEgOVFDVw1j9bxLmzZtLCIiwtKkSeN6zpWW7/WyywsvvGCPPPKIPffcc+7+dddd5xrXQ4YMcb3tXgN71KhRlj59emvevLlt2bLF3nrrLfvmm2/sjTfecFkBjz76qNu2bt26VrhwYf/x8+bN624e9dbXqFHDHyw4G51H16FrFGU0FCpUKGgbNeZ1vXqcCmTouhQAUAbE+T7m/Pnz2xdffOHPgABCESwAACAFUs+UvlgDQHKjtH71mKvhW7t2bWvVqpWVKFEi1u3VSN64caNrXHvWr19v+fLl89+vVKmSCxR41OvvNfZXrlxpzzzzjH+dAgslS5b03z906JB9+OGH9vvvv9vevXvt1KlTbtmePXvc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XVaVZ926dW4/Da/QFLS6Baak79271wUTdK5Dhw4FHVNZFvPmzbNRo0a5YENM17lnzx774Ycf3Aw14UZD16pWrWoFChSwVq1auccqymorVqxY0Lb9+/e3W265xV+A9/7777eiRYu6WXgee+wxtyzQV1995WoXFC5c2Dp16uTq7oiGKGTJksXd8uTJ4wJMeg08GrandWPGjInx2kT1fDQMT8Npbr31Vtu+ffslfZ4AICkiWAAkE10blnD1BLyAgX7qfrdGJRL70gAkASo8qkaNagYoY0iFSTXEaOvWrf5x/c8++6w1bdrUcubMacOHD7c2bdq4bTR9aokSJaxPnz5BDXHt89xzz1mzZs3cPpoJZfLkyf71qmOi+iXeOb/++uuga9L+ykxSAcAcOXK42ii//fabKxanBqCOqQahhi54VDBQtQfUSCtYsKB16NDB34hTg/DXX3+1hx9+2F23Gnqe9evX+69TWVXar3bt2q5BqWvQ+bJnz241a9Z0dVeqVatm33zzjf86u3bt6h6HMgeUbVWrVi03LEt0/s2bN7tr05As3U6ePOnWKehQr149F4B4/vnnXePVa9Rqe9V70bS2CiS0bt3a2rZt679mLXvkkUfc+b/44gtbvXq1hZsRI0a4QIleNwVbXn31Vbdcr3loYCWwLsB7771nixcvtilTprghdnp/KvAQSMPivvzySzc8RMEdL9skc+bMtmPHDnfT66NAQIsWLVxNjcCaB7Fdm15rFfpVBosCPHrd3n///QR5vgAgSfGFgQMHDig52/0Ewtkf6/f47v5snq/C40N9ZRq19t1wa2vfkCFDfIMHD/b179/fbbNw4UJfhw4dfH/88Yfv0Ucf9d13331u+W+//eZ75JFHfO3atfO98847vuPHjwcdO671Ov7777/vGzp0qDu2jvn333/7du7c6evZs6evVatWbp9Tp04l8DMCwNO4cWPfTTfd5NuyZYtv9erVvlq1arn/Gzdv3uzW16hRw5crVy7f9OnTfUePHvWdPn3aFx0d7Tt58qT7e9dnR+nSpd3fuUf75M+f3/fLL7+4/2Nff/11d4wTJ0649dddd53vhhtucOdYtWqV2z70nAULFvT9+uuvvv379/vuv/9+X2RkpK99+/a+7du3+1auXOkrXLiw74svvvCfs1mzZr4GDRr41q9f79uwYYN7XE2aNHHrdL21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HhvWMXimgotBxQq9YoNq8CsbQQGDu++++6KfC0hMUWHeDqVmAQAAABDGujYs4WYnUIBA9FP3uzUqcUnON2zYMFeMsHXr1m7ogAIHKpoIIHkhswAAAABIIbMhaEhCmfyRLlBQpej/1yK42FSrYNWqVXbFFVdYtWrVLtl5gMQUFeaZBQQLAAAAAAA4R1FhHixgGAIAAAAAAAhCsAAAAAAAAAQhWAAAAAAAAIIQLAAAAAAAAEEIFgAAAAAAgCAECwAAAAAgwPbt223FihU8J0jRCBYAAAAAQICRI0faY489xnOCFI1gAQAAAIAU6fDhw7Z06VLbvXu3f9m+ffts06ZNduDAAZs7d667HT9+3L/+0KFD9vfff9vBgweDjrVt2zZbuXKl+339+vW2devWeJ0v0J49e2zZsmVB5ws99saNG23t2rXm8/ku8NEDcSNYAAAAEOZOnjxpX375pb366qu2bt268zqGGkeffvrpRb82ILGMGDHCChYsaO3atbOKFSva3XffbSdOnHCN+e+++86WL1/usgt027t3r/s76tq1qxUoUMDtU6hQIXvhhRf8xxs+fLhbfvXVV9sNN9xgZcuWtZtuusmOHj0a5/m8AESrVq2sePHi7mfu3Llt8ODBZxy7Vq1a1rx5c6tWrZo1aNDAXRNwqRAsAAAACHMdO3a0gQMHukZLdHT0eR3jzz//tA8++OCiXxuQWF555RXr37+/Cw6o575Zs2au5//aa691QYGaNWv6MwsUIHjnnXfsl19+cVkDS5YscTUNPvvsM/vpp5/8x1y0aJELyinQsGHDBlu9erW9/fbbcZ5PtI+Op6yBf/75x8aPH28PP/yw/fXXX/5jK+NgwIABLnCna1CmgYIawKVCsAAAACCJUCMhsDfxYjh16pSNGjXKhg0b5horJUuWTJTrAJKacuXK2dSpU13DXin9bdu2tRw5csS6/ejRo61p06a2Zs0aF0DQUAUFFAKDBZUqVXJBAMmZM6d17tzZJk2adNbzTZw40R566CH//UaNGln16tXthx9+8B9b56patar7PVu2bFalShU3HAG4VAgWAAAAJBHqrVTP48X077//uoBB3rx5E/U6gKTmq6++snr16lmfPn2sQoUKric/tFZA6N+SevK9oQm6qS5BlixZ/NvkypUraB8FDFQD4Wzn0zAHDT0IpGOphoEn8DySJk0a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4/6Zxl39qzTujjNTjx49Uvv27dNRRx1V07sJ1CCVBQDUSVOmTMnjW0ePHp26dOmy0B7nrrvuymNkYwwrQH2cDSGGJPTo0Cr9dOWUZn76flpxxRVzL4GqMwgADauyQM8CgDpqwoQJ6bLLLsvjO2NcZpwBii94JU8//XS66aab0meffZa/9P3qV7/KjZvCVVddlZtIdejQIf39739PTZs2TYcddljFPNTzuu/aIEbRRcfqhT2aLhp8zW4KMYC6LqZJHHpQ7ypLq14HGipxIUAd9dOf/jTPLx1dnzt27JivlwwbNixtvfXWuUFTdI++9dZb07bbbltxYB0NoU455ZR0zz33pO233z5PNxXdpaMh1Lzuuz6L12PNNdes6d0AAKhxKgsA6qg33ngjXXDBBWmjjTbK13/5y19WrDv11FNzU6oIBEIEBlGqH12it9tuu7wsxqRef/31+fe+ffumu+++O3e+3mOPPeZ63/WZKgIAgP9SWQBQR51//vm5U3XMU33NNdfk6Z5CaeqpzTbbrGLbGNsfU05FRUHJWmutVbi/qEL4/PPP53rftdHw4cPT+uuvn/c/5tQeP358RU+DmHM7hlz07t07jyX88MMP05133pmHW8Qc3TGn9j/+8Y+8fczxvffee6d333033y4uDz/8cMVres455+SAJYZuxJCNyq9JTOP1k5/8JLVr1y7P7X3dddcVeh7EsrPPPju/B/HY77//ftp1113zPnfv3j0NGjRorvOZAwAsasICgDrWjCqmu9pw0Ij0WKO10w33P5Xnh44D5DgQjbmqo7t1DCuIpjuVxfXK80THdlWVhinEvNcROFS979ro8ssvz3Ngv/DCC/n6nnvuWehpEGFBrI8hFmPGjEk///nP0wknnJCrJw499NC0yy675OaF8RxvvPHGtPLKK6cvvvgiXzbffPN8X2+99Vb6+OOP06OPPpoefPDBdN9991VUZbz88st5KMchhxySX7OYN/x3v/tduv/++/P6CAFiSMe///3vPPf3U089lU488cQcRsRtR4wYkftHPPfcczX2GgIAVCUsAKhDQUHfIaPSE2MmpfGfTU5/v/PmtO/Vz6bpS6+Yfvvb3+bmhS+++GLedquttkpXXHFFmj59esXZ9zjYj7Pf8xIHrnFmPLpgr7vuurPcd20TZ+XjzH3nzp3TlVdemQ/GIwgoGTx4cO5D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eCN17Ngx9erVKzVq1Mg7QI2aPn16euWVV9LHH3+cunfvnlZbbTXvCLXKQw89lCZNmpR22223tMQSS9T07kB666230ptvvpk/L31mUht88skn6eWXX07ffPNN6tGjR+rWrVtN7xILibBgITn99NPTVVddlf/xNG3aND311FPppJNOSqeccsrCekgoGDBgQLruuuvSRhttlF599dW0+uqrp3vvvTe1aNHCK0WNuPvuu9MJJ5yQWrZsmZZffvn05JNPps022yzdeuutDsqoFUaMGJF22WWX/AU4Ai0hPzVpypQpqV+/funhhx9Om266afrwww/ThhtumC6//HJvDDXmyiuvTMcdd1xaf/31U6tWrdIjjzySw9Xrr78+NW6saL2+8Y4uJJ06dcopcPwDii8fd955Z/r973+fQwNY2IYNG5b+8pe/pMceeyw98MAD6Z///Gd6++2305lnnunFp8bE5DsPPvhgeuGFF3Jw9frrr+fPxD//+c/eFWrcxIkT08EHH5z/r4ba4NBDD82fk1FZ8H//93/5s3P77bev6d2iAYsg9eijj06nnXZa/o4Z/5dH8H/jjTemf/zjHzW9eywEwoKF5JBDDklLLbVUxfUddtghNW/ePJfswMJ2ww03pC222CKtt956+Xrbtm3T/vvvn5dDTYkzD126dKm4HsNjovLF5yK1IciKz8gjjzwy/ehHP6rp3YH03nvvpVtuuSWH/O3atat4RXbddVevDjU6lHDmzJlppZVWqlgWv8cw12+//dY7Uw8JCxaROHv29ddfp7XWWmtRPSQN2GuvvTbL39raa6+dxo0bl7744osa2y+o7KuvvkrPPPOMz0Vq3DnnnJPPmMUwGagNHn/88Rxibb311unpp5/OZ3Dffffdmt4tGrg4EXr++efnYdUXXnhhuvrqq3OAtc8++6Sdd965pnePhUDPgmqKMu64zE2cyW3fvv0syz///PN04IEHph133DGPz4WF7csvv0xt2rQpLFt22WXzzwgLll56aW8CNSq+BPfv3z/3dImSRqgpzz77bDr33HPT888/b7wttWpYzJJLLpkrXiZMmJD/D4+y7+hhEMMMoaasueaaqVmzZumOO+7IPYjGjh2b9thjj9SkSRNvSj0kLKim6D8Q48DnJs7kVg0LysrK8hCEODi7+eabv/87BfMhPsTjrG1lpeu6e1MbHHPMMXl848iRI/MwGagpEVrF2duoAIxLzNZRasgZzeTWXXddbw6LXPxfPXXq1FwVeM899+RlMcNW79690zbbbJP23HNP7wqL3EcffZR22mmnXF1wxBFH5GUx61YMe42GsH379vWu1DPCgmr62c9+li/zO3ViNKKJ8T3R5DA6hsKi0LVr1/T+++8Xlv373//OMyHMrvoFFqVf//rXuX9GfC727NnTi0+N2njjjdOnn35acUJg/Pjx+efw4cNzya2wgJr6fzxUDgWin8bKK6+cGx0KC6gJMXQwhmztvffeFctitq04YRqzdggL6h9hwUISZ3EjKIhmH9H9W9k3i1IMeRk0aFAOrKJELEq+b7/99lzlEk1ooKbEdEtDhw7Nn4sayVEbXHbZZYXr999/f3r00UdzqbepE6kpm2++eT7JFJWtMUVdaYhhTOnZuXNnbww1ovS3F9UEm2yySf49KmDihFQ0Mab+aVQeRxEscFtuuWXFOMjKQUGM84mSMljYczNHqWJ80YjxjlHqHQdno0aNSj169PDiUyMiwDr55JNzE7nKQUEMQ4gycKgNIiyIYDUOyoQF1KRoHnfiiSem3/zmN/lz8pprrskno+L7ZVQKwqIWh43RyDCGax177LH5e+b111+f3nnnnTyzkerV+kdYsJBEQ8Mo06kqGoBULt2BhSX6ZVx++eU5/Y0p6mJcbpQvQk0577zz0nPPPTfL8u7du6czzjijRvYJqoovwWeddVa68sorU+vWrb1A1KhoanjbbbeladOm5WFbBx98cJ6KG2rKjBkz8rSecQIqjnXiJNRBBx2UlllmGW9KPSQsAAAAAAoaF68CAAAADZ2wAAAAACgQFgAAAAAFwgIAAACgQFgAAAAAFAgLAAAAgAJhAQAAAFAgLAAAAAAKhAUAAABAgbAAAAAAKBAWAAAAAAXCAgAAACBV9v8BU/wvGn5TO9sAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 1200x900 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# Collect words from Google Analogy dataset\n",
    "SUB_CATEGORY = \": family\"\n",
    "\n",
    "# TODO7: Plot t-SNE for the words in the SUB_CATEGORY `: family`\n",
    "family_words = sorted({w for q in data[data[\"SubCategory\"] == SUB_CATEGORY][\"Question\"]\n",
    "                       for w in q.lower().split()})\n",
    "family_words = [w for w in family_words if w in my_wv.key_to_index]\n",
    "vectors = np.array([my_wv[w] for w in family_words])\n",
    "# t-SNE：把 100 維壓成 2 維。字只有幾十個，所以 perplexity 要調小（必須小於樣本數）。\n",
    "points = TSNE(n_components=2, perplexity=15, random_state=42, init=\"pca\").fit_transform(vectors)\n",
    "plt.figure(figsize=(12, 9))\n",
    "plt.scatter(points[:, 0], points[:, 1], s=15)\n",
    "for (x, y), w in zip(points, family_words):\n",
    "    plt.annotate(w, (x, y), fontsize=9)\n",
    "\n",
    "\n",
    "plt.title(\"Word Relationships from Google Analogy Task\")\n",
    "plt.show()\n",
    "plt.savefig(\"word_relationships.png\", bbox_inches=\"tight\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1bab848c",
   "metadata": {},
   "source": [
    "Running environment:\n",
    "\n",
    "Python version:\n",
    "\n",
    "##### 1. Which embedding model do you use? What are the pre-processing steps? What are the hyperparameter settings? (5%)\n",
    "\n",
    "Answer: \n",
    "\n",
    "##### 2. What will the performance be like if you sample 5%, 10% and 20% of wiki text in TODO4? (10%, 3% for each)\n",
    "\n",
    "Answer: \n",
    "\n",
    "##### 3. What is the performance for different categories or sub-categories when trained on different corpora? (15%)\n",
    "\n",
    "3.1. Present your results. (5%)\n",
    "\n",
    "Answer: \n",
    "\n",
    "3.2. Introduce the corpus you selected and explain what are the differences between the Wikipedia corpus and your corpus. (including data size, topic difference, structural difference … ) (5%)\n",
    "\n",
    "Answer: \n",
    "\n",
    "3.3. Explain why the performance increases or decreases. (5%)\n",
    "\n",
    "Answer: \n",
    "\n",
    "##### 4. Select a few words and use their embeddings to retrieve the five most similar words. What do you observe?  (10%)\n",
    "\n",
    "Answer: \n",
    "\n",
    "##### 5. … Anything that can strengthen your report.  (5%)\n",
    "\n",
    "Answer: \n",
    "\n",
    "##### 6. Generative AI Usage\n",
    "\n",
    "Answer:\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ed47849f",
   "metadata": {},
   "source": [
    "## Code For 3. What is the performance for different categories or sub-categories when trained on different corpora? (15%)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "92abd4e0",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:22:24.167327Z",
     "iopub.status.busy": "2026-10-04T08:22:24.166327Z",
     "iopub.status.idle": "2026-10-04T08:26:21.729203Z",
     "shell.execute_reply": "2026-10-04T08:26:21.729203Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "GloVe (pre-trained): overall 63.11%  (OOV questions 0)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Wiki 20%: overall 48.21%  (OOV questions 0)\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 共用工具：用任何一份詞向量考一次試。\n",
    "# 每題一次拿前 10 名候選字，記下正確答案排第幾名（之後算 top-k、做錯題分析都用得到）。\n",
    "results, details, models = {}, {}, {}\n",
    "\n",
    "def evaluate(wv, name, method=\"add\", max_k=10):\n",
    "    sim = wv.most_similar if method == \"add\" else wv.most_similar_cosmul\n",
    "    ranks, preds, oov = [], [], 0\n",
    "    for q in data[\"Question\"]:\n",
    "        a, b, c, d = q.lower().split()\n",
    "        if all(w in wv.key_to_index for w in (a, b, c)):\n",
    "            cands = [w for w, _ in sim(positive=[b, c], negative=[a], topn=max_k)]\n",
    "            preds.append(cands[0])\n",
    "            ranks.append(cands.index(d) + 1 if d in cands else None)\n",
    "        else:\n",
    "            preds.append(None)\n",
    "            ranks.append(None)\n",
    "            oov += 1\n",
    "    hits = np.array([r == 1 for r in ranks])\n",
    "    res = {\"Overall\": hits.mean() * 100}\n",
    "    for col in [\"Category\", \"SubCategory\"]:\n",
    "        for v in data[col].unique():\n",
    "            res[v] = hits[(data[col] == v).values].mean() * 100\n",
    "    res[\"OOV questions\"] = oov\n",
    "    results[name], details[name] = res, {\"ranks\": ranks, \"preds\": preds}\n",
    "    print(f\"{name}: overall {res['Overall']:.2f}%  (OOV questions {oov})\")\n",
    "    return res\n",
    "\n",
    "def answer_coverage(wv):\n",
    "    # 每個小類裡，四個字全部都在字典裡的題目佔幾 %（答案不在字典裡，再聰明也答不對）\n",
    "    ok = data[\"Question\"].map(lambda q: all(w in wv.key_to_index for w in q.lower().split()))\n",
    "    return ok.groupby(data[\"SubCategory\"], sort=False).mean().mul(100).round(1)\n",
    "\n",
    "models[\"GloVe (pre-trained)\"], models[\"Wiki 20%\"] = model, my_wv\n",
    "_ = evaluate(model, \"GloVe (pre-trained)\")\n",
    "_ = evaluate(my_wv, \"Wiki 20%\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "f446eac9",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:26:21.789832Z",
     "iopub.status.busy": "2026-10-04T08:26:21.788826Z",
     "iopub.status.idle": "2026-10-04T08:26:22.255209Z",
     "shell.execute_reply": "2026-10-04T08:26:22.255209Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "keys: ['RelComments', 'RelQuestion', 'THREAD_SEQUENCE'] | question keys: ['RELQ_DATE', 'RELQ_ID', 'RelQSubject', 'RELQ_USERNAME', 'RELQ_USERID', 'RelQBody', 'RELQ_CATEGORY']\n",
      "subject: Thailand:IT Minsitry blocks CNN; Facebook;\n",
      "first comment: have they blocked porn??? <img src=\"http://www.qatarliving.com/files/images/Da.gif\">\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 3 題：換一份「不是維基百科」的語料。\n",
    "# 選的是 SemEval 2016/2017 Task 3 的論壇問答：卡達生活論壇（Qatar Living）網友的發問與留言，gensim-data 可以直接下載。\n",
    "# 注意：gensim 幫這份資料附的讀檔程式用了舊版 smart_open 的寫法，新版會 ImportError。\n",
    "#       所以只用 gensim 下載（return_path=True 只回傳檔案位置），讀檔自己來：每一行是一個討論串的 JSON。\n",
    "import gensim.downloader, itertools, json\n",
    "from gensim.utils import simple_preprocess\n",
    "\n",
    "FORUM_PATH = gensim.downloader.load(\"semeval-2016-2017-task3-subtaskA-unannotated\", return_path=True)\n",
    "\n",
    "def iter_threads():\n",
    "    with gzip.open(FORUM_PATH, \"rt\", encoding=\"utf-8\") as f:\n",
    "        for line in f:\n",
    "            yield json.loads(line)\n",
    "\n",
    "def thread_texts(thread):\n",
    "    # 只拿真正的文字：發問標題、發問內容、每一則留言。使用者名稱、日期、編號都不要。\n",
    "    q = thread.get(\"RelQuestion\", {})\n",
    "    yield q.get(\"RelQSubject\") or \"\"\n",
    "    yield q.get(\"RelQBody\") or \"\"\n",
    "    for c in thread.get(\"RelComments\", []):\n",
    "        yield c.get(\"RelCText\") or \"\"\n",
    "\n",
    "first = next(iter_threads())\n",
    "print(\"keys:\", list(first.keys()), \"| question keys:\", list(first[\"RelQuestion\"].keys()))\n",
    "print(\"subject:\", first[\"RelQuestion\"].get(\"RelQSubject\"))\n",
    "print(\"first comment:\", first[\"RelComments\"][0][\"RelCText\"][:200])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "c4ab3eea",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:26:22.313147Z",
     "iopub.status.busy": "2026-10-04T08:26:22.312140Z",
     "iopub.status.idle": "2026-10-04T08:28:36.359131Z",
     "shell.execute_reply": "2026-10-04T08:28:36.359131Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "forum: 189,941 threads, 2,118,254 posts, 72,919,300 tokens\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "5% wiki tokens: 166,194,401\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "wiki control: 72,920,923 tokens\n"
     ]
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 用跟維基百科一樣的規則前處理：先拿掉網頁語法和網址，再小寫、只留 2～15 個字母的英文字（WikiCorpus 的預設）。\n",
    "HTML_URL_RE = re.compile(r\"<[^>]+>|https?://\\S+|www\\.\\S+\")\n",
    "forum_tokens = forum_lines = n_threads = 0\n",
    "with open(\"forum_clean.txt\", \"w\", encoding=\"utf-8\", newline=\"\\n\") as fout:\n",
    "    for thread in iter_threads():\n",
    "        n_threads += 1\n",
    "        for text in thread_texts(thread):\n",
    "            text = HTML_URL_RE.sub(\" \", text)\n",
    "            toks = [w for w in simple_preprocess(text, min_len=2, max_len=15) if TOKEN_RE.match(w)]\n",
    "            if len(toks) >= 3:\n",
    "                fout.write(\" \".join(toks) + \"\\n\")\n",
    "                forum_tokens += len(toks)\n",
    "                forum_lines += 1\n",
    "print(f\"forum: {n_threads:,} threads, {forum_lines:,} posts, {forum_tokens:,} tokens\")\n",
    "\n",
    "# 對照組：從維基 5% 裡依序拿文章，拿到「字數跟論壇一樣多」就停。\n",
    "# 這樣兩份資料一樣大，分數的差別就只剩「內容種類」造成的。\n",
    "n5 = preprocess_file(\"wiki_sampled_5.txt\", \"wiki_sampled_5_clean.txt\")\n",
    "print(f\"5% wiki tokens: {n5:,}\")\n",
    "ctrl_tokens = 0\n",
    "with open(\"wiki_sampled_5_clean.txt\", encoding=\"utf-8\") as fin, open(\"wiki_control_clean.txt\", \"w\", encoding=\"utf-8\", newline=\"\\n\") as fout:\n",
    "    for line in fin:\n",
    "        if ctrl_tokens >= forum_tokens:\n",
    "            break\n",
    "        fout.write(line)\n",
    "        ctrl_tokens += len(line.split())\n",
    "print(f\"wiki control: {ctrl_tokens:,} tokens\")\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "id": "e2d8d5be",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:28:36.422957Z",
     "iopub.status.busy": "2026-10-04T08:28:36.422957Z",
     "iopub.status.idle": "2026-10-04T08:37:43.458264Z",
     "shell.execute_reply": "2026-10-04T08:37:43.457258Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "trained on forum_clean.txt: 3.6 min, vocab 100,310\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "trained on wiki_control_clean.txt: 4.0 min, vocab 224,050\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Forum (same size): overall 26.01%  (OOV questions 3510)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Wiki control (same size): overall 41.98%  (OOV questions 169)\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Wiki control (same size)</th>\n",
       "      <th>Forum (same size)</th>\n",
       "      <th>Wiki 20%</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Overall</th>\n",
       "      <td>41.98</td>\n",
       "      <td>26.01</td>\n",
       "      <td>48.21</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Semantic</th>\n",
       "      <td>46.95</td>\n",
       "      <td>12.88</td>\n",
       "      <td>56.09</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Syntactic</th>\n",
       "      <td>37.85</td>\n",
       "      <td>36.92</td>\n",
       "      <td>41.66</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: capital-common-countries</th>\n",
       "      <td>79.05</td>\n",
       "      <td>34.19</td>\n",
       "      <td>77.47</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: capital-world</th>\n",
       "      <td>55.02</td>\n",
       "      <td>12.82</td>\n",
       "      <td>72.57</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: currency</th>\n",
       "      <td>6.35</td>\n",
       "      <td>1.27</td>\n",
       "      <td>9.24</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: city-in-state</th>\n",
       "      <td>36.12</td>\n",
       "      <td>2.59</td>\n",
       "      <td>34.25</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: family</th>\n",
       "      <td>65.02</td>\n",
       "      <td>62.06</td>\n",
       "      <td>74.11</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram1-adjective-to-adverb</th>\n",
       "      <td>9.38</td>\n",
       "      <td>12.30</td>\n",
       "      <td>16.03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram2-opposite</th>\n",
       "      <td>9.61</td>\n",
       "      <td>13.05</td>\n",
       "      <td>16.87</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram3-comparative</th>\n",
       "      <td>52.70</td>\n",
       "      <td>66.82</td>\n",
       "      <td>45.95</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram4-superlative</th>\n",
       "      <td>17.47</td>\n",
       "      <td>41.71</td>\n",
       "      <td>26.20</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram5-present-participle</th>\n",
       "      <td>31.82</td>\n",
       "      <td>51.99</td>\n",
       "      <td>32.39</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram6-nationality-adjective</th>\n",
       "      <td>76.42</td>\n",
       "      <td>20.95</td>\n",
       "      <td>80.61</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram7-past-tense</th>\n",
       "      <td>41.67</td>\n",
       "      <td>34.81</td>\n",
       "      <td>43.85</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram8-plural</th>\n",
       "      <td>35.51</td>\n",
       "      <td>40.62</td>\n",
       "      <td>42.49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram9-plural-verbs</th>\n",
       "      <td>33.45</td>\n",
       "      <td>44.48</td>\n",
       "      <td>41.84</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OOV questions</th>\n",
       "      <td>169.00</td>\n",
       "      <td>3510.00</td>\n",
       "      <td>0.00</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                               Wiki control (same size)  Forum (same size)  \\\n",
       "Overall                                           41.98              26.01   \n",
       "Semantic                                          46.95              12.88   \n",
       "Syntactic                                         37.85              36.92   \n",
       ": capital-common-countries                        79.05              34.19   \n",
       ": capital-world                                   55.02              12.82   \n",
       ": currency                                         6.35               1.27   \n",
       ": city-in-state                                   36.12               2.59   \n",
       ": family                                          65.02              62.06   \n",
       ": gram1-adjective-to-adverb                        9.38              12.30   \n",
       ": gram2-opposite                                   9.61              13.05   \n",
       ": gram3-comparative                               52.70              66.82   \n",
       ": gram4-superlative                               17.47              41.71   \n",
       ": gram5-present-participle                        31.82              51.99   \n",
       ": gram6-nationality-adjective                     76.42              20.95   \n",
       ": gram7-past-tense                                41.67              34.81   \n",
       ": gram8-plural                                    35.51              40.62   \n",
       ": gram9-plural-verbs                              33.45              44.48   \n",
       "OOV questions                                    169.00            3510.00   \n",
       "\n",
       "                               Wiki 20%  \n",
       "Overall                           48.21  \n",
       "Semantic                          56.09  \n",
       "Syntactic                         41.66  \n",
       ": capital-common-countries        77.47  \n",
       ": capital-world                   72.57  \n",
       ": currency                         9.24  \n",
       ": city-in-state                   34.25  \n",
       ": family                          74.11  \n",
       ": gram1-adjective-to-adverb       16.03  \n",
       ": gram2-opposite                  16.87  \n",
       ": gram3-comparative               45.95  \n",
       ": gram4-superlative               26.20  \n",
       ": gram5-present-participle        32.39  \n",
       ": gram6-nationality-adjective     80.61  \n",
       ": gram7-past-tense                43.85  \n",
       ": gram8-plural                    42.49  \n",
       ": gram9-plural-verbs              41.84  \n",
       "OOV questions                      0.00  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>coverage: wiki control</th>\n",
       "      <th>coverage: forum</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SubCategory</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>: capital-common-countries</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: capital-world</th>\n",
       "      <td>98.3</td>\n",
       "      <td>48.6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: currency</th>\n",
       "      <td>86.8</td>\n",
       "      <td>39.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: city-in-state</th>\n",
       "      <td>100.0</td>\n",
       "      <td>68.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: family</th>\n",
       "      <td>100.0</td>\n",
       "      <td>91.3</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram1-adjective-to-adverb</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram2-opposite</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram3-comparative</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram4-superlative</th>\n",
       "      <td>94.1</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram5-present-participle</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram6-nationality-adjective</th>\n",
       "      <td>100.0</td>\n",
       "      <td>95.1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram7-past-tense</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram8-plural</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>: gram9-plural-verbs</th>\n",
       "      <td>100.0</td>\n",
       "      <td>100.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "                               coverage: wiki control  coverage: forum\n",
       "SubCategory                                                           \n",
       ": capital-common-countries                      100.0            100.0\n",
       ": capital-world                                  98.3             48.6\n",
       ": currency                                       86.8             39.0\n",
       ": city-in-state                                 100.0             68.3\n",
       ": family                                        100.0             91.3\n",
       ": gram1-adjective-to-adverb                     100.0            100.0\n",
       ": gram2-opposite                                100.0            100.0\n",
       ": gram3-comparative                             100.0            100.0\n",
       ": gram4-superlative                              94.1            100.0\n",
       ": gram5-present-participle                      100.0            100.0\n",
       ": gram6-nationality-adjective                   100.0             95.1\n",
       ": gram7-past-tense                              100.0            100.0\n",
       ": gram8-plural                                  100.0            100.0\n",
       ": gram9-plural-verbs                            100.0            100.0"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "forum_model = train_w2v(\"forum_clean.txt\")\n",
    "ctrl_model = train_w2v(\"wiki_control_clean.txt\")\n",
    "models[\"Forum (same size)\"], models[\"Wiki control (same size)\"] = forum_model.wv, ctrl_model.wv\n",
    "evaluate(forum_model.wv, \"Forum (same size)\")\n",
    "evaluate(ctrl_model.wv, \"Wiki control (same size)\")\n",
    "\n",
    "cols = [\"Wiki control (same size)\", \"Forum (same size)\", \"Wiki 20%\"]\n",
    "display(pd.DataFrame({k: results[k] for k in cols}).round(2))\n",
    "# 答案覆蓋率：題目四個字都在字典裡的比例。覆蓋率低 = 很多題連答的機會都沒有。\n",
    "display(pd.DataFrame({\"coverage: wiki control\": answer_coverage(ctrl_model.wv),\n",
    "                      \"coverage: forum\": answer_coverage(forum_model.wv)}))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "id": "9f2c3908",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-10-04T08:37:43.546280Z",
     "iopub.status.busy": "2026-10-04T08:37:43.546280Z",
     "iopub.status.idle": "2026-10-04T08:37:43.590040Z",
     "shell.execute_reply": "2026-10-04T08:37:43.590040Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>word</th>\n",
       "      <th>corpus</th>\n",
       "      <th>top 5</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>visa</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>visas, passport, passports, bdtc, retransfer</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>visa</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>rp, viza, iqama, vissa, residence</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>salary</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>salaries, refund, repayment, remuneration, paid</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>salary</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>slary, salry, sallary, salery, salaray</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>doha</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>manama, qatar, muharraq, abbasiyyin, dhabi</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>doha</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>qatar, doah, qata, alkhore, masaieed</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>family</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>relatives, father, parents, grandparents, mother</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>family</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>familly, fmaily, rescidence, familiy, famliy</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>king</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>queen, prince, pretender, harefoot, harthacnut</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>king</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>edshel, ypsilanti, bhumibol, edsel, boorjer</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>paris</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>ferrand, marseille, brussels, france, lausanne</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>paris</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>amsterdam, france, bangkok, toronto, aires</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>computer</td>\n",
       "      <td>Wiki control (same size)</td>\n",
       "      <td>computers, software, mainframe, hardware, comp...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>computer</td>\n",
       "      <td>Forum (same size)</td>\n",
       "      <td>desktop, soundcard, computers, hardware, pc</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "        word                    corpus  \\\n",
       "0       visa  Wiki control (same size)   \n",
       "1       visa         Forum (same size)   \n",
       "2     salary  Wiki control (same size)   \n",
       "3     salary         Forum (same size)   \n",
       "4       doha  Wiki control (same size)   \n",
       "5       doha         Forum (same size)   \n",
       "6     family  Wiki control (same size)   \n",
       "7     family         Forum (same size)   \n",
       "8       king  Wiki control (same size)   \n",
       "9       king         Forum (same size)   \n",
       "10     paris  Wiki control (same size)   \n",
       "11     paris         Forum (same size)   \n",
       "12  computer  Wiki control (same size)   \n",
       "13  computer         Forum (same size)   \n",
       "\n",
       "                                                top 5  \n",
       "0        visas, passport, passports, bdtc, retransfer  \n",
       "1                   rp, viza, iqama, vissa, residence  \n",
       "2     salaries, refund, repayment, remuneration, paid  \n",
       "3              slary, salry, sallary, salery, salaray  \n",
       "4          manama, qatar, muharraq, abbasiyyin, dhabi  \n",
       "5                qatar, doah, qata, alkhore, masaieed  \n",
       "6    relatives, father, parents, grandparents, mother  \n",
       "7        familly, fmaily, rescidence, familiy, famliy  \n",
       "8      queen, prince, pretender, harefoot, harthacnut  \n",
       "9         edshel, ypsilanti, bhumibol, edsel, boorjer  \n",
       "10     ferrand, marseille, brussels, france, lausanne  \n",
       "11         amsterdam, france, bangkok, toronto, aires  \n",
       "12  computers, software, mainframe, hardware, comp...  \n",
       "13        desktop, soundcard, computers, hardware, pc  "
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 同一個字，在論壇和維基（一樣大小）學到的鄰居差在哪\n",
    "rows = []\n",
    "for w in [\"visa\", \"salary\", \"doha\", \"family\", \"king\", \"paris\", \"computer\"]:\n",
    "    for name in [\"Wiki control (same size)\", \"Forum (same size)\"]:\n",
    "        wv = models[name]\n",
    "        rows.append({\"word\": w, \"corpus\": name,\n",
    "                     \"top 5\": \", \".join(x for x, _ in wv.most_similar(w, topn=5)) if w in wv.key_to_index else \"(not in vocab)\"})\n",
    "display(pd.DataFrame(rows))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fa05e9fc",
   "metadata": {},
   "source": [
    "## Extra code for report question 2 (5% / 10% / 20%)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "6f1971ad",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 2 題：5%、10%、20%（助教說這題不用附程式，這裡附上是為了示範）\n",
    "n10 = preprocess_file(\"wiki_sampled_10.txt\", \"wiki_sampled_10_clean.txt\")\n",
    "print(f\"10% wiki tokens: {n10:,}\")\n",
    "for pct in [5, 10]:\n",
    "    m = train_w2v(f\"wiki_sampled_{pct}_clean.txt\")\n",
    "    models[f\"Wiki {pct}%\"] = m.wv\n",
    "    evaluate(m.wv, f\"Wiki {pct}%\")\n",
    "display(pd.DataFrame({k: results[k] for k in [\"Wiki 5%\", \"Wiki 10%\", \"Wiki 20%\"]}).round(2))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "53d369c6",
   "metadata": {},
   "source": [
    "## Extra code for report question 4 (most similar words)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "93753136",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 4 題：挑字，各找 5 個最像的字。同時看現成的 GloVe 和自己訓練的 Wiki 20%。\n",
    "# 挑字的原則：有一個字兩種意思（apple、bank）、反義詞（good）、專有名詞（taiwan）、一般名詞（cat、computer）、考卷裡的字（king）\n",
    "probe = [\"king\", \"cat\", \"apple\", \"bank\", \"good\", \"taiwan\", \"computer\"]\n",
    "rows = []\n",
    "for w in probe:\n",
    "    for name in [\"GloVe (pre-trained)\", \"Wiki 20%\"]:\n",
    "        wv = models[name]\n",
    "        if w in wv.key_to_index:\n",
    "            rows.append({\"word\": w, \"model\": name,\n",
    "                         \"top 5 (similarity)\": \", \".join(f\"{x} ({s:.2f})\" for x, s in wv.most_similar(w, topn=5))})\n",
    "pd.set_option(\"display.max_colwidth\", 200)\n",
    "display(pd.DataFrame(rows))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "488efd44",
   "metadata": {},
   "source": [
    "## Extra code for report question 5 (anything that strengthens the report)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "dcb95a2a",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (a)：前 k 名有猜中就算對，正確率會變多少？（老師說 queen 可能不是第一名，而是第二、三名）\n",
    "rows = {}\n",
    "for name in [\"GloVe (pre-trained)\", \"Wiki 20%\"]:\n",
    "    ranks = details[name][\"ranks\"]\n",
    "    rows[name] = {f\"top-{k}\": np.mean([r is not None and r <= k for r in ranks]) * 100 for k in [1, 3, 5, 10]}\n",
    "display(pd.DataFrame(rows).T.round(2))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "59ce5e75",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (b)：錯題分析——電腦答錯時，它到底猜了什麼？\n",
    "d20 = details[\"Wiki 20%\"]\n",
    "err = data.assign(pred=d20[\"preds\"], rank=d20[\"ranks\"],\n",
    "                  gold=data[\"Question\"].str.lower().str.split().str[3])\n",
    "wrong = err[err[\"pred\"] != err[\"gold\"]]\n",
    "print(\"wrong answers:\", len(wrong), \"of\", len(err))\n",
    "print(\"  OOV (question word not in vocab):\", int(wrong[\"pred\"].isna().sum()))\n",
    "print(\"  gold answer was 2nd-10th:\", int(wrong[\"rank\"].notna().sum()))\n",
    "for sub in [\": capital-world\", \": currency\", \": family\", \": gram3-comparative\", \": gram6-nationality-adjective\", \": gram8-plural\"]:\n",
    "    print(\"\\n\" + sub)\n",
    "    display(wrong[(wrong[\"SubCategory\"] == sub) & wrong[\"pred\"].notna()][[\"Question\", \"gold\", \"pred\", \"rank\"]].head(6))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "de4453ee",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (c)：為什麼不移除停用詞？先看考卷，再真的做實驗比較。\n",
    "import nltk\n",
    "nltk.download(\"stopwords\", quiet=True)\n",
    "from nltk.corpus import stopwords\n",
    "sw = set(stopwords.words(\"english\"))\n",
    "has_sw = data[\"Question\"].map(lambda q: any(w in sw for w in q.lower().split()))\n",
    "print(\"questions containing a stop word:\", int(has_sw.sum()))\n",
    "print(data[has_sw][\"SubCategory\"].value_counts())\n",
    "print(data[has_sw][\"Question\"].head(5).tolist())\n",
    "\n",
    "# 實驗：同樣是 5% 維基、同樣的參數，只差在「有沒有移除停用詞」\n",
    "with open(\"wiki_sampled_5_clean.txt\", encoding=\"utf-8\") as fin, open(\"wiki_sampled_5_nostop.txt\", \"w\", encoding=\"utf-8\", newline=\"\\n\") as fout:\n",
    "    for line in fin:\n",
    "        fout.write(\" \".join(w for w in line.split() if w not in sw) + \"\\n\")\n",
    "m = train_w2v(\"wiki_sampled_5_nostop.txt\")\n",
    "models[\"Wiki 5% (stop words removed)\"] = m.wv\n",
    "evaluate(m.wv, \"Wiki 5% (stop words removed)\")\n",
    "cols = [\"Wiki 5%\", \"Wiki 5% (stop words removed)\"]\n",
    "display(pd.DataFrame({k: results[k] for k in cols}).round(2))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "a993ee22",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (d)：超參數比較（都用 5% 維基，一次只改一個設定，其他跟主模型一樣）\n",
    "variants = {\n",
    "    \"Wiki 5% CBOW (sg=0)\": dict(sg=0),\n",
    "    \"Wiki 5% window=10\": dict(window=10),\n",
    "    \"Wiki 5% vector_size=300\": dict(vector_size=300),\n",
    "}\n",
    "for name, change in variants.items():\n",
    "    t = time.time()\n",
    "    m = Word2Vec(corpus_file=\"wiki_sampled_5_clean.txt\", **{**W2V_PARAMS, **change})\n",
    "    print(f\"{name}: trained in {(time.time() - t) / 60:.1f} min\")\n",
    "    models[name] = m.wv\n",
    "    evaluate(m.wv, name)\n",
    "cols = [\"Wiki 5%\"] + list(variants)\n",
    "display(pd.DataFrame({k: results[k] for k in cols}).round(2))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "83e568cc",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (e)：換一種「算答案」的公式。3CosAdd 是 b - a + c；3CosMul（Levy & Goldberg 2014）用乘除，\n",
    "# 比較不會被「某一個字特別像」帶走。同一份 Wiki 20% 詞向量，只換公式。\n",
    "evaluate(my_wv, \"Wiki 20% (3CosMul)\", method=\"cosmul\")\n",
    "display(pd.DataFrame({k: results[k] for k in [\"Wiki 20%\", \"Wiki 20% (3CosMul)\"]}).round(2))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e1bf7318",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (f)：同一批 family 字，用 PCA 和 t-SNE 兩種方法壓成 2 維，圖長得不一樣嗎？\n",
    "from sklearn.decomposition import PCA\n",
    "words = sorted({w for q in data[data[\"SubCategory\"] == \": family\"][\"Question\"] for w in q.lower().split()})\n",
    "words = [w for w in words if w in my_wv.key_to_index]\n",
    "vecs = np.array([my_wv[w] for w in words])\n",
    "fig, axes = plt.subplots(1, 2, figsize=(18, 8))\n",
    "for ax, (title, pts) in zip(axes, [\n",
    "        (\"PCA\", PCA(n_components=2, random_state=42).fit_transform(vecs)),\n",
    "        (\"t-SNE\", TSNE(n_components=2, perplexity=15, random_state=42, init=\"pca\").fit_transform(vecs))]):\n",
    "    ax.scatter(pts[:, 0], pts[:, 1], s=12)\n",
    "    for (x, y), w in zip(pts, words):\n",
    "        ax.annotate(w, (x, y), fontsize=8)\n",
    "    ax.set_title(f\"{title} (Wiki 20%, family)\")\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "330e6073",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 第 5 題 (g)：各小類「四個字都在字典裡」的比例：GloVe vs Wiki 20%\n",
    "display(pd.DataFrame({\"GloVe\": answer_coverage(model), \"Wiki 20%\": answer_coverage(my_wv)}))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "72afc8b6",
   "metadata": {},
   "source": [
    "## Summary of all results"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "f8b2f228",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "# 全部結果總表（報告引用的數字都來自這裡）\n",
    "pd.set_option(\"display.max_columns\", 30)\n",
    "display(pd.DataFrame(results).round(2))\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e8414fa8",
   "metadata": {},
   "source": [
    "## Running environment"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e9b3b212",
   "metadata": {},
   "outputs": [],
   "source": [
    "# [Generative AI] 本格程式由 Claude（Anthropic）產生，作為示範；不是要繳交的版本。\n",
    "import sys, platform, gensim, sklearn\n",
    "print(\"Python\", sys.version)\n",
    "print(platform.platform(), \"|\", platform.processor())\n",
    "print(\"gensim\", gensim.__version__, \"| numpy\", np.__version__, \"| pandas\", pd.__version__, \"| scikit-learn\", sklearn.__version__)\n"
   ]
  }
 ],
 "metadata": {
  "colab": {
   "provenance": []
  },
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "name": "python"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
