From 0b4b6c3af972e9f77494975895dc7472f896eb0d Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Thu, 29 Feb 2024 22:36:26 -0600 Subject: [PATCH 1/9] fix jsonalyze query engine --- .../core/query_engine/jsonalyze_query_engine.py | 8 ++++---- llama-index-core/pyproject.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/llama-index-core/llama_index/core/query_engine/jsonalyze_query_engine.py b/llama-index-core/llama_index/core/query_engine/jsonalyze_query_engine.py index e6edc6f8670bc..c2b81afbf9e1e 100644 --- a/llama-index-core/llama_index/core/query_engine/jsonalyze_query_engine.py +++ b/llama-index-core/llama_index/core/query_engine/jsonalyze_query_engine.py @@ -80,7 +80,7 @@ def default_jsonalyzer( try: # Load list of dictionaries into SQLite database db[table_name].insert_all(list_of_dict) - except sqlite_utils.db_exceptions.IntegrityError as exc: + except sqlite_utils.utils.sqlite3.IntegrityError as exc: print_text(f"Error inserting into table {table_name}, expected format:") print_text("[{col1: val1, col2: val2, ...}, ...]") raise ValueError("Invalid list_of_dict") from exc @@ -105,7 +105,7 @@ def default_jsonalyzer( try: # Execute the SQL query results = list(db.query(sql_query)) - except sqlite_utils.db_exceptions.OperationalError as exc: + except sqlite_utils.utils.sqlite3.OperationalError as exc: print_text(f"Error executing query: {sql_query}") raise ValueError("Invalid query") from exc @@ -148,7 +148,7 @@ async def async_default_jsonalyzer( try: # Load list of dictionaries into SQLite database db[table_name].insert_all(list_of_dict) - except sqlite_utils.db_exceptions.IntegrityError as exc: + except sqlite_utils.utils.sqlite3.IntegrityError as exc: print_text(f"Error inserting into table {table_name}, expected format:") print_text("[{col1: val1, col2: val2, ...}, ...]") raise ValueError("Invalid list_of_dict") from exc @@ -173,7 +173,7 @@ async def async_default_jsonalyzer( try: # Execute the SQL query results = list(db.query(sql_query)) - except sqlite_utils.db_exceptions.OperationalError as exc: + except sqlite_utils.utils.sqlite3.OperationalError as exc: print_text(f"Error executing query: {sql_query}") raise ValueError("Invalid query") from exc diff --git a/llama-index-core/pyproject.toml b/llama-index-core/pyproject.toml index ffa6a94e30e90..c95f5551d1af4 100644 --- a/llama-index-core/pyproject.toml +++ b/llama-index-core/pyproject.toml @@ -43,7 +43,7 @@ name = "llama-index-core" packages = [{include = "llama_index"}] readme = "README.md" repository = "https://github.com/run-llama/llama_index" -version = "0.10.14" +version = "0.10.14.post1" [tool.poetry.dependencies] SQLAlchemy = {extras = ["asyncio"], version = ">=1.4.49"} From 9d1aecb93d2118a9e6223b1c93d4665c27049a67 Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Thu, 29 Feb 2024 23:01:09 -0600 Subject: [PATCH 2/9] add raptor --- .../llama-index-packs-raptor/.gitignore | 153 + .../llama-index-packs-raptor/Makefile | 17 + .../llama-index-packs-raptor/README.md | 80 + .../examples/raptor.ipynb | 379 ++ .../data_level0.bin | Bin 0 -> 6284000 bytes .../header.bin | Bin 0 -> 100 bytes .../length.bin | Bin 0 -> 4000 bytes .../link_lists.bin | 0 .../examples/raptor/chroma.sqlite3 | Bin 0 -> 1388544 bytes .../llama_index/packs/raptor/__init__.py | 4 + .../llama_index/packs/raptor/base.py | 366 ++ .../llama_index/packs/raptor/clustering.py | 169 + .../llama-index-packs-raptor/poetry.lock | 4714 +++++++++++++++++ .../llama-index-packs-raptor/pyproject.toml | 60 + .../tests/__init__.py | 0 .../tests/test_packs_raptor.py | 30 + 16 files changed, 5972 insertions(+) create mode 100644 llama-index-packs/llama-index-packs-raptor/.gitignore create mode 100644 llama-index-packs/llama-index-packs-raptor/Makefile create mode 100644 llama-index-packs/llama-index-packs-raptor/README.md create mode 100644 llama-index-packs/llama-index-packs-raptor/examples/raptor.ipynb create mode 100644 llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/data_level0.bin create mode 100644 llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/header.bin create mode 100644 llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/length.bin create mode 100644 llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/link_lists.bin create mode 100644 llama-index-packs/llama-index-packs-raptor/examples/raptor/chroma.sqlite3 create mode 100644 llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/__init__.py create mode 100644 llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/base.py create mode 100644 llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/clustering.py create mode 100644 llama-index-packs/llama-index-packs-raptor/poetry.lock create mode 100644 llama-index-packs/llama-index-packs-raptor/pyproject.toml create mode 100644 llama-index-packs/llama-index-packs-raptor/tests/__init__.py create mode 100644 llama-index-packs/llama-index-packs-raptor/tests/test_packs_raptor.py diff --git a/llama-index-packs/llama-index-packs-raptor/.gitignore b/llama-index-packs/llama-index-packs-raptor/.gitignore new file mode 100644 index 0000000000000..990c18de22908 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/.gitignore @@ -0,0 +1,153 @@ +llama_index/_static +.DS_Store +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +bin/ +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +etc/ +include/ +lib/ +lib64/ +parts/ +sdist/ +share/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +.ruff_cache + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints +notebooks/ + +# IPython +profile_default/ +ipython_config.py + +# pyenv +.python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ +pyvenv.cfg + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# Jetbrains +.idea +modules/ +*.swp + +# VsCode +.vscode + +# pipenv +Pipfile +Pipfile.lock + +# pyright +pyrightconfig.json diff --git a/llama-index-packs/llama-index-packs-raptor/Makefile b/llama-index-packs/llama-index-packs-raptor/Makefile new file mode 100644 index 0000000000000..b9eab05aa3706 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/Makefile @@ -0,0 +1,17 @@ +GIT_ROOT ?= $(shell git rev-parse --show-toplevel) + +help: ## Show all Makefile targets. + @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[33m%-30s\033[0m %s\n", $$1, $$2}' + +format: ## Run code autoformatters (black). + pre-commit install + git ls-files | xargs pre-commit run black --files + +lint: ## Run linters: pre-commit (black, ruff, codespell) and mypy + pre-commit install && git ls-files | xargs pre-commit run --show-diff-on-failure --files + +test: ## Run tests via pytest. + pytest tests + +watch-docs: ## Build and watch documentation. + sphinx-autobuild docs/ docs/_build/html --open-browser --watch $(GIT_ROOT)/llama_index/ diff --git a/llama-index-packs/llama-index-packs-raptor/README.md b/llama-index-packs/llama-index-packs-raptor/README.md new file mode 100644 index 0000000000000..c5dc07e523f66 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/README.md @@ -0,0 +1,80 @@ +# Raptor Retriever LlamaPack + +## Embedded Tables Retriever Pack w/ Unstructured.io + +This LlamaPack shows how to use an implementation of RAPTOR with llama-index, leveraging the RAPTOR pack. + +RAPTOR works by recursively clustering and summarizing clusters in layers for retrieval. + +There two retrieval modes: + +- tree_traversal -- traversing the tree of clusters, performing top-k at each level in the tree. +- collapsed -- treat the entire tree as a giant pile of nodes, perform simple top-k. + +See [the paper](https://arxiv.org/abs/2401.18059) for full algorithm details. + +### CLI Usage + +You can download llamapacks directly using `llamaindex-cli`, which comes installed with the `llama-index` python package: + +```bash +llamaindex-cli download-llamapack RaptorPack --download-dir ./raptor_pack +``` + +You can then inspect/modify the files at `./raptor_pack` and use them as a template for your own project. + +### Code Usage + +You can alternaitvely install the package: + +`pip install llama-index-packs-raptor` + +Then, you can import and initialize the pack! This will perform clustering and summarization over your data. + +```python +from llama_index.packs.raptor import RaptorPack + +pack = RaptorPack(documents, llm=llm, embed_model=embed_model) +``` + +The `run()` function is a light wrapper around `retriever.retrieve()`. + +```python +nodes = pack.run( + "query", + mode="collapsed", # or tree_traversal +) +``` + +You can also use modules individually. + +```python +# get the retriever +retriever = pack.retriever +``` + +## Persistence + +The `RaptorPack` comes with the `RaptorRetriever`, which offers ways of saving/reloading! + +If you are using a remote vector-db, just pass it in + +```python +# Pack usage +pack = RaptorPack(..., vector_store=vector_store) + +# RaptorRetriever usage +retriever = RaptorRetreiver(..., vector_store=vector_store) +``` + +Then, to re-connect, just pass in the vector store again and an empty list of documents + +```python +# Pack usage +pack = RaptorPack([], ..., vector_store=vector_store) + +# RaptorRetriever usage +retriever = RaptorRetreiver([], ..., vector_store=vector_store) +``` + +Check out the [notebook here for complete details!](https://github.com/run-llama/llama_index/blob/main/llama-index-packs/llama-index-packs-raptor/examples/raptor.ipynb). diff --git a/llama-index-packs/llama-index-packs-raptor/examples/raptor.ipynb b/llama-index-packs/llama-index-packs-raptor/examples/raptor.ipynb new file mode 100644 index 0000000000000..1f550dc52375e --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/examples/raptor.ipynb @@ -0,0 +1,379 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval\n", + "\n", + "This notebook shows how to use an implementation of RAPTOR with llama-index, leveraging the RAPTOR llama-pack.\n", + "\n", + "RAPTOR works by recursively clustering and summarizing clusters in layers for retrieval.\n", + "\n", + "There two retrieval modes:\n", + "- tree_traversal -- traversing the tree of clusters, performing top-k at each level in the tree.\n", + "- collapsed -- treat the entire tree as a giant pile of nodes, perform simple top-k.\n", + "\n", + "See [the paper](https://arxiv.org/abs/2401.18059) for full algorithm details." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!pip install llama-index llama-index-packs-raptor llama-index-vector-stores-qdrant" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from llama_index.packs.raptor import RaptorPack\n", + "\n", + "# optionally download the pack to inspect/modify it yourself!\n", + "# from llama_index.core.llama_pack import download_llama_pack\n", + "# RaptorPack = download_llama_pack(\"RaptorPack\", \"./raptor_pack\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Will not apply HSTS. The HSTS database must be a regular and non-world-writable file.\n", + "ERROR: could not open HSTS store at '/home/loganm/.wget-hsts'. HSTS will be disabled.\n", + "--2024-02-29 22:16:11-- https://arxiv.org/pdf/2401.18059.pdf\n", + "Resolving arxiv.org (arxiv.org)... 151.101.3.42, 151.101.195.42, 151.101.131.42, ...\n", + "Connecting to arxiv.org (arxiv.org)|151.101.3.42|:443... connected.\n", + "HTTP request sent, awaiting response... 200 OK\n", + "Length: 2547113 (2.4M) [application/pdf]\n", + "Saving to: ‘./raptor_paper.pdf’\n", + "\n", + "./raptor_paper.pdf 100%[===================>] 2.43M 12.5MB/s in 0.2s \n", + "\n", + "2024-02-29 22:16:12 (12.5 MB/s) - ‘./raptor_paper.pdf’ saved [2547113/2547113]\n", + "\n" + ] + } + ], + "source": [ + "!wget https://arxiv.org/pdf/2401.18059.pdf -O ./raptor_paper.pdf" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "\n", + "os.environ[\"OPENAI_API_KEY\"] = \"sk-...\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Constructing the Clusters/Hierarchy Tree" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import nest_asyncio\n", + "\n", + "nest_asyncio.apply()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from llama_index.core import SimpleDirectoryReader\n", + "\n", + "documents = SimpleDirectoryReader(input_files=[\"./raptor_paper.pdf\"]).load_data()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Generating embeddings for level 0.\n", + "Performing clustering for level 0.\n", + "Generating summaries for level 0 with 10 clusters.\n", + "Level 0 created summaries/clusters: 10\n", + "Generating embeddings for level 1.\n", + "Performing clustering for level 1.\n", + "Generating summaries for level 1 with 1 clusters.\n", + "Level 1 created summaries/clusters: 1\n", + "Generating embeddings for level 2.\n", + "Performing clustering for level 2.\n", + "Generating summaries for level 2 with 1 clusters.\n", + "Level 2 created summaries/clusters: 1\n" + ] + } + ], + "source": [ + "from llama_index.core.node_parser import SentenceSplitter\n", + "from llama_index.llms.openai import OpenAI\n", + "from llama_index.embeddings.openai import OpenAIEmbedding\n", + "from llama_index.vector_stores.chroma import ChromaVectorStore\n", + "import chromadb\n", + "\n", + "client = chromadb.PersistentClient(path=\"./raptor_paper_db\")\n", + "collection = client.get_or_create_collection(\"raptor\")\n", + "\n", + "vector_store = ChromaVectorStore(chroma_collection=collection)\n", + "\n", + "raptor_pack = RaptorPack(\n", + " documents,\n", + " embed_model=OpenAIEmbedding(\n", + " model=\"text-embedding-3-small\"\n", + " ), # used for embedding clusters\n", + " llm=OpenAI(model=\"gpt-3.5-turbo\", temperature=0.1), # used for generating summaries\n", + " vector_store=vector_store, # used for storage\n", + " similarity_top_k=2, # top k for each layer, or overall top-k for collapsed\n", + " mode=\"collapsed\", # sets default mode\n", + " transformations=[\n", + " SentenceSplitter(chunk_size=400, chunk_overlap=50)\n", + " ], # transformations applied for ingestion\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Retrieval" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "2\n", + "Specifically, RAPTOR’s F-1 scores are at least 1.8% points higher than DPR and at least 5.3% points\n", + "higher than BM25.\n", + "Retriever GPT-3 F-1 Match GPT-4 F-1 Match UnifiedQA F-1 Match\n", + "Title + Abstract 25.2 22.2 17.5\n", + "BM25 46.6 50.2 26.4\n", + "DPR 51.3 53.0 32.1\n", + "RAPTOR 53.1 55.7 36.6\n", + "Table 4: Comparison of accuracies on the QuAL-\n", + "ITY dev dataset for two different language mod-\n", + "els (GPT-3, UnifiedQA 3B) using various retrieval\n", + "methods. RAPTOR outperforms the baselines of\n", + "BM25 and DPR by at least 2.0% in accuracy.\n", + "Model GPT-3 Acc. UnifiedQA Acc.\n", + "BM25 57.3 49.9\n", + "DPR 60.4 53.9\n", + "RAPTOR 62.4 56.6\n", + "Table 5: Results on F-1 Match scores of various\n", + "models on the QASPER dataset.\n", + "Model F-1 Match\n", + "LongT5 XL (Guo et al., 2022) 53.1\n", + "CoLT5 XL (Ainslie et al., 2023) 53.9\n", + "RAPTOR + GPT-4 55.7Comparison to State-of-the-art Systems\n", + "Building upon our controlled comparisons,\n", + "we examine RAPTOR’s performance relative\n", + "to other state-of-the-art models.\n" + ] + } + ], + "source": [ + "nodes = raptor_pack.run(\"What baselines is raptor compared against?\", mode=\"collapsed\")\n", + "print(len(nodes))\n", + "print(nodes[0].text)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Retrieved parent IDs from level 2: ['cc3b3f41-f4ca-4020-b11f-be7e0ce04c4f']\n", + "Retrieved 1 from parents at level 2.\n", + "Retrieved parent IDs from level 1: ['a4ca9426-a312-4a01-813a-c9b02aefc7e8']\n", + "Retrieved 2 from parents at level 1.\n", + "Retrieved parent IDs from level 0: ['63126782-2778-449f-99c0-1e8fd90caa36', 'd8f68d31-d878-41f1-aeb6-a7dde8ed5143']\n", + "Retrieved 4 from parents at level 0.\n", + "4\n", + "Specifically, RAPTOR’s F-1 scores are at least 1.8% points higher than DPR and at least 5.3% points\n", + "higher than BM25.\n", + "Retriever GPT-3 F-1 Match GPT-4 F-1 Match UnifiedQA F-1 Match\n", + "Title + Abstract 25.2 22.2 17.5\n", + "BM25 46.6 50.2 26.4\n", + "DPR 51.3 53.0 32.1\n", + "RAPTOR 53.1 55.7 36.6\n", + "Table 4: Comparison of accuracies on the QuAL-\n", + "ITY dev dataset for two different language mod-\n", + "els (GPT-3, UnifiedQA 3B) using various retrieval\n", + "methods. RAPTOR outperforms the baselines of\n", + "BM25 and DPR by at least 2.0% in accuracy.\n", + "Model GPT-3 Acc. UnifiedQA Acc.\n", + "BM25 57.3 49.9\n", + "DPR 60.4 53.9\n", + "RAPTOR 62.4 56.6\n", + "Table 5: Results on F-1 Match scores of various\n", + "models on the QASPER dataset.\n", + "Model F-1 Match\n", + "LongT5 XL (Guo et al., 2022) 53.1\n", + "CoLT5 XL (Ainslie et al., 2023) 53.9\n", + "RAPTOR + GPT-4 55.7Comparison to State-of-the-art Systems\n", + "Building upon our controlled comparisons,\n", + "we examine RAPTOR’s performance relative\n", + "to other state-of-the-art models.\n" + ] + } + ], + "source": [ + "nodes = raptor_pack.run(\n", + " \"What baselines is raptor compared against?\", mode=\"tree_traversal\"\n", + ")\n", + "print(len(nodes))\n", + "print(nodes[0].text)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading\n", + "\n", + "Since we saved to a vector store, we can also use it again! (For local vector stores, there is a `persist` and `from_persist_dir` method on the retriever)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from llama_index.packs.raptor import RaptorRetriever\n", + "\n", + "retriever = RaptorRetriever(\n", + " [],\n", + " embed_model=OpenAIEmbedding(\n", + " model=\"text-embedding-3-small\"\n", + " ), # used for embedding clusters\n", + " llm=OpenAI(model=\"gpt-3.5-turbo\", temperature=0.1), # used for generating summaries\n", + " vector_store=vector_store, # used for storage\n", + " similarity_top_k=2, # top k for each layer, or overall top-k for collapsed\n", + " mode=\"tree_traversal\", # sets default mode\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# if using a default vector store\n", + "# retriever.persist(\"./persist\")\n", + "# retriever = RaptorRetriever.from_persist_dir(\"./persist\", ...)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Query Engine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from llama_index.core.query_engine import RetrieverQueryEngine\n", + "\n", + "query_engine = RetrieverQueryEngine.from_args(\n", + " raptor_pack.retriever, llm=OpenAI(model=\"gpt-3.5-turbo\", temperature=0.1)\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "response = query_engine.query(\"What baselines was RAPTOR compared against?\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "BM25 and DPR\n" + ] + } + ], + "source": [ + "print(str(response))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "llama-index-4aB9_5sa-py3.10", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/data_level0.bin b/llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/data_level0.bin new file mode 100644 index 0000000000000000000000000000000000000000..ea3192e8ec5112eb8b4f2a7bde5d13bbb95e6ac0 GIT binary patch literal 6284000 zcmeFtfdBvi0Dz$VsTV1P3IhfV7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjxE(qc00000802p~jU9!M z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA zz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEj zFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r z3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@ z0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VK zfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5 zV8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM z7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b* z1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd z0RsjM7%*VKfB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VKfB^#r3>YwA hz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM7%*VqIS}Y^00961 literal 0 HcmV?d00001 diff --git a/llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/header.bin b/llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/header.bin new file mode 100644 index 0000000000000000000000000000000000000000..3e0932a7d0033aedf7dad4109641188fbb1f6091 GIT binary patch literal 100 tcmZQ%K!6v_2sVh-BLU&Jz-XxSe<%=u@)e*ojQ_7mJJntEx_t^%8~|Sk4$lAp literal 0 HcmV?d00001 diff --git a/llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/length.bin b/llama-index-packs/llama-index-packs-raptor/examples/raptor/81db1dbe-a06d-43a6-ba07-875398bc33a7/length.bin new file mode 100644 index 0000000000000000000000000000000000000000..45bfe72ed91d6db5b57c92b42f90f9f7645f9efc GIT binary patch literal 4000 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%0D)_ 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

-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

7L*jB$w{Cc3 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

3Ug{`rqj)xV$-D{#~-fz-#ztABi~^D8t!3lQ+N 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 z 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

    +~^V& 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 None: + response_synthesizer = get_response_synthesizer( + response_mode="tree_summarize", use_async=True, llm=llm + ) + super().__init__( + response_synthesizer=response_synthesizer, summary_prompt=summary_prompt + ) + + async def generate_summaries( + self, documents_per_cluster: List[List[BaseNode]] + ) -> List[str]: + """Generate summaries of documents per cluster. + + Args: + documents_per_cluster (List[List[BaseNode]]): List of documents per cluster + + Returns: + List[str]: List of summary for each cluster + """ + jobs = [] + for documents in documents_per_cluster: + with_scores = [NodeWithScore(node=doc, score=1.0) for doc in documents] + jobs.append( + self.response_synthesizer.asynthesize(self.summary_prompt, with_scores) + ) + + lock = asyncio.Semaphore(self.num_workers) + responses = [] + + # run the jobs while limiting the number of concurrent jobs to num_workers + for job in jobs: + async with lock: + responses.append(await job) + + return [str(response) for response in responses] + + +class RaptorRetriever(BaseRetriever): + """Raptor indexing retriever.""" + + def __init__( + self, + documents: List[BaseNode], + tree_depth: int = 3, + similarity_top_k: int = 2, + llm: Optional[LLM] = None, + embed_model: Optional[BaseEmbedding] = None, + vector_store: Optional[VectorStore] = None, + transformations: Optional[List[TransformComponent]] = None, + summary_module: Optional[SummaryModule] = None, + existing_index: Optional[VectorStoreIndex] = None, + mode: QueryModes = "collapsed", + **kwargs: Any, + ) -> None: + """Init params.""" + super().__init__( + **kwargs, + ) + + self.mode = mode + self.summary_module = summary_module or SummaryModule(llm=llm) + self.index = existing_index or VectorStoreIndex( + nodes=[], + storage_context=StorageContext.from_defaults(vector_store=vector_store), + embed_model=embed_model, + transformations=transformations, + ) + self.tree_depth = tree_depth + self.similarity_top_k = similarity_top_k + + if len(documents) > 0: + asyncio.run(self.insert(documents)) + + def _get_embeddings_per_level(self, level: int = 0) -> List[float]: + """Retrieve embeddings per level in the abstraction tree. + + Args: + level (int, optional): Target level. Defaults to 0 which stands for leaf nodes. + + Returns: + List[float]: List of embeddings + """ + filters = MetadataFilters(filters=[MetadataFilter("level", level)]) + + # kind of janky, but should work with any vector index + source_nodes = self.index.as_retriever( + similarity_top_k=10000, filters=filters + ).retrieve("retrieve") + + return [x.node for x in source_nodes] + + async def insert(self, documents: List[BaseNode]) -> None: + """Given a set of documents, this function inserts higher level of abstractions within the index. + + For later retrieval + + Args: + documents (List[BaseNode]): List of Documents + """ + embed_model = self.index._embed_model + transformations = self.index._transformations + + cur_nodes = run_transformations(documents, transformations, in_place=False) + for level in range(self.tree_depth): + # get the embeddings for the current documents + + if self._verbose: + print(f"Generating embeddings for level {level}.") + + embeddings = await embed_model.aget_text_embedding_batch( + [node.get_content(metadata_mode="embed") for node in cur_nodes] + ) + assert len(embeddings) == len(cur_nodes) + id_to_embedding = { + node.id_: embedding for node, embedding in zip(cur_nodes, embeddings) + } + + if self._verbose: + print(f"Performing clustering for level {level}.") + + # cluster the documents + nodes_per_cluster = get_clusters(cur_nodes, id_to_embedding) + + if self._verbose: + print( + f"Generating summaries for level {level} with {len(nodes_per_cluster)} clusters." + ) + summaries_per_cluster = await self.summary_module.generate_summaries( + nodes_per_cluster + ) + + if self._verbose: + print( + f"Level {level} created summaries/clusters: {len(nodes_per_cluster)}" + ) + + # replace the current nodes with their summaries + new_nodes = [ + TextNode( + text=summary, + metadata={"level": level}, + excluded_embed_metadata_keys=["level"], + excluded_llm_metadata_keys=["level"], + ) + for summary in summaries_per_cluster + ] + + # insert the nodes with their embeddings and parent_id + nodes_with_embeddings = [] + for cluster, summary_doc in zip(nodes_per_cluster, new_nodes): + for node in cluster: + node.metadata["parent_id"] = summary_doc.id_ + node.excluded_embed_metadata_keys.append("parent_id") + node.excluded_llm_metadata_keys.append("parent_id") + node.embedding = id_to_embedding[node.id_] + nodes_with_embeddings.append(node) + + self.index.insert_nodes(nodes_with_embeddings) + + # set the current nodes to the new nodes + cur_nodes = new_nodes + + self.index.insert_nodes(cur_nodes) + + async def collapsed_retrieval(self, query_str: str) -> Response: + """Query the index as a collapsed tree -- i.e. a single pool of nodes.""" + return await self.index.as_retriever( + similarity_top_k=self.similarity_top_k + ).aretrieve(query_str) + + async def tree_traversal_retrieval(self, query_str: str) -> Response: + """Query the index as a tree, traversing the tree from the top down.""" + # get top k nodes for each level, starting with the top + parent_ids = None + nodes = [] + level = self.tree_depth - 1 + while level >= 0: + # retrieve nodes at the current level + if parent_ids is None: + nodes = await self.index.as_retriever( + similarity_top_k=self.similarity_top_k, + filters=MetadataFilters( + filters=[MetadataFilter(key="level", value=level)] + ), + ).aretrieve(query_str) + + parent_ids = [node.id_ for node in nodes] + if self._verbose: + print(f"Retrieved parent IDs from level {level}: {parent_ids!s}") + # retrieve nodes that are children of the nodes at the previous level + elif parent_ids is not None and len(parent_ids) > 0: + nested_nodes = await asyncio.gather( + *[ + self.index.as_retriever( + similarity_top_k=self.similarity_top_k, + filters=MetadataFilters( + filters=[MetadataFilter(key="parent_id", value=id_)] + ), + ).aretrieve(query_str) + for id_ in parent_ids + ] + ) + + nodes = [node for nested in nested_nodes for node in nested] + + if self._verbose: + print(f"Retrieved {len(nodes)} from parents at level {level}.") + + level -= 1 + parent_ids = None + + return nodes + + def _retrieve(self, query_bundle: QueryBundle) -> List[NodeWithScore]: + """Retrieve nodes given query and mode.""" + # not used, needed for type checking + + def retrieve( + self, query_str_or_bundle: QueryType, mode: Optional[QueryModes] = None + ) -> List[NodeWithScore]: + """Retrieve nodes given query and mode.""" + if isinstance(query_str_or_bundle, QueryBundle): + query_str = query_str_or_bundle.query_str + else: + query_str = query_str_or_bundle + + return asyncio.run(self.aretrieve(query_str, mode or self.mode)) + + async def aretrieve( + self, query_str_or_bundle: QueryType, mode: Optional[QueryModes] = None + ) -> List[NodeWithScore]: + """Retrieve nodes given query and mode.""" + if isinstance(query_str_or_bundle, QueryBundle): + query_str = query_str_or_bundle.query_str + else: + query_str = query_str_or_bundle + + mode = mode or self.mode + if mode == "tree_traversal": + return await self.tree_traversal_retrieval(query_str) + elif mode == "collapsed": + return await self.collapsed_retrieval(query_str) + else: + raise ValueError(f"Invalid mode: {mode}") + + def persist(self, persist_dir: str) -> None: + self.index.storage_context.persist(persist_dir=persist_dir) + + @classmethod + def from_persist_dir( + cls: "RaptorRetriever", + persist_dir: str, + embed_model: Optional[BaseEmbedding] = None, + **kwargs: Any, + ) -> "RaptorRetriever": + storage_context = StorageContext.from_defaults(persist_dir=persist_dir) + return cls( + [], + existing_index=load_index_from_storage( + storage_context, embed_model=embed_model + ), + **kwargs, + ) + + +class RaptorPack(BaseLlamaPack): + """Raptor pack.""" + + def __init__( + self, + documents: List[BaseNode], + llm: Optional[LLM] = None, + embed_model: Optional[BaseEmbedding] = None, + vector_store: Optional[VectorStore] = None, + similarity_top_k: int = 2, + mode: QueryModes = "collapsed", + verbose: bool = True, + **kwargs: Any, + ) -> None: + """Init params.""" + self.retriever = RaptorRetriever( + documents, + embed_model=embed_model, + llm=llm, + similarity_top_k=similarity_top_k, + vector_store=vector_store, + mode=mode, + verbose=verbose, + **kwargs, + ) + + def get_modules(self) -> Dict[str, Any]: + """Get modules.""" + return { + "retriever": self.retriever, + } + + def run( + self, + query: str, + mode: Optional[QueryModes] = None, + ) -> Any: + """Run the pipeline.""" + return self.retriever.retrieve(query, mode=mode) diff --git a/llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/clustering.py b/llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/clustering.py new file mode 100644 index 0000000000000..3969446f53ac0 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/clustering.py @@ -0,0 +1,169 @@ +""" +Minorly tweaked from https://github.com/parthsarthi03/raptor/blob/master/raptor/cluster_tree_builder.py. + +Full credits to the original authors! +""" + +import numpy as np +import random +import tiktoken +import umap +from sklearn.mixture import GaussianMixture +from typing import Dict, List, Optional + +from llama_index.core.schema import BaseNode + + +# Set a random seed for reproducibility +RANDOM_SEED = 224 +random.seed(RANDOM_SEED) + + +def global_cluster_embeddings( + embeddings: np.ndarray, + dim: int, + n_neighbors: Optional[int] = None, + metric: str = "cosine", +) -> np.ndarray: + if n_neighbors is None: + n_neighbors = int((len(embeddings) - 1) ** 0.5) + return umap.UMAP( + n_neighbors=n_neighbors, n_components=dim, metric=metric + ).fit_transform(embeddings) + + +def local_cluster_embeddings( + embeddings: np.ndarray, dim: int, num_neighbors: int = 10, metric: str = "cosine" +) -> np.ndarray: + return umap.UMAP( + n_neighbors=num_neighbors, n_components=dim, metric=metric + ).fit_transform(embeddings) + + +def get_optimal_clusters( + embeddings: np.ndarray, max_clusters: int = 50, random_state: int = RANDOM_SEED +) -> int: + max_clusters = min(max_clusters, len(embeddings)) + n_clusters = np.arange(1, max_clusters) + bics = [] + for n in n_clusters: + gm = GaussianMixture(n_components=n, random_state=random_state) + gm.fit(embeddings) + bics.append(gm.bic(embeddings)) + return n_clusters[np.argmin(bics)] + + +def GMM_cluster(embeddings: np.ndarray, threshold: float, random_state: int = 0): + n_clusters = get_optimal_clusters(embeddings) + gm = GaussianMixture(n_components=n_clusters, random_state=random_state) + gm.fit(embeddings) + probs = gm.predict_proba(embeddings) + labels = [np.where(prob > threshold)[0] for prob in probs] + return labels, n_clusters + + +def perform_clustering( + embeddings: np.ndarray, + dim: int, + threshold: float, +) -> List[np.ndarray]: + # If the number of embeddings is less than or equal to the dimension, return a list of zeros + # This means all nodes are in the same cluster. + # Otherwise, we will get an error when trying to cluster. + if len(embeddings) <= dim + 1: + return [np.array([0]) for _ in range(len(embeddings))] + + reduced_embeddings_global = global_cluster_embeddings(embeddings, dim) + global_clusters, n_global_clusters = GMM_cluster( + reduced_embeddings_global, threshold + ) + + all_local_clusters = [np.array([]) for _ in range(len(embeddings))] + total_clusters = 0 + + for i in range(n_global_clusters): + global_cluster_embeddings_ = embeddings[ + np.array([i in gc for gc in global_clusters]) + ] + + if len(global_cluster_embeddings_) == 0: + continue + if len(global_cluster_embeddings_) <= dim + 1: + local_clusters = [np.array([0]) for _ in global_cluster_embeddings_] + n_local_clusters = 1 + else: + reduced_embeddings_local = local_cluster_embeddings( + global_cluster_embeddings_, dim + ) + local_clusters, n_local_clusters = GMM_cluster( + reduced_embeddings_local, threshold + ) + + for j in range(n_local_clusters): + local_cluster_embeddings_ = global_cluster_embeddings_[ + np.array([j in lc for lc in local_clusters]) + ] + indices = np.where( + (embeddings == local_cluster_embeddings_[:, None]).all(-1) + )[1] + for idx in indices: + all_local_clusters[idx] = np.append( + all_local_clusters[idx], j + total_clusters + ) + + total_clusters += n_local_clusters + + return all_local_clusters + + +def get_clusters( + nodes: List[BaseNode], + embedding_map: Dict[str, List[List[float]]], + max_length_in_cluster: int = 10000, # 10k tokens max per cluster + tokenizer: tiktoken.Encoding = tiktoken.get_encoding("cl100k_base"), + reduction_dimension: int = 10, + threshold: float = 0.1, +) -> List[List[BaseNode]]: + # get embeddings + embeddings = np.array([np.array(embedding_map[node.id_]) for node in nodes]) + + # Perform the clustering + clusters = perform_clustering( + embeddings, dim=reduction_dimension, threshold=threshold + ) + + # Initialize an empty list to store the clusters of nodes + node_clusters = [] + + # Iterate over each unique label in the clusters + for label in np.unique(np.concatenate(clusters)): + # Get the indices of the nodes that belong to this cluster + indices = [i for i, cluster in enumerate(clusters) if label in cluster] + + # Add the corresponding nodes to the node_clusters list + cluster_nodes = [nodes[i] for i in indices] + + # Base case: if the cluster only has one node, do not attempt to recluster it + if len(cluster_nodes) == 1: + node_clusters.append(cluster_nodes) + continue + + # Calculate the total length of the text in the nodes + total_length = sum([len(tokenizer.encode(node.text)) for node in cluster_nodes]) + + # If the total length exceeds the maximum allowed length, recluster this cluster + if total_length > max_length_in_cluster: + node_clusters.extend( + get_clusters( + cluster_nodes, + embedding_map, + max_length_in_cluster=max_length_in_cluster, + tokenizer=tokenizer, + reduction_dimension=reduction_dimension, + threshold=threshold, + ) + ) + else: + node_clusters.append(cluster_nodes) + + return node_clusters diff --git a/llama-index-packs/llama-index-packs-raptor/poetry.lock b/llama-index-packs/llama-index-packs-raptor/poetry.lock new file mode 100644 index 0000000000000..2fedda1027eb2 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/poetry.lock @@ -0,0 +1,4714 @@ +# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. + +[[package]] +name = "aiohttp" +version = "3.9.3" +description = "Async http client/server framework (asyncio)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"}, + {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"}, + {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"}, + {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"}, + {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"}, + {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"}, + {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"}, + {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"}, + {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"}, + {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"}, + {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"}, + {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"}, + {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"}, + {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"}, + {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"}, + {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"}, + {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"}, + {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"}, + {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"}, + {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"}, + {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"}, + {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"}, + {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"}, + {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"}, + {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"}, + {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"}, + {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"}, + {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"}, + {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"}, + {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"}, + {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"}, + {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"}, + {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"}, + {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"}, + {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"}, + {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"}, + {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"}, + {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"}, + {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"}, + {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"}, + {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"}, + {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"}, + {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"}, + {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"}, + {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"}, + {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"}, + {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"}, + {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"}, + {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"}, + {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"}, + {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"}, + {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"}, + {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"}, + {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"}, + {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"}, + {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"}, + {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"}, + {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"}, + {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"}, + {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"}, + {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"}, + {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"}, + {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"}, + {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"}, + {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"}, + {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"}, + {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"}, + {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"}, + {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"}, + {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"}, + {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"}, + {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"}, + {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"}, + {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"}, + {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"}, + {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"}, +] + +[package.dependencies] +aiosignal = ">=1.1.2" +async-timeout = {version = ">=4.0,<5.0", markers = "python_version < \"3.11\""} +attrs = ">=17.3.0" +frozenlist = ">=1.1.1" +multidict = ">=4.5,<7.0" +yarl = ">=1.0,<2.0" + +[package.extras] +speedups = ["Brotli", "aiodns", "brotlicffi"] + +[[package]] +name = "aiosignal" +version = "1.3.1" +description = "aiosignal: a list of registered asynchronous callbacks" +optional = false +python-versions = ">=3.7" +files = [ + {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, + {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, +] + +[package.dependencies] +frozenlist = ">=1.1.0" + +[[package]] +name = "annotated-types" +version = "0.6.0" +description = "Reusable constraint types to use with typing.Annotated" +optional = false +python-versions = ">=3.8" +files = [ + {file = "annotated_types-0.6.0-py3-none-any.whl", hash = "sha256:0641064de18ba7a25dee8f96403ebc39113d0cb953a01429249d5c7564666a43"}, + {file = "annotated_types-0.6.0.tar.gz", hash = "sha256:563339e807e53ffd9c267e99fc6d9ea23eb8443c08f112651963e24e22f84a5d"}, +] + +[[package]] +name = "anyio" +version = "4.3.0" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +optional = false +python-versions = ">=3.8" +files = [ + {file = "anyio-4.3.0-py3-none-any.whl", hash = "sha256:048e05d0f6caeed70d731f3db756d35dcc1f35747c8c403364a8332c630441b8"}, + {file = "anyio-4.3.0.tar.gz", hash = "sha256:f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6"}, +] + +[package.dependencies] +exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} +idna = ">=2.8" +sniffio = ">=1.1" +typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""} + +[package.extras] +doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] +trio = ["trio (>=0.23)"] + +[[package]] +name = "appnope" +version = "0.1.4" +description = "Disable App Nap on macOS >= 10.9" +optional = false +python-versions = ">=3.6" +files = [ + {file = "appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c"}, + {file = "appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee"}, +] + +[[package]] +name = "argon2-cffi" +version = "23.1.0" +description = "Argon2 for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, + {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, +] + +[package.dependencies] +argon2-cffi-bindings = "*" + +[package.extras] +dev = ["argon2-cffi[tests,typing]", "tox (>4)"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-copybutton", "sphinx-notfound-page"] +tests = ["hypothesis", "pytest"] +typing = ["mypy"] + +[[package]] +name = "argon2-cffi-bindings" +version = "21.2.0" +description = "Low-level CFFI bindings for Argon2" +optional = false +python-versions = ">=3.6" +files = [ + {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"}, + {file = "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"}, +] + +[package.dependencies] +cffi = ">=1.0.1" + +[package.extras] +dev = ["cogapp", "pre-commit", "pytest", "wheel"] +tests = ["pytest"] + +[[package]] +name = "arrow" +version = "1.3.0" +description = "Better dates & times for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, + {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, +] + +[package.dependencies] +python-dateutil = ">=2.7.0" +types-python-dateutil = ">=2.8.10" + +[package.extras] +doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] +test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] + +[[package]] +name = "astroid" +version = "2.13.5" +description = "An abstract syntax tree for Python with inference support." +optional = false +python-versions = ">=3.7.2" +files = [ + {file = "astroid-2.13.5-py3-none-any.whl", hash = "sha256:6891f444625b6edb2ac798829b689e95297e100ddf89dbed5a8c610e34901501"}, + {file = "astroid-2.13.5.tar.gz", hash = "sha256:df164d5ac811b9f44105a72b8f9d5edfb7b5b2d7e979b04ea377a77b3229114a"}, +] + +[package.dependencies] +lazy-object-proxy = ">=1.4.0" +typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} +wrapt = [ + {version = ">=1.11,<2", markers = "python_version < \"3.11\""}, + {version = ">=1.14,<2", markers = "python_version >= \"3.11\""}, +] + +[[package]] +name = "asttokens" +version = "2.4.1" +description = "Annotate AST trees with source code positions" +optional = false +python-versions = "*" +files = [ + {file = "asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24"}, + {file = "asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0"}, +] + +[package.dependencies] +six = ">=1.12.0" + +[package.extras] +astroid = ["astroid (>=1,<2)", "astroid (>=2,<4)"] +test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] + +[[package]] +name = "async-lru" +version = "2.0.4" +description = "Simple LRU cache for asyncio" +optional = false +python-versions = ">=3.8" +files = [ + {file = "async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627"}, + {file = "async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} + +[[package]] +name = "async-timeout" +version = "4.0.3" +description = "Timeout context manager for asyncio programs" +optional = false +python-versions = ">=3.7" +files = [ + {file = "async-timeout-4.0.3.tar.gz", hash = "sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f"}, + {file = "async_timeout-4.0.3-py3-none-any.whl", hash = "sha256:7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"}, +] + +[[package]] +name = "attrs" +version = "23.2.0" +description = "Classes Without Boilerplate" +optional = false +python-versions = ">=3.7" +files = [ + {file = "attrs-23.2.0-py3-none-any.whl", hash = "sha256:99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"}, + {file = "attrs-23.2.0.tar.gz", hash = "sha256:935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30"}, +] + +[package.extras] +cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] +dev = ["attrs[tests]", "pre-commit"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] +tests = ["attrs[tests-no-zope]", "zope-interface"] +tests-mypy = ["mypy (>=1.6)", "pytest-mypy-plugins"] +tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist[psutil]"] + +[[package]] +name = "babel" +version = "2.14.0" +description = "Internationalization utilities" +optional = false +python-versions = ">=3.7" +files = [ + {file = "Babel-2.14.0-py3-none-any.whl", hash = "sha256:efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"}, + {file = "Babel-2.14.0.tar.gz", hash = "sha256:6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363"}, +] + +[package.extras] +dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] + +[[package]] +name = "backcall" +version = "0.2.0" +description = "Specifications for callback functions passed in to an API" +optional = false +python-versions = "*" +files = [ + {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, + {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, +] + +[[package]] +name = "beautifulsoup4" +version = "4.12.3" +description = "Screen-scraping library" +optional = false +python-versions = ">=3.6.0" +files = [ + {file = "beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed"}, + {file = "beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051"}, +] + +[package.dependencies] +soupsieve = ">1.2" + +[package.extras] +cchardet = ["cchardet"] +chardet = ["chardet"] +charset-normalizer = ["charset-normalizer"] +html5lib = ["html5lib"] +lxml = ["lxml"] + +[[package]] +name = "black" +version = "23.9.1" +description = "The uncompromising code formatter." +optional = false +python-versions = ">=3.8" +files = [ + {file = "black-23.9.1-cp310-cp310-macosx_10_16_arm64.whl", hash = "sha256:d6bc09188020c9ac2555a498949401ab35bb6bf76d4e0f8ee251694664df6301"}, + {file = "black-23.9.1-cp310-cp310-macosx_10_16_universal2.whl", hash = "sha256:13ef033794029b85dfea8032c9d3b92b42b526f1ff4bf13b2182ce4e917f5100"}, + {file = "black-23.9.1-cp310-cp310-macosx_10_16_x86_64.whl", hash = "sha256:75a2dc41b183d4872d3a500d2b9c9016e67ed95738a3624f4751a0cb4818fe71"}, + {file = "black-23.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13a2e4a93bb8ca74a749b6974925c27219bb3df4d42fc45e948a5d9feb5122b7"}, + {file = "black-23.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:adc3e4442eef57f99b5590b245a328aad19c99552e0bdc7f0b04db6656debd80"}, + {file = "black-23.9.1-cp311-cp311-macosx_10_16_arm64.whl", hash = "sha256:8431445bf62d2a914b541da7ab3e2b4f3bc052d2ccbf157ebad18ea126efb91f"}, + {file = "black-23.9.1-cp311-cp311-macosx_10_16_universal2.whl", hash = "sha256:8fc1ddcf83f996247505db6b715294eba56ea9372e107fd54963c7553f2b6dfe"}, + {file = "black-23.9.1-cp311-cp311-macosx_10_16_x86_64.whl", hash = "sha256:7d30ec46de88091e4316b17ae58bbbfc12b2de05e069030f6b747dfc649ad186"}, + {file = "black-23.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:031e8c69f3d3b09e1aa471a926a1eeb0b9071f80b17689a655f7885ac9325a6f"}, + {file = "black-23.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:538efb451cd50f43aba394e9ec7ad55a37598faae3348d723b59ea8e91616300"}, + {file = "black-23.9.1-cp38-cp38-macosx_10_16_arm64.whl", hash = "sha256:638619a559280de0c2aa4d76f504891c9860bb8fa214267358f0a20f27c12948"}, + {file = "black-23.9.1-cp38-cp38-macosx_10_16_universal2.whl", hash = "sha256:a732b82747235e0542c03bf352c126052c0fbc458d8a239a94701175b17d4855"}, + {file = "black-23.9.1-cp38-cp38-macosx_10_16_x86_64.whl", hash = "sha256:cf3a4d00e4cdb6734b64bf23cd4341421e8953615cba6b3670453737a72ec204"}, + {file = "black-23.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf99f3de8b3273a8317681d8194ea222f10e0133a24a7548c73ce44ea1679377"}, + {file = "black-23.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:14f04c990259576acd093871e7e9b14918eb28f1866f91968ff5524293f9c573"}, + {file = "black-23.9.1-cp39-cp39-macosx_10_16_arm64.whl", hash = "sha256:c619f063c2d68f19b2d7270f4cf3192cb81c9ec5bc5ba02df91471d0b88c4c5c"}, + {file = "black-23.9.1-cp39-cp39-macosx_10_16_universal2.whl", hash = "sha256:6a3b50e4b93f43b34a9d3ef00d9b6728b4a722c997c99ab09102fd5efdb88325"}, + {file = "black-23.9.1-cp39-cp39-macosx_10_16_x86_64.whl", hash = "sha256:c46767e8df1b7beefb0899c4a95fb43058fa8500b6db144f4ff3ca38eb2f6393"}, + {file = "black-23.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50254ebfa56aa46a9fdd5d651f9637485068a1adf42270148cd101cdf56e0ad9"}, + {file = "black-23.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:403397c033adbc45c2bd41747da1f7fc7eaa44efbee256b53842470d4ac5a70f"}, + {file = "black-23.9.1-py3-none-any.whl", hash = "sha256:6ccd59584cc834b6d127628713e4b6b968e5f79572da66284532525a042549f9"}, + {file = "black-23.9.1.tar.gz", hash = "sha256:24b6b3ff5c6d9ea08a8888f6977eae858e1f340d7260cf56d70a49823236b62d"}, +] + +[package.dependencies] +click = ">=8.0.0" +ipython = {version = ">=7.8.0", optional = true, markers = "extra == \"jupyter\""} +mypy-extensions = ">=0.4.3" +packaging = ">=22.0" +pathspec = ">=0.9.0" +platformdirs = ">=2" +tokenize-rt = {version = ">=3.2.0", optional = true, markers = "extra == \"jupyter\""} +tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} + +[package.extras] +colorama = ["colorama (>=0.4.3)"] +d = ["aiohttp (>=3.7.4)"] +jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] +uvloop = ["uvloop (>=0.15.2)"] + +[[package]] +name = "bleach" +version = "6.1.0" +description = "An easy safelist-based HTML-sanitizing tool." +optional = false +python-versions = ">=3.8" +files = [ + {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, + {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, +] + +[package.dependencies] +six = ">=1.9.0" +webencodings = "*" + +[package.extras] +css = ["tinycss2 (>=1.1.0,<1.3)"] + +[[package]] +name = "certifi" +version = "2024.2.2" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.6" +files = [ + {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, + {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, +] + +[[package]] +name = "cffi" +version = "1.16.0" +description = "Foreign Function Interface for Python calling C code." +optional = false +python-versions = ">=3.8" +files = [ + {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"}, + {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"}, + {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"}, + {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"}, + {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"}, + {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"}, + {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"}, + {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"}, + {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"}, + {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"}, + {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"}, + {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"}, + {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"}, + {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"}, + {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"}, + {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"}, + {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"}, + {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"}, + {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"}, + {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"}, + {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"}, + {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"}, + {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"}, + {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"}, + {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"}, + {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"}, + {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"}, + {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"}, + {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"}, + {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"}, + {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"}, + {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"}, +] + +[package.dependencies] +pycparser = "*" + +[[package]] +name = "cfgv" +version = "3.4.0" +description = "Validate configuration and produce human readable error messages." +optional = false +python-versions = ">=3.8" +files = [ + {file = "cfgv-3.4.0-py2.py3-none-any.whl", hash = "sha256:b7265b1f29fd3316bfcd2b330d63d024f2bfd8bcb8b0272f8e19a504856c48f9"}, + {file = "cfgv-3.4.0.tar.gz", hash = "sha256:e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560"}, +] + +[[package]] +name = "charset-normalizer" +version = "3.3.2" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, + {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, + {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, + {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, + {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, + {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, + {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, + {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, +] + +[[package]] +name = "click" +version = "8.1.7" +description = "Composable command line interface toolkit" +optional = false +python-versions = ">=3.7" +files = [ + {file = "click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"}, + {file = "click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[[package]] +name = "codespell" +version = "2.2.6" +description = "Codespell" +optional = false +python-versions = ">=3.8" +files = [ + {file = "codespell-2.2.6-py3-none-any.whl", hash = "sha256:9ee9a3e5df0990604013ac2a9f22fa8e57669c827124a2e961fe8a1da4cacc07"}, + {file = "codespell-2.2.6.tar.gz", hash = "sha256:a8c65d8eb3faa03deabab6b3bbe798bea72e1799c7e9e955d57eca4096abcff9"}, +] + +[package.dependencies] +tomli = {version = "*", optional = true, markers = "python_version < \"3.11\" and extra == \"toml\""} + +[package.extras] +dev = ["Pygments", "build", "chardet", "pre-commit", "pytest", "pytest-cov", "pytest-dependency", "ruff", "tomli", "twine"] +hard-encoding-detection = ["chardet"] +toml = ["tomli"] +types = ["chardet (>=5.1.0)", "mypy", "pytest", "pytest-cov", "pytest-dependency"] + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "comm" +version = "0.2.1" +description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." +optional = false +python-versions = ">=3.8" +files = [ + {file = "comm-0.2.1-py3-none-any.whl", hash = "sha256:87928485c0dfc0e7976fd89fc1e187023cf587e7c353e4a9b417555b44adf021"}, + {file = "comm-0.2.1.tar.gz", hash = "sha256:0bc91edae1344d39d3661dcbc36937181fdaddb304790458f8b044dbc064b89a"}, +] + +[package.dependencies] +traitlets = ">=4" + +[package.extras] +test = ["pytest"] + +[[package]] +name = "cryptography" +version = "42.0.5" +description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +optional = false +python-versions = ">=3.7" +files = [ + {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a30596bae9403a342c978fb47d9b0ee277699fa53bbafad14706af51fe543d16"}, + {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:b7ffe927ee6531c78f81aa17e684e2ff617daeba7f189f911065b2ea2d526dec"}, + {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2424ff4c4ac7f6b8177b53c17ed5d8fa74ae5955656867f5a8affaca36a27abb"}, + {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329906dcc7b20ff3cad13c069a78124ed8247adcac44b10bea1130e36caae0b4"}, + {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:b03c2ae5d2f0fc05f9a2c0c997e1bc18c8229f392234e8a0194f202169ccd278"}, + {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8837fe1d6ac4a8052a9a8ddab256bc006242696f03368a4009be7ee3075cdb7"}, + {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0270572b8bd2c833c3981724b8ee9747b3ec96f699a9665470018594301439ee"}, + {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:b8cac287fafc4ad485b8a9b67d0ee80c66bf3574f655d3b97ef2e1082360faf1"}, + {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:16a48c23a62a2f4a285699dba2e4ff2d1cff3115b9df052cdd976a18856d8e3d"}, + {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2bce03af1ce5a5567ab89bd90d11e7bbdff56b8af3acbbec1faded8f44cb06da"}, + {file = "cryptography-42.0.5-cp37-abi3-win32.whl", hash = "sha256:b6cd2203306b63e41acdf39aa93b86fb566049aeb6dc489b70e34bcd07adca74"}, + {file = "cryptography-42.0.5-cp37-abi3-win_amd64.whl", hash = "sha256:98d8dc6d012b82287f2c3d26ce1d2dd130ec200c8679b6213b3c73c08b2b7940"}, + {file = "cryptography-42.0.5-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:5e6275c09d2badf57aea3afa80d975444f4be8d3bc58f7f80d2a484c6f9485c8"}, + {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4985a790f921508f36f81831817cbc03b102d643b5fcb81cd33df3fa291a1a1"}, + {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cde5f38e614f55e28d831754e8a3bacf9ace5d1566235e39d91b35502d6936e"}, + {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7367d7b2eca6513681127ebad53b2582911d1736dc2ffc19f2c3ae49997496bc"}, + {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cd2030f6650c089aeb304cf093f3244d34745ce0cfcc39f20c6fbfe030102e2a"}, + {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a2913c5375154b6ef2e91c10b5720ea6e21007412f6437504ffea2109b5a33d7"}, + {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:c41fb5e6a5fe9ebcd58ca3abfeb51dffb5d83d6775405305bfa8715b76521922"}, + {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3eaafe47ec0d0ffcc9349e1708be2aaea4c6dd4978d76bf6eb0cb2c13636c6fc"}, + {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1b95b98b0d2af784078fa69f637135e3c317091b615cd0905f8b8a087e86fa30"}, + {file = "cryptography-42.0.5-cp39-abi3-win32.whl", hash = "sha256:1f71c10d1e88467126f0efd484bd44bca5e14c664ec2ede64c32f20875c0d413"}, + {file = "cryptography-42.0.5-cp39-abi3-win_amd64.whl", hash = "sha256:a011a644f6d7d03736214d38832e030d8268bcff4a41f728e6030325fea3e400"}, + {file = "cryptography-42.0.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:9481ffe3cf013b71b2428b905c4f7a9a4f76ec03065b05ff499bb5682a8d9ad8"}, + {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ba334e6e4b1d92442b75ddacc615c5476d4ad55cc29b15d590cc6b86efa487e2"}, + {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ba3e4a42397c25b7ff88cdec6e2a16c2be18720f317506ee25210f6d31925f9c"}, + {file = "cryptography-42.0.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:111a0d8553afcf8eb02a4fea6ca4f59d48ddb34497aa8706a6cf536f1a5ec576"}, + {file = "cryptography-42.0.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cd65d75953847815962c84a4654a84850b2bb4aed3f26fadcc1c13892e1e29f6"}, + {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e807b3188f9eb0eaa7bbb579b462c5ace579f1cedb28107ce8b48a9f7ad3679e"}, + {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f12764b8fffc7a123f641d7d049d382b73f96a34117e0b637b80643169cec8ac"}, + {file = "cryptography-42.0.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:37dd623507659e08be98eec89323469e8c7b4c1407c85112634ae3dbdb926fdd"}, + {file = "cryptography-42.0.5.tar.gz", hash = "sha256:6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"}, +] + +[package.dependencies] +cffi = {version = ">=1.12", markers = "platform_python_implementation != \"PyPy\""} + +[package.extras] +docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"] +docstest = ["pyenchant (>=1.6.11)", "readme-renderer", "sphinxcontrib-spelling (>=4.0.1)"] +nox = ["nox"] +pep8test = ["check-sdist", "click", "mypy", "ruff"] +sdist = ["build"] +ssh = ["bcrypt (>=3.1.5)"] +test = ["certifi", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] +test-randomorder = ["pytest-randomly"] + +[[package]] +name = "dataclasses-json" +version = "0.6.4" +description = "Easily serialize dataclasses to and from JSON." +optional = false +python-versions = ">=3.7,<4.0" +files = [ + {file = "dataclasses_json-0.6.4-py3-none-any.whl", hash = "sha256:f90578b8a3177f7552f4e1a6e535e84293cd5da421fcce0642d49c0d7bdf8df2"}, + {file = "dataclasses_json-0.6.4.tar.gz", hash = "sha256:73696ebf24936560cca79a2430cbc4f3dd23ac7bf46ed17f38e5e5e7657a6377"}, +] + +[package.dependencies] +marshmallow = ">=3.18.0,<4.0.0" +typing-inspect = ">=0.4.0,<1" + +[[package]] +name = "debugpy" +version = "1.8.1" +description = "An implementation of the Debug Adapter Protocol for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "debugpy-1.8.1-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:3bda0f1e943d386cc7a0e71bfa59f4137909e2ed947fb3946c506e113000f741"}, + {file = "debugpy-1.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dda73bf69ea479c8577a0448f8c707691152e6c4de7f0c4dec5a4bc11dee516e"}, + {file = "debugpy-1.8.1-cp310-cp310-win32.whl", hash = "sha256:3a79c6f62adef994b2dbe9fc2cc9cc3864a23575b6e387339ab739873bea53d0"}, + {file = "debugpy-1.8.1-cp310-cp310-win_amd64.whl", hash = "sha256:7eb7bd2b56ea3bedb009616d9e2f64aab8fc7000d481faec3cd26c98a964bcdd"}, + {file = "debugpy-1.8.1-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:016a9fcfc2c6b57f939673c874310d8581d51a0fe0858e7fac4e240c5eb743cb"}, + {file = "debugpy-1.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd97ed11a4c7f6d042d320ce03d83b20c3fb40da892f994bc041bbc415d7a099"}, + {file = "debugpy-1.8.1-cp311-cp311-win32.whl", hash = "sha256:0de56aba8249c28a300bdb0672a9b94785074eb82eb672db66c8144fff673146"}, + {file = "debugpy-1.8.1-cp311-cp311-win_amd64.whl", hash = "sha256:1a9fe0829c2b854757b4fd0a338d93bc17249a3bf69ecf765c61d4c522bb92a8"}, + {file = "debugpy-1.8.1-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:3ebb70ba1a6524d19fa7bb122f44b74170c447d5746a503e36adc244a20ac539"}, + {file = "debugpy-1.8.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2e658a9630f27534e63922ebf655a6ab60c370f4d2fc5c02a5b19baf4410ace"}, + {file = "debugpy-1.8.1-cp312-cp312-win32.whl", hash = "sha256:caad2846e21188797a1f17fc09c31b84c7c3c23baf2516fed5b40b378515bbf0"}, + {file = "debugpy-1.8.1-cp312-cp312-win_amd64.whl", hash = "sha256:edcc9f58ec0fd121a25bc950d4578df47428d72e1a0d66c07403b04eb93bcf98"}, + {file = "debugpy-1.8.1-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:7a3afa222f6fd3d9dfecd52729bc2e12c93e22a7491405a0ecbf9e1d32d45b39"}, + {file = "debugpy-1.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d915a18f0597ef685e88bb35e5d7ab968964b7befefe1aaea1eb5b2640b586c7"}, + {file = "debugpy-1.8.1-cp38-cp38-win32.whl", hash = "sha256:92116039b5500633cc8d44ecc187abe2dfa9b90f7a82bbf81d079fcdd506bae9"}, + {file = "debugpy-1.8.1-cp38-cp38-win_amd64.whl", hash = "sha256:e38beb7992b5afd9d5244e96ad5fa9135e94993b0c551ceebf3fe1a5d9beb234"}, + {file = "debugpy-1.8.1-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:bfb20cb57486c8e4793d41996652e5a6a885b4d9175dd369045dad59eaacea42"}, + {file = "debugpy-1.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efd3fdd3f67a7e576dd869c184c5dd71d9aaa36ded271939da352880c012e703"}, + {file = "debugpy-1.8.1-cp39-cp39-win32.whl", hash = "sha256:58911e8521ca0c785ac7a0539f1e77e0ce2df753f786188f382229278b4cdf23"}, + {file = "debugpy-1.8.1-cp39-cp39-win_amd64.whl", hash = "sha256:6df9aa9599eb05ca179fb0b810282255202a66835c6efb1d112d21ecb830ddd3"}, + {file = "debugpy-1.8.1-py2.py3-none-any.whl", hash = "sha256:28acbe2241222b87e255260c76741e1fbf04fdc3b6d094fcf57b6c6f75ce1242"}, + {file = "debugpy-1.8.1.zip", hash = "sha256:f696d6be15be87aef621917585f9bb94b1dc9e8aced570db1b8a6fc14e8f9b42"}, +] + +[[package]] +name = "decorator" +version = "5.1.1" +description = "Decorators for Humans" +optional = false +python-versions = ">=3.5" +files = [ + {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, + {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +description = "XML bomb protection for Python stdlib modules" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, + {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, +] + +[[package]] +name = "deprecated" +version = "1.2.14" +description = "Python @deprecated decorator to deprecate old python classes, functions or methods." +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "Deprecated-1.2.14-py2.py3-none-any.whl", hash = "sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c"}, + {file = "Deprecated-1.2.14.tar.gz", hash = "sha256:e5323eb936458dccc2582dc6f9c322c852a775a27065ff2b0c4970b9d53d01b3"}, +] + +[package.dependencies] +wrapt = ">=1.10,<2" + +[package.extras] +dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "sphinx (<2)", "tox"] + +[[package]] +name = "dill" +version = "0.3.8" +description = "serialize all of Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "dill-0.3.8-py3-none-any.whl", hash = "sha256:c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"}, + {file = "dill-0.3.8.tar.gz", hash = "sha256:3ebe3c479ad625c4553aca177444d89b486b1d84982eeacded644afc0cf797ca"}, +] + +[package.extras] +graph = ["objgraph (>=1.7.2)"] +profile = ["gprof2dot (>=2022.7.29)"] + +[[package]] +name = "dirtyjson" +version = "1.0.8" +description = "JSON decoder for Python that can extract data from the muck" +optional = false +python-versions = "*" +files = [ + {file = "dirtyjson-1.0.8-py3-none-any.whl", hash = "sha256:125e27248435a58acace26d5c2c4c11a1c0de0a9c5124c5a94ba78e517d74f53"}, + {file = "dirtyjson-1.0.8.tar.gz", hash = "sha256:90ca4a18f3ff30ce849d100dcf4a003953c79d3a2348ef056f1d9c22231a25fd"}, +] + +[[package]] +name = "distlib" +version = "0.3.8" +description = "Distribution utilities" +optional = false +python-versions = "*" +files = [ + {file = "distlib-0.3.8-py2.py3-none-any.whl", hash = "sha256:034db59a0b96f8ca18035f36290806a9a6e6bd9d1ff91e45a7f172eb17e51784"}, + {file = "distlib-0.3.8.tar.gz", hash = "sha256:1530ea13e350031b6312d8580ddb6b27a104275a31106523b8f123787f494f64"}, +] + +[[package]] +name = "distro" +version = "1.9.0" +description = "Distro - an OS platform information API" +optional = false +python-versions = ">=3.6" +files = [ + {file = "distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2"}, + {file = "distro-1.9.0.tar.gz", hash = "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed"}, +] + +[[package]] +name = "exceptiongroup" +version = "1.2.0" +description = "Backport of PEP 654 (exception groups)" +optional = false +python-versions = ">=3.7" +files = [ + {file = "exceptiongroup-1.2.0-py3-none-any.whl", hash = "sha256:4bfd3996ac73b41e9b9628b04e079f193850720ea5945fc96a08633c66912f14"}, + {file = "exceptiongroup-1.2.0.tar.gz", hash = "sha256:91f5c769735f051a4290d52edd0858999b57e5876e9f85937691bd4c9fa3ed68"}, +] + +[package.extras] +test = ["pytest (>=6)"] + +[[package]] +name = "executing" +version = "2.0.1" +description = "Get the currently executing AST node of a frame, and other information" +optional = false +python-versions = ">=3.5" +files = [ + {file = "executing-2.0.1-py2.py3-none-any.whl", hash = "sha256:eac49ca94516ccc753f9fb5ce82603156e590b27525a8bc32cce8ae302eb61bc"}, + {file = "executing-2.0.1.tar.gz", hash = "sha256:35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147"}, +] + +[package.extras] +tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] + +[[package]] +name = "fastjsonschema" +version = "2.19.1" +description = "Fastest Python implementation of JSON schema" +optional = false +python-versions = "*" +files = [ + {file = "fastjsonschema-2.19.1-py3-none-any.whl", hash = "sha256:3672b47bc94178c9f23dbb654bf47440155d4db9df5f7bc47643315f9c405cd0"}, + {file = "fastjsonschema-2.19.1.tar.gz", hash = "sha256:e3126a94bdc4623d3de4485f8d468a12f02a67921315ddc87836d6e456dc789d"}, +] + +[package.extras] +devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] + +[[package]] +name = "filelock" +version = "3.13.1" +description = "A platform independent file lock." +optional = false +python-versions = ">=3.8" +files = [ + {file = "filelock-3.13.1-py3-none-any.whl", hash = "sha256:57dbda9b35157b05fb3e58ee91448612eb674172fab98ee235ccb0b5bee19a1c"}, + {file = "filelock-3.13.1.tar.gz", hash = "sha256:521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e"}, +] + +[package.extras] +docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.24)"] +testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] +typing = ["typing-extensions (>=4.8)"] + +[[package]] +name = "fqdn" +version = "1.5.1" +description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" +optional = false +python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" +files = [ + {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, + {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, +] + +[[package]] +name = "frozenlist" +version = "1.4.1" +description = "A list-like structure which implements collections.abc.MutableSequence" +optional = false +python-versions = ">=3.8" +files = [ + {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f9aa1878d1083b276b0196f2dfbe00c9b7e752475ed3b682025ff20c1c1f51ac"}, + {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:29acab3f66f0f24674b7dc4736477bcd4bc3ad4b896f5f45379a67bce8b96868"}, + {file = "frozenlist-1.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:74fb4bee6880b529a0c6560885fce4dc95936920f9f20f53d99a213f7bf66776"}, + {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:590344787a90ae57d62511dd7c736ed56b428f04cd8c161fcc5e7232c130c69a"}, + {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:068b63f23b17df8569b7fdca5517edef76171cf3897eb68beb01341131fbd2ad"}, + {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c849d495bf5154cd8da18a9eb15db127d4dba2968d88831aff6f0331ea9bd4c"}, + {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9750cc7fe1ae3b1611bb8cfc3f9ec11d532244235d75901fb6b8e42ce9229dfe"}, + {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9b2de4cf0cdd5bd2dee4c4f63a653c61d2408055ab77b151c1957f221cabf2a"}, + {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0633c8d5337cb5c77acbccc6357ac49a1770b8c487e5b3505c57b949b4b82e98"}, + {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:27657df69e8801be6c3638054e202a135c7f299267f1a55ed3a598934f6c0d75"}, + {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:f9a3ea26252bd92f570600098783d1371354d89d5f6b7dfd87359d669f2109b5"}, + {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:4f57dab5fe3407b6c0c1cc907ac98e8a189f9e418f3b6e54d65a718aaafe3950"}, + {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e02a0e11cf6597299b9f3bbd3f93d79217cb90cfd1411aec33848b13f5c656cc"}, + {file = "frozenlist-1.4.1-cp310-cp310-win32.whl", hash = "sha256:a828c57f00f729620a442881cc60e57cfcec6842ba38e1b19fd3e47ac0ff8dc1"}, + {file = "frozenlist-1.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:f56e2333dda1fe0f909e7cc59f021eba0d2307bc6f012a1ccf2beca6ba362439"}, + {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a0cb6f11204443f27a1628b0e460f37fb30f624be6051d490fa7d7e26d4af3d0"}, + {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b46c8ae3a8f1f41a0d2ef350c0b6e65822d80772fe46b653ab6b6274f61d4a49"}, + {file = "frozenlist-1.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fde5bd59ab5357e3853313127f4d3565fc7dad314a74d7b5d43c22c6a5ed2ced"}, + {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:722e1124aec435320ae01ee3ac7bec11a5d47f25d0ed6328f2273d287bc3abb0"}, + {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2471c201b70d58a0f0c1f91261542a03d9a5e088ed3dc6c160d614c01649c106"}, + {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c757a9dd70d72b076d6f68efdbb9bc943665ae954dad2801b874c8c69e185068"}, + {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f146e0911cb2f1da549fc58fc7bcd2b836a44b79ef871980d605ec392ff6b0d2"}, + {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f9c515e7914626b2a2e1e311794b4c35720a0be87af52b79ff8e1429fc25f19"}, + {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c302220494f5c1ebeb0912ea782bcd5e2f8308037b3c7553fad0e48ebad6ad82"}, + {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:442acde1e068288a4ba7acfe05f5f343e19fac87bfc96d89eb886b0363e977ec"}, + {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:1b280e6507ea8a4fa0c0a7150b4e526a8d113989e28eaaef946cc77ffd7efc0a"}, + {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:fe1a06da377e3a1062ae5fe0926e12b84eceb8a50b350ddca72dc85015873f74"}, + {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:db9e724bebd621d9beca794f2a4ff1d26eed5965b004a97f1f1685a173b869c2"}, + {file = "frozenlist-1.4.1-cp311-cp311-win32.whl", hash = "sha256:e774d53b1a477a67838a904131c4b0eef6b3d8a651f8b138b04f748fccfefe17"}, + {file = "frozenlist-1.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:fb3c2db03683b5767dedb5769b8a40ebb47d6f7f45b1b3e3b4b51ec8ad9d9825"}, + {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1979bc0aeb89b33b588c51c54ab0161791149f2461ea7c7c946d95d5f93b56ae"}, + {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cc7b01b3754ea68a62bd77ce6020afaffb44a590c2289089289363472d13aedb"}, + {file = "frozenlist-1.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9c92be9fd329ac801cc420e08452b70e7aeab94ea4233a4804f0915c14eba9b"}, + {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3894db91f5a489fc8fa6a9991820f368f0b3cbdb9cd8849547ccfab3392d86"}, + {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ba60bb19387e13597fb059f32cd4d59445d7b18b69a745b8f8e5db0346f33480"}, + {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8aefbba5f69d42246543407ed2461db31006b0f76c4e32dfd6f42215a2c41d09"}, + {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:780d3a35680ced9ce682fbcf4cb9c2bad3136eeff760ab33707b71db84664e3a"}, + {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9acbb16f06fe7f52f441bb6f413ebae6c37baa6ef9edd49cdd567216da8600cd"}, + {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:23b701e65c7b36e4bf15546a89279bd4d8675faabc287d06bbcfac7d3c33e1e6"}, + {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:3e0153a805a98f5ada7e09826255ba99fb4f7524bb81bf6b47fb702666484ae1"}, + {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:dd9b1baec094d91bf36ec729445f7769d0d0cf6b64d04d86e45baf89e2b9059b"}, + {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:1a4471094e146b6790f61b98616ab8e44f72661879cc63fa1049d13ef711e71e"}, + {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5667ed53d68d91920defdf4035d1cdaa3c3121dc0b113255124bcfada1cfa1b8"}, + {file = "frozenlist-1.4.1-cp312-cp312-win32.whl", hash = "sha256:beee944ae828747fd7cb216a70f120767fc9f4f00bacae8543c14a6831673f89"}, + {file = "frozenlist-1.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:64536573d0a2cb6e625cf309984e2d873979709f2cf22839bf2d61790b448ad5"}, + {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:20b51fa3f588ff2fe658663db52a41a4f7aa6c04f6201449c6c7c476bd255c0d"}, + {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:410478a0c562d1a5bcc2f7ea448359fcb050ed48b3c6f6f4f18c313a9bdb1826"}, + {file = "frozenlist-1.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c6321c9efe29975232da3bd0af0ad216800a47e93d763ce64f291917a381b8eb"}, + {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48f6a4533887e189dae092f1cf981f2e3885175f7a0f33c91fb5b7b682b6bab6"}, + {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6eb73fa5426ea69ee0e012fb59cdc76a15b1283d6e32e4f8dc4482ec67d1194d"}, + {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fbeb989b5cc29e8daf7f976b421c220f1b8c731cbf22b9130d8815418ea45887"}, + {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:32453c1de775c889eb4e22f1197fe3bdfe457d16476ea407472b9442e6295f7a"}, + {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:693945278a31f2086d9bf3df0fe8254bbeaef1fe71e1351c3bd730aa7d31c41b"}, + {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:1d0ce09d36d53bbbe566fe296965b23b961764c0bcf3ce2fa45f463745c04701"}, + {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:3a670dc61eb0d0eb7080890c13de3066790f9049b47b0de04007090807c776b0"}, + {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:dca69045298ce5c11fd539682cff879cc1e664c245d1c64da929813e54241d11"}, + {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a06339f38e9ed3a64e4c4e43aec7f59084033647f908e4259d279a52d3757d09"}, + {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b7f2f9f912dca3934c1baec2e4585a674ef16fe00218d833856408c48d5beee7"}, + {file = "frozenlist-1.4.1-cp38-cp38-win32.whl", hash = "sha256:e7004be74cbb7d9f34553a5ce5fb08be14fb33bc86f332fb71cbe5216362a497"}, + {file = "frozenlist-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:5a7d70357e7cee13f470c7883a063aae5fe209a493c57d86eb7f5a6f910fae09"}, + {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bfa4a17e17ce9abf47a74ae02f32d014c5e9404b6d9ac7f729e01562bbee601e"}, + {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b7e3ed87d4138356775346e6845cccbe66cd9e207f3cd11d2f0b9fd13681359d"}, + {file = "frozenlist-1.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c99169d4ff810155ca50b4da3b075cbde79752443117d89429595c2e8e37fed8"}, + {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edb678da49d9f72c9f6c609fbe41a5dfb9a9282f9e6a2253d5a91e0fc382d7c0"}, + {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6db4667b187a6742b33afbbaf05a7bc551ffcf1ced0000a571aedbb4aa42fc7b"}, + {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55fdc093b5a3cb41d420884cdaf37a1e74c3c37a31f46e66286d9145d2063bd0"}, + {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82e8211d69a4f4bc360ea22cd6555f8e61a1bd211d1d5d39d3d228b48c83a897"}, + {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89aa2c2eeb20957be2d950b85974b30a01a762f3308cd02bb15e1ad632e22dc7"}, + {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d3e0c25a2350080e9319724dede4f31f43a6c9779be48021a7f4ebde8b2d742"}, + {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7268252af60904bf52c26173cbadc3a071cece75f873705419c8681f24d3edea"}, + {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:0c250a29735d4f15321007fb02865f0e6b6a41a6b88f1f523ca1596ab5f50bd5"}, + {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:96ec70beabbd3b10e8bfe52616a13561e58fe84c0101dd031dc78f250d5128b9"}, + {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:23b2d7679b73fe0e5a4560b672a39f98dfc6f60df63823b0a9970525325b95f6"}, + {file = "frozenlist-1.4.1-cp39-cp39-win32.whl", hash = "sha256:a7496bfe1da7fb1a4e1cc23bb67c58fab69311cc7d32b5a99c2007b4b2a0e932"}, + {file = "frozenlist-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:e6a20a581f9ce92d389a8c7d7c3dd47c81fd5d6e655c8dddf341e14aa48659d0"}, + {file = "frozenlist-1.4.1-py3-none-any.whl", hash = "sha256:04ced3e6a46b4cfffe20f9ae482818e34eba9b5fb0ce4056e4cc9b6e212d09b7"}, + {file = "frozenlist-1.4.1.tar.gz", hash = "sha256:c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b"}, +] + +[[package]] +name = "fsspec" +version = "2024.2.0" +description = "File-system specification" +optional = false +python-versions = ">=3.8" +files = [ + {file = "fsspec-2024.2.0-py3-none-any.whl", hash = "sha256:817f969556fa5916bc682e02ca2045f96ff7f586d45110fcb76022063ad2c7d8"}, + {file = "fsspec-2024.2.0.tar.gz", hash = "sha256:b6ad1a679f760dda52b1168c859d01b7b80648ea6f7f7c7f5a8a91dc3f3ecb84"}, +] + +[package.extras] +abfs = ["adlfs"] +adl = ["adlfs"] +arrow = ["pyarrow (>=1)"] +dask = ["dask", "distributed"] +devel = ["pytest", "pytest-cov"] +dropbox = ["dropbox", "dropboxdrivefs", "requests"] +full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "dask", "distributed", "dropbox", "dropboxdrivefs", "fusepy", "gcsfs", "libarchive-c", "ocifs", "panel", "paramiko", "pyarrow (>=1)", "pygit2", "requests", "s3fs", "smbprotocol", "tqdm"] +fuse = ["fusepy"] +gcs = ["gcsfs"] +git = ["pygit2"] +github = ["requests"] +gs = ["gcsfs"] +gui = ["panel"] +hdfs = ["pyarrow (>=1)"] +http = ["aiohttp (!=4.0.0a0,!=4.0.0a1)"] +libarchive = ["libarchive-c"] +oci = ["ocifs"] +s3 = ["s3fs"] +sftp = ["paramiko"] +smb = ["smbprotocol"] +ssh = ["paramiko"] +tqdm = ["tqdm"] + +[[package]] +name = "greenlet" +version = "3.0.3" +description = "Lightweight in-process concurrent programming" +optional = false +python-versions = ">=3.7" +files = [ + {file = "greenlet-3.0.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:9da2bd29ed9e4f15955dd1595ad7bc9320308a3b766ef7f837e23ad4b4aac31a"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d353cadd6083fdb056bb46ed07e4340b0869c305c8ca54ef9da3421acbdf6881"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dca1e2f3ca00b84a396bc1bce13dd21f680f035314d2379c4160c98153b2059b"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ed7fb269f15dc662787f4119ec300ad0702fa1b19d2135a37c2c4de6fadfd4a"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd4f49ae60e10adbc94b45c0b5e6a179acc1736cf7a90160b404076ee283cf83"}, + {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73a411ef564e0e097dbe7e866bb2dda0f027e072b04da387282b02c308807405"}, + {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7f362975f2d179f9e26928c5b517524e89dd48530a0202570d55ad6ca5d8a56f"}, + {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:649dde7de1a5eceb258f9cb00bdf50e978c9db1b996964cd80703614c86495eb"}, + {file = "greenlet-3.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:68834da854554926fbedd38c76e60c4a2e3198c6fbed520b106a8986445caaf9"}, + {file = "greenlet-3.0.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:b1b5667cced97081bf57b8fa1d6bfca67814b0afd38208d52538316e9422fc61"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52f59dd9c96ad2fc0d5724107444f76eb20aaccb675bf825df6435acb7703559"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:afaff6cf5200befd5cec055b07d1c0a5a06c040fe5ad148abcd11ba6ab9b114e"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe754d231288e1e64323cfad462fcee8f0288654c10bdf4f603a39ed923bef33"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2797aa5aedac23af156bbb5a6aa2cd3427ada2972c828244eb7d1b9255846379"}, + {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7f009caad047246ed379e1c4dbcb8b020f0a390667ea74d2387be2998f58a22"}, + {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c5e1536de2aad7bf62e27baf79225d0d64360d4168cf2e6becb91baf1ed074f3"}, + {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:894393ce10ceac937e56ec00bb71c4c2f8209ad516e96033e4b3b1de270e200d"}, + {file = "greenlet-3.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:1ea188d4f49089fc6fb283845ab18a2518d279c7cd9da1065d7a84e991748728"}, + {file = "greenlet-3.0.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:70fb482fdf2c707765ab5f0b6655e9cfcf3780d8d87355a063547b41177599be"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4d1ac74f5c0c0524e4a24335350edad7e5f03b9532da7ea4d3c54d527784f2e"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:149e94a2dd82d19838fe4b2259f1b6b9957d5ba1b25640d2380bea9c5df37676"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15d79dd26056573940fcb8c7413d84118086f2ec1a8acdfa854631084393efcc"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:881b7db1ebff4ba09aaaeae6aa491daeb226c8150fc20e836ad00041bcb11230"}, + {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fcd2469d6a2cf298f198f0487e0a5b1a47a42ca0fa4dfd1b6862c999f018ebbf"}, + {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f672519db1796ca0d8753f9e78ec02355e862d0998193038c7073045899f305"}, + {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2516a9957eed41dd8f1ec0c604f1cdc86758b587d964668b5b196a9db5bfcde6"}, + {file = "greenlet-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:bba5387a6975598857d86de9eac14210a49d554a77eb8261cc68b7d082f78ce2"}, + {file = "greenlet-3.0.3-cp37-cp37m-macosx_11_0_universal2.whl", hash = "sha256:5b51e85cb5ceda94e79d019ed36b35386e8c37d22f07d6a751cb659b180d5274"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:daf3cb43b7cf2ba96d614252ce1684c1bccee6b2183a01328c98d36fcd7d5cb0"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99bf650dc5d69546e076f413a87481ee1d2d09aaaaaca058c9251b6d8c14783f"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dd6e660effd852586b6a8478a1d244b8dc90ab5b1321751d2ea15deb49ed414"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3391d1e16e2a5a1507d83e4a8b100f4ee626e8eca43cf2cadb543de69827c4c"}, + {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e1f145462f1fa6e4a4ae3c0f782e580ce44d57c8f2c7aae1b6fa88c0b2efdb41"}, + {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1a7191e42732df52cb5f39d3527217e7ab73cae2cb3694d241e18f53d84ea9a7"}, + {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0448abc479fab28b00cb472d278828b3ccca164531daab4e970a0458786055d6"}, + {file = "greenlet-3.0.3-cp37-cp37m-win32.whl", hash = "sha256:b542be2440edc2d48547b5923c408cbe0fc94afb9f18741faa6ae970dbcb9b6d"}, + {file = "greenlet-3.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:01bc7ea167cf943b4c802068e178bbf70ae2e8c080467070d01bfa02f337ee67"}, + {file = "greenlet-3.0.3-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:1996cb9306c8595335bb157d133daf5cf9f693ef413e7673cb07e3e5871379ca"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc0f794e6ad661e321caa8d2f0a55ce01213c74722587256fb6566049a8b04"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9db1c18f0eaad2f804728c67d6c610778456e3e1cc4ab4bbd5eeb8e6053c6fc"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7170375bcc99f1a2fbd9c306f5be8764eaf3ac6b5cb968862cad4c7057756506"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b66c9c1e7ccabad3a7d037b2bcb740122a7b17a53734b7d72a344ce39882a1b"}, + {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:098d86f528c855ead3479afe84b49242e174ed262456c342d70fc7f972bc13c4"}, + {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:81bb9c6d52e8321f09c3d165b2a78c680506d9af285bfccbad9fb7ad5a5da3e5"}, + {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd096eb7ffef17c456cfa587523c5f92321ae02427ff955bebe9e3c63bc9f0da"}, + {file = "greenlet-3.0.3-cp38-cp38-win32.whl", hash = "sha256:d46677c85c5ba00a9cb6f7a00b2bfa6f812192d2c9f7d9c4f6a55b60216712f3"}, + {file = "greenlet-3.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:419b386f84949bf0e7c73e6032e3457b82a787c1ab4a0e43732898a761cc9dbf"}, + {file = "greenlet-3.0.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:da70d4d51c8b306bb7a031d5cff6cc25ad253affe89b70352af5f1cb68e74b53"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086152f8fbc5955df88382e8a75984e2bb1c892ad2e3c80a2508954e52295257"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d73a9fe764d77f87f8ec26a0c85144d6a951a6c438dfe50487df5595c6373eac"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7dcbe92cc99f08c8dd11f930de4d99ef756c3591a5377d1d9cd7dd5e896da71"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1551a8195c0d4a68fac7a4325efac0d541b48def35feb49d803674ac32582f61"}, + {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:64d7675ad83578e3fc149b617a444fab8efdafc9385471f868eb5ff83e446b8b"}, + {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b37eef18ea55f2ffd8f00ff8fe7c8d3818abd3e25fb73fae2ca3b672e333a7a6"}, + {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:77457465d89b8263bca14759d7c1684df840b6811b2499838cc5b040a8b5b113"}, + {file = "greenlet-3.0.3-cp39-cp39-win32.whl", hash = "sha256:57e8974f23e47dac22b83436bdcf23080ade568ce77df33159e019d161ce1d1e"}, + {file = "greenlet-3.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c5ee858cfe08f34712f548c3c363e807e7186f03ad7a5039ebadb29e8c6be067"}, + {file = "greenlet-3.0.3.tar.gz", hash = "sha256:43374442353259554ce33599da8b692d5aa96f8976d567d4badf263371fbe491"}, +] + +[package.extras] +docs = ["Sphinx", "furo"] +test = ["objgraph", "psutil"] + +[[package]] +name = "h11" +version = "0.14.0" +description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" +optional = false +python-versions = ">=3.7" +files = [ + {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, + {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, +] + +[[package]] +name = "httpcore" +version = "1.0.4" +description = "A minimal low-level HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpcore-1.0.4-py3-none-any.whl", hash = "sha256:ac418c1db41bade2ad53ae2f3834a3a0f5ae76b56cf5aa497d2d033384fc7d73"}, + {file = "httpcore-1.0.4.tar.gz", hash = "sha256:cb2839ccfcba0d2d3c1131d3c3e26dfc327326fbe7a5dc0dbfe9f6c9151bb022"}, +] + +[package.dependencies] +certifi = "*" +h11 = ">=0.13,<0.15" + +[package.extras] +asyncio = ["anyio (>=4.0,<5.0)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<0.25.0)"] + +[[package]] +name = "httpx" +version = "0.27.0" +description = "The next generation HTTP client." +optional = false +python-versions = ">=3.8" +files = [ + {file = "httpx-0.27.0-py3-none-any.whl", hash = "sha256:71d5465162c13681bff01ad59b2cc68dd838ea1f10e51574bac27103f00c91a5"}, + {file = "httpx-0.27.0.tar.gz", hash = "sha256:a0cb88a46f32dc874e04ee956e4c2764aba2aa228f650b06788ba6bda2962ab5"}, +] + +[package.dependencies] +anyio = "*" +certifi = "*" +httpcore = "==1.*" +idna = "*" +sniffio = "*" + +[package.extras] +brotli = ["brotli", "brotlicffi"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] + +[[package]] +name = "identify" +version = "2.5.35" +description = "File identification library for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "identify-2.5.35-py2.py3-none-any.whl", hash = "sha256:c4de0081837b211594f8e877a6b4fad7ca32bbfc1a9307fdd61c28bfe923f13e"}, + {file = "identify-2.5.35.tar.gz", hash = "sha256:10a7ca245cfcd756a554a7288159f72ff105ad233c7c4b9c6f0f4d108f5f6791"}, +] + +[package.extras] +license = ["ukkonen"] + +[[package]] +name = "idna" +version = "3.6" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.5" +files = [ + {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, + {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, +] + +[[package]] +name = "importlib-metadata" +version = "7.0.1" +description = "Read metadata from Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, + {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, +] + +[package.dependencies] +zipp = ">=0.5" + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +perf = ["ipython"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] + +[[package]] +name = "iniconfig" +version = "2.0.0" +description = "brain-dead simple config-ini parsing" +optional = false +python-versions = ">=3.7" +files = [ + {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, + {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, +] + +[[package]] +name = "ipykernel" +version = "6.29.3" +description = "IPython Kernel for Jupyter" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ipykernel-6.29.3-py3-none-any.whl", hash = "sha256:5aa086a4175b0229d4eca211e181fb473ea78ffd9869af36ba7694c947302a21"}, + {file = "ipykernel-6.29.3.tar.gz", hash = "sha256:e14c250d1f9ea3989490225cc1a542781b095a18a19447fcf2b5eaf7d0ac5bd2"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "platform_system == \"Darwin\""} +comm = ">=0.1.1" +debugpy = ">=1.6.5" +ipython = ">=7.23.1" +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +matplotlib-inline = ">=0.1" +nest-asyncio = "*" +packaging = "*" +psutil = "*" +pyzmq = ">=24" +tornado = ">=6.1" +traitlets = ">=5.4.0" + +[package.extras] +cov = ["coverage[toml]", "curio", "matplotlib", "pytest-cov", "trio"] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "trio"] +pyqt5 = ["pyqt5"] +pyside6 = ["pyside6"] +test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.23.5)", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "ipython" +version = "8.10.0" +description = "IPython: Productive Interactive Computing" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ipython-8.10.0-py3-none-any.whl", hash = "sha256:b38c31e8fc7eff642fc7c597061fff462537cf2314e3225a19c906b7b0d8a345"}, + {file = "ipython-8.10.0.tar.gz", hash = "sha256:b13a1d6c1f5818bd388db53b7107d17454129a70de2b87481d555daede5eb49e"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "sys_platform == \"darwin\""} +backcall = "*" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +decorator = "*" +jedi = ">=0.16" +matplotlib-inline = "*" +pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} +pickleshare = "*" +prompt-toolkit = ">=3.0.30,<3.1.0" +pygments = ">=2.4.0" +stack-data = "*" +traitlets = ">=5" + +[package.extras] +all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] +black = ["black"] +doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] +kernel = ["ipykernel"] +nbconvert = ["nbconvert"] +nbformat = ["nbformat"] +notebook = ["ipywidgets", "notebook"] +parallel = ["ipyparallel"] +qtconsole = ["qtconsole"] +test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] +test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] + +[[package]] +name = "ipywidgets" +version = "8.1.2" +description = "Jupyter interactive widgets" +optional = false +python-versions = ">=3.7" +files = [ + {file = "ipywidgets-8.1.2-py3-none-any.whl", hash = "sha256:bbe43850d79fb5e906b14801d6c01402857996864d1e5b6fa62dd2ee35559f60"}, + {file = "ipywidgets-8.1.2.tar.gz", hash = "sha256:d0b9b41e49bae926a866e613a39b0f0097745d2b9f1f3dd406641b4a57ec42c9"}, +] + +[package.dependencies] +comm = ">=0.1.3" +ipython = ">=6.1.0" +jupyterlab-widgets = ">=3.0.10,<3.1.0" +traitlets = ">=4.3.1" +widgetsnbextension = ">=4.0.10,<4.1.0" + +[package.extras] +test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] + +[[package]] +name = "isoduration" +version = "20.11.0" +description = "Operations with ISO 8601 durations" +optional = false +python-versions = ">=3.7" +files = [ + {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, + {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, +] + +[package.dependencies] +arrow = ">=0.15.0" + +[[package]] +name = "isort" +version = "5.13.2" +description = "A Python utility / library to sort Python imports." +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "isort-5.13.2-py3-none-any.whl", hash = "sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"}, + {file = "isort-5.13.2.tar.gz", hash = "sha256:48fdfcb9face5d58a4f6dde2e72a1fb8dcaf8ab26f95ab49fab84c2ddefb0109"}, +] + +[package.extras] +colors = ["colorama (>=0.4.6)"] + +[[package]] +name = "jedi" +version = "0.19.1" +description = "An autocompletion tool for Python that can be used for text editors." +optional = false +python-versions = ">=3.6" +files = [ + {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, + {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, +] + +[package.dependencies] +parso = ">=0.8.3,<0.9.0" + +[package.extras] +docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] + +[[package]] +name = "jinja2" +version = "3.1.3" +description = "A very fast and expressive template engine." +optional = false +python-versions = ">=3.7" +files = [ + {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"}, + {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "joblib" +version = "1.3.2" +description = "Lightweight pipelining with Python functions" +optional = false +python-versions = ">=3.7" +files = [ + {file = "joblib-1.3.2-py3-none-any.whl", hash = "sha256:ef4331c65f239985f3f2220ecc87db222f08fd22097a3dd5698f693875f8cbb9"}, + {file = "joblib-1.3.2.tar.gz", hash = "sha256:92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1"}, +] + +[[package]] +name = "json5" +version = "0.9.17" +description = "A Python implementation of the JSON5 data format." +optional = false +python-versions = ">=3.8" +files = [ + {file = "json5-0.9.17-py2.py3-none-any.whl", hash = "sha256:f8ec1ecf985951d70f780f6f877c4baca6a47b6e61e02c4cd190138d10a7805a"}, + {file = "json5-0.9.17.tar.gz", hash = "sha256:717d99d657fa71b7094877b1d921b1cce40ab444389f6d770302563bb7dfd9ae"}, +] + +[package.extras] +dev = ["hypothesis"] + +[[package]] +name = "jsonpointer" +version = "2.4" +description = "Identify specific nodes in a JSON document (RFC 6901)" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" +files = [ + {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, + {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, +] + +[[package]] +name = "jsonschema" +version = "4.21.1" +description = "An implementation of JSON Schema validation for Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema-4.21.1-py3-none-any.whl", hash = "sha256:7996507afae316306f9e2290407761157c6f78002dcf7419acb99822143d1c6f"}, + {file = "jsonschema-4.21.1.tar.gz", hash = "sha256:85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +fqdn = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +idna = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +isoduration = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +jsonpointer = {version = ">1.13", optional = true, markers = "extra == \"format-nongpl\""} +jsonschema-specifications = ">=2023.03.6" +referencing = ">=0.28.4" +rfc3339-validator = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""} +rpds-py = ">=0.7.1" +uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +webcolors = {version = ">=1.11", optional = true, markers = "extra == \"format-nongpl\""} + +[package.extras] +format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] +format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"] + +[[package]] +name = "jsonschema-specifications" +version = "2023.12.1" +description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c"}, + {file = "jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc"}, +] + +[package.dependencies] +referencing = ">=0.31.0" + +[[package]] +name = "jupyter" +version = "1.0.0" +description = "Jupyter metapackage. Install all the Jupyter components in one go." +optional = false +python-versions = "*" +files = [ + {file = "jupyter-1.0.0-py2.py3-none-any.whl", hash = "sha256:5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78"}, + {file = "jupyter-1.0.0.tar.gz", hash = "sha256:d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f"}, + {file = "jupyter-1.0.0.zip", hash = "sha256:3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7"}, +] + +[package.dependencies] +ipykernel = "*" +ipywidgets = "*" +jupyter-console = "*" +nbconvert = "*" +notebook = "*" +qtconsole = "*" + +[[package]] +name = "jupyter-client" +version = "8.6.0" +description = "Jupyter protocol implementation and client libraries" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_client-8.6.0-py3-none-any.whl", hash = "sha256:909c474dbe62582ae62b758bca86d6518c85234bdee2d908c778db6d72f39d99"}, + {file = "jupyter_client-8.6.0.tar.gz", hash = "sha256:0642244bb83b4764ae60d07e010e15f0e2d275ec4e918a8f7b80fbbef3ca60c7"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +python-dateutil = ">=2.8.2" +pyzmq = ">=23.0" +tornado = ">=6.2" +traitlets = ">=5.3" + +[package.extras] +docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] + +[[package]] +name = "jupyter-console" +version = "6.6.3" +description = "Jupyter terminal console" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, + {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, +] + +[package.dependencies] +ipykernel = ">=6.14" +ipython = "*" +jupyter-client = ">=7.0.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +prompt-toolkit = ">=3.0.30" +pygments = "*" +pyzmq = ">=17" +traitlets = ">=5.4" + +[package.extras] +test = ["flaky", "pexpect", "pytest"] + +[[package]] +name = "jupyter-core" +version = "5.7.1" +description = "Jupyter core package. A base package on which Jupyter projects rely." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_core-5.7.1-py3-none-any.whl", hash = "sha256:c65c82126453a723a2804aa52409930434598fd9d35091d63dfb919d2b765bb7"}, + {file = "jupyter_core-5.7.1.tar.gz", hash = "sha256:de61a9d7fc71240f688b2fb5ab659fbb56979458dc66a71decd098e03c79e218"}, +] + +[package.dependencies] +platformdirs = ">=2.5" +pywin32 = {version = ">=300", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""} +traitlets = ">=5.3" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "traitlets"] +test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "jupyter-events" +version = "0.9.0" +description = "Jupyter Event System library" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_events-0.9.0-py3-none-any.whl", hash = "sha256:d853b3c10273ff9bc8bb8b30076d65e2c9685579db736873de6c2232dde148bf"}, + {file = "jupyter_events-0.9.0.tar.gz", hash = "sha256:81ad2e4bc710881ec274d31c6c50669d71bbaa5dd9d01e600b56faa85700d399"}, +] + +[package.dependencies] +jsonschema = {version = ">=4.18.0", extras = ["format-nongpl"]} +python-json-logger = ">=2.0.4" +pyyaml = ">=5.3" +referencing = "*" +rfc3339-validator = "*" +rfc3986-validator = ">=0.1.1" +traitlets = ">=5.3" + +[package.extras] +cli = ["click", "rich"] +docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme", "sphinxcontrib-spelling"] +test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "rich"] + +[[package]] +name = "jupyter-lsp" +version = "2.2.3" +description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter-lsp-2.2.3.tar.gz", hash = "sha256:33dbcbc5df24237ff5c8b696b04ff4689fcd316cb8d4957d620fe5504d7d2c3f"}, + {file = "jupyter_lsp-2.2.3-py3-none-any.whl", hash = "sha256:57dd90d0a2e2530831793550846168c81c952b49e187aa339e455027a5f0fd2e"}, +] + +[package.dependencies] +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} +jupyter-server = ">=1.1.2" + +[[package]] +name = "jupyter-server" +version = "2.12.5" +description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_server-2.12.5-py3-none-any.whl", hash = "sha256:184a0f82809a8522777cfb6b760ab6f4b1bb398664c5860a27cec696cb884923"}, + {file = "jupyter_server-2.12.5.tar.gz", hash = "sha256:0edb626c94baa22809be1323f9770cf1c00a952b17097592e40d03e6a3951689"}, +] + +[package.dependencies] +anyio = ">=3.1.0" +argon2-cffi = "*" +jinja2 = "*" +jupyter-client = ">=7.4.4" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-events = ">=0.9.0" +jupyter-server-terminals = "*" +nbconvert = ">=6.4.4" +nbformat = ">=5.3.0" +overrides = "*" +packaging = "*" +prometheus-client = "*" +pywinpty = {version = "*", markers = "os_name == \"nt\""} +pyzmq = ">=24" +send2trash = ">=1.8.2" +terminado = ">=0.8.3" +tornado = ">=6.2.0" +traitlets = ">=5.6.0" +websocket-client = "*" + +[package.extras] +docs = ["ipykernel", "jinja2", "jupyter-client", "jupyter-server", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] +test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.4)", "pytest-timeout", "requests"] + +[[package]] +name = "jupyter-server-terminals" +version = "0.5.2" +description = "A Jupyter Server Extension Providing Terminals." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyter_server_terminals-0.5.2-py3-none-any.whl", hash = "sha256:1b80c12765da979513c42c90215481bbc39bd8ae7c0350b4f85bc3eb58d0fa80"}, + {file = "jupyter_server_terminals-0.5.2.tar.gz", hash = "sha256:396b5ccc0881e550bf0ee7012c6ef1b53edbde69e67cab1d56e89711b46052e8"}, +] + +[package.dependencies] +pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""} +terminado = ">=0.8.3" + +[package.extras] +docs = ["jinja2", "jupyter-server", "mistune (<4.0)", "myst-parser", "nbformat", "packaging", "pydata-sphinx-theme", "sphinxcontrib-github-alt", "sphinxcontrib-openapi", "sphinxcontrib-spelling", "sphinxemoji", "tornado"] +test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (>=0.5.3)", "pytest-timeout"] + +[[package]] +name = "jupyterlab" +version = "4.1.2" +description = "JupyterLab computational environment" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab-4.1.2-py3-none-any.whl", hash = "sha256:aa88193f03cf4d3555f6712f04d74112b5eb85edd7d222c588c7603a26d33c5b"}, + {file = "jupyterlab-4.1.2.tar.gz", hash = "sha256:5d6348b3ed4085181499f621b7dfb6eb0b1f57f3586857aadfc8e3bf4c4885f9"}, +] + +[package.dependencies] +async-lru = ">=1.0.0" +httpx = ">=0.25.0" +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} +ipykernel = "*" +jinja2 = ">=3.0.3" +jupyter-core = "*" +jupyter-lsp = ">=2.0.0" +jupyter-server = ">=2.4.0,<3" +jupyterlab-server = ">=2.19.0,<3" +notebook-shim = ">=0.2" +packaging = "*" +tomli = {version = "*", markers = "python_version < \"3.11\""} +tornado = ">=6.2.0" +traitlets = "*" + +[package.extras] +dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.2.0)"] +docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<7.3.0)", "sphinx-copybutton"] +docs-screenshots = ["altair (==5.2.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.1)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.0.post6)", "matplotlib (==3.8.2)", "nbconvert (>=7.0.0)", "pandas (==2.2.0)", "scipy (==1.12.0)", "vega-datasets (==0.9.0)"] +test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] + +[[package]] +name = "jupyterlab-pygments" +version = "0.3.0" +description = "Pygments theme using JupyterLab CSS variables" +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, + {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, +] + +[[package]] +name = "jupyterlab-server" +version = "2.25.3" +description = "A set of server components for JupyterLab and JupyterLab like applications." +optional = false +python-versions = ">=3.8" +files = [ + {file = "jupyterlab_server-2.25.3-py3-none-any.whl", hash = "sha256:c48862519fded9b418c71645d85a49b2f0ec50d032ba8316738e9276046088c1"}, + {file = "jupyterlab_server-2.25.3.tar.gz", hash = "sha256:846f125a8a19656611df5b03e5912c8393cea6900859baa64fa515eb64a8dc40"}, +] + +[package.dependencies] +babel = ">=2.10" +importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} +jinja2 = ">=3.0.3" +json5 = ">=0.9.0" +jsonschema = ">=4.18.0" +jupyter-server = ">=1.21,<3" +packaging = ">=21.3" +requests = ">=2.31" + +[package.extras] +docs = ["autodoc-traits", "jinja2 (<3.2.0)", "mistune (<4)", "myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinxcontrib-openapi (>0.8)"] +openapi = ["openapi-core (>=0.18.0,<0.19.0)", "ruamel-yaml"] +test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-validator (>=0.6.0,<0.8.0)", "pytest (>=7.0)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter[server] (>=0.6.2)", "pytest-timeout", "requests-mock", "ruamel-yaml", "sphinxcontrib-spelling", "strict-rfc3339", "werkzeug"] + +[[package]] +name = "jupyterlab-widgets" +version = "3.0.10" +description = "Jupyter interactive widgets for JupyterLab" +optional = false +python-versions = ">=3.7" +files = [ + {file = "jupyterlab_widgets-3.0.10-py3-none-any.whl", hash = "sha256:dd61f3ae7a5a7f80299e14585ce6cf3d6925a96c9103c978eda293197730cb64"}, + {file = "jupyterlab_widgets-3.0.10.tar.gz", hash = "sha256:04f2ac04976727e4f9d0fa91cdc2f1ab860f965e504c29dbd6a65c882c9d04c0"}, +] + +[[package]] +name = "lazy-object-proxy" +version = "1.10.0" +description = "A fast and thorough lazy object proxy." +optional = false +python-versions = ">=3.8" +files = [ + {file = "lazy-object-proxy-1.10.0.tar.gz", hash = "sha256:78247b6d45f43a52ef35c25b5581459e85117225408a4128a3daf8bf9648ac69"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:855e068b0358ab916454464a884779c7ffa312b8925c6f7401e952dcf3b89977"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab7004cf2e59f7c2e4345604a3e6ea0d92ac44e1c2375527d56492014e690c3"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc0d2fc424e54c70c4bc06787e4072c4f3b1aa2f897dfdc34ce1013cf3ceef05"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e2adb09778797da09d2b5ebdbceebf7dd32e2c96f79da9052b2e87b6ea495895"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b1f711e2c6dcd4edd372cf5dec5c5a30d23bba06ee012093267b3376c079ec83"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-win32.whl", hash = "sha256:76a095cfe6045c7d0ca77db9934e8f7b71b14645f0094ffcd842349ada5c5fb9"}, + {file = "lazy_object_proxy-1.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:b4f87d4ed9064b2628da63830986c3d2dca7501e6018347798313fcf028e2fd4"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fec03caabbc6b59ea4a638bee5fce7117be8e99a4103d9d5ad77f15d6f81020c"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:02c83f957782cbbe8136bee26416686a6ae998c7b6191711a04da776dc9e47d4"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:009e6bb1f1935a62889ddc8541514b6a9e1fcf302667dcb049a0be5c8f613e56"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:75fc59fc450050b1b3c203c35020bc41bd2695ed692a392924c6ce180c6f1dc9"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:782e2c9b2aab1708ffb07d4bf377d12901d7a1d99e5e410d648d892f8967ab1f"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-win32.whl", hash = "sha256:edb45bb8278574710e68a6b021599a10ce730d156e5b254941754a9cc0b17d03"}, + {file = "lazy_object_proxy-1.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:e271058822765ad5e3bca7f05f2ace0de58a3f4e62045a8c90a0dfd2f8ad8cc6"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e98c8af98d5707dcdecc9ab0863c0ea6e88545d42ca7c3feffb6b4d1e370c7ba"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:952c81d415b9b80ea261d2372d2a4a2332a3890c2b83e0535f263ddfe43f0d43"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80b39d3a151309efc8cc48675918891b865bdf742a8616a337cb0090791a0de9"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e221060b701e2aa2ea991542900dd13907a5c90fa80e199dbf5a03359019e7a3"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:92f09ff65ecff3108e56526f9e2481b8116c0b9e1425325e13245abfd79bdb1b"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-win32.whl", hash = "sha256:3ad54b9ddbe20ae9f7c1b29e52f123120772b06dbb18ec6be9101369d63a4074"}, + {file = "lazy_object_proxy-1.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:127a789c75151db6af398b8972178afe6bda7d6f68730c057fbbc2e96b08d282"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4ed0518a14dd26092614412936920ad081a424bdcb54cc13349a8e2c6d106a"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ad9e6ed739285919aa9661a5bbed0aaf410aa60231373c5579c6b4801bd883c"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fc0a92c02fa1ca1e84fc60fa258458e5bf89d90a1ddaeb8ed9cc3147f417255"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0aefc7591920bbd360d57ea03c995cebc204b424524a5bd78406f6e1b8b2a5d8"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5faf03a7d8942bb4476e3b62fd0f4cf94eaf4618e304a19865abf89a35c0bbee"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-win32.whl", hash = "sha256:e333e2324307a7b5d86adfa835bb500ee70bfcd1447384a822e96495796b0ca4"}, + {file = "lazy_object_proxy-1.10.0-cp38-cp38-win_amd64.whl", hash = "sha256:cb73507defd385b7705c599a94474b1d5222a508e502553ef94114a143ec6696"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:366c32fe5355ef5fc8a232c5436f4cc66e9d3e8967c01fb2e6302fd6627e3d94"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2297f08f08a2bb0d32a4265e98a006643cd7233fb7983032bd61ac7a02956b3b"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18dd842b49456aaa9a7cf535b04ca4571a302ff72ed8740d06b5adcd41fe0757"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:217138197c170a2a74ca0e05bddcd5f1796c735c37d0eee33e43259b192aa424"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a3a87cf1e133e5b1994144c12ca4aa3d9698517fe1e2ca82977781b16955658"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-win32.whl", hash = "sha256:30b339b2a743c5288405aa79a69e706a06e02958eab31859f7f3c04980853b70"}, + {file = "lazy_object_proxy-1.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:a899b10e17743683b293a729d3a11f2f399e8a90c73b089e29f5d0fe3509f0dd"}, + {file = "lazy_object_proxy-1.10.0-pp310.pp311.pp312.pp38.pp39-none-any.whl", hash = "sha256:80fa48bd89c8f2f456fc0765c11c23bf5af827febacd2f523ca5bc1893fcc09d"}, +] + +[[package]] +name = "llama-index-core" +version = "0.10.13" +description = "Interface between LLMs and your data" +optional = false +python-versions = ">=3.8.1,<4.0" +files = [ + {file = "llama_index_core-0.10.13-py3-none-any.whl", hash = "sha256:40c76fc02be7cd948a333ca541f2ff38cf02774e1c960674e2b68c61943bac90"}, + {file = "llama_index_core-0.10.13.tar.gz", hash = "sha256:826fded00767923fba8aca94f46c32b259e8879f517016ab7a3801b1b37187a1"}, +] + +[package.dependencies] +aiohttp = ">=3.8.6,<4.0.0" +dataclasses-json = "*" +deprecated = ">=1.2.9.3" +dirtyjson = ">=1.0.8,<2.0.0" +fsspec = ">=2023.5.0" +httpx = "*" +llamaindex-py-client = ">=0.1.13,<0.2.0" +nest-asyncio = ">=1.5.8,<2.0.0" +networkx = ">=3.0" +nltk = ">=3.8.1,<4.0.0" +numpy = "*" +openai = ">=1.1.0" +pandas = "*" +pillow = ">=9.0.0" +PyYAML = ">=6.0.1" +requests = ">=2.31.0" +SQLAlchemy = {version = ">=1.4.49", extras = ["asyncio"]} +tenacity = ">=8.2.0,<9.0.0" +tiktoken = ">=0.3.3" +tqdm = ">=4.66.1,<5.0.0" +typing-extensions = ">=4.5.0" +typing-inspect = ">=0.8.0" + +[package.extras] +gradientai = ["gradientai (>=1.4.0)"] +html = ["beautifulsoup4 (>=4.12.2,<5.0.0)"] +langchain = ["langchain (>=0.0.303)"] +local-models = ["optimum[onnxruntime] (>=1.13.2,<2.0.0)", "sentencepiece (>=0.1.99,<0.2.0)", "transformers[torch] (>=4.33.1,<5.0.0)"] +postgres = ["asyncpg (>=0.28.0,<0.29.0)", "pgvector (>=0.1.0,<0.2.0)", "psycopg2-binary (>=2.9.9,<3.0.0)"] +query-tools = ["guidance (>=0.0.64,<0.0.65)", "jsonpath-ng (>=1.6.0,<2.0.0)", "lm-format-enforcer (>=0.4.3,<0.5.0)", "rank-bm25 (>=0.2.2,<0.3.0)", "scikit-learn", "spacy (>=3.7.1,<4.0.0)"] + +[[package]] +name = "llama-index-llms-openai" +version = "0.1.6" +description = "llama-index llms openai integration" +optional = false +python-versions = ">=3.8.1,<4.0" +files = [ + {file = "llama_index_llms_openai-0.1.6-py3-none-any.whl", hash = "sha256:4260ad31c3444e97ec8a8d061cb6dbf1074262b82341a2b69d2b27e8a23efe62"}, + {file = "llama_index_llms_openai-0.1.6.tar.gz", hash = "sha256:15530dfa3893b15c5576ebc71e01b77acbf47abd689219436fdf7b6ca567a9fd"}, +] + +[package.dependencies] +llama-index-core = ">=0.10.1,<0.11.0" + +[[package]] +name = "llamaindex-py-client" +version = "0.1.13" +description = "" +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "llamaindex_py_client-0.1.13-py3-none-any.whl", hash = "sha256:02400c90655da80ae373e0455c829465208607d72462f1898fd383fdfe8dabce"}, + {file = "llamaindex_py_client-0.1.13.tar.gz", hash = "sha256:3bd9b435ee0a78171eba412dea5674d813eb5bf36e577d3c7c7e90edc54900d9"}, +] + +[package.dependencies] +httpx = ">=0.20.0" +pydantic = ">=1.10" + +[[package]] +name = "llvmlite" +version = "0.41.1" +description = "lightweight wrapper around basic LLVM functionality" +optional = false +python-versions = ">=3.8" +files = [ + {file = "llvmlite-0.41.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c1e1029d47ee66d3a0c4d6088641882f75b93db82bd0e6178f7bd744ebce42b9"}, + {file = "llvmlite-0.41.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:150d0bc275a8ac664a705135e639178883293cf08c1a38de3bbaa2f693a0a867"}, + {file = "llvmlite-0.41.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1eee5cf17ec2b4198b509272cf300ee6577229d237c98cc6e63861b08463ddc6"}, + {file = "llvmlite-0.41.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dd0338da625346538f1173a17cabf21d1e315cf387ca21b294ff209d176e244"}, + {file = "llvmlite-0.41.1-cp310-cp310-win32.whl", hash = "sha256:fa1469901a2e100c17eb8fe2678e34bd4255a3576d1a543421356e9c14d6e2ae"}, + {file = "llvmlite-0.41.1-cp310-cp310-win_amd64.whl", hash = "sha256:2b76acee82ea0e9304be6be9d4b3840208d050ea0dcad75b1635fa06e949a0ae"}, + {file = "llvmlite-0.41.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:210e458723436b2469d61b54b453474e09e12a94453c97ea3fbb0742ba5a83d8"}, + {file = "llvmlite-0.41.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:855f280e781d49e0640aef4c4af586831ade8f1a6c4df483fb901cbe1a48d127"}, + {file = "llvmlite-0.41.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b67340c62c93a11fae482910dc29163a50dff3dfa88bc874872d28ee604a83be"}, + {file = "llvmlite-0.41.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2181bb63ef3c607e6403813421b46982c3ac6bfc1f11fa16a13eaafb46f578e6"}, + {file = "llvmlite-0.41.1-cp311-cp311-win_amd64.whl", hash = "sha256:9564c19b31a0434f01d2025b06b44c7ed422f51e719ab5d24ff03b7560066c9a"}, + {file = "llvmlite-0.41.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5940bc901fb0325970415dbede82c0b7f3e35c2d5fd1d5e0047134c2c46b3281"}, + {file = "llvmlite-0.41.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8b0a9a47c28f67a269bb62f6256e63cef28d3c5f13cbae4fab587c3ad506778b"}, + {file = "llvmlite-0.41.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8afdfa6da33f0b4226af8e64cfc2b28986e005528fbf944d0a24a72acfc9432"}, + {file = "llvmlite-0.41.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8454c1133ef701e8c050a59edd85d238ee18bb9a0eb95faf2fca8b909ee3c89a"}, + {file = "llvmlite-0.41.1-cp38-cp38-win32.whl", hash = "sha256:2d92c51e6e9394d503033ffe3292f5bef1566ab73029ec853861f60ad5c925d0"}, + {file = "llvmlite-0.41.1-cp38-cp38-win_amd64.whl", hash = "sha256:df75594e5a4702b032684d5481db3af990b69c249ccb1d32687b8501f0689432"}, + {file = "llvmlite-0.41.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:04725975e5b2af416d685ea0769f4ecc33f97be541e301054c9f741003085802"}, + {file = "llvmlite-0.41.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:bf14aa0eb22b58c231243dccf7e7f42f7beec48970f2549b3a6acc737d1a4ba4"}, + {file = "llvmlite-0.41.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:92c32356f669e036eb01016e883b22add883c60739bc1ebee3a1cc0249a50828"}, + {file = "llvmlite-0.41.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24091a6b31242bcdd56ae2dbea40007f462260bc9bdf947953acc39dffd54f8f"}, + {file = "llvmlite-0.41.1-cp39-cp39-win32.whl", hash = "sha256:880cb57ca49e862e1cd077104375b9d1dfdc0622596dfa22105f470d7bacb309"}, + {file = "llvmlite-0.41.1-cp39-cp39-win_amd64.whl", hash = "sha256:92f093986ab92e71c9ffe334c002f96defc7986efda18397d0f08534f3ebdc4d"}, + {file = "llvmlite-0.41.1.tar.gz", hash = "sha256:f19f767a018e6ec89608e1f6b13348fa2fcde657151137cb64e56d48598a92db"}, +] + +[[package]] +name = "markupsafe" +version = "2.1.5" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.7" +files = [ + {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, + {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, + {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, + {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, + {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, + {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, + {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, + {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, +] + +[[package]] +name = "marshmallow" +version = "3.21.0" +description = "A lightweight library for converting complex datatypes to and from native Python datatypes." +optional = false +python-versions = ">=3.8" +files = [ + {file = "marshmallow-3.21.0-py3-none-any.whl", hash = "sha256:e7997f83571c7fd476042c2c188e4ee8a78900ca5e74bd9c8097afa56624e9bd"}, + {file = "marshmallow-3.21.0.tar.gz", hash = "sha256:20f53be28c6e374a711a16165fb22a8dc6003e3f7cda1285e3ca777b9193885b"}, +] + +[package.dependencies] +packaging = ">=17.0" + +[package.extras] +dev = ["marshmallow[tests]", "pre-commit (>=3.5,<4.0)", "tox"] +docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.2.6)", "sphinx-issues (==4.0.0)", "sphinx-version-warning (==1.1.2)"] +tests = ["pytest", "pytz", "simplejson"] + +[[package]] +name = "matplotlib-inline" +version = "0.1.6" +description = "Inline Matplotlib backend for Jupyter" +optional = false +python-versions = ">=3.5" +files = [ + {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, + {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, +] + +[package.dependencies] +traitlets = "*" + +[[package]] +name = "mccabe" +version = "0.7.0" +description = "McCabe checker, plugin for flake8" +optional = false +python-versions = ">=3.6" +files = [ + {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, + {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, +] + +[[package]] +name = "mistune" +version = "3.0.2" +description = "A sane and fast Markdown parser with useful plugins and renderers" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mistune-3.0.2-py3-none-any.whl", hash = "sha256:71481854c30fdbc938963d3605b72501f5c10a9320ecd412c121c163a1c7d205"}, + {file = "mistune-3.0.2.tar.gz", hash = "sha256:fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8"}, +] + +[[package]] +name = "multidict" +version = "6.0.5" +description = "multidict implementation" +optional = false +python-versions = ">=3.7" +files = [ + {file = "multidict-6.0.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:228b644ae063c10e7f324ab1ab6b548bdf6f8b47f3ec234fef1093bc2735e5f9"}, + {file = "multidict-6.0.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:896ebdcf62683551312c30e20614305f53125750803b614e9e6ce74a96232604"}, + {file = "multidict-6.0.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:411bf8515f3be9813d06004cac41ccf7d1cd46dfe233705933dd163b60e37600"}, + {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d147090048129ce3c453f0292e7697d333db95e52616b3793922945804a433c"}, + {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:215ed703caf15f578dca76ee6f6b21b7603791ae090fbf1ef9d865571039ade5"}, + {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c6390cf87ff6234643428991b7359b5f59cc15155695deb4eda5c777d2b880f"}, + {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21fd81c4ebdb4f214161be351eb5bcf385426bf023041da2fd9e60681f3cebae"}, + {file = "multidict-6.0.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3cc2ad10255f903656017363cd59436f2111443a76f996584d1077e43ee51182"}, + {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6939c95381e003f54cd4c5516740faba40cf5ad3eeff460c3ad1d3e0ea2549bf"}, + {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:220dd781e3f7af2c2c1053da9fa96d9cf3072ca58f057f4c5adaaa1cab8fc442"}, + {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:766c8f7511df26d9f11cd3a8be623e59cca73d44643abab3f8c8c07620524e4a"}, + {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:fe5d7785250541f7f5019ab9cba2c71169dc7d74d0f45253f8313f436458a4ef"}, + {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c1c1496e73051918fcd4f58ff2e0f2f3066d1c76a0c6aeffd9b45d53243702cc"}, + {file = "multidict-6.0.5-cp310-cp310-win32.whl", hash = "sha256:7afcdd1fc07befad18ec4523a782cde4e93e0a2bf71239894b8d61ee578c1319"}, + {file = "multidict-6.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:99f60d34c048c5c2fabc766108c103612344c46e35d4ed9ae0673d33c8fb26e8"}, + {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f285e862d2f153a70586579c15c44656f888806ed0e5b56b64489afe4a2dbfba"}, + {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:53689bb4e102200a4fafa9de9c7c3c212ab40a7ab2c8e474491914d2305f187e"}, + {file = "multidict-6.0.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:612d1156111ae11d14afaf3a0669ebf6c170dbb735e510a7438ffe2369a847fd"}, + {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7be7047bd08accdb7487737631d25735c9a04327911de89ff1b26b81745bd4e3"}, + {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de170c7b4fe6859beb8926e84f7d7d6c693dfe8e27372ce3b76f01c46e489fcf"}, + {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04bde7a7b3de05732a4eb39c94574db1ec99abb56162d6c520ad26f83267de29"}, + {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85f67aed7bb647f93e7520633d8f51d3cbc6ab96957c71272b286b2f30dc70ed"}, + {file = "multidict-6.0.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425bf820055005bfc8aa9a0b99ccb52cc2f4070153e34b701acc98d201693733"}, + {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d3eb1ceec286eba8220c26f3b0096cf189aea7057b6e7b7a2e60ed36b373b77f"}, + {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7901c05ead4b3fb75113fb1dd33eb1253c6d3ee37ce93305acd9d38e0b5f21a4"}, + {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:e0e79d91e71b9867c73323a3444724d496c037e578a0e1755ae159ba14f4f3d1"}, + {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:29bfeb0dff5cb5fdab2023a7a9947b3b4af63e9c47cae2a10ad58394b517fddc"}, + {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e030047e85cbcedbfc073f71836d62dd5dadfbe7531cae27789ff66bc551bd5e"}, + {file = "multidict-6.0.5-cp311-cp311-win32.whl", hash = "sha256:2f4848aa3baa109e6ab81fe2006c77ed4d3cd1e0ac2c1fbddb7b1277c168788c"}, + {file = "multidict-6.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:2faa5ae9376faba05f630d7e5e6be05be22913782b927b19d12b8145968a85ea"}, + {file = "multidict-6.0.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:51d035609b86722963404f711db441cf7134f1889107fb171a970c9701f92e1e"}, + {file = "multidict-6.0.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cbebcd5bcaf1eaf302617c114aa67569dd3f090dd0ce8ba9e35e9985b41ac35b"}, + {file = "multidict-6.0.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ffc42c922dbfddb4a4c3b438eb056828719f07608af27d163191cb3e3aa6cc5"}, + {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ceb3b7e6a0135e092de86110c5a74e46bda4bd4fbfeeb3a3bcec79c0f861e450"}, + {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:79660376075cfd4b2c80f295528aa6beb2058fd289f4c9252f986751a4cd0496"}, + {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e4428b29611e989719874670fd152b6625500ad6c686d464e99f5aaeeaca175a"}, + {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d84a5c3a5f7ce6db1f999fb9438f686bc2e09d38143f2d93d8406ed2dd6b9226"}, + {file = "multidict-6.0.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:76c0de87358b192de7ea9649beb392f107dcad9ad27276324c24c91774ca5271"}, + {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:79a6d2ba910adb2cbafc95dad936f8b9386e77c84c35bc0add315b856d7c3abb"}, + {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:92d16a3e275e38293623ebf639c471d3e03bb20b8ebb845237e0d3664914caef"}, + {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:fb616be3538599e797a2017cccca78e354c767165e8858ab5116813146041a24"}, + {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:14c2976aa9038c2629efa2c148022ed5eb4cb939e15ec7aace7ca932f48f9ba6"}, + {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:435a0984199d81ca178b9ae2c26ec3d49692d20ee29bc4c11a2a8d4514c67eda"}, + {file = "multidict-6.0.5-cp312-cp312-win32.whl", hash = "sha256:9fe7b0653ba3d9d65cbe7698cca585bf0f8c83dbbcc710db9c90f478e175f2d5"}, + {file = "multidict-6.0.5-cp312-cp312-win_amd64.whl", hash = "sha256:01265f5e40f5a17f8241d52656ed27192be03bfa8764d88e8220141d1e4b3556"}, + {file = "multidict-6.0.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:19fe01cea168585ba0f678cad6f58133db2aa14eccaf22f88e4a6dccadfad8b3"}, + {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6bf7a982604375a8d49b6cc1b781c1747f243d91b81035a9b43a2126c04766f5"}, + {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:107c0cdefe028703fb5dafe640a409cb146d44a6ae201e55b35a4af8e95457dd"}, + {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:403c0911cd5d5791605808b942c88a8155c2592e05332d2bf78f18697a5fa15e"}, + {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aeaf541ddbad8311a87dd695ed9642401131ea39ad7bc8cf3ef3967fd093b626"}, + {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4972624066095e52b569e02b5ca97dbd7a7ddd4294bf4e7247d52635630dd83"}, + {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d946b0a9eb8aaa590df1fe082cee553ceab173e6cb5b03239716338629c50c7a"}, + {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b55358304d7a73d7bdf5de62494aaf70bd33015831ffd98bc498b433dfe5b10c"}, + {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:a3145cb08d8625b2d3fee1b2d596a8766352979c9bffe5d7833e0503d0f0b5e5"}, + {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:d65f25da8e248202bd47445cec78e0025c0fe7582b23ec69c3b27a640dd7a8e3"}, + {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c9bf56195c6bbd293340ea82eafd0071cb3d450c703d2c93afb89f93b8386ccc"}, + {file = "multidict-6.0.5-cp37-cp37m-win32.whl", hash = "sha256:69db76c09796b313331bb7048229e3bee7928eb62bab5e071e9f7fcc4879caee"}, + {file = "multidict-6.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:fce28b3c8a81b6b36dfac9feb1de115bab619b3c13905b419ec71d03a3fc1423"}, + {file = "multidict-6.0.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:76f067f5121dcecf0d63a67f29080b26c43c71a98b10c701b0677e4a065fbd54"}, + {file = "multidict-6.0.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b82cc8ace10ab5bd93235dfaab2021c70637005e1ac787031f4d1da63d493c1d"}, + {file = "multidict-6.0.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5cb241881eefd96b46f89b1a056187ea8e9ba14ab88ba632e68d7a2ecb7aadf7"}, + {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8e94e6912639a02ce173341ff62cc1201232ab86b8a8fcc05572741a5dc7d93"}, + {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09a892e4a9fb47331da06948690ae38eaa2426de97b4ccbfafbdcbe5c8f37ff8"}, + {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55205d03e8a598cfc688c71ca8ea5f66447164efff8869517f175ea632c7cb7b"}, + {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37b15024f864916b4951adb95d3a80c9431299080341ab9544ed148091b53f50"}, + {file = "multidict-6.0.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2a1dee728b52b33eebff5072817176c172050d44d67befd681609b4746e1c2e"}, + {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:edd08e6f2f1a390bf137080507e44ccc086353c8e98c657e666c017718561b89"}, + {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:60d698e8179a42ec85172d12f50b1668254628425a6bd611aba022257cac1386"}, + {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:3d25f19500588cbc47dc19081d78131c32637c25804df8414463ec908631e453"}, + {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:4cc0ef8b962ac7a5e62b9e826bd0cd5040e7d401bc45a6835910ed699037a461"}, + {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:eca2e9d0cc5a889850e9bbd68e98314ada174ff6ccd1129500103df7a94a7a44"}, + {file = "multidict-6.0.5-cp38-cp38-win32.whl", hash = "sha256:4a6a4f196f08c58c59e0b8ef8ec441d12aee4125a7d4f4fef000ccb22f8d7241"}, + {file = "multidict-6.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:0275e35209c27a3f7951e1ce7aaf93ce0d163b28948444bec61dd7badc6d3f8c"}, + {file = "multidict-6.0.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e7be68734bd8c9a513f2b0cfd508802d6609da068f40dc57d4e3494cefc92929"}, + {file = "multidict-6.0.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1d9ea7a7e779d7a3561aade7d596649fbecfa5c08a7674b11b423783217933f9"}, + {file = "multidict-6.0.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ea1456df2a27c73ce51120fa2f519f1bea2f4a03a917f4a43c8707cf4cbbae1a"}, + {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf590b134eb70629e350691ecca88eac3e3b8b3c86992042fb82e3cb1830d5e1"}, + {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5c0631926c4f58e9a5ccce555ad7747d9a9f8b10619621f22f9635f069f6233e"}, + {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dce1c6912ab9ff5f179eaf6efe7365c1f425ed690b03341911bf4939ef2f3046"}, + {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0868d64af83169e4d4152ec612637a543f7a336e4a307b119e98042e852ad9c"}, + {file = "multidict-6.0.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:141b43360bfd3bdd75f15ed811850763555a251e38b2405967f8e25fb43f7d40"}, + {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7df704ca8cf4a073334e0427ae2345323613e4df18cc224f647f251e5e75a527"}, + {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6214c5a5571802c33f80e6c84713b2c79e024995b9c5897f794b43e714daeec9"}, + {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:cd6c8fca38178e12c00418de737aef1261576bd1b6e8c6134d3e729a4e858b38"}, + {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:e02021f87a5b6932fa6ce916ca004c4d441509d33bbdbeca70d05dff5e9d2479"}, + {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ebd8d160f91a764652d3e51ce0d2956b38efe37c9231cd82cfc0bed2e40b581c"}, + {file = "multidict-6.0.5-cp39-cp39-win32.whl", hash = "sha256:04da1bb8c8dbadf2a18a452639771951c662c5ad03aefe4884775454be322c9b"}, + {file = "multidict-6.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:d6f6d4f185481c9669b9447bf9d9cf3b95a0e9df9d169bbc17e363b7d5487755"}, + {file = "multidict-6.0.5-py3-none-any.whl", hash = "sha256:0d63c74e3d7ab26de115c49bffc92cc77ed23395303d496eae515d4204a625e7"}, + {file = "multidict-6.0.5.tar.gz", hash = "sha256:f7e301075edaf50500f0b341543c41194d8df3ae5caf4702f2095f3ca73dd8da"}, +] + +[[package]] +name = "mypy" +version = "0.991" +description = "Optional static typing for Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "mypy-0.991-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7d17e0a9707d0772f4a7b878f04b4fd11f6f5bcb9b3813975a9b13c9332153ab"}, + {file = "mypy-0.991-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0714258640194d75677e86c786e80ccf294972cc76885d3ebbb560f11db0003d"}, + {file = "mypy-0.991-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0c8f3be99e8a8bd403caa8c03be619544bc2c77a7093685dcf308c6b109426c6"}, + {file = "mypy-0.991-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc9ec663ed6c8f15f4ae9d3c04c989b744436c16d26580eaa760ae9dd5d662eb"}, + {file = "mypy-0.991-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4307270436fd7694b41f913eb09210faff27ea4979ecbcd849e57d2da2f65305"}, + {file = "mypy-0.991-cp310-cp310-win_amd64.whl", hash = "sha256:901c2c269c616e6cb0998b33d4adbb4a6af0ac4ce5cd078afd7bc95830e62c1c"}, + {file = "mypy-0.991-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:d13674f3fb73805ba0c45eb6c0c3053d218aa1f7abead6e446d474529aafc372"}, + {file = "mypy-0.991-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1c8cd4fb70e8584ca1ed5805cbc7c017a3d1a29fb450621089ffed3e99d1857f"}, + {file = "mypy-0.991-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:209ee89fbb0deed518605edddd234af80506aec932ad28d73c08f1400ef80a33"}, + {file = "mypy-0.991-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37bd02ebf9d10e05b00d71302d2c2e6ca333e6c2a8584a98c00e038db8121f05"}, + {file = "mypy-0.991-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:26efb2fcc6b67e4d5a55561f39176821d2adf88f2745ddc72751b7890f3194ad"}, + {file = "mypy-0.991-cp311-cp311-win_amd64.whl", hash = "sha256:3a700330b567114b673cf8ee7388e949f843b356a73b5ab22dd7cff4742a5297"}, + {file = "mypy-0.991-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:1f7d1a520373e2272b10796c3ff721ea1a0712288cafaa95931e66aa15798813"}, + {file = "mypy-0.991-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:641411733b127c3e0dab94c45af15fea99e4468f99ac88b39efb1ad677da5711"}, + {file = "mypy-0.991-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3d80e36b7d7a9259b740be6d8d906221789b0d836201af4234093cae89ced0cd"}, + {file = "mypy-0.991-cp37-cp37m-win_amd64.whl", hash = "sha256:e62ebaad93be3ad1a828a11e90f0e76f15449371ffeecca4a0a0b9adc99abcef"}, + {file = "mypy-0.991-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b86ce2c1866a748c0f6faca5232059f881cda6dda2a893b9a8373353cfe3715a"}, + {file = "mypy-0.991-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ac6e503823143464538efda0e8e356d871557ef60ccd38f8824a4257acc18d93"}, + {file = "mypy-0.991-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0cca5adf694af539aeaa6ac633a7afe9bbd760df9d31be55ab780b77ab5ae8bf"}, + {file = "mypy-0.991-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a12c56bf73cdab116df96e4ff39610b92a348cc99a1307e1da3c3768bbb5b135"}, + {file = "mypy-0.991-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:652b651d42f155033a1967739788c436491b577b6a44e4c39fb340d0ee7f0d70"}, + {file = "mypy-0.991-cp38-cp38-win_amd64.whl", hash = "sha256:4175593dc25d9da12f7de8de873a33f9b2b8bdb4e827a7cae952e5b1a342e243"}, + {file = "mypy-0.991-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:98e781cd35c0acf33eb0295e8b9c55cdbef64fcb35f6d3aa2186f289bed6e80d"}, + {file = "mypy-0.991-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6d7464bac72a85cb3491c7e92b5b62f3dcccb8af26826257760a552a5e244aa5"}, + {file = "mypy-0.991-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c9166b3f81a10cdf9b49f2d594b21b31adadb3d5e9db9b834866c3258b695be3"}, + {file = "mypy-0.991-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8472f736a5bfb159a5e36740847808f6f5b659960115ff29c7cecec1741c648"}, + {file = "mypy-0.991-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e80e758243b97b618cdf22004beb09e8a2de1af481382e4d84bc52152d1c476"}, + {file = "mypy-0.991-cp39-cp39-win_amd64.whl", hash = "sha256:74e259b5c19f70d35fcc1ad3d56499065c601dfe94ff67ae48b85596b9ec1461"}, + {file = "mypy-0.991-py3-none-any.whl", hash = "sha256:de32edc9b0a7e67c2775e574cb061a537660e51210fbf6006b0b36ea695ae9bb"}, + {file = "mypy-0.991.tar.gz", hash = "sha256:3c0165ba8f354a6d9881809ef29f1a9318a236a6d81c690094c5df32107bde06"}, +] + +[package.dependencies] +mypy-extensions = ">=0.4.3" +tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +typing-extensions = ">=3.10" + +[package.extras] +dmypy = ["psutil (>=4.0)"] +install-types = ["pip"] +python2 = ["typed-ast (>=1.4.0,<2)"] +reports = ["lxml"] + +[[package]] +name = "mypy-extensions" +version = "1.0.0" +description = "Type system extensions for programs checked with the mypy type checker." +optional = false +python-versions = ">=3.5" +files = [ + {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, + {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, +] + +[[package]] +name = "nbclient" +version = "0.9.0" +description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." +optional = false +python-versions = ">=3.8.0" +files = [ + {file = "nbclient-0.9.0-py3-none-any.whl", hash = "sha256:a3a1ddfb34d4a9d17fc744d655962714a866639acd30130e9be84191cd97cd15"}, + {file = "nbclient-0.9.0.tar.gz", hash = "sha256:4b28c207877cf33ef3a9838cdc7a54c5ceff981194a82eac59d558f05487295e"}, +] + +[package.dependencies] +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +nbformat = ">=5.1" +traitlets = ">=5.4" + +[package.extras] +dev = ["pre-commit"] +docs = ["autodoc-traits", "mock", "moto", "myst-parser", "nbclient[test]", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling"] +test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] + +[[package]] +name = "nbconvert" +version = "7.16.1" +description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." +optional = false +python-versions = ">=3.8" +files = [ + {file = "nbconvert-7.16.1-py3-none-any.whl", hash = "sha256:3188727dffadfdc9c6a1c7250729063d7bc78b355ad7aa023138afa030d1cd07"}, + {file = "nbconvert-7.16.1.tar.gz", hash = "sha256:e79e6a074f49ba3ed29428ed86487bf51509d9aab613bd8522ac08f6d28fd7fd"}, +] + +[package.dependencies] +beautifulsoup4 = "*" +bleach = "!=5.0.0" +defusedxml = "*" +importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} +jinja2 = ">=3.0" +jupyter-core = ">=4.7" +jupyterlab-pygments = "*" +markupsafe = ">=2.0" +mistune = ">=2.0.3,<4" +nbclient = ">=0.5.0" +nbformat = ">=5.7" +packaging = "*" +pandocfilters = ">=1.4.1" +pygments = ">=2.4.1" +tinycss2 = "*" +traitlets = ">=5.1" + +[package.extras] +all = ["nbconvert[docs,qtpdf,serve,test,webpdf]"] +docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] +qtpdf = ["nbconvert[qtpng]"] +qtpng = ["pyqtwebengine (>=5.15)"] +serve = ["tornado (>=6.1)"] +test = ["flaky", "ipykernel", "ipywidgets (>=7.5)", "pytest"] +webpdf = ["playwright"] + +[[package]] +name = "nbformat" +version = "5.9.2" +description = "The Jupyter Notebook format" +optional = false +python-versions = ">=3.8" +files = [ + {file = "nbformat-5.9.2-py3-none-any.whl", hash = "sha256:1c5172d786a41b82bcfd0c23f9e6b6f072e8fb49c39250219e4acfff1efe89e9"}, + {file = "nbformat-5.9.2.tar.gz", hash = "sha256:5f98b5ba1997dff175e77e0c17d5c10a96eaed2cbd1de3533d1fc35d5e111192"}, +] + +[package.dependencies] +fastjsonschema = "*" +jsonschema = ">=2.6" +jupyter-core = "*" +traitlets = ">=5.1" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["pep440", "pre-commit", "pytest", "testpath"] + +[[package]] +name = "nest-asyncio" +version = "1.6.0" +description = "Patch asyncio to allow nested event loops" +optional = false +python-versions = ">=3.5" +files = [ + {file = "nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c"}, + {file = "nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe"}, +] + +[[package]] +name = "networkx" +version = "3.1" +description = "Python package for creating and manipulating graphs and networks" +optional = false +python-versions = ">=3.8" +files = [ + {file = "networkx-3.1-py3-none-any.whl", hash = "sha256:4f33f68cb2afcf86f28a45f43efc27a9386b535d567d2127f8f61d51dec58d36"}, + {file = "networkx-3.1.tar.gz", hash = "sha256:de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61"}, +] + +[package.extras] +default = ["matplotlib (>=3.4)", "numpy (>=1.20)", "pandas (>=1.3)", "scipy (>=1.8)"] +developer = ["mypy (>=1.1)", "pre-commit (>=3.2)"] +doc = ["nb2plots (>=0.6)", "numpydoc (>=1.5)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.13)", "sphinx (>=6.1)", "sphinx-gallery (>=0.12)", "texext (>=0.6.7)"] +extra = ["lxml (>=4.6)", "pydot (>=1.4.2)", "pygraphviz (>=1.10)", "sympy (>=1.10)"] +test = ["codecov (>=2.1)", "pytest (>=7.2)", "pytest-cov (>=4.0)"] + +[[package]] +name = "nltk" +version = "3.8.1" +description = "Natural Language Toolkit" +optional = false +python-versions = ">=3.7" +files = [ + {file = "nltk-3.8.1-py3-none-any.whl", hash = "sha256:fd5c9109f976fa86bcadba8f91e47f5e9293bd034474752e92a520f81c93dda5"}, + {file = "nltk-3.8.1.zip", hash = "sha256:1834da3d0682cba4f2cede2f9aad6b0fafb6461ba451db0efb6f9c39798d64d3"}, +] + +[package.dependencies] +click = "*" +joblib = "*" +regex = ">=2021.8.3" +tqdm = "*" + +[package.extras] +all = ["matplotlib", "numpy", "pyparsing", "python-crfsuite", "requests", "scikit-learn", "scipy", "twython"] +corenlp = ["requests"] +machine-learning = ["numpy", "python-crfsuite", "scikit-learn", "scipy"] +plot = ["matplotlib"] +tgrep = ["pyparsing"] +twitter = ["twython"] + +[[package]] +name = "nodeenv" +version = "1.8.0" +description = "Node.js virtual environment builder" +optional = false +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" +files = [ + {file = "nodeenv-1.8.0-py2.py3-none-any.whl", hash = "sha256:df865724bb3c3adc86b3876fa209771517b0cfe596beff01a92700e0e8be4cec"}, + {file = "nodeenv-1.8.0.tar.gz", hash = "sha256:d51e0c37e64fbf47d017feac3145cdbb58836d7eee8c6f6d3b6880c5456227d2"}, +] + +[package.dependencies] +setuptools = "*" + +[[package]] +name = "notebook" +version = "7.1.1" +description = "Jupyter Notebook - A web-based notebook environment for interactive computing" +optional = false +python-versions = ">=3.8" +files = [ + {file = "notebook-7.1.1-py3-none-any.whl", hash = "sha256:197d8e0595acabf4005851c8716e952a81b405f7aefb648067a761fbde267ce7"}, + {file = "notebook-7.1.1.tar.gz", hash = "sha256:818e7420fa21f402e726afb9f02df7f3c10f294c02e383ed19852866c316108b"}, +] + +[package.dependencies] +jupyter-server = ">=2.4.0,<3" +jupyterlab = ">=4.1.1,<4.2" +jupyterlab-server = ">=2.22.1,<3" +notebook-shim = ">=0.2,<0.3" +tornado = ">=6.2.0" + +[package.extras] +dev = ["hatch", "pre-commit"] +docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.22.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] + +[[package]] +name = "notebook-shim" +version = "0.2.4" +description = "A shim layer for notebook traits and config" +optional = false +python-versions = ">=3.7" +files = [ + {file = "notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef"}, + {file = "notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb"}, +] + +[package.dependencies] +jupyter-server = ">=1.8,<3" + +[package.extras] +test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"] + +[[package]] +name = "numba" +version = "0.58.1" +description = "compiling Python code using LLVM" +optional = false +python-versions = ">=3.8" +files = [ + {file = "numba-0.58.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:07f2fa7e7144aa6f275f27260e73ce0d808d3c62b30cff8906ad1dec12d87bbe"}, + {file = "numba-0.58.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7bf1ddd4f7b9c2306de0384bf3854cac3edd7b4d8dffae2ec1b925e4c436233f"}, + {file = "numba-0.58.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:bc2d904d0319d7a5857bd65062340bed627f5bfe9ae4a495aef342f072880d50"}, + {file = "numba-0.58.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4e79b6cc0d2bf064a955934a2e02bf676bc7995ab2db929dbbc62e4c16551be6"}, + {file = "numba-0.58.1-cp310-cp310-win_amd64.whl", hash = "sha256:81fe5b51532478149b5081311b0fd4206959174e660c372b94ed5364cfb37c82"}, + {file = "numba-0.58.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bcecd3fb9df36554b342140a4d77d938a549be635d64caf8bd9ef6c47a47f8aa"}, + {file = "numba-0.58.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a1eaa744f518bbd60e1f7ccddfb8002b3d06bd865b94a5d7eac25028efe0e0ff"}, + {file = "numba-0.58.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:bf68df9c307fb0aa81cacd33faccd6e419496fdc621e83f1efce35cdc5e79cac"}, + {file = "numba-0.58.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:55a01e1881120e86d54efdff1be08381886fe9f04fc3006af309c602a72bc44d"}, + {file = "numba-0.58.1-cp311-cp311-win_amd64.whl", hash = "sha256:811305d5dc40ae43c3ace5b192c670c358a89a4d2ae4f86d1665003798ea7a1a"}, + {file = "numba-0.58.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ea5bfcf7d641d351c6a80e8e1826eb4a145d619870016eeaf20bbd71ef5caa22"}, + {file = "numba-0.58.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e63d6aacaae1ba4ef3695f1c2122b30fa3d8ba039c8f517784668075856d79e2"}, + {file = "numba-0.58.1-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6fe7a9d8e3bd996fbe5eac0683227ccef26cba98dae6e5cee2c1894d4b9f16c1"}, + {file = "numba-0.58.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:898af055b03f09d33a587e9425500e5be84fc90cd2f80b3fb71c6a4a17a7e354"}, + {file = "numba-0.58.1-cp38-cp38-win_amd64.whl", hash = "sha256:d3e2fe81fe9a59fcd99cc572002101119059d64d31eb6324995ee8b0f144a306"}, + {file = "numba-0.58.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5c765aef472a9406a97ea9782116335ad4f9ef5c9f93fc05fd44aab0db486954"}, + {file = "numba-0.58.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9e9356e943617f5e35a74bf56ff6e7cc83e6b1865d5e13cee535d79bf2cae954"}, + {file = "numba-0.58.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:240e7a1ae80eb6b14061dc91263b99dc8d6af9ea45d310751b780888097c1aaa"}, + {file = "numba-0.58.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:45698b995914003f890ad839cfc909eeb9c74921849c712a05405d1a79c50f68"}, + {file = "numba-0.58.1-cp39-cp39-win_amd64.whl", hash = "sha256:bd3dda77955be03ff366eebbfdb39919ce7c2620d86c906203bed92124989032"}, + {file = "numba-0.58.1.tar.gz", hash = "sha256:487ded0633efccd9ca3a46364b40006dbdaca0f95e99b8b83e778d1195ebcbaa"}, +] + +[package.dependencies] +llvmlite = "==0.41.*" +numpy = ">=1.22,<1.27" + +[[package]] +name = "numpy" +version = "1.24.4" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "numpy-1.24.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c0bfb52d2169d58c1cdb8cc1f16989101639b34c7d3ce60ed70b19c63eba0b64"}, + {file = "numpy-1.24.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ed094d4f0c177b1b8e7aa9cba7d6ceed51c0e569a5318ac0ca9a090680a6a1b1"}, + {file = "numpy-1.24.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79fc682a374c4a8ed08b331bef9c5f582585d1048fa6d80bc6c35bc384eee9b4"}, + {file = "numpy-1.24.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ffe43c74893dbf38c2b0a1f5428760a1a9c98285553c89e12d70a96a7f3a4d6"}, + {file = "numpy-1.24.4-cp310-cp310-win32.whl", hash = "sha256:4c21decb6ea94057331e111a5bed9a79d335658c27ce2adb580fb4d54f2ad9bc"}, + {file = "numpy-1.24.4-cp310-cp310-win_amd64.whl", hash = "sha256:b4bea75e47d9586d31e892a7401f76e909712a0fd510f58f5337bea9572c571e"}, + {file = "numpy-1.24.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f136bab9c2cfd8da131132c2cf6cc27331dd6fae65f95f69dcd4ae3c3639c810"}, + {file = "numpy-1.24.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e2926dac25b313635e4d6cf4dc4e51c8c0ebfed60b801c799ffc4c32bf3d1254"}, + {file = "numpy-1.24.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:222e40d0e2548690405b0b3c7b21d1169117391c2e82c378467ef9ab4c8f0da7"}, + {file = "numpy-1.24.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7215847ce88a85ce39baf9e89070cb860c98fdddacbaa6c0da3ffb31b3350bd5"}, + {file = "numpy-1.24.4-cp311-cp311-win32.whl", hash = "sha256:4979217d7de511a8d57f4b4b5b2b965f707768440c17cb70fbf254c4b225238d"}, + {file = "numpy-1.24.4-cp311-cp311-win_amd64.whl", hash = "sha256:b7b1fc9864d7d39e28f41d089bfd6353cb5f27ecd9905348c24187a768c79694"}, + {file = "numpy-1.24.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1452241c290f3e2a312c137a9999cdbf63f78864d63c79039bda65ee86943f61"}, + {file = "numpy-1.24.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:04640dab83f7c6c85abf9cd729c5b65f1ebd0ccf9de90b270cd61935eef0197f"}, + {file = "numpy-1.24.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5425b114831d1e77e4b5d812b69d11d962e104095a5b9c3b641a218abcc050e"}, + {file = "numpy-1.24.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd80e219fd4c71fc3699fc1dadac5dcf4fd882bfc6f7ec53d30fa197b8ee22dc"}, + {file = "numpy-1.24.4-cp38-cp38-win32.whl", hash = "sha256:4602244f345453db537be5314d3983dbf5834a9701b7723ec28923e2889e0bb2"}, + {file = "numpy-1.24.4-cp38-cp38-win_amd64.whl", hash = "sha256:692f2e0f55794943c5bfff12b3f56f99af76f902fc47487bdfe97856de51a706"}, + {file = "numpy-1.24.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2541312fbf09977f3b3ad449c4e5f4bb55d0dbf79226d7724211acc905049400"}, + {file = "numpy-1.24.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9667575fb6d13c95f1b36aca12c5ee3356bf001b714fc354eb5465ce1609e62f"}, + {file = "numpy-1.24.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3a86ed21e4f87050382c7bc96571755193c4c1392490744ac73d660e8f564a9"}, + {file = "numpy-1.24.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d11efb4dbecbdf22508d55e48d9c8384db795e1b7b51ea735289ff96613ff74d"}, + {file = "numpy-1.24.4-cp39-cp39-win32.whl", hash = "sha256:6620c0acd41dbcb368610bb2f4d83145674040025e5536954782467100aa8835"}, + {file = "numpy-1.24.4-cp39-cp39-win_amd64.whl", hash = "sha256:befe2bf740fd8373cf56149a5c23a0f601e82869598d41f8e188a0e9869926f8"}, + {file = "numpy-1.24.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:31f13e25b4e304632a4619d0e0777662c2ffea99fcae2029556b17d8ff958aef"}, + {file = "numpy-1.24.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95f7ac6540e95bc440ad77f56e520da5bf877f87dca58bd095288dce8940532a"}, + {file = "numpy-1.24.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e98f220aa76ca2a977fe435f5b04d7b3470c0a2e6312907b37ba6068f26787f2"}, + {file = "numpy-1.24.4.tar.gz", hash = "sha256:80f5e3a4e498641401868df4208b74581206afbee7cf7b8329daae82676d9463"}, +] + +[[package]] +name = "openai" +version = "1.12.0" +description = "The official Python library for the openai API" +optional = false +python-versions = ">=3.7.1" +files = [ + {file = "openai-1.12.0-py3-none-any.whl", hash = "sha256:a54002c814e05222e413664f651b5916714e4700d041d5cf5724d3ae1a3e3481"}, + {file = "openai-1.12.0.tar.gz", hash = "sha256:99c5d257d09ea6533d689d1cc77caa0ac679fa21efef8893d8b0832a86877f1b"}, +] + +[package.dependencies] +anyio = ">=3.5.0,<5" +distro = ">=1.7.0,<2" +httpx = ">=0.23.0,<1" +pydantic = ">=1.9.0,<3" +sniffio = "*" +tqdm = ">4" +typing-extensions = ">=4.7,<5" + +[package.extras] +datalib = ["numpy (>=1)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)"] + +[[package]] +name = "overrides" +version = "7.7.0" +description = "A decorator to automatically detect mismatch when overriding a method." +optional = false +python-versions = ">=3.6" +files = [ + {file = "overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"}, + {file = "overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a"}, +] + +[[package]] +name = "packaging" +version = "23.2" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.7" +files = [ + {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, + {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, +] + +[[package]] +name = "pandas" +version = "2.0.3" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, + {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, + {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, + {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, + {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, + {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, + {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, + {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, + {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, + {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, + {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, + {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, + {file = "pandas-2.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061"}, + {file = "pandas-2.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5"}, + {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089"}, + {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0"}, + {file = "pandas-2.0.3-cp38-cp38-win32.whl", hash = "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02"}, + {file = "pandas-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78"}, + {file = "pandas-2.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b"}, + {file = "pandas-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e"}, + {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b"}, + {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641"}, + {file = "pandas-2.0.3-cp39-cp39-win32.whl", hash = "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682"}, + {file = "pandas-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc"}, + {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, +] + +[package.dependencies] +numpy = [ + {version = ">=1.20.3", markers = "python_version < \"3.10\""}, + {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, + {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, +] +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.1" + +[package.extras] +all = ["PyQt5 (>=5.15.1)", "SQLAlchemy (>=1.4.16)", "beautifulsoup4 (>=4.9.3)", "bottleneck (>=1.3.2)", "brotlipy (>=0.7.0)", "fastparquet (>=0.6.3)", "fsspec (>=2021.07.0)", "gcsfs (>=2021.07.0)", "html5lib (>=1.1)", "hypothesis (>=6.34.2)", "jinja2 (>=3.0.0)", "lxml (>=4.6.3)", "matplotlib (>=3.6.1)", "numba (>=0.53.1)", "numexpr (>=2.7.3)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pandas-gbq (>=0.15.0)", "psycopg2 (>=2.8.6)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "python-snappy (>=0.6.0)", "pyxlsb (>=1.0.8)", "qtpy (>=2.2.0)", "s3fs (>=2021.08.0)", "scipy (>=1.7.1)", "tables (>=3.6.1)", "tabulate (>=0.8.9)", "xarray (>=0.21.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)", "zstandard (>=0.15.2)"] +aws = ["s3fs (>=2021.08.0)"] +clipboard = ["PyQt5 (>=5.15.1)", "qtpy (>=2.2.0)"] +compression = ["brotlipy (>=0.7.0)", "python-snappy (>=0.6.0)", "zstandard (>=0.15.2)"] +computation = ["scipy (>=1.7.1)", "xarray (>=0.21.0)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pyxlsb (>=1.0.8)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)"] +feather = ["pyarrow (>=7.0.0)"] +fss = ["fsspec (>=2021.07.0)"] +gcp = ["gcsfs (>=2021.07.0)", "pandas-gbq (>=0.15.0)"] +hdf5 = ["tables (>=3.6.1)"] +html = ["beautifulsoup4 (>=4.9.3)", "html5lib (>=1.1)", "lxml (>=4.6.3)"] +mysql = ["SQLAlchemy (>=1.4.16)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.0.0)", "tabulate (>=0.8.9)"] +parquet = ["pyarrow (>=7.0.0)"] +performance = ["bottleneck (>=1.3.2)", "numba (>=0.53.1)", "numexpr (>=2.7.1)"] +plot = ["matplotlib (>=3.6.1)"] +postgresql = ["SQLAlchemy (>=1.4.16)", "psycopg2 (>=2.8.6)"] +spss = ["pyreadstat (>=1.1.2)"] +sql-other = ["SQLAlchemy (>=1.4.16)"] +test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.6.3)"] + +[[package]] +name = "pandocfilters" +version = "1.5.1" +description = "Utilities for writing pandoc filters in python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc"}, + {file = "pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e"}, +] + +[[package]] +name = "parso" +version = "0.8.3" +description = "A Python Parser" +optional = false +python-versions = ">=3.6" +files = [ + {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, + {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, +] + +[package.extras] +qa = ["flake8 (==3.8.3)", "mypy (==0.782)"] +testing = ["docopt", "pytest (<6.0.0)"] + +[[package]] +name = "pathspec" +version = "0.12.1" +description = "Utility library for gitignore style pattern matching of file paths." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, + {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, +] + +[[package]] +name = "pexpect" +version = "4.9.0" +description = "Pexpect allows easy control of interactive console applications." +optional = false +python-versions = "*" +files = [ + {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, + {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, +] + +[package.dependencies] +ptyprocess = ">=0.5" + +[[package]] +name = "pickleshare" +version = "0.7.5" +description = "Tiny 'shelve'-like database with concurrency support" +optional = false +python-versions = "*" +files = [ + {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, + {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, +] + +[[package]] +name = "pillow" +version = "10.2.0" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pillow-10.2.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:7823bdd049099efa16e4246bdf15e5a13dbb18a51b68fa06d6c1d4d8b99a796e"}, + {file = "pillow-10.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:83b2021f2ade7d1ed556bc50a399127d7fb245e725aa0113ebd05cfe88aaf588"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fad5ff2f13d69b7e74ce5b4ecd12cc0ec530fcee76356cac6742785ff71c452"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da2b52b37dad6d9ec64e653637a096905b258d2fc2b984c41ae7d08b938a67e4"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:47c0995fc4e7f79b5cfcab1fc437ff2890b770440f7696a3ba065ee0fd496563"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:322bdf3c9b556e9ffb18f93462e5f749d3444ce081290352c6070d014c93feb2"}, + {file = "pillow-10.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:51f1a1bffc50e2e9492e87d8e09a17c5eea8409cda8d3f277eb6edc82813c17c"}, + {file = "pillow-10.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:69ffdd6120a4737710a9eee73e1d2e37db89b620f702754b8f6e62594471dee0"}, + {file = "pillow-10.2.0-cp310-cp310-win32.whl", hash = "sha256:c6dafac9e0f2b3c78df97e79af707cdc5ef8e88208d686a4847bab8266870023"}, + {file = "pillow-10.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:aebb6044806f2e16ecc07b2a2637ee1ef67a11840a66752751714a0d924adf72"}, + {file = "pillow-10.2.0-cp310-cp310-win_arm64.whl", hash = "sha256:7049e301399273a0136ff39b84c3678e314f2158f50f517bc50285fb5ec847ad"}, + {file = "pillow-10.2.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:35bb52c37f256f662abdfa49d2dfa6ce5d93281d323a9af377a120e89a9eafb5"}, + {file = "pillow-10.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9c23f307202661071d94b5e384e1e1dc7dfb972a28a2310e4ee16103e66ddb67"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:773efe0603db30c281521a7c0214cad7836c03b8ccff897beae9b47c0b657d61"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11fa2e5984b949b0dd6d7a94d967743d87c577ff0b83392f17cb3990d0d2fd6e"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:716d30ed977be8b37d3ef185fecb9e5a1d62d110dfbdcd1e2a122ab46fddb03f"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a086c2af425c5f62a65e12fbf385f7c9fcb8f107d0849dba5839461a129cf311"}, + {file = "pillow-10.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c8de2789052ed501dd829e9cae8d3dcce7acb4777ea4a479c14521c942d395b1"}, + {file = "pillow-10.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:609448742444d9290fd687940ac0b57fb35e6fd92bdb65386e08e99af60bf757"}, + {file = "pillow-10.2.0-cp311-cp311-win32.whl", hash = "sha256:823ef7a27cf86df6597fa0671066c1b596f69eba53efa3d1e1cb8b30f3533068"}, + {file = "pillow-10.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:1da3b2703afd040cf65ec97efea81cfba59cdbed9c11d8efc5ab09df9509fc56"}, + {file = "pillow-10.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:edca80cbfb2b68d7b56930b84a0e45ae1694aeba0541f798e908a49d66b837f1"}, + {file = "pillow-10.2.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:1b5e1b74d1bd1b78bc3477528919414874748dd363e6272efd5abf7654e68bef"}, + {file = "pillow-10.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0eae2073305f451d8ecacb5474997c08569fb4eb4ac231ffa4ad7d342fdc25ac"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7c2286c23cd350b80d2fc9d424fc797575fb16f854b831d16fd47ceec078f2c"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e23412b5c41e58cec602f1135c57dfcf15482013ce6e5f093a86db69646a5aa"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:52a50aa3fb3acb9cf7213573ef55d31d6eca37f5709c69e6858fe3bc04a5c2a2"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:127cee571038f252a552760076407f9cff79761c3d436a12af6000cd182a9d04"}, + {file = "pillow-10.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8d12251f02d69d8310b046e82572ed486685c38f02176bd08baf216746eb947f"}, + {file = "pillow-10.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54f1852cd531aa981bc0965b7d609f5f6cc8ce8c41b1139f6ed6b3c54ab82bfb"}, + {file = "pillow-10.2.0-cp312-cp312-win32.whl", hash = "sha256:257d8788df5ca62c980314053197f4d46eefedf4e6175bc9412f14412ec4ea2f"}, + {file = "pillow-10.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:154e939c5f0053a383de4fd3d3da48d9427a7e985f58af8e94d0b3c9fcfcf4f9"}, + {file = "pillow-10.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:f379abd2f1e3dddb2b61bc67977a6b5a0a3f7485538bcc6f39ec76163891ee48"}, + {file = "pillow-10.2.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:8373c6c251f7ef8bda6675dd6d2b3a0fcc31edf1201266b5cf608b62a37407f9"}, + {file = "pillow-10.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:870ea1ada0899fd0b79643990809323b389d4d1d46c192f97342eeb6ee0b8483"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b4b6b1e20608493548b1f32bce8cca185bf0480983890403d3b8753e44077129"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3031709084b6e7852d00479fd1d310b07d0ba82765f973b543c8af5061cf990e"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:3ff074fc97dd4e80543a3e91f69d58889baf2002b6be64347ea8cf5533188213"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:cb4c38abeef13c61d6916f264d4845fab99d7b711be96c326b84df9e3e0ff62d"}, + {file = "pillow-10.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b1b3020d90c2d8e1dae29cf3ce54f8094f7938460fb5ce8bc5c01450b01fbaf6"}, + {file = "pillow-10.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:170aeb00224ab3dc54230c797f8404507240dd868cf52066f66a41b33169bdbe"}, + {file = "pillow-10.2.0-cp38-cp38-win32.whl", hash = "sha256:c4225f5220f46b2fde568c74fca27ae9771536c2e29d7c04f4fb62c83275ac4e"}, + {file = "pillow-10.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:0689b5a8c5288bc0504d9fcee48f61a6a586b9b98514d7d29b840143d6734f39"}, + {file = "pillow-10.2.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:b792a349405fbc0163190fde0dc7b3fef3c9268292586cf5645598b48e63dc67"}, + {file = "pillow-10.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c570f24be1e468e3f0ce7ef56a89a60f0e05b30a3669a459e419c6eac2c35364"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8ecd059fdaf60c1963c58ceb8997b32e9dc1b911f5da5307aab614f1ce5c2fb"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c365fd1703040de1ec284b176d6af5abe21b427cb3a5ff68e0759e1e313a5e7e"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:70c61d4c475835a19b3a5aa42492409878bbca7438554a1f89d20d58a7c75c01"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b6f491cdf80ae540738859d9766783e3b3c8e5bd37f5dfa0b76abdecc5081f13"}, + {file = "pillow-10.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d189550615b4948f45252d7f005e53c2040cea1af5b60d6f79491a6e147eef7"}, + {file = "pillow-10.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:49d9ba1ed0ef3e061088cd1e7538a0759aab559e2e0a80a36f9fd9d8c0c21591"}, + {file = "pillow-10.2.0-cp39-cp39-win32.whl", hash = "sha256:babf5acfede515f176833ed6028754cbcd0d206f7f614ea3447d67c33be12516"}, + {file = "pillow-10.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:0304004f8067386b477d20a518b50f3fa658a28d44e4116970abfcd94fac34a8"}, + {file = "pillow-10.2.0-cp39-cp39-win_arm64.whl", hash = "sha256:0fb3e7fc88a14eacd303e90481ad983fd5b69c761e9e6ef94c983f91025da869"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:322209c642aabdd6207517e9739c704dc9f9db943015535783239022002f054a"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3eedd52442c0a5ff4f887fab0c1c0bb164d8635b32c894bc1faf4c618dd89df2"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb28c753fd5eb3dd859b4ee95de66cc62af91bcff5db5f2571d32a520baf1f04"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:33870dc4653c5017bf4c8873e5488d8f8d5f8935e2f1fb9a2208c47cdd66efd2"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3c31822339516fb3c82d03f30e22b1d038da87ef27b6a78c9549888f8ceda39a"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:a2b56ba36e05f973d450582fb015594aaa78834fefe8dfb8fcd79b93e64ba4c6"}, + {file = "pillow-10.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:d8e6aeb9201e655354b3ad049cb77d19813ad4ece0df1249d3c793de3774f8c7"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:2247178effb34a77c11c0e8ac355c7a741ceca0a732b27bf11e747bbc950722f"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15587643b9e5eb26c48e49a7b33659790d28f190fc514a322d55da2fb5c2950e"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753cd8f2086b2b80180d9b3010dd4ed147efc167c90d3bf593fe2af21265e5a5"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:7c8f97e8e7a9009bcacbe3766a36175056c12f9a44e6e6f2d5caad06dcfbf03b"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:d1b35bcd6c5543b9cb547dee3150c93008f8dd0f1fef78fc0cd2b141c5baf58a"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fe4c15f6c9285dc54ce6553a3ce908ed37c8f3825b5a51a15c91442bb955b868"}, + {file = "pillow-10.2.0.tar.gz", hash = "sha256:e87f0b2c78157e12d7686b27d63c070fd65d994e8ddae6f328e0dcf4a0cd007e"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "sphinxext-opengraph"] +fpx = ["olefile"] +mic = ["olefile"] +tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] +typing = ["typing-extensions"] +xmp = ["defusedxml"] + +[[package]] +name = "platformdirs" +version = "4.2.0" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +optional = false +python-versions = ">=3.8" +files = [ + {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"}, + {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"}, +] + +[package.extras] +docs = ["furo (>=2023.9.10)", "proselint (>=0.13)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)"] + +[[package]] +name = "pluggy" +version = "1.4.0" +description = "plugin and hook calling mechanisms for python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pluggy-1.4.0-py3-none-any.whl", hash = "sha256:7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"}, + {file = "pluggy-1.4.0.tar.gz", hash = "sha256:8c85c2876142a764e5b7548e7d9a0e0ddb46f5185161049a79b7e974454223be"}, +] + +[package.extras] +dev = ["pre-commit", "tox"] +testing = ["pytest", "pytest-benchmark"] + +[[package]] +name = "pre-commit" +version = "3.2.0" +description = "A framework for managing and maintaining multi-language pre-commit hooks." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pre_commit-3.2.0-py2.py3-none-any.whl", hash = "sha256:f712d3688102e13c8e66b7d7dbd8934a6dda157e58635d89f7d6fecdca39ce8a"}, + {file = "pre_commit-3.2.0.tar.gz", hash = "sha256:818f0d998059934d0f81bb3667e3ccdc32da6ed7ccaac33e43dc231561ddaaa9"}, +] + +[package.dependencies] +cfgv = ">=2.0.0" +identify = ">=1.0.0" +nodeenv = ">=0.11.1" +pyyaml = ">=5.1" +virtualenv = ">=20.10.0" + +[[package]] +name = "prometheus-client" +version = "0.20.0" +description = "Python client for the Prometheus monitoring system." +optional = false +python-versions = ">=3.8" +files = [ + {file = "prometheus_client-0.20.0-py3-none-any.whl", hash = "sha256:cde524a85bce83ca359cc837f28b8c0db5cac7aa653a588fd7e84ba061c329e7"}, + {file = "prometheus_client-0.20.0.tar.gz", hash = "sha256:287629d00b147a32dcb2be0b9df905da599b2d82f80377083ec8463309a4bb89"}, +] + +[package.extras] +twisted = ["twisted"] + +[[package]] +name = "prompt-toolkit" +version = "3.0.43" +description = "Library for building powerful interactive command lines in Python" +optional = false +python-versions = ">=3.7.0" +files = [ + {file = "prompt_toolkit-3.0.43-py3-none-any.whl", hash = "sha256:a11a29cb3bf0a28a387fe5122cdb649816a957cd9261dcedf8c9f1fef33eacf6"}, + {file = "prompt_toolkit-3.0.43.tar.gz", hash = "sha256:3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d"}, +] + +[package.dependencies] +wcwidth = "*" + +[[package]] +name = "psutil" +version = "5.9.8" +description = "Cross-platform lib for process and system monitoring in Python." +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +files = [ + {file = "psutil-5.9.8-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:26bd09967ae00920df88e0352a91cff1a78f8d69b3ecabbfe733610c0af486c8"}, + {file = "psutil-5.9.8-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:05806de88103b25903dff19bb6692bd2e714ccf9e668d050d144012055cbca73"}, + {file = "psutil-5.9.8-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:611052c4bc70432ec770d5d54f64206aa7203a101ec273a0cd82418c86503bb7"}, + {file = "psutil-5.9.8-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:50187900d73c1381ba1454cf40308c2bf6f34268518b3f36a9b663ca87e65e36"}, + {file = "psutil-5.9.8-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:02615ed8c5ea222323408ceba16c60e99c3f91639b07da6373fb7e6539abc56d"}, + {file = "psutil-5.9.8-cp27-none-win32.whl", hash = "sha256:36f435891adb138ed3c9e58c6af3e2e6ca9ac2f365efe1f9cfef2794e6c93b4e"}, + {file = "psutil-5.9.8-cp27-none-win_amd64.whl", hash = "sha256:bd1184ceb3f87651a67b2708d4c3338e9b10c5df903f2e3776b62303b26cb631"}, + {file = "psutil-5.9.8-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:aee678c8720623dc456fa20659af736241f575d79429a0e5e9cf88ae0605cc81"}, + {file = "psutil-5.9.8-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8cb6403ce6d8e047495a701dc7c5bd788add903f8986d523e3e20b98b733e421"}, + {file = "psutil-5.9.8-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d06016f7f8625a1825ba3732081d77c94589dca78b7a3fc072194851e88461a4"}, + {file = "psutil-5.9.8-cp36-cp36m-win32.whl", hash = "sha256:7d79560ad97af658a0f6adfef8b834b53f64746d45b403f225b85c5c2c140eee"}, + {file = "psutil-5.9.8-cp36-cp36m-win_amd64.whl", hash = "sha256:27cc40c3493bb10de1be4b3f07cae4c010ce715290a5be22b98493509c6299e2"}, + {file = "psutil-5.9.8-cp37-abi3-win32.whl", hash = "sha256:bc56c2a1b0d15aa3eaa5a60c9f3f8e3e565303b465dbf57a1b730e7a2b9844e0"}, + {file = "psutil-5.9.8-cp37-abi3-win_amd64.whl", hash = "sha256:8db4c1b57507eef143a15a6884ca10f7c73876cdf5d51e713151c1236a0e68cf"}, + {file = "psutil-5.9.8-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:d16bbddf0693323b8c6123dd804100241da461e41d6e332fb0ba6058f630f8c8"}, + {file = "psutil-5.9.8.tar.gz", hash = "sha256:6be126e3225486dff286a8fb9a06246a5253f4c7c53b475ea5f5ac934e64194c"}, +] + +[package.extras] +test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +description = "Run a subprocess in a pseudo terminal" +optional = false +python-versions = "*" +files = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] + +[[package]] +name = "pure-eval" +version = "0.2.2" +description = "Safely evaluate AST nodes without side effects" +optional = false +python-versions = "*" +files = [ + {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, + {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, +] + +[package.extras] +tests = ["pytest"] + +[[package]] +name = "pycparser" +version = "2.21" +description = "C parser in Python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +files = [ + {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, + {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, +] + +[[package]] +name = "pydantic" +version = "2.6.2" +description = "Data validation using Python type hints" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pydantic-2.6.2-py3-none-any.whl", hash = "sha256:37a5432e54b12fecaa1049c5195f3d860a10e01bdfd24f1840ef14bd0d3aeab3"}, + {file = "pydantic-2.6.2.tar.gz", hash = "sha256:a09be1c3d28f3abe37f8a78af58284b236a92ce520105ddc91a6d29ea1176ba7"}, +] + +[package.dependencies] +annotated-types = ">=0.4.0" +pydantic-core = "2.16.3" +typing-extensions = ">=4.6.1" + +[package.extras] +email = ["email-validator (>=2.0.0)"] + +[[package]] +name = "pydantic-core" +version = "2.16.3" +description = "" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pydantic_core-2.16.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:75b81e678d1c1ede0785c7f46690621e4c6e63ccd9192af1f0bd9d504bbb6bf4"}, + {file = "pydantic_core-2.16.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9c865a7ee6f93783bd5d781af5a4c43dadc37053a5b42f7d18dc019f8c9d2bd1"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:162e498303d2b1c036b957a1278fa0899d02b2842f1ff901b6395104c5554a45"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2f583bd01bbfbff4eaee0868e6fc607efdfcc2b03c1c766b06a707abbc856187"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b926dd38db1519ed3043a4de50214e0d600d404099c3392f098a7f9d75029ff8"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:716b542728d4c742353448765aa7cdaa519a7b82f9564130e2b3f6766018c9ec"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc4ad7f7ee1a13d9cb49d8198cd7d7e3aa93e425f371a68235f784e99741561f"}, + {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bd87f48924f360e5d1c5f770d6155ce0e7d83f7b4e10c2f9ec001c73cf475c99"}, + {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0df446663464884297c793874573549229f9eca73b59360878f382a0fc085979"}, + {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4df8a199d9f6afc5ae9a65f8f95ee52cae389a8c6b20163762bde0426275b7db"}, + {file = "pydantic_core-2.16.3-cp310-none-win32.whl", hash = "sha256:456855f57b413f077dff513a5a28ed838dbbb15082ba00f80750377eed23d132"}, + {file = "pydantic_core-2.16.3-cp310-none-win_amd64.whl", hash = "sha256:732da3243e1b8d3eab8c6ae23ae6a58548849d2e4a4e03a1924c8ddf71a387cb"}, + {file = "pydantic_core-2.16.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:519ae0312616026bf4cedc0fe459e982734f3ca82ee8c7246c19b650b60a5ee4"}, + {file = "pydantic_core-2.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b3992a322a5617ded0a9f23fd06dbc1e4bd7cf39bc4ccf344b10f80af58beacd"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d62da299c6ecb04df729e4b5c52dc0d53f4f8430b4492b93aa8de1f541c4aac"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2acca2be4bb2f2147ada8cac612f8a98fc09f41c89f87add7256ad27332c2fda"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1b662180108c55dfbf1280d865b2d116633d436cfc0bba82323554873967b340"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e7c6ed0dc9d8e65f24f5824291550139fe6f37fac03788d4580da0d33bc00c97"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1bb0827f56654b4437955555dc3aeeebeddc47c2d7ed575477f082622c49e"}, + {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e56f8186d6210ac7ece503193ec84104da7ceb98f68ce18c07282fcc2452e76f"}, + {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:936e5db01dd49476fa8f4383c259b8b1303d5dd5fb34c97de194560698cc2c5e"}, + {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:33809aebac276089b78db106ee692bdc9044710e26f24a9a2eaa35a0f9fa70ba"}, + {file = "pydantic_core-2.16.3-cp311-none-win32.whl", hash = "sha256:ded1c35f15c9dea16ead9bffcde9bb5c7c031bff076355dc58dcb1cb436c4721"}, + {file = "pydantic_core-2.16.3-cp311-none-win_amd64.whl", hash = "sha256:d89ca19cdd0dd5f31606a9329e309d4fcbb3df860960acec32630297d61820df"}, + {file = "pydantic_core-2.16.3-cp311-none-win_arm64.whl", hash = "sha256:6162f8d2dc27ba21027f261e4fa26f8bcb3cf9784b7f9499466a311ac284b5b9"}, + {file = "pydantic_core-2.16.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0f56ae86b60ea987ae8bcd6654a887238fd53d1384f9b222ac457070b7ac4cff"}, + {file = "pydantic_core-2.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9bd22a2a639e26171068f8ebb5400ce2c1bc7d17959f60a3b753ae13c632975"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4204e773b4b408062960e65468d5346bdfe139247ee5f1ca2a378983e11388a2"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f651dd19363c632f4abe3480a7c87a9773be27cfe1341aef06e8759599454120"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aaf09e615a0bf98d406657e0008e4a8701b11481840be7d31755dc9f97c44053"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8e47755d8152c1ab5b55928ab422a76e2e7b22b5ed8e90a7d584268dd49e9c6b"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:500960cb3a0543a724a81ba859da816e8cf01b0e6aaeedf2c3775d12ee49cade"}, + {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cf6204fe865da605285c34cf1172879d0314ff267b1c35ff59de7154f35fdc2e"}, + {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d33dd21f572545649f90c38c227cc8631268ba25c460b5569abebdd0ec5974ca"}, + {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:49d5d58abd4b83fb8ce763be7794d09b2f50f10aa65c0f0c1696c677edeb7cbf"}, + {file = "pydantic_core-2.16.3-cp312-none-win32.whl", hash = "sha256:f53aace168a2a10582e570b7736cc5bef12cae9cf21775e3eafac597e8551fbe"}, + {file = "pydantic_core-2.16.3-cp312-none-win_amd64.whl", hash = "sha256:0d32576b1de5a30d9a97f300cc6a3f4694c428d956adbc7e6e2f9cad279e45ed"}, + {file = "pydantic_core-2.16.3-cp312-none-win_arm64.whl", hash = "sha256:ec08be75bb268473677edb83ba71e7e74b43c008e4a7b1907c6d57e940bf34b6"}, + {file = "pydantic_core-2.16.3-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:b1f6f5938d63c6139860f044e2538baeee6f0b251a1816e7adb6cbce106a1f01"}, + {file = "pydantic_core-2.16.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2a1ef6a36fdbf71538142ed604ad19b82f67b05749512e47f247a6ddd06afdc7"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:704d35ecc7e9c31d48926150afada60401c55efa3b46cd1ded5a01bdffaf1d48"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d937653a696465677ed583124b94a4b2d79f5e30b2c46115a68e482c6a591c8a"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9803edf8e29bd825f43481f19c37f50d2b01899448273b3a7758441b512acf8"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:72282ad4892a9fb2da25defeac8c2e84352c108705c972db82ab121d15f14e6d"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f752826b5b8361193df55afcdf8ca6a57d0232653494ba473630a83ba50d8c9"}, + {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4384a8f68ddb31a0b0c3deae88765f5868a1b9148939c3f4121233314ad5532c"}, + {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4b2bf78342c40b3dc830880106f54328928ff03e357935ad26c7128bbd66ce8"}, + {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:13dcc4802961b5f843a9385fc821a0b0135e8c07fc3d9949fd49627c1a5e6ae5"}, + {file = "pydantic_core-2.16.3-cp38-none-win32.whl", hash = "sha256:e3e70c94a0c3841e6aa831edab1619ad5c511199be94d0c11ba75fe06efe107a"}, + {file = "pydantic_core-2.16.3-cp38-none-win_amd64.whl", hash = "sha256:ecdf6bf5f578615f2e985a5e1f6572e23aa632c4bd1dc67f8f406d445ac115ed"}, + {file = "pydantic_core-2.16.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:bda1ee3e08252b8d41fa5537413ffdddd58fa73107171a126d3b9ff001b9b820"}, + {file = "pydantic_core-2.16.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:21b888c973e4f26b7a96491c0965a8a312e13be108022ee510248fe379a5fa23"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be0ec334369316fa73448cc8c982c01e5d2a81c95969d58b8f6e272884df0074"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b5b6079cc452a7c53dd378c6f881ac528246b3ac9aae0f8eef98498a75657805"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ee8d5f878dccb6d499ba4d30d757111847b6849ae07acdd1205fffa1fc1253c"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7233d65d9d651242a68801159763d09e9ec96e8a158dbf118dc090cd77a104c9"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6119dc90483a5cb50a1306adb8d52c66e447da88ea44f323e0ae1a5fcb14256"}, + {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:578114bc803a4c1ff9946d977c221e4376620a46cf78da267d946397dc9514a8"}, + {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d8f99b147ff3fcf6b3cc60cb0c39ea443884d5559a30b1481e92495f2310ff2b"}, + {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4ac6b4ce1e7283d715c4b729d8f9dab9627586dafce81d9eaa009dd7f25dd972"}, + {file = "pydantic_core-2.16.3-cp39-none-win32.whl", hash = "sha256:e7774b570e61cb998490c5235740d475413a1f6de823169b4cf94e2fe9e9f6b2"}, + {file = "pydantic_core-2.16.3-cp39-none-win_amd64.whl", hash = "sha256:9091632a25b8b87b9a605ec0e61f241c456e9248bfdcf7abdf344fdb169c81cf"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:36fa178aacbc277bc6b62a2c3da95226520da4f4e9e206fdf076484363895d2c"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:dcca5d2bf65c6fb591fff92da03f94cd4f315972f97c21975398bd4bd046854a"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a72fb9963cba4cd5793854fd12f4cfee731e86df140f59ff52a49b3552db241"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b60cc1a081f80a2105a59385b92d82278b15d80ebb3adb200542ae165cd7d183"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cbcc558401de90a746d02ef330c528f2e668c83350f045833543cd57ecead1ad"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:fee427241c2d9fb7192b658190f9f5fd6dfe41e02f3c1489d2ec1e6a5ab1e04a"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f4cb85f693044e0f71f394ff76c98ddc1bc0953e48c061725e540396d5c8a2e1"}, + {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b29eeb887aa931c2fcef5aa515d9d176d25006794610c264ddc114c053bf96fe"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a425479ee40ff021f8216c9d07a6a3b54b31c8267c6e17aa88b70d7ebd0e5e5b"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5c5cbc703168d1b7a838668998308018a2718c2130595e8e190220238addc96f"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99b6add4c0b39a513d323d3b93bc173dac663c27b99860dd5bf491b240d26137"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75f76ee558751746d6a38f89d60b6228fa174e5172d143886af0f85aa306fd89"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:00ee1c97b5364b84cb0bd82e9bbf645d5e2871fb8c58059d158412fee2d33d8a"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:287073c66748f624be4cef893ef9174e3eb88fe0b8a78dc22e88eca4bc357ca6"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ed25e1835c00a332cb10c683cd39da96a719ab1dfc08427d476bce41b92531fc"}, + {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:86b3d0033580bd6bbe07590152007275bd7af95f98eaa5bd36f3da219dcd93da"}, + {file = "pydantic_core-2.16.3.tar.gz", hash = "sha256:1cac689f80a3abab2d3c0048b29eea5751114054f032a941a32de4c852c59cad"}, +] + +[package.dependencies] +typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" + +[[package]] +name = "pygments" +version = "2.17.2" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.7" +files = [ + {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, + {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, +] + +[package.extras] +plugins = ["importlib-metadata"] +windows-terminal = ["colorama (>=0.4.6)"] + +[[package]] +name = "pylint" +version = "2.15.10" +description = "python code static checker" +optional = false +python-versions = ">=3.7.2" +files = [ + {file = "pylint-2.15.10-py3-none-any.whl", hash = "sha256:9df0d07e8948a1c3ffa3b6e2d7e6e63d9fb457c5da5b961ed63106594780cc7e"}, + {file = "pylint-2.15.10.tar.gz", hash = "sha256:b3dc5ef7d33858f297ac0d06cc73862f01e4f2e74025ec3eff347ce0bc60baf5"}, +] + +[package.dependencies] +astroid = ">=2.12.13,<=2.14.0-dev0" +colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} +dill = [ + {version = ">=0.2", markers = "python_version < \"3.11\""}, + {version = ">=0.3.6", markers = "python_version >= \"3.11\""}, +] +isort = ">=4.2.5,<6" +mccabe = ">=0.6,<0.8" +platformdirs = ">=2.2.0" +tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +tomlkit = ">=0.10.1" +typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} + +[package.extras] +spelling = ["pyenchant (>=3.2,<4.0)"] +testutils = ["gitpython (>3)"] + +[[package]] +name = "pynndescent" +version = "0.5.11" +description = "Nearest Neighbor Descent" +optional = false +python-versions = "*" +files = [ + {file = "pynndescent-0.5.11-py3-none-any.whl", hash = "sha256:a628f4fc8a67757c8fa15613449ac513fd056258a55b4084e47c06640ec90a8d"}, + {file = "pynndescent-0.5.11.tar.gz", hash = "sha256:6f44ced9d5a9da2c87d9b2fff30bb5308540c0657605e4d5cde7ed3275bbad50"}, +] + +[package.dependencies] +joblib = ">=0.11" +llvmlite = ">=0.30" +numba = ">=0.51.2" +scikit-learn = ">=0.18" +scipy = ">=1.0" + +[[package]] +name = "pytest" +version = "7.2.1" +description = "pytest: simple powerful testing with Python" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-7.2.1-py3-none-any.whl", hash = "sha256:c7c6ca206e93355074ae32f7403e8ea12163b1163c976fee7d4d84027c162be5"}, + {file = "pytest-7.2.1.tar.gz", hash = "sha256:d45e0952f3727241918b8fd0f376f5ff6b301cc0777c6f9a556935c92d8a7d42"}, +] + +[package.dependencies] +attrs = ">=19.2.0" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} +iniconfig = "*" +packaging = "*" +pluggy = ">=0.12,<2.0" +tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} + +[package.extras] +testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] + +[[package]] +name = "pytest-mock" +version = "3.11.1" +description = "Thin-wrapper around the mock package for easier use with pytest" +optional = false +python-versions = ">=3.7" +files = [ + {file = "pytest-mock-3.11.1.tar.gz", hash = "sha256:7f6b125602ac6d743e523ae0bfa71e1a697a2f5534064528c6ff84c2f7c2fc7f"}, + {file = "pytest_mock-3.11.1-py3-none-any.whl", hash = "sha256:21c279fff83d70763b05f8874cc9cfb3fcacd6d354247a976f9529d19f9acf39"}, +] + +[package.dependencies] +pytest = ">=5.0" + +[package.extras] +dev = ["pre-commit", "pytest-asyncio", "tox"] + +[[package]] +name = "python-dateutil" +version = "2.8.2" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +files = [ + {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, + {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, +] + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "python-json-logger" +version = "2.0.7" +description = "A python library adding a json log formatter" +optional = false +python-versions = ">=3.6" +files = [ + {file = "python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c"}, + {file = "python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd"}, +] + +[[package]] +name = "pytz" +version = "2024.1" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +files = [ + {file = "pytz-2024.1-py2.py3-none-any.whl", hash = "sha256:328171f4e3623139da4983451950b28e95ac706e13f3f2630a879749e7a8b319"}, + {file = "pytz-2024.1.tar.gz", hash = "sha256:2a29735ea9c18baf14b448846bde5a48030ed267578472d8955cd0e7443a9812"}, +] + +[[package]] +name = "pywin32" +version = "306" +description = "Python for Window Extensions" +optional = false +python-versions = "*" +files = [ + {file = "pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d"}, + {file = "pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8"}, + {file = "pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407"}, + {file = "pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e"}, + {file = "pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a"}, + {file = "pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b"}, + {file = "pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e"}, + {file = "pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040"}, + {file = "pywin32-306-cp37-cp37m-win32.whl", hash = "sha256:1c73ea9a0d2283d889001998059f5eaaba3b6238f767c9cf2833b13e6a685f65"}, + {file = "pywin32-306-cp37-cp37m-win_amd64.whl", hash = "sha256:72c5f621542d7bdd4fdb716227be0dd3f8565c11b280be6315b06ace35487d36"}, + {file = "pywin32-306-cp38-cp38-win32.whl", hash = "sha256:e4c092e2589b5cf0d365849e73e02c391c1349958c5ac3e9d5ccb9a28e017b3a"}, + {file = "pywin32-306-cp38-cp38-win_amd64.whl", hash = "sha256:e8ac1ae3601bee6ca9f7cb4b5363bf1c0badb935ef243c4733ff9a393b1690c0"}, + {file = "pywin32-306-cp39-cp39-win32.whl", hash = "sha256:e25fd5b485b55ac9c057f67d94bc203f3f6595078d1fb3b458c9c28b7153a802"}, + {file = "pywin32-306-cp39-cp39-win_amd64.whl", hash = "sha256:39b61c15272833b5c329a2989999dcae836b1eed650252ab1b7bfbe1d59f30f4"}, +] + +[[package]] +name = "pywinpty" +version = "2.0.13" +description = "Pseudo terminal support for Windows from Python." +optional = false +python-versions = ">=3.8" +files = [ + {file = "pywinpty-2.0.13-cp310-none-win_amd64.whl", hash = "sha256:697bff211fb5a6508fee2dc6ff174ce03f34a9a233df9d8b5fe9c8ce4d5eaf56"}, + {file = "pywinpty-2.0.13-cp311-none-win_amd64.whl", hash = "sha256:b96fb14698db1284db84ca38c79f15b4cfdc3172065b5137383910567591fa99"}, + {file = "pywinpty-2.0.13-cp312-none-win_amd64.whl", hash = "sha256:2fd876b82ca750bb1333236ce98488c1be96b08f4f7647cfdf4129dfad83c2d4"}, + {file = "pywinpty-2.0.13-cp38-none-win_amd64.whl", hash = "sha256:61d420c2116c0212808d31625611b51caf621fe67f8a6377e2e8b617ea1c1f7d"}, + {file = "pywinpty-2.0.13-cp39-none-win_amd64.whl", hash = "sha256:71cb613a9ee24174730ac7ae439fd179ca34ccb8c5349e8d7b72ab5dea2c6f4b"}, + {file = "pywinpty-2.0.13.tar.gz", hash = "sha256:c34e32351a3313ddd0d7da23d27f835c860d32fe4ac814d372a3ea9594f41dde"}, +] + +[[package]] +name = "pyyaml" +version = "6.0.1" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.6" +files = [ + {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, + {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, + {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, + {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, + {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, + {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, + {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, + {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, + {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, + {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, + {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, + {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, + {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, + {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, + {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, + {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, + {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, + {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, + {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, + {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, + {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, + {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, + {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, + {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, +] + +[[package]] +name = "pyzmq" +version = "25.1.2" +description = "Python bindings for 0MQ" +optional = false +python-versions = ">=3.6" +files = [ + {file = "pyzmq-25.1.2-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:e624c789359f1a16f83f35e2c705d07663ff2b4d4479bad35621178d8f0f6ea4"}, + {file = "pyzmq-25.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:49151b0efece79f6a79d41a461d78535356136ee70084a1c22532fc6383f4ad0"}, + {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9a5f194cf730f2b24d6af1f833c14c10f41023da46a7f736f48b6d35061e76e"}, + {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:faf79a302f834d9e8304fafdc11d0d042266667ac45209afa57e5efc998e3872"}, + {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f51a7b4ead28d3fca8dda53216314a553b0f7a91ee8fc46a72b402a78c3e43d"}, + {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:0ddd6d71d4ef17ba5a87becf7ddf01b371eaba553c603477679ae817a8d84d75"}, + {file = "pyzmq-25.1.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:246747b88917e4867e2367b005fc8eefbb4a54b7db363d6c92f89d69abfff4b6"}, + {file = "pyzmq-25.1.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:00c48ae2fd81e2a50c3485de1b9d5c7c57cd85dc8ec55683eac16846e57ac979"}, + {file = "pyzmq-25.1.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5a68d491fc20762b630e5db2191dd07ff89834086740f70e978bb2ef2668be08"}, + {file = "pyzmq-25.1.2-cp310-cp310-win32.whl", hash = "sha256:09dfe949e83087da88c4a76767df04b22304a682d6154de2c572625c62ad6886"}, + {file = "pyzmq-25.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:fa99973d2ed20417744fca0073390ad65ce225b546febb0580358e36aa90dba6"}, + {file = "pyzmq-25.1.2-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:82544e0e2d0c1811482d37eef297020a040c32e0687c1f6fc23a75b75db8062c"}, + {file = "pyzmq-25.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:01171fc48542348cd1a360a4b6c3e7d8f46cdcf53a8d40f84db6707a6768acc1"}, + {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc69c96735ab501419c432110016329bf0dea8898ce16fab97c6d9106dc0b348"}, + {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3e124e6b1dd3dfbeb695435dff0e383256655bb18082e094a8dd1f6293114642"}, + {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7598d2ba821caa37a0f9d54c25164a4fa351ce019d64d0b44b45540950458840"}, + {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d1299d7e964c13607efd148ca1f07dcbf27c3ab9e125d1d0ae1d580a1682399d"}, + {file = "pyzmq-25.1.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4e6f689880d5ad87918430957297c975203a082d9a036cc426648fcbedae769b"}, + {file = "pyzmq-25.1.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:cc69949484171cc961e6ecd4a8911b9ce7a0d1f738fcae717177c231bf77437b"}, + {file = "pyzmq-25.1.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9880078f683466b7f567b8624bfc16cad65077be046b6e8abb53bed4eeb82dd3"}, + {file = "pyzmq-25.1.2-cp311-cp311-win32.whl", hash = "sha256:4e5837af3e5aaa99a091302df5ee001149baff06ad22b722d34e30df5f0d9097"}, + {file = "pyzmq-25.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:25c2dbb97d38b5ac9fd15586e048ec5eb1e38f3d47fe7d92167b0c77bb3584e9"}, + {file = "pyzmq-25.1.2-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:11e70516688190e9c2db14fcf93c04192b02d457b582a1f6190b154691b4c93a"}, + {file = "pyzmq-25.1.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:313c3794d650d1fccaaab2df942af9f2c01d6217c846177cfcbc693c7410839e"}, + {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b3cbba2f47062b85fe0ef9de5b987612140a9ba3a9c6d2543c6dec9f7c2ab27"}, + {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fc31baa0c32a2ca660784d5af3b9487e13b61b3032cb01a115fce6588e1bed30"}, + {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02c9087b109070c5ab0b383079fa1b5f797f8d43e9a66c07a4b8b8bdecfd88ee"}, + {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:f8429b17cbb746c3e043cb986328da023657e79d5ed258b711c06a70c2ea7537"}, + {file = "pyzmq-25.1.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:5074adeacede5f810b7ef39607ee59d94e948b4fd954495bdb072f8c54558181"}, + {file = "pyzmq-25.1.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7ae8f354b895cbd85212da245f1a5ad8159e7840e37d78b476bb4f4c3f32a9fe"}, + {file = "pyzmq-25.1.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b264bf2cc96b5bc43ce0e852be995e400376bd87ceb363822e2cb1964fcdc737"}, + {file = "pyzmq-25.1.2-cp312-cp312-win32.whl", hash = "sha256:02bbc1a87b76e04fd780b45e7f695471ae6de747769e540da909173d50ff8e2d"}, + {file = "pyzmq-25.1.2-cp312-cp312-win_amd64.whl", hash = "sha256:ced111c2e81506abd1dc142e6cd7b68dd53747b3b7ae5edbea4578c5eeff96b7"}, + {file = "pyzmq-25.1.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:7b6d09a8962a91151f0976008eb7b29b433a560fde056ec7a3db9ec8f1075438"}, + {file = "pyzmq-25.1.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:967668420f36878a3c9ecb5ab33c9d0ff8d054f9c0233d995a6d25b0e95e1b6b"}, + {file = "pyzmq-25.1.2-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5edac3f57c7ddaacdb4d40f6ef2f9e299471fc38d112f4bc6d60ab9365445fb0"}, + {file = "pyzmq-25.1.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:0dabfb10ef897f3b7e101cacba1437bd3a5032ee667b7ead32bbcdd1a8422fe7"}, + {file = "pyzmq-25.1.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:2c6441e0398c2baacfe5ba30c937d274cfc2dc5b55e82e3749e333aabffde561"}, + {file = "pyzmq-25.1.2-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:16b726c1f6c2e7625706549f9dbe9b06004dfbec30dbed4bf50cbdfc73e5b32a"}, + {file = "pyzmq-25.1.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:a86c2dd76ef71a773e70551a07318b8e52379f58dafa7ae1e0a4be78efd1ff16"}, + {file = "pyzmq-25.1.2-cp36-cp36m-win32.whl", hash = "sha256:359f7f74b5d3c65dae137f33eb2bcfa7ad9ebefd1cab85c935f063f1dbb245cc"}, + {file = "pyzmq-25.1.2-cp36-cp36m-win_amd64.whl", hash = "sha256:55875492f820d0eb3417b51d96fea549cde77893ae3790fd25491c5754ea2f68"}, + {file = "pyzmq-25.1.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b8c8a419dfb02e91b453615c69568442e897aaf77561ee0064d789705ff37a92"}, + {file = "pyzmq-25.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8807c87fa893527ae8a524c15fc505d9950d5e856f03dae5921b5e9aa3b8783b"}, + {file = "pyzmq-25.1.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5e319ed7d6b8f5fad9b76daa0a68497bc6f129858ad956331a5835785761e003"}, + {file = "pyzmq-25.1.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:3c53687dde4d9d473c587ae80cc328e5b102b517447456184b485587ebd18b62"}, + {file = "pyzmq-25.1.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:9add2e5b33d2cd765ad96d5eb734a5e795a0755f7fc49aa04f76d7ddda73fd70"}, + {file = "pyzmq-25.1.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e690145a8c0c273c28d3b89d6fb32c45e0d9605b2293c10e650265bf5c11cfec"}, + {file = "pyzmq-25.1.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:00a06faa7165634f0cac1abb27e54d7a0b3b44eb9994530b8ec73cf52e15353b"}, + {file = "pyzmq-25.1.2-cp37-cp37m-win32.whl", hash = "sha256:0f97bc2f1f13cb16905a5f3e1fbdf100e712d841482b2237484360f8bc4cb3d7"}, + {file = "pyzmq-25.1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6cc0020b74b2e410287e5942e1e10886ff81ac77789eb20bec13f7ae681f0fdd"}, + {file = "pyzmq-25.1.2-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:bef02cfcbded83473bdd86dd8d3729cd82b2e569b75844fb4ea08fee3c26ae41"}, + {file = "pyzmq-25.1.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e10a4b5a4b1192d74853cc71a5e9fd022594573926c2a3a4802020360aa719d8"}, + {file = "pyzmq-25.1.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8c5f80e578427d4695adac6fdf4370c14a2feafdc8cb35549c219b90652536ae"}, + {file = "pyzmq-25.1.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5dde6751e857910c1339890f3524de74007958557593b9e7e8c5f01cd919f8a7"}, + {file = "pyzmq-25.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea1608dd169da230a0ad602d5b1ebd39807ac96cae1845c3ceed39af08a5c6df"}, + {file = "pyzmq-25.1.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0f513130c4c361201da9bc69df25a086487250e16b5571ead521b31ff6b02220"}, + {file = "pyzmq-25.1.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:019744b99da30330798bb37df33549d59d380c78e516e3bab9c9b84f87a9592f"}, + {file = "pyzmq-25.1.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2e2713ef44be5d52dd8b8e2023d706bf66cb22072e97fc71b168e01d25192755"}, + {file = "pyzmq-25.1.2-cp38-cp38-win32.whl", hash = "sha256:07cd61a20a535524906595e09344505a9bd46f1da7a07e504b315d41cd42eb07"}, + {file = "pyzmq-25.1.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb7e49a17fb8c77d3119d41a4523e432eb0c6932187c37deb6fbb00cc3028088"}, + {file = "pyzmq-25.1.2-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:94504ff66f278ab4b7e03e4cba7e7e400cb73bfa9d3d71f58d8972a8dc67e7a6"}, + {file = "pyzmq-25.1.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6dd0d50bbf9dca1d0bdea219ae6b40f713a3fb477c06ca3714f208fd69e16fd8"}, + {file = "pyzmq-25.1.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:004ff469d21e86f0ef0369717351073e0e577428e514c47c8480770d5e24a565"}, + {file = "pyzmq-25.1.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c0b5ca88a8928147b7b1e2dfa09f3b6c256bc1135a1338536cbc9ea13d3b7add"}, + {file = "pyzmq-25.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c9a79f1d2495b167119d02be7448bfba57fad2a4207c4f68abc0bab4b92925b"}, + {file = "pyzmq-25.1.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:518efd91c3d8ac9f9b4f7dd0e2b7b8bf1a4fe82a308009016b07eaa48681af82"}, + {file = "pyzmq-25.1.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:1ec23bd7b3a893ae676d0e54ad47d18064e6c5ae1fadc2f195143fb27373f7f6"}, + {file = "pyzmq-25.1.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:db36c27baed588a5a8346b971477b718fdc66cf5b80cbfbd914b4d6d355e44e2"}, + {file = "pyzmq-25.1.2-cp39-cp39-win32.whl", hash = "sha256:39b1067f13aba39d794a24761e385e2eddc26295826530a8c7b6c6c341584289"}, + {file = "pyzmq-25.1.2-cp39-cp39-win_amd64.whl", hash = "sha256:8e9f3fabc445d0ce320ea2c59a75fe3ea591fdbdeebec5db6de530dd4b09412e"}, + {file = "pyzmq-25.1.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a8c1d566344aee826b74e472e16edae0a02e2a044f14f7c24e123002dcff1c05"}, + {file = "pyzmq-25.1.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:759cfd391a0996345ba94b6a5110fca9c557ad4166d86a6e81ea526c376a01e8"}, + {file = "pyzmq-25.1.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7c61e346ac34b74028ede1c6b4bcecf649d69b707b3ff9dc0fab453821b04d1e"}, + {file = "pyzmq-25.1.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4cb8fc1f8d69b411b8ec0b5f1ffbcaf14c1db95b6bccea21d83610987435f1a4"}, + {file = "pyzmq-25.1.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:3c00c9b7d1ca8165c610437ca0c92e7b5607b2f9076f4eb4b095c85d6e680a1d"}, + {file = "pyzmq-25.1.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:df0c7a16ebb94452d2909b9a7b3337940e9a87a824c4fc1c7c36bb4404cb0cde"}, + {file = "pyzmq-25.1.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:45999e7f7ed5c390f2e87ece7f6c56bf979fb213550229e711e45ecc7d42ccb8"}, + {file = "pyzmq-25.1.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ac170e9e048b40c605358667aca3d94e98f604a18c44bdb4c102e67070f3ac9b"}, + {file = "pyzmq-25.1.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1b604734bec94f05f81b360a272fc824334267426ae9905ff32dc2be433ab96"}, + {file = "pyzmq-25.1.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:a793ac733e3d895d96f865f1806f160696422554e46d30105807fdc9841b9f7d"}, + {file = "pyzmq-25.1.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0806175f2ae5ad4b835ecd87f5f85583316b69f17e97786f7443baaf54b9bb98"}, + {file = "pyzmq-25.1.2-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ef12e259e7bc317c7597d4f6ef59b97b913e162d83b421dd0db3d6410f17a244"}, + {file = "pyzmq-25.1.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ea253b368eb41116011add00f8d5726762320b1bda892f744c91997b65754d73"}, + {file = "pyzmq-25.1.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b9b1f2ad6498445a941d9a4fee096d387fee436e45cc660e72e768d3d8ee611"}, + {file = "pyzmq-25.1.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:8b14c75979ce932c53b79976a395cb2a8cd3aaf14aef75e8c2cb55a330b9b49d"}, + {file = "pyzmq-25.1.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:889370d5174a741a62566c003ee8ddba4b04c3f09a97b8000092b7ca83ec9c49"}, + {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9a18fff090441a40ffda8a7f4f18f03dc56ae73f148f1832e109f9bffa85df15"}, + {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:99a6b36f95c98839ad98f8c553d8507644c880cf1e0a57fe5e3a3f3969040882"}, + {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4345c9a27f4310afbb9c01750e9461ff33d6fb74cd2456b107525bbeebcb5be3"}, + {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3516e0b6224cf6e43e341d56da15fd33bdc37fa0c06af4f029f7d7dfceceabbc"}, + {file = "pyzmq-25.1.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:146b9b1f29ead41255387fb07be56dc29639262c0f7344f570eecdcd8d683314"}, + {file = "pyzmq-25.1.2.tar.gz", hash = "sha256:93f1aa311e8bb912e34f004cf186407a4e90eec4f0ecc0efd26056bf7eda0226"}, +] + +[package.dependencies] +cffi = {version = "*", markers = "implementation_name == \"pypy\""} + +[[package]] +name = "qtconsole" +version = "5.5.1" +description = "Jupyter Qt console" +optional = false +python-versions = ">= 3.8" +files = [ + {file = "qtconsole-5.5.1-py3-none-any.whl", hash = "sha256:8c75fa3e9b4ed884880ff7cea90a1b67451219279ec33deaee1d59e3df1a5d2b"}, + {file = "qtconsole-5.5.1.tar.gz", hash = "sha256:a0e806c6951db9490628e4df80caec9669b65149c7ba40f9bf033c025a5b56bc"}, +] + +[package.dependencies] +ipykernel = ">=4.1" +jupyter-client = ">=4.1" +jupyter-core = "*" +packaging = "*" +pygments = "*" +pyzmq = ">=17.1" +qtpy = ">=2.4.0" +traitlets = "<5.2.1 || >5.2.1,<5.2.2 || >5.2.2" + +[package.extras] +doc = ["Sphinx (>=1.3)"] +test = ["flaky", "pytest", "pytest-qt"] + +[[package]] +name = "qtpy" +version = "2.4.1" +description = "Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6)." +optional = false +python-versions = ">=3.7" +files = [ + {file = "QtPy-2.4.1-py3-none-any.whl", hash = "sha256:1c1d8c4fa2c884ae742b069151b0abe15b3f70491f3972698c683b8e38de839b"}, + {file = "QtPy-2.4.1.tar.gz", hash = "sha256:a5a15ffd519550a1361bdc56ffc07fda56a6af7292f17c7b395d4083af632987"}, +] + +[package.dependencies] +packaging = "*" + +[package.extras] +test = ["pytest (>=6,!=7.0.0,!=7.0.1)", "pytest-cov (>=3.0.0)", "pytest-qt"] + +[[package]] +name = "referencing" +version = "0.33.0" +description = "JSON Referencing + Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "referencing-0.33.0-py3-none-any.whl", hash = "sha256:39240f2ecc770258f28b642dd47fd74bc8b02484de54e1882b74b35ebd779bd5"}, + {file = "referencing-0.33.0.tar.gz", hash = "sha256:c775fedf74bc0f9189c2a3be1c12fd03e8c23f4d371dce795df44e06c5b412f7"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +rpds-py = ">=0.7.0" + +[[package]] +name = "regex" +version = "2023.12.25" +description = "Alternative regular expression module, to replace re." +optional = false +python-versions = ">=3.7" +files = [ + {file = "regex-2023.12.25-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0694219a1d54336fd0445ea382d49d36882415c0134ee1e8332afd1529f0baa5"}, + {file = "regex-2023.12.25-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b014333bd0217ad3d54c143de9d4b9a3ca1c5a29a6d0d554952ea071cff0f1f8"}, + {file = "regex-2023.12.25-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d865984b3f71f6d0af64d0d88f5733521698f6c16f445bb09ce746c92c97c586"}, + {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e0eabac536b4cc7f57a5f3d095bfa557860ab912f25965e08fe1545e2ed8b4c"}, + {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c25a8ad70e716f96e13a637802813f65d8a6760ef48672aa3502f4c24ea8b400"}, + {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9b6d73353f777630626f403b0652055ebfe8ff142a44ec2cf18ae470395766e"}, + {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9cc99d6946d750eb75827cb53c4371b8b0fe89c733a94b1573c9dd16ea6c9e4"}, + {file = "regex-2023.12.25-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88d1f7bef20c721359d8675f7d9f8e414ec5003d8f642fdfd8087777ff7f94b5"}, + {file = "regex-2023.12.25-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cb3fe77aec8f1995611f966d0c656fdce398317f850d0e6e7aebdfe61f40e1cd"}, + {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7aa47c2e9ea33a4a2a05f40fcd3ea36d73853a2aae7b4feab6fc85f8bf2c9704"}, + {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:df26481f0c7a3f8739fecb3e81bc9da3fcfae34d6c094563b9d4670b047312e1"}, + {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:c40281f7d70baf6e0db0c2f7472b31609f5bc2748fe7275ea65a0b4601d9b392"}, + {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:d94a1db462d5690ebf6ae86d11c5e420042b9898af5dcf278bd97d6bda065423"}, + {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ba1b30765a55acf15dce3f364e4928b80858fa8f979ad41f862358939bdd1f2f"}, + {file = "regex-2023.12.25-cp310-cp310-win32.whl", hash = "sha256:150c39f5b964e4d7dba46a7962a088fbc91f06e606f023ce57bb347a3b2d4630"}, + {file = "regex-2023.12.25-cp310-cp310-win_amd64.whl", hash = "sha256:09da66917262d9481c719599116c7dc0c321ffcec4b1f510c4f8a066f8768105"}, + {file = "regex-2023.12.25-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:1b9d811f72210fa9306aeb88385b8f8bcef0dfbf3873410413c00aa94c56c2b6"}, + {file = "regex-2023.12.25-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d902a43085a308cef32c0d3aea962524b725403fd9373dea18110904003bac97"}, + {file = "regex-2023.12.25-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d166eafc19f4718df38887b2bbe1467a4f74a9830e8605089ea7a30dd4da8887"}, + {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7ad32824b7f02bb3c9f80306d405a1d9b7bb89362d68b3c5a9be53836caebdb"}, + {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:636ba0a77de609d6510235b7f0e77ec494d2657108f777e8765efc060094c98c"}, + {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fda75704357805eb953a3ee15a2b240694a9a514548cd49b3c5124b4e2ad01b"}, + {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f72cbae7f6b01591f90814250e636065850c5926751af02bb48da94dfced7baa"}, + {file = "regex-2023.12.25-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db2a0b1857f18b11e3b0e54ddfefc96af46b0896fb678c85f63fb8c37518b3e7"}, + {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7502534e55c7c36c0978c91ba6f61703faf7ce733715ca48f499d3dbbd7657e0"}, + {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:e8c7e08bb566de4faaf11984af13f6bcf6a08f327b13631d41d62592681d24fe"}, + {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:283fc8eed679758de38fe493b7d7d84a198b558942b03f017b1f94dda8efae80"}, + {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:f44dd4d68697559d007462b0a3a1d9acd61d97072b71f6d1968daef26bc744bd"}, + {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:67d3ccfc590e5e7197750fcb3a2915b416a53e2de847a728cfa60141054123d4"}, + {file = "regex-2023.12.25-cp311-cp311-win32.whl", hash = "sha256:68191f80a9bad283432385961d9efe09d783bcd36ed35a60fb1ff3f1ec2efe87"}, + {file = "regex-2023.12.25-cp311-cp311-win_amd64.whl", hash = "sha256:7d2af3f6b8419661a0c421584cfe8aaec1c0e435ce7e47ee2a97e344b98f794f"}, + {file = "regex-2023.12.25-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8a0ccf52bb37d1a700375a6b395bff5dd15c50acb745f7db30415bae3c2b0715"}, + {file = "regex-2023.12.25-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c3c4a78615b7762740531c27cf46e2f388d8d727d0c0c739e72048beb26c8a9d"}, + {file = "regex-2023.12.25-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ad83e7545b4ab69216cef4cc47e344d19622e28aabec61574b20257c65466d6a"}, + {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7a635871143661feccce3979e1727c4e094f2bdfd3ec4b90dfd4f16f571a87a"}, + {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d498eea3f581fbe1b34b59c697512a8baef88212f92e4c7830fcc1499f5b45a5"}, + {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:43f7cd5754d02a56ae4ebb91b33461dc67be8e3e0153f593c509e21d219c5060"}, + {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51f4b32f793812714fd5307222a7f77e739b9bc566dc94a18126aba3b92b98a3"}, + {file = "regex-2023.12.25-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ba99d8077424501b9616b43a2d208095746fb1284fc5ba490139651f971d39d9"}, + {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4bfc2b16e3ba8850e0e262467275dd4d62f0d045e0e9eda2bc65078c0110a11f"}, + {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8c2c19dae8a3eb0ea45a8448356ed561be843b13cbc34b840922ddf565498c1c"}, + {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:60080bb3d8617d96f0fb7e19796384cc2467447ef1c491694850ebd3670bc457"}, + {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b77e27b79448e34c2c51c09836033056a0547aa360c45eeeb67803da7b0eedaf"}, + {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:518440c991f514331f4850a63560321f833979d145d7d81186dbe2f19e27ae3d"}, + {file = "regex-2023.12.25-cp312-cp312-win32.whl", hash = "sha256:e2610e9406d3b0073636a3a2e80db05a02f0c3169b5632022b4e81c0364bcda5"}, + {file = "regex-2023.12.25-cp312-cp312-win_amd64.whl", hash = "sha256:cc37b9aeebab425f11f27e5e9e6cf580be7206c6582a64467a14dda211abc232"}, + {file = "regex-2023.12.25-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:da695d75ac97cb1cd725adac136d25ca687da4536154cdc2815f576e4da11c69"}, + {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d126361607b33c4eb7b36debc173bf25d7805847346dd4d99b5499e1fef52bc7"}, + {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4719bb05094d7d8563a450cf8738d2e1061420f79cfcc1fa7f0a44744c4d8f73"}, + {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5dd58946bce44b53b06d94aa95560d0b243eb2fe64227cba50017a8d8b3cd3e2"}, + {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22a86d9fff2009302c440b9d799ef2fe322416d2d58fc124b926aa89365ec482"}, + {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2aae8101919e8aa05ecfe6322b278f41ce2994c4a430303c4cd163fef746e04f"}, + {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e692296c4cc2873967771345a876bcfc1c547e8dd695c6b89342488b0ea55cd8"}, + {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:263ef5cc10979837f243950637fffb06e8daed7f1ac1e39d5910fd29929e489a"}, + {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:d6f7e255e5fa94642a0724e35406e6cb7001c09d476ab5fce002f652b36d0c39"}, + {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:88ad44e220e22b63b0f8f81f007e8abbb92874d8ced66f32571ef8beb0643b2b"}, + {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:3a17d3ede18f9cedcbe23d2daa8a2cd6f59fe2bf082c567e43083bba3fb00347"}, + {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d15b274f9e15b1a0b7a45d2ac86d1f634d983ca40d6b886721626c47a400bf39"}, + {file = "regex-2023.12.25-cp37-cp37m-win32.whl", hash = "sha256:ed19b3a05ae0c97dd8f75a5d8f21f7723a8c33bbc555da6bbe1f96c470139d3c"}, + {file = "regex-2023.12.25-cp37-cp37m-win_amd64.whl", hash = "sha256:a6d1047952c0b8104a1d371f88f4ab62e6275567d4458c1e26e9627ad489b445"}, + {file = "regex-2023.12.25-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b43523d7bc2abd757119dbfb38af91b5735eea45537ec6ec3a5ec3f9562a1c53"}, + {file = "regex-2023.12.25-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:efb2d82f33b2212898f1659fb1c2e9ac30493ac41e4d53123da374c3b5541e64"}, + {file = "regex-2023.12.25-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b7fca9205b59c1a3d5031f7e64ed627a1074730a51c2a80e97653e3e9fa0d415"}, + {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086dd15e9435b393ae06f96ab69ab2d333f5d65cbe65ca5a3ef0ec9564dfe770"}, + {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e81469f7d01efed9b53740aedd26085f20d49da65f9c1f41e822a33992cb1590"}, + {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:34e4af5b27232f68042aa40a91c3b9bb4da0eeb31b7632e0091afc4310afe6cb"}, + {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9852b76ab558e45b20bf1893b59af64a28bd3820b0c2efc80e0a70a4a3ea51c1"}, + {file = "regex-2023.12.25-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ff100b203092af77d1a5a7abe085b3506b7eaaf9abf65b73b7d6905b6cb76988"}, + {file = "regex-2023.12.25-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cc038b2d8b1470364b1888a98fd22d616fba2b6309c5b5f181ad4483e0017861"}, + {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:094ba386bb5c01e54e14434d4caabf6583334090865b23ef58e0424a6286d3dc"}, + {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5cd05d0f57846d8ba4b71d9c00f6f37d6b97d5e5ef8b3c3840426a475c8f70f4"}, + {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:9aa1a67bbf0f957bbe096375887b2505f5d8ae16bf04488e8b0f334c36e31360"}, + {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:98a2636994f943b871786c9e82bfe7883ecdaba2ef5df54e1450fa9869d1f756"}, + {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:37f8e93a81fc5e5bd8db7e10e62dc64261bcd88f8d7e6640aaebe9bc180d9ce2"}, + {file = "regex-2023.12.25-cp38-cp38-win32.whl", hash = "sha256:d78bd484930c1da2b9679290a41cdb25cc127d783768a0369d6b449e72f88beb"}, + {file = "regex-2023.12.25-cp38-cp38-win_amd64.whl", hash = "sha256:b521dcecebc5b978b447f0f69b5b7f3840eac454862270406a39837ffae4e697"}, + {file = "regex-2023.12.25-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f7bc09bc9c29ebead055bcba136a67378f03d66bf359e87d0f7c759d6d4ffa31"}, + {file = "regex-2023.12.25-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e14b73607d6231f3cc4622809c196b540a6a44e903bcfad940779c80dffa7be7"}, + {file = "regex-2023.12.25-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9eda5f7a50141291beda3edd00abc2d4a5b16c29c92daf8d5bd76934150f3edc"}, + {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc6bb9aa69aacf0f6032c307da718f61a40cf970849e471254e0e91c56ffca95"}, + {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:298dc6354d414bc921581be85695d18912bea163a8b23cac9a2562bbcd5088b1"}, + {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2f4e475a80ecbd15896a976aa0b386c5525d0ed34d5c600b6d3ebac0a67c7ddf"}, + {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:531ac6cf22b53e0696f8e1d56ce2396311254eb806111ddd3922c9d937151dae"}, + {file = "regex-2023.12.25-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22f3470f7524b6da61e2020672df2f3063676aff444db1daa283c2ea4ed259d6"}, + {file = "regex-2023.12.25-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:89723d2112697feaa320c9d351e5f5e7b841e83f8b143dba8e2d2b5f04e10923"}, + {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0ecf44ddf9171cd7566ef1768047f6e66975788258b1c6c6ca78098b95cf9a3d"}, + {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:905466ad1702ed4acfd67a902af50b8db1feeb9781436372261808df7a2a7bca"}, + {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:4558410b7a5607a645e9804a3e9dd509af12fb72b9825b13791a37cd417d73a5"}, + {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:7e316026cc1095f2a3e8cc012822c99f413b702eaa2ca5408a513609488cb62f"}, + {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3b1de218d5375cd6ac4b5493e0b9f3df2be331e86520f23382f216c137913d20"}, + {file = "regex-2023.12.25-cp39-cp39-win32.whl", hash = "sha256:11a963f8e25ab5c61348d090bf1b07f1953929c13bd2309a0662e9ff680763c9"}, + {file = "regex-2023.12.25-cp39-cp39-win_amd64.whl", hash = "sha256:e693e233ac92ba83a87024e1d32b5f9ab15ca55ddd916d878146f4e3406b5c91"}, + {file = "regex-2023.12.25.tar.gz", hash = "sha256:29171aa128da69afdf4bde412d5bedc335f2ca8fcfe4489038577d05f16181e5"}, +] + +[[package]] +name = "requests" +version = "2.31.0" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.7" +files = [ + {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, + {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +description = "A pure python RFC3339 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, + {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, +] + +[package.dependencies] +six = "*" + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +description = "Pure python rfc3986 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +files = [ + {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"}, + {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"}, +] + +[[package]] +name = "rpds-py" +version = "0.18.0" +description = "Python bindings to Rust's persistent data structures (rpds)" +optional = false +python-versions = ">=3.8" +files = [ + {file = "rpds_py-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5b4e7d8d6c9b2e8ee2d55c90b59c707ca59bc30058269b3db7b1f8df5763557e"}, + {file = "rpds_py-0.18.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c463ed05f9dfb9baebef68048aed8dcdc94411e4bf3d33a39ba97e271624f8f7"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01e36a39af54a30f28b73096dd39b6802eddd04c90dbe161c1b8dbe22353189f"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d62dec4976954a23d7f91f2f4530852b0c7608116c257833922a896101336c51"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd18772815d5f008fa03d2b9a681ae38d5ae9f0e599f7dda233c439fcaa00d40"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:923d39efa3cfb7279a0327e337a7958bff00cc447fd07a25cddb0a1cc9a6d2da"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39514da80f971362f9267c600b6d459bfbbc549cffc2cef8e47474fddc9b45b1"}, + {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a34d557a42aa28bd5c48a023c570219ba2593bcbbb8dc1b98d8cf5d529ab1434"}, + {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:93df1de2f7f7239dc9cc5a4a12408ee1598725036bd2dedadc14d94525192fc3"}, + {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:34b18ba135c687f4dac449aa5157d36e2cbb7c03cbea4ddbd88604e076aa836e"}, + {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c0b5dcf9193625afd8ecc92312d6ed78781c46ecbf39af9ad4681fc9f464af88"}, + {file = "rpds_py-0.18.0-cp310-none-win32.whl", hash = "sha256:c4325ff0442a12113a6379af66978c3fe562f846763287ef66bdc1d57925d337"}, + {file = "rpds_py-0.18.0-cp310-none-win_amd64.whl", hash = "sha256:7223a2a5fe0d217e60a60cdae28d6949140dde9c3bcc714063c5b463065e3d66"}, + {file = "rpds_py-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3a96e0c6a41dcdba3a0a581bbf6c44bb863f27c541547fb4b9711fd8cf0ffad4"}, + {file = "rpds_py-0.18.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30f43887bbae0d49113cbaab729a112251a940e9b274536613097ab8b4899cf6"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcb25daa9219b4cf3a0ab24b0eb9a5cc8949ed4dc72acb8fa16b7e1681aa3c58"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d68c93e381010662ab873fea609bf6c0f428b6d0bb00f2c6939782e0818d37bf"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b34b7aa8b261c1dbf7720b5d6f01f38243e9b9daf7e6b8bc1fd4657000062f2c"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e6d75ab12b0bbab7215e5d40f1e5b738aa539598db27ef83b2ec46747df90e1"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8612cd233543a3781bc659c731b9d607de65890085098986dfd573fc2befe5"}, + {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aec493917dd45e3c69d00a8874e7cbed844efd935595ef78a0f25f14312e33c6"}, + {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:661d25cbffaf8cc42e971dd570d87cb29a665f49f4abe1f9e76be9a5182c4688"}, + {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:1df3659d26f539ac74fb3b0c481cdf9d725386e3552c6fa2974f4d33d78e544b"}, + {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a1ce3ba137ed54f83e56fb983a5859a27d43a40188ba798993812fed73c70836"}, + {file = "rpds_py-0.18.0-cp311-none-win32.whl", hash = "sha256:69e64831e22a6b377772e7fb337533c365085b31619005802a79242fee620bc1"}, + {file = "rpds_py-0.18.0-cp311-none-win_amd64.whl", hash = "sha256:998e33ad22dc7ec7e030b3df701c43630b5bc0d8fbc2267653577e3fec279afa"}, + {file = "rpds_py-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:7f2facbd386dd60cbbf1a794181e6aa0bd429bd78bfdf775436020172e2a23f0"}, + {file = "rpds_py-0.18.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d9a5be316c15ffb2b3c405c4ff14448c36b4435be062a7f578ccd8b01f0c4d8"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd5bf1af8efe569654bbef5a3e0a56eca45f87cfcffab31dd8dde70da5982475"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5417558f6887e9b6b65b4527232553c139b57ec42c64570569b155262ac0754f"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:56a737287efecafc16f6d067c2ea0117abadcd078d58721f967952db329a3e5c"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8f03bccbd8586e9dd37219bce4d4e0d3ab492e6b3b533e973fa08a112cb2ffc9"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4457a94da0d5c53dc4b3e4de1158bdab077db23c53232f37a3cb7afdb053a4e3"}, + {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0ab39c1ba9023914297dd88ec3b3b3c3f33671baeb6acf82ad7ce883f6e8e157"}, + {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9d54553c1136b50fd12cc17e5b11ad07374c316df307e4cfd6441bea5fb68496"}, + {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0af039631b6de0397ab2ba16eaf2872e9f8fca391b44d3d8cac317860a700a3f"}, + {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:84ffab12db93b5f6bad84c712c92060a2d321b35c3c9960b43d08d0f639d60d7"}, + {file = "rpds_py-0.18.0-cp312-none-win32.whl", hash = "sha256:685537e07897f173abcf67258bee3c05c374fa6fff89d4c7e42fb391b0605e98"}, + {file = "rpds_py-0.18.0-cp312-none-win_amd64.whl", hash = "sha256:e003b002ec72c8d5a3e3da2989c7d6065b47d9eaa70cd8808b5384fbb970f4ec"}, + {file = "rpds_py-0.18.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:08f9ad53c3f31dfb4baa00da22f1e862900f45908383c062c27628754af2e88e"}, + {file = "rpds_py-0.18.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0013fe6b46aa496a6749c77e00a3eb07952832ad6166bd481c74bda0dcb6d58"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e32a92116d4f2a80b629778280103d2a510a5b3f6314ceccd6e38006b5e92dcb"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e541ec6f2ec456934fd279a3120f856cd0aedd209fc3852eca563f81738f6861"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bed88b9a458e354014d662d47e7a5baafd7ff81c780fd91584a10d6ec842cb73"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2644e47de560eb7bd55c20fc59f6daa04682655c58d08185a9b95c1970fa1e07"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e8916ae4c720529e18afa0b879473049e95949bf97042e938530e072fde061d"}, + {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:465a3eb5659338cf2a9243e50ad9b2296fa15061736d6e26240e713522b6235c"}, + {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ea7d4a99f3b38c37eac212dbd6ec42b7a5ec51e2c74b5d3223e43c811609e65f"}, + {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:67071a6171e92b6da534b8ae326505f7c18022c6f19072a81dcf40db2638767c"}, + {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:41ef53e7c58aa4ef281da975f62c258950f54b76ec8e45941e93a3d1d8580594"}, + {file = "rpds_py-0.18.0-cp38-none-win32.whl", hash = "sha256:fdea4952db2793c4ad0bdccd27c1d8fdd1423a92f04598bc39425bcc2b8ee46e"}, + {file = "rpds_py-0.18.0-cp38-none-win_amd64.whl", hash = "sha256:7cd863afe7336c62ec78d7d1349a2f34c007a3cc6c2369d667c65aeec412a5b1"}, + {file = "rpds_py-0.18.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:5307def11a35f5ae4581a0b658b0af8178c65c530e94893345bebf41cc139d33"}, + {file = "rpds_py-0.18.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:77f195baa60a54ef9d2de16fbbfd3ff8b04edc0c0140a761b56c267ac11aa467"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:39f5441553f1c2aed4de4377178ad8ff8f9d733723d6c66d983d75341de265ab"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9a00312dea9310d4cb7dbd7787e722d2e86a95c2db92fbd7d0155f97127bcb40"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f2fc11e8fe034ee3c34d316d0ad8808f45bc3b9ce5857ff29d513f3ff2923a1"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:586f8204935b9ec884500498ccc91aa869fc652c40c093bd9e1471fbcc25c022"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ddc2f4dfd396c7bfa18e6ce371cba60e4cf9d2e5cdb71376aa2da264605b60b9"}, + {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5ddcba87675b6d509139d1b521e0c8250e967e63b5909a7e8f8944d0f90ff36f"}, + {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7bd339195d84439cbe5771546fe8a4e8a7a045417d8f9de9a368c434e42a721e"}, + {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:d7c36232a90d4755b720fbd76739d8891732b18cf240a9c645d75f00639a9024"}, + {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6b0817e34942b2ca527b0e9298373e7cc75f429e8da2055607f4931fded23e20"}, + {file = "rpds_py-0.18.0-cp39-none-win32.whl", hash = "sha256:99f70b740dc04d09e6b2699b675874367885217a2e9f782bdf5395632ac663b7"}, + {file = "rpds_py-0.18.0-cp39-none-win_amd64.whl", hash = "sha256:6ef687afab047554a2d366e112dd187b62d261d49eb79b77e386f94644363294"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad36cfb355e24f1bd37cac88c112cd7730873f20fb0bdaf8ba59eedf8216079f"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:36b3ee798c58ace201289024b52788161e1ea133e4ac93fba7d49da5fec0ef9e"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8a2f084546cc59ea99fda8e070be2fd140c3092dc11524a71aa8f0f3d5a55ca"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e4461d0f003a0aa9be2bdd1b798a041f177189c1a0f7619fe8c95ad08d9a45d7"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8db715ebe3bb7d86d77ac1826f7d67ec11a70dbd2376b7cc214199360517b641"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:793968759cd0d96cac1e367afd70c235867831983f876a53389ad869b043c948"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66e6a3af5a75363d2c9a48b07cb27c4ea542938b1a2e93b15a503cdfa8490795"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ef0befbb5d79cf32d0266f5cff01545602344eda89480e1dd88aca964260b18"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1d4acf42190d449d5e89654d5c1ed3a4f17925eec71f05e2a41414689cda02d1"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:a5f446dd5055667aabaee78487f2b5ab72e244f9bc0b2ffebfeec79051679984"}, + {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:9dbbeb27f4e70bfd9eec1be5477517365afe05a9b2c441a0b21929ee61048124"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:22806714311a69fd0af9b35b7be97c18a0fc2826e6827dbb3a8c94eac6cf7eeb"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:b34ae4636dfc4e76a438ab826a0d1eed2589ca7d9a1b2d5bb546978ac6485461"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c8370641f1a7f0e0669ddccca22f1da893cef7628396431eb445d46d893e5cd"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c8362467a0fdeccd47935f22c256bec5e6abe543bf0d66e3d3d57a8fb5731863"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11a8c85ef4a07a7638180bf04fe189d12757c696eb41f310d2426895356dcf05"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b316144e85316da2723f9d8dc75bada12fa58489a527091fa1d5a612643d1a0e"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf1ea2e34868f6fbf070e1af291c8180480310173de0b0c43fc38a02929fc0e3"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e546e768d08ad55b20b11dbb78a745151acbd938f8f00d0cfbabe8b0199b9880"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4901165d170a5fde6f589acb90a6b33629ad1ec976d4529e769c6f3d885e3e80"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:618a3d6cae6ef8ec88bb76dd80b83cfe415ad4f1d942ca2a903bf6b6ff97a2da"}, + {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ed4eb745efbff0a8e9587d22a84be94a5eb7d2d99c02dacf7bd0911713ed14dd"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6c81e5f372cd0dc5dc4809553d34f832f60a46034a5f187756d9b90586c2c307"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:43fbac5f22e25bee1d482c97474f930a353542855f05c1161fd804c9dc74a09d"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d7faa6f14017c0b1e69f5e2c357b998731ea75a442ab3841c0dbbbfe902d2c4"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:08231ac30a842bd04daabc4d71fddd7e6d26189406d5a69535638e4dcb88fe76"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:044a3e61a7c2dafacae99d1e722cc2d4c05280790ec5a05031b3876809d89a5c"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f26b5bd1079acdb0c7a5645e350fe54d16b17bfc5e71f371c449383d3342e17"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:482103aed1dfe2f3b71a58eff35ba105289b8d862551ea576bd15479aba01f66"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1374f4129f9bcca53a1bba0bb86bf78325a0374577cf7e9e4cd046b1e6f20e24"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:635dc434ff724b178cb192c70016cc0ad25a275228f749ee0daf0eddbc8183b1"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:bc362ee4e314870a70f4ae88772d72d877246537d9f8cb8f7eacf10884862432"}, + {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:4832d7d380477521a8c1644bbab6588dfedea5e30a7d967b5fb75977c45fd77f"}, + {file = "rpds_py-0.18.0.tar.gz", hash = "sha256:42821446ee7a76f5d9f71f9e33a4fb2ffd724bb3e7f93386150b61a43115788d"}, +] + +[[package]] +name = "ruff" +version = "0.0.292" +description = "An extremely fast Python linter, written in Rust." +optional = false +python-versions = ">=3.7" +files = [ + {file = "ruff-0.0.292-py3-none-macosx_10_7_x86_64.whl", hash = "sha256:02f29db018c9d474270c704e6c6b13b18ed0ecac82761e4fcf0faa3728430c96"}, + {file = "ruff-0.0.292-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:69654e564342f507edfa09ee6897883ca76e331d4bbc3676d8a8403838e9fade"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c3c91859a9b845c33778f11902e7b26440d64b9d5110edd4e4fa1726c41e0a4"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f4476f1243af2d8c29da5f235c13dca52177117935e1f9393f9d90f9833f69e4"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:be8eb50eaf8648070b8e58ece8e69c9322d34afe367eec4210fdee9a555e4ca7"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:9889bac18a0c07018aac75ef6c1e6511d8411724d67cb879103b01758e110a81"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6bdfabd4334684a4418b99b3118793f2c13bb67bf1540a769d7816410402a205"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa7c77c53bfcd75dbcd4d1f42d6cabf2485d2e1ee0678da850f08e1ab13081a8"}, + {file = "ruff-0.0.292-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e087b24d0d849c5c81516ec740bf4fd48bf363cfb104545464e0fca749b6af9"}, + {file = "ruff-0.0.292-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:f160b5ec26be32362d0774964e218f3fcf0a7da299f7e220ef45ae9e3e67101a"}, + {file = "ruff-0.0.292-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:ac153eee6dd4444501c4bb92bff866491d4bfb01ce26dd2fff7ca472c8df9ad0"}, + {file = "ruff-0.0.292-py3-none-musllinux_1_2_i686.whl", hash = "sha256:87616771e72820800b8faea82edd858324b29bb99a920d6aa3d3949dd3f88fb0"}, + {file = "ruff-0.0.292-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:b76deb3bdbea2ef97db286cf953488745dd6424c122d275f05836c53f62d4016"}, + {file = "ruff-0.0.292-py3-none-win32.whl", hash = "sha256:e854b05408f7a8033a027e4b1c7f9889563dd2aca545d13d06711e5c39c3d003"}, + {file = "ruff-0.0.292-py3-none-win_amd64.whl", hash = "sha256:f27282bedfd04d4c3492e5c3398360c9d86a295be00eccc63914438b4ac8a83c"}, + {file = "ruff-0.0.292-py3-none-win_arm64.whl", hash = "sha256:7f67a69c8f12fbc8daf6ae6d36705037bde315abf8b82b6e1f4c9e74eb750f68"}, + {file = "ruff-0.0.292.tar.gz", hash = "sha256:1093449e37dd1e9b813798f6ad70932b57cf614e5c2b5c51005bf67d55db33ac"}, +] + +[[package]] +name = "scikit-learn" +version = "1.4.1.post1" +description = "A set of python modules for machine learning and data mining" +optional = false +python-versions = ">=3.9" +files = [ + {file = "scikit-learn-1.4.1.post1.tar.gz", hash = "sha256:93d3d496ff1965470f9977d05e5ec3376fb1e63b10e4fda5e39d23c2d8969a30"}, + {file = "scikit_learn-1.4.1.post1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c540aaf44729ab5cd4bd5e394f2b375e65ceaea9cdd8c195788e70433d91bbc5"}, + {file = "scikit_learn-1.4.1.post1-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:4310bff71aa98b45b46cd26fa641309deb73a5d1c0461d181587ad4f30ea3c36"}, + {file = "scikit_learn-1.4.1.post1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9f43dd527dabff5521af2786a2f8de5ba381e182ec7292663508901cf6ceaf6e"}, + {file = "scikit_learn-1.4.1.post1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c02e27d65b0c7dc32f2c5eb601aaf5530b7a02bfbe92438188624524878336f2"}, + {file = "scikit_learn-1.4.1.post1-cp310-cp310-win_amd64.whl", hash = "sha256:629e09f772ad42f657ca60a1a52342eef786218dd20cf1369a3b8d085e55ef8f"}, + {file = "scikit_learn-1.4.1.post1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6145dfd9605b0b50ae72cdf72b61a2acd87501369a763b0d73d004710ebb76b5"}, + {file = "scikit_learn-1.4.1.post1-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:1afed6951bc9d2053c6ee9a518a466cbc9b07c6a3f9d43bfe734192b6125d508"}, + {file = "scikit_learn-1.4.1.post1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce03506ccf5f96b7e9030fea7eb148999b254c44c10182ac55857bc9b5d4815f"}, + {file = "scikit_learn-1.4.1.post1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ba516fcdc73d60e7f48cbb0bccb9acbdb21807de3651531208aac73c758e3ab"}, + {file = "scikit_learn-1.4.1.post1-cp311-cp311-win_amd64.whl", hash = "sha256:78cd27b4669513b50db4f683ef41ea35b5dddc797bd2bbd990d49897fd1c8a46"}, + {file = "scikit_learn-1.4.1.post1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a1e289f33f613cefe6707dead50db31930530dc386b6ccff176c786335a7b01c"}, + {file = "scikit_learn-1.4.1.post1-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:0df87de9ce1c0140f2818beef310fb2e2afdc1e66fc9ad587965577f17733649"}, + {file = "scikit_learn-1.4.1.post1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:712c1c69c45b58ef21635360b3d0a680ff7d83ac95b6f9b82cf9294070cda710"}, + {file = "scikit_learn-1.4.1.post1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1754b0c2409d6ed5a3380512d0adcf182a01363c669033a2b55cca429ed86a81"}, + {file = "scikit_learn-1.4.1.post1-cp312-cp312-win_amd64.whl", hash = "sha256:1d491ef66e37f4e812db7e6c8286520c2c3fc61b34bf5e59b67b4ce528de93af"}, + {file = "scikit_learn-1.4.1.post1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:aa0029b78ef59af22cfbd833e8ace8526e4df90212db7ceccbea582ebb5d6794"}, + {file = "scikit_learn-1.4.1.post1-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:14e4c88436ac96bf69eb6d746ac76a574c314a23c6961b7d344b38877f20fee1"}, + {file = "scikit_learn-1.4.1.post1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7cd3a77c32879311f2aa93466d3c288c955ef71d191503cf0677c3340ae8ae0"}, + {file = "scikit_learn-1.4.1.post1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a3ee19211ded1a52ee37b0a7b373a8bfc66f95353af058a210b692bd4cda0dd"}, + {file = "scikit_learn-1.4.1.post1-cp39-cp39-win_amd64.whl", hash = "sha256:234b6bda70fdcae9e4abbbe028582ce99c280458665a155eed0b820599377d25"}, +] + +[package.dependencies] +joblib = ">=1.2.0" +numpy = ">=1.19.5,<2.0" +scipy = ">=1.6.0" +threadpoolctl = ">=2.0.0" + +[package.extras] +benchmark = ["matplotlib (>=3.3.4)", "memory-profiler (>=0.57.0)", "pandas (>=1.1.5)"] +docs = ["Pillow (>=7.1.2)", "matplotlib (>=3.3.4)", "memory-profiler (>=0.57.0)", "numpydoc (>=1.2.0)", "pandas (>=1.1.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.17.2)", "seaborn (>=0.9.0)", "sphinx (>=6.0.0)", "sphinx-copybutton (>=0.5.2)", "sphinx-gallery (>=0.15.0)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] +examples = ["matplotlib (>=3.3.4)", "pandas (>=1.1.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.17.2)", "seaborn (>=0.9.0)"] +tests = ["black (>=23.3.0)", "matplotlib (>=3.3.4)", "mypy (>=1.3)", "numpydoc (>=1.2.0)", "pandas (>=1.1.5)", "polars (>=0.19.12)", "pooch (>=1.6.0)", "pyamg (>=4.0.0)", "pyarrow (>=12.0.0)", "pytest (>=7.1.2)", "pytest-cov (>=2.9.0)", "ruff (>=0.0.272)", "scikit-image (>=0.17.2)"] + +[[package]] +name = "scipy" +version = "1.9.3" +description = "Fundamental algorithms for scientific computing in Python" +optional = false +python-versions = ">=3.8" +files = [ + {file = "scipy-1.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1884b66a54887e21addf9c16fb588720a8309a57b2e258ae1c7986d4444d3bc0"}, + {file = "scipy-1.9.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:83b89e9586c62e787f5012e8475fbb12185bafb996a03257e9675cd73d3736dd"}, + {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a72d885fa44247f92743fc20732ae55564ff2a519e8302fb7e18717c5355a8b"}, + {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d01e1dd7b15bd2449c8bfc6b7cc67d630700ed655654f0dfcf121600bad205c9"}, + {file = "scipy-1.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:68239b6aa6f9c593da8be1509a05cb7f9efe98b80f43a5861cd24c7557e98523"}, + {file = "scipy-1.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b41bc822679ad1c9a5f023bc93f6d0543129ca0f37c1ce294dd9d386f0a21096"}, + {file = "scipy-1.9.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:90453d2b93ea82a9f434e4e1cba043e779ff67b92f7a0e85d05d286a3625df3c"}, + {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83c06e62a390a9167da60bedd4575a14c1f58ca9dfde59830fc42e5197283dab"}, + {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abaf921531b5aeaafced90157db505e10345e45038c39e5d9b6c7922d68085cb"}, + {file = "scipy-1.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:06d2e1b4c491dc7d8eacea139a1b0b295f74e1a1a0f704c375028f8320d16e31"}, + {file = "scipy-1.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5a04cd7d0d3eff6ea4719371cbc44df31411862b9646db617c99718ff68d4840"}, + {file = "scipy-1.9.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:545c83ffb518094d8c9d83cce216c0c32f8c04aaf28b92cc8283eda0685162d5"}, + {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d54222d7a3ba6022fdf5773931b5d7c56efe41ede7f7128c7b1637700409108"}, + {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cff3a5295234037e39500d35316a4c5794739433528310e117b8a9a0c76d20fc"}, + {file = "scipy-1.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:2318bef588acc7a574f5bfdff9c172d0b1bf2c8143d9582e05f878e580a3781e"}, + {file = "scipy-1.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d644a64e174c16cb4b2e41dfea6af722053e83d066da7343f333a54dae9bc31c"}, + {file = "scipy-1.9.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:da8245491d73ed0a994ed9c2e380fd058ce2fa8a18da204681f2fe1f57f98f95"}, + {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4db5b30849606a95dcf519763dd3ab6fe9bd91df49eba517359e450a7d80ce2e"}, + {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c68db6b290cbd4049012990d7fe71a2abd9ffbe82c0056ebe0f01df8be5436b0"}, + {file = "scipy-1.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:5b88e6d91ad9d59478fafe92a7c757d00c59e3bdc3331be8ada76a4f8d683f58"}, + {file = "scipy-1.9.3.tar.gz", hash = "sha256:fbc5c05c85c1a02be77b1ff591087c83bc44579c6d2bd9fb798bb64ea5e1a027"}, +] + +[package.dependencies] +numpy = ">=1.18.5,<1.26.0" + +[package.extras] +dev = ["flake8", "mypy", "pycodestyle", "typing_extensions"] +doc = ["matplotlib (>2)", "numpydoc", "pydata-sphinx-theme (==0.9.0)", "sphinx (!=4.1.0)", "sphinx-panels (>=0.5.2)", "sphinx-tabs"] +test = ["asv", "gmpy2", "mpmath", "pytest", "pytest-cov", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "send2trash" +version = "1.8.2" +description = "Send file to trash natively under Mac OS X, Windows and Linux" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +files = [ + {file = "Send2Trash-1.8.2-py3-none-any.whl", hash = "sha256:a384719d99c07ce1eefd6905d2decb6f8b7ed054025bb0e618919f945de4f679"}, + {file = "Send2Trash-1.8.2.tar.gz", hash = "sha256:c132d59fa44b9ca2b1699af5c86f57ce9f4c5eb56629d5d55fbb7a35f84e2312"}, +] + +[package.extras] +nativelib = ["pyobjc-framework-Cocoa", "pywin32"] +objc = ["pyobjc-framework-Cocoa"] +win32 = ["pywin32"] + +[[package]] +name = "setuptools" +version = "69.1.1" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +optional = false +python-versions = ">=3.8" +files = [ + {file = "setuptools-69.1.1-py3-none-any.whl", hash = "sha256:02fa291a0471b3a18b2b2481ed902af520c69e8ae0919c13da936542754b4c56"}, + {file = "setuptools-69.1.1.tar.gz", hash = "sha256:5c0806c7d9af348e6dd3777b4f4dbb42c7ad85b190104837488eab9a7c945cf8"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] + +[[package]] +name = "six" +version = "1.16.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" +files = [ + {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, + {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, +] + +[[package]] +name = "sniffio" +version = "1.3.1" +description = "Sniff out which async library your code is running under" +optional = false +python-versions = ">=3.7" +files = [ + {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, + {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, +] + +[[package]] +name = "soupsieve" +version = "2.5" +description = "A modern CSS selector implementation for Beautiful Soup." +optional = false +python-versions = ">=3.8" +files = [ + {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, + {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, +] + +[[package]] +name = "sqlalchemy" +version = "2.0.27" +description = "Database Abstraction Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "SQLAlchemy-2.0.27-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d04e579e911562f1055d26dab1868d3e0bb905db3bccf664ee8ad109f035618a"}, + {file = "SQLAlchemy-2.0.27-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fa67d821c1fd268a5a87922ef4940442513b4e6c377553506b9db3b83beebbd8"}, + {file = "SQLAlchemy-2.0.27-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:954d9735ee9c3fa74874c830d089a815b7b48df6f6b6e357a74130e478dbd951"}, + {file = "SQLAlchemy-2.0.27-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:03f448ffb731b48323bda68bcc93152f751436ad6037f18a42b7e16af9e91c07"}, + {file = "SQLAlchemy-2.0.27-cp310-cp310-win32.whl", hash = "sha256:d997c5938a08b5e172c30583ba6b8aad657ed9901fc24caf3a7152eeccb2f1b4"}, + {file = "SQLAlchemy-2.0.27-cp310-cp310-win_amd64.whl", hash = "sha256:eb15ef40b833f5b2f19eeae65d65e191f039e71790dd565c2af2a3783f72262f"}, + {file = "SQLAlchemy-2.0.27-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6c5bad7c60a392850d2f0fee8f355953abaec878c483dd7c3836e0089f046bf6"}, + {file = "SQLAlchemy-2.0.27-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a3012ab65ea42de1be81fff5fb28d6db893ef978950afc8130ba707179b4284a"}, + {file = "SQLAlchemy-2.0.27-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d177b7e82f6dd5e1aebd24d9c3297c70ce09cd1d5d37b43e53f39514379c029c"}, + {file = "SQLAlchemy-2.0.27-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1306102f6d9e625cebaca3d4c9c8f10588735ef877f0360b5cdb4fdfd3fd7131"}, + {file = "SQLAlchemy-2.0.27-cp311-cp311-win32.whl", hash = "sha256:5b78aa9f4f68212248aaf8943d84c0ff0f74efc65a661c2fc68b82d498311fd5"}, + {file = "SQLAlchemy-2.0.27-cp311-cp311-win_amd64.whl", hash = "sha256:15e19a84b84528f52a68143439d0c7a3a69befcd4f50b8ef9b7b69d2628ae7c4"}, + {file = "SQLAlchemy-2.0.27-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0de1263aac858f288a80b2071990f02082c51d88335a1db0d589237a3435fe71"}, + {file = "SQLAlchemy-2.0.27-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce850db091bf7d2a1f2fdb615220b968aeff3849007b1204bf6e3e50a57b3d32"}, + {file = "SQLAlchemy-2.0.27-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c4fbe6a766301f2e8a4519f4500fe74ef0a8509a59e07a4085458f26228cd7cc"}, + {file = "SQLAlchemy-2.0.27-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:0fb3bffc0ced37e5aa4ac2416f56d6d858f46d4da70c09bb731a246e70bff4d5"}, + {file = "SQLAlchemy-2.0.27-cp312-cp312-win32.whl", hash = "sha256:7f470327d06400a0aa7926b375b8e8c3c31d335e0884f509fe272b3c700a7254"}, + {file = "SQLAlchemy-2.0.27-cp312-cp312-win_amd64.whl", hash = "sha256:f9374e270e2553653d710ece397df67db9d19c60d2647bcd35bfc616f1622dcd"}, + {file = "SQLAlchemy-2.0.27-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e97cf143d74a7a5a0f143aa34039b4fecf11343eed66538610debc438685db4a"}, + {file = "SQLAlchemy-2.0.27-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e36aa62b765cf9f43a003233a8c2d7ffdeb55bc62eaa0a0380475b228663a38f"}, + {file = "SQLAlchemy-2.0.27-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:b1d9d1bfd96eef3c3faedb73f486c89e44e64e40e5bfec304ee163de01cf996f"}, + {file = "SQLAlchemy-2.0.27-cp37-cp37m-win32.whl", hash = "sha256:ca891af9f3289d24a490a5fde664ea04fe2f4984cd97e26de7442a4251bd4b7c"}, + {file = "SQLAlchemy-2.0.27-cp37-cp37m-win_amd64.whl", hash = "sha256:fd8aafda7cdff03b905d4426b714601c0978725a19efc39f5f207b86d188ba01"}, + {file = "SQLAlchemy-2.0.27-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ec1f5a328464daf7a1e4e385e4f5652dd9b1d12405075ccba1df842f7774b4fc"}, + {file = "SQLAlchemy-2.0.27-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ad862295ad3f644e3c2c0d8b10a988e1600d3123ecb48702d2c0f26771f1c396"}, + {file = "SQLAlchemy-2.0.27-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e56afce6431450442f3ab5973156289bd5ec33dd618941283847c9fd5ff06bf"}, + {file = "SQLAlchemy-2.0.27-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b86abba762ecfeea359112b2bb4490802b340850bbee1948f785141a5e020de8"}, + {file = "SQLAlchemy-2.0.27-cp38-cp38-win32.whl", hash = "sha256:30d81cc1192dc693d49d5671cd40cdec596b885b0ce3b72f323888ab1c3863d5"}, + {file = "SQLAlchemy-2.0.27-cp38-cp38-win_amd64.whl", hash = "sha256:120af1e49d614d2525ac247f6123841589b029c318b9afbfc9e2b70e22e1827d"}, + {file = "SQLAlchemy-2.0.27-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d07ee7793f2aeb9b80ec8ceb96bc8cc08a2aec8a1b152da1955d64e4825fcbac"}, + {file = "SQLAlchemy-2.0.27-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cb0845e934647232b6ff5150df37ceffd0b67b754b9fdbb095233deebcddbd4a"}, + {file = "SQLAlchemy-2.0.27-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b90053be91973a6fb6020a6e44382c97739736a5a9d74e08cc29b196639eb979"}, + {file = "SQLAlchemy-2.0.27-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:33e8bde8fff203de50399b9039c4e14e42d4d227759155c21f8da4a47fc8053c"}, + {file = "SQLAlchemy-2.0.27-cp39-cp39-win32.whl", hash = "sha256:d873c21b356bfaf1589b89090a4011e6532582b3a8ea568a00e0c3aab09399dd"}, + {file = "SQLAlchemy-2.0.27-cp39-cp39-win_amd64.whl", hash = "sha256:ff2f1b7c963961d41403b650842dc2039175b906ab2093635d8319bef0b7d620"}, + {file = "SQLAlchemy-2.0.27-py3-none-any.whl", hash = "sha256:1ab4e0448018d01b142c916cc7119ca573803a4745cfe341b8f95657812700ac"}, + {file = "SQLAlchemy-2.0.27.tar.gz", hash = "sha256:86a6ed69a71fe6b88bf9331594fa390a2adda4a49b5c06f98e47bf0d392534f8"}, +] + +[package.dependencies] +greenlet = {version = "!=0.4.17", optional = true, markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\" or extra == \"asyncio\""} +typing-extensions = ">=4.6.0" + +[package.extras] +aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] +aioodbc = ["aioodbc", "greenlet (!=0.4.17)"] +aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] +asyncio = ["greenlet (!=0.4.17)"] +asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (!=0.4.17)"] +mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5)"] +mssql = ["pyodbc"] +mssql-pymssql = ["pymssql"] +mssql-pyodbc = ["pyodbc"] +mypy = ["mypy (>=0.910)"] +mysql = ["mysqlclient (>=1.4.0)"] +mysql-connector = ["mysql-connector-python"] +oracle = ["cx_oracle (>=8)"] +oracle-oracledb = ["oracledb (>=1.0.1)"] +postgresql = ["psycopg2 (>=2.7)"] +postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] +postgresql-pg8000 = ["pg8000 (>=1.29.1)"] +postgresql-psycopg = ["psycopg (>=3.0.7)"] +postgresql-psycopg2binary = ["psycopg2-binary"] +postgresql-psycopg2cffi = ["psycopg2cffi"] +postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] +pymysql = ["pymysql"] +sqlcipher = ["sqlcipher3_binary"] + +[[package]] +name = "stack-data" +version = "0.6.3" +description = "Extract data from python stack frames and tracebacks for informative displays" +optional = false +python-versions = "*" +files = [ + {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, + {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, +] + +[package.dependencies] +asttokens = ">=2.1.0" +executing = ">=1.2.0" +pure-eval = "*" + +[package.extras] +tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] + +[[package]] +name = "tenacity" +version = "8.2.3" +description = "Retry code until it succeeds" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tenacity-8.2.3-py3-none-any.whl", hash = "sha256:ce510e327a630c9e1beaf17d42e6ffacc88185044ad85cf74c0a8887c6a0f88c"}, + {file = "tenacity-8.2.3.tar.gz", hash = "sha256:5398ef0d78e63f40007c1fb4c0bff96e1911394d2fa8d194f77619c05ff6cc8a"}, +] + +[package.extras] +doc = ["reno", "sphinx", "tornado (>=4.5)"] + +[[package]] +name = "terminado" +version = "0.18.0" +description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." +optional = false +python-versions = ">=3.8" +files = [ + {file = "terminado-0.18.0-py3-none-any.whl", hash = "sha256:87b0d96642d0fe5f5abd7783857b9cab167f221a39ff98e3b9619a788a3c0f2e"}, + {file = "terminado-0.18.0.tar.gz", hash = "sha256:1ea08a89b835dd1b8c0c900d92848147cef2537243361b2e3f4dc15df9b6fded"}, +] + +[package.dependencies] +ptyprocess = {version = "*", markers = "os_name != \"nt\""} +pywinpty = {version = ">=1.1.0", markers = "os_name == \"nt\""} +tornado = ">=6.1.0" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["pre-commit", "pytest (>=7.0)", "pytest-timeout"] +typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] + +[[package]] +name = "threadpoolctl" +version = "3.3.0" +description = "threadpoolctl" +optional = false +python-versions = ">=3.8" +files = [ + {file = "threadpoolctl-3.3.0-py3-none-any.whl", hash = "sha256:6155be1f4a39f31a18ea70f94a77e0ccd57dced08122ea61109e7da89883781e"}, + {file = "threadpoolctl-3.3.0.tar.gz", hash = "sha256:5dac632b4fa2d43f42130267929af3ba01399ef4bd1882918e92dbc30365d30c"}, +] + +[[package]] +name = "tiktoken" +version = "0.6.0" +description = "tiktoken is a fast BPE tokeniser for use with OpenAI's models" +optional = false +python-versions = ">=3.8" +files = [ + {file = "tiktoken-0.6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:277de84ccd8fa12730a6b4067456e5cf72fef6300bea61d506c09e45658d41ac"}, + {file = "tiktoken-0.6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9c44433f658064463650d61387623735641dcc4b6c999ca30bc0f8ba3fccaf5c"}, + {file = "tiktoken-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afb9a2a866ae6eef1995ab656744287a5ac95acc7e0491c33fad54d053288ad3"}, + {file = "tiktoken-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c62c05b3109fefca26fedb2820452a050074ad8e5ad9803f4652977778177d9f"}, + {file = "tiktoken-0.6.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0ef917fad0bccda07bfbad835525bbed5f3ab97a8a3e66526e48cdc3e7beacf7"}, + {file = "tiktoken-0.6.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e095131ab6092d0769a2fda85aa260c7c383072daec599ba9d8b149d2a3f4d8b"}, + {file = "tiktoken-0.6.0-cp310-cp310-win_amd64.whl", hash = "sha256:05b344c61779f815038292a19a0c6eb7098b63c8f865ff205abb9ea1b656030e"}, + {file = "tiktoken-0.6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cefb9870fb55dca9e450e54dbf61f904aab9180ff6fe568b61f4db9564e78871"}, + {file = "tiktoken-0.6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:702950d33d8cabc039845674107d2e6dcabbbb0990ef350f640661368df481bb"}, + {file = "tiktoken-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8d49d076058f23254f2aff9af603863c5c5f9ab095bc896bceed04f8f0b013a"}, + {file = "tiktoken-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:430bc4e650a2d23a789dc2cdca3b9e5e7eb3cd3935168d97d43518cbb1f9a911"}, + {file = "tiktoken-0.6.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:293cb8669757301a3019a12d6770bd55bec38a4d3ee9978ddbe599d68976aca7"}, + {file = "tiktoken-0.6.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7bd1a288b7903aadc054b0e16ea78e3171f70b670e7372432298c686ebf9dd47"}, + {file = "tiktoken-0.6.0-cp311-cp311-win_amd64.whl", hash = "sha256:ac76e000183e3b749634968a45c7169b351e99936ef46f0d2353cd0d46c3118d"}, + {file = "tiktoken-0.6.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:17cc8a4a3245ab7d935c83a2db6bb71619099d7284b884f4b2aea4c74f2f83e3"}, + {file = "tiktoken-0.6.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:284aebcccffe1bba0d6571651317df6a5b376ff6cfed5aeb800c55df44c78177"}, + {file = "tiktoken-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c1a3a5d33846f8cd9dd3b7897c1d45722f48625a587f8e6f3d3e85080559be8"}, + {file = "tiktoken-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6318b2bb2337f38ee954fd5efa82632c6e5ced1d52a671370fa4b2eff1355e91"}, + {file = "tiktoken-0.6.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f5f0f2ed67ba16373f9a6013b68da298096b27cd4e1cf276d2d3868b5c7efd1"}, + {file = "tiktoken-0.6.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:75af4c0b16609c2ad02581f3cdcd1fb698c7565091370bf6c0cf8624ffaba6dc"}, + {file = "tiktoken-0.6.0-cp312-cp312-win_amd64.whl", hash = "sha256:45577faf9a9d383b8fd683e313cf6df88b6076c034f0a16da243bb1c139340c3"}, + {file = "tiktoken-0.6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7c1492ab90c21ca4d11cef3a236ee31a3e279bb21b3fc5b0e2210588c4209e68"}, + {file = "tiktoken-0.6.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e2b380c5b7751272015400b26144a2bab4066ebb8daae9c3cd2a92c3b508fe5a"}, + {file = "tiktoken-0.6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9f497598b9f58c99cbc0eb764b4a92272c14d5203fc713dd650b896a03a50ad"}, + {file = "tiktoken-0.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e65e8bd6f3f279d80f1e1fbd5f588f036b9a5fa27690b7f0cc07021f1dfa0839"}, + {file = "tiktoken-0.6.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5f1495450a54e564d236769d25bfefbf77727e232d7a8a378f97acddee08c1ae"}, + {file = "tiktoken-0.6.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6c4e4857d99f6fb4670e928250835b21b68c59250520a1941618b5b4194e20c3"}, + {file = "tiktoken-0.6.0-cp38-cp38-win_amd64.whl", hash = "sha256:168d718f07a39b013032741867e789971346df8e89983fe3c0ef3fbd5a0b1cb9"}, + {file = "tiktoken-0.6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:47fdcfe11bd55376785a6aea8ad1db967db7f66ea81aed5c43fad497521819a4"}, + {file = "tiktoken-0.6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fb7d2ccbf1a7784810aff6b80b4012fb42c6fc37eaa68cb3b553801a5cc2d1fc"}, + {file = "tiktoken-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ccb7a111ee76af5d876a729a347f8747d5ad548e1487eeea90eaf58894b3138"}, + {file = "tiktoken-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2048e1086b48e3c8c6e2ceeac866561374cd57a84622fa49a6b245ffecb7744"}, + {file = "tiktoken-0.6.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:07f229a5eb250b6403a61200199cecf0aac4aa23c3ecc1c11c1ca002cbb8f159"}, + {file = "tiktoken-0.6.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:432aa3be8436177b0db5a2b3e7cc28fd6c693f783b2f8722539ba16a867d0c6a"}, + {file = "tiktoken-0.6.0-cp39-cp39-win_amd64.whl", hash = "sha256:8bfe8a19c8b5c40d121ee7938cd9c6a278e5b97dc035fd61714b4f0399d2f7a1"}, + {file = "tiktoken-0.6.0.tar.gz", hash = "sha256:ace62a4ede83c75b0374a2ddfa4b76903cf483e9cb06247f566be3bf14e6beed"}, +] + +[package.dependencies] +regex = ">=2022.1.18" +requests = ">=2.26.0" + +[package.extras] +blobfile = ["blobfile (>=2)"] + +[[package]] +name = "tinycss2" +version = "1.2.1" +description = "A tiny CSS parser" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tinycss2-1.2.1-py3-none-any.whl", hash = "sha256:2b80a96d41e7c3914b8cda8bc7f705a4d9c49275616e886103dd839dfc847847"}, + {file = "tinycss2-1.2.1.tar.gz", hash = "sha256:8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627"}, +] + +[package.dependencies] +webencodings = ">=0.4" + +[package.extras] +doc = ["sphinx", "sphinx_rtd_theme"] +test = ["flake8", "isort", "pytest"] + +[[package]] +name = "tokenize-rt" +version = "5.2.0" +description = "A wrapper around the stdlib `tokenize` which roundtrips." +optional = false +python-versions = ">=3.8" +files = [ + {file = "tokenize_rt-5.2.0-py2.py3-none-any.whl", hash = "sha256:b79d41a65cfec71285433511b50271b05da3584a1da144a0752e9c621a285289"}, + {file = "tokenize_rt-5.2.0.tar.gz", hash = "sha256:9fe80f8a5c1edad2d3ede0f37481cc0cc1538a2f442c9c2f9e4feacd2792d054"}, +] + +[[package]] +name = "tomli" +version = "2.0.1" +description = "A lil' TOML parser" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, +] + +[[package]] +name = "tomlkit" +version = "0.12.3" +description = "Style preserving TOML library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomlkit-0.12.3-py3-none-any.whl", hash = "sha256:b0a645a9156dc7cb5d3a1f0d4bab66db287fcb8e0430bdd4664a095ea16414ba"}, + {file = "tomlkit-0.12.3.tar.gz", hash = "sha256:75baf5012d06501f07bee5bf8e801b9f343e7aac5a92581f20f80ce632e6b5a4"}, +] + +[[package]] +name = "tornado" +version = "6.4" +description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." +optional = false +python-versions = ">= 3.8" +files = [ + {file = "tornado-6.4-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:02ccefc7d8211e5a7f9e8bc3f9e5b0ad6262ba2fbb683a6443ecc804e5224ce0"}, + {file = "tornado-6.4-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:27787de946a9cffd63ce5814c33f734c627a87072ec7eed71f7fc4417bb16263"}, + {file = "tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7894c581ecdcf91666a0912f18ce5e757213999e183ebfc2c3fdbf4d5bd764e"}, + {file = "tornado-6.4-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e43bc2e5370a6a8e413e1e1cd0c91bedc5bd62a74a532371042a18ef19e10579"}, + {file = "tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f0251554cdd50b4b44362f73ad5ba7126fc5b2c2895cc62b14a1c2d7ea32f212"}, + {file = "tornado-6.4-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:fd03192e287fbd0899dd8f81c6fb9cbbc69194d2074b38f384cb6fa72b80e9c2"}, + {file = "tornado-6.4-cp38-abi3-musllinux_1_1_i686.whl", hash = "sha256:88b84956273fbd73420e6d4b8d5ccbe913c65d31351b4c004ae362eba06e1f78"}, + {file = "tornado-6.4-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:71ddfc23a0e03ef2df1c1397d859868d158c8276a0603b96cf86892bff58149f"}, + {file = "tornado-6.4-cp38-abi3-win32.whl", hash = "sha256:6f8a6c77900f5ae93d8b4ae1196472d0ccc2775cc1dfdc9e7727889145c45052"}, + {file = "tornado-6.4-cp38-abi3-win_amd64.whl", hash = "sha256:10aeaa8006333433da48dec9fe417877f8bcc21f48dda8d661ae79da357b2a63"}, + {file = "tornado-6.4.tar.gz", hash = "sha256:72291fa6e6bc84e626589f1c29d90a5a6d593ef5ae68052ee2ef000dfd273dee"}, +] + +[[package]] +name = "tqdm" +version = "4.66.2" +description = "Fast, Extensible Progress Meter" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tqdm-4.66.2-py3-none-any.whl", hash = "sha256:1ee4f8a893eb9bef51c6e35730cebf234d5d0b6bd112b0271e10ed7c24a02bd9"}, + {file = "tqdm-4.66.2.tar.gz", hash = "sha256:6cd52cdf0fef0e0f543299cfc96fec90d7b8a7e88745f411ec33eb44d5ed3531"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "platform_system == \"Windows\""} + +[package.extras] +dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] +notebook = ["ipywidgets (>=6)"] +slack = ["slack-sdk"] +telegram = ["requests"] + +[[package]] +name = "traitlets" +version = "5.14.1" +description = "Traitlets Python configuration system" +optional = false +python-versions = ">=3.8" +files = [ + {file = "traitlets-5.14.1-py3-none-any.whl", hash = "sha256:2e5a030e6eff91737c643231bfcf04a65b0132078dad75e4936700b213652e74"}, + {file = "traitlets-5.14.1.tar.gz", hash = "sha256:8585105b371a04b8316a43d5ce29c098575c2e477850b62b848b964f1444527e"}, +] + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0,<7.5)", "pytest-mock", "pytest-mypy-testing"] + +[[package]] +name = "tree-sitter" +version = "0.20.4" +description = "Python bindings for the Tree-Sitter parsing library" +optional = false +python-versions = ">=3.3" +files = [ + {file = "tree_sitter-0.20.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:c259b9bcb596e54f54713eb3951226fc834d65289940f4bfdcdf519f08e8e876"}, + {file = "tree_sitter-0.20.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:88da7e2e4c69881cd63916cc24ae0b809f96aae331da45b418ae6b2d1ed2ca19"}, + {file = "tree_sitter-0.20.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:66a68b156ba131e9d8dff4a1f72037f4b368cc50c58f18905a91743ae1d1c795"}, + {file = "tree_sitter-0.20.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae28e25d551f406807011487bdfb9728041e656b30b554fa7f3391ab64ed69f9"}, + {file = "tree_sitter-0.20.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36b10c9c69e825ba65cf9b0f77668bf33e70d2a5764b64ad6f133f8cc9220f09"}, + {file = "tree_sitter-0.20.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7c18c64ddd44b75b7e1660b9793753eda427e4b145b6216d4b2d2e9b200c74f2"}, + {file = "tree_sitter-0.20.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e9e9e594bbefb76ad9ea256f5c87eba7591b4758854d3df83ce4df415933a006"}, + {file = "tree_sitter-0.20.4-cp310-cp310-win32.whl", hash = "sha256:b4755229dc18644fe48bcab974bde09b171fcb6ef625d3cb5ece5c6198f4223e"}, + {file = "tree_sitter-0.20.4-cp310-cp310-win_amd64.whl", hash = "sha256:f792684cee8a46d9194d9f4223810e54ccc704470c5777538d59fbde0a4c91bf"}, + {file = "tree_sitter-0.20.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9d22ee75f45836554ee6a11e50dd8f9827941e67c49fce9a0790245b899811a9"}, + {file = "tree_sitter-0.20.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2a0ffd76dd991ba745bb5d0ba1d583bec85726d3ddef8c9685dc8636a619adde"}, + {file = "tree_sitter-0.20.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:060d4e5b803be0975f1ac46e54a292eab0701296ccd912f6cdac3f7331e29143"}, + {file = "tree_sitter-0.20.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:822e02366dbf223697b2b56b8f91aa5b60571f9fe7c998988a381db1c69604e9"}, + {file = "tree_sitter-0.20.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:527ca72c6a8f60fa719af37fa86f58b7ad0e07b8f74d1c1c7e926c5c888a7e6b"}, + {file = "tree_sitter-0.20.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a418ca71309ea7052e076f08d623f33f58eae01a8e8cdc1e6d3a01b5b8ddebfe"}, + {file = "tree_sitter-0.20.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:08c3ba2561b61a83c28ca06a0bce2a5ffcfb6b39f9d27a45e5ebd9cad2bedb7f"}, + {file = "tree_sitter-0.20.4-cp311-cp311-win32.whl", hash = "sha256:8d04c75a389b2de94952d602264852acff8cd3ed1ccf8a2492a080973d5ddd58"}, + {file = "tree_sitter-0.20.4-cp311-cp311-win_amd64.whl", hash = "sha256:ba9215c0e7529d9eb370528e5d99b7389d14a7eae94f07d14fa9dab18f267c62"}, + {file = "tree_sitter-0.20.4-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c4c1af5ed4306071d30970c83ec882520a7bf5d8053996dbc4aa5c59238d4990"}, + {file = "tree_sitter-0.20.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9d70bfa550cf22c9cea9b3c0d18b889fc4f2a7e9dcf1d6cc93f49fa9d4a94954"}, + {file = "tree_sitter-0.20.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6de537bca0641775d8d175d37303d54998980fc0d997dd9aa89e16b415bf0cc3"}, + {file = "tree_sitter-0.20.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b1c0f8c0e3e50267566f5116cdceedf4e23e8c08b55ef3becbe954a11b16e84"}, + {file = "tree_sitter-0.20.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef2ee6d9bb8e21713949e5ff769ed670fe1217f95b7eeb6c675788438c1e6e"}, + {file = "tree_sitter-0.20.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:b6fd1c881ab0de5faa67168db2d001eee32be5482cb4e0b21b217689a05b6fe4"}, + {file = "tree_sitter-0.20.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bf47047420021d50aec529cb66387c90562350b499ddf56ecef1fc8255439e30"}, + {file = "tree_sitter-0.20.4-cp312-cp312-win32.whl", hash = "sha256:c16b48378041fc9702b6aa3480f2ffa49ca8ea58141a862acd569e5a0679655f"}, + {file = "tree_sitter-0.20.4-cp312-cp312-win_amd64.whl", hash = "sha256:973e871167079a1b1d7304d361449253efbe2a6974728ad563cf407bd02ddccb"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:9d33a55598dd18a4d8b869a3417de82a4812c3a7dc7e61cb025ece3e9c3e4e96"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cee6955c2c97fc5927a41c7a8b06647c4b4d9b99b8a1581bf1183435c8cec3e"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5022bea67e479ad212be7c05b983a72e297a013efb4e8ea5b5b4d7da79a9fdef"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:640f60a5b966f0990338f1bf559455c3dcb822bc4329d82b3d42f32a48374dfe"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:0e83f641fe6f27d91bd4d259fff5d35de1567d3f581b9efe9bbd5be50fe4ddc7"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-win32.whl", hash = "sha256:ce6a85027c66fa3f09d482cc6d41927ea40955f7f33b86aedd26dd932709a2c9"}, + {file = "tree_sitter-0.20.4-cp36-cp36m-win_amd64.whl", hash = "sha256:fe10779347a6c067af29cb37fd4b75fa96c5cb68f587cc9530b70fe3f2a51a55"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:28d5f84e34e276887e3a240b60906ca7e2b51e975f3145c3149ceed977a69508"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c913b65cbe10996116988ac436748f24883b5097e58274223e89bb2c5d1bb1a"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ecaed46241e071752195a628bb97d2b740f2fde9e34f8a74456a4ea8bb26df88"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b641e88a97eab002a1736d93ef5a4beac90ea4fd6e25affd1831319b99f456c9"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:327c40f439c6155e4eee54c4657e4701a04f5f4816d9defdcb836bf65bf83d21"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-win32.whl", hash = "sha256:1b7c1d95f006b3de42fbf4045bd00c273d113e372fcb6a5378e74ed120c12032"}, + {file = "tree_sitter-0.20.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6140d037239a41046f5d34fba5e0374ee697adb4b48b90579c618b5402781c11"}, + {file = "tree_sitter-0.20.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:f42fd1104efaad8151370f1936e2a488b7337a5d24544a9ab59ba4c4010b1272"}, + {file = "tree_sitter-0.20.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7859717c5d62ee386b3d036cab8ed0f88f8c027b6b4ae476a55a8c5fb8aab713"}, + {file = "tree_sitter-0.20.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:fdd361fe1cc68db68b4d85165641275e34b86cc26b2bab932790204fa14824dc"}, + {file = "tree_sitter-0.20.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b8d7539075606027b67764543463ff2bc4e52f4158ef6dc419c9f5625aa5383"}, + {file = "tree_sitter-0.20.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78e76307f05aca6cde72f3307b4d53701f34ae45f2248ceb83d1626051e201fd"}, + {file = "tree_sitter-0.20.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dd8c352f4577f61098d06cf3feb7fd214259f41b5036b81003860ed54d16b448"}, + {file = "tree_sitter-0.20.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:281f3e5382d1bd7fccc88d1afe68c915565bc24f8b8dd4844079d46c7815b8a7"}, + {file = "tree_sitter-0.20.4-cp38-cp38-win32.whl", hash = "sha256:6a77ac3cdcddd80cdd1fd394318bff99f94f37e08d235aaefccb87e1224946e5"}, + {file = "tree_sitter-0.20.4-cp38-cp38-win_amd64.whl", hash = "sha256:8eee8adf54033dc48eab84b040f4d7b32355a964c4ae0aae5dfbdc4dbc3364ca"}, + {file = "tree_sitter-0.20.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e89f6508e30fce05e2c724725d022db30d877817b9d64f933506ffb3a3f4a2c2"}, + {file = "tree_sitter-0.20.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7fb6286bb1fae663c45ff0700ec88fb9b50a81eed2bae8a291f95fcf8cc19547"}, + {file = "tree_sitter-0.20.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:11e93f8b4bbae04070416a82257a7ab2eb0afb76e093ae3ea73bd63b792f6846"}, + {file = "tree_sitter-0.20.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8250725c5f78929aeb2c71db5dca76f1ef448389ca16f9439161f90978bb8478"}, + {file = "tree_sitter-0.20.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d404a8ca9de9b0843844f0cd4d423f46bc46375ab8afb63b1d8ec01201457ac8"}, + {file = "tree_sitter-0.20.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0f2422c9ee70ba972dfc3943746e6cf7fc03725a866908950245bda9ccfc7301"}, + {file = "tree_sitter-0.20.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:21a937942e4729abbe778a609d2c218574436cb351c36fba89ef3c8c6066ec78"}, + {file = "tree_sitter-0.20.4-cp39-cp39-win32.whl", hash = "sha256:427a9a39360cc1816e28f8182550e478e4ba983595a2565ab9dfe32ea1b03fd7"}, + {file = "tree_sitter-0.20.4-cp39-cp39-win_amd64.whl", hash = "sha256:7095bb9aff297fa9c6026bf8914fd295997d714d1a6ee9a1edf7282c772f9f64"}, + {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:859260b90f0e3867ae840e39f54e830f607b3bc531bc21deeeeaa8a30cbb89ad"}, + {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0dfc14be73cf46126660a3aecdd0396e69562ad1a902245225ca7bd29649594e"}, + {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec46355bf3ff23f54d5e365871ffd3e05cfbc65d1b36a8be7c0bcbda30a1d43"}, + {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:d933a942fde39876b99c36f12aa3764e4a555ae9366c10ce6cca8c16341c1bbf"}, + {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a7eec3b55135fe851a38fa248c9fd75fc3d58ceb6e1865b795e416e4d598c2a1"}, + {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfc76225529ee14a53e84413480ce81ec3c44eaa0455c140e961c90ac3118ead"}, + {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ccf0396e47efffc0b528959a8f2e2346a98297579f867e9e1834c2aad4be829c"}, + {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:a15fbabd3bc8e29c48289c156d743e69f5ec72bb125cf44f7adbdaa1937c3da6"}, + {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:36f8adf2126f496cf376b6e4b707cba061c25beb17841727eef6f0e083e53e1f"}, + {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:841efb40c116ab0a066924925409a8a4dcffeb39a151c0b2a1c2abe56ad4fb42"}, + {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2051e8a70fd8426f27a43dad71d11929a62ce30a9b1eb65bba0ed79e82481592"}, + {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:99a3c2824d4cfcffd9f961176891426bde2cb36ece5280c61480be93319c23c4"}, + {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:72830dc85a10430eca3d56739b7efcd7a05459c8d425f08c1aee6179ab7f13a9"}, + {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4992dd226055b6cd0a4f5661c66b799a73d3eff716302e0f7ab06594ee12d49f"}, + {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a66d95bbf92175cdc295d6d77f330942811f02e3aaf3fc64431cb749683b2f7d"}, + {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a25b1087e4f7825b2458dacf5f4b0be2938f78e850e822edca1ff4994b56081a"}, + {file = "tree_sitter-0.20.4.tar.gz", hash = "sha256:6adb123e2f3e56399bbf2359924633c882cc40ee8344885200bca0922f713be5"}, +] + +[package.dependencies] +setuptools = {version = ">=60.0.0", markers = "python_version >= \"3.12\""} + +[[package]] +name = "tree-sitter-languages" +version = "1.10.2" +description = "Binary Python wheels for all tree sitter languages." +optional = false +python-versions = "*" +files = [ + {file = "tree_sitter_languages-1.10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5580348f0b20233b1d5431fa178ccd3d07423ca4a3275df02a44608fd72344b9"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:103c7466644486b1e9e03850df46fc6aa12f13ca636c74f173270276220ac80b"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d13db84511c6f1a7dc40383b66deafa74dabd8b877e3d65ab253f3719eccafd6"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57adfa32be7e465b54aa72f915f6c78a2b66b227df4f656b5d4fbd1ca7a92b3f"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c6385e033e460ceb8f33f3f940335f422ef2b763700a04f0089391a68b56153"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:dfa3f38cc5381c5aba01dd7494f59b8a9050e82ff6e06e1233e3a0cbae297e3c"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:9f195155acf47f8bc5de7cee46ecd07b2f5697f007ba89435b51ef4c0b953ea5"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2de330e2ac6d7426ca025a3ec0f10d5640c3682c1d0c7702e812dcfb44b58120"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-win32.whl", hash = "sha256:c9731cf745f135d9770eeba9bb4e2ff4dabc107b5ae9b8211e919f6b9100ea6d"}, + {file = "tree_sitter_languages-1.10.2-cp310-cp310-win_amd64.whl", hash = "sha256:6dd75851c41d0c3c4987a9b7692d90fa8848706c23115669d8224ffd6571e357"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7eb7d7542b2091c875fe52719209631fca36f8c10fa66970d2c576ae6a1b8289"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6b41bcb00974b1c8a1800c7f1bb476a1d15a0463e760ee24872f2d53b08ee424"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f370cd7845c6c81df05680d5bd96db8a99d32b56f4728c5d05978911130a853"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a1dc195c88ef4c72607e112a809a69190e096a2e5ebc6201548b3e05fdd169ad"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ae34ac314a7170be24998a0f994c1ac80761d8d4bd126af27ee53a023d3b849"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:01b5742d5f5bd675489486b582bd482215880b26dde042c067f8265a6e925d9c"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:ab1cbc46244d34fd16f21edaa20231b2a57f09f092a06ee3d469f3117e6eb954"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0b1149e7467a4e92b8a70e6005fe762f880f493cf811fc003554b29f04f5e7c8"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-win32.whl", hash = "sha256:049276343962f4696390ee555acc2c1a65873270c66a6cbe5cb0bca83bcdf3c6"}, + {file = "tree_sitter_languages-1.10.2-cp311-cp311-win_amd64.whl", hash = "sha256:7f3fdd468a577f04db3b63454d939e26e360229b53c80361920aa1ebf2cd7491"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c0f4c8b2734c45859edc7fcaaeaab97a074114111b5ba51ab4ec7ed52104763c"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:eecd3c1244ac3425b7a82ba9125b4ddb45d953bbe61de114c0334fd89b7fe782"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15db3c8510bc39a80147ee7421bf4782c15c09581c1dc2237ea89cefbd95b846"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:92c6487a6feea683154d3e06e6db68c30e0ae749a7ce4ce90b9e4e46b78c85c7"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d2f1cd1d1bdd65332f9c2b67d49dcf148cf1ded752851d159ac3e5ee4f4d260"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:976c8039165b8e12f17a01ddee9f4e23ec6e352b165ad29b44d2bf04e2fbe77e"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:dafbbdf16bf668a580902e1620f4baa1913e79438abcce721a50647564c687b9"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1aeabd3d60d6d276b73cd8f3739d595b1299d123cc079a317f1a5b3c5461e2ca"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-win32.whl", hash = "sha256:fab8ee641914098e8933b87ea3d657bea4dd00723c1ee7038b847b12eeeef4f5"}, + {file = "tree_sitter_languages-1.10.2-cp312-cp312-win_amd64.whl", hash = "sha256:5e606430d736367e5787fa5a7a0c5a1ec9b85eded0b3596bbc0d83532a40810b"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:838d5b48a7ed7a17658721952c77fda4570d2a069f933502653b17e15a9c39c9"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:987b3c71b1d278c2889e018ee77b8ee05c384e2e3334dec798f8b611c4ab2d1e"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:faa00abcb2c819027df58472da055d22fa7dfcb77c77413d8500c32ebe24d38b"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e102fbbf02322d9201a86a814e79a9734ac80679fdb9682144479044f401a73"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:8f0b87cf1a7b03174ba18dfd81582be82bfed26803aebfe222bd20e444aba003"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c0f1b9af9cb67f0b942b020da9fdd000aad5e92f2383ae0ba7a330b318d31912"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:5a4076c921f7a4d31e643843de7dfe040b65b63a238a5aa8d31d93aabe6572aa"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-win32.whl", hash = "sha256:fa6391a3a5d83d32db80815161237b67d70576f090ce5f38339206e917a6f8bd"}, + {file = "tree_sitter_languages-1.10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:55649d3f254585a064121513627cf9788c1cfdadbc5f097f33d5ba750685a4c0"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6f85d1edaa2d22d80d4ea5b6d12b95cf3644017b6c227d0d42854439e02e8893"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d78feed4a764ef3141cb54bf00fe94d514d8b6e26e09423e23b4c616fcb7938c"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da1aca27531f9dd5308637d76643372856f0f65d0d28677d1bcf4211e8ed1ad0"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1031ea440dafb72237437d754eff8940153a3b051e3d18932ac25e75ce060a15"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99d3249beaef2c9fe558ecc9a97853c260433a849dcc68266d9770d196c2e102"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:59a4450f262a55148fb7e68681522f0c2a2f6b7d89666312a2b32708d8f416e1"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ce74eab0e430370d5e15a96b6c6205f93405c177a8b2e71e1526643b2fb9bab1"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9b4dd2b6b3d24c85dffe33d6c343448869eaf4f41c19ddba662eb5d65d8808f4"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-win32.whl", hash = "sha256:92d734fb968fe3927a7596d9f0459f81a8fa7b07e16569476b28e27d0d753348"}, + {file = "tree_sitter_languages-1.10.2-cp38-cp38-win_amd64.whl", hash = "sha256:46a13f7d38f2eeb75f7cf127d1201346093748c270d686131f0cbc50e42870a1"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f8c6a936ae99fdd8857e91f86c11c2f5e507ff30631d141d98132bb7ab2c8638"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c283a61423f49cdfa7b5a5dfbb39221e3bd126fca33479cd80749d4d7a6b7349"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76e60be6bdcff923386a54a5edcb6ff33fc38ab0118636a762024fa2bc98de55"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c00069f9575bd831eabcce2cdfab158dde1ed151e7e5614c2d985ff7d78a7de1"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:475ff53203d8a43ccb19bb322fa2fb200d764001cc037793f1fadd714bb343da"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:26fe7c9c412e4141dea87ea4b3592fd12e385465b5bdab106b0d5125754d4f60"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:8fed27319957458340f24fe14daad467cd45021da034eef583519f83113a8c5e"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3657a491a7f96cc75a3568ddd062d25f3be82b6a942c68801a7b226ff7130181"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-win32.whl", hash = "sha256:33f7d584d01a7a3c893072f34cfc64ec031f3cfe57eebc32da2f8ac046e101a7"}, + {file = "tree_sitter_languages-1.10.2-cp39-cp39-win_amd64.whl", hash = "sha256:1b944af3ee729fa70fc8ae82224a9ff597cdb63addea084e0ea2fa2b0ec39bb7"}, +] + +[package.dependencies] +tree-sitter = "*" + +[[package]] +name = "types-deprecated" +version = "1.2.9.20240106" +description = "Typing stubs for Deprecated" +optional = false +python-versions = ">=3.8" +files = [ + {file = "types-Deprecated-1.2.9.20240106.tar.gz", hash = "sha256:afeb819e9a03d0a5795f18c88fe6207c48ed13c639e93281bd9d9b7bb6d34310"}, + {file = "types_Deprecated-1.2.9.20240106-py3-none-any.whl", hash = "sha256:9dcb258493b5be407574ee21e50ddac9e429072d39b576126bf1ac00764fb9a8"}, +] + +[[package]] +name = "types-docutils" +version = "0.20.0.20240201" +description = "Typing stubs for docutils" +optional = false +python-versions = ">=3.8" +files = [ + {file = "types-docutils-0.20.0.20240201.tar.gz", hash = "sha256:ba4bfd4ff6dd19640ba7ab5d93900393a65897880f3650997964a943f4e79a6b"}, + {file = "types_docutils-0.20.0.20240201-py3-none-any.whl", hash = "sha256:79d3bcef235f7c81a63f4f3dcf1d0b138985079bb32d02f5a7d266e1f9f361ba"}, +] + +[[package]] +name = "types-protobuf" +version = "4.24.0.20240129" +description = "Typing stubs for protobuf" +optional = false +python-versions = ">=3.8" +files = [ + {file = "types-protobuf-4.24.0.20240129.tar.gz", hash = "sha256:8a83dd3b9b76a33e08d8636c5daa212ace1396418ed91837635fcd564a624891"}, + {file = "types_protobuf-4.24.0.20240129-py3-none-any.whl", hash = "sha256:23be68cc29f3f5213b5c5878ac0151706182874040e220cfb11336f9ee642ead"}, +] + +[[package]] +name = "types-pyopenssl" +version = "24.0.0.20240130" +description = "Typing stubs for pyOpenSSL" +optional = false +python-versions = ">=3.8" +files = [ + {file = "types-pyOpenSSL-24.0.0.20240130.tar.gz", hash = "sha256:c812e5c1c35249f75ef5935708b2a997d62abf9745be222e5f94b9595472ab25"}, + {file = "types_pyOpenSSL-24.0.0.20240130-py3-none-any.whl", hash = "sha256:24a255458b5b8a7fca8139cf56f2a8ad5a4f1a5f711b73a5bb9cb50dc688fab5"}, +] + +[package.dependencies] +cryptography = ">=35.0.0" + +[[package]] +name = "types-python-dateutil" +version = "2.8.19.20240106" +description = "Typing stubs for python-dateutil" +optional = false +python-versions = ">=3.8" +files = [ + {file = "types-python-dateutil-2.8.19.20240106.tar.gz", hash = "sha256:1f8db221c3b98e6ca02ea83a58371b22c374f42ae5bbdf186db9c9a76581459f"}, + {file = "types_python_dateutil-2.8.19.20240106-py3-none-any.whl", hash = "sha256:efbbdc54590d0f16152fa103c9879c7d4a00e82078f6e2cf01769042165acaa2"}, +] + +[[package]] +name = "types-pyyaml" +version = "6.0.12.12" +description = "Typing stubs for PyYAML" +optional = false +python-versions = "*" +files = [ + {file = "types-PyYAML-6.0.12.12.tar.gz", hash = "sha256:334373d392fde0fdf95af5c3f1661885fa10c52167b14593eb856289e1855062"}, + {file = "types_PyYAML-6.0.12.12-py3-none-any.whl", hash = "sha256:c05bc6c158facb0676674b7f11fe3960db4f389718e19e62bd2b84d6205cfd24"}, +] + +[[package]] +name = "types-redis" +version = "4.5.5.0" +description = "Typing stubs for redis" +optional = false +python-versions = "*" +files = [ + {file = "types-redis-4.5.5.0.tar.gz", hash = "sha256:26547d91f011a4024375d9216cd4d917b4678c984201d46f72c604526c138523"}, + {file = "types_redis-4.5.5.0-py3-none-any.whl", hash = "sha256:c7132e0cedeb52a83d20138c0440721bfae89cd2027c1ef57a294b56dfde4ee8"}, +] + +[package.dependencies] +cryptography = ">=35.0.0" +types-pyOpenSSL = "*" + +[[package]] +name = "types-requests" +version = "2.28.11.8" +description = "Typing stubs for requests" +optional = false +python-versions = "*" +files = [ + {file = "types-requests-2.28.11.8.tar.gz", hash = "sha256:e67424525f84adfbeab7268a159d3c633862dafae15c5b19547ce1b55954f0a3"}, + {file = "types_requests-2.28.11.8-py3-none-any.whl", hash = "sha256:61960554baca0008ae7e2db2bd3b322ca9a144d3e80ce270f5fb640817e40994"}, +] + +[package.dependencies] +types-urllib3 = "<1.27" + +[[package]] +name = "types-setuptools" +version = "67.1.0.0" +description = "Typing stubs for setuptools" +optional = false +python-versions = "*" +files = [ + {file = "types-setuptools-67.1.0.0.tar.gz", hash = "sha256:162a39d22e3a5eb802197c84f16b19e798101bbd33d9437837fbb45627da5627"}, + {file = "types_setuptools-67.1.0.0-py3-none-any.whl", hash = "sha256:5bd7a10d93e468bfcb10d24cb8ea5e12ac4f4ac91267293959001f1448cf0619"}, +] + +[package.dependencies] +types-docutils = "*" + +[[package]] +name = "types-urllib3" +version = "1.26.25.14" +description = "Typing stubs for urllib3" +optional = false +python-versions = "*" +files = [ + {file = "types-urllib3-1.26.25.14.tar.gz", hash = "sha256:229b7f577c951b8c1b92c1bc2b2fdb0b49847bd2af6d1cc2a2e3dd340f3bda8f"}, + {file = "types_urllib3-1.26.25.14-py3-none-any.whl", hash = "sha256:9683bbb7fb72e32bfe9d2be6e04875fbe1b3eeec3cbb4ea231435aa7fd6b4f0e"}, +] + +[[package]] +name = "typing-extensions" +version = "4.10.0" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +files = [ + {file = "typing_extensions-4.10.0-py3-none-any.whl", hash = "sha256:69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"}, + {file = "typing_extensions-4.10.0.tar.gz", hash = "sha256:b0abd7c89e8fb96f98db18d86106ff1d90ab692004eb746cf6eda2682f91b3cb"}, +] + +[[package]] +name = "typing-inspect" +version = "0.9.0" +description = "Runtime inspection utilities for typing module." +optional = false +python-versions = "*" +files = [ + {file = "typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f"}, + {file = "typing_inspect-0.9.0.tar.gz", hash = "sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78"}, +] + +[package.dependencies] +mypy-extensions = ">=0.3.0" +typing-extensions = ">=3.7.4" + +[[package]] +name = "tzdata" +version = "2024.1" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2024.1-py2.py3-none-any.whl", hash = "sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252"}, + {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, +] + +[[package]] +name = "umap-learn" +version = "0.5.5" +description = "Uniform Manifold Approximation and Projection" +optional = false +python-versions = "*" +files = [ + {file = "umap-learn-0.5.5.tar.gz", hash = "sha256:c54d607364413eade968b73ba07c8b3ea14412817f53cd07b6f720ac957293c4"}, +] + +[package.dependencies] +numba = ">=0.51.2" +numpy = ">=1.17" +pynndescent = ">=0.5" +scikit-learn = ">=0.22" +scipy = ">=1.3.1" +tqdm = "*" + +[package.extras] +parametric-umap = ["tensorflow (>=2.1)", "tensorflow-probability (>=0.10)"] +plot = ["bokeh", "colorcet", "datashader", "holoviews", "matplotlib", "pandas", "scikit-image", "seaborn"] +tbb = ["tbb (>=2019.0)"] + +[[package]] +name = "uri-template" +version = "1.3.0" +description = "RFC 6570 URI Template Processor" +optional = false +python-versions = ">=3.7" +files = [ + {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"}, + {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"}, +] + +[package.extras] +dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-modern-annotations", "flake8-noqa", "flake8-pyproject", "flake8-requirements", "flake8-typechecking-import", "flake8-use-fstring", "mypy", "pep8-naming", "types-PyYAML"] + +[[package]] +name = "urllib3" +version = "2.2.1" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.8" +files = [ + {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, + {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "virtualenv" +version = "20.25.1" +description = "Virtual Python Environment builder" +optional = false +python-versions = ">=3.7" +files = [ + {file = "virtualenv-20.25.1-py3-none-any.whl", hash = "sha256:961c026ac520bac5f69acb8ea063e8a4f071bcc9457b9c1f28f6b085c511583a"}, + {file = "virtualenv-20.25.1.tar.gz", hash = "sha256:e08e13ecdca7a0bd53798f356d5831434afa5b07b93f0abdf0797b7a06ffe197"}, +] + +[package.dependencies] +distlib = ">=0.3.7,<1" +filelock = ">=3.12.2,<4" +platformdirs = ">=3.9.1,<5" + +[package.extras] +docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] +test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] + +[[package]] +name = "wcwidth" +version = "0.2.13" +description = "Measures the displayed width of unicode strings in a terminal" +optional = false +python-versions = "*" +files = [ + {file = "wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859"}, + {file = "wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5"}, +] + +[[package]] +name = "webcolors" +version = "1.13" +description = "A library for working with the color formats defined by HTML and CSS." +optional = false +python-versions = ">=3.7" +files = [ + {file = "webcolors-1.13-py3-none-any.whl", hash = "sha256:29bc7e8752c0a1bd4a1f03c14d6e6a72e93d82193738fa860cbff59d0fcc11bf"}, + {file = "webcolors-1.13.tar.gz", hash = "sha256:c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a"}, +] + +[package.extras] +docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] +tests = ["pytest", "pytest-cov"] + +[[package]] +name = "webencodings" +version = "0.5.1" +description = "Character encoding aliases for legacy web content" +optional = false +python-versions = "*" +files = [ + {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, + {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, +] + +[[package]] +name = "websocket-client" +version = "1.7.0" +description = "WebSocket client for Python with low level API options" +optional = false +python-versions = ">=3.8" +files = [ + {file = "websocket-client-1.7.0.tar.gz", hash = "sha256:10e511ea3a8c744631d3bd77e61eb17ed09304c413ad42cf6ddfa4c7787e8fe6"}, + {file = "websocket_client-1.7.0-py3-none-any.whl", hash = "sha256:f4c3d22fec12a2461427a29957ff07d35098ee2d976d3ba244e688b8b4057588"}, +] + +[package.extras] +docs = ["Sphinx (>=6.0)", "sphinx-rtd-theme (>=1.1.0)"] +optional = ["python-socks", "wsaccel"] +test = ["websockets"] + +[[package]] +name = "widgetsnbextension" +version = "4.0.10" +description = "Jupyter interactive widgets for Jupyter Notebook" +optional = false +python-versions = ">=3.7" +files = [ + {file = "widgetsnbextension-4.0.10-py3-none-any.whl", hash = "sha256:d37c3724ec32d8c48400a435ecfa7d3e259995201fbefa37163124a9fcb393cc"}, + {file = "widgetsnbextension-4.0.10.tar.gz", hash = "sha256:64196c5ff3b9a9183a8e699a4227fb0b7002f252c814098e66c4d1cd0644688f"}, +] + +[[package]] +name = "wrapt" +version = "1.16.0" +description = "Module for decorators, wrappers and monkey patching." +optional = false +python-versions = ">=3.6" +files = [ + {file = "wrapt-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ffa565331890b90056c01db69c0fe634a776f8019c143a5ae265f9c6bc4bd6d4"}, + {file = "wrapt-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e4fdb9275308292e880dcbeb12546df7f3e0f96c6b41197e0cf37d2826359020"}, + {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb2dee3874a500de01c93d5c71415fcaef1d858370d405824783e7a8ef5db440"}, + {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a88e6010048489cda82b1326889ec075a8c856c2e6a256072b28eaee3ccf487"}, + {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac83a914ebaf589b69f7d0a1277602ff494e21f4c2f743313414378f8f50a4cf"}, + {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:73aa7d98215d39b8455f103de64391cb79dfcad601701a3aa0dddacf74911d72"}, + {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:807cc8543a477ab7422f1120a217054f958a66ef7314f76dd9e77d3f02cdccd0"}, + {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bf5703fdeb350e36885f2875d853ce13172ae281c56e509f4e6eca049bdfb136"}, + {file = "wrapt-1.16.0-cp310-cp310-win32.whl", hash = "sha256:f6b2d0c6703c988d334f297aa5df18c45e97b0af3679bb75059e0e0bd8b1069d"}, + {file = "wrapt-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:decbfa2f618fa8ed81c95ee18a387ff973143c656ef800c9f24fb7e9c16054e2"}, + {file = "wrapt-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1a5db485fe2de4403f13fafdc231b0dbae5eca4359232d2efc79025527375b09"}, + {file = "wrapt-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:75ea7d0ee2a15733684badb16de6794894ed9c55aa5e9903260922f0482e687d"}, + {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a452f9ca3e3267cd4d0fcf2edd0d035b1934ac2bd7e0e57ac91ad6b95c0c6389"}, + {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43aa59eadec7890d9958748db829df269f0368521ba6dc68cc172d5d03ed8060"}, + {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:72554a23c78a8e7aa02abbd699d129eead8b147a23c56e08d08dfc29cfdddca1"}, + {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d2efee35b4b0a347e0d99d28e884dfd82797852d62fcd7ebdeee26f3ceb72cf3"}, + {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:6dcfcffe73710be01d90cae08c3e548d90932d37b39ef83969ae135d36ef3956"}, + {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:eb6e651000a19c96f452c85132811d25e9264d836951022d6e81df2fff38337d"}, + {file = "wrapt-1.16.0-cp311-cp311-win32.whl", hash = "sha256:66027d667efe95cc4fa945af59f92c5a02c6f5bb6012bff9e60542c74c75c362"}, + {file = "wrapt-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:aefbc4cb0a54f91af643660a0a150ce2c090d3652cf4052a5397fb2de549cd89"}, + {file = "wrapt-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5eb404d89131ec9b4f748fa5cfb5346802e5ee8836f57d516576e61f304f3b7b"}, + {file = "wrapt-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9090c9e676d5236a6948330e83cb89969f433b1943a558968f659ead07cb3b36"}, + {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:94265b00870aa407bd0cbcfd536f17ecde43b94fb8d228560a1e9d3041462d73"}, + {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2058f813d4f2b5e3a9eb2eb3faf8f1d99b81c3e51aeda4b168406443e8ba809"}, + {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98b5e1f498a8ca1858a1cdbffb023bfd954da4e3fa2c0cb5853d40014557248b"}, + {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:14d7dc606219cdd7405133c713f2c218d4252f2a469003f8c46bb92d5d095d81"}, + {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:49aac49dc4782cb04f58986e81ea0b4768e4ff197b57324dcbd7699c5dfb40b9"}, + {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:418abb18146475c310d7a6dc71143d6f7adec5b004ac9ce08dc7a34e2babdc5c"}, + {file = "wrapt-1.16.0-cp312-cp312-win32.whl", hash = "sha256:685f568fa5e627e93f3b52fda002c7ed2fa1800b50ce51f6ed1d572d8ab3e7fc"}, + {file = "wrapt-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:dcdba5c86e368442528f7060039eda390cc4091bfd1dca41e8046af7c910dda8"}, + {file = "wrapt-1.16.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d462f28826f4657968ae51d2181a074dfe03c200d6131690b7d65d55b0f360f8"}, + {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a33a747400b94b6d6b8a165e4480264a64a78c8a4c734b62136062e9a248dd39"}, + {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b3646eefa23daeba62643a58aac816945cadc0afaf21800a1421eeba5f6cfb9c"}, + {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ebf019be5c09d400cf7b024aa52b1f3aeebeff51550d007e92c3c1c4afc2a40"}, + {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:0d2691979e93d06a95a26257adb7bfd0c93818e89b1406f5a28f36e0d8c1e1fc"}, + {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:1acd723ee2a8826f3d53910255643e33673e1d11db84ce5880675954183ec47e"}, + {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:bc57efac2da352a51cc4658878a68d2b1b67dbe9d33c36cb826ca449d80a8465"}, + {file = "wrapt-1.16.0-cp36-cp36m-win32.whl", hash = "sha256:da4813f751142436b075ed7aa012a8778aa43a99f7b36afe9b742d3ed8bdc95e"}, + {file = "wrapt-1.16.0-cp36-cp36m-win_amd64.whl", hash = "sha256:6f6eac2360f2d543cc875a0e5efd413b6cbd483cb3ad7ebf888884a6e0d2e966"}, + {file = "wrapt-1.16.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a0ea261ce52b5952bf669684a251a66df239ec6d441ccb59ec7afa882265d593"}, + {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bd2d7ff69a2cac767fbf7a2b206add2e9a210e57947dd7ce03e25d03d2de292"}, + {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9159485323798c8dc530a224bd3ffcf76659319ccc7bbd52e01e73bd0241a0c5"}, + {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a86373cf37cd7764f2201b76496aba58a52e76dedfaa698ef9e9688bfd9e41cf"}, + {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:73870c364c11f03ed072dda68ff7aea6d2a3a5c3fe250d917a429c7432e15228"}, + {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b935ae30c6e7400022b50f8d359c03ed233d45b725cfdd299462f41ee5ffba6f"}, + {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:db98ad84a55eb09b3c32a96c576476777e87c520a34e2519d3e59c44710c002c"}, + {file = "wrapt-1.16.0-cp37-cp37m-win32.whl", hash = "sha256:9153ed35fc5e4fa3b2fe97bddaa7cbec0ed22412b85bcdaf54aeba92ea37428c"}, + {file = "wrapt-1.16.0-cp37-cp37m-win_amd64.whl", hash = "sha256:66dfbaa7cfa3eb707bbfcd46dab2bc6207b005cbc9caa2199bcbc81d95071a00"}, + {file = "wrapt-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1dd50a2696ff89f57bd8847647a1c363b687d3d796dc30d4dd4a9d1689a706f0"}, + {file = "wrapt-1.16.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:44a2754372e32ab315734c6c73b24351d06e77ffff6ae27d2ecf14cf3d229202"}, + {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e9723528b9f787dc59168369e42ae1c3b0d3fadb2f1a71de14531d321ee05b0"}, + {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dbed418ba5c3dce92619656802cc5355cb679e58d0d89b50f116e4a9d5a9603e"}, + {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:941988b89b4fd6b41c3f0bfb20e92bd23746579736b7343283297c4c8cbae68f"}, + {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6a42cd0cfa8ffc1915aef79cb4284f6383d8a3e9dcca70c445dcfdd639d51267"}, + {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ca9b6085e4f866bd584fb135a041bfc32cab916e69f714a7d1d397f8c4891ca"}, + {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5e49454f19ef621089e204f862388d29e6e8d8b162efce05208913dde5b9ad6"}, + {file = "wrapt-1.16.0-cp38-cp38-win32.whl", hash = "sha256:c31f72b1b6624c9d863fc095da460802f43a7c6868c5dda140f51da24fd47d7b"}, + {file = "wrapt-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:490b0ee15c1a55be9c1bd8609b8cecd60e325f0575fc98f50058eae366e01f41"}, + {file = "wrapt-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9b201ae332c3637a42f02d1045e1d0cccfdc41f1f2f801dafbaa7e9b4797bfc2"}, + {file = "wrapt-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2076fad65c6736184e77d7d4729b63a6d1ae0b70da4868adeec40989858eb3fb"}, + {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5cd603b575ebceca7da5a3a251e69561bec509e0b46e4993e1cac402b7247b8"}, + {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b47cfad9e9bbbed2339081f4e346c93ecd7ab504299403320bf85f7f85c7d46c"}, + {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8212564d49c50eb4565e502814f694e240c55551a5f1bc841d4fcaabb0a9b8a"}, + {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5f15814a33e42b04e3de432e573aa557f9f0f56458745c2074952f564c50e664"}, + {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db2e408d983b0e61e238cf579c09ef7020560441906ca990fe8412153e3b291f"}, + {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:edfad1d29c73f9b863ebe7082ae9321374ccb10879eeabc84ba3b69f2579d537"}, + {file = "wrapt-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed867c42c268f876097248e05b6117a65bcd1e63b779e916fe2e33cd6fd0d3c3"}, + {file = "wrapt-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:eb1b046be06b0fce7249f1d025cd359b4b80fc1c3e24ad9eca33e0dcdb2e4a35"}, + {file = "wrapt-1.16.0-py3-none-any.whl", hash = "sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1"}, + {file = "wrapt-1.16.0.tar.gz", hash = "sha256:5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d"}, +] + +[[package]] +name = "yarl" +version = "1.9.4" +description = "Yet another URL library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "yarl-1.9.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a8c1df72eb746f4136fe9a2e72b0c9dc1da1cbd23b5372f94b5820ff8ae30e0e"}, + {file = "yarl-1.9.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a3a6ed1d525bfb91b3fc9b690c5a21bb52de28c018530ad85093cc488bee2dd2"}, + {file = "yarl-1.9.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c38c9ddb6103ceae4e4498f9c08fac9b590c5c71b0370f98714768e22ac6fa66"}, + {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9e09c9d74f4566e905a0b8fa668c58109f7624db96a2171f21747abc7524234"}, + {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8477c1ee4bd47c57d49621a062121c3023609f7a13b8a46953eb6c9716ca392"}, + {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5ff2c858f5f6a42c2a8e751100f237c5e869cbde669a724f2062d4c4ef93551"}, + {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:357495293086c5b6d34ca9616a43d329317feab7917518bc97a08f9e55648455"}, + {file = "yarl-1.9.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54525ae423d7b7a8ee81ba189f131054defdb122cde31ff17477951464c1691c"}, + {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:801e9264d19643548651b9db361ce3287176671fb0117f96b5ac0ee1c3530d53"}, + {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e516dc8baf7b380e6c1c26792610230f37147bb754d6426462ab115a02944385"}, + {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:7d5aaac37d19b2904bb9dfe12cdb08c8443e7ba7d2852894ad448d4b8f442863"}, + {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:54beabb809ffcacbd9d28ac57b0db46e42a6e341a030293fb3185c409e626b8b"}, + {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bac8d525a8dbc2a1507ec731d2867025d11ceadcb4dd421423a5d42c56818541"}, + {file = "yarl-1.9.4-cp310-cp310-win32.whl", hash = "sha256:7855426dfbddac81896b6e533ebefc0af2f132d4a47340cee6d22cac7190022d"}, + {file = "yarl-1.9.4-cp310-cp310-win_amd64.whl", hash = "sha256:848cd2a1df56ddbffeb375535fb62c9d1645dde33ca4d51341378b3f5954429b"}, + {file = "yarl-1.9.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:35a2b9396879ce32754bd457d31a51ff0a9d426fd9e0e3c33394bf4b9036b099"}, + {file = "yarl-1.9.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c7d56b293cc071e82532f70adcbd8b61909eec973ae9d2d1f9b233f3d943f2c"}, + {file = "yarl-1.9.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d8a1c6c0be645c745a081c192e747c5de06e944a0d21245f4cf7c05e457c36e0"}, + {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4b3c1ffe10069f655ea2d731808e76e0f452fc6c749bea04781daf18e6039525"}, + {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:549d19c84c55d11687ddbd47eeb348a89df9cb30e1993f1b128f4685cd0ebbf8"}, + {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a7409f968456111140c1c95301cadf071bd30a81cbd7ab829169fb9e3d72eae9"}, + {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e23a6d84d9d1738dbc6e38167776107e63307dfc8ad108e580548d1f2c587f42"}, + {file = "yarl-1.9.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d8b889777de69897406c9fb0b76cdf2fd0f31267861ae7501d93003d55f54fbe"}, + {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:03caa9507d3d3c83bca08650678e25364e1843b484f19986a527630ca376ecce"}, + {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4e9035df8d0880b2f1c7f5031f33f69e071dfe72ee9310cfc76f7b605958ceb9"}, + {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:c0ec0ed476f77db9fb29bca17f0a8fcc7bc97ad4c6c1d8959c507decb22e8572"}, + {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:ee04010f26d5102399bd17f8df8bc38dc7ccd7701dc77f4a68c5b8d733406958"}, + {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:49a180c2e0743d5d6e0b4d1a9e5f633c62eca3f8a86ba5dd3c471060e352ca98"}, + {file = "yarl-1.9.4-cp311-cp311-win32.whl", hash = "sha256:81eb57278deb6098a5b62e88ad8281b2ba09f2f1147c4767522353eaa6260b31"}, + {file = "yarl-1.9.4-cp311-cp311-win_amd64.whl", hash = "sha256:d1d2532b340b692880261c15aee4dc94dd22ca5d61b9db9a8a361953d36410b1"}, + {file = "yarl-1.9.4-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0d2454f0aef65ea81037759be5ca9947539667eecebca092733b2eb43c965a81"}, + {file = "yarl-1.9.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:44d8ffbb9c06e5a7f529f38f53eda23e50d1ed33c6c869e01481d3fafa6b8142"}, + {file = "yarl-1.9.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:aaaea1e536f98754a6e5c56091baa1b6ce2f2700cc4a00b0d49eca8dea471074"}, + {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3777ce5536d17989c91696db1d459574e9a9bd37660ea7ee4d3344579bb6f129"}, + {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fc5fc1eeb029757349ad26bbc5880557389a03fa6ada41703db5e068881e5f2"}, + {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ea65804b5dc88dacd4a40279af0cdadcfe74b3e5b4c897aa0d81cf86927fee78"}, + {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aa102d6d280a5455ad6a0f9e6d769989638718e938a6a0a2ff3f4a7ff8c62cc4"}, + {file = "yarl-1.9.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09efe4615ada057ba2d30df871d2f668af661e971dfeedf0c159927d48bbeff0"}, + {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:008d3e808d03ef28542372d01057fd09168419cdc8f848efe2804f894ae03e51"}, + {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:6f5cb257bc2ec58f437da2b37a8cd48f666db96d47b8a3115c29f316313654ff"}, + {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:992f18e0ea248ee03b5a6e8b3b4738850ae7dbb172cc41c966462801cbf62cf7"}, + {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:0e9d124c191d5b881060a9e5060627694c3bdd1fe24c5eecc8d5d7d0eb6faabc"}, + {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3986b6f41ad22988e53d5778f91855dc0399b043fc8946d4f2e68af22ee9ff10"}, + {file = "yarl-1.9.4-cp312-cp312-win32.whl", hash = "sha256:4b21516d181cd77ebd06ce160ef8cc2a5e9ad35fb1c5930882baff5ac865eee7"}, + {file = "yarl-1.9.4-cp312-cp312-win_amd64.whl", hash = "sha256:a9bd00dc3bc395a662900f33f74feb3e757429e545d831eef5bb280252631984"}, + {file = "yarl-1.9.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:63b20738b5aac74e239622d2fe30df4fca4942a86e31bf47a81a0e94c14df94f"}, + {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7d7f7de27b8944f1fee2c26a88b4dabc2409d2fea7a9ed3df79b67277644e17"}, + {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c74018551e31269d56fab81a728f683667e7c28c04e807ba08f8c9e3bba32f14"}, + {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca06675212f94e7a610e85ca36948bb8fc023e458dd6c63ef71abfd482481aa5"}, + {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5aef935237d60a51a62b86249839b51345f47564208c6ee615ed2a40878dccdd"}, + {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b134fd795e2322b7684155b7855cc99409d10b2e408056db2b93b51a52accc7"}, + {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d25039a474c4c72a5ad4b52495056f843a7ff07b632c1b92ea9043a3d9950f6e"}, + {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f7d6b36dd2e029b6bcb8a13cf19664c7b8e19ab3a58e0fefbb5b8461447ed5ec"}, + {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:957b4774373cf6f709359e5c8c4a0af9f6d7875db657adb0feaf8d6cb3c3964c"}, + {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:d7eeb6d22331e2fd42fce928a81c697c9ee2d51400bd1a28803965883e13cead"}, + {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:6a962e04b8f91f8c4e5917e518d17958e3bdee71fd1d8b88cdce74dd0ebbf434"}, + {file = "yarl-1.9.4-cp37-cp37m-win32.whl", hash = "sha256:f3bc6af6e2b8f92eced34ef6a96ffb248e863af20ef4fde9448cc8c9b858b749"}, + {file = "yarl-1.9.4-cp37-cp37m-win_amd64.whl", hash = "sha256:ad4d7a90a92e528aadf4965d685c17dacff3df282db1121136c382dc0b6014d2"}, + {file = "yarl-1.9.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ec61d826d80fc293ed46c9dd26995921e3a82146feacd952ef0757236fc137be"}, + {file = "yarl-1.9.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8be9e837ea9113676e5754b43b940b50cce76d9ed7d2461df1af39a8ee674d9f"}, + {file = "yarl-1.9.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:bef596fdaa8f26e3d66af846bbe77057237cb6e8efff8cd7cc8dff9a62278bbf"}, + {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d47552b6e52c3319fede1b60b3de120fe83bde9b7bddad11a69fb0af7db32f1"}, + {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84fc30f71689d7fc9168b92788abc977dc8cefa806909565fc2951d02f6b7d57"}, + {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4aa9741085f635934f3a2583e16fcf62ba835719a8b2b28fb2917bb0537c1dfa"}, + {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:206a55215e6d05dbc6c98ce598a59e6fbd0c493e2de4ea6cc2f4934d5a18d130"}, + {file = "yarl-1.9.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07574b007ee20e5c375a8fe4a0789fad26db905f9813be0f9fef5a68080de559"}, + {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5a2e2433eb9344a163aced6a5f6c9222c0786e5a9e9cac2c89f0b28433f56e23"}, + {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6ad6d10ed9b67a382b45f29ea028f92d25bc0bc1daf6c5b801b90b5aa70fb9ec"}, + {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:6fe79f998a4052d79e1c30eeb7d6c1c1056ad33300f682465e1b4e9b5a188b78"}, + {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a825ec844298c791fd28ed14ed1bffc56a98d15b8c58a20e0e08c1f5f2bea1be"}, + {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8619d6915b3b0b34420cf9b2bb6d81ef59d984cb0fde7544e9ece32b4b3043c3"}, + {file = "yarl-1.9.4-cp38-cp38-win32.whl", hash = "sha256:686a0c2f85f83463272ddffd4deb5e591c98aac1897d65e92319f729c320eece"}, + {file = "yarl-1.9.4-cp38-cp38-win_amd64.whl", hash = "sha256:a00862fb23195b6b8322f7d781b0dc1d82cb3bcac346d1e38689370cc1cc398b"}, + {file = "yarl-1.9.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:604f31d97fa493083ea21bd9b92c419012531c4e17ea6da0f65cacdcf5d0bd27"}, + {file = "yarl-1.9.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8a854227cf581330ffa2c4824d96e52ee621dd571078a252c25e3a3b3d94a1b1"}, + {file = "yarl-1.9.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ba6f52cbc7809cd8d74604cce9c14868306ae4aa0282016b641c661f981a6e91"}, + {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a6327976c7c2f4ee6816eff196e25385ccc02cb81427952414a64811037bbc8b"}, + {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8397a3817d7dcdd14bb266283cd1d6fc7264a48c186b986f32e86d86d35fbac5"}, + {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0381b4ce23ff92f8170080c97678040fc5b08da85e9e292292aba67fdac6c34"}, + {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:23d32a2594cb5d565d358a92e151315d1b2268bc10f4610d098f96b147370136"}, + {file = "yarl-1.9.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ddb2a5c08a4eaaba605340fdee8fc08e406c56617566d9643ad8bf6852778fc7"}, + {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:26a1dc6285e03f3cc9e839a2da83bcbf31dcb0d004c72d0730e755b33466c30e"}, + {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:18580f672e44ce1238b82f7fb87d727c4a131f3a9d33a5e0e82b793362bf18b4"}, + {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:29e0f83f37610f173eb7e7b5562dd71467993495e568e708d99e9d1944f561ec"}, + {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:1f23e4fe1e8794f74b6027d7cf19dc25f8b63af1483d91d595d4a07eca1fb26c"}, + {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:db8e58b9d79200c76956cefd14d5c90af54416ff5353c5bfd7cbe58818e26ef0"}, + {file = "yarl-1.9.4-cp39-cp39-win32.whl", hash = "sha256:c7224cab95645c7ab53791022ae77a4509472613e839dab722a72abe5a684575"}, + {file = "yarl-1.9.4-cp39-cp39-win_amd64.whl", hash = "sha256:824d6c50492add5da9374875ce72db7a0733b29c2394890aef23d533106e2b15"}, + {file = "yarl-1.9.4-py3-none-any.whl", hash = "sha256:928cecb0ef9d5a7946eb6ff58417ad2fe9375762382f1bf5c55e61645f2c43ad"}, + {file = "yarl-1.9.4.tar.gz", hash = "sha256:566db86717cf8080b99b58b083b773a908ae40f06681e87e589a976faf8246bf"}, +] + +[package.dependencies] +idna = ">=2.0" +multidict = ">=4.0" + +[[package]] +name = "zipp" +version = "3.17.0" +description = "Backport of pathlib-compatible object wrapper for zip files" +optional = false +python-versions = ">=3.8" +files = [ + {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, + {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, +] + +[package.extras] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] + +[metadata] +lock-version = "2.0" +python-versions = ">=3.9,<4.0" +content-hash = "9513be9dc516eb9f66dec839e3c140d78fd0712c208dbb60ae1af8dc8e2b09d3" diff --git a/llama-index-packs/llama-index-packs-raptor/pyproject.toml b/llama-index-packs/llama-index-packs-raptor/pyproject.toml new file mode 100644 index 0000000000000..c9aca39569720 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/pyproject.toml @@ -0,0 +1,60 @@ +[build-system] +build-backend = "poetry.core.masonry.api" +requires = ["poetry-core"] + +[tool.codespell] +check-filenames = true +check-hidden = true +# Feel free to un-skip examples, and experimental, you will just need to +# work through many typos (--write-changes and --interactive will help) +skip = "*.csv,*.html,*.json,*.jsonl,*.pdf,*.txt,*.ipynb" + +[tool.llamahub] +contains_example = true +import_path = "llama_index.packs.raptor" + +[tool.llamahub.class_authors] +RaptorPack = "logan-markewich" + +[tool.mypy] +disallow_untyped_defs = true +# Remove venv skip when integrated with pre-commit +exclude = ["_static", "build", "examples", "notebooks", "venv"] +ignore_missing_imports = true +python_version = "3.8" + +[tool.poetry] +authors = ["Logan Markewich "] +description = "llama-index packs raptor integration" +keywords = ["cluster", "raptor", "retrieval"] +license = "MIT" +name = "llama-index-packs-raptor" +packages = [{include = "llama_index/"}] +readme = "README.md" +version = "0.1.0" + +[tool.poetry.dependencies] +python = ">=3.9,<4.0" +llama-index-core = "^0.10.0" +llama-index-llms-openai = "^0.1.6" +umap-learn = "^0.5.5" +scikit-learn = "^1.4.1.post1" + +[tool.poetry.group.dev.dependencies] +black = {extras = ["jupyter"], version = "<=23.9.1,>=23.7.0"} +codespell = {extras = ["toml"], version = ">=v2.2.6"} +ipython = "8.10.0" +jupyter = "^1.0.0" +mypy = "0.991" +pre-commit = "3.2.0" +pylint = "2.15.10" +pytest = "7.2.1" +pytest-mock = "3.11.1" +ruff = "0.0.292" +tree-sitter-languages = "^1.8.0" +types-Deprecated = ">=0.1.0" +types-PyYAML = "^6.0.12.12" +types-protobuf = "^4.24.0.4" +types-redis = "4.5.5.0" +types-requests = "2.28.11.8" # TODO: unpin when mypy>0.991 +types-setuptools = "67.1.0.0" diff --git a/llama-index-packs/llama-index-packs-raptor/tests/__init__.py b/llama-index-packs/llama-index-packs-raptor/tests/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/llama-index-packs/llama-index-packs-raptor/tests/test_packs_raptor.py b/llama-index-packs/llama-index-packs-raptor/tests/test_packs_raptor.py new file mode 100644 index 0000000000000..a8deb2a261a69 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/tests/test_packs_raptor.py @@ -0,0 +1,30 @@ +from llama_index.core import Document, MockEmbedding +from llama_index.core.llms import MockLLM +from llama_index.packs.raptor.base import RaptorRetriever + + +def test_raptor() -> None: + retriever = RaptorRetriever( + [ + Document(text="one"), + Document(text="two"), + Document(text="three"), + Document(text="four"), + Document(text="five"), + Document(text="six"), + Document(text="seven"), + Document(text="eight"), + Document(text="nine"), + Document(text="ten"), + ], + embed_model=MockEmbedding(embed_dim=1536), + llm=MockLLM(), + ) + + assert len(retriever.index.docstore.docs) == 13 + + nodes = retriever.retrieve("test", mode="collapsed") + assert len(nodes) == 2 + + nodes = retriever.retrieve("text", mode="tree_traversal") + assert len(nodes) == 2 From 2980566aeb99f27caa966c4274f99781228e4ab6 Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Thu, 29 Feb 2024 23:06:42 -0600 Subject: [PATCH 3/9] cleanup --- .../llama-index-packs-raptor/BUILD | 4 + .../llama_index/packs/raptor/BUILD | 1 + .../llama-index-packs-raptor/poetry.lock | 4714 ----------------- .../llama-index-packs-raptor/tests/BUILD | 1 + 4 files changed, 6 insertions(+), 4714 deletions(-) create mode 100644 llama-index-packs/llama-index-packs-raptor/BUILD create mode 100644 llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/BUILD delete mode 100644 llama-index-packs/llama-index-packs-raptor/poetry.lock create mode 100644 llama-index-packs/llama-index-packs-raptor/tests/BUILD diff --git a/llama-index-packs/llama-index-packs-raptor/BUILD b/llama-index-packs/llama-index-packs-raptor/BUILD new file mode 100644 index 0000000000000..b83609a0f064b --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/BUILD @@ -0,0 +1,4 @@ +poetry_requirements( + name="poetry", + module_mappings={"umap-learn": ["umap"], "scikit-learn": ["sklearn"]} +) diff --git a/llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/BUILD b/llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/BUILD new file mode 100644 index 0000000000000..db46e8d6c978c --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/llama_index/packs/raptor/BUILD @@ -0,0 +1 @@ +python_sources() diff --git a/llama-index-packs/llama-index-packs-raptor/poetry.lock b/llama-index-packs/llama-index-packs-raptor/poetry.lock deleted file mode 100644 index 2fedda1027eb2..0000000000000 --- a/llama-index-packs/llama-index-packs-raptor/poetry.lock +++ /dev/null @@ -1,4714 +0,0 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. - -[[package]] -name = "aiohttp" -version = "3.9.3" -description = "Async http client/server framework (asyncio)" -optional = false -python-versions = ">=3.8" -files = [ - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"}, - {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"}, - {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"}, - {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"}, - {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"}, - {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"}, - {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"}, - {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"}, - {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"}, - {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"}, - {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"}, - {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"}, -] - -[package.dependencies] -aiosignal = ">=1.1.2" -async-timeout = {version = ">=4.0,<5.0", markers = "python_version < \"3.11\""} -attrs = ">=17.3.0" -frozenlist = ">=1.1.1" -multidict = ">=4.5,<7.0" -yarl = ">=1.0,<2.0" - -[package.extras] -speedups = ["Brotli", "aiodns", "brotlicffi"] - -[[package]] -name = "aiosignal" -version = "1.3.1" -description = "aiosignal: a list of registered asynchronous callbacks" -optional = false -python-versions = ">=3.7" -files = [ - {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, - {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, -] - -[package.dependencies] -frozenlist = ">=1.1.0" - -[[package]] -name = "annotated-types" -version = "0.6.0" -description = "Reusable constraint types to use with typing.Annotated" -optional = false -python-versions = ">=3.8" -files = [ - {file = "annotated_types-0.6.0-py3-none-any.whl", hash = "sha256:0641064de18ba7a25dee8f96403ebc39113d0cb953a01429249d5c7564666a43"}, - {file = "annotated_types-0.6.0.tar.gz", hash = "sha256:563339e807e53ffd9c267e99fc6d9ea23eb8443c08f112651963e24e22f84a5d"}, -] - -[[package]] -name = "anyio" -version = "4.3.0" -description = "High level compatibility layer for multiple asynchronous event loop implementations" -optional = false -python-versions = ">=3.8" -files = [ - {file = "anyio-4.3.0-py3-none-any.whl", hash = "sha256:048e05d0f6caeed70d731f3db756d35dcc1f35747c8c403364a8332c630441b8"}, - {file = "anyio-4.3.0.tar.gz", hash = "sha256:f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6"}, -] - -[package.dependencies] -exceptiongroup = {version = ">=1.0.2", markers = "python_version < \"3.11\""} -idna = ">=2.8" -sniffio = ">=1.1" -typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""} - -[package.extras] -doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] -test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] -trio = ["trio (>=0.23)"] - -[[package]] -name = "appnope" -version = "0.1.4" -description = "Disable App Nap on macOS >= 10.9" -optional = false -python-versions = ">=3.6" -files = [ - {file = "appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c"}, - {file = "appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee"}, -] - -[[package]] -name = "argon2-cffi" -version = "23.1.0" -description = "Argon2 for Python" -optional = false -python-versions = ">=3.7" -files = [ - {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, - {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, -] - -[package.dependencies] -argon2-cffi-bindings = "*" - -[package.extras] -dev = ["argon2-cffi[tests,typing]", "tox (>4)"] -docs = ["furo", "myst-parser", "sphinx", "sphinx-copybutton", "sphinx-notfound-page"] -tests = ["hypothesis", "pytest"] -typing = ["mypy"] - -[[package]] -name = "argon2-cffi-bindings" -version = "21.2.0" -description = "Low-level CFFI bindings for Argon2" -optional = false -python-versions = ">=3.6" -files = [ - {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"}, - {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"}, - {file = "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"}, - {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"}, - {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"}, - {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"}, - {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"}, - {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"}, - {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"}, - {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"}, - {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"}, - {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"}, - {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"}, -] - -[package.dependencies] -cffi = ">=1.0.1" - -[package.extras] -dev = ["cogapp", "pre-commit", "pytest", "wheel"] -tests = ["pytest"] - -[[package]] -name = "arrow" -version = "1.3.0" -description = "Better dates & times for Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, - {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, -] - -[package.dependencies] -python-dateutil = ">=2.7.0" -types-python-dateutil = ">=2.8.10" - -[package.extras] -doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] -test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] - -[[package]] -name = "astroid" -version = "2.13.5" -description = "An abstract syntax tree for Python with inference support." -optional = false -python-versions = ">=3.7.2" -files = [ - {file = "astroid-2.13.5-py3-none-any.whl", hash = "sha256:6891f444625b6edb2ac798829b689e95297e100ddf89dbed5a8c610e34901501"}, - {file = "astroid-2.13.5.tar.gz", hash = "sha256:df164d5ac811b9f44105a72b8f9d5edfb7b5b2d7e979b04ea377a77b3229114a"}, -] - -[package.dependencies] -lazy-object-proxy = ">=1.4.0" -typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} -wrapt = [ - {version = ">=1.11,<2", markers = "python_version < \"3.11\""}, - {version = ">=1.14,<2", markers = "python_version >= \"3.11\""}, -] - -[[package]] -name = "asttokens" -version = "2.4.1" -description = "Annotate AST trees with source code positions" -optional = false -python-versions = "*" -files = [ - {file = "asttokens-2.4.1-py2.py3-none-any.whl", hash = "sha256:051ed49c3dcae8913ea7cd08e46a606dba30b79993209636c4875bc1d637bc24"}, - {file = "asttokens-2.4.1.tar.gz", hash = "sha256:b03869718ba9a6eb027e134bfdf69f38a236d681c83c160d510768af11254ba0"}, -] - -[package.dependencies] -six = ">=1.12.0" - -[package.extras] -astroid = ["astroid (>=1,<2)", "astroid (>=2,<4)"] -test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] - -[[package]] -name = "async-lru" -version = "2.0.4" -description = "Simple LRU cache for asyncio" -optional = false -python-versions = ">=3.8" -files = [ - {file = "async-lru-2.0.4.tar.gz", hash = "sha256:b8a59a5df60805ff63220b2a0c5b5393da5521b113cd5465a44eb037d81a5627"}, - {file = "async_lru-2.0.4-py3-none-any.whl", hash = "sha256:ff02944ce3c288c5be660c42dbcca0742b32c3b279d6dceda655190240b99224"}, -] - -[package.dependencies] -typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} - -[[package]] -name = "async-timeout" -version = "4.0.3" -description = "Timeout context manager for asyncio programs" -optional = false -python-versions = ">=3.7" -files = [ - {file = "async-timeout-4.0.3.tar.gz", hash = "sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f"}, - {file = "async_timeout-4.0.3-py3-none-any.whl", hash = "sha256:7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"}, -] - -[[package]] -name = "attrs" -version = "23.2.0" -description = "Classes Without Boilerplate" -optional = false -python-versions = ">=3.7" -files = [ - {file = "attrs-23.2.0-py3-none-any.whl", hash = "sha256:99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"}, - {file = "attrs-23.2.0.tar.gz", hash = "sha256:935dc3b529c262f6cf76e50877d35a4bd3c1de194fd41f47a2b7ae8f19971f30"}, -] - -[package.extras] -cov = ["attrs[tests]", "coverage[toml] (>=5.3)"] -dev = ["attrs[tests]", "pre-commit"] -docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier", "zope-interface"] -tests = ["attrs[tests-no-zope]", "zope-interface"] -tests-mypy = ["mypy (>=1.6)", "pytest-mypy-plugins"] -tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist[psutil]"] - -[[package]] -name = "babel" -version = "2.14.0" -description = "Internationalization utilities" -optional = false -python-versions = ">=3.7" -files = [ - {file = "Babel-2.14.0-py3-none-any.whl", hash = "sha256:efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"}, - {file = "Babel-2.14.0.tar.gz", hash = "sha256:6919867db036398ba21eb5c7a0f6b28ab8cbc3ae7a73a44ebe34ae74a4e7d363"}, -] - -[package.extras] -dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] - -[[package]] -name = "backcall" -version = "0.2.0" -description = "Specifications for callback functions passed in to an API" -optional = false -python-versions = "*" -files = [ - {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, - {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, -] - -[[package]] -name = "beautifulsoup4" -version = "4.12.3" -description = "Screen-scraping library" -optional = false -python-versions = ">=3.6.0" -files = [ - {file = "beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed"}, - {file = "beautifulsoup4-4.12.3.tar.gz", hash = "sha256:74e3d1928edc070d21748185c46e3fb33490f22f52a3addee9aee0f4f7781051"}, -] - -[package.dependencies] -soupsieve = ">1.2" - -[package.extras] -cchardet = ["cchardet"] -chardet = ["chardet"] -charset-normalizer = ["charset-normalizer"] -html5lib = ["html5lib"] -lxml = ["lxml"] - -[[package]] -name = "black" -version = "23.9.1" -description = "The uncompromising code formatter." -optional = false -python-versions = ">=3.8" -files = [ - {file = "black-23.9.1-cp310-cp310-macosx_10_16_arm64.whl", hash = "sha256:d6bc09188020c9ac2555a498949401ab35bb6bf76d4e0f8ee251694664df6301"}, - {file = "black-23.9.1-cp310-cp310-macosx_10_16_universal2.whl", hash = "sha256:13ef033794029b85dfea8032c9d3b92b42b526f1ff4bf13b2182ce4e917f5100"}, - {file = "black-23.9.1-cp310-cp310-macosx_10_16_x86_64.whl", hash = "sha256:75a2dc41b183d4872d3a500d2b9c9016e67ed95738a3624f4751a0cb4818fe71"}, - {file = "black-23.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:13a2e4a93bb8ca74a749b6974925c27219bb3df4d42fc45e948a5d9feb5122b7"}, - {file = "black-23.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:adc3e4442eef57f99b5590b245a328aad19c99552e0bdc7f0b04db6656debd80"}, - {file = "black-23.9.1-cp311-cp311-macosx_10_16_arm64.whl", hash = "sha256:8431445bf62d2a914b541da7ab3e2b4f3bc052d2ccbf157ebad18ea126efb91f"}, - {file = "black-23.9.1-cp311-cp311-macosx_10_16_universal2.whl", hash = "sha256:8fc1ddcf83f996247505db6b715294eba56ea9372e107fd54963c7553f2b6dfe"}, - {file = "black-23.9.1-cp311-cp311-macosx_10_16_x86_64.whl", hash = "sha256:7d30ec46de88091e4316b17ae58bbbfc12b2de05e069030f6b747dfc649ad186"}, - {file = "black-23.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:031e8c69f3d3b09e1aa471a926a1eeb0b9071f80b17689a655f7885ac9325a6f"}, - {file = "black-23.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:538efb451cd50f43aba394e9ec7ad55a37598faae3348d723b59ea8e91616300"}, - {file = "black-23.9.1-cp38-cp38-macosx_10_16_arm64.whl", hash = "sha256:638619a559280de0c2aa4d76f504891c9860bb8fa214267358f0a20f27c12948"}, - {file = "black-23.9.1-cp38-cp38-macosx_10_16_universal2.whl", hash = "sha256:a732b82747235e0542c03bf352c126052c0fbc458d8a239a94701175b17d4855"}, - {file = "black-23.9.1-cp38-cp38-macosx_10_16_x86_64.whl", hash = "sha256:cf3a4d00e4cdb6734b64bf23cd4341421e8953615cba6b3670453737a72ec204"}, - {file = "black-23.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf99f3de8b3273a8317681d8194ea222f10e0133a24a7548c73ce44ea1679377"}, - {file = "black-23.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:14f04c990259576acd093871e7e9b14918eb28f1866f91968ff5524293f9c573"}, - {file = "black-23.9.1-cp39-cp39-macosx_10_16_arm64.whl", hash = "sha256:c619f063c2d68f19b2d7270f4cf3192cb81c9ec5bc5ba02df91471d0b88c4c5c"}, - {file = "black-23.9.1-cp39-cp39-macosx_10_16_universal2.whl", hash = "sha256:6a3b50e4b93f43b34a9d3ef00d9b6728b4a722c997c99ab09102fd5efdb88325"}, - {file = "black-23.9.1-cp39-cp39-macosx_10_16_x86_64.whl", hash = "sha256:c46767e8df1b7beefb0899c4a95fb43058fa8500b6db144f4ff3ca38eb2f6393"}, - {file = "black-23.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50254ebfa56aa46a9fdd5d651f9637485068a1adf42270148cd101cdf56e0ad9"}, - {file = "black-23.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:403397c033adbc45c2bd41747da1f7fc7eaa44efbee256b53842470d4ac5a70f"}, - {file = "black-23.9.1-py3-none-any.whl", hash = "sha256:6ccd59584cc834b6d127628713e4b6b968e5f79572da66284532525a042549f9"}, - {file = "black-23.9.1.tar.gz", hash = "sha256:24b6b3ff5c6d9ea08a8888f6977eae858e1f340d7260cf56d70a49823236b62d"}, -] - -[package.dependencies] -click = ">=8.0.0" -ipython = {version = ">=7.8.0", optional = true, markers = "extra == \"jupyter\""} -mypy-extensions = ">=0.4.3" -packaging = ">=22.0" -pathspec = ">=0.9.0" -platformdirs = ">=2" -tokenize-rt = {version = ">=3.2.0", optional = true, markers = "extra == \"jupyter\""} -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} - -[package.extras] -colorama = ["colorama (>=0.4.3)"] -d = ["aiohttp (>=3.7.4)"] -jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] -uvloop = ["uvloop (>=0.15.2)"] - -[[package]] -name = "bleach" -version = "6.1.0" -description = "An easy safelist-based HTML-sanitizing tool." -optional = false -python-versions = ">=3.8" -files = [ - {file = "bleach-6.1.0-py3-none-any.whl", hash = "sha256:3225f354cfc436b9789c66c4ee030194bee0568fbf9cbdad3bc8b5c26c5f12b6"}, - {file = "bleach-6.1.0.tar.gz", hash = "sha256:0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe"}, -] - -[package.dependencies] -six = ">=1.9.0" -webencodings = "*" - -[package.extras] -css = ["tinycss2 (>=1.1.0,<1.3)"] - -[[package]] -name = "certifi" -version = "2024.2.2" -description = "Python package for providing Mozilla's CA Bundle." -optional = false -python-versions = ">=3.6" -files = [ - {file = "certifi-2024.2.2-py3-none-any.whl", hash = "sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"}, - {file = "certifi-2024.2.2.tar.gz", hash = "sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f"}, -] - -[[package]] -name = "cffi" -version = "1.16.0" -description = "Foreign Function Interface for Python calling C code." -optional = false -python-versions = ">=3.8" -files = [ - {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"}, - {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"}, - {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"}, - {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"}, - {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"}, - {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"}, - {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"}, - {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"}, - {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"}, - {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"}, - {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"}, - {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"}, - {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"}, - {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"}, - {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"}, - {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"}, - {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"}, - {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"}, - {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"}, - {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"}, - {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"}, - {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"}, - {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"}, - {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"}, - {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"}, - {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"}, - {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"}, - {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"}, - {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"}, - {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"}, - {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"}, - {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"}, -] - -[package.dependencies] -pycparser = "*" - -[[package]] -name = "cfgv" -version = "3.4.0" -description = "Validate configuration and produce human readable error messages." -optional = false -python-versions = ">=3.8" -files = [ - {file = "cfgv-3.4.0-py2.py3-none-any.whl", hash = "sha256:b7265b1f29fd3316bfcd2b330d63d024f2bfd8bcb8b0272f8e19a504856c48f9"}, - {file = "cfgv-3.4.0.tar.gz", hash = "sha256:e52591d4c5f5dead8e0f673fb16db7949d2cfb3f7da4582893288f0ded8fe560"}, -] - -[[package]] -name = "charset-normalizer" -version = "3.3.2" -description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -optional = false -python-versions = ">=3.7.0" -files = [ - {file = "charset-normalizer-3.3.2.tar.gz", hash = "sha256:f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:25baf083bf6f6b341f4121c2f3c548875ee6f5339300e08be3f2b2ba1721cdd3"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:06435b539f889b1f6f4ac1758871aae42dc3a8c0e24ac9e60c2384973ad73027"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9063e24fdb1e498ab71cb7419e24622516c4a04476b17a2dab57e8baa30d6e03"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6897af51655e3691ff853668779c7bad41579facacf5fd7253b0133308cf000d"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1d3193f4a680c64b4b6a9115943538edb896edc190f0b222e73761716519268e"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd70574b12bb8a4d2aaa0094515df2463cb429d8536cfb6c7ce983246983e5a6"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8465322196c8b4d7ab6d1e049e4c5cb460d0394da4a27d23cc242fbf0034b6b5"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a9a8e9031d613fd2009c182b69c7b2c1ef8239a0efb1df3f7c8da66d5dd3d537"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:beb58fe5cdb101e3a055192ac291b7a21e3b7ef4f67fa1d74e331a7f2124341c"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e06ed3eb3218bc64786f7db41917d4e686cc4856944f53d5bdf83a6884432e12"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:2e81c7b9c8979ce92ed306c249d46894776a909505d8f5a4ba55b14206e3222f"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:572c3763a264ba47b3cf708a44ce965d98555f618ca42c926a9c1616d8f34269"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fd1abc0d89e30cc4e02e4064dc67fcc51bd941eb395c502aac3ec19fab46b519"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win32.whl", hash = "sha256:3d47fa203a7bd9c5b6cee4736ee84ca03b8ef23193c0d1ca99b5089f72645c73"}, - {file = "charset_normalizer-3.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:10955842570876604d404661fbccbc9c7e684caf432c09c715ec38fbae45ae09"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:802fe99cca7457642125a8a88a084cef28ff0cf9407060f7b93dca5aa25480db"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:573f6eac48f4769d667c4442081b1794f52919e7edada77495aaed9236d13a96"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:549a3a73da901d5bc3ce8d24e0600d1fa85524c10287f6004fbab87672bf3e1e"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f27273b60488abe721a075bcca6d7f3964f9f6f067c8c4c605743023d7d3944f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ceae2f17a9c33cb48e3263960dc5fc8005351ee19db217e9b1bb15d28c02574"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65f6f63034100ead094b8744b3b97965785388f308a64cf8d7c34f2f2e5be0c4"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753f10e867343b4511128c6ed8c82f7bec3bd026875576dfd88483c5c73b2fd8"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a78b2b446bd7c934f5dcedc588903fb2f5eec172f3d29e52a9096a43722adfc"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:e537484df0d8f426ce2afb2d0f8e1c3d0b114b83f8850e5f2fbea0e797bd82ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eb6904c354526e758fda7167b33005998fb68c46fbc10e013ca97f21ca5c8887"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:deb6be0ac38ece9ba87dea880e438f25ca3eddfac8b002a2ec3d9183a454e8ae"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4ab2fe47fae9e0f9dee8c04187ce5d09f48eabe611be8259444906793ab7cbce"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:80402cd6ee291dcb72644d6eac93785fe2c8b9cb30893c1af5b8fdd753b9d40f"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win32.whl", hash = "sha256:7cd13a2e3ddeed6913a65e66e94b51d80a041145a026c27e6bb76c31a853c6ab"}, - {file = "charset_normalizer-3.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:663946639d296df6a2bb2aa51b60a2454ca1cb29835324c640dafb5ff2131a77"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0b2b64d2bb6d3fb9112bafa732def486049e63de9618b5843bcdd081d8144cd8"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:ddbb2551d7e0102e7252db79ba445cdab71b26640817ab1e3e3648dad515003b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:55086ee1064215781fff39a1af09518bc9255b50d6333f2e4c74ca09fac6a8f6"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f4a014bc36d3c57402e2977dada34f9c12300af536839dc38c0beab8878f38a"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a10af20b82360ab00827f916a6058451b723b4e65030c5a18577c8b2de5b3389"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8d756e44e94489e49571086ef83b2bb8ce311e730092d2c34ca8f7d925cb20aa"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90d558489962fd4918143277a773316e56c72da56ec7aa3dc3dbbe20fdfed15b"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ac7ffc7ad6d040517be39eb591cac5ff87416c2537df6ba3cba3bae290c0fed"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7ed9e526742851e8d5cc9e6cf41427dfc6068d4f5a3bb03659444b4cabf6bc26"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8bdb58ff7ba23002a4c5808d608e4e6c687175724f54a5dade5fa8c67b604e4d"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:6b3251890fff30ee142c44144871185dbe13b11bab478a88887a639655be1068"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b4a23f61ce87adf89be746c8a8974fe1c823c891d8f86eb218bb957c924bb143"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:efcb3f6676480691518c177e3b465bcddf57cea040302f9f4e6e191af91174d4"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win32.whl", hash = "sha256:d965bba47ddeec8cd560687584e88cf699fd28f192ceb452d1d7ee807c5597b7"}, - {file = "charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:96b02a3dc4381e5494fad39be677abcb5e6634bf7b4fa83a6dd3112607547001"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:95f2a5796329323b8f0512e09dbb7a1860c46a39da62ecb2324f116fa8fdc85c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c002b4ffc0be611f0d9da932eb0f704fe2602a9a949d1f738e4c34c75b0863d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a981a536974bbc7a512cf44ed14938cf01030a99e9b3a06dd59578882f06f985"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3287761bc4ee9e33561a7e058c72ac0938c4f57fe49a09eae428fd88aafe7bb6"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42cb296636fcc8b0644486d15c12376cb9fa75443e00fb25de0b8602e64c1714"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a55554a2fa0d408816b3b5cedf0045f4b8e1a6065aec45849de2d6f3f8e9786"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:c083af607d2515612056a31f0a8d9e0fcb5876b7bfc0abad3ecd275bc4ebc2d5"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:87d1351268731db79e0f8e745d92493ee2841c974128ef629dc518b937d9194c"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:bd8f7df7d12c2db9fab40bdd87a7c09b1530128315d047a086fa3ae3435cb3a8"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:c180f51afb394e165eafe4ac2936a14bee3eb10debc9d9e4db8958fe36afe711"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8c622a5fe39a48f78944a87d4fb8a53ee07344641b0562c540d840748571b811"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win32.whl", hash = "sha256:db364eca23f876da6f9e16c9da0df51aa4f104a972735574842618b8c6d999d4"}, - {file = "charset_normalizer-3.3.2-cp37-cp37m-win_amd64.whl", hash = "sha256:86216b5cee4b06df986d214f664305142d9c76df9b6512be2738aa72a2048f99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:6463effa3186ea09411d50efc7d85360b38d5f09b870c48e4600f63af490e56a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6c4caeef8fa63d06bd437cd4bdcf3ffefe6738fb1b25951440d80dc7df8c03ac"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:37e55c8e51c236f95b033f6fb391d7d7970ba5fe7ff453dad675e88cf303377a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb69256e180cb6c8a894fee62b3afebae785babc1ee98b81cdf68bbca1987f33"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae5f4161f18c61806f411a13b0310bea87f987c7d2ecdbdaad0e94eb2e404238"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b2b0a0c0517616b6869869f8c581d4eb2dd83a4d79e0ebcb7d373ef9956aeb0a"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:45485e01ff4d3630ec0d9617310448a8702f70e9c01906b0d0118bdf9d124cf2"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eb00ed941194665c332bf8e078baf037d6c35d7c4f3102ea2d4f16ca94a26dc8"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:2127566c664442652f024c837091890cb1942c30937add288223dc895793f898"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:a50aebfa173e157099939b17f18600f72f84eed3049e743b68ad15bd69b6bf99"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:4d0d1650369165a14e14e1e47b372cfcb31d6ab44e6e33cb2d4e57265290044d"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:923c0c831b7cfcb071580d3f46c4baf50f174be571576556269530f4bbd79d04"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:06a81e93cd441c56a9b65d8e1d043daeb97a3d0856d177d5c90ba85acb3db087"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win32.whl", hash = "sha256:6ef1d82a3af9d3eecdba2321dc1b3c238245d890843e040e41e470ffa64c3e25"}, - {file = "charset_normalizer-3.3.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb8821e09e916165e160797a6c17edda0679379a4be5c716c260e836e122f54b"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:c235ebd9baae02f1b77bcea61bce332cb4331dc3617d254df3323aa01ab47bd4"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5b4c145409bef602a690e7cfad0a15a55c13320ff7a3ad7ca59c13bb8ba4d45d"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:68d1f8a9e9e37c1223b656399be5d6b448dea850bed7d0f87a8311f1ff3dabb0"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22afcb9f253dac0696b5a4be4a1c0f8762f8239e21b99680099abd9b2b1b2269"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e27ad930a842b4c5eb8ac0016b0a54f5aebbe679340c26101df33424142c143c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1f79682fbe303db92bc2b1136016a38a42e835d932bab5b3b1bfcfbf0640e519"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b261ccdec7821281dade748d088bb6e9b69e6d15b30652b74cbbac25e280b796"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:122c7fa62b130ed55f8f285bfd56d5f4b4a5b503609d181f9ad85e55c89f4185"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d0eccceffcb53201b5bfebb52600a5fb483a20b61da9dbc885f8b103cbe7598c"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f96df6923e21816da7e0ad3fd47dd8f94b2a5ce594e00677c0013018b813458"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:7f04c839ed0b6b98b1a7501a002144b76c18fb1c1850c8b98d458ac269e26ed2"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:34d1c8da1e78d2e001f363791c98a272bb734000fcef47a491c1e3b0505657a8"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ff8fa367d09b717b2a17a052544193ad76cd49979c805768879cb63d9ca50561"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win32.whl", hash = "sha256:aed38f6e4fb3f5d6bf81bfa990a07806be9d83cf7bacef998ab1a9bd660a581f"}, - {file = "charset_normalizer-3.3.2-cp39-cp39-win_amd64.whl", hash = "sha256:b01b88d45a6fcb69667cd6d2f7a9aeb4bf53760d7fc536bf679ec94fe9f3ff3d"}, - {file = "charset_normalizer-3.3.2-py3-none-any.whl", hash = "sha256:3e4d1f6587322d2788836a99c69062fbb091331ec940e02d12d179c1d53e25fc"}, -] - -[[package]] -name = "click" -version = "8.1.7" -description = "Composable command line interface toolkit" -optional = false -python-versions = ">=3.7" -files = [ - {file = "click-8.1.7-py3-none-any.whl", hash = "sha256:ae74fb96c20a0277a1d615f1e4d73c8414f5a98db8b799a7931d1582f3390c28"}, - {file = "click-8.1.7.tar.gz", hash = "sha256:ca9853ad459e787e2192211578cc907e7594e294c7ccc834310722b41b9ca6de"}, -] - -[package.dependencies] -colorama = {version = "*", markers = "platform_system == \"Windows\""} - -[[package]] -name = "codespell" -version = "2.2.6" -description = "Codespell" -optional = false -python-versions = ">=3.8" -files = [ - {file = "codespell-2.2.6-py3-none-any.whl", hash = "sha256:9ee9a3e5df0990604013ac2a9f22fa8e57669c827124a2e961fe8a1da4cacc07"}, - {file = "codespell-2.2.6.tar.gz", hash = "sha256:a8c65d8eb3faa03deabab6b3bbe798bea72e1799c7e9e955d57eca4096abcff9"}, -] - -[package.dependencies] -tomli = {version = "*", optional = true, markers = "python_version < \"3.11\" and extra == \"toml\""} - -[package.extras] -dev = ["Pygments", "build", "chardet", "pre-commit", "pytest", "pytest-cov", "pytest-dependency", "ruff", "tomli", "twine"] -hard-encoding-detection = ["chardet"] -toml = ["tomli"] -types = ["chardet (>=5.1.0)", "mypy", "pytest", "pytest-cov", "pytest-dependency"] - -[[package]] -name = "colorama" -version = "0.4.6" -description = "Cross-platform colored terminal text." -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" -files = [ - {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, - {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, -] - -[[package]] -name = "comm" -version = "0.2.1" -description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." -optional = false -python-versions = ">=3.8" -files = [ - {file = "comm-0.2.1-py3-none-any.whl", hash = "sha256:87928485c0dfc0e7976fd89fc1e187023cf587e7c353e4a9b417555b44adf021"}, - {file = "comm-0.2.1.tar.gz", hash = "sha256:0bc91edae1344d39d3661dcbc36937181fdaddb304790458f8b044dbc064b89a"}, -] - -[package.dependencies] -traitlets = ">=4" - -[package.extras] -test = ["pytest"] - -[[package]] -name = "cryptography" -version = "42.0.5" -description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." -optional = false -python-versions = ">=3.7" -files = [ - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a30596bae9403a342c978fb47d9b0ee277699fa53bbafad14706af51fe543d16"}, - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:b7ffe927ee6531c78f81aa17e684e2ff617daeba7f189f911065b2ea2d526dec"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2424ff4c4ac7f6b8177b53c17ed5d8fa74ae5955656867f5a8affaca36a27abb"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329906dcc7b20ff3cad13c069a78124ed8247adcac44b10bea1130e36caae0b4"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:b03c2ae5d2f0fc05f9a2c0c997e1bc18c8229f392234e8a0194f202169ccd278"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8837fe1d6ac4a8052a9a8ddab256bc006242696f03368a4009be7ee3075cdb7"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0270572b8bd2c833c3981724b8ee9747b3ec96f699a9665470018594301439ee"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:b8cac287fafc4ad485b8a9b67d0ee80c66bf3574f655d3b97ef2e1082360faf1"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:16a48c23a62a2f4a285699dba2e4ff2d1cff3115b9df052cdd976a18856d8e3d"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2bce03af1ce5a5567ab89bd90d11e7bbdff56b8af3acbbec1faded8f44cb06da"}, - {file = "cryptography-42.0.5-cp37-abi3-win32.whl", hash = "sha256:b6cd2203306b63e41acdf39aa93b86fb566049aeb6dc489b70e34bcd07adca74"}, - {file = "cryptography-42.0.5-cp37-abi3-win_amd64.whl", hash = "sha256:98d8dc6d012b82287f2c3d26ce1d2dd130ec200c8679b6213b3c73c08b2b7940"}, - {file = "cryptography-42.0.5-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:5e6275c09d2badf57aea3afa80d975444f4be8d3bc58f7f80d2a484c6f9485c8"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4985a790f921508f36f81831817cbc03b102d643b5fcb81cd33df3fa291a1a1"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cde5f38e614f55e28d831754e8a3bacf9ace5d1566235e39d91b35502d6936e"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7367d7b2eca6513681127ebad53b2582911d1736dc2ffc19f2c3ae49997496bc"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cd2030f6650c089aeb304cf093f3244d34745ce0cfcc39f20c6fbfe030102e2a"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a2913c5375154b6ef2e91c10b5720ea6e21007412f6437504ffea2109b5a33d7"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:c41fb5e6a5fe9ebcd58ca3abfeb51dffb5d83d6775405305bfa8715b76521922"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3eaafe47ec0d0ffcc9349e1708be2aaea4c6dd4978d76bf6eb0cb2c13636c6fc"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1b95b98b0d2af784078fa69f637135e3c317091b615cd0905f8b8a087e86fa30"}, - {file = "cryptography-42.0.5-cp39-abi3-win32.whl", hash = "sha256:1f71c10d1e88467126f0efd484bd44bca5e14c664ec2ede64c32f20875c0d413"}, - {file = "cryptography-42.0.5-cp39-abi3-win_amd64.whl", hash = "sha256:a011a644f6d7d03736214d38832e030d8268bcff4a41f728e6030325fea3e400"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:9481ffe3cf013b71b2428b905c4f7a9a4f76ec03065b05ff499bb5682a8d9ad8"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ba334e6e4b1d92442b75ddacc615c5476d4ad55cc29b15d590cc6b86efa487e2"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ba3e4a42397c25b7ff88cdec6e2a16c2be18720f317506ee25210f6d31925f9c"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:111a0d8553afcf8eb02a4fea6ca4f59d48ddb34497aa8706a6cf536f1a5ec576"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cd65d75953847815962c84a4654a84850b2bb4aed3f26fadcc1c13892e1e29f6"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e807b3188f9eb0eaa7bbb579b462c5ace579f1cedb28107ce8b48a9f7ad3679e"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f12764b8fffc7a123f641d7d049d382b73f96a34117e0b637b80643169cec8ac"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:37dd623507659e08be98eec89323469e8c7b4c1407c85112634ae3dbdb926fdd"}, - {file = "cryptography-42.0.5.tar.gz", hash = "sha256:6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"}, -] - -[package.dependencies] -cffi = {version = ">=1.12", markers = "platform_python_implementation != \"PyPy\""} - -[package.extras] -docs = ["sphinx (>=5.3.0)", "sphinx-rtd-theme (>=1.1.1)"] -docstest = ["pyenchant (>=1.6.11)", "readme-renderer", "sphinxcontrib-spelling (>=4.0.1)"] -nox = ["nox"] -pep8test = ["check-sdist", "click", "mypy", "ruff"] -sdist = ["build"] -ssh = ["bcrypt (>=3.1.5)"] -test = ["certifi", "pretend", "pytest (>=6.2.0)", "pytest-benchmark", "pytest-cov", "pytest-xdist"] -test-randomorder = ["pytest-randomly"] - -[[package]] -name = "dataclasses-json" -version = "0.6.4" -description = "Easily serialize dataclasses to and from JSON." -optional = false -python-versions = ">=3.7,<4.0" -files = [ - {file = "dataclasses_json-0.6.4-py3-none-any.whl", hash = "sha256:f90578b8a3177f7552f4e1a6e535e84293cd5da421fcce0642d49c0d7bdf8df2"}, - {file = "dataclasses_json-0.6.4.tar.gz", hash = "sha256:73696ebf24936560cca79a2430cbc4f3dd23ac7bf46ed17f38e5e5e7657a6377"}, -] - -[package.dependencies] -marshmallow = ">=3.18.0,<4.0.0" -typing-inspect = ">=0.4.0,<1" - -[[package]] -name = "debugpy" -version = "1.8.1" -description = "An implementation of the Debug Adapter Protocol for Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "debugpy-1.8.1-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:3bda0f1e943d386cc7a0e71bfa59f4137909e2ed947fb3946c506e113000f741"}, - {file = "debugpy-1.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dda73bf69ea479c8577a0448f8c707691152e6c4de7f0c4dec5a4bc11dee516e"}, - {file = "debugpy-1.8.1-cp310-cp310-win32.whl", hash = "sha256:3a79c6f62adef994b2dbe9fc2cc9cc3864a23575b6e387339ab739873bea53d0"}, - {file = "debugpy-1.8.1-cp310-cp310-win_amd64.whl", hash = "sha256:7eb7bd2b56ea3bedb009616d9e2f64aab8fc7000d481faec3cd26c98a964bcdd"}, - {file = "debugpy-1.8.1-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:016a9fcfc2c6b57f939673c874310d8581d51a0fe0858e7fac4e240c5eb743cb"}, - {file = "debugpy-1.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd97ed11a4c7f6d042d320ce03d83b20c3fb40da892f994bc041bbc415d7a099"}, - {file = "debugpy-1.8.1-cp311-cp311-win32.whl", hash = "sha256:0de56aba8249c28a300bdb0672a9b94785074eb82eb672db66c8144fff673146"}, - {file = "debugpy-1.8.1-cp311-cp311-win_amd64.whl", hash = "sha256:1a9fe0829c2b854757b4fd0a338d93bc17249a3bf69ecf765c61d4c522bb92a8"}, - {file = "debugpy-1.8.1-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:3ebb70ba1a6524d19fa7bb122f44b74170c447d5746a503e36adc244a20ac539"}, - {file = "debugpy-1.8.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2e658a9630f27534e63922ebf655a6ab60c370f4d2fc5c02a5b19baf4410ace"}, - {file = "debugpy-1.8.1-cp312-cp312-win32.whl", hash = "sha256:caad2846e21188797a1f17fc09c31b84c7c3c23baf2516fed5b40b378515bbf0"}, - {file = "debugpy-1.8.1-cp312-cp312-win_amd64.whl", hash = "sha256:edcc9f58ec0fd121a25bc950d4578df47428d72e1a0d66c07403b04eb93bcf98"}, - {file = "debugpy-1.8.1-cp38-cp38-macosx_11_0_x86_64.whl", hash = "sha256:7a3afa222f6fd3d9dfecd52729bc2e12c93e22a7491405a0ecbf9e1d32d45b39"}, - {file = "debugpy-1.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d915a18f0597ef685e88bb35e5d7ab968964b7befefe1aaea1eb5b2640b586c7"}, - {file = "debugpy-1.8.1-cp38-cp38-win32.whl", hash = "sha256:92116039b5500633cc8d44ecc187abe2dfa9b90f7a82bbf81d079fcdd506bae9"}, - {file = "debugpy-1.8.1-cp38-cp38-win_amd64.whl", hash = "sha256:e38beb7992b5afd9d5244e96ad5fa9135e94993b0c551ceebf3fe1a5d9beb234"}, - {file = "debugpy-1.8.1-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:bfb20cb57486c8e4793d41996652e5a6a885b4d9175dd369045dad59eaacea42"}, - {file = "debugpy-1.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efd3fdd3f67a7e576dd869c184c5dd71d9aaa36ded271939da352880c012e703"}, - {file = "debugpy-1.8.1-cp39-cp39-win32.whl", hash = "sha256:58911e8521ca0c785ac7a0539f1e77e0ce2df753f786188f382229278b4cdf23"}, - {file = "debugpy-1.8.1-cp39-cp39-win_amd64.whl", hash = "sha256:6df9aa9599eb05ca179fb0b810282255202a66835c6efb1d112d21ecb830ddd3"}, - {file = "debugpy-1.8.1-py2.py3-none-any.whl", hash = "sha256:28acbe2241222b87e255260c76741e1fbf04fdc3b6d094fcf57b6c6f75ce1242"}, - {file = "debugpy-1.8.1.zip", hash = "sha256:f696d6be15be87aef621917585f9bb94b1dc9e8aced570db1b8a6fc14e8f9b42"}, -] - -[[package]] -name = "decorator" -version = "5.1.1" -description = "Decorators for Humans" -optional = false -python-versions = ">=3.5" -files = [ - {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, - {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, -] - -[[package]] -name = "defusedxml" -version = "0.7.1" -description = "XML bomb protection for Python stdlib modules" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" -files = [ - {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, - {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, -] - -[[package]] -name = "deprecated" -version = "1.2.14" -description = "Python @deprecated decorator to deprecate old python classes, functions or methods." -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -files = [ - {file = "Deprecated-1.2.14-py2.py3-none-any.whl", hash = "sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c"}, - {file = "Deprecated-1.2.14.tar.gz", hash = "sha256:e5323eb936458dccc2582dc6f9c322c852a775a27065ff2b0c4970b9d53d01b3"}, -] - -[package.dependencies] -wrapt = ">=1.10,<2" - -[package.extras] -dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "sphinx (<2)", "tox"] - -[[package]] -name = "dill" -version = "0.3.8" -description = "serialize all of Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "dill-0.3.8-py3-none-any.whl", hash = "sha256:c36ca9ffb54365bdd2f8eb3eff7d2a21237f8452b57ace88b1ac615b7e815bd7"}, - {file = "dill-0.3.8.tar.gz", hash = "sha256:3ebe3c479ad625c4553aca177444d89b486b1d84982eeacded644afc0cf797ca"}, -] - -[package.extras] -graph = ["objgraph (>=1.7.2)"] -profile = ["gprof2dot (>=2022.7.29)"] - -[[package]] -name = "dirtyjson" -version = "1.0.8" -description = "JSON decoder for Python that can extract data from the muck" -optional = false -python-versions = "*" -files = [ - {file = "dirtyjson-1.0.8-py3-none-any.whl", hash = "sha256:125e27248435a58acace26d5c2c4c11a1c0de0a9c5124c5a94ba78e517d74f53"}, - {file = "dirtyjson-1.0.8.tar.gz", hash = "sha256:90ca4a18f3ff30ce849d100dcf4a003953c79d3a2348ef056f1d9c22231a25fd"}, -] - -[[package]] -name = "distlib" -version = "0.3.8" -description = "Distribution utilities" -optional = false -python-versions = "*" -files = [ - {file = "distlib-0.3.8-py2.py3-none-any.whl", hash = "sha256:034db59a0b96f8ca18035f36290806a9a6e6bd9d1ff91e45a7f172eb17e51784"}, - {file = "distlib-0.3.8.tar.gz", hash = "sha256:1530ea13e350031b6312d8580ddb6b27a104275a31106523b8f123787f494f64"}, -] - -[[package]] -name = "distro" -version = "1.9.0" -description = "Distro - an OS platform information API" -optional = false -python-versions = ">=3.6" -files = [ - {file = "distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2"}, - {file = "distro-1.9.0.tar.gz", hash = "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed"}, -] - -[[package]] -name = "exceptiongroup" -version = "1.2.0" -description = "Backport of PEP 654 (exception groups)" -optional = false -python-versions = ">=3.7" -files = [ - {file = "exceptiongroup-1.2.0-py3-none-any.whl", hash = "sha256:4bfd3996ac73b41e9b9628b04e079f193850720ea5945fc96a08633c66912f14"}, - {file = "exceptiongroup-1.2.0.tar.gz", hash = "sha256:91f5c769735f051a4290d52edd0858999b57e5876e9f85937691bd4c9fa3ed68"}, -] - -[package.extras] -test = ["pytest (>=6)"] - -[[package]] -name = "executing" -version = "2.0.1" -description = "Get the currently executing AST node of a frame, and other information" -optional = false -python-versions = ">=3.5" -files = [ - {file = "executing-2.0.1-py2.py3-none-any.whl", hash = "sha256:eac49ca94516ccc753f9fb5ce82603156e590b27525a8bc32cce8ae302eb61bc"}, - {file = "executing-2.0.1.tar.gz", hash = "sha256:35afe2ce3affba8ee97f2d69927fa823b08b472b7b994e36a52a964b93d16147"}, -] - -[package.extras] -tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] - -[[package]] -name = "fastjsonschema" -version = "2.19.1" -description = "Fastest Python implementation of JSON schema" -optional = false -python-versions = "*" -files = [ - {file = "fastjsonschema-2.19.1-py3-none-any.whl", hash = "sha256:3672b47bc94178c9f23dbb654bf47440155d4db9df5f7bc47643315f9c405cd0"}, - {file = "fastjsonschema-2.19.1.tar.gz", hash = "sha256:e3126a94bdc4623d3de4485f8d468a12f02a67921315ddc87836d6e456dc789d"}, -] - -[package.extras] -devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] - -[[package]] -name = "filelock" -version = "3.13.1" -description = "A platform independent file lock." -optional = false -python-versions = ">=3.8" -files = [ - {file = "filelock-3.13.1-py3-none-any.whl", hash = "sha256:57dbda9b35157b05fb3e58ee91448612eb674172fab98ee235ccb0b5bee19a1c"}, - {file = "filelock-3.13.1.tar.gz", hash = "sha256:521f5f56c50f8426f5e03ad3b281b490a87ef15bc6c526f168290f0c7148d44e"}, -] - -[package.extras] -docs = ["furo (>=2023.9.10)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.24)"] -testing = ["covdefaults (>=2.3)", "coverage (>=7.3.2)", "diff-cover (>=8)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)", "pytest-timeout (>=2.2)"] -typing = ["typing-extensions (>=4.8)"] - -[[package]] -name = "fqdn" -version = "1.5.1" -description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" -optional = false -python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" -files = [ - {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, - {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, -] - -[[package]] -name = "frozenlist" -version = "1.4.1" -description = "A list-like structure which implements collections.abc.MutableSequence" -optional = false -python-versions = ">=3.8" -files = [ - {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f9aa1878d1083b276b0196f2dfbe00c9b7e752475ed3b682025ff20c1c1f51ac"}, - {file = "frozenlist-1.4.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:29acab3f66f0f24674b7dc4736477bcd4bc3ad4b896f5f45379a67bce8b96868"}, - {file = "frozenlist-1.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:74fb4bee6880b529a0c6560885fce4dc95936920f9f20f53d99a213f7bf66776"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:590344787a90ae57d62511dd7c736ed56b428f04cd8c161fcc5e7232c130c69a"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:068b63f23b17df8569b7fdca5517edef76171cf3897eb68beb01341131fbd2ad"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c849d495bf5154cd8da18a9eb15db127d4dba2968d88831aff6f0331ea9bd4c"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9750cc7fe1ae3b1611bb8cfc3f9ec11d532244235d75901fb6b8e42ce9229dfe"}, - {file = "frozenlist-1.4.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9b2de4cf0cdd5bd2dee4c4f63a653c61d2408055ab77b151c1957f221cabf2a"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0633c8d5337cb5c77acbccc6357ac49a1770b8c487e5b3505c57b949b4b82e98"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:27657df69e8801be6c3638054e202a135c7f299267f1a55ed3a598934f6c0d75"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:f9a3ea26252bd92f570600098783d1371354d89d5f6b7dfd87359d669f2109b5"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:4f57dab5fe3407b6c0c1cc907ac98e8a189f9e418f3b6e54d65a718aaafe3950"}, - {file = "frozenlist-1.4.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e02a0e11cf6597299b9f3bbd3f93d79217cb90cfd1411aec33848b13f5c656cc"}, - {file = "frozenlist-1.4.1-cp310-cp310-win32.whl", hash = "sha256:a828c57f00f729620a442881cc60e57cfcec6842ba38e1b19fd3e47ac0ff8dc1"}, - {file = "frozenlist-1.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:f56e2333dda1fe0f909e7cc59f021eba0d2307bc6f012a1ccf2beca6ba362439"}, - {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a0cb6f11204443f27a1628b0e460f37fb30f624be6051d490fa7d7e26d4af3d0"}, - {file = "frozenlist-1.4.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b46c8ae3a8f1f41a0d2ef350c0b6e65822d80772fe46b653ab6b6274f61d4a49"}, - {file = "frozenlist-1.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:fde5bd59ab5357e3853313127f4d3565fc7dad314a74d7b5d43c22c6a5ed2ced"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:722e1124aec435320ae01ee3ac7bec11a5d47f25d0ed6328f2273d287bc3abb0"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2471c201b70d58a0f0c1f91261542a03d9a5e088ed3dc6c160d614c01649c106"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c757a9dd70d72b076d6f68efdbb9bc943665ae954dad2801b874c8c69e185068"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f146e0911cb2f1da549fc58fc7bcd2b836a44b79ef871980d605ec392ff6b0d2"}, - {file = "frozenlist-1.4.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f9c515e7914626b2a2e1e311794b4c35720a0be87af52b79ff8e1429fc25f19"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c302220494f5c1ebeb0912ea782bcd5e2f8308037b3c7553fad0e48ebad6ad82"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:442acde1e068288a4ba7acfe05f5f343e19fac87bfc96d89eb886b0363e977ec"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:1b280e6507ea8a4fa0c0a7150b4e526a8d113989e28eaaef946cc77ffd7efc0a"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:fe1a06da377e3a1062ae5fe0926e12b84eceb8a50b350ddca72dc85015873f74"}, - {file = "frozenlist-1.4.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:db9e724bebd621d9beca794f2a4ff1d26eed5965b004a97f1f1685a173b869c2"}, - {file = "frozenlist-1.4.1-cp311-cp311-win32.whl", hash = "sha256:e774d53b1a477a67838a904131c4b0eef6b3d8a651f8b138b04f748fccfefe17"}, - {file = "frozenlist-1.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:fb3c2db03683b5767dedb5769b8a40ebb47d6f7f45b1b3e3b4b51ec8ad9d9825"}, - {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:1979bc0aeb89b33b588c51c54ab0161791149f2461ea7c7c946d95d5f93b56ae"}, - {file = "frozenlist-1.4.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cc7b01b3754ea68a62bd77ce6020afaffb44a590c2289089289363472d13aedb"}, - {file = "frozenlist-1.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9c92be9fd329ac801cc420e08452b70e7aeab94ea4233a4804f0915c14eba9b"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3894db91f5a489fc8fa6a9991820f368f0b3cbdb9cd8849547ccfab3392d86"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ba60bb19387e13597fb059f32cd4d59445d7b18b69a745b8f8e5db0346f33480"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8aefbba5f69d42246543407ed2461db31006b0f76c4e32dfd6f42215a2c41d09"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:780d3a35680ced9ce682fbcf4cb9c2bad3136eeff760ab33707b71db84664e3a"}, - {file = "frozenlist-1.4.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9acbb16f06fe7f52f441bb6f413ebae6c37baa6ef9edd49cdd567216da8600cd"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:23b701e65c7b36e4bf15546a89279bd4d8675faabc287d06bbcfac7d3c33e1e6"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:3e0153a805a98f5ada7e09826255ba99fb4f7524bb81bf6b47fb702666484ae1"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:dd9b1baec094d91bf36ec729445f7769d0d0cf6b64d04d86e45baf89e2b9059b"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:1a4471094e146b6790f61b98616ab8e44f72661879cc63fa1049d13ef711e71e"}, - {file = "frozenlist-1.4.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5667ed53d68d91920defdf4035d1cdaa3c3121dc0b113255124bcfada1cfa1b8"}, - {file = "frozenlist-1.4.1-cp312-cp312-win32.whl", hash = "sha256:beee944ae828747fd7cb216a70f120767fc9f4f00bacae8543c14a6831673f89"}, - {file = "frozenlist-1.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:64536573d0a2cb6e625cf309984e2d873979709f2cf22839bf2d61790b448ad5"}, - {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:20b51fa3f588ff2fe658663db52a41a4f7aa6c04f6201449c6c7c476bd255c0d"}, - {file = "frozenlist-1.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:410478a0c562d1a5bcc2f7ea448359fcb050ed48b3c6f6f4f18c313a9bdb1826"}, - {file = "frozenlist-1.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c6321c9efe29975232da3bd0af0ad216800a47e93d763ce64f291917a381b8eb"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48f6a4533887e189dae092f1cf981f2e3885175f7a0f33c91fb5b7b682b6bab6"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6eb73fa5426ea69ee0e012fb59cdc76a15b1283d6e32e4f8dc4482ec67d1194d"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fbeb989b5cc29e8daf7f976b421c220f1b8c731cbf22b9130d8815418ea45887"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:32453c1de775c889eb4e22f1197fe3bdfe457d16476ea407472b9442e6295f7a"}, - {file = "frozenlist-1.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:693945278a31f2086d9bf3df0fe8254bbeaef1fe71e1351c3bd730aa7d31c41b"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:1d0ce09d36d53bbbe566fe296965b23b961764c0bcf3ce2fa45f463745c04701"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:3a670dc61eb0d0eb7080890c13de3066790f9049b47b0de04007090807c776b0"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:dca69045298ce5c11fd539682cff879cc1e664c245d1c64da929813e54241d11"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a06339f38e9ed3a64e4c4e43aec7f59084033647f908e4259d279a52d3757d09"}, - {file = "frozenlist-1.4.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b7f2f9f912dca3934c1baec2e4585a674ef16fe00218d833856408c48d5beee7"}, - {file = "frozenlist-1.4.1-cp38-cp38-win32.whl", hash = "sha256:e7004be74cbb7d9f34553a5ce5fb08be14fb33bc86f332fb71cbe5216362a497"}, - {file = "frozenlist-1.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:5a7d70357e7cee13f470c7883a063aae5fe209a493c57d86eb7f5a6f910fae09"}, - {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bfa4a17e17ce9abf47a74ae02f32d014c5e9404b6d9ac7f729e01562bbee601e"}, - {file = "frozenlist-1.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b7e3ed87d4138356775346e6845cccbe66cd9e207f3cd11d2f0b9fd13681359d"}, - {file = "frozenlist-1.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c99169d4ff810155ca50b4da3b075cbde79752443117d89429595c2e8e37fed8"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:edb678da49d9f72c9f6c609fbe41a5dfb9a9282f9e6a2253d5a91e0fc382d7c0"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6db4667b187a6742b33afbbaf05a7bc551ffcf1ced0000a571aedbb4aa42fc7b"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55fdc093b5a3cb41d420884cdaf37a1e74c3c37a31f46e66286d9145d2063bd0"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82e8211d69a4f4bc360ea22cd6555f8e61a1bd211d1d5d39d3d228b48c83a897"}, - {file = "frozenlist-1.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89aa2c2eeb20957be2d950b85974b30a01a762f3308cd02bb15e1ad632e22dc7"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d3e0c25a2350080e9319724dede4f31f43a6c9779be48021a7f4ebde8b2d742"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:7268252af60904bf52c26173cbadc3a071cece75f873705419c8681f24d3edea"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:0c250a29735d4f15321007fb02865f0e6b6a41a6b88f1f523ca1596ab5f50bd5"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:96ec70beabbd3b10e8bfe52616a13561e58fe84c0101dd031dc78f250d5128b9"}, - {file = "frozenlist-1.4.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:23b2d7679b73fe0e5a4560b672a39f98dfc6f60df63823b0a9970525325b95f6"}, - {file = "frozenlist-1.4.1-cp39-cp39-win32.whl", hash = "sha256:a7496bfe1da7fb1a4e1cc23bb67c58fab69311cc7d32b5a99c2007b4b2a0e932"}, - {file = "frozenlist-1.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:e6a20a581f9ce92d389a8c7d7c3dd47c81fd5d6e655c8dddf341e14aa48659d0"}, - {file = "frozenlist-1.4.1-py3-none-any.whl", hash = "sha256:04ced3e6a46b4cfffe20f9ae482818e34eba9b5fb0ce4056e4cc9b6e212d09b7"}, - {file = "frozenlist-1.4.1.tar.gz", hash = "sha256:c037a86e8513059a2613aaba4d817bb90b9d9b6b69aace3ce9c877e8c8ed402b"}, -] - -[[package]] -name = "fsspec" -version = "2024.2.0" -description = "File-system specification" -optional = false -python-versions = ">=3.8" -files = [ - {file = "fsspec-2024.2.0-py3-none-any.whl", hash = "sha256:817f969556fa5916bc682e02ca2045f96ff7f586d45110fcb76022063ad2c7d8"}, - {file = "fsspec-2024.2.0.tar.gz", hash = "sha256:b6ad1a679f760dda52b1168c859d01b7b80648ea6f7f7c7f5a8a91dc3f3ecb84"}, -] - -[package.extras] -abfs = ["adlfs"] -adl = ["adlfs"] -arrow = ["pyarrow (>=1)"] -dask = ["dask", "distributed"] -devel = ["pytest", "pytest-cov"] -dropbox = ["dropbox", "dropboxdrivefs", "requests"] -full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "dask", "distributed", "dropbox", "dropboxdrivefs", "fusepy", "gcsfs", "libarchive-c", "ocifs", "panel", "paramiko", "pyarrow (>=1)", "pygit2", "requests", "s3fs", "smbprotocol", "tqdm"] -fuse = ["fusepy"] -gcs = ["gcsfs"] -git = ["pygit2"] -github = ["requests"] -gs = ["gcsfs"] -gui = ["panel"] -hdfs = ["pyarrow (>=1)"] -http = ["aiohttp (!=4.0.0a0,!=4.0.0a1)"] -libarchive = ["libarchive-c"] -oci = ["ocifs"] -s3 = ["s3fs"] -sftp = ["paramiko"] -smb = ["smbprotocol"] -ssh = ["paramiko"] -tqdm = ["tqdm"] - -[[package]] -name = "greenlet" -version = "3.0.3" -description = "Lightweight in-process concurrent programming" -optional = false -python-versions = ">=3.7" -files = [ - {file = "greenlet-3.0.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:9da2bd29ed9e4f15955dd1595ad7bc9320308a3b766ef7f837e23ad4b4aac31a"}, - {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d353cadd6083fdb056bb46ed07e4340b0869c305c8ca54ef9da3421acbdf6881"}, - {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dca1e2f3ca00b84a396bc1bce13dd21f680f035314d2379c4160c98153b2059b"}, - {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ed7fb269f15dc662787f4119ec300ad0702fa1b19d2135a37c2c4de6fadfd4a"}, - {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd4f49ae60e10adbc94b45c0b5e6a179acc1736cf7a90160b404076ee283cf83"}, - {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73a411ef564e0e097dbe7e866bb2dda0f027e072b04da387282b02c308807405"}, - {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7f362975f2d179f9e26928c5b517524e89dd48530a0202570d55ad6ca5d8a56f"}, - {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:649dde7de1a5eceb258f9cb00bdf50e978c9db1b996964cd80703614c86495eb"}, - {file = "greenlet-3.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:68834da854554926fbedd38c76e60c4a2e3198c6fbed520b106a8986445caaf9"}, - {file = "greenlet-3.0.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:b1b5667cced97081bf57b8fa1d6bfca67814b0afd38208d52538316e9422fc61"}, - {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52f59dd9c96ad2fc0d5724107444f76eb20aaccb675bf825df6435acb7703559"}, - {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:afaff6cf5200befd5cec055b07d1c0a5a06c040fe5ad148abcd11ba6ab9b114e"}, - {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe754d231288e1e64323cfad462fcee8f0288654c10bdf4f603a39ed923bef33"}, - {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2797aa5aedac23af156bbb5a6aa2cd3427ada2972c828244eb7d1b9255846379"}, - {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7f009caad047246ed379e1c4dbcb8b020f0a390667ea74d2387be2998f58a22"}, - {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c5e1536de2aad7bf62e27baf79225d0d64360d4168cf2e6becb91baf1ed074f3"}, - {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:894393ce10ceac937e56ec00bb71c4c2f8209ad516e96033e4b3b1de270e200d"}, - {file = "greenlet-3.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:1ea188d4f49089fc6fb283845ab18a2518d279c7cd9da1065d7a84e991748728"}, - {file = "greenlet-3.0.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:70fb482fdf2c707765ab5f0b6655e9cfcf3780d8d87355a063547b41177599be"}, - {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4d1ac74f5c0c0524e4a24335350edad7e5f03b9532da7ea4d3c54d527784f2e"}, - {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:149e94a2dd82d19838fe4b2259f1b6b9957d5ba1b25640d2380bea9c5df37676"}, - {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15d79dd26056573940fcb8c7413d84118086f2ec1a8acdfa854631084393efcc"}, - {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:881b7db1ebff4ba09aaaeae6aa491daeb226c8150fc20e836ad00041bcb11230"}, - {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fcd2469d6a2cf298f198f0487e0a5b1a47a42ca0fa4dfd1b6862c999f018ebbf"}, - {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f672519db1796ca0d8753f9e78ec02355e862d0998193038c7073045899f305"}, - {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2516a9957eed41dd8f1ec0c604f1cdc86758b587d964668b5b196a9db5bfcde6"}, - {file = "greenlet-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:bba5387a6975598857d86de9eac14210a49d554a77eb8261cc68b7d082f78ce2"}, - {file = "greenlet-3.0.3-cp37-cp37m-macosx_11_0_universal2.whl", hash = "sha256:5b51e85cb5ceda94e79d019ed36b35386e8c37d22f07d6a751cb659b180d5274"}, - {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:daf3cb43b7cf2ba96d614252ce1684c1bccee6b2183a01328c98d36fcd7d5cb0"}, - {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99bf650dc5d69546e076f413a87481ee1d2d09aaaaaca058c9251b6d8c14783f"}, - {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dd6e660effd852586b6a8478a1d244b8dc90ab5b1321751d2ea15deb49ed414"}, - {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3391d1e16e2a5a1507d83e4a8b100f4ee626e8eca43cf2cadb543de69827c4c"}, - {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e1f145462f1fa6e4a4ae3c0f782e580ce44d57c8f2c7aae1b6fa88c0b2efdb41"}, - {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1a7191e42732df52cb5f39d3527217e7ab73cae2cb3694d241e18f53d84ea9a7"}, - {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0448abc479fab28b00cb472d278828b3ccca164531daab4e970a0458786055d6"}, - {file = "greenlet-3.0.3-cp37-cp37m-win32.whl", hash = "sha256:b542be2440edc2d48547b5923c408cbe0fc94afb9f18741faa6ae970dbcb9b6d"}, - {file = "greenlet-3.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:01bc7ea167cf943b4c802068e178bbf70ae2e8c080467070d01bfa02f337ee67"}, - {file = "greenlet-3.0.3-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:1996cb9306c8595335bb157d133daf5cf9f693ef413e7673cb07e3e5871379ca"}, - {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc0f794e6ad661e321caa8d2f0a55ce01213c74722587256fb6566049a8b04"}, - {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9db1c18f0eaad2f804728c67d6c610778456e3e1cc4ab4bbd5eeb8e6053c6fc"}, - {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7170375bcc99f1a2fbd9c306f5be8764eaf3ac6b5cb968862cad4c7057756506"}, - {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b66c9c1e7ccabad3a7d037b2bcb740122a7b17a53734b7d72a344ce39882a1b"}, - {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:098d86f528c855ead3479afe84b49242e174ed262456c342d70fc7f972bc13c4"}, - {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:81bb9c6d52e8321f09c3d165b2a78c680506d9af285bfccbad9fb7ad5a5da3e5"}, - {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd096eb7ffef17c456cfa587523c5f92321ae02427ff955bebe9e3c63bc9f0da"}, - {file = "greenlet-3.0.3-cp38-cp38-win32.whl", hash = "sha256:d46677c85c5ba00a9cb6f7a00b2bfa6f812192d2c9f7d9c4f6a55b60216712f3"}, - {file = "greenlet-3.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:419b386f84949bf0e7c73e6032e3457b82a787c1ab4a0e43732898a761cc9dbf"}, - {file = "greenlet-3.0.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:da70d4d51c8b306bb7a031d5cff6cc25ad253affe89b70352af5f1cb68e74b53"}, - {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086152f8fbc5955df88382e8a75984e2bb1c892ad2e3c80a2508954e52295257"}, - {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d73a9fe764d77f87f8ec26a0c85144d6a951a6c438dfe50487df5595c6373eac"}, - {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7dcbe92cc99f08c8dd11f930de4d99ef756c3591a5377d1d9cd7dd5e896da71"}, - {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1551a8195c0d4a68fac7a4325efac0d541b48def35feb49d803674ac32582f61"}, - {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:64d7675ad83578e3fc149b617a444fab8efdafc9385471f868eb5ff83e446b8b"}, - {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b37eef18ea55f2ffd8f00ff8fe7c8d3818abd3e25fb73fae2ca3b672e333a7a6"}, - {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:77457465d89b8263bca14759d7c1684df840b6811b2499838cc5b040a8b5b113"}, - {file = "greenlet-3.0.3-cp39-cp39-win32.whl", hash = "sha256:57e8974f23e47dac22b83436bdcf23080ade568ce77df33159e019d161ce1d1e"}, - {file = "greenlet-3.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c5ee858cfe08f34712f548c3c363e807e7186f03ad7a5039ebadb29e8c6be067"}, - {file = "greenlet-3.0.3.tar.gz", hash = "sha256:43374442353259554ce33599da8b692d5aa96f8976d567d4badf263371fbe491"}, -] - -[package.extras] -docs = ["Sphinx", "furo"] -test = ["objgraph", "psutil"] - -[[package]] -name = "h11" -version = "0.14.0" -description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" -optional = false -python-versions = ">=3.7" -files = [ - {file = "h11-0.14.0-py3-none-any.whl", hash = "sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"}, - {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, -] - -[[package]] -name = "httpcore" -version = "1.0.4" -description = "A minimal low-level HTTP client." -optional = false -python-versions = ">=3.8" -files = [ - {file = "httpcore-1.0.4-py3-none-any.whl", hash = "sha256:ac418c1db41bade2ad53ae2f3834a3a0f5ae76b56cf5aa497d2d033384fc7d73"}, - {file = "httpcore-1.0.4.tar.gz", hash = "sha256:cb2839ccfcba0d2d3c1131d3c3e26dfc327326fbe7a5dc0dbfe9f6c9151bb022"}, -] - -[package.dependencies] -certifi = "*" -h11 = ">=0.13,<0.15" - -[package.extras] -asyncio = ["anyio (>=4.0,<5.0)"] -http2 = ["h2 (>=3,<5)"] -socks = ["socksio (==1.*)"] -trio = ["trio (>=0.22.0,<0.25.0)"] - -[[package]] -name = "httpx" -version = "0.27.0" -description = "The next generation HTTP client." -optional = false -python-versions = ">=3.8" -files = [ - {file = "httpx-0.27.0-py3-none-any.whl", hash = "sha256:71d5465162c13681bff01ad59b2cc68dd838ea1f10e51574bac27103f00c91a5"}, - {file = "httpx-0.27.0.tar.gz", hash = "sha256:a0cb88a46f32dc874e04ee956e4c2764aba2aa228f650b06788ba6bda2962ab5"}, -] - -[package.dependencies] -anyio = "*" -certifi = "*" -httpcore = "==1.*" -idna = "*" -sniffio = "*" - -[package.extras] -brotli = ["brotli", "brotlicffi"] -cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] -http2 = ["h2 (>=3,<5)"] -socks = ["socksio (==1.*)"] - -[[package]] -name = "identify" -version = "2.5.35" -description = "File identification library for Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "identify-2.5.35-py2.py3-none-any.whl", hash = "sha256:c4de0081837b211594f8e877a6b4fad7ca32bbfc1a9307fdd61c28bfe923f13e"}, - {file = "identify-2.5.35.tar.gz", hash = "sha256:10a7ca245cfcd756a554a7288159f72ff105ad233c7c4b9c6f0f4d108f5f6791"}, -] - -[package.extras] -license = ["ukkonen"] - -[[package]] -name = "idna" -version = "3.6" -description = "Internationalized Domain Names in Applications (IDNA)" -optional = false -python-versions = ">=3.5" -files = [ - {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, - {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, -] - -[[package]] -name = "importlib-metadata" -version = "7.0.1" -description = "Read metadata from Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "importlib_metadata-7.0.1-py3-none-any.whl", hash = "sha256:4805911c3a4ec7c3966410053e9ec6a1fecd629117df5adee56dfc9432a1081e"}, - {file = "importlib_metadata-7.0.1.tar.gz", hash = "sha256:f238736bb06590ae52ac1fab06a3a9ef1d8dce2b7a35b5ab329371d6c8f5d2cc"}, -] - -[package.dependencies] -zipp = ">=0.5" - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"] - -[[package]] -name = "iniconfig" -version = "2.0.0" -description = "brain-dead simple config-ini parsing" -optional = false -python-versions = ">=3.7" -files = [ - {file = "iniconfig-2.0.0-py3-none-any.whl", hash = "sha256:b6a85871a79d2e3b22d2d1b94ac2824226a63c6b741c88f7ae975f18b6778374"}, - {file = "iniconfig-2.0.0.tar.gz", hash = "sha256:2d91e135bf72d31a410b17c16da610a82cb55f6b0477d1a902134b24a455b8b3"}, -] - -[[package]] -name = "ipykernel" -version = "6.29.3" -description = "IPython Kernel for Jupyter" -optional = false -python-versions = ">=3.8" -files = [ - {file = "ipykernel-6.29.3-py3-none-any.whl", hash = "sha256:5aa086a4175b0229d4eca211e181fb473ea78ffd9869af36ba7694c947302a21"}, - {file = "ipykernel-6.29.3.tar.gz", hash = "sha256:e14c250d1f9ea3989490225cc1a542781b095a18a19447fcf2b5eaf7d0ac5bd2"}, -] - -[package.dependencies] -appnope = {version = "*", markers = "platform_system == \"Darwin\""} -comm = ">=0.1.1" -debugpy = ">=1.6.5" -ipython = ">=7.23.1" -jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" -matplotlib-inline = ">=0.1" -nest-asyncio = "*" -packaging = "*" -psutil = "*" -pyzmq = ">=24" -tornado = ">=6.1" -traitlets = ">=5.4.0" - -[package.extras] -cov = ["coverage[toml]", "curio", "matplotlib", "pytest-cov", "trio"] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "trio"] -pyqt5 = ["pyqt5"] -pyside6 = ["pyside6"] -test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.23.5)", "pytest-cov", "pytest-timeout"] - -[[package]] -name = "ipython" -version = "8.10.0" -description = "IPython: Productive Interactive Computing" -optional = false -python-versions = ">=3.8" -files = [ - {file = "ipython-8.10.0-py3-none-any.whl", hash = "sha256:b38c31e8fc7eff642fc7c597061fff462537cf2314e3225a19c906b7b0d8a345"}, - {file = "ipython-8.10.0.tar.gz", hash = "sha256:b13a1d6c1f5818bd388db53b7107d17454129a70de2b87481d555daede5eb49e"}, -] - -[package.dependencies] -appnope = {version = "*", markers = "sys_platform == \"darwin\""} -backcall = "*" -colorama = {version = "*", markers = "sys_platform == \"win32\""} -decorator = "*" -jedi = ">=0.16" -matplotlib-inline = "*" -pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} -pickleshare = "*" -prompt-toolkit = ">=3.0.30,<3.1.0" -pygments = ">=2.4.0" -stack-data = "*" -traitlets = ">=5" - -[package.extras] -all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] -black = ["black"] -doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] -kernel = ["ipykernel"] -nbconvert = ["nbconvert"] -nbformat = ["nbformat"] -notebook = ["ipywidgets", "notebook"] -parallel = ["ipyparallel"] -qtconsole = ["qtconsole"] -test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] -test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] - -[[package]] -name = "ipywidgets" -version = "8.1.2" -description = "Jupyter interactive widgets" -optional = false -python-versions = ">=3.7" -files = [ - {file = "ipywidgets-8.1.2-py3-none-any.whl", hash = "sha256:bbe43850d79fb5e906b14801d6c01402857996864d1e5b6fa62dd2ee35559f60"}, - {file = "ipywidgets-8.1.2.tar.gz", hash = "sha256:d0b9b41e49bae926a866e613a39b0f0097745d2b9f1f3dd406641b4a57ec42c9"}, -] - -[package.dependencies] -comm = ">=0.1.3" -ipython = ">=6.1.0" -jupyterlab-widgets = ">=3.0.10,<3.1.0" -traitlets = ">=4.3.1" -widgetsnbextension = ">=4.0.10,<4.1.0" - -[package.extras] -test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] - -[[package]] -name = "isoduration" -version = "20.11.0" -description = "Operations with ISO 8601 durations" -optional = false -python-versions = ">=3.7" -files = [ - {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, - {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, -] - -[package.dependencies] -arrow = ">=0.15.0" - -[[package]] -name = "isort" -version = "5.13.2" -description = "A Python utility / library to sort Python imports." -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "isort-5.13.2-py3-none-any.whl", hash = "sha256:8ca5e72a8d85860d5a3fa69b8745237f2939afe12dbf656afbcb47fe72d947a6"}, - {file = "isort-5.13.2.tar.gz", hash = "sha256:48fdfcb9face5d58a4f6dde2e72a1fb8dcaf8ab26f95ab49fab84c2ddefb0109"}, -] - -[package.extras] -colors = ["colorama (>=0.4.6)"] - -[[package]] -name = "jedi" -version = "0.19.1" -description = "An autocompletion tool for Python that can be used for text editors." -optional = false -python-versions = ">=3.6" -files = [ - {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, - {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, -] - -[package.dependencies] -parso = ">=0.8.3,<0.9.0" - -[package.extras] -docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] -qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] -testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] - -[[package]] -name = "jinja2" -version = "3.1.3" -description = "A very fast and expressive template engine." -optional = false -python-versions = ">=3.7" -files = [ - {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"}, - {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"}, -] - -[package.dependencies] -MarkupSafe = ">=2.0" - -[package.extras] -i18n = ["Babel (>=2.7)"] - -[[package]] -name = "joblib" -version = "1.3.2" -description = "Lightweight pipelining with Python functions" -optional = false -python-versions = ">=3.7" -files = [ - {file = "joblib-1.3.2-py3-none-any.whl", hash = "sha256:ef4331c65f239985f3f2220ecc87db222f08fd22097a3dd5698f693875f8cbb9"}, - {file = "joblib-1.3.2.tar.gz", hash = "sha256:92f865e621e17784e7955080b6d042489e3b8e294949cc44c6eac304f59772b1"}, -] - -[[package]] -name = "json5" -version = "0.9.17" -description = "A Python implementation of the JSON5 data format." -optional = false -python-versions = ">=3.8" -files = [ - {file = "json5-0.9.17-py2.py3-none-any.whl", hash = "sha256:f8ec1ecf985951d70f780f6f877c4baca6a47b6e61e02c4cd190138d10a7805a"}, - {file = "json5-0.9.17.tar.gz", hash = "sha256:717d99d657fa71b7094877b1d921b1cce40ab444389f6d770302563bb7dfd9ae"}, -] - -[package.extras] -dev = ["hypothesis"] - -[[package]] -name = "jsonpointer" -version = "2.4" -description = "Identify specific nodes in a JSON document (RFC 6901)" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" -files = [ - {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, - {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, -] - -[[package]] -name = "jsonschema" -version = "4.21.1" -description = "An implementation of JSON Schema validation for Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jsonschema-4.21.1-py3-none-any.whl", hash = "sha256:7996507afae316306f9e2290407761157c6f78002dcf7419acb99822143d1c6f"}, - {file = "jsonschema-4.21.1.tar.gz", hash = "sha256:85727c00279f5fa6bedbe6238d2aa6403bedd8b4864ab11207d07df3cc1b2ee5"}, -] - -[package.dependencies] -attrs = ">=22.2.0" -fqdn = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} -idna = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} -isoduration = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} -jsonpointer = {version = ">1.13", optional = true, markers = "extra == \"format-nongpl\""} -jsonschema-specifications = ">=2023.03.6" -referencing = ">=0.28.4" -rfc3339-validator = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} -rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""} -rpds-py = ">=0.7.1" -uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} -webcolors = {version = ">=1.11", optional = true, markers = "extra == \"format-nongpl\""} - -[package.extras] -format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] -format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"] - -[[package]] -name = "jsonschema-specifications" -version = "2023.12.1" -description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c"}, - {file = "jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc"}, -] - -[package.dependencies] -referencing = ">=0.31.0" - -[[package]] -name = "jupyter" -version = "1.0.0" -description = "Jupyter metapackage. Install all the Jupyter components in one go." -optional = false -python-versions = "*" -files = [ - {file = "jupyter-1.0.0-py2.py3-none-any.whl", hash = "sha256:5b290f93b98ffbc21c0c7e749f054b3267782166d72fa5e3ed1ed4eaf34a2b78"}, - {file = "jupyter-1.0.0.tar.gz", hash = "sha256:d9dc4b3318f310e34c82951ea5d6683f67bed7def4b259fafbfe4f1beb1d8e5f"}, - {file = "jupyter-1.0.0.zip", hash = "sha256:3e1f86076bbb7c8c207829390305a2b1fe836d471ed54be66a3b8c41e7f46cc7"}, -] - -[package.dependencies] -ipykernel = "*" -ipywidgets = "*" -jupyter-console = "*" -nbconvert = "*" -notebook = "*" -qtconsole = "*" - -[[package]] -name = "jupyter-client" -version = "8.6.0" -description = "Jupyter protocol implementation and client libraries" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyter_client-8.6.0-py3-none-any.whl", hash = "sha256:909c474dbe62582ae62b758bca86d6518c85234bdee2d908c778db6d72f39d99"}, - {file = "jupyter_client-8.6.0.tar.gz", hash = "sha256:0642244bb83b4764ae60d07e010e15f0e2d275ec4e918a8f7b80fbbef3ca60c7"}, -] - -[package.dependencies] -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" -python-dateutil = ">=2.8.2" -pyzmq = ">=23.0" -tornado = ">=6.2" -traitlets = ">=5.3" - -[package.extras] -docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] - -[[package]] -name = "jupyter-console" -version = "6.6.3" -description = "Jupyter terminal console" -optional = false -python-versions = ">=3.7" -files = [ - {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, - {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, -] - -[package.dependencies] -ipykernel = ">=6.14" -ipython = "*" -jupyter-client = ">=7.0.0" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" -prompt-toolkit = ">=3.0.30" -pygments = "*" -pyzmq = ">=17" -traitlets = ">=5.4" - -[package.extras] -test = ["flaky", "pexpect", "pytest"] - -[[package]] -name = "jupyter-core" -version = "5.7.1" -description = "Jupyter core package. A base package on which Jupyter projects rely." -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyter_core-5.7.1-py3-none-any.whl", hash = "sha256:c65c82126453a723a2804aa52409930434598fd9d35091d63dfb919d2b765bb7"}, - {file = "jupyter_core-5.7.1.tar.gz", hash = "sha256:de61a9d7fc71240f688b2fb5ab659fbb56979458dc66a71decd098e03c79e218"}, -] - -[package.dependencies] -platformdirs = ">=2.5" -pywin32 = {version = ">=300", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""} -traitlets = ">=5.3" - -[package.extras] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "traitlets"] -test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"] - -[[package]] -name = "jupyter-events" -version = "0.9.0" -description = "Jupyter Event System library" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyter_events-0.9.0-py3-none-any.whl", hash = "sha256:d853b3c10273ff9bc8bb8b30076d65e2c9685579db736873de6c2232dde148bf"}, - {file = "jupyter_events-0.9.0.tar.gz", hash = "sha256:81ad2e4bc710881ec274d31c6c50669d71bbaa5dd9d01e600b56faa85700d399"}, -] - -[package.dependencies] -jsonschema = {version = ">=4.18.0", extras = ["format-nongpl"]} -python-json-logger = ">=2.0.4" -pyyaml = ">=5.3" -referencing = "*" -rfc3339-validator = "*" -rfc3986-validator = ">=0.1.1" -traitlets = ">=5.3" - -[package.extras] -cli = ["click", "rich"] -docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme", "sphinxcontrib-spelling"] -test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "rich"] - -[[package]] -name = "jupyter-lsp" -version = "2.2.3" -description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyter-lsp-2.2.3.tar.gz", hash = "sha256:33dbcbc5df24237ff5c8b696b04ff4689fcd316cb8d4957d620fe5504d7d2c3f"}, - {file = "jupyter_lsp-2.2.3-py3-none-any.whl", hash = "sha256:57dd90d0a2e2530831793550846168c81c952b49e187aa339e455027a5f0fd2e"}, -] - -[package.dependencies] -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -jupyter-server = ">=1.1.2" - -[[package]] -name = "jupyter-server" -version = "2.12.5" -description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyter_server-2.12.5-py3-none-any.whl", hash = "sha256:184a0f82809a8522777cfb6b760ab6f4b1bb398664c5860a27cec696cb884923"}, - {file = "jupyter_server-2.12.5.tar.gz", hash = "sha256:0edb626c94baa22809be1323f9770cf1c00a952b17097592e40d03e6a3951689"}, -] - -[package.dependencies] -anyio = ">=3.1.0" -argon2-cffi = "*" -jinja2 = "*" -jupyter-client = ">=7.4.4" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" -jupyter-events = ">=0.9.0" -jupyter-server-terminals = "*" -nbconvert = ">=6.4.4" -nbformat = ">=5.3.0" -overrides = "*" -packaging = "*" -prometheus-client = "*" -pywinpty = {version = "*", markers = "os_name == \"nt\""} -pyzmq = ">=24" -send2trash = ">=1.8.2" -terminado = ">=0.8.3" -tornado = ">=6.2.0" -traitlets = ">=5.6.0" -websocket-client = "*" - -[package.extras] -docs = ["ipykernel", "jinja2", "jupyter-client", "jupyter-server", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] -test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.4)", "pytest-timeout", "requests"] - -[[package]] -name = "jupyter-server-terminals" -version = "0.5.2" -description = "A Jupyter Server Extension Providing Terminals." -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyter_server_terminals-0.5.2-py3-none-any.whl", hash = "sha256:1b80c12765da979513c42c90215481bbc39bd8ae7c0350b4f85bc3eb58d0fa80"}, - {file = "jupyter_server_terminals-0.5.2.tar.gz", hash = "sha256:396b5ccc0881e550bf0ee7012c6ef1b53edbde69e67cab1d56e89711b46052e8"}, -] - -[package.dependencies] -pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""} -terminado = ">=0.8.3" - -[package.extras] -docs = ["jinja2", "jupyter-server", "mistune (<4.0)", "myst-parser", "nbformat", "packaging", "pydata-sphinx-theme", "sphinxcontrib-github-alt", "sphinxcontrib-openapi", "sphinxcontrib-spelling", "sphinxemoji", "tornado"] -test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (>=0.5.3)", "pytest-timeout"] - -[[package]] -name = "jupyterlab" -version = "4.1.2" -description = "JupyterLab computational environment" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyterlab-4.1.2-py3-none-any.whl", hash = "sha256:aa88193f03cf4d3555f6712f04d74112b5eb85edd7d222c588c7603a26d33c5b"}, - {file = "jupyterlab-4.1.2.tar.gz", hash = "sha256:5d6348b3ed4085181499f621b7dfb6eb0b1f57f3586857aadfc8e3bf4c4885f9"}, -] - -[package.dependencies] -async-lru = ">=1.0.0" -httpx = ">=0.25.0" -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -ipykernel = "*" -jinja2 = ">=3.0.3" -jupyter-core = "*" -jupyter-lsp = ">=2.0.0" -jupyter-server = ">=2.4.0,<3" -jupyterlab-server = ">=2.19.0,<3" -notebook-shim = ">=0.2" -packaging = "*" -tomli = {version = "*", markers = "python_version < \"3.11\""} -tornado = ">=6.2.0" -traitlets = "*" - -[package.extras] -dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.2.0)"] -docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<7.3.0)", "sphinx-copybutton"] -docs-screenshots = ["altair (==5.2.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.1)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.0.post6)", "matplotlib (==3.8.2)", "nbconvert (>=7.0.0)", "pandas (==2.2.0)", "scipy (==1.12.0)", "vega-datasets (==0.9.0)"] -test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] - -[[package]] -name = "jupyterlab-pygments" -version = "0.3.0" -description = "Pygments theme using JupyterLab CSS variables" -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, - {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, -] - -[[package]] -name = "jupyterlab-server" -version = "2.25.3" -description = "A set of server components for JupyterLab and JupyterLab like applications." -optional = false -python-versions = ">=3.8" -files = [ - {file = "jupyterlab_server-2.25.3-py3-none-any.whl", hash = "sha256:c48862519fded9b418c71645d85a49b2f0ec50d032ba8316738e9276046088c1"}, - {file = "jupyterlab_server-2.25.3.tar.gz", hash = "sha256:846f125a8a19656611df5b03e5912c8393cea6900859baa64fa515eb64a8dc40"}, -] - -[package.dependencies] -babel = ">=2.10" -importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -jinja2 = ">=3.0.3" -json5 = ">=0.9.0" -jsonschema = ">=4.18.0" -jupyter-server = ">=1.21,<3" -packaging = ">=21.3" -requests = ">=2.31" - -[package.extras] -docs = ["autodoc-traits", "jinja2 (<3.2.0)", "mistune (<4)", "myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinxcontrib-openapi (>0.8)"] -openapi = ["openapi-core (>=0.18.0,<0.19.0)", "ruamel-yaml"] -test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-validator (>=0.6.0,<0.8.0)", "pytest (>=7.0)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter[server] (>=0.6.2)", "pytest-timeout", "requests-mock", "ruamel-yaml", "sphinxcontrib-spelling", "strict-rfc3339", "werkzeug"] - -[[package]] -name = "jupyterlab-widgets" -version = "3.0.10" -description = "Jupyter interactive widgets for JupyterLab" -optional = false -python-versions = ">=3.7" -files = [ - {file = "jupyterlab_widgets-3.0.10-py3-none-any.whl", hash = "sha256:dd61f3ae7a5a7f80299e14585ce6cf3d6925a96c9103c978eda293197730cb64"}, - {file = "jupyterlab_widgets-3.0.10.tar.gz", hash = "sha256:04f2ac04976727e4f9d0fa91cdc2f1ab860f965e504c29dbd6a65c882c9d04c0"}, -] - -[[package]] -name = "lazy-object-proxy" -version = "1.10.0" -description = "A fast and thorough lazy object proxy." -optional = false -python-versions = ">=3.8" -files = [ - {file = "lazy-object-proxy-1.10.0.tar.gz", hash = "sha256:78247b6d45f43a52ef35c25b5581459e85117225408a4128a3daf8bf9648ac69"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:855e068b0358ab916454464a884779c7ffa312b8925c6f7401e952dcf3b89977"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab7004cf2e59f7c2e4345604a3e6ea0d92ac44e1c2375527d56492014e690c3"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dc0d2fc424e54c70c4bc06787e4072c4f3b1aa2f897dfdc34ce1013cf3ceef05"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e2adb09778797da09d2b5ebdbceebf7dd32e2c96f79da9052b2e87b6ea495895"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b1f711e2c6dcd4edd372cf5dec5c5a30d23bba06ee012093267b3376c079ec83"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-win32.whl", hash = "sha256:76a095cfe6045c7d0ca77db9934e8f7b71b14645f0094ffcd842349ada5c5fb9"}, - {file = "lazy_object_proxy-1.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:b4f87d4ed9064b2628da63830986c3d2dca7501e6018347798313fcf028e2fd4"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fec03caabbc6b59ea4a638bee5fce7117be8e99a4103d9d5ad77f15d6f81020c"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:02c83f957782cbbe8136bee26416686a6ae998c7b6191711a04da776dc9e47d4"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:009e6bb1f1935a62889ddc8541514b6a9e1fcf302667dcb049a0be5c8f613e56"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:75fc59fc450050b1b3c203c35020bc41bd2695ed692a392924c6ce180c6f1dc9"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:782e2c9b2aab1708ffb07d4bf377d12901d7a1d99e5e410d648d892f8967ab1f"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-win32.whl", hash = "sha256:edb45bb8278574710e68a6b021599a10ce730d156e5b254941754a9cc0b17d03"}, - {file = "lazy_object_proxy-1.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:e271058822765ad5e3bca7f05f2ace0de58a3f4e62045a8c90a0dfd2f8ad8cc6"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e98c8af98d5707dcdecc9ab0863c0ea6e88545d42ca7c3feffb6b4d1e370c7ba"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:952c81d415b9b80ea261d2372d2a4a2332a3890c2b83e0535f263ddfe43f0d43"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80b39d3a151309efc8cc48675918891b865bdf742a8616a337cb0090791a0de9"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e221060b701e2aa2ea991542900dd13907a5c90fa80e199dbf5a03359019e7a3"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:92f09ff65ecff3108e56526f9e2481b8116c0b9e1425325e13245abfd79bdb1b"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-win32.whl", hash = "sha256:3ad54b9ddbe20ae9f7c1b29e52f123120772b06dbb18ec6be9101369d63a4074"}, - {file = "lazy_object_proxy-1.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:127a789c75151db6af398b8972178afe6bda7d6f68730c057fbbc2e96b08d282"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4ed0518a14dd26092614412936920ad081a424bdcb54cc13349a8e2c6d106a"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5ad9e6ed739285919aa9661a5bbed0aaf410aa60231373c5579c6b4801bd883c"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2fc0a92c02fa1ca1e84fc60fa258458e5bf89d90a1ddaeb8ed9cc3147f417255"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0aefc7591920bbd360d57ea03c995cebc204b424524a5bd78406f6e1b8b2a5d8"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5faf03a7d8942bb4476e3b62fd0f4cf94eaf4618e304a19865abf89a35c0bbee"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-win32.whl", hash = "sha256:e333e2324307a7b5d86adfa835bb500ee70bfcd1447384a822e96495796b0ca4"}, - {file = "lazy_object_proxy-1.10.0-cp38-cp38-win_amd64.whl", hash = "sha256:cb73507defd385b7705c599a94474b1d5222a508e502553ef94114a143ec6696"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:366c32fe5355ef5fc8a232c5436f4cc66e9d3e8967c01fb2e6302fd6627e3d94"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2297f08f08a2bb0d32a4265e98a006643cd7233fb7983032bd61ac7a02956b3b"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18dd842b49456aaa9a7cf535b04ca4571a302ff72ed8740d06b5adcd41fe0757"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:217138197c170a2a74ca0e05bddcd5f1796c735c37d0eee33e43259b192aa424"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:9a3a87cf1e133e5b1994144c12ca4aa3d9698517fe1e2ca82977781b16955658"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-win32.whl", hash = "sha256:30b339b2a743c5288405aa79a69e706a06e02958eab31859f7f3c04980853b70"}, - {file = "lazy_object_proxy-1.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:a899b10e17743683b293a729d3a11f2f399e8a90c73b089e29f5d0fe3509f0dd"}, - {file = "lazy_object_proxy-1.10.0-pp310.pp311.pp312.pp38.pp39-none-any.whl", hash = "sha256:80fa48bd89c8f2f456fc0765c11c23bf5af827febacd2f523ca5bc1893fcc09d"}, -] - -[[package]] -name = "llama-index-core" -version = "0.10.13" -description = "Interface between LLMs and your data" -optional = false -python-versions = ">=3.8.1,<4.0" -files = [ - {file = "llama_index_core-0.10.13-py3-none-any.whl", hash = "sha256:40c76fc02be7cd948a333ca541f2ff38cf02774e1c960674e2b68c61943bac90"}, - {file = "llama_index_core-0.10.13.tar.gz", hash = "sha256:826fded00767923fba8aca94f46c32b259e8879f517016ab7a3801b1b37187a1"}, -] - -[package.dependencies] -aiohttp = ">=3.8.6,<4.0.0" -dataclasses-json = "*" -deprecated = ">=1.2.9.3" -dirtyjson = ">=1.0.8,<2.0.0" -fsspec = ">=2023.5.0" -httpx = "*" -llamaindex-py-client = ">=0.1.13,<0.2.0" -nest-asyncio = ">=1.5.8,<2.0.0" -networkx = ">=3.0" -nltk = ">=3.8.1,<4.0.0" -numpy = "*" -openai = ">=1.1.0" -pandas = "*" -pillow = ">=9.0.0" -PyYAML = ">=6.0.1" -requests = ">=2.31.0" -SQLAlchemy = {version = ">=1.4.49", extras = ["asyncio"]} -tenacity = ">=8.2.0,<9.0.0" -tiktoken = ">=0.3.3" -tqdm = ">=4.66.1,<5.0.0" -typing-extensions = ">=4.5.0" -typing-inspect = ">=0.8.0" - -[package.extras] -gradientai = ["gradientai (>=1.4.0)"] -html = ["beautifulsoup4 (>=4.12.2,<5.0.0)"] -langchain = ["langchain (>=0.0.303)"] -local-models = ["optimum[onnxruntime] (>=1.13.2,<2.0.0)", "sentencepiece (>=0.1.99,<0.2.0)", "transformers[torch] (>=4.33.1,<5.0.0)"] -postgres = ["asyncpg (>=0.28.0,<0.29.0)", "pgvector (>=0.1.0,<0.2.0)", "psycopg2-binary (>=2.9.9,<3.0.0)"] -query-tools = ["guidance (>=0.0.64,<0.0.65)", "jsonpath-ng (>=1.6.0,<2.0.0)", "lm-format-enforcer (>=0.4.3,<0.5.0)", "rank-bm25 (>=0.2.2,<0.3.0)", "scikit-learn", "spacy (>=3.7.1,<4.0.0)"] - -[[package]] -name = "llama-index-llms-openai" -version = "0.1.6" -description = "llama-index llms openai integration" -optional = false -python-versions = ">=3.8.1,<4.0" -files = [ - {file = "llama_index_llms_openai-0.1.6-py3-none-any.whl", hash = "sha256:4260ad31c3444e97ec8a8d061cb6dbf1074262b82341a2b69d2b27e8a23efe62"}, - {file = "llama_index_llms_openai-0.1.6.tar.gz", hash = "sha256:15530dfa3893b15c5576ebc71e01b77acbf47abd689219436fdf7b6ca567a9fd"}, -] - -[package.dependencies] -llama-index-core = ">=0.10.1,<0.11.0" - -[[package]] -name = "llamaindex-py-client" -version = "0.1.13" -description = "" -optional = false -python-versions = ">=3.8,<4.0" -files = [ - {file = "llamaindex_py_client-0.1.13-py3-none-any.whl", hash = "sha256:02400c90655da80ae373e0455c829465208607d72462f1898fd383fdfe8dabce"}, - {file = "llamaindex_py_client-0.1.13.tar.gz", hash = "sha256:3bd9b435ee0a78171eba412dea5674d813eb5bf36e577d3c7c7e90edc54900d9"}, -] - -[package.dependencies] -httpx = ">=0.20.0" -pydantic = ">=1.10" - -[[package]] -name = "llvmlite" -version = "0.41.1" -description = "lightweight wrapper around basic LLVM functionality" -optional = false -python-versions = ">=3.8" -files = [ - {file = "llvmlite-0.41.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c1e1029d47ee66d3a0c4d6088641882f75b93db82bd0e6178f7bd744ebce42b9"}, - {file = "llvmlite-0.41.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:150d0bc275a8ac664a705135e639178883293cf08c1a38de3bbaa2f693a0a867"}, - {file = "llvmlite-0.41.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1eee5cf17ec2b4198b509272cf300ee6577229d237c98cc6e63861b08463ddc6"}, - {file = "llvmlite-0.41.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dd0338da625346538f1173a17cabf21d1e315cf387ca21b294ff209d176e244"}, - {file = "llvmlite-0.41.1-cp310-cp310-win32.whl", hash = "sha256:fa1469901a2e100c17eb8fe2678e34bd4255a3576d1a543421356e9c14d6e2ae"}, - {file = "llvmlite-0.41.1-cp310-cp310-win_amd64.whl", hash = "sha256:2b76acee82ea0e9304be6be9d4b3840208d050ea0dcad75b1635fa06e949a0ae"}, - {file = "llvmlite-0.41.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:210e458723436b2469d61b54b453474e09e12a94453c97ea3fbb0742ba5a83d8"}, - {file = "llvmlite-0.41.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:855f280e781d49e0640aef4c4af586831ade8f1a6c4df483fb901cbe1a48d127"}, - {file = "llvmlite-0.41.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b67340c62c93a11fae482910dc29163a50dff3dfa88bc874872d28ee604a83be"}, - {file = "llvmlite-0.41.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2181bb63ef3c607e6403813421b46982c3ac6bfc1f11fa16a13eaafb46f578e6"}, - {file = "llvmlite-0.41.1-cp311-cp311-win_amd64.whl", hash = "sha256:9564c19b31a0434f01d2025b06b44c7ed422f51e719ab5d24ff03b7560066c9a"}, - {file = "llvmlite-0.41.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5940bc901fb0325970415dbede82c0b7f3e35c2d5fd1d5e0047134c2c46b3281"}, - {file = "llvmlite-0.41.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8b0a9a47c28f67a269bb62f6256e63cef28d3c5f13cbae4fab587c3ad506778b"}, - {file = "llvmlite-0.41.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8afdfa6da33f0b4226af8e64cfc2b28986e005528fbf944d0a24a72acfc9432"}, - {file = "llvmlite-0.41.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8454c1133ef701e8c050a59edd85d238ee18bb9a0eb95faf2fca8b909ee3c89a"}, - {file = "llvmlite-0.41.1-cp38-cp38-win32.whl", hash = "sha256:2d92c51e6e9394d503033ffe3292f5bef1566ab73029ec853861f60ad5c925d0"}, - {file = "llvmlite-0.41.1-cp38-cp38-win_amd64.whl", hash = "sha256:df75594e5a4702b032684d5481db3af990b69c249ccb1d32687b8501f0689432"}, - {file = "llvmlite-0.41.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:04725975e5b2af416d685ea0769f4ecc33f97be541e301054c9f741003085802"}, - {file = "llvmlite-0.41.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:bf14aa0eb22b58c231243dccf7e7f42f7beec48970f2549b3a6acc737d1a4ba4"}, - {file = "llvmlite-0.41.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:92c32356f669e036eb01016e883b22add883c60739bc1ebee3a1cc0249a50828"}, - {file = "llvmlite-0.41.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24091a6b31242bcdd56ae2dbea40007f462260bc9bdf947953acc39dffd54f8f"}, - {file = "llvmlite-0.41.1-cp39-cp39-win32.whl", hash = "sha256:880cb57ca49e862e1cd077104375b9d1dfdc0622596dfa22105f470d7bacb309"}, - {file = "llvmlite-0.41.1-cp39-cp39-win_amd64.whl", hash = "sha256:92f093986ab92e71c9ffe334c002f96defc7986efda18397d0f08534f3ebdc4d"}, - {file = "llvmlite-0.41.1.tar.gz", hash = "sha256:f19f767a018e6ec89608e1f6b13348fa2fcde657151137cb64e56d48598a92db"}, -] - -[[package]] -name = "markupsafe" -version = "2.1.5" -description = "Safely add untrusted strings to HTML/XML markup." -optional = false -python-versions = ">=3.7" -files = [ - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win32.whl", hash = "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4"}, - {file = "MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl", hash = "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win32.whl", hash = "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906"}, - {file = "MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl", hash = "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win32.whl", hash = "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad"}, - {file = "MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl", hash = "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win32.whl", hash = "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371"}, - {file = "MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl", hash = "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win32.whl", hash = "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff"}, - {file = "MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl", hash = "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win32.whl", hash = "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf"}, - {file = "MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl", hash = "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5"}, - {file = "MarkupSafe-2.1.5.tar.gz", hash = "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b"}, -] - -[[package]] -name = "marshmallow" -version = "3.21.0" -description = "A lightweight library for converting complex datatypes to and from native Python datatypes." -optional = false -python-versions = ">=3.8" -files = [ - {file = "marshmallow-3.21.0-py3-none-any.whl", hash = "sha256:e7997f83571c7fd476042c2c188e4ee8a78900ca5e74bd9c8097afa56624e9bd"}, - {file = "marshmallow-3.21.0.tar.gz", hash = "sha256:20f53be28c6e374a711a16165fb22a8dc6003e3f7cda1285e3ca777b9193885b"}, -] - -[package.dependencies] -packaging = ">=17.0" - -[package.extras] -dev = ["marshmallow[tests]", "pre-commit (>=3.5,<4.0)", "tox"] -docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.2.6)", "sphinx-issues (==4.0.0)", "sphinx-version-warning (==1.1.2)"] -tests = ["pytest", "pytz", "simplejson"] - -[[package]] -name = "matplotlib-inline" -version = "0.1.6" -description = "Inline Matplotlib backend for Jupyter" -optional = false -python-versions = ">=3.5" -files = [ - {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, - {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, -] - -[package.dependencies] -traitlets = "*" - -[[package]] -name = "mccabe" -version = "0.7.0" -description = "McCabe checker, plugin for flake8" -optional = false -python-versions = ">=3.6" -files = [ - {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, - {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, -] - -[[package]] -name = "mistune" -version = "3.0.2" -description = "A sane and fast Markdown parser with useful plugins and renderers" -optional = false -python-versions = ">=3.7" -files = [ - {file = "mistune-3.0.2-py3-none-any.whl", hash = "sha256:71481854c30fdbc938963d3605b72501f5c10a9320ecd412c121c163a1c7d205"}, - {file = "mistune-3.0.2.tar.gz", hash = "sha256:fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8"}, -] - -[[package]] -name = "multidict" -version = "6.0.5" -description = "multidict implementation" -optional = false -python-versions = ">=3.7" -files = [ - {file = "multidict-6.0.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:228b644ae063c10e7f324ab1ab6b548bdf6f8b47f3ec234fef1093bc2735e5f9"}, - {file = "multidict-6.0.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:896ebdcf62683551312c30e20614305f53125750803b614e9e6ce74a96232604"}, - {file = "multidict-6.0.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:411bf8515f3be9813d06004cac41ccf7d1cd46dfe233705933dd163b60e37600"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d147090048129ce3c453f0292e7697d333db95e52616b3793922945804a433c"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:215ed703caf15f578dca76ee6f6b21b7603791ae090fbf1ef9d865571039ade5"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c6390cf87ff6234643428991b7359b5f59cc15155695deb4eda5c777d2b880f"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21fd81c4ebdb4f214161be351eb5bcf385426bf023041da2fd9e60681f3cebae"}, - {file = "multidict-6.0.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3cc2ad10255f903656017363cd59436f2111443a76f996584d1077e43ee51182"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6939c95381e003f54cd4c5516740faba40cf5ad3eeff460c3ad1d3e0ea2549bf"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:220dd781e3f7af2c2c1053da9fa96d9cf3072ca58f057f4c5adaaa1cab8fc442"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:766c8f7511df26d9f11cd3a8be623e59cca73d44643abab3f8c8c07620524e4a"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:fe5d7785250541f7f5019ab9cba2c71169dc7d74d0f45253f8313f436458a4ef"}, - {file = "multidict-6.0.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c1c1496e73051918fcd4f58ff2e0f2f3066d1c76a0c6aeffd9b45d53243702cc"}, - {file = "multidict-6.0.5-cp310-cp310-win32.whl", hash = "sha256:7afcdd1fc07befad18ec4523a782cde4e93e0a2bf71239894b8d61ee578c1319"}, - {file = "multidict-6.0.5-cp310-cp310-win_amd64.whl", hash = "sha256:99f60d34c048c5c2fabc766108c103612344c46e35d4ed9ae0673d33c8fb26e8"}, - {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f285e862d2f153a70586579c15c44656f888806ed0e5b56b64489afe4a2dbfba"}, - {file = "multidict-6.0.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:53689bb4e102200a4fafa9de9c7c3c212ab40a7ab2c8e474491914d2305f187e"}, - {file = "multidict-6.0.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:612d1156111ae11d14afaf3a0669ebf6c170dbb735e510a7438ffe2369a847fd"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7be7047bd08accdb7487737631d25735c9a04327911de89ff1b26b81745bd4e3"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de170c7b4fe6859beb8926e84f7d7d6c693dfe8e27372ce3b76f01c46e489fcf"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04bde7a7b3de05732a4eb39c94574db1ec99abb56162d6c520ad26f83267de29"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85f67aed7bb647f93e7520633d8f51d3cbc6ab96957c71272b286b2f30dc70ed"}, - {file = "multidict-6.0.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425bf820055005bfc8aa9a0b99ccb52cc2f4070153e34b701acc98d201693733"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d3eb1ceec286eba8220c26f3b0096cf189aea7057b6e7b7a2e60ed36b373b77f"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:7901c05ead4b3fb75113fb1dd33eb1253c6d3ee37ce93305acd9d38e0b5f21a4"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:e0e79d91e71b9867c73323a3444724d496c037e578a0e1755ae159ba14f4f3d1"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:29bfeb0dff5cb5fdab2023a7a9947b3b4af63e9c47cae2a10ad58394b517fddc"}, - {file = "multidict-6.0.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e030047e85cbcedbfc073f71836d62dd5dadfbe7531cae27789ff66bc551bd5e"}, - {file = "multidict-6.0.5-cp311-cp311-win32.whl", hash = "sha256:2f4848aa3baa109e6ab81fe2006c77ed4d3cd1e0ac2c1fbddb7b1277c168788c"}, - {file = "multidict-6.0.5-cp311-cp311-win_amd64.whl", hash = "sha256:2faa5ae9376faba05f630d7e5e6be05be22913782b927b19d12b8145968a85ea"}, - {file = "multidict-6.0.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:51d035609b86722963404f711db441cf7134f1889107fb171a970c9701f92e1e"}, - {file = "multidict-6.0.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:cbebcd5bcaf1eaf302617c114aa67569dd3f090dd0ce8ba9e35e9985b41ac35b"}, - {file = "multidict-6.0.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ffc42c922dbfddb4a4c3b438eb056828719f07608af27d163191cb3e3aa6cc5"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ceb3b7e6a0135e092de86110c5a74e46bda4bd4fbfeeb3a3bcec79c0f861e450"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:79660376075cfd4b2c80f295528aa6beb2058fd289f4c9252f986751a4cd0496"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e4428b29611e989719874670fd152b6625500ad6c686d464e99f5aaeeaca175a"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d84a5c3a5f7ce6db1f999fb9438f686bc2e09d38143f2d93d8406ed2dd6b9226"}, - {file = "multidict-6.0.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:76c0de87358b192de7ea9649beb392f107dcad9ad27276324c24c91774ca5271"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:79a6d2ba910adb2cbafc95dad936f8b9386e77c84c35bc0add315b856d7c3abb"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:92d16a3e275e38293623ebf639c471d3e03bb20b8ebb845237e0d3664914caef"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:fb616be3538599e797a2017cccca78e354c767165e8858ab5116813146041a24"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:14c2976aa9038c2629efa2c148022ed5eb4cb939e15ec7aace7ca932f48f9ba6"}, - {file = "multidict-6.0.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:435a0984199d81ca178b9ae2c26ec3d49692d20ee29bc4c11a2a8d4514c67eda"}, - {file = "multidict-6.0.5-cp312-cp312-win32.whl", hash = "sha256:9fe7b0653ba3d9d65cbe7698cca585bf0f8c83dbbcc710db9c90f478e175f2d5"}, - {file = "multidict-6.0.5-cp312-cp312-win_amd64.whl", hash = "sha256:01265f5e40f5a17f8241d52656ed27192be03bfa8764d88e8220141d1e4b3556"}, - {file = "multidict-6.0.5-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:19fe01cea168585ba0f678cad6f58133db2aa14eccaf22f88e4a6dccadfad8b3"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6bf7a982604375a8d49b6cc1b781c1747f243d91b81035a9b43a2126c04766f5"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:107c0cdefe028703fb5dafe640a409cb146d44a6ae201e55b35a4af8e95457dd"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:403c0911cd5d5791605808b942c88a8155c2592e05332d2bf78f18697a5fa15e"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aeaf541ddbad8311a87dd695ed9642401131ea39ad7bc8cf3ef3967fd093b626"}, - {file = "multidict-6.0.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e4972624066095e52b569e02b5ca97dbd7a7ddd4294bf4e7247d52635630dd83"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d946b0a9eb8aaa590df1fe082cee553ceab173e6cb5b03239716338629c50c7a"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b55358304d7a73d7bdf5de62494aaf70bd33015831ffd98bc498b433dfe5b10c"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:a3145cb08d8625b2d3fee1b2d596a8766352979c9bffe5d7833e0503d0f0b5e5"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:d65f25da8e248202bd47445cec78e0025c0fe7582b23ec69c3b27a640dd7a8e3"}, - {file = "multidict-6.0.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c9bf56195c6bbd293340ea82eafd0071cb3d450c703d2c93afb89f93b8386ccc"}, - {file = "multidict-6.0.5-cp37-cp37m-win32.whl", hash = "sha256:69db76c09796b313331bb7048229e3bee7928eb62bab5e071e9f7fcc4879caee"}, - {file = "multidict-6.0.5-cp37-cp37m-win_amd64.whl", hash = "sha256:fce28b3c8a81b6b36dfac9feb1de115bab619b3c13905b419ec71d03a3fc1423"}, - {file = "multidict-6.0.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:76f067f5121dcecf0d63a67f29080b26c43c71a98b10c701b0677e4a065fbd54"}, - {file = "multidict-6.0.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:b82cc8ace10ab5bd93235dfaab2021c70637005e1ac787031f4d1da63d493c1d"}, - {file = "multidict-6.0.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5cb241881eefd96b46f89b1a056187ea8e9ba14ab88ba632e68d7a2ecb7aadf7"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8e94e6912639a02ce173341ff62cc1201232ab86b8a8fcc05572741a5dc7d93"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09a892e4a9fb47331da06948690ae38eaa2426de97b4ccbfafbdcbe5c8f37ff8"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55205d03e8a598cfc688c71ca8ea5f66447164efff8869517f175ea632c7cb7b"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37b15024f864916b4951adb95d3a80c9431299080341ab9544ed148091b53f50"}, - {file = "multidict-6.0.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2a1dee728b52b33eebff5072817176c172050d44d67befd681609b4746e1c2e"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:edd08e6f2f1a390bf137080507e44ccc086353c8e98c657e666c017718561b89"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:60d698e8179a42ec85172d12f50b1668254628425a6bd611aba022257cac1386"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:3d25f19500588cbc47dc19081d78131c32637c25804df8414463ec908631e453"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:4cc0ef8b962ac7a5e62b9e826bd0cd5040e7d401bc45a6835910ed699037a461"}, - {file = "multidict-6.0.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:eca2e9d0cc5a889850e9bbd68e98314ada174ff6ccd1129500103df7a94a7a44"}, - {file = "multidict-6.0.5-cp38-cp38-win32.whl", hash = "sha256:4a6a4f196f08c58c59e0b8ef8ec441d12aee4125a7d4f4fef000ccb22f8d7241"}, - {file = "multidict-6.0.5-cp38-cp38-win_amd64.whl", hash = "sha256:0275e35209c27a3f7951e1ce7aaf93ce0d163b28948444bec61dd7badc6d3f8c"}, - {file = "multidict-6.0.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e7be68734bd8c9a513f2b0cfd508802d6609da068f40dc57d4e3494cefc92929"}, - {file = "multidict-6.0.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:1d9ea7a7e779d7a3561aade7d596649fbecfa5c08a7674b11b423783217933f9"}, - {file = "multidict-6.0.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ea1456df2a27c73ce51120fa2f519f1bea2f4a03a917f4a43c8707cf4cbbae1a"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf590b134eb70629e350691ecca88eac3e3b8b3c86992042fb82e3cb1830d5e1"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5c0631926c4f58e9a5ccce555ad7747d9a9f8b10619621f22f9635f069f6233e"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dce1c6912ab9ff5f179eaf6efe7365c1f425ed690b03341911bf4939ef2f3046"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0868d64af83169e4d4152ec612637a543f7a336e4a307b119e98042e852ad9c"}, - {file = "multidict-6.0.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:141b43360bfd3bdd75f15ed811850763555a251e38b2405967f8e25fb43f7d40"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7df704ca8cf4a073334e0427ae2345323613e4df18cc224f647f251e5e75a527"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6214c5a5571802c33f80e6c84713b2c79e024995b9c5897f794b43e714daeec9"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:cd6c8fca38178e12c00418de737aef1261576bd1b6e8c6134d3e729a4e858b38"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:e02021f87a5b6932fa6ce916ca004c4d441509d33bbdbeca70d05dff5e9d2479"}, - {file = "multidict-6.0.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ebd8d160f91a764652d3e51ce0d2956b38efe37c9231cd82cfc0bed2e40b581c"}, - {file = "multidict-6.0.5-cp39-cp39-win32.whl", hash = "sha256:04da1bb8c8dbadf2a18a452639771951c662c5ad03aefe4884775454be322c9b"}, - {file = "multidict-6.0.5-cp39-cp39-win_amd64.whl", hash = "sha256:d6f6d4f185481c9669b9447bf9d9cf3b95a0e9df9d169bbc17e363b7d5487755"}, - {file = "multidict-6.0.5-py3-none-any.whl", hash = "sha256:0d63c74e3d7ab26de115c49bffc92cc77ed23395303d496eae515d4204a625e7"}, - {file = "multidict-6.0.5.tar.gz", hash = "sha256:f7e301075edaf50500f0b341543c41194d8df3ae5caf4702f2095f3ca73dd8da"}, -] - -[[package]] -name = "mypy" -version = "0.991" -description = "Optional static typing for Python" -optional = false -python-versions = ">=3.7" -files = [ - {file = "mypy-0.991-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7d17e0a9707d0772f4a7b878f04b4fd11f6f5bcb9b3813975a9b13c9332153ab"}, - {file = "mypy-0.991-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0714258640194d75677e86c786e80ccf294972cc76885d3ebbb560f11db0003d"}, - {file = "mypy-0.991-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0c8f3be99e8a8bd403caa8c03be619544bc2c77a7093685dcf308c6b109426c6"}, - {file = "mypy-0.991-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc9ec663ed6c8f15f4ae9d3c04c989b744436c16d26580eaa760ae9dd5d662eb"}, - {file = "mypy-0.991-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4307270436fd7694b41f913eb09210faff27ea4979ecbcd849e57d2da2f65305"}, - {file = "mypy-0.991-cp310-cp310-win_amd64.whl", hash = "sha256:901c2c269c616e6cb0998b33d4adbb4a6af0ac4ce5cd078afd7bc95830e62c1c"}, - {file = "mypy-0.991-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:d13674f3fb73805ba0c45eb6c0c3053d218aa1f7abead6e446d474529aafc372"}, - {file = "mypy-0.991-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1c8cd4fb70e8584ca1ed5805cbc7c017a3d1a29fb450621089ffed3e99d1857f"}, - {file = "mypy-0.991-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:209ee89fbb0deed518605edddd234af80506aec932ad28d73c08f1400ef80a33"}, - {file = "mypy-0.991-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:37bd02ebf9d10e05b00d71302d2c2e6ca333e6c2a8584a98c00e038db8121f05"}, - {file = "mypy-0.991-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:26efb2fcc6b67e4d5a55561f39176821d2adf88f2745ddc72751b7890f3194ad"}, - {file = "mypy-0.991-cp311-cp311-win_amd64.whl", hash = "sha256:3a700330b567114b673cf8ee7388e949f843b356a73b5ab22dd7cff4742a5297"}, - {file = "mypy-0.991-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:1f7d1a520373e2272b10796c3ff721ea1a0712288cafaa95931e66aa15798813"}, - {file = "mypy-0.991-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:641411733b127c3e0dab94c45af15fea99e4468f99ac88b39efb1ad677da5711"}, - {file = "mypy-0.991-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3d80e36b7d7a9259b740be6d8d906221789b0d836201af4234093cae89ced0cd"}, - {file = "mypy-0.991-cp37-cp37m-win_amd64.whl", hash = "sha256:e62ebaad93be3ad1a828a11e90f0e76f15449371ffeecca4a0a0b9adc99abcef"}, - {file = "mypy-0.991-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b86ce2c1866a748c0f6faca5232059f881cda6dda2a893b9a8373353cfe3715a"}, - {file = "mypy-0.991-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ac6e503823143464538efda0e8e356d871557ef60ccd38f8824a4257acc18d93"}, - {file = "mypy-0.991-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0cca5adf694af539aeaa6ac633a7afe9bbd760df9d31be55ab780b77ab5ae8bf"}, - {file = "mypy-0.991-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a12c56bf73cdab116df96e4ff39610b92a348cc99a1307e1da3c3768bbb5b135"}, - {file = "mypy-0.991-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:652b651d42f155033a1967739788c436491b577b6a44e4c39fb340d0ee7f0d70"}, - {file = "mypy-0.991-cp38-cp38-win_amd64.whl", hash = "sha256:4175593dc25d9da12f7de8de873a33f9b2b8bdb4e827a7cae952e5b1a342e243"}, - {file = "mypy-0.991-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:98e781cd35c0acf33eb0295e8b9c55cdbef64fcb35f6d3aa2186f289bed6e80d"}, - {file = "mypy-0.991-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6d7464bac72a85cb3491c7e92b5b62f3dcccb8af26826257760a552a5e244aa5"}, - {file = "mypy-0.991-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c9166b3f81a10cdf9b49f2d594b21b31adadb3d5e9db9b834866c3258b695be3"}, - {file = "mypy-0.991-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8472f736a5bfb159a5e36740847808f6f5b659960115ff29c7cecec1741c648"}, - {file = "mypy-0.991-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e80e758243b97b618cdf22004beb09e8a2de1af481382e4d84bc52152d1c476"}, - {file = "mypy-0.991-cp39-cp39-win_amd64.whl", hash = "sha256:74e259b5c19f70d35fcc1ad3d56499065c601dfe94ff67ae48b85596b9ec1461"}, - {file = "mypy-0.991-py3-none-any.whl", hash = "sha256:de32edc9b0a7e67c2775e574cb061a537660e51210fbf6006b0b36ea695ae9bb"}, - {file = "mypy-0.991.tar.gz", hash = "sha256:3c0165ba8f354a6d9881809ef29f1a9318a236a6d81c690094c5df32107bde06"}, -] - -[package.dependencies] -mypy-extensions = ">=0.4.3" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = ">=3.10" - -[package.extras] -dmypy = ["psutil (>=4.0)"] -install-types = ["pip"] -python2 = ["typed-ast (>=1.4.0,<2)"] -reports = ["lxml"] - -[[package]] -name = "mypy-extensions" -version = "1.0.0" -description = "Type system extensions for programs checked with the mypy type checker." -optional = false -python-versions = ">=3.5" -files = [ - {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"}, - {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, -] - -[[package]] -name = "nbclient" -version = "0.9.0" -description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "nbclient-0.9.0-py3-none-any.whl", hash = "sha256:a3a1ddfb34d4a9d17fc744d655962714a866639acd30130e9be84191cd97cd15"}, - {file = "nbclient-0.9.0.tar.gz", hash = "sha256:4b28c207877cf33ef3a9838cdc7a54c5ceff981194a82eac59d558f05487295e"}, -] - -[package.dependencies] -jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" -nbformat = ">=5.1" -traitlets = ">=5.4" - -[package.extras] -dev = ["pre-commit"] -docs = ["autodoc-traits", "mock", "moto", "myst-parser", "nbclient[test]", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling"] -test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] - -[[package]] -name = "nbconvert" -version = "7.16.1" -description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." -optional = false -python-versions = ">=3.8" -files = [ - {file = "nbconvert-7.16.1-py3-none-any.whl", hash = "sha256:3188727dffadfdc9c6a1c7250729063d7bc78b355ad7aa023138afa030d1cd07"}, - {file = "nbconvert-7.16.1.tar.gz", hash = "sha256:e79e6a074f49ba3ed29428ed86487bf51509d9aab613bd8522ac08f6d28fd7fd"}, -] - -[package.dependencies] -beautifulsoup4 = "*" -bleach = "!=5.0.0" -defusedxml = "*" -importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""} -jinja2 = ">=3.0" -jupyter-core = ">=4.7" -jupyterlab-pygments = "*" -markupsafe = ">=2.0" -mistune = ">=2.0.3,<4" -nbclient = ">=0.5.0" -nbformat = ">=5.7" -packaging = "*" -pandocfilters = ">=1.4.1" -pygments = ">=2.4.1" -tinycss2 = "*" -traitlets = ">=5.1" - -[package.extras] -all = ["nbconvert[docs,qtpdf,serve,test,webpdf]"] -docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] -qtpdf = ["nbconvert[qtpng]"] -qtpng = ["pyqtwebengine (>=5.15)"] -serve = ["tornado (>=6.1)"] -test = ["flaky", "ipykernel", "ipywidgets (>=7.5)", "pytest"] -webpdf = ["playwright"] - -[[package]] -name = "nbformat" -version = "5.9.2" -description = "The Jupyter Notebook format" -optional = false -python-versions = ">=3.8" -files = [ - {file = "nbformat-5.9.2-py3-none-any.whl", hash = "sha256:1c5172d786a41b82bcfd0c23f9e6b6f072e8fb49c39250219e4acfff1efe89e9"}, - {file = "nbformat-5.9.2.tar.gz", hash = "sha256:5f98b5ba1997dff175e77e0c17d5c10a96eaed2cbd1de3533d1fc35d5e111192"}, -] - -[package.dependencies] -fastjsonschema = "*" -jsonschema = ">=2.6" -jupyter-core = "*" -traitlets = ">=5.1" - -[package.extras] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["pep440", "pre-commit", "pytest", "testpath"] - -[[package]] -name = "nest-asyncio" -version = "1.6.0" -description = "Patch asyncio to allow nested event loops" -optional = false -python-versions = ">=3.5" -files = [ - {file = "nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c"}, - {file = "nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe"}, -] - -[[package]] -name = "networkx" -version = "3.1" -description = "Python package for creating and manipulating graphs and networks" -optional = false -python-versions = ">=3.8" -files = [ - {file = "networkx-3.1-py3-none-any.whl", hash = "sha256:4f33f68cb2afcf86f28a45f43efc27a9386b535d567d2127f8f61d51dec58d36"}, - {file = "networkx-3.1.tar.gz", hash = "sha256:de346335408f84de0eada6ff9fafafff9bcda11f0a0dfaa931133debb146ab61"}, -] - -[package.extras] -default = ["matplotlib (>=3.4)", "numpy (>=1.20)", "pandas (>=1.3)", "scipy (>=1.8)"] -developer = ["mypy (>=1.1)", "pre-commit (>=3.2)"] -doc = ["nb2plots (>=0.6)", "numpydoc (>=1.5)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.13)", "sphinx (>=6.1)", "sphinx-gallery (>=0.12)", "texext (>=0.6.7)"] -extra = ["lxml (>=4.6)", "pydot (>=1.4.2)", "pygraphviz (>=1.10)", "sympy (>=1.10)"] -test = ["codecov (>=2.1)", "pytest (>=7.2)", "pytest-cov (>=4.0)"] - -[[package]] -name = "nltk" -version = "3.8.1" -description = "Natural Language Toolkit" -optional = false -python-versions = ">=3.7" -files = [ - {file = "nltk-3.8.1-py3-none-any.whl", hash = "sha256:fd5c9109f976fa86bcadba8f91e47f5e9293bd034474752e92a520f81c93dda5"}, - {file = "nltk-3.8.1.zip", hash = "sha256:1834da3d0682cba4f2cede2f9aad6b0fafb6461ba451db0efb6f9c39798d64d3"}, -] - -[package.dependencies] -click = "*" -joblib = "*" -regex = ">=2021.8.3" -tqdm = "*" - -[package.extras] -all = ["matplotlib", "numpy", "pyparsing", "python-crfsuite", "requests", "scikit-learn", "scipy", "twython"] -corenlp = ["requests"] -machine-learning = ["numpy", "python-crfsuite", "scikit-learn", "scipy"] -plot = ["matplotlib"] -tgrep = ["pyparsing"] -twitter = ["twython"] - -[[package]] -name = "nodeenv" -version = "1.8.0" -description = "Node.js virtual environment builder" -optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" -files = [ - {file = "nodeenv-1.8.0-py2.py3-none-any.whl", hash = "sha256:df865724bb3c3adc86b3876fa209771517b0cfe596beff01a92700e0e8be4cec"}, - {file = "nodeenv-1.8.0.tar.gz", hash = "sha256:d51e0c37e64fbf47d017feac3145cdbb58836d7eee8c6f6d3b6880c5456227d2"}, -] - -[package.dependencies] -setuptools = "*" - -[[package]] -name = "notebook" -version = "7.1.1" -description = "Jupyter Notebook - A web-based notebook environment for interactive computing" -optional = false -python-versions = ">=3.8" -files = [ - {file = "notebook-7.1.1-py3-none-any.whl", hash = "sha256:197d8e0595acabf4005851c8716e952a81b405f7aefb648067a761fbde267ce7"}, - {file = "notebook-7.1.1.tar.gz", hash = "sha256:818e7420fa21f402e726afb9f02df7f3c10f294c02e383ed19852866c316108b"}, -] - -[package.dependencies] -jupyter-server = ">=2.4.0,<3" -jupyterlab = ">=4.1.1,<4.2" -jupyterlab-server = ">=2.22.1,<3" -notebook-shim = ">=0.2,<0.3" -tornado = ">=6.2.0" - -[package.extras] -dev = ["hatch", "pre-commit"] -docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.22.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] - -[[package]] -name = "notebook-shim" -version = "0.2.4" -description = "A shim layer for notebook traits and config" -optional = false -python-versions = ">=3.7" -files = [ - {file = "notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef"}, - {file = "notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb"}, -] - -[package.dependencies] -jupyter-server = ">=1.8,<3" - -[package.extras] -test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"] - -[[package]] -name = "numba" -version = "0.58.1" -description = "compiling Python code using LLVM" -optional = false -python-versions = ">=3.8" -files = [ - {file = "numba-0.58.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:07f2fa7e7144aa6f275f27260e73ce0d808d3c62b30cff8906ad1dec12d87bbe"}, - {file = "numba-0.58.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7bf1ddd4f7b9c2306de0384bf3854cac3edd7b4d8dffae2ec1b925e4c436233f"}, - {file = "numba-0.58.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:bc2d904d0319d7a5857bd65062340bed627f5bfe9ae4a495aef342f072880d50"}, - {file = "numba-0.58.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4e79b6cc0d2bf064a955934a2e02bf676bc7995ab2db929dbbc62e4c16551be6"}, - {file = "numba-0.58.1-cp310-cp310-win_amd64.whl", hash = "sha256:81fe5b51532478149b5081311b0fd4206959174e660c372b94ed5364cfb37c82"}, - {file = "numba-0.58.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:bcecd3fb9df36554b342140a4d77d938a549be635d64caf8bd9ef6c47a47f8aa"}, - {file = "numba-0.58.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a1eaa744f518bbd60e1f7ccddfb8002b3d06bd865b94a5d7eac25028efe0e0ff"}, - {file = "numba-0.58.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:bf68df9c307fb0aa81cacd33faccd6e419496fdc621e83f1efce35cdc5e79cac"}, - {file = "numba-0.58.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:55a01e1881120e86d54efdff1be08381886fe9f04fc3006af309c602a72bc44d"}, - {file = "numba-0.58.1-cp311-cp311-win_amd64.whl", hash = "sha256:811305d5dc40ae43c3ace5b192c670c358a89a4d2ae4f86d1665003798ea7a1a"}, - {file = "numba-0.58.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ea5bfcf7d641d351c6a80e8e1826eb4a145d619870016eeaf20bbd71ef5caa22"}, - {file = "numba-0.58.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e63d6aacaae1ba4ef3695f1c2122b30fa3d8ba039c8f517784668075856d79e2"}, - {file = "numba-0.58.1-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6fe7a9d8e3bd996fbe5eac0683227ccef26cba98dae6e5cee2c1894d4b9f16c1"}, - {file = "numba-0.58.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:898af055b03f09d33a587e9425500e5be84fc90cd2f80b3fb71c6a4a17a7e354"}, - {file = "numba-0.58.1-cp38-cp38-win_amd64.whl", hash = "sha256:d3e2fe81fe9a59fcd99cc572002101119059d64d31eb6324995ee8b0f144a306"}, - {file = "numba-0.58.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5c765aef472a9406a97ea9782116335ad4f9ef5c9f93fc05fd44aab0db486954"}, - {file = "numba-0.58.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9e9356e943617f5e35a74bf56ff6e7cc83e6b1865d5e13cee535d79bf2cae954"}, - {file = "numba-0.58.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:240e7a1ae80eb6b14061dc91263b99dc8d6af9ea45d310751b780888097c1aaa"}, - {file = "numba-0.58.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:45698b995914003f890ad839cfc909eeb9c74921849c712a05405d1a79c50f68"}, - {file = "numba-0.58.1-cp39-cp39-win_amd64.whl", hash = "sha256:bd3dda77955be03ff366eebbfdb39919ce7c2620d86c906203bed92124989032"}, - {file = "numba-0.58.1.tar.gz", hash = "sha256:487ded0633efccd9ca3a46364b40006dbdaca0f95e99b8b83e778d1195ebcbaa"}, -] - -[package.dependencies] -llvmlite = "==0.41.*" -numpy = ">=1.22,<1.27" - -[[package]] -name = "numpy" -version = "1.24.4" -description = "Fundamental package for array computing in Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "numpy-1.24.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c0bfb52d2169d58c1cdb8cc1f16989101639b34c7d3ce60ed70b19c63eba0b64"}, - {file = "numpy-1.24.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ed094d4f0c177b1b8e7aa9cba7d6ceed51c0e569a5318ac0ca9a090680a6a1b1"}, - {file = "numpy-1.24.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79fc682a374c4a8ed08b331bef9c5f582585d1048fa6d80bc6c35bc384eee9b4"}, - {file = "numpy-1.24.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ffe43c74893dbf38c2b0a1f5428760a1a9c98285553c89e12d70a96a7f3a4d6"}, - {file = "numpy-1.24.4-cp310-cp310-win32.whl", hash = "sha256:4c21decb6ea94057331e111a5bed9a79d335658c27ce2adb580fb4d54f2ad9bc"}, - {file = "numpy-1.24.4-cp310-cp310-win_amd64.whl", hash = "sha256:b4bea75e47d9586d31e892a7401f76e909712a0fd510f58f5337bea9572c571e"}, - {file = "numpy-1.24.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f136bab9c2cfd8da131132c2cf6cc27331dd6fae65f95f69dcd4ae3c3639c810"}, - {file = "numpy-1.24.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e2926dac25b313635e4d6cf4dc4e51c8c0ebfed60b801c799ffc4c32bf3d1254"}, - {file = "numpy-1.24.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:222e40d0e2548690405b0b3c7b21d1169117391c2e82c378467ef9ab4c8f0da7"}, - {file = "numpy-1.24.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7215847ce88a85ce39baf9e89070cb860c98fdddacbaa6c0da3ffb31b3350bd5"}, - {file = "numpy-1.24.4-cp311-cp311-win32.whl", hash = "sha256:4979217d7de511a8d57f4b4b5b2b965f707768440c17cb70fbf254c4b225238d"}, - {file = "numpy-1.24.4-cp311-cp311-win_amd64.whl", hash = "sha256:b7b1fc9864d7d39e28f41d089bfd6353cb5f27ecd9905348c24187a768c79694"}, - {file = "numpy-1.24.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1452241c290f3e2a312c137a9999cdbf63f78864d63c79039bda65ee86943f61"}, - {file = "numpy-1.24.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:04640dab83f7c6c85abf9cd729c5b65f1ebd0ccf9de90b270cd61935eef0197f"}, - {file = "numpy-1.24.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5425b114831d1e77e4b5d812b69d11d962e104095a5b9c3b641a218abcc050e"}, - {file = "numpy-1.24.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd80e219fd4c71fc3699fc1dadac5dcf4fd882bfc6f7ec53d30fa197b8ee22dc"}, - {file = "numpy-1.24.4-cp38-cp38-win32.whl", hash = "sha256:4602244f345453db537be5314d3983dbf5834a9701b7723ec28923e2889e0bb2"}, - {file = "numpy-1.24.4-cp38-cp38-win_amd64.whl", hash = "sha256:692f2e0f55794943c5bfff12b3f56f99af76f902fc47487bdfe97856de51a706"}, - {file = "numpy-1.24.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2541312fbf09977f3b3ad449c4e5f4bb55d0dbf79226d7724211acc905049400"}, - {file = "numpy-1.24.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9667575fb6d13c95f1b36aca12c5ee3356bf001b714fc354eb5465ce1609e62f"}, - {file = "numpy-1.24.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3a86ed21e4f87050382c7bc96571755193c4c1392490744ac73d660e8f564a9"}, - {file = "numpy-1.24.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d11efb4dbecbdf22508d55e48d9c8384db795e1b7b51ea735289ff96613ff74d"}, - {file = "numpy-1.24.4-cp39-cp39-win32.whl", hash = "sha256:6620c0acd41dbcb368610bb2f4d83145674040025e5536954782467100aa8835"}, - {file = "numpy-1.24.4-cp39-cp39-win_amd64.whl", hash = "sha256:befe2bf740fd8373cf56149a5c23a0f601e82869598d41f8e188a0e9869926f8"}, - {file = "numpy-1.24.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:31f13e25b4e304632a4619d0e0777662c2ffea99fcae2029556b17d8ff958aef"}, - {file = "numpy-1.24.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95f7ac6540e95bc440ad77f56e520da5bf877f87dca58bd095288dce8940532a"}, - {file = "numpy-1.24.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:e98f220aa76ca2a977fe435f5b04d7b3470c0a2e6312907b37ba6068f26787f2"}, - {file = "numpy-1.24.4.tar.gz", hash = "sha256:80f5e3a4e498641401868df4208b74581206afbee7cf7b8329daae82676d9463"}, -] - -[[package]] -name = "openai" -version = "1.12.0" -description = "The official Python library for the openai API" -optional = false -python-versions = ">=3.7.1" -files = [ - {file = "openai-1.12.0-py3-none-any.whl", hash = "sha256:a54002c814e05222e413664f651b5916714e4700d041d5cf5724d3ae1a3e3481"}, - {file = "openai-1.12.0.tar.gz", hash = "sha256:99c5d257d09ea6533d689d1cc77caa0ac679fa21efef8893d8b0832a86877f1b"}, -] - -[package.dependencies] -anyio = ">=3.5.0,<5" -distro = ">=1.7.0,<2" -httpx = ">=0.23.0,<1" -pydantic = ">=1.9.0,<3" -sniffio = "*" -tqdm = ">4" -typing-extensions = ">=4.7,<5" - -[package.extras] -datalib = ["numpy (>=1)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)"] - -[[package]] -name = "overrides" -version = "7.7.0" -description = "A decorator to automatically detect mismatch when overriding a method." -optional = false -python-versions = ">=3.6" -files = [ - {file = "overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"}, - {file = "overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a"}, -] - -[[package]] -name = "packaging" -version = "23.2" -description = "Core utilities for Python packages" -optional = false -python-versions = ">=3.7" -files = [ - {file = "packaging-23.2-py3-none-any.whl", hash = "sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"}, - {file = "packaging-23.2.tar.gz", hash = "sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5"}, -] - -[[package]] -name = "pandas" -version = "2.0.3" -description = "Powerful data structures for data analysis, time series, and statistics" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pandas-2.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e4c7c9f27a4185304c7caf96dc7d91bc60bc162221152de697c98eb0b2648dd8"}, - {file = "pandas-2.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f167beed68918d62bffb6ec64f2e1d8a7d297a038f86d4aed056b9493fca407f"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce0c6f76a0f1ba361551f3e6dceaff06bde7514a374aa43e33b588ec10420183"}, - {file = "pandas-2.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba619e410a21d8c387a1ea6e8a0e49bb42216474436245718d7f2e88a2f8d7c0"}, - {file = "pandas-2.0.3-cp310-cp310-win32.whl", hash = "sha256:3ef285093b4fe5058eefd756100a367f27029913760773c8bf1d2d8bebe5d210"}, - {file = "pandas-2.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:9ee1a69328d5c36c98d8e74db06f4ad518a1840e8ccb94a4ba86920986bb617e"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b084b91d8d66ab19f5bb3256cbd5ea661848338301940e17f4492b2ce0801fe8"}, - {file = "pandas-2.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:37673e3bdf1551b95bf5d4ce372b37770f9529743d2498032439371fc7b7eb26"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b9cb1e14fdb546396b7e1b923ffaeeac24e4cedd14266c3497216dd4448e4f2d"}, - {file = "pandas-2.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d9cd88488cceb7635aebb84809d087468eb33551097d600c6dad13602029c2df"}, - {file = "pandas-2.0.3-cp311-cp311-win32.whl", hash = "sha256:694888a81198786f0e164ee3a581df7d505024fbb1f15202fc7db88a71d84ebd"}, - {file = "pandas-2.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:6a21ab5c89dcbd57f78d0ae16630b090eec626360085a4148693def5452d8a6b"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9e4da0d45e7f34c069fe4d522359df7d23badf83abc1d1cef398895822d11061"}, - {file = "pandas-2.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:32fca2ee1b0d93dd71d979726b12b61faa06aeb93cf77468776287f41ff8fdc5"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:258d3624b3ae734490e4d63c430256e716f488c4fcb7c8e9bde2d3aa46c29089"}, - {file = "pandas-2.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9eae3dc34fa1aa7772dd3fc60270d13ced7346fcbcfee017d3132ec625e23bb0"}, - {file = "pandas-2.0.3-cp38-cp38-win32.whl", hash = "sha256:f3421a7afb1a43f7e38e82e844e2bca9a6d793d66c1a7f9f0ff39a795bbc5e02"}, - {file = "pandas-2.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:69d7f3884c95da3a31ef82b7618af5710dba95bb885ffab339aad925c3e8ce78"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:5247fb1ba347c1261cbbf0fcfba4a3121fbb4029d95d9ef4dc45406620b25c8b"}, - {file = "pandas-2.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:81af086f4543c9d8bb128328b5d32e9986e0c84d3ee673a2ac6fb57fd14f755e"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1994c789bf12a7c5098277fb43836ce090f1073858c10f9220998ac74f37c69b"}, - {file = "pandas-2.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec591c48e29226bcbb316e0c1e9423622bc7a4eaf1ef7c3c9fa1a3981f89641"}, - {file = "pandas-2.0.3-cp39-cp39-win32.whl", hash = "sha256:04dbdbaf2e4d46ca8da896e1805bc04eb85caa9a82e259e8eed00254d5e0c682"}, - {file = "pandas-2.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:1168574b036cd8b93abc746171c9b4f1b83467438a5e45909fed645cf8692dbc"}, - {file = "pandas-2.0.3.tar.gz", hash = "sha256:c02f372a88e0d17f36d3093a644c73cfc1788e876a7c4bcb4020a77512e2043c"}, -] - -[package.dependencies] -numpy = [ - {version = ">=1.20.3", markers = "python_version < \"3.10\""}, - {version = ">=1.21.0", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, - {version = ">=1.23.2", markers = "python_version >= \"3.11\""}, -] -python-dateutil = ">=2.8.2" -pytz = ">=2020.1" -tzdata = ">=2022.1" - -[package.extras] -all = ["PyQt5 (>=5.15.1)", "SQLAlchemy (>=1.4.16)", "beautifulsoup4 (>=4.9.3)", "bottleneck (>=1.3.2)", "brotlipy (>=0.7.0)", "fastparquet (>=0.6.3)", "fsspec (>=2021.07.0)", "gcsfs (>=2021.07.0)", "html5lib (>=1.1)", "hypothesis (>=6.34.2)", "jinja2 (>=3.0.0)", "lxml (>=4.6.3)", "matplotlib (>=3.6.1)", "numba (>=0.53.1)", "numexpr (>=2.7.3)", "odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pandas-gbq (>=0.15.0)", "psycopg2 (>=2.8.6)", "pyarrow (>=7.0.0)", "pymysql (>=1.0.2)", "pyreadstat (>=1.1.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)", "python-snappy (>=0.6.0)", "pyxlsb (>=1.0.8)", "qtpy (>=2.2.0)", "s3fs (>=2021.08.0)", "scipy (>=1.7.1)", "tables (>=3.6.1)", "tabulate (>=0.8.9)", "xarray (>=0.21.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)", "zstandard (>=0.15.2)"] -aws = ["s3fs (>=2021.08.0)"] -clipboard = ["PyQt5 (>=5.15.1)", "qtpy (>=2.2.0)"] -compression = ["brotlipy (>=0.7.0)", "python-snappy (>=0.6.0)", "zstandard (>=0.15.2)"] -computation = ["scipy (>=1.7.1)", "xarray (>=0.21.0)"] -excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.0.7)", "pyxlsb (>=1.0.8)", "xlrd (>=2.0.1)", "xlsxwriter (>=1.4.3)"] -feather = ["pyarrow (>=7.0.0)"] -fss = ["fsspec (>=2021.07.0)"] -gcp = ["gcsfs (>=2021.07.0)", "pandas-gbq (>=0.15.0)"] -hdf5 = ["tables (>=3.6.1)"] -html = ["beautifulsoup4 (>=4.9.3)", "html5lib (>=1.1)", "lxml (>=4.6.3)"] -mysql = ["SQLAlchemy (>=1.4.16)", "pymysql (>=1.0.2)"] -output-formatting = ["jinja2 (>=3.0.0)", "tabulate (>=0.8.9)"] -parquet = ["pyarrow (>=7.0.0)"] -performance = ["bottleneck (>=1.3.2)", "numba (>=0.53.1)", "numexpr (>=2.7.1)"] -plot = ["matplotlib (>=3.6.1)"] -postgresql = ["SQLAlchemy (>=1.4.16)", "psycopg2 (>=2.8.6)"] -spss = ["pyreadstat (>=1.1.2)"] -sql-other = ["SQLAlchemy (>=1.4.16)"] -test = ["hypothesis (>=6.34.2)", "pytest (>=7.3.2)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"] -xml = ["lxml (>=4.6.3)"] - -[[package]] -name = "pandocfilters" -version = "1.5.1" -description = "Utilities for writing pandoc filters in python" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -files = [ - {file = "pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc"}, - {file = "pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e"}, -] - -[[package]] -name = "parso" -version = "0.8.3" -description = "A Python Parser" -optional = false -python-versions = ">=3.6" -files = [ - {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, - {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, -] - -[package.extras] -qa = ["flake8 (==3.8.3)", "mypy (==0.782)"] -testing = ["docopt", "pytest (<6.0.0)"] - -[[package]] -name = "pathspec" -version = "0.12.1" -description = "Utility library for gitignore style pattern matching of file paths." -optional = false -python-versions = ">=3.8" -files = [ - {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, - {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, -] - -[[package]] -name = "pexpect" -version = "4.9.0" -description = "Pexpect allows easy control of interactive console applications." -optional = false -python-versions = "*" -files = [ - {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, - {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, -] - -[package.dependencies] -ptyprocess = ">=0.5" - -[[package]] -name = "pickleshare" -version = "0.7.5" -description = "Tiny 'shelve'-like database with concurrency support" -optional = false -python-versions = "*" -files = [ - {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, - {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, -] - -[[package]] -name = "pillow" -version = "10.2.0" -description = "Python Imaging Library (Fork)" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pillow-10.2.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:7823bdd049099efa16e4246bdf15e5a13dbb18a51b68fa06d6c1d4d8b99a796e"}, - {file = "pillow-10.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:83b2021f2ade7d1ed556bc50a399127d7fb245e725aa0113ebd05cfe88aaf588"}, - {file = "pillow-10.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fad5ff2f13d69b7e74ce5b4ecd12cc0ec530fcee76356cac6742785ff71c452"}, - {file = "pillow-10.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da2b52b37dad6d9ec64e653637a096905b258d2fc2b984c41ae7d08b938a67e4"}, - {file = "pillow-10.2.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:47c0995fc4e7f79b5cfcab1fc437ff2890b770440f7696a3ba065ee0fd496563"}, - {file = "pillow-10.2.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:322bdf3c9b556e9ffb18f93462e5f749d3444ce081290352c6070d014c93feb2"}, - {file = "pillow-10.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:51f1a1bffc50e2e9492e87d8e09a17c5eea8409cda8d3f277eb6edc82813c17c"}, - {file = "pillow-10.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:69ffdd6120a4737710a9eee73e1d2e37db89b620f702754b8f6e62594471dee0"}, - {file = "pillow-10.2.0-cp310-cp310-win32.whl", hash = "sha256:c6dafac9e0f2b3c78df97e79af707cdc5ef8e88208d686a4847bab8266870023"}, - {file = "pillow-10.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:aebb6044806f2e16ecc07b2a2637ee1ef67a11840a66752751714a0d924adf72"}, - {file = "pillow-10.2.0-cp310-cp310-win_arm64.whl", hash = "sha256:7049e301399273a0136ff39b84c3678e314f2158f50f517bc50285fb5ec847ad"}, - {file = "pillow-10.2.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:35bb52c37f256f662abdfa49d2dfa6ce5d93281d323a9af377a120e89a9eafb5"}, - {file = "pillow-10.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9c23f307202661071d94b5e384e1e1dc7dfb972a28a2310e4ee16103e66ddb67"}, - {file = "pillow-10.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:773efe0603db30c281521a7c0214cad7836c03b8ccff897beae9b47c0b657d61"}, - {file = "pillow-10.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11fa2e5984b949b0dd6d7a94d967743d87c577ff0b83392f17cb3990d0d2fd6e"}, - {file = "pillow-10.2.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:716d30ed977be8b37d3ef185fecb9e5a1d62d110dfbdcd1e2a122ab46fddb03f"}, - {file = "pillow-10.2.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a086c2af425c5f62a65e12fbf385f7c9fcb8f107d0849dba5839461a129cf311"}, - {file = "pillow-10.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c8de2789052ed501dd829e9cae8d3dcce7acb4777ea4a479c14521c942d395b1"}, - {file = "pillow-10.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:609448742444d9290fd687940ac0b57fb35e6fd92bdb65386e08e99af60bf757"}, - {file = "pillow-10.2.0-cp311-cp311-win32.whl", hash = "sha256:823ef7a27cf86df6597fa0671066c1b596f69eba53efa3d1e1cb8b30f3533068"}, - {file = "pillow-10.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:1da3b2703afd040cf65ec97efea81cfba59cdbed9c11d8efc5ab09df9509fc56"}, - {file = "pillow-10.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:edca80cbfb2b68d7b56930b84a0e45ae1694aeba0541f798e908a49d66b837f1"}, - {file = "pillow-10.2.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:1b5e1b74d1bd1b78bc3477528919414874748dd363e6272efd5abf7654e68bef"}, - {file = "pillow-10.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0eae2073305f451d8ecacb5474997c08569fb4eb4ac231ffa4ad7d342fdc25ac"}, - {file = "pillow-10.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7c2286c23cd350b80d2fc9d424fc797575fb16f854b831d16fd47ceec078f2c"}, - {file = "pillow-10.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e23412b5c41e58cec602f1135c57dfcf15482013ce6e5f093a86db69646a5aa"}, - {file = "pillow-10.2.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:52a50aa3fb3acb9cf7213573ef55d31d6eca37f5709c69e6858fe3bc04a5c2a2"}, - {file = "pillow-10.2.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:127cee571038f252a552760076407f9cff79761c3d436a12af6000cd182a9d04"}, - {file = "pillow-10.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8d12251f02d69d8310b046e82572ed486685c38f02176bd08baf216746eb947f"}, - {file = "pillow-10.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54f1852cd531aa981bc0965b7d609f5f6cc8ce8c41b1139f6ed6b3c54ab82bfb"}, - {file = "pillow-10.2.0-cp312-cp312-win32.whl", hash = "sha256:257d8788df5ca62c980314053197f4d46eefedf4e6175bc9412f14412ec4ea2f"}, - {file = "pillow-10.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:154e939c5f0053a383de4fd3d3da48d9427a7e985f58af8e94d0b3c9fcfcf4f9"}, - {file = "pillow-10.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:f379abd2f1e3dddb2b61bc67977a6b5a0a3f7485538bcc6f39ec76163891ee48"}, - {file = "pillow-10.2.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:8373c6c251f7ef8bda6675dd6d2b3a0fcc31edf1201266b5cf608b62a37407f9"}, - {file = "pillow-10.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:870ea1ada0899fd0b79643990809323b389d4d1d46c192f97342eeb6ee0b8483"}, - {file = "pillow-10.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b4b6b1e20608493548b1f32bce8cca185bf0480983890403d3b8753e44077129"}, - {file = "pillow-10.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3031709084b6e7852d00479fd1d310b07d0ba82765f973b543c8af5061cf990e"}, - {file = "pillow-10.2.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:3ff074fc97dd4e80543a3e91f69d58889baf2002b6be64347ea8cf5533188213"}, - {file = "pillow-10.2.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:cb4c38abeef13c61d6916f264d4845fab99d7b711be96c326b84df9e3e0ff62d"}, - {file = "pillow-10.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b1b3020d90c2d8e1dae29cf3ce54f8094f7938460fb5ce8bc5c01450b01fbaf6"}, - {file = "pillow-10.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:170aeb00224ab3dc54230c797f8404507240dd868cf52066f66a41b33169bdbe"}, - {file = "pillow-10.2.0-cp38-cp38-win32.whl", hash = "sha256:c4225f5220f46b2fde568c74fca27ae9771536c2e29d7c04f4fb62c83275ac4e"}, - {file = "pillow-10.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:0689b5a8c5288bc0504d9fcee48f61a6a586b9b98514d7d29b840143d6734f39"}, - {file = "pillow-10.2.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:b792a349405fbc0163190fde0dc7b3fef3c9268292586cf5645598b48e63dc67"}, - {file = "pillow-10.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c570f24be1e468e3f0ce7ef56a89a60f0e05b30a3669a459e419c6eac2c35364"}, - {file = "pillow-10.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8ecd059fdaf60c1963c58ceb8997b32e9dc1b911f5da5307aab614f1ce5c2fb"}, - {file = "pillow-10.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c365fd1703040de1ec284b176d6af5abe21b427cb3a5ff68e0759e1e313a5e7e"}, - {file = "pillow-10.2.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:70c61d4c475835a19b3a5aa42492409878bbca7438554a1f89d20d58a7c75c01"}, - {file = "pillow-10.2.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b6f491cdf80ae540738859d9766783e3b3c8e5bd37f5dfa0b76abdecc5081f13"}, - {file = "pillow-10.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d189550615b4948f45252d7f005e53c2040cea1af5b60d6f79491a6e147eef7"}, - {file = "pillow-10.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:49d9ba1ed0ef3e061088cd1e7538a0759aab559e2e0a80a36f9fd9d8c0c21591"}, - {file = "pillow-10.2.0-cp39-cp39-win32.whl", hash = "sha256:babf5acfede515f176833ed6028754cbcd0d206f7f614ea3447d67c33be12516"}, - {file = "pillow-10.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:0304004f8067386b477d20a518b50f3fa658a28d44e4116970abfcd94fac34a8"}, - {file = "pillow-10.2.0-cp39-cp39-win_arm64.whl", hash = "sha256:0fb3e7fc88a14eacd303e90481ad983fd5b69c761e9e6ef94c983f91025da869"}, - {file = "pillow-10.2.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:322209c642aabdd6207517e9739c704dc9f9db943015535783239022002f054a"}, - {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3eedd52442c0a5ff4f887fab0c1c0bb164d8635b32c894bc1faf4c618dd89df2"}, - {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb28c753fd5eb3dd859b4ee95de66cc62af91bcff5db5f2571d32a520baf1f04"}, - {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:33870dc4653c5017bf4c8873e5488d8f8d5f8935e2f1fb9a2208c47cdd66efd2"}, - {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3c31822339516fb3c82d03f30e22b1d038da87ef27b6a78c9549888f8ceda39a"}, - {file = "pillow-10.2.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:a2b56ba36e05f973d450582fb015594aaa78834fefe8dfb8fcd79b93e64ba4c6"}, - {file = "pillow-10.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:d8e6aeb9201e655354b3ad049cb77d19813ad4ece0df1249d3c793de3774f8c7"}, - {file = "pillow-10.2.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:2247178effb34a77c11c0e8ac355c7a741ceca0a732b27bf11e747bbc950722f"}, - {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15587643b9e5eb26c48e49a7b33659790d28f190fc514a322d55da2fb5c2950e"}, - {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753cd8f2086b2b80180d9b3010dd4ed147efc167c90d3bf593fe2af21265e5a5"}, - {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:7c8f97e8e7a9009bcacbe3766a36175056c12f9a44e6e6f2d5caad06dcfbf03b"}, - {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:d1b35bcd6c5543b9cb547dee3150c93008f8dd0f1fef78fc0cd2b141c5baf58a"}, - {file = "pillow-10.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fe4c15f6c9285dc54ce6553a3ce908ed37c8f3825b5a51a15c91442bb955b868"}, - {file = "pillow-10.2.0.tar.gz", hash = "sha256:e87f0b2c78157e12d7686b27d63c070fd65d994e8ddae6f328e0dcf4a0cd007e"}, -] - -[package.extras] -docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "sphinxext-opengraph"] -fpx = ["olefile"] -mic = ["olefile"] -tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] -typing = ["typing-extensions"] -xmp = ["defusedxml"] - -[[package]] -name = "platformdirs" -version = "4.2.0" -description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -optional = false -python-versions = ">=3.8" -files = [ - {file = "platformdirs-4.2.0-py3-none-any.whl", hash = "sha256:0614df2a2f37e1a662acbd8e2b25b92ccf8632929bc6d43467e17fe89c75e068"}, - {file = "platformdirs-4.2.0.tar.gz", hash = "sha256:ef0cc731df711022c174543cb70a9b5bd22e5a9337c8624ef2c2ceb8ddad8768"}, -] - -[package.extras] -docs = ["furo (>=2023.9.10)", "proselint (>=0.13)", "sphinx (>=7.2.6)", "sphinx-autodoc-typehints (>=1.25.2)"] -test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4.3)", "pytest-cov (>=4.1)", "pytest-mock (>=3.12)"] - -[[package]] -name = "pluggy" -version = "1.4.0" -description = "plugin and hook calling mechanisms for python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pluggy-1.4.0-py3-none-any.whl", hash = "sha256:7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"}, - {file = "pluggy-1.4.0.tar.gz", hash = "sha256:8c85c2876142a764e5b7548e7d9a0e0ddb46f5185161049a79b7e974454223be"}, -] - -[package.extras] -dev = ["pre-commit", "tox"] -testing = ["pytest", "pytest-benchmark"] - -[[package]] -name = "pre-commit" -version = "3.2.0" -description = "A framework for managing and maintaining multi-language pre-commit hooks." -optional = false -python-versions = ">=3.8" -files = [ - {file = "pre_commit-3.2.0-py2.py3-none-any.whl", hash = "sha256:f712d3688102e13c8e66b7d7dbd8934a6dda157e58635d89f7d6fecdca39ce8a"}, - {file = "pre_commit-3.2.0.tar.gz", hash = "sha256:818f0d998059934d0f81bb3667e3ccdc32da6ed7ccaac33e43dc231561ddaaa9"}, -] - -[package.dependencies] -cfgv = ">=2.0.0" -identify = ">=1.0.0" -nodeenv = ">=0.11.1" -pyyaml = ">=5.1" -virtualenv = ">=20.10.0" - -[[package]] -name = "prometheus-client" -version = "0.20.0" -description = "Python client for the Prometheus monitoring system." -optional = false -python-versions = ">=3.8" -files = [ - {file = "prometheus_client-0.20.0-py3-none-any.whl", hash = "sha256:cde524a85bce83ca359cc837f28b8c0db5cac7aa653a588fd7e84ba061c329e7"}, - {file = "prometheus_client-0.20.0.tar.gz", hash = "sha256:287629d00b147a32dcb2be0b9df905da599b2d82f80377083ec8463309a4bb89"}, -] - -[package.extras] -twisted = ["twisted"] - -[[package]] -name = "prompt-toolkit" -version = "3.0.43" -description = "Library for building powerful interactive command lines in Python" -optional = false -python-versions = ">=3.7.0" -files = [ - {file = "prompt_toolkit-3.0.43-py3-none-any.whl", hash = "sha256:a11a29cb3bf0a28a387fe5122cdb649816a957cd9261dcedf8c9f1fef33eacf6"}, - {file = "prompt_toolkit-3.0.43.tar.gz", hash = "sha256:3527b7af26106cbc65a040bcc84839a3566ec1b051bb0bfe953631e704b0ff7d"}, -] - -[package.dependencies] -wcwidth = "*" - -[[package]] -name = "psutil" -version = "5.9.8" -description = "Cross-platform lib for process and system monitoring in Python." -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" -files = [ - {file = "psutil-5.9.8-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:26bd09967ae00920df88e0352a91cff1a78f8d69b3ecabbfe733610c0af486c8"}, - {file = "psutil-5.9.8-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:05806de88103b25903dff19bb6692bd2e714ccf9e668d050d144012055cbca73"}, - {file = "psutil-5.9.8-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:611052c4bc70432ec770d5d54f64206aa7203a101ec273a0cd82418c86503bb7"}, - {file = "psutil-5.9.8-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:50187900d73c1381ba1454cf40308c2bf6f34268518b3f36a9b663ca87e65e36"}, - {file = "psutil-5.9.8-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:02615ed8c5ea222323408ceba16c60e99c3f91639b07da6373fb7e6539abc56d"}, - {file = "psutil-5.9.8-cp27-none-win32.whl", hash = "sha256:36f435891adb138ed3c9e58c6af3e2e6ca9ac2f365efe1f9cfef2794e6c93b4e"}, - {file = "psutil-5.9.8-cp27-none-win_amd64.whl", hash = "sha256:bd1184ceb3f87651a67b2708d4c3338e9b10c5df903f2e3776b62303b26cb631"}, - {file = "psutil-5.9.8-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:aee678c8720623dc456fa20659af736241f575d79429a0e5e9cf88ae0605cc81"}, - {file = "psutil-5.9.8-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8cb6403ce6d8e047495a701dc7c5bd788add903f8986d523e3e20b98b733e421"}, - {file = "psutil-5.9.8-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d06016f7f8625a1825ba3732081d77c94589dca78b7a3fc072194851e88461a4"}, - {file = "psutil-5.9.8-cp36-cp36m-win32.whl", hash = "sha256:7d79560ad97af658a0f6adfef8b834b53f64746d45b403f225b85c5c2c140eee"}, - {file = "psutil-5.9.8-cp36-cp36m-win_amd64.whl", hash = "sha256:27cc40c3493bb10de1be4b3f07cae4c010ce715290a5be22b98493509c6299e2"}, - {file = "psutil-5.9.8-cp37-abi3-win32.whl", hash = "sha256:bc56c2a1b0d15aa3eaa5a60c9f3f8e3e565303b465dbf57a1b730e7a2b9844e0"}, - {file = "psutil-5.9.8-cp37-abi3-win_amd64.whl", hash = "sha256:8db4c1b57507eef143a15a6884ca10f7c73876cdf5d51e713151c1236a0e68cf"}, - {file = "psutil-5.9.8-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:d16bbddf0693323b8c6123dd804100241da461e41d6e332fb0ba6058f630f8c8"}, - {file = "psutil-5.9.8.tar.gz", hash = "sha256:6be126e3225486dff286a8fb9a06246a5253f4c7c53b475ea5f5ac934e64194c"}, -] - -[package.extras] -test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] - -[[package]] -name = "ptyprocess" -version = "0.7.0" -description = "Run a subprocess in a pseudo terminal" -optional = false -python-versions = "*" -files = [ - {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, - {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, -] - -[[package]] -name = "pure-eval" -version = "0.2.2" -description = "Safely evaluate AST nodes without side effects" -optional = false -python-versions = "*" -files = [ - {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, - {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, -] - -[package.extras] -tests = ["pytest"] - -[[package]] -name = "pycparser" -version = "2.21" -description = "C parser in Python" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -files = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, -] - -[[package]] -name = "pydantic" -version = "2.6.2" -description = "Data validation using Python type hints" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pydantic-2.6.2-py3-none-any.whl", hash = "sha256:37a5432e54b12fecaa1049c5195f3d860a10e01bdfd24f1840ef14bd0d3aeab3"}, - {file = "pydantic-2.6.2.tar.gz", hash = "sha256:a09be1c3d28f3abe37f8a78af58284b236a92ce520105ddc91a6d29ea1176ba7"}, -] - -[package.dependencies] -annotated-types = ">=0.4.0" -pydantic-core = "2.16.3" -typing-extensions = ">=4.6.1" - -[package.extras] -email = ["email-validator (>=2.0.0)"] - -[[package]] -name = "pydantic-core" -version = "2.16.3" -description = "" -optional = false -python-versions = ">=3.8" -files = [ - {file = "pydantic_core-2.16.3-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:75b81e678d1c1ede0785c7f46690621e4c6e63ccd9192af1f0bd9d504bbb6bf4"}, - {file = "pydantic_core-2.16.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9c865a7ee6f93783bd5d781af5a4c43dadc37053a5b42f7d18dc019f8c9d2bd1"}, - {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:162e498303d2b1c036b957a1278fa0899d02b2842f1ff901b6395104c5554a45"}, - {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2f583bd01bbfbff4eaee0868e6fc607efdfcc2b03c1c766b06a707abbc856187"}, - {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b926dd38db1519ed3043a4de50214e0d600d404099c3392f098a7f9d75029ff8"}, - {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:716b542728d4c742353448765aa7cdaa519a7b82f9564130e2b3f6766018c9ec"}, - {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc4ad7f7ee1a13d9cb49d8198cd7d7e3aa93e425f371a68235f784e99741561f"}, - {file = "pydantic_core-2.16.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bd87f48924f360e5d1c5f770d6155ce0e7d83f7b4e10c2f9ec001c73cf475c99"}, - {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0df446663464884297c793874573549229f9eca73b59360878f382a0fc085979"}, - {file = "pydantic_core-2.16.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4df8a199d9f6afc5ae9a65f8f95ee52cae389a8c6b20163762bde0426275b7db"}, - {file = "pydantic_core-2.16.3-cp310-none-win32.whl", hash = "sha256:456855f57b413f077dff513a5a28ed838dbbb15082ba00f80750377eed23d132"}, - {file = "pydantic_core-2.16.3-cp310-none-win_amd64.whl", hash = "sha256:732da3243e1b8d3eab8c6ae23ae6a58548849d2e4a4e03a1924c8ddf71a387cb"}, - {file = "pydantic_core-2.16.3-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:519ae0312616026bf4cedc0fe459e982734f3ca82ee8c7246c19b650b60a5ee4"}, - {file = "pydantic_core-2.16.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b3992a322a5617ded0a9f23fd06dbc1e4bd7cf39bc4ccf344b10f80af58beacd"}, - {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d62da299c6ecb04df729e4b5c52dc0d53f4f8430b4492b93aa8de1f541c4aac"}, - {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2acca2be4bb2f2147ada8cac612f8a98fc09f41c89f87add7256ad27332c2fda"}, - {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1b662180108c55dfbf1280d865b2d116633d436cfc0bba82323554873967b340"}, - {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e7c6ed0dc9d8e65f24f5824291550139fe6f37fac03788d4580da0d33bc00c97"}, - {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1bb0827f56654b4437955555dc3aeeebeddc47c2d7ed575477f082622c49e"}, - {file = "pydantic_core-2.16.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e56f8186d6210ac7ece503193ec84104da7ceb98f68ce18c07282fcc2452e76f"}, - {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:936e5db01dd49476fa8f4383c259b8b1303d5dd5fb34c97de194560698cc2c5e"}, - {file = "pydantic_core-2.16.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:33809aebac276089b78db106ee692bdc9044710e26f24a9a2eaa35a0f9fa70ba"}, - {file = "pydantic_core-2.16.3-cp311-none-win32.whl", hash = "sha256:ded1c35f15c9dea16ead9bffcde9bb5c7c031bff076355dc58dcb1cb436c4721"}, - {file = "pydantic_core-2.16.3-cp311-none-win_amd64.whl", hash = "sha256:d89ca19cdd0dd5f31606a9329e309d4fcbb3df860960acec32630297d61820df"}, - {file = "pydantic_core-2.16.3-cp311-none-win_arm64.whl", hash = "sha256:6162f8d2dc27ba21027f261e4fa26f8bcb3cf9784b7f9499466a311ac284b5b9"}, - {file = "pydantic_core-2.16.3-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0f56ae86b60ea987ae8bcd6654a887238fd53d1384f9b222ac457070b7ac4cff"}, - {file = "pydantic_core-2.16.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:c9bd22a2a639e26171068f8ebb5400ce2c1bc7d17959f60a3b753ae13c632975"}, - {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4204e773b4b408062960e65468d5346bdfe139247ee5f1ca2a378983e11388a2"}, - {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f651dd19363c632f4abe3480a7c87a9773be27cfe1341aef06e8759599454120"}, - {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aaf09e615a0bf98d406657e0008e4a8701b11481840be7d31755dc9f97c44053"}, - {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8e47755d8152c1ab5b55928ab422a76e2e7b22b5ed8e90a7d584268dd49e9c6b"}, - {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:500960cb3a0543a724a81ba859da816e8cf01b0e6aaeedf2c3775d12ee49cade"}, - {file = "pydantic_core-2.16.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cf6204fe865da605285c34cf1172879d0314ff267b1c35ff59de7154f35fdc2e"}, - {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:d33dd21f572545649f90c38c227cc8631268ba25c460b5569abebdd0ec5974ca"}, - {file = "pydantic_core-2.16.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:49d5d58abd4b83fb8ce763be7794d09b2f50f10aa65c0f0c1696c677edeb7cbf"}, - {file = "pydantic_core-2.16.3-cp312-none-win32.whl", hash = "sha256:f53aace168a2a10582e570b7736cc5bef12cae9cf21775e3eafac597e8551fbe"}, - {file = "pydantic_core-2.16.3-cp312-none-win_amd64.whl", hash = "sha256:0d32576b1de5a30d9a97f300cc6a3f4694c428d956adbc7e6e2f9cad279e45ed"}, - {file = "pydantic_core-2.16.3-cp312-none-win_arm64.whl", hash = "sha256:ec08be75bb268473677edb83ba71e7e74b43c008e4a7b1907c6d57e940bf34b6"}, - {file = "pydantic_core-2.16.3-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:b1f6f5938d63c6139860f044e2538baeee6f0b251a1816e7adb6cbce106a1f01"}, - {file = "pydantic_core-2.16.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:2a1ef6a36fdbf71538142ed604ad19b82f67b05749512e47f247a6ddd06afdc7"}, - {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:704d35ecc7e9c31d48926150afada60401c55efa3b46cd1ded5a01bdffaf1d48"}, - {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d937653a696465677ed583124b94a4b2d79f5e30b2c46115a68e482c6a591c8a"}, - {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9803edf8e29bd825f43481f19c37f50d2b01899448273b3a7758441b512acf8"}, - {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:72282ad4892a9fb2da25defeac8c2e84352c108705c972db82ab121d15f14e6d"}, - {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f752826b5b8361193df55afcdf8ca6a57d0232653494ba473630a83ba50d8c9"}, - {file = "pydantic_core-2.16.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4384a8f68ddb31a0b0c3deae88765f5868a1b9148939c3f4121233314ad5532c"}, - {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a4b2bf78342c40b3dc830880106f54328928ff03e357935ad26c7128bbd66ce8"}, - {file = "pydantic_core-2.16.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:13dcc4802961b5f843a9385fc821a0b0135e8c07fc3d9949fd49627c1a5e6ae5"}, - {file = "pydantic_core-2.16.3-cp38-none-win32.whl", hash = "sha256:e3e70c94a0c3841e6aa831edab1619ad5c511199be94d0c11ba75fe06efe107a"}, - {file = "pydantic_core-2.16.3-cp38-none-win_amd64.whl", hash = "sha256:ecdf6bf5f578615f2e985a5e1f6572e23aa632c4bd1dc67f8f406d445ac115ed"}, - {file = "pydantic_core-2.16.3-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:bda1ee3e08252b8d41fa5537413ffdddd58fa73107171a126d3b9ff001b9b820"}, - {file = "pydantic_core-2.16.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:21b888c973e4f26b7a96491c0965a8a312e13be108022ee510248fe379a5fa23"}, - {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be0ec334369316fa73448cc8c982c01e5d2a81c95969d58b8f6e272884df0074"}, - {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b5b6079cc452a7c53dd378c6f881ac528246b3ac9aae0f8eef98498a75657805"}, - {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ee8d5f878dccb6d499ba4d30d757111847b6849ae07acdd1205fffa1fc1253c"}, - {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7233d65d9d651242a68801159763d09e9ec96e8a158dbf118dc090cd77a104c9"}, - {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6119dc90483a5cb50a1306adb8d52c66e447da88ea44f323e0ae1a5fcb14256"}, - {file = "pydantic_core-2.16.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:578114bc803a4c1ff9946d977c221e4376620a46cf78da267d946397dc9514a8"}, - {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:d8f99b147ff3fcf6b3cc60cb0c39ea443884d5559a30b1481e92495f2310ff2b"}, - {file = "pydantic_core-2.16.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4ac6b4ce1e7283d715c4b729d8f9dab9627586dafce81d9eaa009dd7f25dd972"}, - {file = "pydantic_core-2.16.3-cp39-none-win32.whl", hash = "sha256:e7774b570e61cb998490c5235740d475413a1f6de823169b4cf94e2fe9e9f6b2"}, - {file = "pydantic_core-2.16.3-cp39-none-win_amd64.whl", hash = "sha256:9091632a25b8b87b9a605ec0e61f241c456e9248bfdcf7abdf344fdb169c81cf"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:36fa178aacbc277bc6b62a2c3da95226520da4f4e9e206fdf076484363895d2c"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:dcca5d2bf65c6fb591fff92da03f94cd4f315972f97c21975398bd4bd046854a"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a72fb9963cba4cd5793854fd12f4cfee731e86df140f59ff52a49b3552db241"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b60cc1a081f80a2105a59385b92d82278b15d80ebb3adb200542ae165cd7d183"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:cbcc558401de90a746d02ef330c528f2e668c83350f045833543cd57ecead1ad"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:fee427241c2d9fb7192b658190f9f5fd6dfe41e02f3c1489d2ec1e6a5ab1e04a"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f4cb85f693044e0f71f394ff76c98ddc1bc0953e48c061725e540396d5c8a2e1"}, - {file = "pydantic_core-2.16.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b29eeb887aa931c2fcef5aa515d9d176d25006794610c264ddc114c053bf96fe"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a425479ee40ff021f8216c9d07a6a3b54b31c8267c6e17aa88b70d7ebd0e5e5b"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5c5cbc703168d1b7a838668998308018a2718c2130595e8e190220238addc96f"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99b6add4c0b39a513d323d3b93bc173dac663c27b99860dd5bf491b240d26137"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75f76ee558751746d6a38f89d60b6228fa174e5172d143886af0f85aa306fd89"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:00ee1c97b5364b84cb0bd82e9bbf645d5e2871fb8c58059d158412fee2d33d8a"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:287073c66748f624be4cef893ef9174e3eb88fe0b8a78dc22e88eca4bc357ca6"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ed25e1835c00a332cb10c683cd39da96a719ab1dfc08427d476bce41b92531fc"}, - {file = "pydantic_core-2.16.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:86b3d0033580bd6bbe07590152007275bd7af95f98eaa5bd36f3da219dcd93da"}, - {file = "pydantic_core-2.16.3.tar.gz", hash = "sha256:1cac689f80a3abab2d3c0048b29eea5751114054f032a941a32de4c852c59cad"}, -] - -[package.dependencies] -typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" - -[[package]] -name = "pygments" -version = "2.17.2" -description = "Pygments is a syntax highlighting package written in Python." -optional = false -python-versions = ">=3.7" -files = [ - {file = "pygments-2.17.2-py3-none-any.whl", hash = "sha256:b27c2826c47d0f3219f29554824c30c5e8945175d888647acd804ddd04af846c"}, - {file = "pygments-2.17.2.tar.gz", hash = "sha256:da46cec9fd2de5be3a8a784f434e4c4ab670b4ff54d605c4c2717e9d49c4c367"}, -] - -[package.extras] -plugins = ["importlib-metadata"] -windows-terminal = ["colorama (>=0.4.6)"] - -[[package]] -name = "pylint" -version = "2.15.10" -description = "python code static checker" -optional = false -python-versions = ">=3.7.2" -files = [ - {file = "pylint-2.15.10-py3-none-any.whl", hash = "sha256:9df0d07e8948a1c3ffa3b6e2d7e6e63d9fb457c5da5b961ed63106594780cc7e"}, - {file = "pylint-2.15.10.tar.gz", hash = "sha256:b3dc5ef7d33858f297ac0d06cc73862f01e4f2e74025ec3eff347ce0bc60baf5"}, -] - -[package.dependencies] -astroid = ">=2.12.13,<=2.14.0-dev0" -colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} -dill = [ - {version = ">=0.2", markers = "python_version < \"3.11\""}, - {version = ">=0.3.6", markers = "python_version >= \"3.11\""}, -] -isort = ">=4.2.5,<6" -mccabe = ">=0.6,<0.8" -platformdirs = ">=2.2.0" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -tomlkit = ">=0.10.1" -typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} - -[package.extras] -spelling = ["pyenchant (>=3.2,<4.0)"] -testutils = ["gitpython (>3)"] - -[[package]] -name = "pynndescent" -version = "0.5.11" -description = "Nearest Neighbor Descent" -optional = false -python-versions = "*" -files = [ - {file = "pynndescent-0.5.11-py3-none-any.whl", hash = "sha256:a628f4fc8a67757c8fa15613449ac513fd056258a55b4084e47c06640ec90a8d"}, - {file = "pynndescent-0.5.11.tar.gz", hash = "sha256:6f44ced9d5a9da2c87d9b2fff30bb5308540c0657605e4d5cde7ed3275bbad50"}, -] - -[package.dependencies] -joblib = ">=0.11" -llvmlite = ">=0.30" -numba = ">=0.51.2" -scikit-learn = ">=0.18" -scipy = ">=1.0" - -[[package]] -name = "pytest" -version = "7.2.1" -description = "pytest: simple powerful testing with Python" -optional = false -python-versions = ">=3.7" -files = [ - {file = "pytest-7.2.1-py3-none-any.whl", hash = "sha256:c7c6ca206e93355074ae32f7403e8ea12163b1163c976fee7d4d84027c162be5"}, - {file = "pytest-7.2.1.tar.gz", hash = "sha256:d45e0952f3727241918b8fd0f376f5ff6b301cc0777c6f9a556935c92d8a7d42"}, -] - -[package.dependencies] -attrs = ">=19.2.0" -colorama = {version = "*", markers = "sys_platform == \"win32\""} -exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} -iniconfig = "*" -packaging = "*" -pluggy = ">=0.12,<2.0" -tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} - -[package.extras] -testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] - -[[package]] -name = "pytest-mock" -version = "3.11.1" -description = "Thin-wrapper around the mock package for easier use with pytest" -optional = false -python-versions = ">=3.7" -files = [ - {file = "pytest-mock-3.11.1.tar.gz", hash = "sha256:7f6b125602ac6d743e523ae0bfa71e1a697a2f5534064528c6ff84c2f7c2fc7f"}, - {file = "pytest_mock-3.11.1-py3-none-any.whl", hash = "sha256:21c279fff83d70763b05f8874cc9cfb3fcacd6d354247a976f9529d19f9acf39"}, -] - -[package.dependencies] -pytest = ">=5.0" - -[package.extras] -dev = ["pre-commit", "pytest-asyncio", "tox"] - -[[package]] -name = "python-dateutil" -version = "2.8.2" -description = "Extensions to the standard Python datetime module" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" -files = [ - {file = "python-dateutil-2.8.2.tar.gz", hash = "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86"}, - {file = "python_dateutil-2.8.2-py2.py3-none-any.whl", hash = "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9"}, -] - -[package.dependencies] -six = ">=1.5" - -[[package]] -name = "python-json-logger" -version = "2.0.7" -description = "A python library adding a json log formatter" -optional = false -python-versions = ">=3.6" -files = [ - {file = "python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c"}, - {file = "python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd"}, -] - -[[package]] -name = "pytz" -version = "2024.1" -description = "World timezone definitions, modern and historical" -optional = false -python-versions = "*" -files = [ - {file = "pytz-2024.1-py2.py3-none-any.whl", hash = "sha256:328171f4e3623139da4983451950b28e95ac706e13f3f2630a879749e7a8b319"}, - {file = "pytz-2024.1.tar.gz", hash = "sha256:2a29735ea9c18baf14b448846bde5a48030ed267578472d8955cd0e7443a9812"}, -] - -[[package]] -name = "pywin32" -version = "306" -description = "Python for Window Extensions" -optional = false -python-versions = "*" -files = [ - {file = "pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d"}, - {file = "pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8"}, - {file = "pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407"}, - {file = "pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e"}, - {file = "pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a"}, - {file = "pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b"}, - {file = "pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e"}, - {file = "pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040"}, - {file = "pywin32-306-cp37-cp37m-win32.whl", hash = "sha256:1c73ea9a0d2283d889001998059f5eaaba3b6238f767c9cf2833b13e6a685f65"}, - {file = "pywin32-306-cp37-cp37m-win_amd64.whl", hash = "sha256:72c5f621542d7bdd4fdb716227be0dd3f8565c11b280be6315b06ace35487d36"}, - {file = "pywin32-306-cp38-cp38-win32.whl", hash = "sha256:e4c092e2589b5cf0d365849e73e02c391c1349958c5ac3e9d5ccb9a28e017b3a"}, - {file = "pywin32-306-cp38-cp38-win_amd64.whl", hash = "sha256:e8ac1ae3601bee6ca9f7cb4b5363bf1c0badb935ef243c4733ff9a393b1690c0"}, - {file = "pywin32-306-cp39-cp39-win32.whl", hash = "sha256:e25fd5b485b55ac9c057f67d94bc203f3f6595078d1fb3b458c9c28b7153a802"}, - {file = "pywin32-306-cp39-cp39-win_amd64.whl", hash = "sha256:39b61c15272833b5c329a2989999dcae836b1eed650252ab1b7bfbe1d59f30f4"}, -] - -[[package]] -name = "pywinpty" -version = "2.0.13" -description = "Pseudo terminal support for Windows from Python." -optional = false -python-versions = ">=3.8" -files = [ - {file = "pywinpty-2.0.13-cp310-none-win_amd64.whl", hash = "sha256:697bff211fb5a6508fee2dc6ff174ce03f34a9a233df9d8b5fe9c8ce4d5eaf56"}, - {file = "pywinpty-2.0.13-cp311-none-win_amd64.whl", hash = "sha256:b96fb14698db1284db84ca38c79f15b4cfdc3172065b5137383910567591fa99"}, - {file = "pywinpty-2.0.13-cp312-none-win_amd64.whl", hash = "sha256:2fd876b82ca750bb1333236ce98488c1be96b08f4f7647cfdf4129dfad83c2d4"}, - {file = "pywinpty-2.0.13-cp38-none-win_amd64.whl", hash = "sha256:61d420c2116c0212808d31625611b51caf621fe67f8a6377e2e8b617ea1c1f7d"}, - {file = "pywinpty-2.0.13-cp39-none-win_amd64.whl", hash = "sha256:71cb613a9ee24174730ac7ae439fd179ca34ccb8c5349e8d7b72ab5dea2c6f4b"}, - {file = "pywinpty-2.0.13.tar.gz", hash = "sha256:c34e32351a3313ddd0d7da23d27f835c860d32fe4ac814d372a3ea9594f41dde"}, -] - -[[package]] -name = "pyyaml" -version = "6.0.1" -description = "YAML parser and emitter for Python" -optional = false -python-versions = ">=3.6" -files = [ - {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"}, - {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, - {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, - {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, - {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, - {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, - {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, - {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, - {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, - {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, - {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, - {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, - {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, - {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, - {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, - {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, - {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"}, - {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"}, - {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"}, - {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"}, - {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"}, - {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"}, - {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"}, - {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, - {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, - {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, - {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, - {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, - {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, - {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, - {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, - {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, - {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, - {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, - {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, -] - -[[package]] -name = "pyzmq" -version = "25.1.2" -description = "Python bindings for 0MQ" -optional = false -python-versions = ">=3.6" -files = [ - {file = "pyzmq-25.1.2-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:e624c789359f1a16f83f35e2c705d07663ff2b4d4479bad35621178d8f0f6ea4"}, - {file = "pyzmq-25.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:49151b0efece79f6a79d41a461d78535356136ee70084a1c22532fc6383f4ad0"}, - {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9a5f194cf730f2b24d6af1f833c14c10f41023da46a7f736f48b6d35061e76e"}, - {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:faf79a302f834d9e8304fafdc11d0d042266667ac45209afa57e5efc998e3872"}, - {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f51a7b4ead28d3fca8dda53216314a553b0f7a91ee8fc46a72b402a78c3e43d"}, - {file = "pyzmq-25.1.2-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:0ddd6d71d4ef17ba5a87becf7ddf01b371eaba553c603477679ae817a8d84d75"}, - {file = "pyzmq-25.1.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:246747b88917e4867e2367b005fc8eefbb4a54b7db363d6c92f89d69abfff4b6"}, - {file = "pyzmq-25.1.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:00c48ae2fd81e2a50c3485de1b9d5c7c57cd85dc8ec55683eac16846e57ac979"}, - {file = "pyzmq-25.1.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:5a68d491fc20762b630e5db2191dd07ff89834086740f70e978bb2ef2668be08"}, - {file = "pyzmq-25.1.2-cp310-cp310-win32.whl", hash = "sha256:09dfe949e83087da88c4a76767df04b22304a682d6154de2c572625c62ad6886"}, - {file = "pyzmq-25.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:fa99973d2ed20417744fca0073390ad65ce225b546febb0580358e36aa90dba6"}, - {file = "pyzmq-25.1.2-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:82544e0e2d0c1811482d37eef297020a040c32e0687c1f6fc23a75b75db8062c"}, - {file = "pyzmq-25.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:01171fc48542348cd1a360a4b6c3e7d8f46cdcf53a8d40f84db6707a6768acc1"}, - {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bc69c96735ab501419c432110016329bf0dea8898ce16fab97c6d9106dc0b348"}, - {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3e124e6b1dd3dfbeb695435dff0e383256655bb18082e094a8dd1f6293114642"}, - {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7598d2ba821caa37a0f9d54c25164a4fa351ce019d64d0b44b45540950458840"}, - {file = "pyzmq-25.1.2-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d1299d7e964c13607efd148ca1f07dcbf27c3ab9e125d1d0ae1d580a1682399d"}, - {file = "pyzmq-25.1.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4e6f689880d5ad87918430957297c975203a082d9a036cc426648fcbedae769b"}, - {file = "pyzmq-25.1.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:cc69949484171cc961e6ecd4a8911b9ce7a0d1f738fcae717177c231bf77437b"}, - {file = "pyzmq-25.1.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:9880078f683466b7f567b8624bfc16cad65077be046b6e8abb53bed4eeb82dd3"}, - {file = "pyzmq-25.1.2-cp311-cp311-win32.whl", hash = "sha256:4e5837af3e5aaa99a091302df5ee001149baff06ad22b722d34e30df5f0d9097"}, - {file = "pyzmq-25.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:25c2dbb97d38b5ac9fd15586e048ec5eb1e38f3d47fe7d92167b0c77bb3584e9"}, - {file = "pyzmq-25.1.2-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:11e70516688190e9c2db14fcf93c04192b02d457b582a1f6190b154691b4c93a"}, - {file = "pyzmq-25.1.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:313c3794d650d1fccaaab2df942af9f2c01d6217c846177cfcbc693c7410839e"}, - {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b3cbba2f47062b85fe0ef9de5b987612140a9ba3a9c6d2543c6dec9f7c2ab27"}, - {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fc31baa0c32a2ca660784d5af3b9487e13b61b3032cb01a115fce6588e1bed30"}, - {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:02c9087b109070c5ab0b383079fa1b5f797f8d43e9a66c07a4b8b8bdecfd88ee"}, - {file = "pyzmq-25.1.2-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:f8429b17cbb746c3e043cb986328da023657e79d5ed258b711c06a70c2ea7537"}, - {file = "pyzmq-25.1.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:5074adeacede5f810b7ef39607ee59d94e948b4fd954495bdb072f8c54558181"}, - {file = "pyzmq-25.1.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7ae8f354b895cbd85212da245f1a5ad8159e7840e37d78b476bb4f4c3f32a9fe"}, - {file = "pyzmq-25.1.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b264bf2cc96b5bc43ce0e852be995e400376bd87ceb363822e2cb1964fcdc737"}, - {file = "pyzmq-25.1.2-cp312-cp312-win32.whl", hash = "sha256:02bbc1a87b76e04fd780b45e7f695471ae6de747769e540da909173d50ff8e2d"}, - {file = "pyzmq-25.1.2-cp312-cp312-win_amd64.whl", hash = "sha256:ced111c2e81506abd1dc142e6cd7b68dd53747b3b7ae5edbea4578c5eeff96b7"}, - {file = "pyzmq-25.1.2-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:7b6d09a8962a91151f0976008eb7b29b433a560fde056ec7a3db9ec8f1075438"}, - {file = "pyzmq-25.1.2-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:967668420f36878a3c9ecb5ab33c9d0ff8d054f9c0233d995a6d25b0e95e1b6b"}, - {file = "pyzmq-25.1.2-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5edac3f57c7ddaacdb4d40f6ef2f9e299471fc38d112f4bc6d60ab9365445fb0"}, - {file = "pyzmq-25.1.2-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:0dabfb10ef897f3b7e101cacba1437bd3a5032ee667b7ead32bbcdd1a8422fe7"}, - {file = "pyzmq-25.1.2-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:2c6441e0398c2baacfe5ba30c937d274cfc2dc5b55e82e3749e333aabffde561"}, - {file = "pyzmq-25.1.2-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:16b726c1f6c2e7625706549f9dbe9b06004dfbec30dbed4bf50cbdfc73e5b32a"}, - {file = "pyzmq-25.1.2-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:a86c2dd76ef71a773e70551a07318b8e52379f58dafa7ae1e0a4be78efd1ff16"}, - {file = "pyzmq-25.1.2-cp36-cp36m-win32.whl", hash = "sha256:359f7f74b5d3c65dae137f33eb2bcfa7ad9ebefd1cab85c935f063f1dbb245cc"}, - {file = "pyzmq-25.1.2-cp36-cp36m-win_amd64.whl", hash = "sha256:55875492f820d0eb3417b51d96fea549cde77893ae3790fd25491c5754ea2f68"}, - {file = "pyzmq-25.1.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b8c8a419dfb02e91b453615c69568442e897aaf77561ee0064d789705ff37a92"}, - {file = "pyzmq-25.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8807c87fa893527ae8a524c15fc505d9950d5e856f03dae5921b5e9aa3b8783b"}, - {file = "pyzmq-25.1.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5e319ed7d6b8f5fad9b76daa0a68497bc6f129858ad956331a5835785761e003"}, - {file = "pyzmq-25.1.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:3c53687dde4d9d473c587ae80cc328e5b102b517447456184b485587ebd18b62"}, - {file = "pyzmq-25.1.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:9add2e5b33d2cd765ad96d5eb734a5e795a0755f7fc49aa04f76d7ddda73fd70"}, - {file = "pyzmq-25.1.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:e690145a8c0c273c28d3b89d6fb32c45e0d9605b2293c10e650265bf5c11cfec"}, - {file = "pyzmq-25.1.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:00a06faa7165634f0cac1abb27e54d7a0b3b44eb9994530b8ec73cf52e15353b"}, - {file = "pyzmq-25.1.2-cp37-cp37m-win32.whl", hash = "sha256:0f97bc2f1f13cb16905a5f3e1fbdf100e712d841482b2237484360f8bc4cb3d7"}, - {file = "pyzmq-25.1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6cc0020b74b2e410287e5942e1e10886ff81ac77789eb20bec13f7ae681f0fdd"}, - {file = "pyzmq-25.1.2-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:bef02cfcbded83473bdd86dd8d3729cd82b2e569b75844fb4ea08fee3c26ae41"}, - {file = "pyzmq-25.1.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e10a4b5a4b1192d74853cc71a5e9fd022594573926c2a3a4802020360aa719d8"}, - {file = "pyzmq-25.1.2-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8c5f80e578427d4695adac6fdf4370c14a2feafdc8cb35549c219b90652536ae"}, - {file = "pyzmq-25.1.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:5dde6751e857910c1339890f3524de74007958557593b9e7e8c5f01cd919f8a7"}, - {file = "pyzmq-25.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ea1608dd169da230a0ad602d5b1ebd39807ac96cae1845c3ceed39af08a5c6df"}, - {file = "pyzmq-25.1.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:0f513130c4c361201da9bc69df25a086487250e16b5571ead521b31ff6b02220"}, - {file = "pyzmq-25.1.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:019744b99da30330798bb37df33549d59d380c78e516e3bab9c9b84f87a9592f"}, - {file = "pyzmq-25.1.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2e2713ef44be5d52dd8b8e2023d706bf66cb22072e97fc71b168e01d25192755"}, - {file = "pyzmq-25.1.2-cp38-cp38-win32.whl", hash = "sha256:07cd61a20a535524906595e09344505a9bd46f1da7a07e504b315d41cd42eb07"}, - {file = "pyzmq-25.1.2-cp38-cp38-win_amd64.whl", hash = "sha256:eb7e49a17fb8c77d3119d41a4523e432eb0c6932187c37deb6fbb00cc3028088"}, - {file = "pyzmq-25.1.2-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:94504ff66f278ab4b7e03e4cba7e7e400cb73bfa9d3d71f58d8972a8dc67e7a6"}, - {file = "pyzmq-25.1.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6dd0d50bbf9dca1d0bdea219ae6b40f713a3fb477c06ca3714f208fd69e16fd8"}, - {file = "pyzmq-25.1.2-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:004ff469d21e86f0ef0369717351073e0e577428e514c47c8480770d5e24a565"}, - {file = "pyzmq-25.1.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c0b5ca88a8928147b7b1e2dfa09f3b6c256bc1135a1338536cbc9ea13d3b7add"}, - {file = "pyzmq-25.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c9a79f1d2495b167119d02be7448bfba57fad2a4207c4f68abc0bab4b92925b"}, - {file = "pyzmq-25.1.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:518efd91c3d8ac9f9b4f7dd0e2b7b8bf1a4fe82a308009016b07eaa48681af82"}, - {file = "pyzmq-25.1.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:1ec23bd7b3a893ae676d0e54ad47d18064e6c5ae1fadc2f195143fb27373f7f6"}, - {file = "pyzmq-25.1.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:db36c27baed588a5a8346b971477b718fdc66cf5b80cbfbd914b4d6d355e44e2"}, - {file = "pyzmq-25.1.2-cp39-cp39-win32.whl", hash = "sha256:39b1067f13aba39d794a24761e385e2eddc26295826530a8c7b6c6c341584289"}, - {file = "pyzmq-25.1.2-cp39-cp39-win_amd64.whl", hash = "sha256:8e9f3fabc445d0ce320ea2c59a75fe3ea591fdbdeebec5db6de530dd4b09412e"}, - {file = "pyzmq-25.1.2-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a8c1d566344aee826b74e472e16edae0a02e2a044f14f7c24e123002dcff1c05"}, - {file = "pyzmq-25.1.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:759cfd391a0996345ba94b6a5110fca9c557ad4166d86a6e81ea526c376a01e8"}, - {file = "pyzmq-25.1.2-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7c61e346ac34b74028ede1c6b4bcecf649d69b707b3ff9dc0fab453821b04d1e"}, - {file = "pyzmq-25.1.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4cb8fc1f8d69b411b8ec0b5f1ffbcaf14c1db95b6bccea21d83610987435f1a4"}, - {file = "pyzmq-25.1.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:3c00c9b7d1ca8165c610437ca0c92e7b5607b2f9076f4eb4b095c85d6e680a1d"}, - {file = "pyzmq-25.1.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:df0c7a16ebb94452d2909b9a7b3337940e9a87a824c4fc1c7c36bb4404cb0cde"}, - {file = "pyzmq-25.1.2-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:45999e7f7ed5c390f2e87ece7f6c56bf979fb213550229e711e45ecc7d42ccb8"}, - {file = "pyzmq-25.1.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ac170e9e048b40c605358667aca3d94e98f604a18c44bdb4c102e67070f3ac9b"}, - {file = "pyzmq-25.1.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1b604734bec94f05f81b360a272fc824334267426ae9905ff32dc2be433ab96"}, - {file = "pyzmq-25.1.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:a793ac733e3d895d96f865f1806f160696422554e46d30105807fdc9841b9f7d"}, - {file = "pyzmq-25.1.2-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0806175f2ae5ad4b835ecd87f5f85583316b69f17e97786f7443baaf54b9bb98"}, - {file = "pyzmq-25.1.2-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ef12e259e7bc317c7597d4f6ef59b97b913e162d83b421dd0db3d6410f17a244"}, - {file = "pyzmq-25.1.2-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ea253b368eb41116011add00f8d5726762320b1bda892f744c91997b65754d73"}, - {file = "pyzmq-25.1.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b9b1f2ad6498445a941d9a4fee096d387fee436e45cc660e72e768d3d8ee611"}, - {file = "pyzmq-25.1.2-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:8b14c75979ce932c53b79976a395cb2a8cd3aaf14aef75e8c2cb55a330b9b49d"}, - {file = "pyzmq-25.1.2-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:889370d5174a741a62566c003ee8ddba4b04c3f09a97b8000092b7ca83ec9c49"}, - {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9a18fff090441a40ffda8a7f4f18f03dc56ae73f148f1832e109f9bffa85df15"}, - {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:99a6b36f95c98839ad98f8c553d8507644c880cf1e0a57fe5e3a3f3969040882"}, - {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4345c9a27f4310afbb9c01750e9461ff33d6fb74cd2456b107525bbeebcb5be3"}, - {file = "pyzmq-25.1.2-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3516e0b6224cf6e43e341d56da15fd33bdc37fa0c06af4f029f7d7dfceceabbc"}, - {file = "pyzmq-25.1.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:146b9b1f29ead41255387fb07be56dc29639262c0f7344f570eecdcd8d683314"}, - {file = "pyzmq-25.1.2.tar.gz", hash = "sha256:93f1aa311e8bb912e34f004cf186407a4e90eec4f0ecc0efd26056bf7eda0226"}, -] - -[package.dependencies] -cffi = {version = "*", markers = "implementation_name == \"pypy\""} - -[[package]] -name = "qtconsole" -version = "5.5.1" -description = "Jupyter Qt console" -optional = false -python-versions = ">= 3.8" -files = [ - {file = "qtconsole-5.5.1-py3-none-any.whl", hash = "sha256:8c75fa3e9b4ed884880ff7cea90a1b67451219279ec33deaee1d59e3df1a5d2b"}, - {file = "qtconsole-5.5.1.tar.gz", hash = "sha256:a0e806c6951db9490628e4df80caec9669b65149c7ba40f9bf033c025a5b56bc"}, -] - -[package.dependencies] -ipykernel = ">=4.1" -jupyter-client = ">=4.1" -jupyter-core = "*" -packaging = "*" -pygments = "*" -pyzmq = ">=17.1" -qtpy = ">=2.4.0" -traitlets = "<5.2.1 || >5.2.1,<5.2.2 || >5.2.2" - -[package.extras] -doc = ["Sphinx (>=1.3)"] -test = ["flaky", "pytest", "pytest-qt"] - -[[package]] -name = "qtpy" -version = "2.4.1" -description = "Provides an abstraction layer on top of the various Qt bindings (PyQt5/6 and PySide2/6)." -optional = false -python-versions = ">=3.7" -files = [ - {file = "QtPy-2.4.1-py3-none-any.whl", hash = "sha256:1c1d8c4fa2c884ae742b069151b0abe15b3f70491f3972698c683b8e38de839b"}, - {file = "QtPy-2.4.1.tar.gz", hash = "sha256:a5a15ffd519550a1361bdc56ffc07fda56a6af7292f17c7b395d4083af632987"}, -] - -[package.dependencies] -packaging = "*" - -[package.extras] -test = ["pytest (>=6,!=7.0.0,!=7.0.1)", "pytest-cov (>=3.0.0)", "pytest-qt"] - -[[package]] -name = "referencing" -version = "0.33.0" -description = "JSON Referencing + Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "referencing-0.33.0-py3-none-any.whl", hash = "sha256:39240f2ecc770258f28b642dd47fd74bc8b02484de54e1882b74b35ebd779bd5"}, - {file = "referencing-0.33.0.tar.gz", hash = "sha256:c775fedf74bc0f9189c2a3be1c12fd03e8c23f4d371dce795df44e06c5b412f7"}, -] - -[package.dependencies] -attrs = ">=22.2.0" -rpds-py = ">=0.7.0" - -[[package]] -name = "regex" -version = "2023.12.25" -description = "Alternative regular expression module, to replace re." -optional = false -python-versions = ">=3.7" -files = [ - {file = "regex-2023.12.25-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0694219a1d54336fd0445ea382d49d36882415c0134ee1e8332afd1529f0baa5"}, - {file = "regex-2023.12.25-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b014333bd0217ad3d54c143de9d4b9a3ca1c5a29a6d0d554952ea071cff0f1f8"}, - {file = "regex-2023.12.25-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d865984b3f71f6d0af64d0d88f5733521698f6c16f445bb09ce746c92c97c586"}, - {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e0eabac536b4cc7f57a5f3d095bfa557860ab912f25965e08fe1545e2ed8b4c"}, - {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c25a8ad70e716f96e13a637802813f65d8a6760ef48672aa3502f4c24ea8b400"}, - {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9b6d73353f777630626f403b0652055ebfe8ff142a44ec2cf18ae470395766e"}, - {file = "regex-2023.12.25-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9cc99d6946d750eb75827cb53c4371b8b0fe89c733a94b1573c9dd16ea6c9e4"}, - {file = "regex-2023.12.25-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88d1f7bef20c721359d8675f7d9f8e414ec5003d8f642fdfd8087777ff7f94b5"}, - {file = "regex-2023.12.25-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cb3fe77aec8f1995611f966d0c656fdce398317f850d0e6e7aebdfe61f40e1cd"}, - {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7aa47c2e9ea33a4a2a05f40fcd3ea36d73853a2aae7b4feab6fc85f8bf2c9704"}, - {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:df26481f0c7a3f8739fecb3e81bc9da3fcfae34d6c094563b9d4670b047312e1"}, - {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:c40281f7d70baf6e0db0c2f7472b31609f5bc2748fe7275ea65a0b4601d9b392"}, - {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:d94a1db462d5690ebf6ae86d11c5e420042b9898af5dcf278bd97d6bda065423"}, - {file = "regex-2023.12.25-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ba1b30765a55acf15dce3f364e4928b80858fa8f979ad41f862358939bdd1f2f"}, - {file = "regex-2023.12.25-cp310-cp310-win32.whl", hash = "sha256:150c39f5b964e4d7dba46a7962a088fbc91f06e606f023ce57bb347a3b2d4630"}, - {file = "regex-2023.12.25-cp310-cp310-win_amd64.whl", hash = "sha256:09da66917262d9481c719599116c7dc0c321ffcec4b1f510c4f8a066f8768105"}, - {file = "regex-2023.12.25-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:1b9d811f72210fa9306aeb88385b8f8bcef0dfbf3873410413c00aa94c56c2b6"}, - {file = "regex-2023.12.25-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d902a43085a308cef32c0d3aea962524b725403fd9373dea18110904003bac97"}, - {file = "regex-2023.12.25-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d166eafc19f4718df38887b2bbe1467a4f74a9830e8605089ea7a30dd4da8887"}, - {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7ad32824b7f02bb3c9f80306d405a1d9b7bb89362d68b3c5a9be53836caebdb"}, - {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:636ba0a77de609d6510235b7f0e77ec494d2657108f777e8765efc060094c98c"}, - {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fda75704357805eb953a3ee15a2b240694a9a514548cd49b3c5124b4e2ad01b"}, - {file = "regex-2023.12.25-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f72cbae7f6b01591f90814250e636065850c5926751af02bb48da94dfced7baa"}, - {file = "regex-2023.12.25-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:db2a0b1857f18b11e3b0e54ddfefc96af46b0896fb678c85f63fb8c37518b3e7"}, - {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7502534e55c7c36c0978c91ba6f61703faf7ce733715ca48f499d3dbbd7657e0"}, - {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:e8c7e08bb566de4faaf11984af13f6bcf6a08f327b13631d41d62592681d24fe"}, - {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:283fc8eed679758de38fe493b7d7d84a198b558942b03f017b1f94dda8efae80"}, - {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:f44dd4d68697559d007462b0a3a1d9acd61d97072b71f6d1968daef26bc744bd"}, - {file = "regex-2023.12.25-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:67d3ccfc590e5e7197750fcb3a2915b416a53e2de847a728cfa60141054123d4"}, - {file = "regex-2023.12.25-cp311-cp311-win32.whl", hash = "sha256:68191f80a9bad283432385961d9efe09d783bcd36ed35a60fb1ff3f1ec2efe87"}, - {file = "regex-2023.12.25-cp311-cp311-win_amd64.whl", hash = "sha256:7d2af3f6b8419661a0c421584cfe8aaec1c0e435ce7e47ee2a97e344b98f794f"}, - {file = "regex-2023.12.25-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:8a0ccf52bb37d1a700375a6b395bff5dd15c50acb745f7db30415bae3c2b0715"}, - {file = "regex-2023.12.25-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c3c4a78615b7762740531c27cf46e2f388d8d727d0c0c739e72048beb26c8a9d"}, - {file = "regex-2023.12.25-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ad83e7545b4ab69216cef4cc47e344d19622e28aabec61574b20257c65466d6a"}, - {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7a635871143661feccce3979e1727c4e094f2bdfd3ec4b90dfd4f16f571a87a"}, - {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d498eea3f581fbe1b34b59c697512a8baef88212f92e4c7830fcc1499f5b45a5"}, - {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:43f7cd5754d02a56ae4ebb91b33461dc67be8e3e0153f593c509e21d219c5060"}, - {file = "regex-2023.12.25-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51f4b32f793812714fd5307222a7f77e739b9bc566dc94a18126aba3b92b98a3"}, - {file = "regex-2023.12.25-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ba99d8077424501b9616b43a2d208095746fb1284fc5ba490139651f971d39d9"}, - {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4bfc2b16e3ba8850e0e262467275dd4d62f0d045e0e9eda2bc65078c0110a11f"}, - {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:8c2c19dae8a3eb0ea45a8448356ed561be843b13cbc34b840922ddf565498c1c"}, - {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:60080bb3d8617d96f0fb7e19796384cc2467447ef1c491694850ebd3670bc457"}, - {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b77e27b79448e34c2c51c09836033056a0547aa360c45eeeb67803da7b0eedaf"}, - {file = "regex-2023.12.25-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:518440c991f514331f4850a63560321f833979d145d7d81186dbe2f19e27ae3d"}, - {file = "regex-2023.12.25-cp312-cp312-win32.whl", hash = "sha256:e2610e9406d3b0073636a3a2e80db05a02f0c3169b5632022b4e81c0364bcda5"}, - {file = "regex-2023.12.25-cp312-cp312-win_amd64.whl", hash = "sha256:cc37b9aeebab425f11f27e5e9e6cf580be7206c6582a64467a14dda211abc232"}, - {file = "regex-2023.12.25-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:da695d75ac97cb1cd725adac136d25ca687da4536154cdc2815f576e4da11c69"}, - {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d126361607b33c4eb7b36debc173bf25d7805847346dd4d99b5499e1fef52bc7"}, - {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4719bb05094d7d8563a450cf8738d2e1061420f79cfcc1fa7f0a44744c4d8f73"}, - {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5dd58946bce44b53b06d94aa95560d0b243eb2fe64227cba50017a8d8b3cd3e2"}, - {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22a86d9fff2009302c440b9d799ef2fe322416d2d58fc124b926aa89365ec482"}, - {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2aae8101919e8aa05ecfe6322b278f41ce2994c4a430303c4cd163fef746e04f"}, - {file = "regex-2023.12.25-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e692296c4cc2873967771345a876bcfc1c547e8dd695c6b89342488b0ea55cd8"}, - {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:263ef5cc10979837f243950637fffb06e8daed7f1ac1e39d5910fd29929e489a"}, - {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:d6f7e255e5fa94642a0724e35406e6cb7001c09d476ab5fce002f652b36d0c39"}, - {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:88ad44e220e22b63b0f8f81f007e8abbb92874d8ced66f32571ef8beb0643b2b"}, - {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:3a17d3ede18f9cedcbe23d2daa8a2cd6f59fe2bf082c567e43083bba3fb00347"}, - {file = "regex-2023.12.25-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d15b274f9e15b1a0b7a45d2ac86d1f634d983ca40d6b886721626c47a400bf39"}, - {file = "regex-2023.12.25-cp37-cp37m-win32.whl", hash = "sha256:ed19b3a05ae0c97dd8f75a5d8f21f7723a8c33bbc555da6bbe1f96c470139d3c"}, - {file = "regex-2023.12.25-cp37-cp37m-win_amd64.whl", hash = "sha256:a6d1047952c0b8104a1d371f88f4ab62e6275567d4458c1e26e9627ad489b445"}, - {file = "regex-2023.12.25-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:b43523d7bc2abd757119dbfb38af91b5735eea45537ec6ec3a5ec3f9562a1c53"}, - {file = "regex-2023.12.25-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:efb2d82f33b2212898f1659fb1c2e9ac30493ac41e4d53123da374c3b5541e64"}, - {file = "regex-2023.12.25-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b7fca9205b59c1a3d5031f7e64ed627a1074730a51c2a80e97653e3e9fa0d415"}, - {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086dd15e9435b393ae06f96ab69ab2d333f5d65cbe65ca5a3ef0ec9564dfe770"}, - {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e81469f7d01efed9b53740aedd26085f20d49da65f9c1f41e822a33992cb1590"}, - {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:34e4af5b27232f68042aa40a91c3b9bb4da0eeb31b7632e0091afc4310afe6cb"}, - {file = "regex-2023.12.25-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9852b76ab558e45b20bf1893b59af64a28bd3820b0c2efc80e0a70a4a3ea51c1"}, - {file = "regex-2023.12.25-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ff100b203092af77d1a5a7abe085b3506b7eaaf9abf65b73b7d6905b6cb76988"}, - {file = "regex-2023.12.25-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cc038b2d8b1470364b1888a98fd22d616fba2b6309c5b5f181ad4483e0017861"}, - {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:094ba386bb5c01e54e14434d4caabf6583334090865b23ef58e0424a6286d3dc"}, - {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:5cd05d0f57846d8ba4b71d9c00f6f37d6b97d5e5ef8b3c3840426a475c8f70f4"}, - {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:9aa1a67bbf0f957bbe096375887b2505f5d8ae16bf04488e8b0f334c36e31360"}, - {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:98a2636994f943b871786c9e82bfe7883ecdaba2ef5df54e1450fa9869d1f756"}, - {file = "regex-2023.12.25-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:37f8e93a81fc5e5bd8db7e10e62dc64261bcd88f8d7e6640aaebe9bc180d9ce2"}, - {file = "regex-2023.12.25-cp38-cp38-win32.whl", hash = "sha256:d78bd484930c1da2b9679290a41cdb25cc127d783768a0369d6b449e72f88beb"}, - {file = "regex-2023.12.25-cp38-cp38-win_amd64.whl", hash = "sha256:b521dcecebc5b978b447f0f69b5b7f3840eac454862270406a39837ffae4e697"}, - {file = "regex-2023.12.25-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:f7bc09bc9c29ebead055bcba136a67378f03d66bf359e87d0f7c759d6d4ffa31"}, - {file = "regex-2023.12.25-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e14b73607d6231f3cc4622809c196b540a6a44e903bcfad940779c80dffa7be7"}, - {file = "regex-2023.12.25-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9eda5f7a50141291beda3edd00abc2d4a5b16c29c92daf8d5bd76934150f3edc"}, - {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc6bb9aa69aacf0f6032c307da718f61a40cf970849e471254e0e91c56ffca95"}, - {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:298dc6354d414bc921581be85695d18912bea163a8b23cac9a2562bbcd5088b1"}, - {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2f4e475a80ecbd15896a976aa0b386c5525d0ed34d5c600b6d3ebac0a67c7ddf"}, - {file = "regex-2023.12.25-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:531ac6cf22b53e0696f8e1d56ce2396311254eb806111ddd3922c9d937151dae"}, - {file = "regex-2023.12.25-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22f3470f7524b6da61e2020672df2f3063676aff444db1daa283c2ea4ed259d6"}, - {file = "regex-2023.12.25-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:89723d2112697feaa320c9d351e5f5e7b841e83f8b143dba8e2d2b5f04e10923"}, - {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0ecf44ddf9171cd7566ef1768047f6e66975788258b1c6c6ca78098b95cf9a3d"}, - {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:905466ad1702ed4acfd67a902af50b8db1feeb9781436372261808df7a2a7bca"}, - {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:4558410b7a5607a645e9804a3e9dd509af12fb72b9825b13791a37cd417d73a5"}, - {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:7e316026cc1095f2a3e8cc012822c99f413b702eaa2ca5408a513609488cb62f"}, - {file = "regex-2023.12.25-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3b1de218d5375cd6ac4b5493e0b9f3df2be331e86520f23382f216c137913d20"}, - {file = "regex-2023.12.25-cp39-cp39-win32.whl", hash = "sha256:11a963f8e25ab5c61348d090bf1b07f1953929c13bd2309a0662e9ff680763c9"}, - {file = "regex-2023.12.25-cp39-cp39-win_amd64.whl", hash = "sha256:e693e233ac92ba83a87024e1d32b5f9ab15ca55ddd916d878146f4e3406b5c91"}, - {file = "regex-2023.12.25.tar.gz", hash = "sha256:29171aa128da69afdf4bde412d5bedc335f2ca8fcfe4489038577d05f16181e5"}, -] - -[[package]] -name = "requests" -version = "2.31.0" -description = "Python HTTP for Humans." -optional = false -python-versions = ">=3.7" -files = [ - {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, - {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, -] - -[package.dependencies] -certifi = ">=2017.4.17" -charset-normalizer = ">=2,<4" -idna = ">=2.5,<4" -urllib3 = ">=1.21.1,<3" - -[package.extras] -socks = ["PySocks (>=1.5.6,!=1.5.7)"] -use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] - -[[package]] -name = "rfc3339-validator" -version = "0.1.4" -description = "A pure python RFC3339 validator" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" -files = [ - {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, - {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, -] - -[package.dependencies] -six = "*" - -[[package]] -name = "rfc3986-validator" -version = "0.1.1" -description = "Pure python rfc3986 validator" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" -files = [ - {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"}, - {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"}, -] - -[[package]] -name = "rpds-py" -version = "0.18.0" -description = "Python bindings to Rust's persistent data structures (rpds)" -optional = false -python-versions = ">=3.8" -files = [ - {file = "rpds_py-0.18.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:5b4e7d8d6c9b2e8ee2d55c90b59c707ca59bc30058269b3db7b1f8df5763557e"}, - {file = "rpds_py-0.18.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c463ed05f9dfb9baebef68048aed8dcdc94411e4bf3d33a39ba97e271624f8f7"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:01e36a39af54a30f28b73096dd39b6802eddd04c90dbe161c1b8dbe22353189f"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d62dec4976954a23d7f91f2f4530852b0c7608116c257833922a896101336c51"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dd18772815d5f008fa03d2b9a681ae38d5ae9f0e599f7dda233c439fcaa00d40"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:923d39efa3cfb7279a0327e337a7958bff00cc447fd07a25cddb0a1cc9a6d2da"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39514da80f971362f9267c600b6d459bfbbc549cffc2cef8e47474fddc9b45b1"}, - {file = "rpds_py-0.18.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a34d557a42aa28bd5c48a023c570219ba2593bcbbb8dc1b98d8cf5d529ab1434"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:93df1de2f7f7239dc9cc5a4a12408ee1598725036bd2dedadc14d94525192fc3"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:34b18ba135c687f4dac449aa5157d36e2cbb7c03cbea4ddbd88604e076aa836e"}, - {file = "rpds_py-0.18.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c0b5dcf9193625afd8ecc92312d6ed78781c46ecbf39af9ad4681fc9f464af88"}, - {file = "rpds_py-0.18.0-cp310-none-win32.whl", hash = "sha256:c4325ff0442a12113a6379af66978c3fe562f846763287ef66bdc1d57925d337"}, - {file = "rpds_py-0.18.0-cp310-none-win_amd64.whl", hash = "sha256:7223a2a5fe0d217e60a60cdae28d6949140dde9c3bcc714063c5b463065e3d66"}, - {file = "rpds_py-0.18.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:3a96e0c6a41dcdba3a0a581bbf6c44bb863f27c541547fb4b9711fd8cf0ffad4"}, - {file = "rpds_py-0.18.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30f43887bbae0d49113cbaab729a112251a940e9b274536613097ab8b4899cf6"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fcb25daa9219b4cf3a0ab24b0eb9a5cc8949ed4dc72acb8fa16b7e1681aa3c58"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d68c93e381010662ab873fea609bf6c0f428b6d0bb00f2c6939782e0818d37bf"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b34b7aa8b261c1dbf7720b5d6f01f38243e9b9daf7e6b8bc1fd4657000062f2c"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2e6d75ab12b0bbab7215e5d40f1e5b738aa539598db27ef83b2ec46747df90e1"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b8612cd233543a3781bc659c731b9d607de65890085098986dfd573fc2befe5"}, - {file = "rpds_py-0.18.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aec493917dd45e3c69d00a8874e7cbed844efd935595ef78a0f25f14312e33c6"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:661d25cbffaf8cc42e971dd570d87cb29a665f49f4abe1f9e76be9a5182c4688"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:1df3659d26f539ac74fb3b0c481cdf9d725386e3552c6fa2974f4d33d78e544b"}, - {file = "rpds_py-0.18.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a1ce3ba137ed54f83e56fb983a5859a27d43a40188ba798993812fed73c70836"}, - {file = "rpds_py-0.18.0-cp311-none-win32.whl", hash = "sha256:69e64831e22a6b377772e7fb337533c365085b31619005802a79242fee620bc1"}, - {file = "rpds_py-0.18.0-cp311-none-win_amd64.whl", hash = "sha256:998e33ad22dc7ec7e030b3df701c43630b5bc0d8fbc2267653577e3fec279afa"}, - {file = "rpds_py-0.18.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:7f2facbd386dd60cbbf1a794181e6aa0bd429bd78bfdf775436020172e2a23f0"}, - {file = "rpds_py-0.18.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1d9a5be316c15ffb2b3c405c4ff14448c36b4435be062a7f578ccd8b01f0c4d8"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cd5bf1af8efe569654bbef5a3e0a56eca45f87cfcffab31dd8dde70da5982475"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5417558f6887e9b6b65b4527232553c139b57ec42c64570569b155262ac0754f"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:56a737287efecafc16f6d067c2ea0117abadcd078d58721f967952db329a3e5c"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8f03bccbd8586e9dd37219bce4d4e0d3ab492e6b3b533e973fa08a112cb2ffc9"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4457a94da0d5c53dc4b3e4de1158bdab077db23c53232f37a3cb7afdb053a4e3"}, - {file = "rpds_py-0.18.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0ab39c1ba9023914297dd88ec3b3b3c3f33671baeb6acf82ad7ce883f6e8e157"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9d54553c1136b50fd12cc17e5b11ad07374c316df307e4cfd6441bea5fb68496"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0af039631b6de0397ab2ba16eaf2872e9f8fca391b44d3d8cac317860a700a3f"}, - {file = "rpds_py-0.18.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:84ffab12db93b5f6bad84c712c92060a2d321b35c3c9960b43d08d0f639d60d7"}, - {file = "rpds_py-0.18.0-cp312-none-win32.whl", hash = "sha256:685537e07897f173abcf67258bee3c05c374fa6fff89d4c7e42fb391b0605e98"}, - {file = "rpds_py-0.18.0-cp312-none-win_amd64.whl", hash = "sha256:e003b002ec72c8d5a3e3da2989c7d6065b47d9eaa70cd8808b5384fbb970f4ec"}, - {file = "rpds_py-0.18.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:08f9ad53c3f31dfb4baa00da22f1e862900f45908383c062c27628754af2e88e"}, - {file = "rpds_py-0.18.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:c0013fe6b46aa496a6749c77e00a3eb07952832ad6166bd481c74bda0dcb6d58"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e32a92116d4f2a80b629778280103d2a510a5b3f6314ceccd6e38006b5e92dcb"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e541ec6f2ec456934fd279a3120f856cd0aedd209fc3852eca563f81738f6861"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bed88b9a458e354014d662d47e7a5baafd7ff81c780fd91584a10d6ec842cb73"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2644e47de560eb7bd55c20fc59f6daa04682655c58d08185a9b95c1970fa1e07"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e8916ae4c720529e18afa0b879473049e95949bf97042e938530e072fde061d"}, - {file = "rpds_py-0.18.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:465a3eb5659338cf2a9243e50ad9b2296fa15061736d6e26240e713522b6235c"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ea7d4a99f3b38c37eac212dbd6ec42b7a5ec51e2c74b5d3223e43c811609e65f"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:67071a6171e92b6da534b8ae326505f7c18022c6f19072a81dcf40db2638767c"}, - {file = "rpds_py-0.18.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:41ef53e7c58aa4ef281da975f62c258950f54b76ec8e45941e93a3d1d8580594"}, - {file = "rpds_py-0.18.0-cp38-none-win32.whl", hash = "sha256:fdea4952db2793c4ad0bdccd27c1d8fdd1423a92f04598bc39425bcc2b8ee46e"}, - {file = "rpds_py-0.18.0-cp38-none-win_amd64.whl", hash = "sha256:7cd863afe7336c62ec78d7d1349a2f34c007a3cc6c2369d667c65aeec412a5b1"}, - {file = "rpds_py-0.18.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:5307def11a35f5ae4581a0b658b0af8178c65c530e94893345bebf41cc139d33"}, - {file = "rpds_py-0.18.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:77f195baa60a54ef9d2de16fbbfd3ff8b04edc0c0140a761b56c267ac11aa467"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:39f5441553f1c2aed4de4377178ad8ff8f9d733723d6c66d983d75341de265ab"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9a00312dea9310d4cb7dbd7787e722d2e86a95c2db92fbd7d0155f97127bcb40"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f2fc11e8fe034ee3c34d316d0ad8808f45bc3b9ce5857ff29d513f3ff2923a1"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:586f8204935b9ec884500498ccc91aa869fc652c40c093bd9e1471fbcc25c022"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ddc2f4dfd396c7bfa18e6ce371cba60e4cf9d2e5cdb71376aa2da264605b60b9"}, - {file = "rpds_py-0.18.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5ddcba87675b6d509139d1b521e0c8250e967e63b5909a7e8f8944d0f90ff36f"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7bd339195d84439cbe5771546fe8a4e8a7a045417d8f9de9a368c434e42a721e"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:d7c36232a90d4755b720fbd76739d8891732b18cf240a9c645d75f00639a9024"}, - {file = "rpds_py-0.18.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6b0817e34942b2ca527b0e9298373e7cc75f429e8da2055607f4931fded23e20"}, - {file = "rpds_py-0.18.0-cp39-none-win32.whl", hash = "sha256:99f70b740dc04d09e6b2699b675874367885217a2e9f782bdf5395632ac663b7"}, - {file = "rpds_py-0.18.0-cp39-none-win_amd64.whl", hash = "sha256:6ef687afab047554a2d366e112dd187b62d261d49eb79b77e386f94644363294"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:ad36cfb355e24f1bd37cac88c112cd7730873f20fb0bdaf8ba59eedf8216079f"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:36b3ee798c58ace201289024b52788161e1ea133e4ac93fba7d49da5fec0ef9e"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8a2f084546cc59ea99fda8e070be2fd140c3092dc11524a71aa8f0f3d5a55ca"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e4461d0f003a0aa9be2bdd1b798a041f177189c1a0f7619fe8c95ad08d9a45d7"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8db715ebe3bb7d86d77ac1826f7d67ec11a70dbd2376b7cc214199360517b641"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:793968759cd0d96cac1e367afd70c235867831983f876a53389ad869b043c948"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66e6a3af5a75363d2c9a48b07cb27c4ea542938b1a2e93b15a503cdfa8490795"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ef0befbb5d79cf32d0266f5cff01545602344eda89480e1dd88aca964260b18"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1d4acf42190d449d5e89654d5c1ed3a4f17925eec71f05e2a41414689cda02d1"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:a5f446dd5055667aabaee78487f2b5ab72e244f9bc0b2ffebfeec79051679984"}, - {file = "rpds_py-0.18.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:9dbbeb27f4e70bfd9eec1be5477517365afe05a9b2c441a0b21929ee61048124"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:22806714311a69fd0af9b35b7be97c18a0fc2826e6827dbb3a8c94eac6cf7eeb"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:b34ae4636dfc4e76a438ab826a0d1eed2589ca7d9a1b2d5bb546978ac6485461"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c8370641f1a7f0e0669ddccca22f1da893cef7628396431eb445d46d893e5cd"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c8362467a0fdeccd47935f22c256bec5e6abe543bf0d66e3d3d57a8fb5731863"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11a8c85ef4a07a7638180bf04fe189d12757c696eb41f310d2426895356dcf05"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b316144e85316da2723f9d8dc75bada12fa58489a527091fa1d5a612643d1a0e"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf1ea2e34868f6fbf070e1af291c8180480310173de0b0c43fc38a02929fc0e3"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e546e768d08ad55b20b11dbb78a745151acbd938f8f00d0cfbabe8b0199b9880"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4901165d170a5fde6f589acb90a6b33629ad1ec976d4529e769c6f3d885e3e80"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:618a3d6cae6ef8ec88bb76dd80b83cfe415ad4f1d942ca2a903bf6b6ff97a2da"}, - {file = "rpds_py-0.18.0-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ed4eb745efbff0a8e9587d22a84be94a5eb7d2d99c02dacf7bd0911713ed14dd"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:6c81e5f372cd0dc5dc4809553d34f832f60a46034a5f187756d9b90586c2c307"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:43fbac5f22e25bee1d482c97474f930a353542855f05c1161fd804c9dc74a09d"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d7faa6f14017c0b1e69f5e2c357b998731ea75a442ab3841c0dbbbfe902d2c4"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:08231ac30a842bd04daabc4d71fddd7e6d26189406d5a69535638e4dcb88fe76"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:044a3e61a7c2dafacae99d1e722cc2d4c05280790ec5a05031b3876809d89a5c"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3f26b5bd1079acdb0c7a5645e350fe54d16b17bfc5e71f371c449383d3342e17"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:482103aed1dfe2f3b71a58eff35ba105289b8d862551ea576bd15479aba01f66"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1374f4129f9bcca53a1bba0bb86bf78325a0374577cf7e9e4cd046b1e6f20e24"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:635dc434ff724b178cb192c70016cc0ad25a275228f749ee0daf0eddbc8183b1"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:bc362ee4e314870a70f4ae88772d72d877246537d9f8cb8f7eacf10884862432"}, - {file = "rpds_py-0.18.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:4832d7d380477521a8c1644bbab6588dfedea5e30a7d967b5fb75977c45fd77f"}, - {file = "rpds_py-0.18.0.tar.gz", hash = "sha256:42821446ee7a76f5d9f71f9e33a4fb2ffd724bb3e7f93386150b61a43115788d"}, -] - -[[package]] -name = "ruff" -version = "0.0.292" -description = "An extremely fast Python linter, written in Rust." -optional = false -python-versions = ">=3.7" -files = [ - {file = "ruff-0.0.292-py3-none-macosx_10_7_x86_64.whl", hash = "sha256:02f29db018c9d474270c704e6c6b13b18ed0ecac82761e4fcf0faa3728430c96"}, - {file = "ruff-0.0.292-py3-none-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl", hash = "sha256:69654e564342f507edfa09ee6897883ca76e331d4bbc3676d8a8403838e9fade"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c3c91859a9b845c33778f11902e7b26440d64b9d5110edd4e4fa1726c41e0a4"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f4476f1243af2d8c29da5f235c13dca52177117935e1f9393f9d90f9833f69e4"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:be8eb50eaf8648070b8e58ece8e69c9322d34afe367eec4210fdee9a555e4ca7"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:9889bac18a0c07018aac75ef6c1e6511d8411724d67cb879103b01758e110a81"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6bdfabd4334684a4418b99b3118793f2c13bb67bf1540a769d7816410402a205"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa7c77c53bfcd75dbcd4d1f42d6cabf2485d2e1ee0678da850f08e1ab13081a8"}, - {file = "ruff-0.0.292-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e087b24d0d849c5c81516ec740bf4fd48bf363cfb104545464e0fca749b6af9"}, - {file = "ruff-0.0.292-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:f160b5ec26be32362d0774964e218f3fcf0a7da299f7e220ef45ae9e3e67101a"}, - {file = "ruff-0.0.292-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:ac153eee6dd4444501c4bb92bff866491d4bfb01ce26dd2fff7ca472c8df9ad0"}, - {file = "ruff-0.0.292-py3-none-musllinux_1_2_i686.whl", hash = "sha256:87616771e72820800b8faea82edd858324b29bb99a920d6aa3d3949dd3f88fb0"}, - {file = "ruff-0.0.292-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:b76deb3bdbea2ef97db286cf953488745dd6424c122d275f05836c53f62d4016"}, - {file = "ruff-0.0.292-py3-none-win32.whl", hash = "sha256:e854b05408f7a8033a027e4b1c7f9889563dd2aca545d13d06711e5c39c3d003"}, - {file = "ruff-0.0.292-py3-none-win_amd64.whl", hash = "sha256:f27282bedfd04d4c3492e5c3398360c9d86a295be00eccc63914438b4ac8a83c"}, - {file = "ruff-0.0.292-py3-none-win_arm64.whl", hash = "sha256:7f67a69c8f12fbc8daf6ae6d36705037bde315abf8b82b6e1f4c9e74eb750f68"}, - {file = "ruff-0.0.292.tar.gz", hash = "sha256:1093449e37dd1e9b813798f6ad70932b57cf614e5c2b5c51005bf67d55db33ac"}, -] - -[[package]] -name = "scikit-learn" -version = "1.4.1.post1" -description = "A set of python modules for machine learning and data mining" -optional = false -python-versions = ">=3.9" -files = [ - {file = "scikit-learn-1.4.1.post1.tar.gz", hash = "sha256:93d3d496ff1965470f9977d05e5ec3376fb1e63b10e4fda5e39d23c2d8969a30"}, - {file = "scikit_learn-1.4.1.post1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c540aaf44729ab5cd4bd5e394f2b375e65ceaea9cdd8c195788e70433d91bbc5"}, - {file = "scikit_learn-1.4.1.post1-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:4310bff71aa98b45b46cd26fa641309deb73a5d1c0461d181587ad4f30ea3c36"}, - {file = "scikit_learn-1.4.1.post1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9f43dd527dabff5521af2786a2f8de5ba381e182ec7292663508901cf6ceaf6e"}, - {file = "scikit_learn-1.4.1.post1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c02e27d65b0c7dc32f2c5eb601aaf5530b7a02bfbe92438188624524878336f2"}, - {file = "scikit_learn-1.4.1.post1-cp310-cp310-win_amd64.whl", hash = "sha256:629e09f772ad42f657ca60a1a52342eef786218dd20cf1369a3b8d085e55ef8f"}, - {file = "scikit_learn-1.4.1.post1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6145dfd9605b0b50ae72cdf72b61a2acd87501369a763b0d73d004710ebb76b5"}, - {file = "scikit_learn-1.4.1.post1-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:1afed6951bc9d2053c6ee9a518a466cbc9b07c6a3f9d43bfe734192b6125d508"}, - {file = "scikit_learn-1.4.1.post1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce03506ccf5f96b7e9030fea7eb148999b254c44c10182ac55857bc9b5d4815f"}, - {file = "scikit_learn-1.4.1.post1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ba516fcdc73d60e7f48cbb0bccb9acbdb21807de3651531208aac73c758e3ab"}, - {file = "scikit_learn-1.4.1.post1-cp311-cp311-win_amd64.whl", hash = "sha256:78cd27b4669513b50db4f683ef41ea35b5dddc797bd2bbd990d49897fd1c8a46"}, - {file = "scikit_learn-1.4.1.post1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:a1e289f33f613cefe6707dead50db31930530dc386b6ccff176c786335a7b01c"}, - {file = "scikit_learn-1.4.1.post1-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:0df87de9ce1c0140f2818beef310fb2e2afdc1e66fc9ad587965577f17733649"}, - {file = "scikit_learn-1.4.1.post1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:712c1c69c45b58ef21635360b3d0a680ff7d83ac95b6f9b82cf9294070cda710"}, - {file = "scikit_learn-1.4.1.post1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1754b0c2409d6ed5a3380512d0adcf182a01363c669033a2b55cca429ed86a81"}, - {file = "scikit_learn-1.4.1.post1-cp312-cp312-win_amd64.whl", hash = "sha256:1d491ef66e37f4e812db7e6c8286520c2c3fc61b34bf5e59b67b4ce528de93af"}, - {file = "scikit_learn-1.4.1.post1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:aa0029b78ef59af22cfbd833e8ace8526e4df90212db7ceccbea582ebb5d6794"}, - {file = "scikit_learn-1.4.1.post1-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:14e4c88436ac96bf69eb6d746ac76a574c314a23c6961b7d344b38877f20fee1"}, - {file = "scikit_learn-1.4.1.post1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7cd3a77c32879311f2aa93466d3c288c955ef71d191503cf0677c3340ae8ae0"}, - {file = "scikit_learn-1.4.1.post1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a3ee19211ded1a52ee37b0a7b373a8bfc66f95353af058a210b692bd4cda0dd"}, - {file = "scikit_learn-1.4.1.post1-cp39-cp39-win_amd64.whl", hash = "sha256:234b6bda70fdcae9e4abbbe028582ce99c280458665a155eed0b820599377d25"}, -] - -[package.dependencies] -joblib = ">=1.2.0" -numpy = ">=1.19.5,<2.0" -scipy = ">=1.6.0" -threadpoolctl = ">=2.0.0" - -[package.extras] -benchmark = ["matplotlib (>=3.3.4)", "memory-profiler (>=0.57.0)", "pandas (>=1.1.5)"] -docs = ["Pillow (>=7.1.2)", "matplotlib (>=3.3.4)", "memory-profiler (>=0.57.0)", "numpydoc (>=1.2.0)", "pandas (>=1.1.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.17.2)", "seaborn (>=0.9.0)", "sphinx (>=6.0.0)", "sphinx-copybutton (>=0.5.2)", "sphinx-gallery (>=0.15.0)", "sphinx-prompt (>=1.3.0)", "sphinxext-opengraph (>=0.4.2)"] -examples = ["matplotlib (>=3.3.4)", "pandas (>=1.1.5)", "plotly (>=5.14.0)", "pooch (>=1.6.0)", "scikit-image (>=0.17.2)", "seaborn (>=0.9.0)"] -tests = ["black (>=23.3.0)", "matplotlib (>=3.3.4)", "mypy (>=1.3)", "numpydoc (>=1.2.0)", "pandas (>=1.1.5)", "polars (>=0.19.12)", "pooch (>=1.6.0)", "pyamg (>=4.0.0)", "pyarrow (>=12.0.0)", "pytest (>=7.1.2)", "pytest-cov (>=2.9.0)", "ruff (>=0.0.272)", "scikit-image (>=0.17.2)"] - -[[package]] -name = "scipy" -version = "1.9.3" -description = "Fundamental algorithms for scientific computing in Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "scipy-1.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1884b66a54887e21addf9c16fb588720a8309a57b2e258ae1c7986d4444d3bc0"}, - {file = "scipy-1.9.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:83b89e9586c62e787f5012e8475fbb12185bafb996a03257e9675cd73d3736dd"}, - {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a72d885fa44247f92743fc20732ae55564ff2a519e8302fb7e18717c5355a8b"}, - {file = "scipy-1.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d01e1dd7b15bd2449c8bfc6b7cc67d630700ed655654f0dfcf121600bad205c9"}, - {file = "scipy-1.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:68239b6aa6f9c593da8be1509a05cb7f9efe98b80f43a5861cd24c7557e98523"}, - {file = "scipy-1.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b41bc822679ad1c9a5f023bc93f6d0543129ca0f37c1ce294dd9d386f0a21096"}, - {file = "scipy-1.9.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:90453d2b93ea82a9f434e4e1cba043e779ff67b92f7a0e85d05d286a3625df3c"}, - {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83c06e62a390a9167da60bedd4575a14c1f58ca9dfde59830fc42e5197283dab"}, - {file = "scipy-1.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:abaf921531b5aeaafced90157db505e10345e45038c39e5d9b6c7922d68085cb"}, - {file = "scipy-1.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:06d2e1b4c491dc7d8eacea139a1b0b295f74e1a1a0f704c375028f8320d16e31"}, - {file = "scipy-1.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5a04cd7d0d3eff6ea4719371cbc44df31411862b9646db617c99718ff68d4840"}, - {file = "scipy-1.9.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:545c83ffb518094d8c9d83cce216c0c32f8c04aaf28b92cc8283eda0685162d5"}, - {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d54222d7a3ba6022fdf5773931b5d7c56efe41ede7f7128c7b1637700409108"}, - {file = "scipy-1.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cff3a5295234037e39500d35316a4c5794739433528310e117b8a9a0c76d20fc"}, - {file = "scipy-1.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:2318bef588acc7a574f5bfdff9c172d0b1bf2c8143d9582e05f878e580a3781e"}, - {file = "scipy-1.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d644a64e174c16cb4b2e41dfea6af722053e83d066da7343f333a54dae9bc31c"}, - {file = "scipy-1.9.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:da8245491d73ed0a994ed9c2e380fd058ce2fa8a18da204681f2fe1f57f98f95"}, - {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4db5b30849606a95dcf519763dd3ab6fe9bd91df49eba517359e450a7d80ce2e"}, - {file = "scipy-1.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c68db6b290cbd4049012990d7fe71a2abd9ffbe82c0056ebe0f01df8be5436b0"}, - {file = "scipy-1.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:5b88e6d91ad9d59478fafe92a7c757d00c59e3bdc3331be8ada76a4f8d683f58"}, - {file = "scipy-1.9.3.tar.gz", hash = "sha256:fbc5c05c85c1a02be77b1ff591087c83bc44579c6d2bd9fb798bb64ea5e1a027"}, -] - -[package.dependencies] -numpy = ">=1.18.5,<1.26.0" - -[package.extras] -dev = ["flake8", "mypy", "pycodestyle", "typing_extensions"] -doc = ["matplotlib (>2)", "numpydoc", "pydata-sphinx-theme (==0.9.0)", "sphinx (!=4.1.0)", "sphinx-panels (>=0.5.2)", "sphinx-tabs"] -test = ["asv", "gmpy2", "mpmath", "pytest", "pytest-cov", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] - -[[package]] -name = "send2trash" -version = "1.8.2" -description = "Send file to trash natively under Mac OS X, Windows and Linux" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" -files = [ - {file = "Send2Trash-1.8.2-py3-none-any.whl", hash = "sha256:a384719d99c07ce1eefd6905d2decb6f8b7ed054025bb0e618919f945de4f679"}, - {file = "Send2Trash-1.8.2.tar.gz", hash = "sha256:c132d59fa44b9ca2b1699af5c86f57ce9f4c5eb56629d5d55fbb7a35f84e2312"}, -] - -[package.extras] -nativelib = ["pyobjc-framework-Cocoa", "pywin32"] -objc = ["pyobjc-framework-Cocoa"] -win32 = ["pywin32"] - -[[package]] -name = "setuptools" -version = "69.1.1" -description = "Easily download, build, install, upgrade, and uninstall Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "setuptools-69.1.1-py3-none-any.whl", hash = "sha256:02fa291a0471b3a18b2b2481ed902af520c69e8ae0919c13da936542754b4c56"}, - {file = "setuptools-69.1.1.tar.gz", hash = "sha256:5c0806c7d9af348e6dd3777b4f4dbb42c7ad85b190104837488eab9a7c945cf8"}, -] - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] -testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] -testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] - -[[package]] -name = "six" -version = "1.16.0" -description = "Python 2 and 3 compatibility utilities" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" -files = [ - {file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"}, - {file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"}, -] - -[[package]] -name = "sniffio" -version = "1.3.1" -description = "Sniff out which async library your code is running under" -optional = false -python-versions = ">=3.7" -files = [ - {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, - {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, -] - -[[package]] -name = "soupsieve" -version = "2.5" -description = "A modern CSS selector implementation for Beautiful Soup." -optional = false -python-versions = ">=3.8" -files = [ - {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, - {file = "soupsieve-2.5.tar.gz", hash = "sha256:5663d5a7b3bfaeee0bc4372e7fc48f9cff4940b3eec54a6451cc5299f1097690"}, -] - -[[package]] -name = "sqlalchemy" -version = "2.0.27" -description = "Database Abstraction Library" -optional = false -python-versions = ">=3.7" -files = [ - {file = "SQLAlchemy-2.0.27-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d04e579e911562f1055d26dab1868d3e0bb905db3bccf664ee8ad109f035618a"}, - {file = "SQLAlchemy-2.0.27-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fa67d821c1fd268a5a87922ef4940442513b4e6c377553506b9db3b83beebbd8"}, - {file = "SQLAlchemy-2.0.27-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:954d9735ee9c3fa74874c830d089a815b7b48df6f6b6e357a74130e478dbd951"}, - {file = "SQLAlchemy-2.0.27-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:03f448ffb731b48323bda68bcc93152f751436ad6037f18a42b7e16af9e91c07"}, - {file = "SQLAlchemy-2.0.27-cp310-cp310-win32.whl", hash = "sha256:d997c5938a08b5e172c30583ba6b8aad657ed9901fc24caf3a7152eeccb2f1b4"}, - {file = "SQLAlchemy-2.0.27-cp310-cp310-win_amd64.whl", hash = "sha256:eb15ef40b833f5b2f19eeae65d65e191f039e71790dd565c2af2a3783f72262f"}, - {file = "SQLAlchemy-2.0.27-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6c5bad7c60a392850d2f0fee8f355953abaec878c483dd7c3836e0089f046bf6"}, - {file = "SQLAlchemy-2.0.27-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a3012ab65ea42de1be81fff5fb28d6db893ef978950afc8130ba707179b4284a"}, - {file = "SQLAlchemy-2.0.27-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d177b7e82f6dd5e1aebd24d9c3297c70ce09cd1d5d37b43e53f39514379c029c"}, - {file = "SQLAlchemy-2.0.27-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1306102f6d9e625cebaca3d4c9c8f10588735ef877f0360b5cdb4fdfd3fd7131"}, - {file = "SQLAlchemy-2.0.27-cp311-cp311-win32.whl", hash = "sha256:5b78aa9f4f68212248aaf8943d84c0ff0f74efc65a661c2fc68b82d498311fd5"}, - {file = "SQLAlchemy-2.0.27-cp311-cp311-win_amd64.whl", hash = "sha256:15e19a84b84528f52a68143439d0c7a3a69befcd4f50b8ef9b7b69d2628ae7c4"}, - {file = "SQLAlchemy-2.0.27-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0de1263aac858f288a80b2071990f02082c51d88335a1db0d589237a3435fe71"}, - {file = "SQLAlchemy-2.0.27-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce850db091bf7d2a1f2fdb615220b968aeff3849007b1204bf6e3e50a57b3d32"}, - {file = "SQLAlchemy-2.0.27-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c4fbe6a766301f2e8a4519f4500fe74ef0a8509a59e07a4085458f26228cd7cc"}, - {file = "SQLAlchemy-2.0.27-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:0fb3bffc0ced37e5aa4ac2416f56d6d858f46d4da70c09bb731a246e70bff4d5"}, - {file = "SQLAlchemy-2.0.27-cp312-cp312-win32.whl", hash = "sha256:7f470327d06400a0aa7926b375b8e8c3c31d335e0884f509fe272b3c700a7254"}, - {file = "SQLAlchemy-2.0.27-cp312-cp312-win_amd64.whl", hash = "sha256:f9374e270e2553653d710ece397df67db9d19c60d2647bcd35bfc616f1622dcd"}, - {file = "SQLAlchemy-2.0.27-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:e97cf143d74a7a5a0f143aa34039b4fecf11343eed66538610debc438685db4a"}, - {file = "SQLAlchemy-2.0.27-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e36aa62b765cf9f43a003233a8c2d7ffdeb55bc62eaa0a0380475b228663a38f"}, - {file = "SQLAlchemy-2.0.27-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:b1d9d1bfd96eef3c3faedb73f486c89e44e64e40e5bfec304ee163de01cf996f"}, - {file = "SQLAlchemy-2.0.27-cp37-cp37m-win32.whl", hash = "sha256:ca891af9f3289d24a490a5fde664ea04fe2f4984cd97e26de7442a4251bd4b7c"}, - {file = "SQLAlchemy-2.0.27-cp37-cp37m-win_amd64.whl", hash = "sha256:fd8aafda7cdff03b905d4426b714601c0978725a19efc39f5f207b86d188ba01"}, - {file = "SQLAlchemy-2.0.27-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:ec1f5a328464daf7a1e4e385e4f5652dd9b1d12405075ccba1df842f7774b4fc"}, - {file = "SQLAlchemy-2.0.27-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:ad862295ad3f644e3c2c0d8b10a988e1600d3123ecb48702d2c0f26771f1c396"}, - {file = "SQLAlchemy-2.0.27-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e56afce6431450442f3ab5973156289bd5ec33dd618941283847c9fd5ff06bf"}, - {file = "SQLAlchemy-2.0.27-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:b86abba762ecfeea359112b2bb4490802b340850bbee1948f785141a5e020de8"}, - {file = "SQLAlchemy-2.0.27-cp38-cp38-win32.whl", hash = "sha256:30d81cc1192dc693d49d5671cd40cdec596b885b0ce3b72f323888ab1c3863d5"}, - {file = "SQLAlchemy-2.0.27-cp38-cp38-win_amd64.whl", hash = "sha256:120af1e49d614d2525ac247f6123841589b029c318b9afbfc9e2b70e22e1827d"}, - {file = "SQLAlchemy-2.0.27-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d07ee7793f2aeb9b80ec8ceb96bc8cc08a2aec8a1b152da1955d64e4825fcbac"}, - {file = "SQLAlchemy-2.0.27-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:cb0845e934647232b6ff5150df37ceffd0b67b754b9fdbb095233deebcddbd4a"}, - {file = "SQLAlchemy-2.0.27-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b90053be91973a6fb6020a6e44382c97739736a5a9d74e08cc29b196639eb979"}, - {file = "SQLAlchemy-2.0.27-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:33e8bde8fff203de50399b9039c4e14e42d4d227759155c21f8da4a47fc8053c"}, - {file = "SQLAlchemy-2.0.27-cp39-cp39-win32.whl", hash = "sha256:d873c21b356bfaf1589b89090a4011e6532582b3a8ea568a00e0c3aab09399dd"}, - {file = "SQLAlchemy-2.0.27-cp39-cp39-win_amd64.whl", hash = "sha256:ff2f1b7c963961d41403b650842dc2039175b906ab2093635d8319bef0b7d620"}, - {file = "SQLAlchemy-2.0.27-py3-none-any.whl", hash = "sha256:1ab4e0448018d01b142c916cc7119ca573803a4745cfe341b8f95657812700ac"}, - {file = "SQLAlchemy-2.0.27.tar.gz", hash = "sha256:86a6ed69a71fe6b88bf9331594fa390a2adda4a49b5c06f98e47bf0d392534f8"}, -] - -[package.dependencies] -greenlet = {version = "!=0.4.17", optional = true, markers = "platform_machine == \"aarch64\" or platform_machine == \"ppc64le\" or platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"AMD64\" or platform_machine == \"win32\" or platform_machine == \"WIN32\" or extra == \"asyncio\""} -typing-extensions = ">=4.6.0" - -[package.extras] -aiomysql = ["aiomysql (>=0.2.0)", "greenlet (!=0.4.17)"] -aioodbc = ["aioodbc", "greenlet (!=0.4.17)"] -aiosqlite = ["aiosqlite", "greenlet (!=0.4.17)", "typing_extensions (!=3.10.0.1)"] -asyncio = ["greenlet (!=0.4.17)"] -asyncmy = ["asyncmy (>=0.2.3,!=0.2.4,!=0.2.6)", "greenlet (!=0.4.17)"] -mariadb-connector = ["mariadb (>=1.0.1,!=1.1.2,!=1.1.5)"] -mssql = ["pyodbc"] -mssql-pymssql = ["pymssql"] -mssql-pyodbc = ["pyodbc"] -mypy = ["mypy (>=0.910)"] -mysql = ["mysqlclient (>=1.4.0)"] -mysql-connector = ["mysql-connector-python"] -oracle = ["cx_oracle (>=8)"] -oracle-oracledb = ["oracledb (>=1.0.1)"] -postgresql = ["psycopg2 (>=2.7)"] -postgresql-asyncpg = ["asyncpg", "greenlet (!=0.4.17)"] -postgresql-pg8000 = ["pg8000 (>=1.29.1)"] -postgresql-psycopg = ["psycopg (>=3.0.7)"] -postgresql-psycopg2binary = ["psycopg2-binary"] -postgresql-psycopg2cffi = ["psycopg2cffi"] -postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"] -pymysql = ["pymysql"] -sqlcipher = ["sqlcipher3_binary"] - -[[package]] -name = "stack-data" -version = "0.6.3" -description = "Extract data from python stack frames and tracebacks for informative displays" -optional = false -python-versions = "*" -files = [ - {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, - {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, -] - -[package.dependencies] -asttokens = ">=2.1.0" -executing = ">=1.2.0" -pure-eval = "*" - -[package.extras] -tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] - -[[package]] -name = "tenacity" -version = "8.2.3" -description = "Retry code until it succeeds" -optional = false -python-versions = ">=3.7" -files = [ - {file = "tenacity-8.2.3-py3-none-any.whl", hash = "sha256:ce510e327a630c9e1beaf17d42e6ffacc88185044ad85cf74c0a8887c6a0f88c"}, - {file = "tenacity-8.2.3.tar.gz", hash = "sha256:5398ef0d78e63f40007c1fb4c0bff96e1911394d2fa8d194f77619c05ff6cc8a"}, -] - -[package.extras] -doc = ["reno", "sphinx", "tornado (>=4.5)"] - -[[package]] -name = "terminado" -version = "0.18.0" -description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." -optional = false -python-versions = ">=3.8" -files = [ - {file = "terminado-0.18.0-py3-none-any.whl", hash = "sha256:87b0d96642d0fe5f5abd7783857b9cab167f221a39ff98e3b9619a788a3c0f2e"}, - {file = "terminado-0.18.0.tar.gz", hash = "sha256:1ea08a89b835dd1b8c0c900d92848147cef2537243361b2e3f4dc15df9b6fded"}, -] - -[package.dependencies] -ptyprocess = {version = "*", markers = "os_name != \"nt\""} -pywinpty = {version = ">=1.1.0", markers = "os_name == \"nt\""} -tornado = ">=6.1.0" - -[package.extras] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] -test = ["pre-commit", "pytest (>=7.0)", "pytest-timeout"] -typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] - -[[package]] -name = "threadpoolctl" -version = "3.3.0" -description = "threadpoolctl" -optional = false -python-versions = ">=3.8" -files = [ - {file = "threadpoolctl-3.3.0-py3-none-any.whl", hash = "sha256:6155be1f4a39f31a18ea70f94a77e0ccd57dced08122ea61109e7da89883781e"}, - {file = "threadpoolctl-3.3.0.tar.gz", hash = "sha256:5dac632b4fa2d43f42130267929af3ba01399ef4bd1882918e92dbc30365d30c"}, -] - -[[package]] -name = "tiktoken" -version = "0.6.0" -description = "tiktoken is a fast BPE tokeniser for use with OpenAI's models" -optional = false -python-versions = ">=3.8" -files = [ - {file = "tiktoken-0.6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:277de84ccd8fa12730a6b4067456e5cf72fef6300bea61d506c09e45658d41ac"}, - {file = "tiktoken-0.6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9c44433f658064463650d61387623735641dcc4b6c999ca30bc0f8ba3fccaf5c"}, - {file = "tiktoken-0.6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afb9a2a866ae6eef1995ab656744287a5ac95acc7e0491c33fad54d053288ad3"}, - {file = "tiktoken-0.6.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c62c05b3109fefca26fedb2820452a050074ad8e5ad9803f4652977778177d9f"}, - {file = "tiktoken-0.6.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0ef917fad0bccda07bfbad835525bbed5f3ab97a8a3e66526e48cdc3e7beacf7"}, - {file = "tiktoken-0.6.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e095131ab6092d0769a2fda85aa260c7c383072daec599ba9d8b149d2a3f4d8b"}, - {file = "tiktoken-0.6.0-cp310-cp310-win_amd64.whl", hash = "sha256:05b344c61779f815038292a19a0c6eb7098b63c8f865ff205abb9ea1b656030e"}, - {file = "tiktoken-0.6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cefb9870fb55dca9e450e54dbf61f904aab9180ff6fe568b61f4db9564e78871"}, - {file = "tiktoken-0.6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:702950d33d8cabc039845674107d2e6dcabbbb0990ef350f640661368df481bb"}, - {file = "tiktoken-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8d49d076058f23254f2aff9af603863c5c5f9ab095bc896bceed04f8f0b013a"}, - {file = "tiktoken-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:430bc4e650a2d23a789dc2cdca3b9e5e7eb3cd3935168d97d43518cbb1f9a911"}, - {file = "tiktoken-0.6.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:293cb8669757301a3019a12d6770bd55bec38a4d3ee9978ddbe599d68976aca7"}, - {file = "tiktoken-0.6.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:7bd1a288b7903aadc054b0e16ea78e3171f70b670e7372432298c686ebf9dd47"}, - {file = "tiktoken-0.6.0-cp311-cp311-win_amd64.whl", hash = "sha256:ac76e000183e3b749634968a45c7169b351e99936ef46f0d2353cd0d46c3118d"}, - {file = "tiktoken-0.6.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:17cc8a4a3245ab7d935c83a2db6bb71619099d7284b884f4b2aea4c74f2f83e3"}, - {file = "tiktoken-0.6.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:284aebcccffe1bba0d6571651317df6a5b376ff6cfed5aeb800c55df44c78177"}, - {file = "tiktoken-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c1a3a5d33846f8cd9dd3b7897c1d45722f48625a587f8e6f3d3e85080559be8"}, - {file = "tiktoken-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6318b2bb2337f38ee954fd5efa82632c6e5ced1d52a671370fa4b2eff1355e91"}, - {file = "tiktoken-0.6.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f5f0f2ed67ba16373f9a6013b68da298096b27cd4e1cf276d2d3868b5c7efd1"}, - {file = "tiktoken-0.6.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:75af4c0b16609c2ad02581f3cdcd1fb698c7565091370bf6c0cf8624ffaba6dc"}, - {file = "tiktoken-0.6.0-cp312-cp312-win_amd64.whl", hash = "sha256:45577faf9a9d383b8fd683e313cf6df88b6076c034f0a16da243bb1c139340c3"}, - {file = "tiktoken-0.6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7c1492ab90c21ca4d11cef3a236ee31a3e279bb21b3fc5b0e2210588c4209e68"}, - {file = "tiktoken-0.6.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:e2b380c5b7751272015400b26144a2bab4066ebb8daae9c3cd2a92c3b508fe5a"}, - {file = "tiktoken-0.6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9f497598b9f58c99cbc0eb764b4a92272c14d5203fc713dd650b896a03a50ad"}, - {file = "tiktoken-0.6.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e65e8bd6f3f279d80f1e1fbd5f588f036b9a5fa27690b7f0cc07021f1dfa0839"}, - {file = "tiktoken-0.6.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5f1495450a54e564d236769d25bfefbf77727e232d7a8a378f97acddee08c1ae"}, - {file = "tiktoken-0.6.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6c4e4857d99f6fb4670e928250835b21b68c59250520a1941618b5b4194e20c3"}, - {file = "tiktoken-0.6.0-cp38-cp38-win_amd64.whl", hash = "sha256:168d718f07a39b013032741867e789971346df8e89983fe3c0ef3fbd5a0b1cb9"}, - {file = "tiktoken-0.6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:47fdcfe11bd55376785a6aea8ad1db967db7f66ea81aed5c43fad497521819a4"}, - {file = "tiktoken-0.6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fb7d2ccbf1a7784810aff6b80b4012fb42c6fc37eaa68cb3b553801a5cc2d1fc"}, - {file = "tiktoken-0.6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1ccb7a111ee76af5d876a729a347f8747d5ad548e1487eeea90eaf58894b3138"}, - {file = "tiktoken-0.6.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2048e1086b48e3c8c6e2ceeac866561374cd57a84622fa49a6b245ffecb7744"}, - {file = "tiktoken-0.6.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:07f229a5eb250b6403a61200199cecf0aac4aa23c3ecc1c11c1ca002cbb8f159"}, - {file = "tiktoken-0.6.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:432aa3be8436177b0db5a2b3e7cc28fd6c693f783b2f8722539ba16a867d0c6a"}, - {file = "tiktoken-0.6.0-cp39-cp39-win_amd64.whl", hash = "sha256:8bfe8a19c8b5c40d121ee7938cd9c6a278e5b97dc035fd61714b4f0399d2f7a1"}, - {file = "tiktoken-0.6.0.tar.gz", hash = "sha256:ace62a4ede83c75b0374a2ddfa4b76903cf483e9cb06247f566be3bf14e6beed"}, -] - -[package.dependencies] -regex = ">=2022.1.18" -requests = ">=2.26.0" - -[package.extras] -blobfile = ["blobfile (>=2)"] - -[[package]] -name = "tinycss2" -version = "1.2.1" -description = "A tiny CSS parser" -optional = false -python-versions = ">=3.7" -files = [ - {file = "tinycss2-1.2.1-py3-none-any.whl", hash = "sha256:2b80a96d41e7c3914b8cda8bc7f705a4d9c49275616e886103dd839dfc847847"}, - {file = "tinycss2-1.2.1.tar.gz", hash = "sha256:8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627"}, -] - -[package.dependencies] -webencodings = ">=0.4" - -[package.extras] -doc = ["sphinx", "sphinx_rtd_theme"] -test = ["flake8", "isort", "pytest"] - -[[package]] -name = "tokenize-rt" -version = "5.2.0" -description = "A wrapper around the stdlib `tokenize` which roundtrips." -optional = false -python-versions = ">=3.8" -files = [ - {file = "tokenize_rt-5.2.0-py2.py3-none-any.whl", hash = "sha256:b79d41a65cfec71285433511b50271b05da3584a1da144a0752e9c621a285289"}, - {file = "tokenize_rt-5.2.0.tar.gz", hash = "sha256:9fe80f8a5c1edad2d3ede0f37481cc0cc1538a2f442c9c2f9e4feacd2792d054"}, -] - -[[package]] -name = "tomli" -version = "2.0.1" -description = "A lil' TOML parser" -optional = false -python-versions = ">=3.7" -files = [ - {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, - {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, -] - -[[package]] -name = "tomlkit" -version = "0.12.3" -description = "Style preserving TOML library" -optional = false -python-versions = ">=3.7" -files = [ - {file = "tomlkit-0.12.3-py3-none-any.whl", hash = "sha256:b0a645a9156dc7cb5d3a1f0d4bab66db287fcb8e0430bdd4664a095ea16414ba"}, - {file = "tomlkit-0.12.3.tar.gz", hash = "sha256:75baf5012d06501f07bee5bf8e801b9f343e7aac5a92581f20f80ce632e6b5a4"}, -] - -[[package]] -name = "tornado" -version = "6.4" -description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." -optional = false -python-versions = ">= 3.8" -files = [ - {file = "tornado-6.4-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:02ccefc7d8211e5a7f9e8bc3f9e5b0ad6262ba2fbb683a6443ecc804e5224ce0"}, - {file = "tornado-6.4-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:27787de946a9cffd63ce5814c33f734c627a87072ec7eed71f7fc4417bb16263"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7894c581ecdcf91666a0912f18ce5e757213999e183ebfc2c3fdbf4d5bd764e"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e43bc2e5370a6a8e413e1e1cd0c91bedc5bd62a74a532371042a18ef19e10579"}, - {file = "tornado-6.4-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f0251554cdd50b4b44362f73ad5ba7126fc5b2c2895cc62b14a1c2d7ea32f212"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:fd03192e287fbd0899dd8f81c6fb9cbbc69194d2074b38f384cb6fa72b80e9c2"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_i686.whl", hash = "sha256:88b84956273fbd73420e6d4b8d5ccbe913c65d31351b4c004ae362eba06e1f78"}, - {file = "tornado-6.4-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:71ddfc23a0e03ef2df1c1397d859868d158c8276a0603b96cf86892bff58149f"}, - {file = "tornado-6.4-cp38-abi3-win32.whl", hash = "sha256:6f8a6c77900f5ae93d8b4ae1196472d0ccc2775cc1dfdc9e7727889145c45052"}, - {file = "tornado-6.4-cp38-abi3-win_amd64.whl", hash = "sha256:10aeaa8006333433da48dec9fe417877f8bcc21f48dda8d661ae79da357b2a63"}, - {file = "tornado-6.4.tar.gz", hash = "sha256:72291fa6e6bc84e626589f1c29d90a5a6d593ef5ae68052ee2ef000dfd273dee"}, -] - -[[package]] -name = "tqdm" -version = "4.66.2" -description = "Fast, Extensible Progress Meter" -optional = false -python-versions = ">=3.7" -files = [ - {file = "tqdm-4.66.2-py3-none-any.whl", hash = "sha256:1ee4f8a893eb9bef51c6e35730cebf234d5d0b6bd112b0271e10ed7c24a02bd9"}, - {file = "tqdm-4.66.2.tar.gz", hash = "sha256:6cd52cdf0fef0e0f543299cfc96fec90d7b8a7e88745f411ec33eb44d5ed3531"}, -] - -[package.dependencies] -colorama = {version = "*", markers = "platform_system == \"Windows\""} - -[package.extras] -dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] -notebook = ["ipywidgets (>=6)"] -slack = ["slack-sdk"] -telegram = ["requests"] - -[[package]] -name = "traitlets" -version = "5.14.1" -description = "Traitlets Python configuration system" -optional = false -python-versions = ">=3.8" -files = [ - {file = "traitlets-5.14.1-py3-none-any.whl", hash = "sha256:2e5a030e6eff91737c643231bfcf04a65b0132078dad75e4936700b213652e74"}, - {file = "traitlets-5.14.1.tar.gz", hash = "sha256:8585105b371a04b8316a43d5ce29c098575c2e477850b62b848b964f1444527e"}, -] - -[package.extras] -docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] -test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0,<7.5)", "pytest-mock", "pytest-mypy-testing"] - -[[package]] -name = "tree-sitter" -version = "0.20.4" -description = "Python bindings for the Tree-Sitter parsing library" -optional = false -python-versions = ">=3.3" -files = [ - {file = "tree_sitter-0.20.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:c259b9bcb596e54f54713eb3951226fc834d65289940f4bfdcdf519f08e8e876"}, - {file = "tree_sitter-0.20.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:88da7e2e4c69881cd63916cc24ae0b809f96aae331da45b418ae6b2d1ed2ca19"}, - {file = "tree_sitter-0.20.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:66a68b156ba131e9d8dff4a1f72037f4b368cc50c58f18905a91743ae1d1c795"}, - {file = "tree_sitter-0.20.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ae28e25d551f406807011487bdfb9728041e656b30b554fa7f3391ab64ed69f9"}, - {file = "tree_sitter-0.20.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:36b10c9c69e825ba65cf9b0f77668bf33e70d2a5764b64ad6f133f8cc9220f09"}, - {file = "tree_sitter-0.20.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7c18c64ddd44b75b7e1660b9793753eda427e4b145b6216d4b2d2e9b200c74f2"}, - {file = "tree_sitter-0.20.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:e9e9e594bbefb76ad9ea256f5c87eba7591b4758854d3df83ce4df415933a006"}, - {file = "tree_sitter-0.20.4-cp310-cp310-win32.whl", hash = "sha256:b4755229dc18644fe48bcab974bde09b171fcb6ef625d3cb5ece5c6198f4223e"}, - {file = "tree_sitter-0.20.4-cp310-cp310-win_amd64.whl", hash = "sha256:f792684cee8a46d9194d9f4223810e54ccc704470c5777538d59fbde0a4c91bf"}, - {file = "tree_sitter-0.20.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9d22ee75f45836554ee6a11e50dd8f9827941e67c49fce9a0790245b899811a9"}, - {file = "tree_sitter-0.20.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2a0ffd76dd991ba745bb5d0ba1d583bec85726d3ddef8c9685dc8636a619adde"}, - {file = "tree_sitter-0.20.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:060d4e5b803be0975f1ac46e54a292eab0701296ccd912f6cdac3f7331e29143"}, - {file = "tree_sitter-0.20.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:822e02366dbf223697b2b56b8f91aa5b60571f9fe7c998988a381db1c69604e9"}, - {file = "tree_sitter-0.20.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:527ca72c6a8f60fa719af37fa86f58b7ad0e07b8f74d1c1c7e926c5c888a7e6b"}, - {file = "tree_sitter-0.20.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a418ca71309ea7052e076f08d623f33f58eae01a8e8cdc1e6d3a01b5b8ddebfe"}, - {file = "tree_sitter-0.20.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:08c3ba2561b61a83c28ca06a0bce2a5ffcfb6b39f9d27a45e5ebd9cad2bedb7f"}, - {file = "tree_sitter-0.20.4-cp311-cp311-win32.whl", hash = "sha256:8d04c75a389b2de94952d602264852acff8cd3ed1ccf8a2492a080973d5ddd58"}, - {file = "tree_sitter-0.20.4-cp311-cp311-win_amd64.whl", hash = "sha256:ba9215c0e7529d9eb370528e5d99b7389d14a7eae94f07d14fa9dab18f267c62"}, - {file = "tree_sitter-0.20.4-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c4c1af5ed4306071d30970c83ec882520a7bf5d8053996dbc4aa5c59238d4990"}, - {file = "tree_sitter-0.20.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9d70bfa550cf22c9cea9b3c0d18b889fc4f2a7e9dcf1d6cc93f49fa9d4a94954"}, - {file = "tree_sitter-0.20.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6de537bca0641775d8d175d37303d54998980fc0d997dd9aa89e16b415bf0cc3"}, - {file = "tree_sitter-0.20.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b1c0f8c0e3e50267566f5116cdceedf4e23e8c08b55ef3becbe954a11b16e84"}, - {file = "tree_sitter-0.20.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef2ee6d9bb8e21713949e5ff769ed670fe1217f95b7eeb6c675788438c1e6e"}, - {file = "tree_sitter-0.20.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:b6fd1c881ab0de5faa67168db2d001eee32be5482cb4e0b21b217689a05b6fe4"}, - {file = "tree_sitter-0.20.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bf47047420021d50aec529cb66387c90562350b499ddf56ecef1fc8255439e30"}, - {file = "tree_sitter-0.20.4-cp312-cp312-win32.whl", hash = "sha256:c16b48378041fc9702b6aa3480f2ffa49ca8ea58141a862acd569e5a0679655f"}, - {file = "tree_sitter-0.20.4-cp312-cp312-win_amd64.whl", hash = "sha256:973e871167079a1b1d7304d361449253efbe2a6974728ad563cf407bd02ddccb"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:9d33a55598dd18a4d8b869a3417de82a4812c3a7dc7e61cb025ece3e9c3e4e96"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cee6955c2c97fc5927a41c7a8b06647c4b4d9b99b8a1581bf1183435c8cec3e"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5022bea67e479ad212be7c05b983a72e297a013efb4e8ea5b5b4d7da79a9fdef"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:640f60a5b966f0990338f1bf559455c3dcb822bc4329d82b3d42f32a48374dfe"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:0e83f641fe6f27d91bd4d259fff5d35de1567d3f581b9efe9bbd5be50fe4ddc7"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-win32.whl", hash = "sha256:ce6a85027c66fa3f09d482cc6d41927ea40955f7f33b86aedd26dd932709a2c9"}, - {file = "tree_sitter-0.20.4-cp36-cp36m-win_amd64.whl", hash = "sha256:fe10779347a6c067af29cb37fd4b75fa96c5cb68f587cc9530b70fe3f2a51a55"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:28d5f84e34e276887e3a240b60906ca7e2b51e975f3145c3149ceed977a69508"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c913b65cbe10996116988ac436748f24883b5097e58274223e89bb2c5d1bb1a"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ecaed46241e071752195a628bb97d2b740f2fde9e34f8a74456a4ea8bb26df88"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:b641e88a97eab002a1736d93ef5a4beac90ea4fd6e25affd1831319b99f456c9"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:327c40f439c6155e4eee54c4657e4701a04f5f4816d9defdcb836bf65bf83d21"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-win32.whl", hash = "sha256:1b7c1d95f006b3de42fbf4045bd00c273d113e372fcb6a5378e74ed120c12032"}, - {file = "tree_sitter-0.20.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6140d037239a41046f5d34fba5e0374ee697adb4b48b90579c618b5402781c11"}, - {file = "tree_sitter-0.20.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:f42fd1104efaad8151370f1936e2a488b7337a5d24544a9ab59ba4c4010b1272"}, - {file = "tree_sitter-0.20.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7859717c5d62ee386b3d036cab8ed0f88f8c027b6b4ae476a55a8c5fb8aab713"}, - {file = "tree_sitter-0.20.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:fdd361fe1cc68db68b4d85165641275e34b86cc26b2bab932790204fa14824dc"}, - {file = "tree_sitter-0.20.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b8d7539075606027b67764543463ff2bc4e52f4158ef6dc419c9f5625aa5383"}, - {file = "tree_sitter-0.20.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78e76307f05aca6cde72f3307b4d53701f34ae45f2248ceb83d1626051e201fd"}, - {file = "tree_sitter-0.20.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dd8c352f4577f61098d06cf3feb7fd214259f41b5036b81003860ed54d16b448"}, - {file = "tree_sitter-0.20.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:281f3e5382d1bd7fccc88d1afe68c915565bc24f8b8dd4844079d46c7815b8a7"}, - {file = "tree_sitter-0.20.4-cp38-cp38-win32.whl", hash = "sha256:6a77ac3cdcddd80cdd1fd394318bff99f94f37e08d235aaefccb87e1224946e5"}, - {file = "tree_sitter-0.20.4-cp38-cp38-win_amd64.whl", hash = "sha256:8eee8adf54033dc48eab84b040f4d7b32355a964c4ae0aae5dfbdc4dbc3364ca"}, - {file = "tree_sitter-0.20.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e89f6508e30fce05e2c724725d022db30d877817b9d64f933506ffb3a3f4a2c2"}, - {file = "tree_sitter-0.20.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7fb6286bb1fae663c45ff0700ec88fb9b50a81eed2bae8a291f95fcf8cc19547"}, - {file = "tree_sitter-0.20.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:11e93f8b4bbae04070416a82257a7ab2eb0afb76e093ae3ea73bd63b792f6846"}, - {file = "tree_sitter-0.20.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8250725c5f78929aeb2c71db5dca76f1ef448389ca16f9439161f90978bb8478"}, - {file = "tree_sitter-0.20.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d404a8ca9de9b0843844f0cd4d423f46bc46375ab8afb63b1d8ec01201457ac8"}, - {file = "tree_sitter-0.20.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0f2422c9ee70ba972dfc3943746e6cf7fc03725a866908950245bda9ccfc7301"}, - {file = "tree_sitter-0.20.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:21a937942e4729abbe778a609d2c218574436cb351c36fba89ef3c8c6066ec78"}, - {file = "tree_sitter-0.20.4-cp39-cp39-win32.whl", hash = "sha256:427a9a39360cc1816e28f8182550e478e4ba983595a2565ab9dfe32ea1b03fd7"}, - {file = "tree_sitter-0.20.4-cp39-cp39-win_amd64.whl", hash = "sha256:7095bb9aff297fa9c6026bf8914fd295997d714d1a6ee9a1edf7282c772f9f64"}, - {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:859260b90f0e3867ae840e39f54e830f607b3bc531bc21deeeeaa8a30cbb89ad"}, - {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0dfc14be73cf46126660a3aecdd0396e69562ad1a902245225ca7bd29649594e"}, - {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ec46355bf3ff23f54d5e365871ffd3e05cfbc65d1b36a8be7c0bcbda30a1d43"}, - {file = "tree_sitter-0.20.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:d933a942fde39876b99c36f12aa3764e4a555ae9366c10ce6cca8c16341c1bbf"}, - {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:a7eec3b55135fe851a38fa248c9fd75fc3d58ceb6e1865b795e416e4d598c2a1"}, - {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfc76225529ee14a53e84413480ce81ec3c44eaa0455c140e961c90ac3118ead"}, - {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ccf0396e47efffc0b528959a8f2e2346a98297579f867e9e1834c2aad4be829c"}, - {file = "tree_sitter-0.20.4-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:a15fbabd3bc8e29c48289c156d743e69f5ec72bb125cf44f7adbdaa1937c3da6"}, - {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:36f8adf2126f496cf376b6e4b707cba061c25beb17841727eef6f0e083e53e1f"}, - {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:841efb40c116ab0a066924925409a8a4dcffeb39a151c0b2a1c2abe56ad4fb42"}, - {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2051e8a70fd8426f27a43dad71d11929a62ce30a9b1eb65bba0ed79e82481592"}, - {file = "tree_sitter-0.20.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:99a3c2824d4cfcffd9f961176891426bde2cb36ece5280c61480be93319c23c4"}, - {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:72830dc85a10430eca3d56739b7efcd7a05459c8d425f08c1aee6179ab7f13a9"}, - {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4992dd226055b6cd0a4f5661c66b799a73d3eff716302e0f7ab06594ee12d49f"}, - {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a66d95bbf92175cdc295d6d77f330942811f02e3aaf3fc64431cb749683b2f7d"}, - {file = "tree_sitter-0.20.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:a25b1087e4f7825b2458dacf5f4b0be2938f78e850e822edca1ff4994b56081a"}, - {file = "tree_sitter-0.20.4.tar.gz", hash = "sha256:6adb123e2f3e56399bbf2359924633c882cc40ee8344885200bca0922f713be5"}, -] - -[package.dependencies] -setuptools = {version = ">=60.0.0", markers = "python_version >= \"3.12\""} - -[[package]] -name = "tree-sitter-languages" -version = "1.10.2" -description = "Binary Python wheels for all tree sitter languages." -optional = false -python-versions = "*" -files = [ - {file = "tree_sitter_languages-1.10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5580348f0b20233b1d5431fa178ccd3d07423ca4a3275df02a44608fd72344b9"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:103c7466644486b1e9e03850df46fc6aa12f13ca636c74f173270276220ac80b"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d13db84511c6f1a7dc40383b66deafa74dabd8b877e3d65ab253f3719eccafd6"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57adfa32be7e465b54aa72f915f6c78a2b66b227df4f656b5d4fbd1ca7a92b3f"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c6385e033e460ceb8f33f3f940335f422ef2b763700a04f0089391a68b56153"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:dfa3f38cc5381c5aba01dd7494f59b8a9050e82ff6e06e1233e3a0cbae297e3c"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:9f195155acf47f8bc5de7cee46ecd07b2f5697f007ba89435b51ef4c0b953ea5"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2de330e2ac6d7426ca025a3ec0f10d5640c3682c1d0c7702e812dcfb44b58120"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-win32.whl", hash = "sha256:c9731cf745f135d9770eeba9bb4e2ff4dabc107b5ae9b8211e919f6b9100ea6d"}, - {file = "tree_sitter_languages-1.10.2-cp310-cp310-win_amd64.whl", hash = "sha256:6dd75851c41d0c3c4987a9b7692d90fa8848706c23115669d8224ffd6571e357"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:7eb7d7542b2091c875fe52719209631fca36f8c10fa66970d2c576ae6a1b8289"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6b41bcb00974b1c8a1800c7f1bb476a1d15a0463e760ee24872f2d53b08ee424"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f370cd7845c6c81df05680d5bd96db8a99d32b56f4728c5d05978911130a853"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a1dc195c88ef4c72607e112a809a69190e096a2e5ebc6201548b3e05fdd169ad"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ae34ac314a7170be24998a0f994c1ac80761d8d4bd126af27ee53a023d3b849"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:01b5742d5f5bd675489486b582bd482215880b26dde042c067f8265a6e925d9c"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:ab1cbc46244d34fd16f21edaa20231b2a57f09f092a06ee3d469f3117e6eb954"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0b1149e7467a4e92b8a70e6005fe762f880f493cf811fc003554b29f04f5e7c8"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-win32.whl", hash = "sha256:049276343962f4696390ee555acc2c1a65873270c66a6cbe5cb0bca83bcdf3c6"}, - {file = "tree_sitter_languages-1.10.2-cp311-cp311-win_amd64.whl", hash = "sha256:7f3fdd468a577f04db3b63454d939e26e360229b53c80361920aa1ebf2cd7491"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c0f4c8b2734c45859edc7fcaaeaab97a074114111b5ba51ab4ec7ed52104763c"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:eecd3c1244ac3425b7a82ba9125b4ddb45d953bbe61de114c0334fd89b7fe782"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15db3c8510bc39a80147ee7421bf4782c15c09581c1dc2237ea89cefbd95b846"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:92c6487a6feea683154d3e06e6db68c30e0ae749a7ce4ce90b9e4e46b78c85c7"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d2f1cd1d1bdd65332f9c2b67d49dcf148cf1ded752851d159ac3e5ee4f4d260"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:976c8039165b8e12f17a01ddee9f4e23ec6e352b165ad29b44d2bf04e2fbe77e"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:dafbbdf16bf668a580902e1620f4baa1913e79438abcce721a50647564c687b9"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1aeabd3d60d6d276b73cd8f3739d595b1299d123cc079a317f1a5b3c5461e2ca"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-win32.whl", hash = "sha256:fab8ee641914098e8933b87ea3d657bea4dd00723c1ee7038b847b12eeeef4f5"}, - {file = "tree_sitter_languages-1.10.2-cp312-cp312-win_amd64.whl", hash = "sha256:5e606430d736367e5787fa5a7a0c5a1ec9b85eded0b3596bbc0d83532a40810b"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:838d5b48a7ed7a17658721952c77fda4570d2a069f933502653b17e15a9c39c9"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:987b3c71b1d278c2889e018ee77b8ee05c384e2e3334dec798f8b611c4ab2d1e"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:faa00abcb2c819027df58472da055d22fa7dfcb77c77413d8500c32ebe24d38b"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e102fbbf02322d9201a86a814e79a9734ac80679fdb9682144479044f401a73"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:8f0b87cf1a7b03174ba18dfd81582be82bfed26803aebfe222bd20e444aba003"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c0f1b9af9cb67f0b942b020da9fdd000aad5e92f2383ae0ba7a330b318d31912"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:5a4076c921f7a4d31e643843de7dfe040b65b63a238a5aa8d31d93aabe6572aa"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-win32.whl", hash = "sha256:fa6391a3a5d83d32db80815161237b67d70576f090ce5f38339206e917a6f8bd"}, - {file = "tree_sitter_languages-1.10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:55649d3f254585a064121513627cf9788c1cfdadbc5f097f33d5ba750685a4c0"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:6f85d1edaa2d22d80d4ea5b6d12b95cf3644017b6c227d0d42854439e02e8893"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:d78feed4a764ef3141cb54bf00fe94d514d8b6e26e09423e23b4c616fcb7938c"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da1aca27531f9dd5308637d76643372856f0f65d0d28677d1bcf4211e8ed1ad0"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1031ea440dafb72237437d754eff8940153a3b051e3d18932ac25e75ce060a15"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99d3249beaef2c9fe558ecc9a97853c260433a849dcc68266d9770d196c2e102"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:59a4450f262a55148fb7e68681522f0c2a2f6b7d89666312a2b32708d8f416e1"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ce74eab0e430370d5e15a96b6c6205f93405c177a8b2e71e1526643b2fb9bab1"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9b4dd2b6b3d24c85dffe33d6c343448869eaf4f41c19ddba662eb5d65d8808f4"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-win32.whl", hash = "sha256:92d734fb968fe3927a7596d9f0459f81a8fa7b07e16569476b28e27d0d753348"}, - {file = "tree_sitter_languages-1.10.2-cp38-cp38-win_amd64.whl", hash = "sha256:46a13f7d38f2eeb75f7cf127d1201346093748c270d686131f0cbc50e42870a1"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f8c6a936ae99fdd8857e91f86c11c2f5e507ff30631d141d98132bb7ab2c8638"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c283a61423f49cdfa7b5a5dfbb39221e3bd126fca33479cd80749d4d7a6b7349"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76e60be6bdcff923386a54a5edcb6ff33fc38ab0118636a762024fa2bc98de55"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c00069f9575bd831eabcce2cdfab158dde1ed151e7e5614c2d985ff7d78a7de1"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:475ff53203d8a43ccb19bb322fa2fb200d764001cc037793f1fadd714bb343da"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:26fe7c9c412e4141dea87ea4b3592fd12e385465b5bdab106b0d5125754d4f60"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:8fed27319957458340f24fe14daad467cd45021da034eef583519f83113a8c5e"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3657a491a7f96cc75a3568ddd062d25f3be82b6a942c68801a7b226ff7130181"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-win32.whl", hash = "sha256:33f7d584d01a7a3c893072f34cfc64ec031f3cfe57eebc32da2f8ac046e101a7"}, - {file = "tree_sitter_languages-1.10.2-cp39-cp39-win_amd64.whl", hash = "sha256:1b944af3ee729fa70fc8ae82224a9ff597cdb63addea084e0ea2fa2b0ec39bb7"}, -] - -[package.dependencies] -tree-sitter = "*" - -[[package]] -name = "types-deprecated" -version = "1.2.9.20240106" -description = "Typing stubs for Deprecated" -optional = false -python-versions = ">=3.8" -files = [ - {file = "types-Deprecated-1.2.9.20240106.tar.gz", hash = "sha256:afeb819e9a03d0a5795f18c88fe6207c48ed13c639e93281bd9d9b7bb6d34310"}, - {file = "types_Deprecated-1.2.9.20240106-py3-none-any.whl", hash = "sha256:9dcb258493b5be407574ee21e50ddac9e429072d39b576126bf1ac00764fb9a8"}, -] - -[[package]] -name = "types-docutils" -version = "0.20.0.20240201" -description = "Typing stubs for docutils" -optional = false -python-versions = ">=3.8" -files = [ - {file = "types-docutils-0.20.0.20240201.tar.gz", hash = "sha256:ba4bfd4ff6dd19640ba7ab5d93900393a65897880f3650997964a943f4e79a6b"}, - {file = "types_docutils-0.20.0.20240201-py3-none-any.whl", hash = "sha256:79d3bcef235f7c81a63f4f3dcf1d0b138985079bb32d02f5a7d266e1f9f361ba"}, -] - -[[package]] -name = "types-protobuf" -version = "4.24.0.20240129" -description = "Typing stubs for protobuf" -optional = false -python-versions = ">=3.8" -files = [ - {file = "types-protobuf-4.24.0.20240129.tar.gz", hash = "sha256:8a83dd3b9b76a33e08d8636c5daa212ace1396418ed91837635fcd564a624891"}, - {file = "types_protobuf-4.24.0.20240129-py3-none-any.whl", hash = "sha256:23be68cc29f3f5213b5c5878ac0151706182874040e220cfb11336f9ee642ead"}, -] - -[[package]] -name = "types-pyopenssl" -version = "24.0.0.20240130" -description = "Typing stubs for pyOpenSSL" -optional = false -python-versions = ">=3.8" -files = [ - {file = "types-pyOpenSSL-24.0.0.20240130.tar.gz", hash = "sha256:c812e5c1c35249f75ef5935708b2a997d62abf9745be222e5f94b9595472ab25"}, - {file = "types_pyOpenSSL-24.0.0.20240130-py3-none-any.whl", hash = "sha256:24a255458b5b8a7fca8139cf56f2a8ad5a4f1a5f711b73a5bb9cb50dc688fab5"}, -] - -[package.dependencies] -cryptography = ">=35.0.0" - -[[package]] -name = "types-python-dateutil" -version = "2.8.19.20240106" -description = "Typing stubs for python-dateutil" -optional = false -python-versions = ">=3.8" -files = [ - {file = "types-python-dateutil-2.8.19.20240106.tar.gz", hash = "sha256:1f8db221c3b98e6ca02ea83a58371b22c374f42ae5bbdf186db9c9a76581459f"}, - {file = "types_python_dateutil-2.8.19.20240106-py3-none-any.whl", hash = "sha256:efbbdc54590d0f16152fa103c9879c7d4a00e82078f6e2cf01769042165acaa2"}, -] - -[[package]] -name = "types-pyyaml" -version = "6.0.12.12" -description = "Typing stubs for PyYAML" -optional = false -python-versions = "*" -files = [ - {file = "types-PyYAML-6.0.12.12.tar.gz", hash = "sha256:334373d392fde0fdf95af5c3f1661885fa10c52167b14593eb856289e1855062"}, - {file = "types_PyYAML-6.0.12.12-py3-none-any.whl", hash = "sha256:c05bc6c158facb0676674b7f11fe3960db4f389718e19e62bd2b84d6205cfd24"}, -] - -[[package]] -name = "types-redis" -version = "4.5.5.0" -description = "Typing stubs for redis" -optional = false -python-versions = "*" -files = [ - {file = "types-redis-4.5.5.0.tar.gz", hash = "sha256:26547d91f011a4024375d9216cd4d917b4678c984201d46f72c604526c138523"}, - {file = "types_redis-4.5.5.0-py3-none-any.whl", hash = "sha256:c7132e0cedeb52a83d20138c0440721bfae89cd2027c1ef57a294b56dfde4ee8"}, -] - -[package.dependencies] -cryptography = ">=35.0.0" -types-pyOpenSSL = "*" - -[[package]] -name = "types-requests" -version = "2.28.11.8" -description = "Typing stubs for requests" -optional = false -python-versions = "*" -files = [ - {file = "types-requests-2.28.11.8.tar.gz", hash = "sha256:e67424525f84adfbeab7268a159d3c633862dafae15c5b19547ce1b55954f0a3"}, - {file = "types_requests-2.28.11.8-py3-none-any.whl", hash = "sha256:61960554baca0008ae7e2db2bd3b322ca9a144d3e80ce270f5fb640817e40994"}, -] - -[package.dependencies] -types-urllib3 = "<1.27" - -[[package]] -name = "types-setuptools" -version = "67.1.0.0" -description = "Typing stubs for setuptools" -optional = false -python-versions = "*" -files = [ - {file = "types-setuptools-67.1.0.0.tar.gz", hash = "sha256:162a39d22e3a5eb802197c84f16b19e798101bbd33d9437837fbb45627da5627"}, - {file = "types_setuptools-67.1.0.0-py3-none-any.whl", hash = "sha256:5bd7a10d93e468bfcb10d24cb8ea5e12ac4f4ac91267293959001f1448cf0619"}, -] - -[package.dependencies] -types-docutils = "*" - -[[package]] -name = "types-urllib3" -version = "1.26.25.14" -description = "Typing stubs for urllib3" -optional = false -python-versions = "*" -files = [ - {file = "types-urllib3-1.26.25.14.tar.gz", hash = "sha256:229b7f577c951b8c1b92c1bc2b2fdb0b49847bd2af6d1cc2a2e3dd340f3bda8f"}, - {file = "types_urllib3-1.26.25.14-py3-none-any.whl", hash = "sha256:9683bbb7fb72e32bfe9d2be6e04875fbe1b3eeec3cbb4ea231435aa7fd6b4f0e"}, -] - -[[package]] -name = "typing-extensions" -version = "4.10.0" -description = "Backported and Experimental Type Hints for Python 3.8+" -optional = false -python-versions = ">=3.8" -files = [ - {file = "typing_extensions-4.10.0-py3-none-any.whl", hash = "sha256:69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"}, - {file = "typing_extensions-4.10.0.tar.gz", hash = "sha256:b0abd7c89e8fb96f98db18d86106ff1d90ab692004eb746cf6eda2682f91b3cb"}, -] - -[[package]] -name = "typing-inspect" -version = "0.9.0" -description = "Runtime inspection utilities for typing module." -optional = false -python-versions = "*" -files = [ - {file = "typing_inspect-0.9.0-py3-none-any.whl", hash = "sha256:9ee6fc59062311ef8547596ab6b955e1b8aa46242d854bfc78f4f6b0eff35f9f"}, - {file = "typing_inspect-0.9.0.tar.gz", hash = "sha256:b23fc42ff6f6ef6954e4852c1fb512cdd18dbea03134f91f856a95ccc9461f78"}, -] - -[package.dependencies] -mypy-extensions = ">=0.3.0" -typing-extensions = ">=3.7.4" - -[[package]] -name = "tzdata" -version = "2024.1" -description = "Provider of IANA time zone data" -optional = false -python-versions = ">=2" -files = [ - {file = "tzdata-2024.1-py2.py3-none-any.whl", hash = "sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252"}, - {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, -] - -[[package]] -name = "umap-learn" -version = "0.5.5" -description = "Uniform Manifold Approximation and Projection" -optional = false -python-versions = "*" -files = [ - {file = "umap-learn-0.5.5.tar.gz", hash = "sha256:c54d607364413eade968b73ba07c8b3ea14412817f53cd07b6f720ac957293c4"}, -] - -[package.dependencies] -numba = ">=0.51.2" -numpy = ">=1.17" -pynndescent = ">=0.5" -scikit-learn = ">=0.22" -scipy = ">=1.3.1" -tqdm = "*" - -[package.extras] -parametric-umap = ["tensorflow (>=2.1)", "tensorflow-probability (>=0.10)"] -plot = ["bokeh", "colorcet", "datashader", "holoviews", "matplotlib", "pandas", "scikit-image", "seaborn"] -tbb = ["tbb (>=2019.0)"] - -[[package]] -name = "uri-template" -version = "1.3.0" -description = "RFC 6570 URI Template Processor" -optional = false -python-versions = ">=3.7" -files = [ - {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"}, - {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"}, -] - -[package.extras] -dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-modern-annotations", "flake8-noqa", "flake8-pyproject", "flake8-requirements", "flake8-typechecking-import", "flake8-use-fstring", "mypy", "pep8-naming", "types-PyYAML"] - -[[package]] -name = "urllib3" -version = "2.2.1" -description = "HTTP library with thread-safe connection pooling, file post, and more." -optional = false -python-versions = ">=3.8" -files = [ - {file = "urllib3-2.2.1-py3-none-any.whl", hash = "sha256:450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"}, - {file = "urllib3-2.2.1.tar.gz", hash = "sha256:d0570876c61ab9e520d776c38acbbb5b05a776d3f9ff98a5c8fd5162a444cf19"}, -] - -[package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] -h2 = ["h2 (>=4,<5)"] -socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] -zstd = ["zstandard (>=0.18.0)"] - -[[package]] -name = "virtualenv" -version = "20.25.1" -description = "Virtual Python Environment builder" -optional = false -python-versions = ">=3.7" -files = [ - {file = "virtualenv-20.25.1-py3-none-any.whl", hash = "sha256:961c026ac520bac5f69acb8ea063e8a4f071bcc9457b9c1f28f6b085c511583a"}, - {file = "virtualenv-20.25.1.tar.gz", hash = "sha256:e08e13ecdca7a0bd53798f356d5831434afa5b07b93f0abdf0797b7a06ffe197"}, -] - -[package.dependencies] -distlib = ">=0.3.7,<1" -filelock = ">=3.12.2,<4" -platformdirs = ">=3.9.1,<5" - -[package.extras] -docs = ["furo (>=2023.7.26)", "proselint (>=0.13)", "sphinx (>=7.1.2)", "sphinx-argparse (>=0.4)", "sphinxcontrib-towncrier (>=0.2.1a0)", "towncrier (>=23.6)"] -test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess (>=1)", "flaky (>=3.7)", "packaging (>=23.1)", "pytest (>=7.4)", "pytest-env (>=0.8.2)", "pytest-freezer (>=0.4.8)", "pytest-mock (>=3.11.1)", "pytest-randomly (>=3.12)", "pytest-timeout (>=2.1)", "setuptools (>=68)", "time-machine (>=2.10)"] - -[[package]] -name = "wcwidth" -version = "0.2.13" -description = "Measures the displayed width of unicode strings in a terminal" -optional = false -python-versions = "*" -files = [ - {file = "wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859"}, - {file = "wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5"}, -] - -[[package]] -name = "webcolors" -version = "1.13" -description = "A library for working with the color formats defined by HTML and CSS." -optional = false -python-versions = ">=3.7" -files = [ - {file = "webcolors-1.13-py3-none-any.whl", hash = "sha256:29bc7e8752c0a1bd4a1f03c14d6e6a72e93d82193738fa860cbff59d0fcc11bf"}, - {file = "webcolors-1.13.tar.gz", hash = "sha256:c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a"}, -] - -[package.extras] -docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"] -tests = ["pytest", "pytest-cov"] - -[[package]] -name = "webencodings" -version = "0.5.1" -description = "Character encoding aliases for legacy web content" -optional = false -python-versions = "*" -files = [ - {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, - {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, -] - -[[package]] -name = "websocket-client" -version = "1.7.0" -description = "WebSocket client for Python with low level API options" -optional = false -python-versions = ">=3.8" -files = [ - {file = "websocket-client-1.7.0.tar.gz", hash = "sha256:10e511ea3a8c744631d3bd77e61eb17ed09304c413ad42cf6ddfa4c7787e8fe6"}, - {file = "websocket_client-1.7.0-py3-none-any.whl", hash = "sha256:f4c3d22fec12a2461427a29957ff07d35098ee2d976d3ba244e688b8b4057588"}, -] - -[package.extras] -docs = ["Sphinx (>=6.0)", "sphinx-rtd-theme (>=1.1.0)"] -optional = ["python-socks", "wsaccel"] -test = ["websockets"] - -[[package]] -name = "widgetsnbextension" -version = "4.0.10" -description = "Jupyter interactive widgets for Jupyter Notebook" -optional = false -python-versions = ">=3.7" -files = [ - {file = "widgetsnbextension-4.0.10-py3-none-any.whl", hash = "sha256:d37c3724ec32d8c48400a435ecfa7d3e259995201fbefa37163124a9fcb393cc"}, - {file = "widgetsnbextension-4.0.10.tar.gz", hash = "sha256:64196c5ff3b9a9183a8e699a4227fb0b7002f252c814098e66c4d1cd0644688f"}, -] - -[[package]] -name = "wrapt" -version = "1.16.0" -description = "Module for decorators, wrappers and monkey patching." -optional = false -python-versions = ">=3.6" -files = [ - {file = "wrapt-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ffa565331890b90056c01db69c0fe634a776f8019c143a5ae265f9c6bc4bd6d4"}, - {file = "wrapt-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e4fdb9275308292e880dcbeb12546df7f3e0f96c6b41197e0cf37d2826359020"}, - {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bb2dee3874a500de01c93d5c71415fcaef1d858370d405824783e7a8ef5db440"}, - {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2a88e6010048489cda82b1326889ec075a8c856c2e6a256072b28eaee3ccf487"}, - {file = "wrapt-1.16.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac83a914ebaf589b69f7d0a1277602ff494e21f4c2f743313414378f8f50a4cf"}, - {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:73aa7d98215d39b8455f103de64391cb79dfcad601701a3aa0dddacf74911d72"}, - {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:807cc8543a477ab7422f1120a217054f958a66ef7314f76dd9e77d3f02cdccd0"}, - {file = "wrapt-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bf5703fdeb350e36885f2875d853ce13172ae281c56e509f4e6eca049bdfb136"}, - {file = "wrapt-1.16.0-cp310-cp310-win32.whl", hash = "sha256:f6b2d0c6703c988d334f297aa5df18c45e97b0af3679bb75059e0e0bd8b1069d"}, - {file = "wrapt-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:decbfa2f618fa8ed81c95ee18a387ff973143c656ef800c9f24fb7e9c16054e2"}, - {file = "wrapt-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:1a5db485fe2de4403f13fafdc231b0dbae5eca4359232d2efc79025527375b09"}, - {file = "wrapt-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:75ea7d0ee2a15733684badb16de6794894ed9c55aa5e9903260922f0482e687d"}, - {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a452f9ca3e3267cd4d0fcf2edd0d035b1934ac2bd7e0e57ac91ad6b95c0c6389"}, - {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43aa59eadec7890d9958748db829df269f0368521ba6dc68cc172d5d03ed8060"}, - {file = "wrapt-1.16.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:72554a23c78a8e7aa02abbd699d129eead8b147a23c56e08d08dfc29cfdddca1"}, - {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d2efee35b4b0a347e0d99d28e884dfd82797852d62fcd7ebdeee26f3ceb72cf3"}, - {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:6dcfcffe73710be01d90cae08c3e548d90932d37b39ef83969ae135d36ef3956"}, - {file = "wrapt-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:eb6e651000a19c96f452c85132811d25e9264d836951022d6e81df2fff38337d"}, - {file = "wrapt-1.16.0-cp311-cp311-win32.whl", hash = "sha256:66027d667efe95cc4fa945af59f92c5a02c6f5bb6012bff9e60542c74c75c362"}, - {file = "wrapt-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:aefbc4cb0a54f91af643660a0a150ce2c090d3652cf4052a5397fb2de549cd89"}, - {file = "wrapt-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:5eb404d89131ec9b4f748fa5cfb5346802e5ee8836f57d516576e61f304f3b7b"}, - {file = "wrapt-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9090c9e676d5236a6948330e83cb89969f433b1943a558968f659ead07cb3b36"}, - {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:94265b00870aa407bd0cbcfd536f17ecde43b94fb8d228560a1e9d3041462d73"}, - {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f2058f813d4f2b5e3a9eb2eb3faf8f1d99b81c3e51aeda4b168406443e8ba809"}, - {file = "wrapt-1.16.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98b5e1f498a8ca1858a1cdbffb023bfd954da4e3fa2c0cb5853d40014557248b"}, - {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:14d7dc606219cdd7405133c713f2c218d4252f2a469003f8c46bb92d5d095d81"}, - {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:49aac49dc4782cb04f58986e81ea0b4768e4ff197b57324dcbd7699c5dfb40b9"}, - {file = "wrapt-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:418abb18146475c310d7a6dc71143d6f7adec5b004ac9ce08dc7a34e2babdc5c"}, - {file = "wrapt-1.16.0-cp312-cp312-win32.whl", hash = "sha256:685f568fa5e627e93f3b52fda002c7ed2fa1800b50ce51f6ed1d572d8ab3e7fc"}, - {file = "wrapt-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:dcdba5c86e368442528f7060039eda390cc4091bfd1dca41e8046af7c910dda8"}, - {file = "wrapt-1.16.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:d462f28826f4657968ae51d2181a074dfe03c200d6131690b7d65d55b0f360f8"}, - {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a33a747400b94b6d6b8a165e4480264a64a78c8a4c734b62136062e9a248dd39"}, - {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b3646eefa23daeba62643a58aac816945cadc0afaf21800a1421eeba5f6cfb9c"}, - {file = "wrapt-1.16.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ebf019be5c09d400cf7b024aa52b1f3aeebeff51550d007e92c3c1c4afc2a40"}, - {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:0d2691979e93d06a95a26257adb7bfd0c93818e89b1406f5a28f36e0d8c1e1fc"}, - {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:1acd723ee2a8826f3d53910255643e33673e1d11db84ce5880675954183ec47e"}, - {file = "wrapt-1.16.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:bc57efac2da352a51cc4658878a68d2b1b67dbe9d33c36cb826ca449d80a8465"}, - {file = "wrapt-1.16.0-cp36-cp36m-win32.whl", hash = "sha256:da4813f751142436b075ed7aa012a8778aa43a99f7b36afe9b742d3ed8bdc95e"}, - {file = "wrapt-1.16.0-cp36-cp36m-win_amd64.whl", hash = "sha256:6f6eac2360f2d543cc875a0e5efd413b6cbd483cb3ad7ebf888884a6e0d2e966"}, - {file = "wrapt-1.16.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a0ea261ce52b5952bf669684a251a66df239ec6d441ccb59ec7afa882265d593"}, - {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bd2d7ff69a2cac767fbf7a2b206add2e9a210e57947dd7ce03e25d03d2de292"}, - {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9159485323798c8dc530a224bd3ffcf76659319ccc7bbd52e01e73bd0241a0c5"}, - {file = "wrapt-1.16.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a86373cf37cd7764f2201b76496aba58a52e76dedfaa698ef9e9688bfd9e41cf"}, - {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:73870c364c11f03ed072dda68ff7aea6d2a3a5c3fe250d917a429c7432e15228"}, - {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:b935ae30c6e7400022b50f8d359c03ed233d45b725cfdd299462f41ee5ffba6f"}, - {file = "wrapt-1.16.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:db98ad84a55eb09b3c32a96c576476777e87c520a34e2519d3e59c44710c002c"}, - {file = "wrapt-1.16.0-cp37-cp37m-win32.whl", hash = "sha256:9153ed35fc5e4fa3b2fe97bddaa7cbec0ed22412b85bcdaf54aeba92ea37428c"}, - {file = "wrapt-1.16.0-cp37-cp37m-win_amd64.whl", hash = "sha256:66dfbaa7cfa3eb707bbfcd46dab2bc6207b005cbc9caa2199bcbc81d95071a00"}, - {file = "wrapt-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1dd50a2696ff89f57bd8847647a1c363b687d3d796dc30d4dd4a9d1689a706f0"}, - {file = "wrapt-1.16.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:44a2754372e32ab315734c6c73b24351d06e77ffff6ae27d2ecf14cf3d229202"}, - {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e9723528b9f787dc59168369e42ae1c3b0d3fadb2f1a71de14531d321ee05b0"}, - {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dbed418ba5c3dce92619656802cc5355cb679e58d0d89b50f116e4a9d5a9603e"}, - {file = "wrapt-1.16.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:941988b89b4fd6b41c3f0bfb20e92bd23746579736b7343283297c4c8cbae68f"}, - {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6a42cd0cfa8ffc1915aef79cb4284f6383d8a3e9dcca70c445dcfdd639d51267"}, - {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ca9b6085e4f866bd584fb135a041bfc32cab916e69f714a7d1d397f8c4891ca"}, - {file = "wrapt-1.16.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5e49454f19ef621089e204f862388d29e6e8d8b162efce05208913dde5b9ad6"}, - {file = "wrapt-1.16.0-cp38-cp38-win32.whl", hash = "sha256:c31f72b1b6624c9d863fc095da460802f43a7c6868c5dda140f51da24fd47d7b"}, - {file = "wrapt-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:490b0ee15c1a55be9c1bd8609b8cecd60e325f0575fc98f50058eae366e01f41"}, - {file = "wrapt-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9b201ae332c3637a42f02d1045e1d0cccfdc41f1f2f801dafbaa7e9b4797bfc2"}, - {file = "wrapt-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2076fad65c6736184e77d7d4729b63a6d1ae0b70da4868adeec40989858eb3fb"}, - {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5cd603b575ebceca7da5a3a251e69561bec509e0b46e4993e1cac402b7247b8"}, - {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b47cfad9e9bbbed2339081f4e346c93ecd7ab504299403320bf85f7f85c7d46c"}, - {file = "wrapt-1.16.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8212564d49c50eb4565e502814f694e240c55551a5f1bc841d4fcaabb0a9b8a"}, - {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5f15814a33e42b04e3de432e573aa557f9f0f56458745c2074952f564c50e664"}, - {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db2e408d983b0e61e238cf579c09ef7020560441906ca990fe8412153e3b291f"}, - {file = "wrapt-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:edfad1d29c73f9b863ebe7082ae9321374ccb10879eeabc84ba3b69f2579d537"}, - {file = "wrapt-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed867c42c268f876097248e05b6117a65bcd1e63b779e916fe2e33cd6fd0d3c3"}, - {file = "wrapt-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:eb1b046be06b0fce7249f1d025cd359b4b80fc1c3e24ad9eca33e0dcdb2e4a35"}, - {file = "wrapt-1.16.0-py3-none-any.whl", hash = "sha256:6906c4100a8fcbf2fa735f6059214bb13b97f75b1a61777fcf6432121ef12ef1"}, - {file = "wrapt-1.16.0.tar.gz", hash = "sha256:5f370f952971e7d17c7d1ead40e49f32345a7f7a5373571ef44d800d06b1899d"}, -] - -[[package]] -name = "yarl" -version = "1.9.4" -description = "Yet another URL library" -optional = false -python-versions = ">=3.7" -files = [ - {file = "yarl-1.9.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a8c1df72eb746f4136fe9a2e72b0c9dc1da1cbd23b5372f94b5820ff8ae30e0e"}, - {file = "yarl-1.9.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a3a6ed1d525bfb91b3fc9b690c5a21bb52de28c018530ad85093cc488bee2dd2"}, - {file = "yarl-1.9.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c38c9ddb6103ceae4e4498f9c08fac9b590c5c71b0370f98714768e22ac6fa66"}, - {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d9e09c9d74f4566e905a0b8fa668c58109f7624db96a2171f21747abc7524234"}, - {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8477c1ee4bd47c57d49621a062121c3023609f7a13b8a46953eb6c9716ca392"}, - {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5ff2c858f5f6a42c2a8e751100f237c5e869cbde669a724f2062d4c4ef93551"}, - {file = "yarl-1.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:357495293086c5b6d34ca9616a43d329317feab7917518bc97a08f9e55648455"}, - {file = "yarl-1.9.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:54525ae423d7b7a8ee81ba189f131054defdb122cde31ff17477951464c1691c"}, - {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:801e9264d19643548651b9db361ce3287176671fb0117f96b5ac0ee1c3530d53"}, - {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:e516dc8baf7b380e6c1c26792610230f37147bb754d6426462ab115a02944385"}, - {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:7d5aaac37d19b2904bb9dfe12cdb08c8443e7ba7d2852894ad448d4b8f442863"}, - {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:54beabb809ffcacbd9d28ac57b0db46e42a6e341a030293fb3185c409e626b8b"}, - {file = "yarl-1.9.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:bac8d525a8dbc2a1507ec731d2867025d11ceadcb4dd421423a5d42c56818541"}, - {file = "yarl-1.9.4-cp310-cp310-win32.whl", hash = "sha256:7855426dfbddac81896b6e533ebefc0af2f132d4a47340cee6d22cac7190022d"}, - {file = "yarl-1.9.4-cp310-cp310-win_amd64.whl", hash = "sha256:848cd2a1df56ddbffeb375535fb62c9d1645dde33ca4d51341378b3f5954429b"}, - {file = "yarl-1.9.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:35a2b9396879ce32754bd457d31a51ff0a9d426fd9e0e3c33394bf4b9036b099"}, - {file = "yarl-1.9.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c7d56b293cc071e82532f70adcbd8b61909eec973ae9d2d1f9b233f3d943f2c"}, - {file = "yarl-1.9.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d8a1c6c0be645c745a081c192e747c5de06e944a0d21245f4cf7c05e457c36e0"}, - {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4b3c1ffe10069f655ea2d731808e76e0f452fc6c749bea04781daf18e6039525"}, - {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:549d19c84c55d11687ddbd47eeb348a89df9cb30e1993f1b128f4685cd0ebbf8"}, - {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a7409f968456111140c1c95301cadf071bd30a81cbd7ab829169fb9e3d72eae9"}, - {file = "yarl-1.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e23a6d84d9d1738dbc6e38167776107e63307dfc8ad108e580548d1f2c587f42"}, - {file = "yarl-1.9.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d8b889777de69897406c9fb0b76cdf2fd0f31267861ae7501d93003d55f54fbe"}, - {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:03caa9507d3d3c83bca08650678e25364e1843b484f19986a527630ca376ecce"}, - {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:4e9035df8d0880b2f1c7f5031f33f69e071dfe72ee9310cfc76f7b605958ceb9"}, - {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:c0ec0ed476f77db9fb29bca17f0a8fcc7bc97ad4c6c1d8959c507decb22e8572"}, - {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:ee04010f26d5102399bd17f8df8bc38dc7ccd7701dc77f4a68c5b8d733406958"}, - {file = "yarl-1.9.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:49a180c2e0743d5d6e0b4d1a9e5f633c62eca3f8a86ba5dd3c471060e352ca98"}, - {file = "yarl-1.9.4-cp311-cp311-win32.whl", hash = "sha256:81eb57278deb6098a5b62e88ad8281b2ba09f2f1147c4767522353eaa6260b31"}, - {file = "yarl-1.9.4-cp311-cp311-win_amd64.whl", hash = "sha256:d1d2532b340b692880261c15aee4dc94dd22ca5d61b9db9a8a361953d36410b1"}, - {file = "yarl-1.9.4-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0d2454f0aef65ea81037759be5ca9947539667eecebca092733b2eb43c965a81"}, - {file = "yarl-1.9.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:44d8ffbb9c06e5a7f529f38f53eda23e50d1ed33c6c869e01481d3fafa6b8142"}, - {file = "yarl-1.9.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:aaaea1e536f98754a6e5c56091baa1b6ce2f2700cc4a00b0d49eca8dea471074"}, - {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3777ce5536d17989c91696db1d459574e9a9bd37660ea7ee4d3344579bb6f129"}, - {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fc5fc1eeb029757349ad26bbc5880557389a03fa6ada41703db5e068881e5f2"}, - {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ea65804b5dc88dacd4a40279af0cdadcfe74b3e5b4c897aa0d81cf86927fee78"}, - {file = "yarl-1.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aa102d6d280a5455ad6a0f9e6d769989638718e938a6a0a2ff3f4a7ff8c62cc4"}, - {file = "yarl-1.9.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09efe4615ada057ba2d30df871d2f668af661e971dfeedf0c159927d48bbeff0"}, - {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:008d3e808d03ef28542372d01057fd09168419cdc8f848efe2804f894ae03e51"}, - {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:6f5cb257bc2ec58f437da2b37a8cd48f666db96d47b8a3115c29f316313654ff"}, - {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:992f18e0ea248ee03b5a6e8b3b4738850ae7dbb172cc41c966462801cbf62cf7"}, - {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:0e9d124c191d5b881060a9e5060627694c3bdd1fe24c5eecc8d5d7d0eb6faabc"}, - {file = "yarl-1.9.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3986b6f41ad22988e53d5778f91855dc0399b043fc8946d4f2e68af22ee9ff10"}, - {file = "yarl-1.9.4-cp312-cp312-win32.whl", hash = "sha256:4b21516d181cd77ebd06ce160ef8cc2a5e9ad35fb1c5930882baff5ac865eee7"}, - {file = "yarl-1.9.4-cp312-cp312-win_amd64.whl", hash = "sha256:a9bd00dc3bc395a662900f33f74feb3e757429e545d831eef5bb280252631984"}, - {file = "yarl-1.9.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:63b20738b5aac74e239622d2fe30df4fca4942a86e31bf47a81a0e94c14df94f"}, - {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7d7f7de27b8944f1fee2c26a88b4dabc2409d2fea7a9ed3df79b67277644e17"}, - {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c74018551e31269d56fab81a728f683667e7c28c04e807ba08f8c9e3bba32f14"}, - {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ca06675212f94e7a610e85ca36948bb8fc023e458dd6c63ef71abfd482481aa5"}, - {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5aef935237d60a51a62b86249839b51345f47564208c6ee615ed2a40878dccdd"}, - {file = "yarl-1.9.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b134fd795e2322b7684155b7855cc99409d10b2e408056db2b93b51a52accc7"}, - {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d25039a474c4c72a5ad4b52495056f843a7ff07b632c1b92ea9043a3d9950f6e"}, - {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f7d6b36dd2e029b6bcb8a13cf19664c7b8e19ab3a58e0fefbb5b8461447ed5ec"}, - {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:957b4774373cf6f709359e5c8c4a0af9f6d7875db657adb0feaf8d6cb3c3964c"}, - {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:d7eeb6d22331e2fd42fce928a81c697c9ee2d51400bd1a28803965883e13cead"}, - {file = "yarl-1.9.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:6a962e04b8f91f8c4e5917e518d17958e3bdee71fd1d8b88cdce74dd0ebbf434"}, - {file = "yarl-1.9.4-cp37-cp37m-win32.whl", hash = "sha256:f3bc6af6e2b8f92eced34ef6a96ffb248e863af20ef4fde9448cc8c9b858b749"}, - {file = "yarl-1.9.4-cp37-cp37m-win_amd64.whl", hash = "sha256:ad4d7a90a92e528aadf4965d685c17dacff3df282db1121136c382dc0b6014d2"}, - {file = "yarl-1.9.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ec61d826d80fc293ed46c9dd26995921e3a82146feacd952ef0757236fc137be"}, - {file = "yarl-1.9.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8be9e837ea9113676e5754b43b940b50cce76d9ed7d2461df1af39a8ee674d9f"}, - {file = "yarl-1.9.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:bef596fdaa8f26e3d66af846bbe77057237cb6e8efff8cd7cc8dff9a62278bbf"}, - {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d47552b6e52c3319fede1b60b3de120fe83bde9b7bddad11a69fb0af7db32f1"}, - {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84fc30f71689d7fc9168b92788abc977dc8cefa806909565fc2951d02f6b7d57"}, - {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4aa9741085f635934f3a2583e16fcf62ba835719a8b2b28fb2917bb0537c1dfa"}, - {file = "yarl-1.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:206a55215e6d05dbc6c98ce598a59e6fbd0c493e2de4ea6cc2f4934d5a18d130"}, - {file = "yarl-1.9.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07574b007ee20e5c375a8fe4a0789fad26db905f9813be0f9fef5a68080de559"}, - {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:5a2e2433eb9344a163aced6a5f6c9222c0786e5a9e9cac2c89f0b28433f56e23"}, - {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6ad6d10ed9b67a382b45f29ea028f92d25bc0bc1daf6c5b801b90b5aa70fb9ec"}, - {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:6fe79f998a4052d79e1c30eeb7d6c1c1056ad33300f682465e1b4e9b5a188b78"}, - {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:a825ec844298c791fd28ed14ed1bffc56a98d15b8c58a20e0e08c1f5f2bea1be"}, - {file = "yarl-1.9.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8619d6915b3b0b34420cf9b2bb6d81ef59d984cb0fde7544e9ece32b4b3043c3"}, - {file = "yarl-1.9.4-cp38-cp38-win32.whl", hash = "sha256:686a0c2f85f83463272ddffd4deb5e591c98aac1897d65e92319f729c320eece"}, - {file = "yarl-1.9.4-cp38-cp38-win_amd64.whl", hash = "sha256:a00862fb23195b6b8322f7d781b0dc1d82cb3bcac346d1e38689370cc1cc398b"}, - {file = "yarl-1.9.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:604f31d97fa493083ea21bd9b92c419012531c4e17ea6da0f65cacdcf5d0bd27"}, - {file = "yarl-1.9.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8a854227cf581330ffa2c4824d96e52ee621dd571078a252c25e3a3b3d94a1b1"}, - {file = "yarl-1.9.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ba6f52cbc7809cd8d74604cce9c14868306ae4aa0282016b641c661f981a6e91"}, - {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a6327976c7c2f4ee6816eff196e25385ccc02cb81427952414a64811037bbc8b"}, - {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8397a3817d7dcdd14bb266283cd1d6fc7264a48c186b986f32e86d86d35fbac5"}, - {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e0381b4ce23ff92f8170080c97678040fc5b08da85e9e292292aba67fdac6c34"}, - {file = "yarl-1.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:23d32a2594cb5d565d358a92e151315d1b2268bc10f4610d098f96b147370136"}, - {file = "yarl-1.9.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ddb2a5c08a4eaaba605340fdee8fc08e406c56617566d9643ad8bf6852778fc7"}, - {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:26a1dc6285e03f3cc9e839a2da83bcbf31dcb0d004c72d0730e755b33466c30e"}, - {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:18580f672e44ce1238b82f7fb87d727c4a131f3a9d33a5e0e82b793362bf18b4"}, - {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:29e0f83f37610f173eb7e7b5562dd71467993495e568e708d99e9d1944f561ec"}, - {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:1f23e4fe1e8794f74b6027d7cf19dc25f8b63af1483d91d595d4a07eca1fb26c"}, - {file = "yarl-1.9.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:db8e58b9d79200c76956cefd14d5c90af54416ff5353c5bfd7cbe58818e26ef0"}, - {file = "yarl-1.9.4-cp39-cp39-win32.whl", hash = "sha256:c7224cab95645c7ab53791022ae77a4509472613e839dab722a72abe5a684575"}, - {file = "yarl-1.9.4-cp39-cp39-win_amd64.whl", hash = "sha256:824d6c50492add5da9374875ce72db7a0733b29c2394890aef23d533106e2b15"}, - {file = "yarl-1.9.4-py3-none-any.whl", hash = "sha256:928cecb0ef9d5a7946eb6ff58417ad2fe9375762382f1bf5c55e61645f2c43ad"}, - {file = "yarl-1.9.4.tar.gz", hash = "sha256:566db86717cf8080b99b58b083b773a908ae40f06681e87e589a976faf8246bf"}, -] - -[package.dependencies] -idna = ">=2.0" -multidict = ">=4.0" - -[[package]] -name = "zipp" -version = "3.17.0" -description = "Backport of pathlib-compatible object wrapper for zip files" -optional = false -python-versions = ">=3.8" -files = [ - {file = "zipp-3.17.0-py3-none-any.whl", hash = "sha256:0e923e726174922dce09c53c59ad483ff7bbb8e572e00c7f7c46b88556409f31"}, - {file = "zipp-3.17.0.tar.gz", hash = "sha256:84e64a1c28cf7e91ed2078bb8cc8c259cb19b76942096c8d7b84947690cabaf0"}, -] - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy (>=0.9.1)", "pytest-ruff"] - -[metadata] -lock-version = "2.0" -python-versions = ">=3.9,<4.0" -content-hash = "9513be9dc516eb9f66dec839e3c140d78fd0712c208dbb60ae1af8dc8e2b09d3" diff --git a/llama-index-packs/llama-index-packs-raptor/tests/BUILD b/llama-index-packs/llama-index-packs-raptor/tests/BUILD new file mode 100644 index 0000000000000..dabf212d7e716 --- /dev/null +++ b/llama-index-packs/llama-index-packs-raptor/tests/BUILD @@ -0,0 +1 @@ +python_tests() From efaff50c7e304e0357c66d425d15b7a5fa5e2fab Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Fri, 1 Mar 2024 08:38:58 -0600 Subject: [PATCH 4/9] nits --- llama-index-packs/llama-index-packs-raptor/BUILD | 2 +- llama-index-packs/llama-index-packs-raptor/README.md | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/llama-index-packs/llama-index-packs-raptor/BUILD b/llama-index-packs/llama-index-packs-raptor/BUILD index b83609a0f064b..09bd1b6726c8f 100644 --- a/llama-index-packs/llama-index-packs-raptor/BUILD +++ b/llama-index-packs/llama-index-packs-raptor/BUILD @@ -1,4 +1,4 @@ poetry_requirements( name="poetry", - module_mappings={"umap-learn": ["umap"], "scikit-learn": ["sklearn"]} + module_mapping={"umap-learn": ["umap"], "scikit-learn": ["sklearn"]} ) diff --git a/llama-index-packs/llama-index-packs-raptor/README.md b/llama-index-packs/llama-index-packs-raptor/README.md index c5dc07e523f66..4b9b07fb5a549 100644 --- a/llama-index-packs/llama-index-packs-raptor/README.md +++ b/llama-index-packs/llama-index-packs-raptor/README.md @@ -1,7 +1,5 @@ # Raptor Retriever LlamaPack -## Embedded Tables Retriever Pack w/ Unstructured.io - This LlamaPack shows how to use an implementation of RAPTOR with llama-index, leveraging the RAPTOR pack. RAPTOR works by recursively clustering and summarizing clusters in layers for retrieval. @@ -13,7 +11,7 @@ There two retrieval modes: See [the paper](https://arxiv.org/abs/2401.18059) for full algorithm details. -### CLI Usage +## CLI Usage You can download llamapacks directly using `llamaindex-cli`, which comes installed with the `llama-index` python package: @@ -23,7 +21,7 @@ llamaindex-cli download-llamapack RaptorPack --download-dir ./raptor_pack You can then inspect/modify the files at `./raptor_pack` and use them as a template for your own project. -### Code Usage +## Code Usage You can alternaitvely install the package: @@ -64,7 +62,7 @@ If you are using a remote vector-db, just pass it in pack = RaptorPack(..., vector_store=vector_store) # RaptorRetriever usage -retriever = RaptorRetreiver(..., vector_store=vector_store) +retriever = RaptorRetriever(..., vector_store=vector_store) ``` Then, to re-connect, just pass in the vector store again and an empty list of documents @@ -74,7 +72,7 @@ Then, to re-connect, just pass in the vector store again and an empty list of do pack = RaptorPack([], ..., vector_store=vector_store) # RaptorRetriever usage -retriever = RaptorRetreiver([], ..., vector_store=vector_store) +retriever = RaptorRetriever([], ..., vector_store=vector_store) ``` Check out the [notebook here for complete details!](https://github.com/run-llama/llama_index/blob/main/llama-index-packs/llama-index-packs-raptor/examples/raptor.ipynb). From dcf4f2176558196d52563337e40d14cb2fadd783 Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Fri, 1 Mar 2024 10:15:58 -0600 Subject: [PATCH 5/9] update version --- llama-index-packs/llama-index-packs-raptor/pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llama-index-packs/llama-index-packs-raptor/pyproject.toml b/llama-index-packs/llama-index-packs-raptor/pyproject.toml index c9aca39569720..ddc6b479e32f8 100644 --- a/llama-index-packs/llama-index-packs-raptor/pyproject.toml +++ b/llama-index-packs/llama-index-packs-raptor/pyproject.toml @@ -38,7 +38,7 @@ python = ">=3.9,<4.0" llama-index-core = "^0.10.0" llama-index-llms-openai = "^0.1.6" umap-learn = "^0.5.5" -scikit-learn = "^1.4.1.post1" +scikit-learn = ">=1.4.1.post1" [tool.poetry.group.dev.dependencies] black = {extras = ["jupyter"], version = "<=23.9.1,>=23.7.0"} From b4889ba4433504ea3f0c324cae8b178e56b54428 Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Fri, 1 Mar 2024 11:06:36 -0600 Subject: [PATCH 6/9] more version bumps --- llama-index-packs/llama-index-packs-raptor/pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llama-index-packs/llama-index-packs-raptor/pyproject.toml b/llama-index-packs/llama-index-packs-raptor/pyproject.toml index ddc6b479e32f8..ce14ae16bdc33 100644 --- a/llama-index-packs/llama-index-packs-raptor/pyproject.toml +++ b/llama-index-packs/llama-index-packs-raptor/pyproject.toml @@ -37,7 +37,7 @@ version = "0.1.0" python = ">=3.9,<4.0" llama-index-core = "^0.10.0" llama-index-llms-openai = "^0.1.6" -umap-learn = "^0.5.5" +umap-learn = ">=0.5.5" scikit-learn = ">=1.4.1.post1" [tool.poetry.group.dev.dependencies] From 61b9f448d60f7b54fc3edf6c16db1e39c721044b Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Fri, 1 Mar 2024 11:11:04 -0600 Subject: [PATCH 7/9] remove dep since its a core dep? --- llama-index-packs/llama-index-packs-raptor/pyproject.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/llama-index-packs/llama-index-packs-raptor/pyproject.toml b/llama-index-packs/llama-index-packs-raptor/pyproject.toml index ce14ae16bdc33..2010bf30ce71b 100644 --- a/llama-index-packs/llama-index-packs-raptor/pyproject.toml +++ b/llama-index-packs/llama-index-packs-raptor/pyproject.toml @@ -38,7 +38,6 @@ python = ">=3.9,<4.0" llama-index-core = "^0.10.0" llama-index-llms-openai = "^0.1.6" umap-learn = ">=0.5.5" -scikit-learn = ">=1.4.1.post1" [tool.poetry.group.dev.dependencies] black = {extras = ["jupyter"], version = "<=23.9.1,>=23.7.0"} From 7b82b56d17e59902f331a933da8278971239ec75 Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Fri, 1 Mar 2024 11:11:31 -0600 Subject: [PATCH 8/9] make it a star actually --- llama-index-packs/llama-index-packs-raptor/pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/llama-index-packs/llama-index-packs-raptor/pyproject.toml b/llama-index-packs/llama-index-packs-raptor/pyproject.toml index 2010bf30ce71b..269ed42f61016 100644 --- a/llama-index-packs/llama-index-packs-raptor/pyproject.toml +++ b/llama-index-packs/llama-index-packs-raptor/pyproject.toml @@ -38,6 +38,7 @@ python = ">=3.9,<4.0" llama-index-core = "^0.10.0" llama-index-llms-openai = "^0.1.6" umap-learn = ">=0.5.5" +scikit-learn = "*" [tool.poetry.group.dev.dependencies] black = {extras = ["jupyter"], version = "<=23.9.1,>=23.7.0"} From 77028f78996dc21b4ecff14a41e035abbe131e86 Mon Sep 17 00:00:00 2001 From: Logan Markewich Date: Fri, 1 Mar 2024 11:13:02 -0600 Subject: [PATCH 9/9] only publish on main push --- .github/workflows/publish_sub_package.yml | 1 - llama-index-packs/llama-index-packs-raptor/pyproject.toml | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/publish_sub_package.yml b/.github/workflows/publish_sub_package.yml index 8224e48bb2661..731560e9475b2 100644 --- a/.github/workflows/publish_sub_package.yml +++ b/.github/workflows/publish_sub_package.yml @@ -4,7 +4,6 @@ on: push: branches: - main - pull_request: env: POETRY_VERSION: "1.6.1" diff --git a/llama-index-packs/llama-index-packs-raptor/pyproject.toml b/llama-index-packs/llama-index-packs-raptor/pyproject.toml index 269ed42f61016..4e0202df446b8 100644 --- a/llama-index-packs/llama-index-packs-raptor/pyproject.toml +++ b/llama-index-packs/llama-index-packs-raptor/pyproject.toml @@ -31,7 +31,7 @@ license = "MIT" name = "llama-index-packs-raptor" packages = [{include = "llama_index/"}] readme = "README.md" -version = "0.1.0" +version = "0.1.1" [tool.poetry.dependencies] python = ">=3.9,<4.0"