From a95bc06ff10c45270c1499e8a5085ff262920693 Mon Sep 17 00:00:00 2001 From: "estevez.sebastian@gmail.com" Date: Thu, 10 Jul 2025 22:36:45 -0400 Subject: [PATCH] take 0 --- .gitignore | 12 + .python-version | 1 + Dockerfile | 40 + README.md | 0 docker-compose.yml | 25 + documents/2506.08231v1.pdf | Bin 0 -> 353267 bytes pyproject.toml | 28 + src/app.py | 172 ++++ uv.lock | 1944 ++++++++++++++++++++++++++++++++++++ 9 files changed, 2222 insertions(+) create mode 100644 .gitignore create mode 100644 .python-version create mode 100644 Dockerfile create mode 100644 README.md create mode 100644 docker-compose.yml create mode 100644 documents/2506.08231v1.pdf create mode 100644 pyproject.toml create mode 100644 src/app.py create mode 100644 uv.lock diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..01f3e8cd --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +# Python-generated files +__pycache__/ +*.py[oc] +build/ +dist/ +wheels/ +*.egg-info + +# Virtual environments +.venv + +.idea/ diff --git a/.python-version b/.python-version new file mode 100644 index 00000000..24ee5b1b --- /dev/null +++ b/.python-version @@ -0,0 +1 @@ +3.13 diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..d5aec23f --- /dev/null +++ b/Dockerfile @@ -0,0 +1,40 @@ +FROM opensearchproject/opensearch:3.0.0 + +USER root + +RUN echo y | dnf install less procps-ng findutils sysstat perf sudo + +# Grant the opensearchuser sudo privileges +# 'wheel' is the sudo group in Amazon Linux +RUN usermod -aG wheel opensearch + +# Change the sudoers file to allow passwordless sudo +RUN echo "opensearch ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers + +# FIXME handle the machine arch better, somehow +ARG ASYNC_PROFILER_URL=https://github.com/async-profiler/async-profiler/releases/download/v4.0/async-profiler-4.0-linux-x64.tar.gz + +RUN mkdir /opt/async-profiler +RUN curl -s -L $ASYNC_PROFILER_URL | tar zxvf - --strip-components=1 -C /opt/async-profiler +RUN chown -R opensearch:opensearch /opt/async-profiler + +RUN echo "#!/bin/bash" > /usr/share/opensearch/profile.sh +RUN echo "export PATH=\$PATH:/opt/async-profiler/bin" >> /usr/share/opensearch/profile.sh +RUN echo "echo 1 | sudo tee /proc/sys/kernel/perf_event_paranoid >/dev/null" >> /usr/share/opensearch/profile.sh +RUN echo "echo 0 | sudo tee /proc/sys/kernel/kptr_restrict >/dev/null" >> /usr/share/opensearch/profile.sh +RUN echo "asprof \$@" >> /usr/share/opensearch/profile.sh + +RUN chmod 777 /usr/share/opensearch/profile.sh + +USER opensearch + +RUN opensearch-plugin remove opensearch-neural-search +RUN opensearch-plugin remove opensearch-knn + +# FIXME installing the prom exporter plugin ahead of time isn't compatible with the operator, for now +# RUN opensearch-plugin install https://github.com/Virtimo/prometheus-exporter-plugin-for-opensearch/releases/download/v2.18.0/prometheus-exporter-2.18.0.0.zip + +RUN echo y | opensearch-plugin install https://repo1.maven.org/maven2/org/opensearch/plugin/opensearch-jvector-plugin/3.0.0.3/opensearch-jvector-plugin-3.0.0.3.zip +RUN echo y | opensearch-plugin install repository-gcs +RUN echo y | opensearch-plugin install repository-azure +RUN echo y | opensearch-plugin install repository-s3 diff --git a/README.md b/README.md new file mode 100644 index 00000000..e69de29b diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 00000000..9eae53ed --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,25 @@ +services: + opensearch: + build: + context: . + dockerfile: Dockerfile + container_name: os + environment: + - discovery.type=single-node + - OPENSEARCH_INITIAL_ADMIN_PASSWORD=OSisgendb1! + ports: + - "9200:9200" + - "9600:9600" + + dashboards: + image: opensearchproject/opensearch-dashboards:3.0.0 + container_name: osdash + depends_on: + - opensearch + environment: + OPENSEARCH_HOSTS: '["https://opensearch:9200"]' + OPENSEARCH_USERNAME: "admin" + OPENSEARCH_PASSWORD: "OSisgendb1!" + ports: + - "5601:5601" + diff --git a/documents/2506.08231v1.pdf b/documents/2506.08231v1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..61e8326548be83cc94da2726a6930b3cb45adbeb GIT binary patch literal 353267 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⪼p=9rS!%p<@e?K#9OP!o89QHF- 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 literal 0 HcmV?d00001 diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..acc4f1d1 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,28 @@ +[project] +name = "gendb" +version = "0.1.0" +description = "Add your description here" +readme = "README.md" +requires-python = ">=3.13" +dependencies = [ + "aiofiles>=24.1.0", + "docling>=2.41.0", + "opensearch-py[async]>=3.0.0", + "python-multipart>=0.0.20", + "starlette>=0.47.1", + "torch>=2.7.1", + "uvicorn>=0.35.0", +] + +[tool.uv.sources] +torch = [ + { index = "pytorch-cu128" }, +] +torchvision = [ + { index = "pytorch-cu128" }, +] + +[[tool.uv.index]] +name = "pytorch-cu128" +url = "https://download.pytorch.org/whl/cu128" +explicit = true diff --git a/src/app.py b/src/app.py new file mode 100644 index 00000000..02c8b599 --- /dev/null +++ b/src/app.py @@ -0,0 +1,172 @@ +# app.py + +import os +os.environ['USE_CPU_ONLY'] = 'true' + +import json +import hashlib +import tempfile +import asyncio + +from starlette.applications import Starlette +from starlette.requests import Request +from starlette.responses import JSONResponse +from starlette.routing import Route + +import aiofiles +from opensearchpy import AsyncOpenSearch +from opensearchpy._async.http_aiohttp import AIOHttpConnection +from docling.document_converter import DocumentConverter + + +# Initialize Docling converter +converter = DocumentConverter() # basic converter; tweak via PipelineOptions if you need OCR, etc. :contentReference[oaicite:0]{index=0} + +# Initialize Async OpenSearch (adjust hosts/auth as needed) +es = AsyncOpenSearch( + hosts=[{"host": "localhost", "port": 9200}], + connection_class=AIOHttpConnection, + scheme="https", + use_ssl=True, + verify_certs=False, + ssl_assert_fingerprint=None, + http_auth=("admin","OSisgendb1!"), + http_compress=True, +) + +INDEX_NAME = "documents" + +index_body = { + "settings": {"number_of_shards":1, "number_of_replicas":1}, + "mappings": { + "properties": { + "origin": { + "properties": { + "binary_hash": {"type":"keyword"} + } + } + } + } +} +async def init_index(): + if not await es.indices.exists(index=INDEX_NAME): + await es.indices.create(index=INDEX_NAME, body=index_body) + print(f"Created index '{INDEX_NAME}'") + else: + print(f"Index '{INDEX_NAME}' already exists, skipping creation.") + +# Index will be initialized when the app starts + + +# —————————————— +# CORE PROCESSING LOGIC +# —————————————— + +async def process_file_on_disk(path: str): + """ + 1. Compute SHA256 hash by streaming the file in chunks. + 2. If OpenSearch already has a doc with that ID, skip. + 3. Otherwise, run Docling.convert(path) → JSON → index into OpenSearch. + """ + # 1) compute hash + sha256 = hashlib.sha256() + async with aiofiles.open(path, "rb") as f: + while True: + chunk = await f.read(1 << 20) # 1 MiB + if not chunk: + break + sha256.update(chunk) + file_hash = sha256.hexdigest() + + # 2) check in OpenSearch + exists = await es.exists(index=INDEX_NAME, id=file_hash) + if exists: + return {"path": path, "status": "unchanged", "id": file_hash} + + # 3) parse + index + result = converter.convert(path) + doc_dict = result.document.export_to_dict() + await es.index(index=INDEX_NAME, id=file_hash, body=doc_dict) + + return {"path": path, "status": "indexed", "id": file_hash} + + +async def upload(request: Request): + """ + POST /upload + Form-data with a `file` field. Streams to disk + processes it. + """ + form = await request.form() + upload_file = form["file"] # starlette.datastructures.UploadFile + + # stream into a temp file while hashing + sha256 = hashlib.sha256() + tmp = tempfile.NamedTemporaryFile(delete=False) + try: + while True: + chunk = await upload_file.read(1 << 20) + if not chunk: + break + sha256.update(chunk) + tmp.write(chunk) + tmp.flush() + + file_hash = sha256.hexdigest() + # if you prefer the Datastax pattern for naming IDs, see: + # https://github.com/datastax/astra-assistants-api/blob/main/impl/utils.py#L229 :contentReference[oaicite:1]{index=1} + + # check + index + exists = await es.exists(index=INDEX_NAME, id=file_hash) + if exists: + return JSONResponse({"status": "unchanged", "id": file_hash}) + + result = converter.convert(tmp.name) + doc_dict = result.document.export_to_dict() + await es.index(index=INDEX_NAME, id=file_hash, body=doc_dict) + + return JSONResponse({"status": "indexed", "id": file_hash}) + + finally: + tmp.close() + os.remove(tmp.name) + + +async def upload_path(request: Request): + """ + POST /upload_path + JSON body: { "path": "/absolute/path/to/dir" } + Recursively processes every file found there in parallel. + """ + payload = await request.json() + base_dir = payload.get("path") + if not base_dir or not os.path.isdir(base_dir): + return JSONResponse({"error": "Invalid path"}, status_code=400) + + tasks = [] + for root, _, files in os.walk(base_dir): + for fn in files: + full = os.path.join(root, fn) + tasks.append(process_file_on_disk(full)) + + results = await asyncio.gather(*tasks) + return JSONResponse({"results": results}) + + +app = Starlette(debug=True, routes=[ + Route("/upload", upload, methods=["POST"]), + Route("/upload_path", upload_path, methods=["POST"]), +]) + + +if __name__ == "__main__": + import uvicorn + + # Initialize index before starting server + asyncio.run(init_index()) + + uvicorn.run( + "app:app", # "module:variable" + host="0.0.0.0", + port=8000, + reload=True, # dev only + ) diff --git a/uv.lock b/uv.lock new file mode 100644 index 00000000..a231e92d --- /dev/null +++ b/uv.lock @@ -0,0 +1,1944 @@ +version = 1 +revision = 2 +requires-python = ">=3.13" +resolution-markers = [ + "sys_platform == 'darwin'", + "platform_machine == 'aarch64' and sys_platform == 'linux'", + "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')", +] + +[[package]] +name = "aiofiles" +version = "24.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0b/03/a88171e277e8caa88a4c77808c20ebb04ba74cc4681bf1e9416c862de237/aiofiles-24.1.0.tar.gz", hash = "sha256:22a075c9e5a3810f0c2e48f3008c94d68c65d763b9b03857924c99e57355166c", size = 30247, upload-time = "2024-06-24T11:02:03.584Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a5/45/30bb92d442636f570cb5651bc661f52b610e2eec3f891a5dc3a4c3667db0/aiofiles-24.1.0-py3-none-any.whl", hash = "sha256:b4ec55f4195e3eb5d7abd1bf7e061763e864dd4954231fb8539a0ef8bb8260e5", size = 15896, upload-time = "2024-06-24T11:02:01.529Z" }, +] + +[[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.12.14" +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/e6/0b/e39ad954107ebf213a2325038a3e7a506be3d98e1435e1f82086eec4cde2/aiohttp-3.12.14.tar.gz", hash = "sha256:6e06e120e34d93100de448fd941522e11dafa78ef1a893c179901b7d66aa29f2", size = 7822921, upload-time = "2025-07-10T13:05:33.968Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/06/48/e0d2fa8ac778008071e7b79b93ab31ef14ab88804d7ba71b5c964a7c844e/aiohttp-3.12.14-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:3143a7893d94dc82bc409f7308bc10d60285a3cd831a68faf1aa0836c5c3c767", size = 695471, upload-time = "2025-07-10T13:04:20.124Z" }, + { url = "https://files.pythonhosted.org/packages/8d/e7/f73206afa33100804f790b71092888f47df65fd9a4cd0e6800d7c6826441/aiohttp-3.12.14-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3d62ac3d506cef54b355bd34c2a7c230eb693880001dfcda0bf88b38f5d7af7e", size = 473128, upload-time = "2025-07-10T13:04:21.928Z" }, + { url = "https://files.pythonhosted.org/packages/df/e2/4dd00180be551a6e7ee979c20fc7c32727f4889ee3fd5b0586e0d47f30e1/aiohttp-3.12.14-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:48e43e075c6a438937c4de48ec30fa8ad8e6dfef122a038847456bfe7b947b63", size = 465426, upload-time = "2025-07-10T13:04:24.071Z" }, + { url = "https://files.pythonhosted.org/packages/de/dd/525ed198a0bb674a323e93e4d928443a680860802c44fa7922d39436b48b/aiohttp-3.12.14-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:077b4488411a9724cecc436cbc8c133e0d61e694995b8de51aaf351c7578949d", size = 1704252, upload-time = "2025-07-10T13:04:26.049Z" }, + { url = "https://files.pythonhosted.org/packages/d8/b1/01e542aed560a968f692ab4fc4323286e8bc4daae83348cd63588e4f33e3/aiohttp-3.12.14-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:d8c35632575653f297dcbc9546305b2c1133391089ab925a6a3706dfa775ccab", size = 1685514, upload-time = "2025-07-10T13:04:28.186Z" }, + { url = "https://files.pythonhosted.org/packages/b3/06/93669694dc5fdabdc01338791e70452d60ce21ea0946a878715688d5a191/aiohttp-3.12.14-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6b8ce87963f0035c6834b28f061df90cf525ff7c9b6283a8ac23acee6502afd4", size = 1737586, upload-time = "2025-07-10T13:04:30.195Z" }, + { url = "https://files.pythonhosted.org/packages/a5/3a/18991048ffc1407ca51efb49ba8bcc1645961f97f563a6c480cdf0286310/aiohttp-3.12.14-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f0a2cf66e32a2563bb0766eb24eae7e9a269ac0dc48db0aae90b575dc9583026", size = 1786958, upload-time = "2025-07-10T13:04:32.482Z" }, + { url = "https://files.pythonhosted.org/packages/30/a8/81e237f89a32029f9b4a805af6dffc378f8459c7b9942712c809ff9e76e5/aiohttp-3.12.14-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdea089caf6d5cde975084a884c72d901e36ef9c2fd972c9f51efbbc64e96fbd", size = 1709287, upload-time = "2025-07-10T13:04:34.493Z" }, + { url = "https://files.pythonhosted.org/packages/8c/e3/bd67a11b0fe7fc12c6030473afd9e44223d456f500f7cf526dbaa259ae46/aiohttp-3.12.14-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8a7865f27db67d49e81d463da64a59365ebd6b826e0e4847aa111056dcb9dc88", size = 1622990, upload-time = "2025-07-10T13:04:36.433Z" }, + { url = "https://files.pythonhosted.org/packages/83/ba/e0cc8e0f0d9ce0904e3cf2d6fa41904e379e718a013c721b781d53dcbcca/aiohttp-3.12.14-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0ab5b38a6a39781d77713ad930cb5e7feea6f253de656a5f9f281a8f5931b086", size = 1676015, upload-time = "2025-07-10T13:04:38.958Z" }, + { url = "https://files.pythonhosted.org/packages/d8/b3/1e6c960520bda094c48b56de29a3d978254637ace7168dd97ddc273d0d6c/aiohttp-3.12.14-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:9b3b15acee5c17e8848d90a4ebc27853f37077ba6aec4d8cb4dbbea56d156933", size = 1707678, upload-time = "2025-07-10T13:04:41.275Z" }, + { url = "https://files.pythonhosted.org/packages/0a/19/929a3eb8c35b7f9f076a462eaa9830b32c7f27d3395397665caa5e975614/aiohttp-3.12.14-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:e4c972b0bdaac167c1e53e16a16101b17c6d0ed7eac178e653a07b9f7fad7151", size = 1650274, upload-time = "2025-07-10T13:04:43.483Z" }, + { url = "https://files.pythonhosted.org/packages/22/e5/81682a6f20dd1b18ce3d747de8eba11cbef9b270f567426ff7880b096b48/aiohttp-3.12.14-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7442488b0039257a3bdbc55f7209587911f143fca11df9869578db6c26feeeb8", size = 1726408, upload-time = "2025-07-10T13:04:45.577Z" }, + { url = "https://files.pythonhosted.org/packages/8c/17/884938dffaa4048302985483f77dfce5ac18339aad9b04ad4aaa5e32b028/aiohttp-3.12.14-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:f68d3067eecb64c5e9bab4a26aa11bd676f4c70eea9ef6536b0a4e490639add3", size = 1759879, upload-time = "2025-07-10T13:04:47.663Z" }, + { url = "https://files.pythonhosted.org/packages/95/78/53b081980f50b5cf874359bde707a6eacd6c4be3f5f5c93937e48c9d0025/aiohttp-3.12.14-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:f88d3704c8b3d598a08ad17d06006cb1ca52a1182291f04979e305c8be6c9758", size = 1708770, upload-time = "2025-07-10T13:04:49.944Z" }, + { url = "https://files.pythonhosted.org/packages/ed/91/228eeddb008ecbe3ffa6c77b440597fdf640307162f0c6488e72c5a2d112/aiohttp-3.12.14-cp313-cp313-win32.whl", hash = "sha256:a3c99ab19c7bf375c4ae3debd91ca5d394b98b6089a03231d4c580ef3c2ae4c5", size = 421688, upload-time = "2025-07-10T13:04:51.993Z" }, + { url = "https://files.pythonhosted.org/packages/66/5f/8427618903343402fdafe2850738f735fd1d9409d2a8f9bcaae5e630d3ba/aiohttp-3.12.14-cp313-cp313-win_amd64.whl", hash = "sha256:3f8aad695e12edc9d571f878c62bedc91adf30c760c8632f09663e5f564f4baa", size = 448098, upload-time = "2025-07-10T13:04:53.999Z" }, +] + +[[package]] +name = "aiosignal" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "frozenlist" }, +] +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 = "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 = "anyio" +version = "4.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "sniffio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/95/7d/4c1bd541d4dffa1b52bd83fb8527089e097a106fc90b467a7313b105f840/anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028", size = 190949, upload-time = "2025-03-17T00:02:54.77Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a1/ee/48ca1a7c89ffec8b6a0c5d02b89c305671d5ffd8d3c94acf8b8c408575bb/anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c", size = 100916, upload-time = "2025-03-17T00:02:52.713Z" }, +] + +[[package]] +name = "attrs" +version = "25.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5a/b0/1367933a8532ee6ff8d63537de4f1177af4bff9f3e829baf7331f595bb24/attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b", size = 812032, upload-time = "2025-03-13T11:10:22.779Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/77/06/bb80f5f86020c4551da315d78b3ab75e8228f89f0162f2c3a819e407941a/attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3", size = 63815, upload-time = "2025-03-13T11:10:21.14Z" }, +] + +[[package]] +name = "beautifulsoup4" +version = "4.13.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "soupsieve" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d8/e4/0c4c39e18fd76d6a628d4dd8da40543d136ce2d1752bd6eeeab0791f4d6b/beautifulsoup4-4.13.4.tar.gz", hash = "sha256:dbb3c4e1ceae6aefebdaf2423247260cd062430a410e38c66f2baa50a8437195", size = 621067, upload-time = "2025-04-15T17:05:13.836Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/50/cd/30110dc0ffcf3b131156077b90e9f60ed75711223f306da4db08eff8403b/beautifulsoup4-4.13.4-py3-none-any.whl", hash = "sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b", size = 187285, upload-time = "2025-04-15T17:05:12.221Z" }, +] + +[[package]] +name = "certifi" +version = "2025.7.9" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/de/8a/c729b6b60c66a38f590c4e774decc4b2ec7b0576be8f1aa984a53ffa812a/certifi-2025.7.9.tar.gz", hash = "sha256:c1d2ec05395148ee10cf672ffc28cd37ea0ab0d99f9cc74c43e588cbd111b079", size = 160386, upload-time = "2025-07-09T02:13:58.874Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/66/f3/80a3f974c8b535d394ff960a11ac20368e06b736da395b551a49ce950cce/certifi-2025.7.9-py3-none-any.whl", hash = "sha256:d842783a14f8fdd646895ac26f719a061408834473cfc10203f6a575beb15d39", size = 159230, upload-time = "2025-07-09T02:13:57.007Z" }, +] + +[[package]] +name = "charset-normalizer" +version = "3.4.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e4/33/89c2ced2b67d1c2a61c19c6751aa8902d46ce3dacb23600a283619f5a12d/charset_normalizer-3.4.2.tar.gz", hash = "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63", size = 126367, upload-time = "2025-05-02T08:34:42.01Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ea/12/a93df3366ed32db1d907d7593a94f1fe6293903e3e92967bebd6950ed12c/charset_normalizer-3.4.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0", size = 199622, upload-time = "2025-05-02T08:32:56.363Z" }, + { url = "https://files.pythonhosted.org/packages/04/93/bf204e6f344c39d9937d3c13c8cd5bbfc266472e51fc8c07cb7f64fcd2de/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf", size = 143435, upload-time = "2025-05-02T08:32:58.551Z" }, + { url = "https://files.pythonhosted.org/packages/22/2a/ea8a2095b0bafa6c5b5a55ffdc2f924455233ee7b91c69b7edfcc9e02284/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e", size = 153653, upload-time = "2025-05-02T08:33:00.342Z" }, + { url = "https://files.pythonhosted.org/packages/b6/57/1b090ff183d13cef485dfbe272e2fe57622a76694061353c59da52c9a659/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1", size = 146231, upload-time = "2025-05-02T08:33:02.081Z" }, + { url = "https://files.pythonhosted.org/packages/e2/28/ffc026b26f441fc67bd21ab7f03b313ab3fe46714a14b516f931abe1a2d8/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c", size = 148243, upload-time = "2025-05-02T08:33:04.063Z" }, + { url = "https://files.pythonhosted.org/packages/c0/0f/9abe9bd191629c33e69e47c6ef45ef99773320e9ad8e9cb08b8ab4a8d4cb/charset_normalizer-3.4.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691", size = 150442, upload-time = "2025-05-02T08:33:06.418Z" }, + { url = "https://files.pythonhosted.org/packages/67/7c/a123bbcedca91d5916c056407f89a7f5e8fdfce12ba825d7d6b9954a1a3c/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0", size = 145147, upload-time = "2025-05-02T08:33:08.183Z" }, + { url = "https://files.pythonhosted.org/packages/ec/fe/1ac556fa4899d967b83e9893788e86b6af4d83e4726511eaaad035e36595/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b", size = 153057, upload-time = "2025-05-02T08:33:09.986Z" }, + { url = "https://files.pythonhosted.org/packages/2b/ff/acfc0b0a70b19e3e54febdd5301a98b72fa07635e56f24f60502e954c461/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff", size = 156454, upload-time = "2025-05-02T08:33:11.814Z" }, + { url = "https://files.pythonhosted.org/packages/92/08/95b458ce9c740d0645feb0e96cea1f5ec946ea9c580a94adfe0b617f3573/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b", size = 154174, upload-time = "2025-05-02T08:33:13.707Z" }, + { url = "https://files.pythonhosted.org/packages/78/be/8392efc43487ac051eee6c36d5fbd63032d78f7728cb37aebcc98191f1ff/charset_normalizer-3.4.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148", size = 149166, upload-time = "2025-05-02T08:33:15.458Z" }, + { url = "https://files.pythonhosted.org/packages/44/96/392abd49b094d30b91d9fbda6a69519e95802250b777841cf3bda8fe136c/charset_normalizer-3.4.2-cp313-cp313-win32.whl", hash = "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7", size = 98064, upload-time = "2025-05-02T08:33:17.06Z" }, + { url = "https://files.pythonhosted.org/packages/e9/b0/0200da600134e001d91851ddc797809e2fe0ea72de90e09bec5a2fbdaccb/charset_normalizer-3.4.2-cp313-cp313-win_amd64.whl", hash = "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980", size = 105641, upload-time = "2025-05-02T08:33:18.753Z" }, + { url = "https://files.pythonhosted.org/packages/20/94/c5790835a017658cbfabd07f3bfb549140c3ac458cfc196323996b10095a/charset_normalizer-3.4.2-py3-none-any.whl", hash = "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0", size = 52626, upload-time = "2025-05-02T08:34:40.053Z" }, +] + +[[package]] +name = "click" +version = "8.2.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/60/6c/8ca2efa64cf75a977a0d7fac081354553ebe483345c734fb6b6515d96bbc/click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202", size = 286342, upload-time = "2025-05-20T23:19:49.832Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b", size = 102215, upload-time = "2025-05-20T23:19:47.796Z" }, +] + +[[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 = "dill" +version = "0.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/12/80/630b4b88364e9a8c8c5797f4602d0f76ef820909ee32f0bacb9f90654042/dill-0.4.0.tar.gz", hash = "sha256:0633f1d2df477324f53a895b02c901fb961bdbf65a17122586ea7019292cbcf0", size = 186976, upload-time = "2025-04-16T00:41:48.867Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/50/3d/9373ad9c56321fdab5b41197068e1d8c25883b3fea29dd361f9b55116869/dill-0.4.0-py3-none-any.whl", hash = "sha256:44f54bf6412c2c8464c14e8243eb163690a9800dbe2c367330883b19c7561049", size = 119668, upload-time = "2025-04-16T00:41:47.671Z" }, +] + +[[package]] +name = "docling" +version = "2.41.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "certifi" }, + { name = "docling-core", extra = ["chunking"] }, + { name = "docling-ibm-models" }, + { name = "docling-parse" }, + { name = "easyocr" }, + { name = "filetype" }, + { name = "huggingface-hub" }, + { name = "lxml" }, + { name = "marko" }, + { name = "openpyxl" }, + { name = "pandas" }, + { name = "pillow" }, + { name = "pluggy" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pylatexenc" }, + { name = "pypdfium2" }, + { name = "python-docx" }, + { name = "python-pptx" }, + { name = "requests" }, + { name = "rtree" }, + { name = "scipy" }, + { name = "tqdm" }, + { name = "typer" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a2/73/69fb3749c419c846557ef397770e3309ad80898ee41ac957a14b0c8e3a2e/docling-2.41.0.tar.gz", hash = "sha256:94adf5cceb361b63e7e115b6b557f34ee28a5f52e0603f93fe36f98691e9c49e", size = 166338, upload-time = "2025-07-10T14:26:37.971Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/f3/1be481aac97e3f86dd18991407898c8f64e31dc365e6834ba7e92c4613fd/docling-2.41.0-py3-none-any.whl", hash = "sha256:d7869b1b461f13a386aa92c3d7fe8d596f773c41ddcfc1c8be667d131a0310e5", size = 187496, upload-time = "2025-07-10T14:26:36.345Z" }, +] + +[[package]] +name = "docling-core" +version = "2.42.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jsonref" }, + { name = "jsonschema" }, + { name = "latex2mathml" }, + { name = "pandas" }, + { name = "pillow" }, + { name = "pydantic" }, + { name = "pyyaml" }, + { name = "tabulate" }, + { name = "typer" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/60/c9/f5555f8efbbbecce858e78791fbe0b9465c3c91ea917a3a3acdb1c3c9887/docling_core-2.42.0.tar.gz", hash = "sha256:cf2bb9e889920bac1d94412bd89c10e647419b6d5f7fe5e6f71ed732eb8f24f6", size = 154657, upload-time = "2025-07-09T12:27:34.858Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0d/e4/685bb1b38ca120fdffc1c24f1ce54229ff996e5cad50a9c9dd39b671cb83/docling_core-2.42.0-py3-none-any.whl", hash = "sha256:0774391f335217a5aec8357977e66b63b6e8c9d821c56103de54c526eab92ed6", size = 158101, upload-time = "2025-07-09T12:27:33.147Z" }, +] + +[package.optional-dependencies] +chunking = [ + { name = "semchunk" }, + { name = "transformers" }, +] + +[[package]] +name = "docling-ibm-models" +version = "3.8.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "docling-core" }, + { name = "huggingface-hub" }, + { name = "jsonlines" }, + { name = "numpy" }, + { name = "opencv-python-headless" }, + { name = "pillow" }, + { name = "pydantic" }, + { name = "rtree" }, + { name = "safetensors", extra = ["torch"] }, + { name = "torch" }, + { name = "torchvision" }, + { name = "tqdm" }, + { name = "transformers" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/95/9b/67d04fa085f1a99a9ecee5a13d4bd472c82a14c260eedd169feb2c63649b/docling_ibm_models-3.8.1.tar.gz", hash = "sha256:721982f8b64b8bd9acdfb96cc9e0e9162b51a0f318b6c5a9e814f8d1b5b537aa", size = 86083, upload-time = "2025-07-10T12:45:29.233Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/98/3c/85f75b70b5ea277e2f07c4c50c8037c9be61dc272ea55c9576716a7358f7/docling_ibm_models-3.8.1-py3-none-any.whl", hash = "sha256:91ef82c63d497b6b91e8c85e0b7a84f75ec38e3495374bfe6112a71081bf8c2a", size = 86120, upload-time = "2025-07-10T12:45:27.592Z" }, +] + +[[package]] +name = "docling-parse" +version = "4.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "docling-core" }, + { name = "pillow" }, + { name = "pydantic" }, + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "tabulate" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c0/24/fff30a36af50a720813b1bdbeaee140136ff0fcdfad041ec8127c3115b4f/docling_parse-4.1.0.tar.gz", hash = "sha256:6c2f52c5438ff6158ad2e6d2064b35786f01ce7f1b235c7c882b71ab221549c6", size = 39407179, upload-time = "2025-06-24T11:21:49.233Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/23/3b/78fd2fe779dfb9588e4fa27ee6ba36e9e3d4195916536e300d6c38a9c08c/docling_parse-4.1.0-cp313-cp313-macosx_13_0_x86_64.whl", hash = "sha256:0046a2f2334338fbc3c679179a594999c8040e4a71f36c0e1a90c188eb697298", size = 14711292, upload-time = "2025-06-24T11:21:20.967Z" }, + { url = "https://files.pythonhosted.org/packages/ed/a3/06987ca409c9b64d8309f962e402649f02486d79ae10ebb9c940d5e0313c/docling_parse-4.1.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:058402d6915abf87a9f360a5117a87d864e2e0eaf3fe725c9295765c004460ab", size = 14588907, upload-time = "2025-06-24T11:21:23.326Z" }, + { url = "https://files.pythonhosted.org/packages/4f/f5/14d5a939b815011c4b2d58e9afa3c80faf58ee70cafc03e10ec4d7de3e5a/docling_parse-4.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:008d4ee03a076102be80292008e791b994905780a68ae41d805cf9ff2d610b80", size = 15026519, upload-time = "2025-06-24T11:21:25.383Z" }, + { url = "https://files.pythonhosted.org/packages/2c/ea/153dd31b4e46d818b5917f0daac883ae467e32ddab5ca97c67f8e2971b85/docling_parse-4.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:371067eb2d04c3793ab57f254c32db354edbbd85f14e54cd5c67fccd2705acff", size = 15106663, upload-time = "2025-06-24T11:21:27.885Z" }, + { url = "https://files.pythonhosted.org/packages/29/df/39a85b8342401b1ac066e97f3c698e62f34505d3c219a4ffebbbd7c82eca/docling_parse-4.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:adf42e7d1dbcfd67cf466f3e2b2569ddd79af3666c582ef6eac26263584471c5", size = 15895783, upload-time = "2025-06-24T11:21:29.923Z" }, +] + +[[package]] +name = "easyocr" +version = "1.7.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ninja" }, + { name = "numpy" }, + { name = "opencv-python-headless" }, + { name = "pillow" }, + { name = "pyclipper" }, + { name = "python-bidi" }, + { name = "pyyaml" }, + { name = "scikit-image" }, + { name = "scipy" }, + { name = "shapely" }, + { name = "torch" }, + { name = "torchvision" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/bb/84/4a2cab0e6adde6a85e7ba543862e5fc0250c51f3ac721a078a55cdcff250/easyocr-1.7.2-py3-none-any.whl", hash = "sha256:5be12f9b0e595d443c9c3d10b0542074b50f0ec2d98b141a109cd961fd1c177c", size = 2870178, upload-time = "2024-09-24T11:34:43.554Z" }, +] + +[[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 = "events" +version = "0.5" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/25/ed/e47dec0626edd468c84c04d97769e7ab4ea6457b7f54dcb3f72b17fcd876/Events-0.5-py3-none-any.whl", hash = "sha256:a7286af378ba3e46640ac9825156c93bdba7502174dd696090fdfcd4d80a1abd", size = 6758, upload-time = "2023-07-31T08:23:13.645Z" }, +] + +[[package]] +name = "filelock" +version = "3.18.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0a/10/c23352565a6544bdc5353e0b15fc1c563352101f30e24bf500207a54df9a/filelock-3.18.0.tar.gz", hash = "sha256:adbc88eabb99d2fec8c9c1b229b171f18afa655400173ddc653d5d01501fb9f2", size = 18075, upload-time = "2025-03-14T07:11:40.47Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4d/36/2a115987e2d8c300a974597416d9de88f2444426de9571f4b59b2cca3acc/filelock-3.18.0-py3-none-any.whl", hash = "sha256:c401f4f8377c4464e6db25fff06205fd89bdd83b65eb0488ed1b160f780e21de", size = 16215, upload-time = "2025-03-14T07:11:39.145Z" }, +] + +[[package]] +name = "filetype" +version = "1.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/bb/29/745f7d30d47fe0f251d3ad3dc2978a23141917661998763bebb6da007eb1/filetype-1.2.0.tar.gz", hash = "sha256:66b56cd6474bf41d8c54660347d37afcc3f7d1970648de365c102ef77548aadb", size = 998020, upload-time = "2022-11-02T17:34:04.141Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/79/1b8fa1bb3568781e84c9200f951c735f3f157429f44be0495da55894d620/filetype-1.2.0-py2.py3-none-any.whl", hash = "sha256:7ce71b6880181241cf7ac8697a2f1eb6a8bd9b429f7ad6d27b8db9ba5f1c2d25", size = 19970, upload-time = "2022-11-02T17:34:01.425Z" }, +] + +[[package]] +name = "frozenlist" +version = "1.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/79/b1/b64018016eeb087db503b038296fd782586432b9c077fc5c7839e9cb6ef6/frozenlist-1.7.0.tar.gz", hash = "sha256:2e310d81923c2437ea8670467121cc3e9b0f76d3043cc1d2331d56c7fb7a3a8f", size = 45078, upload-time = "2025-06-09T23:02:35.538Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/24/90/6b2cebdabdbd50367273c20ff6b57a3dfa89bd0762de02c3a1eb42cb6462/frozenlist-1.7.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee80eeda5e2a4e660651370ebffd1286542b67e268aa1ac8d6dbe973120ef7ee", size = 79791, upload-time = "2025-06-09T23:01:09.368Z" }, + { url = "https://files.pythonhosted.org/packages/83/2e/5b70b6a3325363293fe5fc3ae74cdcbc3e996c2a11dde2fd9f1fb0776d19/frozenlist-1.7.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d1a81c85417b914139e3a9b995d4a1c84559afc839a93cf2cb7f15e6e5f6ed2d", size = 47165, upload-time = "2025-06-09T23:01:10.653Z" }, + { url = "https://files.pythonhosted.org/packages/f4/25/a0895c99270ca6966110f4ad98e87e5662eab416a17e7fd53c364bf8b954/frozenlist-1.7.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cbb65198a9132ebc334f237d7b0df163e4de83fb4f2bdfe46c1e654bdb0c5d43", size = 45881, upload-time = "2025-06-09T23:01:12.296Z" }, + { url = "https://files.pythonhosted.org/packages/19/7c/71bb0bbe0832793c601fff68cd0cf6143753d0c667f9aec93d3c323f4b55/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dab46c723eeb2c255a64f9dc05b8dd601fde66d6b19cdb82b2e09cc6ff8d8b5d", size = 232409, upload-time = "2025-06-09T23:01:13.641Z" }, + { url = "https://files.pythonhosted.org/packages/c0/45/ed2798718910fe6eb3ba574082aaceff4528e6323f9a8570be0f7028d8e9/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6aeac207a759d0dedd2e40745575ae32ab30926ff4fa49b1635def65806fddee", size = 225132, upload-time = "2025-06-09T23:01:15.264Z" }, + { url = "https://files.pythonhosted.org/packages/ba/e2/8417ae0f8eacb1d071d4950f32f229aa6bf68ab69aab797b72a07ea68d4f/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bd8c4e58ad14b4fa7802b8be49d47993182fdd4023393899632c88fd8cd994eb", size = 237638, upload-time = "2025-06-09T23:01:16.752Z" }, + { url = "https://files.pythonhosted.org/packages/f8/b7/2ace5450ce85f2af05a871b8c8719b341294775a0a6c5585d5e6170f2ce7/frozenlist-1.7.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:04fb24d104f425da3540ed83cbfc31388a586a7696142004c577fa61c6298c3f", size = 233539, upload-time = "2025-06-09T23:01:18.202Z" }, + { url = "https://files.pythonhosted.org/packages/46/b9/6989292c5539553dba63f3c83dc4598186ab2888f67c0dc1d917e6887db6/frozenlist-1.7.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6a5c505156368e4ea6b53b5ac23c92d7edc864537ff911d2fb24c140bb175e60", size = 215646, upload-time = "2025-06-09T23:01:19.649Z" }, + { url = "https://files.pythonhosted.org/packages/72/31/bc8c5c99c7818293458fe745dab4fd5730ff49697ccc82b554eb69f16a24/frozenlist-1.7.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8bd7eb96a675f18aa5c553eb7ddc24a43c8c18f22e1f9925528128c052cdbe00", size = 232233, upload-time = "2025-06-09T23:01:21.175Z" }, + { url = "https://files.pythonhosted.org/packages/59/52/460db4d7ba0811b9ccb85af996019f5d70831f2f5f255f7cc61f86199795/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:05579bf020096fe05a764f1f84cd104a12f78eaab68842d036772dc6d4870b4b", size = 227996, upload-time = "2025-06-09T23:01:23.098Z" }, + { url = "https://files.pythonhosted.org/packages/ba/c9/f4b39e904c03927b7ecf891804fd3b4df3db29b9e487c6418e37988d6e9d/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:376b6222d114e97eeec13d46c486facd41d4f43bab626b7c3f6a8b4e81a5192c", size = 242280, upload-time = "2025-06-09T23:01:24.808Z" }, + { url = "https://files.pythonhosted.org/packages/b8/33/3f8d6ced42f162d743e3517781566b8481322be321b486d9d262adf70bfb/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:0aa7e176ebe115379b5b1c95b4096fb1c17cce0847402e227e712c27bdb5a949", size = 217717, upload-time = "2025-06-09T23:01:26.28Z" }, + { url = "https://files.pythonhosted.org/packages/3e/e8/ad683e75da6ccef50d0ab0c2b2324b32f84fc88ceee778ed79b8e2d2fe2e/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3fbba20e662b9c2130dc771e332a99eff5da078b2b2648153a40669a6d0e36ca", size = 236644, upload-time = "2025-06-09T23:01:27.887Z" }, + { url = "https://files.pythonhosted.org/packages/b2/14/8d19ccdd3799310722195a72ac94ddc677541fb4bef4091d8e7775752360/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:f3f4410a0a601d349dd406b5713fec59b4cee7e71678d5b17edda7f4655a940b", size = 238879, upload-time = "2025-06-09T23:01:29.524Z" }, + { url = "https://files.pythonhosted.org/packages/ce/13/c12bf657494c2fd1079a48b2db49fa4196325909249a52d8f09bc9123fd7/frozenlist-1.7.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e2cdfaaec6a2f9327bf43c933c0319a7c429058e8537c508964a133dffee412e", size = 232502, upload-time = "2025-06-09T23:01:31.287Z" }, + { url = "https://files.pythonhosted.org/packages/d7/8b/e7f9dfde869825489382bc0d512c15e96d3964180c9499efcec72e85db7e/frozenlist-1.7.0-cp313-cp313-win32.whl", hash = "sha256:5fc4df05a6591c7768459caba1b342d9ec23fa16195e744939ba5914596ae3e1", size = 39169, upload-time = "2025-06-09T23:01:35.503Z" }, + { url = "https://files.pythonhosted.org/packages/35/89/a487a98d94205d85745080a37860ff5744b9820a2c9acbcdd9440bfddf98/frozenlist-1.7.0-cp313-cp313-win_amd64.whl", hash = "sha256:52109052b9791a3e6b5d1b65f4b909703984b770694d3eb64fad124c835d7cba", size = 43219, upload-time = "2025-06-09T23:01:36.784Z" }, + { url = "https://files.pythonhosted.org/packages/56/d5/5c4cf2319a49eddd9dd7145e66c4866bdc6f3dbc67ca3d59685149c11e0d/frozenlist-1.7.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:a6f86e4193bb0e235ef6ce3dde5cbabed887e0b11f516ce8a0f4d3b33078ec2d", size = 84345, upload-time = "2025-06-09T23:01:38.295Z" }, + { url = "https://files.pythonhosted.org/packages/a4/7d/ec2c1e1dc16b85bc9d526009961953df9cec8481b6886debb36ec9107799/frozenlist-1.7.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:82d664628865abeb32d90ae497fb93df398a69bb3434463d172b80fc25b0dd7d", size = 48880, upload-time = "2025-06-09T23:01:39.887Z" }, + { url = "https://files.pythonhosted.org/packages/69/86/f9596807b03de126e11e7d42ac91e3d0b19a6599c714a1989a4e85eeefc4/frozenlist-1.7.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:912a7e8375a1c9a68325a902f3953191b7b292aa3c3fb0d71a216221deca460b", size = 48498, upload-time = "2025-06-09T23:01:41.318Z" }, + { url = "https://files.pythonhosted.org/packages/5e/cb/df6de220f5036001005f2d726b789b2c0b65f2363b104bbc16f5be8084f8/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9537c2777167488d539bc5de2ad262efc44388230e5118868e172dd4a552b146", size = 292296, upload-time = "2025-06-09T23:01:42.685Z" }, + { url = "https://files.pythonhosted.org/packages/83/1f/de84c642f17c8f851a2905cee2dae401e5e0daca9b5ef121e120e19aa825/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:f34560fb1b4c3e30ba35fa9a13894ba39e5acfc5f60f57d8accde65f46cc5e74", size = 273103, upload-time = "2025-06-09T23:01:44.166Z" }, + { url = "https://files.pythonhosted.org/packages/88/3c/c840bfa474ba3fa13c772b93070893c6e9d5c0350885760376cbe3b6c1b3/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:acd03d224b0175f5a850edc104ac19040d35419eddad04e7cf2d5986d98427f1", size = 292869, upload-time = "2025-06-09T23:01:45.681Z" }, + { url = "https://files.pythonhosted.org/packages/a6/1c/3efa6e7d5a39a1d5ef0abeb51c48fb657765794a46cf124e5aca2c7a592c/frozenlist-1.7.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f2038310bc582f3d6a09b3816ab01737d60bf7b1ec70f5356b09e84fb7408ab1", size = 291467, upload-time = "2025-06-09T23:01:47.234Z" }, + { url = "https://files.pythonhosted.org/packages/4f/00/d5c5e09d4922c395e2f2f6b79b9a20dab4b67daaf78ab92e7729341f61f6/frozenlist-1.7.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b8c05e4c8e5f36e5e088caa1bf78a687528f83c043706640a92cb76cd6999384", size = 266028, upload-time = "2025-06-09T23:01:48.819Z" }, + { url = "https://files.pythonhosted.org/packages/4e/27/72765be905619dfde25a7f33813ac0341eb6b076abede17a2e3fbfade0cb/frozenlist-1.7.0-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:765bb588c86e47d0b68f23c1bee323d4b703218037765dcf3f25c838c6fecceb", size = 284294, upload-time = "2025-06-09T23:01:50.394Z" }, + { url = "https://files.pythonhosted.org/packages/88/67/c94103a23001b17808eb7dd1200c156bb69fb68e63fcf0693dde4cd6228c/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:32dc2e08c67d86d0969714dd484fd60ff08ff81d1a1e40a77dd34a387e6ebc0c", size = 281898, upload-time = "2025-06-09T23:01:52.234Z" }, + { url = "https://files.pythonhosted.org/packages/42/34/a3e2c00c00f9e2a9db5653bca3fec306349e71aff14ae45ecc6d0951dd24/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:c0303e597eb5a5321b4de9c68e9845ac8f290d2ab3f3e2c864437d3c5a30cd65", size = 290465, upload-time = "2025-06-09T23:01:53.788Z" }, + { url = "https://files.pythonhosted.org/packages/bb/73/f89b7fbce8b0b0c095d82b008afd0590f71ccb3dee6eee41791cf8cd25fd/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:a47f2abb4e29b3a8d0b530f7c3598badc6b134562b1a5caee867f7c62fee51e3", size = 266385, upload-time = "2025-06-09T23:01:55.769Z" }, + { url = "https://files.pythonhosted.org/packages/cd/45/e365fdb554159462ca12df54bc59bfa7a9a273ecc21e99e72e597564d1ae/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:3d688126c242a6fabbd92e02633414d40f50bb6002fa4cf995a1d18051525657", size = 288771, upload-time = "2025-06-09T23:01:57.4Z" }, + { url = "https://files.pythonhosted.org/packages/00/11/47b6117002a0e904f004d70ec5194fe9144f117c33c851e3d51c765962d0/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:4e7e9652b3d367c7bd449a727dc79d5043f48b88d0cbfd4f9f1060cf2b414104", size = 288206, upload-time = "2025-06-09T23:01:58.936Z" }, + { url = "https://files.pythonhosted.org/packages/40/37/5f9f3c3fd7f7746082ec67bcdc204db72dad081f4f83a503d33220a92973/frozenlist-1.7.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:1a85e345b4c43db8b842cab1feb41be5cc0b10a1830e6295b69d7310f99becaf", size = 282620, upload-time = "2025-06-09T23:02:00.493Z" }, + { url = "https://files.pythonhosted.org/packages/0b/31/8fbc5af2d183bff20f21aa743b4088eac4445d2bb1cdece449ae80e4e2d1/frozenlist-1.7.0-cp313-cp313t-win32.whl", hash = "sha256:3a14027124ddb70dfcee5148979998066897e79f89f64b13328595c4bdf77c81", size = 43059, upload-time = "2025-06-09T23:02:02.072Z" }, + { url = "https://files.pythonhosted.org/packages/bb/ed/41956f52105b8dbc26e457c5705340c67c8cc2b79f394b79bffc09d0e938/frozenlist-1.7.0-cp313-cp313t-win_amd64.whl", hash = "sha256:3bf8010d71d4507775f658e9823210b7427be36625b387221642725b515dcf3e", size = 47516, upload-time = "2025-06-09T23:02:03.779Z" }, + { url = "https://files.pythonhosted.org/packages/ee/45/b82e3c16be2182bff01179db177fe144d58b5dc787a7d4492c6ed8b9317f/frozenlist-1.7.0-py3-none-any.whl", hash = "sha256:9a5af342e34f7e97caf8c995864c7a396418ae2859cc6fdf1b1073020d516a7e", size = 13106, upload-time = "2025-06-09T23:02:34.204Z" }, +] + +[[package]] +name = "fsspec" +version = "2025.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/00/f7/27f15d41f0ed38e8fcc488584b57e902b331da7f7c6dcda53721b15838fc/fsspec-2025.5.1.tar.gz", hash = "sha256:2e55e47a540b91843b755e83ded97c6e897fa0942b11490113f09e9c443c2475", size = 303033, upload-time = "2025-05-24T12:03:23.792Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl", hash = "sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462", size = 199052, upload-time = "2025-05-24T12:03:21.66Z" }, +] + +[[package]] +name = "gendb" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "aiofiles" }, + { name = "docling" }, + { name = "opensearch-py", extra = ["async"] }, + { name = "python-multipart" }, + { name = "starlette" }, + { name = "torch" }, + { name = "uvicorn" }, +] + +[package.metadata] +requires-dist = [ + { name = "aiofiles", specifier = ">=24.1.0" }, + { name = "docling", specifier = ">=2.41.0" }, + { name = "opensearch-py", extras = ["async"], specifier = ">=3.0.0" }, + { name = "python-multipart", specifier = ">=0.0.20" }, + { name = "starlette", specifier = ">=0.47.1" }, + { name = "torch", specifier = ">=2.7.1", index = "https://download.pytorch.org/whl/cu128" }, + { name = "uvicorn", specifier = ">=0.35.0" }, +] + +[[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.1.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ed/d4/7685999e85945ed0d7f0762b686ae7015035390de1161dcea9d5276c134c/hf_xet-1.1.5.tar.gz", hash = "sha256:69ebbcfd9ec44fdc2af73441619eeb06b94ee34511bbcf57cd423820090f5694", size = 495969, upload-time = "2025-06-20T21:48:38.007Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/00/89/a1119eebe2836cb25758e7661d6410d3eae982e2b5e974bcc4d250be9012/hf_xet-1.1.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:f52c2fa3635b8c37c7764d8796dfa72706cc4eded19d638331161e82b0792e23", size = 2687929, upload-time = "2025-06-20T21:48:32.284Z" }, + { url = "https://files.pythonhosted.org/packages/de/5f/2c78e28f309396e71ec8e4e9304a6483dcbc36172b5cea8f291994163425/hf_xet-1.1.5-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:9fa6e3ee5d61912c4a113e0708eaaef987047616465ac7aa30f7121a48fc1af8", size = 2556338, upload-time = "2025-06-20T21:48:30.079Z" }, + { url = "https://files.pythonhosted.org/packages/6d/2f/6cad7b5fe86b7652579346cb7f85156c11761df26435651cbba89376cd2c/hf_xet-1.1.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc874b5c843e642f45fd85cda1ce599e123308ad2901ead23d3510a47ff506d1", size = 3102894, upload-time = "2025-06-20T21:48:28.114Z" }, + { url = "https://files.pythonhosted.org/packages/d0/54/0fcf2b619720a26fbb6cc941e89f2472a522cd963a776c089b189559447f/hf_xet-1.1.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:dbba1660e5d810bd0ea77c511a99e9242d920790d0e63c0e4673ed36c4022d18", size = 3002134, upload-time = "2025-06-20T21:48:25.906Z" }, + { url = "https://files.pythonhosted.org/packages/f3/92/1d351ac6cef7c4ba8c85744d37ffbfac2d53d0a6c04d2cabeba614640a78/hf_xet-1.1.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:ab34c4c3104133c495785d5d8bba3b1efc99de52c02e759cf711a91fd39d3a14", size = 3171009, upload-time = "2025-06-20T21:48:33.987Z" }, + { url = "https://files.pythonhosted.org/packages/c9/65/4b2ddb0e3e983f2508528eb4501288ae2f84963586fbdfae596836d5e57a/hf_xet-1.1.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:83088ecea236d5113de478acb2339f92c95b4fb0462acaa30621fac02f5a534a", size = 3279245, upload-time = "2025-06-20T21:48:36.051Z" }, + { url = "https://files.pythonhosted.org/packages/f0/55/ef77a85ee443ae05a9e9cba1c9f0dd9241eb42da2aeba1dc50f51154c81a/hf_xet-1.1.5-cp37-abi3-win_amd64.whl", hash = "sha256:73e167d9807d166596b4b2f0b585c6d5bd84a26dea32843665a8b58f6edba245", size = 2738931, upload-time = "2025-06-20T21:48:39.482Z" }, +] + +[[package]] +name = "huggingface-hub" +version = "0.33.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "fsspec" }, + { name = "hf-xet", marker = "platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "requests" }, + { name = "tqdm" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fa/42/8a95c5632080ae312c0498744b2b852195e10b05a20b1be11c5141092f4c/huggingface_hub-0.33.2.tar.gz", hash = "sha256:84221defaec8fa09c090390cd68c78b88e3c4c2b7befba68d3dc5aacbc3c2c5f", size = 426637, upload-time = "2025-07-02T06:26:05.156Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/44/f4/5f3f22e762ad1965f01122b42dae5bf0e009286e2dba601ce1d0dba72424/huggingface_hub-0.33.2-py3-none-any.whl", hash = "sha256:3749498bfa91e8cde2ddc2c1db92c79981f40e66434c20133b39e5928ac9bcc5", size = 515373, upload-time = "2025-07-02T06:26:03.072Z" }, +] + +[[package]] +name = "idna" +version = "3.10" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f1/70/7703c29685631f5a7590aa73f1f1d3fa9a380e654b86af429e0934a32f7d/idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9", size = 190490, upload-time = "2024-09-15T18:07:39.745Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/76/c6/c88e154df9c4e1a2a66ccf0005a88dfb2650c1dffb6f5ce603dfbd452ce3/idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3", size = 70442, upload-time = "2024-09-15T18:07:37.964Z" }, +] + +[[package]] +name = "imageio" +version = "2.37.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "pillow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0c/47/57e897fb7094afb2d26e8b2e4af9a45c7cf1a405acdeeca001fdf2c98501/imageio-2.37.0.tar.gz", hash = "sha256:71b57b3669666272c818497aebba2b4c5f20d5b37c81720e5e1a56d59c492996", size = 389963, upload-time = "2025-01-20T02:42:37.089Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/bd/b394387b598ed84d8d0fa90611a90bee0adc2021820ad5729f7ced74a8e2/imageio-2.37.0-py3-none-any.whl", hash = "sha256:11efa15b87bc7871b61590326b2d635439acc321cf7f8ce996f812543ce10eed", size = 315796, upload-time = "2025-01-20T02:42:34.931Z" }, +] + +[[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 = "jsonlines" +version = "3.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2a/c8/efdb87403dae07cf20faf75449eae41898b71d6a8d4ebaf9c80d5be215f5/jsonlines-3.1.0.tar.gz", hash = "sha256:2579cb488d96f815b0eb81629e3e6b0332da0962a18fa3532958f7ba14a5c37f", size = 8510, upload-time = "2022-07-01T16:38:05.48Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/68/32/290ca20eb3a2b97ffa6ba1791fcafacb3cd2f41f539c96eb54cfc3cfcf47/jsonlines-3.1.0-py3-none-any.whl", hash = "sha256:632f5e38f93dfcb1ac8c4e09780b92af3a55f38f26e7c47ae85109d420b6ad39", size = 8592, upload-time = "2022-07-01T16:38:02.082Z" }, +] + +[[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.24.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/bf/d3/1cf5326b923a53515d8f3a2cd442e6d7e94fcc444716e879ea70a0ce3177/jsonschema-4.24.0.tar.gz", hash = "sha256:0b4e8069eb12aedfa881333004bccaec24ecef5a8a6a4b6df142b2cc9599d196", size = 353480, upload-time = "2025-05-26T18:48:10.459Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/3d/023389198f69c722d039351050738d6755376c8fd343e91dc493ea485905/jsonschema-4.24.0-py3-none-any.whl", hash = "sha256:a462455f19f5faf404a7902952b6f0e3ce868f3ee09a359b05eca6673bd8412d", size = 88709, upload-time = "2025-05-26T18:48:08.417Z" }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2025.4.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bf/ce/46fbd9c8119cfc3581ee5643ea49464d168028cfb5caff5fc0596d0cf914/jsonschema_specifications-2025.4.1.tar.gz", hash = "sha256:630159c9f4dbea161a6a2205c3011cc4f18ff381b189fff48bb39b9bf26ae608", size = 15513, upload-time = "2025-04-23T12:34:07.418Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/01/0e/b27cdbaccf30b890c40ed1da9fd4a3593a5cf94dae54fb34f8a4b74fcd3f/jsonschema_specifications-2025.4.1-py3-none-any.whl", hash = "sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af", size = 18437, upload-time = "2025-04-23T12:34:05.422Z" }, +] + +[[package]] +name = "latex2mathml" +version = "3.78.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/69/33/ad2c3929494ad160f5130ea132ca298627a6c81c70be6bedd1bc806b5b01/latex2mathml-3.78.0.tar.gz", hash = "sha256:712193aa4c6ade1a8e0145dac7bc1f9aafbd54f93046a2356a7e1c05fa0f8b31", size = 73737, upload-time = "2025-05-03T16:51:53.563Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/fd/aba08bb9e527168efad57985d7db9a853eb2384b1efa5ca5f3a3794c9cef/latex2mathml-3.78.0-py3-none-any.whl", hash = "sha256:1aeca3dc027b3006ad7b301b7f4a15ffbb4c1451e3dc8c3389e97b37b497e1d6", size = 73673, upload-time = "2025-05-03T16:51:51.991Z" }, +] + +[[package]] +name = "lazy-loader" +version = "0.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "packaging" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6f/6b/c875b30a1ba490860c93da4cabf479e03f584eba06fe5963f6f6644653d8/lazy_loader-0.4.tar.gz", hash = "sha256:47c75182589b91a4e1a85a136c074285a5ad4d9f39c63e0d7fb76391c4574cd1", size = 15431, upload-time = "2024-04-05T13:03:12.261Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/60/d497a310bde3f01cb805196ac61b7ad6dc5dcf8dce66634dc34364b20b4f/lazy_loader-0.4-py3-none-any.whl", hash = "sha256:342aa8e14d543a154047afb4ba8ef17f5563baad3fc610d7b15b213b0f119efc", size = 12097, upload-time = "2024-04-05T13:03:10.514Z" }, +] + +[[package]] +name = "lxml" +version = "5.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/76/3d/14e82fc7c8fb1b7761f7e748fd47e2ec8276d137b6acfe5a4bb73853e08f/lxml-5.4.0.tar.gz", hash = "sha256:d12832e1dbea4be280b22fd0ea7c9b87f0d8fc51ba06e92dc62d52f804f78ebd", size = 3679479, upload-time = "2025-04-23T01:50:29.322Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/cb/2ba1e9dd953415f58548506fa5549a7f373ae55e80c61c9041b7fd09a38a/lxml-5.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:773e27b62920199c6197130632c18fb7ead3257fce1ffb7d286912e56ddb79e0", size = 8110086, upload-time = "2025-04-23T01:46:52.218Z" }, + { url = "https://files.pythonhosted.org/packages/b5/3e/6602a4dca3ae344e8609914d6ab22e52ce42e3e1638c10967568c5c1450d/lxml-5.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ce9c671845de9699904b1e9df95acfe8dfc183f2310f163cdaa91a3535af95de", size = 4404613, upload-time = "2025-04-23T01:46:55.281Z" }, + { url = "https://files.pythonhosted.org/packages/4c/72/bf00988477d3bb452bef9436e45aeea82bb40cdfb4684b83c967c53909c7/lxml-5.4.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9454b8d8200ec99a224df8854786262b1bd6461f4280064c807303c642c05e76", size = 5012008, upload-time = "2025-04-23T01:46:57.817Z" }, + { url = "https://files.pythonhosted.org/packages/92/1f/93e42d93e9e7a44b2d3354c462cd784dbaaf350f7976b5d7c3f85d68d1b1/lxml-5.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cccd007d5c95279e529c146d095f1d39ac05139de26c098166c4beb9374b0f4d", size = 4760915, upload-time = "2025-04-23T01:47:00.745Z" }, + { url = "https://files.pythonhosted.org/packages/45/0b/363009390d0b461cf9976a499e83b68f792e4c32ecef092f3f9ef9c4ba54/lxml-5.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0fce1294a0497edb034cb416ad3e77ecc89b313cff7adbee5334e4dc0d11f422", size = 5283890, upload-time = "2025-04-23T01:47:04.702Z" }, + { url = "https://files.pythonhosted.org/packages/19/dc/6056c332f9378ab476c88e301e6549a0454dbee8f0ae16847414f0eccb74/lxml-5.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:24974f774f3a78ac12b95e3a20ef0931795ff04dbb16db81a90c37f589819551", size = 4812644, upload-time = "2025-04-23T01:47:07.833Z" }, + { url = "https://files.pythonhosted.org/packages/ee/8a/f8c66bbb23ecb9048a46a5ef9b495fd23f7543df642dabeebcb2eeb66592/lxml-5.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:497cab4d8254c2a90bf988f162ace2ddbfdd806fce3bda3f581b9d24c852e03c", size = 4921817, upload-time = "2025-04-23T01:47:10.317Z" }, + { url = "https://files.pythonhosted.org/packages/04/57/2e537083c3f381f83d05d9b176f0d838a9e8961f7ed8ddce3f0217179ce3/lxml-5.4.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:e794f698ae4c5084414efea0f5cc9f4ac562ec02d66e1484ff822ef97c2cadff", size = 4753916, upload-time = "2025-04-23T01:47:12.823Z" }, + { url = "https://files.pythonhosted.org/packages/d8/80/ea8c4072109a350848f1157ce83ccd9439601274035cd045ac31f47f3417/lxml-5.4.0-cp313-cp313-manylinux_2_28_ppc64le.whl", hash = "sha256:2c62891b1ea3094bb12097822b3d44b93fc6c325f2043c4d2736a8ff09e65f60", size = 5289274, upload-time = "2025-04-23T01:47:15.916Z" }, + { url = "https://files.pythonhosted.org/packages/b3/47/c4be287c48cdc304483457878a3f22999098b9a95f455e3c4bda7ec7fc72/lxml-5.4.0-cp313-cp313-manylinux_2_28_s390x.whl", hash = "sha256:142accb3e4d1edae4b392bd165a9abdee8a3c432a2cca193df995bc3886249c8", size = 4874757, upload-time = "2025-04-23T01:47:19.793Z" }, + { url = "https://files.pythonhosted.org/packages/2f/04/6ef935dc74e729932e39478e44d8cfe6a83550552eaa072b7c05f6f22488/lxml-5.4.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:1a42b3a19346e5601d1b8296ff6ef3d76038058f311902edd574461e9c036982", size = 4947028, upload-time = "2025-04-23T01:47:22.401Z" }, + { url = "https://files.pythonhosted.org/packages/cb/f9/c33fc8daa373ef8a7daddb53175289024512b6619bc9de36d77dca3df44b/lxml-5.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4291d3c409a17febf817259cb37bc62cb7eb398bcc95c1356947e2871911ae61", size = 4834487, upload-time = "2025-04-23T01:47:25.513Z" }, + { url = "https://files.pythonhosted.org/packages/8d/30/fc92bb595bcb878311e01b418b57d13900f84c2b94f6eca9e5073ea756e6/lxml-5.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4f5322cf38fe0e21c2d73901abf68e6329dc02a4994e483adbcf92b568a09a54", size = 5381688, upload-time = "2025-04-23T01:47:28.454Z" }, + { url = "https://files.pythonhosted.org/packages/43/d1/3ba7bd978ce28bba8e3da2c2e9d5ae3f8f521ad3f0ca6ea4788d086ba00d/lxml-5.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0be91891bdb06ebe65122aa6bf3fc94489960cf7e03033c6f83a90863b23c58b", size = 5242043, upload-time = "2025-04-23T01:47:31.208Z" }, + { url = "https://files.pythonhosted.org/packages/ee/cd/95fa2201041a610c4d08ddaf31d43b98ecc4b1d74b1e7245b1abdab443cb/lxml-5.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:15a665ad90054a3d4f397bc40f73948d48e36e4c09f9bcffc7d90c87410e478a", size = 5021569, upload-time = "2025-04-23T01:47:33.805Z" }, + { url = "https://files.pythonhosted.org/packages/2d/a6/31da006fead660b9512d08d23d31e93ad3477dd47cc42e3285f143443176/lxml-5.4.0-cp313-cp313-win32.whl", hash = "sha256:d5663bc1b471c79f5c833cffbc9b87d7bf13f87e055a5c86c363ccd2348d7e82", size = 3485270, upload-time = "2025-04-23T01:47:36.133Z" }, + { url = "https://files.pythonhosted.org/packages/fc/14/c115516c62a7d2499781d2d3d7215218c0731b2c940753bf9f9b7b73924d/lxml-5.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:bcb7a1096b4b6b24ce1ac24d4942ad98f983cd3810f9711bcd0293f43a9d8b9f", size = 3814606, upload-time = "2025-04-23T01:47:39.028Z" }, +] + +[[package]] +name = "markdown-it-py" +version = "3.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mdurl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/38/71/3b932df36c1a044d397a1f92d1cf91ee0a503d91e470cbd670aa66b07ed0/markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb", size = 74596, upload-time = "2023-06-03T06:41:14.443Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1", size = 87528, upload-time = "2023-06-03T06:41:11.019Z" }, +] + +[[package]] +name = "marko" +version = "2.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/dc/c8cadbd83de1b38d95a48568b445a5553005ebdd32e00a333ca940113db4/marko-2.1.4.tar.gz", hash = "sha256:dd7d66f3706732bf8f994790e674649a4fd0a6c67f16b80246f30de8e16a1eac", size = 142795, upload-time = "2025-06-13T03:25:50.857Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c3/66/49e3691d14898fb6e34ccb337c7677dfb7e18269ed170f12e4b85315eae6/marko-2.1.4-py3-none-any.whl", hash = "sha256:81c2b9f570ca485bc356678d9ba1a1b3eb78b4a315d01f3ded25442fdc796990", size = 42186, upload-time = "2025-06-13T03:25:49.858Z" }, +] + +[[package]] +name = "markupsafe" +version = "3.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b2/97/5d42485e71dfc078108a86d6de8fa46db44a1a9295e89c5d6d4a06e23a62/markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", size = 20537, upload-time = "2024-10-18T15:21:54.129Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/0e/67eb10a7ecc77a0c2bbe2b0235765b98d164d81600746914bebada795e97/MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", size = 14274, upload-time = "2024-10-18T15:21:24.577Z" }, + { url = "https://files.pythonhosted.org/packages/2b/6d/9409f3684d3335375d04e5f05744dfe7e9f120062c9857df4ab490a1031a/MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", size = 12352, upload-time = "2024-10-18T15:21:25.382Z" }, + { url = "https://files.pythonhosted.org/packages/d2/f5/6eadfcd3885ea85fe2a7c128315cc1bb7241e1987443d78c8fe712d03091/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", size = 24122, upload-time = "2024-10-18T15:21:26.199Z" }, + { url = "https://files.pythonhosted.org/packages/0c/91/96cf928db8236f1bfab6ce15ad070dfdd02ed88261c2afafd4b43575e9e9/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", size = 23085, upload-time = "2024-10-18T15:21:27.029Z" }, + { url = "https://files.pythonhosted.org/packages/c2/cf/c9d56af24d56ea04daae7ac0940232d31d5a8354f2b457c6d856b2057d69/MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", size = 22978, upload-time = "2024-10-18T15:21:27.846Z" }, + { url = "https://files.pythonhosted.org/packages/2a/9f/8619835cd6a711d6272d62abb78c033bda638fdc54c4e7f4272cf1c0962b/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", size = 24208, upload-time = "2024-10-18T15:21:28.744Z" }, + { url = "https://files.pythonhosted.org/packages/f9/bf/176950a1792b2cd2102b8ffeb5133e1ed984547b75db47c25a67d3359f77/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", size = 23357, upload-time = "2024-10-18T15:21:29.545Z" }, + { url = "https://files.pythonhosted.org/packages/ce/4f/9a02c1d335caabe5c4efb90e1b6e8ee944aa245c1aaaab8e8a618987d816/MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", size = 23344, upload-time = "2024-10-18T15:21:30.366Z" }, + { url = "https://files.pythonhosted.org/packages/ee/55/c271b57db36f748f0e04a759ace9f8f759ccf22b4960c270c78a394f58be/MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", size = 15101, upload-time = "2024-10-18T15:21:31.207Z" }, + { url = "https://files.pythonhosted.org/packages/29/88/07df22d2dd4df40aba9f3e402e6dc1b8ee86297dddbad4872bd5e7b0094f/MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", size = 15603, upload-time = "2024-10-18T15:21:32.032Z" }, + { url = "https://files.pythonhosted.org/packages/62/6a/8b89d24db2d32d433dffcd6a8779159da109842434f1dd2f6e71f32f738c/MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", size = 14510, upload-time = "2024-10-18T15:21:33.625Z" }, + { url = "https://files.pythonhosted.org/packages/7a/06/a10f955f70a2e5a9bf78d11a161029d278eeacbd35ef806c3fd17b13060d/MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", size = 12486, upload-time = "2024-10-18T15:21:34.611Z" }, + { url = "https://files.pythonhosted.org/packages/34/cf/65d4a571869a1a9078198ca28f39fba5fbb910f952f9dbc5220afff9f5e6/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", size = 25480, upload-time = "2024-10-18T15:21:35.398Z" }, + { url = "https://files.pythonhosted.org/packages/0c/e3/90e9651924c430b885468b56b3d597cabf6d72be4b24a0acd1fa0e12af67/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", size = 23914, upload-time = "2024-10-18T15:21:36.231Z" }, + { url = "https://files.pythonhosted.org/packages/66/8c/6c7cf61f95d63bb866db39085150df1f2a5bd3335298f14a66b48e92659c/MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", size = 23796, upload-time = "2024-10-18T15:21:37.073Z" }, + { url = "https://files.pythonhosted.org/packages/bb/35/cbe9238ec3f47ac9a7c8b3df7a808e7cb50fe149dc7039f5f454b3fba218/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", size = 25473, upload-time = "2024-10-18T15:21:37.932Z" }, + { url = "https://files.pythonhosted.org/packages/e6/32/7621a4382488aa283cc05e8984a9c219abad3bca087be9ec77e89939ded9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", size = 24114, upload-time = "2024-10-18T15:21:39.799Z" }, + { url = "https://files.pythonhosted.org/packages/0d/80/0985960e4b89922cb5a0bac0ed39c5b96cbc1a536a99f30e8c220a996ed9/MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", size = 24098, upload-time = "2024-10-18T15:21:40.813Z" }, + { url = "https://files.pythonhosted.org/packages/82/78/fedb03c7d5380df2427038ec8d973587e90561b2d90cd472ce9254cf348b/MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", size = 15208, upload-time = "2024-10-18T15:21:41.814Z" }, + { url = "https://files.pythonhosted.org/packages/4f/65/6079a46068dfceaeabb5dcad6d674f5f5c61a6fa5673746f42a9f4c233b3/MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", size = 15739, upload-time = "2024-10-18T15:21:42.784Z" }, +] + +[[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 = "mpire" +version = "2.10.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pygments" }, + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3a/93/80ac75c20ce54c785648b4ed363c88f148bf22637e10c9863db4fbe73e74/mpire-2.10.2.tar.gz", hash = "sha256:f66a321e93fadff34585a4bfa05e95bd946cf714b442f51c529038eb45773d97", size = 271270, upload-time = "2024-05-07T14:00:31.815Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/20/14/1db1729ad6db4999c3a16c47937d601fcb909aaa4224f5eca5a2f145a605/mpire-2.10.2-py3-none-any.whl", hash = "sha256:d627707f7a8d02aa4c7f7d59de399dec5290945ddf7fbd36cbb1d6ebb37a51fb", size = 272756, upload-time = "2024-05-07T14:00:29.633Z" }, +] + +[package.optional-dependencies] +dill = [ + { name = "multiprocess" }, +] + +[[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.6.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3d/2c/5dad12e82fbdf7470f29bff2171484bf07cb3b16ada60a6589af8f376440/multidict-6.6.3.tar.gz", hash = "sha256:798a9eb12dab0a6c2e29c1de6f3468af5cb2da6053a20dfa3344907eed0937cc", size = 101006, upload-time = "2025-06-30T15:53:46.929Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/52/1d/0bebcbbb4f000751fbd09957257903d6e002943fc668d841a4cf2fb7f872/multidict-6.6.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:540d3c06d48507357a7d57721e5094b4f7093399a0106c211f33540fdc374d55", size = 75843, upload-time = "2025-06-30T15:52:16.155Z" }, + { url = "https://files.pythonhosted.org/packages/07/8f/cbe241b0434cfe257f65c2b1bcf9e8d5fb52bc708c5061fb29b0fed22bdf/multidict-6.6.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9c19cea2a690f04247d43f366d03e4eb110a0dc4cd1bbeee4d445435428ed35b", size = 45053, upload-time = "2025-06-30T15:52:17.429Z" }, + { url = "https://files.pythonhosted.org/packages/32/d2/0b3b23f9dbad5b270b22a3ac3ea73ed0a50ef2d9a390447061178ed6bdb8/multidict-6.6.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7af039820cfd00effec86bda5d8debef711a3e86a1d3772e85bea0f243a4bd65", size = 43273, upload-time = "2025-06-30T15:52:19.346Z" }, + { url = "https://files.pythonhosted.org/packages/fd/fe/6eb68927e823999e3683bc49678eb20374ba9615097d085298fd5b386564/multidict-6.6.3-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:500b84f51654fdc3944e936f2922114349bf8fdcac77c3092b03449f0e5bc2b3", size = 237124, upload-time = "2025-06-30T15:52:20.773Z" }, + { url = "https://files.pythonhosted.org/packages/e7/ab/320d8507e7726c460cb77117848b3834ea0d59e769f36fdae495f7669929/multidict-6.6.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f3fc723ab8a5c5ed6c50418e9bfcd8e6dceba6c271cee6728a10a4ed8561520c", size = 256892, upload-time = "2025-06-30T15:52:22.242Z" }, + { url = "https://files.pythonhosted.org/packages/76/60/38ee422db515ac69834e60142a1a69111ac96026e76e8e9aa347fd2e4591/multidict-6.6.3-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:94c47ea3ade005b5976789baaed66d4de4480d0a0bf31cef6edaa41c1e7b56a6", size = 240547, upload-time = "2025-06-30T15:52:23.736Z" }, + { url = "https://files.pythonhosted.org/packages/27/fb/905224fde2dff042b030c27ad95a7ae744325cf54b890b443d30a789b80e/multidict-6.6.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:dbc7cf464cc6d67e83e136c9f55726da3a30176f020a36ead246eceed87f1cd8", size = 266223, upload-time = "2025-06-30T15:52:25.185Z" }, + { url = "https://files.pythonhosted.org/packages/76/35/dc38ab361051beae08d1a53965e3e1a418752fc5be4d3fb983c5582d8784/multidict-6.6.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:900eb9f9da25ada070f8ee4a23f884e0ee66fe4e1a38c3af644256a508ad81ca", size = 267262, upload-time = "2025-06-30T15:52:26.969Z" }, + { url = "https://files.pythonhosted.org/packages/1f/a3/0a485b7f36e422421b17e2bbb5a81c1af10eac1d4476f2ff92927c730479/multidict-6.6.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7c6df517cf177da5d47ab15407143a89cd1a23f8b335f3a28d57e8b0a3dbb884", size = 254345, upload-time = "2025-06-30T15:52:28.467Z" }, + { url = "https://files.pythonhosted.org/packages/b4/59/bcdd52c1dab7c0e0d75ff19cac751fbd5f850d1fc39172ce809a74aa9ea4/multidict-6.6.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4ef421045f13879e21c994b36e728d8e7d126c91a64b9185810ab51d474f27e7", size = 252248, upload-time = "2025-06-30T15:52:29.938Z" }, + { url = "https://files.pythonhosted.org/packages/bb/a4/2d96aaa6eae8067ce108d4acee6f45ced5728beda55c0f02ae1072c730d1/multidict-6.6.3-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:6c1e61bb4f80895c081790b6b09fa49e13566df8fbff817da3f85b3a8192e36b", size = 250115, upload-time = "2025-06-30T15:52:31.416Z" }, + { url = "https://files.pythonhosted.org/packages/25/d2/ed9f847fa5c7d0677d4f02ea2c163d5e48573de3f57bacf5670e43a5ffaa/multidict-6.6.3-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:e5e8523bb12d7623cd8300dbd91b9e439a46a028cd078ca695eb66ba31adee3c", size = 249649, upload-time = "2025-06-30T15:52:32.996Z" }, + { url = "https://files.pythonhosted.org/packages/1f/af/9155850372563fc550803d3f25373308aa70f59b52cff25854086ecb4a79/multidict-6.6.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:ef58340cc896219e4e653dade08fea5c55c6df41bcc68122e3be3e9d873d9a7b", size = 261203, upload-time = "2025-06-30T15:52:34.521Z" }, + { url = "https://files.pythonhosted.org/packages/36/2f/c6a728f699896252cf309769089568a33c6439626648843f78743660709d/multidict-6.6.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:fc9dc435ec8699e7b602b94fe0cd4703e69273a01cbc34409af29e7820f777f1", size = 258051, upload-time = "2025-06-30T15:52:35.999Z" }, + { url = "https://files.pythonhosted.org/packages/d0/60/689880776d6b18fa2b70f6cc74ff87dd6c6b9b47bd9cf74c16fecfaa6ad9/multidict-6.6.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9e864486ef4ab07db5e9cb997bad2b681514158d6954dd1958dfb163b83d53e6", size = 249601, upload-time = "2025-06-30T15:52:37.473Z" }, + { url = "https://files.pythonhosted.org/packages/75/5e/325b11f2222a549019cf2ef879c1f81f94a0d40ace3ef55cf529915ba6cc/multidict-6.6.3-cp313-cp313-win32.whl", hash = "sha256:5633a82fba8e841bc5c5c06b16e21529573cd654f67fd833650a215520a6210e", size = 41683, upload-time = "2025-06-30T15:52:38.927Z" }, + { url = "https://files.pythonhosted.org/packages/b1/ad/cf46e73f5d6e3c775cabd2a05976547f3f18b39bee06260369a42501f053/multidict-6.6.3-cp313-cp313-win_amd64.whl", hash = "sha256:e93089c1570a4ad54c3714a12c2cef549dc9d58e97bcded193d928649cab78e9", size = 45811, upload-time = "2025-06-30T15:52:40.207Z" }, + { url = "https://files.pythonhosted.org/packages/c5/c9/2e3fe950db28fb7c62e1a5f46e1e38759b072e2089209bc033c2798bb5ec/multidict-6.6.3-cp313-cp313-win_arm64.whl", hash = "sha256:c60b401f192e79caec61f166da9c924e9f8bc65548d4246842df91651e83d600", size = 43056, upload-time = "2025-06-30T15:52:41.575Z" }, + { url = "https://files.pythonhosted.org/packages/3a/58/aaf8114cf34966e084a8cc9517771288adb53465188843d5a19862cb6dc3/multidict-6.6.3-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:02fd8f32d403a6ff13864b0851f1f523d4c988051eea0471d4f1fd8010f11134", size = 82811, upload-time = "2025-06-30T15:52:43.281Z" }, + { url = "https://files.pythonhosted.org/packages/71/af/5402e7b58a1f5b987a07ad98f2501fdba2a4f4b4c30cf114e3ce8db64c87/multidict-6.6.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:f3aa090106b1543f3f87b2041eef3c156c8da2aed90c63a2fbed62d875c49c37", size = 48304, upload-time = "2025-06-30T15:52:45.026Z" }, + { url = "https://files.pythonhosted.org/packages/39/65/ab3c8cafe21adb45b24a50266fd747147dec7847425bc2a0f6934b3ae9ce/multidict-6.6.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e924fb978615a5e33ff644cc42e6aa241effcf4f3322c09d4f8cebde95aff5f8", size = 46775, upload-time = "2025-06-30T15:52:46.459Z" }, + { url = "https://files.pythonhosted.org/packages/49/ba/9fcc1b332f67cc0c0c8079e263bfab6660f87fe4e28a35921771ff3eea0d/multidict-6.6.3-cp313-cp313t-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:b9fe5a0e57c6dbd0e2ce81ca66272282c32cd11d31658ee9553849d91289e1c1", size = 229773, upload-time = "2025-06-30T15:52:47.88Z" }, + { url = "https://files.pythonhosted.org/packages/a4/14/0145a251f555f7c754ce2dcbcd012939bbd1f34f066fa5d28a50e722a054/multidict-6.6.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b24576f208793ebae00280c59927c3b7c2a3b1655e443a25f753c4611bc1c373", size = 250083, upload-time = "2025-06-30T15:52:49.366Z" }, + { url = "https://files.pythonhosted.org/packages/9e/d4/d5c0bd2bbb173b586c249a151a26d2fb3ec7d53c96e42091c9fef4e1f10c/multidict-6.6.3-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:135631cb6c58eac37d7ac0df380294fecdc026b28837fa07c02e459c7fb9c54e", size = 228980, upload-time = "2025-06-30T15:52:50.903Z" }, + { url = "https://files.pythonhosted.org/packages/21/32/c9a2d8444a50ec48c4733ccc67254100c10e1c8ae8e40c7a2d2183b59b97/multidict-6.6.3-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:274d416b0df887aef98f19f21578653982cfb8a05b4e187d4a17103322eeaf8f", size = 257776, upload-time = "2025-06-30T15:52:52.764Z" }, + { url = "https://files.pythonhosted.org/packages/68/d0/14fa1699f4ef629eae08ad6201c6b476098f5efb051b296f4c26be7a9fdf/multidict-6.6.3-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:e252017a817fad7ce05cafbe5711ed40faeb580e63b16755a3a24e66fa1d87c0", size = 256882, upload-time = "2025-06-30T15:52:54.596Z" }, + { url = "https://files.pythonhosted.org/packages/da/88/84a27570fbe303c65607d517a5f147cd2fc046c2d1da02b84b17b9bdc2aa/multidict-6.6.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2e4cc8d848cd4fe1cdee28c13ea79ab0ed37fc2e89dd77bac86a2e7959a8c3bc", size = 247816, upload-time = "2025-06-30T15:52:56.175Z" }, + { url = "https://files.pythonhosted.org/packages/1c/60/dca352a0c999ce96a5d8b8ee0b2b9f729dcad2e0b0c195f8286269a2074c/multidict-6.6.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9e236a7094b9c4c1b7585f6b9cca34b9d833cf079f7e4c49e6a4a6ec9bfdc68f", size = 245341, upload-time = "2025-06-30T15:52:57.752Z" }, + { url = "https://files.pythonhosted.org/packages/50/ef/433fa3ed06028f03946f3993223dada70fb700f763f70c00079533c34578/multidict-6.6.3-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:e0cb0ab69915c55627c933f0b555a943d98ba71b4d1c57bc0d0a66e2567c7471", size = 235854, upload-time = "2025-06-30T15:52:59.74Z" }, + { url = "https://files.pythonhosted.org/packages/1b/1f/487612ab56fbe35715320905215a57fede20de7db40a261759690dc80471/multidict-6.6.3-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:81ef2f64593aba09c5212a3d0f8c906a0d38d710a011f2f42759704d4557d3f2", size = 243432, upload-time = "2025-06-30T15:53:01.602Z" }, + { url = "https://files.pythonhosted.org/packages/da/6f/ce8b79de16cd885c6f9052c96a3671373d00c59b3ee635ea93e6e81b8ccf/multidict-6.6.3-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:b9cbc60010de3562545fa198bfc6d3825df430ea96d2cc509c39bd71e2e7d648", size = 252731, upload-time = "2025-06-30T15:53:03.517Z" }, + { url = "https://files.pythonhosted.org/packages/bb/fe/a2514a6aba78e5abefa1624ca85ae18f542d95ac5cde2e3815a9fbf369aa/multidict-6.6.3-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:70d974eaaa37211390cd02ef93b7e938de564bbffa866f0b08d07e5e65da783d", size = 247086, upload-time = "2025-06-30T15:53:05.48Z" }, + { url = "https://files.pythonhosted.org/packages/8c/22/b788718d63bb3cce752d107a57c85fcd1a212c6c778628567c9713f9345a/multidict-6.6.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3713303e4a6663c6d01d648a68f2848701001f3390a030edaaf3fc949c90bf7c", size = 243338, upload-time = "2025-06-30T15:53:07.522Z" }, + { url = "https://files.pythonhosted.org/packages/22/d6/fdb3d0670819f2228f3f7d9af613d5e652c15d170c83e5f1c94fbc55a25b/multidict-6.6.3-cp313-cp313t-win32.whl", hash = "sha256:639ecc9fe7cd73f2495f62c213e964843826f44505a3e5d82805aa85cac6f89e", size = 47812, upload-time = "2025-06-30T15:53:09.263Z" }, + { url = "https://files.pythonhosted.org/packages/b6/d6/a9d2c808f2c489ad199723197419207ecbfbc1776f6e155e1ecea9c883aa/multidict-6.6.3-cp313-cp313t-win_amd64.whl", hash = "sha256:9f97e181f344a0ef3881b573d31de8542cc0dbc559ec68c8f8b5ce2c2e91646d", size = 53011, upload-time = "2025-06-30T15:53:11.038Z" }, + { url = "https://files.pythonhosted.org/packages/f2/40/b68001cba8188dd267590a111f9661b6256debc327137667e832bf5d66e8/multidict-6.6.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ce8b7693da41a3c4fde5871c738a81490cea5496c671d74374c8ab889e1834fb", size = 45254, upload-time = "2025-06-30T15:53:12.421Z" }, + { url = "https://files.pythonhosted.org/packages/d8/30/9aec301e9772b098c1f5c0ca0279237c9766d94b97802e9888010c64b0ed/multidict-6.6.3-py3-none-any.whl", hash = "sha256:8db10f29c7541fc5da4defd8cd697e1ca429db743fa716325f236079b96f775a", size = 12313, upload-time = "2025-06-30T15:53:45.437Z" }, +] + +[[package]] +name = "multiprocess" +version = "0.70.18" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "dill" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/72/fd/2ae3826f5be24c6ed87266bc4e59c46ea5b059a103f3d7e7eb76a52aeecb/multiprocess-0.70.18.tar.gz", hash = "sha256:f9597128e6b3e67b23956da07cf3d2e5cba79e2f4e0fba8d7903636663ec6d0d", size = 1798503, upload-time = "2025-04-17T03:11:27.742Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ba/d8/0cba6cf51a1a31f20471fbc823a716170c73012ddc4fb85d706630ed6e8f/multiprocess-0.70.18-py310-none-any.whl", hash = "sha256:60c194974c31784019c1f459d984e8f33ee48f10fcf42c309ba97b30d9bd53ea", size = 134948, upload-time = "2025-04-17T03:11:20.223Z" }, + { url = "https://files.pythonhosted.org/packages/4b/88/9039f2fed1012ef584751d4ceff9ab4a51e5ae264898f0b7cbf44340a859/multiprocess-0.70.18-py311-none-any.whl", hash = "sha256:5aa6eef98e691281b3ad923be2832bf1c55dd2c859acd73e5ec53a66aae06a1d", size = 144462, upload-time = "2025-04-17T03:11:21.657Z" }, + { url = "https://files.pythonhosted.org/packages/bf/b6/5f922792be93b82ec6b5f270bbb1ef031fd0622847070bbcf9da816502cc/multiprocess-0.70.18-py312-none-any.whl", hash = "sha256:9b78f8e5024b573730bfb654783a13800c2c0f2dfc0c25e70b40d184d64adaa2", size = 150287, upload-time = "2025-04-17T03:11:22.69Z" }, + { url = "https://files.pythonhosted.org/packages/ee/25/7d7e78e750bc1aecfaf0efbf826c69a791d2eeaf29cf20cba93ff4cced78/multiprocess-0.70.18-py313-none-any.whl", hash = "sha256:871743755f43ef57d7910a38433cfe41319e72be1bbd90b79c7a5ac523eb9334", size = 151917, upload-time = "2025-04-17T03:11:24.044Z" }, + { url = "https://files.pythonhosted.org/packages/3b/c3/ca84c19bd14cdfc21c388fdcebf08b86a7a470ebc9f5c3c084fc2dbc50f7/multiprocess-0.70.18-py38-none-any.whl", hash = "sha256:dbf705e52a154fe5e90fb17b38f02556169557c2dd8bb084f2e06c2784d8279b", size = 132636, upload-time = "2025-04-17T03:11:24.936Z" }, + { url = "https://files.pythonhosted.org/packages/6c/28/dd72947e59a6a8c856448a5e74da6201cb5502ddff644fbc790e4bd40b9a/multiprocess-0.70.18-py39-none-any.whl", hash = "sha256:e78ca805a72b1b810c690b6b4cc32579eba34f403094bbbae962b7b5bf9dfcb8", size = 133478, upload-time = "2025-04-17T03:11:26.253Z" }, +] + +[[package]] +name = "networkx" +version = "3.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6c/4f/ccdb8ad3a38e583f214547fd2f7ff1fc160c43a75af88e6aec213404b96a/networkx-3.5.tar.gz", hash = "sha256:d4c6f9cf81f52d69230866796b82afbccdec3db7ae4fbd1b65ea750feed50037", size = 2471065, upload-time = "2025-05-29T11:35:07.804Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/eb/8d/776adee7bbf76365fdd7f2552710282c79a4ead5d2a46408c9043a2b70ba/networkx-3.5-py3-none-any.whl", hash = "sha256:0030d386a9a06dee3565298b4a734b68589749a544acbb6c412dc9e2489ec6ec", size = 2034406, upload-time = "2025-05-29T11:35:04.961Z" }, +] + +[[package]] +name = "ninja" +version = "1.11.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/95/d4/6b0324541018561c5e73e617bd16f20a4fc17d1179bb3b3520b6ca8beb7b/ninja-1.11.1.4.tar.gz", hash = "sha256:6aa39f6e894e0452e5b297327db00019383ae55d5d9c57c73b04f13bf79d438a", size = 201256, upload-time = "2025-03-22T06:46:43.46Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4f/b1/3a61b348936b62a386465b1937cd778fa3a5748582e26d832dbab844ff27/ninja-1.11.1.4-py3-none-macosx_10_9_universal2.whl", hash = "sha256:b33923c8da88e8da20b6053e38deb433f53656441614207e01d283ad02c5e8e7", size = 279071, upload-time = "2025-03-22T06:46:17.806Z" }, + { url = "https://files.pythonhosted.org/packages/12/42/4c94fdad51fcf1f039a156e97de9e4d564c2a8cc0303782d36f9bd893a4b/ninja-1.11.1.4-py3-none-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:cede0af00b58e27b31f2482ba83292a8e9171cdb9acc2c867a3b6e40b3353e43", size = 472026, upload-time = "2025-03-22T06:46:19.974Z" }, + { url = "https://files.pythonhosted.org/packages/eb/7a/455d2877fe6cf99886849c7f9755d897df32eaf3a0fba47b56e615f880f7/ninja-1.11.1.4-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:096487995473320de7f65d622c3f1d16c3ad174797602218ca8c967f51ec38a0", size = 422814, upload-time = "2025-03-22T06:46:21.235Z" }, + { url = "https://files.pythonhosted.org/packages/e3/ad/fb6cca942528e25e8e0ab0f0cf98fe007319bf05cf69d726c564b815c4af/ninja-1.11.1.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3090d4488fadf6047d0d7a1db0c9643a8d391f0d94729554dbb89b5bdc769d7", size = 156965, upload-time = "2025-03-22T06:46:23.45Z" }, + { url = "https://files.pythonhosted.org/packages/a8/e7/d94a1b60031b115dd88526834b3da69eaacdc3c1a6769773ca8e2b1386b5/ninja-1.11.1.4-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ecce44a00325a93631792974659cf253a815cc6da4ec96f89742925dfc295a0d", size = 179937, upload-time = "2025-03-22T06:46:24.728Z" }, + { url = "https://files.pythonhosted.org/packages/08/cc/e9316a28235409e9363794fc3d0b3083e48dd80d441006de66421e55f364/ninja-1.11.1.4-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c29bb66d2aa46a2409ab369ea804c730faec7652e8c22c1e428cc09216543e5", size = 157020, upload-time = "2025-03-22T06:46:26.046Z" }, + { url = "https://files.pythonhosted.org/packages/e3/30/389b22300541aa5f2e9dad322c4de2f84be4e32aa4e8babd9160d620b5f1/ninja-1.11.1.4-py3-none-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:055f386fb550c2c9d6157e45e20a84d29c47968876b9c5794ae2aec46f952306", size = 130389, upload-time = "2025-03-22T06:46:27.174Z" }, + { url = "https://files.pythonhosted.org/packages/a9/10/e27f35cb92813aabbb7ae771b1685b45be1cc8a0798ce7d4bfd08d142b93/ninja-1.11.1.4-py3-none-musllinux_1_1_aarch64.whl", hash = "sha256:f6186d7607bb090c3be1e10c8a56b690be238f953616626f5032238c66e56867", size = 372435, upload-time = "2025-03-22T06:46:28.637Z" }, + { url = "https://files.pythonhosted.org/packages/c2/26/e3559619756739aae124c6abf7fe41f7e546ab1209cfbffb13137bff2d2e/ninja-1.11.1.4-py3-none-musllinux_1_1_i686.whl", hash = "sha256:cf4453679d15babc04ba023d68d091bb613091b67101c88f85d2171c6621c6eb", size = 419300, upload-time = "2025-03-22T06:46:30.392Z" }, + { url = "https://files.pythonhosted.org/packages/35/46/809e4e9572570991b8e6f88f3583807d017371ab4cb09171cbc72a7eb3e4/ninja-1.11.1.4-py3-none-musllinux_1_1_ppc64le.whl", hash = "sha256:d4a6f159b08b0ac4aca5ee1572e3e402f969139e71d85d37c0e2872129098749", size = 420239, upload-time = "2025-03-22T06:46:32.442Z" }, + { url = "https://files.pythonhosted.org/packages/e6/64/5cb5710d15f844edf02ada577f8eddfdcd116f47eec15850f3371a3a4b33/ninja-1.11.1.4-py3-none-musllinux_1_1_s390x.whl", hash = "sha256:c3b96bd875f3ef1db782470e9e41d7508905a0986571f219d20ffed238befa15", size = 415986, upload-time = "2025-03-22T06:46:33.821Z" }, + { url = "https://files.pythonhosted.org/packages/95/b2/0e9ab1d926f423b12b09925f78afcc5e48b3c22e7121be3ddf6c35bf06a3/ninja-1.11.1.4-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:cf554e73f72c04deb04d0cf51f5fdb1903d9c9ca3d2344249c8ce3bd616ebc02", size = 379657, upload-time = "2025-03-22T06:46:36.166Z" }, + { url = "https://files.pythonhosted.org/packages/c8/3e/fd6d330d0434168e7fe070d414b57dd99c4c133faa69c05b42a3cbdc6c13/ninja-1.11.1.4-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:cfdd09776436a1ff3c4a2558d3fc50a689fb9d7f1bdbc3e6f7b8c2991341ddb3", size = 454466, upload-time = "2025-03-22T06:46:37.413Z" }, + { url = "https://files.pythonhosted.org/packages/e6/df/a25f3ad0b1c59d1b90564096e4fd89a6ca30d562b1e942f23880c3000b89/ninja-1.11.1.4-py3-none-win32.whl", hash = "sha256:2ab67a41c90bea5ec4b795bab084bc0b3b3bb69d3cd21ca0294fc0fc15a111eb", size = 255931, upload-time = "2025-03-22T06:46:39.171Z" }, + { url = "https://files.pythonhosted.org/packages/5b/10/9b8fe9ac004847490cc7b54896124c01ce2d87d95dc60aabd0b8591addff/ninja-1.11.1.4-py3-none-win_amd64.whl", hash = "sha256:4617b3c12ff64b611a7d93fd9e378275512bb36eff8babff7c83f5116b4f8d66", size = 296461, upload-time = "2025-03-22T06:46:40.532Z" }, + { url = "https://files.pythonhosted.org/packages/b9/58/612a17593c2d117f96c7f6b7f1e6570246bddc4b1e808519403a1417f217/ninja-1.11.1.4-py3-none-win_arm64.whl", hash = "sha256:5713cf50c5be50084a8693308a63ecf9e55c3132a78a41ab1363a28b6caaaee1", size = 271441, upload-time = "2025-03-22T06:46:42.147Z" }, +] + +[[package]] +name = "numpy" +version = "2.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2e/19/d7c972dfe90a353dbd3efbbe1d14a5951de80c99c9dc1b93cd998d51dc0f/numpy-2.3.1.tar.gz", hash = "sha256:1ec9ae20a4226da374362cca3c62cd753faf2f951440b0e3b98e93c235441d2b", size = 20390372, upload-time = "2025-06-21T12:28:33.469Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d4/bd/35ad97006d8abff8631293f8ea6adf07b0108ce6fec68da3c3fcca1197f2/numpy-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:25a1992b0a3fdcdaec9f552ef10d8103186f5397ab45e2d25f8ac51b1a6b97e8", size = 20889381, upload-time = "2025-06-21T12:19:04.103Z" }, + { url = "https://files.pythonhosted.org/packages/f1/4f/df5923874d8095b6062495b39729178eef4a922119cee32a12ee1bd4664c/numpy-2.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7dea630156d39b02a63c18f508f85010230409db5b2927ba59c8ba4ab3e8272e", size = 14152726, upload-time = "2025-06-21T12:19:25.599Z" }, + { url = "https://files.pythonhosted.org/packages/8c/0f/a1f269b125806212a876f7efb049b06c6f8772cf0121139f97774cd95626/numpy-2.3.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:bada6058dd886061f10ea15f230ccf7dfff40572e99fef440a4a857c8728c9c0", size = 5105145, upload-time = "2025-06-21T12:19:34.782Z" }, + { url = "https://files.pythonhosted.org/packages/6d/63/a7f7fd5f375b0361682f6ffbf686787e82b7bbd561268e4f30afad2bb3c0/numpy-2.3.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:a894f3816eb17b29e4783e5873f92faf55b710c2519e5c351767c51f79d8526d", size = 6639409, upload-time = "2025-06-21T12:19:45.228Z" }, + { url = "https://files.pythonhosted.org/packages/bf/0d/1854a4121af895aab383f4aa233748f1df4671ef331d898e32426756a8a6/numpy-2.3.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:18703df6c4a4fee55fd3d6e5a253d01c5d33a295409b03fda0c86b3ca2ff41a1", size = 14257630, upload-time = "2025-06-21T12:20:06.544Z" }, + { url = "https://files.pythonhosted.org/packages/50/30/af1b277b443f2fb08acf1c55ce9d68ee540043f158630d62cef012750f9f/numpy-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:5902660491bd7a48b2ec16c23ccb9124b8abfd9583c5fdfa123fe6b421e03de1", size = 16627546, upload-time = "2025-06-21T12:20:31.002Z" }, + { url = "https://files.pythonhosted.org/packages/6e/ec/3b68220c277e463095342d254c61be8144c31208db18d3fd8ef02712bcd6/numpy-2.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:36890eb9e9d2081137bd78d29050ba63b8dab95dff7912eadf1185e80074b2a0", size = 15562538, upload-time = "2025-06-21T12:20:54.322Z" }, + { url = "https://files.pythonhosted.org/packages/77/2b/4014f2bcc4404484021c74d4c5ee8eb3de7e3f7ac75f06672f8dcf85140a/numpy-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a780033466159c2270531e2b8ac063704592a0bc62ec4a1b991c7c40705eb0e8", size = 18360327, upload-time = "2025-06-21T12:21:21.053Z" }, + { url = "https://files.pythonhosted.org/packages/40/8d/2ddd6c9b30fcf920837b8672f6c65590c7d92e43084c25fc65edc22e93ca/numpy-2.3.1-cp313-cp313-win32.whl", hash = "sha256:39bff12c076812595c3a306f22bfe49919c5513aa1e0e70fac756a0be7c2a2b8", size = 6312330, upload-time = "2025-06-21T12:25:07.447Z" }, + { url = "https://files.pythonhosted.org/packages/dd/c8/beaba449925988d415efccb45bf977ff8327a02f655090627318f6398c7b/numpy-2.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:8d5ee6eec45f08ce507a6570e06f2f879b374a552087a4179ea7838edbcbfa42", size = 12731565, upload-time = "2025-06-21T12:25:26.444Z" }, + { url = "https://files.pythonhosted.org/packages/0b/c3/5c0c575d7ec78c1126998071f58facfc124006635da75b090805e642c62e/numpy-2.3.1-cp313-cp313-win_arm64.whl", hash = "sha256:0c4d9e0a8368db90f93bd192bfa771ace63137c3488d198ee21dfb8e7771916e", size = 10190262, upload-time = "2025-06-21T12:25:42.196Z" }, + { url = "https://files.pythonhosted.org/packages/ea/19/a029cd335cf72f79d2644dcfc22d90f09caa86265cbbde3b5702ccef6890/numpy-2.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:b0b5397374f32ec0649dd98c652a1798192042e715df918c20672c62fb52d4b8", size = 20987593, upload-time = "2025-06-21T12:21:51.664Z" }, + { url = "https://files.pythonhosted.org/packages/25/91/8ea8894406209107d9ce19b66314194675d31761fe2cb3c84fe2eeae2f37/numpy-2.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c5bdf2015ccfcee8253fb8be695516ac4457c743473a43290fd36eba6a1777eb", size = 14300523, upload-time = "2025-06-21T12:22:13.583Z" }, + { url = "https://files.pythonhosted.org/packages/a6/7f/06187b0066eefc9e7ce77d5f2ddb4e314a55220ad62dd0bfc9f2c44bac14/numpy-2.3.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:d70f20df7f08b90a2062c1f07737dd340adccf2068d0f1b9b3d56e2038979fee", size = 5227993, upload-time = "2025-06-21T12:22:22.53Z" }, + { url = "https://files.pythonhosted.org/packages/e8/ec/a926c293c605fa75e9cfb09f1e4840098ed46d2edaa6e2152ee35dc01ed3/numpy-2.3.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:2fb86b7e58f9ac50e1e9dd1290154107e47d1eef23a0ae9145ded06ea606f992", size = 6736652, upload-time = "2025-06-21T12:22:33.629Z" }, + { url = "https://files.pythonhosted.org/packages/e3/62/d68e52fb6fde5586650d4c0ce0b05ff3a48ad4df4ffd1b8866479d1d671d/numpy-2.3.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:23ab05b2d241f76cb883ce8b9a93a680752fbfcbd51c50eff0b88b979e471d8c", size = 14331561, upload-time = "2025-06-21T12:22:55.056Z" }, + { url = "https://files.pythonhosted.org/packages/fc/ec/b74d3f2430960044bdad6900d9f5edc2dc0fb8bf5a0be0f65287bf2cbe27/numpy-2.3.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ce2ce9e5de4703a673e705183f64fd5da5bf36e7beddcb63a25ee2286e71ca48", size = 16693349, upload-time = "2025-06-21T12:23:20.53Z" }, + { url = "https://files.pythonhosted.org/packages/0d/15/def96774b9d7eb198ddadfcbd20281b20ebb510580419197e225f5c55c3e/numpy-2.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c4913079974eeb5c16ccfd2b1f09354b8fed7e0d6f2cab933104a09a6419b1ee", size = 15642053, upload-time = "2025-06-21T12:23:43.697Z" }, + { url = "https://files.pythonhosted.org/packages/2b/57/c3203974762a759540c6ae71d0ea2341c1fa41d84e4971a8e76d7141678a/numpy-2.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:010ce9b4f00d5c036053ca684c77441f2f2c934fd23bee058b4d6f196efd8280", size = 18434184, upload-time = "2025-06-21T12:24:10.708Z" }, + { url = "https://files.pythonhosted.org/packages/22/8a/ccdf201457ed8ac6245187850aff4ca56a79edbea4829f4e9f14d46fa9a5/numpy-2.3.1-cp313-cp313t-win32.whl", hash = "sha256:6269b9edfe32912584ec496d91b00b6d34282ca1d07eb10e82dfc780907d6c2e", size = 6440678, upload-time = "2025-06-21T12:24:21.596Z" }, + { url = "https://files.pythonhosted.org/packages/f1/7e/7f431d8bd8eb7e03d79294aed238b1b0b174b3148570d03a8a8a8f6a0da9/numpy-2.3.1-cp313-cp313t-win_amd64.whl", hash = "sha256:2a809637460e88a113e186e87f228d74ae2852a2e0c44de275263376f17b5bdc", size = 12870697, upload-time = "2025-06-21T12:24:40.644Z" }, + { url = "https://files.pythonhosted.org/packages/d4/ca/af82bf0fad4c3e573c6930ed743b5308492ff19917c7caaf2f9b6f9e2e98/numpy-2.3.1-cp313-cp313t-win_arm64.whl", hash = "sha256:eccb9a159db9aed60800187bc47a6d3451553f0e1b08b068d8b277ddfbb9b244", size = 10260376, upload-time = "2025-06-21T12:24:56.884Z" }, +] + +[[package]] +name = "nvidia-cublas-cu12" +version = "12.8.3.14" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/df/4b01f10069e23c641f116c62fc31e31e8dc361a153175d81561d15c8143b/nvidia_cublas_cu12-12.8.3.14-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:3f0e05e7293598cf61933258b73e66a160c27d59c4422670bf0b79348c04be44", size = 609620630, upload-time = "2025-01-23T17:55:00.753Z" }, +] + +[[package]] +name = "nvidia-cuda-cupti-cu12" +version = "12.8.57" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/39/6f/3683ecf4e38931971946777d231c2df00dd5c1c4c2c914c42ad8f9f4dca6/nvidia_cuda_cupti_cu12-12.8.57-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8e0b2eb847de260739bee4a3f66fac31378f4ff49538ff527a38a01a9a39f950", size = 10237547, upload-time = "2025-01-23T17:47:56.863Z" }, +] + +[[package]] +name = "nvidia-cuda-nvrtc-cu12" +version = "12.8.61" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d4/22/32029d4583f7b19cfe75c84399cbcfd23f2aaf41c66fc8db4da460104fff/nvidia_cuda_nvrtc_cu12-12.8.61-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:a0fa9c2a21583105550ebd871bd76e2037205d56f33f128e69f6d2a55e0af9ed", size = 88024585, upload-time = "2025-01-23T17:50:10.722Z" }, +] + +[[package]] +name = "nvidia-cuda-runtime-cu12" +version = "12.8.57" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/16/f6/0e1ef31f4753a44084310ba1a7f0abaf977ccd810a604035abb43421c057/nvidia_cuda_runtime_cu12-12.8.57-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:75342e28567340b7428ce79a5d6bb6ca5ff9d07b69e7ce00d2c7b4dc23eff0be", size = 954762, upload-time = "2025-01-23T17:47:22.21Z" }, +] + +[[package]] +name = "nvidia-cudnn-cu12" +version = "9.7.1.26" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-cublas-cu12", marker = "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/25/dc/dc825c4b1c83b538e207e34f48f86063c88deaa35d46c651c7c181364ba2/nvidia_cudnn_cu12-9.7.1.26-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:6d011159a158f3cfc47bf851aea79e31bcff60d530b70ef70474c84cac484d07", size = 726851421, upload-time = "2025-02-06T22:18:29.812Z" }, +] + +[[package]] +name = "nvidia-cufft-cu12" +version = "11.3.3.41" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-nvjitlink-cu12", marker = "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/ac/26/b53c493c38dccb1f1a42e1a21dc12cba2a77fbe36c652f7726d9ec4aba28/nvidia_cufft_cu12-11.3.3.41-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:da650080ab79fcdf7a4b06aa1b460e99860646b176a43f6208099bdc17836b6a", size = 193118795, upload-time = "2025-01-23T17:56:30.536Z" }, +] + +[[package]] +name = "nvidia-cufile-cu12" +version = "1.13.0.11" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/9c/1f3264d0a84c8a031487fb7f59780fc78fa6f1c97776233956780e3dc3ac/nvidia_cufile_cu12-1.13.0.11-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:483f434c541806936b98366f6d33caef5440572de8ddf38d453213729da3e7d4", size = 1197801, upload-time = "2025-01-23T17:57:07.247Z" }, +] + +[[package]] +name = "nvidia-curand-cu12" +version = "10.3.9.55" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bd/fc/7be5d0082507269bb04ac07cc614c84b78749efb96e8cf4100a8a1178e98/nvidia_curand_cu12-10.3.9.55-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:8387d974240c91f6a60b761b83d4b2f9b938b7e0b9617bae0f0dafe4f5c36b86", size = 63618038, upload-time = "2025-01-23T17:57:41.838Z" }, +] + +[[package]] +name = "nvidia-cusolver-cu12" +version = "11.7.2.55" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-cublas-cu12", marker = "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')" }, + { name = "nvidia-cusparse-cu12", marker = "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')" }, + { name = "nvidia-nvjitlink-cu12", marker = "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/c2/08/953675873a136d96bb12f93b49ba045d1107bc94d2551c52b12fa6c7dec3/nvidia_cusolver_cu12-11.7.2.55-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:4d1354102f1e922cee9db51920dba9e2559877cf6ff5ad03a00d853adafb191b", size = 260373342, upload-time = "2025-01-23T17:58:56.406Z" }, +] + +[[package]] +name = "nvidia-cusparse-cu12" +version = "12.5.7.53" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-nvjitlink-cu12", marker = "(platform_machine != 'aarch64' and sys_platform == 'linux') or (sys_platform != 'darwin' and sys_platform != 'linux')" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/c2/ab/31e8149c66213b846c082a3b41b1365b831f41191f9f40c6ddbc8a7d550e/nvidia_cusparse_cu12-12.5.7.53-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3c1b61eb8c85257ea07e9354606b26397612627fdcd327bfd91ccf6155e7c86d", size = 292064180, upload-time = "2025-01-23T18:00:23.233Z" }, +] + +[[package]] +name = "nvidia-cusparselt-cu12" +version = "0.6.3" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3b/9a/72ef35b399b0e183bc2e8f6f558036922d453c4d8237dab26c666a04244b/nvidia_cusparselt_cu12-0.6.3-py3-none-manylinux2014_x86_64.whl", hash = "sha256:e5c8a26c36445dd2e6812f1177978a24e2d37cacce7e090f297a688d1ec44f46", size = 156785796, upload-time = "2024-10-15T21:29:17.709Z" }, +] + +[[package]] +name = "nvidia-nccl-cu12" +version = "2.26.2" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/67/ca/f42388aed0fddd64ade7493dbba36e1f534d4e6fdbdd355c6a90030ae028/nvidia_nccl_cu12-2.26.2-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:694cf3879a206553cc9d7dbda76b13efaf610fdb70a50cba303de1b0d1530ac6", size = 201319755, upload-time = "2025-03-13T00:29:55.296Z" }, +] + +[[package]] +name = "nvidia-nvjitlink-cu12" +version = "12.8.61" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/03/f8/9d85593582bd99b8d7c65634d2304780aefade049b2b94d96e44084be90b/nvidia_nvjitlink_cu12-12.8.61-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:45fd79f2ae20bd67e8bc411055939049873bfd8fac70ff13bd4865e0b9bdab17", size = 39243473, upload-time = "2025-01-23T18:03:03.509Z" }, +] + +[[package]] +name = "nvidia-nvtx-cu12" +version = "12.8.55" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/cd/0e8c51b2ae3a58f054f2e7fe91b82d201abfb30167f2431e9bd92d532f42/nvidia_nvtx_cu12-12.8.55-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2dd0780f1a55c21d8e06a743de5bd95653de630decfff40621dbde78cc307102", size = 89896, upload-time = "2025-01-23T17:50:44.487Z" }, +] + +[[package]] +name = "opencv-python-headless" +version = "4.11.0.86" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/36/2f/5b2b3ba52c864848885ba988f24b7f105052f68da9ab0e693cc7c25b0b30/opencv-python-headless-4.11.0.86.tar.gz", hash = "sha256:996eb282ca4b43ec6a3972414de0e2331f5d9cda2b41091a49739c19fb843798", size = 95177929, upload-time = "2025-01-16T13:53:40.22Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/53/2c50afa0b1e05ecdb4603818e85f7d174e683d874ef63a6abe3ac92220c8/opencv_python_headless-4.11.0.86-cp37-abi3-macosx_13_0_arm64.whl", hash = "sha256:48128188ade4a7e517237c8e1e11a9cdf5c282761473383e77beb875bb1e61ca", size = 37326460, upload-time = "2025-01-16T13:52:57.015Z" }, + { url = "https://files.pythonhosted.org/packages/3b/43/68555327df94bb9b59a1fd645f63fafb0762515344d2046698762fc19d58/opencv_python_headless-4.11.0.86-cp37-abi3-macosx_13_0_x86_64.whl", hash = "sha256:a66c1b286a9de872c343ee7c3553b084244299714ebb50fbdcd76f07ebbe6c81", size = 56723330, upload-time = "2025-01-16T13:55:45.731Z" }, + { url = "https://files.pythonhosted.org/packages/45/be/1438ce43ebe65317344a87e4b150865c5585f4c0db880a34cdae5ac46881/opencv_python_headless-4.11.0.86-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6efabcaa9df731f29e5ea9051776715b1bdd1845d7c9530065c7951d2a2899eb", size = 29487060, upload-time = "2025-01-16T13:51:59.625Z" }, + { url = "https://files.pythonhosted.org/packages/dd/5c/c139a7876099916879609372bfa513b7f1257f7f1a908b0bdc1c2328241b/opencv_python_headless-4.11.0.86-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e0a27c19dd1f40ddff94976cfe43066fbbe9dfbb2ec1907d66c19caef42a57b", size = 49969856, upload-time = "2025-01-16T13:53:29.654Z" }, + { url = "https://files.pythonhosted.org/packages/95/dd/ed1191c9dc91abcc9f752b499b7928aacabf10567bb2c2535944d848af18/opencv_python_headless-4.11.0.86-cp37-abi3-win32.whl", hash = "sha256:f447d8acbb0b6f2808da71fddd29c1cdd448d2bc98f72d9bb78a7a898fc9621b", size = 29324425, upload-time = "2025-01-16T13:52:49.048Z" }, + { url = "https://files.pythonhosted.org/packages/86/8a/69176a64335aed183529207ba8bc3d329c2999d852b4f3818027203f50e6/opencv_python_headless-4.11.0.86-cp37-abi3-win_amd64.whl", hash = "sha256:6c304df9caa7a6a5710b91709dd4786bf20a74d57672b3c31f7033cc638174ca", size = 39402386, upload-time = "2025-01-16T13:52:56.418Z" }, +] + +[[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 = "opensearch-py" +version = "3.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "events" }, + { name = "python-dateutil" }, + { name = "requests" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b8/58/ecec7f855aae7bcfb08f570088c6cb993f68c361a0727abab35dbf021acb/opensearch_py-3.0.0.tar.gz", hash = "sha256:ebb38f303f8a3f794db816196315bcddad880be0dc75094e3334bc271db2ed39", size = 248890, upload-time = "2025-06-17T05:39:48.453Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/e0/69fd114c607b0323d3f864ab4a5ecb87d76ec5a172d2e36a739c8baebea1/opensearch_py-3.0.0-py3-none-any.whl", hash = "sha256:842bf5d56a4a0d8290eda9bb921c50f3080e5dc4e5fefb9c9648289da3f6a8bb", size = 371491, upload-time = "2025-06-17T05:39:46.539Z" }, +] + +[package.optional-dependencies] +async = [ + { name = "aiohttp" }, +] + +[[package]] +name = "packaging" +version = "25.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" }, +] + +[[package]] +name = "pandas" +version = "2.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "python-dateutil" }, + { name = "pytz" }, + { name = "tzdata" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d1/6f/75aa71f8a14267117adeeed5d21b204770189c0a0025acbdc03c337b28fc/pandas-2.3.1.tar.gz", hash = "sha256:0a95b9ac964fe83ce317827f80304d37388ea77616b1425f0ae41c9d2d0d7bb2", size = 4487493, upload-time = "2025-07-07T19:20:04.079Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/ed/ff0a67a2c5505e1854e6715586ac6693dd860fbf52ef9f81edee200266e7/pandas-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9026bd4a80108fac2239294a15ef9003c4ee191a0f64b90f170b40cfb7cf2d22", size = 11531393, upload-time = "2025-07-07T19:19:12.245Z" }, + { url = "https://files.pythonhosted.org/packages/c7/db/d8f24a7cc9fb0972adab0cc80b6817e8bef888cfd0024eeb5a21c0bb5c4a/pandas-2.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6de8547d4fdb12421e2d047a2c446c623ff4c11f47fddb6b9169eb98ffba485a", size = 10668750, upload-time = "2025-07-07T19:19:14.612Z" }, + { url = "https://files.pythonhosted.org/packages/0f/b0/80f6ec783313f1e2356b28b4fd8d2148c378370045da918c73145e6aab50/pandas-2.3.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:782647ddc63c83133b2506912cc6b108140a38a37292102aaa19c81c83db2928", size = 11342004, upload-time = "2025-07-07T19:19:16.857Z" }, + { url = "https://files.pythonhosted.org/packages/e9/e2/20a317688435470872885e7fc8f95109ae9683dec7c50be29b56911515a5/pandas-2.3.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ba6aff74075311fc88504b1db890187a3cd0f887a5b10f5525f8e2ef55bfdb9", size = 12050869, upload-time = "2025-07-07T19:19:19.265Z" }, + { url = "https://files.pythonhosted.org/packages/55/79/20d746b0a96c67203a5bee5fb4e00ac49c3e8009a39e1f78de264ecc5729/pandas-2.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e5635178b387bd2ba4ac040f82bc2ef6e6b500483975c4ebacd34bec945fda12", size = 12750218, upload-time = "2025-07-07T19:19:21.547Z" }, + { url = "https://files.pythonhosted.org/packages/7c/0f/145c8b41e48dbf03dd18fdd7f24f8ba95b8254a97a3379048378f33e7838/pandas-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6f3bf5ec947526106399a9e1d26d40ee2b259c66422efdf4de63c848492d91bb", size = 13416763, upload-time = "2025-07-07T19:19:23.939Z" }, + { url = "https://files.pythonhosted.org/packages/b2/c0/54415af59db5cdd86a3d3bf79863e8cc3fa9ed265f0745254061ac09d5f2/pandas-2.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956", size = 10987482, upload-time = "2025-07-07T19:19:42.699Z" }, + { url = "https://files.pythonhosted.org/packages/48/64/2fd2e400073a1230e13b8cd604c9bc95d9e3b962e5d44088ead2e8f0cfec/pandas-2.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8dfc17328e8da77be3cf9f47509e5637ba8f137148ed0e9b5241e1baf526e20a", size = 12029159, upload-time = "2025-07-07T19:19:26.362Z" }, + { url = "https://files.pythonhosted.org/packages/d8/0a/d84fd79b0293b7ef88c760d7dca69828d867c89b6d9bc52d6a27e4d87316/pandas-2.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:ec6c851509364c59a5344458ab935e6451b31b818be467eb24b0fe89bd05b6b9", size = 11393287, upload-time = "2025-07-07T19:19:29.157Z" }, + { url = "https://files.pythonhosted.org/packages/50/ae/ff885d2b6e88f3c7520bb74ba319268b42f05d7e583b5dded9837da2723f/pandas-2.3.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:911580460fc4884d9b05254b38a6bfadddfcc6aaef856fb5859e7ca202e45275", size = 11309381, upload-time = "2025-07-07T19:19:31.436Z" }, + { url = "https://files.pythonhosted.org/packages/85/86/1fa345fc17caf5d7780d2699985c03dbe186c68fee00b526813939062bb0/pandas-2.3.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2f4d6feeba91744872a600e6edbbd5b033005b431d5ae8379abee5bcfa479fab", size = 11883998, upload-time = "2025-07-07T19:19:34.267Z" }, + { url = "https://files.pythonhosted.org/packages/81/aa/e58541a49b5e6310d89474333e994ee57fea97c8aaa8fc7f00b873059bbf/pandas-2.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:fe37e757f462d31a9cd7580236a82f353f5713a80e059a29753cf938c6775d96", size = 12704705, upload-time = "2025-07-07T19:19:36.856Z" }, + { url = "https://files.pythonhosted.org/packages/d5/f9/07086f5b0f2a19872554abeea7658200824f5835c58a106fa8f2ae96a46c/pandas-2.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:5db9637dbc24b631ff3707269ae4559bce4b7fd75c1c4d7e13f40edc42df4444", size = 13189044, upload-time = "2025-07-07T19:19:39.999Z" }, +] + +[[package]] +name = "pillow" +version = "11.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f3/0d/d0d6dea55cd152ce3d6767bb38a8fc10e33796ba4ba210cbab9354b6d238/pillow-11.3.0.tar.gz", hash = "sha256:3828ee7586cd0b2091b6209e5ad53e20d0649bbe87164a459d0676e035e8f523", size = 47113069, upload-time = "2025-07-01T09:16:30.666Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/93/0952f2ed8db3a5a4c7a11f91965d6184ebc8cd7cbb7941a260d5f018cd2d/pillow-11.3.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:1c627742b539bba4309df89171356fcb3cc5a9178355b2727d1b74a6cf155fbd", size = 2128328, upload-time = "2025-07-01T09:14:35.276Z" }, + { url = "https://files.pythonhosted.org/packages/4b/e8/100c3d114b1a0bf4042f27e0f87d2f25e857e838034e98ca98fe7b8c0a9c/pillow-11.3.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:30b7c02f3899d10f13d7a48163c8969e4e653f8b43416d23d13d1bbfdc93b9f8", size = 2170652, upload-time = "2025-07-01T09:14:37.203Z" }, + { url = "https://files.pythonhosted.org/packages/aa/86/3f758a28a6e381758545f7cdb4942e1cb79abd271bea932998fc0db93cb6/pillow-11.3.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:7859a4cc7c9295f5838015d8cc0a9c215b77e43d07a25e460f35cf516df8626f", size = 2227443, upload-time = "2025-07-01T09:14:39.344Z" }, + { url = "https://files.pythonhosted.org/packages/01/f4/91d5b3ffa718df2f53b0dc109877993e511f4fd055d7e9508682e8aba092/pillow-11.3.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ec1ee50470b0d050984394423d96325b744d55c701a439d2bd66089bff963d3c", size = 5278474, upload-time = "2025-07-01T09:14:41.843Z" }, + { url = "https://files.pythonhosted.org/packages/f9/0e/37d7d3eca6c879fbd9dba21268427dffda1ab00d4eb05b32923d4fbe3b12/pillow-11.3.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7db51d222548ccfd274e4572fdbf3e810a5e66b00608862f947b163e613b67dd", size = 4686038, upload-time = "2025-07-01T09:14:44.008Z" }, + { url = "https://files.pythonhosted.org/packages/ff/b0/3426e5c7f6565e752d81221af9d3676fdbb4f352317ceafd42899aaf5d8a/pillow-11.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2d6fcc902a24ac74495df63faad1884282239265c6839a0a6416d33faedfae7e", size = 5864407, upload-time = "2025-07-03T13:10:15.628Z" }, + { url = "https://files.pythonhosted.org/packages/fc/c1/c6c423134229f2a221ee53f838d4be9d82bab86f7e2f8e75e47b6bf6cd77/pillow-11.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f0f5d8f4a08090c6d6d578351a2b91acf519a54986c055af27e7a93feae6d3f1", size = 7639094, upload-time = "2025-07-03T13:10:21.857Z" }, + { url = "https://files.pythonhosted.org/packages/ba/c9/09e6746630fe6372c67c648ff9deae52a2bc20897d51fa293571977ceb5d/pillow-11.3.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c37d8ba9411d6003bba9e518db0db0c58a680ab9fe5179f040b0463644bc9805", size = 5973503, upload-time = "2025-07-01T09:14:45.698Z" }, + { url = "https://files.pythonhosted.org/packages/d5/1c/a2a29649c0b1983d3ef57ee87a66487fdeb45132df66ab30dd37f7dbe162/pillow-11.3.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:13f87d581e71d9189ab21fe0efb5a23e9f28552d5be6979e84001d3b8505abe8", size = 6642574, upload-time = "2025-07-01T09:14:47.415Z" }, + { url = "https://files.pythonhosted.org/packages/36/de/d5cc31cc4b055b6c6fd990e3e7f0f8aaf36229a2698501bcb0cdf67c7146/pillow-11.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:023f6d2d11784a465f09fd09a34b150ea4672e85fb3d05931d89f373ab14abb2", size = 6084060, upload-time = "2025-07-01T09:14:49.636Z" }, + { url = "https://files.pythonhosted.org/packages/d5/ea/502d938cbaeec836ac28a9b730193716f0114c41325db428e6b280513f09/pillow-11.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:45dfc51ac5975b938e9809451c51734124e73b04d0f0ac621649821a63852e7b", size = 6721407, upload-time = "2025-07-01T09:14:51.962Z" }, + { url = "https://files.pythonhosted.org/packages/45/9c/9c5e2a73f125f6cbc59cc7087c8f2d649a7ae453f83bd0362ff7c9e2aee2/pillow-11.3.0-cp313-cp313-win32.whl", hash = "sha256:a4d336baed65d50d37b88ca5b60c0fa9d81e3a87d4a7930d3880d1624d5b31f3", size = 6273841, upload-time = "2025-07-01T09:14:54.142Z" }, + { url = "https://files.pythonhosted.org/packages/23/85/397c73524e0cd212067e0c969aa245b01d50183439550d24d9f55781b776/pillow-11.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:0bce5c4fd0921f99d2e858dc4d4d64193407e1b99478bc5cacecba2311abde51", size = 6978450, upload-time = "2025-07-01T09:14:56.436Z" }, + { url = "https://files.pythonhosted.org/packages/17/d2/622f4547f69cd173955194b78e4d19ca4935a1b0f03a302d655c9f6aae65/pillow-11.3.0-cp313-cp313-win_arm64.whl", hash = "sha256:1904e1264881f682f02b7f8167935cce37bc97db457f8e7849dc3a6a52b99580", size = 2423055, upload-time = "2025-07-01T09:14:58.072Z" }, + { url = "https://files.pythonhosted.org/packages/dd/80/a8a2ac21dda2e82480852978416cfacd439a4b490a501a288ecf4fe2532d/pillow-11.3.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:4c834a3921375c48ee6b9624061076bc0a32a60b5532b322cc0ea64e639dd50e", size = 5281110, upload-time = "2025-07-01T09:14:59.79Z" }, + { url = "https://files.pythonhosted.org/packages/44/d6/b79754ca790f315918732e18f82a8146d33bcd7f4494380457ea89eb883d/pillow-11.3.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5e05688ccef30ea69b9317a9ead994b93975104a677a36a8ed8106be9260aa6d", size = 4689547, upload-time = "2025-07-01T09:15:01.648Z" }, + { url = "https://files.pythonhosted.org/packages/49/20/716b8717d331150cb00f7fdd78169c01e8e0c219732a78b0e59b6bdb2fd6/pillow-11.3.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1019b04af07fc0163e2810167918cb5add8d74674b6267616021ab558dc98ced", size = 5901554, upload-time = "2025-07-03T13:10:27.018Z" }, + { url = "https://files.pythonhosted.org/packages/74/cf/a9f3a2514a65bb071075063a96f0a5cf949c2f2fce683c15ccc83b1c1cab/pillow-11.3.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f944255db153ebb2b19c51fe85dd99ef0ce494123f21b9db4877ffdfc5590c7c", size = 7669132, upload-time = "2025-07-03T13:10:33.01Z" }, + { url = "https://files.pythonhosted.org/packages/98/3c/da78805cbdbee9cb43efe8261dd7cc0b4b93f2ac79b676c03159e9db2187/pillow-11.3.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1f85acb69adf2aaee8b7da124efebbdb959a104db34d3a2cb0f3793dbae422a8", size = 6005001, upload-time = "2025-07-01T09:15:03.365Z" }, + { url = "https://files.pythonhosted.org/packages/6c/fa/ce044b91faecf30e635321351bba32bab5a7e034c60187fe9698191aef4f/pillow-11.3.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:05f6ecbeff5005399bb48d198f098a9b4b6bdf27b8487c7f38ca16eeb070cd59", size = 6668814, upload-time = "2025-07-01T09:15:05.655Z" }, + { url = "https://files.pythonhosted.org/packages/7b/51/90f9291406d09bf93686434f9183aba27b831c10c87746ff49f127ee80cb/pillow-11.3.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a7bc6e6fd0395bc052f16b1a8670859964dbd7003bd0af2ff08342eb6e442cfe", size = 6113124, upload-time = "2025-07-01T09:15:07.358Z" }, + { url = "https://files.pythonhosted.org/packages/cd/5a/6fec59b1dfb619234f7636d4157d11fb4e196caeee220232a8d2ec48488d/pillow-11.3.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:83e1b0161c9d148125083a35c1c5a89db5b7054834fd4387499e06552035236c", size = 6747186, upload-time = "2025-07-01T09:15:09.317Z" }, + { url = "https://files.pythonhosted.org/packages/49/6b/00187a044f98255225f172de653941e61da37104a9ea60e4f6887717e2b5/pillow-11.3.0-cp313-cp313t-win32.whl", hash = "sha256:2a3117c06b8fb646639dce83694f2f9eac405472713fcb1ae887469c0d4f6788", size = 6277546, upload-time = "2025-07-01T09:15:11.311Z" }, + { url = "https://files.pythonhosted.org/packages/e8/5c/6caaba7e261c0d75bab23be79f1d06b5ad2a2ae49f028ccec801b0e853d6/pillow-11.3.0-cp313-cp313t-win_amd64.whl", hash = "sha256:857844335c95bea93fb39e0fa2726b4d9d758850b34075a7e3ff4f4fa3aa3b31", size = 6985102, upload-time = "2025-07-01T09:15:13.164Z" }, + { url = "https://files.pythonhosted.org/packages/f3/7e/b623008460c09a0cb38263c93b828c666493caee2eb34ff67f778b87e58c/pillow-11.3.0-cp313-cp313t-win_arm64.whl", hash = "sha256:8797edc41f3e8536ae4b10897ee2f637235c94f27404cac7297f7b607dd0716e", size = 2424803, upload-time = "2025-07-01T09:15:15.695Z" }, + { url = "https://files.pythonhosted.org/packages/73/f4/04905af42837292ed86cb1b1dabe03dce1edc008ef14c473c5c7e1443c5d/pillow-11.3.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:d9da3df5f9ea2a89b81bb6087177fb1f4d1c7146d583a3fe5c672c0d94e55e12", size = 5278520, upload-time = "2025-07-01T09:15:17.429Z" }, + { url = "https://files.pythonhosted.org/packages/41/b0/33d79e377a336247df6348a54e6d2a2b85d644ca202555e3faa0cf811ecc/pillow-11.3.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0b275ff9b04df7b640c59ec5a3cb113eefd3795a8df80bac69646ef699c6981a", size = 4686116, upload-time = "2025-07-01T09:15:19.423Z" }, + { url = "https://files.pythonhosted.org/packages/49/2d/ed8bc0ab219ae8768f529597d9509d184fe8a6c4741a6864fea334d25f3f/pillow-11.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0743841cabd3dba6a83f38a92672cccbd69af56e3e91777b0ee7f4dba4385632", size = 5864597, upload-time = "2025-07-03T13:10:38.404Z" }, + { url = "https://files.pythonhosted.org/packages/b5/3d/b932bb4225c80b58dfadaca9d42d08d0b7064d2d1791b6a237f87f661834/pillow-11.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2465a69cf967b8b49ee1b96d76718cd98c4e925414ead59fdf75cf0fd07df673", size = 7638246, upload-time = "2025-07-03T13:10:44.987Z" }, + { url = "https://files.pythonhosted.org/packages/09/b5/0487044b7c096f1b48f0d7ad416472c02e0e4bf6919541b111efd3cae690/pillow-11.3.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:41742638139424703b4d01665b807c6468e23e699e8e90cffefe291c5832b027", size = 5973336, upload-time = "2025-07-01T09:15:21.237Z" }, + { url = "https://files.pythonhosted.org/packages/a8/2d/524f9318f6cbfcc79fbc004801ea6b607ec3f843977652fdee4857a7568b/pillow-11.3.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:93efb0b4de7e340d99057415c749175e24c8864302369e05914682ba642e5d77", size = 6642699, upload-time = "2025-07-01T09:15:23.186Z" }, + { url = "https://files.pythonhosted.org/packages/6f/d2/a9a4f280c6aefedce1e8f615baaa5474e0701d86dd6f1dede66726462bbd/pillow-11.3.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7966e38dcd0fa11ca390aed7c6f20454443581d758242023cf36fcb319b1a874", size = 6083789, upload-time = "2025-07-01T09:15:25.1Z" }, + { url = "https://files.pythonhosted.org/packages/fe/54/86b0cd9dbb683a9d5e960b66c7379e821a19be4ac5810e2e5a715c09a0c0/pillow-11.3.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:98a9afa7b9007c67ed84c57c9e0ad86a6000da96eaa638e4f8abe5b65ff83f0a", size = 6720386, upload-time = "2025-07-01T09:15:27.378Z" }, + { url = "https://files.pythonhosted.org/packages/e7/95/88efcaf384c3588e24259c4203b909cbe3e3c2d887af9e938c2022c9dd48/pillow-11.3.0-cp314-cp314-win32.whl", hash = "sha256:02a723e6bf909e7cea0dac1b0e0310be9d7650cd66222a5f1c571455c0a45214", size = 6370911, upload-time = "2025-07-01T09:15:29.294Z" }, + { url = "https://files.pythonhosted.org/packages/2e/cc/934e5820850ec5eb107e7b1a72dd278140731c669f396110ebc326f2a503/pillow-11.3.0-cp314-cp314-win_amd64.whl", hash = "sha256:a418486160228f64dd9e9efcd132679b7a02a5f22c982c78b6fc7dab3fefb635", size = 7117383, upload-time = "2025-07-01T09:15:31.128Z" }, + { url = "https://files.pythonhosted.org/packages/d6/e9/9c0a616a71da2a5d163aa37405e8aced9a906d574b4a214bede134e731bc/pillow-11.3.0-cp314-cp314-win_arm64.whl", hash = "sha256:155658efb5e044669c08896c0c44231c5e9abcaadbc5cd3648df2f7c0b96b9a6", size = 2511385, upload-time = "2025-07-01T09:15:33.328Z" }, + { url = "https://files.pythonhosted.org/packages/1a/33/c88376898aff369658b225262cd4f2659b13e8178e7534df9e6e1fa289f6/pillow-11.3.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:59a03cdf019efbfeeed910bf79c7c93255c3d54bc45898ac2a4140071b02b4ae", size = 5281129, upload-time = "2025-07-01T09:15:35.194Z" }, + { url = "https://files.pythonhosted.org/packages/1f/70/d376247fb36f1844b42910911c83a02d5544ebd2a8bad9efcc0f707ea774/pillow-11.3.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:f8a5827f84d973d8636e9dc5764af4f0cf2318d26744b3d902931701b0d46653", size = 4689580, upload-time = "2025-07-01T09:15:37.114Z" }, + { url = "https://files.pythonhosted.org/packages/eb/1c/537e930496149fbac69efd2fc4329035bbe2e5475b4165439e3be9cb183b/pillow-11.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ee92f2fd10f4adc4b43d07ec5e779932b4eb3dbfbc34790ada5a6669bc095aa6", size = 5902860, upload-time = "2025-07-03T13:10:50.248Z" }, + { url = "https://files.pythonhosted.org/packages/bd/57/80f53264954dcefeebcf9dae6e3eb1daea1b488f0be8b8fef12f79a3eb10/pillow-11.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c96d333dcf42d01f47b37e0979b6bd73ec91eae18614864622d9b87bbd5bbf36", size = 7670694, upload-time = "2025-07-03T13:10:56.432Z" }, + { url = "https://files.pythonhosted.org/packages/70/ff/4727d3b71a8578b4587d9c276e90efad2d6fe0335fd76742a6da08132e8c/pillow-11.3.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4c96f993ab8c98460cd0c001447bff6194403e8b1d7e149ade5f00594918128b", size = 6005888, upload-time = "2025-07-01T09:15:39.436Z" }, + { url = "https://files.pythonhosted.org/packages/05/ae/716592277934f85d3be51d7256f3636672d7b1abfafdc42cf3f8cbd4b4c8/pillow-11.3.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41342b64afeba938edb034d122b2dda5db2139b9a4af999729ba8818e0056477", size = 6670330, upload-time = "2025-07-01T09:15:41.269Z" }, + { url = "https://files.pythonhosted.org/packages/e7/bb/7fe6cddcc8827b01b1a9766f5fdeb7418680744f9082035bdbabecf1d57f/pillow-11.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:068d9c39a2d1b358eb9f245ce7ab1b5c3246c7c8c7d9ba58cfa5b43146c06e50", size = 6114089, upload-time = "2025-07-01T09:15:43.13Z" }, + { url = "https://files.pythonhosted.org/packages/8b/f5/06bfaa444c8e80f1a8e4bff98da9c83b37b5be3b1deaa43d27a0db37ef84/pillow-11.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:a1bc6ba083b145187f648b667e05a2534ecc4b9f2784c2cbe3089e44868f2b9b", size = 6748206, upload-time = "2025-07-01T09:15:44.937Z" }, + { url = "https://files.pythonhosted.org/packages/f0/77/bc6f92a3e8e6e46c0ca78abfffec0037845800ea38c73483760362804c41/pillow-11.3.0-cp314-cp314t-win32.whl", hash = "sha256:118ca10c0d60b06d006be10a501fd6bbdfef559251ed31b794668ed569c87e12", size = 6377370, upload-time = "2025-07-01T09:15:46.673Z" }, + { url = "https://files.pythonhosted.org/packages/4a/82/3a721f7d69dca802befb8af08b7c79ebcab461007ce1c18bd91a5d5896f9/pillow-11.3.0-cp314-cp314t-win_amd64.whl", hash = "sha256:8924748b688aa210d79883357d102cd64690e56b923a186f35a82cbc10f997db", size = 7121500, upload-time = "2025-07-01T09:15:48.512Z" }, + { url = "https://files.pythonhosted.org/packages/89/c7/5572fa4a3f45740eaab6ae86fcdf7195b55beac1371ac8c619d880cfe948/pillow-11.3.0-cp314-cp314t-win_arm64.whl", hash = "sha256:79ea0d14d3ebad43ec77ad5272e6ff9bba5b679ef73375ea760261207fa8e0aa", size = 2512835, upload-time = "2025-07-01T09:15:50.399Z" }, +] + +[[package]] +name = "pluggy" +version = "1.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" }, +] + +[[package]] +name = "propcache" +version = "0.3.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a6/16/43264e4a779dd8588c21a70f0709665ee8f611211bdd2c87d952cfa7c776/propcache-0.3.2.tar.gz", hash = "sha256:20d7d62e4e7ef05f221e0db2856b979540686342e7dd9973b815599c7057e168", size = 44139, upload-time = "2025-06-09T22:56:06.081Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/d1/8c747fafa558c603c4ca19d8e20b288aa0c7cda74e9402f50f31eb65267e/propcache-0.3.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ca592ed634a73ca002967458187109265e980422116c0a107cf93d81f95af945", size = 71286, upload-time = "2025-06-09T22:54:54.369Z" }, + { url = "https://files.pythonhosted.org/packages/61/99/d606cb7986b60d89c36de8a85d58764323b3a5ff07770a99d8e993b3fa73/propcache-0.3.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9ecb0aad4020e275652ba3975740f241bd12a61f1a784df044cf7477a02bc252", size = 42425, upload-time = "2025-06-09T22:54:55.642Z" }, + { url = "https://files.pythonhosted.org/packages/8c/96/ef98f91bbb42b79e9bb82bdd348b255eb9d65f14dbbe3b1594644c4073f7/propcache-0.3.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:7f08f1cc28bd2eade7a8a3d2954ccc673bb02062e3e7da09bc75d843386b342f", size = 41846, upload-time = "2025-06-09T22:54:57.246Z" }, + { url = "https://files.pythonhosted.org/packages/5b/ad/3f0f9a705fb630d175146cd7b1d2bf5555c9beaed54e94132b21aac098a6/propcache-0.3.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1a342c834734edb4be5ecb1e9fb48cb64b1e2320fccbd8c54bf8da8f2a84c33", size = 208871, upload-time = "2025-06-09T22:54:58.975Z" }, + { url = "https://files.pythonhosted.org/packages/3a/38/2085cda93d2c8b6ec3e92af2c89489a36a5886b712a34ab25de9fbca7992/propcache-0.3.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8a544caaae1ac73f1fecfae70ded3e93728831affebd017d53449e3ac052ac1e", size = 215720, upload-time = "2025-06-09T22:55:00.471Z" }, + { url = "https://files.pythonhosted.org/packages/61/c1/d72ea2dc83ac7f2c8e182786ab0fc2c7bd123a1ff9b7975bee671866fe5f/propcache-0.3.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:310d11aa44635298397db47a3ebce7db99a4cc4b9bbdfcf6c98a60c8d5261cf1", size = 215203, upload-time = "2025-06-09T22:55:01.834Z" }, + { url = "https://files.pythonhosted.org/packages/af/81/b324c44ae60c56ef12007105f1460d5c304b0626ab0cc6b07c8f2a9aa0b8/propcache-0.3.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c1396592321ac83157ac03a2023aa6cc4a3cc3cfdecb71090054c09e5a7cce3", size = 206365, upload-time = "2025-06-09T22:55:03.199Z" }, + { url = "https://files.pythonhosted.org/packages/09/73/88549128bb89e66d2aff242488f62869014ae092db63ccea53c1cc75a81d/propcache-0.3.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8cabf5b5902272565e78197edb682017d21cf3b550ba0460ee473753f28d23c1", size = 196016, upload-time = "2025-06-09T22:55:04.518Z" }, + { url = "https://files.pythonhosted.org/packages/b9/3f/3bdd14e737d145114a5eb83cb172903afba7242f67c5877f9909a20d948d/propcache-0.3.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0a2f2235ac46a7aa25bdeb03a9e7060f6ecbd213b1f9101c43b3090ffb971ef6", size = 205596, upload-time = "2025-06-09T22:55:05.942Z" }, + { url = "https://files.pythonhosted.org/packages/0f/ca/2f4aa819c357d3107c3763d7ef42c03980f9ed5c48c82e01e25945d437c1/propcache-0.3.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:92b69e12e34869a6970fd2f3da91669899994b47c98f5d430b781c26f1d9f387", size = 200977, upload-time = "2025-06-09T22:55:07.792Z" }, + { url = "https://files.pythonhosted.org/packages/cd/4a/e65276c7477533c59085251ae88505caf6831c0e85ff8b2e31ebcbb949b1/propcache-0.3.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:54e02207c79968ebbdffc169591009f4474dde3b4679e16634d34c9363ff56b4", size = 197220, upload-time = "2025-06-09T22:55:09.173Z" }, + { url = "https://files.pythonhosted.org/packages/7c/54/fc7152e517cf5578278b242396ce4d4b36795423988ef39bb8cd5bf274c8/propcache-0.3.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4adfb44cb588001f68c5466579d3f1157ca07f7504fc91ec87862e2b8e556b88", size = 210642, upload-time = "2025-06-09T22:55:10.62Z" }, + { url = "https://files.pythonhosted.org/packages/b9/80/abeb4a896d2767bf5f1ea7b92eb7be6a5330645bd7fb844049c0e4045d9d/propcache-0.3.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:fd3e6019dc1261cd0291ee8919dd91fbab7b169bb76aeef6c716833a3f65d206", size = 212789, upload-time = "2025-06-09T22:55:12.029Z" }, + { url = "https://files.pythonhosted.org/packages/b3/db/ea12a49aa7b2b6d68a5da8293dcf50068d48d088100ac016ad92a6a780e6/propcache-0.3.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4c181cad81158d71c41a2bce88edce078458e2dd5ffee7eddd6b05da85079f43", size = 205880, upload-time = "2025-06-09T22:55:13.45Z" }, + { url = "https://files.pythonhosted.org/packages/d1/e5/9076a0bbbfb65d1198007059c65639dfd56266cf8e477a9707e4b1999ff4/propcache-0.3.2-cp313-cp313-win32.whl", hash = "sha256:8a08154613f2249519e549de2330cf8e2071c2887309a7b07fb56098f5170a02", size = 37220, upload-time = "2025-06-09T22:55:15.284Z" }, + { url = "https://files.pythonhosted.org/packages/d3/f5/b369e026b09a26cd77aa88d8fffd69141d2ae00a2abaaf5380d2603f4b7f/propcache-0.3.2-cp313-cp313-win_amd64.whl", hash = "sha256:e41671f1594fc4ab0a6dec1351864713cb3a279910ae8b58f884a88a0a632c05", size = 40678, upload-time = "2025-06-09T22:55:16.445Z" }, + { url = "https://files.pythonhosted.org/packages/a4/3a/6ece377b55544941a08d03581c7bc400a3c8cd3c2865900a68d5de79e21f/propcache-0.3.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:9a3cf035bbaf035f109987d9d55dc90e4b0e36e04bbbb95af3055ef17194057b", size = 76560, upload-time = "2025-06-09T22:55:17.598Z" }, + { url = "https://files.pythonhosted.org/packages/0c/da/64a2bb16418740fa634b0e9c3d29edff1db07f56d3546ca2d86ddf0305e1/propcache-0.3.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:156c03d07dc1323d8dacaa221fbe028c5c70d16709cdd63502778e6c3ccca1b0", size = 44676, upload-time = "2025-06-09T22:55:18.922Z" }, + { url = "https://files.pythonhosted.org/packages/36/7b/f025e06ea51cb72c52fb87e9b395cced02786610b60a3ed51da8af017170/propcache-0.3.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:74413c0ba02ba86f55cf60d18daab219f7e531620c15f1e23d95563f505efe7e", size = 44701, upload-time = "2025-06-09T22:55:20.106Z" }, + { url = "https://files.pythonhosted.org/packages/a4/00/faa1b1b7c3b74fc277f8642f32a4c72ba1d7b2de36d7cdfb676db7f4303e/propcache-0.3.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f066b437bb3fa39c58ff97ab2ca351db465157d68ed0440abecb21715eb24b28", size = 276934, upload-time = "2025-06-09T22:55:21.5Z" }, + { url = "https://files.pythonhosted.org/packages/74/ab/935beb6f1756e0476a4d5938ff44bf0d13a055fed880caf93859b4f1baf4/propcache-0.3.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f1304b085c83067914721e7e9d9917d41ad87696bf70f0bc7dee450e9c71ad0a", size = 278316, upload-time = "2025-06-09T22:55:22.918Z" }, + { url = "https://files.pythonhosted.org/packages/f8/9d/994a5c1ce4389610838d1caec74bdf0e98b306c70314d46dbe4fcf21a3e2/propcache-0.3.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ab50cef01b372763a13333b4e54021bdcb291fc9a8e2ccb9c2df98be51bcde6c", size = 282619, upload-time = "2025-06-09T22:55:24.651Z" }, + { url = "https://files.pythonhosted.org/packages/2b/00/a10afce3d1ed0287cef2e09506d3be9822513f2c1e96457ee369adb9a6cd/propcache-0.3.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fad3b2a085ec259ad2c2842666b2a0a49dea8463579c606426128925af1ed725", size = 265896, upload-time = "2025-06-09T22:55:26.049Z" }, + { url = "https://files.pythonhosted.org/packages/2e/a8/2aa6716ffa566ca57c749edb909ad27884680887d68517e4be41b02299f3/propcache-0.3.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:261fa020c1c14deafd54c76b014956e2f86991af198c51139faf41c4d5e83892", size = 252111, upload-time = "2025-06-09T22:55:27.381Z" }, + { url = "https://files.pythonhosted.org/packages/36/4f/345ca9183b85ac29c8694b0941f7484bf419c7f0fea2d1e386b4f7893eed/propcache-0.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:46d7f8aa79c927e5f987ee3a80205c987717d3659f035c85cf0c3680526bdb44", size = 268334, upload-time = "2025-06-09T22:55:28.747Z" }, + { url = "https://files.pythonhosted.org/packages/3e/ca/fcd54f78b59e3f97b3b9715501e3147f5340167733d27db423aa321e7148/propcache-0.3.2-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:6d8f3f0eebf73e3c0ff0e7853f68be638b4043c65a70517bb575eff54edd8dbe", size = 255026, upload-time = "2025-06-09T22:55:30.184Z" }, + { url = "https://files.pythonhosted.org/packages/8b/95/8e6a6bbbd78ac89c30c225210a5c687790e532ba4088afb8c0445b77ef37/propcache-0.3.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:03c89c1b14a5452cf15403e291c0ccd7751d5b9736ecb2c5bab977ad6c5bcd81", size = 250724, upload-time = "2025-06-09T22:55:31.646Z" }, + { url = "https://files.pythonhosted.org/packages/ee/b0/0dd03616142baba28e8b2d14ce5df6631b4673850a3d4f9c0f9dd714a404/propcache-0.3.2-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:0cc17efde71e12bbaad086d679ce575268d70bc123a5a71ea7ad76f70ba30bba", size = 268868, upload-time = "2025-06-09T22:55:33.209Z" }, + { url = "https://files.pythonhosted.org/packages/c5/98/2c12407a7e4fbacd94ddd32f3b1e3d5231e77c30ef7162b12a60e2dd5ce3/propcache-0.3.2-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:acdf05d00696bc0447e278bb53cb04ca72354e562cf88ea6f9107df8e7fd9770", size = 271322, upload-time = "2025-06-09T22:55:35.065Z" }, + { url = "https://files.pythonhosted.org/packages/35/91/9cb56efbb428b006bb85db28591e40b7736847b8331d43fe335acf95f6c8/propcache-0.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4445542398bd0b5d32df908031cb1b30d43ac848e20470a878b770ec2dcc6330", size = 265778, upload-time = "2025-06-09T22:55:36.45Z" }, + { url = "https://files.pythonhosted.org/packages/9a/4c/b0fe775a2bdd01e176b14b574be679d84fc83958335790f7c9a686c1f468/propcache-0.3.2-cp313-cp313t-win32.whl", hash = "sha256:f86e5d7cd03afb3a1db8e9f9f6eff15794e79e791350ac48a8c924e6f439f394", size = 41175, upload-time = "2025-06-09T22:55:38.436Z" }, + { url = "https://files.pythonhosted.org/packages/a4/ff/47f08595e3d9b5e149c150f88d9714574f1a7cbd89fe2817158a952674bf/propcache-0.3.2-cp313-cp313t-win_amd64.whl", hash = "sha256:9704bedf6e7cbe3c65eca4379a9b53ee6a83749f047808cbb5044d40d7d72198", size = 44857, upload-time = "2025-06-09T22:55:39.687Z" }, + { url = "https://files.pythonhosted.org/packages/cc/35/cc0aaecf278bb4575b8555f2b137de5ab821595ddae9da9d3cd1da4072c7/propcache-0.3.2-py3-none-any.whl", hash = "sha256:98f1ec44fb675f5052cccc8e609c46ed23a35a1cfd18545ad4e29002d858a43f", size = 12663, upload-time = "2025-06-09T22:56:04.484Z" }, +] + +[[package]] +name = "pyclipper" +version = "1.3.0.post6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/4a/b2/550fe500e49c464d73fabcb8cb04d47e4885d6ca4cfc1f5b0a125a95b19a/pyclipper-1.3.0.post6.tar.gz", hash = "sha256:42bff0102fa7a7f2abdd795a2594654d62b786d0c6cd67b72d469114fdeb608c", size = 165909, upload-time = "2024-10-18T12:23:09.069Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8c/b3/75232906bd13f869600d23bdb8fe6903cc899fa7e96981ae4c9b7d9c409e/pyclipper-1.3.0.post6-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:f129284d2c7bcd213d11c0f35e1ae506a1144ce4954e9d1734d63b120b0a1b58", size = 268254, upload-time = "2024-10-18T12:22:22.272Z" }, + { url = "https://files.pythonhosted.org/packages/0b/db/35843050a3dd7586781497a21ca6c8d48111afb66061cb40c3d3c288596d/pyclipper-1.3.0.post6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:188fbfd1d30d02247f92c25ce856f5f3c75d841251f43367dbcf10935bc48f38", size = 142204, upload-time = "2024-10-18T12:22:24.315Z" }, + { url = "https://files.pythonhosted.org/packages/7c/d7/1faa0ff35caa02cb32cb0583688cded3f38788f33e02bfe6461fbcc1bee1/pyclipper-1.3.0.post6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6d129d0c2587f2f5904d201a4021f859afbb45fada4261c9fdedb2205b09d23", size = 943835, upload-time = "2024-10-18T12:22:26.233Z" }, + { url = "https://files.pythonhosted.org/packages/31/10/c0bf140bee2844e2c0617fdcc8a4e8daf98e71710046b06034e6f1963404/pyclipper-1.3.0.post6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5c9c80b5c46eef38ba3f12dd818dc87f5f2a0853ba914b6f91b133232315f526", size = 962510, upload-time = "2024-10-18T12:22:27.573Z" }, + { url = "https://files.pythonhosted.org/packages/85/6f/8c6afc49b51b1bf16d5903ecd5aee657cf88f52c83cb5fabf771deeba728/pyclipper-1.3.0.post6-cp313-cp313-win32.whl", hash = "sha256:b15113ec4fc423b58e9ae80aa95cf5a0802f02d8f02a98a46af3d7d66ff0cc0e", size = 98836, upload-time = "2024-10-18T12:22:29.157Z" }, + { url = "https://files.pythonhosted.org/packages/d5/19/9ff4551b42f2068686c50c0d199072fa67aee57fc5cf86770cacf71efda3/pyclipper-1.3.0.post6-cp313-cp313-win_amd64.whl", hash = "sha256:e5ff68fa770ac654c7974fc78792978796f068bd274e95930c0691c31e192889", size = 109672, upload-time = "2024-10-18T12:22:30.411Z" }, +] + +[[package]] +name = "pydantic" +version = "2.11.7" +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/00/dd/4325abf92c39ba8623b5af936ddb36ffcfe0beae70405d456ab1fb2f5b8c/pydantic-2.11.7.tar.gz", hash = "sha256:d989c3c6cb79469287b1569f7447a17848c998458d49ebe294e975b9baf0f0db", size = 788350, upload-time = "2025-06-14T08:33:17.137Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/c0/ec2b1c8712ca690e5d61979dee872603e92b8a32f94cc1b72d53beab008a/pydantic-2.11.7-py3-none-any.whl", hash = "sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b", size = 444782, upload-time = "2025-06-14T08:33:14.905Z" }, +] + +[[package]] +name = "pydantic-core" +version = "2.33.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ad/88/5f2260bdfae97aabf98f1778d43f69574390ad787afb646292a638c923d4/pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc", size = 435195, upload-time = "2025-04-23T18:33:52.104Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/8c/99040727b41f56616573a28771b1bfa08a3d3fe74d3d513f01251f79f172/pydantic_core-2.33.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f", size = 2015688, upload-time = "2025-04-23T18:31:53.175Z" }, + { url = "https://files.pythonhosted.org/packages/3a/cc/5999d1eb705a6cefc31f0b4a90e9f7fc400539b1a1030529700cc1b51838/pydantic_core-2.33.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6", size = 1844808, upload-time = "2025-04-23T18:31:54.79Z" }, + { url = "https://files.pythonhosted.org/packages/6f/5e/a0a7b8885c98889a18b6e376f344da1ef323d270b44edf8174d6bce4d622/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef", size = 1885580, upload-time = "2025-04-23T18:31:57.393Z" }, + { url = "https://files.pythonhosted.org/packages/3b/2a/953581f343c7d11a304581156618c3f592435523dd9d79865903272c256a/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a", size = 1973859, upload-time = "2025-04-23T18:31:59.065Z" }, + { url = "https://files.pythonhosted.org/packages/e6/55/f1a813904771c03a3f97f676c62cca0c0a4138654107c1b61f19c644868b/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916", size = 2120810, upload-time = "2025-04-23T18:32:00.78Z" }, + { url = "https://files.pythonhosted.org/packages/aa/c3/053389835a996e18853ba107a63caae0b9deb4a276c6b472931ea9ae6e48/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a", size = 2676498, upload-time = "2025-04-23T18:32:02.418Z" }, + { url = "https://files.pythonhosted.org/packages/eb/3c/f4abd740877a35abade05e437245b192f9d0ffb48bbbbd708df33d3cda37/pydantic_core-2.33.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d", size = 2000611, upload-time = "2025-04-23T18:32:04.152Z" }, + { url = "https://files.pythonhosted.org/packages/59/a7/63ef2fed1837d1121a894d0ce88439fe3e3b3e48c7543b2a4479eb99c2bd/pydantic_core-2.33.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56", size = 2107924, upload-time = "2025-04-23T18:32:06.129Z" }, + { url = "https://files.pythonhosted.org/packages/04/8f/2551964ef045669801675f1cfc3b0d74147f4901c3ffa42be2ddb1f0efc4/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5", size = 2063196, upload-time = "2025-04-23T18:32:08.178Z" }, + { url = "https://files.pythonhosted.org/packages/26/bd/d9602777e77fc6dbb0c7db9ad356e9a985825547dce5ad1d30ee04903918/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e", size = 2236389, upload-time = "2025-04-23T18:32:10.242Z" }, + { url = "https://files.pythonhosted.org/packages/42/db/0e950daa7e2230423ab342ae918a794964b053bec24ba8af013fc7c94846/pydantic_core-2.33.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162", size = 2239223, upload-time = "2025-04-23T18:32:12.382Z" }, + { url = "https://files.pythonhosted.org/packages/58/4d/4f937099c545a8a17eb52cb67fe0447fd9a373b348ccfa9a87f141eeb00f/pydantic_core-2.33.2-cp313-cp313-win32.whl", hash = "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849", size = 1900473, upload-time = "2025-04-23T18:32:14.034Z" }, + { url = "https://files.pythonhosted.org/packages/a0/75/4a0a9bac998d78d889def5e4ef2b065acba8cae8c93696906c3a91f310ca/pydantic_core-2.33.2-cp313-cp313-win_amd64.whl", hash = "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9", size = 1955269, upload-time = "2025-04-23T18:32:15.783Z" }, + { url = "https://files.pythonhosted.org/packages/f9/86/1beda0576969592f1497b4ce8e7bc8cbdf614c352426271b1b10d5f0aa64/pydantic_core-2.33.2-cp313-cp313-win_arm64.whl", hash = "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9", size = 1893921, upload-time = "2025-04-23T18:32:18.473Z" }, + { url = "https://files.pythonhosted.org/packages/a4/7d/e09391c2eebeab681df2b74bfe6c43422fffede8dc74187b2b0bf6fd7571/pydantic_core-2.33.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac", size = 1806162, upload-time = "2025-04-23T18:32:20.188Z" }, + { url = "https://files.pythonhosted.org/packages/f1/3d/847b6b1fed9f8ed3bb95a9ad04fbd0b212e832d4f0f50ff4d9ee5a9f15cf/pydantic_core-2.33.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5", size = 1981560, upload-time = "2025-04-23T18:32:22.354Z" }, + { url = "https://files.pythonhosted.org/packages/6f/9a/e73262f6c6656262b5fdd723ad90f518f579b7bc8622e43a942eec53c938/pydantic_core-2.33.2-cp313-cp313t-win_amd64.whl", hash = "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9", size = 1935777, upload-time = "2025-04-23T18:32:25.088Z" }, +] + +[[package]] +name = "pydantic-settings" +version = "2.10.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/68/85/1ea668bbab3c50071ca613c6ab30047fb36ab0da1b92fa8f17bbc38fd36c/pydantic_settings-2.10.1.tar.gz", hash = "sha256:06f0062169818d0f5524420a360d632d5857b83cffd4d42fe29597807a1614ee", size = 172583, upload-time = "2025-06-24T13:26:46.841Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/58/f0/427018098906416f580e3cf1366d3b1abfb408a0652e9f31600c24a1903c/pydantic_settings-2.10.1-py3-none-any.whl", hash = "sha256:a60952460b99cf661dc25c29c0ef171721f98bfcb52ef8d9ea4c943d7c8cc796", size = 45235, upload-time = "2025-06-24T13:26:45.485Z" }, +] + +[[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 = "pylatexenc" +version = "2.10" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/5d/ab/34ec41718af73c00119d0351b7a2531d2ebddb51833a36448fc7b862be60/pylatexenc-2.10.tar.gz", hash = "sha256:3dd8fd84eb46dc30bee1e23eaab8d8fb5a7f507347b23e5f38ad9675c84f40d3", size = 162597, upload-time = "2021-04-06T07:56:07.854Z" } + +[[package]] +name = "pypdfium2" +version = "4.30.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/55/d4/905e621c62598a08168c272b42fc00136c8861cfce97afb2a1ecbd99487a/pypdfium2-4.30.1.tar.gz", hash = "sha256:5f5c7c6d03598e107d974f66b220a49436aceb191da34cda5f692be098a814ce", size = 164854, upload-time = "2024-12-19T19:28:11.459Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/30/8e/3ce0856b3af0f058dd3655ce57d31d1dbde4d4bd0e172022ffbf1b58a4b9/pypdfium2-4.30.1-py3-none-macosx_10_13_x86_64.whl", hash = "sha256:e07c47633732cc18d890bb7e965ad28a9c5a932e548acb928596f86be2e5ae37", size = 2889836, upload-time = "2024-12-19T19:27:39.531Z" }, + { url = "https://files.pythonhosted.org/packages/c2/6a/f6995b21f9c6c155487ce7df70632a2df1ba49efcb291b9943ea45f28b15/pypdfium2-4.30.1-py3-none-macosx_11_0_arm64.whl", hash = "sha256:5ea2d44e96d361123b67b00f527017aa9c847c871b5714e013c01c3eb36a79fe", size = 2769232, upload-time = "2024-12-19T19:27:43.227Z" }, + { url = "https://files.pythonhosted.org/packages/53/91/79060923148e6d380b8a299b32bba46d70aac5fe1cd4f04320bcbd1a48d3/pypdfium2-4.30.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1de7a3a36803171b3f66911131046d65a732f9e7834438191cb58235e6163c4e", size = 2847531, upload-time = "2024-12-19T19:27:46.372Z" }, + { url = "https://files.pythonhosted.org/packages/a8/6c/93507f87c159e747eaab54352c0fccbaec3f1b3749d0bb9085a47899f898/pypdfium2-4.30.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b8a4231efb13170354f568c722d6540b8d5b476b08825586d48ef70c40d16e03", size = 2636266, upload-time = "2024-12-19T19:27:49.767Z" }, + { url = "https://files.pythonhosted.org/packages/24/dc/d56f74a092f2091e328d6485f16562e2fc51cffb0ad6d5c616d80c1eb53c/pypdfium2-4.30.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6f434a4934e8244aa95343ffcf24e9ad9f120dbb4785f631bb40a88c39292493", size = 2919296, upload-time = "2024-12-19T19:27:51.767Z" }, + { url = "https://files.pythonhosted.org/packages/be/d9/a2f1ee03d47fbeb48bcfde47ed7155772739622cfadf7135a84ba6a97824/pypdfium2-4.30.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f454032a0bc7681900170f67d8711b3942824531e765f91c2f5ce7937f999794", size = 2866119, upload-time = "2024-12-19T19:27:53.561Z" }, + { url = "https://files.pythonhosted.org/packages/01/47/6aa019c32aa39d3f33347c458c0c5887e84096cbe444456402bc97e66704/pypdfium2-4.30.1-py3-none-musllinux_1_1_aarch64.whl", hash = "sha256:bbf9130a72370ee9d602e39949b902db669a2a1c24746a91e5586eb829055d9f", size = 6228684, upload-time = "2024-12-19T19:27:56.781Z" }, + { url = "https://files.pythonhosted.org/packages/4c/07/2954c15b3f7c85ceb80cad36757fd41b3aba0dd14e68f4bed9ce3f2e7e74/pypdfium2-4.30.1-py3-none-musllinux_1_1_i686.whl", hash = "sha256:5cb52884b1583b96e94fd78542c63bb42e06df5e8f9e52f8f31f5ad5a1e53367", size = 6231815, upload-time = "2024-12-19T19:28:00.351Z" }, + { url = "https://files.pythonhosted.org/packages/b4/9b/b4667e95754624f4af5a912001abba90c046e1c80d4a4e887f0af664ffec/pypdfium2-4.30.1-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:1a9e372bd4867ff223cc8c338e33fe11055dad12f22885950fc27646cc8d9122", size = 6313429, upload-time = "2024-12-19T19:28:02.536Z" }, + { url = "https://files.pythonhosted.org/packages/43/38/f9e77cf55ba5546a39fa659404b78b97de2ca344848271e7731efb0954cd/pypdfium2-4.30.1-py3-none-win32.whl", hash = "sha256:421f1cf205e213e07c1f2934905779547f4f4a2ff2f59dde29da3d511d3fc806", size = 2834989, upload-time = "2024-12-19T19:28:04.657Z" }, + { url = "https://files.pythonhosted.org/packages/a4/f3/8d3a350efb4286b5ebdabcf6736f51d8e3b10dbe68804c6930b00f5cf329/pypdfium2-4.30.1-py3-none-win_amd64.whl", hash = "sha256:598a7f20264ab5113853cba6d86c4566e4356cad037d7d1f849c8c9021007e05", size = 2960157, upload-time = "2024-12-19T19:28:07.772Z" }, + { url = "https://files.pythonhosted.org/packages/e1/6b/2706497c86e8d69fb76afe5ea857fe1794621aa0f3b1d863feb953fe0f22/pypdfium2-4.30.1-py3-none-win_arm64.whl", hash = "sha256:c2b6d63f6d425d9416c08d2511822b54b8e3ac38e639fc41164b1d75584b3a8c", size = 2814810, upload-time = "2024-12-19T19:28:09.857Z" }, +] + +[[package]] +name = "python-bidi" +version = "0.6.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c4/de/1822200711beaadb2f334fa25f59ad9c2627de423c103dde7e81aedbc8e2/python_bidi-0.6.6.tar.gz", hash = "sha256:07db4c7da502593bd6e39c07b3a38733704070de0cbf92a7b7277b7be8867dd9", size = 45102, upload-time = "2025-02-18T21:43:05.598Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a5/b1/b24cb64b441dadd911b39d8b86a91606481f84be1b3f01ffca3f9847a4f1/python_bidi-0.6.6-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:61cf12f6b7d0b9bb37838a5f045e6acbd91e838b57f0369c55319bb3969ffa4d", size = 266728, upload-time = "2025-02-18T21:42:07.711Z" }, + { url = "https://files.pythonhosted.org/packages/0c/19/d4d449dcdc5eb72b6ffb97b34db710ea307682cae065fbe83a0e42fee00a/python_bidi-0.6.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:33bd0ba5eedf18315a1475ac0f215b5134e48011b7320aedc2fb97df31d4e5bf", size = 261475, upload-time = "2025-02-18T21:41:54.315Z" }, + { url = "https://files.pythonhosted.org/packages/0a/87/4ecaecf7cc17443129b0f3a967b6f455c0d773b58d68b93c5949a91a0b8b/python_bidi-0.6.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c9f798dd49b24bb1a9d90f065ef25c7bffa94c04c554f1fc02d0aea0a9b10b0", size = 290153, upload-time = "2025-02-18T21:40:38.099Z" }, + { url = "https://files.pythonhosted.org/packages/42/6e/4b57a3dba455f42fa82a9b5caf3d35535bd6eb644a37a031ac1d5e8b6a3e/python_bidi-0.6.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:43a0409570c618d93706dc875b1d33b4adfe67144f6f2ebeb32d85d8bbdb85ed", size = 297567, upload-time = "2025-02-18T21:40:52.135Z" }, + { url = "https://files.pythonhosted.org/packages/39/39/dc9ce9b15888b6391206d77fc36fd23447fb5313aee1fa1031432b2a4072/python_bidi-0.6.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ada1aecd32773c61b16f7c9f74d9ec1b57ea433e2083e08ca387c5cd4b0ceaed", size = 351186, upload-time = "2025-02-18T21:41:05.739Z" }, + { url = "https://files.pythonhosted.org/packages/9e/66/cc9795903be4ce781b89fa4fe0e493369d58cd0fc0dda9287ab227d410d3/python_bidi-0.6.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:125a815f2b20313a2f6d331aa84abdd07de7d270985b056e6729390a4cda90df", size = 329159, upload-time = "2025-02-18T21:41:17.919Z" }, + { url = "https://files.pythonhosted.org/packages/ca/40/071dc08645daa09cb8c008db888141998a895d2d1ed03ba780971b595297/python_bidi-0.6.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:183fee39bd2de787f632376bd5ba0d5f1daf6a09d3ebfaa211df25d62223e531", size = 291743, upload-time = "2025-02-18T21:41:40.996Z" }, + { url = "https://files.pythonhosted.org/packages/17/5a/5f60915a9f73f48df27bf262a210fa66ea8ffe5fd0072c67288e55e3304e/python_bidi-0.6.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:c4e08753d32d633f5ecb5eb02624272eeffaa6d5c6f4f9ddf012637bcaabfc0a", size = 306568, upload-time = "2025-02-18T21:41:30.549Z" }, + { url = "https://files.pythonhosted.org/packages/9e/01/03341516d895ee937036d38ab4f9987857b1066f7c267b99963ee056eb9e/python_bidi-0.6.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d1dcd7a82ae00b86821fce627e310791f56da90924f15877cfda844e340679de", size = 463890, upload-time = "2025-02-18T21:42:18.705Z" }, + { url = "https://files.pythonhosted.org/packages/4f/a8/36bb9553e00d33acee2d2d447b60bccb0aad5c1d589cd364ddd95d9b876b/python_bidi-0.6.6-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:5506ba56380140b3cb3504029de014d21eb8874c5e081d88495f8775f6ed90bc", size = 555980, upload-time = "2025-02-18T21:42:30.936Z" }, + { url = "https://files.pythonhosted.org/packages/46/05/88aa85522472afda215a6b436eaa0aac6bbe9e29a64db0f99f61d1aa6527/python_bidi-0.6.6-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:207b0a7082ec38045910d37700a0dd73c10d4ffccb22a4fd0391d7e9ce241672", size = 483881, upload-time = "2025-02-18T21:42:44.379Z" }, + { url = "https://files.pythonhosted.org/packages/48/7e/f813de1a92e10c302649134ea3a8c6429f9c2e5dd161e82e88f08b4c7565/python_bidi-0.6.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:686642a52acdeffb1d9a593a284d07b175c63877c596fa3ccceeb2649ced1dd8", size = 458296, upload-time = "2025-02-18T21:42:57.775Z" }, + { url = "https://files.pythonhosted.org/packages/e9/ea/a775bec616ec01d9a0df7d5a6e1b3729285dd5e7f1fdb0dfce2e0604c6a3/python_bidi-0.6.6-cp313-cp313-win32.whl", hash = "sha256:485f2ee109e7aa73efc165b90a6d90da52546801413540c08b7133fe729d5e0a", size = 155033, upload-time = "2025-02-18T21:43:18.737Z" }, + { url = "https://files.pythonhosted.org/packages/74/79/3323f08c98b9a5b726303b68babdd26cf4fe710709b7c61c96e6bb4f3d10/python_bidi-0.6.6-cp313-cp313-win_amd64.whl", hash = "sha256:63f7a9eaec31078e7611ab958b6e18e796c05b63ca50c1f7298311dc1e15ac3e", size = 159973, upload-time = "2025-02-18T21:43:10.431Z" }, +] + +[[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.1.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f6/b0/4bc07ccd3572a2f9df7e6782f52b0c6c90dcbb803ac4a167702d7d0dfe1e/python_dotenv-1.1.1.tar.gz", hash = "sha256:a8a6399716257f45be6a007360200409fce5cda2661e3dec71d23dc15f6189ab", size = 41978, upload-time = "2025-06-24T04:21:07.341Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5f/ed/539768cf28c661b5b068d66d96a2f155c4971a5d55684a514c1a0e0dec2f/python_dotenv-1.1.1-py3-none-any.whl", hash = "sha256:31f23644fe2602f88ff55e1f5c79ba497e01224ee7737937930c448e4d0e24dc", size = 20556, upload-time = "2025-06-24T04:21:06.073Z" }, +] + +[[package]] +name = "python-multipart" +version = "0.0.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f3/87/f44d7c9f274c7ee665a29b885ec97089ec5dc034c7f3fafa03da9e39a09e/python_multipart-0.0.20.tar.gz", hash = "sha256:8dd0cab45b8e23064ae09147625994d090fa46f5b0d1e13af944c331a7fa9d13", size = 37158, upload-time = "2024-12-16T19:45:46.972Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/45/58/38b5afbc1a800eeea951b9285d3912613f2603bdf897a4ab0f4bd7f405fc/python_multipart-0.0.20-py3-none-any.whl", hash = "sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104", size = 24546, upload-time = "2024-12-16T19:45:44.423Z" }, +] + +[[package]] +name = "python-pptx" +version = "1.0.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "lxml" }, + { name = "pillow" }, + { name = "typing-extensions" }, + { name = "xlsxwriter" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/52/a9/0c0db8d37b2b8a645666f7fd8accea4c6224e013c42b1d5c17c93590cd06/python_pptx-1.0.2.tar.gz", hash = "sha256:479a8af0eaf0f0d76b6f00b0887732874ad2e3188230315290cd1f9dd9cc7095", size = 10109297, upload-time = "2024-08-07T17:33:37.772Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d9/4f/00be2196329ebbff56ce564aa94efb0fbc828d00de250b1980de1a34ab49/python_pptx-1.0.2-py3-none-any.whl", hash = "sha256:160838e0b8565a8b1f67947675886e9fea18aa5e795db7ae531606d68e785cba", size = 472788, upload-time = "2024-08-07T17:33:28.192Z" }, +] + +[[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 = "310" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1c/09/9c1b978ffc4ae53999e89c19c77ba882d9fce476729f23ef55211ea1c034/pywin32-310-cp313-cp313-win32.whl", hash = "sha256:5d241a659c496ada3253cd01cfaa779b048e90ce4b2b38cd44168ad555ce74ab", size = 8794384, upload-time = "2025-03-17T00:56:04.383Z" }, + { url = "https://files.pythonhosted.org/packages/45/3c/b4640f740ffebadd5d34df35fecba0e1cfef8fde9f3e594df91c28ad9b50/pywin32-310-cp313-cp313-win_amd64.whl", hash = "sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e", size = 9503039, upload-time = "2025-03-17T00:56:06.207Z" }, + { url = "https://files.pythonhosted.org/packages/b4/f4/f785020090fb050e7fb6d34b780f2231f302609dc964672f72bfaeb59a28/pywin32-310-cp313-cp313-win_arm64.whl", hash = "sha256:e308f831de771482b7cf692a1f308f8fca701b2d8f9dde6cc440c7da17e47b33", size = 8458152, upload-time = "2025-03-17T00:56:07.819Z" }, +] + +[[package]] +name = "pyyaml" +version = "6.0.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/54/ed/79a089b6be93607fa5cdaedf301d7dfb23af5f25c398d5ead2525b063e17/pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", size = 130631, upload-time = "2024-08-06T20:33:50.674Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/e3/3af305b830494fa85d95f6d95ef7fa73f2ee1cc8ef5b495c7c3269fb835f/PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", size = 181309, upload-time = "2024-08-06T20:32:43.4Z" }, + { url = "https://files.pythonhosted.org/packages/45/9f/3b1c20a0b7a3200524eb0076cc027a970d320bd3a6592873c85c92a08731/PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", size = 171679, upload-time = "2024-08-06T20:32:44.801Z" }, + { url = "https://files.pythonhosted.org/packages/7c/9a/337322f27005c33bcb656c655fa78325b730324c78620e8328ae28b64d0c/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", size = 733428, upload-time = "2024-08-06T20:32:46.432Z" }, + { url = "https://files.pythonhosted.org/packages/a3/69/864fbe19e6c18ea3cc196cbe5d392175b4cf3d5d0ac1403ec3f2d237ebb5/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", size = 763361, upload-time = "2024-08-06T20:32:51.188Z" }, + { url = "https://files.pythonhosted.org/packages/04/24/b7721e4845c2f162d26f50521b825fb061bc0a5afcf9a386840f23ea19fa/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", size = 759523, upload-time = "2024-08-06T20:32:53.019Z" }, + { url = "https://files.pythonhosted.org/packages/2b/b2/e3234f59ba06559c6ff63c4e10baea10e5e7df868092bf9ab40e5b9c56b6/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", size = 726660, upload-time = "2024-08-06T20:32:54.708Z" }, + { url = "https://files.pythonhosted.org/packages/fe/0f/25911a9f080464c59fab9027482f822b86bf0608957a5fcc6eaac85aa515/PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", size = 751597, upload-time = "2024-08-06T20:32:56.985Z" }, + { url = "https://files.pythonhosted.org/packages/14/0d/e2c3b43bbce3cf6bd97c840b46088a3031085179e596d4929729d8d68270/PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", size = 140527, upload-time = "2024-08-06T20:33:03.001Z" }, + { url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446, upload-time = "2024-08-06T20:33:04.33Z" }, +] + +[[package]] +name = "referencing" +version = "0.36.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2f/db/98b5c277be99dd18bfd91dd04e1b759cad18d1a338188c936e92f921c7e2/referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa", size = 74744, upload-time = "2025-01-25T08:48:16.138Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/b1/3baf80dc6d2b7bc27a95a67752d0208e410351e3feb4eb78de5f77454d8d/referencing-0.36.2-py3-none-any.whl", hash = "sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0", size = 26775, upload-time = "2025-01-25T08:48:14.241Z" }, +] + +[[package]] +name = "regex" +version = "2024.11.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/8e/5f/bd69653fbfb76cf8604468d3b4ec4c403197144c7bfe0e6a5fc9e02a07cb/regex-2024.11.6.tar.gz", hash = "sha256:7ab159b063c52a0333c884e4679f8d7a85112ee3078fe3d9004b2dd875585519", size = 399494, upload-time = "2024-11-06T20:12:31.635Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/90/73/bcb0e36614601016552fa9344544a3a2ae1809dc1401b100eab02e772e1f/regex-2024.11.6-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a6ba92c0bcdf96cbf43a12c717eae4bc98325ca3730f6b130ffa2e3c3c723d84", size = 483525, upload-time = "2024-11-06T20:10:45.19Z" }, + { url = "https://files.pythonhosted.org/packages/0f/3f/f1a082a46b31e25291d830b369b6b0c5576a6f7fb89d3053a354c24b8a83/regex-2024.11.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:525eab0b789891ac3be914d36893bdf972d483fe66551f79d3e27146191a37d4", size = 288324, upload-time = "2024-11-06T20:10:47.177Z" }, + { url = "https://files.pythonhosted.org/packages/09/c9/4e68181a4a652fb3ef5099e077faf4fd2a694ea6e0f806a7737aff9e758a/regex-2024.11.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:086a27a0b4ca227941700e0b31425e7a28ef1ae8e5e05a33826e17e47fbfdba0", size = 284617, upload-time = "2024-11-06T20:10:49.312Z" }, + { url = "https://files.pythonhosted.org/packages/fc/fd/37868b75eaf63843165f1d2122ca6cb94bfc0271e4428cf58c0616786dce/regex-2024.11.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bde01f35767c4a7899b7eb6e823b125a64de314a8ee9791367c9a34d56af18d0", size = 795023, upload-time = "2024-11-06T20:10:51.102Z" }, + { url = "https://files.pythonhosted.org/packages/c4/7c/d4cd9c528502a3dedb5c13c146e7a7a539a3853dc20209c8e75d9ba9d1b2/regex-2024.11.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b583904576650166b3d920d2bcce13971f6f9e9a396c673187f49811b2769dc7", size = 833072, upload-time = "2024-11-06T20:10:52.926Z" }, + { url = "https://files.pythonhosted.org/packages/4f/db/46f563a08f969159c5a0f0e722260568425363bea43bb7ae370becb66a67/regex-2024.11.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c4de13f06a0d54fa0d5ab1b7138bfa0d883220965a29616e3ea61b35d5f5fc7", size = 823130, upload-time = "2024-11-06T20:10:54.828Z" }, + { url = "https://files.pythonhosted.org/packages/db/60/1eeca2074f5b87df394fccaa432ae3fc06c9c9bfa97c5051aed70e6e00c2/regex-2024.11.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3cde6e9f2580eb1665965ce9bf17ff4952f34f5b126beb509fee8f4e994f143c", size = 796857, upload-time = "2024-11-06T20:10:56.634Z" }, + { url = "https://files.pythonhosted.org/packages/10/db/ac718a08fcee981554d2f7bb8402f1faa7e868c1345c16ab1ebec54b0d7b/regex-2024.11.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0d7f453dca13f40a02b79636a339c5b62b670141e63efd511d3f8f73fba162b3", size = 784006, upload-time = "2024-11-06T20:10:59.369Z" }, + { url = "https://files.pythonhosted.org/packages/c2/41/7da3fe70216cea93144bf12da2b87367590bcf07db97604edeea55dac9ad/regex-2024.11.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59dfe1ed21aea057a65c6b586afd2a945de04fc7db3de0a6e3ed5397ad491b07", size = 781650, upload-time = "2024-11-06T20:11:02.042Z" }, + { url = "https://files.pythonhosted.org/packages/a7/d5/880921ee4eec393a4752e6ab9f0fe28009435417c3102fc413f3fe81c4e5/regex-2024.11.6-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b97c1e0bd37c5cd7902e65f410779d39eeda155800b65fc4d04cc432efa9bc6e", size = 789545, upload-time = "2024-11-06T20:11:03.933Z" }, + { url = "https://files.pythonhosted.org/packages/dc/96/53770115e507081122beca8899ab7f5ae28ae790bfcc82b5e38976df6a77/regex-2024.11.6-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f9d1e379028e0fc2ae3654bac3cbbef81bf3fd571272a42d56c24007979bafb6", size = 853045, upload-time = "2024-11-06T20:11:06.497Z" }, + { url = "https://files.pythonhosted.org/packages/31/d3/1372add5251cc2d44b451bd94f43b2ec78e15a6e82bff6a290ef9fd8f00a/regex-2024.11.6-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:13291b39131e2d002a7940fb176e120bec5145f3aeb7621be6534e46251912c4", size = 860182, upload-time = "2024-11-06T20:11:09.06Z" }, + { url = "https://files.pythonhosted.org/packages/ed/e3/c446a64984ea9f69982ba1a69d4658d5014bc7a0ea468a07e1a1265db6e2/regex-2024.11.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f51f88c126370dcec4908576c5a627220da6c09d0bff31cfa89f2523843316d", size = 787733, upload-time = "2024-11-06T20:11:11.256Z" }, + { url = "https://files.pythonhosted.org/packages/2b/f1/e40c8373e3480e4f29f2692bd21b3e05f296d3afebc7e5dcf21b9756ca1c/regex-2024.11.6-cp313-cp313-win32.whl", hash = "sha256:63b13cfd72e9601125027202cad74995ab26921d8cd935c25f09c630436348ff", size = 262122, upload-time = "2024-11-06T20:11:13.161Z" }, + { url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl", hash = "sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a", size = 273545, upload-time = "2024-11-06T20:11:15Z" }, +] + +[[package]] +name = "requests" +version = "2.32.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "charset-normalizer" }, + { name = "idna" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e1/0a/929373653770d8a0d7ea76c37de6e41f11eb07559b103b1c02cafb3f7cf8/requests-2.32.4.tar.gz", hash = "sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422", size = 135258, upload-time = "2025-06-09T16:43:07.34Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7c/e4/56027c4a6b4ae70ca9de302488c5ca95ad4a39e190093d6c1a8ace08341b/requests-2.32.4-py3-none-any.whl", hash = "sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c", size = 64847, upload-time = "2025-06-09T16:43:05.728Z" }, +] + +[[package]] +name = "rich" +version = "14.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/53/830aa4c3066a8ab0ae9a9955976fb770fe9c6102117c8ec4ab3ea62d89e8/rich-14.0.0.tar.gz", hash = "sha256:82f1bc23a6a21ebca4ae0c45af9bdbc492ed20231dcb63f297d6d1021a9d5725", size = 224078, upload-time = "2025-03-30T14:15:14.23Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0d/9b/63f4c7ebc259242c89b3acafdb37b41d1185c07ff0011164674e9076b491/rich-14.0.0-py3-none-any.whl", hash = "sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0", size = 243229, upload-time = "2025-03-30T14:15:12.283Z" }, +] + +[[package]] +name = "rpds-py" +version = "0.26.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a5/aa/4456d84bbb54adc6a916fb10c9b374f78ac840337644e4a5eda229c81275/rpds_py-0.26.0.tar.gz", hash = "sha256:20dae58a859b0906f0685642e591056f1e787f3a8b39c8e8749a45dc7d26bdb0", size = 27385, upload-time = "2025-07-01T15:57:13.958Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/67/bb62d0109493b12b1c6ab00de7a5566aa84c0e44217c2d94bee1bd370da9/rpds_py-0.26.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:696764a5be111b036256c0b18cd29783fab22154690fc698062fc1b0084b511d", size = 363917, upload-time = "2025-07-01T15:54:34.755Z" }, + { url = "https://files.pythonhosted.org/packages/4b/f3/34e6ae1925a5706c0f002a8d2d7f172373b855768149796af87bd65dcdb9/rpds_py-0.26.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1e6c15d2080a63aaed876e228efe4f814bc7889c63b1e112ad46fdc8b368b9e1", size = 350073, upload-time = "2025-07-01T15:54:36.292Z" }, + { url = "https://files.pythonhosted.org/packages/75/83/1953a9d4f4e4de7fd0533733e041c28135f3c21485faaef56a8aadbd96b5/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:390e3170babf42462739a93321e657444f0862c6d722a291accc46f9d21ed04e", size = 384214, upload-time = "2025-07-01T15:54:37.469Z" }, + { url = "https://files.pythonhosted.org/packages/48/0e/983ed1b792b3322ea1d065e67f4b230f3b96025f5ce3878cc40af09b7533/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7da84c2c74c0f5bc97d853d9e17bb83e2dcafcff0dc48286916001cc114379a1", size = 400113, upload-time = "2025-07-01T15:54:38.954Z" }, + { url = "https://files.pythonhosted.org/packages/69/7f/36c0925fff6f660a80be259c5b4f5e53a16851f946eb080351d057698528/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c5fe114a6dd480a510b6d3661d09d67d1622c4bf20660a474507aaee7eeeee9", size = 515189, upload-time = "2025-07-01T15:54:40.57Z" }, + { url = "https://files.pythonhosted.org/packages/13/45/cbf07fc03ba7a9b54662c9badb58294ecfb24f828b9732970bd1a431ed5c/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3100b3090269f3a7ea727b06a6080d4eb7439dca4c0e91a07c5d133bb1727ea7", size = 406998, upload-time = "2025-07-01T15:54:43.025Z" }, + { url = "https://files.pythonhosted.org/packages/6c/b0/8fa5e36e58657997873fd6a1cf621285ca822ca75b4b3434ead047daa307/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c03c9b0c64afd0320ae57de4c982801271c0c211aa2d37f3003ff5feb75bb04", size = 385903, upload-time = "2025-07-01T15:54:44.752Z" }, + { url = "https://files.pythonhosted.org/packages/4b/f7/b25437772f9f57d7a9fbd73ed86d0dcd76b4c7c6998348c070d90f23e315/rpds_py-0.26.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5963b72ccd199ade6ee493723d18a3f21ba7d5b957017607f815788cef50eaf1", size = 419785, upload-time = "2025-07-01T15:54:46.043Z" }, + { url = "https://files.pythonhosted.org/packages/a7/6b/63ffa55743dfcb4baf2e9e77a0b11f7f97ed96a54558fcb5717a4b2cd732/rpds_py-0.26.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9da4e873860ad5bab3291438525cae80169daecbfafe5657f7f5fb4d6b3f96b9", size = 561329, upload-time = "2025-07-01T15:54:47.64Z" }, + { url = "https://files.pythonhosted.org/packages/2f/07/1f4f5e2886c480a2346b1e6759c00278b8a69e697ae952d82ae2e6ee5db0/rpds_py-0.26.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:5afaddaa8e8c7f1f7b4c5c725c0070b6eed0228f705b90a1732a48e84350f4e9", size = 590875, upload-time = "2025-07-01T15:54:48.9Z" }, + { url = "https://files.pythonhosted.org/packages/cc/bc/e6639f1b91c3a55f8c41b47d73e6307051b6e246254a827ede730624c0f8/rpds_py-0.26.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4916dc96489616a6f9667e7526af8fa693c0fdb4f3acb0e5d9f4400eb06a47ba", size = 556636, upload-time = "2025-07-01T15:54:50.619Z" }, + { url = "https://files.pythonhosted.org/packages/05/4c/b3917c45566f9f9a209d38d9b54a1833f2bb1032a3e04c66f75726f28876/rpds_py-0.26.0-cp313-cp313-win32.whl", hash = "sha256:2a343f91b17097c546b93f7999976fd6c9d5900617aa848c81d794e062ab302b", size = 222663, upload-time = "2025-07-01T15:54:52.023Z" }, + { url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl", hash = "sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5", size = 234428, upload-time = "2025-07-01T15:54:53.692Z" }, + { url = "https://files.pythonhosted.org/packages/ed/e8/a47c64ed53149c75fb581e14a237b7b7cd18217e969c30d474d335105622/rpds_py-0.26.0-cp313-cp313-win_arm64.whl", hash = "sha256:257d011919f133a4746958257f2c75238e3ff54255acd5e3e11f3ff41fd14256", size = 222571, upload-time = "2025-07-01T15:54:54.822Z" }, + { url = "https://files.pythonhosted.org/packages/89/bf/3d970ba2e2bcd17d2912cb42874107390f72873e38e79267224110de5e61/rpds_py-0.26.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:529c8156d7506fba5740e05da8795688f87119cce330c244519cf706a4a3d618", size = 360475, upload-time = "2025-07-01T15:54:56.228Z" }, + { url = "https://files.pythonhosted.org/packages/82/9f/283e7e2979fc4ec2d8ecee506d5a3675fce5ed9b4b7cb387ea5d37c2f18d/rpds_py-0.26.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:f53ec51f9d24e9638a40cabb95078ade8c99251945dad8d57bf4aabe86ecee35", size = 346692, upload-time = "2025-07-01T15:54:58.561Z" }, + { url = "https://files.pythonhosted.org/packages/e3/03/7e50423c04d78daf391da3cc4330bdb97042fc192a58b186f2d5deb7befd/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab504c4d654e4a29558eaa5bb8cea5fdc1703ea60a8099ffd9c758472cf913f", size = 379415, upload-time = "2025-07-01T15:54:59.751Z" }, + { url = "https://files.pythonhosted.org/packages/57/00/d11ee60d4d3b16808432417951c63df803afb0e0fc672b5e8d07e9edaaae/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fd0641abca296bc1a00183fe44f7fced8807ed49d501f188faa642d0e4975b83", size = 391783, upload-time = "2025-07-01T15:55:00.898Z" }, + { url = "https://files.pythonhosted.org/packages/08/b3/1069c394d9c0d6d23c5b522e1f6546b65793a22950f6e0210adcc6f97c3e/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b312fecc1d017b5327afa81d4da1480f51c68810963a7336d92203dbb3d4f1", size = 512844, upload-time = "2025-07-01T15:55:02.201Z" }, + { url = "https://files.pythonhosted.org/packages/08/3b/c4fbf0926800ed70b2c245ceca99c49f066456755f5d6eb8863c2c51e6d0/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c741107203954f6fc34d3066d213d0a0c40f7bb5aafd698fb39888af277c70d8", size = 402105, upload-time = "2025-07-01T15:55:03.698Z" }, + { url = "https://files.pythonhosted.org/packages/1c/b0/db69b52ca07413e568dae9dc674627a22297abb144c4d6022c6d78f1e5cc/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc3e55a7db08dc9a6ed5fb7103019d2c1a38a349ac41901f9f66d7f95750942f", size = 383440, upload-time = "2025-07-01T15:55:05.398Z" }, + { url = "https://files.pythonhosted.org/packages/4c/e1/c65255ad5b63903e56b3bb3ff9dcc3f4f5c3badde5d08c741ee03903e951/rpds_py-0.26.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9e851920caab2dbcae311fd28f4313c6953993893eb5c1bb367ec69d9a39e7ed", size = 412759, upload-time = "2025-07-01T15:55:08.316Z" }, + { url = "https://files.pythonhosted.org/packages/e4/22/bb731077872377a93c6e93b8a9487d0406c70208985831034ccdeed39c8e/rpds_py-0.26.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:dfbf280da5f876d0b00c81f26bedce274e72a678c28845453885a9b3c22ae632", size = 556032, upload-time = "2025-07-01T15:55:09.52Z" }, + { url = "https://files.pythonhosted.org/packages/e0/8b/393322ce7bac5c4530fb96fc79cc9ea2f83e968ff5f6e873f905c493e1c4/rpds_py-0.26.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:1cc81d14ddfa53d7f3906694d35d54d9d3f850ef8e4e99ee68bc0d1e5fed9a9c", size = 585416, upload-time = "2025-07-01T15:55:11.216Z" }, + { url = "https://files.pythonhosted.org/packages/49/ae/769dc372211835bf759319a7aae70525c6eb523e3371842c65b7ef41c9c6/rpds_py-0.26.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dca83c498b4650a91efcf7b88d669b170256bf8017a5db6f3e06c2bf031f57e0", size = 554049, upload-time = "2025-07-01T15:55:13.004Z" }, + { url = "https://files.pythonhosted.org/packages/6b/f9/4c43f9cc203d6ba44ce3146246cdc38619d92c7bd7bad4946a3491bd5b70/rpds_py-0.26.0-cp313-cp313t-win32.whl", hash = "sha256:4d11382bcaf12f80b51d790dee295c56a159633a8e81e6323b16e55d81ae37e9", size = 218428, upload-time = "2025-07-01T15:55:14.486Z" }, + { url = "https://files.pythonhosted.org/packages/7e/8b/9286b7e822036a4a977f2f1e851c7345c20528dbd56b687bb67ed68a8ede/rpds_py-0.26.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff110acded3c22c033e637dd8896e411c7d3a11289b2edf041f86663dbc791e9", size = 231524, upload-time = "2025-07-01T15:55:15.745Z" }, + { url = "https://files.pythonhosted.org/packages/55/07/029b7c45db910c74e182de626dfdae0ad489a949d84a468465cd0ca36355/rpds_py-0.26.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:da619979df60a940cd434084355c514c25cf8eb4cf9a508510682f6c851a4f7a", size = 364292, upload-time = "2025-07-01T15:55:17.001Z" }, + { url = "https://files.pythonhosted.org/packages/13/d1/9b3d3f986216b4d1f584878dca15ce4797aaf5d372d738974ba737bf68d6/rpds_py-0.26.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ea89a2458a1a75f87caabefe789c87539ea4e43b40f18cff526052e35bbb4fdf", size = 350334, upload-time = "2025-07-01T15:55:18.922Z" }, + { url = "https://files.pythonhosted.org/packages/18/98/16d5e7bc9ec715fa9668731d0cf97f6b032724e61696e2db3d47aeb89214/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feac1045b3327a45944e7dcbeb57530339f6b17baff154df51ef8b0da34c8c12", size = 384875, upload-time = "2025-07-01T15:55:20.399Z" }, + { url = "https://files.pythonhosted.org/packages/f9/13/aa5e2b1ec5ab0e86a5c464d53514c0467bec6ba2507027d35fc81818358e/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b818a592bd69bfe437ee8368603d4a2d928c34cffcdf77c2e761a759ffd17d20", size = 399993, upload-time = "2025-07-01T15:55:21.729Z" }, + { url = "https://files.pythonhosted.org/packages/17/03/8021810b0e97923abdbab6474c8b77c69bcb4b2c58330777df9ff69dc559/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1a8b0dd8648709b62d9372fc00a57466f5fdeefed666afe3fea5a6c9539a0331", size = 516683, upload-time = "2025-07-01T15:55:22.918Z" }, + { url = "https://files.pythonhosted.org/packages/dc/b1/da8e61c87c2f3d836954239fdbbfb477bb7b54d74974d8f6fcb34342d166/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6d3498ad0df07d81112aa6ec6c95a7e7b1ae00929fb73e7ebee0f3faaeabad2f", size = 408825, upload-time = "2025-07-01T15:55:24.207Z" }, + { url = "https://files.pythonhosted.org/packages/38/bc/1fc173edaaa0e52c94b02a655db20697cb5fa954ad5a8e15a2c784c5cbdd/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24a4146ccb15be237fdef10f331c568e1b0e505f8c8c9ed5d67759dac58ac246", size = 387292, upload-time = "2025-07-01T15:55:25.554Z" }, + { url = "https://files.pythonhosted.org/packages/7c/eb/3a9bb4bd90867d21916f253caf4f0d0be7098671b6715ad1cead9fe7bab9/rpds_py-0.26.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a9a63785467b2d73635957d32a4f6e73d5e4df497a16a6392fa066b753e87387", size = 420435, upload-time = "2025-07-01T15:55:27.798Z" }, + { url = "https://files.pythonhosted.org/packages/cd/16/e066dcdb56f5632713445271a3f8d3d0b426d51ae9c0cca387799df58b02/rpds_py-0.26.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:de4ed93a8c91debfd5a047be327b7cc8b0cc6afe32a716bbbc4aedca9e2a83af", size = 562410, upload-time = "2025-07-01T15:55:29.057Z" }, + { url = "https://files.pythonhosted.org/packages/60/22/ddbdec7eb82a0dc2e455be44c97c71c232983e21349836ce9f272e8a3c29/rpds_py-0.26.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:caf51943715b12af827696ec395bfa68f090a4c1a1d2509eb4e2cb69abbbdb33", size = 590724, upload-time = "2025-07-01T15:55:30.719Z" }, + { url = "https://files.pythonhosted.org/packages/2c/b4/95744085e65b7187d83f2fcb0bef70716a1ea0a9e5d8f7f39a86e5d83424/rpds_py-0.26.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:4a59e5bc386de021f56337f757301b337d7ab58baa40174fb150accd480bc953", size = 558285, upload-time = "2025-07-01T15:55:31.981Z" }, + { url = "https://files.pythonhosted.org/packages/37/37/6309a75e464d1da2559446f9c811aa4d16343cebe3dbb73701e63f760caa/rpds_py-0.26.0-cp314-cp314-win32.whl", hash = "sha256:92c8db839367ef16a662478f0a2fe13e15f2227da3c1430a782ad0f6ee009ec9", size = 223459, upload-time = "2025-07-01T15:55:33.312Z" }, + { url = "https://files.pythonhosted.org/packages/d9/6f/8e9c11214c46098b1d1391b7e02b70bb689ab963db3b19540cba17315291/rpds_py-0.26.0-cp314-cp314-win_amd64.whl", hash = "sha256:b0afb8cdd034150d4d9f53926226ed27ad15b7f465e93d7468caaf5eafae0d37", size = 236083, upload-time = "2025-07-01T15:55:34.933Z" }, + { url = "https://files.pythonhosted.org/packages/47/af/9c4638994dd623d51c39892edd9d08e8be8220a4b7e874fa02c2d6e91955/rpds_py-0.26.0-cp314-cp314-win_arm64.whl", hash = "sha256:ca3f059f4ba485d90c8dc75cb5ca897e15325e4e609812ce57f896607c1c0867", size = 223291, upload-time = "2025-07-01T15:55:36.202Z" }, + { url = "https://files.pythonhosted.org/packages/4d/db/669a241144460474aab03e254326b32c42def83eb23458a10d163cb9b5ce/rpds_py-0.26.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:5afea17ab3a126006dc2f293b14ffc7ef3c85336cf451564a0515ed7648033da", size = 361445, upload-time = "2025-07-01T15:55:37.483Z" }, + { url = "https://files.pythonhosted.org/packages/3b/2d/133f61cc5807c6c2fd086a46df0eb8f63a23f5df8306ff9f6d0fd168fecc/rpds_py-0.26.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:69f0c0a3df7fd3a7eec50a00396104bb9a843ea6d45fcc31c2d5243446ffd7a7", size = 347206, upload-time = "2025-07-01T15:55:38.828Z" }, + { url = "https://files.pythonhosted.org/packages/05/bf/0e8fb4c05f70273469eecf82f6ccf37248558526a45321644826555db31b/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:801a71f70f9813e82d2513c9a96532551fce1e278ec0c64610992c49c04c2dad", size = 380330, upload-time = "2025-07-01T15:55:40.175Z" }, + { url = "https://files.pythonhosted.org/packages/d4/a8/060d24185d8b24d3923322f8d0ede16df4ade226a74e747b8c7c978e3dd3/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:df52098cde6d5e02fa75c1f6244f07971773adb4a26625edd5c18fee906fa84d", size = 392254, upload-time = "2025-07-01T15:55:42.015Z" }, + { url = "https://files.pythonhosted.org/packages/b9/7b/7c2e8a9ee3e6bc0bae26bf29f5219955ca2fbb761dca996a83f5d2f773fe/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9bc596b30f86dc6f0929499c9e574601679d0341a0108c25b9b358a042f51bca", size = 516094, upload-time = "2025-07-01T15:55:43.603Z" }, + { url = "https://files.pythonhosted.org/packages/75/d6/f61cafbed8ba1499b9af9f1777a2a199cd888f74a96133d8833ce5eaa9c5/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9dfbe56b299cf5875b68eb6f0ebaadc9cac520a1989cac0db0765abfb3709c19", size = 402889, upload-time = "2025-07-01T15:55:45.275Z" }, + { url = "https://files.pythonhosted.org/packages/92/19/c8ac0a8a8df2dd30cdec27f69298a5c13e9029500d6d76718130f5e5be10/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac64f4b2bdb4ea622175c9ab7cf09444e412e22c0e02e906978b3b488af5fde8", size = 384301, upload-time = "2025-07-01T15:55:47.098Z" }, + { url = "https://files.pythonhosted.org/packages/41/e1/6b1859898bc292a9ce5776016c7312b672da00e25cec74d7beced1027286/rpds_py-0.26.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:181ef9b6bbf9845a264f9aa45c31836e9f3c1f13be565d0d010e964c661d1e2b", size = 412891, upload-time = "2025-07-01T15:55:48.412Z" }, + { url = "https://files.pythonhosted.org/packages/ef/b9/ceb39af29913c07966a61367b3c08b4f71fad841e32c6b59a129d5974698/rpds_py-0.26.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:49028aa684c144ea502a8e847d23aed5e4c2ef7cadfa7d5eaafcb40864844b7a", size = 557044, upload-time = "2025-07-01T15:55:49.816Z" }, + { url = "https://files.pythonhosted.org/packages/2f/27/35637b98380731a521f8ec4f3fd94e477964f04f6b2f8f7af8a2d889a4af/rpds_py-0.26.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:e5d524d68a474a9688336045bbf76cb0def88549c1b2ad9dbfec1fb7cfbe9170", size = 585774, upload-time = "2025-07-01T15:55:51.192Z" }, + { url = "https://files.pythonhosted.org/packages/52/d9/3f0f105420fecd18551b678c9a6ce60bd23986098b252a56d35781b3e7e9/rpds_py-0.26.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:c1851f429b822831bd2edcbe0cfd12ee9ea77868f8d3daf267b189371671c80e", size = 554886, upload-time = "2025-07-01T15:55:52.541Z" }, + { url = "https://files.pythonhosted.org/packages/6b/c5/347c056a90dc8dd9bc240a08c527315008e1b5042e7a4cf4ac027be9d38a/rpds_py-0.26.0-cp314-cp314t-win32.whl", hash = "sha256:7bdb17009696214c3b66bb3590c6d62e14ac5935e53e929bcdbc5a495987a84f", size = 219027, upload-time = "2025-07-01T15:55:53.874Z" }, + { url = "https://files.pythonhosted.org/packages/75/04/5302cea1aa26d886d34cadbf2dc77d90d7737e576c0065f357b96dc7a1a6/rpds_py-0.26.0-cp314-cp314t-win_amd64.whl", hash = "sha256:f14440b9573a6f76b4ee4770c13f0b5921f71dde3b6fcb8dabbefd13b7fe05d7", size = 232821, upload-time = "2025-07-01T15:55:55.167Z" }, +] + +[[package]] +name = "rtree" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/18/b8/0091f020acafcb034daa5b062f0626f6a73c7e0d64826af23861390a9585/rtree-1.4.0.tar.gz", hash = "sha256:9d97c7c5dcf25f6c0599c76d9933368c6a8d7238f2c1d00e76f1a69369ca82a0", size = 50789, upload-time = "2025-03-05T23:31:45.962Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f6/4c/8d54d6dc5ff8ba8ced1fad9378f89f9dd60addcc4cf0e525ee0e67b1769f/rtree-1.4.0-py3-none-macosx_10_9_x86_64.whl", hash = "sha256:4d1bebc418101480aabf41767e772dd2155d3b27b1376cccbd93e4509485e091", size = 482755, upload-time = "2025-03-05T23:31:29.884Z" }, + { url = "https://files.pythonhosted.org/packages/20/29/045e700d2135e9a67896086c831fde80fd4105971b443d5727a4093fcbf1/rtree-1.4.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:997f8c38d5dffa3949ea8adb4c8b291ea5cd4ef5ee69455d642dd171baf9991d", size = 439796, upload-time = "2025-03-05T23:31:31.517Z" }, + { url = "https://files.pythonhosted.org/packages/3d/fc/c3bd8cd67b10a12a6b9e2d06796779128c3e6968922dbf29fcd53af68d81/rtree-1.4.0-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0133d9c54ab3ffe874ba6d411dbe0254765c5e68d92da5b91362c370f16fd997", size = 497549, upload-time = "2025-03-05T23:31:33.722Z" }, + { url = "https://files.pythonhosted.org/packages/a0/dd/49dc9ab037d0cb288ed40f8b7f498f69d44243e4745e241c05d5e457ea8b/rtree-1.4.0-py3-none-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:d3b7bf1fe6463139377995ebe22a01a7005d134707f43672a3c09305e12f5f43", size = 568787, upload-time = "2025-03-05T23:31:35.478Z" }, + { url = "https://files.pythonhosted.org/packages/fe/e7/57737dff73ce789bdadd916d48ac12e977d8578176e1e890b1b8d89b9dbf/rtree-1.4.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:27e4a6d617d63dcb82fcd4c2856134b8a3741bd1af3b1a0d98e886054f394da5", size = 541090, upload-time = "2025-03-05T23:31:37.712Z" }, + { url = "https://files.pythonhosted.org/packages/8e/8f/1f3f716c4e8388670cfd5d0a3578e2354a1e6a3403648e234e1540e3e3bd/rtree-1.4.0-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:5258e826064eab82439760201e9421ce6d4340789d6d080c1b49367ddd03f61f", size = 1454194, upload-time = "2025-03-05T23:31:39.851Z" }, + { url = "https://files.pythonhosted.org/packages/22/ec/b42052b10e63a1c5d5d61ce234332f689736053644ba1756f7a632ea7659/rtree-1.4.0-py3-none-musllinux_1_2_i686.whl", hash = "sha256:20d5b3f9cf8bbbcc9fec42ab837c603c5dd86103ef29134300c8da2495c1248b", size = 1692814, upload-time = "2025-03-05T23:31:41.617Z" }, + { url = "https://files.pythonhosted.org/packages/c5/5b/a9920e9a2dc43b066ff13b7fde2e7bffcca315cfa43ae6f4cc15970e39eb/rtree-1.4.0-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:a67bee1233370a4c72c0969a96d2a1df1ba404ddd9f146849c53ab420eab361b", size = 1554860, upload-time = "2025-03-05T23:31:43.091Z" }, + { url = "https://files.pythonhosted.org/packages/ce/c2/362f2cc36a7a57b47380061c23fc109c7222c1a544ffd24cda289ba19673/rtree-1.4.0-py3-none-win_amd64.whl", hash = "sha256:ba83efc7b7563905b1bfdfc14490c4bfb59e92e5e6156bdeb6ec5df5117252f4", size = 385221, upload-time = "2025-03-05T23:31:44.537Z" }, +] + +[[package]] +name = "safetensors" +version = "0.5.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/71/7e/2d5d6ee7b40c0682315367ec7475693d110f512922d582fef1bd4a63adc3/safetensors-0.5.3.tar.gz", hash = "sha256:b6b0d6ecacec39a4fdd99cc19f4576f5219ce858e6fd8dbe7609df0b8dc56965", size = 67210, upload-time = "2025-02-26T09:15:13.155Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/ae/88f6c49dbd0cc4da0e08610019a3c78a7d390879a919411a410a1876d03a/safetensors-0.5.3-cp38-abi3-macosx_10_12_x86_64.whl", hash = "sha256:bd20eb133db8ed15b40110b7c00c6df51655a2998132193de2f75f72d99c7073", size = 436917, upload-time = "2025-02-26T09:15:03.702Z" }, + { url = "https://files.pythonhosted.org/packages/b8/3b/11f1b4a2f5d2ab7da34ecc062b0bc301f2be024d110a6466726bec8c055c/safetensors-0.5.3-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:21d01c14ff6c415c485616b8b0bf961c46b3b343ca59110d38d744e577f9cce7", size = 418419, upload-time = "2025-02-26T09:15:01.765Z" }, + { url = "https://files.pythonhosted.org/packages/5d/9a/add3e6fef267658075c5a41573c26d42d80c935cdc992384dfae435feaef/safetensors-0.5.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11bce6164887cd491ca75c2326a113ba934be596e22b28b1742ce27b1d076467", size = 459493, upload-time = "2025-02-26T09:14:51.812Z" }, + { url = "https://files.pythonhosted.org/packages/df/5c/bf2cae92222513cc23b3ff85c4a1bb2811a2c3583ac0f8e8d502751de934/safetensors-0.5.3-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4a243be3590bc3301c821da7a18d87224ef35cbd3e5f5727e4e0728b8172411e", size = 472400, upload-time = "2025-02-26T09:14:53.549Z" }, + { url = "https://files.pythonhosted.org/packages/58/11/7456afb740bd45782d0f4c8e8e1bb9e572f1bf82899fb6ace58af47b4282/safetensors-0.5.3-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8bd84b12b1670a6f8e50f01e28156422a2bc07fb16fc4e98bded13039d688a0d", size = 522891, upload-time = "2025-02-26T09:14:55.717Z" }, + { url = "https://files.pythonhosted.org/packages/57/3d/fe73a9d2ace487e7285f6e157afee2383bd1ddb911b7cb44a55cf812eae3/safetensors-0.5.3-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:391ac8cab7c829452175f871fcaf414aa1e292b5448bd02620f675a7f3e7abb9", size = 537694, upload-time = "2025-02-26T09:14:57.036Z" }, + { url = "https://files.pythonhosted.org/packages/a6/f8/dae3421624fcc87a89d42e1898a798bc7ff72c61f38973a65d60df8f124c/safetensors-0.5.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cead1fa41fc54b1e61089fa57452e8834f798cb1dc7a09ba3524f1eb08e0317a", size = 471642, upload-time = "2025-02-26T09:15:00.544Z" }, + { url = "https://files.pythonhosted.org/packages/ce/20/1fbe16f9b815f6c5a672f5b760951e20e17e43f67f231428f871909a37f6/safetensors-0.5.3-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1077f3e94182d72618357b04b5ced540ceb71c8a813d3319f1aba448e68a770d", size = 502241, upload-time = "2025-02-26T09:14:58.303Z" }, + { url = "https://files.pythonhosted.org/packages/5f/18/8e108846b506487aa4629fe4116b27db65c3dde922de2c8e0cc1133f3f29/safetensors-0.5.3-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:799021e78287bac619c7b3f3606730a22da4cda27759ddf55d37c8db7511c74b", size = 638001, upload-time = "2025-02-26T09:15:05.79Z" }, + { url = "https://files.pythonhosted.org/packages/82/5a/c116111d8291af6c8c8a8b40628fe833b9db97d8141c2a82359d14d9e078/safetensors-0.5.3-cp38-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:df26da01aaac504334644e1b7642fa000bfec820e7cef83aeac4e355e03195ff", size = 734013, upload-time = "2025-02-26T09:15:07.892Z" }, + { url = "https://files.pythonhosted.org/packages/7d/ff/41fcc4d3b7de837963622e8610d998710705bbde9a8a17221d85e5d0baad/safetensors-0.5.3-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:32c3ef2d7af8b9f52ff685ed0bc43913cdcde135089ae322ee576de93eae5135", size = 670687, upload-time = "2025-02-26T09:15:09.979Z" }, + { url = "https://files.pythonhosted.org/packages/40/ad/2b113098e69c985a3d8fbda4b902778eae4a35b7d5188859b4a63d30c161/safetensors-0.5.3-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:37f1521be045e56fc2b54c606d4455573e717b2d887c579ee1dbba5f868ece04", size = 643147, upload-time = "2025-02-26T09:15:11.185Z" }, + { url = "https://files.pythonhosted.org/packages/0a/0c/95aeb51d4246bd9a3242d3d8349c1112b4ee7611a4b40f0c5c93b05f001d/safetensors-0.5.3-cp38-abi3-win32.whl", hash = "sha256:cfc0ec0846dcf6763b0ed3d1846ff36008c6e7290683b61616c4b040f6a54ace", size = 296677, upload-time = "2025-02-26T09:15:16.554Z" }, + { url = "https://files.pythonhosted.org/packages/69/e2/b011c38e5394c4c18fb5500778a55ec43ad6106126e74723ffaee246f56e/safetensors-0.5.3-cp38-abi3-win_amd64.whl", hash = "sha256:836cbbc320b47e80acd40e44c8682db0e8ad7123209f69b093def21ec7cafd11", size = 308878, upload-time = "2025-02-26T09:15:14.99Z" }, +] + +[package.optional-dependencies] +torch = [ + { name = "numpy" }, + { name = "torch" }, +] + +[[package]] +name = "scikit-image" +version = "0.25.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "imageio" }, + { name = "lazy-loader" }, + { name = "networkx" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pillow" }, + { name = "scipy" }, + { name = "tifffile" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c7/a8/3c0f256012b93dd2cb6fda9245e9f4bff7dc0486880b248005f15ea2255e/scikit_image-0.25.2.tar.gz", hash = "sha256:e5a37e6cd4d0c018a7a55b9d601357e3382826d3888c10d0213fc63bff977dde", size = 22693594, upload-time = "2025-02-18T18:05:24.538Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/7c/9814dd1c637f7a0e44342985a76f95a55dd04be60154247679fd96c7169f/scikit_image-0.25.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7efa888130f6c548ec0439b1a7ed7295bc10105458a421e9bf739b457730b6da", size = 13921841, upload-time = "2025-02-18T18:05:03.963Z" }, + { url = "https://files.pythonhosted.org/packages/84/06/66a2e7661d6f526740c309e9717d3bd07b473661d5cdddef4dd978edab25/scikit_image-0.25.2-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:dd8011efe69c3641920614d550f5505f83658fe33581e49bed86feab43a180fc", size = 13196862, upload-time = "2025-02-18T18:05:06.986Z" }, + { url = "https://files.pythonhosted.org/packages/4e/63/3368902ed79305f74c2ca8c297dfeb4307269cbe6402412668e322837143/scikit_image-0.25.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28182a9d3e2ce3c2e251383bdda68f8d88d9fff1a3ebe1eb61206595c9773341", size = 14117785, upload-time = "2025-02-18T18:05:10.69Z" }, + { url = "https://files.pythonhosted.org/packages/cd/9b/c3da56a145f52cd61a68b8465d6a29d9503bc45bc993bb45e84371c97d94/scikit_image-0.25.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8abd3c805ce6944b941cfed0406d88faeb19bab3ed3d4b50187af55cf24d147", size = 14977119, upload-time = "2025-02-18T18:05:13.871Z" }, + { url = "https://files.pythonhosted.org/packages/8a/97/5fcf332e1753831abb99a2525180d3fb0d70918d461ebda9873f66dcc12f/scikit_image-0.25.2-cp313-cp313-win_amd64.whl", hash = "sha256:64785a8acefee460ec49a354706db0b09d1f325674107d7fa3eadb663fb56d6f", size = 12885116, upload-time = "2025-02-18T18:05:17.844Z" }, + { url = "https://files.pythonhosted.org/packages/10/cc/75e9f17e3670b5ed93c32456fda823333c6279b144cd93e2c03aa06aa472/scikit_image-0.25.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:330d061bd107d12f8d68f1d611ae27b3b813b8cdb0300a71d07b1379178dd4cd", size = 13862801, upload-time = "2025-02-18T18:05:20.783Z" }, +] + +[[package]] +name = "scipy" +version = "1.16.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/81/18/b06a83f0c5ee8cddbde5e3f3d0bb9b702abfa5136ef6d4620ff67df7eee5/scipy-1.16.0.tar.gz", hash = "sha256:b5ef54021e832869c8cfb03bc3bf20366cbcd426e02a58e8a58d7584dfbb8f62", size = 30581216, upload-time = "2025-06-22T16:27:55.782Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/95/0746417bc24be0c2a7b7563946d61f670a3b491b76adede420e9d173841f/scipy-1.16.0-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:e9f414cbe9ca289a73e0cc92e33a6a791469b6619c240aa32ee18abdce8ab451", size = 36418162, upload-time = "2025-06-22T16:19:56.3Z" }, + { url = "https://files.pythonhosted.org/packages/19/5a/914355a74481b8e4bbccf67259bbde171348a3f160b67b4945fbc5f5c1e5/scipy-1.16.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:bbba55fb97ba3cdef9b1ee973f06b09d518c0c7c66a009c729c7d1592be1935e", size = 28465985, upload-time = "2025-06-22T16:20:01.238Z" }, + { url = "https://files.pythonhosted.org/packages/58/46/63477fc1246063855969cbefdcee8c648ba4b17f67370bd542ba56368d0b/scipy-1.16.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:58e0d4354eacb6004e7aa1cd350e5514bd0270acaa8d5b36c0627bb3bb486974", size = 20737961, upload-time = "2025-06-22T16:20:05.913Z" }, + { url = "https://files.pythonhosted.org/packages/93/86/0fbb5588b73555e40f9d3d6dde24ee6fac7d8e301a27f6f0cab9d8f66ff2/scipy-1.16.0-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:75b2094ec975c80efc273567436e16bb794660509c12c6a31eb5c195cbf4b6dc", size = 23377941, upload-time = "2025-06-22T16:20:10.668Z" }, + { url = "https://files.pythonhosted.org/packages/ca/80/a561f2bf4c2da89fa631b3cbf31d120e21ea95db71fd9ec00cb0247c7a93/scipy-1.16.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6b65d232157a380fdd11a560e7e21cde34fdb69d65c09cb87f6cc024ee376351", size = 33196703, upload-time = "2025-06-22T16:20:16.097Z" }, + { url = "https://files.pythonhosted.org/packages/11/6b/3443abcd0707d52e48eb315e33cc669a95e29fc102229919646f5a501171/scipy-1.16.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1d8747f7736accd39289943f7fe53a8333be7f15a82eea08e4afe47d79568c32", size = 35083410, upload-time = "2025-06-22T16:20:21.734Z" }, + { url = "https://files.pythonhosted.org/packages/20/ab/eb0fc00e1e48961f1bd69b7ad7e7266896fe5bad4ead91b5fc6b3561bba4/scipy-1.16.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:eb9f147a1b8529bb7fec2a85cf4cf42bdfadf9e83535c309a11fdae598c88e8b", size = 35387829, upload-time = "2025-06-22T16:20:27.548Z" }, + { url = "https://files.pythonhosted.org/packages/57/9e/d6fc64e41fad5d481c029ee5a49eefc17f0b8071d636a02ceee44d4a0de2/scipy-1.16.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d2b83c37edbfa837a8923d19c749c1935ad3d41cf196006a24ed44dba2ec4358", size = 37841356, upload-time = "2025-06-22T16:20:35.112Z" }, + { url = "https://files.pythonhosted.org/packages/7c/a7/4c94bbe91f12126b8bf6709b2471900577b7373a4fd1f431f28ba6f81115/scipy-1.16.0-cp313-cp313-win_amd64.whl", hash = "sha256:79a3c13d43c95aa80b87328a46031cf52508cf5f4df2767602c984ed1d3c6bbe", size = 38403710, upload-time = "2025-06-22T16:21:54.473Z" }, + { url = "https://files.pythonhosted.org/packages/47/20/965da8497f6226e8fa90ad3447b82ed0e28d942532e92dd8b91b43f100d4/scipy-1.16.0-cp313-cp313t-macosx_10_14_x86_64.whl", hash = "sha256:f91b87e1689f0370690e8470916fe1b2308e5b2061317ff76977c8f836452a47", size = 36813833, upload-time = "2025-06-22T16:20:43.925Z" }, + { url = "https://files.pythonhosted.org/packages/28/f4/197580c3dac2d234e948806e164601c2df6f0078ed9f5ad4a62685b7c331/scipy-1.16.0-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:88a6ca658fb94640079e7a50b2ad3b67e33ef0f40e70bdb7dc22017dae73ac08", size = 28974431, upload-time = "2025-06-22T16:20:51.302Z" }, + { url = "https://files.pythonhosted.org/packages/8a/fc/e18b8550048d9224426e76906694c60028dbdb65d28b1372b5503914b89d/scipy-1.16.0-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:ae902626972f1bd7e4e86f58fd72322d7f4ec7b0cfc17b15d4b7006efc385176", size = 21246454, upload-time = "2025-06-22T16:20:57.276Z" }, + { url = "https://files.pythonhosted.org/packages/8c/48/07b97d167e0d6a324bfd7484cd0c209cc27338b67e5deadae578cf48e809/scipy-1.16.0-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:8cb824c1fc75ef29893bc32b3ddd7b11cf9ab13c1127fe26413a05953b8c32ed", size = 23772979, upload-time = "2025-06-22T16:21:03.363Z" }, + { url = "https://files.pythonhosted.org/packages/4c/4f/9efbd3f70baf9582edf271db3002b7882c875ddd37dc97f0f675ad68679f/scipy-1.16.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:de2db7250ff6514366a9709c2cba35cb6d08498e961cba20d7cff98a7ee88938", size = 33341972, upload-time = "2025-06-22T16:21:11.14Z" }, + { url = "https://files.pythonhosted.org/packages/3f/dc/9e496a3c5dbe24e76ee24525155ab7f659c20180bab058ef2c5fa7d9119c/scipy-1.16.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e85800274edf4db8dd2e4e93034f92d1b05c9421220e7ded9988b16976f849c1", size = 35185476, upload-time = "2025-06-22T16:21:19.156Z" }, + { url = "https://files.pythonhosted.org/packages/ce/b3/21001cff985a122ba434c33f2c9d7d1dc3b669827e94f4fc4e1fe8b9dfd8/scipy-1.16.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4f720300a3024c237ace1cb11f9a84c38beb19616ba7c4cdcd771047a10a1706", size = 35570990, upload-time = "2025-06-22T16:21:27.797Z" }, + { url = "https://files.pythonhosted.org/packages/e5/d3/7ba42647d6709251cdf97043d0c107e0317e152fa2f76873b656b509ff55/scipy-1.16.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:aad603e9339ddb676409b104c48a027e9916ce0d2838830691f39552b38a352e", size = 37950262, upload-time = "2025-06-22T16:21:36.976Z" }, + { url = "https://files.pythonhosted.org/packages/eb/c4/231cac7a8385394ebbbb4f1ca662203e9d8c332825ab4f36ffc3ead09a42/scipy-1.16.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f56296fefca67ba605fd74d12f7bd23636267731a72cb3947963e76b8c0a25db", size = 38515076, upload-time = "2025-06-22T16:21:45.694Z" }, +] + +[[package]] +name = "semchunk" +version = "2.2.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mpire", extra = ["dill"] }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/62/96/c418c322730b385e81d4ab462e68dd48bb2dbda4d8efa17cad2ca468d9ac/semchunk-2.2.2.tar.gz", hash = "sha256:940e89896e64eeb01de97ba60f51c8c7b96c6a3951dfcf574f25ce2146752f52", size = 12271, upload-time = "2024-12-17T22:54:30.332Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/76/84/94ca7896c7df20032bcb09973e9a4d14c222507c0aadf22e89fa76bb0a04/semchunk-2.2.2-py3-none-any.whl", hash = "sha256:94ca19020c013c073abdfd06d79a7c13637b91738335f3b8cdb5655ee7cc94d2", size = 10271, upload-time = "2024-12-17T22:54:27.689Z" }, +] + +[[package]] +name = "setuptools" +version = "80.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/18/5d/3bf57dcd21979b887f014ea83c24ae194cfcd12b9e0fda66b957c69d1fca/setuptools-80.9.0.tar.gz", hash = "sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c", size = 1319958, upload-time = "2025-05-27T00:56:51.443Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl", hash = "sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922", size = 1201486, upload-time = "2025-05-27T00:56:49.664Z" }, +] + +[[package]] +name = "shapely" +version = "2.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ca/3c/2da625233f4e605155926566c0e7ea8dda361877f48e8b1655e53456f252/shapely-2.1.1.tar.gz", hash = "sha256:500621967f2ffe9642454808009044c21e5b35db89ce69f8a2042c2ffd0e2772", size = 315422, upload-time = "2025-05-19T11:04:41.265Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/71/8e/2bc836437f4b84d62efc1faddce0d4e023a5d990bbddd3c78b2004ebc246/shapely-2.1.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3004a644d9e89e26c20286d5fdc10f41b1744c48ce910bd1867fdff963fe6c48", size = 1832107, upload-time = "2025-05-19T11:04:19.736Z" }, + { url = "https://files.pythonhosted.org/packages/12/a2/12c7cae5b62d5d851c2db836eadd0986f63918a91976495861f7c492f4a9/shapely-2.1.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1415146fa12d80a47d13cfad5310b3c8b9c2aa8c14a0c845c9d3d75e77cb54f6", size = 1642355, upload-time = "2025-05-19T11:04:21.035Z" }, + { url = "https://files.pythonhosted.org/packages/5b/7e/6d28b43d53fea56de69c744e34c2b999ed4042f7a811dc1bceb876071c95/shapely-2.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21fcab88b7520820ec16d09d6bea68652ca13993c84dffc6129dc3607c95594c", size = 2968871, upload-time = "2025-05-19T11:04:22.167Z" }, + { url = "https://files.pythonhosted.org/packages/dd/87/1017c31e52370b2b79e4d29e07cbb590ab9e5e58cf7e2bdfe363765d6251/shapely-2.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e5ce6a5cc52c974b291237a96c08c5592e50f066871704fb5b12be2639d9026a", size = 3080830, upload-time = "2025-05-19T11:04:23.997Z" }, + { url = "https://files.pythonhosted.org/packages/1d/fe/f4a03d81abd96a6ce31c49cd8aaba970eaaa98e191bd1e4d43041e57ae5a/shapely-2.1.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:04e4c12a45a1d70aeb266618d8cf81a2de9c4df511b63e105b90bfdfb52146de", size = 3908961, upload-time = "2025-05-19T11:04:25.702Z" }, + { url = "https://files.pythonhosted.org/packages/ef/59/7605289a95a6844056a2017ab36d9b0cb9d6a3c3b5317c1f968c193031c9/shapely-2.1.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6ca74d851ca5264aae16c2b47e96735579686cb69fa93c4078070a0ec845b8d8", size = 4079623, upload-time = "2025-05-19T11:04:27.171Z" }, + { url = "https://files.pythonhosted.org/packages/bc/4d/9fea036eff2ef4059d30247128b2d67aaa5f0b25e9fc27e1d15cc1b84704/shapely-2.1.1-cp313-cp313-win32.whl", hash = "sha256:fd9130501bf42ffb7e0695b9ea17a27ae8ce68d50b56b6941c7f9b3d3453bc52", size = 1521916, upload-time = "2025-05-19T11:04:28.405Z" }, + { url = "https://files.pythonhosted.org/packages/12/d9/6d13b8957a17c95794f0c4dfb65ecd0957e6c7131a56ce18d135c1107a52/shapely-2.1.1-cp313-cp313-win_amd64.whl", hash = "sha256:ab8d878687b438a2f4c138ed1a80941c6ab0029e0f4c785ecfe114413b498a97", size = 1702746, upload-time = "2025-05-19T11:04:29.643Z" }, + { url = "https://files.pythonhosted.org/packages/60/36/b1452e3e7f35f5f6454d96f3be6e2bb87082720ff6c9437ecc215fa79be0/shapely-2.1.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:0c062384316a47f776305ed2fa22182717508ffdeb4a56d0ff4087a77b2a0f6d", size = 1833482, upload-time = "2025-05-19T11:04:30.852Z" }, + { url = "https://files.pythonhosted.org/packages/ce/ca/8e6f59be0718893eb3e478141285796a923636dc8f086f83e5b0ec0036d0/shapely-2.1.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4ecf6c196b896e8f1360cc219ed4eee1c1e5f5883e505d449f263bd053fb8c05", size = 1642256, upload-time = "2025-05-19T11:04:32.068Z" }, + { url = "https://files.pythonhosted.org/packages/ab/78/0053aea449bb1d4503999525fec6232f049abcdc8df60d290416110de943/shapely-2.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb00070b4c4860f6743c600285109c273cca5241e970ad56bb87bef0be1ea3a0", size = 3016614, upload-time = "2025-05-19T11:04:33.7Z" }, + { url = "https://files.pythonhosted.org/packages/ee/53/36f1b1de1dfafd1b457dcbafa785b298ce1b8a3e7026b79619e708a245d5/shapely-2.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d14a9afa5fa980fbe7bf63706fdfb8ff588f638f145a1d9dbc18374b5b7de913", size = 3093542, upload-time = "2025-05-19T11:04:34.952Z" }, + { url = "https://files.pythonhosted.org/packages/b9/bf/0619f37ceec6b924d84427c88835b61f27f43560239936ff88915c37da19/shapely-2.1.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b640e390dabde790e3fb947198b466e63223e0a9ccd787da5f07bcb14756c28d", size = 3945961, upload-time = "2025-05-19T11:04:36.32Z" }, + { url = "https://files.pythonhosted.org/packages/93/c9/20ca4afeb572763b07a7997f00854cb9499df6af85929e93012b189d8917/shapely-2.1.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:69e08bf9697c1b73ec6aa70437db922bafcea7baca131c90c26d59491a9760f9", size = 4089514, upload-time = "2025-05-19T11:04:37.683Z" }, + { url = "https://files.pythonhosted.org/packages/33/6a/27036a5a560b80012a544366bceafd491e8abb94a8db14047b5346b5a749/shapely-2.1.1-cp313-cp313t-win32.whl", hash = "sha256:ef2d09d5a964cc90c2c18b03566cf918a61c248596998a0301d5b632beadb9db", size = 1540607, upload-time = "2025-05-19T11:04:38.925Z" }, + { url = "https://files.pythonhosted.org/packages/ea/f1/5e9b3ba5c7aa7ebfaf269657e728067d16a7c99401c7973ddf5f0cf121bd/shapely-2.1.1-cp313-cp313t-win_amd64.whl", hash = "sha256:8cb8f17c377260452e9d7720eeaf59082c5f8ea48cf104524d953e5d36d4bdb7", size = 1723061, upload-time = "2025-05-19T11:04:40.082Z" }, +] + +[[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 = "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.7" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3f/f4/4a80cd6ef364b2e8b65b15816a843c0980f7a5a2b4dc701fc574952aa19f/soupsieve-2.7.tar.gz", hash = "sha256:ad282f9b6926286d2ead4750552c8a6142bc4c783fd66b0293547c8fe6ae126a", size = 103418, upload-time = "2025-04-20T18:50:08.518Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/9c/0e6afc12c269578be5c0c1c9f4b49a8d32770a080260c333ac04cc1c832d/soupsieve-2.7-py3-none-any.whl", hash = "sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4", size = 36677, upload-time = "2025-04-20T18:50:07.196Z" }, +] + +[[package]] +name = "starlette" +version = "0.47.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/69/662169fdb92fb96ec3eaee218cf540a629d629c86d7993d9651226a6789b/starlette-0.47.1.tar.gz", hash = "sha256:aef012dd2b6be325ffa16698f9dc533614fb1cebd593a906b90dc1025529a79b", size = 2583072, upload-time = "2025-06-21T04:03:17.337Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/95/38ef0cd7fa11eaba6a99b3c4f5ac948d8bc6ff199aabd327a29cc000840c/starlette-0.47.1-py3-none-any.whl", hash = "sha256:5e11c9f5c7c3f24959edbf2dffdc01bba860228acf657129467d8a7468591527", size = 72747, upload-time = "2025-06-21T04:03:15.705Z" }, +] + +[[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 = "tabulate" +version = "0.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ec/fe/802052aecb21e3797b8f7902564ab6ea0d60ff8ca23952079064155d1ae1/tabulate-0.9.0.tar.gz", hash = "sha256:0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c", size = 81090, upload-time = "2022-10-06T17:21:48.54Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/40/44/4a5f08c96eb108af5cb50b41f76142f0afa346dfa99d5296fe7202a11854/tabulate-0.9.0-py3-none-any.whl", hash = "sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f", size = 35252, upload-time = "2022-10-06T17:21:44.262Z" }, +] + +[[package]] +name = "tifffile" +version = "2025.6.11" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/11/9e/636e3e433c24da41dd639e0520db60750dbf5e938d023b83af8097382ea3/tifffile-2025.6.11.tar.gz", hash = "sha256:0ece4c2e7a10656957d568a093b07513c0728d30c1bd8cc12725901fffdb7143", size = 370125, upload-time = "2025-06-12T04:49:38.839Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/d8/1ba8f32bfc9cb69e37edeca93738e883f478fbe84ae401f72c0d8d507841/tifffile-2025.6.11-py3-none-any.whl", hash = "sha256:32effb78b10b3a283eb92d4ebf844ae7e93e151458b0412f38518b4e6d2d7542", size = 230800, upload-time = "2025-06-12T04:49:37.458Z" }, +] + +[[package]] +name = "tokenizers" +version = "0.21.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "huggingface-hub" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ab/2d/b0fce2b8201635f60e8c95990080f58461cc9ca3d5026de2e900f38a7f21/tokenizers-0.21.2.tar.gz", hash = "sha256:fdc7cffde3e2113ba0e6cc7318c40e3438a4d74bbc62bf04bcc63bdfb082ac77", size = 351545, upload-time = "2025-06-24T10:24:52.449Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1d/cc/2936e2d45ceb130a21d929743f1e9897514691bec123203e10837972296f/tokenizers-0.21.2-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:342b5dfb75009f2255ab8dec0041287260fed5ce00c323eb6bab639066fef8ec", size = 2875206, upload-time = "2025-06-24T10:24:42.755Z" }, + { url = "https://files.pythonhosted.org/packages/6c/e6/33f41f2cc7861faeba8988e7a77601407bf1d9d28fc79c5903f8f77df587/tokenizers-0.21.2-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:126df3205d6f3a93fea80c7a8a266a78c1bd8dd2fe043386bafdd7736a23e45f", size = 2732655, upload-time = "2025-06-24T10:24:41.56Z" }, + { url = "https://files.pythonhosted.org/packages/33/2b/1791eb329c07122a75b01035b1a3aa22ad139f3ce0ece1b059b506d9d9de/tokenizers-0.21.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a32cd81be21168bd0d6a0f0962d60177c447a1aa1b1e48fa6ec9fc728ee0b12", size = 3019202, upload-time = "2025-06-24T10:24:31.791Z" }, + { url = "https://files.pythonhosted.org/packages/05/15/fd2d8104faa9f86ac68748e6f7ece0b5eb7983c7efc3a2c197cb98c99030/tokenizers-0.21.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8bd8999538c405133c2ab999b83b17c08b7fc1b48c1ada2469964605a709ef91", size = 2934539, upload-time = "2025-06-24T10:24:34.567Z" }, + { url = "https://files.pythonhosted.org/packages/a5/2e/53e8fd053e1f3ffbe579ca5f9546f35ac67cf0039ed357ad7ec57f5f5af0/tokenizers-0.21.2-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5e9944e61239b083a41cf8fc42802f855e1dca0f499196df37a8ce219abac6eb", size = 3248665, upload-time = "2025-06-24T10:24:39.024Z" }, + { url = "https://files.pythonhosted.org/packages/00/15/79713359f4037aa8f4d1f06ffca35312ac83629da062670e8830917e2153/tokenizers-0.21.2-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:514cd43045c5d546f01142ff9c79a96ea69e4b5cda09e3027708cb2e6d5762ab", size = 3451305, upload-time = "2025-06-24T10:24:36.133Z" }, + { url = "https://files.pythonhosted.org/packages/38/5f/959f3a8756fc9396aeb704292777b84f02a5c6f25c3fc3ba7530db5feb2c/tokenizers-0.21.2-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b1b9405822527ec1e0f7d8d2fdb287a5730c3a6518189c968254a8441b21faae", size = 3214757, upload-time = "2025-06-24T10:24:37.784Z" }, + { url = "https://files.pythonhosted.org/packages/c5/74/f41a432a0733f61f3d21b288de6dfa78f7acff309c6f0f323b2833e9189f/tokenizers-0.21.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fed9a4d51c395103ad24f8e7eb976811c57fbec2af9f133df471afcd922e5020", size = 3121887, upload-time = "2025-06-24T10:24:40.293Z" }, + { url = "https://files.pythonhosted.org/packages/3c/6a/bc220a11a17e5d07b0dfb3b5c628621d4dcc084bccd27cfaead659963016/tokenizers-0.21.2-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:2c41862df3d873665ec78b6be36fcc30a26e3d4902e9dd8608ed61d49a48bc19", size = 9091965, upload-time = "2025-06-24T10:24:44.431Z" }, + { url = "https://files.pythonhosted.org/packages/6c/bd/ac386d79c4ef20dc6f39c4706640c24823dca7ebb6f703bfe6b5f0292d88/tokenizers-0.21.2-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:ed21dc7e624e4220e21758b2e62893be7101453525e3d23264081c9ef9a6d00d", size = 9053372, upload-time = "2025-06-24T10:24:46.455Z" }, + { url = "https://files.pythonhosted.org/packages/63/7b/5440bf203b2a5358f074408f7f9c42884849cd9972879e10ee6b7a8c3b3d/tokenizers-0.21.2-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:0e73770507e65a0e0e2a1affd6b03c36e3bc4377bd10c9ccf51a82c77c0fe365", size = 9298632, upload-time = "2025-06-24T10:24:48.446Z" }, + { url = "https://files.pythonhosted.org/packages/a4/d2/faa1acac3f96a7427866e94ed4289949b2524f0c1878512516567d80563c/tokenizers-0.21.2-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:106746e8aa9014a12109e58d540ad5465b4c183768ea96c03cbc24c44d329958", size = 9470074, upload-time = "2025-06-24T10:24:50.378Z" }, + { url = "https://files.pythonhosted.org/packages/d8/a5/896e1ef0707212745ae9f37e84c7d50269411aef2e9ccd0de63623feecdf/tokenizers-0.21.2-cp39-abi3-win32.whl", hash = "sha256:cabda5a6d15d620b6dfe711e1af52205266d05b379ea85a8a301b3593c60e962", size = 2330115, upload-time = "2025-06-24T10:24:55.069Z" }, + { url = "https://files.pythonhosted.org/packages/13/c3/cc2755ee10be859c4338c962a35b9a663788c0c0b50c0bdd8078fb6870cf/tokenizers-0.21.2-cp39-abi3-win_amd64.whl", hash = "sha256:58747bb898acdb1007f37a7bbe614346e98dc28708ffb66a3fd50ce169ac6c98", size = 2509918, upload-time = "2025-06-24T10:24:53.71Z" }, +] + +[[package]] +name = "torch" +version = "2.7.1+cu128" +source = { registry = "https://download.pytorch.org/whl/cu128" } +dependencies = [ + { name = "filelock" }, + { name = "fsspec" }, + { name = "jinja2" }, + { name = "networkx" }, + { name = "nvidia-cublas-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cuda-cupti-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cuda-nvrtc-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cuda-runtime-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cudnn-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cufft-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cufile-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-curand-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cusolver-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cusparse-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-cusparselt-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-nccl-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-nvjitlink-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "nvidia-nvtx-cu12", marker = "platform_machine == 'x86_64' and sys_platform == 'linux'" }, + { name = "setuptools" }, + { name = "sympy" }, + { name = "triton", marker = "sys_platform == 'linux'" }, + { name = "typing-extensions" }, +] +wheels = [ + { url = "https://download.pytorch.org/whl/cu128/torch-2.7.1%2Bcu128-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:d56d29a6ad7758ba5173cc2b0c51c93e126e2b0a918e874101dc66545283967f" }, + { url = "https://download.pytorch.org/whl/cu128/torch-2.7.1%2Bcu128-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:9560425f9ea1af1791507e8ca70d5b9ecf62fed7ca226a95fcd58d0eb2cca78f" }, + { url = "https://download.pytorch.org/whl/cu128/torch-2.7.1%2Bcu128-cp313-cp313-win_amd64.whl", hash = "sha256:500ad5b670483f62d4052e41948a3fb19e8c8de65b99f8d418d879cbb15a82d6" }, + { url = "https://download.pytorch.org/whl/cu128/torch-2.7.1%2Bcu128-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:f112465fdf42eb1297c6dddda1a8b7f411914428b704e1b8a47870c52e290909" }, + { url = "https://download.pytorch.org/whl/cu128/torch-2.7.1%2Bcu128-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:c355db49c218ada70321d5c5c9bb3077312738b99113c8f3723ef596b554a7b9" }, + { url = "https://download.pytorch.org/whl/cu128/torch-2.7.1%2Bcu128-cp313-cp313t-win_amd64.whl", hash = "sha256:e27e5f7e74179fb5d814a0412e5026e4b50c9e0081e9050bc4c28c992a276eb1" }, +] + +[[package]] +name = "torchvision" +version = "0.22.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "pillow" }, + { name = "torch" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/7a/30/fecdd09fb973e963da68207fe9f3d03ec6f39a935516dc2a98397bf495c6/torchvision-0.22.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9c3ae3319624c43cc8127020f46c14aa878406781f0899bb6283ae474afeafbf", size = 1947818, upload-time = "2025-06-04T17:42:51.954Z" }, + { url = "https://files.pythonhosted.org/packages/55/f4/b45f6cd92fa0acfac5e31b8e9258232f25bcdb0709a604e8b8a39d76e411/torchvision-0.22.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:4a614a6a408d2ed74208d0ea6c28a2fbb68290e9a7df206c5fef3f0b6865d307", size = 2471597, upload-time = "2025-06-04T17:42:48.838Z" }, + { url = "https://files.pythonhosted.org/packages/8d/b0/3cffd6a285b5ffee3fe4a31caff49e350c98c5963854474d1c4f7a51dea5/torchvision-0.22.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:7ee682be589bb1a002b7704f06b8ec0b89e4b9068f48e79307d2c6e937a9fdf4", size = 7485894, upload-time = "2025-06-04T17:43:01.371Z" }, + { url = "https://files.pythonhosted.org/packages/fd/1d/0ede596fedc2080d18108149921278b59f220fbb398f29619495337b0f86/torchvision-0.22.1-cp313-cp313-win_amd64.whl", hash = "sha256:2566cafcfa47ecfdbeed04bab8cef1307c8d4ef75046f7624b9e55f384880dfe", size = 1708020, upload-time = "2025-06-04T17:43:06.085Z" }, + { url = "https://files.pythonhosted.org/packages/0f/ca/e9a06bd61ee8e04fb4962a3fb524fe6ee4051662db07840b702a9f339b24/torchvision-0.22.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:043d9e35ed69c2e586aff6eb9e2887382e7863707115668ac9d140da58f42cba", size = 2137623, upload-time = "2025-06-04T17:43:05.028Z" }, + { url = "https://files.pythonhosted.org/packages/ab/c8/2ebe90f18e7ffa2120f5c3eab62aa86923185f78d2d051a455ea91461608/torchvision-0.22.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:27142bcc8a984227a6dcf560985e83f52b82a7d3f5fe9051af586a2ccc46ef26", size = 2476561, upload-time = "2025-06-04T17:42:59.691Z" }, + { url = "https://files.pythonhosted.org/packages/94/8b/04c6b15f8c29b39f0679589753091cec8b192ab296d4fdaf9055544c4ec9/torchvision-0.22.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:ef46e065502f7300ad6abc98554131c35dc4c837b978d91306658f1a65c00baa", size = 7658543, upload-time = "2025-06-04T17:42:46.064Z" }, + { url = "https://files.pythonhosted.org/packages/ab/c0/131628e6d42682b0502c63fd7f647b8b5ca4bd94088f6c85ca7225db8ac4/torchvision-0.22.1-cp313-cp313t-win_amd64.whl", hash = "sha256:7414eeacfb941fa21acddcd725f1617da5630ec822e498660a4b864d7d998075", size = 1629892, upload-time = "2025-06-04T17:42:57.156Z" }, +] + +[[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 = "transformers" +version = "4.53.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "huggingface-hub" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "regex" }, + { name = "requests" }, + { name = "safetensors" }, + { name = "tokenizers" }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9f/2c/68a0024c311db41bb92d4ec17d22e90b7406a4d28aa18d87662f2bbebcd9/transformers-4.53.1.tar.gz", hash = "sha256:da5a9f66ad480bc2a7f75bc32eaf735fd20ac56af4325ca4ce994021ceb37710", size = 9192189, upload-time = "2025-07-04T08:28:40.571Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/10/8cef2288810a3210659eb3a20711e8387cc35a881a7762ae387806e2d651/transformers-4.53.1-py3-none-any.whl", hash = "sha256:c84f3c3e41c71fdf2c60c8a893e1cd31191b0cb463385f4c276302d2052d837b", size = 10825681, upload-time = "2025-07-04T08:28:37.318Z" }, +] + +[[package]] +name = "triton" +version = "3.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "setuptools", marker = "sys_platform != 'darwin'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/74/1f/dfb531f90a2d367d914adfee771babbd3f1a5b26c3f5fbc458dee21daa78/triton-3.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b89d846b5a4198317fec27a5d3a609ea96b6d557ff44b56c23176546023c4240", size = 155673035, upload-time = "2025-05-29T23:40:02.468Z" }, + { url = "https://files.pythonhosted.org/packages/28/71/bd20ffcb7a64c753dc2463489a61bf69d531f308e390ad06390268c4ea04/triton-3.3.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a3198adb9d78b77818a5388bff89fa72ff36f9da0bc689db2f0a651a67ce6a42", size = 155735832, upload-time = "2025-05-29T23:40:10.522Z" }, +] + +[[package]] +name = "typer" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "rich" }, + { name = "shellingham" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c5/8c/7d682431efca5fd290017663ea4588bf6f2c6aad085c7f108c5dbc316e70/typer-0.16.0.tar.gz", hash = "sha256:af377ffaee1dbe37ae9440cb4e8f11686ea5ce4e9bae01b84ae7c63b87f1dd3b", size = 102625, upload-time = "2025-05-26T14:30:31.824Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/76/42/3efaf858001d2c2913de7f354563e3a3a2f0decae3efe98427125a8f441e/typer-0.16.0-py3-none-any.whl", hash = "sha256:1f79bed11d4d02d4310e3c1b7ba594183bcedb0ac73b27a9e5f28f6fb5b98855", size = 46317, upload-time = "2025-05-26T14:30:30.523Z" }, +] + +[[package]] +name = "typing-extensions" +version = "4.14.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/98/5a/da40306b885cc8c09109dc2e1abd358d5684b1425678151cdaed4731c822/typing_extensions-4.14.1.tar.gz", hash = "sha256:38b39f4aeeab64884ce9f74c94263ef78f3c22467c8724005483154c26648d36", size = 107673, upload-time = "2025-07-04T13:28:34.16Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b5/00/d631e67a838026495268c2f6884f3711a15a9a2a96cd244fdaea53b823fb/typing_extensions-4.14.1-py3-none-any.whl", hash = "sha256:d1e1e3b58374dc93031d6eda2420a48ea44a36c2b4766a4fdeb3710755731d76", size = 43906, upload-time = "2025-07-04T13:28:32.743Z" }, +] + +[[package]] +name = "typing-inspection" +version = "0.4.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f8/b1/0c11f5058406b3af7609f121aaa6b609744687f1d158b3c3a5bf4cc94238/typing_inspection-0.4.1.tar.gz", hash = "sha256:6ae134cc0203c33377d43188d4064e9b357dba58cff3185f22924610e70a9d28", size = 75726, upload-time = "2025-05-21T18:55:23.885Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/17/69/cd203477f944c353c31bade965f880aa1061fd6bf05ded0726ca845b6ff7/typing_inspection-0.4.1-py3-none-any.whl", hash = "sha256:389055682238f53b04f7badcb49b989835495a96700ced5dab2d8feae4b26f51", size = 14552, upload-time = "2025-05-21T18:55:22.152Z" }, +] + +[[package]] +name = "tzdata" +version = "2025.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/95/32/1a225d6164441be760d75c2c42e2780dc0873fe382da3e98a2e1e48361e5/tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9", size = 196380, upload-time = "2025-03-23T13:54:43.652Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8", size = 347839, upload-time = "2025-03-23T13:54:41.845Z" }, +] + +[[package]] +name = "urllib3" +version = "2.5.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760", size = 393185, upload-time = "2025-06-18T14:07:41.644Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc", size = 129795, upload-time = "2025-06-18T14:07:40.39Z" }, +] + +[[package]] +name = "uvicorn" +version = "0.35.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5e/42/e0e305207bb88c6b8d3061399c6a961ffe5fbb7e2aa63c9234df7259e9cd/uvicorn-0.35.0.tar.gz", hash = "sha256:bc662f087f7cf2ce11a1d7fd70b90c9f98ef2e2831556dd078d131b96cc94a01", size = 78473, upload-time = "2025-06-28T16:15:46.058Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl", hash = "sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a", size = 66406, upload-time = "2025-06-28T16:15:44.816Z" }, +] + +[[package]] +name = "xlsxwriter" +version = "3.2.5" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a7/47/7704bac42ac6fe1710ae099b70e6a1e68ed173ef14792b647808c357da43/xlsxwriter-3.2.5.tar.gz", hash = "sha256:7e88469d607cdc920151c0ab3ce9cf1a83992d4b7bc730c5ffdd1a12115a7dbe", size = 213306, upload-time = "2025-06-17T08:59:14.619Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/34/a22e6664211f0c8879521328000bdcae9bf6dbafa94a923e531f6d5b3f73/xlsxwriter-3.2.5-py3-none-any.whl", hash = "sha256:4f4824234e1eaf9d95df9a8fe974585ff91d0f5e3d3f12ace5b71e443c1c6abd", size = 172347, upload-time = "2025-06-17T08:59:13.453Z" }, +] + +[[package]] +name = "yarl" +version = "1.20.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "multidict" }, + { name = "propcache" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3c/fb/efaa23fa4e45537b827620f04cf8f3cd658b76642205162e072703a5b963/yarl-1.20.1.tar.gz", hash = "sha256:d017a4997ee50c91fd5466cef416231bb82177b93b029906cefc542ce14c35ac", size = 186428, upload-time = "2025-06-10T00:46:09.923Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/e1/2411b6d7f769a07687acee88a062af5833cf1966b7266f3d8dfb3d3dc7d3/yarl-1.20.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:0b5ff0fbb7c9f1b1b5ab53330acbfc5247893069e7716840c8e7d5bb7355038a", size = 131811, upload-time = "2025-06-10T00:44:18.933Z" }, + { url = "https://files.pythonhosted.org/packages/b2/27/584394e1cb76fb771371770eccad35de400e7b434ce3142c2dd27392c968/yarl-1.20.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:14f326acd845c2b2e2eb38fb1346c94f7f3b01a4f5c788f8144f9b630bfff9a3", size = 90078, upload-time = "2025-06-10T00:44:20.635Z" }, + { url = "https://files.pythonhosted.org/packages/bf/9a/3246ae92d4049099f52d9b0fe3486e3b500e29b7ea872d0f152966fc209d/yarl-1.20.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f60e4ad5db23f0b96e49c018596707c3ae89f5d0bd97f0ad3684bcbad899f1e7", size = 88748, upload-time = "2025-06-10T00:44:22.34Z" }, + { url = "https://files.pythonhosted.org/packages/a3/25/35afe384e31115a1a801fbcf84012d7a066d89035befae7c5d4284df1e03/yarl-1.20.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:49bdd1b8e00ce57e68ba51916e4bb04461746e794e7c4d4bbc42ba2f18297691", size = 349595, upload-time = "2025-06-10T00:44:24.314Z" }, + { url = "https://files.pythonhosted.org/packages/28/2d/8aca6cb2cabc8f12efcb82749b9cefecbccfc7b0384e56cd71058ccee433/yarl-1.20.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:66252d780b45189975abfed839616e8fd2dbacbdc262105ad7742c6ae58f3e31", size = 342616, upload-time = "2025-06-10T00:44:26.167Z" }, + { url = "https://files.pythonhosted.org/packages/0b/e9/1312633d16b31acf0098d30440ca855e3492d66623dafb8e25b03d00c3da/yarl-1.20.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59174e7332f5d153d8f7452a102b103e2e74035ad085f404df2e40e663a22b28", size = 361324, upload-time = "2025-06-10T00:44:27.915Z" }, + { url = "https://files.pythonhosted.org/packages/bc/a0/688cc99463f12f7669eec7c8acc71ef56a1521b99eab7cd3abb75af887b0/yarl-1.20.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e3968ec7d92a0c0f9ac34d5ecfd03869ec0cab0697c91a45db3fbbd95fe1b653", size = 359676, upload-time = "2025-06-10T00:44:30.041Z" }, + { url = "https://files.pythonhosted.org/packages/af/44/46407d7f7a56e9a85a4c207724c9f2c545c060380718eea9088f222ba697/yarl-1.20.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d1a4fbb50e14396ba3d375f68bfe02215d8e7bc3ec49da8341fe3157f59d2ff5", size = 352614, upload-time = "2025-06-10T00:44:32.171Z" }, + { url = "https://files.pythonhosted.org/packages/b1/91/31163295e82b8d5485d31d9cf7754d973d41915cadce070491778d9c9825/yarl-1.20.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11a62c839c3a8eac2410e951301309426f368388ff2f33799052787035793b02", size = 336766, upload-time = "2025-06-10T00:44:34.494Z" }, + { url = "https://files.pythonhosted.org/packages/b4/8e/c41a5bc482121f51c083c4c2bcd16b9e01e1cf8729e380273a952513a21f/yarl-1.20.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:041eaa14f73ff5a8986b4388ac6bb43a77f2ea09bf1913df7a35d4646db69e53", size = 364615, upload-time = "2025-06-10T00:44:36.856Z" }, + { url = "https://files.pythonhosted.org/packages/e3/5b/61a3b054238d33d70ea06ebba7e58597891b71c699e247df35cc984ab393/yarl-1.20.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:377fae2fef158e8fd9d60b4c8751387b8d1fb121d3d0b8e9b0be07d1b41e83dc", size = 360982, upload-time = "2025-06-10T00:44:39.141Z" }, + { url = "https://files.pythonhosted.org/packages/df/a3/6a72fb83f8d478cb201d14927bc8040af901811a88e0ff2da7842dd0ed19/yarl-1.20.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:1c92f4390e407513f619d49319023664643d3339bd5e5a56a3bebe01bc67ec04", size = 369792, upload-time = "2025-06-10T00:44:40.934Z" }, + { url = "https://files.pythonhosted.org/packages/7c/af/4cc3c36dfc7c077f8dedb561eb21f69e1e9f2456b91b593882b0b18c19dc/yarl-1.20.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d25ddcf954df1754ab0f86bb696af765c5bfaba39b74095f27eececa049ef9a4", size = 382049, upload-time = "2025-06-10T00:44:42.854Z" }, + { url = "https://files.pythonhosted.org/packages/19/3a/e54e2c4752160115183a66dc9ee75a153f81f3ab2ba4bf79c3c53b33de34/yarl-1.20.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:909313577e9619dcff8c31a0ea2aa0a2a828341d92673015456b3ae492e7317b", size = 384774, upload-time = "2025-06-10T00:44:45.275Z" }, + { url = "https://files.pythonhosted.org/packages/9c/20/200ae86dabfca89060ec6447649f219b4cbd94531e425e50d57e5f5ac330/yarl-1.20.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:793fd0580cb9664548c6b83c63b43c477212c0260891ddf86809e1c06c8b08f1", size = 374252, upload-time = "2025-06-10T00:44:47.31Z" }, + { url = "https://files.pythonhosted.org/packages/83/75/11ee332f2f516b3d094e89448da73d557687f7d137d5a0f48c40ff211487/yarl-1.20.1-cp313-cp313-win32.whl", hash = "sha256:468f6e40285de5a5b3c44981ca3a319a4b208ccc07d526b20b12aeedcfa654b7", size = 81198, upload-time = "2025-06-10T00:44:49.164Z" }, + { url = "https://files.pythonhosted.org/packages/ba/ba/39b1ecbf51620b40ab402b0fc817f0ff750f6d92712b44689c2c215be89d/yarl-1.20.1-cp313-cp313-win_amd64.whl", hash = "sha256:495b4ef2fea40596bfc0affe3837411d6aa3371abcf31aac0ccc4bdd64d4ef5c", size = 86346, upload-time = "2025-06-10T00:44:51.182Z" }, + { url = "https://files.pythonhosted.org/packages/43/c7/669c52519dca4c95153c8ad96dd123c79f354a376346b198f438e56ffeb4/yarl-1.20.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:f60233b98423aab21d249a30eb27c389c14929f47be8430efa7dbd91493a729d", size = 138826, upload-time = "2025-06-10T00:44:52.883Z" }, + { url = "https://files.pythonhosted.org/packages/6a/42/fc0053719b44f6ad04a75d7f05e0e9674d45ef62f2d9ad2c1163e5c05827/yarl-1.20.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:6f3eff4cc3f03d650d8755c6eefc844edde99d641d0dcf4da3ab27141a5f8ddf", size = 93217, upload-time = "2025-06-10T00:44:54.658Z" }, + { url = "https://files.pythonhosted.org/packages/4f/7f/fa59c4c27e2a076bba0d959386e26eba77eb52ea4a0aac48e3515c186b4c/yarl-1.20.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:69ff8439d8ba832d6bed88af2c2b3445977eba9a4588b787b32945871c2444e3", size = 92700, upload-time = "2025-06-10T00:44:56.784Z" }, + { url = "https://files.pythonhosted.org/packages/2f/d4/062b2f48e7c93481e88eff97a6312dca15ea200e959f23e96d8ab898c5b8/yarl-1.20.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3cf34efa60eb81dd2645a2e13e00bb98b76c35ab5061a3989c7a70f78c85006d", size = 347644, upload-time = "2025-06-10T00:44:59.071Z" }, + { url = "https://files.pythonhosted.org/packages/89/47/78b7f40d13c8f62b499cc702fdf69e090455518ae544c00a3bf4afc9fc77/yarl-1.20.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:8e0fe9364ad0fddab2688ce72cb7a8e61ea42eff3c7caeeb83874a5d479c896c", size = 323452, upload-time = "2025-06-10T00:45:01.605Z" }, + { url = "https://files.pythonhosted.org/packages/eb/2b/490d3b2dc66f52987d4ee0d3090a147ea67732ce6b4d61e362c1846d0d32/yarl-1.20.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8f64fbf81878ba914562c672024089e3401974a39767747691c65080a67b18c1", size = 346378, upload-time = "2025-06-10T00:45:03.946Z" }, + { url = "https://files.pythonhosted.org/packages/66/ad/775da9c8a94ce925d1537f939a4f17d782efef1f973039d821cbe4bcc211/yarl-1.20.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f6342d643bf9a1de97e512e45e4b9560a043347e779a173250824f8b254bd5ce", size = 353261, upload-time = "2025-06-10T00:45:05.992Z" }, + { url = "https://files.pythonhosted.org/packages/4b/23/0ed0922b47a4f5c6eb9065d5ff1e459747226ddce5c6a4c111e728c9f701/yarl-1.20.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56dac5f452ed25eef0f6e3c6a066c6ab68971d96a9fb441791cad0efba6140d3", size = 335987, upload-time = "2025-06-10T00:45:08.227Z" }, + { url = "https://files.pythonhosted.org/packages/3e/49/bc728a7fe7d0e9336e2b78f0958a2d6b288ba89f25a1762407a222bf53c3/yarl-1.20.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7d7f497126d65e2cad8dc5f97d34c27b19199b6414a40cb36b52f41b79014be", size = 329361, upload-time = "2025-06-10T00:45:10.11Z" }, + { url = "https://files.pythonhosted.org/packages/93/8f/b811b9d1f617c83c907e7082a76e2b92b655400e61730cd61a1f67178393/yarl-1.20.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:67e708dfb8e78d8a19169818eeb5c7a80717562de9051bf2413aca8e3696bf16", size = 346460, upload-time = "2025-06-10T00:45:12.055Z" }, + { url = "https://files.pythonhosted.org/packages/70/fd/af94f04f275f95da2c3b8b5e1d49e3e79f1ed8b6ceb0f1664cbd902773ff/yarl-1.20.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:595c07bc79af2494365cc96ddeb772f76272364ef7c80fb892ef9d0649586513", size = 334486, upload-time = "2025-06-10T00:45:13.995Z" }, + { url = "https://files.pythonhosted.org/packages/84/65/04c62e82704e7dd0a9b3f61dbaa8447f8507655fd16c51da0637b39b2910/yarl-1.20.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:7bdd2f80f4a7df852ab9ab49484a4dee8030023aa536df41f2d922fd57bf023f", size = 342219, upload-time = "2025-06-10T00:45:16.479Z" }, + { url = "https://files.pythonhosted.org/packages/91/95/459ca62eb958381b342d94ab9a4b6aec1ddec1f7057c487e926f03c06d30/yarl-1.20.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:c03bfebc4ae8d862f853a9757199677ab74ec25424d0ebd68a0027e9c639a390", size = 350693, upload-time = "2025-06-10T00:45:18.399Z" }, + { url = "https://files.pythonhosted.org/packages/a6/00/d393e82dd955ad20617abc546a8f1aee40534d599ff555ea053d0ec9bf03/yarl-1.20.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:344d1103e9c1523f32a5ed704d576172d2cabed3122ea90b1d4e11fe17c66458", size = 355803, upload-time = "2025-06-10T00:45:20.677Z" }, + { url = "https://files.pythonhosted.org/packages/9e/ed/c5fb04869b99b717985e244fd93029c7a8e8febdfcffa06093e32d7d44e7/yarl-1.20.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:88cab98aa4e13e1ade8c141daeedd300a4603b7132819c484841bb7af3edce9e", size = 341709, upload-time = "2025-06-10T00:45:23.221Z" }, + { url = "https://files.pythonhosted.org/packages/24/fd/725b8e73ac2a50e78a4534ac43c6addf5c1c2d65380dd48a9169cc6739a9/yarl-1.20.1-cp313-cp313t-win32.whl", hash = "sha256:b121ff6a7cbd4abc28985b6028235491941b9fe8fe226e6fdc539c977ea1739d", size = 86591, upload-time = "2025-06-10T00:45:25.793Z" }, + { url = "https://files.pythonhosted.org/packages/94/c3/b2e9f38bc3e11191981d57ea08cab2166e74ea770024a646617c9cddd9f6/yarl-1.20.1-cp313-cp313t-win_amd64.whl", hash = "sha256:541d050a355bbbc27e55d906bc91cb6fe42f96c01413dd0f4ed5a5240513874f", size = 93003, upload-time = "2025-06-10T00:45:27.752Z" }, + { url = "https://files.pythonhosted.org/packages/b4/2d/2345fce04cfd4bee161bf1e7d9cdc702e3e16109021035dbb24db654a622/yarl-1.20.1-py3-none-any.whl", hash = "sha256:83b8eb083fe4683c6115795d9fc1cfaf2cbbefb19b3a1cb68f6527460f483a77", size = 46542, upload-time = "2025-06-10T00:46:07.521Z" }, +]