From 51e4233cd7d1bfcba98d0bb067d8f87cfde14a4e Mon Sep 17 00:00:00 2001 From: Aleksey Filippov Date: Fri, 25 Apr 2025 16:04:38 +0400 Subject: [PATCH] Add empty project --- .flake8 | 2 + .gitattributes | 1 + .gitignore | 278 ++++ docs/path1.png | Bin 0 -> 22640 bytes docs/path2.png | Bin 0 -> 76078 bytes docs/path3.png | Bin 0 -> 132359 bytes docs/path4.png | Bin 0 -> 39117 bytes poetry.lock | 3288 ++++++++++++++++++++++++++++++++++++++++++++++++ poetry.toml | 2 + pyproject.toml | 24 + readme.md | 43 + 11 files changed, 3638 insertions(+) create mode 100644 .flake8 create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 docs/path1.png create mode 100644 docs/path2.png create mode 100644 docs/path3.png create mode 100644 docs/path4.png create mode 100644 poetry.lock create mode 100644 poetry.toml create mode 100644 pyproject.toml create mode 100644 readme.md diff --git a/.flake8 b/.flake8 new file mode 100644 index 0000000..79a16af --- /dev/null +++ b/.flake8 @@ -0,0 +1,2 @@ +[flake8] +max-line-length = 120 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..a550b61 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=crlf \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d9d355f --- /dev/null +++ b/.gitignore @@ -0,0 +1,278 @@ + +# Created by https://www.toptal.com/developers/gitignore/api/python,pycharm+all +# Edit at https://www.toptal.com/developers/gitignore?templates=python,pycharm+all + +### PyCharm+all ### +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# SonarLint plugin +.idea/sonarlint/ + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### PyCharm+all Patch ### +# Ignores the whole .idea folder and all .iml files +# See https://github.com/joeblau/gitignore.io/issues/186 and https://github.com/joeblau/gitignore.io/issues/360 + +.idea/* + +# Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-249601023 + +*.iml +modules.xml +.idea/misc.xml +*.ipr + +# Sonarlint plugin +.idea/sonarlint + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintainted in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +### VisualStudioCode ### +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### VisualStudioCode Patch ### +# Ignore all local history of files +.history +.ionide + +# End of https://www.toptal.com/developers/gitignore/api/python,pycharm+all + +# JS +node_modules/ + +test.csv \ No newline at end of file diff --git a/docs/path1.png b/docs/path1.png new file mode 100644 index 0000000000000000000000000000000000000000..a94aff4e59161e7abd4c8c20923a5596f7094c49 GIT binary patch literal 22640 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 literal 0 HcmV?d00001 diff --git a/docs/path2.png b/docs/path2.png new file mode 100644 index 0000000000000000000000000000000000000000..3b22399aa4a6871783030d686eb1a4b19a9bed13 GIT binary patch literal 76078 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 N7@1uuzjXV_zW^`RWu^cC literal 0 HcmV?d00001 diff --git a/docs/path3.png b/docs/path3.png new file mode 100644 index 0000000000000000000000000000000000000000..557256db46e81b78d13946712b1f107a82f9f9a7 GIT binary patch literal 132359 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
aWM+g6rUldQW4vykk*V!69UmIT8 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 literal 0 HcmV?d00001 diff --git a/docs/path4.png b/docs/path4.png new file mode 100644 index 0000000000000000000000000000000000000000..4f65865e508744a75e444b5462ed1065aa29069c GIT binary patch literal 39117 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 literal 0 HcmV?d00001 diff --git a/poetry.lock b/poetry.lock new file mode 100644 index 0000000..ac00b5a --- /dev/null +++ b/poetry.lock @@ -0,0 +1,3288 @@ +# This file is automatically @generated by Poetry 2.1.2 and should not be changed by hand. + +[[package]] +name = "absl-py" +version = "2.2.2" +description = "Abseil Python Common Libraries, see https://github.com/abseil/abseil-py." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "absl_py-2.2.2-py3-none-any.whl", hash = "sha256:e5797bc6abe45f64fd95dc06394ca3f2bedf3b5d895e9da691c9ee3397d70092"}, + {file = "absl_py-2.2.2.tar.gz", hash = "sha256:bf25b2c2eed013ca456918c453d687eab4e8309fba81ee2f4c1a6aa2494175eb"}, +] + +[[package]] +name = "anyio" +version = "4.9.0" +description = "High level compatibility layer for multiple asynchronous event loop implementations" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "anyio-4.9.0-py3-none-any.whl", hash = "sha256:9f76d541cad6e36af7beb62e978876f3b41e3e04f2c1fbf0884604c0a9c4d93c"}, + {file = "anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028"}, +] + +[package.dependencies] +idna = ">=2.8" +sniffio = ">=1.1" +typing_extensions = {version = ">=4.5", markers = "python_version < \"3.13\""} + +[package.extras] +doc = ["Sphinx (>=8.2,<9.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx_rtd_theme"] +test = ["anyio[trio]", "blockbuster (>=1.5.23)", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "trustme", "truststore (>=0.9.1) ; python_version >= \"3.10\"", "uvloop (>=0.21) ; platform_python_implementation == \"CPython\" and platform_system != \"Windows\" and python_version < \"3.14\""] +trio = ["trio (>=0.26.1)"] + +[[package]] +name = "appnope" +version = "0.1.4" +description = "Disable App Nap on macOS >= 10.9" +optional = false +python-versions = ">=3.6" +groups = ["main"] +markers = "platform_system == \"Darwin\"" +files = [ + {file = "appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c"}, + {file = "appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee"}, +] + +[[package]] +name = "argon2-cffi" +version = "23.1.0" +description = "Argon2 for Python" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "argon2_cffi-23.1.0-py3-none-any.whl", hash = "sha256:c670642b78ba29641818ab2e68bd4e6a78ba53b7eff7b4c3815ae16abf91c7ea"}, + {file = "argon2_cffi-23.1.0.tar.gz", hash = "sha256:879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08"}, +] + +[package.dependencies] +argon2-cffi-bindings = "*" + +[package.extras] +dev = ["argon2-cffi[tests,typing]", "tox (>4)"] +docs = ["furo", "myst-parser", "sphinx", "sphinx-copybutton", "sphinx-notfound-page"] +tests = ["hypothesis", "pytest"] +typing = ["mypy"] + +[[package]] +name = "argon2-cffi-bindings" +version = "21.2.0" +description = "Low-level CFFI bindings for Argon2" +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"}, + {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"}, + {file = "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"}, + {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"}, + {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"}, +] + +[package.dependencies] +cffi = ">=1.0.1" + +[package.extras] +dev = ["cogapp", "pre-commit", "pytest", "wheel"] +tests = ["pytest"] + +[[package]] +name = "arrow" +version = "1.3.0" +description = "Better dates & times for Python" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "arrow-1.3.0-py3-none-any.whl", hash = "sha256:c728b120ebc00eb84e01882a6f5e7927a53960aa990ce7dd2b10f39005a67f80"}, + {file = "arrow-1.3.0.tar.gz", hash = "sha256:d4540617648cb5f895730f1ad8c82a65f2dad0166f57b75f3ca54759c4d67a85"}, +] + +[package.dependencies] +python-dateutil = ">=2.7.0" +types-python-dateutil = ">=2.8.10" + +[package.extras] +doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] +test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] + +[[package]] +name = "asttokens" +version = "3.0.0" +description = "Annotate AST trees with source code positions" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "asttokens-3.0.0-py3-none-any.whl", hash = "sha256:e3078351a059199dd5138cb1c706e6430c05eff2ff136af5eb4790f9d28932e2"}, + {file = "asttokens-3.0.0.tar.gz", hash = "sha256:0dcd8baa8d62b0c1d118b399b2ddba3c4aff271d0d7a9e0d4c1681c79035bbc7"}, +] + +[package.extras] +astroid = ["astroid (>=2,<4)"] +test = ["astroid (>=2,<4)", "pytest", "pytest-cov", "pytest-xdist"] + +[[package]] +name = "async-lru" +version = "2.0.5" +description = "Simple LRU cache for asyncio" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "async_lru-2.0.5-py3-none-any.whl", hash = "sha256:ab95404d8d2605310d345932697371a5f40def0487c03d6d0ad9138de52c9943"}, + {file = "async_lru-2.0.5.tar.gz", hash = "sha256:481d52ccdd27275f42c43a928b4a50c3bfb2d67af4e78b170e3e0bb39c66e5bb"}, +] + +[[package]] +name = "attrs" +version = "25.3.0" +description = "Classes Without Boilerplate" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3"}, + {file = "attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b"}, +] + +[package.extras] +benchmark = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +cov = ["cloudpickle ; platform_python_implementation == \"CPython\"", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +dev = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier"] +tests = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\""] + +[[package]] +name = "babel" +version = "2.17.0" +description = "Internationalization utilities" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "babel-2.17.0-py3-none-any.whl", hash = "sha256:4d0b53093fdfb4b21c92b5213dba5a1b23885afa8383709427046b21c366e5f2"}, + {file = "babel-2.17.0.tar.gz", hash = "sha256:0c54cffb19f690cdcc52a3b50bcbf71e07a808d1c80d549f2459b9d2cf0afb9d"}, +] + +[package.extras] +dev = ["backports.zoneinfo ; python_version < \"3.9\"", "freezegun (>=1.0,<2.0)", "jinja2 (>=3.0)", "pytest (>=6.0)", "pytest-cov", "pytz", "setuptools", "tzdata ; sys_platform == \"win32\""] + +[[package]] +name = "beautifulsoup4" +version = "4.13.4" +description = "Screen-scraping library" +optional = false +python-versions = ">=3.7.0" +groups = ["main"] +files = [ + {file = "beautifulsoup4-4.13.4-py3-none-any.whl", hash = "sha256:9bbbb14bfde9d79f38b8cd5f8c7c85f4b8f2523190ebed90e950a8dea4cb1c4b"}, + {file = "beautifulsoup4-4.13.4.tar.gz", hash = "sha256:dbb3c4e1ceae6aefebdaf2423247260cd062430a410e38c66f2baa50a8437195"}, +] + +[package.dependencies] +soupsieve = ">1.2" +typing-extensions = ">=4.0.0" + +[package.extras] +cchardet = ["cchardet"] +chardet = ["chardet"] +charset-normalizer = ["charset-normalizer"] +html5lib = ["html5lib"] +lxml = ["lxml"] + +[[package]] +name = "bleach" +version = "6.2.0" +description = "An easy safelist-based HTML-sanitizing tool." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "bleach-6.2.0-py3-none-any.whl", hash = "sha256:117d9c6097a7c3d22fd578fcd8d35ff1e125df6736f554da4e432fdd63f31e5e"}, + {file = "bleach-6.2.0.tar.gz", hash = "sha256:123e894118b8a599fd80d3ec1a6d4cc7ce4e5882b1317a7e1ba69b56e95f991f"}, +] + +[package.dependencies] +tinycss2 = {version = ">=1.1.0,<1.5", optional = true, markers = "extra == \"css\""} +webencodings = "*" + +[package.extras] +css = ["tinycss2 (>=1.1.0,<1.5)"] + +[[package]] +name = "certifi" +version = "2025.1.31" +description = "Python package for providing Mozilla's CA Bundle." +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "certifi-2025.1.31-py3-none-any.whl", hash = "sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe"}, + {file = "certifi-2025.1.31.tar.gz", hash = "sha256:3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651"}, +] + +[[package]] +name = "cffi" +version = "1.17.1" +description = "Foreign Function Interface for Python calling C code." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"}, + {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6"}, + {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e"}, + {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be"}, + {file = "cffi-1.17.1-cp310-cp310-win32.whl", hash = "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c"}, + {file = "cffi-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401"}, + {file = "cffi-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6"}, + {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f"}, + {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b"}, + {file = "cffi-1.17.1-cp311-cp311-win32.whl", hash = "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655"}, + {file = "cffi-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4"}, + {file = "cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99"}, + {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3"}, + {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8"}, + {file = "cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65"}, + {file = "cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e"}, + {file = "cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4"}, + {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed"}, + {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9"}, + {file = "cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d"}, + {file = "cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a"}, + {file = "cffi-1.17.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:636062ea65bd0195bc012fea9321aca499c0504409f413dc88af450b57ffd03b"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7eac2ef9b63c79431bc4b25f1cd649d7f061a28808cbc6c47b534bd789ef964"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e221cf152cff04059d011ee126477f0d9588303eb57e88923578ace7baad17f9"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31000ec67d4221a71bd3f67df918b1f88f676f1c3b535a7eb473255fdc0b83fc"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f17be4345073b0a7b8ea599688f692ac3ef23ce28e5df79c04de519dbc4912c"}, + {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2b1fac190ae3ebfe37b979cc1ce69c81f4e4fe5746bb401dca63a9062cdaf1"}, + {file = "cffi-1.17.1-cp38-cp38-win32.whl", hash = "sha256:7596d6620d3fa590f677e9ee430df2958d2d6d6de2feeae5b20e82c00b76fbf8"}, + {file = "cffi-1.17.1-cp38-cp38-win_amd64.whl", hash = "sha256:78122be759c3f8a014ce010908ae03364d00a1f81ab5c7f4a7a5120607ea56e1"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b2ab587605f4ba0bf81dc0cb08a41bd1c0a5906bd59243d56bad7668a6fc6c16"}, + {file = "cffi-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28b16024becceed8c6dfbc75629e27788d8a3f9030691a1dbf9821a128b22c36"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d599671f396c4723d016dbddb72fe8e0397082b0a77a4fab8028923bec050e8"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca74b8dbe6e8e8263c0ffd60277de77dcee6c837a3d0881d8c1ead7268c9e576"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98e3969bcff97cae1b2def8ba499ea3d6f31ddfdb7635374834cf89a1a08ecf0"}, + {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdf5ce3acdfd1661132f2a9c19cac174758dc2352bfe37d98aa7512c6b7178b3"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9755e4345d1ec879e3849e62222a18c7174d65a6a92d5b346b1863912168b595"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f1e22e8c4419538cb197e4dd60acc919d7696e5ef98ee4da4e01d3f8cfa4cc5a"}, + {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c03e868a0b3bc35839ba98e74211ed2b05d2119be4e8a0f224fba9384f1fe02e"}, + {file = "cffi-1.17.1-cp39-cp39-win32.whl", hash = "sha256:e31ae45bc2e29f6b2abd0de1cc3b9d5205aa847cafaecb8af1476a609a2f6eb7"}, + {file = "cffi-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662"}, + {file = "cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"}, +] + +[package.dependencies] +pycparser = "*" + +[[package]] +name = "charset-normalizer" +version = "3.4.1" +description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "charset_normalizer-3.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:91b36a978b5ae0ee86c394f5a54d6ef44db1de0815eb43de826d41d21e4af3de"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7461baadb4dc00fd9e0acbe254e3d7d2112e7f92ced2adc96e54ef6501c5f176"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e218488cd232553829be0664c2292d3af2eeeb94b32bea483cf79ac6a694e037"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:80ed5e856eb7f30115aaf94e4a08114ccc8813e6ed1b5efa74f9f82e8509858f"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b010a7a4fd316c3c484d482922d13044979e78d1861f0e0650423144c616a46a"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4532bff1b8421fd0a320463030c7520f56a79c9024a4e88f01c537316019005a"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d973f03c0cb71c5ed99037b870f2be986c3c05e63622c017ea9816881d2dd247"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:3a3bd0dcd373514dcec91c411ddb9632c0d7d92aed7093b8c3bbb6d69ca74408"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d9c3cdf5390dcd29aa8056d13e8e99526cda0305acc038b96b30352aff5ff2bb"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:2bdfe3ac2e1bbe5b59a1a63721eb3b95fc9b6817ae4a46debbb4e11f6232428d"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:eab677309cdb30d047996b36d34caeda1dc91149e4fdca0b1a039b3f79d9a807"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-win32.whl", hash = "sha256:c0429126cf75e16c4f0ad00ee0eae4242dc652290f940152ca8c75c3a4b6ee8f"}, + {file = "charset_normalizer-3.4.1-cp310-cp310-win_amd64.whl", hash = "sha256:9f0b8b1c6d84c8034a44893aba5e767bf9c7a211e313a9605d9c617d7083829f"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:8bfa33f4f2672964266e940dd22a195989ba31669bd84629f05fab3ef4e2d125"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28bf57629c75e810b6ae989f03c0828d64d6b26a5e205535585f96093e405ed1"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f08ff5e948271dc7e18a35641d2f11a4cd8dfd5634f55228b691e62b37125eb3"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:234ac59ea147c59ee4da87a0c0f098e9c8d169f4dc2a159ef720f1a61bbe27cd"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd4ec41f914fa74ad1b8304bbc634b3de73d2a0889bd32076342a573e0779e00"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:eea6ee1db730b3483adf394ea72f808b6e18cf3cb6454b4d86e04fa8c4327a12"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c96836c97b1238e9c9e3fe90844c947d5afbf4f4c92762679acfe19927d81d77"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:4d86f7aff21ee58f26dcf5ae81a9addbd914115cdebcbb2217e4f0ed8982e146"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:09b5e6733cbd160dcc09589227187e242a30a49ca5cefa5a7edd3f9d19ed53fd"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:5777ee0881f9499ed0f71cc82cf873d9a0ca8af166dfa0af8ec4e675b7df48e6"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:237bdbe6159cff53b4f24f397d43c6336c6b0b42affbe857970cefbb620911c8"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-win32.whl", hash = "sha256:8417cb1f36cc0bc7eaba8ccb0e04d55f0ee52df06df3ad55259b9a323555fc8b"}, + {file = "charset_normalizer-3.4.1-cp311-cp311-win_amd64.whl", hash = "sha256:d7f50a1f8c450f3925cb367d011448c39239bb3eb4117c36a6d354794de4ce76"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:73d94b58ec7fecbc7366247d3b0b10a21681004153238750bb67bd9012414545"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad3e487649f498dd991eeb901125411559b22e8d7ab25d3aeb1af367df5efd7"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c30197aa96e8eed02200a83fba2657b4c3acd0f0aa4bdc9f6c1af8e8962e0757"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2369eea1ee4a7610a860d88f268eb39b95cb588acd7235e02fd5a5601773d4fa"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc2722592d8998c870fa4e290c2eec2c1569b87fe58618e67d38b4665dfa680d"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ffc9202a29ab3920fa812879e95a9e78b2465fd10be7fcbd042899695d75e616"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:804a4d582ba6e5b747c625bf1255e6b1507465494a40a2130978bda7b932c90b"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:0f55e69f030f7163dffe9fd0752b32f070566451afe180f99dbeeb81f511ad8d"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:c4c3e6da02df6fa1410a7680bd3f63d4f710232d3139089536310d027950696a"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:5df196eb874dae23dcfb968c83d4f8fdccb333330fe1fc278ac5ceeb101003a9"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e358e64305fe12299a08e08978f51fc21fac060dcfcddd95453eabe5b93ed0e1"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-win32.whl", hash = "sha256:9b23ca7ef998bc739bf6ffc077c2116917eabcc901f88da1b9856b210ef63f35"}, + {file = "charset_normalizer-3.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:6ff8a4a60c227ad87030d76e99cd1698345d4491638dfa6673027c48b3cd395f"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:aabfa34badd18f1da5ec1bc2715cadc8dca465868a4e73a0173466b688f29dda"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22e14b5d70560b8dd51ec22863f370d1e595ac3d024cb8ad7d308b4cd95f8313"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8436c508b408b82d87dc5f62496973a1805cd46727c34440b0d29d8a2f50a6c9"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2d074908e1aecee37a7635990b2c6d504cd4766c7bc9fc86d63f9c09af3fa11b"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:955f8851919303c92343d2f66165294848d57e9bba6cf6e3625485a70a038d11"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:44ecbf16649486d4aebafeaa7ec4c9fed8b88101f4dd612dcaf65d5e815f837f"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0924e81d3d5e70f8126529951dac65c1010cdf117bb75eb02dd12339b57749dd"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:2967f74ad52c3b98de4c3b32e1a44e32975e008a9cd2a8cc8966d6a5218c5cb2"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c75cb2a3e389853835e84a2d8fb2b81a10645b503eca9bcb98df6b5a43eb8886"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:09b26ae6b1abf0d27570633b2b078a2a20419c99d66fb2823173d73f188ce601"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fa88b843d6e211393a37219e6a1c1df99d35e8fd90446f1118f4216e307e48cd"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-win32.whl", hash = "sha256:eb8178fe3dba6450a3e024e95ac49ed3400e506fd4e9e5c32d30adda88cbd407"}, + {file = "charset_normalizer-3.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:b1ac5992a838106edb89654e0aebfc24f5848ae2547d22c2c3f66454daa11971"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f30bf9fd9be89ecb2360c7d94a711f00c09b976258846efe40db3d05828e8089"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:97f68b8d6831127e4787ad15e6757232e14e12060bec17091b85eb1486b91d8d"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7974a0b5ecd505609e3b19742b60cee7aa2aa2fb3151bc917e6e2646d7667dcf"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc54db6c8593ef7d4b2a331b58653356cf04f67c960f584edb7c3d8c97e8f39e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:311f30128d7d333eebd7896965bfcfbd0065f1716ec92bd5638d7748eb6f936a"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:7d053096f67cd1241601111b698f5cad775f97ab25d81567d3f59219b5f1adbd"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:807f52c1f798eef6cf26beb819eeb8819b1622ddfeef9d0977a8502d4db6d534"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:dccbe65bd2f7f7ec22c4ff99ed56faa1e9f785482b9bbd7c717e26fd723a1d1e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_s390x.whl", hash = "sha256:2fb9bd477fdea8684f78791a6de97a953c51831ee2981f8e4f583ff3b9d9687e"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:01732659ba9b5b873fc117534143e4feefecf3b2078b0a6a2e925271bb6f4cfa"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-win32.whl", hash = "sha256:7a4f97a081603d2050bfaffdefa5b02a9ec823f8348a572e39032caa8404a487"}, + {file = "charset_normalizer-3.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:7b1bef6280950ee6c177b326508f86cad7ad4dff12454483b51d8b7d673a2c5d"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:ecddf25bee22fe4fe3737a399d0d177d72bc22be6913acfab364b40bce1ba83c"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c60ca7339acd497a55b0ea5d506b2a2612afb2826560416f6894e8b5770d4a9"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b7b2d86dd06bfc2ade3312a83a5c364c7ec2e3498f8734282c6c3d4b07b346b8"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dd78cfcda14a1ef52584dbb008f7ac81c1328c0f58184bf9a84c49c605002da6"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e27f48bcd0957c6d4cb9d6fa6b61d192d0b13d5ef563e5f2ae35feafc0d179c"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:01ad647cdd609225c5350561d084b42ddf732f4eeefe6e678765636791e78b9a"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:619a609aa74ae43d90ed2e89bdd784765de0a25ca761b93e196d938b8fd1dbbd"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:89149166622f4db9b4b6a449256291dc87a99ee53151c74cbd82a53c8c2f6ccd"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:7709f51f5f7c853f0fb938bcd3bc59cdfdc5203635ffd18bf354f6967ea0f824"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_s390x.whl", hash = "sha256:345b0426edd4e18138d6528aed636de7a9ed169b4aaf9d61a8c19e39d26838ca"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:0907f11d019260cdc3f94fbdb23ff9125f6b5d1039b76003b5b0ac9d6a6c9d5b"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-win32.whl", hash = "sha256:ea0d8d539afa5eb2728aa1932a988a9a7af94f18582ffae4bc10b3fbdad0626e"}, + {file = "charset_normalizer-3.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:329ce159e82018d646c7ac45b01a430369d526569ec08516081727a20e9e4af4"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b97e690a2118911e39b4042088092771b4ae3fc3aa86518f84b8cf6888dbdb41"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:78baa6d91634dfb69ec52a463534bc0df05dbd546209b79a3880a34487f4b84f"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1a2bc9f351a75ef49d664206d51f8e5ede9da246602dc2d2726837620ea034b2"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:75832c08354f595c760a804588b9357d34ec00ba1c940c15e31e96d902093770"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0af291f4fe114be0280cdd29d533696a77b5b49cfde5467176ecab32353395c4"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0167ddc8ab6508fe81860a57dd472b2ef4060e8d378f0cc555707126830f2537"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:2a75d49014d118e4198bcee5ee0a6f25856b29b12dbf7cd012791f8a6cc5c496"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:363e2f92b0f0174b2f8238240a1a30142e3db7b957a5dd5689b0e75fb717cc78"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:ab36c8eb7e454e34e60eb55ca5d241a5d18b2c6244f6827a30e451c42410b5f7"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_s390x.whl", hash = "sha256:4c0907b1928a36d5a998d72d64d8eaa7244989f7aaaf947500d3a800c83a3fd6"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:04432ad9479fa40ec0f387795ddad4437a2b50417c69fa275e212933519ff294"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-win32.whl", hash = "sha256:3bed14e9c89dcb10e8f3a29f9ccac4955aebe93c71ae803af79265c9ca5644c5"}, + {file = "charset_normalizer-3.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:49402233c892a461407c512a19435d1ce275543138294f7ef013f0b63d5d3765"}, + {file = "charset_normalizer-3.4.1-py3-none-any.whl", hash = "sha256:d98b1668f06378c6dbefec3b92299716b931cd4e6061f3c875a71ced1780ab85"}, + {file = "charset_normalizer-3.4.1.tar.gz", hash = "sha256:44251f18cd68a75b56585dd00dae26183e102cd5e0f9f1466e6df5da2ed64ea3"}, +] + +[[package]] +name = "colorama" +version = "0.4.6" +description = "Cross-platform colored terminal text." +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" +groups = ["main"] +markers = "sys_platform == \"win32\"" +files = [ + {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, + {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, +] + +[[package]] +name = "comm" +version = "0.2.2" +description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "comm-0.2.2-py3-none-any.whl", hash = "sha256:e6fb86cb70ff661ee8c9c14e7d36d6de3b4066f1441be4063df9c5009f0a64d3"}, + {file = "comm-0.2.2.tar.gz", hash = "sha256:3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e"}, +] + +[package.dependencies] +traitlets = ">=4" + +[package.extras] +test = ["pytest"] + +[[package]] +name = "contourpy" +version = "1.3.2" +description = "Python library for calculating contours of 2D quadrilateral grids" +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "contourpy-1.3.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ba38e3f9f330af820c4b27ceb4b9c7feee5fe0493ea53a8720f4792667465934"}, + {file = "contourpy-1.3.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:dc41ba0714aa2968d1f8674ec97504a8f7e334f48eeacebcaa6256213acb0989"}, + {file = "contourpy-1.3.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9be002b31c558d1ddf1b9b415b162c603405414bacd6932d031c5b5a8b757f0d"}, + {file = "contourpy-1.3.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8d2e74acbcba3bfdb6d9d8384cdc4f9260cae86ed9beee8bd5f54fee49a430b9"}, + {file = "contourpy-1.3.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e259bced5549ac64410162adc973c5e2fb77f04df4a439d00b478e57a0e65512"}, + {file = "contourpy-1.3.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad687a04bc802cbe8b9c399c07162a3c35e227e2daccf1668eb1f278cb698631"}, + {file = "contourpy-1.3.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:cdd22595308f53ef2f891040ab2b93d79192513ffccbd7fe19be7aa773a5e09f"}, + {file = "contourpy-1.3.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b4f54d6a2defe9f257327b0f243612dd051cc43825587520b1bf74a31e2f6ef2"}, + {file = "contourpy-1.3.2-cp310-cp310-win32.whl", hash = "sha256:f939a054192ddc596e031e50bb13b657ce318cf13d264f095ce9db7dc6ae81c0"}, + {file = "contourpy-1.3.2-cp310-cp310-win_amd64.whl", hash = "sha256:c440093bbc8fc21c637c03bafcbef95ccd963bc6e0514ad887932c18ca2a759a"}, + {file = "contourpy-1.3.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6a37a2fb93d4df3fc4c0e363ea4d16f83195fc09c891bc8ce072b9d084853445"}, + {file = "contourpy-1.3.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b7cd50c38f500bbcc9b6a46643a40e0913673f869315d8e70de0438817cb7773"}, + {file = "contourpy-1.3.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d6658ccc7251a4433eebd89ed2672c2ed96fba367fd25ca9512aa92a4b46c4f1"}, + {file = "contourpy-1.3.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:70771a461aaeb335df14deb6c97439973d253ae70660ca085eec25241137ef43"}, + {file = "contourpy-1.3.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65a887a6e8c4cd0897507d814b14c54a8c2e2aa4ac9f7686292f9769fcf9a6ab"}, + {file = "contourpy-1.3.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3859783aefa2b8355697f16642695a5b9792e7a46ab86da1118a4a23a51a33d7"}, + {file = "contourpy-1.3.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:eab0f6db315fa4d70f1d8ab514e527f0366ec021ff853d7ed6a2d33605cf4b83"}, + {file = "contourpy-1.3.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d91a3ccc7fea94ca0acab82ceb77f396d50a1f67412efe4c526f5d20264e6ecd"}, + {file = "contourpy-1.3.2-cp311-cp311-win32.whl", hash = "sha256:1c48188778d4d2f3d48e4643fb15d8608b1d01e4b4d6b0548d9b336c28fc9b6f"}, + {file = "contourpy-1.3.2-cp311-cp311-win_amd64.whl", hash = "sha256:5ebac872ba09cb8f2131c46b8739a7ff71de28a24c869bcad554477eb089a878"}, + {file = "contourpy-1.3.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:4caf2bcd2969402bf77edc4cb6034c7dd7c0803213b3523f111eb7460a51b8d2"}, + {file = "contourpy-1.3.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:82199cb78276249796419fe36b7386bd8d2cc3f28b3bc19fe2454fe2e26c4c15"}, + {file = "contourpy-1.3.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:106fab697af11456fcba3e352ad50effe493a90f893fca6c2ca5c033820cea92"}, + {file = "contourpy-1.3.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d14f12932a8d620e307f715857107b1d1845cc44fdb5da2bc8e850f5ceba9f87"}, + {file = "contourpy-1.3.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:532fd26e715560721bb0d5fc7610fce279b3699b018600ab999d1be895b09415"}, + {file = "contourpy-1.3.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f26b383144cf2d2c29f01a1e8170f50dacf0eac02d64139dcd709a8ac4eb3cfe"}, + {file = "contourpy-1.3.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c49f73e61f1f774650a55d221803b101d966ca0c5a2d6d5e4320ec3997489441"}, + {file = "contourpy-1.3.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3d80b2c0300583228ac98d0a927a1ba6a2ba6b8a742463c564f1d419ee5b211e"}, + {file = "contourpy-1.3.2-cp312-cp312-win32.whl", hash = "sha256:90df94c89a91b7362e1142cbee7568f86514412ab8a2c0d0fca72d7e91b62912"}, + {file = "contourpy-1.3.2-cp312-cp312-win_amd64.whl", hash = "sha256:8c942a01d9163e2e5cfb05cb66110121b8d07ad438a17f9e766317bcb62abf73"}, + {file = "contourpy-1.3.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:de39db2604ae755316cb5967728f4bea92685884b1e767b7c24e983ef5f771cb"}, + {file = "contourpy-1.3.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3f9e896f447c5c8618f1edb2bafa9a4030f22a575ec418ad70611450720b5b08"}, + {file = "contourpy-1.3.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71e2bd4a1c4188f5c2b8d274da78faab884b59df20df63c34f74aa1813c4427c"}, + {file = "contourpy-1.3.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de425af81b6cea33101ae95ece1f696af39446db9682a0b56daaa48cfc29f38f"}, + {file = "contourpy-1.3.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:977e98a0e0480d3fe292246417239d2d45435904afd6d7332d8455981c408b85"}, + {file = "contourpy-1.3.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:434f0adf84911c924519d2b08fc10491dd282b20bdd3fa8f60fd816ea0b48841"}, + {file = "contourpy-1.3.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c66c4906cdbc50e9cba65978823e6e00b45682eb09adbb78c9775b74eb222422"}, + {file = "contourpy-1.3.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8b7fc0cd78ba2f4695fd0a6ad81a19e7e3ab825c31b577f384aa9d7817dc3bef"}, + {file = "contourpy-1.3.2-cp313-cp313-win32.whl", hash = "sha256:15ce6ab60957ca74cff444fe66d9045c1fd3e92c8936894ebd1f3eef2fff075f"}, + {file = "contourpy-1.3.2-cp313-cp313-win_amd64.whl", hash = "sha256:e1578f7eafce927b168752ed7e22646dad6cd9bca673c60bff55889fa236ebf9"}, + {file = "contourpy-1.3.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:0475b1f6604896bc7c53bb070e355e9321e1bc0d381735421a2d2068ec56531f"}, + {file = "contourpy-1.3.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c85bb486e9be652314bb5b9e2e3b0d1b2e643d5eec4992c0fbe8ac71775da739"}, + {file = "contourpy-1.3.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:745b57db7758f3ffc05a10254edd3182a2a83402a89c00957a8e8a22f5582823"}, + {file = "contourpy-1.3.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:970e9173dbd7eba9b4e01aab19215a48ee5dd3f43cef736eebde064a171f89a5"}, + {file = "contourpy-1.3.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c6c4639a9c22230276b7bffb6a850dfc8258a2521305e1faefe804d006b2e532"}, + {file = "contourpy-1.3.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc829960f34ba36aad4302e78eabf3ef16a3a100863f0d4eeddf30e8a485a03b"}, + {file = "contourpy-1.3.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:d32530b534e986374fc19eaa77fcb87e8a99e5431499949b828312bdcd20ac52"}, + {file = "contourpy-1.3.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:e298e7e70cf4eb179cc1077be1c725b5fd131ebc81181bf0c03525c8abc297fd"}, + {file = "contourpy-1.3.2-cp313-cp313t-win32.whl", hash = "sha256:d0e589ae0d55204991450bb5c23f571c64fe43adaa53f93fc902a84c96f52fe1"}, + {file = "contourpy-1.3.2-cp313-cp313t-win_amd64.whl", hash = "sha256:78e9253c3de756b3f6a5174d024c4835acd59eb3f8e2ca13e775dbffe1558f69"}, + {file = "contourpy-1.3.2-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:fd93cc7f3139b6dd7aab2f26a90dde0aa9fc264dbf70f6740d498a70b860b82c"}, + {file = "contourpy-1.3.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:107ba8a6a7eec58bb475329e6d3b95deba9440667c4d62b9b6063942b61d7f16"}, + {file = "contourpy-1.3.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:ded1706ed0c1049224531b81128efbd5084598f18d8a2d9efae833edbd2b40ad"}, + {file = "contourpy-1.3.2-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:5f5964cdad279256c084b69c3f412b7801e15356b16efa9d78aa974041903da0"}, + {file = "contourpy-1.3.2-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:49b65a95d642d4efa8f64ba12558fcb83407e58a2dfba9d796d77b63ccfcaff5"}, + {file = "contourpy-1.3.2-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:8c5acb8dddb0752bf252e01a3035b21443158910ac16a3b0d20e7fed7d534ce5"}, + {file = "contourpy-1.3.2.tar.gz", hash = "sha256:b6945942715a034c671b7fc54f9588126b0b8bf23db2696e3ca8328f3ff0ab54"}, +] + +[package.dependencies] +numpy = ">=1.23" + +[package.extras] +bokeh = ["bokeh", "selenium"] +docs = ["furo", "sphinx (>=7.2)", "sphinx-copybutton"] +mypy = ["bokeh", "contourpy[bokeh,docs]", "docutils-stubs", "mypy (==1.15.0)", "types-Pillow"] +test = ["Pillow", "contourpy[test-no-images]", "matplotlib"] +test-no-images = ["pytest", "pytest-cov", "pytest-rerunfailures", "pytest-xdist", "wurlitzer"] + +[[package]] +name = "cycler" +version = "0.12.1" +description = "Composable style cycles" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30"}, + {file = "cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c"}, +] + +[package.extras] +docs = ["ipython", "matplotlib", "numpydoc", "sphinx"] +tests = ["pytest", "pytest-cov", "pytest-xdist"] + +[[package]] +name = "debugpy" +version = "1.8.14" +description = "An implementation of the Debug Adapter Protocol for Python" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "debugpy-1.8.14-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:93fee753097e85623cab1c0e6a68c76308cd9f13ffdf44127e6fab4fbf024339"}, + {file = "debugpy-1.8.14-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d937d93ae4fa51cdc94d3e865f535f185d5f9748efb41d0d49e33bf3365bd79"}, + {file = "debugpy-1.8.14-cp310-cp310-win32.whl", hash = "sha256:c442f20577b38cc7a9aafecffe1094f78f07fb8423c3dddb384e6b8f49fd2987"}, + {file = "debugpy-1.8.14-cp310-cp310-win_amd64.whl", hash = "sha256:f117dedda6d969c5c9483e23f573b38f4e39412845c7bc487b6f2648df30fe84"}, + {file = "debugpy-1.8.14-cp311-cp311-macosx_14_0_universal2.whl", hash = "sha256:1b2ac8c13b2645e0b1eaf30e816404990fbdb168e193322be8f545e8c01644a9"}, + {file = "debugpy-1.8.14-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cf431c343a99384ac7eab2f763980724834f933a271e90496944195318c619e2"}, + {file = "debugpy-1.8.14-cp311-cp311-win32.whl", hash = "sha256:c99295c76161ad8d507b413cd33422d7c542889fbb73035889420ac1fad354f2"}, + {file = "debugpy-1.8.14-cp311-cp311-win_amd64.whl", hash = "sha256:7816acea4a46d7e4e50ad8d09d963a680ecc814ae31cdef3622eb05ccacf7b01"}, + {file = "debugpy-1.8.14-cp312-cp312-macosx_14_0_universal2.whl", hash = "sha256:8899c17920d089cfa23e6005ad9f22582fd86f144b23acb9feeda59e84405b84"}, + {file = "debugpy-1.8.14-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f6bb5c0dcf80ad5dbc7b7d6eac484e2af34bdacdf81df09b6a3e62792b722826"}, + {file = "debugpy-1.8.14-cp312-cp312-win32.whl", hash = "sha256:281d44d248a0e1791ad0eafdbbd2912ff0de9eec48022a5bfbc332957487ed3f"}, + {file = "debugpy-1.8.14-cp312-cp312-win_amd64.whl", hash = "sha256:5aa56ef8538893e4502a7d79047fe39b1dae08d9ae257074c6464a7b290b806f"}, + {file = "debugpy-1.8.14-cp313-cp313-macosx_14_0_universal2.whl", hash = "sha256:329a15d0660ee09fec6786acdb6e0443d595f64f5d096fc3e3ccf09a4259033f"}, + {file = "debugpy-1.8.14-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f920c7f9af409d90f5fd26e313e119d908b0dd2952c2393cd3247a462331f15"}, + {file = "debugpy-1.8.14-cp313-cp313-win32.whl", hash = "sha256:3784ec6e8600c66cbdd4ca2726c72d8ca781e94bce2f396cc606d458146f8f4e"}, + {file = "debugpy-1.8.14-cp313-cp313-win_amd64.whl", hash = "sha256:684eaf43c95a3ec39a96f1f5195a7ff3d4144e4a18d69bb66beeb1a6de605d6e"}, + {file = "debugpy-1.8.14-cp38-cp38-macosx_14_0_x86_64.whl", hash = "sha256:d5582bcbe42917bc6bbe5c12db1bffdf21f6bfc28d4554b738bf08d50dc0c8c3"}, + {file = "debugpy-1.8.14-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5349b7c3735b766a281873fbe32ca9cca343d4cc11ba4a743f84cb854339ff35"}, + {file = "debugpy-1.8.14-cp38-cp38-win32.whl", hash = "sha256:7118d462fe9724c887d355eef395fae68bc764fd862cdca94e70dcb9ade8a23d"}, + {file = "debugpy-1.8.14-cp38-cp38-win_amd64.whl", hash = "sha256:d235e4fa78af2de4e5609073972700523e372cf5601742449970110d565ca28c"}, + {file = "debugpy-1.8.14-cp39-cp39-macosx_14_0_x86_64.whl", hash = "sha256:413512d35ff52c2fb0fd2d65e69f373ffd24f0ecb1fac514c04a668599c5ce7f"}, + {file = "debugpy-1.8.14-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4c9156f7524a0d70b7a7e22b2e311d8ba76a15496fb00730e46dcdeedb9e1eea"}, + {file = "debugpy-1.8.14-cp39-cp39-win32.whl", hash = "sha256:b44985f97cc3dd9d52c42eb59ee9d7ee0c4e7ecd62bca704891f997de4cef23d"}, + {file = "debugpy-1.8.14-cp39-cp39-win_amd64.whl", hash = "sha256:b1528cfee6c1b1c698eb10b6b096c598738a8238822d218173d21c3086de8123"}, + {file = "debugpy-1.8.14-py2.py3-none-any.whl", hash = "sha256:5cd9a579d553b6cb9759a7908a41988ee6280b961f24f63336835d9418216a20"}, + {file = "debugpy-1.8.14.tar.gz", hash = "sha256:7cd287184318416850aa8b60ac90105837bb1e59531898c07569d197d2ed5322"}, +] + +[[package]] +name = "decorator" +version = "5.2.1" +description = "Decorators for Humans" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "decorator-5.2.1-py3-none-any.whl", hash = "sha256:d316bb415a2d9e2d2b3abcc4084c6502fc09240e292cd76a76afc106a1c8e04a"}, + {file = "decorator-5.2.1.tar.gz", hash = "sha256:65f266143752f734b0a7cc83c46f4618af75b8c5911b00ccb61d0ac9b6da0360"}, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +description = "XML bomb protection for Python stdlib modules" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["main"] +files = [ + {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"}, + {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"}, +] + +[[package]] +name = "executing" +version = "2.2.0" +description = "Get the currently executing AST node of a frame, and other information" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "executing-2.2.0-py2.py3-none-any.whl", hash = "sha256:11387150cad388d62750327a53d3339fad4888b39a6fe233c3afbb54ecffd3aa"}, + {file = "executing-2.2.0.tar.gz", hash = "sha256:5d108c028108fe2551d1a7b2e8b713341e2cb4fc0aa7dcf966fa4327a5226755"}, +] + +[package.extras] +tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich ; python_version >= \"3.11\""] + +[[package]] +name = "fastjsonschema" +version = "2.21.1" +description = "Fastest Python implementation of JSON schema" +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "fastjsonschema-2.21.1-py3-none-any.whl", hash = "sha256:c9e5b7e908310918cf494a434eeb31384dd84a98b57a30bcb1f535015b554667"}, + {file = "fastjsonschema-2.21.1.tar.gz", hash = "sha256:794d4f0a58f848961ba16af7b9c85a3e88cd360df008c59aac6fc5ae9323b5d4"}, +] + +[package.extras] +devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"] + +[[package]] +name = "fonttools" +version = "4.57.0" +description = "Tools to manipulate font files" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "fonttools-4.57.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:babe8d1eb059a53e560e7bf29f8e8f4accc8b6cfb9b5fd10e485bde77e71ef41"}, + {file = "fonttools-4.57.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:81aa97669cd726349eb7bd43ca540cf418b279ee3caba5e2e295fb4e8f841c02"}, + {file = "fonttools-4.57.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0e9618630edd1910ad4f07f60d77c184b2f572c8ee43305ea3265675cbbfe7e"}, + {file = "fonttools-4.57.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:34687a5d21f1d688d7d8d416cb4c5b9c87fca8a1797ec0d74b9fdebfa55c09ab"}, + {file = "fonttools-4.57.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:69ab81b66ebaa8d430ba56c7a5f9abe0183afefd3a2d6e483060343398b13fb1"}, + {file = "fonttools-4.57.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:d639397de852f2ccfb3134b152c741406752640a266d9c1365b0f23d7b88077f"}, + {file = "fonttools-4.57.0-cp310-cp310-win32.whl", hash = "sha256:cc066cb98b912f525ae901a24cd381a656f024f76203bc85f78fcc9e66ae5aec"}, + {file = "fonttools-4.57.0-cp310-cp310-win_amd64.whl", hash = "sha256:7a64edd3ff6a7f711a15bd70b4458611fb240176ec11ad8845ccbab4fe6745db"}, + {file = "fonttools-4.57.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:3871349303bdec958360eedb619169a779956503ffb4543bb3e6211e09b647c4"}, + {file = "fonttools-4.57.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c59375e85126b15a90fcba3443eaac58f3073ba091f02410eaa286da9ad80ed8"}, + {file = "fonttools-4.57.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:967b65232e104f4b0f6370a62eb33089e00024f2ce143aecbf9755649421c683"}, + {file = "fonttools-4.57.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:39acf68abdfc74e19de7485f8f7396fa4d2418efea239b7061d6ed6a2510c746"}, + {file = "fonttools-4.57.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9d077f909f2343daf4495ba22bb0e23b62886e8ec7c109ee8234bdbd678cf344"}, + {file = "fonttools-4.57.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:46370ac47a1e91895d40e9ad48effbe8e9d9db1a4b80888095bc00e7beaa042f"}, + {file = "fonttools-4.57.0-cp311-cp311-win32.whl", hash = "sha256:ca2aed95855506b7ae94e8f1f6217b7673c929e4f4f1217bcaa236253055cb36"}, + {file = "fonttools-4.57.0-cp311-cp311-win_amd64.whl", hash = "sha256:17168a4670bbe3775f3f3f72d23ee786bd965395381dfbb70111e25e81505b9d"}, + {file = "fonttools-4.57.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:889e45e976c74abc7256d3064aa7c1295aa283c6bb19810b9f8b604dfe5c7f31"}, + {file = "fonttools-4.57.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:0425c2e052a5f1516c94e5855dbda706ae5a768631e9fcc34e57d074d1b65b92"}, + {file = "fonttools-4.57.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:44c26a311be2ac130f40a96769264809d3b0cb297518669db437d1cc82974888"}, + {file = "fonttools-4.57.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:84c41ba992df5b8d680b89fd84c6a1f2aca2b9f1ae8a67400c8930cd4ea115f6"}, + {file = "fonttools-4.57.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ea1e9e43ca56b0c12440a7c689b1350066595bebcaa83baad05b8b2675129d98"}, + {file = "fonttools-4.57.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:84fd56c78d431606332a0627c16e2a63d243d0d8b05521257d77c6529abe14d8"}, + {file = "fonttools-4.57.0-cp312-cp312-win32.whl", hash = "sha256:f4376819c1c778d59e0a31db5dc6ede854e9edf28bbfa5b756604727f7f800ac"}, + {file = "fonttools-4.57.0-cp312-cp312-win_amd64.whl", hash = "sha256:57e30241524879ea10cdf79c737037221f77cc126a8cdc8ff2c94d4a522504b9"}, + {file = "fonttools-4.57.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:408ce299696012d503b714778d89aa476f032414ae57e57b42e4b92363e0b8ef"}, + {file = "fonttools-4.57.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:bbceffc80aa02d9e8b99f2a7491ed8c4a783b2fc4020119dc405ca14fb5c758c"}, + {file = "fonttools-4.57.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f022601f3ee9e1f6658ed6d184ce27fa5216cee5b82d279e0f0bde5deebece72"}, + {file = "fonttools-4.57.0-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4dea5893b58d4637ffa925536462ba626f8a1b9ffbe2f5c272cdf2c6ebadb817"}, + {file = "fonttools-4.57.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:dff02c5c8423a657c550b48231d0a48d7e2b2e131088e55983cfe74ccc2c7cc9"}, + {file = "fonttools-4.57.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:767604f244dc17c68d3e2dbf98e038d11a18abc078f2d0f84b6c24571d9c0b13"}, + {file = "fonttools-4.57.0-cp313-cp313-win32.whl", hash = "sha256:8e2e12d0d862f43d51e5afb8b9751c77e6bec7d2dc00aad80641364e9df5b199"}, + {file = "fonttools-4.57.0-cp313-cp313-win_amd64.whl", hash = "sha256:f1d6bc9c23356908db712d282acb3eebd4ae5ec6d8b696aa40342b1d84f8e9e3"}, + {file = "fonttools-4.57.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:9d57b4e23ebbe985125d3f0cabbf286efa191ab60bbadb9326091050d88e8213"}, + {file = "fonttools-4.57.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:579ba873d7f2a96f78b2e11028f7472146ae181cae0e4d814a37a09e93d5c5cc"}, + {file = "fonttools-4.57.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6e3e1ec10c29bae0ea826b61f265ec5c858c5ba2ce2e69a71a62f285cf8e4595"}, + {file = "fonttools-4.57.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a1968f2a2003c97c4ce6308dc2498d5fd4364ad309900930aa5a503c9851aec8"}, + {file = "fonttools-4.57.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:aff40f8ac6763d05c2c8f6d240c6dac4bb92640a86d9b0c3f3fff4404f34095c"}, + {file = "fonttools-4.57.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:d07f1b64008e39fceae7aa99e38df8385d7d24a474a8c9872645c4397b674481"}, + {file = "fonttools-4.57.0-cp38-cp38-win32.whl", hash = "sha256:51d8482e96b28fb28aa8e50b5706f3cee06de85cbe2dce80dbd1917ae22ec5a6"}, + {file = "fonttools-4.57.0-cp38-cp38-win_amd64.whl", hash = "sha256:03290e818782e7edb159474144fca11e36a8ed6663d1fcbd5268eb550594fd8e"}, + {file = "fonttools-4.57.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:7339e6a3283e4b0ade99cade51e97cde3d54cd6d1c3744459e886b66d630c8b3"}, + {file = "fonttools-4.57.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:05efceb2cb5f6ec92a4180fcb7a64aa8d3385fd49cfbbe459350229d1974f0b1"}, + {file = "fonttools-4.57.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a97bb05eb24637714a04dee85bdf0ad1941df64fe3b802ee4ac1c284a5f97b7c"}, + {file = "fonttools-4.57.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:541cb48191a19ceb1a2a4b90c1fcebd22a1ff7491010d3cf840dd3a68aebd654"}, + {file = "fonttools-4.57.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:cdef9a056c222d0479a1fdb721430f9efd68268014c54e8166133d2643cb05d9"}, + {file = "fonttools-4.57.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:3cf97236b192a50a4bf200dc5ba405aa78d4f537a2c6e4c624bb60466d5b03bd"}, + {file = "fonttools-4.57.0-cp39-cp39-win32.whl", hash = "sha256:e952c684274a7714b3160f57ec1d78309f955c6335c04433f07d36c5eb27b1f9"}, + {file = "fonttools-4.57.0-cp39-cp39-win_amd64.whl", hash = "sha256:a2a722c0e4bfd9966a11ff55c895c817158fcce1b2b6700205a376403b546ad9"}, + {file = "fonttools-4.57.0-py3-none-any.whl", hash = "sha256:3122c604a675513c68bd24c6a8f9091f1c2376d18e8f5fe5a101746c81b3e98f"}, + {file = "fonttools-4.57.0.tar.gz", hash = "sha256:727ece10e065be2f9dd239d15dd5d60a66e17eac11aea47d447f9f03fdbc42de"}, +] + +[package.extras] +all = ["brotli (>=1.0.1) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\"", "fs (>=2.2.0,<3)", "lxml (>=4.0)", "lz4 (>=1.7.4.2)", "matplotlib", "munkres ; platform_python_implementation == \"PyPy\"", "pycairo", "scipy ; platform_python_implementation != \"PyPy\"", "skia-pathops (>=0.5.0)", "sympy", "uharfbuzz (>=0.23.0)", "unicodedata2 (>=15.1.0) ; python_version <= \"3.12\"", "xattr ; sys_platform == \"darwin\"", "zopfli (>=0.1.4)"] +graphite = ["lz4 (>=1.7.4.2)"] +interpolatable = ["munkres ; platform_python_implementation == \"PyPy\"", "pycairo", "scipy ; platform_python_implementation != \"PyPy\""] +lxml = ["lxml (>=4.0)"] +pathops = ["skia-pathops (>=0.5.0)"] +plot = ["matplotlib"] +repacker = ["uharfbuzz (>=0.23.0)"] +symfont = ["sympy"] +type1 = ["xattr ; sys_platform == \"darwin\""] +ufo = ["fs (>=2.2.0,<3)"] +unicode = ["unicodedata2 (>=15.1.0) ; python_version <= \"3.12\""] +woff = ["brotli (>=1.0.1) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\"", "zopfli (>=0.1.4)"] + +[[package]] +name = "fqdn" +version = "1.5.1" +description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" +optional = false +python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" +groups = ["main"] +files = [ + {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"}, + {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"}, +] + +[[package]] +name = "h11" +version = "0.16.0" +description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86"}, + {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"}, +] + +[[package]] +name = "h5py" +version = "3.13.0" +description = "Read and write HDF5 files from Python" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "h5py-3.13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5540daee2b236d9569c950b417f13fd112d51d78b4c43012de05774908dff3f5"}, + {file = "h5py-3.13.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:10894c55d46df502d82a7a4ed38f9c3fdbcb93efb42e25d275193e093071fade"}, + {file = "h5py-3.13.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb267ce4b83f9c42560e9ff4d30f60f7ae492eacf9c7ede849edf8c1b860e16b"}, + {file = "h5py-3.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2cf6a231a07c14acd504a945a6e9ec115e0007f675bde5e0de30a4dc8d86a31"}, + {file = "h5py-3.13.0-cp310-cp310-win_amd64.whl", hash = "sha256:851ae3a8563d87a5a0dc49c2e2529c75b8842582ccaefbf84297d2cfceeacd61"}, + {file = "h5py-3.13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:8a8e38ef4ceb969f832cc230c0cf808c613cc47e31e768fd7b1106c55afa1cb8"}, + {file = "h5py-3.13.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f35640e81b03c02a88b8bf99fb6a9d3023cc52f7c627694db2f379e0028f2868"}, + {file = "h5py-3.13.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:337af114616f3656da0c83b68fcf53ecd9ce9989a700b0883a6e7c483c3235d4"}, + {file = "h5py-3.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:782ff0ac39f455f21fd1c8ebc007328f65f43d56718a89327eec76677ebf238a"}, + {file = "h5py-3.13.0-cp311-cp311-win_amd64.whl", hash = "sha256:22ffe2a25770a2d67213a1b94f58006c14dce06933a42d2aaa0318c5868d1508"}, + {file = "h5py-3.13.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:477c58307b6b9a2509c59c57811afb9f598aedede24a67da808262dfa0ee37b4"}, + {file = "h5py-3.13.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:57c4c74f627c616f02b7aec608a8c706fe08cb5b0ba7c08555a4eb1dde20805a"}, + {file = "h5py-3.13.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:357e6dc20b101a805ccfd0024731fbaf6e8718c18c09baf3b5e4e9d198d13fca"}, + {file = "h5py-3.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d6f13f9b5ce549448c01e4dfe08ea8d1772e6078799af2c1c8d09e941230a90d"}, + {file = "h5py-3.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:21daf38171753899b5905f3d82c99b0b1ec2cbbe282a037cad431feb620e62ec"}, + {file = "h5py-3.13.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e520ec76de00943dd017c8ea3f354fa1d2f542eac994811943a8faedf2a7d5cb"}, + {file = "h5py-3.13.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e79d8368cd9295045956bfb436656bea3f915beaa11d342e9f79f129f5178763"}, + {file = "h5py-3.13.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56dd172d862e850823c4af02dc4ddbc308f042b85472ffdaca67f1598dff4a57"}, + {file = "h5py-3.13.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:be949b46b7388074c5acae017fbbe3e5ba303fd9daaa52157fdfef30bbdacadd"}, + {file = "h5py-3.13.0-cp313-cp313-win_amd64.whl", hash = "sha256:4f97ecde7ac6513b21cd95efdfc38dc6d19f96f6ca6f2a30550e94e551458e0a"}, + {file = "h5py-3.13.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:82690e89c72b85addf4fc4d5058fb1e387b6c14eb063b0b879bf3f42c3b93c35"}, + {file = "h5py-3.13.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d571644958c5e19a61c793d8d23cd02479572da828e333498c9acc463f4a3997"}, + {file = "h5py-3.13.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:560e71220dc92dfa254b10a4dcb12d56b574d2d87e095db20466b32a93fec3f9"}, + {file = "h5py-3.13.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c10f061764d8dce0a9592ce08bfd5f243a00703325c388f1086037e5d619c5f1"}, + {file = "h5py-3.13.0-cp39-cp39-win_amd64.whl", hash = "sha256:9c82ece71ed1c2b807b6628e3933bc6eae57ea21dac207dca3470e3ceaaf437c"}, + {file = "h5py-3.13.0.tar.gz", hash = "sha256:1870e46518720023da85d0895a1960ff2ce398c5671eac3b1a41ec696b7105c3"}, +] + +[package.dependencies] +numpy = ">=1.19.3" + +[[package]] +name = "httpcore" +version = "1.0.9" +description = "A minimal low-level HTTP client." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55"}, + {file = "httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8"}, +] + +[package.dependencies] +certifi = "*" +h11 = ">=0.16" + +[package.extras] +asyncio = ["anyio (>=4.0,<5.0)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +trio = ["trio (>=0.22.0,<1.0)"] + +[[package]] +name = "httpx" +version = "0.28.1" +description = "The next generation HTTP client." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, + {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, +] + +[package.dependencies] +anyio = "*" +certifi = "*" +httpcore = "==1.*" +idna = "*" + +[package.extras] +brotli = ["brotli ; platform_python_implementation == \"CPython\"", "brotlicffi ; platform_python_implementation != \"CPython\""] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] +http2 = ["h2 (>=3,<5)"] +socks = ["socksio (==1.*)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "idna" +version = "3.10" +description = "Internationalized Domain Names in Applications (IDNA)" +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, + {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, +] + +[package.extras] +all = ["flake8 (>=7.1.1)", "mypy (>=1.11.2)", "pytest (>=8.3.2)", "ruff (>=0.6.2)"] + +[[package]] +name = "ipykernel" +version = "6.29.5" +description = "IPython Kernel for Jupyter" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "ipykernel-6.29.5-py3-none-any.whl", hash = "sha256:afdb66ba5aa354b09b91379bac28ae4afebbb30e8b39510c9690afb7a10421b5"}, + {file = "ipykernel-6.29.5.tar.gz", hash = "sha256:f093a22c4a40f8828f8e330a9c297cb93dcab13bd9678ded6de8e5cf81c56215"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "platform_system == \"Darwin\""} +comm = ">=0.1.1" +debugpy = ">=1.6.5" +ipython = ">=7.23.1" +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +matplotlib-inline = ">=0.1" +nest-asyncio = "*" +packaging = "*" +psutil = "*" +pyzmq = ">=24" +tornado = ">=6.1" +traitlets = ">=5.4.0" + +[package.extras] +cov = ["coverage[toml]", "curio", "matplotlib", "pytest-cov", "trio"] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "trio"] +pyqt5 = ["pyqt5"] +pyside6 = ["pyside6"] +test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.23.5)", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "ipython" +version = "9.1.0" +description = "IPython: Productive Interactive Computing" +optional = false +python-versions = ">=3.11" +groups = ["main"] +files = [ + {file = "ipython-9.1.0-py3-none-any.whl", hash = "sha256:2df07257ec2f84a6b346b8d83100bcf8fa501c6e01ab75cd3799b0bb253b3d2a"}, + {file = "ipython-9.1.0.tar.gz", hash = "sha256:a47e13a5e05e02f3b8e1e7a0f9db372199fe8c3763532fe7a1e0379e4e135f16"}, +] + +[package.dependencies] +colorama = {version = "*", markers = "sys_platform == \"win32\""} +decorator = "*" +ipython-pygments-lexers = "*" +jedi = ">=0.16" +matplotlib-inline = "*" +pexpect = {version = ">4.3", markers = "sys_platform != \"win32\" and sys_platform != \"emscripten\""} +prompt_toolkit = ">=3.0.41,<3.1.0" +pygments = ">=2.4.0" +stack_data = "*" +traitlets = ">=5.13.0" + +[package.extras] +all = ["ipython[doc,matplotlib,test,test-extra]"] +black = ["black"] +doc = ["docrepr", "exceptiongroup", "intersphinx_registry", "ipykernel", "ipython[test]", "matplotlib", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "sphinx_toml (==0.0.4)", "typing_extensions"] +matplotlib = ["matplotlib"] +test = ["packaging", "pytest", "pytest-asyncio (<0.22)", "testpath"] +test-extra = ["curio", "ipykernel", "ipython[test]", "jupyter_ai", "matplotlib (!=3.2.0)", "nbclient", "nbformat", "numpy (>=1.23)", "pandas", "trio"] + +[[package]] +name = "ipython-pygments-lexers" +version = "1.1.1" +description = "Defines a variety of Pygments lexers for highlighting IPython code." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "ipython_pygments_lexers-1.1.1-py3-none-any.whl", hash = "sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c"}, + {file = "ipython_pygments_lexers-1.1.1.tar.gz", hash = "sha256:09c0138009e56b6854f9535736f4171d855c8c08a563a0dcd8022f78355c7e81"}, +] + +[package.dependencies] +pygments = "*" + +[[package]] +name = "ipywidgets" +version = "8.1.6" +description = "Jupyter interactive widgets" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "ipywidgets-8.1.6-py3-none-any.whl", hash = "sha256:446e7630a1d025bdc7635e1169fcc06f2ce33b5bd41c2003edeb4a47c8d4bbb1"}, + {file = "ipywidgets-8.1.6.tar.gz", hash = "sha256:d8ace49c66f14419fc66071371b99d01bed230bbc15d8a60233b18bfbd782851"}, +] + +[package.dependencies] +comm = ">=0.1.3" +ipython = ">=6.1.0" +jupyterlab_widgets = ">=3.0.14,<3.1.0" +traitlets = ">=4.3.1" +widgetsnbextension = ">=4.0.14,<4.1.0" + +[package.extras] +test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] + +[[package]] +name = "isoduration" +version = "20.11.0" +description = "Operations with ISO 8601 durations" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"}, + {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"}, +] + +[package.dependencies] +arrow = ">=0.15.0" + +[[package]] +name = "jax" +version = "0.5.3" +description = "Differentiate, compile, and transform Numpy code." +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "jax-0.5.3-py3-none-any.whl", hash = "sha256:1483dc237b4f47e41755d69429e8c3c138736716147cd43bb2b99b259d4e3c41"}, + {file = "jax-0.5.3.tar.gz", hash = "sha256:f17fcb0fd61dc289394af6ce4de2dada2312f2689bb0d73642c6f026a95fbb2c"}, +] + +[package.dependencies] +jaxlib = "0.5.3" +ml_dtypes = ">=0.4.0" +numpy = {version = ">=1.26.0", markers = "python_version >= \"3.12\""} +opt_einsum = "*" +scipy = ">=1.11.1" + +[package.extras] +ci = ["jaxlib (==0.5.1)"] +cuda = ["jax-cuda12-plugin[with-cuda] (==0.5.3)", "jaxlib (==0.5.3)"] +cuda12 = ["jax-cuda12-plugin[with-cuda] (==0.5.3)", "jaxlib (==0.5.3)"] +cuda12-local = ["jax-cuda12-plugin (==0.5.3)", "jaxlib (==0.5.3)"] +cuda12-pip = ["jax-cuda12-plugin[with-cuda] (==0.5.3)", "jaxlib (==0.5.3)"] +k8s = ["kubernetes"] +minimum-jaxlib = ["jaxlib (==0.5.3)"] +rocm = ["jax-rocm60-plugin (==0.5.3)", "jaxlib (==0.5.3)"] +tpu = ["jaxlib (==0.5.3)", "libtpu (==0.0.11.*)", "requests"] + +[[package]] +name = "jaxlib" +version = "0.5.3" +description = "XLA library for JAX" +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "jaxlib-0.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:48ff5c89fb8a0fe04d475e9ddc074b4879a91d7ab68a51cec5cd1e87f81e6c47"}, + {file = "jaxlib-0.5.3-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:972400db4af6e85270d81db5e6e620d31395f0472e510c50dfcd4cb3f72b7220"}, + {file = "jaxlib-0.5.3-cp310-cp310-manylinux2014_x86_64.whl", hash = "sha256:52be6c9775aff738a61170d8c047505c75bb799a45518e66a7a0908127b11785"}, + {file = "jaxlib-0.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:b41a6fcaeb374fabc4ee7e74cfed60843bdab607cd54f60a68b7f7655cde2b66"}, + {file = "jaxlib-0.5.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:b62bd8b29e5a4f9bfaa57c8daf6e04820b2c994f448f3dec602d64255545e9f2"}, + {file = "jaxlib-0.5.3-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:a4666f81d72c060ed3e581ded116a9caa9b0a70a148a54cb12a1d3afca3624b5"}, + {file = "jaxlib-0.5.3-cp311-cp311-manylinux2014_x86_64.whl", hash = "sha256:29e1530fc81833216f1e28b578d0c59697654f72ee31c7a44ed7753baf5ac466"}, + {file = "jaxlib-0.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:8eb54e38d789557579f900ea3d70f104a440f8555a9681ed45f4a122dcbfd92e"}, + {file = "jaxlib-0.5.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d394dbde4a1c6bd67501cfb29d3819a10b900cb534cc0fc603319f7092f24cfa"}, + {file = "jaxlib-0.5.3-cp312-cp312-manylinux2014_aarch64.whl", hash = "sha256:bddf6360377aa1c792e47fd87f307c342e331e5ff3582f940b1bca00f6b4bc73"}, + {file = "jaxlib-0.5.3-cp312-cp312-manylinux2014_x86_64.whl", hash = "sha256:5a5e88ab1cd6fdf78d69abe3544e8f09cce200dd339bb85fbe3c2ea67f2a5e68"}, + {file = "jaxlib-0.5.3-cp312-cp312-win_amd64.whl", hash = "sha256:520665929649f29f7d948d4070dbaf3e032a4c1f7c11f2863eac73320fcee784"}, + {file = "jaxlib-0.5.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:31321c25282a06a6dfc940507bc14d0a0ac838d8ced6c07aa00a7fae34ce7b3f"}, + {file = "jaxlib-0.5.3-cp313-cp313-manylinux2014_aarch64.whl", hash = "sha256:e904b92dedfbc7e545725a8d7676987030ae9c069001d94701bc109c6dab4100"}, + {file = "jaxlib-0.5.3-cp313-cp313-manylinux2014_x86_64.whl", hash = "sha256:bb7593cb7fffcb13963f22fa5229ed960b8fb4ae5ec3b0820048cbd67f1e8e31"}, + {file = "jaxlib-0.5.3-cp313-cp313-win_amd64.whl", hash = "sha256:8019f73a10b1290f988dd3768c684f3a8a147239091c3b790ce7e47e3bbc00bd"}, + {file = "jaxlib-0.5.3-cp313-cp313t-manylinux2014_x86_64.whl", hash = "sha256:4c9a9d4cda091a3ef068ace8379fff9e98eea2fc51dbdd7c3386144a1bdf715d"}, +] + +[package.dependencies] +ml_dtypes = ">=0.2.0" +numpy = ">=1.25" +scipy = ">=1.11.1" + +[[package]] +name = "jedi" +version = "0.19.2" +description = "An autocompletion tool for Python that can be used for text editors." +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "jedi-0.19.2-py2.py3-none-any.whl", hash = "sha256:a8ef22bde8490f57fe5c7681a3c83cb58874daf72b4784de3cce5b6ef6edb5b9"}, + {file = "jedi-0.19.2.tar.gz", hash = "sha256:4770dc3de41bde3966b02eb84fbcf557fb33cce26ad23da12c742fb50ecb11f0"}, +] + +[package.dependencies] +parso = ">=0.8.4,<0.9.0" + +[package.extras] +docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["Django", "attrs", "colorama", "docopt", "pytest (<9.0.0)"] + +[[package]] +name = "jinja2" +version = "3.1.6" +description = "A very fast and expressive template engine." +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67"}, + {file = "jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d"}, +] + +[package.dependencies] +MarkupSafe = ">=2.0" + +[package.extras] +i18n = ["Babel (>=2.7)"] + +[[package]] +name = "json5" +version = "0.12.0" +description = "A Python implementation of the JSON5 data format." +optional = false +python-versions = ">=3.8.0" +groups = ["main"] +files = [ + {file = "json5-0.12.0-py3-none-any.whl", hash = "sha256:6d37aa6c08b0609f16e1ec5ff94697e2cbbfbad5ac112afa05794da9ab7810db"}, + {file = "json5-0.12.0.tar.gz", hash = "sha256:0b4b6ff56801a1c7dc817b0241bca4ce474a0e6a163bfef3fc594d3fd263ff3a"}, +] + +[package.extras] +dev = ["build (==1.2.2.post1)", "coverage (==7.5.4) ; python_version < \"3.9\"", "coverage (==7.8.0) ; python_version >= \"3.9\"", "mypy (==1.14.1) ; python_version < \"3.9\"", "mypy (==1.15.0) ; python_version >= \"3.9\"", "pip (==25.0.1)", "pylint (==3.2.7) ; python_version < \"3.9\"", "pylint (==3.3.6) ; python_version >= \"3.9\"", "ruff (==0.11.2)", "twine (==6.1.0)", "uv (==0.6.11)"] + +[[package]] +name = "jsonpointer" +version = "3.0.0" +description = "Identify specific nodes in a JSON document (RFC 6901)" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "jsonpointer-3.0.0-py2.py3-none-any.whl", hash = "sha256:13e088adc14fca8b6aa8177c044e12701e6ad4b28ff10e65f2267a90109c9942"}, + {file = "jsonpointer-3.0.0.tar.gz", hash = "sha256:2b2d729f2091522d61c3b31f82e11870f60b68f43fbc705cb76bf4b832af59ef"}, +] + +[[package]] +name = "jsonschema" +version = "4.23.0" +description = "An implementation of JSON Schema validation for Python" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566"}, + {file = "jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +fqdn = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +idna = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +isoduration = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +jsonpointer = {version = ">1.13", optional = true, markers = "extra == \"format-nongpl\""} +jsonschema-specifications = ">=2023.03.6" +referencing = ">=0.28.4" +rfc3339-validator = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""} +rpds-py = ">=0.7.1" +uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""} +webcolors = {version = ">=24.6.0", optional = true, markers = "extra == \"format-nongpl\""} + +[package.extras] +format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"] +format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=24.6.0)"] + +[[package]] +name = "jsonschema-specifications" +version = "2025.4.1" +description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "jsonschema_specifications-2025.4.1-py3-none-any.whl", hash = "sha256:4653bffbd6584f7de83a67e0d620ef16900b390ddc7939d56684d6c81e33f1af"}, + {file = "jsonschema_specifications-2025.4.1.tar.gz", hash = "sha256:630159c9f4dbea161a6a2205c3011cc4f18ff381b189fff48bb39b9bf26ae608"}, +] + +[package.dependencies] +referencing = ">=0.31.0" + +[[package]] +name = "jupyter" +version = "1.1.1" +description = "Jupyter metapackage. Install all the Jupyter components in one go." +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "jupyter-1.1.1-py2.py3-none-any.whl", hash = "sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83"}, + {file = "jupyter-1.1.1.tar.gz", hash = "sha256:d55467bceabdea49d7e3624af7e33d59c37fff53ed3a350e1ac957bed731de7a"}, +] + +[package.dependencies] +ipykernel = "*" +ipywidgets = "*" +jupyter-console = "*" +jupyterlab = "*" +nbconvert = "*" +notebook = "*" + +[[package]] +name = "jupyter-client" +version = "8.6.3" +description = "Jupyter protocol implementation and client libraries" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jupyter_client-8.6.3-py3-none-any.whl", hash = "sha256:e8a19cc986cc45905ac3362915f410f3af85424b4c0905e94fa5f2cb08e8f23f"}, + {file = "jupyter_client-8.6.3.tar.gz", hash = "sha256:35b3a0947c4a6e9d589eb97d7d4cd5e90f910ee73101611f01283732bd6d9419"}, +] + +[package.dependencies] +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +python-dateutil = ">=2.8.2" +pyzmq = ">=23.0" +tornado = ">=6.2" +traitlets = ">=5.3" + +[package.extras] +docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko ; sys_platform == \"win32\"", "pre-commit", "pytest (<8.2.0)", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"] + +[[package]] +name = "jupyter-console" +version = "6.6.3" +description = "Jupyter terminal console" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485"}, + {file = "jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539"}, +] + +[package.dependencies] +ipykernel = ">=6.14" +ipython = "*" +jupyter-client = ">=7.0.0" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +prompt-toolkit = ">=3.0.30" +pygments = "*" +pyzmq = ">=17" +traitlets = ">=5.4" + +[package.extras] +test = ["flaky", "pexpect", "pytest"] + +[[package]] +name = "jupyter-core" +version = "5.7.2" +description = "Jupyter core package. A base package on which Jupyter projects rely." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jupyter_core-5.7.2-py3-none-any.whl", hash = "sha256:4f7315d2f6b4bcf2e3e7cb6e46772eba760ae459cd1f59d29eb57b0a01bd7409"}, + {file = "jupyter_core-5.7.2.tar.gz", hash = "sha256:aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9"}, +] + +[package.dependencies] +platformdirs = ">=2.5" +pywin32 = {version = ">=300", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""} +traitlets = ">=5.3" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "traitlets"] +test = ["ipykernel", "pre-commit", "pytest (<8)", "pytest-cov", "pytest-timeout"] + +[[package]] +name = "jupyter-events" +version = "0.12.0" +description = "Jupyter Event System library" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "jupyter_events-0.12.0-py3-none-any.whl", hash = "sha256:6464b2fa5ad10451c3d35fabc75eab39556ae1e2853ad0c0cc31b656731a97fb"}, + {file = "jupyter_events-0.12.0.tar.gz", hash = "sha256:fc3fce98865f6784c9cd0a56a20644fc6098f21c8c33834a8d9fe383c17e554b"}, +] + +[package.dependencies] +jsonschema = {version = ">=4.18.0", extras = ["format-nongpl"]} +packaging = "*" +python-json-logger = ">=2.0.4" +pyyaml = ">=5.3" +referencing = "*" +rfc3339-validator = "*" +rfc3986-validator = ">=0.1.1" +traitlets = ">=5.3" + +[package.extras] +cli = ["click", "rich"] +docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme (>=0.16)", "sphinx (>=8)", "sphinxcontrib-spelling"] +test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "rich"] + +[[package]] +name = "jupyter-lsp" +version = "2.2.5" +description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jupyter-lsp-2.2.5.tar.gz", hash = "sha256:793147a05ad446f809fd53ef1cd19a9f5256fd0a2d6b7ce943a982cb4f545001"}, + {file = "jupyter_lsp-2.2.5-py3-none-any.whl", hash = "sha256:45fbddbd505f3fbfb0b6cb2f1bc5e15e83ab7c79cd6e89416b248cb3c00c11da"}, +] + +[package.dependencies] +jupyter-server = ">=1.1.2" + +[[package]] +name = "jupyter-server" +version = "2.15.0" +description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "jupyter_server-2.15.0-py3-none-any.whl", hash = "sha256:872d989becf83517012ee669f09604aa4a28097c0bd90b2f424310156c2cdae3"}, + {file = "jupyter_server-2.15.0.tar.gz", hash = "sha256:9d446b8697b4f7337a1b7cdcac40778babdd93ba614b6d68ab1c0c918f1c4084"}, +] + +[package.dependencies] +anyio = ">=3.1.0" +argon2-cffi = ">=21.1" +jinja2 = ">=3.0.3" +jupyter-client = ">=7.4.4" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-events = ">=0.11.0" +jupyter-server-terminals = ">=0.4.4" +nbconvert = ">=6.4.4" +nbformat = ">=5.3.0" +overrides = ">=5.0" +packaging = ">=22.0" +prometheus-client = ">=0.9" +pywinpty = {version = ">=2.0.1", markers = "os_name == \"nt\""} +pyzmq = ">=24" +send2trash = ">=1.8.2" +terminado = ">=0.8.3" +tornado = ">=6.2.0" +traitlets = ">=5.6.0" +websocket-client = ">=1.7" + +[package.extras] +docs = ["ipykernel", "jinja2", "jupyter-client", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"] +test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0,<9)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.7)", "pytest-timeout", "requests"] + +[[package]] +name = "jupyter-server-terminals" +version = "0.5.3" +description = "A Jupyter Server Extension Providing Terminals." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jupyter_server_terminals-0.5.3-py3-none-any.whl", hash = "sha256:41ee0d7dc0ebf2809c668e0fc726dfaf258fcd3e769568996ca731b6194ae9aa"}, + {file = "jupyter_server_terminals-0.5.3.tar.gz", hash = "sha256:5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269"}, +] + +[package.dependencies] +pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""} +terminado = ">=0.8.3" + +[package.extras] +docs = ["jinja2", "jupyter-server", "mistune (<4.0)", "myst-parser", "nbformat", "packaging", "pydata-sphinx-theme", "sphinxcontrib-github-alt", "sphinxcontrib-openapi", "sphinxcontrib-spelling", "sphinxemoji", "tornado"] +test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (>=0.5.3)", "pytest-timeout"] + +[[package]] +name = "jupyterlab" +version = "4.4.1" +description = "JupyterLab computational environment" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "jupyterlab-4.4.1-py3-none-any.whl", hash = "sha256:989bca3f9cf2d04b2022e7e657e2df6d4aca808b364810d31c4865edd968a5f7"}, + {file = "jupyterlab-4.4.1.tar.gz", hash = "sha256:c75c4f33056fbd84f0b31eb44622a00c7a5f981b85adfeb198a83721f0465808"}, +] + +[package.dependencies] +async-lru = ">=1.0.0" +httpx = ">=0.25.0" +ipykernel = ">=6.5.0" +jinja2 = ">=3.0.3" +jupyter-core = "*" +jupyter-lsp = ">=2.0.0" +jupyter-server = ">=2.4.0,<3" +jupyterlab-server = ">=2.27.1,<3" +notebook-shim = ">=0.2" +packaging = "*" +setuptools = ">=41.1.0" +tornado = ">=6.2.0" +traitlets = "*" + +[package.extras] +dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.11.4)"] +docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<8.2.0)", "sphinx-copybutton"] +docs-screenshots = ["altair (==5.5.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.5)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.3.post1)", "matplotlib (==3.10.0)", "nbconvert (>=7.0.0)", "pandas (==2.2.3)", "scipy (==1.15.1)", "vega-datasets (==0.9.0)"] +test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] +upgrade-extension = ["copier (>=9,<10)", "jinja2-time (<0.3)", "pydantic (<3.0)", "pyyaml-include (<3.0)", "tomli-w (<2.0)"] + +[[package]] +name = "jupyterlab-pygments" +version = "0.3.0" +description = "Pygments theme using JupyterLab CSS variables" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780"}, + {file = "jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d"}, +] + +[[package]] +name = "jupyterlab-server" +version = "2.27.3" +description = "A set of server components for JupyterLab and JupyterLab like applications." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "jupyterlab_server-2.27.3-py3-none-any.whl", hash = "sha256:e697488f66c3db49df675158a77b3b017520d772c6e1548c7d9bcc5df7944ee4"}, + {file = "jupyterlab_server-2.27.3.tar.gz", hash = "sha256:eb36caca59e74471988f0ae25c77945610b887f777255aa21f8065def9e51ed4"}, +] + +[package.dependencies] +babel = ">=2.10" +jinja2 = ">=3.0.3" +json5 = ">=0.9.0" +jsonschema = ">=4.18.0" +jupyter-server = ">=1.21,<3" +packaging = ">=21.3" +requests = ">=2.31" + +[package.extras] +docs = ["autodoc-traits", "jinja2 (<3.2.0)", "mistune (<4)", "myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinxcontrib-openapi (>0.8)"] +openapi = ["openapi-core (>=0.18.0,<0.19.0)", "ruamel-yaml"] +test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-validator (>=0.6.0,<0.8.0)", "pytest (>=7.0,<8)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter[server] (>=0.6.2)", "pytest-timeout", "requests-mock", "ruamel-yaml", "sphinxcontrib-spelling", "strict-rfc3339", "werkzeug"] + +[[package]] +name = "jupyterlab-widgets" +version = "3.0.14" +description = "Jupyter interactive widgets for JupyterLab" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "jupyterlab_widgets-3.0.14-py3-none-any.whl", hash = "sha256:54c33e3306b7fca139d165d6190dc6c0627aafa5d14adfc974a4e9a3d26cb703"}, + {file = "jupyterlab_widgets-3.0.14.tar.gz", hash = "sha256:bad03e59546869f026e537e0d170e454259e6dc7048e14041707ca31e523c8a1"}, +] + +[[package]] +name = "keras" +version = "3.9.2" +description = "Multi-backend Keras" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "keras-3.9.2-py3-none-any.whl", hash = "sha256:404427856c2dc30e38c9fa6fa6a13ffb1844a8c35af312ca32a8e7dea9840f1e"}, + {file = "keras-3.9.2.tar.gz", hash = "sha256:322aab6418ee3de1e2bd0871b60a07f0e444e744a7e8cba79af8b42408879ecf"}, +] + +[package.dependencies] +absl-py = "*" +h5py = "*" +ml-dtypes = "*" +namex = "*" +numpy = "*" +optree = "*" +packaging = "*" +rich = "*" + +[[package]] +name = "kiwisolver" +version = "1.4.8" +description = "A fast implementation of the Cassowary constraint solver" +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:88c6f252f6816a73b1f8c904f7bbe02fd67c09a69f7cb8a0eecdbf5ce78e63db"}, + {file = "kiwisolver-1.4.8-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c72941acb7b67138f35b879bbe85be0f6c6a70cab78fe3ef6db9c024d9223e5b"}, + {file = "kiwisolver-1.4.8-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ce2cf1e5688edcb727fdf7cd1bbd0b6416758996826a8be1d958f91880d0809d"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:c8bf637892dc6e6aad2bc6d4d69d08764166e5e3f69d469e55427b6ac001b19d"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:034d2c891f76bd3edbdb3ea11140d8510dca675443da7304205a2eaa45d8334c"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d47b28d1dfe0793d5e96bce90835e17edf9a499b53969b03c6c47ea5985844c3"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:eb158fe28ca0c29f2260cca8c43005329ad58452c36f0edf298204de32a9a3ed"}, + {file = "kiwisolver-1.4.8-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d5536185fce131780ebd809f8e623bf4030ce1b161353166c49a3c74c287897f"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:369b75d40abedc1da2c1f4de13f3482cb99e3237b38726710f4a793432b1c5ff"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:641f2ddf9358c80faa22e22eb4c9f54bd3f0e442e038728f500e3b978d00aa7d"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:d561d2d8883e0819445cfe58d7ddd673e4015c3c57261d7bdcd3710d0d14005c"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:1732e065704b47c9afca7ffa272f845300a4eb959276bf6970dc07265e73b605"}, + {file = "kiwisolver-1.4.8-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:bcb1ebc3547619c3b58a39e2448af089ea2ef44b37988caf432447374941574e"}, + {file = "kiwisolver-1.4.8-cp310-cp310-win_amd64.whl", hash = "sha256:89c107041f7b27844179ea9c85d6da275aa55ecf28413e87624d033cf1f6b751"}, + {file = "kiwisolver-1.4.8-cp310-cp310-win_arm64.whl", hash = "sha256:b5773efa2be9eb9fcf5415ea3ab70fc785d598729fd6057bea38d539ead28271"}, + {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a4d3601908c560bdf880f07d94f31d734afd1bb71e96585cace0e38ef44c6d84"}, + {file = "kiwisolver-1.4.8-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:856b269c4d28a5c0d5e6c1955ec36ebfd1651ac00e1ce0afa3e28da95293b561"}, + {file = "kiwisolver-1.4.8-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c2b9a96e0f326205af81a15718a9073328df1173a2619a68553decb7097fd5d7"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c5020c83e8553f770cb3b5fc13faac40f17e0b205bd237aebd21d53d733adb03"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dace81d28c787956bfbfbbfd72fdcef014f37d9b48830829e488fdb32b49d954"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:11e1022b524bd48ae56c9b4f9296bce77e15a2e42a502cceba602f804b32bb79"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b9b4d2892fefc886f30301cdd80debd8bb01ecdf165a449eb6e78f79f0fabd6"}, + {file = "kiwisolver-1.4.8-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a96c0e790ee875d65e340ab383700e2b4891677b7fcd30a699146f9384a2bb0"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:23454ff084b07ac54ca8be535f4174170c1094a4cff78fbae4f73a4bcc0d4dab"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:87b287251ad6488e95b4f0b4a79a6d04d3ea35fde6340eb38fbd1ca9cd35bbbc"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:b21dbe165081142b1232a240fc6383fd32cdd877ca6cc89eab93e5f5883e1c25"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:768cade2c2df13db52475bd28d3a3fac8c9eff04b0e9e2fda0f3760f20b3f7fc"}, + {file = "kiwisolver-1.4.8-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:d47cfb2650f0e103d4bf68b0b5804c68da97272c84bb12850d877a95c056bd67"}, + {file = "kiwisolver-1.4.8-cp311-cp311-win_amd64.whl", hash = "sha256:ed33ca2002a779a2e20eeb06aea7721b6e47f2d4b8a8ece979d8ba9e2a167e34"}, + {file = "kiwisolver-1.4.8-cp311-cp311-win_arm64.whl", hash = "sha256:16523b40aab60426ffdebe33ac374457cf62863e330a90a0383639ce14bf44b2"}, + {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:d6af5e8815fd02997cb6ad9bbed0ee1e60014438ee1a5c2444c96f87b8843502"}, + {file = "kiwisolver-1.4.8-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:bade438f86e21d91e0cf5dd7c0ed00cda0f77c8c1616bd83f9fc157fa6760d31"}, + {file = "kiwisolver-1.4.8-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b83dc6769ddbc57613280118fb4ce3cd08899cc3369f7d0e0fab518a7cf37fdb"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:111793b232842991be367ed828076b03d96202c19221b5ebab421ce8bcad016f"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:257af1622860e51b1a9d0ce387bf5c2c4f36a90594cb9514f55b074bcc787cfc"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b5637c3f316cab1ec1c9a12b8c5f4750a4c4b71af9157645bf32830e39c03a"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:782bb86f245ec18009890e7cb8d13a5ef54dcf2ebe18ed65f795e635a96a1c6a"}, + {file = "kiwisolver-1.4.8-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cc978a80a0db3a66d25767b03688f1147a69e6237175c0f4ffffaaedf744055a"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:36dbbfd34838500a31f52c9786990d00150860e46cd5041386f217101350f0d3"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:eaa973f1e05131de5ff3569bbba7f5fd07ea0595d3870ed4a526d486fe57fa1b"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:a66f60f8d0c87ab7f59b6fb80e642ebb29fec354a4dfad687ca4092ae69d04f4"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:858416b7fb777a53f0c59ca08190ce24e9abbd3cffa18886a5781b8e3e26f65d"}, + {file = "kiwisolver-1.4.8-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:085940635c62697391baafaaeabdf3dd7a6c3643577dde337f4d66eba021b2b8"}, + {file = "kiwisolver-1.4.8-cp312-cp312-win_amd64.whl", hash = "sha256:01c3d31902c7db5fb6182832713d3b4122ad9317c2c5877d0539227d96bb2e50"}, + {file = "kiwisolver-1.4.8-cp312-cp312-win_arm64.whl", hash = "sha256:a3c44cb68861de93f0c4a8175fbaa691f0aa22550c331fefef02b618a9dcb476"}, + {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:1c8ceb754339793c24aee1c9fb2485b5b1f5bb1c2c214ff13368431e51fc9a09"}, + {file = "kiwisolver-1.4.8-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:54a62808ac74b5e55a04a408cda6156f986cefbcf0ada13572696b507cc92fa1"}, + {file = "kiwisolver-1.4.8-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:68269e60ee4929893aad82666821aaacbd455284124817af45c11e50a4b42e3c"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:34d142fba9c464bc3bbfeff15c96eab0e7310343d6aefb62a79d51421fcc5f1b"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc373e0eef45b59197de815b1b28ef89ae3955e7722cc9710fb91cd77b7f47"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:77e6f57a20b9bd4e1e2cedda4d0b986ebd0216236f0106e55c28aea3d3d69b16"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08e77738ed7538f036cd1170cbed942ef749137b1311fa2bbe2a7fda2f6bf3cc"}, + {file = "kiwisolver-1.4.8-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a5ce1e481a74b44dd5e92ff03ea0cb371ae7a0268318e202be06c8f04f4f1246"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fc2ace710ba7c1dfd1a3b42530b62b9ceed115f19a1656adefce7b1782a37794"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:3452046c37c7692bd52b0e752b87954ef86ee2224e624ef7ce6cb21e8c41cc1b"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7e9a60b50fe8b2ec6f448fe8d81b07e40141bfced7f896309df271a0b92f80f3"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:918139571133f366e8362fa4a297aeba86c7816b7ecf0bc79168080e2bd79957"}, + {file = "kiwisolver-1.4.8-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e063ef9f89885a1d68dd8b2e18f5ead48653176d10a0e324e3b0030e3a69adeb"}, + {file = "kiwisolver-1.4.8-cp313-cp313-win_amd64.whl", hash = "sha256:a17b7c4f5b2c51bb68ed379defd608a03954a1845dfed7cc0117f1cc8a9b7fd2"}, + {file = "kiwisolver-1.4.8-cp313-cp313-win_arm64.whl", hash = "sha256:3cd3bc628b25f74aedc6d374d5babf0166a92ff1317f46267f12d2ed54bc1d30"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:370fd2df41660ed4e26b8c9d6bbcad668fbe2560462cba151a721d49e5b6628c"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:84a2f830d42707de1d191b9490ac186bf7997a9495d4e9072210a1296345f7dc"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:7a3ad337add5148cf51ce0b55642dc551c0b9d6248458a757f98796ca7348712"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7506488470f41169b86d8c9aeff587293f530a23a23a49d6bc64dab66bedc71e"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2f0121b07b356a22fb0414cec4666bbe36fd6d0d759db3d37228f496ed67c880"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d6d6bd87df62c27d4185de7c511c6248040afae67028a8a22012b010bc7ad062"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:291331973c64bb9cce50bbe871fb2e675c4331dab4f31abe89f175ad7679a4d7"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:893f5525bb92d3d735878ec00f781b2de998333659507d29ea4466208df37bed"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:b47a465040146981dc9db8647981b8cb96366fbc8d452b031e4f8fdffec3f26d"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:99cea8b9dd34ff80c521aef46a1dddb0dcc0283cf18bde6d756f1e6f31772165"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:151dffc4865e5fe6dafce5480fab84f950d14566c480c08a53c663a0020504b6"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:577facaa411c10421314598b50413aa1ebcf5126f704f1e5d72d7e4e9f020d90"}, + {file = "kiwisolver-1.4.8-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:be4816dc51c8a471749d664161b434912eee82f2ea66bd7628bd14583a833e85"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:e7a019419b7b510f0f7c9dceff8c5eae2392037eae483a7f9162625233802b0a"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:286b18e86682fd2217a48fc6be6b0f20c1d0ed10958d8dc53453ad58d7be0bf8"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4191ee8dfd0be1c3666ccbac178c5a05d5f8d689bbe3fc92f3c4abec817f8fe0"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cd2785b9391f2873ad46088ed7599a6a71e762e1ea33e87514b1a441ed1da1c"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c07b29089b7ba090b6f1a669f1411f27221c3662b3a1b7010e67b59bb5a6f10b"}, + {file = "kiwisolver-1.4.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:65ea09a5a3faadd59c2ce96dc7bf0f364986a315949dc6374f04396b0d60e09b"}, + {file = "kiwisolver-1.4.8.tar.gz", hash = "sha256:23d5f023bdc8c7e54eb65f03ca5d5bb25b601eac4d7f1a042888a1f45237987e"}, +] + +[[package]] +name = "markdown-it-py" +version = "3.0.0" +description = "Python port of markdown-it. Markdown parsing, done right!" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, + {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, +] + +[package.dependencies] +mdurl = ">=0.1,<1.0" + +[package.extras] +benchmarking = ["psutil", "pytest", "pytest-benchmark"] +code-style = ["pre-commit (>=3.0,<4.0)"] +compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] +linkify = ["linkify-it-py (>=1,<3)"] +plugins = ["mdit-py-plugins"] +profiling = ["gprof2dot"] +rtd = ["jupyter_sphinx", "mdit-py-plugins", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] +testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] + +[[package]] +name = "markupsafe" +version = "3.0.2" +description = "Safely add untrusted strings to HTML/XML markup." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win32.whl", hash = "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50"}, + {file = "MarkupSafe-3.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win32.whl", hash = "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d"}, + {file = "MarkupSafe-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win32.whl", hash = "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30"}, + {file = "MarkupSafe-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win32.whl", hash = "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1"}, + {file = "MarkupSafe-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win32.whl", hash = "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6"}, + {file = "MarkupSafe-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win32.whl", hash = "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f"}, + {file = "MarkupSafe-3.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a"}, + {file = "markupsafe-3.0.2.tar.gz", hash = "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0"}, +] + +[[package]] +name = "matplotlib" +version = "3.10.1" +description = "Python plotting package" +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "matplotlib-3.10.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:ff2ae14910be903f4a24afdbb6d7d3a6c44da210fc7d42790b87aeac92238a16"}, + {file = "matplotlib-3.10.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0721a3fd3d5756ed593220a8b86808a36c5031fce489adb5b31ee6dbb47dd5b2"}, + {file = "matplotlib-3.10.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0673b4b8f131890eb3a1ad058d6e065fb3c6e71f160089b65f8515373394698"}, + {file = "matplotlib-3.10.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e875b95ac59a7908978fe307ecdbdd9a26af7fa0f33f474a27fcf8c99f64a19"}, + {file = "matplotlib-3.10.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:2589659ea30726284c6c91037216f64a506a9822f8e50592d48ac16a2f29e044"}, + {file = "matplotlib-3.10.1-cp310-cp310-win_amd64.whl", hash = "sha256:a97ff127f295817bc34517255c9db6e71de8eddaab7f837b7d341dee9f2f587f"}, + {file = "matplotlib-3.10.1-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:057206ff2d6ab82ff3e94ebd94463d084760ca682ed5f150817b859372ec4401"}, + {file = "matplotlib-3.10.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a144867dd6bf8ba8cb5fc81a158b645037e11b3e5cf8a50bd5f9917cb863adfe"}, + {file = "matplotlib-3.10.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:56c5d9fcd9879aa8040f196a235e2dcbdf7dd03ab5b07c0696f80bc6cf04bedd"}, + {file = "matplotlib-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f69dc9713e4ad2fb21a1c30e37bd445d496524257dfda40ff4a8efb3604ab5c"}, + {file = "matplotlib-3.10.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4c59af3e8aca75d7744b68e8e78a669e91ccbcf1ac35d0102a7b1b46883f1dd7"}, + {file = "matplotlib-3.10.1-cp311-cp311-win_amd64.whl", hash = "sha256:11b65088c6f3dae784bc72e8d039a2580186285f87448babb9ddb2ad0082993a"}, + {file = "matplotlib-3.10.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:66e907a06e68cb6cfd652c193311d61a12b54f56809cafbed9736ce5ad92f107"}, + {file = "matplotlib-3.10.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e9b4bb156abb8fa5e5b2b460196f7db7264fc6d62678c03457979e7d5254b7be"}, + {file = "matplotlib-3.10.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1985ad3d97f51307a2cbfc801a930f120def19ba22864182dacef55277102ba6"}, + {file = "matplotlib-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c96f2c2f825d1257e437a1482c5a2cf4fee15db4261bd6fc0750f81ba2b4ba3d"}, + {file = "matplotlib-3.10.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:35e87384ee9e488d8dd5a2dd7baf471178d38b90618d8ea147aced4ab59c9bea"}, + {file = "matplotlib-3.10.1-cp312-cp312-win_amd64.whl", hash = "sha256:cfd414bce89cc78a7e1d25202e979b3f1af799e416010a20ab2b5ebb3a02425c"}, + {file = "matplotlib-3.10.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c42eee41e1b60fd83ee3292ed83a97a5f2a8239b10c26715d8a6172226988d7b"}, + {file = "matplotlib-3.10.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:4f0647b17b667ae745c13721602b540f7aadb2a32c5b96e924cd4fea5dcb90f1"}, + {file = "matplotlib-3.10.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aa3854b5f9473564ef40a41bc922be978fab217776e9ae1545c9b3a5cf2092a3"}, + {file = "matplotlib-3.10.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e496c01441be4c7d5f96d4e40f7fca06e20dcb40e44c8daa2e740e1757ad9e6"}, + {file = "matplotlib-3.10.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5d45d3f5245be5b469843450617dcad9af75ca50568acf59997bed9311131a0b"}, + {file = "matplotlib-3.10.1-cp313-cp313-win_amd64.whl", hash = "sha256:8e8e25b1209161d20dfe93037c8a7f7ca796ec9aa326e6e4588d8c4a5dd1e473"}, + {file = "matplotlib-3.10.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:19b06241ad89c3ae9469e07d77efa87041eac65d78df4fcf9cac318028009b01"}, + {file = "matplotlib-3.10.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:01e63101ebb3014e6e9f80d9cf9ee361a8599ddca2c3e166c563628b39305dbb"}, + {file = "matplotlib-3.10.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3f06bad951eea6422ac4e8bdebcf3a70c59ea0a03338c5d2b109f57b64eb3972"}, + {file = "matplotlib-3.10.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a3dfb036f34873b46978f55e240cff7a239f6c4409eac62d8145bad3fc6ba5a3"}, + {file = "matplotlib-3.10.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dc6ab14a7ab3b4d813b88ba957fc05c79493a037f54e246162033591e770de6f"}, + {file = "matplotlib-3.10.1-cp313-cp313t-win_amd64.whl", hash = "sha256:bc411ebd5889a78dabbc457b3fa153203e22248bfa6eedc6797be5df0164dbf9"}, + {file = "matplotlib-3.10.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:648406f1899f9a818cef8c0231b44dcfc4ff36f167101c3fd1c9151f24220fdc"}, + {file = "matplotlib-3.10.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:02582304e352f40520727984a5a18f37e8187861f954fea9be7ef06569cf85b4"}, + {file = "matplotlib-3.10.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d3809916157ba871bcdd33d3493acd7fe3037db5daa917ca6e77975a94cef779"}, + {file = "matplotlib-3.10.1.tar.gz", hash = "sha256:e8d2d0e3881b129268585bf4765ad3ee73a4591d77b9a18c214ac7e3a79fb2ba"}, +] + +[package.dependencies] +contourpy = ">=1.0.1" +cycler = ">=0.10" +fonttools = ">=4.22.0" +kiwisolver = ">=1.3.1" +numpy = ">=1.23" +packaging = ">=20.0" +pillow = ">=8" +pyparsing = ">=2.3.1" +python-dateutil = ">=2.7" + +[package.extras] +dev = ["meson-python (>=0.13.1,<0.17.0)", "pybind11 (>=2.13.2,!=2.13.3)", "setuptools (>=64)", "setuptools_scm (>=7)"] + +[[package]] +name = "matplotlib-inline" +version = "0.1.7" +description = "Inline Matplotlib backend for Jupyter" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "matplotlib_inline-0.1.7-py3-none-any.whl", hash = "sha256:df192d39a4ff8f21b1895d72e6a13f5fcc5099f00fa84384e0ea28c2cc0653ca"}, + {file = "matplotlib_inline-0.1.7.tar.gz", hash = "sha256:8423b23ec666be3d16e16b60bdd8ac4e86e840ebd1dd11a30b9f117f2fa0ab90"}, +] + +[package.dependencies] +traitlets = "*" + +[[package]] +name = "mdurl" +version = "0.1.2" +description = "Markdown URL utilities" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, + {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, +] + +[[package]] +name = "mistune" +version = "3.1.3" +description = "A sane and fast Markdown parser with useful plugins and renderers" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "mistune-3.1.3-py3-none-any.whl", hash = "sha256:1a32314113cff28aa6432e99e522677c8587fd83e3d51c29b82a52409c842bd9"}, + {file = "mistune-3.1.3.tar.gz", hash = "sha256:a7035c21782b2becb6be62f8f25d3df81ccb4d6fa477a6525b15af06539f02a0"}, +] + +[[package]] +name = "ml-dtypes" +version = "0.5.1" +description = "" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "ml_dtypes-0.5.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:bd73f51957949069573ff783563486339a9285d72e2f36c18e0c1aa9ca7eb190"}, + {file = "ml_dtypes-0.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:810512e2eccdfc3b41eefa3a27402371a3411453a1efc7e9c000318196140fed"}, + {file = "ml_dtypes-0.5.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:141b2ea2f20bb10802ddca55d91fe21231ef49715cfc971998e8f2a9838f3dbe"}, + {file = "ml_dtypes-0.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:26ebcc69d7b779c8f129393e99732961b5cc33fcff84090451f448c89b0e01b4"}, + {file = "ml_dtypes-0.5.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:023ce2f502efd4d6c1e0472cc58ce3640d051d40e71e27386bed33901e201327"}, + {file = "ml_dtypes-0.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7000b6e4d8ef07542c05044ec5d8bbae1df083b3f56822c3da63993a113e716f"}, + {file = "ml_dtypes-0.5.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c09526488c3a9e8b7a23a388d4974b670a9a3dd40c5c8a61db5593ce9b725bab"}, + {file = "ml_dtypes-0.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:15ad0f3b0323ce96c24637a88a6f44f6713c64032f27277b069f285c3cf66478"}, + {file = "ml_dtypes-0.5.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:6f462f5eca22fb66d7ff9c4744a3db4463af06c49816c4b6ac89b16bfcdc592e"}, + {file = "ml_dtypes-0.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f76232163b5b9c34291b54621ee60417601e2e4802a188a0ea7157cd9b323f4"}, + {file = "ml_dtypes-0.5.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad4953c5eb9c25a56d11a913c2011d7e580a435ef5145f804d98efa14477d390"}, + {file = "ml_dtypes-0.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:9626d0bca1fb387d5791ca36bacbba298c5ef554747b7ebeafefb4564fc83566"}, + {file = "ml_dtypes-0.5.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:12651420130ee7cc13059fc56dac6ad300c3af3848b802d475148c9defd27c23"}, + {file = "ml_dtypes-0.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c9945669d3dadf8acb40ec2e57d38c985d8c285ea73af57fc5b09872c516106d"}, + {file = "ml_dtypes-0.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf9975bda82a99dc935f2ae4c83846d86df8fd6ba179614acac8e686910851da"}, + {file = "ml_dtypes-0.5.1-cp313-cp313-win_amd64.whl", hash = "sha256:fd918d4e6a4e0c110e2e05be7a7814d10dc1b95872accbf6512b80a109b71ae1"}, + {file = "ml_dtypes-0.5.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:05f23447a1c20ddf4dc7c2c661aa9ed93fcb2658f1017c204d1e758714dc28a8"}, + {file = "ml_dtypes-0.5.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b7fbe5571fdf28fd3aaab3ef4aafc847de9ebf263be959958c1ca58ec8eadf5"}, + {file = "ml_dtypes-0.5.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d13755f8e8445b3870114e5b6240facaa7cb0c3361e54beba3e07fa912a6e12b"}, + {file = "ml_dtypes-0.5.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:b8a9d46b4df5ae2135a8e8e72b465448ebbc1559997f4f9304a9ecc3413efb5b"}, + {file = "ml_dtypes-0.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afb2009ac98da274e893e03162f6269398b2b00d947e7057ee2469a921d58135"}, + {file = "ml_dtypes-0.5.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aefedc579ece2f8fb38f876aa7698204ee4c372d0e54f1c1ffa8ca580b54cc60"}, + {file = "ml_dtypes-0.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:8f2c028954f16ede77902b223a8da2d9cbb3892375b85809a5c3cfb1587960c4"}, + {file = "ml_dtypes-0.5.1.tar.gz", hash = "sha256:ac5b58559bb84a95848ed6984eb8013249f90b6bab62aa5acbad876e256002c9"}, +] + +[package.dependencies] +numpy = {version = ">=1.26.0", markers = "python_version >= \"3.12\""} + +[package.extras] +dev = ["absl-py", "pyink", "pylint (>=2.6.0)", "pytest", "pytest-xdist"] + +[[package]] +name = "namex" +version = "0.0.9" +description = "A simple utility to separate the implementation of your Python package and its public API surface." +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "namex-0.0.9-py3-none-any.whl", hash = "sha256:7bd4e4a2cc3876592111609fdf4cbe6ff19883adbe6b3b40d842fd340f77025e"}, + {file = "namex-0.0.9.tar.gz", hash = "sha256:8adfea9da5cea5be8f4e632349b4669e30172c7859e1fd97459fdf3b17469253"}, +] + +[[package]] +name = "nbclient" +version = "0.10.2" +description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." +optional = false +python-versions = ">=3.9.0" +groups = ["main"] +files = [ + {file = "nbclient-0.10.2-py3-none-any.whl", hash = "sha256:4ffee11e788b4a27fabeb7955547e4318a5298f34342a4bfd01f2e1faaeadc3d"}, + {file = "nbclient-0.10.2.tar.gz", hash = "sha256:90b7fc6b810630db87a6d0c2250b1f0ab4cf4d3c27a299b0cde78a4ed3fd9193"}, +] + +[package.dependencies] +jupyter-client = ">=6.1.12" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +nbformat = ">=5.1" +traitlets = ">=5.4" + +[package.extras] +dev = ["pre-commit"] +docs = ["autodoc-traits", "flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "mock", "moto", "myst-parser", "nbconvert (>=7.1.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling", "testpath", "xmltodict"] +test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.1.0)", "pytest (>=7.0,<8)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"] + +[[package]] +name = "nbconvert" +version = "7.16.6" +description = "Converting Jupyter Notebooks (.ipynb files) to other formats. Output formats include asciidoc, html, latex, markdown, pdf, py, rst, script. nbconvert can be used both as a Python library (`import nbconvert`) or as a command line tool (invoked as `jupyter nbconvert ...`)." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "nbconvert-7.16.6-py3-none-any.whl", hash = "sha256:1375a7b67e0c2883678c48e506dc320febb57685e5ee67faa51b18a90f3a712b"}, + {file = "nbconvert-7.16.6.tar.gz", hash = "sha256:576a7e37c6480da7b8465eefa66c17844243816ce1ccc372633c6b71c3c0f582"}, +] + +[package.dependencies] +beautifulsoup4 = "*" +bleach = {version = "!=5.0.0", extras = ["css"]} +defusedxml = "*" +jinja2 = ">=3.0" +jupyter-core = ">=4.7" +jupyterlab-pygments = "*" +markupsafe = ">=2.0" +mistune = ">=2.0.3,<4" +nbclient = ">=0.5.0" +nbformat = ">=5.7" +packaging = "*" +pandocfilters = ">=1.4.1" +pygments = ">=2.4.1" +traitlets = ">=5.1" + +[package.extras] +all = ["flaky", "ipykernel", "ipython", "ipywidgets (>=7.5)", "myst-parser", "nbsphinx (>=0.2.12)", "playwright", "pydata-sphinx-theme", "pyqtwebengine (>=5.15)", "pytest (>=7)", "sphinx (==5.0.2)", "sphinxcontrib-spelling", "tornado (>=6.1)"] +docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"] +qtpdf = ["pyqtwebengine (>=5.15)"] +qtpng = ["pyqtwebengine (>=5.15)"] +serve = ["tornado (>=6.1)"] +test = ["flaky", "ipykernel", "ipywidgets (>=7.5)", "pytest (>=7)"] +webpdf = ["playwright"] + +[[package]] +name = "nbformat" +version = "5.10.4" +description = "The Jupyter Notebook format" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b"}, + {file = "nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a"}, +] + +[package.dependencies] +fastjsonschema = ">=2.15" +jsonschema = ">=2.6" +jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +traitlets = ">=5.1" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["pep440", "pre-commit", "pytest", "testpath"] + +[[package]] +name = "nest-asyncio" +version = "1.6.0" +description = "Patch asyncio to allow nested event loops" +optional = false +python-versions = ">=3.5" +groups = ["main"] +files = [ + {file = "nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c"}, + {file = "nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe"}, +] + +[[package]] +name = "notebook" +version = "7.4.1" +description = "Jupyter Notebook - A web-based notebook environment for interactive computing" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "notebook-7.4.1-py3-none-any.whl", hash = "sha256:498f12cf567d95b20e780d62d52564ee4310248b3175e996b667b5808028e5d3"}, + {file = "notebook-7.4.1.tar.gz", hash = "sha256:96894962b230013ea0c0a466e4e642c5aace25ba8c86686175b69990ef628ff9"}, +] + +[package.dependencies] +jupyter-server = ">=2.4.0,<3" +jupyterlab = ">=4.4.0rc0,<4.5" +jupyterlab-server = ">=2.27.1,<3" +notebook-shim = ">=0.2,<0.3" +tornado = ">=6.2.0" + +[package.extras] +dev = ["hatch", "pre-commit"] +docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] +test = ["importlib-resources (>=5.0) ; python_version < \"3.10\"", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.27.1,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] + +[[package]] +name = "notebook-shim" +version = "0.2.4" +description = "A shim layer for notebook traits and config" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef"}, + {file = "notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb"}, +] + +[package.dependencies] +jupyter-server = ">=1.8,<3" + +[package.extras] +test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"] + +[[package]] +name = "numpy" +version = "1.26.4" +description = "Fundamental package for array computing in Python" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, + {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, + {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4"}, + {file = "numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f"}, + {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a"}, + {file = "numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2"}, + {file = "numpy-1.26.4-cp310-cp310-win32.whl", hash = "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07"}, + {file = "numpy-1.26.4-cp310-cp310-win_amd64.whl", hash = "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5"}, + {file = "numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71"}, + {file = "numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef"}, + {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e"}, + {file = "numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5"}, + {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a"}, + {file = "numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a"}, + {file = "numpy-1.26.4-cp311-cp311-win32.whl", hash = "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20"}, + {file = "numpy-1.26.4-cp311-cp311-win_amd64.whl", hash = "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2"}, + {file = "numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218"}, + {file = "numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b"}, + {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b"}, + {file = "numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed"}, + {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a"}, + {file = "numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0"}, + {file = "numpy-1.26.4-cp312-cp312-win32.whl", hash = "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110"}, + {file = "numpy-1.26.4-cp312-cp312-win_amd64.whl", hash = "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818"}, + {file = "numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c"}, + {file = "numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be"}, + {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764"}, + {file = "numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3"}, + {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd"}, + {file = "numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c"}, + {file = "numpy-1.26.4-cp39-cp39-win32.whl", hash = "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6"}, + {file = "numpy-1.26.4-cp39-cp39-win_amd64.whl", hash = "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c"}, + {file = "numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0"}, + {file = "numpy-1.26.4.tar.gz", hash = "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010"}, +] + +[[package]] +name = "opt-einsum" +version = "3.4.0" +description = "Path optimization of einsum functions." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "opt_einsum-3.4.0-py3-none-any.whl", hash = "sha256:69bb92469f86a1565195ece4ac0323943e83477171b91d24c35afe028a90d7cd"}, + {file = "opt_einsum-3.4.0.tar.gz", hash = "sha256:96ca72f1b886d148241348783498194c577fa30a8faac108586b14f1ba4473ac"}, +] + +[[package]] +name = "optree" +version = "0.15.0" +description = "Optimized PyTree Utilities." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "optree-0.15.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6e73e390520a545ebcaa0b77fd77943a85d1952df658268129e6c523d4d38972"}, + {file = "optree-0.15.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c45593a818c67b72fd0beaeaa6410fa3c5debd39af500127fa367f8ee1f4bd8e"}, + {file = "optree-0.15.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4e440de109529ce919d0a0a4fa234d3b949da6f99630c9406c9f21160800831"}, + {file = "optree-0.15.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7614ad2f7bde7b905c897011be573d89a9cb5cf851784ee8efb0020d8e067b27"}, + {file = "optree-0.15.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:655ab99f9f9570fbb124f81fdf7e480250b59b1f1d9bd07df04c8751eecc1450"}, + {file = "optree-0.15.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e63b965b62f461513983095750fd1331cad5674153bf3811bd7e2748044df4cd"}, + {file = "optree-0.15.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14e515b011d965bd3f7aeb021bb523265cb49fde47be0033ba5601e386fff90a"}, + {file = "optree-0.15.0-cp310-cp310-win32.whl", hash = "sha256:27031f507828c18606047e695129e9ec9678cd4321f57856da59c7fcc8f8666c"}, + {file = "optree-0.15.0-cp310-cp310-win_amd64.whl", hash = "sha256:f0392bebcd24fc70ca9a397c1eb2373727fa775e1007f27f3983c50f16a98e45"}, + {file = "optree-0.15.0-cp310-cp310-win_arm64.whl", hash = "sha256:c3122f73eca03e38712ceee16a6acf75d5244ba8b8d1adf5cd6613d1a60a6c26"}, + {file = "optree-0.15.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:c15d98e6f587badb9df67d67fa914fcfa0b63db2db270951915c563816c29f3d"}, + {file = "optree-0.15.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f8d58949ef132beb3a025ace512a71a0fcf92e0e5ef350f289f33a782ae6cb85"}, + {file = "optree-0.15.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f71d4759de0c4abc132dab69d1aa6ea4561ba748efabeee7b25db57c08652b79"}, + {file = "optree-0.15.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4ba65d4c48d76bd5caac7f0b1b8db55223c1c3707d26f6d1d2ff18baf6f81850"}, + {file = "optree-0.15.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aad3878acdb082701e5f77a153cd86af8819659bfa7e27debd0dc1a52f16c365"}, + {file = "optree-0.15.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6676b8c3f4cd4c8d8d052b66767a9e4cf852627bf256da6e49d2c38a95f07712"}, + {file = "optree-0.15.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a1f185b0d21bc4dda1f4fd03f5ba9e2bc9d28ca14bce3ce3d36b5817140a345e"}, + {file = "optree-0.15.0-cp311-cp311-win32.whl", hash = "sha256:927b579a76c13b9328580c09dd4a9947646531f0a371a170a785002c50dedb94"}, + {file = "optree-0.15.0-cp311-cp311-win_amd64.whl", hash = "sha256:d6525d6a550a1030957e5205e57a415d608a9f7561154e0fb29670e967424578"}, + {file = "optree-0.15.0-cp311-cp311-win_arm64.whl", hash = "sha256:081e8bed7583b625819659d68288365bd4348b3c4281935a6ecfa53c93619b13"}, + {file = "optree-0.15.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:ba2eee9de9d57e145b4c1a71749f7f8b8fe1c645abbb306d4a26cfa45a9cdbb5"}, + {file = "optree-0.15.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4aad5023686cd7caad68d70ad3706b82cfe9ae8ff9a13c08c1edef2a9b4c9d72"}, + {file = "optree-0.15.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9810e84466025da55ce19ac6b2b79a5cb2c0c1349d318a17504f6e44528221f8"}, + {file = "optree-0.15.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:20b07d8a097b810d68b0ee35f287c1f0b7c9844133ada613a92cc10bade9cdbe"}, + {file = "optree-0.15.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0304ec416258edebe2cd2a1ef71770e43405d5e7366ecbc134c520b4ab44d155"}, + {file = "optree-0.15.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:759a72e6dcca3e7239d202a253e1e8e44e8df5033a5e178df585778ac85ddd13"}, + {file = "optree-0.15.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01a0dc75c594c884d0ca502b8d169cec538e19a70883d2e5f5b9b08fce740958"}, + {file = "optree-0.15.0-cp312-cp312-win32.whl", hash = "sha256:7e10e5c2a8110f5f4fbc999ff8580d1db3a915f851f63f602fff3bbd250ffa20"}, + {file = "optree-0.15.0-cp312-cp312-win_amd64.whl", hash = "sha256:def5b08f219c31edd029b47624e689ffa07747b0694222156f28a28d341d29ac"}, + {file = "optree-0.15.0-cp312-cp312-win_arm64.whl", hash = "sha256:8ec6d3040b1cbfe3f0bc045a3302ee9f9e329c2cd96e928360d22e1cfd9d973a"}, + {file = "optree-0.15.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:4ab606720ae319cb43da47c71d7d5fa7cfbb6a02e6da4857331e6f93800c970e"}, + {file = "optree-0.15.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9cfc5771115f85b0bfa8f72cce1599186fd6a0ea71c8154d8b2751d9170be428"}, + {file = "optree-0.15.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f958a20a311854aaab8bdd0f124aab5b9848f07976b54da3e95526a491aa860"}, + {file = "optree-0.15.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:47ce7e9d81eaed5a05004df1fa279d2608e063dd5eb236e9c95803b4fa0a286c"}, + {file = "optree-0.15.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c6d6ab3717d48e0e747d9e348e23be1fa0f8a812f73632face6303c438d259ba"}, + {file = "optree-0.15.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c7d101a15be39a9c7c4afae9f0bb85f682eb7d719117e2f9e5fb39c9f6f2c92"}, + {file = "optree-0.15.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:aae337ab30b45a096eb5b4ffc3ad8909731617543a7eb288e0b297b9d10a241f"}, + {file = "optree-0.15.0-cp313-cp313-win32.whl", hash = "sha256:eb9c51d728485f5908111191b5403a3f9bc310d121a981f29fad45750b9ff89c"}, + {file = "optree-0.15.0-cp313-cp313-win_amd64.whl", hash = "sha256:7f00e6f011f021ae470efe070ec4d2339fb1a8cd0dcdd16fe3dab782a47aba45"}, + {file = "optree-0.15.0-cp313-cp313-win_arm64.whl", hash = "sha256:17990fbc7f4c461de7ae546fc5661f6a248c3dcee966c89c2e2e5ad7f6228bae"}, + {file = "optree-0.15.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:b31c88af70e3f5c14ff2aacd38c4076e6cde98f75169fe0bb59543f01bfb9719"}, + {file = "optree-0.15.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:bc440f81f738d9c822030c3b4f53b6dec9ceb52410f02fd06b9338dc25a8447f"}, + {file = "optree-0.15.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76ffc2dd8c754e95495163dde55b38dc37e6712b6a3bc7f2190b0547a2c403bb"}, + {file = "optree-0.15.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9fa9fb0197cd7b5f2b1fa7e05d30946b3b79bcfc3608fe54dbfc67969895cac9"}, + {file = "optree-0.15.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6828639b01ba1177c04875dd9529d938d7b28122c97e7ae14ec41c68ec22826c"}, + {file = "optree-0.15.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:93c74eed0f52818c30212dba4867f5672e498567bad49dcdffbe8db6703a0d65"}, + {file = "optree-0.15.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:12188f6832c29dac37385a2f42fce961e303349909cff6d40e21cb27a8d09023"}, + {file = "optree-0.15.0-cp313-cp313t-win32.whl", hash = "sha256:d7b8ce7d13580985922dcfbda515da3f004cd7cb1b03320b96ea32d8cfd76392"}, + {file = "optree-0.15.0-cp313-cp313t-win_amd64.whl", hash = "sha256:daccdb583abaab14346f0af316ee570152a5c058e7b9fb09d8f8171fe751f2b3"}, + {file = "optree-0.15.0-cp313-cp313t-win_arm64.whl", hash = "sha256:e0162a36a6cedb0829efe980d0b370d4e5970fdb28a6609daa2c906d547add5f"}, + {file = "optree-0.15.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:1a99941604a5a958b4e1cbd0caa8b2339aa716babde0189a92843b39d2a77e48"}, + {file = "optree-0.15.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:8678ac0cdf752d6194f75637f3cd19af9071bc00967b05f00aff48727d373aab"}, + {file = "optree-0.15.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce2a8d57b8fe0179f967494a7d19cff18f8cc0f2e9aff0ed2cb5e5605475a19a"}, + {file = "optree-0.15.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d1feca7404e69a0860940c9cf6a4e3af23457613c4c2338991dc9355dfbbc1ab"}, + {file = "optree-0.15.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d13c5d7d9af345bc96f441bfb313e4286f4495a20d29ad6499a8923c581c593e"}, + {file = "optree-0.15.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5614aebb65a18db496bbdf8b6ce4873779be5352cc91c7e2372984eaf1d4cce4"}, + {file = "optree-0.15.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:def382dbd35ab715008c8604d64c67baf0d97a5f7389a56b5148bbfc9bb006a7"}, + {file = "optree-0.15.0-cp38-cp38-win32.whl", hash = "sha256:e7e0fb32ea05beec7d46a79e4c03701f060a2cfbd5ffa89abaf7b7d17e2d28aa"}, + {file = "optree-0.15.0-cp38-cp38-win_amd64.whl", hash = "sha256:ae66e98634f0c843c5c6b4f27508200971c1a66b726db29c30aba368cf23de5f"}, + {file = "optree-0.15.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0f9ea3208a14d1677c8966ea1eabe5b8f148424a8c3214ed4d4769beecd48a8a"}, + {file = "optree-0.15.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ebd608b02cb207e4851983b78f57e800c542758f131abe3b23cd4a5f0153676c"}, + {file = "optree-0.15.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09d11111194a6211e9d806828d29d932ad5f998ea156c76ad0e4d5da39654541"}, + {file = "optree-0.15.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:44cb5d1e5317dbb3044ad4b76af2d4f5e51de73d6ff6e858077d8af00756fe16"}, + {file = "optree-0.15.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1493f3e97f921b8742368406d3de390f051a7c405959e2088d72b4a4ff3f5394"}, + {file = "optree-0.15.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fef87f006da3c4dfc914f6c0f863c7f4712e958f56c991c320b06026e9ccfd87"}, + {file = "optree-0.15.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad409276099b89fb5077b0b9311c9e8500086888eba9c77546353c18d520bfe5"}, + {file = "optree-0.15.0-cp39-cp39-win32.whl", hash = "sha256:a6103a3d33cc300ea567f373680e29a29ae854e8775bf87231aae12664b4732e"}, + {file = "optree-0.15.0-cp39-cp39-win_amd64.whl", hash = "sha256:a68a813a2141493566178ae87e1906856f1549e2c3e439ff76801f8fb05bd3a7"}, + {file = "optree-0.15.0-cp39-cp39-win_arm64.whl", hash = "sha256:59d8d252cb83465ecac2f7ff457489606a56316fe8b8f7635770ee8e27b6a3b8"}, + {file = "optree-0.15.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:b30673fe30d4d77eef18534420491c27837f0b55dfe18107cfd9eca39a62de3b"}, + {file = "optree-0.15.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0f378d08b8a09f7e495c49cd94141c1acebc2aa7d567d7dd2cb44a707f29268"}, + {file = "optree-0.15.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90dae741d683cbc47cba16a1b4af3c0d5d8c1042efb7c4aec7664a4f3f07eca2"}, + {file = "optree-0.15.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:cf790dd21dcaa0857888c03233276f5513821abfe605964e825837a30a24f0d7"}, + {file = "optree-0.15.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:21afadec56475f2a13670b8ecf7b767af4feb3ba5bd3a246cbbd8c1822e2a664"}, + {file = "optree-0.15.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a39bccc63223e040f36eb8b413fa1f94a190289eb82e7b384ed32d95d1ffd67"}, + {file = "optree-0.15.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:06aed485ab9c94f5b45a18f956bcb89bf6bad29632421da69da268cb49adb37b"}, + {file = "optree-0.15.0-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:07e9d75867ca39cce98375249b83a2033b0313cbfa32cbd06f93f7bc15104afc"}, + {file = "optree-0.15.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:3d237605b277d5600748c8a6f83f65e00c294b000ac8772f473fa41eb587ca15"}, + {file = "optree-0.15.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c82f0e88f43b5ec57b8e225175003dc6624dfa400fb56c18c0e4b4667bef805"}, + {file = "optree-0.15.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2245f9a9fd5c7f042f07a476695fd4f6074f85036b5ff3d004f4da121220bf56"}, + {file = "optree-0.15.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:29e1fa90153908d968a2fcebf62bbbc0b434b5a75463a202c33ba3e13dc170ea"}, + {file = "optree-0.15.0.tar.gz", hash = "sha256:d00a45e3b192093ef2cd32bf0d541ecbfc93c1bd73a5f3fe36293499f28a50cf"}, +] + +[package.dependencies] +typing-extensions = ">=4.5.0" + +[package.extras] +benchmark = ["dm-tree (>=0.1,<0.2.0a0)", "jax[cpu] (>=0.4.6,<0.5.0a0)", "pandas", "tabulate", "termcolor", "torch (>=2.0,<2.6.0a0)", "torchvision"] +docs = ["docutils", "jax[cpu]", "numpy", "sphinx", "sphinx-autoapi", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx-copybutton", "sphinx-rtd-theme", "sphinxcontrib-bibtex", "torch"] +jax = ["jax"] +lint = ["cpplint", "doc8", "mypy", "pre-commit", "pyenchant", "pylint[spelling]", "ruff", "xdoctest"] +numpy = ["numpy"] +test = ["covdefaults", "pytest", "pytest-cov", "pytest-xdist"] +torch = ["torch"] + +[[package]] +name = "overrides" +version = "7.7.0" +description = "A decorator to automatically detect mismatch when overriding a method." +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "overrides-7.7.0-py3-none-any.whl", hash = "sha256:c7ed9d062f78b8e4c1a7b70bd8796b35ead4d9f510227ef9c5dc7626c60d7e49"}, + {file = "overrides-7.7.0.tar.gz", hash = "sha256:55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a"}, +] + +[[package]] +name = "packaging" +version = "25.0" +description = "Core utilities for Python packages" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484"}, + {file = "packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f"}, +] + +[[package]] +name = "pandas" +version = "2.2.3" +description = "Powerful data structures for data analysis, time series, and statistics" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "pandas-2.2.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1948ddde24197a0f7add2bdc4ca83bf2b1ef84a1bc8ccffd95eda17fd836ecb5"}, + {file = "pandas-2.2.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:381175499d3802cde0eabbaf6324cce0c4f5d52ca6f8c377c29ad442f50f6348"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d9c45366def9a3dd85a6454c0e7908f2b3b8e9c138f5dc38fed7ce720d8453ed"}, + {file = "pandas-2.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86976a1c5b25ae3f8ccae3a5306e443569ee3c3faf444dfd0f41cda24667ad57"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:b8661b0238a69d7aafe156b7fa86c44b881387509653fdf857bebc5e4008ad42"}, + {file = "pandas-2.2.3-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:37e0aced3e8f539eccf2e099f65cdb9c8aa85109b0be6e93e2baff94264bdc6f"}, + {file = "pandas-2.2.3-cp310-cp310-win_amd64.whl", hash = "sha256:56534ce0746a58afaf7942ba4863e0ef81c9c50d3f0ae93e9497d6a41a057645"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:66108071e1b935240e74525006034333f98bcdb87ea116de573a6a0dccb6c039"}, + {file = "pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7c2875855b0ff77b2a64a0365e24455d9990730d6431b9e0ee18ad8acee13dbd"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cd8d0c3be0515c12fed0bdbae072551c8b54b7192c7b1fda0ba56059a0179698"}, + {file = "pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c124333816c3a9b03fbeef3a9f230ba9a737e9e5bb4060aa2107a86cc0a497fc"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:63cc132e40a2e084cf01adf0775b15ac515ba905d7dcca47e9a251819c575ef3"}, + {file = "pandas-2.2.3-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:29401dbfa9ad77319367d36940cd8a0b3a11aba16063e39632d98b0e931ddf32"}, + {file = "pandas-2.2.3-cp311-cp311-win_amd64.whl", hash = "sha256:3fc6873a41186404dad67245896a6e440baacc92f5b716ccd1bc9ed2995ab2c5"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b1d432e8d08679a40e2a6d8b2f9770a5c21793a6f9f47fdd52c5ce1948a5a8a9"}, + {file = "pandas-2.2.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:a5a1595fe639f5988ba6a8e5bc9649af3baf26df3998a0abe56c02609392e0a4"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5de54125a92bb4d1c051c0659e6fcb75256bf799a732a87184e5ea503965bce3"}, + {file = "pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fffb8ae78d8af97f849404f21411c95062db1496aeb3e56f146f0355c9989319"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6dfcb5ee8d4d50c06a51c2fffa6cff6272098ad6540aed1a76d15fb9318194d8"}, + {file = "pandas-2.2.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:062309c1b9ea12a50e8ce661145c6aab431b1e99530d3cd60640e255778bd43a"}, + {file = "pandas-2.2.3-cp312-cp312-win_amd64.whl", hash = "sha256:59ef3764d0fe818125a5097d2ae867ca3fa64df032331b7e0917cf5d7bf66b13"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f00d1345d84d8c86a63e476bb4955e46458b304b9575dcf71102b5c705320015"}, + {file = "pandas-2.2.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:3508d914817e153ad359d7e069d752cdd736a247c322d932eb89e6bc84217f28"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22a9d949bfc9a502d320aa04e5d02feab689d61da4e7764b62c30b991c42c5f0"}, + {file = "pandas-2.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3a255b2c19987fbbe62a9dfd6cff7ff2aa9ccab3fc75218fd4b7530f01efa24"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:800250ecdadb6d9c78eae4990da62743b857b470883fa27f652db8bdde7f6659"}, + {file = "pandas-2.2.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6374c452ff3ec675a8f46fd9ab25c4ad0ba590b71cf0656f8b6daa5202bca3fb"}, + {file = "pandas-2.2.3-cp313-cp313-win_amd64.whl", hash = "sha256:61c5ad4043f791b61dd4752191d9f07f0ae412515d59ba8f005832a532f8736d"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:3b71f27954685ee685317063bf13c7709a7ba74fc996b84fc6821c59b0f06468"}, + {file = "pandas-2.2.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:38cf8125c40dae9d5acc10fa66af8ea6fdf760b2714ee482ca691fc66e6fcb18"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba96630bc17c875161df3818780af30e43be9b166ce51c9a18c1feae342906c2"}, + {file = "pandas-2.2.3-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1db71525a1538b30142094edb9adc10be3f3e176748cd7acc2240c2f2e5aa3a4"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:15c0e1e02e93116177d29ff83e8b1619c93ddc9c49083f237d4312337a61165d"}, + {file = "pandas-2.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ad5b65698ab28ed8d7f18790a0dc58005c7629f227be9ecc1072aa74c0c1d43a"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bc6b93f9b966093cb0fd62ff1a7e4c09e6d546ad7c1de191767baffc57628f39"}, + {file = "pandas-2.2.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5dbca4c1acd72e8eeef4753eeca07de9b1db4f398669d5994086f788a5d7cc30"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8cd6d7cc958a3910f934ea8dbdf17b2364827bb4dafc38ce6eef6bb3d65ff09c"}, + {file = "pandas-2.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99df71520d25fade9db7c1076ac94eb994f4d2673ef2aa2e86ee039b6746d20c"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:31d0ced62d4ea3e231a9f228366919a5ea0b07440d9d4dac345376fd8e1477ea"}, + {file = "pandas-2.2.3-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:7eee9e7cea6adf3e3d24e304ac6b8300646e2a5d1cd3a3c2abed9101b0846761"}, + {file = "pandas-2.2.3-cp39-cp39-win_amd64.whl", hash = "sha256:4850ba03528b6dd51d6c5d273c46f183f39a9baf3f0143e566b89450965b105e"}, + {file = "pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667"}, +] + +[package.dependencies] +numpy = {version = ">=1.26.0", markers = "python_version >= \"3.12\""} +python-dateutil = ">=2.8.2" +pytz = ">=2020.1" +tzdata = ">=2022.7" + +[package.extras] +all = ["PyQt5 (>=5.15.9)", "SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)", "beautifulsoup4 (>=4.11.2)", "bottleneck (>=1.3.6)", "dataframe-api-compat (>=0.1.7)", "fastparquet (>=2022.12.0)", "fsspec (>=2022.11.0)", "gcsfs (>=2022.11.0)", "html5lib (>=1.1)", "hypothesis (>=6.46.1)", "jinja2 (>=3.1.2)", "lxml (>=4.9.2)", "matplotlib (>=3.6.3)", "numba (>=0.56.4)", "numexpr (>=2.8.4)", "odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "pandas-gbq (>=0.19.0)", "psycopg2 (>=2.9.6)", "pyarrow (>=10.0.1)", "pymysql (>=1.0.2)", "pyreadstat (>=1.2.0)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "qtpy (>=2.3.0)", "s3fs (>=2022.11.0)", "scipy (>=1.10.0)", "tables (>=3.8.0)", "tabulate (>=0.9.0)", "xarray (>=2022.12.0)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)", "zstandard (>=0.19.0)"] +aws = ["s3fs (>=2022.11.0)"] +clipboard = ["PyQt5 (>=5.15.9)", "qtpy (>=2.3.0)"] +compression = ["zstandard (>=0.19.0)"] +computation = ["scipy (>=1.10.0)", "xarray (>=2022.12.0)"] +consortium-standard = ["dataframe-api-compat (>=0.1.7)"] +excel = ["odfpy (>=1.4.1)", "openpyxl (>=3.1.0)", "python-calamine (>=0.1.7)", "pyxlsb (>=1.0.10)", "xlrd (>=2.0.1)", "xlsxwriter (>=3.0.5)"] +feather = ["pyarrow (>=10.0.1)"] +fss = ["fsspec (>=2022.11.0)"] +gcp = ["gcsfs (>=2022.11.0)", "pandas-gbq (>=0.19.0)"] +hdf5 = ["tables (>=3.8.0)"] +html = ["beautifulsoup4 (>=4.11.2)", "html5lib (>=1.1)", "lxml (>=4.9.2)"] +mysql = ["SQLAlchemy (>=2.0.0)", "pymysql (>=1.0.2)"] +output-formatting = ["jinja2 (>=3.1.2)", "tabulate (>=0.9.0)"] +parquet = ["pyarrow (>=10.0.1)"] +performance = ["bottleneck (>=1.3.6)", "numba (>=0.56.4)", "numexpr (>=2.8.4)"] +plot = ["matplotlib (>=3.6.3)"] +postgresql = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "psycopg2 (>=2.9.6)"] +pyarrow = ["pyarrow (>=10.0.1)"] +spss = ["pyreadstat (>=1.2.0)"] +sql-other = ["SQLAlchemy (>=2.0.0)", "adbc-driver-postgresql (>=0.8.0)", "adbc-driver-sqlite (>=0.8.0)"] +test = ["hypothesis (>=6.46.1)", "pytest (>=7.3.2)", "pytest-xdist (>=2.2.0)"] +xml = ["lxml (>=4.9.2)"] + +[[package]] +name = "pandocfilters" +version = "1.5.1" +description = "Utilities for writing pandoc filters in python" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +groups = ["main"] +files = [ + {file = "pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc"}, + {file = "pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e"}, +] + +[[package]] +name = "parso" +version = "0.8.4" +description = "A Python Parser" +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "parso-0.8.4-py2.py3-none-any.whl", hash = "sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18"}, + {file = "parso-0.8.4.tar.gz", hash = "sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d"}, +] + +[package.extras] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["docopt", "pytest"] + +[[package]] +name = "pexpect" +version = "4.9.0" +description = "Pexpect allows easy control of interactive console applications." +optional = false +python-versions = "*" +groups = ["main"] +markers = "sys_platform != \"win32\" and sys_platform != \"emscripten\"" +files = [ + {file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"}, + {file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"}, +] + +[package.dependencies] +ptyprocess = ">=0.5" + +[[package]] +name = "pillow" +version = "11.2.1" +description = "Python Imaging Library (Fork)" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "pillow-11.2.1-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:d57a75d53922fc20c165016a20d9c44f73305e67c351bbc60d1adaf662e74047"}, + {file = "pillow-11.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:127bf6ac4a5b58b3d32fc8289656f77f80567d65660bc46f72c0d77e6600cc95"}, + {file = "pillow-11.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b4ba4be812c7a40280629e55ae0b14a0aafa150dd6451297562e1764808bbe61"}, + {file = "pillow-11.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c8bd62331e5032bc396a93609982a9ab6b411c05078a52f5fe3cc59234a3abd1"}, + {file = "pillow-11.2.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:562d11134c97a62fe3af29581f083033179f7ff435f78392565a1ad2d1c2c45c"}, + {file = "pillow-11.2.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:c97209e85b5be259994eb5b69ff50c5d20cca0f458ef9abd835e262d9d88b39d"}, + {file = "pillow-11.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:0c3e6d0f59171dfa2e25d7116217543310908dfa2770aa64b8f87605f8cacc97"}, + {file = "pillow-11.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cc1c3bc53befb6096b84165956e886b1729634a799e9d6329a0c512ab651e579"}, + {file = "pillow-11.2.1-cp310-cp310-win32.whl", hash = "sha256:312c77b7f07ab2139924d2639860e084ec2a13e72af54d4f08ac843a5fc9c79d"}, + {file = "pillow-11.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:9bc7ae48b8057a611e5fe9f853baa88093b9a76303937449397899385da06fad"}, + {file = "pillow-11.2.1-cp310-cp310-win_arm64.whl", hash = "sha256:2728567e249cdd939f6cc3d1f049595c66e4187f3c34078cbc0a7d21c47482d2"}, + {file = "pillow-11.2.1-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:35ca289f712ccfc699508c4658a1d14652e8033e9b69839edf83cbdd0ba39e70"}, + {file = "pillow-11.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e0409af9f829f87a2dfb7e259f78f317a5351f2045158be321fd135973fff7bf"}, + {file = "pillow-11.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4e5c5edee874dce4f653dbe59db7c73a600119fbea8d31f53423586ee2aafd7"}, + {file = "pillow-11.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b93a07e76d13bff9444f1a029e0af2964e654bfc2e2c2d46bfd080df5ad5f3d8"}, + {file = "pillow-11.2.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:e6def7eed9e7fa90fde255afaf08060dc4b343bbe524a8f69bdd2a2f0018f600"}, + {file = "pillow-11.2.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:8f4f3724c068be008c08257207210c138d5f3731af6c155a81c2b09a9eb3a788"}, + {file = "pillow-11.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:a0a6709b47019dff32e678bc12c63008311b82b9327613f534e496dacaefb71e"}, + {file = "pillow-11.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f6b0c664ccb879109ee3ca702a9272d877f4fcd21e5eb63c26422fd6e415365e"}, + {file = "pillow-11.2.1-cp311-cp311-win32.whl", hash = "sha256:cc5d875d56e49f112b6def6813c4e3d3036d269c008bf8aef72cd08d20ca6df6"}, + {file = "pillow-11.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:0f5c7eda47bf8e3c8a283762cab94e496ba977a420868cb819159980b6709193"}, + {file = "pillow-11.2.1-cp311-cp311-win_arm64.whl", hash = "sha256:4d375eb838755f2528ac8cbc926c3e31cc49ca4ad0cf79cff48b20e30634a4a7"}, + {file = "pillow-11.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:78afba22027b4accef10dbd5eed84425930ba41b3ea0a86fa8d20baaf19d807f"}, + {file = "pillow-11.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:78092232a4ab376a35d68c4e6d5e00dfd73454bd12b230420025fbe178ee3b0b"}, + {file = "pillow-11.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:25a5f306095c6780c52e6bbb6109624b95c5b18e40aab1c3041da3e9e0cd3e2d"}, + {file = "pillow-11.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c7b29dbd4281923a2bfe562acb734cee96bbb129e96e6972d315ed9f232bef4"}, + {file = "pillow-11.2.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:3e645b020f3209a0181a418bffe7b4a93171eef6c4ef6cc20980b30bebf17b7d"}, + {file = "pillow-11.2.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:b2dbea1012ccb784a65349f57bbc93730b96e85b42e9bf7b01ef40443db720b4"}, + {file = "pillow-11.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:da3104c57bbd72948d75f6a9389e6727d2ab6333c3617f0a89d72d4940aa0443"}, + {file = "pillow-11.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:598174aef4589af795f66f9caab87ba4ff860ce08cd5bb447c6fc553ffee603c"}, + {file = "pillow-11.2.1-cp312-cp312-win32.whl", hash = "sha256:1d535df14716e7f8776b9e7fee118576d65572b4aad3ed639be9e4fa88a1cad3"}, + {file = "pillow-11.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:14e33b28bf17c7a38eede290f77db7c664e4eb01f7869e37fa98a5aa95978941"}, + {file = "pillow-11.2.1-cp312-cp312-win_arm64.whl", hash = "sha256:21e1470ac9e5739ff880c211fc3af01e3ae505859392bf65458c224d0bf283eb"}, + {file = "pillow-11.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:fdec757fea0b793056419bca3e9932eb2b0ceec90ef4813ea4c1e072c389eb28"}, + {file = "pillow-11.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0e130705d568e2f43a17bcbe74d90958e8a16263868a12c3e0d9c8162690830"}, + {file = "pillow-11.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7bdb5e09068332578214cadd9c05e3d64d99e0e87591be22a324bdbc18925be0"}, + {file = "pillow-11.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d189ba1bebfbc0c0e529159631ec72bb9e9bc041f01ec6d3233d6d82eb823bc1"}, + {file = "pillow-11.2.1-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:191955c55d8a712fab8934a42bfefbf99dd0b5875078240943f913bb66d46d9f"}, + {file = "pillow-11.2.1-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:ad275964d52e2243430472fc5d2c2334b4fc3ff9c16cb0a19254e25efa03a155"}, + {file = "pillow-11.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:750f96efe0597382660d8b53e90dd1dd44568a8edb51cb7f9d5d918b80d4de14"}, + {file = "pillow-11.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:fe15238d3798788d00716637b3d4e7bb6bde18b26e5d08335a96e88564a36b6b"}, + {file = "pillow-11.2.1-cp313-cp313-win32.whl", hash = "sha256:3fe735ced9a607fee4f481423a9c36701a39719252a9bb251679635f99d0f7d2"}, + {file = "pillow-11.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:74ee3d7ecb3f3c05459ba95eed5efa28d6092d751ce9bf20e3e253a4e497e691"}, + {file = "pillow-11.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:5119225c622403afb4b44bad4c1ca6c1f98eed79db8d3bc6e4e160fc6339d66c"}, + {file = "pillow-11.2.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8ce2e8411c7aaef53e6bb29fe98f28cd4fbd9a1d9be2eeea434331aac0536b22"}, + {file = "pillow-11.2.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9ee66787e095127116d91dea2143db65c7bb1e232f617aa5957c0d9d2a3f23a7"}, + {file = "pillow-11.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9622e3b6c1d8b551b6e6f21873bdcc55762b4b2126633014cea1803368a9aa16"}, + {file = "pillow-11.2.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63b5dff3a68f371ea06025a1a6966c9a1e1ee452fc8020c2cd0ea41b83e9037b"}, + {file = "pillow-11.2.1-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:31df6e2d3d8fc99f993fd253e97fae451a8db2e7207acf97859732273e108406"}, + {file = "pillow-11.2.1-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:062b7a42d672c45a70fa1f8b43d1d38ff76b63421cbbe7f88146b39e8a558d91"}, + {file = "pillow-11.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4eb92eca2711ef8be42fd3f67533765d9fd043b8c80db204f16c8ea62ee1a751"}, + {file = "pillow-11.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f91ebf30830a48c825590aede79376cb40f110b387c17ee9bd59932c961044f9"}, + {file = "pillow-11.2.1-cp313-cp313t-win32.whl", hash = "sha256:e0b55f27f584ed623221cfe995c912c61606be8513bfa0e07d2c674b4516d9dd"}, + {file = "pillow-11.2.1-cp313-cp313t-win_amd64.whl", hash = "sha256:36d6b82164c39ce5482f649b437382c0fb2395eabc1e2b1702a6deb8ad647d6e"}, + {file = "pillow-11.2.1-cp313-cp313t-win_arm64.whl", hash = "sha256:225c832a13326e34f212d2072982bb1adb210e0cc0b153e688743018c94a2681"}, + {file = "pillow-11.2.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:7491cf8a79b8eb867d419648fff2f83cb0b3891c8b36da92cc7f1931d46108c8"}, + {file = "pillow-11.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8b02d8f9cb83c52578a0b4beadba92e37d83a4ef11570a8688bbf43f4ca50909"}, + {file = "pillow-11.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:014ca0050c85003620526b0ac1ac53f56fc93af128f7546623cc8e31875ab928"}, + {file = "pillow-11.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3692b68c87096ac6308296d96354eddd25f98740c9d2ab54e1549d6c8aea9d79"}, + {file = "pillow-11.2.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:f781dcb0bc9929adc77bad571b8621ecb1e4cdef86e940fe2e5b5ee24fd33b35"}, + {file = "pillow-11.2.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:2b490402c96f907a166615e9a5afacf2519e28295f157ec3a2bb9bd57de638cb"}, + {file = "pillow-11.2.1-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:dd6b20b93b3ccc9c1b597999209e4bc5cf2853f9ee66e3fc9a400a78733ffc9a"}, + {file = "pillow-11.2.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:4b835d89c08a6c2ee7781b8dd0a30209a8012b5f09c0a665b65b0eb3560b6f36"}, + {file = "pillow-11.2.1-cp39-cp39-win32.whl", hash = "sha256:b10428b3416d4f9c61f94b494681280be7686bda15898a3a9e08eb66a6d92d67"}, + {file = "pillow-11.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:6ebce70c3f486acf7591a3d73431fa504a4e18a9b97ff27f5f47b7368e4b9dd1"}, + {file = "pillow-11.2.1-cp39-cp39-win_arm64.whl", hash = "sha256:c27476257b2fdcd7872d54cfd119b3a9ce4610fb85c8e32b70b42e3680a29a1e"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:9b7b0d4fd2635f54ad82785d56bc0d94f147096493a79985d0ab57aedd563156"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:aa442755e31c64037aa7c1cb186e0b369f8416c567381852c63444dd666fb772"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f0d3348c95b766f54b76116d53d4cb171b52992a1027e7ca50c81b43b9d9e363"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85d27ea4c889342f7e35f6d56e7e1cb345632ad592e8c51b693d7b7556043ce0"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:bf2c33d6791c598142f00c9c4c7d47f6476731c31081331664eb26d6ab583e01"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e616e7154c37669fc1dfc14584f11e284e05d1c650e1c0f972f281c4ccc53193"}, + {file = "pillow-11.2.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:39ad2e0f424394e3aebc40168845fee52df1394a4673a6ee512d840d14ab3013"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:80f1df8dbe9572b4b7abdfa17eb5d78dd620b1d55d9e25f834efdbee872d3aed"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:ea926cfbc3957090becbcbbb65ad177161a2ff2ad578b5a6ec9bb1e1cd78753c"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:738db0e0941ca0376804d4de6a782c005245264edaa253ffce24e5a15cbdc7bd"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9db98ab6565c69082ec9b0d4e40dd9f6181dab0dd236d26f7a50b8b9bfbd5076"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:036e53f4170e270ddb8797d4c590e6dd14d28e15c7da375c18978045f7e6c37b"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:14f73f7c291279bd65fda51ee87affd7c1e097709f7fdd0188957a16c264601f"}, + {file = "pillow-11.2.1-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:208653868d5c9ecc2b327f9b9ef34e0e42a4cdd172c2988fd81d62d2bc9bc044"}, + {file = "pillow-11.2.1.tar.gz", hash = "sha256:a64dd61998416367b7ef979b73d3a85853ba9bec4c2925f74e588879a58716b6"}, +] + +[package.extras] +docs = ["furo", "olefile", "sphinx (>=8.2)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinxext-opengraph"] +fpx = ["olefile"] +mic = ["olefile"] +test-arrow = ["pyarrow"] +tests = ["check-manifest", "coverage (>=7.4.2)", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout", "trove-classifiers (>=2024.10.12)"] +typing = ["typing-extensions ; python_version < \"3.10\""] +xmp = ["defusedxml"] + +[[package]] +name = "platformdirs" +version = "4.3.7" +description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "platformdirs-4.3.7-py3-none-any.whl", hash = "sha256:a03875334331946f13c549dbd8f4bac7a13a50a895a0eb1e8c6a8ace80d40a94"}, + {file = "platformdirs-4.3.7.tar.gz", hash = "sha256:eb437d586b6a0986388f0d6f74aa0cde27b48d0e3d66843640bfb6bdcdb6e351"}, +] + +[package.extras] +docs = ["furo (>=2024.8.6)", "proselint (>=0.14)", "sphinx (>=8.1.3)", "sphinx-autodoc-typehints (>=3)"] +test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=8.3.4)", "pytest-cov (>=6)", "pytest-mock (>=3.14)"] +type = ["mypy (>=1.14.1)"] + +[[package]] +name = "prometheus-client" +version = "0.21.1" +description = "Python client for the Prometheus monitoring system." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "prometheus_client-0.21.1-py3-none-any.whl", hash = "sha256:594b45c410d6f4f8888940fe80b5cc2521b305a1fafe1c58609ef715a001f301"}, + {file = "prometheus_client-0.21.1.tar.gz", hash = "sha256:252505a722ac04b0456be05c05f75f45d760c2911ffc45f2a06bcaed9f3ae3fb"}, +] + +[package.extras] +twisted = ["twisted"] + +[[package]] +name = "prompt-toolkit" +version = "3.0.51" +description = "Library for building powerful interactive command lines in Python" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "prompt_toolkit-3.0.51-py3-none-any.whl", hash = "sha256:52742911fde84e2d423e2f9a4cf1de7d7ac4e51958f648d9540e0fb8db077b07"}, + {file = "prompt_toolkit-3.0.51.tar.gz", hash = "sha256:931a162e3b27fc90c86f1b48bb1fb2c528c2761475e57c9c06de13311c7b54ed"}, +] + +[package.dependencies] +wcwidth = "*" + +[[package]] +name = "psutil" +version = "7.0.0" +description = "Cross-platform lib for process and system monitoring in Python. NOTE: the syntax of this script MUST be kept compatible with Python 2.7." +optional = false +python-versions = ">=3.6" +groups = ["main"] +files = [ + {file = "psutil-7.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:101d71dc322e3cffd7cea0650b09b3d08b8e7c4109dd6809fe452dfd00e58b25"}, + {file = "psutil-7.0.0-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:39db632f6bb862eeccf56660871433e111b6ea58f2caea825571951d4b6aa3da"}, + {file = "psutil-7.0.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fcee592b4c6f146991ca55919ea3d1f8926497a713ed7faaf8225e174581e91"}, + {file = "psutil-7.0.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b1388a4f6875d7e2aff5c4ca1cc16c545ed41dd8bb596cefea80111db353a34"}, + {file = "psutil-7.0.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5f098451abc2828f7dc6b58d44b532b22f2088f4999a937557b603ce72b1993"}, + {file = "psutil-7.0.0-cp36-cp36m-win32.whl", hash = "sha256:84df4eb63e16849689f76b1ffcb36db7b8de703d1bc1fe41773db487621b6c17"}, + {file = "psutil-7.0.0-cp36-cp36m-win_amd64.whl", hash = "sha256:1e744154a6580bc968a0195fd25e80432d3afec619daf145b9e5ba16cc1d688e"}, + {file = "psutil-7.0.0-cp37-abi3-win32.whl", hash = "sha256:ba3fcef7523064a6c9da440fc4d6bd07da93ac726b5733c29027d7dc95b39d99"}, + {file = "psutil-7.0.0-cp37-abi3-win_amd64.whl", hash = "sha256:4cf3d4eb1aa9b348dec30105c55cd9b7d4629285735a102beb4441e38db90553"}, + {file = "psutil-7.0.0.tar.gz", hash = "sha256:7be9c3eba38beccb6495ea33afd982a44074b78f28c434a1f51cc07fd315c456"}, +] + +[package.extras] +dev = ["abi3audit", "black (==24.10.0)", "check-manifest", "coverage", "packaging", "pylint", "pyperf", "pypinfo", "pytest", "pytest-cov", "pytest-xdist", "requests", "rstcheck", "ruff", "setuptools", "sphinx", "sphinx_rtd_theme", "toml-sort", "twine", "virtualenv", "vulture", "wheel"] +test = ["pytest", "pytest-xdist", "setuptools"] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +description = "Run a subprocess in a pseudo terminal" +optional = false +python-versions = "*" +groups = ["main"] +markers = "os_name != \"nt\" or sys_platform != \"win32\" and sys_platform != \"emscripten\"" +files = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] + +[[package]] +name = "pure-eval" +version = "0.2.3" +description = "Safely evaluate AST nodes without side effects" +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0"}, + {file = "pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42"}, +] + +[package.extras] +tests = ["pytest"] + +[[package]] +name = "pycparser" +version = "2.22" +description = "C parser in Python" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, + {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, +] + +[[package]] +name = "pygments" +version = "2.19.1" +description = "Pygments is a syntax highlighting package written in Python." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c"}, + {file = "pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f"}, +] + +[package.extras] +windows-terminal = ["colorama (>=0.4.6)"] + +[[package]] +name = "pyparsing" +version = "3.2.3" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "pyparsing-3.2.3-py3-none-any.whl", hash = "sha256:a749938e02d6fd0b59b356ca504a24982314bb090c383e3cf201c95ef7e2bfcf"}, + {file = "pyparsing-3.2.3.tar.gz", hash = "sha256:b9c13f1ab8b3b542f72e28f634bad4de758ab3ce4546e4301970ad6fa77c38be"}, +] + +[package.extras] +diagrams = ["jinja2", "railroad-diagrams"] + +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +description = "Extensions to the standard Python datetime module" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +groups = ["main"] +files = [ + {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, + {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, +] + +[package.dependencies] +six = ">=1.5" + +[[package]] +name = "python-json-logger" +version = "3.3.0" +description = "JSON Log Formatter for the Python Logging Package" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "python_json_logger-3.3.0-py3-none-any.whl", hash = "sha256:dd980fae8cffb24c13caf6e158d3d61c0d6d22342f932cb6e9deedab3d35eec7"}, + {file = "python_json_logger-3.3.0.tar.gz", hash = "sha256:12b7e74b17775e7d565129296105bbe3910842d9d0eb083fc83a6a617aa8df84"}, +] + +[package.extras] +dev = ["backports.zoneinfo ; python_version < \"3.9\"", "black", "build", "freezegun", "mdx_truly_sane_lists", "mike", "mkdocs", "mkdocs-awesome-pages-plugin", "mkdocs-gen-files", "mkdocs-literate-nav", "mkdocs-material (>=8.5)", "mkdocstrings[python]", "msgspec ; implementation_name != \"pypy\"", "mypy", "orjson ; implementation_name != \"pypy\"", "pylint", "pytest", "tzdata", "validate-pyproject[all]"] + +[[package]] +name = "pytz" +version = "2025.2" +description = "World timezone definitions, modern and historical" +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "pytz-2025.2-py2.py3-none-any.whl", hash = "sha256:5ddf76296dd8c44c26eb8f4b6f35488f3ccbf6fbbd7adee0b7262d43f0ec2f00"}, + {file = "pytz-2025.2.tar.gz", hash = "sha256:360b9e3dbb49a209c21ad61809c7fb453643e048b38924c765813546746e81c3"}, +] + +[[package]] +name = "pywin32" +version = "310" +description = "Python for Window Extensions" +optional = false +python-versions = "*" +groups = ["main"] +markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\"" +files = [ + {file = "pywin32-310-cp310-cp310-win32.whl", hash = "sha256:6dd97011efc8bf51d6793a82292419eba2c71cf8e7250cfac03bba284454abc1"}, + {file = "pywin32-310-cp310-cp310-win_amd64.whl", hash = "sha256:c3e78706e4229b915a0821941a84e7ef420bf2b77e08c9dae3c76fd03fd2ae3d"}, + {file = "pywin32-310-cp310-cp310-win_arm64.whl", hash = "sha256:33babed0cf0c92a6f94cc6cc13546ab24ee13e3e800e61ed87609ab91e4c8213"}, + {file = "pywin32-310-cp311-cp311-win32.whl", hash = "sha256:1e765f9564e83011a63321bb9d27ec456a0ed90d3732c4b2e312b855365ed8bd"}, + {file = "pywin32-310-cp311-cp311-win_amd64.whl", hash = "sha256:126298077a9d7c95c53823934f000599f66ec9296b09167810eb24875f32689c"}, + {file = "pywin32-310-cp311-cp311-win_arm64.whl", hash = "sha256:19ec5fc9b1d51c4350be7bb00760ffce46e6c95eaf2f0b2f1150657b1a43c582"}, + {file = "pywin32-310-cp312-cp312-win32.whl", hash = "sha256:8a75a5cc3893e83a108c05d82198880704c44bbaee4d06e442e471d3c9ea4f3d"}, + {file = "pywin32-310-cp312-cp312-win_amd64.whl", hash = "sha256:bf5c397c9a9a19a6f62f3fb821fbf36cac08f03770056711f765ec1503972060"}, + {file = "pywin32-310-cp312-cp312-win_arm64.whl", hash = "sha256:2349cc906eae872d0663d4d6290d13b90621eaf78964bb1578632ff20e152966"}, + {file = "pywin32-310-cp313-cp313-win32.whl", hash = "sha256:5d241a659c496ada3253cd01cfaa779b048e90ce4b2b38cd44168ad555ce74ab"}, + {file = "pywin32-310-cp313-cp313-win_amd64.whl", hash = "sha256:667827eb3a90208ddbdcc9e860c81bde63a135710e21e4cb3348968e4bd5249e"}, + {file = "pywin32-310-cp313-cp313-win_arm64.whl", hash = "sha256:e308f831de771482b7cf692a1f308f8fca701b2d8f9dde6cc440c7da17e47b33"}, + {file = "pywin32-310-cp38-cp38-win32.whl", hash = "sha256:0867beb8addefa2e3979d4084352e4ac6e991ca45373390775f7084cc0209b9c"}, + {file = "pywin32-310-cp38-cp38-win_amd64.whl", hash = "sha256:30f0a9b3138fb5e07eb4973b7077e1883f558e40c578c6925acc7a94c34eaa36"}, + {file = "pywin32-310-cp39-cp39-win32.whl", hash = "sha256:851c8d927af0d879221e616ae1f66145253537bbdd321a77e8ef701b443a9a1a"}, + {file = "pywin32-310-cp39-cp39-win_amd64.whl", hash = "sha256:96867217335559ac619f00ad70e513c0fcf84b8a3af9fc2bba3b59b97da70475"}, +] + +[[package]] +name = "pywinpty" +version = "2.0.15" +description = "Pseudo terminal support for Windows from Python." +optional = false +python-versions = ">=3.9" +groups = ["main"] +markers = "os_name == \"nt\"" +files = [ + {file = "pywinpty-2.0.15-cp310-cp310-win_amd64.whl", hash = "sha256:8e7f5de756a615a38b96cd86fa3cd65f901ce54ce147a3179c45907fa11b4c4e"}, + {file = "pywinpty-2.0.15-cp311-cp311-win_amd64.whl", hash = "sha256:9a6bcec2df2707aaa9d08b86071970ee32c5026e10bcc3cc5f6f391d85baf7ca"}, + {file = "pywinpty-2.0.15-cp312-cp312-win_amd64.whl", hash = "sha256:83a8f20b430bbc5d8957249f875341a60219a4e971580f2ba694fbfb54a45ebc"}, + {file = "pywinpty-2.0.15-cp313-cp313-win_amd64.whl", hash = "sha256:ab5920877dd632c124b4ed17bc6dd6ef3b9f86cd492b963ffdb1a67b85b0f408"}, + {file = "pywinpty-2.0.15-cp313-cp313t-win_amd64.whl", hash = "sha256:a4560ad8c01e537708d2790dbe7da7d986791de805d89dd0d3697ca59e9e4901"}, + {file = "pywinpty-2.0.15-cp39-cp39-win_amd64.whl", hash = "sha256:d261cd88fcd358cfb48a7ca0700db3e1c088c9c10403c9ebc0d8a8b57aa6a117"}, + {file = "pywinpty-2.0.15.tar.gz", hash = "sha256:312cf39153a8736c617d45ce8b6ad6cd2107de121df91c455b10ce6bba7a39b2"}, +] + +[[package]] +name = "pyyaml" +version = "6.0.2" +description = "YAML parser and emitter for Python" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, + {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b"}, + {file = "PyYAML-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180"}, + {file = "PyYAML-6.0.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68"}, + {file = "PyYAML-6.0.2-cp310-cp310-win32.whl", hash = "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99"}, + {file = "PyYAML-6.0.2-cp310-cp310-win_amd64.whl", hash = "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774"}, + {file = "PyYAML-6.0.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317"}, + {file = "PyYAML-6.0.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4"}, + {file = "PyYAML-6.0.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e"}, + {file = "PyYAML-6.0.2-cp311-cp311-win32.whl", hash = "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5"}, + {file = "PyYAML-6.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab"}, + {file = "PyYAML-6.0.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425"}, + {file = "PyYAML-6.0.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48"}, + {file = "PyYAML-6.0.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b"}, + {file = "PyYAML-6.0.2-cp312-cp312-win32.whl", hash = "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4"}, + {file = "PyYAML-6.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba"}, + {file = "PyYAML-6.0.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484"}, + {file = "PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc"}, + {file = "PyYAML-6.0.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652"}, + {file = "PyYAML-6.0.2-cp313-cp313-win32.whl", hash = "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183"}, + {file = "PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563"}, + {file = "PyYAML-6.0.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d"}, + {file = "PyYAML-6.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083"}, + {file = "PyYAML-6.0.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706"}, + {file = "PyYAML-6.0.2-cp38-cp38-win32.whl", hash = "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a"}, + {file = "PyYAML-6.0.2-cp38-cp38-win_amd64.whl", hash = "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d"}, + {file = "PyYAML-6.0.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12"}, + {file = "PyYAML-6.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e"}, + {file = "PyYAML-6.0.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725"}, + {file = "PyYAML-6.0.2-cp39-cp39-win32.whl", hash = "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631"}, + {file = "PyYAML-6.0.2-cp39-cp39-win_amd64.whl", hash = "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8"}, + {file = "pyyaml-6.0.2.tar.gz", hash = "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e"}, +] + +[[package]] +name = "pyzmq" +version = "26.4.0" +description = "Python bindings for 0MQ" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "pyzmq-26.4.0-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:0329bdf83e170ac133f44a233fc651f6ed66ef8e66693b5af7d54f45d1ef5918"}, + {file = "pyzmq-26.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:398a825d2dea96227cf6460ce0a174cf7657d6f6827807d4d1ae9d0f9ae64315"}, + {file = "pyzmq-26.4.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6d52d62edc96787f5c1dfa6c6ccff9b581cfae5a70d94ec4c8da157656c73b5b"}, + {file = "pyzmq-26.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1410c3a3705db68d11eb2424d75894d41cff2f64d948ffe245dd97a9debfebf4"}, + {file = "pyzmq-26.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:7dacb06a9c83b007cc01e8e5277f94c95c453c5851aac5e83efe93e72226353f"}, + {file = "pyzmq-26.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:6bab961c8c9b3a4dc94d26e9b2cdf84de9918931d01d6ff38c721a83ab3c0ef5"}, + {file = "pyzmq-26.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7a5c09413b924d96af2aa8b57e76b9b0058284d60e2fc3730ce0f979031d162a"}, + {file = "pyzmq-26.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7d489ac234d38e57f458fdbd12a996bfe990ac028feaf6f3c1e81ff766513d3b"}, + {file = "pyzmq-26.4.0-cp310-cp310-win32.whl", hash = "sha256:dea1c8db78fb1b4b7dc9f8e213d0af3fc8ecd2c51a1d5a3ca1cde1bda034a980"}, + {file = "pyzmq-26.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:fa59e1f5a224b5e04dc6c101d7186058efa68288c2d714aa12d27603ae93318b"}, + {file = "pyzmq-26.4.0-cp310-cp310-win_arm64.whl", hash = "sha256:a651fe2f447672f4a815e22e74630b6b1ec3a1ab670c95e5e5e28dcd4e69bbb5"}, + {file = "pyzmq-26.4.0-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:bfcf82644c9b45ddd7cd2a041f3ff8dce4a0904429b74d73a439e8cab1bd9e54"}, + {file = "pyzmq-26.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e9bcae3979b2654d5289d3490742378b2f3ce804b0b5fd42036074e2bf35b030"}, + {file = "pyzmq-26.4.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ccdff8ac4246b6fb60dcf3982dfaeeff5dd04f36051fe0632748fc0aa0679c01"}, + {file = "pyzmq-26.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4550af385b442dc2d55ab7717837812799d3674cb12f9a3aa897611839c18e9e"}, + {file = "pyzmq-26.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:2f9f7ffe9db1187a253fca95191854b3fda24696f086e8789d1d449308a34b88"}, + {file = "pyzmq-26.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:3709c9ff7ba61589b7372923fd82b99a81932b592a5c7f1a24147c91da9a68d6"}, + {file = "pyzmq-26.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:f8f3c30fb2d26ae5ce36b59768ba60fb72507ea9efc72f8f69fa088450cff1df"}, + {file = "pyzmq-26.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:382a4a48c8080e273427fc692037e3f7d2851959ffe40864f2db32646eeb3cef"}, + {file = "pyzmq-26.4.0-cp311-cp311-win32.whl", hash = "sha256:d56aad0517d4c09e3b4f15adebba8f6372c5102c27742a5bdbfc74a7dceb8fca"}, + {file = "pyzmq-26.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:963977ac8baed7058c1e126014f3fe58b3773f45c78cce7af5c26c09b6823896"}, + {file = "pyzmq-26.4.0-cp311-cp311-win_arm64.whl", hash = "sha256:c0c8e8cadc81e44cc5088fcd53b9b3b4ce9344815f6c4a03aec653509296fae3"}, + {file = "pyzmq-26.4.0-cp312-cp312-macosx_10_15_universal2.whl", hash = "sha256:5227cb8da4b6f68acfd48d20c588197fd67745c278827d5238c707daf579227b"}, + {file = "pyzmq-26.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e1c07a7fa7f7ba86554a2b1bef198c9fed570c08ee062fd2fd6a4dcacd45f905"}, + {file = "pyzmq-26.4.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae775fa83f52f52de73183f7ef5395186f7105d5ed65b1ae65ba27cb1260de2b"}, + {file = "pyzmq-26.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66c760d0226ebd52f1e6b644a9e839b5db1e107a23f2fcd46ec0569a4fdd4e63"}, + {file = "pyzmq-26.4.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:ef8c6ecc1d520debc147173eaa3765d53f06cd8dbe7bd377064cdbc53ab456f5"}, + {file = "pyzmq-26.4.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3150ef4084e163dec29ae667b10d96aad309b668fac6810c9e8c27cf543d6e0b"}, + {file = "pyzmq-26.4.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4448c9e55bf8329fa1dcedd32f661bf611214fa70c8e02fee4347bc589d39a84"}, + {file = "pyzmq-26.4.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:e07dde3647afb084d985310d067a3efa6efad0621ee10826f2cb2f9a31b89d2f"}, + {file = "pyzmq-26.4.0-cp312-cp312-win32.whl", hash = "sha256:ba034a32ecf9af72adfa5ee383ad0fd4f4e38cdb62b13624278ef768fe5b5b44"}, + {file = "pyzmq-26.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:056a97aab4064f526ecb32f4343917a4022a5d9efb6b9df990ff72e1879e40be"}, + {file = "pyzmq-26.4.0-cp312-cp312-win_arm64.whl", hash = "sha256:2f23c750e485ce1eb639dbd576d27d168595908aa2d60b149e2d9e34c9df40e0"}, + {file = "pyzmq-26.4.0-cp313-cp313-macosx_10_15_universal2.whl", hash = "sha256:c43fac689880f5174d6fc864857d1247fe5cfa22b09ed058a344ca92bf5301e3"}, + {file = "pyzmq-26.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:902aca7eba477657c5fb81c808318460328758e8367ecdd1964b6330c73cae43"}, + {file = "pyzmq-26.4.0-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e5e48a830bfd152fe17fbdeaf99ac5271aa4122521bf0d275b6b24e52ef35eb6"}, + {file = "pyzmq-26.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:31be2b6de98c824c06f5574331f805707c667dc8f60cb18580b7de078479891e"}, + {file = "pyzmq-26.4.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:6332452034be001bbf3206ac59c0d2a7713de5f25bb38b06519fc6967b7cf771"}, + {file = "pyzmq-26.4.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:da8c0f5dd352136853e6a09b1b986ee5278dfddfebd30515e16eae425c872b30"}, + {file = "pyzmq-26.4.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:f4ccc1a0a2c9806dda2a2dd118a3b7b681e448f3bb354056cad44a65169f6d86"}, + {file = "pyzmq-26.4.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:1c0b5fceadbab461578daf8d1dcc918ebe7ddd2952f748cf30c7cf2de5d51101"}, + {file = "pyzmq-26.4.0-cp313-cp313-win32.whl", hash = "sha256:28e2b0ff5ba4b3dd11062d905682bad33385cfa3cc03e81abd7f0822263e6637"}, + {file = "pyzmq-26.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:23ecc9d241004c10e8b4f49d12ac064cd7000e1643343944a10df98e57bc544b"}, + {file = "pyzmq-26.4.0-cp313-cp313-win_arm64.whl", hash = "sha256:1edb0385c7f025045d6e0f759d4d3afe43c17a3d898914ec6582e6f464203c08"}, + {file = "pyzmq-26.4.0-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:93a29e882b2ba1db86ba5dd5e88e18e0ac6b627026c5cfbec9983422011b82d4"}, + {file = "pyzmq-26.4.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cb45684f276f57110bb89e4300c00f1233ca631f08f5f42528a5c408a79efc4a"}, + {file = "pyzmq-26.4.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f72073e75260cb301aad4258ad6150fa7f57c719b3f498cb91e31df16784d89b"}, + {file = "pyzmq-26.4.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:be37e24b13026cfedd233bcbbccd8c0bcd2fdd186216094d095f60076201538d"}, + {file = "pyzmq-26.4.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:237b283044934d26f1eeff4075f751b05d2f3ed42a257fc44386d00df6a270cf"}, + {file = "pyzmq-26.4.0-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:b30f862f6768b17040929a68432c8a8be77780317f45a353cb17e423127d250c"}, + {file = "pyzmq-26.4.0-cp313-cp313t-musllinux_1_1_i686.whl", hash = "sha256:c80fcd3504232f13617c6ab501124d373e4895424e65de8b72042333316f64a8"}, + {file = "pyzmq-26.4.0-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:26a2a7451606b87f67cdeca2c2789d86f605da08b4bd616b1a9981605ca3a364"}, + {file = "pyzmq-26.4.0-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:831cc53bf6068d46d942af52fa8b0b9d128fb39bcf1f80d468dc9a3ae1da5bfb"}, + {file = "pyzmq-26.4.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:51d18be6193c25bd229524cfac21e39887c8d5e0217b1857998dfbef57c070a4"}, + {file = "pyzmq-26.4.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:445c97854204119ae2232503585ebb4fa7517142f71092cb129e5ee547957a1f"}, + {file = "pyzmq-26.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:807b8f4ad3e6084412c0f3df0613269f552110fa6fb91743e3e306223dbf11a6"}, + {file = "pyzmq-26.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:c01d109dd675ac47fa15c0a79d256878d898f90bc10589f808b62d021d2e653c"}, + {file = "pyzmq-26.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:0a294026e28679a8dd64c922e59411cb586dad307661b4d8a5c49e7bbca37621"}, + {file = "pyzmq-26.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:22c8dd677274af8dfb1efd05006d6f68fb2f054b17066e308ae20cb3f61028cf"}, + {file = "pyzmq-26.4.0-cp38-cp38-win32.whl", hash = "sha256:14fc678b696bc42c14e2d7f86ac4e97889d5e6b94d366ebcb637a768d2ad01af"}, + {file = "pyzmq-26.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:d1ef0a536662bbbdc8525f7e2ef19e74123ec9c4578e0582ecd41aedc414a169"}, + {file = "pyzmq-26.4.0-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:a88643de8abd000ce99ca72056a1a2ae15881ee365ecb24dd1d9111e43d57842"}, + {file = "pyzmq-26.4.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0a744ce209ecb557406fb928f3c8c55ce79b16c3eeb682da38ef5059a9af0848"}, + {file = "pyzmq-26.4.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9434540f333332224ecb02ee6278b6c6f11ea1266b48526e73c903119b2f420f"}, + {file = "pyzmq-26.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e6c6f0a23e55cd38d27d4c89add963294ea091ebcb104d7fdab0f093bc5abb1c"}, + {file = "pyzmq-26.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:6145df55dc2309f6ef72d70576dcd5aabb0fd373311613fe85a5e547c722b780"}, + {file = "pyzmq-26.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2ea81823840ef8c56e5d2f9918e4d571236294fea4d1842b302aebffb9e40997"}, + {file = "pyzmq-26.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:cc2abc385dc37835445abe206524fbc0c9e3fce87631dfaa90918a1ba8f425eb"}, + {file = "pyzmq-26.4.0-cp39-cp39-win32.whl", hash = "sha256:41a2508fe7bed4c76b4cf55aacfb8733926f59d440d9ae2b81ee8220633b4d12"}, + {file = "pyzmq-26.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:d4000e8255d6cbce38982e5622ebb90823f3409b7ffe8aeae4337ef7d6d2612a"}, + {file = "pyzmq-26.4.0-cp39-cp39-win_arm64.whl", hash = "sha256:b4f6919d9c120488246bdc2a2f96662fa80d67b35bd6d66218f457e722b3ff64"}, + {file = "pyzmq-26.4.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:98d948288ce893a2edc5ec3c438fe8de2daa5bbbd6e2e865ec5f966e237084ba"}, + {file = "pyzmq-26.4.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9f34f5c9e0203ece706a1003f1492a56c06c0632d86cb77bcfe77b56aacf27b"}, + {file = "pyzmq-26.4.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:80c9b48aef586ff8b698359ce22f9508937c799cc1d2c9c2f7c95996f2300c94"}, + {file = "pyzmq-26.4.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3f2a5b74009fd50b53b26f65daff23e9853e79aa86e0aa08a53a7628d92d44a"}, + {file = "pyzmq-26.4.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:61c5f93d7622d84cb3092d7f6398ffc77654c346545313a3737e266fc11a3beb"}, + {file = "pyzmq-26.4.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:4478b14cb54a805088299c25a79f27eaf530564a7a4f72bf432a040042b554eb"}, + {file = "pyzmq-26.4.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8a28ac29c60e4ba84b5f58605ace8ad495414a724fe7aceb7cf06cd0598d04e1"}, + {file = "pyzmq-26.4.0-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:43b03c1ceea27c6520124f4fb2ba9c647409b9abdf9a62388117148a90419494"}, + {file = "pyzmq-26.4.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7731abd23a782851426d4e37deb2057bf9410848a4459b5ede4fe89342e687a9"}, + {file = "pyzmq-26.4.0-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:a222ad02fbe80166b0526c038776e8042cd4e5f0dec1489a006a1df47e9040e0"}, + {file = "pyzmq-26.4.0-pp38-pypy38_pp73-macosx_10_15_x86_64.whl", hash = "sha256:91c3ffaea475ec8bb1a32d77ebc441dcdd13cd3c4c284a6672b92a0f5ade1917"}, + {file = "pyzmq-26.4.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:d9a78a52668bf5c9e7b0da36aa5760a9fc3680144e1445d68e98df78a25082ed"}, + {file = "pyzmq-26.4.0-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:b70cab356ff8c860118b89dc86cd910c73ce2127eb986dada4fbac399ef644cf"}, + {file = "pyzmq-26.4.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:acae207d4387780838192326b32d373bb286da0b299e733860e96f80728eb0af"}, + {file = "pyzmq-26.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:f928eafd15794aa4be75463d537348b35503c1e014c5b663f206504ec1a90fe4"}, + {file = "pyzmq-26.4.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:552b0d2e39987733e1e9e948a0ced6ff75e0ea39ab1a1db2fc36eb60fd8760db"}, + {file = "pyzmq-26.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd670a8aa843f2ee637039bbd412e0d7294a5e588e1ecc9ad98b0cdc050259a4"}, + {file = "pyzmq-26.4.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d367b7b775a0e1e54a59a2ba3ed4d5e0a31566af97cc9154e34262777dab95ed"}, + {file = "pyzmq-26.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8112af16c406e4a93df2caef49f884f4c2bb2b558b0b5577ef0b2465d15c1abc"}, + {file = "pyzmq-26.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c76c298683f82669cab0b6da59071f55238c039738297c69f187a542c6d40099"}, + {file = "pyzmq-26.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:49b6ca2e625b46f499fb081aaf7819a177f41eeb555acb05758aa97f4f95d147"}, + {file = "pyzmq-26.4.0.tar.gz", hash = "sha256:4bd13f85f80962f91a651a7356fe0472791a5f7a92f227822b5acf44795c626d"}, +] + +[package.dependencies] +cffi = {version = "*", markers = "implementation_name == \"pypy\""} + +[[package]] +name = "referencing" +version = "0.36.2" +description = "JSON Referencing + Python" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "referencing-0.36.2-py3-none-any.whl", hash = "sha256:e8699adbbf8b5c7de96d8ffa0eb5c158b3beafce084968e2ea8bb08c6794dcd0"}, + {file = "referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa"}, +] + +[package.dependencies] +attrs = ">=22.2.0" +rpds-py = ">=0.7.0" +typing-extensions = {version = ">=4.4.0", markers = "python_version < \"3.13\""} + +[[package]] +name = "requests" +version = "2.32.3" +description = "Python HTTP for Humans." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, +] + +[package.dependencies] +certifi = ">=2017.4.17" +charset-normalizer = ">=2,<4" +idna = ">=2.5,<4" +urllib3 = ">=1.21.1,<3" + +[package.extras] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] + +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +description = "A pure python RFC3339 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["main"] +files = [ + {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"}, + {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"}, +] + +[package.dependencies] +six = "*" + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +description = "Pure python rfc3986 validator" +optional = false +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +groups = ["main"] +files = [ + {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"}, + {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"}, +] + +[[package]] +name = "rich" +version = "14.0.0" +description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" +optional = false +python-versions = ">=3.8.0" +groups = ["main"] +files = [ + {file = "rich-14.0.0-py3-none-any.whl", hash = "sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0"}, + {file = "rich-14.0.0.tar.gz", hash = "sha256:82f1bc23a6a21ebca4ae0c45af9bdbc492ed20231dcb63f297d6d1021a9d5725"}, +] + +[package.dependencies] +markdown-it-py = ">=2.2.0" +pygments = ">=2.13.0,<3.0.0" + +[package.extras] +jupyter = ["ipywidgets (>=7.5.1,<9)"] + +[[package]] +name = "rpds-py" +version = "0.24.0" +description = "Python bindings to Rust's persistent data structures (rpds)" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "rpds_py-0.24.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:006f4342fe729a368c6df36578d7a348c7c716be1da0a1a0f86e3021f8e98724"}, + {file = "rpds_py-0.24.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2d53747da70a4e4b17f559569d5f9506420966083a31c5fbd84e764461c4444b"}, + {file = "rpds_py-0.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8acd55bd5b071156bae57b555f5d33697998752673b9de554dd82f5b5352727"}, + {file = "rpds_py-0.24.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7e80d375134ddb04231a53800503752093dbb65dad8dabacce2c84cccc78e964"}, + {file = "rpds_py-0.24.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60748789e028d2a46fc1c70750454f83c6bdd0d05db50f5ae83e2db500b34da5"}, + {file = "rpds_py-0.24.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6e1daf5bf6c2be39654beae83ee6b9a12347cb5aced9a29eecf12a2d25fff664"}, + {file = "rpds_py-0.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1b221c2457d92a1fb3c97bee9095c874144d196f47c038462ae6e4a14436f7bc"}, + {file = "rpds_py-0.24.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:66420986c9afff67ef0c5d1e4cdc2d0e5262f53ad11e4f90e5e22448df485bf0"}, + {file = "rpds_py-0.24.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:43dba99f00f1d37b2a0265a259592d05fcc8e7c19d140fe51c6e6f16faabeb1f"}, + {file = "rpds_py-0.24.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:a88c0d17d039333a41d9bf4616bd062f0bd7aa0edeb6cafe00a2fc2a804e944f"}, + {file = "rpds_py-0.24.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:cc31e13ce212e14a539d430428cd365e74f8b2d534f8bc22dd4c9c55b277b875"}, + {file = "rpds_py-0.24.0-cp310-cp310-win32.whl", hash = "sha256:fc2c1e1b00f88317d9de6b2c2b39b012ebbfe35fe5e7bef980fd2a91f6100a07"}, + {file = "rpds_py-0.24.0-cp310-cp310-win_amd64.whl", hash = "sha256:c0145295ca415668420ad142ee42189f78d27af806fcf1f32a18e51d47dd2052"}, + {file = "rpds_py-0.24.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:2d3ee4615df36ab8eb16c2507b11e764dcc11fd350bbf4da16d09cda11fcedef"}, + {file = "rpds_py-0.24.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:e13ae74a8a3a0c2f22f450f773e35f893484fcfacb00bb4344a7e0f4f48e1f97"}, + {file = "rpds_py-0.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf86f72d705fc2ef776bb7dd9e5fbba79d7e1f3e258bf9377f8204ad0fc1c51e"}, + {file = "rpds_py-0.24.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c43583ea8517ed2e780a345dd9960896afc1327e8cf3ac8239c167530397440d"}, + {file = "rpds_py-0.24.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4cd031e63bc5f05bdcda120646a0d32f6d729486d0067f09d79c8db5368f4586"}, + {file = "rpds_py-0.24.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:34d90ad8c045df9a4259c47d2e16a3f21fdb396665c94520dbfe8766e62187a4"}, + {file = "rpds_py-0.24.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e838bf2bb0b91ee67bf2b889a1a841e5ecac06dd7a2b1ef4e6151e2ce155c7ae"}, + {file = "rpds_py-0.24.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04ecf5c1ff4d589987b4d9882872f80ba13da7d42427234fce8f22efb43133bc"}, + {file = "rpds_py-0.24.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:630d3d8ea77eabd6cbcd2ea712e1c5cecb5b558d39547ac988351195db433f6c"}, + {file = "rpds_py-0.24.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:ebcb786b9ff30b994d5969213a8430cbb984cdd7ea9fd6df06663194bd3c450c"}, + {file = "rpds_py-0.24.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:174e46569968ddbbeb8a806d9922f17cd2b524aa753b468f35b97ff9c19cb718"}, + {file = "rpds_py-0.24.0-cp311-cp311-win32.whl", hash = "sha256:5ef877fa3bbfb40b388a5ae1cb00636a624690dcb9a29a65267054c9ea86d88a"}, + {file = "rpds_py-0.24.0-cp311-cp311-win_amd64.whl", hash = "sha256:e274f62cbd274359eff63e5c7e7274c913e8e09620f6a57aae66744b3df046d6"}, + {file = "rpds_py-0.24.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:d8551e733626afec514b5d15befabea0dd70a343a9f23322860c4f16a9430205"}, + {file = "rpds_py-0.24.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0e374c0ce0ca82e5b67cd61fb964077d40ec177dd2c4eda67dba130de09085c7"}, + {file = "rpds_py-0.24.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d69d003296df4840bd445a5d15fa5b6ff6ac40496f956a221c4d1f6f7b4bc4d9"}, + {file = "rpds_py-0.24.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8212ff58ac6dfde49946bea57474a386cca3f7706fc72c25b772b9ca4af6b79e"}, + {file = "rpds_py-0.24.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:528927e63a70b4d5f3f5ccc1fa988a35456eb5d15f804d276709c33fc2f19bda"}, + {file = "rpds_py-0.24.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a824d2c7a703ba6daaca848f9c3d5cb93af0505be505de70e7e66829affd676e"}, + {file = "rpds_py-0.24.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44d51febb7a114293ffd56c6cf4736cb31cd68c0fddd6aa303ed09ea5a48e029"}, + {file = "rpds_py-0.24.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:3fab5f4a2c64a8fb64fc13b3d139848817a64d467dd6ed60dcdd6b479e7febc9"}, + {file = "rpds_py-0.24.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:9be4f99bee42ac107870c61dfdb294d912bf81c3c6d45538aad7aecab468b6b7"}, + {file = "rpds_py-0.24.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:564c96b6076a98215af52f55efa90d8419cc2ef45d99e314fddefe816bc24f91"}, + {file = "rpds_py-0.24.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:75a810b7664c17f24bf2ffd7f92416c00ec84b49bb68e6a0d93e542406336b56"}, + {file = "rpds_py-0.24.0-cp312-cp312-win32.whl", hash = "sha256:f6016bd950be4dcd047b7475fdf55fb1e1f59fc7403f387be0e8123e4a576d30"}, + {file = "rpds_py-0.24.0-cp312-cp312-win_amd64.whl", hash = "sha256:998c01b8e71cf051c28f5d6f1187abbdf5cf45fc0efce5da6c06447cba997034"}, + {file = "rpds_py-0.24.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:3d2d8e4508e15fc05b31285c4b00ddf2e0eb94259c2dc896771966a163122a0c"}, + {file = "rpds_py-0.24.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0f00c16e089282ad68a3820fd0c831c35d3194b7cdc31d6e469511d9bffc535c"}, + {file = "rpds_py-0.24.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:951cc481c0c395c4a08639a469d53b7d4afa252529a085418b82a6b43c45c240"}, + {file = "rpds_py-0.24.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c9ca89938dff18828a328af41ffdf3902405a19f4131c88e22e776a8e228c5a8"}, + {file = "rpds_py-0.24.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ed0ef550042a8dbcd657dfb284a8ee00f0ba269d3f2286b0493b15a5694f9fe8"}, + {file = "rpds_py-0.24.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b2356688e5d958c4d5cb964af865bea84db29971d3e563fb78e46e20fe1848b"}, + {file = "rpds_py-0.24.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:78884d155fd15d9f64f5d6124b486f3d3f7fd7cd71a78e9670a0f6f6ca06fb2d"}, + {file = "rpds_py-0.24.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6a4a535013aeeef13c5532f802708cecae8d66c282babb5cd916379b72110cf7"}, + {file = "rpds_py-0.24.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:84e0566f15cf4d769dade9b366b7b87c959be472c92dffb70462dd0844d7cbad"}, + {file = "rpds_py-0.24.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:823e74ab6fbaa028ec89615ff6acb409e90ff45580c45920d4dfdddb069f2120"}, + {file = "rpds_py-0.24.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c61a2cb0085c8783906b2f8b1f16a7e65777823c7f4d0a6aaffe26dc0d358dd9"}, + {file = "rpds_py-0.24.0-cp313-cp313-win32.whl", hash = "sha256:60d9b630c8025b9458a9d114e3af579a2c54bd32df601c4581bd054e85258143"}, + {file = "rpds_py-0.24.0-cp313-cp313-win_amd64.whl", hash = "sha256:6eea559077d29486c68218178ea946263b87f1c41ae7f996b1f30a983c476a5a"}, + {file = "rpds_py-0.24.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:d09dc82af2d3c17e7dd17120b202a79b578d79f2b5424bda209d9966efeed114"}, + {file = "rpds_py-0.24.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5fc13b44de6419d1e7a7e592a4885b323fbc2f46e1f22151e3a8ed3b8b920405"}, + {file = "rpds_py-0.24.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c347a20d79cedc0a7bd51c4d4b7dbc613ca4e65a756b5c3e57ec84bd43505b47"}, + {file = "rpds_py-0.24.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:20f2712bd1cc26a3cc16c5a1bfee9ed1abc33d4cdf1aabd297fe0eb724df4272"}, + {file = "rpds_py-0.24.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:aad911555286884be1e427ef0dc0ba3929e6821cbeca2194b13dc415a462c7fd"}, + {file = "rpds_py-0.24.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0aeb3329c1721c43c58cae274d7d2ca85c1690d89485d9c63a006cb79a85771a"}, + {file = "rpds_py-0.24.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2a0f156e9509cee987283abd2296ec816225145a13ed0391df8f71bf1d789e2d"}, + {file = "rpds_py-0.24.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:aa6800adc8204ce898c8a424303969b7aa6a5e4ad2789c13f8648739830323b7"}, + {file = "rpds_py-0.24.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a18fc371e900a21d7392517c6f60fe859e802547309e94313cd8181ad9db004d"}, + {file = "rpds_py-0.24.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:9168764133fd919f8dcca2ead66de0105f4ef5659cbb4fa044f7014bed9a1797"}, + {file = "rpds_py-0.24.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:5f6e3cec44ba05ee5cbdebe92d052f69b63ae792e7d05f1020ac5e964394080c"}, + {file = "rpds_py-0.24.0-cp313-cp313t-win32.whl", hash = "sha256:8ebc7e65ca4b111d928b669713865f021b7773350eeac4a31d3e70144297baba"}, + {file = "rpds_py-0.24.0-cp313-cp313t-win_amd64.whl", hash = "sha256:675269d407a257b8c00a6b58205b72eec8231656506c56fd429d924ca00bb350"}, + {file = "rpds_py-0.24.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:a36b452abbf29f68527cf52e181fced56685731c86b52e852053e38d8b60bc8d"}, + {file = "rpds_py-0.24.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8b3b397eefecec8e8e39fa65c630ef70a24b09141a6f9fc17b3c3a50bed6b50e"}, + {file = "rpds_py-0.24.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdabcd3beb2a6dca7027007473d8ef1c3b053347c76f685f5f060a00327b8b65"}, + {file = "rpds_py-0.24.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5db385bacd0c43f24be92b60c857cf760b7f10d8234f4bd4be67b5b20a7c0b6b"}, + {file = "rpds_py-0.24.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8097b3422d020ff1c44effc40ae58e67d93e60d540a65649d2cdaf9466030791"}, + {file = "rpds_py-0.24.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:493fe54318bed7d124ce272fc36adbf59d46729659b2c792e87c3b95649cdee9"}, + {file = "rpds_py-0.24.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8aa362811ccdc1f8dadcc916c6d47e554169ab79559319ae9fae7d7752d0d60c"}, + {file = "rpds_py-0.24.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d8f9a6e7fd5434817526815f09ea27f2746c4a51ee11bb3439065f5fc754db58"}, + {file = "rpds_py-0.24.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:8205ee14463248d3349131bb8099efe15cd3ce83b8ef3ace63c7e976998e7124"}, + {file = "rpds_py-0.24.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:921ae54f9ecba3b6325df425cf72c074cd469dea843fb5743a26ca7fb2ccb149"}, + {file = "rpds_py-0.24.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:32bab0a56eac685828e00cc2f5d1200c548f8bc11f2e44abf311d6b548ce2e45"}, + {file = "rpds_py-0.24.0-cp39-cp39-win32.whl", hash = "sha256:f5c0ed12926dec1dfe7d645333ea59cf93f4d07750986a586f511c0bc61fe103"}, + {file = "rpds_py-0.24.0-cp39-cp39-win_amd64.whl", hash = "sha256:afc6e35f344490faa8276b5f2f7cbf71f88bc2cda4328e00553bd451728c571f"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:619ca56a5468f933d940e1bf431c6f4e13bef8e688698b067ae68eb4f9b30e3a"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:4b28e5122829181de1898c2c97f81c0b3246d49f585f22743a1246420bb8d399"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8e5ab32cf9eb3647450bc74eb201b27c185d3857276162c101c0f8c6374e098"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:208b3a70a98cf3710e97cabdc308a51cd4f28aa6e7bb11de3d56cd8b74bab98d"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bbc4362e06f950c62cad3d4abf1191021b2ffaf0b31ac230fbf0526453eee75e"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ebea2821cdb5f9fef44933617be76185b80150632736f3d76e54829ab4a3b4d1"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b9a4df06c35465ef4d81799999bba810c68d29972bf1c31db61bfdb81dd9d5bb"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d3aa13bdf38630da298f2e0d77aca967b200b8cc1473ea05248f6c5e9c9bdb44"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:041f00419e1da7a03c46042453598479f45be3d787eb837af382bfc169c0db33"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:d8754d872a5dfc3c5bf9c0e059e8107451364a30d9fd50f1f1a85c4fb9481164"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:896c41007931217a343eff197c34513c154267636c8056fb409eafd494c3dcdc"}, + {file = "rpds_py-0.24.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:92558d37d872e808944c3c96d0423b8604879a3d1c86fdad508d7ed91ea547d5"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:f9e0057a509e096e47c87f753136c9b10d7a91842d8042c2ee6866899a717c0d"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:d6e109a454412ab82979c5b1b3aee0604eca4bbf9a02693bb9df027af2bfa91a"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc1c892b1ec1f8cbd5da8de287577b455e388d9c328ad592eabbdcb6fc93bee5"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9c39438c55983d48f4bb3487734d040e22dad200dab22c41e331cee145e7a50d"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d7e8ce990ae17dda686f7e82fd41a055c668e13ddcf058e7fb5e9da20b57793"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9ea7f4174d2e4194289cb0c4e172d83e79a6404297ff95f2875cf9ac9bced8ba"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb2954155bb8f63bb19d56d80e5e5320b61d71084617ed89efedb861a684baea"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:04f2b712a2206e13800a8136b07aaedc23af3facab84918e7aa89e4be0260032"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:eda5c1e2a715a4cbbca2d6d304988460942551e4e5e3b7457b50943cd741626d"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-musllinux_1_2_i686.whl", hash = "sha256:9abc80fe8c1f87218db116016de575a7998ab1629078c90840e8d11ab423ee25"}, + {file = "rpds_py-0.24.0-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:6a727fd083009bc83eb83d6950f0c32b3c94c8b80a9b667c87f4bd1274ca30ba"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e0f3ef95795efcd3b2ec3fe0a5bcfb5dadf5e3996ea2117427e524d4fbf309c6"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:2c13777ecdbbba2077670285dd1fe50828c8742f6a4119dbef6f83ea13ad10fb"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:79e8d804c2ccd618417e96720ad5cd076a86fa3f8cb310ea386a3e6229bae7d1"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fd822f019ccccd75c832deb7aa040bb02d70a92eb15a2f16c7987b7ad4ee8d83"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0047638c3aa0dbcd0ab99ed1e549bbf0e142c9ecc173b6492868432d8989a046"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a5b66d1b201cc71bc3081bc2f1fc36b0c1f268b773e03bbc39066651b9e18391"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dbcbb6db5582ea33ce46a5d20a5793134b5365110d84df4e30b9d37c6fd40ad3"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:63981feca3f110ed132fd217bf7768ee8ed738a55549883628ee3da75bb9cb78"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:3a55fc10fdcbf1a4bd3c018eea422c52cf08700cf99c28b5cb10fe97ab77a0d3"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:c30ff468163a48535ee7e9bf21bd14c7a81147c0e58a36c1078289a8ca7af0bd"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:369d9c6d4c714e36d4a03957b4783217a3ccd1e222cdd67d464a3a479fc17796"}, + {file = "rpds_py-0.24.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:24795c099453e3721fda5d8ddd45f5dfcc8e5a547ce7b8e9da06fecc3832e26f"}, + {file = "rpds_py-0.24.0.tar.gz", hash = "sha256:772cc1b2cd963e7e17e6cc55fe0371fb9c704d63e44cacec7b9b7f523b78919e"}, +] + +[[package]] +name = "scipy" +version = "1.15.2" +description = "Fundamental algorithms for scientific computing in Python" +optional = false +python-versions = ">=3.10" +groups = ["main"] +files = [ + {file = "scipy-1.15.2-cp310-cp310-macosx_10_13_x86_64.whl", hash = "sha256:a2ec871edaa863e8213ea5df811cd600734f6400b4af272e1c011e69401218e9"}, + {file = "scipy-1.15.2-cp310-cp310-macosx_12_0_arm64.whl", hash = "sha256:6f223753c6ea76983af380787611ae1291e3ceb23917393079dcc746ba60cfb5"}, + {file = "scipy-1.15.2-cp310-cp310-macosx_14_0_arm64.whl", hash = "sha256:ecf797d2d798cf7c838c6d98321061eb3e72a74710e6c40540f0e8087e3b499e"}, + {file = "scipy-1.15.2-cp310-cp310-macosx_14_0_x86_64.whl", hash = "sha256:9b18aa747da280664642997e65aab1dd19d0c3d17068a04b3fe34e2559196cb9"}, + {file = "scipy-1.15.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:87994da02e73549dfecaed9e09a4f9d58a045a053865679aeb8d6d43747d4df3"}, + {file = "scipy-1.15.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:69ea6e56d00977f355c0f84eba69877b6df084516c602d93a33812aa04d90a3d"}, + {file = "scipy-1.15.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:888307125ea0c4466287191e5606a2c910963405ce9671448ff9c81c53f85f58"}, + {file = "scipy-1.15.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:9412f5e408b397ff5641080ed1e798623dbe1ec0d78e72c9eca8992976fa65aa"}, + {file = "scipy-1.15.2-cp310-cp310-win_amd64.whl", hash = "sha256:b5e025e903b4f166ea03b109bb241355b9c42c279ea694d8864d033727205e65"}, + {file = "scipy-1.15.2-cp311-cp311-macosx_10_13_x86_64.whl", hash = "sha256:92233b2df6938147be6fa8824b8136f29a18f016ecde986666be5f4d686a91a4"}, + {file = "scipy-1.15.2-cp311-cp311-macosx_12_0_arm64.whl", hash = "sha256:62ca1ff3eb513e09ed17a5736929429189adf16d2d740f44e53270cc800ecff1"}, + {file = "scipy-1.15.2-cp311-cp311-macosx_14_0_arm64.whl", hash = "sha256:4c6676490ad76d1c2894d77f976144b41bd1a4052107902238047fb6a473e971"}, + {file = "scipy-1.15.2-cp311-cp311-macosx_14_0_x86_64.whl", hash = "sha256:a8bf5cb4a25046ac61d38f8d3c3426ec11ebc350246a4642f2f315fe95bda655"}, + {file = "scipy-1.15.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6a8e34cf4c188b6dd004654f88586d78f95639e48a25dfae9c5e34a6dc34547e"}, + {file = "scipy-1.15.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28a0d2c2075946346e4408b211240764759e0fabaeb08d871639b5f3b1aca8a0"}, + {file = "scipy-1.15.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:42dabaaa798e987c425ed76062794e93a243be8f0f20fff6e7a89f4d61cb3d40"}, + {file = "scipy-1.15.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:6f5e296ec63c5da6ba6fa0343ea73fd51b8b3e1a300b0a8cae3ed4b1122c7462"}, + {file = "scipy-1.15.2-cp311-cp311-win_amd64.whl", hash = "sha256:597a0c7008b21c035831c39927406c6181bcf8f60a73f36219b69d010aa04737"}, + {file = "scipy-1.15.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c4697a10da8f8765bb7c83e24a470da5797e37041edfd77fd95ba3811a47c4fd"}, + {file = "scipy-1.15.2-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:869269b767d5ee7ea6991ed7e22b3ca1f22de73ab9a49c44bad338b725603301"}, + {file = "scipy-1.15.2-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:bad78d580270a4d32470563ea86c6590b465cb98f83d760ff5b0990cb5518a93"}, + {file = "scipy-1.15.2-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:b09ae80010f52efddb15551025f9016c910296cf70adbf03ce2a8704f3a5ad20"}, + {file = "scipy-1.15.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a6fd6eac1ce74a9f77a7fc724080d507c5812d61e72bd5e4c489b042455865e"}, + {file = "scipy-1.15.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2b871df1fe1a3ba85d90e22742b93584f8d2b8e6124f8372ab15c71b73e428b8"}, + {file = "scipy-1.15.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:03205d57a28e18dfd39f0377d5002725bf1f19a46f444108c29bdb246b6c8a11"}, + {file = "scipy-1.15.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:601881dfb761311045b03114c5fe718a12634e5608c3b403737ae463c9885d53"}, + {file = "scipy-1.15.2-cp312-cp312-win_amd64.whl", hash = "sha256:e7c68b6a43259ba0aab737237876e5c2c549a031ddb7abc28c7b47f22e202ded"}, + {file = "scipy-1.15.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:01edfac9f0798ad6b46d9c4c9ca0e0ad23dbf0b1eb70e96adb9fa7f525eff0bf"}, + {file = "scipy-1.15.2-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:08b57a9336b8e79b305a143c3655cc5bdbe6d5ece3378578888d2afbb51c4e37"}, + {file = "scipy-1.15.2-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:54c462098484e7466362a9f1672d20888f724911a74c22ae35b61f9c5919183d"}, + {file = "scipy-1.15.2-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:cf72ff559a53a6a6d77bd8eefd12a17995ffa44ad86c77a5df96f533d4e6c6bb"}, + {file = "scipy-1.15.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9de9d1416b3d9e7df9923ab23cd2fe714244af10b763975bea9e4f2e81cebd27"}, + {file = "scipy-1.15.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fb530e4794fc8ea76a4a21ccb67dea33e5e0e60f07fc38a49e821e1eae3b71a0"}, + {file = "scipy-1.15.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5ea7ed46d437fc52350b028b1d44e002646e28f3e8ddc714011aaf87330f2f32"}, + {file = "scipy-1.15.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:11e7ad32cf184b74380f43d3c0a706f49358b904fa7d5345f16ddf993609184d"}, + {file = "scipy-1.15.2-cp313-cp313-win_amd64.whl", hash = "sha256:a5080a79dfb9b78b768cebf3c9dcbc7b665c5875793569f48bf0e2b1d7f68f6f"}, + {file = "scipy-1.15.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:447ce30cee6a9d5d1379087c9e474628dab3db4a67484be1b7dc3196bfb2fac9"}, + {file = "scipy-1.15.2-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:c90ebe8aaa4397eaefa8455a8182b164a6cc1d59ad53f79943f266d99f68687f"}, + {file = "scipy-1.15.2-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:def751dd08243934c884a3221156d63e15234a3155cf25978b0a668409d45eb6"}, + {file = "scipy-1.15.2-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:302093e7dfb120e55515936cb55618ee0b895f8bcaf18ff81eca086c17bd80af"}, + {file = "scipy-1.15.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7cd5b77413e1855351cdde594eca99c1f4a588c2d63711388b6a1f1c01f62274"}, + {file = "scipy-1.15.2-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d0194c37037707b2afa7a2f2a924cf7bac3dc292d51b6a925e5fcb89bc5c776"}, + {file = "scipy-1.15.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:bae43364d600fdc3ac327db99659dcb79e6e7ecd279a75fe1266669d9a652828"}, + {file = "scipy-1.15.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f031846580d9acccd0044efd1a90e6f4df3a6e12b4b6bd694a7bc03a89892b28"}, + {file = "scipy-1.15.2-cp313-cp313t-win_amd64.whl", hash = "sha256:fe8a9eb875d430d81755472c5ba75e84acc980e4a8f6204d402849234d3017db"}, + {file = "scipy-1.15.2.tar.gz", hash = "sha256:cd58a314d92838f7e6f755c8a2167ead4f27e1fd5c1251fd54289569ef3495ec"}, +] + +[package.dependencies] +numpy = ">=1.23.5,<2.5" + +[package.extras] +dev = ["cython-lint (>=0.12.2)", "doit (>=0.36.0)", "mypy (==1.10.0)", "pycodestyle", "pydevtool", "rich-click", "ruff (>=0.0.292)", "types-psutil", "typing_extensions"] +doc = ["intersphinx_registry", "jupyterlite-pyodide-kernel", "jupyterlite-sphinx (>=0.16.5)", "jupytext", "matplotlib (>=3.5)", "myst-nb", "numpydoc", "pooch", "pydata-sphinx-theme (>=0.15.2)", "sphinx (>=5.0.0,<8.0.0)", "sphinx-copybutton", "sphinx-design (>=0.4.0)"] +test = ["Cython", "array-api-strict (>=2.0,<2.1.1)", "asv", "gmpy2", "hypothesis (>=6.30)", "meson", "mpmath", "ninja ; sys_platform != \"emscripten\"", "pooch", "pytest", "pytest-cov", "pytest-timeout", "pytest-xdist", "scikit-umfpack", "threadpoolctl"] + +[[package]] +name = "send2trash" +version = "1.8.3" +description = "Send file to trash natively under Mac OS X, Windows and Linux" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +groups = ["main"] +files = [ + {file = "Send2Trash-1.8.3-py3-none-any.whl", hash = "sha256:0c31227e0bd08961c7665474a3d1ef7193929fedda4233843689baa056be46c9"}, + {file = "Send2Trash-1.8.3.tar.gz", hash = "sha256:b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf"}, +] + +[package.extras] +nativelib = ["pyobjc-framework-Cocoa ; sys_platform == \"darwin\"", "pywin32 ; sys_platform == \"win32\""] +objc = ["pyobjc-framework-Cocoa ; sys_platform == \"darwin\""] +win32 = ["pywin32 ; sys_platform == \"win32\""] + +[[package]] +name = "setuptools" +version = "79.0.1" +description = "Easily download, build, install, upgrade, and uninstall Python packages" +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "setuptools-79.0.1-py3-none-any.whl", hash = "sha256:e147c0549f27767ba362f9da434eab9c5dc0045d5304feb602a0af001089fc51"}, + {file = "setuptools-79.0.1.tar.gz", hash = "sha256:128ce7b8f33c3079fd1b067ecbb4051a66e8526e7b65f6cec075dfc650ddfa88"}, +] + +[package.extras] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\"", "ruff (>=0.8.0) ; sys_platform != \"cygwin\""] +core = ["importlib_metadata (>=6) ; python_version < \"3.10\"", "jaraco.functools (>=4)", "jaraco.text (>=3.7)", "more_itertools", "more_itertools (>=8.8)", "packaging (>=24.2)", "platformdirs (>=4.2.2)", "tomli (>=2.0.1) ; python_version < \"3.11\"", "wheel (>=0.43.0)"] +cover = ["pytest-cov"] +doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier", "towncrier (<24.7)"] +enabler = ["pytest-enabler (>=2.2)"] +test = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21) ; python_version >= \"3.9\" and sys_platform != \"cygwin\"", "jaraco.envs (>=2.2)", "jaraco.path (>=3.7.2)", "jaraco.test (>=5.5)", "packaging (>=24.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.*)", "pytest-home (>=0.5)", "pytest-perf ; sys_platform != \"cygwin\"", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel (>=0.44.0)"] +type = ["importlib_metadata (>=7.0.2) ; python_version < \"3.10\"", "jaraco.develop (>=7.21) ; sys_platform != \"cygwin\"", "mypy (==1.14.*)", "pytest-mypy"] + +[[package]] +name = "six" +version = "1.17.0" +description = "Python 2 and 3 compatibility utilities" +optional = false +python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" +groups = ["main"] +files = [ + {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"}, + {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, +] + +[[package]] +name = "sniffio" +version = "1.3.1" +description = "Sniff out which async library your code is running under" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, + {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, +] + +[[package]] +name = "soupsieve" +version = "2.7" +description = "A modern CSS selector implementation for Beautiful Soup." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "soupsieve-2.7-py3-none-any.whl", hash = "sha256:6e60cc5c1ffaf1cebcc12e8188320b72071e922c2e897f737cadce79ad5d30c4"}, + {file = "soupsieve-2.7.tar.gz", hash = "sha256:ad282f9b6926286d2ead4750552c8a6142bc4c783fd66b0293547c8fe6ae126a"}, +] + +[[package]] +name = "stack-data" +version = "0.6.3" +description = "Extract data from python stack frames and tracebacks for informative displays" +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, + {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, +] + +[package.dependencies] +asttokens = ">=2.1.0" +executing = ">=1.2.0" +pure-eval = "*" + +[package.extras] +tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] + +[[package]] +name = "terminado" +version = "0.18.1" +description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0"}, + {file = "terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e"}, +] + +[package.dependencies] +ptyprocess = {version = "*", markers = "os_name != \"nt\""} +pywinpty = {version = ">=1.1.0", markers = "os_name == \"nt\""} +tornado = ">=6.1.0" + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["pre-commit", "pytest (>=7.0)", "pytest-timeout"] +typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] + +[[package]] +name = "tinycss2" +version = "1.4.0" +description = "A tiny CSS parser" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289"}, + {file = "tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7"}, +] + +[package.dependencies] +webencodings = ">=0.4" + +[package.extras] +doc = ["sphinx", "sphinx_rtd_theme"] +test = ["pytest", "ruff"] + +[[package]] +name = "tornado" +version = "6.4.2" +description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "tornado-6.4.2-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e828cce1123e9e44ae2a50a9de3055497ab1d0aeb440c5ac23064d9e44880da1"}, + {file = "tornado-6.4.2-cp38-abi3-macosx_10_9_x86_64.whl", hash = "sha256:072ce12ada169c5b00b7d92a99ba089447ccc993ea2143c9ede887e0937aa803"}, + {file = "tornado-6.4.2-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a017d239bd1bb0919f72af256a970624241f070496635784d9bf0db640d3fec"}, + {file = "tornado-6.4.2-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c36e62ce8f63409301537222faffcef7dfc5284f27eec227389f2ad11b09d946"}, + {file = "tornado-6.4.2-cp38-abi3-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bca9eb02196e789c9cb5c3c7c0f04fb447dc2adffd95265b2c7223a8a615ccbf"}, + {file = "tornado-6.4.2-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:304463bd0772442ff4d0f5149c6f1c2135a1fae045adf070821c6cdc76980634"}, + {file = "tornado-6.4.2-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:c82c46813ba483a385ab2a99caeaedf92585a1f90defb5693351fa7e4ea0bf73"}, + {file = "tornado-6.4.2-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:932d195ca9015956fa502c6b56af9eb06106140d844a335590c1ec7f5277d10c"}, + {file = "tornado-6.4.2-cp38-abi3-win32.whl", hash = "sha256:2876cef82e6c5978fde1e0d5b1f919d756968d5b4282418f3146b79b58556482"}, + {file = "tornado-6.4.2-cp38-abi3-win_amd64.whl", hash = "sha256:908b71bf3ff37d81073356a5fadcc660eb10c1476ee6e2725588626ce7e5ca38"}, + {file = "tornado-6.4.2.tar.gz", hash = "sha256:92bad5b4746e9879fd7bf1eb21dce4e3fc5128d71601f80005afa39237ad620b"}, +] + +[[package]] +name = "traitlets" +version = "5.14.3" +description = "Traitlets Python configuration system" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "traitlets-5.14.3-py3-none-any.whl", hash = "sha256:b74e89e397b1ed28cc831db7aea759ba6640cb3de13090ca145426688ff1ac4f"}, + {file = "traitlets-5.14.3.tar.gz", hash = "sha256:9ed0579d3502c94b4b3732ac120375cda96f923114522847de4b3bb98b96b6b7"}, +] + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0,<8.2)", "pytest-mock", "pytest-mypy-testing"] + +[[package]] +name = "types-python-dateutil" +version = "2.9.0.20241206" +description = "Typing stubs for python-dateutil" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "types_python_dateutil-2.9.0.20241206-py3-none-any.whl", hash = "sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53"}, + {file = "types_python_dateutil-2.9.0.20241206.tar.gz", hash = "sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb"}, +] + +[[package]] +name = "typing-extensions" +version = "4.13.2" +description = "Backported and Experimental Type Hints for Python 3.8+" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "typing_extensions-4.13.2-py3-none-any.whl", hash = "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c"}, + {file = "typing_extensions-4.13.2.tar.gz", hash = "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef"}, +] + +[[package]] +name = "tzdata" +version = "2025.2" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +groups = ["main"] +files = [ + {file = "tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8"}, + {file = "tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9"}, +] + +[[package]] +name = "uri-template" +version = "1.3.0" +description = "RFC 6570 URI Template Processor" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"}, + {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"}, +] + +[package.extras] +dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-modern-annotations", "flake8-noqa", "flake8-pyproject", "flake8-requirements", "flake8-typechecking-import", "flake8-use-fstring", "mypy", "pep8-naming", "types-PyYAML"] + +[[package]] +name = "urllib3" +version = "2.4.0" +description = "HTTP library with thread-safe connection pooling, file post, and more." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "urllib3-2.4.0-py3-none-any.whl", hash = "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813"}, + {file = "urllib3-2.4.0.tar.gz", hash = "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466"}, +] + +[package.extras] +brotli = ["brotli (>=1.0.9) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\""] +h2 = ["h2 (>=4,<5)"] +socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] +zstd = ["zstandard (>=0.18.0)"] + +[[package]] +name = "wcwidth" +version = "0.2.13" +description = "Measures the displayed width of unicode strings in a terminal" +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859"}, + {file = "wcwidth-0.2.13.tar.gz", hash = "sha256:72ea0c06399eb286d978fdedb6923a9eb47e1c486ce63e9b4e64fc18303972b5"}, +] + +[[package]] +name = "webcolors" +version = "24.11.1" +description = "A library for working with the color formats defined by HTML and CSS." +optional = false +python-versions = ">=3.9" +groups = ["main"] +files = [ + {file = "webcolors-24.11.1-py3-none-any.whl", hash = "sha256:515291393b4cdf0eb19c155749a096f779f7d909f7cceea072791cb9095b92e9"}, + {file = "webcolors-24.11.1.tar.gz", hash = "sha256:ecb3d768f32202af770477b8b65f318fa4f566c22948673a977b00d589dd80f6"}, +] + +[[package]] +name = "webencodings" +version = "0.5.1" +description = "Character encoding aliases for legacy web content" +optional = false +python-versions = "*" +groups = ["main"] +files = [ + {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"}, + {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"}, +] + +[[package]] +name = "websocket-client" +version = "1.8.0" +description = "WebSocket client for Python with low level API options" +optional = false +python-versions = ">=3.8" +groups = ["main"] +files = [ + {file = "websocket_client-1.8.0-py3-none-any.whl", hash = "sha256:17b44cc997f5c498e809b22cdf2d9c7a9e71c02c8cc2b6c56e7c2d1239bfa526"}, + {file = "websocket_client-1.8.0.tar.gz", hash = "sha256:3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da"}, +] + +[package.extras] +docs = ["Sphinx (>=6.0)", "myst-parser (>=2.0.0)", "sphinx-rtd-theme (>=1.1.0)"] +optional = ["python-socks", "wsaccel"] +test = ["websockets"] + +[[package]] +name = "widgetsnbextension" +version = "4.0.14" +description = "Jupyter interactive widgets for Jupyter Notebook" +optional = false +python-versions = ">=3.7" +groups = ["main"] +files = [ + {file = "widgetsnbextension-4.0.14-py3-none-any.whl", hash = "sha256:4875a9eaf72fbf5079dc372a51a9f268fc38d46f767cbf85c43a36da5cb9b575"}, + {file = "widgetsnbextension-4.0.14.tar.gz", hash = "sha256:a3629b04e3edb893212df862038c7232f62973373869db5084aed739b437b5af"}, +] + +[metadata] +lock-version = "2.1" +python-versions = ">=3.12,<3.13" +content-hash = "be65d03652ec58741cf92b6ee44de1b49a6498b8e09a75364db604fd7080c26d" diff --git a/poetry.toml b/poetry.toml new file mode 100644 index 0000000..ab1033b --- /dev/null +++ b/poetry.toml @@ -0,0 +1,2 @@ +[virtualenvs] +in-project = true diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..52c8c67 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,24 @@ +[project] +name = "ai" +version = "1.0.0" +description = "IIAS Examples" +authors = [ + {name = "Aleksey Filippov", email = "al.filippov@ulstu.ru"} +] +readme = "readme.md" +requires-python = ">=3.12,<3.13" + +[tool.poetry] +package-mode = false + +[tool.poetry.dependencies] +jupyter = "^1.1.1" +numpy = "^1.26.4" +pandas = "^2.2.2" +matplotlib = "^3.9.2" +keras = "^3.9.2" +jax = "^0.5.3" + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api" diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..e8b7530 --- /dev/null +++ b/readme.md @@ -0,0 +1,43 @@ +## Примеры оценки набора данных и интерпретации традиционных моделей машинного обучения по дисциплине "Интеллектуальные информационно-аналитические системы" + +### Python + +Используется Python версии 3.12 + +Установщик https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe + +### Poetry + +Для создания и настройки окружения проекта необходимо установить poetry + +**Для Windows (Powershell)** + +``` +(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python - +``` + +**Linux, macOS, Windows (WSL)** + +``` +curl -sSL https://install.python-poetry.org | python3 - +``` + +**Добавление poetry в PATH** + +1. Открыть настройки переменных среды \ + \ + \ + \ + \ +2. Изменить переменную Path текущего пользователя \ + \ + \ +3. Добавление пути `%APPDATA%\Python\Scripts` до исполняемого файла poetry \ + \ + + +### Создание окружения + +``` +poetry install +```