From b489f093acd7559a520ba53a8a9c61dc45498472 Mon Sep 17 00:00:00 2001 From: kerthcet Date: Mon, 18 Nov 2024 13:07:23 +0800 Subject: [PATCH] Refactor project Signed-off-by: kerthcet --- .github/workflow/kube-workflow-init.yaml | 10 + .github/workflow/kube-workflow.yaml | 21 + Dockerfile | 4 +- README.md | 14 +- console/serve/chatbot.py | 23 - console/serve/serve.py | 32 - console/webui/engine.py | 21 - console/webui/webui.py | 23 - console/webui/webui_finetune.py | 8 - console/webui/webui_prompt.py | 8 - console/webui/webui_serving.py | 84 - docs/asserts/preview.jpg | Bin 212202 -> 0 bytes {console/serve => llmboard/libs}/__init__.py | 0 llmboard/libs/consts.py | 12 + llmboard/libs/inference_service.py | 9 + llmboard/libs/models.py | 21 + {console => llmboard}/webui/__init__.py | 0 llmboard/webui/engine.py | 12 + llmboard/webui/webui.py | 17 + llmboard/webui/webui_chat.py | 63 + llmboard/webui/webui_market.py | 35 + main.py | 2 +- poetry.lock | 3298 +++++------------- pyproject.toml | 11 +- 24 files changed, 1131 insertions(+), 2597 deletions(-) create mode 100644 .github/workflow/kube-workflow-init.yaml create mode 100644 .github/workflow/kube-workflow.yaml delete mode 100644 console/serve/chatbot.py delete mode 100644 console/serve/serve.py delete mode 100644 console/webui/engine.py delete mode 100644 console/webui/webui.py delete mode 100644 console/webui/webui_finetune.py delete mode 100644 console/webui/webui_prompt.py delete mode 100644 console/webui/webui_serving.py delete mode 100644 docs/asserts/preview.jpg rename {console/serve => llmboard/libs}/__init__.py (100%) create mode 100644 llmboard/libs/consts.py create mode 100644 llmboard/libs/inference_service.py create mode 100644 llmboard/libs/models.py rename {console => llmboard}/webui/__init__.py (100%) create mode 100644 llmboard/webui/engine.py create mode 100644 llmboard/webui/webui.py create mode 100644 llmboard/webui/webui_chat.py create mode 100644 llmboard/webui/webui_market.py diff --git a/.github/workflow/kube-workflow-init.yaml b/.github/workflow/kube-workflow-init.yaml new file mode 100644 index 0000000..2949d61 --- /dev/null +++ b/.github/workflow/kube-workflow-init.yaml @@ -0,0 +1,10 @@ +name: Initialization Workflow + +on: + workflow_dispatch: + +jobs: + init: + uses: kerthcet/github-workflow-as-kube/.github/workflows/workflow-as-kubernetes-init.yaml@v0.1.3 + secrets: + AGENT_TOKEN: ${{ secrets.AGENT_TOKEN }} diff --git a/.github/workflow/kube-workflow.yaml b/.github/workflow/kube-workflow.yaml new file mode 100644 index 0000000..e68ebef --- /dev/null +++ b/.github/workflow/kube-workflow.yaml @@ -0,0 +1,21 @@ +name: Event Workflow + +on: + issues: + types: + - opened + issue_comment: + types: + - created + pull_request_target: + types: + - opened + - synchronize + - labeled + - unlabeled + +jobs: + event-handler: + uses: kerthcet/github-workflow-as-kube/.github/workflows/workflow-as-kubernetes.yaml@v0.1.3 + secrets: + AGENT_TOKEN: ${{ secrets.AGENT_TOKEN }} diff --git a/Dockerfile b/Dockerfile index 91735e6..32ff0a2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ FROM python:3.10-slim -RUN mkdir -p /app/llmaz +RUN mkdir -p /app/llmboard WORKDIR /app COPY requirements.txt . @@ -8,7 +8,7 @@ RUN python -m pip install --upgrade pip && \ pip install -r requirements.txt COPY main.py . -COPY llmaz/ ./llmaz +COPY llmboard/ ./llmboard EXPOSE 7860 CMD ["python", "main.py"] diff --git a/README.md b/README.md index 2eb0e0d..d14fcbf 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,7 @@ -# Console for LLMAZ +# ChatUI for LLMs on llmaz -A dashboard for [llmaz](https://github.com/InftyAI/llmaz) to interact with LLM workloads. +A console for [llmaz](https://github.com/InftyAI/llmaz) to interact with LLM workloads. ## How to deploy Run `make launch` then visit `http://localhost:7860` for Console. - -![console](./docs/asserts/preview.jpg) - -## 👏 Contributors - -Thanks to all these contributors. You're the heroes. - - - - diff --git a/console/serve/chatbot.py b/console/serve/chatbot.py deleted file mode 100644 index 8632c63..0000000 --- a/console/serve/chatbot.py +++ /dev/null @@ -1,23 +0,0 @@ -import torch - - -class Chatbot: - def __init__(self, model_name_or_path, task, **kwargs) -> None: - # self.__chat = ChatLLM(model_name_or_path=model_name_or_path, task=task) - pass - - def completion(self, messages) -> str: - """ - Chat completion. - """ - return "self.chat.completion(messages=messages)" - return self.__chat.completion(messages=messages) - - def torch_gc(self) -> None: - """ - Reclaim GPU memory. - """ - # FIXME: will this lead to memory leakage? - self.__chat = None - if torch.cuda.is_available(): - torch.cuda.empty_cache() diff --git a/console/serve/serve.py b/console/serve/serve.py deleted file mode 100644 index 9466400..0000000 --- a/console/serve/serve.py +++ /dev/null @@ -1,32 +0,0 @@ -from console.serve.chatbot import Chatbot - - -class Serve: - def __init__(self) -> None: - self.__model = None - - def preload_model(self, model_name_or_path, task, temperature, stream) -> None: - # TODO: Because gradio can not maintain state like page refresh, so we'll not offload model here. - # See https://github.com/gradio-app/gradio/issues/3106. - # So if user wants to load a different model, he/she should offload the model first. - if self.__model is not None: - return - - self.__model = Chatbot( - model_name_or_path=model_name_or_path, - task=task, - temperature=temperature, - stream=stream, - ) - - def offload_model(self) -> None: - if self.__model is None: - return - - self.__model.torch_gc() - self.__model = None - - def completion(self, messages) -> str: - if self.__model is None: - raise Exception("No model preloaded") - return self.__model.completion(messages) diff --git a/console/webui/engine.py b/console/webui/engine.py deleted file mode 100644 index 2310481..0000000 --- a/console/webui/engine.py +++ /dev/null @@ -1,21 +0,0 @@ -from console.serve.serve import Serve - - -class Engine: - def __init__(self) -> None: - self.serve = Serve() - self.__model_loaded = False - - def model_loaded(self) -> bool: - return self.__model_loaded - - def preload_model(self, model_name_or_path, task, temperature, stream) -> None: - if model_name_or_path is None or model_name_or_path == "": - raise Exception("no model_name_or_path provided") - - self.serve.preload_model(model_name_or_path, task, temperature, stream) - self.__model_loaded = True - - def offload_model(self) -> None: - self.serve.offload_model() - self.__model_loaded = False diff --git a/console/webui/webui.py b/console/webui/webui.py deleted file mode 100644 index bac8e20..0000000 --- a/console/webui/webui.py +++ /dev/null @@ -1,23 +0,0 @@ -# TODO: Using logging once ready -# import logging - -import gradio as gr - -from console.webui.engine import Engine -from console.webui.webui_serving import create_serving_webui -from console.webui.webui_finetune import create_finetune_webui -from console.webui.webui_prompt import create_prompt_webui - - -def launch_webui() -> gr.Blocks: - engine = Engine() - - with gr.Blocks(title="Console") as blocks: - # Serving Tab - create_serving_webui(engine) - # Prompt Tab - create_prompt_webui(engine) - # Fine-tuning Tab - create_finetune_webui(engine) - - return blocks diff --git a/console/webui/webui_finetune.py b/console/webui/webui_finetune.py deleted file mode 100644 index 889edb5..0000000 --- a/console/webui/webui_finetune.py +++ /dev/null @@ -1,8 +0,0 @@ -import gradio as gr - -from console.webui.engine import Engine - - -def create_finetune_webui(engine: Engine) -> gr.Tab: - with gr.Tab("Fine-Tuning"): - pass diff --git a/console/webui/webui_prompt.py b/console/webui/webui_prompt.py deleted file mode 100644 index fe155f0..0000000 --- a/console/webui/webui_prompt.py +++ /dev/null @@ -1,8 +0,0 @@ -import gradio as gr - -from console.webui.engine import Engine - - -def create_prompt_webui(engine: Engine) -> gr.Tab: - with gr.Tab("Prompt"): - pass diff --git a/console/webui/webui_serving.py b/console/webui/webui_serving.py deleted file mode 100644 index 799306a..0000000 --- a/console/webui/webui_serving.py +++ /dev/null @@ -1,84 +0,0 @@ -import gradio as gr -from llmlite.apis import ChatMessage - -from console.webui.engine import Engine - - -loaded = False - - -def create_serving_webui(engine: Engine) -> gr.Tab: - def predict(message, history, system_prompt): - messages = [] - for i in range(0, len(history)): - messages.append(ChatMessage(role="user", content=history[i][0])) - messages.append(ChatMessage(role="assistant", content=history[i][1])) - - messages.append(ChatMessage(role="user", content=message)) - - # TODO: https://github.com/InftyAI/llmlite/issues/31 - if system_prompt != "": - messages = [ChatMessage(role="system", content=system_prompt)] + messages - - return engine.serve.completion(messages=messages) - - with gr.Tab("Serving"): - with gr.Row(): - # TODO: required validation, see https://github.com/gradio-app/gradio/issues/2718 - model_name = gr.Textbox( - label="model_name_or_path", - placeholder="this is required", - ) - task = gr.Textbox( - label="task", - placeholder="this is optional, default to text-generation", - ) - - with gr.Accordion("click for more parameters...", open=False): - temperature = gr.Slider(0, 100, step=5, label="temperature") - stream = gr.Checkbox(label="stream") - - with gr.Row(): - load_btn = gr.Button("Load Model", interactive=(not loaded)) - offload_btn = gr.Button("Offload Model", interactive=loaded) - - # TODO: https://github.com/InftyAI/Llmaz/issues/6 - load_btn.click( - fn=engine.preload_model, - inputs=[model_name, task, temperature, stream], - ).success( - lambda b: gr.update(interactive=False), - inputs=[load_btn], - outputs=[load_btn], - ).success( - lambda b: gr.update(interactive=True), - inputs=[offload_btn], - outputs=[offload_btn], - ) - offload_btn.click( - fn=engine.offload_model, - ).success( - lambda b: gr.update(interactive=False), - inputs=[offload_btn], - outputs=[offload_btn], - ).success( - lambda b: gr.update(interactive=True), - inputs=[load_btn], - outputs=[load_btn], - ) - - with gr.Tab("Chatbot"): - gr.ChatInterface( - predict, - retry_btn=None, - undo_btn=None, - additional_inputs=[ - gr.Textbox(placeholder="this is optional", label="system prompt"), - ], - ) - - # TODO: Just for demonstration, once we have another application for serving, remove it. - with gr.Tab("PR-Copilot"): - pass - with gr.Tab("RAG"): - pass diff --git a/docs/asserts/preview.jpg b/docs/asserts/preview.jpg deleted file mode 100644 index 5f83b27fa676413a92a577cba412db5cf44f6cb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212202 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%0DqsL%&-NI&43+kGL%3%-cW~H9#OW*lJfQ7 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 bdx&E;A>20O;_peozgss{uV*P3y#D_HLTM!! diff --git a/console/serve/__init__.py b/llmboard/libs/__init__.py similarity index 100% rename from console/serve/__init__.py rename to llmboard/libs/__init__.py diff --git a/llmboard/libs/consts.py b/llmboard/libs/consts.py new file mode 100644 index 0000000..2abff02 --- /dev/null +++ b/llmboard/libs/consts.py @@ -0,0 +1,12 @@ +# GVKs +group = "llmaz.io" +version = "v1alpha1" +openmodel_plural = "openmodels" + +# object label keys. +label_key_family_name = "llmaz.io/model-family-name" +label_key_model_name = "llmaz.io/model-name" + +# Model hubs. +huggingface = "Huggingface" +modelscope = "ModelScope" diff --git a/llmboard/libs/inference_service.py b/llmboard/libs/inference_service.py new file mode 100644 index 0000000..8f7bd79 --- /dev/null +++ b/llmboard/libs/inference_service.py @@ -0,0 +1,9 @@ +from dataclasses import dataclass + + +@dataclass(frozen=True) +class InferenceService: + name: str + namespace: str + model_family_name: str + model_name: str diff --git a/llmboard/libs/models.py b/llmboard/libs/models.py new file mode 100644 index 0000000..53ae707 --- /dev/null +++ b/llmboard/libs/models.py @@ -0,0 +1,21 @@ +from kubernetes import client +from kubernetes.client import CustomObjectsApi + +from llmboard.libs.consts import group, version, openmodel_plural + + +def get_openmodel_objects(api: CustomObjectsApi, namespace: None): + try: + if namespace: + # TODO: we do not support namespaced models yet. + raise NotImplementedError("do not support namespaced models yet") + else: + response = api.list_cluster_custom_object( + group=group, + version=version, + plural=openmodel_plural, + ) + return response.get("items", []) + except client.exceptions.ApiException as e: + print(f"Error fetching OpenModel objects: {e}") + return [] diff --git a/console/webui/__init__.py b/llmboard/webui/__init__.py similarity index 100% rename from console/webui/__init__.py rename to llmboard/webui/__init__.py diff --git a/llmboard/webui/engine.py b/llmboard/webui/engine.py new file mode 100644 index 0000000..bef8f5a --- /dev/null +++ b/llmboard/webui/engine.py @@ -0,0 +1,12 @@ +from kubernetes import config +from llmboard.libs.models import get_openmodel_objects + + +class Engine: + def __init__(self) -> None: + # config.load_incluster_config() + pass + + def get_models(self): + # objs = get_openmodel_objects() + pass diff --git a/llmboard/webui/webui.py b/llmboard/webui/webui.py new file mode 100644 index 0000000..f2e3566 --- /dev/null +++ b/llmboard/webui/webui.py @@ -0,0 +1,17 @@ +import gradio as gr + +from llmboard.webui.engine import Engine +from llmboard.webui.webui_chat import create_chat_webui +from llmboard.webui.webui_market import create_market_webui + + +def launch_webui() -> gr.Blocks: + engine = Engine() + + with gr.Blocks(title="llmboard") as blocks: + # TODO: Model Market Tab, list and create serving services. + # create_market_webui(engine) + # Serving Tab + create_chat_webui(engine) + + return blocks diff --git a/llmboard/webui/webui_chat.py b/llmboard/webui/webui_chat.py new file mode 100644 index 0000000..7be3c21 --- /dev/null +++ b/llmboard/webui/webui_chat.py @@ -0,0 +1,63 @@ +import random + +import gradio as gr + +from llmboard.webui.engine import Engine + +loaded = False + + +def create_chat_webui(engine: Engine) -> gr.Tab: + def predict(message, history): + print(f"message: {message}, history: {history}") + return random.choice(["Yes", "No"]) + + data = { + "family1": ["model1", "model2", "model3"], + "family2": ["model4", "model5"], + "family3": ["model6", "model7", "model8", "model9"], + "llama": ["model6", "model7", "model8", "llama2"], + } + + services = { + "llama2": ["service1", "service2", "service3", "service4"], + } + + def get_models(family): + models = data.get(family, []) + return gr.update(choices=models, value=models[0] if models else None) + + def get_services(model): + svcs = services.get(model, []) + return gr.update(choices=svcs, value=svcs[0] if svcs[0] else None) + + with gr.Tab("Chat"): + with gr.Row(): + family_dropdown = gr.Dropdown( + label="Select Model Family", choices=list(data.keys()), value=None + ) + model_dropdown = gr.Dropdown( + label="Select Model", choices=[], value=None, interactive=True + ) + service_dropdown = gr.Dropdown( + label="Select Service", choices=[], value=None, interactive=True + ) + + family_dropdown.change( + get_models, inputs=family_dropdown, outputs=model_dropdown + ) + model_dropdown.change( + get_services, inputs=model_dropdown, outputs=service_dropdown + ) + + with gr.Accordion("click for more parameters...", open=False): + temperature = gr.Slider(0, 100, step=5, label="temperature") + stream = gr.Checkbox(label="stream") + + gr.ChatInterface( + fn=predict, + additional_inputs=[ + gr.Textbox(placeholder="this is optional", label="System Prompt"), + ], + type="messages", + ) diff --git a/llmboard/webui/webui_market.py b/llmboard/webui/webui_market.py new file mode 100644 index 0000000..871b613 --- /dev/null +++ b/llmboard/webui/webui_market.py @@ -0,0 +1,35 @@ +import gradio as gr +import requests + +from llmboard.webui.engine import Engine + + +def fetch_readme(url): + response = requests.get(url) + if response.status_code == 200: + return response.text + else: + return f"Load document error" + + +def create_market_webui(engine: Engine) -> gr.Tab: + with gr.Tab("Model Market"): + with gr.Row(): + with gr.Group(): + gr.Markdown("## Model Card1") + + with gr.Group(): + gr.Markdown("## Model Card2") + + with gr.Group(): + gr.Markdown("## Model Card3") + + with gr.Row(): + with gr.Group(): + gr.Markdown("## Model Card4") + + with gr.Group(): + gr.Markdown("## Model Card5") + + with gr.Group(): + gr.Markdown("## Model Card6") diff --git a/main.py b/main.py index 5d0eb55..5062666 100644 --- a/main.py +++ b/main.py @@ -1,4 +1,4 @@ -from console.webui.webui import launch_webui +from llmboard.webui.webui import launch_webui if __name__ == "__main__": webui = launch_webui() diff --git a/poetry.lock b/poetry.lock index f32c26b..4dd5eab 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,32 +1,4 @@ -# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. - -[[package]] -name = "accelerate" -version = "0.22.0" -description = "Accelerate" -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "accelerate-0.22.0-py3-none-any.whl", hash = "sha256:d132e57bfc4b0417464997b14aa141fd88696cbb4472eb03116c2bd97542befc"}, - {file = "accelerate-0.22.0.tar.gz", hash = "sha256:2b0a83e3cd07c89448c5d5a94f72bc1db98d5e0c498ca17984871f01dbf83247"}, -] - -[package.dependencies] -numpy = ">=1.17" -packaging = ">=20.0" -psutil = "*" -pyyaml = "*" -torch = ">=1.10.0" - -[package.extras] -dev = ["bitsandbytes", "black (>=23.1,<24.0)", "datasets", "deepspeed", "evaluate", "hf-doc-builder (>=0.3.0)", "parameterized", "pytest", "pytest-subtests", "pytest-xdist", "rich", "ruff (>=0.0.241)", "scikit-learn", "scipy", "tqdm", "transformers", "urllib3 (<2.0.0)"] -quality = ["black (>=23.1,<24.0)", "hf-doc-builder (>=0.3.0)", "ruff (>=0.0.241)", "urllib3 (<2.0.0)"] -rich = ["rich"] -sagemaker = ["sagemaker"] -test-dev = ["bitsandbytes", "datasets", "deepspeed", "evaluate", "scikit-learn", "scipy", "tqdm", "transformers"] -test-prod = ["parameterized", "pytest", "pytest-subtests", "pytest-xdist"] -test-trackers = ["comet-ml", "tensorboard", "wandb"] -testing = ["bitsandbytes", "datasets", "deepspeed", "evaluate", "parameterized", "pytest", "pytest-subtests", "pytest-xdist", "scikit-learn", "scipy", "tqdm", "transformers"] +# This file is automatically @generated by Poetry 1.8.4 and should not be changed by hand. [[package]] name = "aiofiles" @@ -40,174 +12,25 @@ files = [ ] [[package]] -name = "aiohappyeyeballs" -version = "2.4.0" -description = "Happy Eyeballs for asyncio" +name = "annotated-types" +version = "0.7.0" +description = "Reusable constraint types to use with typing.Annotated" optional = false python-versions = ">=3.8" files = [ - {file = "aiohappyeyeballs-2.4.0-py3-none-any.whl", hash = "sha256:7ce92076e249169a13c2f49320d1967425eaf1f407522d707d59cac7628d62bd"}, - {file = "aiohappyeyeballs-2.4.0.tar.gz", hash = "sha256:55a1714f084e63d49639800f95716da97a1f173d46a16dfcfda0016abb93b6b2"}, + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, ] -[[package]] -name = "aiohttp" -version = "3.10.5" -description = "Async http client/server framework (asyncio)" -optional = false -python-versions = ">=3.8" -files = [ - {file = "aiohttp-3.10.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:18a01eba2574fb9edd5f6e5fb25f66e6ce061da5dab5db75e13fe1558142e0a3"}, - {file = "aiohttp-3.10.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:94fac7c6e77ccb1ca91e9eb4cb0ac0270b9fb9b289738654120ba8cebb1189c6"}, - {file = "aiohttp-3.10.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2f1f1c75c395991ce9c94d3e4aa96e5c59c8356a15b1c9231e783865e2772699"}, - {file = "aiohttp-3.10.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4f7acae3cf1a2a2361ec4c8e787eaaa86a94171d2417aae53c0cca6ca3118ff6"}, - {file = "aiohttp-3.10.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:94c4381ffba9cc508b37d2e536b418d5ea9cfdc2848b9a7fea6aebad4ec6aac1"}, - {file = "aiohttp-3.10.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c31ad0c0c507894e3eaa843415841995bf8de4d6b2d24c6e33099f4bc9fc0d4f"}, - {file = "aiohttp-3.10.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0912b8a8fadeb32ff67a3ed44249448c20148397c1ed905d5dac185b4ca547bb"}, - {file = "aiohttp-3.10.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0d93400c18596b7dc4794d48a63fb361b01a0d8eb39f28800dc900c8fbdaca91"}, - {file = "aiohttp-3.10.5-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d00f3c5e0d764a5c9aa5a62d99728c56d455310bcc288a79cab10157b3af426f"}, - {file = "aiohttp-3.10.5-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:d742c36ed44f2798c8d3f4bc511f479b9ceef2b93f348671184139e7d708042c"}, - {file = "aiohttp-3.10.5-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:814375093edae5f1cb31e3407997cf3eacefb9010f96df10d64829362ae2df69"}, - {file = "aiohttp-3.10.5-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:8224f98be68a84b19f48e0bdc14224b5a71339aff3a27df69989fa47d01296f3"}, - {file = "aiohttp-3.10.5-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:d9a487ef090aea982d748b1b0d74fe7c3950b109df967630a20584f9a99c0683"}, - {file = "aiohttp-3.10.5-cp310-cp310-win32.whl", hash = "sha256:d9ef084e3dc690ad50137cc05831c52b6ca428096e6deb3c43e95827f531d5ef"}, - {file = "aiohttp-3.10.5-cp310-cp310-win_amd64.whl", hash = "sha256:66bf9234e08fe561dccd62083bf67400bdbf1c67ba9efdc3dac03650e97c6088"}, - {file = "aiohttp-3.10.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8c6a4e5e40156d72a40241a25cc226051c0a8d816610097a8e8f517aeacd59a2"}, - {file = "aiohttp-3.10.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c634a3207a5445be65536d38c13791904fda0748b9eabf908d3fe86a52941cf"}, - {file = "aiohttp-3.10.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4aff049b5e629ef9b3e9e617fa6e2dfeda1bf87e01bcfecaf3949af9e210105e"}, - {file = "aiohttp-3.10.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1942244f00baaacaa8155eca94dbd9e8cc7017deb69b75ef67c78e89fdad3c77"}, - {file = "aiohttp-3.10.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e04a1f2a65ad2f93aa20f9ff9f1b672bf912413e5547f60749fa2ef8a644e061"}, - {file = "aiohttp-3.10.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7f2bfc0032a00405d4af2ba27f3c429e851d04fad1e5ceee4080a1c570476697"}, - {file = "aiohttp-3.10.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:424ae21498790e12eb759040bbb504e5e280cab64693d14775c54269fd1d2bb7"}, - {file = "aiohttp-3.10.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:975218eee0e6d24eb336d0328c768ebc5d617609affaca5dbbd6dd1984f16ed0"}, - {file = "aiohttp-3.10.5-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:4120d7fefa1e2d8fb6f650b11489710091788de554e2b6f8347c7a20ceb003f5"}, - {file = "aiohttp-3.10.5-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:b90078989ef3fc45cf9221d3859acd1108af7560c52397ff4ace8ad7052a132e"}, - {file = "aiohttp-3.10.5-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:ba5a8b74c2a8af7d862399cdedce1533642fa727def0b8c3e3e02fcb52dca1b1"}, - {file = "aiohttp-3.10.5-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:02594361128f780eecc2a29939d9dfc870e17b45178a867bf61a11b2a4367277"}, - {file = "aiohttp-3.10.5-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:8fb4fc029e135859f533025bc82047334e24b0d489e75513144f25408ecaf058"}, - {file = "aiohttp-3.10.5-cp311-cp311-win32.whl", hash = "sha256:e1ca1ef5ba129718a8fc827b0867f6aa4e893c56eb00003b7367f8a733a9b072"}, - {file = "aiohttp-3.10.5-cp311-cp311-win_amd64.whl", hash = "sha256:349ef8a73a7c5665cca65c88ab24abe75447e28aa3bc4c93ea5093474dfdf0ff"}, - {file = "aiohttp-3.10.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:305be5ff2081fa1d283a76113b8df7a14c10d75602a38d9f012935df20731487"}, - {file = "aiohttp-3.10.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:3a1c32a19ee6bbde02f1cb189e13a71b321256cc1d431196a9f824050b160d5a"}, - {file = "aiohttp-3.10.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:61645818edd40cc6f455b851277a21bf420ce347baa0b86eaa41d51ef58ba23d"}, - {file = "aiohttp-3.10.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c225286f2b13bab5987425558baa5cbdb2bc925b2998038fa028245ef421e75"}, - {file = "aiohttp-3.10.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8ba01ebc6175e1e6b7275c907a3a36be48a2d487549b656aa90c8a910d9f3178"}, - {file = "aiohttp-3.10.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8eaf44ccbc4e35762683078b72bf293f476561d8b68ec8a64f98cf32811c323e"}, - {file = "aiohttp-3.10.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1c43eb1ab7cbf411b8e387dc169acb31f0ca0d8c09ba63f9eac67829585b44f"}, - {file = "aiohttp-3.10.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:de7a5299827253023c55ea549444e058c0eb496931fa05d693b95140a947cb73"}, - {file = "aiohttp-3.10.5-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:4790f0e15f00058f7599dab2b206d3049d7ac464dc2e5eae0e93fa18aee9e7bf"}, - {file = "aiohttp-3.10.5-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:44b324a6b8376a23e6ba25d368726ee3bc281e6ab306db80b5819999c737d820"}, - {file = "aiohttp-3.10.5-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:0d277cfb304118079e7044aad0b76685d30ecb86f83a0711fc5fb257ffe832ca"}, - {file = "aiohttp-3.10.5-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:54d9ddea424cd19d3ff6128601a4a4d23d54a421f9b4c0fff740505813739a91"}, - {file = "aiohttp-3.10.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:4f1c9866ccf48a6df2b06823e6ae80573529f2af3a0992ec4fe75b1a510df8a6"}, - {file = "aiohttp-3.10.5-cp312-cp312-win32.whl", hash = "sha256:dc4826823121783dccc0871e3f405417ac116055bf184ac04c36f98b75aacd12"}, - {file = "aiohttp-3.10.5-cp312-cp312-win_amd64.whl", hash = "sha256:22c0a23a3b3138a6bf76fc553789cb1a703836da86b0f306b6f0dc1617398abc"}, - {file = "aiohttp-3.10.5-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:7f6b639c36734eaa80a6c152a238242bedcee9b953f23bb887e9102976343092"}, - {file = "aiohttp-3.10.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f29930bc2921cef955ba39a3ff87d2c4398a0394ae217f41cb02d5c26c8b1b77"}, - {file = "aiohttp-3.10.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f489a2c9e6455d87eabf907ac0b7d230a9786be43fbe884ad184ddf9e9c1e385"}, - {file = "aiohttp-3.10.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:123dd5b16b75b2962d0fff566effb7a065e33cd4538c1692fb31c3bda2bfb972"}, - {file = "aiohttp-3.10.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b98e698dc34966e5976e10bbca6d26d6724e6bdea853c7c10162a3235aba6e16"}, - {file = "aiohttp-3.10.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c3b9162bab7e42f21243effc822652dc5bb5e8ff42a4eb62fe7782bcbcdfacf6"}, - {file = "aiohttp-3.10.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1923a5c44061bffd5eebeef58cecf68096e35003907d8201a4d0d6f6e387ccaa"}, - {file = "aiohttp-3.10.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d55f011da0a843c3d3df2c2cf4e537b8070a419f891c930245f05d329c4b0689"}, - {file = "aiohttp-3.10.5-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:afe16a84498441d05e9189a15900640a2d2b5e76cf4efe8cbb088ab4f112ee57"}, - {file = "aiohttp-3.10.5-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:f8112fb501b1e0567a1251a2fd0747baae60a4ab325a871e975b7bb67e59221f"}, - {file = "aiohttp-3.10.5-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:1e72589da4c90337837fdfe2026ae1952c0f4a6e793adbbfbdd40efed7c63599"}, - {file = "aiohttp-3.10.5-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:4d46c7b4173415d8e583045fbc4daa48b40e31b19ce595b8d92cf639396c15d5"}, - {file = "aiohttp-3.10.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:33e6bc4bab477c772a541f76cd91e11ccb6d2efa2b8d7d7883591dfb523e5987"}, - {file = "aiohttp-3.10.5-cp313-cp313-win32.whl", hash = "sha256:c58c6837a2c2a7cf3133983e64173aec11f9c2cd8e87ec2fdc16ce727bcf1a04"}, - {file = "aiohttp-3.10.5-cp313-cp313-win_amd64.whl", hash = "sha256:38172a70005252b6893088c0f5e8a47d173df7cc2b2bd88650957eb84fcf5022"}, - {file = "aiohttp-3.10.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:f6f18898ace4bcd2d41a122916475344a87f1dfdec626ecde9ee802a711bc569"}, - {file = "aiohttp-3.10.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5ede29d91a40ba22ac1b922ef510aab871652f6c88ef60b9dcdf773c6d32ad7a"}, - {file = "aiohttp-3.10.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:673f988370f5954df96cc31fd99c7312a3af0a97f09e407399f61583f30da9bc"}, - {file = "aiohttp-3.10.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58718e181c56a3c02d25b09d4115eb02aafe1a732ce5714ab70326d9776457c3"}, - {file = "aiohttp-3.10.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4b38b1570242fbab8d86a84128fb5b5234a2f70c2e32f3070143a6d94bc854cf"}, - {file = "aiohttp-3.10.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:074d1bff0163e107e97bd48cad9f928fa5a3eb4b9d33366137ffce08a63e37fe"}, - {file = "aiohttp-3.10.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd31f176429cecbc1ba499d4aba31aaccfea488f418d60376b911269d3b883c5"}, - {file = "aiohttp-3.10.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7384d0b87d4635ec38db9263e6a3f1eb609e2e06087f0aa7f63b76833737b471"}, - {file = "aiohttp-3.10.5-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:8989f46f3d7ef79585e98fa991e6ded55d2f48ae56d2c9fa5e491a6e4effb589"}, - {file = "aiohttp-3.10.5-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:c83f7a107abb89a227d6c454c613e7606c12a42b9a4ca9c5d7dad25d47c776ae"}, - {file = "aiohttp-3.10.5-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:cde98f323d6bf161041e7627a5fd763f9fd829bcfcd089804a5fdce7bb6e1b7d"}, - {file = "aiohttp-3.10.5-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:676f94c5480d8eefd97c0c7e3953315e4d8c2b71f3b49539beb2aa676c58272f"}, - {file = "aiohttp-3.10.5-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:2d21ac12dc943c68135ff858c3a989f2194a709e6e10b4c8977d7fcd67dfd511"}, - {file = "aiohttp-3.10.5-cp38-cp38-win32.whl", hash = "sha256:17e997105bd1a260850272bfb50e2a328e029c941c2708170d9d978d5a30ad9a"}, - {file = "aiohttp-3.10.5-cp38-cp38-win_amd64.whl", hash = "sha256:1c19de68896747a2aa6257ae4cf6ef59d73917a36a35ee9d0a6f48cff0f94db8"}, - {file = "aiohttp-3.10.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7e2fe37ac654032db1f3499fe56e77190282534810e2a8e833141a021faaab0e"}, - {file = "aiohttp-3.10.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f5bf3ead3cb66ab990ee2561373b009db5bc0e857549b6c9ba84b20bc462e172"}, - {file = "aiohttp-3.10.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1b2c16a919d936ca87a3c5f0e43af12a89a3ce7ccbce59a2d6784caba945b68b"}, - {file = "aiohttp-3.10.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ad146dae5977c4dd435eb31373b3fe9b0b1bf26858c6fc452bf6af394067e10b"}, - {file = "aiohttp-3.10.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8c5c6fa16412b35999320f5c9690c0f554392dc222c04e559217e0f9ae244b92"}, - {file = "aiohttp-3.10.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:95c4dc6f61d610bc0ee1edc6f29d993f10febfe5b76bb470b486d90bbece6b22"}, - {file = "aiohttp-3.10.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da452c2c322e9ce0cfef392e469a26d63d42860f829026a63374fde6b5c5876f"}, - {file = "aiohttp-3.10.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:898715cf566ec2869d5cb4d5fb4be408964704c46c96b4be267442d265390f32"}, - {file = "aiohttp-3.10.5-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:391cc3a9c1527e424c6865e087897e766a917f15dddb360174a70467572ac6ce"}, - {file = "aiohttp-3.10.5-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:380f926b51b92d02a34119d072f178d80bbda334d1a7e10fa22d467a66e494db"}, - {file = "aiohttp-3.10.5-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ce91db90dbf37bb6fa0997f26574107e1b9d5ff939315247b7e615baa8ec313b"}, - {file = "aiohttp-3.10.5-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:9093a81e18c45227eebe4c16124ebf3e0d893830c6aca7cc310bfca8fe59d857"}, - {file = "aiohttp-3.10.5-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:ee40b40aa753d844162dcc80d0fe256b87cba48ca0054f64e68000453caead11"}, - {file = "aiohttp-3.10.5-cp39-cp39-win32.whl", hash = "sha256:03f2645adbe17f274444953bdea69f8327e9d278d961d85657cb0d06864814c1"}, - {file = "aiohttp-3.10.5-cp39-cp39-win_amd64.whl", hash = "sha256:d17920f18e6ee090bdd3d0bfffd769d9f2cb4c8ffde3eb203777a3895c128862"}, - {file = "aiohttp-3.10.5.tar.gz", hash = "sha256:f071854b47d39591ce9a17981c46790acb30518e2f83dfca8db2dfa091178691"}, -] - -[package.dependencies] -aiohappyeyeballs = ">=2.3.0" -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 (>=3.2.0)", "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 = "altair" -version = "5.4.1" -description = "Vega-Altair: A declarative statistical visualization library for Python." -optional = false -python-versions = ">=3.8" -files = [ - {file = "altair-5.4.1-py3-none-any.whl", hash = "sha256:0fb130b8297a569d08991fb6fe763582e7569f8a04643bbd9212436e3be04aef"}, - {file = "altair-5.4.1.tar.gz", hash = "sha256:0ce8c2e66546cb327e5f2d7572ec0e7c6feece816203215613962f0ec1d76a82"}, -] - -[package.dependencies] -jinja2 = "*" -jsonschema = ">=3.0" -narwhals = ">=1.5.2" -packaging = "*" -typing-extensions = {version = ">=4.10.0", markers = "python_version < \"3.13\""} - -[package.extras] -all = ["altair-tiles (>=0.3.0)", "anywidget (>=0.9.0)", "numpy", "pandas (>=0.25.3)", "pyarrow (>=11)", "vega-datasets (>=0.9.0)", "vegafusion[embed] (>=1.6.6)", "vl-convert-python (>=1.6.0)"] -dev = ["geopandas", "hatch", "ibis-framework[polars]", "ipython[kernel]", "mistune", "mypy", "pandas (>=0.25.3)", "pandas-stubs", "polars (>=0.20.3)", "pytest", "pytest-cov", "pytest-xdist[psutil] (>=3.5,<4.0)", "ruff (>=0.6.0)", "types-jsonschema", "types-setuptools"] -doc = ["docutils", "jinja2", "myst-parser", "numpydoc", "pillow (>=9,<10)", "pydata-sphinx-theme (>=0.14.1)", "scipy", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinxext-altair"] - [[package]] name = "anyio" -version = "4.4.0" +version = "4.6.2.post1" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "anyio-4.4.0-py3-none-any.whl", hash = "sha256:c1b2d8f46a8a812513012e1107cb0e68c17159a7a594208005a57dc776e1bdc7"}, - {file = "anyio-4.4.0.tar.gz", hash = "sha256:5aadc6a1bbb7cdb0bede386cac5e2940f5e2ff3aa20277e991cf028e0585ce94"}, + {file = "anyio-4.6.2.post1-py3-none-any.whl", hash = "sha256:6d170c36fba3bdd840c73d3868c1e777e33676a69c3a72cf0a0d5d6d8009b61d"}, + {file = "anyio-4.6.2.post1.tar.gz", hash = "sha256:4c8bc31ccdb51c7f7bd251f51c609e038d63e34219b44aa86e47576389880b4c"}, ] [package.dependencies] @@ -217,40 +40,52 @@ 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 = "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"}, +doc = ["Sphinx (>=7.4,<8.0)", "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", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"] +trio = ["trio (>=0.26.1)"] + +[[package]] +name = "audioop-lts" +version = "0.2.1" +description = "LTS Port of Python audioop" +optional = false +python-versions = ">=3.13" +files = [ + {file = "audioop_lts-0.2.1-cp313-abi3-macosx_10_13_universal2.whl", hash = "sha256:fd1345ae99e17e6910f47ce7d52673c6a1a70820d78b67de1b7abb3af29c426a"}, + {file = "audioop_lts-0.2.1-cp313-abi3-macosx_10_13_x86_64.whl", hash = "sha256:e175350da05d2087e12cea8e72a70a1a8b14a17e92ed2022952a4419689ede5e"}, + {file = "audioop_lts-0.2.1-cp313-abi3-macosx_11_0_arm64.whl", hash = "sha256:4a8dd6a81770f6ecf019c4b6d659e000dc26571b273953cef7cd1d5ce2ff3ae6"}, + {file = "audioop_lts-0.2.1-cp313-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1cd3c0b6f2ca25c7d2b1c3adeecbe23e65689839ba73331ebc7d893fcda7ffe"}, + {file = "audioop_lts-0.2.1-cp313-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ff3f97b3372c97782e9c6d3d7fdbe83bce8f70de719605bd7ee1839cd1ab360a"}, + {file = "audioop_lts-0.2.1-cp313-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a351af79edefc2a1bd2234bfd8b339935f389209943043913a919df4b0f13300"}, + {file = "audioop_lts-0.2.1-cp313-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2aeb6f96f7f6da80354330470b9134d81b4cf544cdd1c549f2f45fe964d28059"}, + {file = "audioop_lts-0.2.1-cp313-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c589f06407e8340e81962575fcffbba1e92671879a221186c3d4662de9fe804e"}, + {file = "audioop_lts-0.2.1-cp313-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:fbae5d6925d7c26e712f0beda5ed69ebb40e14212c185d129b8dfbfcc335eb48"}, + {file = "audioop_lts-0.2.1-cp313-abi3-musllinux_1_2_i686.whl", hash = "sha256:d2d5434717f33117f29b5691fbdf142d36573d751716249a288fbb96ba26a281"}, + {file = "audioop_lts-0.2.1-cp313-abi3-musllinux_1_2_ppc64le.whl", hash = "sha256:f626a01c0a186b08f7ff61431c01c055961ee28769591efa8800beadd27a2959"}, + {file = "audioop_lts-0.2.1-cp313-abi3-musllinux_1_2_s390x.whl", hash = "sha256:05da64e73837f88ee5c6217d732d2584cf638003ac72df124740460531e95e47"}, + {file = "audioop_lts-0.2.1-cp313-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:56b7a0a4dba8e353436f31a932f3045d108a67b5943b30f85a5563f4d8488d77"}, + {file = "audioop_lts-0.2.1-cp313-abi3-win32.whl", hash = "sha256:6e899eb8874dc2413b11926b5fb3857ec0ab55222840e38016a6ba2ea9b7d5e3"}, + {file = "audioop_lts-0.2.1-cp313-abi3-win_amd64.whl", hash = "sha256:64562c5c771fb0a8b6262829b9b4f37a7b886c01b4d3ecdbae1d629717db08b4"}, + {file = "audioop_lts-0.2.1-cp313-abi3-win_arm64.whl", hash = "sha256:c45317debeb64002e980077642afbd977773a25fa3dfd7ed0c84dccfc1fafcb0"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:3827e3fce6fee4d69d96a3d00cd2ab07f3c0d844cb1e44e26f719b34a5b15455"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:161249db9343b3c9780ca92c0be0d1ccbfecdbccac6844f3d0d44b9c4a00a17f"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5b7b4ff9de7a44e0ad2618afdc2ac920b91f4a6d3509520ee65339d4acde5abf"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:72e37f416adb43b0ced93419de0122b42753ee74e87070777b53c5d2241e7fab"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:534ce808e6bab6adb65548723c8cbe189a3379245db89b9d555c4210b4aaa9b6"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d2de9b6fb8b1cf9f03990b299a9112bfdf8b86b6987003ca9e8a6c4f56d39543"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f24865991b5ed4b038add5edbf424639d1358144f4e2a3e7a84bc6ba23e35074"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bdb3b7912ccd57ea53197943f1bbc67262dcf29802c4a6df79ec1c715d45a78"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:120678b208cca1158f0a12d667af592e067f7a50df9adc4dc8f6ad8d065a93fb"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:54cd4520fc830b23c7d223693ed3e1b4d464997dd3abc7c15dce9a1f9bd76ab2"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:d6bd20c7a10abcb0fb3d8aaa7508c0bf3d40dfad7515c572014da4b979d3310a"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:f0ed1ad9bd862539ea875fb339ecb18fcc4148f8d9908f4502df28f94d23491a"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e1af3ff32b8c38a7d900382646e91f2fc515fd19dea37e9392275a5cbfdbff63"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-win32.whl", hash = "sha256:f51bb55122a89f7a0817d7ac2319744b4640b5b446c4c3efcea5764ea99ae509"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:f0f2f336aa2aee2bce0b0dcc32bbba9178995454c7b979cf6ce086a8801e14c7"}, + {file = "audioop_lts-0.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:78bfb3703388c780edf900be66e07de5a3d4105ca8e8720c5c4d67927e0b15d0"}, + {file = "audioop_lts-0.2.1.tar.gz", hash = "sha256:e81268da0baa880431b68b1308ab7257eb33f356e57a5f9b1f915dfb13dd1387"}, ] -[[package]] -name = "attrs" -version = "24.2.0" -description = "Classes Without Boilerplate" -optional = false -python-versions = ">=3.7" -files = [ - {file = "attrs-24.2.0-py3-none-any.whl", hash = "sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2"}, - {file = "attrs-24.2.0.tar.gz", hash = "sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346"}, -] - -[package.extras] -benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier (<24.7)"] -tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] -tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] - [[package]] name = "black" version = "23.12.1" @@ -297,6 +132,17 @@ d = ["aiohttp (>=3.7.4)", "aiohttp (>=3.7.4,!=3.9.0)"] jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] uvloop = ["uvloop (>=0.15.2)"] +[[package]] +name = "cachetools" +version = "5.5.0" +description = "Extensible memoizing collections and decorators" +optional = false +python-versions = ">=3.7" +files = [ + {file = "cachetools-5.5.0-py3-none-any.whl", hash = "sha256:02134e8439cdc2ffb62023ce1debca2944c3f289d66bb17ead3ab3dede74b292"}, + {file = "cachetools-5.5.0.tar.gz", hash = "sha256:2cc24fb4cbe39633fb7badd9db9ca6295d766d9c2995f245725a46715d050f2a"}, +] + [[package]] name = "certifi" version = "2024.8.30" @@ -310,101 +156,116 @@ files = [ [[package]] name = "charset-normalizer" -version = "3.3.2" +version = "3.4.0" 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"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4f9fc98dad6c2eaa32fc3af1417d95b5e3d08aff968df0cd320066def971f9a6"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0de7b687289d3c1b3e8660d0741874abe7888100efe14bd0f9fd7141bcbda92b"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5ed2e36c3e9b4f21dd9422f6893dec0abf2cca553af509b10cd630f878d3eb99"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40d3ff7fc90b98c637bda91c89d51264a3dcf210cade3a2c6f838c7268d7a4ca"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1110e22af8ca26b90bd6364fe4c763329b0ebf1ee213ba32b68c73de5752323d"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:86f4e8cca779080f66ff4f191a685ced73d2f72d50216f7112185dc02b90b9b7"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7f683ddc7eedd742e2889d2bfb96d69573fde1d92fcb811979cdb7165bb9c7d3"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27623ba66c183eca01bf9ff833875b459cad267aeeb044477fedac35e19ba907"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:f606a1881d2663630ea5b8ce2efe2111740df4b687bd78b34a8131baa007f79b"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0b309d1747110feb25d7ed6b01afdec269c647d382c857ef4663bbe6ad95a912"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:136815f06a3ae311fae551c3df1f998a1ebd01ddd424aa5603a4336997629e95"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:14215b71a762336254351b00ec720a8e85cada43b987da5a042e4ce3e82bd68e"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:79983512b108e4a164b9c8d34de3992f76d48cadc9554c9e60b43f308988aabe"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-win32.whl", hash = "sha256:c94057af19bc953643a33581844649a7fdab902624d2eb739738a30e2b3e60fc"}, + {file = "charset_normalizer-3.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:55f56e2ebd4e3bc50442fbc0888c9d8c94e4e06a933804e2af3e89e2f9c1c749"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:0d99dd8ff461990f12d6e42c7347fd9ab2532fb70e9621ba520f9e8637161d7c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c57516e58fd17d03ebe67e181a4e4e2ccab1168f8c2976c6a334d4f819fe5944"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:6dba5d19c4dfab08e58d5b36304b3f92f3bd5d42c1a3fa37b5ba5cdf6dfcbcee"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf4475b82be41b07cc5e5ff94810e6a01f276e37c2d55571e3fe175e467a1a1c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce031db0408e487fd2775d745ce30a7cd2923667cf3b69d48d219f1d8f5ddeb6"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8ff4e7cdfdb1ab5698e675ca622e72d58a6fa2a8aa58195de0c0061288e6e3ea"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3710a9751938947e6327ea9f3ea6332a09bf0ba0c09cae9cb1f250bd1f1549bc"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:82357d85de703176b5587dbe6ade8ff67f9f69a41c0733cf2425378b49954de5"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:47334db71978b23ebcf3c0f9f5ee98b8d65992b65c9c4f2d34c2eaf5bcaf0594"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8ce7fd6767a1cc5a92a639b391891bf1c268b03ec7e021c7d6d902285259685c"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f1a2f519ae173b5b6a2c9d5fa3116ce16e48b3462c8b96dfdded11055e3d6365"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:63bc5c4ae26e4bc6be6469943b8253c0fd4e4186c43ad46e713ea61a0ba49129"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:bcb4f8ea87d03bc51ad04add8ceaf9b0f085ac045ab4d74e73bbc2dc033f0236"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-win32.whl", hash = "sha256:9ae4ef0b3f6b41bad6366fb0ea4fc1d7ed051528e113a60fa2a65a9abb5b1d99"}, + {file = "charset_normalizer-3.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:cee4373f4d3ad28f1ab6290684d8e2ebdb9e7a1b74fdc39e4c211995f77bec27"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0713f3adb9d03d49d365b70b84775d0a0d18e4ab08d12bc46baa6132ba78aaf6"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:de7376c29d95d6719048c194a9cf1a1b0393fbe8488a22008610b0361d834ecf"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4a51b48f42d9358460b78725283f04bddaf44a9358197b889657deba38f329db"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b295729485b06c1a0683af02a9e42d2caa9db04a373dc38a6a58cdd1e8abddf1"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee803480535c44e7f5ad00788526da7d85525cfefaf8acf8ab9a310000be4b03"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d59d125ffbd6d552765510e3f31ed75ebac2c7470c7274195b9161a32350284"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8cda06946eac330cbe6598f77bb54e690b4ca93f593dee1568ad22b04f347c15"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07afec21bbbbf8a5cc3651aa96b980afe2526e7f048fdfb7f1014d84acc8b6d8"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6b40e8d38afe634559e398cc32b1472f376a4099c75fe6299ae607e404c033b2"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b8dcd239c743aa2f9c22ce674a145e0a25cb1566c495928440a181ca1ccf6719"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:84450ba661fb96e9fd67629b93d2941c871ca86fc38d835d19d4225ff946a631"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:44aeb140295a2f0659e113b31cfe92c9061622cadbc9e2a2f7b8ef6b1e29ef4b"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:1db4e7fefefd0f548d73e2e2e041f9df5c59e178b4c72fbac4cc6f535cfb1565"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-win32.whl", hash = "sha256:5726cf76c982532c1863fb64d8c6dd0e4c90b6ece9feb06c9f202417a31f7dd7"}, + {file = "charset_normalizer-3.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:b197e7094f232959f8f20541ead1d9862ac5ebea1d58e9849c1bf979255dfac9"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:dd4eda173a9fcccb5f2e2bd2a9f423d180194b1bf17cf59e3269899235b2a114"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e9e3c4c9e1ed40ea53acf11e2a386383c3304212c965773704e4603d589343ed"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:92a7e36b000bf022ef3dbb9c46bfe2d52c047d5e3f3343f43204263c5addc250"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:54b6a92d009cbe2fb11054ba694bc9e284dad30a26757b1e372a1fdddaf21920"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ffd9493de4c922f2a38c2bf62b831dcec90ac673ed1ca182fe11b4d8e9f2a64"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:35c404d74c2926d0287fbd63ed5d27eb911eb9e4a3bb2c6d294f3cfd4a9e0c23"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4796efc4faf6b53a18e3d46343535caed491776a22af773f366534056c4e1fbc"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e7fdd52961feb4c96507aa649550ec2a0d527c086d284749b2f582f2d40a2e0d"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:92db3c28b5b2a273346bebb24857fda45601aef6ae1c011c0a997106581e8a88"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ab973df98fc99ab39080bfb0eb3a925181454d7c3ac8a1e695fddfae696d9e90"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4b67fdab07fdd3c10bb21edab3cbfe8cf5696f453afce75d815d9d7223fbe88b"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:aa41e526a5d4a9dfcfbab0716c7e8a1b215abd3f3df5a45cf18a12721d31cb5d"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ffc519621dce0c767e96b9c53f09c5d215578e10b02c285809f76509a3931482"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-win32.whl", hash = "sha256:f19c1585933c82098c2a520f8ec1227f20e339e33aca8fa6f956f6691b784e67"}, + {file = "charset_normalizer-3.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:707b82d19e65c9bd28b81dde95249b07bf9f5b90ebe1ef17d9b57473f8a64b7b"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:dbe03226baf438ac4fda9e2d0715022fd579cb641c4cf639fa40d53b2fe6f3e2"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd9a8bd8900e65504a305bf8ae6fa9fbc66de94178c420791d0293702fce2df7"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b8831399554b92b72af5932cdbbd4ddc55c55f631bb13ff8fe4e6536a06c5c51"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a14969b8691f7998e74663b77b4c36c0337cb1df552da83d5c9004a93afdb574"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dcaf7c1524c0542ee2fc82cc8ec337f7a9f7edee2532421ab200d2b920fc97cf"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:425c5f215d0eecee9a56cdb703203dda90423247421bf0d67125add85d0c4455"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:d5b054862739d276e09928de37c79ddeec42a6e1bfc55863be96a36ba22926f6"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:f3e73a4255342d4eb26ef6df01e3962e73aa29baa3124a8e824c5d3364a65748"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:2f6c34da58ea9c1a9515621f4d9ac379871a8f21168ba1b5e09d74250de5ad62"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:f09cb5a7bbe1ecae6e87901a2eb23e0256bb524a79ccc53eb0b7629fbe7677c4"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:0099d79bdfcf5c1f0c2c72f91516702ebf8b0b8ddd8905f97a8aecf49712c621"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-win32.whl", hash = "sha256:9c98230f5042f4945f957d006edccc2af1e03ed5e37ce7c373f00a5a4daa6149"}, + {file = "charset_normalizer-3.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:62f60aebecfc7f4b82e3f639a7d1433a20ec32824db2199a11ad4f5e146ef5ee"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:af73657b7a68211996527dbfeffbb0864e043d270580c5aef06dc4b659a4b578"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cab5d0b79d987c67f3b9e9c53f54a61360422a5a0bc075f43cab5621d530c3b6"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:9289fd5dddcf57bab41d044f1756550f9e7cf0c8e373b8cdf0ce8773dc4bd417"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b493a043635eb376e50eedf7818f2f322eabbaa974e948bd8bdd29eb7ef2a51"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9fa2566ca27d67c86569e8c85297aaf413ffab85a8960500f12ea34ff98e4c41"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8e538f46104c815be19c975572d74afb53f29650ea2025bbfaef359d2de2f7f"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fd30dc99682dc2c603c2b315bded2799019cea829f8bf57dc6b61efde6611c8"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2006769bd1640bdf4d5641c69a3d63b71b81445473cac5ded39740a226fa88ab"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:dc15e99b2d8a656f8e666854404f1ba54765871104e50c8e9813af8a7db07f12"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:ab2e5bef076f5a235c3774b4f4028a680432cded7cad37bba0fd90d64b187d19"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:4ec9dd88a5b71abfc74e9df5ebe7921c35cbb3b641181a531ca65cdb5e8e4dea"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:43193c5cda5d612f247172016c4bb71251c784d7a4d9314677186a838ad34858"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:aa693779a8b50cd97570e5a0f343538a8dbd3e496fa5dcb87e29406ad0299654"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-win32.whl", hash = "sha256:7706f5850360ac01d80c89bcef1640683cc12ed87f42579dab6c5d3ed6888613"}, + {file = "charset_normalizer-3.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:c3e446d253bd88f6377260d07c895816ebf33ffffd56c1c792b13bff9c3e1ade"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:980b4f289d1d90ca5efcf07958d3eb38ed9c0b7676bf2831a54d4f66f9c27dfa"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f28f891ccd15c514a0981f3b9db9aa23d62fe1a99997512b0491d2ed323d229a"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8aacce6e2e1edcb6ac625fb0f8c3a9570ccc7bfba1f63419b3769ccf6a00ed0"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bd7af3717683bea4c87acd8c0d3d5b44d56120b26fd3f8a692bdd2d5260c620a"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ff2ed8194587faf56555927b3aa10e6fb69d931e33953943bc4f837dfee2242"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e91f541a85298cf35433bf66f3fab2a4a2cff05c127eeca4af174f6d497f0d4b"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:309a7de0a0ff3040acaebb35ec45d18db4b28232f21998851cfa709eeff49d62"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:285e96d9d53422efc0d7a17c60e59f37fbf3dfa942073f666db4ac71e8d726d0"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5d447056e2ca60382d460a604b6302d8db69476fd2015c81e7c35417cfabe4cd"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:20587d20f557fe189b7947d8e7ec5afa110ccf72a3128d61a2a387c3313f46be"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:130272c698667a982a5d0e626851ceff662565379baf0ff2cc58067b81d4f11d"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:ab22fbd9765e6954bc0bcff24c25ff71dcbfdb185fcdaca49e81bac68fe724d3"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7782afc9b6b42200f7362858f9e73b1f8316afb276d316336c0ec3bd73312742"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-win32.whl", hash = "sha256:2de62e8801ddfff069cd5c504ce3bc9672b23266597d4e4f50eda28846c322f2"}, + {file = "charset_normalizer-3.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:95c3c157765b031331dd4db3c775e58deaee050a3042fcad72cbc4189d7c8dca"}, + {file = "charset_normalizer-3.4.0-py3-none-any.whl", hash = "sha256:fe9f97feb71aa9896b81973a7bbada8c49501dc73e58a10fcef6663af95e5079"}, + {file = "charset_normalizer-3.4.0.tar.gz", hash = "sha256:223217c3d4f82c3ac5e29032b3f1c2eb0fb591b72161f86d93f5719079dae93e"}, ] [[package]] @@ -421,35 +282,6 @@ files = [ [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} -[[package]] -name = "cmake" -version = "3.30.3" -description = "CMake is an open-source, cross-platform family of tools designed to build, test and package software" -optional = false -python-versions = ">=3.7" -files = [ - {file = "cmake-3.30.3-py3-none-macosx_11_0_universal2.macosx_11_0_arm64.macosx_10_10_x86_64.whl", hash = "sha256:8cc4c67432cca5e7a24a74eb102bc0472581a71231e58c224e544373dcb147a7"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:1ca7e29f5952634274d33ec1cb0cd9ddb79cb0b09cc3887b55d24c9852eed9d0"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:30c2cdf8a863573a5fd7bf39159fbb96e75ac1955e481d35e5295ac601ea23af"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:81e5dc3103a4c6594d3efdf652e21e21d610e264f0c489ebefa3db04b1cdd2bc"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fc5fba153bd0255adb246f27358d98db597a62264b61970d32038f9c7f355a70"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a5ac1157eaa1e95bd67f11bd6ebc6f85b42ce6f2aac7b93d28dd84a5230be55b"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ba26cb3c19f5b4cb83787394647a5dafbd2922a6de4af39409d7d287536a617f"}, - {file = "cmake-3.30.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e294e3f424175b085809f713dd7ee36edd36b6b8a579911ef90359d8f884658"}, - {file = "cmake-3.30.3-py3-none-musllinux_1_1_aarch64.whl", hash = "sha256:1616e2806c4c85e21fd0b6e92a61d41cb47479b5305bfa6f0c00baacfd029d7d"}, - {file = "cmake-3.30.3-py3-none-musllinux_1_1_i686.whl", hash = "sha256:c98cf8980ed75dd15be9948da559a51ce4cd0f017fc44969a72dcd37f507fa61"}, - {file = "cmake-3.30.3-py3-none-musllinux_1_1_ppc64le.whl", hash = "sha256:870ebf590fb2f7cc58c8aa5b4dc32b50d4ca9c2fb9f1e46cd0426a995a2ef71e"}, - {file = "cmake-3.30.3-py3-none-musllinux_1_1_s390x.whl", hash = "sha256:592cfcf280570713b8743bf8a8dec3753e0b82a7791d7d79f5ddb4f2be8b48b8"}, - {file = "cmake-3.30.3-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:e0fd7746f8895ec54e20c5d5dcc76a42256483e1f4736050264a180a13f9f8ef"}, - {file = "cmake-3.30.3-py3-none-win32.whl", hash = "sha256:ca990748d1a1d778a1a31cc1e33dcb01f2ed6fb0a752e945ff9e2d5435cff191"}, - {file = "cmake-3.30.3-py3-none-win_amd64.whl", hash = "sha256:3b41b0fbf3b449dd387c71444c9eb7f23e9a8061554bbf8fd8157ee355427220"}, - {file = "cmake-3.30.3-py3-none-win_arm64.whl", hash = "sha256:a9e14118824992313bd0e2b3b86d9c85d7883c39b784199ea755fc32aeeb9e81"}, - {file = "cmake-3.30.3.tar.gz", hash = "sha256:c015d02e5f25973b66b66a060d3ad8c1c382cf38ba7b09712770d9de50b67b80"}, -] - -[package.extras] -test = ["coverage (>=4.2)", "pytest (>=3.0.3)", "pytest-cov (>=2.4.0)"] - [[package]] name = "colorama" version = "0.4.6" @@ -462,104 +294,16 @@ files = [ ] [[package]] -name = "contourpy" -version = "1.3.0" -description = "Python library for calculating contours of 2D quadrilateral grids" -optional = false -python-versions = ">=3.9" -files = [ - {file = "contourpy-1.3.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:880ea32e5c774634f9fcd46504bf9f080a41ad855f4fef54f5380f5133d343c7"}, - {file = "contourpy-1.3.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:76c905ef940a4474a6289c71d53122a4f77766eef23c03cd57016ce19d0f7b42"}, - {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:92f8557cbb07415a4d6fa191f20fd9d2d9eb9c0b61d1b2f52a8926e43c6e9af7"}, - {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:36f965570cff02b874773c49bfe85562b47030805d7d8360748f3eca570f4cab"}, - {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cacd81e2d4b6f89c9f8a5b69b86490152ff39afc58a95af002a398273e5ce589"}, - {file = "contourpy-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:69375194457ad0fad3a839b9e29aa0b0ed53bb54db1bfb6c3ae43d111c31ce41"}, - {file = "contourpy-1.3.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:7a52040312b1a858b5e31ef28c2e865376a386c60c0e248370bbea2d3f3b760d"}, - {file = "contourpy-1.3.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3faeb2998e4fcb256542e8a926d08da08977f7f5e62cf733f3c211c2a5586223"}, - {file = "contourpy-1.3.0-cp310-cp310-win32.whl", hash = "sha256:36e0cff201bcb17a0a8ecc7f454fe078437fa6bda730e695a92f2d9932bd507f"}, - {file = "contourpy-1.3.0-cp310-cp310-win_amd64.whl", hash = "sha256:87ddffef1dbe5e669b5c2440b643d3fdd8622a348fe1983fad7a0f0ccb1cd67b"}, - {file = "contourpy-1.3.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0fa4c02abe6c446ba70d96ece336e621efa4aecae43eaa9b030ae5fb92b309ad"}, - {file = "contourpy-1.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:834e0cfe17ba12f79963861e0f908556b2cedd52e1f75e6578801febcc6a9f49"}, - {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dbc4c3217eee163fa3984fd1567632b48d6dfd29216da3ded3d7b844a8014a66"}, - {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4865cd1d419e0c7a7bf6de1777b185eebdc51470800a9f42b9e9decf17762081"}, - {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:303c252947ab4b14c08afeb52375b26781ccd6a5ccd81abcdfc1fafd14cf93c1"}, - {file = "contourpy-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:637f674226be46f6ba372fd29d9523dd977a291f66ab2a74fbeb5530bb3f445d"}, - {file = "contourpy-1.3.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:76a896b2f195b57db25d6b44e7e03f221d32fe318d03ede41f8b4d9ba1bff53c"}, - {file = "contourpy-1.3.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e1fd23e9d01591bab45546c089ae89d926917a66dceb3abcf01f6105d927e2cb"}, - {file = "contourpy-1.3.0-cp311-cp311-win32.whl", hash = "sha256:d402880b84df3bec6eab53cd0cf802cae6a2ef9537e70cf75e91618a3801c20c"}, - {file = "contourpy-1.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:6cb6cc968059db9c62cb35fbf70248f40994dfcd7aa10444bbf8b3faeb7c2d67"}, - {file = "contourpy-1.3.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:570ef7cf892f0afbe5b2ee410c507ce12e15a5fa91017a0009f79f7d93a1268f"}, - {file = "contourpy-1.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:da84c537cb8b97d153e9fb208c221c45605f73147bd4cadd23bdae915042aad6"}, - {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0be4d8425bfa755e0fd76ee1e019636ccc7c29f77a7c86b4328a9eb6a26d0639"}, - {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c0da700bf58f6e0b65312d0a5e695179a71d0163957fa381bb3c1f72972537c"}, - {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eb8b141bb00fa977d9122636b16aa67d37fd40a3d8b52dd837e536d64b9a4d06"}, - {file = "contourpy-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3634b5385c6716c258d0419c46d05c8aa7dc8cb70326c9a4fb66b69ad2b52e09"}, - {file = "contourpy-1.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0dce35502151b6bd35027ac39ba6e5a44be13a68f55735c3612c568cac3805fd"}, - {file = "contourpy-1.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:aea348f053c645100612b333adc5983d87be69acdc6d77d3169c090d3b01dc35"}, - {file = "contourpy-1.3.0-cp312-cp312-win32.whl", hash = "sha256:90f73a5116ad1ba7174341ef3ea5c3150ddf20b024b98fb0c3b29034752c8aeb"}, - {file = "contourpy-1.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:b11b39aea6be6764f84360fce6c82211a9db32a7c7de8fa6dd5397cf1d079c3b"}, - {file = "contourpy-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3e1c7fa44aaae40a2247e2e8e0627f4bea3dd257014764aa644f319a5f8600e3"}, - {file = "contourpy-1.3.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:364174c2a76057feef647c802652f00953b575723062560498dc7930fc9b1cb7"}, - {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:32b238b3b3b649e09ce9aaf51f0c261d38644bdfa35cbaf7b263457850957a84"}, - {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d51fca85f9f7ad0b65b4b9fe800406d0d77017d7270d31ec3fb1cc07358fdea0"}, - {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:732896af21716b29ab3e988d4ce14bc5133733b85956316fb0c56355f398099b"}, - {file = "contourpy-1.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d73f659398a0904e125280836ae6f88ba9b178b2fed6884f3b1f95b989d2c8da"}, - {file = "contourpy-1.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c6c7c2408b7048082932cf4e641fa3b8ca848259212f51c8c59c45aa7ac18f14"}, - {file = "contourpy-1.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f317576606de89da6b7e0861cf6061f6146ead3528acabff9236458a6ba467f8"}, - {file = "contourpy-1.3.0-cp313-cp313-win32.whl", hash = "sha256:31cd3a85dbdf1fc002280c65caa7e2b5f65e4a973fcdf70dd2fdcb9868069294"}, - {file = "contourpy-1.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:4553c421929ec95fb07b3aaca0fae668b2eb5a5203d1217ca7c34c063c53d087"}, - {file = "contourpy-1.3.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:345af746d7766821d05d72cb8f3845dfd08dd137101a2cb9b24de277d716def8"}, - {file = "contourpy-1.3.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3bb3808858a9dc68f6f03d319acd5f1b8a337e6cdda197f02f4b8ff67ad2057b"}, - {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:420d39daa61aab1221567b42eecb01112908b2cab7f1b4106a52caaec8d36973"}, - {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4d63ee447261e963af02642ffcb864e5a2ee4cbfd78080657a9880b8b1868e18"}, - {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:167d6c890815e1dac9536dca00828b445d5d0df4d6a8c6adb4a7ec3166812fa8"}, - {file = "contourpy-1.3.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:710a26b3dc80c0e4febf04555de66f5fd17e9cf7170a7b08000601a10570bda6"}, - {file = "contourpy-1.3.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:75ee7cb1a14c617f34a51d11fa7524173e56551646828353c4af859c56b766e2"}, - {file = "contourpy-1.3.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:33c92cdae89ec5135d036e7218e69b0bb2851206077251f04a6c4e0e21f03927"}, - {file = "contourpy-1.3.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a11077e395f67ffc2c44ec2418cfebed032cd6da3022a94fc227b6faf8e2acb8"}, - {file = "contourpy-1.3.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e8134301d7e204c88ed7ab50028ba06c683000040ede1d617298611f9dc6240c"}, - {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e12968fdfd5bb45ffdf6192a590bd8ddd3ba9e58360b29683c6bb71a7b41edca"}, - {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fd2a0fc506eccaaa7595b7e1418951f213cf8255be2600f1ea1b61e46a60c55f"}, - {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4cfb5c62ce023dfc410d6059c936dcf96442ba40814aefbfa575425a3a7f19dc"}, - {file = "contourpy-1.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:68a32389b06b82c2fdd68276148d7b9275b5f5cf13e5417e4252f6d1a34f72a2"}, - {file = "contourpy-1.3.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:94e848a6b83da10898cbf1311a815f770acc9b6a3f2d646f330d57eb4e87592e"}, - {file = "contourpy-1.3.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:d78ab28a03c854a873787a0a42254a0ccb3cb133c672f645c9f9c8f3ae9d0800"}, - {file = "contourpy-1.3.0-cp39-cp39-win32.whl", hash = "sha256:81cb5ed4952aae6014bc9d0421dec7c5835c9c8c31cdf51910b708f548cf58e5"}, - {file = "contourpy-1.3.0-cp39-cp39-win_amd64.whl", hash = "sha256:14e262f67bd7e6eb6880bc564dcda30b15e351a594657e55b7eec94b6ef72843"}, - {file = "contourpy-1.3.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:fe41b41505a5a33aeaed2a613dccaeaa74e0e3ead6dd6fd3a118fb471644fd6c"}, - {file = "contourpy-1.3.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eca7e17a65f72a5133bdbec9ecf22401c62bcf4821361ef7811faee695799779"}, - {file = "contourpy-1.3.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:1ec4dc6bf570f5b22ed0d7efba0dfa9c5b9e0431aeea7581aa217542d9e809a4"}, - {file = "contourpy-1.3.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:00ccd0dbaad6d804ab259820fa7cb0b8036bda0686ef844d24125d8287178ce0"}, - {file = "contourpy-1.3.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8ca947601224119117f7c19c9cdf6b3ab54c5726ef1d906aa4a69dfb6dd58102"}, - {file = "contourpy-1.3.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:c6ec93afeb848a0845a18989da3beca3eec2c0f852322efe21af1931147d12cb"}, - {file = "contourpy-1.3.0.tar.gz", hash = "sha256:7ffa0db17717a8ffb127efd0c95a4362d996b892c2904db72428d5b52e1938a4"}, -] - -[package.dependencies] -numpy = ">=1.23" - -[package.extras] -bokeh = ["bokeh", "selenium"] -docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] -mypy = ["contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.11.1)", "types-Pillow"] -test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] -test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist", "wurlitzer"] - -[[package]] -name = "cycler" -version = "0.12.1" -description = "Composable style cycles" +name = "durationpy" +version = "0.9" +description = "Module for converting between datetime.timedelta and Go's Duration strings." optional = false -python-versions = ">=3.8" +python-versions = "*" files = [ - {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, - {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, + {file = "durationpy-0.9-py3-none-any.whl", hash = "sha256:e65359a7af5cedad07fb77a2dd3f390f8eb0b74cb845589fa6c057086834dd38"}, + {file = "durationpy-0.9.tar.gz", hash = "sha256:fd3feb0a69a0057d582ef643c355c40d2fa1c942191f914d12203b1a01ac722a"}, ] -[package.extras] -docs = ["ipython", "matplotlib", "numpydoc", "sphinx"] -tests = ["pytest", "pytest-cov", "pytest-xdist"] - [[package]] name = "exceptiongroup" version = "1.2.2" @@ -576,18 +320,18 @@ test = ["pytest (>=6)"] [[package]] name = "fastapi" -version = "0.115.0" +version = "0.115.5" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" optional = false python-versions = ">=3.8" files = [ - {file = "fastapi-0.115.0-py3-none-any.whl", hash = "sha256:17ea427674467486e997206a5ab25760f6b09e069f099b96f5b55a32fb6f1631"}, - {file = "fastapi-0.115.0.tar.gz", hash = "sha256:f93b4ca3529a8ebc6fc3fcf710e5efa8de3df9b41570958abf1d97d843138004"}, + {file = "fastapi-0.115.5-py3-none-any.whl", hash = "sha256:596b95adbe1474da47049e802f9a65ab2ffa9c2b07e7efee70eb8a66c9f2f796"}, + {file = "fastapi-0.115.5.tar.gz", hash = "sha256:0e7a4d0dc0d01c68df21887cce0945e72d3c48b9f4f79dfe7a7d53aa08fbb289"}, ] [package.dependencies] pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0" -starlette = ">=0.37.2,<0.39.0" +starlette = ">=0.40.0,<0.42.0" typing-extensions = ">=4.8.0" [package.extras] @@ -621,166 +365,15 @@ docs = ["furo (>=2024.8.6)", "sphinx (>=8.0.2)", "sphinx-autodoc-typehints (>=2. testing = ["covdefaults (>=2.3)", "coverage (>=7.6.1)", "diff-cover (>=9.2)", "pytest (>=8.3.3)", "pytest-asyncio (>=0.24)", "pytest-cov (>=5)", "pytest-mock (>=3.14)", "pytest-timeout (>=2.3.1)", "virtualenv (>=20.26.4)"] typing = ["typing-extensions (>=4.12.2)"] -[[package]] -name = "fonttools" -version = "4.53.1" -description = "Tools to manipulate font files" -optional = false -python-versions = ">=3.8" -files = [ - {file = "fonttools-4.53.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0679a30b59d74b6242909945429dbddb08496935b82f91ea9bf6ad240ec23397"}, - {file = "fonttools-4.53.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e8bf06b94694251861ba7fdeea15c8ec0967f84c3d4143ae9daf42bbc7717fe3"}, - {file = "fonttools-4.53.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b96cd370a61f4d083c9c0053bf634279b094308d52fdc2dd9a22d8372fdd590d"}, - {file = "fonttools-4.53.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a1c7c5aa18dd3b17995898b4a9b5929d69ef6ae2af5b96d585ff4005033d82f0"}, - {file = "fonttools-4.53.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e013aae589c1c12505da64a7d8d023e584987e51e62006e1bb30d72f26522c41"}, - {file = "fonttools-4.53.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:9efd176f874cb6402e607e4cc9b4a9cd584d82fc34a4b0c811970b32ba62501f"}, - {file = "fonttools-4.53.1-cp310-cp310-win32.whl", hash = "sha256:c8696544c964500aa9439efb6761947393b70b17ef4e82d73277413f291260a4"}, - {file = "fonttools-4.53.1-cp310-cp310-win_amd64.whl", hash = "sha256:8959a59de5af6d2bec27489e98ef25a397cfa1774b375d5787509c06659b3671"}, - {file = "fonttools-4.53.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:da33440b1413bad53a8674393c5d29ce64d8c1a15ef8a77c642ffd900d07bfe1"}, - {file = "fonttools-4.53.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ff7e5e9bad94e3a70c5cd2fa27f20b9bb9385e10cddab567b85ce5d306ea923"}, - {file = "fonttools-4.53.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6e7170d675d12eac12ad1a981d90f118c06cf680b42a2d74c6c931e54b50719"}, - {file = "fonttools-4.53.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bee32ea8765e859670c4447b0817514ca79054463b6b79784b08a8df3a4d78e3"}, - {file = "fonttools-4.53.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6e08f572625a1ee682115223eabebc4c6a2035a6917eac6f60350aba297ccadb"}, - {file = "fonttools-4.53.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:b21952c092ffd827504de7e66b62aba26fdb5f9d1e435c52477e6486e9d128b2"}, - {file = "fonttools-4.53.1-cp311-cp311-win32.whl", hash = "sha256:9dfdae43b7996af46ff9da520998a32b105c7f098aeea06b2226b30e74fbba88"}, - {file = "fonttools-4.53.1-cp311-cp311-win_amd64.whl", hash = "sha256:d4d0096cb1ac7a77b3b41cd78c9b6bc4a400550e21dc7a92f2b5ab53ed74eb02"}, - {file = "fonttools-4.53.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:d92d3c2a1b39631a6131c2fa25b5406855f97969b068e7e08413325bc0afba58"}, - {file = "fonttools-4.53.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3b3c8ebafbee8d9002bd8f1195d09ed2bd9ff134ddec37ee8f6a6375e6a4f0e8"}, - {file = "fonttools-4.53.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:32f029c095ad66c425b0ee85553d0dc326d45d7059dbc227330fc29b43e8ba60"}, - {file = "fonttools-4.53.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10f5e6c3510b79ea27bb1ebfcc67048cde9ec67afa87c7dd7efa5c700491ac7f"}, - {file = "fonttools-4.53.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:f677ce218976496a587ab17140da141557beb91d2a5c1a14212c994093f2eae2"}, - {file = "fonttools-4.53.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:9e6ceba2a01b448e36754983d376064730690401da1dd104ddb543519470a15f"}, - {file = "fonttools-4.53.1-cp312-cp312-win32.whl", hash = "sha256:791b31ebbc05197d7aa096bbc7bd76d591f05905d2fd908bf103af4488e60670"}, - {file = "fonttools-4.53.1-cp312-cp312-win_amd64.whl", hash = "sha256:6ed170b5e17da0264b9f6fae86073be3db15fa1bd74061c8331022bca6d09bab"}, - {file = "fonttools-4.53.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:c818c058404eb2bba05e728d38049438afd649e3c409796723dfc17cd3f08749"}, - {file = "fonttools-4.53.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:651390c3b26b0c7d1f4407cad281ee7a5a85a31a110cbac5269de72a51551ba2"}, - {file = "fonttools-4.53.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e54f1bba2f655924c1138bbc7fa91abd61f45c68bd65ab5ed985942712864bbb"}, - {file = "fonttools-4.53.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c9cd19cf4fe0595ebdd1d4915882b9440c3a6d30b008f3cc7587c1da7b95be5f"}, - {file = "fonttools-4.53.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:2af40ae9cdcb204fc1d8f26b190aa16534fcd4f0df756268df674a270eab575d"}, - {file = "fonttools-4.53.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:35250099b0cfb32d799fb5d6c651220a642fe2e3c7d2560490e6f1d3f9ae9169"}, - {file = "fonttools-4.53.1-cp38-cp38-win32.whl", hash = "sha256:f08df60fbd8d289152079a65da4e66a447efc1d5d5a4d3f299cdd39e3b2e4a7d"}, - {file = "fonttools-4.53.1-cp38-cp38-win_amd64.whl", hash = "sha256:7b6b35e52ddc8fb0db562133894e6ef5b4e54e1283dff606fda3eed938c36fc8"}, - {file = "fonttools-4.53.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:75a157d8d26c06e64ace9df037ee93a4938a4606a38cb7ffaf6635e60e253b7a"}, - {file = "fonttools-4.53.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:4824c198f714ab5559c5be10fd1adf876712aa7989882a4ec887bf1ef3e00e31"}, - {file = "fonttools-4.53.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:becc5d7cb89c7b7afa8321b6bb3dbee0eec2b57855c90b3e9bf5fb816671fa7c"}, - {file = "fonttools-4.53.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:84ec3fb43befb54be490147b4a922b5314e16372a643004f182babee9f9c3407"}, - {file = "fonttools-4.53.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:73379d3ffdeecb376640cd8ed03e9d2d0e568c9d1a4e9b16504a834ebadc2dfb"}, - {file = "fonttools-4.53.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:02569e9a810f9d11f4ae82c391ebc6fb5730d95a0657d24d754ed7763fb2d122"}, - {file = "fonttools-4.53.1-cp39-cp39-win32.whl", hash = "sha256:aae7bd54187e8bf7fd69f8ab87b2885253d3575163ad4d669a262fe97f0136cb"}, - {file = "fonttools-4.53.1-cp39-cp39-win_amd64.whl", hash = "sha256:e5b708073ea3d684235648786f5f6153a48dc8762cdfe5563c57e80787c29fbb"}, - {file = "fonttools-4.53.1-py3-none-any.whl", hash = "sha256:f1f8758a2ad110bd6432203a344269f445a2907dc24ef6bccfd0ac4e14e0d71d"}, - {file = "fonttools-4.53.1.tar.gz", hash = "sha256:e128778a8e9bc11159ce5447f76766cefbd876f44bd79aff030287254e4752c4"}, -] - -[package.extras] -all = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "fs (>=2.2.0,<3)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres", "pycairo", "scipy", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0)", "xattr", "zopfli (>=0.1.4)"] -graphite = ["lz4 (>=1.7.4.2)"] -interpolatable = ["munkres", "pycairo", "scipy"] -lxml = ["lxml (>=4.0)"] -pathops = ["skia-pathops (>=0.5.0)"] -plot = ["matplotlib"] -repacker = ["uharfbuzz (>=0.23.0)"] -symfont = ["sympy"] -type1 = ["xattr"] -ufo = ["fs (>=2.2.0,<3)"] -unicode = ["unicodedata2 (>=15.1.0)"] -woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] - -[[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.9.0" +version = "2024.10.0" description = "File-system specification" optional = false python-versions = ">=3.8" files = [ - {file = "fsspec-2024.9.0-py3-none-any.whl", hash = "sha256:a0947d552d8a6efa72cc2c730b12c41d043509156966cca4fb157b0f2a0c574b"}, - {file = "fsspec-2024.9.0.tar.gz", hash = "sha256:4b0afb90c2f21832df142f292649035d80b421f60a9e1c027802e5a0da2b04e8"}, + {file = "fsspec-2024.10.0-py3-none-any.whl", hash = "sha256:03b9a6785766a4de40368b88906366755e2819e758b83705c88cd7cb5fe81871"}, + {file = "fsspec-2024.10.0.tar.gz", hash = "sha256:eda2d8a4116d4f2429db8550f2457da57279247dd930bb12f821b58391359493"}, ] [package.extras] @@ -811,66 +404,90 @@ test-downstream = ["aiobotocore (>=2.5.4,<3.0.0)", "dask-expr", "dask[dataframe, test-full = ["adlfs", "aiohttp (!=4.0.0a0,!=4.0.0a1)", "cloudpickle", "dask", "distributed", "dropbox", "dropboxdrivefs", "fastparquet", "fusepy", "gcsfs", "jinja2", "kerchunk", "libarchive-c", "lz4", "notebook", "numpy", "ocifs", "pandas", "panel", "paramiko", "pyarrow", "pyarrow (>=1)", "pyftpdlib", "pygit2", "pytest", "pytest-asyncio (!=0.22.0)", "pytest-benchmark", "pytest-cov", "pytest-mock", "pytest-recording", "pytest-rerunfailures", "python-snappy", "requests", "smbprotocol", "tqdm", "urllib3", "zarr", "zstandard"] tqdm = ["tqdm"] +[[package]] +name = "google-auth" +version = "2.36.0" +description = "Google Authentication Library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "google_auth-2.36.0-py2.py3-none-any.whl", hash = "sha256:51a15d47028b66fd36e5c64a82d2d57480075bccc7da37cde257fc94177a61fb"}, + {file = "google_auth-2.36.0.tar.gz", hash = "sha256:545e9618f2df0bcbb7dcbc45a546485b1212624716975a1ea5ae8149ce769ab1"}, +] + +[package.dependencies] +cachetools = ">=2.0.0,<6.0" +pyasn1-modules = ">=0.2.1" +rsa = ">=3.1.4,<5" + +[package.extras] +aiohttp = ["aiohttp (>=3.6.2,<4.0.0.dev0)", "requests (>=2.20.0,<3.0.0.dev0)"] +enterprise-cert = ["cryptography", "pyopenssl"] +pyopenssl = ["cryptography (>=38.0.3)", "pyopenssl (>=20.0.0)"] +reauth = ["pyu2f (>=0.1.5)"] +requests = ["requests (>=2.20.0,<3.0.0.dev0)"] + [[package]] name = "gradio" -version = "3.41.0" +version = "5.6.0" description = "Python library for easily interacting with trained machine learning models" optional = false -python-versions = ">=3.8" +python-versions = ">=3.10" files = [ - {file = "gradio-3.41.0-py3-none-any.whl", hash = "sha256:f6576881919ba1e1523febb70d963b42324c64c87c2417beabc2a2a015e61d81"}, - {file = "gradio-3.41.0.tar.gz", hash = "sha256:762dec6947fe00457d3d76398ee1363f92403de4838796f9a10fd0644c9ed18d"}, + {file = "gradio-5.6.0-py3-none-any.whl", hash = "sha256:6eba135b32fb2fcb5d83fa845f6ad57c033894d5218fd3010de8fb4d735b9b6d"}, ] [package.dependencies] aiofiles = ">=22.0,<24.0" -altair = ">=4.2.0,<6.0" -fastapi = "*" +anyio = ">=3.0,<5.0" +audioop-lts = {version = "<1.0", markers = "python_version >= \"3.13\""} +fastapi = ">=0.115.2,<1.0" ffmpy = "*" -gradio-client = "0.5.0" -httpx = "*" -huggingface-hub = ">=0.14.0" -importlib-resources = ">=1.3,<7.0" +gradio-client = "1.4.3" +httpx = ">=0.24.1" +huggingface-hub = ">=0.25.1" jinja2 = "<4.0" markupsafe = ">=2.0,<3.0" -matplotlib = ">=3.0,<4.0" -numpy = ">=1.0,<2.0" +numpy = ">=1.0,<3.0" orjson = ">=3.0,<4.0" packaging = "*" pandas = ">=1.0,<3.0" -pillow = ">=8.0,<11.0" -pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<3.0.0" +pillow = ">=8.0,<12.0" +pydantic = ">=2.0" pydub = "*" -python-multipart = "*" +python-multipart = "0.0.12" pyyaml = ">=5.0,<7.0" -requests = ">=2.0,<3.0" +ruff = {version = ">=0.2.2", markers = "sys_platform != \"emscripten\""} +safehttpx = ">=0.1.1,<1.0" semantic-version = ">=2.0,<3.0" +starlette = {version = ">=0.40.0,<1.0", markers = "sys_platform != \"emscripten\""} +tomlkit = "0.12.0" +typer = {version = ">=0.12,<1.0", markers = "sys_platform != \"emscripten\""} typing-extensions = ">=4.0,<5.0" -uvicorn = ">=0.14.0" -websockets = ">=10.0,<12.0" +urllib3 = {version = ">=2.0,<3.0", markers = "sys_platform == \"emscripten\""} +uvicorn = {version = ">=0.14.0", markers = "sys_platform != \"emscripten\""} [package.extras] oauth = ["authlib", "itsdangerous"] [[package]] name = "gradio-client" -version = "0.5.0" +version = "1.4.3" description = "Python library for easily interacting with trained machine learning models" optional = false -python-versions = ">=3.8" +python-versions = ">=3.10" files = [ - {file = "gradio_client-0.5.0-py3-none-any.whl", hash = "sha256:8e07bddd4c21f76fd218897703df8012c7e95dc74e3660edde78ac89fe4cf284"}, - {file = "gradio_client-0.5.0.tar.gz", hash = "sha256:709e91c1e0738abe46ad9f4565d490ef36b0f17ce347050017afaa469ed79a6a"}, + {file = "gradio_client-1.4.3-py3-none-any.whl", hash = "sha256:a76990277cab011f1c49391bdf33670bbbbb32b3503971ae5d91281e7946bdc1"}, + {file = "gradio_client-1.4.3.tar.gz", hash = "sha256:55fd446ae80a5320f164b6913e8862b398fca9097d33b76bd98efb61cbd449c3"}, ] [package.dependencies] fsspec = "*" -httpx = "*" -huggingface-hub = ">=0.13.0" +httpx = ">=0.24.1" +huggingface-hub = ">=0.19.3" packaging = "*" -requests = ">=2.0,<3.0" typing-extensions = ">=4.0,<5.0" -websockets = ">=10.0,<12.0" +websockets = ">=10.0,<13.0" [[package]] name = "h11" @@ -885,13 +502,13 @@ files = [ [[package]] name = "httpcore" -version = "1.0.5" +version = "1.0.7" description = "A minimal low-level HTTP client." optional = false python-versions = ">=3.8" files = [ - {file = "httpcore-1.0.5-py3-none-any.whl", hash = "sha256:421f18bac248b25d310f3cacd198d55b8e6125c107797b609ff9b7a6ba7991b5"}, - {file = "httpcore-1.0.5.tar.gz", hash = "sha256:34a38e2f9291467ee3b44e89dd52615370e152954ba21721378a87b2960f7a61"}, + {file = "httpcore-1.0.7-py3-none-any.whl", hash = "sha256:a3fff8f43dc260d5bd363d9f9cf1830fa3a458b332856f34282de498ed420edd"}, + {file = "httpcore-1.0.7.tar.gz", hash = "sha256:8551cb62a169ec7162ac7be8d4817d561f60e08eaa485234898414bb5a8a0b4c"}, ] [package.dependencies] @@ -902,7 +519,7 @@ h11 = ">=0.13,<0.15" asyncio = ["anyio (>=4.0,<5.0)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] -trio = ["trio (>=0.22.0,<0.26.0)"] +trio = ["trio (>=0.22.0,<1.0)"] [[package]] name = "httpx" @@ -931,13 +548,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "huggingface-hub" -version = "0.25.0" +version = "0.26.2" description = "Client library to download and publish models, datasets and other repos on the huggingface.co hub" optional = false python-versions = ">=3.8.0" files = [ - {file = "huggingface_hub-0.25.0-py3-none-any.whl", hash = "sha256:e2f357b35d72d5012cfd127108c4e14abcd61ba4ebc90a5a374dc2456cb34e12"}, - {file = "huggingface_hub-0.25.0.tar.gz", hash = "sha256:fb5fbe6c12fcd99d187ec7db95db9110fb1a20505f23040a5449a717c1a0db4d"}, + {file = "huggingface_hub-0.26.2-py3-none-any.whl", hash = "sha256:98c2a5a8e786c7b2cb6fdeb2740893cba4d53e312572ed3d8afafda65b128c46"}, + {file = "huggingface_hub-0.26.2.tar.gz", hash = "sha256:b100d853465d965733964d123939ba287da60a547087783ddff8a323f340332b"}, ] [package.dependencies] @@ -950,16 +567,16 @@ tqdm = ">=4.42.1" typing-extensions = ">=3.7.4.3" [package.extras] -all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"] +all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "libcst (==1.4.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"] cli = ["InquirerPy (==0.3.4)"] -dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"] +dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "libcst (==1.4.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"] fastai = ["fastai (>=2.4)", "fastcore (>=1.3.27)", "toml"] hf-transfer = ["hf-transfer (>=0.1.4)"] -inference = ["aiohttp", "minijinja (>=1.0)"] -quality = ["mypy (==1.5.1)", "ruff (>=0.5.0)"] +inference = ["aiohttp"] +quality = ["libcst (==1.4.0)", "mypy (==1.5.1)", "ruff (>=0.5.0)"] tensorflow = ["graphviz", "pydot", "tensorflow"] tensorflow-testing = ["keras (<3.0)", "tensorflow"] -testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"] +testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"] torch = ["safetensors[torch]", "torch"] typing = ["types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)"] @@ -977,25 +594,6 @@ files = [ [package.extras] all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] -[[package]] -name = "importlib-resources" -version = "6.4.5" -description = "Read resources from Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "importlib_resources-6.4.5-py3-none-any.whl", hash = "sha256:ac29d5f956f01d5e4bb63102a5a19957f1b9175e45649977264a1416783bb717"}, - {file = "importlib_resources-6.4.5.tar.gz", hash = "sha256:980862a1d16c9e147a59603677fa2aa5fd82b87f223b6cb870695bcfce830065"}, -] - -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -enabler = ["pytest-enabler (>=2.2)"] -test = ["jaraco.test (>=5.4)", "pytest (>=6,!=8.1.*)", "zipp (>=3.17)"] -type = ["pytest-mypy"] - [[package]] name = "iniconfig" version = "2.0.0" @@ -1025,193 +623,55 @@ MarkupSafe = ">=2.0" i18n = ["Babel (>=2.7)"] [[package]] -name = "jsonschema" -version = "4.23.0" -description = "An implementation of JSON Schema validation for Python" +name = "kubernetes" +version = "31.0.0" +description = "Kubernetes python client" optional = false -python-versions = ">=3.8" +python-versions = ">=3.6" files = [ - {file = "jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566"}, - {file = "jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4"}, + {file = "kubernetes-31.0.0-py2.py3-none-any.whl", hash = "sha256:bf141e2d380c8520eada8b351f4e319ffee9636328c137aa432bc486ca1200e1"}, + {file = "kubernetes-31.0.0.tar.gz", hash = "sha256:28945de906c8c259c1ebe62703b56a03b714049372196f854105afe4e6d014c0"}, ] [package.dependencies] -attrs = ">=22.2.0" -jsonschema-specifications = ">=2023.03.6" -referencing = ">=0.28.4" -rpds-py = ">=0.7.1" +certifi = ">=14.05.14" +durationpy = ">=0.7" +google-auth = ">=1.0.1" +oauthlib = ">=3.2.2" +python-dateutil = ">=2.5.3" +pyyaml = ">=5.4.1" +requests = "*" +requests-oauthlib = "*" +six = ">=1.9.0" +urllib3 = ">=1.24.2" +websocket-client = ">=0.32.0,<0.40.0 || >0.40.0,<0.41.dev0 || >=0.43.dev0" [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 (>=24.6.0)"] +adal = ["adal (>=1.0.2)"] [[package]] -name = "jsonschema-specifications" -version = "2023.12.1" -description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +name = "markdown-it-py" +version = "3.0.0" +description = "Python port of markdown-it. Markdown parsing, done right!" 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"}, + {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, + {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, ] [package.dependencies] -referencing = ">=0.31.0" - -[[package]] -name = "kiwisolver" -version = "1.4.7" -description = "A fast implementation of the Cassowary constraint solver" -optional = false -python-versions = ">=3.8" -files = [ - {file = "kiwisolver-1.4.7-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:8a9c83f75223d5e48b0bc9cb1bf2776cf01563e00ade8775ffe13b0b6e1af3a6"}, - {file = "kiwisolver-1.4.7-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:58370b1ffbd35407444d57057b57da5d6549d2d854fa30249771775c63b5fe17"}, - {file = "kiwisolver-1.4.7-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:aa0abdf853e09aff551db11fce173e2177d00786c688203f52c87ad7fcd91ef9"}, - {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8d53103597a252fb3ab8b5845af04c7a26d5e7ea8122303dd7a021176a87e8b9"}, - {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:88f17c5ffa8e9462fb79f62746428dd57b46eb931698e42e990ad63103f35e6c"}, - {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88a9ca9c710d598fd75ee5de59d5bda2684d9db36a9f50b6125eaea3969c2599"}, - {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f4d742cb7af1c28303a51b7a27aaee540e71bb8e24f68c736f6f2ffc82f2bf05"}, - {file = "kiwisolver-1.4.7-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e28c7fea2196bf4c2f8d46a0415c77a1c480cc0724722f23d7410ffe9842c407"}, - {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:e968b84db54f9d42046cf154e02911e39c0435c9801681e3fc9ce8a3c4130278"}, - {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0c18ec74c0472de033e1bebb2911c3c310eef5649133dd0bedf2a169a1b269e5"}, - {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:8f0ea6da6d393d8b2e187e6a5e3fb81f5862010a40c3945e2c6d12ae45cfb2ad"}, - {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:f106407dda69ae456dd1227966bf445b157ccc80ba0dff3802bb63f30b74e895"}, - {file = "kiwisolver-1.4.7-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:84ec80df401cfee1457063732d90022f93951944b5b58975d34ab56bb150dfb3"}, - {file = "kiwisolver-1.4.7-cp310-cp310-win32.whl", hash = "sha256:71bb308552200fb2c195e35ef05de12f0c878c07fc91c270eb3d6e41698c3bcc"}, - {file = "kiwisolver-1.4.7-cp310-cp310-win_amd64.whl", hash = "sha256:44756f9fd339de0fb6ee4f8c1696cfd19b2422e0d70b4cefc1cc7f1f64045a8c"}, - {file = "kiwisolver-1.4.7-cp310-cp310-win_arm64.whl", hash = "sha256:78a42513018c41c2ffd262eb676442315cbfe3c44eed82385c2ed043bc63210a"}, - {file = "kiwisolver-1.4.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:d2b0e12a42fb4e72d509fc994713d099cbb15ebf1103545e8a45f14da2dfca54"}, - {file = "kiwisolver-1.4.7-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2a8781ac3edc42ea4b90bc23e7d37b665d89423818e26eb6df90698aa2287c95"}, - {file = "kiwisolver-1.4.7-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:46707a10836894b559e04b0fd143e343945c97fd170d69a2d26d640b4e297935"}, - {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ef97b8df011141c9b0f6caf23b29379f87dd13183c978a30a3c546d2c47314cb"}, - {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ab58c12a2cd0fc769089e6d38466c46d7f76aced0a1f54c77652446733d2d02"}, - {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:803b8e1459341c1bb56d1c5c010406d5edec8a0713a0945851290a7930679b51"}, - {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f9a9e8a507420fe35992ee9ecb302dab68550dedc0da9e2880dd88071c5fb052"}, - {file = "kiwisolver-1.4.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18077b53dc3bb490e330669a99920c5e6a496889ae8c63b58fbc57c3d7f33a18"}, - {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6af936f79086a89b3680a280c47ea90b4df7047b5bdf3aa5c524bbedddb9e545"}, - {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:3abc5b19d24af4b77d1598a585b8a719beb8569a71568b66f4ebe1fb0449460b"}, - {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:933d4de052939d90afbe6e9d5273ae05fb836cc86c15b686edd4b3560cc0ee36"}, - {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:65e720d2ab2b53f1f72fb5da5fb477455905ce2c88aaa671ff0a447c2c80e8e3"}, - {file = "kiwisolver-1.4.7-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3bf1ed55088f214ba6427484c59553123fdd9b218a42bbc8c6496d6754b1e523"}, - {file = "kiwisolver-1.4.7-cp311-cp311-win32.whl", hash = "sha256:4c00336b9dd5ad96d0a558fd18a8b6f711b7449acce4c157e7343ba92dd0cf3d"}, - {file = "kiwisolver-1.4.7-cp311-cp311-win_amd64.whl", hash = "sha256:929e294c1ac1e9f615c62a4e4313ca1823ba37326c164ec720a803287c4c499b"}, - {file = "kiwisolver-1.4.7-cp311-cp311-win_arm64.whl", hash = "sha256:e33e8fbd440c917106b237ef1a2f1449dfbb9b6f6e1ce17c94cd6a1e0d438376"}, - {file = "kiwisolver-1.4.7-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:5360cc32706dab3931f738d3079652d20982511f7c0ac5711483e6eab08efff2"}, - {file = "kiwisolver-1.4.7-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:942216596dc64ddb25adb215c3c783215b23626f8d84e8eff8d6d45c3f29f75a"}, - {file = "kiwisolver-1.4.7-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:48b571ecd8bae15702e4f22d3ff6a0f13e54d3d00cd25216d5e7f658242065ee"}, - {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ad42ba922c67c5f219097b28fae965e10045ddf145d2928bfac2eb2e17673640"}, - {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:612a10bdae23404a72941a0fc8fa2660c6ea1217c4ce0dbcab8a8f6543ea9e7f"}, - {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9e838bba3a3bac0fe06d849d29772eb1afb9745a59710762e4ba3f4cb8424483"}, - {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:22f499f6157236c19f4bbbd472fa55b063db77a16cd74d49afe28992dff8c258"}, - {file = "kiwisolver-1.4.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:693902d433cf585133699972b6d7c42a8b9f8f826ebcaf0132ff55200afc599e"}, - {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:4e77f2126c3e0b0d055f44513ed349038ac180371ed9b52fe96a32aa071a5107"}, - {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:657a05857bda581c3656bfc3b20e353c232e9193eb167766ad2dc58b56504948"}, - {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:4bfa75a048c056a411f9705856abfc872558e33c055d80af6a380e3658766038"}, - {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:34ea1de54beef1c104422d210c47c7d2a4999bdecf42c7b5718fbe59a4cac383"}, - {file = "kiwisolver-1.4.7-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:90da3b5f694b85231cf93586dad5e90e2d71b9428f9aad96952c99055582f520"}, - {file = "kiwisolver-1.4.7-cp312-cp312-win32.whl", hash = "sha256:18e0cca3e008e17fe9b164b55735a325140a5a35faad8de92dd80265cd5eb80b"}, - {file = "kiwisolver-1.4.7-cp312-cp312-win_amd64.whl", hash = "sha256:58cb20602b18f86f83a5c87d3ee1c766a79c0d452f8def86d925e6c60fbf7bfb"}, - {file = "kiwisolver-1.4.7-cp312-cp312-win_arm64.whl", hash = "sha256:f5a8b53bdc0b3961f8b6125e198617c40aeed638b387913bf1ce78afb1b0be2a"}, - {file = "kiwisolver-1.4.7-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:2e6039dcbe79a8e0f044f1c39db1986a1b8071051efba3ee4d74f5b365f5226e"}, - {file = "kiwisolver-1.4.7-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a1ecf0ac1c518487d9d23b1cd7139a6a65bc460cd101ab01f1be82ecf09794b6"}, - {file = "kiwisolver-1.4.7-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7ab9ccab2b5bd5702ab0803676a580fffa2aa178c2badc5557a84cc943fcf750"}, - {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f816dd2277f8d63d79f9c8473a79fe54047bc0467754962840782c575522224d"}, - {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf8bcc23ceb5a1b624572a1623b9f79d2c3b337c8c455405ef231933a10da379"}, - {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dea0bf229319828467d7fca8c7c189780aa9ff679c94539eed7532ebe33ed37c"}, - {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c06a4c7cf15ec739ce0e5971b26c93638730090add60e183530d70848ebdd34"}, - {file = "kiwisolver-1.4.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:913983ad2deb14e66d83c28b632fd35ba2b825031f2fa4ca29675e665dfecbe1"}, - {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5337ec7809bcd0f424c6b705ecf97941c46279cf5ed92311782c7c9c2026f07f"}, - {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:4c26ed10c4f6fa6ddb329a5120ba3b6db349ca192ae211e882970bfc9d91420b"}, - {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c619b101e6de2222c1fcb0531e1b17bbffbe54294bfba43ea0d411d428618c27"}, - {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:073a36c8273647592ea332e816e75ef8da5c303236ec0167196793eb1e34657a"}, - {file = "kiwisolver-1.4.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:3ce6b2b0231bda412463e152fc18335ba32faf4e8c23a754ad50ffa70e4091ee"}, - {file = "kiwisolver-1.4.7-cp313-cp313-win32.whl", hash = "sha256:f4c9aee212bc89d4e13f58be11a56cc8036cabad119259d12ace14b34476fd07"}, - {file = "kiwisolver-1.4.7-cp313-cp313-win_amd64.whl", hash = "sha256:8a3ec5aa8e38fc4c8af308917ce12c536f1c88452ce554027e55b22cbbfbff76"}, - {file = "kiwisolver-1.4.7-cp313-cp313-win_arm64.whl", hash = "sha256:76c8094ac20ec259471ac53e774623eb62e6e1f56cd8690c67ce6ce4fcb05650"}, - {file = "kiwisolver-1.4.7-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5d5abf8f8ec1f4e22882273c423e16cae834c36856cac348cfbfa68e01c40f3a"}, - {file = "kiwisolver-1.4.7-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:aeb3531b196ef6f11776c21674dba836aeea9d5bd1cf630f869e3d90b16cfade"}, - {file = "kiwisolver-1.4.7-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b7d755065e4e866a8086c9bdada157133ff466476a2ad7861828e17b6026e22c"}, - {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:08471d4d86cbaec61f86b217dd938a83d85e03785f51121e791a6e6689a3be95"}, - {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7bbfcb7165ce3d54a3dfbe731e470f65739c4c1f85bb1018ee912bae139e263b"}, - {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d34eb8494bea691a1a450141ebb5385e4b69d38bb8403b5146ad279f4b30fa3"}, - {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9242795d174daa40105c1d86aba618e8eab7bf96ba8c3ee614da8302a9f95503"}, - {file = "kiwisolver-1.4.7-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:a0f64a48bb81af7450e641e3fe0b0394d7381e342805479178b3d335d60ca7cf"}, - {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:8e045731a5416357638d1700927529e2b8ab304811671f665b225f8bf8d8f933"}, - {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4322872d5772cae7369f8351da1edf255a604ea7087fe295411397d0cfd9655e"}, - {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:e1631290ee9271dffe3062d2634c3ecac02c83890ada077d225e081aca8aab89"}, - {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:edcfc407e4eb17e037bca59be0e85a2031a2ac87e4fed26d3e9df88b4165f92d"}, - {file = "kiwisolver-1.4.7-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:4d05d81ecb47d11e7f8932bd8b61b720bf0b41199358f3f5e36d38e28f0532c5"}, - {file = "kiwisolver-1.4.7-cp38-cp38-win32.whl", hash = "sha256:b38ac83d5f04b15e515fd86f312479d950d05ce2368d5413d46c088dda7de90a"}, - {file = "kiwisolver-1.4.7-cp38-cp38-win_amd64.whl", hash = "sha256:d83db7cde68459fc803052a55ace60bea2bae361fc3b7a6d5da07e11954e4b09"}, - {file = "kiwisolver-1.4.7-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:3f9362ecfca44c863569d3d3c033dbe8ba452ff8eed6f6b5806382741a1334bd"}, - {file = "kiwisolver-1.4.7-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:e8df2eb9b2bac43ef8b082e06f750350fbbaf2887534a5be97f6cf07b19d9583"}, - {file = "kiwisolver-1.4.7-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f32d6edbc638cde7652bd690c3e728b25332acbadd7cad670cc4a02558d9c417"}, - {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:e2e6c39bd7b9372b0be21456caab138e8e69cc0fc1190a9dfa92bd45a1e6e904"}, - {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:dda56c24d869b1193fcc763f1284b9126550eaf84b88bbc7256e15028f19188a"}, - {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79849239c39b5e1fd906556c474d9b0439ea6792b637511f3fe3a41158d89ca8"}, - {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5e3bc157fed2a4c02ec468de4ecd12a6e22818d4f09cde2c31ee3226ffbefab2"}, - {file = "kiwisolver-1.4.7-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3da53da805b71e41053dc670f9a820d1157aae77b6b944e08024d17bcd51ef88"}, - {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:8705f17dfeb43139a692298cb6637ee2e59c0194538153e83e9ee0c75c2eddde"}, - {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:82a5c2f4b87c26bb1a0ef3d16b5c4753434633b83d365cc0ddf2770c93829e3c"}, - {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ce8be0466f4c0d585cdb6c1e2ed07232221df101a4c6f28821d2aa754ca2d9e2"}, - {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:409afdfe1e2e90e6ee7fc896f3df9a7fec8e793e58bfa0d052c8a82f99c37abb"}, - {file = "kiwisolver-1.4.7-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5b9c3f4ee0b9a439d2415012bd1b1cc2df59e4d6a9939f4d669241d30b414327"}, - {file = "kiwisolver-1.4.7-cp39-cp39-win32.whl", hash = "sha256:a79ae34384df2b615eefca647a2873842ac3b596418032bef9a7283675962644"}, - {file = "kiwisolver-1.4.7-cp39-cp39-win_amd64.whl", hash = "sha256:cf0438b42121a66a3a667de17e779330fc0f20b0d97d59d2f2121e182b0505e4"}, - {file = "kiwisolver-1.4.7-cp39-cp39-win_arm64.whl", hash = "sha256:764202cc7e70f767dab49e8df52c7455e8de0df5d858fa801a11aa0d882ccf3f"}, - {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:94252291e3fe68001b1dd747b4c0b3be12582839b95ad4d1b641924d68fd4643"}, - {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:5b7dfa3b546da08a9f622bb6becdb14b3e24aaa30adba66749d38f3cc7ea9706"}, - {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bd3de6481f4ed8b734da5df134cd5a6a64fe32124fe83dde1e5b5f29fe30b1e6"}, - {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a91b5f9f1205845d488c928e8570dcb62b893372f63b8b6e98b863ebd2368ff2"}, - {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40fa14dbd66b8b8f470d5fc79c089a66185619d31645f9b0773b88b19f7223c4"}, - {file = "kiwisolver-1.4.7-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:eb542fe7933aa09d8d8f9d9097ef37532a7df6497819d16efe4359890a2f417a"}, - {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:bfa1acfa0c54932d5607e19a2c24646fb4c1ae2694437789129cf099789a3b00"}, - {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:eee3ea935c3d227d49b4eb85660ff631556841f6e567f0f7bda972df6c2c9935"}, - {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:f3160309af4396e0ed04db259c3ccbfdc3621b5559b5453075e5de555e1f3a1b"}, - {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a17f6a29cf8935e587cc8a4dbfc8368c55edc645283db0ce9801016f83526c2d"}, - {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:10849fb2c1ecbfae45a693c070e0320a91b35dd4bcf58172c023b994283a124d"}, - {file = "kiwisolver-1.4.7-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:ac542bf38a8a4be2dc6b15248d36315ccc65f0743f7b1a76688ffb6b5129a5c2"}, - {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:8b01aac285f91ca889c800042c35ad3b239e704b150cfd3382adfc9dcc780e39"}, - {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:48be928f59a1f5c8207154f935334d374e79f2b5d212826307d072595ad76a2e"}, - {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f37cfe618a117e50d8c240555331160d73d0411422b59b5ee217843d7b693608"}, - {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:599b5c873c63a1f6ed7eead644a8a380cfbdf5db91dcb6f85707aaab213b1674"}, - {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:801fa7802e5cfabe3ab0c81a34c323a319b097dfb5004be950482d882f3d7225"}, - {file = "kiwisolver-1.4.7-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:0c6c43471bc764fad4bc99c5c2d6d16a676b1abf844ca7c8702bdae92df01ee0"}, - {file = "kiwisolver-1.4.7.tar.gz", hash = "sha256:9893ff81bd7107f7b685d3017cc6583daadb4fc26e4a888350df530e41980a60"}, -] - -[[package]] -name = "lit" -version = "18.1.8" -description = "A Software Testing Tool" -optional = false -python-versions = "*" -files = [ - {file = "lit-18.1.8-py3-none-any.whl", hash = "sha256:a873ff7acd76e746368da32eb7355625e2e55a2baaab884c9cc130f2ee0300f7"}, - {file = "lit-18.1.8.tar.gz", hash = "sha256:47c174a186941ae830f04ded76a3444600be67d5e5fb8282c3783fba671c4edb"}, -] - -[[package]] -name = "llmlite" -version = "0.0.9" -description = "A library helps to chat with all kinds of LLMs consistently." -optional = false -python-versions = ">=3.10,<4.0" -files = [ - {file = "llmlite-0.0.9-py3-none-any.whl", hash = "sha256:8e9161c62803ab69d411672c5fcbba8398dde804d209fb4be3a69c4a4e8e0176"}, - {file = "llmlite-0.0.9.tar.gz", hash = "sha256:03c548f08a5491c006419bade3ce03e11652dd0be23579309efb1629f0af5819"}, -] +mdurl = ">=0.1,<1.0" -[package.dependencies] -accelerate = "0.22.0" -openai = ">=0.28.0,<0.29.0" -pydantic = "<2" -sentencepiece = "0.1.99" -tokenizers = "0.13.3" -torch = "2.0.0" -transformers = "4.33.1" +[package.extras] +benchmarking = ["psutil", "pytest", "pytest-benchmark"] +code-style = ["pre-commit (>=3.0,<4.0)"] +compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] +linkify = ["linkify-it-py (>=1,<3)"] +plugins = ["mdit-py-plugins"] +profiling = ["gprof2dot"] +rtd = ["jupyter_sphinx", "mdit-py-plugins", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] [[package]] name = "markupsafe" @@ -1283,223 +743,55 @@ files = [ ] [[package]] -name = "matplotlib" -version = "3.9.2" -description = "Python plotting package" +name = "mdurl" +version = "0.1.2" +description = "Markdown URL utilities" optional = false -python-versions = ">=3.9" -files = [ - {file = "matplotlib-3.9.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:9d78bbc0cbc891ad55b4f39a48c22182e9bdaea7fc0e5dbd364f49f729ca1bbb"}, - {file = "matplotlib-3.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c375cc72229614632c87355366bdf2570c2dac01ac66b8ad048d2dabadf2d0d4"}, - {file = "matplotlib-3.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d94ff717eb2bd0b58fe66380bd8b14ac35f48a98e7c6765117fe67fb7684e64"}, - {file = "matplotlib-3.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab68d50c06938ef28681073327795c5db99bb4666214d2d5f880ed11aeaded66"}, - {file = "matplotlib-3.9.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:65aacf95b62272d568044531e41de26285d54aec8cb859031f511f84bd8b495a"}, - {file = "matplotlib-3.9.2-cp310-cp310-win_amd64.whl", hash = "sha256:3fd595f34aa8a55b7fc8bf9ebea8aa665a84c82d275190a61118d33fbc82ccae"}, - {file = "matplotlib-3.9.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:d8dd059447824eec055e829258ab092b56bb0579fc3164fa09c64f3acd478772"}, - {file = "matplotlib-3.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c797dac8bb9c7a3fd3382b16fe8f215b4cf0f22adccea36f1545a6d7be310b41"}, - {file = "matplotlib-3.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d719465db13267bcef19ea8954a971db03b9f48b4647e3860e4bc8e6ed86610f"}, - {file = "matplotlib-3.9.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8912ef7c2362f7193b5819d17dae8629b34a95c58603d781329712ada83f9447"}, - {file = "matplotlib-3.9.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:7741f26a58a240f43bee74965c4882b6c93df3e7eb3de160126d8c8f53a6ae6e"}, - {file = "matplotlib-3.9.2-cp311-cp311-win_amd64.whl", hash = "sha256:ae82a14dab96fbfad7965403c643cafe6515e386de723e498cf3eeb1e0b70cc7"}, - {file = "matplotlib-3.9.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:ac43031375a65c3196bee99f6001e7fa5bdfb00ddf43379d3c0609bdca042df9"}, - {file = "matplotlib-3.9.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:be0fc24a5e4531ae4d8e858a1a548c1fe33b176bb13eff7f9d0d38ce5112a27d"}, - {file = "matplotlib-3.9.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf81de2926c2db243c9b2cbc3917619a0fc85796c6ba4e58f541df814bbf83c7"}, - {file = "matplotlib-3.9.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6ee45bc4245533111ced13f1f2cace1e7f89d1c793390392a80c139d6cf0e6c"}, - {file = "matplotlib-3.9.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:306c8dfc73239f0e72ac50e5a9cf19cc4e8e331dd0c54f5e69ca8758550f1e1e"}, - {file = "matplotlib-3.9.2-cp312-cp312-win_amd64.whl", hash = "sha256:5413401594cfaff0052f9d8b1aafc6d305b4bd7c4331dccd18f561ff7e1d3bd3"}, - {file = "matplotlib-3.9.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:18128cc08f0d3cfff10b76baa2f296fc28c4607368a8402de61bb3f2eb33c7d9"}, - {file = "matplotlib-3.9.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4876d7d40219e8ae8bb70f9263bcbe5714415acfdf781086601211335e24f8aa"}, - {file = "matplotlib-3.9.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6d9f07a80deab4bb0b82858a9e9ad53d1382fd122be8cde11080f4e7dfedb38b"}, - {file = "matplotlib-3.9.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f7c0410f181a531ec4e93bbc27692f2c71a15c2da16766f5ba9761e7ae518413"}, - {file = "matplotlib-3.9.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:909645cce2dc28b735674ce0931a4ac94e12f5b13f6bb0b5a5e65e7cea2c192b"}, - {file = "matplotlib-3.9.2-cp313-cp313-win_amd64.whl", hash = "sha256:f32c7410c7f246838a77d6d1eff0c0f87f3cb0e7c4247aebea71a6d5a68cab49"}, - {file = "matplotlib-3.9.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:37e51dd1c2db16ede9cfd7b5cabdfc818b2c6397c83f8b10e0e797501c963a03"}, - {file = "matplotlib-3.9.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b82c5045cebcecd8496a4d694d43f9cc84aeeb49fe2133e036b207abe73f4d30"}, - {file = "matplotlib-3.9.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f053c40f94bc51bc03832a41b4f153d83f2062d88c72b5e79997072594e97e51"}, - {file = "matplotlib-3.9.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dbe196377a8248972f5cede786d4c5508ed5f5ca4a1e09b44bda889958b33f8c"}, - {file = "matplotlib-3.9.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:5816b1e1fe8c192cbc013f8f3e3368ac56fbecf02fb41b8f8559303f24c5015e"}, - {file = "matplotlib-3.9.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:cef2a73d06601437be399908cf13aee74e86932a5ccc6ccdf173408ebc5f6bb2"}, - {file = "matplotlib-3.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e0830e188029c14e891fadd99702fd90d317df294c3298aad682739c5533721a"}, - {file = "matplotlib-3.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03ba9c1299c920964e8d3857ba27173b4dbb51ca4bab47ffc2c2ba0eb5e2cbc5"}, - {file = "matplotlib-3.9.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1cd93b91ab47a3616b4d3c42b52f8363b88ca021e340804c6ab2536344fad9ca"}, - {file = "matplotlib-3.9.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6d1ce5ed2aefcdce11904fc5bbea7d9c21fff3d5f543841edf3dea84451a09ea"}, - {file = "matplotlib-3.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:b2696efdc08648536efd4e1601b5fd491fd47f4db97a5fbfd175549a7365c1b2"}, - {file = "matplotlib-3.9.2-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:d52a3b618cb1cbb769ce2ee1dcdb333c3ab6e823944e9a2d36e37253815f9556"}, - {file = "matplotlib-3.9.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:039082812cacd6c6bec8e17a9c1e6baca230d4116d522e81e1f63a74d01d2e21"}, - {file = "matplotlib-3.9.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6758baae2ed64f2331d4fd19be38b7b4eae3ecec210049a26b6a4f3ae1c85dcc"}, - {file = "matplotlib-3.9.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:050598c2b29e0b9832cde72bcf97627bf00262adbc4a54e2b856426bb2ef0697"}, - {file = "matplotlib-3.9.2.tar.gz", hash = "sha256:96ab43906269ca64a6366934106fa01534454a69e471b7bf3d79083981aaab92"}, -] - -[package.dependencies] -contourpy = ">=1.0.1" -cycler = ">=0.10" -fonttools = ">=4.22.0" -kiwisolver = ">=1.3.1" -numpy = ">=1.23" -packaging = ">=20.0" -pillow = ">=8" -pyparsing = ">=2.3.1" -python-dateutil = ">=2.7" - -[package.extras] -dev = ["meson-python (>=0.13.1)", "numpy (>=1.25)", "pybind11 (>=2.6)", "setuptools (>=64)", "setuptools_scm (>=7)"] - -[[package]] -name = "mpmath" -version = "1.3.0" -description = "Python library for arbitrary-precision floating-point arithmetic" -optional = false -python-versions = "*" -files = [ - {file = "mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c"}, - {file = "mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f"}, -] - -[package.extras] -develop = ["codecov", "pycodestyle", "pytest (>=4.6)", "pytest-cov", "wheel"] -docs = ["sphinx"] -gmpy = ["gmpy2 (>=2.1.0a4)"] -tests = ["pytest (>=4.6)"] - -[[package]] -name = "multidict" -version = "6.1.0" -description = "multidict implementation" -optional = false -python-versions = ">=3.8" +python-versions = ">=3.7" files = [ - {file = "multidict-6.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3380252550e372e8511d49481bd836264c009adb826b23fefcc5dd3c69692f60"}, - {file = "multidict-6.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:99f826cbf970077383d7de805c0681799491cb939c25450b9b5b3ced03ca99f1"}, - {file = "multidict-6.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a114d03b938376557927ab23f1e950827c3b893ccb94b62fd95d430fd0e5cf53"}, - {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b1c416351ee6271b2f49b56ad7f308072f6f44b37118d69c2cad94f3fa8a40d5"}, - {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6b5d83030255983181005e6cfbac1617ce9746b219bc2aad52201ad121226581"}, - {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3e97b5e938051226dc025ec80980c285b053ffb1e25a3db2a3aa3bc046bf7f56"}, - {file = "multidict-6.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d618649d4e70ac6efcbba75be98b26ef5078faad23592f9b51ca492953012429"}, - {file = "multidict-6.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10524ebd769727ac77ef2278390fb0068d83f3acb7773792a5080f2b0abf7748"}, - {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:ff3827aef427c89a25cc96ded1759271a93603aba9fb977a6d264648ebf989db"}, - {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:06809f4f0f7ab7ea2cabf9caca7d79c22c0758b58a71f9d32943ae13c7ace056"}, - {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:f179dee3b863ab1c59580ff60f9d99f632f34ccb38bf67a33ec6b3ecadd0fd76"}, - {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:aaed8b0562be4a0876ee3b6946f6869b7bcdb571a5d1496683505944e268b160"}, - {file = "multidict-6.1.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3c8b88a2ccf5493b6c8da9076fb151ba106960a2df90c2633f342f120751a9e7"}, - {file = "multidict-6.1.0-cp310-cp310-win32.whl", hash = "sha256:4a9cb68166a34117d6646c0023c7b759bf197bee5ad4272f420a0141d7eb03a0"}, - {file = "multidict-6.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:20b9b5fbe0b88d0bdef2012ef7dee867f874b72528cf1d08f1d59b0e3850129d"}, - {file = "multidict-6.1.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:3efe2c2cb5763f2f1b275ad2bf7a287d3f7ebbef35648a9726e3b69284a4f3d6"}, - {file = "multidict-6.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c7053d3b0353a8b9de430a4f4b4268ac9a4fb3481af37dfe49825bf45ca24156"}, - {file = "multidict-6.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:27e5fc84ccef8dfaabb09d82b7d179c7cf1a3fbc8a966f8274fcb4ab2eb4cadb"}, - {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e2b90b43e696f25c62656389d32236e049568b39320e2735d51f08fd362761b"}, - {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d83a047959d38a7ff552ff94be767b7fd79b831ad1cd9920662db05fec24fe72"}, - {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d1a9dd711d0877a1ece3d2e4fea11a8e75741ca21954c919406b44e7cf971304"}, - {file = "multidict-6.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec2abea24d98246b94913b76a125e855eb5c434f7c46546046372fe60f666351"}, - {file = "multidict-6.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4867cafcbc6585e4b678876c489b9273b13e9fff9f6d6d66add5e15d11d926cb"}, - {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5b48204e8d955c47c55b72779802b219a39acc3ee3d0116d5080c388970b76e3"}, - {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:d8fff389528cad1618fb4b26b95550327495462cd745d879a8c7c2115248e399"}, - {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:a7a9541cd308eed5e30318430a9c74d2132e9a8cb46b901326272d780bf2d423"}, - {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:da1758c76f50c39a2efd5e9859ce7d776317eb1dd34317c8152ac9251fc574a3"}, - {file = "multidict-6.1.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:c943a53e9186688b45b323602298ab727d8865d8c9ee0b17f8d62d14b56f0753"}, - {file = "multidict-6.1.0-cp311-cp311-win32.whl", hash = "sha256:90f8717cb649eea3504091e640a1b8568faad18bd4b9fcd692853a04475a4b80"}, - {file = "multidict-6.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:82176036e65644a6cc5bd619f65f6f19781e8ec2e5330f51aa9ada7504cc1926"}, - {file = "multidict-6.1.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b04772ed465fa3cc947db808fa306d79b43e896beb677a56fb2347ca1a49c1fa"}, - {file = "multidict-6.1.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:6180c0ae073bddeb5a97a38c03f30c233e0a4d39cd86166251617d1bbd0af436"}, - {file = "multidict-6.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:071120490b47aa997cca00666923a83f02c7fbb44f71cf7f136df753f7fa8761"}, - {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50b3a2710631848991d0bf7de077502e8994c804bb805aeb2925a981de58ec2e"}, - {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b58c621844d55e71c1b7f7c498ce5aa6985d743a1a59034c57a905b3f153c1ef"}, - {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:55b6d90641869892caa9ca42ff913f7ff1c5ece06474fbd32fb2cf6834726c95"}, - {file = "multidict-6.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b820514bfc0b98a30e3d85462084779900347e4d49267f747ff54060cc33925"}, - {file = "multidict-6.1.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:10a9b09aba0c5b48c53761b7c720aaaf7cf236d5fe394cd399c7ba662d5f9966"}, - {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1e16bf3e5fc9f44632affb159d30a437bfe286ce9e02754759be5536b169b305"}, - {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:76f364861c3bfc98cbbcbd402d83454ed9e01a5224bb3a28bf70002a230f73e2"}, - {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:820c661588bd01a0aa62a1283f20d2be4281b086f80dad9e955e690c75fb54a2"}, - {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:0e5f362e895bc5b9e67fe6e4ded2492d8124bdf817827f33c5b46c2fe3ffaca6"}, - {file = "multidict-6.1.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3ec660d19bbc671e3a6443325f07263be452c453ac9e512f5eb935e7d4ac28b3"}, - {file = "multidict-6.1.0-cp312-cp312-win32.whl", hash = "sha256:58130ecf8f7b8112cdb841486404f1282b9c86ccb30d3519faf301b2e5659133"}, - {file = "multidict-6.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:188215fc0aafb8e03341995e7c4797860181562380f81ed0a87ff455b70bf1f1"}, - {file = "multidict-6.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d569388c381b24671589335a3be6e1d45546c2988c2ebe30fdcada8457a31008"}, - {file = "multidict-6.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:052e10d2d37810b99cc170b785945421141bf7bb7d2f8799d431e7db229c385f"}, - {file = "multidict-6.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f90c822a402cb865e396a504f9fc8173ef34212a342d92e362ca498cad308e28"}, - {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b225d95519a5bf73860323e633a664b0d85ad3d5bede6d30d95b35d4dfe8805b"}, - {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:23bfd518810af7de1116313ebd9092cb9aa629beb12f6ed631ad53356ed6b86c"}, - {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5c09fcfdccdd0b57867577b719c69e347a436b86cd83747f179dbf0cc0d4c1f3"}, - {file = "multidict-6.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf6bea52ec97e95560af5ae576bdac3aa3aae0b6758c6efa115236d9e07dae44"}, - {file = "multidict-6.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57feec87371dbb3520da6192213c7d6fc892d5589a93db548331954de8248fd2"}, - {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0c3f390dc53279cbc8ba976e5f8035eab997829066756d811616b652b00a23a3"}, - {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:59bfeae4b25ec05b34f1956eaa1cb38032282cd4dfabc5056d0a1ec4d696d3aa"}, - {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:b2f59caeaf7632cc633b5cf6fc449372b83bbdf0da4ae04d5be36118e46cc0aa"}, - {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:37bb93b2178e02b7b618893990941900fd25b6b9ac0fa49931a40aecdf083fe4"}, - {file = "multidict-6.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4e9f48f58c2c523d5a06faea47866cd35b32655c46b443f163d08c6d0ddb17d6"}, - {file = "multidict-6.1.0-cp313-cp313-win32.whl", hash = "sha256:3a37ffb35399029b45c6cc33640a92bef403c9fd388acce75cdc88f58bd19a81"}, - {file = "multidict-6.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:e9aa71e15d9d9beaad2c6b9319edcdc0a49a43ef5c0a4c8265ca9ee7d6c67774"}, - {file = "multidict-6.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:db7457bac39421addd0c8449933ac32d8042aae84a14911a757ae6ca3eef1392"}, - {file = "multidict-6.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d094ddec350a2fb899fec68d8353c78233debde9b7d8b4beeafa70825f1c281a"}, - {file = "multidict-6.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5845c1fd4866bb5dd3125d89b90e57ed3138241540897de748cdf19de8a2fca2"}, - {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9079dfc6a70abe341f521f78405b8949f96db48da98aeb43f9907f342f627cdc"}, - {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3914f5aaa0f36d5d60e8ece6a308ee1c9784cd75ec8151062614657a114c4478"}, - {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c08be4f460903e5a9d0f76818db3250f12e9c344e79314d1d570fc69d7f4eae4"}, - {file = "multidict-6.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d093be959277cb7dee84b801eb1af388b6ad3ca6a6b6bf1ed7585895789d027d"}, - {file = "multidict-6.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3702ea6872c5a2a4eeefa6ffd36b042e9773f05b1f37ae3ef7264b1163c2dcf6"}, - {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:2090f6a85cafc5b2db085124d752757c9d251548cedabe9bd31afe6363e0aff2"}, - {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:f67f217af4b1ff66c68a87318012de788dd95fcfeb24cc889011f4e1c7454dfd"}, - {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:189f652a87e876098bbc67b4da1049afb5f5dfbaa310dd67c594b01c10388db6"}, - {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:6bb5992037f7a9eff7991ebe4273ea7f51f1c1c511e6a2ce511d0e7bdb754492"}, - {file = "multidict-6.1.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:ac10f4c2b9e770c4e393876e35a7046879d195cd123b4f116d299d442b335bcd"}, - {file = "multidict-6.1.0-cp38-cp38-win32.whl", hash = "sha256:e27bbb6d14416713a8bd7aaa1313c0fc8d44ee48d74497a0ff4c3a1b6ccb5167"}, - {file = "multidict-6.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:22f3105d4fb15c8f57ff3959a58fcab6ce36814486500cd7485651230ad4d4ef"}, - {file = "multidict-6.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:4e18b656c5e844539d506a0a06432274d7bd52a7487e6828c63a63d69185626c"}, - {file = "multidict-6.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a185f876e69897a6f3325c3f19f26a297fa058c5e456bfcff8015e9a27e83ae1"}, - {file = "multidict-6.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ab7c4ceb38d91570a650dba194e1ca87c2b543488fe9309b4212694174fd539c"}, - {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e617fb6b0b6953fffd762669610c1c4ffd05632c138d61ac7e14ad187870669c"}, - {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:16e5f4bf4e603eb1fdd5d8180f1a25f30056f22e55ce51fb3d6ad4ab29f7d96f"}, - {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f4c035da3f544b1882bac24115f3e2e8760f10a0107614fc9839fd232200b875"}, - {file = "multidict-6.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:957cf8e4b6e123a9eea554fa7ebc85674674b713551de587eb318a2df3e00255"}, - {file = "multidict-6.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:483a6aea59cb89904e1ceabd2b47368b5600fb7de78a6e4a2c2987b2d256cf30"}, - {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:87701f25a2352e5bf7454caa64757642734da9f6b11384c1f9d1a8e699758057"}, - {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:682b987361e5fd7a139ed565e30d81fd81e9629acc7d925a205366877d8c8657"}, - {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ce2186a7df133a9c895dea3331ddc5ddad42cdd0d1ea2f0a51e5d161e4762f28"}, - {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:9f636b730f7e8cb19feb87094949ba54ee5357440b9658b2a32a5ce4bce53972"}, - {file = "multidict-6.1.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:73eae06aa53af2ea5270cc066dcaf02cc60d2994bbb2c4ef5764949257d10f43"}, - {file = "multidict-6.1.0-cp39-cp39-win32.whl", hash = "sha256:1ca0083e80e791cffc6efce7660ad24af66c8d4079d2a750b29001b53ff59ada"}, - {file = "multidict-6.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:aa466da5b15ccea564bdab9c89175c762bc12825f4659c11227f515cee76fa4a"}, - {file = "multidict-6.1.0-py3-none-any.whl", hash = "sha256:48e171e52d1c4d33888e529b999e5900356b9ae588c2f09a52dcefb158b27506"}, - {file = "multidict-6.1.0.tar.gz", hash = "sha256:22ae2ebf9b0c69d206c003e2f6a914ea33f0a932d4aa16f236afc049d9958f4a"}, + {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, + {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, ] -[package.dependencies] -typing-extensions = {version = ">=4.1.0", markers = "python_version < \"3.11\""} - [[package]] name = "mypy" -version = "1.11.2" +version = "1.13.0" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" files = [ - {file = "mypy-1.11.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d42a6dd818ffce7be66cce644f1dff482f1d97c53ca70908dff0b9ddc120b77a"}, - {file = "mypy-1.11.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:801780c56d1cdb896eacd5619a83e427ce436d86a3bdf9112527f24a66618fef"}, - {file = "mypy-1.11.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41ea707d036a5307ac674ea172875f40c9d55c5394f888b168033177fce47383"}, - {file = "mypy-1.11.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6e658bd2d20565ea86da7d91331b0eed6d2eee22dc031579e6297f3e12c758c8"}, - {file = "mypy-1.11.2-cp310-cp310-win_amd64.whl", hash = "sha256:478db5f5036817fe45adb7332d927daa62417159d49783041338921dcf646fc7"}, - {file = "mypy-1.11.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75746e06d5fa1e91bfd5432448d00d34593b52e7e91a187d981d08d1f33d4385"}, - {file = "mypy-1.11.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a976775ab2256aadc6add633d44f100a2517d2388906ec4f13231fafbb0eccca"}, - {file = "mypy-1.11.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cd953f221ac1379050a8a646585a29574488974f79d8082cedef62744f0a0104"}, - {file = "mypy-1.11.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:57555a7715c0a34421013144a33d280e73c08df70f3a18a552938587ce9274f4"}, - {file = "mypy-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:36383a4fcbad95f2657642a07ba22ff797de26277158f1cc7bd234821468b1b6"}, - {file = "mypy-1.11.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e8960dbbbf36906c5c0b7f4fbf2f0c7ffb20f4898e6a879fcf56a41a08b0d318"}, - {file = "mypy-1.11.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:06d26c277962f3fb50e13044674aa10553981ae514288cb7d0a738f495550b36"}, - {file = "mypy-1.11.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6e7184632d89d677973a14d00ae4d03214c8bc301ceefcdaf5c474866814c987"}, - {file = "mypy-1.11.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3a66169b92452f72117e2da3a576087025449018afc2d8e9bfe5ffab865709ca"}, - {file = "mypy-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:969ea3ef09617aff826885a22ece0ddef69d95852cdad2f60c8bb06bf1f71f70"}, - {file = "mypy-1.11.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:37c7fa6121c1cdfcaac97ce3d3b5588e847aa79b580c1e922bb5d5d2902df19b"}, - {file = "mypy-1.11.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4a8a53bc3ffbd161b5b2a4fff2f0f1e23a33b0168f1c0778ec70e1a3d66deb86"}, - {file = "mypy-1.11.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ff93107f01968ed834f4256bc1fc4475e2fecf6c661260066a985b52741ddce"}, - {file = "mypy-1.11.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:edb91dded4df17eae4537668b23f0ff6baf3707683734b6a818d5b9d0c0c31a1"}, - {file = "mypy-1.11.2-cp38-cp38-win_amd64.whl", hash = "sha256:ee23de8530d99b6db0573c4ef4bd8f39a2a6f9b60655bf7a1357e585a3486f2b"}, - {file = "mypy-1.11.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:801ca29f43d5acce85f8e999b1e431fb479cb02d0e11deb7d2abb56bdaf24fd6"}, - {file = "mypy-1.11.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:af8d155170fcf87a2afb55b35dc1a0ac21df4431e7d96717621962e4b9192e70"}, - {file = "mypy-1.11.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f7821776e5c4286b6a13138cc935e2e9b6fde05e081bdebf5cdb2bb97c9df81d"}, - {file = "mypy-1.11.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:539c570477a96a4e6fb718b8d5c3e0c0eba1f485df13f86d2970c91f0673148d"}, - {file = "mypy-1.11.2-cp39-cp39-win_amd64.whl", hash = "sha256:3f14cd3d386ac4d05c5a39a51b84387403dadbd936e17cb35882134d4f8f0d24"}, - {file = "mypy-1.11.2-py3-none-any.whl", hash = "sha256:b499bc07dbdcd3de92b0a8b29fdf592c111276f6a12fe29c30f6c417dd546d12"}, - {file = "mypy-1.11.2.tar.gz", hash = "sha256:7f9993ad3e0ffdc95c2a14b66dee63729f021968bff8ad911867579c65d13a79"}, + {file = "mypy-1.13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6607e0f1dd1fb7f0aca14d936d13fd19eba5e17e1cd2a14f808fa5f8f6d8f60a"}, + {file = "mypy-1.13.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8a21be69bd26fa81b1f80a61ee7ab05b076c674d9b18fb56239d72e21d9f4c80"}, + {file = "mypy-1.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7b2353a44d2179846a096e25691d54d59904559f4232519d420d64da6828a3a7"}, + {file = "mypy-1.13.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0730d1c6a2739d4511dc4253f8274cdd140c55c32dfb0a4cf8b7a43f40abfa6f"}, + {file = "mypy-1.13.0-cp310-cp310-win_amd64.whl", hash = "sha256:c5fc54dbb712ff5e5a0fca797e6e0aa25726c7e72c6a5850cfd2adbc1eb0a372"}, + {file = "mypy-1.13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:581665e6f3a8a9078f28d5502f4c334c0c8d802ef55ea0e7276a6e409bc0d82d"}, + {file = "mypy-1.13.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3ddb5b9bf82e05cc9a627e84707b528e5c7caaa1c55c69e175abb15a761cec2d"}, + {file = "mypy-1.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:20c7ee0bc0d5a9595c46f38beb04201f2620065a93755704e141fcac9f59db2b"}, + {file = "mypy-1.13.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3790ded76f0b34bc9c8ba4def8f919dd6a46db0f5a6610fb994fe8efdd447f73"}, + {file = "mypy-1.13.0-cp311-cp311-win_amd64.whl", hash = "sha256:51f869f4b6b538229c1d1bcc1dd7d119817206e2bc54e8e374b3dfa202defcca"}, + {file = "mypy-1.13.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:5c7051a3461ae84dfb5dd15eff5094640c61c5f22257c8b766794e6dd85e72d5"}, + {file = "mypy-1.13.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:39bb21c69a5d6342f4ce526e4584bc5c197fd20a60d14a8624d8743fffb9472e"}, + {file = "mypy-1.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:164f28cb9d6367439031f4c81e84d3ccaa1e19232d9d05d37cb0bd880d3f93c2"}, + {file = "mypy-1.13.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a4c1bfcdbce96ff5d96fc9b08e3831acb30dc44ab02671eca5953eadad07d6d0"}, + {file = "mypy-1.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:a0affb3a79a256b4183ba09811e3577c5163ed06685e4d4b46429a271ba174d2"}, + {file = "mypy-1.13.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a7b44178c9760ce1a43f544e595d35ed61ac2c3de306599fa59b38a6048e1aa7"}, + {file = "mypy-1.13.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5d5092efb8516d08440e36626f0153b5006d4088c1d663d88bf79625af3d1d62"}, + {file = "mypy-1.13.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:de2904956dac40ced10931ac967ae63c5089bd498542194b436eb097a9f77bc8"}, + {file = "mypy-1.13.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:7bfd8836970d33c2105562650656b6846149374dc8ed77d98424b40b09340ba7"}, + {file = "mypy-1.13.0-cp313-cp313-win_amd64.whl", hash = "sha256:9f73dba9ec77acb86457a8fc04b5239822df0c14a082564737833d2963677dbc"}, + {file = "mypy-1.13.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:100fac22ce82925f676a734af0db922ecfea991e1d7ec0ceb1e115ebe501301a"}, + {file = "mypy-1.13.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7bcb0bb7f42a978bb323a7c88f1081d1b5dee77ca86f4100735a6f541299d8fb"}, + {file = "mypy-1.13.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bde31fc887c213e223bbfc34328070996061b0833b0a4cfec53745ed61f3519b"}, + {file = "mypy-1.13.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:07de989f89786f62b937851295ed62e51774722e5444a27cecca993fc3f9cd74"}, + {file = "mypy-1.13.0-cp38-cp38-win_amd64.whl", hash = "sha256:4bde84334fbe19bad704b3f5b78c4abd35ff1026f8ba72b29de70dda0916beb6"}, + {file = "mypy-1.13.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0246bcb1b5de7f08f2826451abd947bf656945209b140d16ed317f65a17dc7dc"}, + {file = "mypy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7f5b7deae912cf8b77e990b9280f170381fdfbddf61b4ef80927edd813163732"}, + {file = "mypy-1.13.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7029881ec6ffb8bc233a4fa364736789582c738217b133f1b55967115288a2bc"}, + {file = "mypy-1.13.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3e38b980e5681f28f033f3be86b099a247b13c491f14bb8b1e1e134d23bb599d"}, + {file = "mypy-1.13.0-cp39-cp39-win_amd64.whl", hash = "sha256:a6789be98a2017c912ae6ccb77ea553bbaf13d27605d2ca20a76dfbced631b24"}, + {file = "mypy-1.13.0-py3-none-any.whl", hash = "sha256:9c250883f9fd81d212e0952c92dbfcc96fc237f4b7c92f56ac81fd48460b3e5a"}, + {file = "mypy-1.13.0.tar.gz", hash = "sha256:0291a61b6fbf3e6673e3405cfcc0e7650bebc7939659fdca2702958038bd835e"}, ] [package.dependencies] @@ -1509,6 +801,7 @@ typing-extensions = ">=4.6.0" [package.extras] dmypy = ["psutil (>=4.0)"] +faster-cache = ["orjson"] install-types = ["pip"] mypyc = ["setuptools (>=50)"] reports = ["lxml"] @@ -1524,381 +817,213 @@ files = [ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"}, ] -[[package]] -name = "narwhals" -version = "1.8.1" -description = "Extremely lightweight compatibility layer between dataframe libraries" -optional = false -python-versions = ">=3.8" -files = [ - {file = "narwhals-1.8.1-py3-none-any.whl", hash = "sha256:91a3af813733df39a74f590fdd1bb0d2d6d8a33e32aa409f56d941c0a29f8cdd"}, - {file = "narwhals-1.8.1.tar.gz", hash = "sha256:97527778e11f39a1e5e2113b8fbb9ead788be41c0337f21852e684e378f583e8"}, -] - -[package.extras] -cudf = ["cudf (>=23.08.00)"] -dask = ["dask[dataframe] (>=2024.7)"] -modin = ["modin"] -pandas = ["pandas (>=0.25.3)"] -polars = ["polars (>=0.20.3)"] -pyarrow = ["pyarrow (>=11.0.0)"] - -[[package]] -name = "networkx" -version = "3.3" -description = "Python package for creating and manipulating graphs and networks" -optional = false -python-versions = ">=3.10" -files = [ - {file = "networkx-3.3-py3-none-any.whl", hash = "sha256:28575580c6ebdaf4505b22c6256a2b9de86b316dc63ba9e93abde3d78dfdbcf2"}, - {file = "networkx-3.3.tar.gz", hash = "sha256:0c127d8b2f4865f59ae9cb8aafcd60b5c70f3241ebd66f7defad7c4ab90126c9"}, -] - -[package.extras] -default = ["matplotlib (>=3.6)", "numpy (>=1.23)", "pandas (>=1.4)", "scipy (>=1.9,!=1.11.0,!=1.11.1)"] -developer = ["changelist (==0.5)", "mypy (>=1.1)", "pre-commit (>=3.2)", "rtoml"] -doc = ["myst-nb (>=1.0)", "numpydoc (>=1.7)", "pillow (>=9.4)", "pydata-sphinx-theme (>=0.14)", "sphinx (>=7)", "sphinx-gallery (>=0.14)", "texext (>=0.6.7)"] -extra = ["lxml (>=4.6)", "pydot (>=2.0)", "pygraphviz (>=1.12)", "sympy (>=1.10)"] -test = ["pytest (>=7.2)", "pytest-cov (>=4.0)"] - [[package]] name = "numpy" -version = "1.26.4" +version = "2.1.3" description = "Fundamental package for array computing in Python" optional = false -python-versions = ">=3.9" -files = [ - {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, - {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, - {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, - {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, - {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, - {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, - {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, - {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, - {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, - {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, - {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, - {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, - {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, - {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, - {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, - {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, - {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, - {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, - {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, - {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, - {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, - {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, - {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, -] - -[[package]] -name = "nvidia-cublas-cu11" -version = "11.10.3.66" -description = "CUBLAS native runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cublas_cu11-11.10.3.66-py3-none-manylinux1_x86_64.whl", hash = "sha256:d32e4d75f94ddfb93ea0a5dda08389bcc65d8916a25cb9f37ac89edaeed3bded"}, - {file = "nvidia_cublas_cu11-11.10.3.66-py3-none-win_amd64.whl", hash = "sha256:8ac17ba6ade3ed56ab898a036f9ae0756f1e81052a317bf98f8c6d18dc3ae49e"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cuda-cupti-cu11" -version = "11.7.101" -description = "CUDA profiling tools runtime libs." -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cuda_cupti_cu11-11.7.101-py3-none-manylinux1_x86_64.whl", hash = "sha256:e0cfd9854e1f2edaa36ca20d21cd0bdd5dcfca4e3b9e130a082e05b33b6c5895"}, - {file = "nvidia_cuda_cupti_cu11-11.7.101-py3-none-win_amd64.whl", hash = "sha256:7cc5b8f91ae5e1389c3c0ad8866b3b016a175e827ea8f162a672990a402ab2b0"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cuda-nvrtc-cu11" -version = "11.7.99" -description = "NVRTC native runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cuda_nvrtc_cu11-11.7.99-2-py3-none-manylinux1_x86_64.whl", hash = "sha256:9f1562822ea264b7e34ed5930567e89242d266448e936b85bc97a3370feabb03"}, - {file = "nvidia_cuda_nvrtc_cu11-11.7.99-py3-none-manylinux1_x86_64.whl", hash = "sha256:f7d9610d9b7c331fa0da2d1b2858a4a8315e6d49765091d28711c8946e7425e7"}, - {file = "nvidia_cuda_nvrtc_cu11-11.7.99-py3-none-win_amd64.whl", hash = "sha256:f2effeb1309bdd1b3854fc9b17eaf997808f8b25968ce0c7070945c4265d64a3"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cuda-runtime-cu11" -version = "11.7.99" -description = "CUDA Runtime native Libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cuda_runtime_cu11-11.7.99-py3-none-manylinux1_x86_64.whl", hash = "sha256:cc768314ae58d2641f07eac350f40f99dcb35719c4faff4bc458a7cd2b119e31"}, - {file = "nvidia_cuda_runtime_cu11-11.7.99-py3-none-win_amd64.whl", hash = "sha256:bc77fa59a7679310df9d5c70ab13c4e34c64ae2124dd1efd7e5474b71be125c7"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cudnn-cu11" -version = "8.5.0.96" -description = "cuDNN runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cudnn_cu11-8.5.0.96-2-py3-none-manylinux1_x86_64.whl", hash = "sha256:402f40adfc6f418f9dae9ab402e773cfed9beae52333f6d86ae3107a1b9527e7"}, - {file = "nvidia_cudnn_cu11-8.5.0.96-py3-none-manylinux1_x86_64.whl", hash = "sha256:71f8111eb830879ff2836db3cccf03bbd735df9b0d17cd93761732ac50a8a108"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cufft-cu11" -version = "10.9.0.58" -description = "CUFFT native runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cufft_cu11-10.9.0.58-py3-none-manylinux1_x86_64.whl", hash = "sha256:222f9da70c80384632fd6035e4c3f16762d64ea7a843829cb278f98b3cb7dd81"}, - {file = "nvidia_cufft_cu11-10.9.0.58-py3-none-win_amd64.whl", hash = "sha256:c4d316f17c745ec9c728e30409612eaf77a8404c3733cdf6c9c1569634d1ca03"}, -] - -[[package]] -name = "nvidia-curand-cu11" -version = "10.2.10.91" -description = "CURAND native runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_curand_cu11-10.2.10.91-py3-none-manylinux1_x86_64.whl", hash = "sha256:eecb269c970fa599a2660c9232fa46aaccbf90d9170b96c462e13bcb4d129e2c"}, - {file = "nvidia_curand_cu11-10.2.10.91-py3-none-win_amd64.whl", hash = "sha256:f742052af0e1e75523bde18895a9ed016ecf1e5aa0ecddfcc3658fd11a1ff417"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cusolver-cu11" -version = "11.4.0.1" -description = "CUDA solver native runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cusolver_cu11-11.4.0.1-2-py3-none-manylinux1_x86_64.whl", hash = "sha256:72fa7261d755ed55c0074960df5904b65e2326f7adce364cbe4945063c1be412"}, - {file = "nvidia_cusolver_cu11-11.4.0.1-py3-none-manylinux1_x86_64.whl", hash = "sha256:700b781bfefd57d161443aff9ace1878584b93e0b2cfef3d6e9296d96febbf99"}, - {file = "nvidia_cusolver_cu11-11.4.0.1-py3-none-win_amd64.whl", hash = "sha256:00f70b256add65f8c1eb3b6a65308795a93e7740f6df9e273eccbba770d370c4"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-cusparse-cu11" -version = "11.7.4.91" -description = "CUSPARSE native runtime libraries" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_cusparse_cu11-11.7.4.91-py3-none-manylinux1_x86_64.whl", hash = "sha256:a3389de714db63321aa11fbec3919271f415ef19fda58aed7f2ede488c32733d"}, - {file = "nvidia_cusparse_cu11-11.7.4.91-py3-none-win_amd64.whl", hash = "sha256:304a01599534f5186a8ed1c3756879282c72c118bc77dd890dc1ff868cad25b9"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "nvidia-nccl-cu11" -version = "2.14.3" -description = "NVIDIA Collective Communication Library (NCCL) Runtime" -optional = false -python-versions = ">=3" -files = [ - {file = "nvidia_nccl_cu11-2.14.3-py3-none-manylinux1_x86_64.whl", hash = "sha256:5e5534257d1284b8e825bc3a182c6f06acd6eb405e9f89d49340e98cd8f136eb"}, -] - -[[package]] -name = "nvidia-nvtx-cu11" -version = "11.7.91" -description = "NVIDIA Tools Extension" -optional = false -python-versions = ">=3" +python-versions = ">=3.10" files = [ - {file = "nvidia_nvtx_cu11-11.7.91-py3-none-manylinux1_x86_64.whl", hash = "sha256:b22c64eee426a62fc00952b507d6d29cf62b4c9df7a480fcc417e540e05fd5ac"}, - {file = "nvidia_nvtx_cu11-11.7.91-py3-none-win_amd64.whl", hash = "sha256:dfd7fcb2a91742513027d63a26b757f38dd8b07fecac282c4d132a9d373ff064"}, -] - -[package.dependencies] -setuptools = "*" -wheel = "*" - -[[package]] -name = "openai" -version = "0.28.1" -description = "Python client library for the OpenAI API" + {file = "numpy-2.1.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c894b4305373b9c5576d7a12b473702afdf48ce5369c074ba304cc5ad8730dff"}, + {file = "numpy-2.1.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b47fbb433d3260adcd51eb54f92a2ffbc90a4595f8970ee00e064c644ac788f5"}, + {file = "numpy-2.1.3-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:825656d0743699c529c5943554d223c021ff0494ff1442152ce887ef4f7561a1"}, + {file = "numpy-2.1.3-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:6a4825252fcc430a182ac4dee5a505053d262c807f8a924603d411f6718b88fd"}, + {file = "numpy-2.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e711e02f49e176a01d0349d82cb5f05ba4db7d5e7e0defd026328e5cfb3226d3"}, + {file = "numpy-2.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78574ac2d1a4a02421f25da9559850d59457bac82f2b8d7a44fe83a64f770098"}, + {file = "numpy-2.1.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c7662f0e3673fe4e832fe07b65c50342ea27d989f92c80355658c7f888fcc83c"}, + {file = "numpy-2.1.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:fa2d1337dc61c8dc417fbccf20f6d1e139896a30721b7f1e832b2bb6ef4eb6c4"}, + {file = "numpy-2.1.3-cp310-cp310-win32.whl", hash = "sha256:72dcc4a35a8515d83e76b58fdf8113a5c969ccd505c8a946759b24e3182d1f23"}, + {file = "numpy-2.1.3-cp310-cp310-win_amd64.whl", hash = "sha256:ecc76a9ba2911d8d37ac01de72834d8849e55473457558e12995f4cd53e778e0"}, + {file = "numpy-2.1.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4d1167c53b93f1f5d8a139a742b3c6f4d429b54e74e6b57d0eff40045187b15d"}, + {file = "numpy-2.1.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c80e4a09b3d95b4e1cac08643f1152fa71a0a821a2d4277334c88d54b2219a41"}, + {file = "numpy-2.1.3-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:576a1c1d25e9e02ed7fa5477f30a127fe56debd53b8d2c89d5578f9857d03ca9"}, + {file = "numpy-2.1.3-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:973faafebaae4c0aaa1a1ca1ce02434554d67e628b8d805e61f874b84e136b09"}, + {file = "numpy-2.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:762479be47a4863e261a840e8e01608d124ee1361e48b96916f38b119cfda04a"}, + {file = "numpy-2.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc6f24b3d1ecc1eebfbf5d6051faa49af40b03be1aaa781ebdadcbc090b4539b"}, + {file = "numpy-2.1.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:17ee83a1f4fef3c94d16dc1802b998668b5419362c8a4f4e8a491de1b41cc3ee"}, + {file = "numpy-2.1.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:15cb89f39fa6d0bdfb600ea24b250e5f1a3df23f901f51c8debaa6a5d122b2f0"}, + {file = "numpy-2.1.3-cp311-cp311-win32.whl", hash = "sha256:d9beb777a78c331580705326d2367488d5bc473b49a9bc3036c154832520aca9"}, + {file = "numpy-2.1.3-cp311-cp311-win_amd64.whl", hash = "sha256:d89dd2b6da69c4fff5e39c28a382199ddedc3a5be5390115608345dec660b9e2"}, + {file = "numpy-2.1.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f55ba01150f52b1027829b50d70ef1dafd9821ea82905b63936668403c3b471e"}, + {file = "numpy-2.1.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:13138eadd4f4da03074851a698ffa7e405f41a0845a6b1ad135b81596e4e9958"}, + {file = "numpy-2.1.3-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:a6b46587b14b888e95e4a24d7b13ae91fa22386c199ee7b418f449032b2fa3b8"}, + {file = "numpy-2.1.3-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:0fa14563cc46422e99daef53d725d0c326e99e468a9320a240affffe87852564"}, + {file = "numpy-2.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8637dcd2caa676e475503d1f8fdb327bc495554e10838019651b76d17b98e512"}, + {file = "numpy-2.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2312b2aa89e1f43ecea6da6ea9a810d06aae08321609d8dc0d0eda6d946a541b"}, + {file = "numpy-2.1.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a38c19106902bb19351b83802531fea19dee18e5b37b36454f27f11ff956f7fc"}, + {file = "numpy-2.1.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:02135ade8b8a84011cbb67dc44e07c58f28575cf9ecf8ab304e51c05528c19f0"}, + {file = "numpy-2.1.3-cp312-cp312-win32.whl", hash = "sha256:e6988e90fcf617da2b5c78902fe8e668361b43b4fe26dbf2d7b0f8034d4cafb9"}, + {file = "numpy-2.1.3-cp312-cp312-win_amd64.whl", hash = "sha256:0d30c543f02e84e92c4b1f415b7c6b5326cbe45ee7882b6b77db7195fb971e3a"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:96fe52fcdb9345b7cd82ecd34547fca4321f7656d500eca497eb7ea5a926692f"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f653490b33e9c3a4c1c01d41bc2aef08f9475af51146e4a7710c450cf9761598"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:dc258a761a16daa791081d026f0ed4399b582712e6fc887a95af09df10c5ca57"}, + {file = "numpy-2.1.3-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:016d0f6f5e77b0f0d45d77387ffa4bb89816b57c835580c3ce8e099ef830befe"}, + {file = "numpy-2.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c181ba05ce8299c7aa3125c27b9c2167bca4a4445b7ce73d5febc411ca692e43"}, + {file = "numpy-2.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5641516794ca9e5f8a4d17bb45446998c6554704d888f86df9b200e66bdcce56"}, + {file = "numpy-2.1.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ea4dedd6e394a9c180b33c2c872b92f7ce0f8e7ad93e9585312b0c5a04777a4a"}, + {file = "numpy-2.1.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0df3635b9c8ef48bd3be5f862cf71b0a4716fa0e702155c45067c6b711ddcef"}, + {file = "numpy-2.1.3-cp313-cp313-win32.whl", hash = "sha256:50ca6aba6e163363f132b5c101ba078b8cbd3fa92c7865fd7d4d62d9779ac29f"}, + {file = "numpy-2.1.3-cp313-cp313-win_amd64.whl", hash = "sha256:747641635d3d44bcb380d950679462fae44f54b131be347d5ec2bce47d3df9ed"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:996bb9399059c5b82f76b53ff8bb686069c05acc94656bb259b1d63d04a9506f"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:45966d859916ad02b779706bb43b954281db43e185015df6eb3323120188f9e4"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:baed7e8d7481bfe0874b566850cb0b85243e982388b7b23348c6db2ee2b2ae8e"}, + {file = "numpy-2.1.3-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:a9f7f672a3388133335589cfca93ed468509cb7b93ba3105fce780d04a6576a0"}, + {file = "numpy-2.1.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7aac50327da5d208db2eec22eb11e491e3fe13d22653dce51b0f4109101b408"}, + {file = "numpy-2.1.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4394bc0dbd074b7f9b52024832d16e019decebf86caf909d94f6b3f77a8ee3b6"}, + {file = "numpy-2.1.3-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:50d18c4358a0a8a53f12a8ba9d772ab2d460321e6a93d6064fc22443d189853f"}, + {file = "numpy-2.1.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:14e253bd43fc6b37af4921b10f6add6925878a42a0c5fe83daee390bca80bc17"}, + {file = "numpy-2.1.3-cp313-cp313t-win32.whl", hash = "sha256:08788d27a5fd867a663f6fc753fd7c3ad7e92747efc73c53bca2f19f8bc06f48"}, + {file = "numpy-2.1.3-cp313-cp313t-win_amd64.whl", hash = "sha256:2564fbdf2b99b3f815f2107c1bbc93e2de8ee655a69c261363a1172a79a257d4"}, + {file = "numpy-2.1.3-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:4f2015dfe437dfebbfce7c85c7b53d81ba49e71ba7eadbf1df40c915af75979f"}, + {file = "numpy-2.1.3-pp310-pypy310_pp73-macosx_14_0_x86_64.whl", hash = "sha256:3522b0dfe983a575e6a9ab3a4a4dfe156c3e428468ff08ce582b9bb6bd1d71d4"}, + {file = "numpy-2.1.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c006b607a865b07cd981ccb218a04fc86b600411d83d6fc261357f1c0966755d"}, + {file = "numpy-2.1.3-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:e14e26956e6f1696070788252dcdff11b4aca4c3e8bd166e0df1bb8f315a67cb"}, + {file = "numpy-2.1.3.tar.gz", hash = "sha256:aa08e04e08aaf974d4458def539dece0d28146d866a39da5639596f4921fd761"}, +] + +[[package]] +name = "oauthlib" +version = "3.2.2" +description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" optional = false -python-versions = ">=3.7.1" +python-versions = ">=3.6" files = [ - {file = "openai-0.28.1-py3-none-any.whl", hash = "sha256:d18690f9e3d31eedb66b57b88c2165d760b24ea0a01f150dd3f068155088ce68"}, - {file = "openai-0.28.1.tar.gz", hash = "sha256:4be1dad329a65b4ce1a660fe6d5431b438f429b5855c883435f0f7fcb6d2dcc8"}, + {file = "oauthlib-3.2.2-py3-none-any.whl", hash = "sha256:8139f29aac13e25d502680e9e19963e83f16838d48a0d71c287fe40e7067fbca"}, + {file = "oauthlib-3.2.2.tar.gz", hash = "sha256:9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918"}, ] -[package.dependencies] -aiohttp = "*" -requests = ">=2.20" -tqdm = "*" - [package.extras] -datalib = ["numpy", "openpyxl (>=3.0.7)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)"] -dev = ["black (>=21.6b0,<22.0)", "pytest (==6.*)", "pytest-asyncio", "pytest-mock"] -embeddings = ["matplotlib", "numpy", "openpyxl (>=3.0.7)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "plotly", "scikit-learn (>=1.0.2)", "scipy", "tenacity (>=8.0.1)"] -wandb = ["numpy", "openpyxl (>=3.0.7)", "pandas (>=1.2.3)", "pandas-stubs (>=1.1.0.11)", "wandb"] +rsa = ["cryptography (>=3.0.0)"] +signals = ["blinker (>=1.4.0)"] +signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] [[package]] name = "orjson" -version = "3.10.7" +version = "3.10.11" description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy" optional = false python-versions = ">=3.8" files = [ - {file = "orjson-3.10.7-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:74f4544f5a6405b90da8ea724d15ac9c36da4d72a738c64685003337401f5c12"}, - {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34a566f22c28222b08875b18b0dfbf8a947e69df21a9ed5c51a6bf91cfb944ac"}, - {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bf6ba8ebc8ef5792e2337fb0419f8009729335bb400ece005606336b7fd7bab7"}, - {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac7cf6222b29fbda9e3a472b41e6a5538b48f2c8f99261eecd60aafbdb60690c"}, - {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:de817e2f5fc75a9e7dd350c4b0f54617b280e26d1631811a43e7e968fa71e3e9"}, - {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:348bdd16b32556cf8d7257b17cf2bdb7ab7976af4af41ebe79f9796c218f7e91"}, - {file = "orjson-3.10.7-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:479fd0844ddc3ca77e0fd99644c7fe2de8e8be1efcd57705b5c92e5186e8a250"}, - {file = "orjson-3.10.7-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:fdf5197a21dd660cf19dfd2a3ce79574588f8f5e2dbf21bda9ee2d2b46924d84"}, - {file = "orjson-3.10.7-cp310-none-win32.whl", hash = "sha256:d374d36726746c81a49f3ff8daa2898dccab6596864ebe43d50733275c629175"}, - {file = "orjson-3.10.7-cp310-none-win_amd64.whl", hash = "sha256:cb61938aec8b0ffb6eef484d480188a1777e67b05d58e41b435c74b9d84e0b9c"}, - {file = "orjson-3.10.7-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:7db8539039698ddfb9a524b4dd19508256107568cdad24f3682d5773e60504a2"}, - {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:480f455222cb7a1dea35c57a67578848537d2602b46c464472c995297117fa09"}, - {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8a9c9b168b3a19e37fe2778c0003359f07822c90fdff8f98d9d2a91b3144d8e0"}, - {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8de062de550f63185e4c1c54151bdddfc5625e37daf0aa1e75d2a1293e3b7d9a"}, - {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6b0dd04483499d1de9c8f6203f8975caf17a6000b9c0c54630cef02e44ee624e"}, - {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b58d3795dafa334fc8fd46f7c5dc013e6ad06fd5b9a4cc98cb1456e7d3558bd6"}, - {file = "orjson-3.10.7-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:33cfb96c24034a878d83d1a9415799a73dc77480e6c40417e5dda0710d559ee6"}, - {file = "orjson-3.10.7-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e724cebe1fadc2b23c6f7415bad5ee6239e00a69f30ee423f319c6af70e2a5c0"}, - {file = "orjson-3.10.7-cp311-none-win32.whl", hash = "sha256:82763b46053727a7168d29c772ed5c870fdae2f61aa8a25994c7984a19b1021f"}, - {file = "orjson-3.10.7-cp311-none-win_amd64.whl", hash = "sha256:eb8d384a24778abf29afb8e41d68fdd9a156cf6e5390c04cc07bbc24b89e98b5"}, - {file = "orjson-3.10.7-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:44a96f2d4c3af51bfac6bc4ef7b182aa33f2f054fd7f34cc0ee9a320d051d41f"}, - {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76ac14cd57df0572453543f8f2575e2d01ae9e790c21f57627803f5e79b0d3c3"}, - {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bdbb61dcc365dd9be94e8f7df91975edc9364d6a78c8f7adb69c1cdff318ec93"}, - {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b48b3db6bb6e0a08fa8c83b47bc169623f801e5cc4f24442ab2b6617da3b5313"}, - {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:23820a1563a1d386414fef15c249040042b8e5d07b40ab3fe3efbfbbcbcb8864"}, - {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0c6a008e91d10a2564edbb6ee5069a9e66df3fbe11c9a005cb411f441fd2c09"}, - {file = "orjson-3.10.7-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d352ee8ac1926d6193f602cbe36b1643bbd1bbcb25e3c1a657a4390f3000c9a5"}, - {file = "orjson-3.10.7-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:d2d9f990623f15c0ae7ac608103c33dfe1486d2ed974ac3f40b693bad1a22a7b"}, - {file = "orjson-3.10.7-cp312-none-win32.whl", hash = "sha256:7c4c17f8157bd520cdb7195f75ddbd31671997cbe10aee559c2d613592e7d7eb"}, - {file = "orjson-3.10.7-cp312-none-win_amd64.whl", hash = "sha256:1d9c0e733e02ada3ed6098a10a8ee0052dd55774de3d9110d29868d24b17faa1"}, - {file = "orjson-3.10.7-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:77d325ed866876c0fa6492598ec01fe30e803272a6e8b10e992288b009cbe149"}, - {file = "orjson-3.10.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ea2c232deedcb605e853ae1db2cc94f7390ac776743b699b50b071b02bea6fe"}, - {file = "orjson-3.10.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:3dcfbede6737fdbef3ce9c37af3fb6142e8e1ebc10336daa05872bfb1d87839c"}, - {file = "orjson-3.10.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:11748c135f281203f4ee695b7f80bb1358a82a63905f9f0b794769483ea854ad"}, - {file = "orjson-3.10.7-cp313-none-win32.whl", hash = "sha256:a7e19150d215c7a13f39eb787d84db274298d3f83d85463e61d277bbd7f401d2"}, - {file = "orjson-3.10.7-cp313-none-win_amd64.whl", hash = "sha256:eef44224729e9525d5261cc8d28d6b11cafc90e6bd0be2157bde69a52ec83024"}, - {file = "orjson-3.10.7-cp38-cp38-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:6ea2b2258eff652c82652d5e0f02bd5e0463a6a52abb78e49ac288827aaa1469"}, - {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:430ee4d85841e1483d487e7b81401785a5dfd69db5de01314538f31f8fbf7ee1"}, - {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4b6146e439af4c2472c56f8540d799a67a81226e11992008cb47e1267a9b3225"}, - {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:084e537806b458911137f76097e53ce7bf5806dda33ddf6aaa66a028f8d43a23"}, - {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4829cf2195838e3f93b70fd3b4292156fc5e097aac3739859ac0dcc722b27ac0"}, - {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1193b2416cbad1a769f868b1749535d5da47626ac29445803dae7cc64b3f5c98"}, - {file = "orjson-3.10.7-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:4e6c3da13e5a57e4b3dca2de059f243ebec705857522f188f0180ae88badd354"}, - {file = "orjson-3.10.7-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:c31008598424dfbe52ce8c5b47e0752dca918a4fdc4a2a32004efd9fab41d866"}, - {file = "orjson-3.10.7-cp38-none-win32.whl", hash = "sha256:7122a99831f9e7fe977dc45784d3b2edc821c172d545e6420c375e5a935f5a1c"}, - {file = "orjson-3.10.7-cp38-none-win_amd64.whl", hash = "sha256:a763bc0e58504cc803739e7df040685816145a6f3c8a589787084b54ebc9f16e"}, - {file = "orjson-3.10.7-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:e76be12658a6fa376fcd331b1ea4e58f5a06fd0220653450f0d415b8fd0fbe20"}, - {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed350d6978d28b92939bfeb1a0570c523f6170efc3f0a0ef1f1df287cd4f4960"}, - {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:144888c76f8520e39bfa121b31fd637e18d4cc2f115727865fdf9fa325b10412"}, - {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09b2d92fd95ad2402188cf51573acde57eb269eddabaa60f69ea0d733e789fe9"}, - {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5b24a579123fa884f3a3caadaed7b75eb5715ee2b17ab5c66ac97d29b18fe57f"}, - {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591bcfe7512353bd609875ab38050efe3d55e18934e2f18950c108334b4ff"}, - {file = "orjson-3.10.7-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:f4db56635b58cd1a200b0a23744ff44206ee6aa428185e2b6c4a65b3197abdcd"}, - {file = "orjson-3.10.7-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0fa5886854673222618638c6df7718ea7fe2f3f2384c452c9ccedc70b4a510a5"}, - {file = "orjson-3.10.7-cp39-none-win32.whl", hash = "sha256:8272527d08450ab16eb405f47e0f4ef0e5ff5981c3d82afe0efd25dcbef2bcd2"}, - {file = "orjson-3.10.7-cp39-none-win_amd64.whl", hash = "sha256:974683d4618c0c7dbf4f69c95a979734bf183d0658611760017f6e70a145af58"}, - {file = "orjson-3.10.7.tar.gz", hash = "sha256:75ef0640403f945f3a1f9f6400686560dbfb0fb5b16589ad62cd477043c4eee3"}, + {file = "orjson-3.10.11-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:6dade64687f2bd7c090281652fe18f1151292d567a9302b34c2dbb92a3872f1f"}, + {file = "orjson-3.10.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82f07c550a6ccd2b9290849b22316a609023ed851a87ea888c0456485a7d196a"}, + {file = "orjson-3.10.11-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bd9a187742d3ead9df2e49240234d728c67c356516cf4db018833a86f20ec18c"}, + {file = "orjson-3.10.11-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:77b0fed6f209d76c1c39f032a70df2d7acf24b1812ca3e6078fd04e8972685a3"}, + {file = "orjson-3.10.11-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:63fc9d5fe1d4e8868f6aae547a7b8ba0a2e592929245fff61d633f4caccdcdd6"}, + {file = "orjson-3.10.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:65cd3e3bb4fbb4eddc3c1e8dce10dc0b73e808fcb875f9fab40c81903dd9323e"}, + {file = "orjson-3.10.11-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:6f67c570602300c4befbda12d153113b8974a3340fdcf3d6de095ede86c06d92"}, + {file = "orjson-3.10.11-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:1f39728c7f7d766f1f5a769ce4d54b5aaa4c3f92d5b84817053cc9995b977acc"}, + {file = "orjson-3.10.11-cp310-none-win32.whl", hash = "sha256:1789d9db7968d805f3d94aae2c25d04014aae3a2fa65b1443117cd462c6da647"}, + {file = "orjson-3.10.11-cp310-none-win_amd64.whl", hash = "sha256:5576b1e5a53a5ba8f8df81872bb0878a112b3ebb1d392155f00f54dd86c83ff6"}, + {file = "orjson-3.10.11-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:1444f9cb7c14055d595de1036f74ecd6ce15f04a715e73f33bb6326c9cef01b6"}, + {file = "orjson-3.10.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdec57fe3b4bdebcc08a946db3365630332dbe575125ff3d80a3272ebd0ddafe"}, + {file = "orjson-3.10.11-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4eed32f33a0ea6ef36ccc1d37f8d17f28a1d6e8eefae5928f76aff8f1df85e67"}, + {file = "orjson-3.10.11-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80df27dd8697242b904f4ea54820e2d98d3f51f91e97e358fc13359721233e4b"}, + {file = "orjson-3.10.11-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:705f03cee0cb797256d54de6695ef219e5bc8c8120b6654dd460848d57a9af3d"}, + {file = "orjson-3.10.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:03246774131701de8e7059b2e382597da43144a9a7400f178b2a32feafc54bd5"}, + {file = "orjson-3.10.11-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8b5759063a6c940a69c728ea70d7c33583991c6982915a839c8da5f957e0103a"}, + {file = "orjson-3.10.11-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:677f23e32491520eebb19c99bb34675daf5410c449c13416f7f0d93e2cf5f981"}, + {file = "orjson-3.10.11-cp311-none-win32.whl", hash = "sha256:a11225d7b30468dcb099498296ffac36b4673a8398ca30fdaec1e6c20df6aa55"}, + {file = "orjson-3.10.11-cp311-none-win_amd64.whl", hash = "sha256:df8c677df2f9f385fcc85ab859704045fa88d4668bc9991a527c86e710392bec"}, + {file = "orjson-3.10.11-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:360a4e2c0943da7c21505e47cf6bd725588962ff1d739b99b14e2f7f3545ba51"}, + {file = "orjson-3.10.11-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:496e2cb45de21c369079ef2d662670a4892c81573bcc143c4205cae98282ba97"}, + {file = "orjson-3.10.11-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7dfa8db55c9792d53c5952900c6a919cfa377b4f4534c7a786484a6a4a350c19"}, + {file = "orjson-3.10.11-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:51f3382415747e0dbda9dade6f1e1a01a9d37f630d8c9049a8ed0e385b7a90c0"}, + {file = "orjson-3.10.11-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f35a1b9f50a219f470e0e497ca30b285c9f34948d3c8160d5ad3a755d9299433"}, + {file = "orjson-3.10.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e2f3b7c5803138e67028dde33450e054c87e0703afbe730c105f1fcd873496d5"}, + {file = "orjson-3.10.11-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:f91d9eb554310472bd09f5347950b24442600594c2edc1421403d7610a0998fd"}, + {file = "orjson-3.10.11-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dfbb2d460a855c9744bbc8e36f9c3a997c4b27d842f3d5559ed54326e6911f9b"}, + {file = "orjson-3.10.11-cp312-none-win32.whl", hash = "sha256:d4a62c49c506d4d73f59514986cadebb7e8d186ad510c518f439176cf8d5359d"}, + {file = "orjson-3.10.11-cp312-none-win_amd64.whl", hash = "sha256:f1eec3421a558ff7a9b010a6c7effcfa0ade65327a71bb9b02a1c3b77a247284"}, + {file = "orjson-3.10.11-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:c46294faa4e4d0eb73ab68f1a794d2cbf7bab33b1dda2ac2959ffb7c61591899"}, + {file = "orjson-3.10.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52e5834d7d6e58a36846e059d00559cb9ed20410664f3ad156cd2cc239a11230"}, + {file = "orjson-3.10.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a2fc947e5350fdce548bfc94f434e8760d5cafa97fb9c495d2fef6757aa02ec0"}, + {file = "orjson-3.10.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0efabbf839388a1dab5b72b5d3baedbd6039ac83f3b55736eb9934ea5494d258"}, + {file = "orjson-3.10.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a3f29634260708c200c4fe148e42b4aae97d7b9fee417fbdd74f8cfc265f15b0"}, + {file = "orjson-3.10.11-cp313-none-win32.whl", hash = "sha256:1a1222ffcee8a09476bbdd5d4f6f33d06d0d6642df2a3d78b7a195ca880d669b"}, + {file = "orjson-3.10.11-cp313-none-win_amd64.whl", hash = "sha256:bc274ac261cc69260913b2d1610760e55d3c0801bb3457ba7b9004420b6b4270"}, + {file = "orjson-3.10.11-cp38-cp38-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:19b3763e8bbf8ad797df6b6b5e0fc7c843ec2e2fc0621398534e0c6400098f87"}, + {file = "orjson-3.10.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1be83a13312e5e58d633580c5eb8d0495ae61f180da2722f20562974188af205"}, + {file = "orjson-3.10.11-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:afacfd1ab81f46dedd7f6001b6d4e8de23396e4884cd3c3436bd05defb1a6446"}, + {file = "orjson-3.10.11-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cb4d0bea56bba596723d73f074c420aec3b2e5d7d30698bc56e6048066bd560c"}, + {file = "orjson-3.10.11-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:96ed1de70fcb15d5fed529a656df29f768187628727ee2788344e8a51e1c1350"}, + {file = "orjson-3.10.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4bfb30c891b530f3f80e801e3ad82ef150b964e5c38e1fb8482441c69c35c61c"}, + {file = "orjson-3.10.11-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:d496c74fc2b61341e3cefda7eec21b7854c5f672ee350bc55d9a4997a8a95204"}, + {file = "orjson-3.10.11-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:655a493bac606655db9a47fe94d3d84fc7f3ad766d894197c94ccf0c5408e7d3"}, + {file = "orjson-3.10.11-cp38-none-win32.whl", hash = "sha256:b9546b278c9fb5d45380f4809e11b4dd9844ca7aaf1134024503e134ed226161"}, + {file = "orjson-3.10.11-cp38-none-win_amd64.whl", hash = "sha256:b592597fe551d518f42c5a2eb07422eb475aa8cfdc8c51e6da7054b836b26782"}, + {file = "orjson-3.10.11-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:c95f2ecafe709b4e5c733b5e2768ac569bed308623c85806c395d9cca00e08af"}, + {file = "orjson-3.10.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:80c00d4acded0c51c98754fe8218cb49cb854f0f7eb39ea4641b7f71732d2cb7"}, + {file = "orjson-3.10.11-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:461311b693d3d0a060439aa669c74f3603264d4e7a08faa68c47ae5a863f352d"}, + {file = "orjson-3.10.11-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:52ca832f17d86a78cbab86cdc25f8c13756ebe182b6fc1a97d534051c18a08de"}, + {file = "orjson-3.10.11-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f4c57ea78a753812f528178aa2f1c57da633754c91d2124cb28991dab4c79a54"}, + {file = "orjson-3.10.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b7fcfc6f7ca046383fb954ba528587e0f9336828b568282b27579c49f8e16aad"}, + {file = "orjson-3.10.11-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:86b9dd983857970c29e4c71bb3e95ff085c07d3e83e7c46ebe959bac07ebd80b"}, + {file = "orjson-3.10.11-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:4d83f87582d223e54efb2242a79547611ba4ebae3af8bae1e80fa9a0af83bb7f"}, + {file = "orjson-3.10.11-cp39-none-win32.whl", hash = "sha256:9fd0ad1c129bc9beb1154c2655f177620b5beaf9a11e0d10bac63ef3fce96950"}, + {file = "orjson-3.10.11-cp39-none-win_amd64.whl", hash = "sha256:10f416b2a017c8bd17f325fb9dee1fb5cdd7a54e814284896b7c3f2763faa017"}, + {file = "orjson-3.10.11.tar.gz", hash = "sha256:e35b6d730de6384d5b2dab5fd23f0d76fae8bbc8c353c2f78210aa5fa4beb3ef"}, ] [[package]] name = "packaging" -version = "24.1" +version = "24.2" description = "Core utilities for Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "packaging-24.1-py3-none-any.whl", hash = "sha256:5b8f2217dbdbd2f7f384c41c628544e6d52f2d0f53c6d0c3ea61aa5d1d7ff124"}, - {file = "packaging-24.1.tar.gz", hash = "sha256:026ed72c8ed3fcce5bf8950572258698927fd1dbda10a5e981cdf0ac37f4f002"}, + {file = "packaging-24.2-py3-none-any.whl", hash = "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759"}, + {file = "packaging-24.2.tar.gz", hash = "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f"}, ] [[package]] name = "pandas" -version = "2.2.2" +version = "2.2.3" description = "Powerful data structures for data analysis, time series, and statistics" optional = false python-versions = ">=3.9" files = [ - {file = "pandas-2.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:90c6fca2acf139569e74e8781709dccb6fe25940488755716d1d354d6bc58bce"}, - {file = "pandas-2.2.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c7adfc142dac335d8c1e0dcbd37eb8617eac386596eb9e1a1b77791cf2498238"}, - {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4abfe0be0d7221be4f12552995e58723c7422c80a659da13ca382697de830c08"}, - {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8635c16bf3d99040fdf3ca3db669a7250ddf49c55dc4aa8fe0ae0fa8d6dcc1f0"}, - {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:40ae1dffb3967a52203105a077415a86044a2bea011b5f321c6aa64b379a3f51"}, - {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8e5a0b00e1e56a842f922e7fae8ae4077aee4af0acb5ae3622bd4b4c30aedf99"}, - {file = "pandas-2.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:ddf818e4e6c7c6f4f7c8a12709696d193976b591cc7dc50588d3d1a6b5dc8772"}, - {file = "pandas-2.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:696039430f7a562b74fa45f540aca068ea85fa34c244d0deee539cb6d70aa288"}, - {file = "pandas-2.2.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8e90497254aacacbc4ea6ae5e7a8cd75629d6ad2b30025a4a8b09aa4faf55151"}, - {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58b84b91b0b9f4bafac2a0ac55002280c094dfc6402402332c0913a59654ab2b"}, - {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d2123dc9ad6a814bcdea0f099885276b31b24f7edf40f6cdbc0912672e22eee"}, - {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:2925720037f06e89af896c70bca73459d7e6a4be96f9de79e2d440bd499fe0db"}, - {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0cace394b6ea70c01ca1595f839cf193df35d1575986e484ad35c4aeae7266c1"}, - {file = "pandas-2.2.2-cp311-cp311-win_amd64.whl", hash = "sha256:873d13d177501a28b2756375d59816c365e42ed8417b41665f346289adc68d24"}, - {file = "pandas-2.2.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9dfde2a0ddef507a631dc9dc4af6a9489d5e2e740e226ad426a05cabfbd7c8ef"}, - {file = "pandas-2.2.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e9b79011ff7a0f4b1d6da6a61aa1aa604fb312d6647de5bad20013682d1429ce"}, - {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1cb51fe389360f3b5a4d57dbd2848a5f033350336ca3b340d1c53a1fad33bcad"}, - {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eee3a87076c0756de40b05c5e9a6069c035ba43e8dd71c379e68cab2c20f16ad"}, - {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3e374f59e440d4ab45ca2fffde54b81ac3834cf5ae2cdfa69c90bc03bde04d76"}, - {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:43498c0bdb43d55cb162cdc8c06fac328ccb5d2eabe3cadeb3529ae6f0517c32"}, - {file = "pandas-2.2.2-cp312-cp312-win_amd64.whl", hash = "sha256:d187d355ecec3629624fccb01d104da7d7f391db0311145817525281e2804d23"}, - {file = "pandas-2.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0ca6377b8fca51815f382bd0b697a0814c8bda55115678cbc94c30aacbb6eff2"}, - {file = "pandas-2.2.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9057e6aa78a584bc93a13f0a9bf7e753a5e9770a30b4d758b8d5f2a62a9433cd"}, - {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:001910ad31abc7bf06f49dcc903755d2f7f3a9186c0c040b827e522e9cef0863"}, - {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66b479b0bd07204e37583c191535505410daa8df638fd8e75ae1b383851fe921"}, - {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a77e9d1c386196879aa5eb712e77461aaee433e54c68cf253053a73b7e49c33a"}, - {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:92fd6b027924a7e178ac202cfbe25e53368db90d56872d20ffae94b96c7acc57"}, - {file = "pandas-2.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:640cef9aa381b60e296db324337a554aeeb883ead99dc8f6c18e81a93942f5f4"}, - {file = "pandas-2.2.2.tar.gz", hash = "sha256:9e79019aba43cb4fda9e4d983f8e88ca0373adbb697ae9c6c43093218de28b54"}, + {file = "pandas-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1948ddde24197a0f7add2bdc4ca83bf2b1ef84a1bc8ccffd95eda17fd836ecb5"}, + {file = "pandas-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:381175499d3802cde0eabbaf6324cce0c4f5d52ca6f8c377c29ad442f50f6348"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d9c45366def9a3dd85a6454c0e7908f2b3b8e9c138f5dc38fed7ce720d8453ed"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86976a1c5b25ae3f8ccae3a5306e443569ee3c3faf444dfd0f41cda24667ad57"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8661b0238a69d7aafe156b7fa86c44b881387509653fdf857bebc5e4008ad42"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:37e0aced3e8f539eccf2e099f65cdb9c8aa85109b0be6e93e2baff94264bdc6f"}, + {file = "pandas-2.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:56534ce0746a58afaf7942ba4863e0ef81c9c50d3f0ae93e9497d6a41a057645"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:66108071e1b935240e74525006034333f98bcdb87ea116de573a6a0dccb6c039"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7c2875855b0ff77b2a64a0365e24455d9990730d6431b9e0ee18ad8acee13dbd"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cd8d0c3be0515c12fed0bdbae072551c8b54b7192c7b1fda0ba56059a0179698"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c124333816c3a9b03fbeef3a9f230ba9a737e9e5bb4060aa2107a86cc0a497fc"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:63cc132e40a2e084cf01adf0775b15ac515ba905d7dcca47e9a251819c575ef3"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:29401dbfa9ad77319367d36940cd8a0b3a11aba16063e39632d98b0e931ddf32"}, + {file = "pandas-2.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:3fc6873a41186404dad67245896a6e440baacc92f5b716ccd1bc9ed2995ab2c5"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b1d432e8d08679a40e2a6d8b2f9770a5c21793a6f9f47fdd52c5ce1948a5a8a9"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a5a1595fe639f5988ba6a8e5bc9649af3baf26df3998a0abe56c02609392e0a4"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5de54125a92bb4d1c051c0659e6fcb75256bf799a732a87184e5ea503965bce3"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fffb8ae78d8af97f849404f21411c95062db1496aeb3e56f146f0355c9989319"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dfcb5ee8d4d50c06a51c2fffa6cff6272098ad6540aed1a76d15fb9318194d8"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:062309c1b9ea12a50e8ce661145c6aab431b1e99530d3cd60640e255778bd43a"}, + {file = "pandas-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f00d1345d84d8c86a63e476bb4955e46458b304b9575dcf71102b5c705320015"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3508d914817e153ad359d7e069d752cdd736a247c322d932eb89e6bc84217f28"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22a9d949bfc9a502d320aa04e5d02feab689d61da4e7764b62c30b991c42c5f0"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3a255b2c19987fbbe62a9dfd6cff7ff2aa9ccab3fc75218fd4b7530f01efa24"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:800250ecdadb6d9c78eae4990da62743b857b470883fa27f652db8bdde7f6659"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6374c452ff3ec675a8f46fd9ab25c4ad0ba590b71cf0656f8b6daa5202bca3fb"}, + {file = "pandas-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b71f27954685ee685317063bf13c7709a7ba74fc996b84fc6821c59b0f06468"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:38cf8125c40dae9d5acc10fa66af8ea6fdf760b2714ee482ca691fc66e6fcb18"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba96630bc17c875161df3818780af30e43be9b166ce51c9a18c1feae342906c2"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db71525a1538b30142094edb9adc10be3f3e176748cd7acc2240c2f2e5aa3a4"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15c0e1e02e93116177d29ff83e8b1619c93ddc9c49083f237d4312337a61165d"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ad5b65698ab28ed8d7f18790a0dc58005c7629f227be9ecc1072aa74c0c1d43a"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc6b93f9b966093cb0fd62ff1a7e4c09e6d546ad7c1de191767baffc57628f39"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5dbca4c1acd72e8eeef4753eeca07de9b1db4f398669d5994086f788a5d7cc30"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8cd6d7cc958a3910f934ea8dbdf17b2364827bb4dafc38ce6eef6bb3d65ff09c"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99df71520d25fade9db7c1076ac94eb994f4d2673ef2aa2e86ee039b6746d20c"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31d0ced62d4ea3e231a9f228366919a5ea0b07440d9d4dac345376fd8e1477ea"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7eee9e7cea6adf3e3d24e304ac6b8300646e2a5d1cd3a3c2abed9101b0846761"}, + {file = "pandas-2.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:4850ba03528b6dd51d6c5d273c46f183f39a9baf3f0143e566b89450965b105e"}, + {file = "pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667"}, ] [package.dependencies] @@ -1949,95 +1074,90 @@ files = [ [[package]] name = "pillow" -version = "10.4.0" +version = "11.0.0" description = "Python Imaging Library (Fork)" optional = false -python-versions = ">=3.8" +python-versions = ">=3.9" files = [ - {file = "pillow-10.4.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:4d9667937cfa347525b319ae34375c37b9ee6b525440f3ef48542fcf66f2731e"}, - {file = "pillow-10.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:543f3dc61c18dafb755773efc89aae60d06b6596a63914107f75459cf984164d"}, - {file = "pillow-10.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7928ecbf1ece13956b95d9cbcfc77137652b02763ba384d9ab508099a2eca856"}, - {file = "pillow-10.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4d49b85c4348ea0b31ea63bc75a9f3857869174e2bf17e7aba02945cd218e6f"}, - {file = "pillow-10.4.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:6c762a5b0997f5659a5ef2266abc1d8851ad7749ad9a6a5506eb23d314e4f46b"}, - {file = "pillow-10.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a985e028fc183bf12a77a8bbf36318db4238a3ded7fa9df1b9a133f1cb79f8fc"}, - {file = "pillow-10.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:812f7342b0eee081eaec84d91423d1b4650bb9828eb53d8511bcef8ce5aecf1e"}, - {file = "pillow-10.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ac1452d2fbe4978c2eec89fb5a23b8387aba707ac72810d9490118817d9c0b46"}, - {file = "pillow-10.4.0-cp310-cp310-win32.whl", hash = "sha256:bcd5e41a859bf2e84fdc42f4edb7d9aba0a13d29a2abadccafad99de3feff984"}, - {file = "pillow-10.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:ecd85a8d3e79cd7158dec1c9e5808e821feea088e2f69a974db5edf84dc53141"}, - {file = "pillow-10.4.0-cp310-cp310-win_arm64.whl", hash = "sha256:ff337c552345e95702c5fde3158acb0625111017d0e5f24bf3acdb9cc16b90d1"}, - {file = "pillow-10.4.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:0a9ec697746f268507404647e531e92889890a087e03681a3606d9b920fbee3c"}, - {file = "pillow-10.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dfe91cb65544a1321e631e696759491ae04a2ea11d36715eca01ce07284738be"}, - {file = "pillow-10.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5dc6761a6efc781e6a1544206f22c80c3af4c8cf461206d46a1e6006e4429ff3"}, - {file = "pillow-10.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5e84b6cc6a4a3d76c153a6b19270b3526a5a8ed6b09501d3af891daa2a9de7d6"}, - {file = "pillow-10.4.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:bbc527b519bd3aa9d7f429d152fea69f9ad37c95f0b02aebddff592688998abe"}, - {file = "pillow-10.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:76a911dfe51a36041f2e756b00f96ed84677cdeb75d25c767f296c1c1eda1319"}, - {file = "pillow-10.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:59291fb29317122398786c2d44427bbd1a6d7ff54017075b22be9d21aa59bd8d"}, - {file = "pillow-10.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:416d3a5d0e8cfe4f27f574362435bc9bae57f679a7158e0096ad2beb427b8696"}, - {file = "pillow-10.4.0-cp311-cp311-win32.whl", hash = "sha256:7086cc1d5eebb91ad24ded9f58bec6c688e9f0ed7eb3dbbf1e4800280a896496"}, - {file = "pillow-10.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:cbed61494057c0f83b83eb3a310f0bf774b09513307c434d4366ed64f4128a91"}, - {file = "pillow-10.4.0-cp311-cp311-win_arm64.whl", hash = "sha256:f5f0c3e969c8f12dd2bb7e0b15d5c468b51e5017e01e2e867335c81903046a22"}, - {file = "pillow-10.4.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:673655af3eadf4df6b5457033f086e90299fdd7a47983a13827acf7459c15d94"}, - {file = "pillow-10.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:866b6942a92f56300012f5fbac71f2d610312ee65e22f1aa2609e491284e5597"}, - {file = "pillow-10.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:29dbdc4207642ea6aad70fbde1a9338753d33fb23ed6956e706936706f52dd80"}, - {file = "pillow-10.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf2342ac639c4cf38799a44950bbc2dfcb685f052b9e262f446482afaf4bffca"}, - {file = "pillow-10.4.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:f5b92f4d70791b4a67157321c4e8225d60b119c5cc9aee8ecf153aace4aad4ef"}, - {file = "pillow-10.4.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:86dcb5a1eb778d8b25659d5e4341269e8590ad6b4e8b44d9f4b07f8d136c414a"}, - {file = "pillow-10.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:780c072c2e11c9b2c7ca37f9a2ee8ba66f44367ac3e5c7832afcfe5104fd6d1b"}, - {file = "pillow-10.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:37fb69d905be665f68f28a8bba3c6d3223c8efe1edf14cc4cfa06c241f8c81d9"}, - {file = "pillow-10.4.0-cp312-cp312-win32.whl", hash = "sha256:7dfecdbad5c301d7b5bde160150b4db4c659cee2b69589705b6f8a0c509d9f42"}, - {file = "pillow-10.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:1d846aea995ad352d4bdcc847535bd56e0fd88d36829d2c90be880ef1ee4668a"}, - {file = "pillow-10.4.0-cp312-cp312-win_arm64.whl", hash = "sha256:e553cad5179a66ba15bb18b353a19020e73a7921296a7979c4a2b7f6a5cd57f9"}, - {file = "pillow-10.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8bc1a764ed8c957a2e9cacf97c8b2b053b70307cf2996aafd70e91a082e70df3"}, - {file = "pillow-10.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6209bb41dc692ddfee4942517c19ee81b86c864b626dbfca272ec0f7cff5d9fb"}, - {file = "pillow-10.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bee197b30783295d2eb680b311af15a20a8b24024a19c3a26431ff83eb8d1f70"}, - {file = "pillow-10.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1ef61f5dd14c300786318482456481463b9d6b91ebe5ef12f405afbba77ed0be"}, - {file = "pillow-10.4.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:297e388da6e248c98bc4a02e018966af0c5f92dfacf5a5ca22fa01cb3179bca0"}, - {file = "pillow-10.4.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:e4db64794ccdf6cb83a59d73405f63adbe2a1887012e308828596100a0b2f6cc"}, - {file = "pillow-10.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bd2880a07482090a3bcb01f4265f1936a903d70bc740bfcb1fd4e8a2ffe5cf5a"}, - {file = "pillow-10.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4b35b21b819ac1dbd1233317adeecd63495f6babf21b7b2512d244ff6c6ce309"}, - {file = "pillow-10.4.0-cp313-cp313-win32.whl", hash = "sha256:551d3fd6e9dc15e4c1eb6fc4ba2b39c0c7933fa113b220057a34f4bb3268a060"}, - {file = "pillow-10.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:030abdbe43ee02e0de642aee345efa443740aa4d828bfe8e2eb11922ea6a21ea"}, - {file = "pillow-10.4.0-cp313-cp313-win_arm64.whl", hash = "sha256:5b001114dd152cfd6b23befeb28d7aee43553e2402c9f159807bf55f33af8a8d"}, - {file = "pillow-10.4.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:8d4d5063501b6dd4024b8ac2f04962d661222d120381272deea52e3fc52d3736"}, - {file = "pillow-10.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7c1ee6f42250df403c5f103cbd2768a28fe1a0ea1f0f03fe151c8741e1469c8b"}, - {file = "pillow-10.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b15e02e9bb4c21e39876698abf233c8c579127986f8207200bc8a8f6bb27acf2"}, - {file = "pillow-10.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a8d4bade9952ea9a77d0c3e49cbd8b2890a399422258a77f357b9cc9be8d680"}, - {file = "pillow-10.4.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:43efea75eb06b95d1631cb784aa40156177bf9dd5b4b03ff38979e048258bc6b"}, - {file = "pillow-10.4.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:950be4d8ba92aca4b2bb0741285a46bfae3ca699ef913ec8416c1b78eadd64cd"}, - {file = "pillow-10.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:d7480af14364494365e89d6fddc510a13e5a2c3584cb19ef65415ca57252fb84"}, - {file = "pillow-10.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:73664fe514b34c8f02452ffb73b7a92c6774e39a647087f83d67f010eb9a0cf0"}, - {file = "pillow-10.4.0-cp38-cp38-win32.whl", hash = "sha256:e88d5e6ad0d026fba7bdab8c3f225a69f063f116462c49892b0149e21b6c0a0e"}, - {file = "pillow-10.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:5161eef006d335e46895297f642341111945e2c1c899eb406882a6c61a4357ab"}, - {file = "pillow-10.4.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:0ae24a547e8b711ccaaf99c9ae3cd975470e1a30caa80a6aaee9a2f19c05701d"}, - {file = "pillow-10.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:298478fe4f77a4408895605f3482b6cc6222c018b2ce565c2b6b9c354ac3229b"}, - {file = "pillow-10.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:134ace6dc392116566980ee7436477d844520a26a4b1bd4053f6f47d096997fd"}, - {file = "pillow-10.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:930044bb7679ab003b14023138b50181899da3f25de50e9dbee23b61b4de2126"}, - {file = "pillow-10.4.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:c76e5786951e72ed3686e122d14c5d7012f16c8303a674d18cdcd6d89557fc5b"}, - {file = "pillow-10.4.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b2724fdb354a868ddf9a880cb84d102da914e99119211ef7ecbdc613b8c96b3c"}, - {file = "pillow-10.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:dbc6ae66518ab3c5847659e9988c3b60dc94ffb48ef9168656e0019a93dbf8a1"}, - {file = "pillow-10.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:06b2f7898047ae93fad74467ec3d28fe84f7831370e3c258afa533f81ef7f3df"}, - {file = "pillow-10.4.0-cp39-cp39-win32.whl", hash = "sha256:7970285ab628a3779aecc35823296a7869f889b8329c16ad5a71e4901a3dc4ef"}, - {file = "pillow-10.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:961a7293b2457b405967af9c77dcaa43cc1a8cd50d23c532e62d48ab6cdd56f5"}, - {file = "pillow-10.4.0-cp39-cp39-win_arm64.whl", hash = "sha256:32cda9e3d601a52baccb2856b8ea1fc213c90b340c542dcef77140dfa3278a9e"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:5b4815f2e65b30f5fbae9dfffa8636d992d49705723fe86a3661806e069352d4"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:8f0aef4ef59694b12cadee839e2ba6afeab89c0f39a3adc02ed51d109117b8da"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9f4727572e2918acaa9077c919cbbeb73bd2b3ebcfe033b72f858fc9fbef0026"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ff25afb18123cea58a591ea0244b92eb1e61a1fd497bf6d6384f09bc3262ec3e"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:dc3e2db6ba09ffd7d02ae9141cfa0ae23393ee7687248d46a7507b75d610f4f5"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:02a2be69f9c9b8c1e97cf2713e789d4e398c751ecfd9967c18d0ce304efbf885"}, - {file = "pillow-10.4.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:0755ffd4a0c6f267cccbae2e9903d95477ca2f77c4fcf3a3a09570001856c8a5"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:a02364621fe369e06200d4a16558e056fe2805d3468350df3aef21e00d26214b"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:1b5dea9831a90e9d0721ec417a80d4cbd7022093ac38a568db2dd78363b00908"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b885f89040bb8c4a1573566bbb2f44f5c505ef6e74cec7ab9068c900047f04b"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87dd88ded2e6d74d31e1e0a99a726a6765cda32d00ba72dc37f0651f306daaa8"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:2db98790afc70118bd0255c2eeb465e9767ecf1f3c25f9a1abb8ffc8cfd1fe0a"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f7baece4ce06bade126fb84b8af1c33439a76d8a6fd818970215e0560ca28c27"}, - {file = "pillow-10.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:cfdd747216947628af7b259d274771d84db2268ca062dd5faf373639d00113a3"}, - {file = "pillow-10.4.0.tar.gz", hash = "sha256:166c1cd4d24309b30d61f79f4a9114b7b2313d7450912277855ff5dfd7cd4a06"}, + {file = "pillow-11.0.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:6619654954dc4936fcff82db8eb6401d3159ec6be81e33c6000dfd76ae189947"}, + {file = "pillow-11.0.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b3c5ac4bed7519088103d9450a1107f76308ecf91d6dabc8a33a2fcfb18d0fba"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a65149d8ada1055029fcb665452b2814fe7d7082fcb0c5bed6db851cb69b2086"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88a58d8ac0cc0e7f3a014509f0455248a76629ca9b604eca7dc5927cc593c5e9"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:c26845094b1af3c91852745ae78e3ea47abf3dbcd1cf962f16b9a5fbe3ee8488"}, + {file = "pillow-11.0.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:1a61b54f87ab5786b8479f81c4b11f4d61702830354520837f8cc791ebba0f5f"}, + {file = "pillow-11.0.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:674629ff60030d144b7bca2b8330225a9b11c482ed408813924619c6f302fdbb"}, + {file = "pillow-11.0.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:598b4e238f13276e0008299bd2482003f48158e2b11826862b1eb2ad7c768b97"}, + {file = "pillow-11.0.0-cp310-cp310-win32.whl", hash = "sha256:9a0f748eaa434a41fccf8e1ee7a3eed68af1b690e75328fd7a60af123c193b50"}, + {file = "pillow-11.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:a5629742881bcbc1f42e840af185fd4d83a5edeb96475a575f4da50d6ede337c"}, + {file = "pillow-11.0.0-cp310-cp310-win_arm64.whl", hash = "sha256:ee217c198f2e41f184f3869f3e485557296d505b5195c513b2bfe0062dc537f1"}, + {file = "pillow-11.0.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:1c1d72714f429a521d8d2d018badc42414c3077eb187a59579f28e4270b4b0fc"}, + {file = "pillow-11.0.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:499c3a1b0d6fc8213519e193796eb1a86a1be4b1877d678b30f83fd979811d1a"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c8b2351c85d855293a299038e1f89db92a2f35e8d2f783489c6f0b2b5f3fe8a3"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6f4dba50cfa56f910241eb7f883c20f1e7b1d8f7d91c750cd0b318bad443f4d5"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:5ddbfd761ee00c12ee1be86c9c0683ecf5bb14c9772ddbd782085779a63dd55b"}, + {file = "pillow-11.0.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:45c566eb10b8967d71bf1ab8e4a525e5a93519e29ea071459ce517f6b903d7fa"}, + {file = "pillow-11.0.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:b4fd7bd29610a83a8c9b564d457cf5bd92b4e11e79a4ee4716a63c959699b306"}, + {file = "pillow-11.0.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:cb929ca942d0ec4fac404cbf520ee6cac37bf35be479b970c4ffadf2b6a1cad9"}, + {file = "pillow-11.0.0-cp311-cp311-win32.whl", hash = "sha256:006bcdd307cc47ba43e924099a038cbf9591062e6c50e570819743f5607404f5"}, + {file = "pillow-11.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:52a2d8323a465f84faaba5236567d212c3668f2ab53e1c74c15583cf507a0291"}, + {file = "pillow-11.0.0-cp311-cp311-win_arm64.whl", hash = "sha256:16095692a253047fe3ec028e951fa4221a1f3ed3d80c397e83541a3037ff67c9"}, + {file = "pillow-11.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d2c0a187a92a1cb5ef2c8ed5412dd8d4334272617f532d4ad4de31e0495bd923"}, + {file = "pillow-11.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:084a07ef0821cfe4858fe86652fffac8e187b6ae677e9906e192aafcc1b69903"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8069c5179902dcdce0be9bfc8235347fdbac249d23bd90514b7a47a72d9fecf4"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f02541ef64077f22bf4924f225c0fd1248c168f86e4b7abdedd87d6ebaceab0f"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:fcb4621042ac4b7865c179bb972ed0da0218a076dc1820ffc48b1d74c1e37fe9"}, + {file = "pillow-11.0.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:00177a63030d612148e659b55ba99527803288cea7c75fb05766ab7981a8c1b7"}, + {file = "pillow-11.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8853a3bf12afddfdf15f57c4b02d7ded92c7a75a5d7331d19f4f9572a89c17e6"}, + {file = "pillow-11.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3107c66e43bda25359d5ef446f59c497de2b5ed4c7fdba0894f8d6cf3822dafc"}, + {file = "pillow-11.0.0-cp312-cp312-win32.whl", hash = "sha256:86510e3f5eca0ab87429dd77fafc04693195eec7fd6a137c389c3eeb4cfb77c6"}, + {file = "pillow-11.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:8ec4a89295cd6cd4d1058a5e6aec6bf51e0eaaf9714774e1bfac7cfc9051db47"}, + {file = "pillow-11.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:27a7860107500d813fcd203b4ea19b04babe79448268403172782754870dac25"}, + {file = "pillow-11.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:bcd1fb5bb7b07f64c15618c89efcc2cfa3e95f0e3bcdbaf4642509de1942a699"}, + {file = "pillow-11.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0e038b0745997c7dcaae350d35859c9715c71e92ffb7e0f4a8e8a16732150f38"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ae08bd8ffc41aebf578c2af2f9d8749d91f448b3bfd41d7d9ff573d74f2a6b2"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d69bfd8ec3219ae71bcde1f942b728903cad25fafe3100ba2258b973bd2bc1b2"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:61b887f9ddba63ddf62fd02a3ba7add935d053b6dd7d58998c630e6dbade8527"}, + {file = "pillow-11.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:c6a660307ca9d4867caa8d9ca2c2658ab685de83792d1876274991adec7b93fa"}, + {file = "pillow-11.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:73e3a0200cdda995c7e43dd47436c1548f87a30bb27fb871f352a22ab8dcf45f"}, + {file = "pillow-11.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fba162b8872d30fea8c52b258a542c5dfd7b235fb5cb352240c8d63b414013eb"}, + {file = "pillow-11.0.0-cp313-cp313-win32.whl", hash = "sha256:f1b82c27e89fffc6da125d5eb0ca6e68017faf5efc078128cfaa42cf5cb38798"}, + {file = "pillow-11.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:8ba470552b48e5835f1d23ecb936bb7f71d206f9dfeee64245f30c3270b994de"}, + {file = "pillow-11.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:846e193e103b41e984ac921b335df59195356ce3f71dcfd155aa79c603873b84"}, + {file = "pillow-11.0.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4ad70c4214f67d7466bea6a08061eba35c01b1b89eaa098040a35272a8efb22b"}, + {file = "pillow-11.0.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:6ec0d5af64f2e3d64a165f490d96368bb5dea8b8f9ad04487f9ab60dc4bb6003"}, + {file = "pillow-11.0.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c809a70e43c7977c4a42aefd62f0131823ebf7dd73556fa5d5950f5b354087e2"}, + {file = "pillow-11.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:4b60c9520f7207aaf2e1d94de026682fc227806c6e1f55bba7606d1c94dd623a"}, + {file = "pillow-11.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:1e2688958a840c822279fda0086fec1fdab2f95bf2b717b66871c4ad9859d7e8"}, + {file = "pillow-11.0.0-cp313-cp313t-win32.whl", hash = "sha256:607bbe123c74e272e381a8d1957083a9463401f7bd01287f50521ecb05a313f8"}, + {file = "pillow-11.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5c39ed17edea3bc69c743a8dd3e9853b7509625c2462532e62baa0732163a904"}, + {file = "pillow-11.0.0-cp313-cp313t-win_arm64.whl", hash = "sha256:75acbbeb05b86bc53cbe7b7e6fe00fbcf82ad7c684b3ad82e3d711da9ba287d3"}, + {file = "pillow-11.0.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:2e46773dc9f35a1dd28bd6981332fd7f27bec001a918a72a79b4133cf5291dba"}, + {file = "pillow-11.0.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:2679d2258b7f1192b378e2893a8a0a0ca472234d4c2c0e6bdd3380e8dfa21b6a"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eda2616eb2313cbb3eebbe51f19362eb434b18e3bb599466a1ffa76a033fb916"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ec184af98a121fb2da42642dea8a29ec80fc3efbaefb86d8fdd2606619045d"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:8594f42df584e5b4bb9281799698403f7af489fba84c34d53d1c4bfb71b7c4e7"}, + {file = "pillow-11.0.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:c12b5ae868897c7338519c03049a806af85b9b8c237b7d675b8c5e089e4a618e"}, + {file = "pillow-11.0.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:70fbbdacd1d271b77b7721fe3cdd2d537bbbd75d29e6300c672ec6bb38d9672f"}, + {file = "pillow-11.0.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5178952973e588b3f1360868847334e9e3bf49d19e169bbbdfaf8398002419ae"}, + {file = "pillow-11.0.0-cp39-cp39-win32.whl", hash = "sha256:8c676b587da5673d3c75bd67dd2a8cdfeb282ca38a30f37950511766b26858c4"}, + {file = "pillow-11.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:94f3e1780abb45062287b4614a5bc0874519c86a777d4a7ad34978e86428b8dd"}, + {file = "pillow-11.0.0-cp39-cp39-win_arm64.whl", hash = "sha256:290f2cc809f9da7d6d622550bbf4c1e57518212da51b6a30fe8e0a270a5b78bd"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:1187739620f2b365de756ce086fdb3604573337cc28a0d3ac4a01ab6b2d2a6d2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:fbbcb7b57dc9c794843e3d1258c0fbf0f48656d46ffe9e09b63bbd6e8cd5d0a2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d203af30149ae339ad1b4f710d9844ed8796e97fda23ffbc4cc472968a47d0b"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21a0d3b115009ebb8ac3d2ebec5c2982cc693da935f4ab7bb5c8ebe2f47d36f2"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:73853108f56df97baf2bb8b522f3578221e56f646ba345a372c78326710d3830"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e58876c91f97b0952eb766123bfef372792ab3f4e3e1f1a2267834c2ab131734"}, + {file = "pillow-11.0.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:224aaa38177597bb179f3ec87eeefcce8e4f85e608025e9cfac60de237ba6316"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:5bd2d3bdb846d757055910f0a59792d33b555800813c3b39ada1829c372ccb06"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:375b8dd15a1f5d2feafff536d47e22f69625c1aa92f12b339ec0b2ca40263273"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:daffdf51ee5db69a82dd127eabecce20729e21f7a3680cf7cbb23f0829189790"}, + {file = "pillow-11.0.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7326a1787e3c7b0429659e0a944725e1b03eeaa10edd945a86dead1913383944"}, + {file = "pillow-11.0.0.tar.gz", hash = "sha256:72bacbaf24ac003fea9bff9837d1eedb6088758d41e100c1552930151f677739"}, ] [package.extras] -docs = ["furo", "olefile", "sphinx (>=7.3)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"] +docs = ["furo", "olefile", "sphinx (>=8.1)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"] fpx = ["olefile"] mic = ["olefile"] tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] @@ -2076,92 +1196,153 @@ dev = ["pre-commit", "tox"] testing = ["pytest", "pytest-benchmark"] [[package]] -name = "psutil" -version = "6.0.0" -description = "Cross-platform lib for process and system monitoring in Python." +name = "pyasn1" +version = "0.6.1" +description = "Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +python-versions = ">=3.8" files = [ - {file = "psutil-6.0.0-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a021da3e881cd935e64a3d0a20983bda0bb4cf80e4f74fa9bfcb1bc5785360c6"}, - {file = "psutil-6.0.0-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:1287c2b95f1c0a364d23bc6f2ea2365a8d4d9b726a3be7294296ff7ba97c17f0"}, - {file = "psutil-6.0.0-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:a9a3dbfb4de4f18174528d87cc352d1f788b7496991cca33c6996f40c9e3c92c"}, - {file = "psutil-6.0.0-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:6ec7588fb3ddaec7344a825afe298db83fe01bfaaab39155fa84cf1c0d6b13c3"}, - {file = "psutil-6.0.0-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:1e7c870afcb7d91fdea2b37c24aeb08f98b6d67257a5cb0a8bc3ac68d0f1a68c"}, - {file = "psutil-6.0.0-cp27-none-win32.whl", hash = "sha256:02b69001f44cc73c1c5279d02b30a817e339ceb258ad75997325e0e6169d8b35"}, - {file = "psutil-6.0.0-cp27-none-win_amd64.whl", hash = "sha256:21f1fb635deccd510f69f485b87433460a603919b45e2a324ad65b0cc74f8fb1"}, - {file = "psutil-6.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c588a7e9b1173b6e866756dde596fd4cad94f9399daf99ad8c3258b3cb2b47a0"}, - {file = "psutil-6.0.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ed2440ada7ef7d0d608f20ad89a04ec47d2d3ab7190896cd62ca5fc4fe08bf0"}, - {file = "psutil-6.0.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fd9a97c8e94059b0ef54a7d4baf13b405011176c3b6ff257c247cae0d560ecd"}, - {file = "psutil-6.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2e8d0054fc88153ca0544f5c4d554d42e33df2e009c4ff42284ac9ebdef4132"}, - {file = "psutil-6.0.0-cp36-cp36m-win32.whl", hash = "sha256:fc8c9510cde0146432bbdb433322861ee8c3efbf8589865c8bf8d21cb30c4d14"}, - {file = "psutil-6.0.0-cp36-cp36m-win_amd64.whl", hash = "sha256:34859b8d8f423b86e4385ff3665d3f4d94be3cdf48221fbe476e883514fdb71c"}, - {file = "psutil-6.0.0-cp37-abi3-win32.whl", hash = "sha256:a495580d6bae27291324fe60cea0b5a7c23fa36a7cd35035a16d93bdcf076b9d"}, - {file = "psutil-6.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:33ea5e1c975250a720b3a6609c490db40dae5d83a4eb315170c4fe0d8b1f34b3"}, - {file = "psutil-6.0.0-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:ffe7fc9b6b36beadc8c322f84e1caff51e8703b88eee1da46d1e3a6ae11b4fd0"}, - {file = "psutil-6.0.0.tar.gz", hash = "sha256:8faae4f310b6d969fa26ca0545338b21f73c6b15db7c4a8d934a5482faa818f2"}, + {file = "pyasn1-0.6.1-py3-none-any.whl", hash = "sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629"}, + {file = "pyasn1-0.6.1.tar.gz", hash = "sha256:6f580d2bdd84365380830acf45550f2511469f673cb4a5ae3857a3170128b034"}, ] -[package.extras] -test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] +[[package]] +name = "pyasn1-modules" +version = "0.4.1" +description = "A collection of ASN.1-based protocols modules" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pyasn1_modules-0.4.1-py3-none-any.whl", hash = "sha256:49bfa96b45a292b711e986f222502c1c9a5e1f4e568fc30e2574a6c7d07838fd"}, + {file = "pyasn1_modules-0.4.1.tar.gz", hash = "sha256:c28e2dbf9c06ad61c71a075c7e0f9fd0f1b0bb2d2ad4377f240d33ac2ab60a7c"}, +] + +[package.dependencies] +pyasn1 = ">=0.4.6,<0.7.0" [[package]] name = "pydantic" -version = "1.10.18" -description = "Data validation and settings management using python type hints" +version = "2.9.2" +description = "Data validation using Python type hints" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pydantic-1.10.18-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e405ffcc1254d76bb0e760db101ee8916b620893e6edfbfee563b3c6f7a67c02"}, - {file = "pydantic-1.10.18-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e306e280ebebc65040034bff1a0a81fd86b2f4f05daac0131f29541cafd80b80"}, - {file = "pydantic-1.10.18-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11d9d9b87b50338b1b7de4ebf34fd29fdb0d219dc07ade29effc74d3d2609c62"}, - {file = "pydantic-1.10.18-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b661ce52c7b5e5f600c0c3c5839e71918346af2ef20062705ae76b5c16914cab"}, - {file = "pydantic-1.10.18-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c20f682defc9ef81cd7eaa485879ab29a86a0ba58acf669a78ed868e72bb89e0"}, - {file = "pydantic-1.10.18-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c5ae6b7c8483b1e0bf59e5f1843e4fd8fd405e11df7de217ee65b98eb5462861"}, - {file = "pydantic-1.10.18-cp310-cp310-win_amd64.whl", hash = "sha256:74fe19dda960b193b0eb82c1f4d2c8e5e26918d9cda858cbf3f41dd28549cb70"}, - {file = "pydantic-1.10.18-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:72fa46abace0a7743cc697dbb830a41ee84c9db8456e8d77a46d79b537efd7ec"}, - {file = "pydantic-1.10.18-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ef0fe7ad7cbdb5f372463d42e6ed4ca9c443a52ce544472d8842a0576d830da5"}, - {file = "pydantic-1.10.18-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a00e63104346145389b8e8f500bc6a241e729feaf0559b88b8aa513dd2065481"}, - {file = "pydantic-1.10.18-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae6fa2008e1443c46b7b3a5eb03800121868d5ab6bc7cda20b5df3e133cde8b3"}, - {file = "pydantic-1.10.18-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9f463abafdc92635da4b38807f5b9972276be7c8c5121989768549fceb8d2588"}, - {file = "pydantic-1.10.18-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3445426da503c7e40baccefb2b2989a0c5ce6b163679dd75f55493b460f05a8f"}, - {file = "pydantic-1.10.18-cp311-cp311-win_amd64.whl", hash = "sha256:467a14ee2183bc9c902579bb2f04c3d3dac00eff52e252850509a562255b2a33"}, - {file = "pydantic-1.10.18-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:efbc8a7f9cb5fe26122acba1852d8dcd1e125e723727c59dcd244da7bdaa54f2"}, - {file = "pydantic-1.10.18-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:24a4a159d0f7a8e26bf6463b0d3d60871d6a52eac5bb6a07a7df85c806f4c048"}, - {file = "pydantic-1.10.18-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b74be007703547dc52e3c37344d130a7bfacca7df112a9e5ceeb840a9ce195c7"}, - {file = "pydantic-1.10.18-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fcb20d4cb355195c75000a49bb4a31d75e4295200df620f454bbc6bdf60ca890"}, - {file = "pydantic-1.10.18-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:46f379b8cb8a3585e3f61bf9ae7d606c70d133943f339d38b76e041ec234953f"}, - {file = "pydantic-1.10.18-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:cbfbca662ed3729204090c4d09ee4beeecc1a7ecba5a159a94b5a4eb24e3759a"}, - {file = "pydantic-1.10.18-cp312-cp312-win_amd64.whl", hash = "sha256:c6d0a9f9eccaf7f438671a64acf654ef0d045466e63f9f68a579e2383b63f357"}, - {file = "pydantic-1.10.18-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3d5492dbf953d7d849751917e3b2433fb26010d977aa7a0765c37425a4026ff1"}, - {file = "pydantic-1.10.18-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe734914977eed33033b70bfc097e1baaffb589517863955430bf2e0846ac30f"}, - {file = "pydantic-1.10.18-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:15fdbe568beaca9aacfccd5ceadfb5f1a235087a127e8af5e48df9d8a45ae85c"}, - {file = "pydantic-1.10.18-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c3e742f62198c9eb9201781fbebe64533a3bbf6a76a91b8d438d62b813079dbc"}, - {file = "pydantic-1.10.18-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:19a3bd00b9dafc2cd7250d94d5b578edf7a0bd7daf102617153ff9a8fa37871c"}, - {file = "pydantic-1.10.18-cp37-cp37m-win_amd64.whl", hash = "sha256:2ce3fcf75b2bae99aa31bd4968de0474ebe8c8258a0110903478bd83dfee4e3b"}, - {file = "pydantic-1.10.18-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:335a32d72c51a313b33fa3a9b0fe283503272ef6467910338e123f90925f0f03"}, - {file = "pydantic-1.10.18-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:34a3613c7edb8c6fa578e58e9abe3c0f5e7430e0fc34a65a415a1683b9c32d9a"}, - {file = "pydantic-1.10.18-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9ee4e6ca1d9616797fa2e9c0bfb8815912c7d67aca96f77428e316741082a1b"}, - {file = "pydantic-1.10.18-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:23e8ec1ce4e57b4f441fc91e3c12adba023fedd06868445a5b5f1d48f0ab3682"}, - {file = "pydantic-1.10.18-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:44ae8a3e35a54d2e8fa88ed65e1b08967a9ef8c320819a969bfa09ce5528fafe"}, - {file = "pydantic-1.10.18-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5389eb3b48a72da28c6e061a247ab224381435256eb541e175798483368fdd3"}, - {file = "pydantic-1.10.18-cp38-cp38-win_amd64.whl", hash = "sha256:069b9c9fc645474d5ea3653788b544a9e0ccd3dca3ad8c900c4c6eac844b4620"}, - {file = "pydantic-1.10.18-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:80b982d42515632eb51f60fa1d217dfe0729f008e81a82d1544cc392e0a50ddf"}, - {file = "pydantic-1.10.18-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:aad8771ec8dbf9139b01b56f66386537c6fe4e76c8f7a47c10261b69ad25c2c9"}, - {file = "pydantic-1.10.18-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:941a2eb0a1509bd7f31e355912eb33b698eb0051730b2eaf9e70e2e1589cae1d"}, - {file = "pydantic-1.10.18-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:65f7361a09b07915a98efd17fdec23103307a54db2000bb92095457ca758d485"}, - {file = "pydantic-1.10.18-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6951f3f47cb5ca4da536ab161ac0163cab31417d20c54c6de5ddcab8bc813c3f"}, - {file = "pydantic-1.10.18-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7a4c5eec138a9b52c67f664c7d51d4c7234c5ad65dd8aacd919fb47445a62c86"}, - {file = "pydantic-1.10.18-cp39-cp39-win_amd64.whl", hash = "sha256:49e26c51ca854286bffc22b69787a8d4063a62bf7d83dc21d44d2ff426108518"}, - {file = "pydantic-1.10.18-py3-none-any.whl", hash = "sha256:06a189b81ffc52746ec9c8c007f16e5167c8b0a696e1a726369327e3db7b2a82"}, - {file = "pydantic-1.10.18.tar.gz", hash = "sha256:baebdff1907d1d96a139c25136a9bb7d17e118f133a76a2ef3b845e831e3403a"}, + {file = "pydantic-2.9.2-py3-none-any.whl", hash = "sha256:f048cec7b26778210e28a0459867920654d48e5e62db0958433636cde4254f12"}, + {file = "pydantic-2.9.2.tar.gz", hash = "sha256:d155cef71265d1e9807ed1c32b4c8deec042a44a50a4188b25ac67ecd81a9c0f"}, ] [package.dependencies] -typing-extensions = ">=4.2.0" +annotated-types = ">=0.6.0" +pydantic-core = "2.23.4" +typing-extensions = [ + {version = ">=4.6.1", markers = "python_version < \"3.13\""}, + {version = ">=4.12.2", markers = "python_version >= \"3.13\""}, +] [package.extras] -dotenv = ["python-dotenv (>=0.10.4)"] -email = ["email-validator (>=1.0.3)"] +email = ["email-validator (>=2.0.0)"] +timezone = ["tzdata"] + +[[package]] +name = "pydantic-core" +version = "2.23.4" +description = "Core functionality for Pydantic validation and serialization" +optional = false +python-versions = ">=3.8" +files = [ + {file = "pydantic_core-2.23.4-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:b10bd51f823d891193d4717448fab065733958bdb6a6b351967bd349d48d5c9b"}, + {file = "pydantic_core-2.23.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4fc714bdbfb534f94034efaa6eadd74e5b93c8fa6315565a222f7b6f42ca1166"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63e46b3169866bd62849936de036f901a9356e36376079b05efa83caeaa02ceb"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed1a53de42fbe34853ba90513cea21673481cd81ed1be739f7f2efb931b24916"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cfdd16ab5e59fc31b5e906d1a3f666571abc367598e3e02c83403acabc092e07"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:255a8ef062cbf6674450e668482456abac99a5583bbafb73f9ad469540a3a232"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a7cd62e831afe623fbb7aabbb4fe583212115b3ef38a9f6b71869ba644624a2"}, + {file = "pydantic_core-2.23.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f09e2ff1f17c2b51f2bc76d1cc33da96298f0a036a137f5440ab3ec5360b624f"}, + {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e38e63e6f3d1cec5a27e0afe90a085af8b6806ee208b33030e65b6516353f1a3"}, + {file = "pydantic_core-2.23.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0dbd8dbed2085ed23b5c04afa29d8fd2771674223135dc9bc937f3c09284d071"}, + {file = "pydantic_core-2.23.4-cp310-none-win32.whl", hash = "sha256:6531b7ca5f951d663c339002e91aaebda765ec7d61b7d1e3991051906ddde119"}, + {file = "pydantic_core-2.23.4-cp310-none-win_amd64.whl", hash = "sha256:7c9129eb40958b3d4500fa2467e6a83356b3b61bfff1b414c7361d9220f9ae8f"}, + {file = "pydantic_core-2.23.4-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:77733e3892bb0a7fa797826361ce8a9184d25c8dffaec60b7ffe928153680ba8"}, + {file = "pydantic_core-2.23.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b84d168f6c48fabd1f2027a3d1bdfe62f92cade1fb273a5d68e621da0e44e6d"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:df49e7a0861a8c36d089c1ed57d308623d60416dab2647a4a17fe050ba85de0e"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ff02b6d461a6de369f07ec15e465a88895f3223eb75073ffea56b84d9331f607"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:996a38a83508c54c78a5f41456b0103c30508fed9abcad0a59b876d7398f25fd"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d97683ddee4723ae8c95d1eddac7c192e8c552da0c73a925a89fa8649bf13eea"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:216f9b2d7713eb98cb83c80b9c794de1f6b7e3145eef40400c62e86cee5f4e1e"}, + {file = "pydantic_core-2.23.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6f783e0ec4803c787bcea93e13e9932edab72068f68ecffdf86a99fd5918878b"}, + {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d0776dea117cf5272382634bd2a5c1b6eb16767c223c6a5317cd3e2a757c61a0"}, + {file = "pydantic_core-2.23.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d5f7a395a8cf1621939692dba2a6b6a830efa6b3cee787d82c7de1ad2930de64"}, + {file = "pydantic_core-2.23.4-cp311-none-win32.whl", hash = "sha256:74b9127ffea03643e998e0c5ad9bd3811d3dac8c676e47db17b0ee7c3c3bf35f"}, + {file = "pydantic_core-2.23.4-cp311-none-win_amd64.whl", hash = "sha256:98d134c954828488b153d88ba1f34e14259284f256180ce659e8d83e9c05eaa3"}, + {file = "pydantic_core-2.23.4-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f3e0da4ebaef65158d4dfd7d3678aad692f7666877df0002b8a522cdf088f231"}, + {file = "pydantic_core-2.23.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f69a8e0b033b747bb3e36a44e7732f0c99f7edd5cea723d45bc0d6e95377ffee"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:723314c1d51722ab28bfcd5240d858512ffd3116449c557a1336cbe3919beb87"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bb2802e667b7051a1bebbfe93684841cc9351004e2badbd6411bf357ab8d5ac8"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d18ca8148bebe1b0a382a27a8ee60350091a6ddaf475fa05ef50dc35b5df6327"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33e3d65a85a2a4a0dc3b092b938a4062b1a05f3a9abde65ea93b233bca0e03f2"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:128585782e5bfa515c590ccee4b727fb76925dd04a98864182b22e89a4e6ed36"}, + {file = "pydantic_core-2.23.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:68665f4c17edcceecc112dfed5dbe6f92261fb9d6054b47d01bf6371a6196126"}, + {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:20152074317d9bed6b7a95ade3b7d6054845d70584216160860425f4fbd5ee9e"}, + {file = "pydantic_core-2.23.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:9261d3ce84fa1d38ed649c3638feefeae23d32ba9182963e465d58d62203bd24"}, + {file = "pydantic_core-2.23.4-cp312-none-win32.whl", hash = "sha256:4ba762ed58e8d68657fc1281e9bb72e1c3e79cc5d464be146e260c541ec12d84"}, + {file = "pydantic_core-2.23.4-cp312-none-win_amd64.whl", hash = "sha256:97df63000f4fea395b2824da80e169731088656d1818a11b95f3b173747b6cd9"}, + {file = "pydantic_core-2.23.4-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7530e201d10d7d14abce4fb54cfe5b94a0aefc87da539d0346a484ead376c3cc"}, + {file = "pydantic_core-2.23.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:df933278128ea1cd77772673c73954e53a1c95a4fdf41eef97c2b779271bd0bd"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cb3da3fd1b6a5d0279a01877713dbda118a2a4fc6f0d821a57da2e464793f05"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c6dcb030aefb668a2b7009c85b27f90e51e6a3b4d5c9bc4c57631292015b0d"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:696dd8d674d6ce621ab9d45b205df149399e4bb9aa34102c970b721554828510"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2971bb5ffe72cc0f555c13e19b23c85b654dd2a8f7ab493c262071377bfce9f6"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8394d940e5d400d04cad4f75c0598665cbb81aecefaca82ca85bd28264af7f9b"}, + {file = "pydantic_core-2.23.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:0dff76e0602ca7d4cdaacc1ac4c005e0ce0dcfe095d5b5259163a80d3a10d327"}, + {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7d32706badfe136888bdea71c0def994644e09fff0bfe47441deaed8e96fdbc6"}, + {file = "pydantic_core-2.23.4-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ed541d70698978a20eb63d8c5d72f2cc6d7079d9d90f6b50bad07826f1320f5f"}, + {file = "pydantic_core-2.23.4-cp313-none-win32.whl", hash = "sha256:3d5639516376dce1940ea36edf408c554475369f5da2abd45d44621cb616f769"}, + {file = "pydantic_core-2.23.4-cp313-none-win_amd64.whl", hash = "sha256:5a1504ad17ba4210df3a045132a7baeeba5a200e930f57512ee02909fc5c4cb5"}, + {file = "pydantic_core-2.23.4-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d4488a93b071c04dc20f5cecc3631fc78b9789dd72483ba15d423b5b3689b555"}, + {file = "pydantic_core-2.23.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:81965a16b675b35e1d09dd14df53f190f9129c0202356ed44ab2728b1c905658"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ffa2ebd4c8530079140dd2d7f794a9d9a73cbb8e9d59ffe24c63436efa8f271"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:61817945f2fe7d166e75fbfb28004034b48e44878177fc54d81688e7b85a3665"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:29d2c342c4bc01b88402d60189f3df065fb0dda3654744d5a165a5288a657368"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5e11661ce0fd30a6790e8bcdf263b9ec5988e95e63cf901972107efc49218b13"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9d18368b137c6295db49ce7218b1a9ba15c5bc254c96d7c9f9e924a9bc7825ad"}, + {file = "pydantic_core-2.23.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ec4e55f79b1c4ffb2eecd8a0cfba9955a2588497d96851f4c8f99aa4a1d39b12"}, + {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:374a5e5049eda9e0a44c696c7ade3ff355f06b1fe0bb945ea3cac2bc336478a2"}, + {file = "pydantic_core-2.23.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5c364564d17da23db1106787675fc7af45f2f7b58b4173bfdd105564e132e6fb"}, + {file = "pydantic_core-2.23.4-cp38-none-win32.whl", hash = "sha256:d7a80d21d613eec45e3d41eb22f8f94ddc758a6c4720842dc74c0581f54993d6"}, + {file = "pydantic_core-2.23.4-cp38-none-win_amd64.whl", hash = "sha256:5f5ff8d839f4566a474a969508fe1c5e59c31c80d9e140566f9a37bba7b8d556"}, + {file = "pydantic_core-2.23.4-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a4fa4fc04dff799089689f4fd502ce7d59de529fc2f40a2c8836886c03e0175a"}, + {file = "pydantic_core-2.23.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0a7df63886be5e270da67e0966cf4afbae86069501d35c8c1b3b6c168f42cb36"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dcedcd19a557e182628afa1d553c3895a9f825b936415d0dbd3cd0bbcfd29b4b"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5f54b118ce5de9ac21c363d9b3caa6c800341e8c47a508787e5868c6b79c9323"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86d2f57d3e1379a9525c5ab067b27dbb8a0642fb5d454e17a9ac434f9ce523e3"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:de6d1d1b9e5101508cb37ab0d972357cac5235f5c6533d1071964c47139257df"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1278e0d324f6908e872730c9102b0112477a7f7cf88b308e4fc36ce1bdb6d58c"}, + {file = "pydantic_core-2.23.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9a6b5099eeec78827553827f4c6b8615978bb4b6a88e5d9b93eddf8bb6790f55"}, + {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e55541f756f9b3ee346b840103f32779c695a19826a4c442b7954550a0972040"}, + {file = "pydantic_core-2.23.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a5c7ba8ffb6d6f8f2ab08743be203654bb1aaa8c9dcb09f82ddd34eadb695605"}, + {file = "pydantic_core-2.23.4-cp39-none-win32.whl", hash = "sha256:37b0fe330e4a58d3c58b24d91d1eb102aeec675a3db4c292ec3928ecd892a9a6"}, + {file = "pydantic_core-2.23.4-cp39-none-win_amd64.whl", hash = "sha256:1498bec4c05c9c787bde9125cfdcc63a41004ff167f495063191b863399b1a29"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f455ee30a9d61d3e1a15abd5068827773d6e4dc513e795f380cdd59932c782d5"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1e90d2e3bd2c3863d48525d297cd143fe541be8bbf6f579504b9712cb6b643ec"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e203fdf807ac7e12ab59ca2bfcabb38c7cf0b33c41efeb00f8e5da1d86af480"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e08277a400de01bc72436a0ccd02bdf596631411f592ad985dcee21445bd0068"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f220b0eea5965dec25480b6333c788fb72ce5f9129e8759ef876a1d805d00801"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d06b0c8da4f16d1d1e352134427cb194a0a6e19ad5db9161bf32b2113409e728"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:ba1a0996f6c2773bd83e63f18914c1de3c9dd26d55f4ac302a7efe93fb8e7433"}, + {file = "pydantic_core-2.23.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:9a5bce9d23aac8f0cf0836ecfc033896aa8443b501c58d0602dbfd5bd5b37753"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:78ddaaa81421a29574a682b3179d4cf9e6d405a09b99d93ddcf7e5239c742e21"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:883a91b5dd7d26492ff2f04f40fbb652de40fcc0afe07e8129e8ae779c2110eb"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88ad334a15b32a791ea935af224b9de1bf99bcd62fabf745d5f3442199d86d59"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:233710f069d251feb12a56da21e14cca67994eab08362207785cf8c598e74577"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:19442362866a753485ba5e4be408964644dd6a09123d9416c54cd49171f50744"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:624e278a7d29b6445e4e813af92af37820fafb6dcc55c012c834f9e26f9aaaef"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f5ef8f42bec47f21d07668a043f077d507e5bf4e668d5c6dfe6aaba89de1a5b8"}, + {file = "pydantic_core-2.23.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:aea443fffa9fbe3af1a9ba721a87f926fe548d32cab71d188a6ede77d0ff244e"}, + {file = "pydantic_core-2.23.4.tar.gz", hash = "sha256:2584f7cf844ac4d970fba483a717dbe10c1c1c96a969bf65d61ffe94df1b2863"}, +] + +[package.dependencies] +typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" [[package]] name = "pydub" @@ -2175,18 +1356,18 @@ files = [ ] [[package]] -name = "pyparsing" -version = "3.1.4" -description = "pyparsing module - Classes and methods to define and execute parsing grammars" +name = "pygments" +version = "2.18.0" +description = "Pygments is a syntax highlighting package written in Python." optional = false -python-versions = ">=3.6.8" +python-versions = ">=3.8" files = [ - {file = "pyparsing-3.1.4-py3-none-any.whl", hash = "sha256:a6a7ee4235a3f944aa1fa2249307708f893fe5717dc603503c6c7969c070fb7c"}, - {file = "pyparsing-3.1.4.tar.gz", hash = "sha256:f86ec8d1a83f11977c9a6ea7598e8c27fc5cddfa5b07ea2241edbbde1d7bc032"}, + {file = "pygments-2.18.0-py3-none-any.whl", hash = "sha256:b8e6aca0523f3ab76fee51799c488e38782ac06eafcf95e7ba832985c8e7b13a"}, + {file = "pygments-2.18.0.tar.gz", hash = "sha256:786ff802f32e91311bff3889f6e9a86e81505fe99f2735bb6d60ae0c5004f199"}, ] [package.extras] -diagrams = ["jinja2", "railroad-diagrams"] +windows-terminal = ["colorama (>=0.4.6)"] [[package]] name = "pytest" @@ -2226,18 +1407,15 @@ six = ">=1.5" [[package]] name = "python-multipart" -version = "0.0.9" +version = "0.0.12" description = "A streaming multipart parser for Python" optional = false python-versions = ">=3.8" files = [ - {file = "python_multipart-0.0.9-py3-none-any.whl", hash = "sha256:97ca7b8ea7b05f977dc3849c3ba99d51689822fab725c3703af7c866a0c2b215"}, - {file = "python_multipart-0.0.9.tar.gz", hash = "sha256:03f54688c663f1b7977105f021043b0793151e4cb1c1a9d4a11fc13d622c4026"}, + {file = "python_multipart-0.0.12-py3-none-any.whl", hash = "sha256:43dcf96cf65888a9cd3423544dd0d75ac10f7aa0c3c28a175bbcd00c9ce1aebf"}, + {file = "python_multipart-0.0.12.tar.gz", hash = "sha256:045e1f98d719c1ce085ed7f7e1ef9d8ccc8c02ba02b5566d5f7521410ced58cb"}, ] -[package.extras] -dev = ["atomicwrites (==1.4.1)", "attrs (==23.2.0)", "coverage (==7.4.1)", "hatch", "invoke (==2.2.0)", "more-itertools (==10.2.0)", "pbr (==6.0.0)", "pluggy (==1.4.0)", "py (==1.11.0)", "pytest (==8.0.0)", "pytest-cov (==4.1.0)", "pytest-timeout (==2.2.0)", "pyyaml (==6.0.1)", "ruff (==0.2.1)"] - [[package]] name = "pytz" version = "2024.2" @@ -2312,387 +1490,120 @@ files = [ ] [[package]] -name = "referencing" -version = "0.35.1" -description = "JSON Referencing + Python" +name = "requests" +version = "2.32.3" +description = "Python HTTP for Humans." optional = false python-versions = ">=3.8" files = [ - {file = "referencing-0.35.1-py3-none-any.whl", hash = "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de"}, - {file = "referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c"}, + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, ] [package.dependencies] -attrs = ">=22.2.0" -rpds-py = ">=0.7.0" +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 = "regex" -version = "2024.9.11" -description = "Alternative regular expression module, to replace re." +name = "requests-oauthlib" +version = "2.0.0" +description = "OAuthlib authentication support for Requests." optional = false -python-versions = ">=3.8" +python-versions = ">=3.4" files = [ - {file = "regex-2024.9.11-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1494fa8725c285a81d01dc8c06b55287a1ee5e0e382d8413adc0a9197aac6408"}, - {file = "regex-2024.9.11-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0e12c481ad92d129c78f13a2a3662317e46ee7ef96c94fd332e1c29131875b7d"}, - {file = "regex-2024.9.11-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:16e13a7929791ac1216afde26f712802e3df7bf0360b32e4914dca3ab8baeea5"}, - {file = "regex-2024.9.11-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:46989629904bad940bbec2106528140a218b4a36bb3042d8406980be1941429c"}, - {file = "regex-2024.9.11-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a906ed5e47a0ce5f04b2c981af1c9acf9e8696066900bf03b9d7879a6f679fc8"}, - {file = "regex-2024.9.11-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a091b0550b3b0207784a7d6d0f1a00d1d1c8a11699c1a4d93db3fbefc3ad35"}, - {file = "regex-2024.9.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5ddcd9a179c0a6fa8add279a4444015acddcd7f232a49071ae57fa6e278f1f71"}, - {file = "regex-2024.9.11-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6b41e1adc61fa347662b09398e31ad446afadff932a24807d3ceb955ed865cc8"}, - {file = "regex-2024.9.11-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ced479f601cd2f8ca1fd7b23925a7e0ad512a56d6e9476f79b8f381d9d37090a"}, - {file = "regex-2024.9.11-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:635a1d96665f84b292e401c3d62775851aedc31d4f8784117b3c68c4fcd4118d"}, - {file = "regex-2024.9.11-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:c0256beda696edcf7d97ef16b2a33a8e5a875affd6fa6567b54f7c577b30a137"}, - {file = "regex-2024.9.11-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:3ce4f1185db3fbde8ed8aa223fc9620f276c58de8b0d4f8cc86fd1360829edb6"}, - {file = "regex-2024.9.11-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:09d77559e80dcc9d24570da3745ab859a9cf91953062e4ab126ba9d5993688ca"}, - {file = "regex-2024.9.11-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:7a22ccefd4db3f12b526eccb129390942fe874a3a9fdbdd24cf55773a1faab1a"}, - {file = "regex-2024.9.11-cp310-cp310-win32.whl", hash = "sha256:f745ec09bc1b0bd15cfc73df6fa4f726dcc26bb16c23a03f9e3367d357eeedd0"}, - {file = "regex-2024.9.11-cp310-cp310-win_amd64.whl", hash = "sha256:01c2acb51f8a7d6494c8c5eafe3d8e06d76563d8a8a4643b37e9b2dd8a2ff623"}, - {file = "regex-2024.9.11-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2cce2449e5927a0bf084d346da6cd5eb016b2beca10d0013ab50e3c226ffc0df"}, - {file = "regex-2024.9.11-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3b37fa423beefa44919e009745ccbf353d8c981516e807995b2bd11c2c77d268"}, - {file = "regex-2024.9.11-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:64ce2799bd75039b480cc0360907c4fb2f50022f030bf9e7a8705b636e408fad"}, - {file = "regex-2024.9.11-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a4cc92bb6db56ab0c1cbd17294e14f5e9224f0cc6521167ef388332604e92679"}, - {file = "regex-2024.9.11-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d05ac6fa06959c4172eccd99a222e1fbf17b5670c4d596cb1e5cde99600674c4"}, - {file = "regex-2024.9.11-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:040562757795eeea356394a7fb13076ad4f99d3c62ab0f8bdfb21f99a1f85664"}, - {file = "regex-2024.9.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6113c008a7780792efc80f9dfe10ba0cd043cbf8dc9a76ef757850f51b4edc50"}, - {file = "regex-2024.9.11-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8e5fb5f77c8745a60105403a774fe2c1759b71d3e7b4ca237a5e67ad066c7199"}, - {file = "regex-2024.9.11-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:54d9ff35d4515debf14bc27f1e3b38bfc453eff3220f5bce159642fa762fe5d4"}, - {file = "regex-2024.9.11-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:df5cbb1fbc74a8305b6065d4ade43b993be03dbe0f8b30032cced0d7740994bd"}, - {file = "regex-2024.9.11-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:7fb89ee5d106e4a7a51bce305ac4efb981536301895f7bdcf93ec92ae0d91c7f"}, - {file = "regex-2024.9.11-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:a738b937d512b30bf75995c0159c0ddf9eec0775c9d72ac0202076c72f24aa96"}, - {file = "regex-2024.9.11-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e28f9faeb14b6f23ac55bfbbfd3643f5c7c18ede093977f1df249f73fd22c7b1"}, - {file = "regex-2024.9.11-cp311-cp311-win32.whl", hash = "sha256:18e707ce6c92d7282dfce370cd205098384b8ee21544e7cb29b8aab955b66fa9"}, - {file = "regex-2024.9.11-cp311-cp311-win_amd64.whl", hash = "sha256:313ea15e5ff2a8cbbad96ccef6be638393041b0a7863183c2d31e0c6116688cf"}, - {file = "regex-2024.9.11-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b0d0a6c64fcc4ef9c69bd5b3b3626cc3776520a1637d8abaa62b9edc147a58f7"}, - {file = "regex-2024.9.11-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:49b0e06786ea663f933f3710a51e9385ce0cba0ea56b67107fd841a55d56a231"}, - {file = "regex-2024.9.11-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5b513b6997a0b2f10e4fd3a1313568e373926e8c252bd76c960f96fd039cd28d"}, - {file = "regex-2024.9.11-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee439691d8c23e76f9802c42a95cfeebf9d47cf4ffd06f18489122dbb0a7ad64"}, - {file = "regex-2024.9.11-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a8f877c89719d759e52783f7fe6e1c67121076b87b40542966c02de5503ace42"}, - {file = "regex-2024.9.11-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:23b30c62d0f16827f2ae9f2bb87619bc4fba2044911e2e6c2eb1af0161cdb766"}, - {file = "regex-2024.9.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85ab7824093d8f10d44330fe1e6493f756f252d145323dd17ab6b48733ff6c0a"}, - {file = "regex-2024.9.11-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8dee5b4810a89447151999428fe096977346cf2f29f4d5e29609d2e19e0199c9"}, - {file = "regex-2024.9.11-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:98eeee2f2e63edae2181c886d7911ce502e1292794f4c5ee71e60e23e8d26b5d"}, - {file = "regex-2024.9.11-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:57fdd2e0b2694ce6fc2e5ccf189789c3e2962916fb38779d3e3521ff8fe7a822"}, - {file = "regex-2024.9.11-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:d552c78411f60b1fdaafd117a1fca2f02e562e309223b9d44b7de8be451ec5e0"}, - {file = "regex-2024.9.11-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:a0b2b80321c2ed3fcf0385ec9e51a12253c50f146fddb2abbb10f033fe3d049a"}, - {file = "regex-2024.9.11-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:18406efb2f5a0e57e3a5881cd9354c1512d3bb4f5c45d96d110a66114d84d23a"}, - {file = "regex-2024.9.11-cp312-cp312-win32.whl", hash = "sha256:e464b467f1588e2c42d26814231edecbcfe77f5ac414d92cbf4e7b55b2c2a776"}, - {file = "regex-2024.9.11-cp312-cp312-win_amd64.whl", hash = "sha256:9e8719792ca63c6b8340380352c24dcb8cd7ec49dae36e963742a275dfae6009"}, - {file = "regex-2024.9.11-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:c157bb447303070f256e084668b702073db99bbb61d44f85d811025fcf38f784"}, - {file = "regex-2024.9.11-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4db21ece84dfeefc5d8a3863f101995de646c6cb0536952c321a2650aa202c36"}, - {file = "regex-2024.9.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:220e92a30b426daf23bb67a7962900ed4613589bab80382be09b48896d211e92"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eb1ae19e64c14c7ec1995f40bd932448713d3c73509e82d8cd7744dc00e29e86"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f47cd43a5bfa48f86925fe26fbdd0a488ff15b62468abb5d2a1e092a4fb10e85"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9d4a76b96f398697fe01117093613166e6aa8195d63f1b4ec3f21ab637632963"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ea51dcc0835eea2ea31d66456210a4e01a076d820e9039b04ae8d17ac11dee6"}, - {file = "regex-2024.9.11-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7aaa315101c6567a9a45d2839322c51c8d6e81f67683d529512f5bcfb99c802"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c57d08ad67aba97af57a7263c2d9006d5c404d721c5f7542f077f109ec2a4a29"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:f8404bf61298bb6f8224bb9176c1424548ee1181130818fcd2cbffddc768bed8"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:dd4490a33eb909ef5078ab20f5f000087afa2a4daa27b4c072ccb3cb3050ad84"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:eee9130eaad130649fd73e5cd92f60e55708952260ede70da64de420cdcad554"}, - {file = "regex-2024.9.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6a2644a93da36c784e546de579ec1806bfd2763ef47babc1b03d765fe560c9f8"}, - {file = "regex-2024.9.11-cp313-cp313-win32.whl", hash = "sha256:e997fd30430c57138adc06bba4c7c2968fb13d101e57dd5bb9355bf8ce3fa7e8"}, - {file = "regex-2024.9.11-cp313-cp313-win_amd64.whl", hash = "sha256:042c55879cfeb21a8adacc84ea347721d3d83a159da6acdf1116859e2427c43f"}, - {file = "regex-2024.9.11-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:35f4a6f96aa6cb3f2f7247027b07b15a374f0d5b912c0001418d1d55024d5cb4"}, - {file = "regex-2024.9.11-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:55b96e7ce3a69a8449a66984c268062fbaa0d8ae437b285428e12797baefce7e"}, - {file = "regex-2024.9.11-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cb130fccd1a37ed894824b8c046321540263013da72745d755f2d35114b81a60"}, - {file = "regex-2024.9.11-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:323c1f04be6b2968944d730e5c2091c8c89767903ecaa135203eec4565ed2b2b"}, - {file = "regex-2024.9.11-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:be1c8ed48c4c4065ecb19d882a0ce1afe0745dfad8ce48c49586b90a55f02366"}, - {file = "regex-2024.9.11-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b5b029322e6e7b94fff16cd120ab35a253236a5f99a79fb04fda7ae71ca20ae8"}, - {file = "regex-2024.9.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6fff13ef6b5f29221d6904aa816c34701462956aa72a77f1f151a8ec4f56aeb"}, - {file = "regex-2024.9.11-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:587d4af3979376652010e400accc30404e6c16b7df574048ab1f581af82065e4"}, - {file = "regex-2024.9.11-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:079400a8269544b955ffa9e31f186f01d96829110a3bf79dc338e9910f794fca"}, - {file = "regex-2024.9.11-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:f9268774428ec173654985ce55fc6caf4c6d11ade0f6f914d48ef4719eb05ebb"}, - {file = "regex-2024.9.11-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:23f9985c8784e544d53fc2930fc1ac1a7319f5d5332d228437acc9f418f2f168"}, - {file = "regex-2024.9.11-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:ae2941333154baff9838e88aa71c1d84f4438189ecc6021a12c7573728b5838e"}, - {file = "regex-2024.9.11-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:e93f1c331ca8e86fe877a48ad64e77882c0c4da0097f2212873a69bbfea95d0c"}, - {file = "regex-2024.9.11-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:846bc79ee753acf93aef4184c040d709940c9d001029ceb7b7a52747b80ed2dd"}, - {file = "regex-2024.9.11-cp38-cp38-win32.whl", hash = "sha256:c94bb0a9f1db10a1d16c00880bdebd5f9faf267273b8f5bd1878126e0fbde771"}, - {file = "regex-2024.9.11-cp38-cp38-win_amd64.whl", hash = "sha256:2b08fce89fbd45664d3df6ad93e554b6c16933ffa9d55cb7e01182baaf971508"}, - {file = "regex-2024.9.11-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:07f45f287469039ffc2c53caf6803cd506eb5f5f637f1d4acb37a738f71dd066"}, - {file = "regex-2024.9.11-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4838e24ee015101d9f901988001038f7f0d90dc0c3b115541a1365fb439add62"}, - {file = "regex-2024.9.11-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:6edd623bae6a737f10ce853ea076f56f507fd7726bee96a41ee3d68d347e4d16"}, - {file = "regex-2024.9.11-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c69ada171c2d0e97a4b5aa78fbb835e0ffbb6b13fc5da968c09811346564f0d3"}, - {file = "regex-2024.9.11-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:02087ea0a03b4af1ed6ebab2c54d7118127fee8d71b26398e8e4b05b78963199"}, - {file = "regex-2024.9.11-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:69dee6a020693d12a3cf892aba4808fe168d2a4cef368eb9bf74f5398bfd4ee8"}, - {file = "regex-2024.9.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:297f54910247508e6e5cae669f2bc308985c60540a4edd1c77203ef19bfa63ca"}, - {file = "regex-2024.9.11-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ecea58b43a67b1b79805f1a0255730edaf5191ecef84dbc4cc85eb30bc8b63b9"}, - {file = "regex-2024.9.11-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:eab4bb380f15e189d1313195b062a6aa908f5bd687a0ceccd47c8211e9cf0d4a"}, - {file = "regex-2024.9.11-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0cbff728659ce4bbf4c30b2a1be040faafaa9eca6ecde40aaff86f7889f4ab39"}, - {file = "regex-2024.9.11-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:54c4a097b8bc5bb0dfc83ae498061d53ad7b5762e00f4adaa23bee22b012e6ba"}, - {file = "regex-2024.9.11-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:73d6d2f64f4d894c96626a75578b0bf7d9e56dcda8c3d037a2118fdfe9b1c664"}, - {file = "regex-2024.9.11-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:e53b5fbab5d675aec9f0c501274c467c0f9a5d23696cfc94247e1fb56501ed89"}, - {file = "regex-2024.9.11-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0ffbcf9221e04502fc35e54d1ce9567541979c3fdfb93d2c554f0ca583a19b35"}, - {file = "regex-2024.9.11-cp39-cp39-win32.whl", hash = "sha256:e4c22e1ac1f1ec1e09f72e6c44d8f2244173db7eb9629cc3a346a8d7ccc31142"}, - {file = "regex-2024.9.11-cp39-cp39-win_amd64.whl", hash = "sha256:faa3c142464efec496967359ca99696c896c591c56c53506bac1ad465f66e919"}, - {file = "regex-2024.9.11.tar.gz", hash = "sha256:6c188c307e8433bcb63dc1915022deb553b4203a70722fc542c363bf120a01fd"}, + {file = "requests-oauthlib-2.0.0.tar.gz", hash = "sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9"}, + {file = "requests_oauthlib-2.0.0-py2.py3-none-any.whl", hash = "sha256:7dd8a5c40426b779b0868c404bdef9768deccf22749cde15852df527e6269b36"}, ] +[package.dependencies] +oauthlib = ">=3.0.0" +requests = ">=2.0.0" + +[package.extras] +rsa = ["oauthlib[signedtoken] (>=3.0.0)"] + [[package]] -name = "requests" -version = "2.32.3" -description = "Python HTTP for Humans." +name = "rich" +version = "13.9.4" +description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" optional = false -python-versions = ">=3.8" +python-versions = ">=3.8.0" files = [ - {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, - {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, + {file = "rich-13.9.4-py3-none-any.whl", hash = "sha256:6049d5e6ec054bf2779ab3358186963bac2ea89175919d699e378b99738c2a90"}, + {file = "rich-13.9.4.tar.gz", hash = "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098"}, ] [package.dependencies] -certifi = ">=2017.4.17" -charset-normalizer = ">=2,<4" -idna = ">=2.5,<4" -urllib3 = ">=1.21.1,<3" +markdown-it-py = ">=2.2.0" +pygments = ">=2.13.0,<3.0.0" +typing-extensions = {version = ">=4.0.0,<5.0", markers = "python_version < \"3.11\""} [package.extras] -socks = ["PySocks (>=1.5.6,!=1.5.7)"] -use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] +jupyter = ["ipywidgets (>=7.5.1,<9)"] [[package]] -name = "rpds-py" -version = "0.20.0" -description = "Python bindings to Rust's persistent data structures (rpds)" +name = "rsa" +version = "4.9" +description = "Pure-Python RSA implementation" optional = false -python-versions = ">=3.8" +python-versions = ">=3.6,<4" files = [ - {file = "rpds_py-0.20.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:3ad0fda1635f8439cde85c700f964b23ed5fc2d28016b32b9ee5fe30da5c84e2"}, - {file = "rpds_py-0.20.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9bb4a0d90fdb03437c109a17eade42dfbf6190408f29b2744114d11586611d6f"}, - {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6377e647bbfd0a0b159fe557f2c6c602c159fc752fa316572f012fc0bf67150"}, - {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eb851b7df9dda52dc1415ebee12362047ce771fc36914586b2e9fcbd7d293b3e"}, - {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1e0f80b739e5a8f54837be5d5c924483996b603d5502bfff79bf33da06164ee2"}, - {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5a8c94dad2e45324fc74dce25e1645d4d14df9a4e54a30fa0ae8bad9a63928e3"}, - {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f8e604fe73ba048c06085beaf51147eaec7df856824bfe7b98657cf436623daf"}, - {file = "rpds_py-0.20.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:df3de6b7726b52966edf29663e57306b23ef775faf0ac01a3e9f4012a24a4140"}, - {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:cf258ede5bc22a45c8e726b29835b9303c285ab46fc7c3a4cc770736b5304c9f"}, - {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:55fea87029cded5df854ca7e192ec7bdb7ecd1d9a3f63d5c4eb09148acf4a7ce"}, - {file = "rpds_py-0.20.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ae94bd0b2f02c28e199e9bc51485d0c5601f58780636185660f86bf80c89af94"}, - {file = "rpds_py-0.20.0-cp310-none-win32.whl", hash = "sha256:28527c685f237c05445efec62426d285e47a58fb05ba0090a4340b73ecda6dee"}, - {file = "rpds_py-0.20.0-cp310-none-win_amd64.whl", hash = "sha256:238a2d5b1cad28cdc6ed15faf93a998336eb041c4e440dd7f902528b8891b399"}, - {file = "rpds_py-0.20.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ac2f4f7a98934c2ed6505aead07b979e6f999389f16b714448fb39bbaa86a489"}, - {file = "rpds_py-0.20.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:220002c1b846db9afd83371d08d239fdc865e8f8c5795bbaec20916a76db3318"}, - {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8d7919548df3f25374a1f5d01fbcd38dacab338ef5f33e044744b5c36729c8db"}, - {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:758406267907b3781beee0f0edfe4a179fbd97c0be2e9b1154d7f0a1279cf8e5"}, - {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3d61339e9f84a3f0767b1995adfb171a0d00a1185192718a17af6e124728e0f5"}, - {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1259c7b3705ac0a0bd38197565a5d603218591d3f6cee6e614e380b6ba61c6f6"}, - {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c1dc0f53856b9cc9a0ccca0a7cc61d3d20a7088201c0937f3f4048c1718a209"}, - {file = "rpds_py-0.20.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7e60cb630f674a31f0368ed32b2a6b4331b8350d67de53c0359992444b116dd3"}, - {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:dbe982f38565bb50cb7fb061ebf762c2f254ca3d8c20d4006878766e84266272"}, - {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:514b3293b64187172bc77c8fb0cdae26981618021053b30d8371c3a902d4d5ad"}, - {file = "rpds_py-0.20.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d0a26ffe9d4dd35e4dfdd1e71f46401cff0181c75ac174711ccff0459135fa58"}, - {file = "rpds_py-0.20.0-cp311-none-win32.whl", hash = "sha256:89c19a494bf3ad08c1da49445cc5d13d8fefc265f48ee7e7556839acdacf69d0"}, - {file = "rpds_py-0.20.0-cp311-none-win_amd64.whl", hash = "sha256:c638144ce971df84650d3ed0096e2ae7af8e62ecbbb7b201c8935c370df00a2c"}, - {file = "rpds_py-0.20.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a84ab91cbe7aab97f7446652d0ed37d35b68a465aeef8fc41932a9d7eee2c1a6"}, - {file = "rpds_py-0.20.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:56e27147a5a4c2c21633ff8475d185734c0e4befd1c989b5b95a5d0db699b21b"}, - {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2580b0c34583b85efec8c5c5ec9edf2dfe817330cc882ee972ae650e7b5ef739"}, - {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b80d4a7900cf6b66bb9cee5c352b2d708e29e5a37fe9bf784fa97fc11504bf6c"}, - {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:50eccbf054e62a7b2209b28dc7a22d6254860209d6753e6b78cfaeb0075d7bee"}, - {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:49a8063ea4296b3a7e81a5dfb8f7b2d73f0b1c20c2af401fb0cdf22e14711a96"}, - {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ea438162a9fcbee3ecf36c23e6c68237479f89f962f82dae83dc15feeceb37e4"}, - {file = "rpds_py-0.20.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:18d7585c463087bddcfa74c2ba267339f14f2515158ac4db30b1f9cbdb62c8ef"}, - {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d4c7d1a051eeb39f5c9547e82ea27cbcc28338482242e3e0b7768033cb083821"}, - {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:e4df1e3b3bec320790f699890d41c59d250f6beda159ea3c44c3f5bac1976940"}, - {file = "rpds_py-0.20.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2cf126d33a91ee6eedc7f3197b53e87a2acdac63602c0f03a02dd69e4b138174"}, - {file = "rpds_py-0.20.0-cp312-none-win32.whl", hash = "sha256:8bc7690f7caee50b04a79bf017a8d020c1f48c2a1077ffe172abec59870f1139"}, - {file = "rpds_py-0.20.0-cp312-none-win_amd64.whl", hash = "sha256:0e13e6952ef264c40587d510ad676a988df19adea20444c2b295e536457bc585"}, - {file = "rpds_py-0.20.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:aa9a0521aeca7d4941499a73ad7d4f8ffa3d1affc50b9ea11d992cd7eff18a29"}, - {file = "rpds_py-0.20.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4a1f1d51eccb7e6c32ae89243cb352389228ea62f89cd80823ea7dd1b98e0b91"}, - {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a86a9b96070674fc88b6f9f71a97d2c1d3e5165574615d1f9168ecba4cecb24"}, - {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6c8ef2ebf76df43f5750b46851ed1cdf8f109d7787ca40035fe19fbdc1acc5a7"}, - {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b74b25f024b421d5859d156750ea9a65651793d51b76a2e9238c05c9d5f203a9"}, - {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57eb94a8c16ab08fef6404301c38318e2c5a32216bf5de453e2714c964c125c8"}, - {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1940dae14e715e2e02dfd5b0f64a52e8374a517a1e531ad9412319dc3ac7879"}, - {file = "rpds_py-0.20.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d20277fd62e1b992a50c43f13fbe13277a31f8c9f70d59759c88f644d66c619f"}, - {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:06db23d43f26478303e954c34c75182356ca9aa7797d22c5345b16871ab9c45c"}, - {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b2a5db5397d82fa847e4c624b0c98fe59d2d9b7cf0ce6de09e4d2e80f8f5b3f2"}, - {file = "rpds_py-0.20.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5a35df9f5548fd79cb2f52d27182108c3e6641a4feb0f39067911bf2adaa3e57"}, - {file = "rpds_py-0.20.0-cp313-none-win32.whl", hash = "sha256:fd2d84f40633bc475ef2d5490b9c19543fbf18596dcb1b291e3a12ea5d722f7a"}, - {file = "rpds_py-0.20.0-cp313-none-win_amd64.whl", hash = "sha256:9bc2d153989e3216b0559251b0c260cfd168ec78b1fac33dd485750a228db5a2"}, - {file = "rpds_py-0.20.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:f2fbf7db2012d4876fb0d66b5b9ba6591197b0f165db8d99371d976546472a24"}, - {file = "rpds_py-0.20.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1e5f3cd7397c8f86c8cc72d5a791071431c108edd79872cdd96e00abd8497d29"}, - {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce9845054c13696f7af7f2b353e6b4f676dab1b4b215d7fe5e05c6f8bb06f965"}, - {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c3e130fd0ec56cb76eb49ef52faead8ff09d13f4527e9b0c400307ff72b408e1"}, - {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4b16aa0107ecb512b568244ef461f27697164d9a68d8b35090e9b0c1c8b27752"}, - {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa7f429242aae2947246587d2964fad750b79e8c233a2367f71b554e9447949c"}, - {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:af0fc424a5842a11e28956e69395fbbeab2c97c42253169d87e90aac2886d751"}, - {file = "rpds_py-0.20.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b8c00a3b1e70c1d3891f0db1b05292747f0dbcfb49c43f9244d04c70fbc40eb8"}, - {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:40ce74fc86ee4645d0a225498d091d8bc61f39b709ebef8204cb8b5a464d3c0e"}, - {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:4fe84294c7019456e56d93e8ababdad5a329cd25975be749c3f5f558abb48253"}, - {file = "rpds_py-0.20.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:338ca4539aad4ce70a656e5187a3a31c5204f261aef9f6ab50e50bcdffaf050a"}, - {file = "rpds_py-0.20.0-cp38-none-win32.whl", hash = "sha256:54b43a2b07db18314669092bb2de584524d1ef414588780261e31e85846c26a5"}, - {file = "rpds_py-0.20.0-cp38-none-win_amd64.whl", hash = "sha256:a1862d2d7ce1674cffa6d186d53ca95c6e17ed2b06b3f4c476173565c862d232"}, - {file = "rpds_py-0.20.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:3fde368e9140312b6e8b6c09fb9f8c8c2f00999d1823403ae90cc00480221b22"}, - {file = "rpds_py-0.20.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9824fb430c9cf9af743cf7aaf6707bf14323fb51ee74425c380f4c846ea70789"}, - {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11ef6ce74616342888b69878d45e9f779b95d4bd48b382a229fe624a409b72c5"}, - {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c52d3f2f82b763a24ef52f5d24358553e8403ce05f893b5347098014f2d9eff2"}, - {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d35cef91e59ebbeaa45214861874bc6f19eb35de96db73e467a8358d701a96c"}, - {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d72278a30111e5b5525c1dd96120d9e958464316f55adb030433ea905866f4de"}, - {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4c29cbbba378759ac5786730d1c3cb4ec6f8ababf5c42a9ce303dc4b3d08cda"}, - {file = "rpds_py-0.20.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6632f2d04f15d1bd6fe0eedd3b86d9061b836ddca4c03d5cf5c7e9e6b7c14580"}, - {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:d0b67d87bb45ed1cd020e8fbf2307d449b68abc45402fe1a4ac9e46c3c8b192b"}, - {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:ec31a99ca63bf3cd7f1a5ac9fe95c5e2d060d3c768a09bc1d16e235840861420"}, - {file = "rpds_py-0.20.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:22e6c9976e38f4d8c4a63bd8a8edac5307dffd3ee7e6026d97f3cc3a2dc02a0b"}, - {file = "rpds_py-0.20.0-cp39-none-win32.whl", hash = "sha256:569b3ea770c2717b730b61998b6c54996adee3cef69fc28d444f3e7920313cf7"}, - {file = "rpds_py-0.20.0-cp39-none-win_amd64.whl", hash = "sha256:e6900ecdd50ce0facf703f7a00df12374b74bbc8ad9fe0f6559947fb20f82364"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:617c7357272c67696fd052811e352ac54ed1d9b49ab370261a80d3b6ce385045"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:9426133526f69fcaba6e42146b4e12d6bc6c839b8b555097020e2b78ce908dcc"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deb62214c42a261cb3eb04d474f7155279c1a8a8c30ac89b7dcb1721d92c3c02"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fcaeb7b57f1a1e071ebd748984359fef83ecb026325b9d4ca847c95bc7311c92"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d454b8749b4bd70dd0a79f428731ee263fa6995f83ccb8bada706e8d1d3ff89d"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d807dc2051abe041b6649681dce568f8e10668e3c1c6543ebae58f2d7e617855"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3c20f0ddeb6e29126d45f89206b8291352b8c5b44384e78a6499d68b52ae511"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b7f19250ceef892adf27f0399b9e5afad019288e9be756d6919cb58892129f51"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:4f1ed4749a08379555cebf4650453f14452eaa9c43d0a95c49db50c18b7da075"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:dcedf0b42bcb4cfff4101d7771a10532415a6106062f005ab97d1d0ab5681c60"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:39ed0d010457a78f54090fafb5d108501b5aa5604cc22408fc1c0c77eac14344"}, - {file = "rpds_py-0.20.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:bb273176be34a746bdac0b0d7e4e2c467323d13640b736c4c477881a3220a989"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f918a1a130a6dfe1d7fe0f105064141342e7dd1611f2e6a21cd2f5c8cb1cfb3e"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:f60012a73aa396be721558caa3a6fd49b3dd0033d1675c6d59c4502e870fcf0c"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d2b1ad682a3dfda2a4e8ad8572f3100f95fad98cb99faf37ff0ddfe9cbf9d03"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:614fdafe9f5f19c63ea02817fa4861c606a59a604a77c8cdef5aa01d28b97921"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fa518bcd7600c584bf42e6617ee8132869e877db2f76bcdc281ec6a4113a53ab"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f0475242f447cc6cb8a9dd486d68b2ef7fbee84427124c232bff5f63b1fe11e5"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f90a4cd061914a60bd51c68bcb4357086991bd0bb93d8aa66a6da7701370708f"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:def7400461c3a3f26e49078302e1c1b38f6752342c77e3cf72ce91ca69fb1bc1"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:65794e4048ee837494aea3c21a28ad5fc080994dfba5b036cf84de37f7ad5074"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:faefcc78f53a88f3076b7f8be0a8f8d35133a3ecf7f3770895c25f8813460f08"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:5b4f105deeffa28bbcdff6c49b34e74903139afa690e35d2d9e3c2c2fba18cec"}, - {file = "rpds_py-0.20.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fdfc3a892927458d98f3d55428ae46b921d1f7543b89382fdb483f5640daaec8"}, - {file = "rpds_py-0.20.0.tar.gz", hash = "sha256:d72a210824facfdaf8768cf2d7ca25a042c30320b3020de2fa04640920d4e121"}, -] - -[[package]] -name = "safetensors" -version = "0.4.5" -description = "" + {file = "rsa-4.9-py3-none-any.whl", hash = "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7"}, + {file = "rsa-4.9.tar.gz", hash = "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21"}, +] + +[package.dependencies] +pyasn1 = ">=0.1.3" + +[[package]] +name = "ruff" +version = "0.7.4" +description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "safetensors-0.4.5-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:a63eaccd22243c67e4f2b1c3e258b257effc4acd78f3b9d397edc8cf8f1298a7"}, - {file = "safetensors-0.4.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:23fc9b4ec7b602915cbb4ec1a7c1ad96d2743c322f20ab709e2c35d1b66dad27"}, - {file = "safetensors-0.4.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6885016f34bef80ea1085b7e99b3c1f92cb1be78a49839203060f67b40aee761"}, - {file = "safetensors-0.4.5-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:133620f443450429322f238fda74d512c4008621227fccf2f8cf4a76206fea7c"}, - {file = "safetensors-0.4.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4fb3e0609ec12d2a77e882f07cced530b8262027f64b75d399f1504ffec0ba56"}, - {file = "safetensors-0.4.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d0f1dd769f064adc33831f5e97ad07babbd728427f98e3e1db6902e369122737"}, - {file = "safetensors-0.4.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6d156bdb26732feada84f9388a9f135528c1ef5b05fae153da365ad4319c4c5"}, - {file = "safetensors-0.4.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9e347d77e2c77eb7624400ccd09bed69d35c0332f417ce8c048d404a096c593b"}, - {file = "safetensors-0.4.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:9f556eea3aec1d3d955403159fe2123ddd68e880f83954ee9b4a3f2e15e716b6"}, - {file = "safetensors-0.4.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9483f42be3b6bc8ff77dd67302de8ae411c4db39f7224dec66b0eb95822e4163"}, - {file = "safetensors-0.4.5-cp310-none-win32.whl", hash = "sha256:7389129c03fadd1ccc37fd1ebbc773f2b031483b04700923c3511d2a939252cc"}, - {file = "safetensors-0.4.5-cp310-none-win_amd64.whl", hash = "sha256:e98ef5524f8b6620c8cdef97220c0b6a5c1cef69852fcd2f174bb96c2bb316b1"}, - {file = "safetensors-0.4.5-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:21f848d7aebd5954f92538552d6d75f7c1b4500f51664078b5b49720d180e47c"}, - {file = "safetensors-0.4.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bb07000b19d41e35eecef9a454f31a8b4718a185293f0d0b1c4b61d6e4487971"}, - {file = "safetensors-0.4.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09dedf7c2fda934ee68143202acff6e9e8eb0ddeeb4cfc24182bef999efa9f42"}, - {file = "safetensors-0.4.5-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:59b77e4b7a708988d84f26de3ebead61ef1659c73dcbc9946c18f3b1786d2688"}, - {file = "safetensors-0.4.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5d3bc83e14d67adc2e9387e511097f254bd1b43c3020440e708858c684cbac68"}, - {file = "safetensors-0.4.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39371fc551c1072976073ab258c3119395294cf49cdc1f8476794627de3130df"}, - {file = "safetensors-0.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6c19feda32b931cae0acd42748a670bdf56bee6476a046af20181ad3fee4090"}, - {file = "safetensors-0.4.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a659467495de201e2f282063808a41170448c78bada1e62707b07a27b05e6943"}, - {file = "safetensors-0.4.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:bad5e4b2476949bcd638a89f71b6916fa9a5cae5c1ae7eede337aca2100435c0"}, - {file = "safetensors-0.4.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a3a315a6d0054bc6889a17f5668a73f94f7fe55121ff59e0a199e3519c08565f"}, - {file = "safetensors-0.4.5-cp311-none-win32.whl", hash = "sha256:a01e232e6d3d5cf8b1667bc3b657a77bdab73f0743c26c1d3c5dd7ce86bd3a92"}, - {file = "safetensors-0.4.5-cp311-none-win_amd64.whl", hash = "sha256:cbd39cae1ad3e3ef6f63a6f07296b080c951f24cec60188378e43d3713000c04"}, - {file = "safetensors-0.4.5-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:473300314e026bd1043cef391bb16a8689453363381561b8a3e443870937cc1e"}, - {file = "safetensors-0.4.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:801183a0f76dc647f51a2d9141ad341f9665602a7899a693207a82fb102cc53e"}, - {file = "safetensors-0.4.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1524b54246e422ad6fb6aea1ac71edeeb77666efa67230e1faf6999df9b2e27f"}, - {file = "safetensors-0.4.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b3139098e3e8b2ad7afbca96d30ad29157b50c90861084e69fcb80dec7430461"}, - {file = "safetensors-0.4.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:65573dc35be9059770808e276b017256fa30058802c29e1038eb1c00028502ea"}, - {file = "safetensors-0.4.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fd33da8e9407559f8779c82a0448e2133737f922d71f884da27184549416bfed"}, - {file = "safetensors-0.4.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3685ce7ed036f916316b567152482b7e959dc754fcc4a8342333d222e05f407c"}, - {file = "safetensors-0.4.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:dde2bf390d25f67908278d6f5d59e46211ef98e44108727084d4637ee70ab4f1"}, - {file = "safetensors-0.4.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7469d70d3de970b1698d47c11ebbf296a308702cbaae7fcb993944751cf985f4"}, - {file = "safetensors-0.4.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3a6ba28118636a130ccbb968bc33d4684c48678695dba2590169d5ab03a45646"}, - {file = "safetensors-0.4.5-cp312-none-win32.whl", hash = "sha256:c859c7ed90b0047f58ee27751c8e56951452ed36a67afee1b0a87847d065eec6"}, - {file = "safetensors-0.4.5-cp312-none-win_amd64.whl", hash = "sha256:b5a8810ad6a6f933fff6c276eae92c1da217b39b4d8b1bc1c0b8af2d270dc532"}, - {file = "safetensors-0.4.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:25e5f8e2e92a74f05b4ca55686234c32aac19927903792b30ee6d7bd5653d54e"}, - {file = "safetensors-0.4.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:81efb124b58af39fcd684254c645e35692fea81c51627259cdf6d67ff4458916"}, - {file = "safetensors-0.4.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:585f1703a518b437f5103aa9cf70e9bd437cb78eea9c51024329e4fb8a3e3679"}, - {file = "safetensors-0.4.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4b99fbf72e3faf0b2f5f16e5e3458b93b7d0a83984fe8d5364c60aa169f2da89"}, - {file = "safetensors-0.4.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b17b299ca9966ca983ecda1c0791a3f07f9ca6ab5ded8ef3d283fff45f6bcd5f"}, - {file = "safetensors-0.4.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:76ded72f69209c9780fdb23ea89e56d35c54ae6abcdec67ccb22af8e696e449a"}, - {file = "safetensors-0.4.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2783956926303dcfeb1de91a4d1204cd4089ab441e622e7caee0642281109db3"}, - {file = "safetensors-0.4.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d94581aab8c6b204def4d7320f07534d6ee34cd4855688004a4354e63b639a35"}, - {file = "safetensors-0.4.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:67e1e7cb8678bb1b37ac48ec0df04faf689e2f4e9e81e566b5c63d9f23748523"}, - {file = "safetensors-0.4.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:dbd280b07e6054ea68b0cb4b16ad9703e7d63cd6890f577cb98acc5354780142"}, - {file = "safetensors-0.4.5-cp37-cp37m-macosx_10_12_x86_64.whl", hash = "sha256:77d9b228da8374c7262046a36c1f656ba32a93df6cc51cd4453af932011e77f1"}, - {file = "safetensors-0.4.5-cp37-cp37m-macosx_11_0_arm64.whl", hash = "sha256:500cac01d50b301ab7bb192353317035011c5ceeef0fca652f9f43c000bb7f8d"}, - {file = "safetensors-0.4.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:75331c0c746f03158ded32465b7d0b0e24c5a22121743662a2393439c43a45cf"}, - {file = "safetensors-0.4.5-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:670e95fe34e0d591d0529e5e59fd9d3d72bc77b1444fcaa14dccda4f36b5a38b"}, - {file = "safetensors-0.4.5-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:098923e2574ff237c517d6e840acada8e5b311cb1fa226019105ed82e9c3b62f"}, - {file = "safetensors-0.4.5-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:13ca0902d2648775089fa6a0c8fc9e6390c5f8ee576517d33f9261656f851e3f"}, - {file = "safetensors-0.4.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5f0032bedc869c56f8d26259fe39cd21c5199cd57f2228d817a0e23e8370af25"}, - {file = "safetensors-0.4.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f4b15f51b4f8f2a512341d9ce3475cacc19c5fdfc5db1f0e19449e75f95c7dc8"}, - {file = "safetensors-0.4.5-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:f6594d130d0ad933d885c6a7b75c5183cb0e8450f799b80a39eae2b8508955eb"}, - {file = "safetensors-0.4.5-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:60c828a27e852ded2c85fc0f87bf1ec20e464c5cd4d56ff0e0711855cc2e17f8"}, - {file = "safetensors-0.4.5-cp37-none-win32.whl", hash = "sha256:6d3de65718b86c3eeaa8b73a9c3d123f9307a96bbd7be9698e21e76a56443af5"}, - {file = "safetensors-0.4.5-cp37-none-win_amd64.whl", hash = "sha256:5a2d68a523a4cefd791156a4174189a4114cf0bf9c50ceb89f261600f3b2b81a"}, - {file = "safetensors-0.4.5-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:e7a97058f96340850da0601a3309f3d29d6191b0702b2da201e54c6e3e44ccf0"}, - {file = "safetensors-0.4.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:63bfd425e25f5c733f572e2246e08a1c38bd6f2e027d3f7c87e2e43f228d1345"}, - {file = "safetensors-0.4.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3664ac565d0e809b0b929dae7ccd74e4d3273cd0c6d1220c6430035befb678e"}, - {file = "safetensors-0.4.5-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:313514b0b9b73ff4ddfb4edd71860696dbe3c1c9dc4d5cc13dbd74da283d2cbf"}, - {file = "safetensors-0.4.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31fa33ee326f750a2f2134a6174773c281d9a266ccd000bd4686d8021f1f3dac"}, - {file = "safetensors-0.4.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:09566792588d77b68abe53754c9f1308fadd35c9f87be939e22c623eaacbed6b"}, - {file = "safetensors-0.4.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:309aaec9b66cbf07ad3a2e5cb8a03205663324fea024ba391594423d0f00d9fe"}, - {file = "safetensors-0.4.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:53946c5813b8f9e26103c5efff4a931cc45d874f45229edd68557ffb35ffb9f8"}, - {file = "safetensors-0.4.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:868f9df9e99ad1e7f38c52194063a982bc88fedc7d05096f4f8160403aaf4bd6"}, - {file = "safetensors-0.4.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9cc9449bd0b0bc538bd5e268221f0c5590bc5c14c1934a6ae359d44410dc68c4"}, - {file = "safetensors-0.4.5-cp38-none-win32.whl", hash = "sha256:83c4f13a9e687335c3928f615cd63a37e3f8ef072a3f2a0599fa09f863fb06a2"}, - {file = "safetensors-0.4.5-cp38-none-win_amd64.whl", hash = "sha256:b98d40a2ffa560653f6274e15b27b3544e8e3713a44627ce268f419f35c49478"}, - {file = "safetensors-0.4.5-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:cf727bb1281d66699bef5683b04d98c894a2803442c490a8d45cd365abfbdeb2"}, - {file = "safetensors-0.4.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:96f1d038c827cdc552d97e71f522e1049fef0542be575421f7684756a748e457"}, - {file = "safetensors-0.4.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:139fbee92570ecea774e6344fee908907db79646d00b12c535f66bc78bd5ea2c"}, - {file = "safetensors-0.4.5-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c36302c1c69eebb383775a89645a32b9d266878fab619819ce660309d6176c9b"}, - {file = "safetensors-0.4.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d641f5b8149ea98deb5ffcf604d764aad1de38a8285f86771ce1abf8e74c4891"}, - {file = "safetensors-0.4.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b4db6a61d968de73722b858038c616a1bebd4a86abe2688e46ca0cc2d17558f2"}, - {file = "safetensors-0.4.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b75a616e02f21b6f1d5785b20cecbab5e2bd3f6358a90e8925b813d557666ec1"}, - {file = "safetensors-0.4.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:788ee7d04cc0e0e7f944c52ff05f52a4415b312f5efd2ee66389fb7685ee030c"}, - {file = "safetensors-0.4.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:87bc42bd04fd9ca31396d3ca0433db0be1411b6b53ac5a32b7845a85d01ffc2e"}, - {file = "safetensors-0.4.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4037676c86365a721a8c9510323a51861d703b399b78a6b4486a54a65a975fca"}, - {file = "safetensors-0.4.5-cp39-none-win32.whl", hash = "sha256:1500418454529d0ed5c1564bda376c4ddff43f30fce9517d9bee7bcce5a8ef50"}, - {file = "safetensors-0.4.5-cp39-none-win_amd64.whl", hash = "sha256:9d1a94b9d793ed8fe35ab6d5cea28d540a46559bafc6aae98f30ee0867000cab"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:fdadf66b5a22ceb645d5435a0be7a0292ce59648ca1d46b352f13cff3ea80410"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:d42ffd4c2259f31832cb17ff866c111684c87bd930892a1ba53fed28370c918c"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd8a1f6d2063a92cd04145c7fd9e31a1c7d85fbec20113a14b487563fdbc0597"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:951d2fcf1817f4fb0ef0b48f6696688a4e852a95922a042b3f96aaa67eedc920"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6ac85d9a8c1af0e3132371d9f2d134695a06a96993c2e2f0bbe25debb9e3f67a"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e3cec4a29eb7fe8da0b1c7988bc3828183080439dd559f720414450de076fcab"}, - {file = "safetensors-0.4.5-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:21742b391b859e67b26c0b2ac37f52c9c0944a879a25ad2f9f9f3cd61e7fda8f"}, - {file = "safetensors-0.4.5-pp37-pypy37_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c7db3006a4915151ce1913652e907cdede299b974641a83fbc092102ac41b644"}, - {file = "safetensors-0.4.5-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f68bf99ea970960a237f416ea394e266e0361895753df06e3e06e6ea7907d98b"}, - {file = "safetensors-0.4.5-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8158938cf3324172df024da511839d373c40fbfaa83e9abf467174b2910d7b4c"}, - {file = "safetensors-0.4.5-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:540ce6c4bf6b58cb0fd93fa5f143bc0ee341c93bb4f9287ccd92cf898cc1b0dd"}, - {file = "safetensors-0.4.5-pp37-pypy37_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:bfeaa1a699c6b9ed514bd15e6a91e74738b71125a9292159e3d6b7f0a53d2cde"}, - {file = "safetensors-0.4.5-pp37-pypy37_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:01c8f00da537af711979e1b42a69a8ec9e1d7112f208e0e9b8a35d2c381085ef"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:a0dd565f83b30f2ca79b5d35748d0d99dd4b3454f80e03dfb41f0038e3bdf180"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:023b6e5facda76989f4cba95a861b7e656b87e225f61811065d5c501f78cdb3f"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9633b663393d5796f0b60249549371e392b75a0b955c07e9c6f8708a87fc841f"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78dd8adfb48716233c45f676d6e48534d34b4bceb50162c13d1f0bdf6f78590a"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8e8deb16c4321d61ae72533b8451ec4a9af8656d1c61ff81aa49f966406e4b68"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:52452fa5999dc50c4decaf0c53aa28371f7f1e0fe5c2dd9129059fbe1e1599c7"}, - {file = "safetensors-0.4.5-pp38-pypy38_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:d5f23198821e227cfc52d50fa989813513db381255c6d100927b012f0cfec63d"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f4beb84b6073b1247a773141a6331117e35d07134b3bb0383003f39971d414bb"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:68814d599d25ed2fdd045ed54d370d1d03cf35e02dce56de44c651f828fb9b7b"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0b6453c54c57c1781292c46593f8a37254b8b99004c68d6c3ce229688931a22"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:adaa9c6dead67e2dd90d634f89131e43162012479d86e25618e821a03d1eb1dc"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:73e7d408e9012cd17511b382b43547850969c7979efc2bc353f317abaf23c84c"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:775409ce0fcc58b10773fdb4221ed1eb007de10fe7adbdf8f5e8a56096b6f0bc"}, - {file = "safetensors-0.4.5-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:834001bed193e4440c4a3950a31059523ee5090605c907c66808664c932b549c"}, - {file = "safetensors-0.4.5.tar.gz", hash = "sha256:d73de19682deabb02524b3d5d1f8b3aaba94c72f1bbfc7911b9b9d5d391c0310"}, + {file = "ruff-0.7.4-py3-none-linux_armv6l.whl", hash = "sha256:a4919925e7684a3f18e18243cd6bea7cfb8e968a6eaa8437971f681b7ec51478"}, + {file = "ruff-0.7.4-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:cfb365c135b830778dda8c04fb7d4280ed0b984e1aec27f574445231e20d6c63"}, + {file = "ruff-0.7.4-py3-none-macosx_11_0_arm64.whl", hash = "sha256:63a569b36bc66fbadec5beaa539dd81e0527cb258b94e29e0531ce41bacc1f20"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d06218747d361d06fd2fdac734e7fa92df36df93035db3dc2ad7aa9852cb109"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e0cea28d0944f74ebc33e9f934238f15c758841f9f5edd180b5315c203293452"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:80094ecd4793c68b2571b128f91754d60f692d64bc0d7272ec9197fdd09bf9ea"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:997512325c6620d1c4c2b15db49ef59543ef9cd0f4aa8065ec2ae5103cedc7e7"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:00b4cf3a6b5fad6d1a66e7574d78956bbd09abfd6c8a997798f01f5da3d46a05"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7dbdc7d8274e1422722933d1edddfdc65b4336abf0b16dfcb9dedd6e6a517d06"}, + {file = "ruff-0.7.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e92dfb5f00eaedb1501b2f906ccabfd67b2355bdf117fea9719fc99ac2145bc"}, + {file = "ruff-0.7.4-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:3bd726099f277d735dc38900b6a8d6cf070f80828877941983a57bca1cd92172"}, + {file = "ruff-0.7.4-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:2e32829c429dd081ee5ba39aef436603e5b22335c3d3fff013cd585806a6486a"}, + {file = "ruff-0.7.4-py3-none-musllinux_1_2_i686.whl", hash = "sha256:662a63b4971807623f6f90c1fb664613f67cc182dc4d991471c23c541fee62dd"}, + {file = "ruff-0.7.4-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:876f5e09eaae3eb76814c1d3b68879891d6fde4824c015d48e7a7da4cf066a3a"}, + {file = "ruff-0.7.4-py3-none-win32.whl", hash = "sha256:75c53f54904be42dd52a548728a5b572344b50d9b2873d13a3f8c5e3b91f5cac"}, + {file = "ruff-0.7.4-py3-none-win_amd64.whl", hash = "sha256:745775c7b39f914238ed1f1b0bebed0b9155a17cd8bc0b08d3c87e4703b990d6"}, + {file = "ruff-0.7.4-py3-none-win_arm64.whl", hash = "sha256:11bff065102c3ae9d3ea4dc9ecdfe5a5171349cdd0787c1fc64761212fc9cf1f"}, + {file = "ruff-0.7.4.tar.gz", hash = "sha256:cd12e35031f5af6b9b93715d8c4f40360070b2041f81273d0527683d5708fce2"}, +] + +[[package]] +name = "safehttpx" +version = "0.1.1" +description = "A small Python library created to help developers protect their applications from Server Side Request Forgery (SSRF) attacks." +optional = false +python-versions = ">=3.9" +files = [ + {file = "safehttpx-0.1.1-py3-none-any.whl", hash = "sha256:1d93b64023c00d5c53ea70ea36e773b8a0dba5eaf1a1eb188856584a0a4cf4d1"}, + {file = "safehttpx-0.1.1.tar.gz", hash = "sha256:6e1bedf7767213300da5e4cb7e823e98edc934f17ca192d2e585111a2b899149"}, ] +[package.dependencies] +httpx = "*" + [package.extras] -all = ["safetensors[jax]", "safetensors[numpy]", "safetensors[paddlepaddle]", "safetensors[pinned-tf]", "safetensors[quality]", "safetensors[testing]", "safetensors[torch]"] -dev = ["safetensors[all]"] -jax = ["flax (>=0.6.3)", "jax (>=0.3.25)", "jaxlib (>=0.3.25)", "safetensors[numpy]"] -mlx = ["mlx (>=0.0.9)"] -numpy = ["numpy (>=1.21.6)"] -paddlepaddle = ["paddlepaddle (>=2.4.1)", "safetensors[numpy]"] -pinned-tf = ["safetensors[numpy]", "tensorflow (==2.11.0)"] -quality = ["black (==22.3)", "click (==8.0.4)", "flake8 (>=3.8.3)", "isort (>=5.5.4)"] -tensorflow = ["safetensors[numpy]", "tensorflow (>=2.11.0)"] -testing = ["h5py (>=3.7.0)", "huggingface-hub (>=0.12.1)", "hypothesis (>=6.70.2)", "pytest (>=7.2.0)", "pytest-benchmark (>=4.0.0)", "safetensors[numpy]", "setuptools-rust (>=1.5.2)"] -torch = ["safetensors[numpy]", "torch (>=1.10)"] +dev = ["pytest"] [[package]] name = "semantic-version" @@ -2710,79 +1621,16 @@ dev = ["Django (>=1.11)", "check-manifest", "colorama (<=0.4.1)", "coverage", "f doc = ["Sphinx", "sphinx-rtd-theme"] [[package]] -name = "sentencepiece" -version = "0.1.99" -description = "SentencePiece python wrapper" -optional = false -python-versions = "*" -files = [ - {file = "sentencepiece-0.1.99-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:0eb528e70571b7c02723e5804322469b82fe7ea418c96051d0286c0fa028db73"}, - {file = "sentencepiece-0.1.99-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:77d7fafb2c4e4659cbdf303929503f37a26eabc4ff31d3a79bf1c5a1b338caa7"}, - {file = "sentencepiece-0.1.99-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:be9cf5b9e404c245aeb3d3723c737ba7a8f5d4ba262ef233a431fa6c45f732a0"}, - {file = "sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:baed1a26464998f9710d20e52607c29ffd4293e7c71c6a1f83f51ad0911ec12c"}, - {file = "sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9832f08bb372d4c8b567612f8eab9e36e268dff645f1c28f9f8e851be705f6d1"}, - {file = "sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:019e7535108e309dae2b253a75834fc3128240aa87c00eb80732078cdc182588"}, - {file = "sentencepiece-0.1.99-cp310-cp310-win32.whl", hash = "sha256:fa16a830416bb823fa2a52cbdd474d1f7f3bba527fd2304fb4b140dad31bb9bc"}, - {file = "sentencepiece-0.1.99-cp310-cp310-win_amd64.whl", hash = "sha256:14b0eccb7b641d4591c3e12ae44cab537d68352e4d3b6424944f0c447d2348d5"}, - {file = "sentencepiece-0.1.99-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6d3c56f24183a1e8bd61043ff2c58dfecdc68a5dd8955dc13bab83afd5f76b81"}, - {file = "sentencepiece-0.1.99-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ed6ea1819fd612c989999e44a51bf556d0ef6abfb553080b9be3d347e18bcfb7"}, - {file = "sentencepiece-0.1.99-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a2a0260cd1fb7bd8b4d4f39dc2444a8d5fd4e0a0c4d5c899810ef1abf99b2d45"}, - {file = "sentencepiece-0.1.99-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a1abff4d1ff81c77cac3cc6fefa34fa4b8b371e5ee51cb7e8d1ebc996d05983"}, - {file = "sentencepiece-0.1.99-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:004e6a621d4bc88978eecb6ea7959264239a17b70f2cbc348033d8195c9808ec"}, - {file = "sentencepiece-0.1.99-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db361e03342c41680afae5807590bc88aa0e17cfd1a42696a160e4005fcda03b"}, - {file = "sentencepiece-0.1.99-cp311-cp311-win32.whl", hash = "sha256:2d95e19168875b70df62916eb55428a0cbcb834ac51d5a7e664eda74def9e1e0"}, - {file = "sentencepiece-0.1.99-cp311-cp311-win_amd64.whl", hash = "sha256:f90d73a6f81248a909f55d8e6ef56fec32d559e1e9af045f0b0322637cb8e5c7"}, - {file = "sentencepiece-0.1.99-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:62e24c81e74bd87a6e0d63c51beb6527e4c0add67e1a17bac18bcd2076afcfeb"}, - {file = "sentencepiece-0.1.99-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:57efcc2d51caff20d9573567d9fd3f854d9efe613ed58a439c78c9f93101384a"}, - {file = "sentencepiece-0.1.99-cp36-cp36m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6a904c46197993bd1e95b93a6e373dca2f170379d64441041e2e628ad4afb16f"}, - {file = "sentencepiece-0.1.99-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d89adf59854741c0d465f0e1525b388c0d174f611cc04af54153c5c4f36088c4"}, - {file = "sentencepiece-0.1.99-cp36-cp36m-win32.whl", hash = "sha256:47c378146928690d1bc106fdf0da768cebd03b65dd8405aa3dd88f9c81e35dba"}, - {file = "sentencepiece-0.1.99-cp36-cp36m-win_amd64.whl", hash = "sha256:9ba142e7a90dd6d823c44f9870abdad45e6c63958eb60fe44cca6828d3b69da2"}, - {file = "sentencepiece-0.1.99-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b7b1a9ae4d7c6f1f867e63370cca25cc17b6f4886729595b885ee07a58d3cec3"}, - {file = "sentencepiece-0.1.99-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0f644c9d4d35c096a538507b2163e6191512460035bf51358794a78515b74f7"}, - {file = "sentencepiece-0.1.99-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c8843d23a0f686d85e569bd6dcd0dd0e0cbc03731e63497ca6d5bacd18df8b85"}, - {file = "sentencepiece-0.1.99-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33e6f690a1caebb4867a2e367afa1918ad35be257ecdb3455d2bbd787936f155"}, - {file = "sentencepiece-0.1.99-cp37-cp37m-win32.whl", hash = "sha256:8a321866c2f85da7beac74a824b4ad6ddc2a4c9bccd9382529506d48f744a12c"}, - {file = "sentencepiece-0.1.99-cp37-cp37m-win_amd64.whl", hash = "sha256:c42f753bcfb7661c122a15b20be7f684b61fc8592c89c870adf52382ea72262d"}, - {file = "sentencepiece-0.1.99-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:85b476406da69c70586f0bb682fcca4c9b40e5059814f2db92303ea4585c650c"}, - {file = "sentencepiece-0.1.99-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:cfbcfe13c69d3f87b7fcd5da168df7290a6d006329be71f90ba4f56bc77f8561"}, - {file = "sentencepiece-0.1.99-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:445b0ec381af1cd4eef95243e7180c63d9c384443c16c4c47a28196bd1cda937"}, - {file = "sentencepiece-0.1.99-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6890ea0f2b4703f62d0bf27932e35808b1f679bdb05c7eeb3812b935ba02001"}, - {file = "sentencepiece-0.1.99-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fb71af492b0eefbf9f2501bec97bcd043b6812ab000d119eaf4bd33f9e283d03"}, - {file = "sentencepiece-0.1.99-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:27b866b5bd3ddd54166bbcbf5c8d7dd2e0b397fac8537991c7f544220b1f67bc"}, - {file = "sentencepiece-0.1.99-cp38-cp38-win32.whl", hash = "sha256:b133e8a499eac49c581c3c76e9bdd08c338cc1939e441fee6f92c0ccb5f1f8be"}, - {file = "sentencepiece-0.1.99-cp38-cp38-win_amd64.whl", hash = "sha256:0eaf3591dd0690a87f44f4df129cf8d05d8a4029b5b6709b489b8e27f9a9bcff"}, - {file = "sentencepiece-0.1.99-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:38efeda9bbfb55052d482a009c6a37e52f42ebffcea9d3a98a61de7aee356a28"}, - {file = "sentencepiece-0.1.99-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6c030b081dc1e1bcc9fadc314b19b740715d3d566ad73a482da20d7d46fd444c"}, - {file = "sentencepiece-0.1.99-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:84dbe53e02e4f8a2e45d2ac3e430d5c83182142658e25edd76539b7648928727"}, - {file = "sentencepiece-0.1.99-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0b0f55d0a0ee1719b4b04221fe0c9f0c3461dc3dabd77a035fa2f4788eb3ef9a"}, - {file = "sentencepiece-0.1.99-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18e800f206cd235dc27dc749299e05853a4e4332e8d3dfd81bf13d0e5b9007d9"}, - {file = "sentencepiece-0.1.99-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ae1c40cda8f9d5b0423cfa98542735c0235e7597d79caf318855cdf971b2280"}, - {file = "sentencepiece-0.1.99-cp39-cp39-win32.whl", hash = "sha256:c84ce33af12ca222d14a1cdd37bd76a69401e32bc68fe61c67ef6b59402f4ab8"}, - {file = "sentencepiece-0.1.99-cp39-cp39-win_amd64.whl", hash = "sha256:350e5c74d739973f1c9643edb80f7cc904dc948578bcb1d43c6f2b173e5d18dd"}, - {file = "sentencepiece-0.1.99.tar.gz", hash = "sha256:189c48f5cb2949288f97ccdb97f0473098d9c3dcf5a3d99d4eabe719ec27297f"}, -] - -[[package]] -name = "setuptools" -version = "75.1.0" -description = "Easily download, build, install, upgrade, and uninstall Python packages" +name = "shellingham" +version = "1.5.4" +description = "Tool to Detect Surrounding Shell" optional = false -python-versions = ">=3.8" +python-versions = ">=3.7" files = [ - {file = "setuptools-75.1.0-py3-none-any.whl", hash = "sha256:35ab7fd3bcd95e6b7fd704e4a1539513edad446c097797f2985e0e4b960772f2"}, - {file = "setuptools-75.1.0.tar.gz", hash = "sha256:d59a21b17a275fb872a9c3dae73963160ae079f1049ed956880cd7c09b120538"}, + {file = "shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686"}, + {file = "shellingham-1.5.4.tar.gz", hash = "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de"}, ] -[package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)", "ruff (>=0.5.2)"] -core = ["importlib-metadata (>=6)", "importlib-resources (>=5.10.2)", "jaraco.collections", "jaraco.functools", "jaraco.text (>=3.7)", "more-itertools", "more-itertools (>=8.8)", "packaging", "packaging (>=24)", "platformdirs (>=2.6.2)", "tomli (>=2.0.1)", "wheel (>=0.43.0)"] -cover = ["pytest-cov"] -doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] -enabler = ["pytest-enabler (>=2.2)"] -test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "jaraco.test", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] -type = ["importlib-metadata (>=7.0.2)", "jaraco.develop (>=7.21)", "mypy (==1.11.*)", "pytest-mypy"] - [[package]] name = "six" version = "1.16.0" @@ -2807,13 +1655,13 @@ files = [ [[package]] name = "starlette" -version = "0.38.5" +version = "0.41.2" description = "The little ASGI library that shines." optional = false python-versions = ">=3.8" files = [ - {file = "starlette-0.38.5-py3-none-any.whl", hash = "sha256:632f420a9d13e3ee2a6f18f437b0a9f1faecb0bc42e1942aa2ea0e379a4c4206"}, - {file = "starlette-0.38.5.tar.gz", hash = "sha256:04a92830a9b6eb1442c766199d62260c3d4dc9c4f9188360626b1e0273cb7077"}, + {file = "starlette-0.41.2-py3-none-any.whl", hash = "sha256:fbc189474b4731cf30fcef52f18a8d070e3f3b46c6a04c97579e85e6ffca942d"}, + {file = "starlette-0.41.2.tar.gz", hash = "sha256:9834fd799d1a87fd346deb76158668cfa0b0d56f85caefe8268e2d97c3468b62"}, ] [package.dependencies] @@ -2822,152 +1670,37 @@ anyio = ">=3.4.0,<5" [package.extras] full = ["httpx (>=0.22.0)", "itsdangerous", "jinja2", "python-multipart (>=0.0.7)", "pyyaml"] -[[package]] -name = "sympy" -version = "1.13.2" -description = "Computer algebra system (CAS) in Python" -optional = false -python-versions = ">=3.8" -files = [ - {file = "sympy-1.13.2-py3-none-any.whl", hash = "sha256:c51d75517712f1aed280d4ce58506a4a88d635d6b5dd48b39102a7ae1f3fcfe9"}, - {file = "sympy-1.13.2.tar.gz", hash = "sha256:401449d84d07be9d0c7a46a64bd54fe097667d5e7181bfe67ec777be9e01cb13"}, -] - -[package.dependencies] -mpmath = ">=1.1.0,<1.4" - -[package.extras] -dev = ["hypothesis (>=6.70.0)", "pytest (>=7.1.0)"] - -[[package]] -name = "tokenizers" -version = "0.13.3" -description = "Fast and Customizable Tokenizers" -optional = false -python-versions = "*" -files = [ - {file = "tokenizers-0.13.3-cp310-cp310-macosx_10_11_x86_64.whl", hash = "sha256:f3835c5be51de8c0a092058a4d4380cb9244fb34681fd0a295fbf0a52a5fdf33"}, - {file = "tokenizers-0.13.3-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:4ef4c3e821730f2692489e926b184321e887f34fb8a6b80b8096b966ba663d07"}, - {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5fd1a6a25353e9aa762e2aae5a1e63883cad9f4e997c447ec39d071020459bc"}, - {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ee0b1b311d65beab83d7a41c56a1e46ab732a9eed4460648e8eb0bd69fc2d059"}, - {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ef4215284df1277dadbcc5e17d4882bda19f770d02348e73523f7e7d8b8d396"}, - {file = "tokenizers-0.13.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4d53976079cff8a033f778fb9adca2d9d69d009c02fa2d71a878b5f3963ed30"}, - {file = "tokenizers-0.13.3-cp310-cp310-win32.whl", hash = "sha256:1f0e3b4c2ea2cd13238ce43548959c118069db7579e5d40ec270ad77da5833ce"}, - {file = "tokenizers-0.13.3-cp310-cp310-win_amd64.whl", hash = "sha256:89649c00d0d7211e8186f7a75dfa1db6996f65edce4b84821817eadcc2d3c79e"}, - {file = "tokenizers-0.13.3-cp311-cp311-macosx_10_11_universal2.whl", hash = "sha256:56b726e0d2bbc9243872b0144515ba684af5b8d8cd112fb83ee1365e26ec74c8"}, - {file = "tokenizers-0.13.3-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:cc5c022ce692e1f499d745af293ab9ee6f5d92538ed2faf73f9708c89ee59ce6"}, - {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f55c981ac44ba87c93e847c333e58c12abcbb377a0c2f2ef96e1a266e4184ff2"}, - {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f247eae99800ef821a91f47c5280e9e9afaeed9980fc444208d5aa6ba69ff148"}, - {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4b3e3215d048e94f40f1c95802e45dcc37c5b05eb46280fc2ccc8cd351bff839"}, - {file = "tokenizers-0.13.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ba2b0bf01777c9b9bc94b53764d6684554ce98551fec496f71bc5be3a03e98b"}, - {file = "tokenizers-0.13.3-cp311-cp311-win32.whl", hash = "sha256:cc78d77f597d1c458bf0ea7c2a64b6aa06941c7a99cb135b5969b0278824d808"}, - {file = "tokenizers-0.13.3-cp311-cp311-win_amd64.whl", hash = "sha256:ecf182bf59bd541a8876deccf0360f5ae60496fd50b58510048020751cf1724c"}, - {file = "tokenizers-0.13.3-cp37-cp37m-macosx_10_11_x86_64.whl", hash = "sha256:0527dc5436a1f6bf2c0327da3145687d3bcfbeab91fed8458920093de3901b44"}, - {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07cbb2c307627dc99b44b22ef05ff4473aa7c7cc1fec8f0a8b37d8a64b1a16d2"}, - {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4560dbdeaae5b7ee0d4e493027e3de6d53c991b5002d7ff95083c99e11dd5ac0"}, - {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:64064bd0322405c9374305ab9b4c07152a1474370327499911937fd4a76d004b"}, - {file = "tokenizers-0.13.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8c6e2ab0f2e3d939ca66aa1d596602105fe33b505cd2854a4c1717f704c51de"}, - {file = "tokenizers-0.13.3-cp37-cp37m-win32.whl", hash = "sha256:6cc29d410768f960db8677221e497226e545eaaea01aa3613fa0fdf2cc96cff4"}, - {file = "tokenizers-0.13.3-cp37-cp37m-win_amd64.whl", hash = "sha256:fc2a7fdf864554a0dacf09d32e17c0caa9afe72baf9dd7ddedc61973bae352d8"}, - {file = "tokenizers-0.13.3-cp38-cp38-macosx_10_11_x86_64.whl", hash = "sha256:8791dedba834c1fc55e5f1521be325ea3dafb381964be20684b92fdac95d79b7"}, - {file = "tokenizers-0.13.3-cp38-cp38-macosx_12_0_arm64.whl", hash = "sha256:d607a6a13718aeb20507bdf2b96162ead5145bbbfa26788d6b833f98b31b26e1"}, - {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3791338f809cd1bf8e4fee6b540b36822434d0c6c6bc47162448deee3f77d425"}, - {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c2f35f30e39e6aab8716f07790f646bdc6e4a853816cc49a95ef2a9016bf9ce6"}, - {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:310204dfed5aa797128b65d63538a9837cbdd15da2a29a77d67eefa489edda26"}, - {file = "tokenizers-0.13.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0f9b92ea052305166559f38498b3b0cae159caea712646648aaa272f7160963"}, - {file = "tokenizers-0.13.3-cp38-cp38-win32.whl", hash = "sha256:9a3fa134896c3c1f0da6e762d15141fbff30d094067c8f1157b9fdca593b5806"}, - {file = "tokenizers-0.13.3-cp38-cp38-win_amd64.whl", hash = "sha256:8e7b0cdeace87fa9e760e6a605e0ae8fc14b7d72e9fc19c578116f7287bb873d"}, - {file = "tokenizers-0.13.3-cp39-cp39-macosx_10_11_x86_64.whl", hash = "sha256:00cee1e0859d55507e693a48fa4aef07060c4bb6bd93d80120e18fea9371c66d"}, - {file = "tokenizers-0.13.3-cp39-cp39-macosx_12_0_arm64.whl", hash = "sha256:a23ff602d0797cea1d0506ce69b27523b07e70f6dda982ab8cf82402de839088"}, - {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:70ce07445050b537d2696022dafb115307abdffd2a5c106f029490f84501ef97"}, - {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:280ffe95f50eaaf655b3a1dc7ff1d9cf4777029dbbc3e63a74e65a056594abc3"}, - {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97acfcec592f7e9de8cadcdcda50a7134423ac8455c0166b28c9ff04d227b371"}, - {file = "tokenizers-0.13.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd7730c98a3010cd4f523465867ff95cd9d6430db46676ce79358f65ae39797b"}, - {file = "tokenizers-0.13.3-cp39-cp39-win32.whl", hash = "sha256:48625a108029cb1ddf42e17a81b5a3230ba6888a70c9dc14e81bc319e812652d"}, - {file = "tokenizers-0.13.3-cp39-cp39-win_amd64.whl", hash = "sha256:bc0a6f1ba036e482db6453571c9e3e60ecd5489980ffd95d11dc9f960483d783"}, - {file = "tokenizers-0.13.3.tar.gz", hash = "sha256:2e546dbb68b623008a5442353137fbb0123d311a6d7ba52f2667c8862a75af2e"}, -] - -[package.extras] -dev = ["black (==22.3)", "datasets", "numpy", "pytest", "requests"] -docs = ["setuptools-rust", "sphinx", "sphinx-rtd-theme"] -testing = ["black (==22.3)", "datasets", "numpy", "pytest", "requests"] - [[package]] name = "tomli" -version = "2.0.1" +version = "2.1.0" description = "A lil' TOML parser" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, - {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, + {file = "tomli-2.1.0-py3-none-any.whl", hash = "sha256:a5c57c3d1c56f5ccdf89f6523458f60ef716e210fc47c4cfb188c5ba473e0391"}, + {file = "tomli-2.1.0.tar.gz", hash = "sha256:3f646cae2aec94e17d04973e4249548320197cfabdf130015d023de4b74d8ab8"}, ] [[package]] -name = "torch" -version = "2.0.0" -description = "Tensors and Dynamic neural networks in Python with strong GPU acceleration" +name = "tomlkit" +version = "0.12.0" +description = "Style preserving TOML library" optional = false -python-versions = ">=3.8.0" +python-versions = ">=3.7" files = [ - {file = "torch-2.0.0-1-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:c9090bda7d2eeeecd74f51b721420dbeb44f838d4536cc1b284e879417e3064a"}, - {file = "torch-2.0.0-1-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:bd42db2a48a20574d2c33489e120e9f32789c4dc13c514b0c44272972d14a2d7"}, - {file = "torch-2.0.0-1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:8969aa8375bcbc0c2993e7ede0a7f889df9515f18b9b548433f412affed478d9"}, - {file = "torch-2.0.0-1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:ab2da16567cb55b67ae39e32d520d68ec736191d88ac79526ca5874754c32203"}, - {file = "torch-2.0.0-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:7a9319a67294ef02459a19738bbfa8727bb5307b822dadd708bc2ccf6c901aca"}, - {file = "torch-2.0.0-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:9f01fe1f6263f31bd04e1757946fd63ad531ae37f28bb2dbf66f5c826ee089f4"}, - {file = "torch-2.0.0-cp310-cp310-win_amd64.whl", hash = "sha256:527f4ae68df7b8301ee6b1158ca56350282ea633686537b30dbb5d7b4a52622a"}, - {file = "torch-2.0.0-cp310-none-macosx_10_9_x86_64.whl", hash = "sha256:ce9b5a49bd513dff7950a5a07d6e26594dd51989cee05ba388b03e8e366fd5d5"}, - {file = "torch-2.0.0-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:53e1c33c6896583cdb9a583693e22e99266444c4a43392dddc562640d39e542b"}, - {file = "torch-2.0.0-cp311-cp311-manylinux1_x86_64.whl", hash = "sha256:09651bff72e439d004c991f15add0c397c66f98ab36fe60d5514b44e4da722e8"}, - {file = "torch-2.0.0-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:d439aec349c98f12819e8564b8c54008e4613dd4428582af0e6e14c24ca85870"}, - {file = "torch-2.0.0-cp311-cp311-win_amd64.whl", hash = "sha256:2802f84f021907deee7e9470ed10c0e78af7457ac9a08a6cd7d55adef835fede"}, - {file = "torch-2.0.0-cp311-none-macosx_10_9_x86_64.whl", hash = "sha256:01858620f25f25e7a9ec4b547ff38e5e27c92d38ec4ccba9cfbfb31d7071ed9c"}, - {file = "torch-2.0.0-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:9a2e53b5783ef5896a6af338b36d782f28e83c8ddfc2ac44b67b066d9d76f498"}, - {file = "torch-2.0.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:ec5fff2447663e369682838ff0f82187b4d846057ef4d119a8dea7772a0b17dd"}, - {file = "torch-2.0.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:11b0384fe3c18c01b8fc5992e70fc519cde65e44c51cc87be1838c1803daf42f"}, - {file = "torch-2.0.0-cp38-cp38-win_amd64.whl", hash = "sha256:e54846aa63855298cfb1195487f032e413e7ac9cbfa978fda32354cc39551475"}, - {file = "torch-2.0.0-cp38-none-macosx_10_9_x86_64.whl", hash = "sha256:cc788cbbbbc6eb4c90e52c550efd067586c2693092cf367c135b34893a64ae78"}, - {file = "torch-2.0.0-cp38-none-macosx_11_0_arm64.whl", hash = "sha256:d292640f0fd72b7a31b2a6e3b635eb5065fcbedd4478f9cad1a1e7a9ec861d35"}, - {file = "torch-2.0.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:6befaad784004b7af357e3d87fa0863c1f642866291f12a4c2af2de435e8ac5c"}, - {file = "torch-2.0.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:a83b26bd6ae36fbf5fee3d56973d9816e2002e8a3b7d9205531167c28aaa38a7"}, - {file = "torch-2.0.0-cp39-cp39-win_amd64.whl", hash = "sha256:c7e67195e1c3e33da53954b026e89a8e1ff3bc1aeb9eb32b677172d4a9b5dcbf"}, - {file = "torch-2.0.0-cp39-none-macosx_10_9_x86_64.whl", hash = "sha256:6e0b97beb037a165669c312591f242382e9109a240e20054d5a5782d9236cad0"}, - {file = "torch-2.0.0-cp39-none-macosx_11_0_arm64.whl", hash = "sha256:297a4919aff1c0f98a58ebe969200f71350a1d4d4f986dbfd60c02ffce780e99"}, + {file = "tomlkit-0.12.0-py3-none-any.whl", hash = "sha256:926f1f37a1587c7a4f6c7484dae538f1345d96d793d9adab5d3675957b1d0766"}, + {file = "tomlkit-0.12.0.tar.gz", hash = "sha256:01f0477981119c7d8ee0f67ebe0297a7c95b14cf9f4b102b45486deb77018716"}, ] -[package.dependencies] -filelock = "*" -jinja2 = "*" -networkx = "*" -nvidia-cublas-cu11 = {version = "11.10.3.66", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cuda-cupti-cu11 = {version = "11.7.101", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cuda-nvrtc-cu11 = {version = "11.7.99", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cuda-runtime-cu11 = {version = "11.7.99", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cudnn-cu11 = {version = "8.5.0.96", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cufft-cu11 = {version = "10.9.0.58", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-curand-cu11 = {version = "10.2.10.91", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cusolver-cu11 = {version = "11.4.0.1", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-cusparse-cu11 = {version = "11.7.4.91", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-nccl-cu11 = {version = "2.14.3", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -nvidia-nvtx-cu11 = {version = "11.7.91", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -sympy = "*" -triton = {version = "2.0.0", markers = "platform_system == \"Linux\" and platform_machine == \"x86_64\""} -typing-extensions = "*" - -[package.extras] -opt-einsum = ["opt-einsum (>=3.3)"] - [[package]] name = "tqdm" -version = "4.66.5" +version = "4.67.0" description = "Fast, Extensible Progress Meter" optional = false python-versions = ">=3.7" files = [ - {file = "tqdm-4.66.5-py3-none-any.whl", hash = "sha256:90279a3770753eafc9194a0364852159802111925aa30eb3f9d85b0e805ac7cd"}, - {file = "tqdm-4.66.5.tar.gz", hash = "sha256:e1020aef2e5096702d8a025ac7d16b1577279c9d63f8375b63083e9a5f0fcbad"}, + {file = "tqdm-4.67.0-py3-none-any.whl", hash = "sha256:0cd8af9d56911acab92182e88d763100d4788bdf421d251616040cc4d44863be"}, + {file = "tqdm-4.67.0.tar.gz", hash = "sha256:fe5a6f95e6fe0b9755e9469b77b9c3cf850048224ecaa8293d7d2d31f97d869a"}, ] [package.dependencies] @@ -2975,115 +1708,27 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} [package.extras] dev = ["pytest (>=6)", "pytest-cov", "pytest-timeout", "pytest-xdist"] +discord = ["requests"] notebook = ["ipywidgets (>=6)"] slack = ["slack-sdk"] telegram = ["requests"] [[package]] -name = "transformers" -version = "4.33.1" -description = "State-of-the-art Machine Learning for JAX, PyTorch and TensorFlow" -optional = false -python-versions = ">=3.8.0" -files = [ - {file = "transformers-4.33.1-py3-none-any.whl", hash = "sha256:0630c2d26448d7c6cb78435e6c43910c89e99387badea6be1f565ffa3f093f1d"}, - {file = "transformers-4.33.1.tar.gz", hash = "sha256:744265e9f0724d22c229938f28376af54abce730ef647f35bd1685abf49912a4"}, -] - -[package.dependencies] -filelock = "*" -huggingface-hub = ">=0.15.1,<1.0" -numpy = ">=1.17" -packaging = ">=20.0" -pyyaml = ">=5.1" -regex = "!=2019.12.17" -requests = "*" -safetensors = ">=0.3.1" -tokenizers = ">=0.11.1,<0.11.3 || >0.11.3,<0.14" -tqdm = ">=4.27" - -[package.extras] -accelerate = ["accelerate (>=0.20.3)"] -agents = ["Pillow (<10.0.0)", "accelerate (>=0.20.3)", "datasets (!=2.5.0)", "diffusers", "opencv-python", "sentencepiece (>=0.1.91,!=0.1.92)", "torch (>=1.10,!=1.12.0)"] -all = ["Pillow (<10.0.0)", "accelerate (>=0.20.3)", "av (==9.2.0)", "codecarbon (==1.2.0)", "decord (==0.6.0)", "flax (>=0.4.1,<=0.7.0)", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "onnxconverter-common", "optax (>=0.0.8,<=0.1.4)", "optuna", "phonemizer", "protobuf", "pyctcdecode (>=0.4.0)", "ray[tune]", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "tensorflow (>=2.6,<2.15)", "tensorflow-text (<2.15)", "tf2onnx", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.10,!=1.12.0)", "torchaudio", "torchvision"] -audio = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)"] -codecarbon = ["codecarbon (==1.2.0)"] -deepspeed = ["accelerate (>=0.20.3)", "deepspeed (>=0.9.3)"] -deepspeed-testing = ["GitPython (<3.1.19)", "accelerate (>=0.20.3)", "beautifulsoup4", "black (>=23.1,<24.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "deepspeed (>=0.9.3)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "hf-doc-builder (>=0.3.0)", "nltk", "optuna", "parameterized", "protobuf", "psutil", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "sentencepiece (>=0.1.91,!=0.1.92)", "timeout-decorator"] -dev = ["GitPython (<3.1.19)", "Pillow (<10.0.0)", "accelerate (>=0.20.3)", "av (==9.2.0)", "beautifulsoup4", "black (>=23.1,<24.0)", "codecarbon (==1.2.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "decord (==0.6.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "flax (>=0.4.1,<=0.7.0)", "fugashi (>=1.0)", "hf-doc-builder", "hf-doc-builder (>=0.3.0)", "ipadic (>=1.0.0,<2.0)", "isort (>=5.5.4)", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "nltk", "onnxconverter-common", "optax (>=0.0.8,<=0.1.4)", "optuna", "parameterized", "phonemizer", "protobuf", "psutil", "pyctcdecode (>=0.4.0)", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "ray[tune]", "rhoknp (>=1.1.0,<1.3.1)", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "ruff (>=0.0.241,<=0.0.259)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "scikit-learn", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "sudachidict-core (>=20220729)", "sudachipy (>=0.6.6)", "tensorflow (>=2.6,<2.15)", "tensorflow-text (<2.15)", "tf2onnx", "timeout-decorator", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.10,!=1.12.0)", "torchaudio", "torchvision", "unidic (>=1.0.2)", "unidic-lite (>=1.0.7)", "urllib3 (<2.0.0)"] -dev-tensorflow = ["GitPython (<3.1.19)", "Pillow (<10.0.0)", "beautifulsoup4", "black (>=23.1,<24.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "hf-doc-builder", "hf-doc-builder (>=0.3.0)", "isort (>=5.5.4)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "nltk", "onnxconverter-common", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)", "parameterized", "phonemizer", "protobuf", "psutil", "pyctcdecode (>=0.4.0)", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "ruff (>=0.0.241,<=0.0.259)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "scikit-learn", "sentencepiece (>=0.1.91,!=0.1.92)", "tensorflow (>=2.6,<2.15)", "tensorflow-text (<2.15)", "tf2onnx", "timeout-decorator", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "urllib3 (<2.0.0)"] -dev-torch = ["GitPython (<3.1.19)", "Pillow (<10.0.0)", "accelerate (>=0.20.3)", "beautifulsoup4", "black (>=23.1,<24.0)", "codecarbon (==1.2.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "fugashi (>=1.0)", "hf-doc-builder", "hf-doc-builder (>=0.3.0)", "ipadic (>=1.0.0,<2.0)", "isort (>=5.5.4)", "kenlm", "librosa", "nltk", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)", "optuna", "parameterized", "phonemizer", "protobuf", "psutil", "pyctcdecode (>=0.4.0)", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "ray[tune]", "rhoknp (>=1.1.0,<1.3.1)", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "ruff (>=0.0.241,<=0.0.259)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "scikit-learn", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "sudachidict-core (>=20220729)", "sudachipy (>=0.6.6)", "timeout-decorator", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.10,!=1.12.0)", "torchaudio", "torchvision", "unidic (>=1.0.2)", "unidic-lite (>=1.0.7)", "urllib3 (<2.0.0)"] -docs = ["Pillow (<10.0.0)", "accelerate (>=0.20.3)", "av (==9.2.0)", "codecarbon (==1.2.0)", "decord (==0.6.0)", "flax (>=0.4.1,<=0.7.0)", "hf-doc-builder", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "kenlm", "keras-nlp (>=0.3.1)", "librosa", "onnxconverter-common", "optax (>=0.0.8,<=0.1.4)", "optuna", "phonemizer", "protobuf", "pyctcdecode (>=0.4.0)", "ray[tune]", "sentencepiece (>=0.1.91,!=0.1.92)", "sigopt", "tensorflow (>=2.6,<2.15)", "tensorflow-text (<2.15)", "tf2onnx", "timm", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.10,!=1.12.0)", "torchaudio", "torchvision"] -docs-specific = ["hf-doc-builder"] -fairscale = ["fairscale (>0.3)"] -flax = ["flax (>=0.4.1,<=0.7.0)", "jax (>=0.4.1,<=0.4.13)", "jaxlib (>=0.4.1,<=0.4.13)", "optax (>=0.0.8,<=0.1.4)"] -flax-speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)"] -ftfy = ["ftfy"] -integrations = ["optuna", "ray[tune]", "sigopt"] -ja = ["fugashi (>=1.0)", "ipadic (>=1.0.0,<2.0)", "rhoknp (>=1.1.0,<1.3.1)", "sudachidict-core (>=20220729)", "sudachipy (>=0.6.6)", "unidic (>=1.0.2)", "unidic-lite (>=1.0.7)"] -modelcreation = ["cookiecutter (==1.7.3)"] -natten = ["natten (>=0.14.6)"] -onnx = ["onnxconverter-common", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)", "tf2onnx"] -onnxruntime = ["onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)"] -optuna = ["optuna"] -quality = ["GitPython (<3.1.19)", "black (>=23.1,<24.0)", "datasets (!=2.5.0)", "hf-doc-builder (>=0.3.0)", "isort (>=5.5.4)", "ruff (>=0.0.241,<=0.0.259)", "urllib3 (<2.0.0)"] -ray = ["ray[tune]"] -retrieval = ["datasets (!=2.5.0)", "faiss-cpu"] -sagemaker = ["sagemaker (>=2.31.0)"] -sentencepiece = ["protobuf", "sentencepiece (>=0.1.91,!=0.1.92)"] -serving = ["fastapi", "pydantic (<2)", "starlette", "uvicorn"] -sigopt = ["sigopt"] -sklearn = ["scikit-learn"] -speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)", "torchaudio"] -testing = ["GitPython (<3.1.19)", "beautifulsoup4", "black (>=23.1,<24.0)", "cookiecutter (==1.7.3)", "datasets (!=2.5.0)", "dill (<0.3.5)", "evaluate (>=0.2.0)", "faiss-cpu", "hf-doc-builder (>=0.3.0)", "nltk", "parameterized", "protobuf", "psutil", "pytest (>=7.2.0)", "pytest-timeout", "pytest-xdist", "rjieba", "rouge-score (!=0.0.7,!=0.0.8,!=0.1,!=0.1.1)", "sacrebleu (>=1.4.12,<2.0.0)", "sacremoses", "timeout-decorator"] -tf = ["keras-nlp (>=0.3.1)", "onnxconverter-common", "tensorflow (>=2.6,<2.15)", "tensorflow-text (<2.15)", "tf2onnx"] -tf-cpu = ["keras-nlp (>=0.3.1)", "onnxconverter-common", "tensorflow-cpu (>=2.6,<2.15)", "tensorflow-text (<2.15)", "tf2onnx"] -tf-speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)"] -timm = ["timm"] -tokenizers = ["tokenizers (>=0.11.1,!=0.11.3,<0.14)"] -torch = ["accelerate (>=0.20.3)", "torch (>=1.10,!=1.12.0)"] -torch-speech = ["kenlm", "librosa", "phonemizer", "pyctcdecode (>=0.4.0)", "torchaudio"] -torch-vision = ["Pillow (<10.0.0)", "torchvision"] -torchhub = ["filelock", "huggingface-hub (>=0.15.1,<1.0)", "importlib-metadata", "numpy (>=1.17)", "packaging (>=20.0)", "protobuf", "regex (!=2019.12.17)", "requests", "sentencepiece (>=0.1.91,!=0.1.92)", "tokenizers (>=0.11.1,!=0.11.3,<0.14)", "torch (>=1.10,!=1.12.0)", "tqdm (>=4.27)"] -video = ["av (==9.2.0)", "decord (==0.6.0)"] -vision = ["Pillow (<10.0.0)"] - -[[package]] -name = "triton" -version = "2.0.0" -description = "A language and compiler for custom Deep Learning operations" +name = "typer" +version = "0.13.0" +description = "Typer, build great CLIs. Easy to code. Based on Python type hints." optional = false -python-versions = "*" +python-versions = ">=3.7" files = [ - {file = "triton-2.0.0-1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:38806ee9663f4b0f7cd64790e96c579374089e58f49aac4a6608121aa55e2505"}, - {file = "triton-2.0.0-1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:226941c7b8595219ddef59a1fdb821e8c744289a132415ddd584facedeb475b1"}, - {file = "triton-2.0.0-1-cp36-cp36m-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4c9fc8c89874bc48eb7e7b2107a9b8d2c0bf139778637be5bfccb09191685cfd"}, - {file = "triton-2.0.0-1-cp37-cp37m-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d2684b6a60b9f174f447f36f933e9a45f31db96cb723723ecd2dcfd1c57b778b"}, - {file = "triton-2.0.0-1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9d4978298b74fcf59a75fe71e535c092b023088933b2f1df933ec32615e4beef"}, - {file = "triton-2.0.0-1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:74f118c12b437fb2ca25e1a04759173b517582fcf4c7be11913316c764213656"}, - {file = "triton-2.0.0-1-pp37-pypy37_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9618815a8da1d9157514f08f855d9e9ff92e329cd81c0305003eb9ec25cc5add"}, - {file = "triton-2.0.0-1-pp38-pypy38_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1aca3303629cd3136375b82cb9921727f804e47ebee27b2677fef23005c3851a"}, - {file = "triton-2.0.0-1-pp39-pypy39_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e3e13aa8b527c9b642e3a9defcc0fbd8ffbe1c80d8ac8c15a01692478dc64d8a"}, - {file = "triton-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f05a7e64e4ca0565535e3d5d3405d7e49f9d308505bb7773d21fb26a4c008c2"}, - {file = "triton-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb4b99ca3c6844066e516658541d876c28a5f6e3a852286bbc97ad57134827fd"}, - {file = "triton-2.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47b4d70dc92fb40af553b4460492c31dc7d3a114a979ffb7a5cdedb7eb546c08"}, - {file = "triton-2.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fedce6a381901b1547e0e7e1f2546e4f65dca6d91e2d8a7305a2d1f5551895be"}, - {file = "triton-2.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75834f27926eab6c7f00ce73aaf1ab5bfb9bec6eb57ab7c0bfc0a23fac803b4c"}, - {file = "triton-2.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0117722f8c2b579cd429e0bee80f7731ae05f63fe8e9414acd9a679885fcbf42"}, - {file = "triton-2.0.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bcd9be5d0c2e45d2b7e6ddc6da20112b6862d69741576f9c3dbaf941d745ecae"}, - {file = "triton-2.0.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:42a0d2c3fc2eab4ba71384f2e785fbfd47aa41ae05fa58bf12cb31dcbd0aeceb"}, - {file = "triton-2.0.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52c47b72c72693198163ece9d90a721299e4fb3b8e24fd13141e384ad952724f"}, + {file = "typer-0.13.0-py3-none-any.whl", hash = "sha256:d85fe0b777b2517cc99c8055ed735452f2659cd45e451507c76f48ce5c1d00e2"}, + {file = "typer-0.13.0.tar.gz", hash = "sha256:f1c7198347939361eec90139ffa0fd8b3df3a2259d5852a0f7400e476d95985c"}, ] [package.dependencies] -cmake = "*" -filelock = "*" -lit = "*" -torch = "*" - -[package.extras] -tests = ["autopep8", "flake8", "isort", "numpy", "pytest", "scipy (>=1.7.1)"] -tutorials = ["matplotlib", "pandas", "tabulate"] +click = ">=8.0.0" +rich = ">=10.11.0" +shellingham = ">=1.3.0" +typing-extensions = ">=3.7.4.3" [[package]] name = "typing-extensions" @@ -3098,13 +1743,13 @@ files = [ [[package]] name = "tzdata" -version = "2024.1" +version = "2024.2" 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"}, + {file = "tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd"}, + {file = "tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc"}, ] [[package]] @@ -3126,13 +1771,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "uvicorn" -version = "0.30.6" +version = "0.32.0" description = "The lightning-fast ASGI server." optional = false python-versions = ">=3.8" files = [ - {file = "uvicorn-0.30.6-py3-none-any.whl", hash = "sha256:65fd46fe3fda5bdc1b03b94eb634923ff18cd35b2f084813ea79d1f103f711b5"}, - {file = "uvicorn-0.30.6.tar.gz", hash = "sha256:4b15decdda1e72be08209e860a1e10e92439ad5b97cf44cc945fcbee66fc5788"}, + {file = "uvicorn-0.32.0-py3-none-any.whl", hash = "sha256:60b8f3a5ac027dcd31448f411ced12b5ef452c646f76f02f8cc3f25d8d26fd82"}, + {file = "uvicorn-0.32.0.tar.gz", hash = "sha256:f78b36b143c16f54ccdb8190d0a26b5f1901fe5a3c777e1ab29f26391af8551e"}, ] [package.dependencies] @@ -3144,204 +1789,103 @@ typing-extensions = {version = ">=4.0", markers = "python_version < \"3.11\""} standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"] [[package]] -name = "websockets" -version = "11.0.3" -description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" -optional = false -python-versions = ">=3.7" -files = [ - {file = "websockets-11.0.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3ccc8a0c387629aec40f2fc9fdcb4b9d5431954f934da3eaf16cdc94f67dbfac"}, - {file = "websockets-11.0.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d67ac60a307f760c6e65dad586f556dde58e683fab03323221a4e530ead6f74d"}, - {file = "websockets-11.0.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:84d27a4832cc1a0ee07cdcf2b0629a8a72db73f4cf6de6f0904f6661227f256f"}, - {file = "websockets-11.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ffd7dcaf744f25f82190856bc26ed81721508fc5cbf2a330751e135ff1283564"}, - {file = "websockets-11.0.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7622a89d696fc87af8e8d280d9b421db5133ef5b29d3f7a1ce9f1a7bf7fcfa11"}, - {file = "websockets-11.0.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bceab846bac555aff6427d060f2fcfff71042dba6f5fca7dc4f75cac815e57ca"}, - {file = "websockets-11.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:54c6e5b3d3a8936a4ab6870d46bdd6ec500ad62bde9e44462c32d18f1e9a8e54"}, - {file = "websockets-11.0.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:41f696ba95cd92dc047e46b41b26dd24518384749ed0d99bea0a941ca87404c4"}, - {file = "websockets-11.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:86d2a77fd490ae3ff6fae1c6ceaecad063d3cc2320b44377efdde79880e11526"}, - {file = "websockets-11.0.3-cp310-cp310-win32.whl", hash = "sha256:2d903ad4419f5b472de90cd2d40384573b25da71e33519a67797de17ef849b69"}, - {file = "websockets-11.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:1d2256283fa4b7f4c7d7d3e84dc2ece74d341bce57d5b9bf385df109c2a1a82f"}, - {file = "websockets-11.0.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e848f46a58b9fcf3d06061d17be388caf70ea5b8cc3466251963c8345e13f7eb"}, - {file = "websockets-11.0.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:aa5003845cdd21ac0dc6c9bf661c5beddd01116f6eb9eb3c8e272353d45b3288"}, - {file = "websockets-11.0.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b58cbf0697721120866820b89f93659abc31c1e876bf20d0b3d03cef14faf84d"}, - {file = "websockets-11.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:660e2d9068d2bedc0912af508f30bbeb505bbbf9774d98def45f68278cea20d3"}, - {file = "websockets-11.0.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c1f0524f203e3bd35149f12157438f406eff2e4fb30f71221c8a5eceb3617b6b"}, - {file = "websockets-11.0.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:def07915168ac8f7853812cc593c71185a16216e9e4fa886358a17ed0fd9fcf6"}, - {file = "websockets-11.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b30c6590146e53149f04e85a6e4fcae068df4289e31e4aee1fdf56a0dead8f97"}, - {file = "websockets-11.0.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:619d9f06372b3a42bc29d0cd0354c9bb9fb39c2cbc1a9c5025b4538738dbffaf"}, - {file = "websockets-11.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:01f5567d9cf6f502d655151645d4e8b72b453413d3819d2b6f1185abc23e82dd"}, - {file = "websockets-11.0.3-cp311-cp311-win32.whl", hash = "sha256:e1459677e5d12be8bbc7584c35b992eea142911a6236a3278b9b5ce3326f282c"}, - {file = "websockets-11.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:e7837cb169eca3b3ae94cc5787c4fed99eef74c0ab9506756eea335e0d6f3ed8"}, - {file = "websockets-11.0.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:9f59a3c656fef341a99e3d63189852be7084c0e54b75734cde571182c087b152"}, - {file = "websockets-11.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2529338a6ff0eb0b50c7be33dc3d0e456381157a31eefc561771ee431134a97f"}, - {file = "websockets-11.0.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34fd59a4ac42dff6d4681d8843217137f6bc85ed29722f2f7222bd619d15e95b"}, - {file = "websockets-11.0.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:332d126167ddddec94597c2365537baf9ff62dfcc9db4266f263d455f2f031cb"}, - {file = "websockets-11.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:6505c1b31274723ccaf5f515c1824a4ad2f0d191cec942666b3d0f3aa4cb4007"}, - {file = "websockets-11.0.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f467ba0050b7de85016b43f5a22b46383ef004c4f672148a8abf32bc999a87f0"}, - {file = "websockets-11.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:9d9acd80072abcc98bd2c86c3c9cd4ac2347b5a5a0cae7ed5c0ee5675f86d9af"}, - {file = "websockets-11.0.3-cp37-cp37m-win32.whl", hash = "sha256:e590228200fcfc7e9109509e4d9125eace2042fd52b595dd22bbc34bb282307f"}, - {file = "websockets-11.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:b16fff62b45eccb9c7abb18e60e7e446998093cdcb50fed33134b9b6878836de"}, - {file = "websockets-11.0.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:fb06eea71a00a7af0ae6aefbb932fb8a7df3cb390cc217d51a9ad7343de1b8d0"}, - {file = "websockets-11.0.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:8a34e13a62a59c871064dfd8ffb150867e54291e46d4a7cf11d02c94a5275bae"}, - {file = "websockets-11.0.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4841ed00f1026dfbced6fca7d963c4e7043aa832648671b5138008dc5a8f6d99"}, - {file = "websockets-11.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a073fc9ab1c8aff37c99f11f1641e16da517770e31a37265d2755282a5d28aa"}, - {file = "websockets-11.0.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:68b977f21ce443d6d378dbd5ca38621755f2063d6fdb3335bda981d552cfff86"}, - {file = "websockets-11.0.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e1a99a7a71631f0efe727c10edfba09ea6bee4166a6f9c19aafb6c0b5917d09c"}, - {file = "websockets-11.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:bee9fcb41db2a23bed96c6b6ead6489702c12334ea20a297aa095ce6d31370d0"}, - {file = "websockets-11.0.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:4b253869ea05a5a073ebfdcb5cb3b0266a57c3764cf6fe114e4cd90f4bfa5f5e"}, - {file = "websockets-11.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:1553cb82942b2a74dd9b15a018dce645d4e68674de2ca31ff13ebc2d9f283788"}, - {file = "websockets-11.0.3-cp38-cp38-win32.whl", hash = "sha256:f61bdb1df43dc9c131791fbc2355535f9024b9a04398d3bd0684fc16ab07df74"}, - {file = "websockets-11.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:03aae4edc0b1c68498f41a6772d80ac7c1e33c06c6ffa2ac1c27a07653e79d6f"}, - {file = "websockets-11.0.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:777354ee16f02f643a4c7f2b3eff8027a33c9861edc691a2003531f5da4f6bc8"}, - {file = "websockets-11.0.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8c82f11964f010053e13daafdc7154ce7385ecc538989a354ccc7067fd7028fd"}, - {file = "websockets-11.0.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3580dd9c1ad0701169e4d6fc41e878ffe05e6bdcaf3c412f9d559389d0c9e016"}, - {file = "websockets-11.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f1a3f10f836fab6ca6efa97bb952300b20ae56b409414ca85bff2ad241d2a61"}, - {file = "websockets-11.0.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df41b9bc27c2c25b486bae7cf42fccdc52ff181c8c387bfd026624a491c2671b"}, - {file = "websockets-11.0.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:279e5de4671e79a9ac877427f4ac4ce93751b8823f276b681d04b2156713b9dd"}, - {file = "websockets-11.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:1fdf26fa8a6a592f8f9235285b8affa72748dc12e964a5518c6c5e8f916716f7"}, - {file = "websockets-11.0.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:69269f3a0b472e91125b503d3c0b3566bda26da0a3261c49f0027eb6075086d1"}, - {file = "websockets-11.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:97b52894d948d2f6ea480171a27122d77af14ced35f62e5c892ca2fae9344311"}, - {file = "websockets-11.0.3-cp39-cp39-win32.whl", hash = "sha256:c7f3cb904cce8e1be667c7e6fef4516b98d1a6a0635a58a57528d577ac18a128"}, - {file = "websockets-11.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c792ea4eabc0159535608fc5658a74d1a81020eb35195dd63214dcf07556f67e"}, - {file = "websockets-11.0.3-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:f2e58f2c36cc52d41f2659e4c0cbf7353e28c8c9e63e30d8c6d3494dc9fdedcf"}, - {file = "websockets-11.0.3-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:de36fe9c02995c7e6ae6efe2e205816f5f00c22fd1fbf343d4d18c3d5ceac2f5"}, - {file = "websockets-11.0.3-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0ac56b661e60edd453585f4bd68eb6a29ae25b5184fd5ba51e97652580458998"}, - {file = "websockets-11.0.3-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e052b8467dd07d4943936009f46ae5ce7b908ddcac3fda581656b1b19c083d9b"}, - {file = "websockets-11.0.3-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:42cc5452a54a8e46a032521d7365da775823e21bfba2895fb7b77633cce031bb"}, - {file = "websockets-11.0.3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:e6316827e3e79b7b8e7d8e3b08f4e331af91a48e794d5d8b099928b6f0b85f20"}, - {file = "websockets-11.0.3-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8531fdcad636d82c517b26a448dcfe62f720e1922b33c81ce695d0edb91eb931"}, - {file = "websockets-11.0.3-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c114e8da9b475739dde229fd3bc6b05a6537a88a578358bc8eb29b4030fac9c9"}, - {file = "websockets-11.0.3-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e063b1865974611313a3849d43f2c3f5368093691349cf3c7c8f8f75ad7cb280"}, - {file = "websockets-11.0.3-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:92b2065d642bf8c0a82d59e59053dd2fdde64d4ed44efe4870fa816c1232647b"}, - {file = "websockets-11.0.3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0ee68fe502f9031f19d495dae2c268830df2760c0524cbac5d759921ba8c8e82"}, - {file = "websockets-11.0.3-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dcacf2c7a6c3a84e720d1bb2b543c675bf6c40e460300b628bab1b1efc7c034c"}, - {file = "websockets-11.0.3-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b67c6f5e5a401fc56394f191f00f9b3811fe843ee93f4a70df3c389d1adf857d"}, - {file = "websockets-11.0.3-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1d5023a4b6a5b183dc838808087033ec5df77580485fc533e7dab2567851b0a4"}, - {file = "websockets-11.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:ed058398f55163a79bb9f06a90ef9ccc063b204bb346c4de78efc5d15abfe602"}, - {file = "websockets-11.0.3-py3-none-any.whl", hash = "sha256:6681ba9e7f8f3b19440921e99efbb40fc89f26cd71bf539e45d8c8a25c976dc6"}, - {file = "websockets-11.0.3.tar.gz", hash = "sha256:88fc51d9a26b10fc331be344f1781224a375b78488fc343620184e95a4b27016"}, -] - -[[package]] -name = "wheel" -version = "0.44.0" -description = "A built-package format for Python" +name = "websocket-client" +version = "1.8.0" +description = "WebSocket client for Python with low level API options" optional = false python-versions = ">=3.8" files = [ - {file = "wheel-0.44.0-py3-none-any.whl", hash = "sha256:2376a90c98cc337d18623527a97c31797bd02bad0033d41547043a1cbfbe448f"}, - {file = "wheel-0.44.0.tar.gz", hash = "sha256:a29c3f2817e95ab89aa4660681ad547c0e9547f20e75b0562fe7723c9a2a9d49"}, + {file = "websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526"}, + {file = "websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da"}, ] [package.extras] -test = ["pytest (>=6.0.0)", "setuptools (>=65)"] +docs = ["Sphinx (>=6.0)", "myst-parser (>=2.0.0)", "sphinx-rtd-theme (>=1.1.0)"] +optional = ["python-socks", "wsaccel"] +test = ["websockets"] [[package]] -name = "yarl" -version = "1.11.1" -description = "Yet another URL library" +name = "websockets" +version = "12.0" +description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" optional = false python-versions = ">=3.8" files = [ - {file = "yarl-1.11.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:400cd42185f92de559d29eeb529e71d80dfbd2f45c36844914a4a34297ca6f00"}, - {file = "yarl-1.11.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8258c86f47e080a258993eed877d579c71da7bda26af86ce6c2d2d072c11320d"}, - {file = "yarl-1.11.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2164cd9725092761fed26f299e3f276bb4b537ca58e6ff6b252eae9631b5c96e"}, - {file = "yarl-1.11.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08ea567c16f140af8ddc7cb58e27e9138a1386e3e6e53982abaa6f2377b38cc"}, - {file = "yarl-1.11.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:768ecc550096b028754ea28bf90fde071c379c62c43afa574edc6f33ee5daaec"}, - {file = "yarl-1.11.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2909fa3a7d249ef64eeb2faa04b7957e34fefb6ec9966506312349ed8a7e77bf"}, - {file = "yarl-1.11.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01a8697ec24f17c349c4f655763c4db70eebc56a5f82995e5e26e837c6eb0e49"}, - {file = "yarl-1.11.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e286580b6511aac7c3268a78cdb861ec739d3e5a2a53b4809faef6b49778eaff"}, - {file = "yarl-1.11.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:4179522dc0305c3fc9782549175c8e8849252fefeb077c92a73889ccbcd508ad"}, - {file = "yarl-1.11.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:27fcb271a41b746bd0e2a92182df507e1c204759f460ff784ca614e12dd85145"}, - {file = "yarl-1.11.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:f61db3b7e870914dbd9434b560075e0366771eecbe6d2b5561f5bc7485f39efd"}, - {file = "yarl-1.11.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:c92261eb2ad367629dc437536463dc934030c9e7caca861cc51990fe6c565f26"}, - {file = "yarl-1.11.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:d95b52fbef190ca87d8c42f49e314eace4fc52070f3dfa5f87a6594b0c1c6e46"}, - {file = "yarl-1.11.1-cp310-cp310-win32.whl", hash = "sha256:489fa8bde4f1244ad6c5f6d11bb33e09cf0d1d0367edb197619c3e3fc06f3d91"}, - {file = "yarl-1.11.1-cp310-cp310-win_amd64.whl", hash = "sha256:476e20c433b356e16e9a141449f25161e6b69984fb4cdbd7cd4bd54c17844998"}, - {file = "yarl-1.11.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:946eedc12895873891aaceb39bceb484b4977f70373e0122da483f6c38faaa68"}, - {file = "yarl-1.11.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:21a7c12321436b066c11ec19c7e3cb9aec18884fe0d5b25d03d756a9e654edfe"}, - {file = "yarl-1.11.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c35f493b867912f6fda721a59cc7c4766d382040bdf1ddaeeaa7fa4d072f4675"}, - {file = "yarl-1.11.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25861303e0be76b60fddc1250ec5986c42f0a5c0c50ff57cc30b1be199c00e63"}, - {file = "yarl-1.11.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e4b53f73077e839b3f89c992223f15b1d2ab314bdbdf502afdc7bb18e95eae27"}, - {file = "yarl-1.11.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:327c724b01b8641a1bf1ab3b232fb638706e50f76c0b5bf16051ab65c868fac5"}, - {file = "yarl-1.11.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4307d9a3417eea87715c9736d050c83e8c1904e9b7aada6ce61b46361b733d92"}, - {file = "yarl-1.11.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:48a28bed68ab8fb7e380775f0029a079f08a17799cb3387a65d14ace16c12e2b"}, - {file = "yarl-1.11.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:067b961853c8e62725ff2893226fef3d0da060656a9827f3f520fb1d19b2b68a"}, - {file = "yarl-1.11.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8215f6f21394d1f46e222abeb06316e77ef328d628f593502d8fc2a9117bde83"}, - {file = "yarl-1.11.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:498442e3af2a860a663baa14fbf23fb04b0dd758039c0e7c8f91cb9279799bff"}, - {file = "yarl-1.11.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:69721b8effdb588cb055cc22f7c5105ca6fdaa5aeb3ea09021d517882c4a904c"}, - {file = "yarl-1.11.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:1e969fa4c1e0b1a391f3fcbcb9ec31e84440253325b534519be0d28f4b6b533e"}, - {file = "yarl-1.11.1-cp311-cp311-win32.whl", hash = "sha256:7d51324a04fc4b0e097ff8a153e9276c2593106a811704025bbc1d6916f45ca6"}, - {file = "yarl-1.11.1-cp311-cp311-win_amd64.whl", hash = "sha256:15061ce6584ece023457fb8b7a7a69ec40bf7114d781a8c4f5dcd68e28b5c53b"}, - {file = "yarl-1.11.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:a4264515f9117be204935cd230fb2a052dd3792789cc94c101c535d349b3dab0"}, - {file = "yarl-1.11.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:f41fa79114a1d2eddb5eea7b912d6160508f57440bd302ce96eaa384914cd265"}, - {file = "yarl-1.11.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:02da8759b47d964f9173c8675710720b468aa1c1693be0c9c64abb9d8d9a4867"}, - {file = "yarl-1.11.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9361628f28f48dcf8b2f528420d4d68102f593f9c2e592bfc842f5fb337e44fd"}, - {file = "yarl-1.11.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b91044952da03b6f95fdba398d7993dd983b64d3c31c358a4c89e3c19b6f7aef"}, - {file = "yarl-1.11.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:74db2ef03b442276d25951749a803ddb6e270d02dda1d1c556f6ae595a0d76a8"}, - {file = "yarl-1.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e975a2211952a8a083d1b9d9ba26472981ae338e720b419eb50535de3c02870"}, - {file = "yarl-1.11.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8aef97ba1dd2138112890ef848e17d8526fe80b21f743b4ee65947ea184f07a2"}, - {file = "yarl-1.11.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a7915ea49b0c113641dc4d9338efa9bd66b6a9a485ffe75b9907e8573ca94b84"}, - {file = "yarl-1.11.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:504cf0d4c5e4579a51261d6091267f9fd997ef58558c4ffa7a3e1460bd2336fa"}, - {file = "yarl-1.11.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:3de5292f9f0ee285e6bd168b2a77b2a00d74cbcfa420ed078456d3023d2f6dff"}, - {file = "yarl-1.11.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:a34e1e30f1774fa35d37202bbeae62423e9a79d78d0874e5556a593479fdf239"}, - {file = "yarl-1.11.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:66b63c504d2ca43bf7221a1f72fbe981ff56ecb39004c70a94485d13e37ebf45"}, - {file = "yarl-1.11.1-cp312-cp312-win32.whl", hash = "sha256:a28b70c9e2213de425d9cba5ab2e7f7a1c8ca23a99c4b5159bf77b9c31251447"}, - {file = "yarl-1.11.1-cp312-cp312-win_amd64.whl", hash = "sha256:17b5a386d0d36fb828e2fb3ef08c8829c1ebf977eef88e5367d1c8c94b454639"}, - {file = "yarl-1.11.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1fa2e7a406fbd45b61b4433e3aa254a2c3e14c4b3186f6e952d08a730807fa0c"}, - {file = "yarl-1.11.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:750f656832d7d3cb0c76be137ee79405cc17e792f31e0a01eee390e383b2936e"}, - {file = "yarl-1.11.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0b8486f322d8f6a38539136a22c55f94d269addb24db5cb6f61adc61eabc9d93"}, - {file = "yarl-1.11.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3fce4da3703ee6048ad4138fe74619c50874afe98b1ad87b2698ef95bf92c96d"}, - {file = "yarl-1.11.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8ed653638ef669e0efc6fe2acb792275cb419bf9cb5c5049399f3556995f23c7"}, - {file = "yarl-1.11.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:18ac56c9dd70941ecad42b5a906820824ca72ff84ad6fa18db33c2537ae2e089"}, - {file = "yarl-1.11.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:688654f8507464745ab563b041d1fb7dab5d9912ca6b06e61d1c4708366832f5"}, - {file = "yarl-1.11.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4973eac1e2ff63cf187073cd4e1f1148dcd119314ab79b88e1b3fad74a18c9d5"}, - {file = "yarl-1.11.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:964a428132227edff96d6f3cf261573cb0f1a60c9a764ce28cda9525f18f7786"}, - {file = "yarl-1.11.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:6d23754b9939cbab02c63434776df1170e43b09c6a517585c7ce2b3d449b7318"}, - {file = "yarl-1.11.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c2dc4250fe94d8cd864d66018f8344d4af50e3758e9d725e94fecfa27588ff82"}, - {file = "yarl-1.11.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:09696438cb43ea6f9492ef237761b043f9179f455f405279e609f2bc9100212a"}, - {file = "yarl-1.11.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:999bfee0a5b7385a0af5ffb606393509cfde70ecca4f01c36985be6d33e336da"}, - {file = "yarl-1.11.1-cp313-cp313-win32.whl", hash = "sha256:ce928c9c6409c79e10f39604a7e214b3cb69552952fbda8d836c052832e6a979"}, - {file = "yarl-1.11.1-cp313-cp313-win_amd64.whl", hash = "sha256:501c503eed2bb306638ccb60c174f856cc3246c861829ff40eaa80e2f0330367"}, - {file = "yarl-1.11.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:dae7bd0daeb33aa3e79e72877d3d51052e8b19c9025ecf0374f542ea8ec120e4"}, - {file = "yarl-1.11.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3ff6b1617aa39279fe18a76c8d165469c48b159931d9b48239065767ee455b2b"}, - {file = "yarl-1.11.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:3257978c870728a52dcce8c2902bf01f6c53b65094b457bf87b2644ee6238ddc"}, - {file = "yarl-1.11.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0f351fa31234699d6084ff98283cb1e852270fe9e250a3b3bf7804eb493bd937"}, - {file = "yarl-1.11.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8aef1b64da41d18026632d99a06b3fefe1d08e85dd81d849fa7c96301ed22f1b"}, - {file = "yarl-1.11.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7175a87ab8f7fbde37160a15e58e138ba3b2b0e05492d7351314a250d61b1591"}, - {file = "yarl-1.11.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba444bdd4caa2a94456ef67a2f383710928820dd0117aae6650a4d17029fa25e"}, - {file = "yarl-1.11.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0ea9682124fc062e3d931c6911934a678cb28453f957ddccf51f568c2f2b5e05"}, - {file = "yarl-1.11.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:8418c053aeb236b20b0ab8fa6bacfc2feaaf7d4683dd96528610989c99723d5f"}, - {file = "yarl-1.11.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:61a5f2c14d0a1adfdd82258f756b23a550c13ba4c86c84106be4c111a3a4e413"}, - {file = "yarl-1.11.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:f3a6d90cab0bdf07df8f176eae3a07127daafcf7457b997b2bf46776da2c7eb7"}, - {file = "yarl-1.11.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:077da604852be488c9a05a524068cdae1e972b7dc02438161c32420fb4ec5e14"}, - {file = "yarl-1.11.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:15439f3c5c72686b6c3ff235279630d08936ace67d0fe5c8d5bbc3ef06f5a420"}, - {file = "yarl-1.11.1-cp38-cp38-win32.whl", hash = "sha256:238a21849dd7554cb4d25a14ffbfa0ef380bb7ba201f45b144a14454a72ffa5a"}, - {file = "yarl-1.11.1-cp38-cp38-win_amd64.whl", hash = "sha256:67459cf8cf31da0e2cbdb4b040507e535d25cfbb1604ca76396a3a66b8ba37a6"}, - {file = "yarl-1.11.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:884eab2ce97cbaf89f264372eae58388862c33c4f551c15680dd80f53c89a269"}, - {file = "yarl-1.11.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8a336eaa7ee7e87cdece3cedb395c9657d227bfceb6781295cf56abcd3386a26"}, - {file = "yarl-1.11.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:87f020d010ba80a247c4abc335fc13421037800ca20b42af5ae40e5fd75e7909"}, - {file = "yarl-1.11.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:637c7ddb585a62d4469f843dac221f23eec3cbad31693b23abbc2c366ad41ff4"}, - {file = "yarl-1.11.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:48dfd117ab93f0129084577a07287376cc69c08138694396f305636e229caa1a"}, - {file = "yarl-1.11.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75e0ae31fb5ccab6eda09ba1494e87eb226dcbd2372dae96b87800e1dcc98804"}, - {file = "yarl-1.11.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f46f81501160c28d0c0b7333b4f7be8983dbbc161983b6fb814024d1b4952f79"}, - {file = "yarl-1.11.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:04293941646647b3bfb1719d1d11ff1028e9c30199509a844da3c0f5919dc520"}, - {file = "yarl-1.11.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:250e888fa62d73e721f3041e3a9abf427788a1934b426b45e1b92f62c1f68366"}, - {file = "yarl-1.11.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:e8f63904df26d1a66aabc141bfd258bf738b9bc7bc6bdef22713b4f5ef789a4c"}, - {file = "yarl-1.11.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:aac44097d838dda26526cffb63bdd8737a2dbdf5f2c68efb72ad83aec6673c7e"}, - {file = "yarl-1.11.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:267b24f891e74eccbdff42241c5fb4f974de2d6271dcc7d7e0c9ae1079a560d9"}, - {file = "yarl-1.11.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6907daa4b9d7a688063ed098c472f96e8181733c525e03e866fb5db480a424df"}, - {file = "yarl-1.11.1-cp39-cp39-win32.whl", hash = "sha256:14438dfc5015661f75f85bc5adad0743678eefee266ff0c9a8e32969d5d69f74"}, - {file = "yarl-1.11.1-cp39-cp39-win_amd64.whl", hash = "sha256:94d0caaa912bfcdc702a4204cd5e2bb01eb917fc4f5ea2315aa23962549561b0"}, - {file = "yarl-1.11.1-py3-none-any.whl", hash = "sha256:72bf26f66456baa0584eff63e44545c9f0eaed9b73cb6601b647c91f14c11f38"}, - {file = "yarl-1.11.1.tar.gz", hash = "sha256:1bb2d9e212fb7449b8fb73bc461b51eaa17cc8430b4a87d87be7b25052d92f53"}, + {file = "websockets-12.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d554236b2a2006e0ce16315c16eaa0d628dab009c33b63ea03f41c6107958374"}, + {file = "websockets-12.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:2d225bb6886591b1746b17c0573e29804619c8f755b5598d875bb4235ea639be"}, + {file = "websockets-12.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:eb809e816916a3b210bed3c82fb88eaf16e8afcf9c115ebb2bacede1797d2547"}, + {file = "websockets-12.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c588f6abc13f78a67044c6b1273a99e1cf31038ad51815b3b016ce699f0d75c2"}, + {file = "websockets-12.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5aa9348186d79a5f232115ed3fa9020eab66d6c3437d72f9d2c8ac0c6858c558"}, + {file = "websockets-12.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6350b14a40c95ddd53e775dbdbbbc59b124a5c8ecd6fbb09c2e52029f7a9f480"}, + {file = "websockets-12.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:70ec754cc2a769bcd218ed8d7209055667b30860ffecb8633a834dde27d6307c"}, + {file = "websockets-12.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6e96f5ed1b83a8ddb07909b45bd94833b0710f738115751cdaa9da1fb0cb66e8"}, + {file = "websockets-12.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:4d87be612cbef86f994178d5186add3d94e9f31cc3cb499a0482b866ec477603"}, + {file = "websockets-12.0-cp310-cp310-win32.whl", hash = "sha256:befe90632d66caaf72e8b2ed4d7f02b348913813c8b0a32fae1cc5fe3730902f"}, + {file = "websockets-12.0-cp310-cp310-win_amd64.whl", hash = "sha256:363f57ca8bc8576195d0540c648aa58ac18cf85b76ad5202b9f976918f4219cf"}, + {file = "websockets-12.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:5d873c7de42dea355d73f170be0f23788cf3fa9f7bed718fd2830eefedce01b4"}, + {file = "websockets-12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3f61726cae9f65b872502ff3c1496abc93ffbe31b278455c418492016e2afc8f"}, + {file = "websockets-12.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ed2fcf7a07334c77fc8a230755c2209223a7cc44fc27597729b8ef5425aa61a3"}, + {file = "websockets-12.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e332c210b14b57904869ca9f9bf4ca32f5427a03eeb625da9b616c85a3a506c"}, + {file = "websockets-12.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5693ef74233122f8ebab026817b1b37fe25c411ecfca084b29bc7d6efc548f45"}, + {file = "websockets-12.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e9e7db18b4539a29cc5ad8c8b252738a30e2b13f033c2d6e9d0549b45841c04"}, + {file = "websockets-12.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:6e2df67b8014767d0f785baa98393725739287684b9f8d8a1001eb2839031447"}, + {file = "websockets-12.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bea88d71630c5900690fcb03161ab18f8f244805c59e2e0dc4ffadae0a7ee0ca"}, + {file = "websockets-12.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:dff6cdf35e31d1315790149fee351f9e52978130cef6c87c4b6c9b3baf78bc53"}, + {file = "websockets-12.0-cp311-cp311-win32.whl", hash = "sha256:3e3aa8c468af01d70332a382350ee95f6986db479ce7af14d5e81ec52aa2b402"}, + {file = "websockets-12.0-cp311-cp311-win_amd64.whl", hash = "sha256:25eb766c8ad27da0f79420b2af4b85d29914ba0edf69f547cc4f06ca6f1d403b"}, + {file = "websockets-12.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:0e6e2711d5a8e6e482cacb927a49a3d432345dfe7dea8ace7b5790df5932e4df"}, + {file = "websockets-12.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:dbcf72a37f0b3316e993e13ecf32f10c0e1259c28ffd0a85cee26e8549595fbc"}, + {file = "websockets-12.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:12743ab88ab2af1d17dd4acb4645677cb7063ef4db93abffbf164218a5d54c6b"}, + {file = "websockets-12.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7b645f491f3c48d3f8a00d1fce07445fab7347fec54a3e65f0725d730d5b99cb"}, + {file = "websockets-12.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9893d1aa45a7f8b3bc4510f6ccf8db8c3b62120917af15e3de247f0780294b92"}, + {file = "websockets-12.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f38a7b376117ef7aff996e737583172bdf535932c9ca021746573bce40165ed"}, + {file = "websockets-12.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:f764ba54e33daf20e167915edc443b6f88956f37fb606449b4a5b10ba42235a5"}, + {file = "websockets-12.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:1e4b3f8ea6a9cfa8be8484c9221ec0257508e3a1ec43c36acdefb2a9c3b00aa2"}, + {file = "websockets-12.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:9fdf06fd06c32205a07e47328ab49c40fc1407cdec801d698a7c41167ea45113"}, + {file = "websockets-12.0-cp312-cp312-win32.whl", hash = "sha256:baa386875b70cbd81798fa9f71be689c1bf484f65fd6fb08d051a0ee4e79924d"}, + {file = "websockets-12.0-cp312-cp312-win_amd64.whl", hash = "sha256:ae0a5da8f35a5be197f328d4727dbcfafa53d1824fac3d96cdd3a642fe09394f"}, + {file = "websockets-12.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5f6ffe2c6598f7f7207eef9a1228b6f5c818f9f4d53ee920aacd35cec8110438"}, + {file = "websockets-12.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9edf3fc590cc2ec20dc9d7a45108b5bbaf21c0d89f9fd3fd1685e223771dc0b2"}, + {file = "websockets-12.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8572132c7be52632201a35f5e08348137f658e5ffd21f51f94572ca6c05ea81d"}, + {file = "websockets-12.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:604428d1b87edbf02b233e2c207d7d528460fa978f9e391bd8aaf9c8311de137"}, + {file = "websockets-12.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1a9d160fd080c6285e202327aba140fc9a0d910b09e423afff4ae5cbbf1c7205"}, + {file = "websockets-12.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87b4aafed34653e465eb77b7c93ef058516cb5acf3eb21e42f33928616172def"}, + {file = "websockets-12.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b2ee7288b85959797970114deae81ab41b731f19ebcd3bd499ae9ca0e3f1d2c8"}, + {file = "websockets-12.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:7fa3d25e81bfe6a89718e9791128398a50dec6d57faf23770787ff441d851967"}, + {file = "websockets-12.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:a571f035a47212288e3b3519944f6bf4ac7bc7553243e41eac50dd48552b6df7"}, + {file = "websockets-12.0-cp38-cp38-win32.whl", hash = "sha256:3c6cc1360c10c17463aadd29dd3af332d4a1adaa8796f6b0e9f9df1fdb0bad62"}, + {file = "websockets-12.0-cp38-cp38-win_amd64.whl", hash = "sha256:1bf386089178ea69d720f8db6199a0504a406209a0fc23e603b27b300fdd6892"}, + {file = "websockets-12.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ab3d732ad50a4fbd04a4490ef08acd0517b6ae6b77eb967251f4c263011a990d"}, + {file = "websockets-12.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a1d9697f3337a89691e3bd8dc56dea45a6f6d975f92e7d5f773bc715c15dde28"}, + {file = "websockets-12.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:1df2fbd2c8a98d38a66f5238484405b8d1d16f929bb7a33ed73e4801222a6f53"}, + {file = "websockets-12.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:23509452b3bc38e3a057382c2e941d5ac2e01e251acce7adc74011d7d8de434c"}, + {file = "websockets-12.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2e5fc14ec6ea568200ea4ef46545073da81900a2b67b3e666f04adf53ad452ec"}, + {file = "websockets-12.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46e71dbbd12850224243f5d2aeec90f0aaa0f2dde5aeeb8fc8df21e04d99eff9"}, + {file = "websockets-12.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b81f90dcc6c85a9b7f29873beb56c94c85d6f0dac2ea8b60d995bd18bf3e2aae"}, + {file = "websockets-12.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:a02413bc474feda2849c59ed2dfb2cddb4cd3d2f03a2fedec51d6e959d9b608b"}, + {file = "websockets-12.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bbe6013f9f791944ed31ca08b077e26249309639313fff132bfbf3ba105673b9"}, + {file = "websockets-12.0-cp39-cp39-win32.whl", hash = "sha256:cbe83a6bbdf207ff0541de01e11904827540aa069293696dd528a6640bd6a5f6"}, + {file = "websockets-12.0-cp39-cp39-win_amd64.whl", hash = "sha256:fc4e7fa5414512b481a2483775a8e8be7803a35b30ca805afa4998a84f9fd9e8"}, + {file = "websockets-12.0-pp310-pypy310_pp73-macosx_10_9_x86_64.whl", hash = "sha256:248d8e2446e13c1d4326e0a6a4e9629cb13a11195051a73acf414812700badbd"}, + {file = "websockets-12.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f44069528d45a933997a6fef143030d8ca8042f0dfaad753e2906398290e2870"}, + {file = "websockets-12.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c4e37d36f0d19f0a4413d3e18c0d03d0c268ada2061868c1e6f5ab1a6d575077"}, + {file = "websockets-12.0-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d829f975fc2e527a3ef2f9c8f25e553eb7bc779c6665e8e1d52aa22800bb38b"}, + {file = "websockets-12.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:2c71bd45a777433dd9113847af751aae36e448bc6b8c361a566cb043eda6ec30"}, + {file = "websockets-12.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:0bee75f400895aef54157b36ed6d3b308fcab62e5260703add87f44cee9c82a6"}, + {file = "websockets-12.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:423fc1ed29f7512fceb727e2d2aecb952c46aa34895e9ed96071821309951123"}, + {file = "websockets-12.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:27a5e9964ef509016759f2ef3f2c1e13f403725a5e6a1775555994966a66e931"}, + {file = "websockets-12.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3181df4583c4d3994d31fb235dc681d2aaad744fbdbf94c4802485ececdecf2"}, + {file = "websockets-12.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:b067cb952ce8bf40115f6c19f478dc71c5e719b7fbaa511359795dfd9d1a6468"}, + {file = "websockets-12.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:00700340c6c7ab788f176d118775202aadea7602c5cc6be6ae127761c16d6b0b"}, + {file = "websockets-12.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e469d01137942849cff40517c97a30a93ae79917752b34029f0ec72df6b46399"}, + {file = "websockets-12.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffefa1374cd508d633646d51a8e9277763a9b78ae71324183693959cf94635a7"}, + {file = "websockets-12.0-pp39-pypy39_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba0cab91b3956dfa9f512147860783a1829a8d905ee218a9837c18f683239611"}, + {file = "websockets-12.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2cb388a5bfb56df4d9a406783b7f9dbefb888c09b71629351cc6b036e9259370"}, + {file = "websockets-12.0-py3-none-any.whl", hash = "sha256:dc284bbc8d7c78a6c69e0c7325ab46ee5e40bb4d50e494d8131a07ef47500e9e"}, + {file = "websockets-12.0.tar.gz", hash = "sha256:81df9cbcbb6c260de1e007e58c011bfebe2dafc8435107b0537f393dd38c8b1b"}, ] -[package.dependencies] -idna = ">=2.0" -multidict = ">=4.0" - [metadata] lock-version = "2.0" python-versions = "^3.10" -content-hash = "f6573d5932e4307803344353fde27a7145a15059c91d80622c483e9ac7a08818" +content-hash = "9ff165e8b80f9c40b013f1b0929ea5a94ab48921d8674e70ed9294d64d852ac9" diff --git a/pyproject.toml b/pyproject.toml index 400033a..ac3114a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,16 +1,15 @@ [tool.poetry] -name = "console" -version = "0.1.0" -description = "Console for llmaz" +name = "llmboard" +version = "0.0.1" +description = "ChatUI for LLMs on llmaz." authors = ["InftyAI Community"] license = "Apache-2.0" readme = "README.md" [tool.poetry.dependencies] python = "^3.10" -gradio = "3.41.0" -llmlite = "0.0.9" - +kubernetes = "^31.0.0" +gradio = "^5.6.0" [tool.poetry.group.dev.dependencies] pytest = "^7.4.3"