diff --git a/docs/encoders/huggingface-endpoint.ipynb b/docs/encoders/huggingface-endpoint.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..c5714142e5b204f7c88740aeccebe92db1cdf042
--- /dev/null
+++ b/docs/encoders/huggingface-endpoint.ipynb
@@ -0,0 +1,3354 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/aurelio-labs/semantic-router/blob/main/docs/encoders/huggingface-endpoint.ipynb) [![Open nbviewer](https://raw.githubusercontent.com/pinecone-io/examples/master/assets/nbviewer-shield.svg)](https://nbviewer.org/github/aurelio-labs/semantic-router/blob/main/docs/encoders/huggingface-endpoint.ipynb)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Using Huggingface endpoint"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "HuggingFace is a huge ecosystem of open source models. It can be run locally and supports the largest library of encoders."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Getting Started"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "We start by installing semantic-router."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# !pip install -qU semantic-router==0.0.20"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "We start by defining a dictionary mapping routes to example phrases that should trigger those routes."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "d:\\Program_Installation\\anaconda\\envs\\testenv\\Lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
+      "  from .autonotebook import tqdm as notebook_tqdm\n"
+     ]
+    }
+   ],
+   "source": [
+    "from semantic_router import Route\n",
+    "\n",
+    "politics = Route(\n",
+    "    name=\"politics\",\n",
+    "    utterances=[\n",
+    "        \"isn't politics the best thing ever\",\n",
+    "        \"why don't you tell me about your political opinions\",\n",
+    "        \"don't you just love the president\",\n",
+    "        \"don't you just hate the president\",\n",
+    "        \"they're going to destroy this country!\",\n",
+    "        \"they will save the country!\",\n",
+    "    ],\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Let's define another for good measure:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "chitchat = Route(\n",
+    "    name=\"chitchat\",\n",
+    "    utterances=[\n",
+    "        \"how's the weather today?\",\n",
+    "        \"how are things going?\",\n",
+    "        \"lovely weather today\",\n",
+    "        \"the weather is horrendous\",\n",
+    "        \"let's go to the chippy\",\n",
+    "    ],\n",
+    ")\n",
+    "\n",
+    "routes = [politics, chitchat]"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Now we initialize our embedding model, we will use the Huggingface endpoint"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "d:\\Program_Installation\\anaconda\\envs\\testenv\\Lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
+      "  from .autonotebook import tqdm as notebook_tqdm\n",
+      "\u001b[32m2024-04-14 20:54:07 INFO semantic_router.utils.logger Model Initializing wait for - 26.81s \u001b[0m\n"
+     ]
+    }
+   ],
+   "source": [
+    "import os\n",
+    "from getpass import getpass\n",
+    "from semantic_router.encoders.huggingface import HFEndpointEncoder\n",
+    "\n",
+    "huggingface_url = os.getenv(\"HF_API_URL\") or getpass(\"Enter HuggingFace API URL: \")\n",
+    "huggingface_api_key = os.getenv(\"HF_API_KEY\") or getpass(\"Enter HuggingFace API Key: \")\n",
+    "\n",
+    "encoder = HFEndpointEncoder(\n",
+    "    huggingface_url=huggingface_url,\n",
+    "    huggingface_api_key=huggingface_api_key,\n",
+    ")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[[-0.351535439491272,\n",
+       "  -0.0007503691595047712,\n",
+       "  0.22843779623508453,\n",
+       "  0.1197630763053894,\n",
+       "  -0.9190473556518555,\n",
+       "  0.4975742697715759,\n",
+       "  0.08101634681224823,\n",
+       "  0.05379204452037811,\n",
+       "  0.1970519870519638,\n",
+       "  -0.0833292305469513,\n",
+       "  0.36685681343078613,\n",
+       "  0.004698676988482475,\n",
+       "  -0.19794942438602448,\n",
+       "  -0.33827024698257446,\n",
+       "  -0.24040493369102478,\n",
+       "  0.3189111649990082,\n",
+       "  -0.5002703666687012,\n",
+       "  -0.6781224012374878,\n",
+       "  -0.2871842384338379,\n",
+       "  0.0505770742893219,\n",
+       "  -0.03144306689500809,\n",
+       "  0.15773507952690125,\n",
+       "  -1.278083324432373,\n",
+       "  -0.2693241238594055,\n",
+       "  -0.11886045336723328,\n",
+       "  0.3414249122142792,\n",
+       "  0.5203899145126343,\n",
+       "  0.6207894682884216,\n",
+       "  0.6428499817848206,\n",
+       "  0.8519144058227539,\n",
+       "  -0.08569950610399246,\n",
+       "  0.32095733284950256,\n",
+       "  0.38129955530166626,\n",
+       "  -0.5376394391059875,\n",
+       "  -0.23925058543682098,\n",
+       "  -0.975605309009552,\n",
+       "  0.14065563678741455,\n",
+       "  0.08411094546318054,\n",
+       "  0.5871137976646423,\n",
+       "  -0.5853262543678284,\n",
+       "  -0.16012267768383026,\n",
+       "  -0.30777785181999207,\n",
+       "  0.32361841201782227,\n",
+       "  -0.5167716145515442,\n",
+       "  -0.6283416152000427,\n",
+       "  -0.040950220078229904,\n",
+       "  0.4034270942211151,\n",
+       "  -0.5306437015533447,\n",
+       "  0.1296883225440979,\n",
+       "  -0.8245601654052734,\n",
+       "  -0.24195696413516998,\n",
+       "  -0.5704426169395447,\n",
+       "  0.3505809009075165,\n",
+       "  -0.033617936074733734,\n",
+       "  0.338241308927536,\n",
+       "  0.05172817409038544,\n",
+       "  0.1608736217021942,\n",
+       "  0.06910604983568192,\n",
+       "  -0.6235120892524719,\n",
+       "  0.8605656623840332,\n",
+       "  0.18825599551200867,\n",
+       "  0.26032543182373047,\n",
+       "  0.4893842935562134,\n",
+       "  -0.28306061029434204,\n",
+       "  -0.01022877637296915,\n",
+       "  0.2018183022737503,\n",
+       "  0.0314965546131134,\n",
+       "  -0.40636199712753296,\n",
+       "  0.2871060371398926,\n",
+       "  -0.5569078326225281,\n",
+       "  0.12462319433689117,\n",
+       "  0.24766811728477478,\n",
+       "  -0.6712727546691895,\n",
+       "  -0.34486064314842224,\n",
+       "  -0.2843998074531555,\n",
+       "  0.2237756997346878,\n",
+       "  -0.10615847259759903,\n",
+       "  -0.4099731743335724,\n",
+       "  -0.4892323613166809,\n",
+       "  0.7918497323989868,\n",
+       "  0.121148020029068,\n",
+       "  0.8321442008018494,\n",
+       "  0.3077283203601837,\n",
+       "  0.174817755818367,\n",
+       "  -0.673957109451294,\n",
+       "  -0.10718388855457306,\n",
+       "  -0.020176205784082413,\n",
+       "  0.44770675897598267,\n",
+       "  0.14065337181091309,\n",
+       "  0.011919533833861351,\n",
+       "  -0.09472586214542389,\n",
+       "  0.42185404896736145,\n",
+       "  -0.08556605130434036,\n",
+       "  -0.003908890299499035,\n",
+       "  0.4729606807231903,\n",
+       "  1.0341724157333374,\n",
+       "  -0.4871886670589447,\n",
+       "  0.7629178762435913,\n",
+       "  -0.7858189344406128,\n",
+       "  0.7404838800430298,\n",
+       "  -0.09609171003103256,\n",
+       "  0.33085229992866516,\n",
+       "  -0.07759019732475281,\n",
+       "  0.608190655708313,\n",
+       "  -0.7358576655387878,\n",
+       "  -0.46256259083747864,\n",
+       "  0.17247380316257477,\n",
+       "  0.47123825550079346,\n",
+       "  -0.07190967351198196,\n",
+       "  -0.3706129789352417,\n",
+       "  0.6815729141235352,\n",
+       "  0.10979508608579636,\n",
+       "  0.01968960091471672,\n",
+       "  0.3837202191352844,\n",
+       "  -0.37777477502822876,\n",
+       "  0.296452134847641,\n",
+       "  -0.47000813484191895,\n",
+       "  0.6567757725715637,\n",
+       "  -0.4787653982639313,\n",
+       "  0.10389051586389542,\n",
+       "  -0.13098134100437164,\n",
+       "  0.06771161407232285,\n",
+       "  0.9172448515892029,\n",
+       "  0.7513774037361145,\n",
+       "  -0.3587314188480377,\n",
+       "  -0.07944370806217194,\n",
+       "  -0.3190295696258545,\n",
+       "  0.35680150985717773,\n",
+       "  -0.7315585017204285,\n",
+       "  -0.2934412658214569,\n",
+       "  -0.29015278816223145,\n",
+       "  -0.6571040153503418,\n",
+       "  0.3849678337574005,\n",
+       "  0.37416988611221313,\n",
+       "  0.07331178337335587,\n",
+       "  0.22313304245471954,\n",
+       "  -0.0582025870680809,\n",
+       "  0.48670142889022827,\n",
+       "  0.5369858145713806,\n",
+       "  -0.7363126277923584,\n",
+       "  0.408779501914978,\n",
+       "  0.08013352751731873,\n",
+       "  0.32343122363090515,\n",
+       "  1.1921049356460571,\n",
+       "  -0.33595478534698486,\n",
+       "  0.7817761898040771,\n",
+       "  0.09240103513002396,\n",
+       "  0.747512936592102,\n",
+       "  -0.975735068321228,\n",
+       "  -0.46965065598487854,\n",
+       "  -0.5060147047042847,\n",
+       "  0.315020889043808,\n",
+       "  -0.8111321330070496,\n",
+       "  0.1700848788022995,\n",
+       "  -0.44967469573020935,\n",
+       "  0.2730434238910675,\n",
+       "  -0.28182634711265564,\n",
+       "  -0.11358585953712463,\n",
+       "  0.3349793255329132,\n",
+       "  0.6125620603561401,\n",
+       "  -1.1185657978057861,\n",
+       "  -0.23598258197307587,\n",
+       "  0.11817905306816101,\n",
+       "  0.14007949829101562,\n",
+       "  -0.1342378556728363,\n",
+       "  0.6637296080589294,\n",
+       "  -0.34339287877082825,\n",
+       "  0.37832096219062805,\n",
+       "  -0.20260536670684814,\n",
+       "  -0.42285487055778503,\n",
+       "  0.3214675784111023,\n",
+       "  0.3772791922092438,\n",
+       "  0.13906392455101013,\n",
+       "  -0.15471051633358002,\n",
+       "  0.1717817336320877,\n",
+       "  0.6878579258918762,\n",
+       "  0.4495076835155487,\n",
+       "  0.42458420991897583,\n",
+       "  0.6390083432197571,\n",
+       "  -0.18033525347709656,\n",
+       "  0.26399803161621094,\n",
+       "  -0.2000855803489685,\n",
+       "  0.1517951339483261,\n",
+       "  0.5062836408615112,\n",
+       "  0.16540852189064026,\n",
+       "  -0.5752784013748169,\n",
+       "  0.3921325206756592,\n",
+       "  0.3396417498588562,\n",
+       "  -0.5016378164291382,\n",
+       "  -0.1977510303258896,\n",
+       "  -0.37614500522613525,\n",
+       "  -0.0459459163248539,\n",
+       "  -0.8561480641365051,\n",
+       "  0.41308894753456116,\n",
+       "  -0.2559718191623688,\n",
+       "  0.33978575468063354,\n",
+       "  -1.0577623844146729,\n",
+       "  -0.4702085852622986,\n",
+       "  -0.15038155019283295,\n",
+       "  -0.417285680770874,\n",
+       "  -0.10158014297485352,\n",
+       "  1.085134506225586,\n",
+       "  -0.5067138075828552,\n",
+       "  0.3239610493183136,\n",
+       "  0.5427021384239197,\n",
+       "  -0.4705069065093994,\n",
+       "  0.564260721206665,\n",
+       "  0.662142813205719,\n",
+       "  -0.674139142036438,\n",
+       "  -0.05586134269833565,\n",
+       "  0.41527360677719116,\n",
+       "  0.3268394470214844,\n",
+       "  -0.15188544988632202,\n",
+       "  0.2864024043083191,\n",
+       "  -0.058077551424503326,\n",
+       "  0.7025948762893677,\n",
+       "  -0.2740480601787567,\n",
+       "  0.4234461784362793,\n",
+       "  -0.8005895018577576,\n",
+       "  0.3397463858127594,\n",
+       "  0.5496795773506165,\n",
+       "  0.10069300979375839,\n",
+       "  0.6318082213401794,\n",
+       "  1.220789909362793,\n",
+       "  0.12347802519798279,\n",
+       "  0.2145691066980362,\n",
+       "  0.5473058819770813,\n",
+       "  0.58868008852005,\n",
+       "  0.5263211131095886,\n",
+       "  -0.39429542422294617,\n",
+       "  -0.12528102099895477,\n",
+       "  0.21609920263290405,\n",
+       "  -0.3399151563644409,\n",
+       "  0.6400638818740845,\n",
+       "  -0.385766863822937,\n",
+       "  -0.0837368443608284,\n",
+       "  0.19966909289360046,\n",
+       "  0.6031802892684937,\n",
+       "  0.6655975580215454,\n",
+       "  -0.06525135785341263,\n",
+       "  0.421434223651886,\n",
+       "  -0.11338674277067184,\n",
+       "  0.6240838766098022,\n",
+       "  0.2370661199092865,\n",
+       "  -0.28858521580696106,\n",
+       "  0.018270932137966156,\n",
+       "  0.16613556444644928,\n",
+       "  0.5155487060546875,\n",
+       "  -0.7947002649307251,\n",
+       "  0.43162399530410767,\n",
+       "  -0.2558012008666992,\n",
+       "  0.322053998708725,\n",
+       "  0.2850834131240845,\n",
+       "  0.6699681282043457,\n",
+       "  -0.7805972695350647,\n",
+       "  -0.0967356339097023,\n",
+       "  0.26844969391822815,\n",
+       "  0.25309741497039795,\n",
+       "  -0.040921133011579514,\n",
+       "  -0.2745266258716583,\n",
+       "  -0.2656719386577606,\n",
+       "  0.7735238671302795,\n",
+       "  0.36282986402511597,\n",
+       "  0.3531838059425354,\n",
+       "  -0.018144357949495316,\n",
+       "  0.2762523889541626,\n",
+       "  0.292710542678833,\n",
+       "  0.7624996900558472,\n",
+       "  0.4032532572746277,\n",
+       "  -0.47754618525505066,\n",
+       "  -0.15234309434890747,\n",
+       "  -0.646909236907959,\n",
+       "  -0.6886371970176697,\n",
+       "  -0.4359741806983948,\n",
+       "  -0.3814290761947632,\n",
+       "  -0.14441734552383423,\n",
+       "  0.8817673921585083,\n",
+       "  -0.07520444691181183,\n",
+       "  0.2902243137359619,\n",
+       "  -0.0363328754901886,\n",
+       "  -0.09644324332475662,\n",
+       "  -0.2702822685241699,\n",
+       "  -0.0903836041688919,\n",
+       "  -0.07166784256696701,\n",
+       "  0.4520867168903351,\n",
+       "  0.7583602070808411,\n",
+       "  -0.17694738507270813,\n",
+       "  -0.1802419275045395,\n",
+       "  0.036734264343976974,\n",
+       "  0.5039187073707581,\n",
+       "  -0.3738216459751129,\n",
+       "  -0.2462330311536789,\n",
+       "  -0.16176871955394745,\n",
+       "  -0.09859970211982727,\n",
+       "  -0.24951350688934326,\n",
+       "  -0.2699921429157257,\n",
+       "  -0.6594424843788147,\n",
+       "  0.051325127482414246,\n",
+       "  -0.6931187510490417,\n",
+       "  -1.0771921873092651,\n",
+       "  0.5300352573394775,\n",
+       "  -0.26480865478515625,\n",
+       "  -0.21046501398086548,\n",
+       "  -0.7360295057296753,\n",
+       "  -0.5392773151397705,\n",
+       "  0.07280915975570679,\n",
+       "  0.3488386273384094,\n",
+       "  -0.3438490033149719,\n",
+       "  0.9271075129508972,\n",
+       "  0.8084055185317993,\n",
+       "  -0.43852490186691284,\n",
+       "  0.377078652381897,\n",
+       "  0.5122473835945129,\n",
+       "  0.5148366093635559,\n",
+       "  -0.6005906462669373,\n",
+       "  0.5307503342628479,\n",
+       "  -0.11821816861629486,\n",
+       "  0.1444067656993866,\n",
+       "  -1.4041671752929688,\n",
+       "  -0.14894679188728333,\n",
+       "  -0.4679705500602722,\n",
+       "  -0.4729899764060974,\n",
+       "  -0.3515671491622925,\n",
+       "  -1.0960698127746582,\n",
+       "  -0.046922557055950165,\n",
+       "  0.47342783212661743,\n",
+       "  0.7556535601615906,\n",
+       "  -1.0950236320495605,\n",
+       "  0.2015274316072464,\n",
+       "  -0.4315618872642517,\n",
+       "  -0.8300988078117371,\n",
+       "  -0.18433940410614014,\n",
+       "  -0.9175993800163269,\n",
+       "  0.9776148796081543,\n",
+       "  -0.07103785127401352,\n",
+       "  0.16896787285804749,\n",
+       "  -0.12059900909662247,\n",
+       "  -0.24394500255584717,\n",
+       "  0.44257596135139465,\n",
+       "  0.2439504861831665,\n",
+       "  0.6449788212776184,\n",
+       "  -0.9974457025527954,\n",
+       "  0.7066627144813538,\n",
+       "  0.45798584818840027,\n",
+       "  0.4536619782447815,\n",
+       "  0.36611127853393555,\n",
+       "  0.48572322726249695,\n",
+       "  -0.12092026323080063,\n",
+       "  -0.5880641341209412,\n",
+       "  0.3482988178730011,\n",
+       "  0.03320842236280441,\n",
+       "  -0.19150950014591217,\n",
+       "  0.32792967557907104,\n",
+       "  0.14458581805229187,\n",
+       "  0.2966439425945282,\n",
+       "  0.3636152148246765,\n",
+       "  -0.4487185478210449,\n",
+       "  0.13955338299274445,\n",
+       "  0.07723299413919449,\n",
+       "  0.29051685333251953,\n",
+       "  0.6939775347709656,\n",
+       "  0.22232133150100708,\n",
+       "  -0.13401393592357635,\n",
+       "  -0.23672369122505188,\n",
+       "  -0.19740118086338043,\n",
+       "  -0.9358344078063965,\n",
+       "  0.30432987213134766,\n",
+       "  -0.4772465229034424,\n",
+       "  0.28738725185394287,\n",
+       "  -0.9792874455451965,\n",
+       "  0.33745595812797546,\n",
+       "  -0.22576816380023956,\n",
+       "  -0.7814821004867554,\n",
+       "  0.5664247870445251,\n",
+       "  -0.432607501745224,\n",
+       "  0.09034114331007004,\n",
+       "  0.29543694853782654,\n",
+       "  0.1969209611415863,\n",
+       "  -0.11263825744390488,\n",
+       "  -0.49571752548217773,\n",
+       "  0.6815844178199768,\n",
+       "  -0.2476591318845749,\n",
+       "  -0.084346242249012,\n",
+       "  0.13864430785179138,\n",
+       "  0.6361597180366516,\n",
+       "  0.6096804738044739,\n",
+       "  0.31687605381011963,\n",
+       "  0.3509639799594879,\n",
+       "  -0.45081862807273865,\n",
+       "  0.34895265102386475,\n",
+       "  0.0014897516230121255,\n",
+       "  -0.31649163365364075,\n",
+       "  0.8546939492225647,\n",
+       "  -0.5078703165054321,\n",
+       "  -1.0238487720489502,\n",
+       "  -0.35330167412757874,\n",
+       "  0.42015737295150757,\n",
+       "  0.2236682027578354,\n",
+       "  0.6500250101089478,\n",
+       "  -0.32474857568740845,\n",
+       "  0.6556638479232788,\n",
+       "  -0.025438643991947174,\n",
+       "  0.8389859795570374,\n",
+       "  0.5562865138053894,\n",
+       "  0.18280459940433502,\n",
+       "  0.08434924483299255,\n",
+       "  0.042215943336486816,\n",
+       "  0.5467571020126343,\n",
+       "  0.1123742163181305,\n",
+       "  0.03244837000966072,\n",
+       "  -1.0061715841293335,\n",
+       "  -0.3085944950580597,\n",
+       "  -0.6957574486732483,\n",
+       "  0.22116586565971375,\n",
+       "  0.382159948348999,\n",
+       "  0.22632470726966858,\n",
+       "  -0.27501484751701355,\n",
+       "  -0.2863302230834961,\n",
+       "  0.4582352042198181,\n",
+       "  0.5971866846084595,\n",
+       "  0.46816304326057434,\n",
+       "  -0.13226784765720367,\n",
+       "  -0.2464510053396225,\n",
+       "  0.46584272384643555,\n",
+       "  0.10705604404211044,\n",
+       "  -0.351188987493515,\n",
+       "  0.12138845771551132,\n",
+       "  -0.6085167527198792,\n",
+       "  0.3774726986885071,\n",
+       "  0.5407528877258301,\n",
+       "  0.0064618270844221115,\n",
+       "  -0.573912501335144,\n",
+       "  0.05149620398879051,\n",
+       "  0.23512426018714905,\n",
+       "  -0.387866735458374,\n",
+       "  -0.48907822370529175,\n",
+       "  0.4558003544807434,\n",
+       "  0.3432888686656952,\n",
+       "  0.9528384208679199,\n",
+       "  -0.6374655961990356,\n",
+       "  0.34813398122787476,\n",
+       "  -0.23865161836147308,\n",
+       "  -0.4767013192176819,\n",
+       "  0.3049609363079071,\n",
+       "  0.4352666735649109,\n",
+       "  0.42963385581970215,\n",
+       "  0.12873537838459015,\n",
+       "  0.8428581953048706,\n",
+       "  -0.5732046365737915,\n",
+       "  -0.7193275094032288,\n",
+       "  0.09657884389162064,\n",
+       "  -1.4704506397247314,\n",
+       "  0.4931609034538269,\n",
+       "  0.43918612599372864,\n",
+       "  -0.44628724455833435,\n",
+       "  -0.13946163654327393,\n",
+       "  -0.22067882120609283,\n",
+       "  -0.06430879235267639,\n",
+       "  -0.05333731323480606,\n",
+       "  -0.8031220436096191,\n",
+       "  -0.41270455718040466,\n",
+       "  -0.010898495092988014,\n",
+       "  0.5054727792739868,\n",
+       "  -0.13417154550552368,\n",
+       "  -0.09902690351009369,\n",
+       "  1.3453506231307983,\n",
+       "  -0.4104675054550171,\n",
+       "  -0.5713691115379333,\n",
+       "  0.5122509002685547,\n",
+       "  -0.02970154955983162,\n",
+       "  0.0001729759678710252,\n",
+       "  -0.34633317589759827,\n",
+       "  0.58829665184021,\n",
+       "  0.2868087887763977,\n",
+       "  0.2541254460811615,\n",
+       "  -0.05617895722389221,\n",
+       "  0.6807460188865662,\n",
+       "  -0.08982411026954651,\n",
+       "  -0.7709076404571533,\n",
+       "  0.4982278347015381,\n",
+       "  -0.37107664346694946,\n",
+       "  0.03981844708323479,\n",
+       "  -0.25501468777656555,\n",
+       "  -0.3640649616718292,\n",
+       "  -0.03449568524956703,\n",
+       "  -0.867987871170044,\n",
+       "  -0.2041328102350235,\n",
+       "  0.027860060334205627,\n",
+       "  -0.6101935505867004,\n",
+       "  0.5620599985122681,\n",
+       "  0.2859831154346466,\n",
+       "  0.5863463282585144,\n",
+       "  -0.4182853102684021,\n",
+       "  0.08681090921163559,\n",
+       "  0.14754517376422882,\n",
+       "  -0.06796219199895859,\n",
+       "  -0.27611684799194336,\n",
+       "  -0.2342776209115982,\n",
+       "  0.19633087515830994,\n",
+       "  0.2756378650665283,\n",
+       "  0.5625853538513184,\n",
+       "  -0.49814656376838684,\n",
+       "  -0.401283860206604,\n",
+       "  -0.09274519979953766,\n",
+       "  -0.38711124658584595,\n",
+       "  -0.36291393637657166,\n",
+       "  -0.5965020656585693,\n",
+       "  0.08162636309862137,\n",
+       "  0.0009226799593307078,\n",
+       "  0.12532298266887665,\n",
+       "  0.27732548117637634,\n",
+       "  -0.33255183696746826,\n",
+       "  -0.47273731231689453,\n",
+       "  0.3618244230747223,\n",
+       "  -0.6171136498451233,\n",
+       "  0.754910945892334,\n",
+       "  -0.033839914947748184,\n",
+       "  0.07171781361103058,\n",
+       "  -0.16260485351085663,\n",
+       "  1.2018041610717773,\n",
+       "  0.8110723495483398,\n",
+       "  -0.6492946147918701,\n",
+       "  -0.29279717803001404,\n",
+       "  0.4938250482082367,\n",
+       "  0.027557458728551865,\n",
+       "  0.5749586224555969,\n",
+       "  0.2800053656101227,\n",
+       "  0.03805295750498772,\n",
+       "  0.16644710302352905,\n",
+       "  -0.8560732007026672,\n",
+       "  0.1032106801867485,\n",
+       "  -0.06021938472986221,\n",
+       "  -0.7916827201843262,\n",
+       "  -0.6022663712501526,\n",
+       "  -0.329144686460495,\n",
+       "  -0.9039788842201233,\n",
+       "  0.8628774285316467,\n",
+       "  0.27277982234954834,\n",
+       "  0.4087710380554199,\n",
+       "  0.08519420772790909,\n",
+       "  -0.49490687251091003,\n",
+       "  0.05425240099430084,\n",
+       "  0.36529237031936646,\n",
+       "  -0.737844705581665,\n",
+       "  -0.3061997592449188,\n",
+       "  0.12480030208826065,\n",
+       "  0.20698219537734985,\n",
+       "  0.6797382235527039,\n",
+       "  -0.5483785271644592,\n",
+       "  0.276843398809433,\n",
+       "  -0.04296817258000374,\n",
+       "  -0.0498192124068737,\n",
+       "  0.18017064034938812,\n",
+       "  0.24226133525371552,\n",
+       "  -0.39626362919807434,\n",
+       "  -0.1816210150718689,\n",
+       "  0.3709948658943176,\n",
+       "  -0.2237037867307663,\n",
+       "  0.12779122591018677,\n",
+       "  0.3271578252315521,\n",
+       "  -0.11732201278209686,\n",
+       "  0.26085489988327026,\n",
+       "  -0.6515527963638306,\n",
+       "  -0.21465128660202026,\n",
+       "  -0.3324236273765564,\n",
+       "  -0.5589518547058105,\n",
+       "  0.12180844694375992,\n",
+       "  0.1852940022945404,\n",
+       "  0.5779324173927307,\n",
+       "  0.36550113558769226,\n",
+       "  -0.11930176615715027,\n",
+       "  -0.06511150300502777,\n",
+       "  -0.1553603559732437,\n",
+       "  0.5276203751564026,\n",
+       "  0.3745949864387512,\n",
+       "  -0.5842090845108032,\n",
+       "  -0.6464338898658752,\n",
+       "  -0.38732996582984924,\n",
+       "  -0.8451240062713623,\n",
+       "  0.32487261295318604,\n",
+       "  -0.2058093249797821,\n",
+       "  0.13900302350521088,\n",
+       "  -0.8028187155723572,\n",
+       "  -0.3149273097515106,\n",
+       "  0.9239713549613953,\n",
+       "  0.2142457515001297,\n",
+       "  -0.2100885808467865,\n",
+       "  1.455012559890747,\n",
+       "  -0.5873098969459534,\n",
+       "  0.500898540019989,\n",
+       "  0.02715122140944004,\n",
+       "  0.563439667224884,\n",
+       "  0.18631429970264435,\n",
+       "  -0.4562689960002899,\n",
+       "  -0.1576705276966095,\n",
+       "  -0.5597322583198547,\n",
+       "  -0.06370822340250015,\n",
+       "  0.24073514342308044,\n",
+       "  -0.961319088935852,\n",
+       "  -0.17020557820796967,\n",
+       "  -0.7333323955535889,\n",
+       "  -0.4487285614013672,\n",
+       "  0.3572932481765747,\n",
+       "  0.03249140828847885,\n",
+       "  0.830589771270752,\n",
+       "  0.11472773551940918,\n",
+       "  -0.539686918258667,\n",
+       "  -0.5189257264137268,\n",
+       "  0.40835750102996826,\n",
+       "  0.3892066180706024,\n",
+       "  -0.3863535523414612,\n",
+       "  0.2951650619506836,\n",
+       "  0.03117988631129265,\n",
+       "  -0.40388214588165283,\n",
+       "  0.6936691999435425,\n",
+       "  -0.2541087567806244,\n",
+       "  -0.2086130678653717,\n",
+       "  -0.30088797211647034,\n",
+       "  0.39943927526474,\n",
+       "  -0.11459176987409592,\n",
+       "  -0.6543619632720947,\n",
+       "  0.6635531187057495,\n",
+       "  0.4099794924259186,\n",
+       "  -1.076621413230896,\n",
+       "  -0.31472936272621155,\n",
+       "  -0.09162159264087677,\n",
+       "  -0.10547883063554764,\n",
+       "  -0.203010693192482,\n",
+       "  -0.797065794467926,\n",
+       "  -0.21599599719047546,\n",
+       "  0.012090904638171196,\n",
+       "  0.25781190395355225,\n",
+       "  -0.7289014458656311,\n",
+       "  0.014427169226109982,\n",
+       "  -0.05590129271149635,\n",
+       "  0.6503525376319885,\n",
+       "  -0.25092804431915283,\n",
+       "  0.8132804036140442,\n",
+       "  -0.5299649834632874,\n",
+       "  -0.18269559741020203,\n",
+       "  0.49492546916007996,\n",
+       "  -0.4528919458389282,\n",
+       "  -0.05405370891094208,\n",
+       "  -0.11458656191825867,\n",
+       "  0.8546084761619568,\n",
+       "  -0.24550120532512665,\n",
+       "  0.049994587898254395,\n",
+       "  0.5189576745033264,\n",
+       "  -0.4165690243244171,\n",
+       "  -0.3450049161911011,\n",
+       "  0.5662803053855896,\n",
+       "  0.08417262136936188,\n",
+       "  -0.42365437746047974,\n",
+       "  0.12669695913791656,\n",
+       "  -0.3068799376487732,\n",
+       "  0.7521166801452637,\n",
+       "  -0.09769726544618607,\n",
+       "  -0.8809972405433655,\n",
+       "  0.11703585088253021,\n",
+       "  0.5754616260528564,\n",
+       "  -0.31427350640296936,\n",
+       "  0.0451238639652729,\n",
+       "  -0.5953565239906311,\n",
+       "  -0.35429322719573975,\n",
+       "  0.688956081867218,\n",
+       "  0.25111037492752075,\n",
+       "  -0.11199289560317993,\n",
+       "  -0.33815497159957886,\n",
+       "  0.052134666591882706,\n",
+       "  -0.5139267444610596,\n",
+       "  -0.880919337272644,\n",
+       "  -0.9578896760940552,\n",
+       "  0.44254070520401,\n",
+       "  0.2506037652492523,\n",
+       "  0.7118644714355469,\n",
+       "  -0.3801298141479492,\n",
+       "  0.09831752628087997,\n",
+       "  -0.3725154995918274,\n",
+       "  0.9608874917030334,\n",
+       "  -0.6097050309181213,\n",
+       "  0.5317102670669556,\n",
+       "  0.18883268535137177,\n",
+       "  -0.2739759385585785,\n",
+       "  0.0060667130164802074,\n",
+       "  -0.7999657988548279,\n",
+       "  -0.49761518836021423,\n",
+       "  -0.04410175234079361,\n",
+       "  0.021492933854460716,\n",
+       "  -0.26157134771347046,\n",
+       "  0.3662603497505188,\n",
+       "  0.07656055688858032,\n",
+       "  -0.20391426980495453,\n",
+       "  0.23112739622592926,\n",
+       "  0.05148652195930481,\n",
+       "  0.1546042412519455,\n",
+       "  0.21650385856628418,\n",
+       "  -1.1717547178268433,\n",
+       "  -0.1276608407497406,\n",
+       "  0.7806116938591003,\n",
+       "  0.7273387312889099,\n",
+       "  0.6802674531936646,\n",
+       "  0.6182719469070435,\n",
+       "  -0.4920237064361572,\n",
+       "  0.18753017485141754,\n",
+       "  0.47386983036994934,\n",
+       "  0.28862181305885315,\n",
+       "  -0.3754692077636719,\n",
+       "  -0.0561814084649086,\n",
+       "  -0.012385806068778038,\n",
+       "  -0.6008806824684143,\n",
+       "  -0.5645871758460999,\n",
+       "  -1.0939054489135742,\n",
+       "  -0.46547579765319824,\n",
+       "  -0.9732064604759216,\n",
+       "  -0.12648724019527435,\n",
+       "  0.09849158674478531,\n",
+       "  0.3843759596347809,\n",
+       "  -0.4629274904727936,\n",
+       "  0.17386573553085327,\n",
+       "  0.15112851560115814,\n",
+       "  0.7017663717269897,\n",
+       "  -0.16923131048679352,\n",
+       "  0.2237587720155716,\n",
+       "  0.2665000557899475,\n",
+       "  0.2541508376598358,\n",
+       "  0.30873268842697144,\n",
+       "  -0.5635056495666504,\n",
+       "  0.5241885781288147,\n",
+       "  0.2771768271923065,\n",
+       "  0.2790517210960388,\n",
+       "  -0.539208173751831,\n",
+       "  -0.7596209645271301,\n",
+       "  0.6352860331535339,\n",
+       "  0.2882881462574005,\n",
+       "  0.34007710218429565,\n",
+       "  -0.474793940782547,\n",
+       "  -0.6396011114120483,\n",
+       "  -0.2593938708305359,\n",
+       "  0.08468469977378845,\n",
+       "  -0.24741365015506744,\n",
+       "  0.556648850440979,\n",
+       "  0.3211875855922699,\n",
+       "  -0.4658515453338623,\n",
+       "  0.14536313712596893,\n",
+       "  -0.39535415172576904,\n",
+       "  -0.9148903489112854,\n",
+       "  0.4538055956363678,\n",
+       "  -0.8095774054527283,\n",
+       "  0.060072802007198334,\n",
+       "  0.33706173300743103,\n",
+       "  0.03795214742422104,\n",
+       "  -0.5362184047698975,\n",
+       "  -0.2864001989364624,\n",
+       "  -1.0039011240005493,\n",
+       "  -0.3602775037288666,\n",
+       "  -0.7287405729293823,\n",
+       "  0.2748887538909912,\n",
+       "  -0.07904542237520218,\n",
+       "  0.43842989206314087,\n",
+       "  0.4292987883090973,\n",
+       "  -0.2311275154352188,\n",
+       "  -0.7116916179656982,\n",
+       "  -0.11643634736537933,\n",
+       "  -0.7759585380554199,\n",
+       "  0.7385767698287964,\n",
+       "  0.04599079489707947,\n",
+       "  -0.6884185075759888,\n",
+       "  0.2725524604320526,\n",
+       "  0.6506152749061584,\n",
+       "  0.39920005202293396,\n",
+       "  0.09319861978292465,\n",
+       "  -0.38983431458473206,\n",
+       "  0.5238291025161743,\n",
+       "  -0.5580272078514099,\n",
+       "  -0.0103628970682621,\n",
+       "  -0.38650044798851013,\n",
+       "  -0.3914099931716919,\n",
+       "  0.22562870383262634,\n",
+       "  0.24987107515335083,\n",
+       "  -0.5925841927528381,\n",
+       "  -0.0284016951918602,\n",
+       "  -0.6322098970413208,\n",
+       "  0.4557032287120819,\n",
+       "  -0.004712618421763182,\n",
+       "  -0.6027783155441284,\n",
+       "  0.3160114884376526,\n",
+       "  0.3637271821498871,\n",
+       "  0.3804703950881958,\n",
+       "  0.48565515875816345,\n",
+       "  0.5258179903030396,\n",
+       "  0.8879186511039734,\n",
+       "  0.7316209673881531,\n",
+       "  0.0416119210422039,\n",
+       "  -1.0093135833740234,\n",
+       "  0.11492951214313507,\n",
+       "  0.8028061985969543,\n",
+       "  0.06716805696487427,\n",
+       "  0.0019319140119478106,\n",
+       "  -0.3770061135292053,\n",
+       "  -0.07625972479581833,\n",
+       "  0.5457291603088379,\n",
+       "  -0.09309566020965576,\n",
+       "  -0.01992066018283367,\n",
+       "  0.7474305629730225,\n",
+       "  0.15377254784107208,\n",
+       "  -0.11079899221658707,\n",
+       "  0.2939283549785614,\n",
+       "  -0.41370704770088196,\n",
+       "  0.5233023762702942,\n",
+       "  -0.2431264966726303,\n",
+       "  0.3325313627719879,\n",
+       "  0.5507897734642029,\n",
+       "  -0.2349100261926651,\n",
+       "  -0.26681745052337646,\n",
+       "  0.33428627252578735,\n",
+       "  0.20792822539806366,\n",
+       "  0.20537535846233368,\n",
+       "  -0.23919019103050232,\n",
+       "  0.05211174488067627,\n",
+       "  -0.029082706198096275,\n",
+       "  -0.5170590281486511,\n",
+       "  -0.148354634642601,\n",
+       "  0.17387090623378754,\n",
+       "  0.3997310400009155,\n",
+       "  0.6324551105499268,\n",
+       "  0.5969943404197693,\n",
+       "  -0.1682303249835968,\n",
+       "  0.39327800273895264,\n",
+       "  -0.10407182574272156,\n",
+       "  0.2405574768781662,\n",
+       "  0.27164438366889954,\n",
+       "  -1.1877676248550415,\n",
+       "  0.14967003464698792,\n",
+       "  0.155400350689888,\n",
+       "  -0.1664905548095703,\n",
+       "  -0.8923134207725525,\n",
+       "  0.31925272941589355,\n",
+       "  -0.6922290921211243,\n",
+       "  0.37472066283226013,\n",
+       "  0.05517548322677612,\n",
+       "  0.03848360478878021,\n",
+       "  0.1037290170788765,\n",
+       "  -0.5190158486366272,\n",
+       "  -0.6224437355995178,\n",
+       "  -0.7139700651168823,\n",
+       "  0.8266307711601257,\n",
+       "  -0.11380338668823242,\n",
+       "  0.08344950526952744,\n",
+       "  0.5643734931945801,\n",
+       "  0.027856847271323204,\n",
+       "  -0.019112922251224518,\n",
+       "  0.7826627492904663,\n",
+       "  -0.4863210618495941,\n",
+       "  0.6647438406944275,\n",
+       "  0.2020666003227234,\n",
+       "  0.9220132231712341,\n",
+       "  0.8749033212661743,\n",
+       "  0.2835003733634949,\n",
+       "  0.9998884201049805,\n",
+       "  -0.672473132610321,\n",
+       "  -0.32181110978126526,\n",
+       "  -0.5558651685714722,\n",
+       "  -0.2695208787918091,\n",
+       "  -0.7541895508766174,\n",
+       "  0.1516842544078827,\n",
+       "  -0.4608273208141327,\n",
+       "  -0.3914019465446472,\n",
+       "  -0.26724764704704285,\n",
+       "  0.43134525418281555,\n",
+       "  -0.6212441325187683,\n",
+       "  0.3745012879371643,\n",
+       "  -0.37949445843696594,\n",
+       "  -1.119378924369812,\n",
+       "  -0.07150902599096298,\n",
+       "  -0.5286315679550171,\n",
+       "  -0.14950813353061676,\n",
+       "  0.1515863537788391,\n",
+       "  1.2689299583435059,\n",
+       "  1.0098563432693481,\n",
+       "  -0.014573409222066402,\n",
+       "  -0.09301596879959106,\n",
+       "  -0.28702157735824585,\n",
+       "  0.44630059599876404,\n",
+       "  -0.320136696100235,\n",
+       "  -0.3883953094482422,\n",
+       "  0.7925869822502136,\n",
+       "  -0.4618237614631653,\n",
+       "  -1.2889593839645386,\n",
+       "  -0.3566947877407074,\n",
+       "  -0.6348873376846313,\n",
+       "  -0.7300600409507751,\n",
+       "  0.09211597591638565,\n",
+       "  -0.9467034339904785,\n",
+       "  0.16685202717781067,\n",
+       "  -0.09806318581104279,\n",
+       "  0.26248520612716675,\n",
+       "  -0.23755009472370148,\n",
+       "  0.5351219773292542,\n",
+       "  -0.4853552281856537,\n",
+       "  0.7577729821205139,\n",
+       "  0.38879889249801636,\n",
+       "  0.6300411820411682,\n",
+       "  -0.2574041783809662,\n",
+       "  0.7323415279388428,\n",
+       "  0.09847570210695267,\n",
+       "  -0.5526623129844666,\n",
+       "  -0.3854880928993225,\n",
+       "  -0.7990260720252991,\n",
+       "  0.35248231887817383,\n",
+       "  -0.4668175280094147,\n",
+       "  -0.10290756821632385,\n",
+       "  -0.09236554801464081,\n",
+       "  -0.258074551820755,\n",
+       "  -0.24723400175571442,\n",
+       "  -0.6552531719207764,\n",
+       "  0.16103433072566986,\n",
+       "  0.6218563318252563,\n",
+       "  0.24903221428394318,\n",
+       "  -0.5528410077095032,\n",
+       "  -1.3529237508773804,\n",
+       "  0.23143072426319122,\n",
+       "  -1.045642614364624,\n",
+       "  -0.2803279161453247,\n",
+       "  -0.44280824065208435,\n",
+       "  0.6601386070251465,\n",
+       "  0.03146280348300934,\n",
+       "  -0.25061336159706116,\n",
+       "  0.1281445175409317,\n",
+       "  -0.9006889462471008,\n",
+       "  4.462767601013184,\n",
+       "  0.5997637510299683,\n",
+       "  0.4976256787776947,\n",
+       "  -0.4936535358428955,\n",
+       "  0.17143943905830383,\n",
+       "  0.8772667050361633,\n",
+       "  0.285220205783844,\n",
+       "  0.9304468631744385,\n",
+       "  -0.27842092514038086,\n",
+       "  -0.45088550448417664,\n",
+       "  0.3779442310333252,\n",
+       "  0.1473567634820938,\n",
+       "  0.2477225661277771,\n",
+       "  0.4404883086681366,\n",
+       "  -0.08007366955280304,\n",
+       "  0.9077342748641968,\n",
+       "  -0.5756711959838867,\n",
+       "  0.30554863810539246,\n",
+       "  -0.08678336441516876,\n",
+       "  -1.0750330686569214,\n",
+       "  0.0004209561739116907,\n",
+       "  -0.6181638836860657,\n",
+       "  0.5358628034591675,\n",
+       "  0.17197741568088531,\n",
+       "  0.3999564051628113,\n",
+       "  -0.3586116135120392,\n",
+       "  1.0736268758773804,\n",
+       "  -0.5334151387214661,\n",
+       "  0.06598101556301117,\n",
+       "  -0.2870873808860779,\n",
+       "  -0.2306235432624817,\n",
+       "  -0.5238915681838989,\n",
+       "  -0.4700780510902405,\n",
+       "  -0.7910664081573486,\n",
+       "  -0.5595477819442749,\n",
+       "  0.5381693243980408,\n",
+       "  0.43998298048973083,\n",
+       "  -0.4397830367088318,\n",
+       "  0.15957890450954437,\n",
+       "  -0.1641160249710083,\n",
+       "  -0.26293277740478516,\n",
+       "  -0.12118148803710938,\n",
+       "  0.482787162065506,\n",
+       "  -0.8770087957382202,\n",
+       "  -0.1327838897705078,\n",
+       "  0.28636783361434937,\n",
+       "  -0.47440096735954285,\n",
+       "  0.10034739226102829,\n",
+       "  0.28839558362960815,\n",
+       "  -0.12855111062526703,\n",
+       "  1.0286990404129028,\n",
+       "  -0.7193248867988586,\n",
+       "  0.21239891648292542,\n",
+       "  -0.6174246072769165,\n",
+       "  -0.7919260263442993,\n",
+       "  -0.03878069669008255,\n",
+       "  -0.3190139830112457,\n",
+       "  -0.23707982897758484,\n",
+       "  -0.5065869688987732,\n",
+       "  -0.43810972571372986,\n",
+       "  -0.3110460340976715,\n",
+       "  -0.2863406836986542,\n",
+       "  -0.4253699779510498,\n",
+       "  0.3866632580757141,\n",
+       "  -0.8151654601097107,\n",
+       "  0.4530806839466095,\n",
+       "  0.602790117263794,\n",
+       "  0.5624902844429016,\n",
+       "  -0.4981139302253723,\n",
+       "  0.058757226914167404,\n",
+       "  0.1600789576768875,\n",
+       "  ...],\n",
+       " [-0.66383957862854,\n",
+       "  -0.2313556671142578,\n",
+       "  -0.2595861554145813,\n",
+       "  -0.06100668013095856,\n",
+       "  -0.6925454139709473,\n",
+       "  -0.22522060573101044,\n",
+       "  -0.035429272800683975,\n",
+       "  -0.04449533298611641,\n",
+       "  0.39814653992652893,\n",
+       "  0.13439606130123138,\n",
+       "  0.29754704236984253,\n",
+       "  -0.238642156124115,\n",
+       "  0.25147610902786255,\n",
+       "  -0.32628288865089417,\n",
+       "  -0.49216407537460327,\n",
+       "  -0.40720444917678833,\n",
+       "  -0.6613724827766418,\n",
+       "  -0.3219824731349945,\n",
+       "  -0.5070877075195312,\n",
+       "  -0.024057071655988693,\n",
+       "  0.38390594720840454,\n",
+       "  0.4274079203605652,\n",
+       "  -1.2975172996520996,\n",
+       "  -0.46902188658714294,\n",
+       "  -0.35251280665397644,\n",
+       "  0.3329623341560364,\n",
+       "  0.05530993267893791,\n",
+       "  0.22719600796699524,\n",
+       "  0.8056514859199524,\n",
+       "  0.8747472167015076,\n",
+       "  0.03323102369904518,\n",
+       "  0.39306214451789856,\n",
+       "  0.16607530415058136,\n",
+       "  -0.846079409122467,\n",
+       "  -0.12165623903274536,\n",
+       "  -0.6517881155014038,\n",
+       "  -2.3414584575220942e-05,\n",
+       "  0.14633579552173615,\n",
+       "  -0.825664222240448,\n",
+       "  -0.4183889329433441,\n",
+       "  0.1627465784549713,\n",
+       "  -0.7571935653686523,\n",
+       "  0.0036316709592938423,\n",
+       "  -0.4105145335197449,\n",
+       "  -1.0966694355010986,\n",
+       "  -0.41880688071250916,\n",
+       "  0.1567099541425705,\n",
+       "  -0.7302873730659485,\n",
+       "  0.5174612998962402,\n",
+       "  -0.8508439064025879,\n",
+       "  0.10142526030540466,\n",
+       "  -0.2843800485134125,\n",
+       "  0.32579779624938965,\n",
+       "  0.18766894936561584,\n",
+       "  0.0704789087176323,\n",
+       "  -0.1186482161283493,\n",
+       "  0.30121684074401855,\n",
+       "  0.1028139516711235,\n",
+       "  -1.063417911529541,\n",
+       "  0.4732326865196228,\n",
+       "  0.6511643528938293,\n",
+       "  -0.10245297849178314,\n",
+       "  0.3198312222957611,\n",
+       "  -0.6911914348602295,\n",
+       "  -0.3321545720100403,\n",
+       "  0.4627225399017334,\n",
+       "  -0.12581969797611237,\n",
+       "  0.4968282878398895,\n",
+       "  0.2776549458503723,\n",
+       "  0.05307720974087715,\n",
+       "  0.10920432209968567,\n",
+       "  -0.40448153018951416,\n",
+       "  -0.059818610548973083,\n",
+       "  -0.04125083237886429,\n",
+       "  -0.24878741800785065,\n",
+       "  0.02488279901444912,\n",
+       "  -0.5569456219673157,\n",
+       "  -0.22246843576431274,\n",
+       "  -0.29153338074684143,\n",
+       "  0.1343427449464798,\n",
+       "  -0.1262163370847702,\n",
+       "  -0.17975224554538727,\n",
+       "  0.3224595785140991,\n",
+       "  0.039348285645246506,\n",
+       "  -0.4701169431209564,\n",
+       "  0.07212565839290619,\n",
+       "  -0.3677715063095093,\n",
+       "  0.37830060720443726,\n",
+       "  0.3132310211658478,\n",
+       "  0.2310069352388382,\n",
+       "  -0.2397177368402481,\n",
+       "  0.7962530255317688,\n",
+       "  -0.20806986093521118,\n",
+       "  0.07299618422985077,\n",
+       "  0.4896806478500366,\n",
+       "  0.7884756326675415,\n",
+       "  -0.031209291890263557,\n",
+       "  0.05247776210308075,\n",
+       "  -0.5274895429611206,\n",
+       "  -0.11336683481931686,\n",
+       "  0.22027435898780823,\n",
+       "  0.6983976364135742,\n",
+       "  0.053230199962854385,\n",
+       "  0.9547304511070251,\n",
+       "  -0.23651228845119476,\n",
+       "  0.10277893394231796,\n",
+       "  0.014033998362720013,\n",
+       "  1.041684865951538,\n",
+       "  -0.31462642550468445,\n",
+       "  -0.6297675967216492,\n",
+       "  0.36212003231048584,\n",
+       "  -0.012141757644712925,\n",
+       "  -0.021185457706451416,\n",
+       "  0.4515077769756317,\n",
+       "  -0.3030897080898285,\n",
+       "  0.7325507998466492,\n",
+       "  -0.4467439651489258,\n",
+       "  0.5766064524650574,\n",
+       "  -0.769917368888855,\n",
+       "  -0.13879376649856567,\n",
+       "  -0.15103241801261902,\n",
+       "  0.40279167890548706,\n",
+       "  0.38021376729011536,\n",
+       "  -0.4165734052658081,\n",
+       "  -0.05714404955506325,\n",
+       "  -0.38282668590545654,\n",
+       "  -0.49606284499168396,\n",
+       "  0.7269167304039001,\n",
+       "  -0.6417250037193298,\n",
+       "  0.2031887024641037,\n",
+       "  -0.49722495675086975,\n",
+       "  -0.3438809812068939,\n",
+       "  0.8003844022750854,\n",
+       "  0.2577022612094879,\n",
+       "  0.3948556184768677,\n",
+       "  0.9283068776130676,\n",
+       "  -0.2774761915206909,\n",
+       "  0.9557852149009705,\n",
+       "  0.1972631812095642,\n",
+       "  -0.3428194522857666,\n",
+       "  0.3247833847999573,\n",
+       "  0.6235134601593018,\n",
+       "  0.24010451138019562,\n",
+       "  1.3323333263397217,\n",
+       "  0.11255193501710892,\n",
+       "  0.7475976347923279,\n",
+       "  -0.04500462859869003,\n",
+       "  0.0031878864392638206,\n",
+       "  -0.43377748131752014,\n",
+       "  0.5427476167678833,\n",
+       "  0.30915892124176025,\n",
+       "  0.06339199095964432,\n",
+       "  -0.28885963559150696,\n",
+       "  0.8270829916000366,\n",
+       "  -0.15219268202781677,\n",
+       "  0.3253883123397827,\n",
+       "  0.4335705041885376,\n",
+       "  -0.07575776427984238,\n",
+       "  0.506062924861908,\n",
+       "  0.22491300106048584,\n",
+       "  0.12009810656309128,\n",
+       "  0.5963507294654846,\n",
+       "  -0.6599342823028564,\n",
+       "  0.8246259093284607,\n",
+       "  -0.11227074265480042,\n",
+       "  0.31016668677330017,\n",
+       "  -0.5566144585609436,\n",
+       "  -0.04739649221301079,\n",
+       "  -0.28963443636894226,\n",
+       "  0.16926006972789764,\n",
+       "  0.04322681203484535,\n",
+       "  0.6518950462341309,\n",
+       "  -0.02876073122024536,\n",
+       "  0.15316806733608246,\n",
+       "  0.12932568788528442,\n",
+       "  0.8276455402374268,\n",
+       "  0.4568895697593689,\n",
+       "  -0.15531013906002045,\n",
+       "  0.945992112159729,\n",
+       "  0.3896466791629791,\n",
+       "  -0.12119919806718826,\n",
+       "  0.5152679681777954,\n",
+       "  0.6301158666610718,\n",
+       "  1.1760205030441284,\n",
+       "  0.03376719355583191,\n",
+       "  -0.0809011310338974,\n",
+       "  0.2313305288553238,\n",
+       "  -0.009871753863990307,\n",
+       "  -0.601636528968811,\n",
+       "  -0.1795131117105484,\n",
+       "  0.1304136961698532,\n",
+       "  0.5048069953918457,\n",
+       "  -0.06729011982679367,\n",
+       "  -0.3121969997882843,\n",
+       "  -0.29310178756713867,\n",
+       "  0.3514418601989746,\n",
+       "  -1.1271324157714844,\n",
+       "  -0.09299957752227783,\n",
+       "  -0.7083450555801392,\n",
+       "  -0.8204821348190308,\n",
+       "  -0.42331191897392273,\n",
+       "  -0.04339401796460152,\n",
+       "  -0.5787737965583801,\n",
+       "  0.8930289149284363,\n",
+       "  0.36572974920272827,\n",
+       "  -0.7476776242256165,\n",
+       "  0.5567910075187683,\n",
+       "  1.7977360486984253,\n",
+       "  -0.02189374901354313,\n",
+       "  0.7785289883613586,\n",
+       "  0.43605461716651917,\n",
+       "  1.3746691942214966,\n",
+       "  -0.6201463937759399,\n",
+       "  0.1897742599248886,\n",
+       "  0.5282841920852661,\n",
+       "  -0.32129576802253723,\n",
+       "  0.07059669494628906,\n",
+       "  1.0405555963516235,\n",
+       "  -0.7393519282341003,\n",
+       "  0.4615570604801178,\n",
+       "  -0.11006764322519302,\n",
+       "  0.5464887022972107,\n",
+       "  0.5049405097961426,\n",
+       "  0.707616925239563,\n",
+       "  -0.5412596464157104,\n",
+       "  -0.14146843552589417,\n",
+       "  0.0989818125963211,\n",
+       "  0.9178425669670105,\n",
+       "  0.07597102969884872,\n",
+       "  0.20396646857261658,\n",
+       "  0.02221265435218811,\n",
+       "  0.31986862421035767,\n",
+       "  -0.10685097426176071,\n",
+       "  0.22032785415649414,\n",
+       "  0.8232126235961914,\n",
+       "  0.14689558744430542,\n",
+       "  0.7107570171356201,\n",
+       "  0.3264351785182953,\n",
+       "  0.5185019373893738,\n",
+       "  0.0013305929023772478,\n",
+       "  0.18264140188694,\n",
+       "  0.37187331914901733,\n",
+       "  0.5390960574150085,\n",
+       "  -0.13465994596481323,\n",
+       "  -0.7617212533950806,\n",
+       "  -0.1916431337594986,\n",
+       "  -0.16727127134799957,\n",
+       "  0.6731497645378113,\n",
+       "  -0.7767329812049866,\n",
+       "  0.6193000078201294,\n",
+       "  -0.42698243260383606,\n",
+       "  0.3654089570045471,\n",
+       "  0.6835520267486572,\n",
+       "  0.395896852016449,\n",
+       "  -0.7649313807487488,\n",
+       "  -0.42238858342170715,\n",
+       "  0.8192903399467468,\n",
+       "  0.7838611006736755,\n",
+       "  -0.0721166655421257,\n",
+       "  -0.5067527294158936,\n",
+       "  0.29517635703086853,\n",
+       "  -0.36073851585388184,\n",
+       "  0.40435370802879333,\n",
+       "  0.5425378680229187,\n",
+       "  -0.22622635960578918,\n",
+       "  0.8533711433410645,\n",
+       "  -0.003657616674900055,\n",
+       "  0.1506732553243637,\n",
+       "  -0.4110838770866394,\n",
+       "  -1.0123159885406494,\n",
+       "  -0.09841310232877731,\n",
+       "  -0.6191126108169556,\n",
+       "  -0.786047637462616,\n",
+       "  -0.023185061290860176,\n",
+       "  -0.16664241254329681,\n",
+       "  -0.7477964758872986,\n",
+       "  -0.1311689019203186,\n",
+       "  -0.04727170243859291,\n",
+       "  0.7601009011268616,\n",
+       "  -0.21691539883613586,\n",
+       "  0.2879783809185028,\n",
+       "  -0.5148252844810486,\n",
+       "  -0.9074329733848572,\n",
+       "  0.015700897201895714,\n",
+       "  0.019970141351222992,\n",
+       "  1.2790656089782715,\n",
+       "  -0.7192351818084717,\n",
+       "  0.633094072341919,\n",
+       "  -0.2613338828086853,\n",
+       "  0.5991172194480896,\n",
+       "  -0.5007964968681335,\n",
+       "  -0.23982669413089752,\n",
+       "  -0.07967814058065414,\n",
+       "  -0.6458929777145386,\n",
+       "  -0.07101744413375854,\n",
+       "  -0.02982148714363575,\n",
+       "  -0.15407350659370422,\n",
+       "  0.40034782886505127,\n",
+       "  -0.32107964158058167,\n",
+       "  -0.6922317743301392,\n",
+       "  -0.09478769451379776,\n",
+       "  0.33118054270744324,\n",
+       "  -0.5922290086746216,\n",
+       "  -0.2315683513879776,\n",
+       "  -0.3633510172367096,\n",
+       "  0.9553167223930359,\n",
+       "  0.15411309897899628,\n",
+       "  -0.17744380235671997,\n",
+       "  1.2446421384811401,\n",
+       "  0.39525559544563293,\n",
+       "  -1.189293384552002,\n",
+       "  0.439408540725708,\n",
+       "  0.30721813440322876,\n",
+       "  0.5662364959716797,\n",
+       "  -0.6927391886711121,\n",
+       "  -0.26919615268707275,\n",
+       "  0.2464495450258255,\n",
+       "  0.12598511576652527,\n",
+       "  -1.2246264219284058,\n",
+       "  -0.23698285222053528,\n",
+       "  0.07862170785665512,\n",
+       "  0.17724956572055817,\n",
+       "  -0.26024624705314636,\n",
+       "  -0.7359688878059387,\n",
+       "  0.11084423959255219,\n",
+       "  0.5328563451766968,\n",
+       "  0.025927213951945305,\n",
+       "  -1.183160424232483,\n",
+       "  0.3631088435649872,\n",
+       "  -0.8191152215003967,\n",
+       "  -0.755239725112915,\n",
+       "  -0.4995143711566925,\n",
+       "  -0.06928092241287231,\n",
+       "  0.9806907773017883,\n",
+       "  0.4832023084163666,\n",
+       "  0.2266155183315277,\n",
+       "  0.17297831177711487,\n",
+       "  0.23857860267162323,\n",
+       "  0.7700474262237549,\n",
+       "  -0.5227215886116028,\n",
+       "  1.5237351655960083,\n",
+       "  -1.0372787714004517,\n",
+       "  0.42848527431488037,\n",
+       "  0.6967135667800903,\n",
+       "  -0.5061274170875549,\n",
+       "  -0.028543030843138695,\n",
+       "  0.6125296354293823,\n",
+       "  0.11877332627773285,\n",
+       "  -0.24795833230018616,\n",
+       "  0.5738652348518372,\n",
+       "  0.03585290536284447,\n",
+       "  -0.08751246333122253,\n",
+       "  0.5911476016044617,\n",
+       "  0.14302462339401245,\n",
+       "  0.3904249668121338,\n",
+       "  -0.08441024273633957,\n",
+       "  -0.12650245428085327,\n",
+       "  0.04551529139280319,\n",
+       "  0.46586257219314575,\n",
+       "  0.3084683418273926,\n",
+       "  0.2561204433441162,\n",
+       "  -0.2515110373497009,\n",
+       "  -0.16502408683300018,\n",
+       "  0.03153965622186661,\n",
+       "  0.1740194708108902,\n",
+       "  -0.8661266565322876,\n",
+       "  0.3422711491584778,\n",
+       "  0.5051333904266357,\n",
+       "  -0.29426029324531555,\n",
+       "  -1.596143364906311,\n",
+       "  0.4108634293079376,\n",
+       "  -0.2926933467388153,\n",
+       "  -0.6348920464515686,\n",
+       "  0.30726951360702515,\n",
+       "  -0.17813639342784882,\n",
+       "  0.1929423063993454,\n",
+       "  0.8914364576339722,\n",
+       "  0.12266840040683746,\n",
+       "  0.576617419719696,\n",
+       "  -1.2714109420776367,\n",
+       "  -0.028853025287389755,\n",
+       "  -0.549541711807251,\n",
+       "  0.19571059942245483,\n",
+       "  0.41401880979537964,\n",
+       "  0.17110785841941833,\n",
+       "  0.41904062032699585,\n",
+       "  0.29501330852508545,\n",
+       "  0.5240954756736755,\n",
+       "  -0.77303546667099,\n",
+       "  -0.4904113709926605,\n",
+       "  -0.5939957499504089,\n",
+       "  -0.11172720044851303,\n",
+       "  0.8538534045219421,\n",
+       "  -0.20046530663967133,\n",
+       "  -0.7861432433128357,\n",
+       "  -0.4543113112449646,\n",
+       "  1.0110828876495361,\n",
+       "  -0.003347388468682766,\n",
+       "  0.5784980654716492,\n",
+       "  -0.4305913746356964,\n",
+       "  0.7264584898948669,\n",
+       "  0.7619367241859436,\n",
+       "  0.8248848915100098,\n",
+       "  0.24710723757743835,\n",
+       "  -0.4174598753452301,\n",
+       "  -0.5849774479866028,\n",
+       "  -0.08136039227247238,\n",
+       "  0.6947451233863831,\n",
+       "  0.6091447472572327,\n",
+       "  -0.2596603035926819,\n",
+       "  -0.5273916125297546,\n",
+       "  0.02512296661734581,\n",
+       "  -0.2914501130580902,\n",
+       "  -0.340916246175766,\n",
+       "  0.3925054371356964,\n",
+       "  0.264009565114975,\n",
+       "  -0.5922141671180725,\n",
+       "  -0.1410948485136032,\n",
+       "  0.3549291789531708,\n",
+       "  0.7957888841629028,\n",
+       "  -0.49344921112060547,\n",
+       "  -0.10658832639455795,\n",
+       "  -0.14459018409252167,\n",
+       "  0.8777123689651489,\n",
+       "  0.5201388001441956,\n",
+       "  -0.6812755465507507,\n",
+       "  -0.4125320315361023,\n",
+       "  -0.5169220566749573,\n",
+       "  0.9127803444862366,\n",
+       "  0.12648075819015503,\n",
+       "  0.15197505056858063,\n",
+       "  -0.17171065509319305,\n",
+       "  -0.5145682096481323,\n",
+       "  -0.3144108057022095,\n",
+       "  0.25576066970825195,\n",
+       "  -0.2729228138923645,\n",
+       "  0.43763890862464905,\n",
+       "  -0.6974268555641174,\n",
+       "  0.05586937069892883,\n",
+       "  -0.3896856904029846,\n",
+       "  0.35386428236961365,\n",
+       "  0.1315007507801056,\n",
+       "  -0.39295321702957153,\n",
+       "  -0.18069300055503845,\n",
+       "  0.26811668276786804,\n",
+       "  0.3929719924926758,\n",
+       "  0.44114425778388977,\n",
+       "  0.47795361280441284,\n",
+       "  -0.8011078238487244,\n",
+       "  -0.301805317401886,\n",
+       "  0.47754961252212524,\n",
+       "  -0.9720356464385986,\n",
+       "  1.0676907300949097,\n",
+       "  -0.29112306237220764,\n",
+       "  0.2620666027069092,\n",
+       "  -0.2559487521648407,\n",
+       "  -0.30174437165260315,\n",
+       "  0.020500365644693375,\n",
+       "  0.37328124046325684,\n",
+       "  -0.6434176564216614,\n",
+       "  -0.3961181342601776,\n",
+       "  -0.1455620676279068,\n",
+       "  1.1312304735183716,\n",
+       "  -0.35954615473747253,\n",
+       "  -0.7734612226486206,\n",
+       "  0.9958603382110596,\n",
+       "  -0.3421874940395355,\n",
+       "  -0.3012723922729492,\n",
+       "  -0.18579894304275513,\n",
+       "  0.13212817907333374,\n",
+       "  0.4657566249370575,\n",
+       "  -0.16543884575366974,\n",
+       "  -0.02276868373155594,\n",
+       "  0.15026947855949402,\n",
+       "  0.29083219170570374,\n",
+       "  -0.9812489151954651,\n",
+       "  -0.3071942627429962,\n",
+       "  -0.41813355684280396,\n",
+       "  -0.8969392776489258,\n",
+       "  0.4203145503997803,\n",
+       "  -0.24708013236522675,\n",
+       "  -0.8105489015579224,\n",
+       "  0.19139695167541504,\n",
+       "  -0.6527240872383118,\n",
+       "  -0.17958854138851166,\n",
+       "  -1.3926584720611572,\n",
+       "  -0.2781815528869629,\n",
+       "  0.11016010493040085,\n",
+       "  -0.16614437103271484,\n",
+       "  -0.355233371257782,\n",
+       "  0.3178675174713135,\n",
+       "  0.3770565688610077,\n",
+       "  0.877945601940155,\n",
+       "  -0.7948293685913086,\n",
+       "  0.05235274136066437,\n",
+       "  -0.4885311722755432,\n",
+       "  -0.25346195697784424,\n",
+       "  -0.4479544758796692,\n",
+       "  0.45200014114379883,\n",
+       "  0.5162225365638733,\n",
+       "  0.40498116612434387,\n",
+       "  -0.6774299740791321,\n",
+       "  -0.4202435612678528,\n",
+       "  -0.29834842681884766,\n",
+       "  0.08582589030265808,\n",
+       "  -0.7950501441955566,\n",
+       "  -0.7950786352157593,\n",
+       "  0.05144018307328224,\n",
+       "  -0.1953907012939453,\n",
+       "  0.4306655526161194,\n",
+       "  -0.14445535838603973,\n",
+       "  0.44681674242019653,\n",
+       "  0.1289193481206894,\n",
+       "  0.2624998092651367,\n",
+       "  0.6209694147109985,\n",
+       "  0.6485058665275574,\n",
+       "  0.3436071276664734,\n",
+       "  -0.17081555724143982,\n",
+       "  -0.24998722970485687,\n",
+       "  0.8819694519042969,\n",
+       "  0.1914956271648407,\n",
+       "  -0.39287418127059937,\n",
+       "  0.47309058904647827,\n",
+       "  0.9233711957931519,\n",
+       "  -0.06572650372982025,\n",
+       "  0.5558550357818604,\n",
+       "  0.803342342376709,\n",
+       "  0.1837519109249115,\n",
+       "  -0.582427442073822,\n",
+       "  -1.229834794998169,\n",
+       "  -0.5020425915718079,\n",
+       "  -0.395750492811203,\n",
+       "  -1.030993938446045,\n",
+       "  -1.0110739469528198,\n",
+       "  0.10828382521867752,\n",
+       "  -0.6424391269683838,\n",
+       "  0.3970054090023041,\n",
+       "  0.404026061296463,\n",
+       "  -0.343421071767807,\n",
+       "  -0.19432324171066284,\n",
+       "  -1.0158581733703613,\n",
+       "  0.6382966637611389,\n",
+       "  0.009547857567667961,\n",
+       "  -0.16880100965499878,\n",
+       "  -0.42210349440574646,\n",
+       "  0.08941852301359177,\n",
+       "  0.49443307518959045,\n",
+       "  0.6834864020347595,\n",
+       "  0.030288998037576675,\n",
+       "  0.4022229015827179,\n",
+       "  -0.027738414704799652,\n",
+       "  0.5054395198822021,\n",
+       "  0.5111376047134399,\n",
+       "  -0.18553893268108368,\n",
+       "  -0.8887874484062195,\n",
+       "  -0.6932130455970764,\n",
+       "  0.2818927466869354,\n",
+       "  -0.5914751887321472,\n",
+       "  -0.15466520190238953,\n",
+       "  0.020885543897747993,\n",
+       "  -0.3394120931625366,\n",
+       "  0.7122368812561035,\n",
+       "  -0.8371968865394592,\n",
+       "  -0.7580953240394592,\n",
+       "  0.21631324291229248,\n",
+       "  -0.3214702010154724,\n",
+       "  0.10291893780231476,\n",
+       "  -0.1894383281469345,\n",
+       "  0.552446186542511,\n",
+       "  -0.1661849468946457,\n",
+       "  -0.28603285551071167,\n",
+       "  -0.3890632390975952,\n",
+       "  0.8714359998703003,\n",
+       "  0.9080734848976135,\n",
+       "  0.06310735642910004,\n",
+       "  -0.6783433556556702,\n",
+       "  -0.467898428440094,\n",
+       "  -0.8733784556388855,\n",
+       "  -0.8396478295326233,\n",
+       "  0.4398952126502991,\n",
+       "  -0.15299327671527863,\n",
+       "  -0.48063158988952637,\n",
+       "  -0.3609691858291626,\n",
+       "  -0.11896490305662155,\n",
+       "  0.6504183411598206,\n",
+       "  -0.5323073267936707,\n",
+       "  0.5937050580978394,\n",
+       "  1.3630650043487549,\n",
+       "  -1.1628384590148926,\n",
+       "  -0.1730543076992035,\n",
+       "  0.10342907905578613,\n",
+       "  -0.03286043554544449,\n",
+       "  0.2443077713251114,\n",
+       "  -0.13159123063087463,\n",
+       "  0.25179243087768555,\n",
+       "  -0.41535839438438416,\n",
+       "  -0.24177208542823792,\n",
+       "  -0.12448311597108841,\n",
+       "  -0.8177970051765442,\n",
+       "  -1.1557691097259521,\n",
+       "  -1.055833101272583,\n",
+       "  0.47295454144477844,\n",
+       "  1.278720736503601,\n",
+       "  -0.0421457402408123,\n",
+       "  1.6001085042953491,\n",
+       "  -0.3118591904640198,\n",
+       "  -0.501964271068573,\n",
+       "  -0.7178589105606079,\n",
+       "  0.354057639837265,\n",
+       "  0.3875657320022583,\n",
+       "  0.2917666733264923,\n",
+       "  0.9190394878387451,\n",
+       "  0.1699265092611313,\n",
+       "  0.34634047746658325,\n",
+       "  0.3619774878025055,\n",
+       "  0.2515784502029419,\n",
+       "  -0.1314840018749237,\n",
+       "  0.1969815492630005,\n",
+       "  0.21605370938777924,\n",
+       "  -0.29424285888671875,\n",
+       "  -0.25702616572380066,\n",
+       "  0.4314003884792328,\n",
+       "  0.9353189468383789,\n",
+       "  -1.2694830894470215,\n",
+       "  -0.703385055065155,\n",
+       "  -0.29298868775367737,\n",
+       "  -0.03961457684636116,\n",
+       "  -0.6804059147834778,\n",
+       "  -0.938069224357605,\n",
+       "  0.25681132078170776,\n",
+       "  0.34114837646484375,\n",
+       "  0.06630713492631912,\n",
+       "  -0.20925447344779968,\n",
+       "  0.06135372817516327,\n",
+       "  -0.0292774997651577,\n",
+       "  0.9683889150619507,\n",
+       "  -0.1415303349494934,\n",
+       "  0.13003411889076233,\n",
+       "  -0.28229838609695435,\n",
+       "  -0.05650933459401131,\n",
+       "  0.6027146577835083,\n",
+       "  -0.8527910113334656,\n",
+       "  0.8387891054153442,\n",
+       "  -1.0144500732421875,\n",
+       "  -0.13234733045101166,\n",
+       "  0.0887543186545372,\n",
+       "  0.2335500866174698,\n",
+       "  0.5318927764892578,\n",
+       "  0.4429142475128174,\n",
+       "  0.4202386736869812,\n",
+       "  0.7799946665763855,\n",
+       "  -0.2124268263578415,\n",
+       "  0.7880118489265442,\n",
+       "  0.18811221420764923,\n",
+       "  -0.7036977410316467,\n",
+       "  0.5910786986351013,\n",
+       "  -0.41202467679977417,\n",
+       "  -0.8821630477905273,\n",
+       "  -0.47416970133781433,\n",
+       "  0.33798083662986755,\n",
+       "  -0.27297067642211914,\n",
+       "  -0.43055376410484314,\n",
+       "  -0.6825740933418274,\n",
+       "  -0.6926524639129639,\n",
+       "  0.8055598139762878,\n",
+       "  0.08102894574403763,\n",
+       "  -0.4228541851043701,\n",
+       "  0.16037718951702118,\n",
+       "  -0.15351197123527527,\n",
+       "  -0.6214717626571655,\n",
+       "  -0.690116286277771,\n",
+       "  -0.6669543981552124,\n",
+       "  -0.026535583660006523,\n",
+       "  -0.3141920864582062,\n",
+       "  -0.21991942822933197,\n",
+       "  0.08367064595222473,\n",
+       "  -0.2654389441013336,\n",
+       "  -0.4487183392047882,\n",
+       "  0.9583780169487,\n",
+       "  0.016767973080277443,\n",
+       "  1.1328634023666382,\n",
+       "  -0.3838687837123871,\n",
+       "  0.7252568602561951,\n",
+       "  -0.48928102850914,\n",
+       "  -0.8009410500526428,\n",
+       "  -0.48309576511383057,\n",
+       "  0.38519877195358276,\n",
+       "  -0.1801932007074356,\n",
+       "  -0.29743966460227966,\n",
+       "  -0.004791876766830683,\n",
+       "  -0.12718240916728973,\n",
+       "  -0.29024428129196167,\n",
+       "  0.6991103887557983,\n",
+       "  -0.35262465476989746,\n",
+       "  0.09094825387001038,\n",
+       "  -0.19963504374027252,\n",
+       "  -0.00040172284934669733,\n",
+       "  0.4298400282859802,\n",
+       "  0.2996506989002228,\n",
+       "  0.3386493921279907,\n",
+       "  0.7650848031044006,\n",
+       "  1.060438871383667,\n",
+       "  -0.2835727632045746,\n",
+       "  0.33754032850265503,\n",
+       "  -0.5697928071022034,\n",
+       "  -0.11919137090444565,\n",
+       "  -0.9314565062522888,\n",
+       "  0.3563353717327118,\n",
+       "  0.2549656331539154,\n",
+       "  0.2109297662973404,\n",
+       "  -0.456595778465271,\n",
+       "  -0.9328431487083435,\n",
+       "  0.016648896038532257,\n",
+       "  -0.8451475501060486,\n",
+       "  0.5809212923049927,\n",
+       "  -0.340518057346344,\n",
+       "  0.2827947437763214,\n",
+       "  -0.5396698117256165,\n",
+       "  -0.6092702746391296,\n",
+       "  -0.3723966181278229,\n",
+       "  0.6414639949798584,\n",
+       "  0.3107134699821472,\n",
+       "  -0.007445123046636581,\n",
+       "  0.08267766237258911,\n",
+       "  0.12798859179019928,\n",
+       "  -0.2169492542743683,\n",
+       "  -0.559959888458252,\n",
+       "  -0.5217579007148743,\n",
+       "  0.32909470796585083,\n",
+       "  0.7389576435089111,\n",
+       "  -0.293349027633667,\n",
+       "  -0.6930976510047913,\n",
+       "  0.7821656465530396,\n",
+       "  -0.47307252883911133,\n",
+       "  0.2648174464702606,\n",
+       "  -0.2046925574541092,\n",
+       "  -0.6862270832061768,\n",
+       "  -0.6999277472496033,\n",
+       "  -0.4833206534385681,\n",
+       "  0.15186196565628052,\n",
+       "  0.42044275999069214,\n",
+       "  0.4899252653121948,\n",
+       "  -0.06878598779439926,\n",
+       "  0.564720630645752,\n",
+       "  -0.36390984058380127,\n",
+       "  -0.8453814387321472,\n",
+       "  0.24788610637187958,\n",
+       "  -0.7377864122390747,\n",
+       "  -0.5077601075172424,\n",
+       "  0.06311396509408951,\n",
+       "  0.07020704448223114,\n",
+       "  0.2193564623594284,\n",
+       "  0.08405278623104095,\n",
+       "  -1.1775742769241333,\n",
+       "  0.0170441847294569,\n",
+       "  0.029659995809197426,\n",
+       "  0.3503907322883606,\n",
+       "  0.8535836338996887,\n",
+       "  1.0153495073318481,\n",
+       "  -0.008833479136228561,\n",
+       "  0.11853634566068649,\n",
+       "  0.09241313487291336,\n",
+       "  0.49566444754600525,\n",
+       "  0.02248520776629448,\n",
+       "  0.7640588879585266,\n",
+       "  0.03735516965389252,\n",
+       "  -1.245429515838623,\n",
+       "  0.6849268674850464,\n",
+       "  0.12653540074825287,\n",
+       "  0.4803661108016968,\n",
+       "  0.13430093228816986,\n",
+       "  0.07683700323104858,\n",
+       "  0.3195377588272095,\n",
+       "  -0.2754036784172058,\n",
+       "  -0.4229964315891266,\n",
+       "  0.894875168800354,\n",
+       "  -0.5222072005271912,\n",
+       "  -0.1649344265460968,\n",
+       "  0.08378858864307404,\n",
+       "  -0.29044657945632935,\n",
+       "  0.8531003594398499,\n",
+       "  -0.31961607933044434,\n",
+       "  0.12797744572162628,\n",
+       "  0.09183473885059357,\n",
+       "  -0.6410958766937256,\n",
+       "  -0.43033653497695923,\n",
+       "  0.783586859703064,\n",
+       "  1.0653300285339355,\n",
+       "  0.09725117683410645,\n",
+       "  0.17577630281448364,\n",
+       "  0.4870966076850891,\n",
+       "  0.22959446907043457,\n",
+       "  0.12173732370138168,\n",
+       "  -0.9747971296310425,\n",
+       "  -0.38040193915367126,\n",
+       "  0.5408453345298767,\n",
+       "  0.3166840672492981,\n",
+       "  0.32348302006721497,\n",
+       "  0.008488880470395088,\n",
+       "  0.5037934184074402,\n",
+       "  0.8255049586296082,\n",
+       "  -0.37979429960250854,\n",
+       "  -0.07706710696220398,\n",
+       "  0.7456242442131042,\n",
+       "  0.1814427226781845,\n",
+       "  0.11373350769281387,\n",
+       "  0.17987558245658875,\n",
+       "  -0.25761252641677856,\n",
+       "  0.3755275309085846,\n",
+       "  -0.22634661197662354,\n",
+       "  -0.5077285170555115,\n",
+       "  0.020015455782413483,\n",
+       "  -0.49857011437416077,\n",
+       "  0.12688034772872925,\n",
+       "  0.5388888716697693,\n",
+       "  -0.09130289405584335,\n",
+       "  1.0542702674865723,\n",
+       "  -0.33117565512657166,\n",
+       "  -0.03726742044091225,\n",
+       "  -0.9425621032714844,\n",
+       "  -0.0979095920920372,\n",
+       "  0.19087322056293488,\n",
+       "  0.1530478298664093,\n",
+       "  0.03234371542930603,\n",
+       "  0.1964159458875656,\n",
+       "  0.9765700101852417,\n",
+       "  0.15222042798995972,\n",
+       "  -0.2460227906703949,\n",
+       "  0.17485255002975464,\n",
+       "  0.7682655453681946,\n",
+       "  -0.0398302860558033,\n",
+       "  -0.8013843297958374,\n",
+       "  -0.1274305135011673,\n",
+       "  0.26694756746292114,\n",
+       "  0.16433237493038177,\n",
+       "  -0.7932276129722595,\n",
+       "  -0.7979598045349121,\n",
+       "  -1.3931635618209839,\n",
+       "  -0.012929664924740791,\n",
+       "  -0.8024943470954895,\n",
+       "  -0.23012343049049377,\n",
+       "  -0.14787796139717102,\n",
+       "  -1.3017325401306152,\n",
+       "  -0.325692743062973,\n",
+       "  -1.2839562892913818,\n",
+       "  0.2757335603237152,\n",
+       "  -0.2428918182849884,\n",
+       "  0.381331205368042,\n",
+       "  0.610768735408783,\n",
+       "  0.23639538884162903,\n",
+       "  0.22997033596038818,\n",
+       "  1.157219409942627,\n",
+       "  -0.10786467045545578,\n",
+       "  0.7831969857215881,\n",
+       "  0.7697864770889282,\n",
+       "  0.5605380535125732,\n",
+       "  -0.026723943650722504,\n",
+       "  0.45519131422042847,\n",
+       "  0.2872438430786133,\n",
+       "  -0.4689868688583374,\n",
+       "  -0.09962508827447891,\n",
+       "  0.05298158526420593,\n",
+       "  -0.05050082504749298,\n",
+       "  -0.30865341424942017,\n",
+       "  -0.4508135914802551,\n",
+       "  -0.8230398893356323,\n",
+       "  0.7545114755630493,\n",
+       "  0.08302313089370728,\n",
+       "  0.15095211565494537,\n",
+       "  -0.007315643131732941,\n",
+       "  0.35005661845207214,\n",
+       "  -0.027802370488643646,\n",
+       "  -0.7999009490013123,\n",
+       "  -0.18309427797794342,\n",
+       "  -0.32965219020843506,\n",
+       "  -0.716147243976593,\n",
+       "  0.35231006145477295,\n",
+       "  0.31334054470062256,\n",
+       "  0.9026334285736084,\n",
+       "  0.44286203384399414,\n",
+       "  -0.06066688150167465,\n",
+       "  -0.49386537075042725,\n",
+       "  -0.571142852306366,\n",
+       "  -0.42108890414237976,\n",
+       "  -0.8826929926872253,\n",
+       "  0.5461695194244385,\n",
+       "  -0.8487135767936707,\n",
+       "  -0.5901421904563904,\n",
+       "  -0.6019299626350403,\n",
+       "  -0.032040100544691086,\n",
+       "  -0.457055926322937,\n",
+       "  0.4428011476993561,\n",
+       "  -0.8541960716247559,\n",
+       "  -0.32525351643562317,\n",
+       "  0.7125647664070129,\n",
+       "  0.45189979672431946,\n",
+       "  -0.25928154587745667,\n",
+       "  -0.17774581909179688,\n",
+       "  -0.26920250058174133,\n",
+       "  0.08924514800310135,\n",
+       "  0.9944015145301819,\n",
+       "  0.7593095302581787,\n",
+       "  -0.25938305258750916,\n",
+       "  0.3242359459400177,\n",
+       "  -0.34961849451065063,\n",
+       "  -0.47478827834129333,\n",
+       "  -0.06921988725662231,\n",
+       "  -0.7078092694282532,\n",
+       "  0.7564664483070374,\n",
+       "  -0.5934049487113953,\n",
+       "  -0.5741901993751526,\n",
+       "  -0.44621846079826355,\n",
+       "  -0.2329241782426834,\n",
+       "  0.06570033729076385,\n",
+       "  -0.8043128848075867,\n",
+       "  0.3082607686519623,\n",
+       "  0.07662681490182877,\n",
+       "  0.7903819680213928,\n",
+       "  -0.8488594889640808,\n",
+       "  -0.9291868209838867,\n",
+       "  0.16850176453590393,\n",
+       "  -0.2045775055885315,\n",
+       "  -0.41875341534614563,\n",
+       "  0.05377103015780449,\n",
+       "  0.9302248954772949,\n",
+       "  0.1590145081281662,\n",
+       "  0.21007277071475983,\n",
+       "  -0.2307853251695633,\n",
+       "  -0.7894681692123413,\n",
+       "  4.072210788726807,\n",
+       "  1.0314375162124634,\n",
+       "  0.7413455843925476,\n",
+       "  0.2175021767616272,\n",
+       "  0.0460495725274086,\n",
+       "  0.7578788995742798,\n",
+       "  0.09630119055509567,\n",
+       "  0.23811012506484985,\n",
+       "  -0.36347854137420654,\n",
+       "  -0.2232029289007187,\n",
+       "  0.02932274155318737,\n",
+       "  0.564838171005249,\n",
+       "  0.22863909602165222,\n",
+       "  0.12459971755743027,\n",
+       "  0.0018232904840260744,\n",
+       "  0.8779709935188293,\n",
+       "  -0.9465978741645813,\n",
+       "  -0.7080463767051697,\n",
+       "  0.13964389264583588,\n",
+       "  -0.980272114276886,\n",
+       "  -0.7497457265853882,\n",
+       "  -0.3013603687286377,\n",
+       "  0.00335038173943758,\n",
+       "  0.46313101053237915,\n",
+       "  -0.441183865070343,\n",
+       "  -0.3438478708267212,\n",
+       "  0.22290784120559692,\n",
+       "  -0.4461698830127716,\n",
+       "  -0.4505060613155365,\n",
+       "  -0.5350180864334106,\n",
+       "  0.24498435854911804,\n",
+       "  -0.8108664751052856,\n",
+       "  -0.37081730365753174,\n",
+       "  -0.3678787350654602,\n",
+       "  -0.9506158828735352,\n",
+       "  0.4547770917415619,\n",
+       "  0.2541368305683136,\n",
+       "  0.20375360548496246,\n",
+       "  -0.5119951367378235,\n",
+       "  -0.11197996139526367,\n",
+       "  -0.6023352146148682,\n",
+       "  -0.11465101689100266,\n",
+       "  0.9323827624320984,\n",
+       "  -0.4218308925628662,\n",
+       "  0.025832125917077065,\n",
+       "  0.1128021776676178,\n",
+       "  -0.7623777389526367,\n",
+       "  0.21882113814353943,\n",
+       "  -0.1399582177400589,\n",
+       "  -0.9036707878112793,\n",
+       "  0.7563123106956482,\n",
+       "  -0.7850674986839294,\n",
+       "  0.2391638159751892,\n",
+       "  -0.22955968976020813,\n",
+       "  -1.3679088354110718,\n",
+       "  0.316941499710083,\n",
+       "  0.4251406788825989,\n",
+       "  -0.3749549090862274,\n",
+       "  0.13650032877922058,\n",
+       "  0.2597576379776001,\n",
+       "  0.19974054396152496,\n",
+       "  -0.32662948966026306,\n",
+       "  -0.2621956765651703,\n",
+       "  0.3228282332420349,\n",
+       "  -0.4554971754550934,\n",
+       "  0.5398443937301636,\n",
+       "  1.1019084453582764,\n",
+       "  0.7593320608139038,\n",
+       "  -0.5765718221664429,\n",
+       "  -0.015286562032997608,\n",
+       "  -0.2666643261909485,\n",
+       "  ...],\n",
+       " [0.33337298035621643,\n",
+       "  0.02006004936993122,\n",
+       "  0.29406389594078064,\n",
+       "  0.22592930495738983,\n",
+       "  -0.523647665977478,\n",
+       "  0.01782163418829441,\n",
+       "  1.0595035552978516,\n",
+       "  0.5688751935958862,\n",
+       "  0.1603807955980301,\n",
+       "  0.5898828506469727,\n",
+       "  0.3921133875846863,\n",
+       "  -0.19194403290748596,\n",
+       "  0.12333673238754272,\n",
+       "  -0.21691292524337769,\n",
+       "  -0.5172141790390015,\n",
+       "  -0.40508586168289185,\n",
+       "  -0.4508478343486786,\n",
+       "  -0.3571659028530121,\n",
+       "  -0.7934220433235168,\n",
+       "  0.18969739973545074,\n",
+       "  0.33381497859954834,\n",
+       "  1.0246347188949585,\n",
+       "  -1.4730311632156372,\n",
+       "  -0.2654559016227722,\n",
+       "  0.06955422461032867,\n",
+       "  -0.022328363731503487,\n",
+       "  -0.30525442957878113,\n",
+       "  0.03018275834619999,\n",
+       "  0.9212719798088074,\n",
+       "  0.6960930824279785,\n",
+       "  -0.7049258947372437,\n",
+       "  0.15746530890464783,\n",
+       "  -0.13638077676296234,\n",
+       "  -0.9200529456138611,\n",
+       "  -0.7241265773773193,\n",
+       "  -0.3133358955383301,\n",
+       "  -0.23478315770626068,\n",
+       "  -0.5569650530815125,\n",
+       "  -0.18596309423446655,\n",
+       "  -0.8341456055641174,\n",
+       "  0.6043726801872253,\n",
+       "  -0.2477843463420868,\n",
+       "  0.2233496606349945,\n",
+       "  0.006388794630765915,\n",
+       "  -0.7756876349449158,\n",
+       "  -0.19135569036006927,\n",
+       "  -0.15727661550045013,\n",
+       "  -1.0014227628707886,\n",
+       "  0.11967508494853973,\n",
+       "  -0.6124666929244995,\n",
+       "  0.10014550387859344,\n",
+       "  -0.6715226173400879,\n",
+       "  0.11013932526111603,\n",
+       "  0.4542386531829834,\n",
+       "  0.23326599597930908,\n",
+       "  0.45659443736076355,\n",
+       "  0.8691902160644531,\n",
+       "  0.6686016321182251,\n",
+       "  -0.15902860462665558,\n",
+       "  0.6661834120750427,\n",
+       "  -0.16782929003238678,\n",
+       "  0.698865532875061,\n",
+       "  -0.2955860495567322,\n",
+       "  -1.092231035232544,\n",
+       "  -0.015972834080457687,\n",
+       "  -0.08321477472782135,\n",
+       "  -0.3681206703186035,\n",
+       "  -0.9722222089767456,\n",
+       "  0.1314198225736618,\n",
+       "  0.5400716066360474,\n",
+       "  -0.17125047743320465,\n",
+       "  0.17715705931186676,\n",
+       "  -0.5123180747032166,\n",
+       "  -0.6307958364486694,\n",
+       "  -0.14410988986492157,\n",
+       "  0.36386820673942566,\n",
+       "  0.20329363644123077,\n",
+       "  0.06463875621557236,\n",
+       "  -0.045624300837516785,\n",
+       "  0.2660903036594391,\n",
+       "  0.25404325127601624,\n",
+       "  0.778957724571228,\n",
+       "  -0.18303298950195312,\n",
+       "  0.2889940142631531,\n",
+       "  -1.0060813426971436,\n",
+       "  0.12667034566402435,\n",
+       "  0.4112265706062317,\n",
+       "  0.20197828114032745,\n",
+       "  -0.07381415367126465,\n",
+       "  0.15803305804729462,\n",
+       "  -0.23140500485897064,\n",
+       "  0.5384538769721985,\n",
+       "  -0.42067664861679077,\n",
+       "  0.2042783945798874,\n",
+       "  0.5914250612258911,\n",
+       "  0.2336941659450531,\n",
+       "  -0.011780805885791779,\n",
+       "  0.4578266739845276,\n",
+       "  -0.11033887416124344,\n",
+       "  -0.34844693541526794,\n",
+       "  0.5218288898468018,\n",
+       "  0.39677658677101135,\n",
+       "  -0.08914858102798462,\n",
+       "  0.7628657221794128,\n",
+       "  -0.7942704558372498,\n",
+       "  -0.417886883020401,\n",
+       "  0.27624455094337463,\n",
+       "  0.32194775342941284,\n",
+       "  -0.9515729546546936,\n",
+       "  -0.42862173914909363,\n",
+       "  0.6025353670120239,\n",
+       "  -0.01767631061375141,\n",
+       "  0.7204714417457581,\n",
+       "  0.589661717414856,\n",
+       "  0.19199535250663757,\n",
+       "  0.5165079832077026,\n",
+       "  0.4547382593154907,\n",
+       "  1.0152316093444824,\n",
+       "  -0.9116500616073608,\n",
+       "  -0.33246293663978577,\n",
+       "  -0.12730614840984344,\n",
+       "  0.4682310223579407,\n",
+       "  0.14057376980781555,\n",
+       "  0.5323357582092285,\n",
+       "  -0.11350321024656296,\n",
+       "  -0.4165663719177246,\n",
+       "  -0.27480968832969666,\n",
+       "  0.4843340814113617,\n",
+       "  -0.2552838921546936,\n",
+       "  0.027400460094213486,\n",
+       "  -0.10291912406682968,\n",
+       "  -0.3142092227935791,\n",
+       "  0.45550480484962463,\n",
+       "  0.6906976699829102,\n",
+       "  0.38145995140075684,\n",
+       "  0.013644739054143429,\n",
+       "  -0.24501881003379822,\n",
+       "  1.0659372806549072,\n",
+       "  -0.19132722914218903,\n",
+       "  -0.4634144902229309,\n",
+       "  0.502338171005249,\n",
+       "  0.2830981910228729,\n",
+       "  0.23843777179718018,\n",
+       "  1.2106139659881592,\n",
+       "  0.4136737287044525,\n",
+       "  0.2081451267004013,\n",
+       "  -0.29765385389328003,\n",
+       "  -0.022599218413233757,\n",
+       "  -0.6633609533309937,\n",
+       "  0.16462424397468567,\n",
+       "  -0.2663154602050781,\n",
+       "  0.40329116582870483,\n",
+       "  -0.17215271294116974,\n",
+       "  0.575140655040741,\n",
+       "  -0.23595356941223145,\n",
+       "  -0.0679195374250412,\n",
+       "  0.19809095561504364,\n",
+       "  -0.2017083764076233,\n",
+       "  0.703376054763794,\n",
+       "  -0.208828866481781,\n",
+       "  -0.7117382287979126,\n",
+       "  -0.2612796127796173,\n",
+       "  -0.6522277593612671,\n",
+       "  0.19085578620433807,\n",
+       "  -0.21375998854637146,\n",
+       "  1.1422935724258423,\n",
+       "  -0.5978577136993408,\n",
+       "  0.22074031829833984,\n",
+       "  0.47781744599342346,\n",
+       "  0.03307531401515007,\n",
+       "  0.04792780056595802,\n",
+       "  0.22786223888397217,\n",
+       "  -0.08965915441513062,\n",
+       "  -0.07457009702920914,\n",
+       "  0.46671831607818604,\n",
+       "  1.1231400966644287,\n",
+       "  0.17039281129837036,\n",
+       "  -0.4739528298377991,\n",
+       "  0.840653657913208,\n",
+       "  0.3046075105667114,\n",
+       "  -0.23856320977210999,\n",
+       "  0.09542325139045715,\n",
+       "  0.2717638611793518,\n",
+       "  1.0638378858566284,\n",
+       "  0.12824612855911255,\n",
+       "  0.29804855585098267,\n",
+       "  0.2497713565826416,\n",
+       "  -0.009643753059208393,\n",
+       "  -0.4064204692840576,\n",
+       "  -0.5258654952049255,\n",
+       "  -0.3149794638156891,\n",
+       "  0.6216298341751099,\n",
+       "  -0.6467192769050598,\n",
+       "  0.7529037594795227,\n",
+       "  -0.49123141169548035,\n",
+       "  0.36221134662628174,\n",
+       "  -0.2963949143886566,\n",
+       "  -0.3134544789791107,\n",
+       "  -0.5826051235198975,\n",
+       "  -0.9187191128730774,\n",
+       "  -0.05792100727558136,\n",
+       "  0.7655676007270813,\n",
+       "  -0.3502368927001953,\n",
+       "  0.06841688603162766,\n",
+       "  -0.13598032295703888,\n",
+       "  -0.6753174662590027,\n",
+       "  0.6113227009773254,\n",
+       "  1.1845800876617432,\n",
+       "  -0.11031842976808548,\n",
+       "  0.9098318219184875,\n",
+       "  0.5527685284614563,\n",
+       "  0.07846181839704514,\n",
+       "  -0.9813363552093506,\n",
+       "  0.03474795073270798,\n",
+       "  -0.19674032926559448,\n",
+       "  0.2612990736961365,\n",
+       "  0.026111222803592682,\n",
+       "  1.3598994016647339,\n",
+       "  -0.5694597363471985,\n",
+       "  -0.01169208437204361,\n",
+       "  -0.06168972700834274,\n",
+       "  0.5088055729866028,\n",
+       "  0.27369225025177,\n",
+       "  0.8039237856864929,\n",
+       "  0.4718610644340515,\n",
+       "  -0.6337075233459473,\n",
+       "  0.24838368594646454,\n",
+       "  1.4119703769683838,\n",
+       "  0.09402940422296524,\n",
+       "  0.192125141620636,\n",
+       "  -0.21149837970733643,\n",
+       "  0.47530317306518555,\n",
+       "  0.47054359316825867,\n",
+       "  1.0105408430099487,\n",
+       "  0.8663490414619446,\n",
+       "  0.17772014439105988,\n",
+       "  1.0881112813949585,\n",
+       "  0.800692617893219,\n",
+       "  -0.8736886382102966,\n",
+       "  0.4604488015174866,\n",
+       "  -0.06111627444624901,\n",
+       "  -0.013670648448169231,\n",
+       "  0.1469733864068985,\n",
+       "  -0.3231627941131592,\n",
+       "  0.2870139479637146,\n",
+       "  0.3730476200580597,\n",
+       "  -0.12815532088279724,\n",
+       "  0.5387733578681946,\n",
+       "  -0.3937036991119385,\n",
+       "  0.3282574415206909,\n",
+       "  0.20119847357273102,\n",
+       "  0.18447081744670868,\n",
+       "  0.5136070847511292,\n",
+       "  0.4204138219356537,\n",
+       "  -1.2623183727264404,\n",
+       "  -0.03627987578511238,\n",
+       "  -0.29203176498413086,\n",
+       "  0.4513552188873291,\n",
+       "  -0.020403075963258743,\n",
+       "  -0.9387991428375244,\n",
+       "  0.5027630925178528,\n",
+       "  0.09852858632802963,\n",
+       "  0.05215165764093399,\n",
+       "  0.02853984758257866,\n",
+       "  0.6953203082084656,\n",
+       "  0.6391677260398865,\n",
+       "  -0.16501042246818542,\n",
+       "  0.75384920835495,\n",
+       "  -0.3739304542541504,\n",
+       "  -0.4510989189147949,\n",
+       "  -0.23435468971729279,\n",
+       "  -0.6683436036109924,\n",
+       "  -0.4364356994628906,\n",
+       "  -0.5166194438934326,\n",
+       "  -0.6888208389282227,\n",
+       "  -0.3339124321937561,\n",
+       "  0.8124140501022339,\n",
+       "  -0.3124043643474579,\n",
+       "  -0.007011388894170523,\n",
+       "  0.10305935889482498,\n",
+       "  -0.33510252833366394,\n",
+       "  -0.5807340145111084,\n",
+       "  -1.103222370147705,\n",
+       "  0.37464216351509094,\n",
+       "  -0.07387460768222809,\n",
+       "  0.5051655173301697,\n",
+       "  -0.40233567357063293,\n",
+       "  -0.23438723385334015,\n",
+       "  0.48371580243110657,\n",
+       "  0.9854409694671631,\n",
+       "  -0.6379954218864441,\n",
+       "  -0.8572129011154175,\n",
+       "  0.3165505528450012,\n",
+       "  -0.12044452130794525,\n",
+       "  0.09641540795564651,\n",
+       "  -0.09533822536468506,\n",
+       "  -0.1602795571088791,\n",
+       "  0.047207776457071304,\n",
+       "  -0.4326007664203644,\n",
+       "  -1.0536208152770996,\n",
+       "  0.8120434880256653,\n",
+       "  0.4786711037158966,\n",
+       "  -0.5882609486579895,\n",
+       "  -0.1819901019334793,\n",
+       "  -0.45424696803092957,\n",
+       "  0.8017213940620422,\n",
+       "  0.11142898350954056,\n",
+       "  -0.5334643125534058,\n",
+       "  0.4755026400089264,\n",
+       "  0.8635997176170349,\n",
+       "  -0.8725877404212952,\n",
+       "  0.16500402987003326,\n",
+       "  0.4843764901161194,\n",
+       "  0.375041127204895,\n",
+       "  -0.7822120785713196,\n",
+       "  0.2849026620388031,\n",
+       "  -0.0545157715678215,\n",
+       "  0.4773695170879364,\n",
+       "  -1.026876449584961,\n",
+       "  0.1688643991947174,\n",
+       "  -0.40855520963668823,\n",
+       "  -0.25200167298316956,\n",
+       "  -0.2483212649822235,\n",
+       "  0.1072358638048172,\n",
+       "  -0.5030602216720581,\n",
+       "  0.7955505847930908,\n",
+       "  0.5659346580505371,\n",
+       "  -1.4127376079559326,\n",
+       "  0.2981058359146118,\n",
+       "  -0.6198479533195496,\n",
+       "  -0.5340158939361572,\n",
+       "  0.027016988024115562,\n",
+       "  -0.10495337098836899,\n",
+       "  0.7541730999946594,\n",
+       "  -0.37054139375686646,\n",
+       "  -0.21316440403461456,\n",
+       "  0.5282447934150696,\n",
+       "  -0.21311892569065094,\n",
+       "  0.6581853628158569,\n",
+       "  -0.11338408291339874,\n",
+       "  1.4720278978347778,\n",
+       "  -0.4457148611545563,\n",
+       "  0.29888108372688293,\n",
+       "  0.3874196410179138,\n",
+       "  0.8064010739326477,\n",
+       "  0.1078956201672554,\n",
+       "  0.36585867404937744,\n",
+       "  -0.18932294845581055,\n",
+       "  0.17212094366550446,\n",
+       "  0.5691714286804199,\n",
+       "  0.1172683984041214,\n",
+       "  -0.07920059561729431,\n",
+       "  0.01207203883677721,\n",
+       "  -0.4906538426876068,\n",
+       "  -0.5533738732337952,\n",
+       "  0.1900777667760849,\n",
+       "  -0.5938198566436768,\n",
+       "  0.05791061371564865,\n",
+       "  0.529826283454895,\n",
+       "  -0.058250825852155685,\n",
+       "  0.8037002086639404,\n",
+       "  0.2171137034893036,\n",
+       "  0.06018542870879173,\n",
+       "  -0.42023923993110657,\n",
+       "  0.40969744324684143,\n",
+       "  -0.4719778299331665,\n",
+       "  -0.046741679310798645,\n",
+       "  -0.05339540168642998,\n",
+       "  -0.1618456393480301,\n",
+       "  -0.7888380289077759,\n",
+       "  1.0306456089019775,\n",
+       "  -0.2553476393222809,\n",
+       "  -0.4968341886997223,\n",
+       "  0.12717145681381226,\n",
+       "  0.47304674983024597,\n",
+       "  -0.23739096522331238,\n",
+       "  0.6066562533378601,\n",
+       "  0.2889617681503296,\n",
+       "  0.2079630047082901,\n",
+       "  -0.7067514657974243,\n",
+       "  0.17450673878192902,\n",
+       "  0.5637731552124023,\n",
+       "  1.019129991531372,\n",
+       "  -0.28278258442878723,\n",
+       "  0.5833974480628967,\n",
+       "  0.5789215564727783,\n",
+       "  -0.14316393435001373,\n",
+       "  -0.17400890588760376,\n",
+       "  -0.869565486907959,\n",
+       "  -0.2673444449901581,\n",
+       "  -0.799062967300415,\n",
+       "  0.34934860467910767,\n",
+       "  0.3961751461029053,\n",
+       "  0.022633258253335953,\n",
+       "  -1.4608420133590698,\n",
+       "  -0.8705185055732727,\n",
+       "  0.3428339958190918,\n",
+       "  0.4061702787876129,\n",
+       "  0.6089838743209839,\n",
+       "  -0.5418933629989624,\n",
+       "  0.6915159225463867,\n",
+       "  1.154362678527832,\n",
+       "  0.4530835449695587,\n",
+       "  0.9654828310012817,\n",
+       "  0.3842657506465912,\n",
+       "  0.14391981065273285,\n",
+       "  -0.5368731021881104,\n",
+       "  0.2777368426322937,\n",
+       "  0.23602232336997986,\n",
+       "  -0.8527593612670898,\n",
+       "  -0.7937656044960022,\n",
+       "  -0.5162080526351929,\n",
+       "  -0.4528389573097229,\n",
+       "  0.18370385468006134,\n",
+       "  0.6006118655204773,\n",
+       "  0.2790478467941284,\n",
+       "  -0.8608324527740479,\n",
+       "  -0.29005110263824463,\n",
+       "  -0.2544880509376526,\n",
+       "  0.1620083600282669,\n",
+       "  -0.6014496088027954,\n",
+       "  -0.03847014158964157,\n",
+       "  -0.6235532760620117,\n",
+       "  0.5749123096466064,\n",
+       "  0.25629138946533203,\n",
+       "  -1.0107581615447998,\n",
+       "  0.25732943415641785,\n",
+       "  -0.9812096953392029,\n",
+       "  0.48953700065612793,\n",
+       "  0.43293046951293945,\n",
+       "  0.24938367307186127,\n",
+       "  -0.41339924931526184,\n",
+       "  -0.47098976373672485,\n",
+       "  -0.04142199829220772,\n",
+       "  -0.1850498467683792,\n",
+       "  0.203985795378685,\n",
+       "  0.12312035262584686,\n",
+       "  0.331148236989975,\n",
+       "  0.6974695324897766,\n",
+       "  -1.119771957397461,\n",
+       "  0.6848002672195435,\n",
+       "  0.5144025683403015,\n",
+       "  0.16741561889648438,\n",
+       "  0.33643102645874023,\n",
+       "  0.47946038842201233,\n",
+       "  0.21024130284786224,\n",
+       "  0.3091551959514618,\n",
+       "  0.7789376378059387,\n",
+       "  -0.80717933177948,\n",
+       "  -0.3515343964099884,\n",
+       "  0.20816831290721893,\n",
+       "  -1.1832785606384277,\n",
+       "  0.32957813143730164,\n",
+       "  -0.6137903332710266,\n",
+       "  0.29530778527259827,\n",
+       "  -0.1956826150417328,\n",
+       "  -0.858967661857605,\n",
+       "  0.21364042162895203,\n",
+       "  0.5025348663330078,\n",
+       "  -0.8412559032440186,\n",
+       "  -0.37321245670318604,\n",
+       "  -0.12380901724100113,\n",
+       "  0.19590704143047333,\n",
+       "  -0.3227238953113556,\n",
+       "  -0.4664977490901947,\n",
+       "  1.2543898820877075,\n",
+       "  0.4810763895511627,\n",
+       "  -0.4362419545650482,\n",
+       "  0.6109074950218201,\n",
+       "  0.4369519054889679,\n",
+       "  -0.16665898263454437,\n",
+       "  0.15172532200813293,\n",
+       "  0.19131337106227875,\n",
+       "  -0.4149361848831177,\n",
+       "  0.23100414872169495,\n",
+       "  -0.8373755812644958,\n",
+       "  0.32446107268333435,\n",
+       "  -0.31461361050605774,\n",
+       "  -0.6101260781288147,\n",
+       "  1.097629189491272,\n",
+       "  -0.12076549977064133,\n",
+       "  0.19591975212097168,\n",
+       "  -0.33004486560821533,\n",
+       "  -0.5569248795509338,\n",
+       "  -0.16055253148078918,\n",
+       "  -1.1408393383026123,\n",
+       "  -0.4026479721069336,\n",
+       "  0.38586753606796265,\n",
+       "  -0.07469676434993744,\n",
+       "  0.3253757059574127,\n",
+       "  -0.4475138783454895,\n",
+       "  0.14933137595653534,\n",
+       "  0.20228543877601624,\n",
+       "  -0.32332006096839905,\n",
+       "  -0.22193846106529236,\n",
+       "  -0.49372151494026184,\n",
+       "  -0.47194990515708923,\n",
+       "  0.7426949143409729,\n",
+       "  0.20321024954319,\n",
+       "  -0.06921922415494919,\n",
+       "  0.6166821718215942,\n",
+       "  -0.42217525839805603,\n",
+       "  -0.6130588054656982,\n",
+       "  0.2502304017543793,\n",
+       "  0.27586495876312256,\n",
+       "  -0.6323974132537842,\n",
+       "  -0.4165205955505371,\n",
+       "  -0.09528110176324844,\n",
+       "  -0.38591331243515015,\n",
+       "  -0.3825629651546478,\n",
+       "  -0.05458390340209007,\n",
+       "  0.36158621311187744,\n",
+       "  -0.6488738656044006,\n",
+       "  -0.33502787351608276,\n",
+       "  -0.03957970067858696,\n",
+       "  0.5453405976295471,\n",
+       "  -0.523015558719635,\n",
+       "  -0.4035367965698242,\n",
+       "  -0.4531565010547638,\n",
+       "  0.6744226813316345,\n",
+       "  0.5671007037162781,\n",
+       "  -1.2616639137268066,\n",
+       "  0.3643752932548523,\n",
+       "  0.11575832217931747,\n",
+       "  -0.6785139441490173,\n",
+       "  0.3379829525947571,\n",
+       "  -0.09837386757135391,\n",
+       "  -0.534118115901947,\n",
+       "  -0.5068942308425903,\n",
+       "  -0.3973032534122467,\n",
+       "  -0.020721128210425377,\n",
+       "  -0.6782963275909424,\n",
+       "  -0.17098325490951538,\n",
+       "  0.3800031542778015,\n",
+       "  -0.23224514722824097,\n",
+       "  -0.08875378221273422,\n",
+       "  0.3050841689109802,\n",
+       "  -0.44239193201065063,\n",
+       "  0.2886126637458801,\n",
+       "  -0.2797392010688782,\n",
+       "  -0.48867833614349365,\n",
+       "  0.07997419685125351,\n",
+       "  -0.1064998134970665,\n",
+       "  -0.6894057393074036,\n",
+       "  -0.2610807716846466,\n",
+       "  -0.08244015276432037,\n",
+       "  0.725700855255127,\n",
+       "  1.6280871629714966,\n",
+       "  -0.34129852056503296,\n",
+       "  -0.29829180240631104,\n",
+       "  0.2138652354478836,\n",
+       "  0.8792173266410828,\n",
+       "  0.22503052651882172,\n",
+       "  0.49973824620246887,\n",
+       "  -0.08723818510770798,\n",
+       "  -0.6351423859596252,\n",
+       "  0.66599041223526,\n",
+       "  -0.06931690126657486,\n",
+       "  0.11845126748085022,\n",
+       "  0.054412808269262314,\n",
+       "  -0.2929384112358093,\n",
+       "  0.06840210407972336,\n",
+       "  -0.1983087807893753,\n",
+       "  -0.12743064761161804,\n",
+       "  -0.19372841715812683,\n",
+       "  -0.8743732571601868,\n",
+       "  -0.16913680732250214,\n",
+       "  0.17443998157978058,\n",
+       "  0.6963918805122375,\n",
+       "  -0.4569453299045563,\n",
+       "  -0.33058682084083557,\n",
+       "  -0.5040510296821594,\n",
+       "  0.4870394170284271,\n",
+       "  1.013931393623352,\n",
+       "  0.17772573232650757,\n",
+       "  -0.859871506690979,\n",
+       "  -0.6354172229766846,\n",
+       "  -0.7394052147865295,\n",
+       "  -1.0134317874908447,\n",
+       "  0.21716497838497162,\n",
+       "  -0.5441824197769165,\n",
+       "  0.07656727731227875,\n",
+       "  -0.8050359487533569,\n",
+       "  -0.38746634125709534,\n",
+       "  0.6108992695808411,\n",
+       "  0.025348778814077377,\n",
+       "  0.0554591529071331,\n",
+       "  1.1192638874053955,\n",
+       "  -0.46420106291770935,\n",
+       "  -0.09360028058290482,\n",
+       "  -0.8145939111709595,\n",
+       "  0.5652071833610535,\n",
+       "  0.5288896560668945,\n",
+       "  -0.47737547755241394,\n",
+       "  0.106320321559906,\n",
+       "  -0.03591075912117958,\n",
+       "  -1.0859755277633667,\n",
+       "  0.14692366123199463,\n",
+       "  -0.7618046402931213,\n",
+       "  -0.8747251033782959,\n",
+       "  -0.9018937945365906,\n",
+       "  0.34619826078414917,\n",
+       "  0.4967249631881714,\n",
+       "  -0.3446800112724304,\n",
+       "  0.6009508371353149,\n",
+       "  -0.5040149092674255,\n",
+       "  -0.2535114288330078,\n",
+       "  -0.9940255880355835,\n",
+       "  0.9777451157569885,\n",
+       "  1.0061124563217163,\n",
+       "  0.43243682384490967,\n",
+       "  0.798133134841919,\n",
+       "  -0.16374383866786957,\n",
+       "  -0.09608769416809082,\n",
+       "  0.8203686475753784,\n",
+       "  -0.08175600320100784,\n",
+       "  -1.0440312623977661,\n",
+       "  0.0528155192732811,\n",
+       "  1.4948172569274902,\n",
+       "  -0.4558491110801697,\n",
+       "  -0.9544349312782288,\n",
+       "  0.9710138440132141,\n",
+       "  0.7928891181945801,\n",
+       "  -0.7367203235626221,\n",
+       "  -0.3821394443511963,\n",
+       "  0.5050479173660278,\n",
+       "  -0.24570345878601074,\n",
+       "  -0.5429352521896362,\n",
+       "  -0.5734038949012756,\n",
+       "  0.4032129943370819,\n",
+       "  -0.09947071224451065,\n",
+       "  -0.07196611166000366,\n",
+       "  0.08138509094715118,\n",
+       "  0.08501191437244415,\n",
+       "  0.692768394947052,\n",
+       "  0.516019880771637,\n",
+       "  -0.23890283703804016,\n",
+       "  -0.3930414319038391,\n",
+       "  -0.32676461338996887,\n",
+       "  -0.5023223757743835,\n",
+       "  1.117282748222351,\n",
+       "  -1.1511528491973877,\n",
+       "  0.2514539361000061,\n",
+       "  -0.4545832872390747,\n",
+       "  0.14742887020111084,\n",
+       "  0.5285033583641052,\n",
+       "  0.04394351318478584,\n",
+       "  1.0828551054000854,\n",
+       "  -0.0893108919262886,\n",
+       "  -0.16613946855068207,\n",
+       "  0.02459716983139515,\n",
+       "  -0.060437265783548355,\n",
+       "  0.7265113592147827,\n",
+       "  -0.04100891575217247,\n",
+       "  -0.13135457038879395,\n",
+       "  0.5610867738723755,\n",
+       "  -0.46130144596099854,\n",
+       "  -0.5634089112281799,\n",
+       "  -0.3235207200050354,\n",
+       "  0.2439909428358078,\n",
+       "  -0.37141555547714233,\n",
+       "  -0.22560814023017883,\n",
+       "  -0.49496787786483765,\n",
+       "  0.22981230914592743,\n",
+       "  -0.28156283497810364,\n",
+       "  0.6008853912353516,\n",
+       "  -0.597093939781189,\n",
+       "  -0.2577124536037445,\n",
+       "  -0.6199463605880737,\n",
+       "  -1.0368645191192627,\n",
+       "  -0.4652043282985687,\n",
+       "  -0.15111424028873444,\n",
+       "  0.18776163458824158,\n",
+       "  -0.4463488757610321,\n",
+       "  0.6040583252906799,\n",
+       "  -0.06638869643211365,\n",
+       "  -0.34379249811172485,\n",
+       "  0.35486629605293274,\n",
+       "  0.551963210105896,\n",
+       "  -0.06376373767852783,\n",
+       "  0.6461917161941528,\n",
+       "  -0.5193460583686829,\n",
+       "  0.04135504737496376,\n",
+       "  -0.4560208022594452,\n",
+       "  -0.09819166362285614,\n",
+       "  -0.5202165842056274,\n",
+       "  0.3710121810436249,\n",
+       "  -0.5888710021972656,\n",
+       "  0.8580431938171387,\n",
+       "  -0.11344252526760101,\n",
+       "  0.3706965744495392,\n",
+       "  0.032807596027851105,\n",
+       "  0.5074489116668701,\n",
+       "  0.3968987762928009,\n",
+       "  0.4815812408924103,\n",
+       "  0.07075202465057373,\n",
+       "  -0.6092419624328613,\n",
+       "  0.0931212455034256,\n",
+       "  0.8402712345123291,\n",
+       "  0.41422921419143677,\n",
+       "  0.5295222997665405,\n",
+       "  0.3915819525718689,\n",
+       "  -0.03370828554034233,\n",
+       "  0.1485697329044342,\n",
+       "  -0.9483530521392822,\n",
+       "  -0.5270420908927917,\n",
+       "  -0.5873691439628601,\n",
+       "  -0.12930329144001007,\n",
+       "  0.12210045009851456,\n",
+       "  -0.2616996765136719,\n",
+       "  -0.9335662722587585,\n",
+       "  -1.307065725326538,\n",
+       "  -0.05007448419928551,\n",
+       "  -0.5319976806640625,\n",
+       "  0.10045923292636871,\n",
+       "  -0.4464053809642792,\n",
+       "  -0.33466365933418274,\n",
+       "  -0.1945812702178955,\n",
+       "  0.3344098925590515,\n",
+       "  0.48698386549949646,\n",
+       "  0.7741599678993225,\n",
+       "  0.06624109297990799,\n",
+       "  0.2849924862384796,\n",
+       "  -0.02437439002096653,\n",
+       "  0.34459421038627625,\n",
+       "  0.48707157373428345,\n",
+       "  -0.0011744890362024307,\n",
+       "  -0.11979769170284271,\n",
+       "  0.12876878678798676,\n",
+       "  0.5217507481575012,\n",
+       "  -0.5782056450843811,\n",
+       "  -0.049100663512945175,\n",
+       "  0.5967895984649658,\n",
+       "  -0.32750576734542847,\n",
+       "  1.295275092124939,\n",
+       "  0.23809798061847687,\n",
+       "  -0.8720280528068542,\n",
+       "  -0.8907445669174194,\n",
+       "  0.6736933588981628,\n",
+       "  0.5673532485961914,\n",
+       "  -0.04438159614801407,\n",
+       "  0.35714101791381836,\n",
+       "  -0.9200810194015503,\n",
+       "  0.03122362680733204,\n",
+       "  -0.6224260330200195,\n",
+       "  -0.2492886185646057,\n",
+       "  0.4913763701915741,\n",
+       "  -0.9695414304733276,\n",
+       "  -0.16624414920806885,\n",
+       "  0.16488976776599884,\n",
+       "  -0.5543433427810669,\n",
+       "  -0.0014817871851846576,\n",
+       "  -0.11340277642011642,\n",
+       "  -0.7348063588142395,\n",
+       "  -0.13255560398101807,\n",
+       "  -0.5947654843330383,\n",
+       "  0.6416608691215515,\n",
+       "  0.11564739793539047,\n",
+       "  0.5187666416168213,\n",
+       "  0.13580633699893951,\n",
+       "  -0.10638488084077835,\n",
+       "  -0.4954569637775421,\n",
+       "  -0.3444867730140686,\n",
+       "  0.1501612365245819,\n",
+       "  0.28334030508995056,\n",
+       "  -0.18209415674209595,\n",
+       "  -0.7256135940551758,\n",
+       "  0.09097934514284134,\n",
+       "  0.08745330572128296,\n",
+       "  0.2728079557418823,\n",
+       "  -0.7380597591400146,\n",
+       "  -0.30025893449783325,\n",
+       "  0.7116866707801819,\n",
+       "  -0.4461795389652252,\n",
+       "  -0.01990511454641819,\n",
+       "  0.6194266080856323,\n",
+       "  -0.18746225535869598,\n",
+       "  0.2138487994670868,\n",
+       "  -0.14399324357509613,\n",
+       "  -0.5129393935203552,\n",
+       "  0.7855989933013916,\n",
+       "  -0.2378549575805664,\n",
+       "  0.22164812684059143,\n",
+       "  -0.37670761346817017,\n",
+       "  -0.6745481491088867,\n",
+       "  -0.5170747637748718,\n",
+       "  0.46567031741142273,\n",
+       "  1.0807216167449951,\n",
+       "  0.9626607894897461,\n",
+       "  0.14403720200061798,\n",
+       "  0.0271042101085186,\n",
+       "  0.44585588574409485,\n",
+       "  -0.7525822520256042,\n",
+       "  -0.793507993221283,\n",
+       "  -0.4639089107513428,\n",
+       "  0.3724289834499359,\n",
+       "  0.6706063151359558,\n",
+       "  0.007857647724449635,\n",
+       "  0.07323038578033447,\n",
+       "  0.08483569324016571,\n",
+       "  0.7494832873344421,\n",
+       "  -0.6630513668060303,\n",
+       "  -0.6523663401603699,\n",
+       "  0.22919443249702454,\n",
+       "  -0.6444677114486694,\n",
+       "  -0.20680606365203857,\n",
+       "  0.31079399585723877,\n",
+       "  0.16374602913856506,\n",
+       "  0.8246950507164001,\n",
+       "  0.24202780425548553,\n",
+       "  -0.2570505440235138,\n",
+       "  0.06788535416126251,\n",
+       "  -0.7197138667106628,\n",
+       "  -0.14464499056339264,\n",
+       "  0.075093574821949,\n",
+       "  -0.35472220182418823,\n",
+       "  0.6398672461509705,\n",
+       "  -1.0748943090438843,\n",
+       "  0.5152992606163025,\n",
+       "  -0.4245350956916809,\n",
+       "  -0.5303300023078918,\n",
+       "  -0.7421443462371826,\n",
+       "  0.4181268811225891,\n",
+       "  0.17719054222106934,\n",
+       "  0.6649417877197266,\n",
+       "  0.7067188024520874,\n",
+       "  0.17166191339492798,\n",
+       "  0.824521541595459,\n",
+       "  0.22738133370876312,\n",
+       "  0.07140923291444778,\n",
+       "  0.4856291711330414,\n",
+       "  -0.8680378794670105,\n",
+       "  -0.9694925546646118,\n",
+       "  -0.2650892734527588,\n",
+       "  -0.2923256456851959,\n",
+       "  -0.40910470485687256,\n",
+       "  -0.791467547416687,\n",
+       "  -0.9966763854026794,\n",
+       "  0.35533055663108826,\n",
+       "  0.28326791524887085,\n",
+       "  -0.1573113203048706,\n",
+       "  0.4080241918563843,\n",
+       "  -0.6599385142326355,\n",
+       "  -0.048158757388591766,\n",
+       "  -0.8654828071594238,\n",
+       "  0.7412445545196533,\n",
+       "  -0.059746816754341125,\n",
+       "  -0.2391999065876007,\n",
+       "  1.013134241104126,\n",
+       "  -0.2184017300605774,\n",
+       "  0.32816949486732483,\n",
+       "  0.8563316464424133,\n",
+       "  -0.5475587844848633,\n",
+       "  0.4314652979373932,\n",
+       "  0.5650091171264648,\n",
+       "  0.6654657125473022,\n",
+       "  0.37515509128570557,\n",
+       "  0.6548658013343811,\n",
+       "  0.5707045197486877,\n",
+       "  -0.5134177803993225,\n",
+       "  -0.3254169523715973,\n",
+       "  0.058681562542915344,\n",
+       "  -0.014952561818063259,\n",
+       "  -1.0734052658081055,\n",
+       "  0.19492284953594208,\n",
+       "  -0.41136619448661804,\n",
+       "  -0.05579788610339165,\n",
+       "  -0.42256245017051697,\n",
+       "  0.038446128368377686,\n",
+       "  -0.4254162907600403,\n",
+       "  0.5091780424118042,\n",
+       "  0.10499109327793121,\n",
+       "  -0.7356489896774292,\n",
+       "  -0.38812193274497986,\n",
+       "  -0.11899396777153015,\n",
+       "  -0.07734769582748413,\n",
+       "  0.7848846912384033,\n",
+       "  0.517977237701416,\n",
+       "  0.9205548167228699,\n",
+       "  0.6229963302612305,\n",
+       "  0.554986298084259,\n",
+       "  -0.4912668466567993,\n",
+       "  0.22338858246803284,\n",
+       "  0.4977974593639374,\n",
+       "  -0.5370557308197021,\n",
+       "  0.22506436705589294,\n",
+       "  -0.36914753913879395,\n",
+       "  -0.6461860537528992,\n",
+       "  -0.05157399922609329,\n",
+       "  -0.5574749708175659,\n",
+       "  -0.1268477439880371,\n",
+       "  -0.19992513954639435,\n",
+       "  -0.3653377890586853,\n",
+       "  -0.6331583261489868,\n",
+       "  0.04171421006321907,\n",
+       "  0.7474424242973328,\n",
+       "  -0.010283359326422215,\n",
+       "  0.31586945056915283,\n",
+       "  -0.39855462312698364,\n",
+       "  0.4816909730434418,\n",
+       "  0.9028955698013306,\n",
+       "  0.8125403523445129,\n",
+       "  -0.8311466574668884,\n",
+       "  0.4947796165943146,\n",
+       "  0.08468551933765411,\n",
+       "  -0.5357757210731506,\n",
+       "  -0.20605307817459106,\n",
+       "  -0.6768448948860168,\n",
+       "  0.5313697457313538,\n",
+       "  -0.22020414471626282,\n",
+       "  0.21218667924404144,\n",
+       "  -0.61190265417099,\n",
+       "  -0.28624528646469116,\n",
+       "  -0.2993525564670563,\n",
+       "  -0.39397233724594116,\n",
+       "  -0.5008349418640137,\n",
+       "  0.7934759855270386,\n",
+       "  0.25255754590034485,\n",
+       "  -0.5300459265708923,\n",
+       "  -0.8620027899742126,\n",
+       "  -0.3550799489021301,\n",
+       "  -0.5558770298957825,\n",
+       "  -0.1285102367401123,\n",
+       "  -0.4108595550060272,\n",
+       "  0.8588772416114807,\n",
+       "  0.6698674559593201,\n",
+       "  0.02788524143397808,\n",
+       "  0.6135531663894653,\n",
+       "  -1.2352819442749023,\n",
+       "  4.117743492126465,\n",
+       "  0.5004256963729858,\n",
+       "  0.8554301261901855,\n",
+       "  -0.24860478937625885,\n",
+       "  -0.09161481261253357,\n",
+       "  0.5994160771369934,\n",
+       "  -0.26748740673065186,\n",
+       "  -0.08047442138195038,\n",
+       "  -0.29965639114379883,\n",
+       "  -0.8341971635818481,\n",
+       "  0.08606543391942978,\n",
+       "  0.024018365889787674,\n",
+       "  0.22074256837368011,\n",
+       "  0.04627253860235214,\n",
+       "  0.0013079888885840774,\n",
+       "  0.5470229387283325,\n",
+       "  -0.22071290016174316,\n",
+       "  -0.49633893370628357,\n",
+       "  0.12132851779460907,\n",
+       "  -0.29538801312446594,\n",
+       "  -0.1026589497923851,\n",
+       "  0.33525869250297546,\n",
+       "  -0.0020568848121911287,\n",
+       "  -0.06655574589967728,\n",
+       "  0.10691098123788834,\n",
+       "  -0.26251381635665894,\n",
+       "  0.9879724979400635,\n",
+       "  -0.39358532428741455,\n",
+       "  -0.7269737124443054,\n",
+       "  -0.30490443110466003,\n",
+       "  -0.38031333684921265,\n",
+       "  -0.30638155341148376,\n",
+       "  -0.4956100881099701,\n",
+       "  0.016653066501021385,\n",
+       "  -0.9541082382202148,\n",
+       "  0.40978488326072693,\n",
+       "  0.1490773856639862,\n",
+       "  0.06736554950475693,\n",
+       "  -0.7975549101829529,\n",
+       "  0.38396647572517395,\n",
+       "  -0.3804899752140045,\n",
+       "  0.06215175241231918,\n",
+       "  0.8273525238037109,\n",
+       "  -0.8432930707931519,\n",
+       "  -0.05744561553001404,\n",
+       "  0.24414527416229248,\n",
+       "  -0.6568121910095215,\n",
+       "  0.4030216932296753,\n",
+       "  0.06649532914161682,\n",
+       "  -0.47736960649490356,\n",
+       "  0.8090847134590149,\n",
+       "  -0.4633845388889313,\n",
+       "  0.2599547207355499,\n",
+       "  -0.9576112031936646,\n",
+       "  -0.7422605156898499,\n",
+       "  -0.02015363611280918,\n",
+       "  0.20850639045238495,\n",
+       "  -0.22161859273910522,\n",
+       "  -0.36194825172424316,\n",
+       "  0.2561335563659668,\n",
+       "  -0.03479013219475746,\n",
+       "  -0.35598382353782654,\n",
+       "  -0.2267131507396698,\n",
+       "  0.5062740445137024,\n",
+       "  -0.8605638742446899,\n",
+       "  0.3181823790073395,\n",
+       "  0.5258446335792542,\n",
+       "  -0.03991806507110596,\n",
+       "  -0.6525282263755798,\n",
+       "  0.28436800837516785,\n",
+       "  -0.17757639288902283,\n",
+       "  ...]]"
+      ]
+     },
+     "execution_count": 3,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "encoder(\"Hey\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Now we define the `RouteLayer`. When called, the route layer will consume text (a query) and output the category (`Route`) it belongs to — to initialize a `RouteLayer` we need our `encoder` model and a list of `routes`."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "\u001b[32m2024-04-14 20:02:32 INFO semantic_router.utils.logger local\u001b[0m\n"
+     ]
+    }
+   ],
+   "source": [
+    "from semantic_router.layer import RouteLayer\n",
+    "\n",
+    "rl = RouteLayer(encoder=encoder, routes=routes)"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "We can check the dimensionality of our vectors by looking at the `index` attribute of the `RouteLayer`."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "LocalIndex(index=array([[ 0.37762564,  0.37923592,  0.04006954, ...,  0.2910035 ,\n",
+       "         0.14261879, -0.14989774],\n",
+       "       [ 0.14489685, -0.47280183, -0.13473961, ..., -0.184137  ,\n",
+       "        -0.44280073, -0.96940869],\n",
+       "       [ 1.16709912,  0.38906148,  0.24399863, ...,  0.03619115,\n",
+       "        -0.00167309,  0.50425595],\n",
+       "       ...,\n",
+       "       [-0.64046752,  0.45156148, -0.27317011, ..., -0.64851284,\n",
+       "        -0.10258984,  0.15441738],\n",
+       "       [-0.11908327,  0.4233726 , -0.29102552, ..., -0.69622546,\n",
+       "         0.27602831,  0.2030668 ],\n",
+       "       [-0.06046702, -0.18556708, -0.45608515, ..., -0.86009502,\n",
+       "        -0.01424424, -0.489003  ]]), routes=array(['politics', 'politics', 'politics', 'politics', 'politics',\n",
+       "       'politics', 'chitchat', 'chitchat', 'chitchat', 'chitchat',\n",
+       "       'chitchat'], dtype='<U8'), utterances=array([\"isn't politics the best thing ever\",\n",
+       "       \"why don't you tell me about your political opinions\",\n",
+       "       \"don't you just love the president\",\n",
+       "       \"don't you just hate the president\",\n",
+       "       \"they're going to destroy this country!\",\n",
+       "       'they will save the country!', \"how's the weather today?\",\n",
+       "       'how are things going?', 'lovely weather today',\n",
+       "       'the weather is horrendous', \"let's go to the chippy\"],\n",
+       "      dtype='<U51'), dimensions=None, type='local')"
+      ]
+     },
+     "execution_count": 6,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "rl.index"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "We do have 1024-dimensional vectors. Now let's test them:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "RouteChoice(name='politics', function_call=None, similarity_score=None)"
+      ]
+     },
+     "execution_count": 7,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "rl(\"tell me about your political opinions?\")"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "RouteChoice(name='chitchat', function_call=None, similarity_score=None)"
+      ]
+     },
+     "execution_count": 8,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "rl(\"how's the weather today?\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "Both are classified accurately, what if we send a query that is unrelated to our existing `Route` objects?"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "RouteChoice(name=None, function_call=None, similarity_score=None)"
+      ]
+     },
+     "execution_count": 9,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "rl(\"I'm interested in learning about llama 2\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "In this case, we return `None` because no matches were identified. We always recommend optimizing your `RouteLayer` for optimal performance, you can see how in [this notebook](https://github.com/aurelio-labs/semantic-router/blob/main/docs/06-threshold-optimization.ipynb)."
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "---"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "decision-layer",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.12.2"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
diff --git a/docs/encoders/huggingface.ipynb b/docs/encoders/huggingface.ipynb
index f0b4b8ba1ecacb2b73db9d75969de71f67b88bd9..cd553a75d261fee9a2327045c898e03e99351dbf 100644
--- a/docs/encoders/huggingface.ipynb
+++ b/docs/encoders/huggingface.ipynb
@@ -53,9 +53,18 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 1,
+   "execution_count": 2,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "d:\\Program_Installation\\anaconda\\envs\\testenv\\Lib\\site-packages\\tqdm\\auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
+      "  from .autonotebook import tqdm as notebook_tqdm\n"
+     ]
+    }
+   ],
    "source": [
     "from semantic_router import Route\n",
     "\n",
@@ -88,7 +97,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 2,
+   "execution_count": 3,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -115,21 +124,19 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 3,
+   "execution_count": 4,
    "metadata": {},
    "outputs": [
     {
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "/Users/jamesbriggs/opt/anaconda3/envs/decision-layer/lib/python3.11/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
-      "  from .autonotebook import tqdm as notebook_tqdm\n",
-      "tokenizer_config.json: 100%|██████████| 350/350 [00:00<00:00, 1.06MB/s]\n",
-      "vocab.txt: 100%|██████████| 232k/232k [00:00<00:00, 1.05MB/s]\n",
-      "tokenizer.json: 100%|██████████| 466k/466k [00:00<00:00, 1.43MB/s]\n",
-      "special_tokens_map.json: 100%|██████████| 112/112 [00:00<00:00, 386kB/s]\n",
-      "config.json: 100%|██████████| 612/612 [00:00<00:00, 2.90MB/s]\n",
-      "pytorch_model.bin: 100%|██████████| 90.9M/90.9M [00:01<00:00, 63.2MB/s]\n"
+      "tokenizer_config.json: 100%|██████████| 350/350 [00:00<?, ?B/s] \n",
+      "vocab.txt: 100%|██████████| 232k/232k [00:00<00:00, 950kB/s]\n",
+      "tokenizer.json: 100%|██████████| 466k/466k [00:00<00:00, 630kB/s]\n",
+      "special_tokens_map.json: 100%|██████████| 112/112 [00:00<?, ?B/s] \n",
+      "config.json: 100%|██████████| 612/612 [00:00<?, ?B/s] \n",
+      "model.safetensors: 100%|██████████| 90.9M/90.9M [00:03<00:00, 25.8MB/s]\n"
      ]
     }
    ],
@@ -139,6 +146,409 @@
     "encoder = HuggingFaceEncoder()"
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "[[-0.11423865705728531,\n",
+       "  0.013737470842897892,\n",
+       "  0.05483824759721756,\n",
+       "  0.02612205408513546,\n",
+       "  0.03366684541106224,\n",
+       "  -0.0807342678308487,\n",
+       "  0.1294635385274887,\n",
+       "  0.03305264189839363,\n",
+       "  -0.02904639206826687,\n",
+       "  -0.04729180410504341,\n",
+       "  -0.01743963174521923,\n",
+       "  0.010834690183401108,\n",
+       "  -0.013411852531135082,\n",
+       "  -0.002171672647818923,\n",
+       "  0.01874753087759018,\n",
+       "  0.00762708717957139,\n",
+       "  0.025326967239379883,\n",
+       "  -0.10684280842542648,\n",
+       "  -0.09309743344783783,\n",
+       "  0.06578213721513748,\n",
+       "  0.03600294888019562,\n",
+       "  0.030101895332336426,\n",
+       "  0.010903903283178806,\n",
+       "  -0.014277834445238113,\n",
+       "  -0.05480341985821724,\n",
+       "  -0.046608816832304,\n",
+       "  0.03811933100223541,\n",
+       "  0.09334418922662735,\n",
+       "  -0.08844338357448578,\n",
+       "  -0.00015365486615337431,\n",
+       "  -0.05805235356092453,\n",
+       "  0.040658798068761826,\n",
+       "  0.03602350875735283,\n",
+       "  -0.00012040344881825149,\n",
+       "  0.0014777182368561625,\n",
+       "  -0.01575486548244953,\n",
+       "  -0.0839557945728302,\n",
+       "  -0.1172216534614563,\n",
+       "  0.02088264748454094,\n",
+       "  0.03227342665195465,\n",
+       "  -0.01875143311917782,\n",
+       "  -0.006739516742527485,\n",
+       "  -0.013505082577466965,\n",
+       "  0.07939152419567108,\n",
+       "  0.03261948749423027,\n",
+       "  -0.021357867866754532,\n",
+       "  -0.026340456679463387,\n",
+       "  0.02579592913389206,\n",
+       "  0.018229736015200615,\n",
+       "  -0.003337700152769685,\n",
+       "  -0.03188186511397362,\n",
+       "  -0.07872839272022247,\n",
+       "  -0.04228793457150459,\n",
+       "  0.012792701832950115,\n",
+       "  0.14339058101177216,\n",
+       "  0.09618547558784485,\n",
+       "  0.018152154982089996,\n",
+       "  -0.0530053973197937,\n",
+       "  0.09879206120967865,\n",
+       "  -0.0907149612903595,\n",
+       "  -0.08342350274324417,\n",
+       "  0.012273512780666351,\n",
+       "  -0.0819632038474083,\n",
+       "  -0.05105786770582199,\n",
+       "  0.014089709147810936,\n",
+       "  -0.01016179844737053,\n",
+       "  -0.03907155245542526,\n",
+       "  -0.019414644688367844,\n",
+       "  -0.046597715467214584,\n",
+       "  -0.031130781397223473,\n",
+       "  -0.019644174724817276,\n",
+       "  -0.016959073022007942,\n",
+       "  -0.03439386188983917,\n",
+       "  -0.06818914413452148,\n",
+       "  0.037960320711135864,\n",
+       "  -0.027920439839363098,\n",
+       "  0.03703640401363373,\n",
+       "  0.013515403494238853,\n",
+       "  0.001978617860004306,\n",
+       "  -0.00359722669236362,\n",
+       "  0.025217901915311813,\n",
+       "  -0.09175395220518112,\n",
+       "  -0.05270292982459068,\n",
+       "  0.0339379645884037,\n",
+       "  -0.009566015563905239,\n",
+       "  -0.09692132472991943,\n",
+       "  0.0827004685997963,\n",
+       "  -0.003031309926882386,\n",
+       "  -0.014253348112106323,\n",
+       "  0.01019090786576271,\n",
+       "  -0.09519690275192261,\n",
+       "  -0.0002853995538316667,\n",
+       "  0.042065463960170746,\n",
+       "  -0.05857514962553978,\n",
+       "  -0.03812193498015404,\n",
+       "  -0.06450342386960983,\n",
+       "  0.06234588846564293,\n",
+       "  0.035958241671323776,\n",
+       "  -0.09367603063583374,\n",
+       "  0.25373566150665283,\n",
+       "  0.016129741445183754,\n",
+       "  0.07738282531499863,\n",
+       "  0.031760625541210175,\n",
+       "  0.02651532180607319,\n",
+       "  -0.038190484046936035,\n",
+       "  0.026544027030467987,\n",
+       "  -0.0876961499452591,\n",
+       "  0.07003381103277206,\n",
+       "  -0.030265210196375847,\n",
+       "  -0.016104521229863167,\n",
+       "  0.04457677900791168,\n",
+       "  0.00757654057815671,\n",
+       "  0.014453830197453499,\n",
+       "  0.04364680498838425,\n",
+       "  0.1351340413093567,\n",
+       "  0.06684476137161255,\n",
+       "  0.06541601568460464,\n",
+       "  0.02084515616297722,\n",
+       "  -0.008347414433956146,\n",
+       "  -0.07750769704580307,\n",
+       "  -0.0319858118891716,\n",
+       "  -0.03544182702898979,\n",
+       "  -0.001698172534815967,\n",
+       "  -0.021968062967061996,\n",
+       "  0.09773769229650497,\n",
+       "  -0.02362070232629776,\n",
+       "  0.022215133532881737,\n",
+       "  -5.968164449355239e-33,\n",
+       "  0.054632093757390976,\n",
+       "  0.00846831128001213,\n",
+       "  -0.011441917158663273,\n",
+       "  0.13195011019706726,\n",
+       "  0.01962447725236416,\n",
+       "  -0.04277697578072548,\n",
+       "  -0.05078886076807976,\n",
+       "  0.021259799599647522,\n",
+       "  -0.04665791988372803,\n",
+       "  0.01371921319514513,\n",
+       "  0.0699634850025177,\n",
+       "  0.03471170365810394,\n",
+       "  -0.056665170937776566,\n",
+       "  0.009710577316582203,\n",
+       "  0.008900151588022709,\n",
+       "  0.04218043386936188,\n",
+       "  -0.03082343190908432,\n",
+       "  -0.003828516462817788,\n",
+       "  -0.009247229434549809,\n",
+       "  0.010788359679281712,\n",
+       "  -0.030083660036325455,\n",
+       "  -0.047238800674676895,\n",
+       "  0.017595993354916573,\n",
+       "  0.0810183510184288,\n",
+       "  0.004849777091294527,\n",
+       "  -0.036722999066114426,\n",
+       "  0.035562388598918915,\n",
+       "  -0.068642258644104,\n",
+       "  0.05170796439051628,\n",
+       "  0.010919257067143917,\n",
+       "  -0.009729581885039806,\n",
+       "  0.009294673800468445,\n",
+       "  0.03926905244588852,\n",
+       "  0.06409227102994919,\n",
+       "  -0.010028756223618984,\n",
+       "  -0.023192133754491806,\n",
+       "  0.07778891175985336,\n",
+       "  -0.0003171116695739329,\n",
+       "  -0.031507618725299835,\n",
+       "  0.03035464882850647,\n",
+       "  -0.020111646503210068,\n",
+       "  0.024977393448352814,\n",
+       "  0.02069445326924324,\n",
+       "  -0.03973761200904846,\n",
+       "  0.06862123310565948,\n",
+       "  0.08910191804170609,\n",
+       "  -0.02524728514254093,\n",
+       "  0.009801230393350124,\n",
+       "  0.02022949978709221,\n",
+       "  -0.004629763774573803,\n",
+       "  -0.06564957648515701,\n",
+       "  0.05281716212630272,\n",
+       "  -0.09382486343383789,\n",
+       "  -0.007978985086083412,\n",
+       "  -0.07739488780498505,\n",
+       "  -0.04856621101498604,\n",
+       "  -0.015814466401934624,\n",
+       "  -0.01335339155048132,\n",
+       "  0.05370025709271431,\n",
+       "  0.03840520977973938,\n",
+       "  0.025062285363674164,\n",
+       "  0.02736000530421734,\n",
+       "  -0.03568736091256142,\n",
+       "  -0.03636045753955841,\n",
+       "  -0.1445392668247223,\n",
+       "  -0.05933190882205963,\n",
+       "  0.03519044816493988,\n",
+       "  0.013504653237760067,\n",
+       "  0.024751951918005943,\n",
+       "  -0.04175782948732376,\n",
+       "  -0.009688134305179119,\n",
+       "  0.010052510537207127,\n",
+       "  0.005975383333861828,\n",
+       "  0.009347953833639622,\n",
+       "  0.012808509171009064,\n",
+       "  -0.0017119830008596182,\n",
+       "  0.08629827201366425,\n",
+       "  0.007543443702161312,\n",
+       "  0.01831595040857792,\n",
+       "  -0.029061343520879745,\n",
+       "  0.09248100966215134,\n",
+       "  -0.008599715307354927,\n",
+       "  0.00978198740631342,\n",
+       "  -0.05404217913746834,\n",
+       "  0.029240770265460014,\n",
+       "  0.035454150289297104,\n",
+       "  -0.02278723753988743,\n",
+       "  -0.096394382417202,\n",
+       "  -0.015356332994997501,\n",
+       "  -0.02890510857105255,\n",
+       "  -0.09170844405889511,\n",
+       "  0.060586266219615936,\n",
+       "  0.03915942832827568,\n",
+       "  0.002108626300469041,\n",
+       "  -0.007839742116630077,\n",
+       "  4.4580682029652795e-33,\n",
+       "  0.06484320014715195,\n",
+       "  0.09692490845918655,\n",
+       "  -0.02026134543120861,\n",
+       "  0.009838089346885681,\n",
+       "  -0.05348040536046028,\n",
+       "  -0.004755859263241291,\n",
+       "  -0.005625511985272169,\n",
+       "  0.11271227151155472,\n",
+       "  -0.1243550255894661,\n",
+       "  0.002774117747321725,\n",
+       "  0.004616657737642527,\n",
+       "  -0.061961520463228226,\n",
+       "  -0.016888946294784546,\n",
+       "  0.021102236583828926,\n",
+       "  0.03668638691306114,\n",
+       "  -0.010692193172872066,\n",
+       "  0.08665463328361511,\n",
+       "  -0.030606906861066818,\n",
+       "  -0.10806894302368164,\n",
+       "  -0.044540874660015106,\n",
+       "  -0.0013643245911225677,\n",
+       "  -0.04080400615930557,\n",
+       "  -0.006068442016839981,\n",
+       "  0.016468241810798645,\n",
+       "  0.00019835171406157315,\n",
+       "  0.02686193212866783,\n",
+       "  -0.050506819039583206,\n",
+       "  0.04688209667801857,\n",
+       "  -0.05142483115196228,\n",
+       "  0.0071433898992836475,\n",
+       "  0.07447455823421478,\n",
+       "  0.02418288215994835,\n",
+       "  -0.04474595561623573,\n",
+       "  -0.04281294718384743,\n",
+       "  0.029996385797858238,\n",
+       "  0.046952422708272934,\n",
+       "  -0.013240410946309566,\n",
+       "  -0.07489501684904099,\n",
+       "  0.02129260264337063,\n",
+       "  -0.06636284291744232,\n",
+       "  -0.0923016369342804,\n",
+       "  -0.020468896254897118,\n",
+       "  -0.012797920033335686,\n",
+       "  0.052056651562452316,\n",
+       "  0.0018882454605773091,\n",
+       "  -0.005012952722609043,\n",
+       "  0.032687779515981674,\n",
+       "  0.023257508873939514,\n",
+       "  -0.06360457837581635,\n",
+       "  0.027944521978497505,\n",
+       "  -0.0820653885602951,\n",
+       "  -0.05012356862425804,\n",
+       "  0.007555392105132341,\n",
+       "  0.02247454971075058,\n",
+       "  -0.014787756837904453,\n",
+       "  -0.013764528557658195,\n",
+       "  -0.008079699240624905,\n",
+       "  0.043655943125486374,\n",
+       "  -0.03173394128680229,\n",
+       "  -0.010333573445677757,\n",
+       "  -0.004562370479106903,\n",
+       "  0.0429571270942688,\n",
+       "  0.06618060916662216,\n",
+       "  0.08465901762247086,\n",
+       "  -0.008432728238403797,\n",
+       "  0.05195068567991257,\n",
+       "  -0.06404972821474075,\n",
+       "  -0.02680053561925888,\n",
+       "  -0.06115908920764923,\n",
+       "  -0.005285811144858599,\n",
+       "  0.024630464613437653,\n",
+       "  0.0508127361536026,\n",
+       "  -0.02946154959499836,\n",
+       "  0.00315065192990005,\n",
+       "  0.027983715757727623,\n",
+       "  0.0004941211664117873,\n",
+       "  0.0973694920539856,\n",
+       "  -0.00445805536583066,\n",
+       "  0.02243778668344021,\n",
+       "  0.05700451508164406,\n",
+       "  0.023384707048535347,\n",
+       "  0.0002657742297742516,\n",
+       "  -0.006948730908334255,\n",
+       "  0.028135964646935463,\n",
+       "  0.05755734071135521,\n",
+       "  -0.0035311044193804264,\n",
+       "  0.02564452774822712,\n",
+       "  0.06911254674196243,\n",
+       "  0.0001439160987501964,\n",
+       "  -0.0690045952796936,\n",
+       "  0.023919526487588882,\n",
+       "  0.0243697427213192,\n",
+       "  0.0016542165540158749,\n",
+       "  0.00436467956751585,\n",
+       "  -0.003900913055986166,\n",
+       "  -1.4984452789690295e-08,\n",
+       "  0.005736040882766247,\n",
+       "  0.07273048162460327,\n",
+       "  -0.04237211495637894,\n",
+       "  0.07735995203256607,\n",
+       "  0.045224644243717194,\n",
+       "  0.11730047315359116,\n",
+       "  -0.015441788360476494,\n",
+       "  -0.006769617088139057,\n",
+       "  0.011812692508101463,\n",
+       "  0.042124193161726,\n",
+       "  0.101394422352314,\n",
+       "  0.0897025316953659,\n",
+       "  -0.03517512232065201,\n",
+       "  0.023409757763147354,\n",
+       "  0.05634652450680733,\n",
+       "  0.06467470526695251,\n",
+       "  -0.05817856639623642,\n",
+       "  0.007569451350718737,\n",
+       "  -0.0726981908082962,\n",
+       "  -0.058578263968229294,\n",
+       "  -0.01871626265347004,\n",
+       "  0.039866991341114044,\n",
+       "  0.011542759835720062,\n",
+       "  -0.036801159381866455,\n",
+       "  -0.006841242779046297,\n",
+       "  -0.04151619225740433,\n",
+       "  0.011084156110882759,\n",
+       "  0.033770542591810226,\n",
+       "  -0.004958425648510456,\n",
+       "  -0.025353027507662773,\n",
+       "  -0.02028714120388031,\n",
+       "  0.14283043146133423,\n",
+       "  -0.02753743715584278,\n",
+       "  0.036813028156757355,\n",
+       "  0.026038523763418198,\n",
+       "  -0.04208604618906975,\n",
+       "  0.0035880794748663902,\n",
+       "  -0.012132312171161175,\n",
+       "  0.0464431531727314,\n",
+       "  -0.00905541516840458,\n",
+       "  -0.06408620625734329,\n",
+       "  0.024333177134394646,\n",
+       "  -0.003940224181860685,\n",
+       "  -0.02544635906815529,\n",
+       "  -0.017610585317015648,\n",
+       "  -0.0488358810544014,\n",
+       "  0.027587853372097015,\n",
+       "  -0.07398281246423721,\n",
+       "  0.053129442036151886,\n",
+       "  -0.0954415500164032,\n",
+       "  0.00758804427459836,\n",
+       "  0.0036420796532183886,\n",
+       "  0.06142501160502434,\n",
+       "  0.03770154342055321,\n",
+       "  0.1305655688047409,\n",
+       "  -0.01286567933857441,\n",
+       "  0.03425038605928421,\n",
+       "  -0.013945942744612694,\n",
+       "  0.022425182163715363,\n",
+       "  -0.02659265510737896,\n",
+       "  0.06289114058017731,\n",
+       "  0.05313219130039215,\n",
+       "  0.07984637469053268,\n",
+       "  -0.012213138863444328]]"
+      ]
+     },
+     "execution_count": 11,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "encoder([\"hey\"])"
+   ]
+  },
   {
    "cell_type": "markdown",
    "metadata": {},
@@ -148,14 +558,14 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 4,
+   "execution_count": 5,
    "metadata": {},
    "outputs": [
     {
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "\u001b[32m2024-01-09 00:22:35 INFO semantic_router.utils.logger Initializing RouteLayer\u001b[0m\n"
+      "\u001b[32m2024-04-14 18:15:59 INFO semantic_router.utils.logger local\u001b[0m\n"
      ]
     }
    ],
@@ -165,6 +575,48 @@
     "rl = RouteLayer(encoder=encoder, routes=routes)"
    ]
   },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "LocalIndex(index=array([[-0.00864941,  0.02088905,  0.04548961, ..., -0.00787578,\n",
+       "         0.0252752 ,  0.01958269],\n",
+       "       [ 0.10101052, -0.05990515,  0.01437028, ..., -0.00809868,\n",
+       "         0.03701495, -0.01487793],\n",
+       "       [ 0.01996296, -0.03627442,  0.15291646, ...,  0.06719883,\n",
+       "         0.08079942, -0.03931363],\n",
+       "       ...,\n",
+       "       [-0.01322144,  0.11396162,  0.14592913, ..., -0.01772162,\n",
+       "        -0.09720093,  0.05921701],\n",
+       "       [ 0.02863792,  0.09272329,  0.10989423, ..., -0.00030185,\n",
+       "        -0.10717052,  0.04849005],\n",
+       "       [-0.03355407, -0.04666358, -0.05054352, ...,  0.04337099,\n",
+       "         0.10585055, -0.06144635]]), routes=array(['politics', 'politics', 'politics', 'politics', 'politics',\n",
+       "       'politics', 'chitchat', 'chitchat', 'chitchat', 'chitchat',\n",
+       "       'chitchat'], dtype='<U8'), utterances=array([\"isn't politics the best thing ever\",\n",
+       "       \"why don't you tell me about your political opinions\",\n",
+       "       \"don't you just love the president\",\n",
+       "       \"don't you just hate the president\",\n",
+       "       \"they're going to destroy this country!\",\n",
+       "       'they will save the country!', \"how's the weather today?\",\n",
+       "       'how are things going?', 'lovely weather today',\n",
+       "       'the weather is horrendous', \"let's go to the chippy\"],\n",
+       "      dtype='<U51'), dimensions=None, type='local')"
+      ]
+     },
+     "execution_count": 7,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "rl.index"
+   ]
+  },
   {
    "cell_type": "markdown",
    "metadata": {},
@@ -174,16 +626,118 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 5,
+   "execution_count": 6,
    "metadata": {},
    "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "vector [ 7.46806897e-03 -3.49807888e-02  8.88827071e-02 -3.65814343e-02\n",
+      "  9.69796628e-02 -3.88786122e-02  1.91174150e-02 -2.44899071e-03\n",
+      "  2.94564646e-02  2.73508448e-02 -1.19639039e-01  3.17963734e-02\n",
+      "  2.52084807e-03  2.75214389e-03 -1.46908767e-03  3.32778133e-02\n",
+      " -8.00867677e-02 -4.17326577e-03 -2.38617379e-02  1.46567017e-01\n",
+      " -1.49368718e-01  4.26295139e-02  4.98373099e-02  1.65512003e-02\n",
+      "  1.98207237e-02 -2.43026596e-02 -1.81025621e-02 -2.04044133e-02\n",
+      " -6.39620274e-02 -4.54164632e-02 -7.70635204e-03  1.11671137e-02\n",
+      " -1.09083969e-02  6.57793432e-02  3.92031223e-02  7.03004422e-03\n",
+      "  5.31722419e-02  2.29947194e-02  3.18085887e-02 -1.34273348e-02\n",
+      "  7.80912861e-03  1.41071444e-02 -2.45402344e-02 -5.35607934e-02\n",
+      " -5.93818501e-02 -2.74034124e-03  3.07757724e-02  4.67852596e-03\n",
+      "  7.82168582e-02 -7.07853511e-02  1.20290471e-02  3.36084664e-02\n",
+      "  3.86536419e-02  4.40022983e-02  7.18170255e-02 -1.54885557e-02\n",
+      "  3.44607979e-02  4.96295393e-02 -4.19351831e-02  9.97676980e-05\n",
+      " -2.87968363e-03  2.87525635e-02 -3.27512138e-02  2.99615487e-02\n",
+      " -3.11616343e-03  3.99692096e-02 -4.20988211e-03 -1.40505536e-02\n",
+      " -3.85094695e-02  1.77390687e-02 -2.16467027e-02  6.61753565e-02\n",
+      "  8.33685175e-02 -4.78239059e-02 -4.70590405e-02 -3.43491174e-02\n",
+      "  3.80785204e-03  8.20114464e-02  4.13801894e-02 -9.00606439e-03\n",
+      "  5.69840260e-02 -5.47169484e-02  1.96720269e-02  5.77765107e-02\n",
+      "  1.66462716e-02 -1.10149585e-01 -5.24689816e-02  5.18206228e-03\n",
+      " -3.89118999e-04 -3.44066173e-02 -3.78542580e-02  1.00882528e-02\n",
+      "  2.04983242e-02 -9.67855193e-03 -2.84724031e-02 -8.81512761e-02\n",
+      "  4.77903932e-02  3.23785283e-02 -9.37398747e-02  8.25569853e-02\n",
+      " -7.05434531e-02 -4.01798189e-02 -8.01931471e-02  5.74426539e-02\n",
+      " -3.66569799e-03 -4.87772673e-02 -1.32716194e-01  1.70647614e-02\n",
+      " -2.05865130e-02 -2.54293457e-02 -3.49317975e-02  5.63595593e-02\n",
+      "  9.65489000e-02 -3.81795168e-02  6.41789660e-02 -5.97803183e-02\n",
+      "  4.79376912e-02 -6.73008412e-02  1.29452450e-02  7.47889131e-02\n",
+      " -3.50754783e-02 -3.92399095e-02 -8.27630535e-02  6.69496059e-02\n",
+      "  5.43073602e-02 -1.05082624e-01  2.50374246e-03 -8.70677792e-33\n",
+      " -6.24993332e-02 -5.26585393e-02 -2.67148105e-04  8.23840424e-02\n",
+      " -9.20600966e-02  1.09337494e-01 -6.93592848e-03 -6.77209422e-02\n",
+      "  2.31854827e-03  2.61983182e-02 -5.97448759e-02  1.39414638e-01\n",
+      "  4.36192639e-02 -4.00043800e-02  4.44744304e-02  4.79639479e-04\n",
+      " -9.06227157e-02 -4.08852892e-03 -4.63285781e-02 -3.02307531e-02\n",
+      " -5.81271201e-02  8.55818465e-02  3.42825167e-02  5.44268265e-02\n",
+      "  1.04459964e-01  3.67966965e-02  8.17925632e-02 -4.86575179e-02\n",
+      "  6.59503713e-02  4.70023975e-02 -2.52449065e-02 -3.77716720e-02\n",
+      " -4.33016196e-02  3.54233049e-02 -3.84103656e-02 -3.85655760e-04\n",
+      " -2.19709128e-02  2.32433695e-02  3.99560183e-02 -3.96165997e-02\n",
+      "  8.89946595e-02  3.30114514e-02 -6.53322786e-03  4.37131003e-02\n",
+      " -2.58748494e-02 -4.89604287e-03  5.74647598e-02  1.34270790e-03\n",
+      " -4.75572189e-03 -2.29260828e-02 -2.30850674e-05  4.61842045e-02\n",
+      "  9.64455009e-02 -1.34467948e-02  5.43327220e-02 -4.99240905e-02\n",
+      " -6.38680682e-02 -3.99457924e-02 -2.31168065e-02 -6.60235286e-02\n",
+      " -4.51665260e-02 -1.06092729e-02  5.11268247e-03 -1.63481403e-02\n",
+      "  4.48726676e-02  4.88157338e-03 -1.21778011e-01  4.07235548e-02\n",
+      "  1.23663016e-01  2.09960677e-02  8.85758456e-03 -2.57863365e-02\n",
+      " -1.25853419e-01 -3.04767899e-02 -4.83227335e-02  2.13521179e-02\n",
+      "  7.65490755e-02 -1.62383765e-02 -4.12127823e-02 -3.46125327e-02\n",
+      "  3.35594527e-02 -2.75545437e-02  1.48337394e-01 -2.41062324e-02\n",
+      "  4.78513241e-02 -2.57437732e-02  6.86436594e-02 -3.65344249e-02\n",
+      "  9.58712995e-02 -7.33761489e-02 -6.54934272e-02 -7.58369714e-02\n",
+      "  2.16469876e-02  2.11787838e-02 -1.32356793e-01  7.74216946e-33\n",
+      " -5.21602631e-02 -1.12684049e-01  3.75458039e-02  2.14454755e-02\n",
+      " -1.59239266e-02 -2.00403482e-02  2.00451282e-03 -7.60207623e-02\n",
+      "  6.17395993e-03  9.82744992e-02 -5.70474076e-05 -5.46450354e-02\n",
+      " -8.58346745e-03  3.54736857e-02  9.09018740e-02 -7.34343156e-02\n",
+      "  5.37787378e-02  2.34990641e-02 -7.36654252e-02 -2.96295825e-02\n",
+      " -4.20701243e-02  4.01046425e-02 -1.05566114e-01  8.53969455e-02\n",
+      " -9.78117287e-02  3.11244652e-02 -8.60458147e-03 -5.80112636e-02\n",
+      "  8.06473009e-03  2.32330374e-02  1.29305897e-02 -1.45072332e-02\n",
+      " -6.42017797e-02 -1.80655587e-02 -3.71037386e-02  7.91664515e-03\n",
+      " -2.76426841e-02 -4.71186750e-02  3.25874314e-02 -2.59979051e-02\n",
+      " -2.75685731e-02 -5.33751510e-02  2.11490206e-02  2.41934936e-02\n",
+      " -7.74724558e-02 -5.48699610e-02 -3.02678696e-03  2.51382738e-02\n",
+      "  7.51809077e-03 -1.04018506e-02 -5.87963313e-02  4.60062809e-02\n",
+      "  3.05394977e-02 -2.98662260e-02  4.60343696e-02 -2.43270658e-02\n",
+      " -1.80021673e-02  8.80592465e-02 -3.52736451e-02  3.42088193e-02\n",
+      " -1.84306744e-02  1.83841325e-02 -1.26974359e-02 -5.30652609e-03\n",
+      "  1.65736768e-02 -1.89048573e-02 -2.92793736e-02 -7.48898089e-02\n",
+      "  9.58707631e-02  4.02442832e-03  2.81538311e-02 -5.81194721e-02\n",
+      " -9.39897671e-02  3.95648554e-02  1.23225600e-02  5.75946681e-02\n",
+      "  1.96183030e-03  6.95726126e-02 -2.68521514e-02  2.91528199e-02\n",
+      "  2.64277216e-02 -1.06734969e-02  1.18107386e-02 -7.41961002e-02\n",
+      "  2.32443679e-02  5.63910119e-02 -2.35880818e-02  6.71420619e-02\n",
+      " -2.24174298e-02  5.93297668e-02  5.77776693e-02  3.75099629e-02\n",
+      "  5.69688855e-03 -2.56761108e-02  6.62673786e-02 -1.96984313e-08\n",
+      "  3.92213389e-02  1.70475300e-02  4.09772508e-02 -6.42266218e-03\n",
+      " -6.23241104e-02 -4.91327532e-02 -1.97951663e-02 -4.40760069e-02\n",
+      " -2.72826254e-02 -1.60910953e-02  1.15375720e-01  4.63905372e-02\n",
+      " -6.51486441e-02 -1.31851183e-02  7.16804564e-02  1.75282490e-02\n",
+      "  6.10029511e-02  2.75316294e-02 -1.92716401e-02 -2.04059891e-02\n",
+      " -1.46359978e-02  4.85771447e-02 -1.65706128e-02  8.66604224e-02\n",
+      "  2.96872873e-02  6.26259074e-02  2.56345142e-02 -3.19722369e-02\n",
+      "  8.13637450e-02 -3.31001319e-02  1.27992919e-02  3.62702198e-02\n",
+      " -6.38388470e-02  4.30489294e-02  5.40841487e-04 -3.80511861e-03\n",
+      "  4.21091588e-03 -1.12978499e-02 -7.65859755e-03 -7.39676924e-03\n",
+      " -1.59889944e-02  1.02662235e-01  5.57321496e-02 -2.99020577e-02\n",
+      " -6.92943633e-02  1.64305847e-02 -1.08625945e-02  2.04215292e-02\n",
+      "  8.24088156e-02  1.39690740e-02 -2.41274685e-02  7.50095770e-02\n",
+      "  8.87042657e-03  1.05826482e-02  9.90147814e-02 -2.97501963e-02\n",
+      "  3.43261287e-02  2.33199596e-02  3.74692902e-02 -8.54534374e-05\n",
+      "  3.10892314e-02  3.17056179e-02  4.35627997e-02 -3.98492068e-02]\n"
+     ]
+    },
     {
      "data": {
       "text/plain": [
-       "RouteChoice(name='politics', function_call=None)"
+       "RouteChoice(name='politics', function_call=None, similarity_score=None)"
       ]
      },
-     "execution_count": 5,
+     "execution_count": 6,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -263,7 +817,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.11.5"
+   "version": "3.12.2"
   }
  },
  "nbformat": 4,
diff --git a/poetry.lock b/poetry.lock
index 0ea7fcd3771dd413c81e4029bdaf36fc1385b9d7..53b7b5cd7df3ef496e4c97d39e3beea6cd662bc8 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -2,87 +2,87 @@
 
 [[package]]
 name = "aiohttp"
-version = "3.9.3"
+version = "3.9.4"
 description = "Async http client/server framework (asyncio)"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"},
-    {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"},
-    {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"},
-    {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"},
-    {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"},
-    {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"},
-    {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"},
-    {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"},
-    {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"},
-    {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"},
-    {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"},
-    {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"},
-    {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"},
-    {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"},
-    {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"},
-    {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"},
-    {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"},
-    {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"},
-    {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"},
-    {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"},
-    {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"},
-    {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"},
-    {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"},
-    {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"},
-    {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"},
-    {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"},
-    {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"},
-    {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"},
-    {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"},
-    {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"},
-    {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"},
-    {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"},
-    {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"},
-    {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"},
-    {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"},
-    {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"},
-    {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"},
-    {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"},
-    {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"},
-    {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"},
-    {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"},
-    {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"},
-    {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"},
-    {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"},
-    {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"},
-    {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"},
-    {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"},
-    {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"},
-    {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"},
-    {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"},
-    {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"},
-    {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"},
-    {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"},
-    {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"},
-    {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"},
-    {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"},
-    {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"},
-    {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"},
-    {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"},
-    {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"},
-    {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"},
-    {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"},
-    {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"},
-    {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"},
-    {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"},
-    {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"},
-    {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"},
-    {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"},
-    {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"},
-    {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"},
-    {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"},
-    {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"},
-    {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"},
-    {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"},
-    {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"},
-    {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"},
+    {file = "aiohttp-3.9.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:76d32588ef7e4a3f3adff1956a0ba96faabbdee58f2407c122dd45aa6e34f372"},
+    {file = "aiohttp-3.9.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:56181093c10dbc6ceb8a29dfeea1e815e1dfdc020169203d87fd8d37616f73f9"},
+    {file = "aiohttp-3.9.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c7a5b676d3c65e88b3aca41816bf72831898fcd73f0cbb2680e9d88e819d1e4d"},
+    {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1df528a85fb404899d4207a8d9934cfd6be626e30e5d3a5544a83dbae6d8a7e"},
+    {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f595db1bceabd71c82e92df212dd9525a8a2c6947d39e3c994c4f27d2fe15b11"},
+    {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c0b09d76e5a4caac3d27752027fbd43dc987b95f3748fad2b924a03fe8632ad"},
+    {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:689eb4356649ec9535b3686200b231876fb4cab4aca54e3bece71d37f50c1d13"},
+    {file = "aiohttp-3.9.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a3666cf4182efdb44d73602379a66f5fdfd5da0db5e4520f0ac0dcca644a3497"},
+    {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b65b0f8747b013570eea2f75726046fa54fa8e0c5db60f3b98dd5d161052004a"},
+    {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a1885d2470955f70dfdd33a02e1749613c5a9c5ab855f6db38e0b9389453dce7"},
+    {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0593822dcdb9483d41f12041ff7c90d4d1033ec0e880bcfaf102919b715f47f1"},
+    {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:47f6eb74e1ecb5e19a78f4a4228aa24df7fbab3b62d4a625d3f41194a08bd54f"},
+    {file = "aiohttp-3.9.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c8b04a3dbd54de6ccb7604242fe3ad67f2f3ca558f2d33fe19d4b08d90701a89"},
+    {file = "aiohttp-3.9.4-cp310-cp310-win32.whl", hash = "sha256:8a78dfb198a328bfb38e4308ca8167028920fb747ddcf086ce706fbdd23b2926"},
+    {file = "aiohttp-3.9.4-cp310-cp310-win_amd64.whl", hash = "sha256:e78da6b55275987cbc89141a1d8e75f5070e577c482dd48bd9123a76a96f0bbb"},
+    {file = "aiohttp-3.9.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c111b3c69060d2bafc446917534150fd049e7aedd6cbf21ba526a5a97b4402a5"},
+    {file = "aiohttp-3.9.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:efbdd51872cf170093998c87ccdf3cb5993add3559341a8e5708bcb311934c94"},
+    {file = "aiohttp-3.9.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7bfdb41dc6e85d8535b00d73947548a748e9534e8e4fddd2638109ff3fb081df"},
+    {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2bd9d334412961125e9f68d5b73c1d0ab9ea3f74a58a475e6b119f5293eee7ba"},
+    {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:35d78076736f4a668d57ade00c65d30a8ce28719d8a42471b2a06ccd1a2e3063"},
+    {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:824dff4f9f4d0f59d0fa3577932ee9a20e09edec8a2f813e1d6b9f89ced8293f"},
+    {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52b8b4e06fc15519019e128abedaeb56412b106ab88b3c452188ca47a25c4093"},
+    {file = "aiohttp-3.9.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eae569fb1e7559d4f3919965617bb39f9e753967fae55ce13454bec2d1c54f09"},
+    {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:69b97aa5792428f321f72aeb2f118e56893371f27e0b7d05750bcad06fc42ca1"},
+    {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4d79aad0ad4b980663316f26d9a492e8fab2af77c69c0f33780a56843ad2f89e"},
+    {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:d6577140cd7db19e430661e4b2653680194ea8c22c994bc65b7a19d8ec834403"},
+    {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:9860d455847cd98eb67897f5957b7cd69fbcb436dd3f06099230f16a66e66f79"},
+    {file = "aiohttp-3.9.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:69ff36d3f8f5652994e08bd22f093e11cfd0444cea310f92e01b45a4e46b624e"},
+    {file = "aiohttp-3.9.4-cp311-cp311-win32.whl", hash = "sha256:e27d3b5ed2c2013bce66ad67ee57cbf614288bda8cdf426c8d8fe548316f1b5f"},
+    {file = "aiohttp-3.9.4-cp311-cp311-win_amd64.whl", hash = "sha256:d6a67e26daa686a6fbdb600a9af8619c80a332556245fa8e86c747d226ab1a1e"},
+    {file = "aiohttp-3.9.4-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c5ff8ff44825736a4065d8544b43b43ee4c6dd1530f3a08e6c0578a813b0aa35"},
+    {file = "aiohttp-3.9.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:d12a244627eba4e9dc52cbf924edef905ddd6cafc6513849b4876076a6f38b0e"},
+    {file = "aiohttp-3.9.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:dcad56c8d8348e7e468899d2fb3b309b9bc59d94e6db08710555f7436156097f"},
+    {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f7e69a7fd4b5ce419238388e55abd220336bd32212c673ceabc57ccf3d05b55"},
+    {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c4870cb049f10d7680c239b55428916d84158798eb8f353e74fa2c98980dcc0b"},
+    {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b2feaf1b7031ede1bc0880cec4b0776fd347259a723d625357bb4b82f62687b"},
+    {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:939393e8c3f0a5bcd33ef7ace67680c318dc2ae406f15e381c0054dd658397de"},
+    {file = "aiohttp-3.9.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7d2334e387b2adcc944680bebcf412743f2caf4eeebd550f67249c1c3696be04"},
+    {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e0198ea897680e480845ec0ffc5a14e8b694e25b3f104f63676d55bf76a82f1a"},
+    {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e40d2cd22914d67c84824045861a5bb0fb46586b15dfe4f046c7495bf08306b2"},
+    {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:aba80e77c227f4234aa34a5ff2b6ff30c5d6a827a91d22ff6b999de9175d71bd"},
+    {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:fb68dc73bc8ac322d2e392a59a9e396c4f35cb6fdbdd749e139d1d6c985f2527"},
+    {file = "aiohttp-3.9.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:f3460a92638dce7e47062cf088d6e7663adb135e936cb117be88d5e6c48c9d53"},
+    {file = "aiohttp-3.9.4-cp312-cp312-win32.whl", hash = "sha256:32dc814ddbb254f6170bca198fe307920f6c1308a5492f049f7f63554b88ef36"},
+    {file = "aiohttp-3.9.4-cp312-cp312-win_amd64.whl", hash = "sha256:63f41a909d182d2b78fe3abef557fcc14da50c7852f70ae3be60e83ff64edba5"},
+    {file = "aiohttp-3.9.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:c3770365675f6be220032f6609a8fbad994d6dcf3ef7dbcf295c7ee70884c9af"},
+    {file = "aiohttp-3.9.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:305edae1dea368ce09bcb858cf5a63a064f3bff4767dec6fa60a0cc0e805a1d3"},
+    {file = "aiohttp-3.9.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:6f121900131d116e4a93b55ab0d12ad72573f967b100e49086e496a9b24523ea"},
+    {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b71e614c1ae35c3d62a293b19eface83d5e4d194e3eb2fabb10059d33e6e8cbf"},
+    {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:419f009fa4cfde4d16a7fc070d64f36d70a8d35a90d71aa27670bba2be4fd039"},
+    {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7b39476ee69cfe64061fd77a73bf692c40021f8547cda617a3466530ef63f947"},
+    {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b33f34c9c7decdb2ab99c74be6443942b730b56d9c5ee48fb7df2c86492f293c"},
+    {file = "aiohttp-3.9.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c78700130ce2dcebb1a8103202ae795be2fa8c9351d0dd22338fe3dac74847d9"},
+    {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:268ba22d917655d1259af2d5659072b7dc11b4e1dc2cb9662fdd867d75afc6a4"},
+    {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:17e7c051f53a0d2ebf33013a9cbf020bb4e098c4bc5bce6f7b0c962108d97eab"},
+    {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:7be99f4abb008cb38e144f85f515598f4c2c8932bf11b65add0ff59c9c876d99"},
+    {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:d58a54d6ff08d2547656356eea8572b224e6f9bbc0cf55fa9966bcaac4ddfb10"},
+    {file = "aiohttp-3.9.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7673a76772bda15d0d10d1aa881b7911d0580c980dbd16e59d7ba1422b2d83cd"},
+    {file = "aiohttp-3.9.4-cp38-cp38-win32.whl", hash = "sha256:e4370dda04dc8951012f30e1ce7956a0a226ac0714a7b6c389fb2f43f22a250e"},
+    {file = "aiohttp-3.9.4-cp38-cp38-win_amd64.whl", hash = "sha256:eb30c4510a691bb87081192a394fb661860e75ca3896c01c6d186febe7c88530"},
+    {file = "aiohttp-3.9.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:84e90494db7df3be5e056f91412f9fa9e611fbe8ce4aaef70647297f5943b276"},
+    {file = "aiohttp-3.9.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7d4845f8501ab28ebfdbeab980a50a273b415cf69e96e4e674d43d86a464df9d"},
+    {file = "aiohttp-3.9.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:69046cd9a2a17245c4ce3c1f1a4ff8c70c7701ef222fce3d1d8435f09042bba1"},
+    {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b73a06bafc8dcc508420db43b4dd5850e41e69de99009d0351c4f3007960019"},
+    {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:418bb0038dfafeac923823c2e63226179976c76f981a2aaad0ad5d51f2229bca"},
+    {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:71a8f241456b6c2668374d5d28398f8e8cdae4cce568aaea54e0f39359cd928d"},
+    {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:935c369bf8acc2dc26f6eeb5222768aa7c62917c3554f7215f2ead7386b33748"},
+    {file = "aiohttp-3.9.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:74e4e48c8752d14ecfb36d2ebb3d76d614320570e14de0a3aa7a726ff150a03c"},
+    {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:916b0417aeddf2c8c61291238ce25286f391a6acb6f28005dd9ce282bd6311b6"},
+    {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9b6787b6d0b3518b2ee4cbeadd24a507756ee703adbac1ab6dc7c4434b8c572a"},
+    {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:221204dbda5ef350e8db6287937621cf75e85778b296c9c52260b522231940ed"},
+    {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:10afd99b8251022ddf81eaed1d90f5a988e349ee7d779eb429fb07b670751e8c"},
+    {file = "aiohttp-3.9.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2506d9f7a9b91033201be9ffe7d89c6a54150b0578803cce5cb84a943d075bc3"},
+    {file = "aiohttp-3.9.4-cp39-cp39-win32.whl", hash = "sha256:e571fdd9efd65e86c6af2f332e0e95dad259bfe6beb5d15b3c3eca3a6eb5d87b"},
+    {file = "aiohttp-3.9.4-cp39-cp39-win_amd64.whl", hash = "sha256:7d29dd5319d20aa3b7749719ac9685fbd926f71ac8c77b2477272725f882072d"},
+    {file = "aiohttp-3.9.4.tar.gz", hash = "sha256:6ff71ede6d9a5a58cfb7b6fffc83ab5d4a63138276c771ac91ceaaddf5459644"},
 ]
 
 [package.dependencies]
@@ -215,33 +215,33 @@ files = [
 
 [[package]]
 name = "black"
-version = "24.3.0"
+version = "24.4.0"
 description = "The uncompromising code formatter."
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "black-24.3.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:7d5e026f8da0322b5662fa7a8e752b3fa2dac1c1cbc213c3d7ff9bdd0ab12395"},
-    {file = "black-24.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9f50ea1132e2189d8dff0115ab75b65590a3e97de1e143795adb4ce317934995"},
-    {file = "black-24.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2af80566f43c85f5797365077fb64a393861a3730bd110971ab7a0c94e873e7"},
-    {file = "black-24.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:4be5bb28e090456adfc1255e03967fb67ca846a03be7aadf6249096100ee32d0"},
-    {file = "black-24.3.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4f1373a7808a8f135b774039f61d59e4be7eb56b2513d3d2f02a8b9365b8a8a9"},
-    {file = "black-24.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:aadf7a02d947936ee418777e0247ea114f78aff0d0959461057cae8a04f20597"},
-    {file = "black-24.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65c02e4ea2ae09d16314d30912a58ada9a5c4fdfedf9512d23326128ac08ac3d"},
-    {file = "black-24.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:bf21b7b230718a5f08bd32d5e4f1db7fc8788345c8aea1d155fc17852b3410f5"},
-    {file = "black-24.3.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:2818cf72dfd5d289e48f37ccfa08b460bf469e67fb7c4abb07edc2e9f16fb63f"},
-    {file = "black-24.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4acf672def7eb1725f41f38bf6bf425c8237248bb0804faa3965c036f7672d11"},
-    {file = "black-24.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c7ed6668cbbfcd231fa0dc1b137d3e40c04c7f786e626b405c62bcd5db5857e4"},
-    {file = "black-24.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:56f52cfbd3dabe2798d76dbdd299faa046a901041faf2cf33288bc4e6dae57b5"},
-    {file = "black-24.3.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:79dcf34b33e38ed1b17434693763301d7ccbd1c5860674a8f871bd15139e7837"},
-    {file = "black-24.3.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e19cb1c6365fd6dc38a6eae2dcb691d7d83935c10215aef8e6c38edee3f77abd"},
-    {file = "black-24.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65b76c275e4c1c5ce6e9870911384bff5ca31ab63d19c76811cb1fb162678213"},
-    {file = "black-24.3.0-cp38-cp38-win_amd64.whl", hash = "sha256:b5991d523eee14756f3c8d5df5231550ae8993e2286b8014e2fdea7156ed0959"},
-    {file = "black-24.3.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c45f8dff244b3c431b36e3224b6be4a127c6aca780853574c00faf99258041eb"},
-    {file = "black-24.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6905238a754ceb7788a73f02b45637d820b2f5478b20fec82ea865e4f5d4d9f7"},
-    {file = "black-24.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7de8d330763c66663661a1ffd432274a2f92f07feeddd89ffd085b5744f85e7"},
-    {file = "black-24.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:7bb041dca0d784697af4646d3b62ba4a6b028276ae878e53f6b4f74ddd6db99f"},
-    {file = "black-24.3.0-py3-none-any.whl", hash = "sha256:41622020d7120e01d377f74249e677039d20e6344ff5851de8a10f11f513bf93"},
-    {file = "black-24.3.0.tar.gz", hash = "sha256:a0c9c4a0771afc6919578cec71ce82a3e31e054904e7197deacbc9382671c41f"},
+    {file = "black-24.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6ad001a9ddd9b8dfd1b434d566be39b1cd502802c8d38bbb1ba612afda2ef436"},
+    {file = "black-24.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e3a3a092b8b756c643fe45f4624dbd5a389f770a4ac294cf4d0fce6af86addaf"},
+    {file = "black-24.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dae79397f367ac8d7adb6c779813328f6d690943f64b32983e896bcccd18cbad"},
+    {file = "black-24.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:71d998b73c957444fb7c52096c3843875f4b6b47a54972598741fe9a7f737fcb"},
+    {file = "black-24.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8e5537f456a22cf5cfcb2707803431d2feeb82ab3748ade280d6ccd0b40ed2e8"},
+    {file = "black-24.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:64e60a7edd71fd542a10a9643bf369bfd2644de95ec71e86790b063aa02ff745"},
+    {file = "black-24.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5cd5b4f76056cecce3e69b0d4c228326d2595f506797f40b9233424e2524c070"},
+    {file = "black-24.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:64578cf99b6b46a6301bc28bdb89f9d6f9b592b1c5837818a177c98525dbe397"},
+    {file = "black-24.4.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f95cece33329dc4aa3b0e1a771c41075812e46cf3d6e3f1dfe3d91ff09826ed2"},
+    {file = "black-24.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4396ca365a4310beef84d446ca5016f671b10f07abdba3e4e4304218d2c71d33"},
+    {file = "black-24.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44d99dfdf37a2a00a6f7a8dcbd19edf361d056ee51093b2445de7ca09adac965"},
+    {file = "black-24.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:21f9407063ec71c5580b8ad975653c66508d6a9f57bd008bb8691d273705adcd"},
+    {file = "black-24.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:652e55bb722ca026299eb74e53880ee2315b181dfdd44dca98e43448620ddec1"},
+    {file = "black-24.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7f2966b9b2b3b7104fca9d75b2ee856fe3fdd7ed9e47c753a4bb1a675f2caab8"},
+    {file = "black-24.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1bb9ca06e556a09f7f7177bc7cb604e5ed2d2df1e9119e4f7d2f1f7071c32e5d"},
+    {file = "black-24.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:d4e71cdebdc8efeb6deaf5f2deb28325f8614d48426bed118ecc2dcaefb9ebf3"},
+    {file = "black-24.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6644f97a7ef6f401a150cca551a1ff97e03c25d8519ee0bbc9b0058772882665"},
+    {file = "black-24.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:75a2d0b4f5eb81f7eebc31f788f9830a6ce10a68c91fbe0fade34fff7a2836e6"},
+    {file = "black-24.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb949f56a63c5e134dfdca12091e98ffb5fd446293ebae123d10fc1abad00b9e"},
+    {file = "black-24.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:7852b05d02b5b9a8c893ab95863ef8986e4dda29af80bbbda94d7aee1abf8702"},
+    {file = "black-24.4.0-py3-none-any.whl", hash = "sha256:74eb9b5420e26b42c00a3ff470dc0cd144b80a766128b1771d07643165e08d0e"},
+    {file = "black-24.4.0.tar.gz", hash = "sha256:f07b69fda20578367eaebbd670ff8fc653ab181e1ff95d84497f9fa20e7d0641"},
 ]
 
 [package.dependencies]
@@ -541,64 +541,64 @@ test = ["pytest"]
 
 [[package]]
 name = "contourpy"
-version = "1.2.0"
+version = "1.2.1"
 description = "Python library for calculating contours of 2D quadrilateral grids"
 optional = true
 python-versions = ">=3.9"
 files = [
-    {file = "contourpy-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0274c1cb63625972c0c007ab14dd9ba9e199c36ae1a231ce45d725cbcbfd10a8"},
-    {file = "contourpy-1.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ab459a1cbbf18e8698399c595a01f6dcc5c138220ca3ea9e7e6126232d102bb4"},
-    {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fdd887f17c2f4572ce548461e4f96396681212d858cae7bd52ba3310bc6f00f"},
-    {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d16edfc3fc09968e09ddffada434b3bf989bf4911535e04eada58469873e28e"},
-    {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c203f617abc0dde5792beb586f827021069fb6d403d7f4d5c2b543d87edceb9"},
-    {file = "contourpy-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b69303ceb2e4d4f146bf82fda78891ef7bcd80c41bf16bfca3d0d7eb545448aa"},
-    {file = "contourpy-1.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:884c3f9d42d7218304bc74a8a7693d172685c84bd7ab2bab1ee567b769696df9"},
-    {file = "contourpy-1.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4a1b1208102be6e851f20066bf0e7a96b7d48a07c9b0cfe6d0d4545c2f6cadab"},
-    {file = "contourpy-1.2.0-cp310-cp310-win32.whl", hash = "sha256:34b9071c040d6fe45d9826cbbe3727d20d83f1b6110d219b83eb0e2a01d79488"},
-    {file = "contourpy-1.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:bd2f1ae63998da104f16a8b788f685e55d65760cd1929518fd94cd682bf03e41"},
-    {file = "contourpy-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:dd10c26b4eadae44783c45ad6655220426f971c61d9b239e6f7b16d5cdaaa727"},
-    {file = "contourpy-1.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5c6b28956b7b232ae801406e529ad7b350d3f09a4fde958dfdf3c0520cdde0dd"},
-    {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ebeac59e9e1eb4b84940d076d9f9a6cec0064e241818bcb6e32124cc5c3e377a"},
-    {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:139d8d2e1c1dd52d78682f505e980f592ba53c9f73bd6be102233e358b401063"},
-    {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1e9dc350fb4c58adc64df3e0703ab076f60aac06e67d48b3848c23647ae4310e"},
-    {file = "contourpy-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18fc2b4ed8e4a8fe849d18dce4bd3c7ea637758c6343a1f2bae1e9bd4c9f4686"},
-    {file = "contourpy-1.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:16a7380e943a6d52472096cb7ad5264ecee36ed60888e2a3d3814991a0107286"},
-    {file = "contourpy-1.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8d8faf05be5ec8e02a4d86f616fc2a0322ff4a4ce26c0f09d9f7fb5330a35c95"},
-    {file = "contourpy-1.2.0-cp311-cp311-win32.whl", hash = "sha256:67b7f17679fa62ec82b7e3e611c43a016b887bd64fb933b3ae8638583006c6d6"},
-    {file = "contourpy-1.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:99ad97258985328b4f207a5e777c1b44a83bfe7cf1f87b99f9c11d4ee477c4de"},
-    {file = "contourpy-1.2.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:575bcaf957a25d1194903a10bc9f316c136c19f24e0985a2b9b5608bdf5dbfe0"},
-    {file = "contourpy-1.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9e6c93b5b2dbcedad20a2f18ec22cae47da0d705d454308063421a3b290d9ea4"},
-    {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:464b423bc2a009088f19bdf1f232299e8b6917963e2b7e1d277da5041f33a779"},
-    {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:68ce4788b7d93e47f84edd3f1f95acdcd142ae60bc0e5493bfd120683d2d4316"},
-    {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d7d1f8871998cdff5d2ff6a087e5e1780139abe2838e85b0b46b7ae6cc25399"},
-    {file = "contourpy-1.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e739530c662a8d6d42c37c2ed52a6f0932c2d4a3e8c1f90692ad0ce1274abe0"},
-    {file = "contourpy-1.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:247b9d16535acaa766d03037d8e8fb20866d054d3c7fbf6fd1f993f11fc60ca0"},
-    {file = "contourpy-1.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:461e3ae84cd90b30f8d533f07d87c00379644205b1d33a5ea03381edc4b69431"},
-    {file = "contourpy-1.2.0-cp312-cp312-win32.whl", hash = "sha256:1c2559d6cffc94890b0529ea7eeecc20d6fadc1539273aa27faf503eb4656d8f"},
-    {file = "contourpy-1.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:491b1917afdd8638a05b611a56d46587d5a632cabead889a5440f7c638bc6ed9"},
-    {file = "contourpy-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5fd1810973a375ca0e097dee059c407913ba35723b111df75671a1976efa04bc"},
-    {file = "contourpy-1.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:999c71939aad2780f003979b25ac5b8f2df651dac7b38fb8ce6c46ba5abe6ae9"},
-    {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7caf9b241464c404613512d5594a6e2ff0cc9cb5615c9475cc1d9b514218ae8"},
-    {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:266270c6f6608340f6c9836a0fb9b367be61dde0c9a9a18d5ece97774105ff3e"},
-    {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbd50d0a0539ae2e96e537553aff6d02c10ed165ef40c65b0e27e744a0f10af8"},
-    {file = "contourpy-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11f8d2554e52f459918f7b8e6aa20ec2a3bce35ce95c1f0ef4ba36fbda306df5"},
-    {file = "contourpy-1.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ce96dd400486e80ac7d195b2d800b03e3e6a787e2a522bfb83755938465a819e"},
-    {file = "contourpy-1.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:6d3364b999c62f539cd403f8123ae426da946e142312a514162adb2addd8d808"},
-    {file = "contourpy-1.2.0-cp39-cp39-win32.whl", hash = "sha256:1c88dfb9e0c77612febebb6ac69d44a8d81e3dc60f993215425b62c1161353f4"},
-    {file = "contourpy-1.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:78e6ad33cf2e2e80c5dfaaa0beec3d61face0fb650557100ee36db808bfa6843"},
-    {file = "contourpy-1.2.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:be16975d94c320432657ad2402f6760990cb640c161ae6da1363051805fa8108"},
-    {file = "contourpy-1.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b95a225d4948b26a28c08307a60ac00fb8671b14f2047fc5476613252a129776"},
-    {file = "contourpy-1.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:0d7e03c0f9a4f90dc18d4e77e9ef4ec7b7bbb437f7f675be8e530d65ae6ef956"},
-    {file = "contourpy-1.2.0.tar.gz", hash = "sha256:171f311cb758de7da13fc53af221ae47a5877be5a0843a9fe150818c51ed276a"},
+    {file = "contourpy-1.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:bd7c23df857d488f418439686d3b10ae2fbf9bc256cd045b37a8c16575ea1040"},
+    {file = "contourpy-1.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5b9eb0ca724a241683c9685a484da9d35c872fd42756574a7cfbf58af26677fd"},
+    {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4c75507d0a55378240f781599c30e7776674dbaf883a46d1c90f37e563453480"},
+    {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11959f0ce4a6f7b76ec578576a0b61a28bdc0696194b6347ba3f1c53827178b9"},
+    {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eb3315a8a236ee19b6df481fc5f997436e8ade24a9f03dfdc6bd490fea20c6da"},
+    {file = "contourpy-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39f3ecaf76cd98e802f094e0d4fbc6dc9c45a8d0c4d185f0f6c2234e14e5f75b"},
+    {file = "contourpy-1.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:94b34f32646ca0414237168d68a9157cb3889f06b096612afdd296003fdd32fd"},
+    {file = "contourpy-1.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:457499c79fa84593f22454bbd27670227874cd2ff5d6c84e60575c8b50a69619"},
+    {file = "contourpy-1.2.1-cp310-cp310-win32.whl", hash = "sha256:ac58bdee53cbeba2ecad824fa8159493f0bf3b8ea4e93feb06c9a465d6c87da8"},
+    {file = "contourpy-1.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:9cffe0f850e89d7c0012a1fb8730f75edd4320a0a731ed0c183904fe6ecfc3a9"},
+    {file = "contourpy-1.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6022cecf8f44e36af10bd9118ca71f371078b4c168b6e0fab43d4a889985dbb5"},
+    {file = "contourpy-1.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ef5adb9a3b1d0c645ff694f9bca7702ec2c70f4d734f9922ea34de02294fdf72"},
+    {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6150ffa5c767bc6332df27157d95442c379b7dce3a38dff89c0f39b63275696f"},
+    {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c863140fafc615c14a4bf4efd0f4425c02230eb8ef02784c9a156461e62c965"},
+    {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:00e5388f71c1a0610e6fe56b5c44ab7ba14165cdd6d695429c5cd94021e390b2"},
+    {file = "contourpy-1.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4492d82b3bc7fbb7e3610747b159869468079fe149ec5c4d771fa1f614a14df"},
+    {file = "contourpy-1.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:49e70d111fee47284d9dd867c9bb9a7058a3c617274900780c43e38d90fe1205"},
+    {file = "contourpy-1.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b59c0ffceff8d4d3996a45f2bb6f4c207f94684a96bf3d9728dbb77428dd8cb8"},
+    {file = "contourpy-1.2.1-cp311-cp311-win32.whl", hash = "sha256:7b4182299f251060996af5249c286bae9361fa8c6a9cda5efc29fe8bfd6062ec"},
+    {file = "contourpy-1.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:2855c8b0b55958265e8b5888d6a615ba02883b225f2227461aa9127c578a4922"},
+    {file = "contourpy-1.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:62828cada4a2b850dbef89c81f5a33741898b305db244904de418cc957ff05dc"},
+    {file = "contourpy-1.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:309be79c0a354afff9ff7da4aaed7c3257e77edf6c1b448a779329431ee79d7e"},
+    {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e785e0f2ef0d567099b9ff92cbfb958d71c2d5b9259981cd9bee81bd194c9a4"},
+    {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1cac0a8f71a041aa587410424ad46dfa6a11f6149ceb219ce7dd48f6b02b87a7"},
+    {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:af3f4485884750dddd9c25cb7e3915d83c2db92488b38ccb77dd594eac84c4a0"},
+    {file = "contourpy-1.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ce6889abac9a42afd07a562c2d6d4b2b7134f83f18571d859b25624a331c90b"},
+    {file = "contourpy-1.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:a1eea9aecf761c661d096d39ed9026574de8adb2ae1c5bd7b33558af884fb2ce"},
+    {file = "contourpy-1.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:187fa1d4c6acc06adb0fae5544c59898ad781409e61a926ac7e84b8f276dcef4"},
+    {file = "contourpy-1.2.1-cp312-cp312-win32.whl", hash = "sha256:c2528d60e398c7c4c799d56f907664673a807635b857df18f7ae64d3e6ce2d9f"},
+    {file = "contourpy-1.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:1a07fc092a4088ee952ddae19a2b2a85757b923217b7eed584fdf25f53a6e7ce"},
+    {file = "contourpy-1.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bb6834cbd983b19f06908b45bfc2dad6ac9479ae04abe923a275b5f48f1a186b"},
+    {file = "contourpy-1.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1d59e739ab0e3520e62a26c60707cc3ab0365d2f8fecea74bfe4de72dc56388f"},
+    {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd3db01f59fdcbce5b22afad19e390260d6d0222f35a1023d9adc5690a889364"},
+    {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a12a813949e5066148712a0626895c26b2578874e4cc63160bb007e6df3436fe"},
+    {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe0ccca550bb8e5abc22f530ec0466136379c01321fd94f30a22231e8a48d985"},
+    {file = "contourpy-1.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1d59258c3c67c865435d8fbeb35f8c59b8bef3d6f46c1f29f6123556af28445"},
+    {file = "contourpy-1.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f32c38afb74bd98ce26de7cc74a67b40afb7b05aae7b42924ea990d51e4dac02"},
+    {file = "contourpy-1.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d31a63bc6e6d87f77d71e1abbd7387ab817a66733734883d1fc0021ed9bfa083"},
+    {file = "contourpy-1.2.1-cp39-cp39-win32.whl", hash = "sha256:ddcb8581510311e13421b1f544403c16e901c4e8f09083c881fab2be80ee31ba"},
+    {file = "contourpy-1.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:10a37ae557aabf2509c79715cd20b62e4c7c28b8cd62dd7d99e5ed3ce28c3fd9"},
+    {file = "contourpy-1.2.1-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a31f94983fecbac95e58388210427d68cd30fe8a36927980fab9c20062645609"},
+    {file = "contourpy-1.2.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ef2b055471c0eb466033760a521efb9d8a32b99ab907fc8358481a1dd29e3bd3"},
+    {file = "contourpy-1.2.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:b33d2bc4f69caedcd0a275329eb2198f560b325605810895627be5d4b876bf7f"},
+    {file = "contourpy-1.2.1.tar.gz", hash = "sha256:4d8908b3bee1c889e547867ca4cdc54e5ab6be6d3e078556814a22457f49423c"},
 ]
 
 [package.dependencies]
-numpy = ">=1.20,<2.0"
+numpy = ">=1.20"
 
 [package.extras]
 bokeh = ["bokeh", "selenium"]
 docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"]
-mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.6.1)", "types-Pillow"]
+mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.8.0)", "types-Pillow"]
 test = ["Pillow", "contourpy[test-no-images]", "matplotlib"]
 test-no-images = ["pytest", "pytest-cov", "pytest-xdist", "wurlitzer"]
 
@@ -775,13 +775,13 @@ test = ["pytest (>=6)"]
 
 [[package]]
 name = "execnet"
-version = "2.0.2"
+version = "2.1.1"
 description = "execnet: rapid multi-Python deployment"
 optional = false
-python-versions = ">=3.7"
+python-versions = ">=3.8"
 files = [
-    {file = "execnet-2.0.2-py3-none-any.whl", hash = "sha256:88256416ae766bc9e8895c76a87928c0012183da3cc4fc18016e6f050e025f41"},
-    {file = "execnet-2.0.2.tar.gz", hash = "sha256:cc59bc4423742fd71ad227122eb0dd44db51efb3dc4095b45ac9a08c770096af"},
+    {file = "execnet-2.1.1-py3-none-any.whl", hash = "sha256:26dee51f1b80cebd6d0ca8e74dd8745419761d3bef34163928cbebbdc4749fdc"},
+    {file = "execnet-2.1.1.tar.gz", hash = "sha256:5189b52c6121c24feae288166ab41b32549c7e2348652736540b9e6e7d4e72e3"},
 ]
 
 [package.extras]
@@ -870,13 +870,13 @@ tqdm = ">=4.66,<5.0"
 
 [[package]]
 name = "filelock"
-version = "3.13.3"
+version = "3.13.4"
 description = "A platform independent file lock."
 optional = true
 python-versions = ">=3.8"
 files = [
-    {file = "filelock-3.13.3-py3-none-any.whl", hash = "sha256:5ffa845303983e7a0b7ae17636509bc97997d58afeafa72fb141a17b152284cb"},
-    {file = "filelock-3.13.3.tar.gz", hash = "sha256:a79895a25bbefdf55d1a2a0a80968f7dbb28edcd6d4234a0afb3f37ecde4b546"},
+    {file = "filelock-3.13.4-py3-none-any.whl", hash = "sha256:404e5e9253aa60ad457cae1be07c0f0ca90a63931200a47d9b6a6af84fd7b45f"},
+    {file = "filelock-3.13.4.tar.gz", hash = "sha256:d13f466618bfde72bd2c18255e269f72542c6e70e7bac83a0232d6b1cc5c8cf4"},
 ]
 
 [package.extras]
@@ -897,53 +897,53 @@ files = [
 
 [[package]]
 name = "fonttools"
-version = "4.50.0"
+version = "4.51.0"
 description = "Tools to manipulate font files"
 optional = true
 python-versions = ">=3.8"
 files = [
-    {file = "fonttools-4.50.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:effd303fb422f8ce06543a36ca69148471144c534cc25f30e5be752bc4f46736"},
-    {file = "fonttools-4.50.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:7913992ab836f621d06aabac118fc258b9947a775a607e1a737eb3a91c360335"},
-    {file = "fonttools-4.50.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e0a1c5bd2f63da4043b63888534b52c5a1fd7ae187c8ffc64cbb7ae475b9dab"},
-    {file = "fonttools-4.50.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d40fc98540fa5360e7ecf2c56ddf3c6e7dd04929543618fd7b5cc76e66390562"},
-    {file = "fonttools-4.50.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:9fff65fbb7afe137bac3113827855e0204482727bddd00a806034ab0d3951d0d"},
-    {file = "fonttools-4.50.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b1aeae3dd2ee719074a9372c89ad94f7c581903306d76befdaca2a559f802472"},
-    {file = "fonttools-4.50.0-cp310-cp310-win32.whl", hash = "sha256:e9623afa319405da33b43c85cceb0585a6f5d3a1d7c604daf4f7e1dd55c03d1f"},
-    {file = "fonttools-4.50.0-cp310-cp310-win_amd64.whl", hash = "sha256:778c5f43e7e654ef7fe0605e80894930bc3a7772e2f496238e57218610140f54"},
-    {file = "fonttools-4.50.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:3dfb102e7f63b78c832e4539969167ffcc0375b013080e6472350965a5fe8048"},
-    {file = "fonttools-4.50.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:9e58fe34cb379ba3d01d5d319d67dd3ce7ca9a47ad044ea2b22635cd2d1247fc"},
-    {file = "fonttools-4.50.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c673ab40d15a442a4e6eb09bf007c1dda47c84ac1e2eecbdf359adacb799c24"},
-    {file = "fonttools-4.50.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9b3ac35cdcd1a4c90c23a5200212c1bb74fa05833cc7c14291d7043a52ca2aaa"},
-    {file = "fonttools-4.50.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:8844e7a2c5f7ecf977e82eb6b3014f025c8b454e046d941ece05b768be5847ae"},
-    {file = "fonttools-4.50.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:f849bd3c5c2249b49c98eca5aaebb920d2bfd92b3c69e84ca9bddf133e9f83f0"},
-    {file = "fonttools-4.50.0-cp311-cp311-win32.whl", hash = "sha256:39293ff231b36b035575e81c14626dfc14407a20de5262f9596c2cbb199c3625"},
-    {file = "fonttools-4.50.0-cp311-cp311-win_amd64.whl", hash = "sha256:c33d5023523b44d3481624f840c8646656a1def7630ca562f222eb3ead16c438"},
-    {file = "fonttools-4.50.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b4a886a6dbe60100ba1cd24de962f8cd18139bd32808da80de1fa9f9f27bf1dc"},
-    {file = "fonttools-4.50.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b2ca1837bfbe5eafa11313dbc7edada79052709a1fffa10cea691210af4aa1fa"},
-    {file = "fonttools-4.50.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0493dd97ac8977e48ffc1476b932b37c847cbb87fd68673dee5182004906828"},
-    {file = "fonttools-4.50.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:77844e2f1b0889120b6c222fc49b2b75c3d88b930615e98893b899b9352a27ea"},
-    {file = "fonttools-4.50.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3566bfb8c55ed9100afe1ba6f0f12265cd63a1387b9661eb6031a1578a28bad1"},
-    {file = "fonttools-4.50.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:35e10ddbc129cf61775d58a14f2d44121178d89874d32cae1eac722e687d9019"},
-    {file = "fonttools-4.50.0-cp312-cp312-win32.whl", hash = "sha256:cc8140baf9fa8f9b903f2b393a6c413a220fa990264b215bf48484f3d0bf8710"},
-    {file = "fonttools-4.50.0-cp312-cp312-win_amd64.whl", hash = "sha256:0ccc85fd96373ab73c59833b824d7a73846670a0cb1f3afbaee2b2c426a8f931"},
-    {file = "fonttools-4.50.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e270a406219af37581d96c810172001ec536e29e5593aa40d4c01cca3e145aa6"},
-    {file = "fonttools-4.50.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ac2463de667233372e9e1c7e9de3d914b708437ef52a3199fdbf5a60184f190c"},
-    {file = "fonttools-4.50.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:47abd6669195abe87c22750dbcd366dc3a0648f1b7c93c2baa97429c4dc1506e"},
-    {file = "fonttools-4.50.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:074841375e2e3d559aecc86e1224caf78e8b8417bb391e7d2506412538f21adc"},
-    {file = "fonttools-4.50.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0743fd2191ad7ab43d78cd747215b12033ddee24fa1e088605a3efe80d6984de"},
-    {file = "fonttools-4.50.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:3d7080cce7be5ed65bee3496f09f79a82865a514863197ff4d4d177389e981b0"},
-    {file = "fonttools-4.50.0-cp38-cp38-win32.whl", hash = "sha256:a467ba4e2eadc1d5cc1a11d355abb945f680473fbe30d15617e104c81f483045"},
-    {file = "fonttools-4.50.0-cp38-cp38-win_amd64.whl", hash = "sha256:f77e048f805e00870659d6318fd89ef28ca4ee16a22b4c5e1905b735495fc422"},
-    {file = "fonttools-4.50.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b6245eafd553c4e9a0708e93be51392bd2288c773523892fbd616d33fd2fda59"},
-    {file = "fonttools-4.50.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a4062cc7e8de26f1603323ef3ae2171c9d29c8a9f5e067d555a2813cd5c7a7e0"},
-    {file = "fonttools-4.50.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34692850dfd64ba06af61e5791a441f664cb7d21e7b544e8f385718430e8f8e4"},
-    {file = "fonttools-4.50.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:678dd95f26a67e02c50dcb5bf250f95231d455642afbc65a3b0bcdacd4e4dd38"},
-    {file = "fonttools-4.50.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4f2ce7b0b295fe64ac0a85aef46a0f2614995774bd7bc643b85679c0283287f9"},
-    {file = "fonttools-4.50.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d346f4dc2221bfb7ab652d1e37d327578434ce559baf7113b0f55768437fe6a0"},
-    {file = "fonttools-4.50.0-cp39-cp39-win32.whl", hash = "sha256:a51eeaf52ba3afd70bf489be20e52fdfafe6c03d652b02477c6ce23c995222f4"},
-    {file = "fonttools-4.50.0-cp39-cp39-win_amd64.whl", hash = "sha256:8639be40d583e5d9da67795aa3eeeda0488fb577a1d42ae11a5036f18fb16d93"},
-    {file = "fonttools-4.50.0-py3-none-any.whl", hash = "sha256:48fa36da06247aa8282766cfd63efff1bb24e55f020f29a335939ed3844d20d3"},
-    {file = "fonttools-4.50.0.tar.gz", hash = "sha256:fa5cf61058c7dbb104c2ac4e782bf1b2016a8cf2f69de6e4dd6a865d2c969bb5"},
+    {file = "fonttools-4.51.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:84d7751f4468dd8cdd03ddada18b8b0857a5beec80bce9f435742abc9a851a74"},
+    {file = "fonttools-4.51.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8b4850fa2ef2cfbc1d1f689bc159ef0f45d8d83298c1425838095bf53ef46308"},
+    {file = "fonttools-4.51.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b5b48a1121117047d82695d276c2af2ee3a24ffe0f502ed581acc2673ecf1037"},
+    {file = "fonttools-4.51.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:180194c7fe60c989bb627d7ed5011f2bef1c4d36ecf3ec64daec8302f1ae0716"},
+    {file = "fonttools-4.51.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:96a48e137c36be55e68845fc4284533bda2980f8d6f835e26bca79d7e2006438"},
+    {file = "fonttools-4.51.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:806e7912c32a657fa39d2d6eb1d3012d35f841387c8fc6cf349ed70b7c340039"},
+    {file = "fonttools-4.51.0-cp310-cp310-win32.whl", hash = "sha256:32b17504696f605e9e960647c5f64b35704782a502cc26a37b800b4d69ff3c77"},
+    {file = "fonttools-4.51.0-cp310-cp310-win_amd64.whl", hash = "sha256:c7e91abdfae1b5c9e3a543f48ce96013f9a08c6c9668f1e6be0beabf0a569c1b"},
+    {file = "fonttools-4.51.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a8feca65bab31479d795b0d16c9a9852902e3a3c0630678efb0b2b7941ea9c74"},
+    {file = "fonttools-4.51.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8ac27f436e8af7779f0bb4d5425aa3535270494d3bc5459ed27de3f03151e4c2"},
+    {file = "fonttools-4.51.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e19bd9e9964a09cd2433a4b100ca7f34e34731e0758e13ba9a1ed6e5468cc0f"},
+    {file = "fonttools-4.51.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2b92381f37b39ba2fc98c3a45a9d6383bfc9916a87d66ccb6553f7bdd129097"},
+    {file = "fonttools-4.51.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5f6bc991d1610f5c3bbe997b0233cbc234b8e82fa99fc0b2932dc1ca5e5afec0"},
+    {file = "fonttools-4.51.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9696fe9f3f0c32e9a321d5268208a7cc9205a52f99b89479d1b035ed54c923f1"},
+    {file = "fonttools-4.51.0-cp311-cp311-win32.whl", hash = "sha256:3bee3f3bd9fa1d5ee616ccfd13b27ca605c2b4270e45715bd2883e9504735034"},
+    {file = "fonttools-4.51.0-cp311-cp311-win_amd64.whl", hash = "sha256:0f08c901d3866a8905363619e3741c33f0a83a680d92a9f0e575985c2634fcc1"},
+    {file = "fonttools-4.51.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:4060acc2bfa2d8e98117828a238889f13b6f69d59f4f2d5857eece5277b829ba"},
+    {file = "fonttools-4.51.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:1250e818b5f8a679ad79660855528120a8f0288f8f30ec88b83db51515411fcc"},
+    {file = "fonttools-4.51.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76f1777d8b3386479ffb4a282e74318e730014d86ce60f016908d9801af9ca2a"},
+    {file = "fonttools-4.51.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8b5ad456813d93b9c4b7ee55302208db2b45324315129d85275c01f5cb7e61a2"},
+    {file = "fonttools-4.51.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:68b3fb7775a923be73e739f92f7e8a72725fd333eab24834041365d2278c3671"},
+    {file = "fonttools-4.51.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8e2f1a4499e3b5ee82c19b5ee57f0294673125c65b0a1ff3764ea1f9db2f9ef5"},
+    {file = "fonttools-4.51.0-cp312-cp312-win32.whl", hash = "sha256:278e50f6b003c6aed19bae2242b364e575bcb16304b53f2b64f6551b9c000e15"},
+    {file = "fonttools-4.51.0-cp312-cp312-win_amd64.whl", hash = "sha256:b3c61423f22165541b9403ee39874dcae84cd57a9078b82e1dce8cb06b07fa2e"},
+    {file = "fonttools-4.51.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:1621ee57da887c17312acc4b0e7ac30d3a4fb0fec6174b2e3754a74c26bbed1e"},
+    {file = "fonttools-4.51.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e9d9298be7a05bb4801f558522adbe2feea1b0b103d5294ebf24a92dd49b78e5"},
+    {file = "fonttools-4.51.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee1af4be1c5afe4c96ca23badd368d8dc75f611887fb0c0dac9f71ee5d6f110e"},
+    {file = "fonttools-4.51.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c18b49adc721a7d0b8dfe7c3130c89b8704baf599fb396396d07d4aa69b824a1"},
+    {file = "fonttools-4.51.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:de7c29bdbdd35811f14493ffd2534b88f0ce1b9065316433b22d63ca1cd21f14"},
+    {file = "fonttools-4.51.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:cadf4e12a608ef1d13e039864f484c8a968840afa0258b0b843a0556497ea9ed"},
+    {file = "fonttools-4.51.0-cp38-cp38-win32.whl", hash = "sha256:aefa011207ed36cd280babfaa8510b8176f1a77261833e895a9d96e57e44802f"},
+    {file = "fonttools-4.51.0-cp38-cp38-win_amd64.whl", hash = "sha256:865a58b6e60b0938874af0968cd0553bcd88e0b2cb6e588727117bd099eef836"},
+    {file = "fonttools-4.51.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:60a3409c9112aec02d5fb546f557bca6efa773dcb32ac147c6baf5f742e6258b"},
+    {file = "fonttools-4.51.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f7e89853d8bea103c8e3514b9f9dc86b5b4120afb4583b57eb10dfa5afbe0936"},
+    {file = "fonttools-4.51.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56fc244f2585d6c00b9bcc59e6593e646cf095a96fe68d62cd4da53dd1287b55"},
+    {file = "fonttools-4.51.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d145976194a5242fdd22df18a1b451481a88071feadf251221af110ca8f00ce"},
+    {file = "fonttools-4.51.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c5b8cab0c137ca229433570151b5c1fc6af212680b58b15abd797dcdd9dd5051"},
+    {file = "fonttools-4.51.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:54dcf21a2f2d06ded676e3c3f9f74b2bafded3a8ff12f0983160b13e9f2fb4a7"},
+    {file = "fonttools-4.51.0-cp39-cp39-win32.whl", hash = "sha256:0118ef998a0699a96c7b28457f15546815015a2710a1b23a7bf6c1be60c01636"},
+    {file = "fonttools-4.51.0-cp39-cp39-win_amd64.whl", hash = "sha256:599bdb75e220241cedc6faebfafedd7670335d2e29620d207dd0378a4e9ccc5a"},
+    {file = "fonttools-4.51.0-py3-none-any.whl", hash = "sha256:15c94eeef6b095831067f72c825eb0e2d48bb4cea0647c1b05c981ecba2bf39f"},
+    {file = "fonttools-4.51.0.tar.gz", hash = "sha256:dc0673361331566d7a663d7ce0f6fdcbfbdc1f59c6e3ed1165ad7202ca183c68"},
 ]
 
 [package.extras]
@@ -1137,13 +1137,13 @@ requests = ["requests (>=2.20.0,<3.0.0.dev0)"]
 
 [[package]]
 name = "google-cloud-aiplatform"
-version = "1.45.0"
+version = "1.47.0"
 description = "Vertex AI API client library"
 optional = true
 python-versions = ">=3.8"
 files = [
-    {file = "google-cloud-aiplatform-1.45.0.tar.gz", hash = "sha256:8fdc5f79fe9211ccbb9191b92db883798dffdd63995c12cc734bc17fcdbb3846"},
-    {file = "google_cloud_aiplatform-1.45.0-py2.py3-none-any.whl", hash = "sha256:40bf5e2baa9cdb453689c4276eee5e7fe12db2e7723c133f000d35bcca964fb2"},
+    {file = "google-cloud-aiplatform-1.47.0.tar.gz", hash = "sha256:1c4537db09b83957bf0623fd2afb37e339f89a3afcda3efce9dce79b16ab59c7"},
+    {file = "google_cloud_aiplatform-1.47.0-py2.py3-none-any.whl", hash = "sha256:454ef0c44ecaeadcffe58f565acfce49e53895fd51bb20da8af0d48202a4cb21"},
 ]
 
 [package.dependencies]
@@ -1162,31 +1162,34 @@ shapely = "<3.0.0dev"
 [package.extras]
 autologging = ["mlflow (>=1.27.0,<=2.1.1)"]
 cloud-profiler = ["tensorboard-plugin-profile (>=2.4.0,<3.0.0dev)", "tensorflow (>=2.4.0,<3.0.0dev)", "werkzeug (>=2.0.0,<2.1.0dev)"]
-datasets = ["pyarrow (>=10.0.1)", "pyarrow (>=3.0.0,<8.0dev)"]
+datasets = ["pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)"]
 endpoint = ["requests (>=2.28.1)"]
-full = ["cloudpickle (<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<0.103.1)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pyyaml (==5.3.1)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "starlette (>=0.17.1)", "tensorflow (>=2.3.0,<2.15.0)", "tensorflow (>=2.3.0,<3.0.0dev)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)"]
+full = ["cloudpickle (<3.0)", "cloudpickle (>=2.2.1,<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<0.103.1)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "nest-asyncio (>=1.0.0,<1.6.0)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pydantic (<3)", "pyyaml (==5.3.1)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "starlette (>=0.17.1)", "tensorflow (>=2.3.0,<2.15.0)", "tensorflow (>=2.3.0,<3.0.0dev)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)"]
+langchain = ["langchain (>=0.1.13,<0.2)", "langchain-core (<0.2)", "langchain-google-vertexai (<0.2)"]
 lit = ["explainable-ai-sdk (>=1.0.0)", "lit-nlp (==0.4.0)", "pandas (>=1.0.0)", "tensorflow (>=2.3.0,<3.0.0dev)"]
 metadata = ["numpy (>=1.15.0)", "pandas (>=1.0.0)"]
 pipelines = ["pyyaml (==5.3.1)"]
 prediction = ["docker (>=5.0.3)", "fastapi (>=0.71.0,<0.103.1)", "httpx (>=0.23.0,<0.25.0)", "starlette (>=0.17.1)", "uvicorn[standard] (>=0.16.0)"]
 preview = ["cloudpickle (<3.0)", "google-cloud-logging (<4.0)"]
 private-endpoints = ["requests (>=2.28.1)", "urllib3 (>=1.21.1,<1.27)"]
+rapid-evaluation = ["nest-asyncio (>=1.0.0,<1.6.0)", "pandas (>=1.0.0,<2.2.0)"]
 ray = ["google-cloud-bigquery", "google-cloud-bigquery-storage", "immutabledict", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=6.0.1)", "pydantic (<2)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)"]
 ray-testing = ["google-cloud-bigquery", "google-cloud-bigquery-storage", "immutabledict", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pytest-xdist", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "ray[train] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "scikit-learn", "tensorflow", "torch (>=2.0.0,<2.1.0)", "xgboost", "xgboost-ray"]
+reasoningengine = ["cloudpickle (>=2.2.1,<3.0)", "pydantic (<3)"]
 tensorboard = ["tensorflow (>=2.3.0,<2.15.0)"]
-testing = ["bigframes", "cloudpickle (<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<0.103.1)", "google-api-core (>=2.11,<3.0.0)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "grpcio-testing", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "ipython", "kfp (>=2.6.0,<3.0.0)", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pyfakefs", "pytest-asyncio", "pytest-xdist", "pyyaml (==5.3.1)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "requests-toolbelt (<1.0.0)", "scikit-learn", "starlette (>=0.17.1)", "tensorboard-plugin-profile (>=2.4.0,<3.0.0dev)", "tensorflow (==2.13.0)", "tensorflow (>=2.3.0,<2.15.0)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.4.0,<3.0.0dev)", "torch (>=2.0.0,<2.1.0)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)", "werkzeug (>=2.0.0,<2.1.0dev)", "xgboost", "xgboost-ray"]
+testing = ["bigframes", "cloudpickle (<3.0)", "cloudpickle (>=2.2.1,<3.0)", "docker (>=5.0.3)", "explainable-ai-sdk (>=1.0.0)", "fastapi (>=0.71.0,<0.103.1)", "google-api-core (>=2.11,<3.0.0)", "google-cloud-bigquery", "google-cloud-bigquery-storage", "google-cloud-logging (<4.0)", "google-vizier (>=0.1.6)", "grpcio-testing", "httpx (>=0.23.0,<0.25.0)", "immutabledict", "ipython", "kfp (>=2.6.0,<3.0.0)", "lit-nlp (==0.4.0)", "mlflow (>=1.27.0,<=2.1.1)", "nest-asyncio (>=1.0.0,<1.6.0)", "numpy (>=1.15.0)", "pandas (>=1.0.0)", "pandas (>=1.0.0,<2.2.0)", "pyarrow (>=10.0.1)", "pyarrow (>=14.0.0)", "pyarrow (>=3.0.0,<8.0dev)", "pyarrow (>=6.0.1)", "pydantic (<2)", "pydantic (<3)", "pyfakefs", "pytest-asyncio", "pytest-xdist", "pyyaml (==5.3.1)", "ray[default] (>=2.4,<2.5.dev0 || >2.9.0,!=2.9.1,!=2.9.2,<=2.9.3)", "ray[default] (>=2.5,<=2.9.3)", "requests (>=2.28.1)", "requests-toolbelt (<1.0.0)", "scikit-learn", "starlette (>=0.17.1)", "tensorboard-plugin-profile (>=2.4.0,<3.0.0dev)", "tensorflow (==2.13.0)", "tensorflow (==2.16.1)", "tensorflow (>=2.3.0,<2.15.0)", "tensorflow (>=2.3.0,<3.0.0dev)", "tensorflow (>=2.4.0,<3.0.0dev)", "torch (>=2.0.0,<2.1.0)", "torch (>=2.2.0)", "urllib3 (>=1.21.1,<1.27)", "uvicorn[standard] (>=0.16.0)", "werkzeug (>=2.0.0,<2.1.0dev)", "xgboost"]
 vizier = ["google-vizier (>=0.1.6)"]
 xai = ["tensorflow (>=2.3.0,<3.0.0dev)"]
 
 [[package]]
 name = "google-cloud-bigquery"
-version = "3.19.0"
+version = "3.20.1"
 description = "Google BigQuery API client library"
 optional = true
 python-versions = ">=3.7"
 files = [
-    {file = "google-cloud-bigquery-3.19.0.tar.gz", hash = "sha256:8e311dae49768e1501fcdc5e916bff4b7e169471e5707919f4a6f78a02b3b5a6"},
-    {file = "google_cloud_bigquery-3.19.0-py2.py3-none-any.whl", hash = "sha256:c6b8850247a4b132066e49f6e45f850c22824482838688d744a4398eea1120ed"},
+    {file = "google-cloud-bigquery-3.20.1.tar.gz", hash = "sha256:318aa3abab5f1900ee24f63ba8bd02b9cdafaa942d738b4dc14a4ef2cc2d925f"},
+    {file = "google_cloud_bigquery-3.20.1-py2.py3-none-any.whl", hash = "sha256:d3e62fe61138c658b8853c402e2d8fb9346c84e602e21e3a26584be10fc5b0a4"},
 ]
 
 [package.dependencies]
@@ -1691,13 +1694,13 @@ files = [
 
 [[package]]
 name = "idna"
-version = "3.6"
+version = "3.7"
 description = "Internationalized Domain Names in Applications (IDNA)"
 optional = false
 python-versions = ">=3.5"
 files = [
-    {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"},
-    {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"},
+    {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"},
+    {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"},
 ]
 
 [[package]]
@@ -1856,13 +1859,13 @@ i18n = ["Babel (>=2.7)"]
 
 [[package]]
 name = "joblib"
-version = "1.3.2"
+version = "1.4.0"
 description = "Lightweight pipelining with Python functions"
 optional = true
-python-versions = ">=3.7"
+python-versions = ">=3.8"
 files = [
-    {file = "joblib-1.3.2-py3-none-any.whl", hash = "sha256:ef4331c65f239985f3f2220ecc87db222f08fd22097a3dd5698f693875f8cbb9"},
-    {file = "joblib-1.3.2.tar.gz", hash = "sha256:92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1"},
+    {file = "joblib-1.4.0-py3-none-any.whl", hash = "sha256:42942470d4062537be4d54c83511186da1fc14ba354961a2114da91efa9a4ed7"},
+    {file = "joblib-1.4.0.tar.gz", hash = "sha256:1eb0dc091919cd384490de890cb5dfd538410a6d4b3b54eef09fb8c50b409b1c"},
 ]
 
 [[package]]
@@ -2023,12 +2026,12 @@ files = [
 
 [[package]]
 name = "llama-cpp-python"
-version = "0.2.58"
+version = "0.2.61"
 description = "Python bindings for the llama.cpp library"
 optional = true
 python-versions = ">=3.8"
 files = [
-    {file = "llama_cpp_python-0.2.58.tar.gz", hash = "sha256:50d4d16835326b15f5c4ed20dbf2f24508bf29b34531d50612ce215a596dde3f"},
+    {file = "llama_cpp_python-0.2.61.tar.gz", hash = "sha256:2d554259a66040f5daae7f3cf7e43b44971dc49f10225a9ba196eb2a49778bd4"},
 ]
 
 [package.dependencies]
@@ -2040,7 +2043,7 @@ typing-extensions = ">=4.5.0"
 [package.extras]
 all = ["llama_cpp_python[dev,server,test]"]
 dev = ["black (>=23.3.0)", "httpx (>=0.24.1)", "mkdocs (>=1.4.3)", "mkdocs-material (>=9.1.18)", "mkdocstrings[python] (>=0.22.0)", "pytest (>=7.4.0)", "twine (>=4.0.2)"]
-server = ["fastapi (>=0.100.0)", "pydantic-settings (>=2.0.1)", "sse-starlette (>=1.6.1)", "starlette-context (>=0.3.6,<0.4)", "uvicorn (>=0.22.0)"]
+server = ["PyYAML (>=5.1)", "fastapi (>=0.100.0)", "pydantic-settings (>=2.0.1)", "sse-starlette (>=1.6.1)", "starlette-context (>=0.3.6,<0.4)", "uvicorn (>=0.22.0)"]
 test = ["httpx (>=0.24.1)", "pytest (>=7.4.0)", "scipy (>=1.10)"]
 
 [[package]]
@@ -2132,39 +2135,39 @@ files = [
 
 [[package]]
 name = "matplotlib"
-version = "3.8.3"
+version = "3.8.4"
 description = "Python plotting package"
 optional = true
 python-versions = ">=3.9"
 files = [
-    {file = "matplotlib-3.8.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:cf60138ccc8004f117ab2a2bad513cc4d122e55864b4fe7adf4db20ca68a078f"},
-    {file = "matplotlib-3.8.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5f557156f7116be3340cdeef7f128fa99b0d5d287d5f41a16e169819dcf22357"},
-    {file = "matplotlib-3.8.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f386cf162b059809ecfac3bcc491a9ea17da69fa35c8ded8ad154cd4b933d5ec"},
-    {file = "matplotlib-3.8.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b3c5f96f57b0369c288bf6f9b5274ba45787f7e0589a34d24bdbaf6d3344632f"},
-    {file = "matplotlib-3.8.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:83e0f72e2c116ca7e571c57aa29b0fe697d4c6425c4e87c6e994159e0c008635"},
-    {file = "matplotlib-3.8.3-cp310-cp310-win_amd64.whl", hash = "sha256:1c5c8290074ba31a41db1dc332dc2b62def469ff33766cbe325d32a3ee291aea"},
-    {file = "matplotlib-3.8.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:5184e07c7e1d6d1481862ee361905b7059f7fe065fc837f7c3dc11eeb3f2f900"},
-    {file = "matplotlib-3.8.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d7e7e0993d0758933b1a241a432b42c2db22dfa37d4108342ab4afb9557cbe3e"},
-    {file = "matplotlib-3.8.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:04b36ad07eac9740fc76c2aa16edf94e50b297d6eb4c081e3add863de4bb19a7"},
-    {file = "matplotlib-3.8.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7c42dae72a62f14982f1474f7e5c9959fc4bc70c9de11cc5244c6e766200ba65"},
-    {file = "matplotlib-3.8.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:bf5932eee0d428192c40b7eac1399d608f5d995f975cdb9d1e6b48539a5ad8d0"},
-    {file = "matplotlib-3.8.3-cp311-cp311-win_amd64.whl", hash = "sha256:40321634e3a05ed02abf7c7b47a50be50b53ef3eaa3a573847431a545585b407"},
-    {file = "matplotlib-3.8.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:09074f8057917d17ab52c242fdf4916f30e99959c1908958b1fc6032e2d0f6d4"},
-    {file = "matplotlib-3.8.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5745f6d0fb5acfabbb2790318db03809a253096e98c91b9a31969df28ee604aa"},
-    {file = "matplotlib-3.8.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b97653d869a71721b639714b42d87cda4cfee0ee74b47c569e4874c7590c55c5"},
-    {file = "matplotlib-3.8.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:242489efdb75b690c9c2e70bb5c6550727058c8a614e4c7716f363c27e10bba1"},
-    {file = "matplotlib-3.8.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:83c0653c64b73926730bd9ea14aa0f50f202ba187c307a881673bad4985967b7"},
-    {file = "matplotlib-3.8.3-cp312-cp312-win_amd64.whl", hash = "sha256:ef6c1025a570354297d6c15f7d0f296d95f88bd3850066b7f1e7b4f2f4c13a39"},
-    {file = "matplotlib-3.8.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:c4af3f7317f8a1009bbb2d0bf23dfaba859eb7dd4ccbd604eba146dccaaaf0a4"},
-    {file = "matplotlib-3.8.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4c6e00a65d017d26009bac6808f637b75ceade3e1ff91a138576f6b3065eeeba"},
-    {file = "matplotlib-3.8.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e7b49ab49a3bea17802df6872f8d44f664ba8f9be0632a60c99b20b6db2165b7"},
-    {file = "matplotlib-3.8.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6728dde0a3997396b053602dbd907a9bd64ec7d5cf99e728b404083698d3ca01"},
-    {file = "matplotlib-3.8.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:813925d08fb86aba139f2d31864928d67511f64e5945ca909ad5bc09a96189bb"},
-    {file = "matplotlib-3.8.3-cp39-cp39-win_amd64.whl", hash = "sha256:cd3a0c2be76f4e7be03d34a14d49ded6acf22ef61f88da600a18a5cd8b3c5f3c"},
-    {file = "matplotlib-3.8.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:fa93695d5c08544f4a0dfd0965f378e7afc410d8672816aff1e81be1f45dbf2e"},
-    {file = "matplotlib-3.8.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9764df0e8778f06414b9d281a75235c1e85071f64bb5d71564b97c1306a2afc"},
-    {file = "matplotlib-3.8.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:5e431a09e6fab4012b01fc155db0ce6dccacdbabe8198197f523a4ef4805eb26"},
-    {file = "matplotlib-3.8.3.tar.gz", hash = "sha256:7b416239e9ae38be54b028abbf9048aff5054a9aba5416bef0bd17f9162ce161"},
+    {file = "matplotlib-3.8.4-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:abc9d838f93583650c35eca41cfcec65b2e7cb50fd486da6f0c49b5e1ed23014"},
+    {file = "matplotlib-3.8.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f65c9f002d281a6e904976007b2d46a1ee2bcea3a68a8c12dda24709ddc9106"},
+    {file = "matplotlib-3.8.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce1edd9f5383b504dbc26eeea404ed0a00656c526638129028b758fd43fc5f10"},
+    {file = "matplotlib-3.8.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ecd79298550cba13a43c340581a3ec9c707bd895a6a061a78fa2524660482fc0"},
+    {file = "matplotlib-3.8.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:90df07db7b599fe7035d2f74ab7e438b656528c68ba6bb59b7dc46af39ee48ef"},
+    {file = "matplotlib-3.8.4-cp310-cp310-win_amd64.whl", hash = "sha256:ac24233e8f2939ac4fd2919eed1e9c0871eac8057666070e94cbf0b33dd9c338"},
+    {file = "matplotlib-3.8.4-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:72f9322712e4562e792b2961971891b9fbbb0e525011e09ea0d1f416c4645661"},
+    {file = "matplotlib-3.8.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:232ce322bfd020a434caaffbd9a95333f7c2491e59cfc014041d95e38ab90d1c"},
+    {file = "matplotlib-3.8.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6addbd5b488aedb7f9bc19f91cd87ea476206f45d7116fcfe3d31416702a82fa"},
+    {file = "matplotlib-3.8.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc4ccdc64e3039fc303defd119658148f2349239871db72cd74e2eeaa9b80b71"},
+    {file = "matplotlib-3.8.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:b7a2a253d3b36d90c8993b4620183b55665a429da8357a4f621e78cd48b2b30b"},
+    {file = "matplotlib-3.8.4-cp311-cp311-win_amd64.whl", hash = "sha256:8080d5081a86e690d7688ffa542532e87f224c38a6ed71f8fbed34dd1d9fedae"},
+    {file = "matplotlib-3.8.4-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:6485ac1f2e84676cff22e693eaa4fbed50ef5dc37173ce1f023daef4687df616"},
+    {file = "matplotlib-3.8.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c89ee9314ef48c72fe92ce55c4e95f2f39d70208f9f1d9db4e64079420d8d732"},
+    {file = "matplotlib-3.8.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50bac6e4d77e4262c4340d7a985c30912054745ec99756ce213bfbc3cb3808eb"},
+    {file = "matplotlib-3.8.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f51c4c869d4b60d769f7b4406eec39596648d9d70246428745a681c327a8ad30"},
+    {file = "matplotlib-3.8.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b12ba985837e4899b762b81f5b2845bd1a28f4fdd1a126d9ace64e9c4eb2fb25"},
+    {file = "matplotlib-3.8.4-cp312-cp312-win_amd64.whl", hash = "sha256:7a6769f58ce51791b4cb8b4d7642489df347697cd3e23d88266aaaee93b41d9a"},
+    {file = "matplotlib-3.8.4-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:843cbde2f0946dadd8c5c11c6d91847abd18ec76859dc319362a0964493f0ba6"},
+    {file = "matplotlib-3.8.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1c13f041a7178f9780fb61cc3a2b10423d5e125480e4be51beaf62b172413b67"},
+    {file = "matplotlib-3.8.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb44f53af0a62dc80bba4443d9b27f2fde6acfdac281d95bc872dc148a6509cc"},
+    {file = "matplotlib-3.8.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:606e3b90897554c989b1e38a258c626d46c873523de432b1462f295db13de6f9"},
+    {file = "matplotlib-3.8.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9bb0189011785ea794ee827b68777db3ca3f93f3e339ea4d920315a0e5a78d54"},
+    {file = "matplotlib-3.8.4-cp39-cp39-win_amd64.whl", hash = "sha256:6209e5c9aaccc056e63b547a8152661324404dd92340a6e479b3a7f24b42a5d0"},
+    {file = "matplotlib-3.8.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c7064120a59ce6f64103c9cefba8ffe6fba87f2c61d67c401186423c9a20fd35"},
+    {file = "matplotlib-3.8.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0e47eda4eb2614300fc7bb4657fced3e83d6334d03da2173b09e447418d499f"},
+    {file = "matplotlib-3.8.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:493e9f6aa5819156b58fce42b296ea31969f2aab71c5b680b4ea7a3cb5c07d94"},
+    {file = "matplotlib-3.8.4.tar.gz", hash = "sha256:8aac397d5e9ec158960e31c381c5ffc52ddd52bd9a47717e2a694038167dffea"},
 ]
 
 [package.dependencies]
@@ -2173,7 +2176,7 @@ cycler = ">=0.10"
 fonttools = ">=4.22.0"
 importlib-resources = {version = ">=3.2.0", markers = "python_version < \"3.10\""}
 kiwisolver = ">=1.3.1"
-numpy = ">=1.21,<2"
+numpy = ">=1.21"
 packaging = ">=20.0"
 pillow = ">=8"
 pyparsing = ">=2.3.1"
@@ -2647,14 +2650,13 @@ files = [
 
 [[package]]
 name = "nvidia-nvjitlink-cu12"
-version = "12.4.99"
+version = "12.4.127"
 description = "Nvidia JIT LTO Library"
 optional = true
 python-versions = ">=3"
 files = [
-    {file = "nvidia_nvjitlink_cu12-12.4.99-py3-none-manylinux2014_aarch64.whl", hash = "sha256:75d6498c96d9adb9435f2bbdbddb479805ddfb97b5c1b32395c694185c20ca57"},
-    {file = "nvidia_nvjitlink_cu12-12.4.99-py3-none-manylinux2014_x86_64.whl", hash = "sha256:c6428836d20fe7e327191c175791d38570e10762edc588fb46749217cd444c74"},
-    {file = "nvidia_nvjitlink_cu12-12.4.99-py3-none-win_amd64.whl", hash = "sha256:991905ffa2144cb603d8ca7962d75c35334ae82bf92820b6ba78157277da1ad2"},
+    {file = "nvidia_nvjitlink_cu12-12.4.127-py3-none-manylinux2014_x86_64.whl", hash = "sha256:06b3b9b25bf3f8af351d664978ca26a16d2c5127dbd53c0497e28d1fb9611d57"},
+    {file = "nvidia_nvjitlink_cu12-12.4.127-py3-none-win_amd64.whl", hash = "sha256:fd9020c501d27d135f983c6d3e244b197a7ccad769e34df53a42e276b0e25fa1"},
 ]
 
 [[package]]
@@ -2717,36 +2719,36 @@ reference = ["Pillow", "google-re2"]
 
 [[package]]
 name = "onnxruntime"
-version = "1.17.1"
+version = "1.17.3"
 description = "ONNX Runtime is a runtime accelerator for Machine Learning models"
 optional = true
 python-versions = "*"
 files = [
-    {file = "onnxruntime-1.17.1-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:d43ac17ac4fa3c9096ad3c0e5255bb41fd134560212dc124e7f52c3159af5d21"},
-    {file = "onnxruntime-1.17.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:55b5e92a4c76a23981c998078b9bf6145e4fb0b016321a8274b1607bd3c6bd35"},
-    {file = "onnxruntime-1.17.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ebbcd2bc3a066cf54e6f18c75708eb4d309ef42be54606d22e5bdd78afc5b0d7"},
-    {file = "onnxruntime-1.17.1-cp310-cp310-win32.whl", hash = "sha256:5e3716b5eec9092e29a8d17aab55e737480487deabfca7eac3cd3ed952b6ada9"},
-    {file = "onnxruntime-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:fbb98cced6782ae1bb799cc74ddcbbeeae8819f3ad1d942a74d88e72b6511337"},
-    {file = "onnxruntime-1.17.1-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:36fd6f87a1ecad87e9c652e42407a50fb305374f9a31d71293eb231caae18784"},
-    {file = "onnxruntime-1.17.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:99a8bddeb538edabc524d468edb60ad4722cff8a49d66f4e280c39eace70500b"},
-    {file = "onnxruntime-1.17.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fd7fddb4311deb5a7d3390cd8e9b3912d4d963efbe4dfe075edbaf18d01c024e"},
-    {file = "onnxruntime-1.17.1-cp311-cp311-win32.whl", hash = "sha256:606a7cbfb6680202b0e4f1890881041ffc3ac6e41760a25763bd9fe146f0b335"},
-    {file = "onnxruntime-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:53e4e06c0a541696ebdf96085fd9390304b7b04b748a19e02cf3b35c869a1e76"},
-    {file = "onnxruntime-1.17.1-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:40f08e378e0f85929712a2b2c9b9a9cc400a90c8a8ca741d1d92c00abec60843"},
-    {file = "onnxruntime-1.17.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ac79da6d3e1bb4590f1dad4bb3c2979d7228555f92bb39820889af8b8e6bd472"},
-    {file = "onnxruntime-1.17.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ae9ba47dc099004e3781f2d0814ad710a13c868c739ab086fc697524061695ea"},
-    {file = "onnxruntime-1.17.1-cp312-cp312-win32.whl", hash = "sha256:2dff1a24354220ac30e4a4ce2fb1df38cb1ea59f7dac2c116238d63fe7f4c5ff"},
-    {file = "onnxruntime-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:6226a5201ab8cafb15e12e72ff2a4fc8f50654e8fa5737c6f0bd57c5ff66827e"},
-    {file = "onnxruntime-1.17.1-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:cd0c07c0d1dfb8629e820b05fda5739e4835b3b82faf43753d2998edf2cf00aa"},
-    {file = "onnxruntime-1.17.1-cp38-cp38-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:617ebdf49184efa1ba6e4467e602fbfa029ed52c92f13ce3c9f417d303006381"},
-    {file = "onnxruntime-1.17.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9dae9071e3facdf2920769dceee03b71c684b6439021defa45b830d05e148924"},
-    {file = "onnxruntime-1.17.1-cp38-cp38-win32.whl", hash = "sha256:835d38fa1064841679433b1aa8138b5e1218ddf0cfa7a3ae0d056d8fd9cec713"},
-    {file = "onnxruntime-1.17.1-cp38-cp38-win_amd64.whl", hash = "sha256:96621e0c555c2453bf607606d08af3f70fbf6f315230c28ddea91754e17ad4e6"},
-    {file = "onnxruntime-1.17.1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:7a9539935fb2d78ebf2cf2693cad02d9930b0fb23cdd5cf37a7df813e977674d"},
-    {file = "onnxruntime-1.17.1-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:45c6a384e9d9a29c78afff62032a46a993c477b280247a7e335df09372aedbe9"},
-    {file = "onnxruntime-1.17.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4e19f966450f16863a1d6182a685ca33ae04d7772a76132303852d05b95411ea"},
-    {file = "onnxruntime-1.17.1-cp39-cp39-win32.whl", hash = "sha256:e2ae712d64a42aac29ed7a40a426cb1e624a08cfe9273dcfe681614aa65b07dc"},
-    {file = "onnxruntime-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:f7e9f7fb049825cdddf4a923cfc7c649d84d63c0134315f8e0aa9e0c3004672c"},
+    {file = "onnxruntime-1.17.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:d86dde9c0bb435d709e51bd25991c9fe5b9a5b168df45ce119769edc4d198b15"},
+    {file = "onnxruntime-1.17.3-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9d87b68bf931ac527b2d3c094ead66bb4381bac4298b65f46c54fe4d1e255865"},
+    {file = "onnxruntime-1.17.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:26e950cf0333cf114a155f9142e71da344d2b08dfe202763a403ae81cc02ebd1"},
+    {file = "onnxruntime-1.17.3-cp310-cp310-win32.whl", hash = "sha256:0962a4d0f5acebf62e1f0bf69b6e0adf16649115d8de854c1460e79972324d68"},
+    {file = "onnxruntime-1.17.3-cp310-cp310-win_amd64.whl", hash = "sha256:468ccb8a0faa25c681a41787b1594bf4448b0252d3efc8b62fd8b2411754340f"},
+    {file = "onnxruntime-1.17.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:e8cd90c1c17d13d47b89ab076471e07fb85467c01dcd87a8b8b5cdfbcb40aa51"},
+    {file = "onnxruntime-1.17.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a058b39801baefe454eeb8acf3ada298c55a06a4896fafc224c02d79e9037f60"},
+    {file = "onnxruntime-1.17.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2f823d5eb4807007f3da7b27ca972263df6a1836e6f327384eb266274c53d05d"},
+    {file = "onnxruntime-1.17.3-cp311-cp311-win32.whl", hash = "sha256:b66b23f9109e78ff2791628627a26f65cd335dcc5fbd67ff60162733a2f7aded"},
+    {file = "onnxruntime-1.17.3-cp311-cp311-win_amd64.whl", hash = "sha256:570760ca53a74cdd751ee49f13de70d1384dcf73d9888b8deac0917023ccda6d"},
+    {file = "onnxruntime-1.17.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:77c318178d9c16e9beadd9a4070d8aaa9f57382c3f509b01709f0f010e583b99"},
+    {file = "onnxruntime-1.17.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:23da8469049b9759082e22c41a444f44a520a9c874b084711b6343672879f50b"},
+    {file = "onnxruntime-1.17.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2949730215af3f9289008b2e31e9bbef952012a77035b911c4977edea06f3f9e"},
+    {file = "onnxruntime-1.17.3-cp312-cp312-win32.whl", hash = "sha256:6c7555a49008f403fb3b19204671efb94187c5085976ae526cb625f6ede317bc"},
+    {file = "onnxruntime-1.17.3-cp312-cp312-win_amd64.whl", hash = "sha256:58672cf20293a1b8a277a5c6c55383359fcdf6119b2f14df6ce3b140f5001c39"},
+    {file = "onnxruntime-1.17.3-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:4395ba86e3c1e93c794a00619ef1aec597ab78f5a5039f3c6d2e9d0695c0a734"},
+    {file = "onnxruntime-1.17.3-cp38-cp38-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdf354c04344ec38564fc22394e1fe08aa6d70d790df00159205a0055c4a4d3f"},
+    {file = "onnxruntime-1.17.3-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a94b600b7af50e922d44b95a57981e3e35103c6e3693241a03d3ca204740bbda"},
+    {file = "onnxruntime-1.17.3-cp38-cp38-win32.whl", hash = "sha256:5a335c76f9c002a8586c7f38bc20fe4b3725ced21f8ead835c3e4e507e42b2ab"},
+    {file = "onnxruntime-1.17.3-cp38-cp38-win_amd64.whl", hash = "sha256:8f56a86fbd0ddc8f22696ddeda0677b041381f4168a2ca06f712ef6ec6050d6d"},
+    {file = "onnxruntime-1.17.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:e0ae39f5452278cd349520c296e7de3e90d62dc5b0157c6868e2748d7f28b871"},
+    {file = "onnxruntime-1.17.3-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3ff2dc012bd930578aff5232afd2905bf16620815f36783a941aafabf94b3702"},
+    {file = "onnxruntime-1.17.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cf6c37483782e4785019b56e26224a25e9b9a35b849d0169ce69189867a22bb1"},
+    {file = "onnxruntime-1.17.3-cp39-cp39-win32.whl", hash = "sha256:351bf5a1140dcc43bfb8d3d1a230928ee61fcd54b0ea664c8e9a889a8e3aa515"},
+    {file = "onnxruntime-1.17.3-cp39-cp39-win_amd64.whl", hash = "sha256:57a3de15778da8d6cc43fbf6cf038e1e746146300b5f0b1fbf01f6f795dc6440"},
 ]
 
 [package.dependencies]
@@ -2759,13 +2761,13 @@ sympy = "*"
 
 [[package]]
 name = "openai"
-version = "1.16.0"
+version = "1.17.1"
 description = "The official Python library for the openai API"
 optional = false
 python-versions = ">=3.7.1"
 files = [
-    {file = "openai-1.16.0-py3-none-any.whl", hash = "sha256:c715c9872515369621ab16d31af917540b69af7d5df2d01b4c81f809cc17e91d"},
-    {file = "openai-1.16.0.tar.gz", hash = "sha256:2d1f2b106f0efc35ac9590dd7e4d1fcc10c616bfdd7eae17829c07f9ea212517"},
+    {file = "openai-1.17.1-py3-none-any.whl", hash = "sha256:d42e0d7a692c7b78cbae21598df5ded396abecf6c285325635ec62621e6c82f1"},
+    {file = "openai-1.17.1.tar.gz", hash = "sha256:c5a909e70e2b4cd04ef4076b68497c4eb894704cf8ab23d32d6552931fda6e5b"},
 ]
 
 [package.dependencies]
@@ -2853,18 +2855,18 @@ files = [
 
 [[package]]
 name = "parso"
-version = "0.8.3"
+version = "0.8.4"
 description = "A Python Parser"
 optional = false
 python-versions = ">=3.6"
 files = [
-    {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"},
-    {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"},
+    {file = "parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18"},
+    {file = "parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d"},
 ]
 
 [package.extras]
-qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
-testing = ["docopt", "pytest (<6.0.0)"]
+qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"]
+testing = ["docopt", "pytest"]
 
 [[package]]
 name = "pathspec"
@@ -3219,18 +3221,18 @@ files = [
 
 [[package]]
 name = "pydantic"
-version = "2.6.4"
+version = "2.7.0"
 description = "Data validation using Python type hints"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "pydantic-2.6.4-py3-none-any.whl", hash = "sha256:cc46fce86607580867bdc3361ad462bab9c222ef042d3da86f2fb333e1d916c5"},
-    {file = "pydantic-2.6.4.tar.gz", hash = "sha256:b1704e0847db01817624a6b86766967f552dd9dbf3afba4004409f908dcc84e6"},
+    {file = "pydantic-2.7.0-py3-none-any.whl", hash = "sha256:9dee74a271705f14f9a1567671d144a851c675b072736f0a7b2608fd9e495352"},
+    {file = "pydantic-2.7.0.tar.gz", hash = "sha256:b5ecdd42262ca2462e2624793551e80911a1e989f462910bb81aef974b4bb383"},
 ]
 
 [package.dependencies]
 annotated-types = ">=0.4.0"
-pydantic-core = "2.16.3"
+pydantic-core = "2.18.1"
 typing-extensions = ">=4.6.1"
 
 [package.extras]
@@ -3238,90 +3240,90 @@ email = ["email-validator (>=2.0.0)"]
 
 [[package]]
 name = "pydantic-core"
-version = "2.16.3"
-description = ""
+version = "2.18.1"
+description = "Core functionality for Pydantic validation and serialization"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "pydantic_core-2.16.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:75b81e678d1c1ede0785c7f46690621e4c6e63ccd9192af1f0bd9d504bbb6bf4"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9c865a7ee6f93783bd5d781af5a4c43dadc37053a5b42f7d18dc019f8c9d2bd1"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:162e498303d2b1c036b957a1278fa0899d02b2842f1ff901b6395104c5554a45"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2f583bd01bbfbff4eaee0868e6fc607efdfcc2b03c1c766b06a707abbc856187"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b926dd38db1519ed3043a4de50214e0d600d404099c3392f098a7f9d75029ff8"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:716b542728d4c742353448765aa7cdaa519a7b82f9564130e2b3f6766018c9ec"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc4ad7f7ee1a13d9cb49d8198cd7d7e3aa93e425f371a68235f784e99741561f"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bd87f48924f360e5d1c5f770d6155ce0e7d83f7b4e10c2f9ec001c73cf475c99"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0df446663464884297c793874573549229f9eca73b59360878f382a0fc085979"},
-    {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4df8a199d9f6afc5ae9a65f8f95ee52cae389a8c6b20163762bde0426275b7db"},
-    {file = "pydantic_core-2.16.3-cp310-none-win32.whl", hash = "sha256:456855f57b413f077dff513a5a28ed838dbbb15082ba00f80750377eed23d132"},
-    {file = "pydantic_core-2.16.3-cp310-none-win_amd64.whl", hash = "sha256:732da3243e1b8d3eab8c6ae23ae6a58548849d2e4a4e03a1924c8ddf71a387cb"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:519ae0312616026bf4cedc0fe459e982734f3ca82ee8c7246c19b650b60a5ee4"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b3992a322a5617ded0a9f23fd06dbc1e4bd7cf39bc4ccf344b10f80af58beacd"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d62da299c6ecb04df729e4b5c52dc0d53f4f8430b4492b93aa8de1f541c4aac"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2acca2be4bb2f2147ada8cac612f8a98fc09f41c89f87add7256ad27332c2fda"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1b662180108c55dfbf1280d865b2d116633d436cfc0bba82323554873967b340"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e7c6ed0dc9d8e65f24f5824291550139fe6f37fac03788d4580da0d33bc00c97"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1bb0827f56654b4437955555dc3aeeebeddc47c2d7ed575477f082622c49e"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e56f8186d6210ac7ece503193ec84104da7ceb98f68ce18c07282fcc2452e76f"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:936e5db01dd49476fa8f4383c259b8b1303d5dd5fb34c97de194560698cc2c5e"},
-    {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:33809aebac276089b78db106ee692bdc9044710e26f24a9a2eaa35a0f9fa70ba"},
-    {file = "pydantic_core-2.16.3-cp311-none-win32.whl", hash = "sha256:ded1c35f15c9dea16ead9bffcde9bb5c7c031bff076355dc58dcb1cb436c4721"},
-    {file = "pydantic_core-2.16.3-cp311-none-win_amd64.whl", hash = "sha256:d89ca19cdd0dd5f31606a9329e309d4fcbb3df860960acec32630297d61820df"},
-    {file = "pydantic_core-2.16.3-cp311-none-win_arm64.whl", hash = "sha256:6162f8d2dc27ba21027f261e4fa26f8bcb3cf9784b7f9499466a311ac284b5b9"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0f56ae86b60ea987ae8bcd6654a887238fd53d1384f9b222ac457070b7ac4cff"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9bd22a2a639e26171068f8ebb5400ce2c1bc7d17959f60a3b753ae13c632975"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4204e773b4b408062960e65468d5346bdfe139247ee5f1ca2a378983e11388a2"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f651dd19363c632f4abe3480a7c87a9773be27cfe1341aef06e8759599454120"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aaf09e615a0bf98d406657e0008e4a8701b11481840be7d31755dc9f97c44053"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8e47755d8152c1ab5b55928ab422a76e2e7b22b5ed8e90a7d584268dd49e9c6b"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:500960cb3a0543a724a81ba859da816e8cf01b0e6aaeedf2c3775d12ee49cade"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cf6204fe865da605285c34cf1172879d0314ff267b1c35ff59de7154f35fdc2e"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d33dd21f572545649f90c38c227cc8631268ba25c460b5569abebdd0ec5974ca"},
-    {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:49d5d58abd4b83fb8ce763be7794d09b2f50f10aa65c0f0c1696c677edeb7cbf"},
-    {file = "pydantic_core-2.16.3-cp312-none-win32.whl", hash = "sha256:f53aace168a2a10582e570b7736cc5bef12cae9cf21775e3eafac597e8551fbe"},
-    {file = "pydantic_core-2.16.3-cp312-none-win_amd64.whl", hash = "sha256:0d32576b1de5a30d9a97f300cc6a3f4694c428d956adbc7e6e2f9cad279e45ed"},
-    {file = "pydantic_core-2.16.3-cp312-none-win_arm64.whl", hash = "sha256:ec08be75bb268473677edb83ba71e7e74b43c008e4a7b1907c6d57e940bf34b6"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:b1f6f5938d63c6139860f044e2538baeee6f0b251a1816e7adb6cbce106a1f01"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2a1ef6a36fdbf71538142ed604ad19b82f67b05749512e47f247a6ddd06afdc7"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:704d35ecc7e9c31d48926150afada60401c55efa3b46cd1ded5a01bdffaf1d48"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d937653a696465677ed583124b94a4b2d79f5e30b2c46115a68e482c6a591c8a"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9803edf8e29bd825f43481f19c37f50d2b01899448273b3a7758441b512acf8"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:72282ad4892a9fb2da25defeac8c2e84352c108705c972db82ab121d15f14e6d"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f752826b5b8361193df55afcdf8ca6a57d0232653494ba473630a83ba50d8c9"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4384a8f68ddb31a0b0c3deae88765f5868a1b9148939c3f4121233314ad5532c"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4b2bf78342c40b3dc830880106f54328928ff03e357935ad26c7128bbd66ce8"},
-    {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:13dcc4802961b5f843a9385fc821a0b0135e8c07fc3d9949fd49627c1a5e6ae5"},
-    {file = "pydantic_core-2.16.3-cp38-none-win32.whl", hash = "sha256:e3e70c94a0c3841e6aa831edab1619ad5c511199be94d0c11ba75fe06efe107a"},
-    {file = "pydantic_core-2.16.3-cp38-none-win_amd64.whl", hash = "sha256:ecdf6bf5f578615f2e985a5e1f6572e23aa632c4bd1dc67f8f406d445ac115ed"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:bda1ee3e08252b8d41fa5537413ffdddd58fa73107171a126d3b9ff001b9b820"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:21b888c973e4f26b7a96491c0965a8a312e13be108022ee510248fe379a5fa23"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be0ec334369316fa73448cc8c982c01e5d2a81c95969d58b8f6e272884df0074"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b5b6079cc452a7c53dd378c6f881ac528246b3ac9aae0f8eef98498a75657805"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ee8d5f878dccb6d499ba4d30d757111847b6849ae07acdd1205fffa1fc1253c"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7233d65d9d651242a68801159763d09e9ec96e8a158dbf118dc090cd77a104c9"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6119dc90483a5cb50a1306adb8d52c66e447da88ea44f323e0ae1a5fcb14256"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:578114bc803a4c1ff9946d977c221e4376620a46cf78da267d946397dc9514a8"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d8f99b147ff3fcf6b3cc60cb0c39ea443884d5559a30b1481e92495f2310ff2b"},
-    {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4ac6b4ce1e7283d715c4b729d8f9dab9627586dafce81d9eaa009dd7f25dd972"},
-    {file = "pydantic_core-2.16.3-cp39-none-win32.whl", hash = "sha256:e7774b570e61cb998490c5235740d475413a1f6de823169b4cf94e2fe9e9f6b2"},
-    {file = "pydantic_core-2.16.3-cp39-none-win_amd64.whl", hash = "sha256:9091632a25b8b87b9a605ec0e61f241c456e9248bfdcf7abdf344fdb169c81cf"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:36fa178aacbc277bc6b62a2c3da95226520da4f4e9e206fdf076484363895d2c"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:dcca5d2bf65c6fb591fff92da03f94cd4f315972f97c21975398bd4bd046854a"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a72fb9963cba4cd5793854fd12f4cfee731e86df140f59ff52a49b3552db241"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b60cc1a081f80a2105a59385b92d82278b15d80ebb3adb200542ae165cd7d183"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cbcc558401de90a746d02ef330c528f2e668c83350f045833543cd57ecead1ad"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:fee427241c2d9fb7192b658190f9f5fd6dfe41e02f3c1489d2ec1e6a5ab1e04a"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f4cb85f693044e0f71f394ff76c98ddc1bc0953e48c061725e540396d5c8a2e1"},
-    {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b29eeb887aa931c2fcef5aa515d9d176d25006794610c264ddc114c053bf96fe"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a425479ee40ff021f8216c9d07a6a3b54b31c8267c6e17aa88b70d7ebd0e5e5b"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5c5cbc703168d1b7a838668998308018a2718c2130595e8e190220238addc96f"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99b6add4c0b39a513d323d3b93bc173dac663c27b99860dd5bf491b240d26137"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75f76ee558751746d6a38f89d60b6228fa174e5172d143886af0f85aa306fd89"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:00ee1c97b5364b84cb0bd82e9bbf645d5e2871fb8c58059d158412fee2d33d8a"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:287073c66748f624be4cef893ef9174e3eb88fe0b8a78dc22e88eca4bc357ca6"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ed25e1835c00a332cb10c683cd39da96a719ab1dfc08427d476bce41b92531fc"},
-    {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:86b3d0033580bd6bbe07590152007275bd7af95f98eaa5bd36f3da219dcd93da"},
-    {file = "pydantic_core-2.16.3.tar.gz", hash = "sha256:1cac689f80a3abab2d3c0048b29eea5751114054f032a941a32de4c852c59cad"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ee9cf33e7fe14243f5ca6977658eb7d1042caaa66847daacbd2117adb258b226"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6b7bbb97d82659ac8b37450c60ff2e9f97e4eb0f8a8a3645a5568b9334b08b50"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df4249b579e75094f7e9bb4bd28231acf55e308bf686b952f43100a5a0be394c"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d0491006a6ad20507aec2be72e7831a42efc93193d2402018007ff827dc62926"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2ae80f72bb7a3e397ab37b53a2b49c62cc5496412e71bc4f1277620a7ce3f52b"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:58aca931bef83217fca7a390e0486ae327c4af9c3e941adb75f8772f8eeb03a1"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1be91ad664fc9245404a789d60cba1e91c26b1454ba136d2a1bf0c2ac0c0505a"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:667880321e916a8920ef49f5d50e7983792cf59f3b6079f3c9dac2b88a311d17"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:f7054fdc556f5421f01e39cbb767d5ec5c1139ea98c3e5b350e02e62201740c7"},
+    {file = "pydantic_core-2.18.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:030e4f9516f9947f38179249778709a460a3adb516bf39b5eb9066fcfe43d0e6"},
+    {file = "pydantic_core-2.18.1-cp310-none-win32.whl", hash = "sha256:2e91711e36e229978d92642bfc3546333a9127ecebb3f2761372e096395fc649"},
+    {file = "pydantic_core-2.18.1-cp310-none-win_amd64.whl", hash = "sha256:9a29726f91c6cb390b3c2338f0df5cd3e216ad7a938762d11c994bb37552edb0"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:9ece8a49696669d483d206b4474c367852c44815fca23ac4e48b72b339807f80"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7a5d83efc109ceddb99abd2c1316298ced2adb4570410defe766851a804fcd5b"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5f7973c381283783cd1043a8c8f61ea5ce7a3a58b0369f0ee0ee975eaf2f2a1b"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:54c7375c62190a7845091f521add19b0f026bcf6ae674bdb89f296972272e86d"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd63cec4e26e790b70544ae5cc48d11b515b09e05fdd5eff12e3195f54b8a586"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:561cf62c8a3498406495cfc49eee086ed2bb186d08bcc65812b75fda42c38294"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68717c38a68e37af87c4da20e08f3e27d7e4212e99e96c3d875fbf3f4812abfc"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2d5728e93d28a3c63ee513d9ffbac9c5989de8c76e049dbcb5bfe4b923a9739d"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f0f17814c505f07806e22b28856c59ac80cee7dd0fbb152aed273e116378f519"},
+    {file = "pydantic_core-2.18.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d816f44a51ba5175394bc6c7879ca0bd2be560b2c9e9f3411ef3a4cbe644c2e9"},
+    {file = "pydantic_core-2.18.1-cp311-none-win32.whl", hash = "sha256:09f03dfc0ef8c22622eaa8608caa4a1e189cfb83ce847045eca34f690895eccb"},
+    {file = "pydantic_core-2.18.1-cp311-none-win_amd64.whl", hash = "sha256:27f1009dc292f3b7ca77feb3571c537276b9aad5dd4efb471ac88a8bd09024e9"},
+    {file = "pydantic_core-2.18.1-cp311-none-win_arm64.whl", hash = "sha256:48dd883db92e92519201f2b01cafa881e5f7125666141a49ffba8b9facc072b0"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:b6b0e4912030c6f28bcb72b9ebe4989d6dc2eebcd2a9cdc35fefc38052dd4fe8"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f3202a429fe825b699c57892d4371c74cc3456d8d71b7f35d6028c96dfecad31"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a3982b0a32d0a88b3907e4b0dc36809fda477f0757c59a505d4e9b455f384b8b"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25595ac311f20e5324d1941909b0d12933f1fd2171075fcff763e90f43e92a0d"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:14fe73881cf8e4cbdaded8ca0aa671635b597e42447fec7060d0868b52d074e6"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca976884ce34070799e4dfc6fbd68cb1d181db1eefe4a3a94798ddfb34b8867f"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:684d840d2c9ec5de9cb397fcb3f36d5ebb6fa0d94734f9886032dd796c1ead06"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:54764c083bbe0264f0f746cefcded6cb08fbbaaf1ad1d78fb8a4c30cff999a90"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:201713f2f462e5c015b343e86e68bd8a530a4f76609b33d8f0ec65d2b921712a"},
+    {file = "pydantic_core-2.18.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:fd1a9edb9dd9d79fbeac1ea1f9a8dd527a6113b18d2e9bcc0d541d308dae639b"},
+    {file = "pydantic_core-2.18.1-cp312-none-win32.whl", hash = "sha256:d5e6b7155b8197b329dc787356cfd2684c9d6a6b1a197f6bbf45f5555a98d411"},
+    {file = "pydantic_core-2.18.1-cp312-none-win_amd64.whl", hash = "sha256:9376d83d686ec62e8b19c0ac3bf8d28d8a5981d0df290196fb6ef24d8a26f0d6"},
+    {file = "pydantic_core-2.18.1-cp312-none-win_arm64.whl", hash = "sha256:c562b49c96906b4029b5685075fe1ebd3b5cc2601dfa0b9e16c2c09d6cbce048"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:3e352f0191d99fe617371096845070dee295444979efb8f27ad941227de6ad09"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0295d52b012cbe0d3059b1dba99159c3be55e632aae1999ab74ae2bd86a33d7"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56823a92075780582d1ffd4489a2e61d56fd3ebb4b40b713d63f96dd92d28144"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:dd3f79e17b56741b5177bcc36307750d50ea0698df6aa82f69c7db32d968c1c2"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:38a5024de321d672a132b1834a66eeb7931959c59964b777e8f32dbe9523f6b1"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2ce426ee691319d4767748c8e0895cfc56593d725594e415f274059bcf3cb76"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2adaeea59849ec0939af5c5d476935f2bab4b7f0335b0110f0f069a41024278e"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9b6431559676a1079eac0f52d6d0721fb8e3c5ba43c37bc537c8c83724031feb"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:85233abb44bc18d16e72dc05bf13848a36f363f83757541f1a97db2f8d58cfd9"},
+    {file = "pydantic_core-2.18.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:641a018af4fe48be57a2b3d7a1f0f5dbca07c1d00951d3d7463f0ac9dac66622"},
+    {file = "pydantic_core-2.18.1-cp38-none-win32.whl", hash = "sha256:63d7523cd95d2fde0d28dc42968ac731b5bb1e516cc56b93a50ab293f4daeaad"},
+    {file = "pydantic_core-2.18.1-cp38-none-win_amd64.whl", hash = "sha256:907a4d7720abfcb1c81619863efd47c8a85d26a257a2dbebdb87c3b847df0278"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:aad17e462f42ddbef5984d70c40bfc4146c322a2da79715932cd8976317054de"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:94b9769ba435b598b547c762184bcfc4783d0d4c7771b04a3b45775c3589ca44"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80e0e57cc704a52fb1b48f16d5b2c8818da087dbee6f98d9bf19546930dc64b5"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:76b86e24039c35280ceee6dce7e62945eb93a5175d43689ba98360ab31eebc4a"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12a05db5013ec0ca4a32cc6433f53faa2a014ec364031408540ba858c2172bb0"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:250ae39445cb5475e483a36b1061af1bc233de3e9ad0f4f76a71b66231b07f88"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a32204489259786a923e02990249c65b0f17235073149d0033efcebe80095570"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6395a4435fa26519fd96fdccb77e9d00ddae9dd6c742309bd0b5610609ad7fb2"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2533ad2883f001efa72f3d0e733fb846710c3af6dcdd544fe5bf14fa5fe2d7db"},
+    {file = "pydantic_core-2.18.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b560b72ed4816aee52783c66854d96157fd8175631f01ef58e894cc57c84f0f6"},
+    {file = "pydantic_core-2.18.1-cp39-none-win32.whl", hash = "sha256:582cf2cead97c9e382a7f4d3b744cf0ef1a6e815e44d3aa81af3ad98762f5a9b"},
+    {file = "pydantic_core-2.18.1-cp39-none-win_amd64.whl", hash = "sha256:ca71d501629d1fa50ea7fa3b08ba884fe10cefc559f5c6c8dfe9036c16e8ae89"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e178e5b66a06ec5bf51668ec0d4ac8cfb2bdcb553b2c207d58148340efd00143"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:72722ce529a76a4637a60be18bd789d8fb871e84472490ed7ddff62d5fed620d"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2fe0c1ce5b129455e43f941f7a46f61f3d3861e571f2905d55cdbb8b5c6f5e2c"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d4284c621f06a72ce2cb55f74ea3150113d926a6eb78ab38340c08f770eb9b4d"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a0c3e718f4e064efde68092d9d974e39572c14e56726ecfaeebbe6544521f47"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2027493cc44c23b598cfaf200936110433d9caa84e2c6cf487a83999638a96ac"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:76909849d1a6bffa5a07742294f3fa1d357dc917cb1fe7b470afbc3a7579d539"},
+    {file = "pydantic_core-2.18.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ee7ccc7fb7e921d767f853b47814c3048c7de536663e82fbc37f5eb0d532224b"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ee2794111c188548a4547eccc73a6a8527fe2af6cf25e1a4ebda2fd01cdd2e60"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:a139fe9f298dc097349fb4f28c8b81cc7a202dbfba66af0e14be5cfca4ef7ce5"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d074b07a10c391fc5bbdcb37b2f16f20fcd9e51e10d01652ab298c0d07908ee2"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c69567ddbac186e8c0aadc1f324a60a564cfe25e43ef2ce81bcc4b8c3abffbae"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:baf1c7b78cddb5af00971ad5294a4583188bda1495b13760d9f03c9483bb6203"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:2684a94fdfd1b146ff10689c6e4e815f6a01141781c493b97342cdc5b06f4d5d"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:73c1bc8a86a5c9e8721a088df234265317692d0b5cd9e86e975ce3bc3db62a59"},
+    {file = "pydantic_core-2.18.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:e60defc3c15defb70bb38dd605ff7e0fae5f6c9c7cbfe0ad7868582cb7e844a6"},
+    {file = "pydantic_core-2.18.1.tar.gz", hash = "sha256:de9d3e8717560eb05e28739d1b35e4eac2e458553a52a301e51352a7ffc86a35"},
 ]
 
 [package.dependencies]
@@ -3506,7 +3508,6 @@ files = [
     {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"},
     {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"},
     {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"},
-    {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"},
     {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"},
     {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"},
     {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"},
@@ -3795,6 +3796,23 @@ urllib3 = ">=1.21.1,<3"
 socks = ["PySocks (>=1.5.6,!=1.5.7)"]
 use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"]
 
+[[package]]
+name = "requests-mock"
+version = "1.12.1"
+description = "Mock out responses from the requests package"
+optional = false
+python-versions = ">=3.5"
+files = [
+    {file = "requests-mock-1.12.1.tar.gz", hash = "sha256:e9e12e333b525156e82a3c852f22016b9158220d2f47454de9cae8a77d371401"},
+    {file = "requests_mock-1.12.1-py2.py3-none-any.whl", hash = "sha256:b1e37054004cdd5e56c84454cc7df12b25f90f382159087f4b6915aaeef39563"},
+]
+
+[package.dependencies]
+requests = ">=2.22,<3"
+
+[package.extras]
+fixture = ["fixtures"]
+
 [[package]]
 name = "rsa"
 version = "4.9"
@@ -3969,18 +3987,18 @@ torch = ["safetensors[numpy]", "torch (>=1.10)"]
 
 [[package]]
 name = "setuptools"
-version = "69.2.0"
+version = "69.5.1"
 description = "Easily download, build, install, upgrade, and uninstall Python packages"
 optional = true
 python-versions = ">=3.8"
 files = [
-    {file = "setuptools-69.2.0-py3-none-any.whl", hash = "sha256:c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"},
-    {file = "setuptools-69.2.0.tar.gz", hash = "sha256:0ff4183f8f42cd8fa3acea16c45205521a4ef28f73c6391d8a25e92893134f2e"},
+    {file = "setuptools-69.5.1-py3-none-any.whl", hash = "sha256:c636ac361bc47580504644275c9ad802c50415c7522212252c033bd15f301f32"},
+    {file = "setuptools-69.5.1.tar.gz", hash = "sha256:6c1fccdac05a97e598fb0ae3bbed5904ccb317337a51139dcd51453611bbb987"},
 ]
 
 [package.extras]
-docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"]
-testing = ["build[virtualenv]", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"]
+docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"]
+testing = ["build[virtualenv]", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6,!=8.1.1)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"]
 testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"]
 
 [[package]]
@@ -4442,13 +4460,13 @@ test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0,
 
 [[package]]
 name = "transformers"
-version = "4.39.2"
+version = "4.39.3"
 description = "State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow"
 optional = true
 python-versions = ">=3.8.0"
 files = [
-    {file = "transformers-4.39.2-py3-none-any.whl", hash = "sha256:8388a4ae1d91ade935f5c5b36dc47aa1a352b092c30595e3337b49a5f7e71b4e"},
-    {file = "transformers-4.39.2.tar.gz", hash = "sha256:be0c7392cb92ab48efab2656f1cfd1cbda33b2b8a2917a18bd1196707dbebe14"},
+    {file = "transformers-4.39.3-py3-none-any.whl", hash = "sha256:7838034a12cca3168247f9d2d1dba6724c9de3ae0f73a108258c6b8fc5912601"},
+    {file = "transformers-4.39.3.tar.gz", hash = "sha256:2586e5ff4150f122716fc40f5530e92871befc051848fbe82600969c535b762d"},
 ]
 
 [package.dependencies]
@@ -4544,13 +4562,13 @@ files = [
 
 [[package]]
 name = "types-requests"
-version = "2.31.0.20240402"
+version = "2.31.0.20240406"
 description = "Typing stubs for requests"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "types-requests-2.31.0.20240402.tar.gz", hash = "sha256:e5c09a202f8ae79cd6ffbbba2203b6c3775a83126283bb2a6abbc129abc02a12"},
-    {file = "types_requests-2.31.0.20240402-py3-none-any.whl", hash = "sha256:bd7eb7102168d4b5b489f15cdd9842b63ab7fe56aa82a0589fa595b94195acf4"},
+    {file = "types-requests-2.31.0.20240406.tar.gz", hash = "sha256:4428df33c5503945c74b3f42e82b181e86ec7b724620419a2966e2de604ce1a1"},
+    {file = "types_requests-2.31.0.20240406-py3-none-any.whl", hash = "sha256:6216cdac377c6b9a040ac1c0404f7284bd13199c0e1bb235f4324627e8898cf5"},
 ]
 
 [package.dependencies]
@@ -4558,13 +4576,13 @@ urllib3 = ">=2"
 
 [[package]]
 name = "typing-extensions"
-version = "4.10.0"
+version = "4.11.0"
 description = "Backported and Experimental Type Hints for Python 3.8+"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "typing_extensions-4.10.0-py3-none-any.whl", hash = "sha256:69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"},
-    {file = "typing_extensions-4.10.0.tar.gz", hash = "sha256:b0abd7c89e8fb96f98db18d86106ff1d90ab692004eb746cf6eda2682f91b3cb"},
+    {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"},
+    {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"},
 ]
 
 [[package]]
@@ -4751,4 +4769,4 @@ vision = ["pillow", "torch", "torchvision", "transformers"]
 [metadata]
 lock-version = "2.0"
 python-versions = ">=3.9,<3.13"
-content-hash = "5e662aecf752131b9985184767c251e864a51add59d3dd267c8f70d14cbefcae"
+content-hash = "9f308d2dd1c067185f9d84721b25d81e7d1e72a239059863bad1f4439a7a26cc"
diff --git a/pyproject.toml b/pyproject.toml
index b0ec4253ef1f428a2a5e314c51c275c110978c8a..2c64a23a119d90baf7b8117aa57e0d8e9b0da9e1 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -37,6 +37,7 @@ tiktoken = "^0.6.0"
 matplotlib = { version = "^3.8.3", optional = true}
 qdrant-client = {version = "^1.8.0", optional = true}
 google-cloud-aiplatform = {version = "^1.45.0", optional = true}
+requests-mock = "^1.12.1"
 
 [tool.poetry.extras]
 hybrid = ["pinecone-text"]
diff --git a/semantic_router/encoders/__init__.py b/semantic_router/encoders/__init__.py
index b53e5be2f78b2f7246488fdb9427c9142e5e00e9..a79fa60595315943591ad5ec4eb2a34e39a8c50c 100644
--- a/semantic_router/encoders/__init__.py
+++ b/semantic_router/encoders/__init__.py
@@ -5,6 +5,7 @@ from semantic_router.encoders.cohere import CohereEncoder
 from semantic_router.encoders.fastembed import FastEmbedEncoder
 from semantic_router.encoders.google import GoogleEncoder
 from semantic_router.encoders.huggingface import HuggingFaceEncoder
+from semantic_router.encoders.huggingface import HFEndpointEncoder
 from semantic_router.encoders.mistral import MistralEncoder
 from semantic_router.encoders.openai import OpenAIEncoder
 from semantic_router.encoders.tfidf import TfidfEncoder
@@ -20,6 +21,7 @@ __all__ = [
     "TfidfEncoder",
     "FastEmbedEncoder",
     "HuggingFaceEncoder",
+    "HFEndpointEncoder",
     "MistralEncoder",
     "VitEncoder",
     "CLIPEncoder",
diff --git a/semantic_router/encoders/huggingface.py b/semantic_router/encoders/huggingface.py
index 64b183ff13506d3f21abff147a487c581edbc88f..24bd5cd044c09bd8c2de2c5836ad8d79fc6204f8 100644
--- a/semantic_router/encoders/huggingface.py
+++ b/semantic_router/encoders/huggingface.py
@@ -1,8 +1,34 @@
+"""
+This module provides the HFEndpointEncoder class to embeddings models using Huggingface's endpoint.
+
+The HFEndpointEncoder class is a subclass of BaseEncoder and utilizes a specified Huggingface 
+endpoint to generate embeddings for given documents. It requires the URL of the Huggingface 
+API endpoint and an API key for authentication. The class supports customization of the score 
+threshold for filtering or processing the embeddings.
+
+Example usage:
+
+    from semantic_router.encoders.hfendpointencoder import HFEndpointEncoder
+
+    encoder = HFEndpointEncoder(
+        huggingface_url="https://api-inference.huggingface.co/models/BAAI/bge-large-en-v1.5",
+        huggingface_api_key="your-hugging-face-api-key"
+    )
+    embeddings = encoder(["document1", "document2"])
+
+Classes:
+    HFEndpointEncoder: A class for generating embeddings using a Huggingface endpoint.
+"""
+
+import requests
+import time
+import os
 from typing import Any, List, Optional
 
 from pydantic.v1 import PrivateAttr
 
 from semantic_router.encoders import BaseEncoder
+from semantic_router.utils.logger import logger
 
 
 class HuggingFaceEncoder(BaseEncoder):
@@ -112,3 +138,138 @@ class HuggingFaceEncoder(BaseEncoder):
         )
         token_embeddings[input_mask_expanded == 0] = -1e9
         return self._torch.max(token_embeddings, 1)[0]
+
+
+class HFEndpointEncoder(BaseEncoder):
+    """
+    A class to encode documents using a Hugging Face transformer model endpoint.
+
+    Attributes:
+        huggingface_url (str): The URL of the Hugging Face API endpoint.
+        huggingface_api_key (str): The API key for authenticating with the Hugging Face API.
+        score_threshold (float): A threshold value used for filtering or processing the embeddings.
+    """
+
+    name: str = "hugging_face_custom_endpoint"
+    huggingface_url: Optional[str] = None
+    huggingface_api_key: Optional[str] = None
+    score_threshold: float = 0.8
+
+    def __init__(
+        self,
+        name: Optional[str] = "hugging_face_custom_endpoint",
+        huggingface_url: Optional[str] = None,
+        huggingface_api_key: Optional[str] = None,
+        score_threshold: float = 0.8,
+    ):
+        """
+        Initializes the HFEndpointEncoder with the specified parameters.
+
+        Args:
+            name (str, optional): The name of the encoder. Defaults to
+                "hugging_face_custom_endpoint".
+            huggingface_url (str, optional): The URL of the Hugging Face API endpoint.
+                Cannot be None.
+            huggingface_api_key (str, optional): The API key for the Hugging Face API.
+                Cannot be None.
+            score_threshold (float, optional): A threshold for processing the embeddings.
+                Defaults to 0.8.
+
+        Raises:
+            ValueError: If either `huggingface_url` or `huggingface_api_key` is None.
+        """
+        huggingface_url = huggingface_url or os.getenv("HF_API_URL")
+        huggingface_api_key = huggingface_api_key or os.getenv("HF_API_KEY")
+
+        super().__init__(name=name, score_threshold=score_threshold)  # type: ignore
+
+        if huggingface_url is None:
+            raise ValueError("HuggingFace endpoint url cannot be 'None'.")
+        if huggingface_api_key is None:
+            raise ValueError("HuggingFace API key cannot be 'None'.")
+
+        self.huggingface_url = huggingface_url or os.getenv("HF_API_URL")
+        self.huggingface_api_key = huggingface_api_key or os.getenv("HF_API_KEY")
+
+        try:
+            self.query({"inputs": "Hello World!", "parameters": {}})
+        except Exception as e:
+            raise ValueError(
+                f"HuggingFace endpoint client failed to initialize. Error: {e}"
+            ) from e
+
+    def __call__(self, docs: List[str]) -> List[List[float]]:
+        """
+        Encodes a list of documents into embeddings using the Hugging Face API.
+
+        Args:
+            docs (List[str]): A list of documents to encode.
+
+        Returns:
+            List[List[float]]: A list of embeddings for the given documents.
+
+        Raises:
+            ValueError: If no embeddings are returned for a document.
+        """
+        embeddings = []
+        for d in docs:
+            try:
+                output = self.query({"inputs": d, "parameters": {}})
+                if not output or len(output) == 0:
+                    raise ValueError("No embeddings returned from the query.")
+                embeddings.append(output)
+
+            except Exception as e:
+                raise ValueError(
+                    f"No embeddings returned for document. Error: {e}"
+                ) from e
+        return embeddings
+
+    def query(self, payload, max_retries=3, retry_interval=5):
+        """
+        Sends a query to the Hugging Face API and returns the response.
+
+        Args:
+            payload (dict): The payload to send in the request.
+
+        Returns:
+            dict: The response from the Hugging Face API.
+
+        Raises:
+            ValueError: If the query fails or the response status is not 200.
+        """
+        headers = {
+            "Accept": "application/json",
+            "Authorization": f"Bearer {self.huggingface_api_key}",
+            "Content-Type": "application/json",
+        }
+        for attempt in range(1, max_retries + 1):
+            try:
+                response = requests.post(
+                    self.huggingface_url,
+                    headers=headers,
+                    json=payload,
+                    # timeout=timeout_seconds,
+                )
+                if response.status_code == 503:
+                    estimated_time = response.json().get("estimated_time", "")
+                    if estimated_time:
+                        logger.info(
+                            f"Model Initializing wait for - {estimated_time:.2f}s "
+                        )
+                        time.sleep(estimated_time)
+                        continue
+                else:
+                    response.raise_for_status()
+
+            except requests.exceptions.RequestException:
+                if attempt < max_retries - 1:
+                    logger.info(f"Retrying attempt: {attempt} for payload: {payload} ")
+                    time.sleep(retry_interval)
+                    retry_interval += attempt
+                else:
+                    raise ValueError(
+                        f"Query failed with status {response.status_code}: {response.text}"
+                    )
+
+        return response.json()
diff --git a/semantic_router/layer.py b/semantic_router/layer.py
index 58f7876f359ddad52e6c986bf7eb10f27f0d5852..21c0da2766cd265a632d0e92e370c2a46a509bbd 100644
--- a/semantic_router/layer.py
+++ b/semantic_router/layer.py
@@ -5,7 +5,7 @@ import random
 from typing import Any, Dict, List, Optional, Tuple, Union
 
 import numpy as np
-import yaml
+import yaml  # type: ignore
 from tqdm.auto import tqdm
 
 from semantic_router.encoders import BaseEncoder, OpenAIEncoder
@@ -328,7 +328,7 @@ class RouteLayer:
     def add(self, route: Route):
         logger.info(f"Adding `{route.name}` route")
         # create embeddings
-        embeds = self.encoder(route.utterances)  # type:ignore
+        embeds = self.encoder(route.utterances)  # type: ignore
         # if route has no score_threshold, use default
         if route.score_threshold is None:
             route.score_threshold = self.score_threshold
@@ -337,7 +337,7 @@ class RouteLayer:
         self.index.add(
             embeddings=embeds,
             routes=[route.name] * len(route.utterances),
-            utterances=route.utterances,  # type:ignore
+            utterances=route.utterances,  # type: ignore
         )
         self.routes.append(route)
 
@@ -383,14 +383,14 @@ class RouteLayer:
         all_utterances = [
             utterance for route in routes for utterance in route.utterances
         ]
-        embedded_utterances = self.encoder(all_utterances)  # type:ignore
+        embedded_utterances = self.encoder(all_utterances)  # type: ignore
         # create route array
         route_names = [route.name for route in routes for _ in route.utterances]
         # add everything to the index
         self.index.add(
             embeddings=embedded_utterances,
             routes=route_names,
-            utterances=all_utterances,  # type:ignore
+            utterances=all_utterances,  # type: ignore
         )
 
     def _encode(self, text: str) -> Any:
diff --git a/tests/unit/encoders/test_hfendpointencoder.py b/tests/unit/encoders/test_hfendpointencoder.py
new file mode 100644
index 0000000000000000000000000000000000000000..cb8dd16a661c4194a76935d51390ed4f5b3d3fcc
--- /dev/null
+++ b/tests/unit/encoders/test_hfendpointencoder.py
@@ -0,0 +1,68 @@
+import pytest
+from semantic_router.encoders.huggingface import HFEndpointEncoder
+
+
+@pytest.fixture
+def encoder(requests_mock):
+    # Mock the HTTP request made during HFEndpointEncoder initialization
+    requests_mock.post(
+        "https://api-inference.huggingface.co/models/bert-base-uncased",
+        json=[0.1, 0.2, 0.3],
+        status_code=200,
+    )
+    # Now, when HFEndpointEncoder is initialized, it will use the mocked response above
+    return HFEndpointEncoder(
+        huggingface_url="https://api-inference.huggingface.co/models/bert-base-uncased",
+        huggingface_api_key="test-api-key",
+        score_threshold=0.8,
+    )
+
+
+class TestHFEndpointEncoder:
+    def test_initialization(self, encoder):
+        assert (
+            encoder.huggingface_url
+            == "https://api-inference.huggingface.co/models/bert-base-uncased"
+        )
+        assert encoder.huggingface_api_key == "test-api-key"
+        assert encoder.score_threshold == 0.8
+
+    def test_initialization_failure_no_api_key(self):
+        with pytest.raises(ValueError) as exc_info:
+            HFEndpointEncoder(
+                huggingface_url="https://api-inference.huggingface.co/models/bert-base-uncased"
+            )
+        assert "HuggingFace API key cannot be 'None'" in str(exc_info.value)
+
+    def test_initialization_failure_no_url(self):
+        with pytest.raises(ValueError) as exc_info:
+            HFEndpointEncoder(huggingface_api_key="test-api-key")
+        assert "HuggingFace endpoint url cannot be 'None'" in str(exc_info.value)
+
+    def test_query_success(self, encoder, requests_mock):
+        requests_mock.post(
+            "https://api-inference.huggingface.co/models/bert-base-uncased",
+            json=[0.1, 0.2, 0.3],
+            status_code=200,
+        )
+        response = encoder.query({"inputs": "Hello World!", "parameters": {}})
+        assert response == [0.1, 0.2, 0.3]
+
+    def test_query_failure(self, encoder, requests_mock):
+        requests_mock.post(
+            "https://api-inference.huggingface.co/models/bert-base-uncased",
+            text="Error",
+            status_code=400,
+        )
+        with pytest.raises(ValueError) as exc_info:
+            encoder.query({"inputs": "Hello World!", "parameters": {}})
+        assert "Query failed with status 400: Error" in str(exc_info.value)
+
+    def test_encode_documents_success(self, encoder, requests_mock):
+        requests_mock.post(
+            "https://api-inference.huggingface.co/models/bert-base-uncased",
+            json=[0.1, 0.2, 0.3],
+            status_code=200,
+        )
+        embeddings = encoder(["Hello World!"])
+        assert embeddings == [[0.1, 0.2, 0.3]]