diff --git "a/car_assistant.ipynb" "b/car_assistant.ipynb"
--- "a/car_assistant.ipynb"
+++ "b/car_assistant.ipynb"
@@ -10,1049 +10,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 2,
+   "execution_count": null,
    "metadata": {
     "collapsed": true,
     "id": "rd5vZMt_2wrC"
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting accelerate\n",
-      "  Obtaining dependency information for accelerate from https://files.pythonhosted.org/packages/1b/da/24a54b9205fce3bdbaad521c35944d0b0a2d292ac5ae921e484b76312b43/accelerate-0.27.2-py3-none-any.whl.metadata\n",
-      "  Downloading accelerate-0.27.2-py3-none-any.whl.metadata (18 kB)\n",
-      "Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from accelerate) (1.22.2)\n",
-      "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (23.1)\n",
-      "Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from accelerate) (5.9.4)\n",
-      "Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from accelerate) (6.0.1)\n",
-      "Requirement already satisfied: torch>=1.10.0 in /usr/local/lib/python3.10/dist-packages (from accelerate) (2.1.0a0+32f93b1)\n",
-      "Collecting huggingface-hub (from accelerate)\n",
-      "  Obtaining dependency information for huggingface-hub from https://files.pythonhosted.org/packages/28/03/7d3c7153113ec59cfb31e3b8ee773f5f420a0dd7d26d40442542b96675c3/huggingface_hub-0.20.3-py3-none-any.whl.metadata\n",
-      "  Downloading huggingface_hub-0.20.3-py3-none-any.whl.metadata (12 kB)\n",
-      "Collecting safetensors>=0.3.1 (from accelerate)\n",
-      "  Obtaining dependency information for safetensors>=0.3.1 from https://files.pythonhosted.org/packages/d0/ba/b2254fafc7f5fdc98a2fa4d5a5eeb029fbf9589ec87f2c230c3ac0a1dd53/safetensors-0.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading safetensors-0.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.8 kB)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (3.12.4)\n",
-      "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (4.7.1)\n",
-      "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (1.12)\n",
-      "Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (2.6.3)\n",
-      "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (3.1.2)\n",
-      "Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch>=1.10.0->accelerate) (2023.6.0)\n",
-      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub->accelerate) (2.31.0)\n",
-      "Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub->accelerate) (4.66.1)\n",
-      "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.10.0->accelerate) (2.1.3)\n",
-      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub->accelerate) (3.2.0)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub->accelerate) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub->accelerate) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub->accelerate) (2023.7.22)\n",
-      "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.10.0->accelerate) (1.3.0)\n",
-      "Downloading accelerate-0.27.2-py3-none-any.whl (279 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m280.0/280.0 kB\u001b[0m \u001b[31m12.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading safetensors-0.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m20.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading huggingface_hub-0.20.3-py3-none-any.whl (330 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m330.1/330.1 kB\u001b[0m \u001b[31m36.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hInstalling collected packages: safetensors, huggingface-hub, accelerate\n",
-      "Successfully installed accelerate-0.27.2 huggingface-hub-0.20.3 safetensors-0.4.2\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting bitsandbytes\n",
-      "  Obtaining dependency information for bitsandbytes from https://files.pythonhosted.org/packages/9b/63/489ef9cd7a33c1f08f1b2be51d1b511883c5e34591aaa9873b30021cd679/bitsandbytes-0.42.0-py3-none-any.whl.metadata\n",
-      "  Downloading bitsandbytes-0.42.0-py3-none-any.whl.metadata (9.9 kB)\n",
-      "Requirement already satisfied: scipy in /usr/local/lib/python3.10/dist-packages (from bitsandbytes) (1.11.1)\n",
-      "Requirement already satisfied: numpy<1.28.0,>=1.21.6 in /usr/local/lib/python3.10/dist-packages (from scipy->bitsandbytes) (1.22.2)\n",
-      "Downloading bitsandbytes-0.42.0-py3-none-any.whl (105.0 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m105.0/105.0 MB\u001b[0m \u001b[31m79.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hInstalling collected packages: bitsandbytes\n",
-      "Successfully installed bitsandbytes-0.42.0\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting optimum\n",
-      "  Obtaining dependency information for optimum from https://files.pythonhosted.org/packages/cc/a8/9b311809c51d5c9bc5a495edc6c8873c92db69cfecf69d4ec3c845e9804f/optimum-1.16.2-py3-none-any.whl.metadata\n",
-      "  Downloading optimum-1.16.2-py3-none-any.whl.metadata (17 kB)\n",
-      "Collecting coloredlogs (from optimum)\n",
-      "  Downloading coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m46.0/46.0 kB\u001b[0m \u001b[31m7.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from optimum) (1.12)\n",
-      "Collecting transformers[sentencepiece]>=4.26.0 (from optimum)\n",
-      "  Obtaining dependency information for transformers[sentencepiece]>=4.26.0 from https://files.pythonhosted.org/packages/85/f6/c5065913119c41ecad148c34e3a861f719e16b89a522287213698da911fc/transformers-4.37.2-py3-none-any.whl.metadata\n",
-      "  Downloading transformers-4.37.2-py3-none-any.whl.metadata (129 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m129.4/129.4 kB\u001b[0m \u001b[31m20.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: torch>=1.11 in /usr/local/lib/python3.10/dist-packages (from optimum) (2.1.0a0+32f93b1)\n",
-      "Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from optimum) (23.1)\n",
-      "Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from optimum) (1.22.2)\n",
-      "Requirement already satisfied: huggingface-hub>=0.8.0 in /usr/local/lib/python3.10/dist-packages (from optimum) (0.20.3)\n",
-      "Collecting datasets (from optimum)\n",
-      "  Obtaining dependency information for datasets from https://files.pythonhosted.org/packages/74/4d/63b033169534f0742b7fe13957118cae08c83b04bfde46511f397872e2e7/datasets-2.17.0-py3-none-any.whl.metadata\n",
-      "  Downloading datasets-2.17.0-py3-none-any.whl.metadata (20 kB)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.8.0->optimum) (3.12.4)\n",
-      "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.8.0->optimum) (2023.6.0)\n",
-      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.8.0->optimum) (2.31.0)\n",
-      "Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.8.0->optimum) (4.66.1)\n",
-      "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.8.0->optimum) (6.0.1)\n",
-      "Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.8.0->optimum) (4.7.1)\n",
-      "Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.11->optimum) (2.6.3)\n",
-      "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.11->optimum) (3.1.2)\n",
-      "Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers[sentencepiece]>=4.26.0->optimum) (2023.10.3)\n",
-      "Collecting tokenizers<0.19,>=0.14 (from transformers[sentencepiece]>=4.26.0->optimum)\n",
-      "  Obtaining dependency information for tokenizers<0.19,>=0.14 from https://files.pythonhosted.org/packages/1c/5d/cf5e122ce4f1a29f165b2a69dc33d1ff30bce303343d58a54775ddba5d51/tokenizers-0.15.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading tokenizers-0.15.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n",
-      "Requirement already satisfied: safetensors>=0.4.1 in /usr/local/lib/python3.10/dist-packages (from transformers[sentencepiece]>=4.26.0->optimum) (0.4.2)\n",
-      "Collecting sentencepiece!=0.1.92,>=0.1.91 (from transformers[sentencepiece]>=4.26.0->optimum)\n",
-      "  Obtaining dependency information for sentencepiece!=0.1.92,>=0.1.91 from https://files.pythonhosted.org/packages/7f/e5/323dc813b3e1339305f888d035e2f3725084fc4dcf051995b366dd26cc90/sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.7 kB)\n",
-      "Requirement already satisfied: protobuf in /usr/local/lib/python3.10/dist-packages (from transformers[sentencepiece]>=4.26.0->optimum) (4.24.4)\n",
-      "Collecting humanfriendly>=9.1 (from coloredlogs->optimum)\n",
-      "  Downloading humanfriendly-10.0-py2.py3-none-any.whl (86 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m86.8/86.8 kB\u001b[0m \u001b[31m51.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting pyarrow>=12.0.0 (from datasets->optimum)\n",
-      "  Obtaining dependency information for pyarrow>=12.0.0 from https://files.pythonhosted.org/packages/d4/ca/ef67abb77f9dd51a0d3ff7fcebff58296068a046d7da352b9548070005ed/pyarrow-15.0.0-cp310-cp310-manylinux_2_28_x86_64.whl.metadata\n",
-      "  Downloading pyarrow-15.0.0-cp310-cp310-manylinux_2_28_x86_64.whl.metadata (3.0 kB)\n",
-      "Collecting pyarrow-hotfix (from datasets->optimum)\n",
-      "  Obtaining dependency information for pyarrow-hotfix from https://files.pythonhosted.org/packages/e4/f4/9ec2222f5f5f8ea04f66f184caafd991a39c8782e31f5b0266f101cb68ca/pyarrow_hotfix-0.6-py3-none-any.whl.metadata\n",
-      "  Downloading pyarrow_hotfix-0.6-py3-none-any.whl.metadata (3.6 kB)\n",
-      "Collecting dill<0.3.9,>=0.3.0 (from datasets->optimum)\n",
-      "  Obtaining dependency information for dill<0.3.9,>=0.3.0 from https://files.pythonhosted.org/packages/c9/7a/cef76fd8438a42f96db64ddaa85280485a9c395e7df3db8158cfec1eee34/dill-0.3.8-py3-none-any.whl.metadata\n",
-      "  Downloading dill-0.3.8-py3-none-any.whl.metadata (10 kB)\n",
-      "Requirement already satisfied: pandas in /usr/local/lib/python3.10/dist-packages (from datasets->optimum) (1.5.3)\n",
-      "Collecting xxhash (from datasets->optimum)\n",
-      "  Obtaining dependency information for xxhash from https://files.pythonhosted.org/packages/80/8a/1dd41557883b6196f8f092011a5c1f72d4d44cf36d7b67d4a5efe3127949/xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)\n",
-      "Collecting multiprocess (from datasets->optimum)\n",
-      "  Obtaining dependency information for multiprocess from https://files.pythonhosted.org/packages/bc/f7/7ec7fddc92e50714ea3745631f79bd9c96424cb2702632521028e57d3a36/multiprocess-0.70.16-py310-none-any.whl.metadata\n",
-      "  Downloading multiprocess-0.70.16-py310-none-any.whl.metadata (7.2 kB)\n",
-      "Requirement already satisfied: aiohttp in /usr/local/lib/python3.10/dist-packages (from datasets->optimum) (3.8.5)\n",
-      "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->optimum) (1.3.0)\n",
-      "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (23.1.0)\n",
-      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (3.2.0)\n",
-      "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (6.0.4)\n",
-      "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (4.0.3)\n",
-      "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (1.9.2)\n",
-      "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (1.4.0)\n",
-      "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->optimum) (1.3.1)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.8.0->optimum) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.8.0->optimum) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.8.0->optimum) (2023.7.22)\n",
-      "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.11->optimum) (2.1.3)\n",
-      "Requirement already satisfied: python-dateutil>=2.8.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets->optimum) (2.8.2)\n",
-      "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets->optimum) (2023.3)\n",
-      "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.1->pandas->datasets->optimum) (1.16.0)\n",
-      "Downloading optimum-1.16.2-py3-none-any.whl (402 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m402.5/402.5 kB\u001b[0m \u001b[31m16.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading datasets-2.17.0-py3-none-any.whl (536 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m536.6/536.6 kB\u001b[0m \u001b[31m19.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading dill-0.3.8-py3-none-any.whl (116 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m116.3/116.3 kB\u001b[0m \u001b[31m20.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading pyarrow-15.0.0-cp310-cp310-manylinux_2_28_x86_64.whl (38.3 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m38.3/38.3 MB\u001b[0m \u001b[31m63.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.3/1.3 MB\u001b[0m \u001b[31m71.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading tokenizers-0.15.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.6/3.6 MB\u001b[0m \u001b[31m70.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading multiprocess-0.70.16-py310-none-any.whl (134 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m134.8/134.8 kB\u001b[0m \u001b[31m429.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading pyarrow_hotfix-0.6-py3-none-any.whl (7.9 kB)\n",
-      "Downloading transformers-4.37.2-py3-none-any.whl (8.4 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m8.4/8.4 MB\u001b[0m \u001b[31m69.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m194.1/194.1 kB\u001b[0m \u001b[31m496.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hInstalling collected packages: sentencepiece, xxhash, pyarrow-hotfix, pyarrow, humanfriendly, dill, multiprocess, coloredlogs, tokenizers, transformers, datasets, optimum\n",
-      "  Attempting uninstall: pyarrow\n",
-      "    Found existing installation: pyarrow 11.0.0\n",
-      "    Uninstalling pyarrow-11.0.0:\n",
-      "      Successfully uninstalled pyarrow-11.0.0\n",
-      "Successfully installed coloredlogs-15.0.1 datasets-2.17.0 dill-0.3.8 humanfriendly-10.0 multiprocess-0.70.16 optimum-1.16.2 pyarrow-15.0.0 pyarrow-hotfix-0.6 sentencepiece-0.1.99 tokenizers-0.15.2 transformers-4.37.2 xxhash-3.4.1\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting auto-gptq\n",
-      "  Obtaining dependency information for auto-gptq from https://files.pythonhosted.org/packages/09/b2/c964b7f286ce5f782c1be0b46700091daa60a121b41e06d9a59047b45e57/auto_gptq-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading auto_gptq-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (20 kB)\n",
-      "Requirement already satisfied: accelerate>=0.22.0 in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (0.27.2)\n",
-      "Requirement already satisfied: datasets in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (2.17.0)\n",
-      "Requirement already satisfied: sentencepiece in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (0.1.99)\n",
-      "Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (1.22.2)\n",
-      "Collecting rouge (from auto-gptq)\n",
-      "  Downloading rouge-1.0.1-py3-none-any.whl (13 kB)\n",
-      "Collecting gekko (from auto-gptq)\n",
-      "  Downloading gekko-1.0.6-py3-none-any.whl (12.2 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m12.2/12.2 MB\u001b[0m \u001b[31m84.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: torch>=1.13.0 in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (2.1.0a0+32f93b1)\n",
-      "Requirement already satisfied: safetensors in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (0.4.2)\n",
-      "Requirement already satisfied: transformers>=4.31.0 in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (4.37.2)\n",
-      "Collecting peft>=0.5.0 (from auto-gptq)\n",
-      "  Obtaining dependency information for peft>=0.5.0 from https://files.pythonhosted.org/packages/07/63/168af5aa8dbda9c23ad774a4c1d311cfe220c634e0d05a3a82a7cae01bd8/peft-0.8.2-py3-none-any.whl.metadata\n",
-      "  Downloading peft-0.8.2-py3-none-any.whl.metadata (25 kB)\n",
-      "Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from auto-gptq) (4.66.1)\n",
-      "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from accelerate>=0.22.0->auto-gptq) (23.1)\n",
-      "Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from accelerate>=0.22.0->auto-gptq) (5.9.4)\n",
-      "Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from accelerate>=0.22.0->auto-gptq) (6.0.1)\n",
-      "Requirement already satisfied: huggingface-hub in /usr/local/lib/python3.10/dist-packages (from accelerate>=0.22.0->auto-gptq) (0.20.3)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->auto-gptq) (3.12.4)\n",
-      "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->auto-gptq) (4.7.1)\n",
-      "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->auto-gptq) (1.12)\n",
-      "Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->auto-gptq) (2.6.3)\n",
-      "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->auto-gptq) (3.1.2)\n",
-      "Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch>=1.13.0->auto-gptq) (2023.6.0)\n",
-      "Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers>=4.31.0->auto-gptq) (2023.10.3)\n",
-      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from transformers>=4.31.0->auto-gptq) (2.31.0)\n",
-      "Requirement already satisfied: tokenizers<0.19,>=0.14 in /usr/local/lib/python3.10/dist-packages (from transformers>=4.31.0->auto-gptq) (0.15.2)\n",
-      "Requirement already satisfied: pyarrow>=12.0.0 in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (15.0.0)\n",
-      "Requirement already satisfied: pyarrow-hotfix in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (0.6)\n",
-      "Requirement already satisfied: dill<0.3.9,>=0.3.0 in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (0.3.8)\n",
-      "Requirement already satisfied: pandas in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (1.5.3)\n",
-      "Requirement already satisfied: xxhash in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (3.4.1)\n",
-      "Requirement already satisfied: multiprocess in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (0.70.16)\n",
-      "Requirement already satisfied: aiohttp in /usr/local/lib/python3.10/dist-packages (from datasets->auto-gptq) (3.8.5)\n",
-      "Requirement already satisfied: six in /usr/local/lib/python3.10/dist-packages (from rouge->auto-gptq) (1.16.0)\n",
-      "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (23.1.0)\n",
-      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (3.2.0)\n",
-      "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (6.0.4)\n",
-      "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (4.0.3)\n",
-      "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (1.9.2)\n",
-      "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (1.4.0)\n",
-      "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp->datasets->auto-gptq) (1.3.1)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->transformers>=4.31.0->auto-gptq) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->transformers>=4.31.0->auto-gptq) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->transformers>=4.31.0->auto-gptq) (2023.7.22)\n",
-      "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.13.0->auto-gptq) (2.1.3)\n",
-      "Requirement already satisfied: python-dateutil>=2.8.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets->auto-gptq) (2.8.2)\n",
-      "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas->datasets->auto-gptq) (2023.3)\n",
-      "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.13.0->auto-gptq) (1.3.0)\n",
-      "Downloading auto_gptq-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.8 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.8/4.8 MB\u001b[0m \u001b[31m72.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading peft-0.8.2-py3-none-any.whl (183 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m183.4/183.4 kB\u001b[0m \u001b[31m261.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hInstalling collected packages: rouge, gekko, peft, auto-gptq\n",
-      "Successfully installed auto-gptq-0.6.0 gekko-1.0.6 peft-0.8.2 rouge-1.0.1\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting gradio\n",
-      "  Obtaining dependency information for gradio from https://files.pythonhosted.org/packages/40/c2/68c58aabbe821866e9a11a3776c9d36fd4416e812ab4ab58b531e82bd3da/gradio-4.18.0-py3-none-any.whl.metadata\n",
-      "  Downloading gradio-4.18.0-py3-none-any.whl.metadata (15 kB)\n",
-      "Collecting aiofiles<24.0,>=22.0 (from gradio)\n",
-      "  Obtaining dependency information for aiofiles<24.0,>=22.0 from https://files.pythonhosted.org/packages/c5/19/5af6804c4cc0fed83f47bff6e413a98a36618e7d40185cd36e69737f3b0e/aiofiles-23.2.1-py3-none-any.whl.metadata\n",
-      "  Downloading aiofiles-23.2.1-py3-none-any.whl.metadata (9.7 kB)\n",
-      "Collecting altair<6.0,>=4.2.0 (from gradio)\n",
-      "  Obtaining dependency information for altair<6.0,>=4.2.0 from https://files.pythonhosted.org/packages/c5/e4/7fcceef127badbb0d644d730d992410e4f3799b295c9964a172f92a469c7/altair-5.2.0-py3-none-any.whl.metadata\n",
-      "  Downloading altair-5.2.0-py3-none-any.whl.metadata (8.7 kB)\n",
-      "Collecting fastapi (from gradio)\n",
-      "  Obtaining dependency information for fastapi from https://files.pythonhosted.org/packages/bf/97/60351307ab4502908d29f64f2801a36709a3f1888447bb328bc373d6ca0e/fastapi-0.109.2-py3-none-any.whl.metadata\n",
-      "  Downloading fastapi-0.109.2-py3-none-any.whl.metadata (25 kB)\n",
-      "Collecting ffmpy (from gradio)\n",
-      "  Downloading ffmpy-0.3.2.tar.gz (5.5 kB)\n",
-      "  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting gradio-client==0.10.0 (from gradio)\n",
-      "  Obtaining dependency information for gradio-client==0.10.0 from https://files.pythonhosted.org/packages/85/7c/956b96c8bd76ae19bf40ef477f7631336cc5728edbb3b4304f81e7a84e2a/gradio_client-0.10.0-py3-none-any.whl.metadata\n",
-      "  Downloading gradio_client-0.10.0-py3-none-any.whl.metadata (7.1 kB)\n",
-      "Collecting httpx (from gradio)\n",
-      "  Obtaining dependency information for httpx from https://files.pythonhosted.org/packages/39/9b/4937d841aee9c2c8102d9a4eeb800c7dad25386caabb4a1bf5010df81a57/httpx-0.26.0-py3-none-any.whl.metadata\n",
-      "  Downloading httpx-0.26.0-py3-none-any.whl.metadata (7.6 kB)\n",
-      "Requirement already satisfied: huggingface-hub>=0.19.3 in /usr/local/lib/python3.10/dist-packages (from gradio) (0.20.3)\n",
-      "Collecting importlib-resources<7.0,>=1.3 (from gradio)\n",
-      "  Obtaining dependency information for importlib-resources<7.0,>=1.3 from https://files.pythonhosted.org/packages/93/e8/facde510585869b5ec694e8e0363ffe4eba067cb357a8398a55f6a1f8023/importlib_resources-6.1.1-py3-none-any.whl.metadata\n",
-      "  Downloading importlib_resources-6.1.1-py3-none-any.whl.metadata (4.1 kB)\n",
-      "Requirement already satisfied: jinja2<4.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (3.1.2)\n",
-      "Requirement already satisfied: markupsafe~=2.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (2.1.3)\n",
-      "Requirement already satisfied: matplotlib~=3.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (3.8.0)\n",
-      "Requirement already satisfied: numpy~=1.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (1.22.2)\n",
-      "Collecting orjson~=3.0 (from gradio)\n",
-      "  Obtaining dependency information for orjson~=3.0 from https://files.pythonhosted.org/packages/41/41/302b51345b61afb68ce166e4be2ebeef0b86d7aa9f28ca4fcf7c3d612d45/orjson-3.9.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading orjson-3.9.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (49 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m49.4/49.4 kB\u001b[0m \u001b[31m360.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from gradio) (23.1)\n",
-      "Requirement already satisfied: pandas<3.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (1.5.3)\n",
-      "Requirement already satisfied: pillow<11.0,>=8.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (9.2.0)\n",
-      "Requirement already satisfied: pydantic>=2.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (2.4.2)\n",
-      "Collecting pydub (from gradio)\n",
-      "  Downloading pydub-0.25.1-py2.py3-none-any.whl (32 kB)\n",
-      "Collecting python-multipart (from gradio)\n",
-      "  Obtaining dependency information for python-multipart from https://files.pythonhosted.org/packages/3d/47/444768600d9e0ebc82f8e347775d24aef8f6348cf00e9fa0e81910814e6d/python_multipart-0.0.9-py3-none-any.whl.metadata\n",
-      "  Downloading python_multipart-0.0.9-py3-none-any.whl.metadata (2.5 kB)\n",
-      "Requirement already satisfied: pyyaml<7.0,>=5.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (6.0.1)\n",
-      "Collecting ruff>=0.1.7 (from gradio)\n",
-      "  Obtaining dependency information for ruff>=0.1.7 from https://files.pythonhosted.org/packages/70/d3/67fdaff63c3092fb667573d6b69fe601020212078b68adedcb821ad4dfcd/ruff-0.2.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading ruff-0.2.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (23 kB)\n",
-      "Collecting semantic-version~=2.0 (from gradio)\n",
-      "  Downloading semantic_version-2.10.0-py2.py3-none-any.whl (15 kB)\n",
-      "Collecting tomlkit==0.12.0 (from gradio)\n",
-      "  Obtaining dependency information for tomlkit==0.12.0 from https://files.pythonhosted.org/packages/68/4f/12207897848a653d03ebbf6775a29d949408ded5f99b2d87198bc5c93508/tomlkit-0.12.0-py3-none-any.whl.metadata\n",
-      "  Downloading tomlkit-0.12.0-py3-none-any.whl.metadata (2.7 kB)\n",
-      "Requirement already satisfied: typer[all]<1.0,>=0.9 in /usr/local/lib/python3.10/dist-packages (from gradio) (0.9.0)\n",
-      "Requirement already satisfied: typing-extensions~=4.0 in /usr/local/lib/python3.10/dist-packages (from gradio) (4.7.1)\n",
-      "Collecting uvicorn>=0.14.0 (from gradio)\n",
-      "  Obtaining dependency information for uvicorn>=0.14.0 from https://files.pythonhosted.org/packages/d9/fd/bac111726b6c651f1fa5563145ecba5ff70d36fb140a55e0d79b60b9d65e/uvicorn-0.27.1-py3-none-any.whl.metadata\n",
-      "  Downloading uvicorn-0.27.1-py3-none-any.whl.metadata (6.3 kB)\n",
-      "Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from gradio-client==0.10.0->gradio) (2023.6.0)\n",
-      "Collecting websockets<12.0,>=10.0 (from gradio-client==0.10.0->gradio)\n",
-      "  Obtaining dependency information for websockets<12.0,>=10.0 from https://files.pythonhosted.org/packages/58/0a/7570e15661a0a546c3a1152d95fe8c05480459bab36247f0acbf41f01a41/websockets-11.0.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading websockets-11.0.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.6 kB)\n",
-      "Requirement already satisfied: jsonschema>=3.0 in /usr/local/lib/python3.10/dist-packages (from altair<6.0,>=4.2.0->gradio) (4.19.1)\n",
-      "Requirement already satisfied: toolz in /usr/local/lib/python3.10/dist-packages (from altair<6.0,>=4.2.0->gradio) (0.12.0)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.3->gradio) (3.12.4)\n",
-      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.3->gradio) (2.31.0)\n",
-      "Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub>=0.19.3->gradio) (4.66.1)\n",
-      "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib~=3.0->gradio) (1.1.1)\n",
-      "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib~=3.0->gradio) (0.12.1)\n",
-      "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib~=3.0->gradio) (4.43.1)\n",
-      "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib~=3.0->gradio) (1.4.5)\n",
-      "Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib~=3.0->gradio) (3.1.1)\n",
-      "Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.10/dist-packages (from matplotlib~=3.0->gradio) (2.8.2)\n",
-      "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas<3.0,>=1.0->gradio) (2023.3)\n",
-      "Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from pydantic>=2.0->gradio) (0.5.0)\n",
-      "Requirement already satisfied: pydantic-core==2.10.1 in /usr/local/lib/python3.10/dist-packages (from pydantic>=2.0->gradio) (2.10.1)\n",
-      "Requirement already satisfied: click<9.0.0,>=7.1.1 in /usr/local/lib/python3.10/dist-packages (from typer[all]<1.0,>=0.9->gradio) (8.1.6)\n",
-      "Collecting colorama<0.5.0,>=0.4.3 (from typer[all]<1.0,>=0.9->gradio)\n",
-      "  Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\n",
-      "Collecting shellingham<2.0.0,>=1.3.0 (from typer[all]<1.0,>=0.9->gradio)\n",
-      "  Obtaining dependency information for shellingham<2.0.0,>=1.3.0 from https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl.metadata\n",
-      "  Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)\n",
-      "Collecting rich<14.0.0,>=10.11.0 (from typer[all]<1.0,>=0.9->gradio)\n",
-      "  Obtaining dependency information for rich<14.0.0,>=10.11.0 from https://files.pythonhosted.org/packages/be/be/1520178fa01eabe014b16e72a952b9f900631142ccd03dc36cf93e30c1ce/rich-13.7.0-py3-none-any.whl.metadata\n",
-      "  Downloading rich-13.7.0-py3-none-any.whl.metadata (18 kB)\n",
-      "Collecting h11>=0.8 (from uvicorn>=0.14.0->gradio)\n",
-      "  Downloading h11-0.14.0-py3-none-any.whl (58 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m58.3/58.3 kB\u001b[0m \u001b[31m137.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting starlette<0.37.0,>=0.36.3 (from fastapi->gradio)\n",
-      "  Obtaining dependency information for starlette<0.37.0,>=0.36.3 from https://files.pythonhosted.org/packages/eb/f7/372e3953b6e6fbfe0b70a1bb52612eae16e943f4288516480860fcd4ac41/starlette-0.36.3-py3-none-any.whl.metadata\n",
-      "  Downloading starlette-0.36.3-py3-none-any.whl.metadata (5.9 kB)\n",
-      "Collecting typing-extensions~=4.0 (from gradio)\n",
-      "  Obtaining dependency information for typing-extensions~=4.0 from https://files.pythonhosted.org/packages/b7/f4/6a90020cd2d93349b442bfcb657d0dc91eee65491600b2cb1d388bc98e6b/typing_extensions-4.9.0-py3-none-any.whl.metadata\n",
-      "  Downloading typing_extensions-4.9.0-py3-none-any.whl.metadata (3.0 kB)\n",
-      "Collecting anyio (from httpx->gradio)\n",
-      "  Obtaining dependency information for anyio from https://files.pythonhosted.org/packages/bf/cd/d6d9bb1dadf73e7af02d18225cbd2c93f8552e13130484f1c8dcfece292b/anyio-4.2.0-py3-none-any.whl.metadata\n",
-      "  Downloading anyio-4.2.0-py3-none-any.whl.metadata (4.6 kB)\n",
-      "Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from httpx->gradio) (2023.7.22)\n",
-      "Collecting httpcore==1.* (from httpx->gradio)\n",
-      "  Obtaining dependency information for httpcore==1.* from https://files.pythonhosted.org/packages/56/ba/78b0a99c4da0ff8b0f59defa2f13ca4668189b134bd9840b6202a93d9a0f/httpcore-1.0.2-py3-none-any.whl.metadata\n",
-      "  Downloading httpcore-1.0.2-py3-none-any.whl.metadata (20 kB)\n",
-      "Requirement already satisfied: idna in /usr/local/lib/python3.10/dist-packages (from httpx->gradio) (3.4)\n",
-      "Collecting sniffio (from httpx->gradio)\n",
-      "  Downloading sniffio-1.3.0-py3-none-any.whl (10 kB)\n",
-      "Requirement already satisfied: attrs>=22.2.0 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6.0,>=4.2.0->gradio) (23.1.0)\n",
-      "Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6.0,>=4.2.0->gradio) (2023.7.1)\n",
-      "Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6.0,>=4.2.0->gradio) (0.30.2)\n",
-      "Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6.0,>=4.2.0->gradio) (0.10.4)\n",
-      "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.7->matplotlib~=3.0->gradio) (1.16.0)\n",
-      "Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.10/dist-packages (from rich<14.0.0,>=10.11.0->typer[all]<1.0,>=0.9->gradio) (3.0.0)\n",
-      "Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.10/dist-packages (from rich<14.0.0,>=10.11.0->typer[all]<1.0,>=0.9->gradio) (2.16.1)\n",
-      "Requirement already satisfied: exceptiongroup>=1.0.2 in /usr/local/lib/python3.10/dist-packages (from anyio->httpx->gradio) (1.1.3)\n",
-      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.19.3->gradio) (3.2.0)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub>=0.19.3->gradio) (1.26.16)\n",
-      "Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.10/dist-packages (from markdown-it-py>=2.2.0->rich<14.0.0,>=10.11.0->typer[all]<1.0,>=0.9->gradio) (0.1.2)\n",
-      "Downloading gradio-4.18.0-py3-none-any.whl (16.8 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m16.8/16.8 MB\u001b[0m \u001b[31m104.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading gradio_client-0.10.0-py3-none-any.whl (307 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m307.7/307.7 kB\u001b[0m \u001b[31m528.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading tomlkit-0.12.0-py3-none-any.whl (37 kB)\n",
-      "Downloading aiofiles-23.2.1-py3-none-any.whl (15 kB)\n",
-      "Downloading altair-5.2.0-py3-none-any.whl (996 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m996.9/996.9 kB\u001b[0m \u001b[31m90.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading importlib_resources-6.1.1-py3-none-any.whl (33 kB)\n",
-      "Downloading orjson-3.9.14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (138 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m139.0/139.0 kB\u001b[0m \u001b[31m188.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading ruff-0.2.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (7.6 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m7.6/7.6 MB\u001b[0m \u001b[31m59.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading uvicorn-0.27.1-py3-none-any.whl (60 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m60.8/60.8 kB\u001b[0m \u001b[31m179.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading fastapi-0.109.2-py3-none-any.whl (92 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m92.1/92.1 kB\u001b[0m \u001b[31m201.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading typing_extensions-4.9.0-py3-none-any.whl (32 kB)\n",
-      "Downloading httpx-0.26.0-py3-none-any.whl (75 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m75.9/75.9 kB\u001b[0m \u001b[31m213.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading httpcore-1.0.2-py3-none-any.whl (76 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m76.9/76.9 kB\u001b[0m \u001b[31m226.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading python_multipart-0.0.9-py3-none-any.whl (22 kB)\n",
-      "Downloading rich-13.7.0-py3-none-any.whl (240 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m240.6/240.6 kB\u001b[0m \u001b[31m202.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)\n",
-      "Downloading starlette-0.36.3-py3-none-any.whl (71 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.5/71.5 kB\u001b[0m \u001b[31m174.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading anyio-4.2.0-py3-none-any.whl (85 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m85.5/85.5 kB\u001b[0m \u001b[31m186.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading websockets-11.0.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (129 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m129.9/129.9 kB\u001b[0m \u001b[31m189.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hBuilding wheels for collected packages: ffmpy\n",
-      "  Building wheel for ffmpy (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for ffmpy: filename=ffmpy-0.3.2-py3-none-any.whl size=5598 sha256=4221e9cf40f81020664847e6ea9d9d601ab461673cae5ba1ab88470e9da2c277\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-jld5_z3m/wheels/bd/65/9a/671fc6dcde07d4418df0c592f8df512b26d7a0029c2a23dd81\n",
-      "Successfully built ffmpy\n",
-      "Installing collected packages: pydub, ffmpy, websockets, typing-extensions, tomlkit, sniffio, shellingham, semantic-version, ruff, python-multipart, orjson, importlib-resources, h11, colorama, aiofiles, uvicorn, rich, httpcore, anyio, starlette, httpx, gradio-client, fastapi, altair, gradio\n",
-      "  Attempting uninstall: typing-extensions\n",
-      "    Found existing installation: typing_extensions 4.7.1\n",
-      "    Uninstalling typing_extensions-4.7.1:\n",
-      "      Successfully uninstalled typing_extensions-4.7.1\n",
-      "Successfully installed aiofiles-23.2.1 altair-5.2.0 anyio-4.2.0 colorama-0.4.6 fastapi-0.109.2 ffmpy-0.3.2 gradio-4.18.0 gradio-client-0.10.0 h11-0.14.0 httpcore-1.0.2 httpx-0.26.0 importlib-resources-6.1.1 orjson-3.9.14 pydub-0.25.1 python-multipart-0.0.9 rich-13.7.0 ruff-0.2.1 semantic-version-2.10.0 shellingham-1.5.4 sniffio-1.3.0 starlette-0.36.3 tomlkit-0.12.0 typing-extensions-4.9.0 uvicorn-0.27.1 websockets-11.0.3\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting TTS\n",
-      "  Obtaining dependency information for TTS from https://files.pythonhosted.org/packages/6e/36/dce195a2b9ff3a11863f53fc35109f8e1f2c7d40419f999f9d0a12cc23e5/TTS-0.22.0-cp310-cp310-manylinux1_x86_64.whl.metadata\n",
-      "  Downloading TTS-0.22.0-cp310-cp310-manylinux1_x86_64.whl.metadata (21 kB)\n",
-      "Requirement already satisfied: cython>=0.29.30 in /usr/local/lib/python3.10/dist-packages (from TTS) (3.0.3)\n",
-      "Collecting scipy>=1.11.2 (from TTS)\n",
-      "  Obtaining dependency information for scipy>=1.11.2 from https://files.pythonhosted.org/packages/f5/aa/8e6071a5e4dca4ec68b5b22e4991ee74c59c5d372112b9c236ec1faff57d/scipy-1.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading scipy-1.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (60 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m60.4/60.4 kB\u001b[0m \u001b[31m13.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting torch>=2.1 (from TTS)\n",
-      "  Obtaining dependency information for torch>=2.1 from https://files.pythonhosted.org/packages/8c/67/fcc9b9e2369a9bae4da492aedc0c2dfa95d563ef0eaa9228b70c98395ec2/torch-2.2.0-cp310-cp310-manylinux1_x86_64.whl.metadata\n",
-      "  Downloading torch-2.2.0-cp310-cp310-manylinux1_x86_64.whl.metadata (25 kB)\n",
-      "Collecting torchaudio (from TTS)\n",
-      "  Obtaining dependency information for torchaudio from https://files.pythonhosted.org/packages/30/fc/cdcf7c2071539ea147ddb6de2b538d9c1599665b621f2e6cf0b3ef51d20d/torchaudio-2.2.0-cp310-cp310-manylinux1_x86_64.whl.metadata\n",
-      "  Downloading torchaudio-2.2.0-cp310-cp310-manylinux1_x86_64.whl.metadata (6.4 kB)\n",
-      "Requirement already satisfied: soundfile>=0.12.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (0.12.1)\n",
-      "Collecting librosa>=0.10.0 (from TTS)\n",
-      "  Obtaining dependency information for librosa>=0.10.0 from https://files.pythonhosted.org/packages/e2/a2/4f639c1168d7aada749a896afb4892a831e2041bebdcf636aebfe9e86556/librosa-0.10.1-py3-none-any.whl.metadata\n",
-      "  Downloading librosa-0.10.1-py3-none-any.whl.metadata (8.3 kB)\n",
-      "Collecting scikit-learn>=1.3.0 (from TTS)\n",
-      "  Obtaining dependency information for scikit-learn>=1.3.0 from https://files.pythonhosted.org/packages/3f/61/047b353f0ad550226ef962da182b4a09b689eb6df6bd84a03e44f9ee95bb/scikit_learn-1.4.0-1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading scikit_learn-1.4.0-1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)\n",
-      "Collecting inflect>=5.6.0 (from TTS)\n",
-      "  Obtaining dependency information for inflect>=5.6.0 from https://files.pythonhosted.org/packages/fb/c6/d9feb758be584f729424390af24687d3a4363d968164f94079f83cd536b4/inflect-7.0.0-py3-none-any.whl.metadata\n",
-      "  Downloading inflect-7.0.0-py3-none-any.whl.metadata (21 kB)\n",
-      "Requirement already satisfied: tqdm>=4.64.1 in /usr/local/lib/python3.10/dist-packages (from TTS) (4.66.1)\n",
-      "Collecting anyascii>=0.3.0 (from TTS)\n",
-      "  Downloading anyascii-0.3.2-py3-none-any.whl (289 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m289.9/289.9 kB\u001b[0m \u001b[31m25.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: pyyaml>=6.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (6.0.1)\n",
-      "Requirement already satisfied: fsspec>=2023.6.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (2023.6.0)\n",
-      "Requirement already satisfied: aiohttp>=3.8.1 in /usr/local/lib/python3.10/dist-packages (from TTS) (3.8.5)\n",
-      "Requirement already satisfied: packaging>=23.1 in /usr/local/lib/python3.10/dist-packages (from TTS) (23.1)\n",
-      "Collecting flask>=2.0.1 (from TTS)\n",
-      "  Obtaining dependency information for flask>=2.0.1 from https://files.pythonhosted.org/packages/93/a6/aa98bfe0eb9b8b15d36cdfd03c8ca86a03968a87f27ce224fb4f766acb23/flask-3.0.2-py3-none-any.whl.metadata\n",
-      "  Downloading flask-3.0.2-py3-none-any.whl.metadata (3.6 kB)\n",
-      "Collecting pysbd>=0.3.4 (from TTS)\n",
-      "  Downloading pysbd-0.3.4-py3-none-any.whl (71 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.1/71.1 kB\u001b[0m \u001b[31m166.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting umap-learn>=0.5.1 (from TTS)\n",
-      "  Downloading umap-learn-0.5.5.tar.gz (90 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m90.9/90.9 kB\u001b[0m \u001b[31m213.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hRequirement already satisfied: pandas<2.0,>=1.4 in /usr/local/lib/python3.10/dist-packages (from TTS) (1.5.3)\n",
-      "Requirement already satisfied: matplotlib>=3.7.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (3.8.0)\n",
-      "Collecting trainer>=0.0.32 (from TTS)\n",
-      "  Obtaining dependency information for trainer>=0.0.32 from https://files.pythonhosted.org/packages/a0/38/c4381497fde987c72fc58d9b534dfd9e254e34d402e06be232f40e1baf66/trainer-0.0.36-py3-none-any.whl.metadata\n",
-      "  Downloading trainer-0.0.36-py3-none-any.whl.metadata (8.1 kB)\n",
-      "Collecting coqpit>=0.0.16 (from TTS)\n",
-      "  Downloading coqpit-0.0.17-py3-none-any.whl (13 kB)\n",
-      "Collecting jieba (from TTS)\n",
-      "  Downloading jieba-0.42.1.tar.gz (19.2 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m19.2/19.2 MB\u001b[0m \u001b[31m70.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting pypinyin (from TTS)\n",
-      "  Obtaining dependency information for pypinyin from https://files.pythonhosted.org/packages/f6/a2/13adff7046a0913917a30cf5a8d8524f1e49b039aa0e6ab6826ad263b176/pypinyin-0.50.0-py2.py3-none-any.whl.metadata\n",
-      "  Downloading pypinyin-0.50.0-py2.py3-none-any.whl.metadata (12 kB)\n",
-      "Collecting hangul-romanize (from TTS)\n",
-      "  Downloading hangul_romanize-0.1.0-py3-none-any.whl (4.6 kB)\n",
-      "Collecting gruut[de,es,fr]==2.2.3 (from TTS)\n",
-      "  Downloading gruut-2.2.3.tar.gz (73 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m73.5/73.5 kB\u001b[0m \u001b[31m181.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting jamo (from TTS)\n",
-      "  Downloading jamo-0.4.1-py3-none-any.whl (9.5 kB)\n",
-      "Collecting nltk (from TTS)\n",
-      "  Downloading nltk-3.8.1-py3-none-any.whl (1.5 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.5/1.5 MB\u001b[0m \u001b[31m101.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting g2pkk>=0.1.1 (from TTS)\n",
-      "  Downloading g2pkk-0.1.2-py3-none-any.whl (25 kB)\n",
-      "Collecting bangla (from TTS)\n",
-      "  Downloading bangla-0.0.2-py2.py3-none-any.whl (6.2 kB)\n",
-      "Collecting bnnumerizer (from TTS)\n",
-      "  Downloading bnnumerizer-0.0.2.tar.gz (4.7 kB)\n",
-      "  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting bnunicodenormalizer (from TTS)\n",
-      "  Downloading bnunicodenormalizer-0.1.6.tar.gz (39 kB)\n",
-      "  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hRequirement already satisfied: einops>=0.6.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (0.7.0)\n",
-      "Requirement already satisfied: transformers>=4.33.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (4.37.2)\n",
-      "Collecting encodec>=0.1.1 (from TTS)\n",
-      "  Downloading encodec-0.1.1.tar.gz (3.7 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.7/3.7 MB\u001b[0m \u001b[31m94.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting unidecode>=1.3.2 (from TTS)\n",
-      "  Obtaining dependency information for unidecode>=1.3.2 from https://files.pythonhosted.org/packages/84/b7/6ec57841fb67c98f52fc8e4a2d96df60059637cba077edc569a302a8ffc7/Unidecode-1.3.8-py3-none-any.whl.metadata\n",
-      "  Downloading Unidecode-1.3.8-py3-none-any.whl.metadata (13 kB)\n",
-      "Collecting num2words (from TTS)\n",
-      "  Obtaining dependency information for num2words from https://files.pythonhosted.org/packages/8f/f0/ca1228af2bcbce2fdf2b23d58643c84253b88a3c1cd9dba391ca683c4b21/num2words-0.5.13-py3-none-any.whl.metadata\n",
-      "  Downloading num2words-0.5.13-py3-none-any.whl.metadata (12 kB)\n",
-      "Requirement already satisfied: spacy[ja]>=3 in /usr/local/lib/python3.10/dist-packages (from TTS) (3.7.1)\n",
-      "Collecting numpy==1.22.0 (from TTS)\n",
-      "  Downloading numpy-1.22.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.8 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m16.8/16.8 MB\u001b[0m \u001b[31m75.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: numba>=0.57.0 in /usr/local/lib/python3.10/dist-packages (from TTS) (0.57.1+1.g5fba9aa8f)\n",
-      "Collecting Babel<3.0.0,>=2.8.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Obtaining dependency information for Babel<3.0.0,>=2.8.0 from https://files.pythonhosted.org/packages/0d/35/4196b21041e29a42dc4f05866d0c94fa26c9da88ce12c38c2265e42c82fb/Babel-2.14.0-py3-none-any.whl.metadata\n",
-      "  Downloading Babel-2.14.0-py3-none-any.whl.metadata (1.6 kB)\n",
-      "Collecting dateparser~=1.1.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading dateparser-1.1.8-py2.py3-none-any.whl (293 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m293.8/293.8 kB\u001b[0m \u001b[31m318.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting gruut-ipa<1.0,>=0.12.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading gruut-ipa-0.13.0.tar.gz (101 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m101.6/101.6 kB\u001b[0m \u001b[31m189.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting gruut_lang_en~=2.0.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading gruut_lang_en-2.0.0.tar.gz (15.2 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m15.2/15.2 MB\u001b[0m \u001b[31m67.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting jsonlines~=1.2.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading jsonlines-1.2.0-py2.py3-none-any.whl (7.6 kB)\n",
-      "Requirement already satisfied: networkx<3.0.0,>=2.5.0 in /usr/local/lib/python3.10/dist-packages (from gruut[de,es,fr]==2.2.3->TTS) (2.6.3)\n",
-      "Collecting python-crfsuite~=0.9.7 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Obtaining dependency information for python-crfsuite~=0.9.7 from https://files.pythonhosted.org/packages/38/1d/c475ba7d11e9735f00eb08e2f5315aa2e21c24cc85a0474c3fd425edef58/python_crfsuite-0.9.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading python_crfsuite-0.9.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.2 kB)\n",
-      "Collecting gruut_lang_fr~=2.0.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading gruut_lang_fr-2.0.2.tar.gz (10.9 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m10.9/10.9 MB\u001b[0m \u001b[31m70.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting gruut_lang_de~=2.0.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading gruut_lang_de-2.0.0.tar.gz (18.1 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m18.1/18.1 MB\u001b[0m \u001b[31m79.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hCollecting gruut_lang_es~=2.0.0 (from gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Downloading gruut_lang_es-2.0.0.tar.gz (31.4 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m31.4/31.4 MB\u001b[0m \u001b[31m58.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hRequirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (23.1.0)\n",
-      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (3.2.0)\n",
-      "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (6.0.4)\n",
-      "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (4.0.3)\n",
-      "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (1.9.2)\n",
-      "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (1.4.0)\n",
-      "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.8.1->TTS) (1.3.1)\n",
-      "Requirement already satisfied: Werkzeug>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from flask>=2.0.1->TTS) (3.0.0)\n",
-      "Requirement already satisfied: Jinja2>=3.1.2 in /usr/local/lib/python3.10/dist-packages (from flask>=2.0.1->TTS) (3.1.2)\n",
-      "Collecting itsdangerous>=2.1.2 (from flask>=2.0.1->TTS)\n",
-      "  Downloading itsdangerous-2.1.2-py3-none-any.whl (15 kB)\n",
-      "Requirement already satisfied: click>=8.1.3 in /usr/local/lib/python3.10/dist-packages (from flask>=2.0.1->TTS) (8.1.6)\n",
-      "Collecting blinker>=1.6.2 (from flask>=2.0.1->TTS)\n",
-      "  Obtaining dependency information for blinker>=1.6.2 from https://files.pythonhosted.org/packages/fa/2a/7f3714cbc6356a0efec525ce7a0613d581072ed6eb53eb7b9754f33db807/blinker-1.7.0-py3-none-any.whl.metadata\n",
-      "  Downloading blinker-1.7.0-py3-none-any.whl.metadata (1.9 kB)\n",
-      "Requirement already satisfied: pydantic>=1.9.1 in /usr/local/lib/python3.10/dist-packages (from inflect>=5.6.0->TTS) (2.4.2)\n",
-      "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from inflect>=5.6.0->TTS) (4.9.0)\n",
-      "Requirement already satisfied: audioread>=2.1.9 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->TTS) (3.0.1)\n",
-      "INFO: pip is looking at multiple versions of librosa to determine which version is compatible with other requirements. This could take a while.\n",
-      "Collecting librosa>=0.10.0 (from TTS)\n",
-      "  Downloading librosa-0.10.0.post2-py3-none-any.whl (253 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m253.0/253.0 kB\u001b[0m \u001b[31m562.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25h  Downloading librosa-0.10.0.post1-py3-none-any.whl (252 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m253.0/253.0 kB\u001b[0m \u001b[31m108.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25h  Downloading librosa-0.10.0-py3-none-any.whl (252 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m252.9/252.9 kB\u001b[0m \u001b[31m222.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: joblib>=0.14 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->TTS) (1.3.2)\n",
-      "Requirement already satisfied: decorator>=4.3.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->TTS) (5.1.1)\n",
-      "Requirement already satisfied: pooch>=1.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->TTS) (1.7.0)\n",
-      "Collecting soxr>=0.3.2 (from librosa>=0.10.0->TTS)\n",
-      "  Obtaining dependency information for soxr>=0.3.2 from https://files.pythonhosted.org/packages/31/f7/d95b816c47dca6a068305fb7176b8c8d2c94bbc6cce6dcc296c6cf98660f/soxr-0.3.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading soxr-0.3.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.5 kB)\n",
-      "Collecting lazy-loader>=0.1 (from librosa>=0.10.0->TTS)\n",
-      "  Obtaining dependency information for lazy-loader>=0.1 from https://files.pythonhosted.org/packages/a1/c3/65b3814e155836acacf720e5be3b5757130346670ac454fee29d3eda1381/lazy_loader-0.3-py3-none-any.whl.metadata\n",
-      "  Downloading lazy_loader-0.3-py3-none-any.whl.metadata (4.3 kB)\n",
-      "Requirement already satisfied: msgpack>=1.0 in /usr/local/lib/python3.10/dist-packages (from librosa>=0.10.0->TTS) (1.0.5)\n",
-      "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (1.1.1)\n",
-      "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (0.12.1)\n",
-      "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (4.43.1)\n",
-      "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (1.4.5)\n",
-      "Requirement already satisfied: pillow>=6.2.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (9.2.0)\n",
-      "Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (3.1.1)\n",
-      "Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.7.0->TTS) (2.8.2)\n",
-      "Collecting docopt>=0.6.2 (from num2words->TTS)\n",
-      "  Downloading docopt-0.6.2.tar.gz (25 kB)\n",
-      "  Preparing metadata (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25hRequirement already satisfied: llvmlite<0.41,>=0.40.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba>=0.57.0->TTS) (0.40.1)\n",
-      "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas<2.0,>=1.4->TTS) (2023.3)\n",
-      "Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn>=1.3.0->TTS) (3.2.0)\n",
-      "INFO: pip is looking at multiple versions of scipy to determine which version is compatible with other requirements. This could take a while.\n",
-      "Collecting scipy>=1.11.2 (from TTS)\n",
-      "  Obtaining dependency information for scipy>=1.11.2 from https://files.pythonhosted.org/packages/e0/9e/80e2205d138960a49caea391f3710600895dd8292b6868dc9aff7aa593f9/scipy-1.11.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading scipy-1.11.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (60 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m60.4/60.4 kB\u001b[0m \u001b[31m759.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: cffi>=1.0 in /usr/local/lib/python3.10/dist-packages (from soundfile>=0.12.0->TTS) (1.16.0)\n",
-      "Requirement already satisfied: spacy-legacy<3.1.0,>=3.0.11 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (3.0.12)\n",
-      "Requirement already satisfied: spacy-loggers<2.0.0,>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (1.0.5)\n",
-      "Requirement already satisfied: murmurhash<1.1.0,>=0.28.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (1.0.10)\n",
-      "Requirement already satisfied: cymem<2.1.0,>=2.0.2 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (2.0.8)\n",
-      "Requirement already satisfied: preshed<3.1.0,>=3.0.2 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (3.0.9)\n",
-      "Requirement already satisfied: thinc<8.3.0,>=8.1.8 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (8.2.1)\n",
-      "Requirement already satisfied: wasabi<1.2.0,>=0.9.1 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (1.1.2)\n",
-      "Requirement already satisfied: srsly<3.0.0,>=2.4.3 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (2.4.8)\n",
-      "Requirement already satisfied: catalogue<2.1.0,>=2.0.6 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (2.0.10)\n",
-      "Requirement already satisfied: weasel<0.4.0,>=0.1.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (0.3.2)\n",
-      "Requirement already satisfied: typer<0.10.0,>=0.3.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (0.9.0)\n",
-      "Requirement already satisfied: pathy>=0.10.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (0.10.2)\n",
-      "Requirement already satisfied: smart-open<7.0.0,>=5.2.1 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (6.4.0)\n",
-      "Requirement already satisfied: requests<3.0.0,>=2.13.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (2.31.0)\n",
-      "Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (68.2.2)\n",
-      "Requirement already satisfied: langcodes<4.0.0,>=3.2.0 in /usr/local/lib/python3.10/dist-packages (from spacy[ja]>=3->TTS) (3.3.0)\n",
-      "Collecting sudachipy!=0.6.1,>=0.5.2 (from spacy[ja]>=3->TTS)\n",
-      "  Obtaining dependency information for sudachipy!=0.6.1,>=0.5.2 from https://files.pythonhosted.org/packages/bd/5e/59892dc4d962d688bd327d3e0b055c26da6c2ba5d6df8b5dac71790fb31b/SudachiPy-0.6.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading SudachiPy-0.6.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)\n",
-      "Collecting sudachidict-core>=20211220 (from spacy[ja]>=3->TTS)\n",
-      "  Obtaining dependency information for sudachidict-core>=20211220 from https://files.pythonhosted.org/packages/52/d3/a21d9846a79c1d4a61f7e5995073c8f7f4cbb237b7eb3cca533b647fd59b/SudachiDict_core-20240109-py3-none-any.whl.metadata\n",
-      "  Downloading SudachiDict_core-20240109-py3-none-any.whl.metadata (2.5 kB)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch>=2.1->TTS) (3.12.4)\n",
-      "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=2.1->TTS) (1.12)\n",
-      "Collecting nvidia-cuda-nvrtc-cu12==12.1.105 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cuda_nvrtc_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (23.7 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m23.7/23.7 MB\u001b[0m \u001b[31m71.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-cuda-runtime-cu12==12.1.105 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cuda_runtime_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (823 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m823.6/823.6 kB\u001b[0m \u001b[31m89.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-cuda-cupti-cu12==12.1.105 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cuda_cupti_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (14.1 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m14.1/14.1 MB\u001b[0m \u001b[31m57.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-cudnn-cu12==8.9.2.26 (from torch>=2.1->TTS)\n",
-      "  Obtaining dependency information for nvidia-cudnn-cu12==8.9.2.26 from https://files.pythonhosted.org/packages/ff/74/a2e2be7fb83aaedec84f391f082cf765dfb635e7caa9b49065f73e4835d8/nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl.metadata\n",
-      "  Downloading nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n",
-      "Collecting nvidia-cublas-cu12==12.1.3.1 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl (410.6 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m410.6/410.6 MB\u001b[0m \u001b[31m90.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-cufft-cu12==11.0.2.54 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cufft_cu12-11.0.2.54-py3-none-manylinux1_x86_64.whl (121.6 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m121.6/121.6 MB\u001b[0m \u001b[31m74.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-curand-cu12==10.3.2.106 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_curand_cu12-10.3.2.106-py3-none-manylinux1_x86_64.whl (56.5 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m56.5/56.5 MB\u001b[0m \u001b[31m78.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-cusolver-cu12==11.4.5.107 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl (124.2 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m124.2/124.2 MB\u001b[0m \u001b[31m63.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-cusparse-cu12==12.1.0.106 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl (196.0 MB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m196.0/196.0 MB\u001b[0m \u001b[31m56.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hCollecting nvidia-nccl-cu12==2.19.3 (from torch>=2.1->TTS)\n",
-      "  Obtaining dependency information for nvidia-nccl-cu12==2.19.3 from https://files.pythonhosted.org/packages/38/00/d0d4e48aef772ad5aebcf70b73028f88db6e5640b36c38e90445b7a57c45/nvidia_nccl_cu12-2.19.3-py3-none-manylinux1_x86_64.whl.metadata\n",
-      "  Downloading nvidia_nccl_cu12-2.19.3-py3-none-manylinux1_x86_64.whl.metadata (1.8 kB)\n",
-      "Collecting nvidia-nvtx-cu12==12.1.105 (from torch>=2.1->TTS)\n",
-      "  Downloading nvidia_nvtx_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (99 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m99.1/99.1 kB\u001b[0m \u001b[31m228.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hCollecting triton==2.2.0 (from torch>=2.1->TTS)\n",
-      "  Obtaining dependency information for triton==2.2.0 from https://files.pythonhosted.org/packages/95/05/ed974ce87fe8c8843855daa2136b3409ee1c126707ab54a8b72815c08b49/triton-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading triton-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.4 kB)\n",
-      "Collecting nvidia-nvjitlink-cu12 (from nvidia-cusolver-cu12==11.4.5.107->torch>=2.1->TTS)\n",
-      "  Obtaining dependency information for nvidia-nvjitlink-cu12 from https://files.pythonhosted.org/packages/1e/07/bf730d44c2fe1b676ad9cc2be5f5f861eb5d153fb6951987a2d6a96379a9/nvidia_nvjitlink_cu12-12.3.101-py3-none-manylinux1_x86_64.whl.metadata\n",
-      "  Downloading nvidia_nvjitlink_cu12-12.3.101-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n",
-      "Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from trainer>=0.0.32->TTS) (5.9.4)\n",
-      "Requirement already satisfied: tensorboard in /usr/local/lib/python3.10/dist-packages (from trainer>=0.0.32->TTS) (2.9.0)\n",
-      "Requirement already satisfied: huggingface-hub<1.0,>=0.19.3 in /usr/local/lib/python3.10/dist-packages (from transformers>=4.33.0->TTS) (0.20.3)\n",
-      "Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers>=4.33.0->TTS) (2023.10.3)\n",
-      "Requirement already satisfied: tokenizers<0.19,>=0.14 in /usr/local/lib/python3.10/dist-packages (from transformers>=4.33.0->TTS) (0.15.2)\n",
-      "Requirement already satisfied: safetensors>=0.4.1 in /usr/local/lib/python3.10/dist-packages (from transformers>=4.33.0->TTS) (0.4.2)\n",
-      "Collecting pynndescent>=0.5 (from umap-learn>=0.5.1->TTS)\n",
-      "  Obtaining dependency information for pynndescent>=0.5 from https://files.pythonhosted.org/packages/4e/82/0b9851a2fd4da9b57d7931446f5ebab92a98f1f35d3dc0dae5f9ed50a462/pynndescent-0.5.11-py3-none-any.whl.metadata\n",
-      "  Downloading pynndescent-0.5.11-py3-none-any.whl.metadata (6.8 kB)\n",
-      "Requirement already satisfied: pycparser in /usr/local/lib/python3.10/dist-packages (from cffi>=1.0->soundfile>=0.12.0->TTS) (2.21)\n",
-      "Collecting tzlocal (from dateparser~=1.1.0->gruut[de,es,fr]==2.2.3->TTS)\n",
-      "  Obtaining dependency information for tzlocal from https://files.pythonhosted.org/packages/97/3f/c4c51c55ff8487f2e6d0e618dba917e3c3ee2caae6cf0fbb59c9b1876f2e/tzlocal-5.2-py3-none-any.whl.metadata\n",
-      "  Downloading tzlocal-5.2-py3-none-any.whl.metadata (7.8 kB)\n",
-      "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from Jinja2>=3.1.2->flask>=2.0.1->TTS) (2.1.3)\n",
-      "Requirement already satisfied: six in /usr/local/lib/python3.10/dist-packages (from jsonlines~=1.2.0->gruut[de,es,fr]==2.2.3->TTS) (1.16.0)\n",
-      "Requirement already satisfied: platformdirs>=2.5.0 in /usr/local/lib/python3.10/dist-packages (from pooch>=1.0->librosa>=0.10.0->TTS) (3.11.0)\n",
-      "Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from pydantic>=1.9.1->inflect>=5.6.0->TTS) (0.5.0)\n",
-      "Requirement already satisfied: pydantic-core==2.10.1 in /usr/local/lib/python3.10/dist-packages (from pydantic>=1.9.1->inflect>=5.6.0->TTS) (2.10.1)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.13.0->spacy[ja]>=3->TTS) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.13.0->spacy[ja]>=3->TTS) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3.0.0,>=2.13.0->spacy[ja]>=3->TTS) (2023.7.22)\n",
-      "Requirement already satisfied: blis<0.8.0,>=0.7.8 in /usr/local/lib/python3.10/dist-packages (from thinc<8.3.0,>=8.1.8->spacy[ja]>=3->TTS) (0.7.11)\n",
-      "Requirement already satisfied: confection<1.0.0,>=0.0.1 in /usr/local/lib/python3.10/dist-packages (from thinc<8.3.0,>=8.1.8->spacy[ja]>=3->TTS) (0.1.3)\n",
-      "Requirement already satisfied: cloudpathlib<0.16.0,>=0.7.0 in /usr/local/lib/python3.10/dist-packages (from weasel<0.4.0,>=0.1.0->spacy[ja]>=3->TTS) (0.15.1)\n",
-      "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=2.1->TTS) (1.3.0)\n",
-      "Requirement already satisfied: absl-py>=0.4 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (2.0.0)\n",
-      "Requirement already satisfied: grpcio>=1.24.3 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (1.59.0)\n",
-      "Requirement already satisfied: google-auth<3,>=1.6.3 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (2.23.2)\n",
-      "Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (0.4.6)\n",
-      "Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (3.4.4)\n",
-      "Requirement already satisfied: protobuf>=3.9.2 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (4.24.4)\n",
-      "Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (0.6.1)\n",
-      "Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (1.8.1)\n",
-      "Requirement already satisfied: wheel>=0.26 in /usr/local/lib/python3.10/dist-packages (from tensorboard->trainer>=0.0.32->TTS) (0.41.2)\n",
-      "Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from google-auth<3,>=1.6.3->tensorboard->trainer>=0.0.32->TTS) (5.3.1)\n",
-      "Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.10/dist-packages (from google-auth<3,>=1.6.3->tensorboard->trainer>=0.0.32->TTS) (0.3.0)\n",
-      "Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.10/dist-packages (from google-auth<3,>=1.6.3->tensorboard->trainer>=0.0.32->TTS) (4.9)\n",
-      "Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.10/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard->trainer>=0.0.32->TTS) (1.3.1)\n",
-      "Requirement already satisfied: pyasn1<0.6.0,>=0.4.6 in /usr/local/lib/python3.10/dist-packages (from pyasn1-modules>=0.2.1->google-auth<3,>=1.6.3->tensorboard->trainer>=0.0.32->TTS) (0.5.0)\n",
-      "Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.10/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard->trainer>=0.0.32->TTS) (3.2.2)\n",
-      "Downloading TTS-0.22.0-cp310-cp310-manylinux1_x86_64.whl (938 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m938.0/938.0 kB\u001b[0m \u001b[31m70.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading flask-3.0.2-py3-none-any.whl (101 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m101.3/101.3 kB\u001b[0m \u001b[31m734.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading inflect-7.0.0-py3-none-any.whl (34 kB)\n",
-      "Downloading num2words-0.5.13-py3-none-any.whl (143 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m143.3/143.3 kB\u001b[0m \u001b[31m200.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading scikit_learn-1.4.0-1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.1 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m12.1/12.1 MB\u001b[0m \u001b[31m60.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading scipy-1.11.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (36.4 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m36.4/36.4 MB\u001b[0m \u001b[31m65.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading torch-2.2.0-cp310-cp310-manylinux1_x86_64.whl (755.5 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m755.5/755.5 MB\u001b[0m \u001b[31m79.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl (731.7 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m731.7/731.7 MB\u001b[0m \u001b[31m84.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading nvidia_nccl_cu12-2.19.3-py3-none-manylinux1_x86_64.whl (166.0 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m166.0/166.0 MB\u001b[0m \u001b[31m82.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading triton-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (167.9 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m167.9/167.9 MB\u001b[0m \u001b[31m56.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading trainer-0.0.36-py3-none-any.whl (51 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m51.2/51.2 kB\u001b[0m \u001b[31m210.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading Unidecode-1.3.8-py3-none-any.whl (235 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m235.5/235.5 kB\u001b[0m \u001b[31m319.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading pypinyin-0.50.0-py2.py3-none-any.whl (1.4 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.4/1.4 MB\u001b[0m \u001b[31m67.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading torchaudio-2.2.0-cp310-cp310-manylinux1_x86_64.whl (3.3 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.3/3.3 MB\u001b[0m \u001b[31m64.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading Babel-2.14.0-py3-none-any.whl (11.0 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m11.0/11.0 MB\u001b[0m \u001b[31m61.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading blinker-1.7.0-py3-none-any.whl (13 kB)\n",
-      "Downloading lazy_loader-0.3-py3-none-any.whl (9.1 kB)\n",
-      "Downloading pynndescent-0.5.11-py3-none-any.whl (55 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m55.8/55.8 kB\u001b[0m \u001b[31m149.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading python_crfsuite-0.9.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.1/1.1 MB\u001b[0m \u001b[31m74.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading soxr-0.3.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.2/1.2 MB\u001b[0m \u001b[31m70.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading SudachiDict_core-20240109-py3-none-any.whl (71.8 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━��━━\u001b[0m \u001b[32m71.8/71.8 MB\u001b[0m \u001b[31m75.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
-      "\u001b[?25hDownloading SudachiPy-0.6.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.6 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.6/2.6 MB\u001b[0m \u001b[31m95.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading nvidia_nvjitlink_cu12-12.3.101-py3-none-manylinux1_x86_64.whl (20.5 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m20.5/20.5 MB\u001b[0m \u001b[31m67.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading tzlocal-5.2-py3-none-any.whl (17 kB)\n",
-      "Building wheels for collected packages: encodec, umap-learn, bnnumerizer, bnunicodenormalizer, jieba, docopt, gruut-ipa, gruut_lang_de, gruut_lang_en, gruut_lang_es, gruut_lang_fr, gruut\n",
-      "  Building wheel for encodec (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for encodec: filename=encodec-0.1.1-py3-none-any.whl size=45777 sha256=0d4bcf09d8e16139f2de0d82cc493833f7e723b82c642b7867c09767cada510b\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/fc/36/cb/81af8b985a5f5e0815312d5e52b41263237af07b977e6bcbf3\n",
-      "  Building wheel for umap-learn (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for umap-learn: filename=umap_learn-0.5.5-py3-none-any.whl size=86848 sha256=02d90a2a36eb493885f0896d8d062b482fb63ee742a8ba4d72e8bd2f71d7a20c\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/3a/70/07/428d2b58660a1a3b431db59b806a10da736612ebbc66c1bcc5\n",
-      "  Building wheel for bnnumerizer (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for bnnumerizer: filename=bnnumerizer-0.0.2-py3-none-any.whl size=5275 sha256=96341623cf00d346e81f80eb4edf0f982896ba1ed7d4786605932825cc59351f\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/59/6b/e8/223172e7d5c9f72df3ea1a0d9258f3a8ab5b28e827728edef5\n",
-      "  Building wheel for bnunicodenormalizer (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for bnunicodenormalizer: filename=bnunicodenormalizer-0.1.6-py3-none-any.whl size=22800 sha256=8012440050dd792816764a0ab39a95f1388d05970266fabeb6e970298edd82bf\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/f4/d7/e9/16732a619cbf5a63fdc9f6e2f9eb5fcf73fa023735237330e9\n",
-      "  Building wheel for jieba (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for jieba: filename=jieba-0.42.1-py3-none-any.whl size=19314476 sha256=0bd8999fdb7464d877b4f9b36bf3f67493022116830c7ceeb938750f182b63c2\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/c9/69/31/d56d90b22a1777b0b231e234b00302a55be255930f8bd92dcd\n",
-      "  Building wheel for docopt (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for docopt: filename=docopt-0.6.2-py2.py3-none-any.whl size=13720 sha256=ed9c4f437fb253312ea34ee670012289bee416bf2e9819631943b00f9683daa7\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/fc/ab/d4/5da2067ac95b36618c629a5f93f809425700506f72c9732fac\n",
-      "  Building wheel for gruut-ipa (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for gruut-ipa: filename=gruut_ipa-0.13.0-py3-none-any.whl size=104892 sha256=57f43d3f9be59664367294441ebcd556a9070b8213057178cc7b63d121a3ef8c\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/7b/18/49/e4f500ecdf0babe757953f844e4d7cd1ea81c5503c09bfe984\n",
-      "  Building wheel for gruut_lang_de (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for gruut_lang_de: filename=gruut_lang_de-2.0.0-py3-none-any.whl size=18498198 sha256=3b3ddea4fab59b3307e45783bffccc6f5f41389d9c17bef8af904dea82f51731\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/95/9a/05/cfce98f0c41a1a540f15708c4a02df190b82d84cf91ef6bc7f\n",
-      "  Building wheel for gruut_lang_en (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for gruut_lang_en: filename=gruut_lang_en-2.0.0-py3-none-any.whl size=15297195 sha256=09b3c15e56f1dbe75917dc90bd55dbd73027d457defe0027c7fdcd67b5414f87\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/10/9c/fb/77c655a9fbd78cdb9935d0ab65d80ddd0a3bcf7dbe18261650\n",
-      "  Building wheel for gruut_lang_es (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for gruut_lang_es: filename=gruut_lang_es-2.0.0-py3-none-any.whl size=32173815 sha256=fcea6068c98e4a24eea3dabfc951ad560e7e3c35bcf65d3194e8f35dfa43e9dc\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/9b/0a/90/788d92c07744b329b9283e37b29b064f5db6b1bb0442a1a19b\n",
-      "  Building wheel for gruut_lang_fr (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for gruut_lang_fr: filename=gruut_lang_fr-2.0.2-py3-none-any.whl size=10968788 sha256=2bf6c10294d1c3fbb8bd34aa1795998a9e620c0f88f32396bb73352435067d9b\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/db/21/be/d0436e3f1cf9bf38b9bb9b4a476399c77a1ab19f7172b45e19\n",
-      "  Building wheel for gruut (setup.py) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for gruut: filename=gruut-2.2.3-py3-none-any.whl size=75809 sha256=833c7e60d720a82b1caa35fe683c97009872027e11e2789fb125a1777161d06f\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-ppd0u1rg/wheels/fc/57/a8/f9de532daf5214f53644f20f3a9e6f69269453c87df9c0a817\n",
-      "Successfully built encodec umap-learn bnnumerizer bnunicodenormalizer jieba docopt gruut-ipa gruut_lang_de gruut_lang_en gruut_lang_es gruut_lang_fr gruut\n",
-      "Installing collected packages: sudachipy, python-crfsuite, jieba, jamo, hangul-romanize, gruut_lang_fr, gruut_lang_es, gruut_lang_en, gruut_lang_de, docopt, bnunicodenormalizer, bnnumerizer, bangla, unidecode, tzlocal, triton, sudachidict-core, pysbd, pypinyin, nvidia-nvtx-cu12, nvidia-nvjitlink-cu12, nvidia-nccl-cu12, nvidia-curand-cu12, nvidia-cufft-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, numpy, num2words, nltk, lazy-loader, jsonlines, itsdangerous, gruut-ipa, coqpit, blinker, Babel, anyascii, soxr, scipy, nvidia-cusparse-cu12, nvidia-cudnn-cu12, g2pkk, flask, dateparser, scikit-learn, nvidia-cusolver-cu12, inflect, gruut, torch, pynndescent, librosa, umap-learn, trainer, torchaudio, encodec, TTS\n",
-      "  Attempting uninstall: triton\n",
-      "    Found existing installation: triton 2.1.0+e621604\n",
-      "    Uninstalling triton-2.1.0+e621604:\n",
-      "      Successfully uninstalled triton-2.1.0+e621604\n",
-      "  Attempting uninstall: numpy\n",
-      "    Found existing installation: numpy 1.22.2\n",
-      "    Uninstalling numpy-1.22.2:\n",
-      "      Successfully uninstalled numpy-1.22.2\n",
-      "  Attempting uninstall: scipy\n",
-      "    Found existing installation: scipy 1.11.1\n",
-      "    Uninstalling scipy-1.11.1:\n",
-      "      Successfully uninstalled scipy-1.11.1\n",
-      "  Attempting uninstall: scikit-learn\n",
-      "    Found existing installation: scikit-learn 1.2.0\n",
-      "    Uninstalling scikit-learn-1.2.0:\n",
-      "      Successfully uninstalled scikit-learn-1.2.0\n",
-      "  Attempting uninstall: torch\n",
-      "    Found existing installation: torch 2.1.0a0+32f93b1\n",
-      "    Uninstalling torch-2.1.0a0+32f93b1:\n",
-      "      Successfully uninstalled torch-2.1.0a0+32f93b1\n",
-      "  Attempting uninstall: librosa\n",
-      "    Found existing installation: librosa 0.9.2\n",
-      "    Uninstalling librosa-0.9.2:\n",
-      "      Successfully uninstalled librosa-0.9.2\n",
-      "\u001b[31mERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.\n",
-      "torchdata 0.7.0a0 requires torch==2.1.0a0+32f93b1, but you have torch 2.2.0 which is incompatible.\n",
-      "torchtext 0.16.0a0 requires torch==2.1.0a0+32f93b1, but you have torch 2.2.0 which is incompatible.\n",
-      "torchvision 0.16.0a0 requires torch==2.1.0a0+32f93b1, but you have torch 2.2.0 which is incompatible.\u001b[0m\u001b[31m\n",
-      "\u001b[0mSuccessfully installed Babel-2.14.0 TTS-0.22.0 anyascii-0.3.2 bangla-0.0.2 blinker-1.7.0 bnnumerizer-0.0.2 bnunicodenormalizer-0.1.6 coqpit-0.0.17 dateparser-1.1.8 docopt-0.6.2 encodec-0.1.1 flask-3.0.2 g2pkk-0.1.2 gruut-2.2.3 gruut-ipa-0.13.0 gruut_lang_de-2.0.0 gruut_lang_en-2.0.0 gruut_lang_es-2.0.0 gruut_lang_fr-2.0.2 hangul-romanize-0.1.0 inflect-7.0.0 itsdangerous-2.1.2 jamo-0.4.1 jieba-0.42.1 jsonlines-1.2.0 lazy-loader-0.3 librosa-0.10.0 nltk-3.8.1 num2words-0.5.13 numpy-1.22.0 nvidia-cublas-cu12-12.1.3.1 nvidia-cuda-cupti-cu12-12.1.105 nvidia-cuda-nvrtc-cu12-12.1.105 nvidia-cuda-runtime-cu12-12.1.105 nvidia-cudnn-cu12-8.9.2.26 nvidia-cufft-cu12-11.0.2.54 nvidia-curand-cu12-10.3.2.106 nvidia-cusolver-cu12-11.4.5.107 nvidia-cusparse-cu12-12.1.0.106 nvidia-nccl-cu12-2.19.3 nvidia-nvjitlink-cu12-12.3.101 nvidia-nvtx-cu12-12.1.105 pynndescent-0.5.11 pypinyin-0.50.0 pysbd-0.3.4 python-crfsuite-0.9.10 scikit-learn-1.4.0 scipy-1.11.4 soxr-0.3.7 sudachidict-core-20240109 sudachipy-0.6.8 torch-2.2.0 torchaudio-2.2.0 trainer-0.0.36 triton-2.2.0 tzlocal-5.2 umap-learn-0.5.5 unidecode-1.3.8\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting transformers==4.36\n",
-      "  Obtaining dependency information for transformers==4.36 from https://files.pythonhosted.org/packages/0f/12/d8e27a190ca67811f81deea3183b528d9169f10b74d827e0b9211520ecfa/transformers-4.36.0-py3-none-any.whl.metadata\n",
-      "  Downloading transformers-4.36.0-py3-none-any.whl.metadata (126 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m126.8/126.8 kB\u001b[0m \u001b[31m5.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hRequirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (3.12.4)\n",
-      "Requirement already satisfied: huggingface-hub<1.0,>=0.19.3 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (0.20.3)\n",
-      "Requirement already satisfied: numpy>=1.17 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (1.22.0)\n",
-      "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (23.1)\n",
-      "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (6.0.1)\n",
-      "Requirement already satisfied: regex!=2019.12.17 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (2023.10.3)\n",
-      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (2.31.0)\n",
-      "Requirement already satisfied: tokenizers<0.19,>=0.14 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (0.15.2)\n",
-      "Requirement already satisfied: safetensors>=0.3.1 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (0.4.2)\n",
-      "Requirement already satisfied: tqdm>=4.27 in /usr/local/lib/python3.10/dist-packages (from transformers==4.36) (4.66.1)\n",
-      "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.19.3->transformers==4.36) (2023.6.0)\n",
-      "Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.19.3->transformers==4.36) (4.9.0)\n",
-      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.36) (3.2.0)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.36) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.36) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->transformers==4.36) (2023.7.22)\n",
-      "Downloading transformers-4.36.0-py3-none-any.whl (8.2 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m8.2/8.2 MB\u001b[0m \u001b[31m32.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hInstalling collected packages: transformers\n",
-      "  Attempting uninstall: transformers\n",
-      "    Found existing installation: transformers 4.37.2\n",
-      "    Uninstalling transformers-4.37.2:\n",
-      "      Successfully uninstalled transformers-4.37.2\n",
-      "Successfully installed transformers-4.36.0\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (1.22.0)\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting openai-whisper\n",
-      "  Downloading openai-whisper-20231117.tar.gz (798 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m798.6/798.6 kB\u001b[0m \u001b[31m10.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25h  Installing build dependencies ... \u001b[?25ldone\n",
-      "\u001b[?25h  Getting requirements to build wheel ... \u001b[?25ldone\n",
-      "\u001b[?25h  Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
-      "\u001b[?25hRequirement already satisfied: triton<3,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (2.2.0)\n",
-      "Requirement already satisfied: numba in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (0.57.1+1.g5fba9aa8f)\n",
-      "Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (1.22.0)\n",
-      "Requirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (2.2.0)\n",
-      "Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (4.66.1)\n",
-      "Collecting more-itertools (from openai-whisper)\n",
-      "  Obtaining dependency information for more-itertools from https://files.pythonhosted.org/packages/50/e2/8e10e465ee3987bb7c9ab69efb91d867d93959095f4807db102d07995d94/more_itertools-10.2.0-py3-none-any.whl.metadata\n",
-      "  Downloading more_itertools-10.2.0-py3-none-any.whl.metadata (34 kB)\n",
-      "Collecting tiktoken (from openai-whisper)\n",
-      "  Obtaining dependency information for tiktoken from https://files.pythonhosted.org/packages/16/05/5efbd91252ffb1301ea393d88ef736b33d41e75d4bcf0bd31d660050e400/tiktoken-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading tiktoken-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.6 kB)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from triton<3,>=2.0.0->openai-whisper) (3.12.4)\n",
-      "Requirement already satisfied: llvmlite<0.41,>=0.40.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba->openai-whisper) (0.40.1)\n",
-      "Requirement already satisfied: regex>=2022.1.18 in /usr/local/lib/python3.10/dist-packages (from tiktoken->openai-whisper) (2023.10.3)\n",
-      "Requirement already satisfied: requests>=2.26.0 in /usr/local/lib/python3.10/dist-packages (from tiktoken->openai-whisper) (2.31.0)\n",
-      "Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (4.9.0)\n",
-      "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (1.12)\n",
-      "Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (2.6.3)\n",
-      "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (3.1.2)\n",
-      "Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (2023.6.0)\n",
-      "Requirement already satisfied: nvidia-cuda-nvrtc-cu12==12.1.105 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (12.1.105)\n",
-      "Requirement already satisfied: nvidia-cuda-runtime-cu12==12.1.105 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (12.1.105)\n",
-      "Requirement already satisfied: nvidia-cuda-cupti-cu12==12.1.105 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (12.1.105)\n",
-      "Requirement already satisfied: nvidia-cudnn-cu12==8.9.2.26 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (8.9.2.26)\n",
-      "Requirement already satisfied: nvidia-cublas-cu12==12.1.3.1 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (12.1.3.1)\n",
-      "Requirement already satisfied: nvidia-cufft-cu12==11.0.2.54 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (11.0.2.54)\n",
-      "Requirement already satisfied: nvidia-curand-cu12==10.3.2.106 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (10.3.2.106)\n",
-      "Requirement already satisfied: nvidia-cusolver-cu12==11.4.5.107 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (11.4.5.107)\n",
-      "Requirement already satisfied: nvidia-cusparse-cu12==12.1.0.106 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (12.1.0.106)\n",
-      "Requirement already satisfied: nvidia-nccl-cu12==2.19.3 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (2.19.3)\n",
-      "Requirement already satisfied: nvidia-nvtx-cu12==12.1.105 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (12.1.105)\n",
-      "Requirement already satisfied: nvidia-nvjitlink-cu12 in /usr/local/lib/python3.10/dist-packages (from nvidia-cusolver-cu12==11.4.5.107->torch->openai-whisper) (12.3.101)\n",
-      "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (3.2.0)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (2023.7.22)\n",
-      "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch->openai-whisper) (2.1.3)\n",
-      "Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch->openai-whisper) (1.3.0)\n",
-      "Downloading more_itertools-10.2.0-py3-none-any.whl (57 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m57.0/57.0 kB\u001b[0m \u001b[31m67.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading tiktoken-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.8/1.8 MB\u001b[0m \u001b[31m23.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hBuilding wheels for collected packages: openai-whisper\n",
-      "  Building wheel for openai-whisper (pyproject.toml) ... \u001b[?25ldone\n",
-      "\u001b[?25h  Created wheel for openai-whisper: filename=openai_whisper-20231117-py3-none-any.whl size=801370 sha256=e19a15fa4dcc1b9599a1e2085c6977ed1b86ad7979e0adc7ea85d1eb6f1988a4\n",
-      "  Stored in directory: /tmp/pip-ephem-wheel-cache-14j4xki2/wheels/d0/85/e1/9361b4cbea7dd4b7f6702fa4c3afc94877952eeb2b62f45f56\n",
-      "Successfully built openai-whisper\n",
-      "Installing collected packages: more-itertools, tiktoken, openai-whisper\n",
-      "Successfully installed more-itertools-10.2.0 openai-whisper-20231117 tiktoken-0.6.0\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting geopy\n",
-      "  Obtaining dependency information for geopy from https://files.pythonhosted.org/packages/e5/15/cf2a69ade4b194aa524ac75112d5caac37414b20a3a03e6865dfe0bd1539/geopy-2.4.1-py3-none-any.whl.metadata\n",
-      "  Downloading geopy-2.4.1-py3-none-any.whl.metadata (6.8 kB)\n",
-      "Collecting geographiclib<3,>=1.52 (from geopy)\n",
-      "  Downloading geographiclib-2.0-py3-none-any.whl (40 kB)\n",
-      "\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m40.3/40.3 kB\u001b[0m \u001b[31m3.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading geopy-2.4.1-py3-none-any.whl (125 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m125.4/125.4 kB\u001b[0m \u001b[31m13.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hInstalling collected packages: geographiclib, geopy\n",
-      "Successfully installed geographiclib-2.0 geopy-2.4.1\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Found existing installation: transformer-engine 0.12.0+170797\n",
-      "Uninstalling transformer-engine-0.12.0+170797:\n",
-      "  Successfully uninstalled transformer-engine-0.12.0+170797\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0mLooking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting langchain\n",
-      "  Obtaining dependency information for langchain from https://files.pythonhosted.org/packages/3c/7c/138106d78cde8b994665251b0681ba59aede8e84902418bab8ea272f4585/langchain-0.1.7-py3-none-any.whl.metadata\n",
-      "  Downloading langchain-0.1.7-py3-none-any.whl.metadata (13 kB)\n",
-      "Requirement already satisfied: PyYAML>=5.3 in /usr/local/lib/python3.10/dist-packages (from langchain) (6.0.1)\n",
-      "Collecting SQLAlchemy<3,>=1.4 (from langchain)\n",
-      "  Obtaining dependency information for SQLAlchemy<3,>=1.4 from https://files.pythonhosted.org/packages/52/35/07882bf478515af007b7c3809fae9dbfa38f5bdd089efd31ce6abdbe66a5/SQLAlchemy-2.0.27-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata\n",
-      "  Downloading SQLAlchemy-2.0.27-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (9.6 kB)\n",
-      "Requirement already satisfied: aiohttp<4.0.0,>=3.8.3 in /usr/local/lib/python3.10/dist-packages (from langchain) (3.8.5)\n",
-      "Requirement already satisfied: async-timeout<5.0.0,>=4.0.0 in /usr/local/lib/python3.10/dist-packages (from langchain) (4.0.3)\n",
-      "Collecting dataclasses-json<0.7,>=0.5.7 (from langchain)\n",
-      "  Obtaining dependency information for dataclasses-json<0.7,>=0.5.7 from https://files.pythonhosted.org/packages/91/ca/7219b838086086972e662c19e908694bdc6744537fb41b70392501b8b5e4/dataclasses_json-0.6.4-py3-none-any.whl.metadata\n",
-      "  Downloading dataclasses_json-0.6.4-py3-none-any.whl.metadata (25 kB)\n",
-      "Collecting jsonpatch<2.0,>=1.33 (from langchain)\n",
-      "  Obtaining dependency information for jsonpatch<2.0,>=1.33 from https://files.pythonhosted.org/packages/73/07/02e16ed01e04a374e644b575638ec7987ae846d25ad97bcc9945a3ee4b0e/jsonpatch-1.33-py2.py3-none-any.whl.metadata\n",
-      "  Downloading jsonpatch-1.33-py2.py3-none-any.whl.metadata (3.0 kB)\n",
-      "Collecting langchain-community<0.1,>=0.0.20 (from langchain)\n",
-      "  Obtaining dependency information for langchain-community<0.1,>=0.0.20 from https://files.pythonhosted.org/packages/44/21/0c26e7f4cbea8ecc22c21dda8cca29a378b9d2795aebaa47ed40b130979d/langchain_community-0.0.20-py3-none-any.whl.metadata\n",
-      "  Downloading langchain_community-0.0.20-py3-none-any.whl.metadata (8.1 kB)\n",
-      "Collecting langchain-core<0.2,>=0.1.22 (from langchain)\n",
-      "  Obtaining dependency information for langchain-core<0.2,>=0.1.22 from https://files.pythonhosted.org/packages/b1/e9/7e624fe4a7619821331ad2e943fbfc2eab7465cf97ee95158c435a276d3e/langchain_core-0.1.23-py3-none-any.whl.metadata\n",
-      "  Downloading langchain_core-0.1.23-py3-none-any.whl.metadata (6.0 kB)\n",
-      "Collecting langsmith<0.1,>=0.0.83 (from langchain)\n",
-      "  Obtaining dependency information for langsmith<0.1,>=0.0.83 from https://files.pythonhosted.org/packages/aa/2b/453e82742b7057ea60007db647266135632e9c687f1b2044ecb72e4764c0/langsmith-0.0.91-py3-none-any.whl.metadata\n",
-      "  Downloading langsmith-0.0.91-py3-none-any.whl.metadata (9.9 kB)\n",
-      "Requirement already satisfied: numpy<2,>=1 in /usr/local/lib/python3.10/dist-packages (from langchain) (1.22.0)\n",
-      "Requirement already satisfied: pydantic<3,>=1 in /usr/local/lib/python3.10/dist-packages (from langchain) (2.4.2)\n",
-      "Requirement already satisfied: requests<3,>=2 in /usr/local/lib/python3.10/dist-packages (from langchain) (2.31.0)\n",
-      "Collecting tenacity<9.0.0,>=8.1.0 (from langchain)\n",
-      "  Obtaining dependency information for tenacity<9.0.0,>=8.1.0 from https://files.pythonhosted.org/packages/f4/f1/990741d5bb2487d529d20a433210ffa136a367751e454214013b441c4575/tenacity-8.2.3-py3-none-any.whl.metadata\n",
-      "  Downloading tenacity-8.2.3-py3-none-any.whl.metadata (1.0 kB)\n",
-      "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (23.1.0)\n",
-      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (3.2.0)\n",
-      "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (6.0.4)\n",
-      "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (1.9.2)\n",
-      "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (1.4.0)\n",
-      "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0.0,>=3.8.3->langchain) (1.3.1)\n",
-      "Collecting marshmallow<4.0.0,>=3.18.0 (from dataclasses-json<0.7,>=0.5.7->langchain)\n",
-      "  Obtaining dependency information for marshmallow<4.0.0,>=3.18.0 from https://files.pythonhosted.org/packages/57/e9/4368d49d3b462da16a3bac976487764a84dd85cef97232c7bd61f5bdedf3/marshmallow-3.20.2-py3-none-any.whl.metadata\n",
-      "  Downloading marshmallow-3.20.2-py3-none-any.whl.metadata (7.5 kB)\n",
-      "Collecting typing-inspect<1,>=0.4.0 (from dataclasses-json<0.7,>=0.5.7->langchain)\n",
-      "  Obtaining dependency information for typing-inspect<1,>=0.4.0 from https://files.pythonhosted.org/packages/65/f3/107a22063bf27bdccf2024833d3445f4eea42b2e598abfbd46f6a63b6cb0/typing_inspect-0.9.0-py3-none-any.whl.metadata\n",
-      "  Downloading typing_inspect-0.9.0-py3-none-any.whl.metadata (1.5 kB)\n",
-      "Collecting jsonpointer>=1.9 (from jsonpatch<2.0,>=1.33->langchain)\n",
-      "  Obtaining dependency information for jsonpointer>=1.9 from https://files.pythonhosted.org/packages/12/f6/0232cc0c617e195f06f810534d00b74d2f348fe71b2118009ad8ad31f878/jsonpointer-2.4-py2.py3-none-any.whl.metadata\n",
-      "  Downloading jsonpointer-2.4-py2.py3-none-any.whl.metadata (2.5 kB)\n",
-      "Requirement already satisfied: anyio<5,>=3 in /usr/local/lib/python3.10/dist-packages (from langchain-core<0.2,>=0.1.22->langchain) (4.2.0)\n",
-      "Collecting langsmith<0.1,>=0.0.83 (from langchain)\n",
-      "  Obtaining dependency information for langsmith<0.1,>=0.0.83 from https://files.pythonhosted.org/packages/94/99/762b50b229516dd133e09c16213736b88d50d75e262b976e20cc244280ed/langsmith-0.0.87-py3-none-any.whl.metadata\n",
-      "  Downloading langsmith-0.0.87-py3-none-any.whl.metadata (10 kB)\n",
-      "Collecting packaging<24.0,>=23.2 (from langchain-core<0.2,>=0.1.22->langchain)\n",
-      "  Obtaining dependency information for packaging<24.0,>=23.2 from https://files.pythonhosted.org/packages/ec/1a/610693ac4ee14fcdf2d9bf3c493370e4f2ef7ae2e19217d7a237ff42367d/packaging-23.2-py3-none-any.whl.metadata\n",
-      "  Downloading packaging-23.2-py3-none-any.whl.metadata (3.2 kB)\n",
-      "Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1->langchain) (0.5.0)\n",
-      "Requirement already satisfied: pydantic-core==2.10.1 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1->langchain) (2.10.1)\n",
-      "Requirement already satisfied: typing-extensions>=4.6.1 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>=1->langchain) (4.9.0)\n",
-      "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->langchain) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->langchain) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2->langchain) (2023.7.22)\n",
-      "Collecting greenlet!=0.4.17 (from SQLAlchemy<3,>=1.4->langchain)\n",
-      "  Obtaining dependency information for greenlet!=0.4.17 from https://files.pythonhosted.org/packages/24/35/945d5b10648fec9b20bcc6df8952d20bb3bba76413cd71c1fdbee98f5616/greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata\n",
-      "  Downloading greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (3.8 kB)\n",
-      "Requirement already satisfied: sniffio>=1.1 in /usr/local/lib/python3.10/dist-packages (from anyio<5,>=3->langchain-core<0.2,>=0.1.22->langchain) (1.3.0)\n",
-      "Requirement already satisfied: exceptiongroup>=1.0.2 in /usr/local/lib/python3.10/dist-packages (from anyio<5,>=3->langchain-core<0.2,>=0.1.22->langchain) (1.1.3)\n",
-      "Collecting mypy-extensions>=0.3.0 (from typing-inspect<1,>=0.4.0->dataclasses-json<0.7,>=0.5.7->langchain)\n",
-      "  Downloading mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)\n",
-      "Downloading langchain-0.1.7-py3-none-any.whl (815 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m815.9/815.9 kB\u001b[0m \u001b[31m40.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading dataclasses_json-0.6.4-py3-none-any.whl (28 kB)\n",
-      "Downloading jsonpatch-1.33-py2.py3-none-any.whl (12 kB)\n",
-      "Downloading langchain_community-0.0.20-py3-none-any.whl (1.7 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.7/1.7 MB\u001b[0m \u001b[31m176.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading langchain_core-0.1.23-py3-none-any.whl (241 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m241.2/241.2 kB\u001b[0m \u001b[31m416.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading langsmith-0.0.87-py3-none-any.whl (55 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m55.4/55.4 kB\u001b[0m \u001b[31m275.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading SQLAlchemy-2.0.27-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.1 MB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.1/3.1 MB\u001b[0m \u001b[31m81.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
-      "\u001b[?25hDownloading tenacity-8.2.3-py3-none-any.whl (24 kB)\n",
-      "Downloading greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (616 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m616.0/616.0 kB\u001b[0m \u001b[31m94.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading jsonpointer-2.4-py2.py3-none-any.whl (7.8 kB)\n",
-      "Downloading marshmallow-3.20.2-py3-none-any.whl (49 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m49.4/49.4 kB\u001b[0m \u001b[31m201.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading packaging-23.2-py3-none-any.whl (53 kB)\n",
-      "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m53.0/53.0 kB\u001b[0m \u001b[31m217.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
-      "\u001b[?25hDownloading typing_inspect-0.9.0-py3-none-any.whl (8.8 kB)\n",
-      "Installing collected packages: tenacity, packaging, mypy-extensions, jsonpointer, greenlet, typing-inspect, SQLAlchemy, marshmallow, jsonpatch, langsmith, dataclasses-json, langchain-core, langchain-community, langchain\n",
-      "  Attempting uninstall: packaging\n",
-      "    Found existing installation: packaging 23.1\n",
-      "    Uninstalling packaging-23.1:\n",
-      "      Successfully uninstalled packaging-23.1\n",
-      "Successfully installed SQLAlchemy-2.0.27 dataclasses-json-0.6.4 greenlet-3.0.3 jsonpatch-1.33 jsonpointer-2.4 langchain-0.1.7 langchain-community-0.0.20 langchain-core-0.1.23 langsmith-0.0.87 marshmallow-3.20.2 mypy-extensions-1.0.0 packaging-23.2 tenacity-8.2.3 typing-inspect-0.9.0\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n",
-      "Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com\n",
-      "Collecting text_generation\n",
-      "  Obtaining dependency information for text_generation from https://files.pythonhosted.org/packages/14/f7/cadf3a0fc619a72d7c667d16e96ef0a5b4c557e6e2b4788a0360dfba4fee/text_generation-0.6.1-py3-none-any.whl.metadata\n",
-      "  Downloading text_generation-0.6.1-py3-none-any.whl.metadata (7.8 kB)\n",
-      "Requirement already satisfied: aiohttp<4.0,>=3.8 in /usr/local/lib/python3.10/dist-packages (from text_generation) (3.8.5)\n",
-      "Requirement already satisfied: huggingface-hub<1.0,>=0.12 in /usr/local/lib/python3.10/dist-packages (from text_generation) (0.20.3)\n",
-      "Requirement already satisfied: pydantic<3,>1.10 in /usr/local/lib/python3.10/dist-packages (from text_generation) (2.4.2)\n",
-      "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (23.1.0)\n",
-      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (3.2.0)\n",
-      "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (6.0.4)\n",
-      "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (4.0.3)\n",
-      "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (1.9.2)\n",
-      "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (1.4.0)\n",
-      "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp<4.0,>=3.8->text_generation) (1.3.1)\n",
-      "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (3.12.4)\n",
-      "Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (2023.6.0)\n",
-      "Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (2.31.0)\n",
-      "Requirement already satisfied: tqdm>=4.42.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (4.66.1)\n",
-      "Requirement already satisfied: pyyaml>=5.1 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (6.0.1)\n",
-      "Requirement already satisfied: typing-extensions>=3.7.4.3 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (4.9.0)\n",
-      "Requirement already satisfied: packaging>=20.9 in /usr/local/lib/python3.10/dist-packages (from huggingface-hub<1.0,>=0.12->text_generation) (23.2)\n",
-      "Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>1.10->text_generation) (0.5.0)\n",
-      "Requirement already satisfied: pydantic-core==2.10.1 in /usr/local/lib/python3.10/dist-packages (from pydantic<3,>1.10->text_generation) (2.10.1)\n",
-      "Requirement already satisfied: idna>=2.0 in /usr/local/lib/python3.10/dist-packages (from yarl<2.0,>=1.0->aiohttp<4.0,>=3.8->text_generation) (3.4)\n",
-      "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub<1.0,>=0.12->text_generation) (1.26.16)\n",
-      "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->huggingface-hub<1.0,>=0.12->text_generation) (2023.7.22)\n",
-      "Downloading text_generation-0.6.1-py3-none-any.whl (10 kB)\n",
-      "Installing collected packages: text_generation\n",
-      "Successfully installed text_generation-0.6.1\n",
-      "\u001b[33mWARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv\u001b[0m\u001b[33m\n",
-      "\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m23.2.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m24.0\u001b[0m\n",
-      "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpython -m pip install --upgrade pip\u001b[0m\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "#run this cell \n",
     "!pip install accelerate\n",
@@ -1085,27 +48,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 1,
+   "execution_count": null,
    "metadata": {
     "collapsed": true,
     "id": "oOnNfKjX4IAV"
    },
-   "outputs": [
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/usr/local/lib/python3.10/dist-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",
-      "/usr/local/lib/python3.10/dist-packages/transformers/utils/generic.py:441: UserWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead.\n",
-      "  _torch_pytree._register_pytree_node(\n",
-      "/usr/local/lib/python3.10/dist-packages/transformers/utils/generic.py:309: UserWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead.\n",
-      "  _torch_pytree._register_pytree_node(\n",
-      "/usr/local/lib/python3.10/dist-packages/transformers/utils/generic.py:309: UserWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead.\n",
-      "  _torch_pytree._register_pytree_node(\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "#gradio interface\n",
     "import gradio as gr\n",
@@ -1166,44 +114,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 2,
+   "execution_count": null,
    "metadata": {
     "collapsed": true,
     "id": "JNALTDb0LT90"
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      " > tts_models/multilingual/multi-dataset/xtts_v1.1 is already downloaded.\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/usr/local/lib/python3.10/dist-packages/transformers/utils/generic.py:309: UserWarning: torch.utils._pytree._register_pytree_node is deprecated. Please use torch.utils._pytree.register_pytree_node instead.\n",
-      "  _torch_pytree._register_pytree_node(\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      " > Using model: xtts\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Loading checkpoint shards: 100%|██████████| 2/2 [00:01<00:00,  1.49it/s]\n",
-      "Special tokens have been added in the vocabulary, make sure the associated word embeddings are fine-tuned or trained.\n",
-      "Loading checkpoint shards: 100%|██████████| 3/3 [00:09<00:00,  3.29s/it]\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# load model and processor for speech-to-text\n",
     "processor = WhisperProcessor.from_pretrained(\"openai/whisper-small\")\n",
@@ -1240,7 +156,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 81,
+   "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -1641,1683 +557,11 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 73,
+   "execution_count": null,
    "metadata": {
     "collapsed": true
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "before everything: \n",
-      "Tue Feb 27 12:54:19 2024       \r\n",
-      "+---------------------------------------------------------------------------------------+\r\n",
-      "| NVIDIA-SMI 545.29.02              Driver Version: 545.29.02    CUDA Version: 12.3     |\r\n",
-      "|-----------------------------------------+----------------------+----------------------+\r\n",
-      "| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |\r\n",
-      "| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |\r\n",
-      "|                                         |                      |               MIG M. |\r\n",
-      "|=========================================+======================+======================|\r\n",
-      "|   0  NVIDIA GeForce RTX 4090        Off | 00000000:01:00.0 Off |                  Off |\r\n",
-      "|  0%   46C    P8              24W / 450W |  15915MiB / 24564MiB |      0%      Default |\r\n",
-      "|                                         |                      |                  N/A |\r\n",
-      "+-----------------------------------------+----------------------+----------------------+\r\n",
-      "                                                                                         \r\n",
-      "+---------------------------------------------------------------------------------------+\r\n",
-      "| Processes:                                                                            |\r\n",
-      "|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |\r\n",
-      "|        ID   ID                                                             Usage      |\r\n",
-      "|=======================================================================================|\r\n",
-      "+---------------------------------------------------------------------------------------+\r\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...\n",
-      "To disable this warning, you can either:\n",
-      "\t- Avoid using `tokenizers` before the fork if possible\n",
-      "\t- Explicitly set the environment variable TOKENIZERS_PARALLELISM=(true | false)\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "after creating prompt: \n",
-      "Tue Feb 27 12:54:19 2024       \n",
-      "+---------------------------------------------------------------------------------------+\n",
-      "| NVIDIA-SMI 545.29.02              Driver Version: 545.29.02    CUDA Version: 12.3     |\n",
-      "|-----------------------------------------+----------------------+----------------------+\n",
-      "| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |\n",
-      "| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |\n",
-      "|                                         |                      |               MIG M. |\n",
-      "|=========================================+======================+======================|\n",
-      "|   0  NVIDIA GeForce RTX 4090        Off | 00000000:01:00.0 Off |                  Off |\n",
-      "|  0%   46C    P8              24W / 450W |  15915MiB / 24564MiB |      0%      Default |\n",
-      "|                                         |                      |                  N/A |\n",
-      "+-----------------------------------------+----------------------+----------------------+\n",
-      "                                                                                         \n",
-      "+---------------------------------------------------------------------------------------+\n",
-      "| Processes:                                                                            |\n",
-      "|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |\n",
-      "|        ID   ID                                                             Usage      |\n",
-      "|=======================================================================================|\n",
-      "+---------------------------------------------------------------------------------------+\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...\n",
-      "To disable this warning, you can either:\n",
-      "\t- Avoid using `tokenizers` before the fork if possible\n",
-      "\t- Explicitly set the environment variable TOKENIZERS_PARALLELISM=(true | false)\n",
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      " \n",
-      " Thought: The purpose of the def search_along_route(latitude_depart, longitude_depart, city_destination, type_of_poi) is to return some of the closest points of interest along the route from the depart point, specified by its coordinates and a city destination.\n",
-      "Initial Answer: search_along_route(49.5999681, 6.1342493, 'Thionville','restaurant')\n",
-      "Reflection: The search_along_route function takes in four arguments: latitude_depart, longitude_depart, city_destination, and type_of_poi.\n",
-      "\n",
-      "The user has asked what restaurants are there on the road from Luxembourg Gare, which coordinates are lat 49.5999681, lon 6.1342493, to Thionville.\n",
-      "\n",
-      "The call provided is search_along_route(49.5999681, 6.1342493, 'Thionville','restaurant').\n",
-      "\n",
-      "The call can be improved because the function requires the latitude and longitude of the depart point, as well as the city destination. The call provided only provides the latitude and longitude of the depart point.\n",
-      "\n",
-      "The correct call would be search_along_\n",
-      "creating the pipe of model output: \n",
-      "Tue Feb 27 12:54:29 2024       \r\n",
-      "+---------------------------------------------------------------------------------------+\r\n",
-      "| NVIDIA-SMI 545.29.02              Driver Version: 545.29.02    CUDA Version: 12.3     |\r\n",
-      "|-----------------------------------------+----------------------+----------------------+\r\n",
-      "| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |\r\n",
-      "| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |\r\n",
-      "|                                         |                      |               MIG M. |\r\n",
-      "|=========================================+======================+======================|\r\n",
-      "|   0  NVIDIA GeForce RTX 4090        Off | 00000000:01:00.0 Off |                  Off |\r\n",
-      "| 30%   54C    P2             293W / 450W |  23485MiB / 24564MiB |     42%      Default |\r\n",
-      "|                                         |                      |                  N/A |\r\n",
-      "+-----------------------------------------+----------------------+----------------------+\r\n",
-      "                                                                                         \r\n",
-      "+---------------------------------------------------------------------------------------+\r\n",
-      "| Processes:                                                                            |\r\n",
-      "|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |\r\n",
-      "|        ID   ID                                                             Usage      |\r\n",
-      "|=======================================================================================|\r\n",
-      "+---------------------------------------------------------------------------------------+\r\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...\n",
-      "To disable this warning, you can either:\n",
-      "\t- Avoid using `tokenizers` before the fork if possible\n",
-      "\t- Explicitly set the environment variable TOKENIZERS_PARALLELISM=(true | false)\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "49.3579272\n",
-      "{\n",
-      "    \"summary\": {\n",
-      "        \"query\": \"restaurant\",\n",
-      "        \"queryType\": \"NON_NEAR\",\n",
-      "        \"queryTime\": 542,\n",
-      "        \"numResults\": 20,\n",
-      "        \"offset\": 0,\n",
-      "        \"totalResults\": 20,\n",
-      "        \"fuzzyLevel\": 1,\n",
-      "        \"geobiasCountry\": \"LU\"\n",
-      "    },\n",
-      "    \"results\": [\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"6iLTyW2L8iNsWvfZn-G3RA\",\n",
-      "            \"score\": 2.9680526257,\n",
-      "            \"dist\": 6633.029897,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000007898-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Eat 'N' Break\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetName\": \"Aire De Berchem\",\n",
-      "                \"municipalitySubdivision\": \"Kockelscheuer\",\n",
-      "                \"municipality\": \"Roeser\",\n",
-      "                \"countrySubdivision\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionName\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionCode\": \"ES\",\n",
-      "                \"postalCode\": \"L-3325\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"Aire De Berchem, L-3325 Kockelscheuer\",\n",
-      "                \"localName\": \"Kockelscheuer\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.542784,\n",
-      "                \"lon\": 6.117274\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.54368,\n",
-      "                    \"lon\": 6.11589\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.54188,\n",
-      "                    \"lon\": 6.11866\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.54306,\n",
-      "                        \"lon\": 6.11736\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 97,\n",
-      "            \"detourDistance\": 72\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"kWdmRGK1imi5pxkKRaBLTg\",\n",
-      "            \"score\": 2.9893448353,\n",
-      "            \"dist\": 2129.722219,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000007003-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Yogurt Factory\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.yogurtfactory.fr\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"25\",\n",
-      "                \"streetName\": \"Boulevard F.W. Raiffeisen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gasperich\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2411\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"25 Boulevard F.W. Raiffeisen, L-2411 Luxembourg (Boulevard de Kockelscheuer)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.583216,\n",
-      "                \"lon\": 6.124969\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.58412,\n",
-      "                    \"lon\": 6.12358\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.58232,\n",
-      "                    \"lon\": 6.12636\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.58381,\n",
-      "                        \"lon\": 6.12417\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 400,\n",
-      "            \"detourDistance\": 1043\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"u_Uxi6yFQCGkllB6Tby4cg\",\n",
-      "            \"score\": 2.9893038273,\n",
-      "            \"dist\": 2138.996952,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006313-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Maestri Della Pasta-Cloche d'Or\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315025\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.maestridellapasta.com\",\n",
-      "                \"categories\": [\n",
-      "                    \"italian\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"italian\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2411\",\n",
-      "                \"streetName\": \"Boulevard F.W. Raiffeisen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gasperich\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2411\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2411 Boulevard F.W. Raiffeisen, L-2411 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.583103,\n",
-      "                \"lon\": 6.125001\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.584,\n",
-      "                    \"lon\": 6.12361\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.5822,\n",
-      "                    \"lon\": 6.12639\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.58363,\n",
-      "                        \"lon\": 6.12529\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 409,\n",
-      "            \"detourDistance\": 1043\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"HVnQnpF2fLDO5H5_jwS1lQ\",\n",
-      "            \"score\": 2.9961209297,\n",
-      "            \"dist\": 545.671134,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000084726-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Biryani Corner\",\n",
-      "                \"phone\": \"+352 26 29 69 16\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315023\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"indian\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"indian\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue de Hesperange\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1731\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue de Hesperange, L-1731 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.596471,\n",
-      "                \"lon\": 6.13769\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59737,\n",
-      "                    \"lon\": 6.1363\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59557,\n",
-      "                    \"lon\": 6.13908\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.5965,\n",
-      "                        \"lon\": 6.13787\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 436,\n",
-      "            \"detourDistance\": 1391\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"tb_nGIC3h-7xTqQF-5JsKA\",\n",
-      "            \"score\": 2.9953873158,\n",
-      "            \"dist\": 721.149782,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000085292-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Bbt Chaud Bonnevoie\",\n",
-      "                \"phone\": \"+352 20 40 60 06\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"29b\",\n",
-      "                \"streetName\": \"Route de Thionville\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2610\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"29b Route de Thionville, L-2610 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.594595,\n",
-      "                \"lon\": 6.137879\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59549,\n",
-      "                    \"lon\": 6.13649\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.5937,\n",
-      "                    \"lon\": 6.13927\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59448,\n",
-      "                        \"lon\": 6.13777\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 438,\n",
-      "            \"detourDistance\": 722\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"APBZWCoGpfHVxs19_iE56g\",\n",
-      "            \"score\": 2.9953436852,\n",
-      "            \"dist\": 731.551109,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000126713-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Moka Bar&Restaurant\",\n",
-      "                \"phone\": \"+352 26 20 23 88\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315025\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.facebook.com/mokaluxembourg/\",\n",
-      "                \"categories\": [\n",
-      "                    \"italian\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"italian\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"29b\",\n",
-      "                \"streetName\": \"Route de Thionville\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2610\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"29b Route de Thionville, L-2610 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.59453,\n",
-      "                \"lon\": 6.13795\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59543,\n",
-      "                    \"lon\": 6.13656\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59363,\n",
-      "                    \"lon\": 6.13934\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59442,\n",
-      "                        \"lon\": 6.13784\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 442,\n",
-      "            \"detourDistance\": 740\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"FJ5gXkiOA6t6YaL4zXD4UA\",\n",
-      "            \"score\": 2.994587183,\n",
-      "            \"dist\": 911.363821,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006620-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Convivio\",\n",
-      "                \"phone\": \"+352 27 48 94 84\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"87\",\n",
-      "                \"streetName\": \"M\\u00fchlenweg\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Gaasperech\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2155\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"87 M\\u00fchlenweg, L-2155 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.5934,\n",
-      "                \"lon\": 6.12935\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.5943,\n",
-      "                    \"lon\": 6.12796\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.5925,\n",
-      "                    \"lon\": 6.13074\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59343,\n",
-      "                        \"lon\": 6.12915\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 473,\n",
-      "            \"detourDistance\": 1212\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"fuGJqfUtpIURKkOLEygD7A\",\n",
-      "            \"score\": 2.9681904316,\n",
-      "            \"dist\": 6605.91051,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000132033-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Eat N'Break\",\n",
-      "                \"phone\": \"+352 52 36 70\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetName\": \"Autoroute Aire de Berchem\",\n",
-      "                \"municipalitySubdivision\": \"Berchem\",\n",
-      "                \"municipality\": \"Roeser\",\n",
-      "                \"countrySubdivision\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionName\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionCode\": \"ES\",\n",
-      "                \"postalCode\": \"L-3325\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"Autoroute Aire de Berchem, L-3325 Berchem\",\n",
-      "                \"localName\": \"Berchem\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.54221,\n",
-      "                \"lon\": 6.120355\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.54311,\n",
-      "                    \"lon\": 6.11897\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.54131,\n",
-      "                    \"lon\": 6.12174\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.54201,\n",
-      "                        \"lon\": 6.12105\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 480,\n",
-      "            \"detourDistance\": 4076\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"Pgnl01wUmCb6e6DQgoI9Kg\",\n",
-      "            \"score\": 2.9963974953,\n",
-      "            \"dist\": 479.232564,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000021691-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Croc'Heure\",\n",
-      "                \"phone\": \"+352 26 89 72 83\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315139\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"snacks\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"snacks\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Rue Sigismond\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2537\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Rue Sigismond, L-2537 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.596907,\n",
-      "                \"lon\": 6.137282\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59781,\n",
-      "                    \"lon\": 6.13589\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59601,\n",
-      "                    \"lon\": 6.13867\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59701,\n",
-      "                        \"lon\": 6.13725\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 529,\n",
-      "            \"detourDistance\": 1640\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"lwIo3CyIXiMHL4ZvkkuxBA\",\n",
-      "            \"score\": 2.996710062,\n",
-      "            \"dist\": 404.009661,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008142-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Craft Corner\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315039\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.craftcorner.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"pub food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"pub food\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"112\",\n",
-      "                \"streetName\": \"Rue de Bonnevoie\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1260\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"112 Rue de Bonnevoie, L-1260 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.598281,\n",
-      "                \"lon\": 6.137467\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59918,\n",
-      "                    \"lon\": 6.13608\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59738,\n",
-      "                    \"lon\": 6.13885\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.5982,\n",
-      "                        \"lon\": 6.13761\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 541,\n",
-      "            \"detourDistance\": 1830\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"c7YW7ZAY7pR5oVuQXnI6DA\",\n",
-      "            \"score\": 2.9961259365,\n",
-      "            \"dist\": 544.487539,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000049621-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Restaurant Frimolux\",\n",
-      "                \"phone\": \"+352 26 29 68 83\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"133\",\n",
-      "                \"streetName\": \"Rue de Bonnevoie\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie S\\u00fcd\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1260\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"133 Rue de Bonnevoie, L-1260 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.596945,\n",
-      "                \"lon\": 6.138101\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59784,\n",
-      "                    \"lon\": 6.13671\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59605,\n",
-      "                    \"lon\": 6.13949\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59699,\n",
-      "                        \"lon\": 6.13822\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 562,\n",
-      "            \"detourDistance\": 1405\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"kn3wIVhlPZeGBwyVUYIW2A\",\n",
-      "            \"score\": 2.9889726639,\n",
-      "            \"dist\": 2214.370428,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006050-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Brasserie Auchan Cloche d'Or\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.auchan.lu/fr/contenu/la-brasserie-cloche-d-or\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"25\",\n",
-      "                \"streetName\": \"Boulevard F.W. Raiffeisen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gasperich\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2411\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"25 Boulevard F.W. Raiffeisen, L-2411 Luxembourg (Boulevard de Kockelscheuer)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.582038,\n",
-      "                \"lon\": 6.125587\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.58391,\n",
-      "                    \"lon\": 6.1227\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.58016,\n",
-      "                    \"lon\": 6.12848\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.58343,\n",
-      "                        \"lon\": 6.12365\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 569,\n",
-      "            \"detourDistance\": 1332\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"qiC-70P9qBJBgk7CUrxcXg\",\n",
-      "            \"score\": 2.9962821007,\n",
-      "            \"dist\": 506.978272,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000128574-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Monsieur Mai Pho & Sushi\",\n",
-      "                \"phone\": \"+352 691 576 712\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315148\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"sushi\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"sushi\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Place L\\u00e9on XIII\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1929\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Place L\\u00e9on XIII, L-1929 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.596817,\n",
-      "                \"lon\": 6.137544\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59772,\n",
-      "                    \"lon\": 6.13616\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59592,\n",
-      "                    \"lon\": 6.13893\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59693,\n",
-      "                        \"lon\": 6.13763\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 581,\n",
-      "            \"detourDistance\": 1640\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"qfqIK7C3VSujy9jMI5D78Q\",\n",
-      "            \"score\": 2.9945101738,\n",
-      "            \"dist\": 929.656148,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000042980-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Desi Grill-Tulsi-Lila Dhar Sati\",\n",
-      "                \"phone\": \"+352 40 53 57\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315020\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"grill\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"grill\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"91\",\n",
-      "                \"streetName\": \"M\\u00fchlenweg\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Gaasperech\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1649\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"91 M\\u00fchlenweg, L-1649 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.59331,\n",
-      "                \"lon\": 6.129196\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59421,\n",
-      "                    \"lon\": 6.12781\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59241,\n",
-      "                    \"lon\": 6.13058\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59334,\n",
-      "                        \"lon\": 6.12907\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 618,\n",
-      "            \"detourDistance\": 1212\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"2hLjbAHExr1gLSenSXYEXA\",\n",
-      "            \"score\": 2.9943628311,\n",
-      "            \"dist\": 964.517167,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000018906-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Class 'Croute\",\n",
-      "                \"phone\": \"+352 26 64 82 82\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"97\",\n",
-      "                \"streetName\": \"M\\u00fchlenweg\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Gaasperech\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1649\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"97 M\\u00fchlenweg, L-1649 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.593101,\n",
-      "                \"lon\": 6.128953\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.594,\n",
-      "                    \"lon\": 6.12757\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.5922,\n",
-      "                    \"lon\": 6.13034\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59321,\n",
-      "                        \"lon\": 6.12888\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 618,\n",
-      "            \"detourDistance\": 1212\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"BuRYBFA2vB4gkrO2UOB9Nw\",\n",
-      "            \"score\": 2.9889726639,\n",
-      "            \"dist\": 2214.370428,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006276-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Bubblies\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315075\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.bubblies.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"organic\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"organic\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"25\",\n",
-      "                \"streetName\": \"Boulevard F.W. Raiffeisen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gasperich\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2411\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"25 Boulevard F.W. Raiffeisen, L-2411 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.582038,\n",
-      "                \"lon\": 6.125587\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.58294,\n",
-      "                    \"lon\": 6.1242\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.58114,\n",
-      "                    \"lon\": 6.12697\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.58187,\n",
-      "                        \"lon\": 6.12531\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 632,\n",
-      "            \"detourDistance\": 1332\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"egWtcX9s3Ek6FEyTUPNlAQ\",\n",
-      "            \"score\": 2.9959642887,\n",
-      "            \"dist\": 583.233427,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008741-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Lisboa II\",\n",
-      "                \"phone\": \"+352 26 48 18 80\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315032\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.lisboa.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"mediterranean\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"mediterranean\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"90\",\n",
-      "                \"streetName\": \"Dernier Sol\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2543\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"90 Dernier Sol, L-2543 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.595291,\n",
-      "                \"lon\": 6.13662\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59619,\n",
-      "                    \"lon\": 6.13523\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59439,\n",
-      "                    \"lon\": 6.13801\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59531,\n",
-      "                        \"lon\": 6.13688\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 647,\n",
-      "            \"detourDistance\": 2164\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"OLCN91rI7G0QKxmVOu7SMQ\",\n",
-      "            \"score\": 2.9889726639,\n",
-      "            \"dist\": 2214.370428,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008738-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Sushi Shop\",\n",
-      "                \"phone\": \"+352 27 04 57\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"Sushi Shop\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315148\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"sushi\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"sushi\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"25\",\n",
-      "                \"streetName\": \"Boulevard F.W. Raiffeisen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gasperich\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2411\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"25 Boulevard F.W. Raiffeisen, L-2411 Luxembourg (Boulevard de Kockelscheuer)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.582038,\n",
-      "                \"lon\": 6.125587\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.58391,\n",
-      "                    \"lon\": 6.12271\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.58017,\n",
-      "                    \"lon\": 6.12847\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.58334,\n",
-      "                        \"lon\": 6.12352\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 647,\n",
-      "            \"detourDistance\": 1332\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"BD0ZP6ppWM8h5KPnTh-i_w\",\n",
-      "            \"score\": 2.9945628643,\n",
-      "            \"dist\": 917.125986,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000475369-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Fringal\",\n",
-      "                \"phone\": \"+352 49 48 33\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"87\",\n",
-      "                \"streetName\": \"M\\u00fchlenweg\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Gaasperech\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1649\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"87 M\\u00fchlenweg, L-1649 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.593414,\n",
-      "                \"lon\": 6.129245\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59431,\n",
-      "                    \"lon\": 6.12786\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59251,\n",
-      "                    \"lon\": 6.13063\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.59344,\n",
-      "                        \"lon\": 6.12915\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 667,\n",
-      "            \"detourDistance\": 1212\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"EVAsQHRfmvgs8UO1ZDSIxA\",\n",
-      "            \"score\": 2.9964623451,\n",
-      "            \"dist\": 463.682878,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000022284-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Il Nouvo Stuff\",\n",
-      "                \"phone\": \"+352 26 20 32 62\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"109\",\n",
-      "                \"streetName\": \"Rue de Bonnevoie\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Bonnevoie Sud\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1260\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"109 Rue de Bonnevoie, L-1260 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.59799,\n",
-      "                \"lon\": 6.13792\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.59889,\n",
-      "                    \"lon\": 6.13653\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.59709,\n",
-      "                    \"lon\": 6.13931\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.5979,\n",
-      "                        \"lon\": 6.13775\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 685,\n",
-      "            \"detourDistance\": 1788\n",
-      "        }\n",
-      "    ]\n",
-      "}\n",
-      "execute function call: \n",
-      "Tue Feb 27 12:54:31 2024       \n",
-      "+---------------------------------------------------------------------------------------+\n",
-      "| NVIDIA-SMI 545.29.02              Driver Version: 545.29.02    CUDA Version: 12.3     |\n",
-      "|-----------------------------------------+----------------------+----------------------+\n",
-      "| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |\n",
-      "| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |\n",
-      "|                                         |                      |               MIG M. |\n",
-      "|=========================================+======================+======================|\n",
-      "|   0  NVIDIA GeForce RTX 4090        Off | 00000000:01:00.0 Off |                  Off |\n",
-      "| 31%   51C    P2              78W / 450W |  23485MiB / 24564MiB |      0%      Default |\n",
-      "|                                         |                      |                  N/A |\n",
-      "+-----------------------------------------+----------------------+----------------------+\n",
-      "                                                                                         \n",
-      "+---------------------------------------------------------------------------------------+\n",
-      "| Processes:                                                                            |\n",
-      "|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |\n",
-      "|        ID   ID                                                             Usage      |\n",
-      "|=======================================================================================|\n",
-      "+---------------------------------------------------------------------------------------+\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "huggingface/tokenizers: The current process just got forked, after parallelism has already been used. Disabling parallelism to avoid deadlocks...\n",
-      "To disable this warning, you can either:\n",
-      "\t- Avoid using `tokenizers` before the fork if possible\n",
-      "\t- Explicitly set the environment variable TOKENIZERS_PARALLELISM=(true | false)\n"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "# might be deleted\n",
     "# Compute a Simple equation\n",
@@ -3357,7 +601,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 62,
+   "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -3373,7 +617,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 63,
+   "execution_count": null,
    "metadata": {
     "id": "yAJI0WyOLE8G"
    },
@@ -3400,7 +644,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 74,
+   "execution_count": null,
    "metadata": {
     "id": "ViCEgogaENNV"
    },
@@ -3481,7 +725,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 75,
+   "execution_count": null,
    "metadata": {
     "id": "9WQlYePVLrTN"
    },
@@ -3520,7 +764,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 76,
+   "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -3546,5245 +790,11 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 77,
+   "execution_count": null,
    "metadata": {
     "collapsed": true
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Running on local URL:  http://0.0.0.0:7860\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "/usr/local/lib/python3.10/dist-packages/transformers/pipelines/base.py:1101: UserWarning: You seem to be using the pipelines sequentially on GPU. In order to maximize efficiency please use a dataset\n",
-      "  warnings.warn(\n",
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "\n",
-      "Could not create share link. Please check your internet connection or our status page: https://status.gradio.app.\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "2024/02/27 12:55:51 [W] [service.go:132] login to server failed: dial tcp 44.237.78.176:7000: i/o timeout\n"
-     ]
-    },
-    {
-     "data": {
-      "text/html": [
-       "<div><iframe src=\"http://localhost:7860/\" width=\"100%\" height=\"500\" allow=\"autoplay; camera; microphone; clipboard-read; clipboard-write;\" frameborder=\"0\" allowfullscreen></iframe></div>"
-      ],
-      "text/plain": [
-       "<IPython.core.display.HTML object>"
-      ]
-     },
-     "metadata": {},
-     "output_type": "display_data"
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "49.3579272\n",
-      "{\n",
-      "    \"summary\": {\n",
-      "        \"query\": \"fastfood\",\n",
-      "        \"queryType\": \"NON_NEAR\",\n",
-      "        \"queryTime\": 310,\n",
-      "        \"numResults\": 20,\n",
-      "        \"offset\": 0,\n",
-      "        \"totalResults\": 20,\n",
-      "        \"fuzzyLevel\": 1,\n",
-      "        \"geobiasCountry\": \"LU\"\n",
-      "    },\n",
-      "    \"results\": [\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"J5-wTaFqeNCotY27tp8L2Q\",\n",
-      "            \"score\": 2.7918899059,\n",
-      "            \"dist\": 29973.83986,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009013479571-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"O'Tacos\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.facebook.com/Otacos-Thionville-1898601700407644/\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"5\",\n",
-      "                \"streetName\": \"Rue des Auriges\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"5 Rue des Auriges, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.356882,\n",
-      "                \"lon\": 6.140217\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35778,\n",
-      "                    \"lon\": 6.13884\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35598,\n",
-      "                    \"lon\": 6.1416\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35703,\n",
-      "                        \"lon\": 6.14027\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 104,\n",
-      "            \"detourDistance\": -735\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"HEsU0Rm8pAr40ltWbVG-jA\",\n",
-      "            \"score\": 2.7919890881,\n",
-      "            \"dist\": 29964.150929,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250007000429890-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"KFC\",\n",
-      "                \"phone\": \"+33 3 82 84 24 32\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"KFC\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.kfc.fr/nous-trouver?search=thionville\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"38\",\n",
-      "                \"streetName\": \"Route d'Esch-sur-Alzette\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"38 Route d'Esch-sur-Alzette, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.357122,\n",
-      "                \"lon\": 6.138246\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35802,\n",
-      "                    \"lon\": 6.13687\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35622,\n",
-      "                    \"lon\": 6.13963\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35721,\n",
-      "                        \"lon\": 6.13827\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 104,\n",
-      "            \"detourDistance\": -735\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"d0jdUVfdDPmfDQMFhmmM1w\",\n",
-      "            \"score\": 2.7937262058,\n",
-      "            \"dist\": 29794.145472,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009002871366-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Snack Les Fr\\u00e8res\",\n",
-      "                \"phone\": \"+33 3 54 54 39 90\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.kebab-frites.com/kebab/snack-les-freres-thionville.html\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"9\",\n",
-      "                \"streetName\": \"Rue du Cygne\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"9 Rue du Cygne, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.357798,\n",
-      "                \"lon\": 6.164267\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.3587,\n",
-      "                    \"lon\": 6.16289\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.3569,\n",
-      "                    \"lon\": 6.16565\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35787,\n",
-      "                        \"lon\": 6.16411\n",
-      "                    }\n",
-      "                },\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35785,\n",
-      "                        \"lon\": 6.16409\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 190,\n",
-      "            \"detourDistance\": -819\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"QFw9XgIabqFwC5gux58xMA\",\n",
-      "            \"score\": 2.7928469181,\n",
-      "            \"dist\": 29880.276022,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009007921561-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"La Broche Tournante\",\n",
-      "                \"phone\": \"+33 3 54 30 59 78\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"37\",\n",
-      "                \"streetName\": \"Place Notre-Dame\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"37 Place Notre-Dame, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.356992,\n",
-      "                \"lon\": 6.160815\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35789,\n",
-      "                    \"lon\": 6.15943\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35609,\n",
-      "                    \"lon\": 6.1622\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35699,\n",
-      "                        \"lon\": 6.16068\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 208,\n",
-      "            \"detourDistance\": -532\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"o8pZSwuUipodrbeO04fRHw\",\n",
-      "            \"score\": 2.7938592434,\n",
-      "            \"dist\": 29781.106564,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250007000340896-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"La Frite'Rit Belge\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"lafriteritbelge.fr/\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Rue du Vieux Coll\\u00e8ge\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"1 Rue du Vieux Coll\\u00e8ge, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.357939,\n",
-      "                \"lon\": 6.165582\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35884,\n",
-      "                    \"lon\": 6.1642\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35704,\n",
-      "                    \"lon\": 6.16696\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35786,\n",
-      "                        \"lon\": 6.16563\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 285,\n",
-      "            \"detourDistance\": -725\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"upGzfpouzehTAeWCv-ewVw\",\n",
-      "            \"score\": 2.79468894,\n",
-      "            \"dist\": 29699.674575,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009034318871-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Burger Brothers\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"4\",\n",
-      "                \"streetName\": \"Rue du Man\\u00e8ge\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"4 Rue du Man\\u00e8ge, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.358682,\n",
-      "                \"lon\": 6.16608\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35958,\n",
-      "                    \"lon\": 6.1647\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35778,\n",
-      "                    \"lon\": 6.16746\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35876,\n",
-      "                        \"lon\": 6.16616\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 299,\n",
-      "            \"detourDistance\": -699\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"EOcHRDuPCR0ZbAb_rtbb9Q\",\n",
-      "            \"score\": 2.9929280281,\n",
-      "            \"dist\": 1302.156306,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442009000482378-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Nj\\u00f6rd\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.njordfood.com\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"5\",\n",
-      "                \"streetName\": \"Rue Alphonse Weicker\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2721\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"5 Rue Alphonse Weicker, L-2721 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.633276,\n",
-      "                \"lon\": 6.169018\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.63418,\n",
-      "                    \"lon\": 6.16763\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.63238,\n",
-      "                    \"lon\": 6.17041\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.63334,\n",
-      "                        \"lon\": 6.16875\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 322,\n",
-      "            \"detourDistance\": -327\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"P7cK0A0U7NHHFa-HQLoDzw\",\n",
-      "            \"score\": 2.9929280281,\n",
-      "            \"dist\": 1302.156306,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442009000466405-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"OrientX\",\n",
-      "                \"phone\": \"+352 26 68 71 95\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.orientx.com\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"5\",\n",
-      "                \"streetName\": \"Rue Alphonse Weicker\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2721\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"5 Rue Alphonse Weicker, L-2721 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.633276,\n",
-      "                \"lon\": 6.169018\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.63418,\n",
-      "                    \"lon\": 6.16763\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.63238,\n",
-      "                    \"lon\": 6.17041\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.63281,\n",
-      "                        \"lon\": 6.16918\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 322,\n",
-      "            \"detourDistance\": -327\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"05XhzFhoqGBF9Y9L5_zagA\",\n",
-      "            \"score\": 2.9929280281,\n",
-      "            \"dist\": 1302.156306,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442009000481237-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Boonchu\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.boonchu.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"5\",\n",
-      "                \"streetName\": \"Rue Alphonse Weicker\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2721\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"5 Rue Alphonse Weicker, L-2721 Luxembourg (Rue Carlo Hemmer)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.633276,\n",
-      "                \"lon\": 6.169018\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.63443,\n",
-      "                    \"lon\": 6.16724\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.63213,\n",
-      "                    \"lon\": 6.17079\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.63432,\n",
-      "                        \"lon\": 6.16976\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 322,\n",
-      "            \"detourDistance\": -327\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"c1KAvrUzby63n2RIiYO0tw\",\n",
-      "            \"score\": 2.9929280281,\n",
-      "            \"dist\": 1302.156306,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442009000700203-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Bagelstein\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.bagelstein.com/\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"5\",\n",
-      "                \"streetName\": \"Rue Alphonse Weicker\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2721\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"5 Rue Alphonse Weicker, L-2721 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.633276,\n",
-      "                \"lon\": 6.169018\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.63418,\n",
-      "                    \"lon\": 6.16763\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.63238,\n",
-      "                    \"lon\": 6.17041\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.63334,\n",
-      "                        \"lon\": 6.16875\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 322,\n",
-      "            \"detourDistance\": -327\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"OKMwknKgkmDMGDGqa8EWlA\",\n",
-      "            \"score\": 2.9928684235,\n",
-      "            \"dist\": 1316.103768,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442007000008131-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Pokawa Luxembourg\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"5\",\n",
-      "                \"streetName\": \"Rue Alphonse Weicker\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2721\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"5 Rue Alphonse Weicker, L-2721 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.633273,\n",
-      "                \"lon\": 6.169184\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.63417,\n",
-      "                    \"lon\": 6.1678\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.63237,\n",
-      "                    \"lon\": 6.17057\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.63277,\n",
-      "                        \"lon\": 6.16923\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 340,\n",
-      "            \"detourDistance\": -327\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"ce9Oh8jicdG-SdfWZbnCvg\",\n",
-      "            \"score\": 2.7928569317,\n",
-      "            \"dist\": 29879.291216,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009013675482-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"My Kebab\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"77\",\n",
-      "                \"streetName\": \"Boucle de la Milliaire\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"77 Boucle de la Milliaire, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.357259,\n",
-      "                \"lon\": 6.148279\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35816,\n",
-      "                    \"lon\": 6.1469\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35636,\n",
-      "                    \"lon\": 6.14966\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35731,\n",
-      "                        \"lon\": 6.14828\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 372,\n",
-      "            \"detourDistance\": -355\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"G7wr-aIRzTa_ly2Hk7CrJA\",\n",
-      "            \"score\": 2.7942409515,\n",
-      "            \"dist\": 29743.666751,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009036716991-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Hakan\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"snack-hakan.fr\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"15\",\n",
-      "                \"streetName\": \"Rue du Quartier\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"15 Rue du Quartier, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.358272,\n",
-      "                \"lon\": 6.165421\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35917,\n",
-      "                    \"lon\": 6.16404\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35737,\n",
-      "                    \"lon\": 6.1668\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35846,\n",
-      "                        \"lon\": 6.16535\n",
-      "                    }\n",
-      "                },\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35836,\n",
-      "                        \"lon\": 6.16524\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 404,\n",
-      "            \"detourDistance\": -541\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"Dug3PyrwdEqJhHpQs9n-Sg\",\n",
-      "            \"score\": 2.7930526733,\n",
-      "            \"dist\": 29860.138671,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009036805165-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"McDonald's Thionville\",\n",
-      "                \"phone\": \"+33 3 82 82 88 62\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"McDonald's\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.mcdonalds.fr/restaurants/mcdonalds-thionville/238\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Rue des Auriges\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"7 Rue des Auriges, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.358083,\n",
-      "                \"lon\": 6.137971\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35938,\n",
-      "                    \"lon\": 6.13598\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35679,\n",
-      "                    \"lon\": 6.13996\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35834,\n",
-      "                        \"lon\": 6.13989\n",
-      "                    }\n",
-      "                },\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35834,\n",
-      "                        \"lon\": 6.13992\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 406,\n",
-      "            \"detourDistance\": -290\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"Sg2atxRMf-wv6odY3KF7cQ\",\n",
-      "            \"score\": 2.7908477783,\n",
-      "            \"dist\": 30075.533727,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250007000090300-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Waffle Factory\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.wafflefactory.com\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetName\": \"Rue du Maillet\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"Rue du Maillet, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.355858,\n",
-      "                \"lon\": 6.141727\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35676,\n",
-      "                    \"lon\": 6.14035\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35496,\n",
-      "                    \"lon\": 6.14311\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35606,\n",
-      "                        \"lon\": 6.14175\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 423,\n",
-      "            \"detourDistance\": 85\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"3k-NbbWRtaHo7roLU6scJQ\",\n",
-      "            \"score\": 2.7949197292,\n",
-      "            \"dist\": 29677.007087,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250007000342277-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Shamiana\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.shamiana.fr/\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"3\",\n",
-      "                \"streetName\": \"Rue du Man\\u00e8ge\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"3 Rue du Man\\u00e8ge, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.358887,\n",
-      "                \"lon\": 6.166133\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35979,\n",
-      "                    \"lon\": 6.16475\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35799,\n",
-      "                    \"lon\": 6.16751\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35882,\n",
-      "                        \"lon\": 6.16604\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 467,\n",
-      "            \"detourDistance\": -563\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"iCjCpuzTabLyYZmeXwnhYw\",\n",
-      "            \"score\": 2.7946798801,\n",
-      "            \"dist\": 29700.556197,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:250009002198582-FR\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Bosphore\",\n",
-      "                \"phone\": \"+33 3 82 53 23 11\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"10\",\n",
-      "                \"streetName\": \"Rue de Mersch\",\n",
-      "                \"municipality\": \"Thionville\",\n",
-      "                \"countrySecondarySubdivision\": \"Moselle\",\n",
-      "                \"countrySubdivision\": \"Grand Est\",\n",
-      "                \"countrySubdivisionName\": \"Grand Est\",\n",
-      "                \"countrySubdivisionCode\": \"GES\",\n",
-      "                \"postalCode\": \"57100\",\n",
-      "                \"countryCode\": \"FR\",\n",
-      "                \"country\": \"France\",\n",
-      "                \"countryCodeISO3\": \"FRA\",\n",
-      "                \"freeformAddress\": \"10 Rue de Mersch, 57100 Thionville\",\n",
-      "                \"localName\": \"Thionville\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.358713,\n",
-      "                \"lon\": 6.167617\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.35961,\n",
-      "                    \"lon\": 6.16624\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.35781,\n",
-      "                    \"lon\": 6.169\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.35881,\n",
-      "                        \"lon\": 6.16768\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 518,\n",
-      "            \"detourDistance\": -597\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"HTdpLLJVPT1h3n1dOor4tw\",\n",
-      "            \"score\": 2.9481916428,\n",
-      "            \"dist\": 10303.527516,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442007000004487-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"McDonald's Aire de Berchem\",\n",
-      "                \"phone\": \"+352 27 51 72 08\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"McDonald's\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.mcd.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetName\": \"Autoroute Aire de Berchem\",\n",
-      "                \"municipalitySubdivision\": \"Berchem\",\n",
-      "                \"municipality\": \"Roeser\",\n",
-      "                \"countrySubdivision\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionName\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionCode\": \"ES\",\n",
-      "                \"postalCode\": \"L-3325\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"Autoroute Aire de Berchem, L-3325 Berchem\",\n",
-      "                \"localName\": \"Berchem\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.542044,\n",
-      "                \"lon\": 6.120253\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.54294,\n",
-      "                    \"lon\": 6.11887\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.54114,\n",
-      "                    \"lon\": 6.12164\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.54164,\n",
-      "                        \"lon\": 6.12071\n",
-      "                    }\n",
-      "                },\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.54192,\n",
-      "                        \"lon\": 6.12051\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 556,\n",
-      "            \"detourDistance\": 3702\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"fuGJqfUtpIURKkOLEygD7A\",\n",
-      "            \"score\": 2.9483151436,\n",
-      "            \"dist\": 10282.039842,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442009000132033-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Eat N'Break\",\n",
-      "                \"phone\": \"+352 52 36 70\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetName\": \"Autoroute Aire de Berchem\",\n",
-      "                \"municipalitySubdivision\": \"Berchem\",\n",
-      "                \"municipality\": \"Roeser\",\n",
-      "                \"countrySubdivision\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionName\": \"Esch-sur-Alzette\",\n",
-      "                \"countrySubdivisionCode\": \"ES\",\n",
-      "                \"postalCode\": \"L-3325\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"Autoroute Aire de Berchem, L-3325 Berchem\",\n",
-      "                \"localName\": \"Berchem\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.54221,\n",
-      "                \"lon\": 6.120355\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.54311,\n",
-      "                    \"lon\": 6.11897\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.54131,\n",
-      "                    \"lon\": 6.12174\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.54201,\n",
-      "                        \"lon\": 6.12105\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 556,\n",
-      "            \"detourDistance\": 3702\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"FpU4iOH9RkRbB0nWvVhOOQ\",\n",
-      "            \"score\": 2.9915668964,\n",
-      "            \"dist\": 1619.117073,\n",
-      "            \"query\": \"fastfood\",\n",
-      "            \"info\": \"search:ta:442007000007351-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Happy Quick\",\n",
-      "                \"phone\": \"+352 27 04 83 30\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"Quick\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"15\",\n",
-      "                \"streetName\": \"Rue Edward Steichen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Neudorf\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2540\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"15 Rue Edward Steichen, L-2540 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.631338,\n",
-      "                \"lon\": 6.173509\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.63224,\n",
-      "                    \"lon\": 6.17212\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.63044,\n",
-      "                    \"lon\": 6.1749\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.63184,\n",
-      "                        \"lon\": 6.17398\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 612,\n",
-      "            \"detourDistance\": 257\n",
-      "        }\n",
-      "    ]\n",
-      "}\n",
-      " \n",
-      "Along the route to thionville, there is the O'Tacos at 5 Rue des Auriges, 57100 Thionville that would represent a detour of 1 minutes. \n",
-      "Along the route to thionville, there is the KFC at 38 Route d'Esch-sur-Alzette, 57100 Thionville that would represent a detour of 1 minutes. \n",
-      "Along the route to thionville, there is the Snack Les Frères at 9 Rue du Cygne, 57100 Thionville that would represent a detour of 3 minutes. \n",
-      "Along the route to thionville, there is the La Broche Tournante at 37 Place Notre-Dame, 57100 Thionville that would represent a detour of 3 minutes. \n",
-      "Along the route to thionville, there is the La Frite'Rit Belge at 1 Rue du Vieux Collège, 57100 Thionville that would represent a detour of 4 minutes. \n",
-      "Along the route to thionville, there is the Burger Brothers at 4 Rue du Manège, 57100 Thionville that would represent a detour of 4 minutes. \n",
-      "Along the route to thionville, there is the Njörd at 5 Rue Alphonse Weicker, L-2721 Luxembourg that would represent a detour of 5 minutes. \n",
-      "Along the route to thionville, there is the OrientX at 5 Rue Alphonse Weicker, L-2721 Luxembourg that would represent a detour of 5 minutes. \n",
-      "Along the route to thionville, there is the Boonchu at 5 Rue Alphonse Weicker, L-2721 Luxembourg (Rue Carlo Hemmer) that would represent a detour of 5 minutes. \n",
-      "Along the route to thionville, there is the Bagelstein at 5 Rue Alphonse Weicker, L-2721 Luxembourg that would represent a detour of 5 minutes. \n",
-      "Along the route to thionville, there is the Pokawa Luxembourg at 5 Rue Alphonse Weicker, L-2721 Luxembourg that would represent a detour of 5 minutes. \n",
-      "Along the route to thionville, there is the My Kebab at 77 Boucle de la Milliaire, 57100 Thionville that would represent a detour of 6 minutes. \n",
-      "Along the route to thionville, there is the Hakan at 15 Rue du Quartier, 57100 Thionville that would represent a detour of 6 minutes. \n",
-      "Along the route to thionville, there is the McDonald's Thionville at 7 Rue des Auriges, 57100 Thionville that would represent a detour of 6 minutes. \n",
-      "Along the route to thionville, there is the Waffle Factory at Rue du Maillet, 57100 Thionville that would represent a detour of 7 minutes. \n",
-      "Along the route to thionville, there is the Shamiana at 3 Rue du Manège, 57100 Thionville that would represent a detour of 7 minutes. \n",
-      "Along the route to thionville, there is the Bosphore at 10 Rue de Mersch, 57100 Thionville that would represent a detour of 8 minutes. \n",
-      "Along the route to thionville, there is the McDonald's Aire de Berchem at Autoroute Aire de Berchem, L-3325 Berchem that would represent a detour of 9 minutes. \n",
-      "Along the route to thionville, there is the Eat N'Break at Autoroute Aire de Berchem, L-3325 Berchem that would represent a detour of 9 minutes. \n",
-      "Along the route to thionville, there is the Happy Quick at 15 Rue Edward Steichen, L-2540 Luxembourg that would represent a detour of 10 minutes.\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "The La broche tournante La Brioche Doree is 1020 meters away. The La broche tournante Brioche Dorée is 3343 meters away. The La broche tournante Brioche Doree Luxembourg is 3350 meters away\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "La branche tournante\n",
-      "'NoneType' object has no attribute 'latitude'\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "macdonalds in thionville\n",
-      "'NoneType' object has no attribute 'latitude'\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "macdonalds in thionville\n",
-      "'NoneType' object has no attribute 'latitude'\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "macdonalds in yutz\n",
-      "'NoneType' object has no attribute 'latitude'\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "McDonald's in yutz\n",
-      "'NoneType' object has no attribute 'latitude'\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "McDonald's in yutz\n",
-      "'NoneType' object has no attribute 'latitude'\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "yutz\n",
-      "The route to go to yutz is 47.93 km and 42 minutes. Leaving now, the arrival time is estimated at 08:41 \n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "The macdonald's McDonald's is 3155 meters away. The macdonald's McDonald's Luxembourg La Gare is 3264 meters away. The macdonald's McDonald's Bereldange is 3447 meters away. The macdonald's McDonald's is 5493 meters away. The macdonald's McDonald's Belle Étoile is 7880 meters away\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "49.3615058\n",
-      "{\n",
-      "    \"summary\": {\n",
-      "        \"query\": \"macdonald\",\n",
-      "        \"queryType\": \"NON_NEAR\",\n",
-      "        \"queryTime\": 309,\n",
-      "        \"numResults\": 0,\n",
-      "        \"offset\": 0,\n",
-      "        \"totalResults\": 0,\n",
-      "        \"fuzzyLevel\": 1,\n",
-      "        \"geobiasCountry\": \"LU\"\n",
-      "    },\n",
-      "    \"results\": []\n",
-      "}\n",
-      "\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "49.5999681\n",
-      "{\n",
-      "    \"summary\": {\n",
-      "        \"query\": \"macdonald\",\n",
-      "        \"queryType\": \"NON_NEAR\",\n",
-      "        \"queryTime\": 106,\n",
-      "        \"numResults\": 2,\n",
-      "        \"offset\": 0,\n",
-      "        \"totalResults\": 2,\n",
-      "        \"fuzzyLevel\": 1,\n",
-      "        \"geobiasCountry\": \"LU\"\n",
-      "    },\n",
-      "    \"results\": [\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"OyzvfR4Xc1-MXylBh6l2Gw\",\n",
-      "            \"score\": 2.5226404667,\n",
-      "            \"dist\": 3875.3497,\n",
-      "            \"query\": \"macdonald\",\n",
-      "            \"info\": \"search:ta:442007000006344-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"McDonald's\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"McDonald's\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Rue de Bonnevoie\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gare\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1260\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Rue de Bonnevoie, L-1260 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.603161,\n",
-      "                \"lon\": 6.133506\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.60406,\n",
-      "                    \"lon\": 6.13212\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.60226,\n",
-      "                    \"lon\": 6.13489\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.60305,\n",
-      "                        \"lon\": 6.13341\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 364,\n",
-      "            \"detourDistance\": 1190\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"kSzWs0FFg0Xjuzl9zJ_lkQ\",\n",
-      "            \"score\": 2.5222420692,\n",
-      "            \"dist\": 3976.548071,\n",
-      "            \"query\": \"macdonald\",\n",
-      "            \"info\": \"search:ta:442009000328706-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"McDonald's Luxembourg La Gare\",\n",
-      "                \"phone\": \"+352 26 19 60 24\",\n",
-      "                \"brands\": [\n",
-      "                    {\n",
-      "                        \"name\": \"McDonald's\"\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315015\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"mcd.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"fast food\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"fast food\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"49\",\n",
-      "                \"streetName\": \"Avenue de la Gare\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Gare\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1611\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"49 Avenue de la Gare, L-1611 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.602052,\n",
-      "                \"lon\": 6.133262\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.60295,\n",
-      "                    \"lon\": 6.13187\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.60115,\n",
-      "                    \"lon\": 6.13465\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.60205,\n",
-      "                        \"lon\": 6.13312\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 494,\n",
-      "            \"detourDistance\": 1531\n",
-      "        }\n",
-      "    ]\n",
-      "}\n",
-      " \n",
-      "Along the route to luxembourg gare, there is the McDonald's at 1 Rue de Bonnevoie, L-1260 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to luxembourg gare, there is the McDonald's Luxembourg La Gare at 49 Avenue de la Gare, L-1611 Luxembourg that would represent a detour of 8 minutes.\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "McDonald's\n",
-      "The route to go to McDonald's is 595.53 km and 5 hours and 24 minutes. Leaving now, the arrival time is estimated at 13:24 \n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "49.5961082\n",
-      "{\n",
-      "    \"summary\": {\n",
-      "        \"query\": \"restaurant\",\n",
-      "        \"queryType\": \"NON_NEAR\",\n",
-      "        \"queryTime\": 325,\n",
-      "        \"numResults\": 20,\n",
-      "        \"offset\": 0,\n",
-      "        \"totalResults\": 20,\n",
-      "        \"fuzzyLevel\": 1,\n",
-      "        \"geobiasCountry\": \"LU\"\n",
-      "    },\n",
-      "    \"results\": [\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"RdKRrs19psk-CwmVUIQhQg\",\n",
-      "            \"score\": 2.997658968,\n",
-      "            \"dist\": 174.634461,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000480886-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Eischen Paul Restaurant-Traiteur\",\n",
-      "                \"phone\": \"+352 26 43 13 64\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"45\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Kiirchbierg\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"45 Avenue John Fitzgerald Kennedy, L-1855 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.6248,\n",
-      "                \"lon\": 6.1588\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.6257,\n",
-      "                    \"lon\": 6.15741\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6239,\n",
-      "                    \"lon\": 6.16019\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62473,\n",
-      "                        \"lon\": 6.15889\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 0,\n",
-      "            \"detourDistance\": 0\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"ujXkPgiRLdbLGrrWZ3Qu2A\",\n",
-      "            \"score\": 2.9899127483,\n",
-      "            \"dist\": 1999.969177,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008157-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Lounge Act One\",\n",
-      "                \"phone\": \"+352 27 77 02 27\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.loungeactone.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg (N51)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.619627,\n",
-      "                \"lon\": 6.143154\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62053,\n",
-      "                    \"lon\": 6.14177\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61873,\n",
-      "                    \"lon\": 6.14454\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61954,\n",
-      "                        \"lon\": 6.1432\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 100,\n",
-      "            \"detourDistance\": 734\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"45w-Gg-Mi5p1U63jTDSVyQ\",\n",
-      "            \"score\": 2.9914143085,\n",
-      "            \"dist\": 1654.4196,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008307-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Ela Greek Cuisine\",\n",
-      "                \"phone\": \"+352 26 68 46 83\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315019\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"greek\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"greek\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"37\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"37 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620217,\n",
-      "                \"lon\": 6.146253\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62112,\n",
-      "                    \"lon\": 6.14486\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61932,\n",
-      "                    \"lon\": 6.14764\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62013,\n",
-      "                        \"lon\": 6.14629\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 102,\n",
-      "            \"detourDistance\": 778\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"Bc14n1jW0t2bWC628kYRHQ\",\n",
-      "            \"score\": 2.9899840355,\n",
-      "            \"dist\": 1983.681225,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442001000002822-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Bick Stuff\",\n",
-      "                \"phone\": \"+352 26 09 47 31\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"bickstuff.lu/restaurant-bick-stuff.html\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"95\",\n",
-      "                \"streetName\": \"Rue de Clausen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Clausen\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1342\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"95 Rue de Clausen, L-1342 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.614793,\n",
-      "                \"lon\": 6.14597\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61569,\n",
-      "                    \"lon\": 6.14458\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61389,\n",
-      "                    \"lon\": 6.14736\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61485,\n",
-      "                        \"lon\": 6.14586\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 222,\n",
-      "            \"detourDistance\": 1329\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"KfRLYtAsq5X57cd2Qh2MWQ\",\n",
-      "            \"score\": 2.9891924858,\n",
-      "            \"dist\": 2164.386187,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000129532-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Tempo Restaurant\",\n",
-      "                \"phone\": \"+352 27 99 06 66\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.tempo-restaurant.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Place de l'Europe\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1490\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Place de l'Europe, L-1490 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.617973,\n",
-      "                \"lon\": 6.142219\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61887,\n",
-      "                    \"lon\": 6.14083\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61707,\n",
-      "                    \"lon\": 6.14361\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61785,\n",
-      "                        \"lon\": 6.1419\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 231,\n",
-      "            \"detourDistance\": 865\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"tCJiZbyNGTH5yEDT35IWSQ\",\n",
-      "            \"score\": 2.989374876,\n",
-      "            \"dist\": 2122.818203,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000480110-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Chez Bacano\",\n",
-      "                \"phone\": \"+352 43 18 40\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315043\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.bacano.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"seafood\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"seafood\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"59\",\n",
-      "                \"streetName\": \"Rue de Clausen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Clausen\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1342\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"59 Rue de Clausen, L-1342 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.614191,\n",
-      "                \"lon\": 6.144856\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61509,\n",
-      "                    \"lon\": 6.14347\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61329,\n",
-      "                    \"lon\": 6.14624\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61415,\n",
-      "                        \"lon\": 6.14498\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 234,\n",
-      "            \"detourDistance\": 1329\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"er7ACjGdfYqu91ostgh11w\",\n",
-      "            \"score\": 2.989430666,\n",
-      "            \"dist\": 2110.075884,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000020933-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Popkorn\",\n",
-      "                \"phone\": \"+352 26 43 21 89\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"61\",\n",
-      "                \"streetName\": \"Rue de Clausen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Clausen\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1342\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"61 Rue de Clausen, L-1342 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.6143,\n",
-      "                \"lon\": 6.144917\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.6152,\n",
-      "                    \"lon\": 6.14353\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6134,\n",
-      "                    \"lon\": 6.1463\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61424,\n",
-      "                        \"lon\": 6.14506\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 234,\n",
-      "            \"detourDistance\": 1329\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"opdjMxI2r8U7Kmo_qZnIxA\",\n",
-      "            \"score\": 2.9894311428,\n",
-      "            \"dist\": 2109.990314,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006384-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Best Grill\",\n",
-      "                \"phone\": \"+352 27 84 83 86\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315020\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"grill\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"grill\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"63\",\n",
-      "                \"streetName\": \"Rue de Clausen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Clausen\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1342\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"63 Rue de Clausen, L-1342 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.614469,\n",
-      "                \"lon\": 6.144793\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61537,\n",
-      "                    \"lon\": 6.14341\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61357,\n",
-      "                    \"lon\": 6.14618\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61464,\n",
-      "                        \"lon\": 6.14547\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 234,\n",
-      "            \"detourDistance\": 1329\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"9HF2LAt_iB1EcBxdRNqXlw\",\n",
-      "            \"score\": 2.9893784523,\n",
-      "            \"dist\": 2122.024195,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000486119-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Cl\\u00e9 de Sol A La Philharmonie\",\n",
-      "                \"phone\": \"+352 26 68 73 94\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Place de l'Europe\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1499\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Place de l'Europe, L-1499 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.618249,\n",
-      "                \"lon\": 6.142515\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61944,\n",
-      "                    \"lon\": 6.14067\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61706,\n",
-      "                    \"lon\": 6.14436\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61783,\n",
-      "                        \"lon\": 6.14424\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 236,\n",
-      "            \"detourDistance\": 915\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"l9VDu4CmJSfuyJ2GmIb4sQ\",\n",
-      "            \"score\": 2.9889614582,\n",
-      "            \"dist\": 2216.930122,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000002437-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Restaurant La Table du Belv\\u00e9d\\u00e8re\",\n",
-      "                \"phone\": \"+352 26 10 92 00\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"4\",\n",
-      "                \"streetName\": \"Place de l'Europe\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1499\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"4 Place de l'Europe, L-1499 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.61814,\n",
-      "                \"lon\": 6.141636\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61904,\n",
-      "                    \"lon\": 6.14025\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61724,\n",
-      "                    \"lon\": 6.14302\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61819,\n",
-      "                        \"lon\": 6.14176\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 237,\n",
-      "            \"detourDistance\": 923\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"EHur86oZba544sMdSAwumg\",\n",
-      "            \"score\": 2.9943678379,\n",
-      "            \"dist\": 963.334401,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000467377-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"D'Coque\",\n",
-      "                \"phone\": \"+352 43 60 60\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue L\\u00e9on Hengen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1745\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue L\\u00e9on Hengen, L-1745 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.62378,\n",
-      "                \"lon\": 6.151634\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62584,\n",
-      "                    \"lon\": 6.14845\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62172,\n",
-      "                    \"lon\": 6.15481\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62272,\n",
-      "                        \"lon\": 6.15436\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 283,\n",
-      "            \"detourDistance\": 1181\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"NyiYK4KDPzdqBRSWyY_RDw\",\n",
-      "            \"score\": 2.9905664921,\n",
-      "            \"dist\": 1850.008037,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006775-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Sixtyfour\\u00b0 Bar\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315076\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"sixtyfour.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"tapas\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"tapas\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"4\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"4 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620495,\n",
-      "                \"lon\": 6.144281\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62139,\n",
-      "                    \"lon\": 6.14289\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6196,\n",
-      "                    \"lon\": 6.14567\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62025,\n",
-      "                        \"lon\": 6.14408\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 298,\n",
-      "            \"detourDistance\": 930\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"O9hayDmQaSV3_yG7sbsKEg\",\n",
-      "            \"score\": 2.9905776978,\n",
-      "            \"dist\": 1847.425989,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006920-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Radici\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"radici.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg (Rue Johannes Kepler)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620548,\n",
-      "                \"lon\": 6.144288\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62145,\n",
-      "                    \"lon\": 6.1429\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61965,\n",
-      "                    \"lon\": 6.14568\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62026,\n",
-      "                        \"lon\": 6.14406\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 313,\n",
-      "            \"detourDistance\": 1069\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"kjG5XshDoYxwO7bXw3u45w\",\n",
-      "            \"score\": 2.9896290302,\n",
-      "            \"dist\": 2064.862201,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000002087-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"L'Osteria Luxembourg\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315036\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.losteria.net\",\n",
-      "                \"categories\": [\n",
-      "                    \"pizza\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"pizza\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620088,\n",
-      "                \"lon\": 6.142382\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62099,\n",
-      "                    \"lon\": 6.14099\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61919,\n",
-      "                    \"lon\": 6.14377\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62013,\n",
-      "                        \"lon\": 6.1425\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 349,\n",
-      "            \"detourDistance\": 876\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"PKlheqd5C5r9GLc4o8-JIQ\",\n",
-      "            \"score\": 2.9894006252,\n",
-      "            \"dist\": 2116.991012,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008182-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"C\\u00f4t\\u00e9 Sushi Infinity\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315148\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"cotesushi.com\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"sushi\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"sushi\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergruenewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"7 Rue du Fort Niedergruenewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.619794,\n",
-      "                \"lon\": 6.141984\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62069,\n",
-      "                    \"lon\": 6.1406\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61889,\n",
-      "                    \"lon\": 6.14337\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62007,\n",
-      "                        \"lon\": 6.14162\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 419,\n",
-      "            \"detourDistance\": 986\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"GRQxCm-Xv9DCSIbJjyuRBA\",\n",
-      "            \"score\": 2.9944090843,\n",
-      "            \"dist\": 953.544314,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000066075-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"La Boqueria\",\n",
-      "                \"phone\": \"+352 26 43 04 32\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315044\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"spanish\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"spanish\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue \\u00c9rasme\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1468\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue \\u00c9rasme, L-1468 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.622898,\n",
-      "                \"lon\": 6.151979\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62394,\n",
-      "                    \"lon\": 6.15038\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62186,\n",
-      "                    \"lon\": 6.15358\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62189,\n",
-      "                        \"lon\": 6.15159\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 428,\n",
-      "            \"detourDistance\": 833\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"uErN_Aj5l4GFoWcAw2qpNQ\",\n",
-      "            \"score\": 2.9944090843,\n",
-      "            \"dist\": 953.544314,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000471125-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"El Barrio Restaurante Y Tapas Bar\",\n",
-      "                \"phone\": \"+352 26 43 15 03\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315076\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.elbarrio.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"tapas\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"tapas\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue \\u00c9rasme\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1468\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue \\u00c9rasme, L-1468 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.622898,\n",
-      "                \"lon\": 6.151979\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.624,\n",
-      "                    \"lon\": 6.15028\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6218,\n",
-      "                    \"lon\": 6.15367\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62182,\n",
-      "                        \"lon\": 6.15166\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 428,\n",
-      "            \"detourDistance\": 833\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"5pJGvSwxSB60hAv_cG8r0w\",\n",
-      "            \"score\": 2.9911842346,\n",
-      "            \"dist\": 1707.680749,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006004-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Dans Le Noir ? Luxembourg\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315041\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"luxembourg.danslenoir.com/\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"roadside\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"roadside\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620922,\n",
-      "                \"lon\": 6.145488\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62182,\n",
-      "                    \"lon\": 6.1441\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62002,\n",
-      "                    \"lon\": 6.14688\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.6207,\n",
-      "                        \"lon\": 6.14558\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 492,\n",
-      "            \"detourDistance\": 1336\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"HFrHOdjPp87z5PnoVIsSUw\",\n",
-      "            \"score\": 2.9906308651,\n",
-      "            \"dist\": 1835.266178,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006003-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"De Feierwon\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"defeierwon.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg (Rue Johannes Kepler)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620396,\n",
-      "                \"lon\": 6.144454\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.6213,\n",
-      "                    \"lon\": 6.14307\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6195,\n",
-      "                    \"lon\": 6.14584\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62012,\n",
-      "                        \"lon\": 6.14423\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 492,\n",
-      "            \"detourDistance\": 1336\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"VR7MqfSSIVfHBkdHI_K14g\",\n",
-      "            \"score\": 2.9911601543,\n",
-      "            \"dist\": 1713.177398,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000701768-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"N'Bistro\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315005\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.nbistro.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"barbecue\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"barbecue\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620822,\n",
-      "                \"lon\": 6.145469\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62172,\n",
-      "                    \"lon\": 6.14408\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61992,\n",
-      "                    \"lon\": 6.14686\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62068,\n",
-      "                        \"lon\": 6.14553\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 492,\n",
-      "            \"detourDistance\": 1336\n",
-      "        }\n",
-      "    ]\n",
-      "}\n",
-      " \n",
-      "Along the route to Bonnevoie, there is the Eischen Paul Restaurant-Traiteur at 45 Avenue John Fitzgerald Kennedy, L-1855 Lëtzebuerg that would represent a detour of 0 minutes. \n",
-      "Along the route to Bonnevoie, there is the Lounge Act One at 7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg (N51) that would represent a detour of 1 minutes. \n",
-      "Along the route to Bonnevoie, there is the Ela Greek Cuisine at 37 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg that would represent a detour of 1 minutes. \n",
-      "Along the route to Bonnevoie, there is the Bick Stuff at 95 Rue de Clausen, L-1342 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the Tempo Restaurant at 1 Place de l'Europe, L-1490 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the Chez Bacano at 59 Rue de Clausen, L-1342 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the Popkorn at 61 Rue de Clausen, L-1342 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the Best Grill at 63 Rue de Clausen, L-1342 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the Clé de Sol A La Philharmonie at 1 Place de l'Europe, L-1499 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the Restaurant La Table du Belvédère at 4 Place de l'Europe, L-1499 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Bonnevoie, there is the D'Coque at 2 Rue Léon Hengen, L-1745 Luxembourg that would represent a detour of 4 minutes. \n",
-      "Along the route to Bonnevoie, there is the Sixtyfour° Bar at 4 Rue du Fort Niedergrünewald, L-2226 Luxembourg that would represent a detour of 4 minutes. \n",
-      "Along the route to Bonnevoie, there is the Radici at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg (Rue Johannes Kepler) that would represent a detour of 5 minutes. \n",
-      "Along the route to Bonnevoie, there is the L'Osteria Luxembourg at 7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg that would represent a detour of 5 minutes. \n",
-      "Along the route to Bonnevoie, there is the Côté Sushi Infinity at 7 Rue du Fort Niedergruenewald, L-2226 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Bonnevoie, there is the La Boqueria at 2 Rue Érasme, L-1468 Luxembourg that would represent a detour of 7 minutes. \n",
-      "Along the route to Bonnevoie, there is the El Barrio Restaurante Y Tapas Bar at 2 Rue Érasme, L-1468 Luxembourg that would represent a detour of 7 minutes. \n",
-      "Along the route to Bonnevoie, there is the Dans Le Noir ? Luxembourg at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg that would represent a detour of 8 minutes. \n",
-      "Along the route to Bonnevoie, there is the De Feierwon at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg (Rue Johannes Kepler) that would represent a detour of 8 minutes. \n",
-      "Along the route to Bonnevoie, there is the N'Bistro at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg that would represent a detour of 8 minutes.\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "49.5999681\n",
-      "{\n",
-      "    \"summary\": {\n",
-      "        \"query\": \"restaurant\",\n",
-      "        \"queryType\": \"NON_NEAR\",\n",
-      "        \"queryTime\": 326,\n",
-      "        \"numResults\": 20,\n",
-      "        \"offset\": 0,\n",
-      "        \"totalResults\": 20,\n",
-      "        \"fuzzyLevel\": 1,\n",
-      "        \"geobiasCountry\": \"LU\"\n",
-      "    },\n",
-      "    \"results\": [\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"RdKRrs19psk-CwmVUIQhQg\",\n",
-      "            \"score\": 2.997658968,\n",
-      "            \"dist\": 174.634461,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000480886-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Eischen Paul Restaurant-Traiteur\",\n",
-      "                \"phone\": \"+352 26 43 13 64\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"45\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"L\\u00ebtzebuerg\",\n",
-      "                \"neighbourhood\": \"Kiirchbierg\",\n",
-      "                \"countrySubdivision\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionName\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"L\\u00ebtzebuerg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"45 Avenue John Fitzgerald Kennedy, L-1855 L\\u00ebtzebuerg\",\n",
-      "                \"localName\": \"L\\u00ebtzebuerg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.6248,\n",
-      "                \"lon\": 6.1588\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.6257,\n",
-      "                    \"lon\": 6.15741\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6239,\n",
-      "                    \"lon\": 6.16019\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62473,\n",
-      "                        \"lon\": 6.15889\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 0,\n",
-      "            \"detourDistance\": 0\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"ujXkPgiRLdbLGrrWZ3Qu2A\",\n",
-      "            \"score\": 2.9899127483,\n",
-      "            \"dist\": 1999.969177,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008157-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Lounge Act One\",\n",
-      "                \"phone\": \"+352 27 77 02 27\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.loungeactone.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg (N51)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.619627,\n",
-      "                \"lon\": 6.143154\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62053,\n",
-      "                    \"lon\": 6.14177\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61873,\n",
-      "                    \"lon\": 6.14454\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61954,\n",
-      "                        \"lon\": 6.1432\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 0,\n",
-      "            \"detourDistance\": 0\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"45w-Gg-Mi5p1U63jTDSVyQ\",\n",
-      "            \"score\": 2.9914143085,\n",
-      "            \"dist\": 1654.4196,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008307-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Ela Greek Cuisine\",\n",
-      "                \"phone\": \"+352 26 68 46 83\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315019\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"greek\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"greek\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"37\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"37 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620217,\n",
-      "                \"lon\": 6.146253\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62112,\n",
-      "                    \"lon\": 6.14486\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61932,\n",
-      "                    \"lon\": 6.14764\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62013,\n",
-      "                        \"lon\": 6.14629\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 0,\n",
-      "            \"detourDistance\": 0\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"gYsWWQjcQm-ZrsQ1Kn-puA\",\n",
-      "            \"score\": 2.9930400848,\n",
-      "            \"dist\": 1275.9415,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000001701-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Tha\\u00ef Restaurant\",\n",
-      "                \"phone\": \"+352 40 08 15 88\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315048\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"thai\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"thai\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"18\",\n",
-      "                \"streetName\": \"Rue Alcide De Gasperi\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1615\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"18 Rue Alcide De Gasperi, L-1615 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.623929,\n",
-      "                \"lon\": 6.148744\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62483,\n",
-      "                    \"lon\": 6.14736\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62303,\n",
-      "                    \"lon\": 6.15013\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62362,\n",
-      "                        \"lon\": 6.14888\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 106,\n",
-      "            \"detourDistance\": 349\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"KfRLYtAsq5X57cd2Qh2MWQ\",\n",
-      "            \"score\": 2.9891924858,\n",
-      "            \"dist\": 2164.386187,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000129532-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Tempo Restaurant\",\n",
-      "                \"phone\": \"+352 27 99 06 66\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.tempo-restaurant.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Place de l'Europe\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1490\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Place de l'Europe, L-1490 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.617973,\n",
-      "                \"lon\": 6.142219\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61887,\n",
-      "                    \"lon\": 6.14083\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61707,\n",
-      "                    \"lon\": 6.14361\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61785,\n",
-      "                        \"lon\": 6.1419\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 106,\n",
-      "            \"detourDistance\": 437\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"PKlheqd5C5r9GLc4o8-JIQ\",\n",
-      "            \"score\": 2.9894006252,\n",
-      "            \"dist\": 2116.991012,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000008182-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"C\\u00f4t\\u00e9 Sushi Infinity\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315148\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"cotesushi.com\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"sushi\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"sushi\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergruenewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"7 Rue du Fort Niedergruenewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.619794,\n",
-      "                \"lon\": 6.141984\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62069,\n",
-      "                    \"lon\": 6.1406\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61889,\n",
-      "                    \"lon\": 6.14337\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62007,\n",
-      "                        \"lon\": 6.14162\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 139,\n",
-      "            \"detourDistance\": 183\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"MgTY6qN3xbOJT1ZqmNCORA\",\n",
-      "            \"score\": 2.9891009331,\n",
-      "            \"dist\": 2185.203228,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006001-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Mama Restaurant Luxembourg\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"mamashelter.com/luxembourg/eat-drink/\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue du Fort Niedergr\\u00fcnewald, Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620003,\n",
-      "                \"lon\": 6.141275\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.6209,\n",
-      "                    \"lon\": 6.13989\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6191,\n",
-      "                    \"lon\": 6.14266\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61993,\n",
-      "                        \"lon\": 6.14139\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 139,\n",
-      "            \"detourDistance\": 183\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"9HF2LAt_iB1EcBxdRNqXlw\",\n",
-      "            \"score\": 2.9893784523,\n",
-      "            \"dist\": 2122.024195,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000486119-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Cl\\u00e9 de Sol A La Philharmonie\",\n",
-      "                \"phone\": \"+352 26 68 73 94\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Place de l'Europe\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1499\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Place de l'Europe, L-1499 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.618249,\n",
-      "                \"lon\": 6.142515\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61944,\n",
-      "                    \"lon\": 6.14067\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61706,\n",
-      "                    \"lon\": 6.14436\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61783,\n",
-      "                        \"lon\": 6.14424\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 211,\n",
-      "            \"detourDistance\": 256\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"kjG5XshDoYxwO7bXw3u45w\",\n",
-      "            \"score\": 2.9896290302,\n",
-      "            \"dist\": 2064.862201,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000002087-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"L'Osteria Luxembourg\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315036\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.losteria.net\",\n",
-      "                \"categories\": [\n",
-      "                    \"pizza\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"pizza\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"7\",\n",
-      "                \"streetName\": \"Avenue John Fitzgerald Kennedy\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1855\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620088,\n",
-      "                \"lon\": 6.142382\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62099,\n",
-      "                    \"lon\": 6.14099\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61919,\n",
-      "                    \"lon\": 6.14377\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62013,\n",
-      "                        \"lon\": 6.1425\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 248,\n",
-      "            \"detourDistance\": 142\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"vKr_LRfynXob7JeTjdA3_A\",\n",
-      "            \"score\": 2.9887928963,\n",
-      "            \"dist\": 2255.189658,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000486689-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Aqua Restaurant\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315043\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.melia-luxembourg.com/en/gastronomy-melia-luxembourg.html\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"seafood\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"seafood\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"1\",\n",
-      "                \"streetName\": \"Park Drai Eechelen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1499\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"1 Park Drai Eechelen, L-1499 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.617159,\n",
-      "                \"lon\": 6.141689\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61806,\n",
-      "                    \"lon\": 6.1403\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61626,\n",
-      "                    \"lon\": 6.14308\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61749,\n",
-      "                        \"lon\": 6.14203\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 289,\n",
-      "            \"detourDistance\": 596\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"EHur86oZba544sMdSAwumg\",\n",
-      "            \"score\": 2.9943678379,\n",
-      "            \"dist\": 963.334401,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000467377-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"D'Coque\",\n",
-      "                \"phone\": \"+352 43 60 60\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue L\\u00e9on Hengen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1745\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue L\\u00e9on Hengen, L-1745 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.62378,\n",
-      "                \"lon\": 6.151634\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62584,\n",
-      "                    \"lon\": 6.14845\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62172,\n",
-      "                    \"lon\": 6.15481\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62272,\n",
-      "                        \"lon\": 6.15436\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 304,\n",
-      "            \"detourDistance\": 1181\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"eAyvq96brfXPxBzg_AvvTw\",\n",
-      "            \"score\": 2.9881718159,\n",
-      "            \"dist\": 2395.837112,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006386-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Mudam: Le Cafe\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315017\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.mudam.lu/fr/le-musee/boutique-cafe/\",\n",
-      "                \"categories\": [\n",
-      "                    \"french\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"french\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"3\",\n",
-      "                \"streetName\": \"Park Drai Eechelen\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1499\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"3 Park Drai Eechelen, L-1499 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.617185,\n",
-      "                \"lon\": 6.140292\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61808,\n",
-      "                    \"lon\": 6.1389\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61629,\n",
-      "                    \"lon\": 6.14168\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61757,\n",
-      "                        \"lon\": 6.14028\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 373,\n",
-      "            \"detourDistance\": 816\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"O9hayDmQaSV3_yG7sbsKEg\",\n",
-      "            \"score\": 2.9905776978,\n",
-      "            \"dist\": 1847.425989,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006920-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Radici\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"radici.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg (Rue Johannes Kepler)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620548,\n",
-      "                \"lon\": 6.144288\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62145,\n",
-      "                    \"lon\": 6.1429\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61965,\n",
-      "                    \"lon\": 6.14568\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62026,\n",
-      "                        \"lon\": 6.14406\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 391,\n",
-      "            \"detourDistance\": 314\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"oyAESM8oIuju8u43JF1XtQ\",\n",
-      "            \"score\": 2.9971354008,\n",
-      "            \"dist\": 301.409425,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000087404-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Restaurant Himalaya 2\",\n",
-      "                \"phone\": \"+352 43 83 24\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315023\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"himalaya.lu/Himalaya2\",\n",
-      "                \"categories\": [\n",
-      "                    \"indian\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"indian\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"89\",\n",
-      "                \"streetName\": \"Rue des Muguets\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Neudorf\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2167\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"89 Rue des Muguets, L-2167 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.62306,\n",
-      "                \"lon\": 6.15951\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62396,\n",
-      "                    \"lon\": 6.15812\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62216,\n",
-      "                    \"lon\": 6.1609\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62302,\n",
-      "                        \"lon\": 6.15965\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 407,\n",
-      "            \"detourDistance\": 1512\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"VR7MqfSSIVfHBkdHI_K14g\",\n",
-      "            \"score\": 2.9911601543,\n",
-      "            \"dist\": 1713.177398,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000701768-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"N'Bistro\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315005\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.nbistro.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"barbecue\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"barbecue\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620822,\n",
-      "                \"lon\": 6.145469\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62172,\n",
-      "                    \"lon\": 6.14408\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61992,\n",
-      "                    \"lon\": 6.14686\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62068,\n",
-      "                        \"lon\": 6.14553\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 409,\n",
-      "            \"detourDistance\": 499\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"5pJGvSwxSB60hAv_cG8r0w\",\n",
-      "            \"score\": 2.9911842346,\n",
-      "            \"dist\": 1707.680749,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006004-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Dans Le Noir ? Luxembourg\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315041\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"luxembourg.danslenoir.com/\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"roadside\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"roadside\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620922,\n",
-      "                \"lon\": 6.145488\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62182,\n",
-      "                    \"lon\": 6.1441\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62002,\n",
-      "                    \"lon\": 6.14688\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.6207,\n",
-      "                        \"lon\": 6.14558\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 409,\n",
-      "            \"detourDistance\": 499\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"GRQxCm-Xv9DCSIbJjyuRBA\",\n",
-      "            \"score\": 2.9944090843,\n",
-      "            \"dist\": 953.544314,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000066075-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"La Boqueria\",\n",
-      "                \"phone\": \"+352 26 43 04 32\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315044\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"spanish\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"spanish\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue \\u00c9rasme\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1468\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue \\u00c9rasme, L-1468 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.622898,\n",
-      "                \"lon\": 6.151979\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.62394,\n",
-      "                    \"lon\": 6.15038\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.62186,\n",
-      "                    \"lon\": 6.15358\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62189,\n",
-      "                        \"lon\": 6.15159\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 412,\n",
-      "            \"detourDistance\": 539\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"uErN_Aj5l4GFoWcAw2qpNQ\",\n",
-      "            \"score\": 2.9944090843,\n",
-      "            \"dist\": 953.544314,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442009000471125-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"El Barrio Restaurante Y Tapas Bar\",\n",
-      "                \"phone\": \"+352 26 43 15 03\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315076\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.elbarrio.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\",\n",
-      "                    \"tapas\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"tapas\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"2\",\n",
-      "                \"streetName\": \"Rue \\u00c9rasme\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-1468\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"2 Rue \\u00c9rasme, L-1468 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.622898,\n",
-      "                \"lon\": 6.151979\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.624,\n",
-      "                    \"lon\": 6.15028\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6218,\n",
-      "                    \"lon\": 6.15367\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62182,\n",
-      "                        \"lon\": 6.15166\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 412,\n",
-      "            \"detourDistance\": 539\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"HFrHOdjPp87z5PnoVIsSUw\",\n",
-      "            \"score\": 2.9906308651,\n",
-      "            \"dist\": 1835.266178,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006003-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"De Feierwon\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"defeierwon.lu\",\n",
-      "                \"categories\": [\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue du Fort Niedergr\\u00fcnewald\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Kirchberg\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2226\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue du Fort Niedergr\\u00fcnewald, L-2226 Luxembourg (Rue Johannes Kepler)\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.620396,\n",
-      "                \"lon\": 6.144454\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.6213,\n",
-      "                    \"lon\": 6.14307\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.6195,\n",
-      "                    \"lon\": 6.14584\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.62012,\n",
-      "                        \"lon\": 6.14423\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 413,\n",
-      "            \"detourDistance\": 499\n",
-      "        },\n",
-      "        {\n",
-      "            \"type\": \"POI\",\n",
-      "            \"id\": \"hexL0ByG18t7pRYUqjUIPA\",\n",
-      "            \"score\": 2.9847836494,\n",
-      "            \"dist\": 3151.929629,\n",
-      "            \"query\": \"restaurant\",\n",
-      "            \"info\": \"search:ta:442007000006816-LU\",\n",
-      "            \"poi\": {\n",
-      "                \"name\": \"Oekosoph\",\n",
-      "                \"categorySet\": [\n",
-      "                    {\n",
-      "                        \"id\": 7315025\n",
-      "                    }\n",
-      "                ],\n",
-      "                \"url\": \"www.oekosoph.lu/\",\n",
-      "                \"categories\": [\n",
-      "                    \"italian\",\n",
-      "                    \"restaurant\"\n",
-      "                ],\n",
-      "                \"classifications\": [\n",
-      "                    {\n",
-      "                        \"code\": \"RESTAURANT\",\n",
-      "                        \"names\": [\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"restaurant\"\n",
-      "                            },\n",
-      "                            {\n",
-      "                                \"nameLocale\": \"en-US\",\n",
-      "                                \"name\": \"italian\"\n",
-      "                            }\n",
-      "                        ]\n",
-      "                    }\n",
-      "                ]\n",
-      "            },\n",
-      "            \"address\": {\n",
-      "                \"streetNumber\": \"6\",\n",
-      "                \"streetName\": \"Rue Vauban\",\n",
-      "                \"municipality\": \"Luxembourg\",\n",
-      "                \"neighbourhood\": \"Pfaffenthal\",\n",
-      "                \"countrySubdivision\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionName\": \"Luxembourg\",\n",
-      "                \"countrySubdivisionCode\": \"LU\",\n",
-      "                \"postalCode\": \"L-2663\",\n",
-      "                \"countryCode\": \"LU\",\n",
-      "                \"country\": \"Luxembourg\",\n",
-      "                \"countryCodeISO3\": \"LUX\",\n",
-      "                \"freeformAddress\": \"6 Rue Vauban, L-2663 Luxembourg\",\n",
-      "                \"localName\": \"Luxembourg\"\n",
-      "            },\n",
-      "            \"position\": {\n",
-      "                \"lat\": 49.614794,\n",
-      "                \"lon\": 6.13392\n",
-      "            },\n",
-      "            \"viewport\": {\n",
-      "                \"topLeftPoint\": {\n",
-      "                    \"lat\": 49.61569,\n",
-      "                    \"lon\": 6.13253\n",
-      "                },\n",
-      "                \"btmRightPoint\": {\n",
-      "                    \"lat\": 49.61389,\n",
-      "                    \"lon\": 6.13531\n",
-      "                }\n",
-      "            },\n",
-      "            \"entryPoints\": [\n",
-      "                {\n",
-      "                    \"type\": \"main\",\n",
-      "                    \"position\": {\n",
-      "                        \"lat\": 49.61495,\n",
-      "                        \"lon\": 6.13391\n",
-      "                    }\n",
-      "                }\n",
-      "            ],\n",
-      "            \"detourTime\": 452,\n",
-      "            \"detourDistance\": 1695\n",
-      "        }\n",
-      "    ]\n",
-      "}\n",
-      " \n",
-      "Along the route to Luxembourg Gare, there is the Eischen Paul Restaurant-Traiteur at 45 Avenue John Fitzgerald Kennedy, L-1855 Lëtzebuerg that would represent a detour of 0 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Lounge Act One at 7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg (N51) that would represent a detour of 0 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Ela Greek Cuisine at 37 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg that would represent a detour of 0 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Thaï Restaurant at 18 Rue Alcide De Gasperi, L-1615 Luxembourg that would represent a detour of 1 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Tempo Restaurant at 1 Place de l'Europe, L-1490 Luxembourg that would represent a detour of 1 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Côté Sushi Infinity at 7 Rue du Fort Niedergruenewald, L-2226 Luxembourg that would represent a detour of 2 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Mama Restaurant Luxembourg at 2 Rue du Fort Niedergrünewald, Luxembourg that would represent a detour of 2 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Clé de Sol A La Philharmonie at 1 Place de l'Europe, L-1499 Luxembourg that would represent a detour of 3 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the L'Osteria Luxembourg at 7 Avenue John Fitzgerald Kennedy, L-1855 Luxembourg that would represent a detour of 4 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Aqua Restaurant at 1 Park Drai Eechelen, L-1499 Luxembourg that would represent a detour of 4 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the D'Coque at 2 Rue Léon Hengen, L-1745 Luxembourg that would represent a detour of 5 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Mudam: Le Cafe at 3 Park Drai Eechelen, L-1499 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Radici at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg (Rue Johannes Kepler) that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Restaurant Himalaya 2 at 89 Rue des Muguets, L-2167 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the N'Bistro at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Dans Le Noir ? Luxembourg at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the La Boqueria at 2 Rue Érasme, L-1468 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the El Barrio Restaurante Y Tapas Bar at 2 Rue Érasme, L-1468 Luxembourg that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the De Feierwon at 6 Rue du Fort Niedergrünewald, L-2226 Luxembourg (Rue Johannes Kepler) that would represent a detour of 6 minutes. \n",
-      "Along the route to Luxembourg Gare, there is the Oekosoph at 6 Rue Vauban, L-2663 Luxembourg that would represent a detour of 7 minutes.\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "The kebab Orient X Kebab Lounge is 2554 meters away. The kebab The Best Kebab is 3599 meters away. The kebab Breaktime Kebab Grill is 4471 meters away. The kebab Kebab Ricelux is 6793 meters away\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "Luxembourg\n",
-      "The route to go to Luxembourg is 4.42 km and 14 minutes. Leaving now, the arrival time is estimated at 08:14 \n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "The kebab Orient X Kebab Lounge is 2554 meters away. The kebab The Best Kebab is 3599 meters away. The kebab Breaktime Kebab Grill is 4471 meters away. The kebab Kebab Ricelux is 6793 meters away\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "the first one\n",
-      "The route to go to the first one is 634.64 km and 6 hours and 53 minutes. Leaving now, the arrival time is estimated at 14:53 \n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "The restaurant Eischen Paul Restaurant-Traiteur is 137 meters away. The restaurant Piri Piri Portuguese Restaurant & Bar is 149 meters away. The restaurant Sushi Shop is 165 meters away. The restaurant Vida Sushi Lounge-Kirchberg is 294 meters away. The restaurant Restaurant Himalaya 2 is 297 meters away\n"
-     ]
-    },
-    {
-     "name": "stderr",
-     "output_type": "stream",
-     "text": [
-      "Setting `pad_token_id` to `eos_token_id`:2 for open-end generation.\n"
-     ]
-    },
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "get_weather() takes from 0 to 1 positional arguments but 2 were given\n",
-      "Keyboard interruption in main thread... closing server.\n",
-      "Killing tunnel 0.0.0.0:7860 <> None\n"
-     ]
-    },
-    {
-     "data": {
-      "text/plain": []
-     },
-     "execution_count": 77,
-     "metadata": {},
-     "output_type": "execute_result"
-    }
-   ],
+   "outputs": [],
    "source": [
     "#INTERFACE WITH ONLY TEXT\n",
     "\n",
@@ -8825,62 +835,12 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 69,
+   "execution_count": null,
    "metadata": {
     "collapsed": true,
     "id": "mZTt3y3_KOOF"
    },
-   "outputs": [
-    {
-     "name": "stdout",
-     "output_type": "stream",
-     "text": [
-      "\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Closing server running on port: 7860\n",
-      "Running on local URL:  http://0.0.0.0:7860\n"
-     ]
-    },
-    {
-     "ename": "KeyboardInterrupt",
-     "evalue": "",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
-      "\u001b[0;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
-      "Cell \u001b[0;32mIn[69], line 42\u001b[0m\n\u001b[1;32m     40\u001b[0m gr\u001b[38;5;241m.\u001b[39mclose_all()\n\u001b[1;32m     41\u001b[0m \u001b[38;5;66;03m# Launch the interface.\u001b[39;00m\n\u001b[0;32m---> 42\u001b[0m \u001b[43miface\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mlaunch\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdebug\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mshare\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mTrue\u001b[39;49;00m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mserver_name\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43m0.0.0.0\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mserver_port\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;241;43m7860\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mssl_verify\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43;01mFalse\u001b[39;49;00m\u001b[43m)\u001b[49m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/gradio/blocks.py:2068\u001b[0m, in \u001b[0;36mBlocks.launch\u001b[0;34m(self, inline, inbrowser, share, debug, max_threads, auth, auth_message, prevent_thread_lock, show_error, server_name, server_port, height, width, favicon_path, ssl_keyfile, ssl_certfile, ssl_keyfile_password, ssl_verify, quiet, show_api, allowed_paths, blocked_paths, root_path, app_kwargs, state_session_capacity, share_server_address, share_server_protocol, _frontend)\u001b[0m\n\u001b[1;32m   2066\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m   2067\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mshare_url \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m-> 2068\u001b[0m         share_url \u001b[38;5;241m=\u001b[39m \u001b[43mnetworking\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msetup_tunnel\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m   2069\u001b[0m \u001b[43m            \u001b[49m\u001b[43mlocal_host\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mserver_name\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m   2070\u001b[0m \u001b[43m            \u001b[49m\u001b[43mlocal_port\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mserver_port\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m   2071\u001b[0m \u001b[43m            \u001b[49m\u001b[43mshare_token\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mshare_token\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m   2072\u001b[0m \u001b[43m            \u001b[49m\u001b[43mshare_server_address\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mshare_server_address\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m   2073\u001b[0m \u001b[43m        \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m   2074\u001b[0m         parsed_url \u001b[38;5;241m=\u001b[39m urlparse(share_url)\n\u001b[1;32m   2075\u001b[0m         \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mshare_url \u001b[38;5;241m=\u001b[39m urlunparse(\n\u001b[1;32m   2076\u001b[0m             (\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mshare_server_protocol,) \u001b[38;5;241m+\u001b[39m parsed_url[\u001b[38;5;241m1\u001b[39m:]\n\u001b[1;32m   2077\u001b[0m         )\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/gradio/networking.py:229\u001b[0m, in \u001b[0;36msetup_tunnel\u001b[0;34m(local_host, local_port, share_token, share_server_address)\u001b[0m\n\u001b[1;32m    227\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m share_server_address \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m    228\u001b[0m     \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 229\u001b[0m         response \u001b[38;5;241m=\u001b[39m \u001b[43mhttpx\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget\u001b[49m\u001b[43m(\u001b[49m\u001b[43mGRADIO_API_SERVER\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[38;5;241;43m30\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m    230\u001b[0m         payload \u001b[38;5;241m=\u001b[39m response\u001b[38;5;241m.\u001b[39mjson()[\u001b[38;5;241m0\u001b[39m]\n\u001b[1;32m    231\u001b[0m         remote_host, remote_port \u001b[38;5;241m=\u001b[39m payload[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mhost\u001b[39m\u001b[38;5;124m\"\u001b[39m], \u001b[38;5;28mint\u001b[39m(payload[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mport\u001b[39m\u001b[38;5;124m\"\u001b[39m])\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_api.py:196\u001b[0m, in \u001b[0;36mget\u001b[0;34m(url, params, headers, cookies, auth, proxy, proxies, follow_redirects, cert, verify, timeout, trust_env)\u001b[0m\n\u001b[1;32m    173\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mget\u001b[39m(\n\u001b[1;32m    174\u001b[0m     url: URLTypes,\n\u001b[1;32m    175\u001b[0m     \u001b[38;5;241m*\u001b[39m,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    186\u001b[0m     trust_env: \u001b[38;5;28mbool\u001b[39m \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m,\n\u001b[1;32m    187\u001b[0m ) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m Response:\n\u001b[1;32m    188\u001b[0m \u001b[38;5;250m    \u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m    189\u001b[0m \u001b[38;5;124;03m    Sends a `GET` request.\u001b[39;00m\n\u001b[1;32m    190\u001b[0m \n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    194\u001b[0m \u001b[38;5;124;03m    on this function, as `GET` requests should not include a request body.\u001b[39;00m\n\u001b[1;32m    195\u001b[0m \u001b[38;5;124;03m    \"\"\"\u001b[39;00m\n\u001b[0;32m--> 196\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mrequest\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m    197\u001b[0m \u001b[43m        \u001b[49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[38;5;124;43mGET\u001b[39;49m\u001b[38;5;124;43m\"\u001b[39;49m\u001b[43m,\u001b[49m\n\u001b[1;32m    198\u001b[0m \u001b[43m        \u001b[49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    199\u001b[0m \u001b[43m        \u001b[49m\u001b[43mparams\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mparams\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    200\u001b[0m \u001b[43m        \u001b[49m\u001b[43mheaders\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mheaders\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    201\u001b[0m \u001b[43m        \u001b[49m\u001b[43mcookies\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcookies\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    202\u001b[0m \u001b[43m        \u001b[49m\u001b[43mauth\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mauth\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    203\u001b[0m \u001b[43m        \u001b[49m\u001b[43mproxy\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mproxy\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    204\u001b[0m \u001b[43m        \u001b[49m\u001b[43mproxies\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mproxies\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    205\u001b[0m \u001b[43m        \u001b[49m\u001b[43mfollow_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_redirects\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    206\u001b[0m \u001b[43m        \u001b[49m\u001b[43mcert\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcert\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    207\u001b[0m \u001b[43m        \u001b[49m\u001b[43mverify\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mverify\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    208\u001b[0m \u001b[43m        \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    209\u001b[0m \u001b[43m        \u001b[49m\u001b[43mtrust_env\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtrust_env\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    210\u001b[0m \u001b[43m    \u001b[49m\u001b[43m)\u001b[49m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_api.py:104\u001b[0m, in \u001b[0;36mrequest\u001b[0;34m(method, url, params, content, data, files, json, headers, cookies, auth, proxy, proxies, timeout, follow_redirects, verify, cert, trust_env)\u001b[0m\n\u001b[1;32m     44\u001b[0m \u001b[38;5;250m\u001b[39m\u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m     45\u001b[0m \u001b[38;5;124;03mSends an HTTP request.\u001b[39;00m\n\u001b[1;32m     46\u001b[0m \n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m     93\u001b[0m \u001b[38;5;124;03m```\u001b[39;00m\n\u001b[1;32m     94\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[1;32m     95\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m Client(\n\u001b[1;32m     96\u001b[0m     cookies\u001b[38;5;241m=\u001b[39mcookies,\n\u001b[1;32m     97\u001b[0m     proxy\u001b[38;5;241m=\u001b[39mproxy,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    102\u001b[0m     trust_env\u001b[38;5;241m=\u001b[39mtrust_env,\n\u001b[1;32m    103\u001b[0m ) \u001b[38;5;28;01mas\u001b[39;00m client:\n\u001b[0;32m--> 104\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mclient\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrequest\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m    105\u001b[0m \u001b[43m        \u001b[49m\u001b[43mmethod\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mmethod\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    106\u001b[0m \u001b[43m        \u001b[49m\u001b[43murl\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43murl\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    107\u001b[0m \u001b[43m        \u001b[49m\u001b[43mcontent\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mcontent\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    108\u001b[0m \u001b[43m        \u001b[49m\u001b[43mdata\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mdata\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    109\u001b[0m \u001b[43m        \u001b[49m\u001b[43mfiles\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfiles\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    110\u001b[0m \u001b[43m        \u001b[49m\u001b[43mjson\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mjson\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    111\u001b[0m \u001b[43m        \u001b[49m\u001b[43mparams\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mparams\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    112\u001b[0m \u001b[43m        \u001b[49m\u001b[43mheaders\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mheaders\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    113\u001b[0m \u001b[43m        \u001b[49m\u001b[43mauth\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mauth\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    114\u001b[0m \u001b[43m        \u001b[49m\u001b[43mfollow_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_redirects\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    115\u001b[0m \u001b[43m    \u001b[49m\u001b[43m)\u001b[49m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_client.py:828\u001b[0m, in \u001b[0;36mClient.request\u001b[0;34m(self, method, url, content, data, files, json, params, headers, cookies, auth, follow_redirects, timeout, extensions)\u001b[0m\n\u001b[1;32m    813\u001b[0m     warnings\u001b[38;5;241m.\u001b[39mwarn(message, \u001b[38;5;167;01mDeprecationWarning\u001b[39;00m)\n\u001b[1;32m    815\u001b[0m request \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mbuild_request(\n\u001b[1;32m    816\u001b[0m     method\u001b[38;5;241m=\u001b[39mmethod,\n\u001b[1;32m    817\u001b[0m     url\u001b[38;5;241m=\u001b[39murl,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    826\u001b[0m     extensions\u001b[38;5;241m=\u001b[39mextensions,\n\u001b[1;32m    827\u001b[0m )\n\u001b[0;32m--> 828\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43msend\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mauth\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mauth\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mfollow_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_redirects\u001b[49m\u001b[43m)\u001b[49m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_client.py:915\u001b[0m, in \u001b[0;36mClient.send\u001b[0;34m(self, request, stream, auth, follow_redirects)\u001b[0m\n\u001b[1;32m    907\u001b[0m follow_redirects \u001b[38;5;241m=\u001b[39m (\n\u001b[1;32m    908\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mfollow_redirects\n\u001b[1;32m    909\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(follow_redirects, UseClientDefault)\n\u001b[1;32m    910\u001b[0m     \u001b[38;5;28;01melse\u001b[39;00m follow_redirects\n\u001b[1;32m    911\u001b[0m )\n\u001b[1;32m    913\u001b[0m auth \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_build_request_auth(request, auth)\n\u001b[0;32m--> 915\u001b[0m response \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_send_handling_auth\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m    916\u001b[0m \u001b[43m    \u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    917\u001b[0m \u001b[43m    \u001b[49m\u001b[43mauth\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mauth\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    918\u001b[0m \u001b[43m    \u001b[49m\u001b[43mfollow_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_redirects\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    919\u001b[0m \u001b[43m    \u001b[49m\u001b[43mhistory\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43m[\u001b[49m\u001b[43m]\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    920\u001b[0m \u001b[43m\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    921\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m    922\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m stream:\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_client.py:943\u001b[0m, in \u001b[0;36mClient._send_handling_auth\u001b[0;34m(self, request, auth, follow_redirects, history)\u001b[0m\n\u001b[1;32m    940\u001b[0m request \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mnext\u001b[39m(auth_flow)\n\u001b[1;32m    942\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;28;01mTrue\u001b[39;00m:\n\u001b[0;32m--> 943\u001b[0m     response \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_send_handling_redirects\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m    944\u001b[0m \u001b[43m        \u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    945\u001b[0m \u001b[43m        \u001b[49m\u001b[43mfollow_redirects\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mfollow_redirects\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    946\u001b[0m \u001b[43m        \u001b[49m\u001b[43mhistory\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mhistory\u001b[49m\u001b[43m,\u001b[49m\n\u001b[1;32m    947\u001b[0m \u001b[43m    \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    948\u001b[0m     \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m    949\u001b[0m         \u001b[38;5;28;01mtry\u001b[39;00m:\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_client.py:980\u001b[0m, in \u001b[0;36mClient._send_handling_redirects\u001b[0;34m(self, request, follow_redirects, history)\u001b[0m\n\u001b[1;32m    977\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m hook \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_event_hooks[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrequest\u001b[39m\u001b[38;5;124m\"\u001b[39m]:\n\u001b[1;32m    978\u001b[0m     hook(request)\n\u001b[0;32m--> 980\u001b[0m response \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_send_single_request\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    981\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m    982\u001b[0m     \u001b[38;5;28;01mfor\u001b[39;00m hook \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_event_hooks[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mresponse\u001b[39m\u001b[38;5;124m\"\u001b[39m]:\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_client.py:1016\u001b[0m, in \u001b[0;36mClient._send_single_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m   1011\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mRuntimeError\u001b[39;00m(\n\u001b[1;32m   1012\u001b[0m         \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mAttempted to send an async request with a sync Client instance.\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m   1013\u001b[0m     )\n\u001b[1;32m   1015\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m request_context(request\u001b[38;5;241m=\u001b[39mrequest):\n\u001b[0;32m-> 1016\u001b[0m     response \u001b[38;5;241m=\u001b[39m \u001b[43mtransport\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mhandle_request\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m   1018\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(response\u001b[38;5;241m.\u001b[39mstream, SyncByteStream)\n\u001b[1;32m   1020\u001b[0m response\u001b[38;5;241m.\u001b[39mrequest \u001b[38;5;241m=\u001b[39m request\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpx/_transports/default.py:231\u001b[0m, in \u001b[0;36mHTTPTransport.handle_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    218\u001b[0m req \u001b[38;5;241m=\u001b[39m httpcore\u001b[38;5;241m.\u001b[39mRequest(\n\u001b[1;32m    219\u001b[0m     method\u001b[38;5;241m=\u001b[39mrequest\u001b[38;5;241m.\u001b[39mmethod,\n\u001b[1;32m    220\u001b[0m     url\u001b[38;5;241m=\u001b[39mhttpcore\u001b[38;5;241m.\u001b[39mURL(\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    228\u001b[0m     extensions\u001b[38;5;241m=\u001b[39mrequest\u001b[38;5;241m.\u001b[39mextensions,\n\u001b[1;32m    229\u001b[0m )\n\u001b[1;32m    230\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m map_httpcore_exceptions():\n\u001b[0;32m--> 231\u001b[0m     resp \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_pool\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mhandle_request\u001b[49m\u001b[43m(\u001b[49m\u001b[43mreq\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    233\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(resp\u001b[38;5;241m.\u001b[39mstream, typing\u001b[38;5;241m.\u001b[39mIterable)\n\u001b[1;32m    235\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m Response(\n\u001b[1;32m    236\u001b[0m     status_code\u001b[38;5;241m=\u001b[39mresp\u001b[38;5;241m.\u001b[39mstatus,\n\u001b[1;32m    237\u001b[0m     headers\u001b[38;5;241m=\u001b[39mresp\u001b[38;5;241m.\u001b[39mheaders,\n\u001b[1;32m    238\u001b[0m     stream\u001b[38;5;241m=\u001b[39mResponseStream(resp\u001b[38;5;241m.\u001b[39mstream),\n\u001b[1;32m    239\u001b[0m     extensions\u001b[38;5;241m=\u001b[39mresp\u001b[38;5;241m.\u001b[39mextensions,\n\u001b[1;32m    240\u001b[0m )\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/connection_pool.py:268\u001b[0m, in \u001b[0;36mConnectionPool.handle_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    266\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m ShieldCancellation():\n\u001b[1;32m    267\u001b[0m         \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mresponse_closed(status)\n\u001b[0;32m--> 268\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m exc\n\u001b[1;32m    269\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m    270\u001b[0m     \u001b[38;5;28;01mbreak\u001b[39;00m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/connection_pool.py:251\u001b[0m, in \u001b[0;36mConnectionPool.handle_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    248\u001b[0m         \u001b[38;5;28;01mraise\u001b[39;00m exc\n\u001b[1;32m    250\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 251\u001b[0m     response \u001b[38;5;241m=\u001b[39m \u001b[43mconnection\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mhandle_request\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    252\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m ConnectionNotAvailable:\n\u001b[1;32m    253\u001b[0m     \u001b[38;5;66;03m# The ConnectionNotAvailable exception is a special case, that\u001b[39;00m\n\u001b[1;32m    254\u001b[0m     \u001b[38;5;66;03m# indicates we need to retry the request on a new connection.\u001b[39;00m\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    258\u001b[0m     \u001b[38;5;66;03m# might end up as an HTTP/2 connection, but which actually ends\u001b[39;00m\n\u001b[1;32m    259\u001b[0m     \u001b[38;5;66;03m# up as HTTP/1.1.\u001b[39;00m\n\u001b[1;32m    260\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_pool_lock:\n\u001b[1;32m    261\u001b[0m         \u001b[38;5;66;03m# Maintain our position in the request queue, but reset the\u001b[39;00m\n\u001b[1;32m    262\u001b[0m         \u001b[38;5;66;03m# status so that the request becomes queued again.\u001b[39;00m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/connection.py:103\u001b[0m, in \u001b[0;36mHTTPConnection.handle_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    100\u001b[0m     \u001b[38;5;28;01melif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_connection\u001b[38;5;241m.\u001b[39mis_available():\n\u001b[1;32m    101\u001b[0m         \u001b[38;5;28;01mraise\u001b[39;00m ConnectionNotAvailable()\n\u001b[0;32m--> 103\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_connection\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mhandle_request\u001b[49m\u001b[43m(\u001b[49m\u001b[43mrequest\u001b[49m\u001b[43m)\u001b[49m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/http11.py:133\u001b[0m, in \u001b[0;36mHTTP11Connection.handle_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    131\u001b[0m     \u001b[38;5;28;01mwith\u001b[39;00m Trace(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mresponse_closed\u001b[39m\u001b[38;5;124m\"\u001b[39m, logger, request) \u001b[38;5;28;01mas\u001b[39;00m trace:\n\u001b[1;32m    132\u001b[0m         \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_response_closed()\n\u001b[0;32m--> 133\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m exc\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/http11.py:111\u001b[0m, in \u001b[0;36mHTTP11Connection.handle_request\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    101\u001b[0m     \u001b[38;5;28;01mpass\u001b[39;00m\n\u001b[1;32m    103\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m Trace(\n\u001b[1;32m    104\u001b[0m     \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mreceive_response_headers\u001b[39m\u001b[38;5;124m\"\u001b[39m, logger, request, kwargs\n\u001b[1;32m    105\u001b[0m ) \u001b[38;5;28;01mas\u001b[39;00m trace:\n\u001b[1;32m    106\u001b[0m     (\n\u001b[1;32m    107\u001b[0m         http_version,\n\u001b[1;32m    108\u001b[0m         status,\n\u001b[1;32m    109\u001b[0m         reason_phrase,\n\u001b[1;32m    110\u001b[0m         headers,\n\u001b[0;32m--> 111\u001b[0m     ) \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_receive_response_headers\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    112\u001b[0m     trace\u001b[38;5;241m.\u001b[39mreturn_value \u001b[38;5;241m=\u001b[39m (\n\u001b[1;32m    113\u001b[0m         http_version,\n\u001b[1;32m    114\u001b[0m         status,\n\u001b[1;32m    115\u001b[0m         reason_phrase,\n\u001b[1;32m    116\u001b[0m         headers,\n\u001b[1;32m    117\u001b[0m     )\n\u001b[1;32m    119\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m Response(\n\u001b[1;32m    120\u001b[0m     status\u001b[38;5;241m=\u001b[39mstatus,\n\u001b[1;32m    121\u001b[0m     headers\u001b[38;5;241m=\u001b[39mheaders,\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    127\u001b[0m     },\n\u001b[1;32m    128\u001b[0m )\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/http11.py:176\u001b[0m, in \u001b[0;36mHTTP11Connection._receive_response_headers\u001b[0;34m(self, request)\u001b[0m\n\u001b[1;32m    173\u001b[0m timeout \u001b[38;5;241m=\u001b[39m timeouts\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mread\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;28;01mNone\u001b[39;00m)\n\u001b[1;32m    175\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;28;01mTrue\u001b[39;00m:\n\u001b[0;32m--> 176\u001b[0m     event \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_receive_event\u001b[49m\u001b[43m(\u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    177\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(event, h11\u001b[38;5;241m.\u001b[39mResponse):\n\u001b[1;32m    178\u001b[0m         \u001b[38;5;28;01mbreak\u001b[39;00m\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_sync/http11.py:212\u001b[0m, in \u001b[0;36mHTTP11Connection._receive_event\u001b[0;34m(self, timeout)\u001b[0m\n\u001b[1;32m    209\u001b[0m     event \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_h11_state\u001b[38;5;241m.\u001b[39mnext_event()\n\u001b[1;32m    211\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m event \u001b[38;5;129;01mis\u001b[39;00m h11\u001b[38;5;241m.\u001b[39mNEED_DATA:\n\u001b[0;32m--> 212\u001b[0m     data \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_network_stream\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread\u001b[49m\u001b[43m(\u001b[49m\n\u001b[1;32m    213\u001b[0m \u001b[43m        \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mREAD_NUM_BYTES\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mtimeout\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43mtimeout\u001b[49m\n\u001b[1;32m    214\u001b[0m \u001b[43m    \u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    216\u001b[0m     \u001b[38;5;66;03m# If we feed this case through h11 we'll raise an exception like:\u001b[39;00m\n\u001b[1;32m    217\u001b[0m     \u001b[38;5;66;03m#\u001b[39;00m\n\u001b[1;32m    218\u001b[0m     \u001b[38;5;66;03m#     httpcore.RemoteProtocolError: can't handle event type\u001b[39;00m\n\u001b[0;32m   (...)\u001b[0m\n\u001b[1;32m    222\u001b[0m     \u001b[38;5;66;03m# perspective. Instead we handle this case distinctly and treat\u001b[39;00m\n\u001b[1;32m    223\u001b[0m     \u001b[38;5;66;03m# it as a ConnectError.\u001b[39;00m\n\u001b[1;32m    224\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m data \u001b[38;5;241m==\u001b[39m \u001b[38;5;124mb\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_h11_state\u001b[38;5;241m.\u001b[39mtheir_state \u001b[38;5;241m==\u001b[39m h11\u001b[38;5;241m.\u001b[39mSEND_RESPONSE:\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/httpcore/_backends/sync.py:126\u001b[0m, in \u001b[0;36mSyncStream.read\u001b[0;34m(self, max_bytes, timeout)\u001b[0m\n\u001b[1;32m    124\u001b[0m \u001b[38;5;28;01mwith\u001b[39;00m map_exceptions(exc_map):\n\u001b[1;32m    125\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_sock\u001b[38;5;241m.\u001b[39msettimeout(timeout)\n\u001b[0;32m--> 126\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_sock\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrecv\u001b[49m\u001b[43m(\u001b[49m\u001b[43mmax_bytes\u001b[49m\u001b[43m)\u001b[49m\n",
-      "File \u001b[0;32m/usr/lib/python3.10/ssl.py:1259\u001b[0m, in \u001b[0;36mSSLSocket.recv\u001b[0;34m(self, buflen, flags)\u001b[0m\n\u001b[1;32m   1255\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m flags \u001b[38;5;241m!=\u001b[39m \u001b[38;5;241m0\u001b[39m:\n\u001b[1;32m   1256\u001b[0m         \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m   1257\u001b[0m             \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mnon-zero flags not allowed in calls to recv() on \u001b[39m\u001b[38;5;132;01m%s\u001b[39;00m\u001b[38;5;124m\"\u001b[39m \u001b[38;5;241m%\u001b[39m\n\u001b[1;32m   1258\u001b[0m             \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m\u001b[38;5;18m__class__\u001b[39m)\n\u001b[0;32m-> 1259\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread\u001b[49m\u001b[43m(\u001b[49m\u001b[43mbuflen\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m   1260\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m   1261\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28msuper\u001b[39m()\u001b[38;5;241m.\u001b[39mrecv(buflen, flags)\n",
-      "File \u001b[0;32m/usr/lib/python3.10/ssl.py:1132\u001b[0m, in \u001b[0;36mSSLSocket.read\u001b[0;34m(self, len, buffer)\u001b[0m\n\u001b[1;32m   1130\u001b[0m         \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_sslobj\u001b[38;5;241m.\u001b[39mread(\u001b[38;5;28mlen\u001b[39m, buffer)\n\u001b[1;32m   1131\u001b[0m     \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m-> 1132\u001b[0m         \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_sslobj\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mread\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mlen\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[1;32m   1133\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m SSLError \u001b[38;5;28;01mas\u001b[39;00m x:\n\u001b[1;32m   1134\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m x\u001b[38;5;241m.\u001b[39margs[\u001b[38;5;241m0\u001b[39m] \u001b[38;5;241m==\u001b[39m SSL_ERROR_EOF \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39msuppress_ragged_eofs:\n",
-      "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "#INTERFACE WITH AUDIO TO AUDIO\n",
     "\n",
@@ -8935,30 +895,9 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 80,
+   "execution_count": null,
    "metadata": {},
-   "outputs": [
-    {
-     "ename": "JSONDecodeError",
-     "evalue": "Expecting value: line 1 column 1 (char 0)",
-     "output_type": "error",
-     "traceback": [
-      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
-      "\u001b[0;31mJSONDecodeError\u001b[0m                           Traceback (most recent call last)",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/requests/models.py:971\u001b[0m, in \u001b[0;36mResponse.json\u001b[0;34m(self, **kwargs)\u001b[0m\n\u001b[1;32m    970\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 971\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mcomplexjson\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mloads\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mtext\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[38;5;241;43m*\u001b[39;49m\u001b[43mkwargs\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    972\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m JSONDecodeError \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[1;32m    973\u001b[0m     \u001b[38;5;66;03m# Catch JSON-related errors and raise as requests.JSONDecodeError\u001b[39;00m\n\u001b[1;32m    974\u001b[0m     \u001b[38;5;66;03m# This aliases json.JSONDecodeError and simplejson.JSONDecodeError\u001b[39;00m\n",
-      "File \u001b[0;32m/usr/lib/python3.10/json/__init__.py:346\u001b[0m, in \u001b[0;36mloads\u001b[0;34m(s, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)\u001b[0m\n\u001b[1;32m    343\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m (\u001b[38;5;28mcls\u001b[39m \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mand\u001b[39;00m object_hook \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mand\u001b[39;00m\n\u001b[1;32m    344\u001b[0m         parse_int \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mand\u001b[39;00m parse_float \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mand\u001b[39;00m\n\u001b[1;32m    345\u001b[0m         parse_constant \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mand\u001b[39;00m object_pairs_hook \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m kw):\n\u001b[0;32m--> 346\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_default_decoder\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdecode\u001b[49m\u001b[43m(\u001b[49m\u001b[43ms\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    347\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mcls\u001b[39m \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m:\n",
-      "File \u001b[0;32m/usr/lib/python3.10/json/decoder.py:337\u001b[0m, in \u001b[0;36mJSONDecoder.decode\u001b[0;34m(self, s, _w)\u001b[0m\n\u001b[1;32m    333\u001b[0m \u001b[38;5;250m\u001b[39m\u001b[38;5;124;03m\"\"\"Return the Python representation of ``s`` (a ``str`` instance\u001b[39;00m\n\u001b[1;32m    334\u001b[0m \u001b[38;5;124;03mcontaining a JSON document).\u001b[39;00m\n\u001b[1;32m    335\u001b[0m \n\u001b[1;32m    336\u001b[0m \u001b[38;5;124;03m\"\"\"\u001b[39;00m\n\u001b[0;32m--> 337\u001b[0m obj, end \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mraw_decode\u001b[49m\u001b[43m(\u001b[49m\u001b[43ms\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43midx\u001b[49m\u001b[38;5;241;43m=\u001b[39;49m\u001b[43m_w\u001b[49m\u001b[43m(\u001b[49m\u001b[43ms\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mend\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[1;32m    338\u001b[0m end \u001b[38;5;241m=\u001b[39m _w(s, end)\u001b[38;5;241m.\u001b[39mend()\n",
-      "File \u001b[0;32m/usr/lib/python3.10/json/decoder.py:355\u001b[0m, in \u001b[0;36mJSONDecoder.raw_decode\u001b[0;34m(self, s, idx)\u001b[0m\n\u001b[1;32m    354\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m \u001b[38;5;167;01mStopIteration\u001b[39;00m \u001b[38;5;28;01mas\u001b[39;00m err:\n\u001b[0;32m--> 355\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m JSONDecodeError(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mExpecting value\u001b[39m\u001b[38;5;124m\"\u001b[39m, s, err\u001b[38;5;241m.\u001b[39mvalue) \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m    356\u001b[0m \u001b[38;5;28;01mreturn\u001b[39;00m obj, end\n",
-      "\u001b[0;31mJSONDecodeError\u001b[0m: Expecting value: line 1 column 1 (char 0)",
-      "\nDuring handling of the above exception, another exception occurred:\n",
-      "\u001b[0;31mJSONDecodeError\u001b[0m                           Traceback (most recent call last)",
-      "Cell \u001b[0;32mIn[80], line 25\u001b[0m\n\u001b[1;32m     20\u001b[0m             \u001b[38;5;28;01mbreak\u001b[39;00m\n\u001b[1;32m     22\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m. \u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;241m.\u001b[39mjoin(results)\n\u001b[0;32m---> 25\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[43msearch_nearby\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m49.625892805337514\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43m6.160417066963513\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[38;5;124;43myour location\u001b[39;49m\u001b[38;5;124;43m'\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mTOMTOM_KEY\u001b[49m\u001b[43m)\u001b[49m)\n",
-      "Cell \u001b[0;32mIn[80], line 17\u001b[0m, in \u001b[0;36msearch_nearby\u001b[0;34m(lat, lon, city, key)\u001b[0m\n\u001b[1;32m      9\u001b[0m results \u001b[38;5;241m=\u001b[39m []\n\u001b[1;32m     11\u001b[0m r \u001b[38;5;241m=\u001b[39m requests\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mhttps://api.tomtom.com/search/2/nearbySearch/.json?key=\u001b[39m\u001b[38;5;132;01m{0}\u001b[39;00m\u001b[38;5;124m&lat=\u001b[39m\u001b[38;5;132;01m{1}\u001b[39;00m\u001b[38;5;124m&lon=\u001b[39m\u001b[38;5;132;01m{2}\u001b[39;00m\u001b[38;5;124m&radius=10000&limit=50\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m.\u001b[39mformat(\n\u001b[1;32m     12\u001b[0m                     key,\n\u001b[1;32m     13\u001b[0m                     lat,\n\u001b[1;32m     14\u001b[0m                     lon\n\u001b[1;32m     15\u001b[0m ))\n\u001b[0;32m---> 17\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m result \u001b[38;5;129;01min\u001b[39;00m \u001b[43mr\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mjson\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mresults\u001b[39m\u001b[38;5;124m'\u001b[39m]:\n\u001b[1;32m     18\u001b[0m     results\u001b[38;5;241m.\u001b[39mappend(\u001b[38;5;124mf\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mThe \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m \u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m.\u001b[39mjoin(result[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mpoi\u001b[39m\u001b[38;5;124m'\u001b[39m][\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mcategories\u001b[39m\u001b[38;5;124m'\u001b[39m])\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mresult[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mpoi\u001b[39m\u001b[38;5;124m'\u001b[39m][\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mname\u001b[39m\u001b[38;5;124m'\u001b[39m]\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m is \u001b[39m\u001b[38;5;132;01m{\u001b[39;00m\u001b[38;5;28mint\u001b[39m(result[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mdist\u001b[39m\u001b[38;5;124m'\u001b[39m])\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m meters far from \u001b[39m\u001b[38;5;132;01m{\u001b[39;00mcity\u001b[38;5;132;01m}\u001b[39;00m\u001b[38;5;124m\"\u001b[39m)\n\u001b[1;32m     19\u001b[0m     \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28mlen\u001b[39m(results) \u001b[38;5;241m==\u001b[39m \u001b[38;5;241m7\u001b[39m:\n",
-      "File \u001b[0;32m/usr/local/lib/python3.10/dist-packages/requests/models.py:975\u001b[0m, in \u001b[0;36mResponse.json\u001b[0;34m(self, **kwargs)\u001b[0m\n\u001b[1;32m    971\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m complexjson\u001b[38;5;241m.\u001b[39mloads(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mtext, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs)\n\u001b[1;32m    972\u001b[0m \u001b[38;5;28;01mexcept\u001b[39;00m JSONDecodeError \u001b[38;5;28;01mas\u001b[39;00m e:\n\u001b[1;32m    973\u001b[0m     \u001b[38;5;66;03m# Catch JSON-related errors and raise as requests.JSONDecodeError\u001b[39;00m\n\u001b[1;32m    974\u001b[0m     \u001b[38;5;66;03m# This aliases json.JSONDecodeError and simplejson.JSONDecodeError\u001b[39;00m\n\u001b[0;32m--> 975\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m RequestsJSONDecodeError(e\u001b[38;5;241m.\u001b[39mmsg, e\u001b[38;5;241m.\u001b[39mdoc, e\u001b[38;5;241m.\u001b[39mpos)\n",
-      "\u001b[0;31mJSONDecodeError\u001b[0m: Expecting value: line 1 column 1 (char 0)"
-     ]
-    }
-   ],
+   "outputs": [],
    "source": [
     "\n",
     "def search_nearby(lat, lon, city, key):\n",