From 85327d7bd1af890b9c75df9a352d2efafa326295 Mon Sep 17 00:00:00 2001 From: Sitam Meur <103279526+sitammeur@users.noreply.github.com> Date: Thu, 5 Feb 2026 07:23:03 +0000 Subject: [PATCH 1/2] add form automation agentic workflow --- form-filling-automation/.env.example | 2 + form-filling-automation/README.md | 69 + form-filling-automation/app.py | 461 ++ form-filling-automation/documents/fw9.pdf | Bin 0 -> 140815 bytes .../documents/user-identity.pdf | Bin 0 -> 193438 bytes form-filling-automation/flow.py | 349 ++ form-filling-automation/main.py | 63 + form-filling-automation/models.py | 205 + form-filling-automation/pyproject.toml | 16 + form-filling-automation/schemas/w9.yaml | 83 + form-filling-automation/tools.py | 139 + form-filling-automation/uv.lock | 3946 +++++++++++++++++ 12 files changed, 5333 insertions(+) create mode 100644 form-filling-automation/.env.example create mode 100644 form-filling-automation/README.md create mode 100644 form-filling-automation/app.py create mode 100644 form-filling-automation/documents/fw9.pdf create mode 100644 form-filling-automation/documents/user-identity.pdf create mode 100644 form-filling-automation/flow.py create mode 100644 form-filling-automation/main.py create mode 100644 form-filling-automation/models.py create mode 100644 form-filling-automation/pyproject.toml create mode 100644 form-filling-automation/schemas/w9.yaml create mode 100644 form-filling-automation/tools.py create mode 100644 form-filling-automation/uv.lock diff --git a/form-filling-automation/.env.example b/form-filling-automation/.env.example new file mode 100644 index 000000000..3adecdc3e --- /dev/null +++ b/form-filling-automation/.env.example @@ -0,0 +1,2 @@ +DATALAB_API_KEY= +OPENROUTER_API_KEY= \ No newline at end of file diff --git a/form-filling-automation/README.md b/form-filling-automation/README.md new file mode 100644 index 000000000..1efd0a2a9 --- /dev/null +++ b/form-filling-automation/README.md @@ -0,0 +1,69 @@ +# Automated Form Filling + +Automated multi-agent workflow for filling out forms: extract data from documents using OCR, map it to form fields, and generate filled PDFs. The pipeline uses a W-9 tax form as an example, which can be extended to accommodate other forms. + +We use: + +- [CrewAI](https://docs.crewai.com/) (agentic design) for multi-agent orchestration +- [Datalab](https://documentation.datalab.to/) (document conversion & form filling) for OCR and form filling +- [Streamlit](https://streamlit.io/) for an interactive UI +- [MiniMax-M2.1](https://openrouter.ai/minimax/minimax-m2.1) (via OpenRouter) as the LLM for the agents + +## Set Up + +Follow these steps one by one: + +### Create .env File + +Create a `.env` file in the root directory of your project with the following content: + +```env +OPENROUTER_API_KEY= +DATALAB_API_KEY= +``` + +### Install Dependencies + +```bash +uv sync +source .venv/bin/activate +``` + +On Windows (PowerShell): + +```powershell +uv sync +.venv\Scripts\activate +``` + +This installs all required dependencies (CrewAI, Datalab SDK, Streamlit, etc.). + +## Run CrewAI Workflow (CLI) + +To run the form-filling workflow from the command line (e.g. with the bundled W-9 example): + +```bash +python main.py +``` + +You can also use the workflow programmatically via `run_form_flow()` in `main.py`, passing paths to your source document, blank form PDF, and form schema (YAML). + +## Run Streamlit Interface + +To run the Streamlit interface: + +```bash +streamlit run app.py +``` + +This starts the web UI where you can upload documents, choose a form schema, and run the pipeline. Use the URL shown in the terminal (e.g. `http://localhost:8501`) to open the app in your browser. + +## 📬 Stay Updated with Our Newsletter! + +**Get a FREE Data Science eBook** 📖 with 150+ essential lessons in Data Science when you subscribe to our newsletter! Stay in the loop with the latest tutorials, insights, and exclusive resources. [Subscribe now!](https://join.dailydoseofds.com) + +[![Daily Dose of Data Science Newsletter](https://github.com/patchy631/ai-engineering/blob/main/resources/join_ddods.png)](https://join.dailydoseofds.com) + +## Contribution + +Contributions are welcome! Feel free to fork this repository and submit pull requests with your improvements. diff --git a/form-filling-automation/app.py b/form-filling-automation/app.py new file mode 100644 index 000000000..f24a8c2e3 --- /dev/null +++ b/form-filling-automation/app.py @@ -0,0 +1,461 @@ +"""Streamlit UI for Generic Form Automation Agent.""" + +import base64 +from datetime import datetime +import json +import os +import tempfile + +from crewai import Crew, Process +from crewai.events import ( + AgentExecutionCompletedEvent, + AgentExecutionErrorEvent, + AgentExecutionStartedEvent, + BaseEventListener, + CrewKickoffCompletedEvent, + CrewKickoffStartedEvent, +) +import streamlit as st + +from flow import ( + create_document_scanner_agent, + create_fill_form_task, + create_form_filler_agent, + create_form_transformer_agent, + create_scan_document_task, + create_transform_data_task, +) +from models import FormSchema, GenericFormData, list_available_schemas, load_schema + + +# ── CrewAI Event Listener ───────────────────────────────────────────────── +class StreamlitLogListener(BaseEventListener): + """Captures CrewAI events into a list for Streamlit display.""" + + def __init__(self): + self.logs: list[dict] = [] + super().__init__() + + def setup_listeners(self, crewai_event_bus): + @crewai_event_bus.on(CrewKickoffStartedEvent) + def on_crew_started(source, event): + self.logs.append( + { + "time": datetime.now().strftime("%H:%M:%S"), + "type": "crew", + "icon": "rocket", + "message": f"Crew '{event.crew_name}' started", + } + ) + + @crewai_event_bus.on(CrewKickoffCompletedEvent) + def on_crew_completed(source, event): + self.logs.append( + { + "time": datetime.now().strftime("%H:%M:%S"), + "type": "crew", + "icon": "check", + "message": f"Crew '{event.crew_name}' completed", + "detail": str(event.output) if event.output else None, + } + ) + + @crewai_event_bus.on(AgentExecutionStartedEvent) + def on_agent_started(source, event): + self.logs.append( + { + "time": datetime.now().strftime("%H:%M:%S"), + "type": "agent", + "icon": "brain", + "message": f"Agent '{event.agent.role}' started working", + } + ) + + @crewai_event_bus.on(AgentExecutionCompletedEvent) + def on_agent_completed(source, event): + self.logs.append( + { + "time": datetime.now().strftime("%H:%M:%S"), + "type": "agent", + "icon": "white_check_mark", + "message": f"Agent '{event.agent.role}' completed", + "detail": str(event.output) if event.output else None, + } + ) + + @crewai_event_bus.on(AgentExecutionErrorEvent) + def on_agent_error(source, event): + self.logs.append( + { + "time": datetime.now().strftime("%H:%M:%S"), + "type": "error", + "icon": "x", + "message": f"Agent error: {event.error}", + } + ) + + def clear(self): + self.logs.clear() + + def render(self): + """Render collected logs as formatted text for st.code / st.markdown.""" + lines = [] + for entry in self.logs: + ts = entry["time"] + msg = entry["message"] + lines.append(f"[{ts}] {msg}") + if entry.get("detail"): + for dl in entry["detail"].splitlines(): + lines.append(f" {dl}") + return "\n".join(lines) if lines else "(no events captured)" + + def display(self): + """Render logs inside a scrollable container in Streamlit.""" + text = self.render() + st.html( + f'
'
+            f"{text}
" + ) + + +st.set_page_config( + page_title="Form Automation Agent", + page_icon=":page_facing_up:", + layout="wide", +) + +# ── Header ────────────────────────────────────────────────────────────────── +st.markdown("# :page_facing_up: Form Automation Agent") +powered_by_html = """ +
+ Powered by + + and + +
+""" +st.markdown(powered_by_html, unsafe_allow_html=True) +st.divider() + + +# ── Helpers ───────────────────────────────────────────────────────────────── +def pdf_preview(pdf_bytes: bytes, height: int = 400): + """Render an inline PDF preview using a base64 iframe.""" + b64 = base64.b64encode(pdf_bytes).decode() + st.markdown( + f'', + unsafe_allow_html=True, + ) + + +def extract_json_from_text(text: str) -> dict: + """Extract JSON from text that may contain markdown code blocks.""" + import re + + # Try direct parse first + try: + return json.loads(text) + except json.JSONDecodeError: + pass + + # Try to find JSON in markdown code block + json_pattern = r"```(?:json)?\s*([\s\S]*?)```" + matches = re.findall(json_pattern, text) + for match in matches: + try: + return json.loads(match.strip()) + except json.JSONDecodeError: + continue + + # Try to find raw JSON object + brace_pattern = r"\{[\s\S]*\}" + matches = re.findall(brace_pattern, text) + for match in matches: + try: + return json.loads(match) + except json.JSONDecodeError: + continue + + return {} + + +# ── Sidebar ───────────────────────────────────────────────────────────────── +with st.sidebar: + st.markdown("### :gear: Form Schema") + + # Load available schemas + available_schemas = list_available_schemas("schemas") + + if available_schemas: + schema_options = {s["form_name"]: s["path"] for s in available_schemas} + selected_schema_name = st.selectbox( + "Select Form Type", + options=list(schema_options.keys()), + help="Choose the type of form to fill", + ) + selected_schema_path = schema_options[selected_schema_name] + + # Show schema details + try: + schema = load_schema(selected_schema_path) + with st.expander("Schema Details", expanded=False): + st.write(f"**Form Type:** {schema.form_type}") + st.write(f"**Fields:** {len(schema.fields)}") + st.write("**Field Names:**") + for f in schema.fields: + req = "required" if f.required else "optional" + st.write(f"- `{f.name}` ({req})") + except Exception as e: + st.error(f"Error loading schema: {e}") + schema = None + else: + st.warning("No schemas found in 'schemas/' directory") + schema = None + selected_schema_path = None + + # Allow custom schema upload + st.markdown("---") + custom_schema_file = st.file_uploader( + "Or upload custom schema (YAML)", + type=["yaml", "yml"], + key="custom_schema", + help="Upload a custom form schema file", + ) + if custom_schema_file: + try: + import yaml + + schema_data = yaml.safe_load(custom_schema_file.getvalue().decode("utf-8")) + schema = FormSchema.from_dict(schema_data) + st.success(f"Loaded custom schema: {schema.form_name}") + except Exception as e: + st.error(f"Invalid schema file: {e}") + schema = None + + st.markdown("---") + st.markdown("### :arrow_up: Documents") + + identity_file = st.file_uploader( + "Source document (PDF)", + type=["pdf"], + key="identity", + help="Upload your source document (e.g. identity document, data source).", + ) + if identity_file: + pdf_preview(identity_file.getvalue(), height=250) + + st.markdown("---") + st.markdown("### :clipboard: Blank Form") + + blank_form_file = st.file_uploader( + "Upload blank form (PDF)", + type=["pdf"], + key="blank_form", + help="Upload blank form PDF to be filled.", + ) + if blank_form_file: + pdf_preview(blank_form_file.getvalue(), height=250) + + st.markdown("---") + run_disabled = identity_file is None or blank_form_file is None or schema is None + run_clicked = st.button( + ":rocket: Run Agent", + disabled=run_disabled, + type="primary", + use_container_width=True, + help="Kicks off multi-agent workflow: Scan -> Transform -> Fill.", + ) + +# ── Idle state ────────────────────────────────────────────────────────────── +if not run_clicked: + if schema is None: + st.warning("Please select or upload a form schema to continue.") + else: + st.info( + f"Ready to fill **{schema.form_name}**. " + "Upload your source document and blank form in sidebar, " + "then click **Run Agent** to start." + ) + st.stop() + +# ── Workflow execution ────────────────────────────────────────────────────── +tmp_dir = tempfile.mkdtemp(prefix="form_agent_") + +identity_path = os.path.join(tmp_dir, identity_file.name) +with open(identity_path, "wb") as f: + f.write(identity_file.getvalue()) + +blank_form_path = os.path.join(tmp_dir, blank_form_file.name) +with open(blank_form_path, "wb") as f: + f.write(blank_form_file.getvalue()) + +output_filename = f"{schema.form_type}_completed.pdf" +output_path = os.path.join(tmp_dir, output_filename) + +# Create the event listener once — it auto-registers with the CrewAI event bus +log_listener = StreamlitLogListener() + +steps_container = st.container() +extracted_text: str = "" +form_data: GenericFormData | None = None +failed = False + +# ── Step 1: Scan document ─────────────────────────────────────────────────── +with steps_container: + with st.status( + ":mag: **Step 1/3** — Scanning source document...", expanded=True + ) as s1: + try: + log_listener.clear() + + scanner_agent = create_document_scanner_agent() + scan_task = create_scan_document_task(scanner_agent) + + crew = Crew( + agents=[scanner_agent], + tasks=[scan_task], + process=Process.sequential, + verbose=True, + ) + result = crew.kickoff(inputs={"document_file": identity_path}) + + extracted_text = result.raw if result.raw else "" + if not extracted_text: + raise ValueError("No text extracted from document") + + log_listener.display() + s1.update( + label=":white_check_mark: **Step 1/3** — Document scanned", + state="complete", + expanded=False, + ) + except Exception as exc: + log_listener.display() + s1.update( + label=":x: **Step 1/3** — Scan failed", + state="error", + expanded=True, + ) + st.error(f"Document scan error: {exc}") + failed = True + +# ── Step 2: Transform data ────────────────────────────────────────────────── +if not failed: + with steps_container: + with st.status( + f":arrows_counterclockwise: **Step 2/3** — Transforming data for {schema.form_name}...", + expanded=True, + ) as s2: + try: + log_listener.clear() + + transformer_agent = create_form_transformer_agent(schema) + transform_task = create_transform_data_task(transformer_agent, schema) + + crew = Crew( + agents=[transformer_agent], + tasks=[transform_task], + process=Process.sequential, + verbose=True, + ) + result = crew.kickoff(inputs={"extracted_text": extracted_text}) + + # Parse result into GenericFormData (handles bool -> string conversion) + raw_output = result.raw if result.raw else "{}" + parsed = extract_json_from_text(raw_output) + form_data = GenericFormData.from_dict(parsed) + + log_listener.display() + s2.update( + label=":white_check_mark: **Step 2/3** — Data transformed", + state="complete", + expanded=False, + ) + except Exception as exc: + log_listener.display() + s2.update( + label=":x: **Step 2/3** — Transform failed", + state="error", + expanded=True, + ) + st.error(f"Data transform error: {exc}") + failed = True + +# ── Step 3: Fill form ─────────────────────────────────────────────────────── +if not failed: + with steps_container: + with st.status( + f":pencil2: **Step 3/3** — Filling {schema.form_name} PDF...", expanded=True + ) as s3: + try: + log_listener.clear() + + filler_agent = create_form_filler_agent(schema) + fill_task = create_fill_form_task(filler_agent, schema) + + crew = Crew( + agents=[filler_agent], + tasks=[fill_task], + process=Process.sequential, + verbose=True, + ) + crew.kickoff( + inputs={ + "form_data": json.dumps(form_data.to_tool_format(), indent=2), + "blank_form_path": blank_form_path, + "output_path": output_path, + } + ) + + log_listener.display() + s3.update( + label=":white_check_mark: **Step 3/3** — Form filled", + state="complete", + expanded=False, + ) + except Exception as exc: + log_listener.display() + s3.update( + label=":x: **Step 3/3** — Fill failed", + state="error", + expanded=True, + ) + st.error(f"Form fill error: {exc}") + failed = True + +if failed: + st.stop() + +# ── Results ───────────────────────────────────────────────────────────────── +st.balloons() +st.divider() + +col_data, col_result = st.columns([3, 2], gap="large") + +with col_data: + st.markdown(f"### :bar_chart: Extracted Data for {schema.form_name}") + if form_data: + st.json(form_data.to_tool_format()) + else: + st.info("No extracted data available.") + +with col_result: + st.markdown("### :white_check_mark: Completed Form") + if os.path.exists(output_path): + with open(output_path, "rb") as f: + pdf_bytes = f.read() + st.success(f"{schema.form_name} filled successfully!") + pdf_preview(pdf_bytes) + st.download_button( + label=":arrow_down: Download Completed PDF", + data=pdf_bytes, + file_name=output_filename, + mime="application/pdf", + use_container_width=True, + ) + else: + st.warning("Completed PDF not found at expected output path.") diff --git a/form-filling-automation/documents/fw9.pdf b/form-filling-automation/documents/fw9.pdf new file mode 100644 index 0000000000000000000000000000000000000000..c5eb6467893181c1d481e0748893877b015d5db0 GIT binary patch literal 140815 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

<$=ijj{jyQo_|o84)(LJ^2Rb&n-w1%917 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

  • 7m_7cTEr9yUcLDD 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 WyE}ey0&*|`nVDgK{1A~7h5cVNDO=G1 literal 0 HcmV?d00001 diff --git a/form-filling-automation/flow.py b/form-filling-automation/flow.py new file mode 100644 index 000000000..085ba5837 --- /dev/null +++ b/form-filling-automation/flow.py @@ -0,0 +1,349 @@ +""" +Multi-Agent Workflow for automating form filling - Generic Form Support + +Flow: Document Scanner → Form Data Transformer → Form Filler → Output PDF +""" + +import json +import os +import re + +from crewai import Agent, Crew, Process, Task +from crewai.flow.flow import Flow, listen, start +from crewai.llm import LLM +from dotenv import load_dotenv + +from models import FormFillingFlowState, FormSchema, GenericFormData +from tools import DocumentScanTool, FormFillTool + +load_dotenv() + + +# ============================================================================= +# LLM Configuration +# ============================================================================= +llm = LLM( + model="openrouter/minimax/minimax-m2.1", + api_key=os.environ.get("OPENROUTER_API_KEY"), +) + + +# ============================================================================= +# Agent Factory Functions (Dynamic based on schema) +# ============================================================================= +def create_document_scanner_agent() -> Agent: + """Create the document scanner agent.""" + return Agent( + role="Document Scanner Specialist", + goal="Extract all information from uploaded documents.", + backstory=( + "You are an expert document analyst with years of experience in OCR " + "and data extraction. You specialize in reading documents. " + "You are meticulous about accuracy and can identify even poorly scanned text." + ), + tools=[DocumentScanTool()], + llm=llm, + ) + + +def create_form_transformer_agent(schema: FormSchema) -> Agent: + """Create the form data transformer agent based on schema.""" + field_instructions = schema.to_extraction_prompt() + + return Agent( + role="Form Data Transformer", + goal=( + f"Transform extracted data into the precise form field format for {schema.form_name}. " + "Map document data to the correct field names with descriptions and properly formatted values." + ), + backstory=( + f"You are a documentation specialist with deep expertise in {schema.form_name}. " + "You understand exactly how data from source documents maps to each field on the form. " + "You ensure data is properly formatted and that information is correctly structured.\n\n" + f"The form has these fields:\n{field_instructions}" + ), + llm=llm, + ) + + +def create_form_filler_agent(schema: FormSchema) -> Agent: + """Create the form filler agent based on schema.""" + return Agent( + role="Form Filler", + goal=( + f"Accurately map extracted personal data to the correct {schema.form_name} fields " + "and generate a completed PDF." + ), + backstory=( + "You are a precision-focused form filler. " + "You excel at matching extracted data to appropriate fields " + "and ensuring forms are filled correctly." + ), + tools=[FormFillTool()], + llm=llm, + ) + + +# ============================================================================= +# Task Factory Functions (Dynamic based on schema) +# ============================================================================= +def create_scan_document_task(agent: Agent) -> Task: + """Create the document scanning task.""" + return Task( + description=( + "Scan and extract ALL information from the document " + "document file: {document_file}\n\n" + "Be thorough and accurate. Return all text content found." + ), + expected_output="All extracted text content from the document.", + agent=agent, + ) + + +def create_transform_data_task(agent: Agent, schema: FormSchema) -> Task: + """Create the data transformation task based on schema.""" + field_instructions = schema.to_extraction_prompt() + + return Task( + description=( + f"Transform the extracted document data into {schema.form_name} field format.\n\n" + "Input Data:\n{extracted_text}\n\n" + f"Map the data to these form fields:\n{field_instructions}\n\n" + "You MUST create a JSON output where each field has:\n" + "- 'value': The actual data to fill in the field\n" + "- 'description': A description of what the field represents\n\n" + "Example format:\n" + '{"name": {"value": "JOHN DOE", "description": "Name of entity/individual"}, ' + '"address": {"value": "123 Main St", "description": "Street address"}}\n\n' + "IMPORTANT:\n" + "- Only include fields that have values from the source document\n" + "- Skip fields that don't have corresponding data\n" + "- For SSN/EIN split into separate fields (ssn_1, ssn_2, ssn_3), split the digits appropriately\n" + "- Strip hyphens from SSN/EIN values - use digits only" + ), + expected_output=( + "A JSON object with form fields mapped correctly. Each field must have " + "'value' and 'description' keys." + ), + agent=agent, + ) + + +def create_fill_form_task(agent: Agent, schema: FormSchema) -> Task: + """Create the form filling task based on schema.""" + return Task( + description=( + f"Fill out the {schema.form_name} using the provided form data.\n\n" + "Blank Form Path: {blank_form_path}\n\n" + "Form Data:\n{form_data}\n\n" + "Output Path: {output_path}\n\n" + f"Context for form filling: {schema.context}\n\n" + "CRITICAL INSTRUCTIONS:\n" + "1. The form_filler tool uses AI-powered semantic field matching.\n" + "2. Pass the field_data EXACTLY as provided above - use the semantic field names.\n" + "3. Each field MUST be a dict with 'value' and 'description' keys.\n" + "4. Do NOT map to PDF internal field names - use semantic names.\n" + "5. The tool automatically matches semantic fields to PDF form fields.\n" + "6. Pass the context parameter to help with semantic matching." + ), + expected_output="Confirmation of successful form filling with the path to the completed form.", + agent=agent, + ) + + +# ============================================================================= +# Generic Form Filling Flow +# ============================================================================= +class FormFillingFlow(Flow[FormFillingFlowState]): + """ + Generic Flow: Document Scanner → Form Data Transformer → Form Filler + + Works with any form type based on the provided FormSchema. + """ + + @start() + def initialize(self): + """Validate inputs and initialize workflow.""" + if not self.state.document_file: + self.state.errors.append("No document file provided") + return "failed" + + if not self.state.blank_form_path: + self.state.errors.append("No blank form path provided") + return "failed" + + if not self.state.form_schema: + self.state.errors.append("No form schema provided") + return "failed" + + if not self.state.output_path: + self.state.output_path = self.state.blank_form_path.replace( + ".pdf", "_completed.pdf" + ) + + self.state.status = "initialized" + return "ok" + + @listen(initialize) + def extract_document_data(self, prev): + """Extract data from document using OCR.""" + if prev == "failed": + return "failed" + + scanner_agent = create_document_scanner_agent() + scan_task = create_scan_document_task(scanner_agent) + + crew = Crew( + agents=[scanner_agent], + tasks=[scan_task], + process=Process.sequential, + verbose=True, + ) + result = crew.kickoff(inputs={"document_file": self.state.document_file}) + + # Store raw extracted text + self.state.extracted_text = result.raw if result.raw else "" + + if not self.state.extracted_text: + self.state.errors.append("No text extracted from document") + return "failed" + + self.state.status = "data_extracted" + return "ok" + + @listen(extract_document_data) + def transform_to_form_data(self, prev): + """Transform extracted text to form field format using schema.""" + if prev == "failed": + return "failed" + + if not self.state.extracted_text: + self.state.errors.append("No extracted text available to transform") + return "failed" + + schema = self.state.form_schema + transformer_agent = create_form_transformer_agent(schema) + transform_task = create_transform_data_task(transformer_agent, schema) + + crew = Crew( + agents=[transformer_agent], + tasks=[transform_task], + process=Process.sequential, + verbose=True, + ) + result = crew.kickoff(inputs={"extracted_text": self.state.extracted_text}) + + # Parse the result into GenericFormData (handles bool -> string conversion) + try: + raw_output = result.raw if result.raw else "{}" + # Try to extract JSON from the response + parsed = self._extract_json(raw_output) + + if isinstance(parsed, dict): + self.state.form_data = GenericFormData.from_dict(parsed) + else: + self.state.errors.append("Invalid form data format returned") + return "failed" + + except json.JSONDecodeError as e: + self.state.errors.append(f"Failed to parse form data: {e}") + return "failed" + + self.state.status = "form_data_ready" + return "ok" + + @listen(transform_to_form_data) + def fill_form(self, prev): + """Fill the form using the transformed data.""" + if prev == "failed": + return "failed" + + if not self.state.form_data: + self.state.errors.append("Missing form data") + return "failed" + + schema = self.state.form_schema + filler_agent = create_form_filler_agent(schema) + fill_task = create_fill_form_task(filler_agent, schema) + + crew = Crew( + agents=[filler_agent], + tasks=[fill_task], + process=Process.sequential, + verbose=True, + ) + crew.kickoff( + inputs={ + "form_data": json.dumps( + self.state.form_data.to_tool_format(), indent=2 + ), + "blank_form_path": self.state.blank_form_path, + "output_path": self.state.output_path, + } + ) + + self.state.completed_form_path = self.state.output_path + self.state.status = "completed" + return "ok" + + @listen(fill_form) + def finalize(self, prev): + """Return final results with state data for validation.""" + if prev == "failed" or self.state.errors: + return {"success": False, "errors": self.state.errors} + + # Log state for validation + print("\n" + "=" * 60) + print("FLOW STATE OUTPUT") + print("=" * 60) + print(f"\nStatus: {self.state.status}") + print( + f"Form Type: {self.state.form_schema.form_type if self.state.form_schema else 'N/A'}" + ) + + if self.state.form_data: + print( + f"\nForm Data (field_data):\n{json.dumps(self.state.form_data.to_tool_format(), indent=2)}" + ) + + print("=" * 60 + "\n") + + return { + "success": True, + "status": self.state.status, + "form_type": ( + self.state.form_schema.form_type if self.state.form_schema else None + ), + "form_data": ( + self.state.form_data.to_tool_format() if self.state.form_data else None + ), + "output_path": self.state.completed_form_path, + } + + def _extract_json(self, text: str) -> dict: + """Extract JSON from text that may contain markdown code blocks.""" + # Try direct parse first + try: + return json.loads(text) + except json.JSONDecodeError: + pass + + # Try to find JSON in markdown code block + json_pattern = r"```(?:json)?\s*([\s\S]*?)```" + matches = re.findall(json_pattern, text) + for match in matches: + try: + return json.loads(match.strip()) + except json.JSONDecodeError: + continue + + # Try to find raw JSON object + brace_pattern = r"\{[\s\S]*\}" + matches = re.findall(brace_pattern, text) + for match in matches: + try: + return json.loads(match) + except json.JSONDecodeError: + continue + + raise json.JSONDecodeError("No valid JSON found", text, 0) diff --git a/form-filling-automation/main.py b/form-filling-automation/main.py new file mode 100644 index 000000000..b6fb16b20 --- /dev/null +++ b/form-filling-automation/main.py @@ -0,0 +1,63 @@ +"""Main entry point for the generic form filling workflow.""" + +from typing import Any, Dict, Optional + +from flow import FormFillingFlow +from models import load_schema + + +def run_form_flow( + document_file: str, + blank_form_path: str, + schema_path: str, + output_path: Optional[str] = None, +) -> Dict[str, Any]: + """ + Run the generic form filling workflow. + + Args: + document_file: Path to source document file (e.g., identity document) + blank_form_path: Path to the blank form PDF to fill + schema_path: Path to the form schema YAML/JSON file + output_path: Optional path for the completed form + + Returns: + Dictionary with workflow results including: + - success: bool + - status: str + - form_type: str + - form_data: dict (the field_data used for filling) + - output_path: str (path to completed PDF) + - errors: list (if failed) + """ + # Load the form schema + schema = load_schema(schema_path) + + # Create and configure the flow + flow = FormFillingFlow() + flow.state.document_file = document_file + flow.state.blank_form_path = blank_form_path + flow.state.form_schema = schema + flow.state.output_path = output_path or "" + + return flow.kickoff() + + +# Backward compatibility alias +run_tax_form_flow = run_form_flow + + +if __name__ == "__main__": + # Example usage with W-9 form + document_file = "documents/user-identity.pdf" + blank_form_path = "documents/fw9.pdf" + schema_path = "schemas/w9.yaml" + output_path = "output/fw9_completed.pdf" + + result = run_form_flow( + document_file=document_file, + blank_form_path=blank_form_path, + schema_path=schema_path, + output_path=output_path, + ) + print(f"\nResult: {result}") diff --git a/form-filling-automation/models.py b/form-filling-automation/models.py new file mode 100644 index 000000000..1972ec9ba --- /dev/null +++ b/form-filling-automation/models.py @@ -0,0 +1,205 @@ +"""Pydantic Models for Structured Data - Generic Form Support""" + +from pathlib import Path +from typing import Any, Dict, List, Optional + +from pydantic import BaseModel, Field +import yaml + + +# ============================================================================= +# Generic Form Schema Models +# ============================================================================= +class FormField(BaseModel): + """Single field definition for any form schema.""" + + name: str = Field(..., description="Field key (e.g., 'ssn_1', 'name')") + description: str = Field(..., description="What to extract/fill for this field") + required: bool = Field(default=True, description="Whether field is required") + validation_pattern: Optional[str] = Field( + default=None, description="Optional regex pattern for validation" + ) + + +class FormSchema(BaseModel): + """Generic form schema - loaded from YAML/JSON config.""" + + form_type: str = Field( + ..., description="Form identifier (e.g., 'w9', '1099', 'i9')" + ) + form_name: str = Field(..., description="Human-readable form name") + context: str = Field( + ..., description="Description/context for the form filling API" + ) + fields: List[FormField] = Field(..., description="List of form fields") + + @classmethod + def from_yaml(cls, path: str) -> "FormSchema": + """Load form schema from a YAML file.""" + with open(path, "r", encoding="utf-8") as f: + data = yaml.safe_load(f) + return cls(**data) + + @classmethod + def from_dict(cls, data: Dict[str, Any]) -> "FormSchema": + """Load form schema from a dictionary.""" + return cls(**data) + + def get_field_names(self) -> List[str]: + """Get list of all field names.""" + return [f.name for f in self.fields] + + def get_required_fields(self) -> List[str]: + """Get list of required field names.""" + return [f.name for f in self.fields if f.required] + + def get_field_descriptions(self) -> Dict[str, str]: + """Get mapping of field names to descriptions.""" + return {f.name: f.description for f in self.fields} + + def to_extraction_prompt(self) -> str: + """Generate field extraction instructions for agents.""" + lines = [] + for f in self.fields: + req = "(required)" if f.required else "(optional)" + lines.append(f"- {f.name}: {f.description} {req}") + return "\n".join(lines) + + +class GenericFormData(BaseModel): + """Generic extracted/transformed form data - works with any form schema.""" + + field_data: Dict[str, Dict[str, str]] = Field( + default_factory=dict, + description="Form data: {field_name: {'value': str, 'description': str}}", + ) + + def to_tool_format(self) -> Dict[str, Dict[str, str]]: + """Convert to format expected by TaxFormFillTool.""" + return self.field_data + + def get_value(self, field_name: str) -> Optional[str]: + """Get value for a specific field.""" + if field_name in self.field_data: + return self.field_data[field_name].get("value") + return None + + def set_field(self, name: str, value: str, description: str) -> None: + """Set a field value with description.""" + self.field_data[name] = {"value": value, "description": description} + + @staticmethod + def _to_string(value: Any) -> str: + """Convert any value to string, handling booleans specially.""" + if isinstance(value, bool): + return "Yes" if value else "No" + if value is None: + return "" + return str(value) + + @classmethod + def from_dict(cls, data: Dict[str, Any]) -> "GenericFormData": + """Create from a dictionary, converting non-string values to strings.""" + normalized = {} + for field_name, field_info in data.items(): + if isinstance(field_info, dict): + normalized[field_name] = { + "value": cls._to_string(field_info.get("value", "")), + "description": cls._to_string(field_info.get("description", "")), + } + return cls(field_data=normalized) + + def validate_against_schema(self, schema: FormSchema) -> List[str]: + """Validate form data against schema, return list of errors.""" + errors = [] + for field in schema.fields: + if field.required: + if field.name not in self.field_data: + errors.append(f"Missing required field: {field.name}") + elif not self.field_data[field.name].get("value"): + errors.append(f"Empty value for required field: {field.name}") + return errors + + +# ============================================================================= +# Flow State Model +# ============================================================================= +class FormFillingFlowState(BaseModel): + """State management for the generic form filling flow.""" + + # Input paths + document_file: str = "" + blank_form_path: str = "" + output_path: str = "" + + # Schema (loaded from config) + form_schema: Optional[FormSchema] = None + + # Extracted and transformed data + extracted_text: str = "" # Raw OCR output + form_data: Optional[GenericFormData] = None # Transformed field data + + # Output + completed_form_path: str = "" + status: str = "pending" + errors: List[str] = Field(default_factory=list) + + +# ============================================================================= +# Helper Functions +# ============================================================================= +def load_schema(schema_path: str) -> FormSchema: + """Load a form schema from file path.""" + path = Path(schema_path) + if not path.exists(): + raise FileNotFoundError(f"Schema file not found: {schema_path}") + + if path.suffix in (".yaml", ".yml"): + return FormSchema.from_yaml(schema_path) + elif path.suffix == ".json": + import json + + with open(schema_path, "r", encoding="utf-8") as f: + data = json.load(f) + return FormSchema.from_dict(data) + else: + raise ValueError(f"Unsupported schema format: {path.suffix}") + + +def list_available_schemas(schemas_dir: str = "schemas") -> List[Dict[str, str]]: + """List all available form schemas in the schemas directory.""" + schemas = [] + schemas_path = Path(schemas_dir) + + if not schemas_path.exists(): + return schemas + + for file in schemas_path.glob("*.yaml"): + try: + schema = FormSchema.from_yaml(str(file)) + schemas.append( + { + "file": file.name, + "path": str(file), + "form_type": schema.form_type, + "form_name": schema.form_name, + } + ) + except Exception: + continue + + for file in schemas_path.glob("*.yml"): + try: + schema = FormSchema.from_yaml(str(file)) + schemas.append( + { + "file": file.name, + "path": str(file), + "form_type": schema.form_type, + "form_name": schema.form_name, + } + ) + except Exception: + continue + + return schemas diff --git a/form-filling-automation/pyproject.toml b/form-filling-automation/pyproject.toml new file mode 100644 index 000000000..51a2f2965 --- /dev/null +++ b/form-filling-automation/pyproject.toml @@ -0,0 +1,16 @@ +[project] +name = "form-filling-automation" +version = "0.1.0" +description = "Multi-Agent Workflow for automating form filling" +readme = "README.md" +requires-python = ">=3.12" +dependencies = [ + "crewai[anthropic,google-genai,tools]>=0.108.0", + "datalab-python-sdk>=0.2.1", + "litellm>=1.81.3", + "nest-asyncio>=1.6.0", + "pydantic>=2.0.0", + "python-dotenv>=1.2.1", + "pyyaml>=6.0", + "streamlit>=1.45.0", +] diff --git a/form-filling-automation/schemas/w9.yaml b/form-filling-automation/schemas/w9.yaml new file mode 100644 index 000000000..56e569562 --- /dev/null +++ b/form-filling-automation/schemas/w9.yaml @@ -0,0 +1,83 @@ +form_type: w9 +form_name: "W-9 Request for Taxpayer Identification Number" +context: "This is a W-9 tax form used by US persons (citizens, residents, or entities) to provide their correct Taxpayer Identification Number (TIN) to withholding agents or payers." +fields: + - name: name + description: "Name of entity/individual (Line 1)" + required: true + + - name: business_name + description: "Business name/disregarded entity name, if different from above (Line 2)" + required: false + + - name: individual_sole_proprietor + description: "Individual/sole proprietor or single-member LLC checkbox for federal tax classification (Line 3a)" + required: false + + - name: c_corporation + description: "C Corporation checkbox for federal tax classification (Line 3b)" + required: false + + - name: s_corporation + description: "S Corporation checkbox for federal tax classification (Line 3c)" + required: false + + - name: partnership + description: "Partnership checkbox for federal tax classification (Line 3d)" + required: false + + - name: trust_estate + description: "Trust/estate checkbox for federal tax classification (Line 3e)" + required: false + + - name: llc + description: "LLC checkbox with tax classification code (Line 3f)" + required: false + + - name: other + description: "Other federal tax classification (Line 3g)" + required: false + + - name: exempt_payee_code + description: "Exempt payee code if applicable (Line 4)" + required: false + + - name: fatca_exemption_code + description: "Exemption from FATCA reporting code if applicable (Line 4)" + required: false + + - name: address + description: "Address (number, street, and apt. or suite no.) (Line 5)" + required: true + + - name: city_state_zip + description: "City, state, and ZIP code (Line 6)" + required: true + + - name: requester_name_address + description: "Requester's name and address (optional) (Line 7)" + required: false + + - name: account_numbers + description: "List account number(s) here (optional) (Line 8)" + required: false + + - name: ssn_1 + description: "Social security number first 3 digits (Part I - box 1)" + required: false + + - name: ssn_2 + description: "Social security number middle 2 digits (Part I - box 2)" + required: false + + - name: ssn_3 + description: "Social security number last 4 digits (Part I - box 3)" + required: false + + - name: ein_1 + description: "Employer identification number first 2 digits (Part I - box 1)" + required: false + + - name: ein_2 + description: "Employer identification number last 7 digits (Part I - box 2)" + required: false diff --git a/form-filling-automation/tools.py b/form-filling-automation/tools.py new file mode 100644 index 000000000..274e4f8b9 --- /dev/null +++ b/form-filling-automation/tools.py @@ -0,0 +1,139 @@ +"""Tools powered by Datalab SDK for document scanning and form filling.""" + +import os +from pathlib import Path +from typing import Any, Dict, Type + +from crewai.tools import BaseTool +from datalab_sdk import ConvertOptions, DatalabClient, FormFillingOptions +from dotenv import load_dotenv +import nest_asyncio +from pydantic import BaseModel, Field + +# Allow nested event loops +nest_asyncio.apply() + +load_dotenv() + + +class DocumentScanInput(BaseModel): + file_path: str = Field(..., description="Path to user identity document file") + + +class FormFillInput(BaseModel): + form_path: str = Field(..., description="Path to the blank form PDF") + field_data: Dict[str, Any] = Field(..., description="Field data to fill") + output_path: str = Field(..., description="Path to save the completed form") + context: str = Field( + default="Generic form", + description="Context/description of the form for semantic field matching", + ) + + +class DocumentScanTool(BaseTool): + name: str = "document_scanner" + description: str = "Scans user identity document and extracts text using OCR." + args_schema: Type[BaseModel] = DocumentScanInput + + def _run(self, file_path: str) -> str: + # Validate file exists + if not Path(file_path).exists(): + return f"Error: File not found: {file_path}" + + # Validate API key + api_key = os.environ.get("DATALAB_API_KEY") + if not api_key: + return "Error: DATALAB_API_KEY environment variable not set" + + try: + client = DatalabClient(api_key=api_key) + options = ConvertOptions(output_format="markdown", mode="accurate") + result = client.convert(file_path, options=options) + + if result.success: + if not result.markdown or result.markdown.strip() == "": + return ( + "Error: OCR returned empty content - document may be unreadable" + ) + return result.markdown + + return f"Error: {getattr(result, 'error', 'Unknown OCR error')}" + + except ConnectionError as e: + return f"Error: Failed to connect to Datalab API: {e}" + except TimeoutError as e: + return f"Error: Datalab API request timed out: {e}" + except Exception as e: + return f"Error: Unexpected error during document scan: {e}" + + +class FormFillTool(BaseTool): + name: str = "form_filler" + description: str = ( + "Fills PDF form with field data and saves completed form. Accepts dynamic context for any form type." + ) + args_schema: Type[BaseModel] = FormFillInput + + def _run( + self, + form_path: str, + field_data: Dict[str, Any], + output_path: str, + context: str = "Generic form", + ) -> str: + # Validate form file exists + if not Path(form_path).exists(): + return f"Error: Form file not found: {form_path}" + + # Validate field_data is not empty + if not field_data: + return "Error: No field data provided to fill the form" + + # Validate API key + api_key = os.environ.get("DATALAB_API_KEY") + if not api_key: + return "Error: DATALAB_API_KEY environment variable not set" + + try: + client = DatalabClient(api_key=api_key) + options = FormFillingOptions( + field_data=field_data, + confidence_threshold=0.7, + context=context, # Dynamic context from schema + skip_cache=True, + ) + result = client.fill(form_path, options=options) + + if result.success: + # Ensure output directory exists + output_dir = Path(output_path).parent + output_dir.mkdir(parents=True, exist_ok=True) + + # Verify directory was created + if not output_dir.exists(): + return f"Error: Failed to create output directory: {output_dir}" + + result.save_output(output_path) + + # Verify output file was created + if not Path(output_path).exists(): + return f"Error: Form was processed but output file was not created: {output_path}" + + # Build diagnostic message + filled = getattr(result, "fields_filled", []) + not_found = getattr(result, "fields_not_found", []) + msg = f"Form filled successfully: {output_path}\n" + msg += f"Fields filled ({len(filled)}): {filled}\n" + msg += f"Fields not found ({len(not_found)}): {not_found}" + return msg + + return f"Error: {getattr(result, 'error', 'Unknown form filling error')}" + + except ConnectionError as e: + return f"Error: Failed to connect to Datalab API: {e}" + except TimeoutError as e: + return f"Error: Datalab API request timed out: {e}" + except PermissionError as e: + return f"Error: Permission denied when saving output file: {e}" + except Exception as e: + return f"Error: Unexpected error during form filling: {e}" diff --git a/form-filling-automation/uv.lock b/form-filling-automation/uv.lock new file mode 100644 index 000000000..8c498afff --- /dev/null +++ b/form-filling-automation/uv.lock @@ -0,0 +1,3946 @@ +version = 1 +revision = 3 +requires-python = ">=3.12" +resolution-markers = [ + "python_full_version >= '3.13'", + "python_full_version < '3.13'", +] + +[[package]] +name = "aiohappyeyeballs" +version = "2.6.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/26/30/f84a107a9c4331c14b2b586036f40965c128aa4fee4dda5d3d51cb14ad54/aiohappyeyeballs-2.6.1.tar.gz", hash = "sha256:c3f9d0113123803ccadfdf3f0faa505bc78e6a72d1cc4806cbd719826e943558", size = 22760, upload-time = "2025-03-12T01:42:48.764Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0f/15/5bf3b99495fb160b63f95972b81750f18f7f4e02ad051373b669d17d44f2/aiohappyeyeballs-2.6.1-py3-none-any.whl", hash = "sha256:f349ba8f4b75cb25c99c5c2d84e997e485204d2902a9597802b0371f09331fb8", size = 15265, upload-time = "2025-03-12T01:42:47.083Z" }, +] + +[[package]] +name = "aiohttp" +version = "3.13.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohappyeyeballs" }, + { name = "aiosignal" }, + { name = "attrs" }, + { name = "frozenlist" }, + { name = "multidict" }, + { name = "propcache" }, + { name = "yarl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/50/42/32cf8e7704ceb4481406eb87161349abb46a57fee3f008ba9cb610968646/aiohttp-3.13.3.tar.gz", hash = "sha256:a949eee43d3782f2daae4f4a2819b2cb9b0c5d3b7f7a927067cc84dafdbb9f88", size = 7844556, upload-time = "2026-01-03T17:33:05.204Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/be/4fc11f202955a69e0db803a12a062b8379c970c7c84f4882b6da17337cc1/aiohttp-3.13.3-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:b903a4dfee7d347e2d87697d0713be59e0b87925be030c9178c5faa58ea58d5c", size = 739732, upload-time = "2026-01-03T17:30:14.23Z" }, + { url = "https://files.pythonhosted.org/packages/97/2c/621d5b851f94fa0bb7430d6089b3aa970a9d9b75196bc93bb624b0db237a/aiohttp-3.13.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a45530014d7a1e09f4a55f4f43097ba0fd155089372e105e4bff4ca76cb1b168", size = 494293, upload-time = "2026-01-03T17:30:15.96Z" }, + { url = "https://files.pythonhosted.org/packages/5d/43/4be01406b78e1be8320bb8316dc9c42dbab553d281c40364e0f862d5661c/aiohttp-3.13.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:27234ef6d85c914f9efeb77ff616dbf4ad2380be0cda40b4db086ffc7ddd1b7d", size = 493533, upload-time = "2026-01-03T17:30:17.431Z" }, + { url = "https://files.pythonhosted.org/packages/8d/a8/5a35dc56a06a2c90d4742cbf35294396907027f80eea696637945a106f25/aiohttp-3.13.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d32764c6c9aafb7fb55366a224756387cd50bfa720f32b88e0e6fa45b27dcf29", size = 1737839, upload-time = "2026-01-03T17:30:19.422Z" }, + { url = "https://files.pythonhosted.org/packages/bf/62/4b9eeb331da56530bf2e198a297e5303e1c1ebdceeb00fe9b568a65c5a0c/aiohttp-3.13.3-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:b1a6102b4d3ebc07dad44fbf07b45bb600300f15b552ddf1851b5390202ea2e3", size = 1703932, upload-time = "2026-01-03T17:30:21.756Z" }, + { url = "https://files.pythonhosted.org/packages/7c/f6/af16887b5d419e6a367095994c0b1332d154f647e7dc2bd50e61876e8e3d/aiohttp-3.13.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c014c7ea7fb775dd015b2d3137378b7be0249a448a1612268b5a90c2d81de04d", size = 1771906, upload-time = "2026-01-03T17:30:23.932Z" }, + { url = "https://files.pythonhosted.org/packages/ce/83/397c634b1bcc24292fa1e0c7822800f9f6569e32934bdeef09dae7992dfb/aiohttp-3.13.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2b8d8ddba8f95ba17582226f80e2de99c7a7948e66490ef8d947e272a93e9463", size = 1871020, upload-time = "2026-01-03T17:30:26Z" }, + { url = "https://files.pythonhosted.org/packages/86/f6/a62cbbf13f0ac80a70f71b1672feba90fdb21fd7abd8dbf25c0105fb6fa3/aiohttp-3.13.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9ae8dd55c8e6c4257eae3a20fd2c8f41edaea5992ed67156642493b8daf3cecc", size = 1755181, upload-time = "2026-01-03T17:30:27.554Z" }, + { url = "https://files.pythonhosted.org/packages/0a/87/20a35ad487efdd3fba93d5843efdfaa62d2f1479eaafa7453398a44faf13/aiohttp-3.13.3-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:01ad2529d4b5035578f5081606a465f3b814c542882804e2e8cda61adf5c71bf", size = 1561794, upload-time = "2026-01-03T17:30:29.254Z" }, + { url = "https://files.pythonhosted.org/packages/de/95/8fd69a66682012f6716e1bc09ef8a1a2a91922c5725cb904689f112309c4/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:bb4f7475e359992b580559e008c598091c45b5088f28614e855e42d39c2f1033", size = 1697900, upload-time = "2026-01-03T17:30:31.033Z" }, + { url = "https://files.pythonhosted.org/packages/e5/66/7b94b3b5ba70e955ff597672dad1691333080e37f50280178967aff68657/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:c19b90316ad3b24c69cd78d5c9b4f3aa4497643685901185b65166293d36a00f", size = 1728239, upload-time = "2026-01-03T17:30:32.703Z" }, + { url = "https://files.pythonhosted.org/packages/47/71/6f72f77f9f7d74719692ab65a2a0252584bf8d5f301e2ecb4c0da734530a/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:96d604498a7c782cb15a51c406acaea70d8c027ee6b90c569baa6e7b93073679", size = 1740527, upload-time = "2026-01-03T17:30:34.695Z" }, + { url = "https://files.pythonhosted.org/packages/fa/b4/75ec16cbbd5c01bdaf4a05b19e103e78d7ce1ef7c80867eb0ace42ff4488/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:084911a532763e9d3dd95adf78a78f4096cd5f58cdc18e6fdbc1b58417a45423", size = 1554489, upload-time = "2026-01-03T17:30:36.864Z" }, + { url = "https://files.pythonhosted.org/packages/52/8f/bc518c0eea29f8406dcf7ed1f96c9b48e3bc3995a96159b3fc11f9e08321/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:7a4a94eb787e606d0a09404b9c38c113d3b099d508021faa615d70a0131907ce", size = 1767852, upload-time = "2026-01-03T17:30:39.433Z" }, + { url = "https://files.pythonhosted.org/packages/9d/f2/a07a75173124f31f11ea6f863dc44e6f09afe2bca45dd4e64979490deab1/aiohttp-3.13.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:87797e645d9d8e222e04160ee32aa06bc5c163e8499f24db719e7852ec23093a", size = 1722379, upload-time = "2026-01-03T17:30:41.081Z" }, + { url = "https://files.pythonhosted.org/packages/3c/4a/1a3fee7c21350cac78e5c5cef711bac1b94feca07399f3d406972e2d8fcd/aiohttp-3.13.3-cp312-cp312-win32.whl", hash = "sha256:b04be762396457bef43f3597c991e192ee7da460a4953d7e647ee4b1c28e7046", size = 428253, upload-time = "2026-01-03T17:30:42.644Z" }, + { url = "https://files.pythonhosted.org/packages/d9/b7/76175c7cb4eb73d91ad63c34e29fc4f77c9386bba4a65b53ba8e05ee3c39/aiohttp-3.13.3-cp312-cp312-win_amd64.whl", hash = "sha256:e3531d63d3bdfa7e3ac5e9b27b2dd7ec9df3206a98e0b3445fa906f233264c57", size = 455407, upload-time = "2026-01-03T17:30:44.195Z" }, + { url = "https://files.pythonhosted.org/packages/97/8a/12ca489246ca1faaf5432844adbfce7ff2cc4997733e0af120869345643a/aiohttp-3.13.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:5dff64413671b0d3e7d5918ea490bdccb97a4ad29b3f311ed423200b2203e01c", size = 734190, upload-time = "2026-01-03T17:30:45.832Z" }, + { url = "https://files.pythonhosted.org/packages/32/08/de43984c74ed1fca5c014808963cc83cb00d7bb06af228f132d33862ca76/aiohttp-3.13.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:87b9aab6d6ed88235aa2970294f496ff1a1f9adcd724d800e9b952395a80ffd9", size = 491783, upload-time = "2026-01-03T17:30:47.466Z" }, + { url = "https://files.pythonhosted.org/packages/17/f8/8dd2cf6112a5a76f81f81a5130c57ca829d101ad583ce57f889179accdda/aiohttp-3.13.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:425c126c0dc43861e22cb1c14ba4c8e45d09516d0a3ae0a3f7494b79f5f233a3", size = 490704, upload-time = "2026-01-03T17:30:49.373Z" }, + { url = "https://files.pythonhosted.org/packages/6d/40/a46b03ca03936f832bc7eaa47cfbb1ad012ba1be4790122ee4f4f8cba074/aiohttp-3.13.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7f9120f7093c2a32d9647abcaf21e6ad275b4fbec5b55969f978b1a97c7c86bf", size = 1720652, upload-time = "2026-01-03T17:30:50.974Z" }, + { url = "https://files.pythonhosted.org/packages/f7/7e/917fe18e3607af92657e4285498f500dca797ff8c918bd7d90b05abf6c2a/aiohttp-3.13.3-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:697753042d57f4bf7122cab985bf15d0cef23c770864580f5af4f52023a56bd6", size = 1692014, upload-time = "2026-01-03T17:30:52.729Z" }, + { url = "https://files.pythonhosted.org/packages/71/b6/cefa4cbc00d315d68973b671cf105b21a609c12b82d52e5d0c9ae61d2a09/aiohttp-3.13.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:6de499a1a44e7de70735d0b39f67c8f25eb3d91eb3103be99ca0fa882cdd987d", size = 1759777, upload-time = "2026-01-03T17:30:54.537Z" }, + { url = "https://files.pythonhosted.org/packages/fb/e3/e06ee07b45e59e6d81498b591fc589629be1553abb2a82ce33efe2a7b068/aiohttp-3.13.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:37239e9f9a7ea9ac5bf6b92b0260b01f8a22281996da609206a84df860bc1261", size = 1861276, upload-time = "2026-01-03T17:30:56.512Z" }, + { url = "https://files.pythonhosted.org/packages/7c/24/75d274228acf35ceeb2850b8ce04de9dd7355ff7a0b49d607ee60c29c518/aiohttp-3.13.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f76c1e3fe7d7c8afad7ed193f89a292e1999608170dcc9751a7462a87dfd5bc0", size = 1743131, upload-time = "2026-01-03T17:30:58.256Z" }, + { url = "https://files.pythonhosted.org/packages/04/98/3d21dde21889b17ca2eea54fdcff21b27b93f45b7bb94ca029c31ab59dc3/aiohttp-3.13.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:fc290605db2a917f6e81b0e1e0796469871f5af381ce15c604a3c5c7e51cb730", size = 1556863, upload-time = "2026-01-03T17:31:00.445Z" }, + { url = "https://files.pythonhosted.org/packages/9e/84/da0c3ab1192eaf64782b03971ab4055b475d0db07b17eff925e8c93b3aa5/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4021b51936308aeea0367b8f006dc999ca02bc118a0cc78c303f50a2ff6afb91", size = 1682793, upload-time = "2026-01-03T17:31:03.024Z" }, + { url = "https://files.pythonhosted.org/packages/ff/0f/5802ada182f575afa02cbd0ec5180d7e13a402afb7c2c03a9aa5e5d49060/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:49a03727c1bba9a97d3e93c9f93ca03a57300f484b6e935463099841261195d3", size = 1716676, upload-time = "2026-01-03T17:31:04.842Z" }, + { url = "https://files.pythonhosted.org/packages/3f/8c/714d53bd8b5a4560667f7bbbb06b20c2382f9c7847d198370ec6526af39c/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3d9908a48eb7416dc1f4524e69f1d32e5d90e3981e4e37eb0aa1cd18f9cfa2a4", size = 1733217, upload-time = "2026-01-03T17:31:06.868Z" }, + { url = "https://files.pythonhosted.org/packages/7d/79/e2176f46d2e963facea939f5be2d26368ce543622be6f00a12844d3c991f/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:2712039939ec963c237286113c68dbad80a82a4281543f3abf766d9d73228998", size = 1552303, upload-time = "2026-01-03T17:31:08.958Z" }, + { url = "https://files.pythonhosted.org/packages/ab/6a/28ed4dea1759916090587d1fe57087b03e6c784a642b85ef48217b0277ae/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:7bfdc049127717581866fa4708791220970ce291c23e28ccf3922c700740fdc0", size = 1763673, upload-time = "2026-01-03T17:31:10.676Z" }, + { url = "https://files.pythonhosted.org/packages/e8/35/4a3daeb8b9fab49240d21c04d50732313295e4bd813a465d840236dd0ce1/aiohttp-3.13.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8057c98e0c8472d8846b9c79f56766bcc57e3e8ac7bfd510482332366c56c591", size = 1721120, upload-time = "2026-01-03T17:31:12.575Z" }, + { url = "https://files.pythonhosted.org/packages/bc/9f/d643bb3c5fb99547323e635e251c609fbbc660d983144cfebec529e09264/aiohttp-3.13.3-cp313-cp313-win32.whl", hash = "sha256:1449ceddcdbcf2e0446957863af03ebaaa03f94c090f945411b61269e2cb5daf", size = 427383, upload-time = "2026-01-03T17:31:14.382Z" }, + { url = "https://files.pythonhosted.org/packages/4e/f1/ab0395f8a79933577cdd996dd2f9aa6014af9535f65dddcf88204682fe62/aiohttp-3.13.3-cp313-cp313-win_amd64.whl", hash = "sha256:693781c45a4033d31d4187d2436f5ac701e7bbfe5df40d917736108c1cc7436e", size = 453899, upload-time = "2026-01-03T17:31:15.958Z" }, + { url = "https://files.pythonhosted.org/packages/99/36/5b6514a9f5d66f4e2597e40dea2e3db271e023eb7a5d22defe96ba560996/aiohttp-3.13.3-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:ea37047c6b367fd4bd632bff8077449b8fa034b69e812a18e0132a00fae6e808", size = 737238, upload-time = "2026-01-03T17:31:17.909Z" }, + { url = "https://files.pythonhosted.org/packages/f7/49/459327f0d5bcd8c6c9ca69e60fdeebc3622861e696490d8674a6d0cb90a6/aiohttp-3.13.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:6fc0e2337d1a4c3e6acafda6a78a39d4c14caea625124817420abceed36e2415", size = 492292, upload-time = "2026-01-03T17:31:19.919Z" }, + { url = "https://files.pythonhosted.org/packages/e8/0b/b97660c5fd05d3495b4eb27f2d0ef18dc1dc4eff7511a9bf371397ff0264/aiohttp-3.13.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c685f2d80bb67ca8c3837823ad76196b3694b0159d232206d1e461d3d434666f", size = 493021, upload-time = "2026-01-03T17:31:21.636Z" }, + { url = "https://files.pythonhosted.org/packages/54/d4/438efabdf74e30aeceb890c3290bbaa449780583b1270b00661126b8aae4/aiohttp-3.13.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:48e377758516d262bde50c2584fc6c578af272559c409eecbdd2bae1601184d6", size = 1717263, upload-time = "2026-01-03T17:31:23.296Z" }, + { url = "https://files.pythonhosted.org/packages/71/f2/7bddc7fd612367d1459c5bcf598a9e8f7092d6580d98de0e057eb42697ad/aiohttp-3.13.3-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:34749271508078b261c4abb1767d42b8d0c0cc9449c73a4df494777dc55f0687", size = 1669107, upload-time = "2026-01-03T17:31:25.334Z" }, + { url = "https://files.pythonhosted.org/packages/00/5a/1aeaecca40e22560f97610a329e0e5efef5e0b5afdf9f857f0d93839ab2e/aiohttp-3.13.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:82611aeec80eb144416956ec85b6ca45a64d76429c1ed46ae1b5f86c6e0c9a26", size = 1760196, upload-time = "2026-01-03T17:31:27.394Z" }, + { url = "https://files.pythonhosted.org/packages/f8/f8/0ff6992bea7bd560fc510ea1c815f87eedd745fe035589c71ce05612a19a/aiohttp-3.13.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2fff83cfc93f18f215896e3a190e8e5cb413ce01553901aca925176e7568963a", size = 1843591, upload-time = "2026-01-03T17:31:29.238Z" }, + { url = "https://files.pythonhosted.org/packages/e3/d1/e30e537a15f53485b61f5be525f2157da719819e8377298502aebac45536/aiohttp-3.13.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bbe7d4cecacb439e2e2a8a1a7b935c25b812af7a5fd26503a66dadf428e79ec1", size = 1720277, upload-time = "2026-01-03T17:31:31.053Z" }, + { url = "https://files.pythonhosted.org/packages/84/45/23f4c451d8192f553d38d838831ebbc156907ea6e05557f39563101b7717/aiohttp-3.13.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b928f30fe49574253644b1ca44b1b8adbd903aa0da4b9054a6c20fc7f4092a25", size = 1548575, upload-time = "2026-01-03T17:31:32.87Z" }, + { url = "https://files.pythonhosted.org/packages/6a/ed/0a42b127a43712eda7807e7892c083eadfaf8429ca8fb619662a530a3aab/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7b5e8fe4de30df199155baaf64f2fcd604f4c678ed20910db8e2c66dc4b11603", size = 1679455, upload-time = "2026-01-03T17:31:34.76Z" }, + { url = "https://files.pythonhosted.org/packages/2e/b5/c05f0c2b4b4fe2c9d55e73b6d3ed4fd6c9dc2684b1d81cbdf77e7fad9adb/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:8542f41a62bcc58fc7f11cf7c90e0ec324ce44950003feb70640fc2a9092c32a", size = 1687417, upload-time = "2026-01-03T17:31:36.699Z" }, + { url = "https://files.pythonhosted.org/packages/c9/6b/915bc5dad66aef602b9e459b5a973529304d4e89ca86999d9d75d80cbd0b/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:5e1d8c8b8f1d91cd08d8f4a3c2b067bfca6ec043d3ff36de0f3a715feeedf926", size = 1729968, upload-time = "2026-01-03T17:31:38.622Z" }, + { url = "https://files.pythonhosted.org/packages/11/3b/e84581290a9520024a08640b63d07673057aec5ca548177a82026187ba73/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:90455115e5da1c3c51ab619ac57f877da8fd6d73c05aacd125c5ae9819582aba", size = 1545690, upload-time = "2026-01-03T17:31:40.57Z" }, + { url = "https://files.pythonhosted.org/packages/f5/04/0c3655a566c43fd647c81b895dfe361b9f9ad6d58c19309d45cff52d6c3b/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:042e9e0bcb5fba81886c8b4fbb9a09d6b8a00245fd8d88e4d989c1f96c74164c", size = 1746390, upload-time = "2026-01-03T17:31:42.857Z" }, + { url = "https://files.pythonhosted.org/packages/1f/53/71165b26978f719c3419381514c9690bd5980e764a09440a10bb816ea4ab/aiohttp-3.13.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2eb752b102b12a76ca02dff751a801f028b4ffbbc478840b473597fc91a9ed43", size = 1702188, upload-time = "2026-01-03T17:31:44.984Z" }, + { url = "https://files.pythonhosted.org/packages/29/a7/cbe6c9e8e136314fa1980da388a59d2f35f35395948a08b6747baebb6aa6/aiohttp-3.13.3-cp314-cp314-win32.whl", hash = "sha256:b556c85915d8efaed322bf1bdae9486aa0f3f764195a0fb6ee962e5c71ef5ce1", size = 433126, upload-time = "2026-01-03T17:31:47.463Z" }, + { url = "https://files.pythonhosted.org/packages/de/56/982704adea7d3b16614fc5936014e9af85c0e34b58f9046655817f04306e/aiohttp-3.13.3-cp314-cp314-win_amd64.whl", hash = "sha256:9bf9f7a65e7aa20dd764151fb3d616c81088f91f8df39c3893a536e279b4b984", size = 459128, upload-time = "2026-01-03T17:31:49.2Z" }, + { url = "https://files.pythonhosted.org/packages/6c/2a/3c79b638a9c3d4658d345339d22070241ea341ed4e07b5ac60fb0f418003/aiohttp-3.13.3-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:05861afbbec40650d8a07ea324367cb93e9e8cc7762e04dd4405df99fa65159c", size = 769512, upload-time = "2026-01-03T17:31:51.134Z" }, + { url = "https://files.pythonhosted.org/packages/29/b9/3e5014d46c0ab0db8707e0ac2711ed28c4da0218c358a4e7c17bae0d8722/aiohttp-3.13.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2fc82186fadc4a8316768d61f3722c230e2c1dcab4200d52d2ebdf2482e47592", size = 506444, upload-time = "2026-01-03T17:31:52.85Z" }, + { url = "https://files.pythonhosted.org/packages/90/03/c1d4ef9a054e151cd7839cdc497f2638f00b93cbe8043983986630d7a80c/aiohttp-3.13.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:0add0900ff220d1d5c5ebbf99ed88b0c1bbf87aa7e4262300ed1376a6b13414f", size = 510798, upload-time = "2026-01-03T17:31:54.91Z" }, + { url = "https://files.pythonhosted.org/packages/ea/76/8c1e5abbfe8e127c893fe7ead569148a4d5a799f7cf958d8c09f3eedf097/aiohttp-3.13.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:568f416a4072fbfae453dcf9a99194bbb8bdeab718e08ee13dfa2ba0e4bebf29", size = 1868835, upload-time = "2026-01-03T17:31:56.733Z" }, + { url = "https://files.pythonhosted.org/packages/8e/ac/984c5a6f74c363b01ff97adc96a3976d9c98940b8969a1881575b279ac5d/aiohttp-3.13.3-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:add1da70de90a2569c5e15249ff76a631ccacfe198375eead4aadf3b8dc849dc", size = 1720486, upload-time = "2026-01-03T17:31:58.65Z" }, + { url = "https://files.pythonhosted.org/packages/b2/9a/b7039c5f099c4eb632138728828b33428585031a1e658d693d41d07d89d1/aiohttp-3.13.3-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:10b47b7ba335d2e9b1239fa571131a87e2d8ec96b333e68b2a305e7a98b0bae2", size = 1847951, upload-time = "2026-01-03T17:32:00.989Z" }, + { url = "https://files.pythonhosted.org/packages/3c/02/3bec2b9a1ba3c19ff89a43a19324202b8eb187ca1e928d8bdac9bbdddebd/aiohttp-3.13.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:3dd4dce1c718e38081c8f35f323209d4c1df7d4db4bab1b5c88a6b4d12b74587", size = 1941001, upload-time = "2026-01-03T17:32:03.122Z" }, + { url = "https://files.pythonhosted.org/packages/37/df/d879401cedeef27ac4717f6426c8c36c3091c6e9f08a9178cc87549c537f/aiohttp-3.13.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:34bac00a67a812570d4a460447e1e9e06fae622946955f939051e7cc895cfab8", size = 1797246, upload-time = "2026-01-03T17:32:05.255Z" }, + { url = "https://files.pythonhosted.org/packages/8d/15/be122de1f67e6953add23335c8ece6d314ab67c8bebb3f181063010795a7/aiohttp-3.13.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a19884d2ee70b06d9204b2727a7b9f983d0c684c650254679e716b0b77920632", size = 1627131, upload-time = "2026-01-03T17:32:07.607Z" }, + { url = "https://files.pythonhosted.org/packages/12/12/70eedcac9134cfa3219ab7af31ea56bc877395b1ac30d65b1bc4b27d0438/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5f8ca7f2bb6ba8348a3614c7918cc4bb73268c5ac2a207576b7afea19d3d9f64", size = 1795196, upload-time = "2026-01-03T17:32:09.59Z" }, + { url = "https://files.pythonhosted.org/packages/32/11/b30e1b1cd1f3054af86ebe60df96989c6a414dd87e27ad16950eee420bea/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:b0d95340658b9d2f11d9697f59b3814a9d3bb4b7a7c20b131df4bcef464037c0", size = 1782841, upload-time = "2026-01-03T17:32:11.445Z" }, + { url = "https://files.pythonhosted.org/packages/88/0d/d98a9367b38912384a17e287850f5695c528cff0f14f791ce8ee2e4f7796/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:a1e53262fd202e4b40b70c3aff944a8155059beedc8a89bba9dc1f9ef06a1b56", size = 1795193, upload-time = "2026-01-03T17:32:13.705Z" }, + { url = "https://files.pythonhosted.org/packages/43/a5/a2dfd1f5ff5581632c7f6a30e1744deda03808974f94f6534241ef60c751/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:d60ac9663f44168038586cab2157e122e46bdef09e9368b37f2d82d354c23f72", size = 1621979, upload-time = "2026-01-03T17:32:15.965Z" }, + { url = "https://files.pythonhosted.org/packages/fa/f0/12973c382ae7c1cccbc4417e129c5bf54c374dfb85af70893646e1f0e749/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:90751b8eed69435bac9ff4e3d2f6b3af1f57e37ecb0fbeee59c0174c9e2d41df", size = 1822193, upload-time = "2026-01-03T17:32:18.219Z" }, + { url = "https://files.pythonhosted.org/packages/3c/5f/24155e30ba7f8c96918af1350eb0663e2430aad9e001c0489d89cd708ab1/aiohttp-3.13.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:fc353029f176fd2b3ec6cfc71be166aba1936fe5d73dd1992ce289ca6647a9aa", size = 1769801, upload-time = "2026-01-03T17:32:20.25Z" }, + { url = "https://files.pythonhosted.org/packages/eb/f8/7314031ff5c10e6ece114da79b338ec17eeff3a079e53151f7e9f43c4723/aiohttp-3.13.3-cp314-cp314t-win32.whl", hash = "sha256:2e41b18a58da1e474a057b3d35248d8320029f61d70a37629535b16a0c8f3767", size = 466523, upload-time = "2026-01-03T17:32:22.215Z" }, + { url = "https://files.pythonhosted.org/packages/b4/63/278a98c715ae467624eafe375542d8ba9b4383a016df8fdefe0ae28382a7/aiohttp-3.13.3-cp314-cp314t-win_amd64.whl", hash = "sha256:44531a36aa2264a1860089ffd4dce7baf875ee5a6079d5fb42e261c704ef7344", size = 499694, upload-time = "2026-01-03T17:32:24.546Z" }, +] + +[[package]] +name = "aiosignal" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "frozenlist" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/61/62/06741b579156360248d1ec624842ad0edf697050bbaf7c3e46394e106ad1/aiosignal-1.4.0.tar.gz", hash = "sha256:f47eecd9468083c2029cc99945502cb7708b082c232f9aca65da147157b251c7", size = 25007, upload-time = "2025-07-03T22:54:43.528Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl", hash = "sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e", size = 7490, upload-time = "2025-07-03T22:54:42.156Z" }, +] + +[[package]] +name = "altair" +version = "6.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jinja2" }, + { name = "jsonschema" }, + { name = "narwhals" }, + { name = "packaging" }, + { name = "typing-extensions", marker = "python_full_version < '3.15'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f7/c0/184a89bd5feba14ff3c41cfaf1dd8a82c05f5ceedbc92145e17042eb08a4/altair-6.0.0.tar.gz", hash = "sha256:614bf5ecbe2337347b590afb111929aa9c16c9527c4887d96c9bc7f6640756b4", size = 763834, upload-time = "2025-11-12T08:59:11.519Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/db/33/ef2f2409450ef6daa61459d5de5c08128e7d3edb773fefd0a324d1310238/altair-6.0.0-py3-none-any.whl", hash = "sha256:09ae95b53d5fe5b16987dccc785a7af8588f2dca50de1e7a156efa8a461515f8", size = 795410, upload-time = "2025-11-12T08:59:09.804Z" }, +] + +[[package]] +name = "annotated-types" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" }, +] + +[[package]] +name = "anthropic" +version = "0.76.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "distro" }, + { name = "docstring-parser" }, + { name = "httpx" }, + { name = "jiter" }, + { name = "pydantic" }, + { name = "sniffio" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6e/be/d11abafaa15d6304826438170f7574d750218f49a106c54424a40cef4494/anthropic-0.76.0.tar.gz", hash = "sha256:e0cae6a368986d5cf6df743dfbb1b9519e6a9eee9c6c942ad8121c0b34416ffe", size = 495483, upload-time = "2026-01-13T18:41:14.908Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/70/7b0fd9c1a738f59d3babe2b4212031c34ab7d0fda4ffef15b58a55c5bcea/anthropic-0.76.0-py3-none-any.whl", hash = "sha256:81efa3113901192af2f0fe977d3ec73fdadb1e691586306c4256cd6d5ccc331c", size = 390309, upload-time = "2026-01-13T18:41:13.483Z" }, +] + +[[package]] +name = "anyio" +version = "4.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/96/f0/5eb65b2bb0d09ac6776f2eb54adee6abe8228ea05b20a5ad0e4945de8aac/anyio-4.12.1.tar.gz", hash = "sha256:41cfcc3a4c85d3f05c932da7c26d0201ac36f72abd4435ba90d0464a3ffed703", size = 228685, upload-time = "2026-01-06T11:45:21.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/0e/27be9fdef66e72d64c0cdc3cc2823101b80585f8119b5c112c2e8f5f7dab/anyio-4.12.1-py3-none-any.whl", hash = "sha256:d405828884fc140aa80a3c667b8beed277f1dfedec42ba031bd6ac3db606ab6c", size = 113592, upload-time = "2026-01-06T11:45:19.497Z" }, +] + +[[package]] +name = "appdirs" +version = "1.4.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d7/d8/05696357e0311f5b5c316d7b95f46c669dd9c15aaeecbb48c7d0aeb88c40/appdirs-1.4.4.tar.gz", hash = "sha256:7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41", size = 13470, upload-time = "2020-05-11T07:59:51.037Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3b/00/2344469e2084fb287c2e0b57b72910309874c3245463acd6cf5e3db69324/appdirs-1.4.4-py2.py3-none-any.whl", hash = "sha256:a841dacd6b99318a741b166adb07e19ee71a274450e68237b4650ca1055ab128", size = 9566, upload-time = "2020-05-11T07:59:49.499Z" }, +] + +[[package]] +name = "attrs" +version = "25.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6b/5c/685e6633917e101e5dcb62b9dd76946cbb57c26e133bae9e0cd36033c0a9/attrs-25.4.0.tar.gz", hash = "sha256:16d5969b87f0859ef33a48b35d55ac1be6e42ae49d5e853b597db70c35c57e11", size = 934251, upload-time = "2025-10-06T13:54:44.725Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/2a/7cc015f5b9f5db42b7d48157e23356022889fc354a2813c15934b7cb5c0e/attrs-25.4.0-py3-none-any.whl", hash = "sha256:adcf7e2a1fb3b36ac48d97835bb6d8ade15b8dcce26aba8bf1d14847b57a3373", size = 67615, upload-time = "2025-10-06T13:54:43.17Z" }, +] + +[[package]] +name = "automated-tax-filling" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "crewai", extra = ["anthropic", "google-genai", "tools"] }, + { name = "datalab-python-sdk" }, + { name = "litellm" }, + { name = "nest-asyncio" }, + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "pyyaml" }, + { name = "streamlit" }, +] + +[package.metadata] +requires-dist = [ + { name = "crewai", extras = ["anthropic", "google-genai", "tools"], specifier = ">=0.108.0" }, + { name = "datalab-python-sdk", specifier = ">=0.2.1" }, + { name = "litellm", specifier = ">=1.81.3" }, + { name = "nest-asyncio", specifier = ">=1.6.0" }, + { name = "pydantic", specifier = ">=2.0.0" }, + { name = "python-dotenv", specifier = ">=1.2.1" }, + { name = "pyyaml", specifier = ">=6.0" }, + { name = "streamlit", specifier = ">=1.45.0" }, +] + +[[package]] +name = "backoff" +version = "2.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/47/d7/5bbeb12c44d7c4f2fb5b56abce497eb5ed9f34d85701de869acedd602619/backoff-2.2.1.tar.gz", hash = "sha256:03f829f5bb1923180821643f8753b0502c3b682293992485b0eef2807afa5cba", size = 17001, upload-time = "2022-10-05T19:19:32.061Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/df/73/b6e24bd22e6720ca8ee9a85a0c4a2971af8497d8f3193fa05390cbd46e09/backoff-2.2.1-py3-none-any.whl", hash = "sha256:63579f9a0628e06278f7e47b7d7d5b6ce20dc65c5e96a6f3ca99a6adca0396e8", size = 15148, upload-time = "2022-10-05T19:19:30.546Z" }, +] + +[[package]] +name = "bcrypt" +version = "5.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d4/36/3329e2518d70ad8e2e5817d5a4cac6bba05a47767ec416c7d020a965f408/bcrypt-5.0.0.tar.gz", hash = "sha256:f748f7c2d6fd375cc93d3fba7ef4a9e3a092421b8dbf34d8d4dc06be9492dfdd", size = 25386, upload-time = "2025-09-25T19:50:47.829Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/13/85/3e65e01985fddf25b64ca67275bb5bdb4040bd1a53b66d355c6c37c8a680/bcrypt-5.0.0-cp313-cp313t-macosx_10_12_universal2.whl", hash = "sha256:f3c08197f3039bec79cee59a606d62b96b16669cff3949f21e74796b6e3cd2be", size = 481806, upload-time = "2025-09-25T19:49:05.102Z" }, + { url = "https://files.pythonhosted.org/packages/44/dc/01eb79f12b177017a726cbf78330eb0eb442fae0e7b3dfd84ea2849552f3/bcrypt-5.0.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:200af71bc25f22006f4069060c88ed36f8aa4ff7f53e67ff04d2ab3f1e79a5b2", size = 268626, upload-time = "2025-09-25T19:49:06.723Z" }, + { url = "https://files.pythonhosted.org/packages/8c/cf/e82388ad5959c40d6afd94fb4743cc077129d45b952d46bdc3180310e2df/bcrypt-5.0.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:baade0a5657654c2984468efb7d6c110db87ea63ef5a4b54732e7e337253e44f", size = 271853, upload-time = "2025-09-25T19:49:08.028Z" }, + { url = "https://files.pythonhosted.org/packages/ec/86/7134b9dae7cf0efa85671651341f6afa695857fae172615e960fb6a466fa/bcrypt-5.0.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:c58b56cdfb03202b3bcc9fd8daee8e8e9b6d7e3163aa97c631dfcfcc24d36c86", size = 269793, upload-time = "2025-09-25T19:49:09.727Z" }, + { url = "https://files.pythonhosted.org/packages/cc/82/6296688ac1b9e503d034e7d0614d56e80c5d1a08402ff856a4549cb59207/bcrypt-5.0.0-cp313-cp313t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:4bfd2a34de661f34d0bda43c3e4e79df586e4716ef401fe31ea39d69d581ef23", size = 289930, upload-time = "2025-09-25T19:49:11.204Z" }, + { url = "https://files.pythonhosted.org/packages/d1/18/884a44aa47f2a3b88dd09bc05a1e40b57878ecd111d17e5bba6f09f8bb77/bcrypt-5.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ed2e1365e31fc73f1825fa830f1c8f8917ca1b3ca6185773b349c20fd606cec2", size = 272194, upload-time = "2025-09-25T19:49:12.524Z" }, + { url = "https://files.pythonhosted.org/packages/0e/8f/371a3ab33c6982070b674f1788e05b656cfbf5685894acbfef0c65483a59/bcrypt-5.0.0-cp313-cp313t-manylinux_2_34_aarch64.whl", hash = "sha256:83e787d7a84dbbfba6f250dd7a5efd689e935f03dd83b0f919d39349e1f23f83", size = 269381, upload-time = "2025-09-25T19:49:14.308Z" }, + { url = "https://files.pythonhosted.org/packages/b1/34/7e4e6abb7a8778db6422e88b1f06eb07c47682313997ee8a8f9352e5a6f1/bcrypt-5.0.0-cp313-cp313t-manylinux_2_34_x86_64.whl", hash = "sha256:137c5156524328a24b9fac1cb5db0ba618bc97d11970b39184c1d87dc4bf1746", size = 271750, upload-time = "2025-09-25T19:49:15.584Z" }, + { url = "https://files.pythonhosted.org/packages/c0/1b/54f416be2499bd72123c70d98d36c6cd61a4e33d9b89562c22481c81bb30/bcrypt-5.0.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:38cac74101777a6a7d3b3e3cfefa57089b5ada650dce2baf0cbdd9d65db22a9e", size = 303757, upload-time = "2025-09-25T19:49:17.244Z" }, + { url = "https://files.pythonhosted.org/packages/13/62/062c24c7bcf9d2826a1a843d0d605c65a755bc98002923d01fd61270705a/bcrypt-5.0.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:d8d65b564ec849643d9f7ea05c6d9f0cd7ca23bdd4ac0c2dbef1104ab504543d", size = 306740, upload-time = "2025-09-25T19:49:18.693Z" }, + { url = "https://files.pythonhosted.org/packages/d5/c8/1fdbfc8c0f20875b6b4020f3c7dc447b8de60aa0be5faaf009d24242aec9/bcrypt-5.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:741449132f64b3524e95cd30e5cd3343006ce146088f074f31ab26b94e6c75ba", size = 334197, upload-time = "2025-09-25T19:49:20.523Z" }, + { url = "https://files.pythonhosted.org/packages/a6/c1/8b84545382d75bef226fbc6588af0f7b7d095f7cd6a670b42a86243183cd/bcrypt-5.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:212139484ab3207b1f0c00633d3be92fef3c5f0af17cad155679d03ff2ee1e41", size = 352974, upload-time = "2025-09-25T19:49:22.254Z" }, + { url = "https://files.pythonhosted.org/packages/10/a6/ffb49d4254ed085e62e3e5dd05982b4393e32fe1e49bb1130186617c29cd/bcrypt-5.0.0-cp313-cp313t-win32.whl", hash = "sha256:9d52ed507c2488eddd6a95bccee4e808d3234fa78dd370e24bac65a21212b861", size = 148498, upload-time = "2025-09-25T19:49:24.134Z" }, + { url = "https://files.pythonhosted.org/packages/48/a9/259559edc85258b6d5fc5471a62a3299a6aa37a6611a169756bf4689323c/bcrypt-5.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f6984a24db30548fd39a44360532898c33528b74aedf81c26cf29c51ee47057e", size = 145853, upload-time = "2025-09-25T19:49:25.702Z" }, + { url = "https://files.pythonhosted.org/packages/2d/df/9714173403c7e8b245acf8e4be8876aac64a209d1b392af457c79e60492e/bcrypt-5.0.0-cp313-cp313t-win_arm64.whl", hash = "sha256:9fffdb387abe6aa775af36ef16f55e318dcda4194ddbf82007a6f21da29de8f5", size = 139626, upload-time = "2025-09-25T19:49:26.928Z" }, + { url = "https://files.pythonhosted.org/packages/f8/14/c18006f91816606a4abe294ccc5d1e6f0e42304df5a33710e9e8e95416e1/bcrypt-5.0.0-cp314-cp314t-macosx_10_12_universal2.whl", hash = "sha256:4870a52610537037adb382444fefd3706d96d663ac44cbb2f37e3919dca3d7ef", size = 481862, upload-time = "2025-09-25T19:49:28.365Z" }, + { url = "https://files.pythonhosted.org/packages/67/49/dd074d831f00e589537e07a0725cf0e220d1f0d5d8e85ad5bbff251c45aa/bcrypt-5.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:48f753100931605686f74e27a7b49238122aa761a9aefe9373265b8b7aa43ea4", size = 268544, upload-time = "2025-09-25T19:49:30.39Z" }, + { url = "https://files.pythonhosted.org/packages/f5/91/50ccba088b8c474545b034a1424d05195d9fcbaaf802ab8bfe2be5a4e0d7/bcrypt-5.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f70aadb7a809305226daedf75d90379c397b094755a710d7014b8b117df1ebbf", size = 271787, upload-time = "2025-09-25T19:49:32.144Z" }, + { url = "https://files.pythonhosted.org/packages/aa/e7/d7dba133e02abcda3b52087a7eea8c0d4f64d3e593b4fffc10c31b7061f3/bcrypt-5.0.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:744d3c6b164caa658adcb72cb8cc9ad9b4b75c7db507ab4bc2480474a51989da", size = 269753, upload-time = "2025-09-25T19:49:33.885Z" }, + { url = "https://files.pythonhosted.org/packages/33/fc/5b145673c4b8d01018307b5c2c1fc87a6f5a436f0ad56607aee389de8ee3/bcrypt-5.0.0-cp314-cp314t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a28bc05039bdf3289d757f49d616ab3efe8cf40d8e8001ccdd621cd4f98f4fc9", size = 289587, upload-time = "2025-09-25T19:49:35.144Z" }, + { url = "https://files.pythonhosted.org/packages/27/d7/1ff22703ec6d4f90e62f1a5654b8867ef96bafb8e8102c2288333e1a6ca6/bcrypt-5.0.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:7f277a4b3390ab4bebe597800a90da0edae882c6196d3038a73adf446c4f969f", size = 272178, upload-time = "2025-09-25T19:49:36.793Z" }, + { url = "https://files.pythonhosted.org/packages/c8/88/815b6d558a1e4d40ece04a2f84865b0fef233513bd85fd0e40c294272d62/bcrypt-5.0.0-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:79cfa161eda8d2ddf29acad370356b47f02387153b11d46042e93a0a95127493", size = 269295, upload-time = "2025-09-25T19:49:38.164Z" }, + { url = "https://files.pythonhosted.org/packages/51/8c/e0db387c79ab4931fc89827d37608c31cc57b6edc08ccd2386139028dc0d/bcrypt-5.0.0-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:a5393eae5722bcef046a990b84dff02b954904c36a194f6cfc817d7dca6c6f0b", size = 271700, upload-time = "2025-09-25T19:49:39.917Z" }, + { url = "https://files.pythonhosted.org/packages/06/83/1570edddd150f572dbe9fc00f6203a89fc7d4226821f67328a85c330f239/bcrypt-5.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7f4c94dec1b5ab5d522750cb059bb9409ea8872d4494fd152b53cca99f1ddd8c", size = 334034, upload-time = "2025-09-25T19:49:41.227Z" }, + { url = "https://files.pythonhosted.org/packages/c9/f2/ea64e51a65e56ae7a8a4ec236c2bfbdd4b23008abd50ac33fbb2d1d15424/bcrypt-5.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0cae4cb350934dfd74c020525eeae0a5f79257e8a201c0c176f4b84fdbf2a4b4", size = 352766, upload-time = "2025-09-25T19:49:43.08Z" }, + { url = "https://files.pythonhosted.org/packages/d7/d4/1a388d21ee66876f27d1a1f41287897d0c0f1712ef97d395d708ba93004c/bcrypt-5.0.0-cp314-cp314t-win32.whl", hash = "sha256:b17366316c654e1ad0306a6858e189fc835eca39f7eb2cafd6aaca8ce0c40a2e", size = 152449, upload-time = "2025-09-25T19:49:44.971Z" }, + { url = "https://files.pythonhosted.org/packages/3f/61/3291c2243ae0229e5bca5d19f4032cecad5dfb05a2557169d3a69dc0ba91/bcrypt-5.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:92864f54fb48b4c718fc92a32825d0e42265a627f956bc0361fe869f1adc3e7d", size = 149310, upload-time = "2025-09-25T19:49:46.162Z" }, + { url = "https://files.pythonhosted.org/packages/3e/89/4b01c52ae0c1a681d4021e5dd3e45b111a8fb47254a274fa9a378d8d834b/bcrypt-5.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:dd19cf5184a90c873009244586396a6a884d591a5323f0e8a5922560718d4993", size = 143761, upload-time = "2025-09-25T19:49:47.345Z" }, + { url = "https://files.pythonhosted.org/packages/84/29/6237f151fbfe295fe3e074ecc6d44228faa1e842a81f6d34a02937ee1736/bcrypt-5.0.0-cp38-abi3-macosx_10_12_universal2.whl", hash = "sha256:fc746432b951e92b58317af8e0ca746efe93e66555f1b40888865ef5bf56446b", size = 494553, upload-time = "2025-09-25T19:49:49.006Z" }, + { url = "https://files.pythonhosted.org/packages/45/b6/4c1205dde5e464ea3bd88e8742e19f899c16fa8916fb8510a851fae985b5/bcrypt-5.0.0-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c2388ca94ffee269b6038d48747f4ce8df0ffbea43f31abfa18ac72f0218effb", size = 275009, upload-time = "2025-09-25T19:49:50.581Z" }, + { url = "https://files.pythonhosted.org/packages/3b/71/427945e6ead72ccffe77894b2655b695ccf14ae1866cd977e185d606dd2f/bcrypt-5.0.0-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:560ddb6ec730386e7b3b26b8b4c88197aaed924430e7b74666a586ac997249ef", size = 278029, upload-time = "2025-09-25T19:49:52.533Z" }, + { url = "https://files.pythonhosted.org/packages/17/72/c344825e3b83c5389a369c8a8e58ffe1480b8a699f46c127c34580c4666b/bcrypt-5.0.0-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:d79e5c65dcc9af213594d6f7f1fa2c98ad3fc10431e7aa53c176b441943efbdd", size = 275907, upload-time = "2025-09-25T19:49:54.709Z" }, + { url = "https://files.pythonhosted.org/packages/0b/7e/d4e47d2df1641a36d1212e5c0514f5291e1a956a7749f1e595c07a972038/bcrypt-5.0.0-cp38-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2b732e7d388fa22d48920baa267ba5d97cca38070b69c0e2d37087b381c681fd", size = 296500, upload-time = "2025-09-25T19:49:56.013Z" }, + { url = "https://files.pythonhosted.org/packages/0f/c3/0ae57a68be2039287ec28bc463b82e4b8dc23f9d12c0be331f4782e19108/bcrypt-5.0.0-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:0c8e093ea2532601a6f686edbc2c6b2ec24131ff5c52f7610dd64fa4553b5464", size = 278412, upload-time = "2025-09-25T19:49:57.356Z" }, + { url = "https://files.pythonhosted.org/packages/45/2b/77424511adb11e6a99e3a00dcc7745034bee89036ad7d7e255a7e47be7d8/bcrypt-5.0.0-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:5b1589f4839a0899c146e8892efe320c0fa096568abd9b95593efac50a87cb75", size = 275486, upload-time = "2025-09-25T19:49:59.116Z" }, + { url = "https://files.pythonhosted.org/packages/43/0a/405c753f6158e0f3f14b00b462d8bca31296f7ecfc8fc8bc7919c0c7d73a/bcrypt-5.0.0-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:89042e61b5e808b67daf24a434d89bab164d4de1746b37a8d173b6b14f3db9ff", size = 277940, upload-time = "2025-09-25T19:50:00.869Z" }, + { url = "https://files.pythonhosted.org/packages/62/83/b3efc285d4aadc1fa83db385ec64dcfa1707e890eb42f03b127d66ac1b7b/bcrypt-5.0.0-cp38-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:e3cf5b2560c7b5a142286f69bde914494b6d8f901aaa71e453078388a50881c4", size = 310776, upload-time = "2025-09-25T19:50:02.393Z" }, + { url = "https://files.pythonhosted.org/packages/95/7d/47ee337dacecde6d234890fe929936cb03ebc4c3a7460854bbd9c97780b8/bcrypt-5.0.0-cp38-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f632fd56fc4e61564f78b46a2269153122db34988e78b6be8b32d28507b7eaeb", size = 312922, upload-time = "2025-09-25T19:50:04.232Z" }, + { url = "https://files.pythonhosted.org/packages/d6/3a/43d494dfb728f55f4e1cf8fd435d50c16a2d75493225b54c8d06122523c6/bcrypt-5.0.0-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:801cad5ccb6b87d1b430f183269b94c24f248dddbbc5c1f78b6ed231743e001c", size = 341367, upload-time = "2025-09-25T19:50:05.559Z" }, + { url = "https://files.pythonhosted.org/packages/55/ab/a0727a4547e383e2e22a630e0f908113db37904f58719dc48d4622139b5c/bcrypt-5.0.0-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3cf67a804fc66fc217e6914a5635000259fbbbb12e78a99488e4d5ba445a71eb", size = 359187, upload-time = "2025-09-25T19:50:06.916Z" }, + { url = "https://files.pythonhosted.org/packages/1b/bb/461f352fdca663524b4643d8b09e8435b4990f17fbf4fea6bc2a90aa0cc7/bcrypt-5.0.0-cp38-abi3-win32.whl", hash = "sha256:3abeb543874b2c0524ff40c57a4e14e5d3a66ff33fb423529c88f180fd756538", size = 153752, upload-time = "2025-09-25T19:50:08.515Z" }, + { url = "https://files.pythonhosted.org/packages/41/aa/4190e60921927b7056820291f56fc57d00d04757c8b316b2d3c0d1d6da2c/bcrypt-5.0.0-cp38-abi3-win_amd64.whl", hash = "sha256:35a77ec55b541e5e583eb3436ffbbf53b0ffa1fa16ca6782279daf95d146dcd9", size = 150881, upload-time = "2025-09-25T19:50:09.742Z" }, + { url = "https://files.pythonhosted.org/packages/54/12/cd77221719d0b39ac0b55dbd39358db1cd1246e0282e104366ebbfb8266a/bcrypt-5.0.0-cp38-abi3-win_arm64.whl", hash = "sha256:cde08734f12c6a4e28dc6755cd11d3bdfea608d93d958fffbe95a7026ebe4980", size = 144931, upload-time = "2025-09-25T19:50:11.016Z" }, + { url = "https://files.pythonhosted.org/packages/5d/ba/2af136406e1c3839aea9ecadc2f6be2bcd1eff255bd451dd39bcf302c47a/bcrypt-5.0.0-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:0c418ca99fd47e9c59a301744d63328f17798b5947b0f791e9af3c1c499c2d0a", size = 495313, upload-time = "2025-09-25T19:50:12.309Z" }, + { url = "https://files.pythonhosted.org/packages/ac/ee/2f4985dbad090ace5ad1f7dd8ff94477fe089b5fab2040bd784a3d5f187b/bcrypt-5.0.0-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ddb4e1500f6efdd402218ffe34d040a1196c072e07929b9820f363a1fd1f4191", size = 275290, upload-time = "2025-09-25T19:50:13.673Z" }, + { url = "https://files.pythonhosted.org/packages/e4/6e/b77ade812672d15cf50842e167eead80ac3514f3beacac8902915417f8b7/bcrypt-5.0.0-cp39-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7aeef54b60ceddb6f30ee3db090351ecf0d40ec6e2abf41430997407a46d2254", size = 278253, upload-time = "2025-09-25T19:50:15.089Z" }, + { url = "https://files.pythonhosted.org/packages/36/c4/ed00ed32f1040f7990dac7115f82273e3c03da1e1a1587a778d8cea496d8/bcrypt-5.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:f0ce778135f60799d89c9693b9b398819d15f1921ba15fe719acb3178215a7db", size = 276084, upload-time = "2025-09-25T19:50:16.699Z" }, + { url = "https://files.pythonhosted.org/packages/e7/c4/fa6e16145e145e87f1fa351bbd54b429354fd72145cd3d4e0c5157cf4c70/bcrypt-5.0.0-cp39-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a71f70ee269671460b37a449f5ff26982a6f2ba493b3eabdd687b4bf35f875ac", size = 297185, upload-time = "2025-09-25T19:50:18.525Z" }, + { url = "https://files.pythonhosted.org/packages/24/b4/11f8a31d8b67cca3371e046db49baa7c0594d71eb40ac8121e2fc0888db0/bcrypt-5.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8429e1c410b4073944f03bd778a9e066e7fad723564a52ff91841d278dfc822", size = 278656, upload-time = "2025-09-25T19:50:19.809Z" }, + { url = "https://files.pythonhosted.org/packages/ac/31/79f11865f8078e192847d2cb526e3fa27c200933c982c5b2869720fa5fce/bcrypt-5.0.0-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:edfcdcedd0d0f05850c52ba3127b1fce70b9f89e0fe5ff16517df7e81fa3cbb8", size = 275662, upload-time = "2025-09-25T19:50:21.567Z" }, + { url = "https://files.pythonhosted.org/packages/d4/8d/5e43d9584b3b3591a6f9b68f755a4da879a59712981ef5ad2a0ac1379f7a/bcrypt-5.0.0-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:611f0a17aa4a25a69362dcc299fda5c8a3d4f160e2abb3831041feb77393a14a", size = 278240, upload-time = "2025-09-25T19:50:23.305Z" }, + { url = "https://files.pythonhosted.org/packages/89/48/44590e3fc158620f680a978aafe8f87a4c4320da81ed11552f0323aa9a57/bcrypt-5.0.0-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:db99dca3b1fdc3db87d7c57eac0c82281242d1eabf19dcb8a6b10eb29a2e72d1", size = 311152, upload-time = "2025-09-25T19:50:24.597Z" }, + { url = "https://files.pythonhosted.org/packages/5f/85/e4fbfc46f14f47b0d20493669a625da5827d07e8a88ee460af6cd9768b44/bcrypt-5.0.0-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:5feebf85a9cefda32966d8171f5db7e3ba964b77fdfe31919622256f80f9cf42", size = 313284, upload-time = "2025-09-25T19:50:26.268Z" }, + { url = "https://files.pythonhosted.org/packages/25/ae/479f81d3f4594456a01ea2f05b132a519eff9ab5768a70430fa1132384b1/bcrypt-5.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3ca8a166b1140436e058298a34d88032ab62f15aae1c598580333dc21d27ef10", size = 341643, upload-time = "2025-09-25T19:50:28.02Z" }, + { url = "https://files.pythonhosted.org/packages/df/d2/36a086dee1473b14276cd6ea7f61aef3b2648710b5d7f1c9e032c29b859f/bcrypt-5.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:61afc381250c3182d9078551e3ac3a41da14154fbff647ddf52a769f588c4172", size = 359698, upload-time = "2025-09-25T19:50:31.347Z" }, + { url = "https://files.pythonhosted.org/packages/c0/f6/688d2cd64bfd0b14d805ddb8a565e11ca1fb0fd6817175d58b10052b6d88/bcrypt-5.0.0-cp39-abi3-win32.whl", hash = "sha256:64d7ce196203e468c457c37ec22390f1a61c85c6f0b8160fd752940ccfb3a683", size = 153725, upload-time = "2025-09-25T19:50:34.384Z" }, + { url = "https://files.pythonhosted.org/packages/9f/b9/9d9a641194a730bda138b3dfe53f584d61c58cd5230e37566e83ec2ffa0d/bcrypt-5.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:64ee8434b0da054d830fa8e89e1c8bf30061d539044a39524ff7dec90481e5c2", size = 150912, upload-time = "2025-09-25T19:50:35.69Z" }, + { url = "https://files.pythonhosted.org/packages/27/44/d2ef5e87509158ad2187f4dd0852df80695bb1ee0cfe0a684727b01a69e0/bcrypt-5.0.0-cp39-abi3-win_arm64.whl", hash = "sha256:f2347d3534e76bf50bca5500989d6c1d05ed64b440408057a37673282c654927", size = 144953, upload-time = "2025-09-25T19:50:37.32Z" }, +] + +[[package]] +name = "beautifulsoup4" +version = "4.14.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "soupsieve" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c3/b0/1c6a16426d389813b48d95e26898aff79abbde42ad353958ad95cc8c9b21/beautifulsoup4-4.14.3.tar.gz", hash = "sha256:6292b1c5186d356bba669ef9f7f051757099565ad9ada5dd630bd9de5fa7fb86", size = 627737, upload-time = "2025-11-30T15:08:26.084Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1a/39/47f9197bdd44df24d67ac8893641e16f386c984a0619ef2ee4c51fbbc019/beautifulsoup4-4.14.3-py3-none-any.whl", hash = "sha256:0918bfe44902e6ad8d57732ba310582e98da931428d231a5ecb9e7c703a735bb", size = 107721, upload-time = "2025-11-30T15:08:24.087Z" }, +] + +[[package]] +name = "blinker" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/21/28/9b3f50ce0e048515135495f198351908d99540d69bfdc8c1d15b73dc55ce/blinker-1.9.0.tar.gz", hash = "sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf", size = 22460, upload-time = "2024-11-08T17:25:47.436Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc", size = 8458, upload-time = "2024-11-08T17:25:46.184Z" }, +] + +[[package]] +name = "build" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "os_name == 'nt'" }, + { name = "packaging" }, + { name = "pyproject-hooks" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/42/18/94eaffda7b329535d91f00fe605ab1f1e5cd68b2074d03f255c7d250687d/build-1.4.0.tar.gz", hash = "sha256:f1b91b925aa322be454f8330c6fb48b465da993d1e7e7e6fa35027ec49f3c936", size = 50054, upload-time = "2026-01-08T16:41:47.696Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c5/0d/84a4380f930db0010168e0aa7b7a8fed9ba1835a8fbb1472bc6d0201d529/build-1.4.0-py3-none-any.whl", hash = "sha256:6a07c1b8eb6f2b311b96fcbdbce5dab5fe637ffda0fd83c9cac622e927501596", size = 24141, upload-time = "2026-01-08T16:41:46.453Z" }, +] + +[[package]] +name = "cachetools" +version = "6.2.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/39/91/d9ae9a66b01102a18cd16db0cf4cd54187ffe10f0865cc80071a4104fbb3/cachetools-6.2.6.tar.gz", hash = "sha256:16c33e1f276b9a9c0b49ab5782d901e3ad3de0dd6da9bf9bcd29ac5672f2f9e6", size = 32363, upload-time = "2026-01-27T20:32:59.956Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/90/45/f458fa2c388e79dd9d8b9b0c99f1d31b568f27388f2fdba7bb66bbc0c6ed/cachetools-6.2.6-py3-none-any.whl", hash = "sha256:8c9717235b3c651603fff0076db52d6acbfd1b338b8ed50256092f7ce9c85bda", size = 11668, upload-time = "2026-01-27T20:32:58.527Z" }, +] + +[[package]] +name = "certifi" +version = "2026.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e0/2d/a891ca51311197f6ad14a7ef42e2399f36cf2f9bd44752b3dc4eab60fdc5/certifi-2026.1.4.tar.gz", hash = "sha256:ac726dd470482006e014ad384921ed6438c457018f4b3d204aea4281258b2120", size = 154268, upload-time = "2026-01-04T02:42:41.825Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/ad/3cc14f097111b4de0040c83a525973216457bbeeb63739ef1ed275c1c021/certifi-2026.1.4-py3-none-any.whl", hash = "sha256:9943707519e4add1115f44c2bc244f782c0249876bf51b6599fee1ffbedd685c", size = 152900, upload-time = "2026-01-04T02:42:40.15Z" }, +] + +[[package]] +name = "cffi" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pycparser", marker = "implementation_name != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8453301356628e8147c79dbb825bcbc73dc7401f9846/cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529", size = 523588, upload-time = "2025-09-08T23:24:04.541Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ea/47/4f61023ea636104d4f16ab488e268b93008c3d0bb76893b1b31db1f96802/cffi-2.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6d02d6655b0e54f54c4ef0b94eb6be0607b70853c45ce98bd278dc7de718be5d", size = 185271, upload-time = "2025-09-08T23:22:44.795Z" }, + { url = "https://files.pythonhosted.org/packages/df/a2/781b623f57358e360d62cdd7a8c681f074a71d445418a776eef0aadb4ab4/cffi-2.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:8eca2a813c1cb7ad4fb74d368c2ffbbb4789d377ee5bb8df98373c2cc0dee76c", size = 181048, upload-time = "2025-09-08T23:22:45.938Z" }, + { url = "https://files.pythonhosted.org/packages/ff/df/a4f0fbd47331ceeba3d37c2e51e9dfc9722498becbeec2bd8bc856c9538a/cffi-2.0.0-cp312-cp312-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:21d1152871b019407d8ac3985f6775c079416c282e431a4da6afe7aefd2bccbe", size = 212529, upload-time = "2025-09-08T23:22:47.349Z" }, + { url = "https://files.pythonhosted.org/packages/d5/72/12b5f8d3865bf0f87cf1404d8c374e7487dcf097a1c91c436e72e6badd83/cffi-2.0.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:b21e08af67b8a103c71a250401c78d5e0893beff75e28c53c98f4de42f774062", size = 220097, upload-time = "2025-09-08T23:22:48.677Z" }, + { url = "https://files.pythonhosted.org/packages/c2/95/7a135d52a50dfa7c882ab0ac17e8dc11cec9d55d2c18dda414c051c5e69e/cffi-2.0.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:1e3a615586f05fc4065a8b22b8152f0c1b00cdbc60596d187c2a74f9e3036e4e", size = 207983, upload-time = "2025-09-08T23:22:50.06Z" }, + { url = "https://files.pythonhosted.org/packages/3a/c8/15cb9ada8895957ea171c62dc78ff3e99159ee7adb13c0123c001a2546c1/cffi-2.0.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:81afed14892743bbe14dacb9e36d9e0e504cd204e0b165062c488942b9718037", size = 206519, upload-time = "2025-09-08T23:22:51.364Z" }, + { url = "https://files.pythonhosted.org/packages/78/2d/7fa73dfa841b5ac06c7b8855cfc18622132e365f5b81d02230333ff26e9e/cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3e17ed538242334bf70832644a32a7aae3d83b57567f9fd60a26257e992b79ba", size = 219572, upload-time = "2025-09-08T23:22:52.902Z" }, + { url = "https://files.pythonhosted.org/packages/07/e0/267e57e387b4ca276b90f0434ff88b2c2241ad72b16d31836adddfd6031b/cffi-2.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3925dd22fa2b7699ed2617149842d2e6adde22b262fcbfada50e3d195e4b3a94", size = 222963, upload-time = "2025-09-08T23:22:54.518Z" }, + { url = "https://files.pythonhosted.org/packages/b6/75/1f2747525e06f53efbd878f4d03bac5b859cbc11c633d0fb81432d98a795/cffi-2.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2c8f814d84194c9ea681642fd164267891702542f028a15fc97d4674b6206187", size = 221361, upload-time = "2025-09-08T23:22:55.867Z" }, + { url = "https://files.pythonhosted.org/packages/7b/2b/2b6435f76bfeb6bbf055596976da087377ede68df465419d192acf00c437/cffi-2.0.0-cp312-cp312-win32.whl", hash = "sha256:da902562c3e9c550df360bfa53c035b2f241fed6d9aef119048073680ace4a18", size = 172932, upload-time = "2025-09-08T23:22:57.188Z" }, + { url = "https://files.pythonhosted.org/packages/f8/ed/13bd4418627013bec4ed6e54283b1959cf6db888048c7cf4b4c3b5b36002/cffi-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:da68248800ad6320861f129cd9c1bf96ca849a2771a59e0344e88681905916f5", size = 183557, upload-time = "2025-09-08T23:22:58.351Z" }, + { url = "https://files.pythonhosted.org/packages/95/31/9f7f93ad2f8eff1dbc1c3656d7ca5bfd8fb52c9d786b4dcf19b2d02217fa/cffi-2.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:4671d9dd5ec934cb9a73e7ee9676f9362aba54f7f34910956b84d727b0d73fb6", size = 177762, upload-time = "2025-09-08T23:22:59.668Z" }, + { url = "https://files.pythonhosted.org/packages/4b/8d/a0a47a0c9e413a658623d014e91e74a50cdd2c423f7ccfd44086ef767f90/cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb", size = 185230, upload-time = "2025-09-08T23:23:00.879Z" }, + { url = "https://files.pythonhosted.org/packages/4a/d2/a6c0296814556c68ee32009d9c2ad4f85f2707cdecfd7727951ec228005d/cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca", size = 181043, upload-time = "2025-09-08T23:23:02.231Z" }, + { url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446, upload-time = "2025-09-08T23:23:03.472Z" }, + { url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101, upload-time = "2025-09-08T23:23:04.792Z" }, + { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948, upload-time = "2025-09-08T23:23:06.127Z" }, + { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422, upload-time = "2025-09-08T23:23:07.753Z" }, + { url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499, upload-time = "2025-09-08T23:23:09.648Z" }, + { url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928, upload-time = "2025-09-08T23:23:10.928Z" }, + { url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302, upload-time = "2025-09-08T23:23:12.42Z" }, + { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909, upload-time = "2025-09-08T23:23:14.32Z" }, + { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402, upload-time = "2025-09-08T23:23:15.535Z" }, + { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780, upload-time = "2025-09-08T23:23:16.761Z" }, + { url = "https://files.pythonhosted.org/packages/92/c4/3ce07396253a83250ee98564f8d7e9789fab8e58858f35d07a9a2c78de9f/cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5", size = 185320, upload-time = "2025-09-08T23:23:18.087Z" }, + { url = "https://files.pythonhosted.org/packages/59/dd/27e9fa567a23931c838c6b02d0764611c62290062a6d4e8ff7863daf9730/cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13", size = 181487, upload-time = "2025-09-08T23:23:19.622Z" }, + { url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049, upload-time = "2025-09-08T23:23:20.853Z" }, + { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793, upload-time = "2025-09-08T23:23:22.08Z" }, + { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300, upload-time = "2025-09-08T23:23:23.314Z" }, + { url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244, upload-time = "2025-09-08T23:23:24.541Z" }, + { url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828, upload-time = "2025-09-08T23:23:26.143Z" }, + { url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926, upload-time = "2025-09-08T23:23:27.873Z" }, + { url = "https://files.pythonhosted.org/packages/3e/aa/df335faa45b395396fcbc03de2dfcab242cd61a9900e914fe682a59170b1/cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f", size = 175328, upload-time = "2025-09-08T23:23:44.61Z" }, + { url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25", size = 185650, upload-time = "2025-09-08T23:23:45.848Z" }, + { url = "https://files.pythonhosted.org/packages/9f/2c/98ece204b9d35a7366b5b2c6539c350313ca13932143e79dc133ba757104/cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad", size = 180687, upload-time = "2025-09-08T23:23:47.105Z" }, + { url = "https://files.pythonhosted.org/packages/3e/61/c768e4d548bfa607abcda77423448df8c471f25dbe64fb2ef6d555eae006/cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9", size = 188773, upload-time = "2025-09-08T23:23:29.347Z" }, + { url = "https://files.pythonhosted.org/packages/2c/ea/5f76bce7cf6fcd0ab1a1058b5af899bfbef198bea4d5686da88471ea0336/cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d", size = 185013, upload-time = "2025-09-08T23:23:30.63Z" }, + { url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593, upload-time = "2025-09-08T23:23:31.91Z" }, + { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354, upload-time = "2025-09-08T23:23:33.214Z" }, + { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480, upload-time = "2025-09-08T23:23:34.495Z" }, + { url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584, upload-time = "2025-09-08T23:23:36.096Z" }, + { url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443, upload-time = "2025-09-08T23:23:37.328Z" }, + { url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437, upload-time = "2025-09-08T23:23:38.945Z" }, + { url = "https://files.pythonhosted.org/packages/a0/1d/ec1a60bd1a10daa292d3cd6bb0b359a81607154fb8165f3ec95fe003b85c/cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e", size = 180487, upload-time = "2025-09-08T23:23:40.423Z" }, + { url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6", size = 191726, upload-time = "2025-09-08T23:23:41.742Z" }, + { url = "https://files.pythonhosted.org/packages/ae/3a/dbeec9d1ee0844c679f6bb5d6ad4e9f198b1224f4e7a32825f47f6192b0c/cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9", size = 184195, upload-time = "2025-09-08T23:23:43.004Z" }, +] + +[[package]] +name = "cfgv" +version = "3.5.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/4e/b5/721b8799b04bf9afe054a3899c6cf4e880fcf8563cc71c15610242490a0c/cfgv-3.5.0.tar.gz", hash = "sha256:d5b1034354820651caa73ede66a6294d6e95c1b00acc5e9b098e917404669132", size = 7334, upload-time = "2025-11-19T20:55:51.612Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl", hash = "sha256:a8dc6b26ad22ff227d2634a65cb388215ce6cc96bbcc5cfde7641ae87e8dacc0", size = 7445, upload-time = "2025-11-19T20:55:50.744Z" }, +] + +[[package]] +name = "charset-normalizer" +version = "3.4.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/13/69/33ddede1939fdd074bce5434295f38fae7136463422fe4fd3e0e89b98062/charset_normalizer-3.4.4.tar.gz", hash = "sha256:94537985111c35f28720e43603b8e7b43a6ecfb2ce1d3058bbe955b73404e21a", size = 129418, upload-time = "2025-10-14T04:42:32.879Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f3/85/1637cd4af66fa687396e757dec650f28025f2a2f5a5531a3208dc0ec43f2/charset_normalizer-3.4.4-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:0a98e6759f854bd25a58a73fa88833fba3b7c491169f86ce1180c948ab3fd394", size = 208425, upload-time = "2025-10-14T04:40:53.353Z" }, + { url = "https://files.pythonhosted.org/packages/9d/6a/04130023fef2a0d9c62d0bae2649b69f7b7d8d24ea5536feef50551029df/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b5b290ccc2a263e8d185130284f8501e3e36c5e02750fc6b6bdeb2e9e96f1e25", size = 148162, upload-time = "2025-10-14T04:40:54.558Z" }, + { url = "https://files.pythonhosted.org/packages/78/29/62328d79aa60da22c9e0b9a66539feae06ca0f5a4171ac4f7dc285b83688/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74bb723680f9f7a6234dcf67aea57e708ec1fbdf5699fb91dfd6f511b0a320ef", size = 144558, upload-time = "2025-10-14T04:40:55.677Z" }, + { url = "https://files.pythonhosted.org/packages/86/bb/b32194a4bf15b88403537c2e120b817c61cd4ecffa9b6876e941c3ee38fe/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f1e34719c6ed0b92f418c7c780480b26b5d9c50349e9a9af7d76bf757530350d", size = 161497, upload-time = "2025-10-14T04:40:57.217Z" }, + { url = "https://files.pythonhosted.org/packages/19/89/a54c82b253d5b9b111dc74aca196ba5ccfcca8242d0fb64146d4d3183ff1/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2437418e20515acec67d86e12bf70056a33abdacb5cb1655042f6538d6b085a8", size = 159240, upload-time = "2025-10-14T04:40:58.358Z" }, + { url = "https://files.pythonhosted.org/packages/c0/10/d20b513afe03acc89ec33948320a5544d31f21b05368436d580dec4e234d/charset_normalizer-3.4.4-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11d694519d7f29d6cd09f6ac70028dba10f92f6cdd059096db198c283794ac86", size = 153471, upload-time = "2025-10-14T04:40:59.468Z" }, + { url = "https://files.pythonhosted.org/packages/61/fa/fbf177b55bdd727010f9c0a3c49eefa1d10f960e5f09d1d887bf93c2e698/charset_normalizer-3.4.4-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:ac1c4a689edcc530fc9d9aa11f5774b9e2f33f9a0c6a57864e90908f5208d30a", size = 150864, upload-time = "2025-10-14T04:41:00.623Z" }, + { url = "https://files.pythonhosted.org/packages/05/12/9fbc6a4d39c0198adeebbde20b619790e9236557ca59fc40e0e3cebe6f40/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:21d142cc6c0ec30d2efee5068ca36c128a30b0f2c53c1c07bd78cb6bc1d3be5f", size = 150647, upload-time = "2025-10-14T04:41:01.754Z" }, + { url = "https://files.pythonhosted.org/packages/ad/1f/6a9a593d52e3e8c5d2b167daf8c6b968808efb57ef4c210acb907c365bc4/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:5dbe56a36425d26d6cfb40ce79c314a2e4dd6211d51d6d2191c00bed34f354cc", size = 145110, upload-time = "2025-10-14T04:41:03.231Z" }, + { url = "https://files.pythonhosted.org/packages/30/42/9a52c609e72471b0fc54386dc63c3781a387bb4fe61c20231a4ebcd58bdd/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:5bfbb1b9acf3334612667b61bd3002196fe2a1eb4dd74d247e0f2a4d50ec9bbf", size = 162839, upload-time = "2025-10-14T04:41:04.715Z" }, + { url = "https://files.pythonhosted.org/packages/c4/5b/c0682bbf9f11597073052628ddd38344a3d673fda35a36773f7d19344b23/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:d055ec1e26e441f6187acf818b73564e6e6282709e9bcb5b63f5b23068356a15", size = 150667, upload-time = "2025-10-14T04:41:05.827Z" }, + { url = "https://files.pythonhosted.org/packages/e4/24/a41afeab6f990cf2daf6cb8c67419b63b48cf518e4f56022230840c9bfb2/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:af2d8c67d8e573d6de5bc30cdb27e9b95e49115cd9baad5ddbd1a6207aaa82a9", size = 160535, upload-time = "2025-10-14T04:41:06.938Z" }, + { url = "https://files.pythonhosted.org/packages/2a/e5/6a4ce77ed243c4a50a1fecca6aaaab419628c818a49434be428fe24c9957/charset_normalizer-3.4.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:780236ac706e66881f3b7f2f32dfe90507a09e67d1d454c762cf642e6e1586e0", size = 154816, upload-time = "2025-10-14T04:41:08.101Z" }, + { url = "https://files.pythonhosted.org/packages/a8/ef/89297262b8092b312d29cdb2517cb1237e51db8ecef2e9af5edbe7b683b1/charset_normalizer-3.4.4-cp312-cp312-win32.whl", hash = "sha256:5833d2c39d8896e4e19b689ffc198f08ea58116bee26dea51e362ecc7cd3ed26", size = 99694, upload-time = "2025-10-14T04:41:09.23Z" }, + { url = "https://files.pythonhosted.org/packages/3d/2d/1e5ed9dd3b3803994c155cd9aacb60c82c331bad84daf75bcb9c91b3295e/charset_normalizer-3.4.4-cp312-cp312-win_amd64.whl", hash = "sha256:a79cfe37875f822425b89a82333404539ae63dbdddf97f84dcbc3d339aae9525", size = 107131, upload-time = "2025-10-14T04:41:10.467Z" }, + { url = "https://files.pythonhosted.org/packages/d0/d9/0ed4c7098a861482a7b6a95603edce4c0d9db2311af23da1fb2b75ec26fc/charset_normalizer-3.4.4-cp312-cp312-win_arm64.whl", hash = "sha256:376bec83a63b8021bb5c8ea75e21c4ccb86e7e45ca4eb81146091b56599b80c3", size = 100390, upload-time = "2025-10-14T04:41:11.915Z" }, + { url = "https://files.pythonhosted.org/packages/97/45/4b3a1239bbacd321068ea6e7ac28875b03ab8bc0aa0966452db17cd36714/charset_normalizer-3.4.4-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:e1f185f86a6f3403aa2420e815904c67b2f9ebc443f045edd0de921108345794", size = 208091, upload-time = "2025-10-14T04:41:13.346Z" }, + { url = "https://files.pythonhosted.org/packages/7d/62/73a6d7450829655a35bb88a88fca7d736f9882a27eacdca2c6d505b57e2e/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b39f987ae8ccdf0d2642338faf2abb1862340facc796048b604ef14919e55ed", size = 147936, upload-time = "2025-10-14T04:41:14.461Z" }, + { url = "https://files.pythonhosted.org/packages/89/c5/adb8c8b3d6625bef6d88b251bbb0d95f8205831b987631ab0c8bb5d937c2/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3162d5d8ce1bb98dd51af660f2121c55d0fa541b46dff7bb9b9f86ea1d87de72", size = 144180, upload-time = "2025-10-14T04:41:15.588Z" }, + { url = "https://files.pythonhosted.org/packages/91/ed/9706e4070682d1cc219050b6048bfd293ccf67b3d4f5a4f39207453d4b99/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:81d5eb2a312700f4ecaa977a8235b634ce853200e828fbadf3a9c50bab278328", size = 161346, upload-time = "2025-10-14T04:41:16.738Z" }, + { url = "https://files.pythonhosted.org/packages/d5/0d/031f0d95e4972901a2f6f09ef055751805ff541511dc1252ba3ca1f80cf5/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5bd2293095d766545ec1a8f612559f6b40abc0eb18bb2f5d1171872d34036ede", size = 158874, upload-time = "2025-10-14T04:41:17.923Z" }, + { url = "https://files.pythonhosted.org/packages/f5/83/6ab5883f57c9c801ce5e5677242328aa45592be8a00644310a008d04f922/charset_normalizer-3.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a8a8b89589086a25749f471e6a900d3f662d1d3b6e2e59dcecf787b1cc3a1894", size = 153076, upload-time = "2025-10-14T04:41:19.106Z" }, + { url = "https://files.pythonhosted.org/packages/75/1e/5ff781ddf5260e387d6419959ee89ef13878229732732ee73cdae01800f2/charset_normalizer-3.4.4-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:bc7637e2f80d8530ee4a78e878bce464f70087ce73cf7c1caf142416923b98f1", size = 150601, upload-time = "2025-10-14T04:41:20.245Z" }, + { url = "https://files.pythonhosted.org/packages/d7/57/71be810965493d3510a6ca79b90c19e48696fb1ff964da319334b12677f0/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f8bf04158c6b607d747e93949aa60618b61312fe647a6369f88ce2ff16043490", size = 150376, upload-time = "2025-10-14T04:41:21.398Z" }, + { url = "https://files.pythonhosted.org/packages/e5/d5/c3d057a78c181d007014feb7e9f2e65905a6c4ef182c0ddf0de2924edd65/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:554af85e960429cf30784dd47447d5125aaa3b99a6f0683589dbd27e2f45da44", size = 144825, upload-time = "2025-10-14T04:41:22.583Z" }, + { url = "https://files.pythonhosted.org/packages/e6/8c/d0406294828d4976f275ffbe66f00266c4b3136b7506941d87c00cab5272/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:74018750915ee7ad843a774364e13a3db91682f26142baddf775342c3f5b1133", size = 162583, upload-time = "2025-10-14T04:41:23.754Z" }, + { url = "https://files.pythonhosted.org/packages/d7/24/e2aa1f18c8f15c4c0e932d9287b8609dd30ad56dbe41d926bd846e22fb8d/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:c0463276121fdee9c49b98908b3a89c39be45d86d1dbaa22957e38f6321d4ce3", size = 150366, upload-time = "2025-10-14T04:41:25.27Z" }, + { url = "https://files.pythonhosted.org/packages/e4/5b/1e6160c7739aad1e2df054300cc618b06bf784a7a164b0f238360721ab86/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:362d61fd13843997c1c446760ef36f240cf81d3ebf74ac62652aebaf7838561e", size = 160300, upload-time = "2025-10-14T04:41:26.725Z" }, + { url = "https://files.pythonhosted.org/packages/7a/10/f882167cd207fbdd743e55534d5d9620e095089d176d55cb22d5322f2afd/charset_normalizer-3.4.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9a26f18905b8dd5d685d6d07b0cdf98a79f3c7a918906af7cc143ea2e164c8bc", size = 154465, upload-time = "2025-10-14T04:41:28.322Z" }, + { url = "https://files.pythonhosted.org/packages/89/66/c7a9e1b7429be72123441bfdbaf2bc13faab3f90b933f664db506dea5915/charset_normalizer-3.4.4-cp313-cp313-win32.whl", hash = "sha256:9b35f4c90079ff2e2edc5b26c0c77925e5d2d255c42c74fdb70fb49b172726ac", size = 99404, upload-time = "2025-10-14T04:41:29.95Z" }, + { url = "https://files.pythonhosted.org/packages/c4/26/b9924fa27db384bdcd97ab83b4f0a8058d96ad9626ead570674d5e737d90/charset_normalizer-3.4.4-cp313-cp313-win_amd64.whl", hash = "sha256:b435cba5f4f750aa6c0a0d92c541fb79f69a387c91e61f1795227e4ed9cece14", size = 107092, upload-time = "2025-10-14T04:41:31.188Z" }, + { url = "https://files.pythonhosted.org/packages/af/8f/3ed4bfa0c0c72a7ca17f0380cd9e4dd842b09f664e780c13cff1dcf2ef1b/charset_normalizer-3.4.4-cp313-cp313-win_arm64.whl", hash = "sha256:542d2cee80be6f80247095cc36c418f7bddd14f4a6de45af91dfad36d817bba2", size = 100408, upload-time = "2025-10-14T04:41:32.624Z" }, + { url = "https://files.pythonhosted.org/packages/2a/35/7051599bd493e62411d6ede36fd5af83a38f37c4767b92884df7301db25d/charset_normalizer-3.4.4-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:da3326d9e65ef63a817ecbcc0df6e94463713b754fe293eaa03da99befb9a5bd", size = 207746, upload-time = "2025-10-14T04:41:33.773Z" }, + { url = "https://files.pythonhosted.org/packages/10/9a/97c8d48ef10d6cd4fcead2415523221624bf58bcf68a802721a6bc807c8f/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8af65f14dc14a79b924524b1e7fffe304517b2bff5a58bf64f30b98bbc5079eb", size = 147889, upload-time = "2025-10-14T04:41:34.897Z" }, + { url = "https://files.pythonhosted.org/packages/10/bf/979224a919a1b606c82bd2c5fa49b5c6d5727aa47b4312bb27b1734f53cd/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:74664978bb272435107de04e36db5a9735e78232b85b77d45cfb38f758efd33e", size = 143641, upload-time = "2025-10-14T04:41:36.116Z" }, + { url = "https://files.pythonhosted.org/packages/ba/33/0ad65587441fc730dc7bd90e9716b30b4702dc7b617e6ba4997dc8651495/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:752944c7ffbfdd10c074dc58ec2d5a8a4cd9493b314d367c14d24c17684ddd14", size = 160779, upload-time = "2025-10-14T04:41:37.229Z" }, + { url = "https://files.pythonhosted.org/packages/67/ed/331d6b249259ee71ddea93f6f2f0a56cfebd46938bde6fcc6f7b9a3d0e09/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d1f13550535ad8cff21b8d757a3257963e951d96e20ec82ab44bc64aeb62a191", size = 159035, upload-time = "2025-10-14T04:41:38.368Z" }, + { url = "https://files.pythonhosted.org/packages/67/ff/f6b948ca32e4f2a4576aa129d8bed61f2e0543bf9f5f2b7fc3758ed005c9/charset_normalizer-3.4.4-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ecaae4149d99b1c9e7b88bb03e3221956f68fd6d50be2ef061b2381b61d20838", size = 152542, upload-time = "2025-10-14T04:41:39.862Z" }, + { url = "https://files.pythonhosted.org/packages/16/85/276033dcbcc369eb176594de22728541a925b2632f9716428c851b149e83/charset_normalizer-3.4.4-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:cb6254dc36b47a990e59e1068afacdcd02958bdcce30bb50cc1700a8b9d624a6", size = 149524, upload-time = "2025-10-14T04:41:41.319Z" }, + { url = "https://files.pythonhosted.org/packages/9e/f2/6a2a1f722b6aba37050e626530a46a68f74e63683947a8acff92569f979a/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c8ae8a0f02f57a6e61203a31428fa1d677cbe50c93622b4149d5c0f319c1d19e", size = 150395, upload-time = "2025-10-14T04:41:42.539Z" }, + { url = "https://files.pythonhosted.org/packages/60/bb/2186cb2f2bbaea6338cad15ce23a67f9b0672929744381e28b0592676824/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:47cc91b2f4dd2833fddaedd2893006b0106129d4b94fdb6af1f4ce5a9965577c", size = 143680, upload-time = "2025-10-14T04:41:43.661Z" }, + { url = "https://files.pythonhosted.org/packages/7d/a5/bf6f13b772fbb2a90360eb620d52ed8f796f3c5caee8398c3b2eb7b1c60d/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:82004af6c302b5d3ab2cfc4cc5f29db16123b1a8417f2e25f9066f91d4411090", size = 162045, upload-time = "2025-10-14T04:41:44.821Z" }, + { url = "https://files.pythonhosted.org/packages/df/c5/d1be898bf0dc3ef9030c3825e5d3b83f2c528d207d246cbabe245966808d/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:2b7d8f6c26245217bd2ad053761201e9f9680f8ce52f0fcd8d0755aeae5b2152", size = 149687, upload-time = "2025-10-14T04:41:46.442Z" }, + { url = "https://files.pythonhosted.org/packages/a5/42/90c1f7b9341eef50c8a1cb3f098ac43b0508413f33affd762855f67a410e/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:799a7a5e4fb2d5898c60b640fd4981d6a25f1c11790935a44ce38c54e985f828", size = 160014, upload-time = "2025-10-14T04:41:47.631Z" }, + { url = "https://files.pythonhosted.org/packages/76/be/4d3ee471e8145d12795ab655ece37baed0929462a86e72372fd25859047c/charset_normalizer-3.4.4-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:99ae2cffebb06e6c22bdc25801d7b30f503cc87dbd283479e7b606f70aff57ec", size = 154044, upload-time = "2025-10-14T04:41:48.81Z" }, + { url = "https://files.pythonhosted.org/packages/b0/6f/8f7af07237c34a1defe7defc565a9bc1807762f672c0fde711a4b22bf9c0/charset_normalizer-3.4.4-cp314-cp314-win32.whl", hash = "sha256:f9d332f8c2a2fcbffe1378594431458ddbef721c1769d78e2cbc06280d8155f9", size = 99940, upload-time = "2025-10-14T04:41:49.946Z" }, + { url = "https://files.pythonhosted.org/packages/4b/51/8ade005e5ca5b0d80fb4aff72a3775b325bdc3d27408c8113811a7cbe640/charset_normalizer-3.4.4-cp314-cp314-win_amd64.whl", hash = "sha256:8a6562c3700cce886c5be75ade4a5db4214fda19fede41d9792d100288d8f94c", size = 107104, upload-time = "2025-10-14T04:41:51.051Z" }, + { url = "https://files.pythonhosted.org/packages/da/5f/6b8f83a55bb8278772c5ae54a577f3099025f9ade59d0136ac24a0df4bde/charset_normalizer-3.4.4-cp314-cp314-win_arm64.whl", hash = "sha256:de00632ca48df9daf77a2c65a484531649261ec9f25489917f09e455cb09ddb2", size = 100743, upload-time = "2025-10-14T04:41:52.122Z" }, + { url = "https://files.pythonhosted.org/packages/0a/4c/925909008ed5a988ccbb72dcc897407e5d6d3bd72410d69e051fc0c14647/charset_normalizer-3.4.4-py3-none-any.whl", hash = "sha256:7a32c560861a02ff789ad905a2fe94e3f840803362c84fecf1851cb4cf3dc37f", size = 53402, upload-time = "2025-10-14T04:42:31.76Z" }, +] + +[[package]] +name = "chromadb" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "bcrypt" }, + { name = "build" }, + { name = "grpcio" }, + { name = "httpx" }, + { name = "importlib-resources" }, + { name = "jsonschema" }, + { name = "kubernetes" }, + { name = "mmh3" }, + { name = "numpy" }, + { name = "onnxruntime" }, + { name = "opentelemetry-api" }, + { name = "opentelemetry-exporter-otlp-proto-grpc" }, + { name = "opentelemetry-sdk" }, + { name = "orjson" }, + { name = "overrides" }, + { name = "posthog" }, + { name = "pybase64" }, + { name = "pydantic" }, + { name = "pypika" }, + { name = "pyyaml" }, + { name = "rich" }, + { name = "tenacity" }, + { name = "tokenizers" }, + { name = "tqdm" }, + { name = "typer" }, + { name = "typing-extensions" }, + { name = "uvicorn", extra = ["standard"] }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7f/48/11851dddeadad6abe36ee071fedc99b5bdd2c324df3afa8cb952ae02798b/chromadb-1.1.1.tar.gz", hash = "sha256:ebfce0122753e306a76f1e291d4ddaebe5f01b5979b97ae0bc80b1d4024ff223", size = 1338109, upload-time = "2025-10-05T02:49:14.834Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/39/59/0d881a9b7eb63d8d2446cf67fcbb53fb8ae34991759d2b6024a067e90a9a/chromadb-1.1.1-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:27fe0e25ef0f83fb09c30355ab084fe6f246808a7ea29e8c19e85cf45785b90d", size = 19175479, upload-time = "2025-10-05T02:49:12.525Z" }, + { url = "https://files.pythonhosted.org/packages/94/4f/5a9fa317c84c98e70af48f74b00aa25589626c03a0428b4381b2095f3d73/chromadb-1.1.1-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:95aed58869683f12e7dcbf68b039fe5f576dbe9d1b86b8f4d014c9d077ccafd2", size = 18267188, upload-time = "2025-10-05T02:49:09.236Z" }, + { url = "https://files.pythonhosted.org/packages/45/1a/02defe2f1c8d1daedb084bbe85f5b6083510a3ba192ed57797a3649a4310/chromadb-1.1.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06776dad41389a00e7d63d936c3a15c179d502becaf99f75745ee11b062c9b6a", size = 18855754, upload-time = "2025-10-05T02:49:03.299Z" }, + { url = "https://files.pythonhosted.org/packages/5a/0d/80be82717e5dc19839af24558494811b6f2af2b261a8f21c51b872193b09/chromadb-1.1.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bba0096a7f5e975875ead23a91c0d41d977fbd3767f60d3305a011b0ace7afd3", size = 19893681, upload-time = "2025-10-05T02:49:06.481Z" }, + { url = "https://files.pythonhosted.org/packages/2d/6e/956e62975305a4e31daf6114a73b3b0683a8f36f8d70b20aabd466770edb/chromadb-1.1.1-cp39-abi3-win_amd64.whl", hash = "sha256:a77aa026a73a18181fd89bbbdb86191c9a82fd42aa0b549ff18d8cae56394c8b", size = 19844042, upload-time = "2025-10-05T02:49:16.925Z" }, +] + +[[package]] +name = "click" +version = "8.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3d/fa/656b739db8587d7b5dfa22e22ed02566950fbfbcdc20311993483657a5c0/click-8.3.1.tar.gz", hash = "sha256:12ff4785d337a1bb490bb7e9c2b1ee5da3112e94a8622f26a6c77f5d2fc6842a", size = 295065, upload-time = "2025-11-15T20:45:42.706Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/98/78/01c019cdb5d6498122777c1a43056ebb3ebfeef2076d9d026bfe15583b2b/click-8.3.1-py3-none-any.whl", hash = "sha256:981153a64e25f12d547d3426c367a4857371575ee7ad18df2a6183ab0545b2a6", size = 108274, upload-time = "2025-11-15T20:45:41.139Z" }, +] + +[[package]] +name = "colorama" +version = "0.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, +] + +[[package]] +name = "coloredlogs" +version = "15.0.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "humanfriendly" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cc/c7/eed8f27100517e8c0e6b923d5f0845d0cb99763da6fdee00478f91db7325/coloredlogs-15.0.1.tar.gz", hash = "sha256:7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0", size = 278520, upload-time = "2021-06-11T10:22:45.202Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl", hash = "sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934", size = 46018, upload-time = "2021-06-11T10:22:42.561Z" }, +] + +[[package]] +name = "crewai" +version = "1.6.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "appdirs" }, + { name = "chromadb" }, + { name = "click" }, + { name = "instructor" }, + { name = "json-repair" }, + { name = "json5" }, + { name = "jsonref" }, + { name = "mcp" }, + { name = "openai" }, + { name = "openpyxl" }, + { name = "opentelemetry-api" }, + { name = "opentelemetry-exporter-otlp-proto-http" }, + { name = "opentelemetry-sdk" }, + { name = "pdfplumber" }, + { name = "portalocker" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pyjwt" }, + { name = "python-dotenv" }, + { name = "regex" }, + { name = "tokenizers" }, + { name = "tomli" }, + { name = "tomli-w" }, + { name = "uv" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1e/c4/37f5e8e0ccb2804a3e2acc0ccf58f82dc9415a08fad71a3868cdf830c669/crewai-1.6.1.tar.gz", hash = "sha256:b7d73a8a333abf71b30ab20c54086004cd0c016dfd86bba9c035ad5eb31e22a7", size = 4177912, upload-time = "2025-11-29T01:58:25.573Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/06/87/8ab9924b79025165ed7f1b04a90f9b80137d18ceae9b8e34445a8495320c/crewai-1.6.1-py3-none-any.whl", hash = "sha256:8cec403ab89183bda28b830c722b6bc22457a2151a6aa46f07730e6fe7ab2723", size = 642861, upload-time = "2025-11-29T01:58:23.232Z" }, +] + +[package.optional-dependencies] +anthropic = [ + { name = "anthropic" }, +] +google-genai = [ + { name = "google-genai" }, +] +tools = [ + { name = "crewai-tools" }, +] + +[[package]] +name = "crewai-tools" +version = "1.6.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "crewai" }, + { name = "docker" }, + { name = "lancedb" }, + { name = "pymupdf" }, + { name = "python-docx" }, + { name = "pytube" }, + { name = "requests" }, + { name = "tiktoken" }, + { name = "youtube-transcript-api" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f4/e2/039d47c1d5266a807c9f4f8d4b927fab1ebfb60989ec6b65fcd88070a510/crewai_tools-1.6.1.tar.gz", hash = "sha256:8724400b85b0a97de09fe681b1d0bf4334e3e68bcf5ede8a056e2beed0227907", size = 805758, upload-time = "2025-11-29T01:58:29.613Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9a/d1/38d0bc01712cf086cd80fe778ed15ff9b57dc5cf4c0b11f1f40d88d4b50a/crewai_tools-1.6.1-py3-none-any.whl", hash = "sha256:62996840db257af9c471f9f4191b4268cb4dd7006b381670b968ac55973e08af", size = 764950, upload-time = "2025-11-29T01:58:27.441Z" }, +] + +[[package]] +name = "cryptography" +version = "46.0.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9f/33/c00162f49c0e2fe8064a62cb92b93e50c74a72bc370ab92f86112b33ff62/cryptography-46.0.3.tar.gz", hash = "sha256:a8b17438104fed022ce745b362294d9ce35b4c2e45c1d958ad4a4b019285f4a1", size = 749258, upload-time = "2025-10-15T23:18:31.74Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1d/42/9c391dd801d6cf0d561b5890549d4b27bafcc53b39c31a817e69d87c625b/cryptography-46.0.3-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:109d4ddfadf17e8e7779c39f9b18111a09efb969a301a31e987416a0191ed93a", size = 7225004, upload-time = "2025-10-15T23:16:52.239Z" }, + { url = "https://files.pythonhosted.org/packages/1c/67/38769ca6b65f07461eb200e85fc1639b438bdc667be02cf7f2cd6a64601c/cryptography-46.0.3-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:09859af8466b69bc3c27bdf4f5d84a665e0f7ab5088412e9e2ec49758eca5cbc", size = 4296667, upload-time = "2025-10-15T23:16:54.369Z" }, + { url = "https://files.pythonhosted.org/packages/5c/49/498c86566a1d80e978b42f0d702795f69887005548c041636df6ae1ca64c/cryptography-46.0.3-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:01ca9ff2885f3acc98c29f1860552e37f6d7c7d013d7334ff2a9de43a449315d", size = 4450807, upload-time = "2025-10-15T23:16:56.414Z" }, + { url = "https://files.pythonhosted.org/packages/4b/0a/863a3604112174c8624a2ac3c038662d9e59970c7f926acdcfaed8d61142/cryptography-46.0.3-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:6eae65d4c3d33da080cff9c4ab1f711b15c1d9760809dad6ea763f3812d254cb", size = 4299615, upload-time = "2025-10-15T23:16:58.442Z" }, + { url = "https://files.pythonhosted.org/packages/64/02/b73a533f6b64a69f3cd3872acb6ebc12aef924d8d103133bb3ea750dc703/cryptography-46.0.3-cp311-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5bf0ed4490068a2e72ac03d786693adeb909981cc596425d09032d372bcc849", size = 4016800, upload-time = "2025-10-15T23:17:00.378Z" }, + { url = "https://files.pythonhosted.org/packages/25/d5/16e41afbfa450cde85a3b7ec599bebefaef16b5c6ba4ec49a3532336ed72/cryptography-46.0.3-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:5ecfccd2329e37e9b7112a888e76d9feca2347f12f37918facbb893d7bb88ee8", size = 4984707, upload-time = "2025-10-15T23:17:01.98Z" }, + { url = "https://files.pythonhosted.org/packages/c9/56/e7e69b427c3878352c2fb9b450bd0e19ed552753491d39d7d0a2f5226d41/cryptography-46.0.3-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:a2c0cd47381a3229c403062f764160d57d4d175e022c1df84e168c6251a22eec", size = 4482541, upload-time = "2025-10-15T23:17:04.078Z" }, + { url = "https://files.pythonhosted.org/packages/78/f6/50736d40d97e8483172f1bb6e698895b92a223dba513b0ca6f06b2365339/cryptography-46.0.3-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:549e234ff32571b1f4076ac269fcce7a808d3bf98b76c8dd560e42dbc66d7d91", size = 4299464, upload-time = "2025-10-15T23:17:05.483Z" }, + { url = "https://files.pythonhosted.org/packages/00/de/d8e26b1a855f19d9994a19c702fa2e93b0456beccbcfe437eda00e0701f2/cryptography-46.0.3-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:c0a7bb1a68a5d3471880e264621346c48665b3bf1c3759d682fc0864c540bd9e", size = 4950838, upload-time = "2025-10-15T23:17:07.425Z" }, + { url = "https://files.pythonhosted.org/packages/8f/29/798fc4ec461a1c9e9f735f2fc58741b0daae30688f41b2497dcbc9ed1355/cryptography-46.0.3-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:10b01676fc208c3e6feeb25a8b83d81767e8059e1fe86e1dc62d10a3018fa926", size = 4481596, upload-time = "2025-10-15T23:17:09.343Z" }, + { url = "https://files.pythonhosted.org/packages/15/8d/03cd48b20a573adfff7652b76271078e3045b9f49387920e7f1f631d125e/cryptography-46.0.3-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0abf1ffd6e57c67e92af68330d05760b7b7efb243aab8377e583284dbab72c71", size = 4426782, upload-time = "2025-10-15T23:17:11.22Z" }, + { url = "https://files.pythonhosted.org/packages/fa/b1/ebacbfe53317d55cf33165bda24c86523497a6881f339f9aae5c2e13e57b/cryptography-46.0.3-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a04bee9ab6a4da801eb9b51f1b708a1b5b5c9eb48c03f74198464c66f0d344ac", size = 4698381, upload-time = "2025-10-15T23:17:12.829Z" }, + { url = "https://files.pythonhosted.org/packages/96/92/8a6a9525893325fc057a01f654d7efc2c64b9de90413adcf605a85744ff4/cryptography-46.0.3-cp311-abi3-win32.whl", hash = "sha256:f260d0d41e9b4da1ed1e0f1ce571f97fe370b152ab18778e9e8f67d6af432018", size = 3055988, upload-time = "2025-10-15T23:17:14.65Z" }, + { url = "https://files.pythonhosted.org/packages/7e/bf/80fbf45253ea585a1e492a6a17efcb93467701fa79e71550a430c5e60df0/cryptography-46.0.3-cp311-abi3-win_amd64.whl", hash = "sha256:a9a3008438615669153eb86b26b61e09993921ebdd75385ddd748702c5adfddb", size = 3514451, upload-time = "2025-10-15T23:17:16.142Z" }, + { url = "https://files.pythonhosted.org/packages/2e/af/9b302da4c87b0beb9db4e756386a7c6c5b8003cd0e742277888d352ae91d/cryptography-46.0.3-cp311-abi3-win_arm64.whl", hash = "sha256:5d7f93296ee28f68447397bf5198428c9aeeab45705a55d53a6343455dcb2c3c", size = 2928007, upload-time = "2025-10-15T23:17:18.04Z" }, + { url = "https://files.pythonhosted.org/packages/f5/e2/a510aa736755bffa9d2f75029c229111a1d02f8ecd5de03078f4c18d91a3/cryptography-46.0.3-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:00a5e7e87938e5ff9ff5447ab086a5706a957137e6e433841e9d24f38a065217", size = 7158012, upload-time = "2025-10-15T23:17:19.982Z" }, + { url = "https://files.pythonhosted.org/packages/73/dc/9aa866fbdbb95b02e7f9d086f1fccfeebf8953509b87e3f28fff927ff8a0/cryptography-46.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c8daeb2d2174beb4575b77482320303f3d39b8e81153da4f0fb08eb5fe86a6c5", size = 4288728, upload-time = "2025-10-15T23:17:21.527Z" }, + { url = "https://files.pythonhosted.org/packages/c5/fd/bc1daf8230eaa075184cbbf5f8cd00ba9db4fd32d63fb83da4671b72ed8a/cryptography-46.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:39b6755623145ad5eff1dab323f4eae2a32a77a7abef2c5089a04a3d04366715", size = 4435078, upload-time = "2025-10-15T23:17:23.042Z" }, + { url = "https://files.pythonhosted.org/packages/82/98/d3bd5407ce4c60017f8ff9e63ffee4200ab3e23fe05b765cab805a7db008/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:db391fa7c66df6762ee3f00c95a89e6d428f4d60e7abc8328f4fe155b5ac6e54", size = 4293460, upload-time = "2025-10-15T23:17:24.885Z" }, + { url = "https://files.pythonhosted.org/packages/26/e9/e23e7900983c2b8af7a08098db406cf989d7f09caea7897e347598d4cd5b/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:78a97cf6a8839a48c49271cdcbd5cf37ca2c1d6b7fdd86cc864f302b5e9bf459", size = 3995237, upload-time = "2025-10-15T23:17:26.449Z" }, + { url = "https://files.pythonhosted.org/packages/91/15/af68c509d4a138cfe299d0d7ddb14afba15233223ebd933b4bbdbc7155d3/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:dfb781ff7eaa91a6f7fd41776ec37c5853c795d3b358d4896fdbb5df168af422", size = 4967344, upload-time = "2025-10-15T23:17:28.06Z" }, + { url = "https://files.pythonhosted.org/packages/ca/e3/8643d077c53868b681af077edf6b3cb58288b5423610f21c62aadcbe99f4/cryptography-46.0.3-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:6f61efb26e76c45c4a227835ddeae96d83624fb0d29eb5df5b96e14ed1a0afb7", size = 4466564, upload-time = "2025-10-15T23:17:29.665Z" }, + { url = "https://files.pythonhosted.org/packages/0e/43/c1e8726fa59c236ff477ff2b5dc071e54b21e5a1e51aa2cee1676f1c986f/cryptography-46.0.3-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:23b1a8f26e43f47ceb6d6a43115f33a5a37d57df4ea0ca295b780ae8546e8044", size = 4292415, upload-time = "2025-10-15T23:17:31.686Z" }, + { url = "https://files.pythonhosted.org/packages/42/f9/2f8fefdb1aee8a8e3256a0568cffc4e6d517b256a2fe97a029b3f1b9fe7e/cryptography-46.0.3-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:b419ae593c86b87014b9be7396b385491ad7f320bde96826d0dd174459e54665", size = 4931457, upload-time = "2025-10-15T23:17:33.478Z" }, + { url = "https://files.pythonhosted.org/packages/79/30/9b54127a9a778ccd6d27c3da7563e9f2d341826075ceab89ae3b41bf5be2/cryptography-46.0.3-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:50fc3343ac490c6b08c0cf0d704e881d0d660be923fd3076db3e932007e726e3", size = 4466074, upload-time = "2025-10-15T23:17:35.158Z" }, + { url = "https://files.pythonhosted.org/packages/ac/68/b4f4a10928e26c941b1b6a179143af9f4d27d88fe84a6a3c53592d2e76bf/cryptography-46.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:22d7e97932f511d6b0b04f2bfd818d73dcd5928db509460aaf48384778eb6d20", size = 4420569, upload-time = "2025-10-15T23:17:37.188Z" }, + { url = "https://files.pythonhosted.org/packages/a3/49/3746dab4c0d1979888f125226357d3262a6dd40e114ac29e3d2abdf1ec55/cryptography-46.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d55f3dffadd674514ad19451161118fd010988540cee43d8bc20675e775925de", size = 4681941, upload-time = "2025-10-15T23:17:39.236Z" }, + { url = "https://files.pythonhosted.org/packages/fd/30/27654c1dbaf7e4a3531fa1fc77986d04aefa4d6d78259a62c9dc13d7ad36/cryptography-46.0.3-cp314-cp314t-win32.whl", hash = "sha256:8a6e050cb6164d3f830453754094c086ff2d0b2f3a897a1d9820f6139a1f0914", size = 3022339, upload-time = "2025-10-15T23:17:40.888Z" }, + { url = "https://files.pythonhosted.org/packages/f6/30/640f34ccd4d2a1bc88367b54b926b781b5a018d65f404d409aba76a84b1c/cryptography-46.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:760f83faa07f8b64e9c33fc963d790a2edb24efb479e3520c14a45741cd9b2db", size = 3494315, upload-time = "2025-10-15T23:17:42.769Z" }, + { url = "https://files.pythonhosted.org/packages/ba/8b/88cc7e3bd0a8e7b861f26981f7b820e1f46aa9d26cc482d0feba0ecb4919/cryptography-46.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:516ea134e703e9fe26bcd1277a4b59ad30586ea90c365a87781d7887a646fe21", size = 2919331, upload-time = "2025-10-15T23:17:44.468Z" }, + { url = "https://files.pythonhosted.org/packages/fd/23/45fe7f376a7df8daf6da3556603b36f53475a99ce4faacb6ba2cf3d82021/cryptography-46.0.3-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:cb3d760a6117f621261d662bccc8ef5bc32ca673e037c83fbe565324f5c46936", size = 7218248, upload-time = "2025-10-15T23:17:46.294Z" }, + { url = "https://files.pythonhosted.org/packages/27/32/b68d27471372737054cbd34c84981f9edbc24fe67ca225d389799614e27f/cryptography-46.0.3-cp38-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:4b7387121ac7d15e550f5cb4a43aef2559ed759c35df7336c402bb8275ac9683", size = 4294089, upload-time = "2025-10-15T23:17:48.269Z" }, + { url = "https://files.pythonhosted.org/packages/26/42/fa8389d4478368743e24e61eea78846a0006caffaf72ea24a15159215a14/cryptography-46.0.3-cp38-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:15ab9b093e8f09daab0f2159bb7e47532596075139dd74365da52ecc9cb46c5d", size = 4440029, upload-time = "2025-10-15T23:17:49.837Z" }, + { url = "https://files.pythonhosted.org/packages/5f/eb/f483db0ec5ac040824f269e93dd2bd8a21ecd1027e77ad7bdf6914f2fd80/cryptography-46.0.3-cp38-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:46acf53b40ea38f9c6c229599a4a13f0d46a6c3fa9ef19fc1a124d62e338dfa0", size = 4297222, upload-time = "2025-10-15T23:17:51.357Z" }, + { url = "https://files.pythonhosted.org/packages/fd/cf/da9502c4e1912cb1da3807ea3618a6829bee8207456fbbeebc361ec38ba3/cryptography-46.0.3-cp38-abi3-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:10ca84c4668d066a9878890047f03546f3ae0a6b8b39b697457b7757aaf18dbc", size = 4012280, upload-time = "2025-10-15T23:17:52.964Z" }, + { url = "https://files.pythonhosted.org/packages/6b/8f/9adb86b93330e0df8b3dcf03eae67c33ba89958fc2e03862ef1ac2b42465/cryptography-46.0.3-cp38-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:36e627112085bb3b81b19fed209c05ce2a52ee8b15d161b7c643a7d5a88491f3", size = 4978958, upload-time = "2025-10-15T23:17:54.965Z" }, + { url = "https://files.pythonhosted.org/packages/d1/a0/5fa77988289c34bdb9f913f5606ecc9ada1adb5ae870bd0d1054a7021cc4/cryptography-46.0.3-cp38-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:1000713389b75c449a6e979ffc7dcc8ac90b437048766cef052d4d30b8220971", size = 4473714, upload-time = "2025-10-15T23:17:56.754Z" }, + { url = "https://files.pythonhosted.org/packages/14/e5/fc82d72a58d41c393697aa18c9abe5ae1214ff6f2a5c18ac470f92777895/cryptography-46.0.3-cp38-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:b02cf04496f6576afffef5ddd04a0cb7d49cf6be16a9059d793a30b035f6b6ac", size = 4296970, upload-time = "2025-10-15T23:17:58.588Z" }, + { url = "https://files.pythonhosted.org/packages/78/06/5663ed35438d0b09056973994f1aec467492b33bd31da36e468b01ec1097/cryptography-46.0.3-cp38-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:71e842ec9bc7abf543b47cf86b9a743baa95f4677d22baa4c7d5c69e49e9bc04", size = 4940236, upload-time = "2025-10-15T23:18:00.897Z" }, + { url = "https://files.pythonhosted.org/packages/fc/59/873633f3f2dcd8a053b8dd1d38f783043b5fce589c0f6988bf55ef57e43e/cryptography-46.0.3-cp38-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:402b58fc32614f00980b66d6e56a5b4118e6cb362ae8f3fda141ba4689bd4506", size = 4472642, upload-time = "2025-10-15T23:18:02.749Z" }, + { url = "https://files.pythonhosted.org/packages/3d/39/8e71f3930e40f6877737d6f69248cf74d4e34b886a3967d32f919cc50d3b/cryptography-46.0.3-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ef639cb3372f69ec44915fafcd6698b6cc78fbe0c2ea41be867f6ed612811963", size = 4423126, upload-time = "2025-10-15T23:18:04.85Z" }, + { url = "https://files.pythonhosted.org/packages/cd/c7/f65027c2810e14c3e7268353b1681932b87e5a48e65505d8cc17c99e36ae/cryptography-46.0.3-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3b51b8ca4f1c6453d8829e1eb7299499ca7f313900dd4d89a24b8b87c0a780d4", size = 4686573, upload-time = "2025-10-15T23:18:06.908Z" }, + { url = "https://files.pythonhosted.org/packages/0a/6e/1c8331ddf91ca4730ab3086a0f1be19c65510a33b5a441cb334e7a2d2560/cryptography-46.0.3-cp38-abi3-win32.whl", hash = "sha256:6276eb85ef938dc035d59b87c8a7dc559a232f954962520137529d77b18ff1df", size = 3036695, upload-time = "2025-10-15T23:18:08.672Z" }, + { url = "https://files.pythonhosted.org/packages/90/45/b0d691df20633eff80955a0fc7695ff9051ffce8b69741444bd9ed7bd0db/cryptography-46.0.3-cp38-abi3-win_amd64.whl", hash = "sha256:416260257577718c05135c55958b674000baef9a1c7d9e8f306ec60d71db850f", size = 3501720, upload-time = "2025-10-15T23:18:10.632Z" }, + { url = "https://files.pythonhosted.org/packages/e8/cb/2da4cc83f5edb9c3257d09e1e7ab7b23f049c7962cae8d842bbef0a9cec9/cryptography-46.0.3-cp38-abi3-win_arm64.whl", hash = "sha256:d89c3468de4cdc4f08a57e214384d0471911a3830fcdaf7a8cc587e42a866372", size = 2918740, upload-time = "2025-10-15T23:18:12.277Z" }, +] + +[[package]] +name = "datalab-python-sdk" +version = "0.2.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohttp" }, + { name = "click" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "tenacity" }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8d/0c/26d4b76e6fd3477b3080b6dae1c6a60c01b811db3a1b0ebebe912bd29d0a/datalab_python_sdk-0.2.1.tar.gz", hash = "sha256:36c508aeca70ef6b530311d1dbe4d262392cb7836d94530cc7a62ba090465796", size = 1961794, upload-time = "2026-01-09T18:59:16.825Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b8/a8/9bbf0e1d782d2e99c1b960c75ebb9272f69facb37f96d44bc723f432c2de/datalab_python_sdk-0.2.1-py3-none-any.whl", hash = "sha256:6078176cfb96f2f155943ba7d637990316c12e1213883e41f1a7b43faea3939e", size = 22712, upload-time = "2026-01-09T18:59:15.517Z" }, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/d5/c66da9b79e5bdb124974bfe172b4daf3c984ebd9c2a06e2b8a4dc7331c72/defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69", size = 75520, upload-time = "2021-03-08T10:59:26.269Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61", size = 25604, upload-time = "2021-03-08T10:59:24.45Z" }, +] + +[[package]] +name = "deprecation" +version = "2.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "packaging" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5a/d3/8ae2869247df154b64c1884d7346d412fed0c49df84db635aab2d1c40e62/deprecation-2.1.0.tar.gz", hash = "sha256:72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff", size = 173788, upload-time = "2020-04-20T14:23:38.738Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/02/c3/253a89ee03fc9b9682f1541728eb66db7db22148cd94f89ab22528cd1e1b/deprecation-2.1.0-py2.py3-none-any.whl", hash = "sha256:a10811591210e1fb0e768a8c25517cabeabcba6f0bf96564f8ff45189f90b14a", size = 11178, upload-time = "2020-04-20T14:23:36.581Z" }, +] + +[[package]] +name = "diskcache" +version = "5.6.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3f/21/1c1ffc1a039ddcc459db43cc108658f32c57d271d7289a2794e401d0fdb6/diskcache-5.6.3.tar.gz", hash = "sha256:2c3a3fa2743d8535d832ec61c2054a1641f41775aa7c556758a109941e33e4fc", size = 67916, upload-time = "2023-08-31T06:12:00.316Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3f/27/4570e78fc0bf5ea0ca45eb1de3818a23787af9b390c0b0a0033a1b8236f9/diskcache-5.6.3-py3-none-any.whl", hash = "sha256:5e31b2d5fbad117cc363ebaf6b689474db18a1f6438bc82358b024abd4c2ca19", size = 45550, upload-time = "2023-08-31T06:11:58.822Z" }, +] + +[[package]] +name = "distlib" +version = "0.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/96/8e/709914eb2b5749865801041647dc7f4e6d00b549cfe88b65ca192995f07c/distlib-0.4.0.tar.gz", hash = "sha256:feec40075be03a04501a973d81f633735b4b69f98b05450592310c0f401a4e0d", size = 614605, upload-time = "2025-07-17T16:52:00.465Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl", hash = "sha256:9659f7d87e46584a30b5780e43ac7a2143098441670ff0a49d5f9034c54a6c16", size = 469047, upload-time = "2025-07-17T16:51:58.613Z" }, +] + +[[package]] +name = "distro" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fc/f8/98eea607f65de6527f8a2e8885fc8015d3e6f5775df186e443e0964a11c3/distro-1.9.0.tar.gz", hash = "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed", size = 60722, upload-time = "2023-12-24T09:54:32.31Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2", size = 20277, upload-time = "2023-12-24T09:54:30.421Z" }, +] + +[[package]] +name = "docker" +version = "7.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "requests" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/91/9b/4a2ea29aeba62471211598dac5d96825bb49348fa07e906ea930394a83ce/docker-7.1.0.tar.gz", hash = "sha256:ad8c70e6e3f8926cb8a92619b832b4ea5299e2831c14284663184e200546fa6c", size = 117834, upload-time = "2024-05-23T11:13:57.216Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e3/26/57c6fb270950d476074c087527a558ccb6f4436657314bfb6cdf484114c4/docker-7.1.0-py3-none-any.whl", hash = "sha256:c96b93b7f0a746f9e77d325bcfb87422a3d8bd4f03136ae8a85b37f1898d5fc0", size = 147774, upload-time = "2024-05-23T11:13:55.01Z" }, +] + +[[package]] +name = "docstring-parser" +version = "0.17.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b2/9d/c3b43da9515bd270df0f80548d9944e389870713cc1fe2b8fb35fe2bcefd/docstring_parser-0.17.0.tar.gz", hash = "sha256:583de4a309722b3315439bb31d64ba3eebada841f2e2cee23b99df001434c912", size = 27442, upload-time = "2025-07-21T07:35:01.868Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/55/e2/2537ebcff11c1ee1ff17d8d0b6f4db75873e3b0fb32c2d4a2ee31ecb310a/docstring_parser-0.17.0-py3-none-any.whl", hash = "sha256:cf2569abd23dce8099b300f9b4fa8191e9582dda731fd533daf54c4551658708", size = 36896, upload-time = "2025-07-21T07:35:00.684Z" }, +] + +[[package]] +name = "durationpy" +version = "0.10" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9d/a4/e44218c2b394e31a6dd0d6b095c4e1f32d0be54c2a4b250032d717647bab/durationpy-0.10.tar.gz", hash = "sha256:1fa6893409a6e739c9c72334fc65cca1f355dbdd93405d30f726deb5bde42fba", size = 3335, upload-time = "2025-05-17T13:52:37.26Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b0/0d/9feae160378a3553fa9a339b0e9c1a048e147a4127210e286ef18b730f03/durationpy-0.10-py3-none-any.whl", hash = "sha256:3b41e1b601234296b4fb368338fdcd3e13e0b4fb5b67345948f4f2bf9868b286", size = 3922, upload-time = "2025-05-17T13:52:36.463Z" }, +] + +[[package]] +name = "et-xmlfile" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d3/38/af70d7ab1ae9d4da450eeec1fa3918940a5fafb9055e934af8d6eb0c2313/et_xmlfile-2.0.0.tar.gz", hash = "sha256:dab3f4764309081ce75662649be815c4c9081e88f0837825f90fd28317d4da54", size = 17234, upload-time = "2024-10-25T17:25:40.039Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/8b/5fe2cc11fee489817272089c4203e679c63b570a5aaeb18d852ae3cbba6a/et_xmlfile-2.0.0-py3-none-any.whl", hash = "sha256:7a91720bc756843502c3b7504c77b8fe44217c85c537d85037f0f536151b2caa", size = 18059, upload-time = "2024-10-25T17:25:39.051Z" }, +] + +[[package]] +name = "fastuuid" +version = "0.14.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c3/7d/d9daedf0f2ebcacd20d599928f8913e9d2aea1d56d2d355a93bfa2b611d7/fastuuid-0.14.0.tar.gz", hash = "sha256:178947fc2f995b38497a74172adee64fdeb8b7ec18f2a5934d037641ba265d26", size = 18232, upload-time = "2025-10-19T22:19:22.402Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/02/a2/e78fcc5df65467f0d207661b7ef86c5b7ac62eea337c0c0fcedbeee6fb13/fastuuid-0.14.0-cp312-cp312-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:77e94728324b63660ebf8adb27055e92d2e4611645bf12ed9d88d30486471d0a", size = 510164, upload-time = "2025-10-19T22:31:45.635Z" }, + { url = "https://files.pythonhosted.org/packages/2b/b3/c846f933f22f581f558ee63f81f29fa924acd971ce903dab1a9b6701816e/fastuuid-0.14.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:caa1f14d2102cb8d353096bc6ef6c13b2c81f347e6ab9d6fbd48b9dea41c153d", size = 261837, upload-time = "2025-10-19T22:38:38.53Z" }, + { url = "https://files.pythonhosted.org/packages/54/ea/682551030f8c4fa9a769d9825570ad28c0c71e30cf34020b85c1f7ee7382/fastuuid-0.14.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d23ef06f9e67163be38cece704170486715b177f6baae338110983f99a72c070", size = 251370, upload-time = "2025-10-19T22:40:26.07Z" }, + { url = "https://files.pythonhosted.org/packages/14/dd/5927f0a523d8e6a76b70968e6004966ee7df30322f5fc9b6cdfb0276646a/fastuuid-0.14.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0c9ec605ace243b6dbe3bd27ebdd5d33b00d8d1d3f580b39fdd15cd96fd71796", size = 277766, upload-time = "2025-10-19T22:37:23.779Z" }, + { url = "https://files.pythonhosted.org/packages/16/6e/c0fb547eef61293153348f12e0f75a06abb322664b34a1573a7760501336/fastuuid-0.14.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:808527f2407f58a76c916d6aa15d58692a4a019fdf8d4c32ac7ff303b7d7af09", size = 278105, upload-time = "2025-10-19T22:26:56.821Z" }, + { url = "https://files.pythonhosted.org/packages/2d/b1/b9c75e03b768f61cf2e84ee193dc18601aeaf89a4684b20f2f0e9f52b62c/fastuuid-0.14.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2fb3c0d7fef6674bbeacdd6dbd386924a7b60b26de849266d1ff6602937675c8", size = 301564, upload-time = "2025-10-19T22:30:31.604Z" }, + { url = "https://files.pythonhosted.org/packages/fc/fa/f7395fdac07c7a54f18f801744573707321ca0cee082e638e36452355a9d/fastuuid-0.14.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab3f5d36e4393e628a4df337c2c039069344db5f4b9d2a3c9cea48284f1dd741", size = 459659, upload-time = "2025-10-19T22:31:32.341Z" }, + { url = "https://files.pythonhosted.org/packages/66/49/c9fd06a4a0b1f0f048aacb6599e7d96e5d6bc6fa680ed0d46bf111929d1b/fastuuid-0.14.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:b9a0ca4f03b7e0b01425281ffd44e99d360e15c895f1907ca105854ed85e2057", size = 478430, upload-time = "2025-10-19T22:26:22.962Z" }, + { url = "https://files.pythonhosted.org/packages/be/9c/909e8c95b494e8e140e8be6165d5fc3f61fdc46198c1554df7b3e1764471/fastuuid-0.14.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3acdf655684cc09e60fb7e4cf524e8f42ea760031945aa8086c7eae2eeeabeb8", size = 450894, upload-time = "2025-10-19T22:27:01.647Z" }, + { url = "https://files.pythonhosted.org/packages/90/eb/d29d17521976e673c55ef7f210d4cdd72091a9ec6755d0fd4710d9b3c871/fastuuid-0.14.0-cp312-cp312-win32.whl", hash = "sha256:9579618be6280700ae36ac42c3efd157049fe4dd40ca49b021280481c78c3176", size = 154374, upload-time = "2025-10-19T22:29:19.879Z" }, + { url = "https://files.pythonhosted.org/packages/cc/fc/f5c799a6ea6d877faec0472d0b27c079b47c86b1cdc577720a5386483b36/fastuuid-0.14.0-cp312-cp312-win_amd64.whl", hash = "sha256:d9e4332dc4ba054434a9594cbfaf7823b57993d7d8e7267831c3e059857cf397", size = 156550, upload-time = "2025-10-19T22:27:49.658Z" }, + { url = "https://files.pythonhosted.org/packages/a5/83/ae12dd39b9a39b55d7f90abb8971f1a5f3c321fd72d5aa83f90dc67fe9ed/fastuuid-0.14.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:77a09cb7427e7af74c594e409f7731a0cf887221de2f698e1ca0ebf0f3139021", size = 510720, upload-time = "2025-10-19T22:42:34.633Z" }, + { url = "https://files.pythonhosted.org/packages/53/b0/a4b03ff5d00f563cc7546b933c28cb3f2a07344b2aec5834e874f7d44143/fastuuid-0.14.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:9bd57289daf7b153bfa3e8013446aa144ce5e8c825e9e366d455155ede5ea2dc", size = 262024, upload-time = "2025-10-19T22:30:25.482Z" }, + { url = "https://files.pythonhosted.org/packages/9c/6d/64aee0a0f6a58eeabadd582e55d0d7d70258ffdd01d093b30c53d668303b/fastuuid-0.14.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ac60fc860cdf3c3f327374db87ab8e064c86566ca8c49d2e30df15eda1b0c2d5", size = 251679, upload-time = "2025-10-19T22:36:14.096Z" }, + { url = "https://files.pythonhosted.org/packages/60/f5/a7e9cda8369e4f7919d36552db9b2ae21db7915083bc6336f1b0082c8b2e/fastuuid-0.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ab32f74bd56565b186f036e33129da77db8be09178cd2f5206a5d4035fb2a23f", size = 277862, upload-time = "2025-10-19T22:36:23.302Z" }, + { url = "https://files.pythonhosted.org/packages/f0/d3/8ce11827c783affffd5bd4d6378b28eb6cc6d2ddf41474006b8d62e7448e/fastuuid-0.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33e678459cf4addaedd9936bbb038e35b3f6b2061330fd8f2f6a1d80414c0f87", size = 278278, upload-time = "2025-10-19T22:29:43.809Z" }, + { url = "https://files.pythonhosted.org/packages/a2/51/680fb6352d0bbade04036da46264a8001f74b7484e2fd1f4da9e3db1c666/fastuuid-0.14.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1e3cc56742f76cd25ecb98e4b82a25f978ccffba02e4bdce8aba857b6d85d87b", size = 301788, upload-time = "2025-10-19T22:36:06.825Z" }, + { url = "https://files.pythonhosted.org/packages/fa/7c/2014b5785bd8ebdab04ec857635ebd84d5ee4950186a577db9eff0fb8ff6/fastuuid-0.14.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:cb9a030f609194b679e1660f7e32733b7a0f332d519c5d5a6a0a580991290022", size = 459819, upload-time = "2025-10-19T22:35:31.623Z" }, + { url = "https://files.pythonhosted.org/packages/01/d2/524d4ceeba9160e7a9bc2ea3e8f4ccf1ad78f3bde34090ca0c51f09a5e91/fastuuid-0.14.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:09098762aad4f8da3a888eb9ae01c84430c907a297b97166b8abc07b640f2995", size = 478546, upload-time = "2025-10-19T22:26:03.023Z" }, + { url = "https://files.pythonhosted.org/packages/bc/17/354d04951ce114bf4afc78e27a18cfbd6ee319ab1829c2d5fb5e94063ac6/fastuuid-0.14.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:1383fff584fa249b16329a059c68ad45d030d5a4b70fb7c73a08d98fd53bcdab", size = 450921, upload-time = "2025-10-19T22:31:02.151Z" }, + { url = "https://files.pythonhosted.org/packages/fb/be/d7be8670151d16d88f15bb121c5b66cdb5ea6a0c2a362d0dcf30276ade53/fastuuid-0.14.0-cp313-cp313-win32.whl", hash = "sha256:a0809f8cc5731c066c909047f9a314d5f536c871a7a22e815cc4967c110ac9ad", size = 154559, upload-time = "2025-10-19T22:36:36.011Z" }, + { url = "https://files.pythonhosted.org/packages/22/1d/5573ef3624ceb7abf4a46073d3554e37191c868abc3aecd5289a72f9810a/fastuuid-0.14.0-cp313-cp313-win_amd64.whl", hash = "sha256:0df14e92e7ad3276327631c9e7cec09e32572ce82089c55cb1bb8df71cf394ed", size = 156539, upload-time = "2025-10-19T22:33:35.898Z" }, + { url = "https://files.pythonhosted.org/packages/16/c9/8c7660d1fe3862e3f8acabd9be7fc9ad71eb270f1c65cce9a2b7a31329ab/fastuuid-0.14.0-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:b852a870a61cfc26c884af205d502881a2e59cc07076b60ab4a951cc0c94d1ad", size = 510600, upload-time = "2025-10-19T22:43:44.17Z" }, + { url = "https://files.pythonhosted.org/packages/4c/f4/a989c82f9a90d0ad995aa957b3e572ebef163c5299823b4027986f133dfb/fastuuid-0.14.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:c7502d6f54cd08024c3ea9b3514e2d6f190feb2f46e6dbcd3747882264bb5f7b", size = 262069, upload-time = "2025-10-19T22:43:38.38Z" }, + { url = "https://files.pythonhosted.org/packages/da/6c/a1a24f73574ac995482b1326cf7ab41301af0fabaa3e37eeb6b3df00e6e2/fastuuid-0.14.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1ca61b592120cf314cfd66e662a5b54a578c5a15b26305e1b8b618a6f22df714", size = 251543, upload-time = "2025-10-19T22:32:22.537Z" }, + { url = "https://files.pythonhosted.org/packages/1a/20/2a9b59185ba7a6c7b37808431477c2d739fcbdabbf63e00243e37bd6bf49/fastuuid-0.14.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa75b6657ec129d0abded3bec745e6f7ab642e6dba3a5272a68247e85f5f316f", size = 277798, upload-time = "2025-10-19T22:33:53.821Z" }, + { url = "https://files.pythonhosted.org/packages/ef/33/4105ca574f6ded0af6a797d39add041bcfb468a1255fbbe82fcb6f592da2/fastuuid-0.14.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8a0dfea3972200f72d4c7df02c8ac70bad1bb4c58d7e0ec1e6f341679073a7f", size = 278283, upload-time = "2025-10-19T22:29:02.812Z" }, + { url = "https://files.pythonhosted.org/packages/fe/8c/fca59f8e21c4deb013f574eae05723737ddb1d2937ce87cb2a5d20992dc3/fastuuid-0.14.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1bf539a7a95f35b419f9ad105d5a8a35036df35fdafae48fb2fd2e5f318f0d75", size = 301627, upload-time = "2025-10-19T22:35:54.985Z" }, + { url = "https://files.pythonhosted.org/packages/cb/e2/f78c271b909c034d429218f2798ca4e89eeda7983f4257d7865976ddbb6c/fastuuid-0.14.0-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:9a133bf9cc78fdbd1179cb58a59ad0100aa32d8675508150f3658814aeefeaa4", size = 459778, upload-time = "2025-10-19T22:28:00.999Z" }, + { url = "https://files.pythonhosted.org/packages/1e/f0/5ff209d865897667a2ff3e7a572267a9ced8f7313919f6d6043aed8b1caa/fastuuid-0.14.0-cp314-cp314-musllinux_1_1_i686.whl", hash = "sha256:f54d5b36c56a2d5e1a31e73b950b28a0d83eb0c37b91d10408875a5a29494bad", size = 478605, upload-time = "2025-10-19T22:36:21.764Z" }, + { url = "https://files.pythonhosted.org/packages/e0/c8/2ce1c78f983a2c4987ea865d9516dbdfb141a120fd3abb977ae6f02ba7ca/fastuuid-0.14.0-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:ec27778c6ca3393ef662e2762dba8af13f4ec1aaa32d08d77f71f2a70ae9feb8", size = 450837, upload-time = "2025-10-19T22:34:37.178Z" }, + { url = "https://files.pythonhosted.org/packages/df/60/dad662ec9a33b4a5fe44f60699258da64172c39bd041da2994422cdc40fe/fastuuid-0.14.0-cp314-cp314-win32.whl", hash = "sha256:e23fc6a83f112de4be0cc1990e5b127c27663ae43f866353166f87df58e73d06", size = 154532, upload-time = "2025-10-19T22:35:18.217Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f6/da4db31001e854025ffd26bc9ba0740a9cbba2c3259695f7c5834908b336/fastuuid-0.14.0-cp314-cp314-win_amd64.whl", hash = "sha256:df61342889d0f5e7a32f7284e55ef95103f2110fee433c2ae7c2c0956d76ac8a", size = 156457, upload-time = "2025-10-19T22:33:44.579Z" }, +] + +[[package]] +name = "filelock" +version = "3.20.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1d/65/ce7f1b70157833bf3cb851b556a37d4547ceafc158aa9b34b36782f23696/filelock-3.20.3.tar.gz", hash = "sha256:18c57ee915c7ec61cff0ecf7f0f869936c7c30191bb0cf406f1341778d0834e1", size = 19485, upload-time = "2026-01-09T17:55:05.421Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b5/36/7fb70f04bf00bc646cd5bb45aa9eddb15e19437a28b8fb2b4a5249fac770/filelock-3.20.3-py3-none-any.whl", hash = "sha256:4b0dda527ee31078689fc205ec4f1c1bf7d56cf88b6dc9426c4f230e46c2dce1", size = 16701, upload-time = "2026-01-09T17:55:04.334Z" }, +] + +[[package]] +name = "flatbuffers" +version = "25.12.19" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl", hash = "sha256:7634f50c427838bb021c2d66a3d1168e9d199b0607e6329399f04846d42e20b4", size = 26661, upload-time = "2025-12-19T23:16:13.622Z" }, +] + +[[package]] +name = "frozenlist" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/f5/c831fac6cc817d26fd54c7eaccd04ef7e0288806943f7cc5bbf69f3ac1f0/frozenlist-1.8.0.tar.gz", hash = "sha256:3ede829ed8d842f6cd48fc7081d7a41001a56f1f38603f9d49bf3020d59a31ad", size = 45875, upload-time = "2025-10-06T05:38:17.865Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/29/948b9aa87e75820a38650af445d2ef2b6b8a6fab1a23b6bb9e4ef0be2d59/frozenlist-1.8.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:78f7b9e5d6f2fdb88cdde9440dc147259b62b9d3b019924def9f6478be254ac1", size = 87782, upload-time = "2025-10-06T05:36:06.649Z" }, + { url = "https://files.pythonhosted.org/packages/64/80/4f6e318ee2a7c0750ed724fa33a4bdf1eacdc5a39a7a24e818a773cd91af/frozenlist-1.8.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:229bf37d2e4acdaf808fd3f06e854a4a7a3661e871b10dc1f8f1896a3b05f18b", size = 50594, upload-time = "2025-10-06T05:36:07.69Z" }, + { url = "https://files.pythonhosted.org/packages/2b/94/5c8a2b50a496b11dd519f4a24cb5496cf125681dd99e94c604ccdea9419a/frozenlist-1.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f833670942247a14eafbb675458b4e61c82e002a148f49e68257b79296e865c4", size = 50448, upload-time = "2025-10-06T05:36:08.78Z" }, + { url = "https://files.pythonhosted.org/packages/6a/bd/d91c5e39f490a49df14320f4e8c80161cfcce09f1e2cde1edd16a551abb3/frozenlist-1.8.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:494a5952b1c597ba44e0e78113a7266e656b9794eec897b19ead706bd7074383", size = 242411, upload-time = "2025-10-06T05:36:09.801Z" }, + { url = "https://files.pythonhosted.org/packages/8f/83/f61505a05109ef3293dfb1ff594d13d64a2324ac3482be2cedc2be818256/frozenlist-1.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:96f423a119f4777a4a056b66ce11527366a8bb92f54e541ade21f2374433f6d4", size = 243014, upload-time = "2025-10-06T05:36:11.394Z" }, + { url = "https://files.pythonhosted.org/packages/d8/cb/cb6c7b0f7d4023ddda30cf56b8b17494eb3a79e3fda666bf735f63118b35/frozenlist-1.8.0-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3462dd9475af2025c31cc61be6652dfa25cbfb56cbbf52f4ccfe029f38decaf8", size = 234909, upload-time = "2025-10-06T05:36:12.598Z" }, + { url = "https://files.pythonhosted.org/packages/31/c5/cd7a1f3b8b34af009fb17d4123c5a778b44ae2804e3ad6b86204255f9ec5/frozenlist-1.8.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c4c800524c9cd9bac5166cd6f55285957fcfc907db323e193f2afcd4d9abd69b", size = 250049, upload-time = "2025-10-06T05:36:14.065Z" }, + { url = "https://files.pythonhosted.org/packages/c0/01/2f95d3b416c584a1e7f0e1d6d31998c4a795f7544069ee2e0962a4b60740/frozenlist-1.8.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d6a5df73acd3399d893dafc71663ad22534b5aa4f94e8a2fabfe856c3c1b6a52", size = 256485, upload-time = "2025-10-06T05:36:15.39Z" }, + { url = "https://files.pythonhosted.org/packages/ce/03/024bf7720b3abaebcff6d0793d73c154237b85bdf67b7ed55e5e9596dc9a/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:405e8fe955c2280ce66428b3ca55e12b3c4e9c336fb2103a4937e891c69a4a29", size = 237619, upload-time = "2025-10-06T05:36:16.558Z" }, + { url = "https://files.pythonhosted.org/packages/69/fa/f8abdfe7d76b731f5d8bd217827cf6764d4f1d9763407e42717b4bed50a0/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:908bd3f6439f2fef9e85031b59fd4f1297af54415fb60e4254a95f75b3cab3f3", size = 250320, upload-time = "2025-10-06T05:36:17.821Z" }, + { url = "https://files.pythonhosted.org/packages/f5/3c/b051329f718b463b22613e269ad72138cc256c540f78a6de89452803a47d/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:294e487f9ec720bd8ffcebc99d575f7eff3568a08a253d1ee1a0378754b74143", size = 246820, upload-time = "2025-10-06T05:36:19.046Z" }, + { url = "https://files.pythonhosted.org/packages/0f/ae/58282e8f98e444b3f4dd42448ff36fa38bef29e40d40f330b22e7108f565/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:74c51543498289c0c43656701be6b077f4b265868fa7f8a8859c197006efb608", size = 250518, upload-time = "2025-10-06T05:36:20.763Z" }, + { url = "https://files.pythonhosted.org/packages/8f/96/007e5944694d66123183845a106547a15944fbbb7154788cbf7272789536/frozenlist-1.8.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:776f352e8329135506a1d6bf16ac3f87bc25b28e765949282dcc627af36123aa", size = 239096, upload-time = "2025-10-06T05:36:22.129Z" }, + { url = "https://files.pythonhosted.org/packages/66/bb/852b9d6db2fa40be96f29c0d1205c306288f0684df8fd26ca1951d461a56/frozenlist-1.8.0-cp312-cp312-win32.whl", hash = "sha256:433403ae80709741ce34038da08511d4a77062aa924baf411ef73d1146e74faf", size = 39985, upload-time = "2025-10-06T05:36:23.661Z" }, + { url = "https://files.pythonhosted.org/packages/b8/af/38e51a553dd66eb064cdf193841f16f077585d4d28394c2fa6235cb41765/frozenlist-1.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:34187385b08f866104f0c0617404c8eb08165ab1272e884abc89c112e9c00746", size = 44591, upload-time = "2025-10-06T05:36:24.958Z" }, + { url = "https://files.pythonhosted.org/packages/a7/06/1dc65480ab147339fecc70797e9c2f69d9cea9cf38934ce08df070fdb9cb/frozenlist-1.8.0-cp312-cp312-win_arm64.whl", hash = "sha256:fe3c58d2f5db5fbd18c2987cba06d51b0529f52bc3a6cdc33d3f4eab725104bd", size = 40102, upload-time = "2025-10-06T05:36:26.333Z" }, + { url = "https://files.pythonhosted.org/packages/2d/40/0832c31a37d60f60ed79e9dfb5a92e1e2af4f40a16a29abcc7992af9edff/frozenlist-1.8.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8d92f1a84bb12d9e56f818b3a746f3efba93c1b63c8387a73dde655e1e42282a", size = 85717, upload-time = "2025-10-06T05:36:27.341Z" }, + { url = "https://files.pythonhosted.org/packages/30/ba/b0b3de23f40bc55a7057bd38434e25c34fa48e17f20ee273bbde5e0650f3/frozenlist-1.8.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:96153e77a591c8adc2ee805756c61f59fef4cf4073a9275ee86fe8cba41241f7", size = 49651, upload-time = "2025-10-06T05:36:28.855Z" }, + { url = "https://files.pythonhosted.org/packages/0c/ab/6e5080ee374f875296c4243c381bbdef97a9ac39c6e3ce1d5f7d42cb78d6/frozenlist-1.8.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f21f00a91358803399890ab167098c131ec2ddd5f8f5fd5fe9c9f2c6fcd91e40", size = 49417, upload-time = "2025-10-06T05:36:29.877Z" }, + { url = "https://files.pythonhosted.org/packages/d5/4e/e4691508f9477ce67da2015d8c00acd751e6287739123113a9fca6f1604e/frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fb30f9626572a76dfe4293c7194a09fb1fe93ba94c7d4f720dfae3b646b45027", size = 234391, upload-time = "2025-10-06T05:36:31.301Z" }, + { url = "https://files.pythonhosted.org/packages/40/76/c202df58e3acdf12969a7895fd6f3bc016c642e6726aa63bd3025e0fc71c/frozenlist-1.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eaa352d7047a31d87dafcacbabe89df0aa506abb5b1b85a2fb91bc3faa02d822", size = 233048, upload-time = "2025-10-06T05:36:32.531Z" }, + { url = "https://files.pythonhosted.org/packages/f9/c0/8746afb90f17b73ca5979c7a3958116e105ff796e718575175319b5bb4ce/frozenlist-1.8.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:03ae967b4e297f58f8c774c7eabcce57fe3c2434817d4385c50661845a058121", size = 226549, upload-time = "2025-10-06T05:36:33.706Z" }, + { url = "https://files.pythonhosted.org/packages/7e/eb/4c7eefc718ff72f9b6c4893291abaae5fbc0c82226a32dcd8ef4f7a5dbef/frozenlist-1.8.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f6292f1de555ffcc675941d65fffffb0a5bcd992905015f85d0592201793e0e5", size = 239833, upload-time = "2025-10-06T05:36:34.947Z" }, + { url = "https://files.pythonhosted.org/packages/c2/4e/e5c02187cf704224f8b21bee886f3d713ca379535f16893233b9d672ea71/frozenlist-1.8.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:29548f9b5b5e3460ce7378144c3010363d8035cea44bc0bf02d57f5a685e084e", size = 245363, upload-time = "2025-10-06T05:36:36.534Z" }, + { url = "https://files.pythonhosted.org/packages/1f/96/cb85ec608464472e82ad37a17f844889c36100eed57bea094518bf270692/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ec3cc8c5d4084591b4237c0a272cc4f50a5b03396a47d9caaf76f5d7b38a4f11", size = 229314, upload-time = "2025-10-06T05:36:38.582Z" }, + { url = "https://files.pythonhosted.org/packages/5d/6f/4ae69c550e4cee66b57887daeebe006fe985917c01d0fff9caab9883f6d0/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:517279f58009d0b1f2e7c1b130b377a349405da3f7621ed6bfae50b10adf20c1", size = 243365, upload-time = "2025-10-06T05:36:40.152Z" }, + { url = "https://files.pythonhosted.org/packages/7a/58/afd56de246cf11780a40a2c28dc7cbabbf06337cc8ddb1c780a2d97e88d8/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:db1e72ede2d0d7ccb213f218df6a078a9c09a7de257c2fe8fcef16d5925230b1", size = 237763, upload-time = "2025-10-06T05:36:41.355Z" }, + { url = "https://files.pythonhosted.org/packages/cb/36/cdfaf6ed42e2644740d4a10452d8e97fa1c062e2a8006e4b09f1b5fd7d63/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:b4dec9482a65c54a5044486847b8a66bf10c9cb4926d42927ec4e8fd5db7fed8", size = 240110, upload-time = "2025-10-06T05:36:42.716Z" }, + { url = "https://files.pythonhosted.org/packages/03/a8/9ea226fbefad669f11b52e864c55f0bd57d3c8d7eb07e9f2e9a0b39502e1/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:21900c48ae04d13d416f0e1e0c4d81f7931f73a9dfa0b7a8746fb2fe7dd970ed", size = 233717, upload-time = "2025-10-06T05:36:44.251Z" }, + { url = "https://files.pythonhosted.org/packages/1e/0b/1b5531611e83ba7d13ccc9988967ea1b51186af64c42b7a7af465dcc9568/frozenlist-1.8.0-cp313-cp313-win32.whl", hash = "sha256:8b7b94a067d1c504ee0b16def57ad5738701e4ba10cec90529f13fa03c833496", size = 39628, upload-time = "2025-10-06T05:36:45.423Z" }, + { url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl", hash = "sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231", size = 43882, upload-time = "2025-10-06T05:36:46.796Z" }, + { url = "https://files.pythonhosted.org/packages/c1/17/502cd212cbfa96eb1388614fe39a3fc9ab87dbbe042b66f97acb57474834/frozenlist-1.8.0-cp313-cp313-win_arm64.whl", hash = "sha256:44389d135b3ff43ba8cc89ff7f51f5a0bb6b63d829c8300f79a2fe4fe61bcc62", size = 39676, upload-time = "2025-10-06T05:36:47.8Z" }, + { url = "https://files.pythonhosted.org/packages/d2/5c/3bbfaa920dfab09e76946a5d2833a7cbdf7b9b4a91c714666ac4855b88b4/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:e25ac20a2ef37e91c1b39938b591457666a0fa835c7783c3a8f33ea42870db94", size = 89235, upload-time = "2025-10-06T05:36:48.78Z" }, + { url = "https://files.pythonhosted.org/packages/d2/d6/f03961ef72166cec1687e84e8925838442b615bd0b8854b54923ce5b7b8a/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07cdca25a91a4386d2e76ad992916a85038a9b97561bf7a3fd12d5d9ce31870c", size = 50742, upload-time = "2025-10-06T05:36:49.837Z" }, + { url = "https://files.pythonhosted.org/packages/1e/bb/a6d12b7ba4c3337667d0e421f7181c82dda448ce4e7ad7ecd249a16fa806/frozenlist-1.8.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4e0c11f2cc6717e0a741f84a527c52616140741cd812a50422f83dc31749fb52", size = 51725, upload-time = "2025-10-06T05:36:50.851Z" }, + { url = "https://files.pythonhosted.org/packages/bc/71/d1fed0ffe2c2ccd70b43714c6cab0f4188f09f8a67a7914a6b46ee30f274/frozenlist-1.8.0-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b3210649ee28062ea6099cfda39e147fa1bc039583c8ee4481cb7811e2448c51", size = 284533, upload-time = "2025-10-06T05:36:51.898Z" }, + { url = "https://files.pythonhosted.org/packages/c9/1f/fb1685a7b009d89f9bf78a42d94461bc06581f6e718c39344754a5d9bada/frozenlist-1.8.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:581ef5194c48035a7de2aefc72ac6539823bb71508189e5de01d60c9dcd5fa65", size = 292506, upload-time = "2025-10-06T05:36:53.101Z" }, + { url = "https://files.pythonhosted.org/packages/e6/3b/b991fe1612703f7e0d05c0cf734c1b77aaf7c7d321df4572e8d36e7048c8/frozenlist-1.8.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3ef2d026f16a2b1866e1d86fc4e1291e1ed8a387b2c333809419a2f8b3a77b82", size = 274161, upload-time = "2025-10-06T05:36:54.309Z" }, + { url = "https://files.pythonhosted.org/packages/ca/ec/c5c618767bcdf66e88945ec0157d7f6c4a1322f1473392319b7a2501ded7/frozenlist-1.8.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5500ef82073f599ac84d888e3a8c1f77ac831183244bfd7f11eaa0289fb30714", size = 294676, upload-time = "2025-10-06T05:36:55.566Z" }, + { url = "https://files.pythonhosted.org/packages/7c/ce/3934758637d8f8a88d11f0585d6495ef54b2044ed6ec84492a91fa3b27aa/frozenlist-1.8.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:50066c3997d0091c411a66e710f4e11752251e6d2d73d70d8d5d4c76442a199d", size = 300638, upload-time = "2025-10-06T05:36:56.758Z" }, + { url = "https://files.pythonhosted.org/packages/fc/4f/a7e4d0d467298f42de4b41cbc7ddaf19d3cfeabaf9ff97c20c6c7ee409f9/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:5c1c8e78426e59b3f8005e9b19f6ff46e5845895adbde20ece9218319eca6506", size = 283067, upload-time = "2025-10-06T05:36:57.965Z" }, + { url = "https://files.pythonhosted.org/packages/dc/48/c7b163063d55a83772b268e6d1affb960771b0e203b632cfe09522d67ea5/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:eefdba20de0d938cec6a89bd4d70f346a03108a19b9df4248d3cf0d88f1b0f51", size = 292101, upload-time = "2025-10-06T05:36:59.237Z" }, + { url = "https://files.pythonhosted.org/packages/9f/d0/2366d3c4ecdc2fd391e0afa6e11500bfba0ea772764d631bbf82f0136c9d/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cf253e0e1c3ceb4aaff6df637ce033ff6535fb8c70a764a8f46aafd3d6ab798e", size = 289901, upload-time = "2025-10-06T05:37:00.811Z" }, + { url = "https://files.pythonhosted.org/packages/b8/94/daff920e82c1b70e3618a2ac39fbc01ae3e2ff6124e80739ce5d71c9b920/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:032efa2674356903cd0261c4317a561a6850f3ac864a63fc1583147fb05a79b0", size = 289395, upload-time = "2025-10-06T05:37:02.115Z" }, + { url = "https://files.pythonhosted.org/packages/e3/20/bba307ab4235a09fdcd3cc5508dbabd17c4634a1af4b96e0f69bfe551ebd/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6da155091429aeba16851ecb10a9104a108bcd32f6c1642867eadaee401c1c41", size = 283659, upload-time = "2025-10-06T05:37:03.711Z" }, + { url = "https://files.pythonhosted.org/packages/fd/00/04ca1c3a7a124b6de4f8a9a17cc2fcad138b4608e7a3fc5877804b8715d7/frozenlist-1.8.0-cp313-cp313t-win32.whl", hash = "sha256:0f96534f8bfebc1a394209427d0f8a63d343c9779cda6fc25e8e121b5fd8555b", size = 43492, upload-time = "2025-10-06T05:37:04.915Z" }, + { url = "https://files.pythonhosted.org/packages/59/5e/c69f733a86a94ab10f68e496dc6b7e8bc078ebb415281d5698313e3af3a1/frozenlist-1.8.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5d63a068f978fc69421fb0e6eb91a9603187527c86b7cd3f534a5b77a592b888", size = 48034, upload-time = "2025-10-06T05:37:06.343Z" }, + { url = "https://files.pythonhosted.org/packages/16/6c/be9d79775d8abe79b05fa6d23da99ad6e7763a1d080fbae7290b286093fd/frozenlist-1.8.0-cp313-cp313t-win_arm64.whl", hash = "sha256:bf0a7e10b077bf5fb9380ad3ae8ce20ef919a6ad93b4552896419ac7e1d8e042", size = 41749, upload-time = "2025-10-06T05:37:07.431Z" }, + { url = "https://files.pythonhosted.org/packages/f1/c8/85da824b7e7b9b6e7f7705b2ecaf9591ba6f79c1177f324c2735e41d36a2/frozenlist-1.8.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:cee686f1f4cadeb2136007ddedd0aaf928ab95216e7691c63e50a8ec066336d0", size = 86127, upload-time = "2025-10-06T05:37:08.438Z" }, + { url = "https://files.pythonhosted.org/packages/8e/e8/a1185e236ec66c20afd72399522f142c3724c785789255202d27ae992818/frozenlist-1.8.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:119fb2a1bd47307e899c2fac7f28e85b9a543864df47aa7ec9d3c1b4545f096f", size = 49698, upload-time = "2025-10-06T05:37:09.48Z" }, + { url = "https://files.pythonhosted.org/packages/a1/93/72b1736d68f03fda5fdf0f2180fb6caaae3894f1b854d006ac61ecc727ee/frozenlist-1.8.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4970ece02dbc8c3a92fcc5228e36a3e933a01a999f7094ff7c23fbd2beeaa67c", size = 49749, upload-time = "2025-10-06T05:37:10.569Z" }, + { url = "https://files.pythonhosted.org/packages/a7/b2/fabede9fafd976b991e9f1b9c8c873ed86f202889b864756f240ce6dd855/frozenlist-1.8.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:cba69cb73723c3f329622e34bdbf5ce1f80c21c290ff04256cff1cd3c2036ed2", size = 231298, upload-time = "2025-10-06T05:37:11.993Z" }, + { url = "https://files.pythonhosted.org/packages/3a/3b/d9b1e0b0eed36e70477ffb8360c49c85c8ca8ef9700a4e6711f39a6e8b45/frozenlist-1.8.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:778a11b15673f6f1df23d9586f83c4846c471a8af693a22e066508b77d201ec8", size = 232015, upload-time = "2025-10-06T05:37:13.194Z" }, + { url = "https://files.pythonhosted.org/packages/dc/94/be719d2766c1138148564a3960fc2c06eb688da592bdc25adcf856101be7/frozenlist-1.8.0-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0325024fe97f94c41c08872db482cf8ac4800d80e79222c6b0b7b162d5b13686", size = 225038, upload-time = "2025-10-06T05:37:14.577Z" }, + { url = "https://files.pythonhosted.org/packages/e4/09/6712b6c5465f083f52f50cf74167b92d4ea2f50e46a9eea0523d658454ae/frozenlist-1.8.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:97260ff46b207a82a7567b581ab4190bd4dfa09f4db8a8b49d1a958f6aa4940e", size = 240130, upload-time = "2025-10-06T05:37:15.781Z" }, + { url = "https://files.pythonhosted.org/packages/f8/d4/cd065cdcf21550b54f3ce6a22e143ac9e4836ca42a0de1022da8498eac89/frozenlist-1.8.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:54b2077180eb7f83dd52c40b2750d0a9f175e06a42e3213ce047219de902717a", size = 242845, upload-time = "2025-10-06T05:37:17.037Z" }, + { url = "https://files.pythonhosted.org/packages/62/c3/f57a5c8c70cd1ead3d5d5f776f89d33110b1addae0ab010ad774d9a44fb9/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:2f05983daecab868a31e1da44462873306d3cbfd76d1f0b5b69c473d21dbb128", size = 229131, upload-time = "2025-10-06T05:37:18.221Z" }, + { url = "https://files.pythonhosted.org/packages/6c/52/232476fe9cb64f0742f3fde2b7d26c1dac18b6d62071c74d4ded55e0ef94/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:33f48f51a446114bc5d251fb2954ab0164d5be02ad3382abcbfe07e2531d650f", size = 240542, upload-time = "2025-10-06T05:37:19.771Z" }, + { url = "https://files.pythonhosted.org/packages/5f/85/07bf3f5d0fb5414aee5f47d33c6f5c77bfe49aac680bfece33d4fdf6a246/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:154e55ec0655291b5dd1b8731c637ecdb50975a2ae70c606d100750a540082f7", size = 237308, upload-time = "2025-10-06T05:37:20.969Z" }, + { url = "https://files.pythonhosted.org/packages/11/99/ae3a33d5befd41ac0ca2cc7fd3aa707c9c324de2e89db0e0f45db9a64c26/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:4314debad13beb564b708b4a496020e5306c7333fa9a3ab90374169a20ffab30", size = 238210, upload-time = "2025-10-06T05:37:22.252Z" }, + { url = "https://files.pythonhosted.org/packages/b2/60/b1d2da22f4970e7a155f0adde9b1435712ece01b3cd45ba63702aea33938/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:073f8bf8becba60aa931eb3bc420b217bb7d5b8f4750e6f8b3be7f3da85d38b7", size = 231972, upload-time = "2025-10-06T05:37:23.5Z" }, + { url = "https://files.pythonhosted.org/packages/3f/ab/945b2f32de889993b9c9133216c068b7fcf257d8595a0ac420ac8677cab0/frozenlist-1.8.0-cp314-cp314-win32.whl", hash = "sha256:bac9c42ba2ac65ddc115d930c78d24ab8d4f465fd3fc473cdedfccadb9429806", size = 40536, upload-time = "2025-10-06T05:37:25.581Z" }, + { url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl", hash = "sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0", size = 44330, upload-time = "2025-10-06T05:37:26.928Z" }, + { url = "https://files.pythonhosted.org/packages/82/13/e6950121764f2676f43534c555249f57030150260aee9dcf7d64efda11dd/frozenlist-1.8.0-cp314-cp314-win_arm64.whl", hash = "sha256:d1eaff1d00c7751b7c6662e9c5ba6eb2c17a2306ba5e2a37f24ddf3cc953402b", size = 40627, upload-time = "2025-10-06T05:37:28.075Z" }, + { url = "https://files.pythonhosted.org/packages/c0/c7/43200656ecc4e02d3f8bc248df68256cd9572b3f0017f0a0c4e93440ae23/frozenlist-1.8.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d3bb933317c52d7ea5004a1c442eef86f426886fba134ef8cf4226ea6ee1821d", size = 89238, upload-time = "2025-10-06T05:37:29.373Z" }, + { url = "https://files.pythonhosted.org/packages/d1/29/55c5f0689b9c0fb765055629f472c0de484dcaf0acee2f7707266ae3583c/frozenlist-1.8.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:8009897cdef112072f93a0efdce29cd819e717fd2f649ee3016efd3cd885a7ed", size = 50738, upload-time = "2025-10-06T05:37:30.792Z" }, + { url = "https://files.pythonhosted.org/packages/ba/7d/b7282a445956506fa11da8c2db7d276adcbf2b17d8bb8407a47685263f90/frozenlist-1.8.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:2c5dcbbc55383e5883246d11fd179782a9d07a986c40f49abe89ddf865913930", size = 51739, upload-time = "2025-10-06T05:37:32.127Z" }, + { url = "https://files.pythonhosted.org/packages/62/1c/3d8622e60d0b767a5510d1d3cf21065b9db874696a51ea6d7a43180a259c/frozenlist-1.8.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:39ecbc32f1390387d2aa4f5a995e465e9e2f79ba3adcac92d68e3e0afae6657c", size = 284186, upload-time = "2025-10-06T05:37:33.21Z" }, + { url = "https://files.pythonhosted.org/packages/2d/14/aa36d5f85a89679a85a1d44cd7a6657e0b1c75f61e7cad987b203d2daca8/frozenlist-1.8.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92db2bf818d5cc8d9c1f1fc56b897662e24ea5adb36ad1f1d82875bd64e03c24", size = 292196, upload-time = "2025-10-06T05:37:36.107Z" }, + { url = "https://files.pythonhosted.org/packages/05/23/6bde59eb55abd407d34f77d39a5126fb7b4f109a3f611d3929f14b700c66/frozenlist-1.8.0-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2dc43a022e555de94c3b68a4ef0b11c4f747d12c024a520c7101709a2144fb37", size = 273830, upload-time = "2025-10-06T05:37:37.663Z" }, + { url = "https://files.pythonhosted.org/packages/d2/3f/22cff331bfad7a8afa616289000ba793347fcd7bc275f3b28ecea2a27909/frozenlist-1.8.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:cb89a7f2de3602cfed448095bab3f178399646ab7c61454315089787df07733a", size = 294289, upload-time = "2025-10-06T05:37:39.261Z" }, + { url = "https://files.pythonhosted.org/packages/a4/89/5b057c799de4838b6c69aa82b79705f2027615e01be996d2486a69ca99c4/frozenlist-1.8.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:33139dc858c580ea50e7e60a1b0ea003efa1fd42e6ec7fdbad78fff65fad2fd2", size = 300318, upload-time = "2025-10-06T05:37:43.213Z" }, + { url = "https://files.pythonhosted.org/packages/30/de/2c22ab3eb2a8af6d69dc799e48455813bab3690c760de58e1bf43b36da3e/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:168c0969a329b416119507ba30b9ea13688fafffac1b7822802537569a1cb0ef", size = 282814, upload-time = "2025-10-06T05:37:45.337Z" }, + { url = "https://files.pythonhosted.org/packages/59/f7/970141a6a8dbd7f556d94977858cfb36fa9b66e0892c6dd780d2219d8cd8/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:28bd570e8e189d7f7b001966435f9dac6718324b5be2990ac496cf1ea9ddb7fe", size = 291762, upload-time = "2025-10-06T05:37:46.657Z" }, + { url = "https://files.pythonhosted.org/packages/c1/15/ca1adae83a719f82df9116d66f5bb28bb95557b3951903d39135620ef157/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b2a095d45c5d46e5e79ba1e5b9cb787f541a8dee0433836cea4b96a2c439dcd8", size = 289470, upload-time = "2025-10-06T05:37:47.946Z" }, + { url = "https://files.pythonhosted.org/packages/ac/83/dca6dc53bf657d371fbc88ddeb21b79891e747189c5de990b9dfff2ccba1/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:eab8145831a0d56ec9c4139b6c3e594c7a83c2c8be25d5bcf2d86136a532287a", size = 289042, upload-time = "2025-10-06T05:37:49.499Z" }, + { url = "https://files.pythonhosted.org/packages/96/52/abddd34ca99be142f354398700536c5bd315880ed0a213812bc491cff5e4/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:974b28cf63cc99dfb2188d8d222bc6843656188164848c4f679e63dae4b0708e", size = 283148, upload-time = "2025-10-06T05:37:50.745Z" }, + { url = "https://files.pythonhosted.org/packages/af/d3/76bd4ed4317e7119c2b7f57c3f6934aba26d277acc6309f873341640e21f/frozenlist-1.8.0-cp314-cp314t-win32.whl", hash = "sha256:342c97bf697ac5480c0a7ec73cd700ecfa5a8a40ac923bd035484616efecc2df", size = 44676, upload-time = "2025-10-06T05:37:52.222Z" }, + { url = "https://files.pythonhosted.org/packages/89/76/c615883b7b521ead2944bb3480398cbb07e12b7b4e4d073d3752eb721558/frozenlist-1.8.0-cp314-cp314t-win_amd64.whl", hash = "sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd", size = 49451, upload-time = "2025-10-06T05:37:53.425Z" }, + { url = "https://files.pythonhosted.org/packages/e0/a3/5982da14e113d07b325230f95060e2169f5311b1017ea8af2a29b374c289/frozenlist-1.8.0-cp314-cp314t-win_arm64.whl", hash = "sha256:102e6314ca4da683dca92e3b1355490fed5f313b768500084fbe6371fddfdb79", size = 42507, upload-time = "2025-10-06T05:37:54.513Z" }, + { url = "https://files.pythonhosted.org/packages/9a/9a/e35b4a917281c0b8419d4207f4334c8e8c5dbf4f3f5f9ada73958d937dcc/frozenlist-1.8.0-py3-none-any.whl", hash = "sha256:0c18a16eab41e82c295618a77502e17b195883241c563b00f0aa5106fc4eaa0d", size = 13409, upload-time = "2025-10-06T05:38:16.721Z" }, +] + +[[package]] +name = "fsspec" +version = "2026.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d5/7d/5df2650c57d47c57232af5ef4b4fdbff182070421e405e0d62c6cdbfaa87/fsspec-2026.1.0.tar.gz", hash = "sha256:e987cb0496a0d81bba3a9d1cee62922fb395e7d4c3b575e57f547953334fe07b", size = 310496, upload-time = "2026-01-09T15:21:35.562Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/01/c9/97cc5aae1648dcb851958a3ddf73ccd7dbe5650d95203ecb4d7720b4cdbf/fsspec-2026.1.0-py3-none-any.whl", hash = "sha256:cb76aa913c2285a3b49bdd5fc55b1d7c708d7208126b60f2eb8194fe1b4cbdcc", size = 201838, upload-time = "2026-01-09T15:21:34.041Z" }, +] + +[[package]] +name = "gitdb" +version = "4.0.12" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "smmap" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/72/94/63b0fc47eb32792c7ba1fe1b694daec9a63620db1e313033d18140c2320a/gitdb-4.0.12.tar.gz", hash = "sha256:5ef71f855d191a3326fcfbc0d5da835f26b13fbcba60c32c21091c349ffdb571", size = 394684, upload-time = "2025-01-02T07:20:46.413Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/61/5c78b91c3143ed5c14207f463aecfc8f9dbb5092fb2869baf37c273b2705/gitdb-4.0.12-py3-none-any.whl", hash = "sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf", size = 62794, upload-time = "2025-01-02T07:20:43.624Z" }, +] + +[[package]] +name = "gitpython" +version = "3.1.46" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "gitdb" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/df/b5/59d16470a1f0dfe8c793f9ef56fd3826093fc52b3bd96d6b9d6c26c7e27b/gitpython-3.1.46.tar.gz", hash = "sha256:400124c7d0ef4ea03f7310ac2fbf7151e09ff97f2a3288d64a440c584a29c37f", size = 215371, upload-time = "2026-01-01T15:37:32.073Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/09/e21df6aef1e1ffc0c816f0522ddc3f6dcded766c3261813131c78a704470/gitpython-3.1.46-py3-none-any.whl", hash = "sha256:79812ed143d9d25b6d176a10bb511de0f9c67b1fa641d82097b0ab90398a2058", size = 208620, upload-time = "2026-01-01T15:37:30.574Z" }, +] + +[[package]] +name = "google-auth" +version = "2.48.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cryptography" }, + { name = "pyasn1-modules" }, + { name = "rsa" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0c/41/242044323fbd746615884b1c16639749e73665b718209946ebad7ba8a813/google_auth-2.48.0.tar.gz", hash = "sha256:4f7e706b0cd3208a3d940a19a822c37a476ddba5450156c3e6624a71f7c841ce", size = 326522, upload-time = "2026-01-26T19:22:47.157Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/1d/d6466de3a5249d35e832a52834115ca9d1d0de6abc22065f049707516d47/google_auth-2.48.0-py3-none-any.whl", hash = "sha256:2e2a537873d449434252a9632c28bfc268b0adb1e53f9fb62afc5333a975903f", size = 236499, upload-time = "2026-01-26T19:22:45.099Z" }, +] + +[package.optional-dependencies] +requests = [ + { name = "requests" }, +] + +[[package]] +name = "google-genai" +version = "1.60.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "distro" }, + { name = "google-auth", extra = ["requests"] }, + { name = "httpx" }, + { name = "pydantic" }, + { name = "requests" }, + { name = "sniffio" }, + { name = "tenacity" }, + { name = "typing-extensions" }, + { name = "websockets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/3f/a753be0dcee352b7d63bc6d1ba14a72591d63b6391dac0cdff7ac168c530/google_genai-1.60.0.tar.gz", hash = "sha256:9768061775fddfaecfefb0d6d7a6cabefb3952ebd246cd5f65247151c07d33d1", size = 487721, upload-time = "2026-01-21T22:17:30.398Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/31/e5/384b1f383917b5f0ae92e28f47bc27b16e3d26cd9bacb25e9f8ecab3c8fe/google_genai-1.60.0-py3-none-any.whl", hash = "sha256:967338378ffecebec19a8ed90cf8797b26818bacbefd7846a9280beb1099f7f3", size = 719431, upload-time = "2026-01-21T22:17:28.086Z" }, +] + +[[package]] +name = "googleapis-common-protos" +version = "1.72.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e5/7b/adfd75544c415c487b33061fe7ae526165241c1ea133f9a9125a56b39fd8/googleapis_common_protos-1.72.0.tar.gz", hash = "sha256:e55a601c1b32b52d7a3e65f43563e2aa61bcd737998ee672ac9b951cd49319f5", size = 147433, upload-time = "2025-11-06T18:29:24.087Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c4/ab/09169d5a4612a5f92490806649ac8d41e3ec9129c636754575b3553f4ea4/googleapis_common_protos-1.72.0-py3-none-any.whl", hash = "sha256:4299c5a82d5ae1a9702ada957347726b167f9f8d1fc352477702a1e851ff4038", size = 297515, upload-time = "2025-11-06T18:29:13.14Z" }, +] + +[[package]] +name = "grpcio" +version = "1.76.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b6/e0/318c1ce3ae5a17894d5791e87aea147587c9e702f24122cc7a5c8bbaeeb1/grpcio-1.76.0.tar.gz", hash = "sha256:7be78388d6da1a25c0d5ec506523db58b18be22d9c37d8d3a32c08be4987bd73", size = 12785182, upload-time = "2025-10-21T16:23:12.106Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bf/05/8e29121994b8d959ffa0afd28996d452f291b48cfc0875619de0bde2c50c/grpcio-1.76.0-cp312-cp312-linux_armv7l.whl", hash = "sha256:81fd9652b37b36f16138611c7e884eb82e0cec137c40d3ef7c3f9b3ed00f6ed8", size = 5799718, upload-time = "2025-10-21T16:21:17.939Z" }, + { url = "https://files.pythonhosted.org/packages/d9/75/11d0e66b3cdf998c996489581bdad8900db79ebd83513e45c19548f1cba4/grpcio-1.76.0-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:04bbe1bfe3a68bbfd4e52402ab7d4eb59d72d02647ae2042204326cf4bbad280", size = 11825627, upload-time = "2025-10-21T16:21:20.466Z" }, + { url = "https://files.pythonhosted.org/packages/28/50/2f0aa0498bc188048f5d9504dcc5c2c24f2eb1a9337cd0fa09a61a2e75f0/grpcio-1.76.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d388087771c837cdb6515539f43b9d4bf0b0f23593a24054ac16f7a960be16f4", size = 6359167, upload-time = "2025-10-21T16:21:23.122Z" }, + { url = "https://files.pythonhosted.org/packages/66/e5/bbf0bb97d29ede1d59d6588af40018cfc345b17ce979b7b45424628dc8bb/grpcio-1.76.0-cp312-cp312-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:9f8f757bebaaea112c00dba718fc0d3260052ce714e25804a03f93f5d1c6cc11", size = 7044267, upload-time = "2025-10-21T16:21:25.995Z" }, + { url = "https://files.pythonhosted.org/packages/f5/86/f6ec2164f743d9609691115ae8ece098c76b894ebe4f7c94a655c6b03e98/grpcio-1.76.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:980a846182ce88c4f2f7e2c22c56aefd515daeb36149d1c897f83cf57999e0b6", size = 6573963, upload-time = "2025-10-21T16:21:28.631Z" }, + { url = "https://files.pythonhosted.org/packages/60/bc/8d9d0d8505feccfdf38a766d262c71e73639c165b311c9457208b56d92ae/grpcio-1.76.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:f92f88e6c033db65a5ae3d97905c8fea9c725b63e28d5a75cb73b49bda5024d8", size = 7164484, upload-time = "2025-10-21T16:21:30.837Z" }, + { url = "https://files.pythonhosted.org/packages/67/e6/5d6c2fc10b95edf6df9b8f19cf10a34263b7fd48493936fffd5085521292/grpcio-1.76.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:4baf3cbe2f0be3289eb68ac8ae771156971848bb8aaff60bad42005539431980", size = 8127777, upload-time = "2025-10-21T16:21:33.577Z" }, + { url = "https://files.pythonhosted.org/packages/3f/c8/dce8ff21c86abe025efe304d9e31fdb0deaaa3b502b6a78141080f206da0/grpcio-1.76.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:615ba64c208aaceb5ec83bfdce7728b80bfeb8be97562944836a7a0a9647d882", size = 7594014, upload-time = "2025-10-21T16:21:41.882Z" }, + { url = "https://files.pythonhosted.org/packages/e0/42/ad28191ebf983a5d0ecef90bab66baa5a6b18f2bfdef9d0a63b1973d9f75/grpcio-1.76.0-cp312-cp312-win32.whl", hash = "sha256:45d59a649a82df5718fd9527ce775fd66d1af35e6d31abdcdc906a49c6822958", size = 3984750, upload-time = "2025-10-21T16:21:44.006Z" }, + { url = "https://files.pythonhosted.org/packages/9e/00/7bd478cbb851c04a48baccaa49b75abaa8e4122f7d86da797500cccdd771/grpcio-1.76.0-cp312-cp312-win_amd64.whl", hash = "sha256:c088e7a90b6017307f423efbb9d1ba97a22aa2170876223f9709e9d1de0b5347", size = 4704003, upload-time = "2025-10-21T16:21:46.244Z" }, + { url = "https://files.pythonhosted.org/packages/fc/ed/71467ab770effc9e8cef5f2e7388beb2be26ed642d567697bb103a790c72/grpcio-1.76.0-cp313-cp313-linux_armv7l.whl", hash = "sha256:26ef06c73eb53267c2b319f43e6634c7556ea37672029241a056629af27c10e2", size = 5807716, upload-time = "2025-10-21T16:21:48.475Z" }, + { url = "https://files.pythonhosted.org/packages/2c/85/c6ed56f9817fab03fa8a111ca91469941fb514e3e3ce6d793cb8f1e1347b/grpcio-1.76.0-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:45e0111e73f43f735d70786557dc38141185072d7ff8dc1829d6a77ac1471468", size = 11821522, upload-time = "2025-10-21T16:21:51.142Z" }, + { url = "https://files.pythonhosted.org/packages/ac/31/2b8a235ab40c39cbc141ef647f8a6eb7b0028f023015a4842933bc0d6831/grpcio-1.76.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:83d57312a58dcfe2a3a0f9d1389b299438909a02db60e2f2ea2ae2d8034909d3", size = 6362558, upload-time = "2025-10-21T16:21:54.213Z" }, + { url = "https://files.pythonhosted.org/packages/bd/64/9784eab483358e08847498ee56faf8ff6ea8e0a4592568d9f68edc97e9e9/grpcio-1.76.0-cp313-cp313-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:3e2a27c89eb9ac3d81ec8835e12414d73536c6e620355d65102503064a4ed6eb", size = 7049990, upload-time = "2025-10-21T16:21:56.476Z" }, + { url = "https://files.pythonhosted.org/packages/2b/94/8c12319a6369434e7a184b987e8e9f3b49a114c489b8315f029e24de4837/grpcio-1.76.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:61f69297cba3950a524f61c7c8ee12e55c486cb5f7db47ff9dcee33da6f0d3ae", size = 6575387, upload-time = "2025-10-21T16:21:59.051Z" }, + { url = "https://files.pythonhosted.org/packages/15/0f/f12c32b03f731f4a6242f771f63039df182c8b8e2cf8075b245b409259d4/grpcio-1.76.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6a15c17af8839b6801d554263c546c69c4d7718ad4321e3166175b37eaacca77", size = 7166668, upload-time = "2025-10-21T16:22:02.049Z" }, + { url = "https://files.pythonhosted.org/packages/ff/2d/3ec9ce0c2b1d92dd59d1c3264aaec9f0f7c817d6e8ac683b97198a36ed5a/grpcio-1.76.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:25a18e9810fbc7e7f03ec2516addc116a957f8cbb8cbc95ccc80faa072743d03", size = 8124928, upload-time = "2025-10-21T16:22:04.984Z" }, + { url = "https://files.pythonhosted.org/packages/1a/74/fd3317be5672f4856bcdd1a9e7b5e17554692d3db9a3b273879dc02d657d/grpcio-1.76.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:931091142fd8cc14edccc0845a79248bc155425eee9a98b2db2ea4f00a235a42", size = 7589983, upload-time = "2025-10-21T16:22:07.881Z" }, + { url = "https://files.pythonhosted.org/packages/45/bb/ca038cf420f405971f19821c8c15bcbc875505f6ffadafe9ffd77871dc4c/grpcio-1.76.0-cp313-cp313-win32.whl", hash = "sha256:5e8571632780e08526f118f74170ad8d50fb0a48c23a746bef2a6ebade3abd6f", size = 3984727, upload-time = "2025-10-21T16:22:10.032Z" }, + { url = "https://files.pythonhosted.org/packages/41/80/84087dc56437ced7cdd4b13d7875e7439a52a261e3ab4e06488ba6173b0a/grpcio-1.76.0-cp313-cp313-win_amd64.whl", hash = "sha256:f9f7bd5faab55f47231ad8dba7787866b69f5e93bc306e3915606779bbfb4ba8", size = 4702799, upload-time = "2025-10-21T16:22:12.709Z" }, + { url = "https://files.pythonhosted.org/packages/b4/46/39adac80de49d678e6e073b70204091e76631e03e94928b9ea4ecf0f6e0e/grpcio-1.76.0-cp314-cp314-linux_armv7l.whl", hash = "sha256:ff8a59ea85a1f2191a0ffcc61298c571bc566332f82e5f5be1b83c9d8e668a62", size = 5808417, upload-time = "2025-10-21T16:22:15.02Z" }, + { url = "https://files.pythonhosted.org/packages/9c/f5/a4531f7fb8b4e2a60b94e39d5d924469b7a6988176b3422487be61fe2998/grpcio-1.76.0-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:06c3d6b076e7b593905d04fdba6a0525711b3466f43b3400266f04ff735de0cd", size = 11828219, upload-time = "2025-10-21T16:22:17.954Z" }, + { url = "https://files.pythonhosted.org/packages/4b/1c/de55d868ed7a8bd6acc6b1d6ddc4aa36d07a9f31d33c912c804adb1b971b/grpcio-1.76.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fd5ef5932f6475c436c4a55e4336ebbe47bd3272be04964a03d316bbf4afbcbc", size = 6367826, upload-time = "2025-10-21T16:22:20.721Z" }, + { url = "https://files.pythonhosted.org/packages/59/64/99e44c02b5adb0ad13ab3adc89cb33cb54bfa90c74770f2607eea629b86f/grpcio-1.76.0-cp314-cp314-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:b331680e46239e090f5b3cead313cc772f6caa7d0fc8de349337563125361a4a", size = 7049550, upload-time = "2025-10-21T16:22:23.637Z" }, + { url = "https://files.pythonhosted.org/packages/43/28/40a5be3f9a86949b83e7d6a2ad6011d993cbe9b6bd27bea881f61c7788b6/grpcio-1.76.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2229ae655ec4e8999599469559e97630185fdd53ae1e8997d147b7c9b2b72cba", size = 6575564, upload-time = "2025-10-21T16:22:26.016Z" }, + { url = "https://files.pythonhosted.org/packages/4b/a9/1be18e6055b64467440208a8559afac243c66a8b904213af6f392dc2212f/grpcio-1.76.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:490fa6d203992c47c7b9e4a9d39003a0c2bcc1c9aa3c058730884bbbb0ee9f09", size = 7176236, upload-time = "2025-10-21T16:22:28.362Z" }, + { url = "https://files.pythonhosted.org/packages/0f/55/dba05d3fcc151ce6e81327541d2cc8394f442f6b350fead67401661bf041/grpcio-1.76.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:479496325ce554792dba6548fae3df31a72cef7bad71ca2e12b0e58f9b336bfc", size = 8125795, upload-time = "2025-10-21T16:22:31.075Z" }, + { url = "https://files.pythonhosted.org/packages/4a/45/122df922d05655f63930cf42c9e3f72ba20aadb26c100ee105cad4ce4257/grpcio-1.76.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:1c9b93f79f48b03ada57ea24725d83a30284a012ec27eab2cf7e50a550cbbbcc", size = 7592214, upload-time = "2025-10-21T16:22:33.831Z" }, + { url = "https://files.pythonhosted.org/packages/4a/6e/0b899b7f6b66e5af39e377055fb4a6675c9ee28431df5708139df2e93233/grpcio-1.76.0-cp314-cp314-win32.whl", hash = "sha256:747fa73efa9b8b1488a95d0ba1039c8e2dca0f741612d80415b1e1c560febf4e", size = 4062961, upload-time = "2025-10-21T16:22:36.468Z" }, + { url = "https://files.pythonhosted.org/packages/19/41/0b430b01a2eb38ee887f88c1f07644a1df8e289353b78e82b37ef988fb64/grpcio-1.76.0-cp314-cp314-win_amd64.whl", hash = "sha256:922fa70ba549fce362d2e2871ab542082d66e2aaf0c19480ea453905b01f384e", size = 4834462, upload-time = "2025-10-21T16:22:39.772Z" }, +] + +[[package]] +name = "h11" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" }, +] + +[[package]] +name = "hf-xet" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5e/6e/0f11bacf08a67f7fb5ee09740f2ca54163863b07b70d579356e9222ce5d8/hf_xet-1.2.0.tar.gz", hash = "sha256:a8c27070ca547293b6890c4bf389f713f80e8c478631432962bb7f4bc0bd7d7f", size = 506020, upload-time = "2025-10-24T19:04:32.129Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/a5/85ef910a0aa034a2abcfadc360ab5ac6f6bc4e9112349bd40ca97551cff0/hf_xet-1.2.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:ceeefcd1b7aed4956ae8499e2199607765fbd1c60510752003b6cc0b8413b649", size = 2861870, upload-time = "2025-10-24T19:04:11.422Z" }, + { url = "https://files.pythonhosted.org/packages/ea/40/e2e0a7eb9a51fe8828ba2d47fe22a7e74914ea8a0db68a18c3aa7449c767/hf_xet-1.2.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b70218dd548e9840224df5638fdc94bd033552963cfa97f9170829381179c813", size = 2717584, upload-time = "2025-10-24T19:04:09.586Z" }, + { url = "https://files.pythonhosted.org/packages/a5/7d/daf7f8bc4594fdd59a8a596f9e3886133fdc68e675292218a5e4c1b7e834/hf_xet-1.2.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d40b18769bb9a8bc82a9ede575ce1a44c75eb80e7375a01d76259089529b5dc", size = 3315004, upload-time = "2025-10-24T19:04:00.314Z" }, + { url = "https://files.pythonhosted.org/packages/b1/ba/45ea2f605fbf6d81c8b21e4d970b168b18a53515923010c312c06cd83164/hf_xet-1.2.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:cd3a6027d59cfb60177c12d6424e31f4b5ff13d8e3a1247b3a584bf8977e6df5", size = 3222636, upload-time = "2025-10-24T19:03:58.111Z" }, + { url = "https://files.pythonhosted.org/packages/4a/1d/04513e3cab8f29ab8c109d309ddd21a2705afab9d52f2ba1151e0c14f086/hf_xet-1.2.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6de1fc44f58f6dd937956c8d304d8c2dea264c80680bcfa61ca4a15e7b76780f", size = 3408448, upload-time = "2025-10-24T19:04:20.951Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7c/60a2756d7feec7387db3a1176c632357632fbe7849fce576c5559d4520c7/hf_xet-1.2.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f182f264ed2acd566c514e45da9f2119110e48a87a327ca271027904c70c5832", size = 3503401, upload-time = "2025-10-24T19:04:22.549Z" }, + { url = "https://files.pythonhosted.org/packages/4e/64/48fffbd67fb418ab07451e4ce641a70de1c40c10a13e25325e24858ebe5a/hf_xet-1.2.0-cp313-cp313t-win_amd64.whl", hash = "sha256:293a7a3787e5c95d7be1857358a9130694a9c6021de3f27fa233f37267174382", size = 2900866, upload-time = "2025-10-24T19:04:33.461Z" }, + { url = "https://files.pythonhosted.org/packages/e2/51/f7e2caae42f80af886db414d4e9885fac959330509089f97cccb339c6b87/hf_xet-1.2.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:10bfab528b968c70e062607f663e21e34e2bba349e8038db546646875495179e", size = 2861861, upload-time = "2025-10-24T19:04:19.01Z" }, + { url = "https://files.pythonhosted.org/packages/6e/1d/a641a88b69994f9371bd347f1dd35e5d1e2e2460a2e350c8d5165fc62005/hf_xet-1.2.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:2a212e842647b02eb6a911187dc878e79c4aa0aa397e88dd3b26761676e8c1f8", size = 2717699, upload-time = "2025-10-24T19:04:17.306Z" }, + { url = "https://files.pythonhosted.org/packages/df/e0/e5e9bba7d15f0318955f7ec3f4af13f92e773fbb368c0b8008a5acbcb12f/hf_xet-1.2.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:30e06daccb3a7d4c065f34fc26c14c74f4653069bb2b194e7f18f17cbe9939c0", size = 3314885, upload-time = "2025-10-24T19:04:07.642Z" }, + { url = "https://files.pythonhosted.org/packages/21/90/b7fe5ff6f2b7b8cbdf1bd56145f863c90a5807d9758a549bf3d916aa4dec/hf_xet-1.2.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:29c8fc913a529ec0a91867ce3d119ac1aac966e098cf49501800c870328cc090", size = 3221550, upload-time = "2025-10-24T19:04:05.55Z" }, + { url = "https://files.pythonhosted.org/packages/6f/cb/73f276f0a7ce46cc6a6ec7d6c7d61cbfe5f2e107123d9bbd0193c355f106/hf_xet-1.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e159cbfcfbb29f920db2c09ed8b660eb894640d284f102ada929b6e3dc410a", size = 3408010, upload-time = "2025-10-24T19:04:28.598Z" }, + { url = "https://files.pythonhosted.org/packages/b8/1e/d642a12caa78171f4be64f7cd9c40e3ca5279d055d0873188a58c0f5fbb9/hf_xet-1.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:9c91d5ae931510107f148874e9e2de8a16052b6f1b3ca3c1b12f15ccb491390f", size = 3503264, upload-time = "2025-10-24T19:04:30.397Z" }, + { url = "https://files.pythonhosted.org/packages/17/b5/33764714923fa1ff922770f7ed18c2daae034d21ae6e10dbf4347c854154/hf_xet-1.2.0-cp314-cp314t-win_amd64.whl", hash = "sha256:210d577732b519ac6ede149d2f2f34049d44e8622bf14eb3d63bbcd2d4b332dc", size = 2901071, upload-time = "2025-10-24T19:04:37.463Z" }, + { url = "https://files.pythonhosted.org/packages/96/2d/22338486473df5923a9ab7107d375dbef9173c338ebef5098ef593d2b560/hf_xet-1.2.0-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:46740d4ac024a7ca9b22bebf77460ff43332868b661186a8e46c227fdae01848", size = 2866099, upload-time = "2025-10-24T19:04:15.366Z" }, + { url = "https://files.pythonhosted.org/packages/7f/8c/c5becfa53234299bc2210ba314eaaae36c2875e0045809b82e40a9544f0c/hf_xet-1.2.0-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:27df617a076420d8845bea087f59303da8be17ed7ec0cd7ee3b9b9f579dff0e4", size = 2722178, upload-time = "2025-10-24T19:04:13.695Z" }, + { url = "https://files.pythonhosted.org/packages/9a/92/cf3ab0b652b082e66876d08da57fcc6fa2f0e6c70dfbbafbd470bb73eb47/hf_xet-1.2.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3651fd5bfe0281951b988c0facbe726aa5e347b103a675f49a3fa8144c7968fd", size = 3320214, upload-time = "2025-10-24T19:04:03.596Z" }, + { url = "https://files.pythonhosted.org/packages/46/92/3f7ec4a1b6a65bf45b059b6d4a5d38988f63e193056de2f420137e3c3244/hf_xet-1.2.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:d06fa97c8562fb3ee7a378dd9b51e343bc5bc8190254202c9771029152f5e08c", size = 3229054, upload-time = "2025-10-24T19:04:01.949Z" }, + { url = "https://files.pythonhosted.org/packages/0b/dd/7ac658d54b9fb7999a0ccb07ad863b413cbaf5cf172f48ebcd9497ec7263/hf_xet-1.2.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:4c1428c9ae73ec0939410ec73023c4f842927f39db09b063b9482dac5a3bb737", size = 3413812, upload-time = "2025-10-24T19:04:24.585Z" }, + { url = "https://files.pythonhosted.org/packages/92/68/89ac4e5b12a9ff6286a12174c8538a5930e2ed662091dd2572bbe0a18c8a/hf_xet-1.2.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a55558084c16b09b5ed32ab9ed38421e2d87cf3f1f89815764d1177081b99865", size = 3508920, upload-time = "2025-10-24T19:04:26.927Z" }, + { url = "https://files.pythonhosted.org/packages/cb/44/870d44b30e1dcfb6a65932e3e1506c103a8a5aea9103c337e7a53180322c/hf_xet-1.2.0-cp37-abi3-win_amd64.whl", hash = "sha256:e6584a52253f72c9f52f9e549d5895ca7a471608495c4ecaa6cc73dba2b24d69", size = 2905735, upload-time = "2025-10-24T19:04:35.928Z" }, +] + +[[package]] +name = "httpcore" +version = "1.0.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484, upload-time = "2025-04-24T22:06:22.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784, upload-time = "2025-04-24T22:06:20.566Z" }, +] + +[[package]] +name = "httptools" +version = "0.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b5/46/120a669232c7bdedb9d52d4aeae7e6c7dfe151e99dc70802e2fc7a5e1993/httptools-0.7.1.tar.gz", hash = "sha256:abd72556974f8e7c74a259655924a717a2365b236c882c3f6f8a45fe94703ac9", size = 258961, upload-time = "2025-10-10T03:55:08.559Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/53/7f/403e5d787dc4942316e515e949b0c8a013d84078a915910e9f391ba9b3ed/httptools-0.7.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:38e0c83a2ea9746ebbd643bdfb521b9aa4a91703e2cd705c20443405d2fd16a5", size = 206280, upload-time = "2025-10-10T03:54:39.274Z" }, + { url = "https://files.pythonhosted.org/packages/2a/0d/7f3fd28e2ce311ccc998c388dd1c53b18120fda3b70ebb022b135dc9839b/httptools-0.7.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f25bbaf1235e27704f1a7b86cd3304eabc04f569c828101d94a0e605ef7205a5", size = 110004, upload-time = "2025-10-10T03:54:40.403Z" }, + { url = "https://files.pythonhosted.org/packages/84/a6/b3965e1e146ef5762870bbe76117876ceba51a201e18cc31f5703e454596/httptools-0.7.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:2c15f37ef679ab9ecc06bfc4e6e8628c32a8e4b305459de7cf6785acd57e4d03", size = 517655, upload-time = "2025-10-10T03:54:41.347Z" }, + { url = "https://files.pythonhosted.org/packages/11/7d/71fee6f1844e6fa378f2eddde6c3e41ce3a1fb4b2d81118dd544e3441ec0/httptools-0.7.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7fe6e96090df46b36ccfaf746f03034e5ab723162bc51b0a4cf58305324036f2", size = 511440, upload-time = "2025-10-10T03:54:42.452Z" }, + { url = "https://files.pythonhosted.org/packages/22/a5/079d216712a4f3ffa24af4a0381b108aa9c45b7a5cc6eb141f81726b1823/httptools-0.7.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:f72fdbae2dbc6e68b8239defb48e6a5937b12218e6ffc2c7846cc37befa84362", size = 495186, upload-time = "2025-10-10T03:54:43.937Z" }, + { url = "https://files.pythonhosted.org/packages/e9/9e/025ad7b65278745dee3bd0ebf9314934c4592560878308a6121f7f812084/httptools-0.7.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e99c7b90a29fd82fea9ef57943d501a16f3404d7b9ee81799d41639bdaae412c", size = 499192, upload-time = "2025-10-10T03:54:45.003Z" }, + { url = "https://files.pythonhosted.org/packages/6d/de/40a8f202b987d43afc4d54689600ff03ce65680ede2f31df348d7f368b8f/httptools-0.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:3e14f530fefa7499334a79b0cf7e7cd2992870eb893526fb097d51b4f2d0f321", size = 86694, upload-time = "2025-10-10T03:54:45.923Z" }, + { url = "https://files.pythonhosted.org/packages/09/8f/c77b1fcbfd262d422f12da02feb0d218fa228d52485b77b953832105bb90/httptools-0.7.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:6babce6cfa2a99545c60bfef8bee0cc0545413cb0018f617c8059a30ad985de3", size = 202889, upload-time = "2025-10-10T03:54:47.089Z" }, + { url = "https://files.pythonhosted.org/packages/0a/1a/22887f53602feaa066354867bc49a68fc295c2293433177ee90870a7d517/httptools-0.7.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:601b7628de7504077dd3dcb3791c6b8694bbd967148a6d1f01806509254fb1ca", size = 108180, upload-time = "2025-10-10T03:54:48.052Z" }, + { url = "https://files.pythonhosted.org/packages/32/6a/6aaa91937f0010d288d3d124ca2946d48d60c3a5ee7ca62afe870e3ea011/httptools-0.7.1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:04c6c0e6c5fb0739c5b8a9eb046d298650a0ff38cf42537fc372b28dc7e4472c", size = 478596, upload-time = "2025-10-10T03:54:48.919Z" }, + { url = "https://files.pythonhosted.org/packages/6d/70/023d7ce117993107be88d2cbca566a7c1323ccbaf0af7eabf2064fe356f6/httptools-0.7.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:69d4f9705c405ae3ee83d6a12283dc9feba8cc6aaec671b412917e644ab4fa66", size = 473268, upload-time = "2025-10-10T03:54:49.993Z" }, + { url = "https://files.pythonhosted.org/packages/32/4d/9dd616c38da088e3f436e9a616e1d0cc66544b8cdac405cc4e81c8679fc7/httptools-0.7.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:44c8f4347d4b31269c8a9205d8a5ee2df5322b09bbbd30f8f862185bb6b05346", size = 455517, upload-time = "2025-10-10T03:54:51.066Z" }, + { url = "https://files.pythonhosted.org/packages/1d/3a/a6c595c310b7df958e739aae88724e24f9246a514d909547778d776799be/httptools-0.7.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:465275d76db4d554918aba40bf1cbebe324670f3dfc979eaffaa5d108e2ed650", size = 458337, upload-time = "2025-10-10T03:54:52.196Z" }, + { url = "https://files.pythonhosted.org/packages/fd/82/88e8d6d2c51edc1cc391b6e044c6c435b6aebe97b1abc33db1b0b24cd582/httptools-0.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:322d00c2068d125bd570f7bf78b2d367dad02b919d8581d7476d8b75b294e3e6", size = 85743, upload-time = "2025-10-10T03:54:53.448Z" }, + { url = "https://files.pythonhosted.org/packages/34/50/9d095fcbb6de2d523e027a2f304d4551855c2f46e0b82befd718b8b20056/httptools-0.7.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:c08fe65728b8d70b6923ce31e3956f859d5e1e8548e6f22ec520a962c6757270", size = 203619, upload-time = "2025-10-10T03:54:54.321Z" }, + { url = "https://files.pythonhosted.org/packages/07/f0/89720dc5139ae54b03f861b5e2c55a37dba9a5da7d51e1e824a1f343627f/httptools-0.7.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:7aea2e3c3953521c3c51106ee11487a910d45586e351202474d45472db7d72d3", size = 108714, upload-time = "2025-10-10T03:54:55.163Z" }, + { url = "https://files.pythonhosted.org/packages/b3/cb/eea88506f191fb552c11787c23f9a405f4c7b0c5799bf73f2249cd4f5228/httptools-0.7.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:0e68b8582f4ea9166be62926077a3334064d422cf08ab87d8b74664f8e9058e1", size = 472909, upload-time = "2025-10-10T03:54:56.056Z" }, + { url = "https://files.pythonhosted.org/packages/e0/4a/a548bdfae6369c0d078bab5769f7b66f17f1bfaa6fa28f81d6be6959066b/httptools-0.7.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:df091cf961a3be783d6aebae963cc9b71e00d57fa6f149025075217bc6a55a7b", size = 470831, upload-time = "2025-10-10T03:54:57.219Z" }, + { url = "https://files.pythonhosted.org/packages/4d/31/14df99e1c43bd132eec921c2e7e11cda7852f65619bc0fc5bdc2d0cb126c/httptools-0.7.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:f084813239e1eb403ddacd06a30de3d3e09a9b76e7894dcda2b22f8a726e9c60", size = 452631, upload-time = "2025-10-10T03:54:58.219Z" }, + { url = "https://files.pythonhosted.org/packages/22/d2/b7e131f7be8d854d48cb6d048113c30f9a46dca0c9a8b08fcb3fcd588cdc/httptools-0.7.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:7347714368fb2b335e9063bc2b96f2f87a9ceffcd9758ac295f8bbcd3ffbc0ca", size = 452910, upload-time = "2025-10-10T03:54:59.366Z" }, + { url = "https://files.pythonhosted.org/packages/53/cf/878f3b91e4e6e011eff6d1fa9ca39f7eb17d19c9d7971b04873734112f30/httptools-0.7.1-cp314-cp314-win_amd64.whl", hash = "sha256:cfabda2a5bb85aa2a904ce06d974a3f30fb36cc63d7feaddec05d2050acede96", size = 88205, upload-time = "2025-10-10T03:55:00.389Z" }, +] + +[[package]] +name = "httpx" +version = "0.28.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406, upload-time = "2024-12-06T15:37:23.222Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517, upload-time = "2024-12-06T15:37:21.509Z" }, +] + +[[package]] +name = "httpx-sse" +version = "0.4.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/4c/751061ffa58615a32c31b2d82e8482be8dd4a89154f003147acee90f2be9/httpx_sse-0.4.3.tar.gz", hash = "sha256:9b1ed0127459a66014aec3c56bebd93da3c1bc8bb6618c8082039a44889a755d", size = 15943, upload-time = "2025-10-10T21:48:22.271Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/fd/6668e5aec43ab844de6fc74927e155a3b37bf40d7c3790e49fc0406b6578/httpx_sse-0.4.3-py3-none-any.whl", hash = "sha256:0ac1c9fe3c0afad2e0ebb25a934a59f4c7823b60792691f779fad2c5568830fc", size = 8960, upload-time = "2025-10-10T21:48:21.158Z" }, +] + +[[package]] +name = "huggingface-hub" +version = "1.3.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "fsspec" }, + { name = "hf-xet", marker = "platform_machine == 'AMD64' or platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" }, + { name = "httpx" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "shellingham" }, + { name = "tqdm" }, + { name = "typer-slim" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/af/25/74af9d16cd59ae15b12467a79a84aa0fe24be4aba68fc4da0c1864d49c17/huggingface_hub-1.3.4.tar.gz", hash = "sha256:c20d5484a611b7b7891d272e8fc9f77d5de025b0480bdacfa858efb3780b455f", size = 627683, upload-time = "2026-01-26T14:05:10.656Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/55/07/3d0c34c345043c6a398a5882e196b2220dc5861adfa18322448b90908f26/huggingface_hub-1.3.4-py3-none-any.whl", hash = "sha256:a0c526e76eb316e96a91e8a1a7a93cf66b0dd210be1a17bd5fc5ae53cba76bfd", size = 536611, upload-time = "2026-01-26T14:05:08.549Z" }, +] + +[[package]] +name = "humanfriendly" +version = "10.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyreadline3", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cc/3f/2c29224acb2e2df4d2046e4c73ee2662023c58ff5b113c4c1adac0886c43/humanfriendly-10.0.tar.gz", hash = "sha256:6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc", size = 360702, upload-time = "2021-09-17T21:40:43.31Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl", hash = "sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477", size = 86794, upload-time = "2021-09-17T21:40:39.897Z" }, +] + +[[package]] +name = "identify" +version = "2.6.16" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5b/8d/e8b97e6bd3fb6fb271346f7981362f1e04d6a7463abd0de79e1fda17c067/identify-2.6.16.tar.gz", hash = "sha256:846857203b5511bbe94d5a352a48ef2359532bc8f6727b5544077a0dcfb24980", size = 99360, upload-time = "2026-01-12T18:58:58.201Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b8/58/40fbbcefeda82364720eba5cf2270f98496bdfa19ea75b4cccae79c698e6/identify-2.6.16-py2.py3-none-any.whl", hash = "sha256:391ee4d77741d994189522896270b787aed8670389bfd60f326d677d64a6dfb0", size = 99202, upload-time = "2026-01-12T18:58:56.627Z" }, +] + +[[package]] +name = "idna" +version = "3.11" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6f/6d/0703ccc57f3a7233505399edb88de3cbd678da106337b9fcde432b65ed60/idna-3.11.tar.gz", hash = "sha256:795dafcc9c04ed0c1fb032c2aa73654d8e8c5023a7df64a53f39190ada629902", size = 194582, upload-time = "2025-10-12T14:55:20.501Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl", hash = "sha256:771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea", size = 71008, upload-time = "2025-10-12T14:55:18.883Z" }, +] + +[[package]] +name = "importlib-metadata" +version = "8.7.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "zipp" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f3/49/3b30cad09e7771a4982d9975a8cbf64f00d4a1ececb53297f1d9a7be1b10/importlib_metadata-8.7.1.tar.gz", hash = "sha256:49fef1ae6440c182052f407c8d34a68f72efc36db9ca90dc0113398f2fdde8bb", size = 57107, upload-time = "2025-12-21T10:00:19.278Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/5e/f8e9a1d23b9c20a551a8a02ea3637b4642e22c2626e3a13a9a29cdea99eb/importlib_metadata-8.7.1-py3-none-any.whl", hash = "sha256:5a1f80bf1daa489495071efbb095d75a634cf28a8bc299581244063b53176151", size = 27865, upload-time = "2025-12-21T10:00:18.329Z" }, +] + +[[package]] +name = "importlib-resources" +version = "6.5.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cf/8c/f834fbf984f691b4f7ff60f50b514cc3de5cc08abfc3295564dd89c5e2e7/importlib_resources-6.5.2.tar.gz", hash = "sha256:185f87adef5bcc288449d98fb4fba07cea78bc036455dd44c5fc4a2fe78fed2c", size = 44693, upload-time = "2025-01-03T18:51:56.698Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/ed/1f1afb2e9e7f38a545d628f864d562a5ae64fe6f7a10e28ffb9b185b4e89/importlib_resources-6.5.2-py3-none-any.whl", hash = "sha256:789cfdc3ed28c78b67a06acb8126751ced69a3d5f79c095a98298cd8a760ccec", size = 37461, upload-time = "2025-01-03T18:51:54.306Z" }, +] + +[[package]] +name = "instructor" +version = "1.14.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohttp" }, + { name = "diskcache" }, + { name = "docstring-parser" }, + { name = "jinja2" }, + { name = "jiter" }, + { name = "openai" }, + { name = "pre-commit" }, + { name = "pydantic" }, + { name = "pydantic-core" }, + { name = "requests" }, + { name = "rich" }, + { name = "tenacity" }, + { name = "ty" }, + { name = "typer" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fe/9b/276310494f4614d0936c5e667385cfa0e9ad8edbf88198e99e1ce8ea4bc7/instructor-1.14.4.tar.gz", hash = "sha256:a6825d1fb5db679f4655619d231acee7c6fc099affbbdf114fa62514a2ca3b53", size = 69949315, upload-time = "2026-01-16T22:43:36.464Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/66/b4/06766740b0455dea79de9785ca85a78324977f07872927ef62d069ce1bbf/instructor-1.14.4-py3-none-any.whl", hash = "sha256:141f3509150b3952c6579496b42c48bda2b603d8a2e8ccc88a455e1e22c46dd5", size = 176883, upload-time = "2026-01-16T22:43:32.928Z" }, +] + +[[package]] +name = "jinja2" +version = "3.1.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markupsafe" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/df/bf/f7da0350254c0ed7c72f3e33cef02e048281fec7ecec5f032d4aac52226b/jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", size = 245115, upload-time = "2025-03-05T20:05:02.478Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" }, +] + +[[package]] +name = "jiter" +version = "0.11.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a3/68/0357982493a7b20925aece061f7fb7a2678e3b232f8d73a6edb7e5304443/jiter-0.11.1.tar.gz", hash = "sha256:849dcfc76481c0ea0099391235b7ca97d7279e0fa4c86005457ac7c88e8b76dc", size = 168385, upload-time = "2025-10-17T11:31:15.186Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/15/8b/318e8af2c904a9d29af91f78c1e18f0592e189bbdb8a462902d31fe20682/jiter-0.11.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:c92148eec91052538ce6823dfca9525f5cfc8b622d7f07e9891a280f61b8c96c", size = 305655, upload-time = "2025-10-17T11:29:18.859Z" }, + { url = "https://files.pythonhosted.org/packages/f7/29/6c7de6b5d6e511d9e736312c0c9bfcee8f9b6bef68182a08b1d78767e627/jiter-0.11.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ecd4da91b5415f183a6be8f7158d127bdd9e6a3174138293c0d48d6ea2f2009d", size = 315645, upload-time = "2025-10-17T11:29:20.889Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5f/ef9e5675511ee0eb7f98dd8c90509e1f7743dbb7c350071acae87b0145f3/jiter-0.11.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7e3ac25c00b9275684d47aa42febaa90a9958e19fd1726c4ecf755fbe5e553b", size = 348003, upload-time = "2025-10-17T11:29:22.712Z" }, + { url = "https://files.pythonhosted.org/packages/56/1b/abe8c4021010b0a320d3c62682769b700fb66f92c6db02d1a1381b3db025/jiter-0.11.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:57d7305c0a841858f866cd459cd9303f73883fb5e097257f3d4a3920722c69d4", size = 365122, upload-time = "2025-10-17T11:29:24.408Z" }, + { url = "https://files.pythonhosted.org/packages/2a/2d/4a18013939a4f24432f805fbd5a19893e64650b933edb057cd405275a538/jiter-0.11.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e86fa10e117dce22c547f31dd6d2a9a222707d54853d8de4e9a2279d2c97f239", size = 488360, upload-time = "2025-10-17T11:29:25.724Z" }, + { url = "https://files.pythonhosted.org/packages/f0/77/38124f5d02ac4131f0dfbcfd1a19a0fac305fa2c005bc4f9f0736914a1a4/jiter-0.11.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ae5ef1d48aec7e01ee8420155d901bb1d192998fa811a65ebb82c043ee186711", size = 376884, upload-time = "2025-10-17T11:29:27.056Z" }, + { url = "https://files.pythonhosted.org/packages/7b/43/59fdc2f6267959b71dd23ce0bd8d4aeaf55566aa435a5d00f53d53c7eb24/jiter-0.11.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eb68e7bf65c990531ad8715e57d50195daf7c8e6f1509e617b4e692af1108939", size = 358827, upload-time = "2025-10-17T11:29:28.698Z" }, + { url = "https://files.pythonhosted.org/packages/7d/d0/b3cc20ff5340775ea3bbaa0d665518eddecd4266ba7244c9cb480c0c82ec/jiter-0.11.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:43b30c8154ded5845fa454ef954ee67bfccce629b2dea7d01f795b42bc2bda54", size = 385171, upload-time = "2025-10-17T11:29:30.078Z" }, + { url = "https://files.pythonhosted.org/packages/d2/bc/94dd1f3a61f4dc236f787a097360ec061ceeebebf4ea120b924d91391b10/jiter-0.11.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:586cafbd9dd1f3ce6a22b4a085eaa6be578e47ba9b18e198d4333e598a91db2d", size = 518359, upload-time = "2025-10-17T11:29:31.464Z" }, + { url = "https://files.pythonhosted.org/packages/7e/8c/12ee132bd67e25c75f542c227f5762491b9a316b0dad8e929c95076f773c/jiter-0.11.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:677cc2517d437a83bb30019fd4cf7cad74b465914c56ecac3440d597ac135250", size = 509205, upload-time = "2025-10-17T11:29:32.895Z" }, + { url = "https://files.pythonhosted.org/packages/39/d5/9de848928ce341d463c7e7273fce90ea6d0ea4343cd761f451860fa16b59/jiter-0.11.1-cp312-cp312-win32.whl", hash = "sha256:fa992af648fcee2b850a3286a35f62bbbaeddbb6dbda19a00d8fbc846a947b6e", size = 205448, upload-time = "2025-10-17T11:29:34.217Z" }, + { url = "https://files.pythonhosted.org/packages/ee/b0/8002d78637e05009f5e3fb5288f9d57d65715c33b5d6aa20fd57670feef5/jiter-0.11.1-cp312-cp312-win_amd64.whl", hash = "sha256:88b5cae9fa51efeb3d4bd4e52bfd4c85ccc9cac44282e2a9640893a042ba4d87", size = 204285, upload-time = "2025-10-17T11:29:35.446Z" }, + { url = "https://files.pythonhosted.org/packages/9f/a2/bb24d5587e4dff17ff796716542f663deee337358006a80c8af43ddc11e5/jiter-0.11.1-cp312-cp312-win_arm64.whl", hash = "sha256:9a6cae1ab335551917f882f2c3c1efe7617b71b4c02381e4382a8fc80a02588c", size = 188712, upload-time = "2025-10-17T11:29:37.027Z" }, + { url = "https://files.pythonhosted.org/packages/7c/4b/e4dd3c76424fad02a601d570f4f2a8438daea47ba081201a721a903d3f4c/jiter-0.11.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:71b6a920a5550f057d49d0e8bcc60945a8da998019e83f01adf110e226267663", size = 305272, upload-time = "2025-10-17T11:29:39.249Z" }, + { url = "https://files.pythonhosted.org/packages/67/83/2cd3ad5364191130f4de80eacc907f693723beaab11a46c7d155b07a092c/jiter-0.11.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0b3de72e925388453a5171be83379549300db01284f04d2a6f244d1d8de36f94", size = 314038, upload-time = "2025-10-17T11:29:40.563Z" }, + { url = "https://files.pythonhosted.org/packages/d3/3c/8e67d9ba524e97d2f04c8f406f8769a23205026b13b0938d16646d6e2d3e/jiter-0.11.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cc19dd65a2bd3d9c044c5b4ebf657ca1e6003a97c0fc10f555aa4f7fb9821c00", size = 345977, upload-time = "2025-10-17T11:29:42.009Z" }, + { url = "https://files.pythonhosted.org/packages/8d/a5/489ce64d992c29bccbffabb13961bbb0435e890d7f2d266d1f3df5e917d2/jiter-0.11.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d58faaa936743cd1464540562f60b7ce4fd927e695e8bc31b3da5b914baa9abd", size = 364503, upload-time = "2025-10-17T11:29:43.459Z" }, + { url = "https://files.pythonhosted.org/packages/d4/c0/e321dd83ee231d05c8fe4b1a12caf1f0e8c7a949bf4724d58397104f10f2/jiter-0.11.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:902640c3103625317291cb73773413b4d71847cdf9383ba65528745ff89f1d14", size = 487092, upload-time = "2025-10-17T11:29:44.835Z" }, + { url = "https://files.pythonhosted.org/packages/f9/5e/8f24ec49c8d37bd37f34ec0112e0b1a3b4b5a7b456c8efff1df5e189ad43/jiter-0.11.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:30405f726e4c2ed487b176c09f8b877a957f535d60c1bf194abb8dadedb5836f", size = 376328, upload-time = "2025-10-17T11:29:46.175Z" }, + { url = "https://files.pythonhosted.org/packages/7f/70/ded107620e809327cf7050727e17ccfa79d6385a771b7fe38fb31318ef00/jiter-0.11.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3217f61728b0baadd2551844870f65219ac4a1285d5e1a4abddff3d51fdabe96", size = 356632, upload-time = "2025-10-17T11:29:47.454Z" }, + { url = "https://files.pythonhosted.org/packages/19/53/c26f7251613f6a9079275ee43c89b8a973a95ff27532c421abc2a87afb04/jiter-0.11.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b1364cc90c03a8196f35f396f84029f12abe925415049204446db86598c8b72c", size = 384358, upload-time = "2025-10-17T11:29:49.377Z" }, + { url = "https://files.pythonhosted.org/packages/84/16/e0f2cc61e9c4d0b62f6c1bd9b9781d878a427656f88293e2a5335fa8ff07/jiter-0.11.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:53a54bf8e873820ab186b2dca9f6c3303f00d65ae5e7b7d6bda1b95aa472d646", size = 517279, upload-time = "2025-10-17T11:29:50.968Z" }, + { url = "https://files.pythonhosted.org/packages/60/5c/4cd095eaee68961bca3081acbe7c89e12ae24a5dae5fd5d2a13e01ed2542/jiter-0.11.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:7e29aca023627b0e0c2392d4248f6414d566ff3974fa08ff2ac8dbb96dfee92a", size = 508276, upload-time = "2025-10-17T11:29:52.619Z" }, + { url = "https://files.pythonhosted.org/packages/4f/25/f459240e69b0e09a7706d96ce203ad615ca36b0fe832308d2b7123abf2d0/jiter-0.11.1-cp313-cp313-win32.whl", hash = "sha256:f153e31d8bca11363751e875c0a70b3d25160ecbaee7b51e457f14498fb39d8b", size = 205593, upload-time = "2025-10-17T11:29:53.938Z" }, + { url = "https://files.pythonhosted.org/packages/7c/16/461bafe22bae79bab74e217a09c907481a46d520c36b7b9fe71ee8c9e983/jiter-0.11.1-cp313-cp313-win_amd64.whl", hash = "sha256:f773f84080b667c69c4ea0403fc67bb08b07e2b7ce1ef335dea5868451e60fed", size = 203518, upload-time = "2025-10-17T11:29:55.216Z" }, + { url = "https://files.pythonhosted.org/packages/7b/72/c45de6e320edb4fa165b7b1a414193b3cae302dd82da2169d315dcc78b44/jiter-0.11.1-cp313-cp313-win_arm64.whl", hash = "sha256:635ecd45c04e4c340d2187bcb1cea204c7cc9d32c1364d251564bf42e0e39c2d", size = 188062, upload-time = "2025-10-17T11:29:56.631Z" }, + { url = "https://files.pythonhosted.org/packages/65/9b/4a57922437ca8753ef823f434c2dec5028b237d84fa320f06a3ba1aec6e8/jiter-0.11.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:d892b184da4d94d94ddb4031296931c74ec8b325513a541ebfd6dfb9ae89904b", size = 313814, upload-time = "2025-10-17T11:29:58.509Z" }, + { url = "https://files.pythonhosted.org/packages/76/50/62a0683dadca25490a4bedc6a88d59de9af2a3406dd5a576009a73a1d392/jiter-0.11.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa22c223a3041dacb2fcd37c70dfd648b44662b4a48e242592f95bda5ab09d58", size = 344987, upload-time = "2025-10-17T11:30:00.208Z" }, + { url = "https://files.pythonhosted.org/packages/da/00/2355dbfcbf6cdeaddfdca18287f0f38ae49446bb6378e4a5971e9356fc8a/jiter-0.11.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:330e8e6a11ad4980cd66a0f4a3e0e2e0f646c911ce047014f984841924729789", size = 356399, upload-time = "2025-10-17T11:30:02.084Z" }, + { url = "https://files.pythonhosted.org/packages/c9/07/c2bd748d578fa933d894a55bff33f983bc27f75fc4e491b354bef7b78012/jiter-0.11.1-cp313-cp313t-win_amd64.whl", hash = "sha256:09e2e386ebf298547ca3a3704b729471f7ec666c2906c5c26c1a915ea24741ec", size = 203289, upload-time = "2025-10-17T11:30:03.656Z" }, + { url = "https://files.pythonhosted.org/packages/e6/ee/ace64a853a1acbd318eb0ca167bad1cf5ee037207504b83a868a5849747b/jiter-0.11.1-cp313-cp313t-win_arm64.whl", hash = "sha256:fe4a431c291157e11cee7c34627990ea75e8d153894365a3bc84b7a959d23ca8", size = 188284, upload-time = "2025-10-17T11:30:05.046Z" }, + { url = "https://files.pythonhosted.org/packages/8d/00/d6006d069e7b076e4c66af90656b63da9481954f290d5eca8c715f4bf125/jiter-0.11.1-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:0fa1f70da7a8a9713ff8e5f75ec3f90c0c870be6d526aa95e7c906f6a1c8c676", size = 304624, upload-time = "2025-10-17T11:30:06.678Z" }, + { url = "https://files.pythonhosted.org/packages/fc/45/4a0e31eb996b9ccfddbae4d3017b46f358a599ccf2e19fbffa5e531bd304/jiter-0.11.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:569ee559e5046a42feb6828c55307cf20fe43308e3ae0d8e9e4f8d8634d99944", size = 315042, upload-time = "2025-10-17T11:30:08.87Z" }, + { url = "https://files.pythonhosted.org/packages/e7/91/22f5746f5159a28c76acdc0778801f3c1181799aab196dbea2d29e064968/jiter-0.11.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f69955fa1d92e81987f092b233f0be49d4c937da107b7f7dcf56306f1d3fcce9", size = 346357, upload-time = "2025-10-17T11:30:10.222Z" }, + { url = "https://files.pythonhosted.org/packages/f5/4f/57620857d4e1dc75c8ff4856c90cb6c135e61bff9b4ebfb5dc86814e82d7/jiter-0.11.1-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:090f4c9d4a825e0fcbd0a2647c9a88a0f366b75654d982d95a9590745ff0c48d", size = 365057, upload-time = "2025-10-17T11:30:11.585Z" }, + { url = "https://files.pythonhosted.org/packages/ce/34/caf7f9cc8ae0a5bb25a5440cc76c7452d264d1b36701b90fdadd28fe08ec/jiter-0.11.1-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bbf3d8cedf9e9d825233e0dcac28ff15c47b7c5512fdfe2e25fd5bbb6e6b0cee", size = 487086, upload-time = "2025-10-17T11:30:13.052Z" }, + { url = "https://files.pythonhosted.org/packages/50/17/85b5857c329d533d433fedf98804ebec696004a1f88cabad202b2ddc55cf/jiter-0.11.1-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2aa9b1958f9c30d3d1a558b75f0626733c60eb9b7774a86b34d88060be1e67fe", size = 376083, upload-time = "2025-10-17T11:30:14.416Z" }, + { url = "https://files.pythonhosted.org/packages/85/d3/2d9f973f828226e6faebdef034097a2918077ea776fb4d88489949024787/jiter-0.11.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e42d1ca16590b768c5e7d723055acd2633908baacb3628dd430842e2e035aa90", size = 357825, upload-time = "2025-10-17T11:30:15.765Z" }, + { url = "https://files.pythonhosted.org/packages/f4/55/848d4dabf2c2c236a05468c315c2cb9dc736c5915e65449ccecdba22fb6f/jiter-0.11.1-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5db4c2486a023820b701a17aec9c5a6173c5ba4393f26662f032f2de9c848b0f", size = 383933, upload-time = "2025-10-17T11:30:17.34Z" }, + { url = "https://files.pythonhosted.org/packages/0b/6c/204c95a4fbb0e26dfa7776c8ef4a878d0c0b215868011cc904bf44f707e2/jiter-0.11.1-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:4573b78777ccfac954859a6eff45cbd9d281d80c8af049d0f1a3d9fc323d5c3a", size = 517118, upload-time = "2025-10-17T11:30:18.684Z" }, + { url = "https://files.pythonhosted.org/packages/88/25/09956644ea5a2b1e7a2a0f665cb69a973b28f4621fa61fc0c0f06ff40a31/jiter-0.11.1-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:7593ac6f40831d7961cb67633c39b9fef6689a211d7919e958f45710504f52d3", size = 508194, upload-time = "2025-10-17T11:30:20.719Z" }, + { url = "https://files.pythonhosted.org/packages/09/49/4d1657355d7f5c9e783083a03a3f07d5858efa6916a7d9634d07db1c23bd/jiter-0.11.1-cp314-cp314-win32.whl", hash = "sha256:87202ec6ff9626ff5f9351507def98fcf0df60e9a146308e8ab221432228f4ea", size = 203961, upload-time = "2025-10-17T11:30:22.073Z" }, + { url = "https://files.pythonhosted.org/packages/76/bd/f063bd5cc2712e7ca3cf6beda50894418fc0cfeb3f6ff45a12d87af25996/jiter-0.11.1-cp314-cp314-win_amd64.whl", hash = "sha256:a5dd268f6531a182c89d0dd9a3f8848e86e92dfff4201b77a18e6b98aa59798c", size = 202804, upload-time = "2025-10-17T11:30:23.452Z" }, + { url = "https://files.pythonhosted.org/packages/52/ca/4d84193dfafef1020bf0bedd5e1a8d0e89cb67c54b8519040effc694964b/jiter-0.11.1-cp314-cp314-win_arm64.whl", hash = "sha256:5d761f863f912a44748a21b5c4979c04252588ded8d1d2760976d2e42cd8d991", size = 188001, upload-time = "2025-10-17T11:30:24.915Z" }, + { url = "https://files.pythonhosted.org/packages/d5/fa/3b05e5c9d32efc770a8510eeb0b071c42ae93a5b576fd91cee9af91689a1/jiter-0.11.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:2cc5a3965285ddc33e0cab933e96b640bc9ba5940cea27ebbbf6695e72d6511c", size = 312561, upload-time = "2025-10-17T11:30:26.742Z" }, + { url = "https://files.pythonhosted.org/packages/50/d3/335822eb216154ddb79a130cbdce88fdf5c3e2b43dc5dba1fd95c485aaf5/jiter-0.11.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b572b3636a784c2768b2342f36a23078c8d3aa6d8a30745398b1bab58a6f1a8", size = 344551, upload-time = "2025-10-17T11:30:28.252Z" }, + { url = "https://files.pythonhosted.org/packages/31/6d/a0bed13676b1398f9b3ba61f32569f20a3ff270291161100956a577b2dd3/jiter-0.11.1-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ad93e3d67a981f96596d65d2298fe8d1aa649deb5374a2fb6a434410ee11915e", size = 363051, upload-time = "2025-10-17T11:30:30.009Z" }, + { url = "https://files.pythonhosted.org/packages/a4/03/313eda04aa08545a5a04ed5876e52f49ab76a4d98e54578896ca3e16313e/jiter-0.11.1-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a83097ce379e202dcc3fe3fc71a16d523d1ee9192c8e4e854158f96b3efe3f2f", size = 485897, upload-time = "2025-10-17T11:30:31.429Z" }, + { url = "https://files.pythonhosted.org/packages/5f/13/a1011b9d325e40b53b1b96a17c010b8646013417f3902f97a86325b19299/jiter-0.11.1-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7042c51e7fbeca65631eb0c332f90c0c082eab04334e7ccc28a8588e8e2804d9", size = 375224, upload-time = "2025-10-17T11:30:33.18Z" }, + { url = "https://files.pythonhosted.org/packages/92/da/1b45026b19dd39b419e917165ff0ea629dbb95f374a3a13d2df95e40a6ac/jiter-0.11.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0a68d679c0e47649a61df591660507608adc2652442de7ec8276538ac46abe08", size = 356606, upload-time = "2025-10-17T11:30:34.572Z" }, + { url = "https://files.pythonhosted.org/packages/7a/0c/9acb0e54d6a8ba59ce923a180ebe824b4e00e80e56cefde86cc8e0a948be/jiter-0.11.1-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a1b0da75dbf4b6ec0b3c9e604d1ee8beaf15bc046fff7180f7d89e3cdbd3bb51", size = 384003, upload-time = "2025-10-17T11:30:35.987Z" }, + { url = "https://files.pythonhosted.org/packages/3f/2b/e5a5fe09d6da2145e4eed651e2ce37f3c0cf8016e48b1d302e21fb1628b7/jiter-0.11.1-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:69dd514bf0fa31c62147d6002e5ca2b3e7ef5894f5ac6f0a19752385f4e89437", size = 516946, upload-time = "2025-10-17T11:30:37.425Z" }, + { url = "https://files.pythonhosted.org/packages/5f/fe/db936e16e0228d48eb81f9934e8327e9fde5185e84f02174fcd22a01be87/jiter-0.11.1-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:bb31ac0b339efa24c0ca606febd8b77ef11c58d09af1b5f2be4c99e907b11111", size = 507614, upload-time = "2025-10-17T11:30:38.977Z" }, + { url = "https://files.pythonhosted.org/packages/86/db/c4438e8febfb303486d13c6b72f5eb71cf851e300a0c1f0b4140018dd31f/jiter-0.11.1-cp314-cp314t-win32.whl", hash = "sha256:b2ce0d6156a1d3ad41da3eec63b17e03e296b78b0e0da660876fccfada86d2f7", size = 204043, upload-time = "2025-10-17T11:30:40.308Z" }, + { url = "https://files.pythonhosted.org/packages/36/59/81badb169212f30f47f817dfaabf965bc9b8204fed906fab58104ee541f9/jiter-0.11.1-cp314-cp314t-win_amd64.whl", hash = "sha256:f4db07d127b54c4a2d43b4cf05ff0193e4f73e0dd90c74037e16df0b29f666e1", size = 204046, upload-time = "2025-10-17T11:30:41.692Z" }, + { url = "https://files.pythonhosted.org/packages/dd/01/43f7b4eb61db3e565574c4c5714685d042fb652f9eef7e5a3de6aafa943a/jiter-0.11.1-cp314-cp314t-win_arm64.whl", hash = "sha256:28e4fdf2d7ebfc935523e50d1efa3970043cfaa161674fe66f9642409d001dfe", size = 188069, upload-time = "2025-10-17T11:30:43.23Z" }, + { url = "https://files.pythonhosted.org/packages/a6/bc/950dd7f170c6394b6fdd73f989d9e729bd98907bcc4430ef080a72d06b77/jiter-0.11.1-graalpy312-graalpy250_312_native-macosx_10_12_x86_64.whl", hash = "sha256:0d4d6993edc83cf75e8c6828a8d6ce40a09ee87e38c7bfba6924f39e1337e21d", size = 302626, upload-time = "2025-10-17T11:31:09.645Z" }, + { url = "https://files.pythonhosted.org/packages/3a/65/43d7971ca82ee100b7b9b520573eeef7eabc0a45d490168ebb9a9b5bb8b2/jiter-0.11.1-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:f78d151c83a87a6cf5461d5ee55bc730dd9ae227377ac6f115b922989b95f838", size = 297034, upload-time = "2025-10-17T11:31:10.975Z" }, + { url = "https://files.pythonhosted.org/packages/19/4c/000e1e0c0c67e96557a279f8969487ea2732d6c7311698819f977abae837/jiter-0.11.1-graalpy312-graalpy250_312_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9022974781155cd5521d5cb10997a03ee5e31e8454c9d999dcdccd253f2353f", size = 337328, upload-time = "2025-10-17T11:31:12.399Z" }, + { url = "https://files.pythonhosted.org/packages/d9/71/71408b02c6133153336d29fa3ba53000f1e1a3f78bb2fc2d1a1865d2e743/jiter-0.11.1-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18c77aaa9117510d5bdc6a946baf21b1f0cfa58ef04d31c8d016f206f2118960", size = 343697, upload-time = "2025-10-17T11:31:13.773Z" }, +] + +[[package]] +name = "json-repair" +version = "0.25.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/66/cb/50b0bbc3e504ef875aea0062cdc108077e4923fb8c1209c70c80dc043933/json_repair-0.25.2.tar.gz", hash = "sha256:161a56d7e6bbfd4cad3a614087e3e0dbd0e10d402dd20dc7db418432428cb32b", size = 20458, upload-time = "2024-06-27T16:26:15.492Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/43/ac6691c7b5aa7191c964a04ae926d2bb06d9297dba1f2287df5b85cb3715/json_repair-0.25.2-py3-none-any.whl", hash = "sha256:51d67295c3184b6c41a3572689661c6128cef6cfc9fb04db63130709adfc5bf0", size = 12740, upload-time = "2024-06-27T16:26:13.823Z" }, +] + +[[package]] +name = "json5" +version = "0.13.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/77/e8/a3f261a66e4663f22700bc8a17c08cb83e91fbf086726e7a228398968981/json5-0.13.0.tar.gz", hash = "sha256:b1edf8d487721c0bf64d83c28e91280781f6e21f4a797d3261c7c828d4c165bf", size = 52441, upload-time = "2026-01-01T19:42:14.99Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d7/9e/038522f50ceb7e74f1f991bf1b699f24b0c2bbe7c390dd36ad69f4582258/json5-0.13.0-py3-none-any.whl", hash = "sha256:9a08e1dd65f6a4d4c6fa82d216cf2477349ec2346a38fd70cc11d2557499fbcc", size = 36163, upload-time = "2026-01-01T19:42:13.962Z" }, +] + +[[package]] +name = "jsonref" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/0d/c1f3277e90ccdb50d33ed5ba1ec5b3f0a242ed8c1b1a85d3afeb68464dca/jsonref-1.1.0.tar.gz", hash = "sha256:32fe8e1d85af0fdefbebce950af85590b22b60f9e95443176adbde4e1ecea552", size = 8814, upload-time = "2023-01-16T16:10:04.455Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/ec/e1db9922bceb168197a558a2b8c03a7963f1afe93517ddd3cf99f202f996/jsonref-1.1.0-py3-none-any.whl", hash = "sha256:590dc7773df6c21cbf948b5dac07a72a251db28b0238ceecce0a2abfa8ec30a9", size = 9425, upload-time = "2023-01-16T16:10:02.255Z" }, +] + +[[package]] +name = "jsonschema" +version = "4.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "jsonschema-specifications" }, + { name = "referencing" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/fc/e067678238fa451312d4c62bf6e6cf5ec56375422aee02f9cb5f909b3047/jsonschema-4.26.0.tar.gz", hash = "sha256:0c26707e2efad8aa1bfc5b7ce170f3fccc2e4918ff85989ba9ffa9facb2be326", size = 366583, upload-time = "2026-01-07T13:41:07.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl", hash = "sha256:d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce", size = 90630, upload-time = "2026-01-07T13:41:05.306Z" }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2025.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/19/74/a633ee74eb36c44aa6d1095e7cc5569bebf04342ee146178e2d36600708b/jsonschema_specifications-2025.9.1.tar.gz", hash = "sha256:b540987f239e745613c7a9176f3edb72b832a4ac465cf02712288397832b5e8d", size = 32855, upload-time = "2025-09-08T01:34:59.186Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl", hash = "sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe", size = 18437, upload-time = "2025-09-08T01:34:57.871Z" }, +] + +[[package]] +name = "kubernetes" +version = "35.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "durationpy" }, + { name = "python-dateutil" }, + { name = "pyyaml" }, + { name = "requests" }, + { name = "requests-oauthlib" }, + { name = "six" }, + { name = "urllib3" }, + { name = "websocket-client" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2c/8f/85bf51ad4150f64e8c665daf0d9dfe9787ae92005efb9a4d1cba592bd79d/kubernetes-35.0.0.tar.gz", hash = "sha256:3d00d344944239821458b9efd484d6df9f011da367ecb155dadf9513f05f09ee", size = 1094642, upload-time = "2026-01-16T01:05:27.76Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/70/05b685ea2dffcb2adbf3cdcea5d8865b7bc66f67249084cf845012a0ff13/kubernetes-35.0.0-py2.py3-none-any.whl", hash = "sha256:39e2b33b46e5834ef6c3985ebfe2047ab39135d41de51ce7641a7ca5b372a13d", size = 2017602, upload-time = "2026-01-16T01:05:25.991Z" }, +] + +[[package]] +name = "lance-namespace" +version = "0.4.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "lance-namespace-urllib3-client" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b4/b5/0c3c55cf336b1e90392c2e24ac833551659e8bb3c61644b2d94825eb31bd/lance_namespace-0.4.5.tar.gz", hash = "sha256:0aee0abed3a1fa762c2955c7d12bb3004cea5c82ba28f6fcb9fe79d0cc19e317", size = 9827, upload-time = "2026-01-07T19:20:23.005Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/34/88/173687dad72baf819223e3b506898e386bc88c26ff8da5e8013291e02daf/lance_namespace-0.4.5-py3-none-any.whl", hash = "sha256:cd1a4f789de03ba23a0c16f100b1464cca572a5d04e428917a54d09db912d548", size = 11703, upload-time = "2026-01-07T19:20:25.394Z" }, +] + +[[package]] +name = "lance-namespace-urllib3-client" +version = "0.4.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dateutil" }, + { name = "typing-extensions" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/97/a9/4e527c2f05704565618b239b0965f829d1a194837f01234af3f8e2f33d92/lance_namespace_urllib3_client-0.4.5.tar.gz", hash = "sha256:184deda8cf8700926d994618187053c644eb1f2866a4479e7b80843cacc92b1c", size = 159726, upload-time = "2026-01-07T19:20:24.025Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ca/86/0adee7190408a28dcc5a0562c674537457e3de59ee51d1c724ecdc4a9930/lance_namespace_urllib3_client-0.4.5-py3-none-any.whl", hash = "sha256:2ee154d616ba4721f0bfdf043d33c4fef2e79d380653e2f263058ab00fb4adf4", size = 277969, upload-time = "2026-01-07T19:20:26.597Z" }, +] + +[[package]] +name = "lancedb" +version = "0.27.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "deprecation" }, + { name = "lance-namespace" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pyarrow" }, + { name = "pydantic" }, + { name = "tqdm" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/fb/35/135ee7e3de58389074ad49b389adb8f431dc3f0034afbed1a9122c223c68/lancedb-0.27.1-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:8aea87c3002850e98e4ac095c165dd819edd69f7c50e418f13f5917d1b9e0dcb", size = 43540316, upload-time = "2026-01-26T23:56:19.228Z" }, + { url = "https://files.pythonhosted.org/packages/16/cf/ea458fa50ef29c1a0653e1af6ea0599e532180267f49ca0bcf0049b0d8e3/lancedb-0.27.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:382666cddfb8b87d1efef4797bbc92cb1c3263b9b40894e5194ed5ed4e4486d4", size = 45409178, upload-time = "2026-01-27T03:25:09.932Z" }, + { url = "https://files.pythonhosted.org/packages/ee/cd/30714b878ec876eda3ce88637d6ef8da44484a065ec050dcfba3ad888465/lancedb-0.27.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7835e84d92631ddc7e269c8a18691ec16f24fe32f0fd14138d76951f530c28b9", size = 48484253, upload-time = "2026-01-27T03:28:16.048Z" }, + { url = "https://files.pythonhosted.org/packages/69/c2/19c1b8b7b36a0445e31fa532619bb75c4e76a91fff0514439dea2c4194d6/lancedb-0.27.1-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:5996f7e36ae4cf580693fae33f560a21f29640b1ae0e923dcd8efea65ee8a78e", size = 45427415, upload-time = "2026-01-27T03:23:26.822Z" }, + { url = "https://files.pythonhosted.org/packages/eb/f1/794e9bc8d2adc9130c55695979afb66b0121c9d2abacdd19ce112e201879/lancedb-0.27.1-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:37e80565729555f6fc390a623da4f26392c463ba35e7634b2e706c1f9ac77e47", size = 48531937, upload-time = "2026-01-27T03:27:57.455Z" }, + { url = "https://files.pythonhosted.org/packages/3d/96/fa3cb37a6ffe7b81073d8c74f7cb95204d0922ac1668b264685aa34add20/lancedb-0.27.1-cp39-abi3-win_amd64.whl", hash = "sha256:f2150a66758ce6fe3cff226ac1ffcac2d5f5e2c9b35bc4c2d5923abcebef98cc", size = 53374010, upload-time = "2026-01-27T03:57:13.434Z" }, +] + +[[package]] +name = "litellm" +version = "1.81.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohttp" }, + { name = "click" }, + { name = "fastuuid" }, + { name = "httpx" }, + { name = "importlib-metadata" }, + { name = "jinja2" }, + { name = "jsonschema" }, + { name = "openai" }, + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "tiktoken" }, + { name = "tokenizers" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ce/dd/d70835d5b231617761717cd5ba60342b677693093a71d5ce13ae9d254aee/litellm-1.81.3.tar.gz", hash = "sha256:a7688b429a88abfdd02f2a8c3158ebb5385689cfb7f9d4ac1473d018b2047e1b", size = 13612652, upload-time = "2026-01-25T02:45:58.888Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/62/d3f53c665261fdd5bb2401246e005a4ea8194ad1c4d8c663318ae3d638bf/litellm-1.81.3-py3-none-any.whl", hash = "sha256:3f60fd8b727587952ad3dd18b68f5fed538d6f43d15bb0356f4c3a11bccb2b92", size = 11946995, upload-time = "2026-01-25T02:45:55.887Z" }, +] + +[[package]] +name = "lxml" +version = "6.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/88/262177de60548e5a2bfc46ad28232c9e9cbde697bd94132aeb80364675cb/lxml-6.0.2.tar.gz", hash = "sha256:cd79f3367bd74b317dda655dc8fcfa304d9eb6e4fb06b7168c5cf27f96e0cd62", size = 4073426, upload-time = "2025-09-22T04:04:59.287Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f3/c8/8ff2bc6b920c84355146cd1ab7d181bc543b89241cfb1ebee824a7c81457/lxml-6.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:a59f5448ba2ceccd06995c95ea59a7674a10de0810f2ce90c9006f3cbc044456", size = 8661887, upload-time = "2025-09-22T04:01:17.265Z" }, + { url = "https://files.pythonhosted.org/packages/37/6f/9aae1008083bb501ef63284220ce81638332f9ccbfa53765b2b7502203cf/lxml-6.0.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:e8113639f3296706fbac34a30813929e29247718e88173ad849f57ca59754924", size = 4667818, upload-time = "2025-09-22T04:01:19.688Z" }, + { url = "https://files.pythonhosted.org/packages/f1/ca/31fb37f99f37f1536c133476674c10b577e409c0a624384147653e38baf2/lxml-6.0.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:a8bef9b9825fa8bc816a6e641bb67219489229ebc648be422af695f6e7a4fa7f", size = 4950807, upload-time = "2025-09-22T04:01:21.487Z" }, + { url = "https://files.pythonhosted.org/packages/da/87/f6cb9442e4bada8aab5ae7e1046264f62fdbeaa6e3f6211b93f4c0dd97f1/lxml-6.0.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:65ea18d710fd14e0186c2f973dc60bb52039a275f82d3c44a0e42b43440ea534", size = 5109179, upload-time = "2025-09-22T04:01:23.32Z" }, + { url = "https://files.pythonhosted.org/packages/c8/20/a7760713e65888db79bbae4f6146a6ae5c04e4a204a3c48896c408cd6ed2/lxml-6.0.2-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c371aa98126a0d4c739ca93ceffa0fd7a5d732e3ac66a46e74339acd4d334564", size = 5023044, upload-time = "2025-09-22T04:01:25.118Z" }, + { url = "https://files.pythonhosted.org/packages/a2/b0/7e64e0460fcb36471899f75831509098f3fd7cd02a3833ac517433cb4f8f/lxml-6.0.2-cp312-cp312-manylinux_2_26_i686.manylinux_2_28_i686.whl", hash = "sha256:700efd30c0fa1a3581d80a748157397559396090a51d306ea59a70020223d16f", size = 5359685, upload-time = "2025-09-22T04:01:27.398Z" }, + { url = "https://files.pythonhosted.org/packages/b9/e1/e5df362e9ca4e2f48ed6411bd4b3a0ae737cc842e96877f5bf9428055ab4/lxml-6.0.2-cp312-cp312-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c33e66d44fe60e72397b487ee92e01da0d09ba2d66df8eae42d77b6d06e5eba0", size = 5654127, upload-time = "2025-09-22T04:01:29.629Z" }, + { url = "https://files.pythonhosted.org/packages/c6/d1/232b3309a02d60f11e71857778bfcd4acbdb86c07db8260caf7d008b08f8/lxml-6.0.2-cp312-cp312-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:90a345bbeaf9d0587a3aaffb7006aa39ccb6ff0e96a57286c0cb2fd1520ea192", size = 5253958, upload-time = "2025-09-22T04:01:31.535Z" }, + { url = "https://files.pythonhosted.org/packages/35/35/d955a070994725c4f7d80583a96cab9c107c57a125b20bb5f708fe941011/lxml-6.0.2-cp312-cp312-manylinux_2_31_armv7l.whl", hash = "sha256:064fdadaf7a21af3ed1dcaa106b854077fbeada827c18f72aec9346847cd65d0", size = 4711541, upload-time = "2025-09-22T04:01:33.801Z" }, + { url = "https://files.pythonhosted.org/packages/1e/be/667d17363b38a78c4bd63cfd4b4632029fd68d2c2dc81f25ce9eb5224dd5/lxml-6.0.2-cp312-cp312-manylinux_2_38_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:fbc74f42c3525ac4ffa4b89cbdd00057b6196bcefe8bce794abd42d33a018092", size = 5267426, upload-time = "2025-09-22T04:01:35.639Z" }, + { url = "https://files.pythonhosted.org/packages/ea/47/62c70aa4a1c26569bc958c9ca86af2bb4e1f614e8c04fb2989833874f7ae/lxml-6.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6ddff43f702905a4e32bc24f3f2e2edfe0f8fde3277d481bffb709a4cced7a1f", size = 5064917, upload-time = "2025-09-22T04:01:37.448Z" }, + { url = "https://files.pythonhosted.org/packages/bd/55/6ceddaca353ebd0f1908ef712c597f8570cc9c58130dbb89903198e441fd/lxml-6.0.2-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:6da5185951d72e6f5352166e3da7b0dc27aa70bd1090b0eb3f7f7212b53f1bb8", size = 4788795, upload-time = "2025-09-22T04:01:39.165Z" }, + { url = "https://files.pythonhosted.org/packages/cf/e8/fd63e15da5e3fd4c2146f8bbb3c14e94ab850589beab88e547b2dbce22e1/lxml-6.0.2-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:57a86e1ebb4020a38d295c04fc79603c7899e0df71588043eb218722dabc087f", size = 5676759, upload-time = "2025-09-22T04:01:41.506Z" }, + { url = "https://files.pythonhosted.org/packages/76/47/b3ec58dc5c374697f5ba37412cd2728f427d056315d124dd4b61da381877/lxml-6.0.2-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:2047d8234fe735ab77802ce5f2297e410ff40f5238aec569ad7c8e163d7b19a6", size = 5255666, upload-time = "2025-09-22T04:01:43.363Z" }, + { url = "https://files.pythonhosted.org/packages/19/93/03ba725df4c3d72afd9596eef4a37a837ce8e4806010569bedfcd2cb68fd/lxml-6.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:6f91fd2b2ea15a6800c8e24418c0775a1694eefc011392da73bc6cef2623b322", size = 5277989, upload-time = "2025-09-22T04:01:45.215Z" }, + { url = "https://files.pythonhosted.org/packages/c6/80/c06de80bfce881d0ad738576f243911fccf992687ae09fd80b734712b39c/lxml-6.0.2-cp312-cp312-win32.whl", hash = "sha256:3ae2ce7d6fedfb3414a2b6c5e20b249c4c607f72cb8d2bb7cc9c6ec7c6f4e849", size = 3611456, upload-time = "2025-09-22T04:01:48.243Z" }, + { url = "https://files.pythonhosted.org/packages/f7/d7/0cdfb6c3e30893463fb3d1e52bc5f5f99684a03c29a0b6b605cfae879cd5/lxml-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:72c87e5ee4e58a8354fb9c7c84cbf95a1c8236c127a5d1b7683f04bed8361e1f", size = 4011793, upload-time = "2025-09-22T04:01:50.042Z" }, + { url = "https://files.pythonhosted.org/packages/ea/7b/93c73c67db235931527301ed3785f849c78991e2e34f3fd9a6663ffda4c5/lxml-6.0.2-cp312-cp312-win_arm64.whl", hash = "sha256:61cb10eeb95570153e0c0e554f58df92ecf5109f75eacad4a95baa709e26c3d6", size = 3672836, upload-time = "2025-09-22T04:01:52.145Z" }, + { url = "https://files.pythonhosted.org/packages/53/fd/4e8f0540608977aea078bf6d79f128e0e2c2bba8af1acf775c30baa70460/lxml-6.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:9b33d21594afab46f37ae58dfadd06636f154923c4e8a4d754b0127554eb2e77", size = 8648494, upload-time = "2025-09-22T04:01:54.242Z" }, + { url = "https://files.pythonhosted.org/packages/5d/f4/2a94a3d3dfd6c6b433501b8d470a1960a20ecce93245cf2db1706adf6c19/lxml-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:6c8963287d7a4c5c9a432ff487c52e9c5618667179c18a204bdedb27310f022f", size = 4661146, upload-time = "2025-09-22T04:01:56.282Z" }, + { url = "https://files.pythonhosted.org/packages/25/2e/4efa677fa6b322013035d38016f6ae859d06cac67437ca7dc708a6af7028/lxml-6.0.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1941354d92699fb5ffe6ed7b32f9649e43c2feb4b97205f75866f7d21aa91452", size = 4946932, upload-time = "2025-09-22T04:01:58.989Z" }, + { url = "https://files.pythonhosted.org/packages/ce/0f/526e78a6d38d109fdbaa5049c62e1d32fdd70c75fb61c4eadf3045d3d124/lxml-6.0.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bb2f6ca0ae2d983ded09357b84af659c954722bbf04dea98030064996d156048", size = 5100060, upload-time = "2025-09-22T04:02:00.812Z" }, + { url = "https://files.pythonhosted.org/packages/81/76/99de58d81fa702cc0ea7edae4f4640416c2062813a00ff24bd70ac1d9c9b/lxml-6.0.2-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eb2a12d704f180a902d7fa778c6d71f36ceb7b0d317f34cdc76a5d05aa1dd1df", size = 5019000, upload-time = "2025-09-22T04:02:02.671Z" }, + { url = "https://files.pythonhosted.org/packages/b5/35/9e57d25482bc9a9882cb0037fdb9cc18f4b79d85df94fa9d2a89562f1d25/lxml-6.0.2-cp313-cp313-manylinux_2_26_i686.manylinux_2_28_i686.whl", hash = "sha256:6ec0e3f745021bfed19c456647f0298d60a24c9ff86d9d051f52b509663feeb1", size = 5348496, upload-time = "2025-09-22T04:02:04.904Z" }, + { url = "https://files.pythonhosted.org/packages/a6/8e/cb99bd0b83ccc3e8f0f528e9aa1f7a9965dfec08c617070c5db8d63a87ce/lxml-6.0.2-cp313-cp313-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:846ae9a12d54e368933b9759052d6206a9e8b250291109c48e350c1f1f49d916", size = 5643779, upload-time = "2025-09-22T04:02:06.689Z" }, + { url = "https://files.pythonhosted.org/packages/d0/34/9e591954939276bb679b73773836c6684c22e56d05980e31d52a9a8deb18/lxml-6.0.2-cp313-cp313-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ef9266d2aa545d7374938fb5c484531ef5a2ec7f2d573e62f8ce722c735685fd", size = 5244072, upload-time = "2025-09-22T04:02:08.587Z" }, + { url = "https://files.pythonhosted.org/packages/8d/27/b29ff065f9aaca443ee377aff699714fcbffb371b4fce5ac4ca759e436d5/lxml-6.0.2-cp313-cp313-manylinux_2_31_armv7l.whl", hash = "sha256:4077b7c79f31755df33b795dc12119cb557a0106bfdab0d2c2d97bd3cf3dffa6", size = 4718675, upload-time = "2025-09-22T04:02:10.783Z" }, + { url = "https://files.pythonhosted.org/packages/2b/9f/f756f9c2cd27caa1a6ef8c32ae47aadea697f5c2c6d07b0dae133c244fbe/lxml-6.0.2-cp313-cp313-manylinux_2_38_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a7c5d5e5f1081955358533be077166ee97ed2571d6a66bdba6ec2f609a715d1a", size = 5255171, upload-time = "2025-09-22T04:02:12.631Z" }, + { url = "https://files.pythonhosted.org/packages/61/46/bb85ea42d2cb1bd8395484fd72f38e3389611aa496ac7772da9205bbda0e/lxml-6.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:8f8d0cbd0674ee89863a523e6994ac25fd5be9c8486acfc3e5ccea679bad2679", size = 5057175, upload-time = "2025-09-22T04:02:14.718Z" }, + { url = "https://files.pythonhosted.org/packages/95/0c/443fc476dcc8e41577f0af70458c50fe299a97bb6b7505bb1ae09aa7f9ac/lxml-6.0.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:2cbcbf6d6e924c28f04a43f3b6f6e272312a090f269eff68a2982e13e5d57659", size = 4785688, upload-time = "2025-09-22T04:02:16.957Z" }, + { url = "https://files.pythonhosted.org/packages/48/78/6ef0b359d45bb9697bc5a626e1992fa5d27aa3f8004b137b2314793b50a0/lxml-6.0.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:dfb874cfa53340009af6bdd7e54ebc0d21012a60a4e65d927c2e477112e63484", size = 5660655, upload-time = "2025-09-22T04:02:18.815Z" }, + { url = "https://files.pythonhosted.org/packages/ff/ea/e1d33808f386bc1339d08c0dcada6e4712d4ed8e93fcad5f057070b7988a/lxml-6.0.2-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:fb8dae0b6b8b7f9e96c26fdd8121522ce5de9bb5538010870bd538683d30e9a2", size = 5247695, upload-time = "2025-09-22T04:02:20.593Z" }, + { url = "https://files.pythonhosted.org/packages/4f/47/eba75dfd8183673725255247a603b4ad606f4ae657b60c6c145b381697da/lxml-6.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:358d9adae670b63e95bc59747c72f4dc97c9ec58881d4627fe0120da0f90d314", size = 5269841, upload-time = "2025-09-22T04:02:22.489Z" }, + { url = "https://files.pythonhosted.org/packages/76/04/5c5e2b8577bc936e219becb2e98cdb1aca14a4921a12995b9d0c523502ae/lxml-6.0.2-cp313-cp313-win32.whl", hash = "sha256:e8cd2415f372e7e5a789d743d133ae474290a90b9023197fd78f32e2dc6873e2", size = 3610700, upload-time = "2025-09-22T04:02:24.465Z" }, + { url = "https://files.pythonhosted.org/packages/fe/0a/4643ccc6bb8b143e9f9640aa54e38255f9d3b45feb2cbe7ae2ca47e8782e/lxml-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:b30d46379644fbfc3ab81f8f82ae4de55179414651f110a1514f0b1f8f6cb2d7", size = 4010347, upload-time = "2025-09-22T04:02:26.286Z" }, + { url = "https://files.pythonhosted.org/packages/31/ef/dcf1d29c3f530577f61e5fe2f1bd72929acf779953668a8a47a479ae6f26/lxml-6.0.2-cp313-cp313-win_arm64.whl", hash = "sha256:13dcecc9946dca97b11b7c40d29fba63b55ab4170d3c0cf8c0c164343b9bfdcf", size = 3671248, upload-time = "2025-09-22T04:02:27.918Z" }, + { url = "https://files.pythonhosted.org/packages/03/15/d4a377b385ab693ce97b472fe0c77c2b16ec79590e688b3ccc71fba19884/lxml-6.0.2-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:b0c732aa23de8f8aec23f4b580d1e52905ef468afb4abeafd3fec77042abb6fe", size = 8659801, upload-time = "2025-09-22T04:02:30.113Z" }, + { url = "https://files.pythonhosted.org/packages/c8/e8/c128e37589463668794d503afaeb003987373c5f94d667124ffd8078bbd9/lxml-6.0.2-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:4468e3b83e10e0317a89a33d28f7aeba1caa4d1a6fd457d115dd4ffe90c5931d", size = 4659403, upload-time = "2025-09-22T04:02:32.119Z" }, + { url = "https://files.pythonhosted.org/packages/00/ce/74903904339decdf7da7847bb5741fc98a5451b42fc419a86c0c13d26fe2/lxml-6.0.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:abd44571493973bad4598a3be7e1d807ed45aa2adaf7ab92ab7c62609569b17d", size = 4966974, upload-time = "2025-09-22T04:02:34.155Z" }, + { url = "https://files.pythonhosted.org/packages/1f/d3/131dec79ce61c5567fecf82515bd9bc36395df42501b50f7f7f3bd065df0/lxml-6.0.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:370cd78d5855cfbffd57c422851f7d3864e6ae72d0da615fca4dad8c45d375a5", size = 5102953, upload-time = "2025-09-22T04:02:36.054Z" }, + { url = "https://files.pythonhosted.org/packages/3a/ea/a43ba9bb750d4ffdd885f2cd333572f5bb900cd2408b67fdda07e85978a0/lxml-6.0.2-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:901e3b4219fa04ef766885fb40fa516a71662a4c61b80c94d25336b4934b71c0", size = 5055054, upload-time = "2025-09-22T04:02:38.154Z" }, + { url = "https://files.pythonhosted.org/packages/60/23/6885b451636ae286c34628f70a7ed1fcc759f8d9ad382d132e1c8d3d9bfd/lxml-6.0.2-cp314-cp314-manylinux_2_26_i686.manylinux_2_28_i686.whl", hash = "sha256:a4bf42d2e4cf52c28cc1812d62426b9503cdb0c87a6de81442626aa7d69707ba", size = 5352421, upload-time = "2025-09-22T04:02:40.413Z" }, + { url = "https://files.pythonhosted.org/packages/48/5b/fc2ddfc94ddbe3eebb8e9af6e3fd65e2feba4967f6a4e9683875c394c2d8/lxml-6.0.2-cp314-cp314-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:b2c7fdaa4d7c3d886a42534adec7cfac73860b89b4e5298752f60aa5984641a0", size = 5673684, upload-time = "2025-09-22T04:02:42.288Z" }, + { url = "https://files.pythonhosted.org/packages/29/9c/47293c58cc91769130fbf85531280e8cc7868f7fbb6d92f4670071b9cb3e/lxml-6.0.2-cp314-cp314-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:98a5e1660dc7de2200b00d53fa00bcd3c35a3608c305d45a7bbcaf29fa16e83d", size = 5252463, upload-time = "2025-09-22T04:02:44.165Z" }, + { url = "https://files.pythonhosted.org/packages/9b/da/ba6eceb830c762b48e711ded880d7e3e89fc6c7323e587c36540b6b23c6b/lxml-6.0.2-cp314-cp314-manylinux_2_31_armv7l.whl", hash = "sha256:dc051506c30b609238d79eda75ee9cab3e520570ec8219844a72a46020901e37", size = 4698437, upload-time = "2025-09-22T04:02:46.524Z" }, + { url = "https://files.pythonhosted.org/packages/a5/24/7be3f82cb7990b89118d944b619e53c656c97dc89c28cfb143fdb7cd6f4d/lxml-6.0.2-cp314-cp314-manylinux_2_38_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:8799481bbdd212470d17513a54d568f44416db01250f49449647b5ab5b5dccb9", size = 5269890, upload-time = "2025-09-22T04:02:48.812Z" }, + { url = "https://files.pythonhosted.org/packages/1b/bd/dcfb9ea1e16c665efd7538fc5d5c34071276ce9220e234217682e7d2c4a5/lxml-6.0.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:9261bb77c2dab42f3ecd9103951aeca2c40277701eb7e912c545c1b16e0e4917", size = 5097185, upload-time = "2025-09-22T04:02:50.746Z" }, + { url = "https://files.pythonhosted.org/packages/21/04/a60b0ff9314736316f28316b694bccbbabe100f8483ad83852d77fc7468e/lxml-6.0.2-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:65ac4a01aba353cfa6d5725b95d7aed6356ddc0a3cd734de00124d285b04b64f", size = 4745895, upload-time = "2025-09-22T04:02:52.968Z" }, + { url = "https://files.pythonhosted.org/packages/d6/bd/7d54bd1846e5a310d9c715921c5faa71cf5c0853372adf78aee70c8d7aa2/lxml-6.0.2-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:b22a07cbb82fea98f8a2fd814f3d1811ff9ed76d0fc6abc84eb21527596e7cc8", size = 5695246, upload-time = "2025-09-22T04:02:54.798Z" }, + { url = "https://files.pythonhosted.org/packages/fd/32/5643d6ab947bc371da21323acb2a6e603cedbe71cb4c99c8254289ab6f4e/lxml-6.0.2-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:d759cdd7f3e055d6bc8d9bec3ad905227b2e4c785dc16c372eb5b5e83123f48a", size = 5260797, upload-time = "2025-09-22T04:02:57.058Z" }, + { url = "https://files.pythonhosted.org/packages/33/da/34c1ec4cff1eea7d0b4cd44af8411806ed943141804ac9c5d565302afb78/lxml-6.0.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:945da35a48d193d27c188037a05fec5492937f66fb1958c24fc761fb9d40d43c", size = 5277404, upload-time = "2025-09-22T04:02:58.966Z" }, + { url = "https://files.pythonhosted.org/packages/82/57/4eca3e31e54dc89e2c3507e1cd411074a17565fa5ffc437c4ae0a00d439e/lxml-6.0.2-cp314-cp314-win32.whl", hash = "sha256:be3aaa60da67e6153eb15715cc2e19091af5dc75faef8b8a585aea372507384b", size = 3670072, upload-time = "2025-09-22T04:03:38.05Z" }, + { url = "https://files.pythonhosted.org/packages/e3/e0/c96cf13eccd20c9421ba910304dae0f619724dcf1702864fd59dd386404d/lxml-6.0.2-cp314-cp314-win_amd64.whl", hash = "sha256:fa25afbadead523f7001caf0c2382afd272c315a033a7b06336da2637d92d6ed", size = 4080617, upload-time = "2025-09-22T04:03:39.835Z" }, + { url = "https://files.pythonhosted.org/packages/d5/5d/b3f03e22b3d38d6f188ef044900a9b29b2fe0aebb94625ce9fe244011d34/lxml-6.0.2-cp314-cp314-win_arm64.whl", hash = "sha256:063eccf89df5b24e361b123e257e437f9e9878f425ee9aae3144c77faf6da6d8", size = 3754930, upload-time = "2025-09-22T04:03:41.565Z" }, + { url = "https://files.pythonhosted.org/packages/5e/5c/42c2c4c03554580708fc738d13414801f340c04c3eff90d8d2d227145275/lxml-6.0.2-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:6162a86d86893d63084faaf4ff937b3daea233e3682fb4474db07395794fa80d", size = 8910380, upload-time = "2025-09-22T04:03:01.645Z" }, + { url = "https://files.pythonhosted.org/packages/bf/4f/12df843e3e10d18d468a7557058f8d3733e8b6e12401f30b1ef29360740f/lxml-6.0.2-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:414aaa94e974e23a3e92e7ca5b97d10c0cf37b6481f50911032c69eeb3991bba", size = 4775632, upload-time = "2025-09-22T04:03:03.814Z" }, + { url = "https://files.pythonhosted.org/packages/e4/0c/9dc31e6c2d0d418483cbcb469d1f5a582a1cd00a1f4081953d44051f3c50/lxml-6.0.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:48461bd21625458dd01e14e2c38dd0aea69addc3c4f960c30d9f59d7f93be601", size = 4975171, upload-time = "2025-09-22T04:03:05.651Z" }, + { url = "https://files.pythonhosted.org/packages/e7/2b/9b870c6ca24c841bdd887504808f0417aa9d8d564114689266f19ddf29c8/lxml-6.0.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:25fcc59afc57d527cfc78a58f40ab4c9b8fd096a9a3f964d2781ffb6eb33f4ed", size = 5110109, upload-time = "2025-09-22T04:03:07.452Z" }, + { url = "https://files.pythonhosted.org/packages/bf/0c/4f5f2a4dd319a178912751564471355d9019e220c20d7db3fb8307ed8582/lxml-6.0.2-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5179c60288204e6ddde3f774a93350177e08876eaf3ab78aa3a3649d43eb7d37", size = 5041061, upload-time = "2025-09-22T04:03:09.297Z" }, + { url = "https://files.pythonhosted.org/packages/12/64/554eed290365267671fe001a20d72d14f468ae4e6acef1e179b039436967/lxml-6.0.2-cp314-cp314t-manylinux_2_26_i686.manylinux_2_28_i686.whl", hash = "sha256:967aab75434de148ec80597b75062d8123cadf2943fb4281f385141e18b21338", size = 5306233, upload-time = "2025-09-22T04:03:11.651Z" }, + { url = "https://files.pythonhosted.org/packages/7a/31/1d748aa275e71802ad9722df32a7a35034246b42c0ecdd8235412c3396ef/lxml-6.0.2-cp314-cp314t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:d100fcc8930d697c6561156c6810ab4a508fb264c8b6779e6e61e2ed5e7558f9", size = 5604739, upload-time = "2025-09-22T04:03:13.592Z" }, + { url = "https://files.pythonhosted.org/packages/8f/41/2c11916bcac09ed561adccacceaedd2bf0e0b25b297ea92aab99fd03d0fa/lxml-6.0.2-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ca59e7e13e5981175b8b3e4ab84d7da57993eeff53c07764dcebda0d0e64ecd", size = 5225119, upload-time = "2025-09-22T04:03:15.408Z" }, + { url = "https://files.pythonhosted.org/packages/99/05/4e5c2873d8f17aa018e6afde417c80cc5d0c33be4854cce3ef5670c49367/lxml-6.0.2-cp314-cp314t-manylinux_2_31_armv7l.whl", hash = "sha256:957448ac63a42e2e49531b9d6c0fa449a1970dbc32467aaad46f11545be9af1d", size = 4633665, upload-time = "2025-09-22T04:03:17.262Z" }, + { url = "https://files.pythonhosted.org/packages/0f/c9/dcc2da1bebd6275cdc723b515f93edf548b82f36a5458cca3578bc899332/lxml-6.0.2-cp314-cp314t-manylinux_2_38_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b7fc49c37f1786284b12af63152fe1d0990722497e2d5817acfe7a877522f9a9", size = 5234997, upload-time = "2025-09-22T04:03:19.14Z" }, + { url = "https://files.pythonhosted.org/packages/9c/e2/5172e4e7468afca64a37b81dba152fc5d90e30f9c83c7c3213d6a02a5ce4/lxml-6.0.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e19e0643cc936a22e837f79d01a550678da8377d7d801a14487c10c34ee49c7e", size = 5090957, upload-time = "2025-09-22T04:03:21.436Z" }, + { url = "https://files.pythonhosted.org/packages/a5/b3/15461fd3e5cd4ddcb7938b87fc20b14ab113b92312fc97afe65cd7c85de1/lxml-6.0.2-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:1db01e5cf14345628e0cbe71067204db658e2fb8e51e7f33631f5f4735fefd8d", size = 4764372, upload-time = "2025-09-22T04:03:23.27Z" }, + { url = "https://files.pythonhosted.org/packages/05/33/f310b987c8bf9e61c4dd8e8035c416bd3230098f5e3cfa69fc4232de7059/lxml-6.0.2-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:875c6b5ab39ad5291588aed6925fac99d0097af0dd62f33c7b43736043d4a2ec", size = 5634653, upload-time = "2025-09-22T04:03:25.767Z" }, + { url = "https://files.pythonhosted.org/packages/70/ff/51c80e75e0bc9382158133bdcf4e339b5886c6ee2418b5199b3f1a61ed6d/lxml-6.0.2-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:cdcbed9ad19da81c480dfd6dd161886db6096083c9938ead313d94b30aadf272", size = 5233795, upload-time = "2025-09-22T04:03:27.62Z" }, + { url = "https://files.pythonhosted.org/packages/56/4d/4856e897df0d588789dd844dbed9d91782c4ef0b327f96ce53c807e13128/lxml-6.0.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:80dadc234ebc532e09be1975ff538d154a7fa61ea5031c03d25178855544728f", size = 5257023, upload-time = "2025-09-22T04:03:30.056Z" }, + { url = "https://files.pythonhosted.org/packages/0f/85/86766dfebfa87bea0ab78e9ff7a4b4b45225df4b4d3b8cc3c03c5cd68464/lxml-6.0.2-cp314-cp314t-win32.whl", hash = "sha256:da08e7bb297b04e893d91087df19638dc7a6bb858a954b0cc2b9f5053c922312", size = 3911420, upload-time = "2025-09-22T04:03:32.198Z" }, + { url = "https://files.pythonhosted.org/packages/fe/1a/b248b355834c8e32614650b8008c69ffeb0ceb149c793961dd8c0b991bb3/lxml-6.0.2-cp314-cp314t-win_amd64.whl", hash = "sha256:252a22982dca42f6155125ac76d3432e548a7625d56f5a273ee78a5057216eca", size = 4406837, upload-time = "2025-09-22T04:03:34.027Z" }, + { url = "https://files.pythonhosted.org/packages/92/aa/df863bcc39c5e0946263454aba394de8a9084dbaff8ad143846b0d844739/lxml-6.0.2-cp314-cp314t-win_arm64.whl", hash = "sha256:bb4c1847b303835d89d785a18801a883436cdfd5dc3d62947f9c49e24f0f5a2c", size = 3822205, upload-time = "2025-09-22T04:03:36.249Z" }, +] + +[[package]] +name = "markdown-it-py" +version = "4.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mdurl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5b/f5/4ec618ed16cc4f8fb3b701563655a69816155e79e24a17b651541804721d/markdown_it_py-4.0.0.tar.gz", hash = "sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3", size = 73070, upload-time = "2025-08-11T12:57:52.854Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321, upload-time = "2025-08-11T12:57:51.923Z" }, +] + +[[package]] +name = "markupsafe" +version = "3.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7e/99/7690b6d4034fffd95959cbe0c02de8deb3098cc577c67bb6a24fe5d7caa7/markupsafe-3.0.3.tar.gz", hash = "sha256:722695808f4b6457b320fdc131280796bdceb04ab50fe1795cd540799ebe1698", size = 80313, upload-time = "2025-09-27T18:37:40.426Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/72/147da192e38635ada20e0a2e1a51cf8823d2119ce8883f7053879c2199b5/markupsafe-3.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d53197da72cc091b024dd97249dfc7794d6a56530370992a5e1a08983ad9230e", size = 11615, upload-time = "2025-09-27T18:36:30.854Z" }, + { url = "https://files.pythonhosted.org/packages/9a/81/7e4e08678a1f98521201c3079f77db69fb552acd56067661f8c2f534a718/markupsafe-3.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:1872df69a4de6aead3491198eaf13810b565bdbeec3ae2dc8780f14458ec73ce", size = 12020, upload-time = "2025-09-27T18:36:31.971Z" }, + { url = "https://files.pythonhosted.org/packages/1e/2c/799f4742efc39633a1b54a92eec4082e4f815314869865d876824c257c1e/markupsafe-3.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3a7e8ae81ae39e62a41ec302f972ba6ae23a5c5396c8e60113e9066ef893da0d", size = 24332, upload-time = "2025-09-27T18:36:32.813Z" }, + { url = "https://files.pythonhosted.org/packages/3c/2e/8d0c2ab90a8c1d9a24f0399058ab8519a3279d1bd4289511d74e909f060e/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d6dd0be5b5b189d31db7cda48b91d7e0a9795f31430b7f271219ab30f1d3ac9d", size = 22947, upload-time = "2025-09-27T18:36:33.86Z" }, + { url = "https://files.pythonhosted.org/packages/2c/54/887f3092a85238093a0b2154bd629c89444f395618842e8b0c41783898ea/markupsafe-3.0.3-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:94c6f0bb423f739146aec64595853541634bde58b2135f27f61c1ffd1cd4d16a", size = 21962, upload-time = "2025-09-27T18:36:35.099Z" }, + { url = "https://files.pythonhosted.org/packages/c9/2f/336b8c7b6f4a4d95e91119dc8521402461b74a485558d8f238a68312f11c/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:be8813b57049a7dc738189df53d69395eba14fb99345e0a5994914a3864c8a4b", size = 23760, upload-time = "2025-09-27T18:36:36.001Z" }, + { url = "https://files.pythonhosted.org/packages/32/43/67935f2b7e4982ffb50a4d169b724d74b62a3964bc1a9a527f5ac4f1ee2b/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:83891d0e9fb81a825d9a6d61e3f07550ca70a076484292a70fde82c4b807286f", size = 21529, upload-time = "2025-09-27T18:36:36.906Z" }, + { url = "https://files.pythonhosted.org/packages/89/e0/4486f11e51bbba8b0c041098859e869e304d1c261e59244baa3d295d47b7/markupsafe-3.0.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:77f0643abe7495da77fb436f50f8dab76dbc6e5fd25d39589a0f1fe6548bfa2b", size = 23015, upload-time = "2025-09-27T18:36:37.868Z" }, + { url = "https://files.pythonhosted.org/packages/2f/e1/78ee7a023dac597a5825441ebd17170785a9dab23de95d2c7508ade94e0e/markupsafe-3.0.3-cp312-cp312-win32.whl", hash = "sha256:d88b440e37a16e651bda4c7c2b930eb586fd15ca7406cb39e211fcff3bf3017d", size = 14540, upload-time = "2025-09-27T18:36:38.761Z" }, + { url = "https://files.pythonhosted.org/packages/aa/5b/bec5aa9bbbb2c946ca2733ef9c4ca91c91b6a24580193e891b5f7dbe8e1e/markupsafe-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:26a5784ded40c9e318cfc2bdb30fe164bdb8665ded9cd64d500a34fb42067b1c", size = 15105, upload-time = "2025-09-27T18:36:39.701Z" }, + { url = "https://files.pythonhosted.org/packages/e5/f1/216fc1bbfd74011693a4fd837e7026152e89c4bcf3e77b6692fba9923123/markupsafe-3.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:35add3b638a5d900e807944a078b51922212fb3dedb01633a8defc4b01a3c85f", size = 13906, upload-time = "2025-09-27T18:36:40.689Z" }, + { url = "https://files.pythonhosted.org/packages/38/2f/907b9c7bbba283e68f20259574b13d005c121a0fa4c175f9bed27c4597ff/markupsafe-3.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795", size = 11622, upload-time = "2025-09-27T18:36:41.777Z" }, + { url = "https://files.pythonhosted.org/packages/9c/d9/5f7756922cdd676869eca1c4e3c0cd0df60ed30199ffd775e319089cb3ed/markupsafe-3.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219", size = 12029, upload-time = "2025-09-27T18:36:43.257Z" }, + { url = "https://files.pythonhosted.org/packages/00/07/575a68c754943058c78f30db02ee03a64b3c638586fba6a6dd56830b30a3/markupsafe-3.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6", size = 24374, upload-time = "2025-09-27T18:36:44.508Z" }, + { url = "https://files.pythonhosted.org/packages/a9/21/9b05698b46f218fc0e118e1f8168395c65c8a2c750ae2bab54fc4bd4e0e8/markupsafe-3.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676", size = 22980, upload-time = "2025-09-27T18:36:45.385Z" }, + { url = "https://files.pythonhosted.org/packages/7f/71/544260864f893f18b6827315b988c146b559391e6e7e8f7252839b1b846a/markupsafe-3.0.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9", size = 21990, upload-time = "2025-09-27T18:36:46.916Z" }, + { url = "https://files.pythonhosted.org/packages/c2/28/b50fc2f74d1ad761af2f5dcce7492648b983d00a65b8c0e0cb457c82ebbe/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1", size = 23784, upload-time = "2025-09-27T18:36:47.884Z" }, + { url = "https://files.pythonhosted.org/packages/ed/76/104b2aa106a208da8b17a2fb72e033a5a9d7073c68f7e508b94916ed47a9/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc", size = 21588, upload-time = "2025-09-27T18:36:48.82Z" }, + { url = "https://files.pythonhosted.org/packages/b5/99/16a5eb2d140087ebd97180d95249b00a03aa87e29cc224056274f2e45fd6/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12", size = 23041, upload-time = "2025-09-27T18:36:49.797Z" }, + { url = "https://files.pythonhosted.org/packages/19/bc/e7140ed90c5d61d77cea142eed9f9c303f4c4806f60a1044c13e3f1471d0/markupsafe-3.0.3-cp313-cp313-win32.whl", hash = "sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed", size = 14543, upload-time = "2025-09-27T18:36:51.584Z" }, + { url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5", size = 15113, upload-time = "2025-09-27T18:36:52.537Z" }, + { url = "https://files.pythonhosted.org/packages/f0/3a/fa34a0f7cfef23cf9500d68cb7c32dd64ffd58a12b09225fb03dd37d5b80/markupsafe-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485", size = 13911, upload-time = "2025-09-27T18:36:53.513Z" }, + { url = "https://files.pythonhosted.org/packages/e4/d7/e05cd7efe43a88a17a37b3ae96e79a19e846f3f456fe79c57ca61356ef01/markupsafe-3.0.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73", size = 11658, upload-time = "2025-09-27T18:36:54.819Z" }, + { url = "https://files.pythonhosted.org/packages/99/9e/e412117548182ce2148bdeacdda3bb494260c0b0184360fe0d56389b523b/markupsafe-3.0.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37", size = 12066, upload-time = "2025-09-27T18:36:55.714Z" }, + { url = "https://files.pythonhosted.org/packages/bc/e6/fa0ffcda717ef64a5108eaa7b4f5ed28d56122c9a6d70ab8b72f9f715c80/markupsafe-3.0.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19", size = 25639, upload-time = "2025-09-27T18:36:56.908Z" }, + { url = "https://files.pythonhosted.org/packages/96/ec/2102e881fe9d25fc16cb4b25d5f5cde50970967ffa5dddafdb771237062d/markupsafe-3.0.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025", size = 23569, upload-time = "2025-09-27T18:36:57.913Z" }, + { url = "https://files.pythonhosted.org/packages/4b/30/6f2fce1f1f205fc9323255b216ca8a235b15860c34b6798f810f05828e32/markupsafe-3.0.3-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6", size = 23284, upload-time = "2025-09-27T18:36:58.833Z" }, + { url = "https://files.pythonhosted.org/packages/58/47/4a0ccea4ab9f5dcb6f79c0236d954acb382202721e704223a8aafa38b5c8/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f", size = 24801, upload-time = "2025-09-27T18:36:59.739Z" }, + { url = "https://files.pythonhosted.org/packages/6a/70/3780e9b72180b6fecb83a4814d84c3bf4b4ae4bf0b19c27196104149734c/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb", size = 22769, upload-time = "2025-09-27T18:37:00.719Z" }, + { url = "https://files.pythonhosted.org/packages/98/c5/c03c7f4125180fc215220c035beac6b9cb684bc7a067c84fc69414d315f5/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009", size = 23642, upload-time = "2025-09-27T18:37:01.673Z" }, + { url = "https://files.pythonhosted.org/packages/80/d6/2d1b89f6ca4bff1036499b1e29a1d02d282259f3681540e16563f27ebc23/markupsafe-3.0.3-cp313-cp313t-win32.whl", hash = "sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354", size = 14612, upload-time = "2025-09-27T18:37:02.639Z" }, + { url = "https://files.pythonhosted.org/packages/2b/98/e48a4bfba0a0ffcf9925fe2d69240bfaa19c6f7507b8cd09c70684a53c1e/markupsafe-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218", size = 15200, upload-time = "2025-09-27T18:37:03.582Z" }, + { url = "https://files.pythonhosted.org/packages/0e/72/e3cc540f351f316e9ed0f092757459afbc595824ca724cbc5a5d4263713f/markupsafe-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287", size = 13973, upload-time = "2025-09-27T18:37:04.929Z" }, + { url = "https://files.pythonhosted.org/packages/33/8a/8e42d4838cd89b7dde187011e97fe6c3af66d8c044997d2183fbd6d31352/markupsafe-3.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe", size = 11619, upload-time = "2025-09-27T18:37:06.342Z" }, + { url = "https://files.pythonhosted.org/packages/b5/64/7660f8a4a8e53c924d0fa05dc3a55c9cee10bbd82b11c5afb27d44b096ce/markupsafe-3.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026", size = 12029, upload-time = "2025-09-27T18:37:07.213Z" }, + { url = "https://files.pythonhosted.org/packages/da/ef/e648bfd021127bef5fa12e1720ffed0c6cbb8310c8d9bea7266337ff06de/markupsafe-3.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737", size = 24408, upload-time = "2025-09-27T18:37:09.572Z" }, + { url = "https://files.pythonhosted.org/packages/41/3c/a36c2450754618e62008bf7435ccb0f88053e07592e6028a34776213d877/markupsafe-3.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97", size = 23005, upload-time = "2025-09-27T18:37:10.58Z" }, + { url = "https://files.pythonhosted.org/packages/bc/20/b7fdf89a8456b099837cd1dc21974632a02a999ec9bf7ca3e490aacd98e7/markupsafe-3.0.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d", size = 22048, upload-time = "2025-09-27T18:37:11.547Z" }, + { url = "https://files.pythonhosted.org/packages/9a/a7/591f592afdc734f47db08a75793a55d7fbcc6902a723ae4cfbab61010cc5/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda", size = 23821, upload-time = "2025-09-27T18:37:12.48Z" }, + { url = "https://files.pythonhosted.org/packages/7d/33/45b24e4f44195b26521bc6f1a82197118f74df348556594bd2262bda1038/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf", size = 21606, upload-time = "2025-09-27T18:37:13.485Z" }, + { url = "https://files.pythonhosted.org/packages/ff/0e/53dfaca23a69fbfbbf17a4b64072090e70717344c52eaaaa9c5ddff1e5f0/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe", size = 23043, upload-time = "2025-09-27T18:37:14.408Z" }, + { url = "https://files.pythonhosted.org/packages/46/11/f333a06fc16236d5238bfe74daccbca41459dcd8d1fa952e8fbd5dccfb70/markupsafe-3.0.3-cp314-cp314-win32.whl", hash = "sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9", size = 14747, upload-time = "2025-09-27T18:37:15.36Z" }, + { url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581", size = 15341, upload-time = "2025-09-27T18:37:16.496Z" }, + { url = "https://files.pythonhosted.org/packages/6f/18/acf23e91bd94fd7b3031558b1f013adfa21a8e407a3fdb32745538730382/markupsafe-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4", size = 14073, upload-time = "2025-09-27T18:37:17.476Z" }, + { url = "https://files.pythonhosted.org/packages/3c/f0/57689aa4076e1b43b15fdfa646b04653969d50cf30c32a102762be2485da/markupsafe-3.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab", size = 11661, upload-time = "2025-09-27T18:37:18.453Z" }, + { url = "https://files.pythonhosted.org/packages/89/c3/2e67a7ca217c6912985ec766c6393b636fb0c2344443ff9d91404dc4c79f/markupsafe-3.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175", size = 12069, upload-time = "2025-09-27T18:37:19.332Z" }, + { url = "https://files.pythonhosted.org/packages/f0/00/be561dce4e6ca66b15276e184ce4b8aec61fe83662cce2f7d72bd3249d28/markupsafe-3.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634", size = 25670, upload-time = "2025-09-27T18:37:20.245Z" }, + { url = "https://files.pythonhosted.org/packages/50/09/c419f6f5a92e5fadde27efd190eca90f05e1261b10dbd8cbcb39cd8ea1dc/markupsafe-3.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50", size = 23598, upload-time = "2025-09-27T18:37:21.177Z" }, + { url = "https://files.pythonhosted.org/packages/22/44/a0681611106e0b2921b3033fc19bc53323e0b50bc70cffdd19f7d679bb66/markupsafe-3.0.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e", size = 23261, upload-time = "2025-09-27T18:37:22.167Z" }, + { url = "https://files.pythonhosted.org/packages/5f/57/1b0b3f100259dc9fffe780cfb60d4be71375510e435efec3d116b6436d43/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5", size = 24835, upload-time = "2025-09-27T18:37:23.296Z" }, + { url = "https://files.pythonhosted.org/packages/26/6a/4bf6d0c97c4920f1597cc14dd720705eca0bf7c787aebc6bb4d1bead5388/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523", size = 22733, upload-time = "2025-09-27T18:37:24.237Z" }, + { url = "https://files.pythonhosted.org/packages/14/c7/ca723101509b518797fedc2fdf79ba57f886b4aca8a7d31857ba3ee8281f/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc", size = 23672, upload-time = "2025-09-27T18:37:25.271Z" }, + { url = "https://files.pythonhosted.org/packages/fb/df/5bd7a48c256faecd1d36edc13133e51397e41b73bb77e1a69deab746ebac/markupsafe-3.0.3-cp314-cp314t-win32.whl", hash = "sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d", size = 14819, upload-time = "2025-09-27T18:37:26.285Z" }, + { url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9", size = 15426, upload-time = "2025-09-27T18:37:27.316Z" }, + { url = "https://files.pythonhosted.org/packages/70/bc/6f1c2f612465f5fa89b95bead1f44dcb607670fd42891d8fdcd5d039f4f4/markupsafe-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa", size = 14146, upload-time = "2025-09-27T18:37:28.327Z" }, +] + +[[package]] +name = "mcp" +version = "1.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "httpx" }, + { name = "httpx-sse" }, + { name = "jsonschema" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pyjwt", extra = ["crypto"] }, + { name = "python-multipart" }, + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "sse-starlette" }, + { name = "starlette" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, + { name = "uvicorn", marker = "sys_platform != 'emscripten'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fc/6d/62e76bbb8144d6ed86e202b5edd8a4cb631e7c8130f3f4893c3f90262b10/mcp-1.26.0.tar.gz", hash = "sha256:db6e2ef491eecc1a0d93711a76f28dec2e05999f93afd48795da1c1137142c66", size = 608005, upload-time = "2026-01-24T19:40:32.468Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/d9/eaa1f80170d2b7c5ba23f3b59f766f3a0bb41155fbc32a69adfa1adaaef9/mcp-1.26.0-py3-none-any.whl", hash = "sha256:904a21c33c25aa98ddbeb47273033c435e595bbacfdb177f4bd87f6dceebe1ca", size = 233615, upload-time = "2026-01-24T19:40:30.652Z" }, +] + +[[package]] +name = "mdurl" +version = "0.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba", size = 8729, upload-time = "2022-08-14T12:40:10.846Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" }, +] + +[[package]] +name = "mmh3" +version = "5.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a7/af/f28c2c2f51f31abb4725f9a64bc7863d5f491f6539bd26aee2a1d21a649e/mmh3-5.2.0.tar.gz", hash = "sha256:1efc8fec8478e9243a78bb993422cf79f8ff85cb4cf6b79647480a31e0d950a8", size = 33582, upload-time = "2025-07-29T07:43:48.49Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bf/6a/d5aa7edb5c08e0bd24286c7d08341a0446f9a2fbbb97d96a8a6dd81935ee/mmh3-5.2.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:384eda9361a7bf83a85e09447e1feafe081034af9dd428893701b959230d84be", size = 56141, upload-time = "2025-07-29T07:42:13.456Z" }, + { url = "https://files.pythonhosted.org/packages/08/49/131d0fae6447bc4a7299ebdb1a6fb9d08c9f8dcf97d75ea93e8152ddf7ab/mmh3-5.2.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:2c9da0d568569cc87315cb063486d761e38458b8ad513fedd3dc9263e1b81bcd", size = 40681, upload-time = "2025-07-29T07:42:14.306Z" }, + { url = "https://files.pythonhosted.org/packages/8f/6f/9221445a6bcc962b7f5ff3ba18ad55bba624bacdc7aa3fc0a518db7da8ec/mmh3-5.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:86d1be5d63232e6eb93c50881aea55ff06eb86d8e08f9b5417c8c9b10db9db96", size = 40062, upload-time = "2025-07-29T07:42:15.08Z" }, + { url = "https://files.pythonhosted.org/packages/1e/d4/6bb2d0fef81401e0bb4c297d1eb568b767de4ce6fc00890bc14d7b51ecc4/mmh3-5.2.0-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:bf7bee43e17e81671c447e9c83499f53d99bf440bc6d9dc26a841e21acfbe094", size = 97333, upload-time = "2025-07-29T07:42:16.436Z" }, + { url = "https://files.pythonhosted.org/packages/44/e0/ccf0daff8134efbb4fbc10a945ab53302e358c4b016ada9bf97a6bdd50c1/mmh3-5.2.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7aa18cdb58983ee660c9c400b46272e14fa253c675ed963d3812487f8ca42037", size = 103310, upload-time = "2025-07-29T07:42:17.796Z" }, + { url = "https://files.pythonhosted.org/packages/02/63/1965cb08a46533faca0e420e06aff8bbaf9690a6f0ac6ae6e5b2e4544687/mmh3-5.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ae9d032488fcec32d22be6542d1a836f00247f40f320844dbb361393b5b22773", size = 106178, upload-time = "2025-07-29T07:42:19.281Z" }, + { url = "https://files.pythonhosted.org/packages/c2/41/c883ad8e2c234013f27f92061200afc11554ea55edd1bcf5e1accd803a85/mmh3-5.2.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:e1861fb6b1d0453ed7293200139c0a9011eeb1376632e048e3766945b13313c5", size = 113035, upload-time = "2025-07-29T07:42:20.356Z" }, + { url = "https://files.pythonhosted.org/packages/df/b5/1ccade8b1fa625d634a18bab7bf08a87457e09d5ec8cf83ca07cbea9d400/mmh3-5.2.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:99bb6a4d809aa4e528ddfe2c85dd5239b78b9dd14be62cca0329db78505e7b50", size = 120784, upload-time = "2025-07-29T07:42:21.377Z" }, + { url = "https://files.pythonhosted.org/packages/77/1c/919d9171fcbdcdab242e06394464ccf546f7d0f3b31e0d1e3a630398782e/mmh3-5.2.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1f8d8b627799f4e2fcc7c034fed8f5f24dc7724ff52f69838a3d6d15f1ad4765", size = 99137, upload-time = "2025-07-29T07:42:22.344Z" }, + { url = "https://files.pythonhosted.org/packages/66/8a/1eebef5bd6633d36281d9fc83cf2e9ba1ba0e1a77dff92aacab83001cee4/mmh3-5.2.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b5995088dd7023d2d9f310a0c67de5a2b2e06a570ecfd00f9ff4ab94a67cde43", size = 98664, upload-time = "2025-07-29T07:42:23.269Z" }, + { url = "https://files.pythonhosted.org/packages/13/41/a5d981563e2ee682b21fb65e29cc0f517a6734a02b581359edd67f9d0360/mmh3-5.2.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:1a5f4d2e59d6bba8ef01b013c472741835ad961e7c28f50c82b27c57748744a4", size = 106459, upload-time = "2025-07-29T07:42:24.238Z" }, + { url = "https://files.pythonhosted.org/packages/24/31/342494cd6ab792d81e083680875a2c50fa0c5df475ebf0b67784f13e4647/mmh3-5.2.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:fd6e6c3d90660d085f7e73710eab6f5545d4854b81b0135a3526e797009dbda3", size = 110038, upload-time = "2025-07-29T07:42:25.629Z" }, + { url = "https://files.pythonhosted.org/packages/28/44/efda282170a46bb4f19c3e2b90536513b1d821c414c28469a227ca5a1789/mmh3-5.2.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c4a2f3d83879e3de2eb8cbf562e71563a8ed15ee9b9c2e77ca5d9f73072ac15c", size = 97545, upload-time = "2025-07-29T07:42:27.04Z" }, + { url = "https://files.pythonhosted.org/packages/68/8f/534ae319c6e05d714f437e7206f78c17e66daca88164dff70286b0e8ea0c/mmh3-5.2.0-cp312-cp312-win32.whl", hash = "sha256:2421b9d665a0b1ad724ec7332fb5a98d075f50bc51a6ff854f3a1882bd650d49", size = 40805, upload-time = "2025-07-29T07:42:28.032Z" }, + { url = "https://files.pythonhosted.org/packages/b8/f6/f6abdcfefcedab3c964868048cfe472764ed358c2bf6819a70dd4ed4ed3a/mmh3-5.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:72d80005b7634a3a2220f81fbeb94775ebd12794623bb2e1451701ea732b4aa3", size = 41597, upload-time = "2025-07-29T07:42:28.894Z" }, + { url = "https://files.pythonhosted.org/packages/15/fd/f7420e8cbce45c259c770cac5718badf907b302d3a99ec587ba5ce030237/mmh3-5.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:3d6bfd9662a20c054bc216f861fa330c2dac7c81e7fb8307b5e32ab5b9b4d2e0", size = 39350, upload-time = "2025-07-29T07:42:29.794Z" }, + { url = "https://files.pythonhosted.org/packages/d8/fa/27f6ab93995ef6ad9f940e96593c5dd24744d61a7389532b0fec03745607/mmh3-5.2.0-cp313-cp313-android_21_arm64_v8a.whl", hash = "sha256:e79c00eba78f7258e5b354eccd4d7907d60317ced924ea4a5f2e9d83f5453065", size = 40874, upload-time = "2025-07-29T07:42:30.662Z" }, + { url = "https://files.pythonhosted.org/packages/11/9c/03d13bcb6a03438bc8cac3d2e50f80908d159b31a4367c2e1a7a077ded32/mmh3-5.2.0-cp313-cp313-android_21_x86_64.whl", hash = "sha256:956127e663d05edbeec54df38885d943dfa27406594c411139690485128525de", size = 42012, upload-time = "2025-07-29T07:42:31.539Z" }, + { url = "https://files.pythonhosted.org/packages/4e/78/0865d9765408a7d504f1789944e678f74e0888b96a766d578cb80b040999/mmh3-5.2.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:c3dca4cb5b946ee91b3d6bb700d137b1cd85c20827f89fdf9c16258253489044", size = 39197, upload-time = "2025-07-29T07:42:32.374Z" }, + { url = "https://files.pythonhosted.org/packages/3e/12/76c3207bd186f98b908b6706c2317abb73756d23a4e68ea2bc94825b9015/mmh3-5.2.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:e651e17bfde5840e9e4174b01e9e080ce49277b70d424308b36a7969d0d1af73", size = 39840, upload-time = "2025-07-29T07:42:33.227Z" }, + { url = "https://files.pythonhosted.org/packages/5d/0d/574b6cce5555c9f2b31ea189ad44986755eb14e8862db28c8b834b8b64dc/mmh3-5.2.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:9f64bf06f4bf623325fda3a6d02d36cd69199b9ace99b04bb2d7fd9f89688504", size = 40644, upload-time = "2025-07-29T07:42:34.099Z" }, + { url = "https://files.pythonhosted.org/packages/52/82/3731f8640b79c46707f53ed72034a58baad400be908c87b0088f1f89f986/mmh3-5.2.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ddc63328889bcaee77b743309e5c7d2d52cee0d7d577837c91b6e7cc9e755e0b", size = 56153, upload-time = "2025-07-29T07:42:35.031Z" }, + { url = "https://files.pythonhosted.org/packages/4f/34/e02dca1d4727fd9fdeaff9e2ad6983e1552804ce1d92cc796e5b052159bb/mmh3-5.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:bb0fdc451fb6d86d81ab8f23d881b8d6e37fc373a2deae1c02d27002d2ad7a05", size = 40684, upload-time = "2025-07-29T07:42:35.914Z" }, + { url = "https://files.pythonhosted.org/packages/8f/36/3dee40767356e104967e6ed6d102ba47b0b1ce2a89432239b95a94de1b89/mmh3-5.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b29044e1ffdb84fe164d0a7ea05c7316afea93c00f8ed9449cf357c36fc4f814", size = 40057, upload-time = "2025-07-29T07:42:36.755Z" }, + { url = "https://files.pythonhosted.org/packages/31/58/228c402fccf76eb39a0a01b8fc470fecf21965584e66453b477050ee0e99/mmh3-5.2.0-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:58981d6ea9646dbbf9e59a30890cbf9f610df0e4a57dbfe09215116fd90b0093", size = 97344, upload-time = "2025-07-29T07:42:37.675Z" }, + { url = "https://files.pythonhosted.org/packages/34/82/fc5ce89006389a6426ef28e326fc065b0fbaaed230373b62d14c889f47ea/mmh3-5.2.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:7e5634565367b6d98dc4aa2983703526ef556b3688ba3065edb4b9b90ede1c54", size = 103325, upload-time = "2025-07-29T07:42:38.591Z" }, + { url = "https://files.pythonhosted.org/packages/09/8c/261e85777c6aee1ebd53f2f17e210e7481d5b0846cd0b4a5c45f1e3761b8/mmh3-5.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b0271ac12415afd3171ab9a3c7cbfc71dee2c68760a7dc9d05bf8ed6ddfa3a7a", size = 106240, upload-time = "2025-07-29T07:42:39.563Z" }, + { url = "https://files.pythonhosted.org/packages/70/73/2f76b3ad8a3d431824e9934403df36c0ddacc7831acf82114bce3c4309c8/mmh3-5.2.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:45b590e31bc552c6f8e2150ff1ad0c28dd151e9f87589e7eaf508fbdd8e8e908", size = 113060, upload-time = "2025-07-29T07:42:40.585Z" }, + { url = "https://files.pythonhosted.org/packages/9f/b9/7ea61a34e90e50a79a9d87aa1c0b8139a7eaf4125782b34b7d7383472633/mmh3-5.2.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:bdde97310d59604f2a9119322f61b31546748499a21b44f6715e8ced9308a6c5", size = 120781, upload-time = "2025-07-29T07:42:41.618Z" }, + { url = "https://files.pythonhosted.org/packages/0f/5b/ae1a717db98c7894a37aeedbd94b3f99e6472a836488f36b6849d003485b/mmh3-5.2.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fc9c5f280438cf1c1a8f9abb87dc8ce9630a964120cfb5dd50d1e7ce79690c7a", size = 99174, upload-time = "2025-07-29T07:42:42.587Z" }, + { url = "https://files.pythonhosted.org/packages/e3/de/000cce1d799fceebb6d4487ae29175dd8e81b48e314cba7b4da90bcf55d7/mmh3-5.2.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:c903e71fd8debb35ad2a4184c1316b3cb22f64ce517b4e6747f25b0a34e41266", size = 98734, upload-time = "2025-07-29T07:42:43.996Z" }, + { url = "https://files.pythonhosted.org/packages/79/19/0dc364391a792b72fbb22becfdeacc5add85cc043cd16986e82152141883/mmh3-5.2.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:eed4bba7ff8a0d37106ba931ab03bdd3915fbb025bcf4e1f0aa02bc8114960c5", size = 106493, upload-time = "2025-07-29T07:42:45.07Z" }, + { url = "https://files.pythonhosted.org/packages/3c/b1/bc8c28e4d6e807bbb051fefe78e1156d7f104b89948742ad310612ce240d/mmh3-5.2.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:1fdb36b940e9261aff0b5177c5b74a36936b902f473180f6c15bde26143681a9", size = 110089, upload-time = "2025-07-29T07:42:46.122Z" }, + { url = "https://files.pythonhosted.org/packages/3b/a2/d20f3f5c95e9c511806686c70d0a15479cc3941c5f322061697af1c1ff70/mmh3-5.2.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:7303aab41e97adcf010a09efd8f1403e719e59b7705d5e3cfed3dd7571589290", size = 97571, upload-time = "2025-07-29T07:42:47.18Z" }, + { url = "https://files.pythonhosted.org/packages/7b/23/665296fce4f33488deec39a750ffd245cfc07aafb0e3ef37835f91775d14/mmh3-5.2.0-cp313-cp313-win32.whl", hash = "sha256:03e08c6ebaf666ec1e3d6ea657a2d363bb01effd1a9acfe41f9197decaef0051", size = 40806, upload-time = "2025-07-29T07:42:48.166Z" }, + { url = "https://files.pythonhosted.org/packages/59/b0/92e7103f3b20646e255b699e2d0327ce53a3f250e44367a99dc8be0b7c7a/mmh3-5.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:7fddccd4113e7b736706e17a239a696332360cbaddf25ae75b57ba1acce65081", size = 41600, upload-time = "2025-07-29T07:42:49.371Z" }, + { url = "https://files.pythonhosted.org/packages/99/22/0b2bd679a84574647de538c5b07ccaa435dbccc37815067fe15b90fe8dad/mmh3-5.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:fa0c966ee727aad5406d516375593c5f058c766b21236ab8985693934bb5085b", size = 39349, upload-time = "2025-07-29T07:42:50.268Z" }, + { url = "https://files.pythonhosted.org/packages/f7/ca/a20db059a8a47048aaf550da14a145b56e9c7386fb8280d3ce2962dcebf7/mmh3-5.2.0-cp314-cp314-ios_13_0_arm64_iphoneos.whl", hash = "sha256:e5015f0bb6eb50008bed2d4b1ce0f2a294698a926111e4bb202c0987b4f89078", size = 39209, upload-time = "2025-07-29T07:42:51.559Z" }, + { url = "https://files.pythonhosted.org/packages/98/dd/e5094799d55c7482d814b979a0fd608027d0af1b274bfb4c3ea3e950bfd5/mmh3-5.2.0-cp314-cp314-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:e0f3ed828d709f5b82d8bfe14f8856120718ec4bd44a5b26102c3030a1e12501", size = 39843, upload-time = "2025-07-29T07:42:52.536Z" }, + { url = "https://files.pythonhosted.org/packages/f4/6b/7844d7f832c85400e7cc89a1348e4e1fdd38c5a38415bb5726bbb8fcdb6c/mmh3-5.2.0-cp314-cp314-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:f35727c5118aba95f0397e18a1a5b8405425581bfe53e821f0fb444cbdc2bc9b", size = 40648, upload-time = "2025-07-29T07:42:53.392Z" }, + { url = "https://files.pythonhosted.org/packages/1f/bf/71f791f48a21ff3190ba5225807cbe4f7223360e96862c376e6e3fb7efa7/mmh3-5.2.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3bc244802ccab5220008cb712ca1508cb6a12f0eb64ad62997156410579a1770", size = 56164, upload-time = "2025-07-29T07:42:54.267Z" }, + { url = "https://files.pythonhosted.org/packages/70/1f/f87e3d34d83032b4f3f0f528c6d95a98290fcacf019da61343a49dccfd51/mmh3-5.2.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:ff3d50dc3fe8a98059f99b445dfb62792b5d006c5e0b8f03c6de2813b8376110", size = 40692, upload-time = "2025-07-29T07:42:55.234Z" }, + { url = "https://files.pythonhosted.org/packages/a6/e2/db849eaed07117086f3452feca8c839d30d38b830ac59fe1ce65af8be5ad/mmh3-5.2.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:37a358cc881fe796e099c1db6ce07ff757f088827b4e8467ac52b7a7ffdca647", size = 40068, upload-time = "2025-07-29T07:42:56.158Z" }, + { url = "https://files.pythonhosted.org/packages/df/6b/209af927207af77425b044e32f77f49105a0b05d82ff88af6971d8da4e19/mmh3-5.2.0-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:b9a87025121d1c448f24f27ff53a5fe7b6ef980574b4a4f11acaabe702420d63", size = 97367, upload-time = "2025-07-29T07:42:57.037Z" }, + { url = "https://files.pythonhosted.org/packages/ca/e0/78adf4104c425606a9ce33fb351f790c76a6c2314969c4a517d1ffc92196/mmh3-5.2.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:1ba55d6ca32eeef8b2625e1e4bfc3b3db52bc63014bd7e5df8cc11bf2b036b12", size = 103306, upload-time = "2025-07-29T07:42:58.522Z" }, + { url = "https://files.pythonhosted.org/packages/a3/79/c2b89f91b962658b890104745b1b6c9ce38d50a889f000b469b91eeb1b9e/mmh3-5.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c9ff37ba9f15637e424c2ab57a1a590c52897c845b768e4e0a4958084ec87f22", size = 106312, upload-time = "2025-07-29T07:42:59.552Z" }, + { url = "https://files.pythonhosted.org/packages/4b/14/659d4095528b1a209be90934778c5ffe312177d51e365ddcbca2cac2ec7c/mmh3-5.2.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a094319ec0db52a04af9fdc391b4d39a1bc72bc8424b47c4411afb05413a44b5", size = 113135, upload-time = "2025-07-29T07:43:00.745Z" }, + { url = "https://files.pythonhosted.org/packages/8d/6f/cd7734a779389a8a467b5c89a48ff476d6f2576e78216a37551a97e9e42a/mmh3-5.2.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:c5584061fd3da584659b13587f26c6cad25a096246a481636d64375d0c1f6c07", size = 120775, upload-time = "2025-07-29T07:43:02.124Z" }, + { url = "https://files.pythonhosted.org/packages/1d/ca/8256e3b96944408940de3f9291d7e38a283b5761fe9614d4808fcf27bd62/mmh3-5.2.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ecbfc0437ddfdced5e7822d1ce4855c9c64f46819d0fdc4482c53f56c707b935", size = 99178, upload-time = "2025-07-29T07:43:03.182Z" }, + { url = "https://files.pythonhosted.org/packages/8a/32/39e2b3cf06b6e2eb042c984dab8680841ac2a0d3ca6e0bea30db1f27b565/mmh3-5.2.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:7b986d506a8e8ea345791897ba5d8ba0d9d8820cd4fc3e52dbe6de19388de2e7", size = 98738, upload-time = "2025-07-29T07:43:04.207Z" }, + { url = "https://files.pythonhosted.org/packages/61/d3/7bbc8e0e8cf65ebbe1b893ffa0467b7ecd1bd07c3bbf6c9db4308ada22ec/mmh3-5.2.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:38d899a156549da8ef6a9f1d6f7ef231228d29f8f69bce2ee12f5fba6d6fd7c5", size = 106510, upload-time = "2025-07-29T07:43:05.656Z" }, + { url = "https://files.pythonhosted.org/packages/10/99/b97e53724b52374e2f3859046f0eb2425192da356cb19784d64bc17bb1cf/mmh3-5.2.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:d86651fa45799530885ba4dab3d21144486ed15285e8784181a0ab37a4552384", size = 110053, upload-time = "2025-07-29T07:43:07.204Z" }, + { url = "https://files.pythonhosted.org/packages/ac/62/3688c7d975ed195155671df68788c83fed6f7909b6ec4951724c6860cb97/mmh3-5.2.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:c463d7c1c4cfc9d751efeaadd936bbba07b5b0ed81a012b3a9f5a12f0872bd6e", size = 97546, upload-time = "2025-07-29T07:43:08.226Z" }, + { url = "https://files.pythonhosted.org/packages/ca/3b/c6153250f03f71a8b7634cded82939546cdfba02e32f124ff51d52c6f991/mmh3-5.2.0-cp314-cp314-win32.whl", hash = "sha256:bb4fe46bdc6104fbc28db7a6bacb115ee6368ff993366bbd8a2a7f0076e6f0c0", size = 41422, upload-time = "2025-07-29T07:43:09.216Z" }, + { url = "https://files.pythonhosted.org/packages/74/01/a27d98bab083a435c4c07e9d1d720d4c8a578bf4c270bae373760b1022be/mmh3-5.2.0-cp314-cp314-win_amd64.whl", hash = "sha256:7c7f0b342fd06044bedd0b6e72177ddc0076f54fd89ee239447f8b271d919d9b", size = 42135, upload-time = "2025-07-29T07:43:10.183Z" }, + { url = "https://files.pythonhosted.org/packages/cb/c9/dbba5507e95429b8b380e2ba091eff5c20a70a59560934dff0ad8392b8c8/mmh3-5.2.0-cp314-cp314-win_arm64.whl", hash = "sha256:3193752fc05ea72366c2b63ff24b9a190f422e32d75fdeae71087c08fff26115", size = 39879, upload-time = "2025-07-29T07:43:11.106Z" }, + { url = "https://files.pythonhosted.org/packages/b5/d1/c8c0ef839c17258b9de41b84f663574fabcf8ac2007b7416575e0f65ff6e/mmh3-5.2.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:69fc339d7202bea69ef9bd7c39bfdf9fdabc8e6822a01eba62fb43233c1b3932", size = 57696, upload-time = "2025-07-29T07:43:11.989Z" }, + { url = "https://files.pythonhosted.org/packages/2f/55/95e2b9ff201e89f9fe37036037ab61a6c941942b25cdb7b6a9df9b931993/mmh3-5.2.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:12da42c0a55c9d86ab566395324213c319c73ecb0c239fad4726324212b9441c", size = 41421, upload-time = "2025-07-29T07:43:13.269Z" }, + { url = "https://files.pythonhosted.org/packages/77/79/9be23ad0b7001a4b22752e7693be232428ecc0a35068a4ff5c2f14ef8b20/mmh3-5.2.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:f7f9034c7cf05ddfaac8d7a2e63a3c97a840d4615d0a0e65ba8bdf6f8576e3be", size = 40853, upload-time = "2025-07-29T07:43:14.888Z" }, + { url = "https://files.pythonhosted.org/packages/ac/1b/96b32058eda1c1dee8264900c37c359a7325c1f11f5ff14fd2be8e24eff9/mmh3-5.2.0-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:11730eeb16dfcf9674fdea9bb6b8e6dd9b40813b7eb839bc35113649eef38aeb", size = 109694, upload-time = "2025-07-29T07:43:15.816Z" }, + { url = "https://files.pythonhosted.org/packages/8d/6f/a2ae44cd7dad697b6dea48390cbc977b1e5ca58fda09628cbcb2275af064/mmh3-5.2.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:932a6eec1d2e2c3c9e630d10f7128d80e70e2d47fe6b8c7ea5e1afbd98733e65", size = 117438, upload-time = "2025-07-29T07:43:16.865Z" }, + { url = "https://files.pythonhosted.org/packages/a0/08/bfb75451c83f05224a28afeaf3950c7b793c0b71440d571f8e819cfb149a/mmh3-5.2.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3ca975c51c5028947bbcfc24966517aac06a01d6c921e30f7c5383c195f87991", size = 120409, upload-time = "2025-07-29T07:43:18.207Z" }, + { url = "https://files.pythonhosted.org/packages/9f/ea/8b118b69b2ff8df568f742387d1a159bc654a0f78741b31437dd047ea28e/mmh3-5.2.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5b0b58215befe0f0e120b828f7645e97719bbba9f23b69e268ed0ac7adde8645", size = 125909, upload-time = "2025-07-29T07:43:19.39Z" }, + { url = "https://files.pythonhosted.org/packages/3e/11/168cc0b6a30650032e351a3b89b8a47382da541993a03af91e1ba2501234/mmh3-5.2.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:29c2b9ce61886809d0492a274a5a53047742dea0f703f9c4d5d223c3ea6377d3", size = 135331, upload-time = "2025-07-29T07:43:20.435Z" }, + { url = "https://files.pythonhosted.org/packages/31/05/e3a9849b1c18a7934c64e831492c99e67daebe84a8c2f2c39a7096a830e3/mmh3-5.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:a367d4741ac0103f8198c82f429bccb9359f543ca542b06a51f4f0332e8de279", size = 110085, upload-time = "2025-07-29T07:43:21.92Z" }, + { url = "https://files.pythonhosted.org/packages/d9/d5/a96bcc306e3404601418b2a9a370baec92af84204528ba659fdfe34c242f/mmh3-5.2.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:5a5dba98e514fb26241868f6eb90a7f7ca0e039aed779342965ce24ea32ba513", size = 111195, upload-time = "2025-07-29T07:43:23.066Z" }, + { url = "https://files.pythonhosted.org/packages/af/29/0fd49801fec5bff37198684e0849b58e0dab3a2a68382a357cfffb0fafc3/mmh3-5.2.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:941603bfd75a46023807511c1ac2f1b0f39cccc393c15039969806063b27e6db", size = 116919, upload-time = "2025-07-29T07:43:24.178Z" }, + { url = "https://files.pythonhosted.org/packages/2d/04/4f3c32b0a2ed762edca45d8b46568fc3668e34f00fb1e0a3b5451ec1281c/mmh3-5.2.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:132dd943451a7c7546978863d2f5a64977928410782e1a87d583cb60eb89e667", size = 123160, upload-time = "2025-07-29T07:43:25.26Z" }, + { url = "https://files.pythonhosted.org/packages/91/76/3d29eaa38821730633d6a240d36fa8ad2807e9dfd432c12e1a472ed211eb/mmh3-5.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:f698733a8a494466432d611a8f0d1e026f5286dee051beea4b3c3146817e35d5", size = 110206, upload-time = "2025-07-29T07:43:26.699Z" }, + { url = "https://files.pythonhosted.org/packages/44/1c/ccf35892684d3a408202e296e56843743e0b4fb1629e59432ea88cdb3909/mmh3-5.2.0-cp314-cp314t-win32.whl", hash = "sha256:6d541038b3fc360ec538fc116de87462627944765a6750308118f8b509a8eec7", size = 41970, upload-time = "2025-07-29T07:43:27.666Z" }, + { url = "https://files.pythonhosted.org/packages/75/b2/b9e4f1e5adb5e21eb104588fcee2cd1eaa8308255173481427d5ecc4284e/mmh3-5.2.0-cp314-cp314t-win_amd64.whl", hash = "sha256:e912b19cf2378f2967d0c08e86ff4c6c360129887f678e27e4dde970d21b3f4d", size = 43063, upload-time = "2025-07-29T07:43:28.582Z" }, + { url = "https://files.pythonhosted.org/packages/6a/fc/0e61d9a4e29c8679356795a40e48f647b4aad58d71bfc969f0f8f56fb912/mmh3-5.2.0-cp314-cp314t-win_arm64.whl", hash = "sha256:e7884931fe5e788163e7b3c511614130c2c59feffdc21112290a194487efb2e9", size = 40455, upload-time = "2025-07-29T07:43:29.563Z" }, +] + +[[package]] +name = "mpmath" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e0/47/dd32fa426cc72114383ac549964eecb20ecfd886d1e5ccf5340b55b02f57/mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f", size = 508106, upload-time = "2023-03-07T16:47:11.061Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c", size = 536198, upload-time = "2023-03-07T16:47:09.197Z" }, +] + +[[package]] +name = "multidict" +version = "6.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1a/c2/c2d94cbe6ac1753f3fc980da97b3d930efe1da3af3c9f5125354436c073d/multidict-6.7.1.tar.gz", hash = "sha256:ec6652a1bee61c53a3e5776b6049172c53b6aaba34f18c9ad04f82712bac623d", size = 102010, upload-time = "2026-01-26T02:46:45.979Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/9c/f20e0e2cf80e4b2e4b1c365bf5fe104ee633c751a724246262db8f1a0b13/multidict-6.7.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:a90f75c956e32891a4eda3639ce6dd86e87105271f43d43442a3aedf3cddf172", size = 76893, upload-time = "2026-01-26T02:43:52.754Z" }, + { url = "https://files.pythonhosted.org/packages/fe/cf/18ef143a81610136d3da8193da9d80bfe1cb548a1e2d1c775f26b23d024a/multidict-6.7.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:3fccb473e87eaa1382689053e4a4618e7ba7b9b9b8d6adf2027ee474597128cd", size = 45456, upload-time = "2026-01-26T02:43:53.893Z" }, + { url = "https://files.pythonhosted.org/packages/a9/65/1caac9d4cd32e8433908683446eebc953e82d22b03d10d41a5f0fefe991b/multidict-6.7.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b0fa96985700739c4c7853a43c0b3e169360d6855780021bfc6d0f1ce7c123e7", size = 43872, upload-time = "2026-01-26T02:43:55.041Z" }, + { url = "https://files.pythonhosted.org/packages/cf/3b/d6bd75dc4f3ff7c73766e04e705b00ed6dbbaccf670d9e05a12b006f5a21/multidict-6.7.1-cp312-cp312-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:cb2a55f408c3043e42b40cc8eecd575afa27b7e0b956dfb190de0f8499a57a53", size = 251018, upload-time = "2026-01-26T02:43:56.198Z" }, + { url = "https://files.pythonhosted.org/packages/fd/80/c959c5933adedb9ac15152e4067c702a808ea183a8b64cf8f31af8ad3155/multidict-6.7.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eb0ce7b2a32d09892b3dd6cc44877a0d02a33241fafca5f25c8b6b62374f8b75", size = 258883, upload-time = "2026-01-26T02:43:57.499Z" }, + { url = "https://files.pythonhosted.org/packages/86/85/7ed40adafea3d4f1c8b916e3b5cc3a8e07dfcdcb9cd72800f4ed3ca1b387/multidict-6.7.1-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:c3a32d23520ee37bf327d1e1a656fec76a2edd5c038bf43eddfa0572ec49c60b", size = 242413, upload-time = "2026-01-26T02:43:58.755Z" }, + { url = "https://files.pythonhosted.org/packages/d2/57/b8565ff533e48595503c785f8361ff9a4fde4d67de25c207cd0ba3befd03/multidict-6.7.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:9c90fed18bffc0189ba814749fdcc102b536e83a9f738a9003e569acd540a733", size = 268404, upload-time = "2026-01-26T02:44:00.216Z" }, + { url = "https://files.pythonhosted.org/packages/e0/50/9810c5c29350f7258180dfdcb2e52783a0632862eb334c4896ac717cebcb/multidict-6.7.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:da62917e6076f512daccfbbde27f46fed1c98fee202f0559adec8ee0de67f71a", size = 269456, upload-time = "2026-01-26T02:44:02.202Z" }, + { url = "https://files.pythonhosted.org/packages/f3/8d/5e5be3ced1d12966fefb5c4ea3b2a5b480afcea36406559442c6e31d4a48/multidict-6.7.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bfde23ef6ed9db7eaee6c37dcec08524cb43903c60b285b172b6c094711b3961", size = 256322, upload-time = "2026-01-26T02:44:03.56Z" }, + { url = "https://files.pythonhosted.org/packages/31/6e/d8a26d81ac166a5592782d208dd90dfdc0a7a218adaa52b45a672b46c122/multidict-6.7.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3758692429e4e32f1ba0df23219cd0b4fc0a52f476726fff9337d1a57676a582", size = 253955, upload-time = "2026-01-26T02:44:04.845Z" }, + { url = "https://files.pythonhosted.org/packages/59/4c/7c672c8aad41534ba619bcd4ade7a0dc87ed6b8b5c06149b85d3dd03f0cd/multidict-6.7.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:398c1478926eca669f2fd6a5856b6de9c0acf23a2cb59a14c0ba5844fa38077e", size = 251254, upload-time = "2026-01-26T02:44:06.133Z" }, + { url = "https://files.pythonhosted.org/packages/7b/bd/84c24de512cbafbdbc39439f74e967f19570ce7924e3007174a29c348916/multidict-6.7.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:c102791b1c4f3ab36ce4101154549105a53dc828f016356b3e3bcae2e3a039d3", size = 252059, upload-time = "2026-01-26T02:44:07.518Z" }, + { url = "https://files.pythonhosted.org/packages/fa/ba/f5449385510825b73d01c2d4087bf6d2fccc20a2d42ac34df93191d3dd03/multidict-6.7.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a088b62bd733e2ad12c50dad01b7d0166c30287c166e137433d3b410add807a6", size = 263588, upload-time = "2026-01-26T02:44:09.382Z" }, + { url = "https://files.pythonhosted.org/packages/d7/11/afc7c677f68f75c84a69fe37184f0f82fce13ce4b92f49f3db280b7e92b3/multidict-6.7.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:3d51ff4785d58d3f6c91bdbffcb5e1f7ddfda557727043aa20d20ec4f65e324a", size = 259642, upload-time = "2026-01-26T02:44:10.73Z" }, + { url = "https://files.pythonhosted.org/packages/2b/17/ebb9644da78c4ab36403739e0e6e0e30ebb135b9caf3440825001a0bddcb/multidict-6.7.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:fc5907494fccf3e7d3f94f95c91d6336b092b5fc83811720fae5e2765890dfba", size = 251377, upload-time = "2026-01-26T02:44:12.042Z" }, + { url = "https://files.pythonhosted.org/packages/ca/a4/840f5b97339e27846c46307f2530a2805d9d537d8b8bd416af031cad7fa0/multidict-6.7.1-cp312-cp312-win32.whl", hash = "sha256:28ca5ce2fd9716631133d0e9a9b9a745ad7f60bac2bccafb56aa380fc0b6c511", size = 41887, upload-time = "2026-01-26T02:44:14.245Z" }, + { url = "https://files.pythonhosted.org/packages/80/31/0b2517913687895f5904325c2069d6a3b78f66cc641a86a2baf75a05dcbb/multidict-6.7.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcee94dfbd638784645b066074b338bc9cc155d4b4bffa4adce1615c5a426c19", size = 46053, upload-time = "2026-01-26T02:44:15.371Z" }, + { url = "https://files.pythonhosted.org/packages/0c/5b/aba28e4ee4006ae4c7df8d327d31025d760ffa992ea23812a601d226e682/multidict-6.7.1-cp312-cp312-win_arm64.whl", hash = "sha256:ba0a9fb644d0c1a2194cf7ffb043bd852cea63a57f66fbd33959f7dae18517bf", size = 43307, upload-time = "2026-01-26T02:44:16.852Z" }, + { url = "https://files.pythonhosted.org/packages/f2/22/929c141d6c0dba87d3e1d38fbdf1ba8baba86b7776469f2bc2d3227a1e67/multidict-6.7.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:2b41f5fed0ed563624f1c17630cb9941cf2309d4df00e494b551b5f3e3d67a23", size = 76174, upload-time = "2026-01-26T02:44:18.509Z" }, + { url = "https://files.pythonhosted.org/packages/c7/75/bc704ae15fee974f8fccd871305e254754167dce5f9e42d88a2def741a1d/multidict-6.7.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84e61e3af5463c19b67ced91f6c634effb89ef8bfc5ca0267f954451ed4bb6a2", size = 45116, upload-time = "2026-01-26T02:44:19.745Z" }, + { url = "https://files.pythonhosted.org/packages/79/76/55cd7186f498ed080a18440c9013011eb548f77ae1b297206d030eb1180a/multidict-6.7.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:935434b9853c7c112eee7ac891bc4cb86455aa631269ae35442cb316790c1445", size = 43524, upload-time = "2026-01-26T02:44:21.571Z" }, + { url = "https://files.pythonhosted.org/packages/e9/3c/414842ef8d5a1628d68edee29ba0e5bcf235dbfb3ccd3ea303a7fe8c72ff/multidict-6.7.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:432feb25a1cb67fe82a9680b4d65fb542e4635cb3166cd9c01560651ad60f177", size = 249368, upload-time = "2026-01-26T02:44:22.803Z" }, + { url = "https://files.pythonhosted.org/packages/f6/32/befed7f74c458b4a525e60519fe8d87eef72bb1e99924fa2b0f9d97a221e/multidict-6.7.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e82d14e3c948952a1a85503817e038cba5905a3352de76b9a465075d072fba23", size = 256952, upload-time = "2026-01-26T02:44:24.306Z" }, + { url = "https://files.pythonhosted.org/packages/03/d6/c878a44ba877f366630c860fdf74bfb203c33778f12b6ac274936853c451/multidict-6.7.1-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:4cfb48c6ea66c83bcaaf7e4dfa7ec1b6bbcf751b7db85a328902796dfde4c060", size = 240317, upload-time = "2026-01-26T02:44:25.772Z" }, + { url = "https://files.pythonhosted.org/packages/68/49/57421b4d7ad2e9e60e25922b08ceb37e077b90444bde6ead629095327a6f/multidict-6.7.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:1d540e51b7e8e170174555edecddbd5538105443754539193e3e1061864d444d", size = 267132, upload-time = "2026-01-26T02:44:27.648Z" }, + { url = "https://files.pythonhosted.org/packages/b7/fe/ec0edd52ddbcea2a2e89e174f0206444a61440b40f39704e64dc807a70bd/multidict-6.7.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:273d23f4b40f3dce4d6c8a821c741a86dec62cded82e1175ba3d99be128147ed", size = 268140, upload-time = "2026-01-26T02:44:29.588Z" }, + { url = "https://files.pythonhosted.org/packages/b0/73/6e1b01cbeb458807aa0831742232dbdd1fa92bfa33f52a3f176b4ff3dc11/multidict-6.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d624335fd4fa1c08a53f8b4be7676ebde19cd092b3895c421045ca87895b429", size = 254277, upload-time = "2026-01-26T02:44:30.902Z" }, + { url = "https://files.pythonhosted.org/packages/6a/b2/5fb8c124d7561a4974c342bc8c778b471ebbeb3cc17df696f034a7e9afe7/multidict-6.7.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:12fad252f8b267cc75b66e8fc51b3079604e8d43a75428ffe193cd9e2195dfd6", size = 252291, upload-time = "2026-01-26T02:44:32.31Z" }, + { url = "https://files.pythonhosted.org/packages/5a/96/51d4e4e06bcce92577fcd488e22600bd38e4fd59c20cb49434d054903bd2/multidict-6.7.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:03ede2a6ffbe8ef936b92cb4529f27f42be7f56afcdab5ab739cd5f27fb1cbf9", size = 250156, upload-time = "2026-01-26T02:44:33.734Z" }, + { url = "https://files.pythonhosted.org/packages/db/6b/420e173eec5fba721a50e2a9f89eda89d9c98fded1124f8d5c675f7a0c0f/multidict-6.7.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:90efbcf47dbe33dcf643a1e400d67d59abeac5db07dc3f27d6bdeae497a2198c", size = 249742, upload-time = "2026-01-26T02:44:35.222Z" }, + { url = "https://files.pythonhosted.org/packages/44/a3/ec5b5bd98f306bc2aa297b8c6f11a46714a56b1e6ef5ebda50a4f5d7c5fb/multidict-6.7.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:5c4b9bfc148f5a91be9244d6264c53035c8a0dcd2f51f1c3c6e30e30ebaa1c84", size = 262221, upload-time = "2026-01-26T02:44:36.604Z" }, + { url = "https://files.pythonhosted.org/packages/cd/f7/e8c0d0da0cd1e28d10e624604e1a36bcc3353aaebdfdc3a43c72bc683a12/multidict-6.7.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:401c5a650f3add2472d1d288c26deebc540f99e2fb83e9525007a74cd2116f1d", size = 258664, upload-time = "2026-01-26T02:44:38.008Z" }, + { url = "https://files.pythonhosted.org/packages/52/da/151a44e8016dd33feed44f730bd856a66257c1ee7aed4f44b649fb7edeb3/multidict-6.7.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:97891f3b1b3ffbded884e2916cacf3c6fc87b66bb0dde46f7357404750559f33", size = 249490, upload-time = "2026-01-26T02:44:39.386Z" }, + { url = "https://files.pythonhosted.org/packages/87/af/a3b86bf9630b732897f6fc3f4c4714b90aa4361983ccbdcd6c0339b21b0c/multidict-6.7.1-cp313-cp313-win32.whl", hash = "sha256:e1c5988359516095535c4301af38d8a8838534158f649c05dd1050222321bcb3", size = 41695, upload-time = "2026-01-26T02:44:41.318Z" }, + { url = "https://files.pythonhosted.org/packages/b2/35/e994121b0e90e46134673422dd564623f93304614f5d11886b1b3e06f503/multidict-6.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:960c83bf01a95b12b08fd54324a4eb1d5b52c88932b5cba5d6e712bb3ed12eb5", size = 45884, upload-time = "2026-01-26T02:44:42.488Z" }, + { url = "https://files.pythonhosted.org/packages/ca/61/42d3e5dbf661242a69c97ea363f2d7b46c567da8eadef8890022be6e2ab0/multidict-6.7.1-cp313-cp313-win_arm64.whl", hash = "sha256:563fe25c678aaba333d5399408f5ec3c383ca5b663e7f774dd179a520b8144df", size = 43122, upload-time = "2026-01-26T02:44:43.664Z" }, + { url = "https://files.pythonhosted.org/packages/6d/b3/e6b21c6c4f314bb956016b0b3ef2162590a529b84cb831c257519e7fde44/multidict-6.7.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:c76c4bec1538375dad9d452d246ca5368ad6e1c9039dadcf007ae59c70619ea1", size = 83175, upload-time = "2026-01-26T02:44:44.894Z" }, + { url = "https://files.pythonhosted.org/packages/fb/76/23ecd2abfe0957b234f6c960f4ade497f55f2c16aeb684d4ecdbf1c95791/multidict-6.7.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:57b46b24b5d5ebcc978da4ec23a819a9402b4228b8a90d9c656422b4bdd8a963", size = 48460, upload-time = "2026-01-26T02:44:46.106Z" }, + { url = "https://files.pythonhosted.org/packages/c4/57/a0ed92b23f3a042c36bc4227b72b97eca803f5f1801c1ab77c8a212d455e/multidict-6.7.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e954b24433c768ce78ab7929e84ccf3422e46deb45a4dc9f93438f8217fa2d34", size = 46930, upload-time = "2026-01-26T02:44:47.278Z" }, + { url = "https://files.pythonhosted.org/packages/b5/66/02ec7ace29162e447f6382c495dc95826bf931d3818799bbef11e8f7df1a/multidict-6.7.1-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3bd231490fa7217cc832528e1cd8752a96f0125ddd2b5749390f7c3ec8721b65", size = 242582, upload-time = "2026-01-26T02:44:48.604Z" }, + { url = "https://files.pythonhosted.org/packages/58/18/64f5a795e7677670e872673aca234162514696274597b3708b2c0d276cce/multidict-6.7.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:253282d70d67885a15c8a7716f3a73edf2d635793ceda8173b9ecc21f2fb8292", size = 250031, upload-time = "2026-01-26T02:44:50.544Z" }, + { url = "https://files.pythonhosted.org/packages/c8/ed/e192291dbbe51a8290c5686f482084d31bcd9d09af24f63358c3d42fd284/multidict-6.7.1-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0b4c48648d7649c9335cf1927a8b87fa692de3dcb15faa676c6a6f1f1aabda43", size = 228596, upload-time = "2026-01-26T02:44:51.951Z" }, + { url = "https://files.pythonhosted.org/packages/1e/7e/3562a15a60cf747397e7f2180b0a11dc0c38d9175a650e75fa1b4d325e15/multidict-6.7.1-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:98bc624954ec4d2c7cb074b8eefc2b5d0ce7d482e410df446414355d158fe4ca", size = 257492, upload-time = "2026-01-26T02:44:53.902Z" }, + { url = "https://files.pythonhosted.org/packages/24/02/7d0f9eae92b5249bb50ac1595b295f10e263dd0078ebb55115c31e0eaccd/multidict-6.7.1-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:1b99af4d9eec0b49927b4402bcbb58dea89d3e0db8806a4086117019939ad3dd", size = 255899, upload-time = "2026-01-26T02:44:55.316Z" }, + { url = "https://files.pythonhosted.org/packages/00/e3/9b60ed9e23e64c73a5cde95269ef1330678e9c6e34dd4eb6b431b85b5a10/multidict-6.7.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6aac4f16b472d5b7dc6f66a0d49dd57b0e0902090be16594dc9ebfd3d17c47e7", size = 247970, upload-time = "2026-01-26T02:44:56.783Z" }, + { url = "https://files.pythonhosted.org/packages/3e/06/538e58a63ed5cfb0bd4517e346b91da32fde409d839720f664e9a4ae4f9d/multidict-6.7.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:21f830fe223215dffd51f538e78c172ed7c7f60c9b96a2bf05c4848ad49921c3", size = 245060, upload-time = "2026-01-26T02:44:58.195Z" }, + { url = "https://files.pythonhosted.org/packages/b2/2f/d743a3045a97c895d401e9bd29aaa09b94f5cbdf1bd561609e5a6c431c70/multidict-6.7.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:f5dd81c45b05518b9aa4da4aa74e1c93d715efa234fd3e8a179df611cc85e5f4", size = 235888, upload-time = "2026-01-26T02:44:59.57Z" }, + { url = "https://files.pythonhosted.org/packages/38/83/5a325cac191ab28b63c52f14f1131f3b0a55ba3b9aa65a6d0bf2a9b921a0/multidict-6.7.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:eb304767bca2bb92fb9c5bd33cedc95baee5bb5f6c88e63706533a1c06ad08c8", size = 243554, upload-time = "2026-01-26T02:45:01.054Z" }, + { url = "https://files.pythonhosted.org/packages/20/1f/9d2327086bd15da2725ef6aae624208e2ef828ed99892b17f60c344e57ed/multidict-6.7.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:c9035dde0f916702850ef66460bc4239d89d08df4d02023a5926e7446724212c", size = 252341, upload-time = "2026-01-26T02:45:02.484Z" }, + { url = "https://files.pythonhosted.org/packages/e8/2c/2a1aa0280cf579d0f6eed8ee5211c4f1730bd7e06c636ba2ee6aafda302e/multidict-6.7.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:af959b9beeb66c822380f222f0e0a1889331597e81f1ded7f374f3ecb0fd6c52", size = 246391, upload-time = "2026-01-26T02:45:03.862Z" }, + { url = "https://files.pythonhosted.org/packages/e5/03/7ca022ffc36c5a3f6e03b179a5ceb829be9da5783e6fe395f347c0794680/multidict-6.7.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:41f2952231456154ee479651491e94118229844dd7226541788be783be2b5108", size = 243422, upload-time = "2026-01-26T02:45:05.296Z" }, + { url = "https://files.pythonhosted.org/packages/dc/1d/b31650eab6c5778aceed46ba735bd97f7c7d2f54b319fa916c0f96e7805b/multidict-6.7.1-cp313-cp313t-win32.whl", hash = "sha256:df9f19c28adcb40b6aae30bbaa1478c389efd50c28d541d76760199fc1037c32", size = 47770, upload-time = "2026-01-26T02:45:06.754Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5b/2d2d1d522e51285bd61b1e20df8f47ae1a9d80839db0b24ea783b3832832/multidict-6.7.1-cp313-cp313t-win_amd64.whl", hash = "sha256:d54ecf9f301853f2c5e802da559604b3e95bb7a3b01a9c295c6ee591b9882de8", size = 53109, upload-time = "2026-01-26T02:45:08.044Z" }, + { url = "https://files.pythonhosted.org/packages/3d/a3/cc409ba012c83ca024a308516703cf339bdc4b696195644a7215a5164a24/multidict-6.7.1-cp313-cp313t-win_arm64.whl", hash = "sha256:5a37ca18e360377cfda1d62f5f382ff41f2b8c4ccb329ed974cc2e1643440118", size = 45573, upload-time = "2026-01-26T02:45:09.349Z" }, + { url = "https://files.pythonhosted.org/packages/91/cc/db74228a8be41884a567e88a62fd589a913708fcf180d029898c17a9a371/multidict-6.7.1-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8f333ec9c5eb1b7105e3b84b53141e66ca05a19a605368c55450b6ba208cb9ee", size = 75190, upload-time = "2026-01-26T02:45:10.651Z" }, + { url = "https://files.pythonhosted.org/packages/d5/22/492f2246bb5b534abd44804292e81eeaf835388901f0c574bac4eeec73c5/multidict-6.7.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:a407f13c188f804c759fc6a9f88286a565c242a76b27626594c133b82883b5c2", size = 44486, upload-time = "2026-01-26T02:45:11.938Z" }, + { url = "https://files.pythonhosted.org/packages/f1/4f/733c48f270565d78b4544f2baddc2fb2a245e5a8640254b12c36ac7ac68e/multidict-6.7.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0e161ddf326db5577c3a4cc2d8648f81456e8a20d40415541587a71620d7a7d1", size = 43219, upload-time = "2026-01-26T02:45:14.346Z" }, + { url = "https://files.pythonhosted.org/packages/24/bb/2c0c2287963f4259c85e8bcbba9182ced8d7fca65c780c38e99e61629d11/multidict-6.7.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1e3a8bb24342a8201d178c3b4984c26ba81a577c80d4d525727427460a50c22d", size = 245132, upload-time = "2026-01-26T02:45:15.712Z" }, + { url = "https://files.pythonhosted.org/packages/a7/f9/44d4b3064c65079d2467888794dea218d1601898ac50222ab8a9a8094460/multidict-6.7.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97231140a50f5d447d3164f994b86a0bed7cd016e2682f8650d6a9158e14fd31", size = 252420, upload-time = "2026-01-26T02:45:17.293Z" }, + { url = "https://files.pythonhosted.org/packages/8b/13/78f7275e73fa17b24c9a51b0bd9d73ba64bb32d0ed51b02a746eb876abe7/multidict-6.7.1-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6b10359683bd8806a200fd2909e7c8ca3a7b24ec1d8132e483d58e791d881048", size = 233510, upload-time = "2026-01-26T02:45:19.356Z" }, + { url = "https://files.pythonhosted.org/packages/4b/25/8167187f62ae3cbd52da7893f58cb036b47ea3fb67138787c76800158982/multidict-6.7.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:283ddac99f7ac25a4acadbf004cb5ae34480bbeb063520f70ce397b281859362", size = 264094, upload-time = "2026-01-26T02:45:20.834Z" }, + { url = "https://files.pythonhosted.org/packages/a1/e7/69a3a83b7b030cf283fb06ce074a05a02322359783424d7edf0f15fe5022/multidict-6.7.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:538cec1e18c067d0e6103aa9a74f9e832904c957adc260e61cd9d8cf0c3b3d37", size = 260786, upload-time = "2026-01-26T02:45:22.818Z" }, + { url = "https://files.pythonhosted.org/packages/fe/3b/8ec5074bcfc450fe84273713b4b0a0dd47c0249358f5d82eb8104ffe2520/multidict-6.7.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7eee46ccb30ff48a1e35bb818cc90846c6be2b68240e42a78599166722cea709", size = 248483, upload-time = "2026-01-26T02:45:24.368Z" }, + { url = "https://files.pythonhosted.org/packages/48/5a/d5a99e3acbca0e29c5d9cba8f92ceb15dce78bab963b308ae692981e3a5d/multidict-6.7.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fa263a02f4f2dd2d11a7b1bb4362aa7cb1049f84a9235d31adf63f30143469a0", size = 248403, upload-time = "2026-01-26T02:45:25.982Z" }, + { url = "https://files.pythonhosted.org/packages/35/48/e58cd31f6c7d5102f2a4bf89f96b9cf7e00b6c6f3d04ecc44417c00a5a3c/multidict-6.7.1-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:2e1425e2f99ec5bd36c15a01b690a1a2456209c5deed58f95469ffb46039ccbb", size = 240315, upload-time = "2026-01-26T02:45:27.487Z" }, + { url = "https://files.pythonhosted.org/packages/94/33/1cd210229559cb90b6786c30676bb0c58249ff42f942765f88793b41fdce/multidict-6.7.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:497394b3239fc6f0e13a78a3e1b61296e72bf1c5f94b4c4eb80b265c37a131cd", size = 245528, upload-time = "2026-01-26T02:45:28.991Z" }, + { url = "https://files.pythonhosted.org/packages/64/f2/6e1107d226278c876c783056b7db43d800bb64c6131cec9c8dfb6903698e/multidict-6.7.1-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:233b398c29d3f1b9676b4b6f75c518a06fcb2ea0b925119fb2c1bc35c05e1601", size = 258784, upload-time = "2026-01-26T02:45:30.503Z" }, + { url = "https://files.pythonhosted.org/packages/4d/c1/11f664f14d525e4a1b5327a82d4de61a1db604ab34c6603bb3c2cc63ad34/multidict-6.7.1-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:93b1818e4a6e0930454f0f2af7dfce69307ca03cdcfb3739bf4d91241967b6c1", size = 251980, upload-time = "2026-01-26T02:45:32.603Z" }, + { url = "https://files.pythonhosted.org/packages/e1/9f/75a9ac888121d0c5bbd4ecf4eead45668b1766f6baabfb3b7f66a410e231/multidict-6.7.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:f33dc2a3abe9249ea5d8360f969ec7f4142e7ac45ee7014d8f8d5acddf178b7b", size = 243602, upload-time = "2026-01-26T02:45:34.043Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e7/50bf7b004cc8525d80dbbbedfdc7aed3e4c323810890be4413e589074032/multidict-6.7.1-cp314-cp314-win32.whl", hash = "sha256:3ab8b9d8b75aef9df299595d5388b14530839f6422333357af1339443cff777d", size = 40930, upload-time = "2026-01-26T02:45:36.278Z" }, + { url = "https://files.pythonhosted.org/packages/e0/bf/52f25716bbe93745595800f36fb17b73711f14da59ed0bb2eba141bc9f0f/multidict-6.7.1-cp314-cp314-win_amd64.whl", hash = "sha256:5e01429a929600e7dab7b166062d9bb54a5eed752384c7384c968c2afab8f50f", size = 45074, upload-time = "2026-01-26T02:45:37.546Z" }, + { url = "https://files.pythonhosted.org/packages/97/ab/22803b03285fa3a525f48217963da3a65ae40f6a1b6f6cf2768879e208f9/multidict-6.7.1-cp314-cp314-win_arm64.whl", hash = "sha256:4885cb0e817aef5d00a2e8451d4665c1808378dc27c2705f1bf4ef8505c0d2e5", size = 42471, upload-time = "2026-01-26T02:45:38.889Z" }, + { url = "https://files.pythonhosted.org/packages/e0/6d/f9293baa6146ba9507e360ea0292b6422b016907c393e2f63fc40ab7b7b5/multidict-6.7.1-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:0458c978acd8e6ea53c81eefaddbbee9c6c5e591f41b3f5e8e194780fe026581", size = 82401, upload-time = "2026-01-26T02:45:40.254Z" }, + { url = "https://files.pythonhosted.org/packages/7a/68/53b5494738d83558d87c3c71a486504d8373421c3e0dbb6d0db48ad42ee0/multidict-6.7.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:c0abd12629b0af3cf590982c0b413b1e7395cd4ec026f30986818ab95bfaa94a", size = 48143, upload-time = "2026-01-26T02:45:41.635Z" }, + { url = "https://files.pythonhosted.org/packages/37/e8/5284c53310dcdc99ce5d66563f6e5773531a9b9fe9ec7a615e9bc306b05f/multidict-6.7.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:14525a5f61d7d0c94b368a42cff4c9a4e7ba2d52e2672a7b23d84dc86fb02b0c", size = 46507, upload-time = "2026-01-26T02:45:42.99Z" }, + { url = "https://files.pythonhosted.org/packages/e4/fc/6800d0e5b3875568b4083ecf5f310dcf91d86d52573160834fb4bfcf5e4f/multidict-6.7.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:17307b22c217b4cf05033dabefe68255a534d637c6c9b0cc8382718f87be4262", size = 239358, upload-time = "2026-01-26T02:45:44.376Z" }, + { url = "https://files.pythonhosted.org/packages/41/75/4ad0973179361cdf3a113905e6e088173198349131be2b390f9fa4da5fc6/multidict-6.7.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7a7e590ff876a3eaf1c02a4dfe0724b6e69a9e9de6d8f556816f29c496046e59", size = 246884, upload-time = "2026-01-26T02:45:47.167Z" }, + { url = "https://files.pythonhosted.org/packages/c3/9c/095bb28b5da139bd41fb9a5d5caff412584f377914bd8787c2aa98717130/multidict-6.7.1-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:5fa6a95dfee63893d80a34758cd0e0c118a30b8dcb46372bf75106c591b77889", size = 225878, upload-time = "2026-01-26T02:45:48.698Z" }, + { url = "https://files.pythonhosted.org/packages/07/d0/c0a72000243756e8f5a277b6b514fa005f2c73d481b7d9e47cd4568aa2e4/multidict-6.7.1-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a0543217a6a017692aa6ae5cc39adb75e587af0f3a82288b1492eb73dd6cc2a4", size = 253542, upload-time = "2026-01-26T02:45:50.164Z" }, + { url = "https://files.pythonhosted.org/packages/c0/6b/f69da15289e384ecf2a68837ec8b5ad8c33e973aa18b266f50fe55f24b8c/multidict-6.7.1-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f99fe611c312b3c1c0ace793f92464d8cd263cc3b26b5721950d977b006b6c4d", size = 252403, upload-time = "2026-01-26T02:45:51.779Z" }, + { url = "https://files.pythonhosted.org/packages/a2/76/b9669547afa5a1a25cd93eaca91c0da1c095b06b6d2d8ec25b713588d3a1/multidict-6.7.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9004d8386d133b7e6135679424c91b0b854d2d164af6ea3f289f8f2761064609", size = 244889, upload-time = "2026-01-26T02:45:53.27Z" }, + { url = "https://files.pythonhosted.org/packages/7e/a9/a50d2669e506dad33cfc45b5d574a205587b7b8a5f426f2fbb2e90882588/multidict-6.7.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e628ef0e6859ffd8273c69412a2465c4be4a9517d07261b33334b5ec6f3c7489", size = 241982, upload-time = "2026-01-26T02:45:54.919Z" }, + { url = "https://files.pythonhosted.org/packages/c5/bb/1609558ad8b456b4827d3c5a5b775c93b87878fd3117ed3db3423dfbce1b/multidict-6.7.1-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:841189848ba629c3552035a6a7f5bf3b02eb304e9fea7492ca220a8eda6b0e5c", size = 232415, upload-time = "2026-01-26T02:45:56.981Z" }, + { url = "https://files.pythonhosted.org/packages/d8/59/6f61039d2aa9261871e03ab9dc058a550d240f25859b05b67fd70f80d4b3/multidict-6.7.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:ce1bbd7d780bb5a0da032e095c951f7014d6b0a205f8318308140f1a6aba159e", size = 240337, upload-time = "2026-01-26T02:45:58.698Z" }, + { url = "https://files.pythonhosted.org/packages/a1/29/fdc6a43c203890dc2ae9249971ecd0c41deaedfe00d25cb6564b2edd99eb/multidict-6.7.1-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b26684587228afed0d50cf804cc71062cc9c1cdf55051c4c6345d372947b268c", size = 248788, upload-time = "2026-01-26T02:46:00.862Z" }, + { url = "https://files.pythonhosted.org/packages/a9/14/a153a06101323e4cf086ecee3faadba52ff71633d471f9685c42e3736163/multidict-6.7.1-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:9f9af11306994335398293f9958071019e3ab95e9a707dc1383a35613f6abcb9", size = 242842, upload-time = "2026-01-26T02:46:02.824Z" }, + { url = "https://files.pythonhosted.org/packages/41/5f/604ae839e64a4a6efc80db94465348d3b328ee955e37acb24badbcd24d83/multidict-6.7.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:b4938326284c4f1224178a560987b6cf8b4d38458b113d9b8c1db1a836e640a2", size = 240237, upload-time = "2026-01-26T02:46:05.898Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/c3a5187bf66f6fb546ff4ab8fb5a077cbdd832d7b1908d4365c7f74a1917/multidict-6.7.1-cp314-cp314t-win32.whl", hash = "sha256:98655c737850c064a65e006a3df7c997cd3b220be4ec8fe26215760b9697d4d7", size = 48008, upload-time = "2026-01-26T02:46:07.468Z" }, + { url = "https://files.pythonhosted.org/packages/0c/f7/addf1087b860ac60e6f382240f64fb99f8bfb532bb06f7c542b83c29ca61/multidict-6.7.1-cp314-cp314t-win_amd64.whl", hash = "sha256:497bde6223c212ba11d462853cfa4f0ae6ef97465033e7dc9940cdb3ab5b48e5", size = 53542, upload-time = "2026-01-26T02:46:08.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/81/4629d0aa32302ef7b2ec65c75a728cc5ff4fa410c50096174c1632e70b3e/multidict-6.7.1-cp314-cp314t-win_arm64.whl", hash = "sha256:2bbd113e0d4af5db41d5ebfe9ccaff89de2120578164f86a5d17d5a576d1e5b2", size = 44719, upload-time = "2026-01-26T02:46:11.146Z" }, + { url = "https://files.pythonhosted.org/packages/81/08/7036c080d7117f28a4af526d794aab6a84463126db031b007717c1a6676e/multidict-6.7.1-py3-none-any.whl", hash = "sha256:55d97cc6dae627efa6a6e548885712d4864b81110ac76fa4e534c03819fa4a56", size = 12319, upload-time = "2026-01-26T02:46:44.004Z" }, +] + +[[package]] +name = "narwhals" +version = "2.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/47/6d/b57c64e5038a8cf071bce391bb11551657a74558877ac961e7fa905ece27/narwhals-2.15.0.tar.gz", hash = "sha256:a9585975b99d95084268445a1fdd881311fa26ef1caa18020d959d5b2ff9a965", size = 603479, upload-time = "2026-01-06T08:10:13.27Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/2e/cf2ffeb386ac3763526151163ad7da9f1b586aac96d2b4f7de1eaebf0c61/narwhals-2.15.0-py3-none-any.whl", hash = "sha256:cbfe21ca19d260d9fd67f995ec75c44592d1f106933b03ddd375df7ac841f9d6", size = 432856, upload-time = "2026-01-06T08:10:11.511Z" }, +] + +[[package]] +name = "nest-asyncio" +version = "1.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/83/f8/51569ac65d696c8ecbee95938f89d4abf00f47d58d48f6fbabfe8f0baefe/nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", size = 7418, upload-time = "2024-01-21T14:25:19.227Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195, upload-time = "2024-01-21T14:25:17.223Z" }, +] + +[[package]] +name = "nodeenv" +version = "1.10.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/24/bf/d1bda4f6168e0b2e9e5958945e01910052158313224ada5ce1fb2e1113b8/nodeenv-1.10.0.tar.gz", hash = "sha256:996c191ad80897d076bdfba80a41994c2b47c68e224c542b48feba42ba00f8bb", size = 55611, upload-time = "2025-12-20T14:08:54.006Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl", hash = "sha256:5bb13e3eed2923615535339b3c620e76779af4cb4c6a90deccc9e36b274d3827", size = 23438, upload-time = "2025-12-20T14:08:52.782Z" }, +] + +[[package]] +name = "numpy" +version = "2.4.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/24/62/ae72ff66c0f1fd959925b4c11f8c2dea61f47f6acaea75a08512cdfe3fed/numpy-2.4.1.tar.gz", hash = "sha256:a1ceafc5042451a858231588a104093474c6a5c57dcc724841f5c888d237d690", size = 20721320, upload-time = "2026-01-10T06:44:59.619Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/7f/ec53e32bf10c813604edf07a3682616bd931d026fcde7b6d13195dfb684a/numpy-2.4.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d3703409aac693fa82c0aee023a1ae06a6e9d065dba10f5e8e80f642f1e9d0a2", size = 16656888, upload-time = "2026-01-10T06:42:40.913Z" }, + { url = "https://files.pythonhosted.org/packages/b8/e0/1f9585d7dae8f14864e948fd7fa86c6cb72dee2676ca2748e63b1c5acfe0/numpy-2.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7211b95ca365519d3596a1d8688a95874cc94219d417504d9ecb2df99fa7bfa8", size = 12373956, upload-time = "2026-01-10T06:42:43.091Z" }, + { url = "https://files.pythonhosted.org/packages/8e/43/9762e88909ff2326f5e7536fa8cb3c49fb03a7d92705f23e6e7f553d9cb3/numpy-2.4.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:5adf01965456a664fc727ed69cc71848f28d063217c63e1a0e200a118d5eec9a", size = 5202567, upload-time = "2026-01-10T06:42:45.107Z" }, + { url = "https://files.pythonhosted.org/packages/4b/ee/34b7930eb61e79feb4478800a4b95b46566969d837546aa7c034c742ef98/numpy-2.4.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:26f0bcd9c79a00e339565b303badc74d3ea2bd6d52191eeca5f95936cad107d0", size = 6549459, upload-time = "2026-01-10T06:42:48.152Z" }, + { url = "https://files.pythonhosted.org/packages/79/e3/5f115fae982565771be994867c89bcd8d7208dbfe9469185497d70de5ddf/numpy-2.4.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0093e85df2960d7e4049664b26afc58b03236e967fb942354deef3208857a04c", size = 14404859, upload-time = "2026-01-10T06:42:49.947Z" }, + { url = "https://files.pythonhosted.org/packages/d9/7d/9c8a781c88933725445a859cac5d01b5871588a15969ee6aeb618ba99eee/numpy-2.4.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7ad270f438cbdd402c364980317fb6b117d9ec5e226fff5b4148dd9aa9fc6e02", size = 16371419, upload-time = "2026-01-10T06:42:52.409Z" }, + { url = "https://files.pythonhosted.org/packages/a6/d2/8aa084818554543f17cf4162c42f162acbd3bb42688aefdba6628a859f77/numpy-2.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:297c72b1b98100c2e8f873d5d35fb551fce7040ade83d67dd51d38c8d42a2162", size = 16182131, upload-time = "2026-01-10T06:42:54.694Z" }, + { url = "https://files.pythonhosted.org/packages/60/db/0425216684297c58a8df35f3284ef56ec4a043e6d283f8a59c53562caf1b/numpy-2.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:cf6470d91d34bf669f61d515499859fa7a4c2f7c36434afb70e82df7217933f9", size = 18295342, upload-time = "2026-01-10T06:42:56.991Z" }, + { url = "https://files.pythonhosted.org/packages/31/4c/14cb9d86240bd8c386c881bafbe43f001284b7cce3bc01623ac9475da163/numpy-2.4.1-cp312-cp312-win32.whl", hash = "sha256:b6bcf39112e956594b3331316d90c90c90fb961e39696bda97b89462f5f3943f", size = 5959015, upload-time = "2026-01-10T06:42:59.631Z" }, + { url = "https://files.pythonhosted.org/packages/51/cf/52a703dbeb0c65807540d29699fef5fda073434ff61846a564d5c296420f/numpy-2.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:e1a27bb1b2dee45a2a53f5ca6ff2d1a7f135287883a1689e930d44d1ff296c87", size = 12310730, upload-time = "2026-01-10T06:43:01.627Z" }, + { url = "https://files.pythonhosted.org/packages/69/80/a828b2d0ade5e74a9fe0f4e0a17c30fdc26232ad2bc8c9f8b3197cf7cf18/numpy-2.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:0e6e8f9d9ecf95399982019c01223dc130542960a12edfa8edd1122dfa66a8a8", size = 10312166, upload-time = "2026-01-10T06:43:03.673Z" }, + { url = "https://files.pythonhosted.org/packages/04/68/732d4b7811c00775f3bd522a21e8dd5a23f77eb11acdeb663e4a4ebf0ef4/numpy-2.4.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d797454e37570cfd61143b73b8debd623c3c0952959adb817dd310a483d58a1b", size = 16652495, upload-time = "2026-01-10T06:43:06.283Z" }, + { url = "https://files.pythonhosted.org/packages/20/ca/857722353421a27f1465652b2c66813eeeccea9d76d5f7b74b99f298e60e/numpy-2.4.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82c55962006156aeef1629b953fd359064aa47e4d82cfc8e67f0918f7da3344f", size = 12368657, upload-time = "2026-01-10T06:43:09.094Z" }, + { url = "https://files.pythonhosted.org/packages/81/0d/2377c917513449cc6240031a79d30eb9a163d32a91e79e0da47c43f2c0c8/numpy-2.4.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:71abbea030f2cfc3092a0ff9f8c8fdefdc5e0bf7d9d9c99663538bb0ecdac0b9", size = 5197256, upload-time = "2026-01-10T06:43:13.634Z" }, + { url = "https://files.pythonhosted.org/packages/17/39/569452228de3f5de9064ac75137082c6214be1f5c532016549a7923ab4b5/numpy-2.4.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:5b55aa56165b17aaf15520beb9cbd33c9039810e0d9643dd4379e44294c7303e", size = 6545212, upload-time = "2026-01-10T06:43:15.661Z" }, + { url = "https://files.pythonhosted.org/packages/8c/a4/77333f4d1e4dac4395385482557aeecf4826e6ff517e32ca48e1dafbe42a/numpy-2.4.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c0faba4a331195bfa96f93dd9dfaa10b2c7aa8cda3a02b7fd635e588fe821bf5", size = 14402871, upload-time = "2026-01-10T06:43:17.324Z" }, + { url = "https://files.pythonhosted.org/packages/ba/87/d341e519956273b39d8d47969dd1eaa1af740615394fe67d06f1efa68773/numpy-2.4.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d3e3087f53e2b4428766b54932644d148613c5a595150533ae7f00dab2f319a8", size = 16359305, upload-time = "2026-01-10T06:43:19.376Z" }, + { url = "https://files.pythonhosted.org/packages/32/91/789132c6666288eaa20ae8066bb99eba1939362e8f1a534949a215246e97/numpy-2.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:49e792ec351315e16da54b543db06ca8a86985ab682602d90c60ef4ff4db2a9c", size = 16181909, upload-time = "2026-01-10T06:43:21.808Z" }, + { url = "https://files.pythonhosted.org/packages/cf/b8/090b8bd27b82a844bb22ff8fdf7935cb1980b48d6e439ae116f53cdc2143/numpy-2.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:79e9e06c4c2379db47f3f6fc7a8652e7498251789bf8ff5bd43bf478ef314ca2", size = 18284380, upload-time = "2026-01-10T06:43:23.957Z" }, + { url = "https://files.pythonhosted.org/packages/67/78/722b62bd31842ff029412271556a1a27a98f45359dea78b1548a3a9996aa/numpy-2.4.1-cp313-cp313-win32.whl", hash = "sha256:3d1a100e48cb266090a031397863ff8a30050ceefd798f686ff92c67a486753d", size = 5957089, upload-time = "2026-01-10T06:43:27.535Z" }, + { url = "https://files.pythonhosted.org/packages/da/a6/cf32198b0b6e18d4fbfa9a21a992a7fca535b9bb2b0cdd217d4a3445b5ca/numpy-2.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:92a0e65272fd60bfa0d9278e0484c2f52fe03b97aedc02b357f33fe752c52ffb", size = 12307230, upload-time = "2026-01-10T06:43:29.298Z" }, + { url = "https://files.pythonhosted.org/packages/44/6c/534d692bfb7d0afe30611320c5fb713659dcb5104d7cc182aff2aea092f5/numpy-2.4.1-cp313-cp313-win_arm64.whl", hash = "sha256:20d4649c773f66cc2fc36f663e091f57c3b7655f936a4c681b4250855d1da8f5", size = 10313125, upload-time = "2026-01-10T06:43:31.782Z" }, + { url = "https://files.pythonhosted.org/packages/da/a1/354583ac5c4caa566de6ddfbc42744409b515039e085fab6e0ff942e0df5/numpy-2.4.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:f93bc6892fe7b0663e5ffa83b61aab510aacffd58c16e012bb9352d489d90cb7", size = 12496156, upload-time = "2026-01-10T06:43:34.237Z" }, + { url = "https://files.pythonhosted.org/packages/51/b0/42807c6e8cce58c00127b1dc24d365305189991f2a7917aa694a109c8d7d/numpy-2.4.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:178de8f87948163d98a4c9ab5bee4ce6519ca918926ec8df195af582de28544d", size = 5324663, upload-time = "2026-01-10T06:43:36.211Z" }, + { url = "https://files.pythonhosted.org/packages/fe/55/7a621694010d92375ed82f312b2f28017694ed784775269115323e37f5e2/numpy-2.4.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:98b35775e03ab7f868908b524fc0a84d38932d8daf7b7e1c3c3a1b6c7a2c9f15", size = 6645224, upload-time = "2026-01-10T06:43:37.884Z" }, + { url = "https://files.pythonhosted.org/packages/50/96/9fa8635ed9d7c847d87e30c834f7109fac5e88549d79ef3324ab5c20919f/numpy-2.4.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:941c2a93313d030f219f3a71fd3d91a728b82979a5e8034eb2e60d394a2b83f9", size = 14462352, upload-time = "2026-01-10T06:43:39.479Z" }, + { url = "https://files.pythonhosted.org/packages/03/d1/8cf62d8bb2062da4fb82dd5d49e47c923f9c0738032f054e0a75342faba7/numpy-2.4.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:529050522e983e00a6c1c6b67411083630de8b57f65e853d7b03d9281b8694d2", size = 16407279, upload-time = "2026-01-10T06:43:41.93Z" }, + { url = "https://files.pythonhosted.org/packages/86/1c/95c86e17c6b0b31ce6ef219da00f71113b220bcb14938c8d9a05cee0ff53/numpy-2.4.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:2302dc0224c1cbc49bb94f7064f3f923a971bfae45c33870dcbff63a2a550505", size = 16248316, upload-time = "2026-01-10T06:43:44.121Z" }, + { url = "https://files.pythonhosted.org/packages/30/b4/e7f5ff8697274c9d0fa82398b6a372a27e5cef069b37df6355ccb1f1db1a/numpy-2.4.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:9171a42fcad32dcf3fa86f0a4faa5e9f8facefdb276f54b8b390d90447cff4e2", size = 18329884, upload-time = "2026-01-10T06:43:46.613Z" }, + { url = "https://files.pythonhosted.org/packages/37/a4/b073f3e9d77f9aec8debe8ca7f9f6a09e888ad1ba7488f0c3b36a94c03ac/numpy-2.4.1-cp313-cp313t-win32.whl", hash = "sha256:382ad67d99ef49024f11d1ce5dcb5ad8432446e4246a4b014418ba3a1175a1f4", size = 6081138, upload-time = "2026-01-10T06:43:48.854Z" }, + { url = "https://files.pythonhosted.org/packages/16/16/af42337b53844e67752a092481ab869c0523bc95c4e5c98e4dac4e9581ac/numpy-2.4.1-cp313-cp313t-win_amd64.whl", hash = "sha256:62fea415f83ad8fdb6c20840578e5fbaf5ddd65e0ec6c3c47eda0f69da172510", size = 12447478, upload-time = "2026-01-10T06:43:50.476Z" }, + { url = "https://files.pythonhosted.org/packages/6c/f8/fa85b2eac68ec631d0b631abc448552cb17d39afd17ec53dcbcc3537681a/numpy-2.4.1-cp313-cp313t-win_arm64.whl", hash = "sha256:a7870e8c5fc11aef57d6fea4b4085e537a3a60ad2cdd14322ed531fdca68d261", size = 10382981, upload-time = "2026-01-10T06:43:52.575Z" }, + { url = "https://files.pythonhosted.org/packages/1b/a7/ef08d25698e0e4b4efbad8d55251d20fe2a15f6d9aa7c9b30cd03c165e6f/numpy-2.4.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:3869ea1ee1a1edc16c29bbe3a2f2a4e515cc3a44d43903ad41e0cacdbaf733dc", size = 16652046, upload-time = "2026-01-10T06:43:54.797Z" }, + { url = "https://files.pythonhosted.org/packages/8f/39/e378b3e3ca13477e5ac70293ec027c438d1927f18637e396fe90b1addd72/numpy-2.4.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:e867df947d427cdd7a60e3e271729090b0f0df80f5f10ab7dd436f40811699c3", size = 12378858, upload-time = "2026-01-10T06:43:57.099Z" }, + { url = "https://files.pythonhosted.org/packages/c3/74/7ec6154f0006910ed1fdbb7591cf4432307033102b8a22041599935f8969/numpy-2.4.1-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:e3bd2cb07841166420d2fa7146c96ce00cb3410664cbc1a6be028e456c4ee220", size = 5207417, upload-time = "2026-01-10T06:43:59.037Z" }, + { url = "https://files.pythonhosted.org/packages/f7/b7/053ac11820d84e42f8feea5cb81cc4fcd1091499b45b1ed8c7415b1bf831/numpy-2.4.1-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:f0a90aba7d521e6954670550e561a4cb925713bd944445dbe9e729b71f6cabee", size = 6542643, upload-time = "2026-01-10T06:44:01.852Z" }, + { url = "https://files.pythonhosted.org/packages/c0/c4/2e7908915c0e32ca636b92e4e4a3bdec4cb1e7eb0f8aedf1ed3c68a0d8cd/numpy-2.4.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5d558123217a83b2d1ba316b986e9248a1ed1971ad495963d555ccd75dcb1556", size = 14418963, upload-time = "2026-01-10T06:44:04.047Z" }, + { url = "https://files.pythonhosted.org/packages/eb/c0/3ed5083d94e7ffd7c404e54619c088e11f2e1939a9544f5397f4adb1b8ba/numpy-2.4.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2f44de05659b67d20499cbc96d49f2650769afcb398b79b324bb6e297bfe3844", size = 16363811, upload-time = "2026-01-10T06:44:06.207Z" }, + { url = "https://files.pythonhosted.org/packages/0e/68/42b66f1852bf525050a67315a4fb94586ab7e9eaa541b1bef530fab0c5dd/numpy-2.4.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:69e7419c9012c4aaf695109564e3387f1259f001b4326dfa55907b098af082d3", size = 16197643, upload-time = "2026-01-10T06:44:08.33Z" }, + { url = "https://files.pythonhosted.org/packages/d2/40/e8714fc933d85f82c6bfc7b998a0649ad9769a32f3494ba86598aaf18a48/numpy-2.4.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2ffd257026eb1b34352e749d7cc1678b5eeec3e329ad8c9965a797e08ccba205", size = 18289601, upload-time = "2026-01-10T06:44:10.841Z" }, + { url = "https://files.pythonhosted.org/packages/80/9a/0d44b468cad50315127e884802351723daca7cf1c98d102929468c81d439/numpy-2.4.1-cp314-cp314-win32.whl", hash = "sha256:727c6c3275ddefa0dc078524a85e064c057b4f4e71ca5ca29a19163c607be745", size = 6005722, upload-time = "2026-01-10T06:44:13.332Z" }, + { url = "https://files.pythonhosted.org/packages/7e/bb/c6513edcce5a831810e2dddc0d3452ce84d208af92405a0c2e58fd8e7881/numpy-2.4.1-cp314-cp314-win_amd64.whl", hash = "sha256:7d5d7999df434a038d75a748275cd6c0094b0ecdb0837342b332a82defc4dc4d", size = 12438590, upload-time = "2026-01-10T06:44:15.006Z" }, + { url = "https://files.pythonhosted.org/packages/e9/da/a598d5cb260780cf4d255102deba35c1d072dc028c4547832f45dd3323a8/numpy-2.4.1-cp314-cp314-win_arm64.whl", hash = "sha256:ce9ce141a505053b3c7bce3216071f3bf5c182b8b28930f14cd24d43932cd2df", size = 10596180, upload-time = "2026-01-10T06:44:17.386Z" }, + { url = "https://files.pythonhosted.org/packages/de/bc/ea3f2c96fcb382311827231f911723aeff596364eb6e1b6d1d91128aa29b/numpy-2.4.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:4e53170557d37ae404bf8d542ca5b7c629d6efa1117dac6a83e394142ea0a43f", size = 12498774, upload-time = "2026-01-10T06:44:19.467Z" }, + { url = "https://files.pythonhosted.org/packages/aa/ab/ef9d939fe4a812648c7a712610b2ca6140b0853c5efea361301006c02ae5/numpy-2.4.1-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:a73044b752f5d34d4232f25f18160a1cc418ea4507f5f11e299d8ac36875f8a0", size = 5327274, upload-time = "2026-01-10T06:44:23.189Z" }, + { url = "https://files.pythonhosted.org/packages/bd/31/d381368e2a95c3b08b8cf7faac6004849e960f4a042d920337f71cef0cae/numpy-2.4.1-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:fb1461c99de4d040666ca0444057b06541e5642f800b71c56e6ea92d6a853a0c", size = 6648306, upload-time = "2026-01-10T06:44:25.012Z" }, + { url = "https://files.pythonhosted.org/packages/c8/e5/0989b44ade47430be6323d05c23207636d67d7362a1796ccbccac6773dd2/numpy-2.4.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:423797bdab2eeefbe608d7c1ec7b2b4fd3c58d51460f1ee26c7500a1d9c9ee93", size = 14464653, upload-time = "2026-01-10T06:44:26.706Z" }, + { url = "https://files.pythonhosted.org/packages/10/a7/cfbe475c35371cae1358e61f20c5f075badc18c4797ab4354140e1d283cf/numpy-2.4.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:52b5f61bdb323b566b528899cc7db2ba5d1015bda7ea811a8bcf3c89c331fa42", size = 16405144, upload-time = "2026-01-10T06:44:29.378Z" }, + { url = "https://files.pythonhosted.org/packages/f8/a3/0c63fe66b534888fa5177cc7cef061541064dbe2b4b60dcc60ffaf0d2157/numpy-2.4.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:42d7dd5fa36d16d52a84f821eb96031836fd405ee6955dd732f2023724d0aa01", size = 16247425, upload-time = "2026-01-10T06:44:31.721Z" }, + { url = "https://files.pythonhosted.org/packages/6b/2b/55d980cfa2c93bd40ff4c290bf824d792bd41d2fe3487b07707559071760/numpy-2.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:e7b6b5e28bbd47b7532698e5db2fe1db693d84b58c254e4389d99a27bb9b8f6b", size = 18330053, upload-time = "2026-01-10T06:44:34.617Z" }, + { url = "https://files.pythonhosted.org/packages/23/12/8b5fc6b9c487a09a7957188e0943c9ff08432c65e34567cabc1623b03a51/numpy-2.4.1-cp314-cp314t-win32.whl", hash = "sha256:5de60946f14ebe15e713a6f22850c2372fa72f4ff9a432ab44aa90edcadaa65a", size = 6152482, upload-time = "2026-01-10T06:44:36.798Z" }, + { url = "https://files.pythonhosted.org/packages/00/a5/9f8ca5856b8940492fc24fbe13c1bc34d65ddf4079097cf9e53164d094e1/numpy-2.4.1-cp314-cp314t-win_amd64.whl", hash = "sha256:8f085da926c0d491ffff3096f91078cc97ea67e7e6b65e490bc8dcda65663be2", size = 12627117, upload-time = "2026-01-10T06:44:38.828Z" }, + { url = "https://files.pythonhosted.org/packages/ad/0d/eca3d962f9eef265f01a8e0d20085c6dd1f443cbffc11b6dede81fd82356/numpy-2.4.1-cp314-cp314t-win_arm64.whl", hash = "sha256:6436cffb4f2bf26c974344439439c95e152c9a527013f26b3577be6c2ca64295", size = 10667121, upload-time = "2026-01-10T06:44:41.644Z" }, +] + +[[package]] +name = "oauthlib" +version = "3.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0b/5f/19930f824ffeb0ad4372da4812c50edbd1434f678c90c2733e1188edfc63/oauthlib-3.3.1.tar.gz", hash = "sha256:0f0f8aa759826a193cf66c12ea1af1637f87b9b4622d46e866952bb022e538c9", size = 185918, upload-time = "2025-06-19T22:48:08.269Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/be/9c/92789c596b8df838baa98fa71844d84283302f7604ed565dafe5a6b5041a/oauthlib-3.3.1-py3-none-any.whl", hash = "sha256:88119c938d2b8fb88561af5f6ee0eec8cc8d552b7bb1f712743136eb7523b7a1", size = 160065, upload-time = "2025-06-19T22:48:06.508Z" }, +] + +[[package]] +name = "onnxruntime" +version = "1.23.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "coloredlogs" }, + { name = "flatbuffers" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "protobuf" }, + { name = "sympy" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/1b/9e/f748cd64161213adeef83d0cb16cb8ace1e62fa501033acdd9f9341fff57/onnxruntime-1.23.2-cp312-cp312-macosx_13_0_arm64.whl", hash = "sha256:b8f029a6b98d3cf5be564d52802bb50a8489ab73409fa9db0bf583eabb7c2321", size = 17195929, upload-time = "2025-10-22T03:47:36.24Z" }, + { url = "https://files.pythonhosted.org/packages/91/9d/a81aafd899b900101988ead7fb14974c8a58695338ab6a0f3d6b0100f30b/onnxruntime-1.23.2-cp312-cp312-macosx_13_0_x86_64.whl", hash = "sha256:218295a8acae83905f6f1aed8cacb8e3eb3bd7513a13fe4ba3b2664a19fc4a6b", size = 19157705, upload-time = "2025-10-22T03:46:40.415Z" }, + { url = "https://files.pythonhosted.org/packages/3c/35/4e40f2fba272a6698d62be2cd21ddc3675edfc1a4b9ddefcc4648f115315/onnxruntime-1.23.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:76ff670550dc23e58ea9bc53b5149b99a44e63b34b524f7b8547469aaa0dcb8c", size = 15226915, upload-time = "2025-10-22T03:46:27.773Z" }, + { url = "https://files.pythonhosted.org/packages/ef/88/9cc25d2bafe6bc0d4d3c1db3ade98196d5b355c0b273e6a5dc09c5d5d0d5/onnxruntime-1.23.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f9b4ae77f8e3c9bee50c27bc1beede83f786fe1d52e99ac85aa8d65a01e9b77", size = 17382649, upload-time = "2025-10-22T03:47:02.782Z" }, + { url = "https://files.pythonhosted.org/packages/c0/b4/569d298f9fc4d286c11c45e85d9ffa9e877af12ace98af8cab52396e8f46/onnxruntime-1.23.2-cp312-cp312-win_amd64.whl", hash = "sha256:25de5214923ce941a3523739d34a520aac30f21e631de53bba9174dc9c004435", size = 13470528, upload-time = "2025-10-22T03:47:28.106Z" }, + { url = "https://files.pythonhosted.org/packages/3d/41/fba0cabccecefe4a1b5fc8020c44febb334637f133acefc7ec492029dd2c/onnxruntime-1.23.2-cp313-cp313-macosx_13_0_arm64.whl", hash = "sha256:2ff531ad8496281b4297f32b83b01cdd719617e2351ffe0dba5684fb283afa1f", size = 17196337, upload-time = "2025-10-22T03:46:35.168Z" }, + { url = "https://files.pythonhosted.org/packages/fe/f9/2d49ca491c6a986acce9f1d1d5fc2099108958cc1710c28e89a032c9cfe9/onnxruntime-1.23.2-cp313-cp313-macosx_13_0_x86_64.whl", hash = "sha256:162f4ca894ec3de1a6fd53589e511e06ecdc3ff646849b62a9da7489dee9ce95", size = 19157691, upload-time = "2025-10-22T03:46:43.518Z" }, + { url = "https://files.pythonhosted.org/packages/1c/a1/428ee29c6eaf09a6f6be56f836213f104618fb35ac6cc586ff0f477263eb/onnxruntime-1.23.2-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:45d127d6e1e9b99d1ebeae9bcd8f98617a812f53f46699eafeb976275744826b", size = 15226898, upload-time = "2025-10-22T03:46:30.039Z" }, + { url = "https://files.pythonhosted.org/packages/f2/2b/b57c8a2466a3126dbe0a792f56ad7290949b02f47b86216cd47d857e4b77/onnxruntime-1.23.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8bace4e0d46480fbeeb7bbe1ffe1f080e6663a42d1086ff95c1551f2d39e7872", size = 17382518, upload-time = "2025-10-22T03:47:05.407Z" }, + { url = "https://files.pythonhosted.org/packages/4a/93/aba75358133b3a941d736816dd392f687e7eab77215a6e429879080b76b6/onnxruntime-1.23.2-cp313-cp313-win_amd64.whl", hash = "sha256:1f9cc0a55349c584f083c1c076e611a7c35d5b867d5d6e6d6c823bf821978088", size = 13470276, upload-time = "2025-10-22T03:47:31.193Z" }, + { url = "https://files.pythonhosted.org/packages/7c/3d/6830fa61c69ca8e905f237001dbfc01689a4e4ab06147020a4518318881f/onnxruntime-1.23.2-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9d2385e774f46ac38f02b3a91a91e30263d41b2f1f4f26ae34805b2a9ddef466", size = 15229610, upload-time = "2025-10-22T03:46:32.239Z" }, + { url = "https://files.pythonhosted.org/packages/b6/ca/862b1e7a639460f0ca25fd5b6135fb42cf9deea86d398a92e44dfda2279d/onnxruntime-1.23.2-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e2b9233c4947907fd1818d0e581c049c41ccc39b2856cc942ff6d26317cee145", size = 17394184, upload-time = "2025-10-22T03:47:08.127Z" }, +] + +[[package]] +name = "openai" +version = "2.15.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "distro" }, + { name = "httpx" }, + { name = "jiter" }, + { name = "pydantic" }, + { name = "sniffio" }, + { name = "tqdm" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/94/f4/4690ecb5d70023ce6bfcfeabfe717020f654bde59a775058ec6ac4692463/openai-2.15.0.tar.gz", hash = "sha256:42eb8cbb407d84770633f31bf727d4ffb4138711c670565a41663d9439174fba", size = 627383, upload-time = "2026-01-09T22:10:08.603Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b5/df/c306f7375d42bafb379934c2df4c2fa3964656c8c782bac75ee10c102818/openai-2.15.0-py3-none-any.whl", hash = "sha256:6ae23b932cd7230f7244e52954daa6602716d6b9bf235401a107af731baea6c3", size = 1067879, upload-time = "2026-01-09T22:10:06.446Z" }, +] + +[[package]] +name = "openpyxl" +version = "3.1.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "et-xmlfile" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3d/f9/88d94a75de065ea32619465d2f77b29a0469500e99012523b91cc4141cd1/openpyxl-3.1.5.tar.gz", hash = "sha256:cf0e3cf56142039133628b5acffe8ef0c12bc902d2aadd3e0fe5878dc08d1050", size = 186464, upload-time = "2024-06-28T14:03:44.161Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c0/da/977ded879c29cbd04de313843e76868e6e13408a94ed6b987245dc7c8506/openpyxl-3.1.5-py2.py3-none-any.whl", hash = "sha256:5282c12b107bffeef825f4617dc029afaf41d0ea60823bbb665ef3079dc79de2", size = 250910, upload-time = "2024-06-28T14:03:41.161Z" }, +] + +[[package]] +name = "opentelemetry-api" +version = "1.39.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "importlib-metadata" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/97/b9/3161be15bb8e3ad01be8be5a968a9237c3027c5be504362ff800fca3e442/opentelemetry_api-1.39.1.tar.gz", hash = "sha256:fbde8c80e1b937a2c61f20347e91c0c18a1940cecf012d62e65a7caf08967c9c", size = 65767, upload-time = "2025-12-11T13:32:39.182Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cf/df/d3f1ddf4bb4cb50ed9b1139cc7b1c54c34a1e7ce8fd1b9a37c0d1551a6bd/opentelemetry_api-1.39.1-py3-none-any.whl", hash = "sha256:2edd8463432a7f8443edce90972169b195e7d6a05500cd29e6d13898187c9950", size = 66356, upload-time = "2025-12-11T13:32:17.304Z" }, +] + +[[package]] +name = "opentelemetry-exporter-otlp-proto-common" +version = "1.39.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "opentelemetry-proto" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e9/9d/22d241b66f7bbde88a3bfa6847a351d2c46b84de23e71222c6aae25c7050/opentelemetry_exporter_otlp_proto_common-1.39.1.tar.gz", hash = "sha256:763370d4737a59741c89a67b50f9e39271639ee4afc999dadfe768541c027464", size = 20409, upload-time = "2025-12-11T13:32:40.885Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8c/02/ffc3e143d89a27ac21fd557365b98bd0653b98de8a101151d5805b5d4c33/opentelemetry_exporter_otlp_proto_common-1.39.1-py3-none-any.whl", hash = "sha256:08f8a5862d64cc3435105686d0216c1365dc5701f86844a8cd56597d0c764fde", size = 18366, upload-time = "2025-12-11T13:32:20.2Z" }, +] + +[[package]] +name = "opentelemetry-exporter-otlp-proto-grpc" +version = "1.39.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "googleapis-common-protos" }, + { name = "grpcio" }, + { name = "opentelemetry-api" }, + { name = "opentelemetry-exporter-otlp-proto-common" }, + { name = "opentelemetry-proto" }, + { name = "opentelemetry-sdk" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/53/48/b329fed2c610c2c32c9366d9dc597202c9d1e58e631c137ba15248d8850f/opentelemetry_exporter_otlp_proto_grpc-1.39.1.tar.gz", hash = "sha256:772eb1c9287485d625e4dbe9c879898e5253fea111d9181140f51291b5fec3ad", size = 24650, upload-time = "2025-12-11T13:32:41.429Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/a3/cc9b66575bd6597b98b886a2067eea2693408d2d5f39dad9ab7fc264f5f3/opentelemetry_exporter_otlp_proto_grpc-1.39.1-py3-none-any.whl", hash = "sha256:fa1c136a05c7e9b4c09f739469cbdb927ea20b34088ab1d959a849b5cc589c18", size = 19766, upload-time = "2025-12-11T13:32:21.027Z" }, +] + +[[package]] +name = "opentelemetry-exporter-otlp-proto-http" +version = "1.39.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "googleapis-common-protos" }, + { name = "opentelemetry-api" }, + { name = "opentelemetry-exporter-otlp-proto-common" }, + { name = "opentelemetry-proto" }, + { name = "opentelemetry-sdk" }, + { name = "requests" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/80/04/2a08fa9c0214ae38880df01e8bfae12b067ec0793446578575e5080d6545/opentelemetry_exporter_otlp_proto_http-1.39.1.tar.gz", hash = "sha256:31bdab9745c709ce90a49a0624c2bd445d31a28ba34275951a6a362d16a0b9cb", size = 17288, upload-time = "2025-12-11T13:32:42.029Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/95/f1/b27d3e2e003cd9a3592c43d099d2ed8d0a947c15281bf8463a256db0b46c/opentelemetry_exporter_otlp_proto_http-1.39.1-py3-none-any.whl", hash = "sha256:d9f5207183dd752a412c4cd564ca8875ececba13be6e9c6c370ffb752fd59985", size = 19641, upload-time = "2025-12-11T13:32:22.248Z" }, +] + +[[package]] +name = "opentelemetry-proto" +version = "1.39.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "protobuf" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/49/1d/f25d76d8260c156c40c97c9ed4511ec0f9ce353f8108ca6e7561f82a06b2/opentelemetry_proto-1.39.1.tar.gz", hash = "sha256:6c8e05144fc0d3ed4d22c2289c6b126e03bcd0e6a7da0f16cedd2e1c2772e2c8", size = 46152, upload-time = "2025-12-11T13:32:48.681Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/95/b40c96a7b5203005a0b03d8ce8cd212ff23f1793d5ba289c87a097571b18/opentelemetry_proto-1.39.1-py3-none-any.whl", hash = "sha256:22cdc78efd3b3765d09e68bfbd010d4fc254c9818afd0b6b423387d9dee46007", size = 72535, upload-time = "2025-12-11T13:32:33.866Z" }, +] + +[[package]] +name = "opentelemetry-sdk" +version = "1.39.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "opentelemetry-api" }, + { name = "opentelemetry-semantic-conventions" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/eb/fb/c76080c9ba07e1e8235d24cdcc4d125ef7aa3edf23eb4e497c2e50889adc/opentelemetry_sdk-1.39.1.tar.gz", hash = "sha256:cf4d4563caf7bff906c9f7967e2be22d0d6b349b908be0d90fb21c8e9c995cc6", size = 171460, upload-time = "2025-12-11T13:32:49.369Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7c/98/e91cf858f203d86f4eccdf763dcf01cf03f1dae80c3750f7e635bfa206b6/opentelemetry_sdk-1.39.1-py3-none-any.whl", hash = "sha256:4d5482c478513ecb0a5d938dcc61394e647066e0cc2676bee9f3af3f3f45f01c", size = 132565, upload-time = "2025-12-11T13:32:35.069Z" }, +] + +[[package]] +name = "opentelemetry-semantic-conventions" +version = "0.60b1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "opentelemetry-api" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/91/df/553f93ed38bf22f4b999d9be9c185adb558982214f33eae539d3b5cd0858/opentelemetry_semantic_conventions-0.60b1.tar.gz", hash = "sha256:87c228b5a0669b748c76d76df6c364c369c28f1c465e50f661e39737e84bc953", size = 137935, upload-time = "2025-12-11T13:32:50.487Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7a/5e/5958555e09635d09b75de3c4f8b9cae7335ca545d77392ffe7331534c402/opentelemetry_semantic_conventions-0.60b1-py3-none-any.whl", hash = "sha256:9fa8c8b0c110da289809292b0591220d3a7b53c1526a23021e977d68597893fb", size = 219982, upload-time = "2025-12-11T13:32:36.955Z" }, +] + +[[package]] +name = "orjson" +version = "3.11.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/04/b8/333fdb27840f3bf04022d21b654a35f58e15407183aeb16f3b41aa053446/orjson-3.11.5.tar.gz", hash = "sha256:82393ab47b4fe44ffd0a7659fa9cfaacc717eb617c93cde83795f14af5c2e9d5", size = 5972347, upload-time = "2025-12-06T15:55:39.458Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/a4/8052a029029b096a78955eadd68ab594ce2197e24ec50e6b6d2ab3f4e33b/orjson-3.11.5-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:334e5b4bff9ad101237c2d799d9fd45737752929753bf4faf4b207335a416b7d", size = 245347, upload-time = "2025-12-06T15:54:22.061Z" }, + { url = "https://files.pythonhosted.org/packages/64/67/574a7732bd9d9d79ac620c8790b4cfe0717a3d5a6eb2b539e6e8995e24a0/orjson-3.11.5-cp312-cp312-macosx_15_0_arm64.whl", hash = "sha256:ff770589960a86eae279f5d8aa536196ebda8273a2a07db2a54e82b93bc86626", size = 129435, upload-time = "2025-12-06T15:54:23.615Z" }, + { url = "https://files.pythonhosted.org/packages/52/8d/544e77d7a29d90cf4d9eecd0ae801c688e7f3d1adfa2ebae5e1e94d38ab9/orjson-3.11.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed24250e55efbcb0b35bed7caaec8cedf858ab2f9f2201f17b8938c618c8ca6f", size = 132074, upload-time = "2025-12-06T15:54:24.694Z" }, + { url = "https://files.pythonhosted.org/packages/6e/57/b9f5b5b6fbff9c26f77e785baf56ae8460ef74acdb3eae4931c25b8f5ba9/orjson-3.11.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a66d7769e98a08a12a139049aac2f0ca3adae989817f8c43337455fbc7669b85", size = 130520, upload-time = "2025-12-06T15:54:26.185Z" }, + { url = "https://files.pythonhosted.org/packages/f6/6d/d34970bf9eb33f9ec7c979a262cad86076814859e54eb9a059a52f6dc13d/orjson-3.11.5-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:86cfc555bfd5794d24c6a1903e558b50644e5e68e6471d66502ce5cb5fdef3f9", size = 136209, upload-time = "2025-12-06T15:54:27.264Z" }, + { url = "https://files.pythonhosted.org/packages/e7/39/bc373b63cc0e117a105ea12e57280f83ae52fdee426890d57412432d63b3/orjson-3.11.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a230065027bc2a025e944f9d4714976a81e7ecfa940923283bca7bbc1f10f626", size = 139837, upload-time = "2025-12-06T15:54:28.75Z" }, + { url = "https://files.pythonhosted.org/packages/cb/aa/7c4818c8d7d324da220f4f1af55c343956003aa4d1ce1857bdc1d396ba69/orjson-3.11.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b29d36b60e606df01959c4b982729c8845c69d1963f88686608be9ced96dbfaa", size = 137307, upload-time = "2025-12-06T15:54:29.856Z" }, + { url = "https://files.pythonhosted.org/packages/46/bf/0993b5a056759ba65145effe3a79dd5a939d4a070eaa5da2ee3180fbb13f/orjson-3.11.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c74099c6b230d4261fdc3169d50efc09abf38ace1a42ea2f9994b1d79153d477", size = 139020, upload-time = "2025-12-06T15:54:31.024Z" }, + { url = "https://files.pythonhosted.org/packages/65/e8/83a6c95db3039e504eda60fc388f9faedbb4f6472f5aba7084e06552d9aa/orjson-3.11.5-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e697d06ad57dd0c7a737771d470eedc18e68dfdefcdd3b7de7f33dfda5b6212e", size = 141099, upload-time = "2025-12-06T15:54:32.196Z" }, + { url = "https://files.pythonhosted.org/packages/b9/b4/24fdc024abfce31c2f6812973b0a693688037ece5dc64b7a60c1ce69e2f2/orjson-3.11.5-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:e08ca8a6c851e95aaecc32bc44a5aa75d0ad26af8cdac7c77e4ed93acf3d5b69", size = 413540, upload-time = "2025-12-06T15:54:33.361Z" }, + { url = "https://files.pythonhosted.org/packages/d9/37/01c0ec95d55ed0c11e4cae3e10427e479bba40c77312b63e1f9665e0737d/orjson-3.11.5-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:e8b5f96c05fce7d0218df3fdfeb962d6b8cfff7e3e20264306b46dd8b217c0f3", size = 151530, upload-time = "2025-12-06T15:54:34.6Z" }, + { url = "https://files.pythonhosted.org/packages/f9/d4/f9ebc57182705bb4bbe63f5bbe14af43722a2533135e1d2fb7affa0c355d/orjson-3.11.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ddbfdb5099b3e6ba6d6ea818f61997bb66de14b411357d24c4612cf1ebad08ca", size = 141863, upload-time = "2025-12-06T15:54:35.801Z" }, + { url = "https://files.pythonhosted.org/packages/0d/04/02102b8d19fdcb009d72d622bb5781e8f3fae1646bf3e18c53d1bc8115b5/orjson-3.11.5-cp312-cp312-win32.whl", hash = "sha256:9172578c4eb09dbfcf1657d43198de59b6cef4054de385365060ed50c458ac98", size = 135255, upload-time = "2025-12-06T15:54:37.209Z" }, + { url = "https://files.pythonhosted.org/packages/d4/fb/f05646c43d5450492cb387de5549f6de90a71001682c17882d9f66476af5/orjson-3.11.5-cp312-cp312-win_amd64.whl", hash = "sha256:2b91126e7b470ff2e75746f6f6ee32b9ab67b7a93c8ba1d15d3a0caaf16ec875", size = 133252, upload-time = "2025-12-06T15:54:38.401Z" }, + { url = "https://files.pythonhosted.org/packages/dc/a6/7b8c0b26ba18c793533ac1cd145e131e46fcf43952aa94c109b5b913c1f0/orjson-3.11.5-cp312-cp312-win_arm64.whl", hash = "sha256:acbc5fac7e06777555b0722b8ad5f574739e99ffe99467ed63da98f97f9ca0fe", size = 126777, upload-time = "2025-12-06T15:54:39.515Z" }, + { url = "https://files.pythonhosted.org/packages/10/43/61a77040ce59f1569edf38f0b9faadc90c8cf7e9bec2e0df51d0132c6bb7/orjson-3.11.5-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:3b01799262081a4c47c035dd77c1301d40f568f77cc7ec1bb7db5d63b0a01629", size = 245271, upload-time = "2025-12-06T15:54:40.878Z" }, + { url = "https://files.pythonhosted.org/packages/55/f9/0f79be617388227866d50edd2fd320cb8fb94dc1501184bb1620981a0aba/orjson-3.11.5-cp313-cp313-macosx_15_0_arm64.whl", hash = "sha256:61de247948108484779f57a9f406e4c84d636fa5a59e411e6352484985e8a7c3", size = 129422, upload-time = "2025-12-06T15:54:42.403Z" }, + { url = "https://files.pythonhosted.org/packages/77/42/f1bf1549b432d4a78bfa95735b79b5dac75b65b5bb815bba86ad406ead0a/orjson-3.11.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:894aea2e63d4f24a7f04a1908307c738d0dce992e9249e744b8f4e8dd9197f39", size = 132060, upload-time = "2025-12-06T15:54:43.531Z" }, + { url = "https://files.pythonhosted.org/packages/25/49/825aa6b929f1a6ed244c78acd7b22c1481fd7e5fda047dc8bf4c1a807eb6/orjson-3.11.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ddc21521598dbe369d83d4d40338e23d4101dad21dae0e79fa20465dbace019f", size = 130391, upload-time = "2025-12-06T15:54:45.059Z" }, + { url = "https://files.pythonhosted.org/packages/42/ec/de55391858b49e16e1aa8f0bbbb7e5997b7345d8e984a2dec3746d13065b/orjson-3.11.5-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7cce16ae2f5fb2c53c3eafdd1706cb7b6530a67cc1c17abe8ec747f5cd7c0c51", size = 135964, upload-time = "2025-12-06T15:54:46.576Z" }, + { url = "https://files.pythonhosted.org/packages/1c/40/820bc63121d2d28818556a2d0a09384a9f0262407cf9fa305e091a8048df/orjson-3.11.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e46c762d9f0e1cfb4ccc8515de7f349abbc95b59cb5a2bd68df5973fdef913f8", size = 139817, upload-time = "2025-12-06T15:54:48.084Z" }, + { url = "https://files.pythonhosted.org/packages/09/c7/3a445ca9a84a0d59d26365fd8898ff52bdfcdcb825bcc6519830371d2364/orjson-3.11.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d7345c759276b798ccd6d77a87136029e71e66a8bbf2d2755cbdde1d82e78706", size = 137336, upload-time = "2025-12-06T15:54:49.426Z" }, + { url = "https://files.pythonhosted.org/packages/9a/b3/dc0d3771f2e5d1f13368f56b339c6782f955c6a20b50465a91acb79fe961/orjson-3.11.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75bc2e59e6a2ac1dd28901d07115abdebc4563b5b07dd612bf64260a201b1c7f", size = 138993, upload-time = "2025-12-06T15:54:50.939Z" }, + { url = "https://files.pythonhosted.org/packages/d1/a2/65267e959de6abe23444659b6e19c888f242bf7725ff927e2292776f6b89/orjson-3.11.5-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:54aae9b654554c3b4edd61896b978568c6daa16af96fa4681c9b5babd469f863", size = 141070, upload-time = "2025-12-06T15:54:52.414Z" }, + { url = "https://files.pythonhosted.org/packages/63/c9/da44a321b288727a322c6ab17e1754195708786a04f4f9d2220a5076a649/orjson-3.11.5-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:4bdd8d164a871c4ec773f9de0f6fe8769c2d6727879c37a9666ba4183b7f8228", size = 413505, upload-time = "2025-12-06T15:54:53.67Z" }, + { url = "https://files.pythonhosted.org/packages/7f/17/68dc14fa7000eefb3d4d6d7326a190c99bb65e319f02747ef3ebf2452f12/orjson-3.11.5-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:a261fef929bcf98a60713bf5e95ad067cea16ae345d9a35034e73c3990e927d2", size = 151342, upload-time = "2025-12-06T15:54:55.113Z" }, + { url = "https://files.pythonhosted.org/packages/c4/c5/ccee774b67225bed630a57478529fc026eda33d94fe4c0eac8fe58d4aa52/orjson-3.11.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c028a394c766693c5c9909dec76b24f37e6a1b91999e8d0c0d5feecbe93c3e05", size = 141823, upload-time = "2025-12-06T15:54:56.331Z" }, + { url = "https://files.pythonhosted.org/packages/67/80/5d00e4155d0cd7390ae2087130637671da713959bb558db9bac5e6f6b042/orjson-3.11.5-cp313-cp313-win32.whl", hash = "sha256:2cc79aaad1dfabe1bd2d50ee09814a1253164b3da4c00a78c458d82d04b3bdef", size = 135236, upload-time = "2025-12-06T15:54:57.507Z" }, + { url = "https://files.pythonhosted.org/packages/95/fe/792cc06a84808dbdc20ac6eab6811c53091b42f8e51ecebf14b540e9cfe4/orjson-3.11.5-cp313-cp313-win_amd64.whl", hash = "sha256:ff7877d376add4e16b274e35a3f58b7f37b362abf4aa31863dadacdd20e3a583", size = 133167, upload-time = "2025-12-06T15:54:58.71Z" }, + { url = "https://files.pythonhosted.org/packages/46/2c/d158bd8b50e3b1cfdcf406a7e463f6ffe3f0d167b99634717acdaf5e299f/orjson-3.11.5-cp313-cp313-win_arm64.whl", hash = "sha256:59ac72ea775c88b163ba8d21b0177628bd015c5dd060647bbab6e22da3aad287", size = 126712, upload-time = "2025-12-06T15:54:59.892Z" }, + { url = "https://files.pythonhosted.org/packages/c2/60/77d7b839e317ead7bb225d55bb50f7ea75f47afc489c81199befc5435b50/orjson-3.11.5-cp314-cp314-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:e446a8ea0a4c366ceafc7d97067bfd55292969143b57e3c846d87fc701e797a0", size = 245252, upload-time = "2025-12-06T15:55:01.127Z" }, + { url = "https://files.pythonhosted.org/packages/f1/aa/d4639163b400f8044cef0fb9aa51b0337be0da3a27187a20d1166e742370/orjson-3.11.5-cp314-cp314-macosx_15_0_arm64.whl", hash = "sha256:53deb5addae9c22bbe3739298f5f2196afa881ea75944e7720681c7080909a81", size = 129419, upload-time = "2025-12-06T15:55:02.723Z" }, + { url = "https://files.pythonhosted.org/packages/30/94/9eabf94f2e11c671111139edf5ec410d2f21e6feee717804f7e8872d883f/orjson-3.11.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82cd00d49d6063d2b8791da5d4f9d20539c5951f965e45ccf4e96d33505ce68f", size = 132050, upload-time = "2025-12-06T15:55:03.918Z" }, + { url = "https://files.pythonhosted.org/packages/3d/c8/ca10f5c5322f341ea9a9f1097e140be17a88f88d1cfdd29df522970d9744/orjson-3.11.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3fd15f9fc8c203aeceff4fda211157fad114dde66e92e24097b3647a08f4ee9e", size = 130370, upload-time = "2025-12-06T15:55:05.173Z" }, + { url = "https://files.pythonhosted.org/packages/25/d4/e96824476d361ee2edd5c6290ceb8d7edf88d81148a6ce172fc00278ca7f/orjson-3.11.5-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9df95000fbe6777bf9820ae82ab7578e8662051bb5f83d71a28992f539d2cda7", size = 136012, upload-time = "2025-12-06T15:55:06.402Z" }, + { url = "https://files.pythonhosted.org/packages/85/8e/9bc3423308c425c588903f2d103cfcfe2539e07a25d6522900645a6f257f/orjson-3.11.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:92a8d676748fca47ade5bc3da7430ed7767afe51b2f8100e3cd65e151c0eaceb", size = 139809, upload-time = "2025-12-06T15:55:07.656Z" }, + { url = "https://files.pythonhosted.org/packages/e9/3c/b404e94e0b02a232b957c54643ce68d0268dacb67ac33ffdee24008c8b27/orjson-3.11.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:aa0f513be38b40234c77975e68805506cad5d57b3dfd8fe3baa7f4f4051e15b4", size = 137332, upload-time = "2025-12-06T15:55:08.961Z" }, + { url = "https://files.pythonhosted.org/packages/51/30/cc2d69d5ce0ad9b84811cdf4a0cd5362ac27205a921da524ff42f26d65e0/orjson-3.11.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa1863e75b92891f553b7922ce4ee10ed06db061e104f2b7815de80cdcb135ad", size = 138983, upload-time = "2025-12-06T15:55:10.595Z" }, + { url = "https://files.pythonhosted.org/packages/0e/87/de3223944a3e297d4707d2fe3b1ffb71437550e165eaf0ca8bbe43ccbcb1/orjson-3.11.5-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:d4be86b58e9ea262617b8ca6251a2f0d63cc132a6da4b5fcc8e0a4128782c829", size = 141069, upload-time = "2025-12-06T15:55:11.832Z" }, + { url = "https://files.pythonhosted.org/packages/65/30/81d5087ae74be33bcae3ff2d80f5ccaa4a8fedc6d39bf65a427a95b8977f/orjson-3.11.5-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:b923c1c13fa02084eb38c9c065afd860a5cff58026813319a06949c3af5732ac", size = 413491, upload-time = "2025-12-06T15:55:13.314Z" }, + { url = "https://files.pythonhosted.org/packages/d0/6f/f6058c21e2fc1efaf918986dbc2da5cd38044f1a2d4b7b91ad17c4acf786/orjson-3.11.5-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:1b6bd351202b2cd987f35a13b5e16471cf4d952b42a73c391cc537974c43ef6d", size = 151375, upload-time = "2025-12-06T15:55:14.715Z" }, + { url = "https://files.pythonhosted.org/packages/54/92/c6921f17d45e110892899a7a563a925b2273d929959ce2ad89e2525b885b/orjson-3.11.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:bb150d529637d541e6af06bbe3d02f5498d628b7f98267ff87647584293ab439", size = 141850, upload-time = "2025-12-06T15:55:15.94Z" }, + { url = "https://files.pythonhosted.org/packages/88/86/cdecb0140a05e1a477b81f24739da93b25070ee01ce7f7242f44a6437594/orjson-3.11.5-cp314-cp314-win32.whl", hash = "sha256:9cc1e55c884921434a84a0c3dd2699eb9f92e7b441d7f53f3941079ec6ce7499", size = 135278, upload-time = "2025-12-06T15:55:17.202Z" }, + { url = "https://files.pythonhosted.org/packages/e4/97/b638d69b1e947d24f6109216997e38922d54dcdcdb1b11c18d7efd2d3c59/orjson-3.11.5-cp314-cp314-win_amd64.whl", hash = "sha256:a4f3cb2d874e03bc7767c8f88adaa1a9a05cecea3712649c3b58589ec7317310", size = 133170, upload-time = "2025-12-06T15:55:18.468Z" }, + { url = "https://files.pythonhosted.org/packages/8f/dd/f4fff4a6fe601b4f8f3ba3aa6da8ac33d17d124491a3b804c662a70e1636/orjson-3.11.5-cp314-cp314-win_arm64.whl", hash = "sha256:38b22f476c351f9a1c43e5b07d8b5a02eb24a6ab8e75f700f7d479d4568346a5", size = 126713, upload-time = "2025-12-06T15:55:19.738Z" }, +] + +[[package]] +name = "overrides" +version = "7.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/36/86/b585f53236dec60aba864e050778b25045f857e17f6e5ea0ae95fe80edd2/overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a", size = 22812, upload-time = "2024-01-27T21:01:33.423Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/ab/fc8290c6a4c722e5514d80f62b2dc4c4df1a68a41d1364e625c35990fcf3/overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49", size = 17832, upload-time = "2024-01-27T21:01:31.393Z" }, +] + +[[package]] +name = "packaging" +version = "26.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/65/ee/299d360cdc32edc7d2cf530f3accf79c4fca01e96ffc950d8a52213bd8e4/packaging-26.0.tar.gz", hash = "sha256:00243ae351a257117b6a241061796684b084ed1c516a08c48a3f7e147a9d80b4", size = 143416, upload-time = "2026-01-21T20:50:39.064Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/b9/c538f279a4e237a006a2c98387d081e9eb060d203d8ed34467cc0f0b9b53/packaging-26.0-py3-none-any.whl", hash = "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529", size = 74366, upload-time = "2026-01-21T20:50:37.788Z" }, +] + +[[package]] +name = "pandas" +version = "2.3.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "python-dateutil" }, + { name = "pytz" }, + { name = "tzdata" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/33/01/d40b85317f86cf08d853a4f495195c73815fdf205eef3993821720274518/pandas-2.3.3.tar.gz", hash = "sha256:e05e1af93b977f7eafa636d043f9f94c7ee3ac81af99c13508215942e64c993b", size = 4495223, upload-time = "2025-09-29T23:34:51.853Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9c/fb/231d89e8637c808b997d172b18e9d4a4bc7bf31296196c260526055d1ea0/pandas-2.3.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:6d21f6d74eb1725c2efaa71a2bfc661a0689579b58e9c0ca58a739ff0b002b53", size = 11597846, upload-time = "2025-09-29T23:19:48.856Z" }, + { url = "https://files.pythonhosted.org/packages/5c/bd/bf8064d9cfa214294356c2d6702b716d3cf3bb24be59287a6a21e24cae6b/pandas-2.3.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3fd2f887589c7aa868e02632612ba39acb0b8948faf5cc58f0850e165bd46f35", size = 10729618, upload-time = "2025-09-29T23:39:08.659Z" }, + { url = "https://files.pythonhosted.org/packages/57/56/cf2dbe1a3f5271370669475ead12ce77c61726ffd19a35546e31aa8edf4e/pandas-2.3.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ecaf1e12bdc03c86ad4a7ea848d66c685cb6851d807a26aa245ca3d2017a1908", size = 11737212, upload-time = "2025-09-29T23:19:59.765Z" }, + { url = "https://files.pythonhosted.org/packages/e5/63/cd7d615331b328e287d8233ba9fdf191a9c2d11b6af0c7a59cfcec23de68/pandas-2.3.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b3d11d2fda7eb164ef27ffc14b4fcab16a80e1ce67e9f57e19ec0afaf715ba89", size = 12362693, upload-time = "2025-09-29T23:20:14.098Z" }, + { url = "https://files.pythonhosted.org/packages/a6/de/8b1895b107277d52f2b42d3a6806e69cfef0d5cf1d0ba343470b9d8e0a04/pandas-2.3.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a68e15f780eddf2b07d242e17a04aa187a7ee12b40b930bfdd78070556550e98", size = 12771002, upload-time = "2025-09-29T23:20:26.76Z" }, + { url = "https://files.pythonhosted.org/packages/87/21/84072af3187a677c5893b170ba2c8fbe450a6ff911234916da889b698220/pandas-2.3.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:371a4ab48e950033bcf52b6527eccb564f52dc826c02afd9a1bc0ab731bba084", size = 13450971, upload-time = "2025-09-29T23:20:41.344Z" }, + { url = "https://files.pythonhosted.org/packages/86/41/585a168330ff063014880a80d744219dbf1dd7a1c706e75ab3425a987384/pandas-2.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:a16dcec078a01eeef8ee61bf64074b4e524a2a3f4b3be9326420cabe59c4778b", size = 10992722, upload-time = "2025-09-29T23:20:54.139Z" }, + { url = "https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:56851a737e3470de7fa88e6131f41281ed440d29a9268dcbf0002da5ac366713", size = 11544671, upload-time = "2025-09-29T23:21:05.024Z" }, + { url = "https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:bdcd9d1167f4885211e401b3036c0c8d9e274eee67ea8d0758a256d60704cfe8", size = 10680807, upload-time = "2025-09-29T23:21:15.979Z" }, + { url = "https://files.pythonhosted.org/packages/16/87/9472cf4a487d848476865321de18cc8c920b8cab98453ab79dbbc98db63a/pandas-2.3.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e32e7cc9af0f1cc15548288a51a3b681cc2a219faa838e995f7dc53dbab1062d", size = 11709872, upload-time = "2025-09-29T23:21:27.165Z" }, + { url = "https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:318d77e0e42a628c04dc56bcef4b40de67918f7041c2b061af1da41dcff670ac", size = 12306371, upload-time = "2025-09-29T23:21:40.532Z" }, + { url = "https://files.pythonhosted.org/packages/33/81/a3afc88fca4aa925804a27d2676d22dcd2031c2ebe08aabd0ae55b9ff282/pandas-2.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4e0a175408804d566144e170d0476b15d78458795bb18f1304fb94160cabf40c", size = 12765333, upload-time = "2025-09-29T23:21:55.77Z" }, + { url = "https://files.pythonhosted.org/packages/8d/0f/b4d4ae743a83742f1153464cf1a8ecfafc3ac59722a0b5c8602310cb7158/pandas-2.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:93c2d9ab0fc11822b5eece72ec9587e172f63cff87c00b062f6e37448ced4493", size = 13418120, upload-time = "2025-09-29T23:22:10.109Z" }, + { url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee", size = 10993991, upload-time = "2025-09-29T23:25:04.889Z" }, + { url = "https://files.pythonhosted.org/packages/f9/ca/3f8d4f49740799189e1395812f3bf23b5e8fc7c190827d55a610da72ce55/pandas-2.3.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:75ea25f9529fdec2d2e93a42c523962261e567d250b0013b16210e1d40d7c2e5", size = 12048227, upload-time = "2025-09-29T23:22:24.343Z" }, + { url = "https://files.pythonhosted.org/packages/0e/5a/f43efec3e8c0cc92c4663ccad372dbdff72b60bdb56b2749f04aa1d07d7e/pandas-2.3.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:74ecdf1d301e812db96a465a525952f4dde225fdb6d8e5a521d47e1f42041e21", size = 11411056, upload-time = "2025-09-29T23:22:37.762Z" }, + { url = "https://files.pythonhosted.org/packages/46/b1/85331edfc591208c9d1a63a06baa67b21d332e63b7a591a5ba42a10bb507/pandas-2.3.3-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6435cb949cb34ec11cc9860246ccb2fdc9ecd742c12d3304989017d53f039a78", size = 11645189, upload-time = "2025-09-29T23:22:51.688Z" }, + { url = "https://files.pythonhosted.org/packages/44/23/78d645adc35d94d1ac4f2a3c4112ab6f5b8999f4898b8cdf01252f8df4a9/pandas-2.3.3-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:900f47d8f20860de523a1ac881c4c36d65efcb2eb850e6948140fa781736e110", size = 12121912, upload-time = "2025-09-29T23:23:05.042Z" }, + { url = "https://files.pythonhosted.org/packages/53/da/d10013df5e6aaef6b425aa0c32e1fc1f3e431e4bcabd420517dceadce354/pandas-2.3.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a45c765238e2ed7d7c608fc5bc4a6f88b642f2f01e70c0c23d2224dd21829d86", size = 12712160, upload-time = "2025-09-29T23:23:28.57Z" }, + { url = "https://files.pythonhosted.org/packages/bd/17/e756653095a083d8a37cbd816cb87148debcfcd920129b25f99dd8d04271/pandas-2.3.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c4fc4c21971a1a9f4bdb4c73978c7f7256caa3e62b323f70d6cb80db583350bc", size = 13199233, upload-time = "2025-09-29T23:24:24.876Z" }, + { url = "https://files.pythonhosted.org/packages/04/fd/74903979833db8390b73b3a8a7d30d146d710bd32703724dd9083950386f/pandas-2.3.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:ee15f284898e7b246df8087fc82b87b01686f98ee67d85a17b7ab44143a3a9a0", size = 11540635, upload-time = "2025-09-29T23:25:52.486Z" }, + { url = "https://files.pythonhosted.org/packages/21/00/266d6b357ad5e6d3ad55093a7e8efc7dd245f5a842b584db9f30b0f0a287/pandas-2.3.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1611aedd912e1ff81ff41c745822980c49ce4a7907537be8692c8dbc31924593", size = 10759079, upload-time = "2025-09-29T23:26:33.204Z" }, + { url = "https://files.pythonhosted.org/packages/ca/05/d01ef80a7a3a12b2f8bbf16daba1e17c98a2f039cbc8e2f77a2c5a63d382/pandas-2.3.3-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6d2cefc361461662ac48810cb14365a365ce864afe85ef1f447ff5a1e99ea81c", size = 11814049, upload-time = "2025-09-29T23:27:15.384Z" }, + { url = "https://files.pythonhosted.org/packages/15/b2/0e62f78c0c5ba7e3d2c5945a82456f4fac76c480940f805e0b97fcbc2f65/pandas-2.3.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ee67acbbf05014ea6c763beb097e03cd629961c8a632075eeb34247120abcb4b", size = 12332638, upload-time = "2025-09-29T23:27:51.625Z" }, + { url = "https://files.pythonhosted.org/packages/c5/33/dd70400631b62b9b29c3c93d2feee1d0964dc2bae2e5ad7a6c73a7f25325/pandas-2.3.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c46467899aaa4da076d5abc11084634e2d197e9460643dd455ac3db5856b24d6", size = 12886834, upload-time = "2025-09-29T23:28:21.289Z" }, + { url = "https://files.pythonhosted.org/packages/d3/18/b5d48f55821228d0d2692b34fd5034bb185e854bdb592e9c640f6290e012/pandas-2.3.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6253c72c6a1d990a410bc7de641d34053364ef8bcd3126f7e7450125887dffe3", size = 13409925, upload-time = "2025-09-29T23:28:58.261Z" }, + { url = "https://files.pythonhosted.org/packages/a6/3d/124ac75fcd0ecc09b8fdccb0246ef65e35b012030defb0e0eba2cbbbe948/pandas-2.3.3-cp314-cp314-win_amd64.whl", hash = "sha256:1b07204a219b3b7350abaae088f451860223a52cfb8a6c53358e7948735158e5", size = 11109071, upload-time = "2025-09-29T23:32:27.484Z" }, + { url = "https://files.pythonhosted.org/packages/89/9c/0e21c895c38a157e0faa1fb64587a9226d6dd46452cac4532d80c3c4a244/pandas-2.3.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2462b1a365b6109d275250baaae7b760fd25c726aaca0054649286bcfbb3e8ec", size = 12048504, upload-time = "2025-09-29T23:29:31.47Z" }, + { url = "https://files.pythonhosted.org/packages/d7/82/b69a1c95df796858777b68fbe6a81d37443a33319761d7c652ce77797475/pandas-2.3.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:0242fe9a49aa8b4d78a4fa03acb397a58833ef6199e9aa40a95f027bb3a1b6e7", size = 11410702, upload-time = "2025-09-29T23:29:54.591Z" }, + { url = "https://files.pythonhosted.org/packages/f9/88/702bde3ba0a94b8c73a0181e05144b10f13f29ebfc2150c3a79062a8195d/pandas-2.3.3-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a21d830e78df0a515db2b3d2f5570610f5e6bd2e27749770e8bb7b524b89b450", size = 11634535, upload-time = "2025-09-29T23:30:21.003Z" }, + { url = "https://files.pythonhosted.org/packages/a4/1e/1bac1a839d12e6a82ec6cb40cda2edde64a2013a66963293696bbf31fbbb/pandas-2.3.3-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2e3ebdb170b5ef78f19bfb71b0dc5dc58775032361fa188e814959b74d726dd5", size = 12121582, upload-time = "2025-09-29T23:30:43.391Z" }, + { url = "https://files.pythonhosted.org/packages/44/91/483de934193e12a3b1d6ae7c8645d083ff88dec75f46e827562f1e4b4da6/pandas-2.3.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:d051c0e065b94b7a3cea50eb1ec32e912cd96dba41647eb24104b6c6c14c5788", size = 12699963, upload-time = "2025-09-29T23:31:10.009Z" }, + { url = "https://files.pythonhosted.org/packages/70/44/5191d2e4026f86a2a109053e194d3ba7a31a2d10a9c2348368c63ed4e85a/pandas-2.3.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:3869faf4bd07b3b66a9f462417d0ca3a9df29a9f6abd5d0d0dbab15dac7abe87", size = 13202175, upload-time = "2025-09-29T23:31:59.173Z" }, +] + +[[package]] +name = "pdfminer-six" +version = "20251230" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "charset-normalizer" }, + { name = "cryptography" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/46/9a/d79d8fa6d47a0338846bb558b39b9963b8eb2dfedec61867c138c1b17eeb/pdfminer_six-20251230.tar.gz", hash = "sha256:e8f68a14c57e00c2d7276d26519ea64be1b48f91db1cdc776faa80528ca06c1e", size = 8511285, upload-time = "2025-12-30T15:49:13.104Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/65/d7/b288ea32deb752a09aab73c75e1e7572ab2a2b56c3124a5d1eb24c62ceb3/pdfminer_six-20251230-py3-none-any.whl", hash = "sha256:9ff2e3466a7dfc6de6fd779478850b6b7c2d9e9405aa2a5869376a822771f485", size = 6591909, upload-time = "2025-12-30T15:49:10.76Z" }, +] + +[[package]] +name = "pdfplumber" +version = "0.11.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pdfminer-six" }, + { name = "pillow" }, + { name = "pypdfium2" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/38/37/9ca3519e92a8434eb93be570b131476cc0a4e840bb39c62ddb7813a39d53/pdfplumber-0.11.9.tar.gz", hash = "sha256:481224b678b2bbdbf376e2c39bf914144eef7c3d301b4a28eebf0f7f6109d6dc", size = 102768, upload-time = "2026-01-05T08:10:29.072Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8b/c8/cdbc975f5b634e249cfa6597e37c50f3078412474f21c015e508bfbfe3c3/pdfplumber-0.11.9-py3-none-any.whl", hash = "sha256:33ec5580959ba524e9100138746e090879504c42955df1b8a997604dd326c443", size = 60045, upload-time = "2026-01-05T08:10:27.512Z" }, +] + +[[package]] +name = "pillow" +version = "12.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d0/02/d52c733a2452ef1ffcc123b68e6606d07276b0e358db70eabad7e40042b7/pillow-12.1.0.tar.gz", hash = "sha256:5c5ae0a06e9ea030ab786b0251b32c7e4ce10e58d983c0d5c56029455180b5b9", size = 46977283, upload-time = "2026-01-02T09:13:29.892Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/20/31/dc53fe21a2f2996e1b7d92bf671cdb157079385183ef7c1ae08b485db510/pillow-12.1.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:a332ac4ccb84b6dde65dbace8431f3af08874bf9770719d32a635c4ef411b18b", size = 5262642, upload-time = "2026-01-02T09:11:10.138Z" }, + { url = "https://files.pythonhosted.org/packages/ab/c1/10e45ac9cc79419cedf5121b42dcca5a50ad2b601fa080f58c22fb27626e/pillow-12.1.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:907bfa8a9cb790748a9aa4513e37c88c59660da3bcfffbd24a7d9e6abf224551", size = 4657464, upload-time = "2026-01-02T09:11:12.319Z" }, + { url = "https://files.pythonhosted.org/packages/ad/26/7b82c0ab7ef40ebede7a97c72d473bda5950f609f8e0c77b04af574a0ddb/pillow-12.1.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:efdc140e7b63b8f739d09a99033aa430accce485ff78e6d311973a67b6bf3208", size = 6234878, upload-time = "2026-01-02T09:11:14.096Z" }, + { url = "https://files.pythonhosted.org/packages/76/25/27abc9792615b5e886ca9411ba6637b675f1b77af3104710ac7353fe5605/pillow-12.1.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:bef9768cab184e7ae6e559c032e95ba8d07b3023c289f79a2bd36e8bf85605a5", size = 8044868, upload-time = "2026-01-02T09:11:15.903Z" }, + { url = "https://files.pythonhosted.org/packages/0a/ea/f200a4c36d836100e7bc738fc48cd963d3ba6372ebc8298a889e0cfc3359/pillow-12.1.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:742aea052cf5ab5034a53c3846165bc3ce88d7c38e954120db0ab867ca242661", size = 6349468, upload-time = "2026-01-02T09:11:17.631Z" }, + { url = "https://files.pythonhosted.org/packages/11/8f/48d0b77ab2200374c66d344459b8958c86693be99526450e7aee714e03e4/pillow-12.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a6dfc2af5b082b635af6e08e0d1f9f1c4e04d17d4e2ca0ef96131e85eda6eb17", size = 7041518, upload-time = "2026-01-02T09:11:19.389Z" }, + { url = "https://files.pythonhosted.org/packages/1d/23/c281182eb986b5d31f0a76d2a2c8cd41722d6fb8ed07521e802f9bba52de/pillow-12.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:609e89d9f90b581c8d16358c9087df76024cf058fa693dd3e1e1620823f39670", size = 6462829, upload-time = "2026-01-02T09:11:21.28Z" }, + { url = "https://files.pythonhosted.org/packages/25/ef/7018273e0faac099d7b00982abdcc39142ae6f3bd9ceb06de09779c4a9d6/pillow-12.1.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:43b4899cfd091a9693a1278c4982f3e50f7fb7cff5153b05174b4afc9593b616", size = 7166756, upload-time = "2026-01-02T09:11:23.559Z" }, + { url = "https://files.pythonhosted.org/packages/8f/c8/993d4b7ab2e341fe02ceef9576afcf5830cdec640be2ac5bee1820d693d4/pillow-12.1.0-cp312-cp312-win32.whl", hash = "sha256:aa0c9cc0b82b14766a99fbe6084409972266e82f459821cd26997a488a7261a7", size = 6328770, upload-time = "2026-01-02T09:11:25.661Z" }, + { url = "https://files.pythonhosted.org/packages/a7/87/90b358775a3f02765d87655237229ba64a997b87efa8ccaca7dd3e36e7a7/pillow-12.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:d70534cea9e7966169ad29a903b99fc507e932069a881d0965a1a84bb57f6c6d", size = 7033406, upload-time = "2026-01-02T09:11:27.474Z" }, + { url = "https://files.pythonhosted.org/packages/5d/cf/881b457eccacac9e5b2ddd97d5071fb6d668307c57cbf4e3b5278e06e536/pillow-12.1.0-cp312-cp312-win_arm64.whl", hash = "sha256:65b80c1ee7e14a87d6a068dd3b0aea268ffcabfe0498d38661b00c5b4b22e74c", size = 2452612, upload-time = "2026-01-02T09:11:29.309Z" }, + { url = "https://files.pythonhosted.org/packages/dd/c7/2530a4aa28248623e9d7f27316b42e27c32ec410f695929696f2e0e4a778/pillow-12.1.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:7b5dd7cbae20285cdb597b10eb5a2c13aa9de6cde9bb64a3c1317427b1db1ae1", size = 4062543, upload-time = "2026-01-02T09:11:31.566Z" }, + { url = "https://files.pythonhosted.org/packages/8f/1f/40b8eae823dc1519b87d53c30ed9ef085506b05281d313031755c1705f73/pillow-12.1.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:29a4cef9cb672363926f0470afc516dbf7305a14d8c54f7abbb5c199cd8f8179", size = 4138373, upload-time = "2026-01-02T09:11:33.367Z" }, + { url = "https://files.pythonhosted.org/packages/d4/77/6fa60634cf06e52139fd0e89e5bbf055e8166c691c42fb162818b7fda31d/pillow-12.1.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:681088909d7e8fa9e31b9799aaa59ba5234c58e5e4f1951b4c4d1082a2e980e0", size = 3601241, upload-time = "2026-01-02T09:11:35.011Z" }, + { url = "https://files.pythonhosted.org/packages/4f/bf/28ab865de622e14b747f0cd7877510848252d950e43002e224fb1c9ababf/pillow-12.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:983976c2ab753166dc66d36af6e8ec15bb511e4a25856e2227e5f7e00a160587", size = 5262410, upload-time = "2026-01-02T09:11:36.682Z" }, + { url = "https://files.pythonhosted.org/packages/1c/34/583420a1b55e715937a85bd48c5c0991598247a1fd2eb5423188e765ea02/pillow-12.1.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:db44d5c160a90df2d24a24760bbd37607d53da0b34fb546c4c232af7192298ac", size = 4657312, upload-time = "2026-01-02T09:11:38.535Z" }, + { url = "https://files.pythonhosted.org/packages/1d/fd/f5a0896839762885b3376ff04878f86ab2b097c2f9a9cdccf4eda8ba8dc0/pillow-12.1.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6b7a9d1db5dad90e2991645874f708e87d9a3c370c243c2d7684d28f7e133e6b", size = 6232605, upload-time = "2026-01-02T09:11:40.602Z" }, + { url = "https://files.pythonhosted.org/packages/98/aa/938a09d127ac1e70e6ed467bd03834350b33ef646b31edb7452d5de43792/pillow-12.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6258f3260986990ba2fa8a874f8b6e808cf5abb51a94015ca3dc3c68aa4f30ea", size = 8041617, upload-time = "2026-01-02T09:11:42.721Z" }, + { url = "https://files.pythonhosted.org/packages/17/e8/538b24cb426ac0186e03f80f78bc8dc7246c667f58b540bdd57c71c9f79d/pillow-12.1.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e115c15e3bc727b1ca3e641a909f77f8ca72a64fff150f666fcc85e57701c26c", size = 6346509, upload-time = "2026-01-02T09:11:44.955Z" }, + { url = "https://files.pythonhosted.org/packages/01/9a/632e58ec89a32738cabfd9ec418f0e9898a2b4719afc581f07c04a05e3c9/pillow-12.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6741e6f3074a35e47c77b23a4e4f2d90db3ed905cb1c5e6e0d49bff2045632bc", size = 7038117, upload-time = "2026-01-02T09:11:46.736Z" }, + { url = "https://files.pythonhosted.org/packages/c7/a2/d40308cf86eada842ca1f3ffa45d0ca0df7e4ab33c83f81e73f5eaed136d/pillow-12.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:935b9d1aed48fcfb3f838caac506f38e29621b44ccc4f8a64d575cb1b2a88644", size = 6460151, upload-time = "2026-01-02T09:11:48.625Z" }, + { url = "https://files.pythonhosted.org/packages/f1/88/f5b058ad6453a085c5266660a1417bdad590199da1b32fb4efcff9d33b05/pillow-12.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5fee4c04aad8932da9f8f710af2c1a15a83582cfb884152a9caa79d4efcdbf9c", size = 7164534, upload-time = "2026-01-02T09:11:50.445Z" }, + { url = "https://files.pythonhosted.org/packages/19/ce/c17334caea1db789163b5d855a5735e47995b0b5dc8745e9a3605d5f24c0/pillow-12.1.0-cp313-cp313-win32.whl", hash = "sha256:a786bf667724d84aa29b5db1c61b7bfdde380202aaca12c3461afd6b71743171", size = 6332551, upload-time = "2026-01-02T09:11:52.234Z" }, + { url = "https://files.pythonhosted.org/packages/e5/07/74a9d941fa45c90a0d9465098fe1ec85de3e2afbdc15cc4766622d516056/pillow-12.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:461f9dfdafa394c59cd6d818bdfdbab4028b83b02caadaff0ffd433faf4c9a7a", size = 7040087, upload-time = "2026-01-02T09:11:54.822Z" }, + { url = "https://files.pythonhosted.org/packages/88/09/c99950c075a0e9053d8e880595926302575bc742b1b47fe1bbcc8d388d50/pillow-12.1.0-cp313-cp313-win_arm64.whl", hash = "sha256:9212d6b86917a2300669511ed094a9406888362e085f2431a7da985a6b124f45", size = 2452470, upload-time = "2026-01-02T09:11:56.522Z" }, + { url = "https://files.pythonhosted.org/packages/b5/ba/970b7d85ba01f348dee4d65412476321d40ee04dcb51cd3735b9dc94eb58/pillow-12.1.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:00162e9ca6d22b7c3ee8e61faa3c3253cd19b6a37f126cad04f2f88b306f557d", size = 5264816, upload-time = "2026-01-02T09:11:58.227Z" }, + { url = "https://files.pythonhosted.org/packages/10/60/650f2fb55fdba7a510d836202aa52f0baac633e50ab1cf18415d332188fb/pillow-12.1.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7d6daa89a00b58c37cb1747ec9fb7ac3bc5ffd5949f5888657dfddde6d1312e0", size = 4660472, upload-time = "2026-01-02T09:12:00.798Z" }, + { url = "https://files.pythonhosted.org/packages/2b/c0/5273a99478956a099d533c4f46cbaa19fd69d606624f4334b85e50987a08/pillow-12.1.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e2479c7f02f9d505682dc47df8c0ea1fc5e264c4d1629a5d63fe3e2334b89554", size = 6268974, upload-time = "2026-01-02T09:12:02.572Z" }, + { url = "https://files.pythonhosted.org/packages/b4/26/0bf714bc2e73d5267887d47931d53c4ceeceea6978148ed2ab2a4e6463c4/pillow-12.1.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f188d580bd870cda1e15183790d1cc2fa78f666e76077d103edf048eed9c356e", size = 8073070, upload-time = "2026-01-02T09:12:04.75Z" }, + { url = "https://files.pythonhosted.org/packages/43/cf/1ea826200de111a9d65724c54f927f3111dc5ae297f294b370a670c17786/pillow-12.1.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0fde7ec5538ab5095cc02df38ee99b0443ff0e1c847a045554cf5f9af1f4aa82", size = 6380176, upload-time = "2026-01-02T09:12:06.626Z" }, + { url = "https://files.pythonhosted.org/packages/03/e0/7938dd2b2013373fd85d96e0f38d62b7a5a262af21ac274250c7ca7847c9/pillow-12.1.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0ed07dca4a8464bada6139ab38f5382f83e5f111698caf3191cb8dbf27d908b4", size = 7067061, upload-time = "2026-01-02T09:12:08.624Z" }, + { url = "https://files.pythonhosted.org/packages/86/ad/a2aa97d37272a929a98437a8c0ac37b3cf012f4f8721e1bd5154699b2518/pillow-12.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:f45bd71d1fa5e5749587613037b172e0b3b23159d1c00ef2fc920da6f470e6f0", size = 6491824, upload-time = "2026-01-02T09:12:10.488Z" }, + { url = "https://files.pythonhosted.org/packages/a4/44/80e46611b288d51b115826f136fb3465653c28f491068a72d3da49b54cd4/pillow-12.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:277518bf4fe74aa91489e1b20577473b19ee70fb97c374aa50830b279f25841b", size = 7190911, upload-time = "2026-01-02T09:12:12.772Z" }, + { url = "https://files.pythonhosted.org/packages/86/77/eacc62356b4cf81abe99ff9dbc7402750044aed02cfd6a503f7c6fc11f3e/pillow-12.1.0-cp313-cp313t-win32.whl", hash = "sha256:7315f9137087c4e0ee73a761b163fc9aa3b19f5f606a7fc08d83fd3e4379af65", size = 6336445, upload-time = "2026-01-02T09:12:14.775Z" }, + { url = "https://files.pythonhosted.org/packages/e7/3c/57d81d0b74d218706dafccb87a87ea44262c43eef98eb3b164fd000e0491/pillow-12.1.0-cp313-cp313t-win_amd64.whl", hash = "sha256:0ddedfaa8b5f0b4ffbc2fa87b556dc59f6bb4ecb14a53b33f9189713ae8053c0", size = 7045354, upload-time = "2026-01-02T09:12:16.599Z" }, + { url = "https://files.pythonhosted.org/packages/ac/82/8b9b97bba2e3576a340f93b044a3a3a09841170ab4c1eb0d5c93469fd32f/pillow-12.1.0-cp313-cp313t-win_arm64.whl", hash = "sha256:80941e6d573197a0c28f394753de529bb436b1ca990ed6e765cf42426abc39f8", size = 2454547, upload-time = "2026-01-02T09:12:18.704Z" }, + { url = "https://files.pythonhosted.org/packages/8c/87/bdf971d8bbcf80a348cc3bacfcb239f5882100fe80534b0ce67a784181d8/pillow-12.1.0-cp314-cp314-ios_13_0_arm64_iphoneos.whl", hash = "sha256:5cb7bc1966d031aec37ddb9dcf15c2da5b2e9f7cc3ca7c54473a20a927e1eb91", size = 4062533, upload-time = "2026-01-02T09:12:20.791Z" }, + { url = "https://files.pythonhosted.org/packages/ff/4f/5eb37a681c68d605eb7034c004875c81f86ec9ef51f5be4a63eadd58859a/pillow-12.1.0-cp314-cp314-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:97e9993d5ed946aba26baf9c1e8cf18adbab584b99f452ee72f7ee8acb882796", size = 4138546, upload-time = "2026-01-02T09:12:23.664Z" }, + { url = "https://files.pythonhosted.org/packages/11/6d/19a95acb2edbace40dcd582d077b991646b7083c41b98da4ed7555b59733/pillow-12.1.0-cp314-cp314-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:414b9a78e14ffeb98128863314e62c3f24b8a86081066625700b7985b3f529bd", size = 3601163, upload-time = "2026-01-02T09:12:26.338Z" }, + { url = "https://files.pythonhosted.org/packages/fc/36/2b8138e51cb42e4cc39c3297713455548be855a50558c3ac2beebdc251dd/pillow-12.1.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:e6bdb408f7c9dd2a5ff2b14a3b0bb6d4deb29fb9961e6eb3ae2031ae9a5cec13", size = 5266086, upload-time = "2026-01-02T09:12:28.782Z" }, + { url = "https://files.pythonhosted.org/packages/53/4b/649056e4d22e1caa90816bf99cef0884aed607ed38075bd75f091a607a38/pillow-12.1.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:3413c2ae377550f5487991d444428f1a8ae92784aac79caa8b1e3b89b175f77e", size = 4657344, upload-time = "2026-01-02T09:12:31.117Z" }, + { url = "https://files.pythonhosted.org/packages/6c/6b/c5742cea0f1ade0cd61485dc3d81f05261fc2276f537fbdc00802de56779/pillow-12.1.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e5dcbe95016e88437ecf33544ba5db21ef1b8dd6e1b434a2cb2a3d605299e643", size = 6232114, upload-time = "2026-01-02T09:12:32.936Z" }, + { url = "https://files.pythonhosted.org/packages/bf/8f/9f521268ce22d63991601aafd3d48d5ff7280a246a1ef62d626d67b44064/pillow-12.1.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d0a7735df32ccbcc98b98a1ac785cc4b19b580be1bdf0aeb5c03223220ea09d5", size = 8042708, upload-time = "2026-01-02T09:12:34.78Z" }, + { url = "https://files.pythonhosted.org/packages/1a/eb/257f38542893f021502a1bbe0c2e883c90b5cff26cc33b1584a841a06d30/pillow-12.1.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0c27407a2d1b96774cbc4a7594129cc027339fd800cd081e44497722ea1179de", size = 6347762, upload-time = "2026-01-02T09:12:36.748Z" }, + { url = "https://files.pythonhosted.org/packages/c4/5a/8ba375025701c09b309e8d5163c5a4ce0102fa86bbf8800eb0d7ac87bc51/pillow-12.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:15c794d74303828eaa957ff8070846d0efe8c630901a1c753fdc63850e19ecd9", size = 7039265, upload-time = "2026-01-02T09:12:39.082Z" }, + { url = "https://files.pythonhosted.org/packages/cf/dc/cf5e4cdb3db533f539e88a7bbf9f190c64ab8a08a9bc7a4ccf55067872e4/pillow-12.1.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c990547452ee2800d8506c4150280757f88532f3de2a58e3022e9b179107862a", size = 6462341, upload-time = "2026-01-02T09:12:40.946Z" }, + { url = "https://files.pythonhosted.org/packages/d0/47/0291a25ac9550677e22eda48510cfc4fa4b2ef0396448b7fbdc0a6946309/pillow-12.1.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b63e13dd27da389ed9475b3d28510f0f954bca0041e8e551b2a4eb1eab56a39a", size = 7165395, upload-time = "2026-01-02T09:12:42.706Z" }, + { url = "https://files.pythonhosted.org/packages/4f/4c/e005a59393ec4d9416be06e6b45820403bb946a778e39ecec62f5b2b991e/pillow-12.1.0-cp314-cp314-win32.whl", hash = "sha256:1a949604f73eb07a8adab38c4fe50791f9919344398bdc8ac6b307f755fc7030", size = 6431413, upload-time = "2026-01-02T09:12:44.944Z" }, + { url = "https://files.pythonhosted.org/packages/1c/af/f23697f587ac5f9095d67e31b81c95c0249cd461a9798a061ed6709b09b5/pillow-12.1.0-cp314-cp314-win_amd64.whl", hash = "sha256:4f9f6a650743f0ddee5593ac9e954ba1bdbc5e150bc066586d4f26127853ab94", size = 7176779, upload-time = "2026-01-02T09:12:46.727Z" }, + { url = "https://files.pythonhosted.org/packages/b3/36/6a51abf8599232f3e9afbd16d52829376a68909fe14efe29084445db4b73/pillow-12.1.0-cp314-cp314-win_arm64.whl", hash = "sha256:808b99604f7873c800c4840f55ff389936ef1948e4e87645eaf3fccbc8477ac4", size = 2543105, upload-time = "2026-01-02T09:12:49.243Z" }, + { url = "https://files.pythonhosted.org/packages/82/54/2e1dd20c8749ff225080d6ba465a0cab4387f5db0d1c5fb1439e2d99923f/pillow-12.1.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:bc11908616c8a283cf7d664f77411a5ed2a02009b0097ff8abbba5e79128ccf2", size = 5268571, upload-time = "2026-01-02T09:12:51.11Z" }, + { url = "https://files.pythonhosted.org/packages/57/61/571163a5ef86ec0cf30d265ac2a70ae6fc9e28413d1dc94fa37fae6bda89/pillow-12.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:896866d2d436563fa2a43a9d72f417874f16b5545955c54a64941e87c1376c61", size = 4660426, upload-time = "2026-01-02T09:12:52.865Z" }, + { url = "https://files.pythonhosted.org/packages/5e/e1/53ee5163f794aef1bf84243f755ee6897a92c708505350dd1923f4afec48/pillow-12.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8e178e3e99d3c0ea8fc64b88447f7cac8ccf058af422a6cedc690d0eadd98c51", size = 6269908, upload-time = "2026-01-02T09:12:54.884Z" }, + { url = "https://files.pythonhosted.org/packages/bc/0b/b4b4106ff0ee1afa1dc599fde6ab230417f800279745124f6c50bcffed8e/pillow-12.1.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:079af2fb0c599c2ec144ba2c02766d1b55498e373b3ac64687e43849fbbef5bc", size = 8074733, upload-time = "2026-01-02T09:12:56.802Z" }, + { url = "https://files.pythonhosted.org/packages/19/9f/80b411cbac4a732439e629a26ad3ef11907a8c7fc5377b7602f04f6fe4e7/pillow-12.1.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdec5e43377761c5dbca620efb69a77f6855c5a379e32ac5b158f54c84212b14", size = 6381431, upload-time = "2026-01-02T09:12:58.823Z" }, + { url = "https://files.pythonhosted.org/packages/8f/b7/d65c45db463b66ecb6abc17c6ba6917a911202a07662247e1355ce1789e7/pillow-12.1.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:565c986f4b45c020f5421a4cea13ef294dde9509a8577f29b2fc5edc7587fff8", size = 7068529, upload-time = "2026-01-02T09:13:00.885Z" }, + { url = "https://files.pythonhosted.org/packages/50/96/dfd4cd726b4a45ae6e3c669fc9e49deb2241312605d33aba50499e9d9bd1/pillow-12.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:43aca0a55ce1eefc0aefa6253661cb54571857b1a7b2964bd8a1e3ef4b729924", size = 6492981, upload-time = "2026-01-02T09:13:03.314Z" }, + { url = "https://files.pythonhosted.org/packages/4d/1c/b5dc52cf713ae46033359c5ca920444f18a6359ce1020dd3e9c553ea5bc6/pillow-12.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0deedf2ea233722476b3a81e8cdfbad786f7adbed5d848469fa59fe52396e4ef", size = 7191878, upload-time = "2026-01-02T09:13:05.276Z" }, + { url = "https://files.pythonhosted.org/packages/53/26/c4188248bd5edaf543864fe4834aebe9c9cb4968b6f573ce014cc42d0720/pillow-12.1.0-cp314-cp314t-win32.whl", hash = "sha256:b17fbdbe01c196e7e159aacb889e091f28e61020a8abeac07b68079b6e626988", size = 6438703, upload-time = "2026-01-02T09:13:07.491Z" }, + { url = "https://files.pythonhosted.org/packages/b8/0e/69ed296de8ea05cb03ee139cee600f424ca166e632567b2d66727f08c7ed/pillow-12.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27b9baecb428899db6c0de572d6d305cfaf38ca1596b5c0542a5182e3e74e8c6", size = 7182927, upload-time = "2026-01-02T09:13:09.841Z" }, + { url = "https://files.pythonhosted.org/packages/fc/f5/68334c015eed9b5cff77814258717dec591ded209ab5b6fb70e2ae873d1d/pillow-12.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:f61333d817698bdcdd0f9d7793e365ac3d2a21c1f1eb02b32ad6aefb8d8ea831", size = 2545104, upload-time = "2026-01-02T09:13:12.068Z" }, +] + +[[package]] +name = "platformdirs" +version = "4.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cf/86/0248f086a84f01b37aaec0fa567b397df1a119f73c16f6c7a9aac73ea309/platformdirs-4.5.1.tar.gz", hash = "sha256:61d5cdcc6065745cdd94f0f878977f8de9437be93de97c1c12f853c9c0cdcbda", size = 21715, upload-time = "2025-12-05T13:52:58.638Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/28/3bfe2fa5a7b9c46fe7e13c97bda14c895fb10fa2ebf1d0abb90e0cea7ee1/platformdirs-4.5.1-py3-none-any.whl", hash = "sha256:d03afa3963c806a9bed9d5125c8f4cb2fdaf74a55ab60e5d59b3fde758104d31", size = 18731, upload-time = "2025-12-05T13:52:56.823Z" }, +] + +[[package]] +name = "portalocker" +version = "2.7.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pywin32", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/1f/f8/969e6f280201b40b31bcb62843c619f343dcc351dff83a5891530c9dd60e/portalocker-2.7.0.tar.gz", hash = "sha256:032e81d534a88ec1736d03f780ba073f047a06c478b06e2937486f334e955c51", size = 20183, upload-time = "2023-01-18T23:36:14.436Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8c/df/d4f711d168524f5aebd7fb30969eaa31e3048cf8979688cde3b08f6e5eb8/portalocker-2.7.0-py2.py3-none-any.whl", hash = "sha256:a07c5b4f3985c3cf4798369631fb7011adb498e2a46d8440efc75a8f29a0f983", size = 15502, upload-time = "2023-01-18T23:36:12.849Z" }, +] + +[[package]] +name = "posthog" +version = "5.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "backoff" }, + { name = "distro" }, + { name = "python-dateutil" }, + { name = "requests" }, + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/48/20/60ae67bb9d82f00427946218d49e2e7e80fb41c15dc5019482289ec9ce8d/posthog-5.4.0.tar.gz", hash = "sha256:701669261b8d07cdde0276e5bc096b87f9e200e3b9589c5ebff14df658c5893c", size = 88076, upload-time = "2025-06-20T23:19:23.485Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4f/98/e480cab9a08d1c09b1c59a93dade92c1bb7544826684ff2acbfd10fcfbd4/posthog-5.4.0-py3-none-any.whl", hash = "sha256:284dfa302f64353484420b52d4ad81ff5c2c2d1d607c4e2db602ac72761831bd", size = 105364, upload-time = "2025-06-20T23:19:22.001Z" }, +] + +[[package]] +name = "pre-commit" +version = "4.5.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cfgv" }, + { name = "identify" }, + { name = "nodeenv" }, + { name = "pyyaml" }, + { name = "virtualenv" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/40/f1/6d86a29246dfd2e9b6237f0b5823717f60cad94d47ddc26afa916d21f525/pre_commit-4.5.1.tar.gz", hash = "sha256:eb545fcff725875197837263e977ea257a402056661f09dae08e4b149b030a61", size = 198232, upload-time = "2025-12-16T21:14:33.552Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl", hash = "sha256:3b3afd891e97337708c1674210f8eba659b52a38ea5f822ff142d10786221f77", size = 226437, upload-time = "2025-12-16T21:14:32.409Z" }, +] + +[[package]] +name = "propcache" +version = "0.4.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9e/da/e9fc233cf63743258bff22b3dfa7ea5baef7b5bc324af47a0ad89b8ffc6f/propcache-0.4.1.tar.gz", hash = "sha256:f48107a8c637e80362555f37ecf49abe20370e557cc4ab374f04ec4423c97c3d", size = 46442, upload-time = "2025-10-08T19:49:02.291Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/0f/f17b1b2b221d5ca28b4b876e8bb046ac40466513960646bda8e1853cdfa2/propcache-0.4.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e153e9cd40cc8945138822807139367f256f89c6810c2634a4f6902b52d3b4e2", size = 80061, upload-time = "2025-10-08T19:46:46.075Z" }, + { url = "https://files.pythonhosted.org/packages/76/47/8ccf75935f51448ba9a16a71b783eb7ef6b9ee60f5d14c7f8a8a79fbeed7/propcache-0.4.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:cd547953428f7abb73c5ad82cbb32109566204260d98e41e5dfdc682eb7f8403", size = 46037, upload-time = "2025-10-08T19:46:47.23Z" }, + { url = "https://files.pythonhosted.org/packages/0a/b6/5c9a0e42df4d00bfb4a3cbbe5cf9f54260300c88a0e9af1f47ca5ce17ac0/propcache-0.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f048da1b4f243fc44f205dfd320933a951b8d89e0afd4c7cacc762a8b9165207", size = 47324, upload-time = "2025-10-08T19:46:48.384Z" }, + { url = "https://files.pythonhosted.org/packages/9e/d3/6c7ee328b39a81ee877c962469f1e795f9db87f925251efeb0545e0020d0/propcache-0.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ec17c65562a827bba85e3872ead335f95405ea1674860d96483a02f5c698fa72", size = 225505, upload-time = "2025-10-08T19:46:50.055Z" }, + { url = "https://files.pythonhosted.org/packages/01/5d/1c53f4563490b1d06a684742cc6076ef944bc6457df6051b7d1a877c057b/propcache-0.4.1-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:405aac25c6394ef275dee4c709be43745d36674b223ba4eb7144bf4d691b7367", size = 230242, upload-time = "2025-10-08T19:46:51.815Z" }, + { url = "https://files.pythonhosted.org/packages/20/e1/ce4620633b0e2422207c3cb774a0ee61cac13abc6217763a7b9e2e3f4a12/propcache-0.4.1-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:0013cb6f8dde4b2a2f66903b8ba740bdfe378c943c4377a200551ceb27f379e4", size = 238474, upload-time = "2025-10-08T19:46:53.208Z" }, + { url = "https://files.pythonhosted.org/packages/46/4b/3aae6835b8e5f44ea6a68348ad90f78134047b503765087be2f9912140ea/propcache-0.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:15932ab57837c3368b024473a525e25d316d8353016e7cc0e5ba9eb343fbb1cf", size = 221575, upload-time = "2025-10-08T19:46:54.511Z" }, + { url = "https://files.pythonhosted.org/packages/6e/a5/8a5e8678bcc9d3a1a15b9a29165640d64762d424a16af543f00629c87338/propcache-0.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:031dce78b9dc099f4c29785d9cf5577a3faf9ebf74ecbd3c856a7b92768c3df3", size = 216736, upload-time = "2025-10-08T19:46:56.212Z" }, + { url = "https://files.pythonhosted.org/packages/f1/63/b7b215eddeac83ca1c6b934f89d09a625aa9ee4ba158338854c87210cc36/propcache-0.4.1-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:ab08df6c9a035bee56e31af99be621526bd237bea9f32def431c656b29e41778", size = 213019, upload-time = "2025-10-08T19:46:57.595Z" }, + { url = "https://files.pythonhosted.org/packages/57/74/f580099a58c8af587cac7ba19ee7cb418506342fbbe2d4a4401661cca886/propcache-0.4.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:4d7af63f9f93fe593afbf104c21b3b15868efb2c21d07d8732c0c4287e66b6a6", size = 220376, upload-time = "2025-10-08T19:46:59.067Z" }, + { url = "https://files.pythonhosted.org/packages/c4/ee/542f1313aff7eaf19c2bb758c5d0560d2683dac001a1c96d0774af799843/propcache-0.4.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:cfc27c945f422e8b5071b6e93169679e4eb5bf73bbcbf1ba3ae3a83d2f78ebd9", size = 226988, upload-time = "2025-10-08T19:47:00.544Z" }, + { url = "https://files.pythonhosted.org/packages/8f/18/9c6b015dd9c6930f6ce2229e1f02fb35298b847f2087ea2b436a5bfa7287/propcache-0.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:35c3277624a080cc6ec6f847cbbbb5b49affa3598c4535a0a4682a697aaa5c75", size = 215615, upload-time = "2025-10-08T19:47:01.968Z" }, + { url = "https://files.pythonhosted.org/packages/80/9e/e7b85720b98c45a45e1fca6a177024934dc9bc5f4d5dd04207f216fc33ed/propcache-0.4.1-cp312-cp312-win32.whl", hash = "sha256:671538c2262dadb5ba6395e26c1731e1d52534bfe9ae56d0b5573ce539266aa8", size = 38066, upload-time = "2025-10-08T19:47:03.503Z" }, + { url = "https://files.pythonhosted.org/packages/54/09/d19cff2a5aaac632ec8fc03737b223597b1e347416934c1b3a7df079784c/propcache-0.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:cb2d222e72399fcf5890d1d5cc1060857b9b236adff2792ff48ca2dfd46c81db", size = 41655, upload-time = "2025-10-08T19:47:04.973Z" }, + { url = "https://files.pythonhosted.org/packages/68/ab/6b5c191bb5de08036a8c697b265d4ca76148efb10fa162f14af14fb5f076/propcache-0.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:204483131fb222bdaaeeea9f9e6c6ed0cac32731f75dfc1d4a567fc1926477c1", size = 37789, upload-time = "2025-10-08T19:47:06.077Z" }, + { url = "https://files.pythonhosted.org/packages/bf/df/6d9c1b6ac12b003837dde8a10231a7344512186e87b36e855bef32241942/propcache-0.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:43eedf29202c08550aac1d14e0ee619b0430aaef78f85864c1a892294fbc28cf", size = 77750, upload-time = "2025-10-08T19:47:07.648Z" }, + { url = "https://files.pythonhosted.org/packages/8b/e8/677a0025e8a2acf07d3418a2e7ba529c9c33caf09d3c1f25513023c1db56/propcache-0.4.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d62cdfcfd89ccb8de04e0eda998535c406bf5e060ffd56be6c586cbcc05b3311", size = 44780, upload-time = "2025-10-08T19:47:08.851Z" }, + { url = "https://files.pythonhosted.org/packages/89/a4/92380f7ca60f99ebae761936bc48a72a639e8a47b29050615eef757cb2a7/propcache-0.4.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cae65ad55793da34db5f54e4029b89d3b9b9490d8abe1b4c7ab5d4b8ec7ebf74", size = 46308, upload-time = "2025-10-08T19:47:09.982Z" }, + { url = "https://files.pythonhosted.org/packages/2d/48/c5ac64dee5262044348d1d78a5f85dd1a57464a60d30daee946699963eb3/propcache-0.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:333ddb9031d2704a301ee3e506dc46b1fe5f294ec198ed6435ad5b6a085facfe", size = 208182, upload-time = "2025-10-08T19:47:11.319Z" }, + { url = "https://files.pythonhosted.org/packages/c6/0c/cd762dd011a9287389a6a3eb43aa30207bde253610cca06824aeabfe9653/propcache-0.4.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:fd0858c20f078a32cf55f7e81473d96dcf3b93fd2ccdb3d40fdf54b8573df3af", size = 211215, upload-time = "2025-10-08T19:47:13.146Z" }, + { url = "https://files.pythonhosted.org/packages/30/3e/49861e90233ba36890ae0ca4c660e95df565b2cd15d4a68556ab5865974e/propcache-0.4.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:678ae89ebc632c5c204c794f8dab2837c5f159aeb59e6ed0539500400577298c", size = 218112, upload-time = "2025-10-08T19:47:14.913Z" }, + { url = "https://files.pythonhosted.org/packages/f1/8b/544bc867e24e1bd48f3118cecd3b05c694e160a168478fa28770f22fd094/propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d472aeb4fbf9865e0c6d622d7f4d54a4e101a89715d8904282bb5f9a2f476c3f", size = 204442, upload-time = "2025-10-08T19:47:16.277Z" }, + { url = "https://files.pythonhosted.org/packages/50/a6/4282772fd016a76d3e5c0df58380a5ea64900afd836cec2c2f662d1b9bb3/propcache-0.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4d3df5fa7e36b3225954fba85589da77a0fe6a53e3976de39caf04a0db4c36f1", size = 199398, upload-time = "2025-10-08T19:47:17.962Z" }, + { url = "https://files.pythonhosted.org/packages/3e/ec/d8a7cd406ee1ddb705db2139f8a10a8a427100347bd698e7014351c7af09/propcache-0.4.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:ee17f18d2498f2673e432faaa71698032b0127ebf23ae5974eeaf806c279df24", size = 196920, upload-time = "2025-10-08T19:47:19.355Z" }, + { url = "https://files.pythonhosted.org/packages/f6/6c/f38ab64af3764f431e359f8baf9e0a21013e24329e8b85d2da32e8ed07ca/propcache-0.4.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:580e97762b950f993ae618e167e7be9256b8353c2dcd8b99ec100eb50f5286aa", size = 203748, upload-time = "2025-10-08T19:47:21.338Z" }, + { url = "https://files.pythonhosted.org/packages/d6/e3/fa846bd70f6534d647886621388f0a265254d30e3ce47e5c8e6e27dbf153/propcache-0.4.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:501d20b891688eb8e7aa903021f0b72d5a55db40ffaab27edefd1027caaafa61", size = 205877, upload-time = "2025-10-08T19:47:23.059Z" }, + { url = "https://files.pythonhosted.org/packages/e2/39/8163fc6f3133fea7b5f2827e8eba2029a0277ab2c5beee6c1db7b10fc23d/propcache-0.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9a0bd56e5b100aef69bd8562b74b46254e7c8812918d3baa700c8a8009b0af66", size = 199437, upload-time = "2025-10-08T19:47:24.445Z" }, + { url = "https://files.pythonhosted.org/packages/93/89/caa9089970ca49c7c01662bd0eeedfe85494e863e8043565aeb6472ce8fe/propcache-0.4.1-cp313-cp313-win32.whl", hash = "sha256:bcc9aaa5d80322bc2fb24bb7accb4a30f81e90ab8d6ba187aec0744bc302ad81", size = 37586, upload-time = "2025-10-08T19:47:25.736Z" }, + { url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e", size = 40790, upload-time = "2025-10-08T19:47:26.847Z" }, + { url = "https://files.pythonhosted.org/packages/59/1b/e71ae98235f8e2ba5004d8cb19765a74877abf189bc53fc0c80d799e56c3/propcache-0.4.1-cp313-cp313-win_arm64.whl", hash = "sha256:8873eb4460fd55333ea49b7d189749ecf6e55bf85080f11b1c4530ed3034cba1", size = 37158, upload-time = "2025-10-08T19:47:27.961Z" }, + { url = "https://files.pythonhosted.org/packages/83/ce/a31bbdfc24ee0dcbba458c8175ed26089cf109a55bbe7b7640ed2470cfe9/propcache-0.4.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:92d1935ee1f8d7442da9c0c4fa7ac20d07e94064184811b685f5c4fada64553b", size = 81451, upload-time = "2025-10-08T19:47:29.445Z" }, + { url = "https://files.pythonhosted.org/packages/25/9c/442a45a470a68456e710d96cacd3573ef26a1d0a60067e6a7d5e655621ed/propcache-0.4.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:473c61b39e1460d386479b9b2f337da492042447c9b685f28be4f74d3529e566", size = 46374, upload-time = "2025-10-08T19:47:30.579Z" }, + { url = "https://files.pythonhosted.org/packages/f4/bf/b1d5e21dbc3b2e889ea4327044fb16312a736d97640fb8b6aa3f9c7b3b65/propcache-0.4.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c0ef0aaafc66fbd87842a3fe3902fd889825646bc21149eafe47be6072725835", size = 48396, upload-time = "2025-10-08T19:47:31.79Z" }, + { url = "https://files.pythonhosted.org/packages/f4/04/5b4c54a103d480e978d3c8a76073502b18db0c4bc17ab91b3cb5092ad949/propcache-0.4.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f95393b4d66bfae908c3ca8d169d5f79cd65636ae15b5e7a4f6e67af675adb0e", size = 275950, upload-time = "2025-10-08T19:47:33.481Z" }, + { url = "https://files.pythonhosted.org/packages/b4/c1/86f846827fb969c4b78b0af79bba1d1ea2156492e1b83dea8b8a6ae27395/propcache-0.4.1-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c07fda85708bc48578467e85099645167a955ba093be0a2dcba962195676e859", size = 273856, upload-time = "2025-10-08T19:47:34.906Z" }, + { url = "https://files.pythonhosted.org/packages/36/1d/fc272a63c8d3bbad6878c336c7a7dea15e8f2d23a544bda43205dfa83ada/propcache-0.4.1-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:af223b406d6d000830c6f65f1e6431783fc3f713ba3e6cc8c024d5ee96170a4b", size = 280420, upload-time = "2025-10-08T19:47:36.338Z" }, + { url = "https://files.pythonhosted.org/packages/07/0c/01f2219d39f7e53d52e5173bcb09c976609ba30209912a0680adfb8c593a/propcache-0.4.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a78372c932c90ee474559c5ddfffd718238e8673c340dc21fe45c5b8b54559a0", size = 263254, upload-time = "2025-10-08T19:47:37.692Z" }, + { url = "https://files.pythonhosted.org/packages/2d/18/cd28081658ce597898f0c4d174d4d0f3c5b6d4dc27ffafeef835c95eb359/propcache-0.4.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:564d9f0d4d9509e1a870c920a89b2fec951b44bf5ba7d537a9e7c1ccec2c18af", size = 261205, upload-time = "2025-10-08T19:47:39.659Z" }, + { url = "https://files.pythonhosted.org/packages/7a/71/1f9e22eb8b8316701c2a19fa1f388c8a3185082607da8e406a803c9b954e/propcache-0.4.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:17612831fda0138059cc5546f4d12a2aacfb9e47068c06af35c400ba58ba7393", size = 247873, upload-time = "2025-10-08T19:47:41.084Z" }, + { url = "https://files.pythonhosted.org/packages/4a/65/3d4b61f36af2b4eddba9def857959f1016a51066b4f1ce348e0cf7881f58/propcache-0.4.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:41a89040cb10bd345b3c1a873b2bf36413d48da1def52f268a055f7398514874", size = 262739, upload-time = "2025-10-08T19:47:42.51Z" }, + { url = "https://files.pythonhosted.org/packages/2a/42/26746ab087faa77c1c68079b228810436ccd9a5ce9ac85e2b7307195fd06/propcache-0.4.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:e35b88984e7fa64aacecea39236cee32dd9bd8c55f57ba8a75cf2399553f9bd7", size = 263514, upload-time = "2025-10-08T19:47:43.927Z" }, + { url = "https://files.pythonhosted.org/packages/94/13/630690fe201f5502d2403dd3cfd451ed8858fe3c738ee88d095ad2ff407b/propcache-0.4.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6f8b465489f927b0df505cbe26ffbeed4d6d8a2bbc61ce90eb074ff129ef0ab1", size = 257781, upload-time = "2025-10-08T19:47:45.448Z" }, + { url = "https://files.pythonhosted.org/packages/92/f7/1d4ec5841505f423469efbfc381d64b7b467438cd5a4bbcbb063f3b73d27/propcache-0.4.1-cp313-cp313t-win32.whl", hash = "sha256:2ad890caa1d928c7c2965b48f3a3815c853180831d0e5503d35cf00c472f4717", size = 41396, upload-time = "2025-10-08T19:47:47.202Z" }, + { url = "https://files.pythonhosted.org/packages/48/f0/615c30622316496d2cbbc29f5985f7777d3ada70f23370608c1d3e081c1f/propcache-0.4.1-cp313-cp313t-win_amd64.whl", hash = "sha256:f7ee0e597f495cf415bcbd3da3caa3bd7e816b74d0d52b8145954c5e6fd3ff37", size = 44897, upload-time = "2025-10-08T19:47:48.336Z" }, + { url = "https://files.pythonhosted.org/packages/fd/ca/6002e46eccbe0e33dcd4069ef32f7f1c9e243736e07adca37ae8c4830ec3/propcache-0.4.1-cp313-cp313t-win_arm64.whl", hash = "sha256:929d7cbe1f01bb7baffb33dc14eb5691c95831450a26354cd210a8155170c93a", size = 39789, upload-time = "2025-10-08T19:47:49.876Z" }, + { url = "https://files.pythonhosted.org/packages/8e/5c/bca52d654a896f831b8256683457ceddd490ec18d9ec50e97dfd8fc726a8/propcache-0.4.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3f7124c9d820ba5548d431afb4632301acf965db49e666aa21c305cbe8c6de12", size = 78152, upload-time = "2025-10-08T19:47:51.051Z" }, + { url = "https://files.pythonhosted.org/packages/65/9b/03b04e7d82a5f54fb16113d839f5ea1ede58a61e90edf515f6577c66fa8f/propcache-0.4.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:c0d4b719b7da33599dfe3b22d3db1ef789210a0597bc650b7cee9c77c2be8c5c", size = 44869, upload-time = "2025-10-08T19:47:52.594Z" }, + { url = "https://files.pythonhosted.org/packages/b2/fa/89a8ef0468d5833a23fff277b143d0573897cf75bd56670a6d28126c7d68/propcache-0.4.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:9f302f4783709a78240ebc311b793f123328716a60911d667e0c036bc5dcbded", size = 46596, upload-time = "2025-10-08T19:47:54.073Z" }, + { url = "https://files.pythonhosted.org/packages/86/bd/47816020d337f4a746edc42fe8d53669965138f39ee117414c7d7a340cfe/propcache-0.4.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c80ee5802e3fb9ea37938e7eecc307fb984837091d5fd262bb37238b1ae97641", size = 206981, upload-time = "2025-10-08T19:47:55.715Z" }, + { url = "https://files.pythonhosted.org/packages/df/f6/c5fa1357cc9748510ee55f37173eb31bfde6d94e98ccd9e6f033f2fc06e1/propcache-0.4.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ed5a841e8bb29a55fb8159ed526b26adc5bdd7e8bd7bf793ce647cb08656cdf4", size = 211490, upload-time = "2025-10-08T19:47:57.499Z" }, + { url = "https://files.pythonhosted.org/packages/80/1e/e5889652a7c4a3846683401a48f0f2e5083ce0ec1a8a5221d8058fbd1adf/propcache-0.4.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:55c72fd6ea2da4c318e74ffdf93c4fe4e926051133657459131a95c846d16d44", size = 215371, upload-time = "2025-10-08T19:47:59.317Z" }, + { url = "https://files.pythonhosted.org/packages/b2/f2/889ad4b2408f72fe1a4f6a19491177b30ea7bf1a0fd5f17050ca08cfc882/propcache-0.4.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8326e144341460402713f91df60ade3c999d601e7eb5ff8f6f7862d54de0610d", size = 201424, upload-time = "2025-10-08T19:48:00.67Z" }, + { url = "https://files.pythonhosted.org/packages/27/73/033d63069b57b0812c8bd19f311faebeceb6ba31b8f32b73432d12a0b826/propcache-0.4.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:060b16ae65bc098da7f6d25bf359f1f31f688384858204fe5d652979e0015e5b", size = 197566, upload-time = "2025-10-08T19:48:02.604Z" }, + { url = "https://files.pythonhosted.org/packages/dc/89/ce24f3dc182630b4e07aa6d15f0ff4b14ed4b9955fae95a0b54c58d66c05/propcache-0.4.1-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:89eb3fa9524f7bec9de6e83cf3faed9d79bffa560672c118a96a171a6f55831e", size = 193130, upload-time = "2025-10-08T19:48:04.499Z" }, + { url = "https://files.pythonhosted.org/packages/a9/24/ef0d5fd1a811fb5c609278d0209c9f10c35f20581fcc16f818da959fc5b4/propcache-0.4.1-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:dee69d7015dc235f526fe80a9c90d65eb0039103fe565776250881731f06349f", size = 202625, upload-time = "2025-10-08T19:48:06.213Z" }, + { url = "https://files.pythonhosted.org/packages/f5/02/98ec20ff5546f68d673df2f7a69e8c0d076b5abd05ca882dc7ee3a83653d/propcache-0.4.1-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:5558992a00dfd54ccbc64a32726a3357ec93825a418a401f5cc67df0ac5d9e49", size = 204209, upload-time = "2025-10-08T19:48:08.432Z" }, + { url = "https://files.pythonhosted.org/packages/a0/87/492694f76759b15f0467a2a93ab68d32859672b646aa8a04ce4864e7932d/propcache-0.4.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:c9b822a577f560fbd9554812526831712c1436d2c046cedee4c3796d3543b144", size = 197797, upload-time = "2025-10-08T19:48:09.968Z" }, + { url = "https://files.pythonhosted.org/packages/ee/36/66367de3575db1d2d3f3d177432bd14ee577a39d3f5d1b3d5df8afe3b6e2/propcache-0.4.1-cp314-cp314-win32.whl", hash = "sha256:ab4c29b49d560fe48b696cdcb127dd36e0bc2472548f3bf56cc5cb3da2b2984f", size = 38140, upload-time = "2025-10-08T19:48:11.232Z" }, + { url = "https://files.pythonhosted.org/packages/0c/2a/a758b47de253636e1b8aef181c0b4f4f204bf0dd964914fb2af90a95b49b/propcache-0.4.1-cp314-cp314-win_amd64.whl", hash = "sha256:5a103c3eb905fcea0ab98be99c3a9a5ab2de60228aa5aceedc614c0281cf6153", size = 41257, upload-time = "2025-10-08T19:48:12.707Z" }, + { url = "https://files.pythonhosted.org/packages/34/5e/63bd5896c3fec12edcbd6f12508d4890d23c265df28c74b175e1ef9f4f3b/propcache-0.4.1-cp314-cp314-win_arm64.whl", hash = "sha256:74c1fb26515153e482e00177a1ad654721bf9207da8a494a0c05e797ad27b992", size = 38097, upload-time = "2025-10-08T19:48:13.923Z" }, + { url = "https://files.pythonhosted.org/packages/99/85/9ff785d787ccf9bbb3f3106f79884a130951436f58392000231b4c737c80/propcache-0.4.1-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:824e908bce90fb2743bd6b59db36eb4f45cd350a39637c9f73b1c1ea66f5b75f", size = 81455, upload-time = "2025-10-08T19:48:15.16Z" }, + { url = "https://files.pythonhosted.org/packages/90/85/2431c10c8e7ddb1445c1f7c4b54d886e8ad20e3c6307e7218f05922cad67/propcache-0.4.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:c2b5e7db5328427c57c8e8831abda175421b709672f6cfc3d630c3b7e2146393", size = 46372, upload-time = "2025-10-08T19:48:16.424Z" }, + { url = "https://files.pythonhosted.org/packages/01/20/b0972d902472da9bcb683fa595099911f4d2e86e5683bcc45de60dd05dc3/propcache-0.4.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:6f6ff873ed40292cd4969ef5310179afd5db59fdf055897e282485043fc80ad0", size = 48411, upload-time = "2025-10-08T19:48:17.577Z" }, + { url = "https://files.pythonhosted.org/packages/e2/e3/7dc89f4f21e8f99bad3d5ddb3a3389afcf9da4ac69e3deb2dcdc96e74169/propcache-0.4.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:49a2dc67c154db2c1463013594c458881a069fcf98940e61a0569016a583020a", size = 275712, upload-time = "2025-10-08T19:48:18.901Z" }, + { url = "https://files.pythonhosted.org/packages/20/67/89800c8352489b21a8047c773067644e3897f02ecbbd610f4d46b7f08612/propcache-0.4.1-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:005f08e6a0529984491e37d8dbc3dd86f84bd78a8ceb5fa9a021f4c48d4984be", size = 273557, upload-time = "2025-10-08T19:48:20.762Z" }, + { url = "https://files.pythonhosted.org/packages/e2/a1/b52b055c766a54ce6d9c16d9aca0cad8059acd9637cdf8aa0222f4a026ef/propcache-0.4.1-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5c3310452e0d31390da9035c348633b43d7e7feb2e37be252be6da45abd1abcc", size = 280015, upload-time = "2025-10-08T19:48:22.592Z" }, + { url = "https://files.pythonhosted.org/packages/48/c8/33cee30bd890672c63743049f3c9e4be087e6780906bfc3ec58528be59c1/propcache-0.4.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4c3c70630930447f9ef1caac7728c8ad1c56bc5015338b20fed0d08ea2480b3a", size = 262880, upload-time = "2025-10-08T19:48:23.947Z" }, + { url = "https://files.pythonhosted.org/packages/0c/b1/8f08a143b204b418285c88b83d00edbd61afbc2c6415ffafc8905da7038b/propcache-0.4.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8e57061305815dfc910a3634dcf584f08168a8836e6999983569f51a8544cd89", size = 260938, upload-time = "2025-10-08T19:48:25.656Z" }, + { url = "https://files.pythonhosted.org/packages/cf/12/96e4664c82ca2f31e1c8dff86afb867348979eb78d3cb8546a680287a1e9/propcache-0.4.1-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:521a463429ef54143092c11a77e04056dd00636f72e8c45b70aaa3140d639726", size = 247641, upload-time = "2025-10-08T19:48:27.207Z" }, + { url = "https://files.pythonhosted.org/packages/18/ed/e7a9cfca28133386ba52278136d42209d3125db08d0a6395f0cba0c0285c/propcache-0.4.1-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:120c964da3fdc75e3731aa392527136d4ad35868cc556fd09bb6d09172d9a367", size = 262510, upload-time = "2025-10-08T19:48:28.65Z" }, + { url = "https://files.pythonhosted.org/packages/f5/76/16d8bf65e8845dd62b4e2b57444ab81f07f40caa5652b8969b87ddcf2ef6/propcache-0.4.1-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:d8f353eb14ee3441ee844ade4277d560cdd68288838673273b978e3d6d2c8f36", size = 263161, upload-time = "2025-10-08T19:48:30.133Z" }, + { url = "https://files.pythonhosted.org/packages/e7/70/c99e9edb5d91d5ad8a49fa3c1e8285ba64f1476782fed10ab251ff413ba1/propcache-0.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ab2943be7c652f09638800905ee1bab2c544e537edb57d527997a24c13dc1455", size = 257393, upload-time = "2025-10-08T19:48:31.567Z" }, + { url = "https://files.pythonhosted.org/packages/08/02/87b25304249a35c0915d236575bc3574a323f60b47939a2262b77632a3ee/propcache-0.4.1-cp314-cp314t-win32.whl", hash = "sha256:05674a162469f31358c30bcaa8883cb7829fa3110bf9c0991fe27d7896c42d85", size = 42546, upload-time = "2025-10-08T19:48:32.872Z" }, + { url = "https://files.pythonhosted.org/packages/cb/ef/3c6ecf8b317aa982f309835e8f96987466123c6e596646d4e6a1dfcd080f/propcache-0.4.1-cp314-cp314t-win_amd64.whl", hash = "sha256:990f6b3e2a27d683cb7602ed6c86f15ee6b43b1194736f9baaeb93d0016633b1", size = 46259, upload-time = "2025-10-08T19:48:34.226Z" }, + { url = "https://files.pythonhosted.org/packages/c4/2d/346e946d4951f37eca1e4f55be0f0174c52cd70720f84029b02f296f4a38/propcache-0.4.1-cp314-cp314t-win_arm64.whl", hash = "sha256:ecef2343af4cc68e05131e45024ba34f6095821988a9d0a02aa7c73fcc448aa9", size = 40428, upload-time = "2025-10-08T19:48:35.441Z" }, + { url = "https://files.pythonhosted.org/packages/5b/5a/bc7b4a4ef808fa59a816c17b20c4bef6884daebbdf627ff2a161da67da19/propcache-0.4.1-py3-none-any.whl", hash = "sha256:af2a6052aeb6cf17d3e46ee169099044fd8224cbaf75c76a2ef596e8163e2237", size = 13305, upload-time = "2025-10-08T19:49:00.792Z" }, +] + +[[package]] +name = "protobuf" +version = "6.33.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/53/b8/cda15d9d46d03d4aa3a67cb6bffe05173440ccf86a9541afaf7ac59a1b6b/protobuf-6.33.4.tar.gz", hash = "sha256:dc2e61bca3b10470c1912d166fe0af67bfc20eb55971dcef8dfa48ce14f0ed91", size = 444346, upload-time = "2026-01-12T18:33:40.109Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/be/24ef9f3095bacdf95b458543334d0c4908ccdaee5130420bf064492c325f/protobuf-6.33.4-cp310-abi3-win32.whl", hash = "sha256:918966612c8232fc6c24c78e1cd89784307f5814ad7506c308ee3cf86662850d", size = 425612, upload-time = "2026-01-12T18:33:29.656Z" }, + { url = "https://files.pythonhosted.org/packages/31/ad/e5693e1974a28869e7cd244302911955c1cebc0161eb32dfa2b25b6e96f0/protobuf-6.33.4-cp310-abi3-win_amd64.whl", hash = "sha256:8f11ffae31ec67fc2554c2ef891dcb561dae9a2a3ed941f9e134c2db06657dbc", size = 436962, upload-time = "2026-01-12T18:33:31.345Z" }, + { url = "https://files.pythonhosted.org/packages/66/15/6ee23553b6bfd82670207ead921f4d8ef14c107e5e11443b04caeb5ab5ec/protobuf-6.33.4-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:2fe67f6c014c84f655ee06f6f66213f9254b3a8b6bda6cda0ccd4232c73c06f0", size = 427612, upload-time = "2026-01-12T18:33:32.646Z" }, + { url = "https://files.pythonhosted.org/packages/2b/48/d301907ce6d0db75f959ca74f44b475a9caa8fcba102d098d3c3dd0f2d3f/protobuf-6.33.4-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:757c978f82e74d75cba88eddec479df9b99a42b31193313b75e492c06a51764e", size = 324484, upload-time = "2026-01-12T18:33:33.789Z" }, + { url = "https://files.pythonhosted.org/packages/92/1c/e53078d3f7fe710572ab2dcffd993e1e3b438ae71cfc031b71bae44fcb2d/protobuf-6.33.4-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:c7c64f259c618f0bef7bee042075e390debbf9682334be2b67408ec7c1c09ee6", size = 339256, upload-time = "2026-01-12T18:33:35.231Z" }, + { url = "https://files.pythonhosted.org/packages/e8/8e/971c0edd084914f7ee7c23aa70ba89e8903918adca179319ee94403701d5/protobuf-6.33.4-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:3df850c2f8db9934de4cf8f9152f8dc2558f49f298f37f90c517e8e5c84c30e9", size = 323311, upload-time = "2026-01-12T18:33:36.305Z" }, + { url = "https://files.pythonhosted.org/packages/75/b1/1dc83c2c661b4c62d56cc081706ee33a4fc2835bd90f965baa2663ef7676/protobuf-6.33.4-py3-none-any.whl", hash = "sha256:1fe3730068fcf2e595816a6c34fe66eeedd37d51d0400b72fabc848811fdc1bc", size = 170532, upload-time = "2026-01-12T18:33:39.199Z" }, +] + +[[package]] +name = "pyarrow" +version = "23.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/33/ffd9c3eb087fa41dd79c3cf20c4c0ae3cdb877c4f8e1107a446006344924/pyarrow-23.0.0.tar.gz", hash = "sha256:180e3150e7edfcd182d3d9afba72f7cf19839a497cc76555a8dce998a8f67615", size = 1167185, upload-time = "2026-01-18T16:19:42.218Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/bd/c861d020831ee57609b73ea721a617985ece817684dc82415b0bc3e03ac3/pyarrow-23.0.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:5961a9f646c232697c24f54d3419e69b4261ba8a8b66b0ac54a1851faffcbab8", size = 34189116, upload-time = "2026-01-18T16:15:28.054Z" }, + { url = "https://files.pythonhosted.org/packages/8c/23/7725ad6cdcbaf6346221391e7b3eecd113684c805b0a95f32014e6fa0736/pyarrow-23.0.0-cp312-cp312-macosx_12_0_x86_64.whl", hash = "sha256:632b3e7c3d232f41d64e1a4a043fb82d44f8a349f339a1188c6a0dd9d2d47d8a", size = 35803831, upload-time = "2026-01-18T16:15:33.798Z" }, + { url = "https://files.pythonhosted.org/packages/57/06/684a421543455cdc2944d6a0c2cc3425b028a4c6b90e34b35580c4899743/pyarrow-23.0.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:76242c846db1411f1d6c2cc3823be6b86b40567ee24493344f8226ba34a81333", size = 44436452, upload-time = "2026-01-18T16:15:41.598Z" }, + { url = "https://files.pythonhosted.org/packages/c6/6f/8f9eb40c2328d66e8b097777ddcf38494115ff9f1b5bc9754ba46991191e/pyarrow-23.0.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:b73519f8b52ae28127000986bf228fda781e81d3095cd2d3ece76eb5cf760e1b", size = 47557396, upload-time = "2026-01-18T16:15:51.252Z" }, + { url = "https://files.pythonhosted.org/packages/10/6e/f08075f1472e5159553501fde2cc7bc6700944bdabe49a03f8a035ee6ccd/pyarrow-23.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:068701f6823449b1b6469120f399a1239766b117d211c5d2519d4ed5861f75de", size = 48147129, upload-time = "2026-01-18T16:16:00.299Z" }, + { url = "https://files.pythonhosted.org/packages/7d/82/d5a680cd507deed62d141cc7f07f7944a6766fc51019f7f118e4d8ad0fb8/pyarrow-23.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:1801ba947015d10e23bca9dd6ef5d0e9064a81569a89b6e9a63b59224fd060df", size = 50596642, upload-time = "2026-01-18T16:16:08.502Z" }, + { url = "https://files.pythonhosted.org/packages/a9/26/4f29c61b3dce9fa7780303b86895ec6a0917c9af927101daaaf118fbe462/pyarrow-23.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:52265266201ec25b6839bf6bd4ea918ca6d50f31d13e1cf200b4261cd11dc25c", size = 27660628, upload-time = "2026-01-18T16:16:15.28Z" }, + { url = "https://files.pythonhosted.org/packages/66/34/564db447d083ec7ff93e0a883a597d2f214e552823bfc178a2d0b1f2c257/pyarrow-23.0.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:ad96a597547af7827342ffb3c503c8316e5043bb09b47a84885ce39394c96e00", size = 34184630, upload-time = "2026-01-18T16:16:22.141Z" }, + { url = "https://files.pythonhosted.org/packages/aa/3a/3999daebcb5e6119690c92a621c4d78eef2ffba7a0a1b56386d2875fcd77/pyarrow-23.0.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:b9edf990df77c2901e79608f08c13fbde60202334a4fcadb15c1f57bf7afee43", size = 35796820, upload-time = "2026-01-18T16:16:29.441Z" }, + { url = "https://files.pythonhosted.org/packages/ec/ee/39195233056c6a8d0976d7d1ac1cd4fe21fb0ec534eca76bc23ef3f60e11/pyarrow-23.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:36d1b5bc6ddcaff0083ceec7e2561ed61a51f49cce8be079ee8ed406acb6fdef", size = 44438735, upload-time = "2026-01-18T16:16:38.79Z" }, + { url = "https://files.pythonhosted.org/packages/2c/41/6a7328ee493527e7afc0c88d105ecca69a3580e29f2faaeac29308369fd7/pyarrow-23.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:4292b889cd224f403304ddda8b63a36e60f92911f89927ec8d98021845ea21be", size = 47557263, upload-time = "2026-01-18T16:16:46.248Z" }, + { url = "https://files.pythonhosted.org/packages/c6/ee/34e95b21ee84db494eae60083ddb4383477b31fb1fd19fd866d794881696/pyarrow-23.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:dfd9e133e60eaa847fd80530a1b89a052f09f695d0b9c34c235ea6b2e0924cf7", size = 48153529, upload-time = "2026-01-18T16:16:53.412Z" }, + { url = "https://files.pythonhosted.org/packages/52/88/8a8d83cea30f4563efa1b7bf51d241331ee5cd1b185a7e063f5634eca415/pyarrow-23.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832141cc09fac6aab1cd3719951d23301396968de87080c57c9a7634e0ecd068", size = 50598851, upload-time = "2026-01-18T16:17:01.133Z" }, + { url = "https://files.pythonhosted.org/packages/c6/4c/2929c4be88723ba025e7b3453047dc67e491c9422965c141d24bab6b5962/pyarrow-23.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:7a7d067c9a88faca655c71bcc30ee2782038d59c802d57950826a07f60d83c4c", size = 27577747, upload-time = "2026-01-18T16:18:02.413Z" }, + { url = "https://files.pythonhosted.org/packages/64/52/564a61b0b82d72bd68ec3aef1adda1e3eba776f89134b9ebcb5af4b13cb6/pyarrow-23.0.0-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:ce9486e0535a843cf85d990e2ec5820a47918235183a5c7b8b97ed7e92c2d47d", size = 34446038, upload-time = "2026-01-18T16:17:07.861Z" }, + { url = "https://files.pythonhosted.org/packages/cc/c9/232d4f9855fd1de0067c8a7808a363230d223c83aeee75e0fe6eab851ba9/pyarrow-23.0.0-cp313-cp313t-macosx_12_0_x86_64.whl", hash = "sha256:075c29aeaa685fd1182992a9ed2499c66f084ee54eea47da3eb76e125e06064c", size = 35921142, upload-time = "2026-01-18T16:17:15.401Z" }, + { url = "https://files.pythonhosted.org/packages/96/f2/60af606a3748367b906bb82d41f0032e059f075444445d47e32a7ff1df62/pyarrow-23.0.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:799965a5379589510d888be3094c2296efd186a17ca1cef5b77703d4d5121f53", size = 44490374, upload-time = "2026-01-18T16:17:23.93Z" }, + { url = "https://files.pythonhosted.org/packages/ff/2d/7731543050a678ea3a413955a2d5d80d2a642f270aa57a3cb7d5a86e3f46/pyarrow-23.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ef7cac8fe6fccd8b9e7617bfac785b0371a7fe26af59463074e4882747145d40", size = 47527896, upload-time = "2026-01-18T16:17:33.393Z" }, + { url = "https://files.pythonhosted.org/packages/5a/90/f3342553b7ac9879413aed46500f1637296f3c8222107523a43a1c08b42a/pyarrow-23.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15a414f710dc927132dd67c361f78c194447479555af57317066ee5116b90e9e", size = 48210401, upload-time = "2026-01-18T16:17:42.012Z" }, + { url = "https://files.pythonhosted.org/packages/f3/da/9862ade205ecc46c172b6ce5038a74b5151c7401e36255f15975a45878b2/pyarrow-23.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3e0d2e6915eca7d786be6a77bf227fbc06d825a75b5b5fe9bcbef121dec32685", size = 50579677, upload-time = "2026-01-18T16:17:50.241Z" }, + { url = "https://files.pythonhosted.org/packages/c2/4c/f11f371f5d4740a5dafc2e11c76bcf42d03dfdb2d68696da97de420b6963/pyarrow-23.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:4b317ea6e800b5704e5e5929acb6e2dc13e9276b708ea97a39eb8b345aa2658b", size = 27631889, upload-time = "2026-01-18T16:17:56.55Z" }, + { url = "https://files.pythonhosted.org/packages/97/bb/15aec78bcf43a0c004067bd33eb5352836a29a49db8581fc56f2b6ca88b7/pyarrow-23.0.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:20b187ed9550d233a872074159f765f52f9d92973191cd4b93f293a19efbe377", size = 34213265, upload-time = "2026-01-18T16:18:07.904Z" }, + { url = "https://files.pythonhosted.org/packages/f6/6c/deb2c594bbba41c37c5d9aa82f510376998352aa69dfcb886cb4b18ad80f/pyarrow-23.0.0-cp314-cp314-macosx_12_0_x86_64.whl", hash = "sha256:18ec84e839b493c3886b9b5e06861962ab4adfaeb79b81c76afbd8d84c7d5fda", size = 35819211, upload-time = "2026-01-18T16:18:13.94Z" }, + { url = "https://files.pythonhosted.org/packages/e0/e5/ee82af693cb7b5b2b74f6524cdfede0e6ace779d7720ebca24d68b57c36b/pyarrow-23.0.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:e438dd3f33894e34fd02b26bd12a32d30d006f5852315f611aa4add6c7fab4bc", size = 44502313, upload-time = "2026-01-18T16:18:20.367Z" }, + { url = "https://files.pythonhosted.org/packages/9c/86/95c61ad82236495f3c31987e85135926ba3ec7f3819296b70a68d8066b49/pyarrow-23.0.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:a244279f240c81f135631be91146d7fa0e9e840e1dfed2aba8483eba25cd98e6", size = 47585886, upload-time = "2026-01-18T16:18:27.544Z" }, + { url = "https://files.pythonhosted.org/packages/bb/6e/a72d901f305201802f016d015de1e05def7706fff68a1dedefef5dc7eff7/pyarrow-23.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:c4692e83e42438dba512a570c6eaa42be2f8b6c0f492aea27dec54bdc495103a", size = 48207055, upload-time = "2026-01-18T16:18:35.425Z" }, + { url = "https://files.pythonhosted.org/packages/f9/e5/5de029c537630ca18828db45c30e2a78da03675a70ac6c3528203c416fe3/pyarrow-23.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ae7f30f898dfe44ea69654a35c93e8da4cef6606dc4c72394068fd95f8e9f54a", size = 50619812, upload-time = "2026-01-18T16:18:43.553Z" }, + { url = "https://files.pythonhosted.org/packages/59/8d/2af846cd2412e67a087f5bda4a8e23dfd4ebd570f777db2e8686615dafc1/pyarrow-23.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:5b86bb649e4112fb0614294b7d0a175c7513738876b89655605ebb87c804f861", size = 28263851, upload-time = "2026-01-18T16:19:38.567Z" }, + { url = "https://files.pythonhosted.org/packages/7b/7f/caab863e587041156f6786c52e64151b7386742c8c27140f637176e9230e/pyarrow-23.0.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:ebc017d765d71d80a3f8584ca0566b53e40464586585ac64176115baa0ada7d3", size = 34463240, upload-time = "2026-01-18T16:18:49.755Z" }, + { url = "https://files.pythonhosted.org/packages/c9/fa/3a5b8c86c958e83622b40865e11af0857c48ec763c11d472c87cd518283d/pyarrow-23.0.0-cp314-cp314t-macosx_12_0_x86_64.whl", hash = "sha256:0800cc58a6d17d159df823f87ad66cefebf105b982493d4bad03ee7fab84b993", size = 35935712, upload-time = "2026-01-18T16:18:55.626Z" }, + { url = "https://files.pythonhosted.org/packages/c5/08/17a62078fc1a53decb34a9aa79cf9009efc74d63d2422e5ade9fed2f99e3/pyarrow-23.0.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:3a7c68c722da9bb5b0f8c10e3eae71d9825a4b429b40b32709df5d1fa55beb3d", size = 44503523, upload-time = "2026-01-18T16:19:03.958Z" }, + { url = "https://files.pythonhosted.org/packages/cc/70/84d45c74341e798aae0323d33b7c39194e23b1abc439ceaf60a68a7a969a/pyarrow-23.0.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:bd5556c24622df90551063ea41f559b714aa63ca953db884cfb958559087a14e", size = 47542490, upload-time = "2026-01-18T16:19:11.208Z" }, + { url = "https://files.pythonhosted.org/packages/61/d9/d1274b0e6f19e235de17441e53224f4716574b2ca837022d55702f24d71d/pyarrow-23.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:54810f6e6afc4ffee7c2e0051b61722fbea9a4961b46192dcfae8ea12fa09059", size = 48233605, upload-time = "2026-01-18T16:19:19.544Z" }, + { url = "https://files.pythonhosted.org/packages/39/07/e4e2d568cb57543d84482f61e510732820cddb0f47c4bb7df629abfed852/pyarrow-23.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:14de7d48052cf4b0ed174533eafa3cfe0711b8076ad70bede32cf59f744f0d7c", size = 50603979, upload-time = "2026-01-18T16:19:26.717Z" }, + { url = "https://files.pythonhosted.org/packages/72/9c/47693463894b610f8439b2e970b82ef81e9599c757bf2049365e40ff963c/pyarrow-23.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:427deac1f535830a744a4f04a6ac183a64fcac4341b3f618e693c41b7b98d2b0", size = 28338905, upload-time = "2026-01-18T16:19:32.93Z" }, +] + +[[package]] +name = "pyasn1" +version = "0.6.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fe/b6/6e630dff89739fcd427e3f72b3d905ce0acb85a45d4ec3e2678718a3487f/pyasn1-0.6.2.tar.gz", hash = "sha256:9b59a2b25ba7e4f8197db7686c09fb33e658b98339fadb826e9512629017833b", size = 146586, upload-time = "2026-01-16T18:04:18.534Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/44/b5/a96872e5184f354da9c84ae119971a0a4c221fe9b27a4d94bd43f2596727/pyasn1-0.6.2-py3-none-any.whl", hash = "sha256:1eb26d860996a18e9b6ed05e7aae0e9fc21619fcee6af91cca9bad4fbea224bf", size = 83371, upload-time = "2026-01-16T18:04:17.174Z" }, +] + +[[package]] +name = "pyasn1-modules" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyasn1" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e9/e6/78ebbb10a8c8e4b61a59249394a4a594c1a7af95593dc933a349c8d00964/pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6", size = 307892, upload-time = "2025-03-28T02:41:22.17Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/47/8d/d529b5d697919ba8c11ad626e835d4039be708a35b0d22de83a269a6682c/pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a", size = 181259, upload-time = "2025-03-28T02:41:19.028Z" }, +] + +[[package]] +name = "pybase64" +version = "1.4.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/b8/4ed5c7ad5ec15b08d35cc79ace6145d5c1ae426e46435f4987379439dfea/pybase64-1.4.3.tar.gz", hash = "sha256:c2ed274c9e0ba9c8f9c4083cfe265e66dd679126cd9c2027965d807352f3f053", size = 137272, upload-time = "2025-12-06T13:27:04.013Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/86/a7/efcaa564f091a2af7f18a83c1c4875b1437db56ba39540451dc85d56f653/pybase64-1.4.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:18d85e5ab8b986bb32d8446aca6258ed80d1bafe3603c437690b352c648f5967", size = 38167, upload-time = "2025-12-06T13:23:16.821Z" }, + { url = "https://files.pythonhosted.org/packages/db/c7/c7ad35adff2d272bf2930132db2b3eea8c44bb1b1f64eb9b2b8e57cde7b4/pybase64-1.4.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3f5791a3491d116d0deaf4d83268f48792998519698f8751efb191eac84320e9", size = 31673, upload-time = "2025-12-06T13:23:17.835Z" }, + { url = "https://files.pythonhosted.org/packages/43/1b/9a8cab0042b464e9a876d5c65fe5127445a2436da36fda64899b119b1a1b/pybase64-1.4.3-cp312-cp312-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:f0b3f200c3e06316f6bebabd458b4e4bcd4c2ca26af7c0c766614d91968dee27", size = 68210, upload-time = "2025-12-06T13:23:18.813Z" }, + { url = "https://files.pythonhosted.org/packages/62/f7/965b79ff391ad208b50e412b5d3205ccce372a2d27b7218ae86d5295b105/pybase64-1.4.3-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:bb632edfd132b3eaf90c39c89aa314beec4e946e210099b57d40311f704e11d4", size = 71599, upload-time = "2025-12-06T13:23:20.195Z" }, + { url = "https://files.pythonhosted.org/packages/03/4b/a3b5175130b3810bbb8ccfa1edaadbd3afddb9992d877c8a1e2f274b476e/pybase64-1.4.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:356ef1d74648ce997f5a777cf8f1aefecc1c0b4fe6201e0ef3ec8a08170e1b54", size = 59922, upload-time = "2025-12-06T13:23:21.487Z" }, + { url = "https://files.pythonhosted.org/packages/da/5d/c38d1572027fc601b62d7a407721688b04b4d065d60ca489912d6893e6cf/pybase64-1.4.3-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.whl", hash = "sha256:c48361f90db32bacaa5518419d4eb9066ba558013aaf0c7781620279ecddaeb9", size = 56712, upload-time = "2025-12-06T13:23:22.77Z" }, + { url = "https://files.pythonhosted.org/packages/e7/d4/4e04472fef485caa8f561d904d4d69210a8f8fc1608ea15ebd9012b92655/pybase64-1.4.3-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:702bcaa16ae02139d881aeaef5b1c8ffb4a3fae062fe601d1e3835e10310a517", size = 59300, upload-time = "2025-12-06T13:23:24.543Z" }, + { url = "https://files.pythonhosted.org/packages/86/e7/16e29721b86734b881d09b7e23dfd7c8408ad01a4f4c7525f3b1088e25ec/pybase64-1.4.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:53d0ffe1847b16b647c6413d34d1de08942b7724273dd57e67dcbdb10c574045", size = 60278, upload-time = "2025-12-06T13:23:25.608Z" }, + { url = "https://files.pythonhosted.org/packages/b1/02/18515f211d7c046be32070709a8efeeef8a0203de4fd7521e6b56404731b/pybase64-1.4.3-cp312-cp312-manylinux_2_31_riscv64.whl", hash = "sha256:9a1792e8b830a92736dae58f0c386062eb038dfe8004fb03ba33b6083d89cd43", size = 54817, upload-time = "2025-12-06T13:23:26.633Z" }, + { url = "https://files.pythonhosted.org/packages/e7/be/14e29d8e1a481dbff151324c96dd7b5d2688194bb65dc8a00ca0e1ad1e86/pybase64-1.4.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1d468b1b1ac5ad84875a46eaa458663c3721e8be5f155ade356406848d3701f6", size = 58611, upload-time = "2025-12-06T13:23:27.684Z" }, + { url = "https://files.pythonhosted.org/packages/b4/8a/a2588dfe24e1bbd742a554553778ab0d65fdf3d1c9a06d10b77047d142aa/pybase64-1.4.3-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:e97b7bdbd62e71898cd542a6a9e320d9da754ff3ebd02cb802d69087ee94d468", size = 52404, upload-time = "2025-12-06T13:23:28.714Z" }, + { url = "https://files.pythonhosted.org/packages/27/fc/afcda7445bebe0cbc38cafdd7813234cdd4fc5573ff067f1abf317bb0cec/pybase64-1.4.3-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b33aeaa780caaa08ffda87fc584d5eab61e3d3bbb5d86ead02161dc0c20d04bc", size = 68817, upload-time = "2025-12-06T13:23:30.079Z" }, + { url = "https://files.pythonhosted.org/packages/d3/3a/87c3201e555ed71f73e961a787241a2438c2bbb2ca8809c29ddf938a3157/pybase64-1.4.3-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:1c0efcf78f11cf866bed49caa7b97552bc4855a892f9cc2372abcd3ed0056f0d", size = 57854, upload-time = "2025-12-06T13:23:31.17Z" }, + { url = "https://files.pythonhosted.org/packages/fd/7d/931c2539b31a7b375e7d595b88401eeb5bd6c5ce1059c9123f9b608aaa14/pybase64-1.4.3-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:66e3791f2ed725a46593f8bd2761ff37d01e2cdad065b1dceb89066f476e50c6", size = 54333, upload-time = "2025-12-06T13:23:32.422Z" }, + { url = "https://files.pythonhosted.org/packages/de/5e/537601e02cc01f27e9d75f440f1a6095b8df44fc28b1eef2cd739aea8cec/pybase64-1.4.3-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:72bb0b6bddadab26e1b069bb78e83092711a111a80a0d6b9edcb08199ad7299b", size = 56492, upload-time = "2025-12-06T13:23:33.515Z" }, + { url = "https://files.pythonhosted.org/packages/96/97/2a2e57acf8f5c9258d22aba52e71f8050e167b29ed2ee1113677c1b600c1/pybase64-1.4.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5b3365dbcbcdb0a294f0f50af0c0a16b27a232eddeeb0bceeefd844ef30d2a23", size = 70974, upload-time = "2025-12-06T13:23:36.27Z" }, + { url = "https://files.pythonhosted.org/packages/75/2e/a9e28941c6dab6f06e6d3f6783d3373044be9b0f9a9d3492c3d8d2260ac0/pybase64-1.4.3-cp312-cp312-win32.whl", hash = "sha256:7bca1ed3a5df53305c629ca94276966272eda33c0d71f862d2d3d043f1e1b91a", size = 33686, upload-time = "2025-12-06T13:23:37.848Z" }, + { url = "https://files.pythonhosted.org/packages/83/e3/507ab649d8c3512c258819c51d25c45d6e29d9ca33992593059e7b646a33/pybase64-1.4.3-cp312-cp312-win_amd64.whl", hash = "sha256:9f2da8f56d9b891b18b4daf463a0640eae45a80af548ce435be86aa6eff3603b", size = 35833, upload-time = "2025-12-06T13:23:38.877Z" }, + { url = "https://files.pythonhosted.org/packages/bc/8a/6eba66cd549a2fc74bb4425fd61b839ba0ab3022d3c401b8a8dc2cc00c7a/pybase64-1.4.3-cp312-cp312-win_arm64.whl", hash = "sha256:0631d8a2d035de03aa9bded029b9513e1fee8ed80b7ddef6b8e9389ffc445da0", size = 31185, upload-time = "2025-12-06T13:23:39.908Z" }, + { url = "https://files.pythonhosted.org/packages/3a/50/b7170cb2c631944388fe2519507fe3835a4054a6a12a43f43781dae82be1/pybase64-1.4.3-cp313-cp313-android_21_arm64_v8a.whl", hash = "sha256:ea4b785b0607d11950b66ce7c328f452614aefc9c6d3c9c28bae795dc7f072e1", size = 33901, upload-time = "2025-12-06T13:23:40.951Z" }, + { url = "https://files.pythonhosted.org/packages/48/8b/69f50578e49c25e0a26e3ee72c39884ff56363344b79fc3967f5af420ed6/pybase64-1.4.3-cp313-cp313-android_21_x86_64.whl", hash = "sha256:6a10b6330188c3026a8b9c10e6b9b3f2e445779cf16a4c453d51a072241c65a2", size = 40807, upload-time = "2025-12-06T13:23:42.006Z" }, + { url = "https://files.pythonhosted.org/packages/5c/8d/20b68f11adfc4c22230e034b65c71392e3e338b413bf713c8945bd2ccfb3/pybase64-1.4.3-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:27fdff227a0c0e182e0ba37a99109645188978b920dfb20d8b9c17eeee370d0d", size = 30932, upload-time = "2025-12-06T13:23:43.348Z" }, + { url = "https://files.pythonhosted.org/packages/f7/79/b1b550ac6bff51a4880bf6e089008b2e1ca16f2c98db5e039a08ac3ad157/pybase64-1.4.3-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:2a8204f1fdfec5aa4184249b51296c0de95445869920c88123978304aad42df1", size = 31394, upload-time = "2025-12-06T13:23:44.317Z" }, + { url = "https://files.pythonhosted.org/packages/82/70/b5d7c5932bf64ee1ec5da859fbac981930b6a55d432a603986c7f509c838/pybase64-1.4.3-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:874fc2a3777de6baf6aa921a7aa73b3be98295794bea31bd80568a963be30767", size = 38078, upload-time = "2025-12-06T13:23:45.348Z" }, + { url = "https://files.pythonhosted.org/packages/56/fe/e66fe373bce717c6858427670736d54297938dad61c5907517ab4106bd90/pybase64-1.4.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:2dc64a94a9d936b8e3449c66afabbaa521d3cc1a563d6bbaaa6ffa4535222e4b", size = 38158, upload-time = "2025-12-06T13:23:46.872Z" }, + { url = "https://files.pythonhosted.org/packages/80/a9/b806ed1dcc7aed2ea3dd4952286319e6f3a8b48615c8118f453948e01999/pybase64-1.4.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e48f86de1c145116ccf369a6e11720ce696c2ec02d285f440dfb57ceaa0a6cb4", size = 31672, upload-time = "2025-12-06T13:23:47.88Z" }, + { url = "https://files.pythonhosted.org/packages/1c/c9/24b3b905cf75e23a9a4deaf203b35ffcb9f473ac0e6d8257f91a05dfce62/pybase64-1.4.3-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:1d45c8fe8fe82b65c36b227bb4a2cf623d9ada16bed602ce2d3e18c35285b72a", size = 68244, upload-time = "2025-12-06T13:23:49.026Z" }, + { url = "https://files.pythonhosted.org/packages/f8/cd/d15b0c3e25e5859fab0416dc5b96d34d6bd2603c1c96a07bb2202b68ab92/pybase64-1.4.3-cp313-cp313-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:ad70c26ba091d8f5167e9d4e1e86a0483a5414805cdb598a813db635bd3be8b8", size = 71620, upload-time = "2025-12-06T13:23:50.081Z" }, + { url = "https://files.pythonhosted.org/packages/0d/31/4ca953cc3dcde2b3711d6bfd70a6f4ad2ca95a483c9698076ba605f1520f/pybase64-1.4.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e98310b7c43145221e7194ac9fa7fffc84763c87bfc5e2f59f9f92363475bdc1", size = 59930, upload-time = "2025-12-06T13:23:51.68Z" }, + { url = "https://files.pythonhosted.org/packages/60/55/e7f7bdcd0fd66e61dda08db158ffda5c89a306bbdaaf5a062fbe4e48f4a1/pybase64-1.4.3-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.whl", hash = "sha256:398685a76034e91485a28aeebcb49e64cd663212fd697b2497ac6dfc1df5e671", size = 56425, upload-time = "2025-12-06T13:23:52.732Z" }, + { url = "https://files.pythonhosted.org/packages/cb/65/b592c7f921e51ca1aca3af5b0d201a98666d0a36b930ebb67e7c2ed27395/pybase64-1.4.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:7e46400a6461187ccb52ed75b0045d937529e801a53a9cd770b350509f9e4d50", size = 59327, upload-time = "2025-12-06T13:23:53.856Z" }, + { url = "https://files.pythonhosted.org/packages/23/95/1613d2fb82dbb1548595ad4179f04e9a8451bfa18635efce18b631eabe3f/pybase64-1.4.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:1b62b9f2f291d94f5e0b76ab499790b7dcc78a009d4ceea0b0428770267484b6", size = 60294, upload-time = "2025-12-06T13:23:54.937Z" }, + { url = "https://files.pythonhosted.org/packages/9d/73/40431f37f7d1b3eab4673e7946ff1e8f5d6bd425ec257e834dae8a6fc7b0/pybase64-1.4.3-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:f30ceb5fa4327809dede614be586efcbc55404406d71e1f902a6fdcf322b93b2", size = 54858, upload-time = "2025-12-06T13:23:56.031Z" }, + { url = "https://files.pythonhosted.org/packages/a7/84/f6368bcaf9f743732e002a9858646fd7a54f428490d427dd6847c5cfe89e/pybase64-1.4.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0d5f18ed53dfa1d4cf8b39ee542fdda8e66d365940e11f1710989b3cf4a2ed66", size = 58629, upload-time = "2025-12-06T13:23:57.12Z" }, + { url = "https://files.pythonhosted.org/packages/43/75/359532f9adb49c6b546cafc65c46ed75e2ccc220d514ba81c686fbd83965/pybase64-1.4.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:119d31aa4b58b85a8ebd12b63c07681a138c08dfc2fe5383459d42238665d3eb", size = 52448, upload-time = "2025-12-06T13:23:58.298Z" }, + { url = "https://files.pythonhosted.org/packages/92/6c/ade2ba244c3f33ed920a7ed572ad772eb0b5f14480b72d629d0c9e739a40/pybase64-1.4.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:3cf0218b0e2f7988cf7d738a73b6a1d14f3be6ce249d7c0f606e768366df2cce", size = 68841, upload-time = "2025-12-06T13:23:59.886Z" }, + { url = "https://files.pythonhosted.org/packages/a0/51/b345139cd236be382f2d4d4453c21ee6299e14d2f759b668e23080f8663f/pybase64-1.4.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:12f4ee5e988bc5c0c1106b0d8fc37fb0508f12dab76bac1b098cb500d148da9d", size = 57910, upload-time = "2025-12-06T13:24:00.994Z" }, + { url = "https://files.pythonhosted.org/packages/1a/b8/9f84bdc4f1c4f0052489396403c04be2f9266a66b70c776001eaf0d78c1f/pybase64-1.4.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:937826bc7b6b95b594a45180e81dd4d99bd4dd4814a443170e399163f7ff3fb6", size = 54335, upload-time = "2025-12-06T13:24:02.046Z" }, + { url = "https://files.pythonhosted.org/packages/d0/c7/be63b617d284de46578a366da77ede39c8f8e815ed0d82c7c2acca560fab/pybase64-1.4.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:88995d1460971ef80b13e3e007afbe4b27c62db0508bc7250a2ab0a0b4b91362", size = 56486, upload-time = "2025-12-06T13:24:03.141Z" }, + { url = "https://files.pythonhosted.org/packages/5e/96/f252c8f9abd6ded3ef1ccd3cdbb8393a33798007f761b23df8de1a2480e6/pybase64-1.4.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:72326fe163385ed3e1e806dd579d47fde5d8a59e51297a60fc4e6cbc1b4fc4ed", size = 70978, upload-time = "2025-12-06T13:24:04.221Z" }, + { url = "https://files.pythonhosted.org/packages/af/51/0f5714af7aeef96e30f968e4371d75ad60558aaed3579d7c6c8f1c43c18a/pybase64-1.4.3-cp313-cp313-win32.whl", hash = "sha256:b1623730c7892cf5ed0d6355e375416be6ef8d53ab9b284f50890443175c0ac3", size = 33684, upload-time = "2025-12-06T13:24:05.29Z" }, + { url = "https://files.pythonhosted.org/packages/b6/ad/0cea830a654eb08563fb8214150ef57546ece1cc421c09035f0e6b0b5ea9/pybase64-1.4.3-cp313-cp313-win_amd64.whl", hash = "sha256:8369887590f1646a5182ca2fb29252509da7ae31d4923dbb55d3e09da8cc4749", size = 35832, upload-time = "2025-12-06T13:24:06.35Z" }, + { url = "https://files.pythonhosted.org/packages/b4/0d/eec2a8214989c751bc7b4cad1860eb2c6abf466e76b77508c0f488c96a37/pybase64-1.4.3-cp313-cp313-win_arm64.whl", hash = "sha256:860b86bca71e5f0237e2ab8b2d9c4c56681f3513b1bf3e2117290c1963488390", size = 31175, upload-time = "2025-12-06T13:24:07.419Z" }, + { url = "https://files.pythonhosted.org/packages/db/c9/e23463c1a2913686803ef76b1a5ae7e6fac868249a66e48253d17ad7232c/pybase64-1.4.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:eb51db4a9c93215135dccd1895dca078e8785c357fabd983c9f9a769f08989a9", size = 38497, upload-time = "2025-12-06T13:24:08.873Z" }, + { url = "https://files.pythonhosted.org/packages/71/83/343f446b4b7a7579bf6937d2d013d82f1a63057cf05558e391ab6039d7db/pybase64-1.4.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a03ef3f529d85fd46b89971dfb00c634d53598d20ad8908fb7482955c710329d", size = 32076, upload-time = "2025-12-06T13:24:09.975Z" }, + { url = "https://files.pythonhosted.org/packages/46/fc/cb64964c3b29b432f54d1bce5e7691d693e33bbf780555151969ffd95178/pybase64-1.4.3-cp313-cp313t-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:2e745f2ce760c6cf04d8a72198ef892015ddb89f6ceba489e383518ecbdb13ab", size = 72317, upload-time = "2025-12-06T13:24:11.129Z" }, + { url = "https://files.pythonhosted.org/packages/0a/b7/fab2240da6f4e1ad46f71fa56ec577613cf5df9dce2d5b4cfaa4edd0e365/pybase64-1.4.3-cp313-cp313t-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:6fac217cd9de8581a854b0ac734c50fd1fa4b8d912396c1fc2fce7c230efe3a7", size = 75534, upload-time = "2025-12-06T13:24:12.433Z" }, + { url = "https://files.pythonhosted.org/packages/91/3b/3e2f2b6e68e3d83ddb9fa799f3548fb7449765daec9bbd005a9fbe296d7f/pybase64-1.4.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:da1ee8fa04b283873de2d6e8fa5653e827f55b86bdf1a929c5367aaeb8d26f8a", size = 65399, upload-time = "2025-12-06T13:24:13.928Z" }, + { url = "https://files.pythonhosted.org/packages/6b/08/476ac5914c3b32e0274a2524fc74f01cbf4f4af4513d054e41574eb018f6/pybase64-1.4.3-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.whl", hash = "sha256:b0bf8e884ee822ca7b1448eeb97fa131628fe0ff42f60cae9962789bd562727f", size = 60487, upload-time = "2025-12-06T13:24:15.177Z" }, + { url = "https://files.pythonhosted.org/packages/f1/b8/618a92915330cc9cba7880299b546a1d9dab1a21fd6c0292ee44a4fe608c/pybase64-1.4.3-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:1bf749300382a6fd1f4f255b183146ef58f8e9cb2f44a077b3a9200dfb473a77", size = 63959, upload-time = "2025-12-06T13:24:16.854Z" }, + { url = "https://files.pythonhosted.org/packages/a5/52/af9d8d051652c3051862c442ec3861259c5cdb3fc69774bc701470bd2a59/pybase64-1.4.3-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:153a0e42329b92337664cfc356f2065248e6c9a1bd651bbcd6dcaf15145d3f06", size = 64874, upload-time = "2025-12-06T13:24:18.328Z" }, + { url = "https://files.pythonhosted.org/packages/e4/51/5381a7adf1f381bd184d33203692d3c57cf8ae9f250f380c3fecbdbe554b/pybase64-1.4.3-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:86ee56ac7f2184ca10217ed1c655c1a060273e233e692e9086da29d1ae1768db", size = 58572, upload-time = "2025-12-06T13:24:19.417Z" }, + { url = "https://files.pythonhosted.org/packages/e0/f0/578ee4ffce5818017de4fdf544e066c225bc435e73eb4793cde28a689d0b/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:0e71a4db76726bf830b47477e7d830a75c01b2e9b01842e787a0836b0ba741e3", size = 63636, upload-time = "2025-12-06T13:24:20.497Z" }, + { url = "https://files.pythonhosted.org/packages/b9/ad/8ae94814bf20159ea06310b742433e53d5820aa564c9fdf65bf2d79f8799/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:2ba7799ec88540acd9861b10551d24656ca3c2888ecf4dba2ee0a71544a8923f", size = 56193, upload-time = "2025-12-06T13:24:21.559Z" }, + { url = "https://files.pythonhosted.org/packages/d1/31/6438cfcc3d3f0fa84d229fa125c243d5094e72628e525dfefadf3bcc6761/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2860299e4c74315f5951f0cf3e72ba0f201c3356c8a68f95a3ab4e620baf44e9", size = 72655, upload-time = "2025-12-06T13:24:22.673Z" }, + { url = "https://files.pythonhosted.org/packages/a3/0d/2bbc9e9c3fc12ba8a6e261482f03a544aca524f92eae0b4908c0a10ba481/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:bb06015db9151f0c66c10aae8e3603adab6b6cd7d1f7335a858161d92fc29618", size = 62471, upload-time = "2025-12-06T13:24:23.8Z" }, + { url = "https://files.pythonhosted.org/packages/2c/0b/34d491e7f49c1dbdb322ea8da6adecda7c7cd70b6644557c6e4ca5c6f7c7/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:242512a070817272865d37c8909059f43003b81da31f616bb0c391ceadffe067", size = 58119, upload-time = "2025-12-06T13:24:24.994Z" }, + { url = "https://files.pythonhosted.org/packages/ce/17/c21d0cde2a6c766923ae388fc1f78291e1564b0d38c814b5ea8a0e5e081c/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:5d8277554a12d3e3eed6180ebda62786bf9fc8d7bb1ee00244258f4a87ca8d20", size = 60791, upload-time = "2025-12-06T13:24:26.046Z" }, + { url = "https://files.pythonhosted.org/packages/92/b2/eaa67038916a48de12b16f4c384bcc1b84b7ec731b23613cb05f27673294/pybase64-1.4.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f40b7ddd698fc1e13a4b64fbe405e4e0e1279e8197e37050e24154655f5f7c4e", size = 74701, upload-time = "2025-12-06T13:24:27.466Z" }, + { url = "https://files.pythonhosted.org/packages/42/10/abb7757c330bb869ebb95dab0c57edf5961ffbd6c095c8209cbbf75d117d/pybase64-1.4.3-cp313-cp313t-win32.whl", hash = "sha256:46d75c9387f354c5172582a9eaae153b53a53afeb9c19fcf764ea7038be3bd8b", size = 33965, upload-time = "2025-12-06T13:24:28.548Z" }, + { url = "https://files.pythonhosted.org/packages/63/a0/2d4e5a59188e9e6aed0903d580541aaea72dcbbab7bf50fb8b83b490b6c3/pybase64-1.4.3-cp313-cp313t-win_amd64.whl", hash = "sha256:d7344625591d281bec54e85cbfdab9e970f6219cac1570f2aa140b8c942ccb81", size = 36207, upload-time = "2025-12-06T13:24:29.646Z" }, + { url = "https://files.pythonhosted.org/packages/1f/05/95b902e8f567b4d4b41df768ccc438af618f8d111e54deaf57d2df46bd76/pybase64-1.4.3-cp313-cp313t-win_arm64.whl", hash = "sha256:28a3c60c55138e0028313f2eccd321fec3c4a0be75e57a8d3eb883730b1b0880", size = 31505, upload-time = "2025-12-06T13:24:30.687Z" }, + { url = "https://files.pythonhosted.org/packages/e4/80/4bd3dff423e5a91f667ca41982dc0b79495b90ec0c0f5d59aca513e50f8c/pybase64-1.4.3-cp314-cp314-android_24_arm64_v8a.whl", hash = "sha256:015bb586a1ea1467f69d57427abe587469392215f59db14f1f5c39b52fdafaf5", size = 33835, upload-time = "2025-12-06T13:24:31.767Z" }, + { url = "https://files.pythonhosted.org/packages/45/60/a94d94cc1e3057f602e0b483c9ebdaef40911d84a232647a2fe593ab77bb/pybase64-1.4.3-cp314-cp314-android_24_x86_64.whl", hash = "sha256:d101e3a516f837c3dcc0e5a0b7db09582ebf99ed670865223123fb2e5839c6c0", size = 40673, upload-time = "2025-12-06T13:24:32.82Z" }, + { url = "https://files.pythonhosted.org/packages/e3/71/cf62b261d431857e8e054537a5c3c24caafa331de30daede7b2c6c558501/pybase64-1.4.3-cp314-cp314-ios_13_0_arm64_iphoneos.whl", hash = "sha256:8f183ac925a48046abe047360fe3a1b28327afb35309892132fe1915d62fb282", size = 30939, upload-time = "2025-12-06T13:24:34.001Z" }, + { url = "https://files.pythonhosted.org/packages/24/3e/d12f92a3c1f7c6ab5d53c155bff9f1084ba997a37a39a4f781ccba9455f3/pybase64-1.4.3-cp314-cp314-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:30bf3558e24dcce4da5248dcf6d73792adfcf4f504246967e9db155be4c439ad", size = 31401, upload-time = "2025-12-06T13:24:35.11Z" }, + { url = "https://files.pythonhosted.org/packages/9b/3d/9c27440031fea0d05146f8b70a460feb95d8b4e3d9ca8f45c972efb4c3d3/pybase64-1.4.3-cp314-cp314-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:a674b419de318d2ce54387dd62646731efa32b4b590907800f0bd40675c1771d", size = 38075, upload-time = "2025-12-06T13:24:36.53Z" }, + { url = "https://files.pythonhosted.org/packages/4b/d4/6c0e0cf0efd53c254173fbcd84a3d8fcbf5e0f66622473da425becec32a5/pybase64-1.4.3-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:720104fd7303d07bac302be0ff8f7f9f126f2f45c1edb4f48fdb0ff267e69fe1", size = 38257, upload-time = "2025-12-06T13:24:38.049Z" }, + { url = "https://files.pythonhosted.org/packages/50/eb/27cb0b610d5cd70f5ad0d66c14ad21c04b8db930f7139818e8fbdc14df4d/pybase64-1.4.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:83f1067f73fa5afbc3efc0565cecc6ed53260eccddef2ebe43a8ce2b99ea0e0a", size = 31685, upload-time = "2025-12-06T13:24:40.327Z" }, + { url = "https://files.pythonhosted.org/packages/db/26/b136a4b65e5c94ff06217f7726478df3f31ab1c777c2c02cf698e748183f/pybase64-1.4.3-cp314-cp314-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:b51204d349a4b208287a8aa5b5422be3baa88abf6cc8ff97ccbda34919bbc857", size = 68460, upload-time = "2025-12-06T13:24:41.735Z" }, + { url = "https://files.pythonhosted.org/packages/68/6d/84ce50e7ee1ae79984d689e05a9937b2460d4efa1e5b202b46762fb9036c/pybase64-1.4.3-cp314-cp314-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:30f2fd53efecbdde4bdca73a872a68dcb0d1bf8a4560c70a3e7746df973e1ef3", size = 71688, upload-time = "2025-12-06T13:24:42.908Z" }, + { url = "https://files.pythonhosted.org/packages/e3/57/6743e420416c3ff1b004041c85eb0ebd9c50e9cf05624664bfa1dc8b5625/pybase64-1.4.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0932b0c5cfa617091fd74f17d24549ce5de3628791998c94ba57be808078eeaf", size = 60040, upload-time = "2025-12-06T13:24:44.37Z" }, + { url = "https://files.pythonhosted.org/packages/3b/68/733324e28068a89119af2921ce548e1c607cc5c17d354690fc51c302e326/pybase64-1.4.3-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.whl", hash = "sha256:acb61f5ab72bec808eb0d4ce8b87ec9f38d7d750cb89b1371c35eb8052a29f11", size = 56478, upload-time = "2025-12-06T13:24:45.815Z" }, + { url = "https://files.pythonhosted.org/packages/b5/9e/f3f4aa8cfe3357a3cdb0535b78eb032b671519d3ecc08c58c4c6b72b5a91/pybase64-1.4.3-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:2bc2d5bc15168f5c04c53bdfe5a1e543b2155f456ed1e16d7edce9ce73842021", size = 59463, upload-time = "2025-12-06T13:24:46.938Z" }, + { url = "https://files.pythonhosted.org/packages/aa/d1/53286038e1f0df1cf58abcf4a4a91b0f74ab44539c2547b6c31001ddd054/pybase64-1.4.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:8a7bc3cd23880bdca59758bcdd6f4ef0674f2393782763910a7466fab35ccb98", size = 60360, upload-time = "2025-12-06T13:24:48.039Z" }, + { url = "https://files.pythonhosted.org/packages/00/9a/5cc6ce95db2383d27ff4d790b8f8b46704d360d701ab77c4f655bcfaa6a7/pybase64-1.4.3-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:ad15acf618880d99792d71e3905b0e2508e6e331b76a1b34212fa0f11e01ad28", size = 54999, upload-time = "2025-12-06T13:24:49.547Z" }, + { url = "https://files.pythonhosted.org/packages/64/e7/c3c1d09c3d7ae79e3aa1358c6d912d6b85f29281e47aa94fc0122a415a2f/pybase64-1.4.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:448158d417139cb4851200e5fee62677ae51f56a865d50cda9e0d61bda91b116", size = 58736, upload-time = "2025-12-06T13:24:50.641Z" }, + { url = "https://files.pythonhosted.org/packages/db/d5/0baa08e3d8119b15b588c39f0d39fd10472f0372e3c54ca44649cbefa256/pybase64-1.4.3-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:9058c49b5a2f3e691b9db21d37eb349e62540f9f5fc4beabf8cbe3c732bead86", size = 52298, upload-time = "2025-12-06T13:24:51.791Z" }, + { url = "https://files.pythonhosted.org/packages/00/87/fc6f11474a1de7e27cd2acbb8d0d7508bda3efa73dfe91c63f968728b2a3/pybase64-1.4.3-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ce561724f6522907a66303aca27dce252d363fcd85884972d348f4403ba3011a", size = 69049, upload-time = "2025-12-06T13:24:53.253Z" }, + { url = "https://files.pythonhosted.org/packages/69/9d/7fb5566f669ac18b40aa5fc1c438e24df52b843c1bdc5da47d46d4c1c630/pybase64-1.4.3-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:63316560a94ac449fe86cb8b9e0a13714c659417e92e26a5cbf085cd0a0c838d", size = 57952, upload-time = "2025-12-06T13:24:54.342Z" }, + { url = "https://files.pythonhosted.org/packages/de/cc/ceb949232dbbd3ec4ee0190d1df4361296beceee9840390a63df8bc31784/pybase64-1.4.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:7ecd796f2ac0be7b73e7e4e232b8c16422014de3295d43e71d2b19fd4a4f5368", size = 54484, upload-time = "2025-12-06T13:24:55.774Z" }, + { url = "https://files.pythonhosted.org/packages/a7/69/659f3c8e6a5d7b753b9c42a4bd9c42892a0f10044e9c7351a4148d413a33/pybase64-1.4.3-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:d01e102a12fb2e1ed3dc11611c2818448626637857ec3994a9cf4809dfd23477", size = 56542, upload-time = "2025-12-06T13:24:57Z" }, + { url = "https://files.pythonhosted.org/packages/85/2c/29c9e6c9c82b72025f9676f9e82eb1fd2339ad038cbcbf8b9e2ac02798fc/pybase64-1.4.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ebff797a93c2345f22183f454fd8607a34d75eca5a3a4a969c1c75b304cee39d", size = 71045, upload-time = "2025-12-06T13:24:58.179Z" }, + { url = "https://files.pythonhosted.org/packages/b9/84/5a3dce8d7a0040a5c0c14f0fe1311cd8db872913fa04438071b26b0dac04/pybase64-1.4.3-cp314-cp314-win32.whl", hash = "sha256:28b2a1bb0828c0595dc1ea3336305cd97ff85b01c00d81cfce4f92a95fb88f56", size = 34200, upload-time = "2025-12-06T13:24:59.956Z" }, + { url = "https://files.pythonhosted.org/packages/57/bc/ce7427c12384adee115b347b287f8f3cf65860b824d74fe2c43e37e81c1f/pybase64-1.4.3-cp314-cp314-win_amd64.whl", hash = "sha256:33338d3888700ff68c3dedfcd49f99bfc3b887570206130926791e26b316b029", size = 36323, upload-time = "2025-12-06T13:25:01.708Z" }, + { url = "https://files.pythonhosted.org/packages/9a/1b/2b8ffbe9a96eef7e3f6a5a7be75995eebfb6faaedc85b6da6b233e50c778/pybase64-1.4.3-cp314-cp314-win_arm64.whl", hash = "sha256:62725669feb5acb186458da2f9353e88ae28ef66bb9c4c8d1568b12a790dfa94", size = 31584, upload-time = "2025-12-06T13:25:02.801Z" }, + { url = "https://files.pythonhosted.org/packages/ac/d8/6824c2e6fb45b8fa4e7d92e3c6805432d5edc7b855e3e8e1eedaaf6efb7c/pybase64-1.4.3-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:153fe29be038948d9372c3e77ae7d1cab44e4ba7d9aaf6f064dbeea36e45b092", size = 38601, upload-time = "2025-12-06T13:25:04.222Z" }, + { url = "https://files.pythonhosted.org/packages/ea/e5/10d2b3a4ad3a4850be2704a2f70cd9c0cf55725c8885679872d3bc846c67/pybase64-1.4.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:f7fe3decaa7c4a9e162327ec7bd81ce183d2b16f23c6d53b606649c6e0203e9e", size = 32078, upload-time = "2025-12-06T13:25:05.362Z" }, + { url = "https://files.pythonhosted.org/packages/43/04/8b15c34d3c2282f1c1b0850f1113a249401b618a382646a895170bc9b5e7/pybase64-1.4.3-cp314-cp314t-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:a5ae04ea114c86eb1da1f6e18d75f19e3b5ae39cb1d8d3cd87c29751a6a22780", size = 72474, upload-time = "2025-12-06T13:25:06.434Z" }, + { url = "https://files.pythonhosted.org/packages/42/00/f34b4d11278f8fdc68bc38f694a91492aa318f7c6f1bd7396197ac0f8b12/pybase64-1.4.3-cp314-cp314t-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:1755b3dce3a2a5c7d17ff6d4115e8bee4a1d5aeae74469db02e47c8f477147da", size = 75706, upload-time = "2025-12-06T13:25:07.636Z" }, + { url = "https://files.pythonhosted.org/packages/bb/5d/71747d4ad7fe16df4c4c852bdbdeb1f2cf35677b48d7c34d3011a7a6ad3a/pybase64-1.4.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fb852f900e27ffc4ec1896817535a0fa19610ef8875a096b59f21d0aa42ff172", size = 65589, upload-time = "2025-12-06T13:25:08.809Z" }, + { url = "https://files.pythonhosted.org/packages/49/b1/d1e82bd58805bb5a3a662864800bab83a83a36ba56e7e3b1706c708002a5/pybase64-1.4.3-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.whl", hash = "sha256:9cf21ea8c70c61eddab3421fbfce061fac4f2fb21f7031383005a1efdb13d0b9", size = 60670, upload-time = "2025-12-06T13:25:10.04Z" }, + { url = "https://files.pythonhosted.org/packages/15/67/16c609b7a13d1d9fc87eca12ba2dce5e67f949eeaab61a41bddff843cbb0/pybase64-1.4.3-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:afff11b331fdc27692fc75e85ae083340a35105cea1a3c4552139e2f0e0d174f", size = 64194, upload-time = "2025-12-06T13:25:11.48Z" }, + { url = "https://files.pythonhosted.org/packages/3c/11/37bc724e42960f0106c2d33dc957dcec8f760c91a908cc6c0df7718bc1a8/pybase64-1.4.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9a5143df542c1ce5c1f423874b948c4d689b3f05ec571f8792286197a39ba02", size = 64984, upload-time = "2025-12-06T13:25:12.645Z" }, + { url = "https://files.pythonhosted.org/packages/6e/66/b2b962a6a480dd5dae3029becf03ea1a650d326e39bf1c44ea3db78bb010/pybase64-1.4.3-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:d62e9861019ad63624b4a7914dff155af1cc5d6d79df3be14edcaedb5fdad6f9", size = 58750, upload-time = "2025-12-06T13:25:13.848Z" }, + { url = "https://files.pythonhosted.org/packages/2b/15/9b6d711035e29b18b2e1c03d47f41396d803d06ef15b6c97f45b75f73f04/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:84cfd4d92668ef5766cc42a9c9474b88960ac2b860767e6e7be255c6fddbd34a", size = 63816, upload-time = "2025-12-06T13:25:15.356Z" }, + { url = "https://files.pythonhosted.org/packages/b4/21/e2901381ed0df62e2308380f30d9c4d87d6b74e33a84faed3478d33a7197/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:60fc025437f9a7c2cc45e0c19ed68ed08ba672be2c5575fd9d98bdd8f01dd61f", size = 56348, upload-time = "2025-12-06T13:25:16.559Z" }, + { url = "https://files.pythonhosted.org/packages/c4/16/3d788388a178a0407aa814b976fe61bfa4af6760d9aac566e59da6e4a8b4/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:edc8446196f04b71d3af76c0bd1fe0a45066ac5bffecca88adb9626ee28c266f", size = 72842, upload-time = "2025-12-06T13:25:18.055Z" }, + { url = "https://files.pythonhosted.org/packages/a6/63/c15b1f8bd47ea48a5a2d52a4ec61f037062932ea6434ab916107b58e861e/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:e99f6fa6509c037794da57f906ade271f52276c956d00f748e5b118462021d48", size = 62651, upload-time = "2025-12-06T13:25:19.191Z" }, + { url = "https://files.pythonhosted.org/packages/bd/b8/f544a2e37c778d59208966d4ef19742a0be37c12fc8149ff34483c176616/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:d94020ef09f624d841aa9a3a6029df8cf65d60d7a6d5c8687579fa68bd679b65", size = 58295, upload-time = "2025-12-06T13:25:20.822Z" }, + { url = "https://files.pythonhosted.org/packages/03/99/1fae8a3b7ac181e36f6e7864a62d42d5b1f4fa7edf408c6711e28fba6b4d/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:f64ce70d89942a23602dee910dec9b48e5edf94351e1b378186b74fcc00d7f66", size = 60960, upload-time = "2025-12-06T13:25:22.099Z" }, + { url = "https://files.pythonhosted.org/packages/9d/9e/cd4c727742345ad8384569a4466f1a1428f4e5cc94d9c2ab2f53d30be3fe/pybase64-1.4.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:8ea99f56e45c469818b9781903be86ba4153769f007ba0655fa3b46dc332803d", size = 74863, upload-time = "2025-12-06T13:25:23.442Z" }, + { url = "https://files.pythonhosted.org/packages/28/86/a236ecfc5b494e1e922da149689f690abc84248c7c1358f5605b8c9fdd60/pybase64-1.4.3-cp314-cp314t-win32.whl", hash = "sha256:343b1901103cc72362fd1f842524e3bb24978e31aea7ff11e033af7f373f66ab", size = 34513, upload-time = "2025-12-06T13:25:24.592Z" }, + { url = "https://files.pythonhosted.org/packages/56/ce/ca8675f8d1352e245eb012bfc75429ee9cf1f21c3256b98d9a329d44bf0f/pybase64-1.4.3-cp314-cp314t-win_amd64.whl", hash = "sha256:57aff6f7f9dea6705afac9d706432049642de5b01080d3718acc23af87c5af76", size = 36702, upload-time = "2025-12-06T13:25:25.72Z" }, + { url = "https://files.pythonhosted.org/packages/3b/30/4a675864877397179b09b720ee5fcb1cf772cf7bebc831989aff0a5f79c1/pybase64-1.4.3-cp314-cp314t-win_arm64.whl", hash = "sha256:e906aa08d4331e799400829e0f5e4177e76a3281e8a4bc82ba114c6b30e405c9", size = 31904, upload-time = "2025-12-06T13:25:26.826Z" }, + { url = "https://files.pythonhosted.org/packages/17/45/92322aec1b6979e789b5710f73c59f2172bc37c8ce835305434796824b7b/pybase64-1.4.3-graalpy312-graalpy250_312_native-macosx_10_13_x86_64.whl", hash = "sha256:2baaa092f3475f3a9c87ac5198023918ea8b6c125f4c930752ab2cbe3cd1d520", size = 38746, upload-time = "2025-12-06T13:26:25.869Z" }, + { url = "https://files.pythonhosted.org/packages/11/94/f1a07402870388fdfc2ecec0c718111189732f7d0f2d7fe1386e19e8fad0/pybase64-1.4.3-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:cde13c0764b1af07a631729f26df019070dad759981d6975527b7e8ecb465b6c", size = 32573, upload-time = "2025-12-06T13:26:27.792Z" }, + { url = "https://files.pythonhosted.org/packages/fa/8f/43c3bb11ca9bacf81cb0b7a71500bb65b2eda6d5fe07433c09b543de97f3/pybase64-1.4.3-graalpy312-graalpy250_312_native-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:5c29a582b0ea3936d02bd6fe9bf674ab6059e6e45ab71c78404ab2c913224414", size = 43461, upload-time = "2025-12-06T13:26:28.906Z" }, + { url = "https://files.pythonhosted.org/packages/2d/4c/2a5258329200be57497d3972b5308558c6de42e3749c6cc2aa1cbe34b25a/pybase64-1.4.3-graalpy312-graalpy250_312_native-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:b6b664758c804fa919b4f1257aa8cf68e95db76fc331de5f70bfc3a34655afe1", size = 36058, upload-time = "2025-12-06T13:26:30.092Z" }, + { url = "https://files.pythonhosted.org/packages/ea/6d/41faa414cde66ec023b0ca8402a8f11cb61731c3dc27c082909cbbd1f929/pybase64-1.4.3-graalpy312-graalpy250_312_native-win_amd64.whl", hash = "sha256:f7537fa22ae56a0bf51e4b0ffc075926ad91c618e1416330939f7ef366b58e3b", size = 36231, upload-time = "2025-12-06T13:26:31.656Z" }, +] + +[[package]] +name = "pycparser" +version = "3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/7d/92392ff7815c21062bea51aa7b87d45576f649f16458d78b7cf94b9ab2e6/pycparser-3.0.tar.gz", hash = "sha256:600f49d217304a5902ac3c37e1281c9fe94e4d0489de643a9504c5cdfdfc6b29", size = 103492, upload-time = "2026-01-21T14:26:51.89Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl", hash = "sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992", size = 48172, upload-time = "2026-01-21T14:26:50.693Z" }, +] + +[[package]] +name = "pydantic" +version = "2.12.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-types" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/69/44/36f1a6e523abc58ae5f928898e4aca2e0ea509b5aa6f6f392a5d882be928/pydantic-2.12.5.tar.gz", hash = "sha256:4d351024c75c0f085a9febbb665ce8c0c6ec5d30e903bdb6394b7ede26aebb49", size = 821591, upload-time = "2025-11-26T15:11:46.471Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/87/b70ad306ebb6f9b585f114d0ac2137d792b48be34d732d60e597c2f8465a/pydantic-2.12.5-py3-none-any.whl", hash = "sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d", size = 463580, upload-time = "2025-11-26T15:11:44.605Z" }, +] + +[[package]] +name = "pydantic-core" +version = "2.41.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/71/70/23b021c950c2addd24ec408e9ab05d59b035b39d97cdc1130e1bce647bb6/pydantic_core-2.41.5.tar.gz", hash = "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e", size = 460952, upload-time = "2025-11-04T13:43:49.098Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5f/5d/5f6c63eebb5afee93bcaae4ce9a898f3373ca23df3ccaef086d0233a35a7/pydantic_core-2.41.5-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:f41a7489d32336dbf2199c8c0a215390a751c5b014c2c1c5366e817202e9cdf7", size = 2110990, upload-time = "2025-11-04T13:39:58.079Z" }, + { url = "https://files.pythonhosted.org/packages/aa/32/9c2e8ccb57c01111e0fd091f236c7b371c1bccea0fa85247ac55b1e2b6b6/pydantic_core-2.41.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:070259a8818988b9a84a449a2a7337c7f430a22acc0859c6b110aa7212a6d9c0", size = 1896003, upload-time = "2025-11-04T13:39:59.956Z" }, + { url = "https://files.pythonhosted.org/packages/68/b8/a01b53cb0e59139fbc9e4fda3e9724ede8de279097179be4ff31f1abb65a/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e96cea19e34778f8d59fe40775a7a574d95816eb150850a85a7a4c8f4b94ac69", size = 1919200, upload-time = "2025-11-04T13:40:02.241Z" }, + { url = "https://files.pythonhosted.org/packages/38/de/8c36b5198a29bdaade07b5985e80a233a5ac27137846f3bc2d3b40a47360/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed2e99c456e3fadd05c991f8f437ef902e00eedf34320ba2b0842bd1c3ca3a75", size = 2052578, upload-time = "2025-11-04T13:40:04.401Z" }, + { url = "https://files.pythonhosted.org/packages/00/b5/0e8e4b5b081eac6cb3dbb7e60a65907549a1ce035a724368c330112adfdd/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:65840751b72fbfd82c3c640cff9284545342a4f1eb1586ad0636955b261b0b05", size = 2208504, upload-time = "2025-11-04T13:40:06.072Z" }, + { url = "https://files.pythonhosted.org/packages/77/56/87a61aad59c7c5b9dc8caad5a41a5545cba3810c3e828708b3d7404f6cef/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e536c98a7626a98feb2d3eaf75944ef6f3dbee447e1f841eae16f2f0a72d8ddc", size = 2335816, upload-time = "2025-11-04T13:40:07.835Z" }, + { url = "https://files.pythonhosted.org/packages/0d/76/941cc9f73529988688a665a5c0ecff1112b3d95ab48f81db5f7606f522d3/pydantic_core-2.41.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eceb81a8d74f9267ef4081e246ffd6d129da5d87e37a77c9bde550cb04870c1c", size = 2075366, upload-time = "2025-11-04T13:40:09.804Z" }, + { url = "https://files.pythonhosted.org/packages/d3/43/ebef01f69baa07a482844faaa0a591bad1ef129253ffd0cdaa9d8a7f72d3/pydantic_core-2.41.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d38548150c39b74aeeb0ce8ee1d8e82696f4a4e16ddc6de7b1d8823f7de4b9b5", size = 2171698, upload-time = "2025-11-04T13:40:12.004Z" }, + { url = "https://files.pythonhosted.org/packages/b1/87/41f3202e4193e3bacfc2c065fab7706ebe81af46a83d3e27605029c1f5a6/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c23e27686783f60290e36827f9c626e63154b82b116d7fe9adba1fda36da706c", size = 2132603, upload-time = "2025-11-04T13:40:13.868Z" }, + { url = "https://files.pythonhosted.org/packages/49/7d/4c00df99cb12070b6bccdef4a195255e6020a550d572768d92cc54dba91a/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:482c982f814460eabe1d3bb0adfdc583387bd4691ef00b90575ca0d2b6fe2294", size = 2329591, upload-time = "2025-11-04T13:40:15.672Z" }, + { url = "https://files.pythonhosted.org/packages/cc/6a/ebf4b1d65d458f3cda6a7335d141305dfa19bdc61140a884d165a8a1bbc7/pydantic_core-2.41.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:bfea2a5f0b4d8d43adf9d7b8bf019fb46fdd10a2e5cde477fbcb9d1fa08c68e1", size = 2319068, upload-time = "2025-11-04T13:40:17.532Z" }, + { url = "https://files.pythonhosted.org/packages/49/3b/774f2b5cd4192d5ab75870ce4381fd89cf218af999515baf07e7206753f0/pydantic_core-2.41.5-cp312-cp312-win32.whl", hash = "sha256:b74557b16e390ec12dca509bce9264c3bbd128f8a2c376eaa68003d7f327276d", size = 1985908, upload-time = "2025-11-04T13:40:19.309Z" }, + { url = "https://files.pythonhosted.org/packages/86/45/00173a033c801cacf67c190fef088789394feaf88a98a7035b0e40d53dc9/pydantic_core-2.41.5-cp312-cp312-win_amd64.whl", hash = "sha256:1962293292865bca8e54702b08a4f26da73adc83dd1fcf26fbc875b35d81c815", size = 2020145, upload-time = "2025-11-04T13:40:21.548Z" }, + { url = "https://files.pythonhosted.org/packages/f9/22/91fbc821fa6d261b376a3f73809f907cec5ca6025642c463d3488aad22fb/pydantic_core-2.41.5-cp312-cp312-win_arm64.whl", hash = "sha256:1746d4a3d9a794cacae06a5eaaccb4b8643a131d45fbc9af23e353dc0a5ba5c3", size = 1976179, upload-time = "2025-11-04T13:40:23.393Z" }, + { url = "https://files.pythonhosted.org/packages/87/06/8806241ff1f70d9939f9af039c6c35f2360cf16e93c2ca76f184e76b1564/pydantic_core-2.41.5-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9", size = 2120403, upload-time = "2025-11-04T13:40:25.248Z" }, + { url = "https://files.pythonhosted.org/packages/94/02/abfa0e0bda67faa65fef1c84971c7e45928e108fe24333c81f3bfe35d5f5/pydantic_core-2.41.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34", size = 1896206, upload-time = "2025-11-04T13:40:27.099Z" }, + { url = "https://files.pythonhosted.org/packages/15/df/a4c740c0943e93e6500f9eb23f4ca7ec9bf71b19e608ae5b579678c8d02f/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0", size = 1919307, upload-time = "2025-11-04T13:40:29.806Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e3/6324802931ae1d123528988e0e86587c2072ac2e5394b4bc2bc34b61ff6e/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33", size = 2063258, upload-time = "2025-11-04T13:40:33.544Z" }, + { url = "https://files.pythonhosted.org/packages/c9/d4/2230d7151d4957dd79c3044ea26346c148c98fbf0ee6ebd41056f2d62ab5/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e", size = 2214917, upload-time = "2025-11-04T13:40:35.479Z" }, + { url = "https://files.pythonhosted.org/packages/e6/9f/eaac5df17a3672fef0081b6c1bb0b82b33ee89aa5cec0d7b05f52fd4a1fa/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2", size = 2332186, upload-time = "2025-11-04T13:40:37.436Z" }, + { url = "https://files.pythonhosted.org/packages/cf/4e/35a80cae583a37cf15604b44240e45c05e04e86f9cfd766623149297e971/pydantic_core-2.41.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586", size = 2073164, upload-time = "2025-11-04T13:40:40.289Z" }, + { url = "https://files.pythonhosted.org/packages/bf/e3/f6e262673c6140dd3305d144d032f7bd5f7497d3871c1428521f19f9efa2/pydantic_core-2.41.5-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d", size = 2179146, upload-time = "2025-11-04T13:40:42.809Z" }, + { url = "https://files.pythonhosted.org/packages/75/c7/20bd7fc05f0c6ea2056a4565c6f36f8968c0924f19b7d97bbfea55780e73/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740", size = 2137788, upload-time = "2025-11-04T13:40:44.752Z" }, + { url = "https://files.pythonhosted.org/packages/3a/8d/34318ef985c45196e004bc46c6eab2eda437e744c124ef0dbe1ff2c9d06b/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e", size = 2340133, upload-time = "2025-11-04T13:40:46.66Z" }, + { url = "https://files.pythonhosted.org/packages/9c/59/013626bf8c78a5a5d9350d12e7697d3d4de951a75565496abd40ccd46bee/pydantic_core-2.41.5-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858", size = 2324852, upload-time = "2025-11-04T13:40:48.575Z" }, + { url = "https://files.pythonhosted.org/packages/1a/d9/c248c103856f807ef70c18a4f986693a46a8ffe1602e5d361485da502d20/pydantic_core-2.41.5-cp313-cp313-win32.whl", hash = "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36", size = 1994679, upload-time = "2025-11-04T13:40:50.619Z" }, + { url = "https://files.pythonhosted.org/packages/9e/8b/341991b158ddab181cff136acd2552c9f35bd30380422a639c0671e99a91/pydantic_core-2.41.5-cp313-cp313-win_amd64.whl", hash = "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11", size = 2019766, upload-time = "2025-11-04T13:40:52.631Z" }, + { url = "https://files.pythonhosted.org/packages/73/7d/f2f9db34af103bea3e09735bb40b021788a5e834c81eedb541991badf8f5/pydantic_core-2.41.5-cp313-cp313-win_arm64.whl", hash = "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd", size = 1981005, upload-time = "2025-11-04T13:40:54.734Z" }, + { url = "https://files.pythonhosted.org/packages/ea/28/46b7c5c9635ae96ea0fbb779e271a38129df2550f763937659ee6c5dbc65/pydantic_core-2.41.5-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a", size = 2119622, upload-time = "2025-11-04T13:40:56.68Z" }, + { url = "https://files.pythonhosted.org/packages/74/1a/145646e5687e8d9a1e8d09acb278c8535ebe9e972e1f162ed338a622f193/pydantic_core-2.41.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14", size = 1891725, upload-time = "2025-11-04T13:40:58.807Z" }, + { url = "https://files.pythonhosted.org/packages/23/04/e89c29e267b8060b40dca97bfc64a19b2a3cf99018167ea1677d96368273/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1", size = 1915040, upload-time = "2025-11-04T13:41:00.853Z" }, + { url = "https://files.pythonhosted.org/packages/84/a3/15a82ac7bd97992a82257f777b3583d3e84bdb06ba6858f745daa2ec8a85/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66", size = 2063691, upload-time = "2025-11-04T13:41:03.504Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/0046701313c6ef08c0c1cf0e028c67c770a4e1275ca73131563c5f2a310a/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869", size = 2213897, upload-time = "2025-11-04T13:41:05.804Z" }, + { url = "https://files.pythonhosted.org/packages/8a/cd/6bac76ecd1b27e75a95ca3a9a559c643b3afcd2dd62086d4b7a32a18b169/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2", size = 2333302, upload-time = "2025-11-04T13:41:07.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/d2/ef2074dc020dd6e109611a8be4449b98cd25e1b9b8a303c2f0fca2f2bcf7/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375", size = 2064877, upload-time = "2025-11-04T13:41:09.827Z" }, + { url = "https://files.pythonhosted.org/packages/18/66/e9db17a9a763d72f03de903883c057b2592c09509ccfe468187f2a2eef29/pydantic_core-2.41.5-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553", size = 2180680, upload-time = "2025-11-04T13:41:12.379Z" }, + { url = "https://files.pythonhosted.org/packages/d3/9e/3ce66cebb929f3ced22be85d4c2399b8e85b622db77dad36b73c5387f8f8/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90", size = 2138960, upload-time = "2025-11-04T13:41:14.627Z" }, + { url = "https://files.pythonhosted.org/packages/a6/62/205a998f4327d2079326b01abee48e502ea739d174f0a89295c481a2272e/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07", size = 2339102, upload-time = "2025-11-04T13:41:16.868Z" }, + { url = "https://files.pythonhosted.org/packages/3c/0d/f05e79471e889d74d3d88f5bd20d0ed189ad94c2423d81ff8d0000aab4ff/pydantic_core-2.41.5-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb", size = 2326039, upload-time = "2025-11-04T13:41:18.934Z" }, + { url = "https://files.pythonhosted.org/packages/ec/e1/e08a6208bb100da7e0c4b288eed624a703f4d129bde2da475721a80cab32/pydantic_core-2.41.5-cp314-cp314-win32.whl", hash = "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23", size = 1995126, upload-time = "2025-11-04T13:41:21.418Z" }, + { url = "https://files.pythonhosted.org/packages/48/5d/56ba7b24e9557f99c9237e29f5c09913c81eeb2f3217e40e922353668092/pydantic_core-2.41.5-cp314-cp314-win_amd64.whl", hash = "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf", size = 2015489, upload-time = "2025-11-04T13:41:24.076Z" }, + { url = "https://files.pythonhosted.org/packages/4e/bb/f7a190991ec9e3e0ba22e4993d8755bbc4a32925c0b5b42775c03e8148f9/pydantic_core-2.41.5-cp314-cp314-win_arm64.whl", hash = "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0", size = 1977288, upload-time = "2025-11-04T13:41:26.33Z" }, + { url = "https://files.pythonhosted.org/packages/92/ed/77542d0c51538e32e15afe7899d79efce4b81eee631d99850edc2f5e9349/pydantic_core-2.41.5-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a", size = 2120255, upload-time = "2025-11-04T13:41:28.569Z" }, + { url = "https://files.pythonhosted.org/packages/bb/3d/6913dde84d5be21e284439676168b28d8bbba5600d838b9dca99de0fad71/pydantic_core-2.41.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3", size = 1863760, upload-time = "2025-11-04T13:41:31.055Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f0/e5e6b99d4191da102f2b0eb9687aaa7f5bea5d9964071a84effc3e40f997/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c", size = 1878092, upload-time = "2025-11-04T13:41:33.21Z" }, + { url = "https://files.pythonhosted.org/packages/71/48/36fb760642d568925953bcc8116455513d6e34c4beaa37544118c36aba6d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612", size = 2053385, upload-time = "2025-11-04T13:41:35.508Z" }, + { url = "https://files.pythonhosted.org/packages/20/25/92dc684dd8eb75a234bc1c764b4210cf2646479d54b47bf46061657292a8/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d", size = 2218832, upload-time = "2025-11-04T13:41:37.732Z" }, + { url = "https://files.pythonhosted.org/packages/e2/09/f53e0b05023d3e30357d82eb35835d0f6340ca344720a4599cd663dca599/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9", size = 2327585, upload-time = "2025-11-04T13:41:40Z" }, + { url = "https://files.pythonhosted.org/packages/aa/4e/2ae1aa85d6af35a39b236b1b1641de73f5a6ac4d5a7509f77b814885760c/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660", size = 2041078, upload-time = "2025-11-04T13:41:42.323Z" }, + { url = "https://files.pythonhosted.org/packages/cd/13/2e215f17f0ef326fc72afe94776edb77525142c693767fc347ed6288728d/pydantic_core-2.41.5-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9", size = 2173914, upload-time = "2025-11-04T13:41:45.221Z" }, + { url = "https://files.pythonhosted.org/packages/02/7a/f999a6dcbcd0e5660bc348a3991c8915ce6599f4f2c6ac22f01d7a10816c/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3", size = 2129560, upload-time = "2025-11-04T13:41:47.474Z" }, + { url = "https://files.pythonhosted.org/packages/3a/b1/6c990ac65e3b4c079a4fb9f5b05f5b013afa0f4ed6780a3dd236d2cbdc64/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf", size = 2329244, upload-time = "2025-11-04T13:41:49.992Z" }, + { url = "https://files.pythonhosted.org/packages/d9/02/3c562f3a51afd4d88fff8dffb1771b30cfdfd79befd9883ee094f5b6c0d8/pydantic_core-2.41.5-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470", size = 2331955, upload-time = "2025-11-04T13:41:54.079Z" }, + { url = "https://files.pythonhosted.org/packages/5c/96/5fb7d8c3c17bc8c62fdb031c47d77a1af698f1d7a406b0f79aaa1338f9ad/pydantic_core-2.41.5-cp314-cp314t-win32.whl", hash = "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa", size = 1988906, upload-time = "2025-11-04T13:41:56.606Z" }, + { url = "https://files.pythonhosted.org/packages/22/ed/182129d83032702912c2e2d8bbe33c036f342cc735737064668585dac28f/pydantic_core-2.41.5-cp314-cp314t-win_amd64.whl", hash = "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c", size = 1981607, upload-time = "2025-11-04T13:41:58.889Z" }, + { url = "https://files.pythonhosted.org/packages/9f/ed/068e41660b832bb0b1aa5b58011dea2a3fe0ba7861ff38c4d4904c1c1a99/pydantic_core-2.41.5-cp314-cp314t-win_arm64.whl", hash = "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008", size = 1974769, upload-time = "2025-11-04T13:42:01.186Z" }, + { url = "https://files.pythonhosted.org/packages/09/32/59b0c7e63e277fa7911c2fc70ccfb45ce4b98991e7ef37110663437005af/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_10_12_x86_64.whl", hash = "sha256:7da7087d756b19037bc2c06edc6c170eeef3c3bafcb8f532ff17d64dc427adfd", size = 2110495, upload-time = "2025-11-04T13:42:49.689Z" }, + { url = "https://files.pythonhosted.org/packages/aa/81/05e400037eaf55ad400bcd318c05bb345b57e708887f07ddb2d20e3f0e98/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:aabf5777b5c8ca26f7824cb4a120a740c9588ed58df9b2d196ce92fba42ff8dc", size = 1915388, upload-time = "2025-11-04T13:42:52.215Z" }, + { url = "https://files.pythonhosted.org/packages/6e/0d/e3549b2399f71d56476b77dbf3cf8937cec5cd70536bdc0e374a421d0599/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c007fe8a43d43b3969e8469004e9845944f1a80e6acd47c150856bb87f230c56", size = 1942879, upload-time = "2025-11-04T13:42:56.483Z" }, + { url = "https://files.pythonhosted.org/packages/f7/07/34573da085946b6a313d7c42f82f16e8920bfd730665de2d11c0c37a74b5/pydantic_core-2.41.5-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:76d0819de158cd855d1cbb8fcafdf6f5cf1eb8e470abe056d5d161106e38062b", size = 2139017, upload-time = "2025-11-04T13:42:59.471Z" }, +] + +[[package]] +name = "pydantic-settings" +version = "2.12.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/43/4b/ac7e0aae12027748076d72a8764ff1c9d82ca75a7a52622e67ed3f765c54/pydantic_settings-2.12.0.tar.gz", hash = "sha256:005538ef951e3c2a68e1c08b292b5f2e71490def8589d4221b95dab00dafcfd0", size = 194184, upload-time = "2025-11-10T14:25:47.013Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/60/5d4751ba3f4a40a6891f24eec885f51afd78d208498268c734e256fb13c4/pydantic_settings-2.12.0-py3-none-any.whl", hash = "sha256:fddb9fd99a5b18da837b29710391e945b1e30c135477f484084ee513adb93809", size = 51880, upload-time = "2025-11-10T14:25:45.546Z" }, +] + +[[package]] +name = "pydeck" +version = "0.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jinja2" }, + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/ca/40e14e196864a0f61a92abb14d09b3d3da98f94ccb03b49cf51688140dab/pydeck-0.9.1.tar.gz", hash = "sha256:f74475ae637951d63f2ee58326757f8d4f9cd9f2a457cf42950715003e2cb605", size = 3832240, upload-time = "2024-05-10T15:36:21.153Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ab/4c/b888e6cf58bd9db9c93f40d1c6be8283ff49d88919231afe93a6bcf61626/pydeck-0.9.1-py2.py3-none-any.whl", hash = "sha256:b3f75ba0d273fc917094fa61224f3f6076ca8752b93d46faf3bcfd9f9d59b038", size = 6900403, upload-time = "2024-05-10T15:36:17.36Z" }, +] + +[[package]] +name = "pygments" +version = "2.19.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631, upload-time = "2025-06-21T13:39:12.283Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" }, +] + +[[package]] +name = "pyjwt" +version = "2.10.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e7/46/bd74733ff231675599650d3e47f361794b22ef3e3770998dda30d3b63726/pyjwt-2.10.1.tar.gz", hash = "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953", size = 87785, upload-time = "2024-11-28T03:43:29.933Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/61/ad/689f02752eeec26aed679477e80e632ef1b682313be70793d798c1d5fc8f/PyJWT-2.10.1-py3-none-any.whl", hash = "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb", size = 22997, upload-time = "2024-11-28T03:43:27.893Z" }, +] + +[package.optional-dependencies] +crypto = [ + { name = "cryptography" }, +] + +[[package]] +name = "pymupdf" +version = "1.26.7" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/48/d6/09b28f027b510838559f7748807192149c419b30cb90e6d5f0cf916dc9dc/pymupdf-1.26.7.tar.gz", hash = "sha256:71add8bdc8eb1aaa207c69a13400693f06ad9b927bea976f5d5ab9df0bb489c3", size = 84327033, upload-time = "2025-12-11T21:48:50.694Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/35/cd74cea1787b2247702ef8522186bdef32e9cb30a099e6bb864627ef6045/pymupdf-1.26.7-cp310-abi3-macosx_10_9_x86_64.whl", hash = "sha256:07085718dfdae5ab83b05eb5eb397f863bcc538fe05135318a01ea353e7a1353", size = 23179369, upload-time = "2025-12-11T21:47:21.587Z" }, + { url = "https://files.pythonhosted.org/packages/72/74/448b6172927c829c6a3fba80078d7b0a016ebbe2c9ee528821f5ea21677a/pymupdf-1.26.7-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:31aa9c8377ea1eea02934b92f4dcf79fb2abba0bf41f8a46d64c3e31546a3c02", size = 22470101, upload-time = "2025-12-11T21:47:37.105Z" }, + { url = "https://files.pythonhosted.org/packages/65/e7/47af26f3ac76be7ac3dd4d6cc7ee105948a8355d774e5ca39857bf91c11c/pymupdf-1.26.7-cp310-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:e419b609996434a14a80fa060adec72c434a1cca6a511ec54db9841bc5d51b3c", size = 23502486, upload-time = "2025-12-12T09:51:25.824Z" }, + { url = "https://files.pythonhosted.org/packages/2a/6b/3de1714d734ff949be1e90a22375d0598d3540b22ae73eb85c2d7d1f36a9/pymupdf-1.26.7-cp310-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:69dfc78f206a96e5b3ac22741263ebab945fdf51f0dbe7c5757c3511b23d9d72", size = 24115727, upload-time = "2025-12-11T21:47:51.274Z" }, + { url = "https://files.pythonhosted.org/packages/62/9b/f86224847949577a523be2207315ae0fd3155b5d909cd66c274d095349a3/pymupdf-1.26.7-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1d5106f46e1ca0d64d46bd51892372a4f82076bdc14a9678d33d630702abca36", size = 24324386, upload-time = "2025-12-12T14:58:45.483Z" }, + { url = "https://files.pythonhosted.org/packages/85/8e/a117d39092ca645fde8b903f4a941d9aa75b370a67b4f1f435f56393dc5a/pymupdf-1.26.7-cp310-abi3-win32.whl", hash = "sha256:7c9645b6f5452629c747690190350213d3e5bbdb6b2eca227d82702b327f6eee", size = 17203888, upload-time = "2025-12-12T13:59:57.613Z" }, + { url = "https://files.pythonhosted.org/packages/dd/c3/d0047678146c294469c33bae167c8ace337deafb736b0bf97b9bc481aa65/pymupdf-1.26.7-cp310-abi3-win_amd64.whl", hash = "sha256:425b1befe40d41b72eb0fe211711c7ae334db5eb60307e9dd09066ed060cceba", size = 18405952, upload-time = "2025-12-11T21:48:02.947Z" }, +] + +[[package]] +name = "pypdfium2" +version = "5.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/18/83/173dab58beb6c7e772b838199014c173a2436018dd7cfde9bbf4a3be15da/pypdfium2-5.3.0.tar.gz", hash = "sha256:2873ffc95fcb01f329257ebc64a5fdce44b36447b6b171fe62f7db5dc3269885", size = 268742, upload-time = "2026-01-05T16:29:03.02Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e3/a4/6bb5b5918c7fc236ec426be8a0205a984fe0a26ae23d5e4dd497398a6571/pypdfium2-5.3.0-py3-none-android_23_arm64_v8a.whl", hash = "sha256:885df6c78d41600cb086dc0c76b912d165b5bd6931ca08138329ea5a991b3540", size = 2763287, upload-time = "2026-01-05T16:28:24.21Z" }, + { url = "https://files.pythonhosted.org/packages/3e/64/24b41b906006bf07099b095f0420ee1f01a3a83a899f3e3731e4da99c06a/pypdfium2-5.3.0-py3-none-android_23_armeabi_v7a.whl", hash = "sha256:6e53dee6b333ee77582499eff800300fb5aa0c7eb8f52f95ccb5ca35ebc86d48", size = 2303285, upload-time = "2026-01-05T16:28:26.274Z" }, + { url = "https://files.pythonhosted.org/packages/c2/c0/3ec73f4ded83ba6c02acf6e9d228501759d5d74fe57f1b93849ab92dcc20/pypdfium2-5.3.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:ce4466bdd62119fe25a5f74d107acc9db8652062bf217057630c6ff0bb419523", size = 2816066, upload-time = "2026-01-05T16:28:28.099Z" }, + { url = "https://files.pythonhosted.org/packages/62/ca/e553b3b8b5c2cdc3d955cc313493ac27bbe63fc22624769d56ded585dd5e/pypdfium2-5.3.0-py3-none-macosx_11_0_x86_64.whl", hash = "sha256:cc2647fd03db42b8a56a8835e8bc7899e604e2042cd6fedeea53483185612907", size = 2945545, upload-time = "2026-01-05T16:28:29.489Z" }, + { url = "https://files.pythonhosted.org/packages/a1/56/615b776071e95c8570d579038256d0c77969ff2ff381e427be4ab8967f44/pypdfium2-5.3.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:35e205f537ddb4069e4b4e22af7ffe84fcf2d686c3fee5e5349f73268a0ef1ca", size = 2979892, upload-time = "2026-01-05T16:28:31.088Z" }, + { url = "https://files.pythonhosted.org/packages/df/10/27114199b765bdb7d19a9514c07036ad2fc3a579b910e7823ba167ead6de/pypdfium2-5.3.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b5795298f44050797ac030994fc2525ea35d2d714efe70058e0ee22e5f613f27", size = 2765738, upload-time = "2026-01-05T16:28:33.18Z" }, + { url = "https://files.pythonhosted.org/packages/b4/d7/2a3afa35e6c205a4f6264c33b8d2f659707989f93c30b336aa58575f66fa/pypdfium2-5.3.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7cd43dfceb77137e69e74c933d41506da1dddaff70f3a794fb0ad0d73e90d75", size = 3064338, upload-time = "2026-01-05T16:28:34.731Z" }, + { url = "https://files.pythonhosted.org/packages/a2/f1/6658755cf6e369bb51d0bccb81c51c300404fbe67c2f894c90000b6442dd/pypdfium2-5.3.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d5956867558fd3a793e58691cf169718864610becb765bfe74dd83f05cbf1ae3", size = 3415059, upload-time = "2026-01-05T16:28:37.313Z" }, + { url = "https://files.pythonhosted.org/packages/f5/34/f86482134fa641deb1f524c45ec7ebd6fc8d404df40c5657ddfce528593e/pypdfium2-5.3.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b3ff1071e9a782625822658dfe6e29e3a644a66960f8713bb17819f5a0ac5987", size = 2998517, upload-time = "2026-01-05T16:28:38.873Z" }, + { url = "https://files.pythonhosted.org/packages/09/34/40ab99425dcf503c172885904c5dc356c052bfdbd085f9f3cc920e0b8b25/pypdfium2-5.3.0-py3-none-manylinux_2_27_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f319c46ead49d289ab8c1ed2ea63c91e684f35bdc4cf4dc52191c441182ac481", size = 3673154, upload-time = "2026-01-05T16:28:40.347Z" }, + { url = "https://files.pythonhosted.org/packages/a5/67/0f7532f80825a7728a5cbff3f1104857f8f9fe49ebfd6cb25582a89ae8e1/pypdfium2-5.3.0-py3-none-manylinux_2_38_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:6dc67a186da0962294321cace6ccc0a4d212dbc5e9522c640d35725a812324b8", size = 2965002, upload-time = "2026-01-05T16:28:42.143Z" }, + { url = "https://files.pythonhosted.org/packages/ce/6c/c03d2a3d6621b77aac9604bce1c060de2af94950448787298501eac6c6a2/pypdfium2-5.3.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:0ad0afd3d2b5b54d86287266fd6ae3fef0e0a1a3df9d2c4984b3e3f8f70e6330", size = 4130530, upload-time = "2026-01-05T16:28:44.264Z" }, + { url = "https://files.pythonhosted.org/packages/af/39/9ad1f958cbe35d4693ae87c09ebafda4bb3e4709c7ccaec86c1a829163a3/pypdfium2-5.3.0-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:1afe35230dc3951b3e79b934c0c35a2e79e2372d06503fce6cf1926d2a816f47", size = 3746568, upload-time = "2026-01-05T16:28:45.897Z" }, + { url = "https://files.pythonhosted.org/packages/2a/e2/4d32310166c2d6955d924737df8b0a3e3efc8d133344a98b10f96320157d/pypdfium2-5.3.0-py3-none-musllinux_1_2_i686.whl", hash = "sha256:00385793030cadce08469085cd21b168fd8ff981b009685fef3103bdc5fc4686", size = 4336683, upload-time = "2026-01-05T16:28:47.584Z" }, + { url = "https://files.pythonhosted.org/packages/14/ea/38c337ff12a8cec4b00fd4fdb0a63a70597a344581e20b02addbd301ab56/pypdfium2-5.3.0-py3-none-musllinux_1_2_ppc64le.whl", hash = "sha256:d911e82676398949697fef80b7f412078df14d725a91c10e383b727051530285", size = 4375030, upload-time = "2026-01-05T16:28:49.5Z" }, + { url = "https://files.pythonhosted.org/packages/a1/77/9d8de90c35d2fc383be8819bcde52f5821dacbd7404a0225e4010b99d080/pypdfium2-5.3.0-py3-none-musllinux_1_2_riscv64.whl", hash = "sha256:ca1dc625ed347fac3d9002a3ed33d521d5803409bd572e7b3f823c12ab2ef58f", size = 3928914, upload-time = "2026-01-05T16:28:51.433Z" }, + { url = "https://files.pythonhosted.org/packages/a5/39/9d4a6fbd78fcb6803b0ea5e4952a31d6182a0aaa2609cfcd0eb88446fdb8/pypdfium2-5.3.0-py3-none-musllinux_1_2_s390x.whl", hash = "sha256:ea4f9db2d3575f22cd41f4c7a855240ded842f135e59a961b5b1351a65ce2b6e", size = 4997777, upload-time = "2026-01-05T16:28:53.589Z" }, + { url = "https://files.pythonhosted.org/packages/9d/38/cdd4ed085c264234a59ad32df1dfe432c77a7403da2381e0fcc1ba60b74e/pypdfium2-5.3.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:0ea24409613df350223c6afc50911c99dca0d43ddaf2616c5a1ebdffa3e1bcb5", size = 4179895, upload-time = "2026-01-05T16:28:55.322Z" }, + { url = "https://files.pythonhosted.org/packages/93/4c/d2f40145c9012482699664f615d7ae540a346c84f68a8179449e69dcc4d8/pypdfium2-5.3.0-py3-none-win32.whl", hash = "sha256:5bf695d603f9eb8fdd7c1786add5cf420d57fbc81df142ed63c029ce29614df9", size = 2993570, upload-time = "2026-01-05T16:28:58.37Z" }, + { url = "https://files.pythonhosted.org/packages/2c/dc/1388ea650020c26ef3f68856b9227e7f153dcaf445e7e4674a0b8f26891e/pypdfium2-5.3.0-py3-none-win_amd64.whl", hash = "sha256:8365af22a39d4373c265f8e90e561cd64d4ddeaf5e6a66546a8caed216ab9574", size = 3102340, upload-time = "2026-01-05T16:28:59.933Z" }, + { url = "https://files.pythonhosted.org/packages/c8/71/a433668d33999b3aeb2c2dda18aaf24948e862ea2ee148078a35daac6c1c/pypdfium2-5.3.0-py3-none-win_arm64.whl", hash = "sha256:0b2c6bf825e084d91d34456be54921da31e9199d9530b05435d69d1a80501a12", size = 2940987, upload-time = "2026-01-05T16:29:01.511Z" }, +] + +[[package]] +name = "pypika" +version = "0.50.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/fb/fb/b7d5f29108b07c10c69fc3bb72e12f869d55a360a449749fba5a1f903525/pypika-0.50.0.tar.gz", hash = "sha256:2ff66a153adc8d8877879ff2abd5a3b050a5d2adfdf8659d3402076e385e35b3", size = 81033, upload-time = "2026-01-14T12:34:21.895Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/5b/419c5bb460cb27b52fcd3bc96830255c3265bc1859f55aafa3ff08fae8bd/pypika-0.50.0-py2.py3-none-any.whl", hash = "sha256:ed11b7e259bc38abbcfde00cfb31f8d00aa42ffa51e437b8f5ac2db12b0fe0f4", size = 60577, upload-time = "2026-01-14T12:34:20.078Z" }, +] + +[[package]] +name = "pyproject-hooks" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e7/82/28175b2414effca1cdac8dc99f76d660e7a4fb0ceefa4b4ab8f5f6742925/pyproject_hooks-1.2.0.tar.gz", hash = "sha256:1e859bd5c40fae9448642dd871adf459e5e2084186e8d2c2a79a824c970da1f8", size = 19228, upload-time = "2024-09-29T09:24:13.293Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bd/24/12818598c362d7f300f18e74db45963dbcb85150324092410c8b49405e42/pyproject_hooks-1.2.0-py3-none-any.whl", hash = "sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913", size = 10216, upload-time = "2024-09-29T09:24:11.978Z" }, +] + +[[package]] +name = "pyreadline3" +version = "3.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/49/4cea918a08f02817aabae639e3d0ac046fef9f9180518a3ad394e22da148/pyreadline3-3.5.4.tar.gz", hash = "sha256:8d57d53039a1c75adba8e50dd3d992b28143480816187ea5efbd5c78e6c885b7", size = 99839, upload-time = "2024-09-19T02:40:10.062Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl", hash = "sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6", size = 83178, upload-time = "2024-09-19T02:40:08.598Z" }, +] + +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" }, +] + +[[package]] +name = "python-docx" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "lxml" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a9/f7/eddfe33871520adab45aaa1a71f0402a2252050c14c7e3009446c8f4701c/python_docx-1.2.0.tar.gz", hash = "sha256:7bc9d7b7d8a69c9c02ca09216118c86552704edc23bac179283f2e38f86220ce", size = 5723256, upload-time = "2025-06-16T20:46:27.921Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d0/00/1e03a4989fa5795da308cd774f05b704ace555a70f9bf9d3be057b680bcf/python_docx-1.2.0-py3-none-any.whl", hash = "sha256:3fd478f3250fbbbfd3b94fe1e985955737c145627498896a8a6bf81f4baf66c7", size = 252987, upload-time = "2025-06-16T20:46:22.506Z" }, +] + +[[package]] +name = "python-dotenv" +version = "1.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f0/26/19cadc79a718c5edbec86fd4919a6b6d3f681039a2f6d66d14be94e75fb9/python_dotenv-1.2.1.tar.gz", hash = "sha256:42667e897e16ab0d66954af0e60a9caa94f0fd4ecf3aaf6d2d260eec1aa36ad6", size = 44221, upload-time = "2025-10-26T15:12:10.434Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/14/1b/a298b06749107c305e1fe0f814c6c74aea7b2f1e10989cb30f544a1b3253/python_dotenv-1.2.1-py3-none-any.whl", hash = "sha256:b81ee9561e9ca4004139c6cbba3a238c32b03e4894671e181b671e8cb8425d61", size = 21230, upload-time = "2025-10-26T15:12:09.109Z" }, +] + +[[package]] +name = "python-multipart" +version = "0.0.22" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/94/01/979e98d542a70714b0cb2b6728ed0b7c46792b695e3eaec3e20711271ca3/python_multipart-0.0.22.tar.gz", hash = "sha256:7340bef99a7e0032613f56dc36027b959fd3b30a787ed62d310e951f7c3a3a58", size = 37612, upload-time = "2026-01-25T10:15:56.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1b/d0/397f9626e711ff749a95d96b7af99b9c566a9bb5129b8e4c10fc4d100304/python_multipart-0.0.22-py3-none-any.whl", hash = "sha256:2b2cd894c83d21bf49d702499531c7bafd057d730c201782048f7945d82de155", size = 24579, upload-time = "2026-01-25T10:15:54.811Z" }, +] + +[[package]] +name = "pytube" +version = "15.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/e7/16fec46c8d255c4bbc4b185d89c91dc92cdb802836570d8004d0db169c91/pytube-15.0.0.tar.gz", hash = "sha256:076052efe76f390dfa24b1194ff821d4e86c17d41cb5562f3a276a8bcbfc9d1d", size = 67229, upload-time = "2023-05-07T19:39:01.903Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/64/bcf8632ed2b7a36bbf84a0544885ffa1d0b4bcf25cc0903dba66ec5fdad9/pytube-15.0.0-py3-none-any.whl", hash = "sha256:07b9904749e213485780d7eb606e5e5b8e4341aa4dccf699160876da00e12d78", size = 57594, upload-time = "2023-05-07T19:38:59.191Z" }, +] + +[[package]] +name = "pytz" +version = "2025.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f8/bf/abbd3cdfb8fbc7fb3d4d38d320f2441b1e7cbe29be4f23797b4a2b5d8aac/pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3", size = 320884, upload-time = "2025-03-25T02:25:00.538Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/c4/34e93fe5f5429d7570ec1fa436f1986fb1f00c3e0f43a589fe2bbcd22c3f/pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00", size = 509225, upload-time = "2025-03-25T02:24:58.468Z" }, +] + +[[package]] +name = "pywin32" +version = "311" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/ab/01ea1943d4eba0f850c3c61e78e8dd59757ff815ff3ccd0a84de5f541f42/pywin32-311-cp312-cp312-win32.whl", hash = "sha256:750ec6e621af2b948540032557b10a2d43b0cee2ae9758c54154d711cc852d31", size = 8706543, upload-time = "2025-07-14T20:13:20.765Z" }, + { url = "https://files.pythonhosted.org/packages/d1/a8/a0e8d07d4d051ec7502cd58b291ec98dcc0c3fff027caad0470b72cfcc2f/pywin32-311-cp312-cp312-win_amd64.whl", hash = "sha256:b8c095edad5c211ff31c05223658e71bf7116daa0ecf3ad85f3201ea3190d067", size = 9495040, upload-time = "2025-07-14T20:13:22.543Z" }, + { url = "https://files.pythonhosted.org/packages/ba/3a/2ae996277b4b50f17d61f0603efd8253cb2d79cc7ae159468007b586396d/pywin32-311-cp312-cp312-win_arm64.whl", hash = "sha256:e286f46a9a39c4a18b319c28f59b61de793654af2f395c102b4f819e584b5852", size = 8710102, upload-time = "2025-07-14T20:13:24.682Z" }, + { url = "https://files.pythonhosted.org/packages/a5/be/3fd5de0979fcb3994bfee0d65ed8ca9506a8a1260651b86174f6a86f52b3/pywin32-311-cp313-cp313-win32.whl", hash = "sha256:f95ba5a847cba10dd8c4d8fefa9f2a6cf283b8b88ed6178fa8a6c1ab16054d0d", size = 8705700, upload-time = "2025-07-14T20:13:26.471Z" }, + { url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl", hash = "sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d", size = 9494700, upload-time = "2025-07-14T20:13:28.243Z" }, + { url = "https://files.pythonhosted.org/packages/04/bf/90339ac0f55726dce7d794e6d79a18a91265bdf3aa70b6b9ca52f35e022a/pywin32-311-cp313-cp313-win_arm64.whl", hash = "sha256:7b4075d959648406202d92a2310cb990fea19b535c7f4a78d3f5e10b926eeb8a", size = 8709318, upload-time = "2025-07-14T20:13:30.348Z" }, + { url = "https://files.pythonhosted.org/packages/c9/31/097f2e132c4f16d99a22bfb777e0fd88bd8e1c634304e102f313af69ace5/pywin32-311-cp314-cp314-win32.whl", hash = "sha256:b7a2c10b93f8986666d0c803ee19b5990885872a7de910fc460f9b0c2fbf92ee", size = 8840714, upload-time = "2025-07-14T20:13:32.449Z" }, + { url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl", hash = "sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87", size = 9656800, upload-time = "2025-07-14T20:13:34.312Z" }, + { url = "https://files.pythonhosted.org/packages/c0/d2/21af5c535501a7233e734b8af901574572da66fcc254cb35d0609c9080dd/pywin32-311-cp314-cp314-win_arm64.whl", hash = "sha256:a508e2d9025764a8270f93111a970e1d0fbfc33f4153b388bb649b7eec4f9b42", size = 8932540, upload-time = "2025-07-14T20:13:36.379Z" }, +] + +[[package]] +name = "pyyaml" +version = "6.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f", size = 130960, upload-time = "2025-09-25T21:33:16.546Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/33/422b98d2195232ca1826284a76852ad5a86fe23e31b009c9886b2d0fb8b2/pyyaml-6.0.3-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:7f047e29dcae44602496db43be01ad42fc6f1cc0d8cd6c83d342306c32270196", size = 182063, upload-time = "2025-09-25T21:32:11.445Z" }, + { url = "https://files.pythonhosted.org/packages/89/a0/6cf41a19a1f2f3feab0e9c0b74134aa2ce6849093d5517a0c550fe37a648/pyyaml-6.0.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:fc09d0aa354569bc501d4e787133afc08552722d3ab34836a80547331bb5d4a0", size = 173973, upload-time = "2025-09-25T21:32:12.492Z" }, + { url = "https://files.pythonhosted.org/packages/ed/23/7a778b6bd0b9a8039df8b1b1d80e2e2ad78aa04171592c8a5c43a56a6af4/pyyaml-6.0.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9149cad251584d5fb4981be1ecde53a1ca46c891a79788c0df828d2f166bda28", size = 775116, upload-time = "2025-09-25T21:32:13.652Z" }, + { url = "https://files.pythonhosted.org/packages/65/30/d7353c338e12baef4ecc1b09e877c1970bd3382789c159b4f89d6a70dc09/pyyaml-6.0.3-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5fdec68f91a0c6739b380c83b951e2c72ac0197ace422360e6d5a959d8d97b2c", size = 844011, upload-time = "2025-09-25T21:32:15.21Z" }, + { url = "https://files.pythonhosted.org/packages/8b/9d/b3589d3877982d4f2329302ef98a8026e7f4443c765c46cfecc8858c6b4b/pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ba1cc08a7ccde2d2ec775841541641e4548226580ab850948cbfda66a1befcdc", size = 807870, upload-time = "2025-09-25T21:32:16.431Z" }, + { url = "https://files.pythonhosted.org/packages/05/c0/b3be26a015601b822b97d9149ff8cb5ead58c66f981e04fedf4e762f4bd4/pyyaml-6.0.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8dc52c23056b9ddd46818a57b78404882310fb473d63f17b07d5c40421e47f8e", size = 761089, upload-time = "2025-09-25T21:32:17.56Z" }, + { url = "https://files.pythonhosted.org/packages/be/8e/98435a21d1d4b46590d5459a22d88128103f8da4c2d4cb8f14f2a96504e1/pyyaml-6.0.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:41715c910c881bc081f1e8872880d3c650acf13dfa8214bad49ed4cede7c34ea", size = 790181, upload-time = "2025-09-25T21:32:18.834Z" }, + { url = "https://files.pythonhosted.org/packages/74/93/7baea19427dcfbe1e5a372d81473250b379f04b1bd3c4c5ff825e2327202/pyyaml-6.0.3-cp312-cp312-win32.whl", hash = "sha256:96b533f0e99f6579b3d4d4995707cf36df9100d67e0c8303a0c55b27b5f99bc5", size = 137658, upload-time = "2025-09-25T21:32:20.209Z" }, + { url = "https://files.pythonhosted.org/packages/86/bf/899e81e4cce32febab4fb42bb97dcdf66bc135272882d1987881a4b519e9/pyyaml-6.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:5fcd34e47f6e0b794d17de1b4ff496c00986e1c83f7ab2fb8fcfe9616ff7477b", size = 154003, upload-time = "2025-09-25T21:32:21.167Z" }, + { url = "https://files.pythonhosted.org/packages/1a/08/67bd04656199bbb51dbed1439b7f27601dfb576fb864099c7ef0c3e55531/pyyaml-6.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:64386e5e707d03a7e172c0701abfb7e10f0fb753ee1d773128192742712a98fd", size = 140344, upload-time = "2025-09-25T21:32:22.617Z" }, + { url = "https://files.pythonhosted.org/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8", size = 181669, upload-time = "2025-09-25T21:32:23.673Z" }, + { url = "https://files.pythonhosted.org/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1", size = 173252, upload-time = "2025-09-25T21:32:25.149Z" }, + { url = "https://files.pythonhosted.org/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c", size = 767081, upload-time = "2025-09-25T21:32:26.575Z" }, + { url = "https://files.pythonhosted.org/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5", size = 841159, upload-time = "2025-09-25T21:32:27.727Z" }, + { url = "https://files.pythonhosted.org/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6", size = 801626, upload-time = "2025-09-25T21:32:28.878Z" }, + { url = "https://files.pythonhosted.org/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6", size = 753613, upload-time = "2025-09-25T21:32:30.178Z" }, + { url = "https://files.pythonhosted.org/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be", size = 794115, upload-time = "2025-09-25T21:32:31.353Z" }, + { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427, upload-time = "2025-09-25T21:32:32.58Z" }, + { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090, upload-time = "2025-09-25T21:32:33.659Z" }, + { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246, upload-time = "2025-09-25T21:32:34.663Z" }, + { url = "https://files.pythonhosted.org/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac", size = 181814, upload-time = "2025-09-25T21:32:35.712Z" }, + { url = "https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310", size = 173809, upload-time = "2025-09-25T21:32:36.789Z" }, + { url = "https://files.pythonhosted.org/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7", size = 766454, upload-time = "2025-09-25T21:32:37.966Z" }, + { url = "https://files.pythonhosted.org/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788", size = 836355, upload-time = "2025-09-25T21:32:39.178Z" }, + { url = "https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5", size = 794175, upload-time = "2025-09-25T21:32:40.865Z" }, + { url = "https://files.pythonhosted.org/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764", size = 755228, upload-time = "2025-09-25T21:32:42.084Z" }, + { url = "https://files.pythonhosted.org/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35", size = 789194, upload-time = "2025-09-25T21:32:43.362Z" }, + { url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac", size = 156429, upload-time = "2025-09-25T21:32:57.844Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3", size = 143912, upload-time = "2025-09-25T21:32:59.247Z" }, + { url = "https://files.pythonhosted.org/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3", size = 189108, upload-time = "2025-09-25T21:32:44.377Z" }, + { url = "https://files.pythonhosted.org/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba", size = 183641, upload-time = "2025-09-25T21:32:45.407Z" }, + { url = "https://files.pythonhosted.org/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c", size = 831901, upload-time = "2025-09-25T21:32:48.83Z" }, + { url = "https://files.pythonhosted.org/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702", size = 861132, upload-time = "2025-09-25T21:32:50.149Z" }, + { url = "https://files.pythonhosted.org/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c", size = 839261, upload-time = "2025-09-25T21:32:51.808Z" }, + { url = "https://files.pythonhosted.org/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065", size = 805272, upload-time = "2025-09-25T21:32:52.941Z" }, + { url = "https://files.pythonhosted.org/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65", size = 829923, upload-time = "2025-09-25T21:32:54.537Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9", size = 174062, upload-time = "2025-09-25T21:32:55.767Z" }, + { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" }, +] + +[[package]] +name = "referencing" +version = "0.37.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/22/f5/df4e9027acead3ecc63e50fe1e36aca1523e1719559c499951bb4b53188f/referencing-0.37.0.tar.gz", hash = "sha256:44aefc3142c5b842538163acb373e24cce6632bd54bdb01b21ad5863489f50d8", size = 78036, upload-time = "2025-10-13T15:30:48.871Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl", hash = "sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231", size = 26766, upload-time = "2025-10-13T15:30:47.625Z" }, +] + +[[package]] +name = "regex" +version = "2026.1.15" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0b/86/07d5056945f9ec4590b518171c4254a5925832eb727b56d3c38a7476f316/regex-2026.1.15.tar.gz", hash = "sha256:164759aa25575cbc0651bef59a0b18353e54300d79ace8084c818ad8ac72b7d5", size = 414811, upload-time = "2026-01-14T23:18:02.775Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/92/81/10d8cf43c807d0326efe874c1b79f22bfb0fb226027b0b19ebc26d301408/regex-2026.1.15-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:4c8fcc5793dde01641a35905d6731ee1548f02b956815f8f1cab89e515a5bdf1", size = 489398, upload-time = "2026-01-14T23:14:43.741Z" }, + { url = "https://files.pythonhosted.org/packages/90/b0/7c2a74e74ef2a7c32de724658a69a862880e3e4155cba992ba04d1c70400/regex-2026.1.15-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bfd876041a956e6a90ad7cdb3f6a630c07d491280bfeed4544053cd434901681", size = 291339, upload-time = "2026-01-14T23:14:45.183Z" }, + { url = "https://files.pythonhosted.org/packages/19/4d/16d0773d0c818417f4cc20aa0da90064b966d22cd62a8c46765b5bd2d643/regex-2026.1.15-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:9250d087bc92b7d4899ccd5539a1b2334e44eee85d848c4c1aef8e221d3f8c8f", size = 289003, upload-time = "2026-01-14T23:14:47.25Z" }, + { url = "https://files.pythonhosted.org/packages/c6/e4/1fc4599450c9f0863d9406e944592d968b8d6dfd0d552a7d569e43bceada/regex-2026.1.15-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c8a154cf6537ebbc110e24dabe53095e714245c272da9c1be05734bdad4a61aa", size = 798656, upload-time = "2026-01-14T23:14:48.77Z" }, + { url = "https://files.pythonhosted.org/packages/b2/e6/59650d73a73fa8a60b3a590545bfcf1172b4384a7df2e7fe7b9aab4e2da9/regex-2026.1.15-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:8050ba2e3ea1d8731a549e83c18d2f0999fbc99a5f6bd06b4c91449f55291804", size = 864252, upload-time = "2026-01-14T23:14:50.528Z" }, + { url = "https://files.pythonhosted.org/packages/6e/ab/1d0f4d50a1638849a97d731364c9a80fa304fec46325e48330c170ee8e80/regex-2026.1.15-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:0bf065240704cb8951cc04972cf107063917022511273e0969bdb34fc173456c", size = 912268, upload-time = "2026-01-14T23:14:52.952Z" }, + { url = "https://files.pythonhosted.org/packages/dd/df/0d722c030c82faa1d331d1921ee268a4e8fb55ca8b9042c9341c352f17fa/regex-2026.1.15-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c32bef3e7aeee75746748643667668ef941d28b003bfc89994ecf09a10f7a1b5", size = 803589, upload-time = "2026-01-14T23:14:55.182Z" }, + { url = "https://files.pythonhosted.org/packages/66/23/33289beba7ccb8b805c6610a8913d0131f834928afc555b241caabd422a9/regex-2026.1.15-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:d5eaa4a4c5b1906bd0d2508d68927f15b81821f85092e06f1a34a4254b0e1af3", size = 775700, upload-time = "2026-01-14T23:14:56.707Z" }, + { url = "https://files.pythonhosted.org/packages/e7/65/bf3a42fa6897a0d3afa81acb25c42f4b71c274f698ceabd75523259f6688/regex-2026.1.15-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:86c1077a3cc60d453d4084d5b9649065f3bf1184e22992bd322e1f081d3117fb", size = 787928, upload-time = "2026-01-14T23:14:58.312Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f5/13bf65864fc314f68cdd6d8ca94adcab064d4d39dbd0b10fef29a9da48fc/regex-2026.1.15-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:2b091aefc05c78d286657cd4db95f2e6313375ff65dcf085e42e4c04d9c8d410", size = 858607, upload-time = "2026-01-14T23:15:00.657Z" }, + { url = "https://files.pythonhosted.org/packages/a3/31/040e589834d7a439ee43fb0e1e902bc81bd58a5ba81acffe586bb3321d35/regex-2026.1.15-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:57e7d17f59f9ebfa9667e6e5a1c0127b96b87cb9cede8335482451ed00788ba4", size = 763729, upload-time = "2026-01-14T23:15:02.248Z" }, + { url = "https://files.pythonhosted.org/packages/9b/84/6921e8129687a427edf25a34a5594b588b6d88f491320b9de5b6339a4fcb/regex-2026.1.15-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:c6c4dcdfff2c08509faa15d36ba7e5ef5fcfab25f1e8f85a0c8f45bc3a30725d", size = 850697, upload-time = "2026-01-14T23:15:03.878Z" }, + { url = "https://files.pythonhosted.org/packages/8a/87/3d06143d4b128f4229158f2de5de6c8f2485170c7221e61bf381313314b2/regex-2026.1.15-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:cf8ff04c642716a7f2048713ddc6278c5fd41faa3b9cab12607c7abecd012c22", size = 789849, upload-time = "2026-01-14T23:15:06.102Z" }, + { url = "https://files.pythonhosted.org/packages/77/69/c50a63842b6bd48850ebc7ab22d46e7a2a32d824ad6c605b218441814639/regex-2026.1.15-cp312-cp312-win32.whl", hash = "sha256:82345326b1d8d56afbe41d881fdf62f1926d7264b2fc1537f99ae5da9aad7913", size = 266279, upload-time = "2026-01-14T23:15:07.678Z" }, + { url = "https://files.pythonhosted.org/packages/f2/36/39d0b29d087e2b11fd8191e15e81cce1b635fcc845297c67f11d0d19274d/regex-2026.1.15-cp312-cp312-win_amd64.whl", hash = "sha256:4def140aa6156bc64ee9912383d4038f3fdd18fee03a6f222abd4de6357ce42a", size = 277166, upload-time = "2026-01-14T23:15:09.257Z" }, + { url = "https://files.pythonhosted.org/packages/28/32/5b8e476a12262748851fa8ab1b0be540360692325975b094e594dfebbb52/regex-2026.1.15-cp312-cp312-win_arm64.whl", hash = "sha256:c6c565d9a6e1a8d783c1948937ffc377dd5771e83bd56de8317c450a954d2056", size = 270415, upload-time = "2026-01-14T23:15:10.743Z" }, + { url = "https://files.pythonhosted.org/packages/f8/2e/6870bb16e982669b674cce3ee9ff2d1d46ab80528ee6bcc20fb2292efb60/regex-2026.1.15-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:e69d0deeb977ffe7ed3d2e4439360089f9c3f217ada608f0f88ebd67afb6385e", size = 489164, upload-time = "2026-01-14T23:15:13.962Z" }, + { url = "https://files.pythonhosted.org/packages/dc/67/9774542e203849b0286badf67199970a44ebdb0cc5fb739f06e47ada72f8/regex-2026.1.15-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3601ffb5375de85a16f407854d11cca8fe3f5febbe3ac78fb2866bb220c74d10", size = 291218, upload-time = "2026-01-14T23:15:15.647Z" }, + { url = "https://files.pythonhosted.org/packages/b2/87/b0cda79f22b8dee05f774922a214da109f9a4c0eca5da2c9d72d77ea062c/regex-2026.1.15-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4c5ef43b5c2d4114eb8ea424bb8c9cec01d5d17f242af88b2448f5ee81caadbc", size = 288895, upload-time = "2026-01-14T23:15:17.788Z" }, + { url = "https://files.pythonhosted.org/packages/3b/6a/0041f0a2170d32be01ab981d6346c83a8934277d82c780d60b127331f264/regex-2026.1.15-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:968c14d4f03e10b2fd960f1d5168c1f0ac969381d3c1fcc973bc45fb06346599", size = 798680, upload-time = "2026-01-14T23:15:19.342Z" }, + { url = "https://files.pythonhosted.org/packages/58/de/30e1cfcdbe3e891324aa7568b7c968771f82190df5524fabc1138cb2d45a/regex-2026.1.15-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:56a5595d0f892f214609c9f76b41b7428bed439d98dc961efafdd1354d42baae", size = 864210, upload-time = "2026-01-14T23:15:22.005Z" }, + { url = "https://files.pythonhosted.org/packages/64/44/4db2f5c5ca0ccd40ff052ae7b1e9731352fcdad946c2b812285a7505ca75/regex-2026.1.15-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:0bf650f26087363434c4e560011f8e4e738f6f3e029b85d4904c50135b86cfa5", size = 912358, upload-time = "2026-01-14T23:15:24.569Z" }, + { url = "https://files.pythonhosted.org/packages/79/b6/e6a5665d43a7c42467138c8a2549be432bad22cbd206f5ec87162de74bd7/regex-2026.1.15-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:18388a62989c72ac24de75f1449d0fb0b04dfccd0a1a7c1c43af5eb503d890f6", size = 803583, upload-time = "2026-01-14T23:15:26.526Z" }, + { url = "https://files.pythonhosted.org/packages/e7/53/7cd478222169d85d74d7437e74750005e993f52f335f7c04ff7adfda3310/regex-2026.1.15-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:6d220a2517f5893f55daac983bfa9fe998a7dbcaee4f5d27a88500f8b7873788", size = 775782, upload-time = "2026-01-14T23:15:29.352Z" }, + { url = "https://files.pythonhosted.org/packages/ca/b5/75f9a9ee4b03a7c009fe60500fe550b45df94f0955ca29af16333ef557c5/regex-2026.1.15-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c9c08c2fbc6120e70abff5d7f28ffb4d969e14294fb2143b4b5c7d20e46d1714", size = 787978, upload-time = "2026-01-14T23:15:31.295Z" }, + { url = "https://files.pythonhosted.org/packages/72/b3/79821c826245bbe9ccbb54f6eadb7879c722fd3e0248c17bfc90bf54e123/regex-2026.1.15-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7ef7d5d4bd49ec7364315167a4134a015f61e8266c6d446fc116a9ac4456e10d", size = 858550, upload-time = "2026-01-14T23:15:33.558Z" }, + { url = "https://files.pythonhosted.org/packages/4a/85/2ab5f77a1c465745bfbfcb3ad63178a58337ae8d5274315e2cc623a822fa/regex-2026.1.15-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:6e42844ad64194fa08d5ccb75fe6a459b9b08e6d7296bd704460168d58a388f3", size = 763747, upload-time = "2026-01-14T23:15:35.206Z" }, + { url = "https://files.pythonhosted.org/packages/6d/84/c27df502d4bfe2873a3e3a7cf1bdb2b9cc10284d1a44797cf38bed790470/regex-2026.1.15-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:cfecdaa4b19f9ca534746eb3b55a5195d5c95b88cac32a205e981ec0a22b7d31", size = 850615, upload-time = "2026-01-14T23:15:37.523Z" }, + { url = "https://files.pythonhosted.org/packages/7d/b7/658a9782fb253680aa8ecb5ccbb51f69e088ed48142c46d9f0c99b46c575/regex-2026.1.15-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:08df9722d9b87834a3d701f3fca570b2be115654dbfd30179f30ab2f39d606d3", size = 789951, upload-time = "2026-01-14T23:15:39.582Z" }, + { url = "https://files.pythonhosted.org/packages/fc/2a/5928af114441e059f15b2f63e188bd00c6529b3051c974ade7444b85fcda/regex-2026.1.15-cp313-cp313-win32.whl", hash = "sha256:d426616dae0967ca225ab12c22274eb816558f2f99ccb4a1d52ca92e8baf180f", size = 266275, upload-time = "2026-01-14T23:15:42.108Z" }, + { url = "https://files.pythonhosted.org/packages/4f/16/5bfbb89e435897bff28cf0352a992ca719d9e55ebf8b629203c96b6ce4f7/regex-2026.1.15-cp313-cp313-win_amd64.whl", hash = "sha256:febd38857b09867d3ed3f4f1af7d241c5c50362e25ef43034995b77a50df494e", size = 277145, upload-time = "2026-01-14T23:15:44.244Z" }, + { url = "https://files.pythonhosted.org/packages/56/c1/a09ff7392ef4233296e821aec5f78c51be5e91ffde0d163059e50fd75835/regex-2026.1.15-cp313-cp313-win_arm64.whl", hash = "sha256:8e32f7896f83774f91499d239e24cebfadbc07639c1494bb7213983842348337", size = 270411, upload-time = "2026-01-14T23:15:45.858Z" }, + { url = "https://files.pythonhosted.org/packages/3c/38/0cfd5a78e5c6db00e6782fdae70458f89850ce95baa5e8694ab91d89744f/regex-2026.1.15-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:ec94c04149b6a7b8120f9f44565722c7ae31b7a6d2275569d2eefa76b83da3be", size = 492068, upload-time = "2026-01-14T23:15:47.616Z" }, + { url = "https://files.pythonhosted.org/packages/50/72/6c86acff16cb7c959c4355826bbf06aad670682d07c8f3998d9ef4fee7cd/regex-2026.1.15-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:40c86d8046915bb9aeb15d3f3f15b6fd500b8ea4485b30e1bbc799dab3fe29f8", size = 292756, upload-time = "2026-01-14T23:15:49.307Z" }, + { url = "https://files.pythonhosted.org/packages/4e/58/df7fb69eadfe76526ddfce28abdc0af09ffe65f20c2c90932e89d705153f/regex-2026.1.15-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:726ea4e727aba21643205edad8f2187ec682d3305d790f73b7a51c7587b64bdd", size = 291114, upload-time = "2026-01-14T23:15:51.484Z" }, + { url = "https://files.pythonhosted.org/packages/ed/6c/a4011cd1cf96b90d2cdc7e156f91efbd26531e822a7fbb82a43c1016678e/regex-2026.1.15-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1cb740d044aff31898804e7bf1181cc72c03d11dfd19932b9911ffc19a79070a", size = 807524, upload-time = "2026-01-14T23:15:53.102Z" }, + { url = "https://files.pythonhosted.org/packages/1d/25/a53ffb73183f69c3e9f4355c4922b76d2840aee160af6af5fac229b6201d/regex-2026.1.15-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:05d75a668e9ea16f832390d22131fe1e8acc8389a694c8febc3e340b0f810b93", size = 873455, upload-time = "2026-01-14T23:15:54.956Z" }, + { url = "https://files.pythonhosted.org/packages/66/0b/8b47fc2e8f97d9b4a851736f3890a5f786443aa8901061c55f24c955f45b/regex-2026.1.15-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d991483606f3dbec93287b9f35596f41aa2e92b7c2ebbb935b63f409e243c9af", size = 915007, upload-time = "2026-01-14T23:15:57.041Z" }, + { url = "https://files.pythonhosted.org/packages/c2/fa/97de0d681e6d26fabe71968dbee06dd52819e9a22fdce5dac7256c31ed84/regex-2026.1.15-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:194312a14819d3e44628a44ed6fea6898fdbecb0550089d84c403475138d0a09", size = 812794, upload-time = "2026-01-14T23:15:58.916Z" }, + { url = "https://files.pythonhosted.org/packages/22/38/e752f94e860d429654aa2b1c51880bff8dfe8f084268258adf9151cf1f53/regex-2026.1.15-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:fe2fda4110a3d0bc163c2e0664be44657431440722c5c5315c65155cab92f9e5", size = 781159, upload-time = "2026-01-14T23:16:00.817Z" }, + { url = "https://files.pythonhosted.org/packages/e9/a7/d739ffaef33c378fc888302a018d7f81080393d96c476b058b8c64fd2b0d/regex-2026.1.15-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:124dc36c85d34ef2d9164da41a53c1c8c122cfb1f6e1ec377a1f27ee81deb794", size = 795558, upload-time = "2026-01-14T23:16:03.267Z" }, + { url = "https://files.pythonhosted.org/packages/3e/c4/542876f9a0ac576100fc73e9c75b779f5c31e3527576cfc9cb3009dcc58a/regex-2026.1.15-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:a1774cd1981cd212506a23a14dba7fdeaee259f5deba2df6229966d9911e767a", size = 868427, upload-time = "2026-01-14T23:16:05.646Z" }, + { url = "https://files.pythonhosted.org/packages/fc/0f/d5655bea5b22069e32ae85a947aa564912f23758e112cdb74212848a1a1b/regex-2026.1.15-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:b5f7d8d2867152cdb625e72a530d2ccb48a3d199159144cbdd63870882fb6f80", size = 769939, upload-time = "2026-01-14T23:16:07.542Z" }, + { url = "https://files.pythonhosted.org/packages/20/06/7e18a4fa9d326daeda46d471a44ef94201c46eaa26dbbb780b5d92cbfdda/regex-2026.1.15-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:492534a0ab925d1db998defc3c302dae3616a2fc3fe2e08db1472348f096ddf2", size = 854753, upload-time = "2026-01-14T23:16:10.395Z" }, + { url = "https://files.pythonhosted.org/packages/3b/67/dc8946ef3965e166f558ef3b47f492bc364e96a265eb4a2bb3ca765c8e46/regex-2026.1.15-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c661fc820cfb33e166bf2450d3dadbda47c8d8981898adb9b6fe24e5e582ba60", size = 799559, upload-time = "2026-01-14T23:16:12.347Z" }, + { url = "https://files.pythonhosted.org/packages/a5/61/1bba81ff6d50c86c65d9fd84ce9699dd106438ee4cdb105bf60374ee8412/regex-2026.1.15-cp313-cp313t-win32.whl", hash = "sha256:99ad739c3686085e614bf77a508e26954ff1b8f14da0e3765ff7abbf7799f952", size = 268879, upload-time = "2026-01-14T23:16:14.049Z" }, + { url = "https://files.pythonhosted.org/packages/e9/5e/cef7d4c5fb0ea3ac5c775fd37db5747f7378b29526cc83f572198924ff47/regex-2026.1.15-cp313-cp313t-win_amd64.whl", hash = "sha256:32655d17905e7ff8ba5c764c43cb124e34a9245e45b83c22e81041e1071aee10", size = 280317, upload-time = "2026-01-14T23:16:15.718Z" }, + { url = "https://files.pythonhosted.org/packages/b4/52/4317f7a5988544e34ab57b4bde0f04944c4786128c933fb09825924d3e82/regex-2026.1.15-cp313-cp313t-win_arm64.whl", hash = "sha256:b2a13dd6a95e95a489ca242319d18fc02e07ceb28fa9ad146385194d95b3c829", size = 271551, upload-time = "2026-01-14T23:16:17.533Z" }, + { url = "https://files.pythonhosted.org/packages/52/0a/47fa888ec7cbbc7d62c5f2a6a888878e76169170ead271a35239edd8f0e8/regex-2026.1.15-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:d920392a6b1f353f4aa54328c867fec3320fa50657e25f64abf17af054fc97ac", size = 489170, upload-time = "2026-01-14T23:16:19.835Z" }, + { url = "https://files.pythonhosted.org/packages/ac/c4/d000e9b7296c15737c9301708e9e7fbdea009f8e93541b6b43bdb8219646/regex-2026.1.15-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:b5a28980a926fa810dbbed059547b02783952e2efd9c636412345232ddb87ff6", size = 291146, upload-time = "2026-01-14T23:16:21.541Z" }, + { url = "https://files.pythonhosted.org/packages/f9/b6/921cc61982e538682bdf3bdf5b2c6ab6b34368da1f8e98a6c1ddc503c9cf/regex-2026.1.15-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:621f73a07595d83f28952d7bd1e91e9d1ed7625fb7af0064d3516674ec93a2a2", size = 288986, upload-time = "2026-01-14T23:16:23.381Z" }, + { url = "https://files.pythonhosted.org/packages/ca/33/eb7383dde0bbc93f4fb9d03453aab97e18ad4024ac7e26cef8d1f0a2cff0/regex-2026.1.15-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3d7d92495f47567a9b1669c51fc8d6d809821849063d168121ef801bbc213846", size = 799098, upload-time = "2026-01-14T23:16:25.088Z" }, + { url = "https://files.pythonhosted.org/packages/27/56/b664dccae898fc8d8b4c23accd853f723bde0f026c747b6f6262b688029c/regex-2026.1.15-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:8dd16fba2758db7a3780a051f245539c4451ca20910f5a5e6ea1c08d06d4a76b", size = 864980, upload-time = "2026-01-14T23:16:27.297Z" }, + { url = "https://files.pythonhosted.org/packages/16/40/0999e064a170eddd237bae9ccfcd8f28b3aa98a38bf727a086425542a4fc/regex-2026.1.15-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:1e1808471fbe44c1a63e5f577a1d5f02fe5d66031dcbdf12f093ffc1305a858e", size = 911607, upload-time = "2026-01-14T23:16:29.235Z" }, + { url = "https://files.pythonhosted.org/packages/07/78/c77f644b68ab054e5a674fb4da40ff7bffb2c88df58afa82dbf86573092d/regex-2026.1.15-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0751a26ad39d4f2ade8fe16c59b2bf5cb19eb3d2cd543e709e583d559bd9efde", size = 803358, upload-time = "2026-01-14T23:16:31.369Z" }, + { url = "https://files.pythonhosted.org/packages/27/31/d4292ea8566eaa551fafc07797961c5963cf5235c797cc2ae19b85dfd04d/regex-2026.1.15-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:0f0c7684c7f9ca241344ff95a1de964f257a5251968484270e91c25a755532c5", size = 775833, upload-time = "2026-01-14T23:16:33.141Z" }, + { url = "https://files.pythonhosted.org/packages/ce/b2/cff3bf2fea4133aa6fb0d1e370b37544d18c8350a2fa118c7e11d1db0e14/regex-2026.1.15-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:74f45d170a21df41508cb67165456538425185baaf686281fa210d7e729abc34", size = 788045, upload-time = "2026-01-14T23:16:35.005Z" }, + { url = "https://files.pythonhosted.org/packages/8d/99/2cb9b69045372ec877b6f5124bda4eb4253bc58b8fe5848c973f752bc52c/regex-2026.1.15-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:f1862739a1ffb50615c0fde6bae6569b5efbe08d98e59ce009f68a336f64da75", size = 859374, upload-time = "2026-01-14T23:16:36.919Z" }, + { url = "https://files.pythonhosted.org/packages/09/16/710b0a5abe8e077b1729a562d2f297224ad079f3a66dce46844c193416c8/regex-2026.1.15-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:453078802f1b9e2b7303fb79222c054cb18e76f7bdc220f7530fdc85d319f99e", size = 763940, upload-time = "2026-01-14T23:16:38.685Z" }, + { url = "https://files.pythonhosted.org/packages/dd/d1/7585c8e744e40eb3d32f119191969b91de04c073fca98ec14299041f6e7e/regex-2026.1.15-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:a30a68e89e5a218b8b23a52292924c1f4b245cb0c68d1cce9aec9bbda6e2c160", size = 850112, upload-time = "2026-01-14T23:16:40.646Z" }, + { url = "https://files.pythonhosted.org/packages/af/d6/43e1dd85df86c49a347aa57c1f69d12c652c7b60e37ec162e3096194a278/regex-2026.1.15-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:9479cae874c81bf610d72b85bb681a94c95722c127b55445285fb0e2c82db8e1", size = 789586, upload-time = "2026-01-14T23:16:42.799Z" }, + { url = "https://files.pythonhosted.org/packages/93/38/77142422f631e013f316aaae83234c629555729a9fbc952b8a63ac91462a/regex-2026.1.15-cp314-cp314-win32.whl", hash = "sha256:d639a750223132afbfb8f429c60d9d318aeba03281a5f1ab49f877456448dcf1", size = 271691, upload-time = "2026-01-14T23:16:44.671Z" }, + { url = "https://files.pythonhosted.org/packages/4a/a9/ab16b4649524ca9e05213c1cdbb7faa85cc2aa90a0230d2f796cbaf22736/regex-2026.1.15-cp314-cp314-win_amd64.whl", hash = "sha256:4161d87f85fa831e31469bfd82c186923070fc970b9de75339b68f0c75b51903", size = 280422, upload-time = "2026-01-14T23:16:46.607Z" }, + { url = "https://files.pythonhosted.org/packages/be/2a/20fd057bf3521cb4791f69f869635f73e0aaf2b9ad2d260f728144f9047c/regex-2026.1.15-cp314-cp314-win_arm64.whl", hash = "sha256:91c5036ebb62663a6b3999bdd2e559fd8456d17e2b485bf509784cd31a8b1705", size = 273467, upload-time = "2026-01-14T23:16:48.967Z" }, + { url = "https://files.pythonhosted.org/packages/ad/77/0b1e81857060b92b9cad239104c46507dd481b3ff1fa79f8e7f865aae38a/regex-2026.1.15-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:ee6854c9000a10938c79238de2379bea30c82e4925a371711af45387df35cab8", size = 492073, upload-time = "2026-01-14T23:16:51.154Z" }, + { url = "https://files.pythonhosted.org/packages/70/f3/f8302b0c208b22c1e4f423147e1913fd475ddd6230565b299925353de644/regex-2026.1.15-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:2c2b80399a422348ce5de4fe40c418d6299a0fa2803dd61dc0b1a2f28e280fcf", size = 292757, upload-time = "2026-01-14T23:16:53.08Z" }, + { url = "https://files.pythonhosted.org/packages/bf/f0/ef55de2460f3b4a6da9d9e7daacd0cb79d4ef75c64a2af316e68447f0df0/regex-2026.1.15-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:dca3582bca82596609959ac39e12b7dad98385b4fefccb1151b937383cec547d", size = 291122, upload-time = "2026-01-14T23:16:55.383Z" }, + { url = "https://files.pythonhosted.org/packages/cf/55/bb8ccbacabbc3a11d863ee62a9f18b160a83084ea95cdfc5d207bfc3dd75/regex-2026.1.15-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ef71d476caa6692eea743ae5ea23cde3260677f70122c4d258ca952e5c2d4e84", size = 807761, upload-time = "2026-01-14T23:16:57.251Z" }, + { url = "https://files.pythonhosted.org/packages/8f/84/f75d937f17f81e55679a0509e86176e29caa7298c38bd1db7ce9c0bf6075/regex-2026.1.15-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c243da3436354f4af6c3058a3f81a97d47ea52c9bd874b52fd30274853a1d5df", size = 873538, upload-time = "2026-01-14T23:16:59.349Z" }, + { url = "https://files.pythonhosted.org/packages/b8/d9/0da86327df70349aa8d86390da91171bd3ca4f0e7c1d1d453a9c10344da3/regex-2026.1.15-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:8355ad842a7c7e9e5e55653eade3b7d1885ba86f124dd8ab1f722f9be6627434", size = 915066, upload-time = "2026-01-14T23:17:01.607Z" }, + { url = "https://files.pythonhosted.org/packages/2a/5e/f660fb23fc77baa2a61aa1f1fe3a4eea2bbb8a286ddec148030672e18834/regex-2026.1.15-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f192a831d9575271a22d804ff1a5355355723f94f31d9eef25f0d45a152fdc1a", size = 812938, upload-time = "2026-01-14T23:17:04.366Z" }, + { url = "https://files.pythonhosted.org/packages/69/33/a47a29bfecebbbfd1e5cd3f26b28020a97e4820f1c5148e66e3b7d4b4992/regex-2026.1.15-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:166551807ec20d47ceaeec380081f843e88c8949780cd42c40f18d16168bed10", size = 781314, upload-time = "2026-01-14T23:17:06.378Z" }, + { url = "https://files.pythonhosted.org/packages/65/ec/7ec2bbfd4c3f4e494a24dec4c6943a668e2030426b1b8b949a6462d2c17b/regex-2026.1.15-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:f9ca1cbdc0fbfe5e6e6f8221ef2309988db5bcede52443aeaee9a4ad555e0dac", size = 795652, upload-time = "2026-01-14T23:17:08.521Z" }, + { url = "https://files.pythonhosted.org/packages/46/79/a5d8651ae131fe27d7c521ad300aa7f1c7be1dbeee4d446498af5411b8a9/regex-2026.1.15-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b30bcbd1e1221783c721483953d9e4f3ab9c5d165aa709693d3f3946747b1aea", size = 868550, upload-time = "2026-01-14T23:17:10.573Z" }, + { url = "https://files.pythonhosted.org/packages/06/b7/25635d2809664b79f183070786a5552dd4e627e5aedb0065f4e3cf8ee37d/regex-2026.1.15-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:2a8d7b50c34578d0d3bf7ad58cde9652b7d683691876f83aedc002862a35dc5e", size = 769981, upload-time = "2026-01-14T23:17:12.871Z" }, + { url = "https://files.pythonhosted.org/packages/16/8b/fc3fcbb2393dcfa4a6c5ffad92dc498e842df4581ea9d14309fcd3c55fb9/regex-2026.1.15-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:9d787e3310c6a6425eb346be4ff2ccf6eece63017916fd77fe8328c57be83521", size = 854780, upload-time = "2026-01-14T23:17:14.837Z" }, + { url = "https://files.pythonhosted.org/packages/d0/38/dde117c76c624713c8a2842530be9c93ca8b606c0f6102d86e8cd1ce8bea/regex-2026.1.15-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:619843841e220adca114118533a574a9cd183ed8a28b85627d2844c500a2b0db", size = 799778, upload-time = "2026-01-14T23:17:17.369Z" }, + { url = "https://files.pythonhosted.org/packages/e3/0d/3a6cfa9ae99606afb612d8fb7a66b245a9d5ff0f29bb347c8a30b6ad561b/regex-2026.1.15-cp314-cp314t-win32.whl", hash = "sha256:e90b8db97f6f2c97eb045b51a6b2c5ed69cedd8392459e0642d4199b94fabd7e", size = 274667, upload-time = "2026-01-14T23:17:19.301Z" }, + { url = "https://files.pythonhosted.org/packages/5b/b2/297293bb0742fd06b8d8e2572db41a855cdf1cae0bf009b1cb74fe07e196/regex-2026.1.15-cp314-cp314t-win_amd64.whl", hash = "sha256:5ef19071f4ac9f0834793af85bd04a920b4407715624e40cb7a0631a11137cdf", size = 284386, upload-time = "2026-01-14T23:17:21.231Z" }, + { url = "https://files.pythonhosted.org/packages/95/e4/a3b9480c78cf8ee86626cb06f8d931d74d775897d44201ccb813097ae697/regex-2026.1.15-cp314-cp314t-win_arm64.whl", hash = "sha256:ca89c5e596fc05b015f27561b3793dc2fa0917ea0d7507eebb448efd35274a70", size = 274837, upload-time = "2026-01-14T23:17:23.146Z" }, +] + +[[package]] +name = "requests" +version = "2.32.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "charset-normalizer" }, + { name = "idna" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c9/74/b3ff8e6c8446842c3f5c837e9c3dfcfe2018ea6ecef224c710c85ef728f4/requests-2.32.5.tar.gz", hash = "sha256:dbba0bac56e100853db0ea71b82b4dfd5fe2bf6d3754a8893c3af500cec7d7cf", size = 134517, upload-time = "2025-08-18T20:46:02.573Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/db/4254e3eabe8020b458f1a747140d32277ec7a271daf1d235b70dc0b4e6e3/requests-2.32.5-py3-none-any.whl", hash = "sha256:2462f94637a34fd532264295e186976db0f5d453d1cdd31473c85a6a161affb6", size = 64738, upload-time = "2025-08-18T20:46:00.542Z" }, +] + +[[package]] +name = "requests-oauthlib" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "oauthlib" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/42/f2/05f29bc3913aea15eb670be136045bf5c5bbf4b99ecb839da9b422bb2c85/requests-oauthlib-2.0.0.tar.gz", hash = "sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9", size = 55650, upload-time = "2024-03-22T20:32:29.939Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3b/5d/63d4ae3b9daea098d5d6f5da83984853c1bbacd5dc826764b249fe119d24/requests_oauthlib-2.0.0-py2.py3-none-any.whl", hash = "sha256:7dd8a5c40426b779b0868c404bdef9768deccf22749cde15852df527e6269b36", size = 24179, upload-time = "2024-03-22T20:32:28.055Z" }, +] + +[[package]] +name = "rich" +version = "14.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/84/4831f881aa6ff3c976f6d6809b58cdfa350593ffc0dc3c58f5f6586780fb/rich-14.3.1.tar.gz", hash = "sha256:b8c5f568a3a749f9290ec6bddedf835cec33696bfc1e48bcfecb276c7386e4b8", size = 230125, upload-time = "2026-01-24T21:40:44.847Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/2a/a1810c8627b9ec8c57ec5ec325d306701ae7be50235e8fd81266e002a3cc/rich-14.3.1-py3-none-any.whl", hash = "sha256:da750b1aebbff0b372557426fb3f35ba56de8ef954b3190315eb64076d6fb54e", size = 309952, upload-time = "2026-01-24T21:40:42.969Z" }, +] + +[[package]] +name = "rpds-py" +version = "0.30.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/af/3f2f423103f1113b36230496629986e0ef7e199d2aa8392452b484b38ced/rpds_py-0.30.0.tar.gz", hash = "sha256:dd8ff7cf90014af0c0f787eea34794ebf6415242ee1d6fa91eaba725cc441e84", size = 69469, upload-time = "2025-11-30T20:24:38.837Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/03/e7/98a2f4ac921d82f33e03f3835f5bf3a4a40aa1bfdc57975e74a97b2b4bdd/rpds_py-0.30.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a161f20d9a43006833cd7068375a94d035714d73a172b681d8881820600abfad", size = 375086, upload-time = "2025-11-30T20:22:17.93Z" }, + { url = "https://files.pythonhosted.org/packages/4d/a1/bca7fd3d452b272e13335db8d6b0b3ecde0f90ad6f16f3328c6fb150c889/rpds_py-0.30.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6abc8880d9d036ecaafe709079969f56e876fcf107f7a8e9920ba6d5a3878d05", size = 359053, upload-time = "2025-11-30T20:22:19.297Z" }, + { url = "https://files.pythonhosted.org/packages/65/1c/ae157e83a6357eceff62ba7e52113e3ec4834a84cfe07fa4b0757a7d105f/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca28829ae5f5d569bb62a79512c842a03a12576375d5ece7d2cadf8abe96ec28", size = 390763, upload-time = "2025-11-30T20:22:21.661Z" }, + { url = "https://files.pythonhosted.org/packages/d4/36/eb2eb8515e2ad24c0bd43c3ee9cd74c33f7ca6430755ccdb240fd3144c44/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a1010ed9524c73b94d15919ca4d41d8780980e1765babf85f9a2f90d247153dd", size = 408951, upload-time = "2025-11-30T20:22:23.408Z" }, + { url = "https://files.pythonhosted.org/packages/d6/65/ad8dc1784a331fabbd740ef6f71ce2198c7ed0890dab595adb9ea2d775a1/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f8d1736cfb49381ba528cd5baa46f82fdc65c06e843dab24dd70b63d09121b3f", size = 514622, upload-time = "2025-11-30T20:22:25.16Z" }, + { url = "https://files.pythonhosted.org/packages/63/8e/0cfa7ae158e15e143fe03993b5bcd743a59f541f5952e1546b1ac1b5fd45/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d948b135c4693daff7bc2dcfc4ec57237a29bd37e60c2fabf5aff2bbacf3e2f1", size = 414492, upload-time = "2025-11-30T20:22:26.505Z" }, + { url = "https://files.pythonhosted.org/packages/60/1b/6f8f29f3f995c7ffdde46a626ddccd7c63aefc0efae881dc13b6e5d5bb16/rpds_py-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47f236970bccb2233267d89173d3ad2703cd36a0e2a6e92d0560d333871a3d23", size = 394080, upload-time = "2025-11-30T20:22:27.934Z" }, + { url = "https://files.pythonhosted.org/packages/6d/d5/a266341051a7a3ca2f4b750a3aa4abc986378431fc2da508c5034d081b70/rpds_py-0.30.0-cp312-cp312-manylinux_2_31_riscv64.whl", hash = "sha256:2e6ecb5a5bcacf59c3f912155044479af1d0b6681280048b338b28e364aca1f6", size = 408680, upload-time = "2025-11-30T20:22:29.341Z" }, + { url = "https://files.pythonhosted.org/packages/10/3b/71b725851df9ab7a7a4e33cf36d241933da66040d195a84781f49c50490c/rpds_py-0.30.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a8fa71a2e078c527c3e9dc9fc5a98c9db40bcc8a92b4e8858e36d329f8684b51", size = 423589, upload-time = "2025-11-30T20:22:31.469Z" }, + { url = "https://files.pythonhosted.org/packages/00/2b/e59e58c544dc9bd8bd8384ecdb8ea91f6727f0e37a7131baeff8d6f51661/rpds_py-0.30.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:73c67f2db7bc334e518d097c6d1e6fed021bbc9b7d678d6cc433478365d1d5f5", size = 573289, upload-time = "2025-11-30T20:22:32.997Z" }, + { url = "https://files.pythonhosted.org/packages/da/3e/a18e6f5b460893172a7d6a680e86d3b6bc87a54c1f0b03446a3c8c7b588f/rpds_py-0.30.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5ba103fb455be00f3b1c2076c9d4264bfcb037c976167a6047ed82f23153f02e", size = 599737, upload-time = "2025-11-30T20:22:34.419Z" }, + { url = "https://files.pythonhosted.org/packages/5c/e2/714694e4b87b85a18e2c243614974413c60aa107fd815b8cbc42b873d1d7/rpds_py-0.30.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7cee9c752c0364588353e627da8a7e808a66873672bcb5f52890c33fd965b394", size = 563120, upload-time = "2025-11-30T20:22:35.903Z" }, + { url = "https://files.pythonhosted.org/packages/6f/ab/d5d5e3bcedb0a77f4f613706b750e50a5a3ba1c15ccd3665ecc636c968fd/rpds_py-0.30.0-cp312-cp312-win32.whl", hash = "sha256:1ab5b83dbcf55acc8b08fc62b796ef672c457b17dbd7820a11d6c52c06839bdf", size = 223782, upload-time = "2025-11-30T20:22:37.271Z" }, + { url = "https://files.pythonhosted.org/packages/39/3b/f786af9957306fdc38a74cef405b7b93180f481fb48453a114bb6465744a/rpds_py-0.30.0-cp312-cp312-win_amd64.whl", hash = "sha256:a090322ca841abd453d43456ac34db46e8b05fd9b3b4ac0c78bcde8b089f959b", size = 240463, upload-time = "2025-11-30T20:22:39.021Z" }, + { url = "https://files.pythonhosted.org/packages/f3/d2/b91dc748126c1559042cfe41990deb92c4ee3e2b415f6b5234969ffaf0cc/rpds_py-0.30.0-cp312-cp312-win_arm64.whl", hash = "sha256:669b1805bd639dd2989b281be2cfd951c6121b65e729d9b843e9639ef1fd555e", size = 230868, upload-time = "2025-11-30T20:22:40.493Z" }, + { url = "https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2", size = 374887, upload-time = "2025-11-30T20:22:41.812Z" }, + { url = "https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8", size = 358904, upload-time = "2025-11-30T20:22:43.479Z" }, + { url = "https://files.pythonhosted.org/packages/58/70/faed8186300e3b9bdd138d0273109784eea2396c68458ed580f885dfe7ad/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2771c6c15973347f50fece41fc447c054b7ac2ae0502388ce3b6738cd366e3d4", size = 389945, upload-time = "2025-11-30T20:22:44.819Z" }, + { url = "https://files.pythonhosted.org/packages/bd/a8/073cac3ed2c6387df38f71296d002ab43496a96b92c823e76f46b8af0543/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0a59119fc6e3f460315fe9d08149f8102aa322299deaa5cab5b40092345c2136", size = 407783, upload-time = "2025-11-30T20:22:46.103Z" }, + { url = "https://files.pythonhosted.org/packages/77/57/5999eb8c58671f1c11eba084115e77a8899d6e694d2a18f69f0ba471ec8b/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:76fec018282b4ead0364022e3c54b60bf368b9d926877957a8624b58419169b7", size = 515021, upload-time = "2025-11-30T20:22:47.458Z" }, + { url = "https://files.pythonhosted.org/packages/e0/af/5ab4833eadc36c0a8ed2bc5c0de0493c04f6c06de223170bd0798ff98ced/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bef75a5525db97318e8cd061542b5a79812d711ea03dbc1f6f8dbb0c5f0d2", size = 414589, upload-time = "2025-11-30T20:22:48.872Z" }, + { url = "https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6", size = 394025, upload-time = "2025-11-30T20:22:50.196Z" }, + { url = "https://files.pythonhosted.org/packages/91/c4/fc70cd0249496493500e7cc2de87504f5aa6509de1e88623431fec76d4b6/rpds_py-0.30.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:9cf69cdda1f5968a30a359aba2f7f9aa648a9ce4b580d6826437f2b291cfc86e", size = 408895, upload-time = "2025-11-30T20:22:51.87Z" }, + { url = "https://files.pythonhosted.org/packages/58/95/d9275b05ab96556fefff73a385813eb66032e4c99f411d0795372d9abcea/rpds_py-0.30.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4796a717bf12b9da9d3ad002519a86063dcac8988b030e405704ef7d74d2d9d", size = 422799, upload-time = "2025-11-30T20:22:53.341Z" }, + { url = "https://files.pythonhosted.org/packages/06/c1/3088fc04b6624eb12a57eb814f0d4997a44b0d208d6cace713033ff1a6ba/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5d4c2aa7c50ad4728a094ebd5eb46c452e9cb7edbfdb18f9e1221f597a73e1e7", size = 572731, upload-time = "2025-11-30T20:22:54.778Z" }, + { url = "https://files.pythonhosted.org/packages/d8/42/c612a833183b39774e8ac8fecae81263a68b9583ee343db33ab571a7ce55/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ba81a9203d07805435eb06f536d95a266c21e5b2dfbf6517748ca40c98d19e31", size = 599027, upload-time = "2025-11-30T20:22:56.212Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/525a50f45b01d70005403ae0e25f43c0384369ad24ffe46e8d9068b50086/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:945dccface01af02675628334f7cf49c2af4c1c904748efc5cf7bbdf0b579f95", size = 563020, upload-time = "2025-11-30T20:22:58.2Z" }, + { url = "https://files.pythonhosted.org/packages/0b/5d/47c4655e9bcd5ca907148535c10e7d489044243cc9941c16ed7cd53be91d/rpds_py-0.30.0-cp313-cp313-win32.whl", hash = "sha256:b40fb160a2db369a194cb27943582b38f79fc4887291417685f3ad693c5a1d5d", size = 223139, upload-time = "2025-11-30T20:23:00.209Z" }, + { url = "https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15", size = 240224, upload-time = "2025-11-30T20:23:02.008Z" }, + { url = "https://files.pythonhosted.org/packages/24/95/ffd128ed1146a153d928617b0ef673960130be0009c77d8fbf0abe306713/rpds_py-0.30.0-cp313-cp313-win_arm64.whl", hash = "sha256:d96c2086587c7c30d44f31f42eae4eac89b60dabbac18c7669be3700f13c3ce1", size = 230645, upload-time = "2025-11-30T20:23:03.43Z" }, + { url = "https://files.pythonhosted.org/packages/ff/1b/b10de890a0def2a319a2626334a7f0ae388215eb60914dbac8a3bae54435/rpds_py-0.30.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:eb0b93f2e5c2189ee831ee43f156ed34e2a89a78a66b98cadad955972548be5a", size = 364443, upload-time = "2025-11-30T20:23:04.878Z" }, + { url = "https://files.pythonhosted.org/packages/0d/bf/27e39f5971dc4f305a4fb9c672ca06f290f7c4e261c568f3dea16a410d47/rpds_py-0.30.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:922e10f31f303c7c920da8981051ff6d8c1a56207dbdf330d9047f6d30b70e5e", size = 353375, upload-time = "2025-11-30T20:23:06.342Z" }, + { url = "https://files.pythonhosted.org/packages/40/58/442ada3bba6e8e6615fc00483135c14a7538d2ffac30e2d933ccf6852232/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdc62c8286ba9bf7f47befdcea13ea0e26bf294bda99758fd90535cbaf408000", size = 383850, upload-time = "2025-11-30T20:23:07.825Z" }, + { url = "https://files.pythonhosted.org/packages/14/14/f59b0127409a33c6ef6f5c1ebd5ad8e32d7861c9c7adfa9a624fc3889f6c/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:47f9a91efc418b54fb8190a6b4aa7813a23fb79c51f4bb84e418f5476c38b8db", size = 392812, upload-time = "2025-11-30T20:23:09.228Z" }, + { url = "https://files.pythonhosted.org/packages/b3/66/e0be3e162ac299b3a22527e8913767d869e6cc75c46bd844aa43fb81ab62/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3587eb9b17f3789ad50824084fa6f81921bbf9a795826570bda82cb3ed91f2", size = 517841, upload-time = "2025-11-30T20:23:11.186Z" }, + { url = "https://files.pythonhosted.org/packages/3d/55/fa3b9cf31d0c963ecf1ba777f7cf4b2a2c976795ac430d24a1f43d25a6ba/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39c02563fc592411c2c61d26b6c5fe1e51eaa44a75aa2c8735ca88b0d9599daa", size = 408149, upload-time = "2025-11-30T20:23:12.864Z" }, + { url = "https://files.pythonhosted.org/packages/60/ca/780cf3b1a32b18c0f05c441958d3758f02544f1d613abf9488cd78876378/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51a1234d8febafdfd33a42d97da7a43f5dcb120c1060e352a3fbc0c6d36e2083", size = 383843, upload-time = "2025-11-30T20:23:14.638Z" }, + { url = "https://files.pythonhosted.org/packages/82/86/d5f2e04f2aa6247c613da0c1dd87fcd08fa17107e858193566048a1e2f0a/rpds_py-0.30.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:eb2c4071ab598733724c08221091e8d80e89064cd472819285a9ab0f24bcedb9", size = 396507, upload-time = "2025-11-30T20:23:16.105Z" }, + { url = "https://files.pythonhosted.org/packages/4b/9a/453255d2f769fe44e07ea9785c8347edaf867f7026872e76c1ad9f7bed92/rpds_py-0.30.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6bdfdb946967d816e6adf9a3d8201bfad269c67efe6cefd7093ef959683c8de0", size = 414949, upload-time = "2025-11-30T20:23:17.539Z" }, + { url = "https://files.pythonhosted.org/packages/a3/31/622a86cdc0c45d6df0e9ccb6becdba5074735e7033c20e401a6d9d0e2ca0/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c77afbd5f5250bf27bf516c7c4a016813eb2d3e116139aed0096940c5982da94", size = 565790, upload-time = "2025-11-30T20:23:19.029Z" }, + { url = "https://files.pythonhosted.org/packages/1c/5d/15bbf0fb4a3f58a3b1c67855ec1efcc4ceaef4e86644665fff03e1b66d8d/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:61046904275472a76c8c90c9ccee9013d70a6d0f73eecefd38c1ae7c39045a08", size = 590217, upload-time = "2025-11-30T20:23:20.885Z" }, + { url = "https://files.pythonhosted.org/packages/6d/61/21b8c41f68e60c8cc3b2e25644f0e3681926020f11d06ab0b78e3c6bbff1/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27", size = 555806, upload-time = "2025-11-30T20:23:22.488Z" }, + { url = "https://files.pythonhosted.org/packages/f9/39/7e067bb06c31de48de3eb200f9fc7c58982a4d3db44b07e73963e10d3be9/rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6", size = 211341, upload-time = "2025-11-30T20:23:24.449Z" }, + { url = "https://files.pythonhosted.org/packages/0a/4d/222ef0b46443cf4cf46764d9c630f3fe4abaa7245be9417e56e9f52b8f65/rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d", size = 225768, upload-time = "2025-11-30T20:23:25.908Z" }, + { url = "https://files.pythonhosted.org/packages/86/81/dad16382ebbd3d0e0328776d8fd7ca94220e4fa0798d1dc5e7da48cb3201/rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0", size = 362099, upload-time = "2025-11-30T20:23:27.316Z" }, + { url = "https://files.pythonhosted.org/packages/2b/60/19f7884db5d5603edf3c6bce35408f45ad3e97e10007df0e17dd57af18f8/rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be", size = 353192, upload-time = "2025-11-30T20:23:29.151Z" }, + { url = "https://files.pythonhosted.org/packages/bf/c4/76eb0e1e72d1a9c4703c69607cec123c29028bff28ce41588792417098ac/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f", size = 384080, upload-time = "2025-11-30T20:23:30.785Z" }, + { url = "https://files.pythonhosted.org/packages/72/87/87ea665e92f3298d1b26d78814721dc39ed8d2c74b86e83348d6b48a6f31/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f", size = 394841, upload-time = "2025-11-30T20:23:32.209Z" }, + { url = "https://files.pythonhosted.org/packages/77/ad/7783a89ca0587c15dcbf139b4a8364a872a25f861bdb88ed99f9b0dec985/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87", size = 516670, upload-time = "2025-11-30T20:23:33.742Z" }, + { url = "https://files.pythonhosted.org/packages/5b/3c/2882bdac942bd2172f3da574eab16f309ae10a3925644e969536553cb4ee/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18", size = 408005, upload-time = "2025-11-30T20:23:35.253Z" }, + { url = "https://files.pythonhosted.org/packages/ce/81/9a91c0111ce1758c92516a3e44776920b579d9a7c09b2b06b642d4de3f0f/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad", size = 382112, upload-time = "2025-11-30T20:23:36.842Z" }, + { url = "https://files.pythonhosted.org/packages/cf/8e/1da49d4a107027e5fbc64daeab96a0706361a2918da10cb41769244b805d/rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07", size = 399049, upload-time = "2025-11-30T20:23:38.343Z" }, + { url = "https://files.pythonhosted.org/packages/df/5a/7ee239b1aa48a127570ec03becbb29c9d5a9eb092febbd1699d567cae859/rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f", size = 415661, upload-time = "2025-11-30T20:23:40.263Z" }, + { url = "https://files.pythonhosted.org/packages/70/ea/caa143cf6b772f823bc7929a45da1fa83569ee49b11d18d0ada7f5ee6fd6/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65", size = 565606, upload-time = "2025-11-30T20:23:42.186Z" }, + { url = "https://files.pythonhosted.org/packages/64/91/ac20ba2d69303f961ad8cf55bf7dbdb4763f627291ba3d0d7d67333cced9/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f", size = 591126, upload-time = "2025-11-30T20:23:44.086Z" }, + { url = "https://files.pythonhosted.org/packages/21/20/7ff5f3c8b00c8a95f75985128c26ba44503fb35b8e0259d812766ea966c7/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53", size = 553371, upload-time = "2025-11-30T20:23:46.004Z" }, + { url = "https://files.pythonhosted.org/packages/72/c7/81dadd7b27c8ee391c132a6b192111ca58d866577ce2d9b0ca157552cce0/rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed", size = 215298, upload-time = "2025-11-30T20:23:47.696Z" }, + { url = "https://files.pythonhosted.org/packages/3e/d2/1aaac33287e8cfb07aab2e6b8ac1deca62f6f65411344f1433c55e6f3eb8/rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950", size = 228604, upload-time = "2025-11-30T20:23:49.501Z" }, + { url = "https://files.pythonhosted.org/packages/e8/95/ab005315818cc519ad074cb7784dae60d939163108bd2b394e60dc7b5461/rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6", size = 222391, upload-time = "2025-11-30T20:23:50.96Z" }, + { url = "https://files.pythonhosted.org/packages/9e/68/154fe0194d83b973cdedcdcc88947a2752411165930182ae41d983dcefa6/rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb", size = 364868, upload-time = "2025-11-30T20:23:52.494Z" }, + { url = "https://files.pythonhosted.org/packages/83/69/8bbc8b07ec854d92a8b75668c24d2abcb1719ebf890f5604c61c9369a16f/rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8", size = 353747, upload-time = "2025-11-30T20:23:54.036Z" }, + { url = "https://files.pythonhosted.org/packages/ab/00/ba2e50183dbd9abcce9497fa5149c62b4ff3e22d338a30d690f9af970561/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7", size = 383795, upload-time = "2025-11-30T20:23:55.556Z" }, + { url = "https://files.pythonhosted.org/packages/05/6f/86f0272b84926bcb0e4c972262f54223e8ecc556b3224d281e6598fc9268/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898", size = 393330, upload-time = "2025-11-30T20:23:57.033Z" }, + { url = "https://files.pythonhosted.org/packages/cb/e9/0e02bb2e6dc63d212641da45df2b0bf29699d01715913e0d0f017ee29438/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e", size = 518194, upload-time = "2025-11-30T20:23:58.637Z" }, + { url = "https://files.pythonhosted.org/packages/ee/ca/be7bca14cf21513bdf9c0606aba17d1f389ea2b6987035eb4f62bd923f25/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419", size = 408340, upload-time = "2025-11-30T20:24:00.2Z" }, + { url = "https://files.pythonhosted.org/packages/c2/c7/736e00ebf39ed81d75544c0da6ef7b0998f8201b369acf842f9a90dc8fce/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551", size = 383765, upload-time = "2025-11-30T20:24:01.759Z" }, + { url = "https://files.pythonhosted.org/packages/4a/3f/da50dfde9956aaf365c4adc9533b100008ed31aea635f2b8d7b627e25b49/rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8", size = 396834, upload-time = "2025-11-30T20:24:03.687Z" }, + { url = "https://files.pythonhosted.org/packages/4e/00/34bcc2565b6020eab2623349efbdec810676ad571995911f1abdae62a3a0/rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5", size = 415470, upload-time = "2025-11-30T20:24:05.232Z" }, + { url = "https://files.pythonhosted.org/packages/8c/28/882e72b5b3e6f718d5453bd4d0d9cf8df36fddeb4ddbbab17869d5868616/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404", size = 565630, upload-time = "2025-11-30T20:24:06.878Z" }, + { url = "https://files.pythonhosted.org/packages/3b/97/04a65539c17692de5b85c6e293520fd01317fd878ea1995f0367d4532fb1/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856", size = 591148, upload-time = "2025-11-30T20:24:08.445Z" }, + { url = "https://files.pythonhosted.org/packages/85/70/92482ccffb96f5441aab93e26c4d66489eb599efdcf96fad90c14bbfb976/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40", size = 556030, upload-time = "2025-11-30T20:24:10.956Z" }, + { url = "https://files.pythonhosted.org/packages/20/53/7c7e784abfa500a2b6b583b147ee4bb5a2b3747a9166bab52fec4b5b5e7d/rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0", size = 211570, upload-time = "2025-11-30T20:24:12.735Z" }, + { url = "https://files.pythonhosted.org/packages/d0/02/fa464cdfbe6b26e0600b62c528b72d8608f5cc49f96b8d6e38c95d60c676/rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3", size = 226532, upload-time = "2025-11-30T20:24:14.634Z" }, +] + +[[package]] +name = "rsa" +version = "4.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyasn1" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/da/8a/22b7beea3ee0d44b1916c0c1cb0ee3af23b700b6da9f04991899d0c555d4/rsa-4.9.1.tar.gz", hash = "sha256:e7bdbfdb5497da4c07dfd35530e1a902659db6ff241e39d9953cad06ebd0ae75", size = 29034, upload-time = "2025-04-16T09:51:18.218Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/64/8d/0133e4eb4beed9e425d9a98ed6e081a55d195481b7632472be1af08d2f6b/rsa-4.9.1-py3-none-any.whl", hash = "sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762", size = 34696, upload-time = "2025-04-16T09:51:17.142Z" }, +] + +[[package]] +name = "shellingham" +version = "1.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/58/15/8b3609fd3830ef7b27b655beb4b4e9c62313a4e8da8c676e142cc210d58e/shellingham-1.5.4.tar.gz", hash = "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de", size = 10310, upload-time = "2023-10-24T04:13:40.426Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686", size = 9755, upload-time = "2023-10-24T04:13:38.866Z" }, +] + +[[package]] +name = "six" +version = "1.17.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" }, +] + +[[package]] +name = "smmap" +version = "5.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/44/cd/a040c4b3119bbe532e5b0732286f805445375489fceaec1f48306068ee3b/smmap-5.0.2.tar.gz", hash = "sha256:26ea65a03958fa0c8a1c7e8c7a58fdc77221b8910f6be2131affade476898ad5", size = 22329, upload-time = "2025-01-02T07:14:40.909Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/be/d09147ad1ec7934636ad912901c5fd7667e1c858e19d355237db0d0cd5e4/smmap-5.0.2-py3-none-any.whl", hash = "sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e", size = 24303, upload-time = "2025-01-02T07:14:38.724Z" }, +] + +[[package]] +name = "sniffio" +version = "1.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a2/87/a6771e1546d97e7e041b6ae58d80074f81b7d5121207425c964ddf5cfdbd/sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc", size = 20372, upload-time = "2024-02-25T23:20:04.057Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e9/44/75a9c9421471a6c4805dbf2356f7c181a29c1879239abab1ea2cc8f38b40/sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2", size = 10235, upload-time = "2024-02-25T23:20:01.196Z" }, +] + +[[package]] +name = "soupsieve" +version = "2.8.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7b/ae/2d9c981590ed9999a0d91755b47fc74f74de286b0f5cee14c9269041e6c4/soupsieve-2.8.3.tar.gz", hash = "sha256:3267f1eeea4251fb42728b6dfb746edc9acaffc4a45b27e19450b676586e8349", size = 118627, upload-time = "2026-01-20T04:27:02.457Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/2c/1462b1d0a634697ae9e55b3cecdcb64788e8b7d63f54d923fcd0bb140aed/soupsieve-2.8.3-py3-none-any.whl", hash = "sha256:ed64f2ba4eebeab06cc4962affce381647455978ffc1e36bb79a545b91f45a95", size = 37016, upload-time = "2026-01-20T04:27:01.012Z" }, +] + +[[package]] +name = "sse-starlette" +version = "3.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "starlette" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8b/8d/00d280c03ffd39aaee0e86ec81e2d3b9253036a0f93f51d10503adef0e65/sse_starlette-3.2.0.tar.gz", hash = "sha256:8127594edfb51abe44eac9c49e59b0b01f1039d0c7461c6fd91d4e03b70da422", size = 27253, upload-time = "2026-01-17T13:11:05.62Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/96/7f/832f015020844a8b8f7a9cbc103dd76ba8e3875004c41e08440ea3a2b41a/sse_starlette-3.2.0-py3-none-any.whl", hash = "sha256:5876954bd51920fc2cd51baee47a080eb88a37b5b784e615abb0b283f801cdbf", size = 12763, upload-time = "2026-01-17T13:11:03.775Z" }, +] + +[[package]] +name = "starlette" +version = "0.52.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c4/68/79977123bb7be889ad680d79a40f339082c1978b5cfcf62c2d8d196873ac/starlette-0.52.1.tar.gz", hash = "sha256:834edd1b0a23167694292e94f597773bc3f89f362be6effee198165a35d62933", size = 2653702, upload-time = "2026-01-18T13:34:11.062Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/0d/13d1d239a25cbfb19e740db83143e95c772a1fe10202dda4b76792b114dd/starlette-0.52.1-py3-none-any.whl", hash = "sha256:0029d43eb3d273bc4f83a08720b4912ea4b071087a3b48db01b7c839f7954d74", size = 74272, upload-time = "2026-01-18T13:34:09.188Z" }, +] + +[[package]] +name = "streamlit" +version = "1.53.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "altair" }, + { name = "blinker" }, + { name = "cachetools" }, + { name = "click" }, + { name = "gitpython" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pandas" }, + { name = "pillow" }, + { name = "protobuf" }, + { name = "pyarrow" }, + { name = "pydeck" }, + { name = "requests" }, + { name = "tenacity" }, + { name = "toml" }, + { name = "tornado" }, + { name = "typing-extensions" }, + { name = "watchdog", marker = "sys_platform != 'darwin'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/31/cc/347730d06e3950e426bf2ee06eaf9b281e18387bffa82bd69aa0f281eee3/streamlit-1.53.1.tar.gz", hash = "sha256:ae656af3b68b4bb2d669fa977606096f2021bcbaa14a454a290f8e0a37bab277", size = 8650843, upload-time = "2026-01-22T21:39:04.087Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/23/c3/5e6f6a9328d57436b658447b6f05969d435df8d31344e34ec75c3044657b/streamlit-1.53.1-py3-none-any.whl", hash = "sha256:9534d151feea485b69200dd36448f95f418c511e8c81186ceb57133bdf1443f7", size = 9111505, upload-time = "2026-01-22T21:39:01.344Z" }, +] + +[[package]] +name = "sympy" +version = "1.14.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mpmath" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/83/d3/803453b36afefb7c2bb238361cd4ae6125a569b4db67cd9e79846ba2d68c/sympy-1.14.0.tar.gz", hash = "sha256:d3d3fe8df1e5a0b42f0e7bdf50541697dbe7d23746e894990c030e2b05e72517", size = 7793921, upload-time = "2025-04-27T18:05:01.611Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl", hash = "sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5", size = 6299353, upload-time = "2025-04-27T18:04:59.103Z" }, +] + +[[package]] +name = "tenacity" +version = "9.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0a/d4/2b0cd0fe285e14b36db076e78c93766ff1d529d70408bd1d2a5a84f1d929/tenacity-9.1.2.tar.gz", hash = "sha256:1169d376c297e7de388d18b4481760d478b0e99a777cad3a9c86e556f4b697cb", size = 48036, upload-time = "2025-04-02T08:25:09.966Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/30/643397144bfbfec6f6ef821f36f33e57d35946c44a2352d3c9f0ae847619/tenacity-9.1.2-py3-none-any.whl", hash = "sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138", size = 28248, upload-time = "2025-04-02T08:25:07.678Z" }, +] + +[[package]] +name = "tiktoken" +version = "0.12.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "regex" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7d/ab/4d017d0f76ec3171d469d80fc03dfbb4e48a4bcaddaa831b31d526f05edc/tiktoken-0.12.0.tar.gz", hash = "sha256:b18ba7ee2b093863978fcb14f74b3707cdc8d4d4d3836853ce7ec60772139931", size = 37806, upload-time = "2025-10-06T20:22:45.419Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a4/85/be65d39d6b647c79800fd9d29241d081d4eeb06271f383bb87200d74cf76/tiktoken-0.12.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b97f74aca0d78a1ff21b8cd9e9925714c15a9236d6ceacf5c7327c117e6e21e8", size = 1050728, upload-time = "2025-10-06T20:21:52.756Z" }, + { url = "https://files.pythonhosted.org/packages/4a/42/6573e9129bc55c9bf7300b3a35bef2c6b9117018acca0dc760ac2d93dffe/tiktoken-0.12.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2b90f5ad190a4bb7c3eb30c5fa32e1e182ca1ca79f05e49b448438c3e225a49b", size = 994049, upload-time = "2025-10-06T20:21:53.782Z" }, + { url = "https://files.pythonhosted.org/packages/66/c5/ed88504d2f4a5fd6856990b230b56d85a777feab84e6129af0822f5d0f70/tiktoken-0.12.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:65b26c7a780e2139e73acc193e5c63ac754021f160df919add909c1492c0fb37", size = 1129008, upload-time = "2025-10-06T20:21:54.832Z" }, + { url = "https://files.pythonhosted.org/packages/f4/90/3dae6cc5436137ebd38944d396b5849e167896fc2073da643a49f372dc4f/tiktoken-0.12.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:edde1ec917dfd21c1f2f8046b86348b0f54a2c0547f68149d8600859598769ad", size = 1152665, upload-time = "2025-10-06T20:21:56.129Z" }, + { url = "https://files.pythonhosted.org/packages/a3/fe/26df24ce53ffde419a42f5f53d755b995c9318908288c17ec3f3448313a3/tiktoken-0.12.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:35a2f8ddd3824608b3d650a000c1ef71f730d0c56486845705a8248da00f9fe5", size = 1194230, upload-time = "2025-10-06T20:21:57.546Z" }, + { url = "https://files.pythonhosted.org/packages/20/cc/b064cae1a0e9fac84b0d2c46b89f4e57051a5f41324e385d10225a984c24/tiktoken-0.12.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:83d16643edb7fa2c99eff2ab7733508aae1eebb03d5dfc46f5565862810f24e3", size = 1254688, upload-time = "2025-10-06T20:21:58.619Z" }, + { url = "https://files.pythonhosted.org/packages/81/10/b8523105c590c5b8349f2587e2fdfe51a69544bd5a76295fc20f2374f470/tiktoken-0.12.0-cp312-cp312-win_amd64.whl", hash = "sha256:ffc5288f34a8bc02e1ea7047b8d041104791d2ddbf42d1e5fa07822cbffe16bd", size = 878694, upload-time = "2025-10-06T20:21:59.876Z" }, + { url = "https://files.pythonhosted.org/packages/00/61/441588ee21e6b5cdf59d6870f86beb9789e532ee9718c251b391b70c68d6/tiktoken-0.12.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:775c2c55de2310cc1bc9a3ad8826761cbdc87770e586fd7b6da7d4589e13dab3", size = 1050802, upload-time = "2025-10-06T20:22:00.96Z" }, + { url = "https://files.pythonhosted.org/packages/1f/05/dcf94486d5c5c8d34496abe271ac76c5b785507c8eae71b3708f1ad9b45a/tiktoken-0.12.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a01b12f69052fbe4b080a2cfb867c4de12c704b56178edf1d1d7b273561db160", size = 993995, upload-time = "2025-10-06T20:22:02.788Z" }, + { url = "https://files.pythonhosted.org/packages/a0/70/5163fe5359b943f8db9946b62f19be2305de8c3d78a16f629d4165e2f40e/tiktoken-0.12.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:01d99484dc93b129cd0964f9d34eee953f2737301f18b3c7257bf368d7615baa", size = 1128948, upload-time = "2025-10-06T20:22:03.814Z" }, + { url = "https://files.pythonhosted.org/packages/0c/da/c028aa0babf77315e1cef357d4d768800c5f8a6de04d0eac0f377cb619fa/tiktoken-0.12.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:4a1a4fcd021f022bfc81904a911d3df0f6543b9e7627b51411da75ff2fe7a1be", size = 1151986, upload-time = "2025-10-06T20:22:05.173Z" }, + { url = "https://files.pythonhosted.org/packages/a0/5a/886b108b766aa53e295f7216b509be95eb7d60b166049ce2c58416b25f2a/tiktoken-0.12.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:981a81e39812d57031efdc9ec59fa32b2a5a5524d20d4776574c4b4bd2e9014a", size = 1194222, upload-time = "2025-10-06T20:22:06.265Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f8/4db272048397636ac7a078d22773dd2795b1becee7bc4922fe6207288d57/tiktoken-0.12.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9baf52f84a3f42eef3ff4e754a0db79a13a27921b457ca9832cf944c6be4f8f3", size = 1255097, upload-time = "2025-10-06T20:22:07.403Z" }, + { url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl", hash = "sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697", size = 879117, upload-time = "2025-10-06T20:22:08.418Z" }, + { url = "https://files.pythonhosted.org/packages/ce/76/994fc868f88e016e6d05b0da5ac24582a14c47893f4474c3e9744283f1d5/tiktoken-0.12.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:d5f89ea5680066b68bcb797ae85219c72916c922ef0fcdd3480c7d2315ffff16", size = 1050309, upload-time = "2025-10-06T20:22:10.939Z" }, + { url = "https://files.pythonhosted.org/packages/f6/b8/57ef1456504c43a849821920d582a738a461b76a047f352f18c0b26c6516/tiktoken-0.12.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b4e7ed1c6a7a8a60a3230965bdedba8cc58f68926b835e519341413370e0399a", size = 993712, upload-time = "2025-10-06T20:22:12.115Z" }, + { url = "https://files.pythonhosted.org/packages/72/90/13da56f664286ffbae9dbcfadcc625439142675845baa62715e49b87b68b/tiktoken-0.12.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:fc530a28591a2d74bce821d10b418b26a094bf33839e69042a6e86ddb7a7fb27", size = 1128725, upload-time = "2025-10-06T20:22:13.541Z" }, + { url = "https://files.pythonhosted.org/packages/05/df/4f80030d44682235bdaecd7346c90f67ae87ec8f3df4a3442cb53834f7e4/tiktoken-0.12.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:06a9f4f49884139013b138920a4c393aa6556b2f8f536345f11819389c703ebb", size = 1151875, upload-time = "2025-10-06T20:22:14.559Z" }, + { url = "https://files.pythonhosted.org/packages/22/1f/ae535223a8c4ef4c0c1192e3f9b82da660be9eb66b9279e95c99288e9dab/tiktoken-0.12.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:04f0e6a985d95913cabc96a741c5ffec525a2c72e9df086ff17ebe35985c800e", size = 1194451, upload-time = "2025-10-06T20:22:15.545Z" }, + { url = "https://files.pythonhosted.org/packages/78/a7/f8ead382fce0243cb625c4f266e66c27f65ae65ee9e77f59ea1653b6d730/tiktoken-0.12.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:0ee8f9ae00c41770b5f9b0bb1235474768884ae157de3beb5439ca0fd70f3e25", size = 1253794, upload-time = "2025-10-06T20:22:16.624Z" }, + { url = "https://files.pythonhosted.org/packages/93/e0/6cc82a562bc6365785a3ff0af27a2a092d57c47d7a81d9e2295d8c36f011/tiktoken-0.12.0-cp313-cp313t-win_amd64.whl", hash = "sha256:dc2dd125a62cb2b3d858484d6c614d136b5b848976794edfb63688d539b8b93f", size = 878777, upload-time = "2025-10-06T20:22:18.036Z" }, + { url = "https://files.pythonhosted.org/packages/72/05/3abc1db5d2c9aadc4d2c76fa5640134e475e58d9fbb82b5c535dc0de9b01/tiktoken-0.12.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:a90388128df3b3abeb2bfd1895b0681412a8d7dc644142519e6f0a97c2111646", size = 1050188, upload-time = "2025-10-06T20:22:19.563Z" }, + { url = "https://files.pythonhosted.org/packages/e3/7b/50c2f060412202d6c95f32b20755c7a6273543b125c0985d6fa9465105af/tiktoken-0.12.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:da900aa0ad52247d8794e307d6446bd3cdea8e192769b56276695d34d2c9aa88", size = 993978, upload-time = "2025-10-06T20:22:20.702Z" }, + { url = "https://files.pythonhosted.org/packages/14/27/bf795595a2b897e271771cd31cb847d479073497344c637966bdf2853da1/tiktoken-0.12.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:285ba9d73ea0d6171e7f9407039a290ca77efcdb026be7769dccc01d2c8d7fff", size = 1129271, upload-time = "2025-10-06T20:22:22.06Z" }, + { url = "https://files.pythonhosted.org/packages/f5/de/9341a6d7a8f1b448573bbf3425fa57669ac58258a667eb48a25dfe916d70/tiktoken-0.12.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:d186a5c60c6a0213f04a7a802264083dea1bbde92a2d4c7069e1a56630aef830", size = 1151216, upload-time = "2025-10-06T20:22:23.085Z" }, + { url = "https://files.pythonhosted.org/packages/75/0d/881866647b8d1be4d67cb24e50d0c26f9f807f994aa1510cb9ba2fe5f612/tiktoken-0.12.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:604831189bd05480f2b885ecd2d1986dc7686f609de48208ebbbddeea071fc0b", size = 1194860, upload-time = "2025-10-06T20:22:24.602Z" }, + { url = "https://files.pythonhosted.org/packages/b3/1e/b651ec3059474dab649b8d5b69f5c65cd8fcd8918568c1935bd4136c9392/tiktoken-0.12.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:8f317e8530bb3a222547b85a58583238c8f74fd7a7408305f9f63246d1a0958b", size = 1254567, upload-time = "2025-10-06T20:22:25.671Z" }, + { url = "https://files.pythonhosted.org/packages/80/57/ce64fd16ac390fafde001268c364d559447ba09b509181b2808622420eec/tiktoken-0.12.0-cp314-cp314-win_amd64.whl", hash = "sha256:399c3dd672a6406719d84442299a490420b458c44d3ae65516302a99675888f3", size = 921067, upload-time = "2025-10-06T20:22:26.753Z" }, + { url = "https://files.pythonhosted.org/packages/ac/a4/72eed53e8976a099539cdd5eb36f241987212c29629d0a52c305173e0a68/tiktoken-0.12.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:c2c714c72bc00a38ca969dae79e8266ddec999c7ceccd603cc4f0d04ccd76365", size = 1050473, upload-time = "2025-10-06T20:22:27.775Z" }, + { url = "https://files.pythonhosted.org/packages/e6/d7/0110b8f54c008466b19672c615f2168896b83706a6611ba6e47313dbc6e9/tiktoken-0.12.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:cbb9a3ba275165a2cb0f9a83f5d7025afe6b9d0ab01a22b50f0e74fee2ad253e", size = 993855, upload-time = "2025-10-06T20:22:28.799Z" }, + { url = "https://files.pythonhosted.org/packages/5f/77/4f268c41a3957c418b084dd576ea2fad2e95da0d8e1ab705372892c2ca22/tiktoken-0.12.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:dfdfaa5ffff8993a3af94d1125870b1d27aed7cb97aa7eb8c1cefdbc87dbee63", size = 1129022, upload-time = "2025-10-06T20:22:29.981Z" }, + { url = "https://files.pythonhosted.org/packages/4e/2b/fc46c90fe5028bd094cd6ee25a7db321cb91d45dc87531e2bdbb26b4867a/tiktoken-0.12.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:584c3ad3d0c74f5269906eb8a659c8bfc6144a52895d9261cdaf90a0ae5f4de0", size = 1150736, upload-time = "2025-10-06T20:22:30.996Z" }, + { url = "https://files.pythonhosted.org/packages/28/c0/3c7a39ff68022ddfd7d93f3337ad90389a342f761c4d71de99a3ccc57857/tiktoken-0.12.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:54c891b416a0e36b8e2045b12b33dd66fb34a4fe7965565f1b482da50da3e86a", size = 1194908, upload-time = "2025-10-06T20:22:32.073Z" }, + { url = "https://files.pythonhosted.org/packages/ab/0d/c1ad6f4016a3968c048545f5d9b8ffebf577774b2ede3e2e352553b685fe/tiktoken-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5edb8743b88d5be814b1a8a8854494719080c28faaa1ccbef02e87354fe71ef0", size = 1253706, upload-time = "2025-10-06T20:22:33.385Z" }, + { url = "https://files.pythonhosted.org/packages/af/df/c7891ef9d2712ad774777271d39fdef63941ffba0a9d59b7ad1fd2765e57/tiktoken-0.12.0-cp314-cp314t-win_amd64.whl", hash = "sha256:f61c0aea5565ac82e2ec50a05e02a6c44734e91b51c10510b084ea1b8e633a71", size = 920667, upload-time = "2025-10-06T20:22:34.444Z" }, +] + +[[package]] +name = "tokenizers" +version = "0.22.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "huggingface-hub" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/73/6f/f80cfef4a312e1fb34baf7d85c72d4411afde10978d4657f8cdd811d3ccc/tokenizers-0.22.2.tar.gz", hash = "sha256:473b83b915e547aa366d1eee11806deaf419e17be16310ac0a14077f1e28f917", size = 372115, upload-time = "2026-01-05T10:45:15.988Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/92/97/5dbfabf04c7e348e655e907ed27913e03db0923abb5dfdd120d7b25630e1/tokenizers-0.22.2-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:544dd704ae7238755d790de45ba8da072e9af3eea688f698b137915ae959281c", size = 3100275, upload-time = "2026-01-05T10:41:02.158Z" }, + { url = "https://files.pythonhosted.org/packages/2e/47/174dca0502ef88b28f1c9e06b73ce33500eedfac7a7692108aec220464e7/tokenizers-0.22.2-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:1e418a55456beedca4621dbab65a318981467a2b188e982a23e117f115ce5001", size = 2981472, upload-time = "2026-01-05T10:41:00.276Z" }, + { url = "https://files.pythonhosted.org/packages/d6/84/7990e799f1309a8b87af6b948f31edaa12a3ed22d11b352eaf4f4b2e5753/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2249487018adec45d6e3554c71d46eb39fa8ea67156c640f7513eb26f318cec7", size = 3290736, upload-time = "2026-01-05T10:40:32.165Z" }, + { url = "https://files.pythonhosted.org/packages/78/59/09d0d9ba94dcd5f4f1368d4858d24546b4bdc0231c2354aa31d6199f0399/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25b85325d0815e86e0bac263506dd114578953b7b53d7de09a6485e4a160a7dd", size = 3168835, upload-time = "2026-01-05T10:40:38.847Z" }, + { url = "https://files.pythonhosted.org/packages/47/50/b3ebb4243e7160bda8d34b731e54dd8ab8b133e50775872e7a434e524c28/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bfb88f22a209ff7b40a576d5324bf8286b519d7358663db21d6246fb17eea2d5", size = 3521673, upload-time = "2026-01-05T10:40:56.614Z" }, + { url = "https://files.pythonhosted.org/packages/e0/fa/89f4cb9e08df770b57adb96f8cbb7e22695a4cb6c2bd5f0c4f0ebcf33b66/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1c774b1276f71e1ef716e5486f21e76333464f47bece56bbd554485982a9e03e", size = 3724818, upload-time = "2026-01-05T10:40:44.507Z" }, + { url = "https://files.pythonhosted.org/packages/64/04/ca2363f0bfbe3b3d36e95bf67e56a4c88c8e3362b658e616d1ac185d47f2/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:df6c4265b289083bf710dff49bc51ef252f9d5be33a45ee2bed151114a56207b", size = 3379195, upload-time = "2026-01-05T10:40:51.139Z" }, + { url = "https://files.pythonhosted.org/packages/2e/76/932be4b50ef6ccedf9d3c6639b056a967a86258c6d9200643f01269211ca/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:369cc9fc8cc10cb24143873a0d95438bb8ee257bb80c71989e3ee290e8d72c67", size = 3274982, upload-time = "2026-01-05T10:40:58.331Z" }, + { url = "https://files.pythonhosted.org/packages/1d/28/5f9f5a4cc211b69e89420980e483831bcc29dade307955cc9dc858a40f01/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:29c30b83d8dcd061078b05ae0cb94d3c710555fbb44861139f9f83dcca3dc3e4", size = 9478245, upload-time = "2026-01-05T10:41:04.053Z" }, + { url = "https://files.pythonhosted.org/packages/6c/fb/66e2da4704d6aadebf8cb39f1d6d1957df667ab24cff2326b77cda0dcb85/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:37ae80a28c1d3265bb1f22464c856bd23c02a05bb211e56d0c5301a435be6c1a", size = 9560069, upload-time = "2026-01-05T10:45:10.673Z" }, + { url = "https://files.pythonhosted.org/packages/16/04/fed398b05caa87ce9b1a1bb5166645e38196081b225059a6edaff6440fac/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:791135ee325f2336f498590eb2f11dc5c295232f288e75c99a36c5dbce63088a", size = 9899263, upload-time = "2026-01-05T10:45:12.559Z" }, + { url = "https://files.pythonhosted.org/packages/05/a1/d62dfe7376beaaf1394917e0f8e93ee5f67fea8fcf4107501db35996586b/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:38337540fbbddff8e999d59970f3c6f35a82de10053206a7562f1ea02d046fa5", size = 10033429, upload-time = "2026-01-05T10:45:14.333Z" }, + { url = "https://files.pythonhosted.org/packages/fd/18/a545c4ea42af3df6effd7d13d250ba77a0a86fb20393143bbb9a92e434d4/tokenizers-0.22.2-cp39-abi3-win32.whl", hash = "sha256:a6bf3f88c554a2b653af81f3204491c818ae2ac6fbc09e76ef4773351292bc92", size = 2502363, upload-time = "2026-01-05T10:45:20.593Z" }, + { url = "https://files.pythonhosted.org/packages/65/71/0670843133a43d43070abeb1949abfdef12a86d490bea9cd9e18e37c5ff7/tokenizers-0.22.2-cp39-abi3-win_amd64.whl", hash = "sha256:c9ea31edff2968b44a88f97d784c2f16dc0729b8b143ed004699ebca91f05c48", size = 2747786, upload-time = "2026-01-05T10:45:18.411Z" }, + { url = "https://files.pythonhosted.org/packages/72/f4/0de46cfa12cdcbcd464cc59fde36912af405696f687e53a091fb432f694c/tokenizers-0.22.2-cp39-abi3-win_arm64.whl", hash = "sha256:9ce725d22864a1e965217204946f830c37876eee3b2ba6fc6255e8e903d5fcbc", size = 2612133, upload-time = "2026-01-05T10:45:17.232Z" }, +] + +[[package]] +name = "toml" +version = "0.10.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/be/ba/1f744cdc819428fc6b5084ec34d9b30660f6f9daaf70eead706e3203ec3c/toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f", size = 22253, upload-time = "2020-11-01T01:40:22.204Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", size = 16588, upload-time = "2020-11-01T01:40:20.672Z" }, +] + +[[package]] +name = "tomli" +version = "2.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/82/30/31573e9457673ab10aa432461bee537ce6cef177667deca369efb79df071/tomli-2.4.0.tar.gz", hash = "sha256:aa89c3f6c277dd275d8e243ad24f3b5e701491a860d5121f2cdd399fbb31fc9c", size = 17477, upload-time = "2026-01-11T11:22:38.165Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3c/43/7389a1869f2f26dba52404e1ef13b4784b6b37dac93bac53457e3ff24ca3/tomli-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:920b1de295e72887bafa3ad9f7a792f811847d57ea6b1215154030cf131f16b1", size = 154894, upload-time = "2026-01-11T11:21:56.07Z" }, + { url = "https://files.pythonhosted.org/packages/e9/05/2f9bf110b5294132b2edf13fe6ca6ae456204f3d749f623307cbb7a946f2/tomli-2.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7d6d9a4aee98fac3eab4952ad1d73aee87359452d1c086b5ceb43ed02ddb16b8", size = 149053, upload-time = "2026-01-11T11:21:57.467Z" }, + { url = "https://files.pythonhosted.org/packages/e8/41/1eda3ca1abc6f6154a8db4d714a4d35c4ad90adc0bcf700657291593fbf3/tomli-2.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:36b9d05b51e65b254ea6c2585b59d2c4cb91c8a3d91d0ed0f17591a29aaea54a", size = 243481, upload-time = "2026-01-11T11:21:58.661Z" }, + { url = "https://files.pythonhosted.org/packages/d2/6d/02ff5ab6c8868b41e7d4b987ce2b5f6a51d3335a70aa144edd999e055a01/tomli-2.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1c8a885b370751837c029ef9bc014f27d80840e48bac415f3412e6593bbc18c1", size = 251720, upload-time = "2026-01-11T11:22:00.178Z" }, + { url = "https://files.pythonhosted.org/packages/7b/57/0405c59a909c45d5b6f146107c6d997825aa87568b042042f7a9c0afed34/tomli-2.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8768715ffc41f0008abe25d808c20c3d990f42b6e2e58305d5da280ae7d1fa3b", size = 247014, upload-time = "2026-01-11T11:22:01.238Z" }, + { url = "https://files.pythonhosted.org/packages/2c/0e/2e37568edd944b4165735687cbaf2fe3648129e440c26d02223672ee0630/tomli-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7b438885858efd5be02a9a133caf5812b8776ee0c969fea02c45e8e3f296ba51", size = 251820, upload-time = "2026-01-11T11:22:02.727Z" }, + { url = "https://files.pythonhosted.org/packages/5a/1c/ee3b707fdac82aeeb92d1a113f803cf6d0f37bdca0849cb489553e1f417a/tomli-2.4.0-cp312-cp312-win32.whl", hash = "sha256:0408e3de5ec77cc7f81960c362543cbbd91ef883e3138e81b729fc3eea5b9729", size = 97712, upload-time = "2026-01-11T11:22:03.777Z" }, + { url = "https://files.pythonhosted.org/packages/69/13/c07a9177d0b3bab7913299b9278845fc6eaaca14a02667c6be0b0a2270c8/tomli-2.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:685306e2cc7da35be4ee914fd34ab801a6acacb061b6a7abca922aaf9ad368da", size = 108296, upload-time = "2026-01-11T11:22:04.86Z" }, + { url = "https://files.pythonhosted.org/packages/18/27/e267a60bbeeee343bcc279bb9e8fbed0cbe224bc7b2a3dc2975f22809a09/tomli-2.4.0-cp312-cp312-win_arm64.whl", hash = "sha256:5aa48d7c2356055feef06a43611fc401a07337d5b006be13a30f6c58f869e3c3", size = 94553, upload-time = "2026-01-11T11:22:05.854Z" }, + { url = "https://files.pythonhosted.org/packages/34/91/7f65f9809f2936e1f4ce6268ae1903074563603b2a2bd969ebbda802744f/tomli-2.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84d081fbc252d1b6a982e1870660e7330fb8f90f676f6e78b052ad4e64714bf0", size = 154915, upload-time = "2026-01-11T11:22:06.703Z" }, + { url = "https://files.pythonhosted.org/packages/20/aa/64dd73a5a849c2e8f216b755599c511badde80e91e9bc2271baa7b2cdbb1/tomli-2.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9a08144fa4cba33db5255f9b74f0b89888622109bd2776148f2597447f92a94e", size = 149038, upload-time = "2026-01-11T11:22:07.56Z" }, + { url = "https://files.pythonhosted.org/packages/9e/8a/6d38870bd3d52c8d1505ce054469a73f73a0fe62c0eaf5dddf61447e32fa/tomli-2.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c73add4bb52a206fd0c0723432db123c0c75c280cbd67174dd9d2db228ebb1b4", size = 242245, upload-time = "2026-01-11T11:22:08.344Z" }, + { url = "https://files.pythonhosted.org/packages/59/bb/8002fadefb64ab2669e5b977df3f5e444febea60e717e755b38bb7c41029/tomli-2.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fb2945cbe303b1419e2706e711b7113da57b7db31ee378d08712d678a34e51e", size = 250335, upload-time = "2026-01-11T11:22:09.951Z" }, + { url = "https://files.pythonhosted.org/packages/a5/3d/4cdb6f791682b2ea916af2de96121b3cb1284d7c203d97d92d6003e91c8d/tomli-2.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bbb1b10aa643d973366dc2cb1ad94f99c1726a02343d43cbc011edbfac579e7c", size = 245962, upload-time = "2026-01-11T11:22:11.27Z" }, + { url = "https://files.pythonhosted.org/packages/f2/4a/5f25789f9a460bd858ba9756ff52d0830d825b458e13f754952dd15fb7bb/tomli-2.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4cbcb367d44a1f0c2be408758b43e1ffb5308abe0ea222897d6bfc8e8281ef2f", size = 250396, upload-time = "2026-01-11T11:22:12.325Z" }, + { url = "https://files.pythonhosted.org/packages/aa/2f/b73a36fea58dfa08e8b3a268750e6853a6aac2a349241a905ebd86f3047a/tomli-2.4.0-cp313-cp313-win32.whl", hash = "sha256:7d49c66a7d5e56ac959cb6fc583aff0651094ec071ba9ad43df785abc2320d86", size = 97530, upload-time = "2026-01-11T11:22:13.865Z" }, + { url = "https://files.pythonhosted.org/packages/3b/af/ca18c134b5d75de7e8dc551c5234eaba2e8e951f6b30139599b53de9c187/tomli-2.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:3cf226acb51d8f1c394c1b310e0e0e61fecdd7adcb78d01e294ac297dd2e7f87", size = 108227, upload-time = "2026-01-11T11:22:15.224Z" }, + { url = "https://files.pythonhosted.org/packages/22/c3/b386b832f209fee8073c8138ec50f27b4460db2fdae9ffe022df89a57f9b/tomli-2.4.0-cp313-cp313-win_arm64.whl", hash = "sha256:d20b797a5c1ad80c516e41bc1fb0443ddb5006e9aaa7bda2d71978346aeb9132", size = 94748, upload-time = "2026-01-11T11:22:16.009Z" }, + { url = "https://files.pythonhosted.org/packages/f3/c4/84047a97eb1004418bc10bdbcfebda209fca6338002eba2dc27cc6d13563/tomli-2.4.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:26ab906a1eb794cd4e103691daa23d95c6919cc2fa9160000ac02370cc9dd3f6", size = 154725, upload-time = "2026-01-11T11:22:17.269Z" }, + { url = "https://files.pythonhosted.org/packages/a8/5d/d39038e646060b9d76274078cddf146ced86dc2b9e8bbf737ad5983609a0/tomli-2.4.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:20cedb4ee43278bc4f2fee6cb50daec836959aadaf948db5172e776dd3d993fc", size = 148901, upload-time = "2026-01-11T11:22:18.287Z" }, + { url = "https://files.pythonhosted.org/packages/73/e5/383be1724cb30f4ce44983d249645684a48c435e1cd4f8b5cded8a816d3c/tomli-2.4.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:39b0b5d1b6dd03684b3fb276407ebed7090bbec989fa55838c98560c01113b66", size = 243375, upload-time = "2026-01-11T11:22:19.154Z" }, + { url = "https://files.pythonhosted.org/packages/31/f0/bea80c17971c8d16d3cc109dc3585b0f2ce1036b5f4a8a183789023574f2/tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a26d7ff68dfdb9f87a016ecfd1e1c2bacbe3108f4e0f8bcd2228ef9a766c787d", size = 250639, upload-time = "2026-01-11T11:22:20.168Z" }, + { url = "https://files.pythonhosted.org/packages/2c/8f/2853c36abbb7608e3f945d8a74e32ed3a74ee3a1f468f1ffc7d1cb3abba6/tomli-2.4.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:20ffd184fb1df76a66e34bd1b36b4a4641bd2b82954befa32fe8163e79f1a702", size = 246897, upload-time = "2026-01-11T11:22:21.544Z" }, + { url = "https://files.pythonhosted.org/packages/49/f0/6c05e3196ed5337b9fe7ea003e95fd3819a840b7a0f2bf5a408ef1dad8ed/tomli-2.4.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:75c2f8bbddf170e8effc98f5e9084a8751f8174ea6ccf4fca5398436e0320bc8", size = 254697, upload-time = "2026-01-11T11:22:23.058Z" }, + { url = "https://files.pythonhosted.org/packages/f3/f5/2922ef29c9f2951883525def7429967fc4d8208494e5ab524234f06b688b/tomli-2.4.0-cp314-cp314-win32.whl", hash = "sha256:31d556d079d72db7c584c0627ff3a24c5d3fb4f730221d3444f3efb1b2514776", size = 98567, upload-time = "2026-01-11T11:22:24.033Z" }, + { url = "https://files.pythonhosted.org/packages/7b/31/22b52e2e06dd2a5fdbc3ee73226d763b184ff21fc24e20316a44ccc4d96b/tomli-2.4.0-cp314-cp314-win_amd64.whl", hash = "sha256:43e685b9b2341681907759cf3a04e14d7104b3580f808cfde1dfdb60ada85475", size = 108556, upload-time = "2026-01-11T11:22:25.378Z" }, + { url = "https://files.pythonhosted.org/packages/48/3d/5058dff3255a3d01b705413f64f4306a141a8fd7a251e5a495e3f192a998/tomli-2.4.0-cp314-cp314-win_arm64.whl", hash = "sha256:3d895d56bd3f82ddd6faaff993c275efc2ff38e52322ea264122d72729dca2b2", size = 96014, upload-time = "2026-01-11T11:22:26.138Z" }, + { url = "https://files.pythonhosted.org/packages/b8/4e/75dab8586e268424202d3a1997ef6014919c941b50642a1682df43204c22/tomli-2.4.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:5b5807f3999fb66776dbce568cc9a828544244a8eb84b84b9bafc080c99597b9", size = 163339, upload-time = "2026-01-11T11:22:27.143Z" }, + { url = "https://files.pythonhosted.org/packages/06/e3/b904d9ab1016829a776d97f163f183a48be6a4deb87304d1e0116a349519/tomli-2.4.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c084ad935abe686bd9c898e62a02a19abfc9760b5a79bc29644463eaf2840cb0", size = 159490, upload-time = "2026-01-11T11:22:28.399Z" }, + { url = "https://files.pythonhosted.org/packages/e3/5a/fc3622c8b1ad823e8ea98a35e3c632ee316d48f66f80f9708ceb4f2a0322/tomli-2.4.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0f2e3955efea4d1cfbcb87bc321e00dc08d2bcb737fd1d5e398af111d86db5df", size = 269398, upload-time = "2026-01-11T11:22:29.345Z" }, + { url = "https://files.pythonhosted.org/packages/fd/33/62bd6152c8bdd4c305ad9faca48f51d3acb2df1f8791b1477d46ff86e7f8/tomli-2.4.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e0fe8a0b8312acf3a88077a0802565cb09ee34107813bba1c7cd591fa6cfc8d", size = 276515, upload-time = "2026-01-11T11:22:30.327Z" }, + { url = "https://files.pythonhosted.org/packages/4b/ff/ae53619499f5235ee4211e62a8d7982ba9e439a0fb4f2f351a93d67c1dd2/tomli-2.4.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:413540dce94673591859c4c6f794dfeaa845e98bf35d72ed59636f869ef9f86f", size = 273806, upload-time = "2026-01-11T11:22:32.56Z" }, + { url = "https://files.pythonhosted.org/packages/47/71/cbca7787fa68d4d0a9f7072821980b39fbb1b6faeb5f5cf02f4a5559fa28/tomli-2.4.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0dc56fef0e2c1c470aeac5b6ca8cc7b640bb93e92d9803ddaf9ea03e198f5b0b", size = 281340, upload-time = "2026-01-11T11:22:33.505Z" }, + { url = "https://files.pythonhosted.org/packages/f5/00/d595c120963ad42474cf6ee7771ad0d0e8a49d0f01e29576ee9195d9ecdf/tomli-2.4.0-cp314-cp314t-win32.whl", hash = "sha256:d878f2a6707cc9d53a1be1414bbb419e629c3d6e67f69230217bb663e76b5087", size = 108106, upload-time = "2026-01-11T11:22:34.451Z" }, + { url = "https://files.pythonhosted.org/packages/de/69/9aa0c6a505c2f80e519b43764f8b4ba93b5a0bbd2d9a9de6e2b24271b9a5/tomli-2.4.0-cp314-cp314t-win_amd64.whl", hash = "sha256:2add28aacc7425117ff6364fe9e06a183bb0251b03f986df0e78e974047571fd", size = 120504, upload-time = "2026-01-11T11:22:35.764Z" }, + { url = "https://files.pythonhosted.org/packages/b3/9f/f1668c281c58cfae01482f7114a4b88d345e4c140386241a1a24dcc9e7bc/tomli-2.4.0-cp314-cp314t-win_arm64.whl", hash = "sha256:2b1e3b80e1d5e52e40e9b924ec43d81570f0e7d09d11081b797bc4692765a3d4", size = 99561, upload-time = "2026-01-11T11:22:36.624Z" }, + { url = "https://files.pythonhosted.org/packages/23/d1/136eb2cb77520a31e1f64cbae9d33ec6df0d78bdf4160398e86eec8a8754/tomli-2.4.0-py3-none-any.whl", hash = "sha256:1f776e7d669ebceb01dee46484485f43a4048746235e683bcdffacdf1fb4785a", size = 14477, upload-time = "2026-01-11T11:22:37.446Z" }, +] + +[[package]] +name = "tomli-w" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/19/75/241269d1da26b624c0d5e110e8149093c759b7a286138f4efd61a60e75fe/tomli_w-1.2.0.tar.gz", hash = "sha256:2dd14fac5a47c27be9cd4c976af5a12d87fb1f0b4512f81d69cce3b35ae25021", size = 7184, upload-time = "2025-01-15T12:07:24.262Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/18/c86eb8e0202e32dd3df50d43d7ff9854f8e0603945ff398974c1d91ac1ef/tomli_w-1.2.0-py3-none-any.whl", hash = "sha256:188306098d013b691fcadc011abd66727d3c414c571bb01b1a174ba8c983cf90", size = 6675, upload-time = "2025-01-15T12:07:22.074Z" }, +] + +[[package]] +name = "tornado" +version = "6.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/37/1d/0a336abf618272d53f62ebe274f712e213f5a03c0b2339575430b8362ef2/tornado-6.5.4.tar.gz", hash = "sha256:a22fa9047405d03260b483980635f0b041989d8bcc9a313f8fe18b411d84b1d7", size = 513632, upload-time = "2025-12-15T19:21:03.836Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ab/a9/e94a9d5224107d7ce3cc1fab8d5dc97f5ea351ccc6322ee4fb661da94e35/tornado-6.5.4-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:d6241c1a16b1c9e4cc28148b1cda97dd1c6cb4fb7068ac1bedc610768dff0ba9", size = 443909, upload-time = "2025-12-15T19:20:48.382Z" }, + { url = "https://files.pythonhosted.org/packages/db/7e/f7b8d8c4453f305a51f80dbb49014257bb7d28ccb4bbb8dd328ea995ecad/tornado-6.5.4-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:2d50f63dda1d2cac3ae1fa23d254e16b5e38153758470e9956cbc3d813d40843", size = 442163, upload-time = "2025-12-15T19:20:49.791Z" }, + { url = "https://files.pythonhosted.org/packages/ba/b5/206f82d51e1bfa940ba366a8d2f83904b15942c45a78dd978b599870ab44/tornado-6.5.4-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1cf66105dc6acb5af613c054955b8137e34a03698aa53272dbda4afe252be17", size = 445746, upload-time = "2025-12-15T19:20:51.491Z" }, + { url = "https://files.pythonhosted.org/packages/8e/9d/1a3338e0bd30ada6ad4356c13a0a6c35fbc859063fa7eddb309183364ac1/tornado-6.5.4-cp39-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:50ff0a58b0dc97939d29da29cd624da010e7f804746621c78d14b80238669335", size = 445083, upload-time = "2025-12-15T19:20:52.778Z" }, + { url = "https://files.pythonhosted.org/packages/50/d4/e51d52047e7eb9a582da59f32125d17c0482d065afd5d3bc435ff2120dc5/tornado-6.5.4-cp39-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5fb5e04efa54cf0baabdd10061eb4148e0be137166146fff835745f59ab9f7f", size = 445315, upload-time = "2025-12-15T19:20:53.996Z" }, + { url = "https://files.pythonhosted.org/packages/27/07/2273972f69ca63dbc139694a3fc4684edec3ea3f9efabf77ed32483b875c/tornado-6.5.4-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9c86b1643b33a4cd415f8d0fe53045f913bf07b4a3ef646b735a6a86047dda84", size = 446003, upload-time = "2025-12-15T19:20:56.101Z" }, + { url = "https://files.pythonhosted.org/packages/d1/83/41c52e47502bf7260044413b6770d1a48dda2f0246f95ee1384a3cd9c44a/tornado-6.5.4-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:6eb82872335a53dd063a4f10917b3efd28270b56a33db69009606a0312660a6f", size = 445412, upload-time = "2025-12-15T19:20:57.398Z" }, + { url = "https://files.pythonhosted.org/packages/10/c7/bc96917f06cbee182d44735d4ecde9c432e25b84f4c2086143013e7b9e52/tornado-6.5.4-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:6076d5dda368c9328ff41ab5d9dd3608e695e8225d1cd0fd1e006f05da3635a8", size = 445392, upload-time = "2025-12-15T19:20:58.692Z" }, + { url = "https://files.pythonhosted.org/packages/0c/1a/d7592328d037d36f2d2462f4bc1fbb383eec9278bc786c1b111cbbd44cfa/tornado-6.5.4-cp39-abi3-win32.whl", hash = "sha256:1768110f2411d5cd281bac0a090f707223ce77fd110424361092859e089b38d1", size = 446481, upload-time = "2025-12-15T19:21:00.008Z" }, + { url = "https://files.pythonhosted.org/packages/d6/6d/c69be695a0a64fd37a97db12355a035a6d90f79067a3cf936ec2b1dc38cd/tornado-6.5.4-cp39-abi3-win_amd64.whl", hash = "sha256:fa07d31e0cd85c60713f2b995da613588aa03e1303d75705dca6af8babc18ddc", size = 446886, upload-time = "2025-12-15T19:21:01.287Z" }, + { url = "https://files.pythonhosted.org/packages/50/49/8dc3fd90902f70084bd2cd059d576ddb4f8bb44c2c7c0e33a11422acb17e/tornado-6.5.4-cp39-abi3-win_arm64.whl", hash = "sha256:053e6e16701eb6cbe641f308f4c1a9541f91b6261991160391bfc342e8a551a1", size = 445910, upload-time = "2025-12-15T19:21:02.571Z" }, +] + +[[package]] +name = "tqdm" +version = "4.67.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a8/4b/29b4ef32e036bb34e4ab51796dd745cdba7ed47ad142a9f4a1eb8e0c744d/tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2", size = 169737, upload-time = "2024-11-24T20:12:22.481Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", size = 78540, upload-time = "2024-11-24T20:12:19.698Z" }, +] + +[[package]] +name = "ty" +version = "0.0.14" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/af/57/22c3d6bf95c2229120c49ffc2f0da8d9e8823755a1c3194da56e51f1cc31/ty-0.0.14.tar.gz", hash = "sha256:a691010565f59dd7f15cf324cdcd1d9065e010c77a04f887e1ea070ba34a7de2", size = 5036573, upload-time = "2026-01-27T00:57:31.427Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/99/cb/cc6d1d8de59beb17a41f9a614585f884ec2d95450306c173b3b7cc090d2e/ty-0.0.14-py3-none-linux_armv6l.whl", hash = "sha256:32cf2a7596e693094621d3ae568d7ee16707dce28c34d1762947874060fdddaa", size = 10034228, upload-time = "2026-01-27T00:57:53.133Z" }, + { url = "https://files.pythonhosted.org/packages/f3/96/dd42816a2075a8f31542296ae687483a8d047f86a6538dfba573223eaf9a/ty-0.0.14-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:f971bf9805f49ce8c0968ad53e29624d80b970b9eb597b7cbaba25d8a18ce9a2", size = 9939162, upload-time = "2026-01-27T00:57:43.857Z" }, + { url = "https://files.pythonhosted.org/packages/ff/b4/73c4859004e0f0a9eead9ecb67021438b2e8e5fdd8d03e7f5aca77623992/ty-0.0.14-py3-none-macosx_11_0_arm64.whl", hash = "sha256:45448b9e4806423523268bc15e9208c4f3f2ead7c344f615549d2e2354d6e924", size = 9418661, upload-time = "2026-01-27T00:58:03.411Z" }, + { url = "https://files.pythonhosted.org/packages/58/35/839c4551b94613db4afa20ee555dd4f33bfa7352d5da74c5fa416ffa0fd2/ty-0.0.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ee94a9b747ff40114085206bdb3205a631ef19a4d3fb89e302a88754cbbae54c", size = 9837872, upload-time = "2026-01-27T00:57:23.718Z" }, + { url = "https://files.pythonhosted.org/packages/41/2b/bbecf7e2faa20c04bebd35fc478668953ca50ee5847ce23e08acf20ea119/ty-0.0.14-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6756715a3c33182e9ab8ffca2bb314d3c99b9c410b171736e145773ee0ae41c3", size = 9848819, upload-time = "2026-01-27T00:57:58.501Z" }, + { url = "https://files.pythonhosted.org/packages/be/60/3c0ba0f19c0f647ad9d2b5b5ac68c0f0b4dc899001bd53b3a7537fb247a2/ty-0.0.14-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:89d0038a2f698ba8b6fec5cf216a4e44e2f95e4a5095a8c0f57fe549f87087c2", size = 10324371, upload-time = "2026-01-27T00:57:29.291Z" }, + { url = "https://files.pythonhosted.org/packages/24/32/99d0a0b37d0397b0a989ffc2682493286aa3bc252b24004a6714368c2c3d/ty-0.0.14-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2c64a83a2d669b77f50a4957039ca1450626fb474619f18f6f8a3eb885bf7544", size = 10865898, upload-time = "2026-01-27T00:57:33.542Z" }, + { url = "https://files.pythonhosted.org/packages/1a/88/30b583a9e0311bb474269cfa91db53350557ebec09002bfc3fb3fc364e8c/ty-0.0.14-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:242488bfb547ef080199f6fd81369ab9cb638a778bb161511d091ffd49c12129", size = 10555777, upload-time = "2026-01-27T00:58:05.853Z" }, + { url = "https://files.pythonhosted.org/packages/cd/a2/cb53fb6325dcf3d40f2b1d0457a25d55bfbae633c8e337bde8ec01a190eb/ty-0.0.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4790c3866f6c83a4f424fc7d09ebdb225c1f1131647ba8bdc6fcdc28f09ed0ff", size = 10412913, upload-time = "2026-01-27T00:57:38.834Z" }, + { url = "https://files.pythonhosted.org/packages/42/8f/f2f5202d725ed1e6a4e5ffaa32b190a1fe70c0b1a2503d38515da4130b4c/ty-0.0.14-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:950f320437f96d4ea9a2332bbfb5b68f1c1acd269ebfa4c09b6970cc1565bd9d", size = 9837608, upload-time = "2026-01-27T00:57:55.898Z" }, + { url = "https://files.pythonhosted.org/packages/f7/ba/59a2a0521640c489dafa2c546ae1f8465f92956fede18660653cce73b4c5/ty-0.0.14-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:4a0ec3ee70d83887f86925bbc1c56f4628bd58a0f47f6f32ddfe04e1f05466df", size = 9884324, upload-time = "2026-01-27T00:57:46.786Z" }, + { url = "https://files.pythonhosted.org/packages/03/95/8d2a49880f47b638743212f011088552ecc454dd7a665ddcbdabea25772a/ty-0.0.14-py3-none-musllinux_1_2_i686.whl", hash = "sha256:a1a4e6b6da0c58b34415955279eff754d6206b35af56a18bb70eb519d8d139ef", size = 10033537, upload-time = "2026-01-27T00:58:01.149Z" }, + { url = "https://files.pythonhosted.org/packages/e9/40/4523b36f2ce69f92ccf783855a9e0ebbbd0f0bb5cdce6211ee1737159ed3/ty-0.0.14-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:dc04384e874c5de4c5d743369c277c8aa73d1edea3c7fc646b2064b637db4db3", size = 10495910, upload-time = "2026-01-27T00:57:26.691Z" }, + { url = "https://files.pythonhosted.org/packages/08/d5/655beb51224d1bfd4f9ddc0bb209659bfe71ff141bcf05c418ab670698f0/ty-0.0.14-py3-none-win32.whl", hash = "sha256:b20e22cf54c66b3e37e87377635da412d9a552c9bf4ad9fc449fed8b2e19dad2", size = 9507626, upload-time = "2026-01-27T00:57:41.43Z" }, + { url = "https://files.pythonhosted.org/packages/b6/d9/c569c9961760e20e0a4bc008eeb1415754564304fd53997a371b7cf3f864/ty-0.0.14-py3-none-win_amd64.whl", hash = "sha256:e312ff9475522d1a33186657fe74d1ec98e4a13e016d66f5758a452c90ff6409", size = 10437980, upload-time = "2026-01-27T00:57:36.422Z" }, + { url = "https://files.pythonhosted.org/packages/ad/0c/186829654f5bfd9a028f6648e9caeb11271960a61de97484627d24443f91/ty-0.0.14-py3-none-win_arm64.whl", hash = "sha256:b6facdbe9b740cb2c15293a1d178e22ffc600653646452632541d01c36d5e378", size = 9885831, upload-time = "2026-01-27T00:57:49.747Z" }, +] + +[[package]] +name = "typer" +version = "0.21.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "rich" }, + { name = "shellingham" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/36/bf/8825b5929afd84d0dabd606c67cd57b8388cb3ec385f7ef19c5cc2202069/typer-0.21.1.tar.gz", hash = "sha256:ea835607cd752343b6b2b7ce676893e5a0324082268b48f27aa058bdb7d2145d", size = 110371, upload-time = "2026-01-06T11:21:10.989Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/1d/d9257dd49ff2ca23ea5f132edf1281a0c4f9de8a762b9ae399b670a59235/typer-0.21.1-py3-none-any.whl", hash = "sha256:7985e89081c636b88d172c2ee0cfe33c253160994d47bdfdc302defd7d1f1d01", size = 47381, upload-time = "2026-01-06T11:21:09.824Z" }, +] + +[[package]] +name = "typer-slim" +version = "0.21.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/17/d4/064570dec6358aa9049d4708e4a10407d74c99258f8b2136bb8702303f1a/typer_slim-0.21.1.tar.gz", hash = "sha256:73495dd08c2d0940d611c5a8c04e91c2a0a98600cbd4ee19192255a233b6dbfd", size = 110478, upload-time = "2026-01-06T11:21:11.176Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c8/0a/4aca634faf693e33004796b6cee0ae2e1dba375a800c16ab8d3eff4bb800/typer_slim-0.21.1-py3-none-any.whl", hash = "sha256:6e6c31047f171ac93cc5a973c9e617dbc5ab2bddc4d0a3135dc161b4e2020e0d", size = 47444, upload-time = "2026-01-06T11:21:12.441Z" }, +] + +[[package]] +name = "typing-extensions" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" }, +] + +[[package]] +name = "typing-inspection" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" }, +] + +[[package]] +name = "tzdata" +version = "2025.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5e/a7/c202b344c5ca7daf398f3b8a477eeb205cf3b6f32e7ec3a6bac0629ca975/tzdata-2025.3.tar.gz", hash = "sha256:de39c2ca5dc7b0344f2eba86f49d614019d29f060fc4ebc8a417896a620b56a7", size = 196772, upload-time = "2025-12-13T17:45:35.667Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/b0/003792df09decd6849a5e39c28b513c06e84436a54440380862b5aeff25d/tzdata-2025.3-py2.py3-none-any.whl", hash = "sha256:06a47e5700f3081aab02b2e513160914ff0694bce9947d6b76ebd6bf57cfc5d1", size = 348521, upload-time = "2025-12-13T17:45:33.889Z" }, +] + +[[package]] +name = "urllib3" +version = "2.6.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c7/24/5f1b3bdffd70275f6661c76461e25f024d5a38a46f04aaca912426a2b1d3/urllib3-2.6.3.tar.gz", hash = "sha256:1b62b6884944a57dbe321509ab94fd4d3b307075e0c2eae991ac71ee15ad38ed", size = 435556, upload-time = "2026-01-07T16:24:43.925Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/39/08/aaaad47bc4e9dc8c725e68f9d04865dbcb2052843ff09c97b08904852d84/urllib3-2.6.3-py3-none-any.whl", hash = "sha256:bf272323e553dfb2e87d9bfd225ca7b0f467b919d7bbd355436d3fd37cb0acd4", size = 131584, upload-time = "2026-01-07T16:24:42.685Z" }, +] + +[[package]] +name = "uv" +version = "0.9.27" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/92/70/611bcee4385b7aa00cf7acf29bc51854c365ee09ddb2cdb14b07a36b4db8/uv-0.9.27.tar.gz", hash = "sha256:9147862902b5d40894f78339803225e39b0535c4c04537188de160eb7635e46b", size = 3830404, upload-time = "2026-01-26T23:27:43.442Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/53/f1/9e9afb9fadb73f7914a0fc63b6f9d182b6fe6b1e55deb7cbdc29ff31299f/uv-0.9.27-py3-none-linux_armv6l.whl", hash = "sha256:ce3f16e66a96dcdc63f6ada9f7747686930986d2df104a9dd2d09664b2d870c8", size = 22011502, upload-time = "2026-01-26T23:27:31.714Z" }, + { url = "https://files.pythonhosted.org/packages/ea/b2/c36a87f5c745d310b7d8a53df053d6a87864aa38e3a964b0845eb6de37cc/uv-0.9.27-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:a662a7df5cc781ae7baa65171b5d488d946ea93e61b7bbeda5a24d21a0cd9003", size = 21081065, upload-time = "2026-01-26T23:28:11.895Z" }, + { url = "https://files.pythonhosted.org/packages/44/1d/be2d80573c531389933059f6e5ef265ef7324c268f3ade80e500aa627f6b/uv-0.9.27-py3-none-macosx_11_0_arm64.whl", hash = "sha256:8f00158023e77600da602c5f1fa97cd8c2eef987d6aba34c16cf04a3e5a932f4", size = 19844905, upload-time = "2026-01-26T23:27:34.486Z" }, + { url = "https://files.pythonhosted.org/packages/3e/f7/59679af9f0446d8ffc1239e3356390c95925e0004549b64df3f189b1422b/uv-0.9.27-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl", hash = "sha256:5f2393051ed2023cc7d6ff99e41184b7c7bb7da001bc727cd4bee6da96f4a966", size = 21592623, upload-time = "2026-01-26T23:27:51.132Z" }, + { url = "https://files.pythonhosted.org/packages/e2/31/0faaad82951fc6b14dfad8e187e43747a528aa50ee283385f903e86d67d1/uv-0.9.27-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_1_armv7l.whl", hash = "sha256:3f8cf7a50a95ae5cb0366d24edf79d15b3ba380b462af49e3404f9f7b91101c7", size = 21636917, upload-time = "2026-01-26T23:27:46.252Z" }, + { url = "https://files.pythonhosted.org/packages/c2/8a/e181c32b7f5309fd987667d368fb944822c713e92a7eba3c73d2eddec6cd/uv-0.9.27-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c331e0445465ea6029e2dd0f5499024e552136c10069fac0ca21708f2aeb1ce6", size = 21633082, upload-time = "2026-01-26T23:28:09.417Z" }, + { url = "https://files.pythonhosted.org/packages/da/0e/1d44157bc8e5d1c382db087d9a30ab85fc7b5c2d610fb2e3d861c5a69d9b/uv-0.9.27-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a56e0c92da67060d4c86a3b92b2c69e8fb1d61933636764aba16531ddb13f6e3", size = 22843044, upload-time = "2026-01-26T23:27:29.091Z" }, + { url = "https://files.pythonhosted.org/packages/eb/76/7c1b13e4dc8237dd3721f4ec933bb2e5be400fd2812cf98dc2be645a0f7d/uv-0.9.27-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:0c9b2e874f5207a50b852726f3a0740eadf30baf2c7973380d697f4e3166d347", size = 24141329, upload-time = "2026-01-26T23:27:39.705Z" }, + { url = "https://files.pythonhosted.org/packages/6f/04/551749fd863cb43290c9a3f4348ccdd88ec0445c26a00ba840d776572867/uv-0.9.27-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:79841a2e4df4a32f22fbb0919c3e513226684572fba227b37467ba6404f3fafd", size = 23637517, upload-time = "2026-01-26T23:27:37.111Z" }, + { url = "https://files.pythonhosted.org/packages/d9/c6/78b619a51a6646af4633714b161f980ab764cc892e0f79228162fba51fe8/uv-0.9.27-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33902c95b561ac67d15c339fe1eaf39e068372c7464c79c3bd0e2bf9ee914dcb", size = 22864516, upload-time = "2026-01-26T23:27:56.35Z" }, + { url = "https://files.pythonhosted.org/packages/15/19/b35928e55307beb69b60b88446df3cb8d7ff3ba0993fc2214a43266c17d1/uv-0.9.27-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:79939f7e92d707fb84933509df747d1b88b00d94ebe41f3a1e30916cc33c7307", size = 22746151, upload-time = "2026-01-26T23:27:26.166Z" }, + { url = "https://files.pythonhosted.org/packages/9f/70/fbab20d40afe7ac9ec20011acec75f8bb3b9b83dfbe2cdb1405cad7a8cf2/uv-0.9.27-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:7e2d4183a0dca7596ea6385e9d5a0a87ada4f71a70aa110e2b22234370b8d8ef", size = 21661188, upload-time = "2026-01-26T23:27:53.79Z" }, + { url = "https://files.pythonhosted.org/packages/44/02/4d4cf298bd22e53d6c289404b093cf876e64ee1fb946cc32a6f965030629/uv-0.9.27-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:1555ab7bc8501144e8771e54a628eb02cb95f3612d54659bb7132576260feee5", size = 22397798, upload-time = "2026-01-26T23:28:07.102Z" }, + { url = "https://files.pythonhosted.org/packages/97/29/3acef6a0eea58afbf7f7a08e4258430e3c7394a6b1e28249450f4c0ddc60/uv-0.9.27-py3-none-musllinux_1_1_i686.whl", hash = "sha256:542731a6f53072e725959a9c839b195048715d840213d9834d36f74fa4249855", size = 22111665, upload-time = "2026-01-26T23:27:58.762Z" }, + { url = "https://files.pythonhosted.org/packages/13/15/1e7b34f02e8f53c9498311f991421e794ad57fa60a2d3e41b43485e914e4/uv-0.9.27-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:4f534ad701ca3fffac4a8e1df2a36930e6a0cbf4dad52aeabc2c3c9e2cbbe65e", size = 22951420, upload-time = "2026-01-26T23:27:48.818Z" }, + { url = "https://files.pythonhosted.org/packages/aa/c5/c3bb3a5885891ed8fe7dcc897db03366f3e19da8bf48ae8f5ea4da34545d/uv-0.9.27-py3-none-win32.whl", hash = "sha256:18aab0e19634997366907a9b8a1648e79b0fa34d1b86d8e8ee1e7ba5b9faa6ae", size = 20817398, upload-time = "2026-01-26T23:28:14.265Z" }, + { url = "https://files.pythonhosted.org/packages/db/19/22d2671928f6d2fef1edfdbf758abbb5a0f218b69fd23bd5fd52bbe5b078/uv-0.9.27-py3-none-win_amd64.whl", hash = "sha256:f961c53f83ae6a01e3ffacc584c91044958bc6db003e803c490e106a79981222", size = 23412228, upload-time = "2026-01-26T23:28:01.547Z" }, + { url = "https://files.pythonhosted.org/packages/17/eb/9a71112e2266b79da552a4b2ffb52331ca7171437b901705427f8e54e77c/uv-0.9.27-py3-none-win_arm64.whl", hash = "sha256:463327fb343c3085a3333389d6e5908cb48203b327707790c06bdc8f2ca57b95", size = 21836206, upload-time = "2026-01-26T23:28:04.411Z" }, +] + +[[package]] +name = "uvicorn" +version = "0.40.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c3/d1/8f3c683c9561a4e6689dd3b1d345c815f10f86acd044ee1fb9a4dcd0b8c5/uvicorn-0.40.0.tar.gz", hash = "sha256:839676675e87e73694518b5574fd0f24c9d97b46bea16df7b8c05ea1a51071ea", size = 81761, upload-time = "2025-12-21T14:16:22.45Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/d8/2083a1daa7439a66f3a48589a57d576aa117726762618f6bb09fe3798796/uvicorn-0.40.0-py3-none-any.whl", hash = "sha256:c6c8f55bc8bf13eb6fa9ff87ad62308bbbc33d0b67f84293151efe87e0d5f2ee", size = 68502, upload-time = "2025-12-21T14:16:21.041Z" }, +] + +[package.optional-dependencies] +standard = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "httptools" }, + { name = "python-dotenv" }, + { name = "pyyaml" }, + { name = "uvloop", marker = "platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32'" }, + { name = "watchfiles" }, + { name = "websockets" }, +] + +[[package]] +name = "uvloop" +version = "0.22.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/06/f0/18d39dbd1971d6d62c4629cc7fa67f74821b0dc1f5a77af43719de7936a7/uvloop-0.22.1.tar.gz", hash = "sha256:6c84bae345b9147082b17371e3dd5d42775bddce91f885499017f4607fdaf39f", size = 2443250, upload-time = "2025-10-16T22:17:19.342Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/ff/7f72e8170be527b4977b033239a83a68d5c881cc4775fca255c677f7ac5d/uvloop-0.22.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:fe94b4564e865d968414598eea1a6de60adba0c040ba4ed05ac1300de402cd42", size = 1359936, upload-time = "2025-10-16T22:16:29.436Z" }, + { url = "https://files.pythonhosted.org/packages/c3/c6/e5d433f88fd54d81ef4be58b2b7b0cea13c442454a1db703a1eea0db1a59/uvloop-0.22.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:51eb9bd88391483410daad430813d982010f9c9c89512321f5b60e2cddbdddd6", size = 752769, upload-time = "2025-10-16T22:16:30.493Z" }, + { url = "https://files.pythonhosted.org/packages/24/68/a6ac446820273e71aa762fa21cdcc09861edd3536ff47c5cd3b7afb10eeb/uvloop-0.22.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:700e674a166ca5778255e0e1dc4e9d79ab2acc57b9171b79e65feba7184b3370", size = 4317413, upload-time = "2025-10-16T22:16:31.644Z" }, + { url = "https://files.pythonhosted.org/packages/5f/6f/e62b4dfc7ad6518e7eff2516f680d02a0f6eb62c0c212e152ca708a0085e/uvloop-0.22.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7b5b1ac819a3f946d3b2ee07f09149578ae76066d70b44df3fa990add49a82e4", size = 4426307, upload-time = "2025-10-16T22:16:32.917Z" }, + { url = "https://files.pythonhosted.org/packages/90/60/97362554ac21e20e81bcef1150cb2a7e4ffdaf8ea1e5b2e8bf7a053caa18/uvloop-0.22.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e047cc068570bac9866237739607d1313b9253c3051ad84738cbb095be0537b2", size = 4131970, upload-time = "2025-10-16T22:16:34.015Z" }, + { url = "https://files.pythonhosted.org/packages/99/39/6b3f7d234ba3964c428a6e40006340f53ba37993f46ed6e111c6e9141d18/uvloop-0.22.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:512fec6815e2dd45161054592441ef76c830eddaad55c8aa30952e6fe1ed07c0", size = 4296343, upload-time = "2025-10-16T22:16:35.149Z" }, + { url = "https://files.pythonhosted.org/packages/89/8c/182a2a593195bfd39842ea68ebc084e20c850806117213f5a299dfc513d9/uvloop-0.22.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:561577354eb94200d75aca23fbde86ee11be36b00e52a4eaf8f50fb0c86b7705", size = 1358611, upload-time = "2025-10-16T22:16:36.833Z" }, + { url = "https://files.pythonhosted.org/packages/d2/14/e301ee96a6dc95224b6f1162cd3312f6d1217be3907b79173b06785f2fe7/uvloop-0.22.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:1cdf5192ab3e674ca26da2eada35b288d2fa49fdd0f357a19f0e7c4e7d5077c8", size = 751811, upload-time = "2025-10-16T22:16:38.275Z" }, + { url = "https://files.pythonhosted.org/packages/b7/02/654426ce265ac19e2980bfd9ea6590ca96a56f10c76e63801a2df01c0486/uvloop-0.22.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6e2ea3d6190a2968f4a14a23019d3b16870dd2190cd69c8180f7c632d21de68d", size = 4288562, upload-time = "2025-10-16T22:16:39.375Z" }, + { url = "https://files.pythonhosted.org/packages/15/c0/0be24758891ef825f2065cd5db8741aaddabe3e248ee6acc5e8a80f04005/uvloop-0.22.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0530a5fbad9c9e4ee3f2b33b148c6a64d47bbad8000ea63704fa8260f4cf728e", size = 4366890, upload-time = "2025-10-16T22:16:40.547Z" }, + { url = "https://files.pythonhosted.org/packages/d2/53/8369e5219a5855869bcee5f4d317f6da0e2c669aecf0ef7d371e3d084449/uvloop-0.22.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bc5ef13bbc10b5335792360623cc378d52d7e62c2de64660616478c32cd0598e", size = 4119472, upload-time = "2025-10-16T22:16:41.694Z" }, + { url = "https://files.pythonhosted.org/packages/f8/ba/d69adbe699b768f6b29a5eec7b47dd610bd17a69de51b251126a801369ea/uvloop-0.22.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:1f38ec5e3f18c8a10ded09742f7fb8de0108796eb673f30ce7762ce1b8550cad", size = 4239051, upload-time = "2025-10-16T22:16:43.224Z" }, + { url = "https://files.pythonhosted.org/packages/90/cd/b62bdeaa429758aee8de8b00ac0dd26593a9de93d302bff3d21439e9791d/uvloop-0.22.1-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:3879b88423ec7e97cd4eba2a443aa26ed4e59b45e6b76aabf13fe2f27023a142", size = 1362067, upload-time = "2025-10-16T22:16:44.503Z" }, + { url = "https://files.pythonhosted.org/packages/0d/f8/a132124dfda0777e489ca86732e85e69afcd1ff7686647000050ba670689/uvloop-0.22.1-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:4baa86acedf1d62115c1dc6ad1e17134476688f08c6efd8a2ab076e815665c74", size = 752423, upload-time = "2025-10-16T22:16:45.968Z" }, + { url = "https://files.pythonhosted.org/packages/a3/94/94af78c156f88da4b3a733773ad5ba0b164393e357cc4bd0ab2e2677a7d6/uvloop-0.22.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:297c27d8003520596236bdb2335e6b3f649480bd09e00d1e3a99144b691d2a35", size = 4272437, upload-time = "2025-10-16T22:16:47.451Z" }, + { url = "https://files.pythonhosted.org/packages/b5/35/60249e9fd07b32c665192cec7af29e06c7cd96fa1d08b84f012a56a0b38e/uvloop-0.22.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c1955d5a1dd43198244d47664a5858082a3239766a839b2102a269aaff7a4e25", size = 4292101, upload-time = "2025-10-16T22:16:49.318Z" }, + { url = "https://files.pythonhosted.org/packages/02/62/67d382dfcb25d0a98ce73c11ed1a6fba5037a1a1d533dcbb7cab033a2636/uvloop-0.22.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:b31dc2fccbd42adc73bc4e7cdbae4fc5086cf378979e53ca5d0301838c5682c6", size = 4114158, upload-time = "2025-10-16T22:16:50.517Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7a/f1171b4a882a5d13c8b7576f348acfe6074d72eaf52cccef752f748d4a9f/uvloop-0.22.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:93f617675b2d03af4e72a5333ef89450dfaa5321303ede6e67ba9c9d26878079", size = 4177360, upload-time = "2025-10-16T22:16:52.646Z" }, + { url = "https://files.pythonhosted.org/packages/79/7b/b01414f31546caf0919da80ad57cbfe24c56b151d12af68cee1b04922ca8/uvloop-0.22.1-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:37554f70528f60cad66945b885eb01f1bb514f132d92b6eeed1c90fd54ed6289", size = 1454790, upload-time = "2025-10-16T22:16:54.355Z" }, + { url = "https://files.pythonhosted.org/packages/d4/31/0bb232318dd838cad3fa8fb0c68c8b40e1145b32025581975e18b11fab40/uvloop-0.22.1-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:b76324e2dc033a0b2f435f33eb88ff9913c156ef78e153fb210e03c13da746b3", size = 796783, upload-time = "2025-10-16T22:16:55.906Z" }, + { url = "https://files.pythonhosted.org/packages/42/38/c9b09f3271a7a723a5de69f8e237ab8e7803183131bc57c890db0b6bb872/uvloop-0.22.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:badb4d8e58ee08dad957002027830d5c3b06aea446a6a3744483c2b3b745345c", size = 4647548, upload-time = "2025-10-16T22:16:57.008Z" }, + { url = "https://files.pythonhosted.org/packages/c1/37/945b4ca0ac27e3dc4952642d4c900edd030b3da6c9634875af6e13ae80e5/uvloop-0.22.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b91328c72635f6f9e0282e4a57da7470c7350ab1c9f48546c0f2866205349d21", size = 4467065, upload-time = "2025-10-16T22:16:58.206Z" }, + { url = "https://files.pythonhosted.org/packages/97/cc/48d232f33d60e2e2e0b42f4e73455b146b76ebe216487e862700457fbf3c/uvloop-0.22.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:daf620c2995d193449393d6c62131b3fbd40a63bf7b307a1527856ace637fe88", size = 4328384, upload-time = "2025-10-16T22:16:59.36Z" }, + { url = "https://files.pythonhosted.org/packages/e4/16/c1fd27e9549f3c4baf1dc9c20c456cd2f822dbf8de9f463824b0c0357e06/uvloop-0.22.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6cde23eeda1a25c75b2e07d39970f3374105d5eafbaab2a4482be82f272d5a5e", size = 4296730, upload-time = "2025-10-16T22:17:00.744Z" }, +] + +[[package]] +name = "virtualenv" +version = "20.36.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "distlib" }, + { name = "filelock" }, + { name = "platformdirs" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/aa/a3/4d310fa5f00863544e1d0f4de93bddec248499ccf97d4791bc3122c9d4f3/virtualenv-20.36.1.tar.gz", hash = "sha256:8befb5c81842c641f8ee658481e42641c68b5eab3521d8e092d18320902466ba", size = 6032239, upload-time = "2026-01-09T18:21:01.296Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/2a/dc2228b2888f51192c7dc766106cd475f1b768c10caaf9727659726f7391/virtualenv-20.36.1-py3-none-any.whl", hash = "sha256:575a8d6b124ef88f6f51d56d656132389f961062a9177016a50e4f507bbcc19f", size = 6008258, upload-time = "2026-01-09T18:20:59.425Z" }, +] + +[[package]] +name = "watchdog" +version = "6.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/db/7d/7f3d619e951c88ed75c6037b246ddcf2d322812ee8ea189be89511721d54/watchdog-6.0.0.tar.gz", hash = "sha256:9ddf7c82fda3ae8e24decda1338ede66e1c99883db93711d8fb941eaa2d8c282", size = 131220, upload-time = "2024-11-01T14:07:13.037Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a9/c7/ca4bf3e518cb57a686b2feb4f55a1892fd9a3dd13f470fca14e00f80ea36/watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13", size = 79079, upload-time = "2024-11-01T14:06:59.472Z" }, + { url = "https://files.pythonhosted.org/packages/5c/51/d46dc9332f9a647593c947b4b88e2381c8dfc0942d15b8edc0310fa4abb1/watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379", size = 79078, upload-time = "2024-11-01T14:07:01.431Z" }, + { url = "https://files.pythonhosted.org/packages/d4/57/04edbf5e169cd318d5f07b4766fee38e825d64b6913ca157ca32d1a42267/watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e", size = 79076, upload-time = "2024-11-01T14:07:02.568Z" }, + { url = "https://files.pythonhosted.org/packages/ab/cc/da8422b300e13cb187d2203f20b9253e91058aaf7db65b74142013478e66/watchdog-6.0.0-py3-none-manylinux2014_ppc64.whl", hash = "sha256:212ac9b8bf1161dc91bd09c048048a95ca3a4c4f5e5d4a7d1b1a7d5752a7f96f", size = 79077, upload-time = "2024-11-01T14:07:03.893Z" }, + { url = "https://files.pythonhosted.org/packages/2c/3b/b8964e04ae1a025c44ba8e4291f86e97fac443bca31de8bd98d3263d2fcf/watchdog-6.0.0-py3-none-manylinux2014_ppc64le.whl", hash = "sha256:e3df4cbb9a450c6d49318f6d14f4bbc80d763fa587ba46ec86f99f9e6876bb26", size = 79078, upload-time = "2024-11-01T14:07:05.189Z" }, + { url = "https://files.pythonhosted.org/packages/62/ae/a696eb424bedff7407801c257d4b1afda455fe40821a2be430e173660e81/watchdog-6.0.0-py3-none-manylinux2014_s390x.whl", hash = "sha256:2cce7cfc2008eb51feb6aab51251fd79b85d9894e98ba847408f662b3395ca3c", size = 79077, upload-time = "2024-11-01T14:07:06.376Z" }, + { url = "https://files.pythonhosted.org/packages/b5/e8/dbf020b4d98251a9860752a094d09a65e1b436ad181faf929983f697048f/watchdog-6.0.0-py3-none-manylinux2014_x86_64.whl", hash = "sha256:20ffe5b202af80ab4266dcd3e91aae72bf2da48c0d33bdb15c66658e685e94e2", size = 79078, upload-time = "2024-11-01T14:07:07.547Z" }, + { url = "https://files.pythonhosted.org/packages/07/f6/d0e5b343768e8bcb4cda79f0f2f55051bf26177ecd5651f84c07567461cf/watchdog-6.0.0-py3-none-win32.whl", hash = "sha256:07df1fdd701c5d4c8e55ef6cf55b8f0120fe1aef7ef39a1c6fc6bc2e606d517a", size = 79065, upload-time = "2024-11-01T14:07:09.525Z" }, + { url = "https://files.pythonhosted.org/packages/db/d9/c495884c6e548fce18a8f40568ff120bc3a4b7b99813081c8ac0c936fa64/watchdog-6.0.0-py3-none-win_amd64.whl", hash = "sha256:cbafb470cf848d93b5d013e2ecb245d4aa1c8fd0504e863ccefa32445359d680", size = 79070, upload-time = "2024-11-01T14:07:10.686Z" }, + { url = "https://files.pythonhosted.org/packages/33/e8/e40370e6d74ddba47f002a32919d91310d6074130fe4e17dabcafc15cbf1/watchdog-6.0.0-py3-none-win_ia64.whl", hash = "sha256:a1914259fa9e1454315171103c6a30961236f508b9b623eae470268bbcc6a22f", size = 79067, upload-time = "2024-11-01T14:07:11.845Z" }, +] + +[[package]] +name = "watchfiles" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c2/c9/8869df9b2a2d6c59d79220a4db37679e74f807c559ffe5265e08b227a210/watchfiles-1.1.1.tar.gz", hash = "sha256:a173cb5c16c4f40ab19cecf48a534c409f7ea983ab8fed0741304a1c0a31b3f2", size = 94440, upload-time = "2025-10-14T15:06:21.08Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/74/d5/f039e7e3c639d9b1d09b07ea412a6806d38123f0508e5f9b48a87b0a76cc/watchfiles-1.1.1-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:8c89f9f2f740a6b7dcc753140dd5e1ab9215966f7a3530d0c0705c83b401bd7d", size = 404745, upload-time = "2025-10-14T15:04:46.731Z" }, + { url = "https://files.pythonhosted.org/packages/a5/96/a881a13aa1349827490dab2d363c8039527060cfcc2c92cc6d13d1b1049e/watchfiles-1.1.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:bd404be08018c37350f0d6e34676bd1e2889990117a2b90070b3007f172d0610", size = 391769, upload-time = "2025-10-14T15:04:48.003Z" }, + { url = "https://files.pythonhosted.org/packages/4b/5b/d3b460364aeb8da471c1989238ea0e56bec24b6042a68046adf3d9ddb01c/watchfiles-1.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8526e8f916bb5b9a0a777c8317c23ce65de259422bba5b31325a6fa6029d33af", size = 449374, upload-time = "2025-10-14T15:04:49.179Z" }, + { url = "https://files.pythonhosted.org/packages/b9/44/5769cb62d4ed055cb17417c0a109a92f007114a4e07f30812a73a4efdb11/watchfiles-1.1.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2edc3553362b1c38d9f06242416a5d8e9fe235c204a4072e988ce2e5bb1f69f6", size = 459485, upload-time = "2025-10-14T15:04:50.155Z" }, + { url = "https://files.pythonhosted.org/packages/19/0c/286b6301ded2eccd4ffd0041a1b726afda999926cf720aab63adb68a1e36/watchfiles-1.1.1-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:30f7da3fb3f2844259cba4720c3fc7138eb0f7b659c38f3bfa65084c7fc7abce", size = 488813, upload-time = "2025-10-14T15:04:51.059Z" }, + { url = "https://files.pythonhosted.org/packages/c7/2b/8530ed41112dd4a22f4dcfdb5ccf6a1baad1ff6eed8dc5a5f09e7e8c41c7/watchfiles-1.1.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f8979280bdafff686ba5e4d8f97840f929a87ed9cdf133cbbd42f7766774d2aa", size = 594816, upload-time = "2025-10-14T15:04:52.031Z" }, + { url = "https://files.pythonhosted.org/packages/ce/d2/f5f9fb49489f184f18470d4f99f4e862a4b3e9ac2865688eb2099e3d837a/watchfiles-1.1.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dcc5c24523771db3a294c77d94771abcfcb82a0e0ee8efd910c37c59ec1b31bb", size = 475186, upload-time = "2025-10-14T15:04:53.064Z" }, + { url = "https://files.pythonhosted.org/packages/cf/68/5707da262a119fb06fbe214d82dd1fe4a6f4af32d2d14de368d0349eb52a/watchfiles-1.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db5d7ae38ff20153d542460752ff397fcf5c96090c1230803713cf3147a6803", size = 456812, upload-time = "2025-10-14T15:04:55.174Z" }, + { url = "https://files.pythonhosted.org/packages/66/ab/3cbb8756323e8f9b6f9acb9ef4ec26d42b2109bce830cc1f3468df20511d/watchfiles-1.1.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:28475ddbde92df1874b6c5c8aaeb24ad5be47a11f87cde5a28ef3835932e3e94", size = 630196, upload-time = "2025-10-14T15:04:56.22Z" }, + { url = "https://files.pythonhosted.org/packages/78/46/7152ec29b8335f80167928944a94955015a345440f524d2dfe63fc2f437b/watchfiles-1.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:36193ed342f5b9842edd3532729a2ad55c4160ffcfa3700e0d54be496b70dd43", size = 622657, upload-time = "2025-10-14T15:04:57.521Z" }, + { url = "https://files.pythonhosted.org/packages/0a/bf/95895e78dd75efe9a7f31733607f384b42eb5feb54bd2eb6ed57cc2e94f4/watchfiles-1.1.1-cp312-cp312-win32.whl", hash = "sha256:859e43a1951717cc8de7f4c77674a6d389b106361585951d9e69572823f311d9", size = 272042, upload-time = "2025-10-14T15:04:59.046Z" }, + { url = "https://files.pythonhosted.org/packages/87/0a/90eb755f568de2688cb220171c4191df932232c20946966c27a59c400850/watchfiles-1.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:91d4c9a823a8c987cce8fa2690923b069966dabb196dd8d137ea2cede885fde9", size = 288410, upload-time = "2025-10-14T15:05:00.081Z" }, + { url = "https://files.pythonhosted.org/packages/36/76/f322701530586922fbd6723c4f91ace21364924822a8772c549483abed13/watchfiles-1.1.1-cp312-cp312-win_arm64.whl", hash = "sha256:a625815d4a2bdca61953dbba5a39d60164451ef34c88d751f6c368c3ea73d404", size = 278209, upload-time = "2025-10-14T15:05:01.168Z" }, + { url = "https://files.pythonhosted.org/packages/bb/f4/f750b29225fe77139f7ae5de89d4949f5a99f934c65a1f1c0b248f26f747/watchfiles-1.1.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:130e4876309e8686a5e37dba7d5e9bc77e6ed908266996ca26572437a5271e18", size = 404321, upload-time = "2025-10-14T15:05:02.063Z" }, + { url = "https://files.pythonhosted.org/packages/2b/f9/f07a295cde762644aa4c4bb0f88921d2d141af45e735b965fb2e87858328/watchfiles-1.1.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5f3bde70f157f84ece3765b42b4a52c6ac1a50334903c6eaf765362f6ccca88a", size = 391783, upload-time = "2025-10-14T15:05:03.052Z" }, + { url = "https://files.pythonhosted.org/packages/bc/11/fc2502457e0bea39a5c958d86d2cb69e407a4d00b85735ca724bfa6e0d1a/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14e0b1fe858430fc0251737ef3824c54027bedb8c37c38114488b8e131cf8219", size = 449279, upload-time = "2025-10-14T15:05:04.004Z" }, + { url = "https://files.pythonhosted.org/packages/e3/1f/d66bc15ea0b728df3ed96a539c777acfcad0eb78555ad9efcaa1274688f0/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f27db948078f3823a6bb3b465180db8ebecf26dd5dae6f6180bd87383b6b4428", size = 459405, upload-time = "2025-10-14T15:05:04.942Z" }, + { url = "https://files.pythonhosted.org/packages/be/90/9f4a65c0aec3ccf032703e6db02d89a157462fbb2cf20dd415128251cac0/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:059098c3a429f62fc98e8ec62b982230ef2c8df68c79e826e37b895bc359a9c0", size = 488976, upload-time = "2025-10-14T15:05:05.905Z" }, + { url = "https://files.pythonhosted.org/packages/37/57/ee347af605d867f712be7029bb94c8c071732a4b44792e3176fa3c612d39/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bfb5862016acc9b869bb57284e6cb35fdf8e22fe59f7548858e2f971d045f150", size = 595506, upload-time = "2025-10-14T15:05:06.906Z" }, + { url = "https://files.pythonhosted.org/packages/a8/78/cc5ab0b86c122047f75e8fc471c67a04dee395daf847d3e59381996c8707/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:319b27255aacd9923b8a276bb14d21a5f7ff82564c744235fc5eae58d95422ae", size = 474936, upload-time = "2025-10-14T15:05:07.906Z" }, + { url = "https://files.pythonhosted.org/packages/62/da/def65b170a3815af7bd40a3e7010bf6ab53089ef1b75d05dd5385b87cf08/watchfiles-1.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c755367e51db90e75b19454b680903631d41f9e3607fbd941d296a020c2d752d", size = 456147, upload-time = "2025-10-14T15:05:09.138Z" }, + { url = "https://files.pythonhosted.org/packages/57/99/da6573ba71166e82d288d4df0839128004c67d2778d3b566c138695f5c0b/watchfiles-1.1.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c22c776292a23bfc7237a98f791b9ad3144b02116ff10d820829ce62dff46d0b", size = 630007, upload-time = "2025-10-14T15:05:10.117Z" }, + { url = "https://files.pythonhosted.org/packages/a8/51/7439c4dd39511368849eb1e53279cd3454b4a4dbace80bab88feeb83c6b5/watchfiles-1.1.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:3a476189be23c3686bc2f4321dd501cb329c0a0469e77b7b534ee10129ae6374", size = 622280, upload-time = "2025-10-14T15:05:11.146Z" }, + { url = "https://files.pythonhosted.org/packages/95/9c/8ed97d4bba5db6fdcdb2b298d3898f2dd5c20f6b73aee04eabe56c59677e/watchfiles-1.1.1-cp313-cp313-win32.whl", hash = "sha256:bf0a91bfb5574a2f7fc223cf95eeea79abfefa404bf1ea5e339c0c1560ae99a0", size = 272056, upload-time = "2025-10-14T15:05:12.156Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f3/c14e28429f744a260d8ceae18bf58c1d5fa56b50d006a7a9f80e1882cb0d/watchfiles-1.1.1-cp313-cp313-win_amd64.whl", hash = "sha256:52e06553899e11e8074503c8e716d574adeeb7e68913115c4b3653c53f9bae42", size = 288162, upload-time = "2025-10-14T15:05:13.208Z" }, + { url = "https://files.pythonhosted.org/packages/dc/61/fe0e56c40d5cd29523e398d31153218718c5786b5e636d9ae8ae79453d27/watchfiles-1.1.1-cp313-cp313-win_arm64.whl", hash = "sha256:ac3cc5759570cd02662b15fbcd9d917f7ecd47efe0d6b40474eafd246f91ea18", size = 277909, upload-time = "2025-10-14T15:05:14.49Z" }, + { url = "https://files.pythonhosted.org/packages/79/42/e0a7d749626f1e28c7108a99fb9bf524b501bbbeb9b261ceecde644d5a07/watchfiles-1.1.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:563b116874a9a7ce6f96f87cd0b94f7faf92d08d0021e837796f0a14318ef8da", size = 403389, upload-time = "2025-10-14T15:05:15.777Z" }, + { url = "https://files.pythonhosted.org/packages/15/49/08732f90ce0fbbc13913f9f215c689cfc9ced345fb1bcd8829a50007cc8d/watchfiles-1.1.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3ad9fe1dae4ab4212d8c91e80b832425e24f421703b5a42ef2e4a1e215aff051", size = 389964, upload-time = "2025-10-14T15:05:16.85Z" }, + { url = "https://files.pythonhosted.org/packages/27/0d/7c315d4bd5f2538910491a0393c56bf70d333d51bc5b34bee8e68e8cea19/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce70f96a46b894b36eba678f153f052967a0d06d5b5a19b336ab0dbbd029f73e", size = 448114, upload-time = "2025-10-14T15:05:17.876Z" }, + { url = "https://files.pythonhosted.org/packages/c3/24/9e096de47a4d11bc4df41e9d1e61776393eac4cb6eb11b3e23315b78b2cc/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:cb467c999c2eff23a6417e58d75e5828716f42ed8289fe6b77a7e5a91036ca70", size = 460264, upload-time = "2025-10-14T15:05:18.962Z" }, + { url = "https://files.pythonhosted.org/packages/cc/0f/e8dea6375f1d3ba5fcb0b3583e2b493e77379834c74fd5a22d66d85d6540/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:836398932192dae4146c8f6f737d74baeac8b70ce14831a239bdb1ca882fc261", size = 487877, upload-time = "2025-10-14T15:05:20.094Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5b/df24cfc6424a12deb41503b64d42fbea6b8cb357ec62ca84a5a3476f654a/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:743185e7372b7bc7c389e1badcc606931a827112fbbd37f14c537320fca08620", size = 595176, upload-time = "2025-10-14T15:05:21.134Z" }, + { url = "https://files.pythonhosted.org/packages/8f/b5/853b6757f7347de4e9b37e8cc3289283fb983cba1ab4d2d7144694871d9c/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:afaeff7696e0ad9f02cbb8f56365ff4686ab205fcf9c4c5b6fdfaaa16549dd04", size = 473577, upload-time = "2025-10-14T15:05:22.306Z" }, + { url = "https://files.pythonhosted.org/packages/e1/f7/0a4467be0a56e80447c8529c9fce5b38eab4f513cb3d9bf82e7392a5696b/watchfiles-1.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3f7eb7da0eb23aa2ba036d4f616d46906013a68caf61b7fdbe42fc8b25132e77", size = 455425, upload-time = "2025-10-14T15:05:23.348Z" }, + { url = "https://files.pythonhosted.org/packages/8e/e0/82583485ea00137ddf69bc84a2db88bd92ab4a6e3c405e5fb878ead8d0e7/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:831a62658609f0e5c64178211c942ace999517f5770fe9436be4c2faeba0c0ef", size = 628826, upload-time = "2025-10-14T15:05:24.398Z" }, + { url = "https://files.pythonhosted.org/packages/28/9a/a785356fccf9fae84c0cc90570f11702ae9571036fb25932f1242c82191c/watchfiles-1.1.1-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:f9a2ae5c91cecc9edd47e041a930490c31c3afb1f5e6d71de3dc671bfaca02bf", size = 622208, upload-time = "2025-10-14T15:05:25.45Z" }, + { url = "https://files.pythonhosted.org/packages/c3/f4/0872229324ef69b2c3edec35e84bd57a1289e7d3fe74588048ed8947a323/watchfiles-1.1.1-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:d1715143123baeeaeadec0528bb7441103979a1d5f6fd0e1f915383fea7ea6d5", size = 404315, upload-time = "2025-10-14T15:05:26.501Z" }, + { url = "https://files.pythonhosted.org/packages/7b/22/16d5331eaed1cb107b873f6ae1b69e9ced582fcf0c59a50cd84f403b1c32/watchfiles-1.1.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:39574d6370c4579d7f5d0ad940ce5b20db0e4117444e39b6d8f99db5676c52fd", size = 390869, upload-time = "2025-10-14T15:05:27.649Z" }, + { url = "https://files.pythonhosted.org/packages/b2/7e/5643bfff5acb6539b18483128fdc0ef2cccc94a5b8fbda130c823e8ed636/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7365b92c2e69ee952902e8f70f3ba6360d0d596d9299d55d7d386df84b6941fb", size = 449919, upload-time = "2025-10-14T15:05:28.701Z" }, + { url = "https://files.pythonhosted.org/packages/51/2e/c410993ba5025a9f9357c376f48976ef0e1b1aefb73b97a5ae01a5972755/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bfff9740c69c0e4ed32416f013f3c45e2ae42ccedd1167ef2d805c000b6c71a5", size = 460845, upload-time = "2025-10-14T15:05:30.064Z" }, + { url = "https://files.pythonhosted.org/packages/8e/a4/2df3b404469122e8680f0fcd06079317e48db58a2da2950fb45020947734/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b27cf2eb1dda37b2089e3907d8ea92922b673c0c427886d4edc6b94d8dfe5db3", size = 489027, upload-time = "2025-10-14T15:05:31.064Z" }, + { url = "https://files.pythonhosted.org/packages/ea/84/4587ba5b1f267167ee715b7f66e6382cca6938e0a4b870adad93e44747e6/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:526e86aced14a65a5b0ec50827c745597c782ff46b571dbfe46192ab9e0b3c33", size = 595615, upload-time = "2025-10-14T15:05:32.074Z" }, + { url = "https://files.pythonhosted.org/packages/6a/0f/c6988c91d06e93cd0bb3d4a808bcf32375ca1904609835c3031799e3ecae/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04e78dd0b6352db95507fd8cb46f39d185cf8c74e4cf1e4fbad1d3df96faf510", size = 474836, upload-time = "2025-10-14T15:05:33.209Z" }, + { url = "https://files.pythonhosted.org/packages/b4/36/ded8aebea91919485b7bbabbd14f5f359326cb5ec218cd67074d1e426d74/watchfiles-1.1.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c85794a4cfa094714fb9c08d4a218375b2b95b8ed1666e8677c349906246c05", size = 455099, upload-time = "2025-10-14T15:05:34.189Z" }, + { url = "https://files.pythonhosted.org/packages/98/e0/8c9bdba88af756a2fce230dd365fab2baf927ba42cd47521ee7498fd5211/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:74d5012b7630714b66be7b7b7a78855ef7ad58e8650c73afc4c076a1f480a8d6", size = 630626, upload-time = "2025-10-14T15:05:35.216Z" }, + { url = "https://files.pythonhosted.org/packages/2a/84/a95db05354bf2d19e438520d92a8ca475e578c647f78f53197f5a2f17aaf/watchfiles-1.1.1-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:8fbe85cb3201c7d380d3d0b90e63d520f15d6afe217165d7f98c9c649654db81", size = 622519, upload-time = "2025-10-14T15:05:36.259Z" }, + { url = "https://files.pythonhosted.org/packages/1d/ce/d8acdc8de545de995c339be67711e474c77d643555a9bb74a9334252bd55/watchfiles-1.1.1-cp314-cp314-win32.whl", hash = "sha256:3fa0b59c92278b5a7800d3ee7733da9d096d4aabcfabb9a928918bd276ef9b9b", size = 272078, upload-time = "2025-10-14T15:05:37.63Z" }, + { url = "https://files.pythonhosted.org/packages/c4/c9/a74487f72d0451524be827e8edec251da0cc1fcf111646a511ae752e1a3d/watchfiles-1.1.1-cp314-cp314-win_amd64.whl", hash = "sha256:c2047d0b6cea13b3316bdbafbfa0c4228ae593d995030fda39089d36e64fc03a", size = 287664, upload-time = "2025-10-14T15:05:38.95Z" }, + { url = "https://files.pythonhosted.org/packages/df/b8/8ac000702cdd496cdce998c6f4ee0ca1f15977bba51bdf07d872ebdfc34c/watchfiles-1.1.1-cp314-cp314-win_arm64.whl", hash = "sha256:842178b126593addc05acf6fce960d28bc5fae7afbaa2c6c1b3a7b9460e5be02", size = 277154, upload-time = "2025-10-14T15:05:39.954Z" }, + { url = "https://files.pythonhosted.org/packages/47/a8/e3af2184707c29f0f14b1963c0aace6529f9d1b8582d5b99f31bbf42f59e/watchfiles-1.1.1-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:88863fbbc1a7312972f1c511f202eb30866370ebb8493aef2812b9ff28156a21", size = 403820, upload-time = "2025-10-14T15:05:40.932Z" }, + { url = "https://files.pythonhosted.org/packages/c0/ec/e47e307c2f4bd75f9f9e8afbe3876679b18e1bcec449beca132a1c5ffb2d/watchfiles-1.1.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:55c7475190662e202c08c6c0f4d9e345a29367438cf8e8037f3155e10a88d5a5", size = 390510, upload-time = "2025-10-14T15:05:41.945Z" }, + { url = "https://files.pythonhosted.org/packages/d5/a0/ad235642118090f66e7b2f18fd5c42082418404a79205cdfca50b6309c13/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f53fa183d53a1d7a8852277c92b967ae99c2d4dcee2bfacff8868e6e30b15f7", size = 448408, upload-time = "2025-10-14T15:05:43.385Z" }, + { url = "https://files.pythonhosted.org/packages/df/85/97fa10fd5ff3332ae17e7e40e20784e419e28521549780869f1413742e9d/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6aae418a8b323732fa89721d86f39ec8f092fc2af67f4217a2b07fd3e93c6101", size = 458968, upload-time = "2025-10-14T15:05:44.404Z" }, + { url = "https://files.pythonhosted.org/packages/47/c2/9059c2e8966ea5ce678166617a7f75ecba6164375f3b288e50a40dc6d489/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f096076119da54a6080e8920cbdaac3dbee667eb91dcc5e5b78840b87415bd44", size = 488096, upload-time = "2025-10-14T15:05:45.398Z" }, + { url = "https://files.pythonhosted.org/packages/94/44/d90a9ec8ac309bc26db808a13e7bfc0e4e78b6fc051078a554e132e80160/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:00485f441d183717038ed2e887a7c868154f216877653121068107b227a2f64c", size = 596040, upload-time = "2025-10-14T15:05:46.502Z" }, + { url = "https://files.pythonhosted.org/packages/95/68/4e3479b20ca305cfc561db3ed207a8a1c745ee32bf24f2026a129d0ddb6e/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a55f3e9e493158d7bfdb60a1165035f1cf7d320914e7b7ea83fe22c6023b58fc", size = 473847, upload-time = "2025-10-14T15:05:47.484Z" }, + { url = "https://files.pythonhosted.org/packages/4f/55/2af26693fd15165c4ff7857e38330e1b61ab8c37d15dc79118cdba115b7a/watchfiles-1.1.1-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c91ed27800188c2ae96d16e3149f199d62f86c7af5f5f4d2c61a3ed8cd3666c", size = 455072, upload-time = "2025-10-14T15:05:48.928Z" }, + { url = "https://files.pythonhosted.org/packages/66/1d/d0d200b10c9311ec25d2273f8aad8c3ef7cc7ea11808022501811208a750/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:311ff15a0bae3714ffb603e6ba6dbfba4065ab60865d15a6ec544133bdb21099", size = 629104, upload-time = "2025-10-14T15:05:49.908Z" }, + { url = "https://files.pythonhosted.org/packages/e3/bd/fa9bb053192491b3867ba07d2343d9f2252e00811567d30ae8d0f78136fe/watchfiles-1.1.1-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:a916a2932da8f8ab582f242c065f5c81bed3462849ca79ee357dd9551b0e9b01", size = 622112, upload-time = "2025-10-14T15:05:50.941Z" }, +] + +[[package]] +name = "websocket-client" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2c/41/aa4bf9664e4cda14c3b39865b12251e8e7d239f4cd0e3cc1b6c2ccde25c1/websocket_client-1.9.0.tar.gz", hash = "sha256:9e813624b6eb619999a97dc7958469217c3176312b3a16a4bd1bc7e08a46ec98", size = 70576, upload-time = "2025-10-07T21:16:36.495Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl", hash = "sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef", size = 82616, upload-time = "2025-10-07T21:16:34.951Z" }, +] + +[[package]] +name = "websockets" +version = "15.0.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/21/e6/26d09fab466b7ca9c7737474c52be4f76a40301b08362eb2dbc19dcc16c1/websockets-15.0.1.tar.gz", hash = "sha256:82544de02076bafba038ce055ee6412d68da13ab47f0c60cab827346de828dee", size = 177016, upload-time = "2025-03-05T20:03:41.606Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/6b/4545a0d843594f5d0771e86463606a3988b5a09ca5123136f8a76580dd63/websockets-15.0.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:3e90baa811a5d73f3ca0bcbf32064d663ed81318ab225ee4f427ad4e26e5aff3", size = 175437, upload-time = "2025-03-05T20:02:16.706Z" }, + { url = "https://files.pythonhosted.org/packages/f4/71/809a0f5f6a06522af902e0f2ea2757f71ead94610010cf570ab5c98e99ed/websockets-15.0.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:592f1a9fe869c778694f0aa806ba0374e97648ab57936f092fd9d87f8bc03665", size = 173096, upload-time = "2025-03-05T20:02:18.832Z" }, + { url = "https://files.pythonhosted.org/packages/3d/69/1a681dd6f02180916f116894181eab8b2e25b31e484c5d0eae637ec01f7c/websockets-15.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0701bc3cfcb9164d04a14b149fd74be7347a530ad3bbf15ab2c678a2cd3dd9a2", size = 173332, upload-time = "2025-03-05T20:02:20.187Z" }, + { url = "https://files.pythonhosted.org/packages/a6/02/0073b3952f5bce97eafbb35757f8d0d54812b6174ed8dd952aa08429bcc3/websockets-15.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8b56bdcdb4505c8078cb6c7157d9811a85790f2f2b3632c7d1462ab5783d215", size = 183152, upload-time = "2025-03-05T20:02:22.286Z" }, + { url = "https://files.pythonhosted.org/packages/74/45/c205c8480eafd114b428284840da0b1be9ffd0e4f87338dc95dc6ff961a1/websockets-15.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0af68c55afbd5f07986df82831c7bff04846928ea8d1fd7f30052638788bc9b5", size = 182096, upload-time = "2025-03-05T20:02:24.368Z" }, + { url = "https://files.pythonhosted.org/packages/14/8f/aa61f528fba38578ec553c145857a181384c72b98156f858ca5c8e82d9d3/websockets-15.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64dee438fed052b52e4f98f76c5790513235efaa1ef7f3f2192c392cd7c91b65", size = 182523, upload-time = "2025-03-05T20:02:25.669Z" }, + { url = "https://files.pythonhosted.org/packages/ec/6d/0267396610add5bc0d0d3e77f546d4cd287200804fe02323797de77dbce9/websockets-15.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d5f6b181bb38171a8ad1d6aa58a67a6aa9d4b38d0f8c5f496b9e42561dfc62fe", size = 182790, upload-time = "2025-03-05T20:02:26.99Z" }, + { url = "https://files.pythonhosted.org/packages/02/05/c68c5adbf679cf610ae2f74a9b871ae84564462955d991178f95a1ddb7dd/websockets-15.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5d54b09eba2bada6011aea5375542a157637b91029687eb4fdb2dab11059c1b4", size = 182165, upload-time = "2025-03-05T20:02:30.291Z" }, + { url = "https://files.pythonhosted.org/packages/29/93/bb672df7b2f5faac89761cb5fa34f5cec45a4026c383a4b5761c6cea5c16/websockets-15.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3be571a8b5afed347da347bfcf27ba12b069d9d7f42cb8c7028b5e98bbb12597", size = 182160, upload-time = "2025-03-05T20:02:31.634Z" }, + { url = "https://files.pythonhosted.org/packages/ff/83/de1f7709376dc3ca9b7eeb4b9a07b4526b14876b6d372a4dc62312bebee0/websockets-15.0.1-cp312-cp312-win32.whl", hash = "sha256:c338ffa0520bdb12fbc527265235639fb76e7bc7faafbb93f6ba80d9c06578a9", size = 176395, upload-time = "2025-03-05T20:02:33.017Z" }, + { url = "https://files.pythonhosted.org/packages/7d/71/abf2ebc3bbfa40f391ce1428c7168fb20582d0ff57019b69ea20fa698043/websockets-15.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcd5cf9e305d7b8338754470cf69cf81f420459dbae8a3b40cee57417f4614a7", size = 176841, upload-time = "2025-03-05T20:02:34.498Z" }, + { url = "https://files.pythonhosted.org/packages/cb/9f/51f0cf64471a9d2b4d0fc6c534f323b664e7095640c34562f5182e5a7195/websockets-15.0.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee443ef070bb3b6ed74514f5efaa37a252af57c90eb33b956d35c8e9c10a1931", size = 175440, upload-time = "2025-03-05T20:02:36.695Z" }, + { url = "https://files.pythonhosted.org/packages/8a/05/aa116ec9943c718905997412c5989f7ed671bc0188ee2ba89520e8765d7b/websockets-15.0.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5a939de6b7b4e18ca683218320fc67ea886038265fd1ed30173f5ce3f8e85675", size = 173098, upload-time = "2025-03-05T20:02:37.985Z" }, + { url = "https://files.pythonhosted.org/packages/ff/0b/33cef55ff24f2d92924923c99926dcce78e7bd922d649467f0eda8368923/websockets-15.0.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:746ee8dba912cd6fc889a8147168991d50ed70447bf18bcda7039f7d2e3d9151", size = 173329, upload-time = "2025-03-05T20:02:39.298Z" }, + { url = "https://files.pythonhosted.org/packages/31/1d/063b25dcc01faa8fada1469bdf769de3768b7044eac9d41f734fd7b6ad6d/websockets-15.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:595b6c3969023ecf9041b2936ac3827e4623bfa3ccf007575f04c5a6aa318c22", size = 183111, upload-time = "2025-03-05T20:02:40.595Z" }, + { url = "https://files.pythonhosted.org/packages/93/53/9a87ee494a51bf63e4ec9241c1ccc4f7c2f45fff85d5bde2ff74fcb68b9e/websockets-15.0.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c714d2fc58b5ca3e285461a4cc0c9a66bd0e24c5da9911e30158286c9b5be7f", size = 182054, upload-time = "2025-03-05T20:02:41.926Z" }, + { url = "https://files.pythonhosted.org/packages/ff/b2/83a6ddf56cdcbad4e3d841fcc55d6ba7d19aeb89c50f24dd7e859ec0805f/websockets-15.0.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f3c1e2ab208db911594ae5b4f79addeb3501604a165019dd221c0bdcabe4db8", size = 182496, upload-time = "2025-03-05T20:02:43.304Z" }, + { url = "https://files.pythonhosted.org/packages/98/41/e7038944ed0abf34c45aa4635ba28136f06052e08fc2168520bb8b25149f/websockets-15.0.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:229cf1d3ca6c1804400b0a9790dc66528e08a6a1feec0d5040e8b9eb14422375", size = 182829, upload-time = "2025-03-05T20:02:48.812Z" }, + { url = "https://files.pythonhosted.org/packages/e0/17/de15b6158680c7623c6ef0db361da965ab25d813ae54fcfeae2e5b9ef910/websockets-15.0.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:756c56e867a90fb00177d530dca4b097dd753cde348448a1012ed6c5131f8b7d", size = 182217, upload-time = "2025-03-05T20:02:50.14Z" }, + { url = "https://files.pythonhosted.org/packages/33/2b/1f168cb6041853eef0362fb9554c3824367c5560cbdaad89ac40f8c2edfc/websockets-15.0.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:558d023b3df0bffe50a04e710bc87742de35060580a293c2a984299ed83bc4e4", size = 182195, upload-time = "2025-03-05T20:02:51.561Z" }, + { url = "https://files.pythonhosted.org/packages/86/eb/20b6cdf273913d0ad05a6a14aed4b9a85591c18a987a3d47f20fa13dcc47/websockets-15.0.1-cp313-cp313-win32.whl", hash = "sha256:ba9e56e8ceeeedb2e080147ba85ffcd5cd0711b89576b83784d8605a7df455fa", size = 176393, upload-time = "2025-03-05T20:02:53.814Z" }, + { url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl", hash = "sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561", size = 176837, upload-time = "2025-03-05T20:02:55.237Z" }, + { url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f", size = 169743, upload-time = "2025-03-05T20:03:39.41Z" }, +] + +[[package]] +name = "yarl" +version = "1.22.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "multidict" }, + { name = "propcache" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/57/63/0c6ebca57330cd313f6102b16dd57ffaf3ec4c83403dcb45dbd15c6f3ea1/yarl-1.22.0.tar.gz", hash = "sha256:bebf8557577d4401ba8bd9ff33906f1376c877aa78d1fe216ad01b4d6745af71", size = 187169, upload-time = "2025-10-06T14:12:55.963Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/75/ff/46736024fee3429b80a165a732e38e5d5a238721e634ab41b040d49f8738/yarl-1.22.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:e340382d1afa5d32b892b3ff062436d592ec3d692aeea3bef3a5cfe11bbf8c6f", size = 142000, upload-time = "2025-10-06T14:09:44.631Z" }, + { url = "https://files.pythonhosted.org/packages/5a/9a/b312ed670df903145598914770eb12de1bac44599549b3360acc96878df8/yarl-1.22.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:f1e09112a2c31ffe8d80be1b0988fa6a18c5d5cad92a9ffbb1c04c91bfe52ad2", size = 94338, upload-time = "2025-10-06T14:09:46.372Z" }, + { url = "https://files.pythonhosted.org/packages/ba/f5/0601483296f09c3c65e303d60c070a5c19fcdbc72daa061e96170785bc7d/yarl-1.22.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:939fe60db294c786f6b7c2d2e121576628468f65453d86b0fe36cb52f987bd74", size = 94909, upload-time = "2025-10-06T14:09:48.648Z" }, + { url = "https://files.pythonhosted.org/packages/60/41/9a1fe0b73dbcefce72e46cf149b0e0a67612d60bfc90fb59c2b2efdfbd86/yarl-1.22.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e1651bf8e0398574646744c1885a41198eba53dc8a9312b954073f845c90a8df", size = 372940, upload-time = "2025-10-06T14:09:50.089Z" }, + { url = "https://files.pythonhosted.org/packages/17/7a/795cb6dfee561961c30b800f0ed616b923a2ec6258b5def2a00bf8231334/yarl-1.22.0-cp312-cp312-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:b8a0588521a26bf92a57a1705b77b8b59044cdceccac7151bd8d229e66b8dedb", size = 345825, upload-time = "2025-10-06T14:09:52.142Z" }, + { url = "https://files.pythonhosted.org/packages/d7/93/a58f4d596d2be2ae7bab1a5846c4d270b894958845753b2c606d666744d3/yarl-1.22.0-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:42188e6a615c1a75bcaa6e150c3fe8f3e8680471a6b10150c5f7e83f47cc34d2", size = 386705, upload-time = "2025-10-06T14:09:54.128Z" }, + { url = "https://files.pythonhosted.org/packages/61/92/682279d0e099d0e14d7fd2e176bd04f48de1484f56546a3e1313cd6c8e7c/yarl-1.22.0-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f6d2cb59377d99718913ad9a151030d6f83ef420a2b8f521d94609ecc106ee82", size = 396518, upload-time = "2025-10-06T14:09:55.762Z" }, + { url = "https://files.pythonhosted.org/packages/db/0f/0d52c98b8a885aeda831224b78f3be7ec2e1aa4a62091f9f9188c3c65b56/yarl-1.22.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:50678a3b71c751d58d7908edc96d332af328839eea883bb554a43f539101277a", size = 377267, upload-time = "2025-10-06T14:09:57.958Z" }, + { url = "https://files.pythonhosted.org/packages/22/42/d2685e35908cbeaa6532c1fc73e89e7f2efb5d8a7df3959ea8e37177c5a3/yarl-1.22.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1e8fbaa7cec507aa24ea27a01456e8dd4b6fab829059b69844bd348f2d467124", size = 365797, upload-time = "2025-10-06T14:09:59.527Z" }, + { url = "https://files.pythonhosted.org/packages/a2/83/cf8c7bcc6355631762f7d8bdab920ad09b82efa6b722999dfb05afa6cfac/yarl-1.22.0-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:433885ab5431bc3d3d4f2f9bd15bfa1614c522b0f1405d62c4f926ccd69d04fa", size = 365535, upload-time = "2025-10-06T14:10:01.139Z" }, + { url = "https://files.pythonhosted.org/packages/25/e1/5302ff9b28f0c59cac913b91fe3f16c59a033887e57ce9ca5d41a3a94737/yarl-1.22.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:b790b39c7e9a4192dc2e201a282109ed2985a1ddbd5ac08dc56d0e121400a8f7", size = 382324, upload-time = "2025-10-06T14:10:02.756Z" }, + { url = "https://files.pythonhosted.org/packages/bf/cd/4617eb60f032f19ae3a688dc990d8f0d89ee0ea378b61cac81ede3e52fae/yarl-1.22.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:31f0b53913220599446872d757257be5898019c85e7971599065bc55065dc99d", size = 383803, upload-time = "2025-10-06T14:10:04.552Z" }, + { url = "https://files.pythonhosted.org/packages/59/65/afc6e62bb506a319ea67b694551dab4a7e6fb7bf604e9bd9f3e11d575fec/yarl-1.22.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:a49370e8f711daec68d09b821a34e1167792ee2d24d405cbc2387be4f158b520", size = 374220, upload-time = "2025-10-06T14:10:06.489Z" }, + { url = "https://files.pythonhosted.org/packages/e7/3d/68bf18d50dc674b942daec86a9ba922d3113d8399b0e52b9897530442da2/yarl-1.22.0-cp312-cp312-win32.whl", hash = "sha256:70dfd4f241c04bd9239d53b17f11e6ab672b9f1420364af63e8531198e3f5fe8", size = 81589, upload-time = "2025-10-06T14:10:09.254Z" }, + { url = "https://files.pythonhosted.org/packages/c8/9a/6ad1a9b37c2f72874f93e691b2e7ecb6137fb2b899983125db4204e47575/yarl-1.22.0-cp312-cp312-win_amd64.whl", hash = "sha256:8884d8b332a5e9b88e23f60bb166890009429391864c685e17bd73a9eda9105c", size = 87213, upload-time = "2025-10-06T14:10:11.369Z" }, + { url = "https://files.pythonhosted.org/packages/44/c5/c21b562d1680a77634d748e30c653c3ca918beb35555cff24986fff54598/yarl-1.22.0-cp312-cp312-win_arm64.whl", hash = "sha256:ea70f61a47f3cc93bdf8b2f368ed359ef02a01ca6393916bc8ff877427181e74", size = 81330, upload-time = "2025-10-06T14:10:13.112Z" }, + { url = "https://files.pythonhosted.org/packages/ea/f3/d67de7260456ee105dc1d162d43a019ecad6b91e2f51809d6cddaa56690e/yarl-1.22.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8dee9c25c74997f6a750cd317b8ca63545169c098faee42c84aa5e506c819b53", size = 139980, upload-time = "2025-10-06T14:10:14.601Z" }, + { url = "https://files.pythonhosted.org/packages/01/88/04d98af0b47e0ef42597b9b28863b9060bb515524da0a65d5f4db160b2d5/yarl-1.22.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:01e73b85a5434f89fc4fe27dcda2aff08ddf35e4d47bbbea3bdcd25321af538a", size = 93424, upload-time = "2025-10-06T14:10:16.115Z" }, + { url = "https://files.pythonhosted.org/packages/18/91/3274b215fd8442a03975ce6bee5fe6aa57a8326b29b9d3d56234a1dca244/yarl-1.22.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:22965c2af250d20c873cdbee8ff958fb809940aeb2e74ba5f20aaf6b7ac8c70c", size = 93821, upload-time = "2025-10-06T14:10:17.993Z" }, + { url = "https://files.pythonhosted.org/packages/61/3a/caf4e25036db0f2da4ca22a353dfeb3c9d3c95d2761ebe9b14df8fc16eb0/yarl-1.22.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b4f15793aa49793ec8d1c708ab7f9eded1aa72edc5174cae703651555ed1b601", size = 373243, upload-time = "2025-10-06T14:10:19.44Z" }, + { url = "https://files.pythonhosted.org/packages/6e/9e/51a77ac7516e8e7803b06e01f74e78649c24ee1021eca3d6a739cb6ea49c/yarl-1.22.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5542339dcf2747135c5c85f68680353d5cb9ffd741c0f2e8d832d054d41f35a", size = 342361, upload-time = "2025-10-06T14:10:21.124Z" }, + { url = "https://files.pythonhosted.org/packages/d4/f8/33b92454789dde8407f156c00303e9a891f1f51a0330b0fad7c909f87692/yarl-1.22.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5c401e05ad47a75869c3ab3e35137f8468b846770587e70d71e11de797d113df", size = 387036, upload-time = "2025-10-06T14:10:22.902Z" }, + { url = "https://files.pythonhosted.org/packages/d9/9a/c5db84ea024f76838220280f732970aa4ee154015d7f5c1bfb60a267af6f/yarl-1.22.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:243dda95d901c733f5b59214d28b0120893d91777cb8aa043e6ef059d3cddfe2", size = 397671, upload-time = "2025-10-06T14:10:24.523Z" }, + { url = "https://files.pythonhosted.org/packages/11/c9/cd8538dc2e7727095e0c1d867bad1e40c98f37763e6d995c1939f5fdc7b1/yarl-1.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bec03d0d388060058f5d291a813f21c011041938a441c593374da6077fe21b1b", size = 377059, upload-time = "2025-10-06T14:10:26.406Z" }, + { url = "https://files.pythonhosted.org/packages/a1/b9/ab437b261702ced75122ed78a876a6dec0a1b0f5e17a4ac7a9a2482d8abe/yarl-1.22.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0748275abb8c1e1e09301ee3cf90c8a99678a4e92e4373705f2a2570d581273", size = 365356, upload-time = "2025-10-06T14:10:28.461Z" }, + { url = "https://files.pythonhosted.org/packages/b2/9d/8e1ae6d1d008a9567877b08f0ce4077a29974c04c062dabdb923ed98e6fe/yarl-1.22.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:47fdb18187e2a4e18fda2c25c05d8251a9e4a521edaed757fef033e7d8498d9a", size = 361331, upload-time = "2025-10-06T14:10:30.541Z" }, + { url = "https://files.pythonhosted.org/packages/ca/5a/09b7be3905962f145b73beb468cdd53db8aa171cf18c80400a54c5b82846/yarl-1.22.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c7044802eec4524fde550afc28edda0dd5784c4c45f0be151a2d3ba017daca7d", size = 382590, upload-time = "2025-10-06T14:10:33.352Z" }, + { url = "https://files.pythonhosted.org/packages/aa/7f/59ec509abf90eda5048b0bc3e2d7b5099dffdb3e6b127019895ab9d5ef44/yarl-1.22.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:139718f35149ff544caba20fce6e8a2f71f1e39b92c700d8438a0b1d2a631a02", size = 385316, upload-time = "2025-10-06T14:10:35.034Z" }, + { url = "https://files.pythonhosted.org/packages/e5/84/891158426bc8036bfdfd862fabd0e0fa25df4176ec793e447f4b85cf1be4/yarl-1.22.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e1b51bebd221006d3d2f95fbe124b22b247136647ae5dcc8c7acafba66e5ee67", size = 374431, upload-time = "2025-10-06T14:10:37.76Z" }, + { url = "https://files.pythonhosted.org/packages/bb/49/03da1580665baa8bef5e8ed34c6df2c2aca0a2f28bf397ed238cc1bbc6f2/yarl-1.22.0-cp313-cp313-win32.whl", hash = "sha256:d3e32536234a95f513bd374e93d717cf6b2231a791758de6c509e3653f234c95", size = 81555, upload-time = "2025-10-06T14:10:39.649Z" }, + { url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl", hash = "sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d", size = 86965, upload-time = "2025-10-06T14:10:41.313Z" }, + { url = "https://files.pythonhosted.org/packages/98/4d/264a01eae03b6cf629ad69bae94e3b0e5344741e929073678e84bf7a3e3b/yarl-1.22.0-cp313-cp313-win_arm64.whl", hash = "sha256:5d0fcda9608875f7d052eff120c7a5da474a6796fe4d83e152e0e4d42f6d1a9b", size = 81205, upload-time = "2025-10-06T14:10:43.167Z" }, + { url = "https://files.pythonhosted.org/packages/88/fc/6908f062a2f77b5f9f6d69cecb1747260831ff206adcbc5b510aff88df91/yarl-1.22.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:719ae08b6972befcba4310e49edb1161a88cdd331e3a694b84466bd938a6ab10", size = 146209, upload-time = "2025-10-06T14:10:44.643Z" }, + { url = "https://files.pythonhosted.org/packages/65/47/76594ae8eab26210b4867be6f49129861ad33da1f1ebdf7051e98492bf62/yarl-1.22.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:47d8a5c446df1c4db9d21b49619ffdba90e77c89ec6e283f453856c74b50b9e3", size = 95966, upload-time = "2025-10-06T14:10:46.554Z" }, + { url = "https://files.pythonhosted.org/packages/ab/ce/05e9828a49271ba6b5b038b15b3934e996980dd78abdfeb52a04cfb9467e/yarl-1.22.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:cfebc0ac8333520d2d0423cbbe43ae43c8838862ddb898f5ca68565e395516e9", size = 97312, upload-time = "2025-10-06T14:10:48.007Z" }, + { url = "https://files.pythonhosted.org/packages/d1/c5/7dffad5e4f2265b29c9d7ec869c369e4223166e4f9206fc2243ee9eea727/yarl-1.22.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4398557cbf484207df000309235979c79c4356518fd5c99158c7d38203c4da4f", size = 361967, upload-time = "2025-10-06T14:10:49.997Z" }, + { url = "https://files.pythonhosted.org/packages/50/b2/375b933c93a54bff7fc041e1a6ad2c0f6f733ffb0c6e642ce56ee3b39970/yarl-1.22.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2ca6fd72a8cd803be290d42f2dec5cdcd5299eeb93c2d929bf060ad9efaf5de0", size = 323949, upload-time = "2025-10-06T14:10:52.004Z" }, + { url = "https://files.pythonhosted.org/packages/66/50/bfc2a29a1d78644c5a7220ce2f304f38248dc94124a326794e677634b6cf/yarl-1.22.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca1f59c4e1ab6e72f0a23c13fca5430f889634166be85dbf1013683e49e3278e", size = 361818, upload-time = "2025-10-06T14:10:54.078Z" }, + { url = "https://files.pythonhosted.org/packages/46/96/f3941a46af7d5d0f0498f86d71275696800ddcdd20426298e572b19b91ff/yarl-1.22.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6c5010a52015e7c70f86eb967db0f37f3c8bd503a695a49f8d45700144667708", size = 372626, upload-time = "2025-10-06T14:10:55.767Z" }, + { url = "https://files.pythonhosted.org/packages/c1/42/8b27c83bb875cd89448e42cd627e0fb971fa1675c9ec546393d18826cb50/yarl-1.22.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d7672ecf7557476642c88497c2f8d8542f8e36596e928e9bcba0e42e1e7d71f", size = 341129, upload-time = "2025-10-06T14:10:57.985Z" }, + { url = "https://files.pythonhosted.org/packages/49/36/99ca3122201b382a3cf7cc937b95235b0ac944f7e9f2d5331d50821ed352/yarl-1.22.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:3b7c88eeef021579d600e50363e0b6ee4f7f6f728cd3486b9d0f3ee7b946398d", size = 346776, upload-time = "2025-10-06T14:10:59.633Z" }, + { url = "https://files.pythonhosted.org/packages/85/b4/47328bf996acd01a4c16ef9dcd2f59c969f495073616586f78cd5f2efb99/yarl-1.22.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:f4afb5c34f2c6fecdcc182dfcfc6af6cccf1aa923eed4d6a12e9d96904e1a0d8", size = 334879, upload-time = "2025-10-06T14:11:01.454Z" }, + { url = "https://files.pythonhosted.org/packages/c2/ad/b77d7b3f14a4283bffb8e92c6026496f6de49751c2f97d4352242bba3990/yarl-1.22.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:59c189e3e99a59cf8d83cbb31d4db02d66cda5a1a4374e8a012b51255341abf5", size = 350996, upload-time = "2025-10-06T14:11:03.452Z" }, + { url = "https://files.pythonhosted.org/packages/81/c8/06e1d69295792ba54d556f06686cbd6a7ce39c22307100e3fb4a2c0b0a1d/yarl-1.22.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:5a3bf7f62a289fa90f1990422dc8dff5a458469ea71d1624585ec3a4c8d6960f", size = 356047, upload-time = "2025-10-06T14:11:05.115Z" }, + { url = "https://files.pythonhosted.org/packages/4b/b8/4c0e9e9f597074b208d18cef227d83aac36184bfbc6eab204ea55783dbc5/yarl-1.22.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:de6b9a04c606978fdfe72666fa216ffcf2d1a9f6a381058d4378f8d7b1e5de62", size = 342947, upload-time = "2025-10-06T14:11:08.137Z" }, + { url = "https://files.pythonhosted.org/packages/e0/e5/11f140a58bf4c6ad7aca69a892bff0ee638c31bea4206748fc0df4ebcb3a/yarl-1.22.0-cp313-cp313t-win32.whl", hash = "sha256:1834bb90991cc2999f10f97f5f01317f99b143284766d197e43cd5b45eb18d03", size = 86943, upload-time = "2025-10-06T14:11:10.284Z" }, + { url = "https://files.pythonhosted.org/packages/31/74/8b74bae38ed7fe6793d0c15a0c8207bbb819cf287788459e5ed230996cdd/yarl-1.22.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff86011bd159a9d2dfc89c34cfd8aff12875980e3bd6a39ff097887520e60249", size = 93715, upload-time = "2025-10-06T14:11:11.739Z" }, + { url = "https://files.pythonhosted.org/packages/69/66/991858aa4b5892d57aef7ee1ba6b4d01ec3b7eb3060795d34090a3ca3278/yarl-1.22.0-cp313-cp313t-win_arm64.whl", hash = "sha256:7861058d0582b847bc4e3a4a4c46828a410bca738673f35a29ba3ca5db0b473b", size = 83857, upload-time = "2025-10-06T14:11:13.586Z" }, + { url = "https://files.pythonhosted.org/packages/46/b3/e20ef504049f1a1c54a814b4b9bed96d1ac0e0610c3b4da178f87209db05/yarl-1.22.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:34b36c2c57124530884d89d50ed2c1478697ad7473efd59cfd479945c95650e4", size = 140520, upload-time = "2025-10-06T14:11:15.465Z" }, + { url = "https://files.pythonhosted.org/packages/e4/04/3532d990fdbab02e5ede063676b5c4260e7f3abea2151099c2aa745acc4c/yarl-1.22.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:0dd9a702591ca2e543631c2a017e4a547e38a5c0f29eece37d9097e04a7ac683", size = 93504, upload-time = "2025-10-06T14:11:17.106Z" }, + { url = "https://files.pythonhosted.org/packages/11/63/ff458113c5c2dac9a9719ac68ee7c947cb621432bcf28c9972b1c0e83938/yarl-1.22.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:594fcab1032e2d2cc3321bb2e51271e7cd2b516c7d9aee780ece81b07ff8244b", size = 94282, upload-time = "2025-10-06T14:11:19.064Z" }, + { url = "https://files.pythonhosted.org/packages/a7/bc/315a56aca762d44a6aaaf7ad253f04d996cb6b27bad34410f82d76ea8038/yarl-1.22.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f3d7a87a78d46a2e3d5b72587ac14b4c16952dd0887dbb051451eceac774411e", size = 372080, upload-time = "2025-10-06T14:11:20.996Z" }, + { url = "https://files.pythonhosted.org/packages/3f/3f/08e9b826ec2e099ea6e7c69a61272f4f6da62cb5b1b63590bb80ca2e4a40/yarl-1.22.0-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:852863707010316c973162e703bddabec35e8757e67fcb8ad58829de1ebc8590", size = 338696, upload-time = "2025-10-06T14:11:22.847Z" }, + { url = "https://files.pythonhosted.org/packages/e3/9f/90360108e3b32bd76789088e99538febfea24a102380ae73827f62073543/yarl-1.22.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:131a085a53bfe839a477c0845acf21efc77457ba2bcf5899618136d64f3303a2", size = 387121, upload-time = "2025-10-06T14:11:24.889Z" }, + { url = "https://files.pythonhosted.org/packages/98/92/ab8d4657bd5b46a38094cfaea498f18bb70ce6b63508fd7e909bd1f93066/yarl-1.22.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:078a8aefd263f4d4f923a9677b942b445a2be970ca24548a8102689a3a8ab8da", size = 394080, upload-time = "2025-10-06T14:11:27.307Z" }, + { url = "https://files.pythonhosted.org/packages/f5/e7/d8c5a7752fef68205296201f8ec2bf718f5c805a7a7e9880576c67600658/yarl-1.22.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bca03b91c323036913993ff5c738d0842fc9c60c4648e5c8d98331526df89784", size = 372661, upload-time = "2025-10-06T14:11:29.387Z" }, + { url = "https://files.pythonhosted.org/packages/b6/2e/f4d26183c8db0bb82d491b072f3127fb8c381a6206a3a56332714b79b751/yarl-1.22.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:68986a61557d37bb90d3051a45b91fa3d5c516d177dfc6dd6f2f436a07ff2b6b", size = 364645, upload-time = "2025-10-06T14:11:31.423Z" }, + { url = "https://files.pythonhosted.org/packages/80/7c/428e5812e6b87cd00ee8e898328a62c95825bf37c7fa87f0b6bb2ad31304/yarl-1.22.0-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:4792b262d585ff0dff6bcb787f8492e40698443ec982a3568c2096433660c694", size = 355361, upload-time = "2025-10-06T14:11:33.055Z" }, + { url = "https://files.pythonhosted.org/packages/ec/2a/249405fd26776f8b13c067378ef4d7dd49c9098d1b6457cdd152a99e96a9/yarl-1.22.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:ebd4549b108d732dba1d4ace67614b9545b21ece30937a63a65dd34efa19732d", size = 381451, upload-time = "2025-10-06T14:11:35.136Z" }, + { url = "https://files.pythonhosted.org/packages/67/a8/fb6b1adbe98cf1e2dd9fad71003d3a63a1bc22459c6e15f5714eb9323b93/yarl-1.22.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:f87ac53513d22240c7d59203f25cc3beac1e574c6cd681bbfd321987b69f95fd", size = 383814, upload-time = "2025-10-06T14:11:37.094Z" }, + { url = "https://files.pythonhosted.org/packages/d9/f9/3aa2c0e480fb73e872ae2814c43bc1e734740bb0d54e8cb2a95925f98131/yarl-1.22.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:22b029f2881599e2f1b06f8f1db2ee63bd309e2293ba2d566e008ba12778b8da", size = 370799, upload-time = "2025-10-06T14:11:38.83Z" }, + { url = "https://files.pythonhosted.org/packages/50/3c/af9dba3b8b5eeb302f36f16f92791f3ea62e3f47763406abf6d5a4a3333b/yarl-1.22.0-cp314-cp314-win32.whl", hash = "sha256:6a635ea45ba4ea8238463b4f7d0e721bad669f80878b7bfd1f89266e2ae63da2", size = 82990, upload-time = "2025-10-06T14:11:40.624Z" }, + { url = "https://files.pythonhosted.org/packages/ac/30/ac3a0c5bdc1d6efd1b41fa24d4897a4329b3b1e98de9449679dd327af4f0/yarl-1.22.0-cp314-cp314-win_amd64.whl", hash = "sha256:0d6e6885777af0f110b0e5d7e5dda8b704efed3894da26220b7f3d887b839a79", size = 88292, upload-time = "2025-10-06T14:11:42.578Z" }, + { url = "https://files.pythonhosted.org/packages/df/0a/227ab4ff5b998a1b7410abc7b46c9b7a26b0ca9e86c34ba4b8d8bc7c63d5/yarl-1.22.0-cp314-cp314-win_arm64.whl", hash = "sha256:8218f4e98d3c10d683584cb40f0424f4b9fd6e95610232dd75e13743b070ee33", size = 82888, upload-time = "2025-10-06T14:11:44.863Z" }, + { url = "https://files.pythonhosted.org/packages/06/5e/a15eb13db90abd87dfbefb9760c0f3f257ac42a5cac7e75dbc23bed97a9f/yarl-1.22.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:45c2842ff0e0d1b35a6bf1cd6c690939dacb617a70827f715232b2e0494d55d1", size = 146223, upload-time = "2025-10-06T14:11:46.796Z" }, + { url = "https://files.pythonhosted.org/packages/18/82/9665c61910d4d84f41a5bf6837597c89e665fa88aa4941080704645932a9/yarl-1.22.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:d947071e6ebcf2e2bee8fce76e10faca8f7a14808ca36a910263acaacef08eca", size = 95981, upload-time = "2025-10-06T14:11:48.845Z" }, + { url = "https://files.pythonhosted.org/packages/5d/9a/2f65743589809af4d0a6d3aa749343c4b5f4c380cc24a8e94a3c6625a808/yarl-1.22.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:334b8721303e61b00019474cc103bdac3d7b1f65e91f0bfedeec2d56dfe74b53", size = 97303, upload-time = "2025-10-06T14:11:50.897Z" }, + { url = "https://files.pythonhosted.org/packages/b0/ab/5b13d3e157505c43c3b43b5a776cbf7b24a02bc4cccc40314771197e3508/yarl-1.22.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e7ce67c34138a058fd092f67d07a72b8e31ff0c9236e751957465a24b28910c", size = 361820, upload-time = "2025-10-06T14:11:52.549Z" }, + { url = "https://files.pythonhosted.org/packages/fb/76/242a5ef4677615cf95330cfc1b4610e78184400699bdda0acb897ef5e49a/yarl-1.22.0-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:d77e1b2c6d04711478cb1c4ab90db07f1609ccf06a287d5607fcd90dc9863acf", size = 323203, upload-time = "2025-10-06T14:11:54.225Z" }, + { url = "https://files.pythonhosted.org/packages/8c/96/475509110d3f0153b43d06164cf4195c64d16999e0c7e2d8a099adcd6907/yarl-1.22.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c4647674b6150d2cae088fc07de2738a84b8bcedebef29802cf0b0a82ab6face", size = 363173, upload-time = "2025-10-06T14:11:56.069Z" }, + { url = "https://files.pythonhosted.org/packages/c9/66/59db471aecfbd559a1fd48aedd954435558cd98c7d0da8b03cc6c140a32c/yarl-1.22.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:efb07073be061c8f79d03d04139a80ba33cbd390ca8f0297aae9cce6411e4c6b", size = 373562, upload-time = "2025-10-06T14:11:58.783Z" }, + { url = "https://files.pythonhosted.org/packages/03/1f/c5d94abc91557384719da10ff166b916107c1b45e4d0423a88457071dd88/yarl-1.22.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e51ac5435758ba97ad69617e13233da53908beccc6cfcd6c34bbed8dcbede486", size = 339828, upload-time = "2025-10-06T14:12:00.686Z" }, + { url = "https://files.pythonhosted.org/packages/5f/97/aa6a143d3afba17b6465733681c70cf175af89f76ec8d9286e08437a7454/yarl-1.22.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:33e32a0dd0c8205efa8e83d04fc9f19313772b78522d1bdc7d9aed706bfd6138", size = 347551, upload-time = "2025-10-06T14:12:02.628Z" }, + { url = "https://files.pythonhosted.org/packages/43/3c/45a2b6d80195959239a7b2a8810506d4eea5487dce61c2a3393e7fc3c52e/yarl-1.22.0-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:bf4a21e58b9cde0e401e683ebd00f6ed30a06d14e93f7c8fd059f8b6e8f87b6a", size = 334512, upload-time = "2025-10-06T14:12:04.871Z" }, + { url = "https://files.pythonhosted.org/packages/86/a0/c2ab48d74599c7c84cb104ebd799c5813de252bea0f360ffc29d270c2caa/yarl-1.22.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:e4b582bab49ac33c8deb97e058cd67c2c50dac0dd134874106d9c774fd272529", size = 352400, upload-time = "2025-10-06T14:12:06.624Z" }, + { url = "https://files.pythonhosted.org/packages/32/75/f8919b2eafc929567d3d8411f72bdb1a2109c01caaab4ebfa5f8ffadc15b/yarl-1.22.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:0b5bcc1a9c4839e7e30b7b30dd47fe5e7e44fb7054ec29b5bb8d526aa1041093", size = 357140, upload-time = "2025-10-06T14:12:08.362Z" }, + { url = "https://files.pythonhosted.org/packages/cf/72/6a85bba382f22cf78add705d8c3731748397d986e197e53ecc7835e76de7/yarl-1.22.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:c0232bce2170103ec23c454e54a57008a9a72b5d1c3105dc2496750da8cfa47c", size = 341473, upload-time = "2025-10-06T14:12:10.994Z" }, + { url = "https://files.pythonhosted.org/packages/35/18/55e6011f7c044dc80b98893060773cefcfdbf60dfefb8cb2f58b9bacbd83/yarl-1.22.0-cp314-cp314t-win32.whl", hash = "sha256:8009b3173bcd637be650922ac455946197d858b3630b6d8787aa9e5c4564533e", size = 89056, upload-time = "2025-10-06T14:12:13.317Z" }, + { url = "https://files.pythonhosted.org/packages/f9/86/0f0dccb6e59a9e7f122c5afd43568b1d31b8ab7dda5f1b01fb5c7025c9a9/yarl-1.22.0-cp314-cp314t-win_amd64.whl", hash = "sha256:9fb17ea16e972c63d25d4a97f016d235c78dd2344820eb35bc034bc32012ee27", size = 96292, upload-time = "2025-10-06T14:12:15.398Z" }, + { url = "https://files.pythonhosted.org/packages/48/b7/503c98092fb3b344a179579f55814b613c1fbb1c23b3ec14a7b008a66a6e/yarl-1.22.0-cp314-cp314t-win_arm64.whl", hash = "sha256:9f6d73c1436b934e3f01df1e1b21ff765cd1d28c77dfb9ace207f746d4610ee1", size = 85171, upload-time = "2025-10-06T14:12:16.935Z" }, + { url = "https://files.pythonhosted.org/packages/73/ae/b48f95715333080afb75a4504487cbe142cae1268afc482d06692d605ae6/yarl-1.22.0-py3-none-any.whl", hash = "sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff", size = 46814, upload-time = "2025-10-06T14:12:53.872Z" }, +] + +[[package]] +name = "youtube-transcript-api" +version = "1.2.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "defusedxml" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/87/03/68c69b2d3e282d45cb3c07e5836a9146ff9574cde720570ffc7eb124e56b/youtube_transcript_api-1.2.3.tar.gz", hash = "sha256:76016b71b410b124892c74df24b07b052702cf3c53afb300d0a2c547c0b71b68", size = 469757, upload-time = "2025-10-13T15:57:17.532Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/75/a861661b73d862e323c12af96ecfb237fb4d1433e551183d4172d39d5275/youtube_transcript_api-1.2.3-py3-none-any.whl", hash = "sha256:0c1b32ea5e739f9efde8c42e3d43e67df475185af6f820109607577b83768375", size = 485140, upload-time = "2025-10-13T15:57:16.034Z" }, +] + +[[package]] +name = "zipp" +version = "3.23.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e3/02/0f2892c661036d50ede074e376733dca2ae7c6eb617489437771209d4180/zipp-3.23.0.tar.gz", hash = "sha256:a07157588a12518c9d4034df3fbbee09c814741a33ff63c05fa29d26a2404166", size = 25547, upload-time = "2025-06-08T17:06:39.4Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2e/54/647ade08bf0db230bfea292f893923872fd20be6ac6f53b2b936ba839d75/zipp-3.23.0-py3-none-any.whl", hash = "sha256:071652d6115ed432f5ce1d34c336c0adfd6a884660d1e9712a256d3d3bd4b14e", size = 10276, upload-time = "2025-06-08T17:06:38.034Z" }, +] From caa84808d9c08f0e487e1694421658afc4372040 Mon Sep 17 00:00:00 2001 From: Sitam Meur <103279526+sitammeur@users.noreply.github.com> Date: Thu, 5 Feb 2026 07:50:16 +0000 Subject: [PATCH 2/2] fix review issues --- form-filling-automation/app.py | 2 ++ form-filling-automation/flow.py | 8 ++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/form-filling-automation/app.py b/form-filling-automation/app.py index f24a8c2e3..4441266a8 100644 --- a/form-filling-automation/app.py +++ b/form-filling-automation/app.py @@ -326,6 +326,8 @@ def extract_json_from_text(text: str) -> dict: extracted_text = result.raw if result.raw else "" if not extracted_text: raise ValueError("No text extracted from document") + if extracted_text.startswith("Error:"): + raise ValueError(extracted_text) log_listener.display() s1.update( diff --git a/form-filling-automation/flow.py b/form-filling-automation/flow.py index 085ba5837..3ba0dfb77 100644 --- a/form-filling-automation/flow.py +++ b/form-filling-automation/flow.py @@ -23,8 +23,8 @@ # LLM Configuration # ============================================================================= llm = LLM( - model="openrouter/minimax/minimax-m2.1", - api_key=os.environ.get("OPENROUTER_API_KEY"), + model="gemini/gemini-2.5-flash", + api_key=os.environ.get("GOOGLE_API_KEY"), ) @@ -208,6 +208,10 @@ def extract_document_data(self, prev): self.state.errors.append("No text extracted from document") return "failed" + if self.state.extracted_text.startswith("Error:"): + self.state.errors.append(self.state.extracted_text) + return "failed" + self.state.status = "data_extracted" return "ok"
  • yE%Wu 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